:root{--bg:#05120a;--p:#0b2112;--p2:#12301d;--line:#24422e;--txt:#e9f2eb;--mut:#8fa898;--gold:#f0f068;--green:#0fbd4c;--red:#ff6678;--orange:#e5a13f}
*{box-sizing:border-box}body{margin:0;background:radial-gradient(circle at top,#0f2a17,#05120a 45%);color:var(--txt);font-family:Segoe UI,Arial,sans-serif;min-height:100vh}
button,input,select{font:inherit}button{cursor:pointer}.app{max-width:1250px;margin:auto;padding:16px}.top{position:sticky;top:8px;z-index:10;display:flex;justify-content:space-between;gap:15px;align-items:center;background:#0e2015eb;border:1px solid var(--line);padding:14px 16px;border-radius:17px;backdrop-filter:blur(10px)}
h1,h2,h3{margin-top:0}.top h1{margin:0;font-size:clamp(21px,3vw,31px)}.mut{color:var(--mut);font-size:13px}.nav,.actions{display:flex;gap:8px;flex-wrap:wrap}
.btn,.nav button{border:1px solid var(--line);border-radius:10px;background:var(--p2);color:var(--txt);padding:10px 13px;font-weight:800}.nav button.on{background:var(--gold);color:#2a2107}.btn.gold{background:var(--gold);color:#332500}.btn.green{background:var(--green);color:#062d19}.btn.red{background:var(--red);color:#38050d}.btn.orange{background:var(--orange);color:#351900}.btn.ghost{background:transparent}.btn:disabled{opacity:.45;cursor:not-allowed}
main{margin-top:16px}.view{display:none}.view.on{display:block}.grid{display:grid;grid-template-columns:repeat(12,1fr);gap:15px}.card{grid-column:span 12;background:#0f2415f2;border:1px solid var(--line);border-radius:17px;padding:17px;box-shadow:0 15px 40px #0005}.s4{grid-column:span 4}.s5{grid-column:span 5}.s7{grid-column:span 7}.s8{grid-column:span 8}
.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.stat{background:#081a10;border:1px solid var(--line);border-radius:13px;padding:13px}.stat small{color:var(--mut);text-transform:uppercase}.stat b{display:block;font-size:clamp(19px,3vw,29px);margin-top:4px}
.status{padding:5px 9px;border-radius:999px;font-size:12px;font-weight:900}.open{color:#7ef4b3;border:1px solid #45dc8c88}.closed{color:#ffc08a;border:1px solid #e5a13f88}.drawn{color:#f6ecad;border:1px solid #f0f06888}
.form{display:grid;grid-template-columns:repeat(12,1fr);gap:11px;align-items:end}.f2{grid-column:span 2}.f3{grid-column:span 3}.f4{grid-column:span 4}.f6{grid-column:span 6}.f8{grid-column:span 8}.f12{grid-column:span 12}
.field{display:flex;flex-direction:column;gap:6px}label{font-size:13px;color:var(--mut);font-weight:700}input,select{width:100%;padding:10px 11px;border-radius:10px;border:1px solid #3a5c42;background:#081a10;color:var(--txt);outline:none}input:focus,select:focus{border-color:var(--gold);box-shadow:0 0 0 3px #f0f06822}.digit{text-align:center;font-size:24px;font-weight:900}
.notice{margin-top:11px;padding:11px;border:1px solid var(--line);border-radius:11px;color:var(--mut);background:#081a10}.tablebox{overflow:auto;max-height:460px;border:1px solid var(--line);border-radius:12px}table{width:100%;border-collapse:collapse;min-width:700px}th,td{padding:10px 11px;border-bottom:1px solid var(--line);text-align:left}th{position:sticky;top:0;background:#12301d;font-size:12px;color:#cfe0d1}.combo{display:inline-flex;gap:5px}.mini{width:29px;height:29px;border-radius:50%;display:grid;place-items:center;background:#173a22;border:1px solid #8a7a3a;font-weight:900}.audit{max-height:420px;overflow:auto}.audit div{padding:8px 0;border-bottom:1px solid var(--line);font-size:13px}.audit time{color:var(--mut);margin-right:7px}
.stage{min-height:calc(100vh - 125px);border:1px solid var(--line);border-radius:22px;background:radial-gradient(circle at 50% 40%,#0f5c2855,transparent 38%),#050f09;display:flex;align-items:center;justify-content:center;text-align:center;padding:22px;position:relative;overflow:hidden}.stageinner{width:min(1000px,100%)}.stitle{font-size:clamp(30px,6vw,65px);font-weight:1000;margin:0}.jlabel{color:var(--gold);letter-spacing:5px;font-weight:900;margin-top:25px}.jvalue{font-size:clamp(45px,10vw,108px);font-weight:1000;color:var(--gold);text-shadow:0 0 25px #f0f06855}.count{min-height:66px;font-size:clamp(38px,8vw,75px);font-weight:1000;color:var(--gold)}
.balls{display:flex;gap:clamp(12px,3vw,27px);justify-content:center;flex-wrap:wrap;margin:20px 0}.ball{width:clamp(86px,16vw,150px);height:clamp(86px,16vw,150px);border-radius:50%;display:grid;place-items:center;font-size:clamp(40px,8vw,78px);font-weight:1000;color:#241c10;background:radial-gradient(circle at 32% 25%,#fffbe6,#f0d97a 48%,#b8901f 80%);border:4px solid #ffffff88;box-shadow:inset -12px -16px 22px #0004,0 15px 35px #f0f06833}.spin{animation:spin .16s linear infinite,pulse .5s alternate infinite}@keyframes spin{to{transform:rotate(360deg)}}@keyframes pulse{to{scale:1.07}}
.winners{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:18px;text-align:left}.winnersWrap{display:grid;gap:14px}.winners3{grid-template-columns:repeat(3,1fr);margin-top:0}.wbox{background:#0f2415dd;border:1px solid var(--line);border-radius:13px;padding:13px}.wboxmini{padding:10px 11px}.wboxmini h3{font-size:14px}.exact{color:var(--gold)}.random{color:var(--green)}.parexacto{color:var(--green)}.par{color:var(--orange)}.terminacion{color:var(--orange)}.wline{padding:7px 0;border-bottom:1px dashed #5c5230}.pubctrl{position:absolute;right:15px;top:15px;display:flex;gap:7px}.small{padding:7px 9px;font-size:12px}
.hist{display:grid;gap:12px}.hitem{border:1px solid var(--line);border-radius:13px;padding:14px;background:#081a10}.hhead{display:flex;justify-content:space-between;gap:10px}.hstats{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-top:10px}.hstats div{padding:9px;background:#08150d;border-radius:9px}.hstats small{display:block;color:var(--mut)}.pay{display:flex;justify-content:space-between;gap:10px;align-items:center;padding:7px 0;border-bottom:1px dashed #5c5230}
dialog{width:min(520px,92vw);background:#0f2415;color:var(--txt);border:1px solid var(--line);border-radius:15px}dialog::backdrop{background:#000a}.toastarea{position:fixed;right:15px;bottom:15px;z-index:100;display:grid;gap:7px}.toast{padding:11px 13px;background:#12301d;border:1px solid #8a7a3a;border-radius:10px}.conf{position:fixed;top:-20px;width:10px;height:15px;z-index:200;animation:fall 3.2s linear forwards}@keyframes fall{to{transform:translate(var(--d),110vh) rotate(900deg);opacity:.1}}
@media(max-width:900px){.s4,.s5,.s7,.s8{grid-column:span 12}.stats{grid-template-columns:1fr 1fr}}@media(max-width:650px){.top{position:static;align-items:flex-start;flex-direction:column}.f2,.f3,.f4,.f6,.f8{grid-column:span 12}.winners{grid-template-columns:1fr}.hstats{grid-template-columns:1fr 1fr}.pubctrl{position:static;justify-content:center;margin-bottom:10px}}
.brandmark{display:flex;align-items:center;gap:12px}.brandmark img{height:42px;width:auto;filter:drop-shadow(0 2px 6px #000a)}
.publogo{max-width:min(230px,52vw);height:auto;margin:4px auto 2px;filter:drop-shadow(0 6px 18px #000a)}
.authgate{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:20px}
.authcard{width:min(440px,100%)}
.authgate .nav button{flex:1}
#logoutBtn:hover,#openLoginBtn:hover{background:#12301d}
