/* Theme personality — structure only, colors via tokens in themes.css */

/* Aurora: мягкая шапка, без белых полос safe-area */
[data-theme="aurora"] html,
[data-theme="aurora"] body {
  background: var(--chrome-bg);
}
[data-theme="aurora"] #main-screen,
[data-theme="aurora"] .app-main,
[data-theme="aurora"] #content,
[data-theme="aurora"] .view-panel {
  background: var(--bg-content);
}
[data-theme="aurora"] .hero-header {
  box-shadow: 0 4px 28px rgba(124, 58, 237, 0.22);
  padding-top: env(safe-area-inset-top);
  padding-bottom: 14px;
  margin-bottom: 0;
}
[data-theme="aurora"] .hero-header .icon-btn {
  border-color: rgba(255, 255, 255, 0.32);
}
[data-theme="aurora"] .controls-bar {
  background: var(--bg-content);
  border-bottom-color: var(--border);
}
[data-theme="aurora"] .bottom-nav-wrap {
  background: var(--nav-bg);
  padding-bottom: 0;
}
[data-theme="aurora"] .bottom-nav {
  margin: 0;
  border-radius: 0;
  padding-bottom: max(6px, env(safe-area-inset-bottom));
}
[data-theme="aurora"] #login-screen {
  background: var(--login-bg);
  padding-top: env(safe-area-inset-top);
  padding-bottom: env(safe-area-inset-bottom);
  min-height: 100dvh;
}
[data-theme="aurora"] .login-card {
  backdrop-filter: blur(16px);
  background: rgba(255, 255, 255, 0.94);
}
[data-theme="aurora"] .empty-state {
  background: var(--bg-content);
}

/* Vitality: OLED, острые углы, неоновые акценты */
[data-theme="vitality"] .hero-header {
  border-bottom: 2px solid var(--border-strong);
}
[data-theme="vitality"] #main-screen {
  border-top: 3px solid var(--border-strong);
}
[data-theme="vitality"] .user-name-lg {
  text-transform: uppercase;
  letter-spacing: 0.04em;
}
[data-theme="vitality"] .user-avatar {
  border-radius: var(--radius-sm);
  border: 2px solid var(--primary);
  box-shadow: 0 0 16px rgba(45, 212, 191, 0.35);
}
[data-theme="vitality"] .hero-header .icon-btn {
  border: 2px solid var(--primary);
  border-radius: var(--radius-sm);
}
[data-theme="vitality"] .scope-btn,
[data-theme="vitality"] .mode-btn {
  font-size: 10px;
  letter-spacing: 0.05em;
}
[data-theme="vitality"] .nav-item.active {
  text-shadow: 0 0 12px rgba(45, 212, 191, 0.5);
}
[data-theme="vitality"] .fab {
  box-shadow: 0 0 30px rgba(45, 212, 191, 0.55);
}
[data-theme="vitality"] .theme-badge {
  border: 1px solid var(--primary);
  text-transform: uppercase;
}
[data-theme="vitality"] .login-card {
  border: 2px solid var(--primary);
}

/* Luminous: Apple spacing, плавающая навигация */
[data-theme="luminous"] .hero-header {
  border-bottom: 1px solid var(--border);
}
[data-theme="luminous"] .bottom-nav-wrap {
  padding-bottom: calc(var(--safe-bottom) + 4px);
}
[data-theme="luminous"] .fab {
  bottom: calc(66px + var(--safe-bottom));
}

/* MOSI: пастель, без белых полос safe-area */
[data-theme="mosi"] html,
[data-theme="mosi"] body {
  background: var(--header-bg);
}
[data-theme="mosi"] #main-screen,
[data-theme="mosi"] .app-main,
[data-theme="mosi"] #content,
[data-theme="mosi"] .view-panel {
  background: var(--bg-content);
}
[data-theme="mosi"] .hero-header {
  box-shadow: none;
  padding-top: env(safe-area-inset-top);
  padding-bottom: 10px;
  margin-bottom: 0;
}
[data-theme="mosi"] .hero-row {
  margin-bottom: 8px;
}
[data-theme="mosi"] .hero-header .icon-btn {
  border-radius: 0;
}
[data-theme="mosi"] .user-avatar {
  border-radius: 50%;
  box-shadow: none;
  border: 2px solid rgba(255, 255, 255, 0.55);
  color: #3d5568;
}
[data-theme="mosi"] .user-name-lg {
  font-weight: 500;
  letter-spacing: 0;
}
[data-theme="mosi"] .theme-badge {
  border-radius: 0;
  text-transform: uppercase;
  letter-spacing: 0.04em;
}
[data-theme="mosi"] .controls-bar {
  background: var(--header-bg);
  border-bottom: none;
  padding-top: 0;
}
[data-theme="mosi"] .period-label {
  color: var(--header-text);
  font-weight: 500;
  text-transform: capitalize;
}
[data-theme="mosi"] .period-label:active {
  background: rgba(255, 255, 255, 0.28);
}
[data-theme="mosi"] #week-label {
  color: var(--header-text);
}
[data-theme="mosi"] .tb-icon {
  background: rgba(255, 255, 255, 0.4);
  border-color: transparent;
  color: var(--header-text);
  border-radius: 0;
}
[data-theme="mosi"] .toolbar-module-label {
  color: var(--header-text);
  text-transform: uppercase;
  font-size: 11px;
  letter-spacing: 0.04em;
}
[data-theme="mosi"] .scope-seg {
  border: none;
  border-radius: 0;
  background: transparent;
}
[data-theme="mosi"] .scope-btn {
  color: var(--header-seg-text);
  text-transform: uppercase;
  font-size: 10px;
  letter-spacing: 0.05em;
  border-bottom: 2px solid transparent;
  border-radius: 0;
  min-height: 36px;
}
[data-theme="mosi"] .scope-btn.active {
  color: var(--header-seg-active-text);
  background: transparent;
  border-bottom-color: var(--header-seg-active-text);
}
[data-theme="mosi"] .scope-btn:not(:last-child) {
  border-right: none;
}
[data-theme="mosi"] .bottom-nav-wrap {
  background: var(--nav-bg);
  padding-bottom: 0;
}
[data-theme="mosi"] .bottom-nav {
  border-radius: 0;
  box-shadow: none;
  border-top: none;
  padding-bottom: max(6px, env(safe-area-inset-bottom));
}
[data-theme="mosi"] .nav-item {
  border-radius: 0;
  position: relative;
}
[data-theme="mosi"] .nav-item.active {
  background: transparent;
  box-shadow: inset 0 -3px 0 var(--nav-active-text);
}
[data-theme="mosi"] .nav-item.active .nav-icon {
  background: transparent;
}
[data-theme="mosi"] .fab {
  border-radius: 50%;
  bottom: calc(58px + var(--safe-bottom));
}
[data-theme="mosi"] #login-screen {
  background: var(--login-bg);
  padding-top: env(safe-area-inset-top);
  padding-bottom: env(safe-area-inset-bottom);
}
[data-theme="mosi"] .login-card {
  border-radius: 0;
  box-shadow: 0 2px 8px rgba(61, 85, 104, 0.12);
}
[data-theme="mosi"] .login-theme-line {
  color: var(--header-text);
}
[data-theme="mosi"] .theme-cycle-btn {
  color: var(--header-text);
}
[data-theme="mosi"] .day-section {
  margin-bottom: 0;
}
[data-theme="mosi"] .day-section-title {
  margin: 0;
  padding: 10px 12px;
  font-size: 15px;
  font-weight: 600;
  text-transform: none;
  letter-spacing: 0;
  color: var(--section-title-text);
}
[data-theme="mosi"] .day-section:nth-child(odd) .day-section-title {
  background: var(--section-teal);
}
[data-theme="mosi"] .day-section:nth-child(even) .day-section-title {
  background: var(--section-pink);
}
[data-theme="mosi"] .day-section-title.today-title {
  color: var(--section-title-text);
  font-weight: 700;
}
[data-theme="mosi"] .event-list,
[data-theme="mosi"] #week-view,
[data-theme="mosi"] #personal-view,
[data-theme="mosi"] #shared-view,
[data-theme="mosi"] #tasks-view,
[data-theme="mosi"] #reminders-view,
[data-theme="mosi"] #shopping-view,
[data-theme="mosi"] #notes-view,
[data-theme="mosi"] #birthdays-view,
[data-theme="mosi"] #admin-view {
  background: var(--bg-content);
}
[data-theme="mosi"] .event-card,
[data-theme="mosi"] .task-card,
[data-theme="mosi"] .reminder-card,
[data-theme="mosi"] .shop-item,
[data-theme="mosi"] .note-card,
[data-theme="mosi"] .bday-card {
  border-radius: 0;
  box-shadow: none;
  border: none;
  border-bottom: 1px solid var(--border);
  margin-bottom: 0;
  background: var(--surface-card);
}
[data-theme="mosi"] .note-card {
  margin-left: 0;
  margin-right: 0;
}
[data-theme="mosi"] .checklist .task-card:last-child,
[data-theme="mosi"] .reminder-card:last-child {
  border-bottom: 1px solid var(--border);
}
[data-theme="mosi"] .event-card.shared {
  border-left: 3px solid var(--tag-teal);
}
[data-theme="mosi"] .task-card.shared,
[data-theme="mosi"] .reminder-card {
  border-left: 3px solid var(--tag-blue);
}
[data-theme="mosi"] .badge {
  background: var(--tag-teal);
  color: var(--section-title-text);
  border-radius: 0;
  font-size: 9px;
  font-weight: 700;
  letter-spacing: 0.04em;
}
[data-theme="mosi"] .hint-block,
[data-theme="mosi"] .login-hint-row .hint {
  background: var(--info-banner-bg);
  color: var(--info-banner-text);
  padding: 8px 10px;
  border: 1px solid #c9e2b3;
}
[data-theme="mosi"] .btn.primary {
  border-radius: 0;
  box-shadow: none;
}
[data-theme="mosi"] .planner-day-header.today {
  background: var(--section-teal);
  color: var(--section-title-text);
}
[data-theme="mosi"] .month-header {
  background: var(--header-bg);
  color: var(--header-text);
  text-transform: capitalize;
}
[data-theme="mosi"] .desktop-sidebar {
  background: var(--header-bg);
  border-right-color: var(--border-strong);
}
[data-theme="mosi"] .sidebar-brand,
[data-theme="mosi"] .sidebar-item {
  color: var(--header-text);
  border-radius: 0;
}
[data-theme="mosi"] .sidebar-item.active {
  background: rgba(255, 255, 255, 0.28);
  color: var(--header-text);
  box-shadow: inset 3px 0 0 var(--header-text);
}
[data-theme="mosi"] dialog {
  border-radius: 0;
}
[data-theme="mosi"] .empty-state {
  background: var(--bg-content);
}

/* Theme picker previews */
.theme-preview.aurora {
  background: linear-gradient(135deg, #818cf8, #d946ef, #f9a8d4);
}
.theme-preview.vitality {
  background: #070a12;
  border: 2px solid #2dd4bf;
  box-shadow: 0 0 10px rgba(45, 212, 191, 0.45);
}
.theme-preview.luminous {
  background: linear-gradient(180deg, #ffffff, #f5f5f7);
  border: 1px solid #e8e8ed;
}
.theme-preview.mosi {
  background: linear-gradient(180deg, #a8c5da 0%, #a8c5da 38%, #c5e8ec 38%, #c5e8ec 68%, #f0d4dc 68%, #f0d4dc 100%);
  border: 1px solid #96b8cf;
}
.theme-card-desc {
  display: block;
  font-size: 9px;
  color: var(--text-secondary);
  margin-top: 3px;
}
