/* Noční režim — html[data-theme="dark"] */

html[data-theme="dark"] {
  color-scheme: dark;
  --accent: #2dd4bf;
  --accent-hover: #5eead4;
  --accent-muted: rgba(45, 212, 191, 0.18);
  --accent-soft: rgba(45, 212, 191, 0.1);
  --accent-ink: #99f6e4;

  --primary-gradient: linear-gradient(135deg, #0f766e 0%, #134e4a 100%);
  --secondary-gradient: linear-gradient(135deg, #1e293b 0%, #0f172a 100%);
  --accent-gradient: linear-gradient(135deg, #14b8a6 0%, #0f766e 100%);
  --dark-gradient: linear-gradient(180deg, #1c1917 0%, #0c0a09 100%);

  --glass-bg: rgba(28, 25, 23, 0.72);
  --glass-border: rgba(255, 255, 255, 0.1);
  --glass-shadow: 0 12px 40px rgba(0, 0, 0, 0.4);

  --text-primary: #f5f5f4;
  --text-secondary: #a8a29e;
  --text-light: #ffffff;

  --bg-primary: #0c0a09;
  --bg-secondary: #1c1917;
  --bg-tertiary: #292524;
  --bg-elevated: #1c1917;
}

html[data-theme="dark"] body {
  color: var(--text-primary);
  background: var(--bg-primary);
}

html[data-theme="dark"] body::before {
  background:
    radial-gradient(ellipse 70% 50% at 10% 0%, rgba(45, 212, 191, 0.12) 0%, transparent 55%),
    radial-gradient(ellipse 55% 40% at 95% 20%, rgba(180, 83, 9, 0.08) 0%, transparent 50%),
    linear-gradient(180deg, #12100e 0%, var(--bg-primary) 45%, #0a0908 100%);
}

html[data-theme="dark"] .navbar {
  background: rgba(12, 10, 9, 0.82);
  border-bottom-color: transparent;
}

html[data-theme="dark"] .navbar.navbar--scrolled {
  background: rgba(28, 25, 23, 0.94);
  box-shadow: 0 8px 28px rgba(0, 0, 0, 0.45);
  border-bottom-color: var(--glass-border);
}

html[data-theme="dark"] .nav-link {
  color: var(--text-secondary);
}

html[data-theme="dark"] .nav-link:hover {
  color: var(--text-primary);
  background: var(--accent-soft);
}

html[data-theme="dark"] .nav-logo {
  color: var(--text-primary);
}

html[data-theme="dark"] .nav-logo:hover {
  color: var(--accent);
}

html[data-theme="dark"] .bar {
  background: var(--text-primary);
}

@media (max-width: 768px) {
  html[data-theme="dark"] .nav-menu {
    background: rgba(28, 25, 23, 0.98);
    border-top-color: var(--glass-border);
  }
}

html[data-theme="dark"] .theme-toggle {
  color: var(--text-primary);
}

html[data-theme="dark"] .profile-img {
  border-color: var(--bg-secondary);
}

html[data-theme="dark"] .hero-signature-img {
  filter: brightness(1.1) contrast(1.05);
}

html[data-theme="dark"] .social-card,
html[data-theme="dark"] .project-card,
html[data-theme="dark"] .contact-form {
  background: var(--bg-elevated);
  border-color: var(--glass-border);
}

html[data-theme="dark"] .social-image-container,
html[data-theme="dark"] .project-image {
  background: rgba(255, 255, 255, 0.06);
}

html[data-theme="dark"] .tech-tag {
  background: var(--accent-muted);
  color: var(--accent-ink);
}

html[data-theme="dark"] .project-link {
  color: var(--accent);
}

html[data-theme="dark"] .form-group input,
html[data-theme="dark"] .form-group textarea {
  background: rgba(255, 255, 255, 0.05);
  border-color: var(--glass-border);
  color: var(--text-primary);
}

html[data-theme="dark"] .form-group input:focus,
html[data-theme="dark"] .form-group textarea:focus {
  background: rgba(255, 255, 255, 0.08);
  border-color: var(--accent);
  box-shadow: 0 0 0 3px var(--accent-muted);
}

html[data-theme="dark"] .form-group input::placeholder,
html[data-theme="dark"] .form-group textarea::placeholder {
  color: rgba(168, 162, 158, 0.55);
}

html[data-theme="dark"] .captcha-group {
  background: rgba(255, 255, 255, 0.04);
  border-color: var(--glass-border);
}

html[data-theme="dark"] select {
  background: #1c1917 !important;
  background-color: #1c1917 !important;
  color: var(--text-primary) !important;
  border-color: var(--glass-border) !important;
}

html[data-theme="dark"] select option,
html[data-theme="dark"] select optgroup {
  background: #1c1917 !important;
  color: var(--text-primary) !important;
}

html[data-theme="dark"] .admin-link:hover,
html[data-theme="dark"] .footer-icon-link:hover {
  color: var(--accent);
  border-color: rgba(45, 212, 191, 0.3);
  background: var(--accent-soft);
}

html[data-theme="dark"] .btn-ghost,
html[data-theme="dark"] .miniapp-btn--ghost {
  background: rgba(255, 255, 255, 0.06);
  border-color: var(--glass-border);
  color: var(--text-primary);
}

/* Budget */
html[data-theme="dark"] .budget-page .card,
html[data-theme="dark"] .budget-page .dashboard-block,
html[data-theme="dark"] .budget-page .debt-widget {
  background: rgba(255, 255, 255, 0.05);
  border-color: var(--glass-border);
}

html[data-theme="dark"] .budget-page .budget-table thead th {
  background: rgba(28, 25, 23, 0.98) !important;
  color: #d6d3d1 !important;
  box-shadow: 0 1px 0 rgba(255, 255, 255, 0.08);
}

html[data-theme="dark"] .budget-page .budget-table th,
html[data-theme="dark"] .budget-page .budget-table td {
  border-bottom-color: rgba(255, 255, 255, 0.08);
  color: #e7e5e4;
}

html[data-theme="dark"] .budget-page .vydaje-filters,
html[data-theme="dark"] .budget-page .selection-summary {
  background: rgba(255, 255, 255, 0.05);
  border-color: var(--glass-border);
}

html[data-theme="dark"] .budget-page .modal {
  background: #1c1917;
  border-color: var(--glass-border);
  color: var(--text-primary);
}

html[data-theme="dark"] .budget-page .form-row input,
html[data-theme="dark"] .budget-page .form-row select {
  background: rgba(255, 255, 255, 0.06);
  border-color: var(--glass-border);
  color: #f5f5f4;
}

html[data-theme="dark"] .budget-page .dashboard-label,
html[data-theme="dark"] .budget-page .vydaje-filter-label,
html[data-theme="dark"] .budget-page .form-row label,
html[data-theme="dark"] .budget-page .empty-state {
  color: #a8a29e !important;
}

html[data-theme="dark"] .budget-page .dashboard-block-title,
html[data-theme="dark"] .budget-page .card-title {
  color: #f5f5f4 !important;
}

html[data-theme="dark"] .budget-page .debt-name {
  color: #f5f5f4;
}

html[data-theme="dark"] .budget-page .budget-totals .total-item {
  color: #d6d3d1 !important;
}

html[data-theme="dark"] .budget-page .categories-modal-section,
html[data-theme="dark"] .budget-page .category-item {
  border-color: var(--glass-border);
}

html[data-theme="dark"] .budget-page .category-suggestions {
  background: #1c1917;
  border-color: var(--glass-border);
}

html[data-theme="dark"] .budget-page .item-lines-wrap {
  background: rgba(255, 255, 255, 0.04);
  border-color: var(--glass-border);
}

html[data-theme="dark"] .budget-page .item-lines-sum,
html[data-theme="dark"] .budget-page .amount-multi-toggle,
html[data-theme="dark"] .budget-page .item-datetime-hint {
  color: #a8a29e;
}

html[data-theme="dark"] .budget-page .item-lines-detail-list li {
  background: rgba(255, 255, 255, 0.05);
  border-color: var(--glass-border);
}

html[data-theme="dark"] .budget-page .item-lines-detail-list li.is-paid {
  background: rgba(16, 185, 129, 0.16);
}

html[data-theme="dark"] .budget-page .badge-multi {
  background: rgba(59, 130, 246, 0.22);
  color: #93c5fd;
  border-color: rgba(96, 165, 250, 0.45);
}

/* Miniaplikace */
html[data-theme="dark"] .miniapp-intro,
html[data-theme="dark"] .miniapp-intro a {
  color: var(--text-secondary);
}

html[data-theme="dark"] .miniapp-intro a {
  color: var(--accent);
}

html[data-theme="dark"] .miniapp-tile-title {
  color: var(--text-primary);
}

html[data-theme="dark"] .miniapp-tile-desc {
  color: var(--text-secondary);
}

html[data-theme="dark"] .miniapp-modal {
  background: #1c1917;
  border-color: var(--glass-border);
  color: var(--text-primary);
}

html[data-theme="dark"] .miniapp-modal input[type="text"],
html[data-theme="dark"] .miniapp-modal textarea {
  background: rgba(255, 255, 255, 0.06);
  border-color: var(--glass-border);
  color: var(--text-primary);
}

html[data-theme="dark"] .miniapp-modal .btn-ghost {
  background: rgba(255, 255, 255, 0.06);
  border-color: var(--glass-border);
  color: var(--text-primary);
}

html[data-theme="dark"] .miniapp-tile {
  background: rgba(255, 255, 255, 0.05);
  border-color: var(--glass-border);
}

html[data-theme="dark"] .miniapp-tile-icon {
  background: rgba(255, 255, 255, 0.06);
}

html[data-theme="dark"] .training-log-page .card {
  background: rgba(255, 255, 255, 0.05);
  border-color: var(--glass-border);
}

html[data-theme="dark"] .admin-page .section,
html[data-theme="dark"] .admin-page .login-form {
  background: rgba(255, 255, 255, 0.05);
  border-color: var(--glass-border);
}

html[data-theme="dark"] .admin-page .section h2,
html[data-theme="dark"] .admin-page .upload-section h3,
html[data-theme="dark"] .admin-page .item-card h4 {
  color: var(--text-primary);
}

html[data-theme="dark"] .admin-page .item-card {
  background: rgba(0, 0, 0, 0.25);
  border-color: var(--glass-border);
}

html[data-theme="dark"] .admin-page .section .form-group input,
html[data-theme="dark"] .admin-page .section .form-group textarea,
html[data-theme="dark"] .admin-page .section .form-group select,
html[data-theme="dark"] .admin-page .login-form .form-group input {
  background: rgba(255, 255, 255, 0.06);
  border-color: var(--glass-border);
  color: var(--text-primary);
}

html[data-theme="dark"] .admin-page .login-form .form-group label,
html[data-theme="dark"] .admin-page .section .form-group label {
  color: var(--text-primary);
}

html[data-theme="dark"] .admin-page .icon-grid {
  background: rgba(0, 0, 0, 0.28);
  border-color: var(--glass-border);
}
