:root{--safe-top:env(safe-area-inset-top,0px);--safe-bottom:env(safe-area-inset-bottom,0px);--move-draw-ms:.24s;--move-discard-ms:.26s;--move-play-ms:.38s;--move-swap-ms:.51s;--move-blindSwap-ms:.84s;--move-penalty-ms:.32s;--move-look-ms:.9s;--move-lift-ms:.75s;--move-ease:cubic-bezier(.33, .02, .24, 1);--move-settle-ms:.12s;--swap-call-ms:.63s;--slot-changed-pulse-ms:.6s;--slot-changed-fade-ms:.4s;--slot-changed-brief-ms:3s;--jari-call-ms:4.4s;--jari-call-stamp-ms:.42s;--jari-call-glow-ms:.7s;--jari-call-flash-ms:.7s;--jari-call-fly-ms:.58s;--beat-gap-ms:.18s;--power-lost-guard-ms:.9s;--place-guard-ms:.22s;--claim-travel-ms:.26s;--claim-travel-ease:cubic-bezier(.3, .7, .3, 1);--claim-land-ms:.14s;--claim-hold-ms:.42s;--claim-walkback-ms:.26s;--claim-walkback-ease:cubic-bezier(.4, 0, .6, 1);--race-stagger-ms:.15s;--reveal-flip-ms:.15s;--face-down-ms:.26s;--face-down-ease:cubic-bezier(.6, 0, .4, 1);--peek-arm-ms:1.1s;--peek-cascade-ms:90ms;--face-up-ms:.2s;--draw-lift-ms:.16s;--discard-settle-ms:.14s;--badge-pop-ms:.16s;--badge-hold-ms:2.6s;--badge-fade-ms:.4s;--banner-slide-ms:.26s;--takeover-pulse-ms:.9s;--countdown-blink-ms:.6s;--chat-bar-h:60px;--seat-head-h:24px;--chat-open-h:calc(var(--chat-bar-h) + 52px);--react-pop-h:calc(var(--chat-bar-h) + 108px);--end-settle-ms:.55s;--end-stakes-ms:1.2s;--end-flip-ms:.22s;--end-reveal-tail-ms:.5s;--end-reveal-cap-ms:2.6s;--end-standings-ms:1.1s;--card-retry-ms:.8s;--rules-opponent-ms:.9s;--rules-reveal-ms:1.8s;--emote-hold-ms:4.2s;--screen-fade-ms:.18s;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:20px;--card-w:clamp(44px, min(12vw, 7.2svh), 64px);--card-h:calc(var(--card-w) * 1.4);--card-radius:6px;--grid-gap:var(--space-2);--pile-card-w:clamp(44px, min(16vw, 9svh), 84px);--pile-card-h:calc(var(--pile-card-w) * 1.4);--font-ui:system-ui, -apple-system, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--font-display:"Bodoni 72", "Bodoni MT", "Didot", "Playfair Display", Georgia, "Times New Roman", serif;--font-size-xs:11px;--font-size-s:12px;--font-size-m:15px;--font-size-l:19px;--felt:#1d5c3e;--felt-edge:#14432d;--surface:#10241a;--card-face:#faf7f0;--card-back:#7a2530;--card-back-edge:#5c1a23;--card-red:#c22f2f;--card-black:#1c1c22;--text:#f2efe8;--text-dim:#b9c4bc;--accent:#e8b04b;--danger:#e05252;--ok:#57c46b;--danger-deep:#a32020;--countdown-text:#ffd889;--countdown-hot:#ff8f8f;--bot:#7f9fd1;--badge-bg:#2b2b33;--plain-bg:#171a18;--plain-card:#232823;--plain-border:#3a423b;--jari:#d92b2b;--jari-glow:#d92b2b8c;--jari-bright:#ff6b6b;--card-lift:0 6px 14px #00000073, 0 1px 0 #ffffff1a;--card-mine:#f0c661;--card-theirs:#6fb2e8;--card-mine-glow:#f0c661a6;--card-theirs-glow:#6fb2e899;--seat-1:#6bc3f4;--seat-2:#d773d0;--seat-3:#e4d6ff;--seat-4:#7a92fd;--seat-5:#b495fe;--seat-6:#8ce9f4;--seat-7:#f3aad3;--slot-empty:#ffffff14;--panel:#0000003d;--panel-edge:#ffffff12;--panel-deep:#0000004d;--on-accent:#241a05;--accent-light:#f4ca72;--accent-deep:#c68d2a;--backing:#00000073;--overlay:#123420;--overlay-edge:#0a1a12;--peek-bg:#143725;--peek-bg-edge:#0a1c13;--banner-warn-bg:#4a3a12;--banner-bot-bg:#23324a;--entry-fade:#141814e6;--scrim:#060e0ae0;--corner-bg:#08140ed1;--pop-bg:#08140ef0;--log-bg:#08140e8c;--field-bg:#08140eeb;--bar-bg:#10241a8c;--foot-fade-rgb:10, 26, 18;--ask-ink:#1c1c22}:root[data-scheme=peach]{--felt:#fdc688;--felt-edge:#f6b876;--surface:#fdc688;--card-back:#c32952;--card-back-edge:#ad2148;--text:#3a0a2c;--text-dim:#66295a;--accent:#9c1239;--danger:#a3142a;--ok:#0f5a27;--countdown-text:#3a0a2c;--countdown-hot:#a3142a;--bot:#2d5190;--badge-bg:#fff3de;--plain-bg:#ffe4bf;--plain-card:#fff3de;--plain-border:#e8b689;--jari-bright:#a3142a;--card-mine:#a35a00;--card-theirs:#2f5bd6;--card-mine-glow:#a35a008c;--card-theirs-glow:#2f5bd680;--seat-1:#2f5bd6;--seat-2:#0f7f86;--seat-3:#7b3fbf;--seat-4:#2c7a3e;--seat-5:#8d2f6b;--seat-6:#4a5f8f;--seat-7:#a8329a;--slot-empty:#3a0a2c14;--panel:#fff3de;--panel-edge:#3a0a2c1f;--panel-deep:#ffe9cf;--on-accent:#fff3de;--accent-light:#b5204a;--accent-deep:#7d0b2c;--backing:#fff3dee0;--overlay:#fbd0a3;--overlay-edge:#f3ad6a;--peek-bg:#fbd0a3;--peek-bg-edge:#f3ad6a;--banner-warn-bg:#ffe6b3;--banner-bot-bg:#dfe6f7;--entry-fade:#ffe9cf;--scrim:#3a0a2c80;--corner-bg:#fff3deeb;--pop-bg:#fff3def7;--log-bg:#ffe9cfb3;--field-bg:#fffaf1f2;--bar-bg:#fff3de8c;--foot-fade-rgb:251, 208, 163;--ask-ink:#fff3de}@property --card-w{syntax:"<length>";inherits:true;initial-value:48px}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent;margin:0}html,body{overscroll-behavior:none}body{font-family:var(--font-ui);font-size:var(--font-size-m);color:var(--text);background:var(--surface);touch-action:manipulation}button{font:inherit}*{scrollbar-width:thin;scrollbar-color:#ffffff38 transparent}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:#ffffff38;border-radius:999px}::-webkit-scrollbar-thumb:hover{background:#ffffff57}::-webkit-scrollbar-corner{background:0 0}input:focus-visible,textarea:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.dim{color:var(--text-dim)}.error{color:var(--danger)}.screen.plain{justify-content:center;align-items:center;gap:var(--space-4);background:radial-gradient(ellipse at 50% 0%,  color-mix(in srgb, var(--felt) 40%, transparent) 0%, transparent 60%), var(--plain-bg);min-height:100dvh;padding:var(--space-4);text-align:center;flex-direction:column;display:flex;position:relative;overflow:hidden}.screen.plain>:not(.bg-clip){z-index:1;position:relative}.screen.plain>h2{font-family:var(--font-display)}.wordmark{font-family:var(--font-display);letter-spacing:-.015em;color:var(--jari);text-shadow:0 0 26px var(--jari-glow), 0 2px 0 #00000059;margin-bottom:var(--space-2);font-size:clamp(44px,13vw,76px);font-weight:700;line-height:1}.bg-clip{z-index:0;pointer-events:none;position:absolute;inset:0;overflow:hidden}.bg-drift{pointer-events:none;width:max(100%,1000px);position:absolute;top:0;bottom:0;left:50%;transform:translate(-50%)}.bg-card{width:calc(58px * var(--drift-scale,1));aspect-ratio:1/1.4;perspective:600px;opacity:.16;animation-name:drift;animation-timing-function:linear;animation-iteration-count:infinite;position:absolute;top:-22vh}@keyframes drift{to{transform:translateY(128vh)}}.bg-card-inner{width:100%;height:100%;transform-style:preserve-3d;animation:bg-flip var(--flip-dur,14s) linear infinite;animation-delay:var(--flip-delay,0s);position:relative}@keyframes bg-flip{0%{transform:rotateY(0deg) rotate(calc(var(--spin) * -4deg))}25%{transform:rotateY(90deg)rotate(0)}50%{transform:rotateY(180deg) rotate(calc(var(--spin) * 4deg))}75%{transform:rotateY(270deg)rotate(0)}to{transform:rotateY(360deg) rotate(calc(var(--spin) * -4deg))}}.bg-side{backface-visibility:hidden;position:absolute;inset:0}.bg-behind{transform:rotateY(180deg)}.bg-card-art{width:100%;height:100%;box-shadow:none;outline:none;animation:none}.field{gap:var(--space-1);color:var(--text-dim);font-size:var(--font-size-s);flex-direction:column;display:flex}.disclosure{max-width:320px;margin:var(--space-2) 0;color:var(--text-dim);font-size:var(--font-size-s);text-align:center}.games-list{gap:var(--space-2);overscroll-behavior:contain;flex-direction:column;width:min(100%,460px);max-height:55dvh;display:flex;overflow-y:auto}.game-row{padding:var(--space-3);border:1px solid var(--plain-border);background:linear-gradient(160deg, var(--plain-card), var(--entry-fade));color:var(--text);font:inherit;text-align:left;cursor:pointer;border-radius:10px;flex-direction:column;flex-shrink:0;gap:2px;min-height:44px;transition:border-color .14s ease-out;display:flex}.round-card-lines.games-card{overscroll-behavior:contain;width:min(100%,460px);max-height:60dvh;overflow-y:auto}.game-sub{flex-direction:column;gap:2px;display:flex}.game-when{font-size:var(--font-size-s);color:var(--text-dim)}.game-who{font-family:var(--font-display);font-size:16px;font-weight:700;line-height:1.25}.game-ending{font-size:var(--font-size-s);color:var(--text-dim)}.game-row:hover,.game-row:focus-visible{border-color:var(--accent)}.profile-rows{align-items:center;gap:var(--space-2);flex-direction:column;width:min(100%,460px);display:flex}.profile-line{font-size:var(--font-size-s);color:var(--text-dim);line-height:1.4}.profile-heading{font-family:var(--font-display);color:var(--text);font-size:15px;font-weight:700}.circle-list{max-height:22dvh}.games-list-short{max-height:38dvh}.circle-rounds{max-height:40dvh}a.game-row{text-decoration:none}.game-row-flat{cursor:default}.game-row-flat:hover{border-color:var(--plain-border)}.circle-made{align-items:center;gap:var(--space-2);flex-direction:column;width:min(100%,460px);display:flex}.circle-link-row{align-items:stretch;gap:var(--space-2);width:100%;display:flex}.field select,.field input,.field textarea,.circle-link-row input{font:inherit;color:var(--text);background:var(--plain-card);border:1px solid var(--plain-border);padding:var(--space-2) var(--space-3);border-radius:6px;min-width:220px;min-height:44px}.circle-link-row input{flex:auto;min-width:0}.account-offer{gap:var(--space-2);text-align:center;flex-direction:column;width:min(100%,460px);display:flex}.account-form{gap:var(--space-2);width:100%;display:flex}.account-email{min-width:0;min-height:44px;padding:0 var(--space-3);color:var(--text);font:inherit;font-size:var(--font-size-s);background:#00000040;border:1px solid #ffffff2e;border-radius:999px;flex:auto}.account-email::placeholder{color:var(--text-dim)}.attach-choices{gap:var(--space-3);flex-wrap:wrap;justify-content:center;display:flex}.attach-answer{text-align:center;max-width:34ch}.account-offer>button{align-self:center}.signin-disclosure{max-width:none;margin:0}.account-code{text-align:center;letter-spacing:.2em;font-variant-numeric:tabular-nums}.research-finding{gap:var(--space-2);overscroll-behavior:contain;width:min(100%,640px);max-height:68dvh;padding:var(--space-3) var(--space-4);border:1px solid var(--plain-border);background:linear-gradient(160deg, var(--plain-card), var(--entry-fade));text-align:left;border-radius:12px;flex-direction:column;line-height:1.5;display:flex;overflow-y:auto}.research-number,.research-status{font-size:var(--font-size-s);color:var(--text-dim)}.research-title{font-family:var(--font-display);margin:0;font-size:20px;line-height:1.25}.research-body{gap:var(--space-2);flex-direction:column;display:flex}.research-body h3,.research-body h4,.research-body h5,.research-body h6{font-family:var(--font-display);margin:var(--space-2) 0 0;font-size:17px}.research-body h4,.research-body h5,.research-body h6{font-size:15px}.research-body p,.research-body ul,.research-body ol,.research-body blockquote{margin:0}.research-body ul,.research-body ol{gap:var(--space-1);flex-direction:column;padding-left:1.3em;display:flex}.research-body blockquote{padding-left:var(--space-3);border-left:3px solid var(--plain-border);color:var(--text-dim)}.research-body code{overflow-wrap:anywhere;background:#0000004d;border-radius:4px;padding:0 4px;font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:.88em}.research-body a{color:var(--accent)}.research-table{overscroll-behavior-x:contain;max-width:100%;overflow-x:auto}.research-table table{border-collapse:collapse;font-size:var(--font-size-s)}.research-table th,.research-table td{padding:var(--space-1) var(--space-2);border-bottom:1px solid var(--plain-border);vertical-align:top}.research-table th{color:var(--text);font-weight:700}.terms-page ul{list-style:outside}.terms-delete{align-items:flex-start;gap:var(--space-2);margin-top:var(--space-2);flex-direction:column;display:flex}.terms-delete .attach-choices{justify-content:flex-start}.terms-delete-answer{color:var(--text-dim)}.disclosure a{color:inherit;text-underline-offset:3px}.screen.plain.daily-page{justify-content:flex-start;overflow:hidden auto}.daily-promise{width:min(100%,460px);line-height:1.4}.daily-result-block{align-items:center;gap:var(--space-2);flex-direction:column;width:min(100%,460px);display:flex}.daily-result{width:100%;padding:var(--space-3);border:1px solid var(--plain-border);color:var(--text);font:inherit;text-align:left;white-space:pre-wrap;overflow-wrap:anywhere;-webkit-user-select:all;user-select:all;background:#0000004d;border-radius:10px;margin:0;line-height:1.5}.daily-named{align-items:center;gap:var(--space-2);min-height:44px;font-size:var(--font-size-s);color:var(--text);cursor:pointer;display:flex}.daily-board{max-height:none;overflow-y:visible}.daily-board .game-row{justify-content:space-between;align-items:center;gap:var(--space-3);flex-direction:row}.daily-board .game-who{overflow-wrap:anywhere;min-width:0}.daily-board .game-ending{font-variant-numeric:tabular-nums;white-space:nowrap;flex:none}.game-row.daily-mine{border-color:var(--accent)}.daily-practice-end{width:min(100%,460px);line-height:1.4}.end-daily{align-items:center;gap:var(--space-3);flex-direction:column;width:min(100%,460px);display:flex}.end-daily .daily-board{width:100%}.report-names{align-items:center;gap:var(--space-1);flex-direction:column;display:flex}.report-name-row{justify-content:center;align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.screen.plain.admin-page{justify-content:flex-start;overflow:hidden auto}.admin-section{gap:var(--space-2);text-align:left;flex-direction:column;width:min(100%,460px);display:flex}.admin-count{color:var(--text-dim);font-weight:400}.admin-list{gap:var(--space-2);flex-direction:column;display:flex}.admin-row,.admin-text,.admin-line{overflow-wrap:anywhere}.admin-text{color:var(--text);white-space:pre-wrap;line-height:1.4}.admin-line{text-align:left;max-width:none;margin:0}.admin-form{margin-top:var(--space-1)}.admin-minutes{text-align:center;flex:0 0 5em}.admin-restart,.admin-admins{align-items:stretch;gap:var(--space-2);flex-direction:column;display:flex}.admin-restart .attach-choices{justify-content:flex-start}.admin-person{justify-content:space-between;align-items:center;gap:var(--space-2);min-width:0;display:flex}.admin-person .admin-text{min-width:0}.choice-set{gap:var(--space-1);border:0;flex-direction:column;margin:0;padding:0;display:flex}.choice-set legend{margin-bottom:var(--space-2);color:var(--text-dim);font-size:var(--font-size-s);padding:0}.choice-row{justify-content:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.choice-row:not(.choice-row-wide){gap:4px}.choice-row:not(.choice-row-wide) .choice{flex:1 1 0;min-width:44px;max-width:72px}.choice-row-wide .choice{text-align:left;min-height:0;padding:10px var(--space-3);flex:100%;align-items:flex-start}@media (width<=559px){.choice-row-wide{gap:1px}.choice-row-wide .choice:not(:first-child):not(:last-child){border-radius:0}.choice-row-wide .choice:first-child{border-radius:12px 12px 0 0}.choice-row-wide .choice:last-child{border-radius:0 0 12px 12px}}@media (width>=560px){.choice-row-wide .choice{text-align:center;padding:var(--space-2) var(--space-3);border-radius:12px;flex:1 1 0;align-items:center}}.choice{min-width:44px;min-height:44px;padding:var(--space-1) var(--space-2);border:1px solid var(--plain-border);background:var(--plain-card);color:var(--text);cursor:pointer;-webkit-user-select:none;user-select:none;border-radius:6px;flex-direction:column;justify-content:center;align-items:center;gap:2px;transition:background .12s,border-color .12s;display:flex}.choice-wide{min-width:10rem;padding:var(--space-2) var(--space-3);align-items:flex-start}.choice input{opacity:0;pointer-events:none;width:1px;height:1px;position:absolute}.choice:hover{border-color:var(--accent)}.choice-label{font-size:var(--font-size-s);font-weight:600}.choice-detail{font-size:var(--font-size-xs,11px);color:var(--text-dim)}.choice-on{background:var(--accent);border-color:var(--accent);color:var(--plain-bg)}.choice-on .choice-detail{color:var(--plain-bg);opacity:.75}.choice:has(input:focus-visible){outline:2px solid var(--accent);outline-offset:2px}.action-button,.plain-button{cursor:pointer;min-height:44px;transition:transform 90ms var(--move-ease), filter .12s ease-out, box-shadow .12s ease-out;border-radius:8px;font-weight:700}@media (hover:hover){.action-button:hover:not(:disabled),.plain-button:hover:not(:disabled){filter:brightness(1.12);transform:translateY(-1px)}}.action-button:active:not(:disabled),.plain-button:active:not(:disabled){filter:brightness(.94);transform:translateY(1px)}.action-button:focus-visible,.plain-button:focus-visible,.chat-react:focus-visible{outline:2px solid var(--text);outline-offset:3px;box-shadow:0 0 0 5px #0000008c}.action-button:disabled,.plain-button:disabled{cursor:not-allowed;filter:none;color:var(--text-dim);border:1px dashed var(--plain-border);box-shadow:none;background:0 0;transform:none}.action-button{background:var(--accent);color:var(--on-accent);padding:var(--space-2) var(--space-4);border:1px solid #0000}.action-inert{opacity:.45;filter:saturate(.5)}.action-inert:active:not(:disabled){filter:saturate(.5);transform:none}.action-jari{background:var(--danger-deep);color:#fff}.action-solo{color:var(--accent);border:1px solid var(--accent);background:0 0}.plain-button{background:var(--plain-card);color:var(--text);border:1px solid var(--plain-border);padding:var(--space-1) var(--space-3);border-radius:6px;font-weight:600}.game{gap:var(--space-2);height:100dvh;padding:var(--space-2);padding-top:calc(var(--space-2) + var(--safe-top));padding-bottom:calc(var(--space-2) + var(--safe-bottom));--table-chrome:284px;--table-card-heights:4.75;background:radial-gradient(ellipse at 50% 30%, var(--felt) 0%, var(--felt-edge) 75%);flex-direction:column;max-width:min(96vw,900px);margin:0 auto;display:flex;overflow:hidden;container-type:size}.game>*{--card-w:clamp(30px, min(13cqi, (100cqb - var(--table-chrome)) / var(--table-card-heights) / 1.4), 64px);--card-h:calc(var(--card-w) * 1.4);--pile-card-w:min(clamp(44px, min(16vw, 9svh), 84px), calc(var(--card-w) * 1.31));--pile-card-h:calc(var(--pile-card-w) * 1.4)}.opponents{grid-template-columns:repeat(var(--opp-cols-eff,3), auto);--opp-col-gap:var(--space-4);gap:var(--space-3) var(--opp-col-gap);max-height:var(--opp-band-want);overscroll-behavior:contain;scrollbar-width:thin;flex:1 1 0;justify-content:center;align-items:start;min-height:0;padding:0;display:grid;overflow:hidden auto;container-type:size}@media (width<=700px){.opponents{--opp-cols-max:2;--opp-col-gap:var(--space-2);gap:var(--space-2) var(--opp-col-gap)}.opponents:has(>:nth-child(3):last-child){--opp-cols-max:3}.opp-area{--opp-cols-max:2;--opp-col-gap:var(--space-2)}.opp-area.opp-three{--opp-cols-max:3}.opp-area:not(.opp-three)>.opponents{--opp-cols-max:2}.opp-area.opp-three>.opponents{--opp-cols-max:3}}.opp-area,.opponents{--opp-cols-eff:min(var(--opp-cols,3), var(--opp-cols-max,4));--opp-rows:round(up, var(--opp-count,1) / var(--opp-cols-eff), 1);--opp-pad:clamp(2px, calc((100cqb - 96px) * .25), var(--space-2));--opp-seat-chrome:calc(2 * var(--opp-pad) + 2px + var(--seat-head-h) + var(--space-1));--opp-panel-want:calc(var(--opp-seat-chrome) + var(--grid-gap) + 2.8 * var(--card-w) * var(--opp-seat-scale,.72));--opp-band-want:calc(var(--opp-rows) * var(--opp-panel-want) + (var(--opp-rows) - 1) * var(--space-3) + var(--opp-slack));--opp-row-h:calc((100cqb - (var(--opp-rows) - 1) * var(--space-3)) / var(--opp-rows));--opp-card-h-fit:calc(( var(--opp-row-h) - var(--opp-seat-chrome) - var(--grid-gap) - var(--opp-slack) ) / 2.8);--opp-slack:2px;--opp-card-floor:20px}.seat{gap:var(--space-1);flex-direction:column;align-items:center;display:flex}.seat-mine{margin-top:auto}.seat-emote{pointer-events:none;z-index:12;filter:drop-shadow(0 3px 6px #0009);animation:emote-pop calc(var(--emote-hold-ms) * var(--anim-scale,1)) both;font-size:30px;line-height:1;position:absolute;top:-26px;left:50%;transform:translate(-50%)}@keyframes emote-pop{0%{opacity:0;transform:translate(-50%)translateY(10px)scale(.5)}12%{opacity:1;transform:translate(-50%)translateY(-4px)scale(1.25)}22%{transform:translate(-50%)translateY(0)scale(1)}80%{opacity:1;transform:translate(-50%)translateY(0)scale(1)}to{opacity:0;transform:translate(-50%)translateY(-14px)scale(.9)}}@keyframes emote-hold{0%{opacity:0}12%{opacity:1}80%{opacity:1}to{opacity:0}}@media (prefers-reduced-motion:reduce){.seat-emote{animation-name:emote-hold}}.seat{position:relative}.seat-small .seat-emote{top:0}.seat-head{justify-content:center;align-items:center;gap:var(--space-2);font-size:var(--font-size-s);color:var(--text-dim);min-height:var(--seat-head-h);flex-wrap:nowrap;display:flex}.seat-small .seat-head{width:max-content;min-width:100%;max-width:100%}.seat-small{max-width:calc((100cqi - (var(--opp-cols-eff,3) - 1) * var(--opp-col-gap)) / var(--opp-cols-eff,3))}.seat-name{color:var(--text);text-overflow:ellipsis;white-space:nowrap;min-width:0;font-weight:600;overflow:hidden}.bot-icon{margin-left:var(--space-1);color:var(--text-dim);animation:takeover-pulse calc(var(--takeover-pulse-ms) * var(--anim-scale,1)) ease-in-out 3;align-items:center;display:inline-flex}.bot-mark{width:1em;height:1em;display:block}@keyframes takeover-pulse{50%{filter:drop-shadow(0 0 6px)}}.dot{border-radius:50%;width:8px;height:8px}.dot-on{background:var(--ok)}.dot-off{background:var(--danger)}.dot.dot-ping-fair{background:var(--accent)}.dot.dot-ping-poor{background:var(--countdown-hot)}.countdown{font-variant-numeric:tabular-nums;color:var(--countdown-text);background:var(--backing);border-radius:5px;padding:0 5px;font-weight:700}.countdown-hot{color:var(--countdown-hot);animation:blink calc(var(--countdown-blink-ms) * var(--anim-scale,1)) step-end infinite}@keyframes blink{50%{opacity:.45}}.seat-clock{top:var(--space-2);right:calc(var(--space-2) * -1);z-index:5;width:var(--seat-head-h);height:var(--seat-head-h);pointer-events:none;background:#08140ed9;border-radius:50%;line-height:0;display:block;position:absolute;box-shadow:0 1px 6px #00000080}.reconnect{font-size:var(--font-size-s)}.badge{background:var(--badge-bg);color:var(--text-dim);padding:0 var(--space-1);font-size:var(--font-size-s);animation:badge-life calc((var(--badge-pop-ms) + var(--badge-hold-ms) + var(--badge-fade-ms)) * var(--anim-scale,1)) both;border-radius:4px}@keyframes badge-life{0%{opacity:0;transform:scale(.6)}8%{opacity:1;transform:scale(1)}85%{opacity:1}to{opacity:0}}.opp-area{gap:var(--space-2);min-height:0;max-height:var(--opp-band-want);--opp-names-w:clamp(68px, 19cqi, 132px);flex:1 1 0;display:flex}.opp-area>.opponents{min-width:0;max-height:none;padding-right:var(--space-2);flex:1 1 0}.opp-zoomed>.opponents{--opp-pad:var(--space-1);--opp-seat-chrome:calc(2 * var(--opp-pad) + 2px)}.opp-zoomed .seat-small .seat-head{display:none}.opp-names{flex:0 0 var(--opp-names-w);overscroll-behavior:contain;scrollbar-width:none;min-height:0;overflow:hidden auto}.opp-names::-webkit-scrollbar{display:none}.opp-names-copy{gap:var(--space-1);padding-bottom:var(--space-1);flex-direction:column;display:flex}.opp-name{--seat-color:var(--accent);min-height:44px;padding:0 var(--space-2);border:1px solid var(--panel-edge);border-left:4px solid var(--seat-color);background:var(--panel);color:color-mix(in srgb, var(--text) 78%, transparent);font:inherit;font-size:var(--font-size-m);text-align:left;cursor:pointer;-webkit-tap-highlight-color:transparent;border-radius:12px;align-items:center;font-weight:600;display:flex}.opp-name-text{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.opp-name-turn{box-shadow:inset 0 0 0 1px var(--seat-color), inset 0 0 12px 1px color-mix(in srgb, var(--seat-color) 45%, transparent)}.opp-name-on{background:color-mix(in srgb, var(--seat-color) 34%, var(--panel-deep));border-color:var(--seat-color);color:var(--text)}.grid{grid-template-columns:repeat(var(--grid-cols,2), minmax(0, var(--hand-card-w,var(--card-w))));gap:var(--grid-gap);grid-template-rows:repeat(2,auto);justify-content:center;max-width:100%;display:grid}.slot{aspect-ratio:1/1.4;width:100%;position:relative}.hand{justify-content:start;place-items:start;column-gap:0;row-gap:var(--space-2);--hand-room:calc(100cqi - 2 * var(--card-w) - 3 * var(--grid-gap));--dealt-fit:max(16px, min(var(--card-w), calc((var(--hand-room) - (var(--dealt-cols,2) - 1) * var(--grid-gap)) / var(--dealt-cols,2))));--all-fit:calc(( var(--hand-room) - (var(--dealt-cols,2) + var(--pen-cols,0) - 1) * var(--grid-gap) ) / (var(--dealt-cols,2) + var(--pen-cols,0)));--hand-card-w:max(calc(var(--dealt-fit) * .9), min(var(--dealt-fit),  calc(var(--all-fit) + (1 - min(var(--pen-cols,0), 1)) * 10000px)));--seat-card-w:var(--hand-card-w);--hand-bleed-top:3px;--hand-bleed-side:3px;--hand-bleed-bottom:3px;max-width:calc(max(var(--hand-room), var(--dealt-cols,2) * var(--seat-card-w) + (var(--dealt-cols,2) - 1) * var(--grid-gap)) + 2 * var(--hand-bleed-side));overscroll-behavior-x:contain;scroll-snap-type:x proximity;scroll-padding-inline:var(--hand-bleed-side);scrollbar-width:none;padding:var(--hand-bleed-top) var(--hand-bleed-side) var(--hand-bleed-bottom);margin:calc(-1 * var(--hand-bleed-top)) calc(-1 * var(--hand-bleed-side)) calc(-1 * var(--hand-bleed-bottom));pointer-events:none;grid-template-columns:max-content max-content;display:grid;overflow:auto hidden}.hand::-webkit-scrollbar{display:none}.hand .slot{pointer-events:auto;scroll-snap-align:end}.seat-mine .hand{--hand-bleed-top:26px;--hand-bleed-side:21px;--hand-bleed-bottom:21px}.hand[data-more]{--hand-fade-in:var(--hand-bleed-side);--hand-fade-out:calc(var(--hand-bleed-side) + var(--seat-card-w) / 3)}.hand[data-more=right]{-webkit-mask-image:linear-gradient(to left, transparent var(--hand-fade-in), #000 var(--hand-fade-out));mask-image:linear-gradient(to left, transparent var(--hand-fade-in), #000 var(--hand-fade-out))}.hand[data-more=left]{-webkit-mask-image:linear-gradient(to right, transparent var(--hand-fade-in), #000 var(--hand-fade-out));mask-image:linear-gradient(to right, transparent var(--hand-fade-in), #000 var(--hand-fade-out))}.hand[data-more=both]{-webkit-mask-image:linear-gradient(to right, transparent var(--hand-fade-in), #000 var(--hand-fade-out), #000 calc(100% - var(--hand-fade-out)), transparent calc(100% - var(--hand-fade-in)));mask-image:linear-gradient(to right, transparent var(--hand-fade-in), #000 var(--hand-fade-out), #000 calc(100% - var(--hand-fade-out)), transparent calc(100% - var(--hand-fade-in)))}.seat-small .hand{--hand-room:calc(100cqi / var(--opp-cols-eff,3) - 4 * var(--grid-gap));--opp-card-w:min(calc(var(--hand-card-w,var(--card-w)) * var(--opp-seat-scale,.72)), max(var(--opp-card-floor,20px), var(--opp-card-h-fit,100000px)));--seat-card-w:var(--opp-card-w)}.hand>.grid{grid-column:1}.hand>.penalty-block{width:auto;min-width:0;margin:0 0 0 var(--grid-gap);grid-column:2;padding:0;overflow:visible}.penalty-block{--pen-gap:var(--grid-gap);--pen-card-w:var(--seat-card-w,var(--card-w));grid-template-rows:repeat(2,auto);grid-auto-flow:column;grid-auto-columns:var(--pen-card-w);gap:var(--pen-gap);width:calc(min(var(--pen-room,100cqi), calc(var(--pen-cols,1) * (var(--pen-card-w) + var(--pen-gap)) - var(--pen-gap) + .5px)) + 2 * var(--pen-bleed-side));min-width:calc(var(--pen-card-w) + 2 * var(--pen-bleed-side));--pen-bleed-top:3px;--pen-bleed-side:3px;--pen-bleed-bottom:3px;padding:var(--pen-bleed-top) var(--pen-bleed-side) var(--pen-bleed-bottom);margin-top:calc(-1 * var(--pen-bleed-top));margin-right:calc(-1 * var(--pen-bleed-side));margin-bottom:calc(-1 * var(--pen-bleed-bottom));margin-left:calc(-1 * var(--pen-bleed-side));pointer-events:none;flex:none;place-content:start;display:grid;overflow:hidden}.seat-small .hand{--hand-bleed-top:14px;--hand-bleed-side:var(--space-3);--hand-bleed-bottom:calc(var(--opp-pad,2px) + 1px)}.penalty-block .slot{pointer-events:auto;aspect-ratio:1/1.4;width:100%;height:auto}.slot-penalty{outline-offset:1px;border-radius:var(--card-radius);outline:1px solid #e0525273}.seat-small{padding:var(--opp-pad,var(--space-2)) var(--space-3);background:var(--panel);border:1px solid var(--panel-edge);border-radius:14px}.seat-small.seat-active{border-color:var(--accent);background:#e8b04b1a}.seat-small.seat-coloured{border-color:color-mix(in srgb, var(--seat-color) 55%, transparent)}.seat-small.seat-coloured.seat-active{border-color:var(--seat-color);background:color-mix(in srgb, var(--seat-color) 16%, var(--panel));box-shadow:inset 0 0 0 1px var(--seat-color), inset 0 0 16px 2px color-mix(in srgb, var(--seat-color) 50%, transparent)}.seat-small .grid{grid-template-columns:repeat(var(--grid-cols,2), var(--opp-card-w))}.seat-small .slot{width:100%}.card{width:var(--card-w);height:var(--card-h);border-radius:var(--card-radius);-webkit-user-select:none;user-select:none;line-height:normal;font-size:calc(var(--card-w) * .23);flex-direction:column;justify-content:center;align-items:center;display:flex}.card-pile{width:var(--pile-card-w);height:var(--pile-card-h);font-size:calc(var(--pile-card-w) * .23)}.seat-small .card{font-size:calc(var(--opp-card-w) * .23)}.slot .card,.seat-small .card{width:100%;height:100%}.card-face{background:var(--card-face);animation:face-up calc(var(--face-up-ms) * var(--anim-scale,1)) ease-out;border:1px solid #d8d2c4}@keyframes face-up{0%{transform:rotateY(80deg)}to{transform:rotateY(0)}}.card-red{color:var(--card-red)}.card-black{color:var(--card-black)}.card-rank{font-size:1.05em;font-weight:800}.card-suit{font-size:1.1em}.card-back{background:repeating-linear-gradient(45deg, var(--card-back), var(--card-back) 6px, var(--card-back-edge) 6px, var(--card-back-edge) 12px);border:1px solid var(--card-back-edge)}.card-empty{background:0 0;border:1px dashed #ffffff40}.hole{border-radius:var(--card-radius);border:1px dashed #fff3;width:100%;height:100%}.reserved{border:1px solid var(--accent);border-radius:var(--card-radius);opacity:.6;background:#e8b04b1f;width:100%;height:100%}.awaiting-gift{border:1px dashed var(--accent);border-radius:var(--card-radius);opacity:.6;width:100%;height:100%}.slot-lifted{transform:translateY(-6px)}.slot-looked .card{box-shadow:var(--card-lift), 0 0 0 2px var(--accent), 0 0 16px #e8b04b80}.slot-eye{background:var(--accent);width:22px;height:22px;color:var(--on-accent);z-index:4;pointer-events:none;border-radius:50%;place-items:center;animation:.26s ease-out both eye-in;display:grid;position:absolute;top:-7px;right:-7px;box-shadow:0 2px 6px #00000080}.slot-eye .eye-mark{width:15px;height:15px}.seat-small .slot-eye{width:18px;height:18px;top:-6px;right:-6px}.seat-small .slot-eye .eye-mark{width:12px;height:12px}.slot-changed{--actor-glow:color-mix(in srgb, var(--actor) 60%, transparent);z-index:3;pointer-events:none;border-radius:var(--card-radius);background:color-mix(in srgb, var(--actor) 24%, transparent);box-shadow:0 0 0 1px #000000a6, 0 0 0 3px var(--actor), 0 0 8px 1px var(--actor-glow);animation:slot-changed-pulse calc(var(--slot-changed-pulse-ms) * var(--anim-scale,1)) ease-in-out 2;position:absolute;inset:0}@keyframes slot-changed-pulse{0%,to{box-shadow:0 0 0 1px #000000a6, 0 0 0 3px var(--actor), 0 0 8px 1px var(--actor-glow)}40%{background:color-mix(in srgb, var(--actor) 45%, transparent);box-shadow:0 0 0 1px #000000a6, 0 0 0 4px var(--actor), 0 0 10px 3px var(--actor-glow)}}.slot-changed.slot-changed-brief{animation:slot-changed-pulse calc(var(--slot-changed-pulse-ms) * var(--anim-scale,1)) ease-in-out 2, slot-changed-out calc(var(--slot-changed-fade-ms) * var(--anim-scale,1)) ease-out calc((var(--slot-changed-brief-ms) - var(--slot-changed-fade-ms)) * var(--anim-scale,1)) forwards}.slot-changed.slot-changed-out{animation:slot-changed-out calc(var(--slot-changed-fade-ms) * var(--anim-scale,1)) ease-out both}@keyframes slot-changed-out{to{opacity:0}}@media (prefers-reduced-motion:reduce){.slot-changed:not(.slot-changed-out){animation:none}.slot-changed.slot-changed-brief:not(.slot-changed-out){animation:slot-changed-out calc(var(--slot-changed-fade-ms) * var(--anim-scale,1)) ease-out calc((var(--slot-changed-brief-ms) - var(--slot-changed-fade-ms)) * var(--anim-scale,1)) forwards}}.card-held-up{outline:2px solid var(--accent);outline-offset:1px;transform:translateY(-10px)rotate(-2deg);box-shadow:0 14px 26px #0000008c}@media (prefers-reduced-motion:reduce){.card-held-up{transform:none}}.slot-inflight .card{visibility:hidden}.center{justify-content:center;gap:var(--space-4);padding:var(--space-2) 0;align-items:flex-end;display:flex}.pile{align-items:center;gap:var(--space-2);flex-direction:column;display:flex;position:relative}.pile-label{font-size:var(--font-size-s);color:var(--text-dim)}.pile-count{color:var(--text);font-weight:700}.pile-stack{--pile-leaf:calc(var(--pile-depth,0) * 1.5px);position:relative}.pile-stack:before{content:"";border-radius:var(--card-radius);background:repeating-linear-gradient(135deg, var(--card-back-edge) 0 1px, #ffffff21 1px 2.5px);transform:translate(var(--pile-leaf), var(--pile-leaf));opacity:min(1, var(--pile-depth,0));position:absolute;inset:0;box-shadow:0 5px 12px #0000006b}.pile-stack>*{z-index:1;position:relative}.pile-empty{box-shadow:none;color:var(--text-dim);font-size:var(--font-size-xs,11px);letter-spacing:.08em;text-transform:uppercase;background:#00000029;border:1px dashed #ffffff38;justify-content:center;align-items:center;display:flex}.pile-draw-live{cursor:pointer;appearance:none;outline:2px solid var(--accent);outline-offset:2px;border:none;padding:0;animation:2s ease-in-out infinite deck-ready}.pile-draw-live:hover,.pile-draw-live:focus-visible{outline-color:var(--card-mine);transform:translateY(-3px)}@keyframes deck-ready{0%,to{box-shadow:0 0 #e8b04b00}50%{box-shadow:0 0 14px 3px #e8b04b73}}@media (prefers-reduced-motion:reduce){.pile-draw-live{animation:none}}.pile-mess{overflow:visible}.pile-under{transform:translate(var(--lie-x), var(--lie-y)) rotate(var(--lie-angle));filter:brightness(.72);position:absolute;inset:0}.pile-landed{z-index:2;transform:translate(var(--lie-x), var(--lie-y)) rotate(var(--lie-angle));position:relative}.pile-slap{animation:slap calc(var(--discard-settle-ms) * 1.6 * var(--anim-scale,1)) cubic-bezier(.2, 1.35, .3, 1)}@keyframes slap{0%{transform:translate(var(--lie-x), calc(var(--lie-y) - 26px)) rotate(calc(var(--lie-angle) * 2.4)) scale(1.16);opacity:.6}55%{transform:translate(var(--lie-x), calc(var(--lie-y) + 3px)) rotate(calc(var(--lie-angle) * .6)) scale(.97);opacity:1}to{transform:translate(var(--lie-x), var(--lie-y)) rotate(var(--lie-angle)) scale(1)}}@media (prefers-reduced-motion:reduce){.pile-slap{animation:none}}@keyframes land{0%{transform:scale(1.15)}70%{transform:scale(.97)}to{transform:scale(1)}}.pile-claimable{box-shadow:0 0 0 2px var(--accent)}.pile-drop{cursor:pointer;border-radius:var(--card-radius);outline-offset:5px;outline:2px dashed #e8b04bbf;animation:1.8s ease-in-out infinite pile-drop-breathe}@keyframes pile-drop-breathe{50%{outline-color:#e8b04b4d}}@media (prefers-reduced-motion:reduce){.pile-drop{animation:none}}.pile-drop:focus-visible{outline-style:solid;outline-color:var(--accent)}.held{align-items:center;gap:var(--space-2);margin-top:var(--space-1);display:flex}.seat-mine{grid-template-columns:1fr auto 1fr;grid-template-areas:"head head head"".grid held";place-items:center;display:grid}.seat-mine .seat-head{grid-area:head}.seat-mine .hand{grid-area:grid}.seat-mine .held{margin:0 0 0 var(--space-4);justify-self:start;gap:var(--space-1);flex-direction:column;grid-area:held}.held-theirs{top:calc(var(--space-2) * -1);left:calc(var(--space-3) * -1);z-index:4;animation:held-lift .26s var(--move-ease) both;position:absolute}.held-theirs .card{width:calc(var(--card-w) * .72);height:calc(var(--card-h) * .72);transform:rotate(4deg);box-shadow:0 10px 18px #0000008c,0 0 0 1px #ffffff1f}@keyframes held-lift{0%{opacity:0;transform:translateY(6px)scale(.9)}}.seat-small{position:relative}.held-label{font-size:var(--font-size-s);color:var(--text-dim);margin-bottom:8px}.held-card{animation:draw-lift calc(var(--draw-lift-ms) * var(--anim-scale,1)) ease-out}@keyframes draw-lift{0%{opacity:0;transform:translateY(10px)}}.held-wrap{width:var(--card-w);height:var(--card-h);line-height:0;display:block;position:relative}.held-theirs .held-wrap{width:calc(var(--card-w) * .72);height:calc(var(--card-h) * .72)}.held-clock{pointer-events:none;background:#08140ed9;border-radius:50%;width:30px;height:30px;display:block;position:absolute;top:-10px;right:-12px;box-shadow:0 1px 6px #00000080}.carried{z-index:40;pointer-events:none;will-change:transform;position:fixed;transform:translate(-30%,-42%)rotate(-4deg)}:is(body:has(.tut-shell)>.carried,body:has(.drill-shell)>.carried){z-index:61}.carried-card{box-shadow:0 14px 26px #0009,0 0 0 1px #ffffff24}@media (hover:hover) and (pointer:fine){body:has(>.carried) .seat-mine .held-card{opacity:.25}}@media (prefers-reduced-motion:reduce){.carried{display:none}body:has(>.carried) .seat-mine .held-card{opacity:1}}.status{text-align:center;min-height:22px;color:var(--text-dim);font-size:var(--font-size-s)}.status-clock{vertical-align:middle;margin-left:6px;line-height:0;display:inline-block}.status-clock .ring{width:1.3em;height:1.3em}.status-note{color:var(--text-dim);font-size:var(--font-size-s);margin-top:2px;font-weight:400}.actions{gap:var(--space-2);padding:var(--space-2) 0 var(--space-3);z-index:6;background:var(--bar-bg);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-top:1px solid #ffffff14;border-radius:12px 12px 0 0;flex-wrap:wrap;flex:none;justify-content:center;min-height:56px;margin-top:auto;display:flex;position:relative}.actions-idle{-webkit-backdrop-filter:none;backdrop-filter:none;background:0 0;border-top-color:#0000}.actions{column-gap:0}.actions>*{margin-inline:calc(var(--space-2) / 2)}.action-ghost{visibility:hidden;pointer-events:none;white-space:nowrap;border-inline-width:0;width:0;min-width:0;margin-inline:0;padding-inline:0;overflow:hidden}.game{padding-bottom:calc(var(--chat-bar-h) + var(--space-2))}.game:has(.chat-open){padding-bottom:calc(var(--chat-bar-h) + var(--space-2))}.game:has(.react-pop){padding-bottom:calc(var(--react-pop-h) + var(--space-2))}.leave-corner{left:var(--space-2);bottom:calc(var(--space-2) + var(--safe-bottom));z-index:8;max-width:calc(100vw - var(--space-2) * 2);display:flex;position:fixed}.leave-corner:has(.leave-sheet){bottom:calc(var(--chat-bar-h) + var(--space-2) + var(--safe-bottom))}.leave-open{font-size:var(--font-size-s)}.leave-sheet{gap:var(--space-2);width:min(320px, calc(100vw - var(--space-2) * 2));padding:var(--space-2);text-align:left;background:var(--plain-card);border:1px solid #ffffff24;border-radius:14px;flex-direction:column;animation:.18s ease-out leave-sheet-in;display:flex;box-shadow:0 18px 42px #0000008c}@keyframes leave-sheet-in{0%{opacity:0;transform:translateY(8px)}}.leave-ask{font-size:var(--font-size-s);margin:0;line-height:1.4}.leave-row{gap:var(--space-2);justify-content:flex-end;display:flex}@media (prefers-reduced-motion:reduce){.leave-sheet{animation:none}}.leave-corner{gap:var(--space-2);align-items:center}.ping-corner{align-items:center;display:flex;position:relative}.ping-pill{font:inherit;font-size:var(--font-size-xs);font-variant-numeric:tabular-nums;background:var(--backing);cursor:pointer;white-space:nowrap;border:1px solid #ffffff14;border-radius:999px;min-height:24px;padding:5px 7px;font-weight:600;line-height:1}@media (width<=399px){.ping-corner{display:none}}.ping-good{color:var(--ok)}.ping-fair{color:var(--accent)}.ping-poor{color:var(--countdown-hot)}.ping-sheet{left:0;bottom:calc(100% + var(--space-2));width:min(260px, calc(100vw - var(--space-2) * 2));gap:var(--space-1);padding:var(--space-2) var(--space-3);background:var(--plain-card);border:1px solid var(--plain-border);text-align:left;font-size:var(--font-size-s);animation:held-lift .2s var(--move-ease) both;border-radius:12px;flex-direction:column;display:flex;position:absolute;box-shadow:0 10px 28px #00000080}.ping-title{margin:0;font-weight:700}.ping-rows{flex-direction:column;gap:2px;margin:0;padding:0;list-style:none;display:flex}.ping-row{justify-content:space-between;gap:var(--space-3);display:flex}.ping-who{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.ping-ms{font-variant-numeric:tabular-nums;white-space:nowrap;font-weight:600}.ping-note{font-size:var(--font-size-xs);margin:0}.banner{padding:var(--space-2) var(--space-3);justify-content:center;align-items:center;gap:var(--space-3);font-size:var(--font-size-s);animation:banner-in calc(var(--banner-slide-ms) * var(--anim-scale,1)) ease-out;border-radius:8px;display:flex}@keyframes banner-in{0%{opacity:0;transform:translateY(-12px)}}.banner-warn{background:var(--banner-warn-bg);color:var(--accent)}.banner-bot{background:var(--banner-bot-bg);color:var(--text)}.conn-notice{top:var(--space-2);z-index:90;align-items:center;gap:var(--space-2);padding:6px var(--space-3);color:var(--accent);font-size:var(--font-size-s);pointer-events:none;background:#0a1a12eb;border:1px solid #e8b04b73;border-radius:999px;display:flex;position:fixed;left:50%;transform:translate(-50%);box-shadow:0 6px 20px #0006}.seat-reclaim{border:1px solid var(--accent);min-height:28px;color:var(--accent);font:inherit;font-size:var(--font-size-s);cursor:pointer;white-space:nowrap;background:#e8b04b24;border-radius:999px;margin-left:auto;padding:4px 10px;font-weight:700}.seat-reclaim:hover{background:#e8b04b3d}.conn-dot{background:var(--accent);border-radius:50%;width:7px;height:7px;animation:1.4s ease-in-out infinite conn-pulse}@keyframes conn-pulse{50%{opacity:.25}}@media (prefers-reduced-motion:reduce){.conn-dot{animation:none}}.restart-notice{top:var(--space-2);z-index:100;pointer-events:none;max-width:min(92vw,34rem);animation:restart-notice-in calc(var(--banner-slide-ms) * var(--anim-scale,1)) ease-out;position:fixed;left:50%;transform:translate(-50%);box-shadow:0 6px 20px #00000059}@keyframes restart-notice-in{0%{opacity:0;transform:translate(-50%,-12px)}}.banner-hint{background:var(--badge-bg);color:var(--text)}.banner-takeover{background:var(--banner-bot-bg);color:var(--bot)}.toast{--toast-hold-ms:4s;top:var(--space-2);z-index:90;max-width:min(92vw,30rem);padding:var(--space-2) var(--space-3);font-size:var(--font-size-s);text-align:center;pointer-events:none;animation:toast-in calc(var(--banner-slide-ms) * var(--anim-scale,1)) ease-out both, toast-out calc(var(--banner-slide-ms) * var(--anim-scale,1)) ease-in calc(var(--toast-hold-ms) * var(--anim-scale,1)) both;border-radius:999px;position:fixed;left:50%;box-shadow:0 6px 20px #0006}.toast.banner-hint{--toast-hold-ms:6s}@keyframes toast-in{0%{opacity:0;transform:translate(-50%,-12px)}to{opacity:1;transform:translate(-50%)}}@keyframes toast-out{0%{opacity:1;transform:translate(-50%)}to{opacity:0;transform:translate(-50%,-8px)}}.pause-pill{top:var(--space-2);left:var(--space-2);right:var(--space-2);z-index:90;justify-content:center;align-items:center;gap:var(--space-2);width:fit-content;max-width:34rem;padding:6px var(--space-3);color:var(--accent);font-size:var(--font-size-s);text-align:center;animation:pause-pill-in calc(var(--banner-slide-ms) * var(--anim-scale,1)) ease-out both;background:#0a1a12eb;border:1px solid #e8b04b73;border-radius:999px;flex-wrap:wrap;margin-inline:auto;display:flex;position:fixed;box-shadow:0 6px 20px #0006}@keyframes pause-pill-in{0%{opacity:0;transform:translateY(-12px)}to{opacity:1;transform:translateY(0)}}.pause-pill-quiet{color:var(--text-dim);pointer-events:none;border-color:#ffffff24}.pause-pill-clock{font-variant-numeric:tabular-nums;text-align:right;min-width:2.4em}.pause-pill-buttons{gap:var(--space-2);display:flex}.pause-accept{color:var(--accent);border-color:#e8b04b8c}.pause-ask{font-size:var(--font-size-s);color:var(--text-dim);font-weight:600}.reveal{z-index:5;animation:reveal-in calc(var(--reveal-flip-ms) * var(--anim-scale,1)) ease-out both;position:absolute;inset:0}@keyframes reveal-in{0%{opacity:0;transform:rotateY(80deg)}to{opacity:1;transform:rotateY(0)}}.reveal-staggered{animation-delay:calc(( var(--claim-travel-ms) + var(--race-stagger-ms) * var(--stagger-place,1) ) * var(--anim-scale,1))}.reveal-misplay .card{box-shadow:0 0 0 2px var(--danger)}.reveal-lost .card{box-shadow:0 0 0 2px var(--accent)}.pile .reveal{inset:auto auto 0}.ghost{z-index:20;pointer-events:none;position:fixed}.ghost-travel{animation:ghost-fly calc(var(--claim-travel-ms) * var(--anim-scale,1)) var(--claim-travel-ease) forwards}@keyframes ghost-fly{0%{transform:translate(0)}to{transform:translate(var(--ghost-dx), var(--ghost-dy)) scale(1.05)}}.ghost-land{animation:ghost-settle calc(var(--claim-land-ms) * var(--anim-scale,1)) ease-in forwards}@keyframes ghost-settle{0%{transform:translate(var(--ghost-dx), var(--ghost-dy)) scale(1.05)}to{transform:translate(var(--ghost-dx), var(--ghost-dy)) scale(.9);opacity:0}}.ghost-hold{transform:translate(var(--ghost-dx), var(--ghost-dy)) scale(1.05)}.ghost-hold .ghost-face{animation:reveal-in calc(var(--reveal-flip-ms) * var(--anim-scale,1)) ease-out both}.ghost-return{animation:ghost-back calc(var(--claim-walkback-ms) * var(--anim-scale,1)) var(--claim-walkback-ease) forwards}@keyframes ghost-back{0%{transform:translate(var(--ghost-dx), var(--ghost-dy)) scale(1.05)}to{transform:translate(0)scale(1)}}.ghost-quiet{opacity:.75}.jari-call{--jari-leave-at:calc((var(--jari-call-ms) - var(--jari-call-fly-ms)) * var(--anim-scale,1));transform:translate(-50%, calc(-50% + var(--stamp-dy,0px)));z-index:45;pointer-events:none;text-align:center;justify-items:center;gap:6px;display:grid;position:fixed;top:38%;left:50%}:root:has(.jari-call:not(.jari-call-cut)) .status{visibility:hidden}.jari-call:before{content:"";z-index:-1;animation:jari-halo-in calc(.2s * var(--anim-scale,1)) ease-out both, jari-who-out calc(.24s * var(--anim-scale,1)) ease-in var(--jari-leave-at) forwards;background:radial-gradient(closest-side,#06120cf0,#06120cdb 65%,#0000);position:absolute;inset:-12px -40px}@keyframes jari-halo-in{0%{opacity:0}}.jari-call-word{font-family:var(--font-display);letter-spacing:.02em;color:var(--jari-bright);text-shadow:0 0 26px var(--jari-glow), 0 2px 0 #00000073;animation:jari-stamp calc(var(--jari-call-stamp-ms) * var(--anim-scale,1)) cubic-bezier(.2, .8, .3, 1) both, jari-glow calc(var(--jari-call-glow-ms) * var(--anim-scale,1)) ease-in-out calc(var(--jari-call-stamp-ms) * var(--anim-scale,1)) 2, jari-rise calc(var(--jari-call-fly-ms) * var(--anim-scale,1)) ease-in var(--jari-leave-at) forwards;font-size:clamp(2.6rem,14vw,5.2rem);font-weight:800;line-height:1}.jari-call-flies .jari-call-word{animation-name:jari-stamp,jari-glow,jari-fly}.jari-call-who{color:var(--text);background:color-mix(in srgb, var(--surface) 94%, transparent);border:1px solid var(--jari);animation:jari-who-in calc(.24s * var(--anim-scale,1)) ease-out calc(var(--jari-call-stamp-ms) * .6 * var(--anim-scale,1)) both, jari-who-out calc(.24s * var(--anim-scale,1)) ease-in var(--jari-leave-at) forwards;border-radius:999px;padding:4px 12px;font-size:.95rem;font-weight:600}@keyframes jari-stamp{0%{opacity:0;transform:scale(2.2)rotate(-6deg)}55%{opacity:1;transform:scale(.92)rotate(0)}78%{transform:scale(1.04)}to{opacity:1;transform:scale(1)}}@keyframes jari-glow{0%,to{text-shadow:0 0 26px var(--jari-glow), 0 2px 0 #00000073}50%{text-shadow:0 0 46px var(--jari), 0 0 18px var(--jari-glow), 0 2px 0 #00000073}}@keyframes jari-fly{0%{opacity:1;transform:translate(0)scale(1)}85%{opacity:1}to{opacity:0;transform:translate(var(--fly-dx,0px), var(--fly-dy,-40px)) scale(var(--fly-scale,.4))}}@keyframes jari-rise{to{opacity:0;transform:translateY(-12px)scale(1.04)}}@keyframes jari-who-in{0%{opacity:0;transform:translateY(6px)}}@keyframes jari-who-out{to{opacity:0}}.jari-flash{z-index:44;pointer-events:none;animation:jari-flash calc(var(--jari-call-flash-ms) * var(--anim-scale,1)) ease-out both;position:fixed;inset:0}@keyframes jari-flash{0%{box-shadow:inset 0 0 #d92b2b00}30%{box-shadow:inset 0 0 90px 16px #d92b2b8c}to{box-shadow:inset 0 0 #d92b2b00}}.jari-chip{font-family:var(--font-display);color:#fff;background:var(--jari);box-shadow:0 0 10px var(--jari-glow);pointer-events:none;animation:jari-chip-in calc(.24s * var(--anim-scale,1)) ease-out calc((var(--jari-call-ms) - .15s) * var(--anim-scale,1)) both;border-radius:999px;flex:none;padding:2px 6px;font-size:11px;font-weight:800;line-height:1}.out-chip{color:var(--text-dim,#c9d3cc);pointer-events:none;border:1px solid;border-radius:999px;flex:none;padding:1px 6px;font-size:11px;font-weight:700;line-height:1}.practice-chip{white-space:nowrap;font-weight:600}.seat-small .out-chip{z-index:6;padding:1px 4px;font-size:9px;position:absolute;top:2px;left:2px}.seat-small .jari-chip{z-index:6;padding:1px 4px;font-size:9px;position:absolute;top:2px;right:2px}@keyframes jari-chip-in{0%{opacity:0;transform:scale(.6)}}@media (prefers-reduced-motion:reduce){.jari-call:before,.jari-call-word,.jari-call-flies .jari-call-word,.jari-call-who{animation:jari-call-fade calc(.2s * var(--anim-scale,1)) ease both, jari-call-fade calc(.2s * var(--anim-scale,1)) ease calc((var(--jari-call-ms) - .2s) * var(--anim-scale,1)) reverse forwards}.jari-flash{display:none}.jari-chip{animation-name:jari-call-fade}@keyframes jari-call-fade{0%{opacity:0}to{opacity:1}}}.jari-call.jari-call-cut:before,.jari-call.jari-call-cut .jari-call-word,.jari-call.jari-call-flies.jari-call-cut .jari-call-word,.jari-call.jari-call-cut .jari-call-who{animation:jari-cut calc(.16s * var(--anim-scale,1)) ease-in forwards}.jari-chip.jari-chip-now{animation-delay:0s}@keyframes jari-cut{to{opacity:0}}.peek-overlay{background:radial-gradient(ellipse at 50% 25%, var(--peek-bg) 0%, var(--peek-bg-edge) 70%), var(--peek-bg-edge);justify-content:flex-start;align-items:center;gap:var(--space-4);z-index:30;padding:calc(var(--space-4) + var(--safe-top)) var(--space-4) var(--space-4);padding-bottom:calc(var(--chat-bar-h) + var(--space-4) + var(--safe-bottom));text-align:center;flex-direction:column;display:flex;position:fixed;inset:0;overflow-y:auto}.peek-timer{font-size:var(--font-size-l)}.peek-row{gap:var(--space-3);display:flex}.peek-ready{font-size:var(--font-size-l);padding:var(--space-3) var(--space-4)}.peek-others{gap:var(--space-1);font-size:var(--font-size-s);flex-direction:column;display:flex}.peek-chip{gap:var(--space-2);color:var(--text-dim);justify-content:center;display:flex}.peek-waiting{animation:1.6s ease-in-out infinite shimmer}@keyframes shimmer{50%{opacity:.5}}.peek-done{color:#57c46b}.end-overlay{background:var(--plain-bg);z-index:30;justify-content:flex-start;align-items:center;gap:clamp(var(--space-2), 2.5vh, var(--space-4));--end-foot:calc(var(--chat-bar-h) + var(--space-4) + var(--safe-bottom));padding:var(--space-3) var(--space-3) var(--end-foot);padding-top:calc(var(--space-3) + var(--safe-top));flex-direction:column;display:flex;position:fixed;inset:0;overflow-y:auto}.end-body{align-items:center;gap:clamp(var(--space-2), 2.5vh, var(--space-4));flex-direction:column;width:100%;display:flex}.end-overlay>.end-body,.peek-overlay>:first-child{margin-top:auto}.end-overlay>.end-body,.peek-overlay>:last-child{margin-bottom:auto}.end-overlay:has(~.chat .chat-open){--end-foot:calc(var(--chat-open-h) + var(--space-4) + var(--safe-bottom));padding-bottom:var(--end-foot)}.game:has(.chat-open)~.end-overlay{--end-foot:calc(var(--chat-open-h) + var(--space-4) + var(--safe-bottom));padding-bottom:var(--end-foot)}.end-overlay:has(~.chat .react-pop){--end-foot:calc(var(--react-pop-h) + var(--space-4) + var(--safe-bottom));padding-bottom:var(--end-foot)}.game:has(.react-pop)~.end-overlay{--end-foot:calc(var(--react-pop-h) + var(--space-4) + var(--safe-bottom));padding-bottom:var(--end-foot)}.end-hand{--card-w:clamp(44px, min(15vw, 7svh), 78px);--pen-room:calc(100vw - 64px);--seat-card-w:var(--card-w);--grid-gap:var(--space-1);justify-content:center;align-items:flex-start;gap:var(--space-1);flex-wrap:wrap;display:flex}.end-table{border-collapse:collapse}.end-table td{padding:var(--space-1) var(--space-3)}.end-me{color:var(--accent);font-weight:700}.end-grids{justify-content:center;align-items:flex-start;gap:var(--space-4);flex-wrap:wrap;max-width:100%;display:flex}.end-grid{padding:var(--space-1) var(--space-2);border-left:3px solid #0000;border-radius:6px}.end-grid-mine{border-left-color:var(--accent);background:#e8b04b12}.end-grid .grid{justify-content:center}.grid-final{grid-template-columns:repeat(var(--grid-cols,2), minmax(44px, var(--card-w)));max-width:100%}.grid-final>.slot{aspect-ratio:1/1.4;width:100%;height:auto}.end-actions{gap:var(--space-3);justify-content:center;display:flex}.end-foot{z-index:1;justify-content:center;align-self:stretch;align-items:center;gap:var(--space-2) var(--space-3);padding:var(--space-3);box-shadow:none;background:0 0;border-top:none;flex-wrap:wrap;display:flex;position:sticky;bottom:0}.end-foot:before{content:"";z-index:-1;pointer-events:none;background:linear-gradient(to bottom, rgba(var(--foot-fade-rgb), 0) 0%, rgba(var(--foot-fade-rgb), .55) 30%, rgba(var(--foot-fade-rgb), .82) 60%, rgba(var(--foot-fade-rgb), .9) 100%);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);position:absolute;inset:-36px 0 0;-webkit-mask-image:linear-gradient(#0000 0%,#000 45%);mask-image:linear-gradient(#0000 0%,#000 45%)}.end-foot .end-rotate{text-align:center;flex:1 0 100%;order:-1;margin:0}.end-foot .round-card{flex:1 0 100%;width:auto}.tut-table .end-foot{display:none}.pause-overlay{z-index:30;justify-content:flex-start;align-items:center;gap:var(--space-3);background:var(--plain-bg);color:var(--text);text-align:center;padding:var(--space-4) var(--space-3) calc(var(--chat-bar-h) + var(--space-4));flex-direction:column;display:flex;position:fixed;inset:0;overflow-y:auto}.pause-overlay>:first-child{margin-top:auto}.pause-overlay>:last-child{margin-bottom:auto}.pause-heading{font-family:var(--font-display);font-size:var(--font-size-l);letter-spacing:.04em;margin:0}.pause-who{color:var(--text-dim);font-size:var(--font-size-m);max-width:30ch;margin:0}.pause-clock{font-family:var(--font-display);font-variant-numeric:tabular-nums;color:var(--accent);margin:0;font-size:2.2rem}.pause-resume{min-width:9rem}.pause-note{font-size:var(--font-size-s);max-width:34ch;margin:0}.end-next-wait{padding:var(--space-2) var(--space-4);color:var(--text-dim);text-align:center;border:1px solid #0000;margin:0;font-weight:600}.lab{background:var(--plain-bg);min-height:100dvh;display:flex}.lab-side{gap:var(--space-2);width:320px;padding:var(--space-4);flex-direction:column;flex-shrink:0;max-height:100dvh;display:flex;position:sticky;top:0;overflow-y:auto}.lab-blurb{font-size:var(--font-size-s)}.lab-card{text-align:left;background:var(--plain-card);color:var(--text);border:1px solid var(--plain-border);padding:var(--space-2) var(--space-3);cursor:pointer;gap:var(--space-1);border-radius:8px;flex-direction:column;display:flex}.lab-card-active{border-color:var(--accent)}.lab-card-title{font-weight:700}.lab-card-desc{font-size:var(--font-size-s);color:var(--text-dim)}.lab-controls{gap:var(--space-3);padding-top:var(--space-2);align-items:flex-end;display:flex}.lab-right{gap:var(--space-3);padding:var(--space-4);flex-direction:column;flex:1;align-items:center;display:flex}.lab-stage{border:1px solid var(--plain-border);border-radius:12px;justify-content:center;align-items:stretch;width:min(420px,100%);min-height:640px;display:flex;position:relative;overflow:hidden}.lab-game{pointer-events:none;width:100%;min-height:640px}.lab-stage .peek-overlay,.lab-stage .end-overlay{position:absolute}.lab-hint-preview{gap:var(--space-1);font-size:var(--font-size-s);flex-direction:column;width:min(420px,100%);display:flex}.lab-steps{width:min(420px,100%);color:var(--text-dim);font-size:var(--font-size-s);padding-left:var(--space-4);flex-direction:column;gap:2px;display:flex}.lab-step-active{color:var(--accent);font-weight:700}.seat-active .seat-name{color:var(--accent)}.seat-active{position:relative}.seat-active:before{content:"";pointer-events:none;background:radial-gradient(#e8b04b29,#0000 70%);border-radius:18px;animation:2.4s ease-in-out infinite seat-breathe;position:absolute;inset:-10px 0}@keyframes seat-breathe{50%{opacity:.45}}.seat-small.seat-active:before{border-radius:14px;inset:0}.seat-small.seat-coloured.seat-active:before{background:radial-gradient(ellipse at 50% 50%, color-mix(in srgb, var(--seat-color) 24%, transparent), transparent 70%)}.seat-coloured.seat-active .seat-name{color:var(--text)}.card-mine,.card-theirs{box-shadow:var(--card-lift);transition:transform .14s var(--move-ease), box-shadow .14s ease-out}.card-mine{outline:1px solid var(--card-mine);outline-offset:-1px}.card-theirs{outline:1px solid var(--seat-color,var(--card-theirs));outline-offset:-1px}@media (hover:hover){.seat-tappable .slot.occupied{cursor:pointer}.seat-tappable .slot.occupied.slot-inert{cursor:default}.seat-tappable .slot.occupied.slot-inert:hover .card-mine,.seat-tappable .slot.occupied.slot-inert:hover .card-theirs{box-shadow:var(--card-lift);transform:none}.seat-tappable .slot.occupied:hover .card-mine{box-shadow:var(--card-lift), 0 0 0 2px var(--card-mine), 0 0 18px var(--card-mine-glow);transform:translateY(-5px)scale(1.03)}.seat-tappable .slot.occupied:hover .card-theirs{box-shadow:var(--card-lift), 0 0 0 2px var(--seat-color,var(--card-theirs)), 0 0 6px var(--card-theirs-glow);transform:translateY(-5px)scale(1.03)}}.mover{z-index:36;pointer-events:none;animation:mover-fly calc(var(--move-flight-ms) * var(--anim-scale,1) * var(--pace,1)) var(--move-ease) forwards;position:fixed}.mover-card{width:100%;height:100%;animation:card-settle calc(var(--move-settle-ms) * var(--anim-scale,1) * var(--pace,1)) ease-out calc(var(--move-flight-ms) * var(--anim-scale,1) * var(--pace,1)) forwards;box-shadow:0 14px 28px #0000008c}@keyframes card-settle{0%{transform:scale(1.08,.94)}55%{transform:scale(.98,1.02)}to{transform:scale(1)}}@keyframes mover-fly{0%{transform:translate(0)scale(1)rotate(0)}25%{transform:translate(calc(var(--move-dx) * .24), calc(var(--move-dy) * .24 - var(--move-lift) * .72)) scale(1.05) rotate(-1deg)}40%{transform:translate(calc(var(--move-dx) * .4), calc(var(--move-dy) * .4 - var(--move-lift) * .96)) scale(1.06) rotate(-1.2deg)}62%{transform:translate(calc(var(--move-dx) * .63), calc(var(--move-dy) * .63 - var(--move-lift) * .88)) scale(1.04) rotate(-.8deg)}80%{transform:translate(calc(var(--move-dx) * .83), calc(var(--move-dy) * .83 - var(--move-lift) * .5)) scale(1.01) rotate(0deg)}to{transform:translate(var(--move-dx), var(--move-dy)) scale(1) rotate(0deg)}}@keyframes mover-glide{0%{transform:translate(0)}to{transform:translate(var(--move-dx), var(--move-dy))}}.mover-draw{--move-flight-ms:var(--move-draw-ms)}.mover-discard{--move-flight-ms:var(--move-discard-ms)}.mover-swap{--move-flight-ms:var(--move-swap-ms)}.mover-penalty{--move-flight-ms:var(--move-penalty-ms)}.mover-blindSwap{--move-flight-ms:var(--move-blindSwap-ms)}.mover-mine .card{outline:2px solid var(--accent);outline-offset:1px;box-shadow:0 0 18px #e8b04b8c}.mover-play{--move-flight-ms:var(--move-play-ms);animation-name:mover-play}@keyframes mover-play{0%{transform:translate(0)scale(1)rotate(0)}20%{transform:translateY(-30px)scale(1.38)rotate(-5deg)}42%{transform:translateY(-30px)scale(1.38)rotate(4deg)}78%{transform:translate(calc(var(--move-dx) * .9), calc(var(--move-dy) * .9 - 10px)) scale(1.16) rotate(0deg)}to{transform:translate(var(--move-dx), var(--move-dy)) scale(1) rotate(0deg)}}.mover-play .card{box-shadow:0 0 0 2px var(--accent), 0 0 34px #e8b04bb3, 0 16px 30px #0009}.mover-look{--move-flight-ms:var(--move-look-ms);animation-name:mover-look}.mover-lift{--move-flight-ms:var(--move-lift-ms);animation-name:mover-lift}@keyframes mover-look{0%{transform:translate(0)scale(1)rotate(0)}16%{transform:translateY(-26px)scale(1.3)rotate(-3deg)}30%{transform:translateY(-28px)scale(1.32)rotate(2deg)}82%{transform:translateY(-28px)scale(1.32)rotate(1deg)}to{transform:translate(0)scale(1)rotate(0)}}@keyframes mover-lift{0%{transform:translate(0)scale(1)rotate(0)}18%{transform:translateY(-22px)scale(1.24)rotate(-4deg)}84%{transform:translateY(-22px)scale(1.24)rotate(-2deg)}to{transform:translateY(-10px)scale(1)rotate(-2deg)}}.mover-look .card,.mover-lift .card{box-shadow:0 0 0 2px var(--accent), 0 0 30px #e8b04b99, 0 16px 30px #0009}.mover-at-me .card{box-shadow:0 0 0 2px var(--card-mine), 0 0 30px var(--card-mine-glow), 0 16px 30px #0009}.mover-eye{color:var(--accent);pointer-events:none;place-items:center;animation:.26s ease-out both eye-in;display:grid;position:absolute;inset:0}.mover-eye .eye-mark{filter:drop-shadow(0 2px 6px #000000b3);width:46%;height:auto}@keyframes eye-in{0%{opacity:0;transform:scale(.6)}}.slot-landing:after{content:"";border-radius:var(--card-radius);background:var(--slot-empty);animation:.6s ease-in-out infinite pad-pulse;position:absolute;inset:0}@keyframes pad-pulse{50%{opacity:.45}}@media (prefers-reduced-motion:reduce){.mover{animation-name:mover-glide}.mover-look{animation-name:mover-look}.mover-lift{animation-name:mover-lift}.mover-card,.mover-eye{animation:none}.ghost-travel,.ghost-land,.ghost-hold,.ghost-return{opacity:0;animation:none}.seat-active:before{animation:none}.restart-notice{animation:none;transform:translate(-50%)}.bg-drift .bg-card,.bg-drift .bg-card-inner{animation-name:none}.bg-drift .bg-card{opacity:.06}}.swap-call{z-index:41;pointer-events:none;font-family:var(--font-display);letter-spacing:.02em;color:var(--accent);text-shadow:0 2px #000000e6,0 0 14px #000c;animation:swap-call calc(var(--swap-call-ms) * var(--anim-scale,1)) ease-out both;font-size:22px;font-weight:800;position:fixed;transform:translate(-50%,-50%)}@keyframes swap-call{0%{opacity:0;transform:translate(-50%,-50%)scale(.5)}25%{opacity:1;transform:translate(-50%,-50%)scale(1.15)}45%{transform:translate(-50%,-50%)scale(1)}to{opacity:1;transform:translate(-50%,-62%)scale(1)}}@media (prefers-reduced-motion:reduce){.swap-call{animation:none;transform:translate(-50%,-62%)}}.seat-targetable .slot.occupied .card{cursor:pointer;animation:1.1s ease-in-out infinite target-pulse}@keyframes target-pulse{0%,to{box-shadow:var(--card-lift), 0 0 0 2px var(--accent)}50%{box-shadow:var(--card-lift), 0 0 0 3px var(--accent), 0 0 22px #e8b04bcc}}.seat-targetable .slot.occupied.slot-inert .card{box-shadow:var(--card-lift);cursor:default;animation:none}.seat-muted{opacity:.32;filter:saturate(.4);pointer-events:none}.power-prompt{z-index:12;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid var(--accent);width:max-content;max-width:min(92vw,460px);animation:power-arrive .22s var(--move-ease);background:#10241aeb;border-radius:14px;display:flex;position:fixed;top:42%;left:50%;transform:translate(-50%,-50%);box-shadow:0 12px 34px #0000008c}.power-armed{padding:var(--space-2) var(--space-3);background:#10241adb;align-self:center;position:static;transform:none}.power-closes{font-size:var(--font-size-xs,11px);color:var(--accent);opacity:.85}.decide-clock{justify-content:center;align-items:center;gap:var(--space-2);font-size:var(--font-size-s);display:flex}.power-rank{background:var(--card-face);width:30px;height:42px;color:var(--card-black);border-radius:5px;flex:none;place-items:center;font-size:17px;font-weight:800;display:grid}.power-text{flex-direction:column;gap:2px;min-width:0;line-height:1.3;display:flex}.power-text .dim{font-size:var(--font-size-s)}.game:has(>.power-armed)>.actions{display:none}.power-armed{box-sizing:border-box;min-height:64px;margin-top:auto}@media (width<=700px){.power-armed{width:100%;max-width:none;padding:var(--space-1) var(--space-2);gap:var(--space-2);border-radius:10px}.power-armed .power-rank{width:24px;height:34px;font-size:14px}.power-armed .power-text{gap:0;line-height:1.2}.power-armed .power-text strong{font-size:var(--font-size-s)}.power-armed .power-text .dim{font-size:var(--font-size-xs,11px)}.power-armed .power-closes,.actions .decide-clock .dim{display:none}.actions:has(.decide-clock) .pause-ask{display:none}}@keyframes power-arrive{0%{opacity:0;transform:translate(-50%,-46%)scale(.96)}}.ring{flex:none;width:34px;height:34px;transform:rotate(-90deg)}.held-clock .ring,.seat-clock .ring{width:100%;height:100%;display:block}.ring-track{fill:none;stroke:#ffffff24;stroke-width:3px}.ring-arc{fill:none;stroke:var(--accent);stroke-width:3px;stroke-linecap:round;transition:stroke-dashoffset 90ms linear}.ring-hot .ring-arc{stroke:var(--countdown-hot)}.ring-num{transform-origin:16px 16px;fill:var(--text);text-anchor:middle;dominant-baseline:central;font-size:12px;font-weight:700;transform:rotate(90deg)}.seat-clock .ring-num{font-size:15px}@media (prefers-reduced-motion:reduce){.power-prompt{animation:none}}.status-loud{color:var(--accent);font-size:var(--font-size-m);font-weight:700;animation:.2s ease-out power-arrive}.hole-final{color:#57c46b;background:#57c46b14;border-color:#57c46b80;justify-content:center;align-items:center;font-size:20px;display:flex}.end-gone{font-size:var(--font-size-s)}.card-rank-joker{letter-spacing:.02em;text-transform:lowercase;font-size:.62em}.joker-mark{width:1.5em;height:1.5em;color:var(--card-red)}.card-black .joker-mark{color:var(--card-black)}.joker-bell{fill:var(--accent);animation:2.4s ease-in-out infinite bell-glint}.joker-bell-2{animation-delay:.35s}.joker-bell-3{animation-delay:.7s}@keyframes bell-glint{0%,70%,to{opacity:.75}82%{opacity:1;filter:drop-shadow(0 0 5px var(--accent))}}.peek-blurb{max-width:340px;font-size:var(--font-size-s)}.peek-grid{--card-w:clamp(52px, 15vw, 76px)}.end-winner{font-size:var(--font-size-l);color:var(--accent);font-weight:800}.roster{gap:var(--space-1);font-size:var(--font-size-m);flex-direction:column;padding:0;list-style:none;display:flex}.roster-me{color:var(--accent);font-weight:700}.roster-empty{opacity:.55;font-style:italic}.doors{gap:var(--space-3);grid-template-columns:repeat(2,minmax(0,1fr));width:min(100%,460px);display:grid}.door{min-height:148px;padding:var(--space-4) var(--space-2);cursor:pointer;font:inherit;transition:transform .14s var(--move-ease), box-shadow .14s ease-out, filter .14s ease-out;border-radius:16px;flex-direction:column;justify-content:center;align-items:center;gap:10px;display:flex}.door-create{color:var(--on-accent);background:linear-gradient(160deg, var(--accent-light) 0%, var(--accent) 45%, var(--accent-deep) 100%);border:1px solid #ffffff47;box-shadow:0 10px 26px #00000073,inset 0 1px #fff6}.door-bots{color:var(--accent);background:radial-gradient(ellipse at 50% 20%, var(--felt) 0%, var(--felt-edge) 95%);border:1.5px solid #e8b04bbf;box-shadow:0 10px 26px #00000073,inset 0 1px #ffffff14}.door-mark{width:56px;height:56px}.door-name{font-family:var(--font-display);font-size:21px;font-weight:700;line-height:1.15}@media (hover:hover){.door:hover:not(:disabled){filter:brightness(1.06);transform:translateY(-3px);box-shadow:0 16px 34px #0000008c}}.door:active:not(:disabled){filter:brightness(.95);transform:translateY(1px)}.door:focus-visible{outline:2px solid var(--text);outline-offset:3px}.door:disabled{cursor:progress;opacity:.7}@media (prefers-reduced-motion:reduce){.door{transition:none}}.setup{flex-direction:column;gap:20px;display:flex}.setup-go{width:100%;min-height:52px;box-shadow:0 -14px 14px 2px var(--plain-bg), 0 var(--space-4) 0 var(--space-4) var(--plain-bg);font-size:17px;position:sticky;bottom:0}.setup .choice-row:not(.choice-row-wide) .choice{max-width:none}.sheet-panel:has(.setup-bots){height:min(100%,900px)}.sheet-panel:has(.setup-bots) .sheet-body{flex-direction:column;flex:1;display:flex}.setup-bots{flex:1 0 auto}.setup-bots .setup-go{margin-top:auto}.stepper{align-items:center;gap:var(--space-3);-webkit-user-select:none;user-select:none;display:flex}.stepper-clear{min-height:44px;margin-left:var(--space-2);padding:0 var(--space-4)}.stepper-button{min-width:48px;min-height:44px;font-size:22px;line-height:1}.stepper-value{text-align:center;min-width:2ch;font-family:var(--font-display);font-size:26px;font-weight:700}.level-rows{flex-direction:column;gap:6px;display:flex}.level-row{align-items:center;gap:var(--space-2);grid-template-columns:4.2em minmax(0,1fr);display:grid}.level-row-label{font-size:var(--font-size-s);color:var(--text-dim);text-align:left}.level-row:first-child .level-row-label{color:var(--text);font-weight:600}.level-chips .choice{min-height:40px}.level-chips{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;display:grid}.level-note{margin:var(--space-1) 0 0;font-size:var(--font-size-s)}.roster{width:min(460px,94vw)}.roster-bot{justify-content:center;align-items:center;gap:var(--space-2);display:flex}.roster-bot-name{white-space:nowrap;align-items:center;gap:6px;display:inline-flex}.roster-bot .level-row{flex:1;grid-template-columns:minmax(0,1fr)}.roster-bot .level-row-label{clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}.roster-bot .level-chip{min-height:36px}.roster-remove{flex:none;min-height:36px}.lobby-add-bot{justify-content:center;align-items:center;gap:var(--space-2);display:inline-flex}.lobby-add-bot .bot-mark{width:18px;height:18px}.peek-buttons{flex-direction:column;align-items:center;width:min(320px,80vw);display:flex}.peek-buttons .action-button{width:100%}.chat{left:0;right:0;bottom:var(--safe-bottom);z-index:34;align-items:stretch;gap:var(--space-2);padding:var(--space-2);pointer-events:none;flex-direction:column-reverse;display:flex;position:fixed}.chat>*{pointer-events:auto}.chat-triggers{gap:var(--space-2);align-items:center;margin-left:auto;display:flex}.chat-icon{background:var(--corner-bg);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);width:44px;height:44px;color:var(--text-dim);cursor:pointer;transition:transform .12s var(--move-ease), color .12s linear, border-color .12s linear;border:1px solid #ffffff24;border-radius:50%;place-items:center;display:grid;position:relative}.chat-icon svg{width:22px;height:22px}.chat-icon:hover{color:var(--text);border-color:#ffffff4d}.chat-icon:active{transform:scale(.92)}.chat-icon-on{color:var(--accent);border-color:#e8b04b8c}.react-scrim{z-index:33;cursor:default;background:0 0;border:none;position:fixed;inset:0}.react-pop{z-index:35;background:var(--pop-bg);width:min(92vw,400px);padding:var(--space-2);animation:react-pop-in calc(var(--badge-pop-ms) * var(--anim-scale,1)) var(--move-ease);transform-origin:100% 100%;border:1px solid #ffffff1f;border-radius:14px;flex-direction:column;gap:2px;margin-left:auto;display:flex;position:relative;box-shadow:0 10px 30px #00000073}@keyframes react-pop-in{0%{opacity:0;transform:scale(.85)translateY(8px)}}@media (prefers-reduced-motion:reduce){.react-pop{animation:none}}.chat-react{cursor:pointer;min-width:44px;min-height:44px;transition:transform .12s var(--move-ease);background:0 0;border:none;border-radius:10px;place-items:center;padding:0;font-size:22px;line-height:1;display:grid}.chat-react:hover{background:#ffffff14;transform:scale(1.35)translateY(-2px)}.chat-react:active{transform:scale(.92)}@media (prefers-reduced-motion:reduce){.chat-react{transition:none}.chat-react:hover{transform:none}.chat-react:active{background:#ffffff29;transform:none}}.chat-rows{flex-direction:column;gap:2px;display:flex}.chat-row{gap:var(--space-1);grid-template-columns:repeat(auto-fit,minmax(44px,1fr));justify-items:center;display:grid}.chat-toggle{margin-left:var(--space-1);font-size:var(--font-size-s);white-space:nowrap}.chat-unread{background:var(--danger);vertical-align:middle;border-radius:999px;width:8px;height:8px;margin-left:6px;display:inline-block}.chat-log{background:var(--log-bg);width:100%;padding:var(--space-2) var(--space-3);gap:var(--space-1);text-align:left;font-size:var(--font-size-s);border:1px solid #ffffff17;border-radius:12px;flex-direction:column;display:flex;overflow-y:auto}.chat-line{word-break:break-word}.chat-event{color:var(--text-dim)}.chat-time{color:var(--text-dim);font-variant-numeric:tabular-nums;opacity:.75;font-size:11px}.chat-who{color:var(--card-theirs);font-weight:700}.chat-me{color:var(--accent);font-weight:700}.chat-fact{align-items:center;gap:2px var(--space-2);padding:var(--space-1) var(--space-2);background:#ffffff0d;border-radius:8px;grid-template-columns:minmax(0,1fr) auto;display:grid}.chat-fact .chat-time,.chat-fact-text{grid-column:1}.chat-fact-text{font-style:italic}.chat-fact-remove{font-size:var(--font-size-s);padding:0 var(--space-3);grid-area:1/2/span 2}.chat-form{gap:var(--space-2);width:100%;margin-top:var(--space-2);display:flex}.chat-mutes{gap:var(--space-2);width:100%;margin-bottom:var(--space-2);flex-wrap:wrap;display:flex}.chat-mute{font-size:var(--font-size-s)}.chat-refused{width:100%;margin:var(--space-2) 0 0;font-size:var(--font-size-s);color:var(--text-dim);text-align:left}.chat-notice{max-width:min(92vw,400px);padding:var(--space-2) var(--space-3);font-size:var(--font-size-s);color:var(--text);background:var(--pop-bg);pointer-events:none;border:1px solid #ffffff1f;border-radius:14px;margin:0 0 0 auto}.chat-form input{min-width:0;font:inherit;color:var(--text);background:var(--field-bg);border:1px solid var(--plain-border);padding:var(--space-2) var(--space-3);border-radius:8px;flex:1}.end-overlay{width:100%;font:inherit;color:var(--text);text-align:center;cursor:pointer;background:radial-gradient(ellipse at 50% 30%, var(--overlay) 0%, var(--overlay-edge) 75%);transition:background .6s var(--move-ease);border:none}.end-stage-verdict{background:radial-gradient(ellipse at 50% 30%, var(--felt) 0%, var(--overlay-edge) 78%)}.end-stakes{font-size:var(--font-size-s);letter-spacing:.14em;text-transform:uppercase;color:var(--jari-bright,#ff6b6b);font-weight:700;animation:.26s ease-out power-arrive}.end-verdict{animation:.32s ease-out power-arrive}.end-winner{font-family:var(--font-display);letter-spacing:-.01em;font-size:clamp(40px,12vw,68px);font-weight:700;line-height:1}.end-won .end-winner{color:var(--jari);text-shadow:0 0 30px var(--jari-glow)}.end-lost .end-winner{color:var(--text)}.end-verdict .dim{font-size:var(--font-size-m);margin-top:var(--space-1)}.end-grid-head{align-items:baseline;gap:var(--space-2);font-size:var(--font-size-s);color:var(--text-dim);letter-spacing:.04em;text-transform:uppercase;width:100%;display:flex}.end-running{font-variant-numeric:tabular-nums;font-feature-settings:"tnum" 1;color:var(--accent);font-size:var(--font-size-l);letter-spacing:0;margin-left:auto;font-weight:800}.end-place{background:var(--badge-bg);padding:1px var(--space-2);letter-spacing:.06em;text-align:center;border-radius:4px;min-width:42px;font-weight:700;animation:.22s ease-out power-arrive}.end-place-won{background:var(--accent);color:var(--on-accent)}.end-grid-winner{box-shadow:0 0 0 2px var(--accent)}.end-grid-mine .end-grid-head{color:var(--accent)}.end-card{animation:reveal-in calc(var(--end-flip-ms) * var(--anim-scale,1)) ease-out}.end-card-prize{box-shadow:0 0 0 2px var(--jari)}.end-rotate{font-size:var(--font-size-s)}.round-card{flex-direction:column;flex:none;align-items:center;width:min(100%,460px);display:flex}.round-card-ask{width:100%;max-width:340px;padding:var(--space-2) var(--space-4);background:var(--accent);color:var(--ask-ink);border:1px solid var(--accent);border-radius:12px;flex-direction:column;align-items:center;gap:2px;display:flex;box-shadow:0 6px 18px #00000057}.round-card-ask-label{font-family:var(--font-display);font-size:var(--font-size-m);font-weight:800}.round-card-teaser{font-size:var(--font-size-xs);opacity:.8;font-variant-numeric:tabular-nums;font-feature-settings:"tnum" 1;font-weight:600}.round-card-sweep{animation:round-ask-sweep .9s var(--move-ease) 1;background-image:linear-gradient(100deg,#fff0 36%,#ffffff8c 50%,#fff0 64%);background-position:-160% 0;background-repeat:no-repeat;background-size:220% 100%}@keyframes round-ask-sweep{0%{background-position:-160% 0}to{background-position:260% 0}}@media (prefers-reduced-motion:reduce){.round-card-sweep{background-image:none;animation:none}}.game:has(.card-sheet) .chat{visibility:hidden;pointer-events:none}.card-scrim{z-index:40;cursor:default;background:#030a06a8;border:none;margin:0;padding:0;animation:.22s ease-out both card-scrim-in;position:fixed;inset:0}@keyframes card-scrim-in{0%{opacity:0}}.card-sheet{z-index:41;width:100%;height:100dvh;max-height:100dvh;color:var(--text);text-align:left;background:var(--plain-card);padding-top:var(--safe-top);padding-bottom:var(--safe-bottom);animation:card-sheet-up .26s var(--move-ease) both;flex-direction:column;display:flex;position:fixed;bottom:0;left:50%;transform:translate(-50%)}@keyframes card-sheet-up{0%{opacity:0;transform:translate(-50%,24px)}}@media (width>=760px) and (height>=560px){.card-sheet{border:1px solid #ffffff1f;border-radius:16px;width:min(100%,640px);height:auto;max-height:92vh;padding-top:0;padding-bottom:0;top:50%;bottom:auto;transform:translate(-50%,-50%);box-shadow:0 24px 64px #0009}@keyframes card-sheet-up{0%{opacity:0;transform:translate(-50%,calc(16px - 50%))}}}.card-sheet-head{justify-content:space-between;align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-4);border-bottom:1px solid #ffffff14;flex:none;display:flex}.card-sheet-close{flex:none}.card-sheet-body{overscroll-behavior:contain;padding:var(--space-3) var(--space-4) var(--space-4);gap:var(--space-2);flex-direction:column;min-height:0;display:flex;overflow-y:auto}@media (prefers-reduced-motion:reduce){.card-scrim,.card-sheet{animation:none}}.round-card-lines{gap:var(--space-1);text-align:left;flex-direction:column;width:100%;display:flex}.round-card-heading{font-family:var(--font-display);font-size:var(--font-size-m);text-align:center;font-weight:700}.round-card-line{font-size:var(--font-size-s);line-height:1.45}.card-sheet-head .round-card-heading{text-align:left;margin:0}.status-em{color:var(--accent);text-transform:uppercase;letter-spacing:.04em;font-weight:800}.coach{gap:var(--space-3);width:100%;margin-top:var(--space-4);padding-top:var(--space-3);border-top:1px solid #ffffff14;flex-direction:column;display:flex}.coach-heading{text-align:left;margin:0}.coach-instant{gap:var(--space-1);flex-direction:column;display:flex}.coach-questions{gap:var(--space-2);flex-wrap:wrap;padding:2px 0;display:flex}.coach-question{font:inherit;font-size:var(--font-size-s);color:var(--text);min-height:40px;padding:0 var(--space-3);cursor:pointer;white-space:nowrap;background:#e8b04b1a;border:1px solid #e8b04b8c;border-radius:999px;flex:none;font-weight:700}.coach-question:disabled{opacity:.6;cursor:default}@media (hover:hover){.coach-question:not(:disabled):hover{background:#e8b04b33}}.coach-instant-note{font-size:var(--font-size-xs);margin:0}.coach-thread{gap:var(--space-3);text-align:left;flex-direction:column;display:flex}.coach-exchange{gap:var(--space-2);flex-direction:column;display:flex}.coach-asked{max-width:85%;padding:var(--space-2) var(--space-3);font-size:var(--font-size-s);overflow-wrap:anywhere;background:#0000004d;border:1px solid #ffffff14;border-radius:14px 14px 4px;align-self:flex-end;margin:0;line-height:1.4}.coach-asked-who{font-size:var(--font-size-xs);color:var(--accent);margin-bottom:1px;font-weight:700;display:block}.coach-notice{font-size:var(--font-size-s);text-align:center;margin:0}.coach-typing{min-height:0}.coach-typing .loading-dots{color:var(--accent);gap:4px;padding:4px 0;font-size:9px;line-height:1;display:inline-flex}.coach-typed{gap:var(--space-1);flex-direction:column;display:flex}.coach-free{gap:var(--space-2);width:100%;display:flex}.coach-input{min-width:0;min-height:44px;padding:0 var(--space-3);color:var(--text);font:inherit;font-size:var(--font-size-s);background:#00000040;border:1px solid #ffffff2e;border-radius:999px;flex:auto}.coach-input::placeholder{color:var(--text-dim)}.coach-input:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.coach-send{min-width:0;padding-left:var(--space-4);padding-right:var(--space-4);flex:none}.coach-left{font-size:var(--font-size-xs);text-align:left;padding-left:var(--space-3);margin:0}.end-stage-verdict{cursor:default}.card-sheet-notice{justify-content:space-between;align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-4);border-bottom:1px solid #ffffff14;flex:none;display:flex}.card-sheet-notice p{margin:0;font-weight:600}.card-sheet-notice .action-button{white-space:nowrap;flex:none}.card-sheet-notice{animation:card-sheet-notice-in .22s var(--move-ease) both}@keyframes card-sheet-notice-in{0%{opacity:0;transform:translateY(-8px)}}@media (prefers-reduced-motion:reduce){.card-sheet-notice{animation:none}}.review{--review-good:var(--ok,#57c46b);--review-bad:var(--danger);--review-bad-fill:var(--danger-deep);--review-warn:var(--accent);gap:var(--space-2);outline:none;flex-direction:column;width:100%;max-width:100%;display:flex}.review-coach{align-items:flex-start;gap:var(--space-2);display:flex}.review-coach-mark{width:30px;height:30px;color:var(--accent);flex:none;margin-top:2px}.review-bubble{gap:var(--space-1);min-width:0;min-height:3.4em;padding:var(--space-2) var(--space-3);background:#e8b04b14;border:1px solid #e8b04b47;border-radius:14px 14px 14px 4px;flex-direction:column;flex:auto;align-items:flex-start;display:flex;position:relative}.review-bubble:before{content:"";border-top:6px solid #0000;border-bottom:6px solid #0000;border-right:6px solid #e8b04b59;width:0;height:0;position:absolute;top:13px;left:-6px}.review-bubble-line{font-size:var(--font-size-m);margin:0;font-weight:600;line-height:1.4}.review-bubble-why{font-size:var(--font-size-s);color:var(--text-dim);margin:0;line-height:1.45}.review-bot{font-size:var(--font-size-xs);margin:0}.review-coach-small .review-coach-mark{width:20px;height:20px;margin-top:1px}.review-coach-small .review-bubble{min-height:0;padding:var(--space-1) var(--space-3)}.review-coach-small .review-bubble-line{font-weight:400;font-size:var(--font-size-s)}.review-coach-small .review-bubble:before{top:10px}.review-tally{gap:var(--space-1) var(--space-2);flex-wrap:wrap;justify-content:center;display:flex}.review-chip{font:inherit;font-size:var(--font-size-xs);letter-spacing:.03em;background:var(--badge-bg);color:var(--text);border:1px solid #0000;border-radius:999px;align-self:flex-start;align-items:center;gap:5px;padding:3px 9px;font-weight:800;display:inline-flex}button.review-chip{cursor:pointer;min-height:28px}.review-glyph{font-weight:900;line-height:1}.review-chip-count{font-variant-numeric:tabular-nums;font-feature-settings:"tnum" 1;opacity:.75;padding-left:2px}.review-chip-good{background:var(--review-good);color:var(--on-accent)}.review-chip-bad{background:var(--review-bad-fill);border-color:var(--review-bad);color:#fff}.review-chip-warn{background:var(--review-warn);color:var(--on-accent)}.review-chip-here{border-color:var(--text)}.review-head{justify-content:space-between;align-items:baseline;gap:var(--space-3);font-size:var(--font-size-s);display:flex}.review-turn{font-weight:700}.review-counter{font-size:var(--font-size-xs);white-space:nowrap}.review-table{--card-w:28px;--card-h:calc(var(--card-w) * 1.4);gap:var(--space-2);max-width:100%;padding:var(--space-2) var(--space-2) var(--space-3);background:var(--felt);border:1px solid var(--felt-edge);touch-action:pan-y;border-radius:12px;flex-direction:column;display:flex}.review-others{justify-content:center;gap:var(--space-2) var(--space-3);flex-wrap:wrap;display:flex}.review-seat,.review-mine{align-items:center;gap:var(--space-1);flex-direction:column;display:flex}.review-mine{--card-w:40px;--card-h:calc(var(--card-w) * 1.4)}.review-name{font-size:var(--font-size-xs);color:var(--text-dim);font-weight:700}.review-mine .review-name{color:var(--accent)}.review-grid{gap:var(--space-1)}.review-hand{align-items:flex-start;gap:var(--space-1);display:flex}.review-penalties{grid-template-rows:repeat(2,auto);grid-auto-flow:column;grid-auto-columns:var(--card-w);gap:var(--space-1);display:grid}.review-slot-pending{visibility:hidden}.review-middle{--card-w:36px;--card-h:calc(var(--card-w) * 1.4);justify-content:center;align-items:flex-start;gap:var(--space-3) var(--space-4);flex-wrap:wrap;display:flex}.review-pile{flex-direction:column;align-items:center;gap:2px;min-width:52px;max-width:96px;display:flex}.review-pile .review-slot{width:var(--card-w)}.review-pile-label{font-size:var(--font-size-xs);color:var(--text-dim);white-space:nowrap}.review-held .review-pile-label{white-space:normal;text-align:center;overflow-wrap:anywhere}.review-count{color:var(--text);font-weight:700}.review-slot{border-radius:var(--card-radius);position:relative}.review-slot-hole{background:var(--slot-empty);border:1px dashed #ffffff47}.review-slot-reserved{background:var(--slot-empty);border:1px solid #f0c66180}.review-slot-awaiting{background:var(--slot-empty);border:1px dashed #f0c66180}.review-slot-empty{border:1px dashed #ffffff47}.review-slot-known .card{box-shadow:var(--card-lift)}.review-mark{outline:2px solid var(--accent);outline-offset:2px}.review-badge{z-index:1;border:1.5px solid #00000080;border-radius:50%;justify-content:center;align-items:center;width:16px;height:16px;font-size:10px;font-weight:900;line-height:1;animation:.22s ease-out power-arrive;display:flex;position:absolute;top:-7px;right:-7px}.review-badge-good{background:var(--review-good);color:var(--on-accent)}.review-badge-bad{background:var(--review-bad);color:var(--on-accent)}.review-badge-warn{background:var(--review-warn);color:var(--on-accent)}@media (prefers-reduced-motion:reduce){.review-badge{animation:none}}.review-scrub{gap:var(--space-1);flex-direction:column;max-width:100%;display:flex;position:relative}.review-range{opacity:0;pointer-events:none;width:100%;height:100%;margin:0;position:absolute;inset:0}.review-timeline{overscroll-behavior-x:contain;scrollbar-width:none;align-items:stretch;gap:2px;padding:2px 0;display:flex;overflow-x:auto}.review-scrub:focus-within .review-timeline{outline:2px solid var(--accent);outline-offset:2px}.review-timeline::-webkit-scrollbar{display:none}.review-timeline-step{cursor:pointer;background:0 0;border:none;flex:none;justify-content:center;align-items:center;width:14px;height:26px;padding:0;display:flex}.review-timeline-dot{background:#ffffff47;border-radius:2px;justify-content:center;align-items:center;width:4px;height:12px;font-size:0;font-weight:900;line-height:1;display:flex}.review-timeline-moment-good .review-timeline-dot,.review-timeline-moment-bad .review-timeline-dot,.review-timeline-moment-warn .review-timeline-dot{border-radius:50%;width:14px;height:14px;font-size:9px}.review-timeline-moment-good .review-timeline-dot{background:var(--review-good);color:var(--on-accent)}.review-timeline-moment-bad .review-timeline-dot{background:var(--review-bad);color:var(--on-accent)}.review-timeline-moment-warn .review-timeline-dot{background:var(--review-warn);color:var(--on-accent)}.review-timeline-here{position:relative}.review-timeline-here:before{content:"";background:var(--text);opacity:.85;border-radius:2px;position:absolute;inset:0 5px}.review-timeline-here .review-timeline-dot{box-shadow:0 0 0 2px var(--text);position:relative}.review-nav{gap:var(--space-2);grid-template-columns:1fr 1fr 1.7fr;display:grid}.review-nav-two{grid-template-columns:1fr 1fr}.review-nav-button{min-width:0;min-height:48px;padding-left:var(--space-2);padding-right:var(--space-2);font-size:var(--font-size-s);border-radius:12px;font-weight:700}.review-next-moment{background:var(--accent);color:var(--ask-ink);border-color:var(--accent)}.review-hint{font-size:var(--font-size-xs);text-align:center;margin:0}.review-all-games{margin-top:var(--space-2);font:inherit;font-size:var(--font-size-s);color:var(--accent);padding:var(--space-2) var(--space-3);cursor:pointer;background:0 0;border:none;align-self:center;font-weight:700;text-decoration:underline}.review-cost{gap:4px;margin:6px 0 0;display:grid}.review-cost-bar{background:color-mix(in oklab, var(--danger) 22%, transparent);border-radius:999px;height:5px;display:block;position:relative;overflow:hidden}.review-cost-bar:after{content:"";width:var(--cost-share,0%);border-radius:inherit;background:var(--danger);position:absolute;inset:0 auto 0 0}.review-cost-num{font-variant-numeric:tabular-nums;color:var(--text-dim);white-space:nowrap;font-size:.78rem}.review-cost-bar{width:100%}.table-narration{height:4.05em;overflow:hidden}@media (width<=520px){.table-narration{height:2.7em}}.table-narration{font-size:var(--font-size-s);color:var(--text-dim);text-align:center;pointer-events:none;background:0 0;border:0;flex-direction:column;flex:none;justify-content:flex-end;gap:1px;width:100%;margin:0;display:flex}.narration-lines{flex-direction:column;justify-content:flex-end;gap:1px;min-height:0;display:flex}.table-narration-opens{pointer-events:auto;cursor:pointer;border-radius:8px}.table-narration-opens:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.note{margin:0;line-height:1.35;transition:filter .42s ease-out,transform .42s ease-out,opacity .26s linear;display:block}.note-old{opacity:.55}.note-mine{color:var(--text)}.note-moving{opacity:.75;animation:none}.peek-leave{align-items:center;gap:var(--space-3);margin-top:var(--space-4);flex-direction:column;display:flex}.peek-leave .plain-button{padding:var(--space-2) var(--space-4)}.peek-leave p{text-align:center;max-width:28ch;line-height:1.4;font-size:var(--font-size-s);margin:0}.note-plain{color:var(--text-dim)}.note-atMe{color:var(--card-mine);font-weight:600}.note-big{color:var(--jari-bright);letter-spacing:.01em;background:var(--backing);border-radius:6px;width:max-content;max-width:100%;padding:1px 7px;font-weight:700}.note-fresh{filter:brightness(1.35);transform:translate(2px)}.note-flow{opacity:.9;margin-right:5px;font-weight:700;display:inline-block}.note-flow-in{color:var(--card-mine)}.note-flow-out{color:var(--card-theirs)}@media (prefers-reduced-motion:reduce){.note{transition:none}.note-fresh{transform:none}}:is(html:has(.tut-shell),body:has(.tut-shell)){overflow:hidden}.tut-shell{z-index:60;--tut-table-min:326px;--tut-card-max:96px;--tut-table-want:calc(206px + 4.816 * var(--tut-card-max));--tut-guide-room:min(228px, 100% - var(--tut-table-min));grid-template-columns:minmax(0,560px);grid-template-rows:minmax(0, 1fr) min(var(--tut-table-want), 100% - var(--tut-guide-room)) var(--tut-guide-room) minmax(0, 1fr);padding-bottom:var(--safe-bottom);background:radial-gradient(ellipse at 50% 35%, var(--felt) 0%, var(--felt-edge) 80%);animation:tut-fade calc(var(--screen-fade-ms) * var(--anim-scale,1)) ease-out;grid-template-areas:".""table""guide"".";justify-content:center;display:grid;position:fixed;inset:0}@keyframes tut-fade{0%{opacity:0}}.tut-table{grid-area:table;min-width:0;min-height:0;position:relative;overflow:hidden}.tut-table .game{height:100%;padding-bottom:var(--space-2);background:0 0}.tut-table .peek-overlay,.tut-table .end-overlay{position:absolute}.tut-table .peek-overlay{gap:var(--space-2);padding:var(--space-3)}.tut-table .peek-overlay h2{margin:auto 0 0}.tut-shell:has(.peek-overlay){background:radial-gradient(ellipse at 50% 25%, var(--peek-bg) 0%, var(--peek-bg-edge) 70%), var(--peek-bg-edge)}.tut-table .peek-overlay{background:0 0}.tut-table .game:has(>.peek-overlay)>:not(.peek-overlay){visibility:hidden}.tut-table .peek-blurb{display:none}.tut-table .peek-ready{padding:var(--space-2) var(--space-4)}.tut-table .chat,.tut-table .peek-leave,.tut-table .power-prompt .plain-button,.tut-table .end-actions,.tut-table .status,.tut-table .table-narration{display:none}.tut-table .game>*{--card-w:clamp(30px, min(20cqi, (100cqb - var(--table-chrome)) / var(--table-card-heights) / 1.4), var(--tut-card-max));--card-h:calc(var(--card-w) * 1.4);--pile-card-w:calc(var(--card-w) * 1.31);--pile-card-h:calc(var(--pile-card-w) * 1.4)}.tut-table .game>.opponents{--tut-band-h:calc(var(--opp-band-want) + 4px);max-height:var(--tut-band-h)}@media (width<=899.98px),(orientation:portrait){.tut-table .game{--table-chrome:164px;--table-card-heights:3.44;align-content:space-evenly;column-gap:var(--space-3);grid-template:"opp piles""mine mine""acts acts"/minmax(0,1fr) minmax(0,1fr);display:grid}.tut-table .game>*{grid-column:1/-1}.tut-table .game>.opponents{height:var(--tut-band-h);grid-area:opp;justify-content:end}.tut-table .game>.center{grid-area:piles;justify-content:start;align-self:center}.tut-table .game>.seat-mine{grid-area:mine;margin-top:0}.tut-table .game>.power-prompt,.tut-table .game>.actions{grid-area:acts;min-height:52px;margin-top:0}.tut-table .game>.actions{padding-top:var(--space-1);padding-bottom:var(--space-1)}}.tut-ring{z-index:33;pointer-events:none;border-radius:calc(var(--card-radius) + 4px);border:2px solid var(--accent);animation:1.4s ease-in-out infinite tut-ring-pulse;position:fixed;box-shadow:0 0 0 4px #e8b04b40,0 0 18px #e8b04b8c}@keyframes tut-ring-pulse{50%{box-shadow:0 0 0 7px #e8b04b1f,0 0 26px #e8b04bbf}}@media (prefers-reduced-motion:reduce){.tut-shell,.tut-ring,.tut-nudge{animation:none}.tut-guide{transition:none}}.tut-guide{box-sizing:border-box;max-height:calc(100% - var(--space-1));min-height:0;margin:0 var(--space-2);border:1px solid var(--plain-border);background:var(--plain-card);color:var(--text);border-radius:14px;flex-direction:column;grid-area:guide;align-self:start;display:flex;box-shadow:0 10px 30px #00000059}.tut-guide-top{align-items:center;gap:var(--space-2);padding:6px var(--space-2) 0 var(--space-3);display:flex}.tut-title{min-width:0;font-family:var(--font-display);font-size:var(--font-size-l);flex:1;margin:0;line-height:1.2}.tut-guide-step{font-size:var(--font-size-s);color:var(--text-dim);font-variant-numeric:tabular-nums}.tut-quit{min-height:34px;padding:0 var(--space-3)}.tut-quit-ask{flex:1;min-width:0;font-weight:600}.tut-guide-body{min-height:0;padding:6px var(--space-3) var(--space-2);gap:var(--space-2);flex-direction:column;display:flex;overflow-y:auto}.tut-title,.tut-say{transition:opacity .18s ease-out}.tut-title.tut-stale,.tut-stale .tut-say{opacity:.45}.tut-say{color:var(--text);margin:0;font-size:14px;line-height:1.4}.tut-hint{border-left:3px solid var(--accent);color:var(--accent);background:#e8b04b1a;border-radius:0 8px 8px 0;margin:0;padding:6px 10px;font-size:14px;font-weight:700;line-height:1.35}.tut-nudge{padding:var(--space-2) var(--space-3);color:var(--text);background:#e0525224;border:1px solid #e0525266;border-radius:8px;margin:0;font-size:14px;line-height:1.35;animation:.16s ease-out tut-fade}.tut-wait{color:var(--text-dim);font-size:var(--font-size-s);margin:0}.tut-next{padding:0 var(--space-4);align-self:flex-end}.tut-finish{justify-content:flex-end;gap:var(--space-2);display:flex}.tut-back{padding:0 var(--space-3)}.tut-ask{gap:var(--space-2);padding-top:var(--space-2);border-top:1px solid var(--plain-border);flex-direction:column;display:flex}.tut-ask-gate{align-items:center;gap:var(--space-2);display:flex}.tut-ask-line{min-width:0;font-size:var(--font-size-s);flex:1;margin:0;line-height:1.35}.tut-ask-signin{min-height:34px;padding:0 var(--space-3);flex:none}.tut-pill{background:var(--card-face);color:var(--card-black);vertical-align:baseline;white-space:nowrap;border-radius:4px;margin:0 1px;padding:0 6px;font-size:.92em;font-weight:700;line-height:1.45;display:inline-block}.tut-pill-red{color:var(--card-red)}@media (width<=359.98px){.tut-title{font-size:18px}}@media (width>=900px) and (orientation:landscape){.tut-shell{padding:0 var(--space-4);grid-template:"table guide"minmax(0,1fr)/clamp(380px,50dvh,560px) clamp(280px,26vw,360px);align-items:center;column-gap:clamp(16px,2vw,32px)}.tut-table{height:100%}.tut-table .game{--table-chrome:214px;--table-card-heights:4.75}.tut-guide{max-height:calc(100% - 2 * var(--space-4));transform:translateY(var(--tut-guide-y,calc(50dvh - 50%)));align-self:start;margin:0;transition:transform .24s ease-out}.tut-say,.tut-hint,.tut-nudge{font-size:15px}}.drill-intro{color:var(--text-dim);margin:0 0 var(--space-3)}.drill-cards{gap:var(--space-2);width:100%;display:grid}.drill-card{text-align:left}.drill-why{color:var(--text-dim);font-size:.85em}.drill-shell{z-index:60;--drill-room:200px;grid-template-rows:minmax(0, 1fr) var(--drill-room);padding-bottom:var(--safe-bottom);background:radial-gradient(ellipse at 50% 35%, var(--felt) 0%, var(--felt-edge) 80%);display:grid;position:fixed;inset:0}.drill-table{min-width:0;min-height:0;transition:opacity .24s;position:relative;overflow:hidden}.drill-paused .drill-table{opacity:.35;pointer-events:none}@media (prefers-reduced-motion:reduce){.drill-table{transition:none}}.drill-paused-card{inset:var(--space-2) 0 calc(var(--space-2) + var(--safe-bottom));height:fit-content;max-height:calc(100% - 2 * var(--space-2) - var(--safe-bottom));z-index:1;gap:var(--space-2);margin:auto;position:absolute}.drill-part h3{color:var(--text-dim);margin:0 0 2px;font-size:12px;font-weight:700}.drill-part p{margin:0}.drill-counts{margin:0;padding-left:1.1em}.drill-narration{color:var(--text);margin:0;font-weight:600}.drill-read-again{margin-left:var(--space-2);color:var(--accent);font:inherit;cursor:pointer;background:0 0;border:0;padding:0;text-decoration:underline}.drill-table .game{height:100%;padding-bottom:var(--space-2);background:0 0}.drill-table .peek-overlay,.drill-table .end-overlay{position:absolute}.drill-paused .drill-table .peek-overlay{display:none}.drill-table .game{--table-chrome:194px;--table-card-heights:3.44;align-content:space-evenly;column-gap:var(--space-3);grid-template:"opp piles""status status""mine mine""acts acts"/minmax(0,1fr) minmax(0,1fr);display:grid}.drill-table .game>*{--card-w:clamp(30px, min(20cqi, (100cqb - var(--table-chrome)) / var(--table-card-heights) / 1.4), 64px);--card-h:calc(var(--card-w) * 1.4);--pile-card-w:calc(var(--card-w) * 1.31);--pile-card-h:calc(var(--pile-card-w) * 1.4);grid-column:1/-1}.drill-table .game>.opponents{--drill-band-h:calc(var(--opp-band-want) + 4px);height:var(--drill-band-h);max-height:var(--drill-band-h);grid-area:opp;justify-content:end}.drill-table .game>.center{grid-area:piles;justify-content:start;align-self:center}.drill-table .game>.status{grid-area:status}.drill-table .game>.seat-mine{grid-area:mine;margin-top:0}.drill-table .game>.power-prompt,.drill-table .game>.actions{min-height:52px;padding-top:var(--space-1);padding-bottom:var(--space-1);grid-area:acts;margin-top:0}.drill-table .table-narration,.drill-table .chat,.drill-table .peek-leave{display:none}.drill-strip{box-sizing:border-box;width:min(520px, 100% - 2 * var(--space-2));max-height:calc(100% - var(--space-2));padding:var(--space-2) var(--space-3) 10px;border:1px solid var(--plain-border);background:var(--plain-card);color:var(--text);border-radius:14px;flex-direction:column;place-self:start center;gap:6px;font-size:14px;line-height:1.4;display:flex;overflow-y:auto;box-shadow:0 10px 30px #00000059}.drill-strip-top{align-items:center;gap:var(--space-2);width:100%;display:flex}.drill-kicker{font-family:var(--font-display);font-size:var(--font-size-l);line-height:1.2}.drill-clock{font-variant-numeric:tabular-nums;background:color-mix(in srgb, var(--accent) 14%, transparent);color:var(--accent);border-radius:999px;padding:2px 8px;font-weight:700}.drill-strip-top .plain-button{min-height:34px;padding:0 var(--space-3);margin-left:auto}.drill-foot{align-items:center;gap:var(--space-3);display:flex}.drill-foot p{flex:1;min-width:0}.drill-go{min-width:112px;min-height:44px;padding:0 var(--space-4);flex:none;font-size:17px}@media (width<=359.98px){.drill-shell{--drill-room:252px}}@media (width>=900px) and (orientation:landscape){.drill-strip{width:min(600px, 100% - 2 * var(--space-4));padding:var(--space-3) var(--space-4);font-size:15px}}.drill-know{color:var(--text);margin:0;font-weight:600}.drill-brief,.drill-ready,.drill-time{color:var(--text-dim);margin:0}.drill-verdict{margin:0;font-weight:600}.drill-won{color:var(--ok)}.drill-half{color:var(--accent)}.drill-lost,.drill-wrong{color:var(--jari-bright)}.loading{white-space:nowrap}.loading-dots span{opacity:.15;animation:1.25s ease-in-out infinite loading-dot}.loading-dots span:nth-child(2){animation-delay:.18s}.loading-dots span:nth-child(3){animation-delay:.36s}@keyframes loading-dot{0%,60%,to{opacity:.15}30%{opacity:1}}@media (prefers-reduced-motion:reduce){.loading-dots span{opacity:.6;animation:none}}.sheet{z-index:60;padding:var(--space-3);padding-top:calc(var(--space-3) + var(--safe-top));padding-bottom:calc(var(--space-3) + var(--safe-bottom));background:var(--scrim);animation:fade-in calc(var(--screen-fade-ms) * var(--anim-scale,1)) ease-out;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.sheet-panel{background:var(--plain-bg);border:1px solid var(--plain-border);border-radius:14px;flex-direction:column;width:min(640px,100%);max-height:100%;display:flex;overflow:hidden;box-shadow:0 18px 50px #0009}.sheet-top{justify-content:space-between;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--plain-border);background:var(--plain-card);display:flex}.sheet-title{font-family:var(--font-display);margin:0;font-size:24px}.sheet-body{padding:var(--space-4);scroll-behavior:smooth;line-height:1.6;overflow-y:auto}@media (prefers-reduced-motion:reduce){.sheet-body{scroll-behavior:auto}}.sheet-body h3{margin:var(--space-4) 0 var(--space-2);font-family:var(--font-display);color:var(--accent);font-size:20px}.sheet-body p,.sheet-body ul{margin:0 0 var(--space-3)}.sheet-body ul{padding-left:var(--space-4)}.sheet-body li{margin-bottom:var(--space-1)}.lede{font-size:var(--font-size-l);line-height:1.5}@property --rules-measure{syntax:"<length>";inherits:true;initial-value:420px}.rules-page{--rules-measure:46ch}.rules-page>.lede{max-width:var(--rules-measure);margin-inline:auto}.rules-section{border-top:1px solid var(--plain-border);padding-block:var(--space-4);scroll-margin-top:var(--space-2)}.rules-section>h3,.rules-section>p,.rules-section>ul{max-width:var(--rules-measure);margin-inline:auto}.rules-section>h3{margin-block:0 var(--space-3)}.rules-figure{align-items:center;gap:var(--space-2);max-width:420px;margin:0 auto var(--space-4);padding:var(--space-3);background:radial-gradient(ellipse at 50% 30%, var(--felt) 0%, var(--felt-edge) 90%);border:1px solid #ffffff12;border-radius:14px;flex-direction:column;display:flex}.rules-section>.rfig{max-width:420px;margin:0 auto var(--space-4)}.rules-again{min-height:44px;padding-inline:var(--space-4);margin-top:var(--space-1)}.rules-short{max-width:var(--rules-measure);margin-inline:auto;margin-bottom:var(--space-3);padding:var(--space-3);background:var(--plain-card);border:1px solid var(--plain-border);border-radius:12px}.rules-short .rules-short-cap{margin:0 0 var(--space-2);font-size:var(--font-size-xs);letter-spacing:.08em;text-transform:uppercase;color:var(--text-dim);line-height:1}.rules-short ul{gap:var(--space-2);grid-template-columns:repeat(2,minmax(0,1fr));margin:0;padding:0;list-style:none;display:grid}.rules-short li{margin:0;display:flex}.rules-short li:last-child{grid-column:1/-1}@media (width>=560px){.rules-short ul{flex-wrap:wrap;justify-content:center;display:flex}}.rules-pill{min-height:44px;padding:var(--space-2) var(--space-3);background:linear-gradient(160deg, var(--plain-bg), var(--entry-fade));border:1px solid var(--plain-border);color:var(--text);font-size:var(--font-size-s);text-align:left;cursor:pointer;border-radius:999px;flex:auto;align-items:center;font-weight:600;line-height:1.3;transition:border-color .14s ease-out,color .14s ease-out;display:inline-flex}@media (hover:hover){.rules-pill:hover{border-color:var(--accent);color:var(--accent)}}.rules-pill:focus-visible{outline:2px solid var(--accent);outline-offset:3px}@media (prefers-reduced-motion:reduce){.rules-pill{transition:none}}.tut-figure{--card-w:clamp(44px, 13vw, 72px);--card-h:calc(var(--card-w) * 1.4)}.rules-figure .tut-lead{text-align:center;max-width:32ch;font-size:var(--font-size-s);color:var(--text-dim);margin:0;line-height:1.35}.tut-grid{grid-template-columns:repeat(2, var(--card-w));gap:var(--space-2);justify-content:center;align-items:start;display:grid}.value-strip{--card-w:clamp(40px, 11.5vw, 60px);--card-h:calc(var(--card-w) * 1.4);grid-template-columns:repeat(4, minmax(var(--card-w), max-content));justify-content:center;gap:var(--space-3) var(--space-2);display:grid}.value-item{align-items:center;gap:var(--space-1);flex-direction:column;display:flex}.value-points{font-size:var(--font-size-xs);color:var(--text);white-space:nowrap;font-weight:700;line-height:1.2}.flipper{align-items:center;gap:var(--space-1);cursor:pointer;perspective:700px;background:0 0;border:0;flex-direction:column;padding:0;display:flex}.flipper-inner{width:var(--card-w);height:var(--card-h);transform-style:preserve-3d;transition:transform var(--face-up-ms) var(--move-ease);display:block;position:relative}.flipper-up .flipper-inner{transform:rotateY(180deg)}.flipper-side{backface-visibility:hidden;transition:visibility 0s linear calc(var(--face-up-ms) / 2);position:absolute;inset:0}.flipper-front{visibility:hidden;transform:rotateY(180deg)}.flipper-up .flipper-front{visibility:visible}.flipper-up .flipper-back{visibility:hidden}.flipper-note{text-align:center;max-width:15ch;font-size:var(--font-size-s);color:var(--text-dim);line-height:1.35}.flipper-up .flipper-note{color:var(--text)}@media (prefers-reduced-motion:reduce){.flipper-inner,.flipper-side{transition:none}}.rules-powers{--card-w:48px;--card-h:calc(var(--card-w) * 1.4);gap:var(--space-2);max-width:var(--rules-measure);margin:0 auto var(--space-4);grid-template-columns:minmax(0,1fr);display:grid}@media (width>=480px){.rules-powers{grid-template-columns:repeat(2,minmax(0,1fr))}}.rules-power{align-items:center;gap:var(--space-3);padding:var(--space-2);background:linear-gradient(160deg, var(--plain-card), var(--entry-fade));border:1px solid var(--plain-border);border-radius:10px;display:flex}.rules-power .card{width:var(--card-w);height:var(--card-h);flex:none}.rules-power span{min-width:0;font-size:var(--font-size-s);line-height:1.4}.sheet-body .rules-habits{gap:var(--space-2);margin:0 auto var(--space-3);padding:0;list-style:none;display:grid}.rules-habits li{padding:var(--space-3);background:linear-gradient(160deg, var(--plain-card), var(--entry-fade));border:1px solid var(--plain-border);font-size:var(--font-size-s);color:var(--text-dim);border-radius:10px;margin:0;line-height:1.5}.rules-habits strong{font-family:var(--font-display);color:var(--text);font-size:16px;line-height:1.25;display:block}.cutting{gap:var(--space-4);max-width:26rem;padding:var(--space-2) 0 var(--space-4);grid-template-columns:repeat(2,minmax(0,1fr));margin:0 auto;display:grid}.cut{align-items:center;gap:var(--space-2);flex-direction:column;margin:0;display:flex}.cut figcaption{font-size:var(--font-size-s);color:var(--text-dim);text-align:center;line-height:1.4}.cut-art{border-radius:var(--card-radius);justify-content:center;align-items:center;width:72px;height:100.8px;font-size:18px;display:flex;position:relative;overflow:hidden}.cut-joker-one,.cut-argyle{border:1px solid var(--accent);background:radial-gradient(circle at 50% 38%,#35264a,#1b1526 68%)}.cut-joker-one svg{width:100%;height:100%;position:absolute;inset:0}.cut-halo{fill:#e8b04b29}.cut-cap{fill:var(--jari)}.cut-face{fill:var(--card-face)}.cut-ink{fill:#1b1526}.cut-bell{fill:var(--accent);opacity:.85}.cut-word{text-align:center;letter-spacing:.18em;text-transform:uppercase;color:var(--accent);opacity:.85;font-size:.5em;position:absolute;bottom:3%;left:0;right:0}.cut-between{font-size:var(--font-size-s);color:var(--text-dim);text-align:center;grid-column:1/-1;margin:0;line-height:1.4}.cut-argyle{background:repeating-linear-gradient(45deg,#0000 0 11%,#d92b2b6b 11% 22%),repeating-linear-gradient(-45deg,#0000 0 11%,#e8b04b42 11% 22%),radial-gradient(circle at 50% 34%,#2b2038 0%,#150f1f 78%)}.cut-band{text-align:center;font-family:var(--font-display);letter-spacing:.16em;text-transform:uppercase;color:#2a1c06;background:linear-gradient(#f7e3ab 0%,#e9c266 38%,#c9992f 62%,#a8761c 100%);padding:3% 0;font-size:.66em;font-weight:700;position:absolute;top:50%;left:0;right:0;transform:translateY(-50%);box-shadow:inset 0 1px #ffffffbf,inset 0 -1px #00000040,0 2px 7px #0000008c}.cut-emotes{width:auto;min-width:calc(var(--card-w) * 1.6);height:auto;padding:var(--space-2) var(--space-3);background:var(--plain-card);border:1px solid var(--plain-border);gap:var(--space-3);border-radius:10px;align-items:start}.cut-wide{grid-column:1/-1}.cut-mark{flex-direction:column;flex:0 auto;align-items:center;gap:2px;min-width:0;display:flex}.cut-mark svg{width:34px;height:34px;color:var(--text)}.cut-mark-was{opacity:.75;font-size:19px;line-height:1}.cut-mark-read{font-size:var(--font-size-xs,11px);color:var(--text-dim);text-align:center;line-height:1.2}.beta-form{gap:var(--space-3);padding-bottom:var(--space-3);flex-direction:column;display:flex}.beta-form textarea{font:inherit;resize:vertical}.beta-thanks{font-size:var(--font-size-l);color:var(--accent)}.create-links{gap:var(--space-2);width:min(100%,620px);margin-top:var(--space-4);grid-template-columns:1fr;display:grid}@media (width>=640px){.create-links{gap:var(--space-3);grid-template-columns:repeat(2,1fr)}}@media (width>=980px){.create-links{grid-template-columns:repeat(4,1fr);width:min(100%,880px)}}.entry{column-gap:var(--space-3);padding:var(--space-3);text-align:left;cursor:pointer;min-height:64px;color:var(--text);background:linear-gradient(160deg, var(--plain-card), var(--entry-fade));border:1px solid var(--plain-border);transition:transform .14s var(--move-ease), border-color .14s ease-out, box-shadow .14s ease-out;border-radius:12px;grid-template-columns:auto 1fr;align-content:center;align-items:center;display:grid}.entry strong,.entry span:not(.entry-mark):not(.entry-flag){grid-column:2}@media (width>=640px){.entry{align-items:flex-start;gap:var(--space-1);padding:var(--space-3) var(--space-4);flex-direction:column;min-height:0;display:flex}}.entry strong{font-family:var(--font-display);font-size:17px;font-weight:700;line-height:1.2}.entry span{font-size:var(--font-size-s);color:var(--text-dim);line-height:1.35}.entry-mark{width:22px;height:22px;color:var(--text-dim);grid-row:1/span 2;align-self:center;transition:color .14s ease-out}@media (width>=640px){.entry-mark{margin-bottom:var(--space-1);align-self:flex-start}}.entry-wide{grid-column:1/-1}@media (width>=640px){.entry-wide{align-items:center;gap:2px var(--space-3);display:grid}.entry-wide .entry-mark{align-self:center;margin-bottom:0}}.entry-play{background:linear-gradient(160deg, #e8b04b24, var(--entry-fade));border-color:#e8b04b8c}.entry-play .entry-mark{color:var(--accent)}.entry-nudge{border-color:var(--accent);animation:2.6s ease-in-out infinite entry-breathe;position:relative;box-shadow:0 0 0 1px #e8b04b59}.entry .entry-flag{top:-10px;left:var(--space-3);background:var(--accent);color:var(--on-accent);letter-spacing:.04em;text-transform:uppercase;white-space:nowrap;border-radius:999px;padding:2px 9px;font-size:11px;font-weight:700;position:absolute}@keyframes entry-breathe{50%{box-shadow:0 0 0 4px #e8b04b29}}@media (prefers-reduced-motion:reduce){.entry-nudge{animation:none}}@media (hover:hover){.entry:hover{border-color:var(--accent);transform:translateY(-3px);box-shadow:0 10px 24px #00000073}.entry:hover .entry-mark{color:var(--accent)}}.entry:focus-visible{outline:2px solid var(--accent);outline-offset:3px}@media (prefers-reduced-motion:reduce){.entry{transition:none}}.bg-arrive{animation:3s ease-out both bg-arrive}@keyframes bg-arrive{0%{opacity:0}to{opacity:1}}@media (prefers-reduced-motion:reduce){.bg-arrive{animation:none}}.rematch-call{align-items:center;gap:var(--space-3);text-align:center;width:min(460px,94vw);padding:var(--space-3) var(--space-4);border:1px solid var(--accent);animation:rematch-call-in .24s var(--move-ease);background:#10241aeb;border-radius:14px;flex-direction:column;display:flex;box-shadow:0 10px 28px #00000073}@keyframes rematch-call-in{0%{opacity:0;transform:translateY(-6px)scale(.98)}}.rematch-call p{min-width:0;margin:0}.rematch-actions{justify-content:center;align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.settings-row{align-items:center;gap:var(--space-3);display:flex}.settings-sound{flex:none}.entry-on{border-color:var(--accent);background:#e8b04b1f}@media (prefers-reduced-motion:reduce){.rematch-call{animation:none}}.lobby-chat{gap:var(--space-2);flex-direction:column;width:min(460px,94vw);display:flex}.lobby-chat .chat-log{min-height:64px;max-height:22vh}.front-links{justify-content:center;display:flex}.front-links a{min-height:44px;padding:0 var(--space-2);color:var(--text-dim);font-size:var(--font-size-s);text-underline-offset:3px;align-items:center;display:inline-flex}.rfig{--card-w:clamp(40px, 12vw, 56px);--card-h:calc(var(--card-w) * 1.4);--pile-card-w:calc(var(--card-w) * 1.15);--pile-card-h:calc(var(--pile-card-w) * 1.4);align-items:center;gap:var(--space-2);flex-direction:column;width:100%;display:flex}.rtable{width:100%}.rtable-felt{box-sizing:border-box;align-items:center;gap:var(--space-2);width:100%;padding:var(--space-3);background:radial-gradient(ellipse at 50% 30%, var(--felt) 0%, var(--felt-edge) 90%);border:1px solid #ffffff12;border-radius:14px;flex-direction:column;display:flex;container-type:inline-size}.rtable-top{--opp-cols-eff:1;--opp-col-gap:0px;justify-content:center;align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.rtable .seat-mine{align-self:stretch;margin-top:0}@media (hover:hover) and (pointer:fine){.rtable:not(:hover)>.carried{display:none}.rtable:hover:has(>.carried) .seat-mine .held-card{opacity:.25}}@media (prefers-reduced-motion:reduce){.rtable:hover:has(>.carried) .seat-mine .held-card{opacity:1}}.rfig-hint{text-align:center;max-width:46ch;min-height:3.4em;color:var(--text-dim);font-size:var(--font-size-s);margin:0}.rfig-choices{justify-content:center;gap:var(--space-2);grid-template-columns:repeat(2,minmax(0,1fr));width:100%;display:grid}@media (width>=560px){.rfig-choices{flex-wrap:wrap;display:flex}}.rfig-choices .entry{min-height:44px;padding:var(--space-2) var(--space-3);text-align:center;flex-direction:row;justify-content:center;align-items:center;font-weight:600;display:flex}.rfig-totals{gap:var(--space-4);font-size:var(--font-size-s);display:flex}
