.rummy-page{padding:12px 14px calc(var(--nav-h) + 16px);max-width:640px;margin:0 auto}.rummy-stage{flex-direction:column;gap:14px;display:flex}.rummy-stage--empty{color:var(--ink-soft);align-items:center;padding:48px 0;font-weight:700}.rummy-banner{background:var(--sunny-soft);border:var(--bw) solid var(--ink);border-radius:var(--r-sm);box-shadow:var(--shadow-sm);justify-content:center;align-items:center;gap:10px;padding:8px 12px;font-size:14px;font-weight:800;display:flex}.rummy-banner--warn{background:var(--coral-soft)}.rummy-card{border:var(--bw) solid var(--ink);background:var(--card);width:58px;height:82px;box-shadow:var(--shadow-sm);color:var(--ink);font-family:var(--font-heading);transition:transform var(--duration-fast) var(--ease-pop);border-radius:10px;flex:none;justify-content:center;align-items:center;padding:0;display:inline-flex;position:relative}.rummy-card--sm{border-radius:8px;width:42px;height:60px}.rummy-card--red{color:var(--coral)}.rummy-card--tap{cursor:pointer}.rummy-card--tap:active{transform:translateY(2px)}.rummy-card--sel{box-shadow:var(--shadow-pop);background:var(--sky-soft);transform:translateY(-8px)}.rummy-card--down{background:repeating-linear-gradient(45deg, var(--grape-soft), var(--grape-soft) 6px, var(--card) 6px, var(--card) 12px)}.rummy-card--slot{box-shadow:none;background:0 0;border-style:dashed}.rummy-card--wild{outline:3px solid var(--sunny);outline-offset:-1px}.rummy-card__corner{flex-direction:column;align-items:center;font-size:14px;font-weight:900;line-height:1;display:flex;position:absolute;top:4px;left:6px}.rummy-card--sm .rummy-card__corner{font-size:11px;top:3px;left:4px}.rummy-card__corner em{font-size:12px;font-style:normal}.rummy-card__pip{margin-top:8px;font-size:26px}.rummy-card--sm .rummy-card__pip{margin-top:6px;font-size:18px}.rummy-card__wildtag{background:var(--sunny);letter-spacing:.04em;border-radius:4px;padding:1px 4px;font-size:8px;font-weight:900;position:absolute;bottom:3px;left:50%;transform:translate(-50%)}.rummy-lobby{background:var(--card);border:var(--bw) solid var(--ink);border-radius:var(--r-lg);box-shadow:var(--shadow);flex-direction:column;gap:14px;padding:18px;display:flex}.rummy-lobby__title{font-family:var(--font-heading);margin:0;font-size:24px}.rummy-lobby__sub{color:var(--ink-soft);margin:-8px 0 0;font-size:14px;font-weight:700}.rummy-code{justify-content:center;gap:6px;display:flex}.rummy-code span{border:var(--bw) solid var(--ink);border-radius:var(--r-sm);background:var(--sunny-soft);width:40px;height:48px;font-family:var(--font-heading);box-shadow:var(--shadow-sm);justify-content:center;align-items:center;font-size:24px;font-weight:900;display:inline-flex}.rummy-lobby__share{justify-content:center;gap:8px;display:flex}.rummy-lobby__seats{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.rummy-lobby__seat{border:2px solid var(--ink);border-radius:var(--r-sm);background:var(--paper);align-items:center;gap:10px;padding:8px 12px;font-weight:800;display:flex}.rummy-lobby__seat--empty{color:var(--ink-soft);border-style:dashed;justify-content:center}.rummy-lobby__seatname{flex:1}.rummy-lobby__ghost{font-size:13px;font-weight:700}.rummy-dot{background:var(--paper-deep);border:2px solid var(--ink);border-radius:50%;width:10px;height:10px}.rummy-dot--on{background:var(--mint)}.rummy-lobby__friends h2{font-family:var(--font-heading);margin:0 0 8px;font-size:16px}.rummy-lobby__friends ul{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.rummy-lobby__friends li{justify-content:space-between;align-items:center;gap:10px;font-weight:700;display:flex}.rummy-lobby__actions{flex-direction:column;align-items:center;gap:8px;display:flex}.rummy-lobby__wait{color:var(--ink-soft);margin:0;font-weight:700}.rummy-cta__resume{background:var(--mint-soft);border:var(--bw) solid var(--ink);border-radius:var(--r-sm);box-shadow:var(--shadow-sm);color:var(--ink);padding:10px 12px;font-weight:800;text-decoration:none;display:block}.rummy-cta__panel{background:var(--card);border:var(--bw) solid var(--ink);border-radius:var(--r-md);box-shadow:var(--shadow-sm);flex-direction:column;gap:10px;padding:14px;display:flex}.rummy-cta__row{flex-wrap:wrap;justify-content:center;align-items:center;gap:6px;display:flex}.rummy-cta__lbl{color:var(--ink-soft);margin-right:4px;font-size:13px;font-weight:800}.rummy-chip{border:2px solid var(--ink);background:var(--paper);cursor:pointer;box-shadow:var(--shadow-sm);transition:transform var(--duration-fast) var(--ease-pop);border-radius:999px;padding:6px 14px;font-size:14px;font-weight:800}.rummy-chip--on{background:var(--sunny)}.rummy-chip:active{box-shadow:none;transform:translateY(2px)}.rummy-cta__join{justify-content:center;gap:8px;display:flex}.rummy-cta__input{border:var(--bw) solid var(--ink);border-radius:var(--r-sm);width:130px;font-family:var(--font-heading);letter-spacing:.2em;text-transform:uppercase;background:var(--card);padding:8px 10px;font-size:18px;font-weight:900}.rummy-table{flex-direction:column;gap:12px;display:flex}.rummy-opponents{flex-wrap:wrap;justify-content:center;gap:8px;margin:0;padding:0;list-style:none;display:flex}.rummy-opp{border:2px solid var(--ink);border-radius:var(--r-sm);background:var(--card);min-width:76px;box-shadow:var(--shadow-sm);flex-direction:column;align-items:center;gap:2px;padding:8px 10px;display:flex}.rummy-opp--turn{background:var(--sunny-soft);box-shadow:var(--shadow);animation:1.6s ease-in-out infinite rummy-pulse}.rummy-opp--out{opacity:.5}@keyframes rummy-pulse{0%,to{transform:translateY(0)}50%{transform:translateY(-3px)}}.rummy-opp__name{text-overflow:ellipsis;white-space:nowrap;max-width:90px;font-size:13px;font-weight:800;overflow:hidden}.rummy-opp__meta{color:var(--ink-soft);font-size:11px;font-weight:700}.rummy-opp__timer{font-family:var(--font-heading);color:var(--coral);font-size:13px;font-weight:900}.rummy-center{background:var(--mint-soft);border:var(--bw) solid var(--ink);border-radius:var(--r-lg);box-shadow:var(--shadow);justify-content:center;align-items:flex-end;gap:18px;padding:18px 14px 12px;display:flex}.rummy-pile{flex-direction:column;align-items:center;gap:6px;display:flex}.rummy-pile__label{color:var(--ink-soft);font-size:12px;font-weight:800}.rummy-status{text-align:center;min-height:20px;font-size:14px}.rummy-hand{background:var(--card);border:var(--bw) solid var(--ink);border-radius:var(--r-lg);box-shadow:var(--shadow);flex-wrap:wrap;justify-content:center;gap:10px;padding:14px 10px 10px;display:flex}.rummy-group{border:2px dashed var(--ink-soft);border-radius:var(--r-sm);flex-direction:column;gap:4px;padding:12px 6px 6px;display:flex;position:relative}.rummy-group--pure{border-color:var(--mint);border-style:solid}.rummy-group__tag{letter-spacing:.06em;text-transform:uppercase;background:var(--paper);color:var(--ink-soft);border-radius:4px;padding:0 5px;font-size:10px;font-weight:900;position:absolute;top:-9px;left:8px}.rummy-actions{flex-wrap:wrap;justify-content:center;gap:10px;display:flex}.rummy-confirm{background:var(--sunny-soft);border:var(--bw) solid var(--ink);border-radius:var(--r-md);box-shadow:var(--shadow);text-align:center;flex-direction:column;align-items:center;gap:8px;padding:12px 14px;font-weight:700;display:flex}.rummy-confirm p{margin:0}.rummy-confirm>div{gap:8px;display:flex}.rummy-feed{color:var(--ink-soft);text-align:center;flex-direction:column;gap:2px;margin:0;padding:0;font-size:12px;font-weight:700;list-style:none;display:flex}.rummy-avatar{border:2px solid var(--ink);background:var(--grape-soft);border-radius:50%;flex:none;justify-content:center;align-items:center;width:36px;height:36px;font-size:17px;display:inline-flex}.rummy-avatar[data-color=coral]{background:var(--coral-soft)}.rummy-avatar[data-color=sky]{background:var(--sky-soft)}.rummy-avatar[data-color=mint]{background:var(--mint-soft)}.rummy-avatar[data-color=sunny]{background:var(--sunny-soft)}.rummy-finish{background:var(--card);border:var(--bw) solid var(--ink);border-radius:var(--r-lg);box-shadow:var(--shadow);flex-direction:column;align-items:center;gap:14px;padding:20px 16px;display:flex}.rummy-finish__title{font-family:var(--font-heading);text-align:center;margin:0;font-size:24px}.rummy-results{flex-direction:column;gap:10px;width:100%;margin:0;padding:0;list-style:none;display:flex}.rummy-result{border:2px solid var(--ink);border-radius:var(--r-sm);background:var(--paper);grid-template-columns:auto 1fr auto;align-items:center;gap:10px;padding:8px 12px;display:grid}.rummy-result--win{background:var(--mint-soft);box-shadow:var(--shadow-sm)}.rummy-result__who{flex-direction:column;display:flex}.rummy-result__who span{color:var(--ink-soft);font-size:12px;font-weight:700}.rummy-result__pts{font-family:var(--font-heading);font-weight:900}.rummy-result__hand{flex-wrap:wrap;grid-column:1/-1;gap:3px;display:flex}.rummy-result__hand .rummy-card{width:30px;height:42px;box-shadow:none;border-width:2px;border-radius:6px}.rummy-result__hand .rummy-card__pip{margin-top:4px;font-size:12px}.rummy-result__hand .rummy-card__corner,.rummy-result__hand .rummy-card__corner em{font-size:8px}.rummy-finish__actions{flex-wrap:wrap;justify-content:center;gap:10px;display:flex}.rummy-opp{position:relative}.rummy-bubble{background:var(--card);border:2px solid var(--ink);box-shadow:var(--shadow-sm);z-index:2;animation:rummy-bubble-pop .25s var(--ease-pop), rummy-bubble-fade .5s ease 3s forwards;border-radius:999px 999px 999px 4px;padding:3px 7px;font-size:22px;position:absolute;top:-18px;right:-6px}@keyframes rummy-bubble-pop{0%{opacity:0;transform:scale(.4)}to{opacity:1;transform:scale(1)}}@keyframes rummy-bubble-fade{to{opacity:0;transform:translateY(-6px)}}.rummy-chip--emote{padding:6px 10px;font-size:16px;line-height:1}.rummy-emotes{background:var(--card);border:var(--bw) solid var(--ink);box-shadow:var(--shadow-sm);border-radius:999px;flex-wrap:wrap;justify-content:center;align-self:center;gap:6px;padding:6px 10px;display:flex}.rummy-emotes__btn{cursor:pointer;transition:transform var(--duration-fast) var(--ease-pop);background:0 0;border:0;border-radius:8px;padding:4px;font-size:22px;line-height:1}.rummy-emotes__btn:hover,.rummy-emotes__btn:focus-visible{background:var(--sunny-soft);transform:scale(1.25)}.rummy-banner--practice{background:var(--sky-soft)}.rummy-practice-setup{text-align:center;align-items:center}.rummy-practice-setup .rummy-lobby__wait a{text-underline-offset:3px;color:var(--ink);font-weight:800;text-decoration:underline}.rummy-stagecard .sticker{top:14px}.rummy-stagecard .rummy-stagecard__boo{position:absolute;top:12%;left:50%;transform:translate(-50%)}.rummy-stagecard .veil{place-items:end center;padding-bottom:10%}.rummy-fsx{z-index:100;background:var(--paper);padding:max(10px, env(safe-area-inset-top)) 14px max(20px, env(safe-area-inset-bottom));position:fixed;inset:0;overflow-y:auto}.rummy-fsx__bar{z-index:1;background:var(--paper);align-items:center;gap:12px;padding:6px 0 10px;display:flex;position:sticky;top:0}.rummy-fsx__bar h2{font-family:var(--font-heading);flex:1;margin:0;font-size:22px}.rummy-fsx__body{flex-direction:column;gap:14px;max-width:560px;margin:0 auto;display:flex}.rummy-cta__panel--signin{text-align:center;align-items:center}.rummy-cta__panel--signin p{color:var(--ink-soft);margin:0;font-size:14px;font-weight:700}.rummy-cta__panel--practice{color:var(--ink);text-align:left;flex-direction:row;align-items:center;gap:12px;text-decoration:none}.rummy-cta__panel--practice>span:last-child{flex-direction:column;gap:2px;display:flex}.rummy-cta__panel--practice b{font-family:var(--font-heading);font-size:16px}.rummy-cta__panel--practice span span{color:var(--ink-soft);font-size:13px;font-weight:700}.rummy-cta__practice-emoji{font-size:30px}.rummy-page{min-height:calc(100dvh - var(--nav-h) - 12px);flex-direction:column;justify-content:center;display:flex}.rummy-stage--empty{justify-content:center;min-height:50dvh}.rummy-head{align-items:center;gap:12px;display:flex}.rummy-head h1{font-family:var(--font-heading);flex:1;margin:0;font-size:22px}.rummy-hand{transition:opacity .4s}.rummy-hand--dealing{opacity:0}.rummy-fan{align-items:flex-end;display:flex}.rummy-fan .rummy-card{flex:none}.rummy-fan .rummy-card:not(:first-child){margin-left:-20px}.rummy-fan .rummy-card--sel{z-index:3}.rummy-group--bad{border-color:var(--coral)}.rummy-group--bad .rummy-group__tag{color:var(--coral)}.rummy-drop{border:2px dashed var(--ink-soft);background:var(--sunny-soft);cursor:pointer;min-width:34px;height:34px;animation:rummy-drop-in .2s var(--ease-pop);border-radius:999px;align-self:center;margin-left:6px;font-size:15px;font-weight:900}.rummy-drop:hover,.rummy-drop:focus-visible{border-style:solid;border-color:var(--ink);background:var(--sunny)}.rummy-drop--new{font-size:13px;font-family:var(--font-heading);align-self:center;padding:0 14px}@keyframes rummy-drop-in{0%{opacity:0;transform:scale(.6)}to{opacity:1;transform:scale(1)}}.rummy-handbar{justify-content:center;align-items:center;gap:10px;min-height:34px;display:flex}.rummy-handbar__hint{color:var(--ink-soft);font-size:13px;font-weight:800}.rummy-flight{z-index:95;pointer-events:none;filter:drop-shadow(0 6px 0 color-mix(in oklab, var(--ink) 30%, transparent));transition:transform .55s cubic-bezier(.3,.9,.35,1);position:fixed;top:0;left:0}.rummy-opp__ready{background:var(--mint);border:2px solid var(--ink);width:22px;height:22px;color:var(--ink);z-index:2;border-radius:50%;place-items:center;font-size:13px;font-weight:900;display:grid;position:absolute;top:-8px;left:-8px}.rummy-cta__select{border:var(--bw) solid var(--ink);border-radius:var(--r-sm);background:var(--card);font-family:var(--font-heading);box-shadow:var(--shadow-sm);padding:7px 10px;font-size:15px;font-weight:700}.rummy-cta__note{color:var(--ink-soft);flex-basis:100%;font-size:12px;font-weight:700}.rummy-help__body{gap:12px}.rummy-help__card{background:var(--card);border:var(--bw) solid var(--ink);border-radius:var(--r-md);box-shadow:var(--shadow-sm);padding:14px 16px;font-size:14px}.rummy-help__card h3{font-family:var(--font-heading);margin:0 0 6px;font-size:16px}.rummy-help__card p,.rummy-help__card li{color:var(--ink-soft);font-weight:600;line-height:1.5}.rummy-help__card ol,.rummy-help__card ul{flex-direction:column;gap:6px;margin:0;padding-left:20px;display:flex}.rummy-help__touch{border-top:2px dashed var(--paper-deep);margin:10px 0 0;padding-top:8px;font-size:13px}.rummy-fsx{flex-direction:column;display:flex}.rummy-fsx__body{width:100%;margin:auto}.rummy-notice{z-index:96;pointer-events:none;background:var(--card);border:var(--bw) solid var(--ink);border-radius:var(--r-md);box-shadow:var(--shadow-pop);text-align:center;animation:rummy-notice-pop .28s var(--ease-pop), rummy-notice-out .4s ease 1.2s forwards;flex-direction:column;align-items:center;gap:6px;padding:12px 22px;display:flex;position:fixed;top:42%;left:50%;transform:translate(-50%,-50%)}.rummy-notice strong{font-family:var(--font-heading);font-size:18px}.rummy-notice--big{background:var(--sunny-soft);padding:18px 28px}.rummy-notice--big strong{font-size:24px}.rummy-notice--big{animation:rummy-notice-pop .28s var(--ease-pop), rummy-notice-out .4s ease 1.35s forwards}.rummy-notice__icon{font-size:30px;line-height:1}.rummy-notice__sub{color:var(--ink-soft);max-width:260px;font-size:13px;font-weight:700}@keyframes rummy-notice-pop{0%{opacity:0;transform:translate(-50%,-50%)scale(.6)}to{opacity:1;transform:translate(-50%,-50%)scale(1)}}@keyframes rummy-notice-out{to{opacity:0;transform:translate(-50%,-58%)scale(.94)}}.rummy-notice--hold{animation:rummy-notice-pop .28s var(--ease-pop)}.rummy-page{justify-content:flex-start}.rummy-stage{flex:1}.rummy-stage__body{flex-direction:column;gap:14px;margin:auto 0;padding:14px 0;display:flex}.rummy-arrange{flex-direction:column;align-items:center;gap:8px;display:flex}.rummy-arrange__row{align-items:center;gap:12px;display:flex}.rummy-arrange__clock{font-family:var(--font-heading);background:var(--sunny-soft);border:2px solid var(--ink);box-shadow:var(--shadow-sm);border-radius:999px;padding:4px 12px;font-size:15px;font-weight:800}.rummy-stagearea{grid-template-columns:46px minmax(0,170px) auto;justify-content:center;align-items:center;gap:12px;min-height:72px;display:grid}.rummy-stagearea__slot{place-items:center;width:46px;height:64px;display:grid}.rummy-stagearea__slot .rummy-card{box-shadow:var(--shadow-sm);background:var(--sky-soft);transform:none}.rummy-stagearea__lbl{color:var(--ink-soft);font-size:13px;font-weight:800}.rummy-modal{z-index:98;background:color-mix(in oklab, var(--ink) 35%, transparent);place-items:center;padding:20px;display:grid;position:fixed;inset:0}.rummy-modal__card{text-align:center;background:var(--card);border:var(--bw) solid var(--ink);border-radius:var(--r-lg);box-shadow:var(--shadow-pop);max-width:380px;animation:rummy-drop-in .25s var(--ease-pop);flex-direction:column;align-items:center;gap:12px;padding:22px 20px;display:flex}.rummy-modal__card h2{font-family:var(--font-heading);margin:0;font-size:22px}.rummy-modal__card p{color:var(--ink-soft);margin:0;font-size:14px;font-weight:700;line-height:1.5}
