/* Theme overrides. Load after store.css and orders-ui.css. Photographs are unchanged. */
.theme-toggle.icon-button {
  flex: 0 0 44px;
  width: 44px;
  min-width: 44px;
  height: 44px;
  min-height: 44px;
  padding: 10px;
  border: 1px solid var(--line);
  border-radius: 50%;
}
.theme-toggle.icon-button:hover { background: var(--surface-raised); }
.theme-toggle .theme-icon-light,
.theme-toggle .theme-icon-dark { width: 20px; height: 20px; line-height: 1; }
.theme-toggle .theme-icon-dark { display: none; }
html[data-theme="light"] .theme-toggle .theme-icon-light { display: none; }
html[data-theme="light"] .theme-toggle .theme-icon-dark { display: block; }

html[data-theme="light"] {
  color-scheme: light;
  --page: #f5f7f2;
  --surface: #ffffff;
  --surface-raised: #e8eee4;
  --surface-soft: #e1ebdf;
  --ink: #172d21;
  --muted: #52685a;
  --green: #176b42;
  --green-hover: #0f5634;
  --line: #cbd7cb;
  --error: #a52c25;
  --warning: #775215;
}
html[data-theme="light"] ::selection { background: #c5e5ce; color: #12351f; }
html[data-theme="light"] .site-header { background: #f5f7f2f5; }
html[data-theme="light"] .announcement {
  background: #173d2a;
  border-color: #29553c;
  color: #eff9ed;
}
html[data-theme="light"] :is(.main-nav a, .main-nav button) { color: #4e6556; }
html[data-theme="light"] :is(.main-nav a:hover, .main-nav button:hover, .main-nav .is-active) { color: #15492c; }
html[data-theme="light"] :is(.language-select, .language-select select) { color: var(--ink); }
html[data-theme="light"] .language-select .field-label { color: var(--muted); }
html[data-theme="light"] .button-primary,
html[data-theme="light"] .button-primary:hover { color: #ffffff; }
html[data-theme="light"] .button-secondary { border-color: #9eb5a3; }
html[data-theme="light"] .button-secondary:hover { background: #e3eee1; }
html[data-theme="light"] .hero-visual {
  background:
    radial-gradient(ellipse at 50% 43%, #edf5e9 0%, #c6dec8 38%, transparent 76%),
    linear-gradient(145deg, #dfe9d7, #a5c2aa 72%);
  border-color: #a0bba5;
}
html[data-theme="light"] .hero-visual::before { border-color: #ffffff8c; }
html[data-theme="light"] .hero-caption { color: #264a32; }
html[data-theme="light"] .hero-caption span:last-child { color: #17452b; }
html[data-theme="light"] .hero-note { color: var(--muted); }
html[data-theme="light"] :is(.filter-group legend, .filter-group > h3, .field-label, .sort-control) { color: #344f3d; }
html[data-theme="light"] .field-control {
  border-color: #a4b7a6;
  background: #ffffff;
  color: var(--ink);
}
html[data-theme="light"] .field-control:hover { border-color: #6b9276; }
html[data-theme="light"] :is(.field-control::placeholder, .search-field input::placeholder) { color: #637867; }
html[data-theme="light"] :is(.filter-count, .results-count, .search-field svg) { color: #526e5b; }
html[data-theme="light"] .search-field input { border-color: #a4b7a6; }
html[data-theme="light"] .filter-chip {
  border-color: #91b69c;
  background: #e4f0e3;
  color: #245c37;
}
html[data-theme="light"] .filter-chip:hover { color: #123d24; }
html[data-theme="light"] .product-media { background: #e6ede1; border-color: #c2d1bf; }
html[data-theme="light"] .product-badge { background: #f4f8eeef; border-color: #a0bca3; color: #244e31; }
html[data-theme="light"] .product-favorite { background: #f8fbf2ef; border-color: #8fa795; color: #36583f; }
html[data-theme="light"] .product-favorite:hover,
html[data-theme="light"] .product-favorite[aria-pressed="true"] { background: #e2f0df; color: #145b33; border-color: #176b42; }
html[data-theme="light"] :is(.product-team, .price-note, .availability-note, .catalog-disclaimer) { color: #526b59; }
html[data-theme="light"] .product-price { color: var(--ink); }
html[data-theme="light"] .review-note { background: #f5edd6; border-color: #ac852f; color: #75511a; }
html[data-theme="light"] .empty-state { background: #edf2e8; }
html[data-theme="light"] .faq-list summary { color: #294932; }
html[data-theme="light"] .faq-list details p { color: #52685a; }
html[data-theme="light"] .site-footer { background: #e8eee1; }
html[data-theme="light"] :is(.footer-inner p, .footer-inner small, .footer-inner > span) { color: #536c58; }
html[data-theme="light"] .footer-inner a:not(.brand) { color: #315c3d; }
html[data-theme="light"] .footer-inner a:not(.brand):hover { color: #0f5634; }

html[data-theme="light"] dialog { color-scheme: light; }
html[data-theme="light"] dialog::backdrop { background: #10271a80; }
html[data-theme="light"] :is(.product-dialog, .info-dialog, .cart-dialog) { border-color: #9eb6a3; }
html[data-theme="light"] .dialog-close { border-color: #a2baa6; color: #355b40; }
html[data-theme="light"] .dialog-close:hover { color: #145b33; }
html[data-theme="light"] .detail-photo-frame img { box-shadow: 0 12px 32px #1b3c231c; }
html[data-theme="light"] .photo-zoom { background: #f7fbf1; border-color: #8faa91; color: #1e4d2d; }
html[data-theme="light"] .photo-zoom[aria-pressed="true"] { background: #d9ebd7; color: #174f2c; }
html[data-theme="light"] .photo-lens { border-color: #ffffff; box-shadow: 0 3px 14px #142f234d; }
html[data-theme="light"] .photo-views button[aria-pressed="true"] { background: #e0efdc; color: #184b28; }
html[data-theme="light"] .size-option { border-color: #a1b4a3; background: #f5f8ef; color: #35563e; }
html[data-theme="light"] :is(.size-option.is-selected, .size-option[aria-pressed="true"]) { background: #176b42; color: #ffffff; }
html[data-theme="light"] .cart-item-image { background: #e6eee0; border-color: #c1d2bf; }
html[data-theme="light"] .cart-item-content p { color: #526e5a; }
html[data-theme="light"] .cart-item-content .product-price { color: #244e31; }
html[data-theme="light"] .quantity-control { border-color: #a2b7a5; }
html[data-theme="light"] .quantity-control button { color: #2a5236; }
html[data-theme="light"] .quantity-control button:hover { background: #dfeedd; color: #124727; }
html[data-theme="light"] .cart-remove { color: #526e5a; }
html[data-theme="light"] .cart-remove:hover { color: var(--error); }
html[data-theme="light"] .cart-total { color: var(--ink); }
html[data-theme="light"] .cart-disclaimer { border-color: #b2c7ad; background: #e9f1e2; color: #435f48; }
html[data-theme="light"] .toast { border-color: #8cb49a; background: #e3f0de; color: #224e30; box-shadow: 0 8px 24px #16341d1f; }

/* Checkout, policy and protected seller pages share the same light surfaces. */
html[data-theme="light"] :where(.order-page, .seller-page) {
  --order-accent: #236b36;
  --order-accent-hover: #175629;
  --order-panel: #ffffff;
  --order-border: #b9cbb5;
  --order-muted: #536a52;
}
html[data-theme="light"] :where(.order-page, .seller-page) .button-primary { color: #ffffff; }
html[data-theme="light"] :where(.order-page, .seller-page) .field-control {
  background: #ffffff;
  border-color: #9fb398;
  color: #213e25;
}
html[data-theme="light"] :where(.order-page, .seller-page) .field-control::placeholder { color: #647a60; }
html[data-theme="light"] :where(.order-page, .seller-page) .field-control[aria-invalid="true"] { border-color: #a52c25; }
html[data-theme="light"] :where(.order-page, .seller-page) .field-label { color: #334f32; }
html[data-theme="light"] .order-error { color: #a52c25; }
html[data-theme="light"] .order-notice { background: #ecf3e3; border-color: #b3c69b; color: #3b562e; }
html[data-theme="light"] .order-notice strong { color: #294a1d; }
html[data-theme="light"] :is(.order-notice[data-state="offline"], .order-notice.is-warning) { background: #fbf2db; border-color: #ccb77d; color: #72501b; }
html[data-theme="light"] .order-consent { color: #435d3b; }
html[data-theme="light"] .order-summary { background: #ffffff; }
html[data-theme="light"] .order-summary-item { border-color: #d0ddc7; }
html[data-theme="light"] .order-summary-image { background: #eaf1e3; }
html[data-theme="light"] .order-summary-copy p { color: #536c4e; }
html[data-theme="light"] .order-state { background: #edf5e5; border-color: #9ebc89; }
html[data-theme="light"] .order-state > p { color: #48613e; }
html[data-theme="light"] .order-reference { background: #ffffff; border-color: #a7c295; }
html[data-theme="light"] .seller-order { background: #ffffff; }
html[data-theme="light"] .seller-order:hover { background: #f0f5e9; border-color: #a0b88e; }
html[data-theme="light"] :is(.seller-order.is-active, .seller-order[aria-current="true"], .seller-order[aria-pressed="true"]) { background: #e5f0d9; }
html[data-theme="light"] .seller-detail { background: #ffffff; }
html[data-theme="light"] .seller-status { border-color: #9eb783; background: #edf5e2; color: #365a26; }
html[data-theme="light"] :is(.seller-status[data-status="awaiting_confirmation"], .seller-status[data-payment="unpaid"]) { border-color: #c3ab69; background: #faf1d9; color: #73531d; }
html[data-theme="light"] :is(.seller-status[data-status="confirmed"], .seller-status[data-status="ordered_from_supplier"]) { border-color: #9fbc81; background: #e8f2dc; color: #385d25; }
html[data-theme="light"] .seller-status[data-status="shipped"] { border-color: #8db8bf; background: #e2f1f2; color: #285b66; }
html[data-theme="light"] .seller-status[data-status="delivered"] { border-color: #8eb78c; background: #e2f3df; color: #2a622b; }
html[data-theme="light"] .seller-status[data-status="cancelled"] { border-color: #c99e8e; background: #fae9e1; color: #8b3f2b; }
html[data-theme="light"] .seller-timeline li { border-color: #b2c6a0; color: #425b36; }
html[data-theme="light"] .seller-timeline li:last-child { border-color: transparent; }
html[data-theme="light"] .seller-timeline time { color: #617652; }
html[data-theme="light"] .seller-empty { border-color: #a8bc99; color: #526c42; }

@media (max-width: 1050px) {
  html[data-theme="light"] .main-nav { background: #f5f7f2; border-color: #bfcebb; }
}
@media (max-width: 520px) {
  .header-actions:has(.theme-toggle) { gap: 7px; }
  .theme-toggle.icon-button { padding: 10px; }
}
@media (max-width: 520px) {
  /* Keep all controls reachable when the theme button joins the mobile header. */
  .site-header .header-inner:has(.theme-toggle) { flex-wrap: wrap; gap: 6px 4px; min-width: 0; padding-block: 8px; }
  .site-header .brand { font-size: 15px; gap: 2px; }
  .header-actions:has(.theme-toggle) { gap: 0; }
  .site-header .header-actions { flex-shrink: 0; min-width: 0; }
  .site-header .header-actions .icon-button { min-width: 44px; }
  .site-header .language-select { flex: 0 0 40px; max-width: 40px; }
  .site-header .language-select select { width: 40px; max-width: 40px; padding-inline: 0; }
  .site-header #cart-open { width: 44px; min-width: 44px; gap: 2px; padding-inline: 5px; }
  .site-header #cart-open .cart-count { min-width: 14px; }
  .header-actions .theme-toggle.icon-button { min-width: 44px; padding-inline: 10px; }
  html { scroll-padding-top: 120px; }
}
@media (forced-colors: active) {
  .theme-toggle.icon-button { border-color: ButtonText; forced-color-adjust: auto; }
}
@media (max-width: 340px) {
  .site-header .brand { font-size: 14px; }
}
