:root{color-scheme:dark;font-family:Inter,system-ui,Arial,sans-serif;background:#09151c;color:#f2f7f5}*{box-sizing:border-box}body{margin:0;background:radial-gradient(circle at 80% 12%,#82e85a16,transparent 40%),radial-gradient(circle at 10% 68%,#51c7df12,transparent 40%),#09151c;min-height:100dvh}a{color:#c7fa74;text-decoration:none}a:hover{text-decoration:underline}.shell{max-width:1050px;margin:0 auto;padding:0 24px}.top{display:flex;align-items:center;justify-content:space-between;padding:24px 0;border-bottom:1px solid #ffffff18}.logo{color:#fff;font-size:24px;letter-spacing:-1px;font-weight:1000}.logo span{color:#c7fa74}.mini-link{font-size:12px;color:#d5ecd5}.eyebrow{font-size:11px;letter-spacing:2px;color:#bbec83;font-weight:800;text-transform:uppercase}h1{font-size:clamp(30px,5vw,53px);letter-spacing:-2px;line-height:1.09;margin:14px 0}h1 em{font-style:normal;color:#c7fa74}h2{font-size:23px;margin:5px 0 9px}.lead{color:#b6c6c8;line-height:1.6;max-width:580px}.auth-layout{max-width:470px;margin:24px auto 45px;text-align:center}.hero-capi{height:170px;width:170px;object-fit:contain;filter:drop-shadow(0 14px 28px #000b)}.tabs{display:flex;gap:8px;background:#15272a;padding:6px;border-radius:15px;margin:28px 0 18px}.tabs a{flex:1;padding:11px;border-radius:10px;color:#b9c7c7;font-weight:750}.tabs a.selected{background:#c7fa74;color:#122018}.auth-layout form{text-align:left}label{display:grid;gap:7px;font-size:13px;color:#dae5e3;margin-bottom:16px;font-weight:650}input{width:100%;background:#162b30;border:1px solid #ffffff2d;color:#fff;border-radius:12px;padding:15px;font:inherit;outline:none}input:focus{border-color:#c7fa74;box-shadow:0 0 0 3px #c7fa7420}button{font:inherit;cursor:pointer;border-radius:12px;font-weight:900;border:0;padding:15px 18px}.primary{background:#c7fa74;color:#172415}.auth-layout button{width:100%}.secondary{background:#1d3338;color:#e8f7ed;border:1px solid #416462}.fine{font-size:12px;color:#a3b5b5;line-height:1.6}.center{font-size:13px;color:#b2c6c4}.notice{padding:13px;border:1px solid #b8e58866;border-radius:12px;background:#b8e58812;color:#ecffdb;font-size:13px;line-height:1.5}footer{border-top:1px solid #ffffff15;margin-top:38px;padding:24px 0 34px;display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;font-size:12px;color:#9cacac}.dashboard{padding:30px 0}.welcome{display:flex;align-items:center;gap:20px;padding:20px 0 36px}.dash-capi{width:150px;height:160px;object-fit:contain}.email{color:#90a7ad;font-size:12px}.redeem,.panel,.legacy{border:1px solid #35504a;background:linear-gradient(140deg,#1a3030,#102229);border-radius:20px;padding:24px;margin:0 0 20px}.redeem{display:grid;grid-template-columns:1fr 1.25fr;gap:20px;align-items:center;border-color:#6a9b55}.redeem p,.legacy p{font-size:13px;line-height:1.6;color:#b5c7c6}.redeem form{display:flex;gap:10px;align-items:center}.redeem input{text-transform:uppercase;letter-spacing:1px;font-weight:800;min-width:0}.redeem button{white-space:nowrap}.panel-title{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px;gap:10px}.panel-title>span{color:#c7fa74;font-size:12px}.ticket{display:flex;justify-content:space-between;align-items:center;gap:18px;border:1px solid #ffffff17;background:#15282d;padding:16px;border-radius:13px;margin:9px 0}.ticket div{display:grid;gap:8px}.ticket b{font-size:17px}.ticket span{font-size:12px;color:#a6b8b8}.small-button{background:#c7fa74;color:#12221d;padding:11px 14px;border-radius:11px;font-weight:850;font-size:12px;white-space:nowrap}.empty{color:#a8b7bd;font-size:13px}.upcoming{display:grid;grid-template-columns:repeat(3,1fr);gap:11px}.upcoming-item{padding:16px;border:1px solid #ffffff13;border-radius:14px;background:#14282d;display:grid;gap:12px;min-height:103px}.upcoming-item small{font-size:11px;color:#b8ee90}.legacy summary{cursor:pointer;font-weight:750}.legacy form{display:flex;gap:10px;margin-top:16px}.legacy input{flex:1;min-width:0}.logout{text-align:right}.sr{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media(max-width:720px){.shell{padding:0 16px}.top{padding:17px 0}.dashboard{padding:12px 0}.welcome{gap:8px}.dash-capi{width:93px;height:110px}.welcome h1{font-size:30px}.redeem{display:block;padding:18px}.redeem form{display:grid}.redeem button{width:100%}.ticket{flex-wrap:wrap}.upcoming{grid-template-columns:1fr}.upcoming-item{min-height:60px}.legacy form{display:grid}footer{font-size:11px}}

/* Simulación de fichas CapiBonus V1 */
.demo-balances{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:12px 0}
.demo-balances>div{border-radius:16px;padding:18px 12px;background:#173032;border:1px solid #41614c}
.demo-balances small,.demo-balances strong{display:block}
.demo-balances small{font-size:12px;color:#b4cbc3;margin-bottom:8px}
.demo-balances strong{font-size:clamp(20px,4vw,29px);color:#c7fa74}
.form-retiro{display:grid;gap:10px;margin:16px 0}
.form-retiro label{display:grid;gap:8px}
.form-retiro input{width:100%;box-sizing:border-box;padding:12px;border-radius:12px;border:1px solid #56806f;background:#102329;color:#fff}
.codigo-retiro{font-family:monospace;letter-spacing:.04em;color:#c7fa74}
button:disabled{opacity:.45;cursor:not-allowed}
@media(max-width:360px){.demo-balances{grid-template-columns:1fr}}
