.btn{font-family:var(--font-display);letter-spacing:.06em;color:#3a2408;border:2px solid var(--ink-brown);cursor:pointer;white-space:nowrap;border-radius:7px;font-weight:700;line-height:1.1}.btn:active:not(:disabled){transform:translateY(1px)}.btn:disabled{opacity:.45;cursor:default}.btn-primary{background:var(--brass-grad);text-shadow:0 1px #fff6d2bf;padding:12px 38px 11px;font-size:21px;box-shadow:inset 0 1.5px #fffbe8e6,inset 0 -3px #5a340873,0 2px #2a1a0859}.btn-secondary{background:#f4ead4d1;padding:7px 16px 6px;font-size:15px;font-weight:600;box-shadow:inset 0 0 0 2px #f4ead4d1,inset 0 0 0 3px #a8832fb3}@media (hover:hover){.btn-primary:hover:not(:disabled){filter:brightness(1.07)saturate(1.05)}.btn-secondary:hover:not(:disabled){background:#f7dea0e6}}.btn-row{flex-wrap:wrap;justify-content:center;align-items:center;gap:12px;display:flex}@media (width<=480px){.btn-primary{padding:12px 26px 11px}}.knob{cursor:pointer;color:#f2d58a;-webkit-tap-highlight-color:transparent;background:0 0;border:0;place-items:center;width:38px;height:38px;padding:0;transition:transform 80ms;display:grid}.knob svg{display:block}.knob:hover .knob-glyph{color:#fff1c4}.knob:active{transform:translateY(1px)scale(.97)}.knob[aria-pressed=false] .knob-glyph{opacity:.55}.knob.lit{color:#ffb347}.knob.lit .knob-glyph{filter:drop-shadow(0 0 2px #ffaa3ce6);opacity:1}.corner{align-items:center;gap:4px;display:flex}.corner.vertical{flex-direction:column}.corner-sliders{display:flex;position:relative}.corner-pop{z-index:20;white-space:nowrap;color:var(--ink);font-family:var(--font-display);letter-spacing:.04em;border:2px solid var(--ink-brown);background:linear-gradient(#f8f0dd,#efe2c4);border-radius:8px;gap:12px;padding:14px 16px;font-size:14px;font-weight:700;display:grid;position:absolute;box-shadow:inset 0 0 0 3px #f8f0dde6,inset 0 0 0 4.5px #a8832fb3,0 4px 10px #2a1a084d}.corner-pop.below{top:calc(100% + 6px);right:0}.corner-pop.left{top:0;right:calc(100% + 6px)}.corner-row{cursor:pointer;justify-content:space-between;align-items:center;gap:16px;display:flex}.corner-volume{appearance:none;width:110px;height:18px;box-shadow:none;cursor:pointer;background:0 0;border:0;margin:0;padding:0}.corner-volume:focus{box-shadow:none;outline:none}.corner-volume:disabled{opacity:.5;cursor:default}.corner-volume::-webkit-slider-runnable-track{background:linear-gradient(to bottom, #fffbe8b3, #fffbe800 45%, #0003), linear-gradient(to right, #e7b13c var(--fill), #8a6a3a var(--fill));border:1.5px solid #4a2e08;border-radius:4px;height:7px}.corner-volume::-moz-range-track{background:linear-gradient(to bottom, #fffbe8b3, #fffbe800 45%, #0003), linear-gradient(to right, #e7b13c var(--fill), #8a6a3a var(--fill));border:1.5px solid #4a2e08;border-radius:4px;height:7px}.corner-volume::-webkit-slider-thumb{-webkit-appearance:none;background:radial-gradient(circle at 35% 32%,#fff6d2,#f5c44a 40%,#9a6414);border:1.5px solid #4a2e08;border-radius:50%;width:16px;height:16px;margin-top:-6px}.corner-volume::-moz-range-thumb{background:radial-gradient(circle at 35% 32%,#fff6d2,#f5c44a 40%,#9a6414);border:1.5px solid #4a2e08;border-radius:50%;width:14px;height:14px}.corner-switch{cursor:pointer;background:#8a6a3a;border:1.5px solid #4a2e08;border-radius:11px;width:42px;height:22px;padding:0;transition:background .15s;position:relative;box-shadow:inset 0 2px 3px #0000004d}.corner-switch.on{background:#e7b13c}.corner-switch>span{background:radial-gradient(circle at 35% 32%,#fff6d2,#f5c44a 40%,#9a6414);border:1.5px solid #4a2e08;border-radius:50%;width:17px;height:17px;transition:transform .15s;position:absolute;top:1px;left:1px}.corner-switch.on>span{transform:translate(20px)}.hud{z-index:5;pointer-events:none;flex-direction:column;align-items:flex-end;gap:4px;display:flex;position:fixed;top:8px;right:10px}.hud>*{pointer-events:auto}.hud svg{overflow:visible}.hud-corner{align-items:center;gap:4px;display:flex}.hud-fast{align-items:center;gap:2px;display:flex}.hud-count{color:#f2d58a;-webkit-text-stroke:3px #2a1a08;paint-order:stroke fill;font-size:14px;font-weight:700}.hud-instruments{margin-right:-4px;display:block}.touch-pad{left:50%;bottom:calc(env(safe-area-inset-bottom) + 6px);z-index:5;grid-template-rows:repeat(2,84px);grid-template-columns:repeat(3,108px);grid-template-areas:"left up right""left down right";display:none;position:fixed;transform:translate(-50%)}@media (pointer:coarse){.touch-pad{display:grid}}.touch-key{color:#f2d58a;touch-action:none;-webkit-touch-callout:none;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;background:0 0;border:0;padding:2.5px;display:block}.touch-face{box-sizing:border-box;background:linear-gradient(#5b544d,#37322e) content-box content-box,radial-gradient(120% 140% at 30% 20%,#fff6d2,#f5c44a 40%,#9a6414);border:1.5px solid #4a2e08;border-radius:12px;place-items:center;width:100%;height:100%;padding:5px;transition:transform 60ms;display:grid;box-shadow:inset 0 0 0 1px #2a1a08,0 3px 5px #1a100873}.touch-face svg{width:34px;height:34px;overflow:visible}.touch-glyph{fill:currentColor;stroke:#2a1a08;stroke-width:.5px;stroke-linejoin:round}.touch-key.held{color:#ffb347}.touch-key.held .touch-face{transform:translateY(2px)scale(.97);box-shadow:inset 0 0 0 1px #2a1a08,0 1px 2px #1a100873}.touch-key.held .touch-glyph{filter:drop-shadow(0 0 2px #ffaa3ce6)}.touch-key,.touch-key:hover,.touch-key:focus,.touch-key:active{box-shadow:none;background:0 0;outline:none;padding:2.5px}@media (height<=500px),(width<=600px){.hud{transform-origin:100% 0;transform:scale(.72)}.hud-instruments{display:none}}@media (pointer:coarse) and (width>=700px) and (height>=700px){.touch-pad{grid-template-rows:repeat(2,104px);grid-template-columns:repeat(3,136px)}.touch-face svg{width:42px;height:42px}}.perf{white-space:nowrap;z-index:6;color:#ffffffd9;pointer-events:none;background:#0000004d;border-radius:3px;padding:1px 5px;font:10px/1.3 ui-monospace,monospace;position:fixed;top:4px;left:50%;transform:translate(-50%)}.perf.hitch{color:#ffc65a}.corner-button.fight-go{left:auto;right:16px;bottom:calc(16px + env(safe-area-inset-bottom))}.leave{z-index:15;display:flex;position:fixed;top:10px;left:10px}.leave-shade{z-index:70;background:#2a1a0873;place-items:center;display:grid;position:fixed;inset:0}.leave-card{color:var(--ink);border:2px solid var(--ink-brown);text-align:center;background:linear-gradient(#f8f0dd,#efe2c4);border-radius:8px;padding:18px 22px 16px;box-shadow:inset 0 0 0 3px #f8f0dde6,inset 0 0 0 4.5px #a8832fb3,0 8px 24px #2a1a0859}.leave-card p{font-family:var(--font-display);margin:0 0 14px;font-size:20px;font-weight:700}.leave-card .btn-row{justify-content:center}.corner-fixed{z-index:15;position:fixed;top:10px;right:10px}.build{touch-action:none;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;position:fixed;inset:0;overflow:hidden}.build-table{width:100%;height:100%;display:block;position:absolute;inset:0}.build-table.holding{cursor:grabbing}.build-lift{pointer-events:none;z-index:4;width:100%;height:100%;position:absolute;inset:0}.build-bar{white-space:nowrap;align-items:center;gap:14px;display:flex;position:absolute}.build-turn-wrap{align-items:center;gap:8px;display:flex}.build-turn{color:#3a2408;background:var(--brass-grad);border:2px solid var(--ink-brown);cursor:pointer;border-radius:50%;width:60px;height:60px;padding:13px;display:flex;box-shadow:inset 0 1.5px #fffbe8e6,inset 0 -3px #5a340873,0 2px #2a1a0859}.build-turn svg{width:100%;height:100%}.build-turn:active{transform:translateY(1px)}@media (hover:hover){.build-turn:hover{filter:brightness(1.07)saturate(1.05)}}.build-turn-wrap .note{white-space:nowrap}.build-corner,.build-porthole{position:absolute}.porthole-back,.porthole-shine{width:100%;height:100%;position:absolute;inset:0}.porthole-shine{pointer-events:none}.porthole-glass{border-radius:50%;width:84%;height:84%;position:absolute;inset:8%}.porthole-button{width:var(--rim,52px);height:var(--rim,52px);color:var(--ink);background:var(--brass);border:2px solid var(--ink);box-shadow:inset 0 -3px 0 var(--brass-dark);cursor:pointer;border-radius:50%;justify-content:center;align-items:center;padding:0;display:flex;position:absolute;transform:translate(-50%,-50%)}.porthole-button:active{transform:translate(-50%,calc(1px - 50%))}@media (hover:hover){.porthole-button:hover{background:#e4c060}}.porthole-button{--out:calc(.7071 * (50% + .1 * var(--rim,52px)))}.porthole-button.turn-left{left:calc(50% - var(--out));top:calc(50% - var(--out))}.porthole-button.turn-right{left:calc(50% + var(--out));top:calc(50% - var(--out))}.porthole-button svg{width:56%;height:56%}.porthole-button.put-back{left:calc(50% - var(--out));top:calc(50% + var(--out));background:var(--panel-2);box-shadow:none}.build.compact .build-fly{padding:6px 16px;font-size:16px}.countdown{line-height:1;font-family:var(--font-display);color:var(--ink);flex-direction:column;align-items:center;font-weight:700;display:flex}.countdown-who{letter-spacing:.04em;font-size:13px}.countdown-secs{font-variant-numeric:tabular-nums;margin-top:2px;font-size:34px}.countdown.late .countdown-secs{color:#a3271a}.waiting .countdown{color:inherit;margin-left:18px}.countdown-held{letter-spacing:.04em;opacity:.75;white-space:normal;text-align:center;max-width:8.5em;margin-top:4px;font-size:13px}.build-leave{z-index:5;display:flex;position:absolute}.build-fly-corner{display:flex;position:absolute}.results-screen{background:linear-gradient(#74b1dc,#f4e2c2);flex-direction:column;justify-content:safe center;align-items:center;gap:32px;padding:56px 16px 40px;display:flex;position:fixed;inset:0;overflow-y:auto}.clouds{pointer-events:none;width:100%;height:100%;position:fixed;inset:0}.results-screen>:not(.clouds){position:relative}.results-title{font-family:var(--font-display);letter-spacing:.04em;text-align:center;color:var(--ink);text-shadow:0 1px #fff6d2e6,0 0 18px #fffaebd9;margin:0;font-size:clamp(32px,7vw,58px);font-weight:700}.entries{flex-wrap:wrap;justify-content:center;align-items:flex-end;gap:24px 20px;max-width:100%;display:flex}.entry{flex-direction:column;align-items:center;gap:10px;display:flex}.stacks{border-bottom:3px solid var(--brass-dark);justify-content:center;align-items:flex-end;gap:6px;min-width:100px;min-height:30px;padding:0 6px 4px;display:flex}.stack{align-items:flex-end;gap:4px;display:flex}.stack-col{flex-direction:column-reverse;gap:5px;display:flex}.token{justify-content:center;align-items:center;width:28px;height:26px;display:flex}.token-icon{width:28px;height:28px}.token.fresh .token-icon{filter:drop-shadow(0 0 4px #ffecaaf2)}.token.fresh{animation:.45s cubic-bezier(.3,1.6,.5,1) backwards token-pop}@keyframes token-pop{0%{opacity:0;transform:translateY(-40px)scale(.2)}to{opacity:1;transform:none}}.berth{justify-content:center;align-items:center;display:flex}.berth.afloat{animation:drift var(--drift,6s) ease-in-out infinite}@keyframes drift{0%,to{transform:translateY(-3px)}20%{transform:translate(2px,-1px)}45%{transform:translate(1px,3px)}70%{transform:translate(-2px,1px)}}@media (prefers-reduced-motion:reduce){.berth.afloat{animation:none}}.ship-still{display:block}.ship-still.wreck{filter:brightness(.55)saturate(.45)contrast(1.1);transform:rotate(-9deg)translateY(6px)}.entry-name{font-family:var(--font-display);letter-spacing:.02em;white-space:nowrap;text-shadow:0 0 8px #fffaebcc;align-items:center;gap:6px;font-size:17px;font-weight:600;display:flex}.entry.me .entry-name{font-weight:700}.entry-name .swatch{border:2px solid var(--ink);border-radius:50%;flex:none;width:16px;height:16px;display:inline-block}.results-screen:has(.chat-bar){gap:20px;padding:56px 16px 24px}.results-go{flex-flow:row-reverse wrap;justify-content:flex-start;width:min(560px,100%)}:root{--card:#f4ead4;--ink-soft:#2b21188c;--rule:#2b21182e}.landing,.table-screen{background:radial-gradient(ellipse at 50% 35%, #fff9e899, transparent 65%), radial-gradient(ellipse at 50% 50%, transparent 55%, #4a2e0833 100%), url(./backdrop-CY9wbZij.svg) center top / 360px 360px, var(--paper);background-attachment:local,fixed,local,local;position:fixed;inset:0;overflow-y:auto}button:disabled{opacity:.45;cursor:default}button:disabled:hover{background:var(--brass)}input{font:inherit;color:var(--ink);border:2px solid var(--ink-brown);background:#fbf5e6;border-radius:7px;outline:none;padding:9px 12px;font-size:18px;box-shadow:inset 0 2px 3px #4a2e082e}input::placeholder{color:#2b211873;font-style:italic}input:focus{box-shadow:inset 0 2px 3px #4a2e082e,0 0 0 3px #d8b049b3}.panel{--rivet:radial-gradient(circle, #fff2be 0, #f5c44a 1.4px, #9a6414 2.4px, #4a2e08cc 3px, transparent 3.6px);background:var(--rivet) left 6px top 6px / 8px 8px no-repeat, var(--rivet) right 6px top 6px / 8px 8px no-repeat, var(--rivet) left 6px bottom 6px / 8px 8px no-repeat, var(--rivet) right 6px bottom 6px / 8px 8px no-repeat, linear-gradient(#f8f0dd, #efe2c4);border:2px solid var(--ink-brown);border-radius:8px;padding:18px;box-shadow:inset 0 0 0 3px #f8f0dde6,inset 0 0 0 4.5px #a8832fb3,0 3px #2a1a0829}.landing{flex-direction:column;align-items:center;gap:28px;padding:12vh 16px 48px;display:flex}.logo-head{width:min(680px,100%);margin:0}.logo{filter:drop-shadow(0 6px 10px #4a2e082e);width:100%;height:auto;display:block}.landing-form{gap:10px;width:min(420px,100%);display:flex}.landing-form input{min-width:0;font-family:var(--font-display);letter-spacing:.02em;flex:1;font-weight:700}.landing-form input::placeholder{font-style:normal;font-weight:600}.landing-form input.want{border-color:var(--short);box-shadow:0 0 0 3px #c8503c40}.error-text{color:var(--oxblood);font-style:italic}.table-list{flex-direction:column;gap:8px;width:min(560px,100%);margin:0;padding:0;list-style:none;display:flex}.table-row{text-align:left;width:100%;color:var(--ink);border:2px solid var(--ink-brown);background:linear-gradient(#f8f0dd,#efe2c4);border-radius:7px;align-items:center;gap:12px;padding:11px 18px;font-size:17px;display:flex;box-shadow:inset 0 0 0 2px #f8f0dde6,inset 0 0 0 3px #a8832f99,0 2px #2a1a0829}.table-row:hover{background:linear-gradient(#fbefcc,#f2dca6)}.table-row:disabled:hover{background:linear-gradient(#f8f0dd,#efe2c4)}.table-players{font-family:var(--font-display);letter-spacing:.02em;flex-wrap:wrap;flex:1;gap:4px 16px;font-weight:700;display:flex}.table-players .bot{font-family:var(--font-body);letter-spacing:0;font-style:italic;font-weight:400}.table-phase{color:var(--ink-soft);font-style:italic}.table-screen{grid-template-columns:minmax(0,640px) 300px;place-content:start center;align-items:start;gap:16px 20px;padding:60px 16px 32px;display:grid}.table-main{display:contents}.table-main>*{grid-column:1}.table-main>.panel>.btn{margin-top:12px}.player-list{margin:0;padding:0;list-style:none}.player-list li{border-bottom:1px solid var(--rule);align-items:center;gap:12px;padding:7px 4px;font-size:18px;display:flex}.player-list li:last-child{border-bottom:none}.player-list li.disconnected{opacity:.45}.player-name{font-family:var(--font-display);letter-spacing:.02em;flex:1;align-items:center;gap:8px;font-weight:700;display:flex}.tag{font-family:var(--font-body);letter-spacing:0;color:var(--ink-soft);font-size:13px;font-style:italic;font-weight:400}.swatch{border:2px solid var(--ink-brown);border-radius:50%;flex:none;width:20px;height:20px;padding:0;display:inline-block;box-shadow:inset 0 -2px #0000002e,inset 0 2px #ffffff4d}.swatch-edit{cursor:pointer}.swatch-edit:hover{transform:scale(1.12)}.color-pick{display:inline-flex;position:relative}.swatch-pop{z-index:5;background:var(--card);border:2px solid var(--ink);border-radius:8px;gap:6px;padding:8px;display:flex;position:absolute;top:28px;left:-8px}.swatch-option{cursor:pointer;width:24px;height:24px}.swatch-option.on{box-shadow:0 0 0 2px var(--card), 0 0 0 4px var(--ink)}.swatch-option:disabled{opacity:.2;cursor:default}.name-edit{font:inherit;cursor:text;background:0 0;border:none;border-radius:0;padding:0}.name-edit:hover{background:0 0;-webkit-text-decoration:underline dotted;text-decoration:underline dotted}.name-input{font-family:var(--font-display);width:12em;padding:2px 6px;font-size:17px;font-weight:700}.icon-btn{color:var(--ink-soft);background:0 0;border:none;padding:0 6px;font-size:22px;line-height:1}.icon-btn:hover{color:var(--short);background:0 0}.ready-mark{color:var(--ok);padding:0 6px;font-size:20px;line-height:1}.button-row{justify-content:flex-end;align-items:center;gap:12px;display:flex;grid-column:1/-1!important}.ready-tip{display:inline-flex;position:relative}.ready-why{text-align:right;margin:-6px 0 0;grid-column:1/-1!important}.chat{flex-direction:column;padding:12px;display:flex}.table-screen>.chat{contain:size;grid-area:1/2/span 2;align-self:stretch}.chat-list{font-family:var(--font-display);letter-spacing:.01em;flex-direction:column;flex:1;gap:5px;font-size:15px;font-weight:600;display:flex;overflow-y:auto}.chat-name{font-family:var(--font-display);margin-right:8px;font-size:15px;font-weight:700}.chat-system{color:var(--ink-soft);font-size:14px}.chat-bar{width:min(560px,100%);height:130px;padding:8px 10px}.chat-bar .chat-list{gap:3px;font-size:14px}.chat-bar .chat-form input{margin-top:6px}.chat-form input{width:100%;font-family:var(--font-display);margin-top:8px;padding:6px 10px;font-size:15px;font-weight:600}@media (width<=760px){.table-screen{grid-template-columns:minmax(0,1fr)}.table-main{flex-direction:column;gap:16px;display:flex}.table-screen>.chat{grid-area:auto/1;height:300px}}.overlay{z-index:20;background:#2b211859;place-items:center;display:grid;position:fixed;inset:0}.overlay-box{text-align:center;min-width:260px}.overlay-box h2{font-family:var(--font-display);letter-spacing:.04em;margin:0 0 14px;font-weight:700}.hull-picker{flex-direction:column;gap:10px;display:flex}.hull-row{grid-template-columns:1fr 1fr;gap:10px;display:grid;container-type:inline-size}.hull-choice{--hull-sq:min(12px, (50cqw - 29px) / 16.5);background:0 0;border:2px solid #0000;border-radius:8px;flex-direction:column;align-items:center;gap:8px;padding:10px;display:flex}.hull-choice:hover{background:#d8b04940}.hull-choice.on{border-color:var(--ink);background:#d8b04959}.hull-choice svg{height:auto;margin:auto 0;display:block}.hull-name{font-family:var(--font-display);letter-spacing:.04em;color:var(--ink);font-size:17px;font-weight:700}.howto{width:min(980px,100%);margin-top:24px;padding:22px 24px 26px}.howto h2{font-family:var(--font-display);letter-spacing:.08em;align-items:center;gap:16px;margin:0 0 18px;font-size:24px;font-weight:700;display:flex}.howto h2:before,.howto h2:after{content:"";border-block:1.5px solid var(--brass-dark);flex:1;height:5px}.howto ol{grid-template-columns:repeat(auto-fit,minmax(min(100%,380px),1fr));gap:28px;margin:0;padding:0;list-style:none;display:grid}.howto ol>li{flex-direction:column;gap:16px;display:flex}.howto img{aspect-ratio:1200/750;border:2px solid var(--ink-brown);border-radius:8px;width:100%;height:auto;display:block;box-shadow:0 0 0 3px #efe2c4,0 0 0 4.5px #a8832fb3,0 4px 0 4px #2a1a081f}.howto p{text-align:center;line-height:1.9;font-family:var(--font-display);letter-spacing:.02em;margin:0;font-size:17px;font-weight:600}.arrow-keys{vertical-align:middle;width:auto;height:1.7em;margin:0 2px}.guide{z-index:60;pointer-events:none;position:fixed;inset:0}.guide.dim{pointer-events:auto}.guide-shade{position:absolute;inset:0}.guide-shade path{fill:#2a1a0880}.guide-ring{box-sizing:border-box;border:3px solid #e7b13c;border-radius:9px;animation:1.6s ease-in-out infinite guide-ring;position:absolute;box-shadow:0 0 0 1.5px #4a2e08,inset 0 0 0 1.5px #4a2e08,0 0 12px #ffd2788c}@keyframes guide-ring{50%{box-shadow:0 0 0 1.5px #4a2e08,inset 0 0 0 1.5px #4a2e08,0 0 20px #ffd278e6}}@media (prefers-reduced-motion:reduce){.guide-ring{animation:none}}.guide-card{--rivet:radial-gradient(circle, #fff2be 0, #f5c44a 1.4px, #9a6414 2.4px, #4a2e08cc 3px, transparent 3.6px);box-sizing:border-box;width:min(344px,100vw - 20px);color:var(--ink);background:var(--rivet) left 6px top 6px / 8px 8px no-repeat, var(--rivet) right 6px top 6px / 8px 8px no-repeat, var(--rivet) left 6px bottom 6px / 8px 8px no-repeat, var(--rivet) right 6px bottom 6px / 8px 8px no-repeat, linear-gradient(#f8f0dd, #efe2c4);border:2px solid var(--ink-brown);pointer-events:auto;border-radius:8px;padding:14px 16px 12px;position:absolute;box-shadow:inset 0 0 0 3px #f8f0dde6,inset 0 0 0 4.5px #a8832fb3,0 8px 24px #2a1a0859}.guide-text{font-family:var(--font-body);font-size:16px;line-height:1.4}.guide-text b{font-family:var(--font-display);letter-spacing:.02em;font-weight:700}.guide-buttons{justify-content:flex-end;align-items:center;gap:10px;margin-top:12px;display:flex}.guide-buttons .btn-primary{padding:7px 18px 6px;font-size:16px}.guide-buttons .btn-secondary{padding:6px 12px 5px;font-size:14px}.guide-count{font-family:var(--font-display);color:var(--ink-dim);font-variant-numeric:tabular-nums;white-space:nowrap;font-size:13px;font-weight:600}.guide-dismiss{font-family:var(--font-body);color:var(--ink-dim);cursor:pointer;white-space:nowrap;background:0 0;border:0;margin-right:auto;padding:0;font-size:14px;font-style:italic}.guide-dismiss:hover{color:var(--ink);background:0 0;text-decoration:underline}.guide-card:after{content:"";border-right:2px solid var(--ink-brown);border-bottom:2px solid var(--ink-brown);background:#f3e8cf;width:14px;height:14px;display:none;position:absolute}.guide-card.above:after,.guide-card.below:after,.guide-card.left:after,.guide-card.right:after{display:block}.guide-card.above:after{left:calc(var(--point) - 8px);bottom:-9px;transform:rotate(45deg)}.guide-card.below:after{left:calc(var(--point) - 8px);top:-9px;transform:rotate(225deg)}.guide-card.right:after{top:calc(var(--point) - 8px);left:-9px;transform:rotate(135deg)}.guide-card.left:after{top:calc(var(--point) - 8px);right:-9px;transform:rotate(-45deg)}.guide-text p{margin:0}.guide-text p+p{margin-top:8px}@font-face{font-family:Libre Caslon Text;font-style:normal;font-display:swap;font-weight:400;src:url(./libre-caslon-text-latin-400-normal-CfldDPV-.woff2)format("woff2"),url(./libre-caslon-text-latin-400-normal-WtjoQ5sB.woff)format("woff")}@font-face{font-family:Libre Caslon Text;font-style:italic;font-display:swap;font-weight:400;src:url(./libre-caslon-text-latin-400-italic-snTzlHlN.woff2)format("woff2"),url(./libre-caslon-text-latin-400-italic-C1OAqZ6C.woff)format("woff")}@font-face{font-family:Libre Caslon Text;font-style:normal;font-display:swap;font-weight:700;src:url(./libre-caslon-text-latin-700-normal-D1WVYPaO.woff2)format("woff2"),url(./libre-caslon-text-latin-700-normal-B3n-DWsl.woff)format("woff")}@font-face{font-family:Cinzel;font-style:normal;font-display:swap;font-weight:600;src:url(./cinzel-latin-600-normal-Dd5YO2UX.woff2)format("woff2"),url(./cinzel-latin-600-normal-CH_LB4su.woff)format("woff")}@font-face{font-family:Cinzel;font-style:normal;font-display:swap;font-weight:700;src:url(./cinzel-latin-700-normal-Dkw14w9r.woff2)format("woff2"),url(./cinzel-latin-700-normal-C-gK7hA8.woff)format("woff")}@font-face{font-family:Cinzel;font-style:normal;font-display:swap;font-weight:900;src:url(./cinzel-latin-900-normal-BI3z7Tow.woff2)format("woff2"),url(./cinzel-latin-900-normal-t_fSDEbn.woff)format("woff")}:root{--ink:#2b2118;--paper:#e9dcc0;--brass:#d8b049;--brass-dark:#a8832f;--short:#c8503c;--ok:#5a9a5a;--ink-dim:#7a6a55;--panel:#ddcda9;--panel-2:#f1e6cc;--line:#2b211859;--ink-brown:#4a2e08;--oxblood:#8e2b22;--brass-grad:linear-gradient(#fff2be, #f7cb4f 30%, #d49a26 70%, #8f5c10);--font-body:"Libre Caslon Text", Georgia, serif;--font-display:"Cinzel", "Libre Caslon Text", Georgia, serif}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{background:var(--paper);color:var(--ink);font-family:var(--font-body);overscroll-behavior:none;overflow:hidden}.screen{height:100dvh;position:fixed;inset:0}canvas.full{touch-action:none;width:100%;height:100%;display:block}.waiting{font-family:var(--font-display);letter-spacing:.04em;color:#325167;background:linear-gradient(#68aad9,#f4e2c2);justify-content:center;align-items:center;font-size:22px;font-weight:600;display:flex}button{font:inherit;color:var(--ink);background:var(--brass);border:2px solid var(--ink);cursor:pointer;border-radius:8px;padding:10px 22px;font-size:18px}button:hover{background:#e4c060}.corner-button{position:absolute;bottom:16px;left:16px}.note{color:var(--ink-dim);white-space:nowrap;font-size:13px;font-style:italic;line-height:1.2}[data-tip]:before,[data-tip]:after{z-index:10;pointer-events:none;opacity:0;transition:opacity .12s,transform .12s;position:absolute;left:50%;transform:translate(-50%,4px)}[data-tip]:after{content:attr(data-tip);font:italic 14px/1.2 var(--font-body);color:var(--ink);white-space:nowrap;background:var(--panel-2);border:1.5px solid var(--ink);box-shadow:0 2px 0 var(--line);border-radius:6px;padding:5px 10px;bottom:calc(100% + 9px)}[data-tip]:before{content:"";background:var(--panel-2);border-right:1.5px solid var(--ink);border-bottom:1.5px solid var(--ink);width:8px;height:8px;margin-left:-4px;bottom:calc(100% + 4px);transform:translateY(4px)rotate(45deg)}@media (hover:hover){[data-tip]:hover:after{opacity:1;transition-delay:.45s;transform:translate(-50%)}[data-tip]:hover:before{opacity:1;transition-delay:.45s;transform:translate(0)rotate(45deg)}}[data-tip].tip-on:after{opacity:1;transition-delay:0s;transform:translate(-50%)}[data-tip].tip-on:before{opacity:1;transition-delay:0s;transform:translate(0)rotate(45deg)}
