.hud{align-items:flex-start;gap:var(--space-4);padding:var(--space-2) var(--space-4);background:var(--table-felt);flex-wrap:wrap;display:flex}.hud__item{align-items:center;gap:var(--space-1);flex-direction:column;display:flex}.hud__cap{color:var(--ink-dim);font-size:var(--text-sm);text-transform:uppercase;letter-spacing:var(--border-thin)}.hud__value{font-size:var(--text-lg);line-height:1}.hud__them{color:var(--ink-dim)}.hud__bid,.hud__points{color:var(--accent)}.hud__trump{background:var(--card-face);padding:0 var(--space-1);border-radius:var(--radius-card)}.hud__trump[data-suit=S]{color:var(--suit-spade)}.hud__trump[data-suit=C]{color:var(--suit-club)}.hud__trump[data-suit=H]{color:var(--suit-heart)}.hud__trump[data-suit=D]{color:var(--suit-diamond)}.card{width:var(--card-w);height:var(--card-h);padding:0 var(--space-1);background:var(--card-face);border:var(--border-thin) solid var(--card-edge);border-radius:var(--radius-card);font-family:var(--font-ui);cursor:pointer;transition:transform var(--tap-feedback);grid-template-rows:auto 1fr;place-items:center;line-height:1;display:grid;position:relative}.card--sm{width:var(--card-w-sm);height:var(--card-h-sm)}.card--back{background-color:var(--card-back);background-image:var(--card-back-pattern);cursor:default;background-position:50%}.card--selected{transform:translateY(calc(-1 * var(--lift)));border-color:var(--accent);box-shadow:inset 0 0 0 var(--border-thick) var(--accent)}.card__check{top:var(--space-1);right:var(--space-1);background:var(--accent);color:var(--accent-ink);border-radius:var(--radius-card);font-size:var(--card-check-size);line-height:1;position:absolute}.card--sm .card__check{font-size:var(--card-check-size-sm)}.card__index{flex-direction:column;justify-self:start;align-items:center;line-height:1;display:flex}.card__rank{font-weight:700;font-size:var(--card-index-size)}.card__index-suit{font-size:var(--card-index-size)}.card--sm .card__rank,.card--sm .card__index-suit{font-size:var(--card-index-size-sm)}.card:disabled{background:var(--card-face-dim);cursor:default}.card--static{cursor:default}.card[data-suit=S]{color:var(--suit-spade)}.card[data-suit=C]{color:var(--suit-club)}.card[data-suit=H]{color:var(--suit-heart)}.card[data-suit=D]{color:var(--suit-diamond)}.card[data-suit=X]{color:var(--suit-ink-black);border-color:var(--accent)}.card[data-suit=X] .card__suit{color:var(--accent)}.card__suit{font-size:var(--card-suit-size)}.card--sm .card__suit{font-size:var(--card-suit-size-sm)}.seat{align-items:center;gap:var(--space-1);padding:var(--space-2);border-radius:var(--radius-ui);background:var(--surface);color:var(--ink-dim);font-size:var(--text-sm);flex-direction:column;display:flex}.seat--active{background:var(--surface-raised);color:var(--ink);outline:var(--border-thin) solid var(--accent)}.seat__stack{min-height:var(--seat-card-long);justify-content:center;display:flex}.seat__stack>.card--back{width:var(--seat-card-short);height:var(--seat-card-long);box-shadow:calc(-1 * var(--card-shadow-offset)) 0 var(--card-shadow-blur) var(--card-shadow-ink)}.seat__stack>.card--back+.card--back{margin-left:calc(-1 * var(--seat-card-short) + var(--fan-reveal-sm))}.seat__stack--vertical{min-height:var(--seat-stack-h);flex-direction:column;align-items:center}.seat__stack--vertical>.card--back{width:var(--seat-card-long);height:var(--seat-card-short);box-shadow:0 calc(-1 * var(--card-shadow-offset)) var(--card-shadow-blur) var(--card-shadow-ink)}.seat__stack--vertical>.card--back+.card--back{margin-left:0;margin-top:calc(-1 * var(--seat-card-short) + var(--fan-reveal-sm))}.seat__dealer{margin-left:var(--space-1);padding:0 var(--space-1);background:var(--accent);color:var(--accent-ink);border-radius:var(--radius-ui)}.seat__bid{color:var(--accent);font-size:var(--text-md);min-height:var(--text-md);line-height:1}.trick{grid-template-columns:repeat(3,1fr);grid-template-areas:".partner.""left.right"".self.";grid-template-columns:var(--card-h) var(--card-w) var(--card-h);grid-template-rows:var(--card-h) var(--card-w) var(--card-h);height:var(--trick-h);place-content:center;place-items:center;gap:0;display:grid}.trick__slot[data-pos=self]{grid-area:self}.trick__slot[data-pos=left]{grid-area:left}.trick__slot[data-pos=partner]{grid-area:partner}.trick__slot[data-pos=right]{grid-area:right}.trick__slot[data-pos=left] .card{transform:rotate(90deg)}.trick__slot[data-pos=right] .card{transform:rotate(-90deg)}.trick__slot--won .card{outline:var(--border-thick) solid var(--accent);border-radius:var(--radius-card)}.trick__slot .card{box-shadow:0 var(--card-shadow-offset) var(--card-shadow-blur) var(--card-shadow-ink)}.trick__slot[data-pos=left] .card{box-shadow:var(--card-shadow-offset) 0 var(--card-shadow-blur) var(--card-shadow-ink)}.trick__slot[data-pos=right] .card{box-shadow:calc(-1 * var(--card-shadow-offset)) 0 var(--card-shadow-blur) var(--card-shadow-ink)}.hand{justify-content:center;gap:var(--space-1);padding:var(--space-2);flex-wrap:wrap;display:flex}.hand--fan{padding-top:var(--lift);flex-wrap:nowrap;gap:0}.hand--fan>.card+.card{margin-left:calc(-1 * var(--card-w) + var(--fan-reveal))}.hand--fan>.card{box-shadow:calc(-1 * var(--card-shadow-offset)) 0 var(--card-shadow-blur) var(--card-shadow-ink)}.hand--fan>.card--selected{box-shadow:inset 0 0 0 var(--border-thick) var(--accent), calc(-1 * var(--card-shadow-offset)) 0 var(--card-shadow-blur) var(--card-shadow-ink)}.review{align-items:center;gap:var(--space-2);padding:var(--space-3);flex-direction:column;display:flex}.review__message{color:var(--ink);text-align:center;margin:0}.screen,.claim-offer{align-items:center;gap:var(--space-3);padding:var(--space-3);flex-direction:column;display:flex}.screen__prompt{color:var(--ink-dim);font-size:var(--text-sm);text-transform:uppercase;letter-spacing:var(--border-thin);margin:0}.screen__actions{justify-content:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.screen__count{color:var(--ink-dim);font-size:var(--text-sm);margin:0}.action{padding:var(--space-2) var(--space-4);background:var(--accent);color:var(--accent-ink);border-radius:var(--radius-ui);font-family:var(--font-ui);font-size:var(--text-md);cursor:pointer;border:none}.action:disabled{opacity:.4;cursor:default}.action--suit{background:var(--card-face);font-size:var(--text-lg)}.action--suit[data-suit=S]{color:var(--suit-spade)}.action--suit[data-suit=C]{color:var(--suit-club)}.action--suit[data-suit=H]{color:var(--suit-heart)}.action--suit[data-suit=D]{color:var(--suit-diamond)}.pool{grid-template-columns:repeat(auto-fill, minmax(var(--card-w), 1fr));justify-items:center;gap:var(--space-2);width:100%;padding-top:var(--lift);display:grid}.screen--full{justify-content:center;width:100%;height:100dvh}.card-note{color:var(--ink-dim);font-size:var(--text-sm);margin:0}.table{height:100dvh;max-width:var(--table-max-w);grid-template-rows:auto 1fr auto;margin-inline:auto;display:grid;overflow:hidden}.table__middle>.screen{margin-top:auto}.table__middle{justify-content:flex-start;align-items:center;gap:var(--space-2);min-height:0;padding:var(--space-2);flex-direction:column;display:flex;overflow:hidden auto}.table__seats{gap:var(--space-2);grid-template-columns:1fr 2fr 1fr;grid-template-areas:".partner.""left trick right";align-items:center;width:100%;display:grid}.table__seat--partner{grid-area:partner}.table__seat--left{grid-area:left}.table__seat--trick{grid-area:trick}.table__seat--right{grid-area:right}.table__over{color:var(--accent);font-size:var(--text-lg)}.table__you{font-size:var(--text-sm);margin:0}.table__dealer{padding:0 var(--space-1);background:var(--accent);color:var(--accent-ink);border-radius:var(--radius-ui)}.table__burned{align-items:center;gap:var(--space-1);min-height:var(--burn-h);flex-wrap:wrap;justify-content:center;display:flex}.table__burned-label{color:var(--ink-dim);font-size:var(--text-sm);text-transform:uppercase}:root{--table-ground:#12161b;--table-felt:#1a2028;--surface:#232b35;--surface-raised:#2d3743;--ink:#e8eaed;--ink-dim:#9aa3ad;--ink-inverse:#12161b;--accent:#d9a441;--accent-ink:#1a1d21;--danger:#c0392b;--card-face:#f7f5f0;--card-back:#6f849f;--card-back-line:#ffffff29;--card-back-pitch:calc(var(--card-w) / 8.5);--card-back-pattern:repeating-linear-gradient(45deg, var(--card-back-line) 0 var(--border-thin), transparent var(--border-thin) var(--card-back-pitch)), repeating-linear-gradient(-45deg, var(--card-back-line) 0 var(--border-thin), transparent var(--border-thin) var(--card-back-pitch));--card-edge:#0a0d10;--card-shadow-ink:#00000061;--card-shadow-offset:calc(var(--card-w) * .05);--card-shadow-blur:calc(var(--card-w) * .09);--card-face-dim:#d9d4ca;--suit-ink-black:#1a1d21;--suit-ink-red:#c02739;--suit-spade:var(--suit-ink-black);--suit-club:var(--suit-ink-black);--suit-heart:var(--suit-ink-red);--suit-diamond:var(--suit-ink-red);--card-w:3.25rem;--card-h:4.6rem;--card-w-sm:calc(var(--card-w) * .6923);--card-h-sm:calc(var(--card-h) * .6957);--card-suit-size:calc(var(--card-w) * .62);--card-suit-size-sm:calc(var(--card-w-sm) * .62);--card-check-size:calc(var(--card-w) * .2);--card-check-size-sm:calc(var(--card-w-sm) * .2);--card-index-size:calc(var(--card-w) * .3);--card-index-size-sm:calc(var(--card-w-sm) * .3);--table-max-w:50rem;--radius-card:.375rem;--radius-ui:.5rem;--border-thin:1px;--border-thick:2px;--lift:.75rem;--fan-reveal:calc(var(--card-w) * .6);--seat-card-long:calc(var(--card-h-sm) * 1.35);--seat-card-short:calc(var(--card-w-sm) * 1.35);--fan-reveal-sm:calc(var(--seat-card-short) * .25);--burn-h:calc(var(--card-h-sm) + var(--space-4));--seat-stack-h:calc(var(--seat-card-short) + 8 * var(--fan-reveal-sm));--trick-h:calc(2 * var(--card-h) + var(--card-w));--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-6:1.5rem;--font-ui:system-ui, -apple-system, "Segoe UI", sans-serif;--text-sm:.75rem;--text-md:.9375rem;--text-lg:1.25rem;--tap-feedback:.12s}*{box-sizing:border-box}body{background:var(--table-ground);color:var(--ink);font-family:var(--font-ui);font-size:var(--text-md);-webkit-tap-highlight-color:transparent;margin:0}@media (width>=430px) and (height>=860px){:root{--card-w:3.6rem;--card-h:5.1rem}}@media (width>=760px) and (height>=900px){:root{--card-w:4.25rem;--card-h:6rem}}@media (width>=1024px) and (height>=940px){:root{--card-w:4.75rem;--card-h:6.7rem}}
