@font-face{font-family:Patrick Hand;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/patrick-hand-latin-400-normal.woff2)format("woff2")}:root{--paper:var(--day-paper);--ink:var(--day-ink);--font:"Patrick Hand", ui-rounded, system-ui, sans-serif;--glass:var(--paper);--edge:2px solid var(--ink);--hand-radius:255px 14px 225px 14px / 14px 225px 14px 255px;--quick:.14s;--reveal:.22s;--hop:-.3rem;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}@supports (color:color-mix(in srgb, red, blue)){:root{--glass:color-mix(in srgb, var(--paper) 88%, transparent)}}:root[data-theme=night]{--paper:var(--night-paper);--ink:var(--night-ink);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}:root[data-motion=reduced]{--quick:0s;--reveal:0s;--hop:0rem}html,body{background:var(--paper,Canvas);height:100%;color:var(--ink,CanvasText);font:1.125rem/1.4 var(--font);letter-spacing:.04em;text-transform:uppercase;margin:0;overflow:hidden}#app{position:fixed;inset:0}.stage{touch-action:none;cursor:grab;width:100%;height:100%;display:block;position:absolute;inset:0}.stage:active{cursor:grabbing}.stage.over{cursor:pointer}.sr-only,#app[data-words=hidden] .titles,#app[data-words=hidden] .hint,#app[data-words=hidden] .btn-word,#app[data-words=hidden] .spot.door:not(:focus-visible) .spot-label{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}:focus-visible{outline:3px dashed var(--ink,CanvasText);outline-offset:3px}button{border:var(--edge);border-radius:var(--hand-radius);background:var(--glass);min-width:2.75rem;min-height:2.6rem;color:var(--ink);font:inherit;letter-spacing:inherit;text-transform:inherit;cursor:pointer;touch-action:manipulation;padding:.3rem .9rem;font-size:1rem}button[aria-pressed=true],button[aria-expanded=true]{background:var(--ink);color:var(--paper)}@media (hover:hover){button:hover{box-shadow:.15rem .2rem 0 var(--ink)}}.hud{z-index:2;padding:max(.75rem, env(safe-area-inset-top)) max(.75rem, env(safe-area-inset-right)) .5rem max(.75rem, env(safe-area-inset-left));pointer-events:none;justify-content:space-between;align-items:flex-start;gap:.75rem;display:flex;position:absolute;inset:0 0 auto}.titles{border:var(--edge);border-radius:var(--hand-radius);background:var(--glass);min-width:0;max-width:28rem;padding:.4rem .9rem .5rem}.titles h1{text-decoration:underline;-webkit-text-decoration-color:var(--accent,var(--ink));text-decoration-color:var(--accent,var(--ink));text-underline-offset:.18em;margin:0;font-size:clamp(1.35rem,4.5vw,1.9rem);font-weight:400;line-height:1.15;text-decoration-thickness:.14em}.titles h1:focus{outline:none}.titles h1:focus-visible{outline:3px dashed var(--ink)}.subtitle{margin:.15rem 0 0;font-size:1rem;line-height:1.25}.controls{pointer-events:auto;gap:.5rem;margin-inline-start:auto;display:flex}.controls button{justify-content:center;align-items:center;gap:.45rem;display:inline-flex}.btn-icon{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;flex:none;width:1.2rem;height:1.2rem}.hint{left:50%;bottom:max(1.25rem, env(safe-area-inset-bottom));z-index:2;box-sizing:border-box;border:var(--edge);border-radius:var(--hand-radius);background:var(--glass);text-align:center;pointer-events:none;width:max-content;max-width:calc(100% - 2rem);margin:0;padding:.35rem 1rem;position:absolute;transform:translate(-50%)}.hint[hidden],.hint:empty{display:none}.hotspots{z-index:1;pointer-events:none;position:absolute;inset:0}.spot{left:var(--x,0px);top:var(--y,0px);color:var(--ink);transition:opacity var(--quick) ease;pointer-events:auto;text-decoration:none;display:block;position:absolute;transform:translate(-50%,-100%)}.spot.off{opacity:0;pointer-events:none}.spot-label{border:var(--edge);border-radius:var(--hand-radius);background:var(--glass);white-space:nowrap;transition:transform var(--quick) ease, box-shadow var(--quick) ease;padding:.2rem .75rem;font-size:1.05rem;line-height:1.25;display:block}.spot.active .spot-label,.spot:focus-visible .spot-label{transform:translateY(var(--hop));box-shadow:.15rem .2rem 0 var(--ink)}@media (hover:hover){.spot.door:hover .spot-label{transform:translateY(var(--hop));box-shadow:.15rem .2rem 0 var(--ink)}}.spot.tool{opacity:0;pointer-events:none}.spot.tool.active:not(.off),.spot.tool:focus-visible:not(.off){opacity:1}.spot.exit{left:max(.75rem, env(safe-area-inset-left));top:auto;bottom:max(1.25rem, env(safe-area-inset-bottom));transform:none}#app[data-words=hidden] .spot.door:not(:focus-visible){transform:translate(-50%)}#app[data-words=hidden] .spot.door:before{content:"";width:3rem;height:3rem;display:block}#app[data-words=hidden] .spot.door:after{content:"";border:var(--edge);background:var(--glass);transition:transform var(--quick) ease, box-shadow var(--quick) ease;border-radius:50%;position:absolute;inset:.75rem}#app[data-words=hidden] .spot.door.active:after{transform:translateY(var(--hop));box-shadow:.15rem .2rem 0 var(--ink)}#app[data-words=hidden] .spot.door:focus-visible:before,#app[data-words=hidden] .spot.door:focus-visible:after{display:none}.places{top:calc(max(.75rem, env(safe-area-inset-top)) + 3.6rem);right:max(.75rem, env(safe-area-inset-right));z-index:4;box-sizing:border-box;border:var(--edge);border-radius:var(--hand-radius);background:var(--paper);width:min(23rem,100% - 1.5rem);max-height:calc(100% - 6rem);box-shadow:.2rem .25rem 0 var(--ink);padding:.6rem 1rem 1rem;position:absolute;overflow-y:auto}.places[hidden]{display:none}.places-list,.tool-list{margin:0;padding:0;list-style:none}.tool-list{flex-wrap:wrap;gap:0 1rem;padding-left:1rem;display:flex}.place-link,.tool-link{min-height:2.25rem;color:var(--ink);align-items:center;text-decoration:none;display:inline-flex}.place-link{font-size:1.2rem}.tool-link{font-size:1rem}.places a[aria-current=page]{text-underline-offset:.2em;-webkit-text-decoration:underline wavy;text-decoration:underline wavy;text-decoration-thickness:2px}@media (hover:hover){.places a:hover{text-decoration:underline}}.reduce-motion{width:100%;margin-top:.6rem}.ink-border{z-index:1;fill:none;width:100%;height:100%;stroke:var(--ink);stroke-width:2.4px;stroke-linecap:round;stroke-linejoin:round;pointer-events:none;position:absolute;inset:0;overflow:visible}.card{box-sizing:border-box;background:var(--paper);width:min(36rem,100% - 1.5rem);max-width:none;max-height:none;color:var(--ink);box-shadow:.2rem .25rem 0 var(--ink);border:0;margin:auto;padding:0;overflow:visible}.card[open]{animation:card-reveal var(--reveal) ease-out}.card::backdrop{background:var(--paper,Canvas);opacity:.6}@keyframes card-reveal{0%{opacity:0;transform:translateY(.6rem)}}.card-body{--pad-x:1.5rem;--pad-bottom:1.3rem;box-sizing:border-box;max-height:calc(100dvh - 3rem);padding:1.1rem var(--pad-x) var(--pad-bottom);overflow-y:auto}.card-kicker{margin:0;font-size:.95rem}.card-title{text-decoration:underline;-webkit-text-decoration-color:var(--accent,var(--ink));text-decoration-color:var(--accent,var(--ink));text-underline-offset:.18em;margin:.1rem 0 .6rem;font-size:clamp(1.4rem,5vw,1.9rem);font-weight:400;line-height:1.15;text-decoration-thickness:.14em}.card-title:focus{outline:none}.card-text,.card-deeper{margin:0 0 .7rem}.card-dave{border-left:3px solid var(--ink);margin:0 0 .7rem;padding-left:.9rem}.card-tool{border-block:2px dashed var(--ink);margin:.9rem 0;padding:.8rem 0}.curve{gap:.7rem;display:grid}.curve-field{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.curve-input{box-sizing:border-box;border:var(--edge);border-radius:var(--hand-radius);background:var(--paper);width:7.5rem;min-height:2.6rem;color:var(--ink);font:inherit;padding:.2rem .6rem}.curve-slider{width:100%;accent-color:var(--ink);margin:0}.curve-figure{margin:0;font-size:2.2rem;line-height:1.1}.curve-readout,.curve-formula,.curve-note{margin:0}.curve-note{font-size:.95rem}.curve-diagram{fill:none;width:100%;max-width:22rem;height:auto;stroke:var(--ink);stroke-width:1.6px;stroke-linecap:round;justify-self:center}.curve-diagram text{fill:var(--ink);stroke:none;font:11px var(--font)}.curve-sight{stroke-dasharray:5 4}.curve-gap{stroke:var(--accent,var(--ink));stroke-width:3.2px}.curve-eye{fill:var(--paper)}.card-failure{border:var(--edge);border-radius:var(--hand-radius);margin:.7rem 0;padding:.4rem .8rem}.card-actions{bottom:calc(-1 * var(--pad-bottom));margin:.4rem calc(-1 * var(--pad-x)) calc(-1 * var(--pad-bottom));padding:.5rem var(--pad-x) var(--pad-bottom);background:var(--paper);flex-wrap:wrap;gap:.6rem;display:flex;position:sticky}.veil{z-index:5;background:var(--paper);opacity:0;pointer-events:none;transition:opacity var(--veil-ms,.14s) ease;position:absolute;inset:0}.veil.covered{opacity:1;pointer-events:auto}.notice{z-index:6;box-sizing:border-box;border:2px solid var(--ink,CanvasText);background:var(--paper,Canvas);width:max-content;max-width:min(32rem,90vw);color:var(--ink,CanvasText);font:inherit;padding:1rem 1.25rem;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.notice[hidden]{display:none}@media (width<=48rem){.hint{bottom:calc(max(1.25rem, env(safe-area-inset-bottom)) + 3.25rem)}}@media (width<=30rem){.hud{gap:.5rem}.controls{flex-direction:column;gap:.4rem}button{min-height:2.5rem;padding-inline:.7rem}.titles{padding:.35rem .7rem .45rem}.subtitle{font-size:.95rem}.places{top:auto;right:max(.5rem, env(safe-area-inset-right));bottom:max(.5rem, env(safe-area-inset-bottom));left:max(.5rem, env(safe-area-inset-left));width:auto;max-height:78%}}
