/* ARVAIX combined front-end CSS. Sources: main + stage3–10. */

/* ARVAIX visual system — cinematic, technical, editorial. */
:root {
  --arvaix-bg: #070809;
  --arvaix-surface: #101216;
  --arvaix-panel: #161a20;
  --arvaix-fg: #e7e4dc;
  --arvaix-muted: #8a8e96;
  --arvaix-accent: #8fbfb5;
  --arvaix-accent-2: #c4b8a5;
  --arvaix-grid: 0.08;
  --arvaix-glow: 0.28;
  --arvaix-line-a: 0.14;
  --arvaix-radius: 2px;
  --arvaix-heading-scale: 1;
  --arvaix-body-size: 16px;
  --arvaix-font-display: "Syne", "Avenir Next", "Segoe UI", sans-serif;
  --arvaix-font-body: "IBM Plex Sans", "Segoe UI", system-ui, sans-serif;
  --arvaix-font-mono: "IBM Plex Mono", ui-monospace, monospace;
  --arvaix-line: color-mix(in oklab, var(--arvaix-fg) calc(var(--arvaix-line-a) * 100%), transparent);
  --arvaix-ease: cubic-bezier(0.22, 1, 0.36, 1);
  --space: 8px;
  --gutter: clamp(16px, 4vw, 48px);
  --measure: 68ch;
  --wide: 1200px;
}

*, *::before, *::after { box-sizing: border-box; }
html { background: var(--arvaix-bg); color: var(--arvaix-fg); color-scheme: dark; }
.preset-light { color-scheme: light; }
body {
  margin: 0;
  min-height: 100vh;
  font-family: var(--arvaix-font-body);
  font-size: var(--arvaix-body-size);
  line-height: 1.55;
  background: var(--arvaix-bg);
  color: var(--arvaix-fg);
  letter-spacing: 0.005em;
}
img, svg, video { max-width: 100%; height: auto; display: block; }
a { color: inherit; text-decoration-thickness: 1px; text-underline-offset: 0.22em; }
a:hover { color: var(--arvaix-accent); }
:focus-visible {
  outline: 1px solid var(--arvaix-accent);
  outline-offset: 3px;
}
button:not(:disabled), [role="button"]:not(:disabled) { cursor: pointer; }
.skip-link {
  position: absolute; left: var(--gutter); top: -40px;
  background: var(--arvaix-fg); color: var(--arvaix-bg); padding: 8px 12px; z-index: 100;
}
.skip-link:focus { top: 8px; }
.screen-reader-text {
  clip: rect(1px,1px,1px,1px); height: 1px; width: 1px; overflow: hidden;
  position: absolute; word-wrap: normal !important;
}

.arvaix-grid {
  pointer-events: none; position: fixed; inset: 0; z-index: 0;
  background-image:
    linear-gradient(to right, color-mix(in oklab, var(--arvaix-fg) calc(var(--arvaix-grid) * 100%), transparent) 1px, transparent 1px),
    linear-gradient(to bottom, color-mix(in oklab, var(--arvaix-fg) calc(var(--arvaix-grid) * 100%), transparent) 1px, transparent 1px);
  background-size: 64px 64px;
  mask-image: radial-gradient(ellipse at center, #000 20%, transparent 75%);
}
.arvaix-glow {
  pointer-events: none; position: fixed; inset: -20% 0 auto; height: 50vh; z-index: 0;
  background: radial-gradient(ellipse at 50% 0%, color-mix(in oklab, var(--arvaix-accent) calc(var(--arvaix-glow) * 40%), transparent), transparent 60%);
}
.arvaix-header, .arvaix-main, .arvaix-footer, .arvaix-drawer, .arvaix-palette { position: relative; z-index: 1; }

h1, h2, h3, h4 {
  font-family: var(--arvaix-font-display);
  font-weight: 600;
  letter-spacing: -0.035em;
  line-height: 1.08;
  margin: 0 0 0.4em;
}
h1 { font-size: calc(clamp(2.4rem, 7vw, 5.6rem) * var(--arvaix-heading-scale)); }
h2 { font-size: calc(clamp(1.5rem, 3vw, 2.5rem) * var(--arvaix-heading-scale)); }
h3 { font-size: 1.25rem; }

.arvaix-kicker {
  font-family: var(--arvaix-font-mono);
  font-size: 11px;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--arvaix-muted);
  margin: 0 0 10px;
}

.arvaix-header {
  border-bottom: 1px solid var(--arvaix-line);
  background: color-mix(in oklab, var(--arvaix-bg) 88%, transparent);
  backdrop-filter: blur(12px);
  position: sticky; top: 0; z-index: 20;
}
.arvaix-header__inner {
  display: flex; align-items: center; gap: 24px;
  padding: 14px var(--gutter);
  max-width: 1440px; margin: 0 auto;
}
.arvaix-brand {
  display: flex; align-items: center; gap: 10px; text-decoration: none; flex-shrink: 0;
}
.arvaix-logo-img {
  display: block;
  height: 28px;
  width: auto;
  max-width: 168px;
  object-fit: contain;
}
.arvaix-footer__logo { display: inline-block; margin: 0 0 12px; }
.arvaix-footer__logo .arvaix-logo-img { height: 36px; max-width: 220px; }
.arvaix-word { font-family: var(--arvaix-font-display); font-weight: 600; letter-spacing: 0.12em; font-size: 13px; }
.arvaix-brand__chip {
  font-family: var(--arvaix-font-mono); font-size: 9px; letter-spacing: 0.16em;
  border: 1px solid var(--arvaix-line); padding: 2px 6px; color: var(--arvaix-muted);
}
.arvaix-nav { flex: 1; }
.arvaix-nav__list {
  display: flex; gap: 18px; list-style: none; margin: 0; padding: 0;
  justify-content: center; flex-wrap: wrap;
}
.arvaix-nav__list a {
  font-family: var(--arvaix-font-mono); font-size: 11px; letter-spacing: 0.14em;
  text-transform: uppercase; text-decoration: none; color: var(--arvaix-muted);
}
.arvaix-nav__list a:hover, .arvaix-nav__list .current-menu-item a { color: var(--arvaix-fg); }
.arvaix-header__tools { display: flex; align-items: center; gap: 8px; margin-left: auto; }

.arvaix-btn {
  display: inline-flex; align-items: center; justify-content: center;
  min-height: 40px; padding: 0 14px;
  font-family: var(--arvaix-font-mono); font-size: 11px; letter-spacing: 0.14em;
  text-transform: uppercase; text-decoration: none; border-radius: var(--arvaix-radius);
  border: 1px solid var(--arvaix-line); background: transparent; color: var(--arvaix-fg);
  transition: transform 150ms var(--arvaix-ease), background 150ms var(--arvaix-ease), border-color 150ms var(--arvaix-ease);
}
.arvaix-btn:hover { color: var(--arvaix-fg); border-color: var(--arvaix-accent); }
.arvaix-btn:active { transform: scale(0.98); }
.btns-solid .arvaix-btn--primary, .arvaix-btn--primary {
  background: var(--arvaix-fg); color: var(--arvaix-bg); border-color: var(--arvaix-fg);
}
.btns-solid .arvaix-btn--primary:hover { background: var(--arvaix-accent); border-color: var(--arvaix-accent); color: var(--arvaix-bg); }
.btns-line .arvaix-btn--primary {
  background: transparent; color: var(--arvaix-fg); border-color: var(--arvaix-accent);
}
.btns-ghost .arvaix-btn--primary, .arvaix-btn--ghost {
  background: transparent; border-color: transparent; color: var(--arvaix-fg);
}
.arvaix-icon-btn {
  display: inline-flex; align-items: center; min-height: 40px; padding: 0 10px;
  border: 1px solid var(--arvaix-line); background: transparent; color: var(--arvaix-muted);
  font-family: var(--arvaix-font-mono); font-size: 10px; letter-spacing: 0.08em;
  border-radius: var(--arvaix-radius);
}
.arvaix-burger {
  display: none; width: 40px; height: 40px; border: 1px solid var(--arvaix-line);
  background: transparent; position: relative;
}
.arvaix-burger span {
  display: block; width: 16px; height: 1px; background: var(--arvaix-fg); margin: 5px auto;
}

.arvaix-main { padding: 0 0 80px; }
.arvaix-hero {
  position: relative; min-height: 88vh; display: grid; align-items: end;
  overflow: hidden; margin-bottom: 24px;
}
.arvaix-hero__media {
  position: absolute; inset: 0;
  background-size: cover; background-position: center;
  transform: scale(1.04);
}
.arvaix-hero__veil {
  position: absolute; inset: 0;
  background: linear-gradient(to top, var(--arvaix-bg) 8%, color-mix(in oklab, var(--arvaix-bg) 35%, transparent) 55%, transparent 100%);
}
.arvaix-hero__copy {
  position: relative; padding: clamp(40px, 8vw, 96px) var(--gutter) clamp(48px, 8vw, 80px);
  max-width: 1100px;
}
.arvaix-lede { max-width: 52ch; color: var(--arvaix-muted); font-size: 1.05rem; }
.arvaix-hero__actions { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 28px; }

.arvaix-section { padding: 72px var(--gutter) 24px; max-width: 1440px; margin: 0 auto; }
.arvaix-section__head {
  display: grid; grid-template-columns: 1fr auto; gap: 12px 24px; align-items: end;
  margin-bottom: 28px; border-top: 1px solid var(--arvaix-line); padding-top: 18px;
}
.arvaix-section__head .arvaix-kicker { grid-column: 1 / -1; }
.arvaix-textlink {
  font-family: var(--arvaix-font-mono); font-size: 11px; letter-spacing: 0.14em;
  text-transform: uppercase; color: var(--arvaix-accent); text-decoration: none;
}

.arvaix-grid-cards {
  display: grid; grid-template-columns: repeat(2, 1fr); gap: 20px 18px;
}
.arvaix-grid-cards--3 { grid-template-columns: repeat(3, 1fr); }
.arvaix-grid-cards--2 { grid-template-columns: repeat(2, 1fr); }

.arvaix-card {
  position: relative; display: flex; flex-direction: column; min-width: 0;
  background: transparent;
}
.cards-panel .arvaix-card { background: var(--arvaix-surface); padding: 0; }
.cards-glass .arvaix-card {
  background: color-mix(in oklab, var(--arvaix-surface) 55%, transparent);
  backdrop-filter: blur(10px);
}
.arvaix-card__media {
  display: block; aspect-ratio: 16/9; overflow: hidden; position: relative;
  border: 1px solid var(--arvaix-line);
}
.arvaix-card__media img { width: 100%; height: 100%; object-fit: cover; transition: transform 500ms var(--arvaix-ease); }
.arvaix-card:hover .arvaix-card__media img { transform: scale(1.03); }
.arvaix-card__media::before, .arvaix-card__media::after {
  content: ""; position: absolute; width: 8px; height: 8px; pointer-events: none; z-index: 1;
  border-color: var(--arvaix-accent); border-style: solid;
}
.arvaix-card__media::before { top: 6px; left: 6px; border-width: 1px 0 0 1px; }
.arvaix-card__media::after { bottom: 6px; right: 6px; border-width: 0 1px 1px 0; }
.arvaix-card__fallback { display: block; height: 100%; background: var(--arvaix-panel); }
.arvaix-card__body { padding: 14px 2px 8px; display: flex; flex-direction: column; gap: 8px; }
.arvaix-card__title { font-size: 1.35rem; margin: 0; }
.arvaix-card__title a { text-decoration: none; }
.arvaix-card__excerpt { margin: 0; color: var(--arvaix-muted); font-size: 0.95rem; }
.arvaix-card__meta { display: flex; justify-content: space-between; align-items: center; gap: 8px; }
.arvaix-card__type { font-family: var(--arvaix-font-mono); font-size: 10px; letter-spacing: 0.12em; text-transform: uppercase; color: var(--arvaix-muted); }

.arvaix-status { display: inline-flex; align-items: center; gap: 8px; font-family: var(--arvaix-font-mono); font-size: 10px; letter-spacing: 0.14em; text-transform: uppercase; color: var(--arvaix-muted); }
.arvaix-status__dot { width: 6px; height: 6px; border-radius: 50%; background: var(--arvaix-accent); }
.arvaix-status--in-development .arvaix-status__dot, .arvaix-status--experiment .arvaix-status__dot { background: var(--arvaix-accent); }
.arvaix-status--paused .arvaix-status__dot { background: var(--arvaix-accent-2); }
.arvaix-status--planned .arvaix-status__dot { background: var(--arvaix-accent-2); }
.arvaix-chip { font-family: var(--arvaix-font-mono); font-size: 10px; letter-spacing: 0.12em; border: 1px solid var(--arvaix-line); padding: 2px 8px; }

.arvaix-journal-list, .arvaix-feature-list { display: flex; flex-direction: column; }
.arvaix-journal-row, .arvaix-feature-row {
  display: grid; gap: 6px; padding: 18px 0; border-bottom: 1px solid var(--arvaix-line);
  text-decoration: none;
}
.arvaix-journal-row:hover, .arvaix-feature-row:hover { color: var(--arvaix-fg); }
.arvaix-feature-row { grid-template-columns: 1fr auto; }
.arvaix-feature-row em { font-style: normal; font-family: var(--arvaix-font-mono); font-size: 11px; color: var(--arvaix-accent); }

.arvaix-band {
  margin: 72px var(--gutter); padding: clamp(48px, 8vw, 96px);
  background:
    linear-gradient(to right, var(--arvaix-bg) 20%, color-mix(in oklab, var(--arvaix-bg) 40%, transparent)),
    var(--band-image) center/cover;
  border: 1px solid var(--arvaix-line);
  max-width: 1440px;
}
.arvaix-band p { max-width: 46ch; color: var(--arvaix-muted); }

.arvaix-pagehead, .arvaix-record__head, .arvaix-auth, .arvaix-page, .arvaix-dash {
  padding: 56px var(--gutter) 24px; max-width: 1440px; margin: 0 auto;
}
.arvaix-prose, .arvaix-record__body { max-width: var(--measure); font-size: 1.05rem; }
.arvaix-prose p, .arvaix-record__body p { color: color-mix(in oklab, var(--arvaix-fg) 88%, var(--arvaix-muted)); }
.arvaix-record__figure { margin: 24px calc(-1 * var(--gutter)) 40px; }
.arvaix-record__figure img { width: 100%; max-height: 72vh; object-fit: cover; }
.arvaix-record__meta, .arvaix-record__actions { display: flex; flex-wrap: wrap; gap: 12px; align-items: center; margin: 16px 0; }
.arvaix-facts { display: grid; grid-template-columns: 120px 1fr; gap: 8px 16px; font-family: var(--arvaix-font-mono); font-size: 12px; }
.arvaix-facts dt { color: var(--arvaix-muted); }
.arvaix-share { display: flex; gap: 14px; margin-top: 32px; }
.arvaix-share a { font-family: var(--arvaix-font-mono); font-size: 11px; letter-spacing: 0.12em; text-transform: uppercase; }

.arvaix-form { display: flex; flex-direction: column; gap: 16px; max-width: 480px; }
.arvaix-form label { display: flex; flex-direction: column; gap: 6px; font-family: var(--arvaix-font-mono); font-size: 11px; letter-spacing: 0.12em; text-transform: uppercase; color: var(--arvaix-muted); }
.arvaix-form input, .arvaix-form textarea, .arvaix-form select,
.arvaix-searchform input, .arvaix-searchform select, .arvaix-palette__input {
  background: var(--arvaix-surface); color: var(--arvaix-fg); border: 1px solid var(--arvaix-line);
  border-radius: var(--arvaix-radius); min-height: 44px; padding: 10px 12px;
  font-family: var(--arvaix-font-body); font-size: 16px;
  appearance: none; -webkit-appearance: none;
}
.arvaix-form textarea { min-height: 120px; resize: vertical; }
.arvaix-check { flex-direction: row !important; align-items: center; gap: 8px; text-transform: none; letter-spacing: 0; font-family: var(--arvaix-font-body); font-size: 14px; color: var(--arvaix-fg); }
.arvaix-alert { border: 1px solid color-mix(in oklab, #8a3d2f 70%, var(--arvaix-line)); padding: 12px 14px; }
.arvaix-alert--ok { border-color: var(--arvaix-accent); }
.arvaix-empty { color: var(--arvaix-muted); padding: 24px 0; }
.arvaix-searchform { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 20px; }
.arvaix-searchform input { flex: 1; min-width: 200px; }

.arvaix-footer { border-top: 1px solid var(--arvaix-line); margin-top: 64px; padding: 48px var(--gutter) 24px; }
.arvaix-footer__inner { display: grid; grid-template-columns: 1.4fr 1fr 1fr 1fr; gap: 32px; max-width: 1440px; margin: 0 auto 32px; }
.arvaix-footer ul { list-style: none; margin: 0; padding: 0; }
.arvaix-footer a { text-decoration: none; color: var(--arvaix-muted); }
.arvaix-footer a:hover { color: var(--arvaix-fg); }
.arvaix-footer__name { font-family: var(--arvaix-font-display); letter-spacing: 0.16em; font-size: 14px; }
.arvaix-footer__note { color: var(--arvaix-muted); max-width: 36ch; font-size: 0.92rem; }
.arvaix-footer__bar {
  display: flex; justify-content: space-between; gap: 16px; flex-wrap: wrap;
  border-top: 1px solid var(--arvaix-line); padding-top: 16px; max-width: 1440px; margin: 0 auto;
  color: var(--arvaix-muted); font-family: var(--arvaix-font-mono); font-size: 11px; letter-spacing: 0.08em;
}

.arvaix-drawer {
  position: fixed; inset: 0; background: color-mix(in oklab, var(--arvaix-bg) 94%, transparent);
  z-index: 30; padding: 88px var(--gutter); display: none;
}
.arvaix-drawer.is-open { display: block; }
.arvaix-drawer__list { list-style: none; margin: 0; padding: 0; }
.arvaix-drawer__list a {
  display: block; font-family: var(--arvaix-font-display); font-size: clamp(2rem, 8vw, 3rem);
  text-decoration: none; padding: 6px 0; letter-spacing: -0.03em;
}

.arvaix-palette {
  position: fixed; inset: 0; background: color-mix(in oklab, var(--arvaix-bg) 72%, transparent);
  z-index: 40; display: grid; place-items: start center; padding-top: 12vh;
}
.arvaix-palette[hidden] { display: none !important; }
.arvaix-palette__panel {
  width: min(640px, calc(100vw - 32px));
  background: var(--arvaix-surface); border: 1px solid var(--arvaix-line);
  padding: 16px; box-shadow: 0 30px 80px color-mix(in oklab, #000 45%, transparent);
}
.arvaix-palette__input { width: 100%; margin: 8px 0 12px; }
.arvaix-palette__list { list-style: none; margin: 0; padding: 0; max-height: 48vh; overflow: auto; }
.arvaix-palette__list li { margin: 0; }
.arvaix-palette__list a, .arvaix-palette__list button {
  display: flex; justify-content: space-between; gap: 12px; width: 100%;
  padding: 10px 8px; border: 0; background: transparent; color: var(--arvaix-fg);
  font-family: var(--arvaix-font-body); font-size: 15px; text-align: left; text-decoration: none;
}
.arvaix-palette__list [aria-selected="true"], .arvaix-palette__list a:hover {
  background: color-mix(in oklab, var(--arvaix-accent) 12%, transparent);
}
.arvaix-palette__hint { color: var(--arvaix-muted); font-family: var(--arvaix-font-mono); font-size: 10px; letter-spacing: 0.12em; margin: 10px 0 0; }

.arvaix-dash__nav, .arvaix-dash__links {
  display: flex; flex-wrap: wrap; gap: 10px 18px; margin: 12px 0 32px;
}
.arvaix-dash__nav a, .arvaix-dash__links a, .arvaix-dash__links button {
  font-family: var(--arvaix-font-mono); font-size: 11px; letter-spacing: 0.12em; text-transform: uppercase;
  background: none; border: 0; color: var(--arvaix-muted); padding: 0;
}
.arvaix-dash__admin { border: 1px solid var(--arvaix-line); padding: 16px 18px; margin-bottom: 32px; }
.arvaix-log { list-style: none; margin: 0; padding: 0; }
.arvaix-log li { padding: 10px 0; border-bottom: 1px solid var(--arvaix-line); }
.arvaix-log time { font-family: var(--arvaix-font-mono); font-size: 11px; color: var(--arvaix-muted); margin-right: 8px; }
.arvaix-members { display: grid; grid-template-columns: repeat(auto-fill, minmax(200px, 1fr)); gap: 12px; list-style: none; margin: 0; padding: 0; }
.arvaix-members li { display: flex; align-items: center; gap: 10px; border: 1px solid var(--arvaix-line); padding: 10px; }
.arvaix-members img { border-radius: 0; }

.preset-light .arvaix-header { background: color-mix(in oklab, var(--arvaix-bg) 80%, #fff); }
.preset-light .arvaix-logo-img { background: #070809; padding: 6px 10px; }
.preset-cinema .arvaix-hero { min-height: 94vh; }
.preset-cinema h1 { letter-spacing: -0.045em; }
.preset-minimal .arvaix-card__media::before, .preset-minimal .arvaix-card__media::after { display: none; }
.preset-system .arvaix-header { backdrop-filter: none; background: var(--arvaix-surface); }

@media (max-width: 980px) {
  .arvaix-nav { display: none; }
  .arvaix-burger { display: inline-block; }
  .arvaix-grid-cards, .arvaix-grid-cards--3, .arvaix-grid-cards--2 { grid-template-columns: 1fr; }
  .arvaix-footer__inner { grid-template-columns: 1fr 1fr; }
  .arvaix-header__tools .arvaix-btn { display: none; }
  .arvaix-section__head { grid-template-columns: 1fr; }
}
@media (max-width: 640px) {
  .arvaix-hero { min-height: 78vh; }
  .arvaix-brand__chip { display: none; }
  .arvaix-logo-img { height: 22px; max-width: 132px; }
  .arvaix-footer__inner { grid-template-columns: 1fr; }
  .arvaix-icon-btn__keys { display: none; }
}

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after {
    animation: none !important; transition: none !important; scroll-behavior: auto !important;
  }
  .arvaix-card:hover .arvaix-card__media img { transform: none; }
}

.admin-bar .arvaix-header { top: 32px; }
@media (max-width: 782px) { .admin-bar .arvaix-header { top: 46px; } }

/* Stage 2 */
.arvaix-console {
  display: grid; grid-template-columns: repeat(6, 1fr); gap: 1px;
  background: var(--arvaix-line); border: 1px solid var(--arvaix-line);
  margin: 0 var(--gutter) 0; max-width: 1440px;
}
.arvaix-console > div { background: var(--arvaix-surface); padding: 14px 16px; }
.arvaix-console dt {
  font-family: var(--arvaix-font-mono); font-size: 10px; letter-spacing: 0.16em;
  color: var(--arvaix-muted); margin: 0 0 6px;
}
.arvaix-console dd { margin: 0; font-family: var(--arvaix-font-mono); font-size: 13px; }

.arvaix-sticky {
  position: sticky; top: 58px; z-index: 15;
  display: flex; gap: 14px; flex-wrap: nowrap; overflow-x: auto;
  padding: 10px var(--gutter); background: color-mix(in oklab, var(--arvaix-bg) 90%, transparent);
  backdrop-filter: blur(10px); border-bottom: 1px solid var(--arvaix-line);
}
.arvaix-sticky a {
  font-family: var(--arvaix-font-mono); font-size: 10px; letter-spacing: 0.14em;
  text-transform: uppercase; text-decoration: none; color: var(--arvaix-muted); white-space: nowrap;
}
.arvaix-sticky a.is-active, .arvaix-sticky a:hover { color: var(--arvaix-fg); }
.admin-bar .arvaix-sticky { top: 90px; }

.arvaix-demo-flag {
  font-family: var(--arvaix-font-mono); font-size: 11px; letter-spacing: 0.08em;
  color: var(--arvaix-accent-2); margin-top: 12px;
}
.arvaix-hero--app { min-height: 78vh; }
.arvaix-notes { border: 1px solid var(--arvaix-line); padding: 16px 18px; margin: 24px 0; }
.arvaix-gallery { display: grid; grid-template-columns: repeat(3, 1fr); gap: 12px; }
.arvaix-gallery img { width: 100%; height: 220px; object-fit: cover; border: 1px solid var(--arvaix-line); }

.arvaix-features { list-style: none; margin: 0; padding: 0; }
.arvaix-features__item {
  display: grid; grid-template-columns: 28px 1fr auto; gap: 14px; align-items: start;
  padding: 16px 0; border-bottom: 1px solid var(--arvaix-line);
}
.arvaix-features__icon { width: 10px; height: 10px; margin-top: 8px; border-radius: 50%; background: var(--arvaix-accent); }
.arvaix-features__item p { margin: 6px 0 0; color: var(--arvaix-muted); }

.arvaix-timeline { list-style: none; margin: 0; padding: 0; border-left: 1px solid var(--arvaix-line); }
.arvaix-timeline__item { position: relative; padding: 0 0 28px 28px; }
.arvaix-timeline__item::before {
  content: ""; position: absolute; left: -5px; top: 6px; width: 9px; height: 9px;
  border-radius: 50%; background: var(--arvaix-muted);
}
.arvaix-timeline--completed::before { background: var(--arvaix-accent); }
.arvaix-timeline--in-development::before { background: var(--arvaix-accent); }
.arvaix-timeline--planned::before { background: var(--arvaix-accent-2); }
.arvaix-timeline--idea::before { background: var(--arvaix-muted); }
.arvaix-timeline__item em { display: block; font-style: normal; font-family: var(--arvaix-font-mono); font-size: 11px; color: var(--arvaix-accent); }

.arvaix-progress {
  position: relative; height: 8px; background: var(--arvaix-panel); border: 1px solid var(--arvaix-line);
  margin: 12px 0 8px; overflow: hidden;
}
.arvaix-progress__bar { display: block; height: 100%; background: var(--arvaix-accent); width: 0; }
.arvaix-progress__label {
  position: absolute; right: 0; top: 10px;
  font-family: var(--arvaix-font-mono); font-size: 10px; letter-spacing: 0.12em; color: var(--arvaix-muted);
}

.arvaix-video { position: relative; aspect-ratio: 16/9; margin: 24px var(--gutter); max-width: 1440px; border: 1px solid var(--arvaix-line); background: #000; }
.arvaix-video iframe, .arvaix-video video { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; }
.arvaix-chapters { list-style: none; margin: 0; padding: 0; }
.arvaix-chapters li { padding: 8px 0; border-bottom: 1px solid var(--arvaix-line); font-family: var(--arvaix-font-mono); font-size: 13px; }
.arvaix-chapters time { color: var(--arvaix-accent); margin-right: 12px; }

.arvaix-explorer { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 20px; }
.arvaix-explorer input[type="search"], .arvaix-explorer select {
  background: var(--arvaix-surface); color: var(--arvaix-fg); border: 1px solid var(--arvaix-line);
  min-height: 44px; padding: 10px 12px; font-size: 16px;
}
.arvaix-explorer input[type="search"] { flex: 1; min-width: 180px; }
.arvaix-compare-bar {
  position: sticky; bottom: 12px; z-index: 16; margin: 16px var(--gutter);
  display: flex; gap: 16px; align-items: center; flex-wrap: wrap;
  background: var(--arvaix-surface); border: 1px solid var(--arvaix-accent); padding: 12px 16px;
}
.arvaix-compare-bar[hidden] { display: none !important; }
.arvaix-compare-toggle {
  font-family: var(--arvaix-font-mono); font-size: 10px; letter-spacing: 0.12em; text-transform: uppercase;
  color: var(--arvaix-muted); display: inline-flex; align-items: center; gap: 8px; margin-top: 8px;
}
.arvaix-compare-toggle input { width: 18px; height: 18px; }
.arvaix-compare-table-wrap { overflow-x: auto; }
.arvaix-compare { width: 100%; border-collapse: collapse; font-size: 14px; }
.arvaix-compare th, .arvaix-compare td { border: 1px solid var(--arvaix-line); padding: 10px 12px; text-align: left; vertical-align: top; }
.arvaix-compare th { font-family: var(--arvaix-font-mono); font-size: 11px; letter-spacing: 0.1em; }

.arvaix-module { padding: 24px 0; border-top: 1px solid var(--arvaix-line); }
.arvaix-lessons { list-style: none; margin: 0; padding: 0; }
.arvaix-lessons__item {
  display: grid; grid-template-columns: 1fr auto; gap: 16px; align-items: start;
  padding: 18px 0; border-bottom: 1px solid var(--arvaix-line);
}
.arvaix-learn-list { display: flex; flex-direction: column; gap: 24px; }
.arvaix-learn-row { border-bottom: 1px solid var(--arvaix-line); padding-bottom: 20px; }

.arvaix-faq details { border-bottom: 1px solid var(--arvaix-line); padding: 14px 0; }
.arvaix-faq summary { cursor: pointer; font-family: var(--arvaix-font-display); font-size: 1.1rem; }
.arvaix-gate { border: 1px solid var(--arvaix-line); padding: 28px; margin: 24px var(--gutter); max-width: 640px; }
.arvaix-seo-preview {
  margin-top: 32px; max-width: 480px; border: 1px solid var(--arvaix-line); padding: 16px; background: var(--arvaix-surface);
}
.arvaix-seo-preview img { width: 100%; height: 160px; object-fit: cover; margin-bottom: 10px; }
.arvaix-seo-preview__url { font-family: var(--arvaix-font-mono); font-size: 11px; color: var(--arvaix-accent); margin: 0; }
.arvaix-seo-preview__title { color: #8ab4f8; margin: 4px 0; font-size: 1.05rem; }
.arvaix-seo-preview__desc { color: var(--arvaix-muted); margin: 0; font-size: 0.92rem; }
.arvaix-article .arvaix-record__body { font-size: 1.12rem; max-width: 62ch; }
.arvaix-signal { list-style: none; margin: 0; padding: 0; }
.arvaix-signal a { display: grid; gap: 4px; padding: 12px 0; border-bottom: 1px solid var(--arvaix-line); text-decoration: none; }
.arvaix-btn--line { border-color: var(--arvaix-accent); }

.arvaix-status--concept .arvaix-status__dot { background: var(--arvaix-muted); }
.arvaix-status--prototype .arvaix-status__dot,
.arvaix-status--alpha .arvaix-status__dot { background: var(--arvaix-accent-2); }
.arvaix-status--beta .arvaix-status__dot,
.arvaix-status--public-experiment .arvaix-status__dot { background: var(--arvaix-accent); }
.arvaix-status--archived .arvaix-status__dot { background: #5a3d3d; }

@media (max-width: 980px) {
  .arvaix-console { grid-template-columns: repeat(2, 1fr); }
  .arvaix-gallery { grid-template-columns: 1fr; }
  .arvaix-lessons__item, .arvaix-features__item { grid-template-columns: 1fr; }
  .arvaix-video { margin: 16px var(--gutter); }
}
@media (max-width: 640px) {
  .arvaix-console { grid-template-columns: 1fr 1fr; }
  .arvaix-sticky { top: 52px; }
}

/* Preview / mobile: keep WordPress auto-sizes images from exploding the layout. */
html, body { max-width: 100%; overflow-x: clip; }
.arvaix-main, .arvaix-section, .arvaix-grid-cards, .arvaix-card, .arvaix-card__media {
  min-width: 0;
  max-width: 100%;
}
.arvaix-card__media { width: 100%; }
.arvaix-card__media img,
.arvaix-hero__media img,
img:is([sizes='auto' i], [sizes^='auto,' i]) {
  max-width: 100%;
  width: 100%;
  height: auto;
  contain-intrinsic-size: auto !important;
}


/* --- stage3.css --- */
/* Stage 3 — CURIOSA community presentation. */
.arvaix-curiosa { padding: 0; max-width: none; margin: 0; }
.arvaix-hero--curiosa { min-height: 82vh; margin-bottom: 0; }
.arvaix-hero--curiosa .arvaix-hero__copy { max-width: 920px; }
.arvaix-searchform--curiosa {
  margin-top: 28px; max-width: 760px;
  display: grid; grid-template-columns: 1fr 170px auto; gap: 8px; align-items: stretch;
}
.arvaix-searchform--curiosa input,
.arvaix-searchform--curiosa select,
.arvaix-searchform--curiosa button { width: 100%; min-width: 0; }

.arvaix-statline {
  display: flex; flex-wrap: wrap; gap: 20px 32px;
  list-style: none; margin: 32px 0 0; padding: 0;
}
.arvaix-statline li { display: grid; gap: 2px; min-width: 72px; }
.arvaix-statline strong {
  font-family: var(--arvaix-font-display); font-size: clamp(1.4rem, 3vw, 2rem);
  letter-spacing: -0.04em; line-height: 1;
}
.arvaix-statline span {
  font-family: var(--arvaix-font-mono); font-size: 10px;
  letter-spacing: 0.14em; text-transform: uppercase; color: var(--arvaix-muted);
}
.arvaix-statline--profile { margin: 28px 0 0; }

.arvaix-curiosa__nav {
  display: flex; flex-wrap: wrap; gap: 10px 20px;
  padding: 20px var(--gutter) 12px; max-width: 1440px; margin: 0 auto;
  border-bottom: 1px solid var(--arvaix-line); position: sticky; top: 57px; z-index: 12;
  background: color-mix(in oklab, var(--arvaix-bg) 88%, transparent);
  backdrop-filter: blur(10px);
}
.arvaix-curiosa__nav a {
  font-family: var(--arvaix-font-mono); font-size: 11px; letter-spacing: 0.14em;
  text-transform: uppercase; text-decoration: none; color: var(--arvaix-muted);
  min-height: 44px; display: inline-flex; align-items: center;
}
.arvaix-curiosa__nav a:hover, .arvaix-curiosa__nav a:focus-visible { color: var(--arvaix-fg); }

.arvaix-note {
  color: var(--arvaix-muted); border-left: 1px solid var(--arvaix-accent);
  padding: 8px 0 8px 14px; max-width: 62ch;
}
.arvaix-signals { list-style: none; margin: 0; padding: 0; }
.arvaix-signals a {
  display: grid; gap: 4px; padding: 14px 0; border-bottom: 1px solid var(--arvaix-line);
  text-decoration: none;
}
.arvaix-signals time { font-family: var(--arvaix-font-mono); font-size: 11px; color: var(--arvaix-muted); }
.arvaix-signals--page { padding: 0 var(--gutter) 48px; max-width: 880px; margin: 0 auto; }

.arvaix-thread-list { list-style: none; margin: 0; padding: 0; }
.arvaix-thread-list a {
  display: grid; gap: 4px; padding: 16px 0; border-bottom: 1px solid var(--arvaix-line);
  text-decoration: none;
}
.arvaix-thread-list span { color: var(--arvaix-muted); font-size: 0.92rem; }
.arvaix-flag {
  display: inline-block; font-family: var(--arvaix-font-mono); font-size: 10px;
  letter-spacing: 0.14em; text-transform: uppercase; color: var(--arvaix-accent);
  margin-right: 8px;
}

.arvaix-group-list { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(auto-fill, minmax(240px, 1fr)); gap: 12px; }
.arvaix-group-list a {
  display: grid; gap: 6px; padding: 16px; border: 1px solid var(--arvaix-line);
  text-decoration: none; min-height: 120px;
}
.arvaix-group-list--page { padding: 0 var(--gutter) 48px; max-width: 1440px; margin: 0 auto; }

.arvaix-members--rich a {
  display: flex; align-items: flex-start; gap: 12px; text-decoration: none; width: 100%;
}
.arvaix-members--rich a > span { display: grid; gap: 2px; min-width: 0; }
.arvaix-members__bio { color: var(--arvaix-muted); font-size: 0.88rem; }
.arvaix-chips { display: flex; flex-wrap: wrap; gap: 6px; list-style: none; margin: 12px 0 0; padding: 0; }
.arvaix-chips li, .arvaix-chips em {
  font-family: var(--arvaix-font-mono); font-size: 10px; letter-spacing: 0.12em;
  text-transform: uppercase; font-style: normal; border: 1px solid var(--arvaix-line);
  padding: 4px 8px; color: var(--arvaix-accent-2);
}
.arvaix-chips--mini { margin-top: 6px; }

.arvaix-profile { padding: 0; max-width: none; }
.arvaix-profile__hero {
  padding: 56px var(--gutter) 32px; max-width: 1440px; margin: 0 auto;
  border-bottom: 1px solid var(--arvaix-line);
}
.arvaix-profile__ident { display: flex; gap: 28px; align-items: flex-start; }
.arvaix-xp-ring {
  --xp: 0;
  display: grid; place-items: center; width: 132px; height: 132px; flex-shrink: 0;
  border-radius: 50%;
  background: conic-gradient(var(--arvaix-accent) calc(var(--xp) * 1%), var(--arvaix-line) 0);
  padding: 4px;
}
.arvaix-xp-ring img {
  width: 124px; height: 124px; object-fit: cover; border-radius: 50%;
  background: var(--arvaix-bg); border: 4px solid var(--arvaix-bg);
}
.arvaix-profile__name { font-family: var(--arvaix-font-display); font-size: 1.4rem; margin: 0 0 8px; }
.arvaix-mention { color: var(--arvaix-accent); text-decoration: none; }
.arvaix-comment-image img { max-width: min(420px, 100%); margin: 8px 0; border: 1px solid var(--arvaix-line); }

.arvaix-mod { display: inline-flex; flex-wrap: wrap; gap: 8px; }
.arvaix-form--wide { max-width: 720px; margin: 0 var(--gutter) 40px; }
.arvaix-form--inline { display: flex; flex-wrap: wrap; gap: 12px; align-items: end; max-width: none; }
.arvaix-comment-list { list-style: none; margin: 0; padding: 0; }
.arvaix-comment-list li { padding: 16px 0; border-bottom: 1px solid var(--arvaix-line); }
.arvaix-comments { padding: 24px var(--gutter) 64px; max-width: 800px; }
.arvaix-saved__label {
  font-family: var(--arvaix-font-mono); font-size: 11px; letter-spacing: 0.14em;
  text-transform: uppercase; color: var(--arvaix-muted); margin: 28px 0 12px;
}
.arvaix-dash__hero {
  padding: 0 0 28px; border-bottom: 1px solid var(--arvaix-line); margin-bottom: 8px;
}
.arvaix-feature-item {
  display: grid; grid-template-columns: 1fr auto; gap: 12px; align-items: center;
  border-bottom: 1px solid var(--arvaix-line);
}
.arvaix-feature-item .arvaix-feature-row { border-bottom: 0; padding: 18px 0; }
.arvaix-feature-list--page { padding: 0 var(--gutter) 48px; max-width: 960px; margin: 0 auto; }
.arvaix-status-nav {
  display: flex; flex-wrap: wrap; gap: 8px 16px; margin-top: 20px;
}
.arvaix-status-nav a {
  font-family: var(--arvaix-font-mono); font-size: 10px; letter-spacing: 0.14em;
  text-transform: uppercase; text-decoration: none; color: var(--arvaix-muted);
  min-height: 44px; display: inline-flex; align-items: center;
  border-bottom: 1px solid transparent;
}
.arvaix-status-nav a[aria-current="page"], .arvaix-status-nav a:hover { color: var(--arvaix-fg); border-bottom-color: var(--arvaix-accent); }

.arvaix-badge {
  display: inline-flex; align-items: center; justify-content: center;
  min-width: 18px; height: 18px; padding: 0 5px; border-radius: 9px;
  background: var(--arvaix-accent); color: var(--arvaix-bg);
  font-family: var(--arvaix-font-mono); font-size: 10px; margin-left: 4px;
}
.arvaix-icon-btn--notify {
  text-decoration: none; position: relative; min-width: 44px; min-height: 44px;
  display: inline-flex; align-items: center; justify-content: center;
  color: var(--arvaix-muted);
}
.arvaix-icon-btn--notify::before {
  content: ""; width: 14px; height: 14px; border: 1px solid currentColor; border-radius: 3px 3px 6px 6px;
}
.arvaix-icon-btn--notify .arvaix-badge { position: absolute; top: 6px; right: 4px; }

.buddypress .arvaix-main,
.bp-user .arvaix-main,
#buddypress { color: var(--arvaix-fg); }
#buddypress .activity-list,
#buddypress .item-list { list-style: none; padding: 0; }
#buddypress a { color: var(--arvaix-accent); }

@media (max-width: 720px) {
  .arvaix-profile__ident { flex-direction: column; }
  .arvaix-group-list { grid-template-columns: 1fr; }
  .arvaix-form--wide { margin-left: var(--gutter); margin-right: var(--gutter); }
  .arvaix-hero--curiosa { min-height: 92vh; }
  .arvaix-curiosa__nav { top: 53px; }
  .arvaix-searchform--curiosa { grid-template-columns: 1fr; }
  .arvaix-feature-item { grid-template-columns: 1fr; }
}
@media (prefers-reduced-motion: reduce) {
  .arvaix-curiosa__nav { backdrop-filter: none; }
}

/* --- stage4.css --- */
/* Stage 4 — SEO, sharing, membership, funnel. */

.arvaix-crumbs {
  display: flex; flex-wrap: wrap; align-items: center; gap: 8px 10px;
  padding: 14px var(--gutter) 0; max-width: 1440px; margin: 0 auto;
  font-family: var(--arvaix-font-mono); font-size: 11px; letter-spacing: 0.12em;
  text-transform: uppercase; color: var(--arvaix-muted);
}
.arvaix-crumbs a { color: var(--arvaix-muted); text-decoration: none; min-height: 44px; display: inline-flex; align-items: center; }
.arvaix-crumbs a:hover, .arvaix-crumbs a:focus-visible { color: var(--arvaix-fg); }
.arvaix-crumbs__here { color: var(--arvaix-fg); }
.arvaix-crumbs__sep { opacity: 0.5; }

.arvaix-share {
  display: flex; flex-wrap: wrap; align-items: center; gap: 12px 16px;
  margin-top: 36px; padding-top: 20px; border-top: 1px solid var(--arvaix-line);
}
.arvaix-share__kicker {
  font-family: var(--arvaix-font-mono); font-size: 11px; letter-spacing: 0.16em;
  text-transform: uppercase; color: var(--arvaix-muted); margin: 0; width: 100%;
}
.arvaix-share__list { display: flex; flex-wrap: wrap; gap: 8px; list-style: none; margin: 0; padding: 0; }
.arvaix-share__link {
  display: inline-flex; align-items: center; gap: 8px;
  min-height: 44px; padding: 0 14px;
  font-family: var(--arvaix-font-mono); font-size: 11px; letter-spacing: 0.12em;
  text-transform: uppercase; text-decoration: none; color: var(--arvaix-fg);
  border: 1px solid var(--arvaix-line); border-radius: var(--arvaix-radius);
  background: transparent;
}
.arvaix-share--solid .arvaix-share__link { background: var(--arvaix-panel); }
.arvaix-share--ghost .arvaix-share__link { border-color: transparent; }
.arvaix-share__link:hover, .arvaix-share__link:focus-visible {
  border-color: var(--arvaix-accent); color: var(--arvaix-accent);
}
.arvaix-share__link svg { flex: none; }
.arvaix-share-float {
  position: fixed; right: 16px; bottom: 16px; z-index: 30;
  background: color-mix(in oklab, var(--arvaix-bg) 88%, transparent);
  border: 1px solid var(--arvaix-line); padding: 10px 12px; backdrop-filter: blur(10px);
  max-width: min(360px, calc(100vw - 32px));
}
.arvaix-share-float .arvaix-share { margin: 0; padding: 0; border: 0; }

.arvaix-access {
  margin: 32px 0; padding: clamp(28px, 5vw, 48px);
  border: 1px solid var(--arvaix-line);
  background:
    linear-gradient(180deg, color-mix(in oklab, var(--arvaix-accent) 8%, transparent), transparent 40%),
    var(--arvaix-panel);
}
.arvaix-access h2 { font-size: clamp(1.4rem, 3vw, 2.1rem); letter-spacing: -0.04em; margin: 8px 0 12px; }
.arvaix-access p { max-width: 52ch; color: var(--arvaix-muted); }
.arvaix-access__actions { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 20px; }

.arvaix-funnel {
  margin: 48px 0 8px; padding: clamp(24px, 4vw, 40px);
  border-left: 3px solid var(--arvaix-accent); background: var(--arvaix-surface);
}
.arvaix-funnel h2 { margin: 6px 0 10px; letter-spacing: -0.03em; }
.arvaix-funnel p { max-width: 52ch; }
.arvaix-funnel-strip {
  display: flex; flex-wrap: wrap; gap: 8px 0; list-style: none;
  margin: 28px var(--gutter) 0; padding: 0; max-width: 1440px;
}
.arvaix-funnel-strip li { display: flex; align-items: center; }
.arvaix-funnel-strip a {
  display: inline-flex; align-items: center; gap: 8px;
  min-height: 44px; padding: 0 12px 0 0;
  font-family: var(--arvaix-font-mono); font-size: 11px; letter-spacing: 0.12em;
  text-transform: uppercase; text-decoration: none; color: var(--arvaix-muted);
}
.arvaix-funnel-strip a span { color: var(--arvaix-accent); }
.arvaix-funnel-strip li + li:before {
  content: "→"; margin: 0 8px 0 0; color: var(--arvaix-muted); opacity: 0.5;
  font-family: var(--arvaix-font-mono);
}
.arvaix-funnel-strip a:hover { color: var(--arvaix-fg); }

.arvaix-join .arvaix-hero--join { min-height: 70vh; }
.arvaix-join__nav {
  display: flex; flex-wrap: wrap; gap: 8px 18px;
  padding: 16px var(--gutter); max-width: 1440px; margin: 0 auto;
  border-bottom: 1px solid var(--arvaix-line); position: sticky; top: 57px; z-index: 12;
  background: color-mix(in oklab, var(--arvaix-bg) 88%, transparent); backdrop-filter: blur(10px);
}
.arvaix-join__nav a {
  font-family: var(--arvaix-font-mono); font-size: 11px; letter-spacing: 0.14em;
  text-transform: uppercase; text-decoration: none; color: var(--arvaix-muted);
  min-height: 44px; display: inline-flex; align-items: center;
}
.arvaix-join__nav a:hover { color: var(--arvaix-fg); }
.arvaix-include { list-style: none; margin: 0; padding: 0; display: grid; gap: 10px; max-width: 52ch; }
.arvaix-include li { padding-left: 18px; position: relative; }
.arvaix-include li:before { content: ""; position: absolute; left: 0; top: 0.55em; width: 7px; height: 7px; background: var(--arvaix-accent); }
.arvaix-compare { width: 100%; border-collapse: collapse; font-size: 0.95rem; }
.arvaix-compare th, .arvaix-compare td { text-align: left; padding: 12px 10px; border-bottom: 1px solid var(--arvaix-line); }
.arvaix-compare thead th { font-family: var(--arvaix-font-mono); font-size: 11px; letter-spacing: 0.12em; text-transform: uppercase; color: var(--arvaix-muted); }
.arvaix-join .arvaix-section:has(.arvaix-compare) { overflow-x: auto; }
.arvaix-plans { display: grid; grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); gap: 16px; }
.arvaix-plan { border: 1px solid var(--arvaix-line); padding: 24px; background: var(--arvaix-panel); }
.arvaix-plan__price { font-family: var(--arvaix-font-display); font-size: 2rem; letter-spacing: -0.04em; margin: 8px 0; }
.arvaix-plan__price span { font-size: 0.85rem; color: var(--arvaix-muted); margin-left: 6px; }
.arvaix-faq details { border-bottom: 1px solid var(--arvaix-line); padding: 12px 0; }
.arvaix-faq summary { cursor: pointer; font-weight: 600; min-height: 44px; display: flex; align-items: center; }
.arvaix-card--plain { padding: 20px; border: 1px solid var(--arvaix-line); background: var(--arvaix-surface); }

@media (max-width: 640px) {
  .arvaix-share-float { left: 12px; right: 12px; }
  .arvaix-funnel-strip li + li:before { display: none; }
  .arvaix-compare { font-size: 0.85rem; }
}

@media (prefers-reduced-motion: reduce) {
  .arvaix-join__nav, .arvaix-share__link { transition: none; }
}

/* --- stage5.css --- */
/* Stage 5 — homepage builder extras, spacing, launch polish */
.space-compact{--arvaix-section-gap:3.2rem}
.space-regular{--arvaix-section-gap:5.5rem}
.space-generous{--arvaix-section-gap:7.5rem}
.arvaix-section{margin-block:var(--arvaix-section-gap,5.5rem)}
.arvaix-hero__secondary{margin-top:1.25rem;display:flex;flex-wrap:wrap;gap:.6rem 1.1rem;font-size:.92rem;letter-spacing:.08em;text-transform:uppercase}
.arvaix-section--cta{text-align:center;padding:4rem 1.5rem;border:1px solid color-mix(in srgb,var(--arvaix-fg) 12%,transparent);background:color-mix(in srgb,var(--arvaix-panel) 80%,transparent)}
.arvaix-section--cta .arvaix-hero__actions{justify-content:center}
.arvaix-signals--home{list-style:none;margin:0;padding:0;display:grid;gap:.4rem}
.arvaix-signals--home a{display:grid;grid-template-columns:7rem 1fr auto;gap:1rem;align-items:baseline;padding:.85rem 0;border-bottom:1px solid color-mix(in srgb,var(--arvaix-fg) 10%,transparent);text-decoration:none;color:inherit}
.arvaix-signals--home time{font-family:ui-monospace,Menlo,Consolas,monospace;font-size:11px;color:var(--arvaix-muted)}
@media(max-width:720px){
  .arvaix-signals--home a{grid-template-columns:1fr;gap:.25rem}
  .nav-stack .arvaix-header__tools .arvaix-btn{display:none}
}
@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  .arvaix-hero__media{animation:none}
}
.arvaix-restricted{max-width:42rem;margin:12vh auto;padding:0 1.25rem}
.arvaix-form-error{border:1px solid #8a3d2f;padding:.75rem 1rem;margin:0 0 1rem;color:#e7c4bc}

/* --- stage6.css --- */
/* Stage 6 — personalization, engagement, inbox */
.arvaix-engage{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center;margin-top:.75rem}
.arvaix-collect{position:relative}
.arvaix-collect__panel{position:absolute;z-index:8;top:calc(100% + 6px);left:0;min-width:240px;padding:12px;background:var(--arvaix-panel);border:1px solid color-mix(in srgb,var(--arvaix-fg) 14%,transparent);box-shadow:0 12px 40px color-mix(in srgb,var(--arvaix-bg) 70%,transparent)}
.arvaix-collect__list{list-style:none;margin:0 0 10px;padding:0}
.arvaix-collect__list button{display:block;width:100%;text-align:left;background:transparent;border:0;color:inherit;padding:.45rem 0;cursor:pointer;font:inherit}
.arvaix-collect__list button:hover{color:var(--arvaix-accent)}
.arvaix-collect__new{display:block;font-size:.8rem;letter-spacing:.08em;text-transform:uppercase;color:var(--arvaix-muted)}
.arvaix-collect__new input{display:block;width:100%;margin:.35rem 0 .6rem;background:var(--arvaix-surface);border:1px solid color-mix(in srgb,var(--arvaix-fg) 14%,transparent);color:inherit;padding:.4rem .5rem}
.arvaix-collect__delete{margin-top:.6rem}
.arvaix-inbox__nav{display:flex;flex-wrap:wrap;gap:.4rem;margin:0 0 1rem}
.arvaix-inbox__nav button{background:transparent;border:1px solid color-mix(in srgb,var(--arvaix-fg) 16%,transparent);color:inherit;padding:.35rem .7rem;font:inherit;letter-spacing:.1em;text-transform:uppercase;font-size:11px;cursor:pointer}
.arvaix-inbox__nav button.is-active{border-color:var(--arvaix-accent);color:var(--arvaix-accent)}
.arvaix-log .is-unread strong{color:var(--arvaix-accent)}
.arvaix-log li[hidden]{display:none}
.arvaix-wish{width:100%;border-collapse:collapse;font-size:.92rem}
.arvaix-wish th,.arvaix-wish td{text-align:left;padding:.55rem .4rem;border-bottom:1px solid color-mix(in srgb,var(--arvaix-fg) 10%,transparent)}
.arvaix-wish th{font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--arvaix-muted)}
.arvaix-wish__notes td{color:var(--arvaix-muted);font-size:.85rem}
.arvaix-rail{margin-block:2.2rem}
.arvaix-dash__nav{flex-wrap:wrap}
.arvaix-btn[aria-pressed="true"]{border-color:var(--arvaix-accent);color:var(--arvaix-accent)}
@media(max-width:720px){
  .arvaix-wish{display:block;overflow-x:auto}
  .arvaix-collect__panel{position:static;margin-top:.5rem}
}

/* --- stage7.css --- */
/* Stage 7 — creators, portfolio, before/after */
.arvaix-profile--creator .arvaix-profile__hero--cover{
  position:relative;padding-top:2rem;
}
.arvaix-profile__hero--cover::before{
  content:"";position:absolute;inset:0 0 auto;height:220px;background:var(--cover) center/cover no-repeat;
  mask-image:linear-gradient(to bottom, #000 40%, transparent);
  opacity:.45;pointer-events:none;
}
.arvaix-profile__hero--cover .arvaix-profile__ident,
.arvaix-profile__hero--cover .arvaix-statline{position:relative}
.arvaix-creators{list-style:none;margin:0;padding:0;display:grid;gap:1.25rem;grid-template-columns:repeat(3,minmax(0,1fr))}
.arvaix-creator-card{border:1px solid color-mix(in srgb,var(--arvaix-fg) 12%,transparent);background:var(--arvaix-panel);display:flex;flex-direction:column;min-height:100%}
.arvaix-creator-card__cover{display:block;height:110px;background-size:cover;background-position:center}
.arvaix-creator-card__body{display:flex;gap:.85rem;padding:1rem 1rem .4rem;color:inherit;text-decoration:none}
.arvaix-creator-card__body img{border-radius:50%;flex:0 0 auto}
.arvaix-creator-card .arvaix-btn{margin:0 1rem 1rem;align-self:flex-start}
.arvaix-sticky-nav{position:sticky;top:0;z-index:4;display:flex;flex-wrap:wrap;gap:.6rem 1rem;padding:.7rem 0;background:color-mix(in srgb,var(--arvaix-bg) 88%,transparent);backdrop-filter:blur(8px);border-bottom:1px solid color-mix(in srgb,var(--arvaix-fg) 10%,transparent)}
.arvaix-sticky-nav a{font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--arvaix-muted);text-decoration:none}
.arvaix-sticky-nav a:hover,.arvaix-sticky-nav a:focus-visible{color:var(--arvaix-accent)}
.arvaix-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.6rem;margin:1.2rem 0}
.arvaix-gallery img{width:100%;height:auto;display:block}
.arvaix-audio{margin:1.2rem 0}
.arvaix-audio audio{width:100%}
.arvaix-disclose{margin:1.5rem 0 2rem;border:1px solid color-mix(in srgb,var(--arvaix-fg) 14%,transparent);padding:1rem}
.arvaix-disclose summary{cursor:pointer;letter-spacing:.12em;text-transform:uppercase;font-size:12px}
.arvaix-fieldset{border:1px solid color-mix(in srgb,var(--arvaix-fg) 12%,transparent);padding:1rem;margin:1rem 0;display:grid;gap:.6rem}
.arvaix-fieldset legend{padding:0 .4rem;letter-spacing:.12em;text-transform:uppercase;font-size:11px;color:var(--arvaix-muted)}
.arvaix-portfolio-edit{list-style:none;margin:0 0 1rem;padding:0}
.arvaix-portfolio-edit li{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center;padding:.55rem 0;border-bottom:1px solid color-mix(in srgb,var(--arvaix-fg) 10%,transparent)}
.arvaix-portfolio-edit li span{flex:1 1 12rem}
.arvaix-facts--wide{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;list-style:none;margin:0;padding:0}
.arvaix-facts--wide li{border:1px solid color-mix(in srgb,var(--arvaix-fg) 12%,transparent);padding:1rem}

.arvaix-ba{margin:1.5rem 0 2rem;container-type:inline-size}
.arvaix-ba__stage{position:relative;overflow:hidden;background:#0b0d0c;aspect-ratio:16/9;touch-action:none}
.arvaix-ba__img{display:block;width:100%;height:100%;object-fit:cover;user-select:none}
.arvaix-ba__clip{position:absolute;inset:0 50% 0 0;overflow:hidden}
.arvaix-ba[data-mode="vertical"] .arvaix-ba__clip{inset:0 0 50% 0}
.arvaix-ba__handle{position:absolute;top:0;bottom:0;left:50%;width:2px;background:var(--arvaix-accent);transform:translateX(-50%);cursor:ew-resize}
.arvaix-ba[data-mode="vertical"] .arvaix-ba__handle{top:50%;left:0;right:0;bottom:auto;width:auto;height:2px;transform:translateY(-50%);cursor:ns-resize}
.arvaix-ba__handle span{position:absolute;top:50%;left:50%;width:36px;height:36px;border-radius:50%;border:2px solid var(--arvaix-accent);background:color-mix(in srgb,var(--arvaix-bg) 80%,transparent);transform:translate(-50%,-50%)}
.arvaix-ba[data-mode="side-by-side"] .arvaix-ba__stage{display:grid;grid-template-columns:1fr 1fr;aspect-ratio:auto}
.arvaix-ba[data-mode="side-by-side"] .arvaix-ba__clip,
.arvaix-ba[data-mode="side-by-side"] .arvaix-ba__img--after{position:static;inset:auto}
.arvaix-ba[data-mode="side-by-side"] .arvaix-ba__handle{display:none}
.arvaix-ba[data-mode="toggle"] .arvaix-ba__clip{inset:0;transition:opacity .2s ease}
.arvaix-ba[data-mode="toggle"].is-after .arvaix-ba__clip{opacity:0}
.arvaix-ba[data-mode="toggle"] .arvaix-ba__handle{display:none}
.arvaix-ba.is-zoom .arvaix-ba__img{cursor:zoom-out;transform:scale(1.6);transform-origin:center}
.arvaix-ba:fullscreen,.arvaix-ba:-webkit-full-screen{width:100%;height:100%;background:#000;padding:2rem;box-sizing:border-box}
.arvaix-ba__meta{display:flex;flex-wrap:wrap;gap:.5rem 1rem;margin-top:.7rem;font-size:.85rem;color:var(--arvaix-muted)}
.arvaix-ba__tools{display:flex;flex-wrap:wrap;gap:.4rem;margin-top:.7rem}
.arvaix-ba__tools .is-active,.arvaix-ba__tools [aria-pressed="true"]{border-color:var(--arvaix-accent);color:var(--arvaix-accent)}
.arvaix-ba__handle:focus-visible{outline:2px solid var(--arvaix-accent);outline-offset:3px}

@media (prefers-reduced-motion: reduce){
  .arvaix-ba[data-mode="horizontal"],
  .arvaix-ba[data-mode="vertical"]{--ba-lock:1}
  .arvaix-ba[data-mode="toggle"] .arvaix-ba__clip{transition:none}
  .arvaix-ba.is-zoom .arvaix-ba__img{transform:none}
}
@media (max-width: 980px){
  .arvaix-creators,.arvaix-facts--wide{grid-template-columns:1fr 1fr}
}
@media (max-width: 720px){
  .arvaix-creators,.arvaix-facts--wide,.arvaix-gallery{grid-template-columns:1fr}
  .arvaix-ba[data-mode="side-by-side"] .arvaix-ba__stage{grid-template-columns:1fr}
  .arvaix-sticky-nav{top:auto;position:relative}
  .arvaix-profile__hero--cover::before{height:140px}
  .arvaix-searchform--filters{display:grid;grid-template-columns:1fr 1fr;gap:.5rem}
  .arvaix-searchform--filters .arvaix-btn{grid-column:1/-1}
}

/* --- stage8.css --- */
/* Stage 8 — creator directory, portfolio, before/after polish */
.arvaix-creator-card{
  transition:transform .2s ease, box-shadow .2s ease;
  box-shadow:0 0 0 1px color-mix(in srgb,var(--arvaix-fg) 8%,transparent);
}
.arvaix-creator-card:hover,
.arvaix-creator-card:focus-within{
  transform:translateY(-2px);
  box-shadow:0 0 0 1px color-mix(in srgb,var(--arvaix-accent) 45%,transparent);
}
.arvaix-creator-card .arvaix-btn{
  min-height:44px;
}
.arvaix-creator-card__cover{min-height:110px}
.arvaix-card__creator{
  color:var(--arvaix-accent);
  text-decoration:none;
  letter-spacing:.08em;
  text-transform:uppercase;
  font-size:11px;
}
.arvaix-card__creator:hover,
.arvaix-card__creator:focus-visible{text-decoration:underline}
.arvaix-card .arvaix-flag{
  display:inline-block;
  margin-left:.35rem;
  padding:.1rem .4rem;
  border:1px solid color-mix(in srgb,var(--arvaix-accent) 50%,transparent);
  font-size:10px;
  letter-spacing:.12em;
  text-transform:uppercase;
  color:var(--arvaix-accent);
}
.arvaix-chips--achieve{display:flex;flex-wrap:wrap;gap:.45rem;list-style:none;margin:0;padding:0}
.arvaix-chips--achieve em{
  font-style:normal;
  border:1px solid color-mix(in srgb,var(--arvaix-fg) 14%,transparent);
  padding:.35rem .7rem;
  letter-spacing:.08em;
  text-transform:uppercase;
  font-size:11px;
}
.arvaix-ba__handle{
  width:3px;
  background:var(--arvaix-fg);
  box-shadow:0 0 0 1px color-mix(in srgb,var(--arvaix-bg) 40%,transparent);
}
.arvaix-ba[data-mode="vertical"] .arvaix-ba__handle{
  height:3px;
}
.arvaix-ba__handle span{
  width:44px;height:44px;
  border-radius:50%;
  border:2px solid var(--arvaix-fg);
  background:color-mix(in srgb,var(--arvaix-bg) 72%,transparent);
  box-shadow:0 0 0 1px color-mix(in srgb,var(--arvaix-accent) 50%,transparent);
}
.arvaix-profile__hero--cover::before{
  height:280px;
  opacity:.78;
}
.arvaix-ba__tools .arvaix-btn{
  min-height:44px;
  min-width:44px;
}
.arvaix-portfolio-edit .arvaix-btn{
  min-height:44px;
}
.arvaix-ba__stage:focus-visible{
  outline:2px solid var(--arvaix-accent);
  outline-offset:3px;
}
.arvaix-ba[data-mode="toggle"] .arvaix-ba__stage{cursor:pointer}
.arvaix-ba.is-zoom .arvaix-ba__img{will-change:transform}
.arvaix-profile__hero--cover{
  min-height:280px;
}
.arvaix-searchform--filters select,
.arvaix-searchform--filters input,
.arvaix-searchform--filters button{
  min-height:44px;
}
.arvaix-form--wide input[type="file"]{padding:.4rem 0}
.arvaix-form--wide select[multiple]{min-height:6rem}
.arvaix-disclose summary{
  min-height:44px;
  display:flex;
  align-items:center;
}
@media (prefers-reduced-motion: reduce){
  .arvaix-creator-card{transition:none}
  .arvaix-creator-card:hover{transform:none}
}
@media (max-width: 720px){
  .arvaix-profile__hero--cover{min-height:200px}
  .arvaix-profile__hero--cover::before{height:200px}
  .arvaix-ba__tools{gap:.55rem}
}

/* --- stage9.css --- */
/* Stage 9 — visual layer, discovery, 404, preview, navigation */
.arvaix-brand__chip{letter-spacing:.16em}
.arvaix-header[data-layout="stacked"] .arvaix-header__inner{flex-wrap:wrap}
.arvaix-header[data-layout="stacked"] .arvaix-nav{flex:1 1 100%;order:3}
.arvaix-header[data-layout="split"] .arvaix-header__inner{display:grid;grid-template-columns:auto 1fr auto;align-items:center}
.arvaix-header[data-layout="overlay"]{position:absolute;left:0;right:0;top:0;background:transparent;z-index:8}
.arvaix-nav__list{position:relative}
.arvaix-nav .sub-menu{
  display:none;position:absolute;min-width:220px;padding:.6rem 0;margin:0;list-style:none;
  background:var(--arvaix-panel);border:1px solid color-mix(in srgb,var(--arvaix-fg) 14%,transparent);z-index:12;
}
.arvaix-nav li:hover > .sub-menu,
.arvaix-nav li:focus-within > .sub-menu{display:block}
.arvaix-nav--mega .menu-item-has-children > .sub-menu{
  left:0;right:0;min-width:min(720px,80vw);display:none;padding:1rem 1.2rem;
  grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:.4rem 1rem;
}
.arvaix-nav--mega .menu-item-has-children:hover > .sub-menu,
.arvaix-nav--mega .menu-item-has-children:focus-within > .sub-menu{display:grid}
.arvaix-utility{display:flex;flex-wrap:wrap;gap:.6rem 1rem;font-size:11px;letter-spacing:.1em;text-transform:uppercase}
.arvaix-utility a{color:var(--arvaix-muted);text-decoration:none}
.arvaix-utility a:hover,.arvaix-utility a:focus-visible{color:var(--arvaix-accent)}
.arvaix-footer[data-cols="3"] .arvaix-footer__inner{grid-template-columns:1.6fr 1fr 1fr}
.arvaix-lost .arvaix-searchform{display:flex;flex-wrap:wrap;gap:.6rem;margin:1.2rem 0}
.arvaix-lost input[type="search"]{flex:1 1 16rem;min-height:44px;background:var(--arvaix-panel);border:1px solid color-mix(in srgb,var(--arvaix-fg) 16%,transparent);color:inherit;padding:.6rem .8rem}
.arvaix-explorer,.arvaix-searchform--filters{display:flex;flex-wrap:wrap;gap:.5rem;margin:1rem 0 1.5rem;align-items:center}
.arvaix-explorer input,.arvaix-explorer select,
.arvaix-searchform--filters input,.arvaix-searchform--filters select{min-height:44px;background:var(--arvaix-panel);border:1px solid color-mix(in srgb,var(--arvaix-fg) 16%,transparent);color:inherit;padding:.45rem .7rem}
.arvaix-quotes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}
.arvaix-quotes blockquote{margin:0;padding:1rem;border:1px solid color-mix(in srgb,var(--arvaix-fg) 12%,transparent);background:var(--arvaix-panel)}
.arvaix-quotes cite{display:block;margin-top:.7rem;font-style:normal;letter-spacing:.08em;text-transform:uppercase;font-size:11px}
.arvaix-pricing{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem}
.arvaix-pricing article{border:1px solid color-mix(in srgb,var(--arvaix-fg) 12%,transparent);padding:1.2rem;background:var(--arvaix-panel)}
.arvaix-split{display:grid;grid-template-columns:1.1fr .9fr;gap:1.5rem;align-items:center}
.arvaix-fullimage{margin:0}
.arvaix-fullimage img{width:100%;height:auto}
.arvaix-embed{position:relative;aspect-ratio:16/9;background:#000}
.arvaix-embed iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.arvaix-html{max-width:var(--wide)}
.arvaix-section.has-bg-image{background-image:var(--section-image);background-size:cover;background-position:center;position:relative}
.arvaix-section.has-bg-image::before{content:"";position:absolute;inset:0;background:color-mix(in srgb,var(--arvaix-bg) calc(var(--section-overlay, .4) * 100%), transparent);pointer-events:none}
.arvaix-section.has-bg-image > *{position:relative}
.is-width-full{width:100vw;margin-left:calc(50% - 50vw);padding-left:var(--gutter);padding-right:var(--gutter)}
.is-width-narrow{max-width:42rem;margin-inline:auto}
.is-align-center{text-align:center}
.is-space-compact{padding-block:1.2rem}
.is-space-generous{padding-block:4rem}
.arvaix-vis-desktop{display:contents}
.arvaix-vis-mobile{display:none}
body.arvaix-preview--tablet .arvaix-main{max-width:820px;margin-inline:auto;border-inline:1px dashed color-mix(in srgb,var(--arvaix-accent) 35%,transparent)}
body.arvaix-preview--mobile .arvaix-main{max-width:420px;margin-inline:auto;border-inline:1px dashed color-mix(in srgb,var(--arvaix-accent) 35%,transparent)}
.arvaix-preview-card{position:fixed;inset:auto 1rem 1rem auto;max-width:360px;z-index:40;padding:1rem;background:var(--arvaix-panel);border:1px solid color-mix(in srgb,var(--arvaix-fg) 16%,transparent);box-shadow:0 12px 40px color-mix(in srgb,var(--arvaix-bg) 70%,transparent)}
.arvaix-preview-card img{width:100%;height:auto;margin:.5rem 0;aspect-ratio:1.91/1;object-fit:cover}
.arvaix-preview-card__url{font-size:11px;color:var(--arvaix-muted);letter-spacing:.04em}
.arvaix-global{margin:2rem 0}
:focus-visible{outline:2px solid var(--arvaix-accent);outline-offset:3px}
@media (max-width: 980px){
  .arvaix-quotes,.arvaix-split{grid-template-columns:1fr}
  .arvaix-vis-desktop{display:none}
  .arvaix-vis-mobile{display:contents}
  .arvaix-nav--mega .menu-item-has-children > .sub-menu{position:static;display:none;min-width:0;grid-template-columns:1fr}
  .arvaix-header[data-layout="split"] .arvaix-header__inner{display:flex}
}
@media (prefers-reduced-motion: reduce){
  .arvaix-section,.arvaix-card{transition:none}
}

/* --- stage10.css --- */
/* Stage 10 — commerce-ready UI. Dormant until .arvaix-storefront. */
body.arvaix-storefront-dormant .arvaix-buy,
body.arvaix-storefront-dormant .arvaix-price,
body.arvaix-storefront-dormant .arvaix-subscribe,
body.arvaix-storefront-dormant .arvaix-product-card,
body.arvaix-storefront-dormant .arvaix-product-compare,
body.arvaix-storefront-dormant .arvaix-catalog{display:none!important}

.arvaix-product-card{display:flex;flex-direction:column;gap:.6rem}
.arvaix-product-compare{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem}
.arvaix-price{font-size:1.4rem;letter-spacing:-.03em}
.arvaix-license{border:1px solid color-mix(in srgb,var(--arvaix-fg) 12%,transparent);padding:1rem;margin:1rem 0;background:var(--arvaix-panel)}
.arvaix-portal__list{list-style:none;margin:0;padding:0}
.arvaix-portal__list li{padding:.7rem 0;border-bottom:1px solid color-mix(in srgb,var(--arvaix-fg) 10%,transparent)}
.arvaix-int-list{list-style:none;margin:0 0 1rem;padding:0}
.arvaix-int-list li{padding:.45rem 0;border-bottom:1px solid color-mix(in srgb,var(--arvaix-fg) 10%,transparent);font-size:.95rem}
.arvaix-int-list code{font-size:10px;letter-spacing:.12em;margin-right:.4rem}
.arvaix-commerce-dormant{border:1px solid color-mix(in srgb,var(--arvaix-fg) 12%,transparent);padding:1.2rem 1.4rem;background:var(--arvaix-panel)}
.arvaix-admin-note{font-size:.85rem;color:var(--arvaix-muted)}
.arvaix-product-support{display:grid;gap:1.4rem}
.arvaix-product-meta{display:flex;flex-wrap:wrap;gap:.5rem 1rem;font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--arvaix-muted)}
.arvaix-bundle-members{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:1rem}
.arvaix-download-center{border:1px solid color-mix(in srgb,var(--arvaix-fg) 12%,transparent);padding:1rem}
.arvaix-flag-not-sale{display:inline-block;letter-spacing:.14em;text-transform:uppercase;font-size:11px;color:var(--arvaix-muted);border:1px solid color-mix(in srgb,var(--arvaix-fg) 16%,transparent);padding:.25rem .55rem}

@media(max-width:720px){
  .arvaix-product-compare,.arvaix-bundle-members{grid-template-columns:1fr}
}

