/*
 * Kane's Observations — Silver / Obsidian / Ivory design layer
 * --------------------------------------------------------------------------
 * Presentation-only overrides for the canonical storefront and account pages.
 * This file deliberately does not change display-state contracts used by JS,
 * carousel geometry, collection controllers, or hosted payment providers.
 */

:root {
  color-scheme: light dark;
  --ko-v2-black: #050608;
  --ko-v2-obsidian: #0a0c0f;
  --ko-v2-charcoal: #15191e;
  --ko-v2-graphite: #252b32;
  --ko-v2-silver: #c8cdd3;
  --ko-v2-silver-bright: #edf0f3;
  --ko-v2-silver-deep: #747d87;
  --ko-v2-ivory: #f4f0e9;
  --ko-v2-paper: #faf8f3;
  --ko-v2-ink: #17191c;
  --ko-v2-muted: #687079;
  --ko-v2-blue: #456986;
  --ko-v2-blue-bright: #5d83a2;
  --ko-v2-blue-deep: #2d485f;
  --ko-v2-line-dark: rgba(214, 220, 226, .2);
  --ko-v2-line-light: rgba(23, 25, 28, .16);
  --ko-v2-shadow: 0 20px 55px rgba(5, 7, 10, .14);
  --ko-v2-shadow-dark: 0 24px 70px rgba(0, 0, 0, .45);
  --ko-v2-radius: 8px;

  /* Compatibility aliases used by existing page-level styles. */
  --gold: var(--ko-v2-silver);
  --line: var(--ko-v2-line-dark);
  --muted: #a7adb4;
  --panel: #0e1114;
  --shop-gold: var(--ko-v2-blue);
  --shop-gold-bright: var(--ko-v2-blue-bright);
  --shop-paper: var(--ko-v2-ink);
  --shop-muted: var(--ko-v2-muted);
  --shop-line: var(--ko-v2-line-light);
  --catalog-gold: var(--ko-v2-blue);
  --catalog-gold-light: var(--ko-v2-blue-bright);
  --catalog-white: var(--ko-v2-ink);
  --catalog-muted: var(--ko-v2-muted);
  --catalog-line: var(--ko-v2-line-light);
  --story-gold: var(--ko-v2-blue);
  --story-gold-pale: var(--ko-v2-blue-bright);
  --story-ink: var(--ko-v2-ink);
  --story-muted: var(--ko-v2-muted);
  --story-line: var(--ko-v2-line-light);
  --loyalty-gold: var(--ko-v2-blue);
  --loyalty-gold-soft: var(--ko-v2-blue-bright);
  --loyalty-paper: var(--ko-v2-ink);
  --loyalty-muted: var(--ko-v2-muted);
  --loyalty-line: var(--ko-v2-line-light);
  --loyalty-panel: #fff;
  --cart-ink: var(--ko-v2-black);
  --cart-panel: #0e1114;
  --cart-text: var(--ko-v2-silver-bright);
  --cart-muted: #a7adb4;
  --as-gold: var(--ko-v2-silver);
  --as-gold-bright: var(--ko-v2-silver-bright);
  --as-gold-dim: var(--ko-v2-silver-deep);
  --as-ink: var(--ko-v2-black);
  --as-panel: #0f1216;
  --as-panel-soft: #15191e;
  --as-text: #eef1f3;
  --as-muted: #a5adb5;
  --as-line: rgba(214, 220, 226, .18);
  --as-line-strong: rgba(214, 220, 226, .34);
}

html {
  max-width: 100%;
  background: var(--ko-v2-black);
  scroll-behavior: smooth;
}

body {
  max-width: 100%;
  overflow-x: clip;
  text-rendering: optimizeLegibility;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

body:has(> .arrivals),
body:has(> .container),
body:has(> main .results-header),
body:has(> main .form-card),
body:has(> .not-found-main) {
  background: var(--ko-v2-ivory) !important;
  color: var(--ko-v2-ink) !important;
}

body :where(img, svg, video, canvas) { max-width: 100%; }
body :where(input, select, textarea, button) { font: inherit; }

::selection {
  background: var(--ko-v2-blue);
  color: #fff;
}

:where(a, button, input, select, textarea, summary, [tabindex]):focus-visible {
  outline: 3px solid var(--ko-v2-blue-bright) !important;
  outline-offset: 3px !important;
}

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

/* --------------------------------------------------------------------------
   Shared desktop header
   -------------------------------------------------------------------------- */

.ko-new-header {
  background:
    radial-gradient(circle at 18% -55%, rgba(126, 149, 170, .18), transparent 34%),
    linear-gradient(180deg, #090b0e 0%, #050608 100%) !important;
  border-top: 1px solid rgba(237, 240, 243, .56) !important;
  border-bottom: 1px solid rgba(214, 220, 226, .16) !important;
  box-shadow: 0 9px 30px rgba(0, 0, 0, .28) !important;
}

.ko-new-header::before,
.ko-new-header::after {
  background: radial-gradient(ellipse at center, rgba(189, 201, 211, .1), transparent 70%) !important;
}

.ko-new-brand-link {
  border-radius: 4px;
}

.ko-new-logo-wrap {
  gap: 17px !important;
}

.ko-new-mark {
  border: 1px solid rgba(237, 240, 243, .82) !important;
  background: radial-gradient(circle at 45% 34%, #252a30 0%, #0a0c0f 58%, #050608 100%) !important;
  color: var(--ko-v2-silver-bright) !important;
  box-shadow:
    0 0 0 3px rgba(200, 205, 211, .08),
    0 9px 22px rgba(0, 0, 0, .48),
    inset 0 1px 0 rgba(255, 255, 255, .2) !important;
}

.ko-new-mark::before {
  inset: 5px !important;
  border: 1px solid rgba(200, 205, 211, .24);
  background: linear-gradient(145deg, #14181d, #050608) !important;
}

.ko-new-logo-text .main,
.ko-new-logo-text .sub {
  color: var(--ko-v2-silver-bright) !important;
  text-shadow: 0 2px 9px rgba(0, 0, 0, .62);
}

.ko-new-logo-text .sub {
  color: rgba(222, 227, 232, .68) !important;
}

/* Asset-ready brand classes retain the source artwork's native ratio. */
.ko-new-brand-image,
.ko-brand-wordmark,
.ko-new-logo-image {
  display: block;
  width: auto;
  max-width: min(300px, 24vw);
  height: 70px;
  object-fit: contain;
  object-position: left center;
}

.ko-new-mark-image,
.ko-brand-monogram-image {
  display: block;
  width: 66px;
  height: 66px;
  flex: 0 0 66px;
  object-fit: contain;
}

.ko-new-search .search-input-header {
  height: 54px !important;
  border: 1px solid rgba(224, 229, 234, .32) !important;
  border-radius: 12px !important;
  background: linear-gradient(180deg, #181b1f, #111418) !important;
  color: #f7f8f9 !important;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .05), 0 10px 26px rgba(0, 0, 0, .28) !important;
}

.ko-new-search .search-input-header::placeholder {
  color: #9fa6ae !important;
}

.ko-new-search .search-input-header:focus {
  border-color: rgba(126, 164, 194, .9) !important;
  box-shadow: 0 0 0 3px rgba(69, 105, 134, .22), inset 0 1px 0 rgba(255, 255, 255, .06) !important;
}

.ko-new-search .search-btn {
  right: 5px !important;
  width: 44px !important;
  height: 44px !important;
  border: 1px solid rgba(255, 255, 255, .15) !important;
  background: linear-gradient(145deg, var(--ko-v2-blue-bright), var(--ko-v2-blue-deep)) !important;
  color: #fff !important;
  box-shadow: 0 5px 16px rgba(7, 17, 27, .42) !important;
}

.ko-new-search .search-btn svg {
  color: #fff !important;
  fill: #fff !important;
}

.ko-new-action-link,
.ko-new-action-link:visited {
  color: #eef1f3 !important;
}

.ko-new-action-link:hover {
  color: #fff !important;
}

.ko-new-cart-badge {
  background: var(--ko-v2-silver-bright) !important;
  color: var(--ko-v2-black) !important;
}

.ko-new-nav-bar {
  border-top: 1px solid #d5d0c8 !important;
  border-bottom: 1px solid #c9c2b8 !important;
  background: linear-gradient(90deg, #e9e4dc 0%, #fbf9f5 50%, #e6e0d7 100%) !important;
  box-shadow: inset 0 1px 0 #fff, 0 6px 18px rgba(0, 0, 0, .18) !important;
}

.ko-new-nav-inner a,
.dropdown-toggle {
  color: #17191c !important;
  text-shadow: none !important;
}

.ko-new-nav-inner a::after,
.ko-new-nav-inner .nav-dropdown > .dropdown-toggle::after {
  color: rgba(23, 25, 28, .3) !important;
}

.ko-new-nav-inner a::before {
  background: var(--ko-v2-blue) !important;
  box-shadow: none !important;
}

.menu-icon::before,
.menu-icon::after,
.menu-icon span {
  background: var(--ko-v2-ink) !important;
}

@media (min-width: 769px) {
  .dropdown-menu {
    border-color: rgba(200, 205, 211, .34) !important;
    background: linear-gradient(155deg, rgba(35, 40, 47, .99), rgba(10, 12, 15, .99) 55%, #050608) !important;
    box-shadow: 0 22px 55px rgba(0, 0, 0, .66), inset 0 1px 0 rgba(255, 255, 255, .08) !important;
  }

  .dropdown-inner {
    border-color: rgba(255, 255, 255, .06) !important;
    background: linear-gradient(180deg, #15191e, #080a0c) !important;
  }

  .ko-new-nav-inner .dropdown-menu .dropdown-item,
  .dropdown-item {
    color: #dce1e5 !important;
  }

  .dropdown-item + .dropdown-item {
    border-top-color: rgba(214, 220, 226, .11) !important;
  }

  .dropdown-item:hover,
  .dropdown-item:focus-visible {
    color: #fff !important;
    background: linear-gradient(90deg, rgba(69, 105, 134, .3), rgba(69, 105, 134, .08)) !important;
    text-shadow: none !important;
  }
}

/* --------------------------------------------------------------------------
   Shared mobile header and drawer
   -------------------------------------------------------------------------- */

@media (max-width: 768px) {
  .ko-new-header { display: none !important; }
  .ko-mobile-header { display: block !important; }

  .ko-mobile-header,
  .ko-mobile-main-row {
    border-color: rgba(214, 220, 226, .17) !important;
    background: linear-gradient(115deg, #050608, #15191e 55%, #050608) !important;
    color: #eef1f3 !important;
  }

  .ko-mobile-header .ko-mobile-brand,
  .ko-mobile-header .ko-mobile-wordmark,
  .ko-mobile-header .ko-mobile-icon-button,
  .ko-mobile-header .ko-mobile-icon-link {
    color: #eef1f3 !important;
  }

  .ko-mobile-mark,
  .ko-mobile-drawer-mark {
    border: 1px solid rgba(237, 240, 243, .7) !important;
    background: linear-gradient(145deg, #252a30, #080a0c) !important;
    color: #f4f6f7 !important;
    box-shadow: 0 0 0 2px rgba(200, 205, 211, .08), 0 5px 15px rgba(0, 0, 0, .4) !important;
  }

  .ko-mobile-wordmark small {
    color: rgba(222, 227, 232, .64) !important;
  }

  .ko-mobile-search-panel {
    border-color: rgba(214, 220, 226, .16) !important;
    background: #0c0f12 !important;
  }

  .ko-mobile-search-panel input {
    border-color: rgba(214, 220, 226, .38) !important;
    background: #f8f7f4 !important;
    color: var(--ko-v2-ink) !important;
  }

  .ko-mobile-search-panel button {
    border-color: var(--ko-v2-blue) !important;
    background: linear-gradient(145deg, var(--ko-v2-blue-bright), var(--ko-v2-blue-deep)) !important;
    color: #fff !important;
  }

  .ko-mobile-drawer-backdrop {
    background: rgba(3, 5, 7, .78) !important;
  }

  .ko-mobile-drawer,
  .ko-mobile-header .ko-mobile-drawer {
    border-color: rgba(214, 220, 226, .26) !important;
    background: radial-gradient(circle at 80% 3%, rgba(86, 116, 140, .22), transparent 28%), linear-gradient(145deg, #15191e 0%, #080a0d 40%, #030405 100%) !important;
  }

  .ko-mobile-drawer::before {
    background: linear-gradient(90deg, transparent, var(--ko-v2-silver-deep), var(--ko-v2-silver-bright), var(--ko-v2-silver-deep), transparent) !important;
  }

  .ko-mobile-drawer-head,
  .ko-mobile-nav-group + .ko-mobile-nav-group,
  .ko-mobile-drawer-footer,
  .ko-mobile-submenu-heading {
    border-color: rgba(214, 220, 226, .16) !important;
  }

  .ko-mobile-drawer-head {
    background: linear-gradient(180deg, rgba(26, 31, 37, .97), rgba(8, 10, 13, .94)) !important;
  }

  .ko-mobile-drawer-brand,
  .ko-mobile-drawer-brand:visited,
  .ko-mobile-drawer-close,
  .ko-mobile-nav-label,
  .ko-mobile-submenu-back {
    color: #dce1e5 !important;
  }

  .ko-mobile-drawer-close {
    border-color: rgba(214, 220, 226, .32) !important;
  }

  .ko-mobile-drawer .ko-mobile-menu-panel a,
  .ko-mobile-drawer .ko-mobile-menu-panel a:visited,
  .ko-mobile-submenu-open {
    border-color: rgba(214, 220, 226, .11) !important;
    color: #eef1f3 !important;
  }

  .ko-mobile-drawer .ko-mobile-menu-panel a::after,
  .ko-mobile-submenu-open::after {
    border-color: var(--ko-v2-silver) !important;
  }

  .ko-mobile-drawer .ko-mobile-menu-panel a:hover,
  .ko-mobile-drawer .ko-mobile-menu-panel a:focus-visible,
  .ko-mobile-drawer .ko-mobile-menu-panel a.ko-nav-current,
  .ko-mobile-submenu-open:hover,
  .ko-mobile-submenu-open:focus-visible {
    color: #fff !important;
    background: linear-gradient(90deg, rgba(69, 105, 134, .28), transparent 80%) !important;
  }

  .ko-mobile-drawer .ko-mobile-menu-panel a.ko-nav-current::before {
    background: var(--ko-v2-blue-bright) !important;
    box-shadow: 0 0 8px rgba(93, 131, 162, .5) !important;
  }

  .ko-mobile-drawer-footer a,
  .ko-mobile-drawer-footer a:visited {
    border-color: rgba(214, 220, 226, .22) !important;
    background: rgba(255, 255, 255, .035) !important;
    color: #dce1e5 !important;
  }
}

/* --------------------------------------------------------------------------
   Shared footer treatment
   -------------------------------------------------------------------------- */

body footer,
.shop-footer,
.catalog-footer,
.story-footer,
.loyalty-footer {
  border-top: 1px solid rgba(214, 220, 226, .18) !important;
  background: linear-gradient(180deg, #171a1f, #0b0d10) !important;
  color: #bfc5ca !important;
}

body footer :where(h2, h3, h4, strong) { color: #f1f3f4 !important; }
body footer :where(p, small, li) { color: #b3bac0 !important; }
body footer a,
body footer a:visited {
  color: #dce1e5 !important;
  text-decoration-color: rgba(220, 225, 229, .42);
}
body footer a:hover { color: #fff !important; }

/* --------------------------------------------------------------------------
   Homepage: preserve carousel sizing/controller; theme surrounding surfaces.
   -------------------------------------------------------------------------- */

.homepage-main {
  background: var(--ko-v2-ivory) !important;
  color: var(--ko-v2-ink) !important;
}

.homepage-main > .collector-carousel {
  border-bottom: 1px solid rgba(214, 220, 226, .22);
  background-color: var(--ko-v2-black);
}

.collector-hero__button {
  border-color: rgba(220, 225, 229, .55) !important;
  color: #f4f5f6 !important;
}

.collector-hero__button--primary {
  border-color: var(--ko-v2-blue-bright) !important;
  background: linear-gradient(135deg, var(--ko-v2-blue-bright), var(--ko-v2-blue-deep)) !important;
  color: #fff !important;
  box-shadow: 0 11px 25px rgba(7, 18, 27, .38) !important;
}

.trust-strip {
  border-top: 1px solid #d7d1c8 !important;
  border-bottom: 1px solid #d7d1c8 !important;
  background: linear-gradient(180deg, #fbf9f5, #eee8df) !important;
  color: var(--ko-v2-ink) !important;
}

.trust-benefit + .trust-benefit { border-left-color: rgba(23, 25, 28, .13) !important; }
.trust-benefit__title { color: var(--ko-v2-ink) !important; }
.trust-benefit__description { color: var(--ko-v2-muted) !important; }
.trust-icon { color: var(--ko-v2-blue) !important; border-color: var(--ko-v2-blue) !important; }

.brand-mission {
  max-width: 900px !important;
  margin-block: 0 !important;
  padding: clamp(50px, 7vw, 86px) 24px clamp(62px, 8vw, 98px) !important;
  color: var(--ko-v2-ink) !important;
}

.brand-mission h2 {
  margin: 0 0 21px !important;
  color: var(--ko-v2-ink) !important;
  font-size: clamp(28px, 3.5vw, 44px) !important;
  letter-spacing: -.025em !important;
}

.brand-mission p { color: #515860 !important; line-height: 1.75 !important; }
.brand-mission .ko-new-action-link {
  width: fit-content;
  margin: 28px auto 0 !important;
  padding: 13px 22px !important;
  border: 1px solid var(--ko-v2-blue) !important;
  border-radius: 4px;
  background: var(--ko-v2-blue) !important;
  color: #fff !important;
}

/* --------------------------------------------------------------------------
   Light editorial storefront family
   -------------------------------------------------------------------------- */

.shop-main,
.catalog-main,
.story-main,
.loyalty-main,
.arrivals {
  background: var(--ko-v2-ivory) !important;
  color: var(--ko-v2-ink) !important;
}

.shop-shell,
.catalog-shell,
.story-wrap,
.loyalty-shell {
  width: min(1280px, calc(100% - 48px));
}

.shop-context,
.catalog-utility,
.story-ledger,
.loyalty-context {
  border-color: var(--ko-v2-line-light) !important;
  color: var(--ko-v2-muted) !important;
}

.shop-context strong,
.catalog-kicker,
.shop-kicker,
.shop-section-label,
.story-kicker,
.story-section-label,
.story-manifesto-label,
.loyalty-eyebrow,
.loyalty-card-label,
.eyebrow,
.arrival-type,
.arrivals-bar b {
  color: var(--ko-v2-blue) !important;
}

.shop-title,
.catalog-title,
.story-title,
.loyalty-title,
.arrivals h1 {
  color: var(--ko-v2-ink) !important;
  text-wrap: balance;
}

.shop-title span,
.catalog-title span,
.story-title em,
.loyalty-title span {
  color: var(--ko-v2-blue) !important;
}

.shop-intro,
.catalog-intro,
.story-deck,
.loyalty-intro,
.arrivals .intro {
  color: var(--ko-v2-muted) !important;
}

.shop-button,
.story-button,
.loyalty-btn {
  border-color: rgba(45, 72, 95, .5) !important;
  background: transparent !important;
  color: var(--ko-v2-blue-deep) !important;
}

.shop-button.primary,
.story-button.primary,
.loyalty-btn.primary {
  border-color: var(--ko-v2-blue) !important;
  background: linear-gradient(135deg, var(--ko-v2-blue-bright), var(--ko-v2-blue-deep)) !important;
  color: #fff !important;
  box-shadow: 0 10px 25px rgba(45, 72, 95, .22);
}

.shop-button:hover,
.story-button:hover,
.loyalty-btn:hover {
  border-color: var(--ko-v2-blue) !important;
  background: rgba(69, 105, 134, .08) !important;
}

.shop-opening,
.catalog-index,
.story-provenance,
.loyalty-program-card {
  border-color: var(--ko-v2-line-light) !important;
  background: rgba(255, 255, 255, .62) !important;
  color: var(--ko-v2-ink) !important;
  box-shadow: var(--ko-v2-shadow);
}

.shop-opening p,
.catalog-index p,
.story-provenance dd,
.loyalty-program-card p {
  color: var(--ko-v2-muted) !important;
}

.shop-opening strong,
.loyalty-program-card h2,
.loyalty-card-stat strong {
  color: var(--ko-v2-ink) !important;
}

.shop-departments,
.catalog-tabs {
  border-color: var(--ko-v2-line-light) !important;
  background: rgba(255, 255, 255, .58) !important;
  scrollbar-color: var(--ko-v2-silver-deep) transparent !important;
}

.shop-departments a,
.catalog-tabs a {
  border-color: var(--ko-v2-line-light) !important;
  color: #4f5861 !important;
}

.shop-departments a:first-child,
.shop-departments a:hover,
.catalog-tabs a:hover {
  background: rgba(69, 105, 134, .08) !important;
  color: var(--ko-v2-blue-deep) !important;
}

.shop-browser-head h2,
.catalog-pathways h2,
.story-section-head h2,
.story-copy h2,
.story-letter h2,
.loyalty-section-title,
.loyalty-cta h2 {
  color: var(--ko-v2-ink) !important;
}

.shop-browser-copy,
.catalog-notice,
.story-copy p,
.story-principle p,
.story-mission p,
.story-letter p,
.loyalty-step p,
.loyalty-tier-benefit,
.loyalty-detail p,
.loyalty-cta p {
  color: var(--ko-v2-muted) !important;
}

.shop-search {
  border-color: var(--ko-v2-line-light) !important;
  border-radius: 5px;
  background: #fff !important;
  box-shadow: 0 5px 15px rgba(5, 7, 10, .06);
}

.shop-search input { color: var(--ko-v2-ink) !important; }
.shop-search button {
  border-color: var(--ko-v2-line-light) !important;
  background: var(--ko-v2-blue) !important;
  color: #fff !important;
}

.shop-toolbar,
.catalog-pathways,
.story-principles,
.story-letter,
.loyalty-section,
.loyalty-cta {
  border-color: var(--ko-v2-line-light) !important;
}

.shop-filter {
  border-color: var(--ko-v2-line-light) !important;
  border-radius: 999px;
  background: #fff !important;
  color: #59616a !important;
}

.shop-filter:hover,
.shop-filter:focus-visible,
.shop-filter[aria-pressed="true"] {
  border-color: var(--ko-v2-blue) !important;
  background: var(--ko-v2-blue) !important;
  color: #fff !important;
}

.shop-product,
.arrival-card {
  border-color: var(--ko-v2-line-light) !important;
  border-radius: var(--ko-v2-radius);
  background: #fff !important;
  color: var(--ko-v2-ink) !important;
  box-shadow: 0 10px 28px rgba(8, 11, 14, .08);
  overflow: hidden;
}

.shop-product:hover,
.arrival-card:hover {
  border-color: rgba(69, 105, 134, .52) !important;
  box-shadow: 0 22px 44px rgba(8, 11, 14, .14) !important;
}

.shop-product h3,
.arrival-title { color: var(--ko-v2-ink) !important; }
.shop-product p,
.arrival-meta { color: var(--ko-v2-muted) !important; }
.shop-product-meta span:first-child,
.shop-product-link,
.shop-result-count,
.arrival-status { color: var(--ko-v2-blue) !important; }
.shop-product-link { border-color: var(--ko-v2-line-light) !important; }

.shop-product-visual,
.arrival-image {
  border-color: var(--ko-v2-line-light) !important;
}

.shop-assurance,
.loyalty-how,
.loyalty-details {
  border-color: var(--ko-v2-line-light) !important;
}

.shop-assurance article,
.loyalty-step,
.loyalty-detail,
.story-principle,
.story-mission {
  border-color: var(--ko-v2-line-light) !important;
  background: rgba(255, 255, 255, .38) !important;
}

.shop-assurance h3,
.loyalty-step h3,
.loyalty-detail h3,
.story-principle h3,
.story-mission h3 { color: var(--ko-v2-ink) !important; }

.catalog-card {
  border-color: rgba(214, 220, 226, .24) !important;
  background: linear-gradient(145deg, #181d22, #080a0d 72%) !important;
  box-shadow: var(--ko-v2-shadow-dark) !important;
}

.catalog-card::before { background-color: rgba(69, 105, 134, .08) !important; }
.catalog-card::after { border-color: rgba(214, 220, 226, .35) !important; }
.catalog-card :where(h2, h3) { color: #f3f5f6 !important; }
.catalog-card :where(p, span) { color: #b5bdc4 !important; }
.catalog-card-action { color: #dce2e7 !important; }
.catalog-card-action::after { background: var(--ko-v2-blue-bright) !important; }

.catalog-pathway {
  border-color: var(--ko-v2-line-light) !important;
  color: var(--ko-v2-muted) !important;
}
.catalog-pathway strong { color: var(--ko-v2-blue-deep) !important; }

.story-manifesto {
  border-color: rgba(214, 220, 226, .2) !important;
  background: linear-gradient(135deg, #171c21, #080a0d) !important;
  color: #eef1f3 !important;
  box-shadow: var(--ko-v2-shadow-dark);
}

.story-manifesto h2,
.story-manifesto h3 { color: #f4f6f7 !important; }
.story-manifesto h2 span { color: #a9c0d2 !important; }
.story-manifesto p { color: #bac2c9 !important; }

.loyalty-notice,
.notice {
  border-color: rgba(69, 105, 134, .32) !important;
  background: rgba(69, 105, 134, .07) !important;
  color: #4e5963 !important;
}

.loyalty-notice-mark,
.loyalty-step-number,
.loyalty-tier-number,
.loyalty-tier-points { color: var(--ko-v2-blue) !important; }

.loyalty-tier {
  border-color: var(--ko-v2-line-light) !important;
  background: rgba(255, 255, 255, .5) !important;
  box-shadow: 0 8px 25px rgba(8, 11, 14, .06);
}
.loyalty-tier-name { color: var(--ko-v2-ink) !important; }
.loyalty-progress { border-color: var(--ko-v2-line-light) !important; background: #fff !important; }
.loyalty-track { background: #d8dde1 !important; }
.loyalty-track::before { background: linear-gradient(90deg, var(--ko-v2-blue-deep), var(--ko-v2-blue-bright)) !important; }
.loyalty-track-dot { border-color: var(--ko-v2-blue) !important; background: #fff !important; }

.arrivals-bar,
.notice { border-color: var(--ko-v2-line-light) !important; }
.arrival-image {
  background: linear-gradient(145deg, #171c22, #080a0d) !important;
}
.arrival-image::before { color: #dce2e7 !important; }
.arrival-image::after { border-color: rgba(214, 220, 226, .25) !important; }

/* --------------------------------------------------------------------------
   Search, contact, FAQ, legal, policy, and 404 pages
   -------------------------------------------------------------------------- */

body > .container,
body > main:has(.results-header),
body > main:has(.form-card),
.not-found-main {
  color: var(--ko-v2-ink);
}

body > .container {
  width: min(1040px, calc(100% - 44px));
  margin-inline: auto;
}

body > .container > h1,
.results-header h1,
.form-card h1,
.not-found-main h1 {
  color: var(--ko-v2-ink) !important;
  letter-spacing: -.03em;
  text-wrap: balance;
}

body > .container > .subtitle,
.results-count,
.form-card .intro,
.not-found-main p {
  color: var(--ko-v2-muted) !important;
}

body > .container > .card,
body > .container details,
.form-card,
.no-results,
.recommendations {
  border: 1px solid var(--ko-v2-line-light) !important;
  border-radius: var(--ko-v2-radius) !important;
  background: rgba(255, 255, 255, .72) !important;
  color: var(--ko-v2-ink) !important;
  box-shadow: 0 10px 28px rgba(8, 11, 14, .07) !important;
}

body > .container > .card h2,
body > .container details summary,
.form-card h2,
.recommendations h2 {
  color: var(--ko-v2-ink) !important;
}

body > .container > .card p,
body > .container details p,
.form-card p,
.no-results {
  color: #555e67 !important;
}

body > .container a,
.recommendations a,
.ko-back-home {
  color: var(--ko-v2-blue-deep) !important;
}

body > .container details[open] {
  border-color: rgba(69, 105, 134, .4) !important;
}

.results-tools,
.filter-panel {
  border-color: var(--ko-v2-line-light) !important;
  background: rgba(255, 255, 255, .64) !important;
}

.filter-button,
.recommendation-links a,
.form-card .btn,
.upload-btn {
  border-color: var(--ko-v2-blue) !important;
  background: var(--ko-v2-blue) !important;
  color: #fff !important;
}

.result-card {
  border-color: var(--ko-v2-line-light) !important;
  border-radius: var(--ko-v2-radius) !important;
  background: #fff !important;
  color: var(--ko-v2-ink) !important;
  box-shadow: 0 10px 28px rgba(8, 11, 14, .08);
}
.result-card-body :where(h2, h3) { color: var(--ko-v2-ink) !important; }
.result-card-body p { color: var(--ko-v2-muted) !important; }
.badge { background: var(--ko-v2-blue) !important; color: #fff !important; }

.form-card :where(input, select, textarea),
.file-area {
  border-color: rgba(23, 25, 28, .25) !important;
  background: #fff !important;
  color: var(--ko-v2-ink) !important;
}

.form-card :where(input, select, textarea):focus {
  border-color: var(--ko-v2-blue) !important;
  box-shadow: 0 0 0 3px rgba(69, 105, 134, .14) !important;
}

.form-card label,
.business-heading { color: var(--ko-v2-blue-deep) !important; }
.note,
.business-text,
.file-instructions { color: var(--ko-v2-muted) !important; }
.success-box { border-color: #6a9b7c !important; background: #eef8f1 !important; color: #244d33 !important; }
.error { color: #9b3131 !important; }

.not-found-main a {
  border-color: var(--ko-v2-blue) !important;
  background: var(--ko-v2-blue) !important;
  color: #fff !important;
}

/* --------------------------------------------------------------------------
   Cart, saved items, checkout entry, checkout, and result
   -------------------------------------------------------------------------- */

.cart-shell,
.saved-shell,
.entry-shell,
.shell,
.result {
  color: #eef1f3;
}

.cart-shell > h1,
.saved-shell > h1,
.entry-panel h1,
.head h1,
.result h1 { color: #f4f6f7 !important; }

.cart-signin,
.cart-item,
.cart-summary,
.cart-detail,
.cart-empty,
.saved-later,
.saved-state,
.saved-item,
.entry-grid,
.shell .card,
.summary,
.result {
  border-color: var(--ko-v2-line-dark) !important;
}

.cart-item,
.cart-summary,
.cart-detail,
.cart-empty,
.saved-later,
.saved-state,
.saved-item,
.entry-grid,
.entry-panel,
.shell .card,
.summary,
.result {
  background: linear-gradient(155deg, #15191e, #080a0d 76%) !important;
  box-shadow: var(--ko-v2-shadow-dark) !important;
}

.cart-item h2,
.cart-summary h2,
.saved-later h2,
.saved-item h2,
.shell .card h2,
.summary h2 { color: #f1f3f4 !important; }

.cart-item p,
.cart-legal,
.cart-secure,
.saved-intro,
.saved-state,
.saved-item p,
.entry-copy,
.guest-note,
.shell .intro,
.sumline,
.secure { color: #aeb5bc !important; }

.cart-signin,
.cart-status,
.verify-message,
.message,
.test {
  border-color: rgba(93, 131, 162, .38) !important;
  background: rgba(69, 105, 134, .12) !important;
  color: #cadbe7 !important;
}

.cart-signin a,
.cart-legal a,
.saved-shell a,
.guest-note a,
.entry-brand a,
.back,
.return,
.step-back,
.consents a,
.coupon-info { color: #b9d0e1 !important; }

.qty,
.item-links,
.sumline.total,
.summary h2,
.item,
.promo,
.rewards,
.totals,
.consents,
.entry-panel + .entry-panel {
  border-color: var(--ko-v2-line-dark) !important;
}

.qty button,
.item-links button,
.saved-actions button,
.promo-row button,
.step-back,
#coupon-info {
  border-color: rgba(214, 220, 226, .28) !important;
  background: #11151a !important;
  color: #dce1e5 !important;
}

.checkout-btn,
.saved-actions button:first-child,
.entry-button,
.action {
  border-color: var(--ko-v2-blue-bright) !important;
  background: linear-gradient(135deg, var(--ko-v2-blue-bright), var(--ko-v2-blue-deep)) !important;
  color: #fff !important;
  box-shadow: 0 10px 24px rgba(6, 16, 25, .38) !important;
}

.entry-button.dark {
  border-color: rgba(214, 220, 226, .3) !important;
  background: #11151a !important;
}

.entry-brand,
.brandbar {
  border-color: var(--ko-v2-line-dark) !important;
  background: linear-gradient(180deg, #0d1014, #060709) !important;
}

.entry-brand strong,
.brand { color: #eef1f3 !important; }

.entry-panel label,
.field label,
.promo label,
.saved-kicker,
.earn,
.reward-line strong,
.saved-price { color: #c8d8e4 !important; }

.entry-panel input,
.field input,
.field select,
.promo-row input {
  border-color: rgba(214, 220, 226, .28) !important;
  background: #080a0d !important;
  color: #fff !important;
}

.steps { gap: 12px; }
.step-tab {
  border-color: rgba(214, 220, 226, .16) !important;
  border-radius: 6px;
  background: #0b0e11 !important;
  color: #858e97 !important;
}

.step-tab.active,
.step-tab.complete {
  border-color: var(--ko-v2-blue-bright) !important;
  background: rgba(69, 105, 134, .12) !important;
  color: #d8e5ee !important;
}

.step-tab.active b,
.step-tab.complete b {
  background: var(--ko-v2-blue) !important;
  color: #fff !important;
}

.shipping-choice {
  border-color: rgba(93, 131, 162, .54) !important;
  background: rgba(69, 105, 134, .13) !important;
}
.shipping-choice strong { color: #d8e5ee !important; }
.check input { accent-color: var(--ko-v2-blue) !important; }
.sumline.discount { color: #87c39a !important; }
.promo-row button:hover { background: var(--ko-v2-blue) !important; color: #fff !important; }

.result .mark {
  border-color: var(--ko-v2-silver) !important;
  color: var(--ko-v2-silver-bright) !important;
  background: linear-gradient(145deg, #252a30, #080a0c);
}
.result .eyebrow { color: #bacbd8 !important; }
.result .actions a { border-color: var(--ko-v2-blue-bright) !important; color: #d9e6ef !important; }
.result .actions a.primary { background: var(--ko-v2-blue) !important; color: #fff !important; }

/* --------------------------------------------------------------------------
   Account shell, account-system destinations, and collection shelf
   -------------------------------------------------------------------------- */

.ko-account,
.ko-main,
.ko-overview,
.collection-view,
.account-system-view {
  color: #edf0f2;
}

.ko-sidebar {
  border-color: rgba(214, 220, 226, .13) !important;
  background: linear-gradient(180deg, #11151a 0%, #080a0d 55%, #050608 100%) !important;
  box-shadow: 12px 0 38px rgba(0, 0, 0, .22);
}

.ko-sidebar-brand,
.ko-sidebar-logo-wrap { border-color: rgba(214, 220, 226, .14) !important; }
.ko-sidebar-logo-mark {
  border-color: rgba(237, 240, 243, .7) !important;
  background: linear-gradient(145deg, #252a30, #080a0c) !important;
  color: #eef1f3 !important;
  box-shadow: 0 0 0 3px rgba(200, 205, 211, .06), 0 8px 20px rgba(0, 0, 0, .4) !important;
}
.ko-sidebar-logo-text { color: #eef1f3 !important; }

.ko-nav-item { color: #aeb6bd !important; }
.ko-nav-item:hover { background: rgba(255, 255, 255, .045) !important; color: #fff !important; }
.ko-nav-item.active {
  background: linear-gradient(90deg, rgba(69, 105, 134, .34), rgba(69, 105, 134, .07)) !important;
  color: #fff !important;
}
.ko-nav-item.active::before { background: var(--ko-v2-blue-bright) !important; }
.ko-signout,
.ko-signout-main { border-color: rgba(214, 220, 226, .28) !important; color: #dce1e5 !important; }

.ko-main {
  background: radial-gradient(circle at 72% 0%, rgba(69, 105, 134, .11), transparent 30%), #06080a !important;
}

.ko-main-top,
.ko-collector-identity,
.ko-status-hero,
.ko-rank-grid,
.ko-benefits-section,
.ko-collection-feature,
.ko-collection-toolbar,
.ko-collection-items,
.ko-shelf,
.as-panel,
.as-order-card,
.as-product-card,
.as-vault-item,
.as-security-card,
.as-address-card,
.as-pref-group,
.as-contact-aside {
  border-color: var(--as-line) !important;
  background: linear-gradient(150deg, rgba(22, 26, 31, .96), rgba(8, 10, 13, .98)) !important;
  box-shadow: 0 18px 45px rgba(0, 0, 0, .28) !important;
}

.ko-section-title,
.ko-greeting-name,
.ko-status-value,
.ko-rank-name,
.ko-benefit-name,
.ko-collection-title,
.ko-collection-section-title,
.as-page-head h1,
.as-panel-title,
.as-list-primary,
.as-order-number,
.as-product-card h3,
.as-vault-item h3,
.as-empty h2 {
  color: #f1f3f4 !important;
}

.ko-greeting-label,
.ko-status-label,
.ko-status-score,
.ko-progress-percent,
.ko-benefit-status,
.ko-collection-kicker,
.as-kicker,
.as-product-type,
.as-product-price,
.as-money-cell,
.as-balance-cell {
  color: #bfd2e1 !important;
}

.ko-greeting-email,
.ko-greeting-sub,
.ko-collector-quote,
.ko-progress-labels,
.ko-benefit-tier,
.ko-benefits-sub,
.ko-collection-copy,
.as-page-head p,
.as-note,
.as-list-meta,
.as-empty p,
.as-order-summary,
.as-address-privacy {
  color: #a8b0b8 !important;
}

.ko-avatar,
.ko-scroll-stage,
.ko-pedestal,
.ko-feature-art,
.as-order-thumb,
.as-product-art,
.as-security-row-icon {
  border-color: rgba(214, 220, 226, .2) !important;
  background: radial-gradient(circle at 50% 30%, rgba(93, 131, 162, .15), transparent 58%), #090c0f !important;
}

.ko-avatar-btn,
.ko-collection-btn.primary,
.as-btn.primary,
.as-btn.gold {
  border-color: var(--ko-v2-blue-bright) !important;
  background: linear-gradient(135deg, var(--ko-v2-blue-bright), var(--ko-v2-blue-deep)) !important;
  color: #fff !important;
}

.ko-collection-btn,
.as-btn,
.as-icon-btn,
.as-filter,
.ko-collection-filter,
.ko-collection-tab {
  border-color: rgba(214, 220, 226, .25) !important;
  background: #11151a !important;
  color: #dbe0e4 !important;
}

.as-filter[aria-pressed="true"],
.as-filter.active,
.ko-collection-filter.active,
.ko-collection-tab.active {
  border-color: var(--ko-v2-blue-bright) !important;
  background: rgba(69, 105, 134, .28) !important;
  color: #fff !important;
}

.ko-progress-track,
.ko-progress-bar,
.loyalty-track { background-color: #2b3137 !important; }
.ko-progress-fill,
.ko-progress-current { background: linear-gradient(90deg, var(--ko-v2-blue-deep), #89a8bf) !important; }
.ko-progress-dot,
.ko-progress-dots span { border-color: var(--ko-v2-blue-bright) !important; }

.ko-rank-item.current,
.ko-benefit-col.is-unlocked {
  border-color: rgba(93, 131, 162, .46) !important;
  background: rgba(69, 105, 134, .11) !important;
}
.ko-benefit-col.is-locked { filter: grayscale(.45); opacity: .72; }

.as-input,
.as-select,
.as-textarea,
.as-search-wrap input,
.ko-collection-search input,
.ko-collection-dialog :where(input, select, textarea),
.item-dialog :where(input, select, textarea) {
  border-color: rgba(214, 220, 226, .25) !important;
  background: #080a0d !important;
  color: #eef1f3 !important;
}

.as-input:focus,
.as-select:focus,
.as-textarea:focus,
.ko-collection-dialog :where(input, select, textarea):focus,
.item-dialog :where(input, select, textarea):focus {
  border-color: var(--ko-v2-blue-bright) !important;
  box-shadow: 0 0 0 3px rgba(69, 105, 134, .18) !important;
}

.as-toolbar,
.as-list-row,
.as-order-item,
.as-security-row,
.as-pref-row,
.as-product-foot,
.as-vault-item-head,
.as-order-details,
.as-address-actions {
  border-color: var(--as-line) !important;
}

.as-stat,
.as-balance-hero,
.as-vault-hero,
.as-security-summary,
.as-payment-placeholder,
.as-demo-banner,
.as-address-verification {
  border-color: var(--as-line) !important;
  background: rgba(69, 105, 134, .08) !important;
}

.as-status.green,
.as-status.success,
.as-status.done { color: #9ad0aa !important; }
.as-status.red,
.as-status.danger { color: #efaaaa !important; }
.as-status.gold,
.as-status.checking { color: #bad2e3 !important; }

.as-switch input:checked + span {
  border-color: var(--ko-v2-blue-bright) !important;
  background: rgba(69, 105, 134, .38) !important;
}
.as-switch input:checked + span::after {
  background: var(--ko-v2-silver-bright) !important;
  box-shadow: 0 0 8px rgba(200, 213, 223, .35) !important;
}

.account-system-view table,
.cart-shell table,
.shell table {
  width: 100%;
  border-spacing: 0;
  border-collapse: collapse;
  color: #e8ecef;
}
.account-system-view :where(th, td),
.cart-shell :where(th, td),
.shell :where(th, td) {
  padding: 13px 14px;
  border-bottom: 1px solid var(--ko-v2-line-dark);
  text-align: left;
  vertical-align: top;
}
.account-system-view th,
.cart-shell th,
.shell th {
  color: #bcd0df;
  font-size: 10px;
  font-weight: 800;
  letter-spacing: .11em;
  text-transform: uppercase;
}

.as-modal,
.ko-collection-modal,
.item-modal {
  background: rgba(2, 4, 6, .78) !important;
}

.as-dialog,
.ko-collection-dialog,
.item-dialog,
.ko-avatar-editor-dialog {
  border-color: rgba(214, 220, 226, .28) !important;
  background: linear-gradient(155deg, #181c21, #080a0d) !important;
  color: #eef1f3 !important;
  box-shadow: 0 28px 85px rgba(0, 0, 0, .66) !important;
}

.as-toast {
  border-color: rgba(214, 220, 226, .28) !important;
  background: #161a1f !important;
  color: #f3f5f6 !important;
}

.shelf-page {
  background-color: #06080a !important;
  color: #eef1f3 !important;
}
.crumb,
.crumb a,
.eyebrow,
.shelf-toolbar h2,
.shelf-count b,
.item .type,
.item .dots,
.item-dialog label { color: #c4d6e3 !important; }
.shelf-hero,
.item,
.empty {
  border-color: rgba(214, 220, 226, .24) !important;
  background: linear-gradient(145deg, rgba(24, 28, 33, .96), rgba(8, 10, 13, .98)) !important;
  box-shadow: var(--ko-v2-shadow-dark) !important;
}
.shelf-count { border-color: rgba(214, 220, 226, .2) !important; }
.back-btn,
.modal-btn:not(.ghost):not(.danger) {
  border-color: var(--ko-v2-blue-bright) !important;
  background: linear-gradient(135deg, var(--ko-v2-blue-bright), var(--ko-v2-blue-deep)) !important;
  color: #fff !important;
}
.modal-btn.ghost { border-color: rgba(214, 220, 226, .3) !important; color: #dce1e5 !important; }

/* Cart drawer follows the same visual system without changing open/closed state. */
.ko-cart-drawer {
  border-color: rgba(214, 220, 226, .24) !important;
  background: linear-gradient(155deg, #171b20, #07090b) !important;
  color: #eef1f3 !important;
}
.ko-cart-drawer-head,
.ko-cart-added,
.ko-cart-recs,
.ko-cart-security { border-color: rgba(214, 220, 226, .16) !important; }
.ko-cart-action { border-color: rgba(214, 220, 226, .28) !important; color: #e4e8eb !important; }
.ko-cart-action--primary {
  border-color: var(--ko-v2-blue-bright) !important;
  background: var(--ko-v2-blue) !important;
  color: #fff !important;
}

/* --------------------------------------------------------------------------
   Responsive safeguards
   -------------------------------------------------------------------------- */

@media (max-width: 1100px) {
  .shop-shell,
  .catalog-shell,
  .story-wrap,
  .loyalty-shell { width: min(100% - 36px, 1180px); }
  .ko-new-brand-image,
  .ko-brand-wordmark,
  .ko-new-logo-image { max-width: 220px; height: 62px; }
}

@media (max-width: 900px) {
  .shop-hero,
  .catalog-hero,
  .story-masthead,
  .loyalty-hero { gap: 30px !important; }
  .shop-opening,
  .catalog-index,
  .story-provenance,
  .loyalty-program-card { box-shadow: 0 12px 30px rgba(8, 11, 14, .1); }
  .summary { position: static !important; }
}

@media (max-width: 768px) {
  body { overflow-x: hidden; }
  body :where(main, section, article, aside, form, fieldset, table) { min-width: 0; }
  body :where(img, video, canvas) { height: auto; }

  .homepage-main,
  .shop-main,
  .catalog-main,
  .story-main,
  .loyalty-main { width: 100%; }

  .trust-strip__inner { gap: 0 !important; }
  .trust-benefit { border-color: var(--ko-v2-line-light) !important; }

  .shop-shell,
  .catalog-shell,
  .story-wrap,
  .loyalty-shell { width: min(100% - 30px, 700px); }

  .shop-hero,
  .catalog-hero,
  .story-masthead,
  .loyalty-hero { grid-template-columns: 1fr !important; }

  .shop-title,
  .catalog-title,
  .story-title,
  .loyalty-title { font-size: clamp(38px, 11vw, 58px) !important; }

  .shop-departments,
  .catalog-tabs,
  .shop-filters { scroll-snap-type: x proximity; }
  .shop-departments a,
  .catalog-tabs a,
  .shop-filter { scroll-snap-align: start; }

  .shop-product,
  .arrival-card,
  .catalog-card,
  .loyalty-tier,
  .result-card,
  .saved-item { border-radius: 6px; }

  .entry-shell,
  .cart-shell,
  .saved-shell { width: min(100% - 28px, 700px); }

  .steps { overflow-x: auto; overscroll-behavior-inline: contain; }
  .step-tab { min-width: 78px; }

  .ko-account { min-width: 0 !important; }
  .ko-main { min-width: 0 !important; }
  .ko-rank-grid,
  .ko-benefits-grid-new,
  .ko-quick-grid,
  .ko-shelf-grid,
  .as-grid,
  .as-stat-grid,
  .as-product-grid,
  .as-address-grid { min-width: 0; }

  .as-toolbar,
  .as-page-head,
  .ko-collection-toolbar { align-items: stretch !important; }
  .as-toolbar-group { max-width: 100%; }
  .as-input,
  .as-select,
  .as-textarea { max-width: 100%; }

  .as-list,
  .as-order-card,
  .as-address-card,
  .as-pref-group { overflow-wrap: anywhere; }

  .shelf-page { padding-inline: 16px !important; }
  .item-grid { grid-template-columns: repeat(auto-fill, minmax(min(100%, 210px), 1fr)) !important; }
}

@media (max-width: 520px) {
  .brand-mission { padding-inline: 18px !important; }
  .trust-strip__inner { padding-inline: 14px !important; }
  .shop-shell,
  .catalog-shell,
  .story-wrap,
  .loyalty-shell { width: calc(100% - 28px); }
  .shop-hero-actions,
  .story-actions,
  .loyalty-actions { flex-direction: column; align-items: stretch; }
  .shop-button,
  .story-button,
  .loyalty-btn { width: 100%; justify-content: center; }
  .cart-item,
  .saved-item { overflow-wrap: anywhere; }
  .entry-panel,
  .shell .card { padding-inline: 18px !important; }
  .as-dialog,
  .ko-collection-dialog,
  .item-dialog { width: min(100%, calc(100vw - 24px)) !important; padding-inline: 17px !important; }
}

/* --------------------------------------------------------------------------
   Residual legacy-gold cleanup
   Presentation only: tightly scoped UI chrome; product and carousel artwork
   intentionally retain their source colors.
   -------------------------------------------------------------------------- */

/* Homepage carousel controls and supporting copy. */
.collector-hero__statue-launch::before {
  background: linear-gradient(90deg, rgba(116, 125, 135, .08), rgba(200, 205, 211, .76)) !important;
  box-shadow: 0 0 9px rgba(93, 131, 162, .18) !important;
}

.collector-hero__statue-launch-kicker { color: #b8c6d2 !important; }
.collector-carousel__footer { border-color: rgba(205, 214, 222, .2) !important; }
.collector-carousel__dot.is-active { background: #7898b6 !important; }
.collector-carousel__dot:focus-visible { outline-color: #b8c6d2 !important; }
.collector-carousel__chevron { text-shadow: 0 0 10px rgba(126, 152, 174, .32) !important; }

.collector-carousel__pause {
  border-color: rgba(205, 214, 222, .58) !important;
  background: radial-gradient(circle at 50% 35%, rgba(52, 71, 87, .96), rgba(8, 10, 12, .98) 72%) !important;
  color: #e5e9ec !important;
  text-shadow: 0 0 9px rgba(126, 152, 174, .4) !important;
  box-shadow: inset 0 0 0 1px rgba(255, 255, 255, .07), 0 4px 18px rgba(0, 0, 0, .64) !important;
}

.collector-carousel__pause:hover,
.collector-carousel__pause:focus-visible {
  border-color: #c8cdd3 !important;
  color: #fff !important;
}

.trust-strip { scrollbar-color: rgba(116, 125, 135, .45) transparent !important; }

@keyframes collector-numeral-change {
  0% {
    transform: scale(.84);
    color: #fff;
    box-shadow:
      inset 0 0 0 1px rgba(255, 255, 255, .2),
      0 0 0 3px rgba(93, 131, 162, .2),
      0 0 20px rgba(93, 131, 162, .36);
  }
  60% { transform: scale(1.14); }
  100% { transform: scale(1); }
}

/* Signed-out account and verification views. */
#signed-out-wrapper { color: var(--ko-v2-ink); }
#signed-out-wrapper h1 { color: var(--ko-v2-ink) !important; }
#signed-out-wrapper .subtitle { color: var(--ko-v2-muted) !important; }

#signed-out-wrapper .card {
  border-color: var(--ko-v2-line-light) !important;
  background: rgba(255, 255, 255, .78) !important;
  color: var(--ko-v2-ink) !important;
  box-shadow: 0 14px 36px rgba(8, 11, 14, .08) !important;
}

#signed-out-wrapper .tab {
  border-color: var(--ko-v2-line-light) !important;
  background: rgba(255, 255, 255, .64) !important;
  color: #505962 !important;
}

#signed-out-wrapper .tab.active,
#signed-out-wrapper form button,
#existing-signin-btn {
  border-color: var(--ko-v2-blue-bright) !important;
  background: linear-gradient(135deg, var(--ko-v2-blue-bright), var(--ko-v2-blue-deep)) !important;
  color: #fff !important;
  box-shadow: 0 9px 22px rgba(35, 60, 81, .18) !important;
}

#signed-out-wrapper label { color: var(--ko-v2-ink) !important; }
#signed-out-wrapper input {
  border-color: rgba(23, 25, 28, .22) !important;
  background: #fff !important;
  color: var(--ko-v2-ink) !important;
}
#signed-out-wrapper input:focus {
  border-color: var(--ko-v2-blue-bright) !important;
  box-shadow: 0 0 0 3px rgba(69, 105, 134, .14) !important;
  outline: 0;
}

#signed-out-wrapper .switch-link,
#existing-forgot-btn {
  border-color: var(--ko-v2-blue) !important;
  color: var(--ko-v2-blue-deep) !important;
}

#signed-out-wrapper .auth-security-config {
  border-color: rgba(69, 105, 134, .35) !important;
  background: rgba(69, 105, 134, .07) !important;
  color: #45515c !important;
}

#signed-out-wrapper .card.confirmation-active {
  border-color: rgba(214, 220, 226, .28) !important;
  background: linear-gradient(155deg, #181c21, #080a0d) !important;
  color: #eef1f3 !important;
}

#signup-confirm::before {
  background: radial-gradient(circle, rgba(93, 131, 162, .18), rgba(69, 105, 134, .04) 39%, transparent 69%) !important;
}
#signup-confirm::after,
.signup-confirm-rule {
  background: linear-gradient(90deg, transparent, rgba(200, 213, 223, .82), transparent) !important;
}
.signup-confirm-mark {
  border-color: rgba(200, 213, 223, .74) !important;
  background: linear-gradient(145deg, #1b232b, #080a0c 72%) !important;
  color: #c8d8e4 !important;
  box-shadow: 0 0 0 6px rgba(93, 131, 162, .07), 0 14px 38px rgba(0, 0, 0, .55), inset 0 0 0 1px rgba(255, 255, 255, .035) !important;
}
.signup-confirm-mark::after { border-color: rgba(137, 168, 191, .24) !important; }
.signup-confirm-title { color: #dce6ed !important; }
#signup-confirm-message .signup-confirm-resend {
  border-color: rgba(137, 168, 191, .72) !important;
  background: linear-gradient(180deg, rgba(69, 105, 134, .18), rgba(69, 105, 134, .06)) !important;
  color: #c8d8e4 !important;
}
#signup-confirm-message .signup-confirm-resend:hover {
  border-color: #b8cbd9 !important;
  background: rgba(69, 105, 134, .2) !important;
}
.signup-confirm-back-row { border-color: rgba(137, 168, 191, .17) !important; }
#signup-confirm .signup-confirm-back { color: #b9d0e1 !important; }
#signup-confirm:focus-visible { box-shadow: inset 0 0 0 2px rgba(93, 131, 162, .52) !important; }

/* Logged-in account overview and collector path. */
#auth-welcome .ko-sidebar::after {
  background: linear-gradient(180deg, transparent, rgba(93, 131, 162, .46) 22%, rgba(200, 205, 211, .1) 76%, transparent) !important;
}
#auth-welcome .ko-account-status::before {
  background: linear-gradient(#e5eaee, #708ca3) !important;
  box-shadow: none !important;
}
#auth-welcome .ko-collector-quote cite { color: #9eb7ca !important; }

#auth-welcome .ko-avatar-block .ko-avatar {
  color: #dce5eb !important;
  text-shadow: 0 2px 0 #1c2d3b, 0 0 18px rgba(93, 131, 162, .16) !important;
  box-shadow:
    0 0 0 4px #07090b,
    0 0 0 5px rgba(137, 168, 191, .55),
    inset 0 0 0 7px #080a0c,
    inset 0 0 0 8px rgba(137, 168, 191, .3),
    inset 0 0 36px rgba(0, 0, 0, .88),
    0 15px 28px rgba(0, 0, 0, .55) !important;
}
#auth-welcome .ko-avatar-block .ko-avatar::before { border-color: rgba(137, 168, 191, .28) !important; }

#auth-welcome .ko-overview .ko-status-hero {
  box-shadow: inset 0 1px 0 rgba(223, 232, 239, .12), 0 16px 34px rgba(0, 0, 0, .36) !important;
}
#auth-welcome .ko-overview .ko-status-hero::after {
  text-shadow: 0 1px 0 rgba(185, 208, 225, .08), 0 -1px 0 rgba(0, 0, 0, .94) !important;
}
#auth-welcome .ko-status-progress {
  background: rgba(137, 168, 191, .16) !important;
}
#auth-welcome .ko-status-progress span {
  background: linear-gradient(90deg, #456986, #a9c2d4) !important;
  box-shadow: 0 0 10px rgba(93, 131, 162, .6) !important;
}
#auth-welcome .ko-status-score > div:last-child strong,
#auth-welcome .ko-status-score > div:last-child span { color: #bfd2e1 !important; }

#auth-welcome .ko-overview .ko-tiers-section {
  border-color: rgba(137, 168, 191, .42) !important;
  background: radial-gradient(600px 220px at 50% 39%, rgba(69, 105, 134, .1), transparent 72%), linear-gradient(180deg, rgba(12, 15, 18, .97), rgba(5, 7, 9, .99)) !important;
}
#auth-welcome .ko-overview .ko-tiers-section::before,
#auth-welcome .ko-overview .ko-tiers-section::after { color: #89a8bf !important; }
#auth-welcome .ko-overview .ko-tiers-section .ko-section-title::before,
#auth-welcome .ko-overview .ko-tiers-section .ko-section-title::after,
.ko-tiers-section .ko-section-title::before,
.ko-tiers-section .ko-section-title::after,
.ko-progress-card .ko-section-title::after,
.ko-benefits-card .ko-section-title::after {
  background: linear-gradient(90deg, transparent, rgba(137, 168, 191, .62), transparent) !important;
  box-shadow: none !important;
}
#auth-welcome .ko-overview .ko-rank-item::after {
  background: linear-gradient(180deg, transparent, rgba(137, 168, 191, .2) 24%, rgba(255, 255, 255, .055) 75%, transparent) !important;
}
#auth-welcome .ko-overview .ko-rank-number { color: #a9c2d4 !important; }
#auth-welcome .ko-rank-item::before {
  background: radial-gradient(ellipse, rgba(93, 131, 162, .34), rgba(93, 131, 162, .08) 45%, transparent 73%) !important;
}
#auth-welcome .ko-scroll-stage::before {
  border-color: rgba(137, 168, 191, .55) !important;
  background: linear-gradient(180deg, #14202a, #050709 62%) !important;
  box-shadow: 0 8px 11px rgba(0, 0, 0, .75), inset 0 2px 3px rgba(185, 208, 225, .18) !important;
}
#auth-welcome .ko-scroll-stage::after { border-color: rgba(93, 131, 162, .43) !important; }
#auth-welcome .ko-overview .ko-rank-item img {
  filter: drop-shadow(0 0 8px rgba(93, 131, 162, .16)) drop-shadow(0 13px 10px rgba(0, 0, 0, .86)) !important;
}
#auth-welcome .ko-pedestal {
  background: linear-gradient(90deg, transparent, #587c99 22%, #c3d4df 50%, #466985 78%, transparent) !important;
  box-shadow: 0 0 10px rgba(93, 131, 162, .34) !important;
}
#auth-welcome .ko-tier-progress {
  border-top-color: rgba(137, 168, 191, .25) !important;
  background: linear-gradient(90deg, rgba(69, 105, 134, .065), rgba(255, 255, 255, .012) 30%, rgba(255, 255, 255, .012) 70%, rgba(69, 105, 134, .065)) !important;
}
.ko-tier-line {
  background: linear-gradient(90deg, transparent, rgba(137, 168, 191, .24), rgba(200, 213, 223, .86), rgba(137, 168, 191, .24), transparent) !important;
}
.ko-tier-line::after { background: #89a8bf !important; box-shadow: 0 0 9px rgba(93, 131, 162, .48) !important; }

#auth-welcome .ko-overview .ko-progress-dots .dot {
  border-color: rgba(137, 168, 191, .58) !important;
  background: radial-gradient(circle, #141a1f, #080a0c) !important;
}
#auth-welcome .ko-overview .ko-progress-dots .dot.done {
  border-color: #89a8bf !important;
  background: #456986 !important;
  color: #fff !important;
}
#auth-welcome .ko-overview .ko-progress-dots .dot.current {
  border-color: #89a8bf !important;
  background: radial-gradient(circle, #213546, #0a0d10 74%) !important;
  box-shadow: 0 0 0 4px #0a0c0e, 0 0 14px rgba(93, 131, 162, .5) !important;
}
#auth-welcome .ko-overview .ko-progress-dots .dot.current::after { color: #b8cad8 !important; }
#auth-welcome .ko-overview .ko-progress-dots .dot:not(.done):not(.current)::after { color: #76838d !important; }

#auth-welcome .ko-overview .ko-benefits-section .ko-section-title span::before { color: #89a8bf !important; }
#auth-welcome .ko-overview .ko-benefit-col {
  border-color: rgba(137, 168, 191, .25) !important;
}
#auth-welcome .ko-overview .ko-benefit-col:hover { background: linear-gradient(145deg, rgba(69, 105, 134, .1), rgba(0, 0, 0, .15)) !important; }
#auth-welcome .ko-overview .ko-benefit-icon,
#auth-welcome .ko-overview .is-unlocked .ko-benefit-icon,
#auth-welcome .ko-overview .ko-benefit-col:has(.unlocked) .ko-benefit-icon {
  border-color: rgba(137, 168, 191, .58) !important;
  background: radial-gradient(circle, rgba(69, 105, 134, .16), transparent 68%) !important;
  color: #bfd2e1 !important;
  box-shadow: inset 0 0 0 3px #090b0d !important;
}
#auth-welcome .ko-overview .ko-benefit-status.unlocked { color: #bfd2e1 !important; }

#auth-welcome .ko-signout-main:active {
  border-color: rgba(137, 168, 191, .72) !important;
  background: rgba(69, 105, 134, .12) !important;
}
#auth-welcome .ko-signout-main svg { stroke: currentColor !important; }

/* Profile-photo editor. */
.ko-avatar-editor-dialog { box-shadow: 0 28px 80px rgba(0, 0, 0, .72), inset 0 1px 0 rgba(255, 255, 255, .04) !important; }
.ko-avatar-editor-kicker,
.ko-avatar-editor-control output { color: #bfd2e1 !important; }
.ko-avatar-crop-wrap {
  box-shadow: 0 0 0 5px #080a0c, 0 0 0 6px rgba(137, 168, 191, .72), 0 0 38px rgba(93, 131, 162, .16) !important;
}
.ko-avatar-crop-canvas:focus-visible { box-shadow: inset 0 0 0 3px #89a8bf !important; }
.ko-avatar-editor-control input { accent-color: var(--ko-v2-blue) !important; }
.ko-avatar-position-controls .ko-avatar-editor-control {
  border-color: rgba(137, 168, 191, .2) !important;
  background: rgba(255, 255, 255, .018) !important;
}
.ko-avatar-editor .ko-avatar-editor-btn {
  border-color: rgba(137, 168, 191, .45) !important;
  background: #0b0e11 !important;
  color: #bfd2e1 !important;
}
.ko-avatar-editor .ko-avatar-editor-btn.primary {
  border-color: var(--ko-v2-blue-bright) !important;
  background: linear-gradient(135deg, var(--ko-v2-blue-bright), var(--ko-v2-blue-deep)) !important;
  color: #fff !important;
}
.ko-avatar-editor .ko-avatar-editor-btn:hover { border-color: #b8cbd9 !important; color: #e7eef3 !important; }

/* Account-system destinations. */
.as-page-head,
.as-empty,
.as-note,
.as-status.gold,
.as-milestones,
.as-security-list,
.as-pref-group-head,
.as-support-category,
.as-faq,
.as-dialog-head,
.as-dialog-actions,
.as-balance-cell { border-color: var(--as-line) !important; }

.as-search-wrap svg { stroke: var(--ko-v2-blue-bright) !important; }
.as-field > span,
.as-stat em,
.as-order-thumb,
.as-product-art { color: #bfd2e1 !important; }
.as-stat::after { border-color: rgba(137, 168, 191, .12) !important; }
.as-empty {
  background: radial-gradient(circle at 50% 38%, rgba(69, 105, 134, .08), transparent 25%), rgba(7, 9, 11, .72) !important;
}
.as-empty-mark { border-color: rgba(137, 168, 191, .52) !important; }
.as-note,
.as-status.gold,
.as-security-list,
.as-pref-group-head,
.as-support-category { background: rgba(69, 105, 134, .07) !important; }
.as-status.gold { color: #bad2e3 !important; }
.as-milestone.done::after { background: rgba(137, 168, 191, .65) !important; }
.as-address-card.default { box-shadow: inset 3px 0 0 #5d83a2 !important; }
.as-support-category:hover,
.as-product-card:hover,
.as-list-row:hover {
  border-color: rgba(137, 168, 191, .55) !important;
}

/* Cart drawer, cart page, and checkout shell. */
.item-price,
.ko-cart-added strong { color: #c8d8e4 !important; }
.continue,
.cart-empty a,
.ko-cart-continue,
.oauth-message { color: #b9d0e1 !important; }
.saved-row button {
  border-color: #5d83a2 !important;
  background: #456986 !important;
  color: #fff !important;
}
.ko-cart-close { color: #e5e9ec !important; }
.ko-cart-rec span {
  border-color: rgba(214, 220, 226, .2) !important;
  background: #11151a !important;
  color: #bfd2e1 !important;
}
.entry-or::before,
.entry-or::after { background: rgba(214, 220, 226, .2) !important; }
.google-button { border-color: rgba(214, 220, 226, .35) !important; }

body:has(> .brandbar),
body:has(> .result) {
  background: radial-gradient(circle at 50% 0, rgba(69, 105, 134, .1), transparent 36%), #050608 !important;
}
.field input:focus,
.field select:focus,
.promo-row input:focus {
  outline-color: var(--ko-v2-blue-bright) !important;
  box-shadow: 0 0 0 2px rgba(69, 105, 134, .15) !important;
}
.summary .item img { border-color: rgba(214, 220, 226, .28) !important; }

/* Minor storefront, story, loyalty, and contact accents. */
.shop-search:focus-within {
  border-color: var(--ko-v2-blue-bright) !important;
  box-shadow: 0 0 0 3px rgba(69, 105, 134, .14) !important;
}
.shop-favorite {
  border-color: rgba(69, 105, 134, .48) !important;
  background: rgba(255, 255, 255, .9) !important;
  color: var(--ko-v2-blue) !important;
}
.shop-favorite[aria-pressed="true"] { background: var(--ko-v2-blue) !important; color: #fff !important; }
.shop-favorite:focus-visible { outline-color: var(--ko-v2-blue-bright) !important; }
.shop-product-visual::before {
  border-color: rgba(93, 131, 162, .13) !important;
  box-shadow: 0 0 0 24px rgba(93, 131, 162, .03), 0 0 0 48px rgba(93, 131, 162, .014) !important;
}
.shop-product-monogram { color: var(--ko-v2-blue) !important; }
.shop-empty {
  border-color: var(--ko-v2-line-light) !important;
  background: #fff !important;
  color: var(--ko-v2-muted) !important;
}
.shop-empty strong { color: var(--ko-v2-blue-deep) !important; }

.story-masthead::after {
  background: linear-gradient(90deg, var(--ko-v2-blue), rgba(69, 105, 134, .16) 66%, transparent) !important;
}
.story-copy strong { color: var(--ko-v2-blue-deep) !important; }
.story-provenance div,
.story-article,
.story-principles,
.story-mission-grid,
.story-mission + .story-mission { border-color: var(--ko-v2-line-light) !important; }
.story-manifesto::before { color: rgba(93, 131, 162, .05) !important; }

.loyalty-card-stats,
.loyalty-card-stat + .loyalty-card-stat,
.loyalty-tier-name { border-color: var(--ko-v2-line-light) !important; }
.loyalty-notice-mark { border-color: rgba(69, 105, 134, .48) !important; }
.loyalty-notice b,
.loyalty-progress-head b { color: var(--ko-v2-blue-deep) !important; }
.loyalty-path { scrollbar-color: var(--ko-v2-silver-deep) transparent !important; }
.loyalty-cta {
  background: linear-gradient(110deg, rgba(69, 105, 134, .08), rgba(255, 255, 255, .72) 53%, rgba(255, 255, 255, .88)) !important;
}

#ko-success-modal > div {
  border-color: #aebbc2 !important;
  background: #fffdf8 !important;
  color: #17232b !important;
}
#ko-success-modal > div > div:first-child { color: #315f7c !important; }
#ko-success-close {
  border-color: #11161b !important;
  background: #11161b !important;
  color: #fffdf8 !important;
}

/* --------------------------------------------------------------------------
   Loyalty page: remove residual warm-metal UI chrome
   -------------------------------------------------------------------------- */

body:has(> .loyalty-main) .loyalty-context b {
  color: var(--ko-v2-blue-deep) !important;
}

body:has(> .loyalty-main) .loyalty-context .status::before {
  background: linear-gradient(180deg, var(--ko-v2-silver-bright), var(--ko-v2-silver-deep));
  filter: drop-shadow(0 1px 2px rgba(5, 8, 10, .18));
}

body:has(> .loyalty-main) .loyalty-title span {
  color: #394550 !important;
  background: linear-gradient(180deg, #7f8b95 4%, #4f5b65 48%, #28323b 100%);
  background-clip: text;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}

body:has(> .loyalty-main) .loyalty-btn:focus-visible {
  border-color: var(--ko-v2-blue) !important;
  background: rgba(69, 105, 134, .08) !important;
  box-shadow: 0 0 0 3px rgba(69, 105, 134, .15);
}

body:has(> .loyalty-main) .loyalty-program-card::after {
  text-shadow: 0 1px 0 rgba(116, 125, 135, .18);
}

body:has(> .loyalty-main) .loyalty-section {
  background:
    radial-gradient(650px 240px at 50% 34%, rgba(93, 131, 162, .055), transparent 72%),
    linear-gradient(180deg, rgba(255, 255, 255, .82), rgba(244, 247, 249, .7));
}

body:has(> .loyalty-main) .loyalty-section::before,
body:has(> .loyalty-main) .loyalty-section::after {
  color: var(--ko-v2-silver-deep);
}

body:has(> .loyalty-main) .loyalty-section-title::before {
  background: linear-gradient(90deg, transparent, rgba(116, 125, 135, .56));
}

body:has(> .loyalty-main) .loyalty-section-title::after {
  background: linear-gradient(90deg, rgba(116, 125, 135, .56), transparent);
}

body:has(> .loyalty-main) .loyalty-tier:not(:last-child)::after {
  background: linear-gradient(180deg, transparent, rgba(116, 125, 135, .28) 22%, rgba(116, 125, 135, .14) 72%, transparent);
}

body:has(> .loyalty-main) .loyalty-scroll-stage::before {
  background: radial-gradient(ellipse, rgba(93, 131, 162, .22), rgba(116, 125, 135, .045) 46%, transparent 72%);
}

body:has(> .loyalty-main) .loyalty-scroll-stage::after {
  border-color: rgba(116, 125, 135, .34);
  background: linear-gradient(180deg, #1b2025, #080a0c);
  box-shadow: 0 9px 16px rgba(0, 0, 0, .52), inset 0 1px 0 rgba(237, 240, 243, .08);
}

/* --------------------------------------------------------------------------
   Cart page and cart drawer: premium silver / obsidian finish
   Presentation only; state, data hooks, and payment-provider mounts unchanged.
   -------------------------------------------------------------------------- */

body:has(> .cart-shell) {
  background:
    radial-gradient(900px 430px at 72% -8%, rgba(93, 131, 162, .13), transparent 68%),
    radial-gradient(700px 360px at 8% 16%, rgba(200, 205, 211, .055), transparent 70%),
    var(--ko-v2-black) !important;
}

.cart-shell {
  width: min(1240px, calc(100% - 48px));
  margin: 58px auto 100px;
}

.cart-shell > h1 {
  margin-bottom: 28px;
  font-family: Georgia, "Times New Roman", serif !important;
  font-size: clamp(38px, 4vw, 52px) !important;
  font-weight: 500 !important;
  letter-spacing: -.035em;
  line-height: 1;
  text-shadow: 0 10px 32px rgba(0, 0, 0, .42);
}

.cart-grid {
  grid-template-columns: minmax(0, 1fr) minmax(340px, 390px);
  gap: 30px;
  align-items: start;
}

.cart-items,
.cart-summary,
.saved-later,
.cart-empty {
  overflow: hidden;
  border: 1px solid rgba(214, 220, 226, .2) !important;
  border-radius: 10px;
  background:
    linear-gradient(145deg, rgba(26, 30, 35, .98), rgba(8, 10, 13, .99) 72%) !important;
  box-shadow:
    0 24px 60px rgba(0, 0, 0, .36),
    inset 0 1px 0 rgba(255, 255, 255, .045) !important;
}

.cart-signin {
  padding: 15px 22px;
  border: 0 !important;
  border-bottom: 1px solid rgba(137, 168, 191, .21) !important;
  background: rgba(69, 105, 134, .105) !important;
  color: #b9c0c7 !important;
  font-size: 12px;
  line-height: 1.55;
}

.cart-signin a,
.cart-legal a,
.continue,
.cart-empty a,
.item-links button,
.ko-cart-continue {
  color: #c8d8e4 !important;
  text-decoration-color: rgba(200, 216, 228, .48);
  text-underline-offset: 4px;
}

.cart-item {
  align-items: start;
  gap: 26px;
  padding: 30px;
  background: transparent !important;
  box-shadow: none !important;
}

.cart-item img,
.saved-row img,
.ko-cart-added img {
  border: 1px solid rgba(214, 220, 226, .22);
  border-radius: 7px;
  background: #101318;
  box-shadow: 0 14px 34px rgba(0, 0, 0, .32);
}

.cart-item h2 {
  margin-top: 2px;
  margin-bottom: 9px;
  font-size: 23px;
  font-weight: 500;
  letter-spacing: -.018em;
  line-height: 1.2;
}

.cart-item p {
  margin-top: 0;
  color: #9fa7af !important;
  letter-spacing: .015em;
  line-height: 1.5;
}

.item-price {
  color: #e1e6ea !important;
  font-size: 19px;
  font-variant-numeric: tabular-nums;
  letter-spacing: .01em;
  white-space: nowrap;
}

.qty {
  overflow: hidden;
  margin-top: 20px;
  border: 1px solid rgba(214, 220, 226, .3) !important;
  border-radius: 6px;
  background: #090b0e;
  box-shadow: inset 0 1px 4px rgba(0, 0, 0, .35);
}

.qty button,
.qty span {
  width: 40px;
  height: 38px;
  background: transparent !important;
  color: #e4e8eb !important;
}

.qty button {
  transition: background-color .18s ease, color .18s ease;
}

.qty button:first-child { border-right: 1px solid rgba(214, 220, 226, .14) !important; }
.qty button:last-child { border-left: 1px solid rgba(214, 220, 226, .14) !important; }
.qty button:hover { background: rgba(93, 131, 162, .2) !important; color: #fff !important; }

.item-links {
  gap: 18px;
  margin-top: 17px;
}

.item-links button {
  padding: 0;
  background: transparent !important;
  font-size: 12px;
}

.cart-detail {
  gap: 18px;
  padding: 19px 30px 20px;
  border: 0 !important;
  border-top: 1px solid rgba(214, 220, 226, .15) !important;
  background: rgba(255, 255, 255, .018) !important;
  box-shadow: none !important;
}

.cart-detail p { margin: 0; line-height: 1.5; }
.cart-detail strong {
  margin-bottom: 4px;
  color: #dfe4e8 !important;
  font-size: 11px;
  letter-spacing: .055em;
  text-transform: uppercase;
}

.cart-status {
  margin: 0;
  padding: 13px 30px;
  border: 0 !important;
  border-top: 1px solid rgba(93, 131, 162, .24) !important;
  font-size: 12px;
}

.cart-status.error {
  background: rgba(143, 57, 57, .15) !important;
  color: #f0b1ae !important;
}

.cart-summary {
  top: 24px;
  padding: 29px 28px 27px;
}

.cart-summary h2 {
  margin-bottom: 18px;
  padding-bottom: 17px;
  border-bottom: 1px solid rgba(214, 220, 226, .17);
  font-size: 27px;
  font-weight: 500;
  letter-spacing: -.02em;
}

.sumline {
  gap: 18px;
  padding: 8px 0;
  color: #aeb5bc !important;
  font-size: 12px;
  line-height: 1.4;
}

.sumline > :last-child {
  color: #dfe4e8;
  font-variant-numeric: tabular-nums;
  white-space: nowrap;
}

.sumline.total {
  margin-top: 13px;
  padding-top: 19px;
  border-top: 1px solid rgba(214, 220, 226, .2) !important;
  color: #f4f6f7 !important;
  font-size: 19px;
}

.cart-legal {
  margin: 18px 0;
  color: #8f98a1 !important;
}

.checkout-btn {
  min-height: 50px;
  border: 1px solid rgba(137, 168, 191, .78) !important;
  border-radius: 6px;
  background: linear-gradient(135deg, #668ba7, #344f66) !important;
  box-shadow: 0 14px 30px rgba(2, 9, 15, .42), inset 0 1px 0 rgba(255, 255, 255, .16) !important;
  font-size: 10px;
  letter-spacing: .16em;
  transition: filter .18s ease, transform .18s ease;
}

.checkout-btn:hover { filter: brightness(1.1); transform: translateY(-1px); }
.checkout-btn:active { transform: translateY(0); }

.cart-secure {
  margin: 12px 8px 0;
  color: #929ba4 !important;
  letter-spacing: .015em;
}

.affirm-wrap {
  min-height: 0;
  margin-top: 15px;
  padding: 11px 12px;
  border: 1px solid rgba(214, 220, 226, .13);
  border-radius: 6px;
  background: rgba(255, 255, 255, .025);
  color: #b8c0c7;
}

.affirm-fallback {
  color: #969fa8 !important;
  line-height: 1.5;
}

.continue {
  margin-top: 18px;
  font-size: 12px;
}

.saved-later {
  margin-top: 30px;
  padding: 0;
}

.saved-later > div:first-child { padding: 24px 28px 0; }
.saved-later > div:first-child p {
  margin-bottom: 6px;
  color: #9eb6c8 !important;
  letter-spacing: .2em;
}
.saved-later h2 {
  margin-bottom: 18px;
  font-size: 27px;
  font-weight: 500;
  letter-spacing: -.02em;
}

.saved-row {
  gap: 20px;
  padding: 19px 28px;
  border-top: 1px solid rgba(214, 220, 226, .15) !important;
}

.saved-row h3 {
  color: #e9edf0;
  font-weight: 500;
  letter-spacing: -.01em;
}

.saved-row p { color: #a7afb7 !important; }
.saved-row button {
  min-height: 42px;
  border: 1px solid rgba(137, 168, 191, .72) !important;
  border-radius: 5px;
  background: linear-gradient(135deg, #5d83a2, #344f66) !important;
  box-shadow: 0 8px 18px rgba(0, 0, 0, .22);
  color: #fff !important;
  font-size: 11px;
  letter-spacing: .055em;
}

.cart-empty {
  padding: 64px 28px;
  color: #dfe4e8;
}

/* Injected cart drawer. */
.ko-cart-backdrop {
  background: rgba(2, 4, 6, .76);
  backdrop-filter: blur(5px);
}

.ko-cart-drawer {
  width: min(500px, 94vw);
  border-left: 1px solid rgba(214, 220, 226, .22) !important;
  background:
    radial-gradient(540px 260px at 70% 0, rgba(93, 131, 162, .15), transparent 72%),
    linear-gradient(160deg, #171b20, #07090b 74%) !important;
  box-shadow: -28px 0 80px rgba(0, 0, 0, .62), inset 1px 0 0 rgba(255, 255, 255, .025) !important;
}

.ko-cart-drawer-head {
  padding: 24px 26px 20px;
  border-bottom: 1px solid rgba(214, 220, 226, .17) !important;
  background: rgba(5, 7, 10, .28);
}

.ko-cart-drawer-brand { gap: 15px; }
.ko-cart-drawer-brand small {
  color: #aebbc5;
  letter-spacing: .2em;
}

.ko-cart-drawer-head h2 {
  color: #eef1f3 !important;
  font-size: 25px;
  font-weight: 500;
  letter-spacing: -.02em;
}

.ko-cart-drawer-logo {
  width: 48px;
  height: 48px;
  border: 1px solid rgba(237, 240, 243, .62);
  border-radius: 8px;
  background: linear-gradient(145deg, #242a30, #090b0e);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .08), 0 10px 22px rgba(0, 0, 0, .28);
  color: #e1e6ea;
  font-size: 15px;
  letter-spacing: .05em;
}

.ko-cart-security {
  color: #c9d0d6;
}
.ko-cart-security span { color: #b9cbd8; }
.ko-cart-security small { color: #929ca5; }

.ko-cart-close {
  flex: 0 0 auto;
  width: 38px;
  height: 38px;
  border: 1px solid rgba(214, 220, 226, .25);
  border-radius: 50%;
  background: rgba(255, 255, 255, .035);
  color: #e5e9ec !important;
  font-size: 24px;
  line-height: 1;
}

.ko-cart-close:hover { background: rgba(93, 131, 162, .18); }

.ko-cart-added {
  grid-template-columns: 102px 1fr;
  gap: 20px;
  padding: 26px;
  border-bottom: 1px solid rgba(214, 220, 226, .15) !important;
}

.ko-cart-added img { width: 102px; height: 120px; }
.ko-cart-added h3 {
  color: #e9edf0;
  font-size: 19px;
  font-weight: 500;
  letter-spacing: -.012em;
}
.ko-cart-added p { color: #9fa8b1; }
.ko-cart-added strong { color: #d9e2e8 !important; font-variant-numeric: tabular-nums; }

.ko-cart-actions {
  gap: 11px;
  padding: 23px 26px;
}

.ko-cart-action {
  min-height: 50px;
  border-radius: 6px;
  background: rgba(255, 255, 255, .035);
}

.ko-cart-action--primary {
  border-color: rgba(137, 168, 191, .76) !important;
  background: linear-gradient(135deg, #668ba7, #344f66) !important;
  box-shadow: 0 12px 28px rgba(2, 9, 15, .4);
}

.ko-cart-continue { min-height: 36px; }

.ko-cart-recs {
  padding: 22px 26px 34px;
  border-top: 1px solid rgba(214, 220, 226, .15) !important;
}

.ko-cart-recs h3 {
  color: #e5e9ec;
  font-weight: 500;
}

.ko-cart-rec-track {
  grid-auto-columns: 142px;
  scrollbar-color: #586875 transparent;
}

.ko-cart-rec span {
  height: 116px;
  border-radius: 6px;
  background: linear-gradient(145deg, #171c21, #0a0d10) !important;
  color: #c4d4df !important;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .035);
}

.ko-cart-rec strong { color: #e3e7ea; font-weight: 600; }
.ko-cart-rec small { color: #929ba4; }

@media (max-width: 850px) {
  .cart-shell { width: min(100% - 32px, 700px); margin-top: 42px; }
  .cart-grid { grid-template-columns: minmax(0, 1fr); gap: 22px; }
  .cart-summary { padding: 27px 26px 25px; }
}

@media (max-width: 580px) {
  .cart-shell {
    width: calc(100% - 24px);
    margin-top: 30px;
    margin-bottom: 64px;
  }

  .cart-shell > h1 { margin-bottom: 20px; font-size: 36px !important; }
  .cart-item { grid-template-columns: 88px minmax(0, 1fr); gap: 15px; padding: 19px 16px 21px; }
  .cart-item img { width: 88px; height: 112px; }
  .cart-item h2 { margin-top: 0; font-size: 19px; }
  .item-price { grid-column: 2; font-size: 17px; }
  .qty { margin-top: 17px; }
  .qty button, .qty span { width: 37px; height: 36px; }
  .item-links { flex-wrap: wrap; gap: 9px 16px; }
  .cart-signin { padding: 14px 16px; }
  .cart-detail { grid-template-columns: 1fr; padding: 18px 16px; }
  .cart-status { padding: 12px 16px; }
  .cart-summary { padding: 24px 18px 22px; }
  .cart-summary h2 { font-size: 25px; }
  .saved-later { margin-top: 22px; }
  .saved-later > div:first-child { padding: 22px 18px 0; }
  .saved-row { grid-template-columns: 70px minmax(0, 1fr); gap: 14px; padding: 17px 18px; }
  .saved-row img { width: 70px; height: 84px; }
  .saved-row h3 { font-size: 17px; line-height: 1.25; }
  .saved-row button { grid-column: 2; width: 100%; }

  .ko-cart-drawer { width: 100%; }
  .ko-cart-drawer-head { padding: 19px 54px 17px 17px; }
  .ko-cart-drawer-brand { gap: 12px; }
  .ko-cart-drawer-logo { width: 42px; height: 42px; }
  .ko-cart-drawer-head h2 { font-size: 21px; }
  .ko-cart-close { top: 13px; right: 11px; width: 36px; height: 36px; }
  .ko-cart-added { grid-template-columns: 80px minmax(0, 1fr); gap: 15px; padding: 20px 17px; }
  .ko-cart-added img { width: 80px; height: 98px; }
  .ko-cart-added h3 { font-size: 17px; }
  .ko-cart-actions, .ko-cart-recs { padding-left: 17px; padding-right: 17px; }
}

/* --------------------------------------------------------------------------
   Commerce shell: signed-out account palette
   Warm ivory surrounds, paper utility surfaces, and graphite transaction cards.
   -------------------------------------------------------------------------- */

body:has(> .cart-shell),
body:has(> .saved-shell),
body:has(> .entry-shell),
body:has(> .shell),
body:has(> .result) {
  color-scheme: light;
  min-height: 100vh;
  --gold: var(--ko-v2-silver-deep);
  --line: rgba(37, 43, 50, .18);
  background:
    radial-gradient(900px 420px at 50% -12%, rgba(255, 255, 255, .94), transparent 72%),
    linear-gradient(180deg, #f8f4ed 0%, #f1ece3 100%) !important;
  color: var(--ko-v2-ink) !important;
}

.cart-shell,
.saved-shell,
.entry-shell,
.shell { color: var(--ko-v2-ink) !important; }

.cart-shell > h1,
.saved-shell > h1,
.entry-panel h1,
.head h1,
.result h1 {
  color: #15181b !important;
  text-shadow: none !important;
}

/* Cart and cart-resident saved items use paper product surfaces. */
.cart-items,
.saved-later,
.cart-empty {
  border-color: rgba(65, 69, 74, .2) !important;
  background: linear-gradient(155deg, #fffefa, #f8f4ed) !important;
  box-shadow: 0 18px 44px rgba(50, 43, 35, .12), inset 0 1px 0 #fff !important;
}

.cart-signin {
  border-bottom-color: rgba(69, 105, 134, .2) !important;
  background: rgba(69, 105, 134, .075) !important;
  color: #4f5962 !important;
}

.cart-item { color: #1b1e22; }
.cart-item h2,
.saved-later h2,
.saved-row h3,
.cart-empty h2 { color: #171a1d !important; }

.cart-item p,
.saved-row p { color: #687079 !important; }

.item-price { color: #252b32 !important; }

.cart-item img,
.saved-row img,
.saved-item img {
  border-color: rgba(37, 43, 50, .24) !important;
  background: #e8e3db !important;
  box-shadow: 0 12px 28px rgba(45, 38, 31, .16) !important;
}

.qty {
  border-color: rgba(37, 43, 50, .28) !important;
  background: #fff !important;
  box-shadow: inset 0 1px 3px rgba(25, 28, 31, .08);
}

.qty button,
.qty span {
  background: transparent !important;
  color: #1b1e22 !important;
}

.qty button:first-child { border-right-color: rgba(37, 43, 50, .14) !important; }
.qty button:last-child { border-left-color: rgba(37, 43, 50, .14) !important; }
.qty button:hover { background: rgba(69, 105, 134, .1) !important; color: #23394a !important; }

.item-links button,
.cart-signin a,
.cart-empty a {
  color: #355a76 !important;
  text-decoration-color: rgba(53, 90, 118, .42);
}

.cart-detail {
  border-top-color: rgba(37, 43, 50, .14) !important;
  background: rgba(90, 83, 73, .035) !important;
}

.cart-detail p { color: #636b73 !important; }
.cart-detail strong { color: #2e353c !important; }

.cart-status {
  border-top-color: rgba(69, 105, 134, .2) !important;
  background: rgba(69, 105, 134, .075) !important;
  color: #355a76 !important;
}

.cart-status.error {
  background: #f8e9e7 !important;
  color: #8f3535 !important;
}

.saved-later > div:first-child p { color: #4f6f88 !important; }
.saved-row { border-top-color: rgba(37, 43, 50, .14) !important; }

.saved-row button,
.saved-actions button:first-child {
  border-color: #456986 !important;
  background: linear-gradient(135deg, #5d83a2, #3d607b) !important;
  color: #fff !important;
}

/* Cart order summary uses the same warm paper system as the cart items. */
.cart-summary {
  color-scheme: light;
  border-color: rgba(37, 43, 50, .22) !important;
  background:
    radial-gradient(420px 190px at 88% 0, rgba(93, 131, 162, .07), transparent 72%),
    linear-gradient(155deg, #fffefa, #f6f1e9 78%) !important;
  box-shadow: 0 22px 52px rgba(50, 43, 35, .14), inset 0 1px 0 #fff !important;
  color: #17191c !important;
}

.cart-summary h2 {
  border-bottom-color: rgba(37, 43, 50, .16) !important;
  color: #17191c !important;
}

.cart-summary .sumline { color: #5e6871 !important; }
.cart-summary .sumline > :last-child { color: #20262c !important; }
.cart-summary .sumline.total {
  border-color: rgba(37, 43, 50, .18) !important;
  color: #15181b !important;
}

.cart-summary .cart-legal,
.cart-summary .cart-secure,
.cart-summary .affirm-fallback { color: #5f6870 !important; }

.cart-summary a { color: #2f5875 !important; }

.cart-summary .affirm-wrap {
  border-color: rgba(37, 43, 50, .16) !important;
  background: rgba(255, 255, 255, .62) !important;
}

/* The full checkout summary stays graphite beside its secure work area. */
.shell .summary {
  color-scheme: dark;
  border-color: rgba(200, 205, 211, .38) !important;
  background:
    radial-gradient(420px 190px at 88% 0, rgba(93, 131, 162, .12), transparent 70%),
    linear-gradient(150deg, #20252a, #0d1013 72%) !important;
  box-shadow: 0 24px 55px rgba(43, 38, 33, .22), inset 0 1px 0 rgba(255, 255, 255, .055) !important;
}

.shell .summary h2 { color: #f2f4f5 !important; }
.shell .summary .sumline { color: #aeb6be !important; }
.shell .summary .sumline > :last-child { color: #edf0f2 !important; }
.shell .summary .sumline.total {
  border-color: rgba(214, 220, 226, .21) !important;
  color: #fff !important;
}
.shell .summary a { color: #315f7c !important; }

.checkout-btn {
  border-color: #6f91aa !important;
  background: linear-gradient(135deg, #6288a5, #395a73) !important;
  color: #fff !important;
  box-shadow: 0 12px 26px rgba(5, 16, 25, .34), inset 0 1px 0 rgba(255, 255, 255, .18) !important;
}

.cart-summary .checkout-btn {
  color: #fff !important;
  text-shadow: 0 1px 1px rgba(0, 0, 0, .28);
}

/* Dedicated Saved Items page mirrors the signed-out account card. */
.saved-shell { width: min(1100px, calc(100% - 48px)); }
.saved-kicker { color: #456986 !important; }
.saved-shell > h1 { font-weight: 600 !important; }
.saved-intro { color: #687079 !important; }

.saved-state,
.saved-item {
  border-color: rgba(37, 43, 50, .17) !important;
  border-radius: 10px;
  background: rgba(255, 255, 255, .88) !important;
  box-shadow: 0 16px 38px rgba(50, 43, 35, .1), inset 0 1px 0 #fff !important;
  color: #4f5962 !important;
}

.saved-state a { color: #355a76 !important; }
.saved-item h2 { color: #171a1d !important; }
.saved-item p { color: #687079 !important; }
.saved-price { color: #252b32 !important; font-variant-numeric: tabular-nums; }

.saved-actions button {
  border-color: rgba(37, 43, 50, .28) !important;
  border-radius: 5px;
  background: #fff !important;
  color: #2f4e66 !important;
}

.saved-actions button:first-child {
  border-color: #456986 !important;
  background: linear-gradient(135deg, #5d83a2, #3d607b) !important;
  color: #fff !important;
}

/* Checkout entry follows the account form's ivory, paper, and blue hierarchy. */
.entry-brand {
  min-height: 96px;
  border-bottom-color: rgba(37, 43, 50, .22) !important;
  background: linear-gradient(180deg, #fffaf1, #f4ecdf) !important;
  box-shadow: 0 7px 24px rgba(43, 37, 31, .14), inset 0 1px 0 #fff;
}

.entry-brand strong {
  color: #17191c !important;
  letter-spacing: .17em;
}

.entry-brand a { color: #355a76 !important; }
.entry-brand .ko-new-logo-text .main {
  color: #17191c !important;
  text-shadow: none !important;
}
.entry-brand .ko-new-logo-text .sub {
  color: #687079 !important;
  text-shadow: none !important;
}
.entry-shell { margin-top: 56px; }

.entry-grid {
  overflow: hidden;
  border-color: rgba(37, 43, 50, .18) !important;
  border-radius: 12px;
  background: rgba(255, 255, 255, .9) !important;
  box-shadow: 0 22px 52px rgba(50, 43, 35, .12), inset 0 1px 0 #fff !important;
}

.entry-panel {
  background: rgba(255, 255, 255, .76) !important;
  color: #17191c !important;
}

.entry-panel + .entry-panel {
  border-color: rgba(37, 43, 50, .15) !important;
  background: rgba(246, 241, 233, .86) !important;
}

.entry-panel h1 { font-weight: 600 !important; }
.entry-copy,
.guest-note { color: #687079 !important; }

.entry-panel label { color: #334e63 !important; }

.entry-panel input {
  border-color: #c3c7cb !important;
  border-radius: 7px;
  background: rgba(255, 255, 255, .92) !important;
  color: #17191c !important;
  box-shadow: inset 0 1px 2px rgba(23, 25, 28, .045);
}

.entry-panel input:focus {
  border-color: #5d83a2 !important;
  outline: 2px solid rgba(93, 131, 162, .22) !important;
}

.entry-or { color: #747d87 !important; }
.entry-or::before,
.entry-or::after { background: rgba(37, 43, 50, .18) !important; }

.entry-button {
  border-color: #456986 !important;
  border-radius: 7px;
  background: linear-gradient(135deg, #5d83a2, #3b5e78) !important;
  color: #fff !important;
  box-shadow: 0 10px 23px rgba(45, 72, 95, .2) !important;
}

.entry-button.dark {
  border-color: #3f464d !important;
  background: linear-gradient(135deg, #343a40, #171a1d) !important;
  color: #fff !important;
}

.google-button {
  border-color: #c2c6ca !important;
  border-radius: 7px;
  background: #fff !important;
  color: #202327 !important;
}

.checkout-security-status { color: #687079 !important; }
.checkout-security-status.is-error,
.oauth-message { color: #8f3535 !important; }
.guest-note a { color: #355a76 !important; }

/* Full checkout: ivory surround, graphite secure work area. */
.brandbar {
  border-bottom-color: rgba(37, 43, 50, .22) !important;
  background: linear-gradient(180deg, #fffaf1, #f4ecdf) !important;
  box-shadow: 0 7px 24px rgba(43, 37, 31, .14), inset 0 1px 0 #fff;
}

body:has(> .brandbar) .ko-new-mark {
  border-color: #565d64 !important;
  background: linear-gradient(145deg, #353a3f, #151719) !important;
  color: #f2f4f5 !important;
  box-shadow: 0 5px 14px rgba(35, 31, 27, .2), inset 0 1px 0 rgba(255, 255, 255, .16) !important;
}

body:has(> .brandbar) .ko-new-mark::before {
  border-color: rgba(237, 240, 243, .24) !important;
  background: #17191c !important;
}

body:has(> .brandbar) .ko-new-logo-text .main {
  color: #17191c !important;
  text-shadow: none !important;
}

body:has(> .brandbar) .ko-new-logo-text .sub {
  color: #687079 !important;
  text-shadow: none !important;
}

.brandbar .return { color: #355a76 !important; }
.shell { max-width: 1220px; }
.head h1 { font-weight: 600 !important; }
.head p { color: #687079 !important; }

.test {
  border-color: rgba(69, 105, 134, .28) !important;
  border-radius: 6px;
  background: rgba(69, 105, 134, .08) !important;
  color: #355a76 !important;
}

.steps { gap: 10px; }
.step-tab {
  border-color: rgba(37, 43, 50, .18) !important;
  background: rgba(255, 255, 255, .78) !important;
  box-shadow: 0 7px 18px rgba(50, 43, 35, .07);
  color: #687079 !important;
}

.step-tab b {
  background: #e3e5e7 !important;
  color: #363c42 !important;
}

.step-tab.active,
.step-tab.complete {
  border-color: #5d83a2 !important;
  background: linear-gradient(135deg, #5d83a2, #3b5e78) !important;
  color: #fff !important;
}

.step-tab.active b,
.step-tab.complete b {
  background: rgba(255, 255, 255, .92) !important;
  color: #2d485f !important;
}

.shell .card {
  color-scheme: dark;
  border-color: rgba(200, 205, 211, .38) !important;
  border-radius: 10px;
  background:
    radial-gradient(600px 220px at 90% 0, rgba(93, 131, 162, .1), transparent 70%),
    linear-gradient(150deg, #20252a, #0d1013 74%) !important;
  box-shadow: 0 24px 55px rgba(43, 38, 33, .2), inset 0 1px 0 rgba(255, 255, 255, .055) !important;
}

.shell .card h2 { color: #f2f4f5 !important; }
.shell .intro { color: #aab3bb !important; }
.field label,
.promo label { color: #c6d0d7 !important; }

.field input,
.field select,
.promo-row input {
  border-color: rgba(214, 220, 226, .28) !important;
  background: #101419 !important;
  color: #f5f6f7 !important;
}

.field input:focus,
.field select:focus,
.promo-row input:focus {
  border-color: #7697af !important;
  outline: 2px solid rgba(93, 131, 162, .24) !important;
  box-shadow: 0 0 0 2px rgba(69, 105, 134, .12) !important;
}

.check { color: #b5bdc4 !important; }
.check input { accent-color: #5d83a2 !important; }

.action {
  border-color: #7697af !important;
  background: linear-gradient(135deg, #6288a5, #395a73) !important;
  color: #fff !important;
  box-shadow: 0 10px 24px rgba(4, 13, 20, .3) !important;
}

.shipping-choice {
  border-color: rgba(118, 151, 175, .58) !important;
  border-radius: 7px;
  background: rgba(69, 105, 134, .13) !important;
  color: #c4ccd2 !important;
}
.shipping-choice strong { color: #e2ebf1 !important; }

.verify-message,
.message {
  border-color: rgba(118, 151, 175, .52) !important;
  border-radius: 6px;
  background: rgba(69, 105, 134, .13) !important;
  color: #315f7c !important;
}

.message.error {
  border-color: rgba(184, 92, 92, .65) !important;
  background: rgba(115, 38, 38, .22) !important;
  color: #f4c4c1 !important;
}

.shell .card .back,
.shell .card .return,
.shell .card .step-back,
.shell .card .consents a { color: #315f7c !important; }

.shell .summary { border-radius: 10px; }
.shell .summary h2,
.shell .summary .item,
.shell .summary .promo,
.shell .summary .rewards,
.shell .summary .totals,
.shell .summary .secure { border-color: rgba(214, 220, 226, .16) !important; }

.shell .summary .item strong { color: #edf0f2 !important; }
.shell .summary .item small,
.shell .summary .promo-note,
.shell .summary .reward-line,
.shell .summary .secure { color: #a9b2ba !important; }
.shell .summary .reward-line strong,
.shell .summary .earn { color: #c4d6e3 !important; }

.promo-row button,
#coupon-info {
  border-color: rgba(214, 220, 226, .28) !important;
  background: #161b20 !important;
  color: #315f7c !important;
}

.promo-row button:hover { background: #456986 !important; color: #fff !important; }

/* Checkout result returns to a bright account-style confirmation card. */
.result {
  border-color: rgba(37, 43, 50, .18) !important;
  border-radius: 12px;
  background: rgba(255, 255, 255, .9) !important;
  box-shadow: 0 24px 60px rgba(50, 43, 35, .15), inset 0 1px 0 #fff !important;
  color: #17191c !important;
}

.result .mark {
  border-color: #4c535a !important;
  background: linear-gradient(145deg, #343a40, #17191c) !important;
  color: #f4f6f7 !important;
  box-shadow: 0 10px 24px rgba(35, 31, 27, .17);
}

.result .eyebrow { color: #456986 !important; }
.result p { color: #687079 !important; }
.result .actions a {
  border-color: #456986 !important;
  border-radius: 6px;
  color: #355a76 !important;
}
.result .actions a.primary {
  background: linear-gradient(135deg, #5d83a2, #3b5e78) !important;
  color: #fff !important;
}

body:has(> .cart-shell) .ko-silver-brand,
body:has(> .cart-shell) .ko-brand-image-frame,
body:has(> .cart-shell) .ko-brand-image,
body:has(> .saved-shell) .ko-silver-brand,
body:has(> .saved-shell) .ko-brand-image-frame,
body:has(> .saved-shell) .ko-brand-image {
  border-color: transparent !important;
  color: #17191c !important;
}

body:has(> .cart-shell) .ko-mobile-header .ko-mobile-brand:link,
body:has(> .cart-shell) .ko-mobile-header .ko-mobile-brand:visited,
body:has(> .saved-shell) .ko-mobile-header .ko-mobile-brand:link,
body:has(> .saved-shell) .ko-mobile-header .ko-mobile-brand:visited {
  color: #17191c !important;
}

@media (max-width: 900px) {
  .cart-grid,
  .shell .grid { grid-template-columns: minmax(0, 1fr); }
  .cart-summary,
  .shell .summary { position: static !important; }
}

@media (max-width: 760px) {
  .cart-shell,
  .saved-shell,
  .entry-shell { width: calc(100% - 24px); }
  .entry-brand { min-height: 78px; padding-inline: 18px; }
  .entry-brand strong { max-width: 190px; line-height: 1.35; }
  .entry-panel { padding: 30px 22px; }
  .entry-panel + .entry-panel { border-top-color: rgba(37, 43, 50, .15) !important; }
  .saved-item { min-width: 0; }
}

@media (max-width: 600px) {
  .cart-shell > h1,
  .saved-shell > h1,
  .head h1 { font-size: 38px !important; }
  .shell { padding-inline: 14px; }
  .shell .card { padding: 22px 16px; }
  .step-tab { box-shadow: none; }
  .saved-state { padding: 28px 20px; }
  .brandbar > div { padding-inline: 14px; }
  .brandbar .ko-new-logo-wrap { gap: 9px !important; }
  .brandbar .ko-new-mark { width: 52px !important; height: 52px !important; font-size: 21px !important; }
  .brandbar .ko-new-logo-text .main { font-size: 13px !important; }
  .brandbar .ko-new-logo-text .sub { font-size: 8px !important; }
  .brandbar .return { flex: 0 0 auto; font-size: 12px; white-space: nowrap; }
}

/* Checkout-only shared identity uses the same tightly cropped v3 brand art. */
.brandbar > div { min-height: 106px; max-width: 1680px; }
.entry-brand { min-height: 106px; }

.brandbar .ko-new-brand-link,
.entry-brand .ko-new-brand-link {
  display: inline-flex;
  min-width: 0;
  align-items: center;
}

.ko-commerce-brand {
  display: flex;
  min-width: 0;
  align-items: center;
  gap: 15px;
}

.ko-commerce-brand .ko-brand-image-frame--mark {
  width: 50px !important;
  height: 35px !important;
}

.ko-commerce-brand .ko-brand-image-frame--wordmark {
  width: 295px !important;
  height: 79px !important;
}

.ko-commerce-brand .ko-brand-image {
  width: 100% !important;
  height: 100% !important;
  object-fit: contain !important;
  filter: none !important;
}

.shell .summary #redeem-points:disabled,
.shell .summary #coupon-info:disabled {
  cursor: not-allowed;
  opacity: .66;
}

.shell .summary #coupon-info {
  display: flex;
  width: 100%;
  min-height: 38px;
  align-items: center;
  justify-content: center;
  margin-top: 12px;
  padding: 7px 10px;
  text-align: center;
}

@media (max-width: 1180px) {
  .ko-commerce-brand { gap: 11px; }
  .ko-commerce-brand .ko-brand-image-frame--mark { width: 44px !important; height: 31px !important; }
  .ko-commerce-brand .ko-brand-image-frame--wordmark { width: 220px !important; height: 59px !important; }
}

@media (max-width: 768px) {
  .brandbar > div,
  .entry-brand { min-height: 78px; }
  .brandbar > div { padding-inline: 14px; }
  .entry-brand { padding-inline: 18px; }
  .ko-commerce-brand { gap: 7px; }
  .ko-commerce-brand .ko-brand-image-frame--mark { width: 41px !important; height: 28px !important; }
  .ko-commerce-brand .ko-brand-image-frame--wordmark { width: 152px !important; height: 41px !important; }
  .brandbar .return,
  .entry-brand > a:last-child { flex: 0 0 auto; font-size: 12px; white-space: nowrap; }
}

@media (max-width: 420px) {
  .entry-brand { padding-inline: 12px; }
  .ko-commerce-brand .ko-brand-image-frame--mark { width: 35px !important; height: 24px !important; }
  .ko-commerce-brand .ko-brand-image-frame--wordmark { width: 132px !important; height: 36px !important; }
  .brandbar .return,
  .entry-brand > a:last-child { font-size: 11px; }
}

/* Locked checkout readability standard for desktop and mobile. */
.shell .card > .back,
.shell .card .step-back,
.shell .card .consents a,
.shell .card .verify-message:not(.error),
.brandbar .return,
.entry-brand > a:last-child,
.entry-panel .guest-note a {
  color: #315f7c !important;
}

.shell .card .verify-message:not(.error) {
  border-color: rgba(49, 95, 124, .34) !important;
  background: #f7fafb !important;
  font-weight: 600 !important;
}

.shell .card .step-back {
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  text-decoration: underline !important;
  text-underline-offset: 4px !important;
}

.shell .card .consents,
.shell .card .consents input[type="checkbox"] {
  color-scheme: light !important;
}

.shell .card .consents input[type="checkbox"] {
  accent-color: #5d83a2 !important;
}

/* Final shared cart drawer: approved ivory, graphite, and blue presentation. */
html body .ko-cart-backdrop{background:rgba(16,24,29,.58)!important;backdrop-filter:blur(3px)!important}
html body .ko-cart-drawer{width:min(340px,88vw)!important;border-left:1px solid #7898ad!important;background:linear-gradient(180deg,#fffdf8 0%,#f2ece3 100%)!important;color:#17232b!important;box-shadow:-20px 0 52px rgba(18,31,39,.24)!important}
html body .ko-cart-drawer-head{padding:27px 28px 21px!important;border-bottom:1px solid #c9d3d9!important;background:linear-gradient(135deg,#f9f5ed,#e2e9ed)!important}
html body .ko-cart-drawer-head h2{color:#17232b!important;font-size:27px!important;letter-spacing:-.015em!important}
html body .ko-cart-close{width:40px!important;height:40px!important;border:1px solid #8ca5b5!important;border-radius:50%!important;background:#fffdf8!important;color:#17232b!important;font-size:25px!important;box-shadow:0 5px 13px rgba(33,55,68,.1)!important}
html body .ko-cart-close:hover,html body .ko-cart-close:focus-visible{border-color:#537d9c!important;background:#e8f0f4!important;color:#25495f!important;outline:2px solid rgba(83,125,156,.22)!important;outline-offset:2px!important}
html body .ko-cart-security{color:#344d5c!important}html body .ko-cart-security span{color:#527f9b!important}html body .ko-cart-security small{color:#647681!important}
html body .ko-cart-drawer-brand{gap:15px!important}html body .ko-cart-drawer-brand>div>small{color:#527f9b!important;font-size:9px!important;letter-spacing:.18em!important}
html body .ko-cart-drawer-logo{width:62px!important;height:46px!important;border:0!important;border-radius:0!important;background:transparent url('brand-ko-silver-tight-v3.png') center/contain no-repeat!important;color:transparent!important;font-size:0!important;box-shadow:none!important}
html body .ko-cart-added{grid-template-columns:96px minmax(0,1fr)!important;gap:18px!important;margin:22px 28px 0!important;padding:20px!important;border:1px solid #cbd4d9!important;border-radius:12px!important;background:#fff!important;box-shadow:0 11px 28px rgba(28,46,56,.07)!important}
html body .ko-cart-added img{width:96px!important;height:112px!important;border:1px solid #c5d0d6!important;border-radius:8px!important;background:#e7edf0!important}html body .ko-cart-added h3{color:#17232b!important}html body .ko-cart-added p{color:#5d6c75!important}html body .ko-cart-added strong{color:#31556e!important}
html body .ko-cart-actions{padding:22px 28px 26px!important}html body .ko-cart-action{border-radius:7px!important}
html body .ko-cart-action--primary{border-color:#517893!important;background:#517893!important;color:#fff!important;box-shadow:0 10px 22px rgba(49,95,124,.19)!important}
html body .ko-cart-action--primary:hover,html body .ko-cart-action--primary:focus-visible{border-color:#436983!important;background:#436983!important;outline:2px solid rgba(83,125,156,.25)!important;outline-offset:3px!important}
html body .ko-cart-continue{min-height:42px!important;color:#315f7c!important;font-weight:800!important;text-underline-offset:5px!important}
html body .ko-cart-recs{border-top:1px solid #cbd4d9!important;background:#edf1f2!important}html body .ko-cart-recs h3{color:#17232b!important}
html body .ko-cart-rec{color:#17232b!important}html body .ko-cart-rec span{border-color:#aebdc6!important;border-radius:8px!important;background:linear-gradient(145deg,#fffdf8,#dce5ea)!important;color:#315f7c!important}html body .ko-cart-rec strong{color:#17232b!important}html body .ko-cart-rec small{color:#62727c!important}
@media(max-width:600px){
  html body .ko-cart-drawer{width:min(360px,92vw)!important;max-width:none!important}
  html body .ko-cart-drawer-head{padding:24px 54px 19px 19px!important}
  html body .ko-cart-drawer-logo{width:53px!important;height:40px!important}
  html body .ko-cart-added{grid-template-columns:78px minmax(0,1fr)!important;margin:18px 19px 0!important;padding:16px!important}
  html body .ko-cart-added img{width:78px!important;height:96px!important}
  html body .ko-cart-close{top:16px!important;right:14px!important}
}

/* Shared support confirmation — current ivory, ink, and slate system. */
.ko-site-modal{position:fixed;inset:0;z-index:10020;display:grid;place-items:center;padding:20px;background:rgba(17,22,27,.64);backdrop-filter:blur(9px)}
.ko-site-dialog{width:min(100%,460px);max-height:calc(100dvh - 40px);overflow:auto;padding:30px;border:1px solid #aebbc2;border-radius:14px;background:#fffdf8;color:#17232b;box-shadow:0 28px 80px rgba(17,22,27,.34);text-align:center}
.ko-site-mark{display:grid;width:52px;height:52px;margin:0 auto 17px;place-items:center;border:1px solid #91a6b3;border-radius:50%;background:#edf2f4;color:#315f7c;font-size:24px;font-weight:900}
.ko-site-kicker{margin:0 0 8px;color:#45545d;font-size:10px;font-weight:900;letter-spacing:.18em;text-transform:uppercase}
.ko-site-dialog h2{margin:0;color:#11161b;font:700 28px/1.15 Georgia,'Times New Roman',serif;letter-spacing:-.015em}
.ko-site-dialog p{margin:13px 0 0;color:#53616a;font-size:14px;line-height:1.65}
.ko-site-actions{display:flex;justify-content:center;margin-top:24px}
.ko-site-button{display:inline-flex;min-width:132px;min-height:44px;align-items:center;justify-content:center;padding:11px 20px;border:1px solid #11161b;border-radius:7px;background:#11161b;color:#fffdf8;font-size:11px;font-weight:900;letter-spacing:.11em;text-transform:uppercase;cursor:pointer}
.ko-site-button:hover{background:#26343d}
.ko-site-button:focus-visible{outline:2px solid #315f7c;outline-offset:3px}
@media(max-width:600px){.ko-site-modal{padding:10px}.ko-site-dialog{max-height:calc(100dvh - 20px);padding:25px 18px;border-radius:11px}.ko-site-dialog h2{font-size:24px}.ko-site-button{width:100%}}

/* Final shared overlay standard. These selectors intentionally win over retired page-era themes. */
html body :is(.as-modal,.ko-collection-modal,.item-modal,.ko-avatar-editor){background:rgba(17,22,27,.64)!important;backdrop-filter:blur(9px)!important}
html body :is(.as-dialog,.ko-collection-dialog,.item-dialog,.ko-avatar-editor-dialog){border-color:#aebbc2!important;background:#fffdf8!important;color:#17232b!important;box-shadow:0 28px 80px rgba(17,22,27,.34)!important}
html body :is(.as-dialog,.ko-collection-dialog,.item-dialog,.ko-avatar-editor-dialog) :is(h1,h2,h3,strong,label){color:#11161b!important}
html body :is(.as-dialog,.ko-collection-dialog,.item-dialog,.ko-avatar-editor-dialog) :is(p,small,.ko-avatar-editor-help,.ko-avatar-editor-status){color:#53616a!important}
html body :is(.as-dialog,.ko-collection-dialog,.item-dialog,.ko-avatar-editor-dialog) :is(input,select,textarea){border-color:#aebbc2!important;background:#fff!important;color:#17232b!important;color-scheme:light!important}
html body :is(.as-dialog,.ko-collection-dialog,.item-dialog,.ko-avatar-editor-dialog) :is(input,select,textarea):focus{border-color:#315f7c!important;outline:0!important;box-shadow:0 0 0 3px rgba(49,95,124,.14)!important}
html body .as-dialog-head{border-bottom-color:#d0d6d9!important}
html body .as-dialog-head .as-kicker{color:#45545d!important}
html body .as-dialog-close{border-color:#aebbc2!important;background:#fffdf8!important;color:#17232b!important}
html body .as-dialog-actions{border-top-color:#d0d6d9!important;background:#f8f5ee!important}
html body .as-modal-copy{color:#53616a!important}
html body .as-toast{border-color:#91a6b3!important;background:#fffdf8!important;color:#17232b!important;box-shadow:0 18px 44px rgba(24,37,46,.28)!important}
html body .as-toast::before{color:#315f7c!important}
html body .item-dialog-message{border-color:#d3aaa6!important;background:#fff3f1!important;color:#6f2d28!important}
html body :is(.ko-collection-dialog,.item-dialog,.ko-avatar-editor-dialog) :is(.ko-collection-btn,.modal-btn,.ko-avatar-editor-btn):not(.danger){border-color:#89969e!important;background:#fffdf8!important;color:#17232b!important;box-shadow:none!important}
html body :is(.ko-collection-dialog,.item-dialog,.ko-avatar-editor-dialog) :is(.ko-collection-btn,.modal-btn,.ko-avatar-editor-btn).primary,
html body :is(.ko-collection-dialog,.item-dialog,.ko-avatar-editor-dialog) :is(.ko-collection-btn,.modal-btn,.ko-avatar-editor-btn):not(.ghost):not(.danger){border-color:#11161b!important;background:#11161b!important;color:#fffdf8!important}
html body :is(.ko-collection-dialog,.item-dialog,.ko-avatar-editor-dialog) :is(.ko-collection-btn,.modal-btn,.ko-avatar-editor-btn).danger{border-color:#a9453f!important;background:#fffdf8!important;color:#8f302a!important}
@media(max-width:600px){html body :is(.as-modal,.ko-collection-modal,.item-modal,.ko-avatar-editor){padding:10px!important}html body :is(.as-dialog,.ko-collection-dialog,.item-dialog,.ko-avatar-editor-dialog){max-height:calc(100dvh - 20px)!important}}
