:root{--color-deep-bg:#0a0e14;--color-surface:#1a1f2e;--color-surface-elevated:#242938;--color-border:rgba(255,255,255,0.08);--color-border-emphasis:rgba(255,255,255,0.12);--color-teal:#00d9ff;--color-gold:#fbbf24;--color-emerald:#10b981;--color-rose:#ef4444;--phase-shuffling:#3b82f6;--phase-dealing:#10b981;--phase-betting:#8b5cf6;--phase-showdown:#f59e0b;--text-primary:rgba(255,255,255,0.95);--text-secondary:rgba(255,255,255,0.7);--text-tertiary:rgba(255,255,255,0.5);--poker-felt-base:#0f3d24;--poker-felt-mid:#1a5234;--poker-felt-highlight:#256d45;--poker-felt-overlay:rgba(16,185,129,0.08);--poker-rail-dark:#2d1810;--poker-rail-mid:#4a2818;--poker-rail-light:#6b3d2a;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-6:24px;--space-8:32px;--radius-sm:6px;--radius-md:8px;--radius-lg:12px;--radius-xl:16px;--radius-full:9999px;--shadow-md:0 4px 6px -1px rgba(0,0,0,0.1),0 2px 4px -1px rgba(0,0,0,0.06),0 0 0 1px rgba(255,255,255,0.06);--shadow-lg:0 10px 15px -3px rgba(0,0,0,0.1),0 4px 6px -2px rgba(0,0,0,0.05),0 0 0 1px rgba(255,255,255,0.08);--glow-teal:0 0 20px rgba(0,217,255,0.3);--glow-gold:0 0 20px rgba(251,191,36,0.3);--glow-emerald:0 0 20px rgba(16,185,129,0.3);--glass-standard:rgba(26,31,46,0.6);--glass-strong:rgba(26,31,46,0.8);--duration-fast:200ms;--duration-base:300ms;--duration-slow:500ms;--ease-out:cubic-bezier(0,0,0.2,1);--ease-in-out:cubic-bezier(0.4,0,0.2,1)}.poker-table-scale-wrapper{display:flex;justify-content:center;align-items:center;width:100%}.poker-table-container{position:relative;width:100%;aspect-ratio:2.4/1;margin:0 auto;overflow:visible;padding:40px 20px;box-sizing:border-box}.poker-content{position:absolute;top:40px;left:20px;right:20px;bottom:40px}.table-felt{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:85%;height:35%;min-width:400px;min-height:200px;background:radial-gradient(ellipse at center,var(--poker-felt-highlight) 0,var(--poker-felt-mid) 40%,var(--poker-felt-base) 100%);border-radius:50%;box-shadow:inset 0 0 80px rgba(0,0,0,.5),inset 0 0 160px rgba(0,0,0,.2),0 8px 32px rgba(0,0,0,.4)}.table-felt:after{content:"";position:absolute;inset:0;background:radial-gradient(circle at 30% 40%,var(--poker-felt-overlay) 0,transparent 50%),radial-gradient(circle at 70% 60%,rgba(255,255,255,.02) 0,transparent 40%);border-radius:25%;pointer-events:none}.player-seat{flex-direction:column;gap:var(--space-2)}.player-avatar,.player-seat{display:flex;align-items:center}.player-avatar{position:relative;border-radius:var(--radius-full);background:linear-gradient(135deg,var(--color-surface-elevated) 0,var(--color-surface) 100%);border:6px solid var(--color-border);justify-content:center;transition:all var(--duration-base) var(--ease-out);box-shadow:0 4px 12px rgba(0,0,0,.3),inset 0 1px 0 rgba(255,255,255,.1)}.player-avatar.you{border-color:var(--color-gold);box-shadow:var(--glow-gold),0 6px 16px rgba(251,191,36,.4),inset 0 1px 0 rgba(255,255,255,.15);background:linear-gradient(135deg,#3d2f1f,#2d1f0f)}.player-avatar.active{border-color:var(--color-teal);animation:avatarPulse 2s ease-in-out infinite}.avatar-placeholder{font-size:40px;opacity:.7}@media (max-width:1280px){.avatar-placeholder{font-size:35px}}@media (max-width:768px){.avatar-placeholder{font-size:28px}}@media (max-width:640px){.avatar-placeholder{font-size:24px}}.player-name-badge{padding:6px 12px;background:var(--glass-strong);backdrop-filter:blur(16px) saturate(130%);border:2px solid var(--color-border-emphasis);border-radius:var(--radius-md);font-size:18px;font-weight:600;color:var(--text-primary);white-space:nowrap;box-shadow:0 3px 12px rgba(0,0,0,.2),inset 0 1px 0 rgba(255,255,255,.05);letter-spacing:.01em}@media (max-width:1280px){.player-name-badge{font-size:16px;padding:5px 10px}}@media (max-width:768px){.player-name-badge{font-size:14px;padding:4px 8px}}@media (max-width:640px){.player-name-badge{font-size:12px;padding:3px 6px}}.viewer-badge{border-color:var(--color-gold);color:var(--color-gold);background:rgba(251,191,36,.1);box-shadow:0 3px 15px rgba(251,191,36,.3),inset 0 1px 0 rgba(251,191,36,.2)}.viewer-star{font-size:18px}@media (max-width:1280px){.viewer-star{font-size:16px}}@media (max-width:768px){.viewer-star{font-size:14px}}@media (max-width:640px){.viewer-star{font-size:12px}}.card-back-emoji{font-size:1.5em}.card-center-suit{font-size:2.1em}.card-corner{font-size:.75em}@media (max-width:1280px){.card-back-emoji{font-size:1.4em}.card-center-suit{font-size:2em}.card-corner{font-size:.7em}}@media (max-width:768px){.card-back-emoji{font-size:1.3em}.card-center-suit{font-size:1.9em}.card-corner{font-size:.65em}}@media (max-width:640px){.card-back-emoji{font-size:1.2em}.card-center-suit{font-size:1.8em}.card-corner{font-size:.6em}}.deck-icon{width:4.2vw;min-width:60px;max-width:90px;aspect-ratio:5/7}.deck-emoji{font-size:32px}@media (max-width:1280px){.deck-icon{min-width:55px;max-width:80px}.deck-emoji{font-size:28px}}@media (max-width:768px){.deck-icon{min-width:50px;max-width:70px}.deck-emoji{font-size:24px}}@media (max-width:640px){.deck-icon{min-width:45px;max-width:60px}.deck-emoji{font-size:20px}}.flying-card-emoji-viewer{font-size:1.4em;opacity:.7}.flying-card-emoji{font-size:1.2em;opacity:.7}@media (max-width:1280px){.flying-card-emoji-viewer{font-size:1.35em}.flying-card-emoji{font-size:1.15em}}@media (max-width:768px){.flying-card-emoji-viewer{font-size:1.3em}.flying-card-emoji{font-size:1.1em}}@media (max-width:640px){.flying-card-emoji-viewer{font-size:1.25em}.flying-card-emoji{font-size:1.05em}}.card-slots{display:flex;gap:var(--space-2);margin-top:var(--space-1)}.card-placeholder{width:60px;height:84px;background:linear-gradient(135deg,var(--glass-standard) 0,rgba(26,31,46,.4) 100%);border:2px solid var(--color-border);border-radius:var(--radius-md);opacity:.4;box-shadow:inset 0 2px 4px rgba(0,0,0,.2)}.progress-bar-container{width:100%}.progress-label-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-2);font-size:12px}.progress-label{color:var(--text-secondary);font-weight:500;text-transform:uppercase;letter-spacing:.05em}.progress-percentage{color:var(--text-primary);font-weight:600;font-variant-numeric:tabular-nums}.progress-track{height:8px;background:rgba(255,255,255,.05);overflow:hidden}.progress-fill,.progress-track{position:relative;border-radius:var(--radius-full)}.progress-fill{height:100%;transition:width var(--duration-slow) var(--ease-out)}.progress-fill.bg-blue-500{background:var(--phase-shuffling)}.progress-fill.bg-green-500{background:var(--phase-dealing)}.progress-fill.bg-yellow-500{background:var(--phase-showdown)}.progress-glow{width:40px;background:linear-gradient(90deg,transparent,rgba(255,255,255,.3));animation:progressPulse 1.5s ease-in-out infinite}.phase-overlay,.progress-glow{position:absolute;right:0;top:0;bottom:0}.phase-overlay{left:0;display:flex;align-items:center;justify-content:center;background:rgba(10,14,20,.4);backdrop-filter:blur(8px);z-index:100;animation:fadeIn var(--duration-slow) var(--ease-out)}.shuffle-overlay .phase-card{animation:slideInFromTop var(--duration-slow) var(--ease-out)}.phase-card{max-width:600px;padding:var(--space-8);background:linear-gradient(135deg,var(--glass-strong) 0,rgba(26,31,46,.95) 100%);backdrop-filter:blur(24px) saturate(140%);border:2px solid var(--color-border-emphasis);border-radius:var(--radius-xl);box-shadow:0 20px 60px rgba(0,0,0,.5),0 8px 24px rgba(0,0,0,.3),inset 0 1px 0 rgba(255,255,255,.1);text-align:center}.chapter-badge{display:inline-flex;padding:2px 8px;background:rgba(59,130,246,.1);border:1px solid rgba(59,130,246,.2);border-radius:var(--radius-sm);margin-bottom:var(--space-4)}.chapter-number{font-size:12px;font-weight:600;color:var(--phase-shuffling);text-transform:uppercase;letter-spacing:.1em}.phase-title{font-size:40px;font-weight:700;color:var(--text-primary);margin-bottom:var(--space-3);letter-spacing:-.02em}.phase-subtitle{font-size:20px;color:var(--text-secondary);line-height:1.5}.phase-progress,.phase-subtitle{margin-bottom:var(--space-8)}.deck-animation-container{margin-bottom:var(--space-6);display:flex;justify-content:center}.deck-stack{position:relative;width:120px;height:168px}.deck-card-layer{position:absolute;width:100%;height:100%;background:linear-gradient(135deg,#2563eb,#1e40af 50%,#1e3a8a);border:2px solid rgba(255,255,255,.15);border-radius:var(--radius-lg);box-shadow:0 4px 12px rgba(0,0,0,.3),inset 0 1px 0 rgba(255,255,255,.2),inset 0 -1px 0 rgba(0,0,0,.3);animation:deckShuffle 2s ease-in-out infinite}.deck-card-layer:nth-child(2){animation-delay:.1s}.deck-card-layer:nth-child(3){animation-delay:.2s}.deck-card-layer:nth-child(4){animation-delay:.3s}.phase-detail{display:flex;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-3) var(--space-4);background:rgba(0,217,255,.05);border:1px solid rgba(0,217,255,.1);border-radius:var(--radius-md);font-size:16px;color:var(--text-secondary)}.detail-icon{font-size:20px}.detail-text{font-weight:500}.corner-progress{position:fixed;top:var(--space-6);right:var(--space-6);z-index:50;animation:fadeIn var(--duration-base) var(--ease-out)}.corner-progress-card{padding:var(--space-4);background:var(--glass-strong);backdrop-filter:blur(16px) saturate(130%);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);min-width:200px}.corner-progress-icon{font-size:32px}.corner-progress-icon,.corner-progress-stats{text-align:center;margin-bottom:var(--space-3)}.corner-progress-label{font-size:11px;color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.05em;margin-bottom:var(--space-1)}.corner-progress-count{font-size:24px;font-weight:700;color:var(--text-primary);font-variant-numeric:tabular-nums}.corner-progress-bar{margin-top:var(--space-2)}.corner-progress-track{height:4px;background:rgba(255,255,255,.05);border-radius:var(--radius-full);overflow:hidden}.corner-progress-fill{height:100%;background:var(--phase-dealing);border-radius:var(--radius-full);transition:width var(--duration-base) var(--ease-out);box-shadow:var(--glow-emerald)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideInFromTop{0%{opacity:0;transform:translateY(-40px)}to{opacity:1;transform:translateY(0)}}@keyframes avatarPulse{0%,to{box-shadow:0 0 10px var(--color-teal)}50%{box-shadow:0 0 25px var(--color-teal)}}@keyframes progressPulse{0%,to{opacity:.3}50%{opacity:.8}}@keyframes deckShuffle{0%,to{transform:translateY(0) rotate(0deg)}25%{transform:translateY(-8px) rotate(-2deg)}75%{transform:translateY(-8px) rotate(2deg)}}@keyframes cardFlight{0%{opacity:0;transform:translate(0) scale(.5) rotate(0deg)}50%{opacity:1;transform:translate(var(--flight-mid-x),var(--flight-mid-y)) scale(.8) rotate(10deg)}to{opacity:1;transform:translate(var(--flight-end-x),var(--flight-end-y)) scale(1) rotate(0deg)}}@keyframes cardFlip{0%{transform:rotateY(0deg)}50%{transform:rotateY(90deg)}to{transform:rotateY(180deg)}}@keyframes glowPulse{0%,to{box-shadow:0 0 10px var(--color-emerald)}50%{box-shadow:0 0 25px var(--color-emerald),0 0 40px var(--color-emerald)}}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}@media (prefers-reduced-transparency){.corner-progress-card,.phase-card,.player-name-badge{background:rgba(26,31,46,1);backdrop-filter:none}}.demo-scene.embedded{min-height:400px;height:100%;background:transparent;transform-origin:top center}.demo-scene.embedded .corner-progress,.demo-scene.embedded .phase-overlay{position:absolute}@media (max-width:1280px){.poker-table-container{padding:30px 15px}.poker-content{top:30px;left:15px;right:15px;bottom:30px}}@media (max-width:768px){.poker-table-container{padding:25px 12px}.poker-content{top:25px;left:12px;right:12px;bottom:25px}}@media (max-width:640px){.poker-table-container{padding:12px 8px;max-height:80vh;aspect-ratio:auto}.poker-content{top:12px;left:8px;right:8px;bottom:12px}}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.demo-scene [data-sonner-toaster]{position:absolute!important;top:20px!important;right:20px!important}.demo-scene [data-sonner-toaster][data-x-position=right]{right:20px!important}.demo-scene [data-sonner-toaster][data-y-position=top]{top:20px!important}@media (max-width:639px){.demo-scene button{min-height:44px;padding:14px 20px;font-size:15px}.shuffle-progress-bar-container{max-width:calc(100vw - 40px)}.demo-scene [data-sonner-toaster]{right:16px!important;top:16px!important}.demo-scene [data-sonner-toaster][data-x-position=right]{right:16px!important}.demo-scene [data-sonner-toaster][data-y-position=top]{top:16px!important}.demo-scene.embedded{max-height:80vh;overflow:hidden}}@media (min-width:640px) and (max-width:1023px){.demo-scene button{min-height:48px}}