:root{font-family:'Be Vietnam Pro',Arial,sans-serif;color:#1E1E1E;background:#FFF9F6;font-synthesis:none}*{box-sizing:border-box}body{margin:0}header{max-width:1220px;margin:auto;padding:30px 36px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #E9D8D0}.brand{color:#1E1E1E;text-decoration:none;font-size:34px;letter-spacing:-2px;font-weight:900}.brand span{color:#EE5923}.brand small{display:block;font-size:8px;letter-spacing:1.5px;margin-top:5px}.badge{font-size:10px;letter-spacing:1.8px;border:1px solid #B9A79F;border-radius:30px;padding:12px 18px}main{max-width:1150px;margin:50px auto;padding:0 24px}.layout{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}.eyebrow{font-size:10px;letter-spacing:2px;font-weight:bold;color:#9D360F;margin-bottom:25px}h1{font-size:74px;line-height:1.04;letter-spacing:-4px;margin:24px 0}h1 span{color:#D44A17}.intro{font-size:19px;line-height:1.7;color:#61544E}.intro strong{color:#1E1E1E}.prize{display:flex;gap:16px;align-items:center;margin:32px 0;padding:20px 0;border-top:1px solid #E9D8D0;border-bottom:1px solid #E9D8D0}.prize>span{font-size:58px;font-weight:bold;color:#D44A17}.prize div{font-size:10px;letter-spacing:1px}.prize strong{display:block;font-size:23px;margin-top:7px}.steps{padding:0;display:flex;gap:20px;list-style-position:inside;font-size:11px;color:#6B5951}.steps .active{font-weight:bold;color:#9D360F}.card{background:white;border:1px solid #E9D8D0;border-radius:18px;padding:34px;box-shadow:0 16px 50px #6B280D10}.card h2{font-size:28px;margin:0 0 10px;letter-spacing:-1px}.muted{color:#6B5951;font-size:13px;line-height:1.6}label{display:block;font-size:13px;font-weight:600;margin:24px 0 9px}em{color:#9D360F;font-style:normal}.optional{float:right;color:#6B5951;font-size:10px;font-weight:normal}input:not([type=checkbox]):not([type=hidden]){width:100%;padding:14px 15px;border:1px solid #94827A;border-radius:7px;background:#FFFCFA;font-size:15px;color:#1E1E1E;outline:none}input:focus{border-color:#EE5923!important;box-shadow:0 0 0 3px #EE592330}input[aria-invalid=true]{border-color:#bf4439!important}.field-error{color:#b6372d;font-size:12px;margin:5px 0 0;line-height:1.5}.consents{margin:24px 0}.check{display:flex;gap:10px;align-items:flex-start;font-size:11px;font-weight:normal;line-height:1.7;margin:14px 0 0}.check input{margin:3px 0 0;accent-color:#EE5923;min-width:16px;width:16px;height:16px}button{width:100%;border:0;border-radius:7px;background:#EE5923;color:#000;padding:16px;font-size:13px;font-weight:bold;letter-spacing:1px;cursor:pointer}button span{float:right}button:hover{background:#D44A17}button:disabled{opacity:.5;cursor:wait}.fine{text-align:center;font-size:10px;color:#6B5951;margin:16px 0 0}.alert{background:#fff2ed;border:1px solid #f2cbbd;color:#a93b27;padding:13px;border-radius:7px;line-height:1.6;font-size:13px;margin:20px 0}.centered{max-width:570px;margin:60px auto;text-align:center}.centered label{text-align:left}.small-title{font-size:30px;line-height:1.4;letter-spacing:-1px}.symbol{font-size:35px;color:#9D360F;background:#FFF3EE;width:75px;height:75px;line-height:75px;border-radius:50%;margin:25px auto}.otp{text-align:center;font-size:28px!important;letter-spacing:12px}.secondary{background:#FFF3EE;color:#9D360F;margin:15px 0}.back{display:inline-block;margin:20px 0 0;color:#9D360F;font-size:13px}.ticket{border:2px dashed #D44A17;border-radius:12px;padding:22px;margin:28px 0;background:#FFF3EE}.ticket p{font-size:10px;letter-spacing:2px}.ticket strong{font-size:36px;color:#9D360F}footer{text-align:center;color:#6B5951;font-size:10px;line-height:1.9;padding:25px}.stats{display:flex;gap:15px;flex-wrap:wrap}.stats>div{background:white;border:1px solid #94827A;border-radius:8px;padding:20px;flex:1}.stats strong{display:block;font-size:30px}.stats span{font-size:12px}.search{display:flex;gap:12px;margin:24px 0}.search button{width:150px}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse;font-size:12px;background:white;white-space:nowrap}th,td{text-align:left;border-bottom:1px solid #94827A;padding:14px}th{background:#FFF3EE}nav{margin:25px 0}a{color:#9D360F}@media(max-width:760px){header{padding:20px;gap:15px}.brand{font-size:28px}.badge{font-size:8px;letter-spacing:.5px;padding:8px;max-width:150px;text-align:center}main{margin:24px auto;padding:0 18px}.layout{grid-template-columns:1fr;gap:24px}h1{font-size:50px;letter-spacing:-2px}.hero .eyebrow{margin-bottom:10px}.intro{font-size:16px}.prize{margin:20px 0}.card{padding:25px 22px}.steps{gap:12px;font-size:10px}.centered{margin:30px auto}.small-title{font-size:24px}.stats>div{min-width:130px}}

/* Logo PNG giữ tỉ lệ gốc; màu chữ tối đảm bảo AA trên nút cam. */
:root{--brand:#EE5923;--brand-hover:#D44A17;--brand-tint:#FFF3EE;--ink:#1E1E1E}
.brand{display:inline-flex;align-items:center;flex-shrink:0;line-height:0}
.brand img{height:44px;width:auto;display:block}
.stats strong{color:#9D360F}
:focus-visible{outline:3px solid #9D360F;outline-offset:4px}
input::placeholder{color:#75655D;opacity:1}
@media(max-width:760px){.brand img{height:34px}.badge{max-width:145px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto}}
.demo-choice{max-width:960px;margin:60px auto}.demo-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin:32px 0}.demo-card{display:flex;flex-direction:column;align-items:flex-start;gap:16px}.demo-card h2{font-size:25px;line-height:1.4}.demo-card .muted{flex:1}.button-link{display:block;width:100%;background:#EE5923;color:#000;text-decoration:none;text-align:center;padding:16px;border-radius:7px;font-weight:700}.button-link:hover{background:#D44A17}.variant-note{color:#9D360F;font-size:14px;font-weight:700}.summary{margin:24px 0}.admin-filters{align-items:end;flex-wrap:wrap}.admin-filters>input{flex:1;min-width:180px}.admin-filters label{margin:0;font-size:12px;min-width:150px}.admin-filters select{display:block;max-width:100%;width:100%;padding:14px 10px;margin-top:6px;border:1px solid #94827A;border-radius:7px;color:#1E1E1E;background:white}.export-links{display:flex;gap:24px;flex-wrap:wrap;margin:20px 0;font-size:14px}.skip-otp[hidden]{display:none}.ticket strong{font-size:clamp(22px,5vw,36px);overflow-wrap:anywhere}@media(max-width:760px){.demo-grid{grid-template-columns:1fr}.demo-choice{margin:24px auto}.admin-filters>input{flex-basis:100%}}
/* Form đăng ký mobile: thu gọn phần giới thiệu, giữ nguyên mẫu desktop. */
.mobile-copy{display:none}
@media(max-width:760px){
 .registration-page header{padding:10px 14px;gap:10px}
 .registration-page .brand img{height:28px}
 .registration-page .badge{font-size:8px;padding:5px 8px;max-width:155px;letter-spacing:.2px}
 .registration-page main{margin:8px auto;padding:0 12px}
 .registration-page .layout{gap:8px}
 .registration-page .hero .eyebrow,.registration-page .hero h1,.registration-page .prize,.registration-page .steps{display:none}
 .registration-page .intro{font-size:12px;line-height:1.45;margin:0;text-align:center}
 .registration-page .intro br{display:none}
 .registration-page .card{padding:14px 16px;border-radius:12px}
 .registration-page .card>.eyebrow{display:none}
 .registration-page .card h2{font-size:22px;line-height:1.3;margin:0 0 3px}
 .registration-page .variant-note{font-size:11px;line-height:1.4;margin:3px 0}
 .registration-page .card>.muted{font-size:11px;line-height:1.45;margin:4px 0 8px}
 .registration-page .desktop-copy{display:none}
 .registration-page .mobile-copy{display:inline}
 .registration-page label{font-size:12px;line-height:1.4;margin:9px 0 4px}
 .registration-page input:not([type=checkbox]):not([type=hidden]){font-size:16px;line-height:1.3;padding:9px 11px;min-height:42px}
 .registration-page .field-error:empty{display:none}
 .registration-page .field-error{font-size:11px;margin:3px 0 0;line-height:1.4}
 .registration-page .optional{font-size:10px}
 .registration-page .consents{margin:12px 0}
 .registration-page .check{font-size:11px;line-height:1.45;gap:8px;margin:9px 0 0}
 .registration-page .check input{min-width:18px;width:18px;height:18px;margin-top:1px}
 .registration-page button[type=submit]{padding:12px;min-height:44px;font-size:13px}
 .registration-page .fine{font-size:10px;line-height:1.4;margin-top:8px}
 .registration-page footer{font-size:9px;line-height:1.5;padding:6px 12px 10px}
 .registration-page .alert{font-size:12px;margin:10px 0;padding:8px}
}
@media(max-width:760px) and (max-height:700px){
 .registration-page footer{display:none}
 .registration-page .card{padding:12px 14px}
 .registration-page .consents{margin:9px 0}
 .registration-page label{margin-top:7px}
}
@media(max-width:360px){
 .registration-page header{padding:8px 12px;gap:8px}
 .registration-page .brand img{height:25px}
 .registration-page .badge{font-size:7px;max-width:155px;padding:4px 6px}
 .registration-page .card{padding:12px}
}
/* Chữ nhẹ và khoảng thở cho form mobile. */
@media(max-width:760px){
 .registration-page main{margin:10px auto}
 .registration-page .layout{gap:12px}
 .registration-page .intro{font-size:10px;line-height:1.5}
 .registration-page .card{padding:18px}
 .registration-page .card h2{font-size:20px;line-height:1.35;margin-bottom:6px}
 .registration-page .variant-note{font-size:10px;font-weight:500;line-height:1.5;margin:4px 0}
 .registration-page .card>.muted{font-size:10px;line-height:1.6;margin:5px 0 14px}
 .registration-page label{font-size:10px;font-weight:500;line-height:1.5;margin:13px 0 5px}
 .registration-page .optional{font-size:9px}
 .registration-page .consents{margin:18px 0}
 .registration-page .check{font-size:10px;font-weight:400;line-height:1.6;margin:12px 0 0;gap:9px}
 .registration-page .fine{font-size:9px;line-height:1.5;margin-top:10px}
 .registration-page button[type=submit]{font-size:12px;font-weight:500}
}
@media(max-width:760px) and (max-height:700px){
 .registration-page main{margin:7px auto}
 .registration-page .layout{gap:8px}
 .registration-page .card{padding:12px 14px}
 .registration-page .card>.muted{margin-bottom:9px}
 .registration-page label{margin-top:9px}
 .registration-page .consents{margin:12px 0}
 .registration-page .check{margin-top:10px}
}
@media(max-width:360px){.registration-page .card{padding:12px}}
/* Nới thêm khoảng cách giữa các nhóm theo bản duyệt mobile. */
@media(max-width:760px){
 .registration-page .layout{gap:16px}
 .registration-page .card{padding:20px}
 .registration-page .card>.muted{margin-bottom:18px}
 .registration-page label{margin-top:17px;margin-bottom:6px}
 .registration-page .consents{margin:23px 0}
 .registration-page .check{margin-top:16px}
 .registration-page .fine{margin-top:12px}
}
@media(max-width:760px) and (max-height:700px){
 .registration-page .layout{gap:10px}
 .registration-page .card{padding:15px 16px}
 .registration-page .card>.muted{margin-bottom:12px}
 .registration-page label{margin-top:12px}
 .registration-page .consents{margin:16px 0}
 .registration-page .check{margin-top:13px}
}
@media(max-width:360px){
 .registration-page .card{padding:12px}
 .registration-page label{margin-top:10px}
 .registration-page .consents{margin:13px 0}
 .registration-page .check{margin-top:11px}
}
/* Nhấn mạnh thông điệp giải thưởng trên mobile. */
@media(max-width:760px){
 .registration-page .intro{font-size:14px;font-weight:500;line-height:1.5}
 .registration-page .intro strong{color:#9D360F;font-weight:800}
}
@media(max-width:760px){.registration-page .intro{font-size:19px}}
.bot-trap{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden;opacity:0;pointer-events:none}
.captcha-block{margin:20px 0;padding:14px;border:1px solid #E9D8D0;border-radius:8px;background:#FFF9F6}
.captcha-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px}
.captcha-heading label{margin:0;font-size:12px;line-height:1.6}
#captcha-question{display:inline-block;font-size:18px;font-weight:700;color:#9D360F;white-space:nowrap}
button.captcha-refresh{width:auto;flex-shrink:0;background:#FFF3EE;color:#9D360F;border:1px solid #E9D8D0;padding:8px;font-size:11px;letter-spacing:0;min-height:36px;font-weight:500}
.registration-page #captcha_answer{max-width:110px;background:#FFF}
@media(max-width:760px){.registration-page .captcha-block{padding:10px 12px;margin:16px 0}.registration-page .captcha-heading label{margin:0;font-size:11px;font-weight:500}.captcha-heading{gap:8px;margin-bottom:8px}#captcha-question{font-size:16px}button.captcha-refresh{font-size:10px;padding:7px}}
/* Phép tính và ô trả lời nằm cùng hàng, nhãn ở dòng riêng. */
.captcha-heading{margin-bottom:10px}
.captcha-equation{display:flex;align-items:center;gap:8px}
.captcha-equation #captcha-question{font-size:20px;line-height:1.2}
.registration-page .captcha-equation #captcha_answer{width:56px;max-width:56px;flex:0 0 56px;height:34px;min-height:34px;margin:0;padding:3px 5px;font-size:20px;line-height:1.1;text-align:center}
.captcha-equation .captcha-refresh{margin-left:auto}
@media(max-width:760px){.registration-page .captcha-heading label{font-size:11px;line-height:1.5}.captcha-heading{margin-bottom:10px}.captcha-equation{gap:8px}}
