:root[data-theme=light]{color-scheme:light}:root[data-theme=dark]{color-scheme:dark}:root{color-scheme:light dark;--paper: light-dark(#FAF8F4, #16150F);--card: light-dark(#FFFFFF, #211F1A);--ink: light-dark(#1C1A17, #FAF8F4);--ink-muted: light-dark(#6B6862, #A9A497);--rule: light-dark(#E3E0D8, #34312A);--rule-strong: light-dark(#CFCBBF, #45413A);--sage: light-dark(#7C8A78, #9DB098);--sage-deep: light-dark(#5E6B5B, #B7C7B2);--sage-tint: light-dark(#EDF0EA, #262C23);--sage-ink: light-dark(#FFFFFF, #16150F);--persimmon: light-dark(#D96A2B, #E8814A);--persimmon-bg: light-dark(#FDF2EA, #2A1C13);--persimmon-ink: light-dark(#FFFFFF, #16150F);--accept: light-dark(#3F7A5E, #78B294);--accept-bg: light-dark(#F2F5F0, #1B2620);--mixed: light-dark(#B8912F, #D9B45A);--mixed-bg: light-dark(#F7F3E8, #2A2418);--mixed-deep: light-dark(#7E6410, #E3C57A);--reject: light-dark(#A6462E, #D98A72);--reject-bg: light-dark(#FAEFEA, #2E1E19);--r-sm: 6px;--r: 10px;--r-lg: 16px;--sans: Arial, "Helvetica Neue", Helvetica, sans-serif;--mono: "JetBrains Mono", "IBM Plex Mono", ui-monospace, SFMono-Regular, Menlo, monospace;--measure: 68ch;--control-h: 2.6rem}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;background:var(--paper);color:var(--ink);font:400 16px/1.6 var(--sans);-webkit-font-smoothing:antialiased}:where(a){color:var(--sage-deep);text-underline-offset:2px}:where(h1,h2,h3){line-height:1.25;margin:0;letter-spacing:-.011em}:where(button,input,select,textarea){font:inherit;color:inherit}:where(:focus-visible){outline:2px solid var(--sage);outline-offset:2px;border-radius:var(--r-sm)}.shell{min-height:100dvh;display:flex;flex-direction:column}.topbar{position:sticky;top:0;z-index:20;background:light-dark(rgb(250 248 244 / .85),rgb(22 21 15 / .85));-webkit-backdrop-filter:saturate(1.4) blur(12px);backdrop-filter:saturate(1.4) blur(12px);border-bottom:1px solid var(--rule)}.topbar-inner{max-width:var(--bar-measure, 78rem);margin:0 auto;padding:0 1.5rem;min-height:3.5rem;display:flex;align-items:center;gap:1rem}.topbar .spacer{flex:1}.wordmark{font-weight:700;letter-spacing:-.015em;display:flex;align-items:center;gap:.55rem;text-decoration:none;color:var(--ink)}.mark{width:1.75rem;height:1.75rem;flex:none;color:var(--persimmon)}.crumb{color:var(--ink-muted)}.themetoggle{display:flex;flex:none;padding:2px;gap:2px;border:1px solid var(--rule-strong);border-radius:var(--r);background:var(--paper)}.themeopt{display:grid;place-items:center;width:1.9rem;height:1.75rem;padding:0;border:0;border-radius:var(--r-sm);background:transparent;color:var(--ink-muted);cursor:pointer;transition:background .12s,color .12s}.themeopt:hover:not(.on){color:var(--ink);background:var(--sage-tint)}.themeopt.on{background:var(--card);color:var(--sage-deep);box-shadow:0 1px 2px #0000001f}.themeopt svg{display:block}@media(max-width:30rem){.themeopt{width:1.6rem}}.page{flex:1;max-width:78rem;width:100%;margin:0 auto;padding:2rem 1.5rem 5rem}.page.reading{max-width:52rem}.page.narrow{max-width:30rem;padding-top:5rem}.shell.reading .topbar-inner{--bar-measure: 52rem}.stack{display:grid;gap:1rem}.stack>*{min-width:0}.stack.tight{gap:.5rem}.stack.loose{gap:2rem}.stack.readingcol{max-width:52rem}.row{display:flex;gap:.75rem;align-items:center;flex-wrap:wrap}.row.end{justify-content:flex-end}.row.bottom{align-items:flex-end}.rowactions{white-space:nowrap;text-align:right}.rowactions .btn+.btn{margin-left:.25rem}.titlerow{display:flex;align-items:center;gap:.6rem;min-width:0}.titlerow .title{min-width:0;overflow-wrap:anywhere}.titlerow input{max-width:24rem}.grow{flex:1}.title{font-size:clamp(1.5rem,1.2rem + 1.2vw,2rem);font-weight:700}.subtitle{color:var(--ink-muted)}.eyebrow{font-size:.69rem;font-weight:700;letter-spacing:.09em;text-transform:uppercase;color:var(--ink-muted)}.muted{color:var(--ink-muted)}.mono{font-family:var(--mono);font-size:.84em}code{font-family:var(--mono);font-size:.88em}.hint{color:var(--ink-muted);font-size:.86rem;margin:0}.card{background:var(--card);border:1px solid var(--rule);border-radius:var(--r-lg);padding:1.35rem 1.5rem}.card.flush{padding:0;overflow:hidden}.card.busy{opacity:.6;transition:opacity .12s}.card-head{display:flex;align-items:baseline;gap:.75rem;margin-bottom:.85rem}.card-head h2{font-size:.95rem;font-weight:700}.prose{font-family:var(--sans);font-size:1rem;line-height:1.65;color:var(--ink);max-width:var(--measure);margin:0;white-space:pre-wrap}.prose.lede{font-size:1.125rem;line-height:1.55}.hops{display:grid;gap:.5rem;margin:0;padding:0;list-style:none}.hop{display:grid;grid-template-columns:1.75rem 1fr;gap:.85rem;padding:.7rem .85rem .7rem .7rem;border:1px solid var(--rule);border-radius:var(--r);background:var(--paper);align-items:start}.hop-n{display:grid;place-items:center;width:1.75rem;height:1.75rem;border-radius:50%;background:var(--card);border:1px solid var(--rule-strong);font:700 .75rem/1 var(--mono);color:var(--ink-muted)}.hop-body{font-family:var(--sans);font-size:.94rem;line-height:1.6;max-width:var(--measure)}.hop-tag{display:inline-flex;align-items:center;gap:.3rem;font:700 .66rem/1 var(--sans);letter-spacing:.05em;text-transform:uppercase;padding:.22rem .45rem;border-radius:var(--r-sm);background:var(--card);border:1px solid var(--rule-strong);color:var(--ink-muted);margin-right:.45rem;vertical-align:1px;white-space:nowrap}.hop-src{font-weight:400;text-transform:none;letter-spacing:0;color:var(--ink-muted)}.ranklist{display:grid;gap:.5rem;margin:0;padding:0;list-style:none}.ranklist.busy{opacity:.6;pointer-events:none}.rankrow{display:grid;grid-template-columns:1.5rem 1fr auto;gap:.85rem;align-items:start;padding:.9rem 1rem;border:1px solid var(--rule);border-radius:var(--r);background:var(--card)}.rankrow.dragging{opacity:.4}.rankrow:has(.pill.on){border-color:var(--sage)}.handle{cursor:grab;-webkit-user-select:none;user-select:none;color:var(--ink-muted);font-size:1.1rem;line-height:1.4}.rankrow:active .handle{cursor:grabbing}.rank-head{display:flex;align-items:baseline;gap:.6rem;flex-wrap:wrap;margin-bottom:.4rem}.rank-body .prose{font-size:.94rem}.rank-nudge{display:grid;gap:.25rem}.rank-nudge .btn{padding:0 .5rem;height:1.6rem}fieldset{border:0;padding:0;margin:0;min-width:0}legend{padding:0}.field{display:grid;gap:.55rem}.field-label{display:flex;align-items:baseline;gap:.5rem;flex-wrap:wrap}.field-label .name{font-weight:700}.req{font:700 .64rem/1 var(--sans);letter-spacing:.07em;text-transform:uppercase;color:var(--sage-deep);background:var(--sage-tint);padding:.2rem .4rem;border-radius:var(--r-sm)}.cond{font-size:.78rem;color:var(--ink-muted);font-style:italic}.options{display:grid;gap:.4rem}.options.inline{grid-auto-flow:column;grid-auto-columns:1fr;gap:.5rem}@media(max-width:40rem){.options.inline{grid-auto-flow:row}}.opt{display:flex;align-items:flex-start;gap:.65rem;padding:.62rem .75rem;border:1px solid var(--rule);border-radius:var(--r);background:var(--card);cursor:pointer;transition:border-color .12s,background .12s}.opt:hover{border-color:var(--rule-strong)}.opt input{accent-color:var(--sage);margin:.2rem 0 0;flex:none}.opt span{line-height:1.45}.opt-hint{display:block;margin-top:.2rem;font-size:.82rem;line-height:1.45;color:var(--ink-muted);max-width:var(--measure)}.opt:has(input:checked){border-color:var(--sage);background:var(--sage-tint)}.opt:has(input:focus-visible){outline:2px solid var(--sage);outline-offset:2px}.opt[data-tone=accept] input{accent-color:var(--accept)}.opt[data-tone=accept]:has(input:checked){border-color:var(--accept);background:var(--accept-bg)}.opt[data-tone=mixed] input{accent-color:var(--mixed)}.opt[data-tone=mixed]:has(input:checked){border-color:var(--mixed);background:var(--mixed-bg)}.opt[data-tone=reject] input{accent-color:var(--reject)}.opt[data-tone=reject]:has(input:checked){border-color:var(--reject);background:var(--reject-bg)}input[type=text],input[type=password],input[type=number],select{height:var(--control-h)}textarea,input[type=text],input[type=password],input[type=number],select{width:100%;padding:0 .75rem;border:1px solid var(--rule-strong);border-radius:var(--r);background:var(--card);color:var(--ink);transition:border-color .12s}textarea:focus,input:focus,select:focus{border-color:var(--sage)}textarea{resize:vertical;min-height:5.5rem;line-height:1.6;padding:.6rem .75rem;height:auto}textarea.code{font-family:var(--mono);font-size:.82rem;min-height:16rem}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;height:var(--control-h);padding:0 1rem;border:1px solid var(--rule-strong);border-radius:var(--r);background:var(--card);color:var(--ink);font-weight:700;cursor:pointer;text-decoration:none;white-space:nowrap;transition:background .12s,border-color .12s,opacity .12s}.btn:hover:not(:disabled){background:var(--sage-tint);border-color:var(--sage)}.btn:disabled{opacity:.45;cursor:not-allowed}.btn.primary{background:var(--sage);border-color:var(--sage);color:var(--sage-ink)}.btn.primary:hover:not(:disabled){background:var(--sage-deep);border-color:var(--sage-deep)}.btn.ghost{border-color:transparent;background:transparent;color:var(--ink-muted)}.btn.ghost:hover:not(:disabled){background:var(--sage-tint);border-color:transparent}.btn.sm{height:2.1rem;padding:0 .65rem;font-size:.85rem}.btn.danger{color:var(--reject);border-color:var(--reject)}.btn.danger:hover:not(:disabled){background:var(--reject-bg);border-color:var(--reject)}.actions{display:flex;gap:.6rem;flex-wrap:wrap;margin-top:1rem}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.confirm{width:100%;max-width:none;height:100%;max-height:none;margin:0;padding:1.5rem;border:0;background:transparent;display:grid;place-items:center;overscroll-behavior:contain}.confirm::backdrop{background:#00000073;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.confirm-body{width:min(30rem,100%);max-height:calc(100dvh - 3rem);overflow:auto;padding:1.5rem;border:1px solid var(--rule);border-radius:var(--r-lg);background:var(--card);color:var(--ink);box-shadow:0 16px 40px #00000038}.confirm-body h2{font-size:1.15rem}.confirm-text{margin-top:.6rem;color:var(--ink-muted);line-height:1.55;white-space:pre-line;overflow-wrap:anywhere}.confirm-actions{display:flex;justify-content:flex-end;gap:.6rem;margin-top:1.5rem;flex-wrap:wrap}@media(prefers-reduced-motion:no-preference){.confirm[open] .confirm-body{animation:dialogin .14s ease-out}@keyframes dialogin{0%{opacity:0;transform:translateY(6px) scale(.98)}}}.pill{display:inline-flex;align-items:center;gap:.35rem;font:700 .69rem/1 var(--sans);letter-spacing:.05em;text-transform:uppercase;padding:.28rem .55rem;border-radius:999px;border:1px solid var(--rule-strong);color:var(--ink-muted);background:var(--card)}.pill.on{color:var(--sage-deep);border-color:var(--sage);background:var(--sage-tint)}.pill.warn{color:var(--mixed-deep);border-color:var(--mixed);background:var(--mixed-bg)}.pill.bad{color:var(--reject);border-color:currentColor;background:var(--reject-bg)}.notice{display:flex;gap:.65rem;align-items:flex-start;padding:.75rem .9rem;border-radius:var(--r);border:1px solid var(--rule-strong);background:var(--paper);font-size:.92rem}.notice.bad{border-color:var(--reject);background:var(--reject-bg);color:var(--reject)}.notice.good{border-color:var(--accept);background:var(--accept-bg);color:var(--accept)}.rail{display:flex;gap:.3rem;align-items:center}.tick{width:1.65rem;height:.3rem;border-radius:999px;background:var(--sage-tint);border:0;padding:0;cursor:pointer;transition:background .15s,transform .15s}.tick:hover{transform:scaleY(1.6)}.tick.done{background:var(--sage)}.tick.here{background:var(--persimmon)}@media(max-width:52rem){.tick{width:.75rem}}.counter{font:500 .85rem/1 var(--mono);color:var(--ink-muted);white-space:nowrap}.savestate{font-size:.8rem;color:var(--ink-muted);display:inline-flex;align-items:center;gap:.4rem;min-width:6.5rem}.savestate .blip{width:.45rem;height:.45rem;border-radius:50%;background:var(--rule-strong)}.savestate.saving .blip{background:var(--mixed);animation:pulse 1s ease-in-out infinite}.savestate.saved .blip{background:var(--accept)}.savestate.error{color:var(--reject)}.savestate.error .blip{background:var(--reject)}@keyframes pulse{50%{opacity:.3}}.tablewrap{overflow-x:auto}table{width:100%;border-collapse:collapse;font-size:.9rem}th,td{text-align:left;padding:.6rem .8rem;border-bottom:1px solid var(--rule)}thead th{font:700 .69rem/1 var(--sans);letter-spacing:.07em;text-transform:uppercase;color:var(--ink-muted);background:var(--paper);position:sticky;top:0}tbody tr:last-child td{border-bottom:0}tbody tr.setbreak td{border-top:2px solid var(--rule-strong)}tbody tr:hover{background:var(--sage-tint)}td.num{font-family:var(--mono);font-size:.84rem}td.shape{font-family:var(--mono);font-size:.84rem;color:var(--ink-muted)}.copyrow{display:flex;gap:.5rem;align-items:center;min-width:0}.copylink{flex:1 1 auto;min-width:0;display:flex;font-family:var(--mono);font-size:.76rem;line-height:2.1rem;white-space:nowrap}.copylink .origin{min-width:0;overflow:hidden;text-overflow:ellipsis;color:var(--ink-muted)}.copylink .token{flex:none}.divider{height:1px;background:var(--rule);border:0;margin:0}.center{display:grid;place-items:center;min-height:60dvh}.spinner{width:1.5rem;height:1.5rem;border-radius:50%;border:2px solid var(--rule-strong);border-top-color:var(--sage);animation:spin .7s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.hyphead{display:flex;align-items:center;gap:.9rem}.hypnum{display:grid;place-items:center;width:2.75rem;height:2.75rem;flex:none;border-radius:var(--r);background:var(--sage-tint);border:1px solid var(--sage);color:var(--sage-deep);font:700 1.05rem/1 var(--mono)}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}.floatbar{position:fixed;top:1rem;right:1.25rem;z-index:30}.tabs{display:flex;gap:.25rem;flex-wrap:wrap;border-bottom:1px solid var(--rule);margin-bottom:-1rem}.tab{padding:.55rem .9rem;border:1px solid transparent;border-bottom:0;border-radius:var(--r) var(--r) 0 0;color:var(--ink-muted);font-weight:700;text-decoration:none;margin-bottom:-1px}.tab:hover{color:var(--ink);background:var(--sage-tint)}.tab.on{color:var(--ink);background:var(--card);border-color:var(--rule);border-bottom-color:var(--card)}.statrow{display:flex;gap:.75rem;flex-wrap:wrap}.stat{flex:1 1 8rem;min-width:0;padding:.85rem 1rem;border:1px solid var(--rule);border-radius:var(--r);background:var(--card);display:grid;gap:.15rem;text-decoration:none;color:inherit}.stat.linked:hover{border-color:var(--sage);background:var(--sage-tint)}.statval{font:700 1.5rem/1.1 var(--sans);letter-spacing:-.02em}.statof{font-size:1rem;font-weight:400;color:var(--ink-muted)}.statlabel{font-size:.78rem;color:var(--ink-muted)}table.grid th.stickycol{position:sticky;left:0;z-index:1;background:var(--card);text-align:left;min-width:10rem}.ratercell{display:table-cell}.ratername{display:block;font-weight:700}table.grid td.cell{padding:.35rem .4rem;text-align:center}.verdict{width:100%;min-width:5.5rem;padding:.35rem .5rem;border:1px solid var(--rule);border-radius:var(--r-sm);background:var(--paper);color:var(--ink-muted);font:700 .8rem/1.3 var(--sans);cursor:pointer;transition:border-color .12s,background .12s}.verdict:hover{border-color:var(--rule-strong)}.verdict.on{outline:2px solid var(--sage);outline-offset:1px}.verdict[data-tone=accept]{color:var(--accept);background:var(--accept-bg);border-color:var(--accept)}.verdict[data-tone=mixed]{color:var(--mixed-deep);background:var(--mixed-bg);border-color:var(--mixed)}.verdict[data-tone=reject]{color:var(--reject);background:var(--reject-bg);border-color:var(--reject)}tr.tallies td,tr.tallies th{border-top:2px solid var(--rule-strong);vertical-align:top}.tally{display:flex;flex-wrap:wrap;gap:.3rem;justify-content:center;font-size:.78rem}.tallybit{font-weight:700;color:var(--ink-muted);white-space:nowrap}.tallybit[data-tone=accept]{color:var(--accept)}.tallybit[data-tone=mixed]{color:var(--mixed-deep)}.tallybit[data-tone=reject]{color:var(--reject)}.tallylabel{font-weight:400}.detail{border-top:1px solid var(--rule);padding:1.25rem;background:var(--paper)}.detail h3{font-size:1rem}.detail .prose{max-width:var(--measure)}.answers{display:grid;gap:.5rem;margin:1rem 0 0}.answer{display:grid;grid-template-columns:minmax(0,12rem) minmax(0,1fr);gap:.75rem;padding-bottom:.5rem;border-bottom:1px solid var(--rule)}.answer:last-child{border-bottom:0;padding-bottom:0}.answer dt{font-weight:700;font-size:.85rem;color:var(--ink-muted)}.answer dd{margin:0;overflow-wrap:anywhere}.answer.blank dd{font-style:italic}@media(max-width:42rem){.answer{grid-template-columns:1fr;gap:.1rem}}
