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

:root {
  --preview-sidebar-bg: #ffffff;
  --preview-sidebar-hover: #f4f8fe;
  --preview-content-bg: #fefefe;
  --preview-card-bg: #ffffff;
  --preview-border: #dce6ef;
  --preview-text-primary: #1c2f3f;
  --preview-text-secondary: #5b6f7e;
  --preview-primary: #3e6b8c;
  --preview-success: #10b981;

  /* Shared signal palette (aligned with dashboard) */
  --signal-red: #be3232;
  --signal-red-deep: #a03535;
  --signal-red-light: #ffe2e2;
  --signal-red-bg: #ffd8d8;
  --signal-red-border: #e8a2a2;
  --signal-yellow: #b98919;
  --signal-yellow-deep: #7a5a12;
  --signal-yellow-light: #fff2c9;
  --signal-yellow-bg: #ffeab0;
  --signal-yellow-border: #e4ca82;
  --signal-green: #238b57;
  --signal-green-deep: #2b6f4e;
  --signal-green-light: #cfeedd;
  --signal-green-bg: #bfe6d0;
  --signal-green-border: #94c8ad;

  /* Backward-compatible nav aliases */
  --hr-signal-red: var(--signal-red);
  --hr-signal-red-light: var(--signal-red-light);

  --c-ink-900: var(--preview-text-primary);
  --c-ink-700: #334155;
  --c-ink-500: var(--preview-text-secondary);

  --c-teal-700: #3730a3;
  --c-teal-600: #4338ca;
  --c-teal-500: #4f46e5;
  --c-teal-300: #818cf8;
  --c-teal-200: #c7d2fe;

  --bg: var(--preview-content-bg);
  --bg-main: var(--preview-content-bg);
  --bg-main-deep: #eef2f8;
  --bg-side: #f1f5f9;
  --bg-side-soft: #eef2f7;

  --card-white: var(--preview-card-bg);
  --border-light: var(--preview-border);
  --border: var(--preview-border);

  --text: var(--preview-text-primary);
  --text2: var(--preview-text-secondary);
  --text3: #94a3b8;

  --accent: var(--preview-primary);
  --accent-mint: var(--preview-primary);

  --tab-active: #eef2ff;

  --menu-font-size: 13px;
  --menu-icon-size: 20px;

  --nav-text: #cbd5e1;
  --nav-text-hover: #ffffff;
  --nav-hover-bg: var(--preview-sidebar-hover);
  --nav-active-text: #ffffff;
  --nav-active-bg: var(--preview-primary);

  --shell-shadow: 0 28px 70px -46px rgba(15, 23, 42, 0.25);
  --shell-border: var(--preview-border);
}

html,
body {
  width: 100%;
  height: 100%;
}

body {
  min-height: 100dvh;
  padding: 0;
  overflow: hidden;
  color: var(--text);
  font-family: 'Inter', system-ui, -apple-system, sans-serif;
  background: var(--preview-content-bg);
  -webkit-font-smoothing: antialiased;
}
