#ui{font-family:var(--font-body);color:var(--fg)}.card{background:var(--card);border:3px solid var(--ink-line);box-shadow:0 4px 0 var(--ink-line);border-radius:14px}.btn{font-family:var(--font-display);letter-spacing:.03em;background:var(--accent);color:#fff;border:3px solid var(--ink-line);box-shadow:0 5px 0 var(--ink-line);cursor:pointer;border-radius:14px;padding:10px 26px;font-size:22px;transition:transform 80ms,box-shadow 80ms}.btn:hover{box-shadow:0 7px 0 var(--ink-line);transform:translateY(-2px)rotate(-1deg)}.btn:active{box-shadow:0 2px 0 var(--ink-line);transform:translateY(3px)}.btn.secondary{background:var(--card);color:var(--fg);padding:8px 18px;font-size:17px}.btn.gold{background:var(--gold);color:var(--fg)}.btn:disabled{opacity:.45;cursor:default;transform:none}.landing{pointer-events:none;flex-direction:column;justify-content:center;align-items:center;gap:18px;display:flex;position:absolute;inset:0}.landing>*{pointer-events:auto}.wordmark{font-family:var(--font-display);color:var(--card);-webkit-text-stroke:4px var(--ink-line);paint-order:stroke fill;text-shadow:0 6px 0 var(--ink-line), 0 12px 24px #1e321959;-webkit-user-select:none;user-select:none;font-size:clamp(72px,11vw,168px);line-height:.95;transform:rotate(-2.5deg)}.wordmark .spin{color:var(--gold);display:inline-block;transform:rotate(8deg)}.tagline{background:var(--card);border:3px solid var(--ink-line);box-shadow:0 3px 0 var(--ink-line);border-radius:999px;padding:6px 22px;font-size:clamp(16px,1.6vw,24px);font-weight:800;transform:rotate(-1deg)}.landing .stats{opacity:.9;background:var(--card);border:2px solid var(--ink-line);border-radius:999px;padding:4px 16px;font-size:15px;font-weight:700}.landing .actions{align-items:center;gap:14px;margin-top:8px;display:flex}.landing .btn.tee{padding:16px 46px;font-size:34px;animation:.5s bounce-in}.corner-tools{gap:10px;display:flex;position:absolute;bottom:18px;right:18px}.course-select{background:#1f342675;flex-direction:column;justify-content:center;align-items:center;gap:18px;padding:24px 34px;animation:.25s fade-in;display:flex;position:absolute;inset:0}.tour-head{text-align:center;color:var(--card);text-shadow:0 2px 0 var(--ink-line)}.tour-kicker{font-family:var(--font-display);letter-spacing:.16em;color:var(--gold);font-size:15px}.tour-title{font-family:var(--font-display);-webkit-text-stroke:2px var(--ink-line);paint-order:stroke fill;font-size:clamp(40px,4.2vw,66px);line-height:1}.tour-sub{margin-top:6px;font-weight:800}.world-strip{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;width:min(1500px,96vw);display:grid}.world-card{min-height:410px;color:var(--fg);padding:22px;position:relative;overflow:hidden}.world-card:before{content:"";background:var(--world-accent);border-bottom:3px solid var(--ink-line);height:12px;position:absolute;inset:0 0 auto}.world-stamp{color:var(--world-accent);opacity:.24;font-size:52px;line-height:1;position:absolute;top:18px;right:18px;transform:rotate(8deg)}.world-card.biome-meadow{--world-accent:#70c94e;background:linear-gradient(155deg,#fff8df,#d8f0b5)}.world-card.biome-frost{--world-accent:#69cde4;background:linear-gradient(155deg,#f7fcff,#c8e3ef)}.world-card.biome-fen{--world-accent:#df9a43;background:linear-gradient(155deg,#fff1c7,#b9cf89)}.world-card.locked{filter:saturate(.62)}.world-number{font-family:var(--font-display);letter-spacing:.13em;opacity:.58;margin-top:3px;font-size:13px}.world-name{font-family:var(--font-display);margin-top:4px;font-size:clamp(27px,2.2vw,38px);line-height:1.05}.world-blurb{opacity:.76;min-height:43px;margin:6px 0 16px;font-weight:750}.course-stack{flex-direction:column;gap:10px;display:flex}.course-ticket{text-align:left;min-height:82px;color:var(--fg);border:2.5px solid var(--ink-line);box-shadow:0 3px 0 var(--ink-line);cursor:pointer;background:#fffdf4e6;border-radius:11px;grid-template-columns:36px 1fr auto;align-items:center;gap:10px;padding:9px 11px;transition:transform .1s;display:grid}.course-ticket:not(:disabled):hover{transform:translate(4px)rotate(-.3deg)}.course-ticket.locked{cursor:default;opacity:.48;box-shadow:none}.course-index{width:32px;height:32px;font-family:var(--font-display);background:var(--world-accent);border:2px solid var(--ink-line);border-radius:50%;place-items:center;display:grid}.course-copy{flex-direction:column;min-width:0;display:flex}.course-copy b{font-family:var(--font-display);font-size:18px}.course-copy small{font-family:var(--font-body);opacity:.72;font-size:12px;font-weight:750}.course-mark{font-family:var(--font-display);color:var(--accent);white-space:nowrap;font-size:13px}.time-freeze-overlay{z-index:1;pointer-events:none;opacity:0;mix-blend-mode:screen;contain:paint;background:radial-gradient(58% 54% at 50% 48%,#0000 0 36%,#dcf9ff09 51%,#8cdaf226 73%,#e2fbff70 100%),linear-gradient(#6dcaeb14,#b3e7f61a);width:calc(100vw + 4px);height:calc(100dvh + 4px);transition:opacity .18s;position:fixed;inset:-2px;overflow:hidden;box-shadow:inset 0 0 24px 8px #eefeffdb,inset 0 0 180px 34px #81d3ef7a}.time-freeze-overlay:before,.time-freeze-overlay:after{content:"";pointer-events:none;position:absolute;inset:0;-webkit-mask-image:radial-gradient(62% 58% at 50% 48%,#0000 0 34%,#00000026 50%,#000 76%);mask-image:radial-gradient(62% 58% at 50% 48%,#0000 0 34%,#00000026 50%,#000 76%)}.time-freeze-overlay:before{background:conic-gradient(from 12deg at 0 0, #f4feffd1 0 9deg, transparent 9deg 21deg, #b8eaf97a 21deg 29deg, transparent 29deg 43deg, #ebfcff9e 43deg 52deg, transparent 52deg 360deg), conic-gradient(from 102deg at 100% 0, #f1feffc7 0 10deg, transparent 10deg 25deg, #a4e2f77a 25deg 33deg, transparent 33deg 48deg, #e7faff94 48deg 57deg, transparent 57deg 360deg), conic-gradient(from 278deg at 0 100%, #f1feffc2 0 11deg, transparent 11deg 26deg, #a6e4f775 26deg 35deg, transparent 35deg 50deg, #e7faff94 50deg 59deg, transparent 59deg 360deg), conic-gradient(from 188deg at 100% 100%, #f4feffcc 0 9deg, transparent 9deg 23deg, #afe7f880 23deg 32deg, transparent 32deg 46deg, #e9fbff94 46deg 56deg, transparent 56deg 360deg);opacity:.72}.time-freeze-overlay:after{opacity:.82;background:url(/frost-window.svg) 50%/100% 100% no-repeat,radial-gradient(13% 27% at 0 18%,#f6ffffc7,#0000 72%),radial-gradient(17% 22% at 2% 76%,#beecfaa3,#0000 74%),radial-gradient(22% 13% at 24% 0,#eefdffb3,#0000 72%),radial-gradient(18% 15% at 78% 0,#b9eaf9a8,#0000 74%),radial-gradient(14% 28% at 100% 25%,#f2feffc7,#0000 72%),radial-gradient(18% 24% at 99% 81%,#b6e8f9ad,#0000 74%),radial-gradient(23% 14% at 20% 100%,#ebfcffc2,#0000 73%),radial-gradient(20% 13% at 76% 100%,#bbebf9ad,#0000 72%)}.time-freeze-overlay.on{opacity:1}.hud{z-index:2;pointer-events:none;position:absolute;inset:0}.hud .clickable{pointer-events:auto}.hole-card{padding:10px 18px;position:absolute;top:18px;left:18px;transform:rotate(-1.2deg)}.hole-card .hole-name{font-family:var(--font-display);font-size:26px}.hole-card .hole-sub{opacity:.75;letter-spacing:.06em;font-size:14px;font-weight:800}.goal-chip{border-radius:12px;align-items:center;gap:8px;max-width:430px;padding:7px 14px 7px 11px;font-size:14px;font-weight:800;transition:opacity .16s;display:flex;position:absolute;top:98px;left:26px;transform:rotate(-1.6deg)}.goal-chip.awaiting-reveal{opacity:0}.goal-chip.just-docked{animation:.45s challenge-dock}.goal-chip .goal-icon{color:var(--gold);-webkit-text-stroke:1px var(--ink-line);paint-order:stroke fill;font-size:20px}.goal-chip .goal-body{grid-template-columns:auto 1fr;align-items:baseline;column-gap:6px;min-width:0;display:grid}.goal-chip .goal-label{font-family:var(--font-display);letter-spacing:.08em;opacity:.62;grid-column:1/-1;font-size:10px}.goal-chip .goal-name{font-family:var(--font-display);white-space:nowrap;font-size:14px}.goal-chip .goal-text{opacity:.72;white-space:nowrap;font-size:12px}.goal-chip .goal-reward{font-family:var(--font-display);white-space:nowrap;font-size:14px}.goal-chip.failed{opacity:.55}.goal-chip.failed .goal-icon{color:var(--accent)}.goal-chip.failed .goal-text{text-decoration:line-through}.goal-chip.hit{background:var(--gold);animation:.7s goal-pop}.goal-chip.complete{background:color-mix(in srgb, var(--go) 62%, var(--card));animation:.7s goal-pop}.goal-chip.complete .goal-icon{color:var(--fg)}@keyframes challenge-dock{0%{transform:rotate(-1.6deg)scale(.82)}55%{transform:rotate(.8deg)scale(1.08)}to{transform:rotate(-1.6deg)scale(1)}}@keyframes goal-pop{0%{transform:rotate(-1.6deg)scale(.9)}40%{transform:rotate(1.5deg)scale(1.14)}to{transform:rotate(-1.6deg)scale(1)}}.challenge-reveal{z-index:12;opacity:0;pointer-events:none;text-align:center;width:min(520px,100vw - 48px);min-height:180px;color:var(--ink);background:linear-gradient(105deg, transparent 0 7%, #ffc93f33 7% 9%, transparent 9%), var(--card);border:4px solid var(--ink-line);box-shadow:0 9px 0 var(--ink-line), 0 22px 48px #15231857;border-radius:18px 12px 20px 14px;align-content:center;justify-items:center;padding:24px 34px 22px;display:grid;position:absolute;top:51%;left:50%;transform:translate(-50%,-50%)scale(.7)rotate(-1deg)}.challenge-reveal.show{animation:.42s cubic-bezier(.2,.8,.25,1.2) forwards challenge-reveal-in}.challenge-kicker{font-family:var(--font-display);letter-spacing:.16em;color:var(--accent);font-size:13px}.challenge-name{font-family:var(--font-display);color:var(--gold);-webkit-text-stroke:2px var(--ink-line);paint-order:stroke fill;text-shadow:0 3px 0 var(--ink-line);margin:9px 0 8px;font-size:clamp(40px,5vw,68px);line-height:.95}.challenge-text{font-size:clamp(17px,1.6vw,22px);font-weight:850}.challenge-reward{font-family:var(--font-display);color:var(--ink);background:var(--gold);border:2px solid var(--ink-line);box-shadow:0 2px 0 var(--ink-line);border-radius:999px;margin-top:12px;padding:4px 13px;font-size:20px}@keyframes challenge-reveal-in{0%{opacity:0;transform:translate(-50%,-50%)scale(.7)rotate(-2deg)}to{opacity:1;transform:translate(-50%,-50%)scale(1)rotate(-.6deg)}}.wind-chip{font-family:var(--font-display);letter-spacing:.06em;align-items:center;gap:8px;padding:6px 14px;font-size:15px;display:flex;position:absolute;top:84px;right:220px;transform:rotate(1.2deg)}.wind-chip .wind-arrow{font-size:17px;line-height:1;display:inline-block}.wind-chip.gale{color:var(--accent)}.wind-chip.gale .wind-tier{animation:1.2s infinite pulse}.shots-card{align-items:center;gap:10px;padding:8px 18px;display:flex;position:absolute;top:18px;left:50%;transform:translate(-50%)rotate(.6deg)}.shots-card .label{font-family:var(--font-display);letter-spacing:.08em;font-size:15px}.pips{gap:6px;display:flex}.pip{border:2.5px solid var(--ink-line);background:var(--card);border-radius:50%;width:16px;height:16px}.pip.used{background:var(--ink-line);opacity:.35}.pip.next{background:var(--accent);animation:1.2s infinite pulse}.pip.over{border-color:var(--accent)}.last-shot{font-family:var(--font-display);color:#fff;background:var(--accent);border:2px solid var(--ink-line);border-radius:999px;margin-left:6px;padding:2px 10px;font-size:13px;animation:.9s infinite pulse}.coins-card{font-family:var(--font-display);align-items:center;gap:8px;padding:8px 18px;font-size:24px;display:flex;position:absolute;top:18px;right:18px;transform:rotate(1.2deg)}.coin{background:var(--gold);border:2.5px solid var(--ink-line);border-radius:50%;width:20px;height:20px;display:inline-block;box-shadow:inset -3px -3px #8c5a0059}.minimap{padding:6px;line-height:0;position:absolute;top:84px;right:18px;transform:rotate(.8deg)}.minimap canvas{border:2px solid var(--ink-line);border-radius:8px}.bag{flex-wrap:wrap;gap:8px;max-width:40vw;display:flex;position:absolute;bottom:18px;left:18px}.mod-chip{background:var(--card);border:2.5px solid var(--ink-line);box-shadow:0 2px 0 var(--ink-line);border-radius:999px;align-items:center;gap:7px;padding:5px 12px 5px 8px;font-size:14px;font-weight:800;animation:.35s bounce-in;display:flex}.mod-chip .glyph{color:#fff;border:2px solid var(--ink-line);border-radius:50%;place-items:center;width:22px;height:22px;font-size:13px;display:grid}.mod-chip .x{font-family:var(--font-display);color:var(--accent);font-size:13px}.mod-chip .mod-key{border:2px solid var(--ink-line);background:var(--gold);min-width:24px;color:var(--ink-line);box-shadow:0 2px 0 var(--ink-line);font-family:var(--font-display);text-align:center;white-space:nowrap;border-radius:6px;margin-left:2px;padding:2px 7px;font-size:11px;line-height:1.2}.item-belt{flex-direction:column;gap:8px;max-width:310px;display:flex;position:absolute;top:190px;left:18px}.item-chip{border:2.5px solid var(--ink-line);background:var(--card);box-shadow:0 3px 0 var(--ink-line);font-family:var(--font-display);color:var(--ink);cursor:pointer;text-align:left;border-radius:10px;grid-template-columns:auto 26px 1fr;align-items:center;gap:7px;padding:6px 12px 6px 7px;font-size:13px;animation:.35s bounce-in;display:grid}.item-chip:disabled{opacity:1;cursor:default}.item-chip.armed{background:var(--gold);box-shadow:0 1px 0 var(--ink-line);transform:translateY(2px)}.item-chip .item-key{border:2px solid var(--ink-line);text-align:center;min-width:34px;box-shadow:0 2px 0 var(--ink-line);background:#fff;border-radius:6px;padding:2px 6px;font-size:11px}.item-chip .item-glyph{text-align:center;font-size:20px}.item-chip.rarity-uncommon{background:#e7dcff}.item-chip.rarity-rare{background:var(--gold)}.dials{flex-direction:column;align-items:flex-end;gap:8px;display:flex;position:absolute;bottom:18px;right:18px}.dial{align-items:center;gap:10px;padding:6px 14px;font-size:13px;font-weight:800;display:flex}.dial .track{border:2px solid var(--ink-line);background:#fff;border-radius:999px;width:110px;height:10px;position:relative;overflow:hidden}.dial .fill{transform-origin:0;background:var(--water);position:absolute;inset:0}.dial.spin .fill{background:var(--accent);transform-origin:50%}.dial .hint{opacity:.6;font-size:11px}.scout-hint{align-items:center;gap:8px;padding:6px 14px;font-size:12px;font-weight:800;display:flex}.scout-hint .key{font-family:var(--font-display);letter-spacing:.06em;border:2px solid var(--ink-line);box-shadow:0 2px 0 var(--ink-line);background:#fff;border-radius:6px;padding:1px 6px;font-size:11px}.scout-hint .scout-text{opacity:.75}.scout-hint.scouting .key{background:var(--gold)}.power-wrap{width:min(420px,40vw);display:none;position:absolute;bottom:34px;left:50%;transform:translate(-50%)}.power-wrap.on{display:block}.power-bar{border:3px solid var(--ink-line);background:var(--card);height:26px;box-shadow:0 4px 0 var(--ink-line);border-radius:999px;overflow:hidden}.power-fill{background:linear-gradient(90deg, var(--lime), var(--gold) 60%, var(--accent));width:0%;height:100%;transition:width 30ms linear}.power-label{text-align:center;font-family:var(--font-display);letter-spacing:.1em;color:var(--card);text-shadow:0 2px 0 var(--ink-line);margin-top:6px;font-size:15px}.microcopy{background:var(--card);border:2.5px solid var(--ink-line);box-shadow:0 3px 0 var(--ink-line);white-space:nowrap;border-radius:999px;padding:7px 20px;font-size:16px;font-weight:800;position:absolute;bottom:100px;left:50%;transform:translate(-50%)}.hud.foot-wedge-mode .microcopy{background:var(--gold);font-family:var(--font-display);letter-spacing:.035em;box-shadow:0 4px 0 var(--ink-line);padding:9px 22px;font-size:18px;top:82px;bottom:auto}.flight-prompt{font-family:var(--font-display);color:var(--card);text-shadow:0 2px 0 var(--ink-line);background:var(--accent);border:3px solid var(--ink-line);border-radius:12px;padding:6px 18px;font-size:20px;animation:.8s infinite pulse;position:absolute;bottom:46px;left:50%;transform:translate(-50%)}.undo-btn{margin-bottom:2px}.banner{font-family:var(--font-display);color:var(--card);-webkit-text-stroke:3px var(--ink-line);paint-order:stroke fill;text-shadow:0 5px 0 var(--ink-line);opacity:0;pointer-events:none;white-space:nowrap;text-align:center;font-size:clamp(42px,5.5vw,92px);position:absolute;top:26%;left:50%;transform:translate(-50%,-50%)scale(.6)}.banner .sub{color:var(--card);margin-top:2px;font-size:.36em;display:block}.banner.show{animation:1.9s forwards banner-pop}.banner.gold{color:var(--gold)}.banner.coral{color:var(--accent)}.banner.long{animation-duration:2.8s}.ball-row{gap:7px;padding:7px 10px;display:flex}.ball-slot{border:2.5px solid var(--ink-line);cursor:pointer;width:46px;height:46px;box-shadow:0 2px 0 var(--ink-line);background:#fff;border-radius:12px;padding:1px;transition:transform 80ms,background 80ms;position:relative}.ball-slot:hover{transform:translateY(-2px)}.ball-slot.selected{background:var(--gold);transform:translateY(-3px)}.ball-slot canvas{width:100%;height:100%;display:block}.ball-slot .key{font-family:var(--font-display);text-align:center;background:var(--card);border:2px solid var(--ink-line);border-radius:999px;width:17px;height:17px;font-size:11px;line-height:14px;position:absolute;top:-8px;left:-8px}.ball-slot.selected .key{background:var(--gold)}.shop{box-sizing:border-box;-webkit-backdrop-filter:blur(3px)saturate(.72);backdrop-filter:blur(3px)saturate(.72);background:#182a16b8;justify-content:center;align-items:center;padding:24px;animation:.3s fade-in;display:flex;position:absolute;inset:0}.shop-panel{box-sizing:border-box;width:1120px;max-width:calc(100vw - 48px);max-height:calc(100vh - 48px);color:var(--card);border:4px solid var(--ink-line);box-shadow:0 9px 0 var(--ink-line), 0 24px 60px #121f116b;background:linear-gradient(135deg,#ffffff0d,#0000 42%),linear-gradient(165deg,#345e31,#22431f);border-radius:22px;flex-direction:column;gap:14px;padding:18px 22px 20px;display:flex;overflow:auto}.shop .shop-head{justify-content:space-between;align-items:center;gap:24px;display:flex}.shop .shop-title{font-family:var(--font-display);color:var(--card);-webkit-text-stroke:3px var(--ink-line);paint-order:stroke fill;text-shadow:0 5px 0 var(--ink-line);font-size:clamp(46px,3.1vw,64px);line-height:.9;transform:rotate(-1.5deg)}.shop-balance{font-family:var(--font-display);color:var(--card);text-shadow:0 3px 0 var(--ink-line);align-items:center;gap:9px;font-size:29px;display:flex}.shop-balance .coin{width:25px;height:25px;box-shadow:inset -3px -3px 0 #8c5a0059, 0 2px 0 var(--ink-line)}.shop-section-head,.item-counter-head{justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:9px;display:flex}.shop-section-kicker{letter-spacing:.16em;opacity:.74;font-size:10px;font-weight:900;line-height:1}.shop-section-head h2,.item-counter-head h2{font-family:var(--font-display);letter-spacing:.04em;margin:1px 0 0;font-size:22px;line-height:1}.shop-section-title-row{align-items:center;gap:10px;display:flex}.draft-price{min-height:29px;color:var(--ink-line);background:var(--card);border:2px solid var(--ink-line);box-shadow:0 2px 0 var(--ink-line);font-family:var(--font-display);border-radius:8px;align-items:center;gap:7px;padding:2px 12px;font-size:15px;display:flex}.draft-price.free{background:var(--gold)}.shop .cards{grid-template-columns:repeat(var(--offer-count), 246px);justify-content:center;align-items:stretch;gap:14px;display:grid}.mod-card{appearance:none;text-align:left;width:246px;min-width:0;min-height:288px;color:var(--fg);font-family:var(--font-body);cursor:pointer;flex-direction:column;gap:7px;padding:12px;transition:transform .1s,box-shadow .1s;display:flex;position:relative}.mod-card.rarity-uncommon{box-shadow:0 4px 0 var(--ink-line), inset 0 0 0 4px #8e5fcd33}.mod-card.rarity-rare{box-shadow:0 5px 0 var(--ink-line), inset 0 0 0 5px #ffc93f8c}.rarity-tag{font-family:var(--font-display);letter-spacing:.08em;color:var(--ink-line);white-space:nowrap;font-size:11px}.rarity-uncommon .rarity-tag{color:#674290}.rarity-rare .rarity-tag{color:#906500}.mod-card:hover{box-shadow:0 10px 0 var(--ink-line);transform:translateY(-6px)rotate(-.7deg)scale(1.018)}.mod-card:disabled{cursor:default;opacity:.68;filter:saturate(.58);box-shadow:0 2px 0 var(--ink-line)}.mod-card:disabled:hover{box-shadow:0 2px 0 var(--ink-line);transform:none}.mod-card:disabled .mod-card-action{box-shadow:none;background:#dedbcf}.mod-card:focus-visible,.item-buy:focus-visible,.shop-skip:focus-visible{outline:4px solid var(--gold);outline-offset:3px}.mod-card-meta{justify-content:space-between;align-items:center;gap:8px;min-height:22px;display:flex}.mod-card .arch{letter-spacing:.14em;text-transform:uppercase;color:#fff;border:2px solid var(--ink-line);border-radius:999px;padding:2px 9px;font-size:10px;font-weight:800}.mod-card .name{font-family:var(--font-display);font-size:clamp(23px,1.3vw,28px);line-height:1}.mod-card canvas{border:2.5px solid var(--ink-line);background:linear-gradient(#bfe9f7 62%,#7dd35c 62%);border-radius:10px;width:100%;height:94px}.mod-card .blurb{flex:1;font-size:13px;font-weight:700;line-height:1.28}.mod-card .own{min-height:14px;color:var(--accent);font-size:11px;font-weight:800}.mod-card .new-tag{background:var(--gold);border:2.5px solid var(--ink-line);font-family:var(--font-display);z-index:1;border-radius:5px 5px 2px 2px;padding:2px 8px;font-size:11px;position:absolute;top:-8px;right:10px;transform:rotate(2deg)}.mod-card-action{min-height:31px;color:var(--ink-line);background:var(--gold);border:2px solid var(--ink-line);box-shadow:0 2px 0 var(--ink-line);font-family:var(--font-display);letter-spacing:.04em;border-radius:8px;justify-content:space-between;align-items:center;gap:8px;margin-top:1px;padding:3px 9px 3px 11px;font-size:13px;display:flex}.mod-card-action strong{font-size:16px}.coin-price,.action-price,.skip-reward,.item-price{align-items:center;gap:5px;display:inline-flex}.ball-card{color:#f3f6f9;background:#2e3a45;transform:rotate(-1.2deg)}.ball-card:hover{transform:translateY(-8px)rotate(-2.2deg)scale(1.04)}.ball-card .name{color:#fff}.ball-card .blurb{color:#dbe4ec}.ball-card .own{color:var(--gold)}.ball-card .arch{background:#5b6b7a}.ball-card canvas{background:linear-gradient(#8fb4cf 62%,#5f9c4b 62%)}.ball-card .new-tag{background:var(--accent);color:#fff}.ball-card .rarity-tag,.ball-card .mod-card-action{color:var(--ink-line)}.item-counter{border:3px solid var(--ink-line);box-shadow:0 5px 0 var(--ink-line);color:var(--fg);background:#fff8e6f5;border-radius:14px;padding:12px 14px 14px}.item-counter-head{align-items:center}.item-capacity{align-items:center;gap:8px;display:flex}.belt-word{font-family:var(--font-display);letter-spacing:.08em;font-size:13px}.belt-slots{gap:5px;display:flex}.belt-slot{box-sizing:border-box;border:2px solid var(--ink-line);width:40px;height:31px;font-family:var(--font-display);background:#fff;border-radius:7px;place-items:center;font-size:20px;display:grid;position:relative}.belt-slot.empty{color:#2c3d246b;border-style:dashed}.belt-slot.filled{background:#bfe9f7;animation:.28s bounce-in}.belt-slot.filled.rarity-uncommon{background:#e4d2ff}.belt-slot.filled.rarity-rare{background:var(--gold)}.item-cards{grid-template-columns:repeat(var(--item-offer-count), 336px);justify-content:center;gap:12px;display:grid}.item-card{border:2.5px solid var(--ink-line);background:#fff;border-radius:12px;grid-template:"icon copy buy""preview preview preview"62px/42px minmax(0,1fr) 78px;align-items:center;gap:9px;min-height:132px;padding:9px;display:grid;position:relative}.item-card .new-tag{border:2px solid var(--ink-line);background:var(--gold);font-family:var(--font-display);z-index:1;border-radius:5px;padding:1px 6px;font-size:9px;position:absolute;top:-7px;right:9px;transform:rotate(2deg)}.item-card.rarity-uncommon{background:#f0e8ff}.item-card.rarity-rare{background:#fff2b5}.item-card.equipped{background:#eff9e8;box-shadow:inset 0 0 0 3px #58b94a3b}.item-card.unavailable{opacity:.68;filter:saturate(.58)}.item-card .item-icon{border:2px solid var(--ink-line);background:var(--water);width:40px;height:40px;font-family:var(--font-display);border-radius:50%;grid-area:icon;place-items:center;font-size:22px;display:grid}.item-card.rarity-uncommon .item-icon{background:#d9b8ff}.item-card.rarity-rare .item-icon{background:var(--gold)}.item-copy{flex-direction:column;grid-area:copy;align-items:flex-start;gap:4px;min-width:0;display:flex}.item-title-row{justify-content:flex-start;align-items:baseline;gap:6px;width:100%;display:flex}.item-card .item-name{font-family:var(--font-display);font-size:18px;line-height:1}.item-card .rarity-tag{font-size:12px}.item-effect{letter-spacing:.03em;font-size:11px;font-weight:900}.item-control{color:#26361fb8;white-space:nowrap;align-items:center;gap:5px;font-size:9px;font-weight:900;display:flex}.item-control kbd{border:2px solid var(--ink-line);min-width:30px;color:var(--ink-line);font-family:var(--font-display);text-align:center;box-shadow:0 1px 0 var(--ink-line);background:#fff;border-radius:5px;padding:2px 5px;font-size:9px}.item-preview{border:2px solid var(--ink-line);background:#bfe9f7;border-radius:8px;grid-area:preview;width:100%;height:60px}.item-buy{border:3px solid var(--ink-line);background:var(--gold);min-width:0;color:var(--ink-line);font-family:var(--font-display);cursor:pointer;box-shadow:0 4px 0 var(--ink-line);border-radius:10px;flex-direction:column;grid-area:buy;justify-content:center;align-self:stretch;align-items:center;gap:2px;padding:7px;font-size:13px;transition:transform 80ms,box-shadow 80ms;display:flex}.item-buy:hover:not(:disabled){box-shadow:0 6px 0 var(--ink-line);transform:translateY(-2px)}.item-price{font-size:21px;line-height:1}.item-buy:disabled{cursor:default;filter:grayscale(.7);opacity:.52;box-shadow:none}.item-card.equipped .item-buy:disabled{filter:none;opacity:1;background:#dff3d1}.item-card.unavailable .item-buy:disabled{filter:none;opacity:1;background:#dedbcf}.item-check{color:#3c8d31;font-size:22px;line-height:1}.shop .shop-actions{justify-content:flex-end;align-items:center;gap:16px;min-height:46px;padding-top:3px;display:flex}.shop-reroll{align-items:center;gap:8px;display:inline-flex}.action-price{border-left:2px solid #2c3d2440;margin-left:2px;padding-left:9px;font-size:15px}.shop-skip{color:var(--card);font-family:var(--font-display);letter-spacing:.03em;text-shadow:0 2px 0 var(--ink-line);cursor:pointer;background:0 0;border:2px solid #fff8e6c2;border-radius:10px;align-items:center;gap:8px;padding:7px 12px;font-size:14px;display:inline-flex}.shop-skip:hover{border-color:var(--gold);color:var(--gold)}.skip-reward{color:var(--gold)}.shop-continue{padding:9px 22px;font-size:19px}.draft-packed{color:var(--ink-line);background:var(--gold);border:2px solid var(--ink-line);font-family:var(--font-display);box-shadow:0 2px 0 var(--ink-line);border-radius:8px;align-self:center;align-items:center;gap:8px;padding:6px 14px;font-size:14px;display:flex}.coin-small{border-width:2px;width:14px;height:14px;box-shadow:inset -2px -2px #8c5a004d}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.summary{background:#26361f6b;justify-content:center;align-items:center;animation:.35s fade-in;display:flex;position:absolute;inset:0}.summary .panel{flex-direction:column;align-items:center;gap:14px;max-width:min(760px,92vw);padding:28px 36px;animation:.45s bounce-in;display:flex}.summary .headline{font-family:var(--font-display);font-size:clamp(40px,5vw,64px);transform:rotate(-1.5deg)}.summary .scoreline{font-size:20px;font-weight:800}.summary .course-line{font-family:var(--font-display);color:var(--accent);letter-spacing:.05em;font-size:20px}.summary .course-unlock{border:2px solid var(--ink-line);background:var(--gold);width:fit-content;font-family:var(--font-display);border-radius:999px;margin:14px auto 0;padding:7px 16px;font-size:15px;animation:.5s bounce-in}.summary .facts{flex-wrap:wrap;justify-content:center;gap:12px;display:flex}.summary .fact{border:2.5px solid var(--ink-line);text-align:center;background:#fff;border-radius:12px;padding:8px 14px;font-size:14px;font-weight:800}.summary .fact b{font-family:var(--font-display);font-size:22px;display:block}.summary .unlock-cards{justify-content:center;gap:12px;display:flex}.summary .mod-card.mini{cursor:default;width:172px;min-height:0;padding:10px}.summary .mod-card.mini:hover{transform:none}.summary .mod-card.mini .name{font-size:20px}.summary .mod-card.mini .blurb{min-height:0;font-size:12px}.summary .unlocks{color:var(--accent);font-size:15px;font-weight:800}.summary .again-row{gap:12px;margin-top:4px;display:flex}.multi-screen{z-index:40;background:radial-gradient(circle at 50% 20%,#fff8e629,#0000 38%),#182d22b8;justify-content:center;align-items:center;padding:28px;animation:.18s fade-in;display:flex;position:absolute;inset:0}.multi-screen-content{display:contents}.multi-card{width:min(1480px,94vw);max-height:92vh;color:var(--fg);background:var(--card);border:4px solid var(--ink-line);box-shadow:0 8px 0 var(--ink-line), 0 30px 80px #12221961;border-radius:22px;position:relative;overflow:hidden}.multi-kicker{font-family:var(--font-display);letter-spacing:.15em;color:var(--accent);font-size:15px}.multi-screen h1,.multi-screen h2{font-family:var(--font-display);margin:0;line-height:1}.multi-entry-card{text-align:center;width:min(720px,92vw);padding:42px 48px;transform:rotate(-.4deg)}.multi-entry-card h1{margin:6px 0 12px;font-size:62px}.multi-entry-card>p{max-width:520px;margin:0 auto 26px;font-size:18px;font-weight:750}.multi-field{text-align:left;font-family:var(--font-display);letter-spacing:.08em;gap:6px;font-size:14px;display:grid}.multi-field input,.lobby-settings select{min-height:48px;color:var(--fg);border:3px solid var(--ink-line);font:800 20px var(--font-body);text-transform:uppercase;background:#fff;border-radius:10px;padding:8px 12px}.multi-entry-card>.multi-field{max-width:420px;margin:0 auto 22px}.multi-entry-actions{grid-template-columns:1fr auto 1fr;align-items:end;gap:14px;display:grid}.multi-entry-actions .multi-create{min-height:54px}.multi-entry-actions .multi-join{grid-column:3}.multi-or{font-family:var(--font-display);color:var(--accent);align-self:center}.multi-error{color:#b7322c;min-height:24px;margin-top:14px;font-weight:850}.multi-back{color:var(--fg);font:800 13px var(--font-body);letter-spacing:.05em;cursor:pointer;background:0 0;border:0;padding:8px 12px}.multi-confirm{z-index:6;background:#182d22b8;place-items:center;padding:24px;animation:.14s fade-in;display:grid;position:absolute;inset:0}.multi-confirm-card{text-align:center;background:var(--card);border:4px solid var(--ink-line);width:min(520px,92vw);box-shadow:0 7px 0 var(--ink-line);border-radius:18px;padding:30px 34px;transform:rotate(-.5deg)}.multi-confirm-card h2{margin-top:6px;font-size:36px}.multi-confirm-card p{margin:12px 0 22px;font-weight:750;line-height:1.4}.multi-confirm-actions{justify-content:center;gap:12px;display:flex}.btn.danger{color:#fff;background:#ad413a}.lobby-panel{grid-template-rows:auto minmax(0,1fr) auto;display:grid}.lobby-head,.standings-head{border-bottom:3px solid var(--ink-line);background:linear-gradient(110deg,#fff9e9,#f1e4c6);justify-content:space-between;align-items:center;padding:24px 30px 18px;display:flex}.room-code{font-family:var(--font-display);letter-spacing:.16em;font-size:62px;line-height:.9}.invite-row{align-items:center;gap:16px;display:flex}.copy-invite{min-height:40px;color:var(--fg);background:var(--gold);border:2px solid var(--ink-line);box-shadow:0 3px 0 var(--ink-line);font:900 11px var(--font-body);letter-spacing:.05em;cursor:pointer;border-radius:9px;padding:8px 12px}.copy-invite:disabled{cursor:default;opacity:.75}.invite-status{letter-spacing:.04em;min-height:14px;margin-top:6px;font-size:10px;font-weight:850}.lobby-count{font-family:var(--font-display);grid-template-columns:auto auto;align-items:baseline;gap:6px;font-size:24px;display:grid}.lobby-count strong{color:var(--accent);font-size:52px}.lobby-count span{font:800 12px var(--font-body);letter-spacing:.12em;text-align:right;grid-column:1/-1}.lobby-body{grid-template-columns:minmax(0,1.55fr) minmax(340px,.8fr);min-height:0;display:grid}.lobby-roster,.lobby-settings{min-height:0;padding:24px 28px}.lobby-settings{border-left:3px solid var(--ink-line);background:#f0e3c5}.lobby-roster h2,.lobby-settings h2{margin-bottom:14px;font-size:28px}.roster-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;max-height:54vh;padding:2px 5px 8px 2px;display:grid;overflow-y:auto}.roster-seat{border:2px solid var(--ink-line);box-shadow:0 2px 0 var(--ink-line);background:#fff;border-radius:10px;grid-template-columns:16px minmax(0,1fr) auto;align-items:center;gap:0 9px;padding:9px 10px;display:grid}.roster-seat.me{outline:3px solid var(--gold)}.roster-seat.ready{background:#e9f6dc}.player-color{background:var(--player-color);border:2px solid var(--ink-line);border-radius:50%;flex:none;width:13px;height:13px;display:inline-block}.roster-name{text-overflow:ellipsis;white-space:nowrap;font-weight:900;overflow:hidden}.roster-state{color:#617061;letter-spacing:.04em;grid-column:2;font-size:10px;font-weight:850}.remove-player{color:#fff;border:1.5px solid var(--ink-line);font:900 8px var(--font-body);cursor:pointer;background:#ad413a;border-radius:6px;grid-area:1/3/3;align-self:center;padding:4px 6px}.settings-grid{gap:16px;display:grid}.settings-grid label{letter-spacing:.08em;gap:5px;font-size:12px;font-weight:900;display:grid}.lobby-settings select{width:100%;font-size:15px}.settings-note{background:#fff9;border:2px dashed #2e3a4573;border-radius:10px;margin:4px 0 0;padding:12px;font-size:13px;font-weight:700;line-height:1.4}.lobby-foot,.standings-actions,.celebration-actions{border-top:3px solid var(--ink-line);justify-content:flex-end;align-items:center;gap:14px;padding:18px 28px 22px;display:flex}.ready-count{font-family:var(--font-display);margin-right:auto;font-size:20px}.standings-head h1{margin-top:4px;font-size:40px}.standings-panel{grid-template-rows:auto minmax(0,1fr) auto;display:grid}.standings-wait{color:#fff;background:var(--accent);border:2px solid var(--ink-line);letter-spacing:.08em;text-align:center;border-radius:999px;max-width:420px;padding:8px 12px;font-size:11px;font-weight:900}.standings-meta{justify-items:end;gap:7px;display:grid}.pickup-legend{letter-spacing:.05em;font-size:9px;font-weight:950}.pickup-legend span{color:#fff;border:1px solid var(--ink-line);background:#ad413a;border-radius:50%;place-items:center;width:17px;height:17px;margin-right:3px;font-size:8px;display:inline-grid}.standings-scroll{min-height:0;overflow:auto}.standings-panel table{border-collapse:separate;border-spacing:0;width:100%;font-size:13px}.standings-panel th{z-index:2;border-bottom:3px solid var(--ink-line);font-family:var(--font-display);background:#e9d9b7;padding:9px 8px;font-size:12px;position:sticky;top:0}.standings-panel td{box-sizing:border-box;text-align:center;background:#fffdf6;border-bottom:1px solid #c8bda5;height:39px;padding:3px 8px}.standings-panel tr.me td{border-top:2px solid var(--ink-line);border-bottom:2px solid var(--ink-line);background:#fff0ae}.standings-name{align-items:center;gap:7px;min-width:150px;display:flex;text-align:left!important}.presence{color:#ad413a;font-size:8px;font-weight:900}.you-label{color:#fff;background:var(--fg);border-radius:999px;padding:2px 5px;font-size:8px;font-weight:900}.host-label{color:var(--fg);background:var(--gold);border:1px solid var(--ink-line)}.pickup-cell strong{margin-right:3px}.pickup-cell span{color:#fff;border:1px solid var(--ink-line);background:#ad413a;border-radius:50%;place-items:center;width:16px;height:16px;font-size:8px;font-weight:950;display:inline-grid}.activity{min-width:170px;text-align:left!important}.activity>span{border:1.5px solid var(--ink-line);letter-spacing:.04em;background:#e8e1d2;border-radius:999px;padding:4px 7px;font-size:9px;font-weight:900;display:inline-block}.activity-ready>span,.activity-finished>span{background:#cdecb7}.activity-playing>span{background:#c8ebf4}.activity-shopping>span{background:#f7d59b}.skip-player{color:#fff;border:1.5px solid var(--ink-line);font:900 8px var(--font-body);cursor:pointer;background:#ad413a;border-radius:6px;margin-left:6px;padding:3px 6px}.standings-total{font-family:var(--font-display);font-size:18px}.standings-own-status{margin-right:auto;font-weight:900}.ready-committed{color:#2c662d;font-family:var(--font-display);letter-spacing:.06em}.multi-reaction{background:#182d2257}.reaction-card{text-align:center;width:min(540px,90vw);padding:30px 34px;transform:rotate(-1deg)}.reaction-card h1{margin:5px 0 9px;font-size:42px}.reaction-card p{font-weight:750}.reaction-clock{color:var(--accent);font-family:var(--font-display);margin:16px auto;font-size:28px}.reaction-actions{justify-content:center;gap:12px;display:flex}.celebration-panel{text-align:center;width:min(920px,94vw);padding:34px 46px 0;overflow-y:auto}.celebration-panel h1{margin-top:5px;font-size:54px}.champion-name{color:var(--accent);font-family:var(--font-display);text-shadow:0 3px 0 var(--gold);margin-top:12px;font-size:66px}.champion-score{letter-spacing:.1em;font-weight:900}.podium{justify-content:center;align-items:end;gap:10px;min-height:150px;margin:22px 0 16px;display:flex}.podium-place{border:3px solid var(--ink-line);background:#f1dfb3;border-radius:12px 12px 3px 3px;gap:2px;width:180px;padding:16px 10px;display:grid}.podium-place>span:first-child{font-family:var(--font-display);font-size:30px}.podium-1{background:var(--gold);order:2;min-height:130px;padding-top:26px}.podium-2{order:1;min-height:102px}.podium-3{order:3;min-height:82px}.final-list{text-align:left;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px 12px;max-height:220px;display:grid;overflow-y:auto}.final-list>div{background:#fff;border:2px solid #b9ad94;border-radius:8px;grid-template-columns:45px minmax(0,1fr) auto;gap:8px;padding:7px 10px;display:grid}.final-list>div.me{border-color:var(--ink-line);background:#fff0ae}.final-player{min-width:0;display:grid}.final-player strong,.final-pickups{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.final-pickups{color:#ad413a;letter-spacing:.04em;font-size:8px;font-weight:950}.celebration-actions{margin:24px -46px 0}.ghost-presence{z-index:4;color:var(--fg);letter-spacing:.06em;opacity:0;align-items:center;gap:8px;padding:7px 13px 7px 10px;font-size:11px;font-weight:900;transition:opacity .15s,transform .15s;display:flex;position:absolute;top:76px;left:50%;transform:translate(-50%,-12px)}.ghost-presence:before{background:var(--player-color);border:2px solid var(--ink-line);content:"";border-radius:50%;width:11px;height:11px}.ghost-presence.live{opacity:1;transform:translate(-50%)}.network-toast{z-index:90;color:#fff;border:3px solid var(--ink-line);box-shadow:0 3px 0 var(--ink-line);letter-spacing:.06em;background:#ad413a;border-radius:999px;padding:9px 16px;font-size:12px;font-weight:900;position:absolute;top:20px;left:50%;transform:translate(-50%)}@media (width<=1100px){.lobby-body{grid-template-columns:1fr;overflow-y:auto}.lobby-settings{border-top:3px solid var(--ink-line);border-left:0}.roster-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.multi-entry-actions{grid-template-columns:1fr}.multi-entry-actions .multi-join,.multi-or{grid-column:1}}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.18)}}@keyframes bounce-in{0%{opacity:0;transform:scale(.6)}60%{opacity:1;transform:scale(1.08)}to{transform:scale(1)}}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes banner-pop{0%{opacity:0;transform:translate(-50%,-50%)scale(.5)rotate(-3deg)}12%{opacity:1;transform:translate(-50%,-50%)scale(1.1)rotate(1deg)}22%{transform:translate(-50%,-50%)scale(1)rotate(-.5deg)}78%{opacity:1;transform:translate(-50%,-50%)scale(1)}to{opacity:0;transform:translate(-50%,-55%)scale(.96)}}@media (prefers-reduced-motion:reduce){.banner.show{opacity:1;animation:.2s forwards fade-in}.goal-chip.hit,.goal-chip.complete{animation:.2s fade-in}}
