@media (prefers-color-scheme: dark) {
  :root {
    color-scheme: dark;
    --color-primary: #a2c3ad;
    --color-primary-strong: #d6e7d9;
    --color-secondary: #9ab9a4;
    --color-accent: #d9b866;
    --color-bg: #171e1a;
    --color-surface: #202923;
    --color-surface-soft: #252f28;
    --color-text: #e5ebe6;
    --color-muted: #a0ada4;
    --color-border: #35423a;
    --color-danger: #e08b7f;
    --shadow-card: 0 12px 32px rgba(0, 0, 0, 0.16);
  }
  body { background: radial-gradient(ellipse at 12% 0%, rgba(108, 139, 113, 0.1), transparent 30rem), var(--color-bg); }
  #app-header { background: rgba(32, 41, 35, 0.94); border-bottom-color: var(--color-border); }
  .brand, .nav-links a { color: var(--color-text); }
  .nav-links a:hover, .nav-links a[aria-current="page"] { background: #2b3a30; color: var(--color-primary-strong); }
  .nav-links a.nav-login { background: #456b55; color: #fff; }
  .nav-logout { border-color: var(--color-border); color: var(--color-primary-strong); }
  .stat-icon, .item-date, .side-note { background: #2a382e; color: var(--color-primary-strong); }
  .stat-label, .announcement p, .side-note { color: var(--color-muted); }
  .announcement { border-color: var(--color-border); background: linear-gradient(120deg, #252b25, #202923); }
  .announcement h3, .item-content h3, .side-note strong { color: var(--color-primary-strong); }
  .badge { background: #403923; color: #e2c77f; }
  .homework-item { border-color: var(--color-border); }
  .quick-link { color: var(--color-text); }
  .quick-link:hover { border-color: #536959; background: #27342b; }
  .date-pill { border-color: var(--color-border); background: var(--color-surface); color: var(--color-text); }
  .login-card { background: var(--color-surface); border-color: var(--color-border); }
  .form-group label { color: var(--color-primary-strong); }
  .form-group input { border-color: var(--color-border); background: #1a221d; color: var(--color-text); }
  #app-footer { border-color: var(--color-border); }
  .count-pill, .role-badge, .member-avatar { background: #2a382e; color: var(--color-primary-strong); }
  .btn-secondary { background: #354139; color: var(--color-text); }
  .btn-secondary:hover { background: #425346; color: #fff; }
  .form-message.is-error { background: #3c2725; color: #efb4aa; }
  .form-message.is-success { background: #26372a; color: #b7d9bd; }
  .form-message.is-warning { background: #44391f; color: #f2d38a; }
  .member-panel input, .admin-actions select, .comment-form input { border-color: var(--color-border); background: #1a221d; color: var(--color-text); }
  .comment-item { background: #2a332c; }
  .mock-badge { background: #403923; color: #e2c77f; }
}
