:root{--bg1: #7ad0ff;--bg2: #3a86ff;--ink: #1f2937;--muted: #6b7280;--panel: #ffffffee;--gold: #ffcf33;--radius: 16px;--shadow: 0 10px 30px rgba(15, 23, 42, .25);font-family:Noto Sans KR,system-ui,-apple-system,sans-serif;color:var(--ink)}*{box-sizing:border-box}html,body,#root{margin:0;min-height:100%}body{background:radial-gradient(circle at 20% 10%,rgba(255,255,255,.35) 0 8%,transparent 9%),radial-gradient(circle at 80% 18%,rgba(255,255,255,.3) 0 6%,transparent 7%),linear-gradient(180deg,var(--bg1) 0%,#a0e7ff 45%,#8bd46b 45.2%,#5fb34a 100%);background-attachment:fixed;min-height:100vh}button{font-family:inherit;cursor:pointer}.muted{color:var(--muted)}.small{font-size:12px}.center{text-align:center}.btn{border:none;border-radius:999px;padding:10px 18px;font-weight:700;font-size:15px;background:#fff;color:var(--ink);box-shadow:0 4px #cbd5e1,0 6px 14px #0000001f;transition:transform .08s,box-shadow .08s,filter .15s}.btn:hover:not(:disabled){filter:brightness(1.05);transform:translateY(-1px)}.btn:active:not(:disabled){transform:translateY(3px);box-shadow:0 1px #cbd5e1}.btn:disabled{opacity:.45;cursor:not-allowed}.btn.primary{background:linear-gradient(180deg,#ffd43b,#fab005);box-shadow:0 4px #d9480f,0 6px 14px #00000026;color:#5c2d00}.btn.danger{background:#ffe3e3;color:#c92a2a;box-shadow:0 3px #ffa8a8}.btn.small{padding:6px 12px;font-size:13px}.btn.huge{font-family:Jua,Noto Sans KR,sans-serif;font-size:22px;padding:14px 28px}.roll-btn{background:linear-gradient(180deg,#ff6b6b,#f03e3e)!important;color:#fff!important;box-shadow:0 5px #a61e1e,0 10px 20px #f03e3e66!important;animation:pulse 1.4s ease-in-out infinite}.end-btn{background:linear-gradient(180deg,#4dabf7,#1c7ed6)!important;color:#fff!important;box-shadow:0 5px #1864ab,0 10px 20px #1c7ed659!important}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}.logo{font-family:Jua,sans-serif;display:inline-flex;gap:6px;font-size:64px;line-height:1;letter-spacing:2px;filter:drop-shadow(0 5px 0 rgba(0,0,0,.25))}.logo-kart{color:#ffd43b;-webkit-text-stroke:3px #1c3d8f;font-style:italic}.logo-rider{color:#fff;-webkit-text-stroke:3px #1c3d8f;font-style:italic}.logo-sub{font-family:Jua,sans-serif;color:#fff;-webkit-text-stroke:1px #1c3d8f;font-size:16px;align-self:flex-end;margin-left:6px}.logo-sub.big{font-size:30px;-webkit-text-stroke:1.5px #1c3d8f;filter:drop-shadow(0 3px 0 rgba(0,0,0,.2));margin:6px 0 0}.logo.small{font-size:30px;align-items:flex-end}.logo.small .logo-kart,.logo.small .logo-rider{-webkit-text-stroke:2px #1c3d8f}.setup{max-width:980px;margin:0 auto;padding:32px 16px 48px;display:flex;flex-direction:column;align-items:center;gap:18px}.setup-hero{text-align:center;display:flex;flex-direction:column;align-items:center}.hero-karts{display:flex;gap:14px;margin:14px 0 4px}.hero-kart{animation:bob 1.2s ease-in-out infinite}@keyframes bob{0%,to{transform:translateY(0) rotate(-2deg)}50%{transform:translateY(-8px) rotate(2deg)}}.tagline{font-family:Jua,sans-serif;font-size:20px;color:#fff;text-shadow:0 2px 0 rgba(0,0,0,.25);margin:6px 0 0}.seats{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;width:100%}.seat{background:var(--panel);border-radius:20px;padding:16px 12px 12px;display:flex;flex-direction:column;align-items:center;gap:8px;box-shadow:var(--shadow);border:4px solid var(--pc);transition:opacity .2s,transform .2s}.seat.kind-empty{opacity:.55;border-style:dashed;filter:grayscale(.6)}.seat-avatar{background:var(--pl);border-radius:50%;padding:6px}.seat-name{width:100%;text-align:center;font-family:Jua,sans-serif;font-size:20px;border:2px solid #e5e7eb;border-radius:10px;padding:6px;outline:none}.seat-name:focus{border-color:var(--pc)}.seat-kind{border:none;border-radius:999px;padding:8px 14px;font-weight:700;background:var(--pc);color:#fff;width:100%}.seat.kind-ai .seat-kind{background:#495057}.seat.kind-empty .seat-kind{background:#adb5bd}.seat-order{font-size:12px;color:var(--muted)}.map-picker{width:100%;display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.map-card{background:var(--panel);border:4px solid transparent;border-radius:18px;padding:10px 10px 12px;text-align:left;box-shadow:var(--shadow);color:inherit}.map-card.on{border-color:var(--mc, #1c7ed6)}.map-card.locked{cursor:default}.map-sketch{width:100%;height:auto;background:#e7f5ff;border-radius:12px;display:block}.map-sketch line{stroke:var(--mc, #1c7ed6);stroke-width:.28;stroke-linecap:round}.map-sketch line.alt{stroke:#e67700;stroke-width:.22}.map-sketch .start{fill:#2f9e44}.map-name{font-family:Jua,sans-serif;font-size:18px;margin-top:8px}.map-meta{font-size:12px;font-weight:700;color:var(--mc, #1c7ed6)}.map-blurb{font-size:12px;color:var(--muted);line-height:1.4;min-height:2.8em}.setup-actions{display:flex;gap:12px;align-items:center}.setup>.muted{color:#f8f9fa;text-shadow:0 1px 2px rgba(0,0,0,.4)}.mode-tabs{display:flex;background:#fffc;border-radius:999px;padding:4px;box-shadow:var(--shadow)}.mode-tabs button{border:none;background:transparent;border-radius:999px;padding:10px 22px;font-family:Jua,Noto Sans KR,sans-serif;font-size:18px;color:var(--muted)}.mode-tabs button.on{background:linear-gradient(180deg,#4dabf7,#1c7ed6);color:#fff}.online-form{width:100%;max-width:720px;display:flex;flex-direction:column;align-items:center;gap:16px}.online-field{display:flex;flex-direction:column;align-items:center;gap:6px;width:min(100%,320px);font-family:Jua,sans-serif;color:#fff;font-size:18px;text-shadow:0 1px 2px rgba(0,0,0,.4)}.online-field .seat-name{background:#fff}.online-cards{display:grid;grid-template-columns:1fr 1fr;gap:14px;width:100%}.online-card{background:var(--panel);border-radius:20px;padding:18px 16px;box-shadow:var(--shadow);display:flex;flex-direction:column;align-items:center;gap:10px;text-align:center}.online-card p{margin:0}.online-card-title{font-family:Jua,sans-serif;font-size:22px}.code-input{width:8ch;text-align:center;font-family:Jua,monospace;font-size:32px;letter-spacing:.2em;border:3px solid #e5e7eb;border-radius:12px;padding:4px 8px;outline:none;text-transform:uppercase}.code-input:focus{border-color:#1c7ed6}.privacy-toggle{display:inline-flex;background:#e9ecef;border-radius:999px;padding:3px;gap:2px}.privacy-toggle button{border:0;background:transparent;border-radius:999px;padding:5px 14px;font-family:Jua,sans-serif;font-size:15px;color:var(--muted);cursor:pointer}.privacy-toggle button.on{background:#fff;color:var(--ink);box-shadow:0 1px 3px #00000026}.room-list,.join-requests{width:100%}.room-rows{list-style:none;margin:0;padding:0;width:100%;display:flex;flex-direction:column;gap:8px;max-height:260px;overflow-y:auto}.room-row{display:flex;align-items:center;gap:12px;padding:8px 12px;border-radius:12px;background:#f1f3f5;text-align:left}.room-row-code{font-family:Jua,monospace;font-size:22px;letter-spacing:.1em;color:#1c7ed6}.room-row-info{flex:1;min-width:0;display:flex;flex-direction:column}.online-error{background:#ffe3e3;color:#c92a2a;font-weight:700;border-radius:12px;padding:8px 14px;margin:0}.room-code-box{background:var(--panel);border-radius:20px;padding:14px 24px;box-shadow:var(--shadow);display:flex;flex-direction:column;align-items:center;gap:6px;max-width:100%}.room-code{font-family:Jua,monospace;font-size:56px;letter-spacing:.25em;line-height:1;color:#1c7ed6;padding-left:.25em}.room-link{display:flex;gap:8px;align-items:center;flex-wrap:wrap;justify-content:center;max-width:100%}.room-link code{font-size:12px;color:var(--muted);overflow-wrap:anywhere}.seat-title{font-family:Jua,sans-serif;font-size:20px;min-height:32px;display:flex;align-items:center;gap:6px;flex-wrap:wrap;justify-content:center}.seat.mine{transform:translateY(-4px);box-shadow:0 0 0 4px #fff,var(--shadow)}.seat-kind.static{text-align:center;cursor:default}.badge.me{background:#1c7ed6}.badge.host{background:#f59f00}.badge.off{background:#adb5bd}.waiting{font-family:Jua,sans-serif;font-size:18px;color:#fff;text-shadow:0 1px 2px rgba(0,0,0,.4)}.room-chip{background:#fffc;border-radius:999px;padding:5px 12px;font-weight:700;font-size:13px;color:#1c7ed6;letter-spacing:.08em}.room-chip.off{color:#c92a2a}.game{min-height:100vh;display:flex;flex-direction:column}.topbar{display:flex;justify-content:space-between;align-items:center;padding:10px 18px;gap:10px;flex-wrap:wrap}.topbar-right{display:flex;gap:8px;align-items:center}.speed{display:flex;background:#fffc;border-radius:999px;padding:3px}.speed button{border:none;background:transparent;border-radius:999px;padding:5px 10px;font-size:13px;font-weight:700;color:var(--muted)}.speed button.on{background:#1c7ed6;color:#fff}.table{display:grid;grid-template-columns:250px minmax(0,1fr) 270px;gap:14px;padding:0 14px 20px;align-items:start}.side{display:flex;flex-direction:column;gap:12px}.board-col{display:flex;flex-direction:column;gap:12px;min-width:0}.board-wrap{position:relative;width:100%}.board-scale{position:absolute;top:0;left:50%;transform-origin:top center;translate:-50% 0;width:924px;height:594px}@media (max-width: 1180px){.table{grid-template-columns:1fr}.side{display:grid;grid-template-columns:1fr 1fr}.side.right{order:3}.side.left{order:1}.board-col{order:2}}@media (max-width: 720px){.seats{grid-template-columns:1fr 1fr}.map-picker,.online-cards{grid-template-columns:1fr}.room-code{font-size:44px}.table{padding:0 8px 16px}.board-col{order:0}.side{grid-template-columns:1fr 1fr;gap:8px}.player-panel{padding:8px}.pp-avatar .avatar{width:36px;height:36px}.pp-name{font-size:16px}.pp-gear-label,.pp-dice{display:none}.logo{font-size:44px}}.board{position:relative;border-radius:28px;background:repeating-linear-gradient(45deg,rgba(255,255,255,.05) 0 12px,transparent 12px 24px),radial-gradient(ellipse at center,#7bd05b,#53a83b);box-shadow:inset 0 0 0 6px #3d8b2a,inset 0 0 40px #00000040,0 18px 40px #00000059}.roads,.drift-arrows{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.road-base{stroke:#454b57;stroke-width:30;stroke-linecap:round}.road-line{stroke:#fff;stroke-width:2;stroke-dasharray:6 8;opacity:.6}.drift-path{fill:none;stroke:#9d4edd;stroke-width:4;stroke-dasharray:8 6;opacity:.85;animation:dash 1s linear infinite}@keyframes dash{to{stroke-dashoffset:-28}}.zone-label{position:absolute;font-family:Jua,sans-serif;font-size:14px;color:#fff;background:#00000047;padding:3px 10px;border-radius:999px;white-space:nowrap}.tile{position:absolute;border-radius:12px;display:flex;flex-direction:column;align-items:center;justify-content:center;background:#e9ecef;box-shadow:0 5px #00000047,inset 0 2px #fff9;border:2px solid rgba(0,0,0,.12);-webkit-user-select:none;user-select:none;transition:transform .2s}.tile:hover{transform:translateY(-2px);z-index:5}.tile-icon{font-size:20px;line-height:1}.tile-label{font-size:10px;font-weight:900;margin-top:2px;letter-spacing:-.3px}.t-road{background:#ced4da}.t-start{background:repeating-conic-gradient(#222 0,#222 25%,#fff 0,#fff 50%) 0 0 / 14px 14px}.start-flag{background:#fff;border-radius:6px;padding:2px 4px;font-family:Jua,sans-serif;font-size:12px;color:#c92a2a;box-shadow:0 2px 4px #0000004d}.t-shop{background:linear-gradient(180deg,#ffe066,#fcc419)}.t-item{background:linear-gradient(135deg,#ff8787,#ffd43b,#69db7c,#4dabf7,#9775fa);color:#fff;text-shadow:0 1px 2px rgba(0,0,0,.5)}.t-drift{background:linear-gradient(180deg,#c77dff,#7b2cbf);color:#fff}.t-luzzi1,.t-luzzi2,.t-luzzi3{background:linear-gradient(180deg,#fff3bf,#ffe066);color:#8a5a00}.t-luzzi5{background:linear-gradient(180deg,#ffe066,#f59f00);color:#6b3a00}.t-gear1,.t-gear2{background:linear-gradient(180deg,#96f2d7,#20c997);color:#064e3b}.t-crash1{background:linear-gradient(180deg,#ffa8a8,#fa5252);color:#fff}.t-crash2{background:linear-gradient(180deg,#ff6b6b,#c92a2a);color:#fff}.t-n2o1,.t-n2o2{background:linear-gradient(180deg,#a5d8ff,#339af0);color:#fff}.t-boost3{background:repeating-linear-gradient(-45deg,#22b8cf 0,#22b8cf 8px,#15aabf 8px,#15aabf 16px);color:#fff}.t-cone{background:linear-gradient(180deg,#ffd8a8,#ff922b);color:#7c2d12}.t-fall{background:radial-gradient(circle,#212529 30%,#495057);color:#fff}.fork-badge{position:absolute;top:-10px;background:#fff;color:#d9480f;font-size:9px;font-weight:900;padding:1px 5px;border-radius:6px;border:1.5px solid #d9480f}.trap-token{position:absolute;right:-6px;bottom:-6px;font-size:22px;filter:drop-shadow(0 2px 2px rgba(0,0,0,.4));animation:wobble 1.2s ease-in-out infinite}@keyframes wobble{0%,to{transform:rotate(-8deg)}50%{transform:rotate(8deg)}}.tile.pickable{cursor:pointer;z-index:50;animation:glow .9s ease-in-out infinite alternate}@keyframes glow{0%{box-shadow:0 0 0 4px #fff,0 0 12px 6px #ffd43b}to{box-shadow:0 0 0 4px #fff,0 0 24px 12px #ffd43b}}.pick-hint{position:absolute;top:-26px;white-space:nowrap;background:#1c7ed6;color:#fff;font-size:11px;font-weight:700;padding:2px 8px;border-radius:999px}.piece{position:absolute;left:0;top:0;width:0;height:0;transition-property:transform;transition-timing-function:ease-out;pointer-events:none}.piece-inner{position:absolute;left:-20px;top:-40px;animation:hop .44s ease-out;filter:drop-shadow(0 3px 2px rgba(0,0,0,.3))}.piece-inner.arrive-still{animation:none}.piece-inner.arrive-jump{animation-name:bigHop}.piece-inner.arrive-back{animation-name:backHop}@keyframes hop{0%{transform:translateY(0) scale(1)}40%{transform:translateY(-22px) scale(.92,1.1) rotate(-6deg)}75%{transform:translateY(0) scale(1.12,.86)}to{transform:translateY(0) scale(1)}}@keyframes bigHop{0%{transform:translateY(0) scale(1)}45%{transform:translateY(-70px) scale(1.35) rotate(200deg)}80%{transform:translateY(0) scale(1.15,.8) rotate(360deg)}to{transform:translateY(0) scale(1) rotate(360deg)}}@keyframes backHop{0%{transform:translateY(0) rotate(0)}35%{transform:translateY(-10px) rotate(14deg)}70%{transform:translateY(0) rotate(-10deg) scale(1.05,.9)}to{transform:translateY(0) rotate(0)}}.puff{position:absolute;left:50%;bottom:-2px;width:30px;height:12px;margin-left:-15px;border-radius:50%;background:radial-gradient(ellipse,#fffffff2,#fff0 70%);opacity:0;animation:puff .6s ease-out .15s;pointer-events:none}.arrive-still .puff{display:none}.arrive-jump .puff{animation-delay:.6s;width:60px;margin-left:-30px}@keyframes puff{0%{opacity:.9;transform:scale(.4)}to{opacity:0;transform:scale(2.2,1.4)}}.piece.finished .piece-inner{opacity:.85}.piece-halo{position:absolute;top:-14px;left:10px;font-size:18px;animation:bob 1s ease-in-out infinite}.turn-ring{position:absolute;left:-24px;top:-8px;width:48px;height:20px;border-radius:50%;border:3px solid var(--pc);box-shadow:0 0 10px var(--pc);z-index:-1;animation:ring 1s ease-in-out infinite}@keyframes ring{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.2);opacity:.6}}.floater{position:absolute;transform:translate(-50%);font-family:Jua,sans-serif;font-size:26px;white-space:nowrap;pointer-events:none;z-index:200;-webkit-text-stroke:1.5px rgba(0,0,0,.55);animation:floatUp 2.2s ease-out forwards}.floater.tone-bad{animation-name:sinkDown}@keyframes sinkDown{0%{opacity:0;transform:translate(-50%,-20px) scale(1.3)}15%{opacity:1;transform:translate(-50%) scale(1) rotate(-4deg)}30%{transform:translate(-50%) rotate(4deg)}to{opacity:0;transform:translate(-50%,36px) rotate(8deg)}}.floater.tone-good{color:#fff34d}.floater.tone-bad{color:#ff6b6b}.floater.tone-neutral{color:#fff}@keyframes floatUp{0%{opacity:0;transform:translate(-50%,10px) scale(.6)}15%{opacity:1;transform:translate(-50%) scale(1.15)}30%{transform:translate(-50%,-4px) scale(1)}to{opacity:0;transform:translate(-50%,-40px) scale(1)}}.center-panel{position:absolute;background:linear-gradient(180deg,#fffe,#f1f3f5ee);border-radius:22px;box-shadow:0 8px #00000026,inset 0 0 0 4px var(--pc);display:flex;flex-direction:column;align-items:center;justify-content:space-between;padding:12px 16px 10px;z-index:10}.turn-banner{display:flex;align-items:center;gap:10px;width:100%;animation:slideIn .4s ease-out}@keyframes slideIn{0%{transform:translate(-30px);opacity:0}}.turn-name{font-family:Jua,sans-serif;font-size:24px;color:var(--pc);-webkit-text-stroke:.5px rgba(0,0,0,.3)}.turn-name .round{font-size:13px;color:var(--muted);-webkit-text-stroke:0;margin-left:6px}.turn-hint{font-size:13px;color:var(--muted);font-weight:700}.dice-area{display:flex;align-items:center;gap:12px;min-height:76px}.dice-area{position:relative}.dice-total{font-family:Jua,sans-serif;font-size:40px;color:#e03131;animation:totalPop .55s cubic-bezier(.2,1.8,.4,1) both}.dice-total.tone-good{color:#f08c00;text-shadow:0 0 12px #ffe066,0 0 24px #ffd43b;animation:totalPop .55s cubic-bezier(.2,1.8,.4,1) both,textGlow .9s ease-in-out .55s infinite alternate}@keyframes textGlow{to{text-shadow:0 0 18px #fff3bf,0 0 36px #ffd43b;transform:scale(1.08)}}.dice-total.tone-bad{color:#868e96;animation-name:totalSag;animation-timing-function:ease-out;animation-duration:.9s}@keyframes totalPop{0%{transform:scale(.2);opacity:0}60%{transform:scale(1.5);opacity:1}to{transform:scale(1)}}@keyframes totalSag{0%{transform:translateY(-20px) scale(1.2);opacity:0}40%{transform:translateY(0) scale(1);opacity:1}to{transform:translateY(6px) rotate(8deg) scale(.92)}}.dice-verdict{position:absolute;left:50%;top:-18px;translate:-50% 0;white-space:nowrap;font-family:Jua,sans-serif;font-size:22px;padding:4px 16px;border-radius:999px;z-index:5;animation:verdictIn .5s cubic-bezier(.2,1.6,.4,1) both}.dice-verdict.tone-good{background:linear-gradient(180deg,#fff3bf,#ffd43b);color:#c2410c;box-shadow:0 4px #f08c00,0 0 20px #ffd43be6}.dice-verdict.tone-bad{background:#495057;color:#dee2e6;box-shadow:0 4px #212529;animation-name:verdictDroop;animation-duration:1.2s;animation-timing-function:ease-out}@keyframes verdictIn{0%{transform:scale(0) rotate(-12deg);opacity:0}to{transform:scale(1) rotate(0);opacity:1}}@keyframes verdictDroop{0%{transform:translateY(-16px);opacity:0}30%{transform:translateY(0);opacity:1}to{transform:translateY(4px) rotate(-5deg);opacity:1}}.dice-total small{font-size:18px;color:#1c7ed6}@keyframes popIn{0%{transform:scale(.3);opacity:0}}.center-actions{display:flex;gap:10px;min-height:56px;align-items:center}.last-event{font-size:13px;font-weight:700;color:#495057;background:#fff;border-radius:999px;padding:4px 14px;max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;box-shadow:0 2px 6px #00000014}.dice-tray{display:flex;gap:12px;perspective:600px}.die-wrap{width:48px;height:48px}.die-wrap.dim{opacity:.3}.die-wrap.bouncing{animation:dieBounce var(--roll, 1.4s) ease-out both}.die-wrap.landed{animation:dieLand .35s ease-out}@keyframes dieBounce{0%{transform:translateY(-110px) scale(1.6)}30%{transform:translateY(8px) scale(1.1)}45%{transform:translateY(-34px) scale(1.05)}62%{transform:translateY(4px) scale(1)}76%{transform:translateY(-12px)}88%{transform:translateY(2px)}to{transform:translateY(0)}}@keyframes dieLand{0%{transform:scale(1.18,.82)}to{transform:scale(1)}}.die{width:48px;height:48px;position:relative;transform-style:preserve-3d;transition:transform .35s ease-out}.die.rolling{animation:tumble var(--roll, 1.4s) cubic-bezier(.15,.6,.35,1) both}@keyframes tumble{0%{transform:rotateX(0) rotateY(0) rotate(0)}to{transform:rotateX(1440deg) rotateY(1080deg) rotate(360deg)}}.die-face{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(145deg,#fff,#e9ecef);border-radius:10px;border:1.5px solid #ced4da;display:grid;grid-template-columns:repeat(3,1fr);grid-template-rows:repeat(3,1fr);padding:6px;box-shadow:inset 0 -3px 6px #0000001a}.die-face.front{transform:translateZ(24px)}.die-face.back{transform:rotateY(180deg) translateZ(24px)}.die-face.right{transform:rotateY(90deg) translateZ(24px)}.die-face.left{transform:rotateY(-90deg) translateZ(24px)}.die-face.top{transform:rotateX(90deg) translateZ(24px)}.die-face.bottom{transform:rotateX(-90deg) translateZ(24px)}.pip{width:9px;height:9px;border-radius:50%;background:#212529;place-self:center}.pip.red{background:#e03131;width:12px;height:12px}.pip.empty{background:transparent}.card{position:relative;border-radius:14px;background:#fff;box-shadow:0 4px #00000026,0 6px 14px #0000001f;display:flex;flex-direction:column;align-items:center;text-align:center;padding:8px 8px 10px;border:3px solid #dee2e6;transition:transform .15s,box-shadow .15s}.card.size-sm{width:78px;padding:4px 4px 6px;border-width:2px;border-radius:10px}.card.size-md{width:138px;min-height:176px}.card.size-lg{width:170px;min-height:220px}.card.clickable{cursor:pointer}.card.clickable:hover{transform:translateY(-8px) rotate(-1.5deg);box-shadow:0 10px #0000001f,0 16px 24px #0003}.card.disabled{filter:grayscale(.7);opacity:.7}.card.selected{outline:4px solid #1c7ed6}.card-kind{align-self:flex-start;font-size:10px;font-weight:900;color:#fff;padding:1px 7px;border-radius:999px;background:#868e96}.card.size-sm .card-kind{font-size:8px;padding:0 5px}.card-icon{font-size:40px;line-height:1.2;margin:4px 0;filter:drop-shadow(0 3px 2px rgba(0,0,0,.2))}.card.size-sm .card-icon{font-size:22px;margin:1px 0}.card.size-lg .card-icon{font-size:58px}.card-name{font-family:Jua,sans-serif;font-size:18px}.card.size-sm .card-name{font-size:12px;line-height:1.15}.card-desc{font-size:12px;color:#495057;margin-top:4px;line-height:1.35;flex:1}.card .btn{margin-top:8px}.kind-attack.card{border-color:#ff8787;background:linear-gradient(180deg,#fff5f5,#fff 40%)}.kind-attack .card-kind{background:#fa5252}.kind-defense.card{border-color:#74c0fc;background:linear-gradient(180deg,#e7f5ff,#fff 40%)}.kind-defense .card-kind{background:#228be6}.kind-help.card{border-color:#8ce99a;background:linear-gradient(180deg,#ebfbee,#fff 40%)}.kind-help .card-kind{background:#40c057}.kind-trap.card{border-color:#ffd43b;background:linear-gradient(180deg,#fff9db,#fff 40%)}.kind-trap .card-kind{background:#f59f00}.shop-card{border-color:var(--kart);background:linear-gradient(180deg,color-mix(in srgb,var(--kart) 22%,white),#fff 45%)}.shop-card .card-kind{background:var(--kart)}.card-cost{position:absolute;top:6px;right:8px;font-weight:900;font-size:13px;color:#8a5a00}.card.size-sm .card-cost{font-size:10px;top:3px;right:4px}.kart-icon{margin:8px 0 2px}.card-back{background:linear-gradient(135deg,#4263eb,#7048e8);color:#fff;font-family:Jua,sans-serif;font-size:22px;justify-content:center}.player-panel{background:var(--panel);border-radius:var(--radius);padding:10px 12px;box-shadow:var(--shadow);border:3px solid transparent;transition:transform .25s,border-color .25s}.player-panel.is-turn{border-color:var(--pc);transform:scale(1.03);box-shadow:0 0 0 4px color-mix(in srgb,var(--pc) 30%,transparent),var(--shadow)}.player-panel.finished{background:linear-gradient(180deg,#fff9db,#fff)}.pp-head{display:flex;gap:10px;align-items:center}.pp-avatar{position:relative;background:var(--pl);border-radius:50%;padding:3px;line-height:0}.pp-rank{position:absolute;bottom:-4px;right:-6px;background:#212529;color:#fff;border-radius:999px;font-size:12px;font-weight:900;width:22px;height:22px;line-height:22px;text-align:center;border:2px solid #fff}.pp-name{font-family:Jua,sans-serif;font-size:20px;color:var(--pc);display:flex;gap:6px;align-items:center}.badge{font-family:Noto Sans KR,sans-serif;font-size:10px;font-weight:700;background:#495057;color:#fff;padding:1px 6px;border-radius:999px}.pp-sub{font-size:13px;color:#495057}.pp-gear{display:flex;align-items:center;gap:6px;margin:8px 0 6px}.pp-gear-label{font-size:12px;white-space:nowrap}.pp-gear-label b{font-size:16px}.pp-dice{font-size:12px;font-weight:900;white-space:nowrap}.gear-gauge{display:flex;gap:2px;flex:1}.gear-seg{flex:1;height:12px;border-radius:3px;background:#e9ecef;transition:background .3s}.gear-seg.on.b1{background:#69db7c}.gear-seg.on.b2{background:#ffd43b}.gear-seg.on.b3{background:#ff922b}.gear-seg.on.b4{background:#f03e3e;box-shadow:0 0 6px #f03e3e}.gear-seg.locked{background:repeating-linear-gradient(45deg,#dee2e6 0,#dee2e6 3px,#f8f9fa 3px,#f8f9fa 6px);opacity:.7}.pp-row{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.pp-items{display:flex;gap:4px}.mini-item{width:30px;height:36px;border-radius:7px;display:grid;place-items:center;font-size:18px;background:#fff;border:2px solid #dee2e6}.mini-item.empty{background:#f1f3f5;border-style:dashed}.mini-item.kind-attack{border-color:#ff8787}.mini-item.kind-defense{border-color:#74c0fc}.mini-item.kind-help{border-color:#8ce99a}.mini-item.kind-trap{border-color:#ffd43b}.pp-karts{display:flex;flex-wrap:wrap;gap:4px}.mini-kart{display:inline-flex;align-items:center;gap:2px;font-size:10px;font-weight:700;background:#f1f3f5;border-radius:6px;padding:1px 5px 1px 2px}.pp-tokens{display:flex;gap:4px;margin-top:6px;flex-wrap:wrap}.token{font-size:11px;font-weight:700;padding:2px 7px;border-radius:999px}.token.bad{background:#ffe3e3;color:#c92a2a}.token.good{background:#e7f5ff;color:#1864ab}.hand-tray{background:var(--panel);border-radius:var(--radius);box-shadow:var(--shadow);padding:12px 14px;display:flex;gap:16px;align-items:center;border-top:5px solid var(--pc);flex-wrap:wrap;min-height:90px}.muted-tray{justify-content:center;font-family:Jua,sans-serif;font-size:18px;color:var(--muted);border-top-color:#adb5bd}.hand-label{display:flex;gap:8px;align-items:center;font-size:14px}.hand-cards{display:flex;gap:12px;flex:1;align-items:flex-end;flex-wrap:wrap}.hand-slot{position:relative;display:flex;flex-direction:column;align-items:center;gap:4px}.why{font-size:11px;color:#c92a2a;max-width:138px;text-align:center}.discard-x{border:none;background:transparent;color:var(--muted);font-size:11px;text-decoration:underline}.hand-karts{display:flex;gap:6px}.market,.log{background:var(--panel);border-radius:var(--radius);box-shadow:var(--shadow);padding:10px 12px}.side-title{font-family:Jua,sans-serif;font-size:17px;margin-bottom:8px}.market-cards{display:flex;gap:6px;margin-bottom:6px}.log ul{list-style:none;margin:0;padding:0;max-height:260px;overflow:auto;display:flex;flex-direction:column;gap:4px}.log li{font-size:12px;padding:3px 8px;border-left:4px solid #ced4da;background:#f8f9fa;border-radius:0 6px 6px 0}.log li:first-child{background:#fff9db;font-weight:700}.fork-banner{background:linear-gradient(180deg,#fff3bf,#ffe066);border-radius:var(--radius);box-shadow:var(--shadow);padding:12px 16px;text-align:center;animation:popIn .3s}.fork-title{font-family:Jua,sans-serif;font-size:20px;margin-bottom:8px}.fork-buttons{display:flex;gap:10px;justify-content:center;flex-wrap:wrap;margin-bottom:6px}.fork-buttons small{display:block;font-size:11px;font-weight:400}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172a73;display:grid;place-items:center;z-index:1000;padding:16px;animation:fadeIn .2s}@keyframes fadeIn{0%{opacity:0}}.modal{position:relative;background:#fff;border-radius:24px;padding:22px 24px;max-width:460px;width:100%;max-height:92vh;overflow:auto;box-shadow:0 20px 60px #0006;animation:modalIn .28s cubic-bezier(.2,1.4,.4,1)}.modal.wide{max-width:760px}@keyframes modalIn{0%{transform:scale(.8) translateY(20px);opacity:0}}.modal-title{font-family:Jua,sans-serif;font-size:26px;text-align:center;margin-bottom:8px}.modal-close{position:absolute;top:12px;right:14px;border:none;background:#f1f3f5;border-radius:50%;width:32px;height:32px}.modal-sub{text-align:center;color:#495057;margin:0 0 14px}.modal-cards{display:flex;gap:14px;justify-content:center;flex-wrap:wrap;align-items:stretch}.modal-actions{display:flex;gap:10px;justify-content:center;margin-top:18px;flex-wrap:wrap}.who{display:inline-flex;align-items:center;gap:4px;font-weight:900;vertical-align:middle}.coin{color:#e67700}.new-card{display:flex;flex-direction:column;align-items:center;gap:4px}.new-label{font-weight:900;color:#1c7ed6;font-size:13px}.vs{align-self:center;font-size:28px;color:#adb5bd}.discard-pick{margin-top:16px;padding:12px;background:#fff5f5;border-radius:14px;text-align:center}.discard-pick p{margin:0 0 8px;font-weight:700;color:#c92a2a}.dice-choice{display:flex;gap:16px;justify-content:center;perspective:600px}.die-btn{border:none;background:#f1f3f5;border-radius:14px;padding:10px}.die-btn:hover{background:#d0ebff}.target-list{display:flex;gap:12px;justify-content:center;flex-wrap:wrap}.target-btn{border:3px solid var(--pc);background:#fff;border-radius:18px;padding:10px 14px;display:flex;flex-direction:column;align-items:center;gap:2px;min-width:110px;transition:transform .12s}.target-btn:hover,.target-btn.selected{transform:translateY(-4px);background:color-mix(in srgb,var(--pc) 15%,white)}.t-name{font-family:Jua,sans-serif;font-size:18px}.t-sub{font-size:12px;color:var(--muted)}.rules section{margin-bottom:12px}.rules h4{margin:0 0 4px;font-family:Jua,sans-serif;font-size:18px}.rules p,.rules li{font-size:14px;line-height:1.6;margin:0}.rules ol{margin:0;padding-left:20px}.announcer{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);z-index:300;display:flex;flex-direction:column;align-items:center;gap:10px;pointer-events:none;animation:announce 1.5s ease-out forwards}@keyframes announce{0%{transform:translate(-50%,-50%) scale(.2) rotate(-20deg);opacity:0}15%{transform:translate(-50%,-50%) scale(1.1) rotate(3deg);opacity:1}25%{transform:translate(-50%,-50%) scale(1) rotate(0)}80%{opacity:1}to{transform:translate(-50%,-60%) scale(.95);opacity:0}}.announce-text{display:flex;align-items:center;gap:8px;background:#212529;color:#fff;font-family:Jua,sans-serif;font-size:20px;padding:6px 16px 6px 8px;border-radius:999px;white-space:nowrap}.announce-trap,.announce-finish{background:#fff;border-radius:24px;padding:18px 28px;font-family:Jua,sans-serif;font-size:26px;text-align:center;box-shadow:0 16px 40px #00000059}.announce-finish{background:linear-gradient(180deg,#fff3bf,#ffd43b)}.big-emoji{font-size:72px}.podium{display:flex;justify-content:center;align-items:flex-end;gap:14px;margin:20px 0 8px}.podium-slot{display:flex;flex-direction:column;align-items:center;gap:4px;animation:popIn .5s both}.podium-slot:nth-child(2){animation-delay:.15s}.podium-slot:nth-child(3){animation-delay:.3s}.podium-slot:nth-child(4){animation-delay:.45s}.podium-name{font-family:Jua,sans-serif;font-size:18px;color:var(--pc)}.podium-block{width:110px;background:var(--pc);color:#fff;font-family:Jua,sans-serif;font-size:22px;text-align:center;border-radius:12px 12px 0 0;padding:10px 0}.place-1 .podium-block{height:120px;background:linear-gradient(180deg,#ffd43b,#f59f00)}.place-2 .podium-block{height:90px}.place-3 .podium-block{height:70px}.place-4 .podium-block,.dnf .podium-block{height:50px;background:#adb5bd;font-size:15px}.board{transition:filter .35s}.board-wrap.mood-good .board{filter:saturate(1.35) brightness(1.08);animation:cheerPulse .6s ease-out}.board-wrap.mood-bad .board{filter:grayscale(.75) brightness(.72);animation:shake .5s ease-in-out}.board-wrap.mood-bad.mood-big .board{animation:shake .7s ease-in-out;--shake: 14px}@keyframes cheerPulse{0%{transform:scale(1)}35%{transform:scale(1.015)}to{transform:scale(1)}}@keyframes shake{0%,to{transform:translate(0)}15%{transform:translate(calc(var(--shake, 8px) * -1),3px) rotate(-.6deg)}30%{transform:translate(var(--shake, 8px),-3px) rotate(.6deg)}45%{transform:translate(calc(var(--shake, 8px) * -.7),2px)}60%{transform:translate(calc(var(--shake, 8px) * .5),-1px)}80%{transform:translate(calc(var(--shake, 8px) * -.2))}}.fx-stage{position:absolute;top:0;right:0;bottom:0;left:0;z-index:280;pointer-events:none;overflow:hidden;display:flex;align-items:center;justify-content:center;animation:fxFade var(--fx, 1.9s) ease-out forwards}.fx-stage.good{background:radial-gradient(circle at 50% 50%,#fff4b3bf,#ffd43b40 40%,#fff0 70%)}.fx-stage.good.big{background:radial-gradient(circle at 50% 50%,#fffffff2,#ffd43b73 35%,#ff922b26 60%,#fff0 80%)}.fx-stage.bad{background:radial-gradient(circle at 50% 50%,#21252959,#0f172ac7 75%)}@keyframes fxFade{0%{opacity:0}8%{opacity:1}82%{opacity:1}to{opacity:0}}.fx-rays{position:absolute;left:50%;top:50%;width:1100px;height:1100px;margin:-550px 0 0 -550px;background:repeating-conic-gradient(#ffec998c,#ffec998c 9deg,#fff0 9deg,#fff0 22.5deg);mask-image:radial-gradient(circle,#000 0 18%,transparent 60%);-webkit-mask-image:radial-gradient(circle,#000 0 18%,transparent 60%);animation:raysSpin 6s linear infinite}@keyframes raysSpin{to{transform:rotate(360deg)}}.fx-confetti span{position:absolute;left:50%;top:48%;width:10px;height:14px;border-radius:2px;opacity:0;animation:confetti calc(var(--fx, 1.9s) * .9) cubic-bezier(.1,.7,.3,1) forwards}.fx-confetti span.wide{width:16px;height:7px}@keyframes confetti{0%{opacity:1;transform:translate(0) rotate(0) scale(.4)}45%{opacity:1;transform:translate(var(--dx),var(--dy)) rotate(calc(var(--rot) * .6)) scale(1)}to{opacity:0;transform:translate(var(--dx),calc(var(--dy) + 220px)) rotate(var(--rot)) scale(.9)}}.fx-rain span{position:absolute;top:-80px;width:2px;border-radius:2px;background:linear-gradient(180deg,#adb5bd00,#ced4dad9);animation:rain linear infinite}@keyframes rain{to{transform:translateY(720px)}}.fx-card{position:relative;display:flex;flex-direction:column;align-items:center;gap:6px;text-align:center}.fx-icon{font-size:96px;line-height:1;filter:drop-shadow(0 8px 10px rgba(0,0,0,.3))}.fx-title{font-family:Jua,sans-serif;font-size:64px;line-height:1.05;white-space:nowrap}.fx-sub{display:flex;align-items:center;gap:8px;font-family:Jua,sans-serif;font-size:20px;padding:6px 18px 6px 8px;border-radius:999px;white-space:nowrap}.fx-stage.good .fx-icon{animation:iconBurst .7s cubic-bezier(.2,1.8,.4,1) both,iconDance .9s ease-in-out .7s infinite}.fx-stage.good .fx-title{background:linear-gradient(180deg,#fff9db,#ffd43b 45%,#f76707);-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-stroke:2px #7c2d12;filter:drop-shadow(0 4px 0 #fff) drop-shadow(0 0 18px rgba(255,212,59,.9));animation:titleSlam .6s cubic-bezier(.2,1.7,.4,1) .1s both}.fx-stage.good.big .fx-title{font-size:76px;animation:titleSlam .6s cubic-bezier(.2,1.7,.4,1) .1s both,titleWiggle .5s ease-in-out .7s 3}.fx-stage.good .fx-sub{background:#fff;color:var(--ink);box-shadow:0 4px #f08c00,0 10px 24px #0003;animation:popIn .4s .35s both}@keyframes iconBurst{0%{transform:scale(0) rotate(-180deg)}to{transform:scale(1) rotate(0)}}@keyframes iconDance{0%,to{transform:translateY(0) rotate(-8deg)}50%{transform:translateY(-14px) rotate(8deg) scale(1.08)}}@keyframes titleSlam{0%{transform:scale(3);opacity:0}to{transform:scale(1);opacity:1}}@keyframes titleWiggle{0%,to{transform:rotate(0) scale(1)}25%{transform:rotate(-3deg) scale(1.06)}75%{transform:rotate(3deg) scale(1.06)}}.fx-stage.bad .fx-icon{animation:iconThud .55s cubic-bezier(.5,0,.75,0) both,iconSulk 1.6s ease-in-out .55s infinite}.fx-stage.bad .fx-title{color:#ced4da;-webkit-text-stroke:2px #212529;text-shadow:0 6px 0 rgba(0,0,0,.45);letter-spacing:.04em;animation:titleDroop calc(var(--fx, 1.9s) * .85) ease-out .2s both}.fx-stage.bad.big .fx-title{font-size:72px;color:#ff8787}.fx-stage.bad .fx-sub{background:#212529e6;color:#adb5bd;box-shadow:0 4px #000;animation:subSink .8s ease-out .45s both}.fx-cloud{position:absolute;top:-58px;font-size:64px;filter:grayscale(1) brightness(.7);animation:cloudDrift 1.6s ease-in-out infinite}@keyframes iconThud{0%{transform:translateY(-260px) scale(.8);opacity:0}70%{transform:translateY(0) scale(1);opacity:1}85%{transform:translateY(0) scale(1.25,.7)}to{transform:translateY(0) scale(1)}}@keyframes iconSulk{0%,to{transform:rotate(-6deg) translateY(4px)}50%{transform:rotate(6deg) translateY(8px)}}@keyframes titleDroop{0%{transform:translateY(-30px);opacity:0}18%{transform:translateY(0);opacity:1}26%{transform:translateY(-6px) rotate(1deg)}to{transform:translateY(18px) rotate(-5deg) scaleY(.94);opacity:.9}}@keyframes subSink{0%{transform:translateY(-10px);opacity:0}to{transform:translateY(6px);opacity:1}}@keyframes cloudDrift{0%,to{transform:translate(-10px)}50%{transform:translate(10px)}}@media (prefers-reduced-motion: reduce){.fx-rays,.fx-rain,.fx-confetti{display:none}.board-wrap.mood-good .board,.board-wrap.mood-bad .board{animation:none}}.deck-back{border-radius:14px;padding:6px;box-shadow:0 4px #0003,0 8px 16px #0000002e;border:3px solid #fff}.deck-back.item{background:repeating-linear-gradient(45deg,#ffffff24 0,#ffffff24 8px,#fff0 8px,#fff0 16px),linear-gradient(135deg,#f76707,#e8590c 30%,#c2255c 70%,#862e9c)}.deck-back.shop{background:repeating-linear-gradient(-45deg,#ffffff24 0,#ffffff24 8px,#fff0 8px,#fff0 16px),linear-gradient(135deg,#1c7ed6,#1864ab 50%,#0b7285)}.deck-back.size-sm{width:52px;height:72px;border-width:2px;border-radius:9px;padding:3px}.deck-back.size-md{width:104px;height:146px}.deck-back.size-lg{width:170px;height:236px}.deck-back-inner{width:100%;height:100%;border-radius:9px;border:2px dashed rgba(255,255,255,.6);display:flex;flex-direction:column;align-items:center;justify-content:center;color:#fff;font-family:Jua,sans-serif;text-shadow:0 2px 0 rgba(0,0,0,.25)}.deck-back-mark{font-size:48px;line-height:1}.deck-back-label{font-size:15px;letter-spacing:.2em;margin-top:4px}.deck-back.size-sm .deck-back-mark{font-size:22px}.deck-back.size-sm .deck-back-label{font-size:9px}.deck-back.size-lg .deck-back-mark{font-size:72px}.deck-piles{display:flex;gap:18px;margin:6px 0 8px}.deck-pile{display:flex;flex-direction:column;align-items:center;gap:6px}.deck-pile-stack{position:relative;width:52px;height:72px;margin:8px 0 0 8px}.deck-pile-layer{position:absolute;top:0;right:0;bottom:0;left:0}.deck-pile-count{font-size:12px;font-weight:700;color:#495057}.spread-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:900;display:grid;place-items:center;padding:16px;background:radial-gradient(circle at 50% 55%,#0f172a33,#0f172a99);animation:fadeIn .25s}.spread{display:flex;flex-direction:column;align-items:center;gap:16px;max-width:100%}.spread-title{display:flex;align-items:center;gap:10px;background:#fff;border-radius:999px;padding:6px 20px 6px 8px;font-family:Jua,sans-serif;font-size:20px;box-shadow:0 4px 0 var(--pc),0 10px 24px #00000040;animation:popIn .35s both}.spread-cards{position:relative;width:min(92vw,calc(var(--n) * 82px + 60px));height:210px}.spread-card{position:absolute;left:50%;top:30px;margin-left:-52px;border:none;background:none;padding:0;cursor:default;transform:translate(var(--x),var(--lift)) rotate(var(--rot));transform-origin:50% 120%;transition:transform .25s cubic-bezier(.2,1.4,.4,1),opacity .3s,filter .3s;animation:dealIn .5s cubic-bezier(.2,1.2,.4,1) both}@keyframes dealIn{0%{transform:translateY(60px) rotate(0) scale(.6);opacity:0}}.spread-card-wave{display:block}.spread.mine .spread-card-wave{animation:cardWave 2.4s ease-in-out infinite}@keyframes cardWave{0%,70%,to{transform:translateY(0)}80%{transform:translateY(-10px) rotate(-2deg)}90%{transform:translateY(0) rotate(1deg)}}.spread.mine .spread-card:not(:disabled){cursor:pointer}.spread.mine .spread-card:not(:disabled):hover,.spread.mine .spread-card:not(:disabled):focus-visible{transform:translate(var(--x),calc(var(--lift) - 34px)) rotate(var(--rot)) scale(1.1);z-index:5;filter:drop-shadow(0 0 14px #ffd43b);outline:none}.spread-card.chosen{z-index:10;transform:translateY(-60px) rotate(0) scale(1.3)!important;filter:drop-shadow(0 0 24px #ffd43b)!important}.spread-card.faded{opacity:.25;filter:grayscale(.6)}.spread-hint{font-family:Jua,sans-serif;font-size:20px;color:#fff;text-shadow:0 2px 4px rgba(0,0,0,.5);text-align:center}.spread.watching .spread-hint{animation:pulse 1.4s ease-in-out infinite}.flip-card{perspective:900px;width:170px;height:236px}.flip-inner{position:relative;width:100%;height:100%;transform-style:preserve-3d;animation:flipOver .9s cubic-bezier(.4,1.4,.5,1) .25s both}.flip-face{position:absolute;top:0;right:0;bottom:0;left:0;backface-visibility:hidden;-webkit-backface-visibility:hidden;display:grid;place-items:center}.flip-front{transform:rotateY(180deg)}.flip-front .card{min-height:236px;box-shadow:0 0 0 4px #fff,0 0 30px 6px #ffd43bd9}@keyframes flipOver{0%{transform:rotateY(0) scale(1)}50%{transform:rotateY(90deg) scale(1.15)}to{transform:rotateY(180deg) scale(1)}}.shop-verdict{font-family:Jua,sans-serif;font-size:22px;padding:6px 18px;border-radius:999px;animation:popIn .4s 1s both}.shop-verdict.good{background:linear-gradient(180deg,#fff3bf,#ffd43b);color:#c2410c}.shop-verdict.bad{background:#495057;color:#dee2e6}.spread.revealed .modal-actions,.spread.revealed .discard-pick{animation:popIn .3s 1.1s both}.spread .discard-pick{background:#fff;border-radius:16px;padding:10px 16px;text-align:center}.reveal-stage{position:fixed;top:0;right:0;bottom:0;left:0;z-index:950;pointer-events:none;display:grid;place-items:center}.reveal-glow{position:absolute;left:50%;top:50%;width:900px;height:900px;margin:-450px 0 0 -450px;background:repeating-conic-gradient(#ffec9980,#ffec9980 10deg,#fff0 10deg,#fff0 24deg);mask-image:radial-gradient(circle,#000 0 15%,transparent 55%);-webkit-mask-image:radial-gradient(circle,#000 0 15%,transparent 55%);animation:raysSpin 6s linear infinite,fxFade var(--fx, 1.9s) ease-out forwards}.reveal-fly{display:flex;flex-direction:column;align-items:center;gap:10px;animation:revealFly var(--fx, 1.9s) ease-in forwards}.reveal-caption{display:flex;align-items:center;gap:6px;background:#fff;border-radius:999px;padding:4px 16px 4px 6px;font-family:Jua,sans-serif;font-size:20px;box-shadow:0 6px 16px #00000040;animation:popIn .35s .9s both}@keyframes revealFly{0%{transform:translateY(0) scale(.6);opacity:0}10%{transform:translateY(0) scale(1);opacity:1}72%{transform:translateY(0) scale(1);opacity:1}to{transform:translateY(38vh) scale(.3);opacity:0}}.hand-slot{animation:handIn .45s cubic-bezier(.2,1.4,.4,1) both}@keyframes handIn{0%{transform:translateY(-40px) scale(.7);opacity:0}}@media (max-width: 720px){.spread-cards{height:170px}.spread-card{transform:translate(calc(var(--x) * .55),var(--lift)) rotate(var(--rot)) scale(.78)}.spread.mine .spread-card:not(:disabled):hover{transform:translate(calc(var(--x) * .55),calc(var(--lift) - 24px)) rotate(var(--rot)) scale(.9)}}.setup-step-title{font-family:Jua,sans-serif;font-size:24px;font-weight:400;color:#fff;text-shadow:0 2px 0 rgba(0,0,0,.25);margin:4px 0 0;text-align:center}.upgrade-offer{display:flex;align-items:center;gap:12px;flex-wrap:wrap;justify-content:center;padding:10px 14px;border-radius:12px;background:#ffffffeb;color:#343a40;font-weight:600}
