:root{--content-padding-x:48px;--content-padding-x-mobile:14px;color-scheme:dark;--bg-app:#141416;--bg-rail:#18181b;--bg-panel:#1d1d21;--bg-raised:#232329;--bg-field:#202026;--bg-field-hover:#26262d;--bg-field-focus:#2a2b33;--text-primary:#f3f0ea;--text-secondary:#c2bbb0;--text-muted:#8d877f;--text-on-accent:#182019;--border-soft:#2d2c32;--border-default:#37363d;--border-active:#4a4852;--border-focus:#8faf9d;--accent-primary:#8faf9d;--accent-primary-hover:#9db9a8;--accent-primary-pressed:#7e9d8b;--accent-primary-soft:rgba(143,175,157,0.14);--accent-relational:#a58fbf;--accent-relational-soft:rgba(165,143,191,0.16);--accent-pinned:#c9a86a;--accent-pinned-soft:rgba(201,168,106,0.16);--accent-review:#7fa7b8;--accent-review-soft:rgba(127,167,184,0.14);--state-danger:#b17676;--state-danger-soft:rgba(177,118,118,0.14);--state-info:#8fa9b8;--state-info-soft:rgba(143,169,184,0.14);--shadow-panel:0 18px 40px rgba(0,0,0,0.24);--shadow-drawer:-10px 0 36px rgba(0,0,0,0.34);--shadow-menu:0 10px 24px rgba(0,0,0,0.28)}:root[data-theme=light]{color-scheme:light;--bg-app:#f6f2ea;--bg-rail:#efe8de;--bg-panel:#fbf8f2;--bg-raised:#f3ede4;--bg-field:#fffdf8;--bg-field-hover:#f7f3ec;--bg-field-focus:#f3eee6;--text-primary:#2f2a26;--text-secondary:#625950;--text-muted:#85786d;--text-on-accent:#162018;--border-soft:#ddd3c7;--border-default:#d0c5b7;--border-active:#b7ab9d;--border-focus:#8daa96;--accent-primary:#8daa96;--accent-primary-hover:#98b4a0;--accent-primary-pressed:#789583;--accent-primary-soft:rgba(141,170,150,0.16);--accent-relational:#9d90b8;--accent-relational-soft:rgba(157,144,184,0.16);--accent-pinned:#ba9b63;--accent-pinned-soft:rgba(186,155,99,0.16);--accent-review:#7099aa;--accent-review-soft:rgba(112,153,170,0.14);--state-danger:#a25f5f;--state-danger-soft:rgba(162,95,95,0.14);--state-info:#6e8c98;--state-info-soft:rgba(110,140,152,0.14);--shadow-panel:0 14px 32px rgba(70,50,30,0.08);--shadow-drawer:-10px 0 28px rgba(70,50,30,0.12);--shadow-menu:0 12px 24px rgba(70,50,30,0.12)}*{box-sizing:border-box}body,html{margin:0;padding:0;min-height:100%;background:var(--bg-app);color:var(--text-primary);font-family:Inter,IBM Plex Sans,sans-serif}body{min-height:100vh}button,input,select,textarea{font:inherit}button{border:1px solid var(--border-soft);background:var(--bg-raised);color:var(--text-primary);border-radius:12px;cursor:pointer;padding:.65rem .9rem;transition:background-color .16s ease,border-color .16s ease,color .16s ease,transform .16s ease,opacity .16s ease}button:hover:not(:disabled){border-color:var(--border-active);background:var(--bg-field-hover)}button:disabled{opacity:.45;cursor:not-allowed}input,select,textarea{width:100%;border:1px solid var(--border-soft);background:var(--bg-field);color:var(--text-primary);border-radius:12px;padding:.8rem .9rem;transition:border-color .16s ease,background-color .16s ease,box-shadow .16s ease}input:hover,select:hover,textarea:hover{background:var(--bg-field-hover)}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--border-focus);background:var(--bg-field-focus);box-shadow:0 0 0 3px rgba(143,175,157,.1)}textarea{resize:vertical}a{color:inherit}.centered{min-height:100vh;display:grid;place-items:center;padding:1rem}.auth-shell{background:radial-gradient(circle at top,rgba(143,175,157,.16),transparent 28%),var(--bg-app)}.auth-card{width:min(460px,100%);display:grid;gap:1rem;background:var(--bg-panel);border:1px solid var(--border-soft);border-radius:20px;padding:2rem;box-shadow:var(--shadow-panel)}.auth-card h1,.chat-header h1,.detail-pane h1,.view-sheet h1{margin:0;font-size:1.9rem;line-height:1.1}.eyebrow{margin:0 0 .4rem;font-size:.76rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase}.eyebrow,.muted{color:var(--text-muted)}.muted{margin:0}.checkbox-field,.field{display:grid;gap:.5rem}.field>span{color:var(--text-secondary);font-size:.92rem;font-weight:600}.checkbox-field small,.field small{color:var(--text-muted);font-size:.82rem;line-height:1.45}.large-field textarea{min-height:260px}.checkbox-field{grid-template-columns:auto 1fr;align-items:start;gap:.8rem;padding:.85rem .95rem;border:1px solid var(--border-soft);border-radius:16px;background:rgba(255,255,255,.02)}.checkbox-field input,.checkbox-line input{width:auto;margin-top:.15rem}.checkbox-field span,.checkbox-line{display:grid;gap:.2rem}.checkbox-field strong{font-size:.95rem}.checkbox-line{display:inline-flex;align-items:center;gap:.55rem}.quiet-toggle{font-size:.9rem;color:var(--text-secondary)}.btn-primary{border-color:transparent;background:var(--accent-primary);color:var(--text-on-accent);font-weight:700}.btn-primary:hover:not(:disabled){background:var(--accent-primary-hover);border-color:transparent}.ghost-danger{color:var(--state-danger);background:var(--state-danger-soft);border-color:transparent}.ghost-danger:hover:not(:disabled){background:rgba(177,118,118,.2)}.icon-button{padding:.55rem .7rem;min-width:44px}.button-icon{width:18px;height:18px;display:block}.quiet-link{padding:0;border:0;border-radius:0;background:transparent;color:var(--text-secondary);font-weight:600;text-align:left}.quiet-link:hover:not(:disabled){background:transparent;border-color:transparent;color:var(--text-primary)}.tag{display:inline-flex;align-items:center;height:26px;padding:0 .65rem;border-radius:999px;background:rgba(255,255,255,.04);color:var(--text-secondary);font-size:.78rem;font-weight:600}.tag.relational{background:var(--accent-relational-soft);color:var(--accent-relational)}.tag.pinned{background:var(--accent-pinned-soft);color:var(--accent-pinned)}.tag.review{background:var(--accent-review-soft);color:var(--accent-review)}.tag.muted-tag{background:rgba(255,255,255,.04);color:var(--text-muted)}.app-shell{min-height:100vh;height:100dvh;overflow:hidden;display:grid;grid-template-columns:280px minmax(0,1fr);transition:grid-template-columns .22s ease}.app-shell.sidebar-collapsed{grid-template-columns:56px minmax(0,1fr)}.context-column,.main-stage,.side-panel{min-height:0}.rail-nav{display:grid;gap:.65rem;align-content:start;justify-items:stretch;width:100%}.rail-link{min-height:36px;padding:7px 0;width:100%;min-width:0;display:flex;align-items:center;justify-content:center;background:transparent;border-color:transparent;border-radius:6px;font-size:12px;font-weight:500;color:var(--text-muted)}.rail-link:hover:not(:disabled){background:rgba(31,29,26,.04)}.rail-link.active,.rail-link:hover:not(:disabled){border-color:transparent;color:var(--text-primary)}.rail-link.active{background:rgba(31,29,26,.06)}.context-column,.main-stage{border:none;border-radius:0;background:transparent;box-shadow:none;backdrop-filter:none}.modal-card{border:1px solid var(--border-soft);border-radius:20px;box-shadow:var(--shadow-panel)}.modal-card,.side-panel{background:var(--bg-panel)}.side-panel{border-radius:0;box-shadow:none;border:none;border-left:1px solid var(--border-soft)}.context-column{display:grid;grid-template-rows:minmax(0,1fr) auto;overflow:hidden}.unified-sidebar{background:var(--bg-rail);border-right:1px solid var(--border-soft);padding:20px 16px;gap:0;overflow:hidden}.unified-sidebar .sidebar-body{gap:0}.sidebar-brand-row{display:flex;align-items:center;justify-content:space-between;min-height:28px;margin-bottom:16px;flex-shrink:0}.sidebar-brand{font-family:Fraunces,Georgia,serif;font-weight:600;font-size:18px;letter-spacing:-.01em;color:var(--text-primary);white-space:nowrap;overflow:hidden}.sidebar-collapse-btn{width:26px;height:26px;padding:0;border:none;border-radius:6px;display:grid;place-items:center;cursor:pointer;background:transparent;color:var(--text-muted);flex-shrink:0}.sidebar-collapse-btn:hover{background:rgba(31,29,26,.06);color:var(--text-primary);border-color:transparent}.sidebar-collapse-btn svg{width:14px;height:14px}.sidebar-chats-header{display:flex;flex-direction:column;gap:10px}.sidebar-new-chat-btn{width:100%;padding:9px 12px;background:var(--accent-primary);color:var(--text-on-accent);font-size:13px;font-weight:600;margin-bottom:18px;cursor:pointer;border-radius:8px;text-align:center;border:none}.sidebar-new-chat-btn:hover:not(:disabled){background:var(--accent-primary-hover);border-color:transparent}.app-shell.sidebar-collapsed .chat-list-shell,.app-shell.sidebar-collapsed .context-head,.app-shell.sidebar-collapsed .context-stack,.app-shell.sidebar-collapsed .segmented-control,.app-shell.sidebar-collapsed .sidebar-brand,.app-shell.sidebar-collapsed .sidebar-global-nav,.app-shell.sidebar-collapsed .sidebar-new-chat-btn{display:none}.app-shell.settings-mode{grid-template-columns:1fr}.app-shell.sidebar-collapsed .unified-sidebar{padding:20px 8px}.app-shell.sidebar-collapsed .sidebar-brand-row{justify-content:center;margin-bottom:0}.sidebar-mini-icons{display:none;flex-direction:column;gap:6px;align-items:center;margin-top:auto;padding-top:14px;border-top:1px solid var(--border-soft)}.app-shell.sidebar-collapsed .sidebar-mini-icons{display:flex}.sidebar-mini-icon{width:32px;height:32px;display:grid;place-items:center;color:var(--text-muted);cursor:pointer;border-radius:6px;border:none;background:transparent;padding:0}.sidebar-mini-icon:hover,.sidebar-mini-icon:hover:not(:disabled){background:rgba(31,29,26,.06);color:var(--text-primary);border-color:transparent}.sidebar-mini-icon.active{color:var(--text-primary);background:rgba(31,29,26,.06)}.sidebar-mini-icon svg{width:16px;height:16px}.sidebar-body{min-height:0;display:grid;align-content:start;gap:1.2rem;overflow:hidden}.chats-sidebar .sidebar-body{grid-template-rows:auto minmax(0,1fr)}.memories-sidebar .sidebar-body{grid-template-rows:auto auto minmax(0,1fr)}.settings-sidebar .sidebar-body{align-content:start}.sidebar-footer{border-top:1px solid var(--border-soft);padding-top:14px;margin-top:auto}.sidebar-global-nav{grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch;gap:4px}.context-head{display:grid;gap:.8rem}.context-head-row{display:flex;align-items:center;justify-content:space-between;gap:.75rem}.compact-head{gap:0}.context-head h2,.detail-pane h3,.modal-card h3,.panel-sheet h2,.view-sheet h3{margin:0}.chat-list-shell,.context-stack,.memory-list-shell,.override-groups,.review-grid,.settings-layout{min-height:0}.context-stack{display:grid;align-content:start;gap:1rem;min-height:0;overflow:hidden}.context-stack-empty{display:block}.memory-nav-stack{grid-template-rows:auto auto auto}.segmented-control{display:flex;gap:.4rem;padding:.35rem;background:rgba(255,255,255,.03);border-radius:18px;border:1px solid var(--border-soft)}.segmented-control.vertical{flex-direction:column}.context-nav-plain{padding:0;border:0;background:transparent;align-self:start}.segment{flex:1;border-color:transparent;background:transparent;color:var(--text-secondary);display:inline-flex;align-items:center;justify-content:center;gap:.45rem}.segment.active{background:var(--accent-primary-soft);border-color:rgba(143,175,157,.2);color:var(--accent-primary)}.composer-attachments,.context-actions,.detail-actions,.filter-row,.message-inline-actions,.meta-pill-row,.panel-actions{display:flex;gap:.65rem;flex-wrap:wrap}.filter-row{gap:.45rem}.chip{min-height:32px;padding:.35rem .8rem;border-radius:999px;background:var(--bg-raised);color:var(--text-secondary)}.chip.active{background:var(--accent-primary-soft);color:var(--accent-primary);border-color:rgba(143,175,157,.24)}.chat-list{display:grid;gap:2px;align-content:start;overflow:auto;padding:0}.chat-list-shell,.memory-list-shell{min-height:0;overflow:hidden}.chat-list-shell{overflow-y:auto}.memory-list-shell{overflow-y:auto;padding-right:.25rem}.chat-list-item{display:grid;grid-template-columns:1fr auto;gap:.4rem;padding:9px 10px;border-radius:8px;border:1px solid transparent;background:transparent}.chat-list-item:hover{background:rgba(31,29,26,.04);border-color:transparent}.chat-list-item.active{background:var(--bg-raised);border-color:transparent}.chat-list-main{border:0;background:transparent;padding:0;display:grid;gap:3px;text-align:left}.chat-list-main strong{font-size:13px;font-weight:500;color:var(--text-primary)}.chat-list-main span{color:var(--text-muted);font-size:11px}.chat-menu-wrap{position:relative;align-self:start}.chat-action-menu{position:absolute;right:0;top:calc(100% + .45rem);width:220px;display:grid;gap:.25rem;padding:.5rem;border-radius:18px;border:1px solid var(--border-soft);background:var(--bg-raised);box-shadow:var(--shadow-menu);z-index:20}.menu-item{border:0;background:transparent;justify-content:flex-start;text-align:left;padding:.7rem .8rem}.menu-item.danger{color:var(--state-danger)}.appearance-card,.empty-context-card,.review-card,.review-summary-card,.settings-summary-card,.usage-card,.usage-detail-grid .settings-section{border:1px solid var(--border-soft);background:rgba(255,255,255,.03);border-radius:20px;padding:1rem}.settings-layout .settings-section{padding-top:1.5rem;border-top:1px solid var(--border-soft)}.settings-layout .settings-section:first-child{padding-top:0;border-top:none}.settings-danger-zone{padding-top:1.5rem;border-top:1px solid var(--border-soft)}.appearance-card,.review-summary-card,.settings-summary-card{display:grid;gap:.45rem}.memory-list-row{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.6rem;padding:.3rem;border-radius:16px;border:1px solid transparent}.memory-list-row:hover{background:rgba(255,255,255,.03)}.memory-list-row.active{background:rgba(165,143,191,.08);border-color:rgba(165,143,191,.2)}.memory-list-item{display:grid;gap:.35rem;width:100%;min-width:0;padding:.85rem .9rem;text-align:left;border-radius:16px;background:transparent;border-color:transparent}.memory-list-item strong{font-size:.94rem;min-width:0;overflow-wrap:anywhere}.memory-list-item span{color:var(--text-muted);font-size:.8rem;text-transform:lowercase;min-width:0;overflow-wrap:anywhere}.memory-item-tags{display:flex;gap:.4rem;flex-wrap:wrap}.memory-delete-button{align-self:start}.library-toolbar{display:grid;gap:1rem}.library-tabs{width:fit-content}.memory-library-list-shell{min-height:0;overflow:auto;padding-right:.25rem}.memory-library-list{display:grid;gap:.8rem;align-content:start}.main-stage{display:grid;overflow:hidden;background:var(--bg-app)}.chat-workspace{min-height:0;display:grid;grid-template-rows:auto 1fr auto;position:relative;overscroll-behavior:none}.chat-header,.detail-pane-head,.panel-head,.view-sheet-head{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem}.chat-header{align-items:center;padding:18px var(--content-padding-x);border-bottom:1px solid var(--border-soft)}.chat-header-copy{min-width:0;display:grid;gap:2px;flex:1}.chat-title-row{display:flex;align-items:center;gap:.5rem;min-width:0}.chat-header h1{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.chat-header h1,.chat-title-input{font-family:Fraunces,Georgia,serif;font-weight:600;font-size:22px;letter-spacing:-.01em}.chat-title-input{width:min(100%,480px);max-width:480px;line-height:1.1;padding:.2rem .35rem;border-radius:6px}.chat-header-actions{display:flex;gap:6px;align-items:center}.chat-header-status{margin:0;color:var(--text-muted);font-size:.78rem}.overrides-btn{padding:6px 14px;border-radius:8px;font-size:12px;font-weight:600;cursor:pointer}.overrides-btn.active{background:var(--accent-primary);color:var(--text-on-accent);border-color:transparent}.overrides-btn.active:hover:not(:disabled){background:var(--accent-primary-hover);border-color:transparent}.overrides-btn.inactive{background:var(--bg-raised);color:var(--text-muted);border:1px solid var(--border-soft)}.overrides-btn.inactive:hover:not(:disabled){background:var(--bg-field-hover);color:var(--text-secondary);border-color:var(--border-default)}.header-nav-button{flex-shrink:0}.messages{min-height:0;overflow:auto;overscroll-behavior:contain;display:grid;gap:1rem;padding:28px 0 16px;align-content:start}.messages.is-empty{align-content:center}.messages-virtuoso{min-height:0}.message-list-row{padding-bottom:1rem;padding-left:var(--content-padding-x);padding-right:var(--content-padding-x)}.message-history-loader{padding:3px var(--content-padding-x) 14px;font-size:.8rem}.message-day-divider{display:flex;align-items:center;justify-content:center;margin:.15rem 0}.message-day-divider span{display:inline-flex;align-items:center;justify-content:center;min-height:30px;padding:.2rem .8rem;border-radius:999px;border:1px solid var(--border-soft);background:rgba(255,255,255,.03);color:var(--text-muted);font-size:.76rem;font-weight:700;letter-spacing:.08em}.chat-empty-state,.empty-detail-pane{display:grid;align-content:start;justify-items:start;gap:.55rem;padding:1.2rem .1rem;max-width:30rem}.chat-empty-state.messages,.empty-detail-pane.messages{padding-left:var(--content-padding-x);padding-right:var(--content-padding-x)}.chat-empty-state h2,.empty-detail-pane h2{margin:0;font-size:1.2rem}.message-card{display:grid;gap:.8rem}.message-card.forward-selectable{cursor:pointer;position:relative}.message-card.forward-selected{outline:2px solid var(--accent-primary);outline-offset:3px}.forward-checkbox{position:absolute;top:.5rem;left:-1.75rem;width:1.1rem;height:1.1rem;border-radius:50%;border:2px solid var(--accent-primary);background:var(--bg-secondary);display:flex;align-items:center;justify-content:center;font-size:.65rem;color:var(--accent-primary);font-weight:700;flex-shrink:0}.message-card.forward-selected .forward-checkbox{background:var(--accent-primary);color:var(--bg-primary,#fff)}.message-card.user{width:fit-content;max-width:560px;margin-left:auto;margin-right:0;border-radius:14px 14px 4px 14px;border:none;padding:12px 16px;background:var(--bg-raised);font-family:"Source Serif 4",Georgia,serif;font-size:15.5px;line-height:1.5}.message-card.user .message-card-top{display:none}.message-card.user.failed-user-message .message-card-top{display:flex;justify-content:flex-end;margin-top:8px}.message-card.user .message-content{margin:0}.message-card.user-time{font-family:Inter,sans-serif;font-size:10.5px;color:var(--text-muted);margin-top:6px;text-align:right;letter-spacing:.02em}.message-card.assistant{align-self:flex-start;max-width:720px;padding:0;border:none}.message-card.assistant .message-card-top{display:flex;justify-content:flex-start;align-items:center;gap:8px;margin-left:0;margin-bottom:8px}.message-assistant-meta{font-family:Inter,sans-serif;font-size:11px;color:var(--text-muted);letter-spacing:.04em;display:flex;align-items:center;gap:6px}.message-assistant-dot{width:5px;height:5px;border-radius:50%;background:var(--accent-primary);flex-shrink:0;display:inline-block}.message-card.assistant .message-content{margin:0;font-family:"Source Serif 4",Georgia,serif;font-size:16px;line-height:1.6;color:var(--text-primary)}.small-action{min-height:30px;padding:.3rem .6rem;border-radius:999px;font-size:.76rem;background:rgba(255,255,255,.04)}.icon-only-action{min-width:32px;padding:0;display:inline-flex;align-items:center;justify-content:center}.forward-selection-bar{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.6rem .75rem;border:1px solid var(--border-soft);border-radius:14px;background:rgba(255,255,255,.04)}.forward-selection-meta{display:grid;gap:.2rem}.forward-selection-note{color:var(--text-muted);font-size:.82rem}.forward-selection-error{color:var(--state-danger);font-size:.82rem}.forward-selection-actions{display:inline-flex;align-items:center;gap:.5rem;flex-shrink:0}.forward-selection-target{display:inline-flex;align-items:center;gap:.4rem;font-size:.875rem;color:var(--text-secondary)}.forward-selection-target select{font-size:.875rem;padding:.25rem .5rem;border-radius:8px;border:1px solid var(--border-soft);background:var(--bg-input,var(--bg-secondary));color:var(--text-primary);cursor:pointer;max-width:180px}.message-content{overflow-x:hidden}.message-card.assistant .message-content{margin-top:1rem;margin-right:2rem;margin-left:2rem}.message-content p{margin:.4rem 0}.message-content ol,.message-content ul{margin:.25rem 0 .8rem 1.2rem}.message-content blockquote{margin:.75rem 0;padding:.5rem .85rem;border-left:3px solid var(--accent-primary);color:var(--text-secondary);background:rgba(255,255,255,.03);border-radius:0 14px 14px 0}.message-content table{width:100%;border-collapse:collapse;margin:.6rem 0}.message-content td,.message-content th{border:1px solid var(--border-soft);padding:.45rem .55rem;text-align:left;vertical-align:top}.inline-code{display:inline-flex;align-items:center;min-height:28px;padding:0 .45rem;border-radius:8px;border:1px solid var(--border-soft);background:var(--bg-field);font-size:.88em}.attachments{display:grid;gap:.55rem}.attachment-row{border:1px solid var(--border-soft);border-radius:14px;padding:.75rem;display:flex;justify-content:space-between;align-items:center;gap:.75rem;background:rgba(255,255,255,.03)}.attachment-actions{display:inline-flex;align-items:center;gap:.55rem;flex-wrap:wrap;justify-content:flex-end}.thinking{padding:0 var(--content-padding-x) 8px}.thinking,.tool-status{color:var(--text-muted)}.tool-status{margin-top:.7rem;display:inline-flex;align-items:center;gap:.5rem;padding:.45rem .7rem;border-radius:999px;border:1px solid var(--border-soft);background:rgba(255,255,255,.04);font-size:.92rem}.message-usage-meta{margin:.1rem 2rem 0;color:var(--text-muted);font-family:Inter,sans-serif;font-size:11px;line-height:1.4}.message-finish-warning{max-width:calc(100% - 4rem);margin:.1rem 2rem 0;padding:.42rem .65rem;border-radius:8px;border:1px solid rgba(214,170,120,.24);font-size:.82rem}.message-error-state,.message-finish-warning{display:inline-flex;align-items:center;width:fit-content;background:rgba(214,170,120,.1);color:#e2b775}.message-error-state{max-width:100%;padding:.45rem .7rem;border-radius:999px;border:1px solid rgba(214,170,120,.2);font-size:.85rem}.tool-status-dot{width:.55rem;height:.55rem;border-radius:999px;background:var(--accent);box-shadow:0 0 0 0 rgba(255,255,255,.28);animation:tool-status-pulse 1.2s ease-in-out infinite}@keyframes tool-status-pulse{0%{transform:scale(.9);opacity:.65}70%{transform:scale(1.15);opacity:1}to{transform:scale(.9);opacity:.65}}.composer{padding:14px 32px calc(22px + env(safe-area-inset-bottom));border-top:1px solid var(--border-soft);display:grid;gap:.55rem;background:var(--bg-app)}.composer-editing-row{display:flex;align-items:center;justify-content:space-between;gap:.75rem;flex-wrap:wrap}.composer-row{display:grid;grid-template-columns:auto minmax(0,1fr) auto auto;gap:.5rem;align-items:end;background:var(--bg-field);border:1px solid var(--border-soft);border-radius:12px;padding:4px 4px 4px 6px;max-width:960px;width:100%;margin:0 auto;transition:border-color .16s ease,background-color .16s ease}.composer-row:focus-within{border-color:var(--border-focus)}.composer-row-drag-active{border-color:var(--accent-primary);background:var(--accent-primary-soft);border-color:var(--accent);background:color-mix(in oklab,var(--accent) 10%,transparent)}.composer-attachments{align-items:center}.composer-status{font-size:.82rem}.composer-drop-hint,.composer-status-hint{font-size:.78rem;color:var(--muted)}.composer-icon-button{min-height:32px;min-width:32px;padding:0;display:inline-flex;align-items:center;justify-content:center;background:transparent;border-color:transparent;color:var(--text-muted)}.composer-icon-button:hover:not(:disabled){background:rgba(31,29,26,.06);border-color:transparent;color:var(--text-secondary)}.voice-input-button.recording{border-color:color-mix(in oklab,var(--state-danger) 60%,var(--border-soft));color:var(--state-danger);background:var(--state-danger-soft)}.composer-input{min-height:38px;max-height:180px;resize:none;overflow-y:hidden;line-height:1.45;padding:8px 4px;border:none;background:transparent;box-shadow:none;border-radius:0;font-family:"Source Serif 4",Georgia,serif;font-size:15px}.composer-input:focus,.composer-input:hover{border-color:transparent;background:transparent;box-shadow:none}.composer-input::placeholder{font-style:italic;color:var(--text-muted)}.send-btn{width:32px;height:32px;min-width:32px;min-height:32px;padding:0;border-radius:8px;border-color:transparent;display:inline-flex;align-items:center;justify-content:center;background:var(--accent-primary);color:var(--text-on-accent)}.send-btn:hover:not(:disabled){background:var(--accent-primary-hover);border-color:transparent}.send-btn:disabled{background:var(--accent-primary);border-color:transparent;opacity:.35}.hidden-file-input{display:none}.jump-to-latest-button{position:absolute;left:50%;bottom:calc(96px + env(safe-area-inset-bottom));transform:translateX(-50%);width:48px;height:48px;padding:0;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;box-shadow:var(--shadow-menu);z-index:4}.chat-workspace:has(.composer-input:focus) .jump-to-latest-button{display:none}.attachment-chip{display:inline-flex;align-items:center;gap:.4rem;padding:.24rem .32rem .24rem .55rem;border-radius:999px;border:1px solid var(--border-soft);background:var(--bg-raised);font-size:.8rem}.attachment-chip button{min-height:28px;padding:.1rem .5rem;border-radius:999px}.chip-status{display:inline-flex;align-items:center;min-height:22px;padding:0 .45rem;border-radius:999px;background:rgba(255,255,255,.04);color:var(--text-muted);font-size:.73rem}.detail-pane,.memory-library-stage,.panel-sheet,.view-sheet{min-height:0;height:100%}.detail-pane,.panel-sheet,.view-sheet{display:grid;align-content:start;gap:1.15rem;padding:1.5rem;overflow:auto}.modal-sheet{max-height:calc(100vh - 5rem);overflow:auto}.detail-back-row{display:grid;gap:.35rem;justify-items:start}.detail-section{display:grid;gap:.65rem}.detail-section p{margin:0;line-height:1.65;color:var(--text-secondary)}.detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.9rem;margin:0}.detail-grid div{display:grid;gap:.25rem;padding:.85rem .9rem;border:1px solid var(--border-soft);border-radius:16px;background:rgba(255,255,255,.03)}.detail-grid dt{color:var(--text-muted);font-size:.78rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.detail-grid dd{margin:0;color:var(--text-primary)}.review-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1rem}.review-card{display:grid;gap:.9rem}.review-card h3{margin:0;font-size:1rem}.review-card p{margin:0;color:var(--text-secondary);line-height:1.55}.review-card-head{display:flex;justify-content:space-between;gap:.75rem;align-items:flex-start}.review-banner{padding:.85rem 1rem;border-radius:18px;background:var(--accent-review-soft);color:var(--accent-review);border:1px solid rgba(127,167,184,.18);font-weight:700}.settings-2panel{display:grid;grid-template-columns:220px minmax(0,1fr);height:100%;overflow:hidden;background:var(--bg-app)}.settings-side-nav{background:var(--bg-rail);border-right:1px solid var(--border-soft);padding:22px 12px 20px;display:flex;flex-direction:column;gap:2px;overflow-y:auto}.settings-side-nav-brand{font-family:Fraunces,Georgia,serif;font-weight:600;font-size:18px;letter-spacing:-.01em;color:var(--text-primary);padding:0 8px;margin-bottom:26px}.settings-side-nav-label{font-size:10px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--text-muted);padding:0 8px;margin-bottom:6px}.settings-nav-item{padding:9px 10px;border-radius:8px;border:none;background:transparent;color:var(--text-secondary);font-size:13.5px;font-weight:400;cursor:pointer;text-align:left}.settings-nav-item:hover:not(:disabled){background:rgba(31,29,26,.04);border-color:transparent;color:var(--text-primary)}.settings-nav-item.active{color:var(--accent-primary);font-weight:600}.settings-nav-item.active,.settings-nav-item.active:hover:not(:disabled){background:var(--accent-primary-soft);border-color:transparent}.settings-nav-back{margin-top:auto;padding-top:14px;border-top:1px solid var(--border-soft)}.settings-nav-back button{width:100%;padding:9px 10px;border-radius:8px;border:none;background:transparent;color:var(--text-muted);font-size:13px;cursor:pointer;text-align:left}.settings-nav-back button:hover:not(:disabled){background:rgba(31,29,26,.04);color:var(--text-secondary);border-color:transparent}.settings-main-panel{display:flex;flex-direction:column;overflow:hidden;background:var(--bg-panel)}.settings-main-header{display:flex;align-items:center;justify-content:space-between;padding:20px 44px;border-bottom:1px solid var(--border-soft);flex-shrink:0}.settings-main-header h1{margin:0;font-family:Fraunces,Georgia,serif;font-weight:600;font-size:22px;letter-spacing:-.01em}.settings-main-content{flex:1;overflow:auto;padding:36px 44px 40px;max-width:680px}.settings-field{display:grid;gap:6px;margin-bottom:22px;max-width:100%}.settings-field>label{font-size:13px;font-weight:600;color:var(--text-secondary)}.settings-field-hint{font-size:12px;color:var(--text-muted);line-height:1.5}.settings-field.narrow input,.settings-field.narrow select{max-width:380px}.settings-field-grid-2{display:grid;grid-template-columns:1fr 1fr;gap:0 28px;max-width:560px}.settings-section-head{font-family:Inter,sans-serif;font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted);margin:0;padding-top:26px;border-top:1px solid var(--border-soft)}.settings-section-head:first-child{padding-top:0;border-top:none}.settings-layout{display:grid;gap:1rem;align-content:start;overflow-x:hidden}.settings-sheet{align-content:stretch;grid-template-rows:auto minmax(0,1fr) auto}.settings-section{display:grid;gap:1rem}details.settings-section{display:block}details.settings-section summary{cursor:pointer;list-style:none;display:flex;align-items:center;justify-content:space-between;gap:1rem}details.settings-section summary::-webkit-details-marker{display:none}details.settings-section summary h3{margin:0}details.settings-section summary:after{content:"›";font-size:1.3rem;color:var(--text-muted);transition:transform .2s;transform:rotate(90deg);flex-shrink:0}details.settings-section[open] summary:after{transform:rotate(-90deg)}details.settings-section .settings-fields{margin-top:1rem}.settings-section.compact{gap:.75rem}.override-stack,.settings-fields{display:grid;gap:.85rem}.override-modal-sheet{grid-template-rows:auto minmax(0,1fr) auto;overflow:hidden}.override-modal-body{min-height:0;overflow:auto;display:grid;align-content:start;gap:1.15rem;padding-right:.15rem}.overrides-sheet{position:fixed;top:0;right:0;bottom:0;width:360px;background:var(--bg-panel);border-left:1px solid var(--border-default);display:flex;flex-direction:column;overflow:hidden;z-index:40;animation:overrides-slide-in .22s ease-out}@keyframes overrides-slide-in{0%{transform:translateX(100%)}to{transform:translateX(0)}}@media (prefers-reduced-motion:reduce){.overrides-sheet{animation:none}.app-shell{transition:none}}.overrides-sheet-header{padding:16px 20px;border-bottom:1px solid var(--border-soft);display:flex;align-items:flex-start;justify-content:space-between;flex-shrink:0}.overrides-sheet-eyebrow{font-size:10px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--text-muted);margin:0 0 4px}.overrides-sheet-title{font-family:Fraunces,Georgia,serif;font-weight:600;font-size:16px;letter-spacing:-.01em;color:var(--text-primary);margin:0}.overrides-active-badge{padding:3px 9px;border-radius:999px;background:var(--accent-primary-soft);color:var(--accent-primary);font-size:11px;font-weight:700}.overrides-sheet-close{width:28px;height:28px;border-radius:8px;border:none;background:transparent;color:var(--text-muted);cursor:pointer;display:grid;place-items:center;padding:0;flex-shrink:0}.overrides-sheet-close:hover:not(:disabled){background:rgba(31,29,26,.06);border-color:transparent}.overrides-master-toggle{padding:12px 20px;border-bottom:1px solid var(--border-soft);display:flex;align-items:center;justify-content:space-between;flex-shrink:0}.overrides-body{flex:1;overflow:auto;padding:4px 20px 16px}.overrides-group-head{font-size:10px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--text-muted);padding:18px 0 4px}.overrides-field-row{padding:12px 0;border-bottom:1px solid var(--border-soft)}.overrides-field-row-head{display:flex;align-items:center;gap:10px}.overrides-field-label-wrap{flex:1;min-width:0}.overrides-field-label{font-size:13px;color:var(--text-secondary);font-weight:400;cursor:pointer}.overrides-field-label.active{font-weight:600;color:var(--text-primary)}.overrides-field-global{font-size:11px;color:var(--text-muted);margin-top:1px}.overrides-field-control{margin-top:10px}.override-enable-toggle{display:inline-flex;align-items:center;cursor:pointer}.override-value-control input,.override-value-control select,.override-value-control textarea{width:100%}.override-value-toggle{display:inline-flex;align-items:center;gap:.55rem;color:var(--text-secondary);cursor:pointer;font-size:.9rem}.override-value-toggle input{margin:0}.override-enable-toggle input,.override-value-toggle input{cursor:pointer}.override-value-toggle span{font-weight:700;color:var(--text-primary)}.overrides-sheet-footer{border-top:1px solid var(--border-soft);padding:12px 20px 20px;display:flex;gap:8px;justify-content:flex-end;flex-shrink:0}.appearance-card{gap:.7rem}.usage-card-grid,.usage-detail-grid{display:grid;gap:1rem}.usage-card-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.usage-card{display:grid;gap:.4rem}.settings-danger-zone{align-content:start}.usage-card small,.usage-card span{color:var(--text-muted)}.usage-card strong{font-size:1.45rem}.full-width-button{width:100%}.side-panel{width:460px;overflow:hidden;box-shadow:var(--shadow-drawer)}.debug-panel{background:rgba(24,26,31,.9)}:root[data-theme=light] .debug-panel{background:rgba(241,238,232,.95)}.two-column-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem}.debug-pre{margin:0;padding:1rem;border-radius:18px;border:1px solid var(--border-soft);background:#111318;color:#d7dee6;font-family:JetBrains Mono,IBM Plex Mono,monospace;font-size:.82rem;line-height:1.55;overflow:auto;white-space:pre-wrap;word-break:break-word;min-height:200px}:root[data-theme=light] .debug-pre{background:#f4f1eb;color:#2d3138}.modal-backdrop{position:fixed;inset:0;background:rgba(10,11,14,.54);display:grid;place-items:center;padding:1rem;z-index:60}.mobile-overlay-backdrop{padding:0;place-items:stretch start}.mobile-sidebar-sheet{width:min(420px,100vw);height:100dvh;display:grid;grid-template-rows:auto minmax(0,1fr) auto;border-radius:0 24px 24px 0;border-left:0;box-shadow:var(--shadow-drawer)}.mobile-sheet-topbar{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding-bottom:.75rem}.mobile-sheet-topbar .eyebrow{margin:0}.mobile-sheet-backdrop{padding:0;place-items:end center}.mobile-action-sheet{width:min(560px,100vw);border-radius:24px 24px 0 0;border-bottom:0;padding:.7rem 1rem calc(1rem + env(safe-area-inset-bottom))}.mobile-sheet-handle{width:44px;height:4px;border-radius:999px;background:var(--border-active);margin:0 auto .75rem}.mobile-action-sheet-head{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:.7rem}.mobile-action-list{display:grid;gap:.35rem}.mobile-action-list .menu-item{width:100%;border-radius:16px}.mobile-shell-header{display:flex;align-items:center;gap:.75rem;padding:.25rem 0}.mobile-shell-header strong{flex:1;min-width:0;font-size:1rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mobile-shell-spacer{width:44px;flex-shrink:0}.modal-card{width:min(560px,100%);display:grid;gap:1rem;padding:1.5rem}.debug-modal-card{width:min(920px,calc(100vw - 2rem))}.debug-modal-card,.memory-create-modal-card{max-height:calc(100vh - 2rem);overflow:hidden}.memory-create-modal-card{width:min(760px,calc(100vw - 2rem))}.forward-modal-card{width:min(680px,calc(100vw - 2rem));max-height:calc(100vh - 2rem);overflow:hidden}.forward-modal-sheet{gap:1rem}.forward-modal-note{margin:0;color:var(--text-muted);font-size:.9rem}.mobile-sheet-backdrop{align-items:end}.toast-error{border-radius:16px;background:rgba(177,118,118,.18);border:1px solid rgba(177,118,118,.24);color:var(--state-danger)}.toast-error,.toast-success{position:fixed;left:50%;bottom:20px;transform:translateX(-50%);max-width:min(640px,calc(100vw - 2rem));padding:.85rem 1rem;box-shadow:var(--shadow-menu);z-index:70;display:inline-flex;align-items:center;gap:.75rem}.toast-success{border-radius:16px;background:rgba(92,151,109,.18);border:1px solid rgba(92,151,109,.26);color:#84d298}.toast-dismiss{min-width:32px;min-height:32px;padding:0;border-radius:999px}.error{margin:0;color:var(--state-danger)}@media (max-width:1320px){.app-shell{grid-template-columns:280px minmax(0,1fr)}.side-panel{width:400px}}@media (max-width:1100px){.rail-link{min-height:44px}.side-panel{min-height:420px}.detail-grid,.two-column-grid,.usage-card-grid{grid-template-columns:1fr}}.mobile-tab-bar{display:grid;grid-template-columns:1fr 1fr 1fr;border-top:1px solid var(--border-soft);background:var(--bg-app);flex-shrink:0;padding-bottom:max(28px,env(safe-area-inset-bottom))}.mobile-tab{padding:10px 4px 12px;text-align:center;font-size:11px;color:var(--text-muted);background:transparent;border:none;cursor:pointer;display:flex;flex-direction:column;align-items:center;gap:3px}.mobile-tab.active{color:var(--accent-primary)}.mobile-tab svg{width:20px;height:20px}.mobile-chat-list-screen{display:flex;flex-direction:column;flex:1;min-height:0;background:var(--bg-app);overflow:hidden}.mobile-chat-list-head{display:flex;align-items:center;justify-content:space-between;padding:14px 16px 8px}.mobile-chat-list-head h2{font-family:Fraunces,Georgia,serif;font-weight:600;font-size:22px;letter-spacing:-.01em;color:var(--text-primary);margin:0}.mobile-new-chat-btn{margin:4px 16px 12px;padding:11px 14px;background:var(--accent-primary);color:var(--text-on-accent);font-size:14px;font-weight:600;cursor:pointer;border-radius:12px;text-align:center;border:none;width:calc(100% - 32px)}.mobile-new-chat-btn:hover:not(:disabled){background:var(--accent-primary-hover);border-color:transparent}.mobile-chat-list-body{flex:1;overflow-y:auto;padding:0 8px 12px;-webkit-overflow-scrolling:touch}.mobile-group-label{font-size:11px;font-weight:500;color:var(--text-muted);text-transform:uppercase;letter-spacing:.06em;padding:12px 10px 4px}.mobile-chat-row{padding:10px 12px;border-radius:10px;cursor:pointer;display:flex;align-items:baseline;justify-content:space-between;gap:12px;background:transparent;border:none;width:100%;text-align:left}.mobile-chat-row:active{background:rgba(31,29,26,.06)}.mobile-chat-row.active{background:var(--bg-raised)}.mobile-chat-row-content{min-width:0;flex:1}.mobile-chat-row-title{font-size:15px;font-weight:600;color:var(--text-primary)}.mobile-chat-row-meta,.mobile-chat-row-title{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mobile-chat-row-meta{font-size:12px;color:var(--text-muted);margin-top:2px}.mobile-chat-row-time{font-size:11px;color:var(--text-muted);white-space:nowrap;flex-shrink:0}@media (max-width:900px){.app-shell{grid-template-columns:1fr;min-height:0}.mobile-shell{display:flex;flex-direction:column;height:100dvh;overflow:hidden;padding-top:env(safe-area-inset-top)}.mobile-shell .main-stage{flex:1;min-height:0}.main-stage,.modal-card,.side-panel{border-radius:0}.modal-card{border-radius:20px}.chat-header,.composer,.messages{padding-left:var(--content-padding-x-mobile);padding-right:var(--content-padding-x-mobile)}.chat-header{gap:.5rem;padding-top:10px;padding-bottom:10px}.chat-header h1{font-size:17px}.chat-title-input{max-width:none;font-size:17px}.chat-header-status{display:none}.messages{padding:14px var(--content-padding-x-mobile) 6px;gap:14px}.message-history-loader,.message-list-row,.thinking{padding-left:var(--content-padding-x-mobile);padding-right:var(--content-padding-x-mobile)}.message-card.user{max-width:86%}.message-card.assistant{max-width:100%}.message-day-divider{margin:0}.message-day-divider span{width:100%;max-width:11rem}.chat-empty-state,.empty-detail-pane{padding:.7rem 0}.chat-empty-state.messages,.empty-detail-pane.messages{padding-left:var(--content-padding-x-mobile);padding-right:var(--content-padding-x-mobile)}.chat-empty-state h2,.empty-detail-pane h2{font-size:1.05rem}.composer{padding:8px 12px calc(env(safe-area-inset-bottom) + 8px);gap:.45rem}.jump-to-latest-button{bottom:calc(24px + env(safe-area-inset-bottom))}.composer-row{display:flex;flex-wrap:nowrap;align-items:flex-end;border:1px solid var(--border-soft);border-radius:22px;background:var(--bg-field);padding:4px;max-width:none;margin:0;gap:4px;transition:border-color .16s ease,background-color .16s ease}.composer-row:focus-within{border-color:var(--border-focus)}.composer-row-drag-active{border-color:var(--accent-primary);background:var(--accent-primary-soft)}.composer-input{order:0;flex:1;min-width:0;border:none;background:transparent;box-shadow:none;padding:8px 4px;min-height:38px;max-height:120px;font-size:16px}.composer-input:focus,.composer-input:hover{border-color:transparent;background:transparent;box-shadow:none}.composer-icon-button{order:1;min-width:34px;min-height:34px;width:34px;height:34px}.composer-icon-button:not(.voice-input-button){order:-1}.send-btn{width:34px;height:34px;min-width:34px;min-height:34px;border-radius:50%;order:2;margin-left:auto;min-width:40px;min-height:40px;border-radius:999px;background:var(--text-primary);border-color:transparent;color:var(--bg-app)}.send-btn:hover:not(:disabled){background:var(--text-secondary);border-color:transparent}.send-btn:disabled{background:var(--text-primary);border-color:transparent;opacity:.3}.chat-header-actions .icon-button,.header-nav-button{min-width:40px;min-height:40px}.attachment-row,.detail-pane-head,.message-card-top,.panel-head,.review-card-head,.view-sheet-head{flex-direction:column;align-items:flex-start}.message-card.assistant .message-card-top{align-items:flex-start}.memory-library-list,.memory-library-list-shell,.memory-list-item,.memory-list-row{min-width:0;max-width:100%}.memory-library-list-shell{overflow-x:hidden}.mobile-sidebar-sheet{width:min(100vw,420px)}.mobile-action-sheet{width:100vw;border-radius:20px 20px 0 0}.review-grid,.settings-2panel{grid-template-columns:1fr}.settings-2panel{grid-template-rows:auto 1fr}.settings-side-nav{flex-direction:row;overflow-x:auto;overflow-y:hidden;padding:10px 16px;gap:4px;border-right:none;border-bottom:1px solid var(--border-soft);scrollbar-width:none}.settings-side-nav::-webkit-scrollbar{display:none}.settings-nav-back,.settings-side-nav-brand,.settings-side-nav-label{display:none}.settings-nav-item{white-space:nowrap;flex-shrink:0;padding:7px 14px;border-radius:20px;font-size:13px}.settings-main-header{padding:16px 20px}.settings-main-content{padding:20px}}@media (max-width:760px){.modal-backdrop{padding:.75rem}.mobile-overlay-backdrop,.mobile-sheet-backdrop{padding:0}.mobile-sidebar-sheet{width:100vw;border-radius:0}}.svg-renderer{display:flex;flex-direction:column;gap:8px;margin:4px 0}.svg-preview{background:var(--bg-raised);border:1px solid var(--border-default);border-radius:10px;padding:16px;display:flex;justify-content:center;align-items:center;overflow:auto}.svg-preview svg{max-width:100%;height:auto}.svg-preview-error{color:var(--text-muted);font-size:.85rem;justify-content:flex-start}.svg-renderer-footer{display:flex;justify-content:flex-end}.svg-source-toggle{background:none;border:1px solid var(--border-default);border-radius:6px;color:var(--text-muted);cursor:pointer;font-size:.75rem;padding:3px 10px;transition:color .15s,border-color .15s}.svg-source-toggle:hover{border-color:var(--border-active);color:var(--text-secondary)}