:root{--bg: #f6f3ec;--bg-elevated: #fffdf8;--surface: #fffdf8;--surface-2: #f0ebe1;--surface-3: #e7e1d4;--border: #e1dacb;--border-strong: #cec4b0;--text: #23201b;--text-soft: #4a443b;--muted: #837a6c;--faint: #a99f8e;--accent: #1f5f5b;--accent-soft: #e0edeb;--accent-strong: #164441;--warn: #96610f;--warn-soft: #f7eedb;--danger: #a63c33;--danger-soft: #f8e5e3;--stance-support: #2c6e4b;--stance-oppose: #a63c33;--stance-neutral: #6b6459;--stance-watch: #96610f;--stance-undecided: #57489a;--font-ui: -apple-system, BlinkMacSystemFont, "Segoe UI", system-ui, "PingFang TC", "Microsoft JhengHei", "Noto Sans TC", "Noto Sans CJK TC", sans-serif;--font-prose: "Noto Serif TC", "Source Han Serif TC", "Songti TC", Georgia, "Times New Roman", serif;--font-mono: ui-monospace, SFMono-Regular, "SF Mono", Menlo, Consolas, monospace;--radius: 10px;--radius-lg: 16px;--shadow-sm: 0 1px 2px rgba(35, 32, 27, .06);--shadow-md: 0 6px 24px rgba(35, 32, 27, .09);--header-h: 58px;--sidebar-w: 304px}[data-theme=dark]{--bg: #16181a;--bg-elevated: #1b1e21;--surface: #1b1e21;--surface-2: #22262a;--surface-3: #2a2f34;--border: #31373d;--border-strong: #454d56;--text: #e9e6e0;--text-soft: #c9c4bb;--muted: #9a9287;--faint: #6f6860;--accent: #5fb3ad;--accent-soft: #1b302f;--accent-strong: #86cec8;--warn: #d6a02a;--warn-soft: #332a19;--danger: #e07066;--danger-soft: #35201e;--stance-support: #5fbf85;--stance-oppose: #e07066;--stance-neutral: #9a9287;--stance-watch: #d6a02a;--stance-undecided: #a795e0;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .4);--shadow-md: 0 8px 28px rgba(0, 0, 0, .45)}*{box-sizing:border-box}html,body{margin:0;padding:0;height:100%}body{background:var(--bg);color:var(--text);font-family:var(--font-ui);font-size:15px;line-height:1.6;-webkit-font-smoothing:antialiased}h1,h2,h3,h4,h5{margin:0;font-weight:650;line-height:1.3}p{margin:0}a{color:var(--accent);text-decoration-color:color-mix(in srgb,var(--accent) 35%,transparent);text-underline-offset:2px}a:hover{color:var(--accent-strong)}button{font:inherit;color:inherit}:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:4px}.app-root{display:flex;flex-direction:column;height:100vh;min-height:100vh}.app-header{display:flex;align-items:center;gap:18px;height:var(--header-h);padding:0 18px;background:var(--bg-elevated);border-bottom:1px solid var(--border);flex:0 0 auto;position:sticky;top:0;z-index:20}.brand{display:flex;align-items:baseline;gap:9px;min-width:0}.brand-mark{color:var(--accent);font-size:17px;line-height:1;align-self:center}.brand-text{display:flex;flex-direction:column;line-height:1.15;min-width:0}.brand-name{font-size:15px;letter-spacing:.04em}.brand-tagline{font-size:11px;color:var(--faint);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.brand-version{font-size:10px;color:var(--faint);font-family:var(--font-mono)}.view-switch{display:flex;gap:2px;padding:3px;background:var(--surface-2);border-radius:999px;border:1px solid var(--border)}.view-switch button{border:0;background:transparent;padding:5px 15px;border-radius:999px;cursor:pointer;font-size:13px;color:var(--muted);transition:background .15s ease,color .15s ease}.view-switch button:hover{color:var(--text)}.view-switch button.is-active{background:var(--surface);color:var(--text);box-shadow:var(--shadow-sm)}.header-tools{margin-left:auto;display:flex;align-items:center;gap:8px}.header-search{width:min(320px,34vw);padding:7px 12px;border-radius:999px;border:1px solid var(--border);background:var(--surface-2);color:var(--text);font-size:13px}.header-search::placeholder{color:var(--faint)}.icon-button{width:32px;height:32px;display:grid;place-items:center;border-radius:8px;border:1px solid var(--border);background:var(--surface);cursor:pointer;color:var(--muted);font-size:14px;transition:background .15s ease,color .15s ease}.icon-button:hover{background:var(--surface-2);color:var(--text)}.icon-button.subtle{border-color:transparent;background:transparent;font-size:16px;line-height:1}.icon-button.subtle:hover{background:var(--surface-3)}.app-body{flex:1 1 auto;display:flex;min-height:0;overflow:hidden}.app-main{flex:1 1 auto;min-width:0;overflow-y:auto}.topic-list{width:var(--sidebar-w);flex:0 0 var(--sidebar-w);border-right:1px solid var(--border);background:var(--bg-elevated);display:flex;flex-direction:column;min-height:0}.topic-list-head{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:14px 16px 8px}.topic-list-title{display:flex;align-items:center;gap:8px}.topic-list-title h2{font-size:14px;letter-spacing:.06em;color:var(--muted)}.count-badge{font-size:11px;font-family:var(--font-mono);color:var(--muted);background:var(--surface-2);border-radius:999px;padding:1px 7px}.list-search{margin:0 16px 10px;padding:7px 11px;border-radius:8px;border:1px solid var(--border);background:var(--surface);color:var(--text);font-size:13px}.filter-chips{display:flex;flex-wrap:wrap;gap:5px;padding:0 16px 10px}.chip-button{border:1px solid var(--border);background:var(--surface);color:var(--muted);border-radius:999px;padding:3px 11px;font-size:12px;cursor:pointer;transition:all .15s ease}.chip-button:hover{border-color:var(--border-strong);color:var(--text)}.chip-button.is-active{background:var(--accent-soft);border-color:color-mix(in srgb,var(--accent) 40%,transparent);color:var(--accent-strong)}.domain-filter{padding:0 16px 10px}.domain-filter label{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--muted)}.domain-filter select{flex:1}select,input[type=text],input[type=url],input[type=email],input[type=password],input[type=search],input[type=number],textarea{font:inherit;font-size:13px;padding:6px 9px;border-radius:8px;border:1px solid var(--border);background:var(--surface);color:var(--text)}select:focus,input:focus,textarea:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.topic-list-body{flex:1 1 auto;overflow-y:auto;padding:0 10px 24px}.topic-group{margin-bottom:14px}.group-title{font-size:11px;letter-spacing:.1em;color:var(--faint);padding:6px 8px;text-transform:uppercase}.topic-item{display:flex;align-items:flex-start;gap:9px;width:100%;text-align:left;border:1px solid transparent;background:transparent;border-radius:var(--radius);padding:8px 9px;cursor:pointer;transition:background .14s ease,border-color .14s ease}.topic-item:hover{background:var(--surface-2)}.topic-item.is-active{background:var(--accent-soft);border-color:color-mix(in srgb,var(--accent) 32%,transparent)}.stance-dot{flex:0 0 auto;width:20px;height:20px;display:grid;place-items:center;border-radius:6px;font-size:11px;font-weight:700;margin-top:2px}.stance-support{color:var(--stance-support)}.stance-oppose{color:var(--stance-oppose)}.stance-neutral{color:var(--stance-neutral)}.stance-watch{color:var(--stance-watch)}.stance-undecided{color:var(--stance-undecided)}.stance-dot.stance-support{background:color-mix(in srgb,var(--stance-support) 14%,transparent)}.stance-dot.stance-oppose{background:color-mix(in srgb,var(--stance-oppose) 14%,transparent)}.stance-dot.stance-neutral{background:color-mix(in srgb,var(--stance-neutral) 14%,transparent)}.stance-dot.stance-watch{background:color-mix(in srgb,var(--stance-watch) 16%,transparent)}.stance-dot.stance-undecided{background:color-mix(in srgb,var(--stance-undecided) 14%,transparent)}.topic-item-text{display:flex;flex-direction:column;min-width:0}.topic-item-title{font-size:13.5px;font-weight:600;color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.topic-item-liner{font-size:12px;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.topic-item.is-active .topic-item-liner{color:var(--text-soft)}.topic-detail{max-width:880px;margin:0 auto;padding:22px 26px 72px}.detail-head{display:flex;align-items:flex-start;gap:14px;margin-bottom:16px}.detail-head-main{flex:1 1 auto;min-width:0}.detail-title-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.detail-title{font-size:24px;letter-spacing:-.01em}.detail-sub{color:var(--muted);font-family:var(--font-prose);font-size:15px;margin-top:3px}.detail-actions{display:flex;gap:8px;flex:0 0 auto}.stance-badge{font-size:11.5px;font-weight:600;padding:2px 9px;border-radius:999px;border:1px solid currentColor;opacity:.92}.detail-tabs{display:flex;flex-wrap:wrap;gap:2px;border-bottom:1px solid var(--border);margin-bottom:20px}.detail-tabs button{border:0;background:transparent;padding:8px 14px;cursor:pointer;font-size:13.5px;color:var(--muted);border-bottom:2px solid transparent;margin-bottom:-1px;display:flex;align-items:center;gap:6px;white-space:nowrap}.detail-tabs button:hover{color:var(--text)}.detail-tabs button.is-active{color:var(--accent-strong);border-bottom-color:var(--accent);font-weight:600}.tab-count{font-size:10.5px;font-family:var(--font-mono);background:var(--surface-2);border-radius:999px;padding:0 6px;color:var(--muted)}.stance-card{display:flex;flex-direction:column;gap:18px}.card-section{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:16px 18px}.section-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px}.section-title{font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin-bottom:10px}.section-head .section-title{margin-bottom:10px}.headline-input{font-family:var(--font-prose);font-size:19px!important;line-height:1.55;background:transparent!important;border-color:transparent!important;padding:6px 8px!important;border-radius:var(--radius)!important}.headline-input:focus{background:var(--surface-2)!important;border-color:var(--accent)!important}.headline-hint{font-size:12px;color:var(--faint);margin-top:6px;padding-left:8px}.meta-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:12px}.meta-item{display:flex;flex-direction:column;gap:4px;font-size:11.5px;color:var(--muted)}.completeness{margin-top:16px;padding-top:14px;border-top:1px dashed var(--border)}.completeness-head{display:flex;justify-content:space-between;align-items:baseline;font-size:12px;color:var(--muted);margin-bottom:6px}.completeness-head strong{font-family:var(--font-mono);font-size:13px;color:var(--text)}.progress{height:6px;background:var(--surface-3);border-radius:999px;overflow:hidden}.progress span{display:block;height:100%;background:var(--accent);border-radius:999px;transition:width .25s ease}.completeness-missing{font-size:12px;color:var(--warn);margin-top:7px}.completeness-missing.is-done{color:var(--stance-support)}.editable-trigger{display:block;width:100%;text-align:left;border:1px solid transparent;background:transparent;border-radius:var(--radius);padding:5px 8px;cursor:text;font:inherit;color:var(--text);line-height:1.6;transition:background .14s ease,border-color .14s ease}.editable-trigger:hover{background:var(--surface-2);border-color:var(--border)}.editable-trigger.is-empty{color:var(--faint);font-style:italic}.editable-input{width:100%;background:var(--surface-2);border:1px solid var(--accent);border-radius:var(--radius);padding:5px 8px;color:var(--text);font:inherit;line-height:1.6;resize:vertical}.editable-static{padding:5px 8px;color:var(--muted)}.link-button{border:0;background:transparent;color:var(--accent);cursor:pointer;padding:3px 6px;font-size:12.5px;border-radius:6px}.link-button:hover{background:var(--accent-soft)}.add-button{margin-top:6px}.primary-button{border:1px solid var(--accent);background:var(--accent);color:#fff;padding:8px 16px;border-radius:var(--radius);cursor:pointer;font-size:13.5px;font-weight:550;transition:filter .15s ease}[data-theme=dark] .primary-button{color:#10201f}.primary-button:hover:not(:disabled){filter:brightness(1.08)}.primary-button:disabled{opacity:.55;cursor:default}.primary-button.small{padding:5px 11px;font-size:12.5px}.secondary-button{border:1px solid var(--border-strong);background:var(--surface);color:var(--text);padding:7px 14px;border-radius:var(--radius);cursor:pointer;font-size:13px}.secondary-button:hover{background:var(--surface-2)}.danger-button{border:1px solid color-mix(in srgb,var(--danger) 40%,transparent);background:transparent;color:var(--danger);padding:7px 12px;border-radius:var(--radius);cursor:pointer;font-size:13px}.danger-button:hover{background:var(--danger-soft)}.back-button{display:none}.editable-list ul{list-style:none;margin:0;padding:0}.editable-list-item{display:flex;align-items:flex-start;gap:8px;margin-bottom:4px}.list-bullet{flex:0 0 auto;width:20px;text-align:right;font-size:11px;font-family:var(--font-mono);color:var(--faint);margin-top:8px}.objection-list{list-style:none;margin:0;padding:0}.objection-item{border-left:2px solid var(--border-strong);padding:6px 0 6px 12px;margin-bottom:10px}.objection-row{display:flex;align-items:flex-start;gap:8px}.objection-row.is-response{padding-left:22px}.objection-mark{flex:0 0 auto;width:18px;text-align:center;color:var(--faint);margin-top:6px}.note-preview-list{list-style:none;margin:0;padding:0}.note-preview-list li{display:flex;align-items:baseline;gap:8px;padding:4px 0;border-bottom:1px dashed var(--border);font-size:13.5px}.note-preview-list li:last-child{border-bottom:0}.note-preview-claim{flex:1 1 auto;min-width:0}.kind-tag{font-size:10.5px;padding:1px 6px;border-radius:4px;background:var(--surface-2);color:var(--muted);white-space:nowrap}.kind-fact{background:color-mix(in srgb,var(--stance-support) 14%,transparent);color:var(--stance-support)}.kind-observation{background:color-mix(in srgb,var(--accent) 14%,transparent);color:var(--accent-strong)}.kind-opinion{background:color-mix(in srgb,var(--stance-watch) 16%,transparent);color:var(--stance-watch)}.kind-question{background:color-mix(in srgb,var(--stance-undecided) 14%,transparent);color:var(--stance-undecided)}.warn-tag{font-size:10.5px;padding:1px 6px;border-radius:4px;background:var(--warn-soft);color:var(--warn);white-space:nowrap}.card-actions{display:flex;gap:10px;justify-content:flex-end}.panel{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:16px 18px}.panel-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.panel-head .section-title{margin-bottom:0}.quick-add{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0 4px;padding:12px;background:var(--surface-2);border-radius:var(--radius);border:1px dashed var(--border-strong)}.quick-add input{flex:1 1 220px}.source-list,.note-list{list-style:none;margin:12px 0 0;padding:0}.source-item,.note-item{border-top:1px solid var(--border);padding:13px 0}.source-head{display:flex;align-items:flex-start;gap:9px}.read-toggle input{width:15px;height:15px;margin-top:8px;accent-color:var(--accent)}.source-title{flex:1 1 auto;font-weight:600;font-size:14.5px}.signal-tag{font-size:11px;padding:2px 8px;border-radius:999px;white-space:nowrap;margin-top:4px}.signal-support{background:color-mix(in srgb,var(--stance-support) 14%,transparent);color:var(--stance-support)}.signal-oppose{background:color-mix(in srgb,var(--stance-oppose) 14%,transparent);color:var(--stance-oppose)}.signal-neutral{background:var(--surface-2);color:var(--muted)}.source-link-row{padding-left:24px}.source-link{font-size:12.5px;word-break:break-all}.source-link.is-empty{color:var(--faint);text-decoration:none}.source-meta-row,.note-meta-row{display:flex;flex-wrap:wrap;gap:12px;padding:9px 0 6px 24px}.source-meta-row label,.note-meta-row label{display:flex;align-items:center;gap:6px;font-size:11.5px;color:var(--muted)}.source-body{padding-left:24px;display:flex;flex-direction:column;gap:5px}.source-quote{margin:4px 0;padding:6px 12px;border-left:2px solid var(--accent);background:var(--surface-2);border-radius:0 var(--radius) var(--radius) 0;font-family:var(--font-prose)}.note-head{display:flex;align-items:flex-start;gap:9px}.note-claim{flex:1 1 auto;font-weight:600;font-size:14.5px;font-family:var(--font-prose)}.note-meta-row{padding-left:8px}.note-refs{margin-top:8px;padding-left:8px;display:flex;align-items:baseline;flex-wrap:wrap;gap:8px}.note-refs-label{font-size:11.5px;color:var(--muted)}.ref-chips{display:flex;flex-wrap:wrap;gap:5px}.ref-chip{border:1px solid var(--border);background:var(--surface-2);color:var(--muted);border-radius:999px;padding:2px 9px;font-size:11.5px;cursor:pointer;max-width:240px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ref-chip.is-active{background:var(--accent-soft);border-color:color-mix(in srgb,var(--accent) 40%,transparent);color:var(--accent-strong)}.change-list{list-style:none;margin:10px 0 0;padding:0}.change-item{display:flex;align-items:baseline;gap:9px;padding:6px 0;border-bottom:1px dashed var(--border);font-size:13px}.change-item:last-child{border-bottom:0}.change-dot{flex:0 0 auto;width:7px;height:7px;border-radius:50%;background:var(--muted);transform:translateY(-1px)}.change-dot.action-create{background:var(--stance-support)}.change-dot.action-update{background:var(--accent)}.change-dot.action-delete{background:var(--danger)}.change-dot.action-summarize{background:var(--stance-undecided)}.change-summary{flex:1 1 auto;min-width:0}.change-summary.as-button{border:0;background:transparent;padding:0;text-align:left;cursor:pointer;color:var(--text);text-decoration:underline;text-decoration-color:var(--border-strong);text-underline-offset:3px}.change-meta{flex:0 0 auto;font-size:11.5px;color:var(--faint)}.digest{flex:1 1 auto;overflow-y:auto;padding:26px 30px 72px;max-width:1080px;width:100%;margin:0 auto}.digest-head h1{font-size:22px}.digest-head p{color:var(--muted);margin-top:4px;font-size:13.5px}.stat-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(110px,1fr));gap:10px;margin:20px 0 24px}.stat{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:12px 14px;display:flex;flex-direction:column;gap:2px}.stat-value{font-size:22px;font-weight:600;font-family:var(--font-mono);color:var(--accent-strong)}.stat-label{font-size:11.5px;color:var(--muted)}.digest-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:14px;margin-bottom:22px}.digest-group{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:14px 16px}.digest-group-title{font-size:13.5px;display:flex;align-items:center;gap:8px;margin-bottom:2px}.digest-group-hint{font-size:11.5px;color:var(--faint);margin-bottom:8px}.digest-list{list-style:none;margin:0;padding:0}.digest-item{display:flex;align-items:center;gap:8px;width:100%;text-align:left;border:0;background:transparent;border-radius:8px;padding:5px 7px;cursor:pointer;font-size:13px}.digest-item:hover{background:var(--surface-2)}.digest-item .stance-dot{font-size:9.5px;width:auto;height:auto;padding:2px 6px;border-radius:999px;background:transparent}.digest-item-title{flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.digest-item-meta{font-size:11px;color:var(--faint);flex:0 0 auto}.card-view{flex:1 1 auto;overflow-y:auto;padding:20px 26px 72px}.card-view-toolbar{max-width:720px;margin:0 auto 16px;display:flex;align-items:center;justify-content:space-between;gap:12px}.card-view-tools{display:flex;gap:8px}.card-sheet{max-width:720px;margin:0 auto;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:40px 44px 34px;box-shadow:var(--shadow-sm)}.card-sheet-head h1{font-size:26px;letter-spacing:-.015em}.card-sheet-liner{font-family:var(--font-prose);font-size:17px;line-height:1.6;color:var(--text-soft);margin-top:10px;padding-left:14px;border-left:3px solid var(--accent)}.card-sheet-meta{display:flex;align-items:center;gap:14px;margin-top:14px;font-size:12.5px;color:var(--muted)}.card-sheet-section{margin-top:26px}.card-sheet-section h2{font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);display:flex;align-items:center;gap:8px;padding-bottom:7px;border-bottom:1px solid var(--border);margin-bottom:12px}.card-section-count{font-family:var(--font-mono);font-size:10.5px;background:var(--surface-2);border-radius:999px;padding:0 6px;color:var(--muted)}.card-points{margin:0;padding-left:20px;font-family:var(--font-prose);font-size:15px;line-height:1.75}.card-points li{margin-bottom:6px}.card-missing{color:var(--faint);font-style:italic;font-size:13.5px}.card-objections{margin:0;display:flex;flex-direction:column;gap:12px}.card-objection dt{font-family:var(--font-prose);font-size:15px;font-weight:600;color:var(--text)}.card-objection dd{margin:3px 0 0;padding-left:12px;border-left:2px solid var(--border-strong);font-family:var(--font-prose);font-size:14.5px;color:var(--text-soft);line-height:1.7}.card-evidence{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:14px}.card-evidence-head{display:flex;align-items:baseline;gap:8px;flex-wrap:wrap}.card-evidence-claim{font-family:var(--font-prose);font-size:15px;font-weight:600}.card-evidence-signal{font-size:11px;color:var(--muted)}.card-evidence-body{font-family:var(--font-prose);font-size:14px;color:var(--text-soft);margin-top:4px;line-height:1.7}.card-evidence-refs{font-size:12px;color:var(--muted);margin-top:4px}.card-evidence-refs a{margin-right:8px}.card-evidence-refs.is-warn{color:var(--warn)}.card-sheet-foot{margin-top:30px;padding-top:12px;border-top:1px solid var(--border);font-size:11.5px;color:var(--faint)}.markdown{font-family:var(--font-prose);font-size:15px;line-height:1.75;color:var(--text-soft)}.markdown h3,.markdown h4,.markdown h5{font-family:var(--font-ui);color:var(--text);margin:14px 0 6px}.markdown h3{font-size:16px}.markdown h4{font-size:14.5px}.markdown h5{font-size:13.5px}.markdown ul,.markdown ol{padding-left:22px;margin:6px 0}.markdown p{margin:6px 0}.markdown code{font-family:var(--font-mono);font-size:.88em;background:var(--surface-2);border-radius:4px;padding:1px 5px}.markdown pre{background:var(--surface-2);border-radius:var(--radius);padding:10px 12px;overflow-x:auto;font-family:var(--font-mono);font-size:12.5px}.markdown pre code{background:transparent;padding:0}.markdown blockquote{margin:8px 0;padding:4px 14px;border-left:2px solid var(--accent);color:var(--text-soft)}.md-empty{color:var(--faint);font-style:italic;font-size:13.5px}.signin-shell{min-height:100vh;display:grid;place-items:center;padding:24px;background:radial-gradient(1100px 500px at 50% -12%,var(--accent-soft),transparent 70%),var(--bg)}.signin-card{width:min(380px,100%);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:30px 30px 24px;box-shadow:var(--shadow-md);display:flex;flex-direction:column;gap:14px}.signin-title{font-size:21px;letter-spacing:.03em}.signin-sub{color:var(--muted);font-size:13px;margin-top:-8px}.field{display:flex;flex-direction:column;gap:5px;font-size:12px;color:var(--muted)}.form-error{color:var(--danger);font-size:12.5px;background:var(--danger-soft);border-radius:8px;padding:7px 10px}.form-notice{color:var(--stance-support);font-size:12.5px;background:color-mix(in srgb,var(--stance-support) 12%,transparent);border-radius:8px;padding:7px 10px}.signin-actions{display:flex;justify-content:space-between;align-items:center}.empty-state{max-width:520px;margin:60px auto;text-align:center;padding:0 24px}.empty-state h2{font-size:19px}.empty-state p{color:var(--muted);margin-top:8px;font-size:14px}.empty-steps{text-align:left;margin:18px auto 22px;padding-left:20px;color:var(--text-soft);font-size:13.5px;line-height:1.9;max-width:340px}.empty-hint{color:var(--faint);font-size:13px;padding:18px 10px;line-height:1.7}.empty-hint.small{padding:6px 0;font-size:12.5px}.toast{position:fixed;bottom:22px;left:50%;transform:translate(-50%);background:var(--text);color:var(--bg);padding:9px 18px;border-radius:999px;font-size:13px;box-shadow:var(--shadow-md);z-index:60;animation:toast-in .18s ease}@keyframes toast-in{0%{opacity:0;transform:translate(-50%,8px)}}.save-indicator{position:fixed;top:calc(var(--header-h) + 10px);right:18px;font-size:12px;color:var(--muted);background:var(--surface);border:1px solid var(--border);border-radius:999px;padding:3px 12px;z-index:40}.boot-screen{min-height:100vh;display:grid;place-items:center}.boot-card{text-align:center;color:var(--muted)}.boot-spinner{display:block;width:22px;height:22px;margin:0 auto 12px;border:2px solid var(--border);border-top-color:var(--accent);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}@media(max-width:900px){.app-header{gap:10px;padding:0 12px}.brand-tagline{display:none}.header-search{width:min(200px,30vw)}.topic-list{width:100%;flex:1 1 auto;border-right:0}.app-body.is-detail-open .topic-list{display:none}.app-body:not(.is-detail-open) .app-main{display:none}.back-button{display:inline-flex}.topic-detail{padding:16px 16px 64px}.detail-head{flex-wrap:wrap}.detail-title{font-size:20px}.digest{padding:18px 16px 64px}.card-view{padding:14px 12px 64px}.card-sheet{padding:24px 20px;border-radius:var(--radius)}.card-sheet-head h1{font-size:21px}.card-sheet-liner{font-size:15.5px}.card-points{font-size:14.5px}}@media(max-width:560px){.header-search{display:none}.view-switch button{padding:5px 11px}.meta-grid{grid-template-columns:1fr 1fr}.card-section,.panel{padding:14px}}@media print{body{background:#fff}.app-header,.topic-list,.no-print,.toast,.save-indicator{display:none!important}.app-body,.card-view{overflow:visible;padding:0;display:block}.card-sheet{border:0;box-shadow:none;padding:0;max-width:none}}@media(prefers-reduced-motion:reduce){*{animation-duration:.01ms!important;transition-duration:.01ms!important}}
