html{--paper: #fbfaf6;--dots: radial-gradient(circle, #d8d3c6 1px, transparent 1.2px);--ink: #2b2925;--muted: #5d594f;--soft: #9a9482;--faint: #cfc9b8;--dotline: #b8b2a2;--card: rgba(255, 255, 255, .65);--accent: #b3432b;--rule: rgba(179, 67, 43, .55);--font-body: "Courier Prime", monospace;--font-hand: "Caveat", cursive;--fsx: 1}html[data-mode=dark]{--paper: #1b1915;--dots: radial-gradient(circle, #37332b 1px, transparent 1.2px);--ink: #e6e1d3;--muted: #a49d8d;--soft: #7c766a;--faint: #453f34;--dotline: #4d463a;--card: rgba(255, 255, 255, .05);--accent: #e07a5f;--rule: rgba(224, 122, 95, .5)}html[data-mode=ice]{--paper: #eaf1f8;--dots: radial-gradient(circle, #c3d4e6 1px, transparent 1.2px);--ink: #1c2b3d;--muted: #47607a;--soft: #8399ad;--faint: #c3d3e3;--dotline: #a8bdd2;--card: rgba(255, 255, 255, .55);--accent: #2f6f9f;--rule: rgba(47, 111, 159, .5)}html[data-mode=ice-night]{--paper: #0b1420;--dots: radial-gradient(circle, #1c2c40 1px, transparent 1.2px);--aurora: radial-gradient(ellipse 120% 60% at 50% -8%, rgba(96, 208, 192, .16), transparent 60%), radial-gradient(ellipse 90% 50% at 78% 4%, rgba(122, 130, 224, .14), transparent 55%);--ink: #dbe7f2;--muted: #93a7bd;--soft: #6b809a;--faint: #26384f;--dotline: #2c405a;--card: rgba(120, 170, 210, .08);--accent: #6cc6d9;--rule: rgba(108, 198, 217, .45)}body{margin:0;min-height:100vh;background-color:var(--paper);background-image:var(--aurora, none),var(--dots);background-size:var(--dotsize, auto, 22px 22px);background-attachment:fixed;color:var(--ink);font-family:var(--font-body);position:relative}body,body *{transition:background-color .5s ease,color .5s ease,border-color .5s ease}html[data-mode=ice] .card,html[data-mode=ice] .theme-toggle,html[data-mode=ice-night] .card,html[data-mode=ice-night] .theme-toggle{backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px)}.page{max-width:820px;margin:0 auto;padding:0 24px}.ruled{position:relative}.rule{position:absolute;top:0;bottom:0;left:140px;width:2px;background:var(--rule)}.flow{padding:76px 8px 56px 176px;display:flex;flex-direction:column;gap:48px}.flow.centered{padding:76px 8px 56px}.flow.centered .note{position:static;width:auto;text-align:center}.flow.centered .colophon{text-align:center}.sec{position:relative;display:flex;flex-direction:column;gap:14px}.note{position:absolute;left:-176px;top:2px;width:128px;text-align:right;font-family:var(--font-hand);font-size:21px;color:var(--accent);transform:rotate(-2deg)}.note.r1{transform:rotate(-1deg)}.theme-toggle{position:fixed;top:18px;right:22px;z-index:40;font-family:var(--font-body);font-size:13px;color:var(--muted);background:var(--card);border:1px dashed var(--faint);border-radius:999px;padding:7px 14px;cursor:pointer}.freeze-overlay{position:fixed;inset:0;z-index:60;pointer-events:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='260' height='260'%3E%3Cfilter id='f'%3E%3CfeTurbulence type='fractalNoise' base%46requency='0.9' num%4Fctaves='2' seed='11'/%3E%3CfeColorMatrix values='0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0.5 0'/%3E%3C/filter%3E%3Crect width='260' height='260' filter='url(%23f)'/%3E%3C/svg%3E"),radial-gradient(circle at var(--ix, 50%) var(--iy, 50%),rgba(255,255,255,.95),rgba(206,228,245,.9) 45%,rgba(150,190,222,.82) 78%);background-size:260px 260px,100% 100%;clip-path:circle(0% at var(--ix, 50%) var(--iy, 50%));opacity:0}@keyframes freezeSpread{0%{clip-path:circle(0% at var(--ix, 50%) var(--iy, 50%));opacity:1}42%{clip-path:circle(160% at var(--ix, 50%) var(--iy, 50%));opacity:1}60%{clip-path:circle(160% at var(--ix, 50%) var(--iy, 50%));opacity:1}to{clip-path:circle(160% at var(--ix, 50%) var(--iy, 50%));opacity:0}}.freeze-overlay.spread{animation:freezeSpread 1.15s ease-in-out forwards}.freeze-canvas{position:fixed;inset:0;width:100%;height:100%;z-index:61;pointer-events:none;opacity:0;transition:opacity .28s ease}.freeze-canvas.on{opacity:1}.freeze-video{position:fixed;top:0;left:0;width:2px;height:2px;opacity:.01;pointer-events:none;z-index:-1}.wiz{opacity:0;transition:opacity .5s ease}html[data-mode=ice] .wiz,html[data-mode=ice-night] .wiz{opacity:1}.sec-title{margin:0;font-size:calc(15px * var(--fsx));font-weight:700;letter-spacing:2px;text-transform:uppercase;border-bottom:1px solid var(--ink);padding-bottom:8px;width:fit-content;font-family:var(--font-body)}.page-title{margin:0;font-size:calc(28px * var(--fsx));font-weight:700;font-family:var(--font-body)}.page-desc{margin:0;font-size:calc(13px * var(--fsx));line-height:1.8;color:var(--muted);max-width:480px}.back-link{font-size:calc(12.5px * var(--fsx));color:var(--soft);text-decoration:none}.hand-link{align-self:flex-end;font-family:var(--font-hand);font-size:19px;color:var(--accent);text-decoration:none}.kicker{font-size:calc(10.5px * var(--fsx));letter-spacing:1px;text-transform:uppercase;color:var(--accent)}.card-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.card{border:1px solid var(--faint);background:var(--card);padding:16px;display:flex;flex-direction:column;gap:8px;text-decoration:none;color:inherit}.card.dashed{border-style:dashed;background:none}.card .t{font-size:calc(14px * var(--fsx));font-weight:700;line-height:1.5}.card .d{font-size:calc(12px * var(--fsx));color:var(--muted);line-height:1.6}.card.wide{grid-column:span 2;align-items:center;justify-content:center}.card.wide .hand{font-family:var(--font-hand);font-size:19px;color:var(--soft)}.post-row{display:flex;justify-content:space-between;gap:16px;align-items:baseline;text-decoration:none;color:inherit;padding:16px 0;border-bottom:1px dotted var(--dotline)}.post-row .t{font-size:calc(14.5px * var(--fsx));font-weight:700;display:block}.post-row .d{font-size:calc(12px * var(--fsx));color:var(--muted);display:block;margin-top:4px;line-height:1.6}.post-row .date{font-size:calc(11px * var(--fsx));color:var(--soft);white-space:nowrap}.post-row.compact{padding:9px 0}.post-row.compact .t{font-size:calc(13.5px * var(--fsx));font-weight:400}.res-row{display:flex;gap:12px;align-items:baseline;text-decoration:none;color:inherit}.res-row .k{flex:none;width:70px;font-size:calc(10.5px * var(--fsx));letter-spacing:1px;text-transform:uppercase;color:var(--accent)}.res-row .t{font-size:calc(13.5px * var(--fsx));text-decoration:underline;text-decoration-style:dotted;text-underline-offset:4px}.btn{display:inline-flex;align-items:center;gap:8px;width:fit-content;font-family:var(--font-body);font-size:calc(13px * var(--fsx));font-weight:700;color:var(--paper);background:var(--accent);border:1px solid var(--accent);padding:10px 18px;text-decoration:none;cursor:pointer}.app-frame{display:block;flex:1;width:100%;border:0;background:#fff}.prose{font-size:calc(13.5px * var(--fsx));line-height:1.9}.prose>:first-child{margin-top:0}.prose h2{font-size:calc(15px * var(--fsx));font-weight:700;letter-spacing:2px;text-transform:uppercase;border-bottom:1px solid var(--ink);padding-bottom:8px;width:fit-content;margin:2.2em 0 .7em}.prose h3{font-size:calc(14px * var(--fsx));margin:1.8em 0 .5em}.prose p{margin:1em 0}.prose ul,.prose ol{margin:1em 0 1em 1.4em;padding:0}.prose li{margin:.35em 0}.prose a{color:var(--accent);text-decoration:underline;text-decoration-style:dotted;text-underline-offset:4px}.prose blockquote{border-left:2px solid var(--rule);padding-left:18px;margin:1.4em 0;color:var(--muted);font-family:var(--font-hand);font-size:calc(17px * var(--fsx))}.prose code{font-family:var(--font-body);font-size:.92em;background:var(--card);border:1px solid var(--faint);padding:1px 5px}.prose pre{background:var(--card);border:1px solid var(--faint);padding:16px 18px;overflow-x:auto;margin:1.4em 0}.prose pre code{background:none;border:none;padding:0}.prose img{max-width:100%}.post-meta{font-size:calc(11px * var(--fsx));color:var(--soft)}.social-row{display:flex;gap:16px;flex-wrap:wrap;font-size:calc(12.5px * var(--fsx))}.social-row a{color:var(--ink);text-decoration:underline;text-decoration-style:dotted;text-underline-offset:4px}.colophon{font-size:calc(11px * var(--fsx));color:var(--soft);border-top:1px dashed var(--dotline);padding-top:16px}.colophon a{color:var(--soft)}@media(max-width:700px){.rule{display:none}.flow{padding:64px 4px 40px 8px;gap:40px}.note{position:static;width:auto;text-align:left;margin-bottom:-4px}.card-grid{grid-template-columns:1fr}.card.wide{grid-column:auto}}
