/* CONTROL — approved Keep 2: charcoal, pale architecture, satin gold. */
:root {
  --paper: #1e2022;
  --white: #292b2e;
  --ink: #eeeeef;
  --muted: #b6b7bb;
  --line: #4c4e52;
  --gold: #c6a45a;
  --gold-light: #e0c789;
  --purple: var(--gold-light);
  --soft-purple: #333331;
}
body { background: var(--paper); color: var(--ink); }
::selection { background: #776338; color: #fff; }
button:focus-visible, a:focus-visible, summary:focus-visible,
select:focus-visible, input:focus-visible, .brand:focus-visible,
.product-page a:focus-visible { outline-color: var(--gold-light); }
.site-header { background: var(--paper); border-color: #45474b; }
.site-header nav a.active:after { background: var(--gold); height: 3px; }
.site-header nav, .store-label { color: #b6b7bb; }
.catalog-sidebar h2 { color: #b4b6ba; }
.catalog-sidebar .category { color: #d0d1d3; }
.catalog-sidebar .category.selected {
  background: #303339;
  color: #f2f2f3;
  box-shadow: inset 3px 0 var(--gold);
}
.catalog-sidebar .category:hover:not(.selected) { background: #292c30; color: #fff; }
.search-field { background: #252729; border-color: #626469; }
.search-field input, .search-field svg { color: #e1e2e4; stroke: #bfc1c5; }
.search-field input::placeholder { color: #b8b9bd; }
.search-field kbd { background: #323438; border-color: #696b70; color: #c5c7cc; }
.search-field:focus-within { border-color: var(--gold); }
.results-toolbar, .results-toolbar>p, .sample-note { color: #b1b3b8; }
.results-toolbar strong, .sort-label select { color: #e4e5e7; }
.sort-label select option { background: #292b2e; }
.mobile-category { color: #b8babf; }
.mobile-category select { background: #303339; border-color: #606269; color: #e4e5e7; }
.product-card { background: var(--white); border-color: #606267; }
.product-card:hover { border-color: #99918a; }
.card-title { color: #f1f1f2; }
.card-category, .card-title .name-en { color: #b8bac0; }
.card-description { color: #d0d1d4; }
.download-count, .download-count svg, .download-count strong { color: #c3c5ca; }
.card-bottom { border-color: #57595e; }
.card-price { color: #c5c6ca; }
.card-detail { color: #ececed; }
.card-detail>span { color: var(--gold); }
.card-detail:hover { color: var(--gold-light); }

/* Only the decorative backdrops are raster; the app previews remain live markup. */
.product-art {
  --tone: var(--gold);
  --art-x: 0%;
  --art-y: 0%;
  isolation: isolate;
  background: #cacbcc;
  border-bottom-color: #64666a;
}
.product-art::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  pointer-events: none;
  background-image: url('/assets/gold-architecture-20261105.png');
  background-size: 300% 200%;
  background-position: var(--art-x) var(--art-y);
  background-repeat: no-repeat;
}
.art-sheet { --art-x: 50%; }
.art-files { --art-x: 100%; }
.art-image { --art-y: 100%; }
.art-focus { --art-x: 50%; --art-y: 100%; }
.art-game { --art-x: 100%; --art-y: 100%; }
.card-preview { background: #252729; color: #f4f4f3; border-color: #737578; }
.software-preview {
  position: relative;
  background: #202224;
  border-color: #898b8f;
  box-shadow: 0 7px 13px #0000003b;
}
.preview-bar { background: #3a3d42; border-color: #55585e; color: #e0e1e3; }
.preview-bar>span:last-child { color: #c4c6cb; }
.preview-content { color: #c8c9cd; }
.preview-label, .preview-path, .preview-tabs { color: #b4b6bd; }
.preview-input { color: #bfc1c6; border-color: #60636a; }
.preview-input b, .preview-play { background: #404349; color: #e0e1e4; }
.preview-file strong { color: #ececee; }
.preview-file small, .preview-ready, .preview-file-row span { color: #b0b3bb; }
.preview-track { background: #626469; }
.preview-track i, .game-paddle { background: var(--gold); }
.preview-table { background: #64666b; border-color: #64666b; }
.preview-table span { background: #292c30; color: #d5d6d9; }
.preview-table span:nth-child(-n+4) { background: #424645; color: #e0e1e3; }
.preview-table span:nth-child(4n+3) { background: #625741; color: #f0e8d5; }
.preview-file-row { color: #d8d9dc; border-color: #42454b; }
.preview-settings, .preview-settings span { color: #b8bbc3; }
.preview-settings strong { color: #eeeeef; }
.preview-settings b { background: #43464d; color: #e2e3e7; }
.preview-timer>strong, .pixel-board { color: var(--gold-light); }
.preview-timer>span, .preview-timer>div { color: #c1c3c9; }
.preview-timer b { background: #4d4535; border-color: #9b8353; color: #f0e1bb; }
.game-score { color: #c5c7cc; }
.game-ball { background: #efe1bc; }

.catalog-footnote, .guide-intro p, .faq-list details p { color: #b5b7bd; }
.guide-section, .faq-list, .faq-list details { border-color: #45474c; }
.faq-list summary { color: #dedfe2; }
.empty-state, .noscript-catalog { background: #282b2f; border-color: #53565d; }
.site-footer { background: #1b1d1f; border-color: #45474b; }
.footer-main>div>p, .footer-info p, .footer-bottom { color: #abadb4; }
.footer-info strong { color: #dedfe2; }
.footer-bottom { border-color: #404247; }
.footer-bottom>a { color: #bcbec4; }
dialog, .dialog-top { background: #292b2e; border-color: #62656b; }
.dialog-notice, .dialog-features span { background: #333539; border-color: #575a60; color: #d1d3d8; }
.dialog-body>p, .dialog-body .dialog-footnote { color: #c0c2c9!important; }
.product-page-link { background: var(--gold); border-color: var(--gold); color: #202124; }
.product-page-link:hover { background: var(--gold-light); color: #17191b; }

/* Carry the same palette through the customer product pages. */
.purchase-header, .purchase-footer, .purchase-price, .purchase-guide dl>div { border-color: #4b4e54; }
.purchase-cover { background: #cacbcc; border-color: #65686e; }
.product-kicker { color: var(--gold-light); }
.product-kicker span { border-color: #60636a; color: #c0c3c9; }
.breadcrumb, .purchase-header>a:last-child, .product-english,
.purchase-note, .purchase-count, .purchase-price span { color: #b4b7bf; }
.breadcrumb>a, .purchase-summary, .purchase-count strong,
.purchase-meta dd, .purchase-guide dt, .purchase-business strong { color: #d4d6db; }
.purchase-meta dt, .purchase-guide dd { color: #b8bbc3; }
.buy-button:disabled { background: #353532; border-color: #686154; color: #c2b79b; }
.free-download-button { background: #c6a45a; border-color: #c6a45a; color: #202124; }
.free-download-button:hover { background: #e0c789; }
.product-tabs { background: #25272a; border-color: #50535a; }
.product-tabs a { color: #c9ccd2; }
.product-tabs a:first-child { color: #f0e4c7; border-bottom-color: var(--gold); }
.detail-empty { background: #282b2f; border-color: #4e525a; }
.detail-empty>span { color: var(--gold); }
.detail-empty h3 { color: #e0e2e6; }
.detail-empty p, .purchase-footer, .purchase-footer>a:last-child { color: #b3b7c0; }
.paypal-purchase>a { color: #d4c193; }
@media (prefers-reduced-motion: reduce) {
  .product-card { transition: none; }
}
