@charset "UTF-8";
:root{color-scheme:dark;--gold:#ffd2ab;--accent:#f0ab78;--ink:#fff6f1;--muted:#d6bec0;--surface:#0b1018}
*{box-sizing:border-box}html,body{margin:0;width:100%;height:100%;overflow:hidden}body{background:#090e19;color:var(--ink);font-family:"Segoe UI",Arial,sans-serif;-webkit-font-smoothing:antialiased}
button,textarea{font:inherit}button{cursor:pointer}a{text-decoration:none;color:inherit}[hidden]{display:none!important}
button:focus-visible,a:focus-visible,textarea:focus-visible,canvas:focus-visible{outline:2px solid #f9c69d;outline-offset:3px}
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.chat-app,.desktop-layout{position:relative;width:100%;height:100svh;overflow:hidden}.desktop-layout{background:#181521}
.backdrop-blur{position:absolute;inset:-40px;background:url('../assets/conversar-cenario-limpo-v8.webp') center/cover;filter:blur(32px) brightness(.55)}
.artboard{position:absolute;left:50%;top:50%;width:1672px;height:941px;transform:translate(-50%,-50%) scale(var(--scale,1));transform-origin:center;isolation:isolate;overflow:hidden;box-shadow:0 0 72px #0008}
.artboard__image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;pointer-events:none;user-select:none;z-index:-3}
.artboard__tint{position:absolute;inset:0;z-index:-2;pointer-events:none;background:linear-gradient(90deg,rgba(7,8,15,.62),transparent 42%,transparent 72%,rgba(10,12,20,.28)),linear-gradient(0deg,#05070e8a,transparent 32%,transparent 78%,#080b13a8)}
/* All controls below are genuine HTML. The photographic background contains no UI. */
.rail{position:absolute;top:0;bottom:0;left:0;width:112px;z-index:7;display:flex;flex-direction:column;align-items:center;background:linear-gradient(180deg,rgba(7,10,18,.96),rgba(11,13,23,.96));border-right:1px solid rgba(255,213,175,.13)}
.rail__nav{display:flex;flex-direction:column;align-items:center;gap:19px;padding-top:110px;width:100%}
.rail__item{width:66px;height:66px;display:grid;place-items:center;border:1px solid transparent;border-radius:19px;background:none;color:rgba(247,234,229,.67);transition:background-color .22s,border-color .22s,box-shadow .22s,color .22s}
.rail__item svg,.tool-icon svg,.quick-card svg{width:25px;height:25px;fill:none;stroke:currentColor;stroke-width:1.55;stroke-linejoin:round;stroke-linecap:round}
.rail__item:not(.rail__item--active):hover,.rail__item:not(.rail__item--active):focus-visible{color:#ffe2c6;background:rgba(255,186,118,.12);border-color:#ffc89855;box-shadow:inset 0 0 14px #efa57312}
.rail__item--active{color:#ffe4c6;border-color:#ffc38f;background:rgba(99,56,40,.46);box-shadow:0 0 25px #ef9e5b50,inset 0 0 20px #efae6b18;cursor:default}
.rail__status{display:flex;align-items:center;justify-content:center;gap:10px;flex-direction:column;margin-top:auto;margin-bottom:36px;width:100%;padding:0 8px;font-size:11px;text-align:center;line-height:1.35;color:#e6c4a9}
.state-dot{display:inline-block;width:7px;height:7px;flex:none;border-radius:50%;background:#efa55b;box-shadow:0 0 13px #ffad6780}.is-connected .state-dot{background:#6adf9e;box-shadow:0 0 15px #6adf9e88}.is-connected .status-text{color:#a6f2d5}
.topbar{height:103px;left:112px;right:0;top:0;position:absolute;display:flex;align-items:center;justify-content:space-between;padding:0 48px 0 48px;z-index:7;background:linear-gradient(180deg,rgba(6,9,17,.78),rgba(9,12,19,.36) 78%,transparent)}
.topbar__brand{font-size:20px;letter-spacing:.34em;font-weight:450;white-space:nowrap;line-height:1.4;color:#fcf4ee;transition:color .22s}
.topbar__brand:hover{color:#ffcda7}.topbar__actions{display:flex;align-items:center;gap:14px}
.tool-icon{width:52px;height:52px;border:1px solid transparent;border-radius:50%;background:rgba(4,8,14,.38);color:#f9eee8;display:grid;place-items:center;transition:background-color .23s,border-color .23s,box-shadow .23s}
.tool-icon:hover{background:rgba(41,30,42,.88);border-color:#ffc29355;box-shadow:0 0 15px #ffa87527}
.tool-icon--avatar{border:1px solid #e6a66e70;background:radial-gradient(circle at 30% 15%,#ffd6b3,#805286 46%,#12142a);width:48px;height:48px;box-shadow:0 0 13px #daa06a35}.tool-icon--avatar span{font-size:22px;font-family:Georgia,serif;color:#fff4de;text-shadow:0 1px 4px #482944}
.welcome{position:absolute;left:154px;top:204px;width:410px;z-index:4;pointer-events:none;text-shadow:0 2px 26px #0008}
.welcome__eyebrow{font-size:12px;letter-spacing:.26em;color:#e7b996;margin:0 0 22px}
.welcome h1{margin:0;font-size:59px;line-height:1.2;letter-spacing:-.04em;font-weight:320;white-space:nowrap}.welcome h1 em{font-style:normal;color:#ffc08a}
.welcome__subtitle{margin:18px 0 0;font-size:29px;line-height:1.32;font-weight:310;color:#f0e2dc}
.orb-stage{position:absolute;left:550px;top:108px;width:710px;height:570px;z-index:2;display:grid;place-items:center;pointer-events:none}
.orb-stage__halo{position:absolute;left:14%;right:12%;bottom:2%;height:19%;background:radial-gradient(ellipse,rgba(255,158,106,.36),transparent 75%);filter:blur(15px);pointer-events:none}
.orb3d{display:none;width:100%;height:100%;background:transparent;touch-action:manipulation;cursor:pointer;pointer-events:auto;filter:drop-shadow(0 15px 22px rgba(21,19,68,.32))}
.has-orb3d .orb3d{display:block}.orb-stage__fallback{position:absolute;width:77%;height:89%;object-fit:contain;filter:drop-shadow(0 15px 25px #241328);opacity:.98}
.has-orb3d .orb-stage__fallback{display:none}.orb-stage__hint{display:none;position:absolute;bottom:38px;left:50%;transform:translateX(-50%);white-space:nowrap;font-size:10px;letter-spacing:.2em;color:#ffe5cf99;pointer-events:none}
.has-orb3d .orb-stage__hint{display:block}
.quick-actions{position:absolute;z-index:5;right:48px;top:217px;width:305px;display:flex;flex-direction:column;gap:17px;padding:0}
.quick-card{height:96px;width:100%;border:1px solid rgba(255,202,166,.29);border-radius:23px;padding:0 20px;display:flex;align-items:center;gap:20px;text-align:left;color:#fce9dd;background:linear-gradient(95deg,rgba(19,16,27,.94),rgba(23,17,28,.89));box-shadow:0 9px 22px #0005,inset 0 1px #ffdecb12;backdrop-filter:blur(14px);transition:border-color .25s ease,background-color .25s ease,box-shadow .25s ease;will-change:auto}
.quick-card:hover,.quick-card:focus-visible{border-color:rgba(255,198,149,.79);box-shadow:0 0 24px rgba(255,156,86,.19),0 10px 25px #0007;background:rgba(39,27,35,.96)}
.quick-card:active{box-shadow:0 0 9px #f5a06a64}
.quick-card__icon{width:45px;height:45px;display:grid;place-items:center;flex:none;color:#ffcfaa}
.quick-card__icon svg{width:30px;height:30px}.quick-card__label{font-size:17px;line-height:1.4;letter-spacing:.01em}.quick-card__arrow{margin-left:auto;color:#ffcdad;font-size:22px}
.composer{display:flex;align-items:center;border:1px solid rgba(255,197,153,.45);background:linear-gradient(98deg,#0a0d16f7,#15131cf6 67%,#241921fa);box-shadow:0 20px 50px #0008,inset 0 1px #ffffff14;border-radius:100px;padding:8px 10px 8px 20px;isolation:isolate}
.desktop-composer{position:absolute;z-index:7;left:276px;right:293px;bottom:62px;height:95px}
.composer__attach,.composer__mic{border:1px solid transparent;background:transparent;color:#f7e7dc;display:grid;place-items:center;flex:none;transition:background-color .25s ease,border-color .25s ease,box-shadow .25s ease;border-radius:50%}
.composer__attach{width:49px;height:49px}.composer__mic{width:62px;height:62px;margin-right:13px;background:#ffffff0d}
.composer__attach:hover,.composer__mic:hover{background-color:#ffa5751d;border-color:#ffc6a345;box-shadow:0 0 17px #ffc0951b}
.composer svg{width:25px;height:25px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.message-input{flex:1;min-width:0;width:100%;height:43px;min-height:43px;max-height:120px;resize:none;border:0;background:transparent;color:#fff7f1;font-size:19px;line-height:1.4;padding:8px 10px;outline:0!important;overflow-y:auto}.message-input::placeholder{color:#afa2a6}
.composer__send{height:75px;width:75px;display:grid;place-items:center;flex:none;border:1.5px solid #ffd0a3;border-radius:50%;background:radial-gradient(circle at 40% 25%,#ffa66b49,#492b2dbb 62%,#17131c);color:white;box-shadow:0 0 17px #eaa26279,inset 0 0 12px #ffc8a63e;transition:background-color .25s ease,box-shadow .25s ease}
.composer__send:hover,.composer__send:focus-visible{box-shadow:0 0 32px #ffb275ad,inset 0 0 20px #ffc29a51}.composer__send:disabled{opacity:.6;cursor:wait}.composer__send svg{width:30px;height:30px}
.mobile-layout{display:none}
.conversation-panel{position:fixed;z-index:11;left:clamp(115px,8vw,175px);top:clamp(100px,12vh,150px);width:min(520px,40vw);height:min(480px,58vh);display:flex;flex-direction:column;background:rgba(12,15,23,.96);border:1px solid #f3bc9470;border-radius:24px;box-shadow:0 20px 80px #000a;backdrop-filter:blur(25px);animation:panel-in .32s ease both}.conversation-panel__header{display:flex;align-items:center;justify-content:space-between;padding:22px 25px 18px;border-bottom:1px solid #ffffff20}.conversation-panel__header h2{font-size:23px;font-weight:400;margin:7px 0 0}.eyebrow{font-size:10px;letter-spacing:.2em;color:#f4b887}.panel-close{border:1px solid #ffffff30;border-radius:50%;color:white;background:#ffffff09;width:34px;height:34px;font-size:24px}.messages{flex:1;overflow-y:auto;display:flex;flex-direction:column;gap:17px;padding:22px;scrollbar-width:thin}.message{max-width:92%;align-self:flex-start}.message--user{align-self:flex-end}.message__who{display:block;font-size:10px;letter-spacing:.13em;color:#d4b49e;margin-bottom:6px}.message--user .message__who{text-align:right}.message__text{display:block;padding:13px 17px;background:#24252fe5;border:1px solid #ffffff18;border-radius:15px;white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.48;font-size:14px}.message--user .message__text{background:#7c493b5c;border-color:#ffb48b4d}.panel-foot{padding:10px 22px 14px;border-top:1px solid #ffffff17;font-size:10px;color:#cbbeb7}
.toast{position:fixed;z-index:22;left:50%;bottom:clamp(112px,15vh,160px);transform:translateX(-50%);max-width:min(640px,92vw);padding:14px 21px;background:#10131cf5;color:#ffe2cd;border:1px solid #ffa96b80;border-radius:14px;box-shadow:0 12px 42px #000b;backdrop-filter:blur(15px);font-size:13px;line-height:1.5;text-align:center;animation:panel-in .25s ease}
.dialog-layer{position:fixed;inset:0;z-index:30;display:grid;place-items:center;padding:24px}.dialog-scrim{position:absolute;inset:0;background:#05060acf;backdrop-filter:blur(8px)}.dialog{position:relative;width:min(420px,100%);padding:29px;background:linear-gradient(155deg,#292029,#0b111a);border:1px solid #ffbd8952;box-shadow:0 24px 70px #0009;border-radius:22px;outline:0;animation:panel-in .25s ease}.dialog-label{letter-spacing:.23em;color:#f9ac81;font-size:10px}.dialog h2{font-size:28px;font-weight:400;margin:13px 0}.dialog p{font-size:14px;line-height:1.6;color:#d5c5c4}.dialog-actions{display:flex;justify-content:flex-end;gap:11px;margin-top:26px}.dialog-actions button{border-radius:99px;padding:11px 18px;border:1px solid #cfa88c88;color:#f9ede5;background:transparent}.dialog-actions button.primary{background:#f7b47e;color:#211917;border-color:#f7b47e}
@keyframes panel-in{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}
/* Small screens use native, responsive controls. */
@media(max-width:900px),(max-aspect-ratio:1.18){
.desktop-layout{display:none}.mobile-layout{display:flex;position:relative;height:100svh;flex-direction:column;isolation:isolate;background:#0c1120;overflow:hidden}.mobile-bg{position:absolute;inset:0;z-index:-3;background:url('../assets/conversar-cenario-v7-mobile.webp') center 48%/cover no-repeat;filter:brightness(.73)}.mobile-layout:before{content:"";position:absolute;inset:0;z-index:-2;background:linear-gradient(180deg,#090e19e8 0%,#090d1880 19%,transparent 45%,#0c101ba6 74%,#070b14 100%)}
.mobile-header{height:69px;display:flex;align-items:center;justify-content:space-between;padding:0 22px;flex:none;border-bottom:1px solid #ffffff22;background:#0c1018b0;z-index:4}.mobile-brand{letter-spacing:.29em;font-size:13px}.mobile-header .tool-icon{width:41px;height:41px;font-size:20px}
.mobile-copy{position:relative;margin:24px 24px 0;z-index:2;text-shadow:0 3px 14px #000c}.mobile-eyebrow{font-size:10px;letter-spacing:.19em;color:#ffb982}.mobile-copy h1{font-size:clamp(35px,8.5vw,48px);font-weight:320;margin:10px 0 3px;letter-spacing:-.04em}.mobile-copy h1 em{font-style:normal;color:#ffd1a6}.mobile-copy p{font-size:16px;line-height:1.4;margin:0;color:#f6e8df}
.mobile-scene{position:absolute;left:50%;top:clamp(200px,29vh,295px);transform:translateX(-50%);width:min(100vw,540px);height:min(54vh,500px);display:grid;place-items:center;pointer-events:none}.mobile-scene .orb3d{width:100%;height:100%}.mobile-scene .orb-stage__fallback{width:77%;height:82%}
.mobile-shortcuts{display:flex;gap:7px;margin:auto 15px 0;z-index:4}.mobile-shortcuts button{flex:1;min-width:0;border:1px solid #ebb28771;color:#fff2e8;background:#111720e8;border-radius:13px;padding:13px 5px;font-size:12px;display:flex;justify-content:center;gap:6px;transition:background-color .25s,border-color .25s,box-shadow .25s}.mobile-shortcuts button:hover{background:#2a1d2b;border-color:#ffca9b;box-shadow:0 0 16px #f0a87230}.mobile-shortcuts button span{color:#ffb983}
.mobile-status{margin:13px 22px 11px;z-index:3;display:flex;align-items:center;gap:9px;font-size:11px;color:#edcaac}.mobile-composer{position:relative;margin:0 13px max(18px,env(safe-area-inset-bottom));z-index:4;height:65px;min-height:65px;padding:6px 7px 6px 8px;flex:none}.mobile-composer .composer__attach{width:39px;height:43px}.mobile-composer .message-input{font-size:15px;height:42px;margin:0;padding:9px 3px}.mobile-composer .composer__send{width:49px;height:49px}.mobile-composer .composer__send svg{width:23px;height:23px}
.conversation-panel{left:12px;right:12px;top:85px;width:auto;height:calc(100svh - 190px)}.toast{bottom:115px;width:calc(100% - 30px)}
}
@media(max-width:360px){.mobile-shortcuts{gap:4px}.mobile-shortcuts button{font-size:11px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}

/* Real, stationary buttons: light passes across the surface, never moves the hit target. */
.quick-card{position:relative;overflow:hidden}
.quick-card:after{content:"";pointer-events:none;position:absolute;top:-65%;bottom:-65%;left:-65%;width:35%;background:linear-gradient(100deg,transparent,rgba(255,215,183,.12),transparent);transform:skewX(-20deg);transition:left .65s cubic-bezier(.21,.7,.22,1)}
.quick-card:hover:after,.quick-card:focus-visible:after{left:140%}
@media(prefers-reduced-motion:reduce){.quick-card:after{transition:none!important}}

/* V11 - autorizacao da ponte local, sem alterar o layout aprovado */
.rail__status[role=button],.mobile-status[role=button]{cursor:pointer;outline-offset:3px}
.rail__status[role=button]:hover .status-text,.mobile-status[role=button]:hover .status-text{color:#ffe6cb;text-decoration:underline;text-underline-offset:4px}
.pair-code{width:100%;padding:13px 15px;margin-top:8px;border:1px solid #ffc38d90;border-radius:12px;background:#0c101b;color:#f8e7dd;outline:none;font-size:17px;letter-spacing:.1em;font-variant-numeric:tabular-nums}
.pair-code:focus-visible{border-color:#ffcc99;box-shadow:0 0 0 3px #f4ae6c30}
