@font-face{font-family:Newsreader;src:url(/fonts/Newsreader-Variable.woff2) format("woff2");font-weight:200 800;font-style:normal;font-display:swap}@font-face{font-family:Newsreader;src:url(/fonts/Newsreader-Italic-Variable.woff2) format("woff2");font-weight:200 800;font-style:italic;font-display:swap}@font-face{font-family:Public Sans;src:url(/fonts/PublicSans-Variable.woff2) format("woff2");font-weight:100 900;font-style:normal;font-display:swap}@font-face{font-family:IBM Plex Mono;src:url(/fonts/IBMPlexMono-Regular.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:IBM Plex Mono;src:url(/fonts/IBMPlexMono-Medium.woff2) format("woff2");font-weight:500;font-style:normal;font-display:swap}:root,:root[data-theme=light]{--bg: #f4f5f9;--surface: #ffffff;--surface-2: #eceef4;--raised: #ffffff;--line: rgba(23, 27, 36, .12);--line-2: rgba(23, 27, 36, .07);--line-strong: #7b8496;--text: #171b24;--muted: #515a6b;--faint: #646d7f;--accent: #3b4bc4;--accent-deep: #2c3aa3;--accent-soft: rgba(59, 75, 196, .1);--on-accent: #ffffff;--amber: #8a5a00;--amber-fill: #b87400;--amber-edge: rgba(184, 116, 0, .4);--highlight: #ffe19a;--on-highlight: #1b1d22;--ok: #17795a;--danger: #b4322e;--scrim: rgba(23, 27, 36, .45);color-scheme:light}:root[data-theme=dark]{--bg: #171b24;--surface: #1f242f;--surface-2: #272d3a;--raised: #2e3545;--line: rgba(255, 255, 255, .09);--line-2: rgba(255, 255, 255, .06);--line-strong: #717a8c;--text: #e9ebf1;--muted: #9aa3b4;--faint: #717a8c;--accent: #94a4ff;--accent-deep: #6f84f5;--accent-soft: rgba(148, 164, 255, .14);--on-accent: #171b24;--amber: #ffc95c;--amber-fill: #ffc95c;--amber-edge: rgba(255, 201, 92, .4);--highlight: #ffc95c;--on-highlight: #1b1d22;--ok: #5fd6a6;--danger: #ff8f85;--scrim: rgba(0, 0, 0, .55);color-scheme:dark}@media(prefers-color-scheme:dark){:root:not([data-theme]){--bg: #171b24;--surface: #1f242f;--surface-2: #272d3a;--raised: #2e3545;--line: rgba(255, 255, 255, .09);--line-2: rgba(255, 255, 255, .06);--line-strong: #717a8c;--text: #e9ebf1;--muted: #9aa3b4;--faint: #717a8c;--accent: #94a4ff;--accent-deep: #6f84f5;--accent-soft: rgba(148, 164, 255, .14);--on-accent: #171b24;--amber: #ffc95c;--amber-fill: #ffc95c;--amber-edge: rgba(255, 201, 92, .4);--highlight: #ffc95c;--ok: #5fd6a6;--danger: #ff8f85;--scrim: rgba(0, 0, 0, .55);color-scheme:dark}}:root{--font-serif: "Newsreader", Georgia, serif;--font-ui: "Public Sans", system-ui, -apple-system, sans-serif;--font-mono: "IBM Plex Mono", ui-monospace, monospace;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 24px;--space-6: 32px;--space-7: 48px;--space-8: 64px;--r-xs: 2px;--r-sm: 4px;--r-md: 10px;--r-lg: 14px;--r-pill: 100px;--rheton-hl-exact: rgba(255, 201, 92, .42);--rheton-hl-fallback: rgba(255, 201, 92, .42);--rheton-hl-active: rgba(255, 201, 92, .72);--rheton-hl-active-outline: #b87400;--rheton-page-shadow: none;--rheton-page-bg: #ffffff;--rheton-page-label-fg: #515a6b;--rheton-page-label-bg: rgba(255, 255, 255, .9);--rheton-selection: rgba(59, 75, 196, .28)}*,*:before,*:after{box-sizing:border-box}html,body{margin:0;background:var(--bg);color:var(--text);font-family:var(--font-ui);font-size:14px;line-height:1.5;-webkit-font-smoothing:antialiased}::selection{background:var(--highlight);color:var(--on-highlight)}a{color:var(--accent);text-underline-offset:2px}a:hover{color:var(--accent-deep)}:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:var(--r-sm)}h1,h2,h3{margin:0;font-family:var(--font-serif);font-weight:500;color:var(--text)}h1{font-size:30px;line-height:1.15;letter-spacing:-.015em}h2{font-size:22px;line-height:1.2;letter-spacing:-.01em}h3{font-size:17px;line-height:1.3}p{margin:0}.display{font-size:60px;line-height:1.04;letter-spacing:-.02em}.display em,h1 em{font-style:italic;color:var(--accent)}@media(max-width:640px){.display{font-size:42px}}.eyebrow{font:400 11px/1.4 var(--font-mono);letter-spacing:.18em;text-transform:uppercase;color:var(--accent);margin:0 0 var(--space-2)}.label{font:400 10.5px/1.4 var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}.data{font:400 11px/1.4 var(--font-mono);letter-spacing:.02em;color:var(--muted)}.lede{font-size:16px;line-height:1.5;color:var(--muted)}.visually-hidden{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.icon{width:16px;height:16px;flex:none;display:inline-block;vertical-align:-3px}.icon-20{width:20px;height:20px}.icon-24{width:24px;height:24px}.logo .ink{fill:var(--text)}.logo .acc,.logo .a{fill:var(--accent)}.logo .b{fill:var(--amber-fill)}.brand{display:inline-flex;align-items:center;gap:var(--space-3);text-decoration:none;color:var(--text);padding:4px 0}.brand:hover{color:var(--text)}.brand-sub{border-left:1px solid var(--line-strong);padding-left:var(--space-3)}.topbar{position:sticky;top:0;z-index:20;background:var(--bg);border-bottom:1px solid var(--line)}.topbar-inner{display:flex;align-items:center;gap:var(--space-5);max-width:1180px;margin:0 auto;padding:10px var(--space-5)}.nav{display:flex;gap:var(--space-1)}.nav a{display:inline-flex;align-items:center;gap:var(--space-2);text-decoration:none;color:var(--muted);padding:6px 12px;border-radius:var(--r-pill);font-weight:600;font-size:13.5px;transition:background .16s,color .16s}.nav a:hover{color:var(--text);background:var(--accent-soft)}.nav a[aria-current=page]{color:var(--accent);background:var(--accent-soft)}.topbar-spacer{flex:1}.topbar-user{display:flex;align-items:center;gap:var(--space-3)}.topbar-user .who-name{color:var(--text);text-decoration:none;font-weight:600}.topbar-user .who-name:hover{color:var(--accent)}.topbar-user .who-inst{color:var(--muted)}.page{max-width:1180px;margin:0 auto;padding:var(--space-6) var(--space-5) var(--space-8)}.page-narrow{max-width:880px}.page-head{display:flex;align-items:flex-end;justify-content:space-between;gap:var(--space-4);flex-wrap:wrap;margin-bottom:var(--space-6)}.page-head .lede{margin-top:var(--space-2);max-width:60ch}.crumbs{margin-bottom:var(--space-3)}.crumbs a{font:400 11px/1.4 var(--font-mono);letter-spacing:.04em;color:var(--accent);text-decoration:none}.crumbs a:hover{text-decoration:underline}.crumbs .sep{color:var(--line-strong);margin:0 var(--space-2);font:400 11px/1.4 var(--font-mono)}.grid-2{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:var(--space-6);align-items:start}@media(max-width:900px){.grid-2{grid-template-columns:minmax(0,1fr)}}.stack{display:flex;flex-direction:column;gap:var(--space-3)}.row{display:flex;align-items:center;gap:var(--space-3);flex-wrap:wrap}.muted{color:var(--muted)}.small{font-size:12.5px}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-md);padding:var(--space-5)}.card+.card{margin-top:var(--space-5)}.card-head{display:flex;align-items:baseline;justify-content:space-between;gap:var(--space-3);margin-bottom:var(--space-4)}.list{list-style:none;margin:0;padding:0}.list>li{border-top:1px solid var(--line-2)}.list>li:first-child{border-top:0}.tile-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:var(--space-5)}.tile{display:flex;flex-direction:column;gap:var(--space-2);text-decoration:none;color:var(--text);background:var(--surface);border:1px solid var(--line);border-radius:var(--r-md);padding:var(--space-5);transition:border-color .16s}.tile:hover{color:var(--text);border-color:var(--accent)}.tile .meta{display:flex;align-items:center;gap:var(--space-3);justify-content:space-between}.tile h2{font-size:22px}.tile .link{margin-top:var(--space-2);font:400 11px/1.4 var(--font-mono);letter-spacing:.04em;color:var(--accent);display:inline-flex;align-items:center;gap:var(--space-1)}.paper-row{display:flex;align-items:center;gap:var(--space-4);padding:var(--space-4) 0}.paper-icon{flex:0 0 auto;width:36px;height:44px;border-radius:var(--r-sm);border:1px solid var(--line-strong);color:var(--accent);display:grid;place-items:center}.paper-main{flex:1;min-width:0}.paper-main a{font:500 18px/1.3 var(--font-serif);text-decoration:none;color:var(--text)}.paper-main a:hover{color:var(--accent)}.paper-main .meta{margin-top:2px}.member-row{display:flex;align-items:center;gap:var(--space-3);padding:10px 0}.avatar{flex:0 0 auto;width:30px;height:30px;border-radius:50%;display:grid;place-items:center;border:1px solid var(--line-strong);color:var(--muted);font:500 10.5px/1 var(--font-mono);letter-spacing:.04em}.member-row .who{flex:1;min-width:0}.member-row .who .email{font:400 11px/1.4 var(--font-mono);letter-spacing:.02em;color:var(--muted);overflow:hidden;text-overflow:ellipsis}.badge{display:inline-flex;align-items:center;gap:6px;font:400 10.5px/1.4 var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--muted);border:1px solid var(--line-strong);border-radius:var(--r-pill);padding:2px 10px;white-space:nowrap}.badge-accent{color:var(--accent);border-color:var(--accent)}.badge-warn{color:var(--amber);border-color:var(--amber-fill)}.badge-danger{color:var(--danger);border-color:var(--danger)}.badge-ok{color:var(--ok);border-color:var(--ok)}.empty{padding:var(--space-6) 0;max-width:52ch}.empty h2{margin-bottom:var(--space-2)}.empty p{color:var(--muted)}.field{display:flex;flex-direction:column;gap:6px}.field label{font:600 12.5px/1.4 var(--font-ui);color:var(--text)}.field .hint{font-size:12.5px;color:var(--muted)}input:not([type]),input[type=text],input[type=email],input[type=password],input[type=number],textarea,select{font:400 14px/1.4 var(--font-ui);color:var(--text);background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--r-sm);padding:9px var(--space-3);width:100%}input::placeholder,textarea::placeholder{color:var(--muted)}textarea{resize:vertical;min-height:76px}input:focus-visible,textarea:focus-visible,select:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.checkbox{display:flex;align-items:flex-start;gap:var(--space-2)}.checkbox input{accent-color:var(--accent);margin-top:3px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);font:600 13.5px/1.2 var(--font-ui);padding:10px 18px;border:1px solid var(--line-strong);border-radius:var(--r-pill);background:transparent;color:var(--text);cursor:pointer;text-decoration:none;white-space:nowrap;transition:background .16s,border-color .16s,color .16s}.btn:hover{border-color:var(--accent);background:var(--accent-soft);color:var(--text)}.btn:disabled{color:var(--muted);background:var(--surface-2);border-color:transparent;cursor:not-allowed}.btn-primary{background:var(--accent);border-color:var(--accent);color:var(--on-accent)}.btn-primary:hover{background:var(--accent-deep);border-color:var(--accent-deep);color:var(--on-accent)}.btn-danger{color:var(--danger);border-color:var(--danger)}.btn-danger:hover{color:var(--danger);border-color:var(--danger);background:transparent;text-decoration:underline}.btn-ghost,.btn-quiet{border-color:transparent;padding-inline:var(--space-2);color:var(--accent);font:400 11px/1.4 var(--font-mono);letter-spacing:.04em}.btn-ghost:hover,.btn-quiet:hover{background:transparent;border-color:transparent;color:var(--accent-deep);text-decoration:underline}.btn-sm{padding:6px 14px;font-size:12.5px}.btn-ghost.btn-sm{padding:4px var(--space-2);font-size:11px}.btn-block{width:100%}.btn .icon{width:16px;height:16px}.icon-btn{display:inline-grid;place-items:center;width:36px;height:36px;border:1px solid var(--line-strong);border-radius:var(--r-pill);background:transparent;color:var(--text);cursor:pointer;transition:border-color .16s,background .16s}.icon-btn:hover{border-color:var(--accent);background:var(--accent-soft)}.link-btn{font:inherit;background:none;border:0;padding:0;color:var(--accent);cursor:pointer;text-decoration:underline;text-underline-offset:2px}.alert{display:flex;gap:var(--space-2);border-radius:var(--r-sm);padding:10px 14px;font-size:13.5px;border:1px solid;background:var(--surface)}.alert-error{color:var(--danger);border-color:var(--danger)}.alert-warn{color:var(--amber);border-color:var(--amber-fill)}.alert-ok{color:var(--ok);border-color:var(--ok)}.alert-info{color:var(--text);border-color:var(--line-strong)}.banner{max-width:1180px;margin:var(--space-4) auto 0;padding:0 var(--space-5)}.auth-wrap{min-height:100vh;display:flex;flex-direction:column;padding:var(--space-5)}.auth-top{display:flex;justify-content:space-between;align-items:center}.auth-body{flex:1;display:grid;place-items:center;padding:var(--space-6) 0}.auth-card{width:100%;max-width:420px;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-md);padding:var(--space-6)}.auth-card h1{margin-bottom:var(--space-2)}.auth-card .lede{margin-bottom:var(--space-5)}.auth-foot{margin-top:var(--space-5);padding-top:var(--space-4);border-top:1px solid var(--line-2);color:var(--muted)}.auth-note{text-align:center}.notfound{max-width:880px;padding:var(--space-8) 0}.notfound .lede{margin:var(--space-4) 0 var(--space-5);max-width:52ch}.dropzone{border:1px dashed var(--line-strong);border-radius:var(--r-md);padding:var(--space-5);text-align:center;color:var(--muted);background:var(--surface);transition:border-color .16s,background .16s}.dropzone strong{color:var(--text)}.dropzone.is-over{border-color:var(--accent);border-style:solid;background:var(--accent-soft)}.progress{height:4px;border-radius:var(--r-pill);background:var(--surface-2);overflow:hidden}.progress>span{display:block;height:100%;background:var(--accent);transition:width .16s}.meter{height:6px;border-radius:var(--r-pill);background:var(--surface-2);overflow:hidden}.meter>span{display:block;height:100%;background:var(--accent)}.meter.is-warn>span{background:var(--amber-fill)}.meter.is-full>span{background:var(--danger)}.reader{display:grid;grid-template-columns:minmax(0,1fr) 380px;height:calc(100vh - 61px)}.reader-doc{overflow:auto;padding:var(--space-5) var(--space-5) var(--space-8);position:relative}.reader-side{border-left:1px solid var(--line);background:var(--surface);display:flex;flex-direction:column;min-height:0}.reader-side-head{padding:var(--space-4) var(--space-5) var(--space-3);border-bottom:1px solid var(--line)}.reader-side-head h2{font-size:22px;margin-bottom:2px}.reader-side-body{overflow:auto;padding:var(--space-4) var(--space-4) var(--space-7);flex:1}.reader-toolbar{display:flex;align-items:flex-end;gap:var(--space-3);margin:0 auto var(--space-5);max-width:920px;justify-content:space-between;flex-wrap:wrap}.reader-toolbar h1{font-size:26px}.zoom{display:inline-flex;align-items:center;border:1px solid var(--line-strong);border-radius:var(--r-pill);overflow:hidden}.zoom button{font:400 14px/1 var(--font-mono);color:var(--text);background:transparent;border:0;padding:8px 14px;cursor:pointer}.zoom button:hover{background:var(--accent-soft)}.zoom span{font:400 11px/1 var(--font-mono);color:var(--muted);min-width:48px;text-align:center;border-inline:1px solid var(--line);padding:9px 0}@media(max-width:960px){.reader{grid-template-columns:minmax(0,1fr);height:auto}.reader-doc{overflow:visible;padding:var(--space-4) var(--space-2) var(--space-5)}.reader-side{border-left:0;border-top:1px solid var(--line)}}.thread{border:1px solid var(--line);border-radius:var(--r-md);background:var(--bg);padding:var(--space-3) var(--space-4);margin-bottom:var(--space-3);cursor:pointer;transition:border-color .16s}.thread:hover{border-color:var(--line-strong)}.thread.is-active{border-color:var(--accent)}.thread-quote{font:italic 400 15px/1.55 var(--font-serif);color:var(--text);background:none;box-shadow:inset 0 -1px 0 var(--amber-edge);display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;margin:0 0 var(--space-3);padding:0}.comment+.comment{margin-top:var(--space-3);padding-top:var(--space-3);border-top:1px solid var(--line-2)}.comment-head{display:flex;align-items:baseline;gap:var(--space-2);margin-bottom:2px}.comment-author{font-weight:600;font-size:13px}.comment-time{font:400 11px/1.4 var(--font-mono);letter-spacing:.02em;color:var(--muted)}.comment-body{font:400 16px/1.6 var(--font-serif);white-space:pre-wrap;overflow-wrap:anywhere}.comment-body.is-deleted{font:italic 400 15px/1.6 var(--font-serif);color:var(--muted)}.comment-actions{display:flex;gap:var(--space-3);margin-top:var(--space-1)}.comment-actions button{font:400 11px/1.4 var(--font-mono);letter-spacing:.04em;color:var(--accent);background:none;border:0;padding:0;cursor:pointer}.comment-actions button:hover{color:var(--accent-deep);text-decoration:underline}.replies{margin-top:var(--space-3);padding-left:var(--space-3);border-left:1px solid var(--line-strong)}.composer-pop{position:fixed;z-index:40;width:320px;background:var(--raised);border:1px solid var(--line-strong);border-radius:var(--r-md);padding:var(--space-4)}.selection-btn{position:fixed;z-index:40}.toast{position:fixed;left:50%;bottom:var(--space-5);transform:translate(-50%);z-index:60;background:var(--raised);color:var(--text);border:1px solid var(--line-strong);padding:10px 16px;border-radius:var(--r-pill);font-size:13.5px}.table-wrap{overflow-x:auto}table.table{width:100%;border-collapse:collapse}.table th,.table td{text-align:left;padding:var(--space-3);border-bottom:1px solid var(--line-2);vertical-align:middle}.table th{font:400 10.5px/1.4 var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--muted);background:var(--surface-2);border-bottom:1px solid var(--line)}.table td strong{font:500 16px/1.3 var(--font-serif)}.table tr.is-selected td{background:var(--accent-soft)}.num{text-align:right!important;font-family:var(--font-mono);font-size:12.5px;font-variant-numeric:tabular-nums}dialog.modal{border:1px solid var(--line-strong);border-radius:var(--r-md);padding:0;width:min(520px,calc(100vw - 32px));background:var(--raised);color:var(--text)}dialog.modal::backdrop{background:var(--scrim)}.modal-body{padding:var(--space-5) var(--space-5) var(--space-3)}.modal-foot{display:flex;justify-content:flex-end;gap:var(--space-2);padding:var(--space-3) var(--space-5) var(--space-5)}.copy-box{display:flex;gap:var(--space-2)}.copy-box input{font:400 12px/1.4 var(--font-mono)}@media(prefers-reduced-motion:reduce){*,*:before,*:after{transition:none!important;scroll-behavior:auto!important}}@media(max-width:640px){.topbar-inner{gap:var(--space-3);padding:10px var(--space-4);flex-wrap:wrap}.brand-sub,.topbar-user .who-name,.topbar-user .who-inst{display:none}.page{padding:var(--space-5) var(--space-4) var(--space-7)}.auth-wrap{padding:var(--space-4)}.auth-card{padding:var(--space-5)}}
