:root{--fg:#37352f;--fg-soft:#37352fa6;--fg-faint:#37352f73;--bg:#fff;--sidebar:#f7f7f5;--hover:#37352f0f;--active:#37352f1a;--border:#37352f1f;--surface:#f7f6f3;--accent:#2383e2;--accent-fg:#fff;--up:#448361;--down:#d44c47;--warn-bg:#fbf3db;--shadow:0 0 0 1px #0f0f0f0d, 0 3px 6px #0f0f0f1a, 0 9px 24px #0f0f0f33;--font:ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", Helvetica, "Apple Color Emoji", Arial, sans-serif;--font-mono:ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;font-family:var(--font);color:var(--fg);background:var(--bg)}@media (prefers-color-scheme:dark){:root{--fg:#ffffffdb;--fg-soft:#fff9;--fg-faint:#fff6;--bg:#191919;--sidebar:#202020;--hover:#ffffff0e;--active:#ffffff1a;--border:#ffffff1a;--surface:#252525;--accent:#529cca;--accent-fg:#fff;--up:#4dab9a;--down:#e06c6c;--warn-bg:#3a3326;--shadow:0 0 0 1px #ffffff14, 0 3px 6px #0006, 0 9px 24px #00000080;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}*{box-sizing:border-box}body{background:var(--bg);-webkit-font-smoothing:antialiased;margin:0}a{color:inherit}button,.button{font:inherit;color:var(--fg);border:1px solid var(--border);cursor:pointer;background:0 0;border-radius:6px;padding:.3rem .75rem;font-size:14px;text-decoration:none}button:hover{background:var(--hover)}button:disabled,.button[aria-disabled=true]{opacity:.45;cursor:not-allowed}button:disabled:hover{background:inherit}.primary:disabled:hover{background:var(--accent);filter:none}.primary{background:var(--accent);border-color:var(--accent);color:var(--accent-fg)}.primary:hover{background:var(--accent);filter:brightness(1.08)}.danger{background:var(--down);border-color:var(--down);color:#fff}input,textarea{font:inherit;color:var(--fg);background:var(--bg);border:1px solid var(--border);border-radius:6px;padding:.45rem .6rem}input:focus,textarea:focus{outline:2px solid var(--accent);outline-offset:-1px}.muted{color:var(--fg-soft)}.up{color:var(--up)}.down{color:var(--down)}.app{grid-template-columns:240px 1fr;min-height:100vh;display:grid}.main{flex-direction:column;min-width:0;display:flex}.sidebar{background:var(--sidebar);border-right:1px solid var(--border);height:100vh;color:var(--fg-soft);flex-direction:column;padding:.5rem .25rem;font-size:14px;display:flex;position:sticky;top:0;overflow-y:auto}.workspace{align-items:center;gap:.6rem;padding:.4rem .6rem .75rem;display:flex}.workspace-icon{background:var(--fg);width:22px;height:22px;color:var(--bg);border-radius:4px;place-items:center;font-size:13px;font-weight:700;display:grid}.workspace-text{flex-direction:column;min-width:0;line-height:1.2;display:flex}.workspace-text strong{color:var(--fg)}.workspace-text .muted{white-space:nowrap;text-overflow:ellipsis;font-size:12px;overflow:hidden}.sidebar ul{margin:0;padding:0;list-style:none}.row{border-radius:6px;align-items:center;min-height:28px;display:flex}.row:hover{background:var(--hover)}.row-main{min-width:0;min-height:28px;color:inherit;text-align:left;background:0 0;border:none;border-radius:6px;flex:1;align-items:center;gap:.45rem;padding:0 .5rem;font-size:14px;text-decoration:none;display:flex}.row-main:hover{background:0 0}a.row-main:hover,button.row-main.row:hover{background:var(--hover)}.row-main[aria-current=page]{background:var(--active);color:var(--fg);font-weight:500}.row-label{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.page-icon{text-align:center;width:18px;color:var(--fg-faint);flex-shrink:0}.chevron{text-align:center;width:18px;color:var(--fg-faint);flex-shrink:0;transition:transform .12s}.chevron.open{transform:rotate(90deg)}.row-action{visibility:hidden;width:22px;height:22px;color:var(--fg-soft);border:none;border-radius:4px;margin-right:.25rem;padding:0;font-size:16px;line-height:1}.row:hover .row-action,.section-label:hover .row-action,.row-action.visible{visibility:visible}.row-action:hover{background:var(--active)}.nav{margin-bottom:.75rem}.section-label{min-height:26px;color:var(--fg-faint);justify-content:space-between;align-items:center;padding:0 0 0 .5rem;font-size:12px;font-weight:600;display:flex}.tree{flex:1}.tree .empty{margin:.25rem 0;padding:0 .5rem;font-size:13px}.sidebar-footer{border-top:1px solid var(--border);margin-top:.5rem;padding-top:.4rem}.sidebar-footer .row-main{width:100%}.page-shell{flex-direction:column;min-height:100vh;display:flex}.page-bar{z-index:5;background:var(--bg);justify-content:space-between;align-items:center;gap:1rem;height:45px;padding:0 .75rem 0 1rem;font-size:14px;display:flex;position:sticky;top:0}.breadcrumbs{white-space:nowrap;text-overflow:ellipsis;min-width:0;color:var(--fg-soft);overflow:hidden}.breadcrumbs .sep{color:var(--fg-faint);margin:0 .4rem}.breadcrumbs .current{color:var(--fg)}.page-bar-right{flex-shrink:0;align-items:center;gap:.5rem;display:flex}.save-status{color:var(--fg-faint);font-size:13px}.save-status.conflict,.save-status.error{color:var(--down)}.icon-button{width:28px;height:28px;color:var(--fg-soft);border:none;padding:0;font-size:18px;line-height:1}.menu-anchor{position:relative}.menu-backdrop{z-index:10;position:fixed;inset:0}.menu{z-index:11;background:var(--bg);min-width:200px;box-shadow:var(--shadow);border-radius:8px;padding:.3rem;position:absolute;top:calc(100% + 4px);right:0}.menu button{text-align:left;border:none;border-radius:4px;width:100%;display:block}.danger-text{color:var(--down)}.banner{background:var(--warn-bg);border-radius:6px;flex-wrap:wrap;align-items:center;gap:.75rem;margin:0 1rem;padding:.6rem .9rem;font-size:14px;display:flex}.banner span{flex:1;min-width:12rem}.page{width:100%;max-width:900px;margin:0 auto;padding:4rem 96px 30vh}.page-title{width:100%;font-family:var(--font);color:var(--fg);background:0 0;border:none;margin:0 0 .25rem;padding:0;font-size:40px;font-weight:700;line-height:1.2;display:block}.page-title:focus{outline:none}.page-title::placeholder{color:var(--fg-faint)}.title-error{margin:0 0 .5rem;font-size:14px}.move-form{background:var(--surface);border-radius:8px;align-items:flex-end;gap:.5rem;margin-bottom:1.5rem;padding:.75rem;display:flex}.move-form label{color:var(--fg-soft);flex-direction:column;flex:1;gap:.3rem;font-size:13px;display:flex}@media (width<=860px){.page{padding:2rem 1.5rem 30vh}}@media (width<=640px){.app{grid-template-columns:1fr}.sidebar{border-right:none;border-bottom:1px solid var(--border);height:auto;max-height:45vh;position:static}.page{padding:1.5rem 1rem 30vh}.page-title{font-size:32px}}.editor-root{margin-left:-48px}@media (width<=860px){.editor-root{margin-left:0}}.editor-root .milkdown{--crepe-color-background:var(--bg);--crepe-color-on-background:var(--fg);--crepe-color-surface:var(--surface);--crepe-color-surface-low:var(--sidebar);--crepe-color-on-surface:var(--fg);--crepe-color-on-surface-variant:var(--fg-soft);--crepe-color-outline:var(--fg-faint);--crepe-color-primary:var(--accent);--crepe-color-secondary:var(--active);--crepe-color-on-secondary:var(--fg);--crepe-color-inverse:var(--fg);--crepe-color-on-inverse:var(--bg);--crepe-color-inline-code:#eb5757;--crepe-color-error:var(--down);--crepe-color-hover:var(--hover);--crepe-color-selected:#2383e22e;--crepe-color-inline-area:var(--surface);--crepe-base-font-size:16px;--crepe-font-title:var(--font);--crepe-font-default:var(--font);--crepe-font-code:var(--font-mono);--crepe-shadow-1:var(--shadow);--crepe-shadow-2:var(--shadow);background:0 0}.editor-root .milkdown .ProseMirror{padding:.5rem 0 0 48px;line-height:1.6}@media (width<=860px){.editor-root .milkdown .ProseMirror{padding-left:0}}.page-title.static{margin-bottom:.75rem}.lead{color:var(--fg-soft);margin:0 0 2.5rem;font-size:16px}.section-heading{color:var(--fg-soft);margin:2rem 0 .75rem;font-size:14px;font-weight:600}.cards{grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:.75rem;display:grid}.card{background:var(--surface);border-radius:10px;flex-direction:column;gap:.3rem;min-width:0;padding:.9rem;text-decoration:none;display:flex}.card:hover{background:var(--active)}.card strong,.card .muted{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.card .muted{font-size:13px}.card-icon{color:var(--fg-faint);font-size:20px}.empty-state{border:1px dashed var(--border);text-align:center;color:var(--fg-soft);border-radius:10px;padding:1.5rem}.services{margin:0;padding:0;font-size:14px;list-style:none}.services li{gap:.5rem;padding:.2rem 0;display:flex}.token-form{gap:.5rem;margin:1.25rem 0;display:flex}.token-form input{flex:1}.callout{background:var(--surface);border-radius:8px;margin-bottom:1.25rem;padding:.25rem 1rem .9rem;font-size:14px}.copy-row{align-items:flex-start;gap:.5rem;display:flex}.copy-row code{overflow-wrap:anywhere;background:var(--bg);min-width:0;font-family:var(--font-mono);border-radius:6px;flex:1;padding:.4rem .6rem;font-size:13px}.tokens{border-collapse:collapse;width:100%;font-size:14px}.tokens th{color:var(--fg-soft);font-weight:500}.tokens th,.tokens td{text-align:left;border-bottom:1px solid var(--border);padding:.55rem .5rem}.actions{flex-wrap:wrap;gap:.5rem;display:flex}.nav button.row-main{width:100%}.shortcut{font-family:var(--font);color:var(--fg-faint);margin-left:auto;font-size:11px}.dialog-backdrop{z-index:50;background:#0f0f0f73;justify-content:center;align-items:flex-start;padding:12vh 1rem 1rem;display:flex;position:fixed;inset:0}.search-dialog{background:var(--bg);width:min(640px,100%);max-height:70vh;box-shadow:var(--shadow);border-radius:12px;flex-direction:column;display:flex;overflow:hidden}.search-input-row{border-bottom:1px solid var(--border);align-items:center;gap:.6rem;padding:0 1rem;display:flex}.search-icon{color:var(--fg-faint);font-size:20px}.search-input-row input{background:0 0;border:none;flex:1;padding:1rem 0;font-size:17px}.search-input-row input:focus{outline:none}.search-results{margin:0;padding:.35rem;list-style:none;overflow-y:auto}.search-results li{cursor:pointer;border-radius:6px;padding:.55rem .7rem}.search-results li.selected{background:var(--hover)}.result-title{align-items:center;gap:.4rem;font-size:14px;display:flex}.result-title .muted{font-size:13px}.result-heading{margin:.1rem 0 0 1.6rem;font-size:12px}.result-snippet{color:var(--fg-soft);margin:.15rem 0 0 1.6rem;font-size:13px;line-height:1.45}.search-empty{margin:0;padding:1rem 1.25rem;font-size:14px}.search-footer{border-top:1px solid var(--border);gap:1rem;padding:.5rem 1rem;font-size:12px;display:flex}.settings-form{flex-direction:column;gap:1rem;max-width:34rem;display:flex}.settings-form fieldset{border:none;flex-direction:column;gap:.5rem;margin:0;padding:0;display:flex}.settings-form legend,.settings-form>label{font-size:14px;font-weight:600}.settings-form>label{flex-direction:column;gap:.35rem;display:flex}.settings-form .radio{border:1px solid var(--border);cursor:pointer;border-radius:8px;align-items:flex-start;gap:.6rem;padding:.6rem .75rem;font-weight:400;display:flex}.settings-form .radio>span{flex-direction:column;font-size:14px;display:flex}.settings-form .hint,.trivia .hint{margin:0;font-size:13px;font-weight:400}.sample{background:var(--surface);border-radius:8px;max-width:34rem;padding:.25rem 1rem .75rem;font-size:14px}.sample ul{padding-left:1rem;list-style:none}.page.wide{max-width:1200px}.trivia-layout{grid-template-columns:minmax(0,1fr) 300px;align-items:start;gap:3rem;display:grid}@media (width<=1000px){.trivia-layout{grid-template-columns:1fr}}.question-card{border:1px solid var(--border);border-radius:12px;padding:1.25rem 1.5rem}.question-card.loading{color:var(--fg-soft);text-align:center;padding:3rem 1rem}.question-source{margin:0 0 .5rem;font-size:13px}.question-text{margin:0 0 1.25rem;font-size:22px;line-height:1.35}.options{flex-direction:column;gap:.5rem;margin:0 0 1rem;padding:0;list-style:none;display:flex}.option{text-align:left;border-radius:8px;align-items:center;gap:.75rem;width:100%;padding:.7rem .9rem;font-size:15px;display:flex}.option:not(:disabled):hover{border-color:var(--accent)}.option .letter{background:var(--surface);border-radius:6px;flex-shrink:0;place-items:center;width:26px;height:26px;font-size:13px;font-weight:600;display:grid}.option.right{border-color:var(--up);background:color-mix(in srgb, var(--up) 12%, transparent)}.option.wrong{border-color:var(--down);background:color-mix(in srgb, var(--down) 12%, transparent)}.option.dim{opacity:.55}.option:disabled{cursor:default;color:var(--fg)}.question-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:.5rem;display:flex}.question-actions .hint{margin-right:auto}.verdict p{line-height:1.5}.leaderboard{background:var(--surface);border-radius:12px;padding:1rem 1.1rem;position:sticky;top:1.5rem}.leaderboard-head h2{margin:0 0 .6rem;font-size:15px}.tabs{gap:.25rem;margin-bottom:.75rem;display:flex}.tabs button{border:none;padding:.25rem .6rem;font-size:13px}.tabs button[aria-selected=true]{background:var(--active);font-weight:600}.ranks{margin:0;padding:0;font-size:14px;list-style:none}.ranks li{border-radius:6px;grid-template-columns:1.5rem minmax(0,1fr) auto 2.5rem;align-items:center;gap:.4rem;padding:.4rem .3rem;display:grid}.ranks li.me{background:var(--active);font-weight:600}.ranks .rank{color:var(--fg-faint)}.ranks .name{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.ranks .record{font-size:12px}.ranks .score{text-align:right;font-variant-numeric:tabular-nums}.leaderboard .rules{margin:.75rem 0 0;font-size:12px}.banner.fact-check{background:color-mix(in srgb, var(--accent) 12%, var(--bg))}.fact-check-flash{z-index:4;pointer-events:none;background:color-mix(in srgb, var(--accent) 22%, transparent);border-radius:6px;animation:2.6s ease-out forwards fact-check-fade;position:absolute}@keyframes fact-check-fade{0%,60%{opacity:1}to{opacity:0}}.upload-dialog{background:var(--bg);width:min(760px,100%);max-height:82vh;box-shadow:var(--shadow);border-radius:12px;flex-direction:column;gap:.9rem;padding:1rem 1.25rem 1.1rem;display:flex;overflow:hidden}.upload-head{justify-content:space-between;align-items:center;display:flex}.upload-head h2{margin:0;font-size:18px}.drop-zone{border:2px dashed var(--border);text-align:center;border-radius:10px;padding:1.1rem;font-size:14px;transition:border-color .15s,background .15s}.drop-zone p{margin:0 0 .35rem}.drop-zone .actions{justify-content:center;margin-top:.6rem}.drop-zone.dragging{border-color:var(--accent);background:color-mix(in srgb, var(--accent) 8%, transparent)}.upload-folder{align-items:center;gap:.6rem;font-size:14px;font-weight:600;display:flex}.upload-folder input{flex:1;font-weight:400}.upload-plan{border:1px solid var(--border);border-radius:8px;min-height:0;overflow:auto}.upload-plan table{border-collapse:collapse;table-layout:fixed;width:100%;font-size:13px}.upload-plan th{background:var(--surface);text-align:left;color:var(--fg-soft);font-weight:500;position:sticky;top:0}.upload-plan th,.upload-plan td{border-bottom:1px solid var(--border);padding:.45rem .6rem}.upload-plan th:nth-child(3),.upload-plan td:nth-child(3){width:11rem}.upload-plan .file-name,.upload-plan .page-path{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.upload-plan .page-path{font-family:var(--font-mono);font-size:12px}.upload-plan tr.skip td{color:var(--fg-faint)}.pill{background:var(--surface);color:var(--fg-soft);border-radius:999px;padding:.1rem .5rem;font-size:12px;display:inline-block}.pill.new{background:color-mix(in srgb, var(--up) 15%, transparent);color:var(--up)}.replace{cursor:pointer;align-items:center;gap:.35rem;display:inline-flex}.upload-foot{align-items:center;gap:.5rem;display:flex}.upload-foot .muted{margin-right:auto;font-size:13px}.upload-results ul{max-height:45vh;padding-left:1.1rem;font-size:14px;overflow:auto}.upload-results li{margin:.25rem 0}.ontology-head{justify-content:space-between;align-items:flex-start;gap:2rem;display:flex}.ontology-head .lead{margin-bottom:1rem}.calculate{text-align:right;flex-direction:column;align-items:flex-end;gap:.4rem;min-width:14rem;padding-top:.75rem;display:flex}.calculate .primary{padding:.45rem 1.4rem;font-size:15px}.calculate .hint{font-size:13px}.run-progress{background:color-mix(in srgb, var(--accent) 10%, var(--bg));border-radius:8px;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1rem;padding:.75rem 1rem;font-size:14px;display:flex}.last-run{font-size:13px}.rec-group h3,.concept-group h3{color:var(--fg-soft);text-transform:uppercase;letter-spacing:.03em;margin:1.25rem 0 .5rem;font-size:13px;font-weight:600}.rec-group ul,.concept-group ul{margin:0;padding:0;list-style:none}.rec-card{border:1px solid var(--border);border-radius:10px;justify-content:space-between;gap:1rem;margin-bottom:.5rem;padding:.85rem 1rem;list-style:none;display:flex}.rec-card.destructive{border-left:3px solid var(--down)}.rec-main{min-width:0;font-size:14px}.rec-title{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.rec-detail,.rec-rationale{margin:.3rem 0 0}.evidence{margin:.4rem 0 0;padding:0;font-size:13px;list-style:none}.evidence li{color:var(--fg-soft);margin:.2rem 0}.evidence q{color:var(--fg);font-style:italic}.rec-actions{flex-direction:column;flex-shrink:0;gap:.4rem;display:flex}.rec-notice{margin:-.25rem 0 .75rem 1rem;font-size:13px;list-style:none}.concept-filter{width:100%;max-width:24rem;margin-bottom:.5rem}.concept{border-bottom:1px solid var(--border);padding:.6rem 0;font-size:14px}.concept p{margin:.25rem 0 0}.concept .relations,.concept .sources{font-size:13px}.runs{border-collapse:collapse;width:100%;font-size:13px}.runs th{text-align:left;color:var(--fg-soft);font-weight:500}.runs th,.runs td{border-bottom:1px solid var(--border);padding:.45rem .5rem}.confirm-dialog{background:var(--bg);width:min(560px,100%);box-shadow:var(--shadow);border-radius:12px;padding:1.25rem 1.5rem;font-size:14px;line-height:1.5}.confirm-dialog h2{margin:0 0 .75rem;font-size:19px}.cost-box{grid-template-columns:1fr 1fr;gap:.75rem;margin:1rem 0;display:grid}.cost-box>div{background:var(--surface);border-radius:8px;flex-direction:column;gap:.15rem;padding:.75rem;display:flex}.cost-box .muted{font-size:12px}.change-list{max-height:30vh;font-size:13px;overflow:auto}.change-list ul{margin:.25rem 0 .5rem;padding-left:1.1rem}.actions.end{justify-content:flex-end}.page-icon.with-badge{position:relative}.notification-badge{box-sizing:border-box;border:1.5px solid var(--sidebar);color:#fff;text-align:center;font-variant-numeric:tabular-nums;letter-spacing:-.02em;pointer-events:none;background:#ff3b30;border-radius:999px;min-width:17px;height:17px;padding:0 4px;font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,system-ui,sans-serif;font-size:10.5px;font-weight:700;line-height:14px;animation:.25s ease-out badge-pop;position:absolute;top:-10px;left:6px;box-shadow:0 1px 2px #0000002e}@keyframes badge-pop{0%{transform:scale(.4)}70%{transform:scale(1.12)}to{transform:scale(1)}}@media (prefers-reduced-motion:reduce){.notification-badge{animation:none}}.proposals .tabs,.proposals>.banner{margin-bottom:1rem}.proposals-layout{grid-template-columns:280px minmax(0,1fr);align-items:start;gap:1.5rem;display:grid}@media (width<=900px){.proposals-layout{grid-template-columns:1fr}}.proposal-list{flex-direction:column;gap:.35rem;max-height:75vh;margin:0;padding:0;list-style:none;display:flex;overflow:auto}.proposal-list button{text-align:left;border-radius:8px;flex-direction:column;gap:.15rem;width:100%;padding:.6rem .7rem;display:flex}.proposal-list button.selected{border-color:var(--accent);background:color-mix(in srgb, var(--accent) 8%, transparent)}.proposal-path{overflow-wrap:anywhere;font-weight:600}.proposal-list .muted{font-size:12px}.proposal-reason{color:var(--fg-soft);-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:13px;display:-webkit-box;overflow:hidden}.proposal-review header h2{overflow-wrap:anywhere;margin:.2rem 0 .5rem;font-size:20px}.proposal-review header p{margin:0;font-size:13px}.reason{border-left:3px solid var(--border);color:var(--fg-soft);margin:0 0 1rem;padding:.5rem .9rem;font-size:14px}.proposal-review .banner{margin:0 0 1rem}.diff{border:1px solid var(--border);font-family:var(--font-mono);white-space:pre-wrap;overflow-wrap:anywhere;border-radius:8px;margin:0 0 1rem;padding:.5rem 0;font-size:12.5px;line-height:1.5;overflow-x:auto}.diff-line{padding:0 .8rem;display:block}.diff-line.add{background:color-mix(in srgb, var(--up) 14%, transparent)}.diff-line.del{background:color-mix(in srgb, var(--down) 14%, transparent);text-decoration:line-through;-webkit-text-decoration-color:color-mix(in srgb, var(--down) 50%, transparent);text-decoration-color:color-mix(in srgb, var(--down) 50%, transparent)}.diff-line.hunk{color:var(--fg-faint);text-align:center}.proposal-edit textarea{width:100%;min-height:22rem;font-family:var(--font-mono);margin-bottom:.75rem;font-size:13px}.reject-form{gap:.5rem;display:flex}.reject-form input{flex:1}.proposals-banner{background:color-mix(in srgb, var(--accent) 10%, var(--bg))}.breadcrumbs-line{margin:0 0 .5rem;font-size:14px}.history-layout{grid-template-columns:280px minmax(0,1fr);align-items:start;gap:1.5rem;margin-top:1rem;display:grid}@media (width<=900px){.history-layout{grid-template-columns:1fr}}.version-list{flex-direction:column;gap:.3rem;max-height:75vh;margin:0;padding:0;list-style:none;display:flex;overflow:auto}.version-list button{text-align:left;border-radius:8px;flex-direction:column;gap:.15rem;width:100%;padding:.55rem .7rem;font-size:13px;display:flex}.version-list button.selected{border-color:var(--accent);background:color-mix(in srgb, var(--accent) 8%, transparent)}.version-list button:disabled{opacity:.7}.version-when{font-size:14px;font-weight:600}.badges{flex-wrap:wrap;gap:.25rem;display:flex}.pill.deleted{background:color-mix(in srgb, var(--down) 14%, transparent);color:var(--down)}.version-detail header h2{margin:0 0 .25rem;font-size:18px}.version-detail header p{margin:0 0 .9rem;font-size:14px}.version-detail .tabs{margin-bottom:.75rem}.version-content{border:1px solid var(--border);font-family:var(--font-mono);white-space:pre-wrap;overflow-wrap:anywhere;border-radius:8px;max-height:60vh;margin:0 0 1rem;padding:.75rem 1rem;font-size:12.5px;line-height:1.5;overflow:auto}.restore-confirm{background:var(--warn-bg);border-radius:8px;flex-wrap:wrap;align-items:center;gap:.6rem;padding:.7rem .9rem;font-size:14px;display:flex}.restore-confirm span{flex:1;min-width:14rem}.editor-root .milkdown a[href^="#/concept/"],.editor-root .milkdown a[href^="#/relation/"]{color:var(--accent);border-bottom:1px dashed color-mix(in srgb, var(--accent) 60%, transparent);text-decoration:none}.bar-button{color:var(--fg-soft);border:none;padding:.2rem .5rem;font-size:13px}.link-picker{z-index:60;background:var(--bg);width:min(560px,100vw - 16px);max-height:340px;box-shadow:var(--shadow);border-radius:10px;font-size:13px;position:fixed;overflow:auto}.link-picker-search{border:none;border-bottom:1px solid var(--border);border-radius:0;width:100%;padding:.6rem .8rem}.link-picker table{border-collapse:collapse;table-layout:fixed;width:100%}.link-picker th{text-align:left;color:var(--fg-soft);border-bottom:1px solid var(--border);padding:.4rem .7rem;font-size:12px;font-weight:500}.link-picker th:first-child{width:38%}.link-picker th:nth-child(2){width:22%}.link-picker td{vertical-align:top;cursor:pointer;padding:.4rem .7rem}.link-picker tr.active td{background:var(--hover)}.link-picker .name{font-weight:600}.link-picker .desc{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.link-picker .create{color:var(--accent)}.link-picker .pill.relation{background:color-mix(in srgb, var(--accent) 14%, transparent);color:var(--accent)}.link-picker .foot,.link-picker .empty{border-top:1px solid var(--border);margin:0;padding:.45rem .7rem;font-size:11.5px}.link-picker-create{flex-direction:column;gap:.5rem;padding:.8rem;display:flex}.link-picker-create .row-fields{gap:.4rem;display:flex}.link-picker-create .row-fields input{flex:1}.ontology-item section{margin-top:1.5rem}.item-meta{align-items:center;gap:.5rem;margin:0 0 .75rem;font-size:14px;display:flex}.relation-line{align-items:center;gap:.5rem;margin:0 0 .75rem;font-size:16px;display:flex}.plain-list{margin:0;padding:0;font-size:14px;list-style:none}.plain-list li{padding:.25rem 0}.add-relation,.new-concept-form{flex-wrap:wrap;align-items:center;gap:.4rem;margin-top:.75rem;font-size:14px;display:flex}.add-relation input,.new-concept-form input{flex:1;min-width:9rem}.relation-edit-row{gap:.6rem;display:flex}.relation-edit-row label{flex-direction:column;flex:1;gap:.35rem;font-size:14px;font-weight:600;display:flex}select{font:inherit;color:var(--fg);background:var(--bg);border:1px solid var(--border);border-radius:6px;padding:.4rem .5rem}.concept-link{color:var(--fg);text-decoration:none}.concept-link:hover{text-decoration:underline}.review-head,.rec-group-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem;display:flex}.rec-group-head h3{margin-bottom:.5rem}.bulk-actions{flex-wrap:wrap;align-items:center;gap:.4rem;display:flex}.bulk-actions.restore-confirm{flex-basis:100%}.bulk-summary{margin:0 0 .75rem}.bar-button.active{background:var(--hover);color:var(--fg)}.review-panel{z-index:20;background:var(--bg);border-left:1px solid var(--border);width:min(420px,100vw);height:100vh;padding:.75rem 1.1rem 3rem;font-size:14px;position:fixed;top:0;right:0;overflow-y:auto;box-shadow:-8px 0 24px #0f0f0f0f}.review-panel>header{justify-content:space-between;align-items:center;margin-bottom:.75rem;display:flex}.review-panel h2{margin:0;font-size:16px}.review-panel h3{text-transform:uppercase;letter-spacing:.03em;color:var(--fg-soft);margin:1.4rem 0 .5rem;font-size:12px;font-weight:600}.review-panel ul{margin:0;padding:0;list-style:none}.review-panel p{margin:.4rem 0}@media (width>=1200px){.page-shell.with-panel{padding-right:420px}}.review-confirm{background:var(--warn-bg);border-radius:8px;padding:.8rem .9rem}.review-confirm details{margin:.4rem 0;font-size:13px}.review-running{align-items:flex-start;gap:.75rem;display:flex}.spinner{border:2px solid var(--border);border-top-color:var(--accent);border-radius:50%;flex-shrink:0;width:16px;height:16px;margin-top:2px;animation:.8s linear infinite review-spin}@keyframes review-spin{to{transform:rotate(360deg)}}.review-summary{line-height:1.5}.review-stale{background:var(--warn-bg);border-radius:6px;padding:.4rem .6rem;font-size:13px}.review-item{border:1px solid var(--border);border-radius:8px;margin-bottom:.6rem;padding:.7rem .8rem}.review-item.conflict{border-left:3px solid var(--down)}.review-item-head{align-items:center;gap:.5rem;font-size:12px;display:flex}.pill.conflict{color:var(--down)}.review-change{white-space:pre-wrap;overflow-wrap:anywhere;margin:.5rem 0;font-size:13px;line-height:1.45}.review-change del,.review-change ins{padding:.3rem .5rem;text-decoration:none;display:block}.review-change del{background:color-mix(in srgb, var(--down) 12%, transparent);border-radius:6px 6px 0 0}.review-change del:last-child{border-radius:6px}.review-change ins{background:color-mix(in srgb, var(--up) 14%, transparent);border-radius:0 0 6px 6px}.review-sides{gap:.5rem;margin:.5rem 0;font-size:13px;display:grid}.review-sides>div{overflow-wrap:anywhere;flex-direction:column;gap:.15rem;display:flex}.review-sides q{font-style:italic}.review-item-actions{flex-wrap:wrap;align-items:center;gap:.4rem;margin-top:.5rem;display:flex}.review-item-actions button{padding:.2rem .6rem;font-size:13px}.review-handled li{overflow-wrap:anywhere;margin:.3rem 0;font-size:13px}.link-button{color:var(--fg-soft);cursor:pointer;background:0 0;border:none;margin-top:1rem;padding:0;font-size:13px;text-decoration:underline}.review-item.link{border-left:3px solid var(--accent)}.review-context{overflow-wrap:anywhere;font-size:13px}.review-context mark{background:color-mix(in srgb, var(--accent) 22%, transparent);color:inherit;border-radius:3px;padding:0 1px}.review-button .review-spark{color:var(--accent);animation:4s ease-in-out infinite review-twinkle;display:inline-block}.review-button .review-label{background:linear-gradient(100deg, var(--fg-soft) 0%, var(--fg-soft) 40%, var(--accent) 50%, var(--fg-soft) 60%, var(--fg-soft) 100%);color:#0000;background-position:100% 0;background-size:250% 100%;-webkit-background-clip:text;background-clip:text;animation:4s ease-in-out infinite review-shimmer}@keyframes review-shimmer{0%,45%{background-position:100% 0}75%,to{background-position:0 0}}@keyframes review-twinkle{0%,50%,to{opacity:.85;transform:scale(1)rotate(0)}62%{opacity:1;transform:scale(1.35)rotate(45deg)}75%{opacity:.85;transform:scale(1)rotate(90deg)}}.review-button:hover .review-label,.review-button.active .review-label{color:var(--fg);background:0 0;animation:none}.review-button.active .review-spark{animation:none}@media (prefers-reduced-motion:reduce){.review-button .review-spark,.review-button .review-label{animation:none}.review-button .review-label{color:var(--accent);background:0 0}}.link-picker .pill.page,.link-picker .pill.section{background:color-mix(in srgb, var(--up) 14%, transparent);color:var(--fg)}.review-item.dead{border-left:3px solid var(--down)}.pill.dead{color:var(--down)}.dead-links{margin:0;padding:0;list-style:none}.review-dead{margin-bottom:1rem}.calculate-buttons{align-items:center;gap:.5rem;display:flex}.calculate-buttons button{white-space:nowrap}.ontology>.new-concept-form{margin:0 0 1rem}.game-tabs{border-bottom:1px solid var(--border);gap:.25rem;margin-bottom:1.5rem;display:flex}.game-tabs a{color:var(--fg-soft);border-bottom:2px solid #0000;margin-bottom:-1px;padding:.45rem .8rem;font-size:14px;text-decoration:none}.game-tabs a:hover{color:var(--fg)}.game-tabs a[aria-current=page]{color:var(--fg);border-bottom-color:var(--accent);font-weight:600}.game-controls{flex-wrap:wrap;align-items:center;gap:.75rem;margin:1rem 0 .5rem;display:flex}.game-controls .tabs{margin:0}.game-progress{margin-left:auto;font-size:13px}.game-bar{background:var(--hover);border-radius:999px;height:4px;margin-bottom:1.5rem;overflow:hidden}.game-bar>div{background:var(--up);height:100%;transition:width .3s}.flashcard{perspective:1200px;cursor:pointer;background:0 0;border:none;width:100%;max-width:34rem;height:17rem;margin:0 auto;padding:0;display:block}.flashcard-inner{width:100%;height:100%;transform-style:preserve-3d;transition:transform .45s;position:relative}.flashcard.flipped .flashcard-inner{transform:rotateY(180deg)}.flashcard-face{border:1px solid var(--border);background:var(--bg);backface-visibility:hidden;text-align:center;color:var(--fg);border-radius:14px;flex-direction:column;justify-content:center;align-items:center;gap:.6rem;padding:1.5rem 2rem;display:flex;position:absolute;inset:0;overflow:auto;box-shadow:0 6px 24px #0f0f0f14}.flashcard-face.back{transform:rotateY(180deg)}.flashcard-term{font-size:30px;font-weight:700;line-height:1.2}.flashcard-term.small{font-size:20px}.flashcard-definition{margin:0;font-size:16px;line-height:1.5}.flashcard-relations{margin:0;font-size:13px}.flashcard-actions{justify-content:center;gap:.75rem;margin-top:1.25rem;display:flex}.game-done{margin-top:1.5rem}@media (prefers-reduced-motion:reduce){.flashcard-inner{transition:none}}.match-clock{font-variant-numeric:tabular-nums;font-weight:600}.match-board{grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:1.5rem;margin-top:1rem;display:grid}.match-board ul{flex-direction:column;gap:.5rem;margin:0;padding:0;list-style:none;display:flex}.match-tile{border:1px solid var(--border);background:var(--bg);text-align:left;border-radius:10px;width:100%;min-height:3rem;padding:.6rem .9rem;font-size:14px;line-height:1.35;transition:background .15s,border-color .15s}.match-tile.answer{font-weight:600}.match-tile:hover:not(:disabled){border-color:var(--accent)}.match-tile.selected{border-color:var(--accent);background:color-mix(in srgb, var(--accent) 12%, transparent)}.match-tile.matched,.match-tile.matched:disabled{border-color:color-mix(in srgb, var(--up) 50%, transparent);background:color-mix(in srgb, var(--up) 12%, transparent);color:var(--fg);opacity:1;cursor:default}.match-tile.wrong{border-color:var(--down);background:color-mix(in srgb, var(--down) 12%, transparent);animation:.35s match-shake}@keyframes match-shake{0%,to{transform:translate(0)}25%{transform:translate(-4px)}75%{transform:translate(4px)}}@media (width<=640px){.match-board{grid-template-columns:1fr}}.ai-star{color:var(--accent);margin-left:.3rem;font-size:.9em}.ai-notice{background:color-mix(in srgb, var(--accent) 9%, transparent);border:1px solid color-mix(in srgb, var(--accent) 25%, transparent);border-radius:8px;align-items:flex-start;gap:.5rem;max-width:42rem;margin:0 0 1.25rem;padding:.6rem .85rem;font-size:14px;line-height:1.45;display:flex}.ai-notice .ai-star{margin:.1rem 0 0;font-size:15px}.github-bar{background:color-mix(in srgb, var(--accent) 8%, transparent);border:1px solid color-mix(in srgb, var(--accent) 22%, transparent)}.github-mark{color:var(--accent);font-weight:700}.publish-button{padding:.2rem .8rem;font-size:13px}.github-setup ol{padding-left:1.2rem;line-height:1.6}.github-settings .section-heading{margin-top:0}.github-link-form{max-width:none}.settings-subheading{margin:1.5rem 0 .5rem;font-size:14px;font-weight:600}.pr-chip{white-space:nowrap;color:#1a7f37;background:#1f883d24;border-radius:999px;padding:0 .45rem;font-size:12px;font-weight:600;line-height:1.6;display:inline-block}.pr-chip.draft,.pr-chip.closed{background:var(--hover);color:var(--fg-soft)}.pr-chip.approved{background:#1f883d38}.pr-chip.changes_requested{background:color-mix(in srgb, var(--down) 15%, transparent);color:var(--down)}.pr-chip.merged{color:#8250df;background:#8250df26}.github-changed{background:var(--warn-bg)}.github-notice{background:#8250df1a}.github-log{border:1px solid var(--border);border-radius:8px;margin:.5rem 1rem 0;padding:.5rem .9rem;font-size:13px}.pr-log{margin:0;padding:0;list-style:none}.pr-log li{padding:.3rem 0}.link-button.inline{font-size:inherit;margin:0}.pull-button{color:var(--accent);background:color-mix(in srgb, var(--accent) 10%, var(--bg));border:1px solid color-mix(in srgb, var(--accent) 45%, transparent);border-radius:6px;padding:.2rem .8rem;font-size:13px;font-weight:500}.pull-button:hover:not(:disabled){background:color-mix(in srgb, var(--accent) 18%, var(--bg))}.zone-tabs{flex-wrap:wrap;gap:4px;margin:12px 0 4px;display:flex}.zone-tab{border:1px solid var(--border);color:var(--fg-soft);border-radius:999px;align-items:center;gap:6px;padding:4px 10px;font-size:13px;text-decoration:none;display:inline-flex}.zone-tab:hover{background:var(--hover)}.zone-tab[aria-current=page]{background:var(--accent);border-color:var(--accent);color:var(--accent-fg)}.zone-pending{background:var(--down);color:#fff;text-align:center;border-radius:999px;min-width:16px;padding:0 4px;font-size:11px;line-height:16px}.zone-folder .row-label{font-weight:600}:root{--type-1:#2a78d6;--type-2:#eb6834;--type-3:#1baf7a;--type-4:#eda100;--type-5:#e87ba4;--type-6:#008300;--type-7:#6250d6}@media (prefers-color-scheme:dark){:root{--type-1:#3987e5;--type-2:#d95926;--type-3:#199e70;--type-4:#c98500;--type-5:#d55181;--type-6:#008300;--type-7:#9085e9}}.view-toggle{border:1px solid var(--border);vertical-align:middle;border-radius:6px;margin-left:.75rem;display:inline-flex;overflow:hidden}.view-toggle button{border:0;border-radius:0;padding:2px 10px;font-size:13px;font-weight:500}.view-toggle button[aria-pressed=true]{background:var(--active);color:var(--fg)}.ontology-graph{position:relative}.graph-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;margin-bottom:8px;display:flex}.graph-legend,.graph-actions{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.legend-chip{border-radius:999px;align-items:center;gap:6px;padding:2px 10px;font-size:13px;display:inline-flex}.legend-chip.off{opacity:.45;text-decoration:line-through}.legend-dot{border-radius:50%;flex:none;width:10px;height:10px;display:inline-block}.graph-canvas{border:1px solid var(--border);background:var(--surface);cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none;border-radius:8px;width:100%;height:min(70vh,640px);display:block}.graph-canvas:active{cursor:grabbing}.graph-edge .edge-line{fill:none;stroke:var(--fg-faint);stroke-width:1.5px;vector-effect:non-scaling-stroke}.graph-edge.strong .edge-line{stroke:var(--fg-soft);stroke-width:2px}.graph-edge .edge-hit{fill:none;stroke:#0000;stroke-width:12px;cursor:pointer}.graph-arrowhead{fill:var(--fg-faint)}.graph-arrowhead.strong{fill:var(--fg-soft)}.graph-edge.dim{opacity:.15}.edge-label{fill:var(--fg-soft);paint-order:stroke;stroke:var(--surface);stroke-width:4px;pointer-events:none;font-size:11px}.graph-node{cursor:pointer;outline:none}.graph-node .node-hit{fill:#0000}.graph-node .node-dot{stroke:var(--surface);stroke-width:2px}.graph-node.focus .node-dot,.graph-node:focus-visible .node-dot{stroke:var(--fg)}.graph-node .node-pin{fill:var(--surface);pointer-events:none}.graph-node .node-label{fill:var(--fg);paint-order:stroke;stroke:var(--surface);stroke-width:4px;pointer-events:none;font-size:12px}.graph-node.dim{opacity:.2}.graph-tooltip{z-index:5;background:var(--bg);max-width:280px;box-shadow:var(--shadow);pointer-events:none;border-radius:8px;flex-direction:column;gap:4px;padding:8px 10px;font-size:13px;display:flex;position:absolute}.tooltip-type{color:var(--fg-soft);align-items:center;gap:6px;display:inline-flex}.chat-page{padding-bottom:0}.chat{flex-direction:column;min-height:calc(100vh - 4rem);display:flex}.chat-head{justify-content:space-between;align-items:baseline;gap:1rem;margin-bottom:1rem;display:flex}.chat-messages{flex-direction:column;flex:1;gap:1.25rem;padding-bottom:1.5rem;display:flex}.chat-question{background:var(--surface);white-space:pre-wrap;overflow-wrap:anywhere;border-radius:12px;align-self:flex-end;max-width:85%;padding:.55rem .85rem}.chat-answer{min-width:0}.chat-tools{color:var(--fg-soft);margin:0 0 .6rem;padding:0;font-size:13px;list-style:none}.chat-tools li{overflow-wrap:anywhere;gap:.4rem;padding:.1rem 0;display:flex}.chat-tools li.failed{color:var(--down)}.chat-tool-mark{text-align:center;flex:none;width:1rem}.chat-markdown{overflow-wrap:anywhere;line-height:1.6}.chat-markdown>:first-child{margin-top:0}.chat-markdown>:last-child{margin-bottom:0}.chat-markdown pre{background:var(--surface);border-radius:6px;padding:.75rem;font-size:13px;overflow-x:auto}.chat-markdown code{font-family:var(--font-mono);font-size:.9em}.chat-markdown table{border-collapse:collapse;display:block;overflow-x:auto}.chat-markdown th,.chat-markdown td{border:1px solid var(--border);padding:.3rem .6rem}.chat-error{margin:.6rem 0 0}.chat-cost{color:var(--fg-faint);margin:.4rem 0 0;font-size:12px}.chat-input{background:var(--bg);align-items:flex-end;gap:.5rem;padding:.75rem 0 1.25rem;display:flex;position:sticky;bottom:0}.chat-input textarea{border:1px solid var(--border);background:var(--bg);min-height:2.75rem;max-height:40vh;color:var(--fg);font:inherit;resize:vertical;border-radius:10px;flex:1;padding:.6rem .75rem}.chat-input textarea:focus{outline:2px solid color-mix(in srgb, var(--accent) 45%, transparent);outline-offset:0}
