.sidebar-close{display:none}#passkey-login{width:100%;padding:12px}#add-passkey{font-size:12px;width:100%;text-align:left;padding-left:16px}.sidebar-footer{flex-wrap:wrap}#add-passkey{order:4}.sidebar-footer .logout{margin-left:auto}:root{color-scheme:dark;font-family:"Segoe UI Variable Text","Segoe UI",system-ui,sans-serif;--bg:#0e1116;--rail:#090c11;--surface:#151a21;--line:#29323e;--text:#e8edf2;--muted:#a8b3c1;--blue:#7da6ff;--danger:#ff9d9d;--green:#93d8b0;--amber:#e8c888;color:var(--text);background:var(--bg);font-synthesis:none}
*{box-sizing:border-box}html,body{margin:0;height:100%;min-height:100dvh}body{font-size:14px;line-height:1.5}button,input,textarea,select{font:inherit;color:inherit}button{cursor:pointer}button:disabled{cursor:wait;opacity:.5}a{color:inherit}svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}.icons{position:absolute;width:0;height:0;overflow:hidden}[hidden]{display:none!important}::selection{background:#263e67;color:#fff}:focus-visible{outline:2px solid var(--blue);outline-offset:3px}input,textarea{caret-color:var(--blue)}button{transition:background .15s ease,color .15s ease}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.app{display:grid;grid-template-columns:286px minmax(0,1fr);height:100dvh;overflow:hidden}.sidebar{display:flex;flex-direction:column;background:var(--rail);border-right:1px solid var(--line);padding:20px 14px 14px;min-height:0}.brand{display:flex;gap:12px;align-items:center;padding:2px 8px 24px;text-decoration:none;font-weight:650;font-size:16px;line-height:1.3}.brand small{display:block;margin-top:3px;font-size:12px;color:var(--muted);font-weight:400}.brand-mark{display:grid;place-items:center;width:34px;height:34px;border:1px solid #606d80;border-radius:10px;font-weight:650;font-size:20px;color:#d4e2f9}.new-thread{display:flex;align-items:center;gap:10px;border:1px solid var(--line);background:var(--surface);border-radius:8px;padding:11px 12px;text-align:left}.new-thread:hover{background:#202833}.filters{display:flex;gap:4px;margin:22px 0 10px}.filters button{flex:1;background:transparent;border:0;border-radius:6px;color:var(--muted);padding:8px 5px;font-size:13px}.filters button[aria-selected=true]{background:#1c2532;color:var(--text)}.filters button:hover{background:#151b24}.search-label{position:absolute;clip:rect(0,0,0,0);width:1px;height:1px;overflow:hidden}.search{width:100%;border:1px solid var(--line);background:transparent;border-radius:7px;padding:8px 10px;margin-bottom:13px}.search::placeholder,textarea::placeholder{color:var(--muted)}.thread-list{overflow-y:auto;flex:1;min-height:0;scrollbar-color:#394353 transparent}.thread-row{display:block;width:100%;text-align:left;background:transparent;border:0;border-radius:7px;padding:11px 10px;margin:2px 0}.thread-row:hover{background:#151c26}.thread-row[aria-current=true]{background:#1c2738}.thread-row strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:550}.thread-row small{display:flex;justify-content:space-between;gap:6px;color:var(--muted);font-size:12px;margin-top:5px}.thread-row.active small{color:#b5cfff}.thread-empty{padding:18px 10px;color:var(--muted);font-size:13px}.sidebar-footer{display:flex;align-items:center;gap:9px;margin-top:14px;padding:14px 6px 2px;border-top:1px solid var(--line)}.sidebar-footer div{min-width:0;flex:1}.sidebar-footer strong{display:block;font-size:12px;font-weight:500}.sidebar-footer small{display:block;color:var(--muted);font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.logout{font-size:12px}
.main{display:flex;flex-direction:column;min-width:0;min-height:0;position:relative}.topbar{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:20px 28px 18px;border-bottom:1px solid var(--line);flex-shrink:0}.thread-heading{min-width:0}.thread-heading h1{font-size:17px;font-weight:600;letter-spacing:-.02em;margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.thread-heading p{font-size:12px;color:var(--muted);margin:4px 0 0}.thread-actions{display:flex;gap:8px;align-items:center;flex-shrink:0}.quiet{border:0;background:transparent;padding:6px 8px;border-radius:5px;font-size:12px;color:var(--muted);white-space:nowrap}.quiet:hover{background:#1c2532;color:var(--text)}.danger-button{border:1px solid #614040;background:transparent;color:var(--danger);padding:6px 9px;border-radius:6px;font-size:12px}.danger-button:hover{background:#382429}.mobile-menu{display:none}.icon-button{padding:7px;border:0;border-radius:6px;background:transparent}.notice{background:#202c3f;color:#d3e3ff;padding:10px 28px;font-size:13px;border-bottom:1px solid var(--line)}.notice.error{background:#322127;color:#ffd6d6}
.conversation{flex:1;min-height:0;overflow:auto;scrollbar-color:#394353 transparent;padding:28px 24px 22px}.welcome{max-width:610px;margin:8vh auto 0}.welcome-mark{display:grid;place-items:center;width:42px;height:42px;border:1px solid var(--line);border-radius:10px;color:var(--blue);margin-bottom:22px}.welcome h2{font-size:31px;line-height:1.2;font-weight:550;letter-spacing:-.035em;margin:0 0 15px}.welcome p{font-size:15px;color:var(--muted);max-width:53ch;margin:0 0 28px;line-height:1.8}.welcome-note{display:flex;align-items:center;gap:10px;font-size:12px;color:#bbc7d5}.welcome-note svg{color:var(--green);width:17px;height:17px}.messages{max-width:760px;margin:auto}.message{margin:0 0 30px}.message-head{display:flex;align-items:center;gap:9px;margin-bottom:10px;font-weight:600;font-size:12px}.message-head time{font-size:12px;color:var(--muted);font-weight:400;margin-left:auto}.message.user .message-head{color:#b8cefa}.message-body{font-size:14px;white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.75}.message.user .message-body{background:#19212d;padding:14px 17px;border-radius:10px}.message.assistant .message-body{padding:0 1px}.answer-pending{max-width:760px;margin:0 auto 12px;color:var(--muted);font-size:12px;display:flex;gap:10px;align-items:center}.status-dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:#8a96a5;flex-shrink:0}.status-dot.working{background:var(--blue);animation:workPulse 2s ease-in-out infinite}.status-dot.ok{background:var(--green)}.status-dot.error{background:var(--danger)}@keyframes workPulse{50%{opacity:.35}}@media(prefers-reduced-motion:reduce){.status-dot.working{animation:none}button{transition:none}}
.activity-bar{max-width:808px;width:calc(100% - 48px);margin:0 auto 9px;flex-shrink:0}.phase-line{display:flex;align-items:center;gap:8px;min-height:29px}.phase-line strong{font-size:12px;font-weight:500;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.phase-time{font-variant-numeric:tabular-nums;color:var(--muted);font-size:12px;margin-left:auto;white-space:nowrap}.phase-line button{font-size:12px}.activity-list{margin:6px 0;padding:10px 14px 10px 30px;background:var(--surface);border-radius:7px;max-height:180px;overflow:auto;color:var(--muted);font-size:12px}.activity-list li{padding:4px 0}.activity-list time{font-variant-numeric:tabular-nums;font-size:12px;color:#8997aa;margin-right:10px}
.composer{max-width:808px;width:calc(100% - 48px);margin:0 auto;flex-shrink:0;border:1px solid #3b4758;border-radius:12px;background:#171d27;padding:12px 14px 9px}.composer:focus-within{border-color:#7295c8}.composer textarea{border:0;outline:0;background:transparent;resize:vertical;min-height:48px;max-height:200px;width:100%;padding:0 2px;font-size:14px;line-height:1.6}.composer-controls{display:flex;align-items:center;gap:10px;margin-top:7px}.intent-control{display:flex;gap:7px;align-items:center;font-size:12px;color:var(--muted);white-space:nowrap}.intent-control select{font-size:12px;background:#202a38;border:1px solid #374256;border-radius:5px;padding:4px 6px;color:var(--text);max-width:168px}#composer-hint{color:var(--muted);font-size:12px;max-width:38ch;line-height:1.4;margin-left:auto}.primary{border:0;background:#c6d7f6;color:#13243c;font-weight:600;border-radius:7px;padding:11px 14px}.primary:hover{background:#e0eaff}.send{display:grid;place-items:center;width:34px;height:34px;padding:0;flex-shrink:0;margin-left:auto}.measurement-footer{display:flex;align-items:center;gap:14px;justify-content:center;color:var(--muted);font-size:12px;padding:11px 20px 13px;flex-shrink:0;font-variant-numeric:tabular-nums}.measurement-footer button{font-size:12px}.measurement-panel{position:absolute;right:24px;bottom:47px;z-index:3;max-width:410px;width:calc(100% - 48px);padding:20px 22px;border:1px solid #3b4758;background:#151d28;border-radius:10px}.measurement-panel h2{font-size:15px;margin:0 0 10px;font-weight:600}.measurement-panel p{font-size:12px;color:var(--muted);margin:0 0 14px;line-height:1.65}.measurement-panel dl{font-size:12px;margin:0}.measurement-panel dt{color:var(--muted);float:left;clear:left;max-width:70%}.measurement-panel dd{text-align:right;margin:0 0 9px;font-variant-numeric:tabular-nums}.measurement-panel .measurement-note{border-top:1px solid var(--line);padding-top:12px;margin:14px 0 0;font-size:12px}
.login{display:grid;place-items:center;min-height:100dvh;padding:35px 24px}.login-content{width:min(420px,100%)}.login-content>.brand-mark{margin-bottom:28px}.login h1{font-size:34px;font-weight:550;line-height:1.22;letter-spacing:-.035em;margin:0 0 20px}.login p{color:var(--muted);line-height:1.75;margin:0 0 25px}.login form{display:flex;flex-direction:column;gap:10px}.login label{font-size:12px;color:var(--muted)}.login input{padding:12px;border:1px solid #465268;border-radius:7px;background:var(--surface)}.login button{margin-top:5px}.login p.error{color:var(--danger);font-size:12px;margin:4px 0 0;min-height:20px}.login small{display:block;font-size:12px;color:var(--muted);margin-top:20px;line-height:1.6}
@media(max-width:960px){.app{grid-template-columns:248px minmax(0,1fr)}.topbar{padding:17px 20px}.thread-heading p{max-width:40ch}.thread-actions{gap:2px}#composer-hint{display:none}.welcome{margin-top:5vh}}
@media(max-width:700px){.app{grid-template-columns:minmax(0,1fr)}.sidebar{position:fixed;inset:0 auto 0 0;width:min(310px,88vw);z-index:20;visibility:hidden;transform:translateX(-100%);transition:transform .18s ease}.sidebar.visible{visibility:visible;transform:translateX(0)}.sidebar-close{display:block;position:absolute;right:10px;top:16px}.mobile-menu{display:inline-flex;flex-shrink:0}.topbar{padding:12px 14px;gap:9px;align-items:flex-start}.thread-heading{flex:1}.thread-heading h1{font-size:15px}.thread-heading p{font-size:12px;line-height:1.5}.thread-actions{flex-direction:column;align-items:flex-end;gap:3px}.thread-actions button{font-size:12px;padding:4px 6px}.conversation{padding:23px 18px 16px}.welcome{margin-top:5vh}.welcome h2{font-size:27px}.welcome p{font-size:14px}.activity-bar,.composer{width:calc(100% - 28px)}.phase-line strong{font-size:12px}.phase-line button{font-size:12px;padding:5px}.composer{padding:10px}.composer textarea{font-size:16px;min-height:44px}.intent-control{font-size:12px}.intent-control select{font-size:12px;max-width:154px}.measurement-footer{gap:9px;flex-wrap:wrap;padding:9px 12px;font-size:12px}.measurement-footer button{font-size:12px}.measurement-panel{right:14px;width:calc(100% - 28px)}.message-body{font-size:14px}.message.user .message-body{padding:12px 14px}}
