@import"https://fonts.googleapis.com/css2?family=JetBrains+Mono:wght@400;500;600&display=swap";@import"https://fonts.googleapis.com/css2?family=Outfit:wght@300;400;500;600;700;800&family=JetBrains+Mono:wght@400;500;600&display=swap";*,*:before,*:after{box-sizing:border-box}:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light dark;color:#ffffffde;background-color:#242424;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{font-weight:500;color:#646cff;text-decoration:inherit}a:hover{color:#535bf2}html,body{margin:0;padding:0;overflow:hidden;width:100%;height:100dvh}body{min-width:320px;display:flex;justify-content:center;align-items:center}#root{width:100%;min-height:100vh;display:flex;justify-content:center;align-items:center}h1{font-size:3.2em;line-height:1.1}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#1a1a1a;cursor:pointer;transition:border-color .25s}button:hover{border-color:#646cff}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}@media (prefers-color-scheme: light){:root{color:#ffffffde;background-color:#242424}a:hover{color:#747bff}}.playing-card{box-sizing:content-box;display:inline-block;border-radius:3px;box-shadow:0 2px 8px #0000004d;position:relative;font-family:Arial,sans-serif;transition:all .3s ease;cursor:pointer;-webkit-user-select:none;user-select:none}.playing-card.unicode-card{background:#fff;border:1px solid #ddd;box-shadow:0 1px 3px #0003;display:flex;align-items:center;justify-content:center;line-height:1;text-align:center;overflow:hidden;font-family:"Noto Sans Symbols 2",sans-serif}.playing-card.image-card{background:transparent;border:none;box-shadow:0 2px 4px #0000004d;padding:0;overflow:hidden}.playing-card.image-card .card-image{width:100%;height:100%;object-fit:contain;display:block}.playing-card.image-card.xsmall{width:42px;height:61px}.playing-card.image-card.small{width:55px;height:80px}.playing-card.image-card.medium{width:70px;height:101px}.playing-card.image-card.large{width:88px;height:127px}.playing-card.small{width:52px;height:75px;font-size:12px}.playing-card.medium{width:75px;height:105px;font-size:15px}.playing-card.large{width:105px;height:150px;font-size:21px}.playing-card.unicode-card.xsmall{font-size:4.5em;width:48px;height:65px;padding:0 0 3px}.playing-card.unicode-card.small{font-size:6em;width:63px;height:86px;padding:0 0 4px}.playing-card.unicode-card.medium{font-size:8.25em;width:80px;height:119px;padding:0 0 6px}.playing-card.unicode-card.large{font-size:10.5em;width:100px;height:151px;padding:0 0 8px}.card-front{background:#fff;border:2px solid #333;color:#000}.card-front.red{color:#d32f2f}.card-front.black{color:#000}.playing-card.unicode-card.red{color:#d32f2f}.playing-card.unicode-card.black{color:#000}.card-back{background:linear-gradient(45deg,#1976d2,#1565c0);border:2px solid #0d47a1;display:flex;align-items:center;justify-content:center;color:#fff;line-height:.8;overflow:hidden}.playing-card.card-back.xsmall{width:42px;height:61px;padding-bottom:0}.playing-card.card-back.small{width:55px;height:80px;padding-bottom:0}.playing-card.card-back.medium{width:70px;height:101px;padding-bottom:0}.playing-card.card-back.large{width:88px;height:127px;padding-bottom:0}.card-back-pattern{font-size:5em;opacity:.8}.xsmall .card-back-pattern{font-size:3em}.small .card-back-pattern{font-size:4em}.large .card-back-pattern{font-size:6.5em}.card-corner{position:absolute;display:flex;flex-direction:column;align-items:center;line-height:1}.top-left{top:4px;left:4px}.bottom-right{bottom:4px;right:4px;transform:rotate(180deg)}.small .card-corner{top:2px;left:2px}.small .bottom-right{bottom:2px;right:2px}.large .card-corner{top:6px;left:6px}.large .bottom-right{bottom:6px;right:6px}.rank{font-weight:700;font-size:1em}.suit-small{font-size:.8em;margin-top:1px}.card-center{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);display:flex;align-items:center;justify-content:center}.suit-large{font-size:2em}.small .suit-large{font-size:1.2em}.large .suit-large{font-size:3em}.community-card{margin:0 4px;animation:cardReveal .5s ease-out}@keyframes cardReveal{0%{transform:rotateY(90deg) scale(.8);opacity:0}50%{transform:rotateY(45deg) scale(.9);opacity:.5}to{transform:rotateY(0) scale(1);opacity:1}}.hole-card{margin:0 2px}.deck-card{opacity:.9}.deck-card:hover{opacity:1}.playing-card.dealing{animation:dealCard .6s ease-out}@keyframes dealCard{0%{transform:translate(-100px) rotate(-45deg) scale(0);opacity:0}50%{transform:translate(-20px) rotate(-10deg) scale(.8);opacity:.7}to{transform:translate(0) rotate(0) scale(1);opacity:1}}.playing-card.flipping{animation:flipCard .6s ease-in-out}@keyframes flipCard{0%{transform:rotateY(0)}50%{transform:rotateY(90deg) scale(.8)}to{transform:rotateY(0)}}@media (max-width: 768px){.playing-card.large{width:90px;height:128px;font-size:18px}.playing-card.medium{width:68px;height:95px;font-size:14px}.playing-card.small{width:45px;height:63px;font-size:11px}.playing-card.image-card.xsmall{width:38px;height:55px}.playing-card.image-card.small{width:50px;height:72px}.playing-card.image-card.medium{width:60px;height:87px}.playing-card.image-card.large{width:min(17vw,80px);height:auto;aspect-ratio:500 / 726}.playing-card.unicode-card.xsmall{font-size:4.125em;width:41px;height:59px;padding-bottom:2px}.playing-card.unicode-card.small{font-size:5.775em;width:56px;height:83px;padding-bottom:3px}.playing-card.unicode-card.medium{font-size:6.75em;width:65px;height:97px;padding-bottom:4px}.playing-card.unicode-card.large{font-size:9.45em;width:90px;height:135px;padding-bottom:6px}.playing-card.card-back.xsmall{width:38px;height:55px;padding-bottom:0}.playing-card.card-back.small{width:50px;height:72px;padding-bottom:0}.playing-card.card-back.medium{width:60px;height:87px;padding-bottom:0}.playing-card.card-back.large{width:min(17vw,80px);height:auto;aspect-ratio:500 / 726;padding-bottom:0}}.playing-card.selected{box-shadow:0 0 15px #0f09;border-color:#0f0}.playing-card.disabled{opacity:.5;filter:grayscale(.5)}.playing-card.highlighted{animation:cardHighlight 1s infinite alternate}@keyframes cardHighlight{0%{box-shadow:0 2px 8px #0000004d}to{box-shadow:0 4px 20px #ffd70099}}.debug-hole-card{--phosphor-green: #39ff14;--phosphor-dim: #1a8f0a;--phosphor-glow: rgba(57, 255, 20, .6);--crt-black: #0a0a0a;--crt-dark: #111;--scanline: rgba(0, 0, 0, .15);--amber-accent: #ffb000;--card-width: 88px;--card-height: 127px}.debug-hole-card{perspective:1000px;display:inline-block;position:relative}.debug-hole-card.has-debug{cursor:pointer}.debug-hole-card.has-debug:hover .debug-card-inner:not(.flipped){transform:translateY(-2px);filter:brightness(1.1)}.debug-card-inner{position:relative;width:var(--card-width);height:var(--card-height);transform-style:preserve-3d;transition:transform .5s cubic-bezier(.4,0,.2,1.4)}.debug-card-inner.flipped{transform:rotateY(180deg)}.debug-card-front,.debug-card-back{position:absolute;width:100%;height:100%;backface-visibility:hidden;border-radius:3px;box-shadow:0 2px 8px #0000004d}.debug-card-front{background:linear-gradient(45deg,#1976d2,#1565c0);border:2px solid #0d47a1;display:flex;align-items:center;justify-content:center}.debug-card-front .card-back-pattern:before{content:"🂠";font-size:5em;color:#fff;opacity:.8;line-height:.8}.debug-card-back{transform:rotateY(180deg);background:var(--crt-black);border:1px solid var(--phosphor-dim);overflow:hidden}.crt-screen{width:100%;height:100%;display:flex;flex-direction:column;padding:4px;box-sizing:border-box;font-family:IBM Plex Mono,JetBrains Mono,Fira Code,monospace;position:relative;border-radius:2px;box-shadow:inset 0 0 20px #39ff141a}.scanlines{position:absolute;top:0;right:0;bottom:0;left:0;background:repeating-linear-gradient(0deg,var(--scanline) 0px,var(--scanline) 1px,transparent 1px,transparent 2px);pointer-events:none;z-index:10;opacity:.7}.debug-header{display:flex;align-items:center;justify-content:center;gap:3px;padding:2px 0 3px;border-bottom:1px solid var(--phosphor-dim);margin-bottom:3px}.block-char{color:var(--phosphor-green);font-size:8px;text-shadow:0 0 2px var(--phosphor-glow),0 0 4px var(--phosphor-glow)}.block-char:before{content:"▓"}.header-text{color:var(--phosphor-green);font-size:8px;font-weight:600;letter-spacing:.5px;text-shadow:0 0 2px var(--phosphor-glow),0 0 4px var(--phosphor-glow),0 0 8px rgba(57,255,20,.3)}.debug-stats{flex:1;display:flex;flex-direction:column;justify-content:space-between;gap:1px}.stat-row{display:flex;justify-content:space-between;align-items:center;padding:1px 2px;animation:stat-reveal .3s ease-out both}@keyframes stat-reveal{0%{opacity:0;transform:translate(-4px)}to{opacity:1;transform:translate(0)}}.stat-label{color:var(--phosphor-dim);font-size:6px;font-weight:500;letter-spacing:.3px;flex-shrink:0;width:28px}.stat-value{color:var(--phosphor-green);font-size:7px;font-weight:400;text-shadow:0 0 2px var(--phosphor-glow),0 0 4px var(--phosphor-glow);flex:1;text-align:right;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.stat-latency{color:#0ff;text-shadow:0 0 2px rgba(0,255,255,.6),0 0 4px rgba(0,255,255,.4)}.stat-cost{color:var(--phosphor-green)}.stat-cost.high-cost{color:var(--amber-accent);text-shadow:0 0 2px rgba(255,176,0,.6),0 0 4px rgba(255,176,0,.4)}.stat-divider{height:1px;background:linear-gradient(90deg,transparent 0%,var(--phosphor-dim) 20%,var(--phosphor-dim) 80%,transparent 100%);margin:2px 0}.stat-footer{display:flex;flex-direction:column;align-items:center;gap:2px;padding-top:2px;animation:stat-reveal .3s ease-out both}.progress-bar{display:flex;gap:1px;height:6px}.progress-block{width:4px;height:100%;background:var(--phosphor-green);opacity:.7;box-shadow:0 0 2px var(--phosphor-glow)}.call-count{color:var(--phosphor-dim);font-size:7px;letter-spacing:.2px}.debug-stats.no-data{justify-content:center;align-items:center}.no-data-text{color:var(--phosphor-dim);font-size:9px;opacity:.6;animation:blink 1.5s infinite}@keyframes blink{0%,to{opacity:.6}50%{opacity:.3}}.debug-backdrop{display:none}.debug-card-inner.flipped .crt-screen{animation:boot-flicker .4s ease-out}@keyframes boot-flicker{0%,10%{opacity:0}15%,20%{opacity:1}25%{opacity:.3}30%,to{opacity:1}}@media (max-width: 768px){.debug-hole-card{--card-width: min(17vw, 80px);--card-height: auto}.debug-card-inner{width:var(--card-width);height:auto;aspect-ratio:500 / 726}.debug-backdrop{display:block;position:fixed;top:0;right:0;bottom:0;left:0;background:#000000bf;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);z-index:999;animation:fade-in .2s ease-out}@keyframes fade-in{0%{opacity:0}to{opacity:1}}.debug-hole-card.active{z-index:1000}.debug-hole-card.active .debug-card-inner{position:fixed;top:50%;left:50%;width:140px;height:200px;aspect-ratio:unset;transform:translate(-50%,-50%) rotateY(180deg);transition:all .4s cubic-bezier(.4,0,.2,1.4)}.debug-hole-card.active .header-text,.debug-hole-card.active .block-char{font-size:10px}.debug-hole-card.active .stat-label{font-size:8px;width:36px}.debug-hole-card.active .stat-value,.debug-hole-card.active .call-count{font-size:9px}.debug-hole-card.active .progress-block{width:6px;height:8px}.debug-hole-card.active .crt-screen{padding:8px}.debug-hole-card.active .debug-header{padding:4px 0 6px;margin-bottom:6px}.debug-hole-card.active .stat-row{padding:2px 4px}.debug-hole-card.active .stat-divider{margin:4px 0}.debug-hole-card.active .stat-footer{padding-top:4px;gap:4px}}@media (hover: none){.debug-hole-card.has-debug:active .debug-card-inner:not(.flipped){transform:scale(.98)}}.action-panel{position:fixed;bottom:20px;left:50%;transform:translate(-50%);background:#000000f2;border:2px solid #333;border-radius:12px;padding:20px;box-shadow:0 4px 20px #00000080;z-index:1000;min-width:450px;max-width:600px}.action-buttons{display:flex;gap:15px;justify-content:center;flex-wrap:wrap}.action-button{padding:18px 32px;border:none;border-radius:10px;font-size:18px;font-weight:700;cursor:pointer;transition:all .3s ease;min-width:120px;position:relative;overflow:hidden}.action-button:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0000004d}.action-button:active{transform:translateY(0)}.action-button:disabled{opacity:.5;cursor:not-allowed;transform:none}.action-button.fold{background:linear-gradient(45deg,#f44336,#d32f2f);color:#fff}.action-button.fold:hover{background:linear-gradient(45deg,#d32f2f,#b71c1c)}.action-button.check{background:linear-gradient(45deg,#4caf50,#388e3c);color:#fff}.action-button.check:hover{background:linear-gradient(45deg,#388e3c,#2e7d32)}.action-button.call{background:linear-gradient(45deg,#2196f3,#1976d2);color:#fff}.action-button.call:hover{background:linear-gradient(45deg,#1976d2,#1565c0)}.action-button.bet,.action-button.raise{background:linear-gradient(45deg,#ff9800,#f57c00);color:#fff}.action-button.bet:hover,.action-button.raise:hover{background:linear-gradient(45deg,#f57c00,#ef6c00)}.action-button.all-in{background:linear-gradient(45deg,#9c27b0,#7b1fa2);color:#fff;animation:pulse 2s infinite}.action-button.all-in:hover{background:linear-gradient(45deg,#7b1fa2,#6a1b9a)}@keyframes pulse{0%,to{box-shadow:0 0 5px #9c27b080}50%{box-shadow:0 0 20px #9c27b0cc}}.betting-interface{min-width:500px;max-width:600px;animation:slideUp .3s ease-out;overflow:visible}@keyframes slideUp{0%{transform:translate(-50%) translateY(100px);opacity:0}to{transform:translate(-50%) translateY(0);opacity:1}}.bet-header{margin-bottom:20px}.bet-title{color:#fff;font-size:20px;font-weight:700;text-align:center;margin-bottom:10px}.bet-info{display:flex;justify-content:center;gap:20px;color:#999;font-size:12px}.info-item{padding:4px 12px;background:#ffffff0d;border-radius:4px;border:1px solid rgba(255,255,255,.1)}.bet-options{margin-bottom:15px}.quick-bets{display:grid;grid-template-columns:repeat(5,1fr);gap:8px;margin-bottom:15px}.bet-button{padding:14px 12px;border:2px solid #666;border-radius:8px;background:#ffffff1a;color:#fff;font-size:14px;cursor:pointer;transition:all .2s ease;text-align:center;line-height:1.3}.bet-button:hover:not(:disabled){border-color:#0f0;background:#00ff001a;transform:translateY(-1px)}.bet-button:disabled{opacity:.4;cursor:not-allowed;color:#666;border-color:#444}.bet-button.selected{border-color:#0f0;background:#0f03;box-shadow:0 0 10px #00ff004d}.bet-button.all-in{border-color:#f0f;background:#ff00ff1a}.bet-button.all-in:hover:not(:disabled){border-color:#f0f;background:#f0f3;box-shadow:0 0 10px #ff00ff80}.bet-slider-container{margin-bottom:15px}.bet-slider{width:100%;height:6px;border-radius:3px;background:#333;outline:none;-webkit-appearance:none}.bet-slider::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:20px;height:20px;border-radius:50%;background:#0f0;cursor:pointer;box-shadow:0 0 5px #00ff0080}.bet-slider::-moz-range-thumb{width:20px;height:20px;border-radius:50%;background:#0f0;cursor:pointer;border:none;box-shadow:0 0 5px #00ff0080}.slider-labels{display:flex;justify-content:space-between;color:#ccc;font-size:12px;margin-top:5px}.custom-bet{margin-bottom:15px;position:relative}.custom-bet-input{width:100%;padding:8px 12px;border:2px solid #666;border-radius:6px;background:#ffffff1a;color:#fff;font-size:14px;outline:none;box-sizing:border-box}.custom-bet-input:focus{border-color:#0f0;box-shadow:0 0 5px #00ff004d}.custom-bet-input::placeholder{color:#999}.current-bet-display{text-align:center;margin-bottom:15px;padding:12px;border:1px solid #00ff00;border-radius:6px;background:#00ff001a}.bet-amount-display{color:#0f0;font-size:18px;font-weight:700;margin-bottom:4px}.bet-result{font-size:12px;color:#999}.bet-breakdown{color:#ccc}.bet-actions{display:flex;gap:10px;justify-content:center}.action-button.cancel{background:linear-gradient(45deg,#666,#444);color:#fff}.action-button.cancel:hover{background:linear-gradient(45deg,#444,#333)}.action-button.confirm{background:linear-gradient(45deg,#4caf50,#388e3c);color:#fff}.action-button.confirm:hover{background:linear-gradient(45deg,#388e3c,#2e7d32)}@media (max-width: 600px){.action-panel{min-width:90vw;left:5vw;transform:none;bottom:10px}.betting-interface{min-width:auto}.quick-bets{grid-template-columns:repeat(2,1fr)}.action-buttons{flex-direction:column}.action-button{min-width:auto}}.unified-bet-display{background:#00000080;border:2px solid #00ff00;border-radius:8px;padding:15px;margin-bottom:20px;text-align:center}.bet-preview{display:flex;align-items:center;justify-content:center;gap:10px;margin-bottom:10px}.bet-label{color:#999;font-size:14px}.bet-total{color:#0f0;font-size:24px;font-weight:700}.bet-breakdown{display:flex;align-items:center;justify-content:center;gap:8px;font-size:12px;color:#ccc;margin-bottom:8px}.call-portion{color:orange}.plus{color:#666}.raise-portion{color:#0f0}.stack-after{font-size:12px;color:#999}.snap-info{font-size:10px;color:#666;margin-top:4px;text-transform:uppercase;letter-spacing:.5px}.smart-suggestions{margin-bottom:15px;background:#0000004d;border:1px solid #333;border-radius:6px;padding:10px}.suggestions-header{color:#ccc;font-size:12px;text-transform:uppercase;letter-spacing:1px;cursor:pointer;-webkit-user-select:none;user-select:none;display:flex;justify-content:space-between;align-items:center;margin-bottom:0;padding:5px 0}.suggestions-header:hover{color:#fff}.header-text{flex:1;text-align:center}.toggle-icon{font-size:16px;font-weight:700;color:#666;width:20px;text-align:center}.suggestion-buttons{display:flex;gap:8px;flex-wrap:wrap;justify-content:center;margin-top:10px;padding-top:10px;border-top:1px solid #333;animation:fadeIn .2s ease-out}@keyframes fadeIn{0%{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:translateY(0)}}.suggestion-button{display:flex;flex-direction:column;align-items:center;padding:8px 12px;border:1px solid #666;border-radius:6px;background:#ffffff0d;color:#fff;cursor:pointer;transition:all .2s ease}.suggestion-button:hover:not(:disabled){transform:translateY(-2px);border-color:#0f0;background:#00ff001a}.suggestion-button.selected{border-color:#0f0;background:#0f03}.suggestion-button:disabled{opacity:.4;cursor:not-allowed}.suggestion-button.strategic{border-color:#2196f3}.suggestion-button.strategic:hover:not(:disabled){border-color:#2196f3;background:#2196f333}.suggestion-button.value{border-color:#4caf50}.suggestion-button.value:hover:not(:disabled){border-color:#4caf50;background:#4caf5033}.suggestion-button.aggressive{border-color:#f44336}.suggestion-button.aggressive:hover:not(:disabled){border-color:#f44336;background:#f4433633}.suggestion-button.history{border-color:#ff9800}.suggestion-button.history:hover:not(:disabled){border-color:#ff9800;background:#ff980033}.suggestion-label{font-size:10px;text-transform:uppercase;letter-spacing:.5px;color:#999}.suggestion-amount{font-size:14px;font-weight:700}.bet-slider-container{position:relative;margin:20px 0}.slider-snap-points{position:absolute;width:100%;height:6px;top:50%;transform:translateY(-50%);pointer-events:none}.snap-point{position:absolute;width:2px;height:10px;background:#666;top:-2px}.slider-labels{position:relative;margin-top:10px}.pot-marker{position:absolute;transform:translate(-50%);font-size:10px;color:#999}.input-shortcuts{display:grid;grid-template-columns:repeat(2,1fr);gap:6px;margin-top:8px}.shortcut-btn{padding:8px 10px;border:1px solid #666;border-radius:4px;background:#ffffff0d;color:#fff;font-size:12px;font-weight:500;cursor:pointer;transition:all .2s ease}.shortcut-btn:hover:not(:disabled){border-color:#0f0;background:#00ff001a;transform:translateY(-1px)}.shortcut-btn:active:not(:disabled){transform:translateY(0)}.shortcut-btn:disabled{opacity:.4;cursor:not-allowed;transform:none}.quick-chat-collapsed{padding:.5rem;border-top:1px solid rgba(255,255,255,.1)}.quick-chat-toggle{display:flex;align-items:center;gap:.5rem;padding:.625rem 1rem;width:100%;border:1px solid rgba(255,255,255,.2);border-radius:.75rem;background:linear-gradient(135deg,#667eea33,#764ba233);color:#fff;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s ease}.quick-chat-toggle:hover{background:linear-gradient(135deg,#667eea4d,#764ba24d);border-color:#ffffff4d}.toggle-emoji{font-size:1.125rem}.toggle-text{flex:1;text-align:left}.quick-chat-suggestions{background:transparent;padding:4px 16px 16px;padding-bottom:max(16px,env(safe-area-inset-bottom));display:flex;flex-direction:column;gap:12px}.quick-chat-header{display:flex;align-items:center;justify-content:space-between}.header-title{font-size:.875rem;font-weight:600;color:#ffffffe6}.collapse-btn{width:1.75rem;height:1.75rem;padding:0;border:none;border-radius:50%;background:#ffffff1a;color:#ffffffb3;font-size:1.25rem;line-height:1;cursor:pointer;transition:all .2s ease}.collapse-btn:hover{background:#fff3;color:#fff}.target-selector,.tone-selector,.suggestions-section{display:flex;flex-direction:column;align-items:center;gap:.625rem}.selector-label{font-size:.6875rem;font-weight:700;color:#ffffff73;text-transform:uppercase;letter-spacing:.1em;text-align:center}.target-options{display:flex;gap:.625rem;flex-wrap:wrap;justify-content:center}.target-btn{display:flex;flex-direction:column;align-items:center;gap:.25rem;padding:.5rem;min-width:3.5rem;border:2px solid transparent;border-radius:.75rem;background:#ffffff1a;color:#fff;font-size:.75rem;cursor:pointer;transition:all .2s ease}.target-btn:hover{background:#ffffff26;transform:translateY(-2px)}.target-btn.selected{border-color:#667eea;background:#667eea33}.target-avatar{width:2rem;height:2rem;display:flex;align-items:center;justify-content:center;border-radius:50%;background:linear-gradient(135deg,#667eea,#764ba2);font-size:1rem;font-weight:600;overflow:hidden}.target-avatar.has-image{background:none}.target-avatar-img{width:100%;height:100%;object-fit:cover;border-radius:50%}.target-name{font-size:.6875rem;color:#fffc;max-width:4rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.modifier-toggles{display:flex;gap:.5rem;flex-wrap:wrap;justify-content:center}.suggestions-header .modifier-toggles{flex:1}.toggle-group{display:flex;border-radius:.5rem;overflow:hidden;border:1px solid rgba(255,255,255,.2)}.toggle-btn{padding:.375rem .75rem;border:none;background:#ffffff0d;color:#fff9;font-size:.75rem;font-weight:500;cursor:pointer;transition:all .2s ease}.toggle-btn:not(:last-child){border-right:1px solid rgba(255,255,255,.1)}.toggle-btn:hover{background:#ffffff1a;color:#fffc}.toggle-btn.active{background:#667eea4d;color:#fff}.tone-options{display:flex;gap:.5rem;flex-wrap:wrap;justify-content:center}.tone-btn{display:flex;align-items:center;gap:.375rem;padding:.5rem .75rem;border:2px solid transparent;border-radius:2rem;background:#ffffff1a;color:#fff;font-size:.75rem;cursor:pointer;transition:all .2s ease}.tone-btn:hover,.tone-btn.selected{transform:translateY(-1px)}.tone-btn.tone-tilt{border-color:#f443364d}.tone-btn.tone-tilt:hover,.tone-btn.tone-tilt.selected{background:#f4433640;border-color:#f44336}.tone-btn.tone-false_confidence{border-color:#4caf504d}.tone-btn.tone-false_confidence:hover,.tone-btn.tone-false_confidence.selected{background:#4caf5040;border-color:#4caf50}.tone-btn.tone-doubt{border-color:#9c27b04d}.tone-btn.tone-doubt:hover,.tone-btn.tone-doubt.selected{background:#9c27b040;border-color:#9c27b0}.tone-btn.tone-goad{border-color:#ff57224d}.tone-btn.tone-goad:hover,.tone-btn.tone-goad.selected{background:#ff572240;border-color:#ff5722}.tone-btn.tone-mislead{border-color:#2196f34d}.tone-btn.tone-mislead:hover,.tone-btn.tone-mislead.selected{background:#2196f340;border-color:#2196f3}.tone-btn.tone-befriend{border-color:#ffc1074d}.tone-btn.tone-befriend:hover,.tone-btn.tone-befriend.selected{background:#ffc10740;border-color:#ffc107}.tone-emoji{font-size:1rem}.tone-label{font-weight:500}.suggestions-header{display:flex;align-items:center;justify-content:space-between;width:100%}.suggestions-header .refresh-btn{width:28px;height:28px;margin:0;font-size:14px;touch-action:manipulation;-webkit-tap-highlight-color:transparent}.suggestions-container{display:flex;flex-direction:column;gap:.5rem;width:100%;align-items:center}.suggestion-pill{padding:.875rem 1.25rem;border:1px solid rgba(255,255,255,.15);border-radius:1rem;background:#ffffff0f;color:#fff;font-size:.875rem;text-align:center;cursor:pointer;transition:all .2s ease;animation:suggestionFadeIn .3s ease-out;width:100%;max-width:100%}.suggestion-pill:hover{background:#ffffff1f;border-color:#ffffff4d;transform:scale(1.01)}.suggestion-pill:active{transform:scale(.99)}.suggestion-pill.tone-tilt{border-left:3px solid #f44336}.suggestion-pill.tone-false_confidence{border-left:3px solid #4caf50}.suggestion-pill.tone-doubt{border-left:3px solid #9c27b0}.suggestion-pill.tone-goad{border-left:3px solid #ff5722}.suggestion-pill.tone-mislead{border-left:3px solid #2196f3}.suggestion-pill.tone-befriend{border-left:3px solid #ffc107}.suggestion-loading{padding:1rem 1.25rem;border:1px solid rgba(255,255,255,.1);border-radius:1rem;background:#ffffff0a;color:#ffffff80;font-size:.875rem;text-align:center;width:100%}.loading-dots:after{content:"";animation:loadingDots 1.5s infinite}.refresh-btn{align-self:center;width:2.5rem;height:2.5rem;padding:0;border:1px solid rgba(255,255,255,.15);border-radius:50%;background:#ffffff0d;color:#ffffff80;font-size:1rem;cursor:pointer;transition:background .2s ease,color .2s ease;margin-top:.25rem;touch-action:manipulation;-webkit-tap-highlight-color:transparent;-webkit-user-select:none;user-select:none}.refresh-btn:hover:not(:disabled){background:#ffffff1a;color:#fff;transform:rotate(180deg)}.refresh-btn:disabled{opacity:.4;cursor:not-allowed}@media (min-width: 768px){.quick-chat-suggestions{padding:1rem}.target-btn{min-width:4rem;padding:.625rem}.target-avatar{width:2.5rem;height:2.5rem;font-size:1.125rem}.tone-btn{padding:.5rem 1rem;font-size:.8125rem}.suggestions-container{flex-direction:row;flex-wrap:wrap}.suggestion-pill{flex:1;min-width:200px}}.chat-sidebar{display:flex;flex-direction:column;height:100%;background:#000000d9;color:#fff}.chat-sidebar__header{padding:1rem;border-bottom:1px solid rgba(255,255,255,.1);display:flex;justify-content:space-between;align-items:center;background:#ffffff0d;flex-shrink:0}.chat-sidebar__header h3{margin:0;font-size:1rem;font-weight:600}.chat-sidebar__count{font-size:.75rem;color:#fff9}.chat-filters-container{display:flex;align-items:center;gap:.5rem}.filter-divider{color:#ffffff4d;font-size:.875rem;-webkit-user-select:none;user-select:none}.player-filter-dropdown{padding:.25rem .5rem;background:transparent;border:1px solid rgba(255,255,255,.2);border-radius:.25rem;color:#fffc;font-size:.75rem;cursor:pointer;outline:none;transition:all .2s ease;min-width:7rem}.player-filter-dropdown:hover{background:#ffffff26;border-color:#ffffff4d}.player-filter-dropdown:focus{border-color:#ffffff80;box-shadow:0 0 0 2px #ffffff1a}.player-filter-dropdown option{background:#1a1a1a;color:#fff}.chat-filters{display:flex;gap:4px}.filter-btn{padding:.25rem .5rem;border:1px solid rgba(255,255,255,.2);background:transparent;color:#fff9;border-radius:.25rem;cursor:pointer;font-size:.875rem;transition:all .2s ease}.filter-btn:hover{background:#ffffff1a;color:#fffc}.filter-btn.active{background:#fff3;color:#fff;border-color:#fff6}.chat-sidebar__messages{flex:1;overflow-y:auto;padding:1rem;display:flex;flex-direction:column;gap:.75rem;min-height:0}.chat-sidebar__messages::-webkit-scrollbar{width:6px}.chat-sidebar__messages::-webkit-scrollbar-track{background:#ffffff0d}.chat-sidebar__messages::-webkit-scrollbar-thumb{background:#fff3;border-radius:3px}.chat-sidebar__messages::-webkit-scrollbar-thumb:hover{background:#ffffff4d}.chat-sidebar__empty{text-align:center;margin-top:3.75rem;color:#fff6}.chat-sidebar__empty p{margin:.5rem 0;font-size:.875rem}.chat-sidebar__tip{font-size:.75rem;color:#ffffff4d}.chat-message{background:#ffffff0d;border-radius:.5rem;padding:.625rem .75rem;border-left:3px solid;animation:messageSlide .3s ease-out}.chat-message.grouped{padding-top:.375rem;border-top-left-radius:.25rem;border-top-right-radius:.25rem;animation:none}.chat-message.grouped-with-next{margin-bottom:.125rem;border-bottom-left-radius:.25rem;border-bottom-right-radius:.25rem}.chat-message.grouped.grouped-with-next{border-radius:.25rem}@keyframes messageSlide{0%{opacity:0;transform:translate(-10px)}to{opacity:1;transform:translate(0)}}.chat-message.system{border-left-color:#ff9800;background:#ff980014}.chat-message.player{border-left-color:#2196f3;background:#2196f314}.chat-message.ai{border-left-color:#9c27b0;background:#9c27b014}.chat-message.table{border-left-color:#4caf50;background:#4caf5014}.chat-message.own-message{border-left-color:#0f0;background:#00ff0014;margin-left:20px}.message-header{display:flex;align-items:center;gap:.375rem;margin-bottom:.25rem;font-size:1rem}.message-icon{font-size:1rem}.chat-avatar{width:24px;height:24px;border-radius:50%;object-fit:cover;flex-shrink:0}.message-sender{font-weight:600;color:#ffffffe6;font-size:1rem}.message-time{margin-left:auto;color:#fff6;font-size:.6875rem}.message-content{font-size:.8125rem;line-height:1.5;color:#fffc;word-wrap:break-word}.chat-message.action-message{background:#ffffff05;padding:.5rem .75rem}.action-content{display:flex;align-items:center;gap:.5rem;font-size:1rem}.action-player{font-weight:600}.action-emoji{font-size:1rem}.action-text{color:#ffffffb3;flex:1}.action-content .message-time{margin-left:auto;color:#fff6;font-size:.6875rem}.chat-message.event-win{background:linear-gradient(135deg,#ffd70026,#ffd7000d);border-left-color:gold!important;animation:eventPulse 2s ease-out}.chat-message.event-all-in{background:linear-gradient(135deg,#ff450026,#ff45000d);border-left-color:#ff4500!important;animation:eventPulse 2s ease-out}.chat-message.event-big-pot{background:linear-gradient(135deg,#00ff0026,#00ff000d);border-left-color:#0f0!important;animation:eventPulse 2s ease-out}.chat-message.event-showdown{background:linear-gradient(135deg,#9370db26,#9370db0d);border-left-color:#9370db!important}.chat-message.event-elimination{background:linear-gradient(135deg,#dc143c26,#dc143c0d);border-left-color:#dc143c!important;animation:eventShake .5s ease-out}.event-emoji{font-size:1.25rem;margin-right:.5rem;display:inline-block;animation:eventBounce 1s ease-out}@keyframes eventPulse{0%{box-shadow:0 0 #fff6}70%{box-shadow:0 0 0 10px #fff0}to{box-shadow:0 0 #fff0}}@keyframes eventBounce{0%,20%,50%,80%,to{transform:translateY(0)}40%{transform:translateY(-10px)}60%{transform:translateY(-5px)}}@keyframes eventShake{0%,to{transform:translate(0)}10%,30%,50%,70%,90%{transform:translate(-2px)}20%,40%,60%,80%{transform:translate(2px)}}.hand-separator{display:flex;align-items:center;gap:.75rem;margin:1.25rem 0;opacity:.5}.separator-line{flex:1;height:1px;background:linear-gradient(90deg,transparent 0%,rgba(255,255,255,.2) 20%,rgba(255,255,255,.2) 80%,transparent 100%)}.separator-text{font-size:.6875rem;text-transform:uppercase;letter-spacing:.5px;color:#fff6;font-weight:500;white-space:nowrap}.chat-sidebar__input{padding:1rem;border-top:1px solid rgba(255,255,255,.1);background:#ffffff0d;display:flex;gap:.5rem;flex-shrink:0}.chat-input{flex:1;padding:.5rem .75rem;border:1px solid rgba(255,255,255,.2);border-radius:.375rem;background:#ffffff0d;color:#fff;font-size:.8125rem;outline:none;transition:all .2s ease}.chat-input:focus{border-color:#00ff0080;background:#ffffff14;box-shadow:0 0 0 2px #00ff001a}.chat-input::placeholder{color:#fff6}.send-button{padding:.5rem 1rem;border:none;border-radius:.375rem;background:linear-gradient(135deg,#4caf50,#388e3c);color:#fff;font-size:.8125rem;font-weight:600;cursor:pointer;transition:all .2s ease;white-space:nowrap}.send-button:hover:not(:disabled){background:linear-gradient(135deg,#388e3c,#2e7d32);transform:translateY(-1px)}.send-button:active:not(:disabled){transform:translateY(0)}.send-button:disabled{opacity:.4;cursor:not-allowed}@media (max-width: 900px){.chat-sidebar__header{padding:.75rem}.chat-sidebar__messages{padding:.75rem;gap:.5rem}.chat-sidebar__input{padding:.75rem}}.loading-overlay{position:absolute;top:0;left:0;right:0;bottom:0;background:#000000d9;display:flex;justify-content:center;align-items:center;z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.loading-content{text-align:center;color:#fff;padding:40px;border-radius:20px;background:linear-gradient(135deg,#1a1a2ef2,#16213ef2);box-shadow:0 8px 32px #0000004d;max-width:400px;animation:fadeIn .3s ease-out}@keyframes fadeIn{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}.ai-avatar{position:relative;margin:0 auto 20px;width:80px;height:80px}.avatar-circle{width:80px;height:80px;border-radius:50%;background:linear-gradient(135deg,#667eea,#764ba2);display:flex;align-items:center;justify-content:center;box-shadow:0 4px 20px #667eea66;animation:avatarPulse 2s ease-in-out infinite}@keyframes avatarPulse{0%,to{transform:scale(1);box-shadow:0 4px 20px #667eea66}50%{transform:scale(1.05);box-shadow:0 4px 30px #667eea99}}.avatar-initial{font-size:32px;font-weight:700;color:#fff;text-transform:uppercase}.thinking-indicator{position:absolute;bottom:-5px;right:-5px;display:flex;gap:3px;background:#1a1a2ee6;padding:6px 8px;border-radius:20px;box-shadow:0 2px 10px #0000004d}.thinking-dot{width:8px;height:8px;border-radius:50%;background:#0f8;animation:thinking 1.4s ease-in-out infinite}.thinking-dot.dot-2{animation-delay:.2s}.thinking-dot.dot-3{animation-delay:.4s}@keyframes thinking{0%,60%,to{opacity:.3;transform:scale(.8)}30%{opacity:1;transform:scale(1.2)}}.player-thinking-name{font-size:24px;margin:0 0 10px;font-weight:600;background:linear-gradient(45deg,#fff,#e0e0e0);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.thinking-status{font-size:16px;color:#a0a0a0;margin:0 0 20px;min-height:20px}.thinking-bubble{background:#ffffff1a;border:1px solid rgba(255,255,255,.2);border-radius:12px;padding:12px 20px;margin:20px 0;position:relative;animation:slideUp .4s ease-out}.thinking-bubble p{margin:0;font-style:italic;color:#e0e0e0;font-size:14px}@keyframes slideUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.progress-bar{width:100%;height:6px;background:#ffffff1a;border-radius:3px;overflow:hidden;margin:20px 0;position:relative}.progress-fill{height:100%;background:linear-gradient(90deg,#0f8,#0c6);border-radius:3px;animation:progressAnimation 10s ease-in-out;box-shadow:0 0 10px #00ff8880}@keyframes progressAnimation{0%{width:0%}80%{width:90%}to{width:95%}}.other-players{margin-top:10px;font-size:12px;color:gray}.loading-overlay[data-player-type=aggressive] .avatar-circle{background:linear-gradient(135deg,#ff6b6b,#f44)}.loading-overlay[data-player-type=conservative] .avatar-circle{background:linear-gradient(135deg,#4ecdc4,#44a08d)}.loading-overlay[data-player-type=wild] .avatar-circle{background:linear-gradient(135deg,#f093fb,#f5576c)}@media (max-width: 600px){.loading-content{padding:30px 20px;max-width:90%}.ai-avatar,.avatar-circle{width:60px;height:60px}.avatar-initial{font-size:24px}.player-thinking-name{font-size:20px}}.player-thinking-indicator{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:10}.thinking-ring{position:absolute;top:0;left:0;width:100%;height:100%}.ring-pulse{position:absolute;top:-10px;left:-10px;right:-10px;bottom:-10px;border:3px solid #00ff88;border-radius:15px;opacity:0;animation:ringPulse 2s ease-out infinite}.ring-pulse.ring-delay{animation-delay:1s}@keyframes ringPulse{0%{opacity:.8;transform:scale(1)}to{opacity:0;transform:scale(1.1)}}.thinking-text{position:absolute;bottom:-35px;left:50%;transform:translate(-50%);background:#000c;padding:4px 12px;border-radius:20px;white-space:nowrap;z-index:20}.thinking-text .dots{display:inline-flex;gap:2px;color:#0f8;font-size:20px}.thinking-text .dot{animation:dotBounce 1.4s ease-in-out infinite;display:inline-block}.thinking-text .dot:nth-child(2){animation-delay:.2s}.thinking-text .dot:nth-child(3){animation-delay:.4s}@keyframes dotBounce{0%,60%,to{transform:translateY(0)}30%{transform:translateY(-10px)}}.player-seat.thinking .player-info{filter:brightness(1.2)}.player-seat.thinking{animation:gentleGlow 2s ease-in-out infinite}@keyframes gentleGlow{0%,to{box-shadow:0 4px 12px #0000004d}50%{box-shadow:0 4px 20px #00ff884d}}.winner-announcement{position:fixed;top:0;left:0;right:0;bottom:0;z-index:1000;display:flex;align-items:center;justify-content:center;pointer-events:none;opacity:0;transition:opacity .5s ease-in-out}.winner-announcement.show{opacity:1;pointer-events:all}.winner-overlay{position:absolute;top:0;left:0;right:0;bottom:0;background:#000c;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.winner-content{position:relative;background:linear-gradient(145deg,#1a1a2e,#16213e);border:3px solid #ffd700;border-radius:20px;padding:40px 60px;max-width:80%;max-height:80vh;overflow-y:auto;box-shadow:0 0 50px #ffd70080,0 0 100px #ffd7004d,inset 0 0 30px #ffd7001a;animation:winnerPulse 2s ease-in-out infinite}@keyframes winnerPulse{0%,to{transform:scale(1);box-shadow:0 0 50px #ffd70080,0 0 100px #ffd7004d,inset 0 0 30px #ffd7001a}50%{transform:scale(1.02);box-shadow:0 0 70px #ffd700b3,0 0 120px #ffd70066,inset 0 0 40px #ffd70033}}.winner-header{text-align:center;margin-bottom:30px}.winner-title{font-size:48px;margin:0 0 20px;color:gold;text-shadow:0 0 20px rgba(255,215,0,.8),0 0 40px rgba(255,215,0,.5);animation:titleGlow 1.5s ease-in-out infinite alternate}@keyframes titleGlow{0%{text-shadow:0 0 20px rgba(255,215,0,.8),0 0 40px rgba(255,215,0,.5)}to{text-shadow:0 0 30px rgba(255,215,0,1),0 0 60px rgba(255,215,0,.7)}}.winner-name{font-size:36px;font-weight:700;color:#fff;margin-bottom:10px;animation:slideInFromTop .6s ease-out}@keyframes slideInFromTop{0%{opacity:0;transform:translateY(-30px)}to{opacity:1;transform:translateY(0)}}.winner-details{text-align:center;margin-bottom:30px;animation:fadeIn .8s ease-out .3s both}.pot-won{font-size:32px;color:#4ade80;font-weight:700;margin-bottom:10px}.hand-name{font-size:24px;color:#94a3b8;font-style:italic}.showdown-cards{display:flex;flex-direction:column;gap:30px;align-items:center;margin-top:40px;opacity:0;transform:translateY(20px);transition:all .6s ease-out}.showdown-cards.reveal{opacity:1;transform:translateY(0)}.community-cards-section{text-align:center;margin-bottom:20px;animation:fadeIn .6s ease-out both}.section-label{font-size:20px;color:gold;font-weight:700;margin-bottom:15px;text-transform:uppercase;letter-spacing:1px}.community-cards-display{display:flex;gap:10px;justify-content:center;padding:15px;background:#ffffff0d;border-radius:10px;border:1px solid rgba(255,215,0,.3)}.community-cards-display .playing-card{animation:communityCardReveal .4s ease-out both}.community-cards-display .playing-card:nth-child(1){animation-delay:.1s}.community-cards-display .playing-card:nth-child(2){animation-delay:.2s}.community-cards-display .playing-card:nth-child(3){animation-delay:.3s}.community-cards-display .playing-card:nth-child(4){animation-delay:.4s}.community-cards-display .playing-card:nth-child(5){animation-delay:.5s}@keyframes communityCardReveal{0%{opacity:0;transform:scale(.5) translateY(-20px)}to{opacity:1;transform:scale(1) translateY(0)}}.players-section{display:flex;flex-wrap:wrap;gap:30px;justify-content:center}.player-showdown{text-align:center;animation:cardReveal .6s ease-out both}.player-showdown:nth-child(1){animation-delay:.1s}.player-showdown:nth-child(2){animation-delay:.2s}.player-showdown:nth-child(3){animation-delay:.3s}.player-showdown:nth-child(4){animation-delay:.4s}@keyframes cardReveal{0%{opacity:0;transform:scale(.8) rotateY(90deg)}to{opacity:1;transform:scale(1) rotateY(0)}}.player-showdown .player-info{margin-bottom:10px}.player-showdown .player-name{font-size:18px;color:#94a3b8}.player-showdown .player-hand-name{font-size:14px;color:#64748b;font-style:italic;margin-top:4px}.player-showdown .player-kickers{font-size:12px;color:#475569}.player-showdown.winner{background:linear-gradient(145deg,#ffd70026,#ffd7000d);border:2px solid #ffd700;border-radius:12px;padding:15px;box-shadow:0 0 20px #ffd7004d}.player-showdown.winner .player-name{color:gold;font-weight:700}.player-showdown.winner .player-hand-name{color:#fbbf24}.player-showdown.winner .player-kickers{color:#f59e0b}.player-showdown .player-cards{display:flex;gap:10px;justify-content:center}.player-showdown .playing-card{animation:flipIn .6s ease-out both}.player-showdown .playing-card:nth-child(1){animation-delay:.2s}.player-showdown .playing-card:nth-child(2){animation-delay:.4s}@keyframes flipIn{0%{transform:rotateY(-180deg) scale(.5);opacity:0}to{transform:rotateY(0) scale(1);opacity:1}}.no-showdown{text-align:center;margin-top:30px;animation:fadeIn .8s ease-out .5s both}.no-showdown p{font-size:20px;color:#94a3b8;font-style:italic}@media (max-width: 768px){.winner-content{padding:30px 20px;max-width:90%}.winner-title{font-size:36px}.winner-name{font-size:28px}.pot-won{font-size:24px}.hand-name{font-size:18px}.showdown-cards{gap:20px}.player-showdown .playing-card{transform:scale(.9)}}.commentary-section{display:flex;flex-direction:column;gap:12px;margin-top:30px;max-height:200px;overflow-y:auto}.commentary-bubble{background:linear-gradient(145deg,#4a9eff33,#4a9eff1a);border:1px solid rgba(74,158,255,.4);border-radius:12px;padding:12px 16px;animation:commentSlideIn .4s ease-out both;transition:opacity .3s ease-out}@keyframes commentSlideIn{0%{opacity:0;transform:translate(-20px)}to{opacity:1;transform:translate(0)}}.commentary-player{font-weight:700;color:gold;margin-right:8px}.commentary-text{color:#e2e8f0;line-height:1.4}@media (max-width: 768px){.commentary-section{max-height:150px}.commentary-bubble{padding:10px 12px;font-size:14px}}.tournament-outcome-banner{padding:16px 32px;margin:20px 0;border-radius:12px;font-size:24px;font-weight:700;text-align:center;animation:bannerPulse 2s ease-in-out infinite}.tournament-outcome-banner.victory{background:linear-gradient(135deg,#ffd7004d,#ffc10733);border:3px solid #ffd700;color:gold;text-shadow:0 0 20px rgba(255,215,0,.8)}.tournament-outcome-banner.defeat{background:linear-gradient(135deg,#ef444433,#dc262626);border:2px solid #ef4444;color:#f87171}@keyframes bannerPulse{0%,to{transform:scale(1)}50%{transform:scale(1.02)}}.continue-to-results-btn{display:block;margin:30px auto 0;padding:16px 48px;font-size:18px;font-weight:600;color:#fff;background:linear-gradient(135deg,#3b82f6,#2563eb);border:none;border-radius:12px;cursor:pointer;transition:transform .2s,box-shadow .2s}.continue-to-results-btn:hover{transform:translateY(-2px);box-shadow:0 10px 25px #3b82f666}.continue-to-results-btn:active{transform:translateY(0)}@media (max-width: 768px){.tournament-outcome-banner{padding:12px 20px;font-size:18px;margin:15px 0}.continue-to-results-btn{padding:14px 32px;font-size:16px;margin-top:20px}}.tournament-complete{position:fixed;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;z-index:1000;opacity:0;transition:opacity .3s ease-in-out;pointer-events:none}.tournament-complete.show{opacity:1;pointer-events:all}.tournament-overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:#000000d9}.tournament-content{position:relative;background:linear-gradient(135deg,#1a1a2e,#16213e);border-radius:16px;padding:2rem;max-width:500px;width:90%;max-height:90vh;overflow-y:auto;border:2px solid #3d5a80;box-shadow:0 25px 50px -12px #00000080;transform:scale(.9);transition:transform .3s ease-in-out}.tournament-complete.show .tournament-content{transform:scale(1)}.tournament-header{text-align:center;margin-bottom:1.5rem}.tournament-title{font-size:2.5rem;font-weight:700;color:gold;margin:0 0 .5rem;text-shadow:0 0 20px rgba(255,215,0,.5);letter-spacing:.1em}.winner-announcement{font-size:1.25rem;color:#e0e0e0}.winner-announcement.eliminated{color:#9ca3af;font-style:italic}.your-result{text-align:center;padding:1.5rem;margin-bottom:1.5rem;background:#ffffff0d;border-radius:12px;border:1px solid rgba(255,255,255,.1)}.your-result.winner{background:linear-gradient(135deg,#ffd70026,#ffc1071a);border-color:#ffd7004d}.result-label{font-size:.875rem;color:#9ca3af;text-transform:uppercase;letter-spacing:.1em;margin-bottom:.5rem}.result-position{font-size:3rem;font-weight:700;color:#fff}.your-result.winner .result-position{color:gold;text-shadow:0 0 15px rgba(255,215,0,.5)}.eliminated-by{font-size:.875rem;color:#9ca3af;margin-top:.5rem}.standings-section{margin-bottom:1.5rem}.standings-title{font-size:1rem;font-weight:600;color:#9ca3af;margin:0 0 .75rem;text-transform:uppercase;letter-spacing:.05em}.standings-table{display:flex;flex-direction:column;gap:.5rem}.standing-row{display:flex;align-items:center;padding:.75rem 1rem;background:#ffffff08;border-radius:8px;transition:background .2s}.standing-row.human{background:#3b82f626;border:1px solid rgba(59,130,246,.3)}.standing-row.winner{background:#ffd7001a}.standing-row.winner.human{background:linear-gradient(135deg,#ffd70033,#3b82f626);border-color:#ffd7004d}.standing-row .position{font-weight:600;color:#9ca3af;min-width:3rem}.standing-row.winner .position{color:gold}.standing-row .name{flex:1;font-weight:500;color:#fff}.standing-row.human .name{color:#60a5fa}.standing-row .eliminated-info{font-size:.875rem;color:#6b7280}.standing-row.winner .eliminated-info{color:gold;font-weight:500}.tournament-stats{display:flex;justify-content:center;gap:3rem;margin-bottom:1.5rem;padding:1rem;background:#ffffff08;border-radius:8px}.stat{text-align:center}.stat-value{display:block;font-size:1.5rem;font-weight:700;color:#fff}.stat-label{display:block;font-size:.75rem;color:#9ca3af;text-transform:uppercase;letter-spacing:.05em;margin-top:.25rem}.view-final-hand-btn{display:block;width:100%;padding:.875rem;margin-bottom:.75rem;font-size:.9375rem;font-weight:500;color:#e0e0e0;background:#ffffff0d;border:1px solid rgba(255,255,255,.15);border-radius:8px;cursor:pointer;transition:all .2s}.view-final-hand-btn:hover{background:#ffffff1a;border-color:#ffffff40}.view-final-hand-btn:active{transform:scale(.98)}.continue-button{display:block;width:100%;padding:1rem;font-size:1rem;font-weight:600;color:#fff;background:linear-gradient(135deg,#3b82f6,#2563eb);border:none;border-radius:8px;cursor:pointer;transition:transform .2s,box-shadow .2s}.continue-button:hover{transform:translateY(-2px);box-shadow:0 10px 20px #3b82f64d}.continue-button:active{transform:translateY(0)}@media (max-width: 640px){.tournament-content{padding:1.5rem}.tournament-title{font-size:2rem}.result-position{font-size:2.5rem}.tournament-stats{gap:2rem}.stat-value{font-size:1.25rem}}.elasticity-debug-panel{position:fixed;right:0;top:0;width:350px;height:100vh;background:#141414f2;color:#fff;padding:20px;overflow-y:auto;border-left:2px solid #444;z-index:1000;font-size:14px}.elasticity-debug-panel h3{margin:0 0 20px;color:#0f0;text-align:center;border-bottom:1px solid #444;padding-bottom:10px}.edp-anchor-line{position:absolute;top:0;width:2px;height:100%;background:#ff0;box-shadow:0 0 4px #ff0}.pressure-stats-panel{position:fixed;left:0;top:0;width:400px;height:100vh;background:#141414f2;color:#fff;padding:20px;overflow-y:auto;border-right:2px solid #444;z-index:1000;font-size:14px;animation:fadeIn .3s ease-in-out}.pressure-stats-panel h3{margin:0 0 20px;color:#fc0;text-align:center;border-bottom:1px solid #444;padding-bottom:10px;font-size:18px}.session-overview{display:flex;justify-content:space-around;margin-bottom:25px;padding:15px;background:#28282899;border-radius:8px}.stat-item{text-align:center}.stat-label{display:block;font-size:12px;color:#888;margin-bottom:5px}.stat-value{display:block;font-size:18px;font-weight:700;color:#fff;transition:all .3s ease}.stat-value.highlight{color:#0f0;text-shadow:0 0 10px rgba(0,255,0,.5)}.leaderboards{display:grid;grid-template-columns:1fr;gap:15px;margin-bottom:25px}.leaderboard{background:#28282899;border-radius:8px;padding:12px;border:1px solid #333}.leaderboard h4{margin:0 0 10px;color:#8cf;font-size:14px}.leaderboard-entry{display:flex;align-items:center;padding:5px 0;font-size:13px;transition:all .3s ease}.rank{color:#666;margin-right:8px;width:25px}.name{flex:1;color:#fff;font-weight:500}.value{color:#fc0;font-weight:700}.pressure-player-cards{display:grid;grid-template-columns:1fr;gap:15px;margin-bottom:25px}.player-card{background:#1e1e1ecc;border:1px solid #444;border-radius:10px;padding:15px;position:relative;overflow:hidden;transition:all .3s ease}.player-card h5{margin:0 0 5px;color:#fc0;font-size:16px}.signature-move{font-size:12px;color:#8cf;font-style:italic;margin-bottom:10px}.player-stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:15px}.stat{text-align:center;background:#32323280;border-radius:5px;padding:8px 5px}.stat .emoji{display:block;font-size:20px;margin-bottom:2px}.stat .value{display:block;font-size:16px;font-weight:700;color:#fff;margin-bottom:2px}.stat .label{display:block;font-size:10px;color:#888}.meters{display:grid;gap:10px}.meter{display:flex;align-items:center;gap:10px}.meter-label{font-size:12px;color:#888;width:70px}.meter-bar{flex:1;height:12px;background:#333;border-radius:6px;overflow:hidden;position:relative}.meter-fill{height:100%;transition:width .5s ease}.meter-fill.tilt{background:linear-gradient(90deg,#f44,#f88)}.meter-fill.aggression{background:linear-gradient(90deg,#f80,#fc0)}.meter-emoji{font-size:18px;width:25px;text-align:center}.fun-facts{background:#28282899;border-radius:8px;padding:15px;border:1px solid #333}.fun-facts h4{margin:0 0 10px;color:#8cf;font-size:14px}.fun-fact{padding:8px 0;border-bottom:1px solid #333;font-size:13px;line-height:1.4}.fun-fact:last-child{border-bottom:none}.poker-layout{display:grid;grid-template-columns:1fr;grid-template-rows:1fr auto;width:100vw;height:100vh;background:linear-gradient(135deg,#1a1a2e,#16213e);gap:0;position:relative}.poker-layout__main{grid-column:1;grid-row:1;position:relative;width:100%;height:100%;overflow:hidden}.poker-layout__table-container{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;padding:10px}.poker-layout__actions{position:absolute;bottom:20px;left:50%;transform:translate(-50%);z-index:100;display:flex;justify-content:center}.poker-layout__sidebar{position:absolute;right:0;top:0;width:320px;height:100%;background:#000c;border-left:1px solid rgba(255,255,255,.1);display:flex;flex-direction:column;overflow:hidden;z-index:10}.poker-layout__debug{grid-column:1 / -1;grid-row:2;background:#000000e6;border-top:1px solid rgba(255,255,255,.1);max-height:300px;overflow-y:auto;animation:slideUp .3s ease-out}@media (max-width: 1200px){.poker-layout{grid-template-columns:1fr 280px}}@media (max-width: 900px){.poker-layout{grid-template-columns:1fr;grid-template-rows:1fr auto auto}.poker-layout__sidebar{grid-column:1;grid-row:2;max-height:250px;border-left:none;border-top:1px solid rgba(255,255,255,.1)}.poker-layout__debug{grid-row:3}}.player-seat-improved{position:absolute;width:140px;background:#fffffff2;border:2px solid #333;border-radius:12px;padding:12px;box-shadow:0 4px 15px #0006;transition:all .3s ease}.seat-improved-0{bottom:-80px;left:50%;transform:translate(-50%)}.seat-improved-1{bottom:10%;left:-90px;transform:rotate(30deg)}.seat-improved-2{top:10%;left:-90px;transform:rotate(-30deg)}.seat-improved-3{top:-80px;left:50%;transform:translate(-50%)}.seat-improved-4{top:10%;right:-90px;transform:rotate(30deg)}.seat-improved-5{bottom:10%;right:-90px;transform:rotate(-30deg)}.debug-controls{position:fixed;top:10px;left:10px;z-index:100;display:flex;gap:8px}.debug-controls button{padding:6px 12px;background:#000000b3;color:#fff;border:1px solid rgba(255,255,255,.2);border-radius:4px;font-size:12px;cursor:pointer;transition:all .2s ease}.debug-controls button:hover{background:#000000e6;border-color:#fff6}.debug-controls button.active{background:#0f03;border-color:#00ff0080}.poker-layout[data-debug-enabled=false] .debug-controls{display:none}.debug-panel{display:flex;flex-direction:column;height:100%;max-height:300px;background:linear-gradient(180deg,#000000fa,#0a0a14f2);color:#fff;border-top:1px solid rgba(76,175,80,.3)}.debug-panel__header{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;border-bottom:1px solid rgba(255,255,255,.1);background:#ffffff0d;flex-shrink:0}.debug-panel__tabs{display:flex;gap:4px}.debug-tab{padding:6px 16px;background:transparent;color:#fff9;border:1px solid rgba(255,255,255,.2);border-radius:4px;font-size:13px;cursor:pointer;transition:all .2s ease}.debug-tab:hover{background:#ffffff0d;color:#fffc}.debug-tab.active{background:#00ff001a;color:#4caf50;border-color:#4caf50}.debug-panel__content{flex:1;overflow-y:auto;padding:20px;min-height:0;font-size:14px}.edp-player{margin-bottom:30px;padding:15px;background:#28282899;border-radius:8px;border:1px solid #333}.edp-player h4{margin:0 0 10px;color:#fc0;font-size:16px}.edp-mood{margin-bottom:15px;font-size:13px;color:#aaa}.edp-mood-value{color:#ff69b4;font-weight:700;text-transform:capitalize}.edp-trait{margin-bottom:20px}.edp-trait-header{display:flex;justify-content:space-between;margin-bottom:5px}.edp-trait-name{color:#8cf;font-weight:500}.edp-trait-value{font-weight:700;font-family:monospace}.edp-trait-bar-container{position:relative;margin-bottom:5px}.edp-trait-bar-background{position:relative;height:20px;background:#222;border:1px solid #444;border-radius:4px;overflow:hidden}.edp-elasticity-range{position:absolute;top:0;height:100%;background:#6464644d;border-left:1px dashed #666;border-right:1px dashed #666}.edp-anchor-line{position:absolute;top:0;width:2px;height:100%;background:#ff0;box-shadow:0 0 4px #ff0;z-index:10}.edp-trait-bar{position:absolute;top:0;left:0;height:100%;background:linear-gradient(90deg,#08f,#0f8);transition:width .3s ease}.edp-trait-labels{display:flex;justify-content:space-between;font-size:11px;color:#666;margin-top:2px}.edp-trait-details{display:flex;justify-content:space-between;font-size:12px;color:#888;margin-top:5px}.loading{text-align:center;color:#888;padding:20px}.card-demo-content{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:24px}.demo-section{background:#ffffff0d;padding:16px;border-radius:8px}.demo-section h4{margin:0 0 16px;color:#4caf50;font-size:14px;font-weight:600}.size-demo,.state-demo{display:flex;flex-direction:column;gap:12px}.size-group,.state-group{display:flex;align-items:center;gap:12px}.size-group span,.state-group span{min-width:80px;font-size:12px;color:#ffffffb3}.suits-demo,.hand-demo{display:flex;gap:8px;flex-wrap:wrap}.card-demo-content .highlighted{box-shadow:0 0 12px #4caf50cc;transform:translateY(-2px)}.debug-panel__content::-webkit-scrollbar{width:6px}.debug-panel__content::-webkit-scrollbar-track{background:#ffffff0d}.debug-panel__content::-webkit-scrollbar-thumb{background:#fff3;border-radius:3px}.debug-panel__content::-webkit-scrollbar-thumb:hover{background:#ffffff4d}.llm-config-content{padding:8px}.llm-default-config{margin-bottom:24px;padding:16px;background:#ffffff0d;border-radius:8px;border:1px solid rgba(255,255,255,.1)}.llm-default-config h4,.llm-players-grid h4{margin:0 0 12px;color:#4caf50;font-size:14px;font-weight:600}.llm-config-details{display:flex;gap:24px;flex-wrap:wrap}.llm-config-item{display:flex;gap:8px}.llm-config-label{color:#ffffff80;font-size:13px}.llm-config-value{color:#8cf;font-size:13px;font-weight:500}.llm-players-grid{background:#ffffff08;border-radius:8px;padding:16px;border:1px solid rgba(255,255,255,.1)}.llm-grid-header{display:grid;grid-template-columns:2fr 1fr 2fr 1fr;gap:12px;padding:8px 12px;background:#ffffff14;border-radius:4px;margin-bottom:8px;font-size:12px;font-weight:600;color:#ffffffb3;text-transform:uppercase}.llm-grid-row{display:grid;grid-template-columns:2fr 1fr 2fr 1fr;gap:12px;padding:10px 12px;border-bottom:1px solid rgba(255,255,255,.05);font-size:13px;transition:background .2s ease}.llm-grid-row:last-child{border-bottom:none}.llm-grid-row:hover{background:#ffffff08}.llm-grid-row.human{opacity:.5}.llm-grid-row.custom{background:#ff980014}.llm-grid-row.custom:hover{background:#ff98001f}.llm-player-name{color:#fc0;font-weight:500;display:flex;align-items:center;gap:6px}.custom-badge{color:#ff9800;font-size:16px;font-weight:700}.llm-provider{color:#8cf}.llm-model{color:#4ecca3;font-family:monospace;font-size:12px}.llm-reasoning{color:#fff9}.llm-no-data{text-align:center;color:#ffffff80;padding:40px;font-style:italic}.poker-table{width:100%;height:100%;display:flex;justify-content:center;align-items:center;position:relative}.table-felt{width:70%;height:70%;max-width:900px;background:radial-gradient(ellipse at center,#0d5016,#0a4012 70%,#08350f);border:8px solid #8b4513;border-radius:50%;position:relative;box-shadow:0 0 30px #00000080,inset 0 0 30px #ffffff1a}.community-area{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);text-align:center}.community-cards{display:flex;gap:8px;margin-bottom:20px;justify-content:center}.card{width:50px;height:70px;background:#fff;border:2px solid #333;border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:18px;font-weight:700;box-shadow:0 2px 8px #0000004d;transition:transform .3s ease}.card:hover{transform:translateY(-2px)}.card.placeholder{background:#ddd;color:#999;border-style:dashed}.hole-card{font-size:14px}.pot-area{display:flex;justify-content:center}.pot{background:linear-gradient(45deg,#fd4,#fc2);border:3px solid #cc9900;border-radius:50%;width:120px;height:120px;display:flex;flex-direction:column;align-items:center;justify-content:center;box-shadow:0 4px 15px #0006;animation:pulse 2s infinite}.pot-label{font-size:12px;font-weight:700;color:#8b4513;margin-bottom:5px}.pot-amount{font-size:18px;font-weight:700;color:#8b4513}.players-area{position:relative;width:100%;height:100%}.player-seat{position:absolute;width:220px;background:#ffffffe6;border:2px solid #333;border-radius:12px;padding:10px;box-shadow:0 4px 12px #0000004d;transition:all .3s ease;overflow:visible}.player-seat.current-player{border-color:#0f0;box-shadow:0 0 20px #00ff0080;animation:glow 1.5s infinite alternate}@keyframes glow{0%{box-shadow:0 0 20px #00ff0080}to{box-shadow:0 0 30px #0f0c}}.player-seat.folded{opacity:.5;background:#ff00001a}.player-seat.all-in{border-color:#f60;background:#ff66001a}.player-info{display:flex;align-items:center;gap:10px;margin-bottom:8px}.player-avatar{width:50px;height:50px;border-radius:50%;background:linear-gradient(135deg,#667eea,#764ba2);display:flex;align-items:center;justify-content:center;overflow:hidden;flex-shrink:0;position:relative;z-index:1}.player-avatar .avatar-image{width:100%;height:100%;object-fit:cover;border-radius:50%}.player-avatar .avatar-initial{font-weight:700;font-size:20px;color:#fff}.player-details{text-align:left}.player-name{font-weight:700;font-size:14px;color:#333;margin-bottom:4px}.player-stack{font-size:12px;color:#666;margin-bottom:2px}.position-indicators{position:absolute;top:-15px;right:-10px;display:flex;gap:5px;z-index:100}.position-chip{width:30px;height:30px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:700;box-shadow:0 2px 4px #0000004d;animation:chipFloat 3s ease-in-out infinite}@keyframes chipFloat{0%,to{transform:translateY(0)}50%{transform:translateY(-3px)}}.dealer-button{background:#fff;color:#000;border:2px solid #ffd700}.small-blind{background:#3b82f6;color:#fff;border:2px solid #1e40af}.big-blind{background:#ef4444;color:#fff;border:2px solid #991b1b}.betting-area{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none}.bet-chips{display:flex;flex-direction:column;align-items:center;pointer-events:auto}.player-bet-area{display:flex;flex-direction:column;align-items:center;margin:4px 0}.chip-stack{position:relative;width:20px;height:20px;margin-bottom:4px}.poker-chip{width:20px;height:20px;border-radius:50%;position:absolute;border:1px solid;display:flex;align-items:center;justify-content:center;font-size:6px;font-weight:700;box-shadow:0 1px 3px #0000004d,inset 0 1px 1px #ffffff4d;animation:chipPop .3s ease-out}@keyframes chipPop{0%{transform:scale(0) translateY(-10px)}50%{transform:scale(1.1) translateY(-5px)}to{transform:scale(1) translateY(0)}}.poker-chip.red{background:radial-gradient(circle at 30% 30%,#ff6b6b,#c00);border-color:#a00;color:#fff;text-shadow:1px 1px 1px rgba(0,0,0,.5)}.poker-chip.blue{background:radial-gradient(circle at 30% 30%,#4dabf7,#1971c2);border-color:#155a99;color:#fff;text-shadow:1px 1px 1px rgba(0,0,0,.5)}.poker-chip.green{background:radial-gradient(circle at 30% 30%,#51cf66,#2b8a3e);border-color:#1e6330;color:#fff;text-shadow:1px 1px 1px rgba(0,0,0,.5)}.poker-chip.black{background:radial-gradient(circle at 30% 30%,#495057,#212529);border-color:#000;color:#ffd43b;text-shadow:1px 1px 1px rgba(0,0,0,.8)}.poker-chip:before{content:"";position:absolute;width:3px;height:3px;background:#fffc;border-radius:50%;top:2px;left:50%;transform:translate(-50%);box-shadow:0 12px #fffc,-5px 6px #fffc,5px 6px #fffc}.bet-amount{font-size:10px;color:#fff;background:#000000b3;padding:2px 6px;border-radius:4px;font-weight:700}.status{font-size:10px;font-weight:700;padding:2px 6px;border-radius:4px;margin-top:4px}.folded .status{background:#f44;color:#fff}.all-in .status{background:#f60;color:#fff}.player-cards{display:flex;gap:3px;justify-content:center}.game-info{position:absolute;top:10px;right:15px;background:#000000b3;color:#fff;padding:8px 12px;border-radius:6px;font-size:12px}.phase{font-weight:700}.loading,.error{display:flex;justify-content:center;align-items:center;min-height:100vh;font-size:24px;font-weight:700}.loading{color:#0f0;animation:pulse 1s infinite}.error{color:#f44}.initial-loading{text-align:center;color:#fff}.loading-card-fan{display:flex;justify-content:center;gap:15px;margin-bottom:40px;height:120px;position:relative}.loading-card{width:70px;height:100px;background:#fff;border:2px solid #333;border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:32px;box-shadow:0 4px 15px #0000004d;position:relative;animation:cardFloat 2s ease-in-out infinite}.loading-card.card-0{transform:rotate(-15deg);animation-delay:0s}.loading-card.card-1{transform:rotate(-5deg);animation-delay:.1s}.loading-card.card-2{transform:rotate(5deg);animation-delay:.2s}.loading-card.card-3{transform:rotate(15deg);animation-delay:.3s}.loading-card .suit{color:#333}.loading-card.card-1 .suit,.loading-card.card-2 .suit{color:#c00}@keyframes cardFloat{0%,to{transform:translateY(0) rotate(var(--rotation))}50%{transform:translateY(-10px) rotate(var(--rotation))}}.loading-card.card-0{--rotation: -15deg}.loading-card.card-1{--rotation: -5deg}.loading-card.card-2{--rotation: 5deg}.loading-card.card-3{--rotation: 15deg}.initial-loading h2{font-size:28px;margin-bottom:10px;color:#fff}.initial-loading p{font-size:16px;color:#a0a0a0;animation:fadeInOut 2s ease-in-out infinite}@keyframes fadeInOut{0%,to{opacity:.5}50%{opacity:1}}@media (max-width: 900px){.table-felt{width:90vw;height:60vh}.player-seat{width:120px;padding:8px}.card{width:40px;height:56px;font-size:14px}}.mobile-action-buttons{display:flex;gap:2dvw;padding:1dvh 1.5dvw;padding-bottom:max(1dvh,env(safe-area-inset-bottom));background:#000000e6;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);width:100%;height:100%;box-sizing:border-box}.action-btn{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.25dvh;padding:.75dvh 1dvw;border:none;border-radius:1.5dvw;font-family:inherit;cursor:pointer;transition:transform .1s,box-shadow .2s;min-height:4dvh}.action-btn:active{transform:scale(.95)}.action-btn .btn-icon{font-size:28px;line-height:1;background:transparent;border:none;padding:0}.btn-label{font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.fold-btn{background:linear-gradient(135deg,#f44336,#c62828);color:#fff;box-shadow:0 4px 12px #f4433666}.check-btn{background:linear-gradient(135deg,#4caf50,#2e7d32);color:#fff;box-shadow:0 4px 12px #4caf5066}.call-btn{background:linear-gradient(135deg,#2196f3,#1565c0);color:#fff;box-shadow:0 4px 12px #2196f366}.raise-btn{background:linear-gradient(135deg,#ff9800,#ef6c00);color:#fff;box-shadow:0 4px 12px #ff980066}.allin-btn{background:linear-gradient(135deg,#9c27b0,#6a1b9a);color:#fff;box-shadow:0 4px 12px #9c27b066;animation:allInPulse 2s ease-in-out infinite}.chat-btn{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;box-shadow:0 4px 12px #667eea66;flex:0 0 auto;width:60px}.mobile-raise-sheet{position:fixed;bottom:0;left:0;right:0;background:#1a1a1a;border-radius:20px 20px 0 0;padding:16px;padding-bottom:max(16px,env(safe-area-inset-bottom));z-index:100;animation:slideUp .3s ease-out}.raise-sheet-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.cancel-btn{padding:8px 16px;background:transparent;border:1px solid rgba(255,255,255,.2);border-radius:8px;color:#fff;font-size:14px;cursor:pointer}.raise-title{font-size:16px;font-weight:600;color:#fff}.confirm-btn{padding:8px 16px;background:#4caf50;border:none;border-radius:8px;color:#fff;font-size:14px;font-weight:600;cursor:pointer}.confirm-btn:disabled{opacity:.5;cursor:not-allowed}.raise-amount-display{text-align:center;margin-bottom:20px}.amount-label{display:block;font-size:12px;color:#fff9;margin-bottom:4px;text-transform:uppercase;letter-spacing:1px}.amount-value{font-size:36px;font-weight:700;color:#4caf50}.amount-with-2x{display:flex;align-items:center;justify-content:center;position:relative}.amount-with-2x .double-btn{position:absolute;right:0}.double-btn{padding:8px 16px;background:#ffffff1a;border:1px solid rgba(255,255,255,.3);border-radius:8px;color:#fff;font-size:16px;font-weight:600;cursor:pointer;transition:all .2s}.double-btn:active{transform:scale(.95);background:#fff3}.double-btn:disabled{opacity:.4;cursor:not-allowed}.quick-bet-buttons{display:flex;gap:8px;margin-bottom:20px;flex-wrap:wrap;justify-content:center}.quick-bet-btn{flex:1 1 auto;min-width:60px;display:flex;flex-direction:column;align-items:center;gap:2px;padding:10px 12px;background:#ffffff1a;border:2px solid transparent;border-radius:10px;color:#fff;cursor:pointer;transition:all .2s}.quick-bet-btn.selected{border-color:#4caf50;background:#4caf5033}.quick-bet-btn:active{transform:scale(.95)}.quick-bet-btn span:first-child{font-size:12px;font-weight:600}.quick-bet-amount{font-size:11px;opacity:.7}.raise-slider-container{margin-bottom:16px}.raise-slider{width:100%;height:40px;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent}.raise-slider::-webkit-slider-runnable-track{height:8px;background:#fff3;border-radius:4px}.raise-slider::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:28px;height:28px;background:#4caf50;border-radius:50%;margin-top:-10px;cursor:pointer;box-shadow:0 2px 8px #0000004d}.raise-slider::-moz-range-track{height:8px;background:#fff3;border-radius:4px}.raise-slider::-moz-range-thumb{width:28px;height:28px;background:#4caf50;border-radius:50%;border:none;cursor:pointer}.slider-labels{display:flex;justify-content:space-between;font-size:12px;color:#ffffff80;margin-top:4px}.stack-preview{text-align:center;font-size:14px;color:#fff9}.floating-chat-stack{position:fixed;top:41dvh;left:16px;right:16px;max-width:360px;margin:0 auto;display:flex;flex-direction:column;gap:8px;z-index:var(--z-dropdown)}.floating-chat{position:relative;display:flex;align-items:flex-start;gap:12px;padding:12px 16px;background:#14141e8c;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);border-radius:16px;border:1px solid rgba(255,255,255,.1);box-shadow:0 8px 32px #0006;overflow:hidden}.floating-chat-avatar{width:44px;height:44px;border-radius:50%;background:linear-gradient(135deg,#667eea,#764ba2);display:flex;align-items:center;justify-content:center;font-weight:700;font-size:18px;color:#fff;flex-shrink:0;position:relative;overflow:hidden}.floating-chat-avatar.has-image{background:none}.floating-avatar-img{width:100%;height:100%;object-fit:cover;border-radius:50%}.ai-badge{position:absolute;bottom:-2px;right:-2px;font-size:8px;background:#4caf50;color:#fff;padding:2px 4px;border-radius:4px;font-weight:600}.floating-chat-content{flex:1;min-width:0}.floating-chat-sender{font-size:clamp(14px,2.5dvh,18px);font-weight:600;color:#667eea;margin-bottom:4px}.floating-chat-message{font-size:14px;color:#fff;line-height:1.4;word-wrap:break-word;max-height:16dvh;overflow-y:auto}.floating-chat-dismiss{width:24px;height:24px;padding:4px;display:flex;align-items:center;justify-content:center;flex-shrink:0;background:none;border:none;cursor:pointer;-webkit-tap-highlight-color:transparent;opacity:.5}.floating-chat-dismiss svg{width:16px;height:16px}.mobile-winner-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000d9;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;align-items:flex-start;justify-content:center;z-index:1000;animation:fadeIn .3s ease-out;padding:40px 20px 20px;overflow-y:auto}.mobile-winner-content{text-align:center;color:#fff;width:100%;max-width:400px;display:flex;flex-direction:column;align-items:center}.winner-trophy{font-size:64px;margin-bottom:12px;animation:trophyBounce 1s ease-out}@keyframes trophyBounce{0%{transform:scale(0)}50%{transform:scale(1.2)}to{transform:scale(1)}}.winner-name{font-size:24px;font-weight:700;margin-bottom:6px;background:linear-gradient(135deg,gold,#ff8c00);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.winner-amount{font-size:18px;font-weight:600;color:#4caf50;margin-bottom:12px}.winner-hand-name{font-size:14px;color:#ffffffe6;margin-bottom:16px;padding:6px 14px;background:#ffffff1a;border-radius:16px;display:inline-block}.side-pots-summary{display:flex;flex-direction:column;gap:4px;margin:8px 0 12px;padding:8px 12px;background:#0000004d;border-radius:8px;width:100%}.side-pot-line{display:flex;align-items:center;gap:8px;font-size:12px}.side-pot-name{color:#94a3b8;min-width:70px}.side-pot-winners{flex:1;color:#fff;font-weight:500}.side-pot-amount{font-weight:600}.side-pot-line.pot-rank-0 .side-pot-name,.side-pot-line.pot-rank-0 .side-pot-amount{color:gold}.side-pot-line.pot-rank-1 .side-pot-name,.side-pot-line.pot-rank-1 .side-pot-amount{color:silver}.side-pot-line.pot-rank-2 .side-pot-name,.side-pot-line.pot-rank-2 .side-pot-amount{color:#cd7f32}.showdown-player-header{display:flex;align-items:center;gap:8px}.showdown-player-winnings{color:#4ade80;font-weight:600;font-size:13px}.no-showdown-winner{text-align:center;margin:12px 0}.no-showdown-name{font-size:20px;font-weight:700;color:gold;margin-bottom:4px}.no-showdown-amount{font-size:18px;font-weight:600;color:#4ade80;margin-bottom:8px}.no-showdown-text{font-size:14px;color:#fff9;margin-bottom:20px;font-style:italic}.showdown-section{display:flex;flex-direction:column;gap:16px;margin-bottom:20px;animation:cardsReveal .5s ease-out}@keyframes cardsReveal{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.community-section{background:#ffffff14;padding:8px 4px;border-radius:12px;border:1px solid rgba(255,255,255,.1)}.section-label{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:1px;color:#ffffff80;margin-bottom:8px}.community-cards-row{display:flex;gap:4px;justify-content:center;flex-wrap:wrap}.players-hands-section{display:flex;flex-direction:column;gap:10px}.player-showdown{background:#ffffff0d;padding:10px;border-radius:10px;display:flex;align-items:center;justify-content:space-between;gap:12px;border:2px solid transparent}.player-showdown.winner{background:linear-gradient(145deg,#ffd70026,#ffd7000d);border:2px solid #ffd700;box-shadow:0 0 12px #ffd7004d}.showdown-player-info{display:flex;flex-direction:column;align-items:flex-start;min-width:80px}.showdown-player-name{font-size:13px;font-weight:600;color:#ffffffe6;text-align:left}.player-showdown.winner .showdown-player-name{color:gold;font-weight:700}.showdown-hand-name{font-size:11px;color:#fff9;font-style:italic;margin-top:2px}.showdown-kickers{font-size:10px;color:#ffffff80}.player-showdown.winner .showdown-hand-name{color:#fbbf24}.player-showdown.winner .showdown-kickers{color:#f59e0b}.showdown-cards-row{display:flex;gap:4px;justify-content:center}.dismiss-btn{padding:14px 32px;background:linear-gradient(135deg,#4caf50,#2e7d32);border:none;border-radius:12px;color:#fff;font-size:16px;font-weight:600;cursor:pointer;box-shadow:0 4px 12px #4caf5066;transition:transform .1s;margin-top:8px}.dismiss-btn:active{transform:scale(.95)}.mobile-commentary-section{display:flex;flex-direction:column;gap:8px;margin:16px 0;max-height:150px;overflow-y:auto}.mobile-commentary-bubble{background:#4a9eff26;border:1px solid rgba(74,158,255,.3);border-radius:10px;padding:10px 12px;text-align:left;animation:commentSlideIn .4s ease-out both}@keyframes commentSlideIn{0%{opacity:0;transform:translate(-15px)}to{opacity:1;transform:translate(0)}}.mobile-commentary-bubble .commentary-player{font-weight:600;color:gold;margin-right:6px;font-size:13px}.mobile-commentary-bubble .commentary-text{color:#ffffffe6;font-size:13px;line-height:1.4}.post-round-chat{margin:16px 0;min-height:80px;width:100%;animation:fadeIn .3s ease-out}.post-round-tones{display:flex;gap:12px;justify-content:center}.post-round-tone{display:flex;flex-direction:column;align-items:center;gap:4px;padding:12px 20px;border:2px solid transparent;border-radius:12px;background:#ffffff1a;color:#fff;cursor:pointer;transition:all .2s ease;min-width:80px}.post-round-tone:hover,.post-round-tone:active{transform:translateY(-2px)}.post-round-tone.tone-gloat{border-color:#ffc10766}.post-round-tone.tone-gloat:hover,.post-round-tone.tone-gloat:active{background:#ffc10733;border-color:#ffc107}.post-round-tone.tone-humble{border-color:#4caf5066}.post-round-tone.tone-humble:hover,.post-round-tone.tone-humble:active{background:#4caf5033;border-color:#4caf50}.post-round-tone.tone-salty{border-color:#f4433666}.post-round-tone.tone-salty:hover,.post-round-tone.tone-salty:active{background:#f4433633;border-color:#f44336}.post-round-tone.tone-gracious{border-color:#2196f366}.post-round-tone.tone-gracious:hover,.post-round-tone.tone-gracious:active{background:#2196f333;border-color:#2196f3}.post-round-tone .tone-emoji{font-size:24px}.post-round-tone .tone-label{font-size:12px;font-weight:600}.post-round-suggestions{display:flex;flex-direction:column;gap:8px;align-items:center}.post-round-suggestion{width:100%;max-width:280px;padding:12px 16px;border:1px solid rgba(255,255,255,.2);border-radius:10px;background:#ffffff14;color:#fff;font-size:14px;text-align:center;cursor:pointer;transition:all .2s ease;animation:suggestionFadeIn .3s ease-out}.post-round-suggestion:hover,.post-round-suggestion:active{background:#ffffff26;border-color:#fff6;transform:scale(1.02)}.post-round-suggestion.tone-gloat{border-left:3px solid #ffc107}.post-round-suggestion.tone-humble{border-left:3px solid #4caf50}.post-round-suggestion.tone-salty{border-left:3px solid #f44336}.post-round-suggestion.tone-gracious{border-left:3px solid #2196f3}@keyframes suggestionFadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.post-round-back{padding:8px 16px;border:none;border-radius:8px;background:#ffffff0d;color:#fff9;font-size:12px;cursor:pointer;transition:all .2s ease;margin-top:4px}.post-round-back:hover,.post-round-back:active{background:#ffffff1a;color:#fff}.post-round-loading{padding:12px 20px;color:#ffffffb3;font-size:14px}.post-round-loading .loading-dots:after{content:"";animation:loadingDots 1.5s infinite}@keyframes loadingDots{0%{content:""}25%{content:"."}50%{content:".."}75%{content:"..."}to{content:""}}.post-round-sent{padding:12px 20px;color:#4caf50;font-size:14px;font-weight:600;animation:fadeIn .3s ease-out}.mobile-tournament-outcome-banner{padding:12px 24px;margin:16px 0;border-radius:10px;font-size:18px;font-weight:700;text-align:center;animation:mobileBannerSlide .5s ease-out}.mobile-tournament-outcome-banner.victory{background:linear-gradient(135deg,#ffd70040,#ffc10726);border:2px solid #ffd700;color:gold;text-shadow:0 0 10px rgba(255,215,0,.5)}.mobile-tournament-outcome-banner.defeat{background:linear-gradient(135deg,#ef444426,#dc26261a);border:2px solid #ef4444;color:#f87171}@keyframes mobileBannerSlide{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.heads-up-opponent-panel{flex:1;display:flex;flex-direction:column;gap:8px;padding:10px;background:#0009;border-radius:12px;height:calc(33dvh - 24px);min-width:0;overflow-y:auto;animation:fadeSlideIn .4s ease-out .2s forwards;opacity:0}@keyframes fadeSlideIn{0%{opacity:0;transform:translate(20px)}to{opacity:1;transform:translate(0)}}.panel-header{font-size:11px;text-transform:uppercase;letter-spacing:1.5px;color:#ffffff80;padding-bottom:4px;border-bottom:1px solid rgba(255,255,255,.1)}.psychology-section{background:#ffffff0d;border-radius:8px;padding:10px}.section-label{font-size:9px;text-transform:uppercase;letter-spacing:1px;color:#ffffff80;margin-bottom:6px}.playstyle-section{border-left:3px solid #ffd700}.playstyle-main{display:flex;align-items:center;gap:8px}.playstyle-emoji{font-size:20px}.playstyle-label{font-size:14px;font-weight:600;color:#fff}.playstyle-details{display:flex;align-items:center;gap:6px;margin-top:6px;font-size:11px;color:#ffffffb3}.detail-separator{color:#ffffff4d}.hands-observed{font-size:10px;color:#fff6;margin-top:4px}.emotional-section{border-left:3px solid #9c27b0}.emotional-narrative{font-size:13px;line-height:1.4;color:#e0e0e0}.inner-voice{font-size:12px;font-style:italic;color:#aaa;margin-top:6px}.stats-section{border-left:3px solid #2196f3}.session-record{font-size:20px;font-weight:700;letter-spacing:1px}.session-record .wins{color:#4caf50}.session-record .separator{color:#fff6}.session-record .losses{color:#f44336}.biggest-pot{font-size:11px;color:#fff9;margin-top:4px}.signature-move{font-size:11px;color:gold;margin-top:4px;font-weight:500}.tilt-section{border-left:3px solid #ffc107}.tilt-section.moderate{border-left-color:#ff9800}.tilt-section.severe{border-left-color:#f44336}.tilt-header{display:flex;align-items:center;gap:8px}.tilt-emoji{font-size:18px}.tilt-label{font-size:12px;color:#e0e0e0}.tilt-meter{height:4px;background:#ffffff1a;border-radius:2px;margin-top:8px;overflow:hidden}.tilt-meter-fill{height:100%;background:linear-gradient(90deg,#ffc107,#ff9800,#f44336);border-radius:2px;transition:width .3s ease-out}.calm-section{display:flex;align-items:center;gap:8px;border-left:3px solid #4caf50}.calm-emoji{font-size:18px}.calm-text{font-size:12px;color:#a5d6a7}.llm-debug-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000bf;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:2000;display:flex;align-items:flex-end;justify-content:center;animation:overlay-fade-in .2s ease-out}@keyframes overlay-fade-in{0%{opacity:0}to{opacity:1}}.llm-debug-modal{--phosphor-green: #39ff14;--phosphor-dim: #1a8f0a;--phosphor-glow: rgba(57, 255, 20, .6);--crt-black: #0a0a0a;--scanline: rgba(0, 0, 0, .12);--cyan-accent: #00ffff;--amber-accent: #ffb000;width:100%;max-width:400px;max-height:70vh;background:var(--crt-black);border-radius:16px 16px 0 0;overflow:hidden;animation:modal-slide-up .3s cubic-bezier(.4,0,.2,1)}@keyframes modal-slide-up{0%{transform:translateY(100%);opacity:0}to{transform:translateY(0);opacity:1}}.llm-debug-crt{position:relative;padding:16px 20px 20px;font-family:IBM Plex Mono,JetBrains Mono,Fira Code,monospace;box-shadow:inset 0 0 40px #39ff1414}.llm-debug-scanlines{position:absolute;top:0;right:0;bottom:0;left:0;background:repeating-linear-gradient(0deg,var(--scanline) 0px,var(--scanline) 1px,transparent 1px,transparent 3px);pointer-events:none;z-index:10;opacity:.6}.llm-debug-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px;padding-bottom:12px;border-bottom:1px solid var(--phosphor-dim)}.llm-debug-title-row{display:flex;align-items:center;gap:8px}.llm-debug-title{color:var(--phosphor-green);font-size:14px;font-weight:600;letter-spacing:1px;margin:0;text-shadow:0 0 4px var(--phosphor-glow),0 0 8px var(--phosphor-glow),0 0 12px rgba(57,255,20,.3)}.block-char{color:var(--phosphor-green);font-size:12px;text-shadow:0 0 4px var(--phosphor-glow),0 0 8px var(--phosphor-glow)}.block-char:before{content:"▓▓"}.llm-debug-close{background:transparent;border:1px solid var(--phosphor-dim);border-radius:4px;padding:4px;color:var(--phosphor-dim);cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center}.llm-debug-close:hover,.llm-debug-close:active{color:var(--phosphor-green);border-color:var(--phosphor-green);box-shadow:0 0 8px var(--phosphor-glow)}.llm-debug-player{display:flex;align-items:center;gap:12px;margin-bottom:16px;padding:8px 12px;background:#39ff140d;border-radius:4px;border-left:2px solid var(--phosphor-green)}.player-label{color:var(--phosphor-dim);font-size:11px;font-weight:500;letter-spacing:.5px}.player-value{color:var(--phosphor-green);font-size:14px;font-weight:500;text-shadow:0 0 4px var(--phosphor-glow)}.llm-debug-stats{animation:stats-fade-in .4s ease-out .1s both}@keyframes stats-fade-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.stat-group{margin-bottom:4px}.stat-row{display:flex;justify-content:space-between;align-items:center;padding:8px 0}.stat-label{color:var(--phosphor-dim);font-size:11px;font-weight:500;letter-spacing:.5px;flex-shrink:0}.stat-value{color:var(--phosphor-green);font-size:13px;font-weight:400;text-shadow:0 0 2px var(--phosphor-glow),0 0 4px var(--phosphor-glow);text-align:right;flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.latency-value{color:var(--cyan-accent);text-shadow:0 0 2px rgba(0,255,255,.6),0 0 4px rgba(0,255,255,.4)}.cost-value.high-cost{color:var(--amber-accent);text-shadow:0 0 2px rgba(255,176,0,.6),0 0 4px rgba(255,176,0,.4)}.stat-divider{height:1px;background:linear-gradient(90deg,transparent 0%,var(--phosphor-dim) 15%,var(--phosphor-dim) 85%,transparent 100%);margin:12px 0}.stat-footer{display:flex;flex-direction:column;align-items:center;gap:8px;padding-top:8px}.progress-visualization{display:flex;gap:3px;flex-wrap:wrap;justify-content:center;max-width:100%}.progress-block{width:12px;height:8px;background:var(--phosphor-green);opacity:.7;box-shadow:0 0 4px var(--phosphor-glow);border-radius:1px}.progress-block:nth-child(odd){opacity:.9}.call-count{color:var(--phosphor-dim);font-size:11px;letter-spacing:.3px}.llm-debug-no-data{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:32px 16px;gap:8px}.no-data-text{color:var(--phosphor-dim);font-size:14px;font-weight:500;animation:blink 1.5s infinite}.no-data-hint{color:var(--phosphor-dim);font-size:11px;opacity:.6}@keyframes blink{0%,to{opacity:.8}50%{opacity:.4}}.llm-debug-footer{margin-top:16px;padding-top:12px;border-top:1px solid rgba(57,255,20,.1);text-align:center}.footer-text{color:var(--phosphor-dim);font-size:10px;letter-spacing:1px;opacity:.5}.llm-debug-crt{animation:boot-flicker .5s ease-out}@keyframes boot-flicker{0%,8%{opacity:0}12%,18%{opacity:1}22%{opacity:.4}28%,to{opacity:1}}.back-button{display:inline-flex;align-items:center;gap:var(--space-2);background:transparent;border:none;color:var(--color-text-primary);padding:var(--space-2);cursor:pointer;font-size:var(--font-size-base);font-family:inherit;transition:opacity .2s ease;z-index:var(--z-nav)}.back-button:hover{opacity:.7}.back-button:active{opacity:.5}.back-button--absolute{position:absolute;left:0;top:0}.back-button--relative{position:relative}.back-button__icon{font-size:var(--font-size-md);line-height:1}.back-button__label{font-weight:var(--font-weight-medium)}.back-button--mobile{width:44px;height:44px;padding:0;justify-content:center}.back-button--mobile .back-button__icon{width:24px;height:24px}@media (max-width: 640px){.back-button{padding:var(--space-2)}}.page-header{position:relative;text-align:center;margin-bottom:var(--space-10);color:var(--color-text-primary);padding-top:var(--space-2);animation:headerFadeIn .5s var(--ease-out-expo)}@keyframes headerFadeIn{0%{opacity:0;transform:translateY(-16px)}to{opacity:1;transform:translateY(0)}}.page-header__content{display:flex;flex-direction:column;align-items:center;gap:var(--space-3)}.page-header__title{font-family:var(--font-display);font-size:var(--font-size-5xl);margin:0;font-weight:var(--font-weight-bold);line-height:var(--line-height-tight);letter-spacing:var(--letter-spacing-tight)}.page-header__title--gradient-primary{background:var(--gradient-text-primary);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;text-shadow:0 0 60px rgba(212,165,116,.3)}.page-header__title--gradient-themed{background:var(--gradient-text-themed);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;text-shadow:0 0 60px rgba(245,158,11,.3)}.page-header__subtitle{font-family:var(--font-body);font-size:var(--font-size-lg);color:var(--color-text-tertiary);margin:0;max-width:440px;line-height:var(--line-height-relaxed);letter-spacing:var(--letter-spacing-wide)}.page-header__right{position:absolute;right:0;top:0}@media (max-width: 640px){.page-header{margin-bottom:var(--space-8);padding-top:var(--space-10)}.page-header__title{font-size:var(--font-size-3xl)}.page-header__subtitle{font-size:var(--font-size-base);padding:0 var(--space-4)}}.mobile-header{display:flex;align-items:center;justify-content:space-between;padding:0 var(--space-4);padding-top:max(0px,var(--safe-area-top));background:linear-gradient(180deg,rgba(0,0,0,.8) 0%,transparent 100%);position:relative;z-index:var(--z-nav);height:8dvh;min-height:8dvh;max-height:8dvh;box-sizing:border-box}.mobile-header__left,.mobile-header__right{flex:0 0 auto;min-width:44px;display:flex;align-items:center}.mobile-header__left{justify-content:flex-start}.mobile-header__right{justify-content:flex-end}.mobile-header__center{flex:1;display:flex;align-items:center;justify-content:center}.mobile-pot{display:flex;flex-direction:column;align-items:center;background:#0009;padding:var(--space-2) var(--space-4);border-radius:var(--radius-2xl);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.mobile-pot__label{font-size:var(--font-size-xs);color:var(--color-text-muted);text-transform:uppercase;letter-spacing:1px;font-weight:var(--font-weight-semibold)}.mobile-pot__amount{font-size:var(--font-size-xl);font-weight:var(--font-weight-bold);color:gold}.mobile-chat-toggle{position:relative;width:44px;height:44px;display:flex;align-items:center;justify-content:center;padding:0;background:transparent;border:none;cursor:pointer;transition:opacity .2s ease}.mobile-chat-toggle:hover{opacity:.7}.mobile-chat-toggle:active{opacity:.5}.mobile-chat-toggle__icon{width:28px;height:28px;color:var(--color-text-primary)}.mobile-chat-toggle__badge{position:absolute;top:-2px;right:-2px;min-width:18px;height:18px;display:flex;align-items:center;justify-content:center;background:var(--color-red);color:var(--color-text-primary);font-size:var(--font-size-xs);font-weight:var(--font-weight-bold);border-radius:var(--radius-full);padding:0 var(--space-1)}.mobile-header-btn{width:44px;height:44px;display:flex;align-items:center;justify-content:center;background:#00000080;border:none;border-radius:var(--radius-full);color:var(--color-text-primary);font-size:var(--font-size-xl);cursor:pointer;transition:var(--transition-all-base)}.mobile-header-btn:hover{background:#000000b3}.mobile-header-btn:active{transform:scale(.95)}.user-badge{display:inline-flex;align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-3);background:var(--color-bg-surface);border-radius:var(--radius-lg);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.user-badge__name{font-size:var(--font-size-base);color:var(--color-text-primary);font-weight:var(--font-weight-medium)}.user-badge__guest-tag{margin-left:var(--space-1);color:var(--color-text-muted);font-weight:var(--font-weight-normal)}.user-badge__logout{background:transparent;border:1px solid var(--color-red);color:var(--color-red);padding:var(--space-1) var(--space-2);border-radius:var(--radius-sm);font-size:var(--font-size-sm);font-family:inherit;cursor:pointer;transition:var(--transition-all-base)}.user-badge__logout:hover{background:var(--color-red);color:var(--color-text-primary)}.user-badge__logout:active{transform:scale(.95)}.user-badge--fixed{position:fixed;top:var(--space-3);right:var(--space-3);z-index:var(--z-nav)}@media (max-width: 640px){.user-badge{padding:var(--space-1) var(--space-2);gap:var(--space-2)}.user-badge__name{font-size:var(--font-size-sm)}.user-badge__logout{font-size:var(--font-size-xs);padding:var(--space-1)}}.page-layout{height:100vh;height:100dvh;width:100vw;background:var(--gradient-bg-main);display:flex;justify-content:center;padding:var(--space-6);padding-top:max(var(--space-6),env(safe-area-inset-top));padding-bottom:max(var(--space-6),env(safe-area-inset-bottom));padding-left:max(var(--space-6),env(safe-area-inset-left));padding-right:max(var(--space-6),env(safe-area-inset-right));position:fixed;top:0;right:0;bottom:0;left:0;overflow-x:hidden;overflow-y:auto;box-sizing:border-box}.page-layout--centered{align-items:center}.page-layout--top{align-items:flex-start}.page-layout__content{width:100%;position:relative;z-index:1;animation:pageContentFadeIn .6s var(--ease-out-expo)}@keyframes pageContentFadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.page-layout__content--sm{max-width:var(--container-sm)}.page-layout__content--md{max-width:var(--container-md)}.page-layout__content--lg{max-width:var(--container-lg)}.page-layout__content--xl{max-width:var(--container-xl)}.page-layout--top .page-layout__content{margin-top:var(--space-4);margin-bottom:var(--space-6)}.page-layout:before{content:"";position:fixed;top:-30%;left:50%;transform:translate(-50%);width:150%;height:80%;pointer-events:none;z-index:0;transition:background .5s ease}.page-layout:after{content:"";position:fixed;bottom:-25%;left:50%;transform:translate(-50%);width:130%;height:60%;background:radial-gradient(ellipse 60% 50% at 50% 100%,rgba(52,211,153,.03) 0%,transparent 50%);pointer-events:none;z-index:0}.page-layout--glow-gold:before{background:radial-gradient(ellipse 50% 40% at 50% 0%,rgba(212,165,116,.06) 0%,transparent 60%)}.page-layout--glow-emerald:before{background:radial-gradient(ellipse 50% 40% at 50% 0%,rgba(52,211,153,.05) 0%,transparent 60%)}.page-layout--glow-sapphire:before{background:radial-gradient(ellipse 50% 40% at 50% 0%,rgba(59,130,246,.05) 0%,transparent 60%)}.page-layout--glow-amethyst:before{background:radial-gradient(ellipse 50% 40% at 50% 0%,rgba(168,85,247,.05) 0%,transparent 60%)}.page-layout--glow-amber:before{background:radial-gradient(ellipse 50% 40% at 50% 0%,rgba(245,158,11,.05) 0%,transparent 60%)}.page-layout--glow-none:before,.page-layout--glow-none:after{display:none}@media (max-width: 640px){.page-layout{padding:var(--space-4);padding-top:max(var(--space-4),env(safe-area-inset-top));padding-bottom:max(var(--space-4),env(safe-area-inset-bottom));padding-left:max(var(--space-4),env(safe-area-inset-left));padding-right:max(var(--space-4),env(safe-area-inset-right))}.page-layout--top .page-layout__content{margin-top:var(--space-2);margin-bottom:var(--space-4)}}.mobile-poker-table{display:flex;flex-direction:column;width:100vw;height:100vh;height:100dvh;background:linear-gradient(135deg,#1a472a,#0d2818);color:var(--color-text-primary);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;position:fixed;top:0;right:0;bottom:0;left:0;overflow:hidden}.mobile-loading{justify-content:center;align-items:center}.mobile-reconnecting-overlay{position:fixed;top:0;left:0;right:0;z-index:999;display:flex;justify-content:center;padding-top:max(12px,env(safe-area-inset-top));pointer-events:none}.mobile-reconnecting-indicator{display:flex;align-items:center;gap:8px;padding:8px 16px;background:#000000d9;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-radius:20px;border:1px solid rgba(255,255,255,.1);color:#ffffffe6;font-size:13px;font-weight:500;animation:fadeIn .3s ease-out}.reconnecting-spinner{width:14px;height:14px;border:2px solid rgba(255,255,255,.2);border-top-color:#ffffffe6;border-radius:50%;animation:spin .8s linear infinite}@keyframes fadeIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.mobile-loading-content{text-align:center}.loading-cards{display:flex;justify-content:center;gap:8px;margin-bottom:20px}.loading-card{width:40px;height:56px;background:#fff;border-radius:6px;display:flex;align-items:center;justify-content:center;font-size:24px;animation:cardFloat 1.5s ease-in-out infinite}.loading-card.suit-0{color:#000;animation-delay:0s}.loading-card.suit-1{color:#e53935;animation-delay:.15s}.loading-card.suit-2{color:#e53935;animation-delay:.3s}.loading-card.suit-3{color:#000;animation-delay:.45s}@keyframes cardFloat{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.mobile-error{display:flex;justify-content:center;align-items:center;color:#ff6b6b}.mobile-opponents{display:flex;gap:8px;padding:12px 16px;padding-bottom:3dvh;overflow-x:auto;overflow-y:hidden;scrollbar-width:none;-ms-overflow-style:none;height:33dvh;min-height:33dvh;max-height:33dvh;align-items:center;box-sizing:border-box}.mobile-opponents::-webkit-scrollbar{display:none}.mobile-opponent{flex-shrink:0;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;padding:0;background:#0006;border-radius:16px;width:28vw;min-width:28vw;height:calc(33dvh - 24px);position:relative;border:2px solid transparent;transition:all .3s;box-sizing:border-box;overflow:visible}.mobile-opponent.thinking{border-color:#4caf5066;background:#00000080;width:50vw;min-width:50vw}.mobile-opponent.thinking .opponent-avatar{box-shadow:0 0 0 3px #4caf50e6,0 0 24px #4caf5080}.mobile-opponent.thinking .opponent-avatar:before{content:"";position:absolute;top:-6px;right:-6px;bottom:-6px;left:-6px;border-radius:50%;border:2px solid transparent;border-top-color:#69f0aee6;border-right-color:#69f0ae80;animation:avatarRingSpin 1.2s linear infinite}.mobile-opponent.thinking .opponent-avatar:after{content:"";position:absolute;top:-10px;right:-10px;bottom:-10px;left:-10px;border-radius:50%;background:radial-gradient(circle,rgba(76,175,80,.15) 0%,transparent 70%);animation:avatarGlowPulse 2s ease-in-out infinite}@keyframes avatarRingSpin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes avatarGlowPulse{0%,to{opacity:.6;transform:scale(1)}50%{opacity:1;transform:scale(1.1)}}.mobile-opponent.folded{opacity:.5}.mobile-opponent.all-in{border-color:#ff9800}.opponent-avatar{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;border-radius:14px;background:linear-gradient(135deg,#667eea,#764ba2);display:flex;align-items:center;justify-content:center;font-weight:700;font-size:clamp(24px,5dvh,40px);transition:transform .3s ease;overflow:visible}.opponent-avatar .avatar-image{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;object-position:center 20%;border-radius:14px;transition:object-position .4s ease}.opponent-avatar .avatar-image--thinking{object-position:center 30%}.opponent-avatar .avatar-image--showdown{object-position:center 40%}.dealer-badge{position:absolute;bottom:-4px;right:-4px;z-index:3;width:27px;height:27px;background:#fff;color:#1a1a1a;border-radius:50%;font-size:13px;font-weight:700;display:flex;align-items:center;justify-content:center;border:2px solid #ffd700}.opponent-avatar.debug-enabled{cursor:pointer}.opponent-avatar.debug-enabled:active{transform:scale(.95)}.debug-badge{position:absolute;top:-2px;left:-2px;z-index:4;width:12px;height:12px;background:#39ff14;border-radius:50%;border:2px solid #0a0a0a;box-shadow:0 0 4px #39ff14cc,0 0 8px #39ff1466;animation:debug-pulse 2s ease-in-out infinite}@keyframes debug-pulse{0%,to{box-shadow:0 0 4px #39ff14cc,0 0 8px #39ff1466}50%{box-shadow:0 0 6px #39ff14,0 0 12px #39ff1499}}.opponent-info{display:flex;flex-direction:column;align-items:center;gap:2px;position:relative;z-index:2;background:linear-gradient(transparent,#000c);padding:20px 12px 8px;width:100%;box-sizing:border-box;border-radius:0 0 14px 14px}.opponent-name{font-size:clamp(14px,2.5dvh,20px);font-weight:600;max-width:112px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-shadow:0 1px 3px rgba(0,0,0,.8)}.opponent-stack{font-size:clamp(11px,1.8dvh,16px);text-shadow:0 1px 3px rgba(0,0,0,.8)}.opponent-bet{position:absolute;bottom:-2.25dvh;z-index:10;background:#4caf50;color:#fff;font-size:clamp(11px,1.8dvh,15px);font-weight:600;padding:clamp(2px,.5dvh,4px) clamp(8px,1.2dvh,12px);border-radius:clamp(10px,1.5dvh,14px)}.status-badge{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:clamp(10px,1.8dvh,14px);font-weight:700;padding:clamp(5px,.8dvh,8px) clamp(10px,1.5dvh,14px);border-radius:clamp(4px,.7dvh,7px);text-transform:uppercase;white-space:nowrap}.status-badge.folded{background:#000000b3;color:#999}.status-badge.all-in{background:#ff9800;color:#fff}.mobile-community{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:8px 16px;height:30dvh;min-height:30dvh;max-height:30dvh;box-sizing:border-box}.community-cards-row{display:grid;grid-template-columns:repeat(5,1fr);gap:6px;width:100%;padding:0 8px;box-sizing:border-box}.community-cards-row .playing-card.image-card,.community-cards-row .playing-card.card-back{width:100%!important;height:auto!important;max-height:calc(25dvh - 50px);aspect-ratio:500 / 726}.community-cards-row .playing-card .card-image{width:100%!important;height:100%!important;object-fit:contain}.community-card-placeholder{width:100%;max-height:calc(25dvh - 50px);aspect-ratio:500 / 726;background:#ffffff0d;border:2px dashed rgba(255,255,255,.2);border-radius:6px}.phase-indicator{margin-top:12px;font-size:12px;text-transform:uppercase;letter-spacing:2px;opacity:.6;font-weight:600}.mobile-hero{padding:12px 16px 0;background:#0000004d;border-radius:20px 20px 0 0;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:8px;border:2px solid transparent;transition:all .3s ease;height:29dvh;min-height:29dvh;max-height:29dvh;box-sizing:border-box}.mobile-hero.active-turn{border-color:#4caf50;box-shadow:inset 0 0 20px #4caf504d;animation:currentPlayerPulse 2s ease-in-out infinite}.mobile-hero.folded{opacity:.5;filter:grayscale(.3)}.mobile-hero.folded .hero-cards{opacity:.4}.hero-info{display:flex;align-items:center;justify-content:center;gap:16px;height:5.75dvh;min-height:5.75dvh;flex-shrink:0}.hero-name{font-size:clamp(14px,2dvh,18px);font-weight:600;display:flex;align-items:center;gap:8px}.dealer-chip{width:22px;height:22px;background:#fff;color:#1a1a1a;border-radius:50%;font-size:11px;font-weight:700;display:flex;align-items:center;justify-content:center;border:2px solid #ffd700}.hero-stack{font-size:clamp(16px,2.5dvh,22px);font-weight:700;color:gold}.hero-bet{font-size:clamp(11px,1.8dvh,15px);font-weight:600;color:#fff;background:#4caf50;padding:clamp(2px,.5dvh,4px) clamp(8px,1.2dvh,12px);border-radius:clamp(10px,1.5dvh,14px)}.hero-cards{display:flex;gap:12px;justify-content:center;align-items:flex-end;flex:1;overflow:visible}.hero-cards .playing-card.image-card,.hero-cards .playing-card.card-back{height:28dvh!important;width:auto!important;aspect-ratio:500 / 726;box-shadow:0 8px 24px #0006}.hero-cards .playing-card .card-image{width:100%!important;height:100%!important;object-fit:cover;object-position:top}.card-placeholder{height:35dvh;aspect-ratio:500 / 726;background:linear-gradient(135deg,#1e3a5f,#0a1929);border-radius:4px;border:2px dashed rgba(255,255,255,.2)}.mobile-action-area{position:fixed;bottom:0;left:0;right:0;width:100%;z-index:var(--z-sticky);height:12dvh;min-height:12dvh;margin:0;padding:0;box-sizing:border-box}.mobile-action-buttons .waiting-text{flex:6;font-size:16px;color:#ffffffb3;text-align:center;display:flex;align-items:center;justify-content:center;animation:pulse 2s ease-in-out infinite}@keyframes pulse{0%,to{opacity:.7}50%{opacity:1}}.preemptive-btn{background:linear-gradient(135deg,#26a69a,#00897b);color:#fff;box-shadow:0 4px 12px #26a69a66;flex:2}.mobile-action-buttons:has(.waiting-text) .chat-btn{flex:2;width:auto}.preemptive-btn.queued{background:linear-gradient(135deg,#4caf50,#2e7d32);box-shadow:0 4px 12px #4caf5066}.chat-sheet-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;z-index:1000;display:flex;align-items:flex-end}.chat-sheet{width:100%;max-height:70vh;background:#1a1a1a;border-radius:20px 20px 0 0;display:flex;flex-direction:column;animation:slideUp .3s ease-out}.chat-sheet-header{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;border-bottom:1px solid rgba(255,255,255,.1)}.chat-sheet-header h3{margin:0;font-size:16px}.chat-sheet-header button{padding:8px;background:transparent;border:none;color:#fff;cursor:pointer}.chat-sheet-messages{flex:1;overflow-y:auto;padding:16px;display:flex;flex-direction:column;gap:8px}.chat-msg{padding:8px 12px;background:#ffffff0d;border-radius:12px;font-size:14px}.chat-msg.ai{background:#677eea33;border-left:3px solid #667eea}.chat-msg.table{background:#ffc1071a;font-style:italic;opacity:.8}.chat-sender{font-weight:600;margin-right:8px}.chat-sheet-input{display:flex;gap:8px;padding:16px;border-top:1px solid rgba(255,255,255,.1)}.chat-sheet-input input{flex:1;padding:12px 16px;border-radius:24px;border:none;background:#ffffff1a;color:#fff;font-size:14px}.chat-sheet-input input::placeholder{color:#ffffff80}.chat-sheet-input button{padding:12px 20px;border-radius:24px;border:none;background:#4caf50;color:#fff;font-weight:600;cursor:pointer}.quick-chat-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:var(--z-modal);display:flex;align-items:flex-end;justify-content:center}.quick-chat-modal{width:100%;background:#1a1a1a;border-radius:20px 20px 0 0;overflow:hidden;animation:slideUp .3s ease-out}.quick-chat-modal-header{display:flex;justify-content:space-between;align-items:center;padding:16px;color:#fff;font-weight:600;font-size:16px}.quick-chat-modal-header button{padding:8px 16px;background:transparent;border:1px solid rgba(255,255,255,.2);border-radius:8px;color:#fff;font-size:14px;cursor:pointer}@keyframes dealCardIn{0%{opacity:0;transform:translateY(-30px) rotate(0) scale(.8)}60%{opacity:1;transform:translateY(5px) rotate(calc(var(--deal-rotation) * .5)) scale(1.02)}to{opacity:1;transform:rotate(var(--deal-rotation)) translateY(var(--deal-offset)) scale(1)}}.mobile-opponents.heads-up-mode{justify-content:flex-start;gap:12px;padding:12px;overflow-x:hidden}.mobile-opponent.heads-up-avatar{width:55vw;min-width:55vw;transition:width .4s ease-out,min-width .4s ease-out}.mobile-opponents.heads-up-mode .mobile-opponent.heads-up-avatar.thinking{width:55vw;min-width:55vw}.game-selector__loading{font-family:var(--font-display);color:var(--color-text-tertiary);animation:loadingPulse 1.5s ease-in-out infinite}@keyframes loadingPulse{0%,to{opacity:.5}50%{opacity:1}}.game-selector__content{position:relative;max-width:var(--container-lg);width:100%;display:flex;flex-direction:column;gap:var(--space-5);z-index:1}.new-game-button{width:100%;padding:var(--space-6) var(--space-8);margin-bottom:var(--space-6);background:var(--gradient-card);border:1px solid var(--color-border-default);border-radius:var(--radius-2xl);cursor:pointer;transition:var(--transition-all-slow);display:flex;align-items:center;gap:var(--space-5);box-shadow:var(--shadow-card);position:relative;overflow:hidden}.new-game-button:before{content:"";position:absolute;top:0;left:var(--space-6);right:var(--space-6);height:1px;background:linear-gradient(90deg,transparent 0%,rgba(255,255,255,.06) 50%,transparent 100%)}.new-game-button:after{content:"";position:absolute;top:0;left:-100%;width:50%;height:100%;background:linear-gradient(90deg,transparent 0%,rgba(212,165,116,.06) 50%,transparent 100%);transform:skew(-20deg);transition:left .6s var(--ease-out-expo)}.new-game-button:hover:after{left:150%}.new-game-button:hover{background:var(--gradient-card-hover);border-color:var(--color-border-gold);box-shadow:var(--shadow-card-hover);transform:translateY(-4px)}.button-icon{font-size:var(--font-size-5xl);flex-shrink:0;filter:drop-shadow(0 4px 8px rgba(0,0,0,.3));transition:var(--transition-transform)}.new-game-button:hover .button-icon{transform:scale(1.1)}.button-text{text-align:left}.button-text h3{margin:0 0 var(--space-1) 0;font-family:var(--font-display);font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold);color:var(--color-text-primary);letter-spacing:var(--letter-spacing-tight)}.button-text p{margin:0;font-family:var(--font-body);font-size:var(--font-size-sm);color:var(--color-text-muted)}.saved-games{position:relative;width:100%;margin-top:var(--space-6)}.saved-games h2{font-family:var(--font-display);font-size:var(--font-size-2xl);font-weight:var(--font-weight-semibold);margin:0 0 var(--space-5) 0;color:var(--color-text-primary);letter-spacing:var(--letter-spacing-tight)}.games-list{display:grid;gap:var(--space-3)}.saved-game-card{position:relative;display:block;background:var(--gradient-card);border:1px solid var(--color-border-default);border-radius:var(--radius-xl);padding:var(--space-5);cursor:pointer;transition:var(--transition-all-slow);width:100%;text-align:left;color:var(--color-text-primary);margin:0;box-shadow:var(--shadow-sm)}button.saved-game-card{font-family:inherit;font-size:inherit;line-height:inherit}.saved-game-card:hover{background:var(--gradient-card-hover);border-color:var(--color-border-gold);box-shadow:var(--shadow-card-hover);transform:translate(8px)}.game-info{display:flex;flex-direction:column;gap:var(--space-2);width:100%}.game-main{display:flex;justify-content:space-between;align-items:center}.game-phase{font-family:var(--font-display);font-size:var(--font-size-md);font-weight:var(--font-weight-bold);color:var(--color-sapphire);letter-spacing:var(--letter-spacing-tight)}.game-pot{font-family:var(--font-mono);font-size:var(--font-size-lg);font-weight:var(--font-weight-bold);color:var(--color-emerald)}.game-meta{display:flex;justify-content:space-between;font-family:var(--font-body);font-size:var(--font-size-sm);color:var(--color-text-muted)}.game-players{display:flex;align-items:center;gap:var(--space-1)}.no-saved-games{text-align:center;padding:var(--space-12);color:var(--color-text-muted)}.no-saved-games p{font-family:var(--font-body);font-style:italic;margin:0}.delete-button{position:absolute;bottom:var(--space-3);right:var(--space-3);background:var(--gradient-ruby);color:var(--color-text-primary);border:none;border-radius:var(--radius-md);padding:var(--space-1) var(--space-3);cursor:pointer;font-family:var(--font-display);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);letter-spacing:var(--letter-spacing-wide);text-transform:uppercase;opacity:0;transition:var(--transition-all-base);box-shadow:var(--shadow-sm)}.delete-button:hover{box-shadow:var(--glow-ruby);transform:scale(1.05)}.saved-game-card:hover .delete-button{opacity:1}@media (max-width: 640px){.new-game-button{padding:var(--space-5);flex-direction:column;text-align:center;gap:var(--space-3)}.button-text{text-align:center}.button-icon{font-size:var(--font-size-4xl)}.button-text h3{font-size:var(--font-size-lg)}.saved-games h2{font-size:var(--font-size-xl)}}.name-entry-card{background:var(--gradient-card);border-radius:var(--radius-3xl);padding:var(--space-10);width:100%;box-shadow:var(--shadow-card);border:1px solid var(--color-border-default);position:relative;overflow:hidden}.name-entry-card:before{content:"";position:absolute;top:0;left:var(--space-8);right:var(--space-8);height:1px;background:linear-gradient(90deg,transparent 0%,rgba(255,255,255,.06) 50%,transparent 100%)}.name-entry-form{margin-top:var(--space-8)}.name-entry-form__group{margin-bottom:var(--space-6)}.name-entry-form__label{display:block;color:var(--color-gold);margin-bottom:var(--space-3);font-family:var(--font-body);font-size:var(--font-size-md);font-weight:var(--font-weight-medium);letter-spacing:var(--letter-spacing-wide)}.name-entry-form__input{width:100%;padding:var(--space-4) var(--space-5);font-family:var(--font-body);font-size:var(--font-size-lg);background:var(--color-bg-surface);border:1px solid var(--color-border-default);border-radius:var(--radius-xl);color:var(--color-text-primary);transition:var(--transition-all-slow);box-sizing:border-box}.name-entry-form__input:hover{border-color:var(--color-border-hover)}.name-entry-form__input:focus{outline:none;background:var(--color-bg-surface-hover);border-color:var(--color-border-focus);box-shadow:0 0 0 3px var(--color-gold-muted)}.name-entry-form__input::placeholder{color:var(--color-text-disabled)}.name-entry-form__error{color:var(--color-ruby);margin-top:var(--space-3);font-family:var(--font-body);font-size:var(--font-size-sm);display:flex;align-items:center;gap:var(--space-2)}.name-entry-form__error:before{content:"!";display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;background:var(--color-ruby-muted);border:1px solid rgba(244,63,94,.3);border-radius:var(--radius-full);font-size:var(--font-size-xs);font-weight:var(--font-weight-bold)}.name-entry-form__submit{width:100%;padding:var(--space-4) var(--space-8);font-family:var(--font-display);font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);background:var(--gradient-gold);color:var(--color-bg-void);border:none;border-radius:var(--radius-xl);cursor:pointer;transition:var(--transition-all-slow);text-transform:uppercase;letter-spacing:var(--letter-spacing-wider);box-shadow:var(--glow-gold),var(--shadow-md);position:relative;overflow:hidden}.name-entry-form__submit:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.25),transparent);transition:left .5s ease}.name-entry-form__submit:hover:before{left:100%}.name-entry-form__submit:hover{transform:translateY(-3px);box-shadow:var(--glow-gold-strong),var(--shadow-lg)}.name-entry-form__submit:active{transform:translateY(0) scale(.98)}.name-entry-preview{margin-top:var(--space-10);padding-top:var(--space-8);border-top:1px solid var(--color-border-default);text-align:center}.name-entry-preview__label{color:var(--color-text-muted);margin-bottom:var(--space-5);font-family:var(--font-body);font-size:var(--font-size-md)}.name-entry-preview__items{display:flex;justify-content:center;flex-wrap:wrap;gap:var(--space-3)}.name-entry-preview__item{background:var(--color-gold-muted);padding:var(--space-2) var(--space-4);border-radius:var(--radius-full);color:var(--color-gold-light);font-family:var(--font-body);font-size:var(--font-size-sm);border:1px solid var(--color-border-gold);transition:var(--transition-all-base)}.name-entry-preview__item:hover{background:#d4a57433;transform:scale(1.05)}@media (max-width: 600px){.name-entry-card{padding:var(--space-8) var(--space-5)}.name-entry-preview__items{flex-direction:column;align-items:center}.name-entry-preview__item{width:100%;max-width:250px;text-align:center}}.pm-alert{position:fixed;top:var(--space-4);left:var(--space-4);right:var(--space-4);display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-radius:var(--radius-xl);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);z-index:var(--z-toast);animation:alertSlideIn .4s var(--ease-out-expo);max-width:500px;margin:0 auto}@keyframes alertSlideIn{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.pm-alert--success{background:#22c55e26;border:1px solid rgba(34,197,94,.3);color:var(--color-emerald)}.pm-alert--error{background:#ef444426;border:1px solid rgba(239,68,68,.3);color:#ef4444}.pm-alert--info{background:#d4a57426;border:1px solid rgba(212,165,116,.3);color:var(--color-gold-light)}.pm-alert__icon{font-size:var(--font-size-lg);flex-shrink:0}.pm-alert__message{flex:1;font-size:var(--font-size-sm);font-weight:var(--font-weight-medium)}.pm-alert__close{padding:var(--space-1);background:transparent;border:none;color:inherit;opacity:.6;cursor:pointer;font-size:var(--font-size-lg);line-height:1}.pm-alert__close:hover{opacity:1}.pm-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-4);padding:var(--space-16);color:var(--color-text-muted)}.pm-loading__spinner{width:40px;height:40px;border:3px solid var(--color-border-default);border-top-color:var(--color-gold);border-radius:50%;animation:spin .8s linear infinite}.pm-container{position:relative;min-height:calc(100dvh - 180px);padding-bottom:100px}.pm-selector-trigger{width:100%;display:flex;align-items:center;gap:var(--space-3);padding:var(--space-4);background:var(--gradient-card);border:1px solid var(--color-border-default);border-radius:var(--radius-xl);cursor:pointer;transition:var(--transition-all-base);margin-bottom:var(--space-4)}.pm-selector-trigger:hover{border-color:var(--color-border-hover);background:var(--gradient-card-hover)}.pm-selector-trigger:active{transform:scale(.99)}.pm-selector-trigger__avatar{width:44px;height:44px;display:flex;align-items:center;justify-content:center;background:var(--gradient-gold);color:var(--color-bg-void);font-family:var(--font-display);font-size:var(--font-size-lg);font-weight:var(--font-weight-bold);border-radius:var(--radius-lg);box-shadow:var(--glow-gold)}.pm-selector-trigger__icon{width:44px;height:44px;display:flex;align-items:center;justify-content:center;background:var(--color-bg-surface);border:1px dashed var(--color-border-default);border-radius:var(--radius-lg);color:var(--color-text-muted)}.pm-selector-trigger__name{flex:1;font-family:var(--font-display);font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--color-text-primary);text-align:left}.pm-selector-trigger__placeholder{flex:1;font-size:var(--font-size-base);color:var(--color-text-muted);text-align:left}.pm-selector-trigger__change{font-size:var(--font-size-xs);color:var(--color-gold);text-transform:uppercase;letter-spacing:var(--letter-spacing-wider)}.pm-selector-trigger__chevron{color:var(--color-text-muted);transition:transform .2s}.pm-sheet-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000b3;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);opacity:0;visibility:hidden;transition:opacity .3s,visibility .3s;z-index:var(--z-modal)}.pm-sheet-backdrop--visible{opacity:1;visibility:visible}.pm-sheet{position:fixed;left:0;right:0;bottom:0;max-height:80dvh;background:var(--color-bg-secondary);border-radius:var(--radius-3xl) var(--radius-3xl) 0 0;transform:translateY(100%);transition:transform .4s var(--ease-out-expo);z-index:calc(var(--z-modal) + 1);display:flex;flex-direction:column;box-shadow:0 -10px 40px #00000080}.pm-sheet--open{transform:translateY(0)}.pm-sheet__handle{padding:var(--space-3) 0;display:flex;justify-content:center;cursor:pointer}.pm-sheet__handle-bar{width:40px;height:4px;background:var(--color-text-disabled);border-radius:var(--radius-full)}.pm-sheet__header{display:flex;justify-content:space-between;align-items:center;padding:0 var(--space-5) var(--space-3)}.pm-sheet__title{font-family:var(--font-display);font-size:var(--font-size-xl);font-weight:var(--font-weight-bold);color:var(--color-text-primary);margin:0}.pm-sheet__count{font-size:var(--font-size-sm);color:var(--color-text-muted)}.pm-sheet__search{position:relative;padding:0 var(--space-5) var(--space-4)}.pm-sheet__search-icon{position:absolute;left:calc(var(--space-5) + var(--space-3));top:50%;transform:translateY(-50%);color:var(--color-text-muted);pointer-events:none}.pm-sheet__search-input{width:100%;padding:var(--space-3) var(--space-4) var(--space-3) var(--space-10);background:var(--color-bg-surface);border:1px solid var(--color-border-default);border-radius:var(--radius-lg);color:var(--color-text-primary);font-size:var(--font-size-base);transition:var(--transition-all-base)}.pm-sheet__search-input:focus{outline:none;border-color:var(--color-border-focus);background:var(--color-bg-surface-hover)}.pm-sheet__search-input::placeholder{color:var(--color-text-disabled)}.pm-sheet__list{flex:1;overflow-y:auto;padding:0 var(--space-4);-webkit-overflow-scrolling:touch}.pm-sheet__item{width:100%;display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);background:transparent;border:1px solid transparent;border-radius:var(--radius-lg);cursor:pointer;transition:var(--transition-all-base);margin-bottom:var(--space-1);animation:sheetItemIn .3s var(--ease-out-expo) both}@keyframes sheetItemIn{0%{opacity:0;transform:translate(-10px)}to{opacity:1;transform:translate(0)}}.pm-sheet__item:hover{background:var(--color-bg-surface)}.pm-sheet__item--active{background:var(--color-gold-muted);border-color:var(--color-gold)}.pm-sheet__item-avatar{width:36px;height:36px;display:flex;align-items:center;justify-content:center;background:var(--gradient-card);border:1px solid var(--color-border-default);border-radius:var(--radius-md);color:var(--color-text-secondary);font-family:var(--font-display);font-weight:var(--font-weight-semibold)}.pm-sheet__item--active .pm-sheet__item-avatar{background:var(--gradient-gold);color:var(--color-bg-void);border-color:var(--color-gold)}.pm-sheet__item-name{flex:1;text-align:left;font-size:var(--font-size-base);color:var(--color-text-primary)}.pm-sheet__item-check{color:var(--color-gold)}.pm-sheet__empty{padding:var(--space-8);text-align:center;color:var(--color-text-muted)}.pm-sheet__create{display:flex;align-items:center;justify-content:center;gap:var(--space-2);margin:var(--space-4);padding:var(--space-4);background:var(--gradient-gold);border:none;border-radius:var(--radius-xl);color:var(--color-bg-void);font-family:var(--font-display);font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);cursor:pointer;transition:var(--transition-all-slow);box-shadow:var(--glow-gold)}.pm-sheet__create:hover{transform:translateY(-2px);box-shadow:var(--glow-gold-strong)}.pm-editor{position:relative}.pm-sections{display:flex;flex-direction:column;gap:var(--space-3)}.pm-section{background:var(--gradient-card);border:1px solid var(--color-border-default);border-radius:var(--radius-xl);overflow:hidden;transition:var(--transition-all-base)}.pm-section:hover{border-color:var(--color-border-hover)}.pm-section--open{border-color:var(--color-border-gold)}.pm-section__header{width:100%;display:flex;align-items:center;gap:var(--space-3);padding:var(--space-4);background:transparent;border:none;cursor:pointer;transition:var(--transition-all-base)}.pm-section__header:hover{background:var(--color-bg-surface)}.pm-section__icon{font-size:var(--font-size-lg)}.pm-section__title{flex:1;text-align:left;font-family:var(--font-display);font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);color:var(--color-text-primary)}.pm-section__badge{padding:var(--space-1) var(--space-2);background:var(--color-gold-muted);color:var(--color-gold);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);border-radius:var(--radius-full)}.pm-section__chevron{color:var(--color-text-muted);transition:transform .3s var(--ease-out-expo)}.pm-section--open .pm-section__chevron{transform:rotate(180deg)}.pm-section__content{overflow:hidden;transition:height .3s var(--ease-out-expo)}.pm-section__inner{padding:0 var(--space-4) var(--space-4)}.pm-field{margin-bottom:var(--space-4)}.pm-field__label{display:block;margin-bottom:var(--space-2);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-gold);letter-spacing:var(--letter-spacing-wide)}.pm-field__input{width:100%;padding:var(--space-3) var(--space-4);background:var(--color-bg-surface);border:1px solid var(--color-border-default);border-radius:var(--radius-lg);color:var(--color-text-primary);font-size:var(--font-size-base);transition:var(--transition-all-base)}.pm-field__input:focus{outline:none;border-color:var(--color-border-focus);background:var(--color-bg-surface-hover);box-shadow:0 0 0 3px var(--color-gold-muted)}.pm-field__input::placeholder{color:var(--color-text-disabled)}.pm-field-row{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-3)}.pm-help-text{margin:calc(-1 * var(--space-2)) 0 var(--space-4);font-size:var(--font-size-xs);color:var(--color-text-muted)}.pm-trait{padding:var(--space-4);background:var(--color-bg-surface);border:1px solid var(--color-border-default);border-radius:var(--radius-lg);margin-bottom:var(--space-3)}.pm-trait__header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-3)}.pm-trait__label{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-gold)}.pm-trait__elasticity-badge{font-size:var(--font-size-xs);color:var(--color-text-muted);background:var(--color-bg-tertiary);padding:var(--space-1) var(--space-2);border-radius:var(--radius-full)}.pm-trait__slider-wrap{position:relative;display:flex;align-items:center;gap:var(--space-3)}.pm-trait__range-indicator{position:absolute;top:50%;transform:translateY(-50%);height:12px;background:#d4a57426;border:1px solid rgba(212,165,116,.25);border-radius:var(--radius-full);pointer-events:none;z-index:0}.pm-trait__slider{flex:1;height:6px;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:var(--color-bg-void);border-radius:var(--radius-full);cursor:pointer;position:relative;z-index:1}.pm-trait__slider::-webkit-slider-thumb{-webkit-appearance:none;width:20px;height:20px;background:var(--gradient-gold);border-radius:50%;cursor:pointer;box-shadow:var(--glow-gold);transition:transform .15s}.pm-trait__slider::-webkit-slider-thumb:hover{transform:scale(1.15)}.pm-trait__slider::-moz-range-thumb{width:20px;height:20px;background:var(--gradient-gold);border-radius:50%;border:none;cursor:pointer;box-shadow:var(--glow-gold)}.pm-trait__value{min-width:50px;text-align:right;font-family:var(--font-mono);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-gold)}.pm-trait__elasticity-row{display:flex;align-items:center;gap:var(--space-3);margin-top:var(--space-3);padding-top:var(--space-3);border-top:1px solid var(--color-border-default)}.pm-trait__elasticity-label{font-size:var(--font-size-xs);color:var(--color-text-muted);min-width:60px}.pm-trait__elasticity-slider{flex:1;height:4px;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:var(--color-bg-void);border-radius:var(--radius-full);cursor:pointer}.pm-trait__elasticity-slider::-webkit-slider-thumb{-webkit-appearance:none;width:14px;height:14px;background:var(--color-text-muted);border-radius:50%;cursor:pointer;transition:background .15s}.pm-trait__elasticity-slider::-webkit-slider-thumb:hover{background:var(--color-gold)}.pm-trait__elasticity-value{min-width:40px;text-align:right;font-family:var(--font-mono);font-size:var(--font-size-xs);color:var(--color-text-muted)}.pm-array{margin-bottom:var(--space-4)}.pm-array__label{display:block;margin-bottom:var(--space-2);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-gold)}.pm-array__items{display:flex;flex-direction:column;gap:var(--space-2)}.pm-array__item{display:flex;gap:var(--space-2);animation:itemFadeIn .2s var(--ease-out-expo)}@keyframes itemFadeIn{0%{opacity:0;transform:translateY(-4px)}}.pm-array__input{flex:1;padding:var(--space-3) var(--space-4);background:var(--color-bg-surface);border:1px solid var(--color-border-default);border-radius:var(--radius-lg);color:var(--color-text-primary);font-size:var(--font-size-sm);transition:var(--transition-all-base)}.pm-array__input:focus{outline:none;border-color:var(--color-border-focus)}.pm-array__remove{padding:var(--space-3);background:#ef444426;border:1px solid rgba(239,68,68,.2);border-radius:var(--radius-lg);color:#ef4444;cursor:pointer;transition:var(--transition-all-base)}.pm-array__remove:hover{background:#ef444440}.pm-array__add{display:flex;align-items:center;justify-content:center;gap:var(--space-2);margin-top:var(--space-2);padding:var(--space-2) var(--space-4);background:#34d3991a;border:1px dashed rgba(52,211,153,.3);border-radius:var(--radius-lg);color:var(--color-emerald);font-size:var(--font-size-sm);cursor:pointer;transition:var(--transition-all-base)}.pm-array__add:hover{background:#34d39933;border-style:solid}.pm-avatar__loading{display:flex;flex-direction:column;align-items:center;gap:var(--space-3);padding:var(--space-8);color:var(--color-text-muted)}.pm-avatar__spinner{width:28px;height:28px;border:2px solid var(--color-border-default);border-top-color:var(--color-gold);border-radius:50%;animation:spin .8s linear infinite}.pm-avatar__spinner--small{width:16px;height:16px}.pm-avatar__description{margin-bottom:var(--space-4)}.pm-avatar__desc-label{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:var(--space-2);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-gold)}.pm-avatar__desc-hint{font-size:var(--font-size-xs);color:var(--color-text-muted);font-weight:var(--font-weight-normal)}.pm-avatar__desc-input{width:100%;padding:var(--space-3);background:var(--color-bg-surface);border:1px solid var(--color-border-default);border-radius:var(--radius-lg);color:var(--color-text-primary);font-size:var(--font-size-sm);font-family:var(--font-body);resize:vertical;min-height:80px;transition:var(--transition-all-base)}.pm-avatar__desc-input:focus{outline:none;border-color:var(--color-border-focus)}.pm-avatar__desc-save{margin-top:var(--space-2);padding:var(--space-2) var(--space-4);background:var(--color-bg-surface);border:1px solid var(--color-border-default);border-radius:var(--radius-lg);color:var(--color-text-secondary);font-size:var(--font-size-sm);cursor:pointer;transition:var(--transition-all-base)}.pm-avatar__desc-save:hover{background:var(--color-bg-surface-hover);border-color:var(--color-border-hover)}.pm-avatar__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-3);margin-bottom:var(--space-4)}.pm-avatar__card{background:var(--color-bg-surface);border:1px solid var(--color-border-default);border-radius:var(--radius-lg);overflow:hidden;transition:var(--transition-all-base)}.pm-avatar__card:hover{border-color:var(--color-border-hover)}.pm-avatar__image-wrap{position:relative;aspect-ratio:1;background:var(--color-bg-tertiary)}.pm-avatar__image{width:100%;height:100%;object-fit:cover}.pm-avatar__placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;color:var(--color-text-disabled);font-size:var(--font-size-2xl)}.pm-avatar__regenerating{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;background:#0009}.pm-avatar__card-footer{display:flex;justify-content:space-between;align-items:center;padding:var(--space-2)}.pm-avatar__emotion{font-size:var(--font-size-xs);color:var(--color-text-secondary);text-transform:capitalize}.pm-avatar__refresh{padding:var(--space-1);background:transparent;border:none;color:var(--color-text-muted);cursor:pointer;opacity:.6;transition:var(--transition-all-base)}.pm-avatar__refresh:hover:not(:disabled){opacity:1;color:var(--color-gold)}.pm-avatar__refresh:disabled{cursor:not-allowed}.pm-avatar__generate-missing{width:100%;display:flex;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-3);background:var(--gradient-emerald);border:none;border-radius:var(--radius-lg);color:var(--color-bg-void);font-family:var(--font-display);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);cursor:pointer;transition:var(--transition-all-slow);box-shadow:var(--glow-emerald)}.pm-avatar__generate-missing:hover:not(:disabled){transform:translateY(-2px)}.pm-avatar__generate-missing:disabled{opacity:.7;cursor:not-allowed}.pm-actions{position:fixed;left:0;right:0;bottom:0;display:flex;justify-content:space-between;align-items:center;gap:var(--space-3);padding:var(--space-4);padding-bottom:max(var(--space-4),var(--safe-area-bottom));background:linear-gradient(to top,var(--color-bg-primary) 0%,var(--color-bg-primary) 70%,transparent 100%);z-index:var(--z-sticky)}.pm-actions:before{content:"";position:absolute;top:0;left:var(--space-4);right:var(--space-4);height:1px;background:var(--color-border-default)}.pm-actions__secondary,.pm-actions__primary{display:flex;gap:var(--space-2)}.pm-actions__btn{padding:var(--space-3) var(--space-4);border-radius:var(--radius-lg);font-family:var(--font-display);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);cursor:pointer;transition:var(--transition-all-base)}.pm-actions__btn--ghost{background:var(--color-bg-surface);border:1px solid var(--color-border-default);color:var(--color-text-secondary)}.pm-actions__btn--ghost:hover:not(:disabled){background:var(--color-bg-surface-hover);border-color:var(--color-border-hover)}.pm-actions__btn--danger{background:#ef444426;border:1px solid rgba(239,68,68,.25);color:#ef4444}.pm-actions__btn--danger:hover:not(:disabled){background:#ef444440}.pm-actions__btn--save{background:var(--gradient-gold);border:none;color:var(--color-bg-void);box-shadow:var(--glow-gold)}.pm-actions__btn--save:hover:not(:disabled){transform:translateY(-2px);box-shadow:var(--glow-gold-strong)}.pm-actions__btn:disabled{opacity:.5;cursor:not-allowed;transform:none}.pm-empty{text-align:center;padding:var(--space-16) var(--space-6)}.pm-empty__icon{font-size:64px;margin-bottom:var(--space-4);opacity:.5}.pm-empty__title{font-family:var(--font-display);font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold);color:var(--color-text-primary);margin:0 0 var(--space-2)}.pm-empty__text{color:var(--color-text-muted);margin:0 0 var(--space-6)}.pm-empty__create{display:inline-flex;padding:var(--space-3) var(--space-6);background:var(--gradient-gold);border:none;border-radius:var(--radius-lg);color:var(--color-bg-void);font-family:var(--font-display);font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);cursor:pointer;box-shadow:var(--glow-gold);transition:var(--transition-all-slow)}.pm-empty__create:hover{transform:translateY(-2px);box-shadow:var(--glow-gold-strong)}.pm-fab{position:fixed;right:var(--space-4);bottom:calc(80px + max(var(--space-4),var(--safe-area-bottom)));width:56px;height:56px;display:flex;align-items:center;justify-content:center;background:var(--gradient-gold);border:none;border-radius:50%;color:var(--color-bg-void);cursor:pointer;box-shadow:var(--glow-gold-strong),var(--shadow-lg);transition:var(--transition-all-slow);z-index:var(--z-sticky)}.pm-fab:hover{transform:scale(1.1)}.pm-fab:active{transform:scale(.95)}.pm-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;display:flex;align-items:flex-end;justify-content:center;padding:var(--space-4);background:#000000bf;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:var(--z-modal);animation:fadeIn .2s}@keyframes fadeIn{0%{opacity:0}}.pm-modal{width:100%;max-width:400px;background:var(--color-bg-secondary);border:1px solid var(--color-border-default);border-radius:var(--radius-2xl);padding:var(--space-6);animation:modalSlideUp .3s var(--ease-out-expo)}@keyframes modalSlideUp{0%{opacity:0;transform:translateY(40px)}}.pm-modal__title{font-family:var(--font-display);font-size:var(--font-size-xl);font-weight:var(--font-weight-bold);color:var(--color-text-primary);margin:0 0 var(--space-3)}.pm-modal__message{color:var(--color-text-secondary);font-size:var(--font-size-base);line-height:var(--line-height-relaxed);margin:0 0 var(--space-6)}.pm-modal__actions{display:flex;gap:var(--space-3)}.pm-modal__btn{flex:1;padding:var(--space-3) var(--space-4);border-radius:var(--radius-lg);font-family:var(--font-display);font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);cursor:pointer;transition:var(--transition-all-base)}.pm-modal__btn--cancel{background:var(--color-bg-surface);border:1px solid var(--color-border-default);color:var(--color-text-secondary)}.pm-modal__btn--cancel:hover:not(:disabled){background:var(--color-bg-surface-hover)}.pm-modal__btn--primary{background:var(--gradient-gold);border:none;color:var(--color-bg-void)}.pm-modal__btn--warning{background:var(--gradient-amber);border:none;color:var(--color-bg-void)}.pm-modal__btn--danger{background:var(--gradient-ruby);border:none;color:var(--color-text-primary)}.pm-modal__btn:disabled{opacity:.5;cursor:not-allowed}.pm-modal--create{max-width:440px}.pm-modal__field{margin-bottom:var(--space-5)}.pm-modal__label{display:block;margin-bottom:var(--space-2);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-gold)}.pm-modal__input{width:100%;padding:var(--space-4);background:var(--color-bg-surface);border:1px solid var(--color-border-default);border-radius:var(--radius-lg);color:var(--color-text-primary);font-size:var(--font-size-lg);transition:var(--transition-all-base)}.pm-modal__input:focus{outline:none;border-color:var(--color-border-focus);box-shadow:0 0 0 3px var(--color-gold-muted)}.pm-modal__input::placeholder{color:var(--color-text-disabled)}.pm-modal__error{display:block;margin-top:var(--space-2);color:#ef4444;font-size:var(--font-size-sm)}.pm-modal__create-actions{display:flex;flex-direction:column;gap:var(--space-3);margin-bottom:var(--space-4)}.pm-modal__create-btn{display:flex;align-items:center;gap:var(--space-4);padding:var(--space-4);background:var(--color-bg-surface);border:1px solid var(--color-border-default);border-radius:var(--radius-xl);cursor:pointer;transition:var(--transition-all-base);text-align:left}.pm-modal__create-btn:hover:not(:disabled){background:var(--color-bg-surface-hover);border-color:var(--color-border-hover);transform:translate(4px)}.pm-modal__create-btn--ai{border-color:var(--color-gold)}.pm-modal__create-btn--ai:hover:not(:disabled){border-color:var(--color-gold-light);box-shadow:var(--glow-gold)}.pm-modal__create-btn:disabled{opacity:.5;cursor:not-allowed;transform:none}.pm-modal__create-icon{font-size:var(--font-size-2xl)}.pm-modal__create-text{display:flex;flex-direction:column;gap:var(--space-1)}.pm-modal__create-text strong{color:var(--color-text-primary);font-family:var(--font-display);font-weight:var(--font-weight-semibold)}.pm-modal__create-text small{color:var(--color-text-muted);font-size:var(--font-size-xs)}.pm-modal__close{width:100%;padding:var(--space-3);background:transparent;border:1px solid var(--color-border-default);border-radius:var(--radius-lg);color:var(--color-text-muted);font-size:var(--font-size-sm);cursor:pointer;transition:var(--transition-all-base)}.pm-modal__close:hover{background:var(--color-bg-surface)}@media (min-width: 768px){.pm-container{max-width:640px;margin:0 auto}.pm-modal-overlay{align-items:center}.pm-modal{margin-bottom:0}.pm-avatar__grid{grid-template-columns:repeat(6,1fr)}.pm-actions{left:50%;transform:translate(-50%);max-width:640px;padding-left:var(--space-6);padding-right:var(--space-6);border-radius:var(--radius-2xl) var(--radius-2xl) 0 0;background:var(--gradient-card);border:1px solid var(--color-border-default);border-bottom:none}.pm-actions:before{display:none}.pm-fab{right:calc(50% - 340px)}}@media (min-width: 1024px){.pm-container,.pm-actions{max-width:720px}.pm-fab{right:calc(50% - 400px)}}.decision-analyzer{display:flex;flex-direction:column;gap:1.5rem;padding:1rem}.debugger-filters .refresh-button{display:flex;align-items:center;gap:.5rem}.debugger-filters .refresh-button:disabled{opacity:.6;cursor:not-allowed}.debugger-filters .refresh-button .spinning{animation:spin 1s linear infinite}:root{--pg-bg-deep: #06060c;--pg-bg-base: #0a0a12;--pg-bg-elevated: #0d0d18;--pg-bg-surface: #12121f;--pg-bg-highlight: #16162a;--pg-border-subtle: #1a1a2a;--pg-border-default: #1e1e2e;--pg-border-accent: #252540;--pg-text-primary: #e8e8ec;--pg-text-secondary: #a0a0b0;--pg-text-muted: #666680;--pg-text-dim: #444455;--pg-accent-primary: #6ee7b7;--pg-accent-glow: rgba(110, 231, 183, .15);--pg-accent-hover: #1e3a2f;--pg-accent-border: #2d5a4a;--pg-info: #60a5fa;--pg-info-bg: #12182a;--pg-error: #f87171;--pg-error-bg: #1a0f0f;--pg-font: "JetBrains Mono", "SF Mono", "Fira Code", monospace;--pg-radius: 6px;--pg-radius-sm: 4px}.playground-container{display:flex;flex-direction:column;height:100vh;height:100dvh;background:var(--pg-bg-base);color:var(--pg-text-primary);font-family:var(--pg-font);overflow:hidden}.playground-header{display:flex;align-items:center;gap:1rem;padding:.875rem 1.25rem;background:linear-gradient(180deg,var(--pg-bg-surface) 0%,var(--pg-bg-elevated) 100%);border-bottom:1px solid var(--pg-border-default);flex-shrink:0;z-index:100}.back-button{display:inline-flex;align-items:center;gap:.375rem;padding:.5rem .875rem;background:transparent;color:var(--pg-accent-primary);border:1px solid var(--pg-accent-hover);border-radius:var(--pg-radius);cursor:pointer;font-family:inherit;font-size:.8rem;font-weight:500;transition:all .15s ease;text-decoration:none}.back-button:hover{background:var(--pg-accent-hover);border-color:var(--pg-accent-border)}.back-button:active{transform:scale(.98)}.playground-header h1{margin:0;font-size:1.125rem;font-weight:500;color:var(--pg-accent-primary);letter-spacing:-.02em;display:flex;align-items:center;gap:.5rem}.playground-header h1:before{content:">";opacity:.4;font-weight:400}.stats-summary{display:flex;gap:.5rem;margin-left:auto;flex-wrap:wrap}.stat-badge{padding:.3rem .625rem;background:var(--pg-bg-highlight);border:1px solid var(--pg-border-accent);border-radius:var(--pg-radius-sm);font-size:.75rem;color:var(--pg-text-muted);font-weight:500}.stat-badge.type-badge{border-color:var(--pg-accent-border);color:var(--pg-accent-primary);background:linear-gradient(135deg,rgba(110,231,183,.08) 0%,transparent 100%)}.playground-content{display:flex;flex:1;overflow:hidden;min-height:0}.capture-list-panel{width:340px;display:flex;flex-direction:column;background:var(--pg-bg-elevated);border-right:1px solid var(--pg-border-default);flex-shrink:0}.filters{display:flex;gap:.5rem;padding:.75rem;border-bottom:1px solid var(--pg-border-default);background:var(--pg-bg-base);flex-shrink:0}.filters select,.filters button{padding:.5rem .625rem;background:var(--pg-bg-surface);color:var(--pg-text-secondary);border:1px solid var(--pg-border-accent);border-radius:var(--pg-radius-sm);font-size:.8rem;font-family:inherit}.filters select{flex:1;min-width:0;cursor:pointer}.filters select:focus,.filters button:focus{outline:none;border-color:var(--pg-accent-primary)}.filters button{cursor:pointer;color:var(--pg-accent-primary);white-space:nowrap;font-weight:500}.filters button:hover:not(:disabled){background:var(--pg-accent-hover);border-color:var(--pg-accent-border)}.filters button:disabled{opacity:.4;cursor:not-allowed}.capture-list{flex:1;overflow-y:auto;padding:.5rem;min-height:0}.capture-item{padding:.75rem .875rem;margin-bottom:.375rem;background:var(--pg-bg-surface);border:1px solid transparent;border-radius:var(--pg-radius);cursor:pointer;transition:all .15s ease}.capture-item:hover{background:var(--pg-bg-highlight);border-color:var(--pg-border-accent)}.capture-item.selected{background:linear-gradient(135deg,rgba(110,231,183,.08) 0%,var(--pg-bg-surface) 100%);border-color:var(--pg-accent-border);border-left:3px solid var(--pg-accent-primary)}.capture-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.375rem}.call-type{font-weight:600;color:var(--pg-accent-primary);font-size:.8rem;letter-spacing:-.01em}.timestamp{font-size:.7rem;color:var(--pg-text-dim)}.capture-meta{display:flex;gap:.75rem;font-size:.75rem;color:var(--pg-text-muted)}.capture-meta span{display:flex;align-items:center;gap:.25rem}.no-captures{text-align:center;padding:2.5rem 1.25rem;color:var(--pg-text-dim);font-size:.85rem;line-height:1.7}.no-captures:before{content:"// ";color:var(--pg-border-accent)}.pagination{display:flex;justify-content:space-between;align-items:center;padding:.625rem .75rem;border-top:1px solid var(--pg-border-default);background:var(--pg-bg-base);font-size:.75rem;color:var(--pg-text-muted);flex-shrink:0}.pagination button{padding:.375rem .75rem;background:var(--pg-bg-surface);color:var(--pg-accent-primary);border:1px solid var(--pg-border-accent);border-radius:var(--pg-radius-sm);cursor:pointer;font-family:inherit;font-size:.75rem;font-weight:500;transition:all .15s ease}.pagination button:hover:not(:disabled){background:var(--pg-accent-hover);border-color:var(--pg-accent-border)}.pagination button:disabled{opacity:.3;cursor:not-allowed}.capture-detail-panel{flex:1;display:flex;flex-direction:column;overflow:hidden;min-width:0;background:var(--pg-bg-base)}.detail-header{display:none;align-items:center;gap:.75rem;padding:.5rem 1rem;background:var(--pg-bg-elevated);border-bottom:1px solid var(--pg-border-subtle);flex-shrink:0}.expand-toggle{display:none;align-items:center;gap:.375rem;padding:.4rem .625rem;background:var(--pg-bg-surface);color:var(--pg-accent-primary);border:1px solid var(--pg-border-accent);border-radius:var(--pg-radius-sm);cursor:pointer;font-family:inherit;font-size:.7rem;font-weight:500;transition:all .15s ease;white-space:nowrap}.expand-toggle:hover{background:var(--pg-accent-hover);border-color:var(--pg-accent-border)}.expand-toggle:active{transform:scale(.97)}.toggle-icon{font-size:.6rem;line-height:1}.toggle-text{font-size:.65rem;text-transform:uppercase;letter-spacing:.03em}.capture-title{display:flex;align-items:center;gap:.625rem;flex:1;min-width:0}.capture-type{font-weight:600;color:var(--pg-accent-primary);font-size:.8rem}.capture-model{font-size:.75rem;color:var(--pg-text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mode-tabs{display:flex;border-bottom:1px solid var(--pg-border-default);background:var(--pg-bg-elevated);flex-shrink:0}.mode-tabs button{flex:1;padding:.875rem 1rem;background:transparent;color:var(--pg-text-dim);border:none;border-bottom:2px solid transparent;cursor:pointer;font-family:inherit;font-size:.8rem;font-weight:500;transition:all .15s ease}.mode-tabs button:hover{color:var(--pg-text-muted);background:var(--pg-accent-glow)}.mode-tabs button.active{color:var(--pg-accent-primary);border-bottom-color:var(--pg-accent-primary)}.mode-tabs button:disabled{opacity:.4;cursor:not-allowed}.mode-tabs button:disabled:hover{background:transparent;color:var(--pg-text-dim)}.no-selection{display:flex;align-items:center;justify-content:center;height:100%;color:var(--pg-text-dim);font-size:.9rem}.no-selection:before{content:"//";margin-right:.625rem;color:var(--pg-border-accent)}.view-mode,.replay-mode{flex:1;overflow-y:auto;padding:1.25rem;min-height:0}.prompt-section{margin-bottom:1.5rem}.prompt-section h3{margin:0 0 .625rem;font-size:.7rem;color:var(--pg-text-muted);text-transform:uppercase;letter-spacing:.1em;font-weight:600;display:flex;align-items:center;gap:.375rem}.prompt-section h3:before{content:"#";color:var(--pg-accent-primary);opacity:.5}.prompt-content{background:var(--pg-bg-deep);padding:1rem 1.125rem;border-radius:var(--pg-radius);border:1px solid var(--pg-border-subtle);overflow-x:auto;white-space:pre-wrap;word-wrap:break-word;font-family:inherit;font-size:.8rem;line-height:1.65;max-height:300px;overflow-y:auto;margin:0;color:var(--pg-text-secondary)}.prompt-content.response{border-left:3px solid var(--pg-accent-primary);background:linear-gradient(90deg,var(--pg-accent-glow) 0%,var(--pg-bg-deep) 15%)}.history-list{background:var(--pg-bg-deep);border:1px solid var(--pg-border-subtle);border-radius:var(--pg-radius);padding:.625rem;max-height:200px;overflow-y:auto}.history-message{margin-bottom:.625rem;padding:.75rem;border-radius:var(--pg-radius-sm)}.history-message:last-child{margin-bottom:0}.history-message.user{background:var(--pg-info-bg);border-left:2px solid var(--pg-info)}.history-message.assistant{background:#6ee7b70d;border-left:2px solid var(--pg-accent-primary)}.role-label{display:inline-block;padding:.15rem .4rem;margin-bottom:.375rem;border-radius:3px;font-size:.6rem;text-transform:uppercase;font-weight:700;letter-spacing:.05em}.history-message.user .role-label{background:#60a5fa33;color:var(--pg-info)}.history-message.assistant .role-label{background:var(--pg-accent-hover);color:var(--pg-accent-primary)}.history-message pre{margin:0;white-space:pre-wrap;word-wrap:break-word;font-size:.75rem;color:var(--pg-text-secondary);line-height:1.5}.metrics{display:flex;flex-wrap:wrap;gap:1rem;padding:.875rem 1rem;background:var(--pg-bg-elevated);border:1px solid var(--pg-border-subtle);border-radius:var(--pg-radius);font-size:.75rem}.metrics span{color:var(--pg-text-muted);display:flex;align-items:center;gap:.375rem}.metrics span:before{content:"•";color:var(--pg-border-accent);font-size:.5rem}.replay-controls{display:grid;grid-template-columns:repeat(3,1fr);gap:.875rem;margin-bottom:1.25rem;padding:1.125rem;background:var(--pg-bg-elevated);border:1px solid var(--pg-border-subtle);border-radius:var(--pg-radius)}.control-row{display:flex;flex-direction:column;gap:.375rem}.control-row label{font-size:.65rem;color:var(--pg-text-dim);text-transform:uppercase;letter-spacing:.06em;font-weight:600}.control-row select{padding:.5rem .625rem;background:var(--pg-bg-deep);color:var(--pg-text-secondary);border:1px solid var(--pg-border-accent);border-radius:var(--pg-radius-sm);font-family:inherit;font-size:.8rem;cursor:pointer}.control-row select:focus{outline:none;border-color:var(--pg-accent-primary)}.prompt-section textarea{width:100%;padding:1rem;background:var(--pg-bg-deep);color:var(--pg-text-secondary);border:1px solid var(--pg-border-subtle);border-radius:var(--pg-radius);font-family:inherit;font-size:.8rem;line-height:1.6;resize:vertical;min-height:110px;box-sizing:border-box}.prompt-section textarea:focus{outline:none;border-color:var(--pg-accent-primary);box-shadow:0 0 0 3px var(--pg-accent-glow)}.replay-button{display:flex;align-items:center;justify-content:center;gap:.5rem;width:100%;padding:1rem;margin-bottom:1.25rem;background:linear-gradient(135deg,#1e4a3a,#163830);color:var(--pg-accent-primary);border:1px solid var(--pg-accent-border);border-radius:var(--pg-radius);font-family:inherit;font-size:.875rem;font-weight:600;cursor:pointer;transition:all .15s ease;letter-spacing:-.01em}.replay-button:hover:not(:disabled){background:linear-gradient(135deg,#2d5a4a,#1e4a3a);border-color:var(--pg-accent-primary);transform:translateY(-1px)}.replay-button:active:not(:disabled){transform:translateY(0)}.replay-button:disabled{opacity:.5;cursor:not-allowed}.replay-result{padding:1.125rem;background:var(--pg-bg-elevated);border:1px solid var(--pg-border-subtle);border-radius:var(--pg-radius)}.replay-result-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem;padding-bottom:.75rem;border-bottom:1px solid var(--pg-border-subtle)}.result-label{font-size:.7rem;text-transform:uppercase;letter-spacing:.08em;color:var(--pg-accent-primary);font-weight:600}.clear-result-btn{background:transparent;border:1px solid var(--pg-border-accent);color:var(--pg-text-muted);font-size:1.1rem;width:28px;height:28px;border-radius:4px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .15s ease}.clear-result-btn:hover{background:var(--pg-bg-highlight);color:var(--pg-text-secondary);border-color:var(--pg-border-default)}.replay-result.error .error-message{color:var(--pg-error);padding:1rem;background:var(--pg-error-bg);border:1px solid rgba(248,113,113,.25);border-radius:var(--pg-radius-sm)}.comparison{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-bottom:1rem}.original,.new{min-width:0}.original h4,.new h4{margin:0 0 .5rem;font-size:.7rem;color:var(--pg-text-muted);text-transform:uppercase;letter-spacing:.06em;font-weight:600}.original pre,.new pre{background:var(--pg-bg-deep);padding:1rem;border:1px solid var(--pg-border-subtle);border-radius:var(--pg-radius);overflow-x:auto;white-space:pre-wrap;word-wrap:break-word;font-size:.75rem;max-height:280px;overflow-y:auto;margin:0;color:var(--pg-text-secondary)}.new pre{border-left:3px solid var(--pg-accent-primary)}.replay-metrics{display:flex;flex-wrap:wrap;gap:1rem;padding-top:.875rem;border-top:1px solid var(--pg-border-subtle);font-size:.75rem}.replay-metrics span{color:var(--pg-text-muted)}.error-message{color:var(--pg-error);padding:.875rem;background:#f8717114;border:1px solid rgba(248,113,113,.2);border-radius:var(--pg-radius-sm);margin-bottom:.625rem;font-size:.8rem}@media (max-width: 768px){.playground-container{height:100vh;height:100dvh;overflow:hidden;display:flex;flex-direction:column}.playground-header{flex-shrink:0;flex-wrap:nowrap;padding:.5rem .75rem;gap:.5rem;min-height:44px;align-items:center}.playground-header h1{font-size:.8rem;order:1;flex:1;min-width:0;letter-spacing:-.03em}.playground-header h1:before{display:none}.back-button{order:0;padding:.35rem .5rem;font-size:.7rem;min-width:44px}.stats-summary,.stat-badge{display:none}.playground-content{flex:1;flex-direction:column;overflow:hidden;min-height:0}.capture-list-panel{width:100%;border-right:none;border-bottom:2px solid var(--pg-border-default);flex-shrink:0;max-height:40vh;display:flex;flex-direction:column;transition:max-height .25s ease,opacity .2s ease;overflow:hidden}.capture-list-panel.collapsed{max-height:0;border-bottom:none;opacity:0;pointer-events:none}.detail-header{display:flex;padding:.5rem .75rem;gap:.5rem}.expand-toggle{display:flex}.capture-type{font-size:.75rem}.capture-model{font-size:.68rem}.capture-detail-panel.expanded{flex:1}.filters{flex-wrap:wrap;padding:.625rem;gap:.375rem;background:var(--pg-bg-elevated);flex-shrink:0}.filters select{flex:1 1 calc(50% - .25rem);min-width:100px;font-size:.75rem;padding:.5rem;background:var(--pg-bg-deep)}.filters button{flex:0 0 auto;padding:.5rem .875rem;font-size:.75rem}.capture-list{flex:1;min-height:80px;overflow-y:auto;overflow-x:hidden;padding:.375rem;-webkit-overflow-scrolling:touch;overscroll-behavior:contain}.capture-item{padding:.625rem .75rem;margin-bottom:.25rem}.call-type{font-size:.75rem}.timestamp{font-size:.6rem}.capture-meta{font-size:.65rem;gap:.5rem}.pagination{padding:.5rem .625rem;font-size:.65rem;flex-shrink:0}.pagination button{padding:.3rem .625rem;font-size:.65rem}.capture-detail-panel{flex:1;min-height:0;display:flex;flex-direction:column;overflow:hidden}.mode-tabs{flex-shrink:0;display:flex;width:100%;padding:0;gap:0;background:var(--pg-bg-deep);border-bottom:1px solid var(--pg-border-default)}.mode-tabs button{flex:1;padding:.75rem .5rem;font-size:.72rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;border-radius:0;border:none;border-bottom:2px solid transparent;background:transparent;color:var(--pg-text-muted);min-height:44px}.mode-tabs button.active{color:var(--pg-accent-primary);border-bottom-color:var(--pg-accent-primary);background:#6ee7b70d}.mode-tabs button:disabled{opacity:.3}.view-mode,.replay-mode{flex:1;overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;padding:.875rem;padding-bottom:calc(1.5rem + env(safe-area-inset-bottom,0px));touch-action:pan-y}.prompt-section{margin-bottom:1rem}.prompt-section h3{font-size:.6rem;margin-bottom:.5rem}.prompt-content{max-height:280px;overflow-y:auto;-webkit-overflow-scrolling:touch;padding:.875rem;font-size:.85rem;line-height:1.55;background:var(--pg-bg-surface);border:1px solid var(--pg-border-subtle);border-radius:8px}.prompt-section h3{font-size:.7rem;text-transform:uppercase;letter-spacing:.06em;color:var(--pg-accent-primary);opacity:.85;margin-bottom:.5rem}.history-list{max-height:150px;padding:.5rem;overflow-y:auto;-webkit-overflow-scrolling:touch}.history-message{padding:.625rem}.history-message pre{font-size:.7rem}.role-label{font-size:.55rem;padding:.125rem .35rem}.metrics{flex-direction:column;gap:.375rem;padding:.625rem .75rem;font-size:.68rem}.metrics span:before{display:none}.replay-controls{grid-template-columns:1fr;gap:.625rem;padding:.75rem}.control-row label{font-size:.6rem}.control-row select{padding:.5rem;font-size:.75rem}.prompt-section textarea{font-size:.75rem;padding:.75rem;min-height:100px;max-height:200px}.comparison{grid-template-columns:1fr;gap:.75rem}.original pre,.new pre{max-height:200px;overflow-y:auto;-webkit-overflow-scrolling:touch;font-size:.68rem;padding:.75rem}.replay-button{padding:.875rem;font-size:.8rem}.replay-result{padding:.875rem}.replay-metrics{flex-direction:column;gap:.25rem;font-size:.68rem}.no-selection{min-height:25vh;font-size:.8rem;display:flex;align-items:center;justify-content:center}.no-captures{padding:1.5rem 1rem;font-size:.8rem}}@media (max-width: 380px){.playground-header{padding:.5rem .625rem}.playground-header h1{font-size:.85rem}.playground-header h1:before{display:none}.back-button{padding:.35rem .5rem;font-size:.7rem}.capture-list{max-height:28vh}.filters select,.filters button{font-size:.68rem;padding:.4rem}.prompt-content,.original pre,.new pre{font-size:.65rem;padding:.625rem}.history-message pre{font-size:.65rem}.view-mode,.replay-mode{padding:.625rem;padding-bottom:calc(1.5rem + env(safe-area-inset-bottom,0px))}}@media (max-width: 768px) and (orientation: landscape){.playground-container{min-height:auto}.playground-header{padding:.375rem .75rem}.playground-header h1{font-size:.85rem}.stats-summary{display:none}.capture-list{max-height:25vh}.view-mode,.replay-mode{padding:.625rem}}.capture-list::-webkit-scrollbar,.prompt-content::-webkit-scrollbar,.history-list::-webkit-scrollbar,.view-mode::-webkit-scrollbar,.replay-mode::-webkit-scrollbar,.original pre::-webkit-scrollbar,.new pre::-webkit-scrollbar{width:6px;height:6px}.capture-list::-webkit-scrollbar-track,.prompt-content::-webkit-scrollbar-track,.history-list::-webkit-scrollbar-track,.view-mode::-webkit-scrollbar-track,.replay-mode::-webkit-scrollbar-track,.original pre::-webkit-scrollbar-track,.new pre::-webkit-scrollbar-track{background:transparent}.capture-list::-webkit-scrollbar-thumb,.prompt-content::-webkit-scrollbar-thumb,.history-list::-webkit-scrollbar-thumb,.view-mode::-webkit-scrollbar-thumb,.replay-mode::-webkit-scrollbar-thumb,.original pre::-webkit-scrollbar-thumb,.new pre::-webkit-scrollbar-thumb{background:var(--pg-border-accent);border-radius:3px}.capture-list::-webkit-scrollbar-thumb:hover,.prompt-content::-webkit-scrollbar-thumb:hover,.history-list::-webkit-scrollbar-thumb:hover,.view-mode::-webkit-scrollbar-thumb:hover,.replay-mode::-webkit-scrollbar-thumb:hover,.original pre::-webkit-scrollbar-thumb:hover,.new pre::-webkit-scrollbar-thumb:hover{background:var(--pg-text-dim)}.playground-container ::selection{background:var(--pg-accent-glow);color:var(--pg-text-primary)}.template-editor{display:flex;gap:1rem;height:100%;overflow:hidden}.template-list-panel{width:220px;min-width:180px;flex-shrink:0;display:flex;flex-direction:column;background:var(--pg-surface);border:1px solid var(--pg-border);border-radius:6px;overflow:hidden}.template-list-header{display:flex;justify-content:space-between;align-items:center;padding:.75rem 1rem;border-bottom:1px solid var(--pg-border);background:var(--pg-surface-elevated)}.template-list-header h3{margin:0;font-size:.9rem;color:var(--pg-text-primary)}.template-list-header .refresh-btn{background:transparent;border:1px solid var(--pg-border);color:var(--pg-text-dim);padding:.25rem .5rem;border-radius:4px;cursor:pointer;font-size:.8rem}.template-list-header .refresh-btn:hover{background:var(--pg-surface-elevated);color:var(--pg-text-secondary)}.template-list{flex:1;overflow-y:auto;padding:.5rem}.template-item{padding:.75rem;margin-bottom:.5rem;background:var(--pg-surface-elevated);border:1px solid var(--pg-border);border-radius:4px;cursor:pointer;transition:all .15s ease}.template-item:hover{border-color:var(--pg-border-accent);background:var(--pg-bg)}.template-item.selected{border-color:var(--pg-accent);background:var(--pg-accent-glow)}.template-item .template-name{font-family:var(--pg-font-mono);font-size:.85rem;color:var(--pg-text-primary);margin-bottom:.25rem}.template-item .template-meta{display:flex;gap:.5rem;font-size:.75rem;color:var(--pg-text-dim)}.template-editor-panel{flex:1;display:flex;flex-direction:column;background:var(--pg-surface);border:1px solid var(--pg-border);border-radius:6px;overflow:hidden}.editor-header{display:flex;justify-content:space-between;align-items:center;padding:.75rem 1rem;border-bottom:1px solid var(--pg-border);background:var(--pg-surface-elevated);flex-wrap:wrap;gap:.5rem}.editor-title{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.editor-title h3{margin:0;font-family:var(--pg-font-mono);font-size:1rem;color:var(--pg-text-primary)}.editor-title .version{font-size:.75rem;color:var(--pg-text-dim);background:var(--pg-bg);padding:.15rem .4rem;border-radius:3px}.editor-title .hash{font-family:var(--pg-font-mono);font-size:.7rem;color:var(--pg-text-dim)}.editor-title .dirty-badge{font-size:.7rem;color:var(--pg-warning);background:#ffc10726;padding:.15rem .4rem;border-radius:3px}.editor-actions{display:flex;gap:.5rem}.editor-actions button{background:var(--pg-surface);border:1px solid var(--pg-border);color:var(--pg-text-secondary);padding:.4rem .75rem;border-radius:4px;cursor:pointer;font-size:.8rem;transition:all .15s ease}.editor-actions button:hover:not(:disabled){background:var(--pg-surface-elevated);border-color:var(--pg-border-accent)}.editor-actions button:disabled{opacity:.5;cursor:not-allowed}.editor-actions .save-btn{background:var(--pg-accent);border-color:var(--pg-accent);color:var(--pg-bg)}.editor-actions .save-btn:hover:not(:disabled){background:var(--pg-accent-bright);border-color:var(--pg-accent-bright)}.variables-info{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background:var(--pg-bg);border-bottom:1px solid var(--pg-border);flex-wrap:wrap}.variables-info .label{font-size:.75rem;color:var(--pg-text-dim)}.variables-info .variable-list{display:flex;gap:.35rem;flex-wrap:wrap}.variables-info .variable{font-family:var(--pg-font-mono);font-size:.7rem;background:var(--pg-surface);color:var(--pg-accent);padding:.15rem .35rem;border-radius:3px;border:1px solid var(--pg-border)}.sections-container{flex:1;overflow-y:auto;padding:1rem}.section-editor{margin-bottom:1.5rem}.section-editor:last-child{margin-bottom:0}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem}.section-header h4{margin:0;font-size:.85rem;color:var(--pg-text-secondary);font-family:var(--pg-font-mono)}.section-header .char-count{font-size:.7rem;color:var(--pg-text-dim)}.section-editor textarea{width:100%;font-family:var(--pg-font-mono);font-size:.8rem;line-height:1.5;background:var(--pg-bg);color:var(--pg-text-primary);border:1px solid var(--pg-border);border-radius:4px;padding:.75rem;resize:vertical;min-height:100px}.section-editor textarea:focus{outline:none;border-color:var(--pg-accent);box-shadow:0 0 0 2px var(--pg-accent-glow)}.template-editor-panel .no-selection{display:flex;align-items:center;justify-content:center;height:100%;color:var(--pg-text-dim);font-size:.9rem}.template-editor-panel .error-message{margin:.5rem 1rem;padding:.5rem .75rem;background:#dc354526;border:1px solid rgba(220,53,69,.3);border-radius:4px;color:#dc3545;font-size:.8rem}.template-editor-panel .success-message{margin:.5rem 1rem;padding:.5rem .75rem;background:#28a74526;border:1px solid rgba(40,167,69,.3);border-radius:4px;color:#28a745;font-size:.8rem}.captures-section{margin-top:1.5rem;padding-top:1.5rem;border-top:1px solid var(--pg-border-subtle)}.captures-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1rem}.captures-header h3{font-size:.875rem;color:var(--pg-text-secondary);margin:0}.captures-header .loading-indicator{font-size:.75rem;color:var(--pg-text-dim)}.captures-list{display:flex;flex-direction:column;gap:.5rem}.capture-test-item{display:flex;align-items:center;justify-content:space-between;padding:.75rem;background:var(--pg-bg-elevated);border:1px solid var(--pg-border-subtle);border-radius:var(--pg-radius-sm)}.capture-info{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap;flex:1}.capture-player{font-weight:600;color:var(--pg-text-secondary)}.capture-phase{color:var(--pg-accent-primary);font-size:.85rem}.capture-action{color:var(--pg-text-dim);font-size:.85rem}.capture-time{color:var(--pg-text-dim);font-size:.75rem;margin-left:auto}.capture-actions{display:flex;gap:.5rem;margin-left:1rem}.capture-actions .test-btn,.capture-actions .replay-btn{padding:.35rem .75rem;font-size:.75rem;border-radius:var(--pg-radius-sm);cursor:pointer;transition:all .15s ease}.capture-actions .test-btn{background:linear-gradient(135deg,#1e4a3a,#163830);color:var(--pg-accent-primary);border:1px solid var(--pg-accent-border)}.capture-actions .test-btn:hover:not(:disabled){background:linear-gradient(135deg,#2d5a4a,#1e4a3a);border-color:var(--pg-accent-primary)}.capture-actions .replay-btn{background:transparent;color:var(--pg-text-dim);border:1px solid var(--pg-border-subtle)}.capture-actions .replay-btn:hover{color:var(--pg-text-secondary);border-color:var(--pg-border-accent)}.capture-actions button:disabled{opacity:.5;cursor:not-allowed}.no-captures{padding:1.5rem;text-align:center;color:var(--pg-text-dim);font-size:.85rem;background:var(--pg-bg-elevated);border-radius:var(--pg-radius)}.test-results{margin-top:1.5rem;padding:1rem;background:var(--pg-bg-deep);border:1px solid var(--pg-border-accent);border-radius:var(--pg-radius)}.test-results-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1rem}.test-results-header h4{margin:0;font-size:.875rem;color:var(--pg-text-secondary)}.test-results-header .close-btn{background:transparent;border:none;color:var(--pg-text-dim);font-size:1.25rem;cursor:pointer;padding:0;line-height:1}.test-results-header .close-btn:hover{color:var(--pg-text-secondary)}.test-loading{text-align:center;padding:2rem;color:var(--pg-text-dim)}.test-error{padding:1rem;background:#dc35451a;border:1px solid rgba(220,53,69,.3);border-radius:var(--pg-radius-sm);color:#dc3545;font-size:.85rem}.test-comparison{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.comparison-panel{padding:.75rem;background:var(--pg-bg-elevated);border-radius:var(--pg-radius-sm)}.comparison-panel h5{margin:0 0 .5rem;font-size:.75rem;color:var(--pg-text-dim);text-transform:uppercase;letter-spacing:.05em}.comparison-panel pre{margin:0;padding:.75rem;background:var(--pg-bg-deep);border-radius:var(--pg-radius-sm);font-size:.8rem;white-space:pre-wrap;word-break:break-word;max-height:200px;overflow-y:auto}.comparison-panel.original h5{color:var(--pg-text-dim)}.comparison-panel.new h5{color:var(--pg-accent-primary)}.test-metrics{grid-column:1 / -1;display:flex;gap:1.5rem;padding-top:1rem;margin-top:.5rem;border-top:1px solid var(--pg-border-subtle);font-size:.75rem;color:var(--pg-text-dim)}@media (max-width: 768px){.template-editor{flex-direction:column;height:100%;overflow:hidden}.template-list-panel{width:100%;max-height:140px;min-height:80px;flex-shrink:0;border-bottom:1px solid var(--pg-border-default);overflow:hidden;display:flex;flex-direction:column}.template-list-header{padding:.4rem .75rem;flex-shrink:0}.template-list-header h3{font-size:.7rem;text-transform:uppercase;letter-spacing:.05em}.template-list{flex:1;overflow-y:auto;-webkit-overflow-scrolling:touch;padding:.25rem .5rem}.template-item{padding:.5rem .625rem;margin-bottom:.25rem;font-size:.75rem}.template-item .template-name{font-size:.75rem}.template-item .template-meta{font-size:.65rem}.template-editor-panel{flex:1;min-height:0;overflow:hidden;display:flex;flex-direction:column}.editor-header{padding:.5rem .75rem}.editor-title h3{font-size:.8rem}.editor-actions button{padding:.4rem .6rem;font-size:.72rem;min-height:36px}.variables-info{padding:.35rem .75rem;flex-wrap:wrap}.variables-info .variable{font-size:.68rem}.sections-container{flex:1;min-height:0;overflow-y:auto;-webkit-overflow-scrolling:touch;padding:.75rem .75rem 2rem}.section-editor{margin-bottom:1.25rem}.section-header h4{font-size:.7rem;text-transform:uppercase;letter-spacing:.06em;color:var(--pg-accent-primary);opacity:.85}.section-editor textarea{font-size:.85rem;padding:.75rem;min-height:100px;line-height:1.5;border-radius:8px}.captures-section{margin-top:1.5rem;padding:1rem;background:var(--pg-bg-elevated);border-radius:8px}.captures-header h3{font-size:.75rem;text-transform:uppercase;letter-spacing:.05em}.capture-test-item{flex-direction:column;align-items:flex-start;gap:.5rem;padding:.625rem}.capture-info{width:100%;font-size:.8rem}.capture-actions{width:100%;margin-left:0;display:flex;gap:.5rem}.capture-actions button{flex:1;min-height:40px}.test-comparison{grid-template-columns:1fr;gap:.75rem}.comparison-panel pre{max-height:150px;font-size:.8rem}.test-metrics{flex-wrap:wrap;gap:.75rem}}@media (max-width: 380px){.template-list-panel{max-height:100px}.template-item{padding:.4rem}.editor-title{flex-wrap:wrap;gap:.35rem}.editor-title .hash{display:none}}.admin-tabs{display:flex;gap:.5rem;padding:0 1rem 1rem;margin-bottom:1.5rem;border-bottom:1px solid rgba(255,255,255,.1)}.admin-tab{display:flex;align-items:center;gap:.5rem;padding:.75rem 1.25rem;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:8px;color:#ffffffb3;cursor:pointer;transition:all .2s ease;font-size:.95rem;font-weight:500}.admin-tab:hover{background:#ffffff1a;border-color:#fff3;color:#ffffffe6}.admin-tab--active{background:linear-gradient(135deg,#ffc10733,#ff980026);border-color:#ffc10780;color:#ffc107}.admin-tab--active:hover{background:linear-gradient(135deg,#ffc10740,#ff980033);border-color:#ffc10799}.admin-tab__icon{display:flex;align-items:center;justify-content:center;opacity:.8}.admin-tab--active .admin-tab__icon{opacity:1}.admin-tab__label{white-space:nowrap}.admin-content{padding:0 1rem}@media (max-width: 768px){.admin-tabs{flex-direction:column;gap:.5rem}.admin-tab{justify-content:center;padding:1rem}}@media (max-width: 480px){.admin-tab__label{font-size:.85rem}.admin-tab{padding:.65rem 1rem}}.game-menu__options{display:flex;flex-direction:column;gap:var(--space-4);margin-bottom:var(--space-10)}.menu-option{display:flex;align-items:center;gap:var(--space-5);padding:var(--space-5) var(--space-6);background:var(--gradient-card);border:1px solid var(--color-border-default);border-radius:var(--radius-2xl);cursor:pointer;transition:var(--transition-all-slow);position:relative;overflow:hidden;text-align:left;width:100%;box-shadow:var(--shadow-card)}.menu-option:before{content:"";position:absolute;top:0;left:-100%;width:50%;height:100%;background:linear-gradient(90deg,transparent 0%,rgba(212,165,116,.08) 50%,transparent 100%);transform:skew(-20deg);transition:left .6s var(--ease-out-expo)}.menu-option:hover:before{left:150%}.menu-option:after{content:"";position:absolute;top:0;left:var(--space-6);right:var(--space-6);height:1px;background:linear-gradient(90deg,transparent 0%,rgba(255,255,255,.08) 50%,transparent 100%)}.menu-option:hover{background:var(--gradient-card-hover);border-color:var(--color-border-gold);box-shadow:var(--shadow-card-hover);transform:translateY(-4px)}.menu-option:disabled{opacity:.35;cursor:not-allowed}.menu-option:disabled:hover{transform:none;background:var(--gradient-card);border-color:var(--color-border-default);box-shadow:var(--shadow-card)}.option-icon{font-size:var(--font-size-5xl);flex-shrink:0;filter:drop-shadow(0 4px 8px rgba(0,0,0,.3));transition:var(--transition-transform)}.menu-option:hover .option-icon{transform:scale(1.1)}.option-content{flex:1;min-width:0}.option-content h3{margin:0 0 var(--space-1) 0;font-family:var(--font-display);font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold);color:var(--color-text-primary);letter-spacing:var(--letter-spacing-tight)}.option-content p{margin:0;font-family:var(--font-body);font-size:var(--font-size-sm);color:var(--color-text-muted);line-height:var(--line-height-snug)}.option-arrow{font-size:var(--font-size-xl);color:var(--color-text-disabled);transition:var(--transition-all-slow);flex-shrink:0}.menu-option:hover .option-arrow{color:var(--color-gold);transform:translate(4px)}.option-badge{position:absolute;top:var(--space-3);right:var(--space-3);background:var(--gradient-ruby);color:var(--color-text-primary);font-family:var(--font-display);font-size:var(--font-size-xs);font-weight:var(--font-weight-bold);padding:3px var(--space-2);border-radius:var(--radius-sm);text-transform:uppercase;letter-spacing:var(--letter-spacing-wider);box-shadow:var(--glow-ruby);animation:badgePulse 2s ease-in-out infinite}@keyframes badgePulse{0%,to{opacity:1;box-shadow:var(--glow-ruby)}50%{opacity:.85;box-shadow:0 0 30px #f43f5e80}}.quick-play:hover{border-color:var(--color-emerald)}.quick-play:hover .option-arrow{color:var(--color-emerald)}.custom-game:hover{border-color:var(--color-sapphire)}.custom-game:hover .option-arrow{color:var(--color-sapphire)}.themed-game:hover{border-color:var(--color-amber)}.themed-game:hover .option-arrow{color:var(--color-amber)}.continue-game:hover:not(:disabled){border-color:var(--color-amethyst)}.continue-game:hover:not(:disabled) .option-arrow{color:var(--color-amethyst)}.game-menu__footer{text-align:center}.tip{font-family:var(--font-body);font-size:var(--font-size-sm);color:var(--color-text-muted);font-style:italic;margin:0;min-height:20px;transition:var(--transition-all-slow);opacity:.7}@media (max-width: 640px){.menu-option{padding:var(--space-4) var(--space-5);gap:var(--space-4)}.option-icon{font-size:var(--font-size-4xl)}.option-content h3{font-size:var(--font-size-lg)}.option-content p{font-size:var(--font-size-xs)}}.error-message{background:var(--color-ruby-muted);border:1px solid rgba(244,63,94,.25);color:var(--color-ruby);padding:var(--space-4) var(--space-5);border-radius:var(--radius-lg);margin-bottom:var(--space-6);text-align:center;font-family:var(--font-body);font-size:var(--font-size-base);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.theme-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--space-5);margin-bottom:var(--space-10)}.theme-card{background:var(--gradient-card);border:1px solid var(--color-border-default);border-radius:var(--radius-2xl);padding:var(--space-8) var(--space-5);cursor:pointer;transition:var(--transition-all-slow);text-align:center;position:relative;overflow:hidden;box-shadow:var(--shadow-card)}.theme-card:before{content:"";position:absolute;top:0;left:0;right:0;height:50%;background:radial-gradient(ellipse 80% 50% at 50% 0%,rgba(255,255,255,.04) 0%,transparent 100%);opacity:0;transition:opacity .4s ease}.theme-card:after{content:"";position:absolute;top:0;left:-100%;width:50%;height:100%;background:linear-gradient(90deg,transparent 0%,rgba(255,255,255,.06) 50%,transparent 100%);transform:skew(-20deg);transition:left .5s var(--ease-out-expo)}.theme-card:hover:before{opacity:1}.theme-card:hover:after{left:150%}.theme-card:hover{background:var(--gradient-card-hover);border-color:var(--color-border-gold);box-shadow:var(--shadow-card-hover);transform:translateY(-6px)}.theme-card:disabled{opacity:.35;cursor:not-allowed}.theme-card:disabled:hover{transform:none;box-shadow:var(--shadow-card);border-color:var(--color-border-default)}.theme-icon{font-size:var(--font-size-6xl);margin-bottom:var(--space-4);display:block;filter:drop-shadow(0 4px 12px rgba(0,0,0,.4));animation:iconFloat 4s ease-in-out infinite;animation-delay:calc(var(--animation-delay, 0) * .15s)}@keyframes iconFloat{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}.theme-card h3{margin:0 0 var(--space-2) 0;font-family:var(--font-display);font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--color-text-primary);letter-spacing:var(--letter-spacing-tight)}.theme-card p{margin:0;font-family:var(--font-body);font-size:var(--font-size-sm);color:var(--color-text-muted);line-height:var(--line-height-normal)}.science:hover{border-color:var(--color-emerald);box-shadow:var(--shadow-card-hover),var(--glow-emerald)}.hollywood:hover{border-color:var(--color-pink);box-shadow:var(--shadow-card-hover),var(--shadow-pink)}.sports:hover{border-color:var(--color-amber);box-shadow:var(--shadow-card-hover),var(--glow-amber)}.history:hover{border-color:var(--color-amethyst);box-shadow:var(--shadow-card-hover),var(--glow-amethyst)}.music:hover{border-color:var(--color-sapphire);box-shadow:var(--shadow-card-hover),var(--glow-sapphire)}.comedy:hover{border-color:var(--color-yellow);box-shadow:var(--shadow-card-hover),0 0 20px #facc1540}.villains:hover{border-color:var(--color-ruby);box-shadow:var(--shadow-card-hover),var(--glow-ruby)}.surprise:hover{border-color:var(--color-cyan);box-shadow:var(--shadow-card-hover),0 0 20px #22d3ee40}.surprise-badge{position:absolute;top:var(--space-3);right:var(--space-3);font-size:var(--font-size-xl);animation:sparkle 3s ease-in-out infinite;filter:drop-shadow(0 0 8px rgba(34,211,238,.4))}@keyframes sparkle{0%,to{transform:rotate(0) scale(1);opacity:1}50%{transform:rotate(180deg) scale(1.1);opacity:.8}}.generating-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#050508f2;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);display:flex;align-items:center;justify-content:center;z-index:var(--z-overlay);animation:overlayFadeIn .3s ease-out}@keyframes overlayFadeIn{0%{opacity:0}to{opacity:1}}.generating-content{text-align:center;color:var(--color-text-primary);animation:contentPulse 2s ease-in-out infinite}@keyframes contentPulse{0%,to{transform:scale(1)}50%{transform:scale(1.02)}}.generating-spinner{font-size:80px;animation:slotSpin .4s ease-in-out infinite;margin-bottom:var(--space-8);filter:drop-shadow(0 0 30px rgba(212,165,116,.4))}@keyframes slotSpin{0%{transform:translateY(-20px);opacity:0}50%{transform:translateY(0);opacity:1}to{transform:translateY(20px);opacity:0}}.generating-content h3{font-family:var(--font-display);font-size:var(--font-size-2xl);font-weight:var(--font-weight-semibold);margin:0 0 var(--space-2) 0;color:var(--color-text-primary);letter-spacing:var(--letter-spacing-tight)}.generating-content p{font-family:var(--font-body);font-size:var(--font-size-md);color:var(--color-text-tertiary);margin:0}.themed-selector__footer{text-align:center}.hint{font-family:var(--font-body);font-size:var(--font-size-sm);color:var(--color-text-muted);font-style:italic;margin:0;opacity:.7}@media (max-width: 640px){.theme-grid{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:var(--space-3)}.theme-card{padding:var(--space-6) var(--space-4)}.theme-icon{font-size:var(--font-size-5xl)}.theme-card h3{font-size:var(--font-size-md)}.theme-card p{font-size:var(--font-size-xs)}}.opponent-config-content{flex:1;min-height:0}.opponent-config-loading{display:flex;align-items:center;justify-content:center;padding:var(--space-12);color:var(--color-text-tertiary);font-family:var(--font-body);font-size:var(--font-size-md)}.opponent-config-table{display:flex;flex-direction:column;gap:var(--space-4)}.opponent-row{background:var(--gradient-card);border:1px solid var(--color-border-default);border-radius:var(--radius-xl);padding:var(--space-4);transition:var(--transition-all-base)}.opponent-row.custom{border-color:var(--color-sapphire);box-shadow:var(--glow-sapphire)}.config-opponent-name{font-family:var(--font-display);font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--color-text-primary);letter-spacing:var(--letter-spacing-tight);margin-bottom:var(--space-3);padding-bottom:var(--space-3);border-bottom:1px solid var(--color-border-default)}.config-opponent-name span{margin-right:var(--space-2)}.custom-indicator{color:var(--color-sapphire)}.opponent-settings{display:grid;grid-template-columns:auto 1fr;gap:var(--space-2) var(--space-3);align-items:center}.setting-label{font-family:var(--font-body);font-size:var(--font-size-xs);color:var(--color-text-tertiary);text-transform:uppercase;letter-spacing:var(--letter-spacing-wide);font-weight:var(--font-weight-medium);white-space:nowrap}.setting-select{width:100%;min-height:40px;padding:var(--space-2) var(--space-3);background:var(--color-bg-surface-hover);border:1px solid var(--color-border-default);border-radius:var(--radius-lg);color:var(--color-text-primary);font-family:var(--font-body);font-size:var(--font-size-sm);cursor:pointer;transition:var(--transition-all-base);-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23888' d='M6 8L1 3h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right var(--space-2) center;padding-right:var(--space-6)}.reset-btn{grid-column:1 / -1;margin-top:var(--space-3);padding:var(--space-2) var(--space-3);background:transparent;border:1px solid var(--color-border-default);border-radius:var(--radius-lg);color:var(--color-text-tertiary);font-family:var(--font-body);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);letter-spacing:var(--letter-spacing-wide);text-transform:uppercase;cursor:pointer;transition:var(--transition-all-base);min-height:36px}.reset-btn:hover:not(:disabled){background:var(--color-bg-surface-hover);border-color:var(--color-border-hover);color:var(--color-text-primary)}.reset-btn:disabled{opacity:.4;cursor:not-allowed}.opponent-config-footer{padding-top:var(--space-6);margin-top:var(--space-4)}.done-button{width:100%;padding:var(--space-4);background:var(--gradient-gold);color:var(--color-bg-void);border:none;border-radius:var(--radius-xl);font-family:var(--font-display);font-size:var(--font-size-md);font-weight:var(--font-weight-semibold);letter-spacing:var(--letter-spacing-wide);cursor:pointer;transition:var(--transition-all-slow);box-shadow:var(--glow-gold),var(--shadow-md);min-height:52px}.done-button:hover{transform:translateY(-2px);box-shadow:var(--glow-gold-strong),var(--shadow-lg)}.done-button:active{transform:translateY(0) scale(.98)}@media (max-width: 640px){.opponent-row{padding:var(--space-3)}.config-opponent-name{font-size:var(--font-size-md);margin-bottom:var(--space-2);padding-bottom:var(--space-2)}.opponent-settings{gap:var(--space-2)}.setting-select{min-height:38px;font-size:var(--font-size-sm)}.reset-btn{margin-top:var(--space-2)}}.config-section{background:var(--gradient-card);border:1px solid var(--color-border-default);border-radius:var(--radius-2xl);padding:var(--space-6);margin-bottom:var(--space-6);box-shadow:var(--shadow-card);position:relative;overflow:hidden}.config-section:before{content:"";position:absolute;top:0;left:var(--space-6);right:var(--space-6);height:1px;background:linear-gradient(90deg,transparent 0%,rgba(255,255,255,.06) 50%,transparent 100%)}.config-section h3{margin:0 0 var(--space-6) 0;font-family:var(--font-display);font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold);color:var(--color-text-primary);letter-spacing:var(--letter-spacing-tight);display:flex;align-items:center;gap:var(--space-3)}.settings-table{display:grid;grid-template-columns:auto 1fr;gap:var(--space-3) var(--space-4);align-items:center}.setting-label{font-family:var(--font-body);color:var(--color-text-tertiary);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);letter-spacing:var(--letter-spacing-wide);text-transform:uppercase;white-space:nowrap}.setting-select{width:100%;min-height:40px;padding:var(--space-2) var(--space-3);background:var(--color-bg-surface-hover);border:1px solid var(--color-border-default);border-radius:var(--radius-lg);color:var(--color-text-primary);font-family:var(--font-body);font-size:var(--font-size-sm);cursor:pointer;transition:var(--transition-all-base);-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23888' d='M6 8L1 3h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right var(--space-2) center;padding-right:var(--space-6)}.setting-select:hover{border-color:var(--color-border-hover)}.setting-select:focus{outline:none;border-color:var(--color-border-focus);box-shadow:0 0 0 2px var(--color-gold-muted)}.setting-select:disabled{opacity:.5;cursor:not-allowed}.settings-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--space-6)}.setting{display:flex;flex-direction:column;gap:var(--space-2)}.setting-row{display:flex;flex-wrap:wrap;gap:var(--space-4);grid-column:1 / -1}.setting-row .setting{flex:1 1 140px;min-width:140px}.setting label{font-family:var(--font-body);color:var(--color-text-tertiary);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);letter-spacing:var(--letter-spacing-wide);text-transform:uppercase}.selected-count{font-family:var(--font-display);font-size:var(--font-size-3xl);font-weight:var(--font-weight-bold);background:var(--gradient-text-emerald);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;line-height:1}.setting select{padding:var(--space-3) var(--space-4);background:var(--color-bg-surface-hover);border:1px solid var(--color-border-default);border-radius:var(--radius-lg);color:var(--color-text-primary);font-family:var(--font-body);font-size:var(--font-size-base);cursor:pointer;transition:var(--transition-all-base);-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23888' d='M6 8L1 3h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right var(--space-3) center;padding-right:var(--space-8)}.setting select:hover{border-color:var(--color-border-hover)}.setting select:focus{outline:none;border-color:var(--color-border-focus);box-shadow:0 0 0 3px var(--color-gold-muted)}.setting select:disabled{cursor:not-allowed;opacity:.4}.coming-soon{font-family:var(--font-body);font-size:var(--font-size-xs);color:var(--color-text-disabled);font-style:italic;margin-top:var(--space-1)}.search-box{position:relative;margin-bottom:var(--space-6)}.search-input{width:100%;padding:var(--space-4) var(--space-5) var(--space-4) 52px;background:var(--color-bg-surface);border:1px solid var(--color-border-default);border-radius:var(--radius-xl);color:var(--color-text-primary);font-family:var(--font-body);font-size:var(--font-size-base);outline:none;transition:var(--transition-all-slow)}.search-input:hover{border-color:var(--color-border-hover)}.search-input:focus{background:var(--color-bg-surface-hover);border-color:var(--color-border-focus);box-shadow:0 0 0 3px var(--color-gold-muted)}.search-input::placeholder{color:var(--color-text-disabled)}.search-icon{position:absolute;left:var(--space-5);top:50%;transform:translateY(-50%);font-size:var(--font-size-lg);color:var(--color-text-muted)}.personality-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:var(--space-4);max-height:480px;overflow-y:auto;padding:var(--space-2);margin:calc(-1 * var(--space-2))}.personality-grid::-webkit-scrollbar{width:8px}.personality-grid::-webkit-scrollbar-track{background:var(--color-bg-surface);border-radius:var(--radius-full)}.personality-grid::-webkit-scrollbar-thumb{background:var(--color-border-hover);border-radius:var(--radius-full);transition:background .2s}.personality-grid::-webkit-scrollbar-thumb:hover{background:var(--color-border-focus)}.personality-card{background:var(--color-bg-surface);border:1px solid var(--color-border-default);border-radius:var(--radius-xl);padding:var(--space-5);cursor:pointer;transition:var(--transition-all-slow);text-align:left;position:relative;overflow:hidden}.personality-card:before{content:"";position:absolute;top:0;left:0;right:0;height:40%;background:radial-gradient(ellipse 100% 100% at 50% 0%,rgba(255,255,255,.02) 0%,transparent 100%);pointer-events:none}.personality-card:hover{background:var(--color-bg-surface-hover);border-color:var(--color-border-hover);transform:translateY(-4px);box-shadow:var(--shadow-lg)}.personality-card.selected{background:var(--color-sapphire-muted);border-color:var(--color-sapphire);box-shadow:var(--glow-sapphire)}.personality-card.disabled{opacity:.3;cursor:not-allowed}.personality-card.disabled:hover{transform:none;box-shadow:none}.personality-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-2)}.personality-card h4{margin:0;font-family:var(--font-display);font-size:var(--font-size-md);font-weight:var(--font-weight-semibold);color:var(--color-text-primary);letter-spacing:var(--letter-spacing-tight)}.personality-badges{display:flex;align-items:center;gap:var(--space-2)}.custom-config-badge{display:flex;align-items:center;justify-content:center;width:24px;height:24px;background:var(--color-sapphire-muted);border-radius:var(--radius-md);color:var(--color-sapphire)}.checkmark{color:var(--color-emerald);font-size:var(--font-size-xl);font-weight:var(--font-weight-bold);animation:checkPop .3s var(--ease-out-back)}@keyframes checkPop{0%{transform:scale(0)}to{transform:scale(1)}}.play-style{font-family:var(--font-body);font-size:var(--font-size-sm);color:var(--color-text-tertiary);margin:0 0 var(--space-4) 0;font-style:italic;line-height:var(--line-height-snug)}.traits{display:flex;flex-direction:column;gap:var(--space-2)}.cgc-personality-trait{display:flex;align-items:center;gap:var(--space-2)}.cgc-personality-trait span{font-family:var(--font-body);font-size:var(--font-size-xs);color:var(--color-text-muted);min-width:40px;text-transform:uppercase;letter-spacing:var(--letter-spacing-wide)}.cgc-trait-bar{flex:1;height:4px;background:var(--color-bg-surface);border-radius:var(--radius-full);overflow:hidden}.cgc-trait-fill{height:100%;background:var(--gradient-gold);border-radius:var(--radius-full);transition:width .4s var(--ease-out-expo);box-shadow:0 0 8px #d4a57466}.loading{text-align:center;color:var(--color-text-tertiary);padding:var(--space-12);font-family:var(--font-body);font-size:var(--font-size-md)}.custom-config__footer{display:flex;flex-direction:column;align-items:center;gap:var(--space-4);margin-top:var(--space-8)}.configure-opponents-button{display:flex;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-3) var(--space-6);background:transparent;border:1px solid var(--color-border-default);border-radius:var(--radius-lg);color:var(--color-text-secondary);font-family:var(--font-body);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);letter-spacing:var(--letter-spacing-wide);cursor:pointer;transition:var(--transition-all-base);min-height:44px}.configure-opponents-button:hover:not(:disabled){background:var(--color-bg-surface-hover);border-color:var(--color-border-hover);color:var(--color-text-primary)}.configure-opponents-button:disabled{opacity:.4;cursor:not-allowed}.config-count{color:var(--color-sapphire);font-weight:var(--font-weight-semibold)}.start-button{position:relative;padding:var(--space-4) var(--space-10);background:var(--gradient-gold);color:var(--color-bg-void);border:none;border-radius:var(--radius-xl);font-family:var(--font-display);font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);letter-spacing:var(--letter-spacing-wide);cursor:pointer;transition:var(--transition-all-slow);min-width:240px;box-shadow:var(--glow-gold),var(--shadow-lg);overflow:hidden}.start-button:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.25),transparent);transition:left .5s ease}.start-button:hover:not(:disabled):before{left:100%}.start-button:hover:not(:disabled){transform:translateY(-3px);box-shadow:var(--glow-gold-strong),var(--shadow-xl)}.start-button:active:not(:disabled){transform:translateY(0) scale(.98)}.start-button:disabled{background:var(--color-bg-surface);cursor:not-allowed;opacity:.4;box-shadow:none;color:var(--color-text-disabled)}@media (max-width: 768px){.config-section{padding:var(--space-5)}.settings-table{gap:var(--space-2) var(--space-3)}.setting-select{min-height:38px}.personality-grid{grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:var(--space-3);max-height:400px}.personality-card{padding:var(--space-4)}.personality-card h4{font-size:var(--font-size-base)}.start-button{min-width:200px;font-size:var(--font-size-md)}}.elasticity-demo{padding:20px;background:#0a0a0af2;color:#fff;min-height:100vh}.demo-header{margin-bottom:30px;text-align:center}.demo-header h2{margin:0 0 20px;color:#0f0;font-size:24px}.demo-controls{display:flex;gap:10px;justify-content:center}.demo-controls button{padding:8px 16px;background:#4caf5033;color:#4caf50;border:1px solid #4caf50;border-radius:4px;cursor:pointer;transition:all .2s}.demo-controls button:hover{background:#4caf504d;transform:translateY(-1px)}.demo-content{max-width:1200px;margin:0 auto;display:grid;grid-template-columns:repeat(auto-fit,minmax(350px,1fr));gap:20px}.demo-player{background:#28282899;border-radius:8px;border:1px solid #333;padding:20px}.demo-player h4{margin:0 0 15px;color:#fc0;font-size:18px;font-weight:600}.demo-mood{margin-bottom:20px;font-size:14px;color:#aaa}.demo-mood-value{color:#ff69b4;font-weight:700;text-transform:capitalize}.demo-traits{display:flex;flex-direction:column;gap:20px}.demo-trait{background:#1e1e1e80;padding:15px;border-radius:6px;border:1px solid rgba(255,255,255,.1)}.demo-trait-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.demo-trait-name{color:#8cf;font-weight:500;font-size:14px}.demo-trait-value{font-weight:700;font-family:SF Mono,Monaco,Inconsolata,monospace;font-size:14px}.demo-trait-bar-container{position:relative;margin-bottom:8px}.demo-trait-bar-background{position:relative;height:24px;background:#222;border:1px solid #444;border-radius:4px;overflow:hidden;box-shadow:inset 0 2px 4px #0000004d}.demo-elasticity-range{position:absolute;top:0;height:100%;background:#6464644d;border-left:1px dashed #666;border-right:1px dashed #666}.demo-anchor-line{position:absolute;top:0;width:2px;height:100%;background:#ff0;box-shadow:0 0 6px #ff0;z-index:2}.demo-trait-bar{position:absolute;top:0;left:0;height:100%;background:linear-gradient(90deg,#08f,#0f8);transition:width .4s cubic-bezier(.4,0,.2,1);box-shadow:0 0 10px #00ff884d}.demo-trait-labels{display:flex;justify-content:space-between;font-size:11px;color:#666;margin-top:4px;font-family:SF Mono,Monaco,Inconsolata,monospace}.demo-trait-details{display:flex;justify-content:space-between;font-size:12px;color:#888;margin-top:8px}.demo-trait-details span{font-family:SF Mono,Monaco,Inconsolata,monospace}@media (max-width: 768px){.demo-content{grid-template-columns:1fr}.demo-player{padding:15px}.demo-trait{padding:12px}}.demo-trait:hover{background:#1e1e1eb3;border-color:#fff3}.demo-trait:hover .demo-trait-name{color:#adf}@keyframes pressureFlash{0%{opacity:1}50%{opacity:.3}to{opacity:1}}.demo-trait-value{animation:pressureFlash .3s ease-out}.prompt-debugger{display:flex;flex-direction:column;gap:1.5rem;padding:1rem}.debugger-stats{display:flex;flex-wrap:wrap;gap:1rem;padding:1rem;background:#0000004d;border-radius:8px}.stat-item{display:flex;flex-direction:column;align-items:center;padding:.75rem 1.5rem;background:#ffffff0d;border-radius:6px;min-width:80px}.stat-value{font-size:1.5rem;font-weight:700;color:#fff}.stat-label{font-size:.75rem;color:#fff9;text-transform:capitalize}.stat-item.stat-warning .stat-value{color:#ff6b6b}.stat-item.stat-success .stat-value{color:#4ecca3}.stat-item.stat-danger .stat-value{color:#ff6b6b}.debugger-stats.analysis-stats{background:#4ecca31a;border:1px solid rgba(78,204,163,.2)}.stat-item.action-fold .stat-value{color:#ff6b6b}.stat-item.action-check .stat-value{color:#4ecca3}.stat-item.action-call .stat-value{color:#00d4ff}.stat-item.action-raise .stat-value{color:#ffd93d}.stat-item.action-allin .stat-value{color:#ff9f1c}.debugger-filters{display:flex;flex-wrap:wrap;gap:.75rem;align-items:center}.debugger-filters select,.debugger-filters input{background:#0f3460cc;color:#eee;border:1px solid rgba(78,204,163,.3);padding:.5rem 1rem;border-radius:4px;font-size:.9rem}.debugger-filters select:focus,.debugger-filters input:focus{outline:none;border-color:#4ecca3}.debugger-filters button{background:#4ecca333;color:#4ecca3;border:1px solid rgba(78,204,163,.5);padding:.5rem 1rem;border-radius:4px;cursor:pointer;font-size:.9rem}.debugger-filters button:hover{background:#4ecca34d}.debugger-error{padding:1rem;background:#ff6b6b33;border:1px solid #ff6b6b;border-radius:6px;color:#ff6b6b}.debugger-layout{display:grid;grid-template-columns:350px 1fr;gap:1.5rem;min-height:600px}@media (max-width: 900px){.debugger-layout{grid-template-columns:1fr}}.capture-list{background:#0000004d;border-radius:8px;padding:1rem;overflow-y:auto;max-height:700px}.capture-list h3{margin:0 0 1rem;color:#fff;font-size:1rem;padding-bottom:.5rem;border-bottom:1px solid rgba(255,255,255,.1)}.capture-item{padding:.75rem;margin-bottom:.5rem;background:#0f346080;border-radius:6px;cursor:pointer;border:1px solid transparent;transition:all .2s}.capture-item:hover{background:#0f3460cc;border-color:#4ecca34d}.capture-item.selected{border-color:#4ecca3;background:#4ecca31a}.capture-item.suspicious{border-left:3px solid #ff6b6b}.capture-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.25rem}.capture-player{font-weight:600;color:#fff}.capture-action{font-size:.75rem;font-weight:700;padding:.2rem .5rem;border-radius:4px;background:#ffffff1a}.capture-action.action-fold{color:#ff6b6b;background:#ff6b6b33}.capture-action.action-check{color:#4ecca3;background:#4ecca333}.capture-action.action-call{color:#00d4ff;background:#00d4ff33}.capture-action.action-raise{color:#ffd93d;background:#ffd93d33}.capture-action.action-allin{color:#ff9f1c;background:#ff9f1c33}.capture-details{display:flex;gap:.75rem;font-size:.8rem;color:#fff9}.capture-hand{font-family:monospace;font-size:.85rem;color:#fff;margin-top:.25rem}.suspicious-badge{font-size:.7rem;color:#ff6b6b;background:#ff6b6b33;padding:.2rem .5rem;border-radius:4px;margin-top:.5rem;display:inline-block}.pagination{display:flex;justify-content:center;align-items:center;gap:1rem;margin-top:1rem;padding-top:1rem;border-top:1px solid rgba(255,255,255,.1)}.pagination button{background:#4ecca333;color:#4ecca3;border:1px solid rgba(78,204,163,.5);padding:.4rem .8rem;border-radius:4px;cursor:pointer}.pagination button:disabled{opacity:.5;cursor:not-allowed}.pagination span{color:#ffffffb3;font-size:.9rem}.capture-detail{background:#0000004d;border-radius:8px;padding:1.5rem;overflow-y:auto;max-height:700px}.no-selection{display:flex;align-items:center;justify-content:center;height:100%;color:#ffffff80;font-style:italic}.detail-header{display:flex;justify-content:space-between;align-items:center;padding-bottom:1rem;border-bottom:1px solid rgba(255,255,255,.1);margin-bottom:1rem}.detail-header h3{margin:0;color:#fff}.detail-action{font-size:1rem;font-weight:700;padding:.3rem .75rem;border-radius:4px}.detail-action.action-fold{color:#ff6b6b;background:#ff6b6b33}.detail-action.action-check{color:#4ecca3;background:#4ecca333}.detail-action.action-call{color:#00d4ff;background:#00d4ff33}.detail-action.action-raise{color:#ffd93d;background:#ffd93d33}.detail-action.action-allin{color:#ff9f1c;background:#ff9f1c33}.detail-context{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:.75rem;margin-bottom:1.5rem}.context-item{background:#0f346080;padding:.75rem;border-radius:6px}.context-item label{display:block;font-size:.75rem;color:#fff9;margin-bottom:.25rem}.context-item span{font-size:.95rem;color:#fff;font-weight:500}.context-item.highlight{background:#ffd93d26;border:1px solid rgba(255,217,61,.3)}.context-item.highlight span{color:#ffd93d;font-weight:700}.detail-tabs{display:flex;gap:.5rem;margin-bottom:1rem}.detail-tabs button{background:#ffffff0d;color:#ffffffb3;border:1px solid rgba(255,255,255,.1);padding:.5rem 1rem;border-radius:4px;cursor:pointer;transition:all .2s}.detail-tabs button:hover{background:#ffffff1a}.detail-tabs button.active{background:#4ecca333;border-color:#4ecca3;color:#4ecca3}.detail-prompts,.replay-editor{display:flex;flex-direction:column;gap:1rem}.prompt-section{background:#0f34604d;border-radius:6px;padding:1rem}.prompt-section h4{margin:0 0 .5rem;color:#fffc;font-size:.9rem}.prompt-section pre{margin:0;background:#0000004d;padding:1rem;border-radius:4px;overflow-x:auto;font-size:.8rem;color:#ddd;white-space:pre-wrap;word-wrap:break-word;max-height:300px;overflow-y:auto}.prompt-section textarea{width:100%;background:#0000004d;color:#ddd;border:1px solid rgba(78,204,163,.3);border-radius:4px;padding:1rem;font-family:monospace;font-size:.8rem;resize:vertical}.prompt-section textarea:focus{outline:none;border-color:#4ecca3}.replay-settings,.interrogation-settings{display:flex;flex-wrap:wrap;gap:1rem;margin-bottom:1rem;padding:.75rem;background:#0003;border-radius:6px;align-items:center}.setting-group{display:flex;align-items:center;gap:.5rem}.setting-group label{font-size:.85rem;color:#ffffffb3}.setting-group select{background:#ffffff1a;border:1px solid rgba(255,255,255,.2);border-radius:4px;color:#fff;padding:.4rem .6rem;font-size:.85rem;cursor:pointer}.setting-group select:disabled{opacity:.5;cursor:not-allowed}.settings-note{font-size:.75rem;color:#ffffff80;font-style:italic}.replay-button{background:linear-gradient(135deg,#4ecca3,#3db892);color:#1a1a2e;border:none;padding:.75rem 1.5rem;border-radius:6px;font-weight:700;cursor:pointer;transition:all .2s;align-self:flex-start}.replay-button:hover{transform:translateY(-1px);box-shadow:0 4px 12px #4ecca34d}.replay-button:disabled{opacity:.6;cursor:not-allowed;transform:none}.replay-results{margin-top:1.5rem;border-top:1px solid rgba(255,255,255,.1);padding-top:1.5rem}.replay-comparison{display:grid;grid-template-columns:1fr 1fr;gap:1rem}@media (max-width: 900px){.replay-comparison{grid-template-columns:1fr}}.comparison-side{background:#0f34604d;border-radius:6px;padding:1rem}.comparison-side h4{margin:0 0 .5rem;color:#fffc;font-size:.85rem}.comparison-side pre{margin:0;background:#0000004d;padding:.75rem;border-radius:4px;font-size:.75rem;color:#ddd;white-space:pre-wrap;word-wrap:break-word;max-height:200px;overflow-y:auto}.replay-meta{margin-top:.75rem;font-size:.8rem;color:#ffffff80}.loading{text-align:center;padding:2rem;color:#fff9}.token-info{display:flex;flex-direction:column;gap:.5rem;padding:.75rem 1rem;background:#0f346080;border-radius:6px;margin-bottom:1rem;font-size:.8rem;color:#ffffffb3}.token-info-row{display:flex;flex-wrap:wrap;gap:.5rem}.token-info-row>span{background:#0003;padding:.25rem .5rem;border-radius:4px}.token-info .token-count{background:#0003;padding:.25rem .5rem;border-radius:4px;font-size:.85rem}.token-info .token-count.cached{color:#4ecca3}.token-info .token-count.input{color:#6eb5ff}.token-info .token-count.reasoning{color:#ff9f1c}.token-info .token-count.output{color:#c9a0dc}.token-info .token-count.total-in{color:#88d4ff;font-weight:600}.token-info .token-count.total-out{color:#e0b0ff;font-weight:600}.token-info .cost{color:#ffd93d;font-weight:600}.download-buttons{display:flex;gap:.75rem;margin:1rem 0}.download-button{background:#4ecca333;border:1px solid rgba(78,204,163,.4);color:#4ecca3;padding:.5rem 1rem;border-radius:6px;font-size:.85rem;cursor:pointer;transition:all .2s ease}.download-button:hover{background:#4ecca34d;border-color:#4ecca3}.conversation-history{border:1px solid rgba(78,204,163,.3)}.history-messages{display:flex;flex-direction:column;gap:.5rem;max-height:400px;overflow-y:auto}.history-message{background:#0003;border-radius:6px;padding:.75rem}.history-message.user{border-left:3px solid #00d4ff}.history-message.assistant{border-left:3px solid #4ecca3}.history-message.system{border-left:3px solid #ffd93d}.message-role{display:inline-block;font-size:.7rem;text-transform:uppercase;font-weight:700;padding:.15rem .4rem;border-radius:3px;margin-bottom:.5rem}.history-message.user .message-role{background:#00d4ff33;color:#00d4ff}.history-message.assistant .message-role{background:#4ecca333;color:#4ecca3}.history-message.system .message-role{background:#ffd93d33;color:#ffd93d}.history-message pre{margin:0;padding:0;background:transparent;font-size:.75rem;max-height:150px;overflow-y:auto}.raw-response{border:1px solid rgba(255,159,28,.3)}.raw-response summary{cursor:pointer;padding:.5rem 0}.raw-response summary h4{display:inline;margin:0;color:#ff9f1c}.raw-response summary:hover h4{text-decoration:underline}.raw-response pre{max-height:500px}.conversation-history-editor{border:1px solid rgba(78,204,163,.3)}.history-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem}.history-header h4{margin:0}.history-toggle{display:flex;align-items:center;gap:.5rem;cursor:pointer;font-size:.85rem;color:#fffc}.history-toggle input[type=checkbox]{width:1rem;height:1rem;cursor:pointer;accent-color:#4ecca3}.history-editor{display:flex;flex-direction:column;gap:.75rem}.history-editor.disabled{opacity:.5;pointer-events:none}.history-message-editor{display:grid;grid-template-columns:100px 1fr auto;gap:.5rem;align-items:start;background:#0003;padding:.75rem;border-radius:6px}.history-message-editor select{background:#0f3460cc;color:#eee;border:1px solid rgba(78,204,163,.3);padding:.5rem;border-radius:4px;font-size:.8rem}.history-message-editor select:focus{outline:none;border-color:#4ecca3}.history-message-editor textarea{background:#0000004d;color:#ddd;border:1px solid rgba(78,204,163,.3);border-radius:4px;padding:.5rem;font-family:monospace;font-size:.75rem;resize:vertical;min-height:60px}.history-message-editor textarea:focus{outline:none;border-color:#4ecca3}.remove-message{background:#ff6b6b33;color:#ff6b6b;border:1px solid rgba(255,107,107,.3);width:28px;height:28px;border-radius:4px;cursor:pointer;font-size:1.2rem;line-height:1;display:flex;align-items:center;justify-content:center}.remove-message:hover{background:#ff6b6b4d}.add-message{background:#4ecca31a;color:#4ecca3;border:1px dashed rgba(78,204,163,.5);padding:.5rem 1rem;border-radius:4px;cursor:pointer;font-size:.85rem;align-self:flex-start}.add-message:hover{background:#4ecca333}.history-disabled-notice{background:#ffd93d1a;border:1px solid rgba(255,217,61,.3);color:#ffd93de6;padding:.75rem;border-radius:4px;font-size:.85rem;font-style:italic}.replay-meta .history-used{color:#4ecca3}.replay-meta .history-skipped{color:#ff9f1c}.decision-analysis{background:#0f346080;border-radius:8px;padding:1rem;margin-bottom:1rem;border:1px solid rgba(255,255,255,.1)}.decision-analysis.mistake{background:#ff6b6b1a;border-color:#ff6b6b4d}.decision-analysis.correct{background:#4ecca31a;border-color:#4ecca34d}.decision-analysis h4{margin:0 0 .75rem;color:#fff;font-size:.9rem}.analysis-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:.75rem}.analysis-item{display:flex;flex-direction:column;gap:.25rem}.analysis-item label{font-size:.7rem;color:#fff9;text-transform:uppercase}.analysis-item span{font-size:.95rem;font-weight:600;color:#fff}.analysis-item span.positive{color:#4ecca3}.analysis-item span.negative{color:#ff6b6b}.analysis-item .opponent-positions{font-size:.75rem;font-weight:400;color:#fff9}.analysis-item .optimal-action{padding:.2rem .5rem;border-radius:4px;font-size:.8rem;display:inline-block;width:fit-content}.analysis-item .optimal-action.fold{background:#ff6b6b33;color:#ff6b6b}.analysis-item .optimal-action.call{background:#00d4ff33;color:#00d4ff}.analysis-item .optimal-action.raise{background:#ffd93d33;color:#ffd93d}.quality-badge{padding:.2rem .5rem;border-radius:4px;font-size:.75rem;display:inline-block;width:fit-content}.quality-badge.correct{background:#4ecca333;color:#4ecca3}.quality-badge.mistake{background:#ff6b6b33;color:#ff6b6b}.quality-badge.unknown{background:#ffffff1a;color:#fff9}.interrogation-chat{display:flex;flex-direction:column;height:100%;min-height:400px}.interrogation-context{background:#0f346080;border-radius:6px;padding:.75rem;margin-bottom:1rem}.interrogation-context summary{cursor:pointer;color:#fffc;font-weight:500}.interrogation-context .context-preview{margin-top:.75rem;display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:.5rem}.interrogation-context .context-row{display:flex;flex-direction:column}.interrogation-context .context-row .label{font-size:.7rem;color:#ffffff80;text-transform:uppercase}.interrogation-context .context-row .value{font-size:.9rem;color:#fff;font-weight:500}.interrogation-messages{flex:1;overflow-y:auto;display:flex;flex-direction:column;gap:.75rem;padding:1rem;background:#0003;border-radius:6px;margin-bottom:1rem;max-height:350px}.interrogation-message{padding:.75rem;border-radius:8px;max-width:85%;animation:messageSlide .3s ease-out}@keyframes messageSlide{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.interrogation-message.context{background:#ffd93d26;border-left:3px solid #ffd93d;align-self:center;max-width:100%}.interrogation-message.user{background:#00d4ff26;border-left:3px solid #00d4ff;align-self:flex-end}.interrogation-message.assistant{background:#4ecca326;border-left:3px solid #4ecca3;align-self:flex-start}.interrogation-message .message-header{margin-bottom:.5rem}.interrogation-message .message-role{font-size:.75rem;font-weight:600;text-transform:uppercase}.interrogation-message.context .message-role{color:#ffd93d}.interrogation-message.user .message-role{color:#00d4ff}.interrogation-message.assistant .message-role{color:#4ecca3}.interrogation-message .message-content{color:#ddd;font-size:.9rem;line-height:1.5;white-space:pre-wrap}.interrogation-message.loading{background:transparent;border:none}.typing-indicator{display:flex;gap:4px;padding:.5rem}.typing-indicator span{width:8px;height:8px;border-radius:50%;background:#4ecca3;animation:typing 1.4s infinite ease-in-out}.typing-indicator span:nth-child(1){animation-delay:0s}.typing-indicator span:nth-child(2){animation-delay:.2s}.typing-indicator span:nth-child(3){animation-delay:.4s}@keyframes typing{0%,80%,to{transform:scale(.6);opacity:.5}40%{transform:scale(1);opacity:1}}.interrogation-error{background:#ff6b6b33;border:1px solid #ff6b6b;color:#ff6b6b;padding:.75rem;border-radius:6px;margin-bottom:1rem;font-size:.85rem}.quick-questions{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center;margin-bottom:1rem}.quick-label{font-size:.8rem;color:#fff9}.quick-question-btn{background:#4ecca31a;color:#4ecca3;border:1px solid rgba(78,204,163,.3);padding:.4rem .75rem;border-radius:4px;font-size:.8rem;cursor:pointer;transition:all .2s}.quick-question-btn:hover{background:#4ecca333}.interrogation-input{display:flex;gap:.5rem}.interrogation-input input{flex:1;background:#0f3460cc;color:#eee;border:1px solid rgba(78,204,163,.3);padding:.75rem 1rem;border-radius:6px;font-size:.9rem}.interrogation-input input:focus{outline:none;border-color:#4ecca3}.interrogation-input button[type=submit]{background:linear-gradient(135deg,#4ecca3,#3db892);color:#1a1a2e;border:none;padding:.75rem 1.5rem;border-radius:6px;font-weight:700;cursor:pointer}.interrogation-input button[type=submit]:disabled{opacity:.6;cursor:not-allowed}.interrogation-input .reset-btn{background:#ff6b6b33;color:#ff6b6b;border:1px solid rgba(255,107,107,.3);padding:.75rem 1rem;border-radius:6px;cursor:pointer}.interrogation-input .reset-btn:hover{background:#ff6b6b4d}.login-form__container{background:var(--gradient-card);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-radius:var(--radius-3xl);border:1px solid var(--color-border-default);padding:var(--space-10);width:100%;max-width:420px;box-shadow:var(--shadow-card);position:relative;z-index:1;animation:loginFadeIn .6s var(--ease-out-expo)}@keyframes loginFadeIn{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}.login-form__container:before{content:"";position:absolute;top:0;left:var(--space-8);right:var(--space-8);height:1px;background:linear-gradient(90deg,transparent 0%,rgba(255,255,255,.06) 50%,transparent 100%)}.login-form__container h2{margin:0 0 var(--space-2) 0;font-family:var(--font-display);font-size:var(--font-size-3xl);font-weight:var(--font-weight-bold);text-align:center;letter-spacing:var(--letter-spacing-tight);background:var(--gradient-text-primary);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.login-form__subtitle{margin:0 0 var(--space-8) 0;text-align:center;color:var(--color-text-tertiary);font-family:var(--font-body);font-size:var(--font-size-md);letter-spacing:var(--letter-spacing-wide)}.login-form__content{display:flex;flex-direction:column;gap:var(--space-4)}.login-form__input{width:100%;padding:var(--space-4) var(--space-5);font-family:var(--font-body);font-size:var(--font-size-md);background:var(--color-bg-surface);border:1px solid var(--color-border-default);border-radius:var(--radius-lg);color:var(--color-text-primary);transition:var(--transition-all-slow);box-sizing:border-box}.login-form__input:hover{border-color:var(--color-border-hover)}.login-form__input:focus{outline:none;background:var(--color-bg-surface-hover);border-color:var(--color-border-focus);box-shadow:0 0 0 3px var(--color-gold-muted)}.login-form__input::placeholder{color:var(--color-text-disabled)}.login-form__input:disabled{opacity:.4;cursor:not-allowed}.login-form__error{padding:var(--space-3) var(--space-4);background:var(--color-ruby-muted);border:1px solid rgba(244,63,94,.25);border-radius:var(--radius-lg);color:var(--color-ruby);font-family:var(--font-body);font-size:var(--font-size-sm);text-align:center}.login-form__actions{display:flex;gap:var(--space-3);width:100%;margin-top:var(--space-2)}.login-form__button{flex:1;padding:var(--space-4) var(--space-6);font-family:var(--font-display);font-size:var(--font-size-md);font-weight:var(--font-weight-semibold);letter-spacing:var(--letter-spacing-wide);border:none;border-radius:var(--radius-lg);cursor:pointer;transition:var(--transition-all-slow);display:flex;align-items:center;justify-content:center;gap:var(--space-2);box-sizing:border-box;position:relative;overflow:hidden}.login-form__button--primary{background:var(--gradient-gold);color:var(--color-bg-void);box-shadow:var(--glow-gold),var(--shadow-md)}.login-form__button--primary:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);transition:left .5s ease}.login-form__button--primary:hover:not(:disabled):before{left:100%}.login-form__button--primary:hover:not(:disabled){transform:translateY(-2px);box-shadow:var(--glow-gold-strong),var(--shadow-lg)}.login-form__button--primary:active:not(:disabled){transform:translateY(0) scale(.98)}.login-form__button--primary:disabled{opacity:.4;cursor:not-allowed;box-shadow:none}.login-form__button--secondary{background:var(--color-bg-surface);color:var(--color-text-secondary);border:1px solid var(--color-border-default)}.login-form__button--secondary:hover:not(:disabled){background:var(--color-bg-surface-hover);border-color:var(--color-border-hover);color:var(--color-text-primary);transform:translateY(-2px)}.login-form__button--google{width:100%;background:#fff;color:#3c4043;border:1px solid rgba(255,255,255,.1);font-family:var(--font-body)}.login-form__button--google:hover:not(:disabled){background:#f8f9fa;transform:translateY(-2px);box-shadow:var(--shadow-md)}.login-form__button--google:disabled{opacity:.4;cursor:not-allowed}.login-form__divider{text-align:center;position:relative;margin:var(--space-6) 0}.login-form__divider span{background:var(--color-bg-secondary);padding:0 var(--space-4);color:var(--color-text-muted);font-family:var(--font-body);font-size:var(--font-size-sm);position:relative;z-index:1;letter-spacing:var(--letter-spacing-wide);text-transform:uppercase}.login-form__divider:before{content:"";position:absolute;top:50%;left:0;right:0;height:1px;background:var(--color-border-default)}.login-form__note{margin:var(--space-4) 0 0 0;font-family:var(--font-body);font-size:var(--font-size-sm);color:var(--color-text-muted);text-align:center;line-height:var(--line-height-relaxed)}@media (max-width: 480px){.login-form__container{padding:var(--space-8) var(--space-6)}.login-form__container h2{font-size:var(--font-size-2xl)}.login-form__actions{flex-direction:column}.login-form__button{width:100%}}.career-stats{padding:1rem;max-width:600px;margin:0 auto}.career-stats-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1rem;padding:3rem;color:#9ca3af}.loading-spinner{width:40px;height:40px;border:3px solid rgba(59,130,246,.2);border-top-color:#3b82f6;border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.career-stats-error{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1rem;padding:3rem;text-align:center}.error-icon{width:60px;height:60px;display:flex;align-items:center;justify-content:center;background:#ef444433;border:2px solid #ef4444;border-radius:50%;font-size:1.5rem;font-weight:700;color:#ef4444}.career-stats-error p{color:#9ca3af;margin:0}.retry-button{padding:.75rem 1.5rem;background:linear-gradient(135deg,#3b82f6,#2563eb);color:#fff;border:none;border-radius:8px;font-weight:600;cursor:pointer;transition:transform .2s,box-shadow .2s}.retry-button:hover{transform:translateY(-2px);box-shadow:0 4px 12px #3b82f666}.career-stats-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1rem;padding:3rem;text-align:center}.empty-icon{font-size:4rem;filter:grayscale(50%)}.career-stats-empty h2{color:#fff;margin:0}.career-stats-empty p{color:#9ca3af;margin:0}.start-playing-button{padding:.75rem 2rem;background:linear-gradient(135deg,gold,#f59e0b);color:#1a1a2e;border:none;border-radius:8px;font-weight:700;cursor:pointer;transition:transform .2s,box-shadow .2s}.start-playing-button:hover{transform:translateY(-2px);box-shadow:0 4px 12px #ffd70066}.stats-hero{display:flex;justify-content:center;gap:1rem;margin-bottom:1.5rem}.stat-card{flex:1;max-width:120px;padding:1.25rem 1rem;background:#ffffff0d;border-radius:12px;border:1px solid rgba(255,255,255,.1);text-align:center;transition:transform .2s,border-color .2s}.stat-card:hover{transform:translateY(-2px);border-color:#fff3}.stat-card.highlight{background:linear-gradient(135deg,#ffd70026,#f59e0b1a);border-color:#ffd7004d}.stat-card .stat-value{display:block;font-size:2rem;font-weight:700;color:#fff;line-height:1}.stat-card.highlight .stat-value{color:gold}.stat-card .stat-label{display:block;font-size:.75rem;color:#9ca3af;text-transform:uppercase;letter-spacing:.05em;margin-top:.5rem}.takeout-section{background:#ffffff08;border-radius:12px;padding:1.25rem;margin-bottom:1.5rem;border:1px solid rgba(255,255,255,.08)}.section-title{font-size:.875rem;font-weight:600;color:#9ca3af;text-transform:uppercase;letter-spacing:.05em;margin:0 0 1rem}.takeout-display{display:flex;align-items:center;gap:1.5rem}.takeout-count{display:flex;flex-direction:column;align-items:center;min-width:80px}.takeout-number{font-size:2.5rem;font-weight:700;color:#ef4444;line-height:1}.takeout-label{font-size:.7rem;color:#6b7280;text-transform:uppercase;text-align:center;margin-top:.25rem}.takeout-badges{display:flex;flex-wrap:wrap;gap:.25rem;flex:1}.takeout-badge{font-size:1.25rem;opacity:.8;transition:transform .2s,opacity .2s}.takeout-badge:hover{transform:scale(1.2);opacity:1}.takeout-overflow{display:flex;align-items:center;justify-content:center;padding:.25rem .5rem;background:#ef444433;border-radius:4px;font-size:.75rem;font-weight:600;color:#ef4444}.achievements-row{display:flex;justify-content:center;gap:1rem;margin-bottom:1.5rem;flex-wrap:wrap}.achievement{display:flex;flex-direction:column;align-items:center;padding:1rem;background:#ffffff08;border-radius:12px;border:1px solid rgba(255,255,255,.08);min-width:100px}.achievement-icon{font-size:1.5rem;margin-bottom:.25rem}.achievement-label{font-size:.7rem;color:#6b7280;text-transform:uppercase;letter-spacing:.03em}.achievement-value{font-size:1.125rem;font-weight:700;color:#fff;margin-top:.25rem}.history-section{background:#ffffff08;border-radius:12px;padding:1.25rem;margin-bottom:1.5rem;border:1px solid rgba(255,255,255,.08)}.tournament-list{display:flex;flex-direction:column;gap:.5rem}.tournament-row{display:flex;align-items:center;padding:.75rem 1rem;background:#ffffff08;border-radius:8px;transition:background .2s}.tournament-row:hover{background:#ffffff0f}.tournament-row.winner{background:#ffd7001a;border:1px solid rgba(255,215,0,.2)}.position-badge{font-weight:600;min-width:70px;color:#fff}.tournament-row.winner .position-badge{color:gold}.tournament-details{flex:1;display:flex;flex-direction:column;gap:.125rem}.tournament-hands{font-size:.875rem;color:#d1d5db}.eliminated-by{font-size:.75rem;color:#6b7280;font-style:italic}.tournament-date{font-size:.75rem;color:#6b7280}@media (max-width: 480px){.career-stats{padding:.75rem}.stats-hero{gap:.5rem}.stat-card{padding:1rem .5rem}.stat-card .stat-value{font-size:1.5rem}.takeout-display{flex-direction:column;gap:1rem}.achievements-row{gap:.5rem}.achievement{padding:.75rem;min-width:90px}}.badges-section{background:#ffffff08;border-radius:12px;padding:1.25rem;border:1px solid rgba(255,255,255,.08)}.badges-section .section-title{display:flex;align-items:center;justify-content:space-between}.badges-section .badge-count{font-size:.75rem;font-weight:400;color:#6b7280;text-transform:none}.badges-grid{display:flex;flex-wrap:wrap;gap:.5rem}.personality-badge{position:relative;width:48px;height:48px;border-radius:50%;background:linear-gradient(135deg,#374151,#1f2937);border:2px solid #4b5563;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s ease}.personality-badge:hover{transform:scale(1.1);border-color:#9ca3af;box-shadow:0 4px 12px #0000004d}.personality-badge.selected{border-color:gold;box-shadow:0 0 12px #ffd70066}.badge-initial{font-size:1.25rem;font-weight:700;color:#fff}.badge-count-indicator{position:absolute;bottom:-2px;right:-2px;background:#ef4444;color:#fff;font-size:.625rem;font-weight:700;padding:.125rem .25rem;border-radius:4px;min-width:18px;text-align:center}.badge-info{margin-top:1rem;padding:1rem;background:#ffd7001a;border:1px solid rgba(255,215,0,.3);border-radius:8px}.badge-info-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:.5rem}.badge-info-name{font-size:1rem;font-weight:600;color:gold}.badge-info-close{background:none;border:none;color:#9ca3af;font-size:1.25rem;cursor:pointer;padding:0;line-height:1}.badge-info-close:hover{color:#fff}.badge-info-details{display:flex;gap:1.5rem;font-size:.875rem;color:#d1d5db}.badges-empty{padding:1.5rem;text-align:center}.badges-empty p{color:#6b7280;margin:0;font-style:italic}@media (max-width: 480px){.personality-badge{width:40px;height:40px}.badge-initial{font-size:1rem}.badge-info-details{flex-direction:column;gap:.25rem}}.install-prompt{position:fixed;bottom:0;left:0;right:0;background:linear-gradient(135deg,#1a202c,#2d3748);border-top:1px solid rgba(220,38,38,.3);padding:12px 16px;display:flex;align-items:center;justify-content:space-between;gap:12px;z-index:9999;box-shadow:0 -4px 20px #0000004d;animation:slideUp .3s ease-out}@keyframes slideUp{0%{transform:translateY(100%);opacity:0}to{transform:translateY(0);opacity:1}}.install-prompt__content{display:flex;align-items:center;gap:12px;flex:1;min-width:0}.install-prompt__icon{width:48px;height:48px;border-radius:12px;flex-shrink:0}.install-prompt__text{display:flex;flex-direction:column;gap:2px;min-width:0}.install-prompt__text strong{color:#fff;font-size:14px;font-weight:600}.install-prompt__text span{color:#a0aec0;font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.install-prompt__actions{display:flex;gap:8px;flex-shrink:0}.install-prompt__button{padding:8px 16px;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease;border:none}.install-prompt__button--dismiss{background:transparent;color:#a0aec0}.install-prompt__button--dismiss:hover{color:#fff}.install-prompt__button--install{background:linear-gradient(135deg,#dc2626,#b91c1c);color:#fff;box-shadow:0 2px 8px #dc26264d}.install-prompt__button--install:hover{background:linear-gradient(135deg,#ef4444,#dc2626);transform:translateY(-1px);box-shadow:0 4px 12px #dc262666}.install-prompt__button--install:active{transform:translateY(0)}@media (max-width: 480px){.install-prompt{flex-direction:column;gap:12px;padding:16px}.install-prompt__content{width:100%}.install-prompt__actions{width:100%;justify-content:flex-end}.install-prompt__button{flex:1}}:root{--font-display: "Outfit", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-mono: "JetBrains Mono", "SF Mono", Consolas, monospace;--font-body: "Outfit", -apple-system, BlinkMacSystemFont, sans-serif;--color-bg-void: #050508;--color-bg-primary: #0a0b10;--color-bg-secondary: #0f1118;--color-bg-tertiary: #151820;--color-bg-dark: #030305;--color-bg-surface: rgba(255, 255, 255, .03);--color-bg-surface-hover: rgba(255, 255, 255, .06);--color-bg-surface-active: rgba(255, 255, 255, .08);--color-bg-elevated: rgba(20, 22, 30, .95);--color-bg-overlay: rgba(0, 0, 0, .95);--color-bg-card: linear-gradient(145deg, rgba(20, 22, 28, .9) 0%, rgba(12, 14, 18, .95) 100%);--color-gold: #d4a574;--color-gold-light: #e8c9a0;--color-gold-bright: #f5d89a;--color-gold-dark: #a67c4a;--color-gold-muted: rgba(212, 165, 116, .15);--color-emerald: #34d399;--color-emerald-dark: #059669;--color-emerald-muted: rgba(52, 211, 153, .15);--color-ruby: #f43f5e;--color-ruby-dark: #be123c;--color-ruby-muted: rgba(244, 63, 94, .15);--color-sapphire: #3b82f6;--color-sapphire-dark: #1d4ed8;--color-sapphire-muted: rgba(59, 130, 246, .15);--color-amethyst: #a855f7;--color-amethyst-dark: #7c3aed;--color-amethyst-muted: rgba(168, 85, 247, .15);--color-amber: #f59e0b;--color-amber-dark: #d97706;--color-amber-muted: rgba(245, 158, 11, .15);--color-cyan: #22d3ee;--color-rose: #fb7185;--color-green: var(--color-emerald);--color-green-dark: var(--color-emerald-dark);--color-blue: var(--color-sapphire);--color-blue-dark: var(--color-sapphire-dark);--color-orange: var(--color-amber);--color-orange-dark: var(--color-amber-dark);--color-red: var(--color-ruby);--color-red-dark: var(--color-ruby-dark);--color-purple: var(--color-amethyst);--color-purple-dark: var(--color-amethyst-dark);--color-pink: #ec4899;--color-yellow: #facc15;--color-text-primary: #f8fafc;--color-text-secondary: rgba(248, 250, 252, .72);--color-text-tertiary: rgba(248, 250, 252, .56);--color-text-muted: rgba(248, 250, 252, .4);--color-text-disabled: rgba(248, 250, 252, .28);--color-text-gold: var(--color-gold-light);--color-border-default: rgba(255, 255, 255, .06);--color-border-hover: rgba(255, 255, 255, .12);--color-border-focus: rgba(212, 165, 116, .4);--color-border-gold: rgba(212, 165, 116, .25);--color-border-glow: rgba(212, 165, 116, .5);--gradient-bg-main: linear-gradient(165deg, #0a0b10 0%, #0f1118 25%, #0a0b10 50%, #080910 100% );--gradient-bg-radial: radial-gradient( ellipse 80% 50% at 50% -20%, rgba(212, 165, 116, .08) 0%, transparent 50% );--gradient-bg-subtle: radial-gradient( circle at 30% 20%, rgba(212, 165, 116, .04) 0%, transparent 40% );--gradient-card: linear-gradient(145deg, rgba(25, 28, 35, .8) 0%, rgba(15, 17, 22, .9) 100% );--gradient-card-hover: linear-gradient(145deg, rgba(30, 34, 42, .85) 0%, rgba(20, 22, 28, .9) 100% );--gradient-gold: linear-gradient(135deg, var(--color-gold) 0%, var(--color-gold-dark) 100%);--gradient-gold-shine: linear-gradient(135deg, var(--color-gold-bright) 0%, var(--color-gold) 50%, var(--color-gold-dark) 100% );--gradient-emerald: linear-gradient(135deg, var(--color-emerald) 0%, var(--color-emerald-dark) 100%);--gradient-sapphire: linear-gradient(135deg, var(--color-sapphire) 0%, var(--color-sapphire-dark) 100%);--gradient-ruby: linear-gradient(135deg, var(--color-ruby) 0%, var(--color-ruby-dark) 100%);--gradient-amethyst: linear-gradient(135deg, var(--color-amethyst) 0%, var(--color-amethyst-dark) 100%);--gradient-amber: linear-gradient(135deg, var(--color-amber) 0%, var(--color-amber-dark) 100%);--gradient-green: var(--gradient-emerald);--gradient-blue: var(--gradient-sapphire);--gradient-red: var(--gradient-ruby);--gradient-purple: var(--gradient-amethyst);--gradient-orange: var(--gradient-amber);--gradient-pink: linear-gradient(135deg, #ec4899 0%, #be185d 100%);--gradient-text-primary: linear-gradient(135deg, var(--color-gold-bright), var(--color-gold));--gradient-text-shine: linear-gradient(90deg, var(--color-gold-dark) 0%, var(--color-gold-bright) 50%, var(--color-gold-dark) 100% );--gradient-text-emerald: linear-gradient(135deg, var(--color-emerald), var(--color-cyan));--gradient-text-themed: linear-gradient(135deg, var(--color-amber), var(--color-rose));--space-0: 0;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 20px;--space-6: 24px;--space-8: 32px;--space-10: 40px;--space-12: 48px;--space-16: 64px;--space-20: 80px;--font-size-xs: 11px;--font-size-sm: 13px;--font-size-base: 15px;--font-size-md: 17px;--font-size-lg: 19px;--font-size-xl: 22px;--font-size-2xl: 26px;--font-size-3xl: 32px;--font-size-4xl: 40px;--font-size-5xl: 48px;--font-size-6xl: 60px;--font-size-7xl: 72px;--font-weight-light: 300;--font-weight-normal: 400;--font-weight-medium: 500;--font-weight-semibold: 600;--font-weight-bold: 700;--font-weight-extrabold: 800;--line-height-none: 1;--line-height-tight: 1.1;--line-height-snug: 1.25;--line-height-normal: 1.4;--line-height-relaxed: 1.6;--letter-spacing-tight: -.02em;--letter-spacing-normal: 0;--letter-spacing-wide: .025em;--letter-spacing-wider: .05em;--letter-spacing-widest: .12em;--radius-sm: 4px;--radius-md: 8px;--radius-lg: 12px;--radius-xl: 16px;--radius-2xl: 20px;--radius-3xl: 28px;--radius-4xl: 36px;--radius-full: 9999px;--shadow-sm: 0 2px 8px rgba(0, 0, 0, .4);--shadow-md: 0 4px 16px rgba(0, 0, 0, .5);--shadow-lg: 0 8px 32px rgba(0, 0, 0, .6);--shadow-xl: 0 12px 48px rgba(0, 0, 0, .7);--shadow-2xl: 0 24px 64px rgba(0, 0, 0, .8);--shadow-inset: inset 0 1px 2px rgba(0, 0, 0, .4);--shadow-inset-lg: inset 0 2px 8px rgba(0, 0, 0, .5);--glow-gold: 0 0 20px rgba(212, 165, 116, .25), 0 0 40px rgba(212, 165, 116, .1);--glow-gold-strong: 0 0 30px rgba(212, 165, 116, .4), 0 0 60px rgba(212, 165, 116, .2);--glow-emerald: 0 0 20px rgba(52, 211, 153, .3), 0 0 40px rgba(52, 211, 153, .15);--glow-sapphire: 0 0 20px rgba(59, 130, 246, .3), 0 0 40px rgba(59, 130, 246, .15);--glow-ruby: 0 0 20px rgba(244, 63, 94, .3), 0 0 40px rgba(244, 63, 94, .15);--glow-amethyst: 0 0 20px rgba(168, 85, 247, .3), 0 0 40px rgba(168, 85, 247, .15);--glow-amber: 0 0 20px rgba(245, 158, 11, .3), 0 0 40px rgba(245, 158, 11, .15);--shadow-green: var(--glow-emerald);--shadow-blue: var(--glow-sapphire);--shadow-orange: var(--glow-amber);--shadow-red: var(--glow-ruby);--shadow-purple: var(--glow-amethyst);--shadow-pink: 0 0 20px rgba(236, 72, 153, .3);--shadow-card: 0 4px 6px rgba(0, 0, 0, .3), 0 10px 20px rgba(0, 0, 0, .25), inset 0 1px 0 rgba(255, 255, 255, .04);--shadow-card-hover: 0 8px 16px rgba(0, 0, 0, .4), 0 16px 32px rgba(0, 0, 0, .3), 0 0 0 1px rgba(212, 165, 116, .1), inset 0 1px 0 rgba(255, 255, 255, .06);--z-base: 1;--z-dropdown: 100;--z-sticky: 150;--z-modal: 200;--z-toast: 300;--z-nav: 400;--z-overlay: 1000;--ease-out-expo: cubic-bezier(.16, 1, .3, 1);--ease-out-back: cubic-bezier(.34, 1.56, .64, 1);--ease-in-out-smooth: cubic-bezier(.4, 0, .2, 1);--transition-fast: .15s var(--ease-in-out-smooth);--transition-base: .25s var(--ease-in-out-smooth);--transition-slow: .4s var(--ease-out-expo);--transition-slower: .6s var(--ease-out-expo);--transition-all-fast: all .15s var(--ease-in-out-smooth);--transition-all-base: all .25s var(--ease-in-out-smooth);--transition-all-slow: all .4s var(--ease-out-expo);--transition-transform: transform .3s var(--ease-out-expo);--container-xs: 400px;--container-sm: 520px;--container-md: 680px;--container-lg: 900px;--container-xl: 1100px;--container-2xl: 1400px;--breakpoint-mobile: 640px;--breakpoint-tablet: 1024px;--breakpoint-desktop: 1280px;--safe-area-top: env(safe-area-inset-top);--safe-area-bottom: env(safe-area-inset-bottom);--safe-area-left: env(safe-area-inset-left);--safe-area-right: env(safe-area-inset-right)}*{font-family:var(--font-body)}h1,h2,h3,h4,h5,h6{font-family:var(--font-display);letter-spacing:var(--letter-spacing-tight)}.btn-icon{display:flex;align-items:center;justify-content:center;gap:var(--space-2);background:var(--color-bg-surface);border:1px solid var(--color-border-default);color:var(--color-text-secondary);padding:var(--space-2) var(--space-4);border-radius:var(--radius-lg);cursor:pointer;font-family:var(--font-body);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);transition:var(--transition-all-base);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.btn-icon:hover{background:var(--color-bg-surface-hover);border-color:var(--color-border-hover);color:var(--color-text-primary);transform:translate(-2px)}.btn-icon:active{transform:translate(-2px) scale(.98)}.btn-primary{position:relative;background:var(--gradient-gold);color:var(--color-bg-void);border:none;padding:var(--space-3) var(--space-6);border-radius:var(--radius-lg);font-family:var(--font-display);font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);letter-spacing:var(--letter-spacing-wide);cursor:pointer;box-shadow:var(--glow-gold),var(--shadow-md);transition:var(--transition-all-slow);overflow:hidden}.btn-primary:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);transition:left .5s ease}.btn-primary:hover:before{left:100%}.btn-primary:hover{transform:translateY(-2px);box-shadow:var(--glow-gold-strong),var(--shadow-lg)}.btn-primary:active{transform:translateY(0) scale(.98)}.btn-primary:disabled{opacity:.4;cursor:not-allowed;transform:none;box-shadow:none}.btn-secondary{position:relative;background:var(--gradient-emerald);color:var(--color-bg-void);border:none;padding:var(--space-3) var(--space-6);border-radius:var(--radius-lg);font-family:var(--font-display);font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);letter-spacing:var(--letter-spacing-wide);cursor:pointer;box-shadow:var(--glow-emerald),var(--shadow-md);transition:var(--transition-all-slow)}.btn-secondary:hover{transform:translateY(-2px);box-shadow:0 0 30px #34d39966,var(--shadow-lg)}.btn-secondary:active{transform:translateY(0) scale(.98)}.btn-danger{background:var(--gradient-ruby);color:var(--color-text-primary);border:none;padding:var(--space-3) var(--space-6);border-radius:var(--radius-lg);font-family:var(--font-display);font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);cursor:pointer;box-shadow:var(--glow-ruby);transition:var(--transition-all-slow)}.btn-danger:hover{transform:translateY(-2px);box-shadow:0 0 30px #f43f5e66}.btn-ghost{background:transparent;border:1px solid var(--color-border-default);color:var(--color-text-secondary);padding:var(--space-3) var(--space-5);border-radius:var(--radius-lg);font-family:var(--font-body);font-weight:var(--font-weight-medium);cursor:pointer;transition:var(--transition-all-base)}.btn-ghost:hover{background:var(--color-bg-surface);border-color:var(--color-border-hover);color:var(--color-text-primary)}.glass{background:#0f1118d9;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border:1px solid var(--color-border-default)}.glass-light{background:#ffffff08;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid var(--color-border-default)}.gradient-text{background:var(--gradient-text-primary);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.gradient-text-shine{background:var(--gradient-text-shine);background-size:200% 100%;-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;animation:textShine 3s ease-in-out infinite}@keyframes textShine{0%,to{background-position:0% 50%}50%{background-position:100% 50%}}.premium-card{background:var(--gradient-card);border:1px solid var(--color-border-default);border-radius:var(--radius-2xl);box-shadow:var(--shadow-card);transition:var(--transition-all-slow)}.premium-card:hover{background:var(--gradient-card-hover);border-color:var(--color-border-gold);box-shadow:var(--shadow-card-hover);transform:translateY(-4px)}.ambient-glow{position:relative}.ambient-glow:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:var(--gradient-bg-radial);pointer-events:none;z-index:0}.safe-area-bottom{padding-bottom:max(var(--space-4),var(--safe-area-bottom))}.safe-area-top{padding-top:max(var(--space-4),var(--safe-area-top))}.focus-ring:focus-visible{outline:none;box-shadow:0 0 0 2px var(--color-bg-void),0 0 0 4px var(--color-gold)}.noise-texture{position:relative}.noise-texture:after{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noise'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noise)'/%3E%3C/svg%3E");opacity:.015;pointer-events:none;z-index:1}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeOut{0%{opacity:1}to{opacity:0}}@keyframes slideUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}@keyframes slideDown{0%{transform:translateY(0)}to{transform:translateY(100%)}}@keyframes slideInLeft{0%{transform:translate(-100%);opacity:0}to{transform:translate(0);opacity:1}}@keyframes slideInRight{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}@keyframes floatIn{0%{opacity:0;transform:translateY(-20px) scale(.9)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes floatOut{0%{opacity:1;transform:translateY(0) scale(1)}to{opacity:0;transform:translateY(-20px) scale(.9)}}@keyframes iconFloat{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}@keyframes slotMachine{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}@keyframes allInPulse{0%,to{box-shadow:0 4px 12px #9c27b066}50%{box-shadow:0 4px 24px #9c27b099}}@keyframes glowPulse{0%,to{box-shadow:0 0 10px currentColor}50%{box-shadow:0 0 20px currentColor}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes spinSlow{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.animate-fade-in{animation:fadeIn .3s ease-out}.animate-fade-in-up{animation:fadeInUp .5s ease-out}.animate-fade-in-down{animation:fadeInDown .3s ease-out}.animate-slide-up{animation:slideUp .3s ease-out}.animate-slide-down{animation:slideDown .3s ease-out}.animate-float-in{animation:floatIn .3s ease-out}.animate-float-out{animation:floatOut .3s ease-in forwards}.animate-pulse{animation:pulse 2s infinite}.animate-spin{animation:spin 4s linear infinite}.animate-spin-slow{animation:spinSlow 8s linear infinite}.animate-icon-float{animation:iconFloat 3s ease-in-out infinite}.duration-fast{animation-duration:.15s}.duration-normal{animation-duration:.3s}.duration-slow{animation-duration:.5s}.delay-100{animation-delay:.1s}.delay-200{animation-delay:.2s}.delay-300{animation-delay:.3s}.delay-500{animation-delay:.5s}#root{min-height:100vh;background:var(--color-bg-dark)}.logo{height:6em;padding:1.5em;will-change:filter;transition:filter .3s}.logo:hover{filter:drop-shadow(0 0 2em #646cffaa)}.logo.react:hover{filter:drop-shadow(0 0 2em #61dafbaa)}@keyframes logo-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media (prefers-reduced-motion: no-preference){a:nth-of-type(2) .logo{animation:logo-spin infinite 20s linear}}.card{padding:2em}.read-the-docs{color:#888}@keyframes loading{0%{transform:translate(-100%)}to{transform:translate(100%)}}.app-nav{position:fixed;z-index:var(--z-nav);display:flex;gap:var(--space-3)}.app-nav--left{top:var(--space-3);left:var(--space-3)}.app-nav--right{top:var(--space-3);right:var(--space-3)}
