:root{--bg: #0f0a0a;--surface: #1a0f0f;--ink: #f0e6e6;--ink-soft: #b8a8a8;--line: #2d1a1a;--grid-line: #4a2626;--brand: #f43f5e;--brand-soft: #2d0a0a;--brand-ink: #fca5a5;--brand-hover: color-mix(in srgb, var(--brand) 86%, white);--brand-busy: color-mix(in srgb, var(--brand) 40%, white);--brand-stop: color-mix(in srgb, var(--brand) 75%, var(--bg));--accent-bg: #2b2110;--accent-ink: #fbbf24;--accent-line: #f59e0b;--ok-bg: #10241b;--ok-ink: #6ee7a8;--err-bg: #2d0a0a;--err-ink: #fca5a5;--err-line: #ef4444;--scrollbar-thumb: color-mix(in srgb, var(--ink-soft) 60%, var(--surface));--scrollbar-track: color-mix(in srgb, var(--surface) 75%, var(--bg));--radius: 10px;--radius-sm: 6px;--shadow: 0 1px 2px rgb(0 0 0 / .3), 0 4px 16px rgb(0 0 0 / .35);--shadow-lg: 0 4px 10px rgb(0 0 0 / .4), 0 12px 32px rgb(0 0 0 / .5);--font: system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--mono: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;--header-h: 64px;--chat-column: 72rem}*{box-sizing:border-box}html{height:100%}html{background:var(--bg)}body{margin:0;font-family:var(--font);font-size:16px;line-height:1.55;color:var(--ink);background:transparent;position:relative;display:flex;flex-direction:column;min-height:100dvh}body:before{content:"";position:fixed;inset:0;z-index:-1;pointer-events:none;background-image:linear-gradient(to right,color-mix(in srgb,var(--grid-line) 60%,transparent) 1px,transparent 1px),linear-gradient(to bottom,color-mix(in srgb,var(--grid-line) 60%,transparent) 1px,transparent 1px);background-size:44px 44px;-webkit-mask-image:radial-gradient(140% 110% at 50% 0%,black 40%,transparent 90%);mask-image:radial-gradient(140% 110% at 50% 0%,black 40%,transparent 90%)}.container{width:100%;max-width:72rem;margin-inline:auto;padding-inline:1.25rem}[hidden]{display:none!important}.visually-hidden{position:absolute!important;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.skip-link{position:absolute;left:-9999px;top:0;background:var(--brand);color:var(--bg);padding:.6rem 1rem;border-radius:0 0 var(--radius-sm) 0;z-index:100}.skip-link:focus{left:0}:focus-visible{outline:3px solid var(--brand);outline-offset:2px;border-radius:4px}::selection{background:color-mix(in srgb,var(--brand) 45%,transparent);color:var(--ink)}.app-header{height:var(--header-h);background:var(--surface);position:sticky;top:0;z-index:20;flex-shrink:0}.app-header:after,.doc-header:after{content:"";position:absolute;inset-inline:0;bottom:-2px;height:2px;pointer-events:none;background:linear-gradient(90deg,color-mix(in srgb,var(--brand) 55%,transparent),color-mix(in srgb,var(--brand) 30%,transparent) 45%,color-mix(in srgb,var(--brand) 5%,transparent) 90%)}.header-inner{height:100%;display:flex;align-items:center;gap:1rem}.brand{display:inline-flex;align-items:center;gap:.55rem;font-size:1.125rem;color:var(--ink);text-decoration:none;min-width:0;overflow:hidden}.brand-text{font-family:var(--mono);font-size:.95rem;letter-spacing:.08em;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.brand-mark{width:22px;height:22px;flex:0 0 auto;display:block}.brand-mark path:nth-child(1){fill:var(--surface);stroke:var(--brand)}.brand-mark circle{fill:var(--brand)}.brand-mark path:nth-child(3){fill:none;stroke:var(--brand-ink)}.brand-text strong{color:var(--brand-ink);font-weight:700}.app-nav{display:flex;gap:.25rem;margin-left:auto}.nav-link{padding:.5rem .9rem;border-radius:999px;text-decoration:none;color:var(--ink-soft);font-weight:600;font-size:.95rem;min-height:44px;display:inline-flex;align-items:center}.nav-link:hover{background:var(--brand-soft);color:var(--brand-ink)}.nav-link.is-active{background:var(--brand);color:var(--bg)}.nav-toggle{display:none}.new-chat-btn{display:inline-flex;align-items:center;justify-content:center;gap:.4rem;min-height:44px;padding:.5rem .9rem;border-radius:999px;border:0;background:var(--brand);color:var(--bg);font:inherit;font-weight:700;font-size:.95rem;white-space:nowrap;cursor:pointer}.new-chat-btn:hover{background:var(--brand-hover);color:var(--bg)}.new-chat-btn svg{width:16px;height:16px;display:none}.share-chat-btn{display:inline-flex;align-items:center;justify-content:center;gap:.4rem;min-height:44px;padding:.5rem .9rem;border-radius:999px;border:0;background:var(--brand);color:var(--bg);font:inherit;font-weight:700;font-size:.95rem;white-space:nowrap;cursor:pointer}.share-chat-btn:hover{background:var(--brand-hover);color:var(--bg)}.share-chat-btn svg{width:16px;height:16px;display:none}.auth-link{display:inline-flex;align-items:center;justify-content:center;gap:.4rem;min-height:44px;padding:.5rem .9rem;border-radius:999px;border:1px solid var(--line);background:transparent;color:var(--ink-soft);font:inherit;font-weight:600;font-size:.95rem;white-space:nowrap;text-decoration:none;cursor:pointer}.auth-link:hover{background:var(--brand-soft);color:var(--brand-ink)}.auth-link:disabled{opacity:.6;cursor:wait}.auth-link svg{width:16px;height:16px;display:none}.sign-out-mobile,.sign-in-mobile{display:none}.app-main{flex:1;display:flex;flex-direction:column;padding-block:1.25rem}#view-chat{flex:1;display:flex;flex-direction:column}.chat-shell{max-width:var(--chat-column);margin-inline:auto;display:flex;flex-direction:column;gap:1rem;flex:1}.chat-actions{display:flex;flex-direction:row;align-items:center;justify-content:flex-end;gap:.6rem}.messages{flex:1 1 auto;display:flex;flex-direction:column;gap:.9rem;min-height:200px}.msg{display:flex;gap:.6rem;max-width:100%}.msg .avatar{flex:0 0 auto;width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:var(--brand-soft);border:1px solid var(--line)}.msg .avatar svg{width:20px;height:20px;display:block}.msg.brain .avatar{color:var(--brand-ink)}.msg.user .avatar{color:var(--ink-soft)}.msg-body{max-width:85%;min-width:0;display:flex;flex-direction:column;gap:.35rem}.bubble{padding:.7rem 1rem;border-radius:var(--radius);background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow);overflow-wrap:anywhere}.bubble p{margin:.2rem 0}.msg .bubble:empty{display:none}.bubble pre{background:var(--surface);color:var(--ink);padding:.7rem .9rem;border:1px solid var(--line);border-radius:var(--radius-sm);overflow-x:auto;font-size:.85rem;font-family:var(--mono)}.bubble code{font-family:var(--mono);font-size:.88em;background:var(--brand-soft);padding:.08em .35em;border-radius:5px}.bubble pre code{background:none;padding:0}.md-table-wrap{overflow-x:auto}.md-table{border-collapse:collapse;width:100%;min-width:max-content;font-size:.9rem}.md-table th,.md-table td{border:1px solid var(--line);padding:.4rem .6rem;text-align:left;vertical-align:top}.md-table thead th{background:var(--surface);color:var(--ink)}.md-quote{border-left:3px solid var(--brand-ink);padding:.25rem .75rem;margin:.5rem 0;color:var(--ink-soft)}.msg.user .bubble .md-quote{color:var(--bg)}.msg.user{justify-content:flex-end}.msg.user .msg-body{align-items:flex-end}.msg.user .bubble{background:var(--brand);border-color:var(--brand);color:var(--bg);border-bottom-right-radius:4px}.msg.user .bubble code{background:color-mix(in srgb,var(--bg) 16%,transparent)}.msg-image{display:block;width:auto;height:auto;max-width:100%;max-height:240px;object-fit:contain;border:1px solid var(--line);border-radius:var(--radius-sm);margin-bottom:.45rem}.msg-image-unavailable{display:block;margin-bottom:.45rem;font-size:.75rem;font-style:italic}.msg.brain .bubble{border-bottom-left-radius:4px}.msg.brain.is-deflected .bubble{background:var(--accent-bg);border-color:var(--accent-line)}details.thinking{background:var(--surface);border:1px solid var(--line);border-left:3px solid var(--brand-soft);border-radius:var(--radius-sm);margin:0 0 .5rem;overflow:hidden}details.thinking summary{display:flex;align-items:center;gap:.5rem;padding:.5rem .75rem;min-height:44px;color:var(--brand-ink);font-size:.9rem;cursor:pointer;list-style:none}details.thinking summary::-webkit-details-marker{display:none}details.thinking summary:before{content:"\25b8";display:inline-block;transition:transform .15s ease}details.thinking[open] summary:before{transform:rotate(90deg)}details.thinking summary:focus-visible{outline:3px solid var(--brand);outline-offset:2px}details.thinking .thinking-text{padding:0 .75rem .75rem;color:var(--ink-soft);font-size:.875rem;line-height:1.55;max-height:320px;overflow-y:auto}details.thinking .thinking-text p,details.thinking .thinking-text ul{margin:0 0 .5rem}details.reasoning{background:var(--surface);border:1px solid var(--line);border-left:3px solid var(--brand-soft);border-radius:var(--radius-sm);margin:0 0 .5rem;overflow:hidden}summary.reasoning-summary{display:flex;align-items:center;gap:.5rem;padding:.5rem .75rem;min-height:44px;color:var(--brand-ink);font-size:.9rem;cursor:pointer;list-style:none}summary.reasoning-summary::-webkit-details-marker{display:none}summary.reasoning-summary:before{content:"\25b8";display:inline-block;transition:transform .15s ease}details.reasoning[open] summary.reasoning-summary:before{transform:rotate(90deg)}summary.reasoning-summary:focus-visible{outline:3px solid var(--brand);outline-offset:2px}.reasoning-status{color:var(--ink-soft);font-size:.8rem;line-height:1.4;margin-left:.25rem}.reasoning-body{padding:0 .75rem .75rem;max-height:320px;overflow-y:auto}details.reasoning .thinking{border-left:2px solid var(--brand-soft);padding-left:.75rem;margin:.5rem 0}details.reasoning .thinking .thinking-summary{display:block;color:var(--brand-ink);font-size:.8rem;line-height:1.4;margin-bottom:.15rem}details.reasoning .thinking .thinking-text{padding:0 0 .75rem;color:var(--ink-soft);font-size:.875rem;line-height:1.55;max-height:none;overflow-y:visible}details.reasoning .thinking .thinking-text p,details.reasoning .thinking .thinking-text ul{margin:0 0 .5rem}details.reasoning .tool-calls-disclosure{border-left:2px solid var(--line);padding-left:.75rem;margin:.5rem 0}.tool-calls-disclosure{margin:.25rem 0}.tool-calls-summary{color:var(--accent-ink);font-size:.8rem;line-height:1.4;padding:.15rem 0}summary.tool-calls-summary{cursor:pointer;list-style:none}summary.tool-calls-summary::-webkit-details-marker{display:none}summary.tool-calls-summary:before{content:"\25b8";display:inline-block;margin-right:.5rem;transition:transform .15s ease}details.tool-calls-disclosure[open] summary.tool-calls-summary:before{transform:rotate(90deg)}.tool-calls{display:flex;flex-direction:column;gap:.25rem}.tool-call{color:var(--accent-ink);font-size:.8rem;line-height:1.4;overflow-wrap:anywhere}.tool-call code{font-family:var(--mono);font-size:.95em;color:var(--ink);overflow-wrap:anywhere}.tool-elapsed{font-family:var(--mono);font-size:.75rem;color:var(--ink-soft);margin-left:.5rem;white-space:nowrap}.tool-call .truncated-note{color:var(--ink-soft)}.msg-meta{font-size:.75rem;color:var(--ink-soft);padding-inline:.25rem;display:flex;flex-wrap:wrap;gap:.35rem;align-items:center}.msg-meta.msg-actions{justify-content:flex-end}.msg-meta.msg-images{flex-wrap:wrap;gap:.35rem;align-items:center}.source-chip{display:inline-flex;align-items:center;gap:.3rem;font-family:var(--mono);font-size:.72rem;background:var(--brand-soft);color:var(--brand-ink);border:1px solid var(--line);border-radius:999px;padding:.15rem .6rem;text-decoration:none;max-width:100%;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.source-chip:hover{background:var(--brand-soft);text-decoration:underline}.source-image{display:inline-flex;flex-direction:column;align-items:center;gap:.15rem;max-width:100%;min-width:0;text-decoration:none}.source-image-img{display:block;max-height:96px;max-width:100%;width:auto;height:auto;object-fit:contain;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-sm)}.source-image-caption{max-width:14rem;color:var(--ink-soft);font-size:.7rem;line-height:1.25;text-align:center;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.source-image:hover{text-decoration:underline}.answer-image{display:flex;flex-direction:column;align-items:center;gap:.2rem;max-width:100%;min-width:0}.answer-image-img{display:block;max-width:100%;max-height:320px;width:auto;height:auto;object-fit:contain;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-sm)}.answer-image-caption{max-width:100%;color:var(--ink-soft);font-size:.75rem;line-height:1.25;text-align:center;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}a.answer-image{text-decoration:none}a.answer-image:hover{text-decoration:underline}.related-docs-label{font-size:.68rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--ink-soft)}.related-doc{display:inline-flex;align-items:center;font-family:var(--mono);font-size:.7rem;color:var(--ink-soft);background:transparent;border:1px dashed var(--line);border-radius:999px;padding:.12rem .55rem;text-decoration:none;max-width:100%;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.related-doc:hover{color:var(--ink);text-decoration:underline}.maybe-try{display:flex;align-items:center;flex-wrap:wrap;gap:.45rem;padding-inline:.25rem}.tune-btn{display:inline-flex;align-items:center;justify-content:center;gap:.35rem;min-height:44px;padding:.35rem .8rem;border-radius:999px;border:1px solid var(--line);background:transparent;color:var(--ink-soft);font:inherit;font-weight:600;font-size:.82rem;white-space:nowrap;cursor:pointer}.tune-btn svg{width:14px;height:14px;display:block}.tune-btn:hover{background:var(--brand-soft);color:var(--brand-ink)}.retry-btn{display:inline-flex;align-items:center;justify-content:center;gap:.35rem;min-height:44px;padding:.35rem .8rem;border-radius:999px;border:1px solid var(--line);background:transparent;color:var(--ink-soft);font:inherit;font-weight:600;font-size:.82rem;white-space:nowrap;cursor:pointer}.retry-btn svg{width:14px;height:14px;display:block}.retry-btn:hover{background:var(--brand-soft);color:var(--ink)}.continue-btn{display:inline-flex;align-items:center;justify-content:center;gap:.35rem;min-height:44px;padding:.35rem .8rem;border-radius:999px;border:1px solid var(--line);background:transparent;color:var(--ink-soft);font:inherit;font-weight:600;font-size:.82rem;white-space:nowrap;cursor:pointer}.continue-btn svg{width:14px;height:14px;display:block}.continue-btn:hover{background:var(--brand-soft);color:var(--ink)}.edit-btn{display:inline-flex;align-items:center;justify-content:center;gap:.35rem;min-height:44px;padding:.35rem .8rem;border-radius:999px;border:1px solid var(--line);background:transparent;color:var(--ink-soft);font:inherit;font-weight:600;font-size:.82rem;white-space:nowrap;cursor:pointer}.edit-btn svg{width:14px;height:14px;display:block}.edit-btn:hover{background:var(--brand-soft);color:var(--ink)}.save-as-doc-btn{display:inline-flex;align-items:center;justify-content:center;gap:.35rem;min-height:44px;padding:.35rem .8rem;border-radius:999px;border:1px solid var(--line);background:transparent;color:var(--ink-soft);font:inherit;font-weight:600;font-size:.82rem;white-space:nowrap;cursor:pointer}.save-as-doc-btn svg{width:14px;height:14px;display:block}.save-as-doc-btn:hover{background:var(--brand-soft);color:var(--brand-ink)}.save-as-doc-btn:disabled{opacity:.6;cursor:wait}.stopped-note{display:inline-flex;align-items:center;gap:.3rem;color:var(--ink-soft);font-size:.75rem;font-weight:600;white-space:nowrap;pointer-events:none}.stopped-note svg{width:10px;height:10px;display:block;fill:currentColor}.failed-note{display:inline-flex;align-items:flex-start;gap:.3rem;max-width:100%;color:var(--err-ink);font-size:.75rem;font-weight:600;pointer-events:none}.failed-note svg{width:10px;height:10px;margin-top:.15rem;display:block;flex:none;fill:none;stroke:currentColor}.failed-detail{font-weight:400;overflow-wrap:anywhere}.tune-form{display:flex;flex-direction:column;gap:.5rem;background:var(--surface);border:1px solid var(--brand-soft);border-radius:var(--radius-sm);padding:.75rem .85rem}.tune-form label{font-size:.85rem;font-weight:600;color:var(--ink-soft)}.tune-form textarea{font:inherit;font-size:.9rem;color:var(--ink);background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-sm);padding:.5rem .6rem;resize:vertical;min-height:2.6rem}.tune-form-actions{display:flex;gap:.5rem}.tune-save{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:.4rem 1.1rem;border:0;border-radius:var(--radius-sm);background:var(--brand);color:var(--bg);font:inherit;font-weight:700;cursor:pointer}.tune-save:hover:not(:disabled){background:var(--brand-hover)}.tune-save:disabled{opacity:.6;cursor:wait}.tune-cancel{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:.4rem 1rem;border-radius:var(--radius-sm);border:1px solid var(--line);background:transparent;color:var(--ink-soft);font:inherit;font-weight:600;cursor:pointer}.tune-cancel:hover{background:var(--brand-soft);color:var(--brand-ink)}.tune-saved{margin:.2rem 0 0 .25rem;background:var(--ok-bg);color:var(--ok-ink);border:1px solid color-mix(in srgb,var(--ok-ink) 35%,transparent);border-radius:var(--radius-sm);padding:.45rem .8rem;font-size:.85rem;font-weight:600}.tune-error{margin:0 0 0 .25rem;background:var(--err-bg);color:var(--err-ink);border:1px solid var(--err-line);border-radius:var(--radius-sm);padding:.45rem .8rem;font-size:.85rem;font-weight:600}.edit-form{display:flex;flex-direction:column;gap:.5rem}.edit-form label{font-size:.85rem;font-weight:600;color:var(--bg)}.edit-form textarea{font:inherit;font-size:.9rem;color:var(--ink);background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-sm);padding:.5rem .6rem;width:100%;resize:vertical;min-height:2.6rem}.edit-form-actions{display:flex;gap:.5rem}.edit-save{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:.4rem 1.1rem;border:1px solid var(--bg);border-radius:var(--radius-sm);background:var(--brand);color:var(--bg);font:inherit;font-weight:700;cursor:pointer}.edit-save:hover:not(:disabled){background:var(--brand-hover)}.edit-save:disabled{opacity:.6;cursor:wait}.edit-cancel{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:.4rem 1rem;border-radius:var(--radius-sm);border:1px solid var(--line);background:transparent;color:var(--bg);font:inherit;font-weight:600;cursor:pointer}.edit-cancel:hover{background:var(--brand-soft);color:var(--brand-ink)}.edit-error{margin:0 0 0 .25rem;background:var(--err-bg);color:var(--err-ink);border:1px solid var(--err-line);border-radius:var(--radius-sm);padding:.45rem .8rem;font-size:.85rem;font-weight:600}.steering-panel{background:var(--surface);border:1px solid var(--brand-soft);border-radius:var(--radius);box-shadow:var(--shadow);padding:.9rem 1.1rem 1rem}.steering-panel-head{display:flex;flex-wrap:wrap;align-items:baseline;gap:.15rem .6rem}.steering-panel-title{margin:0;font-size:1rem;font-weight:700;color:var(--ink)}.steering-panel-sub{margin:0;font-size:.82rem;color:var(--ink-soft)}.steering-list{list-style:none;margin:.65rem 0 0;padding:0;display:flex;flex-direction:column;gap:.4rem}.steering-note{display:flex;align-items:stretch;gap:.6rem;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-sm);padding:.35rem .4rem .35rem .8rem}.steering-note-text{color:var(--ink);font-size:.9rem;line-height:1.45;white-space:pre-wrap;overflow-wrap:anywhere;flex:1;min-width:0}.steering-delete{display:inline-flex;align-items:center;justify-content:center;min-height:44px;min-width:44px;flex:0 0 auto;border:1px solid var(--line);border-radius:var(--radius-sm);background:transparent;color:var(--ink-soft);cursor:pointer}.steering-delete svg{width:16px;height:16px;display:block}.steering-delete:hover:not(:disabled){background:var(--err-bg);color:var(--err-ink);border-color:var(--err-line)}.steering-delete:disabled{opacity:.5;cursor:wait}.steering-empty{margin:.65rem 0 0;color:var(--ink-soft);font-size:.88rem}.app-main>.steering-panel{width:calc(100% - 2.5rem);max-width:69.5rem;margin-inline:auto}.tuning-shell{display:flex;flex-direction:column;gap:1.25rem;flex:1}#tune-form{display:flex;flex-direction:column;align-items:flex-start;gap:.6rem;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:.9rem 1rem 1rem}#tune-form:focus-within{border-color:var(--brand);box-shadow:0 0 0 3px var(--brand-soft),var(--shadow)}#tune-note{width:100%;font:inherit;font-size:.95rem;color:var(--ink);background:transparent;border:0;padding:.2rem .1rem;resize:vertical;min-height:4.6rem}#tune-note::placeholder{color:var(--ink-soft)}#tune-save{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:.4rem 1.2rem;border:0;border-radius:var(--radius-sm);background:var(--brand);color:var(--bg);font:inherit;font-weight:700;cursor:pointer}#tune-save:hover:not(:disabled){background:var(--brand-hover)}#tune-save:disabled{opacity:.6;cursor:wait}.tuning-panel{background:var(--surface);border:1px solid var(--brand-soft);border-radius:var(--radius);box-shadow:var(--shadow);padding:.9rem 1.1rem 1rem}.tuning-panel-title{margin:0;font-size:1rem;font-weight:700;color:var(--ink)}.tuning-list{list-style:none;margin:.65rem 0 0;padding:0;display:flex;flex-direction:column}.tuning-note{display:flex;align-items:center;gap:.6rem;padding:.35rem 0;border-bottom:1px solid var(--line)}.tuning-note:last-child{border-bottom:0}.tuning-note-text{color:var(--ink);font-size:.9rem;line-height:1.45;flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tuning-edit,.tuning-delete{display:inline-flex;align-items:center;justify-content:center;gap:.35rem;min-height:44px;min-width:44px;flex:0 0 auto;padding:.35rem .7rem;border:1px solid var(--line);border-radius:var(--radius-sm);background:transparent;color:var(--ink-soft);font:inherit;font-weight:600;font-size:.82rem;white-space:nowrap;cursor:pointer}.tuning-edit svg,.tuning-delete svg{width:14px;height:14px;display:block}.tuning-edit:hover:not(:disabled){background:var(--brand-soft);color:var(--brand-ink);border-color:var(--brand-soft)}.tuning-delete:hover:not(:disabled){background:var(--err-bg);color:var(--err-ink);border-color:var(--err-line)}.tuning-edit:disabled,.tuning-delete:disabled{opacity:.5;cursor:wait}.tuning-note.is-editing{flex-direction:column;align-items:stretch;gap:.5rem;background:var(--surface);border:1px solid var(--brand-soft);border-radius:var(--radius-sm);padding:.6rem .7rem}.tuning-note.is-editing .tuning-note-text,.tuning-note.is-editing .tuning-edit,.tuning-note.is-editing .tuning-delete{display:none}.tuning-edit-form{display:flex;flex-direction:column;gap:.5rem;width:100%}.tuning-edit-input{font:inherit;font-size:.9rem;color:var(--ink);background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-sm);padding:.5rem .6rem;resize:vertical;min-height:2.6rem}.tuning-edit-input::placeholder{color:var(--ink-soft)}.tuning-edit-form-actions{display:flex;gap:.5rem}.tuning-saved{background:var(--ok-bg);color:var(--ok-ink);border:1px solid color-mix(in srgb,var(--ok-ink) 35%,transparent);border-radius:var(--radius-sm);padding:.45rem .8rem;font-size:.85rem;font-weight:600}.tuning-error{background:var(--err-bg);color:var(--err-ink);border:1px solid var(--err-line);border-radius:var(--radius-sm);padding:.45rem .8rem;font-size:.85rem;font-weight:600}#tune-empty{margin:.65rem 0 0;color:var(--ink-soft);font-size:.88rem;font-style:italic;text-align:center}.typing{display:inline-flex;align-items:center;gap:5px;padding:.9rem 1rem}.typing span{width:8px;height:8px;border-radius:50%;background:var(--ink-soft);opacity:.5;animation:typing 1.2s infinite ease-in-out}.typing span:nth-child(2){animation-delay:.15s}.typing span:nth-child(3){animation-delay:.3s}@keyframes typing{0%,60%,to{transform:translateY(0);opacity:.4}30%{transform:translateY(-5px);opacity:1}}.typing span.typing-elapsed{width:auto;height:auto;border-radius:0;background:none;opacity:1;animation:none;font-family:var(--mono);font-size:.75rem;color:var(--ink-soft);margin-left:.5rem}@media (prefers-reduced-motion: reduce){.typing span{animation:none;opacity:.7}.typing span.typing-elapsed{opacity:1}details.thinking summary:before{transition:none}summary.tool-calls-summary:before{transition:none}summary.reasoning-summary:before{transition:none}}.turn-loader{display:inline-flex;align-items:center;width:auto;height:44px;background:none;border-radius:0;opacity:1;align-self:flex-end;animation:none}.turn-loader svg{width:49px;height:32px;overflow:visible}.turn-loader .bw-ghost{fill:none;stroke:var(--ink-soft);stroke-opacity:.3;stroke-width:2}.turn-loader .bw-pulse{fill:none;stroke:var(--brand);stroke-width:2.5;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:42 98;animation:bwdraw .9s linear infinite}@keyframes bwdraw{0%{stroke-dashoffset:140}to{stroke-dashoffset:0}}@media (prefers-reduced-motion: reduce){.turn-loader .bw-pulse{animation:none;stroke-dasharray:none}}.empty-state{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:2.5rem 1.75rem;text-align:center;margin-top:1rem}.empty-state-glyph{color:var(--brand-ink);width:44px;height:44px;margin-inline:auto}.empty-state-glyph svg{width:44px;height:44px;display:block}.empty-state-title{margin:.8rem 0 .4rem;font-size:1.5rem;color:var(--ink)}.empty-state-sub{margin:0 auto 1.25rem;max-width:34rem;color:var(--ink-soft)}.empty-state-sub code{font-family:var(--mono);font-size:.85em;background:var(--brand-soft);padding:.1em .35em;border-radius:5px}.suggestions{display:flex;flex-wrap:wrap;gap:.5rem;justify-content:center;list-style:none;margin:0;padding:0}.suggestion-chip{font:inherit;font-size:.92rem;font-weight:600;color:var(--brand-ink);background:var(--brand-soft);border:1px solid var(--line);border-radius:999px;padding:.55rem 1rem;min-height:44px;cursor:pointer;transition:background .15s ease,transform .05s ease;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%;min-width:0}.suggestion-chip:hover{background:var(--brand-soft)}.suggestion-chip:active{transform:scale(.98)}.chat-bottom{display:flex;flex-direction:column;gap:.5rem;position:sticky;bottom:env(safe-area-inset-bottom,0)}#view-chat:not(.chat-booted) .chat-bottom,#view-chat:not(.chat-booted) .composer{position:static}.char-count{margin:0;text-align:right;font-size:.75rem;line-height:1.2;color:var(--ink-soft)}.char-count.is-max{color:var(--err-ink)}.attach-preview{display:flex;align-items:center;gap:.5rem;margin:0 0 .45rem;padding:.35rem .5rem;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-sm)}.attach-preview-img{flex:none;width:48px;height:48px;object-fit:cover;border:1px solid var(--line);border-radius:4px;background:var(--bg)}.attach-preview-name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.85rem;color:var(--ink)}.attach-preview-remove{display:inline-flex;align-items:center;justify-content:center;flex:none;width:44px;min-height:44px;border:0;border-radius:var(--radius-sm);background:transparent;color:var(--ink-soft);cursor:pointer;padding:0}.attach-preview-remove svg{width:18px;height:18px}.attach-preview-remove:hover{background:var(--err-bg);color:var(--err-ink)}.attach-preview.is-uploading .attach-preview-img{opacity:.5}.attach-preview.is-uploading .attach-preview-name{visibility:hidden}.attach-preview-status{display:inline-flex;align-items:center;gap:.35rem;color:var(--ink-soft);font-size:.85rem;min-width:0}.attach-preview-status-icon{width:14px;height:14px;flex:0 0 auto;animation:spin 1s linear infinite}@media (prefers-reduced-motion: reduce){.attach-preview-status-icon{animation:none}}.attach-preview.is-uploading .attach-preview-remove{opacity:.5}.composer{display:flex;align-items:flex-end;gap:.6rem;position:sticky;bottom:env(safe-area-inset-bottom,0);background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:.6rem}.composer:focus-within{border-color:var(--brand);box-shadow:0 0 0 3px var(--brand-soft),var(--shadow)}.composer textarea{flex:1;font:inherit;color:var(--ink);border:0;resize:none;max-height:12rem;padding:.55rem .5rem;background:transparent}.composer textarea::placeholder{color:var(--ink-soft)}.attach-btn{display:inline-flex;align-items:center;justify-content:center;flex:none;width:44px;min-height:44px;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface);color:var(--ink-soft);cursor:pointer;padding:0}.attach-btn svg{width:20px;height:20px}.attach-btn:hover{background:var(--brand-soft);border-color:var(--brand-soft);color:var(--brand-ink)}.send-btn{display:inline-flex;align-items:center;justify-content:center;gap:.45rem;min-width:84px;min-height:44px;border:0;border-radius:var(--radius-sm);background:var(--brand);color:var(--bg);font:inherit;font-weight:700;cursor:pointer;padding-inline:1rem}.send-btn:hover:not(:disabled){background:var(--brand-hover)}.send-btn:disabled{background:var(--brand-busy);cursor:not-allowed}.send-btn.is-stop{background:var(--brand-stop);color:#fff}.send-btn.is-stop:hover{background:color-mix(in srgb,var(--brand) 55%,var(--bg))}.spinner{width:16px;height:16px;border:2.5px solid color-mix(in srgb,var(--bg) 30%,transparent);border-top-color:var(--bg);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion: reduce){.spinner{animation-duration:2s}}.kb-banner{display:flex;align-items:center;gap:.5rem;background:var(--accent-bg);color:var(--accent-ink);border:1px solid var(--accent-line);border-radius:var(--radius-sm);padding:.6rem .9rem;font-size:.92rem;font-weight:600}.kb-banner.is-error{background:var(--err-bg);color:var(--err-ink);border-color:var(--err-line)}.kb-banner svg{width:18px;height:18px;flex:0 0 auto;display:block}.stale-banner{flex-wrap:wrap}.stale-banner>span{flex:1 1 auto}.stale-regenerate{display:inline-flex;align-items:center;justify-content:center;gap:.4rem;min-height:44px;margin-left:auto;padding:.5rem .9rem;border-radius:999px;border:0;background:var(--brand);color:var(--bg);font:inherit;font-weight:700;font-size:.95rem;white-space:nowrap;cursor:pointer}.stale-regenerate:hover{background:var(--brand-hover);color:var(--bg)}.stale-regenerate:disabled{opacity:.6;cursor:wait}.stale-regenerate svg{width:16px;height:16px;display:block}.banner-retry{display:inline-flex;align-items:center;justify-content:center;gap:.4rem;min-height:44px;margin-left:auto;padding:.5rem .9rem;border-radius:999px;border:0;background:var(--brand);color:var(--bg);font:inherit;font-weight:700;font-size:.95rem;white-space:nowrap;cursor:pointer}.banner-retry:hover{background:var(--brand-hover);color:var(--bg)}.banner-retry:disabled{opacity:.6;cursor:wait}.banner-retry svg{width:16px;height:16px;display:block}.toast{position:fixed;top:calc(var(--header-h) + .75rem);right:1rem;z-index:1000;max-width:min(22rem,calc(100vw - 2rem));padding:.6rem 1rem;border-radius:var(--radius-sm);background:var(--brand);color:var(--bg);font-size:.92rem;font-weight:600;box-shadow:var(--shadow);opacity:0;pointer-events:none;transform:translateY(-8px);transition:opacity .2s ease,transform .2s ease}.toast.is-visible{opacity:1;transform:translateY(0)}@media (prefers-reduced-motion: reduce){.toast,.toast.is-visible{transform:none}.toast{transition:opacity .12s ease}}.login-shell{display:flex;justify-content:center;flex:1}.login-card{width:100%;max-width:26rem;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:2rem 2rem 2.25rem}.login-card h1{margin:0 0 .4rem;font-size:1.6rem}.login-sub{margin:0 0 1.5rem;color:var(--ink-soft)}#login-form{display:flex;flex-direction:column;gap:.75rem}#login-password{font:inherit;font-size:1rem;color:var(--ink);background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-sm);padding:.55rem .75rem;min-height:44px}#login-password:focus-visible{border-color:var(--brand)}.login-submit{display:inline-flex;align-items:center;justify-content:center;min-height:44px;border:0;border-radius:var(--radius-sm);background:var(--brand);color:var(--bg);font:inherit;font-weight:700;cursor:pointer;padding-inline:1rem}.login-submit:hover:not(:disabled){background:var(--brand-hover)}.login-submit:disabled{opacity:.6;cursor:wait}.login-error{margin:.9rem 0 0;background:var(--err-bg);color:var(--err-ink);border:1px solid var(--err-line);border-radius:var(--radius-sm);padding:.5rem .8rem;font-size:.9rem;font-weight:600}.sources-shell{display:flex;flex-direction:column;gap:1.25rem;flex:1}.page-head{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:1rem 1.25rem}.page-head h1{margin:0 0 .25rem;font-size:1.7rem}.page-head-row{display:flex;align-items:center;gap:1rem}.page-sub{margin:0;color:var(--ink-soft)}.page-sub code{font-family:var(--mono);font-size:.85em;background:var(--brand-soft);padding:.1em .35em;border-radius:5px}.sync-btn{display:inline-flex;align-items:center;justify-content:center;gap:.4rem;min-height:44px;padding:.5rem .9rem;border-radius:999px;border:1px solid var(--line);background:transparent;color:var(--ink-soft);font:inherit;font-weight:600;font-size:.95rem;white-space:nowrap;cursor:pointer;flex-shrink:0}.sync-btn:hover{background:var(--brand-soft);color:var(--brand-ink)}.sync-btn:disabled{opacity:.6;cursor:wait}.sync-btn.is-error{background:var(--err-bg);color:var(--err-ink);border-color:var(--err-line)}.sync-btn.is-error:hover{background:var(--err-bg);color:var(--err-ink)}.sync-cancel-btn{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:.5rem .9rem;border-radius:999px;border:1px solid var(--line);background:transparent;color:var(--ink-soft);font:inherit;font-weight:600;font-size:.95rem;white-space:nowrap;cursor:pointer;flex-shrink:0}.sync-cancel-btn:hover:not(:disabled){background:var(--brand-soft);color:var(--brand-ink)}.sync-cancel-btn:disabled{opacity:.6;cursor:default}.sync-cancel-btn[hidden]{display:none}.sync-icon{width:16px;height:16px;display:block;flex:0 0 auto}.sync-btn .sync-icon.is-spinning{animation:spin 1s linear infinite}@media (prefers-reduced-motion: reduce){.sync-btn .sync-icon.is-spinning{animation:none}}.sync-label{display:inline-flex;align-items:baseline;gap:.35rem;min-width:0;max-width:min(16rem,40vw)}.sync-label-main{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sync-label-count,.sync-label-chunk{flex:0 0 auto;white-space:nowrap;font-family:var(--mono)}.sync-progress{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:.75rem 1rem;min-height:4rem}.sync-progress-text{display:block;font-family:var(--mono);font-size:.8rem;line-height:1.55;color:var(--ink-soft);overflow-wrap:anywhere}.sync-btn.is-running .sync-label{display:none}.sync-modal-backdrop{position:fixed;inset:0;z-index:1000;display:flex;align-items:center;justify-content:center;padding:1rem;background:color-mix(in srgb,var(--bg) 82%,transparent);visibility:hidden;opacity:0;transition:opacity .12s ease}.sync-modal-backdrop.is-open{visibility:visible;opacity:1}.sync-modal{position:relative;width:100%;max-width:28rem;background:var(--err-bg);border:1px solid var(--err-line);border-radius:var(--radius);box-shadow:var(--shadow-lg);padding:1.1rem 3rem 1.25rem 1.25rem}#sync-modal-title{margin:0 0 .6rem;font-size:1.1rem;color:var(--ink)}#sync-modal-error{margin:0 0 1rem;font-family:var(--mono);font-size:.9rem;color:var(--err-ink);overflow-wrap:anywhere}.sync-modal-close{position:absolute;top:.3rem;right:.3rem;display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;padding:0;border-radius:999px;border:1px solid var(--err-line);background:transparent;color:var(--err-ink);font-size:1.2rem;line-height:1;cursor:pointer}.sync-modal-close:hover{background:color-mix(in srgb,var(--err-line) 15%,transparent)}@media (prefers-reduced-motion: reduce){.sync-modal-backdrop{transition:none}}.stat-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:.9rem}.stat-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:1.1rem 1.25rem;display:flex;flex-direction:column;gap:.15rem}.stat-value{font-family:var(--mono);font-size:2rem;font-weight:800;color:var(--brand-ink);line-height:1.1}.stat-value-sm{font-size:1.15rem;font-weight:700}.stat-label{color:var(--ink-soft);font-size:.88rem;font-weight:600}.sources-gate{display:flex;flex-direction:column;align-items:center;text-align:center;gap:.4rem;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:2.5rem 1.75rem}.sources-gate-glyph{color:var(--brand-ink);width:44px;height:44px}.sources-gate-glyph svg{width:44px;height:44px;display:block}.sources-gate h2{margin:.6rem 0 .3rem;font-size:1.4rem}.sources-gate-sub{margin:0 auto;max-width:30rem;color:var(--ink-soft)}.sources-gate-link{display:inline-flex;align-items:center;justify-content:center;min-height:44px;margin-top:.75rem;padding:.5rem 1.4rem;border-radius:999px;background:var(--brand);color:var(--bg);font-weight:700;text-decoration:none}.sources-gate-link:hover{background:var(--brand-hover)}.auth-gate{position:fixed;inset:0;z-index:15;display:flex;overflow-y:auto;background:var(--bg)}.auth-gate[hidden]{display:none}.auth-gate-card{display:flex;flex-direction:column;align-items:center;text-align:center;gap:.4rem;margin:auto;width:min(28rem,calc(100vw - 2rem));background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:2.5rem 1.75rem}.auth-gate-glyph{color:var(--brand-ink);width:44px;height:44px}.auth-gate-glyph svg{width:44px;height:44px;display:block}.auth-gate h2{margin:.6rem 0 .3rem;font-size:1.4rem}.auth-gate-sub{margin:0;max-width:24rem;color:var(--ink-soft)}.auth-gate form{display:flex;flex-direction:column;gap:.6rem;width:100%;margin-top:.9rem}.auth-gate input{font-family:var(--mono);font-size:.95rem;color:var(--ink);background:var(--bg);border:1px solid var(--line);border-radius:var(--radius-sm);padding:.65rem .8rem;min-height:44px;width:100%}.auth-gate input::placeholder{color:var(--ink-soft)}.auth-gate input:focus-visible{outline-offset:0;border-color:var(--brand)}.auth-gate-submit{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:.4rem 1.1rem;border:0;border-radius:var(--radius-sm);background:var(--brand);color:var(--bg);font:inherit;font-weight:700;cursor:pointer}.auth-gate-submit:hover:not(:disabled){background:var(--brand-hover)}.auth-gate-submit:disabled{opacity:.6;cursor:wait}.auth-gate-error{margin:.75rem 0 0;background:var(--err-bg);color:var(--err-ink);border:1px solid var(--err-line);border-radius:var(--radius-sm);padding:.45rem .8rem}.table-wrap{position:relative;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);overflow:auto;max-height:min(70vh,64rem)}.table-wrap table thead th{position:sticky;top:0;z-index:1;background:var(--brand-soft)}.cell-clip{display:block;min-width:0;max-width:12rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.docs-table{width:100%;border-collapse:collapse;min-width:640px;font-size:.93rem}.docs-table th,.docs-table td{text-align:left;padding:.7rem 1rem;border-bottom:1px solid var(--line);white-space:nowrap}.docs-table th{color:var(--brand-ink);font-size:.82rem;text-transform:uppercase;letter-spacing:.04em}.docs-table td:nth-child(2){font-family:var(--mono);font-size:.82rem;max-width:30rem;overflow:hidden;text-overflow:ellipsis}.docs-table tbody tr:hover{background:var(--bg)}.docs-table tbody tr:last-child td{border-bottom:0}.kb-crumb{display:flex;flex-wrap:wrap;align-items:center;gap:.1rem .3rem;margin:.9rem 0 0;font-size:.92rem}.kb-crumb-link{color:var(--brand-ink);text-decoration:none;padding:.25rem .35rem;border-radius:var(--radius-sm)}.kb-crumb-link:hover{background:var(--brand-soft);text-decoration:underline}.kb-crumb-current{color:var(--ink);font-weight:600;padding:.25rem .35rem}.kb-crumb-sep{color:var(--ink-soft)}.kb-level{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:1rem 1.25rem;margin:.9rem 0 .75rem}.kb-level h2{margin:0 0 .35rem;font-family:var(--mono);font-size:1rem;color:var(--brand-ink);word-break:break-all}.kb-level p{margin:0;color:var(--ink-soft)}.kb-folders-table{min-width:480px}.kb-folders-table td:nth-child(2){font-family:var(--font);font-size:inherit;max-width:none}.kb-folders-table td:nth-child(4){white-space:nowrap;min-width:18rem;max-width:44rem;font-size:.88rem}.kb-desc-cell{display:flex;align-items:center;gap:.4rem;min-width:0}.kb-desc-text{flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.folder-link{color:var(--brand-ink);text-decoration:none;border-radius:var(--radius-sm)}.folder-link:hover,.folder-link:focus-visible{background:var(--brand-soft);text-decoration:underline}.kb-level-loading{color:var(--ink-soft)}.kb-doc-path{display:flex;align-items:center;gap:.5rem;min-width:0;max-width:100%}.kb-doc-path .doc-link{flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis}.kb-doc-thumb{flex:0 0 auto;display:block;width:48px;height:48px;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--bg);color:var(--ink-soft);overflow:hidden}.kb-doc-thumb-img{display:block;width:100%;height:100%;object-fit:cover}.kb-doc-thumb-glyph{display:flex;align-items:center;justify-content:center;width:100%;height:100%;padding:9px;box-sizing:border-box}.kb-doc-thumb-glyph svg{width:100%;height:100%}.kb-summary-edit{flex:0 0 auto;display:inline-flex;align-items:center;max-width:100%;min-width:0;min-height:24px;padding:.15rem .7rem;border:1px solid var(--line);border-radius:999px;background:transparent;color:var(--ink-soft);font:inherit;font-weight:600;font-size:.78rem;letter-spacing:.02em;cursor:pointer}.kb-summary-edit:hover{background:var(--brand-soft);color:var(--brand-ink);border-color:var(--brand)}.kb-summary-edit[hidden]{display:none}.kb-level-body .kb-summary-edit{margin-top:.5rem}.kb-summary-editor{display:block;width:100%;min-height:8rem;padding:.6rem .8rem;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--bg);color:var(--ink);font:inherit;line-height:1.5;resize:vertical}.kb-desc-cell .kb-summary-editor{flex:1 1 auto;min-width:0}.kb-summary-actions{display:flex;align-items:center;gap:.5rem;margin-top:.75rem}.kb-summary-save{display:inline-flex;align-items:center;min-height:32px;padding:.35rem .95rem;border:0;border-radius:999px;background:var(--brand);color:var(--bg);font:inherit;font-weight:600;font-size:.85rem;cursor:pointer}.kb-summary-save:hover{background:var(--brand-hover)}.kb-summary-save:disabled{opacity:.6;cursor:default}.kb-summary-cancel{display:inline-flex;align-items:center;min-height:32px;padding:.35rem .95rem;border:1px solid var(--line);border-radius:999px;background:transparent;color:var(--ink-soft);font:inherit;font-weight:600;font-size:.85rem;cursor:pointer}.kb-summary-cancel:hover{background:var(--err-bg);color:var(--err-ink);border-color:var(--err-line)}.kb-summary-status{margin:.6rem 0 0;font-size:.85rem;color:var(--ink-soft)}.kb-summary-status:empty{margin-top:0}.kb-summary-pending{color:var(--ink-soft)}.git-sources-shell{display:flex;flex-direction:column;gap:1.25rem;flex:1}#git-source-form,#archive-upload-form{display:flex;flex-wrap:wrap;align-items:center;gap:.6rem;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:.9rem 1rem 1rem}#git-source-form:focus-within,#archive-upload-form:focus-within{border-color:var(--brand);box-shadow:0 0 0 3px var(--brand-soft),var(--shadow)}#git-source-form>label,#archive-upload-form>label{color:var(--ink);font-weight:600;white-space:nowrap}.field-hint{color:var(--ink-soft);font-weight:400;font-size:.8rem}#git-source-url,#git-source-branch,#git-source-token{flex:1;min-width:14rem;min-height:44px;font-family:var(--mono);font-size:.88rem;color:var(--ink);background:var(--bg);border:1px solid var(--line);border-radius:var(--radius-sm);padding:.45rem .7rem}#git-source-url::placeholder,#git-source-branch::placeholder,#git-source-token::placeholder{color:var(--ink-soft)}#git-source-url:focus-visible,#git-source-branch:focus-visible,#git-source-token:focus-visible{outline-offset:0;border-color:var(--brand)}#git-source-add,#archive-upload-btn{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:.4rem 1.2rem;border:0;border-radius:var(--radius-sm);background:var(--brand);color:var(--bg);font:inherit;font-weight:700;cursor:pointer}#git-source-add:hover:not(:disabled),#archive-upload-btn:hover:not(:disabled){background:var(--brand-hover)}#git-source-add:disabled,#archive-upload-btn:disabled{opacity:.6;cursor:wait}#archive-upload-file{flex:1;min-width:14rem;min-height:44px;font-family:var(--mono);font-size:.88rem;color:var(--ink);background:var(--bg);border:1px solid var(--line);border-radius:var(--radius-sm);padding:.3rem .5rem}#archive-upload-file:focus-visible{outline-offset:0;border-color:var(--brand)}#archive-upload-file::file-selector-button{min-height:34px;margin-right:.6rem;padding:.3rem .9rem;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface);color:var(--ink);font:inherit;font-size:.85rem;font-weight:600;cursor:pointer}#archive-upload-file::file-selector-button:hover{border-color:var(--brand);color:var(--brand-ink)}#archive-upload-result{flex-basis:100%;margin:0;color:var(--ink-soft);background:var(--surface);border:1px dashed var(--line);border-radius:var(--radius-sm);padding:.45rem .8rem;font-size:.85rem;font-weight:600}.git-source-error{flex-basis:100%;margin:0;background:var(--err-bg);color:var(--err-ink);border:1px solid var(--err-line);border-radius:var(--radius-sm);padding:.45rem .8rem;font-size:.85rem;font-weight:600}.git-source-load-error{display:flex;flex-wrap:wrap;align-items:center;gap:.6rem;background:var(--err-bg);color:var(--err-ink);border:1px solid var(--err-line);border-radius:var(--radius);box-shadow:var(--shadow);padding:.7rem .9rem;font-size:.9rem;font-weight:600}.git-source-load-error>span{flex:1;min-width:12rem}#git-sources-retry{min-height:44px;padding:.4rem 1rem;border:1px solid var(--err-line);border-radius:var(--radius-sm);background:transparent;color:var(--err-ink);font:inherit;font-weight:700;cursor:pointer}#git-sources-retry:hover{background:color-mix(in srgb,var(--err-line) 12%,transparent)}.git-source-env-note{margin:0;background:var(--brand-soft);color:var(--brand-ink);border:1px solid var(--brand-soft);border-radius:var(--radius-sm);padding:.6rem .9rem;font-size:.88rem}.git-source-env-note code{font-family:var(--mono);font-size:.85em;background:var(--surface);color:var(--brand-ink);padding:.1em .35em;border-radius:5px}.git-source-hint{margin:0;color:var(--ink-soft);background:var(--surface);border:1px dashed var(--line);border-radius:var(--radius-sm);padding:.6rem .9rem;font-size:.88rem}.remove-confirm{position:fixed;inset:0;z-index:1000;display:flex}.remove-confirm[hidden]{display:none}.remove-confirm-backdrop{position:fixed;inset:0;background:color-mix(in srgb,var(--bg) 82%,transparent)}.remove-confirm-panel{position:relative;z-index:1;margin:auto;width:min(var(--chat-column),calc(100vw - 2rem));padding:1.5rem;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-lg)}.remove-confirm-title{margin:0 0 .75rem;font-size:1.25rem;line-height:1.3;color:var(--ink)}.remove-confirm-source{display:block;margin:0 0 .75rem;padding:.5rem .65rem;font-family:var(--mono);font-size:.85rem;line-height:1.5;color:var(--ink);background:var(--bg);border:1px solid var(--line);border-radius:var(--radius-sm);overflow-wrap:anywhere}.remove-confirm-copy{margin:0;color:var(--ink)}.remove-confirm-error{margin:.75rem 0 0;padding:.5rem .65rem;color:var(--err-ink);background:var(--err-bg);border:1px solid var(--err-line);border-radius:var(--radius-sm)}.remove-confirm-actions{display:flex;justify-content:flex-end;gap:.6rem;margin-top:1.1rem}.remove-confirm-btn{min-height:44px;min-width:44px;padding:.55rem 1.1rem;border-radius:var(--radius-sm);font:inherit;font-weight:600;font-size:.9rem;white-space:nowrap;cursor:pointer}.remove-confirm-btn:disabled{opacity:.5;cursor:wait}.remove-confirm-cancel{border:1px solid var(--line);background:transparent;color:var(--ink-soft)}.remove-confirm-cancel:hover:not(:disabled){background:var(--brand-soft);color:var(--brand-ink)}.remove-confirm-remove{border:1px solid var(--err-line);background:var(--err-bg);color:var(--err-ink)}.remove-confirm-remove:hover:not(:disabled){background:var(--err-line);color:var(--bg)}.ignore-editor{position:fixed;inset:0;z-index:1000;display:flex}.ignore-editor[hidden]{display:none}.ignore-editor-backdrop{position:fixed;inset:0;background:color-mix(in srgb,var(--bg) 82%,transparent)}.ignore-editor-panel{position:relative;z-index:1;margin:auto;width:min(var(--chat-column),calc(100vw - 2rem));padding:1.5rem;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-lg)}.ignore-editor-title{margin:0 0 .75rem;font-size:1.25rem;line-height:1.3;color:var(--ink)}.ignore-editor-source{display:block;margin:0 0 .75rem;padding:.5rem .65rem;font-family:var(--mono);font-size:.85rem;line-height:1.5;color:var(--ink);background:var(--bg);border:1px solid var(--line);border-radius:var(--radius-sm);overflow-wrap:anywhere}.ignore-editor-copy{margin:0 0 1rem;color:var(--ink)}.ignore-editor-copy code{font-family:var(--mono);font-size:.85em}.ignore-editor-label{display:block;margin-bottom:.35rem;color:var(--ink-soft);font-size:.88rem;font-weight:600}.ignore-editor-textarea{display:block;width:100%;min-height:9rem;padding:.55rem .65rem;font-family:var(--mono);font-size:.85rem;line-height:1.5;color:var(--ink);background:var(--bg);border:1px solid var(--line);border-radius:var(--radius-sm);resize:vertical}.ignore-editor-token-label{margin-top:.9rem}.ignore-editor-token,#ignore-editor-branch{display:block;width:100%;min-height:44px;padding:.55rem .65rem;font-family:var(--mono);font-size:.85rem;color:var(--ink);background:var(--bg);border:1px solid var(--line);border-radius:var(--radius-sm)}.ignore-editor-branch-hint{margin:.35rem 0 1rem;color:var(--ink-soft);font-size:.8rem}.ignore-editor-error{margin:.75rem 0 0;padding:.5rem .65rem;color:var(--err-ink);background:var(--err-bg);border:1px solid var(--err-line);border-radius:var(--radius-sm)}.ignore-editor-actions{display:flex;justify-content:flex-end;gap:.6rem;margin-top:1.1rem}.ignore-editor-btn{min-height:44px;min-width:44px;padding:.55rem 1.1rem;border-radius:var(--radius-sm);font:inherit;font-weight:600;font-size:.9rem;white-space:nowrap;cursor:pointer}.ignore-editor-btn:disabled{opacity:.5;cursor:wait}.ignore-editor-cancel{border:1px solid var(--line);background:transparent;color:var(--ink-soft)}.ignore-editor-cancel:hover:not(:disabled){background:var(--brand-soft);color:var(--brand-ink)}.ignore-editor-save{border:0;background:var(--brand);color:var(--bg)}.ignore-editor-save:hover:not(:disabled){background:var(--brand-hover)}.git-sources-table{width:100%;border-collapse:collapse;min-width:560px;font-size:.93rem}.git-sources-table th,.git-sources-table td{text-align:left;padding:.7rem 1rem;border-bottom:1px solid var(--line);white-space:nowrap}.git-sources-table th{color:var(--brand-ink);font-size:.82rem;text-transform:uppercase;letter-spacing:.04em}.git-sources-table td.git-source-url-cell{font-family:var(--mono);font-size:.82rem}.git-sources-table td.git-source-url-cell code{font-family:inherit}.git-source-kind{display:inline-block;margin-right:.55rem;padding:.08rem .5rem;border-radius:999px;font-family:var(--font);font-size:.72rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;vertical-align:.06em;white-space:nowrap}.git-source-kind.is-git{color:var(--brand-ink);background:var(--brand-soft)}.git-source-kind.is-local{color:var(--ok-ink);background:var(--ok-bg)}.git-sources-table tbody tr:hover{background:var(--bg)}.git-sources-table tbody tr:last-child td{border-bottom:0}.git-source-remove{display:inline-flex;align-items:center;justify-content:center;gap:.35rem;max-width:100%;min-height:44px;min-width:44px;flex:0 0 auto;padding:.35rem .7rem;border:1px solid var(--line);border-radius:var(--radius-sm);background:transparent;color:var(--ink-soft);font:inherit;font-weight:600;font-size:.82rem;white-space:nowrap;cursor:pointer}.git-source-remove svg{width:14px;height:14px;display:block}.git-source-remove:hover:not(:disabled){background:var(--err-bg);color:var(--err-ink);border-color:var(--err-line)}.git-source-remove:disabled{opacity:.5;cursor:wait}.git-source-ignore{display:inline-flex;align-items:center;justify-content:center;max-width:100%;min-height:44px;min-width:44px;flex:0 0 auto;padding:.35rem .7rem;margin-right:.4rem;border:1px solid var(--line);border-radius:var(--radius-sm);background:transparent;color:var(--ink-soft);font:inherit;font-weight:600;font-size:.82rem;white-space:nowrap;cursor:pointer}.git-source-ignore:hover:not(:disabled){background:var(--brand-soft);color:var(--brand-ink)}.git-source-ignore-count{display:inline-block;margin-left:.55rem;padding:.08rem .5rem;border:1px solid var(--line);border-radius:999px;font-size:.72rem;font-weight:600;color:var(--ink);background:var(--bg);white-space:nowrap}.git-source-hidden{display:inline-flex;align-items:center;gap:.4rem;max-width:100%;height:44px;padding:0 .5rem;font-size:.8rem;color:var(--ink);cursor:pointer;user-select:none;white-space:nowrap}.git-source-hidden input[type=checkbox]{width:1.05rem;height:1.05rem;margin:0;accent-color:var(--brand);cursor:pointer}.git-source-hidden:disabled{opacity:.5;cursor:wait}.git-source-hidden-count,.git-source-branch-count{display:inline-block;margin-left:.55rem;padding:.08rem .5rem;border:1px solid var(--line);border-radius:999px;font-size:.72rem;font-weight:600;color:var(--ink);background:var(--bg);white-space:nowrap}.git-source-env-tag{color:var(--brand-ink);background:var(--brand-soft);border-radius:999px;padding:.2rem .6rem;font-size:.78rem;font-weight:600}.git-sources-empty{margin:0;padding:1.4rem 1rem;text-align:center;color:var(--ink-soft);font-style:italic;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow)}#view-history .page-head{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:.75rem 1.5rem}#view-history .page-head .page-head-title{min-width:0}.history-refresh{display:inline-flex;align-items:center;justify-content:center;gap:.4rem;min-height:44px;padding:.5rem .9rem;border-radius:999px;border:0;background:var(--brand);color:var(--bg);font:inherit;font-weight:700;font-size:.95rem;white-space:nowrap;cursor:pointer;flex-shrink:0}.history-refresh:hover{background:var(--brand-hover);color:var(--bg)}.history-refresh:disabled{opacity:.6;cursor:wait}.history-refresh svg{width:16px;height:16px;display:none}.history-shell{display:flex;flex-direction:column;gap:1.25rem;flex:1}.history-status{display:block;min-height:1.2em;color:var(--ink-soft);font-family:var(--mono);font-size:.8rem;padding-block:.25rem}.history-table{width:100%;border-collapse:collapse;min-width:640px;font-size:.93rem}.history-table th,.history-table td{text-align:left;padding:.7rem 1rem;border-bottom:1px solid var(--line);vertical-align:middle}.history-table th{color:var(--brand-ink);font-size:.82rem;text-transform:uppercase;letter-spacing:.04em}.history-table tbody tr:hover{background:var(--bg)}.history-table tbody tr:last-child td{border-bottom:0}.history-title-cell{max-width:34rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.history-title-link{color:var(--brand-ink);font-weight:600;text-decoration:none}.history-title-link:hover{text-decoration:underline}.history-title-link:focus-visible{outline:3px solid var(--brand);outline-offset:2px}.history-count-cell{font-family:var(--mono);color:var(--ink-soft)}.history-updated-cell,.history-stale-cell{color:var(--ink-soft);white-space:nowrap}.stale-pill{display:inline-block;padding:.15rem .55rem;border:1px solid var(--err-line);border-radius:999px;background:var(--err-bg);color:var(--err-ink);font-size:.75rem;font-weight:700;line-height:1.45;white-space:nowrap}.history-actions{display:inline-flex;align-items:center;gap:.4rem;max-width:100%}.history-delete{min-height:44px;min-width:0;padding:.35rem .7rem;border:1px solid var(--line);border-radius:var(--radius-sm);background:transparent;color:var(--ink-soft);font:inherit;font-weight:600;font-size:.82rem;white-space:nowrap;cursor:pointer}.history-delete:hover:not(:disabled){background:var(--err-bg);color:var(--err-ink);border-color:var(--err-line)}.history-delete:disabled{opacity:.5;cursor:wait}.history-confirm-text{color:var(--err-ink);font-size:.82rem;font-weight:700;white-space:nowrap}.history-confirm-yes{min-height:44px;padding:.35rem .7rem;border:1px solid var(--err-line);border-radius:var(--radius-sm);background:var(--err-bg);color:var(--err-ink);font:inherit;font-weight:700;font-size:.82rem;white-space:nowrap;cursor:pointer}.history-confirm-yes:hover:not(:disabled){background:color-mix(in srgb,var(--err-line) 18%,transparent)}.history-confirm-yes:disabled{opacity:.6;cursor:wait}.history-confirm-no{min-height:44px;padding:.35rem .7rem;border:1px solid var(--line);border-radius:var(--radius-sm);background:transparent;color:var(--ink-soft);font:inherit;font-weight:600;font-size:.82rem;white-space:nowrap;cursor:pointer}.history-confirm-no:hover{background:var(--brand-soft);color:var(--brand-ink)}.history-share{display:inline-flex;align-items:center;gap:.4rem;flex-wrap:nowrap;max-width:100%}.history-share-cell{white-space:nowrap}.history-share-create,.history-share-copy,.history-unshare{min-height:44px;min-width:0;padding:.35rem .7rem;border:1px solid var(--line);border-radius:var(--radius-sm);background:transparent;color:var(--ink-soft);font:inherit;font-weight:600;font-size:.82rem;white-space:nowrap;cursor:pointer}.history-share-create:hover:not(:disabled),.history-share-copy:hover:not(:disabled){background:var(--brand-soft);color:var(--brand-ink)}.history-unshare:hover:not(:disabled){background:var(--err-bg);color:var(--err-ink);border-color:var(--err-line)}.history-share-create:disabled,.history-share-copy:disabled,.history-unshare:disabled{opacity:.5;cursor:wait}.share-link-fallback{display:inline-block;max-width:14rem;padding:.35rem .55rem;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface);color:var(--ink);font-family:var(--mono);font-size:.78rem;text-decoration:none;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;vertical-align:middle}.share-link-fallback:hover{border-color:var(--brand)}.share-link-fallback:focus-visible{outline:3px solid var(--brand);outline-offset:2px}.history-empty-row td{padding:2.25rem 1rem;text-align:center;color:var(--ink-soft);font-style:italic}.tokens-shell{display:flex;flex-direction:column;gap:1.25rem;flex:1}.tokens-status{display:block;min-height:1.2em;color:var(--ink-soft);font-family:var(--mono);font-size:.8rem;padding-block:.25rem}.token-create{display:flex;align-items:center;gap:.6rem}#token-label{flex:1;min-width:0;min-height:44px;padding:.35rem .7rem;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface);color:var(--ink);font:inherit;font-size:.93rem}#token-label:focus-visible{outline:3px solid var(--brand);outline-offset:2px}.token-generate{min-height:44px;padding:.4rem 1.1rem;border:0;border-radius:999px;background:var(--brand);color:var(--bg);font:inherit;font-weight:600;font-size:.9rem;white-space:nowrap;cursor:pointer}.token-generate:hover:not(:disabled){background:var(--brand-hover);color:var(--bg)}.token-generate:disabled{opacity:.6;cursor:wait}.token-once{display:flex;flex-direction:column;gap:.5rem;padding:.9rem 1rem;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--brand-soft)}.token-once-copy{margin:0;color:var(--brand-ink);font-size:.85rem;font-weight:600}.token-once-row{display:flex;align-items:center;gap:.6rem}#token-once-value{flex:1;min-width:0;min-height:44px;padding:.35rem .55rem;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface);color:var(--ink);font-family:var(--mono);font-size:.78rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}#token-once-value:focus-visible{outline:3px solid var(--brand);outline-offset:2px}#token-once-copy{min-height:44px;padding:.35rem .7rem;border:1px solid var(--line);border-radius:var(--radius-sm);background:transparent;color:var(--ink-soft);font:inherit;font-weight:600;font-size:.82rem;white-space:nowrap;cursor:pointer}#token-once-copy:hover{background:var(--brand-soft);color:var(--brand-ink);border-color:var(--brand)}.tokens-table{width:100%;border-collapse:collapse;min-width:640px;font-size:.93rem}.tokens-table th,.tokens-table td{text-align:left;padding:.7rem 1rem;border-bottom:1px solid var(--line);vertical-align:middle}.tokens-table th{color:var(--brand-ink);font-size:.82rem;text-transform:uppercase;letter-spacing:.04em}.tokens-table tbody tr:hover{background:var(--bg)}.tokens-table tbody tr:last-child td{border-bottom:0}.tokens-label-cell{max-width:20rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:600}.tokens-date-cell,.tokens-status-cell{color:var(--ink-soft);white-space:nowrap}.tokens-actions{display:inline-flex;align-items:center;gap:.4rem}.token-revoke{min-height:44px;padding:.35rem .7rem;border:1px solid var(--line);border-radius:var(--radius-sm);background:transparent;color:var(--ink-soft);font:inherit;font-weight:600;font-size:.82rem;white-space:nowrap;cursor:pointer}.token-revoke:hover:not(:disabled){background:var(--err-bg);color:var(--err-ink);border-color:var(--err-line)}.token-revoke:disabled{opacity:.5;cursor:wait}.token-regenerate{min-height:44px;padding:.35rem .7rem;border:1px solid var(--line);border-radius:var(--radius-sm);background:transparent;color:var(--ink-soft);font:inherit;font-weight:600;font-size:.82rem;white-space:nowrap;cursor:pointer}.token-regenerate:hover:not(:disabled){background:var(--brand-soft);color:var(--brand-ink)}.token-regenerate:disabled{opacity:.5;cursor:wait}.tokens-empty-row td{padding:2.25rem 1rem;text-align:center;color:var(--ink-soft);font-style:italic}.token-search{width:100%;min-height:44px;padding:.55rem .8rem;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface);color:var(--ink);font:inherit;font-size:.9rem}.tokens-revoked-heading{margin:1.5rem 0 .5rem;font-family:var(--mono);font-size:1rem;color:var(--brand-ink)}.theme-shell{display:flex;flex-direction:column;gap:1.25rem;flex:1}#theme-form{display:flex;flex-direction:column;gap:1rem;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:1rem 1.1rem 1.1rem}.theme-group{margin:0;padding:0;border:0;display:flex;flex-direction:column;gap:.6rem}.theme-group-title{padding:0;font-size:1rem;font-weight:700;color:var(--ink)}#theme-form fieldset label{font-size:.88rem;font-weight:600;color:var(--ink-soft)}#theme-form fieldset input[type=text]{width:100%;min-height:44px;padding:.35rem .7rem;border:1px solid var(--line);border-radius:var(--radius-sm);background:transparent;color:var(--ink);font:inherit;font-size:.93rem}.theme-note{margin:0;font-size:.8rem;line-height:1.35;color:var(--ink-soft)}.theme-colors{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.6rem .9rem}.theme-color{display:flex;flex-direction:column;gap:.3rem;min-width:0}.theme-color label{font-size:.8rem;font-weight:600;color:var(--ink-soft);line-height:1.25}.theme-color input[type=color]{inline-size:56px;block-size:44px;padding:3px;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--bg);cursor:pointer}.theme-actions{display:flex;gap:.6rem;margin-top:.2rem}#theme-save{min-height:44px;padding:.4rem 1.2rem;border:0;border-radius:999px;background:var(--brand);color:var(--bg);font:inherit;font-weight:700;font-size:.9rem;white-space:nowrap;cursor:pointer}#theme-save:hover:not(:disabled){background:var(--brand-hover);color:var(--bg)}#theme-save:disabled{opacity:.6;cursor:wait}.theme-reset{min-height:44px;padding:.4rem 1rem;border:1px solid var(--line);border-radius:999px;background:transparent;color:var(--ink-soft);font:inherit;font-weight:600;font-size:.9rem;white-space:nowrap;cursor:pointer}.theme-reset:hover:not(:disabled){background:var(--brand-soft);color:var(--brand-ink);border-color:var(--brand)}.theme-reset:disabled{opacity:.6;cursor:wait}.theme-error,.theme-result,.theme-contrast{display:block;margin:0;min-height:1.2em;font-family:var(--mono);font-size:.8rem;padding-block:.25rem}.theme-error{color:var(--err-ink)}.theme-result{color:var(--ok-ink)}.theme-contrast{background:var(--err-bg);color:var(--err-ink);border:1px solid var(--err-line);border-radius:var(--radius-sm);padding:.45rem .8rem}.settings-shell{display:flex;flex-direction:column;gap:1.25rem;flex:1}#settings-content{display:flex;flex-direction:column;gap:1.25rem}.settings-table{width:100%;border-collapse:collapse;min-width:560px;font-size:.93rem}.settings-table th,.settings-table td{text-align:left;vertical-align:top;padding:.7rem 1rem;border-bottom:1px solid var(--line)}.settings-table td{white-space:nowrap}.settings-group-row th{background:var(--brand-soft);color:var(--ink);font-weight:700;font-size:.82rem;text-transform:uppercase;letter-spacing:.04em;border-top:1px solid var(--line)}.settings-table tbody tr.settings-row:hover td{background:var(--bg)}.settings-name-cell label{margin:0;font-weight:600;min-width:0}.settings-env{font-family:var(--mono);font-size:.78rem;color:var(--ink-soft)}.settings-flag{display:inline-block;margin-top:.25rem;padding:.06rem .5rem;border:1px solid var(--accent-line);border-radius:999px;font-size:.72rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;background:var(--accent-bg);color:var(--accent-ink)}.settings-control{width:100%;min-width:0;min-height:44px;padding:.35rem .7rem;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface);color:var(--ink);font-family:var(--mono);font-size:.85rem}.settings-control:disabled{opacity:.6}.settings-src{display:inline-block;padding:.12rem .55rem;border-radius:999px;font-family:var(--mono);font-size:.72rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;white-space:nowrap}.settings-src.is-db{background:var(--brand-soft);color:var(--brand-ink)}.settings-src.is-env{background:var(--surface);color:var(--ink-soft);border:1px solid var(--line)}.settings-src.is-default{background:var(--line);color:var(--ink-soft)}.settings-row.is-dirty>td:first-child{box-shadow:inset 3px 0 0 var(--brand)}.settings-reset{min-height:44px;padding:.35rem .7rem;border:1px solid var(--line);border-radius:var(--radius-sm);background:transparent;color:var(--ink-soft);font:inherit;font-weight:600;font-size:.82rem;white-space:nowrap;cursor:pointer}.settings-reset:hover:not(:disabled){background:var(--err-bg);color:var(--err-ink);border-color:var(--err-line)}.settings-reset:disabled{opacity:.5;cursor:default}.settings-search{display:flex;align-items:center;gap:.6rem}.settings-search label{white-space:nowrap}#settings-filter{flex:1;min-width:0;min-height:44px;padding:.35rem .7rem;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface);color:var(--ink);font:inherit;font-size:.93rem}#settings-filter:focus-visible{outline:3px solid var(--brand);outline-offset:2px}.settings-actions{display:flex;align-items:center;gap:.6rem;flex-wrap:wrap}#settings-save{min-height:44px;padding:.4rem 1.1rem;border:0;border-radius:999px;background:var(--brand);color:var(--bg);font:inherit;font-weight:600;font-size:.9rem;white-space:nowrap;cursor:pointer}#settings-save:hover:not(:disabled){background:var(--brand-hover);color:var(--bg)}#settings-save:disabled{opacity:.6;cursor:default}#settings-clear-all{min-height:44px;padding:.35rem .7rem;border:1px solid var(--line);border-radius:var(--radius-sm);background:transparent;color:var(--ink-soft);font:inherit;font-weight:600;font-size:.82rem;white-space:nowrap;cursor:pointer}#settings-clear-all:hover{background:var(--err-bg);color:var(--err-ink);border-color:var(--err-line)}.settings-dirty{font-family:var(--mono);font-size:.8rem;color:var(--brand-ink)}.settings-status{display:block;min-height:1.2em;color:var(--ink-soft);font-family:var(--mono);font-size:.8rem;padding-block:.25rem}.settings-error{display:block;margin:0;min-height:1.2em;font-family:var(--mono);font-size:.8rem;padding-block:.25rem;color:var(--err-ink)}.settings-no-match td{padding:.9rem 1rem;color:var(--ink-soft);font-family:var(--mono);font-size:.85rem;white-space:normal}.shared-shell{width:100%;max-width:var(--chat-column);margin-inline:auto;display:flex;flex-direction:column;gap:1rem;flex:1}#shared-title{margin:0 0 .25rem;font-size:1.7rem}.shared-note{margin:0;color:var(--ink-soft);font-size:.92rem}#shared-invalid{padding:1.4rem 1rem;text-align:center;color:var(--ink-soft);font-style:italic;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow)}.shared-shell .suggestion-chip,.shared-shell .source-chip{pointer-events:none;cursor:default}.doc-header{position:sticky;top:0;z-index:20;background:var(--surface);flex-shrink:0}.doc-header>.app-header:after{content:none}.doc-back{display:inline-flex;align-items:center;gap:.4rem;flex:0 0 auto;min-height:44px;padding:.45rem .9rem;border-radius:999px;background:var(--brand-soft);border:1px solid var(--line);color:var(--brand-ink);font-weight:600;font-size:.95rem;text-decoration:none}.doc-back:hover{background:var(--brand-soft)}.doc-back svg{width:16px;height:16px;display:block}.doc-titlebar{border-top:1px solid var(--line);padding-block:.6rem}.doc-titlebar .container{display:flex;align-items:center;gap:.9rem}.doc-title-block{min-width:0}#doc-title{margin:0;font-size:1.3rem;line-height:1.3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.doc-meta{display:flex;flex-wrap:nowrap;align-items:center;gap:.4rem;margin-top:.35rem;font-size:.78rem;color:var(--ink-soft);white-space:nowrap;overflow:hidden}.doc-source-badge{background:var(--brand-soft);border:1px solid var(--line);color:var(--brand-ink);font-weight:600;border-radius:999px;padding:.02rem .55rem}.format-badge{font-family:var(--mono);background:var(--brand-soft);border:1px solid var(--line);color:var(--brand-ink);border-radius:var(--radius-sm);padding:.02rem .45rem}.doc-path{font-family:var(--mono);font-size:.75rem;max-width:26rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:6rem}.doc-origin{font-family:var(--mono);font-size:.75rem;max-width:26rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:6rem;color:var(--brand-ink);text-decoration:none}.doc-origin:hover,.doc-origin:focus-visible{text-decoration:underline}.doc-copy-path{display:inline-flex;align-items:center;gap:.3rem;padding:.12rem .5rem;border:1px solid var(--line);border-radius:var(--radius-sm);background:transparent;color:var(--ink-soft);font:inherit;font-weight:600;font-size:.78rem;white-space:nowrap;cursor:pointer}.doc-copy-path svg{width:13px;height:13px;display:block;flex:0 0 auto}.doc-copy-path:hover{background:var(--brand-soft);color:var(--brand-ink)}.doc-copy-path:focus-visible{outline:3px solid var(--brand);outline-offset:2px}.doc-copy-status{margin:0;font-size:.78rem;color:var(--ink-soft)}.doc-copy-pop{position:absolute;z-index:30;display:flex;flex-wrap:wrap;align-items:center;gap:.4rem;max-width:min(36rem,calc(100vw - 2rem));padding:.45rem .6rem;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-sm);box-shadow:var(--shadow)}.doc-path-fallback{max-width:26rem;padding:.3rem .55rem;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface);color:var(--ink);font-family:var(--mono);font-size:.78rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.doc-path-fallback:hover{border-color:var(--brand)}.doc-path-fallback:focus-visible{outline:3px solid var(--brand);outline-offset:2px}.doc-chunks{font-family:var(--mono)}.doc-created{color:var(--ink-soft)}.doc-shell{display:flex;flex-direction:column;gap:1rem;flex:1}#doc-content{display:flex;flex-direction:column}.doc-loading{margin:1.5rem auto;text-align:center;color:var(--ink-soft)}.doc-md{width:100%;max-width:var(--chat-column);margin-inline:auto;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:1.5rem 1.75rem;overflow-wrap:anywhere}.doc-md p{margin:.35rem 0}.doc-md h3{margin:1.1rem 0 .4rem;font-size:1.15rem}.doc-md h4{margin:.9rem 0 .35rem;font-size:1rem}.doc-md>:first-child{margin-top:0}.doc-md ul{margin:.4rem 0;padding-left:1.3rem}.doc-md pre{background:var(--surface);color:var(--ink);padding:.7rem .9rem;border:1px solid var(--line);border-radius:var(--radius-sm);overflow-x:auto;font-size:.85rem;font-family:var(--mono)}.doc-md code{font-family:var(--mono);font-size:.88em;background:var(--brand-soft);padding:.08em .35em;border-radius:5px}.doc-md pre code{background:none;padding:0}.doc-summary{width:100%;background:var(--surface);border:1px solid var(--line);border-left:3px solid var(--brand);border-radius:var(--radius);padding:.9rem 1.1rem;margin-bottom:1rem;overflow-wrap:anywhere}.doc-summary:has(+.doc-md){max-width:var(--chat-column);margin-inline:auto}.doc-summary-title{margin:0 0 .4rem;font-size:.75rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--brand-ink)}.doc-summary-text{margin:0;color:var(--ink)}.doc-summary-head{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin-bottom:.4rem}.doc-summary-head .doc-summary-title{margin:0}.doc-summary-edit{flex:0 0 auto;display:inline-flex;align-items:center;min-height:24px;padding:.15rem .7rem;border:1px solid var(--line);border-radius:999px;background:transparent;color:var(--ink-soft);font:inherit;font-weight:600;font-size:.78rem;letter-spacing:.02em;cursor:pointer}.doc-summary-edit:hover{background:var(--brand-soft);color:var(--brand-ink);border-color:var(--brand)}.doc-summary-edit[hidden]{display:none}.doc-summary-editor{display:block;width:100%;min-height:8rem;padding:.6rem .8rem;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--bg);color:var(--ink);font:inherit;line-height:1.5;resize:vertical}.doc-summary-actions{display:flex;align-items:center;gap:.5rem;margin-top:.75rem}.doc-summary-save{display:inline-flex;align-items:center;min-height:32px;padding:.35rem .95rem;border:0;border-radius:999px;background:var(--brand);color:var(--bg);font:inherit;font-weight:600;font-size:.85rem;cursor:pointer}.doc-summary-save:hover{background:var(--brand-hover)}.doc-summary-save:disabled{opacity:.6;cursor:default}.doc-summary-cancel{display:inline-flex;align-items:center;min-height:32px;padding:.35rem .95rem;border:1px solid var(--line);border-radius:999px;background:transparent;color:var(--ink-soft);font:inherit;font-weight:600;font-size:.85rem;cursor:pointer}.doc-summary-cancel:hover{background:var(--err-bg);color:var(--err-ink);border-color:var(--err-line)}.doc-summary-status{margin:.6rem 0 0;font-size:.85rem;color:var(--ink-soft)}.doc-summary-status:empty{margin-top:0}.doc-date-edit{flex:0 0 auto;display:inline-flex;align-items:center;min-height:24px;padding:.15rem .7rem;border:1px solid var(--line);border-radius:999px;background:transparent;color:var(--ink-soft);font:inherit;font-weight:600;font-size:.78rem;letter-spacing:.02em;cursor:pointer}.doc-date-edit:hover{background:var(--brand-soft);color:var(--brand-ink);border-color:var(--brand)}.doc-date-edit[hidden]{display:none}.doc-date-editor{display:inline-flex;flex-wrap:wrap;align-items:center;gap:.35rem;min-width:0;max-width:100%}.doc-date-input{padding:.15rem .4rem;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--bg);color:var(--ink);font:inherit;font-size:.78rem;font-family:var(--mono)}.doc-date-save{display:inline-flex;align-items:center;min-height:24px;padding:.15rem .7rem;border:0;border-radius:999px;background:var(--brand);color:var(--bg);font:inherit;font-weight:600;font-size:.78rem;cursor:pointer}.doc-date-save:hover{background:var(--brand-hover)}.doc-date-cancel{display:inline-flex;align-items:center;min-height:24px;padding:.15rem .7rem;border:1px solid var(--line);border-radius:999px;background:transparent;color:var(--ink-soft);font:inherit;font-weight:600;font-size:.78rem;cursor:pointer}.doc-date-cancel:hover{background:var(--err-bg);color:var(--err-ink);border-color:var(--err-line)}.doc-date-revert{display:inline-flex;align-items:center;min-height:24px;padding:.15rem .2rem;border:0;background:transparent;color:var(--ink-soft);font:inherit;font-size:.78rem;text-decoration:underline;cursor:pointer}.doc-date-revert:hover{color:var(--ink)}.doc-date-save:disabled,.doc-date-cancel:disabled,.doc-date-revert:disabled,.doc-date-input:disabled{opacity:.5;cursor:wait}.doc-date-status{font-size:.78rem;color:var(--ink-soft)}.doc-date-error{flex-basis:100%;min-width:0;max-width:100%;overflow-wrap:anywhere;font-size:.78rem;font-weight:600;background:var(--err-bg);color:var(--err-ink);border:1px solid var(--err-line);border-radius:var(--radius-sm);padding:.1rem .5rem}.doc-date-status:empty,.doc-date-error:empty{display:none}.doc-raw{width:100%;margin:0;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:1.25rem 1.5rem;overflow-x:auto;white-space:pre;font-family:var(--mono);font-size:.85rem;line-height:1.5}.doc-prose{width:100%;max-width:var(--chat-column);margin-inline:auto;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:1.5rem 1.75rem;color:var(--ink);white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.55}.doc-image{width:100%;max-width:var(--chat-column);margin:0 auto 1rem;display:flex;justify-content:center;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:.5rem}.doc-image-img{display:block;max-width:100%;max-height:70vh;height:auto;border-radius:var(--radius-sm);background:var(--bg)}.doc-image-unavailable{margin:1.25rem 1rem;color:var(--ink-soft);font-size:.9rem}.doc-pages{display:grid;gap:1rem;width:100%;max-width:var(--chat-column);margin-inline:auto}.doc-page{margin:0}.doc-page img{display:block;width:100%;max-width:100%;height:auto;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface)}.doc-page-num{font-size:.78rem;color:var(--ink-soft);text-align:center;padding:.35rem 0 0}.doc-view-toggle{display:flex;gap:.4rem;width:100%;max-width:var(--chat-column);margin-inline:auto;margin-bottom:.75rem}.doc-view-btn{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:.5rem .9rem;border-radius:999px;border:1px solid var(--line);background:transparent;color:var(--ink-soft);font:inherit;font-weight:600;font-size:.95rem;white-space:nowrap;cursor:pointer}.doc-view-btn:hover{background:var(--brand-soft);color:var(--brand-ink)}.doc-view-btn[aria-pressed=true]{background:var(--brand);border-color:var(--brand);color:var(--bg);font-weight:700}.doc-views .doc-pages,.doc-views[data-view=pages] .doc-summary,.doc-views[data-view=pages] .doc-md,.doc-views[data-view=pages] .doc-raw,.doc-views[data-view=pages] .doc-prose,.doc-views[data-view=pages] .doc-image{display:none}.doc-views[data-view=pages] .doc-pages{display:grid}.doc-not-found{width:100%;max-width:30rem;margin:2rem auto;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:2.25rem 1.75rem;text-align:center}.doc-not-found-glyph{color:var(--ink-soft);width:44px;height:44px;margin-inline:auto}.doc-not-found-glyph svg{width:44px;height:44px;display:block}.doc-not-found h2{margin:.8rem 0 .4rem;font-size:1.3rem}.doc-not-found-sub{margin:0 0 1.25rem;color:var(--ink-soft)}.doc-open-sources{display:inline-flex;align-items:center;min-height:44px;padding:.5rem 1.1rem;background:var(--brand);color:var(--bg);font-weight:700;text-decoration:none;border-radius:var(--radius-sm)}.doc-open-sources:hover{background:var(--brand-hover)}.doc-link{color:var(--brand-ink);text-decoration:none}.doc-link:hover,.doc-link:focus-visible{text-decoration:underline}.doc-modal{position:fixed;inset:0;z-index:1000;display:flex}.doc-modal[hidden]{display:none}.doc-modal-backdrop{position:fixed;inset:0;background:color-mix(in srgb,var(--bg) 82%,transparent);transition:opacity .12s ease}.doc-modal-panel{position:relative;z-index:1;display:flex;flex-direction:column;width:min(1100px,96vw);height:92vh;margin:auto;background:var(--surface);border:1px solid var(--line);border-radius:12px;box-shadow:0 24px 80px color-mix(in srgb,black 55%,transparent)}.doc-modal-header{flex-shrink:0;position:sticky;top:0;z-index:1;display:flex;align-items:center;justify-content:space-between;gap:.9rem;height:var(--header-h);padding-inline:1.25rem;background:var(--surface);border-bottom:1px solid var(--line)}.doc-modal-title{min-width:0;margin:0;font-size:1.3rem;line-height:1.3;color:var(--ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.doc-modal-actions{flex:0 0 auto;display:flex;align-items:center;gap:.5rem}.doc-modal-open{display:inline-flex;align-items:center;justify-content:center;gap:.4rem;min-height:44px;padding:.4rem .8rem;border-radius:999px;border:1px solid var(--line);background:transparent;color:var(--ink-soft);font:inherit;font-weight:600;font-size:.85rem;white-space:nowrap;text-decoration:none}.doc-modal-open:hover{background:var(--brand-soft);color:var(--brand-ink)}.doc-modal-open svg{width:15px;height:15px;display:none}.doc-modal-close{display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;padding:0;border-radius:999px;border:1px solid var(--line);background:transparent;color:var(--ink-soft);cursor:pointer}.doc-modal-close:hover{background:var(--err-bg);color:var(--err-ink);border-color:var(--err-line)}.doc-modal-close:focus-visible{outline:3px solid var(--brand);outline-offset:2px}.doc-modal-close svg{width:18px;height:18px;display:block}.doc-modal-meta{flex-shrink:0;display:flex;flex-wrap:wrap;align-items:center;gap:.4rem;padding:.6rem 1.25rem 0;font-size:.78rem;color:var(--ink-soft)}.doc-modal-content{flex:1;min-height:0;overflow:auto;padding:1rem 1.25rem 1.5rem}.doc-modal .doc-raw{scrollbar-width:thin;scrollbar-color:var(--scrollbar-thumb) var(--scrollbar-track)}.doc-modal .doc-raw::-webkit-scrollbar{height:8px}.doc-modal .doc-raw::-webkit-scrollbar-track{background:var(--scrollbar-track)}.doc-modal .doc-raw::-webkit-scrollbar-thumb{background:var(--scrollbar-thumb);border-radius:4px}.doc-modal-loading{margin:1.5rem auto;text-align:center;color:var(--ink-soft)}@media (prefers-reduced-motion: reduce){.doc-modal-backdrop{transition:none}}.doc-edit-shell{width:100%;display:flex;flex-direction:column;gap:1.25rem;flex:1}.doc-edit-back{display:inline-flex;align-items:center;gap:.4rem;min-height:44px;margin-left:auto;padding:.4rem .9rem;border:1px solid var(--line);border-radius:var(--radius-sm);background:transparent;color:var(--ink-soft);font-weight:600;text-decoration:none}.doc-edit-back:hover{color:var(--ink);border-color:var(--ink-soft)}.doc-edit-back svg{width:16px;height:16px;display:block}#doc-edit-form{display:flex;flex-direction:column;gap:.9rem;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:1.5rem 1.5rem 1.75rem}#doc-edit-form label{font-weight:600;font-size:.95rem}#draft-title,#draft-path{width:100%;font:inherit;font-size:1rem;color:var(--ink);background:var(--bg);border:1px solid var(--line);border-radius:var(--radius-sm);padding:.55rem .75rem;min-height:44px}#draft-path{font-family:var(--mono);font-size:.92rem}#draft-body{width:100%;font-family:var(--mono);font-size:.92rem;line-height:1.5;color:var(--ink);background:var(--bg);border:1px solid var(--line);border-radius:var(--radius-sm);padding:.75rem .9rem;min-height:20rem;resize:vertical}.doc-edit-actions{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}#push-doc-btn{display:inline-flex;align-items:center;justify-content:center;min-height:44px;border:0;border-radius:var(--radius-sm);background:var(--brand);color:var(--bg);font:inherit;font-weight:700;cursor:pointer;padding-inline:1.25rem}#push-doc-btn:hover:not(:disabled){background:var(--brand-hover)}#push-doc-btn:disabled{opacity:.6;cursor:wait}.discard-draft{display:inline-flex;align-items:center;justify-content:center;min-height:44px;border:1px solid var(--line);border-radius:var(--radius-sm);background:transparent;color:var(--ink-soft);font:inherit;font-weight:600;font-size:.85rem;white-space:nowrap;padding-inline:1rem;cursor:pointer}.discard-draft:hover:not(:disabled){background:var(--err-bg);color:var(--err-ink);border-color:var(--err-line)}.discard-draft:disabled{opacity:.6;cursor:wait}.doc-edit-status{margin:0;min-height:1.5rem;background:var(--ok-bg);color:var(--ok-ink);border:1px solid var(--line);border-radius:var(--radius-sm);padding:.45rem .8rem;font-size:.9rem;font-weight:600}.doc-edit-status:empty{background:transparent;border-style:dashed;color:var(--ink-soft)}.doc-edit-error{margin:0;background:var(--err-bg);color:var(--err-ink);border:1px solid var(--err-line);border-radius:var(--radius-sm);padding:.5rem .8rem;font-size:.85rem;font-weight:600;overflow-wrap:anywhere}.app-footer{border-top:1px solid var(--line);background:var(--surface);padding-block:.8rem;margin-top:1rem}.footer-inner{display:flex;justify-content:space-between;gap:1rem;color:var(--ink-soft);font-size:.85rem}@media (max-width: 900px){.header-inner{gap:.6rem}.nav-link{padding:.4rem .5rem;font-size:.85rem}.app-nav{gap:.15rem}.new-chat-btn,.auth-link{padding:.45rem .5rem}}@media (max-width: 640px){:root{--header-h: 58px}.container{padding-inline:.9rem}.app-header{height:calc(var(--header-h) + env(safe-area-inset-top,0px));padding-top:env(safe-area-inset-top,0px)}.toast{top:calc(var(--header-h) + .75rem + env(safe-area-inset-top,0px))}.header-inner{gap:.25rem}.brand{min-width:0;overflow:hidden}.brand-mark{width:18px;height:18px}.brand-text{font-size:.8rem;letter-spacing:.04em;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.nav-toggle{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;padding:0;color:var(--ink);background:none;border:0;border-radius:var(--radius-sm);cursor:pointer;touch-action:manipulation}.nav-toggle:hover{background:var(--brand-soft);color:var(--brand-ink)}.nav-toggle svg{width:20px;height:20px;display:block}.app-nav{position:absolute;top:100%;left:0;right:0;margin-left:0;flex-direction:column;gap:0;background:var(--surface);border-bottom:1px solid var(--line);box-shadow:var(--shadow-lg);padding:.5rem 0;z-index:21;visibility:hidden;opacity:0;transform:translateY(-8px);pointer-events:none;transition:opacity .18s ease,transform .18s ease,visibility 0s linear .18s}.app-nav.is-open{visibility:visible;opacity:1;transform:none;pointer-events:auto;transition:opacity .18s ease,transform .18s ease,visibility 0s}body.nav-menu-open .chat-bottom{visibility:hidden}.app-nav .nav-link{padding:.75rem 1.25rem;font-size:1rem}.new-chat-btn{padding:.4rem .3rem}.new-chat-label{display:none}.new-chat-btn svg{display:block}.share-chat-btn{padding:.4rem .3rem}.share-chat-label{display:none}.share-chat-btn svg{display:block}.chat-shell .new-chat-label{display:inline}.chat-shell .new-chat-btn svg{display:none}.chat-shell .share-chat-label{display:inline}.chat-shell .share-chat-btn svg{display:none}.chat-actions{flex-direction:column;align-items:stretch;gap:.5rem}.stale-regenerate,.banner-retry{margin-left:0;width:100%}.auth-link{padding:.4rem .3rem}.auth-label{display:none}.auth-link svg{display:block}.sign-out-mobile{display:inline-flex}#sign-out-btn{display:none!important}.sign-in-mobile{display:inline-flex}#sign-in-link{display:none!important}.nav-toggle{margin-left:auto}#app-nav .sign-out-btn{display:flex;width:100%;align-items:center;gap:.6rem;text-align:left;padding:.75rem 1.25rem;font-size:1rem;border:0;border-radius:0;background:transparent;color:var(--err-ink);min-height:48px}#app-nav .sign-out-btn:hover{background:var(--err-bg);color:var(--err-ink)}#app-nav .sign-out-btn svg{width:18px;height:18px;flex:0 0 auto}#app-nav .sign-out-btn .auth-label{display:inline}#app-nav .sign-in-mobile{display:flex;width:100%;align-items:center;gap:.6rem;text-align:left;padding:.75rem 1.25rem;font-size:1rem;border:0;border-radius:0;background:transparent;color:var(--err-ink);font-weight:600;text-decoration:none;min-height:48px}#app-nav .sign-in-mobile:hover{background:var(--err-bg);color:var(--err-ink)}#app-nav .sign-in-mobile svg{width:18px;height:18px;flex:0 0 auto}#app-nav .sign-in-mobile .auth-label{display:inline}.steering-note{padding:.3rem .3rem .3rem .7rem}.app-main>.steering-panel{width:calc(100% - 1.8rem)}.tune-btn,.retry-btn,.edit-btn,.continue-btn{min-height:44px}.tuning-note{gap:.4rem;padding:.3rem}.tuning-edit,.tuning-delete{padding:.35rem .5rem}.msg-body{max-width:92%}.empty-state{padding:1.75rem 1.1rem;margin-top:.25rem}.empty-state-title{font-size:1.25rem}.suggestions{flex-wrap:nowrap;overflow-x:auto;justify-content:flex-start;padding-bottom:.4rem;-webkit-overflow-scrolling:touch;scrollbar-width:thin}.suggestion-chip{flex:0 0 auto}.doc-titlebar .container{gap:.5rem}#doc-title{font-size:1.1rem}.doc-path,.doc-origin{max-width:16rem}.doc-copy-path{min-height:44px;min-width:44px}.doc-md{padding:1.1rem 1rem}.doc-summary{padding:.75rem .9rem}.doc-raw{padding:1rem;font-size:.8rem}.doc-modal-header{gap:.5rem;padding-inline:.9rem}.doc-modal-title{font-size:1.1rem}.doc-modal-open{padding:.4rem .55rem}.doc-modal-open svg{display:block}.doc-modal-open span{display:none}.doc-modal-meta{padding-inline:.9rem}.doc-modal-content{padding:.75rem .9rem 1.25rem}.composer{padding:.5rem}#git-source-form,#archive-upload-form{flex-direction:column;align-items:stretch}#git-source-form>label,#archive-upload-form>label{white-space:normal}#git-source-url,#git-source-branch,#git-source-token,#archive-upload-file{min-width:0}#git-source-add,#archive-upload-btn{width:100%}.history-actions-cell{white-space:normal}.history-actions{flex-wrap:wrap}.token-create{flex-direction:column;align-items:stretch}.token-generate{width:100%}.token-once-row{flex-direction:column;align-items:stretch}#token-once-copy{width:100%}.tokens-actions-cell{white-space:normal}.tokens-actions{flex-wrap:wrap}.theme-colors{grid-template-columns:1fr}.theme-actions{flex-direction:column;align-items:stretch}#theme-save,.theme-reset{width:100%}.settings-search,.settings-actions{flex-direction:column;align-items:stretch}#settings-save,#settings-clear-all{width:100%}.settings-actions-cell{white-space:normal}#shared-title{font-size:1.35rem}.shared-note{font-size:.88rem}.footer-inner{flex-direction:column;gap:.2rem;text-align:center}main{padding-bottom:env(safe-area-inset-bottom,0)}.page-head-row{flex-wrap:wrap}.sync-btn,.sync-cancel-btn{width:100%}.sync-label{max-width:none;flex:1 1 auto;min-width:0}.history-refresh{width:100%}.history-refresh svg{display:block}}@media (prefers-reduced-motion: reduce){.app-nav,.app-nav.is-open{transition:none}}
