/* Night theme overrides — requires html[data-theme="night"] */

[data-theme='night'] {
  color-scheme: dark;
}

[data-theme='night'] body {
  background: #0a0814;
}

[data-theme='night'] .app {
  background: var(--c-bg-base);
  color: var(--c-text);
  box-shadow: 0 0 80px rgba(0, 0, 0, 0.55);
}

/* ── Chrome: topbar, role, lang ── */
[data-theme='night'] .role-switch {
  border-color: var(--c-border-strong);
  background: var(--c-bg-surface);
  box-shadow: var(--shadow-card);
  color: var(--c-text);
}

[data-theme='night'] .role-switch small {
  color: var(--c-text-muted);
}

[data-theme='night'] .role-switch .role-icon {
  background: var(--c-accent-soft);
  color: var(--c-accent);
}

[data-theme='night'] .role-switch.npc .role-icon {
  background: var(--c-help-soft);
  color: var(--c-help);
}

[data-theme='night'] .map-lang-toggle,
[data-theme='night'] .home-topbar .map-lang-toggle {
  border-color: var(--c-border-strong);
  background: var(--c-bg-surface);
  color: var(--c-text);
  box-shadow: var(--shadow-card);
}

[data-theme='night'] .map-lang-menu {
  border-color: var(--c-border-strong);
  background: var(--c-bg-overlay);
  box-shadow: var(--shadow-float);
}

[data-theme='night'] .map-lang-menu button {
  color: var(--c-text);
}

[data-theme='night'] .map-lang-menu button:hover,
[data-theme='night'] .map-lang-menu button:focus {
  background: var(--c-bg-raised);
}

[data-theme='night'] .map-lang-menu button.active {
  background: var(--c-accent-soft);
  color: var(--c-accent);
}

/* ── Bottom nav ── */
[data-theme='night'] .bottom-nav {
  border-color: var(--c-border);
  background: var(--c-bg-surface);
  box-shadow: var(--shadow-float);
}

[data-theme='night'] .bottom-nav button {
  color: var(--c-text-muted);
}

[data-theme='night'] .bottom-nav button.active {
  background: var(--c-accent-soft);
  color: var(--c-accent);
}

[data-theme='night'] .home-bottom-nav {
  border-color: rgba(255, 255, 255, 0.06);
  background: #0a0814;
  box-shadow: 0 -8px 32px rgba(0, 0, 0, 0.35);
}

[data-theme='night'] .home-bottom-nav button {
  color: #8f879e;
}

[data-theme='night'] .home-bottom-nav button.active {
  background: transparent;
  color: #fff;
}

[data-theme='night'] .home-bottom-nav button.active .nav-icon-wrap {
  background: transparent;
  box-shadow: none;
}

[data-theme='night'] .bottom-nav button > i {
  background: var(--c-accent);
}

/* ── Sheets & backdrop ── */
[data-theme='night'] .backdrop {
  background: rgba(0, 0, 0, 0.62);
}

[data-theme='night'] .sheet {
  background: var(--c-bg-overlay);
  color: var(--c-text);
  box-shadow: var(--shadow-sheet);
}

[data-theme='night'] .sheet-handle {
  background: var(--c-border-strong);
}

[data-theme='night'] .sheet-head h2,
[data-theme='night'] .view-head h2 {
  color: var(--c-text);
}

[data-theme='night'] .sheet-head p,
[data-theme='night'] .sheet-lede {
  color: var(--c-text-secondary);
}

[data-theme='night'] .close-button,
[data-theme='night'] .back-button,
[data-theme='night'] .filter-button {
  background: var(--c-bg-raised);
  color: var(--c-text);
}

[data-theme='night'] .eyebrow {
  color: var(--c-accent);
}

/* ── Help sheet form ── */
[data-theme='night'] .ask-type button {
  border-color: var(--c-border);
  background: var(--c-bg-surface);
  color: var(--c-text-secondary);
}

[data-theme='night'] .ask-type button.selected {
  border-color: var(--c-accent);
  background: var(--c-accent-soft);
  color: var(--c-text);
}

[data-theme='night'] .request-input textarea {
  border-color: var(--c-border);
  background: var(--c-bg-raised);
  color: var(--c-text);
}

[data-theme='night'] .request-input textarea:focus {
  border-color: var(--c-accent);
}

[data-theme='night'] .photo-drop {
  border-color: var(--c-border-strong);
  background: var(--c-bg-surface);
  color: var(--c-text-secondary);
}

[data-theme='night'] .photo-drop > span {
  background: var(--c-bg-raised);
}

[data-theme='night'] .location-lock {
  background: var(--c-bg-surface);
  color: var(--c-text);
}

[data-theme='night'] .location-lock em {
  color: var(--c-text-muted);
}

[data-theme='night'] .post-button {
  background: var(--c-accent);
  box-shadow: var(--glow-accent);
}

[data-theme='night'] .credit-status {
  background: var(--c-bg-surface);
  border: 1px solid var(--c-border);
  border-radius: var(--r-md);
}

/* ── Full views ── */
[data-theme='night'] .full-view {
  background: var(--c-bg-base);
  color: var(--c-text);
}

[data-theme='night'] .view-head {
  background: linear-gradient(var(--c-bg-base) 70%, transparent);
}

/* ── Feed ── */
[data-theme='night'] .request-feed {
  background: var(--c-bg-base);
}

[data-theme='night'] .feed-progress i {
  background: var(--c-bg-raised);
}

[data-theme='night'] .feed-progress i.active {
  background: var(--c-accent);
}

[data-theme='night'] .request-card {
  border-color: var(--c-border);
  background: var(--c-bg-surface);
  box-shadow: var(--shadow-card);
}

[data-theme='night'] .request-body {
  color: var(--c-text);
}

[data-theme='night'] .request-meta,
[data-theme='night'] .request-body > p {
  color: var(--c-text-secondary);
}

[data-theme='night'] .category-tag {
  background: var(--c-danger-soft);
  color: var(--c-danger);
}

[data-theme='night'] .distance {
  background: var(--c-bg-raised);
}

[data-theme='night'] .help-button {
  background: var(--c-help);
  color: var(--c-text-inverse);
  box-shadow: 0 4px 16px rgba(62, 207, 142, 0.25);
}

[data-theme='night'] .next-request {
  color: var(--c-text-muted);
}

[data-theme='night'] .next-request span {
  color: var(--c-accent);
}

/* ── Arrival ── */
[data-theme='night'] .arrival-view {
  background: var(--c-bg-base);
}

[data-theme='night'] .arrival-map.casual-arrival {
  background: linear-gradient(180deg, var(--c-bg-raised) 0%, var(--c-bg-base) 100%);
}

[data-theme='night'] .arrival-panel {
  background: var(--c-bg-overlay);
  color: var(--c-text);
}

[data-theme='night'] .arrival-panel h2 {
  color: var(--c-text);
}

[data-theme='night'] .arrival-panel > p,
[data-theme='night'] .arrival-wait span {
  color: var(--c-text-secondary);
}

[data-theme='night'] .arrival-post-card {
  background: var(--c-bg-surface);
  border-color: var(--c-border);
}

[data-theme='night'] .arrival-post-card p {
  color: var(--c-text);
}

[data-theme='night'] .eta-bar {
  background: var(--c-bg-raised);
}

[data-theme='night'] .eta-bar i {
  background: var(--c-accent);
}

[data-theme='night'] .arrival-offer-card {
  border-color: var(--c-border);
  background: var(--c-bg-surface);
  color: var(--c-text);
}

[data-theme='night'] .arrival-offer-card small {
  color: var(--c-text-secondary);
}

[data-theme='night'] .arrival-offer-card p {
  color: var(--c-text-secondary);
}

[data-theme='night'] .travel-line {
  border-color: var(--c-accent);
}

[data-theme='night'] .travel-line i {
  background: var(--c-accent);
}

/* ── Chat ── */
[data-theme='night'] .chat-view {
  background: var(--c-bg-base);
}

[data-theme='night'] .chat-head {
  background: var(--c-bg-surface);
  border-color: var(--c-border);
  color: var(--c-text);
}

[data-theme='night'] .chat-head small {
  color: var(--c-text-secondary);
}

[data-theme='night'] .request-summary {
  background: var(--c-bg-surface);
  border-color: var(--c-border);
  color: var(--c-text);
}

[data-theme='night'] .message p {
  background: var(--c-bg-surface);
  color: var(--c-text);
}

[data-theme='night'] .message.mine p {
  background: var(--c-accent-soft);
  color: var(--c-text);
}

[data-theme='night'] .composer {
  background: var(--c-bg-surface);
  border-color: var(--c-border);
}

[data-theme='night'] .composer button {
  background: var(--c-bg-raised);
  color: var(--c-text);
}

[data-theme='night'] .composer .send-button {
  background: var(--c-accent);
  color: #fff;
}

[data-theme='night'] .composer input {
  color: var(--c-text);
}

[data-theme='night'] .solved-button {
  background: var(--c-help-soft);
  color: var(--c-help);
}

[data-theme='night'] .profile-section,
[data-theme='night'] .profile-level-card,
[data-theme='night'] .profile-stats > div,
[data-theme='night'] .profile-stat-btn {
  background: var(--c-bg-surface);
  border-color: var(--c-border);
}

[data-theme='night'] .profile-stats span,
[data-theme='night'] .profile-level-head small,
[data-theme='night'] .profile-level-mood b {
  color: var(--c-text-muted);
}

[data-theme='night'] .profile-badge-chip {
  background: var(--c-bg-raised);
  border-color: var(--c-border);
}

/* ── Profile ── */
[data-theme='night'] .home-profile-panel,
[data-theme='night'] .profile-settings-view {
  background: var(--c-bg-base);
  color: var(--c-text);
}

[data-theme='night'] .profile-hero p,
[data-theme='night'] .profile-nationality-line,
[data-theme='night'] .profile-status-line {
  color: var(--c-text-secondary);
}

[data-theme='night'] .stats {
  background: var(--c-bg-surface);
  border: 1px solid var(--c-border);
  border-radius: var(--r-lg);
}

[data-theme='night'] .stats span {
  color: var(--c-text-muted);
}

[data-theme='night'] .profile-card,
[data-theme='night'] .profile-settings-form .onboarding-field input,
[data-theme='night'] .profile-settings-form .onboarding-field textarea {
  background: var(--c-bg-surface);
  border-color: var(--c-border);
  color: var(--c-text);
}

[data-theme='night'] .profile-settings-save {
  background: var(--c-accent);
  color: #fff;
}

/* ── Toast ── */
[data-theme='night'] .toast {
  background: var(--c-bg-float);
  border: 1px solid var(--c-border-strong);
  box-shadow: var(--shadow-float);
}

[data-theme='night'] .toast > span {
  background: var(--c-help-soft);
  color: var(--c-help);
}

[data-theme='night'] .toast small {
  color: var(--c-text-secondary);
}

/* ── Check-in ── */
[data-theme='night'] .checkin-toast {
  border-color: var(--c-accent);
  background: var(--c-bg-surface);
  box-shadow: var(--glow-accent);
  color: var(--c-text);
}

[data-theme='night'] .checkin-toast-icon {
  background: var(--c-accent);
  color: #fff;
}

[data-theme='night'] .checkin-toast small {
  color: var(--c-text-secondary);
}

[data-theme='night'] .checkin-badge {
  background: var(--c-help-soft);
  color: var(--c-help);
}

/* ── Auth ── */
[data-theme='night'] .auth-panel {
  background: var(--c-bg-overlay);
  border-color: var(--c-border-strong);
  color: var(--c-text);
}

[data-theme='night'] .auth-panel p {
  color: var(--c-text-secondary);
}

[data-theme='night'] .auth-rune {
  border-color: var(--c-accent);
  background: var(--c-accent-soft);
  box-shadow: var(--glow-accent);
}

[data-theme='night'] .google-login {
  border-color: var(--c-border-strong);
  background: var(--c-bg-surface);
  color: var(--c-text);
}

[data-theme='night'] .auth-close {
  background: var(--c-bg-raised);
  color: var(--c-text);
}

[data-theme='night'] .onboarding-field select {
  border-color: var(--c-border-strong);
  background-image:
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 24 24' fill='none' stroke='%23d8ff42' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m7 10 5 5 5-5'/%3E%3C/svg%3E"),
    linear-gradient(180deg,rgba(255,255,255,.08),rgba(255,255,255,.035));
  background-repeat: no-repeat, no-repeat;
  background-position: right 14px center, center;
  background-size: 18px auto, 100% 100%;
  color: var(--c-text);
}

/* ── Globe (main-aligned; base styles in globe.css) ── */

[data-theme='night'] .map-entry-gate {
  background: rgba(18, 15, 31, 0.88);
  color: var(--c-text);
}

/* ── Currency view ── */
[data-theme='night'] .currency-view {
  background: var(--c-bg-base);
  color: var(--c-text);
}

[data-theme='night'] .currency-block {
  background: var(--c-bg-surface);
  border: 1px solid var(--c-border);
}

[data-theme='night'] .currency-keypad button {
  background: var(--c-bg-raised);
  color: var(--c-text);
}

[data-theme='night'] .currency-panel-sheet {
  background: var(--c-bg-overlay);
  color: var(--c-text);
}

/* ── Board / footprints ── */
[data-theme='night'] .board-view {
  background: var(--c-bg-base);
  color: var(--c-text);
}

[data-theme='night'] .footprint-card,
[data-theme='night'] .pinned-card {
  background: var(--c-bg-surface);
  border-color: var(--c-border);
  color: var(--c-text);
}

[data-theme='night'] .footprint-meta {
  color: var(--c-text-muted);
}

[data-theme='night'] .home-ask-card {
  background: #ffffff;
  color: #12122b;
  box-shadow: 0 12px 40px rgba(0, 0, 0, 0.35);
}

[data-theme='night'] .home-loc-select {
  color: #fff;
}

[data-theme='night'] .home-icon-btn {
  color: #fff;
}

[data-theme='night'] body::before,
[data-theme='night'] body::after {
  display: none;
}
