/* V91: carrito y checkout. Reutiliza la paleta y tipografía de Mi Cuenta y catálogo. */
html:has(body.purchase-page),body.purchase-page{background:#151419!important;background-image:none!important;color:#f5eff9!important;}
body.purchase-page>main{max-width:1360px!important;padding:38px 28px 64px!important;background:transparent!important;min-height:65vh;font-family:'Poppins','Segoe UI',sans-serif;}
body.purchase-page main *{box-sizing:border-box;}
body.purchase-page main .purchase-heading{margin:0 0 26px;}
body.purchase-page main .purchase-eyebrow{color:#c596e4;font-size:10px;font-weight:800;letter-spacing:1.8px;}
body.purchase-page main h1{font-size:30px!important;letter-spacing:-.8px;line-height:1.25;margin:6px 0 10px!important;color:#fff!important;}
body.purchase-page main .purchase-heading p{font-size:13px;color:#b9adc6!important;margin:0;}
body.purchase-page main .cart-layout,body.purchase-page #checkout-contenido>.layout-2{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(300px,1fr);gap:24px;align-items:start;}
body.purchase-page main .panel{background:linear-gradient(145deg,#231d2b,#1c1822)!important;border:1px solid #493651!important;border-radius:18px!important;padding:26px!important;box-shadow:0 12px 32px #00000020!important;color:#f5eff9!important;margin:0;min-width:0;}
body.purchase-page main h2{color:#f9f4fc!important;font-size:19px;letter-spacing:-.4px;margin:0 0 20px;}
body.purchase-page main h3{color:#f5eff9!important;font-size:15px;margin:0 0 8px;}
body.purchase-page main p,body.purchase-page main small{color:#bfb2cb;line-height:1.6;}
body.purchase-page main .linea-carrito{padding:20px 0;gap:20px;border-color:#403249!important;align-items:center;}
body.purchase-page main .linea-carrito:first-of-type{padding-top:6px;}
body.purchase-page main .linea-carrito:last-child{padding-bottom:0;border-bottom:0;}
body.purchase-page main .linea-carrito img{width:112px;height:112px;flex-shrink:0;object-fit:cover;border:1px solid #51405f;border-radius:13px;background:#18141d;}
body.purchase-page main .cart-line-info{min-width:0;}
body.purchase-page main .cart-line-info h3{overflow-wrap:anywhere;}
body.purchase-page main .cart-line-info p{font-size:18px;font-weight:700;color:#ead4fa;margin:8px 0 14px;}
body.purchase-page main .cart-quantity{display:flex;gap:9px;align-items:center;flex-wrap:wrap;}
body.purchase-page main .cart-quantity>span{min-width:24px;text-align:center;font-weight:700;}
body.purchase-page main button,body.purchase-page main .boton-principal{background:linear-gradient(135deg,#a64bd0,#713496)!important;border:1px solid #ba7cd4!important;color:#fff!important;border-radius:10px!important;padding:12px 17px;font-size:13px;font-weight:600;box-shadow:none!important;min-height:44px;transition:filter .15s,transform .15s;}
body.purchase-page main button:hover,body.purchase-page main .boton-principal:hover{opacity:1;filter:brightness(1.12);}
body.purchase-page main .boton-secundario{background:#302336!important;color:#ead9f4!important;border:1px solid #694c7b!important;}
body.purchase-page main .cart-qty-btn{width:38px;min-height:38px;height:38px;padding:0!important;}
body.purchase-page main button:disabled{opacity:.35;cursor:not-allowed;filter:none;}
body.purchase-page main .cart-remove{margin-left:7px;}
body.purchase-page main .resumen{position:sticky;top:24px;}
body.purchase-page main .resumen>p{display:flex;justify-content:space-between;gap:14px;font-size:13px;margin:15px 0;}
body.purchase-page main .resumen strong{color:#f5eff9;}
body.purchase-page main .resumen .boton-principal{display:flex;justify-content:center;width:100%;margin-top:22px;}
body.purchase-page main .resumen .purchase-note{display:block;padding-top:18px;margin-top:18px;border-top:1px solid #47334f;color:#b8a7c5;font-size:12px;}
body.purchase-page main .form-grid{gap:22px;}
body.purchase-page main .form-grid .purchase-heading{margin-bottom:0;}
body.purchase-page main .purchase-fields{border:0;padding:0;margin:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px;min-width:0;}
body.purchase-page main .purchase-fields legend{float:left;width:100%;grid-column:1/-1;margin:0 0 5px;padding:0;font-weight:700;font-size:15px;}
body.purchase-page main .purchase-fields legend+*{clear:both;}
body.purchase-page main .purchase-fields legend>span,body.purchase-page main .purchase-section-title>span{display:inline-flex;width:27px;height:27px;align-items:center;justify-content:center;margin-right:8px;border:1px solid #735086;border-radius:8px;background:#39273f;color:#dca8f6;font-size:10px;font-weight:700;vertical-align:middle;}
body.purchase-page main .purchase-field,body.purchase-page main .purchase-payment>label,body.purchase-page main #co-programacion>label{display:grid;gap:7px;min-width:0;color:#d6c6e1;font-size:12px;font-weight:500;}
body.purchase-page main .purchase-wide{grid-column:1/-1;}
body.purchase-page main .form-row-2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px;}
body.purchase-page main input:not([type=checkbox]),body.purchase-page main select,body.purchase-page main textarea{width:100%;min-width:0;background:#17121e!important;border:1px solid #574061!important;color:#f5eff9!important;border-radius:9px!important;min-height:45px;padding:11px 13px;font-size:13px;font-weight:400;color-scheme:dark;box-shadow:none;}
body.purchase-page main input::placeholder,body.purchase-page main textarea::placeholder{color:#94839f!important;}
body.purchase-page main input:focus,body.purchase-page main select:focus,body.purchase-page main textarea:focus{outline:2px solid #b774d9!important;outline-offset:2px;}
body.purchase-page main a:focus-visible,body.purchase-page main button:focus-visible{outline:2px solid #d7a7f5;outline-offset:3px;}
body.purchase-page main input:disabled{opacity:.55;}
body.purchase-page main .delivery-box{background:#1a1420!important;border:1px solid #5a3c68!important;border-radius:13px;padding:18px;margin:0;}
body.purchase-page main .purchase-section-title{font-size:15px;letter-spacing:0;margin:0 0 17px;}
body.purchase-page main #co-cobertura,body.purchase-page main #co-disponibilidad{font-size:12px;color:#bdabc9;}
body.purchase-page main #co-programacion{display:grid;grid-template-columns:1fr 1fr;gap:14px;}
body.purchase-page main #co-programacion[hidden]{display:none!important;}
body.purchase-page main #co-disponibilidad,body.purchase-page main #co-programacion>small{grid-column:1/-1;margin:0;}
body.purchase-page main #co-programacion>small{font-size:10px;line-height:1.7;color:#a99ab6;}
body.purchase-page main .save-address{display:flex;align-items:center;gap:10px;font-size:12px;color:#cbbad7;}
body.purchase-page main input[type=checkbox]{width:17px;height:17px;min-height:0;padding:0;margin:0;accent-color:#ae5fd0;flex-shrink:0;}
body.purchase-page main .purchase-payment{display:grid;gap:15px;padding-top:20px;border-top:1px solid #493651;}
body.purchase-page main .purchase-payment h2{margin:0;}
body.purchase-page main .coupon-box{padding:16px!important;border:1px dashed #715080!important;background:#1b1521!important;border-radius:11px;}
body.purchase-page main .coupon-box>label{display:block;font-size:12px;margin-bottom:9px;color:#d6c6e1;}
body.purchase-page main .coupon-box .inline{display:flex;gap:10px;}
body.purchase-page main #cupon-msg{font-size:11px;color:#d4ace6;margin:10px 0 0;}
body.purchase-page main #cupon-msg:empty{display:none;}
body.purchase-page main .purchase-confirm{display:flex;justify-content:space-between;gap:12px;width:100%;min-height:48px;}
body.purchase-page main .purchase-items{display:grid;gap:14px;padding-bottom:20px;margin-bottom:20px;border-bottom:1px solid #493651;}
body.purchase-page main .purchase-items:empty{display:none;}
body.purchase-page main .purchase-summary-item{display:flex;gap:12px;align-items:center;}
body.purchase-page main .purchase-summary-item img{width:55px;height:55px;object-fit:cover;border:1px solid #594062;border-radius:9px;background:#17121e;}
body.purchase-page main .purchase-summary-item>div{min-width:0;}
body.purchase-page main .purchase-summary-item strong{display:block;font-size:12px;overflow-wrap:anywhere;}
body.purchase-page main .purchase-summary-item small{display:block;font-size:11px;margin-top:4px;}
body.purchase-page main .resumen hr{border:0;border-top:1px solid #5a3e66;margin:22px 0;}
body.purchase-page main .resumen h2:last-child{display:flex;justify-content:space-between;gap:12px;font-size:21px;margin:0;}
body.purchase-page main .empty{background:#201a26!important;border:1px dashed #745483!important;color:#ece0f4!important;padding:50px 24px;}
body.purchase-page main .empty .boton-principal{margin-top:15px;}
@media(max-width:850px){body.purchase-page>main{padding:26px 18px 42px!important;}body.purchase-page main .cart-layout,body.purchase-page #checkout-contenido>.layout-2{grid-template-columns:1fr;}body.purchase-page main .resumen{position:static;}}
@media(max-width:480px){body.purchase-page>main{padding:24px 12px 32px!important;}body.purchase-page main .panel{padding:20px 16px!important;border-radius:14px!important;}body.purchase-page main h1{font-size:25px!important;}body.purchase-page main .linea-carrito{gap:13px;align-items:flex-start;}body.purchase-page main .linea-carrito img{width:78px;height:85px;}body.purchase-page main .cart-remove{margin-left:0;}body.purchase-page main .purchase-fields{grid-template-columns:1fr;}body.purchase-page main #co-programacion{grid-template-columns:1fr;}body.purchase-page main .coupon-box .inline{flex-wrap:wrap;}body.purchase-page main .coupon-box .inline input{flex-basis:100%;}body.purchase-page main .coupon-box .inline button{width:100%;}}
body.purchase-page main .save-address[hidden]{display:none!important;}

body.purchase-page main #co-programacion>label:has(#co-franja-alternativa){grid-column:1/-1;}
