[data-surface=rummikub]{background:radial-gradient(120% 90% at 50% 30%, #467a72 0%, var(--color-table) 55%, #294d46 100%) fixed;min-height:100dvh;color:var(--color-table-ink);flex:1;font-family:Avenir Next,system-ui,sans-serif}[data-surface=rummikub] :focus-visible{outline:2px solid var(--color-genie);outline-offset:2px}[data-surface=rummikub] .tile{--w:3.4rem;width:var(--w);height:calc(var(--w) * 1.36);padding-top:calc(var(--w) * .12);border-radius:calc(var(--w) * .14);background:linear-gradient(180deg, #fbf8ee 0%, var(--color-ivory) 60%, #e9e2cd 100%);box-shadow:inset 0 -3px 0 var(--color-ivory-edge), inset 0 1px 0 #fff, 0 2px 3px #00000047;font-weight:700;font-size:calc(var(--w) * .56);letter-spacing:-.02em;font-variant-numeric:tabular-nums;text-shadow:0 1px #ffffffe6;cursor:grab;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;touch-action:manipulation;flex-direction:column;justify-content:flex-start;align-items:center;line-height:1;transition:transform .12s,box-shadow .12s,opacity .15s;display:inline-flex;position:relative}[data-surface=rummikub] .tile:after{content:"";bottom:calc(var(--w) * .2);width:calc(var(--w) * .22);height:calc(var(--w) * .22);opacity:.18;background:currentColor;border-radius:50%;position:absolute}[data-surface=rummikub] .tile:hover{transform:translateY(-2px)}[data-surface=rummikub] .tile[aria-pressed=true]{box-shadow:inset 0 -3px 0 var(--color-ivory-edge), 0 0 0 3px var(--color-genie), 0 8px 14px #00000059;transform:translateY(-6px)}[data-surface=rummikub] .tile[data-fresh=true]:not([aria-pressed=true]){box-shadow:inset 0 -3px 0 var(--color-ivory-edge), 0 0 0 2px var(--color-genie), 0 2px 3px #00000047;animation:.26s ease-out both tile-land}[data-surface=rummikub] .tile[data-highlight=source],[data-surface=rummikub] .tile[data-highlight=target]{z-index:1;box-shadow:inset 0 -3px 0 var(--color-ivory-edge), 0 0 0 3px var(--color-genie), 0 0 24px 5px #ffc24bb3;animation:1.35s ease-in-out infinite guide-pulse}[data-surface=rummikub] .tile[data-highlight=target]{transform:translateY(-4px)}[data-surface=rummikub] .tile[data-highlight=done]{box-shadow:inset 0 -3px 0 var(--color-ivory-edge), 0 0 0 2px #ffc24b80, 0 2px 3px #00000047}[data-surface=rummikub] .tile[data-dimmed=true]{opacity:.28}[data-surface=rummikub] .tile[data-locked=true]{cursor:default}[data-surface=rummikub] .tile[data-locked=true]:hover{transform:none}[data-surface=rummikub] .tile-sm{--w:1.55rem;cursor:default}[data-surface=rummikub] .tile-sm:hover{transform:none}[data-surface=rummikub] .tile-lg{--w:3.85rem}[data-surface=rummikub] .game-shell{height:100dvh}[data-surface=rummikub] .board-area{flex-direction:column;min-height:100%;display:flex}[data-surface=rummikub] .board-drop-surface{border:1px dashed #0000;border-radius:1rem;flex:1;min-height:14rem;transition:background .14s,border-color .14s}[data-surface=rummikub] .board-drop-active{cursor:pointer;background:#ffc24b0b;border-color:#ffc24b40}[data-surface=rummikub] .rack-area{background:linear-gradient(#183a341f,#0e2c2685);box-shadow:0 -8px 28px #0000001f}[data-surface=rummikub] .turn-banner{background:linear-gradient(100deg,#1a312feb,#275148e0);border:1px solid #ffc24b5c;box-shadow:0 8px 22px #00000029}[data-surface=rummikub] .pc-review-progress{background:var(--color-genie);transform-origin:0;width:100%;height:3px;animation:linear both pc-review-fill;position:absolute;bottom:0;left:0}[data-surface=rummikub] .primary-action{background:var(--color-ivory);min-height:2.65rem;color:var(--color-table-deep);border-radius:999px;justify-content:center;align-items:center;padding:.55rem 1.3rem;font-size:.9rem;font-weight:700;transition:transform .12s,background .12s;display:inline-flex;box-shadow:0 4px 12px #0000002e}[data-surface=rummikub] .primary-action:hover:not(:disabled){background:#fff;transform:translateY(-2px)}[data-surface=rummikub] .primary-action:disabled,[data-surface=rummikub] .secondary-action:disabled{opacity:.38;cursor:default}[data-surface=rummikub] .secondary-action{min-height:2.65rem;color:var(--color-table-ink);border:1px solid #e9f2ee52;border-radius:999px;padding:.55rem 1rem;font-size:.9rem;font-weight:600;transition:background .12s}[data-surface=rummikub] .secondary-action:hover:not(:disabled){background:#ffffff1f}[data-surface=rummikub] .set-valid{background:#10302b4d;border:1px solid #ffffff1c}[data-surface=rummikub] .set-invalid{border:2px solid var(--color-bad);background:#ff8a7829}[data-surface=rummikub] .set-available{cursor:pointer}[data-surface=rummikub] .set-available:hover{border-color:var(--color-genie);background:#ffc24b29}[data-surface=rummikub] .set-drop-hover{border-color:var(--color-genie);background:#ffc24b38;box-shadow:0 0 0 5px #ffc24b2e}[data-surface=rummikub] .set-add{min-width:3.5rem;color:var(--color-table-mute);border:2px dashed #e9f2ee61;border-radius:.7rem;align-self:stretch;place-items:center;font-size:1.6rem;font-weight:500;display:grid}[data-surface=rummikub] .set-add:hover,[data-surface=rummikub] .set-available .set-add{color:var(--color-genie);background:#ffc24b17;border-color:#ffc24ba6}[data-surface=rummikub] .round-recap{background:#10302bd4;border:1px solid #ffc24b6b;box-shadow:0 6px 22px #00000026}[data-surface=rummikub] .recap-move{background:#ffffff12;border:1px solid #ffffff1f}[data-surface=rummikub] .recap-dismiss{color:var(--color-genie);border:1px solid #ffc24b99;border-radius:999px;padding:.3rem .75rem;font-size:.75rem;font-weight:700}[data-surface=rummikub] .recap-dismiss:hover{background:#ffc24b21}[data-surface=rummikub] .quick-meld-panel{background:#10302be6;border:1px solid #ffc24b73}[data-surface=rummikub] .quick-meld-nav{background:#ffffff1a;border-radius:50%;flex:none;place-items:center;width:2rem;height:2rem;font-size:1.4rem;line-height:1;display:grid}[data-surface=rummikub] .quick-meld-nav:hover{color:var(--color-genie);background:#ffc24b2e}[data-surface=rummikub] .new-set{width:100%;color:var(--color-table-mute);border:2px dashed #e9f2ee5c;flex-direction:column;flex:1 0 100%;justify-content:center;align-items:center;gap:.15rem;display:flex}[data-surface=rummikub] .new-set-active,[data-surface=rummikub] .new-set:hover{border-color:var(--color-genie);color:var(--color-genie);background:#ffc24b1a}[data-surface=rummikub] .guide-preview{background:linear-gradient(145deg,#13312df5,#214840f0);border:1px solid #ffc24b80;box-shadow:0 16px 32px #0003}[data-surface=rummikub] .genie-orb{background:var(--color-genie);width:3rem;height:3rem;color:var(--color-table-deep);border-radius:50%;place-items:center;font-size:1.7rem;display:grid;box-shadow:0 0 24px #ffc24b6b}[data-surface=rummikub] .guide-option{min-width:2.2rem;color:var(--color-table-mute);border:1px solid #e9f2ee38;border-radius:999px;padding:.4rem .7rem;font-size:.8rem;font-weight:700}[data-surface=rummikub] .guide-option:hover,[data-surface=rummikub] .guide-option-active{color:var(--color-table-deep);background:var(--color-genie);border-color:var(--color-genie)}[data-surface=rummikub] .guide-close{width:2.3rem;height:2.3rem;color:var(--color-table-mute);border-radius:50%;place-items:center;font-size:1.8rem;line-height:1;display:grid}[data-surface=rummikub] .guide-close:hover{color:var(--color-table-ink);background:#ffffff1a}[data-surface=rummikub] .guide-progress span{background:#e9f2ee33;border-radius:999px;flex:1;height:.3rem}[data-surface=rummikub] .guide-progress span.complete{background:#ffc24b8c}[data-surface=rummikub] .guide-progress span.current{background:var(--color-genie);box-shadow:0 0 12px #ffc24bb3}[data-surface=rummikub] .guide-flow{grid-template-columns:minmax(9rem,.8fr) 3rem minmax(16rem,1.5fr);align-items:stretch;gap:1rem;display:grid}[data-surface=rummikub] .guide-flow-source,[data-surface=rummikub] .guide-flow-target{border-radius:1rem;min-height:9rem;padding:.9rem}[data-surface=rummikub] .guide-flow-source{background:#0000002e;border:1px solid #e9f2ee33}[data-surface=rummikub] .guide-flow-target{border:2px solid var(--color-genie);background:#ffc24b14;box-shadow:0 0 24px #ffc24b2e}[data-surface=rummikub] .guide-flow-label{color:var(--color-table-mute);letter-spacing:.13em;margin-bottom:.55rem;font-size:.68rem;font-weight:800;display:block}[data-surface=rummikub] .guide-flow-tiles{flex-wrap:wrap;gap:.4rem;display:flex}[data-surface=rummikub] .guide-flow-arrow{color:var(--color-genie);text-shadow:0 0 18px #ffc24ba6;place-items:center;font-size:2.4rem;display:grid}[data-surface=rummikub] .guide-combo{background:#00000021;border:1px solid #e9f2ee29;border-radius:.85rem;padding:.55rem}[data-surface=rummikub] .guide-combo-active{background:#ffc24b17;border-color:#ffc24bb3}[data-surface=rummikub] .guide-final{background:#0000002e}[data-surface=rummikub] .guide-nav{border:1px solid #e9f2ee4d;border-radius:50%;place-items:center;width:2.65rem;height:2.65rem;font-size:1.2rem;display:grid}[data-surface=rummikub] .guide-nav:hover:not(:disabled){background:#ffffff1f}[data-surface=rummikub] .guide-nav:disabled{opacity:.28}[data-surface=rummikub] .rack{background:repeating-linear-gradient(92deg, #ffffff08 0 2px, transparent 2px 9px), linear-gradient(180deg, var(--color-wood) 0%, var(--color-wood-dark) 100%);box-shadow:inset 0 2px #ffffff2e,inset 0 -4px #00000040,0 10px 24px #00000059}[data-surface=rummikub] .rack-shelf{box-shadow:inset 0 -5px #00000038}[data-surface=rummikub] .set-slot{min-width:3.4rem;min-height:7rem}[data-surface=rummikub] .set-slot.new-set{min-height:clamp(10rem,22vh,16rem)}@media (max-width:1279px){[data-surface=rummikub] .game-shell{height:auto;min-height:100dvh}[data-surface=rummikub] .game-content{flex:none;min-height:0}[data-surface=rummikub] .game-content main{min-height:14rem}}@media (max-width:640px){[data-surface=rummikub] .tile{--w:2.7rem}[data-surface=rummikub] .tile-lg{--w:3.2rem}[data-surface=rummikub] .rack-shelf{gap:.3rem}[data-surface=rummikub] .guide-flow{grid-template-columns:1fr;gap:.4rem}[data-surface=rummikub] .guide-flow-source,[data-surface=rummikub] .guide-flow-target{min-height:0}[data-surface=rummikub] .guide-flow-arrow{font-size:1.8rem;line-height:1;transform:rotate(90deg)}}@media (max-height:780px) and (min-width:1280px){[data-surface=rummikub] .tile-lg{--w:3.4rem}[data-surface=rummikub] .rack-shelf{min-height:4.8rem}}@media (prefers-reduced-motion:reduce){[data-surface=rummikub] .tile{transition:none}[data-surface=rummikub] .tile[data-highlight=source],[data-surface=rummikub] .tile[data-highlight=target],[data-surface=rummikub] .tile[data-fresh=true]{animation:none}[data-surface=rummikub] .tile:hover,[data-surface=rummikub] .tile[aria-pressed=true]{transform:none}}@keyframes pc-review-fill{0%{transform:scaleX(0)}to{transform:scaleX(1)}}@keyframes guide-pulse{50%{filter:brightness(1.12);box-shadow:inset 0 -3px 0 var(--color-ivory-edge), 0 0 0 3px var(--color-genie), 0 0 32px 9px #ffc24bcc}}@keyframes tile-land{0%{opacity:.4;transform:translateY(-14px)scale(1.05)}to{opacity:1;transform:translateY(0)scale(1)}}
