/* Generated by scripts/generate-brand.mjs */
:root {
  --background: #FFFFFF;
  --foreground: #003F46;
  --primary: #003F46;
  --primary-foreground: #FFFFFF;
  --muted: #F2FAF8;
  --border: #D5E6E5;
  --subtle: #4B6B6F;
  --ring: #008C82;
  --accent: #FFEF00;
  --surface: #FFFFFF;
  --font-family: "Segoe UI", Arial, sans-serif;
  --font-family-heading: "Trebuchet MS", "Segoe UI", sans-serif;
  --radius-card: 18px;
  --radius-control: 12px;
  --radius-dialog: 24px;
  --tone-e8ecdf: #DDF7F1;
  --tone-b9c6aa: #496F70;
  --tone-66805a: #496F70;
  --tone-263d3010: #263d3010;
  --tone-f7f6ed: #FFF8E6;
  --tone-84a569: #496F70;
  --tone-76886b: #496F70;
  --tone-8b2929: #7D3027;
  --tone-fff0eb: #FFF8E6;
  --brand-hover: #DDF7F1;
  --tone-edf3e9: #DDF7F1;
  --tone-f0ebe2: #FFF8E6;
  --tone-8e795c: #496F70;
  --tone-e9eee6: #DDF7F1;
  --tone-71836b: #496F70;
  --tone-e8edf0: #DDF7F1;
  --tone-75828c: #496F70;
  --tone-f1e8e5: #FFE7E2;
  --tone-9a7b72: #496F70;
  --tone-eeeae2: #FFF8E6;
  --tone-8b8269: #496F70;
  --tone-e9e9ef: #FFE7E2;
  --tone-858197: #496F70;
  --tone-bdd1bd: #496F70;
  --tone-f2f7ef: #DDF7F1;
  --tone-785319: #7D3027;
  --tone-fff0ce: #FFF8E6;
  --brand-selection: #DDF7F1;
  --auth-background: #FFF8E6;
  --brand-soft: #FFF8E6;
  --tone-e8eee4: #DDF7F1;
  --font-family-display: "Trebuchet MS", "Segoe UI", sans-serif;
  --backdrop: rgb(0 63 70 / .4);
  --install-backdrop: rgb(0 63 70 / .45);
  --shadow-card: 0 8px 32px rgb(0 63 70 / .06);
  --shadow-dropdown: 0 10px 25px rgb(0 63 70 / .12);
}
body { font-family: var(--font-family); }
h1,h2,h3,h4,h5,h6 { font-family: var(--font-family-heading); }
/* reHOP — petrol, bright yellow and rounded details, isolated to this identity. */
.header .publish-link { background: var(--accent); color: var(--foreground); border-radius: 999px; font-weight: 750; }
.header .publish-link:hover { background: #F4E500; }
.brand { width: 146px; }
.brand img { width: 140px; height: 72px; object-fit: contain; }
.pwa-brand img { width: 105px; height: 52px; object-fit: contain; }
.account-avatar { background: var(--brand-selection); }
.pwa-plus { background: var(--accent); color: var(--foreground); }
.footer-brand { font-style: italic; font-weight: 850; letter-spacing: -.05em; }
.panel.login-card { border-top: 4px solid var(--accent); }

.install-app-icon { background: var(--primary); border-color: var(--primary); }
@media (max-width: 650px) {
  .brand { width: 112px; }
  .brand img { width: 108px; height: 58px; }
}

/* Catalogue and installed PWA proposal. This stylesheet is served only for reHOP. */
.colorful-marketplace { background: #FFFCF5; }
.colorful-marketplace .search-banner { position: relative; background: var(--primary); border-radius: 24px; padding: 22px 26px; margin-bottom: 20px; }
.market-slogan { color: white; font-family: var(--font-family-heading); font-size: clamp(1.1rem, 2.1vw, 1.65rem); font-style: italic; font-weight: 800; letter-spacing: -.025em; line-height: 1.25; margin: 0 0 18px; }
.market-slogan strong { display: block; color: var(--accent); font-weight: inherit; }
.colorful-marketplace .market-search { display: grid; grid-template-columns: minmax(0, 2fr) minmax(0, 1fr) auto; gap: 10px; background: none; padding: 0; margin: 0; border: 0; border-radius: 0; }
.colorful-marketplace .market-search label { background: white; border-radius: 12px; min-width: 0; }
.colorful-marketplace .market-search input { min-width: 0; width: 100%; color: var(--foreground); border-radius: 12px; }
.market-search .search-submit, .market-search .search-filter-trigger { display: inline-flex; align-items: center; justify-content: center; gap: 8px; border-radius: 12px; padding: 10px 18px; min-height: 48px; font: inherit; font-weight: 700; }
.market-search .search-submit { background: var(--accent); color: var(--foreground); border: 1px solid var(--accent); }
.market-search .search-submit:hover { background: #F4E500; }
.market-search .search-submit svg, .market-search .search-filter-trigger svg { position: static; color: inherit; flex-shrink: 0; }
.market-search .search-filter-trigger { display: none; color: white; border: 1px solid #DDF7F1; background: transparent; }
.colorful-marketplace .category-nav { gap: 8px; border: 0; padding: 0 0 8px; margin-bottom: 16px; scrollbar-width: thin; }
.colorful-marketplace .category-nav button { background: var(--brand-selection); color: var(--foreground); border-radius: 16px; padding: 14px 10px; flex: 1 0 auto; font-weight: 650; }
.colorful-marketplace .category-nav button.selected { background: var(--accent); }
.colorful-marketplace .category-nav button:hover:not(.selected) { background: #C6EDE5; }
.colorful-marketplace .results-heading { flex-direction: row; align-items: baseline; }
.colorful-marketplace .offer-grid { gap: 20px; }
.colorful-marketplace .offer-card { background: white; border: 1px solid var(--border); border-radius: 16px; box-shadow: 0 2px 3px rgb(0 63 70 / .03); }
.colorful-marketplace .offer-card:hover { box-shadow: 0 5px 18px rgb(0 63 70 / .08); }
.colorful-marketplace .offer-visual { aspect-ratio: 1.85; border-radius: 15px 15px 0 0; }
.colorful-marketplace .offer-body { padding: 12px; }
.colorful-marketplace .offer-body h3 { font-size: .95rem; }
.colorful-marketplace .market-results { scroll-margin-top: calc(var(--pwa-top, 56px) + 16px); }
.pwa-main:has(.colorful-marketplace) { background: #FFFCF5; }
.pwa-navigation-with-activity { grid-template-columns: repeat(5, minmax(0,1fr)); }
.pwa-navigation-with-activity > a.active { background: var(--brand-selection); }
.pwa-navigation-with-activity .pwa-plus { width: 42px; height: 42px; border-radius: 50%; }
.pwa-notifications { margin-left: auto; display: grid; place-items: center; color: var(--primary); width: 42px; height: 42px; }
.account-anchor { scroll-margin-top: calc(var(--pwa-top, 56px) + 16px); }
@media(max-width: 650px) {
  .colorful-marketplace .search-banner { padding: 16px; border-radius: 20px; margin-bottom: 14px; }
  .market-slogan { font-size: 1.05rem; line-height: 1.3; margin-bottom: 14px; }
  .colorful-marketplace .market-search { grid-template-columns: minmax(0,1fr) auto 44px; gap: 8px; }
  .colorful-marketplace .keyword-field { grid-column: 1 / -1; }
  .colorful-marketplace .city-field { border: 0; }
  .colorful-marketplace .market-search input { font-size: .85rem; height: 44px; padding-left: 36px; }
  .colorful-marketplace .market-search label > svg { left: 11px; width: 17px; }
  .market-search .search-submit, .market-search .search-filter-trigger { min-height: 44px; padding: 8px 10px; font-size: .8rem; }
  .market-search .search-filter-trigger { display: inline-flex; }
  .market-search .search-submit { border-radius: 50%; padding: 0; }
  .market-search .search-submit span { display: none; }
  .colorful-marketplace .category-nav button { min-width: 80px; font-size: .7rem; gap: 8px; padding: 12px 8px; flex: 0 0 auto; }
  .colorful-marketplace .market-filters:not(.filters-open) { display: none; }
  .colorful-marketplace .market-filters.filters-open { display: flex; background: white; border: 1px solid var(--border); border-radius: 14px; padding: 12px; }
  .colorful-marketplace .offer-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
  .colorful-marketplace .offer-body { padding: 9px; }
  .colorful-marketplace .offer-body h3 { font-size: .83rem; line-height: 1.25; }
  .colorful-marketplace .listing-price { font-size: .95rem; }
  .colorful-marketplace .condition, .colorful-marketplace .card-bottom { display: none; }
  .colorful-marketplace .offer-body .location { margin-bottom: 0; font-size: .72rem; }
  .colorful-marketplace .listing-price { margin-bottom: 5px; }
  .colorful-marketplace .results-heading { gap: 8px; flex-wrap: wrap; margin-bottom: 14px; }
  .colorful-marketplace .results-heading h1 { font-size: 1.25rem; }
  .colorful-marketplace .offer-visual { aspect-ratio: 1.5; }
  .colorful-marketplace .offer-visual > svg { width: 38px; height: 38px; }
  .colorful-marketplace .visual-caption { font-size: .6rem; bottom: 7px; }
}
