:root{--ink:#1a1c26;--paper:#f2efe6;--gold:#f4b728;--night:#0f0d10;--px:2px}*{box-sizing:border-box}html,body{background:var(--night);color:var(--paper);margin:0;font:16px/1.5 Inter,system-ui,sans-serif}body{overflow-x:hidden}canvas{width:100vw;height:100vh;display:block;position:fixed;inset:0}#px{image-rendering:pixelated;pointer-events:none}body:not(.ready) canvas{opacity:0}canvas{transition:opacity .6s steps(6,end)}main{position:relative}#surface{height:500vh}.chapter{height:700vh}.chapter.long{height:1100vh}#hero{text-align:center;width:min(720px,100vw - 32px);color:var(--ink);pointer-events:none;text-shadow:0 1px #ffffff73;position:fixed;top:clamp(16px,6vh,64px);left:50%;translate:-50%}.eyebrow{letter-spacing:.14em;text-transform:uppercase;opacity:.75;margin:0 0 10px;font:600 13px/1 Pixelify Sans,monospace}#hero h1{letter-spacing:-.01em;margin:0;font:700 clamp(30px,4.6vw,60px)/1.02 Pixelify Sans,monospace}#hero .sub{opacity:.8;max-width:46ch;margin:14px auto 0;font-size:clamp(15px,1.3vw,18px)}#hint{padding:calc(var(--px) * 3) calc(var(--px) * 5);background:var(--ink);color:var(--paper);box-shadow:0 0 0 var(--px) var(--gold);opacity:0;pointer-events:none;font:600 15px/1 Pixelify Sans,monospace;transition:opacity .3s steps(3,end);position:fixed;bottom:18px;left:50%;translate:-50%}#hint.show{opacity:1}#hint span{animation:1s steps(2,end) infinite bob;display:inline-block}@keyframes bob{50%{transform:translateY(3px)}}#bubble{z-index:2;max-width:min(320px,100vw - 32px);padding:calc(var(--px) * 3) calc(var(--px) * 4);background:var(--paper);color:var(--ink);box-shadow:0 calc(var(--px) * -1) 0 0 var(--ink), 0 var(--px) 0 0 var(--ink), calc(var(--px) * -1) 0 0 0 var(--ink), var(--px) 0 0 0 var(--ink), 0 calc(var(--px) * 2) 0 0 #00000059;pointer-events:none;white-space:pre-wrap;opacity:0;transform-origin:var(--tail-x,50%) 100%;font:600 18px/1.25 Pixelify Sans,monospace;transition:opacity .12s steps(2,end),scale .12s steps(2,end);position:fixed;top:0;left:0;scale:.6}#bubble.show{opacity:1;scale:1}#bubble:after{content:"";top:100%;left:var(--tail-x,50%);width:calc(var(--px) * 4);height:calc(var(--px) * 4);margin-left:calc(var(--px) * -2);background:var(--paper);clip-path:polygon(0 0,100% 0,100% 25%,75% 25%,75% 50%,50% 50%,50% 75%,25% 75%,25% 100%,0 100%);filter:drop-shadow(var(--px) 0 0 var(--ink)) drop-shadow(calc(var(--px) * -1) 0 0 var(--ink)) drop-shadow(0 var(--px) 0 var(--ink));position:absolute}#fog,#flash{pointer-events:none;opacity:0;position:fixed;inset:0}#fog{z-index:1;background:radial-gradient(at 50% 60%,#9fb8b6,#5d7476 70%,#3c4c50)}#flash{z-index:1;background:radial-gradient(circle at 50% 55%,#fffbe8,#ffe08a 45%,#f4b72899)}#ending{z-index:4;width:min(380px,100vw - 32px);padding:calc(var(--px) * 8) calc(var(--px) * 9);color:var(--paper);box-shadow:0 calc(var(--px) * -2) 0 0 var(--gold), 0 calc(var(--px) * 2) 0 0 var(--gold), calc(var(--px) * -2) 0 0 0 var(--gold), calc(var(--px) * 2) 0 0 0 var(--gold), 0 calc(var(--px) * 6) 0 0 #00000073;opacity:0;pointer-events:none;background:#15120feb;transition:opacity .4s steps(5,end),translate .4s steps(5,end);position:fixed;top:50%;left:clamp(16px,5vw,80px);translate:0 -46%}#ending.show{opacity:1;pointer-events:auto;translate:0 -50%}#ending .eyebrow{color:var(--gold);opacity:1}#ending h2{color:var(--gold);margin:0 0 10px;font:700 clamp(30px,3.4vw,42px)/1 Pixelify Sans,monospace}#ending p{margin:0 0 8px}#ending ul{gap:3px;margin:0 0 12px;padding-left:20px;display:grid}#ending .you{color:#fff;font-weight:500}#ending .acts{gap:10px;margin-top:14px;display:flex}#ending .acts a,#ending .acts button{cursor:pointer;border:0;padding:11px 16px;font:700 16px/1 Pixelify Sans,monospace;text-decoration:none}#ending .share{background:var(--gold);color:#2b1b10;box-shadow:0 4px #a3740c}#ending .again{color:var(--paper);background:0 0;box-shadow:inset 0 0 0 2px #f2efe666}@media (width<=640px){#ending{top:auto;bottom:16px;left:16px;translate:0 10px}#ending.show{translate:0}#ending ul,#ending p:not(.eyebrow):not(.you){display:none}}.quest{--wood:#3a2414;--paper-q:#ecdcb4;--ink-q:#2b1b10;z-index:5;opacity:0;pointer-events:none;background:#0806068c;place-items:center;padding:16px;transition:opacity .25s steps(4,end);display:grid;position:fixed;inset:0}.quest.show{opacity:1;pointer-events:auto}.parchment{width:min(600px,100%);max-height:calc(100vh - 32px);padding:calc(var(--px) * 10) calc(var(--px) * 11);background:radial-gradient(ellipse at 30% 20%, #fffae68c, transparent 60%), radial-gradient(ellipse at 80% 90%, #966e3c2e, transparent 55%), var(--paper-q);color:var(--ink-q);box-shadow:0 calc(var(--px) * -2) 0 0 var(--wood), 0 calc(var(--px) * 2) 0 0 var(--wood), calc(var(--px) * -2) 0 0 0 var(--wood), calc(var(--px) * 2) 0 0 0 var(--wood), 0 calc(var(--px) * 6) 0 0 #0006;transition:translate .25s steps(4,end);overflow:auto;translate:0 12px}.quest.show .parchment{translate:0}.parchment .eyebrow{color:#8a5a20;opacity:1}.parchment h2{margin:0 0 8px;font:700 clamp(24px,3vw,32px)/1.1 Pixelify Sans,monospace}.parchment .intro{margin:0 0 16px}.steps{counter-reset:step;gap:14px;margin:0;padding:0;list-style:none;display:grid}.steps li{counter-increment:step;padding-left:38px;position:relative}.steps li:before{content:counter(step);background:var(--wood);width:26px;height:26px;color:var(--gold);place-items:center;font:700 15px/1 Pixelify Sans,monospace;display:grid;position:absolute;top:-1px;left:0}.steps b{margin-bottom:4px;display:block}.steps code{background:#3a24141f;padding:1px 5px;font:600 14px/1 ui-monospace,monospace}.wallets{grid-template-columns:repeat(3,1fr);gap:8px;margin-top:6px;display:grid}.wallets a{background:var(--wood);color:var(--paper-q);box-shadow:0 0 0 2px var(--wood);gap:2px;padding:10px 12px;text-decoration:none;display:grid}.wallets a:hover,.wallets a:focus-visible{box-shadow:0 0 0 2px var(--gold);outline:none}.wallets span{color:var(--gold);font:700 17px/1.1 Pixelify Sans,monospace}.wallets small{opacity:.8;font-size:12px}.check{gap:8px;margin-top:6px;display:flex}.check input{min-width:0;color:var(--ink-q);box-shadow:inset 0 0 0 2px var(--wood);background:#f8efd8;border:0;flex:1;padding:10px 12px;font:14px/1.2 ui-monospace,monospace}.check input:focus{box-shadow:inset 0 0 0 2px var(--wood), 0 0 0 2px var(--gold);outline:none}.check button{cursor:pointer;background:var(--gold);color:var(--ink-q);border:0;padding:10px 16px;font:700 16px/1 Pixelify Sans,monospace;box-shadow:0 4px #a3740c}.check button:active{translate:0 2px;box-shadow:0 2px #a3740c}.ways div{background:var(--wood);color:var(--paper-q);gap:4px;padding:10px 12px;display:grid}.choices,.confirm{gap:6px;margin-top:6px;display:grid}.confirm{grid-template-columns:1fr 1fr}.choices button,.confirm button{cursor:pointer;text-align:left;color:var(--ink-q);box-shadow:inset 0 0 0 2px var(--wood);background:#f8efd8;border:0;padding:10px 12px;font:500 14px/1.3 Inter,system-ui,sans-serif}.choices button:hover,.confirm button:hover:not(:disabled){box-shadow:inset 0 0 0 2px var(--wood), 0 0 0 2px var(--gold)}.choices button.picked{background:var(--wood);color:var(--paper-q)}.confirm button{text-align:center;background:var(--gold);font:700 16px/1 Pixelify Sans,monospace;box-shadow:0 4px #a3740c}.confirm button.ghost{box-shadow:inset 0 0 0 2px var(--wood);background:#f8efd8}.confirm button:disabled{opacity:.4;cursor:not-allowed}.note{opacity:.85;margin:0 0 4px;font-size:14px}.result{min-height:1.5em;margin:8px 0 0;font-size:14px}.result.good{color:#2f6b2a;font-weight:600}.result.bad{color:#9a2a1a}.parchment footer{border-top:2px dashed #3a241459;justify-content:space-between;align-items:center;gap:12px;margin-top:18px;padding-top:12px;font-size:13px;display:flex}@media (width<=560px){.wallets{grid-template-columns:1fr}.parchment footer{flex-direction:column;align-items:flex-start}}@media (prefers-reduced-motion:reduce){#hint span{animation:none}}.parchment:not(.lesson-on)>.lesson,.lesson-on .rewatch,.parchment.lesson-on>:not(.eyebrow):not(h2):not(.lesson):not(footer){display:none}.lesson .by{align-items:center;gap:10px;margin:0 0 10px;font-weight:500;display:flex}.rabbit-icon{width:36px;height:35px;image-rendering:pixelated;background:url(../actors/rabbit_b.png) 0 0/144px 35px no-repeat;flex:none}.lesson .screen{box-shadow:0 0 0 calc(var(--px) * 2) var(--wood), 0 0 0 calc(var(--px) * 3) var(--gold);background:#0d0b09;line-height:0}.lesson video{aspect-ratio:16/9;background:#0d0b09;width:100%}.lesson-acts{justify-content:flex-end;margin-top:14px;display:flex}.lesson-acts button{cursor:pointer;background:var(--gold);color:var(--ink-q);border:0;padding:11px 18px;font:700 16px/1 Pixelify Sans,monospace;box-shadow:0 4px #a3740c}.lesson-acts button.ghost{box-shadow:inset 0 0 0 2px var(--wood);background:#f8efd8}.quest .rewatch{cursor:pointer;color:#8a5a20;background:0 0;border:0;margin-left:auto;font:600 13px/1 Pixelify Sans,monospace}.quest .rewatch:hover{color:var(--ink-q)}.lesson .soon{aspect-ratio:16/9;color:#f2ead8;text-align:center;background:radial-gradient(at 50% 45%,#2a2216,#0d0b09 70%);place-content:center;justify-items:center;gap:8px;line-height:1.2;display:grid}.lesson .soon[hidden]{display:none}.lesson .soon b{color:var(--gold);font:700 22px/1 Pixelify Sans,monospace}.lesson .soon span{letter-spacing:.12em;text-transform:uppercase;opacity:.6;font:500 14px/1 Pixelify Sans,monospace}.rabbit-big{width:120px;height:116px;image-rendering:pixelated;background:url(../actors/rabbit_b.png) 0 0/480px 116px no-repeat;animation:2.4s step-end infinite fidget}@keyframes fidget{0%,70%{background-position:0 0}71%,85%{background-position:-360px 0}86%,to{background-position:0 0}}.qwrap{align-items:flex-start;gap:18px;max-width:100%;display:flex}.qwrap>.parchment{flex:0 600px}.qwrap>.parchment.wide{flex-basis:920px}.ferry-talk .qwrap{justify-content:center;align-items:flex-end;width:100%}.skip-side{--edge:#f4b728;cursor:pointer;text-align:left;width:196px;padding:calc(var(--px) * 6) calc(var(--px) * 6);color:#f2ead8;box-shadow:0 calc(var(--px) * -1) 0 0 #f4b7288c, 0 var(--px) 0 0 #f4b7288c, calc(var(--px) * -1) 0 0 0 #f4b7288c, var(--px) 0 0 0 #f4b7288c, 0 calc(var(--px) * 4) 0 0 #0006;background:#15120ff0;border:0;flex:none;grid-template-columns:auto 1fr;align-items:center;gap:6px 10px;transition:translate .12s steps(2,end),box-shadow .12s steps(2,end);display:grid}.skip-side .t{color:var(--edge);white-space:nowrap;font:700 17px/1.1 Pixelify Sans,monospace}.skip-side small{color:#c9bfa9;grid-column:1/-1;font:13px/1.35 Inter,sans-serif}.skip-side .ff{background:var(--edge);clip-path:polygon(0 0,50% 50%,50% 0,100% 50%,50% 100%,50% 50%,0 100%);width:22px;height:14px}.skip-side:hover,.skip-side:focus-visible{box-shadow:0 calc(var(--px) * -2) 0 0 var(--edge), 0 calc(var(--px) * 2) 0 0 var(--edge), calc(var(--px) * -2) 0 0 0 var(--edge), calc(var(--px) * 2) 0 0 0 var(--edge), 0 calc(var(--px) * 6) 0 0 #0006;outline:none;translate:0 -2px}.skip-side:hover .ff{animation:.5s steps(2,end) infinite ff}@keyframes ff{50%{translate:3px}}.skip-side:active{translate:0 1px}@media (width<=900px){.qwrap{flex-direction:column;align-items:stretch;width:min(600px,100%)}.ferry-talk .qwrap{align-items:stretch;width:min(880px,100%)}.qwrap>.parchment,.qwrap>.parchment.wide{flex:none;width:100%;max-height:calc(100vh - 120px)}.skip-side{grid-template-columns:auto auto 1fr;width:100%}.skip-side small{grid-column:auto}}@media (width>=901px) and (width<=1160px){.qwrap.wide{flex-direction:column;align-items:flex-end}.qwrap.wide>.parchment.wide{flex:none;width:min(920px,100vw - 32px);max-height:calc(100vh - 110px)}.qwrap.wide .skip-side{grid-template-columns:auto auto auto;width:auto}.qwrap.wide .skip-side small{grid-column:auto}}@media (width>=901px){.qwrap{position:relative}.qwrap>.skip-side{position:absolute;top:0;left:calc(100% + 18px)}.ferry-talk .qwrap{width:auto}.ferry-talk .qwrap>.box{flex:none;width:min(880px,100vw - 32px)}.ferry-talk .qwrap>.skip-side{top:auto;bottom:0}}@media (width>=901px) and (width<=1160px){.qwrap.wide>.skip-side{position:static}}@media (width>=901px) and (width<=1290px){.ferry-talk .qwrap{flex-direction:column;align-items:flex-end}.ferry-talk .qwrap>.skip-side{grid-template-columns:auto auto auto;width:auto;position:static}.ferry-talk .qwrap>.skip-side small{grid-column:auto}}.qwrap:has(>.parchment.lesson-on)>.skip-side{display:none}#ending{width:min(420px,100vw - 32px)}#ending .badge{box-shadow:0 0 0 var(--px) #f4b72899;margin:0 0 14px;line-height:0;position:relative}#ending .badge img{width:100%;height:auto;display:block}#ending .copy-card{cursor:pointer;color:#2b1b10;background:var(--gold);border:0;padding:8px 12px;font:700 14px/1 Pixelify Sans,monospace;position:absolute;bottom:8px;right:8px;box-shadow:0 3px #a3740c,0 4px 14px #00000073}#ending .copy-card:before{content:"⧉ "}#ending .copy-card:active{translate:0 2px;box-shadow:0 1px #a3740c}@media (width<=640px){#ending .badge{margin-bottom:10px}}.lesson-acts button:disabled{cursor:default;color:#8a6a3a;font-variant-numeric:tabular-nums;background:#e9dcbc;box-shadow:inset 0 0 0 2px #3a24144d}.lesson .screen{position:relative}.lesson .play{cursor:pointer;color:#2b1b10;background:var(--gold);width:max-content;height:max-content;box-shadow:0 5px 0 0 #a3740c, 0 0 0 calc(var(--px) * 2) #0d0b0999, 0 10px 30px #0000008c;border:0;grid-auto-flow:column;align-items:center;gap:12px;margin:auto;padding:14px 22px 14px 18px;font:700 22px/1 Pixelify Sans,monospace;animation:1.6s steps(4,end) infinite playpulse;display:grid;position:absolute;inset:0}.lesson .play[hidden]{display:none}.lesson .play i{clip-path:polygon(0 0,100% 50%,0 100%);background:#2b1b10;width:18px;height:20px}.lesson .play:hover{animation:none;translate:0 -2px}.lesson .play:active{translate:0 2px;box-shadow:0 2px #a3740c}@keyframes playpulse{50%{box-shadow:0 5px 0 0 #a3740c, 0 0 0 calc(var(--px) * 4) #f4b72859, 0 10px 30px #0000008c}}@media (prefers-reduced-motion:reduce){.lesson .play{animation:none}}.parchment.lesson-on>footer{display:none}.parchment.wide{width:min(920px,100%)}.parchment.hunting>.intro,.page[hidden],.end[hidden]{display:none}.quest .page{--slate:#12171a;--line:#78dcc824;--leak:#ff6b57;--ok:#5fdcae}.cap{letter-spacing:.14em;text-transform:uppercase;color:#8a5a20;margin:0 0 8px;font:600 12px/1 Pixelify Sans,monospace}.tabs{grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:10px;display:grid}.tabs button{cursor:pointer;text-align:left;color:var(--ink-q);box-shadow:inset 0 0 0 2px var(--wood);background:#f8efd8;border:0;grid-template-columns:auto 1fr;align-items:center;column-gap:8px;padding:10px 12px;display:grid}.tabs button i{background:var(--leak);grid-row:span 2;width:10px;height:10px}.tabs .tone-mid i{background:linear-gradient(90deg, var(--leak) 50%, var(--ok) 50%)}.tabs .tone-good i{background:var(--ok)}.tabs button span{font:700 16px/1.1 Pixelify Sans,monospace}.tabs button small{opacity:.7;font:12px/1.2 ui-monospace,monospace}.tabs button:hover{box-shadow:inset 0 0 0 2px var(--wood), 0 0 0 2px var(--gold)}.tabs button[aria-selected=true]{background:var(--wood);color:var(--paper-q);box-shadow:0 0 0 2px var(--gold)}.ledger{background:var(--slate);color:#cfd8d4;box-shadow:0 0 0 2px var(--wood);padding:14px 16px}.ledger .cap{color:#7f9a92}.ledger dl{grid-template-columns:auto 1fr;margin:0;font-size:14px;display:grid}.ledger dt,.ledger dd{border-bottom:1px dashed var(--line);padding:6px 0}.ledger dt{color:#8fa39d;padding-right:16px}.ledger dd{text-align:right;color:#eef3f0;overflow-wrap:anywhere;margin:0;font:13px/1.4 ui-monospace,monospace}.ledger dd small{color:#8fa39d;font:11px/1.3 Inter,sans-serif;display:block}.leak{color:var(--leak)}.lk{color:#8fa39d}.lk:before{content:"🔒 "}.learns{border:2px solid;margin-top:12px;padding:10px 14px}.learns ul{gap:3px;margin:0;padding-left:18px;font-size:14px;display:grid}.learns.tone-bad{background:#ff6b5714;border-color:#ff6b5780}.learns.tone-bad .cap{color:var(--leak)}.learns.tone-mid{background:#f4b72814;border-color:#f4b72880}.learns.tone-mid .cap{color:var(--gold)}.learns.tone-good{background:#5fdcae14;border-color:#5fdcae80}.learns.tone-good .cap{color:var(--ok)}.page .foot{opacity:.75;margin:10px 0 0;font-size:12.5px}.page .rule{background:#f4b72840;margin:10px 0 0;padding:10px 14px;font-size:14px;box-shadow:inset 0 0 0 2px #a3740c80}.page code{background:#3a24141f;padding:1px 5px;font:600 13px/1 ui-monospace,monospace}.next{justify-content:space-between;align-items:center;gap:12px;margin-top:14px;display:flex}.next .left{opacity:.7;font-size:13px}.go,.claim{cursor:pointer;background:var(--gold);color:var(--ink-q);border:0;padding:11px 18px;font:700 16px/1 Pixelify Sans,monospace;box-shadow:0 4px #a3740c}.go:active,.claim:active{translate:0 2px;box-shadow:0 2px #a3740c}.go:disabled{opacity:.4;cursor:not-allowed}.hunt .intro{margin:0 0 12px}.sea{--c:clamp(30px, 5.2vw, 44px);grid-template-columns:auto 1fr;align-items:start;gap:14px;display:grid}.radar{grid-template-columns:18px calc(var(--c) * 8);grid-template-rows:18px calc(var(--c) * 8);background:var(--slate);box-shadow:0 0 0 2px var(--wood);padding:10px 12px 12px 6px;display:grid}.radar .cols{grid-column:2;grid-template-columns:repeat(8,1fr);display:grid}.radar .rows{grid-row:2;grid-template-rows:repeat(8,1fr);display:grid}.radar .cols span,.radar .rows span{color:#5f7b73;place-items:center;font:600 11px/1 Pixelify Sans,monospace;display:grid}.radar .grid{background:radial-gradient(circle, transparent 0 24%, var(--line) 24.3% 24.8%, transparent 25% 49%, var(--line) 49.3% 49.8%, transparent 50% 69.5%, var(--line) 69.8% 70.3%, transparent 70.6%), #0c1214;grid-template-columns:repeat(8,1fr);display:grid;position:relative;overflow:hidden}.radar .grid:before{content:"";pointer-events:none;z-index:2;opacity:0;background:conic-gradient(from -70deg,#5fdcae00 0deg,#5fdcae33 69deg,#a0ffdc8c 70deg,#0000 70.5deg);position:absolute;inset:-50%}.radar .grid.on:before{opacity:1;animation:sweep var(--sweep) linear infinite}.radar .grid.over:before{opacity:0;transition:opacity .6s}@keyframes sweep{to{rotate:1turn}}.radar .grid button{aspect-ratio:1;cursor:crosshair;box-shadow:inset 0 0 0 .5px var(--line);background:0 0;border:0;padding:0;position:relative}.radar .grid button:hover:not(.shot){background:#5fdcae1f;box-shadow:inset 0 0 0 2px #5fdcae80}.radar .grid button:focus-visible{outline:2px solid var(--gold);outline-offset:-2px}.radar .grid.on .pinged:not(.shot):after{content:"";background:var(--leak);opacity:0;animation:blip var(--sweep) linear var(--d) infinite;border-radius:50%;position:absolute;inset:32%;box-shadow:0 0 10px 2px #ff6b57b3}@keyframes blip{0%{opacity:1;scale:1.3}40%{opacity:.15;scale:1}to{opacity:0}}.radar .grid .miss:after{content:"";background:#6f8c84;position:absolute;inset:42%}.radar .grid .hit{cursor:default;background:#ff6b5740}.radar .grid .hit:after{content:"";background:var(--leak);clip-path:polygon(0 15%,15% 0,50% 35%,85% 0,100% 15%,65% 50%,100% 85%,85% 100%,50% 65%,15% 100%,0 85%,35% 50%);position:absolute;inset:22%}.radar .grid .sunk{box-shadow:inset 0 0 0 2px var(--leak);background:#ff6b5780}.radar .grid .shot,.radar .grid.over button{cursor:default}.radar .grid .shield:after,.radar .grid .reveal:before{content:"";background:var(--gold);clip-path:polygon(50% 0,93% 25%,93% 75%,50% 100%,7% 75%,7% 25%);position:absolute;inset:14%}.radar .grid .shield:after{animation:.5s steps(4,end) deflect}.radar .grid .reveal:not(.shield):before{opacity:.45;inset:24%}.radar .grid .reveal{box-shadow:inset 0 0 0 2px #f4b728b3}@keyframes deflect{0%{opacity:.2;scale:1.6}60%{opacity:1;scale:.9}}.side{gap:10px;min-width:0;display:grid}.score{grid-template-columns:1fr 1fr;gap:8px;display:grid}.score>div{background:var(--slate);color:#cfd8d4;box-shadow:0 0 0 2px var(--wood);padding:8px 12px;font:600 14px/1 Pixelify Sans,monospace}.score b{font-size:26px}.score .n-sunk{color:var(--leak)}.score .n-bounced{color:var(--gold)}.score small{color:#8fa39d;margin-top:4px;font:11px/1.3 Inter,sans-serif;display:block}.log{height:calc(var(--c) * 8 - 46px);background:var(--slate);color:#cfd8d4;min-height:160px;box-shadow:0 0 0 2px var(--wood);margin:0;padding:8px 12px;font:12.5px/1.45 ui-monospace,monospace;list-style:none;overflow:auto}.log li{border-bottom:1px dashed var(--line);padding:5px 0;animation:.3s steps(3,end) logIn}.log b{color:#fff;margin-right:4px}.log .sys{color:#7f9a92}.log .hit b,.log .sunk b{color:var(--leak)}.log .shield,.log .shield b{color:#e8c766}@keyframes logIn{0%{opacity:0;translate:0 -4px}}.end{background:#5fdcae24;justify-content:space-between;align-items:center;gap:14px;margin-top:14px;padding:12px 14px;display:flex;box-shadow:inset 0 0 0 2px #2f6b2a80}.end p{margin:0;font-size:14px}.end .claim{flex:none}@media (width<=720px){.sea{grid-template-columns:1fr;justify-items:center}.side{width:100%}.tabs{grid-template-columns:1fr}.end{flex-direction:column;align-items:stretch}.log{height:180px}}@media (prefers-reduced-motion:reduce){.radar .grid.on:before{opacity:0;animation:none}.radar .grid.on .pinged:not(.shot):after{opacity:.8;animation:none}}.hunt .phase2{background:#f4b72838;margin:0 0 12px;padding:10px 14px;font-size:14px;animation:.3s steps(3,end) logIn;box-shadow:inset 0 0 0 2px #a3740c8c}.hunt .phase2[hidden]{display:none}.radar .grid.phase-shielded .reveal{cursor:crosshair;animation:1.2s steps(3,end) infinite target}.radar .grid.phase-shielded .reveal:hover{background:#f4b7282e}@keyframes target{50%{box-shadow:inset 0 0 0 2px var(--gold), 0 0 12px #f4b72880}}.radar .grid .ripple{animation:.6s steps(4,end) ripple}.radar .grid.phase-shielded .reveal.ripple{animation:.6s steps(4,end) ripple,1.2s steps(3,end) .6s infinite target}@keyframes ripple{0%{background:#fff0bed9}to{background:0 0}}.exam .dots{gap:6px;margin-bottom:12px;display:flex}.exam .dots i{width:14px;height:14px;box-shadow:inset 0 0 0 2px var(--wood);background:#3a241433}.exam .dots i.now{background:var(--gold)}.exam .dots i.ok{background:#3f8a52}.exam .dots i.no{background:#b0412e}.exam .qtext{margin:0 0 8px;font:700 20px/1.3 Pixelify Sans,monospace}.exam .choices button:disabled{cursor:default;opacity:.75}.exam .choices button.right{opacity:1;background:#d7ecc9;box-shadow:inset 0 0 0 2px #3f8a52}.exam .choices button.wrong{opacity:1;background:#f3d2c8;box-shadow:inset 0 0 0 2px #b0412e}.ferry-talk{z-index:5;opacity:0;pointer-events:none;justify-items:center;max-height:100vh;padding:0 16px 16px;transition:opacity .25s steps(4,end);display:grid;position:fixed;bottom:0;left:0;right:0;overflow:auto}.ferry-talk.show{opacity:1;pointer-events:auto}.ferry-talk .box{--edge:#f4b728;--bg:#15120f;width:min(880px,100%);padding:calc(var(--px) * 8) calc(var(--px) * 9) calc(var(--px) * 7);background:var(--bg);color:#f2ead8;box-shadow:0 calc(var(--px) * -2) 0 0 var(--edge), 0 calc(var(--px) * 2) 0 0 var(--edge), calc(var(--px) * -2) 0 0 0 var(--edge), calc(var(--px) * 2) 0 0 0 var(--edge), 0 calc(var(--px) * 6) 0 0 #00000073;flex:0 880px;grid-template-columns:auto 1fr;gap:18px;transition:translate .25s steps(4,end);display:grid;position:relative;translate:0 16px}.ferry-talk.show .box{translate:0}.ferry-talk .who{align-content:start;justify-items:center;gap:6px;display:grid}.ferry-talk .face{width:108px;height:108px;image-rendering:pixelated;box-shadow:0 0 0 var(--px) var(--edge);background:#233038 url(../actors/ferryman.png) -54px -12px/864px 327px no-repeat}.ferry-talk .who span{letter-spacing:.1em;text-transform:uppercase;color:var(--edge);font:600 13px/1 Pixelify Sans,monospace}.ferry-talk .talk{align-content:start;gap:12px;min-width:0;display:grid}.ferry-talk .line{min-height:3em;margin:0;font:500 19px/1.4 Pixelify Sans,monospace}.ferry-talk .answers{flex-wrap:wrap;gap:8px;display:flex}.ferry-talk .answers button{cursor:pointer;background:var(--edge);color:#2b1b10;border:0;padding:10px 14px;font:700 15px/1 Pixelify Sans,monospace;box-shadow:0 4px #a3740c}.ferry-talk .answers button:before{content:"▸ "}.ferry-talk .answers button:active{translate:0 2px;box-shadow:0 2px #a3740c}.ferry-talk .answers button.ghost{color:#f2ead8;background:0 0;box-shadow:inset 0 0 0 2px #f2ead866}.ferry-talk .card{background:#0d1214;grid-template-columns:auto 1fr;align-items:center;gap:6px 16px;padding:12px;display:grid;box-shadow:inset 0 0 0 2px #5fdcae40}.ferry-talk .card[hidden]{display:none}.ferry-talk .card>p,.ferry-talk .card>form{grid-column:1/-1;margin:0}.ferry-talk .qr{background:#fff;grid-row:span 2;width:152px;padding:6px;line-height:0}.ferry-talk .qr svg{width:100%;height:auto}.ferry-talk .card dl{grid-template-columns:auto 1fr;gap:6px 12px;min-width:0;margin:0;font-size:14px;display:grid}.ferry-talk .card dt{color:#8fa39d}.ferry-talk .card dd{align-items:center;gap:8px;min-width:0;margin:0;display:flex}.ferry-talk .card code{color:#eef3f0;overflow-wrap:anywhere;min-width:0;font:12.5px/1.35 ui-monospace,monospace}.ferry-talk .card .copy{cursor:pointer;color:#cfe;background:#2a3a3a;border:0;flex:none;padding:4px 8px;font:600 12px/1 Pixelify Sans,monospace;box-shadow:inset 0 0 0 1px #5fdcae66}.ferry-talk .card .how{color:#b9c6c1;grid-column:2;margin:0;font-size:13px}.ferry-talk .wait,.ferry-talk .offline{color:#b9c6c1;font-size:14px}.ferry-talk .wait:before{content:"◌ ";animation:1s steps(4,end) infinite spin;display:inline-block}@keyframes spin{to{rotate:1turn}}.ferry-talk .check{gap:8px;display:flex}.ferry-talk .check input{color:#eef3f0;background:#1d2426;border:0;flex:1;min-width:0;padding:10px 12px;font:14px/1.2 ui-monospace,monospace;box-shadow:inset 0 0 0 2px #5fdcae59}.ferry-talk .check button{cursor:pointer;background:var(--edge);color:#2b1b10;border:0;padding:10px 16px;font:700 16px/1 Pixelify Sans,monospace}.ferry-talk .result{margin:6px 0 0;font-size:14px}.ferry-talk .result.good{color:#5fdcae}.ferry-talk .result.bad{color:#ff8a78}@media (width<=640px){.ferry-talk .box{grid-template-columns:1fr;gap:10px}.ferry-talk .who{grid-auto-flow:column;justify-content:start;align-items:center}.ferry-talk .face{background-position:-27px -6px;background-size:432px 163.5px;width:54px;height:54px}.ferry-talk .line{font-size:17px}.ferry-talk .card{grid-template-columns:1fr}.ferry-talk .qr{grid-row:auto;justify-self:center}.ferry-talk .card .how{grid-column:1}}
