:root{--bg:#111214;--panel:#1b1d20;--panel2:#24272b;--text:#f7f7f7;--muted:#aeb2b8;--orange:#ff7a00;--orange2:#ff9a36;--line:#34383e;--danger:#e55353;--ok:#31b56a}*{box-sizing:border-box}body{margin:0;font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,sans-serif;background:#f4f5f7;color:#1b1d20}a{text-decoration:none;color:inherit}.hero{background:radial-gradient(circle at 20% 0,#513014 0,transparent 40%),linear-gradient(135deg,#111214,#22252a);color:#fff;padding:58px 20px 72px}.hero-inner{max-width:760px;margin:auto;text-align:center}.brand{font-weight:900;letter-spacing:.08em;font-size:22px}.brand span{color:var(--orange)}.brand.big{font-size:34px}.badge{display:inline-block;background:#ff7a001f;border:1px solid #ff7a0066;color:#ffb36d;padding:7px 12px;border-radius:999px;font-size:12px;font-weight:800;letter-spacing:.08em;margin:22px 0 8px}.hero h1{font-size:clamp(34px,7vw,62px);line-height:1;margin:12px 0}.hero p{color:#c9ccd1;font-size:18px}.container{max-width:1180px;margin:-28px auto 60px;padding:0 18px}.container.narrow{max-width:760px}.card{background:#fff;border:1px solid #e4e6e9;border-radius:18px;padding:24px;box-shadow:0 12px 35px #0000000b;margin-bottom:20px}.form-card{margin-top:-36px}.card h1,.card h2{margin-top:0}.grid-form{display:grid;gap:16px}.grid-form.cols{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-form .full{grid-column:1/-1}label{font-size:14px;font-weight:700;display:grid;gap:7px}input,select,textarea{width:100%;border:1px solid #d8dbe0;border-radius:10px;padding:12px 13px;font:inherit;background:#fff;outline:none}input:focus,select:focus,textarea:focus{border-color:var(--orange);box-shadow:0 0 0 3px #ff7a001a}.check{display:flex;grid-column:1/-1;align-items:flex-start;font-weight:500;color:#555}.check input{width:auto;margin-top:3px}.btn{border:0;border-radius:10px;padding:11px 15px;background:#eef0f2;font-weight:800;cursor:pointer;display:inline-block}.btn.primary{background:linear-gradient(135deg,var(--orange),var(--orange2));color:#111}.btn.small{padding:7px 10px;font-size:12px}.btn.danger{background:#feecec;color:#9b2d2d}.muted{color:#747980}.alert{padding:13px 15px;border-radius:11px;margin:12px 0}.alert.success{background:#eaf8f0;color:#216c40}.alert.error{background:#fdecec;color:#9a2f2f}.auth-wrap{min-height:100vh;display:grid;place-items:center;padding:20px;background:linear-gradient(135deg,#111,#26292d)}.auth-card{width:min(480px,100%)}.center{text-align:center}.topbar{height:70px;background:#111214;color:#fff;display:flex;align-items:center;justify-content:space-between;padding:0 24px;gap:20px}.topbar>div:last-child{display:flex;gap:16px}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:45px 0 18px}.stat{background:#fff;border-radius:16px;padding:20px;border:1px solid #e5e7ea}.stat b{display:block;font-size:34px}.stat span{color:#777}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse}th,td{text-align:left;padding:12px 10px;border-bottom:1px solid #eceef0;font-size:14px;vertical-align:top}td small{display:block;color:#8a8e94;margin-top:4px}.pill{border:0;border-radius:999px;padding:6px 9px;font-size:11px;font-weight:800;text-transform:uppercase}.pill.active{background:#e7f7ed;color:#277445}.pill.draft{background:#fff4df;color:#8a5b08}.pill.closed{background:#f1f2f4;color:#60646a}.inline-form{display:grid;grid-template-columns:100px 1fr 1fr auto;gap:10px;margin-bottom:15px}.section-head{display:flex;justify-content:space-between;align-items:center;gap:16px}.row-form{display:inline}.winner-row{display:grid;gap:4px;padding:12px 0;border-bottom:1px solid #eee}.draw-bg{background:radial-gradient(circle at 20% 10%,#503018 0,transparent 35%),#0f1012;color:#fff;min-height:100vh}.draw-wrap{max-width:760px;margin:0 auto;padding:56px 20px}.draw-card{background:#17191d;border:1px solid #2a2d32;border-radius:24px;padding:34px;text-align:center;box-shadow:0 25px 80px #0008}.draw-card h1{font-size:48px;margin:8px 0}.draw-form{display:grid;gap:18px;margin-top:25px;text-align:left}.draw-form select{background:#22252a;color:#fff;border-color:#34383e}.roulette-btn{border:0;border-radius:16px;padding:20px;font-size:22px;font-weight:900;cursor:pointer;background:linear-gradient(135deg,#ff7a00,#ffab57);color:#111;box-shadow:0 10px 35px #ff7a0033}.winner-reveal{margin:25px 0;padding:25px;border:1px solid #ff7a0066;background:#ff7a0010;border-radius:18px;display:grid;gap:8px}.winner-reveal strong{font-size:36px;color:#ffad61}.winner-reveal span{color:#d5d8dc}.fine{font-size:12px;color:#8e939a;margin-top:18px}footer{text-align:center;color:#777;padding:20px 0 40px}@media(max-width:720px){.grid-form.cols,.stats{grid-template-columns:1fr}.inline-form{grid-template-columns:1fr}.section-head{align-items:flex-start;flex-direction:column}.topbar{height:auto;padding:16px}.topbar>div:last-child{font-size:13px}.draw-card h1{font-size:35px}.winner-reveal strong{font-size:28px}}
.settings-page{margin-top:34px}.danger-zone{border:1px solid #f1bcbc;background:linear-gradient(180deg,#fff,#fffafa)}.danger-title{display:flex;align-items:center;justify-content:space-between;gap:16px}.danger-title>div{display:flex;align-items:center;gap:10px}.danger-title h2{margin:0;color:#8d2727}.danger-icon{font-size:25px}.reset-info{background:#fff3f3;border:1px solid #f3d0d0;border-radius:12px;padding:16px;margin:18px 0;color:#662b2b}.reset-info ul{margin:9px 0 13px;padding-left:22px}.reset-info p{margin-bottom:0}.danger-check{background:#fff1f1;border-radius:10px;padding:12px;color:#7e2a2a}.btn.big-danger{padding:15px 18px;font-size:15px;background:#b93434;color:#fff}.steps{line-height:1.9;padding-left:22px}

.brand-row{display:flex;align-items:center;gap:12px}.brand-mark{width:82px;height:auto;display:block;filter:drop-shadow(0 6px 16px rgba(0,0,0,.22))}.brand-mark.small{width:40px}.brand-stack{display:flex;flex-direction:column;line-height:1}.brand-stack .brand{margin:0}.brand-stack .tagline{font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:#d6d9dd;font-weight:800}.hero-brand{display:grid;justify-items:center;gap:10px;margin-bottom:10px}.hero-brand .brand-mark{width:135px}.hero-brand .brand.big{font-size:40px}.hero-brand .tagline{font-size:15px;color:#fff;letter-spacing:.14em;text-transform:uppercase;font-weight:900}.topbar .brand-row{color:#fff}.topbar .tagline{color:#c2c6cc}.auth-head{display:grid;justify-items:center;text-align:center;gap:8px;margin-bottom:14px}.auth-head .brand-mark{width:100px}.card .hero-note{margin-top:8px}.brand-public-footer{opacity:.88}
@media(max-width:720px){.hero-brand .brand-mark{width:110px}.hero-brand .brand.big{font-size:32px}.brand-row{gap:10px}.brand-mark.small{width:34px}.brand-stack .tagline{font-size:10px}}

.campaign-edit-form{margin:20px 0;padding:20px;border:1px solid #eceef0;border-radius:14px;background:#fafafa}.edit-actions{display:flex;gap:10px;align-items:center}

.prize-public-card{margin-top:-36px}.prize-public-head{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;padding-bottom:8px;border-bottom:1px solid #f0e6dc}.prize-public-head h2{font-size:30px;margin:7px 0 8px}.eyebrow{display:inline-block;color:#b95b00;font-weight:900;font-size:12px;letter-spacing:.12em}.prize-list{display:grid;gap:14px;margin-top:20px}.public-prize{display:grid;grid-template-columns:86px 1fr;gap:16px;align-items:flex-start;padding:18px;border:1px solid #ece2d8;border-radius:18px;background:linear-gradient(180deg,#fffdfb,#fff8f2);box-shadow:0 10px 24px rgba(0,0,0,.04)}.prize-rank{display:grid;justify-items:center;align-content:center;gap:2px;min-height:86px;border-radius:18px;background:linear-gradient(135deg,var(--orange),var(--orange2));color:#111;box-shadow:0 10px 22px #ff7a0026}.prize-rank-no{font-size:28px;line-height:1;font-weight:950}.prize-rank-label{font-size:12px;letter-spacing:.12em;text-transform:uppercase;font-weight:800;opacity:.8}.prize-body{min-width:0}.prize-topline{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:6px}.prize-label{font-size:12px;font-weight:900;letter-spacing:.12em;color:#8d5a2b;text-transform:uppercase}.prize-body h3{margin:0;font-size:21px;line-height:1.2;color:#17191d}.prize-body p{margin:8px 0 0;color:#626973;font-size:14px;line-height:1.55;max-width:58ch}.prize-status{display:inline-flex;align-items:center;justify-content:center;padding:7px 10px;border-radius:999px;font-size:11px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.prize-status.active{background:#fff1df;color:#9a5d0a;border:1px solid #f2d4ab}.prize-status.drawn{background:#f0f1f3;color:#646b74;border:1px solid #dde1e5}.public-prize.is-drawn{background:linear-gradient(180deg,#fafafa,#f6f7f8);border-color:#e5e7ea;opacity:.82}.public-prize.is-drawn .prize-rank{background:#e5e7ea;color:#5f6670;box-shadow:none}.public-prize.is-drawn .prize-label{color:#747980}@media(max-width:720px){.prize-public-head h2{font-size:26px}.prize-public-card{margin-top:-28px}.public-prize{grid-template-columns:1fr;gap:12px}.prize-rank{min-height:auto;padding:14px 10px;grid-template-columns:auto auto;grid-auto-flow:column;justify-content:center;align-items:center;gap:8px}.prize-rank-label{font-size:11px}.prize-body h3{font-size:19px}.prize-topline{align-items:flex-start}}

/* Tómbola animada v9 */
.draw-stage{margin:26px 0 18px;min-height:350px;border:1px solid #34383e;border-radius:22px;padding:28px;background:radial-gradient(circle at 50% 30%,rgba(255,122,0,.12),transparent 55%),#111317;display:grid;align-content:center;justify-items:center;gap:18px;overflow:hidden}.countdown-wrap{display:grid;justify-items:center;gap:5px}.countdown-label{font-size:13px;text-transform:uppercase;letter-spacing:.15em;color:#aeb2b8;font-weight:800}.countdown-wrap strong{font-size:72px;line-height:1;color:#ff8b21;text-shadow:0 0 28px rgba(255,122,0,.3)}.rolling-label{font-size:12px;text-transform:uppercase;letter-spacing:.18em;color:#777f89;font-weight:900}.rolling-name{width:100%;min-height:86px;display:grid;place-items:center;text-align:center;font-size:clamp(30px,7vw,54px);font-weight:950;color:#fff;padding:10px 16px;border-radius:16px;background:linear-gradient(135deg,#202329,#17191d);border:1px solid #30343a}.rolling-name.pulse{animation:namePulse .16s ease}.final-winner{width:100%;text-align:center;padding:30px 18px;border-radius:18px;border:2px solid #ff7a00;background:linear-gradient(135deg,rgba(255,122,0,.13),rgba(255,255,255,.02))}.final-winner small{display:block;color:#ffb36d;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.final-winner strong{display:block;font-size:clamp(38px,9vw,68px);line-height:1.05;margin:14px 0;color:#fff}.final-winner p{margin:0;color:#d7d9dc;font-size:20px}.final-winner.reveal{animation:winnerReveal .8s cubic-bezier(.2,.8,.2,1)}.draw-after-actions{display:flex;justify-content:center;flex-wrap:wrap;gap:10px;margin-top:18px}.ticket-actions{display:flex;flex-wrap:wrap;gap:7px;align-items:center}.ticket-actions form{margin:0}.winners-admin code{font-weight:900;color:#a95400;background:#fff3e7;padding:5px 8px;border-radius:7px}.draw-card code{color:#ffb36d}
@keyframes namePulse{0%{transform:translateY(5px);opacity:.4}100%{transform:none;opacity:1}}@keyframes winnerReveal{0%{opacity:0;transform:scale(.82)}65%{transform:scale(1.04)}100%{opacity:1;transform:scale(1)}}
@media(max-width:720px){.draw-stage{padding:20px;min-height:310px}.countdown-wrap strong{font-size:58px}.draw-after-actions{display:grid}.draw-after-actions .btn{text-align:center}}
