:root{--atlas-brand:#0a3d62;--atlas-brand-fg:#fff;--atlas-brand-soft:#e8eef3;--atlas-fg:#1a1a1a;--atlas-fg-muted:#6b7280;--atlas-bg:#fff;--atlas-bg-muted:#f5f6f7;--atlas-border:#e5e7eb;--atlas-success:#066e25;--atlas-warn:#a6590b;--atlas-error:#991b1b;--atlas-font-sans:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;--atlas-font-mono:ui-monospace,"Cascadia Code",Menlo,Consolas,"Liberation Mono",monospace;--atlas-space-1:4px;--atlas-space-2:8px;--atlas-space-3:12px;--atlas-space-4:16px;--atlas-space-5:20px;--atlas-space-6:24px;--atlas-space-8:32px;--atlas-radius-sm:4px;--atlas-radius-md:6px;--atlas-radius-lg:10px}:root,[data-theme=light]{--bg:var(--atlas-bg);--bg-panel:#fafafa;--bg-elevated:#f3f3f3;--bg-composer:#fff;--fg:var(--atlas-fg);--fg-muted:#6b6b6b;--accent:var(--atlas-brand);--accent-muted:var(--atlas-brand-soft);--accent-fg:var(--atlas-brand-fg);--border:#e5e5e5;--border-subtle:#efefef;--refuse:#9f1239;--ok:#065f46;--warn:#92400e;--composer-shadow:0 6px 24px rgba(0,0,0,.08);--scroll-chip-shadow:0 2px 8px rgba(0,0,0,.12);--font-body:var(--atlas-font-sans);--font-mono:var(--atlas-font-mono)}[data-theme=dark]{--bg:#1a1a1a;--bg-panel:#1f1f1f;--bg-elevated:#2a2a2a;--bg-composer:#2c2c2c;--fg:#e8e8e8;--fg-muted:#999;--accent:#2563eb;--accent-muted:#1e3a8a;--accent-fg:#fff;--border:#2f2f2f;--border-subtle:#262626;--composer-shadow:0 6px 24px rgba(0,0,0,.4);--scroll-chip-shadow:0 2px 8px rgba(0,0,0,.5)}*{box-sizing:border-box}body,html{margin:0;padding:0;height:100vh;height:100dvh;overflow:hidden}body{font-family:var(--font-body);background:var(--bg);color:var(--fg);line-height:1.55;display:flex;flex-direction:column}main{flex:1 1;min-height:0;width:100%;padding:0;margin:0;max-width:none}.site-header{display:flex;align-items:center;justify-content:space-between;padding:1rem 2rem;border-bottom:1px solid var(--border);background:var(--bg)}.site-header--slim{padding:.4rem 1rem;font-size:.92em}.site-header nav{display:flex;align-items:center;gap:1rem;flex-wrap:wrap}.site-header nav a{text-decoration:none}.site-header nav a[aria-current=page]{font-weight:600;color:var(--accent)}.site-header-account{margin-left:auto;color:var(--fg-muted);font-size:.9em;white-space:nowrap}.site-header-account a{color:var(--accent)}.site-title{font-size:1.25rem;font-weight:600;text-decoration:none;color:var(--fg)}.two-col{display:grid;grid-template-columns:minmax(0,1fr) 280px;grid-gap:20px;gap:20px}@media (max-width:800px){.two-col{grid-template-columns:1fr}}.chat-shell{display:grid;grid-template-columns:260px minmax(0,1fr);height:100%;background:var(--bg);grid-gap:0;gap:0;position:relative}.chat__menu-btn{display:none;position:absolute;top:8px;left:8px;z-index:12;width:44px;height:44px;align-items:center;justify-content:center;border-radius:8px;border:1px solid var(--border);background:var(--bg-elevated);color:var(--fg);cursor:pointer;box-shadow:0 1px 3px rgba(0,0,0,.1)}.chat__menu-btn:hover{background:var(--bg-panel)}.history-backdrop{display:none;position:fixed;inset:0;z-index:1000;background:rgba(0,0,0,.5)}.cite-card{margin-top:12px;border:1px solid var(--border);border-radius:8px;background:var(--bg-elevated,#fafafa)}.cite-card>summary{list-style:none;cursor:pointer;padding:8px 12px;display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:.88em;color:var(--fg-muted);-webkit-user-select:none;-moz-user-select:none;user-select:none}.cite-card>summary::-webkit-details-marker{display:none}.cite-card__count{font-weight:600;color:var(--fg)}.cite-card__chevron{transition:transform .15s ease;font-size:.85em}.cite-card[open] .cite-card__chevron{transform:rotate(180deg)}.cite-card__body{padding:4px 12px 12px;border-top:1px solid var(--border)}.cite-card__list{list-style:decimal;margin:8px 0 0;padding-left:24px}.cite-card__list li{margin-bottom:8px}.cite-card__list a{word-break:break-word}.cite-card__meta{color:var(--fg-muted);font-family:var(--font-mono);font-size:.82em;margin-top:2px}.cite-card__sources{list-style:none;margin:4px 0 0;padding-left:0;font-size:.85em;color:var(--fg-muted)}.cite-card__sources li{margin-bottom:2px}.turn-image-preview{margin:8px 0;max-width:320px}.turn-image-preview img{display:block;max-width:100%;max-height:320px;border-radius:8px;border:1px solid var(--border);background:var(--bg-elevated,#fff)}.turn-image-preview figcaption{margin-top:4px;font-size:.78em;color:var(--fg-muted)}.history-sidebar{background:var(--bg-panel);border:none;border-right:1px solid var(--border);border-radius:0;padding:12px 10px;height:100%;position:relative;max-height:100%;overflow:hidden}.history-sidebar,.history-sidebar__footer{display:flex;flex-direction:column;gap:8px}.history-sidebar__footer{margin-top:auto;align-items:stretch;padding:10px 6px 2px;border-top:1px solid var(--border-subtle);font-size:.85em;color:var(--fg-muted)}.history-sidebar__user{min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.history-sidebar__footer-actions{display:flex;align-items:center;gap:10px}.history-sidebar__footer-link{color:var(--accent);text-decoration:none}.history-sidebar__footer-link:hover{text-decoration:underline}.history-sidebar__footer-actions .theme-toggle{margin-left:auto}.theme-toggle{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;border:1px solid var(--border);border-radius:6px;width:28px;height:28px;display:inline-flex;align-items:center;justify-content:center;color:var(--fg-muted);cursor:pointer;flex-shrink:0;transition:background .12s ease,color .12s ease}.theme-toggle:hover{background:var(--bg-elevated);color:var(--fg)}.history-sidebar__header{padding:0 2px;display:flex;align-items:center;gap:6px}.history-sidebar__new{flex:1 1;display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:8px 10px;border:1px solid var(--border);background:var(--bg-panel);color:var(--fg);border-radius:6px;font-size:.9em;font-weight:500;cursor:pointer;transition:background .12s ease,border-color .12s ease}.history-sidebar__new:hover{background:var(--bg-elevated);border-color:var(--fg-muted)}.history-sidebar__close{display:none;flex-shrink:0;width:38px;height:38px;align-items:center;justify-content:center;border:1px solid var(--border);background:var(--bg-panel);color:var(--fg-muted);border-radius:6px;cursor:pointer;transition:background .12s ease,color .12s ease}.history-sidebar__close:hover{background:var(--bg-elevated);color:var(--fg)}.history-sidebar__list{display:flex;flex-direction:column;gap:12px;overflow-y:auto;padding:4px 0}.history-sidebar__group{display:flex;flex-direction:column;gap:2px}.history-sidebar__group-label{font-size:.72em;text-transform:uppercase;letter-spacing:.05em;color:var(--fg-muted);padding:4px 6px 2px}.history-sidebar__row{display:flex;align-items:center;gap:6px;padding:7px 8px;border:none;background:transparent;color:var(--fg);border-radius:6px;cursor:pointer;text-align:left;font:inherit;font-size:.88em;transition:background .12s ease}.history-sidebar__row:hover{background:var(--bg-elevated)}.history-sidebar__row.is-active{background:var(--accent-muted);color:var(--fg)}.history-sidebar__row-icon{flex-shrink:0;color:var(--fg-muted)}.history-sidebar__row-label{flex:1 1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.history-sidebar__row-delete{flex-shrink:0;background:transparent;border:none;padding:2px;border-radius:4px;color:var(--fg-muted);cursor:pointer;opacity:0;transition:opacity .12s ease,color .12s ease}.history-sidebar__row:hover .history-sidebar__row-delete{opacity:1}@media (hover:none){.history-sidebar__row-delete{opacity:1}}.history-sidebar__row-delete:focus-visible{opacity:1}.history-sidebar__row-delete:hover{color:var(--refuse)}.history-sidebar__empty{color:var(--fg-muted);font-size:.85em;margin:0;padding:4px 6px}.chat{position:relative;height:100%;background:var(--bg);border:none;border-radius:0;padding:0;overflow:hidden}.chat__history{position:absolute;inset:0;overflow-y:auto;padding:24px 24px 220px;scroll-padding-top:24px}.chat__history-inner{max-width:760px;margin:0 auto;display:flex;flex-direction:column;gap:24px;min-height:100%}.chat__empty{flex:1 1;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:6px;color:var(--fg-muted)}.chat__empty-title{margin:0;font-size:1.5rem;font-weight:600;color:var(--fg)}.chat__empty-sub{margin:0;max-width:32ch}.chat__empty-eg{margin:0;font-size:.9em}.chat__composer-shell{position:absolute;bottom:0;left:0;right:0;padding:0 16px 12px;background:linear-gradient(to bottom,transparent 0,var(--bg) 24px,var(--bg) 100%);z-index:10}.chat__composer-inner{max-width:760px;margin:0 auto;background:var(--bg-composer);border:1px solid var(--border);border-radius:16px;padding:12px 14px;box-shadow:var(--composer-shadow)}.chat__disclaimer{margin:6px 0 0;text-align:center;font-size:.75em;color:var(--fg-muted)}.chat__scroll-to-bottom{position:absolute;bottom:110px;left:50%;transform:translateX(-50%);width:32px;height:32px;border-radius:50%;background:var(--bg-elevated);border:1px solid var(--border);color:var(--fg);cursor:pointer;z-index:11;box-shadow:var(--scroll-chip-shadow);display:inline-flex;align-items:center;justify-content:center;font-size:.95em}.chat__scroll-to-bottom:hover{background:var(--bg-composer)}.turn{border-bottom:1px dashed var(--border);padding-bottom:14px}.turn:last-child{border-bottom:none}.turn-q{font-weight:600;display:flex;align-items:baseline;gap:8px}.turn-q__text{flex:1 1;min-width:0}.turn-q__edit{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;border:none;color:var(--fg-muted);cursor:pointer;font-size:.95em;padding:2px 6px;border-radius:4px;opacity:0;transition:opacity .12s ease,background .12s ease,color .12s ease}.turn:hover .turn-q__edit{opacity:1}.turn-q__edit:focus-visible,.turn-q__edit:hover{opacity:1;background:var(--bg-elevated,#f4f4f4);color:var(--fg)}@media (hover:none){.turn-q__edit{opacity:.6}}.turn--editing{opacity:.55}.turn--editing .turn-q__edit{opacity:0}.turn-a{white-space:pre-wrap;margin-top:8px}.turn-a--progress{color:var(--fg-muted,#6b6b6b);font-style:italic;animation:turn-progress-pulse 1.4s ease-in-out infinite}@keyframes turn-progress-pulse{0%,to{opacity:.55}50%{opacity:1}}.turn-a--md{white-space:normal}.turn-a--md>:first-child{margin-top:0}.turn-a--md>:last-child{margin-bottom:0}.turn-a--md p{margin:0 0 .6em;line-height:1.5}.turn-a--md h1,.turn-a--md h2,.turn-a--md h3,.turn-a--md h4{margin:.8em 0 .4em;line-height:1.25;font-weight:600}.turn-a--md h1{font-size:1.25em}.turn-a--md h2{font-size:1.15em}.turn-a--md h3{font-size:1.05em}.turn-a--md h4{font-size:1em}.turn-a--md ol,.turn-a--md ul{margin:.2em 0 .6em;padding-left:1.4em}.turn-a--md li{margin:.15em 0}.turn-a--md li>p{margin:0 0 .25em}.turn-a--md strong{font-weight:600}.turn-a--md em{font-style:italic}.turn-a--md code{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.92em;padding:.05em .3em;border-radius:3px}.turn-a--md code,.turn-a--md pre{background:var(--bg-elevated,#f4f4f4)}.turn-a--md pre{padding:8px 10px;border-radius:5px;overflow-x:auto;margin:.4em 0 .8em}.turn-a--md pre code{background:transparent;padding:0}.turn-a--md blockquote{margin:.4em 0;padding:.2em .8em;border-left:3px solid var(--border);color:var(--fg-muted)}.turn-a--md table{border-collapse:collapse;margin:.4em 0 .8em;font-size:.95em}.turn-a--md__table-wrap{max-width:100%;overflow-x:auto}.turn-a--md td,.turn-a--md th{border:1px solid var(--border);padding:4px 8px;text-align:left}.turn-a--md th{background:var(--bg-elevated,#fafafa);font-weight:600}.turn-a--md__mermaid{margin:.6em 0 .9em;max-width:100%;overflow-x:auto;text-align:center}.turn-a--md__mermaid svg{max-width:100%;height:auto}.turn-a--md__sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.turn-a--md a{color:var(--fg-link,#0366d6);text-decoration:underline}.turn-a--md hr{border:0;border-top:1px solid var(--border);margin:.8em 0}.source-image-marquee{display:flex;flex-wrap:nowrap;gap:8px;margin:12px 0 2px;padding-bottom:8px;overflow-x:auto;scroll-snap-type:x proximity;-webkit-overflow-scrolling:touch}.source-image-marquee__item{flex:0 0 auto;width:160px;display:flex;flex-direction:column;gap:4px;text-decoration:none;color:var(--fg);scroll-snap-align:start}.source-image-marquee__item img{width:100%;height:110px;object-fit:cover;border:1px solid var(--border);border-radius:5px;background:var(--bg)}.source-image-marquee__item:hover img{border-color:var(--fg-muted)}.source-image-marquee__credit{font-size:.78em;color:var(--fg-muted);line-height:1.25;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.edit-banner{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 12px;margin:0 0 8px;border:1px solid var(--border);border-radius:6px;background:var(--bg-elevated,#fafafa);font-size:.88em}.edit-banner__cancel{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;border:1px solid var(--border);border-radius:4px;padding:4px 10px;cursor:pointer;font-size:.9em}.edit-banner__cancel:hover{background:var(--bg,#fff)}.turn-attachments{display:flex;flex-wrap:wrap;gap:6px;margin:6px 0 4px}.turn-attachment-chip{display:inline-flex}.turn-attachment-chip--scrubbed{opacity:.55;text-decoration:line-through}.ask-form{margin-top:auto;display:flex;gap:8px;flex-wrap:wrap}.ask-form textarea{flex:1 1;min-height:56px;resize:vertical;padding:10px 12px;border:1px solid var(--border);border-radius:8px;font-family:var(--font-body);font-size:1em}.ask-form button{padding:10px 18px;border-radius:8px;border:1px solid var(--accent);background:var(--accent);color:#fff;font-weight:600;cursor:pointer}.ask-form button:disabled{opacity:.6;cursor:not-allowed}.ask-form{flex-direction:column}.ask-form textarea{background:var(--bg-elevated);box-shadow:inset 0 1px 0 rgba(0,0,0,.02)}.ask-form textarea:focus-visible{outline:2px solid var(--accent);outline-offset:-1px;border-color:var(--accent)}.composer-toolbar{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:6px 4px 0}.composer-toolbar__left,.composer-toolbar__right{display:flex;align-items:center;gap:6px}.composer-btn{display:inline-flex;align-items:center;gap:6px;padding:7px 10px;border-radius:6px;border:1px solid var(--border);background:var(--bg-elevated);color:var(--fg);font-size:.88em;font-weight:500;font-family:inherit;cursor:pointer;box-shadow:0 1px 2px rgba(0,0,0,.03);transition:background .12s ease,border-color .12s ease,box-shadow .12s ease,color .12s ease}.composer-btn:hover{background:var(--bg-panel);border-color:var(--fg-muted)}.composer-btn:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.composer-btn:disabled{opacity:.55;cursor:not-allowed;box-shadow:none}.composer-btn--icon{padding:7px 9px}.composer-btn--toggle.is-on{background:#f5f3ff;border-color:#c4b5fd;color:#5b21b6}.composer-btn__label{white-space:nowrap}.composer-btn__dot{width:6px;height:6px;border-radius:50%;background:#7c3aed;display:inline-block}.composer-btn--primary{background:var(--accent);border-color:var(--accent);color:#fff;padding:8px 14px;font-weight:600}.composer-btn--primary:hover:not(:disabled){background:#1d4ed8;border-color:#1d4ed8}.composer-deepthink-note{font-size:.83em;color:#5b21b6;background:#f5f3ff;border:1px solid #ddd6fe;padding:6px 10px;border-radius:6px;margin-top:6px}.attachment-strip{display:flex;flex-wrap:wrap;gap:8px}.attachment-chip-wrap{display:flex;flex-direction:column;gap:2px}.attachment-chip{display:inline-flex;align-items:center;gap:8px;padding:6px 8px;background:#f3f4f6;border:1px solid var(--border);border-radius:8px;max-width:min(280px,70vw)}.attachment-chip--image{background:#ecfdf5}.attachment-chip--pdf{background:#fef3c7}.attachment-chip--audio{background:#ede9fe}.attachment-chip--video{background:#fee2e2}.attachment-chip--youtube{background:#fef2f2}.attachment-chip__thumb{width:32px;height:32px;border-radius:4px;object-fit:cover;flex-shrink:0}.attachment-chip__icon{font-size:1.4em;line-height:1}.attachment-chip__body{display:flex;flex-direction:column;min-width:0}.attachment-chip__label{font-weight:500;font-size:.92em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:200px}.attachment-chip__meta{font-size:.78em;color:var(--fg-muted)}.attachment-chip__remove{background:transparent;border:none;color:var(--fg-muted);cursor:pointer;font-size:1em;padding:0 4px}.attachment-chip__remove:hover{color:var(--refuse)}.attachment-chip__spinner{width:14px;height:14px;border:2px solid var(--border);border-top-color:var(--accent);border-radius:50%;animation:chip-spin .8s linear infinite}@keyframes chip-spin{to{transform:rotate(1turn)}}.attachment-chip-error{color:var(--refuse);font-size:.85em;font-weight:500;padding:4px 8px;margin-top:4px;background:#fef2f2;border:1px solid #fecaca;border-radius:6px}.attestations{display:flex;flex-direction:column;gap:8px;background:#fff7ed;border:1px solid #fed7aa;border-radius:8px;padding:10px 12px}.attestation-checkbox{display:flex;align-items:flex-start;gap:8px;font-size:.9em;line-height:1.4;cursor:pointer}.attestation-checkbox input[type=checkbox]{margin-top:3px}.advisory{font-size:.85em;color:var(--fg-muted);background:#f9fafb;border-left:3px solid var(--border);padding:6px 10px;border-radius:4px}.cite-pill{text-decoration:none;font-family:var(--font-mono);font-size:.85em;padding:0 1px;border-radius:3px}.cite-pill:hover{background:var(--accent-muted)}.cite-pill__suffix{font-weight:500;margin-left:1px}.cite-pill-wiki{color:var(--accent)}.cite-pill-web{color:#3730a3}.cite-pill-terminology{color:#0f766e}.cite-pill-upload-image{color:#065f46}.cite-pill-upload-pdf{color:#92400e}.cite-pill-upload-audio{color:#5b21b6}.cite-pill-upload-video{color:#9f1239}.cite-pill-youtube{color:#b91c1c}.cite-pill-invalid{color:var(--fg-muted);text-decoration:line-through}.cite-pill--chip{display:inline-flex;align-items:center;gap:4px;padding:1px 6px 1px 4px;margin:0 1px;border-radius:10px;background:var(--bg-elevated);border:1px solid var(--border);font-family:inherit;font-size:.78em;line-height:1.4;color:var(--fg);text-decoration:none;vertical-align:baseline;max-width:160px;overflow:hidden}.cite-pill--chip:hover{background:var(--accent-muted)}.cite-pill__icon{width:12px;height:12px;border-radius:2px;flex-shrink:0}.cite-pill__label{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:130px}.web-grounded-disclaimer{margin-top:6px;padding:6px 10px;border-left:3px solid var(--fg-muted);color:var(--fg-muted);font-size:.88em}.badge{display:inline-block;padding:2px 8px;border-radius:999px;font-size:.8em;font-weight:600;margin-right:6px}.badge-ok{background:#d1fae5;color:var(--ok)}.badge-pass{background:#fde68a;color:var(--warn)}.badge-refuse{background:#fecaca;color:var(--refuse)}.badge-noevidence{background:var(--accent-muted);color:var(--accent)}.badge-web{background:#e0e7ff;color:#3730a3}.sidebar{background:var(--bg-panel);border:1px solid var(--border);border-radius:10px;padding:14px;font-size:.92em}.sidebar h2{margin:0 0 10px;font-size:.9em;text-transform:uppercase;letter-spacing:.04em;color:var(--fg-muted)}.sidebar ol{padding-left:18px;margin:0}.sidebar li{margin-bottom:6px}.sidebar .rank{color:var(--fg-muted);font-family:var(--font-mono);font-size:.85em}.login-card{max-width:420px;margin:64px auto;background:var(--bg-panel);border:1px solid var(--border);border-radius:10px;padding:28px}.login-card h1{margin-top:0}.login-card input{width:100%;padding:10px 12px;border:1px solid var(--border);border-radius:8px;font-size:1em;margin-bottom:10px;font-family:var(--font-body)}.login-card .notice{color:var(--accent);margin-top:12px}.login-card .error{color:var(--refuse);margin-top:12px}.login-form,.login-form form{display:flex;flex-direction:column}.login-form input{width:100%}button.google-signin{width:100%;display:flex;align-items:center;justify-content:center;gap:.5rem;background:var(--bg-panel);color:var(--fg);border:1px solid var(--border);border-radius:8px;padding:.55rem .9rem;font:inherit;font-weight:600;cursor:pointer}button.google-signin:hover:not(:disabled){background:var(--bg-elevated)}button.google-signin:disabled{opacity:.6;cursor:not-allowed}.login-card button:not(.google-signin){width:100%;background:var(--accent);color:var(--accent-fg);border:1px solid var(--accent);border-radius:8px;padding:.55rem .9rem;font:inherit;font-weight:600;cursor:pointer}.login-card button:not(.google-signin):disabled{opacity:.6;cursor:not-allowed}.divider{display:flex;align-items:center;gap:.6rem;margin:.9rem 0;color:var(--fg-muted);font-size:.9em}.divider:after,.divider:before{content:"";flex:1 1;border-bottom:1px solid var(--border)}@media (max-width:900px){.chat-shell{grid-template-columns:1fr}.history-sidebar{position:fixed;left:0;top:0;bottom:0;height:100dvh;width:min(86vw,320px);z-index:1001;transform:translateX(-100%);transition:transform .2s ease;box-shadow:2px 0 24px rgba(0,0,0,.35)}.history-sidebar.is-open{transform:translateX(0)}.chat__menu-btn,.history-sidebar__close{display:inline-flex}.history-backdrop{display:block}.chat{display:flex;flex-direction:column}.chat__history{position:static;inset:auto;flex:1 1 auto;min-height:0;padding:56px 14px 16px;scroll-padding-top:56px}.chat__composer-shell{position:static;flex:0 0 auto;background:var(--bg);border-top:1px solid var(--border);padding:8px 12px}.chat__scroll-to-bottom{display:none}.memory-drawer__toggle{top:8px;right:8px;bottom:auto;width:34px;height:34px}}@media (max-width:640px){.site-header{flex-direction:column;align-items:flex-start;gap:.25rem;padding:.5rem .9rem}.site-header--slim{font-size:.82em}.site-title{font-size:1.05rem}.site-header nav{gap:.6rem .85rem}.site-header-account{display:none}.memory-drawer{width:100vw;max-width:100vw;border-left:none}.composer-btn{min-height:44px}.composer-btn--icon{min-width:44px}.login-card{margin:32px 16px;padding:22px}}.history-sidebar__memory-link{display:flex;align-items:center;gap:6px;padding:6px 8px;border-radius:6px;font-size:.85em;color:var(--fg-muted);text-decoration:none;border:1px solid var(--border-subtle)}.history-sidebar__memory-link:hover{background:var(--bg-elevated);color:var(--fg)}.memory-page{height:100%;overflow-y:auto;color:var(--fg)}.memory-page__inner{max-width:760px;margin:0 auto;padding:32px 20px 64px}.memory-page__header{margin-bottom:20px}.memory-page__back{display:inline-flex;align-items:center;gap:4px;font-size:.85em;color:var(--accent);text-decoration:none;margin-bottom:12px}.memory-page__back:hover{text-decoration:underline}.memory-page__title{font-size:1.5rem;margin:0 0 4px}.memory-page__subtitle{margin:0;color:var(--fg-muted);font-size:.9em}.memory-banner{border:1px solid var(--border);background:var(--accent-muted);border-radius:8px;padding:10px 12px;font-size:.82em;color:var(--fg);margin-bottom:24px}.memory-section{margin-bottom:28px}.memory-section__title{font-size:1.05rem;margin:0 0 2px}.memory-section__subject{color:var(--fg-muted);font-weight:400}.memory-section__hint{margin:0 0 12px;color:var(--fg-muted);font-size:.82em}.memory-section__empty{margin:0;color:var(--fg-muted);font-size:.88em;font-style:italic}.memory-kind,.memory-topic{margin-bottom:14px}.memory-kind__label,.memory-topic__label{font-size:.85rem;font-weight:600;margin:0 0 4px;color:var(--fg)}.memory-topic__meta{font-size:.75em;color:var(--fg-muted)}.memory-topic__legacy{font-size:.88em;white-space:pre-wrap;margin:0}.memory-fact-list{list-style:none;margin:0;padding:0}.memory-fact{display:flex;flex-wrap:wrap;align-items:baseline;gap:6px;padding:4px 0;font-size:.9em;border-bottom:1px solid var(--border-subtle)}.memory-fact:last-child{border-bottom:none}.memory-fact__pin{color:var(--accent);flex-shrink:0}.memory-fact__note{flex:1 1;min-width:200px}.memory-fact__meta{font-size:.75em;color:var(--fg-muted)}.memory-fact__source{color:var(--accent);text-decoration:none}.memory-fact__source:hover{text-decoration:underline}.memory-conv-list{list-style:none;margin:0;padding:0}.memory-conv__link{display:flex;justify-content:space-between;align-items:baseline;gap:12px;padding:7px 10px;border-radius:6px;text-decoration:none;color:var(--fg);font-size:.88em}.memory-conv__link:hover{background:var(--bg-elevated)}.memory-conv__link.is-active{background:var(--accent-muted)}.memory-conv__title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.memory-conv__date{font-size:.78em;color:var(--fg-muted);flex-shrink:0}.memory-editor__error{color:#b91c1c;background:#fef2f2;border:1px solid #fecaca;border-radius:6px;padding:8px 10px;font-size:.82em;margin:0 0 12px}[data-theme=dark] .memory-editor__error{color:#fca5a5;background:#2a1515;border-color:#5b2525}.memory-fact__actions{display:inline-flex;gap:2px;flex-shrink:0}.memory-icon-btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;border:1px solid transparent;border-radius:5px;width:26px;height:26px;display:inline-flex;align-items:center;justify-content:center;color:var(--fg-muted);cursor:pointer}.memory-icon-btn:hover{background:var(--bg-elevated);color:var(--fg);border-color:var(--border)}.memory-icon-btn:disabled{opacity:.4;cursor:default}.memory-icon-btn--danger:hover{color:#b91c1c}.memory-fact__edit{flex:1 1;display:flex;flex-direction:column;gap:6px}.memory-add__textarea,.memory-fact__textarea{width:100%;resize:vertical;font:inherit;font-size:.88em;padding:6px 8px;border:1px solid var(--border);border-radius:6px;background:var(--bg-composer);color:var(--fg)}.memory-fact__edit-actions{display:flex;gap:6px}.memory-btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;display:inline-flex;align-items:center;gap:4px;font:inherit;font-size:.8em;padding:5px 10px;border-radius:6px;border:1px solid var(--border);background:var(--bg-elevated);color:var(--fg);cursor:pointer}.memory-btn:hover{background:var(--bg-panel)}.memory-btn:disabled{opacity:.5;cursor:default}.memory-btn--primary{background:var(--accent);border-color:var(--accent);color:var(--accent-fg)}.memory-btn--primary:hover{filter:brightness(1.08);background:var(--accent)}.memory-btn--danger{border-color:#fecaca;color:#b91c1c;background:#fef2f2}.memory-btn--danger:hover{background:#fee2e2}[data-theme=dark] .memory-btn--danger{border-color:#5b2525;color:#fca5a5;background:#2a1515}.memory-add{margin-top:16px;padding-top:14px;border-top:1px solid var(--border-subtle);flex-direction:column;align-items:flex-start}.memory-add,.memory-add__row{display:flex;gap:8px}.memory-add__kind{font:inherit;font-size:.85em;padding:5px 8px;border:1px solid var(--border);border-radius:6px;background:var(--bg-composer);color:var(--fg)}.memory-clear{margin-top:14px;display:flex;align-items:center;gap:10px;flex-wrap:wrap}.memory-drawer__toggle{position:fixed;right:16px;bottom:96px;z-index:40;width:38px;height:38px;border-radius:50%;border:1px solid var(--border);background:var(--bg-elevated);color:var(--fg-muted);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:0 2px 8px rgba(0,0,0,.12)}.memory-drawer__toggle:hover{color:var(--fg);background:var(--bg-panel)}.memory-drawer__toggle.is-open{background:var(--accent);border-color:var(--accent);color:var(--accent-fg)}.memory-drawer{position:fixed;right:0;top:0;bottom:0;z-index:41;width:320px;max-width:88vw;background:var(--bg-panel);border-left:1px solid var(--border);display:flex;flex-direction:column;box-shadow:-4px 0 16px rgba(0,0,0,.14)}.memory-drawer__header{display:flex;align-items:center;justify-content:space-between;padding:12px 12px 10px;border-bottom:1px solid var(--border-subtle)}.memory-drawer__title{display:inline-flex;align-items:center;gap:6px;font-weight:600;font-size:.92em}.memory-drawer__body{flex:1 1;overflow-y:auto;padding:12px}.memory-drawer__section{margin-bottom:18px}.memory-drawer__section-title{margin:0 0 6px;font-size:.78em;text-transform:uppercase;letter-spacing:.04em;color:var(--fg-muted)}.memory-drawer__list{list-style:none;margin:0;padding:0}.memory-drawer__item{font-size:.84em;padding:4px 0;border-bottom:1px solid var(--border-subtle);line-height:1.4}.memory-drawer__item:last-child{border-bottom:none}.memory-drawer__topic{font-weight:600}.memory-drawer__more{font-size:.78em;color:var(--fg-muted);padding-top:4px}.memory-drawer__muted{font-size:.82em;color:var(--fg-muted);font-style:italic;margin:0}.memory-drawer__footer{padding:10px 12px;border-top:1px solid var(--border-subtle)}.memory-drawer__full-link{display:inline-flex;align-items:center;gap:4px;font-size:.82em;color:var(--accent);text-decoration:none}.memory-drawer__full-link:hover{text-decoration:underline}