.sound-toggle{background:var(--btn,#00000040);width:36px;min-width:36px;height:36px;color:var(--ink,#fff);cursor:pointer;border:0;border-radius:50%;place-items:center;padding:0;display:inline-grid}.sound-toggle svg{width:20px;height:20px}.sound-toggle[aria-pressed=true]{opacity:.7}.sound-toggle:focus-visible{outline:3px solid var(--focus,#ffd54a);outline-offset:2px}.card{width:var(--cw);height:var(--ch);border-radius:calc(var(--cw) * .08);border:1px solid var(--card-edge,#c9cfc6);background:var(--card,#fdfdfb);font:inherit;padding:0;position:relative;overflow:hidden;box-shadow:0 1px 2px #00000059,0 5px 12px #00000038}button.card{cursor:pointer}.card:not(.back){background-image:repeating-linear-gradient(0deg,#00000005 0 1px,#0000 1px 3px),repeating-linear-gradient(90deg,#00000004 0 1px,#0000 1px 3px)}.card:after{content:"";border-radius:inherit;pointer-events:none;z-index:2;background:linear-gradient(155deg,#fff3,#fff0 28%),linear-gradient(#0000 88%,#0000000f);position:absolute;inset:0;box-shadow:inset 0 0 0 1px #ffffff80}.card.back:after{box-shadow:none;background:linear-gradient(155deg,#ffffff47,#fff0 38%)}.card{container-type:inline-size}.card .face{pointer-events:none;background:50%/100% 100% no-repeat;display:none;position:absolute;inset:0}@container (width>=72px){.card .face{display:block}.card .corner,.card .pip{display:none}}@container (width>=44px) and (width<=71.99px){.card .face.court{background-position:50% 58%;background-size:150% 142%;border-radius:4px;display:block;inset:30% 7% 5%;box-shadow:inset 0 0 0 1px #0000001f}.card .face.court~.pip{display:none}.card .pip:has(~.face.court){display:none}}.card.red{color:var(--red,#c0262d)}.card.black{color:var(--black,#16181a)}.card .corner{letter-spacing:-.02em;font-weight:700;line-height:1;font-size:calc(var(--cw) * .24);position:absolute;top:3%;left:6%}.card .pip{font-size:calc(var(--cw) * .5);line-height:1;position:absolute;bottom:4%;right:8%}.card.back{background:var(--card-back-image,repeating-linear-gradient(45deg, var(--back-a,#2d4f9e) 0 6px, var(--back-b,#22407f) 6px 12px)) center / 100% 100% no-repeat;border:2px solid var(--card,#fdfdfb)}.card:focus-visible{outline:3px solid var(--focus,#ffd54a);outline-offset:1px}:root{--lamp:radial-gradient(ellipse 70% 50% at 50% 42%, #fffae121, transparent 70%);--vignette:radial-gradient(ellipse 120% 90% at 50% 45%, transparent 55%, #00000080);--felt:#2a5d34;--felt-edge:#1e4526;--ink:#f4f7f2;--slot:#ffffff47;--btn:#00000038;--dialog:#fdfdfb;--dialog-ink:#16181a;--focus:#ffd54a;--lightningcss-light:initial;--lightningcss-dark: ;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--felt:#173a1f;--felt-edge:#102a16;--card:#e9ebe6;--dialog:#1d2420;--dialog-ink:#eef2ec;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}:root[data-theme=dark]{--felt:#173a1f;--felt-edge:#102a16;--card:#e9ebe6;--dialog:#1d2420;--dialog-ink:#eef2ec;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}html,body{height:100%;margin:0}body{background:url(./table-landscape-HlPBcCyL.webp) center / 100% 100% no-repeat, radial-gradient(ellipse at top, var(--felt), var(--felt-edge));color:var(--ink);-webkit-tap-highlight-color:transparent;-webkit-user-select:none;user-select:none;font:14px/1.3 system-ui,-apple-system,Segoe UI,Roboto,sans-serif;overflow:hidden}#app{--edge-x:4.8vw;--edge-t:3.6vh;--edge-b:3vh;box-sizing:border-box;height:100dvh;padding:var(--edge-t) var(--edge-x) var(--edge-b);flex-direction:column;display:flex}@media (orientation:portrait){#app{--edge-x:7.8vw;--edge-t:2vh;--edge-b:1.8vh}}.bar{flex-wrap:wrap;justify-content:center;align-items:center;gap:6px;padding:8px 8px 0;display:flex}.btn{font:inherit;color:var(--ink);background:var(--btn);cursor:pointer;border:0;border-radius:8px;min-height:34px;padding:7px 12px}.btn:disabled{opacity:.45;cursor:default}.btn:focus-visible{outline:3px solid var(--focus);outline-offset:1px}.stats{font-variant-numeric:tabular-nums;opacity:.9;align-items:center;gap:12px;margin:0 4px;display:flex}.stats .sound-toggle{width:30px;min-width:30px;height:30px}.stats .deal{font-weight:600}.board{--gap:clamp(3px, 1.2vw, 12px);--cw:min(calc((100vw - 2 * var(--edge-x) - 16px - 7 * var(--gap)) / 8), 90px, calc((100dvh - var(--edge-t) - var(--edge-b) - 100px) / 5.2));--ch:calc(var(--cw) * 1.4);overscroll-behavior:contain;align-items:center;gap:calc(var(--gap) * 1.5);flex-direction:column;flex:1;min-height:0;padding:8px;display:flex;overflow-y:auto;container-type:size}.row{grid-template-columns:repeat(8, var(--cw));gap:var(--gap);display:grid}.slot{width:var(--cw);height:var(--ch);border-radius:calc(var(--cw) * .08);outline:2px dashed var(--slot);outline-offset:-2px;position:relative}.slot .card{position:absolute;inset:0}.foundation:after{content:"A";font-size:calc(var(--cw) * .35);color:var(--slot);pointer-events:none;place-items:center;display:grid;position:absolute;inset:0}.foundation:has(.card):after{content:none}.col{--off:max(calc(var(--ch) * .2), min(calc(var(--ch) * .32), calc((100cqh - 16px - var(--gap) * 3 - 18px - var(--ch) * 2) / max(var(--n) - 1, 1))));height:calc(var(--ch) + (var(--n) - 1) * var(--off));min-height:var(--ch);position:relative}.col:empty{outline:2px dashed var(--slot);outline-offset:-2px;border-radius:calc(var(--cw) * .08)}.col .card{left:0;top:calc(var(--i) * var(--off));position:absolute}.hint{opacity:.75;margin:0;font-size:12px}.shake{animation:.28s shake}@keyframes shake{25%{transform:translate(-4px)}75%{transform:translate(4px)}}@media (prefers-reduced-motion:reduce){.shake{animation:none}}.overlay{background:#00000073;place-items:center;padding:16px;display:grid;position:fixed;inset:0}.overlay[hidden]{display:none}.overlay.soft{pointer-events:none;background:0 0;align-items:end}.overlay.soft .dialog{pointer-events:auto}.dialog{background:var(--dialog);color:var(--dialog-ink);text-align:center;border-radius:14px;flex-direction:column;gap:10px;max-width:360px;padding:20px 24px;display:flex;box-shadow:0 10px 40px #0006}.dialog h2{margin:0;font-size:22px}.dialog p{margin:0}.dialog .btn{background:var(--felt);color:#fff}@media (max-height:460px){.bar{padding-top:4px}.btn{min-height:30px;padding:4px 8px}.hint{display:none}}@media (orientation:portrait){body{background-image:url(./table-portrait-Ygk3nIIw.webp), radial-gradient(ellipse at top, var(--felt), var(--felt-edge))}}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) body{box-shadow:inset 0 0 0 100vmax #00000047}}:root[data-theme=dark] body{box-shadow:inset 0 0 0 100vmax #00000047}
