/*
 * MacMu visual foundation
 * A shared, neutral material system for the public site and the admin console.
 * Component CSS consumes these semantic values instead of owning a theme.
 */
:root {
  --radius-xs: 8px;
  --radius-sm: 12px;
  --radius-md: 18px;
  --radius-lg: 24px;
  --transition-fast: 180ms ease;
  --transition-main: 240ms ease;
  --blur-mobile: 9px;
  --blur-main: 18px;
  --blur-popup: 22px;
  --danger: #b85d66;
  --success: #3f8b70;
  --warning: #a47b3d;
}

html[data-theme="light"] {
  --bg-primary: #ffffff;
  --bg-secondary: #fcfcfd;
  --bg-panel: #f3f5f7;
  --text-primary: #1d232a;
  --text-secondary: rgba(29, 35, 42, .68);
  --text-muted: rgba(29, 35, 42, .45);
  --accent: #2e68c7;
  --accent-hover: #245bb0;
  --accent-soft: rgba(46, 104, 199, .09);
  --glass-bg: rgba(255, 255, 255, .80);
  --glass-bg-hover: rgba(255, 255, 255, .94);
  --glass-bg-strong: rgba(255, 255, 255, .90);
  --glass-top: rgba(255, 255, 255, .98);
  --glass-base: rgba(242, 245, 248, .84);
  --glass-subtop: rgba(255, 255, 255, .89);
  --glass-subbase: rgba(244, 247, 250, .82);
  --glass-inset: rgba(255, 255, 255, .94);
  --glass-border: rgba(24, 32, 42, .12);
  --glass-border-hover: rgba(24, 32, 42, .19);
  --shadow-soft: 0 13px 32px rgba(24, 32, 42, .085);
  --shadow-hover: 0 20px 44px rgba(24, 32, 42, .125);
  color-scheme: light;
}

html[data-theme="dark"] {
  --bg-primary: #030405;
  --bg-secondary: #070809;
  --bg-panel: #0b0d0f;
  --text-primary: #f4f6f8;
  --text-secondary: rgba(244, 246, 248, .70);
  --text-muted: rgba(244, 246, 248, .47);
  --accent: #6e9aca;
  --accent-hover: #88add4;
  --accent-soft: rgba(110, 154, 202, .13);
  --glass-bg: rgba(255, 255, 255, .035);
  --glass-bg-hover: rgba(255, 255, 255, .055);
  --glass-bg-strong: rgba(255, 255, 255, .062);
  --glass-top: rgba(255, 255, 255, .052);
  --glass-base: rgba(255, 255, 255, .026);
  --glass-subtop: rgba(255, 255, 255, .046);
  --glass-subbase: rgba(255, 255, 255, .030);
  --glass-inset: rgba(255, 255, 255, .085);
  --glass-border: rgba(255, 255, 255, .085);
  --glass-border-hover: rgba(255, 255, 255, .16);
  --shadow-soft: 0 16px 42px rgba(0, 0, 0, .44);
  --shadow-hover: 0 22px 54px rgba(0, 0, 0, .56);
  color-scheme: dark;
}

html[data-theme="light"] {
  background: #fff;
}

html[data-theme="dark"] {
  background:
    radial-gradient(circle at 76% 14%, rgba(255, 255, 255, .018), transparent 33%),
    linear-gradient(180deg, var(--bg-secondary) 0%, var(--bg-primary) 100%);
}

html[data-theme="light"] .ambient { display: none; }

@media (max-width: 700px) {
  :root { --blur-main: var(--blur-mobile); --blur-popup: 14px; }
}
