:root {
  color-scheme: light;
  --kedo-font: -apple-system, BlinkMacSystemFont, "Segoe UI", "Hiragino Sans", "Yu Gothic", sans-serif;
  --kedo-bg: #f4f7f6;
  --kedo-surface: #ffffff;
  --kedo-soft: #edf2f0;
  --kedo-border: #d7e0de;
  --kedo-text: #18252d;
  --kedo-muted: #52636f;
  --kedo-primary: #0f766e;
  --kedo-primary-hover: #115e59;
  --kedo-primary-soft: #e8f5f1;
  --kedo-success: #166534;
  --kedo-success-soft: #edfdf3;
  --kedo-warning: #92400e;
  --kedo-warning-soft: #fff7ed;
  --kedo-danger: #b91c1c;
  --kedo-danger-soft: #fef2f2;
  --kedo-focus: #1d4ed8;
  --kedo-shadow: 0 4px 18px rgba(24, 37, 45, .05);
  --kedo-radius-sm: 8px;
  --kedo-radius: 12px;
  --kedo-radius-lg: 16px;
  --kedo-space-1: 4px;
  --kedo-space-2: 8px;
  --kedo-space-3: 12px;
  --kedo-space-4: 16px;
  --kedo-space-6: 24px;
  --kedo-space-8: 32px;
  --bg-app: var(--kedo-bg);
  --bg-sidebar: var(--kedo-surface);
  --bg-card: var(--kedo-surface);
  --bg-card-hover: var(--kedo-surface);
  --bg-subtle: var(--kedo-soft);
  --bg-input: var(--kedo-surface);
  --border-subtle: var(--kedo-soft);
  --border-default: var(--kedo-border);
  --border-hover: var(--kedo-muted);
  --border-focus: var(--kedo-focus);
  --text-main: var(--kedo-text);
  --text-body: var(--kedo-text);
  --text-muted: var(--kedo-muted);
  --text-light: var(--kedo-muted);
  --brand-gradient: var(--kedo-primary);
  --brand-gradient-hover: var(--kedo-primary-hover);
  --brand-gradient-subtle: var(--kedo-primary-soft);
  --purple-gradient: var(--kedo-primary);
  --accent-coral: var(--kedo-primary);
  --accent-rose: var(--kedo-primary);
  --accent-purple: var(--kedo-primary);
  --accent-blue: var(--kedo-focus);
  --accent-emerald: var(--kedo-success);
  --shadow-xs: var(--kedo-shadow);
  --shadow-sm: var(--kedo-shadow);
  --shadow-md: var(--kedo-shadow);
  --shadow-lg: var(--kedo-shadow);
  --shadow-phone: var(--kedo-shadow);
  --radius-sm: var(--kedo-radius-sm);
  --radius-md: var(--kedo-radius);
  --radius-lg: var(--kedo-radius-lg);
  --radius-xl: var(--kedo-radius-lg);
  --radius-pill: 999px;
  --transition-fast: .15s ease;
  --transition-normal: .2s ease;
  --account-ink: var(--kedo-text);
  --account-muted: var(--kedo-muted);
  --account-border: var(--kedo-border);
  --account-surface: var(--kedo-surface);
  --account-soft: var(--kedo-soft);
  --account-accent: var(--kedo-primary);
  --account-accent-dark: var(--kedo-primary-hover);
  --account-focus: var(--kedo-focus);
  --account-danger: var(--kedo-danger);
}

* { box-sizing: border-box; }
html { scroll-padding-top: 100px; }
body { margin: 0; background: var(--kedo-bg); color: var(--kedo-text); font: 16px/1.65 var(--kedo-font); }
[hidden] { display: none !important; }
button, input, textarea, select { font: inherit; }
button, input:not([type="checkbox"]):not([type="radio"]), select { min-height: 44px; }
textarea { min-height: 100px; resize: vertical; }
a { color: var(--kedo-primary); text-underline-offset: 3px; }
button, a, summary, input, select, textarea { -webkit-tap-highlight-color: transparent; }
:focus-visible { outline: 3px solid var(--kedo-focus) !important; outline-offset: 3px; }
button:disabled { cursor: not-allowed; }
svg { flex-shrink: 0; }
.kedo-status { display: inline-flex; gap: 6px; align-items: center; padding: 4px 10px; border-radius: var(--kedo-radius-sm); background: var(--kedo-soft); color: var(--kedo-muted); font-size: 13px; font-weight: 650; }
.kedo-status.is-success { color: var(--kedo-success); background: var(--kedo-success-soft); }
.kedo-status.is-warning { color: var(--kedo-warning); background: var(--kedo-warning-soft); }
.kedo-status.is-danger { color: var(--kedo-danger); background: var(--kedo-danger-soft); }
@media (prefers-reduced-motion: reduce) { *, *::before, *::after { scroll-behavior: auto !important; transition: none !important; animation: none !important; } }
