/* CAFANS homepage palette. Loaded after the topic's existing styles. */
:root {
  color-scheme: dark;
  --cft-bg: #11101b;
  --cft-glow: #29203e;
  --cft-panel: #1c1929;
  --cft-line: #423852;
  --cft-ink: #faf7ff;
  --cft-muted: #c9c0d8;
  --cft-accent: #dfff4e;
  --cft-hover: #eeff98;
  --cft-action-ink: #17111c;
  --cft-footer: #141120;
  --cft-input: #faf8ff;
  --cft-input-ink: #201728;
  --cft-paper: #faf8fc;
  --cft-paper-ink: #211829;
  --cft-paper-muted: #574a62;
  --cft-paper-line: #e5e0eb;
  --cft-photo: #eae5ee;
  --cft-price: #415b35;
  background: var(--cft-bg);
}
html.cf-topic-home-colors body {
  background: radial-gradient(ellipse at 85% 5%, var(--cft-glow) 0%, transparent 34%) no-repeat,
              var(--cft-bg) !important;
  color: var(--cft-ink) !important;
}
html.cf-topic-home-colors :is(header.site-header, header.top, header.masthead, .site-footer, footer.footer, body > footer) {
  background: var(--cft-footer) !important;
  border-color: var(--cft-line) !important;
  color: var(--cft-ink) !important;
}
html.cf-topic-home-colors :is(header, footer) :is(.brand, .logo, a:not(.skip)) {
  color: var(--cft-ink) !important;
}
html.cf-topic-home-colors :is(header, footer) :is(.brand-dot, .logo-mark, .logo > span, .brand > span) {
  background: var(--cft-accent) !important;
  color: var(--cft-action-ink) !important;
}
html.cf-topic-home-colors header :is(.top-end, nav a):hover,
html.cf-topic-home-colors footer a:hover {
  color: var(--cft-accent) !important;
}
html.cf-topic-home-colors :is(header.site-header, header.top, header.masthead) {
  background: linear-gradient(110deg, #19182e, #10101a 57%, #20152f) !important;
  border-color: #9571eb !important;
}
html.cf-topic-home-colors :is(main.wrap, main > .wrap, .catalog-section, .method, .faq, .shipping, .order-section) {
  color: var(--cft-ink);
}
html.cf-topic-home-colors :is(.hero, .panel, .entry, .shipping, .method, .faq, .status-box, .calculator, .editorial, .catalog-note, .no-results, .order-section, .more-cats, .catalog-status, .cf-hoobuy-request, .quote-notes, .filters, .calculator fieldset) {
  background: var(--cft-panel) !important;
  border-color: var(--cft-line) !important;
  color: var(--cft-ink) !important;
}
html.cf-topic-home-colors .hero {
  background: radial-gradient(ellipse at 85% 5%, var(--cft-glow) 0%, transparent 76%), var(--cft-panel) !important;
}
html.cf-topic-home-colors :is(.hero-img, .hero-media, .hero-media-note) {
  background: #251c35 !important;
  border-color: #55436b !important;
  color: var(--cft-muted) !important;
}
html.cf-topic-home-colors :is(h1,h2,h3,summary,.section-heading strong) {
  color: var(--cft-ink) !important;
}
html.cf-topic-home-colors :is(.crumb, .crumbs, .count, .muted, .section-note, .comparison, .calculator-foot, .hero-note, .hero-copy p, .catalog-status p, footer p, label > span) {
  color: var(--cft-muted) !important;
}
html.cf-topic-home-colors :is(.crumb a,.crumbs a,.jump a,.panel a,.entry a,.text-link,.more-cats a,.method a,.faq a,.shipping a,.order-section a,.editorial a,.catalog-note a) {
  color: var(--cft-accent) !important;
}
html.cf-topic-home-colors .entry :is(li,p) {
  color: var(--cft-muted);
}
html.cf-topic-home-colors .entry:hover,
html.cf-topic-home-colors :is(.product,.card,.chips a):hover {
  border-color: var(--cft-accent) !important;
}
html.cf-topic-home-colors :is(.faqs details, .faq details) {
  background: var(--cft-panel) !important;
  border-color: var(--cft-line) !important;
  color: var(--cft-ink) !important;
}
html.cf-topic-home-colors :is(.faq details p, .faqs details p, .shipping-copy p, .method p) {
  color: var(--cft-muted) !important;
}
html.cf-topic-home-colors :is(.product, .card) {
  color-scheme: light;
  background: var(--cft-paper) !important;
  border-color: var(--cft-paper-line) !important;
  color: var(--cft-paper-ink) !important;
}
html.cf-topic-home-colors :is(.product,.card) :is(h3,h3 a,.product-link,.product-copy,.body,.source,.add,.product-budget) {
  color: var(--cft-paper-ink) !important;
}
html.cf-topic-home-colors :is(.product,.card) :is(.product-category,.category,.tag,.price,.status,.product-cost) {
  color: var(--cft-paper-muted) !important;
}
html.cf-topic-home-colors :is(.product,.card) :is(.price strong,.product-cost strong,.view,.product-action) {
  color: var(--cft-price) !important;
}
html.cf-topic-home-colors :is(.shot,.product-image,.product-link > img) {
  background: var(--cft-photo) !important;
  border-color: var(--cft-paper-line) !important;
}
html.cf-topic-home-colors :is(.product,.card) :is(.source,.add,.product-budget) {
  background: var(--cft-paper) !important;
  border-color: #b8aac9 !important;
}
html.cf-topic-home-colors :is(.product,.card) :is(.source,.add,.product-budget):hover {
  background: #eee8f6 !important;
}
html.cf-topic-home-colors :is(input:not([type="checkbox"]):not([type="radio"]),select) {
  color-scheme: light;
  background: var(--cft-input) !important;
  color: var(--cft-input-ink) !important;
  border-color: #b8aac9 !important;
}
html.cf-topic-home-colors input::placeholder {
  color: #655a72 !important;
  opacity: 1;
}
html.cf-topic-home-colors :is(input[type="checkbox"],input[type="radio"]) { accent-color: var(--cft-accent); }
html.cf-topic-home-colors :is(.chips a,.button.secondary,.button.outline,.category-filter button,.sort-options button,.filter-button,.filter-btn,.filter button,.filters button,.controls button) {
  background: var(--cft-panel) !important;
  border-color: #756982 !important;
  color: var(--cft-ink) !important;
}
html.cf-topic-home-colors :is(.action,.button:not(.outline):not(.secondary),.filter button[aria-pressed="true"],.filters button[aria-pressed="true"],.controls button[aria-pressed="true"],.filters button.active,.filter button.active,.controls button.active, .category-filter button.active, .filter-button.active, .filter-btn.active, .filter-button[aria-pressed="true"], .filter-btn[aria-pressed="true"], .card .source[aria-pressed="true"]) {
  background: var(--cft-accent) !important;
  color: var(--cft-action-ink) !important;
  border-color: var(--cft-accent) !important;
}
html.cf-topic-home-colors :is(.action,.button:not(.outline):not(.secondary)):hover {
  background: var(--cft-hover) !important;
}
html.cf-topic-home-colors :is(.chips a,.button.outline,.button.secondary,.filters button,.controls button):hover {
  border-color: var(--cft-accent) !important;
}
html.cf-topic-home-colors :is(.calc-total,.calculator output,.catalog-status strong) {
  color: var(--cft-accent) !important;
}
html.cf-topic-home-colors :is(a,button,input,select,summary):focus-visible {
  outline: 2px solid var(--cft-accent) !important;
  outline-offset: 3px;
}
html.cf-topic-home-colors :is(.product,.card) :is(a,button,input):focus-visible {
  outline-color: #604780 !important;
}

html.cf-topic-home-colors :is(input,select)[aria-invalid="true"] {
  border-color: #d84178 !important;
  outline-color: #d84178 !important;
}
html.cf-topic-home-colors :is(.product-links a,.skip) {
  background: var(--cft-accent) !important;
  color: var(--cft-action-ink) !important;
  border-color: var(--cft-accent) !important;
}
html.cf-topic-home-colors :is(.product-links a,.skip):hover {
  background: var(--cft-hover) !important;
}
html.cf-topic-home-colors :is(.hero h1 span,.hero-media-note strong,.calculator #difference,.comparison,.related a) {
  color: var(--cft-accent) !important;
}
