:root{--ink:#1c1c1e;--ink-soft:#55555c;--paper:#fdfdfc;--accent:#8b1a1a;--accent-ink:#fff;--line:#e2e0dc;--line-strong:#c9c6c0;--draft-bg:#f3f0e8;--draft-ink:#6b5d1f;--published-bg:#e8f0e8;--published-ink:#1f5c2e;--stale-bg:#fdf3e7;--stale-line:#e0a75e;--error-bg:#fbeaea;--error-line:#d47b7b}*{box-sizing:border-box}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;-webkit-clip-path:inset(50%);clip-path:inset(50%);white-space:nowrap;border:0}body{margin:0;background:var(--paper);color:var(--ink);font-family:Iowan Old Style,Palatino Linotype,Palatino,Georgia,serif;line-height:1.6}.site-header{display:flex;align-items:baseline;gap:1.5rem;padding:.9rem 1.5rem;border-bottom:1px solid var(--line);font-family:system-ui,-apple-system,sans-serif}.site-header .site-title{font-weight:650;color:var(--ink);text-decoration:none}.site-header nav{display:flex;gap:1rem}.site-header nav a{color:var(--ink-soft);text-decoration:none;font-size:.95rem}.site-header nav a:hover{color:var(--ink)}main{max-width:46rem;margin:0 auto;padding:2rem 1.25rem 5rem}main.wide{max-width:62rem}h1{font-size:1.75rem;line-height:1.25}a{color:var(--accent)}.prose{font-size:1.075rem;line-height:1.75}.prose h1{font-size:1.9rem;line-height:1.2;margin:2.2rem 0 1rem}.prose h2{font-size:1.45rem;line-height:1.3;margin:2rem 0 .75rem}.prose h3{font-size:1.2rem;margin:1.6rem 0 .6rem}.prose p{margin:0 0 1rem}.prose ol,.prose ul{padding-left:1.6rem;margin:0 0 1rem}.prose li{margin-bottom:.35rem}.prose blockquote{margin:1.25rem 0;padding:.25rem 0 .25rem 1.1rem;border-left:3px solid var(--line-strong);color:var(--ink-soft)}.prose code{font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:.9em;background:#f1efec;padding:.1em .35em;border-radius:3px}.prose pre{background:#f1efec;padding:.9rem 1.1rem;border-radius:6px;overflow-x:auto}.prose pre code{background:none;padding:0}.prose hr{border:none;border-top:1px solid var(--line-strong);margin:2rem auto;width:40%}.reading h1:first-child{margin-top:0}.button,button{font:inherit;font-family:system-ui,-apple-system,sans-serif;font-size:.9rem;padding:.35rem .8rem;border:1px solid var(--line-strong);border-radius:5px;background:#fff;color:var(--ink);cursor:pointer;text-decoration:none;display:inline-block}.button:hover,button:hover{border-color:var(--ink-soft)}button:disabled{opacity:.55;cursor:default}.button-primary{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}.button-primary:hover{border-color:var(--accent);opacity:.92}input[type=text],textarea{font:inherit;width:100%;padding:.5rem .65rem;border:1px solid var(--line-strong);border-radius:5px;background:#fff}textarea{font-family:ui-monospace,SF Mono,Menlo,monospace;line-height:1.5}label,textarea{font-size:.9rem}label{font-family:system-ui,-apple-system,sans-serif;font-weight:600}.stack{display:flex;flex-direction:column;gap:.6rem;align-items:flex-start}.stack input,.stack textarea{align-self:stretch}.form-error{color:#a13030;font-family:system-ui,-apple-system,sans-serif;font-size:.9rem}.page-head{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap;margin-bottom:1rem}.page-head h1{margin:0}.page-head-actions{display:flex;align-items:center;gap:.75rem}table{width:100%;border-collapse:collapse;font-family:system-ui,-apple-system,sans-serif;font-size:.95rem}th{text-align:left;font-size:.8rem;text-transform:uppercase;letter-spacing:.04em;color:var(--ink-soft)}td,th{padding:.55rem .75rem .55rem 0;border-bottom:1px solid var(--line)}.badge{font-family:system-ui,-apple-system,sans-serif;font-size:.78rem;padding:.15rem .55rem;border-radius:99px}.badge-draft{background:var(--draft-bg);color:var(--draft-ink)}.badge-current,.badge-published{background:var(--published-bg);color:var(--published-ink)}.badge-current{margin-left:.5rem}.resolution-list{list-style:none;padding:0}.resolution-list li{padding:.6rem 0;font-size:1.1rem}.resolution-list li,.toolbar{border-bottom:1px solid var(--line)}.toolbar{position:-webkit-sticky;position:sticky;top:0;z-index:10;display:flex;align-items:center;gap:.3rem;flex-wrap:wrap;padding:.5rem 0;background:var(--paper)}.toolbar button.is-active{background:var(--ink);border-color:var(--ink);color:#fff}.toolbar-spacer{flex:1 1}.version-label{font-family:system-ui,-apple-system,sans-serif;font-size:.85rem;color:var(--ink-soft)}.editor-content .tiptap{min-height:24rem;padding:1rem .25rem;outline:none}.banner{font-family:system-ui,-apple-system,sans-serif;font-size:.95rem;border-radius:6px;padding:.9rem 1.1rem;margin-bottom:1rem}.banner p{margin:0 0 .6rem}.banner-stale{background:var(--stale-bg);border:1px solid var(--stale-line)}.banner-error{background:var(--error-bg);border:1px solid var(--error-line)}.banner-info{background:#eef1f4;border:1px solid var(--line-strong)}.banner-info>:last-child{margin-bottom:0}.title-form{flex:1 1 100%;min-width:0}.title-heading{margin:0}input.title-input{font:inherit;width:100%;padding:.2rem .4rem;margin-left:-.4rem;border:1px solid transparent;border-radius:5px;background:transparent}input.title-input:hover{border-color:var(--line)}input.title-input:focus{border-color:var(--line-strong);background:#fff}.position-field{display:flex;align-items:center;gap:.4rem}input.position-input{font-family:system-ui,-apple-system,sans-serif;font-size:.9rem;width:4.5rem;padding:.35rem .5rem;border:1px solid var(--line-strong);border-radius:5px;background:#fff}.banner-note{font-size:.85rem;color:var(--ink-soft);margin-top:.5rem}.banner-actions{display:flex;gap:.5rem;flex-wrap:wrap}main:has(.annotated){max-width:76rem}.annotated{display:grid;grid-template-columns:minmax(0,1fr) 21rem;grid-gap:2.5rem;gap:2.5rem;align-items:start}@media (max-width:64rem){.annotated{grid-template-columns:minmax(0,1fr)}}.comment-mark[data-color="0"]{--mark-tint:rgba(245,201,64,0.25);--mark-strong:#f7d978;--mark-line:#b8891f}.comment-mark[data-color="1"]{--mark-tint:rgba(245,165,168,0.25);--mark-strong:#f7bfc1;--mark-line:#b3626a}.comment-mark[data-color="2"]{--mark-tint:rgba(149,193,232,0.25);--mark-strong:#b4d3ee;--mark-line:#3d7ba3}.comment-mark[data-color="3"]{--mark-tint:rgba(165,201,160,0.25);--mark-strong:#bfd9bc;--mark-line:#4c7c44}.comment-mark[data-color="4"]{--mark-tint:rgba(185,181,232,0.25);--mark-strong:#cdcbee;--mark-line:#6a61a6}.comment-mark[data-color="5"]{--mark-tint:rgba(225,177,140,0.25);--mark-strong:#e9c8ae;--mark-line:#9c6a3c}.comment-mark{background-color:var(--mark-tint,rgba(245,201,64,.25));cursor:pointer;text-decoration:underline;-webkit-text-decoration-color:var(--mark-line,#b8891f);text-decoration-color:var(--mark-line,#b8891f);text-decoration-thickness:2px;text-underline-offset:3px}.comment-mark:where(:not(.comment-mark-hidden)) :where(.comment-mark:not(.comment-mark-hidden)){text-underline-offset:7px}.comment-mark:where(:not(.comment-mark-hidden)) :where(.comment-mark:not(.comment-mark-hidden)) :where(.comment-mark:not(.comment-mark-hidden)){text-underline-offset:11px}.comment-mark-active,.comment-mark-hover{background-color:var(--mark-strong,#f7d978);text-decoration-thickness:3px}:is(.comment-mark-hover,.comment-mark-active) :where(.comment-mark):not(.comment-mark-hover,.comment-mark-active){background-color:transparent}.comment-mark-hidden{background-color:transparent;text-decoration:none;cursor:text}.thread-panel{font-family:system-ui,-apple-system,sans-serif;font-size:.92rem;position:-webkit-sticky;position:sticky;top:1rem;max-height:calc(100vh - 2rem);overflow-y:auto;display:flex;flex-direction:column;gap:.75rem}.thread-panel-head{display:flex;align-items:baseline;justify-content:space-between;gap:.5rem}.thread-panel-head h2{margin:0;font-size:1.05rem}.thread-panel-toggle{font-weight:400;font-size:.85rem;color:var(--ink-soft);display:flex;align-items:center;gap:.35rem}.comment-cta{align-self:flex-start}.thread-card{border:1px solid var(--line);border-radius:8px;padding:.75rem .9rem;background:#fff;display:flex;flex-direction:column;gap:.6rem}.thread-card[data-color="0"]{--mark-tint:rgba(245,201,64,0.25);--mark-strong:#f7d978;--mark-line:#b8891f}.thread-card[data-color="1"]{--mark-tint:rgba(245,165,168,0.25);--mark-strong:#f7bfc1;--mark-line:#b3626a}.thread-card[data-color="2"]{--mark-tint:rgba(149,193,232,0.25);--mark-strong:#b4d3ee;--mark-line:#3d7ba3}.thread-card[data-color="3"]{--mark-tint:rgba(165,201,160,0.25);--mark-strong:#bfd9bc;--mark-line:#4c7c44}.thread-card[data-color="4"]{--mark-tint:rgba(185,181,232,0.25);--mark-strong:#cdcbee;--mark-line:#6a61a6}.thread-card[data-color="5"]{--mark-tint:rgba(225,177,140,0.25);--mark-strong:#e9c8ae;--mark-line:#9c6a3c}.thread-swatch{width:.85rem;height:.85rem;border-radius:3px;border:1px solid var(--mark-line,#b8891f);flex:none}.thread-card.is-hovered,.thread-swatch{background:var(--mark-tint,rgba(245,201,64,.25))}.thread-card.is-active,.thread-card.is-hovered{border-color:var(--mark-line,#b8891f)}.thread-card.is-active{box-shadow:0 0 0 1px var(--mark-line,#b8891f)}.thread-card.is-archived{opacity:.75}.thread-meta{display:flex;align-items:center;gap:.45rem;flex-wrap:wrap}.badge-archived{background:#ececec;color:var(--ink-soft)}.thread-tool{border:none;background:none;padding:0;font-size:.82rem;color:var(--accent);cursor:pointer}.thread-tool:hover{border:none;text-decoration:underline}.thread-excerpt{margin:0;padding:.15rem 0 .15rem .7rem;border-left:3px solid var(--mark-line,#b8891f);color:var(--ink-soft);font-style:italic;overflow:hidden;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical}.comment{border-top:1px solid var(--line);padding-top:.55rem;display:flex;flex-direction:column;gap:.25rem}.comment:first-of-type{border-top:none;padding-top:0}.comment-head{display:flex;align-items:baseline;gap:.5rem;flex-wrap:wrap}.comment-head .muted{font-size:.78rem}.comment-body{margin:0;white-space:pre-wrap;overflow-wrap:anywhere}.comment-tools{display:flex;gap:.7rem}.thread-reply{display:flex;flex-direction:column;gap:.4rem;align-items:flex-start}.thread-reply textarea{font-family:inherit;font-size:.9rem;align-self:stretch}.thread-card-actions{display:flex;gap:.5rem}.thread-compose textarea{font-family:inherit;font-size:.9rem}.site-header nav{align-items:baseline}.site-header nav button{font-size:.85rem;padding:.2rem .6rem}.muted{color:var(--ink-soft);font-size:.9rem}.admin-nav,.muted{font-family:system-ui,-apple-system,sans-serif}.admin-nav{display:flex;gap:1rem;padding-bottom:.6rem;margin-bottom:1.5rem;border-bottom:1px solid var(--line);font-size:.95rem}input[type=email],input[type=password]{font:inherit;width:100%;padding:.5rem .65rem;border:1px solid var(--line-strong);border-radius:5px;background:#fff}.stack label{display:flex;flex-direction:column;gap:.3rem;align-self:stretch}form.stack{max-width:24rem}