/* ============================================================
   CUBE — DESIGN SYSTEM
   Quiet luxury: near-black ground, warm ink, one disciplined
   accent. The brand's neon is treated like a house spirit —
   present in trace amounts, never the whole room.
   ============================================================ */
:root {
  /* core surfaces */
  --bg:            #0b0c09;
  --bg-elevated:   #131509;
  --bg-card:       #15170f;
  --bg-card-hover: #191c10;

  /* ink */
  --ink:           #f1efe6;
  --ink-soft:      #b9b7a9;
  --ink-faint:     #75766c;

  /* the one accent — used sparingly, on purpose */
  --neon:          #c3f60c;
  --neon-dim:      #8fb30f;
  --neon-glow:     rgba(195,246,12,0.45);
  --neon-wash:     rgba(195,246,12,0.07);

  /* structure */
  --line:          rgba(241,239,230,0.09);
  --line-strong:   rgba(241,239,230,0.16);
  --radius-s:      10px;
  --radius-m:      16px;
  --radius-l:      24px;

  /* legacy var kept for any inline reference */
  --deep-bg: #0b0c09;

  /* motion */
  --ease: cubic-bezier(.22,.61,.36,1);
}

* { margin:0; padding:0; box-sizing:border-box; }

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

html { font-size: 100%; scroll-behavior: smooth; }

body {
  min-height: 100vh;
  background: var(--bg);
  font-family: 'Poppins', sans-serif;
  font-weight: 300;
  color: var(--ink);
  overflow-x: hidden;
  font-size: 1rem;
  line-height: 1.6;
  -webkit-font-smoothing: antialiased;
}

::selection { background: var(--neon); color: #0b0c09; }

a { color: inherit; }
a:hover { transform: none; }

:focus-visible {
  outline: 1.5px solid var(--neon);
  outline-offset: 3px;
  border-radius: 4px;
}
