:root{--dark:#071814;--deep:#091f19;--panel:#0c231c;--edge:#375346;--gold:#d9b775;--gold2:#f9dc9a;--text:#f1ebde;--muted:#a9b9af;--green:#238457;--red:#e27a77;--shadow:0 13px 45px #0007}*{box-sizing:border-box}body{margin:0;color:var(--text);font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;background:radial-gradient(ellipse at 70% -12%,#36563b55,transparent 45%),radial-gradient(ellipse at 10% 100%,#76562823,transparent 34%),#04110e;min-height:100vh}button,input,select{font:inherit}button{cursor:pointer}a{color:var(--gold2)}.serif,.brand-text,h1,h2,h3{font-family:Georgia,'Times New Roman',serif}.boot{text-align:center;padding:20vh 0}.spade{color:var(--gold);font-size:4rem}.shell{max-width:1200px;margin:auto;padding:0 17px 94px}.topbar{position:sticky;top:0;z-index:10;background:#061811f5;border-bottom:1px solid #baa16d44;backdrop-filter:blur(18px)}.top-inner{display:flex;align-items:center;justify-content:space-between;gap:12px;max-width:1200px;margin:auto;padding:10px 18px}.brand{display:flex;align-items:center;gap:9px;color:var(--gold2);font-weight:600;letter-spacing:.035em}.brand .mark{font-size:30px;color:var(--gold)}.brand-text{font-size:1.16rem;white-space:nowrap}.brand small{display:block;font-size:.53rem;letter-spacing:3px;text-align:center;margin-top:1px;color:#dbcfb7}.account{display:flex;align-items:center;gap:9px}.mini-avatar{width:39px;height:39px;border-radius:50%;border:2px solid var(--gold);object-fit:cover}.chip-money{color:var(--gold2);font-size:.82rem;font-weight:800;white-space:nowrap}.nav{display:flex;gap:4px}.nav button{border:0;background:transparent;color:#e7e3d6;padding:10px 13px;border-radius:9px}.nav button:hover,.nav button.active{background:#c3a36926;color:var(--gold2)}.bottom-nav{display:none}.container{padding-top:25px}.welcome{padding:55px 0 10px;text-align:center;min-height:65vh;background:radial-gradient(circle at 50% 40%,#35563833,transparent 55%)}.welcome .main-logo{font-size:66px;color:var(--gold2);text-shadow:0 0 30px #d2aa6470}.welcome h1{font-size:clamp(2.3rem,6vw,4.4rem);letter-spacing:.04em;color:var(--gold2);margin:9px 0}.eyebrow{color:var(--gold);letter-spacing:.21em;font-size:.68rem;font-weight:750}.lede{max-width:540px;margin:19px auto 25px;color:var(--muted);line-height:1.7}.actions{display:flex;flex-wrap:wrap;gap:10px;justify-content:center}.btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;border-radius:10px;border:1px solid #b39c6666;padding:12px 16px;color:var(--text);background:#142a22;font-weight:750;min-height:44px}.btn:hover{filter:brightness(1.11)}.btn:focus-visible,.nav button:focus-visible{outline:2px solid #fff}.btn.primary{background:linear-gradient(135deg,#f3d38e,#bd8e3d);border-color:#eac783;color:#251b0b}.btn.green{background:linear-gradient(135deg,#247b52,#115435);border-color:#3cbd83}.btn.danger{background:#521b20;border-color:#a85156}.btn.ghost{background:transparent}.btn.small{padding:8px 11px;min-height:36px;font-size:.82rem}.btn.block{width:100%}.btn:disabled{opacity:.55;cursor:not-allowed}.cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}.card{padding:18px;border:1px solid #bfa5703e;border-radius:17px;background:linear-gradient(145deg,#112a21f7,#071a16f7);box-shadow:var(--shadow)}.card h3,.card h2{margin:0 0 12px;color:#f4dfa9}.card p{color:var(--muted);line-height:1.55}.dark{background:#071914;border:1px solid #395143;border-radius:12px;padding:13px}.outline{border:1px solid #415a4c;border-radius:13px}.panel-title{display:flex;align-items:center;justify-content:space-between;margin:8px 0 20px;gap:10px}.panel-title h1{font-size:clamp(1.6rem,4vw,2.25rem);margin:4px 0}.muted,.help,.hint{color:var(--muted)}.help{font-size:.78rem}.hint{font-size:.8rem}.auth{max-width:470px;margin:38px auto}.auth h2{text-align:center;color:var(--gold2);font-size:1.85rem}.authbrand{text-align:center;color:var(--gold);margin-bottom:20px}.field{display:block;margin-bottom:13px}.field label{display:block;font-size:.83rem;font-weight:650;margin-bottom:6px;color:#e1d9c5}.field input,.field select,.textarea{width:100%;border:1px solid #395c4c;border-radius:10px;color:#fff;background:#081813;padding:12px 13px;outline:none;min-height:44px}.field input:focus{border-color:var(--gold)}.row{display:flex;gap:11px;align-items:center}.row.between{justify-content:space-between}.stack{display:grid;gap:13px}.two{display:grid;grid-template-columns:1fr 1fr;gap:15px}.three{display:grid;grid-template-columns:repeat(3,1fr);gap:13px}.chips-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.chip-pick{border-radius:10px;border:1px solid #526b54;background:#0c1e18;padding:9px;display:flex;align-items:center;gap:7px;color:#eee;font-weight:650;font-size:.85rem}.chip-pick:hover{border-color:var(--gold)}.chip-pick img{width:34px;height:34px;border-radius:50%}.chip-cell{display:flex;align-items:center;gap:7px;background:#061611;border-radius:12px;padding:9px}.chip-cell img{height:48px;width:48px}.chip-cell b{display:block}.notice{border-left:3px solid #d0aa65;background:#997d3821;padding:12px 14px;border-radius:10px;font-size:.88rem;line-height:1.5}.notice.success{border-color:#41a87c;background:#187a4a29}.notice.warning{border-color:#d2ab5b}.notice.error{border-color:#cf6868;background:#90272c26}.status{font-size:.68rem;padding:5px 8px;border:1px solid #d6a95166;border-radius:50px;color:#f3d08a;background:#825e1b25;white-space:nowrap}.status.approved,.status.finished{color:#72e0a2;border-color:#237e52;background:#16825526}.status.rejected{color:#ffa1a1;border-color:#a44a4a;background:#8d393926}.status.pending{color:#ffd185}.avatar{width:72px;height:72px;object-fit:cover;border:3px solid var(--gold);border-radius:50%}.avatar.sm{width:44px;height:44px;border-width:2px}.avatar.lg{height:120px;width:120px}.avatar-select{display:grid;grid-template-columns:repeat(5,1fr);gap:7px}.avatar-btn{padding:5px 2px;border:1px solid #435649;border-radius:13px;background:#091c16;color:#d4dacd;font-size:.7rem}.avatar-btn img{width:100%;max-width:90px;border-radius:50%;border:2px solid transparent}.avatar-btn.selected{border-color:#e5c36f;background:#594b2729}.avatar-btn.selected img{border-color:var(--gold)}.tabs{display:flex;gap:5px;margin-bottom:12px}.tabs button{flex:1;min-height:43px;padding:8px 6px;border-radius:9px;background:#0a2019;border:1px solid #395547;color:#ccd5c7;font-weight:700;font-size:.82rem}.tabs button.on{background:linear-gradient(135deg,#eccb88,#b9924a);color:#261e0e}.big-number{font-size:2rem;color:var(--gold2);font-weight:780;line-height:1.2}.metric{min-width:0}.metric span{font-size:.72rem;color:var(--muted);display:block}.metric b{font-size:1.2rem;color:var(--gold2)}.profile-top{display:flex;align-items:center;gap:14px}.profile-top h2{margin:0 0 4px;color:var(--gold2)}.form-actions{display:flex;gap:9px;justify-content:flex-end;margin-top:16px}.list-item{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:13px 0;border-bottom:1px solid #36514277}.list-item:last-child{border-bottom:0}.list-item small{display:block;color:var(--muted);margin-top:5px}.mono{font-family:ui-monospace,Menlo,monospace;font-size:.82rem;color:#dfc47d}.table-scroll{overflow-x:auto}table{border-collapse:collapse;width:100%;font-size:.83rem;text-align:left}td,th{padding:10px 8px;border-bottom:1px solid #42604961;white-space:nowrap}th{color:var(--muted);font-size:.74rem}td .btn{margin-right:5px}hr{border:0;border-top:1px solid #2b4c40;margin:17px 0}.table-felt{background:radial-gradient(ellipse at 50% 30%,#1b6545,#063220 80%);border:7px solid #b19257;border-radius:47% 47% 24px 24px/29% 29% 22px 22px;box-shadow:inset 0 0 60px #00160d,0 13px 45px #0009;padding:24px 11px 15px;min-height:385px;display:flex;flex-direction:column;align-items:center;gap:26px}.dealer-area{text-align:center}.dealer-cards,.hand-cards{display:flex;justify-content:center;gap:5px;flex-wrap:wrap}.playing-card{background:#f5f1e7;color:#181710;border-radius:6px;min-width:49px;width:49px;height:74px;box-shadow:2px 5px 10px #0006;padding:6px 4px;font-size:1.17rem;font-weight:bold;display:flex;align-items:flex-start;justify-content:center}.playing-card.red{color:#c43f40}.playing-card.back{background:repeating-linear-gradient(45deg,#164934,#164934 6px,#bf9855 7px,#143c2b 8px);color:#ead495;border:2px solid #deb76d;align-items:center}.seated{width:100%;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.seat{padding:8px 4px;background:#04241e9e;border:1px solid #b0a16a5e;border-radius:15px;text-align:center;min-width:0}.seat.active{border:2px solid #f0c879;box-shadow:0 0 15px #e6b86e72}.seat .avatar{width:40px;height:40px;vertical-align:middle}.seat-name{font-size:.76rem;font-weight:750;display:block;overflow:hidden;text-overflow:ellipsis}.seat .playing-card{min-width:32px;width:32px;height:46px;font-size:.9rem;padding:3px}.seat .hand-cards{margin:6px 0}.seat-bet{font-size:.72rem;color:#ebd69d}.seat-summary{font-size:.72rem;color:#a8ecbd}.bet-area{display:grid;gap:12px}.bet-num{font-size:1.35rem;color:var(--gold2);font-weight:750}.compact-stats{display:flex;justify-content:space-between;gap:8px}.compact-stats .dark{flex:1}.mini-buttons{display:flex;flex-wrap:wrap;gap:6px}.mini-buttons .btn{flex:1;min-width:95px}.round-panel{margin:12px 0}.link{border:0;background:transparent;color:#e2c68a;text-decoration:underline;padding:2px}.loading{opacity:.5;pointer-events:none}.hidden{display:none!important}#toast{position:fixed;z-index:100;left:50%;transform:translateX(-50%);bottom:82px;max-width:min(92vw,520px);padding:12px 18px;background:#213c31;border:1px solid #a8945b;border-radius:10px;color:white;display:none;box-shadow:var(--shadow);text-align:center}#toast.show{display:block}.small-note{font-size:.78rem;color:var(--muted);line-height:1.5;margin-top:8px}.stat-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:11px}.chips-summary{display:flex;align-items:center;gap:15px}.chips-summary img{width:76px;height:76px}.face{font-size:1.8rem}.contact{font-size:.78rem;color:var(--muted)}@media(max-width:800px){.nav{display:none}.bottom-nav{position:fixed;bottom:0;left:0;right:0;display:flex;justify-content:space-around;background:#061b16fa;border-top:1px solid #93774477;padding:7px max(8px,env(safe-area-inset-left)) calc(7px + env(safe-area-inset-bottom));z-index:20}.bottom-nav button{flex:1;display:flex;flex-direction:column;align-items:center;gap:2px;border:0;color:#b7c8be;background:none;font-size:.65rem;padding:5px}.bottom-nav button.active{color:var(--gold2)}.bottom-nav button .icon{font-size:20px}.shell{padding:0 11px 100px}.cards,.three{grid-template-columns:1fr}.two{grid-template-columns:1fr}.top-inner{padding:9px 12px}.brand-text{font-size:.95rem}.brand small{font-size:.44rem}.account .chip-money{font-size:.74rem}.container{padding-top:16px}.auth{margin:16px auto}.card{padding:15px}.seated{grid-template-columns:repeat(2,minmax(0,1fr))}.table-felt{min-height:420px;padding:21px 8px 12px}.welcome{padding:40px 8px 10px}.welcome h1{font-size:2.6rem}.avatar-select{grid-template-columns:repeat(5,minmax(0,1fr))}.avatar-btn small{display:none}.chips-grid{grid-template-columns:repeat(3,1fr)}.chip-pick{flex-direction:column;font-size:.74rem}.chip-pick img{height:39px;width:39px}.list-item{align-items:flex-start}.panel-title{margin:5px 0 15px}}@media(max-width:400px){.brand-text{font-size:.84rem}.mini-avatar{width:30px;height:30px}.chip-money{font-size:.65rem!important}.avatar-select{gap:4px}.avatar-btn{padding:3px}.tabs button{font-size:.75rem}}
/* Additional lean, mobile-first details. */
.top{position:sticky;top:0;z-index:30;background:#061711eF;border-bottom:1px solid #bfa06450;backdrop-filter:blur(12px)}
.game-hero{min-height:170px;background:radial-gradient(circle at 90% 0,#38644666,transparent 55%),#08291c;border-radius:13px;padding:18px;display:flex;flex-direction:column;justify-content:center}
.welcome{text-align:center;max-width:690px;margin:auto}.welcome h1{font-size:clamp(2.8rem,8vw,5.2rem);color:#eed59c;margin:0}.welcome-sub{font-family:Georgia,serif;font-size:1.4rem;color:#e6ca80!important}
.actions{display:flex;gap:10px;justify-content:center;margin-top:22px;flex-wrap:wrap}
.account{display:flex;gap:9px;align-items:center;min-width:0}.chip-money,.nav-user{border:1px solid #a98b5866;border-radius:10px;background:#10251d;color:#e8d19b;padding:6px 10px;display:flex;gap:7px;align-items:center;white-space:nowrap;font-size:.84rem;font-weight:700}.chip-money img{height:26px;width:26px}.mini-avatar{height:34px;width:34px;border-radius:50%;object-fit:cover}
.authbrand .spade{font-size:2.2rem}.authbrand h2{margin:5px 0;font-size:1.8rem}.section-mini{font-size:1.03rem;color:#f0d49b;margin:16px 0 10px}.centered{text-align:center;padding:15px 2px}.centered h2{color:var(--gold2)}
.site-footer{text-align:center;padding:20px 12px 90px;color:#adb8aa;font-size:.72rem;line-height:1.6}
.round-header{display:flex;justify-content:space-between;align-items:center;gap:10px;margin:10px 0 20px}.round-header b{color:#e8cf91;font-size:.86rem}
.chip-amounts{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:7px}.chip-amounts .btn{min-width:0;padding:8px 3px;font-size:.77rem}
.rules{font-size:.91rem;line-height:1.45}.rules .dark{padding:11px 12px}.site-footer::first-letter{color:#e8ce8e}
@media(max-width:760px){.chip-amounts{grid-template-columns:repeat(3,minmax(0,1fr))}.nav-user{font-size:0;padding:2px;background:none;border:0}.nav-user img{height:36px;width:36px}.chip-money img{height:20px;width:20px}.round-header{align-items:flex-start}.cards{gap:10px}}
@media(max-width:390px){.chip-amounts{grid-template-columns:repeat(2,1fr)}}
.brand{background:transparent;border:0;padding:0;min-width:0;text-align:left}.brand .spade{font-size:30px;color:var(--gold);line-height:1}.top-inner{min-width:0}.brand-text{color:var(--gold2)}
@media(max-width:600px){.top-inner{gap:5px;padding:8px 9px}.brand{gap:5px}.brand .spade{font-size:23px}.brand-text{font-size:.85rem;letter-spacing:0}.brand small{display:none}.account{gap:4px}.account .btn.small{font-size:.73rem;padding:7px 9px;min-height:34px}.chip-money{padding:5px;font-size:.72rem}.nav-user img{width:31px;height:31px}}

@media(max-width:800px){.play-actions{position:fixed;bottom:calc(69px + env(safe-area-inset-bottom));left:8px;right:8px;z-index:24;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));background:#061811f5;border:1px solid #ad9359;border-radius:12px;padding:6px;box-shadow:0 -8px 30px #0008}.play-actions .btn{min-width:0;font-size:.79rem;padding:12px 2px}.table-felt{min-height:330px}.table-felt+.card{padding-bottom:80px}}

/* V3.1.3: controles compactos, aptos para editar apuestas desde el móvil. */
.bet-adjustments { display:flex; gap:8px; flex-wrap:wrap; margin:0 0 12px; }
.bet-adjustments .btn { flex:1 1 90px; min-height:44px; }
#betInput { font-variant-numeric:tabular-nums; }

/* Apuestas por saldo: controles no disponibles y aviso compacto para móvil. */
.chip-pick:disabled {opacity:.35;cursor:not-allowed;filter:grayscale(.7)}
.chip-pick:disabled:hover {border-color:#526b54}
.bet-error {font-size:.82rem;color:#ffc1b5;background:#7d2e2e38;border:1px solid #b94f4f80;padding:10px 12px;border-radius:9px;margin:0}
.bet-error[hidden]{display:none}

/* Club Toby V3.2: temporizadores y control de ganancias de Manzur */
.round-clock{display:flex;align-items:center;gap:9px;font-size:.85rem;color:#f5dc9f;padding:5px 9px;border:1px solid #b9995677;border-radius:10px}.round-clock strong{font-variant-numeric:tabular-nums;font-size:1.15rem}.house-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px}.house-metrics .dark{display:grid;gap:8px}.house-metrics strong{font-size:1.3rem}.plus-net{color:#8ae1b2}.minus-net{color:#ff9d9c}.house-reports{display:grid;gap:8px;margin-top:14px}.house-reports details{background:#071914;border:1px solid #365143;border-radius:10px;padding:12px}.house-reports summary{cursor:pointer;color:#f0d49b;font-weight:700}.house-reports table{margin-top:8px}@media(max-width:680px){.house-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.round-header{flex-wrap:wrap}.round-clock{width:100%;justify-content:space-between;order:2}.house-metrics strong{font-size:1.1rem}}

/* Club Toby V3.2.1 - resultado por ronda, accesible y responsivo */
.round-result{display:flex;align-items:center;justify-content:space-between;gap:14px;border-radius:14px;padding:15px 16px;margin:10px 0 16px;border:1px solid #64866d;background:#132a24;color:#eff1e9}
.round-result .result-copy{min-width:0}.round-result strong{display:block;font-size:1.1rem}.round-result p{margin:4px 0;font-size:.9rem;line-height:1.35}.round-result small{color:#c3cfc5;font-size:.75rem}.round-result button{background:transparent;border:0;color:inherit;font-size:1.45rem;padding:5px 9px;cursor:pointer}
.round-result.win{background:linear-gradient(105deg,#356a43,#1c533d 52%,#2b6f4e);border:2px solid #f1d389;box-shadow:0 0 0 3px #d9b9781c,0 8px 24px #0008;animation:result-appear .35s ease-out}
.round-result.win strong{font-family:Georgia,serif;color:#ffe4a3;font-size:clamp(1.2rem,3.6vw,1.7rem)}
.round-result.win p{font-weight:650}.round-result.loss{background:#15251f;border-color:#496254;color:#bfcbc5}.round-result.loss strong{font-size:1rem;color:#d3dcd5;font-weight:650}.round-result.draw{background:#1d2d2a;border-color:#aa955f}.round-result.draw strong{color:#ead39d}
@keyframes result-appear{from{opacity:.25;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}
@media(prefers-reduced-motion:reduce){.round-result{animation:none!important}}
@media(max-width:500px){.round-result{padding:12px}.round-result.win strong{font-size:1.25rem}}

/* V3.2.2: confirmación visible al abandonar, incluso si la ronda terminó. */
.exit-cover{position:fixed;inset:0;z-index:2000;background:#030d0aD9;display:flex;align-items:center;justify-content:center;padding:18px;backdrop-filter:blur(7px)}
.exit-dialog{width:min(100%,460px);max-height:min(88vh,700px);overflow:auto;border:1px solid #D3B473;border-radius:17px;background:linear-gradient(145deg,#153125,#071B16);padding:23px;box-shadow:0 20px 90px #000B;color:#F1EBDE}
.exit-dialog.exit-risk{border-color:#DB8C80}
.exit-label{color:#EDD096;font-weight:800;font-size:.74rem;letter-spacing:.09em}
.exit-risk .exit-label{color:#F3A89D}
.exit-dialog h2{font:700 1.6rem/1.2 Georgia,serif;color:#F4D99A;margin:10px 0 13px}
.exit-dialog p{line-height:1.5;font-size:.94rem;margin:8px 0}
.exit-dialog .exit-help{font-size:.82rem;color:#B9C9BF;margin-top:15px}
.exit-actions{display:flex;gap:9px;margin-top:23px;flex-wrap:wrap}
.exit-actions .btn{flex:1 1 170px;white-space:normal}
@media(max-width:540px){.exit-dialog{padding:20px}.exit-actions{flex-direction:column}.exit-actions .btn{flex:0 0 auto;width:100%}}

/* V3.2.3: los resultados siempre son visibles aunque se desplace la mesa. */
.round-result{position:fixed;z-index:1150;right:clamp(12px,3vw,34px);bottom:clamp(16px,3vh,28px);width:min(460px,calc(100vw - 24px));max-height:60vh;overflow-y:auto;margin:0;border-radius:16px;box-shadow:0 18px 56px #000b;align-items:flex-start;animation:result-appear .4s ease-out}
.round-result .result-symbol{font-size:1.9rem;line-height:1.25;flex:0 0 auto}
.round-result .result-copy{flex:1}
.round-result .result-copy strong{line-height:1.22}
.round-result button[data-dismiss-result]{border-radius:8px;flex:0 0 auto;min-height:34px;min-width:34px;line-height:1}
.round-result button[data-dismiss-result]:focus-visible{outline:2px solid #f1d389;outline-offset:2px}
.round-result .result-hands{display:flex;flex-wrap:wrap;gap:6px;margin:9px 0}
.round-result .result-hands span{font-size:.75rem;background:#0b1d17aa;border-radius:6px;padding:5px 8px}
.round-result.win{background:linear-gradient(120deg,#1b6041,#0f392c);border:2px solid #f2d48b}
.round-result.loss{background:#142721;border:1px solid #526a5a}
.round-result.loss .result-symbol{font-size:1.3rem;color:#adbab2}
.round-result.draw,.round-result.mixed{background:#1d302a;border:1px solid #bca46c}
@media(max-width:800px){.round-result{bottom:calc(147px + env(safe-area-inset-bottom));right:10px;left:10px;width:auto;max-height:min(42vh,340px)}}
@media(prefers-reduced-motion:reduce){.round-result{animation:none!important}}

/* V3.2.5 - Reporte de manos/partidas reales */
.casino-stats-table{min-width:1040px} .casino-stats-table th,.casino-stats-table td{white-space:nowrap} .casino-stats-table td:last-child{font-weight:750}

/* V3.2.6 · retiros 100% virtuales, respetando la estética del monedero. */
.virtual-withdrawal .card{min-width:0}
.virtual-withdrawal .chip-amounts{display:flex;flex-wrap:wrap;gap:7px;margin:12px 0}
.virtual-withdrawal .chip-amounts button{flex:1;min-width:105px}
.virtual-withdrawal .withdraw-error{color:#ffabab}
.house-reports details[open] summary{color:#ffe3a6}

.history-pagination{display:flex;align-items:center;justify-content:center;gap:12px;flex-wrap:wrap;margin:14px 0}.history-pagination span{font-size:.94rem;color:var(--muted,#bbcec4)}.status.disabled{border-color:#ab7878;color:#e8b1b1}.table-scroll button{margin:2px}.table-scroll{overflow-x:auto}
