:root{--toc-w:clamp(220px, 22vw, 300px);--gap:16px;--radius:14px;--handle-w:10px;--pane-a:1fr;--pane-b:1fr;--pane-pad:clamp(12px, 1.2vw, 20px);--reader-scale:1;--chip-text:var(--text)}html,body{height:100%}body{background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;flex-direction:column;min-height:100dvh;margin:0;font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Helvetica Neue,Arial,Apple Color Emoji,Segoe UI Emoji;display:flex}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}p,p:hover{text-decoration:none}.reader-grid{gap:var(--gap);grid-template-columns:var(--toc-w) 1fr;flex:1;grid-template-rows:1fr auto;grid-template-areas:"toc main""toc tools";min-height:80vh;padding:clamp(10px,2vw,18px);display:grid}.toc{background:var(--reader-panel);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);flex-direction:column;grid-area:toc;gap:12px;min-height:0;padding:14px;display:flex;overflow:auto}.toc h3{letter-spacing:.02em;text-transform:uppercase;margin:0 0 6px;font-size:14px}.toc-toolbar{grid-auto-columns:1fr;grid-auto-flow:column;align-items:center;gap:8px;display:grid}.toc-toolbar input[type=number]{border:1px solid var(--border);background:var(--reader-panel-2);width:92px;color:inherit;font-variant-numeric:tabular-nums;border-radius:10px;padding:8px 10px}.toc-header{font-size:.8em}.toc-btn{appearance:none;border:1px solid var(--border);background:var(--reader-panel-2);cursor:pointer;color:var(--text);border-radius:10px;padding:8px 10px;line-height:1;transition:transform 60ms,background-color .15s,border-color .15s}.toc-btn:hover{background:var(--reader-accent-0);border-color:var(--reader-accent-1)}.toc-btn:active{transform:translateY(1px)}.toc-btn:focus-visible{outline:2px solid var(--reader-accent-1);outline-offset:2px}.toc-btn:disabled{opacity:.45;cursor:not-allowed;filter:grayscale(.4)}.toc-list .toc-chapter{border:1px solid var(--border);background:var(--reader-panel-2);border-radius:10px;margin:8px 0;overflow:clip}.toc-list .toc-summary{cursor:pointer;padding:8px 10px;list-style:none}.toc-list .toc-summary::-webkit-details-marker{display:none}.toc-list .toc-pages{gap:4px;margin:0;padding:6px 10px;display:grid}.toc-list .toc-pages li{font-size:.8rem;line-height:1.3;list-style:none}.toc-page-index{opacity:.8;margin-right:4px;font-size:.75rem;font-weight:600}.toc-page-brief{opacity:.85;font-size:.75rem}.toc-list .toc-pages a{color:inherit;text-decoration:none}.toc-list .toc-pages a:hover{text-decoration:underline}.badge{background:var(--reader-panel-2);border:1px solid var(--border);border-radius:999px;margin-left:auto;padding:6px 10px;font-size:12px}.split{grid-area:main;grid-template-columns:minmax(0, var(--pane-a)) var(--handle-w) minmax(0, var(--pane-b));background:var(--reader-panel);border:1px solid var(--border);border-radius:var(--radius);min-height:0;box-shadow:var(--shadow);grid-template-rows:1fr;display:grid;overflow:visible}.pane{min-width:0;min-height:0;padding:var(--pane-pad);overflow:auto}.split .pane{container-type:inline-size}.pane.pane--summary{align-self:stretch;min-height:0;max-height:100%;position:relative;top:0;overflow:auto}.handle{width:var(--handle-w);cursor:col-resize;background:linear-gradient(to right, transparent, var(--border), transparent);user-select:none;position:relative}.handle:after{content:"";background:var(--muted);opacity:.8;width:4px;height:40px;box-shadow:-6px 0 0 var(--muted), 6px 0 0 var(--muted);border-radius:2px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.handle:hover{background:linear-gradient(to right, transparent, var(--reader-accent-1), transparent)}.handle:focus-visible{outline:2px solid var(--reader-accent-1);outline-offset:-2px}.toolbar-row{background:var(--reader-panel);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--reader-shadow);grid-area:tools;align-items:center;gap:10px;min-height:44px;padding:10px 12px;display:flex}.toolbar-row .grow{flex:auto}.font-controls{gap:8px;display:inline-flex}.toolbar-row .btn{appearance:none;border:1px solid color-mix(in oklab, var(--border) 85%, transparent 15%);background:var(--reader-panel-2);color:var(--text);cursor:pointer;border-radius:10px;min-width:42px;padding:6px 12px;font-weight:600;line-height:1.1;transition:transform 70ms,background-color .18s,border-color .18s,color .18s}.toolbar-row .btn:hover{background:var(--reader-accent-0);border-color:var(--reader-accent-1);color:var(--text)}.toolbar-row .btn:active{transform:translateY(1px)}.toolbar-row .btn:focus-visible{outline:2px solid var(--reader-accent-1);outline-offset:2px}.toolbar-row .btn:disabled{opacity:.55;cursor:not-allowed}.prose{letter-spacing:.01em;line-height:1.6}.prose h1{font-size:calc(1.25rem * var(--reader-scale));margin:0 0 6px}.prose h2{font-size:calc(1.05rem * var(--reader-scale));margin:6px 0 14px;font-weight:600}.prose p{margin:0 0 12px}.prose ul.list{gap:8px;margin:0 0 8px;padding-left:18px;display:grid}.pane .prose{font-size:calc(1rem * var(--reader-scale));line-height:1.65}.page{position:relative;overflow:visible}.page+.page{margin-top:16px}.pane .prose a{box-shadow:none!important;color:var(--accent)!important;background:0 0!important;border:0!important;padding:0!important;text-decoration:none!important;display:inline!important}.pane .prose a:hover{text-decoration:none!important}.summary-current{opacity:1;transition:opacity .2s ease-in-out}.summary-current.fade-out{opacity:0}.summary-current.fade-in{opacity:1}.summary-current p{margin:0}#summaryList li.is-active{background:color-mix(in oklab, var(--reader-accent-0) 40%, transparent);border-left:3px solid var(--reader-accent-1);border-radius:6px;padding-left:8px}#summaryProse{min-height:0;line-height:1.55;font-size:calc(1rem * var(--reader-scale));opacity:1;flex-direction:column;justify-content:center;transition:opacity .22s ease-in-out;display:block}#summaryProse.fade-out{opacity:0}#summaryProse.fade-in{opacity:1}.page-chip,.page-chip__pill,.page-chip__popover{color:var(--chip-text)}.page-chip-wrap{z-index:3;pointer-events:none;justify-content:flex-end;display:flex;position:sticky;top:8px}.page-chip{pointer-events:auto;--pill-pad-y:2px;--pill-pad-x:8px;--card-radius:16px;-webkit-appearance:none;appearance:none;background:0 0;border:1px solid oklab(59.9871% 2.98023e-8 2.98023e-8/.15);align-items:center;gap:6px;margin:0;padding:0;line-height:1;display:inline-flex;position:relative}.page-chip .page-chip__pill{padding:var(--pill-pad-y) var(--pill-pad-x);background:var(--reader-panel-2);box-shadow:var(--reader-shadow);user-select:none;border:1px solid oklab(0% none none/.15);border-color:oklab(0% none none/.15) oklab(0% none none/.15) oklab(0% none none/.15) oklab(0% none none/.15);border-radius:999px;font-weight:700;line-height:1;display:inline-block}.page-chip .page-chip__popover{border-radius:var(--card-radius);background:var(--reader-panel);border:1px solid var(--border);width:auto;min-width:0;max-width:min(520px,100vw - 32px);max-height:320px;box-shadow:var(--reader-shadow);z-index:20;isolation:isolate;opacity:0;transform-origin:50% 0;pointer-events:none;padding:14px 16px;transition:opacity .14s,transform .18s cubic-bezier(.2,.8,.2,1);position:fixed;top:0;left:0;overflow:auto;transform:translateY(-4px)scale(.98)}.page-chip .page-chip__popover .chip-title{margin-bottom:6px;font-weight:800}.page-chip .page-chip__popover .chip-brief{opacity:.95;line-height:1.55}.page-chip.is-open .page-chip__popover{opacity:1;pointer-events:auto;transform:translateY(0)scale(1)}.page-chip.is-open .page-chip__pill{border-radius:10px;box-shadow:0 10px 24px #0000002e}.page-chip__popover.above{transform-origin:50% 100%;transform:translateY(4px)scale(.98)}.page-chip.is-open .page-chip__popover.above{transform:translateY(0)scale(1)}.page-chip:focus{outline:none}.page-chip:focus-visible .page-chip__pill{outline:2px solid var(--reader-accent-1);outline-offset:2px}@media (width<=1024px){:root{--toc-w:clamp(200px, 28vw, 260px)}}@media (width<=840px){.reader-grid{grid-template:"toc""tools""main"1fr/1fr}.split{grid-template-rows:1fr auto 1fr;grid-template-columns:1fr}.handle{display:none}}@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important;animation:none!important}}.pane::-webkit-scrollbar,.toc::-webkit-scrollbar{width:10px;height:10px}.pane::-webkit-scrollbar-thumb,.toc::-webkit-scrollbar-thumb{background:var(--border);border-radius:999px}.pane::-webkit-scrollbar-thumb:hover,.toc::-webkit-scrollbar-thumb:hover{background:var(--reader-accent-1)}
