:root{--ink: #141a30;--ink-2: #1c2440;--washi: #ece5d3;--washi-dim: #d8cfba;--sumi: #26222a;--shu: #c73e3a;--ai: #7d9cc0;--kin: #c9a227;--ghost: rgba(236, 229, 211, .28);--font-display: "Zen Kaku Gothic New", sans-serif;--font-body: "Zen Kaku Gothic New", sans-serif}*{box-sizing:border-box;margin:0;padding:0}html,body{height:100%;background:var(--ink);color:var(--washi);font-family:var(--font-body);-webkit-font-smoothing:antialiased}body{background:radial-gradient(120% 90% at 50% 40%,var(--ink-2) 0%,var(--ink) 70%)}#app{height:100%}button{font-family:var(--font-body);cursor:pointer;border:none;background:none;color:inherit}button:focus-visible{outline:2px solid var(--kin);outline-offset:2px}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}.card.svelte-2gevwt{position:relative;width:100%;aspect-ratio:5 / 7;border-radius:8px;perspective:600px;transition:transform .18s ease;-webkit-tap-highlight-color:transparent}.card.svelte-2gevwt:disabled{cursor:default}.card.hidden.svelte-2gevwt{opacity:0}.card.selected.svelte-2gevwt{transform:translateY(-14px)}.flip.svelte-2gevwt{position:absolute;top:0;right:0;bottom:0;left:0;transform-style:preserve-3d;transition:transform .56s cubic-bezier(.3,.7,.2,1);transform:rotateY(0)}.card.faceup.svelte-2gevwt .flip:where(.svelte-2gevwt){transform:rotateY(180deg)}.face.svelte-2gevwt{position:absolute;top:0;right:0;bottom:0;left:0;backface-visibility:hidden;border-radius:8px;display:grid;place-items:center}.back.svelte-2gevwt{background:linear-gradient(160deg,#232c4d,#1a2140);border:2px solid rgba(236,229,211,.22);box-shadow:inset 0 0 0 4px #ece5d30f}.card.me.svelte-2gevwt .back:where(.svelte-2gevwt){border-color:var(--ai)}.card.opp.svelte-2gevwt .back:where(.svelte-2gevwt){border-color:var(--shu)}.peek.svelte-2gevwt{position:absolute;font-family:var(--font-display);font-weight:900;font-size:clamp(1.8rem,9vw,3rem);color:#ece5d342}.note.svelte-2gevwt{font-size:.7rem;letter-spacing:.1em;color:var(--ghost)}.front.svelte-2gevwt{background:linear-gradient(170deg,var(--washi) 0%,var(--washi-dim) 100%);border:2px solid rgba(38,34,42,.35);transform:rotateY(180deg)}.card.me.svelte-2gevwt .front:where(.svelte-2gevwt){border-color:var(--ai)}.card.opp.svelte-2gevwt .front:where(.svelte-2gevwt){border-color:var(--shu)}.num.svelte-2gevwt{font-family:var(--font-display);font-weight:900;font-size:clamp(1.8rem,9vw,3rem);color:var(--sumi)}.card.selectable.svelte-2gevwt:not(:disabled):hover .front:where(.svelte-2gevwt){box-shadow:inset 0 0 0 100vmax #c9a22738}.card.selectable.svelte-2gevwt:not(:disabled):hover .back:where(.svelte-2gevwt){box-shadow:inset 0 0 0 4px #ece5d30f,inset 0 0 0 100vmax #c9a22729}.card.selected.svelte-2gevwt .front:where(.svelte-2gevwt),.card.selectable.selected.svelte-2gevwt:hover .front:where(.svelte-2gevwt){box-shadow:0 0 0 2px var(--kin),0 8px 20px #0006}.card.selected.svelte-2gevwt .back:where(.svelte-2gevwt),.card.selectable.selected.svelte-2gevwt:hover .back:where(.svelte-2gevwt){box-shadow:inset 0 0 0 4px #ece5d30f,0 0 0 2px var(--kin),0 8px 20px #0006}.card.shaking.svelte-2gevwt .flip:where(.svelte-2gevwt){animation:svelte-2gevwt-tremor .3s ease-in-out 3 both}.card.shaking.svelte-2gevwt:before,.card.shaking.svelte-2gevwt:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:8px;border:1px solid var(--kin);background:#c9a22714;animation:svelte-2gevwt-tremor .3s ease-in-out 3 both;pointer-events:none}.card.shaking.svelte-2gevwt:before{animation-delay:40ms;opacity:.8}.card.shaking.svelte-2gevwt:after{animation-delay:80ms;opacity:.45}@keyframes svelte-2gevwt-tremor{0%{transform:translate(0) rotate(0)}15%{transform:translate(-3px,1px) rotate(-1deg)}30%{transform:translate(4px,-2px) rotate(1.3deg)}45%{transform:translate(-6px,2px) rotate(-1.8deg)}60%{transform:translate(4px,-1px) rotate(1.2deg)}75%{transform:translate(-3px,1px) rotate(-.7deg)}90%{transform:translate(1px) rotate(.2deg)}to{transform:translate(0) rotate(0)}}.card.faceup.shaking.svelte-2gevwt .flip:where(.svelte-2gevwt){animation:svelte-2gevwt-tremor-up .3s ease-in-out 3 both}@keyframes svelte-2gevwt-tremor-up{0%{transform:rotateY(180deg) translate(0)}15%{transform:rotateY(180deg) translate(3px,1px)}30%{transform:rotateY(180deg) translate(-4px,-2px)}45%{transform:rotateY(180deg) translate(6px,2px)}60%{transform:rotateY(180deg) translate(-4px,-1px)}75%{transform:rotateY(180deg) translate(3px,1px)}90%{transform:rotateY(180deg) translate(-1px)}to{transform:rotateY(180deg) translate(0)}}.card.shaking.svelte-2gevwt{animation:svelte-2gevwt-ring .3s ease-in-out 3}@keyframes svelte-2gevwt-ring{0%,to{box-shadow:0 0 #c9a22700}45%{box-shadow:0 0 0 3px var(--kin),0 0 26px #c9a2278c}}.card.shaking.svelte-2gevwt .back:where(.svelte-2gevwt){animation:svelte-2gevwt-tint-back .3s ease-in-out 3}@keyframes svelte-2gevwt-tint-back{0%,to{box-shadow:inset 0 0 0 4px #ece5d30f}45%{box-shadow:inset 0 0 0 4px #ece5d30f,inset 0 0 0 100vmax #c9a22766}}.card.shaking.svelte-2gevwt .front:where(.svelte-2gevwt){animation:svelte-2gevwt-tint-front .3s ease-in-out 3}@keyframes svelte-2gevwt-tint-front{0%,to{box-shadow:inset 0 0 0 100vmax #c9a22700}45%{box-shadow:inset 0 0 0 100vmax #c9a2275c}}.card.pulse.svelte-2gevwt{animation:svelte-2gevwt-soft-pulse 1s ease-in-out 3}@keyframes svelte-2gevwt-soft-pulse{0%,to{box-shadow:0 0 #ece5d300}50%{box-shadow:0 0 0 2px #ece5d380,0 0 18px #ece5d34d}}.card.beckon.svelte-2gevwt{animation:svelte-2gevwt-beckon 1.5s ease-in-out infinite}@keyframes svelte-2gevwt-beckon{0%,to{box-shadow:0 0 #c9a22700}50%{box-shadow:0 0 0 2px var(--kin),0 0 18px #c9a22773}}@media(prefers-reduced-motion:reduce){.card.beckon.svelte-2gevwt{animation:none;box-shadow:0 0 0 2px var(--kin)}}.card.win.svelte-2gevwt .front:where(.svelte-2gevwt){box-shadow:0 0 0 2px var(--kin),0 0 18px #c9a22759}.card.lose.svelte-2gevwt .front:where(.svelte-2gevwt){box-shadow:inset 0 0 0 100vmax #26222a42}.card.lose.svelte-2gevwt .num:where(.svelte-2gevwt){color:#26222a9e}.side.svelte-1kb9ux{position:absolute;left:50%;top:50%;width:168%;height:30dvh;min-height:190px;pointer-events:none;opacity:0;transition:opacity .5s ease;z-index:-1}.side.on.svelte-1kb9ux{opacity:1}.side.top.svelte-1kb9ux{transform:translate(-50%,-100%);background:radial-gradient(ellipse at 50% 100%,#c73e3ac9,#c73e3a4d 38%,#c73e3a00 70%)}.side.bottom.svelte-1kb9ux{transform:translate(-50%);background:radial-gradient(ellipse at 50% 0%,#b2d0ec94,#b2d0ec38 38%,#b2d0ec00 70%)}.dealer.svelte-1kb9ux{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:10}.ghost.svelte-1kb9ux{position:absolute;left:0;top:0;transform-origin:50% 50%;transition-property:transform,opacity;transition-timing-function:cubic-bezier(.3,.7,.2,1);will-change:transform,opacity}.board.dealing.svelte-1kb9ux .row:where(.svelte-1kb9ux){opacity:0}.banner.svelte-1kb9ux{position:absolute;left:0;right:0;top:100%;display:grid;place-items:center;padding-top:20px;pointer-events:none;z-index:20}.banner.svelte-1kb9ux span:where(.svelte-1kb9ux){font-family:var(--font-display);font-weight:800;font-size:clamp(2.6rem,13vw,3.4rem);letter-spacing:.42em;text-indent:.42em;color:var(--kin);text-shadow:0 0 28px rgba(11,14,26,.9)}main.svelte-1kb9ux{height:100dvh;max-width:480px;margin:0 auto;display:flex;flex-direction:column;padding:max(env(safe-area-inset-top),12px) 16px max(env(safe-area-inset-bottom),12px)}header.svelte-1kb9ux{display:flex;align-items:center;justify-content:space-between;padding-bottom:6px}h1.svelte-1kb9ux{font-family:var(--font-display);font-weight:700;font-size:1.35rem;letter-spacing:.35em}.exit.svelte-1kb9ux{display:grid;place-items:center;width:34px;height:34px;margin-right:-6px;color:#ece5d373;transition:color .15s ease}.exit.svelte-1kb9ux:hover{color:var(--washi)}.exit.svelte-1kb9ux svg:where(.svelte-1kb9ux){width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}.board.svelte-1kb9ux{position:relative;z-index:0;flex:0 0 auto;display:flex;flex-direction:column;justify-content:center;gap:0;min-height:0;margin-top:auto}.board.center.svelte-1kb9ux{flex:1;align-items:center}.row.svelte-1kb9ux{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;padding:0 6px}.lanes.svelte-1kb9ux{position:relative;height:52px}.lanes.svelte-1kb9ux:before{content:"";position:absolute;left:-16px;right:-16px;top:50%;height:1px;background:linear-gradient(to right,transparent,rgba(236,229,211,.32) 12%,rgba(236,229,211,.32) 88%,transparent);opacity:1;transition:opacity .5s ease}.board.dealing.svelte-1kb9ux .lanes:where(.svelte-1kb9ux):before{opacity:0}.dock.svelte-1kb9ux{margin-bottom:auto;min-height:118px;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:10px;padding-top:20px;text-align:center}.hint.svelte-1kb9ux{font-size:.82rem;color:var(--washi-dim);letter-spacing:.06em}.waiting.svelte-1kb9ux{animation:svelte-1kb9ux-breathe 2.2s ease-in-out infinite}@keyframes svelte-1kb9ux-breathe{0%,to{opacity:.45}50%{opacity:1}}.guide.svelte-1kb9ux{font-family:var(--font-display);font-size:1.15rem;font-weight:700;letter-spacing:.1em;color:var(--ai)}.guide.opp.svelte-1kb9ux{color:var(--shu)}.guide-note.svelte-1kb9ux{font-size:.88rem;letter-spacing:.08em;color:#ece5d380;margin-top:-4px}.toast.svelte-1kb9ux{font-family:var(--font-display);font-size:1rem;letter-spacing:.2em;color:var(--kin)}.actions.svelte-1kb9ux{display:flex;gap:10px;width:100%;max-width:340px;padding:0 6px}.act.svelte-1kb9ux{flex:1;padding:12px 0;border:1px solid var(--washi-dim);border-radius:6px;color:var(--washi);font-size:.95rem;letter-spacing:.12em;white-space:nowrap;transition:opacity .15s ease,transform .12s ease}.act.beckon.svelte-1kb9ux{border-color:var(--kin);animation:svelte-1kb9ux-act-beckon 1.5s ease-in-out infinite}@keyframes svelte-1kb9ux-act-beckon{0%,to{box-shadow:0 0 #c9a22700}50%{box-shadow:0 0 0 2px var(--kin),0 0 16px #c9a22759}}@media(prefers-reduced-motion:reduce){.act.beckon.svelte-1kb9ux{animation:none;box-shadow:0 0 0 2px var(--kin)}}.act.spent.svelte-1kb9ux{font-size:.78rem;letter-spacing:.04em}.primary.svelte-1kb9ux{padding:12px 22px;border-radius:6px;font-size:.95rem;letter-spacing:.2em;background:var(--washi);color:var(--sumi);font-weight:700;transition:opacity .15s ease,transform .12s ease}.act.svelte-1kb9ux:not(:disabled):active,.primary.svelte-1kb9ux:not(:disabled):active{transform:translateY(1px)}button.svelte-1kb9ux:disabled{opacity:.3;cursor:default}.verdict.svelte-1kb9ux{font-family:var(--font-display);font-size:1.5rem;letter-spacing:.3em;color:var(--kin)}.score.svelte-1kb9ux{font-family:var(--font-display);color:var(--washi-dim);letter-spacing:.2em}.menu.svelte-1n46o8q{height:100dvh;max-width:480px;margin:0 auto;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:28px;padding:24px}h1.svelte-1n46o8q{font-family:var(--font-display);font-weight:800;font-size:2.4rem;letter-spacing:.34em;text-indent:.34em}.menu-block.svelte-1n46o8q{display:flex;flex-direction:column;align-items:center;gap:12px;width:100%;max-width:300px}.primary.svelte-1n46o8q{width:100%;padding:14px 22px;border-radius:6px;background:var(--washi);color:var(--sumi);font-weight:700;font-size:.95rem;letter-spacing:.2em}.ghostbtn.svelte-1n46o8q{flex:1;padding:12px 10px;border-radius:6px;border:1px solid var(--washi-dim);color:var(--washi);font-size:.9rem;letter-spacing:.15em}.pair.svelte-1n46o8q{display:flex;gap:10px;width:100%}.pair.narrow.svelte-1n46o8q{max-width:300px}input.svelte-1n46o8q{width:100%;padding:10px 12px;border-radius:6px;border:1px solid rgba(236,229,211,.35);background:#ece5d30f;color:var(--washi);font-family:var(--font-body);font-size:1rem;letter-spacing:.2em;text-align:center}input.svelte-1n46o8q::placeholder{color:#ece5d34d;letter-spacing:.1em}input.svelte-1n46o8q:focus-visible{outline:2px solid var(--kin);outline-offset:1px}.err.svelte-1n46o8q{font-size:.68rem;letter-spacing:.1em}.err.svelte-1n46o8q{color:var(--shu)}.howtolink.svelte-1n46o8q{font-size:.78rem;color:var(--washi-dim);letter-spacing:.22em;text-indent:.22em;padding:4px 2px;border-bottom:1px solid rgba(236,229,211,.25)}.devlink.svelte-1n46o8q{font-size:.7rem;color:#ece5d359;letter-spacing:.15em;border-bottom:1px dotted rgba(236,229,211,.25)}button.svelte-1n46o8q:disabled{opacity:.4}
