:root{color-scheme:light;--background:#f6f4f9;--surface:#fff;--surface-raised:#ede9f3;--text:#252031;--text-secondary:#716a7e;--border:#e0dbe7;--focus:#8658d8;--primary:#7441bc;--on-primary:#fff;--success:#298165;--on-success:#fff;--warning:#8c6016;--on-warning:#fff;--danger:#a02d46;--on-danger:#fff;--shadow:0 12px 48px #33204a09}
:root[data-theme=dark]{color-scheme:dark;--background:#121019;--surface:#1b1823;--surface-raised:#24202f;--text:#f0edf6;--text-secondary:#aaa2b9;--border:#332c40;--focus:#ba91ff;--primary:#b38ae9;--on-primary:#211230;--success:#83d6b7;--danger:#ff9bac;--shadow:0 12px 48px #0002}
*{box-sizing:border-box}body{margin:0;background:var(--background);color:var(--text);font:15px/1.5 -apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif}button,select,textarea{font:inherit}button,a,select,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:focus-visible,a:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid var(--focus);outline-offset:3px}button:disabled{cursor:wait;opacity:.5}.shell{display:flex;height:100dvh;min-height:480px}.sidebar{width:260px;flex-shrink:0;background:var(--surface);border-right:1px solid var(--border);padding:30px 22px;display:flex;flex-direction:column}.brand{display:flex;gap:13px;align-items:center;text-decoration:none;color:var(--text);font-size:30px;letter-spacing:-1px;font-weight:600}.brand-mark{width:43px;height:49px;border:1px solid var(--border);border-radius:16px;color:var(--primary);display:grid;place-items:center;font:italic 42px Georgia;box-shadow:inset 0 0 20px #9560c813}.brand small{display:block;letter-spacing:1.4px;font-size:8px;font-weight:600;color:var(--text-secondary);margin-top:-2px}.new-chat{margin:35px 0 26px;border:1px solid var(--border);border-radius:11px;background:var(--surface-raised);color:var(--text);padding:12px;text-align:left;font-size:13px}.section-label{font-size:10px;letter-spacing:1.8px;color:var(--text-secondary)}#chats{overflow:auto;flex:1;margin:0 -8px}#chats button{display:block;width:100%;padding:12px 10px;border:0;border-radius:8px;text-align:left;background:transparent;color:var(--text-secondary);white-space:nowrap;text-overflow:ellipsis;overflow:hidden;font-size:13px}#chats button:hover,#chats button.active{background:var(--surface-raised);color:var(--text)}.empty-chats{font-size:12px;color:var(--text-secondary);padding:12px 8px}.sidebar-bottom{padding-top:18px;border-top:1px solid var(--border)}.sidebar-bottom label{font-size:12px;color:var(--text-secondary)}select{float:right;background:var(--surface);color:var(--text);border:1px solid var(--border);border-radius:6px;font-size:11px;padding:3px}.private-note{font-size:12px;padding-top:25px}.private-note span{color:var(--primary);padding-right:7px}.private-note small{display:block;font-size:10px;color:var(--text-secondary);padding-top:5px}main{display:flex;flex-direction:column;flex:1;min-width:0;position:relative;background:radial-gradient(ellipse at 65% 30%,#9863e008,transparent 60%)}header{height:86px;border-bottom:1px solid var(--border);display:flex;align-items:center;gap:12px;padding:0 35px;flex-shrink:0}.header-identity{display:flex;align-items:center;gap:11px}.header-identity img{width:39px;height:39px;border-radius:50%;object-fit:cover;object-position:center 30%;border:1px solid var(--border)}.header-identity strong{display:block;font-size:15px;font-weight:600}.header-identity span{display:block;font-size:11px;color:var(--text-secondary)}.mode-label{font-size:9px;letter-spacing:2px;margin-left:auto;color:var(--text-secondary)}.icon-button{background:transparent;border:0;color:var(--text);font-size:22px;padding:8px}#menu,#mobile-new{display:none}.conversation{flex:1;overflow-y:auto;padding:24px 36px 15px;scroll-behavior:smooth}.welcome{max-width:800px;margin:8px auto 0;text-align:center}.portrait{width:148px;height:176px;margin:0 auto 22px;position:relative}.portrait img{width:100%;height:100%;object-fit:cover;object-position:center 27%;border-radius:70px 70px 52px 52px;position:relative;z-index:1;border:1px solid #ad7ee545;box-shadow:0 14px 50px #7353b120}.portrait-halo{position:absolute;inset:-12px;border:1px solid #a479d21c;border-radius:90px;transform:rotate(-10deg)}.eyebrow{font-size:9px;letter-spacing:2.3px;color:var(--primary)}h1{font-size:36px;line-height:1.25;font-weight:500;letter-spacing:-1.3px;margin:17px 0 13px}h1 span{color:var(--text-secondary);font-weight:400}.welcome p{font-size:13px;line-height:1.8;color:var(--text-secondary)}.suggestions{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:30px auto 10px}.suggestions button{background:var(--surface);border:1px solid var(--border);padding:16px 13px;border-radius:12px;text-align:left;color:var(--text);font-size:12px;box-shadow:var(--shadow)}.suggestions button:hover{border-color:var(--primary);transform:translateY(-2px)}.suggestions span{display:block;font-size:21px;color:var(--primary);margin-bottom:11px}.suggestions small{display:block;color:var(--text-secondary);font-size:10px;margin-top:5px;line-height:1.6}.composer-area{padding:14px 36px 20px;max-width:960px;width:100%;align-self:center}form{display:flex;gap:12px;align-items:flex-end;background:var(--surface);border:1px solid var(--border);border-radius:17px;padding:13px 13px 13px 20px;box-shadow:var(--shadow)}form:focus-within{border-color:var(--primary)}textarea{resize:none;max-height:170px;min-height:28px;flex:1;min-width:0;border:0;background:transparent;color:var(--text);line-height:1.65;padding:2px 0;outline:none!important}textarea::placeholder{color:var(--text-secondary)}#send{border:0;background:var(--primary);color:var(--on-primary);border-radius:11px;width:38px;height:38px;flex-shrink:0;font-size:25px}.composer-meta{display:flex;justify-content:space-between;gap:10px;font-size:9px;color:var(--text-secondary);padding:11px 5px 0}#messages{max-width:800px;margin:0 auto}.message{margin:15px 0 27px;display:flex;gap:12px;align-items:flex-start}.message .avatar{width:30px;height:30px;flex-shrink:0;border-radius:50%;object-fit:cover;object-position:center 27%}.message .initial{display:grid;place-items:center;background:var(--surface-raised);font-size:11px}.message .body{flex:1;min-width:0}.message .name{font-size:11px;font-weight:600;margin:4px 0 8px}.message .content{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.85;font-size:14px}.message.user .content{background:var(--surface-raised);border-radius:0 13px 13px;padding:13px 17px;display:inline-block}.thinking{max-width:800px;margin:20px auto;color:var(--text-secondary)}.thinking[hidden]{display:none}.thinking span{display:inline-block;height:5px;width:5px;margin-right:3px;background:var(--primary);border-radius:50%;animation:pulse 1.2s infinite}.thinking span:nth-child(2){animation-delay:.2s}.thinking span:nth-child(3){animation-delay:.4s}.thinking small{font-size:11px;margin-left:7px}#error{font-size:12px;color:var(--danger);margin:0 0 12px}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}@keyframes pulse{50%{opacity:.25}}@media(prefers-reduced-motion:reduce){*{animation:none!important;scroll-behavior:auto!important;transition:none!important}}@media(min-height:850px){.welcome{margin-top:35px}.portrait{height:220px;width:180px;margin-bottom:30px}.suggestions{margin-top:40px}}@media(max-width:900px){.sidebar{width:215px;padding:25px 17px}.conversation{padding:22px}.composer-area{padding:12px 22px 18px}.keyboard-hint{display:none}h1{font-size:31px}}@media(max-width:650px){.sidebar{display:none;position:absolute;z-index:10;top:72px;bottom:0;width:260px;box-shadow:15px 0 60px #0004}.sidebar.open{display:flex}header{height:72px;padding:0 15px}#menu,#mobile-new{display:block}.mode-label{margin-left:auto;font-size:8px;letter-spacing:1px}.conversation{padding:22px 18px 8px}.welcome{margin:5px auto}.portrait{width:122px;height:148px;margin-bottom:24px}h1{font-size:29px}.eyebrow{font-size:8px;letter-spacing:1.6px}.suggestions{grid-template-columns:1fr;margin-top:24px;gap:8px}.suggestions button{padding:12px 15px;font-size:12px;position:relative;padding-left:45px}.suggestions span{position:absolute;left:14px;top:11px;margin:0;font-size:19px}.suggestions small{font-size:10px;margin-top:2px}.composer-area{padding:10px 14px max(15px,env(safe-area-inset-bottom))}.composer-meta{justify-content:center;font-size:9px}textarea{font-size:16px}.message .content{font-size:14px}.welcome p{font-size:12px}.message{gap:9px}.header-identity span{font-size:10px}}

.login-body{min-height:100dvh;display:grid;place-items:center;padding:25px;background:#121019;color:#f0edf6}.login-card{background:#1b1823;border:1px solid #332c40;border-radius:24px;padding:38px;width:min(100%,420px);display:block;text-align:center;box-shadow:0 30px 100px #0003}.login-portrait{width:100px;height:120px;object-fit:cover;object-position:center 27%;border-radius:48px;margin:0 auto 25px;display:block}.login-card .eyebrow{color:#b38ae9}.login-card h1{font-size:29px;letter-spacing:-.8px}.login-card p{color:#aaa2b9;font-size:12px}.login-form{display:flex;flex-direction:column;align-items:stretch;text-align:left;background:transparent;border:0;box-shadow:none;padding:15px 0 25px;gap:8px}.login-form label{font-size:12px;color:#c6bfd3}.login-form input{width:100%;background:#24202f;border:1px solid #443b51;color:#fff;padding:12px;border-radius:9px;font-size:16px;margin-bottom:8px}.login-form button{border:0;background:#b38ae9;color:#211230;border-radius:10px;padding:13px;font-weight:600;margin-top:10px}.login-card small{color:#aaa2b9;font-size:10px}

.alerts-trigger{border:1px solid var(--border);border-radius:10px;background:var(--surface);color:var(--text);padding:9px 12px;font-size:12px;white-space:nowrap}.alerts-trigger span{background:var(--primary);color:var(--on-primary);border-radius:12px;padding:2px 6px;margin-left:3px}#alerts-dialog{background:var(--surface);color:var(--text);border:1px solid var(--border);border-radius:22px;padding:26px;width:min(580px,calc(100vw - 24px));max-height:calc(100dvh - 32px);overflow:auto;box-shadow:var(--shadow)}#alerts-dialog::backdrop{background:#08041099}.alerts-top{display:flex;justify-content:space-between;gap:12px;align-items:center}.alerts-top h2{margin:7px 0 0;font-size:25px;letter-spacing:-.5px;font-weight:500}.alerts-intro,.push-card p{color:var(--text-secondary);font-size:13px;line-height:1.65}.push-card{margin:22px 0;padding:18px;border:1px solid var(--border);border-radius:14px;background:var(--background)}#alerts-dialog h3{margin:0;font-size:14px;font-weight:600}.push-actions{display:flex;flex-wrap:wrap;gap:8px}.push-actions button,.alerts-list-heading button{border:1px solid var(--border);border-radius:9px;background:var(--surface);color:var(--text);font-size:12px;padding:10px 12px;min-height:42px}.push-actions .primary-action{background:var(--primary);color:var(--on-primary);border-color:var(--primary)}.push-actions [hidden]{display:none}.alerts-list-heading{display:flex;justify-content:space-between;gap:8px;align-items:center}.alerts-list-heading button{font-size:11px}.alert-item{display:block;width:100%;text-align:left;border:1px solid var(--border);border-radius:11px;background:var(--surface);color:var(--text);padding:14px;margin-top:10px;font-size:13px;line-height:1.6}.alert-item.unread{border-left:3px solid var(--primary);background:var(--surface-raised)}.alert-item time{display:block;color:var(--text-secondary);font-size:11px;margin-top:7px}#alerts-feedback,#push-feedback{font-size:12px;color:var(--text-secondary);overflow-wrap:anywhere}#push-feedback.error,#alerts-feedback.error{color:var(--danger)}@media(max-width:650px){header{gap:8px}.mode-label{display:none}.alerts-trigger{margin-left:auto;padding:8px;font-size:11px}#alerts-dialog{padding:20px}.push-actions{flex-direction:column}.push-actions button{width:100%}.alerts-top h2{font-size:23px}}
