:root{color-scheme:dark;--bg: #09090b;--bg-elevated: #111114;--surface: #18181c;--surface2: #222228;--border: #2e2e38;--text: #f4f4f5;--muted: #9ca3af;--accent: #6366f1;--accent-dim: #4f46e5;--accent-glow: color-mix(in srgb, var(--accent) 35%, transparent);--ok: #34d399;--warn: #fbbf24;--err: #f87171;--user: #3b82f6;--assistant: #22d3a8;--thinking: #a78bfa;--working: #fb923c;--radius: 14px;--keyboard-offset: 0px;font-family:Segoe UI,system-ui,-apple-system,Roboto,Helvetica Neue,sans-serif}*{box-sizing:border-box}html{height:100%}body,#root{margin:0;min-height:100%;height:100%;background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased}button,input,textarea,select{font:inherit}.app{position:relative;max-width:480px;margin:0 auto;height:100dvh;height:100svh;display:flex;flex-direction:column;overflow:hidden;background:radial-gradient(ellipse 120% 80% at 50% -30%,var(--accent-glow),transparent 55%),var(--bg)}.app-banners{flex-shrink:0;padding:0 1rem}.https-banner{margin:.5rem 0;padding:.65rem .85rem;border-radius:var(--radius-md, 10px);border:1px dashed color-mix(in srgb,var(--accent, #8b7cff) 55%,var(--border));background:color-mix(in srgb,var(--accent, #8b7cff) 8%,var(--surface));font-size:.85rem}.https-banner strong{display:block;margin-bottom:.25rem}.https-banner p{margin:0 0 .5rem;opacity:.9}.https-banner-btn{width:100%;text-align:center}.system-https-box{margin-top:.5rem;padding:.5rem 0}.system-https-link{display:block;width:100%;text-align:left;word-break:break-all;margin:.25rem 0}.system-https-note{font-size:.78rem;opacity:.75;margin:.25rem 0 0}.app-body{flex:1;min-height:0;display:flex;flex-direction:column;overflow:hidden}.app-center{flex:1;min-height:0;display:flex;flex-direction:column;overflow:hidden;position:relative}.main-tabs{flex-shrink:0;display:flex;gap:.35rem;padding:.4rem .65rem 0;border-bottom:1px solid var(--border);background:color-mix(in srgb,var(--bg-elevated) 70%,transparent);overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none}.main-tabs::-webkit-scrollbar{display:none}.main-tab{flex:1 0 auto;display:flex;align-items:center;justify-content:center;gap:.35rem;padding:.5rem .65rem;border:none;border-radius:10px 10px 0 0;background:transparent;color:var(--muted);font-size:.82rem;font-weight:600;cursor:pointer}.main-tab.active{color:var(--text);background:var(--surface);box-shadow:inset 0 -2px 0 var(--accent)}.main-tab-badge{font-size:.68rem;padding:.1rem .35rem;border-radius:999px;background:color-mix(in srgb,var(--accent) 25%,var(--surface2));color:var(--accent)}.main-tab-sub{font-size:.65rem;font-weight:500;color:var(--muted);max-width:6rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.content--sessions,.content--usage,.content--prompts,.content--links{padding-top:.5rem}.usage-panel{display:flex;flex-direction:column;gap:.85rem;min-height:0;padding-bottom:1rem}.usage-panel__card{background:var(--surface);border:1px solid var(--border);border-radius:14px;padding:.75rem;display:flex;flex-direction:column;gap:.55rem}.usage-panel__card .usage-subtitle:first-child{margin-top:0}.usage-chart-label{margin:0 0 .35rem;font-size:.78rem;color:var(--muted)}.usage-token-section{margin-top:0}.usage-panel-head{display:flex;align-items:center;justify-content:space-between;gap:.5rem;position:sticky;top:0;z-index:2;background:var(--bg);padding:.25rem 0 .5rem;margin:-.25rem 0 0}.usage-panel-head__right{display:flex;align-items:center;gap:.5rem}.usage-panel__sync-dot{width:8px;height:8px;border-radius:50%;background:var(--accent);opacity:.85;animation:usage-pulse 1.2s ease-in-out infinite}@keyframes usage-pulse{0%,to{opacity:.35}50%{opacity:1}}.usage-panel--refreshing{opacity:.98}.usage-panel__loading{min-height:1.2rem}.usage-token-chart-mount{min-height:240px}.usage-period-select{padding:.35rem .5rem;border-radius:8px;border:1px solid var(--border);background:var(--surface);color:var(--text);font-size:.78rem}.usage-live{margin:0;padding:.55rem .65rem;border-radius:10px;background:color-mix(in srgb,var(--accent) 12%,var(--surface));font-size:.82rem}.usage-analysis h3{margin:0 0 .5rem;font-size:.88rem}.usage-analysis-list{margin:0 0 .5rem;padding-left:1.1rem;font-size:.8rem;line-height:1.45}.usage-hint{margin:0;font-size:.72rem;color:var(--muted);line-height:1.35}.usage-subtitle{margin:.25rem 0 .35rem;font-size:.82rem;font-weight:600;color:var(--muted)}.usage-chart-wrap{background:var(--surface);border:1px solid var(--border);border-radius:14px;padding:.65rem}.usage-chart-canvas{width:100%;height:180px;display:block}.usage-token-section{margin-top:1rem}.usage-panel__card--tokens{order:-1}.usage-token-range{margin:.35rem 0}.usage-token-range__label{display:flex;flex-direction:column;gap:.25rem;font-size:.75rem;color:var(--muted)}.usage-token-chart__mode{margin:0 0 .4rem;font-size:.72rem;color:var(--muted)}.usage-token-chart{position:relative;padding:.25rem 0 0}.usage-token-chart__plot{position:relative;display:flex;gap:.35rem;padding-left:2.5rem}.usage-token-yaxis{position:absolute;left:0;top:0;bottom:0;width:2.25rem;display:flex;flex-direction:column;justify-content:space-between;font-size:.65rem;color:var(--muted);pointer-events:none}.usage-token-bars{flex:1;display:flex;align-items:flex-end;gap:2px;min-width:0;overflow-x:auto;overflow-y:hidden;padding-bottom:2px;scrollbar-width:thin}.usage-token-bar{flex:1 0 8px;max-width:22px;min-width:6px;height:100%;position:relative;display:flex;flex-direction:column;justify-content:flex-end;align-items:center;border-radius:4px 4px 0 0;cursor:crosshair;outline:none;transition:background .12s ease}.usage-token-bar--empty{opacity:.25}.usage-token-bar--hover,.usage-token-bar:focus-visible{background:color-mix(in srgb,var(--accent) 12%,transparent)}.usage-token-bar__stack{width:100%;display:flex;flex-direction:column-reverse;justify-content:flex-start;border-radius:4px 4px 0 0;overflow:hidden;min-height:2px}.usage-token-bar__seg{width:100%;min-height:0}.usage-token-bar__seg--cache-read{background:#22d3ee}.usage-token-bar__seg--cache-write{background:#06b6d4}.usage-token-bar__seg--input{background:#6366f1}.usage-token-bar__seg--output{background:#a78bfa}.usage-token-bar__cost{position:absolute;left:50%;transform:translate(-50%);width:7px;height:7px;border-radius:50%;background:#fbbf24;box-shadow:0 0 0 2px color-mix(in srgb,#fbbf24 35%,transparent);pointer-events:none}.usage-token-tooltip{position:absolute;top:0;left:50%;transform:translate(-50%);z-index:5;min-width:180px;max-width:92vw;padding:.55rem .65rem;border-radius:10px;background:color-mix(in srgb,var(--surface) 92%,#000);border:1px solid var(--border);box-shadow:0 8px 24px #00000059;font-size:.78rem;pointer-events:none}.usage-token-tooltip strong{display:block;margin-bottom:.35rem;font-size:.8rem}.usage-token-tooltip ul{margin:0;padding:0;list-style:none;line-height:1.45;color:var(--muted)}.usage-token-xlabels{display:flex;gap:2px;margin-top:.35rem;padding-left:2.5rem;overflow:hidden;font-size:.62rem;color:var(--muted)}.usage-token-xlabels__tick{flex:1 0 8px;text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.usage-token-legend{list-style:none;margin:.5rem 0 0;padding:0;display:flex;flex-wrap:wrap;gap:.5rem 1rem;font-size:.75rem;color:var(--muted)}.usage-token-legend__swatch{display:inline-block;width:10px;height:10px;border-radius:2px;margin-right:.35rem;vertical-align:middle}.usage-token-legend__swatch--cache-read{background:#22d3ee}.usage-token-legend__swatch--cache-write{background:#06b6d4}.usage-token-legend__swatch--input{background:#6366f1}.usage-token-legend__swatch--output{background:#a78bfa}.usage-token-legend__swatch--cost{background:#fbbf24;border-radius:50%}.usage-token-days{margin-top:.65rem;font-size:.8rem}.usage-token-days summary{cursor:pointer;color:var(--muted);-webkit-user-select:none;user-select:none}.usage-token-days{margin-top:.75rem;border-top:1px solid var(--border);padding-top:.65rem}.usage-token-days__title{margin:0 0 .5rem;font-size:.85rem;font-weight:600}.usage-token-days__list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.35rem;max-height:200px;overflow-y:auto}.usage-token-day-row{display:flex;flex-direction:column;gap:.1rem;font-size:.78rem}.usage-token-day-row__date{font-weight:600;color:var(--text)}.usage-token-day-row__stats{color:var(--muted)}.usage-token-day-row__meta{color:var(--muted);font-size:.72rem}.usage-token-days__sum{margin:.5rem 0 0;font-size:.78rem;color:var(--muted)}.usage-session-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.35rem}.usage-session-row{width:100%;text-align:left;padding:.65rem .7rem;border:1px solid var(--border);border-radius:10px;background:var(--surface);color:var(--text);cursor:pointer;display:flex;flex-direction:column;gap:.2rem}.usage-session-row.active{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 10%,var(--surface))}.usage-session-title{font-size:.82rem;font-weight:600;line-height:1.3}.usage-session-stats{font-size:.78rem;color:var(--warn)}.usage-session-meta{font-size:.68rem;color:var(--muted)}.usage-account-card{margin-bottom:.25rem}.usage-account-card__title{margin:0 0 .5rem;font-size:.95rem}.usage-account-meta{display:grid;grid-template-columns:1fr 1fr;gap:.5rem 1rem;margin:0 0 .65rem;font-size:.78rem}.usage-account-meta dt{color:var(--muted);margin:0}.usage-account-meta dd{margin:.1rem 0 0;font-weight:600}.usage-account-message{margin:0 0 .5rem;font-size:.78rem;color:var(--warn)}.usage-account-buckets{display:flex;flex-direction:column;gap:.55rem}.usage-account-bucket__head{display:flex;flex-wrap:wrap;justify-content:space-between;gap:.25rem .5rem;font-size:.78rem;margin-bottom:.25rem}.usage-account-bucket__label{font-weight:600}.usage-account-bucket__nums{color:var(--muted);font-variant-numeric:tabular-nums}.usage-account-bar{height:8px;border-radius:4px;background:color-mix(in srgb,var(--muted) 25%,transparent);overflow:hidden}.usage-account-bar__fill{height:100%;border-radius:4px;background:var(--accent);transition:width .3s ease}.usage-account-bar__fill--warn{background:var(--warn)}.usage-account-bucket__pct{font-size:.68rem;color:var(--muted);margin-top:.15rem;display:block}.usage-forecasts{margin-top:.75rem;padding-top:.65rem;border-top:1px solid var(--border)}.usage-forecasts__title{margin:0 0 .45rem;font-size:.82rem;font-weight:600}.usage-forecasts-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.5rem}.usage-forecast-row{padding:.55rem .6rem;border-radius:8px;border:1px solid var(--border);background:color-mix(in srgb,var(--surface) 90%,transparent)}.usage-forecast-row__head{display:flex;justify-content:space-between;align-items:center;gap:.5rem;font-size:.8rem}.usage-forecast-conf{font-size:.62rem;text-transform:uppercase;letter-spacing:.04em;padding:.1rem .35rem;border-radius:4px;background:color-mix(in srgb,var(--muted) 20%,transparent);color:var(--muted)}.usage-forecast-conf--high{color:#4ade80;background:color-mix(in srgb,#22c55e 15%,transparent)}.usage-forecast-conf--medium{color:var(--accent)}.usage-forecast-row__line{margin:.2rem 0 0;font-size:.76rem;line-height:1.35}.usage-forecast-row__line--muted{color:var(--muted)}.usage-forecast-row__eta{margin:.25rem 0 0;font-size:.8rem;font-weight:600;color:var(--text)}.usage-sessions-head{display:flex;align-items:center;justify-content:space-between;gap:.5rem;flex-wrap:wrap}.usage-sessions-head .usage-subtitle{margin:0}.usage-hint--warn{color:var(--warn)}.prompts-panel{display:flex;flex-direction:column;gap:.75rem;min-height:100%}.prompts-panel__head{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:.65rem}.prompts-panel__title{margin:0;font-size:1.05rem}.prompts-panel__sub{margin:.2rem 0 0;font-size:.78rem;color:var(--muted);line-height:1.35;max-width:36rem}.prompts-panel__actions{display:flex;flex-wrap:wrap;align-items:center;gap:.4rem}.prompts-panel__period{display:flex;align-items:center;gap:.35rem;font-size:.78rem;color:var(--muted)}.prompts-panel__period select{padding:.35rem .5rem;border-radius:8px;border:1px solid var(--border);background:var(--surface);color:var(--text);font-size:.78rem}.prompts-panel__sync{border-color:color-mix(in srgb,var(--accent) 50%,var(--border))}.prompts-panel__hint{margin:0;font-size:.78rem;color:var(--muted);line-height:1.4}.prompts-panel__hint--warn{color:var(--warn)}.prompts-stats{display:grid;grid-template-columns:repeat(auto-fill,minmax(5.5rem,1fr));gap:.45rem}.prompts-stat{padding:.55rem .6rem;border-radius:10px;border:1px solid var(--border);background:var(--surface);display:flex;flex-direction:column;gap:.15rem}.prompts-stat__val{font-size:.95rem;font-weight:700;color:var(--text)}.prompts-stat__lbl{font-size:.68rem;color:var(--muted)}.prompts-panel__filter{margin:0;font-size:.78rem;color:var(--muted)}.prompts-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.4rem}.prompts-empty{padding:1rem;text-align:center;color:var(--muted);font-size:.85rem}.prompts-row{border:1px solid var(--border);border-radius:10px;background:var(--surface);overflow:hidden}.prompts-row--matched{border-color:color-mix(in srgb,var(--accent) 35%,var(--border))}.prompts-row__main{width:100%;text-align:left;padding:.55rem .65rem;border:none;background:transparent;color:var(--text);cursor:pointer;display:grid;grid-template-columns:auto auto 1fr;grid-template-rows:auto auto;gap:.2rem .45rem;align-items:start}.prompts-row__time{grid-column:1;font-size:.68rem;color:var(--muted);font-variant-numeric:tabular-nums;white-space:nowrap}.prompts-row__badge{grid-column:2;font-size:.62rem;font-weight:600;text-transform:uppercase;padding:.1rem .35rem;border-radius:4px;letter-spacing:.03em}.prompts-row__badge--remote{background:color-mix(in srgb,var(--accent) 18%,transparent);color:var(--accent)}.prompts-row__badge--editor{background:color-mix(in srgb,#22c55e 18%,transparent);color:#4ade80}.prompts-row__session{grid-column:3;font-size:.72rem;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.prompts-row__preview{grid-column:1 / -1;font-size:.8rem;line-height:1.35;color:var(--text);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.prompts-row__usage{grid-column:1 / -1;font-size:.72rem;font-variant-numeric:tabular-nums}.prompts-row__usage--ok{color:var(--accent)}.prompts-row__usage--pending{color:var(--muted);font-style:italic}.prompts-row__detail{padding:0 .65rem .65rem;border-top:1px solid var(--border)}.prompts-row__full{margin:.5rem 0;font-size:.78rem;line-height:1.45;white-space:pre-wrap;word-break:break-word}.prompts-row__meta{margin:0;display:grid;grid-template-columns:auto 1fr;gap:.15rem .65rem;font-size:.72rem}.prompts-row__meta dt{color:var(--muted)}.prompts-row__meta dd{margin:0}.sessions-view{display:flex;flex-direction:column;gap:.75rem;min-height:100%}.sessions-section{flex:1;min-height:0;display:flex;flex-direction:column;background:var(--surface);border:1px solid var(--border);border-radius:14px;overflow:hidden}.sessions-section--embedded{background:transparent;border:none;border-radius:0}.sessions-section--embedded .sessions-folders{max-height:none}.chat-sessions-picker{flex-shrink:0;margin-bottom:.5rem;max-height:min(42vh,320px);overflow:hidden;display:flex;flex-direction:column}.chat-sessions-picker .sessions-section--embedded{flex:1;min-height:0}.chat-sessions-picker .sessions-folders{flex:1;min-height:0;overflow-y:auto}.chat-system-mobile{flex-shrink:0;margin-top:.5rem}.sessions-section-head{display:flex;align-items:center;justify-content:space-between;padding:.65rem .85rem;border-bottom:1px solid var(--border);background:color-mix(in srgb,var(--accent) 8%,var(--surface))}.sessions-title{margin:0;font-size:.9rem;font-weight:700;letter-spacing:-.02em}.sessions-count{font-size:.72rem;font-weight:700;color:var(--accent);background:color-mix(in srgb,var(--accent) 18%,transparent);padding:.15rem .45rem;border-radius:999px}.sessions-hint{margin:0;padding:0 .85rem;font-size:.78rem;color:var(--muted);line-height:1.4}.sessions-empty{padding:1.25rem .85rem;text-align:center}.sessions-empty p{margin:0 0 .5rem;font-size:.88rem}.sessions-folders{flex:1;min-height:0;overflow-y:auto;max-height:calc(100dvh - 14rem);-webkit-overflow-scrolling:touch}.session-folder{border-bottom:1px solid var(--border)}.session-folder:last-child{border-bottom:none}.session-folder-head{display:flex;align-items:center;justify-content:space-between;gap:.5rem;padding:.55rem .75rem;cursor:default;list-style:none;font-size:.78rem;font-weight:700;color:var(--project-color, var(--accent));background:color-mix(in srgb,var(--project-color, var(--accent)) 12%,transparent);box-shadow:inset 3px 0 0 var(--project-color, var(--accent))}.session-folder-head::-webkit-details-marker{display:none}.session-folder-name{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.session-folder-count{font-size:.68rem;font-weight:700;color:var(--muted);background:var(--surface2);padding:.1rem .4rem;border-radius:999px}.sessions-list{list-style:none;margin:0;padding:.35rem;overflow-y:auto;flex:1;min-height:8rem;max-height:calc(100dvh - 14rem);-webkit-overflow-scrolling:touch}.sessions-list--nested{max-height:none;padding:.2rem .35rem .45rem;background:color-mix(in srgb,var(--bg) 40%,var(--surface))}.session-row{width:100%;display:flex;align-items:flex-start;gap:.55rem;text-align:left;padding:.7rem .65rem;border:none;border-radius:10px;background:transparent;color:var(--text);cursor:pointer;transition:background .12s}.session-row:hover{background:var(--surface2)}.session-row.selected{background:color-mix(in srgb,var(--accent) 16%,var(--surface2));box-shadow:inset 3px 0 0 var(--accent)}.session-row.active{background:color-mix(in srgb,#3ecf8e 16%,var(--surface2));box-shadow:inset 3px 0 #3ecf8e}.session-row.active-selected,.session-row.active.selected{background:color-mix(in srgb,var(--accent) 10%,#3ecf8e 14%,var(--surface2));box-shadow:inset 3px 0 #3ecf8e}.session-row.active .session-row-icon{color:#3ecf8e}.session-row.selected .session-row-icon{color:var(--accent)}.session-row--tinted{box-shadow:inset 3px 0 0 var(--project-color, var(--accent))}.sessions-search{display:block;margin:0 0 .55rem}.sessions-back{margin:0 0 .5rem}.sessions-project-grid{display:flex;flex-direction:column;gap:.35rem}.session-row-badge{flex-shrink:0;align-self:center;font-size:.58rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;padding:.12rem .4rem;border-radius:5px;background:color-mix(in srgb,#3ecf8e 24%,transparent);color:#2db87a}.session-row-badge--cli{background:color-mix(in srgb,var(--accent) 24%,transparent);color:var(--accent)}.sessions-legend{margin:0 0 .5rem;padding:.35rem .5rem;font-size:.68rem;line-height:1.35;color:var(--muted);background:color-mix(in srgb,#3ecf8e 6%,var(--surface));border-radius:8px;border-left:3px solid #3ecf8e}.session-row-icon{flex-shrink:0;font-size:.55rem;line-height:1.6;color:var(--muted)}.session-row-title{flex:1;min-width:0;font-size:.84rem;font-weight:500;line-height:1.35;word-break:break-word}.session-row.is-unread .session-row-title{font-weight:700}.session-row-meta,.chat-switcher-row-meta{flex-shrink:0;display:flex;align-items:center;gap:.35rem}.session-row-time{font-size:.68rem;font-weight:600;color:var(--muted);font-variant-numeric:tabular-nums}.session-status-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.session-status-dot--unread{background:var(--accent)}.session-status-dot--running{background:#3ecf8e;box-shadow:0 0 #3ecf8e8c;animation:session-dot-pulse 1.4s ease-out infinite}@keyframes session-dot-pulse{0%{box-shadow:0 0 #3ecf8e8c}70%{box-shadow:0 0 0 6px #3ecf8e00}to{box-shadow:0 0 #3ecf8e00}}.chat-view{display:flex;flex-direction:column;flex:1;min-height:0}.chat-session-bar{display:flex;align-items:center;gap:.5rem;padding:.25rem 0 .5rem;flex-shrink:0;min-width:0}.chat-switcher-bar{padding:.15rem 0 .45rem}.chat-switcher-btn{width:100%;min-width:0;display:flex;align-items:center;gap:.5rem;text-align:left;padding:.5rem .7rem;border-radius:12px;border:1px solid var(--border);background:var(--surface);color:var(--text);cursor:pointer}.chat-switcher-btn:hover,.chat-switcher-btn:focus-visible{border-color:var(--accent);outline:none}.chat-switcher-btn--static{cursor:default}.chat-switcher-text{flex:1;min-width:0;display:flex;flex-direction:column;gap:.08rem}.chat-switcher-kicker{font-size:.62rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--accent)}.chat-switcher-project-name{font-size:.92rem;font-weight:700;line-height:1.25;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text)}.chat-switcher-project{font-size:.72rem;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chat-switcher-project-k{font-weight:700;text-transform:uppercase;letter-spacing:.04em;margin-right:.35rem;color:var(--accent)}.chat-switcher-chevron{flex-shrink:0;color:var(--muted);font-size:.95rem}.chat-switcher-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:160;display:flex;flex-direction:column;justify-content:flex-end}.chat-switcher-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;border:none;background:#00000080;cursor:pointer}.chat-switcher-sheet{position:relative;z-index:1;width:100%;max-height:min(78vh,36rem);display:flex;flex-direction:column;gap:.45rem;padding:.4rem .85rem calc(.85rem + env(safe-area-inset-bottom,0px));background:var(--bg-elevated);border-radius:16px 16px 0 0;border:1px solid var(--border);border-bottom:none;box-shadow:0 -12px 40px #00000073;min-height:0}.chat-switcher-grab{width:2.4rem;height:.28rem;margin:.15rem auto .25rem;border-radius:999px;background:var(--border);flex-shrink:0}.chat-switcher-drawer-head{display:flex;align-items:center;justify-content:space-between;gap:.5rem;flex-shrink:0}.chat-switcher-drawer-title{margin:0;font-size:.95rem;font-weight:700;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chat-switcher-hint{margin:0;font-size:.75rem;line-height:1.35;color:var(--muted);flex-shrink:0}.chat-switcher-list{flex:1;min-height:0;overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;padding-bottom:.25rem}.chat-switcher-section{margin:.7rem 0 .35rem;font-size:.68rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}.chat-switcher-section:first-child{margin-top:.15rem}.chat-switcher-empty{margin:0 0 .5rem;font-size:.8rem;line-height:1.4;color:var(--muted)}.chat-switcher-rows{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.2rem}.chat-switcher-row-wrap{display:flex;align-items:stretch;gap:.2rem}.chat-switcher-row-wrap .chat-switcher-row,.chat-switcher-row-wrap .session-row{flex:1;min-width:0}.chat-switcher-delete{flex-shrink:0;border:none;background:transparent;color:var(--muted);font-size:1.1rem;line-height:1;padding:.35rem .45rem;border-radius:8px;cursor:pointer}.chat-switcher-delete:hover{color:#f07178;background:color-mix(in srgb,#f07178 16%,transparent)}.chat-switcher-delete--group{font-size:.62rem;font-weight:700;text-transform:uppercase;letter-spacing:.03em}.chat-switcher-cli-project{margin:.2rem 0 .55rem}.chat-switcher-cli-project-head{display:flex;align-items:center;justify-content:space-between;gap:.4rem;padding:.15rem .2rem .2rem}.chat-switcher-search{display:block;margin:0 0 .55rem}.chat-switcher-search input,.sessions-search input{width:100%;box-sizing:border-box;border:1px solid var(--border);border-radius:10px;background:var(--bg);color:var(--text);padding:.65rem .8rem;font-size:.92rem}.chat-switcher-search input:focus,.sessions-search input:focus{outline:2px solid color-mix(in srgb,var(--accent) 50%,transparent);border-color:var(--accent)}.chat-switcher-back{font-size:.78rem}.chat-switcher-drawer-title--sub{margin:0 0 .45rem;font-size:1.05rem}.project-swatch{flex-shrink:0;width:.7rem;height:.7rem;border-radius:999px;background:var(--accent)}.project-swatch--lg{width:1.15rem;height:1.15rem}.chat-switcher-btn .project-swatch,.chat-switcher-btn--static .project-swatch{margin-right:.15rem}.project-card{width:100%;display:flex;align-items:center;gap:.75rem;text-align:left;padding:.85rem .8rem;margin-bottom:.4rem;border:1px solid color-mix(in srgb,var(--project-color, var(--accent)) 35%,var(--border));border-radius:12px;background:color-mix(in srgb,var(--project-color, var(--accent)) 12%,var(--surface));color:var(--text);cursor:pointer}.project-card.is-current{box-shadow:inset 3px 0 0 var(--project-color, var(--accent))}.project-card-body{flex:1;min-width:0;display:flex;flex-direction:column;gap:.15rem}.project-card-name{font-weight:700;font-size:.95rem}.project-card-meta{font-size:.72rem;color:var(--muted)}.chat-switcher-row--tinted{box-shadow:inset 3px 0 0 var(--project-color, var(--accent))}.session-folder-subhead-row{display:flex;align-items:center;justify-content:space-between;gap:.4rem}.composer-controls--project{flex:0 1 auto}.chat-switcher-row{width:100%;min-width:0;display:flex;align-items:center;gap:.55rem;text-align:left;padding:.7rem;border:none;border-radius:10px;background:var(--surface);color:var(--text);cursor:pointer}.chat-switcher-row:disabled{opacity:.5;cursor:default}.chat-switcher-row.is-current{background:color-mix(in srgb,var(--accent) 16%,var(--surface));box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--accent) 40%,transparent)}.chat-switcher-row.is-active .chat-switcher-row-mark{color:var(--ok)}.chat-switcher-row-mark{flex-shrink:0;color:var(--muted);font-size:.8rem}.chat-switcher-row-title{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.88rem;font-weight:600}.chat-switcher-row.is-unread .chat-switcher-row-title{font-weight:800}.chat-switcher-row.is-active{background:color-mix(in srgb,#3ecf8e 14%,var(--surface))}.chat-switcher-folder{margin:.35rem 0 .7rem}.chat-switcher-folder-head{display:flex;align-items:center;justify-content:space-between;gap:.5rem;margin:.55rem 0 .3rem;font-size:.72rem;font-weight:700;letter-spacing:.03em;text-transform:none;color:var(--project-color, var(--text))}.chat-switcher-folder-head.is-current{color:var(--text)}.chat-switcher-folder-count{font-weight:600;opacity:.7}.chat-switcher-subhead,.session-folder-subhead{margin:.55rem 0 .25rem;padding:0 .15rem;font-size:.62rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--accent)}.chat-switcher-project-field{display:flex;flex-direction:column;gap:.3rem;flex-shrink:0}.chat-switcher-drawer .chat-sessions-picker{flex:1;min-height:0;max-height:none;margin-bottom:0}.chat-empty-pick{margin:0 0 .55rem;padding:.65rem .75rem;border-radius:10px;border:1px dashed color-mix(in srgb,var(--accent) 40%,var(--border));background:color-mix(in srgb,var(--accent) 8%,var(--surface));color:var(--text);font-size:.82rem;line-height:1.4}.subagents-bar{flex-shrink:0;margin-bottom:.5rem;padding:.5rem .6rem;border-radius:12px;border:1px solid var(--border);background:var(--surface)}.subagents-bar__head{display:flex;align-items:baseline;justify-content:space-between;gap:.5rem;margin-bottom:.4rem}.subagents-bar__title{margin:0;font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}.subagents-bar__live{font-size:.68rem;font-weight:700;color:#3ecf8e}.subagents-bar__hint{margin:0 0 .4rem;font-size:.68rem;line-height:1.35;color:var(--muted)}.subagents-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.35rem}.subagent-row{display:flex;align-items:flex-start;gap:.45rem;width:100%;padding:.4rem .45rem;border-radius:9px;border:1px solid transparent;background:var(--surface2);color:inherit;font:inherit;text-align:left;cursor:pointer}.subagent-row:disabled{opacity:.7;cursor:wait}.subagent-row--running{background:color-mix(in srgb,#3ecf8e 14%,var(--surface2))}.subagent-row--done{background:color-mix(in srgb,var(--accent) 10%,var(--surface2))}.subagent-row--active{border-color:var(--accent)}.subagent-row--busy{outline:1px dashed color-mix(in srgb,var(--accent) 50%,transparent)}.subagent-row:hover:not(:disabled){border-color:color-mix(in srgb,var(--accent) 45%,var(--border))}.subagent-row__dot{width:.5rem;height:.5rem;margin-top:.35rem;border-radius:50%;flex-shrink:0;background:var(--muted)}.subagent-row--running .subagent-row__dot{background:#3ecf8e}.subagent-row--done .subagent-row__dot{background:var(--accent)}.subagent-row__dot--pulse{animation:chat-activity-pulse 1.4s ease-in-out infinite}.subagent-row__body{flex:1;min-width:0;display:flex;flex-direction:column;gap:.1rem}.subagent-row__title{font-size:.8rem;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.subagent-row__summary{font-size:.7rem;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.subagent-row__meta{flex-shrink:0;display:flex;flex-direction:column;align-items:flex-end;gap:.1rem}.subagent-row__kind{font-size:.58rem;font-weight:700;text-transform:uppercase;letter-spacing:.03em;color:var(--muted)}.subagent-row__status{font-size:.68rem;font-weight:700}.subagent-row--running .subagent-row__status{color:#3ecf8e}.subagent-row--done .subagent-row__status{color:var(--accent)}.chat-back{flex-shrink:0}.chat-session-title{flex:1;font-size:.82rem;font-weight:600;line-height:1.3;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text)}.chat-switcher-text .chat-session-title{flex:none;font-size:.75rem;font-weight:500;color:var(--muted)}.header{position:relative;z-index:120;flex-shrink:0;border-bottom:1px solid var(--border);background:color-mix(in srgb,var(--bg-elevated) 88%,transparent);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.header-compact{padding:.4rem .65rem}.header-bar{display:flex;align-items:center;gap:.45rem;min-height:2.25rem}.header-brand{font-size:.8rem;font-weight:700;letter-spacing:-.02em;color:var(--muted);flex-shrink:0}.header-project-wrap{flex:1;min-width:0;display:flex;align-items:center;gap:.35rem}.desktop-only{display:none!important}.header-project-label{font-size:.62rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);flex-shrink:0}.header-project-select{width:100%;max-width:100%;padding:.35rem 1.5rem .35rem .5rem;border-radius:8px;border:1px solid var(--border);background:var(--surface);color:var(--text);font-size:.82rem;font-weight:600;cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%239ca3af' stroke-width='2'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .4rem center}.header-project-select:disabled{opacity:.5}.badge-compact{font-size:.62rem;padding:.15rem .4rem;flex-shrink:0}.header-menu-wrap{position:relative;flex-shrink:0}.header-menu-btn{width:2rem;height:2rem;border-radius:8px;border:1px solid var(--border);background:var(--surface);color:var(--text);font-size:1.1rem;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center}.header-dropdown{position:absolute;top:calc(100% + 4px);right:0;min-width:12.5rem;background:var(--surface);border:1px solid var(--border);border-radius:10px;box-shadow:0 12px 32px #00000073;z-index:200;overflow:hidden;isolation:isolate}.header-dropdown button,.header-dropdown-link{display:block;width:100%;text-align:left;padding:.6rem .75rem;border:none;background:transparent;color:var(--text);font-size:.82rem;text-decoration:none;cursor:pointer}.header-dropdown button:hover,.header-dropdown-link:hover{background:var(--surface2)}.header-dropdown button:disabled{opacity:.45;cursor:not-allowed}.header-dropdown-danger{color:#fca5a5!important;border-top:1px solid var(--border)}.content{flex:1;min-height:0;overflow-y:auto;overflow-x:hidden;padding:0 1rem .75rem;-webkit-overflow-scrolling:touch;overscroll-behavior:contain}.system-panel{flex-shrink:0}.system-panel .card{margin-bottom:.5rem}.approval-bar{margin-bottom:.5rem;padding:.65rem .75rem;border-radius:10px;border:1px solid color-mix(in srgb,var(--accent) 45%,transparent);background:color-mix(in srgb,var(--accent) 12%,var(--surface-elevated, #1a1d26))}.approval-bar__head{display:flex;align-items:center;flex-wrap:wrap;gap:.4rem .65rem;margin-bottom:.35rem}.approval-bar__badge{font-size:.72rem;font-weight:600;letter-spacing:.02em;text-transform:uppercase;color:var(--accent)}.approval-bar__blocked{font-size:.75rem;padding:.12rem .45rem;border-radius:6px;background:color-mix(in srgb,var(--text-muted) 18%,transparent);color:var(--text-muted)}.approval-bar__summary{margin:0 0 .5rem;font-size:.82rem;line-height:1.35;color:var(--text);word-break:break-word}.approval-bar__more{margin:-.25rem 0 .45rem;font-size:.72rem;color:var(--text-muted)}.approval-bar__actions{display:flex;flex-wrap:wrap;gap:.4rem;justify-content:flex-end}.approval-bar__btn--accept{background:var(--accent);color:#fff;border-color:transparent;font-weight:600}.approval-bar__btn--allow{max-width:min(14rem,55vw);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.compose-toolbar{display:flex;align-items:flex-start;flex-wrap:wrap;gap:.4rem;margin-bottom:.35rem}.compose-toolbar .composer-controls{flex:1;min-width:0;margin-bottom:0}.tasks-dock--inline{position:relative;flex-shrink:0;display:flex;flex-direction:column;align-items:flex-start;gap:.35rem;max-width:min(10rem,38vw);z-index:20}.tasks-dock-toggle{display:inline-flex;align-items:center;gap:.35rem;font-size:.72rem;font-weight:600;box-shadow:0 4px 18px #00000073}.tasks-dock-chevron{font-size:.65rem;opacity:.85}.tasks-dock--inline.tasks-dock--open .tasks-panel{position:absolute;bottom:calc(100% + .35rem);left:0;width:min(17.5rem,calc(100vw - 2rem));max-height:min(34vh,220px);overflow-y:auto;-webkit-overflow-scrolling:touch;border-radius:12px;border:1px solid var(--border);background:color-mix(in srgb,var(--bg-elevated) 96%,var(--surface));padding:.45rem .55rem .35rem;box-shadow:0 8px 28px #00000080}.tasks-panel--compact .tasks-panel-head{margin-bottom:.35rem}.tasks-panel-compact-label{font-size:.72rem;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.04em}.tasks-panel--compact .task-card{padding:.5rem .6rem}.tasks-panel--compact .task-text{font-size:.78rem;line-height:1.35}.tasks-panel{flex-shrink:0;margin-bottom:0}.tasks-panel-head{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.tasks-panel-head .section-title{margin-bottom:0}.task-stop-all{color:var(--working);border-color:color-mix(in srgb,var(--working) 40%,var(--border))}.task-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.5rem}.task-card{background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:.65rem .75rem;border-left:3px solid var(--muted)}.task-card.task-pending{border-left-color:var(--warn)}.task-card.task-editing{border-left-color:var(--accent)}.task-card.task-active{border-left-color:var(--working);animation:working-pulse 2s ease-in-out infinite}.task-card-top{display:flex;justify-content:space-between;align-items:center;gap:.5rem;margin-bottom:.4rem}.task-status{font-size:.62rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;padding:.12rem .4rem;border-radius:6px}.task-status-pending{color:var(--warn);background:color-mix(in srgb,var(--warn) 18%,transparent)}.task-status-editing{color:var(--accent);background:color-mix(in srgb,var(--accent) 18%,transparent)}.task-status-active{color:var(--working);background:color-mix(in srgb,var(--working) 18%,transparent)}.task-actions{display:flex;gap:.35rem;flex-shrink:0}.task-cancel{color:#fca5a5;border-color:color-mix(in srgb,var(--err) 35%,var(--border))}.task-stop{color:var(--working)}.task-text{margin:0;font-size:.84rem;line-height:1.4;white-space:pre-wrap;word-break:break-word;color:color-mix(in srgb,var(--text) 92%,var(--muted))}.task-edit textarea{width:100%;border-radius:10px;border:1px solid var(--border);background:var(--bg);color:var(--text);padding:.55rem .65rem;resize:vertical;min-height:4rem;margin-bottom:.45rem}.task-edit-actions{display:flex;gap:.45rem}.task-edit-actions button{flex:1;padding:.55rem;border-radius:10px;border:none;background:linear-gradient(135deg,var(--accent),var(--accent-dim));color:#fff;font-weight:600;cursor:pointer}.task-edit-actions button.secondary{background:var(--surface2);color:var(--text);border:1px solid var(--border)}.messages-panel{position:relative;flex:1;min-height:0;display:flex;flex-direction:column;overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;touch-action:pan-y;padding-bottom:.35rem}.messages-toolbar{display:flex;flex-wrap:wrap;gap:.4rem;margin-bottom:.45rem;flex-shrink:0;padding:.25rem 0}.messages-load-older{font-weight:600}.messages-toolbar .chip.active{border-color:var(--accent);color:var(--text)}.messages-legend{margin:0 0 .4rem;font-size:.68rem;line-height:1.35;color:var(--muted);flex-shrink:0}.chat-activity{display:flex;align-items:flex-start;flex-wrap:wrap;gap:.4rem .65rem;padding:.55rem .75rem;margin-bottom:.45rem;border-radius:12px;border:1px solid var(--border);background:var(--surface);flex-shrink:0}.chat-activity--running{border-color:color-mix(in srgb,#3ecf8e 45%,var(--border));background:color-mix(in srgb,#3ecf8e 10%,var(--surface))}.chat-activity--waiting_approval{border-color:color-mix(in srgb,#f0b429 50%,var(--border));background:color-mix(in srgb,#f0b429 10%,var(--surface))}.chat-activity__copy{display:flex;flex-direction:column;gap:.15rem;min-width:0;flex:1 1 12rem}.chat-activity__detail{font-size:.78rem;line-height:1.35;color:var(--text)}.chat-activity__dot{width:.55rem;height:.55rem;border-radius:50%;flex-shrink:0;background:var(--muted)}.chat-activity__dot--pulse{animation:chat-activity-pulse 1.4s ease-in-out infinite}.chat-activity--idle .chat-activity__dot{background:var(--muted)}.chat-activity--running .chat-activity__dot{background:#3ecf8e}.chat-activity--waiting_approval .chat-activity__dot{background:#f0b429}.chat-activity--syncing .chat-activity__dot{background:#6eb5ff}.chat-activity__phase{font-size:.68rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--text)}.chat-activity__label{flex:1;min-width:0;font-size:.78rem;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chat-activity__ctx{font-size:.72rem;font-weight:600;color:var(--accent);flex-shrink:0}@keyframes chat-activity-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.55;transform:scale(.85)}}.editor-preview-toggle{flex-shrink:0;font-weight:600;display:inline-flex;align-items:center;gap:.35rem}.editor-preview-toggle.active{border-color:var(--accent)!important;color:var(--accent)!important;background:color-mix(in srgb,var(--accent) 14%,var(--surface))!important}.editor-preview-toggle__icon{font-size:.95rem;line-height:1}.compose-toolbar .editor-preview-toggle{order:-1}body.editor-preview-fs-open{overflow:hidden}.editor-preview-fs{position:fixed;top:0;right:0;bottom:0;left:0;z-index:300;display:flex;flex-direction:column;background:var(--bg);color:var(--text);padding:env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left)}.editor-preview-fs__bar{display:flex;align-items:center;justify-content:space-between;gap:.5rem;flex-wrap:wrap;padding:.5rem .65rem;border-bottom:1px solid var(--border);background:color-mix(in srgb,var(--bg-elevated, var(--bg)) 92%,transparent);flex-shrink:0}.editor-preview-fs__title{font-size:.88rem;font-weight:700;letter-spacing:-.02em}.editor-preview-fs__actions{display:flex;flex-wrap:wrap;gap:.35rem;justify-content:flex-end}.editor-preview-fs__btn.active{border-color:var(--accent);color:var(--accent)}.editor-preview-fs__body{flex:1;min-height:0;display:flex;align-items:center;justify-content:center;overflow:auto;-webkit-overflow-scrolling:touch;padding:.5rem;background:#0a0c10}.editor-preview-fs__img{display:block;max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain;border-radius:6px;box-shadow:0 8px 32px #00000073}.editor-preview-fs__hint,.editor-preview-fs__error{margin:0;padding:1rem 1.25rem;text-align:center;font-size:.88rem;line-height:1.45;max-width:22rem}.editor-preview-fs__hint{color:var(--muted)}.editor-preview-fs__error{color:#f87171}.chat-typing-indicator{display:flex;align-items:center;gap:.5rem;align-self:flex-start;max-width:92%;padding:.45rem .7rem;border-radius:12px;border:1px dashed color-mix(in srgb,var(--assistant) 45%,var(--border));background:color-mix(in srgb,var(--assistant) 8%,var(--surface2));font-size:.78rem;color:var(--muted)}.chat-typing-indicator__dots{display:inline-flex;gap:.2rem}.chat-typing-indicator__dots span{width:.35rem;height:.35rem;border-radius:50%;background:var(--assistant);animation:typing-dot 1.2s ease-in-out infinite}.chat-typing-indicator__dots span:nth-child(2){animation-delay:.15s}.chat-typing-indicator__dots span:nth-child(3){animation-delay:.3s}@keyframes typing-dot{0%,80%,to{opacity:.35;transform:translateY(0)}40%{opacity:1;transform:translateY(-2px)}}.messages-scroll-hint{margin:0 0 .45rem;padding:.35rem .5rem;font-size:.72rem;line-height:1.35;color:var(--muted);background:color-mix(in srgb,var(--accent) 8%,var(--surface));border-radius:8px;flex-shrink:0}.messages-jump-bottom{position:sticky;bottom:.35rem;align-self:center;margin-top:.35rem;z-index:5;box-shadow:0 4px 16px #00000073}.messages{display:flex;flex-direction:column;gap:.55rem;padding-bottom:.5rem}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:.9rem 1rem;margin-bottom:.6rem;cursor:pointer;transition:border-color .15s}.card:hover,.card.selected{border-color:var(--accent-dim)}.card h3{margin:0 0 .25rem;font-size:.95rem}.card p{margin:0;color:var(--muted);font-size:.8rem;line-height:1.35}.badge{display:inline-block;font-size:.68rem;font-weight:600;padding:.2rem .5rem;border-radius:999px;background:var(--surface2);color:var(--muted)}.badge.running{color:var(--working);background:color-mix(in srgb,var(--working) 18%,var(--surface2))}.badge.error{color:var(--err);background:color-mix(in srgb,var(--err) 15%,var(--surface2))}.badge.finished{color:var(--ok);background:color-mix(in srgb,var(--ok) 15%,var(--surface2))}.badge.live{padding-right:.35rem}.live-dot{display:inline-block;width:6px;height:6px;margin-left:.35rem;border-radius:50%;background:var(--ok);vertical-align:middle;animation:live-blink 1.2s ease-in-out infinite}@keyframes live-blink{0%,to{opacity:.35}50%{opacity:1}}.compose--dimmed{opacity:.92}.compose--dimmed textarea{opacity:.65}.composer-controls{position:relative;margin-bottom:.35rem;display:flex;align-items:center;gap:.35rem;flex-wrap:wrap}.composer-controls--compact{flex-wrap:nowrap;justify-content:space-between}.composer-controls--compact .mode-switch,.compose-toolbar .composer-controls--compact .mode-switch{flex:1;min-width:0}.composer-controls-trigger{flex-shrink:0;justify-content:center;gap:.25rem;padding:.35rem .55rem;font-size:.72rem;max-width:42%}.compose-toolbar .composer-controls-trigger{max-width:none}.composer-controls-model{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--muted);font-weight:600;max-width:6.5rem}.composer-controls-chevron{color:var(--muted);font-size:.65rem}.composer-controls-menu{position:absolute;bottom:calc(100% + 6px);left:0;right:0;max-height:min(55vh,360px);overflow-y:auto;-webkit-overflow-scrolling:touch;background:var(--surface);border:1px solid var(--border);border-radius:12px;box-shadow:0 -8px 32px #00000073;z-index:60;padding:.35rem 0}.composer-controls-section{margin:.35rem .75rem .2rem;font-size:.62rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--muted)}.composer-controls-item{display:block;width:100%;text-align:left;padding:.5rem .75rem;border:none;background:transparent;color:var(--text);font-size:.82rem;cursor:pointer}.composer-controls-item:hover{background:var(--surface2)}.composer-controls-item.active{background:color-mix(in srgb,var(--accent) 14%,var(--surface2));color:var(--accent);font-weight:600}.composer-controls-hint{margin:.25rem .75rem .5rem;font-size:.72rem;color:var(--muted)}.composer-controls-hint--inline{margin:.35rem 0 .5rem;line-height:1.35}.compose-help{margin:0 0 .4rem;font-size:.72rem;line-height:1.4;color:var(--muted)}.messages-legend{margin:0 0 .65rem;font-size:.72rem;line-height:1.4;color:var(--muted)}.messages-hint--warn{margin:0 0 .65rem;padding:.5rem .65rem;border-radius:10px;font-size:.72rem;line-height:1.4;color:var(--warn);background:color-mix(in srgb,var(--warn) 12%,var(--surface2))}.usage-hint--intro{margin:0 0 .75rem;line-height:1.4}.mode-switch{display:inline-flex;align-items:stretch;flex-shrink:1;min-width:0;gap:0;padding:2px;border-radius:10px;background:color-mix(in srgb,var(--bg) 70%,var(--border));border:1px solid var(--border);flex-shrink:0}.mode-switch-btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:none;background:transparent;color:var(--muted);font:inherit;font-size:.72rem;font-weight:600;line-height:1;padding:.38rem .55rem;border-radius:8px;cursor:pointer;white-space:nowrap;transition:background .15s,color .15s}.mode-switch-btn:hover:not(:disabled){color:var(--text);background:color-mix(in srgb,var(--bg-elevated) 80%,transparent)}.mode-switch-btn.active{color:var(--text);background:var(--bg-elevated);box-shadow:0 1px 3px #0003}.mode-switch-btn:disabled{opacity:.45;cursor:not-allowed}.image-attach{position:relative;display:flex;align-items:center;gap:.4rem;flex-shrink:0}.image-attach-menu{position:absolute;bottom:calc(100% + .35rem);left:0;z-index:40;min-width:min(16rem,85vw);padding:.35rem;border-radius:12px;border:1px solid var(--border);background:var(--surface);box-shadow:0 8px 28px #00000073}.image-attach-menu-item{display:flex;flex-direction:column;align-items:flex-start;gap:.15rem;width:100%;padding:.55rem .65rem;border:none;border-radius:8px;background:transparent;color:var(--text);text-align:left;cursor:pointer}.image-attach-menu-item:hover:not(:disabled){background:var(--surface2)}.image-attach-menu-item:disabled{opacity:.5;cursor:not-allowed}.image-attach-menu-title{font-size:.82rem;font-weight:600}.image-attach-menu-desc{font-size:.68rem;color:var(--muted);line-height:1.35}.image-attach-input{position:absolute;width:0;height:0;opacity:0;pointer-events:none}.image-attach-btn{white-space:nowrap}.image-attach-preview{width:2.25rem;height:2.25rem;border-radius:8px;overflow:hidden;border:1px solid var(--border);flex-shrink:0}.image-attach-preview img{width:100%;height:100%;object-fit:cover;display:block}.content--chat{display:flex;flex-direction:column;overflow:hidden;padding-bottom:.25rem}.compose{flex-shrink:0;padding:.5rem 1rem calc(.5rem + env(safe-area-inset-bottom,0px));padding-bottom:calc(.65rem + env(safe-area-inset-bottom,0px) + var(--keyboard-offset));background:color-mix(in srgb,var(--bg-elevated) 94%,transparent);border-top:1px solid var(--border);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);box-shadow:0 -12px 32px #00000059}.compose textarea,.compose-prompt-input{width:100%;min-height:44px;max-height:30vh;resize:none;border-radius:12px;border:1px solid var(--border);background:var(--surface);color:var(--text);padding:.7rem .85rem;line-height:1.45;field-sizing:content}.compose textarea:focus,.compose-prompt-input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-glow)}.compose-prompt-wrap{position:relative}.compose-prompt-wrap--has-text .compose-prompt-input,.compose-prompt-wrap--has-text textarea{padding-right:2.6rem}.compose-clear-btn{position:absolute;top:.4rem;right:.4rem;z-index:2;display:inline-flex;align-items:center;justify-content:center;width:1.75rem;height:1.75rem;padding:0;border:none;border-radius:50%;background:color-mix(in srgb,var(--surface2) 90%,var(--border));color:var(--muted);cursor:pointer;transition:color .15s,background .15s}.compose-clear-btn:hover:not(:disabled){color:var(--err);background:color-mix(in srgb,var(--err) 12%,var(--surface))}.compose-clear-btn:disabled{opacity:.4;cursor:not-allowed}.compose-actions{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem;margin-top:.5rem}.compose-actions .image-attach-btn,.compose-actions .secondary{flex:0 1 auto}.compose-actions>button:not(.image-attach-btn):not(.secondary):not(.speech-mic-btn):not(.whisper-record-btn){flex:1;min-width:6rem}.compose-actions>button:not(.secondary):not(.image-attach-btn):not(.speech-mic-btn):not(.whisper-record-btn){padding:.7rem;border-radius:12px;border:none;background:linear-gradient(135deg,var(--accent),var(--accent-dim));color:#fff;font-weight:600;cursor:pointer}.compose-actions>button:not(.secondary):not(.image-attach-btn):not(.speech-mic-btn):not(.whisper-record-btn):disabled{opacity:.45;cursor:not-allowed}.compose-actions button.secondary{background:var(--surface2);color:var(--text);border:1px solid var(--border)}.speech-mic-btn{position:relative;flex:0 0 auto;width:2.5rem;height:2.5rem;padding:0;border-radius:12px;border:1px solid var(--border);background:var(--surface2);color:var(--text);cursor:pointer;display:inline-flex;align-items:center;justify-content:center;transition:background .15s,border-color .15s,color .15s}.speech-mic-btn:hover:not(:disabled){background:color-mix(in srgb,var(--accent) 14%,var(--surface2));border-color:var(--accent);color:var(--accent)}.speech-mic-btn:disabled{opacity:.45;cursor:not-allowed}.speech-mic-btn--active{background:color-mix(in srgb,var(--err) 18%,var(--surface));border-color:var(--err);color:var(--err)}.speech-mic-btn--active:hover:not(:disabled){background:color-mix(in srgb,var(--err) 26%,var(--surface));border-color:var(--err);color:var(--err)}.speech-mic-btn--needs-https{opacity:.85;border-style:dashed}.speech-mic-btn--needs-https:not(:disabled):hover{border-color:var(--warn);color:var(--warn)}.speech-mic-pulse{position:absolute;top:-3px;right:-3px;bottom:-3px;left:-3px;border-radius:14px;border:2px solid var(--err);pointer-events:none;animation:speech-mic-pulse 1.4s ease-out infinite}@keyframes speech-mic-pulse{0%{opacity:.7;transform:scale(1)}to{opacity:0;transform:scale(1.2)}}.speech-status--requesting{background:color-mix(in srgb,var(--accent) 10%,var(--surface));border-color:color-mix(in srgb,var(--accent) 30%,var(--border))}.speech-status--requesting .speech-status-dot{background:var(--accent);box-shadow:0 0 6px var(--accent)}.speech-status--requesting .speech-status-text{color:var(--text)}.speech-status--paused{border-color:color-mix(in srgb,var(--warn) 35%,var(--border));background:color-mix(in srgb,var(--warn) 8%,var(--surface))}.speech-status--paused .speech-status-dot{background:var(--warn);box-shadow:0 0 6px var(--warn);animation:none}.speech-resume-btn{flex-shrink:0;padding:.3rem .55rem;font-size:.72rem;font-weight:600;border-radius:8px;border:1px solid color-mix(in srgb,var(--accent) 50%,var(--border));background:color-mix(in srgb,var(--accent) 12%,var(--surface));color:var(--text);cursor:pointer}.speech-resume-btn:disabled{opacity:.45;cursor:not-allowed}.speech-status{display:flex;flex-wrap:wrap;align-items:center;gap:.45rem;margin-top:.4rem;padding:.4rem .65rem;border-radius:10px;background:color-mix(in srgb,var(--err) 10%,var(--surface));border:1px solid color-mix(in srgb,var(--err) 30%,var(--border));font-size:.78rem;line-height:1.35;color:var(--text);word-break:break-word}.speech-status-dot{flex-shrink:0;width:8px;height:8px;border-radius:50%;background:var(--err);animation:speech-mic-blink 1s ease-in-out infinite;box-shadow:0 0 6px var(--err)}.speech-status-text{flex:1;min-width:0;color:color-mix(in srgb,var(--text) 95%,var(--err))}.speech-finish-btn{flex-shrink:0;margin-left:auto;padding:.35rem .65rem;font-size:.75rem;font-weight:600;border-radius:8px;border:1px solid color-mix(in srgb,var(--accent, #8b7cff) 45%,var(--border));background:color-mix(in srgb,var(--accent, #8b7cff) 18%,var(--surface));color:var(--text, #e4e4e7);cursor:pointer;white-space:nowrap}.speech-finish-btn:hover:not(:disabled){background:color-mix(in srgb,var(--accent, #8b7cff) 28%,var(--surface))}.speech-finish-btn:disabled{opacity:.45;cursor:not-allowed}.whisper-record-btn{position:relative;display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;min-width:0;width:2.5rem;height:2.5rem;padding:0;border-radius:50%;border:2px solid color-mix(in srgb,var(--warn) 60%,var(--border));background:color-mix(in srgb,var(--warn) 8%,var(--surface));color:var(--warn);font-weight:400;cursor:pointer;box-shadow:0 4px 14px color-mix(in srgb,var(--warn) 28%,transparent);transition:background .15s,border-color .15s,color .15s,box-shadow .15s}.whisper-record-btn:hover:not(:disabled){background:color-mix(in srgb,var(--warn) 20%,var(--surface));border-color:var(--warn);color:var(--warn)}.whisper-record-btn:disabled{opacity:.4;cursor:not-allowed;box-shadow:none}.whisper-record-btn--recording{border-color:var(--warn);color:#fff;background:var(--warn);box-shadow:0 6px 18px color-mix(in srgb,var(--warn) 50%,transparent)}.whisper-record-btn--transcribing{border-color:color-mix(in srgb,var(--warn) 80%,var(--accent));color:var(--warn);background:color-mix(in srgb,var(--warn) 12%,var(--surface))}.whisper-record-pulse{position:absolute;top:-4px;right:-4px;bottom:-4px;left:-4px;border-radius:50%;border:2px solid var(--warn);opacity:0;animation:whisper-pulse 1.2s ease-out infinite;pointer-events:none}@keyframes whisper-pulse{0%{opacity:.7;transform:scale(1)}to{opacity:0;transform:scale(1.55)}}.whisper-status{flex-direction:column;align-items:stretch;gap:.35rem}.whisper-status .speech-status-text{width:100%}.speech-status--recording{border-color:color-mix(in srgb,var(--err) 35%,var(--border));background:color-mix(in srgb,var(--err) 10%,var(--surface))}.speech-status--processing{border-color:color-mix(in srgb,var(--accent) 40%,var(--border));background:color-mix(in srgb,var(--accent) 10%,var(--surface))}.speech-status--processing .speech-status-dot{background:var(--accent);box-shadow:0 0 6px var(--accent)}.speech-status--done{border-color:color-mix(in srgb,var(--ok) 40%,var(--border));background:color-mix(in srgb,var(--ok) 10%,var(--surface))}.speech-status--done .speech-status-dot{background:var(--ok);box-shadow:0 0 6px var(--ok);animation:none}.whisper-status-steps{display:flex;gap:.35rem;align-items:center}.whisper-status-step{flex:1;height:4px;border-radius:2px;background:color-mix(in srgb,var(--accent) 15%,var(--border))}.whisper-status-step--active{background:color-mix(in srgb,var(--accent) 45%,var(--border))}.whisper-status-step--current{background:var(--accent);animation:whisper-step-pulse 1s ease-in-out infinite}@keyframes whisper-step-pulse{0%,to{opacity:1}50%{opacity:.45}}.whisper-status-progress{width:100%;height:3px;border-radius:2px;background:color-mix(in srgb,var(--accent) 12%,var(--border));overflow:hidden}.whisper-status-progress-bar{height:100%;width:40%;border-radius:2px;background:var(--accent);animation:whisper-progress-indeterminate 1.4s ease-in-out infinite}@keyframes whisper-progress-indeterminate{0%{transform:translate(-100%)}to{transform:translate(350%)}}.whisper-status-cancel{align-self:flex-end;padding:.25rem .5rem;font-size:.7rem;font-weight:600;border-radius:6px;border:1px solid var(--border);background:var(--surface);color:var(--text);cursor:pointer}.whisper-status-cancel:hover{border-color:var(--err);color:var(--err)}.speech-lang-select select{font-size:.72rem;padding:.25rem .35rem;border-radius:6px;border:1px solid var(--border);background:var(--surface);color:var(--text)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0}@keyframes speech-mic-blink{0%,to{opacity:1}50%{opacity:.3}}.login-page{min-height:100dvh;min-height:100svh;display:flex;align-items:center;justify-content:center;padding:1.5rem;background:radial-gradient(ellipse 100% 60% at 50% 0%,var(--accent-glow),transparent),var(--bg)}.login-card{width:100%;max-width:380px;background:var(--surface);border:1px solid var(--border);border-radius:20px;padding:1.75rem;box-shadow:0 24px 48px #0006}.login-card h1{margin:0 0 .25rem;font-size:1.4rem;font-weight:700}.login-sub{margin:0 0 1.25rem;color:var(--muted);font-size:.9rem}.login-card label{display:block;font-size:.78rem;font-weight:500;color:var(--muted);margin:.75rem 0 .35rem}.login-card input{width:100%;padding:.75rem .85rem;border-radius:12px;border:1px solid var(--border);background:var(--bg);color:var(--text)}.login-card input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-glow)}.login-btn{width:100%;margin-top:1.25rem;padding:.85rem;border-radius:12px;border:none;background:linear-gradient(135deg,var(--accent),var(--accent-dim));color:#fff;font-weight:600;font-size:1rem;cursor:pointer}.login-btn:disabled{opacity:.6;cursor:not-allowed}.login-lockout{margin:0 0 .75rem;padding:.55rem .65rem;border-radius:10px;font-size:.82rem;text-align:center;background:color-mix(in srgb,var(--warn) 18%,var(--surface2));color:var(--warn)}.login-hint{margin:1rem 0 0;font-size:.74rem;color:var(--muted);line-height:1.45}.login-hint code{font-size:.68rem;background:var(--surface2);padding:.1rem .35rem;border-radius:4px}.error-banner{background:color-mix(in srgb,var(--err) 18%,var(--surface));border:1px solid color-mix(in srgb,var(--err) 50%,var(--border));color:#fecaca;padding:.6rem .75rem;border-radius:12px;margin:.5rem 0 0;font-size:.85rem}.success-banner{background:color-mix(in srgb,var(--ok) 14%,var(--surface));border:1px solid color-mix(in srgb,var(--ok) 45%,var(--border));color:#bbf7d0;padding:.6rem .75rem;border-radius:12px;margin:.5rem 0 0;font-size:.85rem}.system-panel details{margin-bottom:.5rem}.system-panel summary{cursor:pointer;list-style:none;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);margin:.65rem 0 .45rem;-webkit-user-select:none;user-select:none}.system-panel summary::-webkit-details-marker{display:none}.empty{color:var(--muted);text-align:center;padding:1.5rem 1rem;font-size:.88rem}.section-title{font-size:.72rem;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);margin:.75rem 0 .45rem}.system-panel .card p{margin:.35rem 0}.links-panel{padding:0 .25rem 1rem}.links-panel-head{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.links-panel-head .section-title{margin:.5rem 0 0}.links-panel-hint{font-size:.8rem;color:var(--muted);line-height:1.45;margin:.35rem 0 .75rem}.links-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.55rem}.links-card{display:flex;align-items:flex-start;justify-content:space-between;gap:.65rem;padding:.75rem .85rem;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius)}.links-card-title{margin:0 0 .25rem;font-size:.95rem;font-weight:600}.links-card-desc{margin:0 0 .35rem;font-size:.8rem;color:var(--muted);line-height:1.4}.links-card-kind{font-size:.68rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--muted)}.links-run-btn{flex-shrink:0;padding:.45rem .75rem;border-radius:10px;border:1px solid color-mix(in srgb,var(--accent) 45%,var(--border));background:color-mix(in srgb,var(--accent) 18%,var(--surface));color:var(--text);font-size:.78rem;font-weight:600;cursor:pointer}.links-run-btn:disabled{opacity:.55;cursor:not-allowed}.links-run-btn--danger{border-color:color-mix(in srgb,var(--err) 50%,var(--border));background:color-mix(in srgb,var(--err) 15%,var(--surface));color:var(--err)}.links-log{margin-top:.85rem}.links-log summary{cursor:pointer;font-size:.75rem;font-weight:600;color:var(--muted);margin-bottom:.35rem}.links-log--live summary{display:flex;align-items:center;gap:.4rem}.links-log-pulse{width:.5rem;height:.5rem;border-radius:50%;background:var(--ok);flex-shrink:0;animation:links-pulse 1.2s ease-in-out infinite}@keyframes links-pulse{0%,to{opacity:.35}50%{opacity:1}}.links-log-pre{margin:0;padding:.65rem .75rem;max-height:min(50vh,360px);overflow:auto;font-size:.68rem;line-height:1.35;background:var(--bg-elevated);border:1px solid var(--border);border-radius:10px;white-space:pre-wrap;word-break:break-word}.system-row{display:flex;justify-content:space-between;gap:.75rem;font-size:.85rem;color:var(--muted)}.system-row a{color:var(--accent);text-decoration:none;word-break:break-all}.system-row strong.ok{color:var(--ok)}.system-row strong.warn{color:var(--warn)}.system-hint{font-size:.78rem;color:var(--warn);margin-top:.5rem!important;line-height:1.35}.system-remote-urls{display:flex;flex-direction:column;gap:.35rem;margin:.5rem 0;font-size:.85rem}.system-remote-label{color:var(--muted);font-size:.72rem;text-transform:uppercase;letter-spacing:.05em}.system-remote-link{color:var(--accent);word-break:break-all;text-align:left}.system-link-btn{background:none;border:none;padding:0;color:var(--accent);font:inherit;font-size:.85rem;cursor:pointer;word-break:break-all;text-decoration:underline;text-underline-offset:2px}.system-link-btn:hover{color:var(--text)}.system-actions{display:flex;flex-wrap:wrap;gap:.45rem;margin-top:.75rem}.system-actions .secondary{flex:1;min-width:120px;padding:.55rem .65rem;border-radius:10px;border:1px solid var(--border);background:var(--surface2);color:var(--text);cursor:pointer;font-size:.8rem}.system-actions .secondary:disabled{opacity:.45;cursor:not-allowed}.link-btn,.chip{font-size:.75rem;padding:.4rem .65rem;border-radius:999px;border:1px solid var(--border);background:var(--surface2);color:var(--muted);cursor:pointer}.chip.logout{color:var(--text);flex-shrink:0}.confirm-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:200;display:flex;align-items:center;justify-content:center;padding:1rem;background:#0000008c;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.confirm-dialog{width:min(100%,22rem);padding:1rem 1.1rem;border-radius:14px;border:1px solid var(--border);background:var(--surface);box-shadow:0 20px 50px #00000080}.confirm-title{margin:0 0 .5rem;font-size:1rem;font-weight:700;line-height:1.3}.confirm-message{margin:0 0 1rem;font-size:.84rem;line-height:1.45;color:var(--muted);white-space:pre-wrap;word-break:break-word}.confirm-actions{display:flex;gap:.5rem;justify-content:flex-end}.confirm-actions button{flex:0 1 auto;min-width:5.5rem;padding:.55rem .85rem}.confirm-btn-danger{background:linear-gradient(135deg,#ef4444,#b91c1c)!important;color:#fff!important}.link-btn{text-decoration:none;display:inline-flex;align-items:center;justify-content:center}.message-bubble{border-radius:12px;padding:.65rem .8rem;border:1px solid var(--border);background:var(--surface2);border-left-width:4px}.message-bubble__head{display:flex;align-items:center;justify-content:space-between;gap:.4rem;margin-bottom:.35rem}.message-bubble--compact-step{padding:.4rem .65rem;opacity:.92}.message-bubble--compact-step .message-body{gap:.2rem}.message-bubble--compact-step .message-paragraph{font-size:.78rem;font-family:ui-monospace,monospace}.message-index{font-size:.62rem;color:var(--muted);opacity:.7}.message-role{display:inline-flex;align-items:center;gap:.3rem}.message-role__icon{font-size:.85rem;line-height:1}.message-role__label{font-size:inherit}.message-bubble.message-user{border-left-color:var(--user);background:color-mix(in srgb,var(--user) 10%,var(--surface2))}.message-bubble.message-assistant{border-left-color:var(--assistant);background:color-mix(in srgb,var(--assistant) 8%,var(--surface2))}.message-bubble.message-thinking{border-left-color:var(--thinking);background:color-mix(in srgb,var(--thinking) 12%,var(--surface2))}.message-bubble.message-working{border-left-color:var(--working);background:color-mix(in srgb,var(--working) 12%,var(--surface2));animation:working-pulse 2s ease-in-out infinite}.message-bubble.message-meta{border-left-color:var(--muted);background:transparent;padding-block:.15rem;opacity:.8}.message-bubble.message-unknown{border-left-color:var(--muted);opacity:.92}@keyframes working-pulse{0%,to{box-shadow:0 0 color-mix(in srgb,var(--working) 0%,transparent)}50%{box-shadow:0 0 0 1px color-mix(in srgb,var(--working) 35%,transparent)}}.message-role{display:inline-flex;align-items:center;font-size:.62rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;margin-bottom:.35rem;padding:.12rem .4rem;border-radius:6px}.message-user .message-role{color:var(--user);background:color-mix(in srgb,var(--user) 18%,transparent)}.message-assistant .message-role{color:var(--assistant);background:color-mix(in srgb,var(--assistant) 18%,transparent)}.message-thinking .message-role{color:var(--thinking);background:color-mix(in srgb,var(--thinking) 20%,transparent)}.message-working .message-role{color:var(--working);background:color-mix(in srgb,var(--working) 20%,transparent)}.message-unknown .message-role{color:var(--muted);background:var(--surface)}.message-body{display:flex;flex-direction:column;gap:.45rem}.message-paragraph{margin:0;font-size:.86rem;line-height:1.55;white-space:pre-wrap;word-break:break-word}.message-paragraph--user{font-size:.88rem;white-space:pre-wrap}.message-heading{margin:.35rem 0 .15rem;font-weight:700;line-height:1.35;color:var(--text)}.message-heading--h2{font-size:.95rem}.message-heading--h3{font-size:.88rem;color:color-mix(in srgb,var(--text) 92%,var(--muted))}.message-list{margin:.15rem 0 .25rem;padding-left:1.15rem;font-size:.84rem;line-height:1.5}.message-list--ol{padding-left:1.35rem}.message-list li{margin-bottom:.25rem}.message-list li::marker{color:var(--accent)}.message-code{margin:.2rem 0;padding:.55rem .65rem;border-radius:8px;background:color-mix(in srgb,var(--bg) 70%,var(--surface));border:1px solid var(--border);overflow-x:auto;font-size:.74rem;line-height:1.45;white-space:pre-wrap;word-break:break-word}.message-code code{font-family:ui-monospace,Cascadia Code,Consolas,monospace}.message-inline-code{font-family:ui-monospace,Consolas,monospace;font-size:.8em;padding:.08rem .3rem;border-radius:4px;background:color-mix(in srgb,var(--bg) 65%,var(--surface2));border:1px solid var(--border);word-break:break-all}.message-body a{color:var(--accent);text-decoration:underline;text-underline-offset:2px}.message-expand{align-self:flex-start;margin-top:.15rem;padding:.25rem .5rem;border:none;border-radius:6px;background:color-mix(in srgb,var(--accent) 18%,transparent);color:var(--accent);font-size:.72rem;font-weight:600;cursor:pointer}.message-thinking .message-paragraph,.message-thinking .message-list,.message-working .message-paragraph,.message-working .message-list{font-size:.82rem;color:color-mix(in srgb,var(--text) 88%,var(--muted))}.app--compact .app-banners{padding:0 .5rem}.app--compact .error-banner{margin:.4rem .5rem;padding:.45rem .55rem;font-size:.78rem}.app--compact .header-compact{padding:.25rem .45rem}.app--compact .header-bar{min-height:1.85rem;gap:.3rem}.app--compact .header-brand{display:inline}.app--compact .header-project-select{padding:.25rem .4rem;font-size:.78rem}.app--compact .badge.badge-compact{font-size:.62rem;padding:.12rem .35rem}.app--compact .main-tabs{padding:.2rem .4rem 0;gap:.2rem}.app--compact .main-tab{padding:.35rem .4rem;font-size:.74rem;border-radius:8px 8px 0 0}.app--compact .main-tab-sub{display:none}.app--compact .main-tab-badge{font-size:.6rem;padding:.05rem .28rem}.app--compact .content{padding:0 .5rem .35rem}.app--compact .messages-legend,.app--compact .messages-scroll-hint{display:none}.app--compact .chat-session-bar{padding:.2rem 0 .35rem}.app--compact .chat-switcher-btn{padding:.4rem .55rem}.app--compact .chat-session-title{font-size:.74rem}.app--compact .chat-back{font-size:.72rem;padding:.25rem .45rem}.app--compact .messages-toolbar{margin-bottom:.25rem;padding:.1rem 0;gap:.28rem}.app--compact .messages-toolbar .chip{font-size:.66rem;padding:.22rem .45rem}.app--compact .messages-scroll-hint{display:none}.app--compact .messages{gap:.32rem;padding-bottom:.25rem}.app--compact .message-bubble{padding:.38rem .5rem;border-radius:8px;border-left-width:2px}.app--compact .message-role{font-size:.55rem;margin-bottom:.18rem;padding:.08rem .3rem;letter-spacing:.04em}.app--compact .message-body{gap:.28rem}.app--compact .message-paragraph{font-size:.78rem;line-height:1.32;margin:0}.app--compact .message-paragraph--user{font-size:.8rem}.app--compact .message-heading,.app--compact .message-heading--h2,.app--compact .message-heading--h3{font-size:.82rem;margin:.15rem 0 .05rem}.app--compact .message-list{margin:.1rem 0;padding-left:1.1rem;font-size:.76rem;gap:.1rem}.app--compact .message-code{padding:.35rem .45rem;font-size:.7rem;margin:.15rem 0}.app--compact .message-inline-code{font-size:.72rem;padding:.05rem .25rem}.app--compact .message-expand{font-size:.66rem;padding:.18rem .4rem;margin-top:.08rem}.app--compact .messages-hint{font-size:.72rem;padding:.35rem .45rem;margin-bottom:.35rem}.app--compact .messages-jump-bottom{font-size:.68rem;bottom:.2rem}.app--compact .compose{padding:.3rem .55rem calc(.35rem + env(safe-area-inset-bottom,0px));padding-bottom:calc(.4rem + env(safe-area-inset-bottom,0px) + var(--keyboard-offset));box-shadow:0 -6px 20px #0000004d}.app--compact .compose textarea{min-height:34px;padding:.45rem .55rem;font-size:.84rem;line-height:1.35;border-radius:8px}.app--compact .compose-actions{gap:.35rem;margin-top:.35rem}.app--compact .compose-actions button{padding:.45rem .55rem;font-size:.8rem}.app--compact .composer-controls--compact{margin-bottom:.25rem}.app--compact .composer-controls--compact .mode-switch{gap:.2rem}.app--compact .mode-switch-btn{padding:.28rem .4rem;font-size:.68rem}.app--compact .composer-controls-trigger{padding:.28rem .45rem;font-size:.72rem}.app--compact .tasks-dock-toggle{font-size:.66rem;padding:.28rem .45rem}.app--compact .empty{padding:1rem .5rem;font-size:.82rem}@media(min-width:900px){.mobile-only{display:none!important}.desktop-only{display:flex!important}.app{max-width:none;margin:0;width:100%}.app-banners{padding:0 1.25rem}.app-body{flex:1;min-height:0;display:grid;grid-template-columns:min(300px,26vw) minmax(0,1fr);overflow:hidden}.desktop-sidebar{display:flex;flex-direction:column;min-height:0;border-right:1px solid var(--border);background:color-mix(in srgb,var(--bg-elevated) 55%,var(--bg));overflow:hidden}.desktop-nav{display:flex;gap:.35rem;padding:.5rem .65rem;border-bottom:1px solid var(--border);flex-shrink:0}.desktop-nav-btn{flex:1;padding:.45rem .55rem;border-radius:8px;border:1px solid var(--border);background:var(--surface);color:var(--muted);font-size:.8rem;font-weight:600;cursor:pointer}.desktop-nav-btn:hover{border-color:var(--accent-dim);color:var(--text)}.desktop-nav-btn.active{border-color:var(--accent);color:var(--text);background:color-mix(in srgb,var(--accent) 14%,var(--surface))}.desktop-sidebar-sessions{flex:1;min-height:0;overflow:hidden;display:flex;flex-direction:column;padding:.35rem .5rem 0}.desktop-sidebar-sessions .sessions-section{flex:1;min-height:0;max-height:none;border-radius:10px}.desktop-sidebar-sessions .sessions-folders,.desktop-sidebar-sessions .sessions-list{max-height:none}.system-panel--compact{flex-shrink:0;margin:.35rem .5rem .5rem}.system-panel--compact .card{margin-bottom:0;padding:.65rem .75rem}.system-panel--compact summary{font-size:.78rem}.app-center{display:flex;flex-direction:column;min-height:0;min-width:0;position:relative}.app--desktop .content{padding:.5rem 1.25rem .35rem}.app--desktop .content--usage,.app--desktop .content--prompts,.app--desktop .content--links{max-width:960px}.app--desktop .chat-view{max-width:920px;width:100%;margin:0 auto}.app--desktop .chat-session-bar{padding:.35rem 0 .5rem;gap:.65rem}.app--desktop .chat-session-title{font-size:.95rem;white-space:normal;color:var(--text)}.app--desktop .chat-switcher-text .chat-session-title{font-size:.8rem;font-weight:500;color:var(--muted);white-space:nowrap}.chat-session-usage{flex-shrink:0;font-size:.72rem;color:var(--accent)}.app--desktop .messages-panel{border-radius:12px;border:1px solid var(--border);background:color-mix(in srgb,var(--surface) 40%,transparent);padding:.5rem .65rem}.app--desktop .compose{max-width:920px;width:calc(100% - 2.5rem);margin:0 auto;left:0;right:0;border-radius:12px 12px 0 0}.app--desktop .header-compact{padding:.45rem 1.25rem}.login-page{max-width:420px;margin:3rem auto}}@media(max-width:899px){.desktop-sidebar{display:none}}.theme-aurora .login-page{background:radial-gradient(ellipse 60% 50% at 50% -10%,rgba(139,124,255,.22),transparent 60%),#0a0a0f;color:#ededf0}.theme-aurora .login-card{background:#ffffff06;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.08);border-radius:20px;box-shadow:0 30px 80px #0009;color:#ededf0}.theme-aurora .login-card h1{color:#ededf0;background:none;-webkit-text-fill-color:initial;font-weight:700;letter-spacing:-.02em;font-size:1.5rem}.theme-aurora .login-sub,.theme-aurora .login-card label{color:#8b8b94}.theme-aurora .login-card input{background:#ffffff0a;border:1px solid rgba(255,255,255,.08);border-radius:12px;color:#ededf0}.theme-aurora .login-card input:focus{border-color:#8b7cff;box-shadow:0 0 0 4px #8b7cff2e;outline:none}.theme-aurora .login-btn{background:#8b7cff;color:#fff;border-radius:12px;font-weight:600;font-size:.95rem;box-shadow:0 8px 24px #8b7cff4d;animation:none;transition:background .15s,transform .12s}.theme-aurora .login-btn:hover:not(:disabled){background:#6f5fff;transform:translateY(-1px);filter:none}.app--aurora{--bg: #0a0a0f;--bg-elevated: #131319;--surface: rgba(255, 255, 255, .025);--surface2: rgba(255, 255, 255, .055);--surface3: rgba(255, 255, 255, .085);--border: rgba(255, 255, 255, .07);--border-strong: rgba(255, 255, 255, .13);--text: #ededf0;--muted: #8b8b94;--accent: #8b7cff;--accent-dim: #6f5fff;--accent-soft: rgba(139, 124, 255, .16);--accent-glow: rgba(139, 124, 255, .35);--ok: #4ade80;--warn: #fbbf24;--err: #fb7185;--user: #8b7cff;--assistant: #c4b5fd;--thinking: #c4b5fd;--working: #fbbf24;--radius: 14px;background:radial-gradient(ellipse 55% 35% at 50% -8%,rgba(139,124,255,.18),transparent 60%),var(--bg);letter-spacing:-.005em;font-feature-settings:"ss01","cv11"}.app--aurora .header{background:#0a0a0fb8;backdrop-filter:blur(20px) saturate(1.4);-webkit-backdrop-filter:blur(20px) saturate(1.4);border-bottom:1px solid var(--border);box-shadow:none}.app--aurora .header-compact{padding:.55rem .85rem}.app--aurora .header-bar{gap:.55rem}.app--aurora .header-brand{display:inline;font-size:.85rem;color:var(--text)}.app--aurora .header-project-select{background:transparent;border:1px solid var(--border);border-radius:10px;color:var(--text);font-weight:500;font-size:.85rem;transition:border-color .15s,background .15s}.app--aurora .header-project-select:hover:not(:disabled){border-color:var(--border-strong);background:var(--surface)}.app--aurora .header-menu-btn{background:transparent;border:1px solid var(--border);width:2.1rem;height:2.1rem;border-radius:10px;color:var(--text);transition:background .15s,border-color .15s}.app--aurora .header-menu-btn:hover{background:var(--surface);border-color:var(--border-strong)}.app--aurora .badge.badge-compact{background:transparent;border:1px solid var(--border);color:var(--muted);font-weight:500;letter-spacing:0;text-transform:none;padding:.22rem .55rem;border-radius:999px}.app--aurora .badge.finished{color:var(--ok);border-color:color-mix(in srgb,var(--ok) 28%,transparent);background:color-mix(in srgb,var(--ok) 8%,transparent)}.app--aurora .badge.running{color:var(--working);border-color:color-mix(in srgb,var(--working) 28%,transparent);background:color-mix(in srgb,var(--working) 8%,transparent)}.app--aurora .badge.error{color:var(--err);border-color:color-mix(in srgb,var(--err) 28%,transparent);background:color-mix(in srgb,var(--err) 8%,transparent)}.app--aurora .main-tabs{background:transparent;border-bottom:1px solid var(--border);padding:0 .85rem;gap:0}.app--aurora .main-tab{background:transparent;border:none;border-radius:0;padding:.75rem .85rem .85rem;color:var(--muted);font-weight:500;font-size:.86rem;letter-spacing:0;position:relative;transition:color .15s;box-shadow:none}.app--aurora .main-tab:after{content:"";position:absolute;left:.5rem;right:.5rem;bottom:-1px;height:2px;border-radius:2px;background:var(--accent);transform:scaleX(0);transform-origin:center;transition:transform .2s ease,opacity .2s;opacity:0}.app--aurora .main-tab:hover{color:var(--text);background:transparent;transform:none}.app--aurora .main-tab.active{background:transparent;color:var(--text);box-shadow:none;border-color:transparent}.app--aurora .main-tab.active:after{transform:scaleX(1);opacity:1}.app--aurora .main-tab-badge{background:var(--surface2);color:var(--muted);font-weight:500;padding:.1rem .4rem}.app--aurora .main-tab.active .main-tab-badge{background:var(--accent-soft);color:var(--accent)}.app--aurora .main-tab-sub{display:none}.app--aurora .card,.app--aurora .task-card,.app--aurora .usage-chart-wrap{background:var(--surface);border:1px solid var(--border);border-radius:14px;box-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none;transition:background .15s,border-color .15s}.app--aurora .card{padding:.9rem 1rem}.app--aurora .card:hover,.app--aurora .card.selected{background:var(--surface2);border-color:var(--border-strong);transform:none;box-shadow:none}.app--aurora .header-dropdown,.app--aurora .composer-controls-menu,.app--aurora .image-attach-menu{background:#0f0f16f7;backdrop-filter:blur(20px) saturate(1.4);-webkit-backdrop-filter:blur(20px) saturate(1.4);border:1px solid var(--border-strong);border-radius:14px;box-shadow:0 24px 60px #000000a6;padding:.3rem;z-index:200}.app--aurora .header-dropdown button,.app--aurora .header-dropdown-link{color:var(--text);font-size:.86rem;border-radius:8px;padding:.55rem .7rem;margin:0}.app--aurora .header-dropdown button:hover,.app--aurora .header-dropdown-link:hover{background:var(--surface2)}.app--aurora .header-dropdown-danger{color:var(--err)!important;margin-top:.2rem;border-top:1px solid var(--border);border-radius:0 0 10px 10px}.app--aurora .header-dropdown-danger:hover{background:color-mix(in srgb,var(--err) 10%,transparent)!important}.app--aurora .messages-panel{background:transparent;padding-bottom:.5rem}.app--aurora .messages{gap:.55rem;padding-bottom:.75rem}.app--aurora .message-bubble{position:relative;max-width:88%;border:1px solid var(--border);background:var(--surface);border-radius:16px;border-left-width:1px;border-left-color:var(--border);box-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none;padding:.6rem .85rem;animation:aurora-message-in .22s ease-out}.app--aurora .message-bubble.message-user{align-self:flex-end;max-width:82%;background:var(--accent);border:none;color:#fff;border-bottom-right-radius:4px}.app--aurora .message-bubble.message-user .message-role__label{color:#ffffffd9}.app--aurora .message-bubble.message-user .message-role{display:inline-flex;background:#00000026}.app--aurora .message-bubble.message-user .message-paragraph,.app--aurora .message-bubble.message-user .message-heading,.app--aurora .message-bubble.message-user .message-list,.app--aurora .message-bubble.message-user .message-body,.app--aurora .message-bubble.message-user .message-body a{color:#fff}.app--aurora .message-bubble.message-user .message-inline-code,.app--aurora .message-bubble.message-user .message-code{background:#00000038;border-color:#ffffff26;color:#fff}.app--aurora .message-bubble.message-assistant{align-self:flex-start;background:var(--surface);border:1px solid var(--border);border-bottom-left-radius:4px}.app--aurora .message-bubble.message-assistant .message-role,.app--aurora .message-bubble.message-thinking .message-role,.app--aurora .message-bubble.message-working .message-role{display:inline-flex}.app--aurora .message-bubble.message-thinking,.app--aurora .message-bubble.message-working,.app--aurora .message-bubble.message-unknown{align-self:flex-start;max-width:88%;background:transparent;border:1px dashed var(--border);opacity:.88;border-left-width:1px}.app--aurora .message-bubble.message-thinking{border-color:color-mix(in srgb,var(--accent) 30%,transparent)}.app--aurora .message-bubble.message-working{border-color:color-mix(in srgb,var(--working) 30%,transparent);animation:aurora-message-in .22s ease-out,aurora-working-pulse 2.5s ease-in-out infinite}.app--aurora .message-role{text-transform:none;font-weight:500;letter-spacing:0;font-size:.65rem;padding:0;background:transparent;color:var(--muted);margin-bottom:.2rem}@keyframes aurora-message-in{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}@keyframes aurora-working-pulse{0%,to{border-color:color-mix(in srgb,var(--working) 25%,transparent)}50%{border-color:color-mix(in srgb,var(--working) 55%,transparent)}}.app--aurora .sessions-section{background:transparent;border:none;border-radius:0;overflow:visible}.app--aurora .sessions-section--embedded{background:transparent}.app--aurora .sessions-section-head{background:transparent;border-bottom:1px solid var(--border);padding:.55rem .5rem .65rem}.app--aurora .sessions-title{font-size:.7rem;font-weight:600;color:var(--muted);letter-spacing:.08em;text-transform:uppercase}.app--aurora .sessions-count{background:var(--surface2);color:var(--text);font-weight:600;padding:.1rem .45rem;font-size:.7rem}.app--aurora .session-folder{border-bottom:none}.app--aurora .session-folder-head{background:transparent;color:var(--muted);font-weight:600;letter-spacing:.06em;font-size:.7rem;text-transform:uppercase;padding:.7rem .55rem .45rem}.app--aurora .session-folder-name{color:var(--muted)}.app--aurora .session-folder-count{background:var(--surface2);color:var(--muted)}.app--aurora .sessions-list,.app--aurora .sessions-list--nested{background:transparent;padding:.1rem .25rem .4rem}.app--aurora .session-row{border-radius:10px;padding:.55rem .65rem;gap:.55rem;transition:background .12s,color .12s}.app--aurora .session-row:hover{background:var(--surface)}.app--aurora .session-row.selected{background:var(--accent-soft);color:var(--text);box-shadow:none;border-left:none;position:relative}.app--aurora .session-row.active{background:color-mix(in srgb,#3ecf8e 12%,var(--surface));color:var(--text)}.app--aurora .session-row.active-selected,.app--aurora .session-row.active.selected{background:color-mix(in srgb,var(--accent-soft) 55%,#3ecf8e 12%,var(--surface))}.app--aurora .session-row.selected:before,.app--aurora .session-row.active:before{content:"";position:absolute;left:0;top:50%;width:3px;height:1.1rem;margin-top:-.55rem;border-radius:3px}.app--aurora .session-row.selected:before{background:var(--accent)}.app--aurora .session-row.active:before{background:#3ecf8e}.app--aurora .session-row.active.selected:before,.app--aurora .session-row.active-selected:before{background:linear-gradient(180deg,#3ecf8e 0%,var(--accent) 100%)}.app--aurora .session-row-icon{display:inline-block;font-size:.65rem;margin-right:.15rem}.app--aurora .session-row.active .session-row-icon{color:#3ecf8e}.app--aurora .session-row-badge{color:#3ecf8e;background:color-mix(in srgb,#3ecf8e 18%,transparent)}.app--aurora .session-row-title{font-size:.86rem;font-weight:500;letter-spacing:-.005em}.app--aurora .messages-toolbar{background:transparent;backdrop-filter:none;-webkit-backdrop-filter:none;border:none;border-bottom:1px solid var(--border);border-radius:0;padding:.4rem 0;gap:.35rem;margin-bottom:.55rem}.app--aurora .chip,.app--aurora .link-btn{background:transparent;border:1px solid var(--border);color:var(--muted);border-radius:999px;padding:.32rem .75rem;font-size:.74rem;font-weight:500;letter-spacing:0;backdrop-filter:none;-webkit-backdrop-filter:none;transition:background .15s,border-color .15s,color .15s}.app--aurora .chip:hover{background:var(--surface);border-color:var(--border-strong);color:var(--text)}.app--aurora .chip.active,.app--aurora .messages-toolbar .chip.active{background:var(--accent-soft);border-color:color-mix(in srgb,var(--accent) 35%,transparent);color:var(--accent);font-weight:600}.app--aurora .messages-scroll-hint{display:none}.app--aurora .messages-legend{font-size:.66rem;opacity:.85}.app--aurora .messages-jump-bottom{background:var(--accent);color:#fff;border:none;font-weight:600;font-size:.76rem;padding:.45rem .85rem;border-radius:999px;box-shadow:0 8px 24px #8b7cff66}.app--aurora .messages-jump-bottom:hover{background:var(--accent-dim)}.app--aurora .compose{background:linear-gradient(180deg,transparent 0%,color-mix(in srgb,var(--bg) 70%,transparent) 40%,var(--bg) 100%);border-top:none;box-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none;padding-top:.85rem}.app--aurora .compose textarea,.app--aurora .compose-prompt-input{background:var(--surface2);border:1px solid var(--border);border-radius:18px;padding:.8rem .95rem;font-size:.92rem;line-height:1.45;backdrop-filter:none;-webkit-backdrop-filter:none;transition:border-color .15s,background .15s,box-shadow .15s}.app--aurora .compose-prompt-wrap--has-text .compose-prompt-input{padding-right:2.75rem}.app--aurora .compose-clear-btn{top:.5rem;right:.5rem;background:color-mix(in srgb,var(--surface3) 85%,transparent);border:1px solid var(--border)}.app--aurora .compose textarea::placeholder,.app--aurora .compose-prompt-input::placeholder{color:var(--muted)}.app--aurora .compose textarea:focus,.app--aurora .compose-prompt-input:focus{border-color:var(--accent);background:var(--surface3);box-shadow:0 0 0 4px var(--accent-soft);outline:none}.app--aurora .compose-actions{margin-top:.5rem;gap:.45rem;align-items:center}.app--aurora .compose-actions>.compose-send-btn{flex:0 0 auto;min-width:0;width:2.5rem;height:2.5rem;padding:0;border-radius:50%;background:var(--accent);color:#fff;border:none;display:inline-flex;align-items:center;justify-content:center;box-shadow:0 6px 18px #8b7cff52;margin-left:auto;animation:none;transition:background .15s,transform .12s,box-shadow .15s}.app--aurora .compose-actions>.compose-send-btn:hover:not(:disabled){background:var(--accent-dim);transform:translateY(-1px);box-shadow:0 10px 22px #8b7cff80;filter:none}.app--aurora .compose-actions>.compose-send-btn:disabled{background:var(--surface2);color:var(--muted);box-shadow:none}.app--aurora .compose-send-label{display:none}.app--aurora .compose-send-icon{display:inline-flex;align-items:center;justify-content:center}.app--aurora .compose-actions .speech-mic-btn{width:2.5rem;height:2.5rem;border-radius:50%;background:transparent;border:1px solid var(--border);color:var(--text);box-shadow:none}.app--aurora .compose-actions .whisper-record-btn{width:2.5rem;height:2.5rem;flex:0 0 auto;min-width:0;padding:0;border-radius:50%;border:2px solid color-mix(in srgb,var(--warn) 65%,var(--border));background:color-mix(in srgb,var(--warn) 10%,transparent);color:var(--warn);box-shadow:0 4px 14px color-mix(in srgb,var(--warn) 30%,transparent)}.app--aurora .compose-actions .whisper-record-btn:hover:not(:disabled){background:color-mix(in srgb,var(--warn) 22%,var(--surface2));border-color:var(--warn);color:var(--warn)}.app--aurora .compose-actions .whisper-record-btn--recording,.app--aurora .compose-actions .whisper-record-btn--recording:hover:not(:disabled){background:var(--warn);border-color:var(--warn);color:#fff;box-shadow:0 6px 18px color-mix(in srgb,var(--warn) 45%,transparent)}.app--aurora .compose-actions .whisper-record-btn--transcribing{border-color:var(--warn);color:var(--warn);background:color-mix(in srgb,var(--warn) 14%,transparent)}.app--aurora.app--compact .compose-actions .whisper-record-btn{width:2.1rem;height:2.1rem}.app--aurora .compose-actions .speech-mic-btn:hover:not(:disabled){background:var(--surface2);border-color:var(--accent);color:var(--accent)}.app--aurora .compose-actions .speech-mic-btn--active,.app--aurora .compose-actions .speech-mic-btn--active:hover:not(:disabled){background:var(--err);border-color:var(--err);color:#fff;box-shadow:0 6px 18px color-mix(in srgb,var(--err) 35%,transparent)}.app--aurora .speech-mic-pulse{border-radius:50%}.app--aurora .speech-finish-btn{border-color:color-mix(in srgb,var(--accent) 50%,transparent);background:color-mix(in srgb,var(--accent) 14%,transparent);color:var(--text)}.app--aurora .speech-finish-btn:hover:not(:disabled){background:color-mix(in srgb,var(--accent) 22%,transparent)}.app--aurora .speech-status{background:color-mix(in srgb,var(--err) 8%,transparent);border-color:color-mix(in srgb,var(--err) 30%,transparent);border-radius:14px;padding:.5rem .75rem;font-size:.8rem;margin-top:.5rem}.app--aurora.app--compact .compose-actions .speech-mic-btn{width:2.1rem;height:2.1rem}.app--aurora .compose-actions button.secondary,.app--aurora .compose-actions .image-attach-btn,.app--aurora .system-actions .secondary,.app--aurora .task-edit-actions button.secondary{background:transparent;border:1px solid var(--border);color:var(--text);border-radius:999px;font-weight:500;font-size:.78rem;padding:.5rem .95rem;backdrop-filter:none;-webkit-backdrop-filter:none;animation:none}.app--aurora .compose-actions button.secondary:hover,.app--aurora .compose-actions .image-attach-btn:hover{background:var(--surface2);border-color:var(--border-strong)}.app--aurora .mode-switch{background:var(--surface);border:1px solid var(--border);border-radius:999px;padding:3px;backdrop-filter:none;-webkit-backdrop-filter:none}.app--aurora .mode-switch-btn{border-radius:999px;color:var(--muted);font-weight:500;padding:.4rem .85rem;font-size:.78rem;transition:background .15s,color .15s}.app--aurora .mode-switch-btn:hover:not(:disabled):not(.active){background:var(--surface2);color:var(--text)}.app--aurora .mode-switch-btn.active{background:var(--text);color:var(--bg);font-weight:600;box-shadow:none}.app--aurora .composer-controls-trigger{background:transparent;border:1px solid var(--border);border-radius:999px;color:var(--muted);font-weight:500;font-size:.74rem;padding:.42rem .75rem;backdrop-filter:none;-webkit-backdrop-filter:none;transition:background .15s,color .15s,border-color .15s}.app--aurora .composer-controls-trigger:hover{background:var(--surface);color:var(--text);border-color:var(--border-strong)}.app--aurora .composer-controls-model{color:var(--text)}.app--aurora .composer-controls-section{font-size:.62rem;letter-spacing:.08em;color:var(--muted);margin:.4rem .55rem .2rem}.app--aurora .composer-controls-item{border-radius:8px;padding:.55rem .7rem;font-size:.86rem;color:var(--text)}.app--aurora .composer-controls-item:hover{background:var(--surface2)}.app--aurora .composer-controls-item.active{background:var(--accent-soft);color:var(--accent);font-weight:600}.app--aurora .tasks-dock-toggle{background:transparent;border:1px solid var(--border);color:var(--text);border-radius:999px;font-weight:500;font-size:.74rem;padding:.42rem .75rem;box-shadow:none}.app--aurora .tasks-dock-toggle:hover{background:var(--surface);border-color:var(--border-strong)}.app--aurora .tasks-dock-chevron{opacity:.6}.app--aurora .image-attach-menu-item{border-radius:8px;color:var(--text)}.app--aurora .image-attach-menu-item:hover:not(:disabled){background:var(--surface2)}.app--aurora .error-banner{background:color-mix(in srgb,var(--err) 10%,transparent);border:1px solid color-mix(in srgb,var(--err) 28%,transparent);color:color-mix(in srgb,var(--err) 95%,white);border-radius:12px;backdrop-filter:none;-webkit-backdrop-filter:none;font-size:.84rem}.app--aurora .success-banner{background:color-mix(in srgb,var(--ok) 10%,transparent);border:1px solid color-mix(in srgb,var(--ok) 28%,transparent);color:color-mix(in srgb,var(--ok) 95%,white);border-radius:12px;backdrop-filter:none;-webkit-backdrop-filter:none;font-size:.84rem}.app--aurora .confirm-overlay{background:#08080cb3;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}.app--aurora .confirm-dialog{background:#0f0f16f7;border:1px solid var(--border-strong);border-radius:16px;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);box-shadow:0 30px 80px #000000b3}.app--aurora .confirm-title{font-weight:700;letter-spacing:-.01em;color:var(--text)}.app--aurora .confirm-message{color:var(--muted)}.app--aurora .confirm-actions button:not(.confirm-btn-danger):not(.secondary){background:var(--accent);color:#fff;font-weight:600;border:none;border-radius:10px;box-shadow:none;animation:none;transition:background .15s,transform .12s}.app--aurora .confirm-actions button:not(.confirm-btn-danger):not(.secondary):hover{background:var(--accent-dim);filter:none;transform:translateY(-1px)}.app--aurora .confirm-actions button.secondary{background:transparent;border:1px solid var(--border-strong);color:var(--text);border-radius:10px}.app--aurora .confirm-actions button.secondary:hover{background:var(--surface2)}.app--aurora .confirm-btn-danger{background:var(--err)!important;color:#fff!important;box-shadow:none!important;animation:none}.app--aurora .confirm-btn-danger:hover{background:color-mix(in srgb,var(--err) 80%,black)!important;transform:translateY(-1px)}.app--aurora .desktop-sidebar{background:#0b0b0fa6;backdrop-filter:blur(20px) saturate(1.3);-webkit-backdrop-filter:blur(20px) saturate(1.3);border-right:1px solid var(--border)}.app--aurora .desktop-nav{padding:.6rem .65rem;gap:.3rem;border-bottom:1px solid var(--border)}.app--aurora .desktop-nav-btn{background:transparent;border:1px solid transparent;border-radius:8px;color:var(--muted);font-weight:500}.app--aurora .desktop-nav-btn:hover{background:var(--surface);color:var(--text)}.app--aurora .desktop-nav-btn.active{background:var(--surface2);border-color:var(--border-strong);color:var(--text);box-shadow:none}.app--aurora .app--desktop .messages-panel{border:1px solid var(--border);border-radius:14px;background:transparent;padding:.5rem .7rem}.app--aurora .app--desktop .compose{background:#0b0b0fb3;border:1px solid var(--border);border-radius:16px 16px 0 0;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px)}.app--aurora .chat-session-bar{border-bottom:none;padding:.35rem 0 .5rem;margin-bottom:0}.app--aurora .chat-switcher-btn{background:var(--surface);border-color:var(--border)}.app--aurora .chat-switcher-sheet{background:var(--bg-elevated);-webkit-backdrop-filter:blur(20px) saturate(1.3);backdrop-filter:blur(20px) saturate(1.3)}.app--aurora .subagents-bar{background:var(--surface);border-color:var(--border)}.app--aurora .chat-session-title{color:var(--text);font-weight:600;letter-spacing:-.005em}.app--aurora .chat-switcher-text .chat-session-title{color:var(--muted);font-weight:500}.app--aurora .chat-session-usage{color:var(--muted)}.app--aurora .usage-live{background:var(--accent-soft);border:1px solid color-mix(in srgb,var(--accent) 25%,transparent);border-radius:12px;color:var(--text);-webkit-backdrop-filter:none;backdrop-filter:none;font-weight:500}.app--aurora .usage-session-row{background:var(--surface);border:1px solid var(--border);border-radius:10px;color:var(--text)}.app--aurora .usage-session-row:hover{background:var(--surface2);border-color:var(--border-strong)}.app--aurora .usage-session-row.active{background:var(--accent-soft);border-color:color-mix(in srgb,var(--accent) 35%,transparent)}.app--aurora .usage-period-select{background:var(--surface);border:1px solid var(--border);border-radius:10px;color:var(--text);font-weight:500}.app--aurora .usage-chart-wrap{padding:.85rem}.app--aurora .usage-subtitle{color:var(--muted);font-weight:500;letter-spacing:.02em}.app--aurora .section-title{color:var(--muted);letter-spacing:.08em;font-weight:600;font-size:.7rem}.app--aurora .live-dot{background:var(--ok);box-shadow:0 0 6px var(--ok)}.app--aurora .message-code{background:#00000052;border:1px solid var(--border);border-radius:10px;font-family:JetBrains Mono,Cascadia Code,ui-monospace,Consolas,monospace}.app--aurora .message-inline-code{background:var(--surface2);border:1px solid var(--border);border-radius:5px;font-family:JetBrains Mono,ui-monospace,Consolas,monospace;font-size:.85em;padding:.06rem .32rem}.app--aurora .empty{color:var(--muted);font-size:.88rem}.app--aurora ::selection{background:var(--accent-soft);color:var(--text)}.app--aurora .messages-panel::-webkit-scrollbar,.app--aurora .content::-webkit-scrollbar,.app--aurora .sessions-folders::-webkit-scrollbar,.app--aurora .sessions-list::-webkit-scrollbar{width:6px}.app--aurora .messages-panel::-webkit-scrollbar-thumb,.app--aurora .content::-webkit-scrollbar-thumb,.app--aurora .sessions-folders::-webkit-scrollbar-thumb,.app--aurora .sessions-list::-webkit-scrollbar-thumb{background:var(--surface2);border-radius:999px}.app--aurora .messages-panel::-webkit-scrollbar-thumb:hover,.app--aurora .content::-webkit-scrollbar-thumb:hover{background:var(--surface3)}.app--aurora .messages-panel::-webkit-scrollbar-track,.app--aurora .content::-webkit-scrollbar-track,.app--aurora .sessions-folders::-webkit-scrollbar-track,.app--aurora .sessions-list::-webkit-scrollbar-track{background:transparent}.app--aurora.app--compact .compose textarea{border-radius:14px;font-size:.84rem;padding:.55rem .75rem}.app--aurora.app--compact .compose-actions>.compose-send-btn{width:2.1rem;height:2.1rem}.app--aurora.app--compact .message-bubble{padding:.45rem .65rem;border-radius:12px}.app--aurora.app--compact .message-bubble.message-user{border-bottom-right-radius:4px}.app--aurora.app--compact .message-bubble.message-assistant{border-bottom-left-radius:4px}@media(prefers-reduced-motion:reduce){.app--aurora *{animation:none!important}}html.native-app{--native-inset-top: 0px;--native-inset-bottom: 0px}html.native-app body,html.native-app #root{background:#09090b}html.native-app .app,.app--native{max-width:none;padding-top:var(--native-inset-top, 0px)}html.native-app .messages-legend,html.native-app .messages-scroll-hint,.app--native .messages-legend,.app--native .messages-scroll-hint{display:none}html.native-app .approval-bar,.app--native .approval-bar{padding:.75rem}html.native-app .approval-bar__actions,.app--native .approval-bar__actions{display:grid;grid-template-columns:repeat(auto-fit,minmax(5.5rem,1fr));gap:.5rem}html.native-app .approval-bar__btn,.app--native .approval-bar__btn{min-height:2.75rem;justify-content:center;font-size:.95rem}html.native-app .compose,.app--native .compose{padding-bottom:calc(.65rem + var(--native-inset-bottom, 0px) + var(--keyboard-offset))}html.native-app .login-page{padding-top:var(--native-inset-top, 0px)}
