/* YGS theme contract: Default */
:root:not([data-theme]),
[data-theme="default"] {
  color-scheme: light;

  --font-sans: Roboto, Arial, sans-serif;
  --font-display: Roboto, Arial, sans-serif;
  --font-serif: Georgia, "Times New Roman", serif;
  --font-mono: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
  --font-size-base: 14px;
  --font-size-control: var(--font-size-base);
  --font-size-compact: 13px;
  --font-size-small: 12px;
  --font-size-title: 14px;
  --application-font: var(--font-sans);
  --application-font-size: var(--font-size-base);
  --application-line-height: 1.5;
  --uifloat-background: var(--color-surface);

  --color-primary: #2563eb;
  --color-primary-hover: #1d4ed8;
  --color-primary-active: #1e40af;
  --color-primary-soft: #eff6ff;
  --color-on-primary: #ffffff;
  --color-secondary: #64748b;
  --color-secondary-hover: #475569;
  --color-secondary-soft: #f1f5f9;
  --color-on-secondary: #ffffff;

  --color-success: #047857;
  --color-success-hover: #065f46;
  --color-success-soft: #ecfdf5;
  --color-warning: #b45309;
  --color-warning-hover: #92400e;
  --color-warning-soft: #fffbeb;
  --color-danger: #b91c1c;
  --color-danger-hover: #991b1b;
  --color-danger-soft: #fef2f2;
  --color-info: #0369a1;
  --color-info-hover: #075985;
  --color-info-soft: #f0f9ff;

  --color-text: #1f2937;
  --color-text-strong: #0f172a;
  --color-text-muted: #64748b;
  --color-text-subtle: #94a3b8;
  --color-text-disabled: #9ca3af;
  --color-text-inverse: #f8fafc;
  --color-link: #1d4ed8;
  --color-link-hover: #1e40af;

  --color-canvas: #f8fafc;
  --color-surface: #ffffff;
  --color-surface-muted: #f1f5f9;
  --color-surface-hover: #eef2ff;
  --color-surface-active: #dbeafe;
  --color-surface-disabled: #f1f5f9;
  --color-border: #cbd5e1;
  --color-border-soft: #e2e8f0;
  --color-border-strong: #94a3b8;
  --color-focus: #60a5fa;
  --color-selection: #dbeafe;
  --color-backdrop: rgb(15 23 42 / 55%);
  --color-scrollbar-track: transparent;
  --color-scrollbar-thumb: rgb(100 116 139 / 65%);
  --color-scrollbar-thumb-hover: rgb(71 85 105 / 85%);

  --shadow-color: rgb(15 23 42 / 18%);
  --shadow-sm: 0 1px 2px rgb(15 23 42 / 8%);
  --shadow-md: 0 4px 12px rgb(15 23 42 / 12%);
  --shadow-menu: 0 14px 30px var(--shadow-color);
  --shadow-modal: 0 20px 55px rgb(15 23 42 / 22%);

  --radius-control: 6px;
  --radius-sm: 6px;
  --radius-md: 8px;
  --radius-lg: 12px;
  --radius-pill: 999px;
  --control-height-small: 31px;
  --control-height: 38px;
  --control-height-large: 48px;
  --transition-fast: 160ms ease;
  --transition-base: 240ms ease;
}

@media (max-width: 767px) {
  :root:not([data-theme]),
  [data-theme="default"] {
    --font-size-base: 16px;
    --font-size-control: 16px;
    --font-size-compact: 14px;
    --font-size-small: 13px;
    --font-size-title: 16px;
  }
}
