:root{color-scheme:dark;--bg:#0d1017;--panel:#151a24;--panel2:#1b2230;--text:#f1f4fb;--muted:#8791a5;--line:rgba(255,255,255,.09);--accent:#9c8cff;--accent2:#6d8cff;--green:#6fe2b1;--danger:#ff888e;--safe-top:env(safe-area-inset-top,0px);--safe-bottom:env(safe-area-inset-bottom,0px)}
*{box-sizing:border-box}html,body{margin:0;min-height:100%;background:var(--bg);color:var(--text);font-family:-apple-system,BlinkMacSystemFont,"SF Pro Display","Segoe UI",sans-serif}body{min-height:100dvh;overflow:hidden}button,input,textarea{font:inherit}button{color:inherit;cursor:pointer}.ambient{position:fixed;pointer-events:none;border-radius:999px;filter:blur(70px);opacity:.17;z-index:0}.ambient-a{width:280px;height:280px;top:-130px;right:-100px;background:#7865ff}.ambient-b{width:240px;height:240px;bottom:-150px;left:-100px;background:#396cbb}.app-shell{height:100dvh;min-height:100dvh;max-width:920px;margin:0 auto;position:relative;z-index:1;padding-top:var(--safe-top);padding-bottom:var(--safe-bottom)}.hidden{display:none!important}.login-view{height:100%;display:flex;flex-direction:column;justify-content:center;padding:32px}.brand-mark{width:68px;height:68px;border-radius:23px;display:grid;place-items:center;font-size:34px;font-weight:800;letter-spacing:-3px;background:linear-gradient(145deg,#a18bff,#526fe3);box-shadow:0 14px 38px rgba(102,104,240,.3);color:white}.brand-mark.small{width:42px;height:42px;border-radius:14px;font-size:23px}.eyebrow{font-size:10px;letter-spacing:2.2px;color:#a69bff;font-weight:800;margin:22px 0 8px}.login-view h1{font-size:42px;margin:0;letter-spacing:-2px}.muted{color:var(--muted);line-height:1.5}.login-copy{max-width:350px;margin:12px 0 30px}.login-form{display:flex;flex-direction:column;gap:10px;max-width:420px}.login-form label,.memory-form input{font-size:13px;color:var(--muted)}.login-form input,.memory-form input{width:100%;border:1px solid var(--line);border-radius:15px;background:rgba(255,255,255,.05);padding:16px;color:var(--text);outline:none}.login-form input:focus,.memory-form input:focus,textarea:focus{border-color:rgba(156,140,255,.7)}.primary-button,.secondary-button{border:0;border-radius:14px;padding:14px 18px;font-weight:750}.primary-button{background:linear-gradient(135deg,#a28bff,#6689ff);color:#fff}.secondary-button{background:#252c3a;color:#e4e8f2}.error-text{color:var(--danger);font-size:12px;min-height:16px;margin:2px 0}.chat-view{height:100%;display:flex;flex-direction:column;min-height:0}.topbar{height:76px;flex:0 0 auto;display:flex;align-items:center;justify-content:space-between;padding:10px 18px;border-bottom:1px solid var(--line);background:rgba(13,16,23,.55);backdrop-filter:blur(18px)}.brand-inline{display:flex;align-items:center;gap:11px}.brand-title{font-size:15px;font-weight:800;letter-spacing:.2px}.connection-label{font-size:11px;color:var(--muted);margin-top:3px;display:flex;align-items:center;gap:6px}.status-dot{width:6px;height:6px;border-radius:50%;background:#8b94a7}.status-dot.active{background:var(--green);box-shadow:0 0 10px rgba(111,226,177,.6)}.top-actions{display:flex;gap:8px}.icon-button{width:40px;height:40px;border-radius:13px;border:1px solid var(--line);background:rgba(255,255,255,.045);font-size:18px;color:#c4c9d7}.chat-scroll{flex:1;min-height:0;overflow:auto;padding:24px 17px 18px;overscroll-behavior:contain;scroll-behavior:smooth}.welcome-panel{max-width:500px;margin:30px auto 36px;text-align:center}.orb-wrap{height:128px;display:grid;place-items:center}.orb{width:100px;height:100px;border-radius:50%;position:relative;background:radial-gradient(circle at 32% 28%,#dfd9ff 0,#a89cff 16%,#756fe7 42%,#384b9c 72%,#18264b 100%);box-shadow:0 0 55px rgba(126,112,255,.38),inset -10px -16px 24px rgba(8,17,43,.42);animation:float 5s ease-in-out infinite}.orb:before,.orb:after{content:"";position:absolute;inset:-12px;border:1px solid rgba(167,154,255,.25);border-radius:50%;transform:rotateX(67deg) rotateZ(-27deg)}.orb:after{inset:-20px;transform:rotateX(68deg) rotateZ(32deg);opacity:.55}.orb span{position:absolute;width:25px;height:25px;top:17px;left:22px;border-radius:50%;background:rgba(255,255,255,.48);filter:blur(10px)}@keyframes float{50%{transform:translateY(-8px)}}.welcome-panel .eyebrow{margin-top:12px}.welcome-panel h2{font-size:27px;letter-spacing:-1px;margin:5px 0 8px}.welcome-panel>p.muted{font-size:14px;max-width:330px;margin:0 auto}.suggestions{display:grid;gap:9px;margin:24px auto 0;max-width:360px}.suggestion{background:rgba(255,255,255,.04);border:1px solid var(--line);padding:13px 15px;border-radius:14px;text-align:left;color:#d6dbea;font-size:13px;display:flex;justify-content:space-between}.suggestion span{color:#a89bff}.messages{max-width:720px;margin:0 auto;display:flex;flex-direction:column;gap:15px}.message-row{display:flex;gap:9px;align-items:flex-end;max-width:100%}.message-row.user{justify-content:flex-end}.message-avatar{height:28px;width:28px;flex:0 0 28px;border-radius:10px;background:linear-gradient(145deg,#9888ff,#5d78da);display:grid;place-items:center;font-size:13px;font-weight:800;color:white}.message-body{max-width:min(82%,620px);min-width:0}.bubble{padding:13px 15px;border-radius:17px 17px 17px 5px;background:#1a202c;border:1px solid rgba(255,255,255,.055);white-space:pre-wrap;overflow-wrap:anywhere;font-size:14px;line-height:1.48;color:#eef1f8}.user .bubble{background:linear-gradient(135deg,#5f63b7,#536ec1);border-color:transparent;border-radius:17px 17px 5px 17px;color:white}.message-meta{font-size:10px;color:#697387;margin-top:5px;padding:0 3px}.user .message-meta{text-align:right}.message-actions{display:flex;gap:7px;padding:5px 3px}.mini-action{border:0;background:transparent;color:#9f93fa;font-size:11px;padding:3px 0}.typing{display:flex;gap:4px;padding:4px 0}.typing i{width:6px;height:6px;border-radius:50%;background:#a89bff;animation:bop 1s infinite}.typing i:nth-child(2){animation-delay:.15s}.typing i:nth-child(3){animation-delay:.3s}@keyframes bop{50%{opacity:.35;transform:translateY(-4px)}}.composer-area{flex:0 0 auto;padding:8px 14px calc(12px + var(--safe-bottom));background:linear-gradient(180deg,rgba(13,16,23,0),rgba(13,16,23,.92) 18%,rgba(13,16,23,.98));max-width:920px;width:100%;margin:0 auto}.composer{display:flex;align-items:flex-end;gap:9px;background:#1a202c;border:1px solid rgba(255,255,255,.1);border-radius:20px;padding:8px 8px 8px 15px;box-shadow:0 10px 30px rgba(0,0,0,.2)}.composer textarea{flex:1;resize:none;max-height:130px;min-height:34px;background:transparent;border:0;outline:none;color:var(--text);font-size:15px;line-height:1.4;padding:6px 0}.composer textarea::placeholder{color:#707b90}.send-button{width:38px;height:38px;border:0;border-radius:13px;background:linear-gradient(135deg,#a08bff,#5e82f4);font-size:23px;font-weight:700;color:white;flex:0 0 38px}.composer-tools{display:flex;align-items:center;gap:8px;padding:10px 3px 0}.tool-button{border:1px solid var(--line);border-radius:999px;background:rgba(255,255,255,.045);padding:8px 12px;font-size:12px;color:#cbd2e3}.tool-button.active{border-color:rgba(111,226,177,.5);background:rgba(111,226,177,.1);color:#9bf2cd}.tool-button.live-tool{color:#b8abff}.tool-button.live-tool.active{border-color:rgba(156,140,255,.55);background:rgba(156,140,255,.12)}.mic-symbol{font-size:10px;color:#99e4c1;margin-right:4px}.live-symbol{font-size:12px;margin-right:4px}.composer-note{margin-left:auto;color:#5f6b80;font-size:9px;text-align:right}.voice-status{display:flex;align-items:center;gap:9px;padding:7px 8px 10px;color:#aab2c4;font-size:12px}.voice-status button{margin-left:auto;border:0;background:transparent;color:#a99cff;font-size:12px}.voice-bars{display:flex;align-items:center;gap:3px;height:15px}.voice-bars i{width:3px;border-radius:3px;height:5px;background:#9e92ff;animation:wave .8s ease-in-out infinite}.voice-bars i:nth-child(2){animation-delay:.13s}.voice-bars i:nth-child(3){animation-delay:.27s}.voice-bars i:nth-child(4){animation-delay:.4s}.voice-bars i:nth-child(5){animation-delay:.53s}@keyframes wave{50%{height:14px}}.sheet{position:fixed;inset:0;z-index:10;display:flex;align-items:flex-end}.sheet-backdrop{position:absolute;inset:0;background:rgba(0,0,0,.6);backdrop-filter:blur(5px)}.sheet-panel{position:relative;width:100%;max-height:88dvh;overflow:auto;background:#161c28;border:1px solid var(--line);border-bottom:0;border-radius:26px 26px 0 0;padding:11px 20px calc(28px + var(--safe-bottom));box-shadow:0 -20px 70px rgba(0,0,0,.4)}.sheet-handle{height:4px;width:38px;border-radius:4px;background:#444d60;margin:0 auto 19px}.sheet-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:15px}.sheet-heading .eyebrow{margin:0 0 5px}.sheet-heading h2{font-size:23px;margin:0;letter-spacing:-.7px}.close-button{border:0;background:#252d3b;color:#d9deeb;border-radius:12px;width:34px;height:34px;font-size:22px}.setting-group{padding:16px 0;border-top:1px solid var(--line)}.setting-title{font-size:12px;font-weight:800;color:#b9c1d2;margin-bottom:10px}.setting-row{display:flex;justify-content:space-between;align-items:center;padding:11px 0;gap:12px}.setting-row strong,.model-card strong{display:block;font-size:13px;font-weight:650}.setting-row small,.model-card small{display:block;color:#7e899e;font-size:11px;line-height:1.45;margin-top:4px;max-width:290px}.setting-row input{appearance:none;width:42px;height:24px;border-radius:99px;background:#343d4e;position:relative;flex:0 0 42px}.setting-row input:checked{background:#7669ce}.setting-row input:before{content:"";position:absolute;left:3px;top:3px;width:18px;height:18px;background:#fff;border-radius:50%;transition:transform .2s}.setting-row input:checked:before{transform:translateX(18px)}.model-card{display:flex;gap:10px;align-items:flex-start;padding:11px 0}.model-indicator{width:8px;height:8px;border-radius:50%;margin-top:4px;flex:0 0 8px}.model-indicator.green{background:#6fe2b1}.model-indicator.purple{background:#a18fff}.model-card>div{flex:1}.model-tag{font-size:9px;border-radius:99px;border:1px solid var(--line);padding:4px 7px;color:#929bb0;white-space:nowrap}.setting-footnote,.sheet-footnote{font-size:10px;color:#687489;line-height:1.5;margin:7px 0 0}.wide-row{width:100%;display:flex;justify-content:space-between;align-items:center;padding:13px 1px;background:transparent;border:0;border-bottom:1px solid var(--line);text-align:left;color:#dce2ef;font-size:13px}.wide-row span{color:#8590a5}.wide-row.danger{color:#ff999e}.memory-form{display:flex;gap:8px;margin:18px 0}.memory-form input{padding:12px;border-radius:12px;min-width:0}.memory-form button{background:#7a71d7;border:0;border-radius:12px;padding:0 15px;font-size:12px;font-weight:700}.memory-list{display:flex;flex-direction:column;gap:8px}.memory-item{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;background:rgba(255,255,255,.04);padding:12px;border:1px solid var(--line);border-radius:13px;font-size:13px}.memory-item button{background:transparent;border:0;color:#ff9298;font-size:17px}.modal{position:fixed;inset:0;z-index:20;display:grid;place-items:center;padding:22px;background:rgba(0,0,0,.72);backdrop-filter:blur(7px)}.modal-card{max-width:430px;width:100%;background:#1a202d;border:1px solid var(--line);border-radius:22px;padding:22px;box-shadow:0 25px 80px rgba(0,0,0,.45)}.modal-card .eyebrow{margin:0 0 10px}.modal-card h2{font-size:23px;letter-spacing:-.7px;margin:0 0 12px}.modal-card p:not(.eyebrow){color:#a2acc0;font-size:13px;line-height:1.55}.modal-actions{display:flex;gap:9px;margin-top:18px}.modal-actions>*{flex:1;font-size:12px}.toast{position:fixed;z-index:30;left:50%;bottom:calc(25px + var(--safe-bottom));transform:translate(-50%,20px);background:#252d3c;border:1px solid var(--line);padding:11px 16px;border-radius:14px;color:#e2e7f2;font-size:12px;opacity:0;pointer-events:none;transition:all .25s;max-width:calc(100% - 34px);text-align:center}.toast.show{opacity:1;transform:translate(-50%,0)}
@media(min-width:700px){.chat-scroll{padding:30px 30px 22px}.topbar{padding:12px 28px}.composer-area{padding-left:28px;padding-right:28px}.welcome-panel{margin-top:50px}.sheet-panel{max-width:620px;margin:0 auto;border-radius:26px 26px 0 0}.sheet{justify-content:center}.sheet-backdrop{background:rgba(0,0,0,.55)}}
@media(max-width:390px){.composer-note{display:none}.composer-tools{gap:7px}.welcome-panel{margin-top:14px}.suggestions{margin-top:18px}.chat-scroll{padding-top:15px}.brand-title{font-size:14px}}
