:root{--background:#ffffff;--foreground:#171717;--accent:#2563eb}@media (prefers-color-scheme:dark){:root{--background:#0a0a0a;--foreground:#ededed;--accent:#60a5fa}}*{box-sizing:border-box}body,html{max-width:100vw;overflow-x:hidden;margin:0;padding:0}body{color:var(--foreground);background:var(--background);font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;line-height:1.5}main{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100vh;gap:1rem;padding:2rem;text-align:center}main h1{font-size:2.5rem;margin:0}main a{color:var(--accent)}.app,.editor{align-items:stretch;justify-content:flex-start;text-align:left;width:100%;max-width:880px;margin:0 auto}.app-header,.editor-header{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;width:100%}.app-header h1{font-size:1.75rem}.app-section{display:flex;flex-direction:column;gap:.75rem;width:100%}.row-between{display:flex;align-items:center;justify-content:space-between;gap:1rem}.muted{color:#6b7280}.error,.muted{font-size:.9rem}.error{color:#dc2626}.doc-list{list-style:none;margin:0;padding:0;gap:.5rem;width:100%}.doc-list,.doc-list li a{display:flex;flex-direction:column}.doc-list li a{gap:.25rem;padding:.75rem 1rem;border:1px solid #e5e7eb;border-radius:8px;text-decoration:none;color:inherit}.doc-list li a:hover{border-color:var(--accent)}.doc-title{font-weight:600;color:var(--foreground)}.new-doc{display:inline-flex;align-items:center;gap:.75rem}.back-link{font-size:.9rem}.title-input{width:100%;font-size:1.75rem;font-weight:700;border:none;border-bottom:1px solid transparent;padding:.25rem 0;background:transparent;color:var(--foreground)}.title-input:focus{outline:none;border-bottom-color:var(--accent)}.body-input{width:100%;min-height:50vh;resize:vertical;font:inherit;line-height:1.6;border:1px solid #e5e7eb;border-radius:8px;padding:.75rem 1rem;background:transparent;color:var(--foreground)}.body-input:focus{outline:none;border-color:var(--accent)}.editor-toolbar{display:flex;align-items:center;gap:1rem;width:100%}button{font:inherit;padding:.5rem 1rem;border-radius:6px;border:1px solid var(--accent);background:var(--accent);color:#ffffff;cursor:pointer}button:disabled{opacity:.55;cursor:default}.ai-panel{width:100%;text-align:left}.ai-panel-toggle{background:none;border:none;color:var(--accent);padding:.25rem 0;font-size:.95rem}.ai-panel-body{display:flex;flex-direction:column;gap:.75rem;margin-top:.5rem;padding:1rem;border:1px solid #e5e7eb;border-radius:8px}.ai-panel-ask{display:flex;gap:.5rem}.ai-panel-ask input{font:inherit;flex:1 1;padding:.5rem .75rem;border:1px solid #d1d5db;border-radius:6px}.ai-panel-ask input:focus{outline:none;border-color:var(--accent)}.ai-panel-answer{margin:0;white-space:pre-wrap}.type-picker h2{margin:0 0 .25rem}.type-cards{list-style:none;margin:1rem 0 0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));grid-gap:.75rem;gap:.75rem}.type-card{border:1px solid var(--border,#d0d0d0);border-radius:8px;overflow:hidden}.type-card,.type-card-main{display:flex;flex-direction:column}.type-card-main{gap:.25rem;align-items:flex-start;padding:.9rem;text-align:left;border:none;background:transparent;cursor:pointer;flex:1 1}.type-card-main:hover{background:rgba(120,120,120,.08)}.type-card-label{font-weight:600}.type-card-alt{border:none;border-top:1px solid var(--border,#d0d0d0);background:transparent;padding:.4rem;font-size:.85rem;cursor:pointer;opacity:.75}.type-card-alt:hover{opacity:1}.type-pill{border:1px solid var(--border,#d0d0d0);border-radius:999px;padding:.15rem .7rem;font-size:.85rem;white-space:nowrap}.interview{display:flex;flex-direction:column;gap:.75rem}.interview-bar{display:flex;align-items:center;gap:.75rem}.interview-progress{font-size:.9rem;opacity:.8}.linkish{border:none;background:transparent;cursor:pointer;text-decoration:underline;padding:.25rem}.interview-meta{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem;font-size:.9rem}.interview-meta input,.interview-meta select{padding:.35rem .5rem}.interview-meta label{gap:.4rem}.audience-set,.interview-meta label{display:inline-flex;align-items:center}.audience-set{gap:.6rem;border:1px solid var(--border,#d0d0d0);border-radius:6px;padding:.25rem .6rem}.audience-option{display:inline-flex;align-items:center;gap:.25rem}.new-dept{display:inline-flex;gap:.35rem}.interview-panes{display:grid;grid-template-columns:3fr 2fr;grid-gap:1rem;gap:1rem;min-height:420px}.interview-draft{width:100%;min-height:420px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.9rem;line-height:1.5;padding:.75rem;resize:vertical}.interview-chat{display:flex;flex-direction:column;border:1px solid var(--border,#d0d0d0);border-radius:8px;overflow:hidden}.chat-thread{list-style:none;margin:0;padding:.75rem;flex:1 1;overflow-y:auto;display:flex;flex-direction:column;gap:.6rem}.chat-thread li{max-width:90%;padding:.5rem .7rem;border-radius:10px;white-space:pre-wrap}.chat-assistant{background:rgba(120,120,120,.12);align-self:flex-start}.chat-user{background:rgba(80,140,255,.15);align-self:flex-end}.chat-input{display:flex;flex-direction:column;gap:.4rem;border-top:1px solid var(--border,#d0d0d0);padding:.6rem}.chat-input textarea{min-height:3.5rem;resize:vertical;padding:.5rem}.chat-actions{display:flex;gap:.5rem;align-items:center}@media (max-width:900px){.interview-panes{grid-template-columns:1fr}}.pwa-install,.pwa-update{position:fixed;left:50%;transform:translateX(-50%);bottom:calc(1rem + env(safe-area-inset-bottom, 0px));z-index:50;display:flex;align-items:center;gap:.75rem;max-width:min(92vw,420px)}.pwa-update{padding:.5rem .5rem .5rem 1rem;border-radius:10px;background:var(--foreground);color:var(--background);box-shadow:0 6px 20px rgba(0,0,0,.25);font-size:.9rem}.pwa-install button,.pwa-update button{min-height:44px;padding:.5rem 1rem}.pwa-install button{box-shadow:0 6px 20px rgba(37,99,235,.35)}.editor-insights{display:grid;grid-template-columns:1fr 1fr;grid-gap:1rem;gap:1rem;width:100%}@media (max-width:720px){.editor-insights{grid-template-columns:1fr}}.conflicts-panel,.related-panel{border:1px solid #e5e7eb;border-radius:8px;padding:1rem;text-align:left}.conflicts-panel-title,.related-panel-title{margin:0 0 .5rem;font-size:.95rem;display:flex;align-items:center;gap:.5rem}.conflicts-list,.related-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.5rem}.related-item{display:flex;align-items:center;gap:.5rem;justify-content:space-between}.related-link{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.related-similarity{flex:0 0 64px;height:6px;border-radius:3px;background:#eef1f5;overflow:hidden}.related-similarity-fill{display:block;height:100%;background:var(--accent)}.conflicts-badge{display:inline-flex;align-items:center;justify-content:center;min-width:1.4rem;height:1.4rem;padding:0 .35rem;border-radius:999px;background:#eef1f5;color:#475569;font-size:.8rem;font-weight:600}.conflicts-badge.has-conflicts{background:#c99a2e;color:#ffffff}.conflicts-score{margin-left:auto;font-size:.8rem}.conflict-item{border-left:3px solid #c99a2e;padding:.25rem 0 .25rem .75rem}.conflict-item.severity-warning{border-left-color:#e3c46b}.conflict-quote,.conflict-summary{margin:0 0 .25rem}.conflict-underline{-webkit-text-decoration:underline wavy #c99a2e;text-decoration:underline wavy #c99a2e;text-underline-offset:3px}.conflict-other{font-size:.85rem;margin:0 0 .35rem}.conflict-dismiss{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem}.conflict-dismiss input{font:inherit;flex:1 1;min-width:12rem;padding:.4rem .6rem;border:1px solid #d1d5db;border-radius:6px}.link-button{background:none;border:none;color:var(--accent);padding:.25rem 0;font-size:.9rem;cursor:pointer}.library{max-width:1180px}.library-header-actions{display:flex;align-items:center;gap:1rem}.library-browser{display:grid;grid-template-columns:minmax(280px,360px) 1fr;grid-gap:1.5rem;gap:1.5rem;width:100%;align-items:start}@media (max-width:760px){.library-browser{grid-template-columns:1fr}}.library-list-pane{display:flex;flex-direction:column;gap:.75rem;position:-webkit-sticky;position:sticky;top:1rem}.library-search{font:inherit;padding:.5rem .7rem;border:1px solid #d1d5db;border-radius:8px}.library-list{list-style:none;margin:0;padding:0;gap:.5rem;max-height:70vh;overflow-y:auto}.library-entry,.library-list{display:flex;flex-direction:column}.library-entry{gap:.35rem;width:100%;text-align:left;padding:.65rem .8rem;border:1px solid #e5e7eb;border-radius:8px;background:none;font:inherit;cursor:pointer}.library-entry:hover{border-color:var(--accent)}.library-entry.is-selected{border-color:var(--accent);background:#eff4ff}.library-entry-title{font-weight:600;color:var(--foreground)}.library-entry-meta{display:flex;flex-wrap:wrap;align-items:center;gap:.4rem .6rem;font-size:.8rem}.freshness{font-weight:600}.freshness-fresh{color:#15803d}.freshness-due{color:#b45309}.freshness-stale{color:#b91c1c}.library-badge-warn{color:#b45309;font-weight:600}.library-reader-pane{min-width:0}.reader{display:flex;flex-direction:column;gap:1rem;border:1px solid #e5e7eb;border-radius:10px;padding:1.25rem 1.5rem}.reader-title-row{display:flex;align-items:baseline;justify-content:space-between;gap:1rem}.reader-title-row h2{margin:0}.reader-readonly{border:1px solid #d1d5db;border-radius:999px;padding:.1rem .6rem;white-space:nowrap}.reader-subtitle{margin:0}.reader-health{display:flex;flex-wrap:wrap;gap:.5rem 1.5rem;margin:0;padding:.75rem 1rem;background:#f8fafc;border-radius:8px}.reader-health div{display:flex;flex-direction:column}.reader-health dt{font-size:.75rem;text-transform:uppercase;letter-spacing:.03em;color:#6b7280}.reader-health dd{margin:0;font-weight:600;font-size:1.1rem}.reader-health-warn{color:#b45309}.reader-actions{display:flex;flex-wrap:wrap;gap:.75rem}.button-link{display:inline-block;padding:.4rem .8rem;border:1px solid var(--accent);border-radius:6px;color:var(--accent);text-decoration:none;font-size:.9rem}.button-link:hover{background:#eff4ff}.reader-conflicts{border:1px solid #f0d9a8;background:#fdf8ee;border-radius:8px;padding:.5rem 1rem}.reader-conflicts h3{margin:.25rem 0;font-size:1rem}.reader-conflicts ul{margin:.25rem 0;padding-left:1.1rem}.reader-body{white-space:pre-wrap;word-break:break-word;line-height:1.7}.reader-related h3{margin:.5rem 0;font-size:1rem}.library-link{align-self:flex-start}.body-editor{position:relative;width:100%;display:flex;flex-direction:column;gap:.5rem}.selection-pill{position:-webkit-sticky;position:sticky;top:.5rem;z-index:5;align-self:center;display:flex;flex-wrap:wrap;align-items:center;gap:.35rem;padding:.35rem .5rem;background:#111827;border-radius:999px;box-shadow:0 6px 18px rgba(0,0,0,.25)}.selection-pill button{font:inherit;font-size:.85rem;color:#f9fafb;background:#1f2937;border:1px solid #374151;border-radius:999px;padding:.3rem .7rem;cursor:pointer;max-width:16rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.selection-pill button:hover:not(:disabled){background:#374151}.selection-pill button:disabled{opacity:.5;cursor:default}.selection-pill .muted{color:#cbd5e1;padding:0 .35rem}.assist-overlay{position:fixed;inset:0;z-index:50;display:flex;align-items:center;justify-content:center;background:rgba(15,23,42,.45);padding:1rem}.assist-overlay-card{background:var(--background);border-radius:12px;padding:1.25rem 1.5rem;width:100%;max-width:720px;max-height:85vh;overflow-y:auto;box-shadow:0 20px 50px rgba(0,0,0,.3)}.assist-overlay-card h3{margin:0 0 .75rem}.assist-diff{display:grid;grid-template-columns:1fr 1fr;grid-gap:1rem;gap:1rem}@media (max-width:640px){.assist-diff{grid-template-columns:1fr}}.assist-diff-label{font-size:.75rem;text-transform:uppercase;letter-spacing:.03em;color:#6b7280}.assist-diff-new,.assist-diff-old{white-space:pre-wrap;word-break:break-word;margin:.25rem 0 0;padding:.6rem .8rem;border-radius:8px;line-height:1.6}.assist-diff-old{background:#fef2f2;border:1px solid #fecaca}.assist-diff-new{background:#f0fdf4;border:1px solid #bbf7d0}.assist-overlay-actions{display:flex;align-items:center;gap:1rem;margin-top:1rem}.assistant-panel{width:100%;text-align:left}.assistant-toggle{background:none;border:none;color:var(--accent);padding:.25rem 0;font-size:.95rem;cursor:pointer;gap:.4rem}.assistant-count,.assistant-toggle{display:inline-flex;align-items:center}.assistant-count{justify-content:center;min-width:1.3rem;height:1.3rem;padding:0 .3rem;border-radius:999px;background:#eef1f5;color:#475569;font-size:.75rem;font-weight:600}.assistant-body{margin-top:.5rem;padding:1rem;border:1px solid #e5e7eb;border-radius:8px}.assistant-body,.assistant-messages{display:flex;flex-direction:column;gap:.75rem}.assistant-messages{max-height:40vh;overflow-y:auto}.assistant-msg{display:flex;flex-direction:column;gap:.15rem;padding:.5rem .75rem;border-radius:8px;max-width:92%}.assistant-msg-user{align-self:flex-end;background:#eff4ff}.assistant-msg-assistant{align-self:flex-start;background:#f8fafc}.assistant-msg-role{font-size:.7rem;text-transform:uppercase;letter-spacing:.03em;color:#6b7280}.assistant-msg-content{margin:0;white-space:pre-wrap;word-break:break-word}.assistant-sources{margin:.15rem 0 0}.assistant-input{display:flex;gap:.5rem;align-items:center}.assistant-input input{font:inherit;flex:1 1;padding:.5rem .75rem;border:1px solid #d1d5db;border-radius:6px}.assistant-input input:focus{outline:none;border-color:var(--accent)}.ask-form{display:flex;gap:.5rem;align-items:center;margin-bottom:1rem}.ask-form input{font:inherit;flex:1 1;padding:.55rem .75rem;border:1px solid #d1d5db;border-radius:6px}.ask-form input:focus{outline:none;border-color:var(--accent)}.ask-answer{white-space:pre-wrap;line-height:1.55}.shape-badge{display:inline-block;padding:.1rem .55rem;border-radius:999px;font-size:.75rem;font-weight:600;border:1px solid transparent}.shape-ok{color:#166534;background:#dcfce7;border-color:#86efac}.shape-warn{color:#92400e;background:#fef3c7;border-color:#fcd34d}.shape-conflict{color:#991b1b;background:#fee2e2;border-color:#fca5a5}.shape-muted{color:#4b5563;background:#f3f4f6;border-color:#d1d5db}.ask-closest ul,.triage-closest{margin:.25rem 0 0}.ask-submit,.ask-submitted{margin-top:.75rem}.ask-submitted{color:#166534;font-weight:500}.triage-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.75rem}.triage-item{border:1px solid var(--border,#d0d0d0);border-radius:8px;padding:.85rem 1rem}.triage-question{font-weight:600}.triage-closest,.triage-meta{font-size:.85rem}.triage-actions{display:flex;flex-wrap:wrap;gap:.4rem;margin-top:.6rem}.triage-note textarea{width:100%;min-height:3.5rem;font:inherit;padding:.5rem;border:1px solid #d1d5db;border-radius:6px;margin-top:.5rem}.triage-done{color:#166534}.health-dashboard{display:flex;flex-direction:column;gap:1.5rem}.health-headline{display:flex;align-items:center;justify-content:space-between;gap:1.5rem;flex-wrap:wrap}.health-org{display:flex;flex-direction:column;gap:.25rem}.health-org-score{font-size:3.5rem;font-weight:700;line-height:1}.health-trend{display:flex;flex-direction:column;align-items:flex-end;gap:.25rem;color:var(--accent)}.health-trend-empty{align-self:center}.health-subscores,.scorecard-list{list-style:none;padding:0;margin:0}.health-subscores{display:flex;gap:1.5rem;flex-wrap:wrap}.health-subscores li{display:flex;flex-direction:column;align-items:center;min-width:5rem}.health-subscore-value{font-size:1.75rem;font-weight:600}.health-dept-table{width:100%;border-collapse:collapse;font-size:.9rem}.health-dept-table td,.health-dept-table th{text-align:left;padding:.4rem .6rem;border-bottom:1px solid #e5e7eb}.health-dept-table th{font-weight:600;color:#6b7280}.health-triage{display:flex;gap:2rem;margin-bottom:.75rem}.health-metric{display:flex;flex-direction:column}.health-metric-value{font-size:2rem;font-weight:700;line-height:1}.health-triage-depts{list-style:none;padding:0;margin:0 0 .75rem;display:flex;flex-direction:column;gap:.25rem;max-width:20rem}.health-triage-depts li{display:flex;justify-content:space-between}.scorecard-panel{grid-column:1/-1;border:1px solid #e5e7eb;border-radius:8px;padding:1rem;text-align:left}.scorecard-title{display:flex;align-items:center;gap:.5rem;margin:0 0 .75rem;font-size:1rem}.scorecard-badge{display:inline-flex;align-items:center;justify-content:center;min-width:2rem;padding:.1rem .5rem;border-radius:999px;background:var(--accent);color:#fff;font-weight:700}.scorecard-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(9rem,1fr));grid-gap:.75rem;gap:.75rem}.scorecard-row{display:flex;align-items:baseline;gap:.4rem}.scorecard-subvalue{font-size:1.25rem;font-weight:600}.scorecard-sublabel{font-weight:500}.scorecard-note{margin:.15rem 0 0;font-size:.8rem}