:root{--theme-text:#f6f7fc;--theme-soft:#aabbd4;--theme-surface:#111b2b;--theme-input:#0a101d;--theme-border:#344361;--theme-accent:#8ab8ff}
.appearance-bar{max-width:1200px;margin:0 auto;padding:12px 32px;display:flex;justify-content:flex-end}
.appearance-control{display:flex;align-items:center;gap:6px;flex-wrap:wrap;padding:5px;background:var(--theme-surface);border:1px solid var(--theme-border);border-radius:14px}
.appearance-label{color:var(--theme-soft);font-size:11px;padding:0 9px}
.appearance-control button{display:flex;align-items:center;gap:7px;color:var(--theme-soft);background:transparent;border:1px solid transparent;padding:9px 12px;border-radius:9px;font-size:12px;cursor:pointer}
.appearance-control button[aria-pressed=true]{background:var(--theme-input);border-color:var(--theme-accent);color:var(--theme-text);box-shadow:0 0 0 1px var(--theme-accent)}
.appearance-control button:focus-visible{outline:2px solid var(--theme-accent);outline-offset:3px}
.theme-swatch{width:13px;height:13px;border-radius:50%;border:1px solid #8897ad;flex-shrink:0}.swatch-black{background:#090b10}.swatch-white{background:#fff}.swatch-blue{background:#1a65e5}
html[data-theme=blue]{--bg:#071b3c;--panel:#102c56;--line:#315785;--muted:#b1c7e5;--theme-text:#f1f7ff;--theme-soft:#b1cbed;--theme-surface:#123464;--theme-input:#092349;--theme-border:#3d679b;--theme-accent:#79d8ff}
html[data-theme=white]{--bg:#f7f9fe;--panel:#fff;--line:#d3dded;--muted:#52617b;--cyan:#006a88;--purple:#6834c3;--theme-text:#172744;--theme-soft:#465b7a;--theme-surface:#fff;--theme-input:#edf3ff;--theme-border:#c5d2e7;--theme-accent:#235dc2}
html[data-theme=white] body,html[data-theme=blue] body{color:var(--theme-text)}
html[data-theme=white] :is(.panel,.purchase,.empty-state,dialog,.catalog .card,.floating,.cta,.metrics>div),html[data-theme=blue] :is(.panel,.purchase,.empty-state,dialog,.catalog .card,.floating,.cta,.metrics>div){background:var(--theme-surface);border-color:var(--theme-border);color:var(--theme-text)}
html[data-theme=white] :is(.bag,.subtle,.add,.float-nav a,.credentials,.chips span,.badge),html[data-theme=blue] :is(.bag,.subtle,.add,.float-nav a,.credentials,.chips span,.badge){background:var(--theme-input);color:var(--theme-text);border-color:var(--theme-border)}
html[data-theme=white] :is(input,select,textarea),html[data-theme=blue] :is(input,select,textarea){background:var(--theme-input);color:var(--theme-text);border-color:var(--theme-border)}
html[data-theme=white] :is(nav,.eyebrow,.secondary,.hero-tags,.brandstrip,.art-caption,.floating small,.category,.catalog .card .category,.plan-label,.plan-meta,.catalog .plan-meta,.catalog-note,footer p,footer a,.legal,.muted,.purchase>p,.purchase small,.order-dates,.delivery-toolbar label,.catalog-stats span,form label,.auth-grid p,.auth-points,td small,.inventory-row small,.product-terms ul,.product-terms p,.note,.message-label,.cart-row span){color:var(--theme-soft)}
html[data-theme=white] :is(.price,.price small,.metrics strong,.metrics span,.credentials pre,.order-dates b,.product-terms summary,.dialog-head button,.tabs button,.filters button,.cart-row button){color:var(--theme-text)}
html[data-theme=white] :is(th,.reply){background:#eaf0fc;color:var(--theme-text)}
html[data-theme=blue] :is(th,.reply){background:#163a69;color:var(--theme-text)}
html[data-theme=white] :is(td,.table-scroll,.inventory-row,.catalog-stats span){border-color:var(--theme-border)}
html[data-theme=white] :is(.tabs .active,.filters .active){background:#e0eaff;color:#174db3;border-color:#8caef0}
html[data-theme=blue] :is(.tabs .active,.filters .active){background:#225697;color:#fff;border-color:#77beff}
html[data-theme=white] .announcement{background:linear-gradient(90deg,#e1eeff,#ede6ff);color:#254575}
html[data-theme=blue] .announcement{background:linear-gradient(90deg,#113b72,#202d72);color:#e3edff}
html[data-theme=white] em{background:linear-gradient(100deg,#006d95,#225ac9 50%,#7232c8);background-clip:text;color:transparent}
.wordmark{display:block;padding:8px;border-radius:0;background:transparent;mix-blend-mode:screen;filter:none}html[data-theme=white] .wordmark{mix-blend-mode:multiply;background:transparent;filter:invert(1) hue-rotate(180deg)}
.big-logo{padding:12px;border-radius:28px}html[data-theme=white] .big-logo{mix-blend-mode:normal;background:#080d20}
html[data-theme=white] .remaining,html[data-theme=white] .stock:not(.empty){color:#087650!important}
html[data-theme=white] .stock.empty{color:#9f344c}
html[data-theme=white] .badge.delivered{background:#dcf5e9;color:#116343;border-color:#8ac9a9}
html[data-theme=white] :is(.badge.cancelled,.badge.refunded){background:#ffe9ee;color:#9c2640;border-color:#e9a8b7}
html[data-theme=white] .catalog .card{box-shadow:0 10px 28px #27436b12}
html[data-theme=white] .catalog .card:hover{box-shadow:0 15px 34px #315d9f23;border-color:#6f95df}
html[data-theme=blue] .catalog .card{background:linear-gradient(145deg,#153965,#10264d)}
@media(max-width:650px){.appearance-bar{padding:12px 22px;justify-content:center}.appearance-control{justify-content:center;width:100%;gap:5px}.appearance-label{font-size:10px;padding:0 5px}.appearance-control button{padding:9px 10px}}
@media(max-width:350px){.appearance-label{width:100%;text-align:center;padding:4px}}

/* Compact catalog, service details, and artwork controls. */
.catalog .grid{gap:20px;align-items:stretch}
.catalog .card{display:flex;flex-direction:column;border-radius:16px}
.catalog .card-content{padding:18px;display:flex;flex-direction:column;flex:1}
.catalog .card h3{font-size:20px;margin:8px 0 12px}
.catalog .plan-label{font-size:10px;letter-spacing:.5px;margin:0 0 5px}
.catalog .card select{padding:9px 10px;font-size:12px;min-height:39px}
.catalog .image-wrap{isolation:isolate}
.catalog .product-image{aspect-ratio:1.8}
.delivery-pill,.terms-trigger{position:absolute;top:10px;z-index:2;font-size:10px;font-weight:700;line-height:1.2;border-radius:8px;padding:8px 9px;box-shadow:0 3px 12px #0002}
.delivery-pill{left:10px;background:#d9f9cd;color:#175d17;border:1px solid #b5eaa4}
.delivery-pill.instant{background:#d7f2ff;color:#075276;border-color:#a6dfff}
.terms-trigger{right:10px;background:#fff;color:#253047;border:1px solid #dfe5f0;cursor:pointer}
.terms-trigger:hover{background:#edf0ff;color:#5234ce}
.catalog .plan-meta{grid-template-columns:repeat(2,minmax(0,1fr));gap:0;margin:12px 0 8px;border:1px solid var(--theme-border);border-radius:9px;overflow:hidden;background:var(--theme-input)}
.plan-meta>div{padding:9px 10px;min-width:0}
.plan-meta>div:nth-child(odd){border-right:1px solid var(--theme-border)}
.plan-meta>div:nth-child(-n+2){border-bottom:1px solid var(--theme-border)}
.meta-label{display:block;color:var(--theme-soft);font-size:9px;text-transform:uppercase;letter-spacing:.5px;margin-bottom:4px}
.plan-meta strong{display:block;font-size:11px;font-weight:500;line-height:1.4;color:var(--theme-text);overflow-wrap:anywhere}
.catalog .card .access-note{font-size:11px;line-height:1.6;color:var(--theme-soft);min-height:0;margin:0 0 13px}
.catalog .card .row{flex-direction:row;align-items:center;flex-wrap:wrap;margin-top:auto;margin-bottom:12px}
.catalog .price{font-size:26px}.catalog .stock{font-size:10px}
.catalog .card .add{padding:12px;background:linear-gradient(105deg,#285ce8,#7036ed);color:#fff;border:1px solid #7054f6;font-size:13px;font-weight:700;box-shadow:0 5px 14px #5330e126}
.catalog .card .add:hover:not(:disabled){filter:brightness(1.12)}
.catalog .card .add:disabled{background:#b92e42;border-color:#d34c60;color:#fff;opacity:1;box-shadow:none}
.catalog .stock.empty{color:#f48694}
html[data-theme=white] .catalog .stock.empty{color:#ad263c}
.service-terms-content{font-size:13px;line-height:1.8;color:var(--theme-soft)}
.service-terms-content ul{padding-left:20px}.service-terms-content li{margin:12px 0}
.service-terms-dialog .dialog-head{gap:16px;align-items:flex-start}.service-terms-dialog h2{font-size:20px;line-height:1.4}
@media(max-width:540px){.catalog .card-content{padding:18px}.catalog .plan-meta strong{font-size:12px}.catalog .card h3{font-size:22px}}
/* Catálogo: dos columnas en celular y cuatro en computadora. */
.catalog .grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}
.catalog .card{min-width:0;overflow:hidden}
.catalog .card-content{padding:15px}
.catalog .card h3{font-size:18px;line-height:1.3;min-height:47px;overflow-wrap:anywhere}
.catalog .card select{width:100%;min-width:0;text-overflow:ellipsis}
.catalog .delivery-pill{max-width:calc(100% - 78px);font-size:9px;left:7px;top:7px;padding:7px}
.catalog .terms-trigger{right:7px;top:7px;font-size:9px;padding:7px}
.catalog .card .add{min-height:44px;margin-top:0}
@media(min-width:701px) and (max-width:959px){.catalog .grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}}
@media(max-width:700px){
 .catalog.wrap{padding-left:14px;padding-right:14px}
 .catalog .grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
 .catalog .card{border-radius:16px}
 .catalog .card-content{padding:12px}
 .catalog .product-image{aspect-ratio:1.65}
 .catalog .card h3{font-size:16px;min-height:42px;margin:7px 0 10px}
 .catalog .card .category{font-size:9px}
 .catalog .plan-label{font-size:9px;margin-bottom:4px}
 .catalog .card select{font-size:11px;padding:8px 5px;min-height:38px}
 .catalog .delivery-pill{font-size:8px;left:6px;top:6px;padding:6px;max-width:calc(100% - 65px)}
 .catalog .terms-trigger{font-size:8px;right:6px;top:6px;padding:6px}
 .catalog .plan-meta{margin:9px 0 8px}
 .catalog .plan-meta>div{padding:7px 6px}
 .catalog .meta-label{font-size:8px;letter-spacing:0}
 .catalog .plan-meta strong{font-size:10px}
 .catalog .card .access-note{font-size:10px;line-height:1.5;margin-bottom:10px}
 .catalog .card .row{gap:4px;margin-bottom:10px}
 .catalog .price{font-size:23px}
 .catalog .price small{font-size:8px}
 .catalog .stock{font-size:9px;white-space:normal}
 .catalog .card .add{font-size:12px;padding:11px 6px}
 #catalogStats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
 #catalogStats span{padding:11px 9px;font-size:11px}
 .catalog .section-head h2{font-size:25px}
}
@media(max-width:360px){.catalog .grid{gap:9px}.catalog .card-content{padding:9px}.catalog .card h3{font-size:14px}.catalog .price{font-size:20px}}
