/* Theme preferences affect colours only; photographs and product graphics stay unchanged. */
html{color-scheme:light}
.utility-bar .utility-inner{height:auto;min-height:38px;gap:20px}
.utility-bar .utility-active{height:38px}
.utility-bar .theme-toggle{display:inline-flex;align-items:center;justify-content:center;gap:9px;flex-shrink:0;min-height:36px;padding:4px 0;border:0;background:transparent;color:#46494f;font:inherit;font-weight:600;line-height:1.2;white-space:nowrap;cursor:pointer}
.theme-toggle-track{position:relative;display:inline-block;flex-shrink:0;width:36px;height:20px;border:1px solid #69737d;border-radius:999px;background:#737c87;transition:background-color .16s ease,border-color .16s ease}
.theme-toggle-track::after{content:"";position:absolute;top:2px;left:2px;width:14px;height:14px;border-radius:50%;background:#fff;box-shadow:0 1px 3px #0003;transition:transform .16s ease}
.theme-toggle:hover .theme-toggle-track{border-color:#7c838d}
.utility-bar .theme-toggle:focus-visible{outline:3px solid #b5261c;outline-offset:3px;border-radius:5px}
html[data-theme="dark"]{
  color-scheme:dark;
  --ink:#f0f2f5;--body:#dce0e6;--text:#f0f2f5;--muted:#b7bec9;--muted-dark:#b7bec9;
  --surface:#1b1e24;--soft:#14171c;--line:#3b414b;--claro-soft:#3b2525;
  --theme-page:#101216;--theme-surface:#1b1e24;--theme-raised:#252930;--theme-border:#3b414b;
  --theme-text:#f0f2f5;--theme-muted:#b7bec9;--theme-accent:#ff958a;
  --theme-error-bg:#442626;--theme-error-text:#ffb5ae;--theme-ok-bg:#17392d;--theme-ok-text:#a1e7c5;
}
html[data-theme="dark"] body{background:var(--theme-page);color:var(--body)}
html[data-theme="dark"] :focus-visible{outline-color:var(--theme-accent)}
html[data-theme="dark"] .utility-bar{background:#1d2026;color:var(--theme-muted)}
html[data-theme="dark"] .utility-active{color:var(--theme-accent);border-color:var(--theme-accent)}
html[data-theme="dark"] .utility-bar .theme-toggle{color:var(--theme-text)}
html[data-theme="dark"] .theme-toggle-track{background:#b82a21;border-color:#e17d72}
html[data-theme="dark"] .theme-toggle-track::after{transform:translateX(16px)}

/* Shared navigation remains the same size and keeps all of its native states. */
html[data-theme="dark"] .site-header{background:var(--theme-surface);border-color:var(--theme-border)}
html[data-theme="dark"] .v2-header .header-inner .site-nav{background:var(--theme-surface);border-color:var(--theme-border)}
html[data-theme="dark"] :is(.site-nav>a,.nav-menu>summary,.search-menu>summary,.v2-nav-toggle){color:var(--theme-text)}
html[data-theme="dark"] .v2-nav-toggle{background:var(--theme-surface)}
html[data-theme="dark"] .v2-header .nav-menu{border-color:var(--theme-border)}
html[data-theme="dark"] .v2-header .nav-menu>summary{color:var(--theme-text)}
html[data-theme="dark"] .v2-header .nav-panel{background:var(--theme-raised);color:var(--theme-text);border-color:var(--theme-border)}
html[data-theme="dark"] .v2-header .nav-panel :is(a,h3,.nav-panel-title){color:var(--theme-text);border-color:var(--theme-border)}
html[data-theme="dark"] .v2-header .nav-panel p{color:var(--theme-muted)}
html[data-theme="dark"] .v2-header .nav-panel a:hover{color:var(--theme-accent)}
html[data-theme="dark"] .v2-header .nav-menu[open]>summary,
html[data-theme="dark"] .v2-header .nav-menu>summary:hover,
html[data-theme="dark"] body[data-page="home"] .v2-header [data-menu="services"]>summary{background:#3b2525;color:#fff}
html[data-theme="dark"] body[data-page="celulares"] [data-nav-page="celulares"],
html[data-theme="dark"] body[data-page="cambiate"] [data-nav-page="cambiate"],
html[data-theme="dark"] body[data-page="internet-tv"] [data-nav-page="internet-tv"]{color:var(--theme-accent)}

/* Page backgrounds and existing cards. No image filters or geometry overrides. */
html[data-theme="dark"] :is(.v2-campaigns,.v2-quick,.v2-hogar-hero,.v2-promotions,.v2-advice,.home-featured,.home-help,.catalog-section){background:var(--theme-page);border-color:var(--theme-border)}
html[data-theme="dark"] :is(.v2-plans,.v2-fibra-band,.v2-help,.contact-section,.coverage-section,.mobile-plans-section){background:var(--soft);border-color:var(--theme-border)}
html[data-theme="dark"] :is(.v2-plan-card,.v2-promo,.v2-quick-link,.v2-zarela,.contact-panel,.coverage-form-card,.mobile-plan-card,.card,.modal-card,.compare-card,.share-preview,.product-snapshot,.mini-card,.purchase-panel,.whatsapp-chatbot,.chatbot-form,.toolbar,.header-search){background:var(--theme-surface);color:var(--theme-text);border-color:var(--theme-border)}
html[data-theme="dark"] .v2-plan-card{border-color:var(--theme-surface)}
html[data-theme="dark"] :is(.v2-plan-header,.mobile-plan-card .plan-topline,.plan-includes){background:var(--theme-raised);color:var(--theme-text)}
html[data-theme="dark"] .v2-plan-tag{background:#203c41;color:#b9e9ec}
html[data-theme="dark"] .v2-quick-link:hover{background:var(--theme-raised);color:var(--theme-accent);border-color:#93564f}
html[data-theme="dark"] :is(.v2-advice-item,.faq-list,.faq-item,.spec-row,.plan-gigas>div+div,.brand-strip){border-color:var(--theme-border)}
html[data-theme="dark"] :is(.v2-section-heading h2,.v2-plan-header h3,.v2-plan-price,.v2-promo h3,.v2-fibra-copy h2,.v2-fibra-point h3,.v2-advice-item h3,.v2-zarela-copy h3,.help-intro h2,.faq-item summary,.section-head h2,.body h3,.compare-card h3,.compare-modal-head h2,.modal-card h3,.product-snapshot h3,.share-preview h2,.coverage-form-card h3,.contact-address-primary,.contact-address-primary h2,.contact-address-city,.contact-actions-title,.mobile-plan-card h3,.plan-topline,.plan-price>span,.plan-includes strong,.chatbot-form-head strong,.form-field label,.chatbot-field label,.manual-location label,.operator-fieldset legend,.spec-row strong){color:var(--theme-text)}
html[data-theme="dark"] :is(.v2-section-heading>p:last-child,.v2-plan-price small,.v2-plan-benefits>p,.v2-plan-benefits li,.v2-plan-note,.v2-promo p,.v2-fibra-copy p,.v2-advice-item p,.v2-zarela-copy p,.help-intro p,.faq-item p,.section-head p,.body p,.compare-brand,.compare-note,.compare-modal-head p,.spec-row span,.share-help,.share-option small,.share-preview p,.product-snapshot p,.purchase-copy,.coverage-form-card>p,.map-caption div span,.contact-address-label,.contact-address-reference,.consent,.chatbot-consent,.coverage-consent,.privacy-note,.chatbot-form-head span,.speed-label,.plan-gigas span,.plan-price small,.plan-includes span){color:var(--theme-muted)}
html[data-theme="dark"] :is(.v2-eyebrow,.kicker,.v2-section-heading h2 span,.v2-plan-speed,.v2-all-link,.v2-plan-note a,.v2-promo a,.v2-advice-item a,.v2-fibra-copy h2 span,.contact-map-cue,.contact-location .kicker,.plan-gigas strong,.plan-price>strong,.plan-gigas>div+div span,.plan-subtitle,.phone-mark,.brand-strip a){color:var(--theme-accent)}
html[data-theme="dark"] .mobile-plan-card .phone-mark{color:var(--theme-accent)}
html[data-theme="dark"] .line-icon{stroke:var(--theme-accent)}
html[data-theme="dark"] .v2-plan-benefits li::before{color:var(--theme-accent)}
html[data-theme="dark"] .faq-item summary::after{color:var(--theme-accent)}

/* White plates preserve legibility of complete product flyers and IJK logos. */
html[data-theme="dark"] :is(.pic,.featured-image,.modal-card img,.product-snapshot img,.share-preview img,.compare-card>img,.brand-logo,.footer img){background:#fff}
html[data-theme="dark"] .badge{background:#fff;color:#454545;border-color:#d8d8d8}
html[data-theme="dark"] .catalog-note{background:var(--theme-raised);color:var(--theme-muted);border-color:var(--theme-border)}
html[data-theme="dark"] .v2-carousel-arrow{background:var(--theme-raised);color:var(--theme-text);border-color:var(--theme-border)}
html[data-theme="dark"] .v2-carousel-arrow:hover{color:var(--theme-accent);border-color:var(--theme-accent)}
html[data-theme="dark"] .v2-carousel-dot::after{background:#737c89}
html[data-theme="dark"] .v2-carousel-dot[aria-pressed="true"]::after{background:var(--theme-accent)}

/* Inputs, consent text and all service selectors. */
html[data-theme="dark"] :is(.search,.header-search input,.form-field input,.form-field select,.chatbot-field input,.chatbot-field select,.chatbot-field textarea,.manual-location textarea){background:var(--theme-raised);color:var(--theme-text);border-color:#626b78}
html[data-theme="dark"] :is(input,textarea)::placeholder{color:#a5aebb;opacity:1}
html[data-theme="dark"] :is(.search,.header-search input,.form-field input,.form-field select,.chatbot-field input,.chatbot-field select,.chatbot-field textarea,.manual-location textarea):focus{border-color:var(--theme-accent);box-shadow:0 0 0 3px #ff958a26}
html[data-theme="dark"] :is(input[type="checkbox"],input[type="radio"]){accent-color:#ed6d61}
html[data-theme="dark"] :is(.chip,.type-btn,.operator-option,.chatbot-type-btn,.share-option,.icon-btn,.compare-btn,.btn-ghost){background:var(--theme-raised);color:var(--theme-text);border-color:#626b78}
html[data-theme="dark"] :is(.chip.active,.chip:hover,.compare-btn.is-selected,.compare-btn:hover,.type-btn.active,.chatbot-type-btn.active,.operator-option.active){background:#3b2525;color:var(--theme-accent);border-color:var(--theme-accent)}
html[data-theme="dark"] .operator-option.movistar{color:#8bdbff}
html[data-theme="dark"] .operator-option.entel{color:#ffa298}
html[data-theme="dark"] .operator-option.bitel{background:var(--theme-raised);color:#f3e275}
html[data-theme="dark"] .v2-plans .plan-tabs{background:var(--theme-raised)}
html[data-theme="dark"] .v2-plans .plan-tabs button{color:var(--theme-muted)}
html[data-theme="dark"] .v2-plans .plan-tabs button[aria-selected="true"]{background:#454d59;color:#fff}
html[data-theme="dark"] .v2-plan-categories button{color:var(--theme-muted)}
html[data-theme="dark"] .v2-plan-categories button[aria-pressed="true"]{color:var(--theme-accent);border-color:var(--theme-accent)}
html[data-theme="dark"] .share-option:hover{background:#333138;border-color:var(--theme-accent)}
html[data-theme="dark"] .portability-shell{background:#191d24;color:var(--theme-text)}
html[data-theme="dark"] .portability-form{background:#242930;border-color:var(--theme-border)}
html[data-theme="dark"] :is(.portability-copy>p,.portability-points,.consent-light){color:var(--theme-muted)}
html[data-theme="dark"] .direct-purchase-info{background:#20383b;color:#b9e9ec;border-color:#3c676b}

/* Keep white button labels over solid, sufficiently dark action colours. */
html[data-theme="dark"] :is(.btn-primary,.v2-plan-card .btn,.plan-select-btn,.want-btn,.submit-purchase){background:#c9271c;color:#fff;border-color:#c9271c}
html[data-theme="dark"] :is(.btn-primary:hover,.v2-plan-card .btn:hover,.want-btn:hover,.submit-purchase:hover){background:#a62017;color:#fff;border-color:#a62017}
html[data-theme="dark"] body[data-page="cambiate"] .mobile-plan-card .plan-select-btn{background:#c9271c;color:#fff;border-color:#c9271c}
html[data-theme="dark"] body[data-page="cambiate"] .mobile-plan-card .plan-select-btn:is(:hover,:focus-visible){background:#a62017;color:#fff;border-color:#a62017}
html[data-theme="dark"] .v2-header .header-actions .btn{background:var(--theme-surface);color:var(--theme-text);border-color:#78818f}
html[data-theme="dark"] .v2-header .header-actions .btn:hover{background:var(--theme-raised);color:var(--theme-accent);border-color:var(--theme-accent)}
html[data-theme="dark"] :is(.btn-dark,.close){background:#3a414c;color:#fff}
html[data-theme="dark"] .btn-ghost:hover{background:#3b2525;color:var(--theme-accent);border-color:var(--theme-accent)}
html[data-theme="dark"] .compare-dock{background:#20242b;color:var(--theme-text)}
html[data-theme="dark"] .compare-names{color:var(--theme-muted)}

/* Assistant, dialogs, feedback and coverage retain their existing behaviour. */
html[data-theme="dark"] .modal{background:#030508d9}
html[data-theme="dark"] .chatbot-body{background:#141d1b}
html[data-theme="dark"] :is(.chatbot-head,.purchase-head){background:#14574e;color:#fff}
html[data-theme="dark"] .chatbot-submit{background:#187246;color:#fff}
html[data-theme="dark"] .chatbot-submit:hover{background:#145e3a;color:#fff}
html[data-theme="dark"] .chatbot-launcher{background:#187246;border-color:#6b9e82}
html[data-theme="dark"] :is(.share-option-native,.share-option-whatsapp) .share-option-icon{background:#187246;color:#fff}
html[data-theme="dark"] .coverage-map-card{background:#272e35;border-color:var(--theme-border)}
html[data-theme="dark"] .map-caption{background:#22272ff5;border-color:#626b78}
html[data-theme="dark"] .location-button{background:#3b2525;color:var(--theme-accent);border-color:#a76158}
html[data-theme="dark"] .location-button:hover{background:#c9271c;color:#fff}
html[data-theme="dark"] :is(.form-error,.location-status.error){background:var(--theme-error-bg);color:var(--theme-error-text)}
html[data-theme="dark"] :is(.form-success,.location-status.success){background:var(--theme-ok-bg);color:var(--theme-ok-text)}
html[data-theme="dark"] :is(.share-status,.v2-page-plan-context){background:#21353d;color:#b6e4eb;border-color:#476b75}
html[data-theme="dark"] .location-status{background:var(--theme-raised);color:var(--theme-muted)!important}
html[data-theme="dark"] .location-status.success{background:var(--theme-ok-bg);color:var(--theme-ok-text)!important}
html[data-theme="dark"] .location-status.error{background:var(--theme-error-bg);color:var(--theme-error-text)!important}
html[data-theme="dark"] .contact-channel{background:var(--theme-raised);color:var(--theme-text);border-color:#626b78}
html[data-theme="dark"] .contact-channel:hover{background:#333138;color:var(--theme-accent);border-color:var(--theme-accent)}
html[data-theme="dark"] .contact-channel-whatsapp{color:var(--theme-accent);background:#3b2525;border-color:#93564f}
html[data-theme="dark"] .contact-map-cue{border-color:#93564f}
html[data-theme="dark"] .footer{background:#0a0c0f;color:var(--theme-text)}
html[data-theme="dark"] .footer :is(p,.footer-column li,.footer-column a,.copyright){color:var(--theme-muted);border-color:var(--theme-border)}
html[data-theme="dark"] .footer :is(.footer-column h3,.footer-column .footer-phone){color:var(--theme-text)}
html[data-theme="dark"] .footer .footer-column a:hover{color:var(--theme-accent)}

@media(max-width:760px){
  .utility-bar .utility-inner{gap:12px;min-height:38px}
  .utility-bar .utility-description{display:none}
  .utility-bar .theme-toggle{font-size:10px;gap:7px}
}
@media(prefers-reduced-motion:reduce){.theme-toggle-track,.theme-toggle-track::after{transition:none}}
@media(forced-colors:active){.theme-toggle-track{border-color:ButtonText}.theme-toggle-track::after{background:ButtonText}}
@media print{
  .theme-toggle{display:none!important}
  html[data-theme="dark"]{color-scheme:light;--theme-page:#fff;--theme-surface:#fff;--theme-raised:#f2f2f2;--theme-text:#111;--body:#222;--ink:#111;--theme-muted:#444;--muted-dark:#444;--theme-border:#ccc;--line:#ccc;--soft:#fff;--theme-accent:#ae2118}
}
