/* Shared customer layout: navy and teal with a solid slate-gray light background, with neutral departments. */
:root:not([data-theme="dark"]) {
  --page-background:#dce4e9; --page:#dce4e9; --surface:#edf1f4; --surface-soft:#e4ebef;
  --surface-strong:#d2dde5; --page-text:#102d46; --heading:#102d46;
  --muted-text:#4d6171; --muted:#4d6171; --line:#becbd4; --line-strong:#a6b8c5;
  --accent:#007c7a; --accent-dark:#00615f; --accent-soft:#edf6f5;
  --header-background:#edf1f4; --footer-background:#e4ebef;
}
:root { --radius-card:12px; --radius-control:7px; --radius-md:12px; --radius-lg:16px; --section-padding:3rem; --shadow-sm:none; }
[hidden] { display:none!important; }
body { font-size:15px; }
button,input,select,textarea { font:inherit; }
.button { min-height:44px; border-radius:7px; font-size:.875rem; }
.button-primary,.search-submit { background:var(--accent); color:#fff; }
.button-primary:hover,.search-submit:hover { background:var(--accent-dark); }
.layout-header { background:var(--surface); border-bottom:1px solid var(--line); backdrop-filter:none; }
.layout-header .header-inner { width:min(1440px,calc(100% - 64px)); min-height:88px; display:flex; gap:24px; }
.layout-header .brand { flex:none; }
.layout-header .brand-crop { width:156px; height:45px; }
.layout-header .brand-crop img { width:172px; max-width:none; height:86px; transform:translate(-8px,-20px); }
.layout-search { display:flex; gap:8px; align-items:center; padding:4px 5px 4px 12px; border:1px solid var(--line); border-radius:7px; background:var(--surface-soft); flex:1; max-width:420px; min-width:100px; margin:0; }
.layout-search input { width:100%; min-width:0; min-height:34px; border:0; background:transparent; color:var(--page-text); padding:5px 0; font-size:13px; }
.layout-search button { display:grid; place-items:center; border:0; border-radius:5px; min-height:36px; min-width:36px; background:var(--surface); color:var(--accent-dark); cursor:pointer; }
.layout-search svg { width:19px; height:19px; fill:none; stroke:currentColor; stroke-width:1.8; }
.layout-header-autocomplete { flex:1; max-width:420px; min-width:100px; margin:0; }
.layout-header-autocomplete .search-shell { display:flex; align-items:center; min-height:44px; padding:4px; gap:5px; background:var(--surface-soft); }
.layout-header-autocomplete .search-shell input { min-width:0; min-height:34px; padding:5px; font-size:13px; }
.layout-header-autocomplete .search-submit { flex:none; width:auto; min-height:34px; padding:7px 12px; font-size:12px; }
.layout-header-autocomplete .search-icon { flex:none; width:18px; margin-left:6px; padding:0; }
.layout-header .nav-panel { margin-left:auto; flex:none; gap:0; }
.layout-header .site-nav { display:flex; gap:22px; white-space:nowrap; }
.layout-header .site-nav a { min-height:44px; display:flex; align-items:center; font-size:13px; font-weight:650; }
.layout-header .site-nav a[aria-current="page"] { color:var(--accent-dark); text-decoration:underline; text-underline-offset:10px; }
.layout-header .header-actions { display:flex; gap:12px; flex:none; margin:0; }
.layout-header .theme-switch { display:grid; transform:none; margin:0; }
.layout-header .site-account__trigger { width:44px; height:44px; padding:0; border-radius:7px; }
.layout-header .site-account__label,.layout-header .site-account__chevron { display:none; }
.layout-header .site-account__avatar { width:24px; height:24px; background:transparent; }
.layout-header .site-account__avatar svg { width:23px; height:23px; }
.layout-header .site-account__menu { width:264px; max-width:calc(100vw - 32px); max-height:calc(100dvh - 110px); overflow:auto; right:0; left:auto; top:calc(100% + 14px); padding:10px; border-radius:10px; box-shadow:0 12px 38px #102d4622; }
.layout-header .site-account__menu a,.layout-header .site-account__menu button { min-height:40px; font-size:13px; padding:10px 12px; border-radius:6px; }
.layout-header .site-account__menu-heading { overflow-wrap:anywhere; padding:10px 12px 13px; margin:0 0 6px; border-bottom:1px solid var(--line); }
.layout-header .site-account__menu [data-site-account-signout] { margin-top:7px; border-top:1px solid var(--line); }
.layout-header .menu-toggle { display:none; }
.hero { background:var(--surface); padding-top:0; }
.hero-inner { width:min(1280px,calc(100% - 80px)); grid-template-columns:1.2fr 1fr; gap:64px; padding-block:60px 40px; }
.hero h1 { font-size:clamp(34px,4.1vw,54px); max-width:650px; line-height:1.1; letter-spacing:-.05em; }
.hero h1 em { color:var(--accent-dark); }
.homepage-candidate .hero { background:var(--surface); }
.homepage-candidate .hero-inner { grid-template-columns:minmax(0,1.2fr) minmax(0,1fr); align-items:center; gap:60px; padding-block:58px 40px; }
.homepage-candidate .hero-copy { width:100%; max-width:none; margin:0; text-align:left; }
.homepage-candidate .hero-copy h1 { max-width:600px; font-size:clamp(34px,4.1vw,54px); line-height:1.1; letter-spacing:-.05em; }
.homepage-candidate .home-search-column { padding-top:0; }
.homepage-candidate .hero-lede { font-size:17px; margin:22px 0; }
.homepage-candidate .hero-search-stage { margin:0; }
.homepage-candidate .search-shell--hero { border-radius:9px; }
.homepage-candidate .search-shell--hero .search-submit { border-radius:7px; }
.showcase { padding:24px; }.showcase-empty { min-height:0; }.showcase-orbit { height:220px; }.showcase-orbit>span { width:125px; height:125px; font-size:52px; box-shadow:0 0 0 22px var(--surface-soft),0 0 0 23px var(--line); }
.showcase-picture { height:245px; }.showcase-slide { grid-template-rows:245px auto auto auto auto; }
.hero-lede { font-size:17px; line-height:1.65; margin:22px 0; color:var(--muted-text); max-width:540px; }
.home-search-column { display:flex; flex-direction:column; }
.hero-copy { order:0; }.hero-lede { order:1; }.hero-search-stage { order:2; }.search-examples { order:3; }.home-search-note { order:4; font-size:12px; }
.search-shell { border-radius:9px; box-shadow:none; }
.hero .showcase { background:var(--surface-soft); border:1px solid var(--line); box-shadow:none; border-radius:16px; }
.hero .showcase h2 { font-size:25px; }
.home-tool-strip { border-block:1px solid var(--line); background:var(--surface); border-radius:0; box-shadow:none; }
.home-tool-strip>a { background:transparent; }
.section-trust { display:none; }
.section,.home-intelligence { padding-block:40px; }
.section h2,.home-intelligence h2,.category-directory-heading h2 { font-size:clamp(25px,3vw,34px); }
.section-explore,.section-process,.home-intelligence { background:var(--surface); }
.explore-card,.home-tool-card,.category-card,.category-tile,.category-shortcuts a { background:var(--surface)!important; border:1px solid var(--line); box-shadow:none; border-radius:10px; }
.category-card:hover,.category-tile:hover { border-color:var(--accent); }
.category-card__icon,.category-tile__icon { background:var(--surface-soft)!important; color:var(--accent-dark)!important; }
.category-grid { grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; }.category-card { min-height:105px; }
.category-card__media { background:var(--surface-soft); color:var(--accent-dark); }
.final-cta { background:var(--surface-soft); }
.page-main,.category-page-inner,.search-page-inner,.product-page-inner,.comparison-page__inner { width:min(1280px,calc(100% - 80px)); }
.page-main,.category-page-hero,.search-workspace,.comparison-page { padding-top:32px; }
.page-heading { margin-bottom:30px; }
.page-heading h1,.category-page-heading h1,.category-directory-heading h1,.search-page-heading h1,.account-heading h1,.settings-heading h1,.comparison-header h1 { font-size:clamp(30px,3.2vw,44px); line-height:1.18; letter-spacing:-.03em; }
.category-page-hero { background:var(--surface); }
.category-search-shell { display:none; }
.category-search-panel { display:none; }
.category-page-hero { padding-block:30px; }.category-breadcrumb { margin-bottom:26px; }.category-content-section { padding-block:30px; }.category-page-heading h1 { margin-top:0; }.category-page-icon { width:70px; height:70px; }.category-section-heading h2 { font-size:26px; }.category-coming-soon { padding:22px; border-radius:10px; }
.search-workspace { padding-bottom:20px; }
.search-results { padding-top:16px; }
.results-heading { margin-bottom:22px; }
.results-heading h2 { font-size:25px; }
.results-layout { grid-template-columns:212px minmax(0,1fr); gap:28px; }
.product-result-card { border-radius:10px; box-shadow:none; }
.product-entity-card { grid-template-columns:150px minmax(0,1fr) 200px; border-radius:10px; box-shadow:none; }
.product-entity-card__image { width:100%; min-width:0; max-width:100%; min-height:170px; padding:18px; background:var(--surface-soft); }
.product-entity-card__content,.product-entity-card__offer { padding:20px; }
.product-entity-card h3 { font-size:19px; }
.layout-category-products { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; margin-bottom:30px; }
.layout-category-product { display:flex; flex-direction:column; gap:13px; padding:20px; border:1px solid var(--line); border-radius:10px; text-decoration:none; color:var(--page-text); }
.layout-category-product img { width:100%; height:175px; object-fit:contain; background:var(--surface-soft); border-radius:7px; }
.layout-category-product strong { font-size:16px; line-height:1.4; }.layout-category-product span { color:var(--muted-text); font-size:12px; line-height:1.5; }.layout-category-product span:last-child { color:var(--accent-dark); font-weight:650; margin-top:auto; }
.account-page,.watchlist-page,.settings-page { background:var(--surface); }
.account-shell { width:min(1280px,calc(100% - 80px)); display:block; padding:40px 0 70px; }
.account-shell__content { width:100%; min-width:0; }
.account-summary-grid { gap:16px; margin-block:26px 30px; }
.account-summary-card { border-radius:10px; min-height:130px; box-shadow:none; }
.account-panel,.account-disclosure,.account-empty,.account-alert-card,.account-history-card { border-radius:12px; box-shadow:none; }
.account-panel { padding:26px; }
[data-account-view="overview"] { display:grid; grid-template-columns:minmax(0,1.3fr) minmax(0,1fr); gap:24px; }
[data-account-view="overview"]>.account-heading,[data-account-view="overview"]>.account-summary-grid,[data-account-view="overview"]>.account-panel:not(.layout-saved):not(.layout-research) { grid-column:1/-1; }
[data-account-view="overview"]>.account-heading,[data-account-view="overview"]>.account-summary-grid,[data-account-view="overview"]>.account-panel { margin:0; }
.account-panel__heading h2 { font-size:22px; }
.account-panel__heading>a { color:var(--accent-dark); font-size:13px; font-weight:650; }
.layout-saved-row { display:flex; align-items:center; justify-content:space-between; gap:18px; padding:22px 0; border-top:1px solid var(--line); }
.layout-saved-row>div:first-child { min-width:0; }.layout-saved-row a { font-size:14px; font-weight:650; overflow-wrap:anywhere; }
.layout-saved-row p,.layout-saved-row small { display:block; font-size:12px; color:var(--muted-text); margin:7px 0 0; }
.layout-saved-row>div:last-child { flex:none; text-align:right; }.layout-saved-row strong { font-size:19px; }
.account-activity__item { padding-block:16px; }
[data-account-view="plan"],[data-account-view="referrals"] { max-width:900px; }
.account-referrals__actions input { min-width:0; }
.account-shell[data-account-section="settings"] .settings-content { grid-template-columns:minmax(0,1.2fr) minmax(0,1fr); align-items:start; gap:26px; }
.settings-content>.settings-heading { grid-column:1/-1; margin-bottom:10px; }.settings-card { border-radius:12px; box-shadow:none; padding:26px; }
.settings-account-chip { background:var(--surface-soft); }.settings-email-verification { grid-template-columns:30px minmax(0,1fr); }.settings-email-verification button { grid-column:1/-1; }
.account-shell[data-account-section="security"] { max-width:1040px; }
.plan-card { display:flex; flex-direction:column; box-shadow:none; border-radius:12px; }.plan-card>.button { margin-top:auto; }.plan-card__features { flex:1; }.plan-card--featured { border-color:var(--accent); }
.comparison-header { background:var(--surface); border:0; padding:0 0 25px; box-shadow:none; }
.comparison-table thead { position:sticky; top:88px; z-index:2; background:var(--surface); }
.layout-pair { display:none; }
.product-section-nav__label { display:none; }
.product-section-nav__list { gap:28px; }
.product-detail { padding-block:24px 32px; }
.product-description-section,.price-intelligence-section,.product-details-section,.retailer-offers-section,.price-history-section { padding-block:30px; background:var(--surface); }
.product-summary h1 { font-size:clamp(28px,3vw,38px); }
.site-footer { background:var(--surface-soft); border-top:1px solid var(--line); padding-top:36px; }
.footer-inner { padding-bottom:30px; }
.footer-bottom { padding-block:20px; }
@media(max-width:1100px) {
  .layout-header .header-inner { gap:16px; }.layout-header .site-nav { gap:15px; }
  .hero-inner { gap:35px; }
}
@media(max-width:900px) {
  .layout-header .header-inner { width:calc(100% - 32px); flex-wrap:wrap; gap:10px; padding:13px 0; }
  .layout-header .brand { margin-right:auto; }.layout-header .brand-crop { width:156px; }
  .layout-header .menu-toggle { display:grid; order:1; width:44px; height:44px; }
  .layout-header .header-actions { order:2; }.layout-header .theme-switch { display:grid; }
  .layout-search { order:3; flex-basis:100%; max-width:none; }
  .layout-header-autocomplete { order:3; flex-basis:100%; max-width:none; }
  .layout-header .nav-panel { display:none; position:absolute; top:100%; left:0; right:0; width:100%; padding:16px; background:var(--surface); border-bottom:1px solid var(--line); margin:0; box-shadow:0 12px 25px #102d4614; }
  .layout-header .nav-panel[data-open="true"] { display:block; }
  .layout-header .site-nav { flex-direction:column; align-items:stretch; gap:5px; padding:0; }
  .layout-header .site-nav a { padding:8px 14px; }
  .layout-header .site-account__menu { position:absolute; width:264px; top:calc(100% + 12px); max-height:calc(100dvh - 90px); }
  .hero-inner { grid-template-columns:1fr; padding-top:35px; gap:30px; }.hero h1 { max-width:600px; }
  .homepage-candidate .hero-inner { grid-template-columns:1fr; padding-block:35px; gap:28px; }
  .hero .showcase { max-width:none; }
  .results-layout { grid-template-columns:1fr; }
  .category-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .account-shell[data-account-section="settings"] .settings-content { grid-template-columns:1fr; }
  .product-entity-card { grid-template-columns:115px minmax(0,1fr); }.product-entity-card__offer { grid-column:2; }.product-entity-card__image { grid-row:1/3; }
  .comparison-table thead { top:128px; }
}
@media(max-width:650px) {
  .page-main,.category-page-inner,.search-page-inner,.product-page-inner,.comparison-page__inner,.hero-inner,.account-shell { width:calc(100% - 32px); }
  .layout-header .header-inner { column-gap:8px; }
  .layout-header .brand { flex:1 1 0; min-width:0; }
  .layout-header .brand-crop { width:100%; max-width:156px; height:auto; aspect-ratio:156 / 45; }
  .layout-header .brand-crop img { width:110.2564%; height:auto; transform:translate(-4.6512%,-23.2558%); }
  .layout-header .header-actions { flex-wrap:nowrap; gap:8px; }
  .hero h1 { font-size:35px; }.hero-lede { font-size:15px; }
  .homepage-candidate .hero-copy h1 { font-size:35px; max-width:100%; }.homepage-candidate .hero-lede { font-size:15px; }
  .homepage-candidate .search-shell--hero { border-radius:9px; }.showcase { padding:20px; width:100%; }.showcase-orbit { height:175px; }
  .home-tool-strip { display:grid; grid-template-columns:1fr; }
  .home-tool-strip>a { border-right:0; border-bottom:1px solid var(--line); }
  .section,.home-intelligence { padding-block:28px; }
  .account-shell { padding-top:26px; }
  .comparison-tray__products { display:none; }.comparison-tray__inner { min-height:76px; width:calc(100% - 28px); align-items:center; }.comparison-tray__summary strong { font-size:12px; }.comparison-tray__count { font-size:10px; }.comparison-tray__actions .button { font-size:11px; padding:8px; }
  body.has-comparison-tray { padding-bottom:95px; }body.has-comparison-tray .toast { bottom:105px; }
  .category-grid { grid-template-columns:1fr; }.settings-heading { flex-direction:column; align-items:flex-start; }.settings-card { padding:20px; }
  .layout-category-products { grid-template-columns:1fr; }.product-entity-card { grid-template-columns:76px minmax(0,1fr); }.product-entity-card__image { min-height:100px; padding:10px; grid-row:1; }.product-entity-card__content { padding:16px; }.product-entity-card__offer { grid-column:1/-1; padding:16px; border-left:0; border-top:1px solid var(--line); }.product-entity-card h3 { font-size:17px; }
  [data-account-view="overview"] { grid-template-columns:1fr; gap:20px; }
  .account-heading { flex-direction:column; gap:18px; }.account-heading h1 { font-size:30px; }
  .account-summary-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
  .account-summary-card { padding:16px; min-height:130px; }.account-summary-card span { font-size:12px; }.account-summary-card small { font-size:11px; }
  .account-panel { padding:20px; }.account-panel__heading { flex-wrap:wrap; gap:12px; }
  .layout-saved-row { gap:12px; }.layout-saved-row strong { font-size:16px; }
  .watchlist-card { position:relative; display:block; }
  .watchlist-card__media { display:grid!important; position:absolute; top:18px; left:18px; width:64px; height:64px; min-height:0; padding:8px; min-width:0; border:0; border-radius:7px; }.watchlist-card__media img { max-height:55px; }
  .watchlist-card__body { padding:18px; grid-template-columns:1fr; }.watchlist-card__header { min-height:64px; padding-left:80px; }.watchlist-card__facts { grid-column:1/-1; grid-row:auto; }
  .watchlist-card__facts .watchlist-card__current { font-size:20px!important; }
  .layout-pair { display:grid; grid-template-columns:1fr 1fr; gap:12px; margin:18px 0; }
  .layout-pair label { min-width:0; font-size:12px; font-weight:650; }.layout-pair select { width:100%; margin-top:8px; min-height:44px; color:var(--page-text); border:1px solid var(--line); background:var(--surface); border-radius:7px; padding:8px; }
  .comparison-table { min-width:0!important; width:100%; table-layout:fixed; }
  .comparison-scroll { max-height:none; overflow:visible; }
  .comparison-table thead { position:static; }
  .comparison-table tr { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); }
  .comparison-table tr>th:first-child { grid-column:1/-1; width:auto!important; min-width:0!important; }
  .comparison-table thead tr>th:first-child { display:none; }
  .comparison-table th,.comparison-table td { width:auto!important; min-width:0!important; padding:14px 10px; overflow-wrap:anywhere; }
  .comparison-product__image { height:105px; }.comparison-product h3 { font-size:14px; }.comparison-product__actions { flex-direction:column; }.comparison-product__price { font-size:20px; }
  .comparison-product .button { width:100%; font-size:12px; padding:10px 7px; }
  .comparison-product__actions { display:flex; }.comparison-product { padding:0; min-height:330px; }
  .product-section-nav__list { gap:17px; }.product-section-nav a { font-size:12px; }
}

/* Continuous solid canvas in light mode; cards retain a lighter surface. */
:root:not([data-theme="dark"]) :is(body, .hero, .homepage-candidate .hero, .section-products, .section-explore, .section-process, .home-intelligence, .home-tool-strip, .final-cta, .category-page-hero, .search-workspace, .account-page, .watchlist-page, .settings-page, .comparison-header, .product-description-section, .price-intelligence-section, .product-details-section, .retailer-offers-section, .price-history-section) { background:var(--page-background); }
:root:not([data-theme="dark"]) .faq-page { --accent-dark:#00615f; }
:root:not([data-theme="dark"]) .homepage-candidate { --home-ink-accent:var(--accent-dark); }
