:root{color-scheme:light;--bg:#f3f4f6;--surface:#ffffff;--surface-2:#f7f8fa;--surface-3:#eceff3;--line:#dde1e7;--line-strong:#c2c9d2;--ink:#1b1f24;--ink-2:#3f4650;--muted:#5f6772;--brand:#1f3f66;--brand-fill:#1f3f66;--brand-fill-hover:#183252;--on-brand:#ffffff;--brand-soft:#e8eef5;--mark:#dfe9f5;--ok:#2d5f3f;--ok-soft:#e5f0e8;--ok-line:#9dc3a8;--warn:#7a5210;--warn-soft:#f7efdc;--warn-line:#d8b56e;--bad:#b3261e;--bad-soft:#fbe9e7;--bad-line:#e8a39c;--info:#1d5aa6;--info-soft:#e6eff9;--info-line:#a6c3e6;--focus:#2a5fa8;--shadow:0 1px 2px rgba(17,24,39,.04);--shadow-pop:0 10px 28px rgba(17,24,39,.12),0 1px 3px rgba(17,24,39,.08);--backdrop:rgba(17,24,39,.4);--chart-1:var(--info);--font-ui:"PingFang SC","HarmonyOS Sans SC","Microsoft YaHei UI","Microsoft YaHei","Noto Sans SC","Source Han Sans SC",system-ui,-apple-system,"Segoe UI",sans-serif;--font-display:"Times New Roman",Georgia,"Songti SC","Noto Serif SC","Source Han Serif SC","STSong","SimSun",serif;--font-paper:var(--font-display);--font-mono:"SF Mono","JetBrains Mono",Menlo,Consolas,monospace;--fs-xs:.8125rem;--fs-sm:.875rem;--fs-md:1rem;--fs-lg:1.125rem;--fs-xl:1.25rem;--fs-2xl:1.625rem;--fs-3xl:2.125rem;--fs-4xl:2.5rem;--fs-hero:2.75rem;--fs-num:3.5rem;--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.5rem;--space-6:2rem;--space-7:3rem;--space-8:4rem;--measure:65ch;--topbar-h:64px;--footer-h:69px;--sticky-top:calc(var(--topbar-h) + var(--space-4));--sticky-bottom:calc(var(--footer-h) + var(--space-4));--r-sm:4px;--r-md:6px;--r-lg:6px;--r-pop:8px;--ease:cubic-bezier(.2,.7,.2,1);--figure-bg:#ffffff;--danger:var(--bad);--surface-raised:var(--surface-2);--panel-soft:var(--surface-2)}:root[data-theme=dark]{color-scheme:dark;--bg:#161b22;--surface:#1d242d;--surface-2:#1a2028;--surface-3:#27303b;--line:#303a47;--line-strong:#465366;--ink:#e8ecf1;--ink-2:#c4ccd6;--muted:#9ba6b4;--brand:#9ebde6;--brand-fill:#3b6699;--brand-fill-hover:#4672a6;--on-brand:#ffffff;--brand-soft:#1f2d40;--mark:#243a55;--ok:#8ccaa0;--ok-soft:#1b2e24;--ok-line:#3f6b50;--warn:#e3bb68;--warn-soft:#302817;--warn-line:#7a6230;--bad:#f5a39b;--bad-soft:#3b1f1f;--bad-line:#8a4540;--info:#8fc0f2;--info-soft:#1a2b3f;--info-line:#3d5f87;--focus:#8fb8ee;--shadow:0 1px 2px rgba(0,0,0,.2);--shadow-pop:0 12px 32px rgba(0,0,0,.45),0 1px 3px rgba(0,0,0,.3);--backdrop:rgba(5,8,12,.6);--figure-bg:#ffffff}*,:after,:before{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{min-height:100vh;background:var(--bg);font-family:var(--font-ui);font-size:var(--fs-md);line-height:1.7;font-feature-settings:"kern","tnum";font-kerning:normal;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;font-variant-numeric:tabular-nums;overflow-x:hidden}body,h1,h2,h3,h4{margin:0;color:var(--ink)}h1,h2,h3,h4{line-height:1.3;font-weight:600}h1{font-size:var(--fs-3xl);line-height:1.25}.display,h1{font-family:var(--font-display);font-weight:600;letter-spacing:.01em}h2{font-size:var(--fs-xl)}h3{font-size:var(--fs-lg)}p{margin:0;text-wrap:pretty}h1,h2,h3{text-wrap:balance}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed}a{color:var(--brand)}code,kbd{font-family:var(--font-mono)}blockquote{margin:0}:focus-visible{outline:2px solid var(--focus);outline-offset:2px;border-radius:var(--r-sm)}::selection{background:var(--mark);color:var(--ink)}.visually-hidden{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.paper-text{font-family:var(--font-paper)}.quote-block{padding:10px 14px;border-left:2px solid var(--line-strong);border-radius:0 var(--r-sm) var(--r-sm) 0;background:var(--surface-2)}.num{font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.ghost-button,.outline-button,.primary-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:8px 16px;border-radius:var(--r-sm);font-size:var(--fs-md);font-weight:600;line-height:1.2;white-space:nowrap;border:1px solid transparent;background:transparent;color:var(--ink);transition:border-color .18s var(--ease),background-color .18s var(--ease),transform .18s var(--ease),box-shadow .18s var(--ease)}.primary-button{background:var(--brand-fill);color:var(--on-brand)}.primary-button:hover:not(:disabled){background:var(--brand-fill-hover)}.outline-button{background:var(--surface);border-color:var(--line-strong);color:var(--ink)}.outline-button:hover:not(:disabled){background:var(--surface-2);border-color:var(--muted)}.ghost-button{color:var(--ink-2)}.ghost-button:hover:not(:disabled){background:var(--surface-3);color:var(--ink)}.outline-button:active:not(:disabled),.primary-button:active:not(:disabled){transform:translateY(1px)}.ghost-button:disabled,.outline-button:disabled,.primary-button:disabled{opacity:.5}.text-button{display:inline-flex;align-items:center;gap:4px;min-height:44px;padding:4px 2px;border:0;background:none;color:var(--brand);font-size:var(--fs-sm);font-weight:600}.text-button:hover{text-decoration:underline;text-underline-offset:3px}p .text-button{min-height:0;padding:0}.icon-button{display:inline-grid;place-items:center;width:44px;height:44px;border-radius:var(--r-sm);border:1px solid transparent;background:transparent;color:var(--ink-2)}.icon-button:hover{background:var(--surface-3);color:var(--ink)}.button-sm{min-height:32px;padding:5px 12px;font-size:var(--fs-sm);border-radius:var(--r-sm);position:relative}.button-sm:after{content:"";position:absolute;inset:-7px -2px}.spin{animation:tm-spin 1s linear infinite}@keyframes tm-spin{to{transform:rotate(1turn)}}.pill{display:inline-flex;align-items:center;gap:5px;padding:2px 10px;border-radius:999px;font-size:var(--fs-xs);font-weight:600;line-height:1.6;white-space:nowrap;background:var(--surface-3);color:var(--ink-2);border:1px solid transparent}.pill-green{background:var(--ok-soft);color:var(--ok);border-color:var(--ok-line)}.pill-amber{background:var(--warn-soft);color:var(--warn);border-color:var(--warn-line)}.pill-red{background:var(--bad-soft);color:var(--bad);border-color:var(--bad-line)}.pill-blue{background:var(--info-soft);color:var(--info);border-color:var(--info-line)}.pill-neutral{background:var(--surface-3);color:var(--ink-2)}.panel{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow);padding:var(--space-5)}.panel-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-3) var(--space-4);flex-wrap:wrap;margin-bottom:var(--space-4)}.panel-heading>div:first-child{flex:1 1 260px;min-width:0}.panel-heading h2{font-family:var(--font-display);font-size:var(--fs-xl);font-weight:600;letter-spacing:.01em}.panel-heading.compact{margin-bottom:12px}.eyebrow{display:block;font-size:var(--fs-xs);font-weight:600;color:var(--muted);letter-spacing:.04em;margin-bottom:2px}.section-lede{color:var(--ink-2);font-size:var(--fs-md);max-width:var(--measure);margin-bottom:var(--space-4)}.graph-muted,.muted{color:var(--muted)}.graph-muted{font-size:var(--fs-sm)}.callout,.stress-error{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;padding:12px 16px;border-radius:var(--r-md);background:var(--bad-soft);border:1px solid var(--bad-line);color:var(--ink);margin:12px 0}.stress-error strong{color:var(--bad)}.callout.info{background:var(--info-soft);border-color:var(--info-line)}.callout.ok{background:var(--ok-soft);border-color:var(--ok-line)}.callout.warning{background:var(--warn-soft);border-color:var(--warn-line)}.backend-notice{display:flex;gap:12px;align-items:flex-start;padding:18px;border-radius:var(--r-md);border:1px dashed var(--line-strong);background:var(--surface-2);color:var(--ink-2)}.backend-notice strong{display:block;margin-bottom:4px;color:var(--ink);font-size:var(--fs-lg)}.backend-notice code{padding:1px 6px;border-radius:var(--r-sm);background:var(--surface-3)}input:not([type]),input[type=text],select,textarea{background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--r-sm);color:var(--ink);font-size:var(--fs-md)}select{min-height:44px;padding:6px 12px}input:not([type]),input[type=number],input[type=search],input[type=text],input[type=url]{min-height:44px;padding:8px 12px}textarea{padding:10px 14px;line-height:1.65}::placeholder{color:var(--muted);opacity:1}input:not([type=file]):hover,select:hover,textarea:hover{border-color:var(--muted)}input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--focus);outline-offset:1px;border-color:var(--focus)}.claim-filter{min-height:44px;font-size:var(--fs-sm)}.app-shell{min-height:100vh;display:flex;flex-direction:column}.brand-mark{display:grid;place-items:center;width:36px;height:36px;border-radius:var(--r-sm);background:var(--brand-soft);color:var(--brand);flex:none}.main{flex:1 1;min-width:0;display:flex;flex-direction:column}.content{width:100%;max-width:1280px;margin:0 auto;padding:var(--space-6) var(--space-6) var(--space-7);animation:tm-page-in .22s var(--ease)}.content,.page-stack{display:flex;flex-direction:column;gap:var(--space-6)}.content:focus{outline:none}.skip-link{position:fixed;left:12px;top:12px;z-index:100;padding:8px 14px;border-radius:var(--r-sm);background:var(--brand-fill);color:var(--on-brand);font-weight:600;transform:translateY(calc(-100% - 24px));transition:transform .15s var(--ease)}.skip-link:focus{transform:none}@keyframes tm-page-in{0%{transform:translateY(6px)}to{transform:none}}.page-header{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;flex-wrap:wrap}.page-header h1{font-size:var(--fs-2xl)}.page-header p{margin-top:6px;color:var(--ink-2);font-size:var(--fs-md);max-width:70ch}.page-actions{display:flex;gap:8px;flex-wrap:wrap}.modal-backdrop{position:fixed;inset:0;z-index:50;display:grid;place-items:center;padding:16px;background:var(--backdrop)}@keyframes tm-fade{0%{opacity:0}to{opacity:1}}.upload-modal{width:min(520px,100%);max-height:calc(100vh - 32px);overflow-y:auto;background:var(--surface);border-radius:var(--r-pop);padding:24px;box-shadow:var(--shadow-pop);border:1px solid var(--line)}.modal-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:16px}.modal-heading>.icon-button{flex:none;margin:-10px -12px -10px 0}.modal-heading h2{font-family:var(--font-display);font-size:var(--fs-xl);font-weight:600;letter-spacing:.01em}.evidence-backdrop{place-items:stretch end;padding:0}.evidence-drawer{width:min(520px,100vw);height:100%;overflow-y:auto;background:var(--surface);padding:24px;box-shadow:var(--shadow-pop);border-left:1px solid var(--line);display:flex;flex-direction:column;gap:16px;animation:tm-slide .22s var(--ease)}@keyframes tm-slide{0%{transform:translateX(24px);opacity:0}to{transform:none;opacity:1}}.drawer-source{display:flex;gap:10px;align-items:flex-start}.drawer-source strong{display:block}.drawer-source span{font-size:var(--fs-sm);color:var(--muted)}.evidence-facts{display:grid;grid-gap:10px;gap:10px;margin:0}.evidence-facts div{display:grid;grid-template-columns:92px 1fr;grid-gap:12px;gap:12px;align-items:baseline}.evidence-facts dt{color:var(--muted);font-size:var(--fs-sm)}.evidence-facts dd{margin:0}.drawer-quote{padding:14px 16px;border-left:2px solid var(--line-strong);background:var(--surface-2);border-radius:0 var(--r-sm) var(--r-sm) 0;font-family:var(--font-paper);font-size:var(--fs-lg);line-height:1.8}.drawer-steps ol{margin:8px 0 0;padding-left:20px;display:grid;grid-gap:6px;gap:6px;color:var(--ink-2)}.toast{position:fixed;left:50%;bottom:28px;z-index:60;transform:translateX(-50%);display:flex;align-items:center;gap:10px;max-width:min(640px,calc(100vw - 32px));padding:12px 18px;border-radius:var(--r-md);background:var(--ink);color:var(--bg);font-size:var(--fs-md);box-shadow:var(--shadow-pop);animation:tm-toast .22s var(--ease)}@keyframes tm-toast{0%{opacity:0;transform:translate(-50%,8px)}to{opacity:1;transform:translate(-50%)}}.operation-alert{display:flex;align-items:flex-start;gap:12px;margin-bottom:16px;padding:12px 14px;border:1px solid var(--bad-line);border-radius:var(--r-md);background:var(--bad-soft);color:var(--ink);font-size:var(--fs-md);line-height:1.5}.operation-alert>span{flex:1 1;min-width:0}.operation-alert-actions{display:flex;flex-wrap:wrap;gap:8px}.operation-alert svg{flex-shrink:0;margin-top:2px;color:var(--bad)}.dropzone{display:grid;justify-items:center;grid-gap:8px;gap:8px;padding:28px 16px;border:2px dashed var(--line-strong);border-radius:var(--r-md);background:var(--surface-2);text-align:center;color:var(--ink-2);transition:border-color .16s,background .16s}.dropzone.dragging{border-color:var(--brand);background:var(--brand-soft)}.dropzone strong{font-size:var(--fs-lg);color:var(--ink)}.dropzone span{font-size:var(--fs-sm);color:var(--muted)}.file-picker{cursor:pointer;margin-top:6px}.privacy-note{display:flex;gap:8px;align-items:flex-start;margin-top:14px;font-size:var(--fs-sm);color:var(--muted)}.upload-error{margin-top:12px;padding:10px 12px;border:1px solid var(--bad-line);border-radius:var(--r-sm);background:var(--bad-soft);color:var(--bad);font-size:var(--fs-sm);line-height:1.5}.upload-success{display:grid;grid-gap:10px;gap:10px;padding:16px;border-radius:var(--r-md);background:var(--ok-soft);border:1px solid var(--ok-line)}.upload-success strong{font-size:var(--fs-lg)}.upload-success button{justify-self:start}.palette-backdrop{align-items:flex-start;padding-top:12vh}.palette{width:min(640px,100%);background:var(--surface);border-radius:var(--r-pop);box-shadow:var(--shadow-pop);border:1px solid var(--line);overflow:hidden}.palette-input{display:flex;align-items:center;gap:10px;padding:14px 16px;border-bottom:1px solid var(--line);color:var(--muted)}.palette-input input{flex:1 1;border:0;outline:0;background:transparent;font-size:var(--fs-lg);color:var(--ink)}.palette-input kbd{font-size:var(--fs-xs);padding:1px 6px;border:1px solid var(--line);border-radius:var(--r-sm);background:var(--surface-2)}.palette-results{list-style:none;margin:0;padding:6px;max-height:52vh;overflow:auto}.palette-results button{width:100%;display:flex;align-items:center;gap:10px;padding:10px 12px;border:0;border-radius:var(--r-sm);background:transparent;text-align:left}.palette-results button.active{background:var(--brand-soft);box-shadow:inset 2px 0 0 var(--brand)}.palette-results strong{flex:1 1;font-weight:500}.palette-results small,.palette-results strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.palette-results small{color:var(--muted);max-width:40%;font-size:var(--fs-sm)}.palette-group{font-size:var(--fs-xs);padding:1px 8px;border-radius:999px;background:var(--surface-3);color:var(--ink-2)}.palette-empty{padding:16px;text-align:center;color:var(--muted)}.help-steps{list-style:none;padding:0;margin:4px 0 14px;display:grid;grid-gap:14px;gap:14px}.help-steps li{display:flex;gap:12px}.help-steps li>span{flex:none;width:28px;height:28px;border-radius:var(--r-sm);display:grid;place-items:center;background:var(--surface-2);border:1px solid var(--line-strong);color:var(--ink-2);font-weight:700}.help-steps p{margin-top:2px;color:var(--ink-2)}.help-actions{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:14px}.help-note{font-size:var(--fs-sm);color:var(--muted)}.help-note kbd{padding:0 5px;border-radius:var(--r-sm);background:var(--surface-3)}.help-reset{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-top:16px;padding-top:14px;border-top:1px solid var(--line)}.help-reset>div:first-child{flex:1 1 260px;display:grid;grid-gap:2px;gap:2px}.help-reset strong{font-size:var(--fs-md)}.help-reset span{font-size:var(--fs-sm);color:var(--muted)}.help-reset-actions{display:flex;gap:8px}.danger-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:8px 18px;border-radius:var(--r-sm);border:1px solid var(--bad-line);background:var(--bad-soft);color:var(--bad);font-weight:600;transition:filter .16s var(--ease)}.danger-button:hover:not(:disabled){filter:brightness(.96)}.danger-button:disabled{opacity:.6;cursor:not-allowed}.confirm-modal{max-width:440px}.confirm-modal h2{font-family:var(--font-display);font-size:var(--fs-xl);font-weight:600;letter-spacing:.01em}.confirm-modal p{margin-top:10px;color:var(--ink-2);line-height:1.7}.confirm-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:20px}.loading-screen{min-height:100vh;display:grid;place-items:center;padding:16px}.loading-card{display:grid;justify-items:center;grid-gap:12px;gap:12px;text-align:center;max-width:460px}.loading-card h1{font-size:var(--fs-2xl)}.loading-card p{color:var(--ink-2)}.loading-bar{width:220px;height:3px;border-radius:0;background:var(--line);overflow:hidden}.loading-bar span{display:block;width:40%;height:100%;background:var(--brand-fill);animation:tm-loading 1.1s var(--ease) infinite}@keyframes tm-loading{0%{transform:translateX(-100%)}to{transform:translateX(260%)}}.compare-workspace,.defense-workspace,.graph-panel,.references-panel{padding:24px}@media (min-width:721px) and (max-width:1360px){:root{--topbar-h:124px}}@media (max-width:720px){.content{padding:var(--space-4) var(--space-3) var(--space-6)}.content,.page-stack{gap:var(--space-5)}.page-header h1{font-size:var(--fs-2xl)}.compare-workspace,.defense-workspace,.evidence-drawer,.graph-panel,.panel,.references-panel{padding:16px}}html[data-theme-switching] *,html[data-theme-switching] :after,html[data-theme-switching] :before{transition:none!important}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}@media print{.operation-alert,.step-footer,.step-header,.toast,.topbar{display:none!important}}