/* =========================================================================
   theme.css — generated by webcore/theme.py from owner.json theme.palette.
   DO NOT HAND-EDIT: assemble.py overwrites this file on every build.

   This is the one sheet in the site that holds raw colour literals. Every
   other sheet consumes these role names, so a palette change is one edit
   here and nowhere else. Token names describe the ROLE, never the mood:
   there is no --moon and no --stone, because the next owner is not
   moonlit and does not have a stone ring.

   Owner: lostgenesis. Palette from owner.json.
   ========================================================================= */

:root {
  /* ---- surfaces ---- */
  --bg: #05080d;
  --bg-2: #0e1116;
  --bg-deep: #030407;
  --surface: #13161b;
  --surface-2: #1c1f24;
  --surface-3: #25282d;
  --surface-sink: #04060a;
  --surface-hover: rgba(47,201,230,0.09);

  /* ---- scrims ---- */
  --scrim-nav: rgba(5,8,13,0.86);
  --scrim-nav-mobile: rgba(4,7,11,0.98);
  --scrim-panel: rgba(19,22,27,0.72);
  --scrim-modal: rgba(4,6,9,0.78);
  --qr-plate: #ffffff;
  --art-plate: #ffffff;

  /* ---- ink ---- */
  --fg: #e8eef4;
  --fg-dim: #b6bbc1;
  --fg-mute: #a4a9af;
  --on-primary: #020406;

  /* ---- borders ---- */
  --border: #2e3137;
  --border-2: #404449;
  --edge: #5b5f65;
  --edge-lit: #92979c;
  --chisel: rgba(146,151,156,0.3);

  /* ---- accent ---- */
  --accent: #2fc9e6;
  --accent-hi: #5dd5ec;
  --accent-rgb: 47, 201, 230;
  --accent-wash: rgba(47,201,230,0.09);
  --accent-wash-2: rgba(47,201,230,0.13);
  --accent-glow: rgba(47,201,230,0.28);

  /* ---- signals ---- */
  --ok: #46d98f;
  --ok-dim: #1e573e;
  --ok-halo: rgba(70,217,143,0.15);
  --ok-glow: rgba(70,217,143,0.75);
  --warn: #f2c14e;
  --warn-dim: #5f4e26;
  --warn-halo: rgba(242,193,78,0.13);
  --warn-glow: rgba(242,193,78,0.7);
  --bad: #ff6259;
  --bad-dim: #642a2a;
  --bad-halo: rgba(255,98,89,0.13);
  --bad-glow: rgba(255,98,89,0.7);
  --bad-ink: rgba(255,98,89,0.08);

  /* ---- gradients ---- */
  --grad-hero-text: linear-gradient(176deg, #f0f4f8 12%, #b6bbc1 52%, #898d93 100%);
  --grad-hero-halo: radial-gradient(circle at 58% 30%, rgba(109,217,238,0.24), transparent 58%);
  --grad-btn-primary: linear-gradient(180deg, #6dd9ed, #52bbcf);
  --grad-btn-primary-hover: linear-gradient(180deg, #80def0, #5bd1e7);
  --grad-cta: linear-gradient(180deg, #25282d, #1c1f24);
  --grad-card: linear-gradient(180deg, #13161b, #04060a);
  --grad-status: linear-gradient(180deg, #191d22, #04060a);
  --grad-icon-well: linear-gradient(180deg, #202429, #101419);
  --grad-notice: linear-gradient(180deg, #171a1f, #0e1116);
  --grad-foot: linear-gradient(180deg, rgba(14,17,22,0.6), rgba(3,4,7,0.9));
  --grad-poster: radial-gradient(circle at 38% 34%, rgba(47,201,230,0.25), transparent 62%);
  --grad-shimmer: linear-gradient(90deg, rgba(47,201,230,0), rgba(93,213,236,0.85), rgba(70,217,143,0.6), rgba(242,193,78,0.6), rgba(47,201,230,0));
  --backdrop-layers: radial-gradient(1100px 620px at 82% -8%, rgba(78,209,234,0.16), transparent 62%), radial-gradient(900px 520px at 12% 104%, rgba(26,111,126,0.2), transparent 66%), linear-gradient(180deg, #05080d 0%, #030407 58%, #020305 100%);
  --backdrop-drift: radial-gradient(46% 22% at 20% 24%, rgba(36,153,176,0.09), transparent 70%), radial-gradient(38% 18% at 68% 12%, rgba(36,153,176,0.07), transparent 72%), radial-gradient(52% 20% at 44% 62%, rgba(28,114,132,0.05), transparent 74%);
  --stage-floor: radial-gradient(75% 60% at 50% 82%, rgba(24,95,111,0.3), transparent 70%), radial-gradient(50% 34% at 76% 6%, rgba(78,209,234,0.14), transparent 65%), linear-gradient(180deg, #0e1116 0%, #030407 88%);

  /* ---- art ---- */
  --art-mark: url('/assets/brand/mark.png');
  --art-hero: url('/assets/brand/banner.png');
  --art-og: url('/assets/brand/og-1200x630.png');
  --art-background: url('/assets/brand/background.png');
  --hero-art-display: none;

  /* ---- type ---- */
  --font-display: 'Fraunces', 'Iowan Old Style', Georgia, serif;
  --font-ui: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
  --font-mono: 'JetBrains Mono', ui-monospace, 'Cascadia Mono', Consolas, monospace;
  --fs-1: 11.5px;
  --fs-2: 13.5px;
  --fs-3: 16px;
  --fs-4: 18px;
  --fs-5: 31px;
  --fs-6: 61px;

  /* ---- geometry ---- */
  --r: 6px;
  --r-s: 4px;
  --r-xs: 3px;
  --r-lg: 10px;
  --r-pill: 999px;
  --r-round: 50%;
  --gut: 20px;
  --maxw: 1180px;

  /* ---- elevation ---- */
  --shadow: 0 1px 0 rgba(255,255,255,0.028) inset, 0 10px 30px -18px rgba(0,0,0,0.9);
  --shadow-panel: 0 18px 44px -22px rgba(0,0,0,0.9);
  --glow: 0 0 34px -8px rgba(47,201,230,0.28);
  --shadow-text: 0 1px 3px rgba(3,4,7,0.85), 0 0 8px rgba(3,4,7,0.7);

  /* ---- z ladder ---- */
  --z-nav: 60;
  --z-livebar: 90;
  --z-skip: 200;
  --z-map-overlay: 700;
  --z-map-panel: 800;

  /* ---- other ---- */
  --lvc-bite: #FB923C;
  --lvc-bleed: #EF4444;
  --lvc-blood: #FF5CD6;
  --lvc-carb: #FBBF24;
  --lvc-fracture: #34D399;
  --lvc-health: #E23B3B;
  --lvc-hunger: #F97316;
  --lvc-lipid: #60A5FA;
  --lvc-no: #F87171;
  --lvc-ok: #6BCF6B;
  --lvc-oxygen: #38BDF8;
  --lvc-prime: #FCD34D;
  --lvc-prime-dim: rgba(245,158,11,.4);
  --lvc-prime-glow: rgba(245,158,11,.18);
  --lvc-prime-halo: rgba(245,158,11,.15);
  --lvc-protein: #F87171;
  --lvc-sprint: #A78BFA;
  --lvc-stamina: #FBBF24;
  --lvc-thirst: #60A5FA;
  --lvc-well-scrim: rgba(0,0,0,.55);
  --mv-blood: #FF5CD6;
  --mv-diet-a: #F5C542;
  --mv-diet-b: #FF8A7A;
  --mv-diet-c: #9AD0FF;
  --mv-dim: rgba(232,238,246,.55);
  --mv-growth: #F0B429;
  --mv-health: #FF4D6D;
  --mv-hunger: #7ED957;
  --mv-line: rgba(255,255,255,0.1);
  --mv-line-2: rgba(255,255,255,0.22);
  --mv-live: #37D67A;
  --mv-live-halo: rgba(55,214,122,0.18);
  --mv-num-halo: rgba(0,0,0,.7);
  --mv-oxygen: #8AB4FF;
  --mv-plate: rgba(3,4,7,0.74);
  --mv-stamina: #2BD9C8;
  --mv-text: #E8EEF6;
  --mv-thirst: #4FC3F7;
  --mv-unknown: #6C7A8C;
  --mv-unknown-halo: rgba(108,122,140,0.16);

}
