/* Patch W1D — unified moiomi Soft Gradient visual system.
   This final cascade layer neutralises legacy colour treatments while keeping
   product imagery and intentional product colours intact. */

html,
body,
.app-shell {
  background: var(--gradient-canvas) fixed !important;
  color: var(--color-text);
}

body::before,
body::after { display: none; }

::selection { background: var(--color-accent); color: #fff; }
:focus-visible { outline-color: rgba(41,40,38,.64); }

/* Architecture: one calm canvas, then a single readable material layer. */
.site-header,
.room-navigation-shell,
.w1c-topbar {
  border-color: var(--color-border) !important;
  background: var(--gradient-header) !important;
  box-shadow: 0 8px 26px rgba(41,40,38,.055) !important;
  -webkit-backdrop-filter: blur(20px) saturate(105%) !important;
  backdrop-filter: blur(20px) saturate(105%) !important;
}

.site-header::before { display: none; }
.brand__wordmark { color: var(--color-text); text-shadow: none; }

.global-nav-menu,
.search-dialog,
.cart-drawer,
.wishlist-drawer,
.account-drawer,
.modal,
.dropdown,
.w1c-left,
.w1c-right,
.w1c-panel,
.w1c-art-grid,
.w1c-art-sidebar,
.w1c-art-preview,
.w1c-gate__card,
.commerce-drawer,
.commerce-drawer__panel {
  border-color: var(--color-border) !important;
  background: var(--gradient-panel) !important;
  box-shadow: var(--glass-shadow) !important;
  -webkit-backdrop-filter: blur(var(--glass-blur)) saturate(105%) !important;
  backdrop-filter: blur(var(--glass-blur)) saturate(105%) !important;
}

.global-nav-menu a:hover,
.search-suggestions a:hover,
.utility-link:hover,
.utility-link:focus-visible,
.utility-link.is-active,
.icon-button:hover,
.room-navigation__arrow:hover {
  border-color: var(--color-border) !important;
  background: var(--gradient-selected) !important;
  box-shadow: none !important;
}

/* Primary commerce actions: graphite, rectangular, quiet. */
.button,
.w1c-shell .button,
.checkout-primary-button,
.cart-summary-card .button,
.account-primary-action,
button[type="submit"] {
  border: 1px solid rgba(21,21,19,.16) !important;
  border-radius: 12px !important;
  background: var(--gradient-graphite) !important;
  box-shadow: 0 8px 20px rgba(41,40,38,.16) !important;
  color: #fff !important;
}

.button::before,
.w1c-shell .button::before { display: none !important; }

.button:hover,
.w1c-shell .button:hover,
.checkout-primary-button:hover,
.account-primary-action:hover,
button[type="submit"]:hover {
  background: var(--color-accent-hover) !important;
  box-shadow: 0 10px 24px rgba(31,30,28,.18) !important;
  transform: translateY(-1px);
}

.button:active,
.w1c-shell .button:active,
.checkout-primary-button:active,
.account-primary-action:active,
button[type="submit"]:active {
  background: var(--color-accent-pressed) !important;
  box-shadow: 0 4px 12px rgba(21,21,19,.18) !important;
  transform: translateY(0);
}

.button--secondary,
.button--text,
.w1c-shell .button--secondary,
.w1c-preview-actions > button,
.checkout-promo button {
  border-color: var(--color-border) !important;
  background: var(--gradient-panel) !important;
  box-shadow: none !important;
  color: var(--color-text) !important;
}

.button--text { border: 0 !important; border-bottom: 1px solid currentColor !important; border-radius: 0 !important; background: transparent !important; }

/* Cards, panels, forms and drawers. */
.card,
.preview-panel,
.split-feature,
.product-card,
.catalog-category-card,
.artwork-card,
.service-group,
.package-card,
.sitemap-group,
.room-summary,
.room-total,
.callout,
.checkout-card,
.cart-summary-card,
.checkout-summary,
.checkout-confirmation-card,
.account-card,
.account-panel,
.account-profile-card,
.account-section,
.account-order-card,
.account-detail-section,
.account-side-card,
.account-status-hero,
.w1c-card,
.w1c-art-card,
.w1c-gear-grid a,
.w1c-look-rail a,
.w1c-solar__story {
  border-color: var(--color-border) !important;
  background: var(--gradient-card) !important;
  box-shadow: var(--shadow-card) !important;
  color: var(--color-text) !important;
  -webkit-backdrop-filter: blur(16px) saturate(102%) !important;
  backdrop-filter: blur(16px) saturate(102%) !important;
}

.card::after,
.catalog-category-card::after,
.product-card::after,
.artwork-card::after,
.service-group::after,
.package-card::after,
.sitemap-group::after,
.preview-panel::after,
.split-feature::after { display: none !important; }

.card:hover,
.catalog-category-card:hover,
.product-card:hover,
.artwork-card:hover,
.service-group:hover,
.package-card:hover,
.sitemap-group:hover,
.w1c-gear-grid a:hover {
  border-color: rgba(41,40,38,.22) !important;
  background: linear-gradient(145deg, rgba(255,255,255,.98), rgba(240,237,232,.84)) !important;
  box-shadow: var(--glass-shadow-hover) !important;
}

.input,
.select,
input:not([type="checkbox"]):not([type="radio"]),
select,
textarea,
.checkout-promo input,
.checkout-payment-method {
  border-color: var(--color-border) !important;
  background: linear-gradient(145deg, rgba(255,255,255,.86), rgba(247,244,239,.68)) !important;
  color: var(--color-text) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.72) !important;
}

input:focus,
select:focus,
textarea:focus,
.checkout-promo input:focus {
  border-color: rgba(41,40,38,.52) !important;
  box-shadow: 0 0 0 3px rgba(41,40,38,.08) !important;
  outline: 0;
}

/* Selected states stay light and legible instead of becoming dark pills. */
.is-selected:not(.button),
.filter-chip.is-active,
.room-tab.is-active,
.room-choice-card.is-active,
.w1c-style-list button.is-active,
.w1c-look-list button.is-active,
.w1c-list a.is-active,
.w1c-wear-switch a.is-active,
.w1c-day-night button.is-active,
.w1c-product-row.is-active,
.w1c-room-dock > a.is-active,
.w1c-art-card.is-active,
.w1c-filter-cards button.is-active,
.w1c-solar__buy .cluster button.is-active,
.checkout-payment-method.is-active,
.account-tab.is-active {
  border-color: rgba(41,40,38,.28) !important;
  background: var(--gradient-selected) !important;
  box-shadow: inset 0 0 0 1px rgba(41,40,38,.05) !important;
  color: var(--color-text) !important;
}

.checkout-payment-method.is-active i { border-color: var(--color-accent) !important; }
.checkout-stepper__step.is-current span,
.checkout-stepper__step.is-complete span,
.checkout-payment-mark,
.checkout-confirmation-card__mark {
  border-color: var(--color-accent) !important;
  background: var(--color-accent) !important;
  color: #fff !important;
}

.checkout-stepper__step.is-complete:not(:last-child)::after,
.checkout-spinner { border-top-color: var(--color-accent) !important; background-color: transparent; }

.status-badge,
.checkout-provider-note,
.checkout-shipping-result,
.account-status,
.account-status-pill--gold,
.account-order-card__status,
.account-status-pill,
.account-neutral-pill,
.w1c-day-night {
  border-color: var(--color-border) !important;
  background: var(--gradient-selected) !important;
  color: var(--color-text) !important;
}

.checkout-promo small.is-applied { color: #4f4c47 !important; }

.account-sidebar__link:hover:not(:disabled),
.account-sidebar__link.is-active,
.account-page-header__trust,
.account-side-card--action,
.account-customer-preview {
  border-color: var(--color-border) !important;
  background: var(--gradient-selected) !important;
  color: var(--color-text) !important;
}

.account-button {
  border-color: var(--color-accent) !important;
  border-radius: 12px !important;
  background: var(--gradient-graphite) !important;
  color: #fff !important;
  box-shadow: 0 8px 20px rgba(41,40,38,.16) !important;
}
.account-button--secondary { border-color: var(--color-border) !important; background: var(--gradient-panel) !important; color: var(--color-text) !important; box-shadow: none !important; }
.account-progress__step.is-complete .account-progress__marker,
.account-progress__step.is-active .account-progress__marker,
.account-order-part__progress span,
.account-timeline__item.is-active .account-timeline__marker {
  border-color: var(--color-accent) !important;
  background: var(--color-accent) !important;
  color: #fff !important;
  box-shadow: 0 0 0 4px rgba(41,40,38,.08) !important;
}
.account-progress__step.is-complete .account-progress__label,
.account-progress__step.is-active .account-progress__label,
.account-text-link { color: var(--color-text) !important; }

/* Hero images remain realistic; neutral edge overlays only bridge image to UI. */
.showroom-hero__shade {
  background: linear-gradient(90deg, rgba(28,27,25,.48) 0%, rgba(28,27,25,.16) 40%, transparent 72%) !important;
}

.w1c-hero::after,
.w1c-look-stage::after,
.w1c-solar__hero::after {
  content: "";
  position: absolute;
  z-index: 1;
  inset: 0;
  pointer-events: none;
  background: linear-gradient(180deg, rgba(252,251,249,.05), transparent 64%, rgba(236,233,228,.16));
}

.w1c-hero > *,
.w1c-look-stage > *,
.w1c-solar__hero > * { position: relative; z-index: 2; }

.w1c-look-stage {
  background: radial-gradient(circle at 52% 45%, #fff 0%, #f6f3ef 50%, #e9e5df 100%) !important;
}

.room-hotspot,
.w1c-hotspot button,
.w1c-look-callout button {
  border-color: rgba(255,255,255,.84) !important;
  background: var(--color-accent) !important;
  box-shadow: 0 0 0 1px rgba(41,40,38,.34), 0 7px 18px rgba(41,40,38,.20) !important;
  color: #fff !important;
}

.hotspot-card,
.w1c-hotspot span {
  border-color: rgba(88,84,78,.18) !important;
  background: var(--gradient-panel) !important;
  box-shadow: var(--shadow-card) !important;
  color: var(--color-text) !important;
}

/* W1C domain surfaces. Product/filter imagery keeps its own material colour. */
.w1c-shell { background: transparent !important; color: var(--color-text); }
.w1c-main,
.w1c-art,
.w1c-wear,
.w1c-solar { background: transparent !important; }
.w1c-topbar button,
.w1c-art-grid > header button,
.w1c-art-grid select,
.w1c-accordions button,
.w1c-text-button {
  border-color: var(--color-border) !important;
  background: rgba(255,255,255,.44) !important;
  color: var(--color-text) !important;
}
.w1c-product-row.is-active,
.w1c-list a.is-active,
.w1c-list a:hover,
.w1c-wear-switch a.is-active,
.w1c-day-night button.is-active {
  background: var(--gradient-selected) !important;
  color: var(--color-text) !important;
}
.w1c-solar__story p,
.w1c-solar__story small { color: var(--color-muted) !important; }
.w1c-solar__benefits { background: rgba(29,28,26,.82) !important; }
.w1c-gate {
  background: linear-gradient(rgba(41,40,38,.13), rgba(41,40,38,.19)), url("../assets/images/showroom/living-room-day.png") center/cover !important;
}
.w1c-gate__card { border-radius: 24px !important; }
.w1c-gate__card h1,
.w1c-gate__card h2,
.w1c-gate__brand { color: var(--color-text); }

/* Checkout/account density is preserved; only material and colour change. */
html[data-route^="/checkout"] body,
.checkout-page,
.cart-page,
.account-page { background: var(--gradient-canvas) fixed !important; }
.checkout-shell,
.account-shell { color: var(--color-text); }
.checkout-topline,
.checkout-stepper,
.account-navigation { border-color: var(--color-border) !important; }
.checkout-topline strong,
.checkout-stepper__step.is-current,
.checkout-summary__head a,
.account-navigation a.is-active { color: var(--color-text) !important; }

/* Footer and sitemap share the canvas rather than introducing a flat band. */
.site-footer {
  border-color: var(--color-border) !important;
  background: linear-gradient(180deg, rgba(245,242,238,.54), rgba(236,233,228,.86)) !important;
}
.sitemap-group { box-shadow: none !important; }

/* Art discovery, configurator and commerce overlays. */
.art-discovery,
.art-discovery__sidebar,
.art-discovery__grid,
.art-preview,
.art-pdp,
.art-configurator,
.art-configurator__panel,
.commerce-drawer__panel {
  border-color: var(--color-border) !important;
  background: var(--gradient-panel) !important;
  box-shadow: var(--shadow-card) !important;
}
.art-style-button.is-selected,
.art-orientation-button.is-selected,
.art-option.is-selected,
.art-material-swatch.is-selected,
.art-preview-card.is-selected {
  border-color: rgba(41,40,38,.28) !important;
  background: var(--gradient-selected) !important;
  box-shadow: none !important;
  color: var(--color-text) !important;
}
.art-option__check,
.art-material-swatch > i { background: var(--color-accent) !important; color: #fff !important; }
.commerce-drawer__backdrop { background: rgba(41,40,38,.28) !important; backdrop-filter: blur(6px); }
.commerce-drawer__close { border: 1px solid var(--color-border) !important; background: var(--gradient-panel) !important; }

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { scroll-behavior: auto !important; animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; }
}

@media (max-width: 760px) {
  .site-header,
  .room-navigation-shell,
  .w1c-topbar { -webkit-backdrop-filter: blur(16px) !important; backdrop-filter: blur(16px) !important; }
  .w1c-gate__card { padding: 30px 22px !important; }
}
