:root{--navy:#071522;--navy2:#0b2236;--cyan:#27d8ff;--blue:#208cff;--teal:#18c7c0;--white:#f4f9ff;--muted:#9bb2c7;--line:rgba(104,180,220,.28);--ink:#172033;--panel:#fff;--bg:#eef5f8;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
*{box-sizing:border-box}html,body{margin:0;min-height:100%;background:var(--bg);color:var(--ink)}body{min-height:100vh}
#authGate{position:fixed;inset:0;z-index:1000;overflow:auto;color:var(--white);background:radial-gradient(circle at 72% 36%,#12496b 0,#08233a 30%,#071522 64%,#040d15 100%)}
.auth-shell{min-height:100vh;display:grid;grid-template-columns:minmax(360px,43%) minmax(0,57%);grid-template-rows:auto 1fr auto;position:relative;max-width:1600px;margin:auto}
.auth-brand{grid-column:1;grid-row:1;padding:42px 5vw 20px;display:flex;align-items:center;gap:13px;position:relative;z-index:2}.brand-logo{font-size:35px;font-weight:900;letter-spacing:-.08em;color:#20bfff;font-style:italic}.brand-logo span{font-size:22px;color:#208cff}.brand-name{font-size:clamp(18px,2.2vw,29px);font-weight:850;letter-spacing:.03em}.brand-sub{font-size:11px;letter-spacing:.45em;color:var(--cyan);margin-top:2px}.brand-line{position:absolute;left:5vw;top:112px;font-size:9px;letter-spacing:.12em;color:#83a5ba;white-space:nowrap}
.auth-login-panel{grid-column:1;grid-row:2;display:grid;place-items:center;padding:35px 5vw 40px;z-index:2}.login-card{width:min(470px,100%);padding:38px;border:1px solid var(--line);border-radius:24px;background:linear-gradient(145deg,rgba(18,50,76,.82),rgba(5,22,36,.88));box-shadow:0 28px 90px rgba(0,0,0,.32);backdrop-filter:blur(18px)}.login-kicker{font-size:10px;letter-spacing:.22em;color:#7ea4bb;font-weight:800;margin-bottom:13px}.login-card h1{font-size:clamp(27px,4vw,42px);line-height:1.05;letter-spacing:-.04em;margin:0;color:#d9e9f6;font-weight:500}.login-card h1 strong{display:block;color:#fff;font-size:1.28em;font-weight:850}.login-intro{color:#a9bfd0;line-height:1.55;font-size:14px;max-width:370px;margin:13px 0 25px}.login-card label{display:block;font-size:11px;color:#a9c1d1;font-weight:700;margin:14px 0 7px}.field{height:53px;border:1px solid #3d6380;border-radius:12px;background:rgba(2,13,23,.48);display:flex;align-items:center;padding:0 15px;gap:11px;transition:.2s}.field:focus-within{border-color:var(--cyan);box-shadow:0 0 0 3px rgba(39,216,255,.10)}.field span{color:#8eb5cb;font-size:18px}.field input{width:100%;height:100%;border:0;outline:0;background:transparent;color:#fff;font:inherit;font-size:14px}.field input::placeholder{color:#68849a}.login-button{width:100%;height:54px;margin-top:23px;border:0;border-radius:12px;background:linear-gradient(100deg,#18bdf2,#168cff 58%,#1bc8c0);color:#fff;font-size:15px;font-weight:800;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:12px;box-shadow:0 12px 30px rgba(19,153,224,.25);transition:transform .15s,filter .15s}.login-button:hover{filter:brightness(1.08)}.login-button:active{transform:translateY(1px)}.login-button b{font-size:21px}.login-error{min-height:18px;margin:12px 0 0;color:#ff9f9f;font-size:11px}.restricted-note{display:flex;align-items:center;gap:12px;border:1px solid rgba(94,154,191,.22);border-radius:12px;padding:11px 13px;margin-top:24px;background:rgba(19,57,84,.34)}.restricted-note span{color:var(--cyan);font-size:22px}.restricted-note p{font-size:11px;color:#a9bdcc;margin:0;line-height:1.4}
.auth-visual{grid-column:2;grid-row:1/3;position:relative;min-height:650px;overflow:hidden;border-left:1px solid rgba(101,182,224,.18);background:radial-gradient(circle at 45% 46%,rgba(20,117,168,.30),transparent 33%),linear-gradient(140deg,rgba(5,20,33,.15),rgba(0,0,0,.38))}
.auth-visual:before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(43,164,211,.07) 1px,transparent 1px),linear-gradient(90deg,rgba(43,164,211,.07) 1px,transparent 1px);background-size:42px 42px;mask-image:linear-gradient(to bottom,transparent,#000 22%,#000 75%,transparent)}
.secure-badge{position:absolute;right:4vw;top:35px;display:flex;gap:9px;align-items:center;color:#fff;z-index:3}.secure-badge span{color:var(--cyan);font-size:27px}.secure-badge b,.secure-badge small{display:block}.secure-badge b{font-size:10px;letter-spacing:.08em}.secure-badge small{font-size:8px;color:#7694a9;margin-top:2px;letter-spacing:.08em}
.world{position:absolute;width:min(52vw,720px);height:min(52vw,720px);right:-5%;top:7%;border-radius:50%;background:radial-gradient(circle at 38% 36%,#327ea1 0,#123c59 28%,#071b2c 58%,#040e17 72%);box-shadow:-30px 0 100px rgba(27,197,255,.08),inset 18px -12px 80px rgba(0,0,0,.7);overflow:hidden}.world:before,.world:after{content:"";position:absolute;border:1px solid rgba(57,213,255,.27);border-radius:50%;inset:7% 17%;transform:rotate(28deg)}.world:after{inset:18% 7%;transform:rotate(-25deg)}.world-grid{position:absolute;inset:0;background:repeating-linear-gradient(0deg,transparent 0 34px,rgba(61,209,255,.12) 35px 36px),repeating-linear-gradient(90deg,transparent 0 34px,rgba(61,209,255,.09) 35px 36px);border-radius:50%;transform:rotate(-12deg);opacity:.65}.world-glow{position:absolute;width:55%;height:55%;left:18%;top:20%;border-radius:50%;background:radial-gradient(circle,rgba(31,210,255,.36),transparent 68%);filter:blur(14px)}.world-node{position:absolute;width:8px;height:8px;background:#55e7ff;border-radius:50%;box-shadow:0 0 18px 5px rgba(52,218,255,.65)}.n1{left:31%;top:43%}.n2{left:47%;top:31%}.n3{left:62%;top:49%}.n4{left:40%;top:64%}.robot-eye{position:absolute;width:115px;height:115px;right:18%;top:24%;border-radius:50%;border:7px solid #102d44;box-shadow:inset 0 0 0 3px #1a83b0,0 0 0 10px rgba(19,111,153,.18),0 0 40px rgba(25,210,255,.35);background:radial-gradient(circle,#eaffff 0 5%,#25d8ff 8% 16%,#0b3a55 18% 44%,#06121d 47%)}.robot-core{position:absolute;width:190px;height:190px;right:7%;bottom:9%;border-radius:42% 42% 30% 30%;background:linear-gradient(145deg,#163b55,#07131e 60%);transform:rotate(-12deg);box-shadow:-12px -5px 35px rgba(26,185,231,.18);opacity:.9}
.visual-copy{position:absolute;z-index:2;right:6%;top:43%;width:min(390px,42%)}.visual-copy h2{font-size:clamp(24px,3.1vw,42px);line-height:1.12;letter-spacing:-.03em;margin:0;color:#eef8ff}.visual-copy h2 span{color:var(--cyan)}.evolution{margin-top:24px;color:#a9c1d0;font-size:10px;letter-spacing:.15em}.evolution i{color:#22cbe6;font-style:normal;padding:0 8px}.progress{height:4px;background:#19364b;border-radius:8px;width:110px;margin-top:11px}.progress span{display:block;width:43%;height:100%;border-radius:8px;background:linear-gradient(90deg,#18d4ff,#218fff)}
.capabilities{position:absolute;z-index:3;left:4%;right:4%;bottom:88px;display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.capabilities article{min-height:118px;padding:16px 12px;text-align:center;border:1px solid rgba(76,175,216,.34);border-radius:15px;background:rgba(4,27,45,.60);backdrop-filter:blur(12px);display:flex;flex-direction:column;align-items:center;justify-content:center;box-shadow:0 14px 35px rgba(0,0,0,.16)}.capabilities span{font-size:25px;color:#20d5ff;margin-bottom:7px}.capabilities b{font-size:13px;color:#f1f8fc}.capabilities small{font-size:9px;color:#8eaabd;margin-top:5px;line-height:1.35}.visual-footer{position:absolute;bottom:30px;left:5%;right:5%;display:flex;justify-content:space-between;color:#6f91a5;font-size:8px;letter-spacing:.11em}.auth-footer{grid-column:1/3;grid-row:3;display:flex;gap:22px;align-items:center;padding:20px 5vw 26px;color:#7795a9;font-size:10px;z-index:4}.auth-footer strong{margin-left:auto;color:#9db7c8;font-weight:500;letter-spacing:.1em}
.shell{min-height:100vh;display:flex;flex-direction:column}.topbar{height:72px;padding:0 max(20px,calc((100vw - 1120px)/2));display:flex;align-items:center;justify-content:space-between;background:rgba(255,255,255,.9);border-bottom:1px solid #d7e2ea;backdrop-filter:blur(14px);position:sticky;top:0;z-index:5}.brand{display:flex;align-items:center;gap:11px;color:inherit;text-decoration:none}.brand-mark,.welcome-mark{display:grid;place-items:center;background:linear-gradient(145deg,#0b2b45,#1586ad);color:#fff;border-radius:13px;font-weight:750;box-shadow:0 8px 22px rgba(14,101,139,.22)}.brand-mark{width:38px;height:38px}.brand strong{display:block;font-size:14px}.brand small{display:block;margin-top:2px;color:#64748b;font-size:11px}.connection-state{display:flex;align-items:center;gap:8px;color:#64748b;font-size:12px}.state-dot{width:7px;height:7px;border-radius:50%;background:#98a2b3}.connection-state.live .state-dot{background:#12b76a;box-shadow:0 0 0 4px rgba(18,183,106,.12)}.connection-state.busy .state-dot{background:#f79009}.workspace{width:min(920px,100%);margin:auto;flex:1;padding:44px 20px 24px;display:flex;flex-direction:column}.welcome{text-align:center;padding:16px 0 26px}.welcome-mark{width:52px;height:52px;margin:0 auto 15px;font-size:22px}.kicker{margin:0 0 8px;font-size:10px;letter-spacing:.16em;font-weight:800;color:#52819a}.welcome h1{margin:0;font-size:clamp(27px,5vw,40px);letter-spacing:-.035em}.lead{max-width:540px;margin:11px auto 0;color:#64748b;font-size:14px;line-height:1.6}.chat{display:flex;flex-direction:column;flex:1;min-height:430px}.messages{flex:1;min-height:330px;padding:8px 2px 18px;overflow:auto}.empty-state{text-align:center;color:#8a9aab;padding:80px 15px}.empty-icon{display:block;font-size:20px;color:#3c91ad}.message{max-width:min(78%,680px);padding:12px 14px;border-radius:16px;margin:9px 0;white-space:pre-wrap;overflow-wrap:anywhere;font-size:14px;line-height:1.55}.message.user{margin-left:auto;background:linear-gradient(135deg,#0b3552,#147fa5);color:#fff;border-bottom-right-radius:5px}.message.assistant{background:#fff;border:1px solid #d8e1ea;border-bottom-left-radius:5px;box-shadow:0 6px 22px rgba(16,40,60,.055)}.message.error{background:#fff3f2;color:#b42318;border:1px solid #fecdca}.composer-box{background:rgba(255,255,255,.94);border:1px solid #cbd8e3;border-radius:20px;box-shadow:0 18px 55px rgba(15,35,55,.10);padding:10px}.composer textarea{width:100%;resize:none;min-height:48px;max-height:160px;border:0;outline:0;background:transparent;padding:7px 8px;font:inherit;font-size:14px;color:#172033}.composer-tools{display:flex;align-items:center;gap:8px}.icon-button,.send-button,.diagnostics-button,.close-button,.secondary-button,.primary-button{font:inherit;border:0;cursor:pointer}.icon-button{width:34px;height:34px;border-radius:10px;background:#e8f1f6;color:#36728b}.send-button{height:34px;border-radius:10px;padding:0 12px;background:linear-gradient(135deg,#0b3552,#1689ad);color:#fff;display:flex;gap:7px;font-size:12px;font-weight:700}.composer-hint{flex:1;color:#91a0ae;font-size:10px}.footer{width:min(920px,100%);margin:auto;padding:15px 20px 20px;display:flex;align-items:center;gap:7px;color:#8a9aab;font-size:10px}.footer-sep{opacity:.5}.diagnostics-button{margin-left:auto;background:transparent;color:#7d8e9d;font-size:10px;padding:5px}dialog{width:min(480px,calc(100% - 32px));border:1px solid #d8e1ea;border-radius:20px;padding:22px;background:#fff;color:#172033;box-shadow:0 24px 80px rgba(16,40,60,.22)}dialog::backdrop{background:rgba(7,21,33,.48);backdrop-filter:blur(4px)}.dialog-head{display:flex;justify-content:space-between}.dialog-head h2{margin:0;font-size:20px}.close-button{background:transparent;font-size:25px;color:#667085}.dialog-copy{font-size:12px;line-height:1.55;color:#64748b;margin:10px 0 18px}.dialog-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:20px}.secondary-button,.primary-button{padding:9px 12px;border-radius:9px;font-size:12px;font-weight:700}.secondary-button{background:#e8f1f6;color:#344054}.primary-button{background:#0b3552;color:#fff}.toast{position:fixed;left:50%;bottom:24px;transform:translate(-50%,12px);opacity:0;pointer-events:none;background:#0b3552;color:#fff;padding:9px 13px;border-radius:10px;font-size:11px;transition:.2s}.toast.show{opacity:1;transform:translate(-50%,0)}
@media(max-width:900px){.auth-shell{grid-template-columns:1fr;grid-template-rows:auto auto auto auto}.auth-brand{grid-column:1;grid-row:1;padding:28px 24px 50px}.brand-line{left:24px;top:96px}.auth-login-panel{grid-column:1;grid-row:2;padding:0 24px 32px}.auth-visual{grid-column:1;grid-row:3;min-height:520px;border-left:0;border-top:1px solid rgba(101,182,224,.18)}.world{width:600px;height:600px;right:-18%;top:0}.visual-copy{right:5%;top:31%;width:46%}.capabilities{bottom:62px}.visual-footer{bottom:20px}.auth-footer{grid-column:1;grid-row:4;padding:18px 24px 24px}.auth-footer strong{margin-left:0}}
@media(max-width:640px){.auth-brand{padding:25px 18px 58px}.brand-name{font-size:18px}.brand-line{left:18px;top:88px;font-size:7px}.login-card{padding:25px 20px;border-radius:20px}.auth-visual{min-height:470px}.world{width:430px;height:430px;right:-22%;top:8px}.robot-eye{width:76px;height:76px;right:17%;top:22%;border-width:5px}.robot-core{width:120px;height:120px}.visual-copy{left:24px;right:auto;top:205px;width:260px}.visual-copy h2{font-size:25px}.capabilities{left:15px;right:15px;bottom:47px;gap:6px}.capabilities article{min-height:82px;padding:8px 5px}.capabilities span{font-size:18px;margin-bottom:3px}.capabilities b{font-size:10px}.capabilities small{display:none}.visual-footer{display:none}.auth-footer{display:block;font-size:9px;padding:16px 18px}.auth-footer span{display:block;margin-bottom:5px}.auth-footer strong{display:block}.secure-badge{top:18px;right:18px}.secure-badge b{font-size:8px}.secure-badge small{font-size:7px}.topbar{height:64px;padding:0 15px}.workspace{padding:25px 14px 12px}.message{max-width:88%}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}