:root {
  color-scheme: dark;

  --bg: oklch(27% 0.0191 271.97);
  --surface: oklch(29.98% 0.0239 274.71);
  --surface-hover: oklch(33.15% 0.0271 273.18);
  --border: oklch(36% 0.0316 274.94);
  --text: oklch(91.91% 0.0084 271.32);
  --text-secondary: oklch(70.9% 0.0229 268.35);

  --primary: oklch(74.14% 0.1222 259.31);
  --primary-hover: oklch(80.55% 0.0901 259.44);
  --primary-dim: oklch(74.14% 0.1222 259.31 / 0.1);

  --info: oklch(79.31% 0.1145 207.31);
  --info-dim: oklch(79.31% 0.1145 207.31 / 0.12);

  --success: oklch(82.06% 0.1358 166.01);
  --success-dim: oklch(82.06% 0.1358 166.01 / 0.12);

  --warning: oklch(84.39% 0.1513 87.87);
  --warning-dim: oklch(84.39% 0.1513 87.87 / 0.12);

  --danger: oklch(70.66% 0.1604 22.02);
  --danger-dim: oklch(70.66% 0.1604 22.02 / 0.12);

  --radius: 12px;
  --mono: 'SF Mono', 'Cascadia Code', 'Fira Code', monospace;

  /* Bulma v1 scheme */
  --bulma-family-primary: 'Noto Sans', -apple-system, 'Segoe UI', Inter, Roboto, Helvetica, Arial, sans-serif;
  --bulma-family-secondary: var(--bulma-family-primary);
  --bulma-family-code: var(--mono);
  --bulma-body-background-color: var(--bg);
  --bulma-body-color: var(--text);
  --bulma-body-family: var(--bulma-family-primary);
  --bulma-body-size: 16px;
  --bulma-body-rendering: optimizeLegibility;

  --bulma-scheme-main: var(--bg);
  --bulma-scheme-main-bis: var(--surface);
  --bulma-scheme-main-ter: var(--surface-hover);
  --bulma-scheme-invert: var(--text);
  --bulma-scheme-invert-bis: var(--text-secondary);
  --bulma-scheme-invert-ter: var(--border);

  --bulma-border: var(--border);
  --bulma-border-weak: var(--border);

  --bulma-text: var(--text);
  --bulma-text-weak: var(--text-secondary);
  --bulma-text-strong: var(--text);

  --bulma-primary: var(--primary);
  --bulma-primary-base: var(--primary);
  --bulma-primary-light: var(--primary-dim);
  --bulma-primary-dark: var(--primary-hover);
  --bulma-link: var(--primary);
  --bulma-link-text: var(--primary);

  --bulma-info: var(--info);
  --bulma-info-base: var(--info);
  --bulma-info-light: var(--info-dim);

  --bulma-success: var(--success);
  --bulma-success-base: var(--success);
  --bulma-success-light: var(--success-dim);

  --bulma-warning: var(--warning);
  --bulma-warning-base: var(--warning);
  --bulma-warning-light: var(--warning-dim);

  --bulma-danger: var(--danger);
  --bulma-danger-base: var(--danger);
  --bulma-danger-light: var(--danger-dim);

  --bulma-radius: 8px;
  --bulma-radius-small: 4px;
  --bulma-radius-medium: 10px;
  --bulma-radius-large: var(--radius);
  --bulma-control-radius: var(--bulma-radius);

  --bulma-box-background-color: var(--surface);
  --bulma-box-shadow: 0 2px 8px oklch(0% 0 0 / 0.2);

  --bulma-input-background-color: var(--bg);
  --bulma-input-border-color: var(--border);
  --bulma-input-color: var(--text);
  --bulma-input-placeholder-color: var(--text-secondary);
  --bulma-input-focus-border-color: var(--primary);
  --bulma-input-shadow: none;
  --bulma-input-hover-border-color: var(--text-secondary);

  --bulma-navbar-background-color: var(--surface);
  --bulma-navbar-item-color: var(--text-secondary);
  --bulma-navbar-item-hover-color: var(--text);
  --bulma-navbar-item-hover-background-color: var(--surface-hover);
  --bulma-navbar-item-active-color: var(--text);
  --bulma-navbar-item-active-background-color: transparent;
  --bulma-navbar-burger-color: var(--text-secondary);

  --bulma-table-background-color: transparent;
  --bulma-table-color: var(--text);
  --bulma-table-head-cell-color: var(--text-secondary);
  --bulma-table-cell-border-color: var(--border);
  --bulma-table-row-hover-background-color: var(--surface-hover);
  --bulma-table-striped-row-even-background-color: oklch(100% 0 0 / 0.02);

  --bulma-tabs-link-color: var(--text-secondary);
  --bulma-tabs-link-hover-color: var(--text);
  --bulma-tabs-border-bottom-color: var(--border);
  --bulma-tabs-toggle-link-hover-background-color: var(--surface-hover);
  --bulma-tabs-toggle-link-active-background-color: var(--primary);
  --bulma-tabs-toggle-link-active-border-color: var(--primary);
  --bulma-tabs-toggle-link-active-color: var(--bg);

  --bulma-card-background-color: var(--surface);
  --bulma-card-header-background-color: var(--surface-hover);

  --bulma-title-color: var(--text);
  --bulma-subtitle-color: var(--text-secondary);

  --bulma-footer-background-color: var(--surface);

  --bulma-notification-background-color: var(--surface);
  --bulma-notification-color: var(--text);

  --bulma-progress-bar-background-color: var(--border);

  --bulma-panel-heading-background-color: var(--surface-hover);
  --bulma-panel-heading-color: var(--text);

  --bulma-scheme-brightness: dark;
}

[v-cloak] { display: none !important; }

body {
  background: var(--bg);
  color: var(--text);
  min-height: 100vh;
  -webkit-font-smoothing: antialiased;
}

::-webkit-scrollbar { width: 5px; height: 5px; }
::-webkit-scrollbar-track { background: transparent; }
::-webkit-scrollbar-thumb { background: var(--border); border-radius: 3px; }

a { color: var(--primary); }
a:hover { color: var(--primary-hover); }
