/* Shared finish for every public page and every saved palette. */
html[data-theme] .site-footer {
  color: var(--theme-text);
  box-shadow: 0 -1px 0 var(--theme-line);
}
html[data-theme] .site-footer :is(p,.footer-links,.directory-legal-links span) {
  color: var(--theme-muted);
}
html[data-theme] .site-footer a:hover { color: var(--theme-accent); }
html[data-theme] .footer-bottom { box-shadow: 0 -1px 0 var(--theme-line); }
html[data-theme] .mobile-menu-toggle {
  background: var(--theme-soft);
  border-radius: var(--radius-md);
  color: var(--theme-ink);
}
html[data-theme] .mobile-menu {
  border-radius: var(--radius-lg);
  box-shadow: 0 12px 36px color-mix(in srgb,var(--theme-ink) 14%,transparent);
}
html[data-theme] .mobile-menu>a { border-radius: var(--radius-sm); }
html[data-theme] .mobile-menu>a:hover { background: var(--theme-soft); }
html[data-theme] .mobile-menu-context { box-shadow: 0 -1px 0 var(--theme-line); }
html[data-theme] .directory-language summary { border-radius: var(--radius-md); }
html[data-theme] .directory-language nav {
  border-radius: var(--radius-lg);
  box-shadow: 0 12px 36px color-mix(in srgb,var(--theme-ink) 14%,transparent);
}
html[data-theme] :is(.content-panel,.article-content,.market-card,.directory-profile,.offer-card-r11,.directory-card) {
  border-radius: var(--radius-xl);
}
html[data-theme] :is(.directory-profile>.directory-pending,.detail-disclosure,.directory-sources) {
  border-color: var(--theme-line);
}
html[data-theme] .directory-profile>.directory-pending { background: var(--theme-card-soft); }
html[data-theme] :is(.market-iso,.directory-profile .directory-type,.directory-intermediary) {
  border-radius: var(--radius-sm);
}
/* The same optical frame is used in cards, profiles and offer detail. */
html[data-theme] .provider-logo,
html[data-theme] :is(.offer-card-r11,.directory-card,.directory-profile) .provider-logo {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: none;
  width: 192px;
  max-width: 100%;
  height: 64px;
  min-height: 64px;
  padding: 8px 4px;
  border-radius: 10px;
  background: transparent;
  overflow: hidden;
}
html[data-theme] .provider-logo img,
html[data-theme] :is(.offer-card-r11,.directory-card,.directory-profile) .provider-logo img {
  display: block;
  width: 184px;
  max-width: 100%;
  height: 48px;
  max-height: 48px;
  object-fit: contain;
  object-position: center;
  filter: none;
}
html[data-theme] .provider-logo.logo-on-dark,
html[data-theme] :is(.offer-card-r11,.directory-card,.directory-profile) .provider-logo.logo-on-dark {
  background: #183c35;
  color: #fff;
  padding: 8px;
}
html[data-theme] .provider-logo.logo-on-dark img,
html[data-theme] :is(.offer-card-r11,.directory-card,.directory-profile) .provider-logo.logo-on-dark img {
  max-width: 176px;
  height: 48px;
  max-height: 48px;
}
html[data-theme] .offer-card-r11 .offer-brand { width: 192px; }
@media(max-width:400px) {
  html[data-theme] .offer-card-r11 .offer-brand { max-width:calc(100% - 54px); }
}
@media(prefers-reduced-motion:reduce) {
  html[data-theme] :is(.offer-card-r11,.directory-card,.market-card) { transition:none; }
}

html[data-theme] .filter-pill.is-active>span { background: #00000012; }
html[data-theme] .compare-toggle .checkbox-visual { box-shadow:inset 0 0 0 1px var(--theme-muted); }
html[data-theme] .compare-toggle input:checked+.checkbox-visual { box-shadow:none; }
html[data-theme] .compare-toggle input:focus-visible+.checkbox-visual {
  outline:3px solid var(--theme-accent); outline-offset:3px;
}
html[data-theme] .responsible-note p { color:var(--theme-text); }
html[data-theme] :is(.age-mark,.directory-age) { background:var(--theme-highlight); color:var(--theme-ink); }
html[data-theme] .plan-check { background:var(--theme-accent); color:#fff; }
html[data-theme] .plan-lines { background:var(--theme-surface); }
html[data-theme] .plan-lines i { background:var(--theme-card-band); }
html[data-theme] .market-languages a:hover { background:var(--theme-highlight); }
html[data-theme] .directory-country-form {
  padding:20px 22px;
  border:1px solid var(--theme-line);
  border-radius:var(--radius-xl);
  background:var(--theme-surface);
}
html[data-theme] .directory-filters {
  border:1px solid var(--theme-line);
  border-radius:var(--radius-xl);
  background:var(--theme-surface);
}
html[data-theme] .directory-country-form select,
html[data-theme] .directory-filters :is(input:not([type=checkbox]),select) {
  min-height:54px;
  border:1px solid var(--theme-line);
  border-radius:var(--radius-md);
  background:var(--theme-soft);
  box-shadow:none;
}
html[data-theme] :is(.directory-filters,.directory-country-form)>.button { border-radius:var(--radius-md); }
html[data-theme] .directory-advanced-fields { border-radius:var(--radius-md); background:var(--theme-card-soft); }
@media(max-width:560px) {
  html[data-theme] .directory-country-form { padding:18px; }
}
html[data-theme] .directory-intermediary { background:var(--theme-card-soft); }
html[data-theme] :is(.detail-disclosure,.faq-list details) { box-shadow:0 1px 0 var(--theme-line); }
html[data-theme] .faq-list details:last-child { box-shadow:none; }
html[data-theme] .directory-unknown { box-shadow:0 -1px 0 var(--theme-line); }
html[data-theme] .unknown-period-group { box-shadow:0 -1px 0 var(--theme-line); }
html[data-theme] :is(.offer-card-r11,.directory-card) {
  box-shadow:0 8px 28px color-mix(in srgb,var(--theme-ink) 7%,transparent),0 2px 6px color-mix(in srgb,var(--theme-ink) 3%,transparent);
}
html[data-theme] :is(.offer-card-r11,.directory-card):hover {
  box-shadow:0 12px 34px color-mix(in srgb,var(--theme-ink) 10%,transparent),0 3px 9px color-mix(in srgb,var(--theme-ink) 3%,transparent);
}
html[data-theme] .provider-logo[data-logo-height="54"],
html[data-theme] :is(.offer-card-r11,.directory-card,.directory-profile) .provider-logo[data-logo-height="54"] { padding-block:5px; }
html[data-theme] .provider-logo[data-logo-height="60"],
html[data-theme] :is(.offer-card-r11,.directory-card,.directory-profile) .provider-logo[data-logo-height="60"] { padding-block:2px; }
html[data-theme] .provider-logo[data-logo-height="54"] img,
html[data-theme] :is(.offer-card-r11,.directory-card,.directory-profile) .provider-logo[data-logo-height="54"] img { height:54px; max-height:54px; }
html[data-theme] .provider-logo[data-logo-height="60"] img,
html[data-theme] :is(.offer-card-r11,.directory-card,.directory-profile) .provider-logo[data-logo-height="60"] img { height:60px; max-height:60px; }
/* Retain the exact network Tupo wordmark; white pixels take the light card tone. */
html[data-theme] .provider-logo[data-logo-canvas="white"] img { mix-blend-mode:darken; }
