/* Shared site skin: mirrors the palette, dotted frame, and glass surfaces of the homepage. */
:root {
  --purple: #c298ea;
  --accent: #bd5e59;
  --card: #000000;
  --tile: #2b2b2b;
  --tile-hover: #363636;
  --line: #262626;
  --text: #ffffff;
  --body: #d4d4d4;
  --muted: #a0a0a0;
  --nav-glass: rgba(14, 12, 18, 0.50);
  --nav-glass-scrolled: rgba(14, 12, 18, 0.64);
  --nav-border: rgba(255, 255, 255, 0.14);
  --nav-menu-bg: rgba(14, 12, 18, 0.95);
  --canvas: var(--purple);
  --canvas2: var(--tile);
  --ink: var(--text);
  --ink2: var(--body);
  --red: var(--accent);
  --blue: #8b75d7;
  --green: #66c895;
  --shadow-c: rgba(0, 0, 0, 0.3);
  color-scheme: dark;
}
:root[data-theme="light"], :root[data-theme="white"] {
  --purple: #c298ea;
  --accent: #0a0110;
  --card: #ffffff;
  --tile: #f3eef8;
  --tile-hover: #e8dff2;
  --line: #e7e2ee;
  --text: #17141c;
  --body: #423f47;
  --muted: #79747f;
  --canvas: var(--purple);
  --canvas2: var(--tile);
  --ink: var(--text);
  --ink2: var(--body);
  --red: #bd5e59;
  --blue: #7460bd;
  --green: #388a62;
  --shadow-c: rgba(0, 0, 0, 0.24);
  color-scheme: light;
}
html { background: var(--purple); }
body {
  color: var(--text);
  background-color: var(--purple) !important;
  background-image: radial-gradient(rgba(0, 0, 0, 0.16) 1.6px, transparent 1.6px) !important;
  background-size: 26px 26px !important;
  animation: site-dot-drift 16s linear infinite;
  font-family: "Inter", system-ui, -apple-system, "Segoe UI", Arial, sans-serif !important;
}
body::before { content: none !important; }
@keyframes site-dot-drift {
  from { background-position: 0 0; }
  to { background-position: 26px 26px; }
}
main, .error-card, .status-card, .summary, .svc, .notice, .privacy,
.blog-card, .post-card, .doc-content, .paper-card, .modal, .legend,
.profile-card {
  color: var(--text);
  border-color: var(--line) !important;
  border-radius: 0.75rem !important;
  box-shadow: 0 12px 32px rgba(0, 0, 0, 0.22) !important;
}
main, .error-card, .status-card, .summary, .svc, .notice, .privacy,
.blog-card, .post-card, .doc-content, .paper-card, .modal, .legend {
  background-color: var(--card) !important;
}
button, input, textarea, select, .theme-switch, .theme-toggle, .btn,
.nav-links, .nav-links.open, .support-fab, .blog-tag, .svc-state,
.theme-knob, .theme-toggle-thumb { border-radius: 0.5rem !important; }
.nav-inner {
  color: #fff !important;
  background-color: var(--nav-glass) !important;
  border: 1px solid var(--nav-border) !important;
  border-radius: 1.1rem !important;
  box-shadow: 0 12px 32px rgba(0, 0, 0, 0.3), inset 0 1px 0 rgba(255, 255, 255, 0.22) !important;
}
.brand, .nav-brand, .nav-links a, .nav-toggle { color: var(--text) !important; }
.nav-links a:hover, .nav-links a.active { color: var(--text) !important; }
nav:not(.nav) { color: var(--text); border-color: var(--line); }
footer, .footer { color: var(--muted); }
a { color: var(--accent); }
a:hover { color: var(--text); }
:focus-visible { outline-color: var(--accent) !important; }
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { scroll-behavior: auto !important; animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; }
}

