/* GABRIEL STORE · Arma tu Combo, estilo premium. Solo apariencia. */
.combo-builder{padding-top:90px;padding-bottom:94px;position:relative;isolation:isolate}
.combo-builder:before{content:"";position:absolute;z-index:-1;width:60%;height:75%;top:10%;right:-13%;pointer-events:none;background:radial-gradient(ellipse,#875aba20,#dcb16617 36%,transparent 70%);filter:blur(30px)}
.combo-builder-heading{display:flex;justify-content:space-between;align-items:center;gap:25px;margin-bottom:30px}
.combo-builder-heading h2{font-size:clamp(31px,4.3vw,53px);line-height:1.1;letter-spacing:-.045em;margin:9px 0 13px;color:#fff4df}
.combo-builder-heading p{color:#c8c1ca;line-height:1.65;max-width:700px;font-size:15px}
.combo-builder-heading strong{color:#ffe1a3}
.combo-builder-stamp{display:flex;align-items:center;flex-direction:column;justify-content:center;flex-shrink:0;color:#f7d593;font-size:42px;text-shadow:0 0 22px #e8b56b88;width:105px;height:105px;border-radius:50%;border:1px solid #e9c17d6e;background:radial-gradient(circle at 30% 20%,#e3c78b24,#21182e 70%);box-shadow:0 0 38px #a16fe43d,inset 0 0 19px #c6975338;animation:gs-combo-breathe 5s ease-in-out infinite}
.combo-builder-stamp small{color:#edc891;font-size:9px;line-height:1.2;letter-spacing:1.5px;text-align:center}
@keyframes gs-combo-breathe{50%{box-shadow:0 0 64px #a16fe45d,inset 0 0 30px #e4ad6457}}
.combo-builder-shell{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(315px,0.88fr);gap:23px;align-items:start}
.combo-builder-picker,.combo-builder-summary{position:relative;border-radius:28px;border:1px solid #d1ad7566;box-shadow:0 20px 60px #0007;overflow:hidden}
.combo-builder-picker{background:linear-gradient(145deg,#1c1728,#0e111b 68%,#11101b);padding:25px}
.combo-builder-picker:before{content:"";position:absolute;pointer-events:none;left:-30%;top:-130px;width:90%;height:200px;background:#b681f42c;filter:blur(62px)}
.combo-builder-subhead{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:23px}
.combo-builder-subhead strong{color:#f2d6a5;font-size:15px;letter-spacing:.4px}
.combo-builder-subhead span{font-size:12px;color:#bab3cc}
.combo-builder-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.combo-builder-option{--choice-accent:#dcb669;display:flex;align-items:center;gap:12px;position:relative;min-height:98px;border-radius:17px;background:linear-gradient(120deg,#ffffff0b,#131521c7);border:1px solid #ffffff23;padding:13px;cursor:pointer;transition:transform .25s,border-color .25s,box-shadow .25s,background .25s;overflow:hidden}
.combo-builder-option:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 5% 50%,color-mix(in srgb,var(--choice-accent) 14%,transparent),transparent 70%);opacity:.45;pointer-events:none;transition:opacity .3s}
.combo-builder-option:hover{transform:translateY(-3px);border-color:color-mix(in srgb,var(--choice-accent) 65%,white);box-shadow:0 7px 25px color-mix(in srgb,var(--choice-accent) 18%,transparent)}
.combo-builder-option.is-selected{border-color:color-mix(in srgb,var(--choice-accent) 75%,white);background:linear-gradient(115deg,color-mix(in srgb,var(--choice-accent) 12%,#10101d),#13121d);box-shadow:0 0 26px color-mix(in srgb,var(--choice-accent) 24%,transparent),inset 0 0 15px #ffffff08}
.combo-builder-option.is-selected:before{opacity:1}
.combo-builder-option input{position:absolute;top:10px;right:10px;accent-color:#f6ca80;width:18px;height:18px;cursor:pointer}
.combo-builder-option .choice-logo{width:55px;height:55px;flex:none;display:grid;place-items:center;border-radius:16px;background:#090e1a;border:1px solid color-mix(in srgb,var(--choice-accent) 50%,#fff4);box-shadow:0 0 24px color-mix(in srgb,var(--choice-accent) 32%,transparent);overflow:hidden}
.choice-logo img{width:84%;height:80%;object-fit:contain}
.choice-body{min-width:0;position:relative;z-index:1;padding-right:10px;display:flex;flex-direction:column;gap:4px}
.choice-body b{font-size:13px;line-height:1.25;color:#fff5ec;overflow-wrap:anywhere}
.choice-body small{font-size:13px;color:#f2c878;font-weight:900}
.combo-builder-tip{margin-top:19px;display:flex;gap:10px;padding:14px;border-radius:15px;background:#e4b26210;border:1px solid #d9ac6343}
.combo-builder-tip>span{color:#f5c46d;font-size:22px;line-height:1}
.combo-builder-tip p{font-size:12px;line-height:1.62;color:#c9c0c1;margin:0}
.combo-builder-tip strong{color:#f2d19f}
.combo-builder-summary{padding:29px;background:radial-gradient(ellipse at 80% 0%,#d2a65b29,transparent 50%),linear-gradient(160deg,#292031,#13111c 66%,#11101a);border-color:#e0b77593;position:sticky;top:110px}
.combo-builder-summary:before{content:"";position:absolute;inset:0;pointer-events:none;border:1px solid #f3cb8650;border-radius:28px;box-shadow:inset 0 0 50px #c9993b13}
.combo-summary-kicker{color:#f1c982;font-size:11px;letter-spacing:2px;font-weight:850}
.combo-builder-summary h3{color:#fff2df;font-size:27px;letter-spacing:-.04em;margin:10px 0 21px;line-height:1.1}
.combo-gold{color:#edc67d}
.combo-selected-logos{display:flex;align-items:center;min-height:52px;margin:0 0 15px;padding-left:4px}
.combo-selected-logos span{display:grid;place-items:center;width:46px;height:46px;background:#131622;border:1px solid #e5b978aa;border-radius:15px;margin-left:-4px;box-shadow:0 6px 18px #0008,0 0 15px #ca9c5836;overflow:hidden}
.combo-selected-logos img{width:83%;height:83%;object-fit:contain}
.combo-selected-logos .combo-more{font-size:12px;color:#e6c186;font-weight:900}
.combo-selected-list{min-height:104px;max-height:240px;overflow:auto;display:flex;flex-direction:column;gap:9px;padding:11px 0 18px;border-bottom:1px solid #e6c88b3b}
.combo-selected-list .combo-empty{color:#b9b0bd;font-size:13px;line-height:1.65;padding:8px 0}
.combo-selected-list>div:not(.combo-empty){display:flex;align-items:center;justify-content:space-between;gap:14px;font-size:12.5px;color:#ded5d3}
.combo-selected-list strong{color:#f3ddba;font-variant-numeric:tabular-nums;white-space:nowrap}
.combo-price-breakdown{display:grid;gap:11px;margin:19px 0}
.combo-price-breakdown>div{display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:13px;color:#bbb0c1}
.combo-price-breakdown strong{color:#e0d8d6;font-size:15px}
.combo-price-breakdown .combo-savings-line{color:#84e9b2}
.combo-price-breakdown .combo-savings-line strong{color:#82e7a8}
.combo-grand-total{display:flex;align-items:center;justify-content:space-between;gap:10px;padding-top:17px;border-top:1px solid #e6c88b52}
.combo-grand-total>span{font-size:11px;line-height:1.3;letter-spacing:1.4px;font-weight:900;color:#d8c79f}
.combo-grand-total strong{font-size:clamp(30px,3vw,40px);font-variant-numeric:tabular-nums;color:#ffdf95;text-shadow:0 0 22px #e8a85338}
.combo-match-badge{margin:16px 0;font-size:12px;color:#e5d0b1;background:#d29b5721;border:1px solid #f0c07542;padding:10px 13px;border-radius:12px;line-height:1.48}
.combo-match-badge.is-existing{color:#92ebc0;border-color:#7ee5b04a;background:#69dd9920}
.combo-builder-add{width:100%;justify-content:center;margin-bottom:12px;position:relative;z-index:1}
.combo-builder-add:disabled{opacity:.47;cursor:not-allowed;box-shadow:none}
.combo-builder-summary>small{display:block;color:#ada9b3;font-size:11px;line-height:1.6}
@media(max-width:980px){.combo-builder-shell{grid-template-columns:minmax(0,1fr)}.combo-builder-summary{position:static}.combo-builder{padding-top:65px;padding-bottom:70px}}
@media(max-width:560px){.combo-builder-heading h2{font-size:34px}.combo-builder-stamp{display:none}.combo-builder-picker,.combo-builder-summary{padding:18px;border-radius:21px}.combo-builder-options{gap:9px}.combo-builder-option{padding:9px;min-height:100px;gap:7px}.combo-builder-option .choice-logo{width:42px;height:42px;border-radius:12px}.choice-body b{font-size:11px}.choice-body small{font-size:12px}.combo-builder-subhead{align-items:start;flex-direction:column}.combo-builder-summary h3{font-size:25px}.combo-grand-total strong{font-size:30px}}
@media(prefers-reduced-motion:reduce){.combo-builder-stamp{animation:none}.combo-builder-option{transition:none;transform:none!important}}
.gs-motion-paused .combo-builder-stamp{animation:none}

/* Edición ampliada: música, IA, herramientas y TV */
.combo-builder-categories{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:10px}
.combo-builder-category{font-family:inherit;font-size:12px;font-weight:700;line-height:1.2;color:#c7bdd2;border:1px solid #ffffff29;background:#ffffff09;border-radius:999px;padding:9px 13px;cursor:pointer;transition:background .22s,border-color .22s,box-shadow .22s}
.combo-builder-category.is-active{color:#24170a;background:linear-gradient(110deg,#f8d99b,#d5a14d);border-color:#edc780;box-shadow:0 0 18px #efbe6840}
.combo-builder-category:hover:not(.is-active){border-color:#eac48790;color:#f7e6c7}
.combo-builder-count{color:#adabb9;font-size:12px;margin:0 0 15px}
.combo-builder-option[hidden]{display:none!important}
.combo-builder-option:focus-within{outline:2px solid #f6c977;outline-offset:2px}
.combo-builder-option .choice-duration{display:block;font-family:inherit;font-size:10px;font-weight:600;line-height:1.4;font-style:normal;color:#a7e6c3}
.combo-builder-option .choice-duration.pending{color:#edc887}
.combo-selected-list small.pending-duration{display:block;font-size:10px;color:#e9c28b;margin-top:3px}
.combo-builder-duration{color:#92deb1;background:#265b4226;border:1px solid #71d49a49;border-radius:13px;padding:11px;font-size:12px;line-height:1.55;margin:16px 0 12px}
.combo-builder-duration.is-pending{color:#f9d696;background:#a8702524;border-color:#f0bd694d}
@media(max-width:560px){.combo-builder-categories{gap:6px}.combo-builder-category{padding:8px 10px;font-size:11px}.combo-builder-option{min-height:112px}.combo-builder-option .choice-duration{font-size:9px}.combo-builder-picker{overflow:hidden}}
@media(prefers-reduced-motion:reduce){.combo-builder-category{transition:none}}
/* El control de selección conserva la zona táctil por encima del texto en pantallas estrechas. */
.combo-builder-option input[type="checkbox"]{z-index:4;min-width:20px;min-height:20px}
