@import url('https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&display=swap');

/* ===== CSS VARIABLES ===== */
:root {
  /* Dark mode (default) */
  --bg-app: #0f1117;
  --bg-sidebar: #16181f;
  --bg-surface: #1e2130;
  --bg-surface-hover: #252840;
  --bg-surface-2: #2d3147;
  --bg-input: #1e2130;

  --text-primary: #f0f2f8;
  --text-secondary: #8b90a7;
  --text-muted: #5a5f76;

  --primary-color: #5b8dee;
  --primary-hover: #4a7ce0;
  --primary-light: rgba(91, 141, 238, 0.12);
  --primary-shadow-color: rgba(91, 141, 238, 0.3);

  --accent-color: #a78bfa;
  --accent-hover: #9333ea;

  --success-color: #34d399;
  --danger-color: #f87171;
  --danger-light: rgba(248, 113, 113, 0.1);

  --border-color: rgba(255, 255, 255, 0.07);
  --border-hover: rgba(255, 255, 255, 0.14);

  --primary-btn-text: #ffffff;
  --accent-btn-text: #ffffff;

  --sidebar-width: 240px;

  --radius-sm: 0.375rem;
  --radius-md: 0.625rem;
  --radius-lg: 1rem;
  --radius-xl: 1.25rem;
  --radius-full: 9999px;

  --shadow-sm: 0 1px 3px rgba(0, 0, 0, 0.2);
  --shadow-md: 0 4px 12px rgba(0, 0, 0, 0.3);
  --shadow-lg: 0 10px 30px rgba(0, 0, 0, 0.4);

  --font-family: 'Inter', system-ui, -apple-system, sans-serif;
  --transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1);
}

:root[data-theme="light"] {
  --bg-app: #f5f7ff;
  --bg-sidebar: #ffffff;
  --bg-surface: #ffffff;
  --bg-surface-hover: #f0f4ff;
  --bg-surface-2: #e8eeff;
  --bg-input: #f5f7ff;

  --text-primary: #1a1d2e;
  --text-secondary: #5a6080;
  --text-muted: #9aa0be;

  --primary-color: #3b72e8;
  --primary-hover: #2d62d8;
  --primary-light: rgba(59, 114, 232, 0.1);
  --primary-shadow-color: rgba(59, 114, 232, 0.25);

  --accent-color: #7c3aed;
  --accent-hover: #6d28d9;

  --success-color: #059669;
  --danger-color: #dc2626;
  --danger-light: rgba(220, 38, 38, 0.08);

  --border-color: rgba(0, 0, 0, 0.07);
  --border-hover: rgba(0, 0, 0, 0.14);

  --shadow-sm: 0 1px 3px rgba(0, 0, 0, 0.06);
  --shadow-md: 0 4px 12px rgba(0, 0, 0, 0.08);
  --shadow-lg: 0 10px 30px rgba(0, 0, 0, 0.1);
}

/* ===== RESET & BASE ===== */
*, *::before, *::after {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
}

html, body {
  height: 100%;
  overflow: hidden;
}

body {
  background-color: var(--bg-app);
  color: var(--text-primary);
  font-family: var(--font-family);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

/* ===== APP LAYOUT ===== */
.app-shell {
  display: flex;
  height: 100vh;
  width: 100vw;
  overflow: hidden;
}

todo-app {
  display: contents;
}
