.is-guide-reading { outline:1px solid rgb(var(--gold-base-rgb) / 0.3137); outline-offset:5px; transition:outline-color .3s; }
.site-panel.is-guide-reading { outline:0; }
.site-panel.is-guide-reading .site-panel__surface { fill:var(--gold-muted);fill-opacity:.14;stroke-opacity:1; }
.chat-launcher { position:fixed; z-index:45; right:28px; bottom:85px; width:52px; height:58px; display:grid; place-items:center; border:0; color:var(--gold-light); background:transparent; cursor:pointer; filter:drop-shadow(0 0 12px rgb(var(--gold-muted-rgb) / 0.2)); }
.chat-launcher > svg { position:absolute;inset:0;width:100%;height:100%;fill:#14151ce8;stroke:var(--gold-base);stroke-width:.9; }
.chat-launcher__spark { position:relative;font-size:24px;font-weight:300; }
.chat-launcher__spark svg {width:27px;height:27px;fill:none;stroke:currentColor;stroke-width:1;stroke-linejoin:round;}
.chat-launcher::after {content:"Miss Cuality";position:absolute;right:64px;top:19px;white-space:nowrap;font-size:11px;letter-spacing:.04em;color:var(--gold-light);opacity:0;transition:opacity .2s;pointer-events:none;}
.chat-launcher:is(:hover,:focus-visible)::after {opacity:1;}
.chat-launcher:hover { color:var(--gold-light);filter:drop-shadow(0 0 14px rgb(var(--gold-base-rgb) / 0.4)); }
.miss-chat { position:fixed; z-index:46; right:28px; bottom:154px; width:410px; height:min(650px,calc(100dvh - 190px)); min-height:320px; display:flex; flex-direction:column; border:1px solid rgb(var(--gold-muted-rgb) / 0.3098); border-radius:19px 19px 5px 19px; background:linear-gradient(155deg,#191914,#0a0e17 46%); color:var(--gold-light); box-shadow:0 28px 100px #000a,0 0 45px rgb(var(--gold-base-rgb) / 0.0314); font-family:"Segoe UI",sans-serif; overflow:hidden; }
.chat-header { display:flex; align-items:center; gap:13px; padding:19px 19px 16px; border-bottom:1px solid rgb(var(--gold-muted-rgb) / 0.1882); }
.chat-avatar { flex-shrink:0; position:relative; width:42px;height:47px;display:grid;place-items:center;color:var(--gold-light);background:rgb(var(--gold-base-rgb) / 0.0431);clip-path:polygon(50% 0,100% 25%,100% 75%,50% 100%,0 75%,0 25%); }
.chat-avatar svg {width:29px;height:32px;fill:none;stroke:currentColor;stroke-width:1;stroke-linecap:round;stroke-linejoin:round;}
.chat-header h2 { margin:0 0 5px;color:var(--gold-light);font:22px Georgia,serif; }
.chat-header p { margin:0; color:var(--gold-light); font-size:10px;line-height:1.4; }
.chat-header__actions { margin-left:auto;display:flex;gap:2px; }
.chat-icon { display:grid;place-items:center;width:29px;height:32px;padding:6px;cursor:pointer;color:var(--gold-light);background:none;border:0;border-radius:5px; }
.chat-icon:hover { color:var(--gold-light);background:rgb(var(--gold-base-rgb) / 0.0706); }
.chat-icon svg,.chat-send svg { width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:1.3;stroke-linecap:round;stroke-linejoin:round; }
.chat-messages { flex:1;min-height:0;overflow-y:auto;padding:21px 20px 5px;scrollbar-width:thin;scrollbar-color:rgb(var(--gold-muted-rgb) / 0.2706) transparent;overscroll-behavior:contain; }
.chat-message { position:relative;padding:15px 16px 28px;border:1px solid rgb(var(--gold-muted-rgb) / 0.1686);border-radius:1px 13px 13px;background:rgb(var(--gold-base-rgb) / 0.0196);margin:0 20px 16px 0; }
.chat-message--user { margin-left:35px;margin-right:0;border-radius:13px 1px 13px 13px;background:rgb(var(--gold-muted-rgb) / 0.0824);border-color:rgb(var(--gold-muted-rgb) / 0.2314);padding-bottom:14px; }
.chat-message__name {display:block;margin-bottom:8px;color:var(--gold-light);font-size:9px;letter-spacing:.11em;text-transform:uppercase; }
.chat-message p { margin:0;white-space:pre-wrap;overflow-wrap:anywhere;color:#c9c7bf;font-size:13px;line-height:1.75; }
.chat-message a {color:var(--gold-light);text-decoration:underline;text-underline-offset:3px; }
.chat-message__play { position:absolute;right:10px;bottom:5px;width:25px;height:24px;padding:4px;color:var(--gold-light);border:0;background:none;cursor:pointer; }
.chat-message__play svg {width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:1.2;stroke-linecap:round;stroke-linejoin:round;}
.chat-message__play:hover {color:var(--gold-light);}
.chat-suggestions { display:flex;gap:6px;padding:9px 18px 12px;overflow-x:auto;scrollbar-width:none;flex-shrink:0; }
.chat-suggestions button { white-space:nowrap;padding:7px 11px;border:1px solid rgb(var(--gold-muted-rgb) / 0.2314);border-radius:20px;background:rgb(var(--gold-muted-rgb) / 0.0314);color:var(--gold-light);font:10px "Segoe UI",sans-serif;cursor:pointer; }
.chat-suggestions button:hover {border-color:var(--gold-muted);color:var(--gold-light);}
.chat-form { padding:12px 16px 15px;border-top:1px solid rgb(var(--gold-muted-rgb) / 0.1882); }
.chat-composer { display:flex;align-items:flex-end;gap:7px;padding:8px 8px 8px 12px;border:1px solid rgb(var(--gold-base-rgb) / 0.2902);border-radius:12px;background:#070b12; }
.chat-composer textarea {width:100%;min-height:45px;max-height:120px;padding:5px 0;resize:vertical;border:0;outline:0;background:transparent;color:var(--gold-light);font:13px/1.6 "Segoe UI",sans-serif; }
.chat-composer textarea::placeholder{color:#777b80;}
.chat-composer:focus-within {border-color:var(--gold-base);box-shadow:0 0 0 2px rgb(var(--gold-muted-rgb) / 0.102);}
.chat-send {width:33px;height:33px;padding:7px;flex-shrink:0;border:1px solid var(--gold-muted);border-radius:8px;background:rgb(var(--gold-muted-rgb) / 0.0784);color:var(--gold-light);cursor:pointer;}
.chat-send:disabled {opacity:.3;cursor:default;}
.chat-form > p {margin:8px 1px 0;color:#807f77;font-size:9px;line-height:1.5;}
.miss-chat > .sound-toggle {position:absolute;right:14px;bottom:8px;width:25px;height:25px;padding:4px;transform:none;z-index:2;}
.miss-chat > .sound-toggle svg {width:17px;height:17px;}
.chat-icon[aria-pressed=true]{color:var(--gold-light);background:rgb(var(--gold-base-rgb) / 0.1451);}
.chat-pending {display:flex;gap:5px;padding:8px 4px 23px;}
.chat-pending i {width:4px;height:4px;background:var(--gold-base);border-radius:50%;animation:chat-breathe 1s ease-in-out infinite alternate;}
.chat-pending i:nth-child(2){animation-delay:.2s;}.chat-pending i:nth-child(3){animation-delay:.4s;}
.is-speaking .chat-avatar {animation:chat-glow 1.8s ease-in-out infinite alternate;}
.miss-chat :is(a,button):focus-visible,.chat-launcher:focus-visible {outline:2px solid var(--gold-base);outline-offset:3px;}
.company-chat-invite {margin:0 0 20px;}
@keyframes chat-breathe {to{opacity:.3;transform:translateY(-3px);}}
@keyframes chat-glow {to{background:rgb(var(--gold-base-rgb) / 0.1412);color:var(--gold-light);}}
@media(max-width:600px){.chat-launcher{right:15px;bottom:24px;width:48px;height:53px;}.miss-chat{right:12px;bottom:89px;width:calc(100vw - 24px);height:min(640px,calc(100dvh - 108px));min-height:240px;}.chat-header{padding:15px;}.chat-message p{font-size:14px;}.chat-composer textarea{font-size:16px;}}
@media(prefers-reduced-motion:reduce){.is-guide-reading{transition:none;}.chat-pending i,.is-speaking .chat-avatar{animation:none;}}

/* Narration lights the three circular topics from within. */
.triangle-node.is-guide-reading { outline: none; }
.triangle-node.is-guide-reading .triangle-node__point {
  border-color: var(--gold-light);
  background: radial-gradient(circle at 50% 45%, rgb(var(--gold-base-rgb) / .38), rgb(var(--gold-base-rgb) / .18) 48%, #17181b 78%);
  box-shadow: inset 0 0 24px rgb(var(--gold-base-rgb) / .38), inset 0 0 8px rgb(var(--gold-base-rgb) / .25);
  animation: none;
}
.triangle-node.is-guide-reading .triangle-node__point::before { border-color: rgb(var(--gold-base-rgb) / .45); }