.joker-card { color: #85517c; }
.card-corner .joker-label { font: 700 6px/1.5 Manrope, sans-serif; letter-spacing: .4px; }
.joker-symbol { position: absolute; inset: 21% 20%; width: 60%; height: 58%; }
.rummy-board { --r-mint: #b9e8d6; }
:root[data-theme=daylight] .rummy-board { --r-mint: #256c56; }
.rummy-board .table-column { min-width: 0; }
.r-seating { display: grid; grid-template-columns: minmax(0, 1fr); border: 1px solid var(--line); border-radius: 18px; background: var(--surface); margin: 0 0 16px; overflow: hidden; }
.r-seat { display: flex; align-items: center; gap: 12px; padding: 11px 16px; min-width: 0; min-height: 76px; }
.r-seat + .r-seat { border-top: 1px solid var(--line); }
.r-seat.active { background: linear-gradient(100deg, var(--accent-soft), transparent); box-shadow: inset 3px 0 var(--accent); }
.r-seat-avatar { display: block; flex: 0 0 40px; }
.r-seat-avatar img { display: block; width: 40px; height: 40px; border-radius: 50%; }
.r-seat.active .r-seat-avatar img { outline: 2px solid var(--accent); outline-offset: 2px; }
.r-seat-identity { min-width: 0; flex: 1; }
.r-seat-identity > strong { display: block; font-size: 16px; line-height: 1.35; overflow-wrap: anywhere; }
.r-seat-identity > small { display: flex; align-items: center; flex-wrap: wrap; gap: 3px 9px; font-size: 14px; line-height: 1.4; color: var(--muted); margin-top: 4px; }
.r-seat-turn { color: var(--accent); font-size: 12px; font-weight: 650; white-space: nowrap; }
.r-seat-turn::before { content: '·'; margin-right: 7px; }
.r-opened { display: flex; flex-direction: column; align-items: flex-end; justify-content: center; gap: 3px; flex: none; padding: 5px 0 5px 6px; min-height: 48px; color: var(--r-mint); text-align: right; border-radius: 6px; }
.r-opened:hover .r-opened-label strong { text-decoration: underline; text-underline-offset: 4px; }
.r-opened:focus-visible { outline-offset: 2px; }
.r-opened-label { display: flex; align-items: center; gap: 6px; }
.r-opened strong { font-size: 14px; font-weight: 650; white-space: nowrap; }
.r-opened small { display: flex; align-items: center; gap: 5px; font-size: 12px; color: var(--muted); }
.r-seat-collecting { flex: none; text-align: right; }
.r-seat-collecting strong { display: block; color: var(--muted); font-size: 14px; font-weight: 500; }
.r-seat-collecting small { display: block; margin-top: 3px; color: var(--muted); font-size: 12px; font-variant-numeric: tabular-nums; }
.r-open-notice { position: fixed; z-index: 15; bottom: 24px; left: 50%; transform: translateX(-50%); display: flex; gap: 12px; align-items: flex-start; width: min(440px, calc(100% - 28px)); padding: 17px; border: 1px solid #78b9a380; border-radius: 17px; background: var(--surface-raised); box-shadow: 0 12px 45px #0005; }
.r-open-notice-icon { display: grid; place-items: center; flex: 0 0 37px; height: 37px; border-radius: 12px; color: #b9e8d6; background: #69c3a91a; }
.r-open-notice p { color: var(--text); font-size: 14px; overflow-wrap: anywhere; }
.r-open-notice .grow>span { display: block; font-size: 12px; color: var(--muted); margin-top: 3px; }
.r-open-notice-link { display: inline-flex; align-items: center; gap: 8px; min-height: 34px; padding: 5px 0 0; color: #b9e8d6; font-size: 13px; font-weight: 700; }
.r-dismiss { display: grid; place-items: center; flex: 0 0 32px; height: 32px; color: var(--muted); border-radius: 8px; }
.r-dismiss:hover { background: var(--line); color: var(--text); }
.r-lobby { padding: 35px 25px; border-radius: 24px; text-align: center; background: radial-gradient(ellipse at top, #69c3a915, transparent 75%), var(--surface); }
.r-lobby h2 { font-size: 25px; margin: 25px 0 10px; }
.r-lobby p { max-width: 420px; margin: auto; font-size: 15px; }
.r-lobby .lobby-actions { margin: 24px auto 0; }
.r-lobby-cards { display: flex; justify-content: center; gap: 10px; margin-top: 24px; }
.r-lobby-cards .playing-card { width: 84px; height: 126px; }
.r-lobby-cards>.playing-card:first-child { transform: rotate(-10deg) translateY(9px); }
.r-lobby-cards>.playing-card:last-child { transform: rotate(10deg) translateY(9px); }
.r-goal { border: 1px solid #78b9a34d; background: radial-gradient(ellipse at top left, #66c6a923, transparent 75%), var(--surface); border-radius: 20px; padding: 18px 20px 15px; margin: 0 0 18px; }
.r-goal-heading { display: flex; align-items: center; gap: 16px; }
.r-round-number { display: flex; align-items: baseline; gap: 4px; flex: none; color: var(--r-mint); font-size: 34px; line-height: 1; font-weight: 800; letter-spacing: -1.5px; font-variant-numeric: tabular-nums; }
.r-round-number small { font-size: 12px; font-weight: 500; color: var(--muted); letter-spacing: 0; white-space: nowrap; }
.r-goal h2 { font-size: 24px; margin: 5px 0 0; line-height: 1.25; overflow-wrap: anywhere; }
.r-goal .eyebrow { color: var(--r-mint); font-size: 10px; letter-spacing: 1.5px; }
.r-goal-chips { display: flex; gap: 6px 15px; flex-wrap: wrap; margin-top: 12px; }
.r-goal-chips > span { display: inline-flex; align-items: center; gap: 7px; font-size: 14px; }
.r-goal-chips svg { color: var(--r-mint); }
.r-goal-meta { display: flex; justify-content: space-between; flex-wrap: wrap; gap: 6px 14px; margin-top: 12px; padding-top: 10px; border-top: 1px solid #78b9a329; color: var(--muted); }
.r-goal-meta > span { display: inline-flex; align-items: center; gap: 6px; font-size: 12px; }
.r-progress { display: flex; gap: 4px; margin-top: 12px; }
.r-progress i { flex: 1; height: 3px; background: var(--line); border-radius: 5px; }
.r-progress .done { background: #477e6e; }.r-progress .current { background: #a6dfcd; }
.r-hand-panel { border: 1px solid var(--line); border-radius: 23px; background: var(--surface); padding: 20px; }
.r-piles { display: flex; gap: 24px; justify-content: center; padding: 18px 0; border-bottom: 1px solid var(--line); margin-bottom: 18px; }
.r-pile { display: flex; flex-direction: column; align-items: center; gap: 9px; padding: 5px; min-width: 130px; }
.r-pile .playing-card, .r-empty-card { width: 84px; height: 125px; }
.r-pile:disabled { opacity: 1; cursor: default; }.r-pile:enabled .playing-card { outline: 2px solid var(--accent); outline-offset: 4px; }
.r-pile strong { font-size: 12px; margin-top: 6px; }.r-pile small { color: var(--muted); font-size: 11px; }
.r-empty-card { display: grid; place-items: center; color: var(--muted); border: 1px dashed var(--line); border-radius: 9px; font-size: 12px; }
.r-pile .r-discard-author { max-width: 155px; font-size: 11px; line-height: 1.4; color: var(--r-mint); overflow-wrap: anywhere; }
.r-buy-interest { display: flex; align-items: center; gap: 10px; padding: 12px; border: 1px solid #78b9a34d; border-radius: 14px; background: #69c3a90a; margin-bottom: 16px; }
.r-buy-interest > svg { flex-shrink: 0; color: var(--r-mint); }
.r-buy-interest .grow { min-width: 0; }.r-buy-interest strong { display: block; font-size: 14px; line-height: 1.4; overflow-wrap: anywhere; }
.r-buy-interest small { display: block; margin-top: 4px; font-size: 12px; color: var(--muted); }
.r-buy-interest .button { flex-shrink: 0; min-height: 44px; padding: 9px 12px; font-size: 12px; }
.r-buy-interest.is-requested { border-color: #78b9a380; background: #69c3a914; }
.r-discard-recap { margin: 0 0 18px; }.r-discard-recap > .eyebrow { font-size: 9px; letter-spacing: 1px; }
.r-discard-trail { margin-top: 8px; }
.r-discard-event { display: flex; gap: 12px; align-items: center; padding: 8px 12px; border: 1px solid var(--line); border-radius: 12px; background: var(--bg); }
.r-discard-event > .playing-card { flex: 0 0 44px; width: 44px; height: 66px; border-radius: 5px; }
.r-discard-event .card-corner { top: 3px; left: 3px; font-size: 6px; }.r-discard-event .card-corner b { font-size: 12px; }
.r-discard-event .corner-bottom { top: auto; left: auto; bottom: 3px; right: 3px; }
.r-discard-event > div:last-child { min-width: 0; }.r-discard-event small { display: block; font-size: 11px; line-height: 1.4; color: var(--muted); }
.r-discard-event strong { display: block; margin: 2px 0; font-size: 13px; line-height: 1.35; }
.r-discard-event > div:last-child > span { display: inline-flex; align-items: center; gap: 3px; font-size: 11px; color: var(--r-mint); }
.r-buy-prompt { display: flex; gap: 13px; flex-wrap: wrap; align-items: center; border: 1px solid var(--accent); background: var(--accent-soft); border-radius: 15px; padding: 17px; margin-bottom: 18px; }
.r-buy-prompt p { font-size: 12px; margin: 6px 0 0; }.r-buy-prompt strong { font-size: 15px; }
.r-buy-actions { display: flex; gap: 9px; width: 100%; }.r-buy-actions .button { flex: 1; }
.r-opening { padding: 15px; border-radius: 14px; background: var(--bg); border: 1px solid var(--line); margin-bottom: 18px; }
.r-opening-heading { display: flex; justify-content: space-between; align-items: center; gap: 8px; flex-wrap: wrap; margin-bottom: 12px; }
.r-opening-heading>strong { font-size: 13px; }.r-opening-heading .text-button { font-size: 12px; padding: 7px 0; min-height: 34px; }
.r-opening-heading > span { color: var(--muted); font-size: 12px; }
.r-workbench { position: relative; min-width: 0; --hand-dock-bottom: 12px; }
.r-workbench-head { position: sticky; top: calc(var(--header-height) + env(safe-area-inset-top)); z-index: 9; background: var(--surface); padding: 8px 0 12px; border-bottom: 1px solid var(--line); margin-bottom: 16px; }
.r-workbench .r-hand-label { justify-content: space-between; margin: 0; min-height: 44px; }
.r-workbench .r-hand-label > div:first-child { display: flex; align-items: baseline; gap: 9px; }
.r-workbench .r-hand-label strong { font-size: 17px; }
.r-workbench .r-hand-label span { font-size: 12px; white-space: nowrap; }
.r-hand-tools { display: flex; align-items: center; gap: 4px; }
.r-help-toggle { display: grid; place-items: center; width: 44px; height: 44px; flex: 0 0 44px; border-radius: 12px; color: var(--muted); }
.r-help-toggle > span { display: grid; place-items: center; width: 21px; height: 21px; border: 1.5px solid currentColor; border-radius: 50%; font-size: 13px; font-weight: 650; }
.r-help-toggle:hover, .r-help-toggle[aria-expanded=true] { color: var(--accent); background: var(--accent-soft); }
.r-opening[hidden] { display: none; }
.r-opening > .text-button { display: inline-flex; gap: 7px; align-items: center; min-height: 44px; margin-top: 5px; }
.r-suggest { display: flex; align-items: center; gap: 7px; min-height: 44px; margin: -8px 0 8px; font-size: 13px; }
.r-hand-sort { display: flex; padding: 3px; border: 1px solid var(--line); border-radius: 12px; background: var(--bg); }
.r-hand-sort button { min-height: 38px; min-width: 52px; padding: 6px 10px; font-size: 12px; border-radius: 8px; color: var(--muted); }
.r-hand-sort button[aria-pressed=true] { background: var(--surface-raised); color: var(--text); box-shadow: 0 1px 4px #0002; }
.r-drafts { display: flex; gap: 8px; overflow-x: auto; overscroll-behavior-x: contain; scrollbar-width: thin; padding: 2px 0 7px; margin-top: 10px; scroll-padding-inline: 2px; }
.r-drafts > button { display: flex; align-items: center; gap: 8px; flex: 0 0 auto; min-width: 110px; min-height: 57px; padding: 9px 11px; text-align: left; border: 1px solid var(--line); border-radius: 13px; background: var(--bg); }
.r-drafts > button.active { border-color: var(--accent); background: var(--accent-soft); }
.r-drafts strong { display: block; font-size: 13px; line-height: 1.2; }
.r-drafts small { display: block; font-size: 11px; color: var(--muted); margin-top: 4px; }
.r-drafts .r-draft-number { display: grid; place-items: center; flex: 0 0 25px; height: 25px; border-radius: 8px; color: var(--muted); background: var(--line); font-size: 12px; font-weight: 750; }
.r-drafts .active .r-draft-number { background: var(--accent); color: var(--accent-ink); }
.r-drafts .complete > svg { color: var(--r-mint); }
.r-workbench .r-hand { padding: 5px 3px 14px; }
.r-hand-dock { position: sticky; bottom: var(--hand-dock-bottom); z-index: 10; background: var(--surface-raised); border: 1px solid var(--line); border-radius: 16px; box-shadow: 0 -8px 28px #0002; padding: 6px 12px 12px; margin-top: 12px; }
.r-selection-toolbar { display: flex; align-items: center; gap: 10px; min-height: 40px; }
.r-selection-toolbar > span { flex: 1; color: var(--muted); font-size: 12px; }
.r-selection-toolbar .text-button { display: flex; align-items: center; gap: 4px; min-height: 40px; padding: 4px 0; font-size: 12px; white-space: nowrap; }
.r-selection-note { margin: 0 0 8px; font-size: 13px; color: var(--muted); }
.r-opening-lock { display: flex; align-items: center; gap: 7px; min-height: 40px; width: 100%; text-align: left; color: var(--muted); font-size: 12px; margin-bottom: 5px; }
.r-opening-lock > span { display: grid; place-items: center; width: 19px; height: 19px; margin-left: auto; border: 1px solid var(--line); border-radius: 50%; }
.r-hand.is-choosing-discard { background: linear-gradient(180deg, transparent, var(--accent-soft)); border-radius: 14px; }
.r-waiting-player { display: flex; align-items: center; gap: 10px; padding: 12px; margin-bottom: 12px; border: 1px solid var(--line); border-radius: 14px; background: var(--surface-raised); }
.r-waiting-player > svg { color: #edb363; }
.r-waiting-player strong { display: block; font-size: 13px; overflow-wrap: anywhere; }
.r-waiting-player small { display: block; margin-top: 3px; color: var(--muted); font-size: 12px; }
.r-waiting-player .text-button { min-height: 44px; font-size: 13px; }
.r-round-scores { max-width: 620px; margin: 22px auto; overflow: hidden; border: 1px solid var(--line); border-radius: 16px; background: var(--surface); }
.r-round-scores table { border-collapse: collapse; width: 100%; table-layout: fixed; text-align: right; font-variant-numeric: tabular-nums; }
.r-round-scores th, .r-round-scores td { padding: 12px; border-bottom: 1px solid var(--line); }
.r-round-scores thead th { color: var(--muted); font-size: 11px; font-weight: 500; }
.r-round-scores th:first-child { text-align: left; width: 54%; }
.r-round-scores tbody th { font-size: 13px; font-weight: 600; }
.r-round-scores td { font-size: 16px; font-weight: 650; }
.r-round-scores td:last-child { color: var(--r-mint); }
.r-round-scores tbody tr:last-child > * { border-bottom: 0; }
.r-round-scores .is-you { background: var(--accent-soft); }
.r-result-player { display: flex; align-items: center; gap: 9px; }
.r-result-player img { border-radius: 9px; flex-shrink: 0; }
.r-result-player > span { min-width: 0; overflow-wrap: anywhere; }
.r-result-player small { display: block; color: var(--muted); font-size: 10px; margin-top: 2px; }
.r-hand-dock .r-hand-actions { margin: 0; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; }
.r-hand-dock .button { min-width: 0; min-height: 48px; padding: 10px 8px; font-size: 13px; gap: 6px; }
.r-hand-dock .r-assign { flex-wrap: wrap; column-gap: 4px; row-gap: 0; }
.r-hand-dock .r-assign > span { font-size: 11px; font-weight: 500; }
.is-opened .r-hand-dock .r-discard { grid-column: 1 / -1; }
.r-workbench .r-hand-card { scroll-margin-top: calc(var(--header-height) + env(safe-area-inset-top) + 165px); scroll-margin-bottom: calc(var(--hand-dock-bottom) + 145px); }
.r-workbench .r-hand { scroll-margin-top: calc(var(--header-height) + env(safe-area-inset-top) + 160px); }
@media (min-width: 1200px) {
  .r-workbench .r-hand { grid-template-columns: repeat(8, minmax(0, 1fr)); }
}
.r-opening-guide, .r-opening-note { color: var(--muted); font-size: 14px; line-height: 1.55; margin: 0 0 12px; }
.r-opening-guide strong, .r-table-guide strong { color: var(--text); font-weight: 600; }
.r-opening-note { border-top: 1px solid var(--line); padding-top: 12px; margin: 12px 0 0; }
.r-table-guide { display: flex; flex-wrap: wrap; align-items: center; gap: 12px; margin-top: 18px; padding-top: 16px; border-top: 1px solid var(--line); }
.r-table-guide p { flex: 1 1 220px; font-size: 14px; line-height: 1.55; color: var(--muted); }
.r-table-guide .button { min-height: 44px; }
.r-table-melds { scroll-margin-top: 110px; }
.r-hand-label { display: flex; gap: 10px; align-items: center; margin: 16px 0; }.r-hand-label strong { font-size: 14px; }.r-hand-label span { flex: 1; color: var(--muted); font-size: 11px; }.r-hand-label .text-button { font-size: 12px; padding: 3px; min-height: 32px; }
.r-hand { display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); gap: 10px; padding: 4px 0; }
.r-hand-card { position: relative; min-width: 0; padding: 0; opacity: 1!important; }
.r-hand-card .playing-card { width: 100%; height: auto; aspect-ratio: 2/3; }
.r-hand-card .card-corner { left: 6px; top: 6px; font-size: 11px; }.r-hand-card .card-corner b { font-size: 19px; }
.r-hand-card .corner-bottom { left: auto; top: auto; right: 6px; bottom: 6px; }
.r-hand-card.selected .playing-card { outline: 2px solid var(--accent); outline-offset: 3px; transform: translateY(-3px); }
.r-selected-mark, .r-group-tag { position: absolute; z-index: 3; display: grid; place-items: center; border-radius: 50%; width: 21px; height: 21px; font-size: 10px; font-weight: 800; background: var(--accent); color: var(--accent-ink); }
.r-selected-mark { top: -7px; right: -6px; }.r-group-tag { bottom: -4px; left: -4px; background: #9dd4c1; color: #15382d; }
.r-new-card-tag { position: absolute; z-index: 3; bottom: -5px; left: 50%; transform: translateX(-50%); padding: 2px 7px; border: 1px solid #82baa6; border-radius: 6px; background: #d2eee2; color: #214638; font-size: 10px; font-weight: 700; line-height: 1.3; pointer-events: none; }
.r-hand-actions { display: flex; gap: 8px; flex-wrap: wrap; margin-top: 18px; }.r-hand-actions .button { flex: 1; font-size: 12px; min-height: 45px; }.r-discard { min-width: 160px; }
.r-hint { color: var(--muted); font-size: 12px; line-height: 1.6; margin: 12px 0; }
.r-layoff-picker { margin-top: 18px; padding: 15px; border: 1px solid #78b9a34d; border-radius: 15px; background: #69c3a90a; }
.r-layoff-heading { display: flex; gap: 9px; align-items: center; color: #a6dfcd; font-size: 14px; }
.r-layoff-picker>p { font-size: 12px; margin: 7px 0 12px; }
.r-layoff-targets { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; max-height: 260px; overflow-y: auto; }
.r-layoff-target { display: flex; align-items: center; gap: 8px; padding: 12px; border: 1px solid #78b9a34d; border-radius: 11px; background: var(--surface); text-align: left; min-height: 64px; }
.r-layoff-target:enabled:hover { border-color: #a6dfcd; background: #69c3a91a; }
.r-layoff-target strong { display: block; font-size: 12px; }.r-layoff-target small { display: block; font-size: 11px; color: var(--muted); overflow-wrap: anywhere; margin-top: 4px; }
.r-layoff-target>svg { color: #a6dfcd; }
.r-meld.can-extend { background: #69c3a90b; box-shadow: inset 3px 0 #a6dfcd; }
.r-meld.can-extend .r-meld-heading>.button { border-color: #78b9a380; color: #a6dfcd; }
.r-table-melds { margin-top: 30px; }.r-table-melds h2 { font-size: 23px; }.r-table-count { color: var(--muted); font-size: 12px; }
.r-empty-melds { border: 1px dashed var(--line); padding: 23px; border-radius: 17px; color: var(--muted); font-size: 14px; }
.r-meld-owner { background: var(--surface); border: 1px solid var(--line); border-radius: 17px; margin-bottom: 13px; overflow: hidden; }
.r-meld-owner>summary { display: flex; align-items: center; gap: 9px; padding: 14px; font-size: 13px; font-weight: 600; cursor: pointer; }
.r-meld-owner>summary img { border-radius: 50%; }.r-meld-owner>summary>span { margin-left: auto; color: var(--muted); font-size: 11px; white-space: nowrap; }
.r-meld { padding: 0 14px 14px; }.r-meld+.r-meld { padding-top: 14px; border-top: 1px solid var(--line); }
.r-meld-heading { display: flex; justify-content: space-between; gap: 9px; align-items: center; margin-bottom: 9px; }.r-meld-heading strong { font-size: 12px; }.r-meld-heading .button { font-size: 11px; min-height: 36px; padding: 8px 12px; }
.r-meld-cards { display: flex; gap: 7px; overflow-x: auto; padding: 4px 2px 9px; }
.r-meld-cards .playing-card { width: 59px; height: auto; aspect-ratio: 2 / 3; flex: none; border-radius: 7px; }
.r-meld-cards .card-corner { left: 5px; top: 5px; font-size: 9px; }.r-meld-cards .card-corner b { font-size: 14px; }.r-meld-cards .corner-bottom { left: auto; top: auto; right: 5px; bottom: 5px; }
.r-laid-card { flex: 0 0 59px; display: flex; flex-direction: column; align-items: center; gap: 6px; }
.r-laid-card>small { font-size: 10px; color: var(--muted); }.r-replace { min-height: 35px; padding: 7px 3px; font-size: 10px; border: 1px solid var(--accent); border-radius: 7px; color: var(--accent); width: 100%; }
.r-round-result { padding: 28px; border-radius: 21px; text-align: center; }.r-round-result h2 { font-size: 27px; margin-bottom: 13px; }.r-round-result p { font-size: 14px; }.r-round-result .result-actions { align-items: center; margin: 22px 0; }
.r-round-hands { text-align: left; border-top: 1px solid var(--line); margin-top: 22px; padding-top: 17px; }.r-round-hands summary { cursor: pointer; font-size: 14px; }.r-round-hands>div { margin-top: 18px; }.r-round-hands strong { font-size: 12px; }
.r-pause-notice { position: sticky; bottom: 85px; z-index: 12; display: flex; align-items: center; flex-wrap: wrap; gap: 13px; padding: 20px; margin-top: 20px; border: 1px solid var(--accent); border-radius: 17px; background: var(--surface-raised); box-shadow: 0 10px 50px #0005; }.r-pause-notice p { font-size: 12px; margin-top: 5px; }.r-pause-notice .button { margin-left: auto; }
.game-picker { flex-wrap: wrap; }
@media (max-width: 760px) {
  .r-open-notice { bottom: calc(78px + env(safe-area-inset-bottom)); }
  .r-hand-panel { padding: 13px; }.r-hand { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 12px 9px; }
  .r-hand-card .card-corner b { font-size: 20px; }.r-hand-card .card-corner { font-size: 12px; }
  .r-goal { padding: 16px 16px 13px; }.r-goal-heading { gap: 12px; }.r-goal h2 { font-size: 23px; }.r-round-number { font-size: 30px; }
  .r-seat { padding: 10px 12px; gap: 10px; min-height: 74px; }.r-seat-avatar { flex-basis: 36px; }.r-seat-avatar img { width: 36px; height: 36px; }
  .r-seat-identity > strong { font-size: 15px; }.r-opened-label { gap: 5px; }
  .r-workbench { --hand-dock-bottom: calc(73px + env(safe-area-inset-bottom)); }
  .r-workbench-head { padding-top: 6px; }
  .r-hand-sort button { min-height: 44px; min-width: 48px; padding-inline: 8px; }
  .r-selection-toolbar .text-button { min-height: 44px; }
  .r-hand-dock { padding: 2px 10px 10px; }
  .r-lobby { padding: 26px 15px; }.r-lobby h2 { font-size: 23px; }
  .r-piles { gap: 12px; }.r-pile { min-width: 120px; }.r-hand-label { gap: 7px; }.r-hand-label span { font-size: 10px; }
}
@media (max-width: 370px) {
  .r-seat { gap: 8px; padding-left: 10px; padding-right: 10px; }
  .r-opened-label > svg:last-child { display: none; }
  .r-round-number { flex-direction: column; align-items: flex-end; gap: 5px; }
}
@media (max-width: 360px) {
  .r-hand { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .r-workbench .r-hand-label > div:first-child { flex-direction: column; gap: 2px; }
  .r-pile { min-width: 0; }
}
