/* ============================================================
   USPay Solution – Winteredition Tirol
   Dunkles Nachtthema, als Zusatz-Stylesheet NACH style.css laden:
     <link rel="stylesheet" href="style.css">
     <link rel="stylesheet" href="winter-theme.css">
   Überschreibt nur Farben/Flächen – keine Layout- oder HTML-Änderung.
   Druckausgaben (Beleg, Rechnung, Bericht) bleiben absichtlich hell.
   ============================================================ */

:root {
  --go: #38d6ff;            /* Gletscher-Cyan – Aktionsfarbe */
  --go-dark: #7fe6ff;       /* Hover auf dunklem Grund: heller, nicht dunkler */
  --go-soft: rgba(56, 214, 255, .14);
  --ok: #2fd3a5;
  --ok-dark: #2fd3a5;
  --ok-soft: rgba(47, 211, 165, .14);
  --sun: #f6a01a;           /* Alpenglühen (calemo-Orange) */
  --sun-soft: rgba(246, 160, 26, .14);
  --rose: #ff6377;
  --rose-soft: rgba(255, 99, 119, .14);
  --violet: #9b86ff;
  --bg: #050b18;            /* Nachtblau */
  --card: #0b1326;
  --ink: #eaf1ff;
  --muted: #8fa2c4;
  --line: #1e2c4d;
  --shadow: 0 2px 14px rgba(0, 0, 0, .45);
}

body { background: var(--bg); color: var(--ink); }

/* ---------- Anmeldung: Nachthimmel + Bergsilhouetten ---------- */
#loginView, #authView { position: relative; background: linear-gradient(180deg, #071026 0%, #050b18 55%, #04070f 100%); }
#loginView::before, #authView::before {
  content: ""; position: absolute; left: 0; right: 0; bottom: 0; height: 42vh; pointer-events: none;
  background: #0b1730;
  clip-path: polygon(0% 62%, 14% 38%, 26% 52%, 42% 22%, 58% 46%, 72% 30%, 86% 50%, 100% 36%, 100% 100%, 0% 100%);
}
#loginView::after, #authView::after {
  content: ""; position: absolute; left: 0; right: 0; bottom: 0; height: 32vh; pointer-events: none;
  background: #080f20;
  clip-path: polygon(0% 78%, 10% 60%, 22% 72%, 38% 48%, 52% 68%, 66% 54%, 80% 72%, 92% 60%, 100% 74%, 100% 100%, 0% 100%);
}
.login-box { position: relative; z-index: 1; }

/* ---------- Logos: auf dunklem Grund die weisse Variante ---------- */
.logo-big { content: url("uspay-logo-weiss.png"); }
.avatar-logo { background: #0b1428; border-color: var(--line); }
.avatar-logo img { content: url("uspay-icon-weiss-192.png"); }

/* ---------- Flächen ---------- */
.app-head { background: linear-gradient(180deg, #0a1732, #070f22); border-bottom-color: #18243f; }
.card, .stat, .modal, .tab, .seg, .veh-chip, .admin-sidebar, .bottom-nav { background: var(--card); }
.bottom-nav, .table-scroll thead th, .table-scroll-cap thead th { background: #080f20; }
.nav-btn.active { color: var(--go); background: var(--go-soft); }
.side-tab.active { background: var(--go-soft); color: var(--go); }
.side-tab:hover, .sidebar-toggle:hover, .status-dots:hover, .notif-bell:hover { background: rgba(255, 255, 255, .06); }
.numpad button { background: rgba(255, 255, 255, .05); color: var(--ink); }
.numpad button:active { background: var(--go-soft); }
.btn-go { color: #04101f; }
.btn-go:hover:not(:disabled) { background: var(--go-dark); color: #04101f; }
.btn-plain { background: rgba(255, 255, 255, .05); }
.btn-danger { background: #c0334a; color: #fff; }
.btn-sun { background: var(--sun); color: #1a1000; }
.btn-icon { background: rgba(255, 255, 255, .05); }
.btn-icon:hover { background: var(--go-soft); }
.form-grid input, .form-grid select, .form-grid textarea,
.dt-row input, .search-input, .rb-discount-row input, .rb-discount-row select {
  background: #0a1122; color: var(--ink); border-color: var(--line);
}
.form-grid input:read-only { background: #070d1b; }
.ride-details, .ums-entity-list { background: #0a1122; }
.ums-entity-all { background: var(--card); }

/* ---------- Farbige Hinweise: heller Text auf dunklem Tint ---------- */
.card.warn { background: rgba(246, 160, 26, .12); border-color: rgba(246, 160, 26, .35); color: var(--ink); }
.pause-banner { background: rgba(246, 160, 26, .14); color: #f6c073; }
.info-note { background: var(--go-soft); color: #a9e7ff; }
.chip.go { background: var(--ok-soft); color: #5fe3bd; }
.chip.sun { background: var(--sun-soft); color: #f6c073; }
.chip.rose { background: var(--rose-soft); color: #ff8b9b; }
.chip.plain { background: rgba(255, 255, 255, .05); color: var(--muted); border-color: var(--line); }
.inv-preview-banner { background: rgba(246, 160, 26, .12); color: #f6c073; border-color: rgba(246, 160, 26, .35); }
.modal-backdrop { background: rgba(2, 5, 12, .7); }
.chart-tooltip { background: #13223f; box-shadow: 0 6px 20px rgba(0, 0, 0, .5); }
.chart-value-label { fill: var(--ink); }
.pin-dot { background: var(--line); }
.pin-dot.on { background: var(--go); }
.logo-preview { background: #fff; }

/* ---------- Druck & Papierbelege bleiben hell ---------- */
.invoice, .receipt { background: #fff; color: #1c1c1c; border-color: #ddd; }
.receipt { background: #fffef8; }
.invoice hr, .inv-table th, .inv-table td { border-color: #ddd; }
.rb-pos input, .rb-pos select { background: #fff; color: #1c1c1c; }
@media print {
  body { background: #fff; }
  .logo-big { content: normal; }
}
