:root {
  --nasw-cyan: #00f5ff;
  --nasw-violet: #9b5de5;
  --nasw-amber: #f5a623;
  --nasw-silver: #c0cfe0;
  --nasw-white: #f0f8ff;
  --nasw-void: #020408;
  --nasw-deep: #06111d;
  --nasw-text: rgba(240, 248, 255, 0.92);
  --nasw-copy: rgba(192, 207, 224, 0.78);
  --nasw-copy-soft: rgba(192, 207, 224, 0.56);
  --nasw-line: rgba(0, 245, 255, 0.14);
  --nasw-line-strong: rgba(0, 245, 255, 0.3);
  --nasw-radius: 28px;
  --nasw-shadow: 0 40px 120px rgba(0, 0, 0, 0.42);
}

* {
  box-sizing: border-box;
}

html {
  scroll-behavior: smooth;
}

body.notasim-world-shell {
  margin: 0;
  min-height: 100vh;
  color: var(--nasw-text);
  background:
    radial-gradient(circle at 20% 10%, rgba(0, 245, 255, 0.08), transparent 28%),
    radial-gradient(circle at 80% 0%, rgba(155, 93, 229, 0.1), transparent 26%),
    radial-gradient(circle at 50% 100%, rgba(245, 166, 35, 0.06), transparent 24%),
    linear-gradient(180deg, #020408 0%, #050b12 42%, #020408 100%);
  font-family: 'Space Grotesk', sans-serif;
  overflow-x: hidden;
}

body.notasim-world-shell::before {
  content: '';
  position: fixed;
  inset: 0;
  pointer-events: none;
  background-image:
    linear-gradient(rgba(0, 245, 255, 0.022) 1px, transparent 1px),
    linear-gradient(90deg, rgba(0, 245, 255, 0.022) 1px, transparent 1px);
  background-size: 68px 68px;
  mask-image: radial-gradient(circle at center, rgba(0, 0, 0, 0.86), transparent 100%);
  z-index: 0;
}

body.notasim-world-shell.nasw-reduced-motion {
  scroll-behavior: auto;
}

img,
svg,
canvas {
  max-width: 100%;
}

.nasw-webgl-backdrop {
  position: fixed;
  inset: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
  z-index: 0;
}

.nasw-site-frame {
  position: relative;
  z-index: 1;
}

.nasw-site-noise {
  position: fixed;
  inset: 0;
  pointer-events: none;
  z-index: 1;
  opacity: 0.24;
  background-image: radial-gradient(circle at center, rgba(255, 255, 255, 0.08) 0.5px, transparent 0.6px);
  background-size: 16px 16px;
  mix-blend-mode: screen;
}

.nasw-shell {
  width: min(1180px, calc(100% - 2rem));
  margin: 0 auto;
}

.nasw-site-header {
  position: sticky;
  top: 0;
  z-index: 30;
  padding: 1rem 0;
  transition: background 0.4s ease, backdrop-filter 0.4s ease, border-color 0.4s ease;
}

.nasw-site-header.is-anchored {
  background: rgba(2, 4, 8, 0.7);
  backdrop-filter: blur(18px);
  border-bottom: 1px solid rgba(0, 245, 255, 0.08);
}

.nasw-site-header__inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
}

.nasw-mark {
  display: inline-flex;
  align-items: center;
  gap: 0.9rem;
  color: inherit;
  text-decoration: none;
}

.nasw-mark__crest {
  display: grid;
  place-items: center;
  width: 54px;
  height: 54px;
  border-radius: 50%;
  border: 1px solid rgba(0, 245, 255, 0.28);
  background: radial-gradient(circle at 50% 30%, rgba(0, 245, 255, 0.18), rgba(255, 255, 255, 0.02));
  box-shadow: inset 0 0 40px rgba(255, 255, 255, 0.05), 0 0 24px rgba(0, 245, 255, 0.12);
  font-family: 'Space Mono', monospace;
  letter-spacing: 0.1em;
  font-size: 0.98rem;
}

.nasw-mark__text {
  display: grid;
  gap: 0.16rem;
}

.nasw-mark__text strong {
  font-family: 'Cinzel', serif;
  font-weight: 500;
  letter-spacing: 0.04em;
}

.nasw-mark__text small {
  color: var(--nasw-copy-soft);
  font-size: 0.7rem;
  text-transform: uppercase;
  letter-spacing: 0.18em;
}

.nasw-site-nav__menu {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 1.2rem;
  list-style: none;
  margin: 0;
  padding: 0;
}

.nasw-site-nav__menu a,
.nasw-header-cta,
.nasw-button,
.nasw-ghost-button,
.nasw-link-button,
.nasw-protocol-button {
  text-decoration: none;
}

.nasw-site-nav__menu a {
  color: var(--nasw-copy-soft);
  font-family: 'Space Mono', monospace;
  font-size: 0.68rem;
  letter-spacing: 0.24em;
  text-transform: uppercase;
  transition: color 0.3s ease;
}

.nasw-site-nav__menu a:hover,
.nasw-site-nav__menu .current_page_item > a,
.nasw-site-nav__menu .current-menu-item > a {
  color: var(--nasw-cyan);
}

.nasw-header-cta,
.nasw-button,
.nasw-ghost-button,
.nasw-protocol-button,
.nasw-link-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.55rem;
  min-height: 48px;
  padding: 0.9rem 1.5rem;
  border-radius: 999px;
  cursor: pointer;
  font-family: 'Space Mono', monospace;
  font-size: 0.72rem;
  text-transform: uppercase;
  letter-spacing: 0.24em;
  transition: transform 0.3s ease, color 0.3s ease, border-color 0.3s ease, background 0.3s ease, box-shadow 0.3s ease;
}

.nasw-header-cta,
.nasw-button,
.nasw-protocol-button {
  color: var(--nasw-cyan);
  border: 1px solid rgba(0, 245, 255, 0.28);
  background: rgba(0, 245, 255, 0.05);
  box-shadow: 0 0 24px rgba(0, 245, 255, 0.08);
}

.nasw-button--amber,
.nasw-protocol-button--amber {
  color: var(--nasw-amber);
  border-color: rgba(245, 166, 35, 0.34);
  background: rgba(245, 166, 35, 0.05);
  box-shadow: 0 0 24px rgba(245, 166, 35, 0.08);
}

.nasw-ghost-button,
.nasw-link-button {
  color: var(--nasw-silver);
  border: 1px solid rgba(192, 207, 224, 0.18);
  background: rgba(255, 255, 255, 0.03);
}

.nasw-header-cta:hover,
.nasw-button:hover,
.nasw-ghost-button:hover,
.nasw-link-button:hover,
.nasw-protocol-button:hover {
  transform: translateY(-2px);
}

.nasw-header-cta.is-disabled,
.nasw-button.is-disabled,
.nasw-ghost-button.is-disabled,
.nasw-link-button.is-disabled,
.nasw-protocol-button.is-disabled,
.nasw-button:disabled,
.nasw-protocol-button:disabled {
  pointer-events: none;
  opacity: 0.32;
  filter: saturate(0.6);
  box-shadow: none;
  transform: none;
}

.nasw-site-main {
  position: relative;
  z-index: 2;
}

[data-glass-window],
.nase-panel,
.nase-branch-card,
.nase-metric-card,
.nasw-entry-card,
.nasw-create-panel,
.nasw-ics-panel,
.nasw-seal,
.nasw-meta-cell,
.nasw-mini-card,
.nasw-route-card,
.nasw-measure-card,
.nasw-stat-card,
.nasw-generic-panel {
  --nasw-window-progress: 0;
  position: relative;
  overflow: hidden;
  border-radius: var(--nasw-radius);
  border: 1px solid rgba(0, 245, 255, calc(0.12 + var(--nasw-window-progress) * 0.18));
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.1), rgba(255, 255, 255, 0.015)),
    linear-gradient(135deg, rgba(0, 245, 255, 0.05), rgba(155, 93, 229, 0.035) 50%, rgba(245, 166, 35, 0.03)),
    rgba(2, 6, 12, calc(0.52 + (1 - var(--nasw-window-progress)) * 0.18));
  backdrop-filter: blur(calc(18px + var(--nasw-window-progress) * 10px)) saturate(calc(1 + var(--nasw-window-progress) * 0.18));
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.08),
    inset 0 0 calc(24px + var(--nasw-window-progress) * 28px) rgba(0, 245, 255, calc(0.03 + var(--nasw-window-progress) * 0.05)),
    0 30px 80px rgba(0, 0, 0, 0.35);
  transform:
    translate3d(0, calc((1 - var(--nasw-window-progress)) * 30px), 0)
    scale(calc(0.92 + var(--nasw-window-progress) * 0.08));
  filter:
    blur(calc((1 - var(--nasw-window-progress)) * 14px))
    saturate(calc(0.76 + var(--nasw-window-progress) * 0.34));
  clip-path: inset(calc((1 - var(--nasw-window-progress)) * 12%) round calc(22px + var(--nasw-window-progress) * 14px));
  opacity: calc(0.72 + var(--nasw-window-progress) * 0.28);
  transition: none;
  will-change: transform, filter, clip-path;
}

[data-glass-window]::before,
.nase-panel::before,
.nase-branch-card::before,
.nase-metric-card::before,
.nasw-entry-card::before,
.nasw-create-panel::before,
.nasw-ics-panel::before,
.nasw-generic-panel::before {
  content: '';
  position: absolute;
  inset: 0;
  pointer-events: none;
  background:
    linear-gradient(120deg, rgba(255, 255, 255, 0.12), transparent 26%, transparent 74%, rgba(0, 245, 255, 0.05)),
    radial-gradient(circle at top right, rgba(255, 255, 255, 0.12), transparent 26%);
  opacity: calc(0.28 + var(--nasw-window-progress) * 0.44);
}

[data-glass-window]::after,
.nase-panel::after,
.nase-branch-card::after,
.nase-metric-card::after,
.nasw-entry-card::after,
.nasw-create-panel::after,
.nasw-ics-panel::after,
.nasw-generic-panel::after {
  content: '';
  position: absolute;
  inset: 12px;
  pointer-events: none;
  border-radius: calc(var(--nasw-radius) - 10px);
  border: 1px solid rgba(255, 255, 255, calc(0.05 + var(--nasw-window-progress) * 0.08));
  box-shadow:
    inset 0 0 calc(18px + var(--nasw-window-progress) * 18px) rgba(0, 245, 255, calc(0.02 + var(--nasw-window-progress) * 0.08)),
    0 0 calc(12px + var(--nasw-window-progress) * 18px) rgba(0, 245, 255, calc(0.02 + var(--nasw-window-progress) * 0.05));
}

[data-window-tone='amber'],
.nasw-window--amber {
  border-color: rgba(245, 166, 35, calc(0.14 + var(--nasw-window-progress) * 0.18));
}

[data-window-tone='violet'],
.nasw-window--violet {
  border-color: rgba(155, 93, 229, calc(0.14 + var(--nasw-window-progress) * 0.18));
}

[data-window-tone='silver'],
.nasw-window--silver {
  border-color: rgba(192, 207, 224, calc(0.12 + var(--nasw-window-progress) * 0.16));
}

[data-window-tone='amber']::after,
.nasw-window--amber::after {
  box-shadow: inset 0 0 28px rgba(245, 166, 35, calc(0.03 + var(--nasw-window-progress) * 0.08));
}

[data-window-tone='violet']::after,
.nasw-window--violet::after {
  box-shadow: inset 0 0 28px rgba(155, 93, 229, calc(0.03 + var(--nasw-window-progress) * 0.08));
}

[data-glass-window] > *,
.nase-panel > *,
.nase-branch-card > *,
.nase-metric-card > *,
.nasw-entry-card > *,
.nasw-create-panel > *,
.nasw-ics-panel > *,
.nasw-generic-panel > * {
  position: relative;
  z-index: 2;
}

[data-glass-window] :where(h1, h2, h3, h4, p, li, div, span, a, strong, small, label, table, ul, ol),
.nase-panel :where(h1, h2, h3, h4, p, li, div, span, a, strong, small),
.nasw-entry-card :where(h1, h2, h3, h4, p, li, div, span, a, strong, small) {
  filter: blur(calc((1 - var(--nasw-window-progress)) * 10px));
  transform: translate3d(0, calc((1 - var(--nasw-window-progress)) * 16px), 0);
  transition: none;
}

.nasw-kicker,
.nasw-doc-label,
.nasw-part-num,
.nasw-meta-label,
.nasw-section-tag,
.nasw-status-pill,
.nasw-note-label,
.nase-panel__eyebrow,
.nase-pill,
.nasw-floating-label {
  font-family: 'Space Mono', monospace;
  font-size: 0.64rem;
  line-height: 1.4;
  letter-spacing: 0.32em;
  text-transform: uppercase;
}

.nasw-landing,
.nasw-create-stage,
.nasw-ics-stage,
.nasw-manifesto-stage,
.nasw-generic-stage {
  padding: 3.5rem 0 6rem;
}

.nasw-landing__hero,
.nasw-create-stage__hero,
.nasw-ics-stage__hero,
.nasw-manifesto-stage__hero {
  padding-top: 4.5rem;
  padding-bottom: 2rem;
  text-align: center;
}

.nasw-hero-frequency,
.nasw-glyph,
.nasw-manifesto-mark {
  display: inline-block;
  font-family: 'Space Mono', monospace;
  color: var(--nasw-cyan);
  letter-spacing: 0.3em;
  text-shadow: 0 0 26px rgba(0, 245, 255, 0.45), 0 0 80px rgba(0, 245, 255, 0.16);
}

.nasw-hero-frequency,
.nasw-manifesto-mark {
  font-size: clamp(1.7rem, 4vw, 3.6rem);
}

.nasw-glyph {
  font-size: clamp(2.2rem, 4.4vw, 4.2rem);
}

.nasw-hero-title,
.nasw-page-title,
.nasw-doc-title,
.nasw-create-title,
.nasw-ics-title,
.nasw-manifesto-title,
.nasw-entry-title,
.nase-panel__title {
  margin: 0;
  font-family: 'Cinzel', serif;
  font-weight: 500;
  line-height: 1.02;
  letter-spacing: 0.05em;
  color: var(--nasw-white);
}

.nasw-hero-title,
.nasw-doc-title,
.nasw-create-title,
.nasw-ics-title,
.nasw-manifesto-title {
  font-size: clamp(2.4rem, 6vw, 5.6rem);
}

.nasw-page-subtitle,
.nasw-doc-copy,
.nasw-create-copy,
.nasw-ics-copy,
.nasw-manifesto-copy,
.nasw-copy,
.nase-panel__copy,
.nase-panel__content,
.nasw-footer-copy,
.nasw-footer-meta {
  color: var(--nasw-copy);
}

.nasw-page-subtitle,
.nasw-doc-copy,
.nasw-create-copy,
.nasw-ics-copy,
.nasw-manifesto-copy,
.nasw-copy,
.nasw-entry-content,
.nase-panel__copy,
.nase-panel__content {
  font-family: 'EB Garamond', serif;
  font-size: clamp(1.02rem, 1.55vw, 1.18rem);
  line-height: 1.9;
}

.nasw-page-subtitle {
  max-width: 720px;
  margin: 1rem auto 0;
}

.nasw-kicker {
  color: rgba(0, 245, 255, 0.54);
  margin-bottom: 1rem;
}

.nasw-doc-shell,
.nasw-manifesto-shell,
.nasw-create-shell,
.nasw-ics-shell,
.nasw-generic-shell {
  display: grid;
  gap: 1.2rem;
}

.nasw-doc-head,
.nasw-manifesto-head,
.nasw-create-panel,
.nasw-ics-panel,
.nasw-generic-panel,
.nase-panel,
.nase-branch-card,
.nase-metric-card,
.nasw-entry-card {
  padding: clamp(1.4rem, 2.2vw, 2.4rem);
}

.nasw-doc-head__grid,
.nasw-hero-meta,
.nasw-route-grid,
.nasw-mini-grid,
.nasw-stat-grid,
.nasw-measure-grid,
.nase-metric-grid,
.nase-branch-grid {
  display: grid;
  gap: 1rem;
}

.nasw-doc-head__grid {
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: start;
}

.nasw-doc-label,
.nasw-section-tag,
.nasw-meta-label,
.nasw-note-label,
.nasw-status-pill,
.nase-panel__eyebrow,
.nase-pill {
  color: var(--nasw-cyan);
  opacity: 0.68;
}

.nasw-doc-subtitle,
.nasw-create-subtitle,
.nasw-ics-subtitle,
.nasw-manifesto-subtitle {
  font-family: 'Space Mono', monospace;
  font-size: 0.72rem;
  letter-spacing: 0.28em;
  text-transform: uppercase;
  color: rgba(155, 93, 229, 0.82);
  margin-top: 0.75rem;
}

.nasw-seal {
  width: 104px;
  height: 104px;
  display: grid;
  place-items: center;
  align-content: center;
  gap: 0.24rem;
  text-align: center;
}

.nasw-seal__glyph {
  font-family: 'Space Mono', monospace;
  color: var(--nasw-cyan);
  font-size: 1.8rem;
}

.nasw-seal__copy {
  font-family: 'Space Mono', monospace;
  font-size: 0.52rem;
  letter-spacing: 0.18em;
  color: var(--nasw-copy-soft);
  line-height: 1.7;
  text-transform: uppercase;
}

.nasw-meta-grid,
.nasw-hero-meta,
.nasw-stat-grid,
.nasw-route-grid,
.nasw-mini-grid,
.nasw-measure-grid {
  grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
}

.nasw-meta-cell,
.nasw-stat-card,
.nasw-route-card,
.nasw-mini-card,
.nasw-measure-card {
  padding: 1rem 1.1rem;
}

.nasw-meta-label {
  color: rgba(192, 207, 224, 0.54);
  margin-bottom: 0.45rem;
}

.nasw-meta-value,
.nasw-stat-value,
.nasw-route-title,
.nasw-measure-title {
  font-family: 'Space Mono', monospace;
  color: var(--nasw-white);
  font-size: 0.9rem;
  line-height: 1.6;
}

.nasw-stat-value {
  font-size: 1.5rem;
}

.nasw-stat-copy,
.nasw-route-copy,
.nasw-measure-copy,
.nasw-note-copy {
  color: var(--nasw-copy-soft);
  font-family: 'EB Garamond', serif;
  font-size: 0.98rem;
  line-height: 1.8;
}

.nasw-protocol-part {
  display: grid;
  gap: 1rem;
}

.nasw-part-head {
  display: flex;
  align-items: center;
  gap: 1rem;
}

.nasw-part-num {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 112px;
  padding: 0.55rem 0.9rem;
  border-radius: 999px;
  border: 1px solid rgba(0, 245, 255, 0.14);
  background: rgba(0, 245, 255, 0.05);
  color: rgba(0, 245, 255, 0.82);
}

.nasw-part-title,
.nasw-section-title,
.nasw-route-title,
.nasw-measure-title,
.nase-panel__title,
.nasw-footer-title {
  font-family: 'Cinzel', serif;
  color: var(--nasw-white);
  font-weight: 500;
  line-height: 1.25;
}

.nasw-part-title {
  font-size: clamp(1.28rem, 2vw, 1.9rem);
}

.nasw-section-title,
.nase-panel__title {
  font-size: clamp(1.18rem, 1.8vw, 1.7rem);
}

.nasw-section-tag {
  display: flex;
  align-items: center;
  gap: 0.8rem;
  color: rgba(0, 245, 255, 0.62);
}

.nasw-section-tag::after {
  content: '';
  flex: 1;
  height: 1px;
  background: linear-gradient(90deg, rgba(0, 245, 255, 0.2), transparent);
}

.nasw-copy p + p,
.nasw-entry-content p + p,
.nase-panel__copy + .nase-panel__content,
.nasw-create-copy p + p,
.nasw-ics-copy p + p,
.nasw-manifesto-copy p + p {
  margin-top: 1rem;
}

.nasw-anchors,
.nasw-derived,
.nasw-flow-grid {
  display: grid;
  gap: 0.75rem;
  margin-top: 1rem;
}

.nasw-anchors,
.nasw-flow-grid {
  grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
}

.nasw-derived {
  grid-template-columns: repeat(auto-fit, minmax(160px, 1fr));
}

.nasw-anchor-item,
.nasw-derived-item,
.nasw-flow-card,
.nasw-note-box {
  padding: 1rem 1.1rem;
  border-radius: 20px;
  border: 1px solid rgba(0, 245, 255, 0.14);
  background: rgba(0, 245, 255, 0.04);
}

.nasw-anchor-item,
.nasw-derived-item,
.nasw-flow-card,
.nasw-note-box,
.nasw-route-copy,
.nasw-measure-copy,
.nase-panel__copy,
.nase-panel__content {
  color: var(--nasw-copy);
}

.nasw-anchor-item,
.nasw-derived-item,
.nasw-flow-card {
  font-family: 'EB Garamond', serif;
  font-size: 1rem;
  line-height: 1.75;
}

label.nasw-anchor-item {
  display: flex;
  align-items: flex-start;
  gap: 0.85rem;
  cursor: pointer;
}

label.nasw-anchor-item input {
  flex: 0 0 auto;
  margin-top: 0.35rem;
  accent-color: var(--nasw-cyan);
}

.nasw-bullets,
.nasw-entry-content ul,
.nasw-entry-content ol {
  margin: 1rem 0 0;
  padding: 0;
  list-style: none;
  display: grid;
  gap: 0.7rem;
}

.nasw-bullets li,
.nasw-entry-content ul li,
.nasw-entry-content ol li {
  position: relative;
  padding-left: 1.7rem;
  color: var(--nasw-copy);
  font-family: 'EB Garamond', serif;
  font-size: 1rem;
  line-height: 1.82;
}

.nasw-bullets li::before,
.nasw-entry-content ul li::before,
.nasw-entry-content ol li::before {
  content: '▪';
  position: absolute;
  left: 0;
  top: 0;
  color: var(--nasw-cyan);
}

.nasw-quote {
  padding: 1.5rem 1.8rem;
  border-left: 2px solid rgba(155, 93, 229, 0.55);
  background: rgba(155, 93, 229, 0.05);
  font-family: 'EB Garamond', serif;
  font-size: 1.12rem;
  font-style: italic;
  line-height: 1.9;
  color: rgba(240, 248, 255, 0.82);
}

.nasw-quote cite {
  display: block;
  margin-top: 1rem;
  font-family: 'Space Mono', monospace;
  font-size: 0.62rem;
  font-style: normal;
  color: rgba(155, 93, 229, 0.64);
  letter-spacing: 0.2em;
  text-transform: uppercase;
}

.nasw-cta-wrap,
.nasw-actions,
.nasw-create-actions,
.nasw-ics-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 0.9rem;
  align-items: center;
}

.nasw-create-actions,
.nasw-ics-actions {
  margin-top: 1.4rem;
}

.nasw-doc-tail {
  display: grid;
  gap: 1rem;
}

.nasw-acknowledgement {
  padding: clamp(1.5rem, 2vw, 2.2rem);
}

.nasw-acknowledgement__title {
  margin: 0 0 0.9rem;
  font-family: 'Cinzel', serif;
  font-size: clamp(1.22rem, 2vw, 1.9rem);
  color: var(--nasw-white);
}

.nasw-create-panel,
.nasw-ics-panel,
.nasw-generic-panel,
.nasw-entry-card {
  display: grid;
  gap: 1rem;
}

.nasw-create-layout,
.nasw-ics-layout,
.nasw-manifesto-layout {
  display: grid;
  grid-template-columns: minmax(0, 0.95fr) minmax(320px, 0.75fr);
  gap: 1.25rem;
}

.nasw-field-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0.8rem;
}

.nasw-form-stack {
  display: grid;
  gap: 1rem;
}

.nasw-field,
.nasw-textarea {
  width: 100%;
  min-height: 54px;
  padding: 0.95rem 1rem;
  border-radius: 18px;
  border: 1px solid rgba(0, 245, 255, 0.16);
  background: rgba(0, 0, 0, 0.34);
  color: var(--nasw-white);
  font-family: 'Space Grotesk', sans-serif;
  font-size: 0.96rem;
  outline: none;
  transition: border-color 0.3s ease, box-shadow 0.3s ease;
}

.nasw-textarea {
  min-height: 140px;
  resize: vertical;
}

.nasw-field:focus,
.nasw-textarea:focus {
  border-color: rgba(0, 245, 255, 0.36);
  box-shadow: 0 0 18px rgba(0, 245, 255, 0.08);
}

.nasw-field::placeholder,
.nasw-textarea::placeholder {
  color: rgba(192, 207, 224, 0.28);
}

.nasw-divider {
  width: 96px;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(0, 245, 255, 0.72), transparent);
}

.nasw-ics-orbits {
  position: relative;
  width: min(420px, 78vw);
  aspect-ratio: 1;
  margin: 0 auto;
}

.nasw-orbit {
  position: absolute;
  inset: 50% auto auto 50%;
  border-radius: 50%;
  border: 1px solid rgba(0, 245, 255, 0.18);
  transform: translate(-50%, -50%);
  animation: naswOrbit 28s linear infinite;
}

.nasw-orbit--one { width: 100%; height: 100%; }
.nasw-orbit--two { width: 78%; height: 78%; animation-duration: 18s; animation-direction: reverse; }
.nasw-orbit--three { width: 56%; height: 56%; border-color: rgba(245, 166, 35, 0.22); animation-duration: 14s; }
.nasw-orbit--four { width: 34%; height: 34%; border-color: rgba(155, 93, 229, 0.24); animation-duration: 9s; animation-direction: reverse; }

@keyframes naswOrbit {
  from { transform: translate(-50%, -50%) rotate(0deg); }
  to { transform: translate(-50%, -50%) rotate(360deg); }
}

.nasw-orbit::before {
  content: '';
  position: absolute;
  top: -4px;
  left: 50%;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  transform: translateX(-50%);
  background: currentColor;
  box-shadow: 0 0 16px currentColor;
}

.nasw-orbit--one,
.nasw-orbit--two { color: var(--nasw-cyan); }
.nasw-orbit--three { color: var(--nasw-amber); }
.nasw-orbit--four { color: var(--nasw-violet); }

.nasw-core {
  position: absolute;
  inset: 50% auto auto 50%;
  transform: translate(-50%, -50%);
  width: 98px;
  height: 98px;
  display: grid;
  place-items: center;
}

.nasw-core__pulse {
  width: 72px;
  height: 72px;
  border-radius: 50%;
  display: grid;
  place-items: center;
  background: radial-gradient(circle, rgba(0, 245, 255, 0.28), rgba(0, 245, 255, 0.08), transparent 72%);
  box-shadow: 0 0 32px rgba(0, 245, 255, 0.18), 0 0 80px rgba(0, 245, 255, 0.12);
  animation: naswCorePulse 3.4s ease-in-out infinite;
}

@keyframes naswCorePulse {
  0%, 100% {
    transform: scale(0.92);
    box-shadow: 0 0 28px rgba(0, 245, 255, 0.18), 0 0 72px rgba(0, 245, 255, 0.12);
  }
  50% {
    transform: scale(1.12);
    box-shadow: 0 0 42px rgba(0, 245, 255, 0.34), 0 0 110px rgba(0, 245, 255, 0.18);
  }
}

.nasw-core__label {
  font-family: 'Space Mono', monospace;
  font-size: 0.7rem;
  letter-spacing: 0.24em;
  color: var(--nasw-cyan);
  text-transform: uppercase;
}

.nasw-status-strip {
  display: inline-flex;
  align-items: center;
  gap: 0.8rem;
  padding: 0.8rem 1.2rem;
  border-radius: 999px;
  border: 1px solid rgba(0, 245, 255, 0.14);
  background: rgba(0, 245, 255, 0.04);
  font-family: 'Space Mono', monospace;
  font-size: 0.7rem;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--nasw-cyan);
}

.nasw-status-strip__dot {
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background: currentColor;
  box-shadow: 0 0 14px currentColor;
}

.nasw-manifesto-grid {
  display: grid;
  grid-template-columns: minmax(0, 0.75fr) minmax(300px, 0.85fr);
  gap: 1.25rem;
}

.nasw-measure-card__value {
  font-family: 'Space Mono', monospace;
  font-size: 1.65rem;
  color: var(--nasw-cyan);
}

.nasw-entry-content > * {
  max-width: 100%;
}

.nasw-entry-content > * + * {
  margin-top: 1rem;
}

.nase-panel__row {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 0.8rem;
}

.nase-pill--status {
  color: var(--nasw-amber);
}

.nase-metric-grid,
.nase-branch-grid {
  margin-top: 1.1rem;
}

.nase-metric-card span {
  display: block;
  font-family: 'Space Mono', monospace;
  font-size: 0.62rem;
  color: var(--nasw-copy-soft);
  letter-spacing: 0.22em;
  text-transform: uppercase;
}

.nase-metric-card strong {
  display: block;
  margin-top: 0.45rem;
  font-family: 'Space Mono', monospace;
  font-size: 1.5rem;
  color: var(--nasw-white);
}

.nasw-site-footer {
  position: relative;
  z-index: 2;
  padding: 0 0 2rem;
}

.nasw-site-footer__inner {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  padding: 1.1rem 1.4rem;
}

.nasw-footer-title {
  margin: 0;
  font-size: 1.12rem;
}

.nasw-footer-copy,
.nasw-footer-meta {
  font-size: 0.96rem;
}

.nasw-footer-meta {
  display: grid;
  gap: 0.35rem;
  text-align: right;
}

.nasw-cursor-dot,
.nasw-cursor-ring {
  position: fixed;
  pointer-events: none;
  z-index: 45;
  transform: translate(-50%, -50%);
  mix-blend-mode: screen;
}

.nasw-cursor-dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: rgba(0, 245, 255, 0.96);
  box-shadow: 0 0 18px rgba(0, 245, 255, 0.6);
}

.nasw-cursor-ring {
  width: 34px;
  height: 34px;
  border-radius: 50%;
  border: 1px solid rgba(0, 245, 255, 0.36);
}

@media (max-width: 1080px) {
  .nasw-create-layout,
  .nasw-ics-layout,
  .nasw-manifesto-grid,
  .nasw-doc-head__grid {
    grid-template-columns: 1fr;
  }

  .nasw-footer-meta {
    text-align: left;
  }
}

@media (max-width: 760px) {
  .nasw-shell {
    width: min(100% - 1rem, 1180px);
  }

  .nasw-site-header__inner {
    flex-direction: column;
    align-items: flex-start;
  }

  .nasw-field-grid,
  .nasw-meta-grid,
  .nasw-hero-meta,
  .nasw-route-grid,
  .nasw-mini-grid,
  .nasw-stat-grid,
  .nasw-measure-grid,
  .nase-metric-grid,
  .nase-branch-grid,
  .nasw-anchors,
  .nasw-derived,
  .nasw-flow-grid {
    grid-template-columns: 1fr;
  }

  .nasw-site-nav {
    width: 100%;
  }

  .nasw-site-nav__menu {
    gap: 0.75rem;
  }

  .nasw-landing,
  .nasw-create-stage,
  .nasw-ics-stage,
  .nasw-manifesto-stage,
  .nasw-generic-stage {
    padding-top: 2.2rem;
  }

  .nasw-doc-head,
  .nasw-manifesto-head,
  .nasw-create-panel,
  .nasw-ics-panel,
  .nasw-generic-panel,
  .nase-panel,
  .nase-branch-card,
  .nase-metric-card,
  .nasw-entry-card,
  .nasw-acknowledgement {
    padding: 1.25rem;
  }

  .nasw-part-head {
    flex-direction: column;
    align-items: flex-start;
  }

  .nasw-cursor-dot,
  .nasw-cursor-ring {
    display: none;
  }
}

@media (prefers-reduced-motion: reduce) {
  .nasw-orbit,
  .nasw-core__pulse {
    animation: none;
  }

  [data-glass-window],
  .nase-panel,
  .nase-branch-card,
  .nase-metric-card,
  .nasw-entry-card,
  .nasw-create-panel,
  .nasw-ics-panel,
  .nasw-generic-panel {
    transform: none;
    filter: none;
    clip-path: none;
    opacity: 1;
  }

  [data-glass-window] :where(h1, h2, h3, h4, p, li, div, span, a, strong, small, label, table, ul, ol),
  .nase-panel :where(h1, h2, h3, h4, p, li, div, span, a, strong, small),
  .nasw-entry-card :where(h1, h2, h3, h4, p, li, div, span, a, strong, small) {
    filter: none;
    transform: none;
  }
}
