.tx-body {
  --tx-shadow: 0 1px 2px rgba(17, 24, 39, .04);
  --tx-card-ratio: 1 / 1;
}

.tx-utility { background: var(--tx-text); border: 0; }
.tx-utility, .tx-utility-server, .tx-utility-link, .tx-utility-note, .tx-utility .tx-socials a { color: color-mix(in srgb, var(--tx-bg) 82%, transparent); }
.tx-utility-link:hover, .tx-utility-server:hover { color: var(--tx-bg); }
.tx-header { background: var(--tx-surface); }

.tx-hero-minimal { background: var(--tx-surface); padding-block: 40px 32px; }
.tx-hero-minimal .tx-hero-title { font-size: clamp(1.8em, 3.2vw, 2.5em); letter-spacing: -0.03em; }
.tx-hero-minimal .tx-hero-text { max-width: 640px; }
.tx-eyebrow { color: var(--tx-accent); letter-spacing: .08em; font-size: .72em; }

.tx-section-title { font-size: 1.35em; letter-spacing: -0.02em; }
.tx-section-head { margin-bottom: 14px; }

.tx-widget-nav { padding: 8px; }
.tx-widget-nav .tx-widget-title { text-transform: uppercase; font-size: .7em; letter-spacing: .12em; color: var(--tx-muted); }
.tx-nav-list .tx-nav-link { min-height: 40px; font-size: .94em; }
.tx-nav-list .is-active > .tx-nav-link { background: color-mix(in srgb, var(--tx-accent) 10%, var(--tx-surface)); color: var(--tx-accent); font-weight: 600; }
.tx-nav-thumb { width: 24px; height: 24px; }

.tx-card-row { border-radius: var(--tx-radius); }
.tx-card-row:hover { transform: none; border-color: var(--tx-accent); box-shadow: 0 0 0 3px color-mix(in srgb, var(--tx-accent) 12%, transparent); }
.tx-card-row .tx-card-media { width: 96px; min-height: 96px; background: var(--tx-bg); border-right: 1px solid var(--tx-border); }
.tx-card-row .tx-card-title { font-size: 1em; font-weight: 600; }
.tx-card-row .tx-card-body { padding: 14px 18px; }
.tx-card-row .tx-actions { min-width: 200px; }

.tx-cats-rows { grid-template-columns: repeat(3, 1fr); }
.tx-cats-rows .tx-cat { padding: 10px 14px 10px 10px; }
.tx-cats-rows .tx-cat-media { width: 44px; height: 44px; background: var(--tx-bg); }
.tx-cats-rows .tx-cat:hover { border-color: var(--tx-accent); transform: none; }

.tx-stats { background: var(--tx-surface); }
.tx-stat dd { font-size: 1.6em; }
.tx-feature-icon { background: color-mix(in srgb, var(--tx-accent) 10%, var(--tx-surface)); }
.tx-feature { padding: 20px; }

.tx-btn { font-weight: 600; }
.tx-tag-sale { background: var(--tx-sale); }
.tx-pill.is-active { background: var(--tx-accent); border-color: var(--tx-accent); color: var(--tx-accent-ink); }
.tx-panel, .tx-widget, .tx-buybox, .tx-summary { box-shadow: var(--tx-shadow); }
.tx-footer { background: var(--tx-surface); }

@media (max-width: 1100px) { .tx-cats-rows { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 899px) { .tx-cats-rows { grid-template-columns: 1fr; } }
