:root{--night:#08080a;--panel:#131217;--fire:#ff6a00;--foam:#ffb52e;--pink:#ff2d9a;--cyan:#22d3ee;--lime:#8bd450;--ink:#fff7ed;--muted:#b9adb6;--border:#ffffff1c;--primary:var(--fire);--primary-foreground:#fff;--input:#ffffff2b;--ring:var(--foam);--destructive:#ff4444;--background:var(--night);--foreground:var(--ink);--radius:.85rem}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--night);color:var(--ink);font-family:Arial,Helvetica,sans-serif}button,input,textarea{font:inherit}img{display:block;max-width:100%}.rewards-shell{min-height:100vh;background:radial-gradient(circle at 5% 20%,#ff6a0019,transparent 35%),radial-gradient(circle at 94% 75%,#ff2d9a16,transparent 35%),var(--night);overflow:hidden}.campaign-header{height:82px;padding:0 clamp(18px,5vw,76px);display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--border);position:relative;z-index:3}.campaign-header img{width:116px;height:76px;object-fit:contain}.campaign-header span{text-transform:uppercase;font-size:11px;font-weight:900;letter-spacing:.18em;color:var(--foam)}.hero-grid{min-height:calc(100vh - 82px);display:grid;grid-template-columns:.9fr 1.1fr;gap:clamp(35px,6vw,96px);padding:55px clamp(22px,6vw,92px) 76px;align-items:center;position:relative}.hero-grid:before{content:"";position:absolute;width:510px;height:510px;border:1px solid #ff6a0030;border-radius:50%;left:-270px;top:13%;box-shadow:0 0 90px #ff6a0014}.campaign-copy{position:relative;z-index:1;max-width:680px}.eyebrow{font-size:10px;font-weight:950;letter-spacing:.2em;color:var(--foam);margin:0 0 18px;text-transform:uppercase}.campaign-copy h1{font-family:Impact,"Arial Narrow",sans-serif;text-transform:uppercase;font-size:clamp(58px,7vw,104px);letter-spacing:-.045em;line-height:.88;margin:0 0 28px}.campaign-copy h1 em{font-style:normal;color:var(--fire);text-shadow:0 0 30px #ff6a0052}.hero-text{font-size:18px;line-height:1.7;color:#ddd1d8;max-width:620px}.hero-text strong{color:var(--lime)}.steps{display:flex;flex-wrap:wrap;gap:10px;margin-top:32px}.steps span{border:1px solid var(--border);border-radius:999px;padding:10px 14px;text-transform:uppercase;font-size:10px;font-weight:900;letter-spacing:.07em;background:#ffffff08}.steps b{color:var(--fire);margin-right:6px}.experience-card{position:relative;z-index:2;background:linear-gradient(145deg,#17151b,#0f0f12);border:1px solid #ffffff25;border-radius:28px;box-shadow:0 30px 100px #0009,0 0 45px #ff6a000d;min-height:670px;overflow:hidden}.experience-card:before{content:"";position:absolute;inset:0 0 auto;height:3px;background:linear-gradient(90deg,var(--fire),var(--pink),var(--cyan),var(--lime))}.capture-form,.wheel-stage,.result-stage{padding:clamp(26px,4vw,46px)}.form-heading{margin-bottom:28px}.form-heading span{font-size:9px;letter-spacing:.18em;color:var(--cyan);font-weight:900}.form-heading h2,.result-stage h2{font-family:Impact,"Arial Narrow",sans-serif;text-transform:uppercase;font-size:clamp(36px,4vw,54px);line-height:.95;letter-spacing:-.025em;margin:7px 0 9px}.form-heading p{color:var(--muted);margin:0;font-size:13px}.form-heading.center{text-align:center}.field-label{display:grid;gap:8px;margin:15px 0;color:#f3eaf0;font-size:12px;font-weight:850;letter-spacing:.02em}.field-label small{color:#8d828a;font-weight:500;margin-left:6px}.field-label input,.field-label textarea{height:48px;border-radius:12px;background:#09090c;border-color:#ffffff2d;padding:0 14px;color:#fff}.field-label textarea{height:82px;padding-top:13px;resize:vertical}.field-label input:focus,.field-label textarea:focus{border-color:var(--fire);box-shadow:0 0 0 3px #ff6a0026}.code-needed{padding:12px;border:1px solid #ffb52e66;border-radius:14px;background:#ffb52e0d}.ratings-box{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:21px 0}.rating-field{border:1px solid var(--border);border-radius:15px;padding:14px;margin:0;min-width:0}.rating-field legend{font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:.05em;color:#d7cad2;padding:0 5px}.rating-row{grid-template-columns:repeat(5,1fr);gap:5px;margin-top:8px}.rating{cursor:pointer;border:1px solid #ffffff20;border-radius:9px;min-width:0;height:48px;display:grid;place-items:center;background:#0a0a0d;position:relative}.rating span{font-size:16px}.rating b{font-size:8px;color:#877b83;position:absolute;bottom:2px}.rating:hover,.rating.active{border-color:var(--foam);background:#ffb52e15;transform:translateY(-2px)}.sr-radio{position:absolute;opacity:0;pointer-events:none}.consent-row{display:grid;grid-template-columns:18px 1fr;gap:10px;align-items:start;margin:18px 0;color:#a99da5;font-size:10px;line-height:1.5}.consent-row button{margin-top:1px;border-color:#ffffff3d;background:#09090c}.primary-action,.spin-button{width:100%;height:53px!important;border-radius:13px!important;background:linear-gradient(90deg,var(--fire),#ff8b00)!important;color:#fff!important;text-transform:uppercase;font-size:12px!important;font-weight:950!important;letter-spacing:.07em;box-shadow:0 10px 35px #ff6a0035}.primary-action:hover,.spin-button:hover{filter:brightness(1.12);transform:translateY(-1px)}.form-error{background:#ff383814;border:1px solid #ff56565c;color:#ffb8b8;border-radius:11px;padding:11px 13px;font-size:12px}.fine-print{color:#71666e;text-align:center;font-size:9px;line-height:1.5;margin:13px auto 0;max-width:520px}.wheel-stage{display:flex;flex-direction:column;align-items:center}.wheel-wrap{width:min(410px,82vw);aspect-ratio:1;position:relative;margin:4px auto 27px;filter:drop-shadow(0 24px 35px #000)}.wheel-pointer{position:absolute;z-index:5;top:-19px;left:50%;transform:translateX(-50%);color:#fff;font-size:42px;line-height:1;text-shadow:0 4px 0 #000,0 0 15px var(--foam)}.wheel{width:100%;height:100%;border-radius:50%;border:9px solid #f8e9c4;background:conic-gradient(#ff6a00 0 36deg,#ff2d9a 36deg 72deg,#22d3ee 72deg 108deg,#8bd450 108deg 144deg,#bc65ff 144deg 180deg,#ff6a00 180deg 216deg,#ff2d9a 216deg 252deg,#22d3ee 252deg 288deg,#8bd450 288deg 324deg,#bc65ff 324deg 360deg);position:relative;transition:transform 4.7s cubic-bezier(.12,.7,.08,1);box-shadow:inset 0 0 0 5px #151116,0 0 0 3px var(--foam)}.wheel>span{--angle:calc(var(--slot) * 36deg + 18deg);position:absolute;left:50%;top:50%;width:31px;height:31px;margin:-15px;display:grid;place-items:center;transform:rotate(var(--angle)) translateY(-160px) rotate(calc(var(--angle) * -1));background:#0b0b0d;color:#fff;border:2px solid #fff;border-radius:50%;font-size:12px;box-shadow:0 4px 10px #0008}.wheel-center{position:absolute;width:32%;height:32%;border-radius:50%;left:34%;top:34%;background:#09090b;border:5px solid #fff0cb;display:grid;place-items:center;box-shadow:0 0 35px #000}.wheel-center img{width:80%;height:80%;object-fit:contain}.spin-button{max-width:410px}.wheel-legend{display:grid;grid-template-columns:repeat(5,1fr);gap:7px;width:100%;margin-top:18px}.wheel-legend span{font-size:9px;text-align:center;color:#a99da5;border-top:1px solid var(--border);padding-top:8px}.wheel-legend b{display:block;color:var(--foam);margin-bottom:3px}.result-stage{text-align:center}.win-burst{display:inline-flex;border:1px solid var(--lime);color:var(--lime);border-radius:999px;padding:8px 15px;font-size:10px;font-weight:950;letter-spacing:.16em;box-shadow:0 0 25px #8bd45022}.result-stage>.eyebrow{margin:22px 0 4px}.result-stage h2{color:var(--foam);font-size:clamp(48px,6vw,76px);margin:0 auto 18px;max-width:650px}.coupon-label{font-size:10px;color:#93878f;margin-bottom:8px}.coupon-code{display:inline-block;font-family:monospace;font-size:24px;letter-spacing:.13em;border:1px dashed var(--foam);border-radius:12px;padding:12px 18px;background:#ffb52e0c;color:#fff}.digital-check{margin:27px auto 18px;text-align:left;background:linear-gradient(135deg,#fff4d9,#e8fff1);color:#171116;border-radius:20px;padding:23px;max-width:540px;box-shadow:0 18px 45px #0008;position:relative;overflow:hidden}.digital-check:after{content:"";position:absolute;right:-45px;bottom:-55px;width:150px;height:150px;border:1px solid #ff6a0040;border-radius:50%}.digital-check header{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #1711161a;padding-bottom:14px}.digital-check header small{font-size:8px;font-weight:950;letter-spacing:.16em;color:#e65f00}.digital-check header h3{font-family:Impact,"Arial Narrow",sans-serif;text-transform:uppercase;font-size:29px;margin:2px 0 0}.digital-check header img{width:82px;height:60px;object-fit:contain}.digital-check>p{display:flex;justify-content:space-between;gap:12px;margin:17px 0 14px;font-size:12px}.digital-check>p span{font-family:monospace;color:#625860}.stamp-row{display:grid;grid-template-columns:repeat(6,1fr);gap:9px}.stamp-row span{aspect-ratio:1;border:2px dashed #9b8b90;border-radius:50%;display:grid;place-items:center;font-weight:900;color:#897b81}.stamp-row span.stamped{background:var(--fire);color:#fff;border:2px solid #b94600;box-shadow:0 5px 15px #ff6a0040}.remaining{display:block!important;text-align:center;color:#625860;margin:15px 0 0!important}.remaining b{color:#e75f00}.loyalty-win{text-align:center;background:#8bd45025;border:1px solid #5f982f;border-radius:12px;padding:12px;margin-top:15px}.loyalty-win>b{color:#3b7018}.loyalty-win p{font-size:11px;margin:5px}.loyalty-win strong{font-family:monospace;letter-spacing:.1em}.whatsapp-save{display:inline-flex;justify-content:center;align-items:center;width:min(100%,540px);height:51px;background:#25d366;color:#062711;border-radius:13px;text-transform:uppercase;font-size:11px;font-weight:950;letter-spacing:.05em}.whatsapp-save:hover{filter:brightness(1.1)}footer{border-top:1px solid var(--border);padding:24px clamp(22px,6vw,92px);display:flex;justify-content:space-between;gap:20px;color:#766a72;font-size:9px;text-transform:uppercase;letter-spacing:.08em}
.campaign-copy:before{content:"";position:absolute;inset:-45px -20px;background:linear-gradient(90deg,#08080ad9,#08080a8c),url('/assets/img/barra-la-micheta.webp') center/cover no-repeat;border-radius:28px;opacity:.23;filter:saturate(1.2);z-index:-1;mask-image:linear-gradient(90deg,#000,transparent 94%)}
@media(max-width:1080px){.hero-grid{grid-template-columns:1fr;padding-top:38px}.campaign-copy{max-width:850px}.campaign-copy h1{font-size:clamp(58px,10vw,96px)}.experience-card{min-height:0}.wheel>span{transform:rotate(var(--angle)) translateY(-160px) rotate(calc(var(--angle) * -1))}}
@media(max-width:720px){.campaign-header{height:70px;padding:0 16px}.campaign-header img{width:92px;height:65px}.campaign-header span{font-size:8px}.hero-grid{padding:35px 14px 55px;gap:30px}.campaign-copy{padding:0 7px}.campaign-copy h1{font-size:55px}.hero-text{font-size:15px}.experience-card{border-radius:21px}.capture-form,.wheel-stage,.result-stage{padding:27px 18px}.ratings-box{grid-template-columns:1fr}.rating-field{padding:12px}.rating{height:52px}.wheel-wrap{width:min(360px,82vw)}.wheel>span{transform:rotate(var(--angle)) translateY(-36vw) rotate(calc(var(--angle) * -1));width:27px;height:27px;margin:-13px}.wheel-legend{grid-template-columns:repeat(3,1fr)}.result-stage h2{font-size:50px}.stamp-row{gap:5px}.digital-check{padding:18px}.digital-check>p{display:grid}.coupon-code{font-size:18px}footer{display:grid;padding-bottom:32px}}
@media(max-width:420px){.campaign-copy h1{font-size:47px}.steps span{font-size:8px}.wheel>span{transform:rotate(var(--angle)) translateY(-34vw) rotate(calc(var(--angle) * -1));font-size:10px}.digital-check header h3{font-size:24px}.digital-check header img{width:68px}.stamp-row span{font-size:11px}.campaign-header span{max-width:110px;text-align:right}}
.ticket-field{padding:13px;border:1px solid #22d3ee55;border-radius:14px;background:#22d3ee09}.marketing-consent{margin-top:-7px}.marketing-consent b{color:var(--foam)}
.admin-gate{min-height:100vh;display:grid;place-content:center;text-align:center;padding:28px;background:radial-gradient(circle at 50% 20%,#ff6a0026,transparent 35%),var(--night)}.admin-gate img{width:170px;margin:0 auto 25px}.admin-gate h1{font-family:Impact,"Arial Narrow",sans-serif;text-transform:uppercase;font-size:clamp(48px,8vw,82px);line-height:.9;margin:8px 0 20px}.admin-gate>p:not(.eyebrow){color:var(--muted);max-width:540px}.admin-login,.export-link{display:inline-flex;align-items:center;justify-content:center;background:var(--fire);color:#fff;padding:14px 20px;border-radius:12px;font-size:11px;font-weight:950;text-transform:uppercase;letter-spacing:.06em;text-decoration:none;margin:18px auto 0}
.admin-shell{min-height:100vh;background:#0b0a0d}.admin-header{height:76px;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;padding:0 clamp(18px,4vw,58px);position:sticky;top:0;background:#0b0a0df2;backdrop-filter:blur(16px);z-index:10}.admin-header>div{display:flex;align-items:center;gap:14px;text-transform:uppercase;font-weight:900;font-size:10px;letter-spacing:.12em}.admin-header img{width:86px;height:62px;object-fit:contain}.admin-header nav{display:flex;align-items:center;gap:15px}.admin-header nav a{color:var(--foam);font-size:10px;text-transform:uppercase;font-weight:900;text-decoration:none}.admin-header nav small{color:#857980}.admin-content{width:min(1480px,94vw);margin:0 auto;padding:42px 0 80px}.admin-title,.section-heading{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:25px}.admin-title h1{font-family:Impact,"Arial Narrow",sans-serif;text-transform:uppercase;font-size:clamp(42px,5vw,70px);margin:0;line-height:.95}.export-link{margin:0;background:#fff;color:#131217}.stat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin:25px 0}.stat-grid article,.admin-card{border:1px solid var(--border);background:linear-gradient(145deg,#17151b,#111014);border-radius:18px}.stat-grid article{padding:22px}.stat-grid small{display:block;color:var(--muted);text-transform:uppercase;font-size:9px;font-weight:900;letter-spacing:.08em}.stat-grid b{display:block;font-family:Impact,"Arial Narrow",sans-serif;font-size:42px;margin-top:8px;color:var(--foam)}.admin-card{padding:25px;margin-top:18px;overflow:hidden}.admin-card h2{font-family:Impact,"Arial Narrow",sans-serif;text-transform:uppercase;font-size:34px;margin:2px 0 7px}.admin-card p{color:var(--muted);font-size:12px}.ticket-manager>form{display:grid;grid-template-columns:1fr 150px 190px;align-items:end;gap:12px;margin-top:20px}.ticket-manager label,.message-label{display:grid;gap:7px;color:#d9ced5;font-size:10px;font-weight:900;text-transform:uppercase}.ticket-manager input,.message-label input{height:46px;background:#09090c;border-color:#ffffff2b;color:#fff}.ticket-manager button{height:46px;background:var(--fire);font-weight:900}.generated-codes{margin-top:25px;border-top:1px solid var(--border);padding-top:20px}.generated-codes header{display:flex;justify-content:space-between;align-items:center}.generated-codes header button{height:36px;background:transparent}.generated-codes>div{display:grid;grid-template-columns:repeat(5,1fr);gap:9px;margin-top:13px}.generated-codes strong{font-family:monospace;text-align:center;padding:12px;border:1px dashed var(--foam);border-radius:9px;background:#ffb52e09}.section-heading span{color:var(--lime);font-size:10px;font-weight:900;text-transform:uppercase}.message-label{margin:0 0 18px}.admin-table{min-width:920px}.admin-table th{color:#9d9098;text-transform:uppercase;font-size:9px;letter-spacing:.04em}.admin-table td{border-color:var(--border);font-size:11px}.admin-table td>b{display:block}.admin-table td small{display:block;color:#887c83;font-family:monospace;margin-top:3px}.consent-yes,.ticket-ready{color:var(--lime)}.consent-no,.ticket-used{color:#8e828a}.wa-action{display:inline-flex;padding:8px 10px;border-radius:8px;background:#25d366;color:#082912;font-weight:900;text-decoration:none}.muted-action{color:#655c61}.mono{font-family:monospace;color:var(--foam)}
@media(max-width:900px){.stat-grid{grid-template-columns:repeat(2,1fr)}.ticket-manager>form{grid-template-columns:1fr 120px}.ticket-manager>form button{grid-column:1/-1}.generated-codes>div{grid-template-columns:repeat(3,1fr)}.admin-header nav small{display:none}}
@media(max-width:600px){.admin-content{width:min(100% - 24px,1480px);padding-top:28px}.admin-header{height:68px;padding:0 12px}.admin-header>div span{display:none}.admin-header nav{gap:10px}.admin-title,.section-heading{align-items:start;flex-direction:column}.export-link{width:100%;margin-top:0}.stat-grid{gap:8px}.stat-grid article{padding:16px}.stat-grid b{font-size:34px}.admin-card{padding:18px;border-radius:14px}.ticket-manager>form{grid-template-columns:1fr}.ticket-manager>form button{grid-column:auto}.generated-codes>div{grid-template-columns:repeat(2,1fr)}}
@media print{body{background:#fff;color:#000}.admin-header,.admin-title,.stat-grid,.admin-card:not(.ticket-manager),.ticket-manager>div:first-child,.ticket-manager>form,.generated-codes header button{display:none}.admin-content{width:100%;padding:0}.ticket-manager{border:0;background:#fff;padding:0}.generated-codes{border:0;margin:0}.generated-codes>div{grid-template-columns:repeat(4,1fr)}.generated-codes strong{color:#000;border-color:#000;break-inside:avoid}}
.hidden{display:none!important}.rating-row{display:grid}.rating input{position:absolute;opacity:0}.consent-row input{accent-color:var(--fire);margin-top:2px}.field-label input,.field-label textarea{border-style:solid;border-width:1px}.primary-action,.spin-button{display:flex;align-items:center;justify-content:center;border:0;cursor:pointer}.primary-action:disabled{opacity:.45;cursor:not-allowed}.install-body{min-height:100vh;display:grid;place-items:center;padding:28px;background:radial-gradient(circle at 50% 15%,#ff6a002b,transparent 38%),var(--night)}.install-card{width:min(620px,100%);padding:34px;background:linear-gradient(145deg,#17151b,#0f0f12);border:1px solid var(--border);border-radius:24px}.install-card>img{width:140px;margin:0 auto 20px}.install-card h1{font-family:Impact,"Arial Narrow",sans-serif;text-transform:uppercase;font-size:54px;margin:0 0 10px}.install-card>p{color:var(--muted);line-height:1.6}.install-form{display:grid;gap:13px}.install-form label,.login-form label{display:grid;gap:7px;font-size:11px;font-weight:900;text-transform:uppercase}.install-form input,.login-form input,.ticket-manager input,.message-label input{height:46px;border:1px solid #ffffff2b;border-radius:10px;padding:0 12px;background:#09090c;color:#fff}.install-grid{display:grid;grid-template-columns:1fr 120px;gap:12px}.install-form hr{width:100%;border:0;border-top:1px solid var(--border);margin:8px 0}.login-form{width:min(420px,92vw);display:grid;gap:14px;margin:0 auto}.admin-table-wrap{overflow-x:auto}.admin-table{width:100%;border-collapse:collapse}.admin-table th,.admin-table td{text-align:left;padding:12px 10px;border-bottom:1px solid var(--border)}.admin-card button{border:1px solid var(--border);border-radius:10px;color:#fff;cursor:pointer}.generated-codes header button{padding:7px 12px}.admin-header nav a{white-space:nowrap}.logout-link{color:#ff8d8d!important}.wheel-label{position:absolute;left:50%;top:50%;width:76px;text-align:center;font-size:8px;font-weight:900;line-height:1.05;color:white;text-shadow:0 1px 2px #000;transform:rotate(var(--angle)) translateY(-124px) rotate(calc(var(--angle) * -1));margin-left:-38px;margin-top:-12px}.wheel>span b{display:none}@media(max-width:520px){.install-card{padding:24px 18px}.install-grid{grid-template-columns:1fr}.wheel-label{transform:rotate(var(--angle)) translateY(-29vw) rotate(calc(var(--angle) * -1));font-size:7px;width:62px;margin-left:-31px}}
.wheel>span.wheel-label{width:76px;height:auto;margin:-12px 0 0 -38px;display:block;transform:rotate(var(--angle)) translateY(-124px) rotate(calc(var(--angle) * -1));background:transparent;border:0;border-radius:0;box-shadow:none;padding:0}@media(max-width:520px){.wheel>span.wheel-label{width:62px;margin-left:-31px;transform:rotate(var(--angle)) translateY(-29vw) rotate(calc(var(--angle) * -1))}}
