:root{color-scheme:dark;font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,sans-serif;line-height:1.5;--gold: #d4a44c;--gold-dim: #a07830;--green: #1a4a2e;--green-dark: #0f2a1a;--red: #c0392b;--red-suit: #e74c3c;--card-bg: #1c1c2e;--card-border: #2a2a40;--surface: #111118;--surface-raised: #1a1a24;--text: #f0e8d8;--text-dim: rgba(240, 232, 216, .5);--text-muted: rgba(240, 232, 216, .35)}*{box-sizing:border-box}html,body,#root{margin:0;min-height:100vh;background:var(--surface);color:var(--text)}.header{background:linear-gradient(135deg,#1a1008,#0f1a10,#1a0a0a);border-bottom:1px solid var(--gold-dim);padding:2rem 1.5rem 1.5rem}.header-content{max-width:48rem;margin:0 auto;display:flex;align-items:center;justify-content:space-between}.title{margin:0;font-size:2rem;font-weight:700;letter-spacing:-.03em;color:var(--gold);line-height:1.1}.subtitle{margin:.25rem 0 0;font-size:.85rem;color:var(--text-dim);letter-spacing:.08em;text-transform:uppercase}.suits{font-size:1.5rem;letter-spacing:.3em;color:var(--gold-dim);opacity:.6}.suits span:nth-child(2),.suits span:nth-child(4){color:var(--red-suit)}.tabs{max-width:48rem;margin:0 auto;display:flex;gap:0;padding:0 1.5rem;border-bottom:1px solid var(--card-border)}.tab{background:none;border:none;color:var(--text-dim);font-family:inherit;font-size:.8rem;letter-spacing:.06em;text-transform:uppercase;padding:.75rem 1.25rem;cursor:pointer;border-bottom:2px solid transparent;transition:color .2s,border-color .2s}.tab:hover{color:var(--text)}.tab.active{color:var(--gold);border-bottom-color:var(--gold)}.main{max-width:48rem;margin:0 auto;padding:1.5rem;min-height:60vh}.section-header{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:1.25rem}.section-header h2{margin:0;font-size:1.15rem;font-weight:600;letter-spacing:-.01em}.count{font-size:.75rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.1em}.song-list{display:flex;flex-direction:column;gap:.5rem}.song-card{display:flex;align-items:center;justify-content:space-between;padding:.875rem 1rem;background:var(--surface-raised);border:1px solid var(--card-border);border-radius:.5rem;transition:border-color .2s,background .2s}.song-card:hover{border-color:var(--gold-dim);background:#d4a44c0a}.song-title{margin:0;font-size:.95rem;font-weight:600;color:var(--text)}.song-meta{margin:.15rem 0 0;font-size:.78rem;color:var(--text-dim)}.feat{color:var(--gold-dim)}.song-year{font-size:.75rem;color:var(--text-muted);font-variant-numeric:tabular-nums;flex-shrink:0;margin-left:1rem}.gambler-section{padding-top:0}.balance-bar{display:flex;align-items:center;justify-content:space-between;padding:.75rem 1rem;background:var(--green-dark);border:1px solid rgba(212,164,76,.2);border-radius:.5rem;margin-bottom:1.25rem}.balance-label{display:block;font-size:.65rem;text-transform:uppercase;letter-spacing:.12em;color:var(--text-muted)}.balance-amount{font-size:1.4rem;font-weight:700;color:var(--gold);font-variant-numeric:tabular-nums}.bet-controls{display:flex;align-items:center;gap:.75rem}.bet-label{font-size:.78rem;color:var(--text-dim)}.bet-select{background:var(--surface);color:var(--text);border:1px solid var(--card-border);border-radius:.25rem;padding:.25rem .4rem;font-family:inherit;font-size:.85rem;margin-left:.25rem}.table{background:var(--green-dark);border:2px solid var(--green);border-radius:.75rem;padding:1.5rem}.hand-area{margin-bottom:1rem}.hand-area:last-of-type{margin-bottom:0}.hand-label{font-size:.7rem;text-transform:uppercase;letter-spacing:.1em;color:var(--text-muted);margin-bottom:.5rem}.cards{display:flex;gap:.5rem;flex-wrap:wrap}.card-face{width:3.2rem;height:4.5rem;display:flex;align-items:center;justify-content:center;font-size:1rem;font-weight:700;border-radius:.375rem;background:#faf8f0;box-shadow:0 2px 6px #0006;-webkit-user-select:none;user-select:none}.card-face.black{color:#1a1a2e}.card-face.red{color:var(--red-suit)}.card-hidden{background:linear-gradient(135deg,#2a1a3e,#1a2a3e);color:var(--gold-dim);font-size:1.4rem}.result-banner{text-align:center;padding:.75rem;margin:.75rem 0;background:#00000040;border-radius:.375rem}.result-emoji{font-size:1.2rem;margin-right:.5rem}.result-text{font-weight:600;font-size:.95rem;color:var(--gold)}.action-buttons{display:flex;gap:.5rem;margin-top:1rem}.quote-block{text-align:center;padding:2rem 1.5rem;margin-top:1rem;background:var(--surface-raised);border:1px solid var(--card-border);border-radius:.5rem}.quote{margin:0;font-size:1.15rem;font-style:italic;color:var(--text);line-height:1.6}.quote-attr{margin:.75rem 0 1.25rem;font-size:.75rem;color:var(--text-muted);letter-spacing:.08em;text-transform:uppercase}.fact-card{background:var(--surface-raised);border:1px solid var(--card-border);border-radius:.5rem;padding:2rem 1.5rem;text-align:center}.fact-number{font-size:3rem;font-weight:700;color:var(--gold-dim);opacity:.3;line-height:1;margin-bottom:.5rem;font-variant-numeric:tabular-nums}.fact-text{font-size:1.05rem;line-height:1.6;color:var(--text);margin:0 0 1.5rem}.fact-dots{display:flex;justify-content:center;gap:.4rem;margin-top:1.25rem}.dot{width:.4rem;height:.4rem;border-radius:50%;background:var(--card-border);transition:background .2s}.dot.active{background:var(--gold)}.btn{font-family:inherit;font-size:.8rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;border:none;border-radius:.375rem;padding:.6rem 1.25rem;cursor:pointer;transition:background .15s,transform .1s}.btn:active{transform:scale(.97)}.btn-deal{background:var(--gold);color:#1a1008}.btn-deal:hover{background:#e0b45c}.btn-hit{background:var(--red);color:#fff;flex:1}.btn-hit:hover{background:#d44637}.btn-stand{background:var(--green);color:var(--gold);flex:1;border:1px solid var(--gold-dim)}.btn-stand:hover{background:#1e5a38}.btn-quote,.btn-next{background:transparent;color:var(--gold-dim);border:1px solid var(--gold-dim)}.btn-quote:hover,.btn-next:hover{background:#d4a44c14}.footer{max-width:48rem;margin:0 auto;padding:2rem 1.5rem;text-align:center;border-top:1px solid var(--card-border)}.footer p{margin:0;font-size:.78rem;color:var(--text-muted);font-style:italic;letter-spacing:.02em}
