/* /theme.css */
/* Quiet optional night palette. Original light appearance remains the default. */
#theme-toggle{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:44px;width:100%;color:var(--muted);font:inherit;text-align:left}
.theme-label{display:inline-flex;align-items:center;gap:10px}
.theme-switch{display:inline-block;flex:0 0 30px;width:30px;height:18px;border:1px solid var(--line);border-radius:12px;background:var(--soft);position:relative}
.theme-switch:after{content:'';position:absolute;top:3px;left:3px;width:10px;height:10px;background:var(--muted);border-radius:50%}
#theme-toggle[aria-checked=true] .theme-switch{background:#3a5661;border-color:#64818a}
#theme-toggle[aria-checked=true] .theme-switch:after{left:15px;background:#dbe5e7}
html[data-theme=dark]{--ink:#dce5e8;--paper:#1b2226;--surface:#232c31;--soft:#2a353b;--line:#3d4a51;--muted:#aabac2;--accent:#79bddb;--yellow:#79bddb;--shadow:0 6px 24px #00000018;color-scheme:dark;background:var(--paper)}
html[data-theme=dark] body{background:var(--paper);color:var(--ink)}
html[data-theme=dark] :is(header,.masthead,.section-nav,#headerMenu,dialog,.chat,.chat-head,.chat-body,.media-browser-dialog,.media-browser-header,.media-reader-dialog,.media-reader-body,.media-reader-header,.guide-detail-body,.site-footer,.footer-services,.bottom-nav,.mobile-nav,.mobile-bottom-nav,.bottom-menu,.business-detail-page){background-color:var(--surface)!important;color:var(--ink);border-color:var(--line)!important;box-shadow:var(--shadow)}
html[data-theme=dark] :is(.location-strip,.service-info-ticker,.service-ticker-item,.article-source,.source-detail,.notice,.chat-body>p,.guide-shortcuts a,.guide-actions a,.guide-actions button,.guide-input-row,.searchbar input,.outline,.chivi-float-label,#chivi-assistant-launcher){background:var(--soft)!important;color:var(--ink)!important;border-color:var(--line)!important}
html[data-theme=dark] :is(.card,.real-card,.brief,.voice-box,.pharmacy-card,.obit-card,.culture-event,.bus-planner,.bus-smart-panel,.bus-geo-panel,.guide-card,.guide-featured,.guide-featured-card,.media-banner-button,.culture-mini,.home-media,.story,.article,.business-profile,.advertiser-panel,.advertise-card){background-color:var(--surface)!important;color:var(--ink)!important;border-color:var(--line)!important;box-shadow:var(--shadow)}
html[data-theme=dark] :is(.media-banner-button,.culture-mini,.home-media,.guide-featured){background-image:none!important}
html[data-theme=dark] :is(input,select,textarea){background-color:var(--soft)!important;color:var(--ink)!important;border-color:var(--line)!important}
html[data-theme=dark] input::placeholder,html[data-theme=dark] textarea::placeholder{color:var(--muted)}
html[data-theme=dark] :is(h1,h2,h3,h4,.home-media-title,.media-banner-caption,.guide-card h2,.guide-card p,.guide-detail-body p,.guide-detail-body h3,.brand-descriptor,.section-nav button,.header-actions button,.menu-access button,.menu-access a,.menu-sections button,.menu-sections a,.story-meta,.hero-summary,.card p,.guide-rubro,.culture-mini-copy,.footer-services a,.site-footer a,.footer-brand p){color:var(--ink)!important}
html[data-theme=dark] :is(.eyebrow,.home-media-kicker,small,.edition,.guide-footnote,#guide-count,.media-time,.media-source){color:var(--muted)}
html[data-theme=dark] :is(.solid,.guide-input-row>button){background:#3a6476!important;color:#f2f6f7!important}
html[data-theme=dark] .brand-wordmark{filter:brightness(0) saturate(100%) invert(93%) sepia(5%) saturate(460%) hue-rotate(153deg)}
html[data-theme=dark] dialog::backdrop{background:#080d10b8}
html[data-theme=dark] :focus-visible{outline-color:#8bc3d9}
html[data-theme=dark] :is(.reader-bar,.reader-help,.reader-body,.media-reader,.footer-service-head,.footer-service-body,.media-browser-body,.media-preview-body,.media-preview-card,.media-preview-summary,.media-summary,.guide-featured-info){background-color:var(--surface)!important;color:var(--ink)!important;border-color:var(--line)!important}
html[data-theme=dark] :is(.footer-services a,.reader-message p,.reader-message small,.media-preview-summary p,.media-preview-card p){color:var(--ink)!important;background-color:transparent!important}
html[data-theme=dark] :is(.footer-services a,.reader-help,.media-preview-card){border-color:var(--line)!important}
html[data-theme=dark] :is(.city-scenes,.modal-city-header) :is(h1,h2,h3,p,small,.eyebrow,.city-scene-title){color:#f5f7f8!important}

/* Dark surfaces need their own text and action colors, including nested links. */
html[data-theme=dark]{--link:#93cdbb;--muted:#b2c3cb;--subtle:#91a7b1}
html[data-theme=dark] :is(.guide-featured-copy h3 a,.guide-featured-open,.guide-featured-foot a,.guide-featured-call,.guide-featured-google-credit a,.service-ticker-label){color:var(--link)!important}
html[data-theme=dark] :is(.guide-featured-kicker,.guide-featured-category,.guide-featured-disclosure,.guide-featured-address,.guide-featured-description,.guide-featured-foot,.guide-featured-google-credit,.service-ticker-more,.weather-muted,.weather-sources small){color:var(--muted)!important}
html[data-theme=dark] :is(.guide-featured-foot,.guide-featured-google-credit){border-color:var(--line)!important}
html[data-theme=dark] .guide-featured-google-credit{background:var(--surface)!important}
html[data-theme=dark] .guide-featured-copy h3 a{color:var(--ink)!important}
html[data-theme=dark] :is(.guide-featured-controls button,.footer-install,.guide-featured-badge,.weather-stat,.weather-day,.weather-hour,.weather-sources a,.weather-synthesis){background:var(--soft)!important;color:var(--ink)!important;border-color:var(--line)!important;box-shadow:none}
html[data-theme=dark] .guide-featured-controls button:hover{background:#35464e!important}
html[data-theme=dark] :is(.footer-install small,.footer-install span small){color:var(--muted)!important;opacity:1}
html[data-theme=dark] .guide-featured-actions .guide-whatsapp{background:#28483e!important;color:#d5f1e4!important}
html[data-theme=dark] :is(.chivi-freshness,.chivi-freshness.is-recent){color:#a1cbb3!important}
html[data-theme=dark] .chivi-freshness i{background:#a1cbb3!important;box-shadow:none}
html[data-theme=dark] header .location-strip .topline :is(#today,.weather-header,.weather-header strong){color:var(--muted)!important;opacity:1}
html[data-theme=dark] .service-info-ticker .service-ticker-label{color:var(--link)!important}
html[data-theme=dark] :is(.footer-tools,.footer-links,.weather-table th,.weather-table td){border-color:var(--line)!important}
/* Keep results and controls readable inside the shared conversation. */
html[data-theme=dark] #chat :is(.chivi-chat-card,.integral-product,.user-question,.integral-options button,[data-integral-product],[data-chivi-question],[data-footer-question],[data-footer-trip-start],[data-footer-trip-cancel],.chat-body>button){background:var(--soft)!important;color:var(--ink)!important;border-color:var(--line)!important}
html[data-theme=dark] #chat :is(a,.chivi-chat-card a){color:var(--link)!important}
html[data-theme=dark] #chat :is(.small-note,.integral-wait,.chivi-typing,.chat-head small){color:var(--muted)!important}
html[data-theme=dark] #chat .chivi-chat-card button{background:var(--surface)!important;color:var(--ink)!important;border-color:var(--line)!important}
html[data-theme=dark] #chatForm{background:var(--surface)!important;border-color:var(--line)!important}
html[data-theme=dark] #chatForm>button{background:#426a7b!important;color:#f3f7fa!important;border-color:#678b9b!important}
html[data-theme=dark] #chat #classified-conversation :is(.cc-head,.cc-preview,.cc-message,.cc-draft){background:var(--soft)!important;color:var(--ink)!important;border-color:var(--line)!important}
html[data-theme=dark] #chat #classified-conversation .cc-composer{background:var(--surface)!important}

/* /auth.css */
.chivi-account-link{display:inline-flex;align-items:center;gap:6px;padding:8px 12px;border:1px solid #d4dfd8;border-radius:20px;font:500 13px/1.2 Arial,sans-serif;color:#245942;background:#fff;text-decoration:none;white-space:nowrap}.chivi-account-link[data-signed-in=true]:before{content:'●';font-size:8px;color:#3d8858}.auth-page{margin:0;background:#f3f6f2;color:#193b35;font-family:Arial,sans-serif;line-height:1.5}.auth-top{display:flex;justify-content:space-between;padding:18px 24px;border-bottom:1px solid #e0e6df;background:white}.auth-top a{color:#245942;text-decoration:none}.auth-brand{font-size:24px;font-weight:bold}.auth-card{box-sizing:border-box;max-width:460px;margin:48px auto;padding:30px;background:white;border:1px solid #dce5dc;border-radius:22px}.auth-card h1{font-size:28px;line-height:1.2;letter-spacing:-.7px;margin:12px 0}.auth-card p{color:#64776b}.auth-kicker{font-size:11px;font-weight:bold;letter-spacing:1.4px}.auth-card button,.auth-action{box-sizing:border-box;display:block;width:100%;min-height:46px;padding:12px 16px;border:1px solid #c9d7cc;border-radius:12px;background:white;color:#245942;font:inherit;text-align:center;text-decoration:none;cursor:pointer}.auth-card .auth-primary{background:#225b43;color:white;border-color:#225b43}.auth-card button:disabled{opacity:.55;cursor:default}.auth-card label{display:block;font-size:14px;margin:15px 0 6px}.auth-card input{box-sizing:border-box;width:100%;min-height:48px;border:1px solid #b8cabb;border-radius:10px;padding:12px;font:16px Arial}.auth-card form button{margin-top:14px}.auth-card .auth-note{font-size:12px;margin:8px 0 18px}.auth-card .auth-divider{text-align:center;font-size:12px;margin:20px 0;color:#6c7e71}.auth-status{font-size:14px;min-height:22px}.auth-email{overflow-wrap:anywhere;font-weight:bold;color:#193b35!important}.auth-links{display:grid;gap:10px;margin:24px 0}.auth-card [hidden]{display:none!important}.auth-google{min-height:44px}.auth-google>div{display:flex;justify-content:center}@media(max-width:600px){.auth-card{margin:22px 14px;padding:24px}.auth-top{padding:15px 18px}.chivi-account-link{font-size:12px;padding:8px}.auth-card h1{font-size:26px}}@media(max-width:390px){body>header .chivi-account-link{padding:7px;font-size:11px}}

.cl-account-summary{font-size:13px;padding:10px 12px;background:#edf3e9;border-radius:10px;overflow-wrap:anywhere}.cl-account-summary a{color:#225b43;text-decoration:underline}@media(max-width:700px){body:has(#listing-form)>header{flex-wrap:wrap;gap:8px}body:has(#listing-form)>header nav{gap:7px}body:has(#listing-form)>header nav button{padding:8px 10px}body:has(#listing-form)>header nav>a[href="/guia-comercial"]{display:none}body:has(#listing-form)>header>.brand{font-size:25px}body:has(#listing-form)>header>a:nth-child(2){font-size:12px}}

/* Shared account entry stays beside search and menu, including compact headers. */
header .header-actions .chivi-account-link{order:-1;flex-shrink:0;min-height:40px;padding:8px 12px;box-sizing:border-box;color:var(--ink,#193b35);background:transparent;border-color:var(--line,#d4dfd8);font-family:inherit;font-weight:600}
.chivi-account-link svg{width:18px;height:18px;flex:none}.chivi-account-link:focus-visible,.mi-product:focus-visible{outline:3px solid #7bb699;outline-offset:3px}
.mi-chivi-card{max-width:600px}.mi-chivi-card .auth-links{display:flex;flex-direction:column}.mi-chivi-card #auth-continue{order:3;background:transparent;border:0;font-size:14px}.mi-product{display:flex;align-items:center;gap:14px;border:1px solid #dce5dc;border-radius:16px;padding:18px;color:#193b35;text-decoration:none;transition:background .15s}.mi-product:hover{background:#f3f6f2}.mi-product>span:nth-child(2){flex:1}.mi-product strong,.mi-product small{display:block}.mi-product strong{font-size:16px}.mi-product small{font-size:13px;color:#64776b;margin-top:4px}.mi-product-icon{display:grid;place-items:center;width:40px;height:40px;border-radius:12px;background:#edf3e9;color:#245942;font-size:25px}.mi-explore{display:flex;flex-wrap:wrap;gap:8px 16px;padding:0 0 24px}.mi-explore a{font-size:13px;color:#245942;text-decoration:none}.mi-explore a:hover{text-decoration:underline}
@media(max-width:700px){header .header-actions .chivi-account-link{min-height:40px;padding:8px;gap:5px;font-size:12px}header .header-actions .chivi-account-link svg{width:16px;height:16px}.mi-product{padding:15px;gap:10px}}
html[data-theme=dark] .chivi-account-link{color:#e1ece5!important;background:transparent!important;border-color:#40534b!important}html[data-theme=dark] .auth-page{background:#101c1b;color:#e1ece5}html[data-theme=dark] :is(.auth-card,.auth-top){background:#172825;border-color:#40534b}html[data-theme=dark] .auth-card :is(p,a,h1,button,label),html[data-theme=dark] .auth-email{color:#e1ece5!important}html[data-theme=dark] .auth-card :is(button,input,.auth-action,.mi-product){background:#20332e;color:#e1ece5;border-color:#40534b}html[data-theme=dark] .mi-product-icon{background:#30483d;color:#d3e9da}html[data-theme=dark] .mi-product small{color:#afc4b8}

/* Keep the account entry compact beside the mobile menu. */
header .header-actions .chivi-account-link span{text-transform:uppercase}
@media(max-width:680px){header .header-actions .chivi-account-link{padding:8px;gap:5px;font-size:11px;min-height:44px}header .header-actions{gap:2px}header .masthead>.brand{min-width:0}}

/* Compact account access across all headers. */
header .chivi-account-link,header .header-actions .chivi-account-link{position:relative;display:inline-flex;align-items:center;justify-content:center;width:44px;min-width:44px;height:44px;min-height:44px;padding:0;gap:0;box-sizing:border-box;border-radius:50%}header .chivi-account-link svg,header .header-actions .chivi-account-link svg{width:20px;height:20px}header .chivi-account-link[data-signed-in=true]:before{position:absolute;top:3px;right:4px;font-size:7px;line-height:1}
