:root{--yellow:#ffd400;--bg:#050505;--card:#0c0f13;--muted:#aeb4ba;--font:Nunito,Arial,Verdana,sans-serif}
*{box-sizing:border-box}html{background:#000;color:#fff;font-family:var(--font)}body{margin:0;background:#000;min-height:100vh;overflow-x:hidden}
.raffle-topbar{position:sticky;top:0;z-index:50;display:flex;align-items:center;justify-content:space-between;padding:15px clamp(16px,4vw,58px);background:rgba(0,0,0,.88);backdrop-filter:blur(18px);border-bottom:1px solid rgba(255,212,0,.16)}
.raffle-brand{color:var(--yellow);text-decoration:none;font-weight:1000;letter-spacing:.04em}.back-link{color:#fff;text-decoration:none;font-size:12px;font-weight:900;letter-spacing:.12em}
.raffle-page{position:relative;min-height:calc(100vh - 58px);padding:42px 16px 90px;isolation:isolate;background:radial-gradient(circle at 50% 0%,rgba(255,212,0,.10),transparent 26%),radial-gradient(circle at 10% 60%,rgba(255,157,0,.06),transparent 25%),linear-gradient(180deg,#020202,#07090b 45%,#010101)}
.raffle-page::before{content:"";position:absolute;inset:0;z-index:-2;opacity:.15;background-image:linear-gradient(rgba(255,255,255,.03) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.03) 1px,transparent 1px);background-size:46px 46px}
.raffle-panel{position:relative;z-index:5;width:min(980px,100%);margin:0 auto;padding:clamp(18px,3vw,34px);border:1px solid rgba(255,212,0,.34);border-radius:30px;background:linear-gradient(180deg,rgba(12,15,18,.97),rgba(5,6,8,.985));box-shadow:0 35px 110px rgba(0,0,0,.62),0 0 50px rgba(255,212,0,.04);overflow:hidden}
.raffle-panel::before{content:"";position:absolute;inset:-30%;background:conic-gradient(from 30deg,transparent 0 40%,rgba(255,212,0,.05) 48%,transparent 56%);animation:spin 13s linear infinite;pointer-events:none}@keyframes spin{to{transform:rotate(360deg)}}
.raffle-heading,.raffle-prize-strip,.payment-grid,.how-it-works,.entry-box,.participants-box,.good-luck{position:relative;z-index:2}
.raffle-heading{text-align:center;margin-bottom:24px}.raffle-heading>span{color:#d5d9dd;font-size:10px;font-weight:900;letter-spacing:.24em}.raffle-heading h1{margin:8px 0 4px;color:var(--yellow);font-size:clamp(34px,6vw,66px);line-height:.95;letter-spacing:.01em}.raffle-heading p{margin:0;color:#d7dbe0;font-weight:800}
.raffle-prize-strip{display:flex;align-items:center;gap:18px;padding:13px;border:1px solid rgba(255,255,255,.09);border-radius:20px;background:rgba(255,255,255,.025);margin-bottom:18px}.raffle-prize-strip img{width:min(42%,330px);border-radius:14px;box-shadow:0 14px 28px rgba(0,0,0,.3)}.raffle-prize-strip div{display:grid;gap:3px}.raffle-prize-strip small{font-size:10px;letter-spacing:.17em;color:#9aa1a7;font-weight:900}.raffle-prize-strip strong{font-size:clamp(30px,4vw,52px);color:#fff}.raffle-prize-strip span{color:#aeb4ba;font-size:13px;font-weight:800}
.payment-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.payment-card{padding:14px;border-radius:22px;border:1px solid rgba(255,255,255,.09);background:#090b0e;box-shadow:0 14px 34px rgba(0,0,0,.24)}.payment-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.payment-head strong{font-size:18px}.payment-head span{font-size:9px;letter-spacing:.12em;color:#cbd1d6}.qr-frame{border-radius:18px;overflow:hidden;aspect-ratio:1/1;background:#fff}.qr-frame img{width:100%;height:100%;object-fit:contain;display:block}.qr-frame.purple{box-shadow:0 0 30px rgba(129,0,160,.18)}.qr-frame.cyan{box-shadow:0 0 30px rgba(0,209,213,.14)}.payment-card>p{text-align:center;margin:10px 0;color:#fff;font-weight:900}.pay-number{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:8px;padding:10px 11px;border-radius:14px;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08)}.pay-number span{font-size:11px;color:#bcc3c9}.pay-number strong{font-size:16px;letter-spacing:.04em}.pay-number button{border:1px solid rgba(255,212,0,.28);background:rgba(255,212,0,.08);color:var(--yellow);border-radius:9px;padding:7px 9px;font:900 9px var(--font);cursor:pointer}.pay-number.compact{grid-template-columns:1fr;text-align:center;min-height:52px}
.how-it-works{margin-top:18px;padding:16px;border-radius:20px;border:1px solid rgba(255,255,255,.07);background:rgba(255,255,255,.02)}.how-it-works h2{margin:0 0 12px;font-size:15px}.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:9px}.steps div{display:flex;gap:8px;align-items:flex-start;padding:9px;border-radius:12px;background:rgba(255,255,255,.035)}.steps b{display:grid;place-items:center;width:24px;height:24px;flex:none;border-radius:50%;background:var(--yellow);color:#0a0a0a}.steps span{font-size:11px;line-height:1.35;color:#d5d9dd;font-weight:800}
.entry-box{margin-top:18px;display:grid;grid-template-columns:1fr 1.5fr 120px;gap:16px;align-items:end;padding:18px;border-radius:22px;border:1px solid rgba(255,212,0,.18);background:linear-gradient(135deg,rgba(255,212,0,.045),rgba(255,255,255,.015))}.entry-copy span{font-size:9px;letter-spacing:.16em;color:var(--yellow);font-weight:900}.entry-copy h2{font-size:22px;margin:4px 0}.entry-copy p{margin:0;color:#aeb4ba;font-size:11px;line-height:1.45;font-weight:800}.entry-box form{display:grid;grid-template-columns:1fr 1fr;gap:10px}.entry-box label{display:grid;gap:5px;font-size:10px;color:#c6ccd2;font-weight:900}.entry-box input,.entry-box select{width:100%;border:1px solid rgba(255,255,255,.12);background:#080a0d;color:#fff;border-radius:10px;padding:10px 11px;outline:none}.entry-box input:focus,.entry-box select:focus{border-color:rgba(255,212,0,.55)}.entry-box form button{grid-column:1/-1;border:0;border-radius:12px;min-height:44px;background:var(--yellow);color:#090909;font:1000 11px var(--font);letter-spacing:.08em;cursor:pointer}.ticket-preview{display:grid;justify-items:center;align-content:center;min-height:120px;border-radius:18px;background:radial-gradient(circle,#3c3300,#0d0d0a 72%);border:1px solid rgba(255,212,0,.18)}.ticket-preview span{font-size:9px;letter-spacing:.18em;color:#ded29a}.ticket-preview strong{font-size:46px;color:var(--yellow);line-height:1}.ticket-preview small{font-size:9px;color:#acb2b7}.form-status{grid-column:1/-1;margin:0;color:#d2d7dc;font-size:11px;font-weight:800}
.participants-box{margin-top:18px;padding:18px;border-radius:22px;border:1px solid rgba(255,255,255,.08);background:rgba(0,0,0,.22)}.participants-head{display:flex;justify-content:space-between;align-items:end}.participants-head span{font-size:9px;letter-spacing:.15em;color:#9da4aa;font-weight:900}.participants-head h2{margin:3px 0 0;font-size:20px}.participants-head>strong{font-size:22px;color:var(--yellow)}.participants-progress{height:8px;background:#171a1d;border-radius:999px;overflow:hidden;margin:12px 0}.participants-progress i{display:block;height:100%;width:0;background:linear-gradient(90deg,#9f7800,var(--yellow),#fff3a8);transition:width .35s ease}.participants-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:8px}.participant-slot{min-height:58px;padding:9px;border-radius:12px;background:rgba(255,255,255,.035);border:1px solid rgba(255,255,255,.07);display:grid;gap:2px}.participant-slot b{color:#fff;font-size:11px}.participant-slot span{color:#9da4aa;font-size:9px}.participant-slot.empty{opacity:.58}.participants-note{margin:10px 0 0;color:#848b91;font-size:10px;text-align:center}
.good-luck{display:flex;justify-content:center;align-items:center;gap:15px;margin-top:22px;color:#fff}.good-luck strong{font-size:20px;letter-spacing:.05em}.good-luck span{font-size:32px;filter:drop-shadow(0 8px 12px rgba(0,0,0,.4))}
.ambient-character{position:fixed;z-index:1;width:clamp(72px,8vw,130px);aspect-ratio:1;border-radius:26px;overflow:hidden;border:1px solid rgba(255,212,0,.16);box-shadow:0 20px 35px rgba(0,0,0,.38);opacity:.72;pointer-events:none;animation:float 5s ease-in-out infinite}.ambient-character img{width:100%;height:100%;object-fit:cover}.ambient-lucho{left:1.2vw;top:18vh}.ambient-chato{left:2.7vw;bottom:12vh;animation-delay:-1.1s}.ambient-zeus{right:2vw;top:18vh;animation-delay:-.5s}.ambient-donald{right:2.6vw;bottom:12vh;animation-delay:-2s}.ambient-lorenzo{left:9vw;top:50vh;animation-delay:-2.7s}.ambient-claudio{right:9vw;top:48vh;animation-delay:-3.2s}.ambient-ramon{left:10vw;bottom:3vh;animation-delay:-1.8s}.ambient-chatarra{right:10vw;bottom:3vh;animation-delay:-.8s}.ambient-micky{left:50%;bottom:2vh;transform:translateX(-50%);animation-delay:-2.2s}@keyframes float{0%,100%{translate:0 0;rotate:-1deg}50%{translate:0 -10px;rotate:1deg}}
@media(max-width:1240px){.ambient-character{opacity:.18}.participants-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:760px){.raffle-page{padding:22px 9px 60px}.raffle-panel{padding:14px;border-radius:20px}.payment-grid,.entry-box{grid-template-columns:1fr}.entry-box form{grid-template-columns:1fr 1fr}.ticket-preview{min-height:90px}.steps{grid-template-columns:1fr 1fr}.participants-grid{grid-template-columns:1fr 1fr}.raffle-prize-strip{align-items:flex-start}.raffle-prize-strip img{width:47%}.ambient-character{display:none}}
@media(max-width:480px){.entry-box form{grid-template-columns:1fr}.steps,.participants-grid{grid-template-columns:1fr}.pay-number{grid-template-columns:1fr;text-align:center}.raffle-prize-strip{display:grid}.raffle-prize-strip img{width:100%}}
@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}
