/* Public and customer presentation only. No permissions or payment behavior. */
body { background: var(--color-bg); color: var(--color-ink); font-family: var(--font); }
.sky { background: radial-gradient(ellipse at 75% 0%, var(--color-glow), transparent 58%), radial-gradient(ellipse at 5% 8%, var(--color-glow-soft), transparent 60%), linear-gradient(var(--color-glow-pale), var(--color-bg)); }
body > header { background: var(--color-surface-glass); border-color: var(--color-surface); box-shadow: var(--shadow-card); }
.nav-item, .page-intro p, .hero-copy p, .sort-label, .creator, .result-count, .hero-format, .hero-format b, .hero-bottom, .category-hint, .pagination-label, .image-credit, footer p, footer span { color: var(--color-muted); }
.nav-item.active, .page-intro h1 span, .filter.active, .price, .coin { color: var(--color-primary); }
.primary, .login { background: var(--color-primary); color: var(--color-surface); border-color: var(--color-primary); box-shadow: 0 4px 12px rgb(109 40 217 / 14%); }
.primary:hover, .login:hover { background: var(--color-primary-hover); filter: none; }
.hero .primary, header .login { background: var(--color-primary); border-color: var(--color-primary); box-shadow: 0 4px 12px rgb(109 40 217 / 14%); }
.hero .primary:hover, header .login:hover { background: var(--color-primary-hover); }
header .credit-nav { background: var(--color-primary-soft); border-color: var(--color-primary-border); color: var(--color-primary-hover); }
header .coin, .green-dot { color: var(--color-primary); }
.green-dot { background: var(--color-primary); }
.secondary { background: var(--color-surface); color: var(--color-primary); border: 1px solid var(--color-primary-border); }
.secondary:hover { background: var(--color-primary-soft); }
.text-link { color: var(--color-primary); }
.hero, .plan, .collection, .catalog-toolbar, .maker-controls, .maker-stage, .maker-download, .maker-print-guide, #modal { border-color: var(--color-border); box-shadow: var(--shadow-card); }
.hero { background: var(--color-surface); }
.credit-nav { background: var(--color-primary-soft); border-color: var(--color-primary-border); color: var(--color-primary-hover); }
.filter.active::after, .dot { background: var(--color-primary); }
.filter, .category, .sort-label select { color: var(--color-muted); }
.category.active { background: var(--color-primary); border-color: var(--color-primary); color: var(--color-surface); }
.pill, .tiny, .card-badge, .filter .count { background: var(--color-primary-soft); color: var(--color-primary-hover); border-color: var(--color-primary-border); }
.save { color: var(--color-primary); }
.save.saved, .save[aria-pressed="true"] { background: var(--color-primary); color: var(--color-surface); }
.free, .price.free, .card-badge.free { color: var(--color-accent); }
.eyebrow, .label, .page-intro .eyebrow { color: var(--color-muted); font-size: 12px; line-height: 1.5; }
.tiny, .hero-format, .hero-format b, .hero-bottom, .image-tag, .image-credit, .pagination-label, .result-count, .sort-label, .sort-label select, .category, .category-hint, .card-badge, .image-bottom, .price, .creator, .note, small, footer button, footer span, .model-art-caption { font-size: 12px; line-height: 1.5; }
.primary, .secondary, .login, .filter, .nav-item, .search input, .credit-nav { font-size: 14px; }
button, .primary, .secondary, .nav-item, .category, .save { min-height: 44px; }
.save { min-width: 44px; width: 44px; height: 44px; }
.language-switch button { min-width: 44px; min-height: 44px; font-size: 12px; }
.language-switch button[aria-pressed="true"] { background: var(--color-primary); color: var(--color-surface); }
.section-heading h2, .hero h2, .studio-banner h2, .trust-panel h2 { color: var(--color-ink); }
.image-tag { color: var(--color-primary-hover); }
.filter span, .filter .count, .search kbd { font-size: 12px; }
.skip-link { color: var(--color-primary-hover); }
.search input::placeholder { color: var(--color-muted); opacity: 1; }
.maker-step b { background: var(--color-primary-soft); color: var(--color-primary); }
.maker-step p, #modelInstructions, .maker-field small, .maker-help p, .maker-stage-bottom, .print-guide-heading p, .print-settings dt, .print-notes, .print-guide-footer { color: var(--color-muted); font-size: 12px; line-height: 1.65; }
.maker-controls input, .maker-controls select, #customerAuthForm input { background: var(--color-surface); border-color: var(--color-border); color: var(--color-ink); }
.maker-controls input[type="range"], .maker-controls input[type="checkbox"] { accent-color: var(--color-primary); }
.maker-group { color: var(--color-primary-hover); }
.maker-stage-top, .maker-stage-bottom, .maker-picture, .print-settings > div { background: var(--color-surface-soft); }
.maker-badge, .auth-account-status { background: var(--color-primary-soft); color: var(--color-primary-hover); }
.printer-bed { border-color: var(--color-primary-border); color: var(--color-primary-hover); }
.maker-fit { color: var(--color-accent); }
.maker-fit.not-fit { color: var(--color-danger); }
.maker-download h2 { color: var(--color-ink); }
.print-guide-footer, .print-settings dt { font-size: 12px; }
.auth-note, .auth-divider { color: var(--color-muted); }
.auth-feedback { color: var(--color-primary-hover); }
#customerAuthForm input:focus { outline-color: var(--color-primary); }
.plan.featured, .plan.selected { border-color: var(--color-primary); }
.plan-price, .plan h2 { color: var(--color-primary-hover); }
.studio-promo, .studio-banner { background: linear-gradient(115deg, var(--color-glow-soft), var(--color-bg)); border-color: var(--color-primary-border); color: var(--color-ink); }
.studio-banner p, .trust-panel p { color: var(--color-muted); }
.dark-button { background: var(--color-primary); color: var(--color-surface); font-size: 14px; min-height: 44px; }
.trust-strip, .trust-panel { background: var(--color-surface); border-color: var(--color-border); }
.trust-facts span { background: var(--color-primary-soft); color: var(--color-primary-hover); font-size: 12px; }
.studio-symbol { color: var(--color-primary); }
.toast { background: var(--color-primary-hover); color: var(--color-surface); }
footer { border-color: var(--color-border); }
@media (max-width: 768px) {
  .filter-tabs { flex-wrap: wrap; }
  .catalog-toolbar { flex-wrap: wrap; gap: 8px; padding: 8px; }
  .filter { padding: 10px; }
  .hero-copy { padding: 28px 24px; }
  .category-row { flex-wrap: wrap; }
  .category-hint { margin-left: 0; }
  header { grid-template-columns: minmax(0,1fr) auto auto; }
  header .brand { min-width: 0; }
  header .brand .brand-logo { width: 120px; max-width: 100%; }
  header .login { min-height: 44px; font-size: 12px; padding: 10px 12px; }
  header .credit-nav { min-height: 44px; font-size: 12px; gap: 4px; padding: 8px; }
  header .credit-nav .coin { display: none; }
}

.maker-tested{padding:12px 16px;border:1px solid var(--color-primary-border);border-radius:12px;background:var(--color-primary-soft);color:var(--color-primary-hover);font-weight:600}.maker-tested[hidden]{display:none}

/* UI-01: a lista lateral (e a gaveta no celular) já mostra as categorias; uma única linha de filtros. */
.category-row[hidden]{display:none!important}
