:root{color-scheme:light;--bg:#f4f4f2;--panel:#ffffff;--panel-muted:#f8f8f6;--text:#1f2320;--muted:#696f69;--line:#d8d9d2;--accent:#2f6f58;--accent-soft:#e4f0ea;--danger:#9f2d2d}*{box-sizing:border-box}body,html{min-height:100%}body{margin:0;background:var(--bg);color:var(--text);font-family:Arial,Helvetica,sans-serif}button,input{font:inherit}button{cursor:pointer}.shell{min-height:100dvh;padding:18px}.topbar{display:grid;grid-template-columns:minmax(220px,340px) minmax(240px,1fr) auto;grid-gap:18px;gap:18px;align-items:flex-end;margin-bottom:18px}.topbar-actions{display:flex;gap:10px;align-items:center;justify-content:flex-end}.kicker{margin:0 0 4px;color:var(--accent);font-size:12px;font-weight:700;letter-spacing:0;text-transform:uppercase}h1,h2,h3,p{margin-top:0}h1{margin-bottom:0;font-size:30px;line-height:1.1}.search{display:grid;grid-gap:6px;gap:6px}.panel-title,.search span{color:var(--muted);font-size:12px;font-weight:700;text-transform:uppercase}.search input{width:100%;min-height:44px;border:1px solid var(--line);border-radius:8px;background:var(--panel);color:var(--text);padding:0 14px;outline:none}.search input:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.focus-link,.logout-button,.nav-link,.order-toggle{min-height:40px;border:1px solid var(--line);border-radius:8px;background:var(--panel);color:var(--text);padding:0 12px}.focus-link:hover,.logout-button:hover,.nav-link:hover,.order-toggle:hover{border-color:var(--accent);background:var(--accent-soft)}.nav-link{display:inline-flex;align-items:center;text-decoration:none;white-space:nowrap}.focus-strip{display:flex;justify-content:space-between;gap:18px;align-items:center;border:1px solid var(--line);border-radius:8px;background:var(--panel);margin-bottom:12px;padding:14px}.focus-strip strong{font-size:18px;line-height:1.25}.focus-link:disabled{cursor:default;opacity:.55}.type-filter{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:18px}.filter-pill{min-height:34px;border:1px solid var(--line);border-radius:8px;background:var(--panel);color:var(--muted);padding:0 11px}.filter-pill.active,.filter-pill:hover{border-color:var(--accent);background:var(--accent-soft);color:var(--accent)}.order-toggle{display:inline-flex;align-items:center;gap:7px;white-space:nowrap}.order-toggle span{color:var(--accent);font-size:17px;line-height:1}.workspace{display:grid;grid-template-columns:290px minmax(0,1fr) 290px;grid-gap:18px;gap:18px;align-items:start}.changes,.reader,.search-results,.sidebar{border:1px solid var(--line);border-radius:8px;background:var(--panel)}.changes,.sidebar{max-height:calc(100dvh - 116px);overflow:auto;padding:14px}.reader{min-height:calc(100dvh - 116px);padding:24px}.search-results{margin-bottom:18px;padding:14px}.tree-group{margin-top:18px}.tree-group h2{margin-bottom:0;color:var(--muted);font-size:13px;text-transform:uppercase}.tree-group-heading{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:8px}.tree-group-heading span{color:var(--muted);font-size:12px}.change-row,.result-row,.tree-item{display:grid;width:100%;grid-gap:3px;gap:3px;border:0;border-radius:8px;background:transparent;color:var(--text);padding:10px;text-align:left}.change-row:hover,.result-row:hover,.tree-item.active,.tree-item:hover{background:var(--accent-soft)}.tree-toggle{width:100%;border:1px solid var(--line);border-radius:8px;background:var(--panel-muted);color:var(--accent);margin-top:6px;padding:9px 10px;text-align:center}.tree-toggle:hover{border-color:var(--accent);background:var(--accent-soft)}.change-row strong,.result-row strong,.tree-item span{font-size:14px}.change-row span,.change-row time,.document-meta span,.result-row small,.result-row span,.tree-item small{color:var(--muted);font-size:12px;line-height:1.35}.changes{display:grid;grid-gap:8px;gap:8px}.document-meta{display:flex;justify-content:space-between;gap:18px;border-bottom:1px solid var(--line);padding-bottom:18px;margin-bottom:22px}.document-meta h2{margin-bottom:4px;font-size:26px;line-height:1.15}.document-meta time{flex:0 0 auto;color:var(--muted);font-size:12px}.document-actions{display:flex;flex:0 0 auto;flex-direction:column;gap:10px;align-items:flex-end}.document-info{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:10px;gap:10px;max-width:980px;border:1px solid var(--line);border-radius:8px;background:var(--panel-muted);margin-bottom:24px;padding:14px}.document-info div{display:grid;grid-gap:4px;gap:4px;min-width:0}.document-info span{color:var(--muted);font-size:11px;font-weight:700;text-transform:uppercase}.document-info strong{overflow-wrap:anywhere;font-size:13px;line-height:1.35}.document-info-wide{grid-column:span 2}.markdown{max-width:860px;line-height:1.65}.markdown h1,.markdown h2,.markdown h3{line-height:1.2;margin:28px 0 10px}.markdown h1:first-child,.markdown h2:first-child{margin-top:0}.markdown li,.markdown p{color:#303530}.markdown code{border:1px solid var(--line);border-radius:5px;padding:1px 5px}.markdown code,.markdown pre{background:var(--panel-muted)}.markdown pre{overflow:auto;border:1px solid var(--line);border-radius:8px;padding:14px}.relations{display:grid;grid-template-columns:1fr 1fr;grid-gap:14px;gap:14px;border-top:1px solid var(--line);margin-top:30px;padding-top:18px}.relations div{border:1px solid var(--line);border-radius:8px;background:var(--panel-muted);padding:14px}.relations h3{margin-bottom:10px;font-size:15px}.relations button{display:block;width:100%;border:0;border-radius:6px;background:transparent;color:var(--accent);padding:7px 0;text-align:left}.empty,.empty-reader,.error{color:var(--muted);font-size:14px}.error{color:var(--danger)}.empty-reader{min-height:320px}.auth-page,.empty-reader{display:grid;place-items:center}.auth-page{min-height:100dvh;padding:18px}.auth-card{display:grid;width:min(100%,360px);grid-gap:16px;gap:16px;border:1px solid var(--line);border-radius:8px;background:var(--panel);padding:24px}.auth-card h1{margin-bottom:6px}.auth-card label{display:grid;grid-gap:6px;gap:6px;color:var(--muted);font-size:12px;font-weight:700;text-transform:uppercase}.auth-card input{min-height:44px;border:1px solid var(--line);border-radius:8px;padding:0 12px;outline:none}.auth-card input:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.auth-card button{min-height:44px;border:0;border-radius:8px;background:var(--accent);color:#ffffff;font-weight:700}.auth-card button:disabled{opacity:.65}.auth-error{margin:0;color:var(--danger);font-size:14px}.strategic-shell{max-width:1120px;margin:0 auto}.map-header{display:flex;justify-content:space-between;gap:18px;align-items:flex-end;margin-bottom:18px}.strategy-list,.strategy-tree{border:1px solid var(--line);border-radius:8px;background:var(--panel)}.strategy-tree{display:grid;grid-gap:18px;gap:18px;margin-bottom:18px;padding:18px}.strategy-root{display:grid;justify-items:center;grid-gap:4px;gap:4px;border:1px solid var(--accent);border-radius:8px;background:var(--accent-soft);padding:18px}.strategy-root span{color:var(--accent);font-size:12px;font-weight:700;text-transform:uppercase}.strategy-root strong{font-size:24px}.strategy-branches{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));grid-gap:10px;gap:10px}.strategy-node,.strategy-row{border:1px solid var(--line);border-radius:8px;color:var(--text);text-decoration:none}.strategy-node{display:grid;grid-gap:8px;gap:8px;align-content:start;min-height:138px;background:var(--panel-muted);padding:14px}.strategy-node:hover,.strategy-row:hover{border-color:var(--accent);background:var(--accent-soft)}.strategy-node span,.strategy-row strong{font-weight:700}.strategy-node p,.strategy-row span{margin:0;color:var(--muted);font-size:13px;line-height:1.45}.strategy-list{display:grid;grid-gap:8px;gap:8px;padding:14px}.strategy-row{display:grid;grid-gap:4px;gap:4px;padding:12px}@media (max-width:1100px){.workspace{grid-template-columns:250px minmax(0,1fr)}.changes{grid-column:1/-1;max-height:none}}@media (max-width:760px){.shell{padding:12px}.document-info,.relations,.strategy-branches,.topbar,.workspace{grid-template-columns:1fr}.focus-strip,.map-header,.topbar-actions{align-items:stretch;flex-direction:column}.changes,.reader,.sidebar{max-height:none}.document-meta{display:grid}.document-actions{align-items:flex-start}.document-info-wide{grid-column:auto}}