:root {
  --ink-950: #0d0d0c;
  --ink-900: #11110f;
  --ink-850: #151512;
  --ink-800: #1a1916;
  --ink-700: #26231f;
  --ink-600: #38332c;
  --sand-50: #f5f0e6;
  --sand-100: #e9e1d3;
  --sand-300: #b9afa0;
  --sand-500: #82796d;
  --rust-500: #f05a2a;
  --rust-600: #cf431b;
  --lime-400: #b9e34b;
  --danger-400: #ff785c;
  --line: rgba(245, 240, 230, .13);
  --line-strong: rgba(245, 240, 230, .24);
  --font-body: "Aptos", "Segoe UI", system-ui, -apple-system, sans-serif;
  --font-display: "Bahnschrift SemiCondensed", "Arial Narrow", "Roboto Condensed", sans-serif;
  --font-mono: "Cascadia Mono", "SFMono-Regular", Consolas, monospace;
  --s-1: .25rem;
  --s-2: .5rem;
  --s-3: .75rem;
  --s-4: 1rem;
  --s-5: 1.5rem;
  --s-6: 2rem;
  --s-7: 3rem;
  --s-8: 4rem;
  --s-9: 6rem;
  --content: 1480px;
  --ease: cubic-bezier(.2, .75, .2, 1);
}

*, *::before, *::after { box-sizing: border-box; }
[hidden] { display: none !important; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  min-width: 320px;
  color: var(--sand-50);
  background-color: var(--ink-950);
  background-image:
    linear-gradient(rgba(245, 240, 230, .025) 1px, transparent 1px),
    linear-gradient(90deg, rgba(245, 240, 230, .025) 1px, transparent 1px);
  background-size: 48px 48px;
  font-family: var(--font-body);
  font-size: 16px;
  line-height: 1.5;
  -webkit-font-smoothing: antialiased;
}

img { display: block; max-width: 100%; }
a { color: inherit; text-decoration: none; }
button, input, select { font: inherit; }
button, select { cursor: pointer; }
button { color: inherit; }

::selection { color: var(--ink-950); background: var(--rust-500); }

:focus-visible {
  outline: 3px solid var(--sand-50);
  outline-offset: 3px;
}

.visually-hidden {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  white-space: nowrap !important;
  border: 0 !important;
}

.skip-link {
  position: fixed;
  z-index: 1000;
  top: var(--s-3);
  left: var(--s-3);
  padding: var(--s-3) var(--s-4);
  color: var(--ink-950);
  background: var(--sand-50);
  transform: translateY(-160%);
  transition: transform .18s var(--ease);
}
.skip-link:focus { transform: translateY(0); }

.site-header {
  position: sticky;
  z-index: 50;
  top: 0;
  border-bottom: 1px solid var(--line);
  background: rgba(13, 13, 12, .94);
  backdrop-filter: blur(16px);
}
.site-header__inner {
  display: grid;
  grid-template-columns: minmax(220px, 1fr) auto 140px minmax(220px, 1fr);
  align-items: center;
  width: min(100% - 40px, var(--content));
  min-height: 72px;
  margin-inline: auto;
}
.site-header__inner > .brand { grid-column: 1; }
.site-header__inner > .primary-nav { grid-column: 2; }
.site-header__inner > .command-trigger { grid-column: 3; justify-self: center; }
.site-header__inner > .header-action { grid-column: 4; }

.brand { display: inline-flex; align-items: center; gap: var(--s-3); width: max-content; }
.brand img { flex: 0 0 auto; }
.brand__name {
  font-family: var(--font-display);
  font-size: 1.25rem;
  font-weight: 800;
  line-height: 1;
  letter-spacing: -.035em;
}
.brand__name span { color: var(--rust-500); }
.brand__edition {
  padding: .22rem .4rem .18rem;
  border: 1px solid var(--line-strong);
  color: var(--sand-300);
  font: 700 .61rem/1 var(--font-mono);
  letter-spacing: .1em;
}

.primary-nav { display: flex; align-items: stretch; align-self: stretch; }
.primary-nav a {
  position: relative;
  display: grid;
  place-items: center;
  padding: 0 var(--s-4);
  color: var(--sand-300);
  font-size: .84rem;
  transition: color .18s ease, background .18s ease;
}
.primary-nav a::after {
  position: absolute;
  right: var(--s-4);
  bottom: -1px;
  left: var(--s-4);
  height: 2px;
  background: var(--rust-500);
  content: "";
  transform: scaleX(0);
  transition: transform .2s var(--ease);
}
.primary-nav a:hover { color: var(--sand-50); background: rgba(245,240,230,.035); }
.primary-nav a.is-current { color: var(--sand-50); }
.primary-nav a.is-current::after { transform: scaleX(1); }

.header-action {
  display: inline-flex;
  justify-self: end;
  align-items: center;
  gap: var(--s-2);
  padding: .7rem .9rem;
  border: 1px solid var(--line-strong);
  color: var(--sand-100);
  font-size: .78rem;
  transition: border-color .18s ease, background .18s ease;
}
.header-action:hover { border-color: var(--rust-500); background: rgba(240,90,42,.08); }
.live-dot { width: 7px; height: 7px; border-radius: 50%; background: var(--lime-400); box-shadow: 0 0 0 4px rgba(185,227,75,.09); }

.hero, .tool-deck, .catalog, .site-footer {
  width: min(100% - 40px, var(--content));
  margin-inline: auto;
}

.hero { padding: clamp(4rem, 8vw, 8rem) 0 var(--s-9); }
.hero__grid {
  display: grid;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  gap: var(--s-6);
  align-items: end;
}
.hero__copy { grid-column: 1 / span 7; }
.eyebrow {
  display: flex;
  align-items: center;
  gap: var(--s-3);
  margin: 0 0 var(--s-5);
  color: var(--sand-300);
  font: 700 .72rem/1.2 var(--font-mono);
  letter-spacing: .12em;
  text-transform: uppercase;
}
.eyebrow span { color: var(--rust-500); }
.eyebrow::after { width: 56px; height: 1px; background: var(--line-strong); content: ""; }

.hero h1 {
  max-width: 820px;
  margin: 0;
  font-family: var(--font-display);
  font-size: clamp(4.4rem, 8.2vw, 8.5rem);
  font-weight: 800;
  line-height: .78;
  letter-spacing: -.065em;
  text-transform: uppercase;
}
.hero h1 em { color: var(--rust-500); font-style: normal; }
.hero__lead {
  max-width: 670px;
  margin: var(--s-6) 0 0;
  color: var(--sand-300);
  font-size: clamp(1.05rem, 1.5vw, 1.28rem);
  line-height: 1.55;
}
.hero__actions { display: flex; flex-wrap: wrap; gap: var(--s-3); margin-top: var(--s-6); }

.button {
  min-height: 48px;
  border: 1px solid transparent;
  border-radius: 0;
  padding: .8rem 1rem;
  font-weight: 750;
  transition: color .18s ease, background .18s ease, border-color .18s ease, transform .18s var(--ease);
}
.button:active { transform: translateY(1px); }
.button:disabled { cursor: not-allowed; opacity: .46; transform: none; }
.button--primary { display: inline-flex; align-items: center; justify-content: space-between; gap: var(--s-6); min-width: 210px; color: var(--ink-950); background: var(--rust-500); }
.button--primary:hover { background: #ff6d3d; }
.button--quiet { display: inline-flex; align-items: center; gap: var(--s-5); border-color: var(--line-strong); color: var(--sand-50); background: transparent; }
.button--quiet:hover { border-color: var(--sand-300); background: rgba(245,240,230,.05); }

.hero-metrics {
  display: flex;
  gap: clamp(1.5rem, 4vw, 4rem);
  margin: var(--s-7) 0 0;
  padding: var(--s-5) 0 0;
  border-top: 1px solid var(--line);
}
.hero-metrics div { display: grid; gap: var(--s-1); }
.hero-metrics dt { color: var(--sand-50); font: 800 1.5rem/1 var(--font-mono); letter-spacing: -.04em; }
.hero-metrics dd { margin: 0; color: var(--sand-500); font-size: .72rem; letter-spacing: .06em; text-transform: uppercase; }

.wipe-profile {
  position: relative;
  grid-column: 9 / -1;
  padding: var(--s-5);
  border: 1px solid var(--line-strong);
  background: var(--ink-850);
  box-shadow: 18px 18px 0 rgba(0,0,0,.16);
}
.wipe-profile::before { position: absolute; top: -1px; left: -1px; width: 72px; height: 3px; background: var(--rust-500); content: ""; }
.panel-heading { display: flex; align-items: start; justify-content: space-between; gap: var(--s-4); margin-bottom: var(--s-5); padding-bottom: var(--s-4); border-bottom: 1px solid var(--line); }
.panel-index { color: var(--rust-500); font: 700 .65rem/1 var(--font-mono); letter-spacing: .1em; }
.panel-heading h2 { margin: .5rem 0 0; font-family: var(--font-display); font-size: 1.65rem; line-height: 1; letter-spacing: -.035em; text-transform: uppercase; }
.save-state { color: var(--sand-500); font: .65rem/1.2 var(--font-mono); text-align: right; }

.profile-fields { display: grid; grid-template-columns: 1fr 1fr; gap: var(--s-3); }
.profile-fields label:first-child { grid-column: 1 / -1; }
.profile-fields label, .filter-grid label { display: grid; gap: var(--s-2); }
.profile-fields label > span, .filter-grid label > span { color: var(--sand-500); font: 700 .64rem/1 var(--font-mono); letter-spacing: .09em; text-transform: uppercase; }
select, input[type="number"], input[type="search"] {
  width: 100%;
  border: 1px solid var(--line-strong);
  border-radius: 0;
  color: var(--sand-50);
  background: var(--ink-900);
}
select, input[type="number"] { min-height: 46px; padding: .65rem .75rem; }
select:hover, input:hover { border-color: rgba(245,240,230,.38); }
select:focus-visible, input:focus-visible { border-color: var(--sand-50); outline-color: var(--rust-500); }
select:disabled, input:disabled { color: var(--sand-500); background: var(--ink-800); }

.profile-readout { margin: var(--s-5) 0; padding: var(--s-4); border-left: 2px solid var(--rust-500); background: var(--ink-900); }
.profile-readout span { color: var(--sand-500); font: 700 .63rem/1 var(--font-mono); letter-spacing: .08em; text-transform: uppercase; }
.profile-readout strong { display: block; margin-top: var(--s-2); font-family: var(--font-display); font-size: 1.25rem; letter-spacing: -.02em; }
.profile-readout p { margin: var(--s-2) 0 0; color: var(--sand-300); font-size: .81rem; line-height: 1.45; }
.button--profile { display: flex; justify-content: space-between; width: 100%; color: var(--ink-950); background: var(--sand-50); }
.button--profile:hover { background: var(--rust-500); }

.tool-deck { padding: var(--s-7) 0 var(--s-9); border-top: 1px solid var(--line); }
.section-heading { display: flex; align-items: end; justify-content: space-between; gap: var(--s-7); margin-bottom: var(--s-6); }
.section-heading h2 { margin: 0; font-family: var(--font-display); font-size: clamp(2.6rem, 5vw, 4.7rem); line-height: .92; letter-spacing: -.055em; text-transform: uppercase; }
.section-heading > p, .section-heading > div > p:not(.eyebrow) { max-width: 560px; margin: var(--s-4) 0 0; color: var(--sand-300); }
.section-heading--compact h2 { font-size: clamp(2.3rem, 4vw, 3.8rem); }
.section-heading--compact > p { max-width: 390px; padding-bottom: .2rem; }

.tool-grid { display: grid; grid-template-columns: repeat(4, 1fr); border-top: 1px solid var(--line-strong); border-left: 1px solid var(--line-strong); }
.tool-card {
  position: relative;
  display: flex;
  min-height: 310px;
  flex-direction: column;
  padding: var(--s-5);
  border-right: 1px solid var(--line-strong);
  border-bottom: 1px solid var(--line-strong);
  background: rgba(17,17,15,.72);
  transition: background .2s ease, transform .2s var(--ease);
}
.tool-card:hover { z-index: 2; background: var(--ink-800); transform: translateY(-3px); }
.tool-card--featured { background: var(--rust-500); color: var(--ink-950); }
.tool-card--featured:hover { background: #ff6d3d; }
.tool-card__number { font: 700 .68rem/1 var(--font-mono); letter-spacing: .08em; }
.tool-card__status { position: absolute; top: var(--s-5); right: var(--s-5); padding: .3rem .45rem; border: 1px solid rgba(13,13,12,.3); font: 700 .58rem/1 var(--font-mono); letter-spacing: .08em; text-transform: uppercase; }
.tool-card h3 { margin: auto 0 var(--s-3); font-family: var(--font-display); font-size: clamp(1.7rem, 2.6vw, 2.5rem); line-height: .95; letter-spacing: -.04em; text-transform: uppercase; }
.tool-card p { min-height: 4.4em; margin: 0 0 var(--s-5); color: var(--sand-300); font-size: .86rem; line-height: 1.55; }
.tool-card--featured p { color: rgba(13,13,12,.75); }
.tool-card__action { display: flex; justify-content: space-between; align-items: center; padding-top: var(--s-4); border-top: 1px solid var(--line); font-size: .8rem; font-weight: 750; }
.tool-card--featured .tool-card__action { border-color: rgba(13,13,12,.25); }

.catalog { padding: var(--s-8) 0 var(--s-9); border-top: 1px solid var(--line); }
.catalog__heading > div:first-child { max-width: 850px; }
.catalog-total { flex: 0 0 auto; display: grid; justify-items: end; padding-left: var(--s-7); border-left: 1px solid var(--line); }
.catalog-total strong { font: 800 clamp(2.6rem, 5vw, 5rem)/.8 var(--font-display); letter-spacing: -.05em; }
.catalog-total span { margin-top: var(--s-3); color: var(--sand-500); font: 700 .63rem/1 var(--font-mono); letter-spacing: .1em; text-transform: uppercase; }

.catalog-controls { margin-bottom: var(--s-6); }
.search-line { display: grid; grid-template-columns: minmax(240px, 1fr) auto auto; border: 1px solid var(--line-strong); background: var(--ink-900); }
.search-field { position: relative; display: flex; align-items: center; min-width: 0; }
.search-field input { min-height: 62px; padding: 0 var(--s-5) 0 3.4rem; border: 0; background: transparent; font-size: 1rem; }
.search-field input::placeholder { color: var(--sand-500); }
.search-mark { position: absolute; left: var(--s-5); width: 14px; height: 14px; border: 2px solid var(--sand-300); border-radius: 50%; pointer-events: none; }
.search-mark::after { position: absolute; right: -5px; bottom: -4px; width: 6px; height: 2px; background: var(--sand-300); content: ""; transform: rotate(45deg); transform-origin: left center; }
.button--search, .button--filter { min-width: 120px; min-height: 62px; border: 0; border-left: 1px solid var(--line-strong); background: transparent; }
.button--search { color: var(--ink-950); background: var(--rust-500); }
.button--search:hover { background: #ff6d3d; }
.button--filter:hover { background: rgba(245,240,230,.05); }
.button--filter span { display: inline-grid; place-items: center; min-width: 19px; height: 19px; margin-left: var(--s-1); padding: 0 .25rem; color: var(--ink-950); background: var(--sand-50); font: 700 .65rem/1 var(--font-mono); }

.quick-filters { display: flex; flex-wrap: wrap; gap: var(--s-2); padding: var(--s-3) 0; }
.quick-filters button {
  min-height: 36px;
  padding: .45rem .7rem;
  border: 1px solid var(--line);
  border-radius: 999px;
  color: var(--sand-300);
  background: transparent;
  font-size: .75rem;
  transition: color .16s ease, border-color .16s ease, background .16s ease;
}
.quick-filters button:hover { color: var(--sand-50); border-color: var(--line-strong); }
.quick-filters button.is-active { color: var(--ink-950); border-color: var(--rust-500); background: var(--rust-500); }

.filter-panel { padding: var(--s-5); border: 1px solid var(--line); background: var(--ink-850); }
.filter-panel__head { display: flex; align-items: center; justify-content: space-between; margin-bottom: var(--s-4); }
.filter-panel__head strong { font-family: var(--font-display); font-size: 1.15rem; letter-spacing: -.02em; text-transform: uppercase; }
.filter-panel__head button { padding: .25rem 0; border: 0; color: var(--sand-300); background: transparent; font-size: .75rem; text-decoration: underline; text-underline-offset: 3px; }
.filter-panel__head button:hover { color: var(--sand-50); }
.filter-grid { display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); gap: var(--s-3); }
.budget-filters { margin-top: var(--s-4); border-top: 1px solid var(--line); }
.budget-filters summary { display: flex; align-items: center; justify-content: space-between; gap: var(--s-4); padding: var(--s-4) 0 0; color: var(--sand-100); cursor: pointer; font-size: .76rem; font-weight: 800; }
.budget-filters summary small { color: var(--sand-500); font: 600 .62rem/1.3 var(--font-mono); }
.budget-filters > div { display: grid; grid-template-columns: repeat(4, minmax(0,1fr)); gap: var(--s-3); padding-top: var(--s-4); }
.budget-filters label { display: grid; gap: var(--s-2); }
.budget-filters label span { color: var(--sand-500); font: 700 .62rem/1 var(--font-mono); letter-spacing: .06em; text-transform: uppercase; }
.budget-filters input { width: 100%; min-height: 44px; padding: .65rem .75rem; border: 1px solid var(--line-strong); color: var(--sand-50); background: var(--ink-950); font-variant-numeric: tabular-nums; }
.active-filters { display: flex; flex-wrap: wrap; gap: var(--s-2); margin-top: var(--s-4); padding-top: var(--s-4); border-top: 1px solid var(--line); }
.active-filters button { display: inline-flex; align-items: center; gap: .45rem; min-height: 34px; padding: .4rem .55rem; border: 1px solid var(--line-strong); color: var(--sand-100); background: var(--ink-950); font-size: .66rem; cursor: pointer; }
.active-filters button span { color: var(--sand-500); }.active-filters button b { color: var(--rust-500); font-size: .9rem; }.active-filters button:hover { border-color: var(--rust-500); }

.catalog-note {
  margin: 0 0 var(--s-5);
  padding: var(--s-5);
  border: 1px solid var(--line-strong);
  color: var(--sand-300);
  background: var(--ink-850);
}
.catalog-note button { margin-left: var(--s-3); border: 0; color: var(--rust-500); background: transparent; font-weight: 750; text-decoration: underline; text-underline-offset: 3px; }

.catalog-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--s-4); }
.base-card {
  position: relative;
  display: flex;
  min-width: 0;
  flex-direction: column;
  border: 1px solid var(--line-strong);
  background: var(--ink-900);
  transition: border-color .2s ease, transform .2s var(--ease), background .2s ease;
}
.base-card:hover { border-color: rgba(240,90,42,.7); background: var(--ink-850); transform: translateY(-3px); }
.base-card.is-lead { grid-column: span 2; }
.base-card__media { position: relative; display: block; aspect-ratio: 16 / 9; overflow: hidden; border-bottom: 1px solid var(--line); background: var(--ink-800); }
.base-card.is-lead .base-card__media { aspect-ratio: 2 / 1; }
.base-card__media img { width: 100%; height: 100%; object-fit: cover; transition: transform .45s var(--ease), filter .25s ease; }
.base-card:hover .base-card__media img { transform: scale(1.025); filter: saturate(1.08); }
.base-card__badges { position: absolute; top: var(--s-3); left: var(--s-3); display: flex; flex-wrap: wrap; gap: var(--s-2); }
.base-card__badge { padding: .35rem .48rem; color: var(--sand-50); background: rgba(13,13,12,.88); font: 700 .61rem/1 var(--font-mono); letter-spacing: .07em; text-transform: uppercase; }
.base-card__badge--verified { color: var(--ink-950); background: var(--lime-400); }
.base-card__body { display: flex; flex: 1; flex-direction: column; padding: var(--s-5); }
.base-card__source { display: flex; justify-content: space-between; gap: var(--s-3); color: var(--sand-500); font: 700 .62rem/1 var(--font-mono); letter-spacing: .08em; text-transform: uppercase; }
.base-card h3 { margin: var(--s-3) 0 var(--s-2); font-family: var(--font-display); font-size: clamp(1.45rem, 2.2vw, 2rem); line-height: 1; letter-spacing: -.035em; }
.base-card h3 a::after { position: absolute; inset: 0; z-index: 1; content: ""; }
.base-card__author { margin: 0 0 var(--s-5); color: var(--sand-300); font-size: .78rem; }
.base-card__stats { display: grid; grid-template-columns: 1fr 1fr; margin-top: auto; border-top: 1px solid var(--line); border-left: 1px solid var(--line); }
.card-stat { min-width: 0; padding: var(--s-3); border-right: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.card-stat--raid { grid-column: 1 / -1; display: flex; align-items: baseline; justify-content: space-between; gap: var(--s-3); }
.card-stat small { display: block; margin-bottom: var(--s-2); color: var(--sand-500); font: 700 .58rem/1 var(--font-mono); letter-spacing: .08em; text-transform: uppercase; }
.card-stat strong { font: 800 .88rem/1.2 var(--font-mono); letter-spacing: -.03em; white-space: nowrap; }
.card-stat--raid strong { color: var(--rust-500); font-size: 1rem; }
.card-stat span { color: var(--sand-500); font-size: .65rem; }
.base-card__foot { display: flex; align-items: center; justify-content: space-between; gap: var(--s-3); padding-top: var(--s-4); color: var(--sand-500); font-size: .7rem; }
.base-card__foot b { color: var(--sand-100); font-weight: 650; }
.base-card__arrow { color: var(--rust-500); font-size: 1.15rem; }

.catalog-skeleton { min-height: 470px; border: 1px solid var(--line); background: var(--ink-900); overflow: hidden; }
.skeleton-block, .skeleton-line { position: relative; overflow: hidden; background: var(--ink-800); }
.skeleton-block::after, .skeleton-line::after { position: absolute; inset: 0; background: linear-gradient(90deg, transparent, rgba(245,240,230,.05), transparent); content: ""; animation: shimmer 1.4s infinite; }
.skeleton-block { aspect-ratio: 16 / 9; }
.skeleton-lines { padding: var(--s-5); }
.skeleton-line { height: 18px; margin-bottom: var(--s-3); }
.skeleton-line:last-child { width: 62%; }
@keyframes shimmer { from { transform: translateX(-100%); } to { transform: translateX(100%); } }

.catalog-empty { grid-column: 1 / -1; display: grid; min-height: 300px; place-items: center; padding: var(--s-7); border: 1px solid var(--line-strong); text-align: center; background: var(--ink-900); }
.catalog-empty strong { display: block; font-family: var(--font-display); font-size: clamp(2rem, 4vw, 3.4rem); line-height: .95; text-transform: uppercase; }
.catalog-empty p { max-width: 520px; margin: var(--s-4) auto 0; color: var(--sand-300); }
.catalog-empty button { margin-top: var(--s-5); color: var(--ink-950); background: var(--sand-50); }

.load-more { display: flex; justify-content: space-between; width: min(100%, 520px); margin: var(--s-6) auto 0; border-color: var(--line-strong); background: transparent; }
.load-more:hover { color: var(--ink-950); border-color: var(--sand-50); background: var(--sand-50); }
.load-more[hidden] { display: none; }

.compare-toggle {
  display: inline-flex;
  position: relative;
  z-index: 3;
  min-height: 38px;
  align-items: center;
  justify-content: center;
  gap: .45rem;
  padding: .55rem .7rem;
  border: 1px solid var(--line-strong);
  color: var(--sand-300);
  background: transparent;
  font: 750 .66rem/1 var(--font-body);
  cursor: pointer;
}
.compare-toggle:hover { color: var(--sand-50); border-color: var(--sand-300); }
.compare-toggle:focus-visible { outline: 2px solid var(--lime-400); outline-offset: 3px; }
.compare-toggle.is-selected { color: var(--ink-950); border-color: var(--lime-400); background: var(--lime-400); }
.compare-toggle--detail { min-height: 50px; padding-inline: 1rem; }

.compare-tray {
  position: fixed;
  z-index: 80;
  right: 20px;
  bottom: 20px;
  left: 20px;
  width: min(calc(100% - 40px), 1080px);
  margin-inline: auto;
  border: 1px solid var(--sand-500);
  color: var(--sand-50);
  background: rgba(13, 15, 14, .97);
  box-shadow: 0 18px 60px rgba(0, 0, 0, .42);
  backdrop-filter: blur(14px);
}
.compare-tray__inner { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; align-items: center; gap: var(--s-4); padding: var(--s-3); }
.compare-tray__head { display: grid; gap: .2rem; padding-right: var(--s-4); border-right: 1px solid var(--line-strong); font: 700 .62rem/1 var(--font-mono); letter-spacing: .08em; text-transform: uppercase; }
.compare-tray__head strong { color: var(--lime-400); font-size: .8rem; }
.compare-tray__items { display: flex; min-width: 0; gap: var(--s-2); overflow-x: auto; }
.compare-chip { display: grid; min-width: 0; grid-template-columns: 42px minmax(70px, 150px) 26px; align-items: center; gap: var(--s-2); border: 1px solid var(--line); background: var(--ink-900); }
.compare-chip img { width: 42px; height: 42px; object-fit: cover; }
.compare-chip span { overflow: hidden; font-size: .68rem; font-weight: 700; text-overflow: ellipsis; white-space: nowrap; }
.compare-chip button, .compare-tray__actions button { border: 0; color: var(--sand-500); background: transparent; cursor: pointer; }
.compare-chip button:hover, .compare-tray__actions button:hover { color: var(--rust-500); }
.compare-tray__actions { display: flex; align-items: center; gap: var(--s-3); white-space: nowrap; }
.compare-tray__actions a { padding: .8rem 1rem; color: var(--ink-950); background: var(--lime-400); font-size: .72rem; font-weight: 800; }
.compare-tray__actions span { color: var(--sand-500); font-size: .68rem; }
.compare-tray.is-warning { animation: compare-warning .32s ease 2; }
@keyframes compare-warning { 50% { border-color: var(--rust-500); transform: translateX(5px); } }

.site-footer { display: flex; align-items: center; justify-content: space-between; gap: var(--s-5); padding: var(--s-6) 0; border-top: 1px solid var(--line); color: var(--sand-500); font-size: .72rem; }
.brand--footer { color: var(--sand-50); }
.site-footer p { margin: 0; }
.site-footer > div { display: flex; gap: var(--s-5); }
.site-footer a:not(.brand):hover { color: var(--sand-50); }

@media (max-width: 1180px) {
  .site-header__inner { grid-template-columns: auto minmax(0, 1fr) 120px auto; }
  .primary-nav { justify-content: center; }
  .primary-nav a { padding-inline: var(--s-3); }
  .brand__edition { display: none; }
  .hero__copy { grid-column: 1 / span 7; }
  .wipe-profile { grid-column: 8 / -1; }
  .filter-grid { grid-template-columns: repeat(3, 1fr); }
  .tool-grid { grid-template-columns: repeat(2, 1fr); }
  .catalog-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 860px) {
  .site-header__inner { display: flex; min-height: 64px; }
  .primary-nav { order: 3; position: absolute; top: 64px; right: 0; left: 0; justify-content: flex-start; height: 46px; overflow-x: auto; border-bottom: 1px solid var(--line); background: var(--ink-950); scrollbar-width: none; }
  .primary-nav::-webkit-scrollbar { display: none; }
  .primary-nav a { flex: 0 0 auto; padding-inline: var(--s-4); }
  .header-action { margin-left: auto; }
  .hero { padding-top: 7rem; }
  .hero__grid { grid-template-columns: minmax(0, 1fr); gap: var(--s-7); }
  .hero__copy, .wipe-profile { grid-column: 1 / -1; min-width: 0; }
  .hero h1 { font-size: clamp(4rem, 16vw, 7rem); }
  .wipe-profile { box-shadow: 10px 10px 0 rgba(0,0,0,.16); }
  .section-heading { align-items: start; flex-direction: column; gap: var(--s-3); }
  .section-heading--compact > p { max-width: 600px; }
  .catalog-total { justify-items: start; padding: var(--s-4) 0 0; border-top: 1px solid var(--line); border-left: 0; }
  .filter-panel { display: none; }
  .filter-panel.is-open { display: block; }
  .filter-grid { grid-template-columns: repeat(2, 1fr); }
  .budget-filters > div { grid-template-columns: repeat(2,1fr); }
}

@media (min-width: 861px) {
  .button--filter { display: none; }
}

@media (max-width: 620px) {
  body { background-size: 32px 32px; }
  .site-header__inner, .hero, .tool-deck, .catalog, .site-footer { width: min(100% - 28px, var(--content)); }
  .brand__name { font-size: 1.05rem; }
  .header-action { padding-inline: .65rem; font-size: .7rem; }
  .hero { padding-bottom: var(--s-8); }
  .hero h1 { max-width: 100%; font-size: clamp(2.65rem, 12vw, 4.65rem); line-height: .84; }
  .hero__lead { font-size: 1rem; }
  .hero__actions { display: grid; }
  .button--primary, .button--quiet { width: 100%; min-width: 0; justify-content: space-between; }
  .hero-metrics { display: grid; grid-template-columns: repeat(3, 1fr); gap: var(--s-3); }
  .hero-metrics dt { font-size: 1.15rem; }
  .hero-metrics dd { font-size: .56rem; }
  .wipe-profile { margin-right: 8px; padding: var(--s-4); }
  .profile-fields { grid-template-columns: 1fr; }
  .profile-fields label:first-child { grid-column: auto; }
  .tool-grid { grid-template-columns: 1fr; }
  .tool-card { min-height: 260px; }
  .search-line { grid-template-columns: minmax(0, 1fr) auto; }
  .button--search { min-width: 80px; }
  .button--filter { grid-column: 1 / -1; border-top: 1px solid var(--line-strong); border-left: 0; min-height: 48px; }
  .quick-filters { flex-wrap: nowrap; overflow-x: auto; margin-inline: -14px; padding-inline: 14px; scrollbar-width: none; }
  .quick-filters::-webkit-scrollbar { display: none; }
  .quick-filters button { flex: 0 0 auto; }
  .filter-grid { grid-template-columns: 1fr; }
  .budget-filters summary { align-items: flex-start; flex-direction: column; }.budget-filters > div { grid-template-columns: 1fr; }
  .catalog-grid { grid-template-columns: 1fr; }
  .base-card.is-lead { grid-column: auto; }
  .base-card.is-lead .base-card__media { aspect-ratio: 16 / 9; }
  .section-heading h2 { font-size: clamp(2.6rem, 13vw, 4rem); }
  .site-footer { align-items: start; flex-direction: column; }
  .compare-tray { right: 10px; bottom: 10px; left: 10px; width: calc(100% - 20px); }
  .compare-tray__inner { grid-template-columns: 1fr auto; }
  .compare-tray__head { grid-column: 1 / -1; display: flex; justify-content: space-between; padding: 0 0 var(--s-2); border-right: 0; border-bottom: 1px solid var(--line); }
  .compare-tray__items { max-width: 100%; }
  .compare-chip { grid-template-columns: 34px minmax(60px, 110px) 24px; }
  .compare-chip img { width: 34px; height: 34px; }
  .compare-tray__actions button, .compare-tray__actions span { display: none; }
  .compare-tray__actions a { padding: .72rem; font-size: .65rem; }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { scroll-behavior: auto !important; animation-duration: .001ms !important; animation-iteration-count: 1 !important; transition-duration: .001ms !important; }
}

@media (forced-colors: active) {
  .live-dot, .wipe-profile::before, .primary-nav a::after { background: CanvasText; }
  .base-card__badge--verified, .button--primary, .button--search, .button--profile { border: 1px solid ButtonText; }
}
/* Global command surface and policy pages. */
.command-trigger{display:flex;align-items:center;gap:9px;min-height:34px;padding:0 10px;border:1px solid var(--line-strong);color:var(--sand-500);background:transparent;font-size:.65rem;cursor:pointer}.command-trigger:hover{color:var(--sand-50);border-color:var(--sand-500)}.command-trigger kbd{padding:3px 5px;border:1px solid var(--line);color:var(--sand-600);font:600 .56rem var(--font-mono)}
.command-menu{width:min(620px,calc(100% - 28px));max-height:min(650px,80vh);padding:0;border:1px solid var(--line-strong);color:var(--sand-100);background:var(--ink-900);box-shadow:0 24px 80px #000b}.command-menu::backdrop{background:#050504d9;backdrop-filter:blur(3px)}.command-menu form>header{display:grid;grid-template-columns:1fr auto;gap:12px;padding:16px;border-bottom:1px solid var(--line)}.command-menu label{display:grid;gap:6px}.command-menu label span{color:var(--rust-400);font:700 .58rem var(--font-mono);text-transform:uppercase}.command-menu input{width:100%;border:0;outline:2px solid transparent;outline-offset:4px;color:var(--sand-50);background:transparent;font:700 1.15rem var(--font-display)}.command-menu input:focus-visible{outline-color:var(--rust-400)}.command-menu header button{width:42px;border:1px solid var(--line);color:var(--sand-500);background:transparent}.command-results{max-height:480px;overflow:auto;padding:8px}.command-results a{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px;color:var(--sand-400)}.command-results a[data-active=true]{color:var(--sand-50);background:var(--ink-800)}.command-results span{display:grid;gap:3px}.command-results small{color:var(--sand-600);font-size:.66rem}.command-results b{color:var(--rust-400)}.command-menu footer{display:flex;gap:18px;padding:10px 16px;border-top:1px solid var(--line);color:var(--sand-600);font:.58rem var(--font-mono)}
.policy-page{width:min(840px,calc(100% - 40px));margin:auto;padding:84px 0 100px}.policy-page h1,.not-found h1{margin:16px 0 48px;color:var(--sand-50);font:900 clamp(3.5rem,8vw,7rem)/.86 var(--font-display);letter-spacing:-.06em}.policy-page section{display:grid;grid-template-columns:240px 1fr;gap:40px;padding:28px 0;border-top:1px solid var(--line)}.policy-page h2{color:var(--sand-100);font:800 1.1rem var(--font-display)}.policy-page p{color:var(--sand-400);line-height:1.7}.not-found{display:grid;min-height:100vh;place-content:center;width:min(760px,calc(100% - 32px))}.not-found>span{color:var(--rust-400);font:800 .68rem var(--font-mono)}.not-found h1{margin-bottom:18px}.not-found p{color:var(--sand-400)}.not-found div{display:flex;gap:10px;margin-top:28px}
.command-empty{display:grid;gap:4px;padding:24px 12px;color:var(--sand-300)}.command-empty small{color:var(--sand-600)}
@media(max-width:760px){.command-trigger{display:none}.policy-page section{grid-template-columns:1fr;gap:10px}.command-menu footer{display:none}}

/* Portal atmosphere: richer surfaces and quiet motion across the main product shell. */
body::after{content:"";position:fixed;z-index:0;inset:-20vmax;pointer-events:none;background:radial-gradient(circle at 18% 18%,rgba(240,90,42,.12),transparent 22vmax),radial-gradient(circle at 82% 30%,rgba(185,227,75,.075),transparent 24vmax),radial-gradient(circle at 58% 88%,rgba(71,151,164,.07),transparent 26vmax);animation:portal-atmosphere 20s ease-in-out infinite alternate}
.site-header{box-shadow:0 1rem 3rem rgba(0,0,0,.18)}
.brand__edition{color:var(--lime-400)!important;border-color:rgba(185,227,75,.36)!important;background:rgba(185,227,75,.06)!important}

/* Полезные подписи остаются читаемыми, а не превращаются в декоративный микротекст. */
.brand__edition,
.tool-card__status,
.base-card__badge,
.base-card__source,
.card-stat small,
.budget-filters summary small,
.budget-filters label span { font-size: .7rem; }
.base-card__foot,
.card-stat span { font-size: .72rem; }
.primary-nav{min-width:0;overflow-x:auto;scrollbar-width:none}.primary-nav::-webkit-scrollbar{display:none}.primary-nav a{white-space:nowrap}
.hero,.tool-deck,.catalog{isolation:isolate}.hero::after{content:"";position:absolute;z-index:-1;width:18rem;height:18rem;right:8%;top:8%;border:1px solid rgba(185,227,75,.16);border-radius:50%;box-shadow:0 0 0 2.5rem rgba(185,227,75,.025),0 0 0 5rem rgba(240,90,42,.018);animation:portal-orbit 18s linear infinite}
.tool-card{position:relative;isolation:isolate}.tool-card::before{content:"";position:absolute;z-index:-1;inset:0;background:radial-gradient(circle at 90% 0,rgba(185,227,75,.08),transparent 45%);opacity:0;transition:opacity .18s var(--ease)}.tool-card:hover::before{opacity:1}
@keyframes portal-atmosphere{to{transform:translate3d(2.5rem,-1.5rem,0) scale(1.03)}}
@keyframes portal-orbit{to{transform:rotate(1turn)}}
@media(max-width:760px){.hero::after{display:none}.site-header__inner{grid-template-columns:auto 1fr}.primary-nav{grid-column:1/-1;width:100%}}
@media(prefers-reduced-motion:reduce){body::after,.hero::after{animation:none}.tool-card::before{transition:none}}
