/* =========================================
   AuftragsPilot Light Normal Panels Fix
   Repariert normale Unterseiten: Einstellungen, Rechner, Listen
   Nur Optik - keine Logik
   ========================================= */

:root {
  --aplf-text: #16285d;
  --aplf-muted: #40527a;
  --aplf-blue: #1e87ff;
  --aplf-green: #29b957;
  --aplf-orange: #ff7a1a;
  --aplf-card: rgba(255,255,255,.64);
  --aplf-border: rgba(255,255,255,.84);
  --aplf-shadow: 0 16px 34px rgba(77,112,166,.14);
}

/* Grundfläche sicher hell */
html,
body,
.app,
.main {
  background:
    radial-gradient(circle at 8% 10%, rgba(255,255,255,.40), transparent 30%),
    radial-gradient(circle at 92% 5%, rgba(141,237,229,.30), transparent 34%),
    linear-gradient(135deg, #94b5e2 0%, #dfeaff 52%, #c8efee 100%) !important;
  color: var(--aplf-text) !important;
}

/* Sidebar immer im Light-Stil, auch wenn normales Panel offen ist */
.sidebar,
.sidebar.ap-exact-sidebar {
  background:
    radial-gradient(circle at 70% 0%, rgba(255,255,255,.18), transparent 26%),
    linear-gradient(180deg, #7fa7db 0%, #688dc0 58%, #5f83b6 100%) !important;
  border-right: 1px solid rgba(255,255,255,.50) !important;
  color: #ffffff !important;
  box-shadow: 12px 0 35px rgba(74,102,150,.14) !important;
}

/* Alte Sidebar-Reste ausblenden, aber neue Navigation behalten */
.sidebar.ap-exact-sidebar > :not(.ap-exact-logo):not(.ap-exact-nav):not(.ap-exact-status) {
  display: none !important;
}

/* Logo links: gelber Balken weg */
.sidebar .ap-exact-logo,
.ap-exact-logo {
  background: transparent !important;
  background-image: none !important;
  border: 0 !important;
  box-shadow: none !important;
  color: #ffffff !important;
  min-height: 118px !important;
  padding: 26px 24px 16px !important;
  display: flex !important;
  align-items: center !important;
  gap: 14px !important;
  font-size: 27px !important;
  font-weight: 900 !important;
  letter-spacing: -.04em !important;
  text-shadow: 0 2px 10px rgba(32,54,93,.18) !important;
}

.ap-exact-logo::before {
  content: "";
  width: 44px;
  height: 44px;
  display: inline-block;
  background: linear-gradient(135deg, #7a63ff, #44bfff 52%, #72efaa);
  clip-path: polygon(12% 74%, 84% 10%, 62% 94%, 43% 58%);
  filter: drop-shadow(0 8px 16px rgba(43,92,180,.18));
}

/* Navigation links immer hell, auch auf Rechner-/Einstellungen-Seiten */
.ap-exact-nav {
  padding: 12px 22px !important;
  gap: 12px !important;
}

.ap-exact-nav-btn,
.sidebar .menu-item,
.sidebar button {
  min-height: 72px !important;
  border-radius: 18px !important;
  background: rgba(255,255,255,.17) !important;
  border: 1px solid rgba(255,255,255,.42) !important;
  color: #ffffff !important;
  font-size: 17px !important;
  font-weight: 780 !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.28),
    0 10px 22px rgba(46,73,119,.10) !important;
}

.ap-exact-nav-btn.is-active,
.sidebar .menu-item.active,
.sidebar button.active {
  background:
    radial-gradient(circle at 88% 20%, rgba(255,180,255,.46), transparent 30%),
    linear-gradient(135deg, rgba(117,187,255,.58), rgba(217,178,255,.36)) !important;
  border-color: rgba(255,255,255,.72) !important;
  color: #ffffff !important;
}

.ap-exact-nav-icon {
  width: 42px !important;
  height: 42px !important;
  border-radius: 14px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  background: rgba(255,255,255,.16) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.24) !important;
  font-size: 24px !important;
}

/* Online-Box links hell */
.ap-exact-status {
  margin: 30px 22px 20px !important;
  min-height: 112px !important;
  border-radius: 22px !important;
  background: rgba(255,255,255,.15) !important;
  border: 1px solid rgba(255,255,255,.40) !important;
  color: #ffffff !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.22) !important;
}

.ap-exact-status strong,
.ap-exact-status span {
  color: #ffffff !important;
}

/* Topbar auf normalen Unterseiten schöner */
.topbar {
  background:
    radial-gradient(circle at 88% 10%, rgba(141,237,229,.22), transparent 30%),
    linear-gradient(135deg, rgba(255,255,255,.62), rgba(232,242,255,.58)) !important;
  border: 1px solid rgba(255,255,255,.78) !important;
  border-radius: 0 0 0 0 !important;
  box-shadow:
    0 14px 28px rgba(77,112,166,.10),
    inset 0 1px 0 rgba(255,255,255,.72) !important;
  color: var(--aplf-text) !important;
}

.topbar h1,
#appHeadline {
  color: var(--aplf-text) !important;
  text-shadow: none !important;
  letter-spacing: -.055em !important;
}

.topbar p,
.topbar span,
.topbar small {
  color: var(--aplf-muted) !important;
}

/* Sync/Status-Pillen oben nicht schwarz */
.topbar button,
.topbar .primary,
.topbar .sync-btn,
.topbar [class*="sync"],
.topbar [class*="status"],
#syncStatus,
#syncBadge,
#loginStatus {
  background: rgba(255,255,255,.62) !important;
  color: var(--aplf-text) !important;
  border: 1px solid rgba(255,255,255,.84) !important;
  border-radius: 999px !important;
  box-shadow:
    0 10px 20px rgba(77,112,166,.10),
    inset 0 1px 0 rgba(255,255,255,.72) !important;
}

/* Normale Panel-Karten */
.panel,
.panel.active-panel {
  background: transparent !important;
  color: var(--aplf-text) !important;
}

.panel .card,
.card,
section.card,
.form-card {
  background:
    radial-gradient(circle at 88% 8%, rgba(141,237,229,.18), transparent 30%),
    linear-gradient(135deg, rgba(255,255,255,.66), rgba(232,242,255,.62)) !important;
  border: 1px solid var(--aplf-border) !important;
  border-radius: 24px !important;
  box-shadow:
    var(--aplf-shadow),
    inset 0 1px 0 rgba(255,255,255,.76) !important;
  color: var(--aplf-text) !important;
}

/* Texte in Panels */
.panel h1,
.panel h2,
.panel h3,
.card h1,
.card h2,
.card h3,
.card strong,
.panel strong {
  color: var(--aplf-text) !important;
}

.panel p,
.card p,
.muted,
label,
small,
.table-row span {
  color: var(--aplf-muted) !important;
}

/* Tabellen und Zeilen */
.table-row,
.result-row,
.summary-row,
.stat-box,
.table-like,
.check-list > div {
  background: rgba(255,255,255,.48) !important;
  border: 1px solid rgba(255,255,255,.72) !important;
  border-radius: 16px !important;
  color: var(--aplf-text) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.62) !important;
}

.table-row strong,
.result-row strong,
.summary-row strong,
.stat-box strong {
  color: var(--aplf-text) !important;
}

/* Formulare */
input,
select,
textarea {
  background: rgba(255,255,255,.74) !important;
  border: 1px solid rgba(255,255,255,.90) !important;
  color: var(--aplf-text) !important;
  border-radius: 15px !important;
  box-shadow:
    0 8px 18px rgba(77,112,166,.08),
    inset 0 1px 0 rgba(255,255,255,.78) !important;
}

input::placeholder,
textarea::placeholder {
  color: rgba(64,82,122,.62) !important;
}

input:focus,
select:focus,
textarea:focus {
  outline: none !important;
  border-color: rgba(30,135,255,.52) !important;
  box-shadow:
    0 0 0 4px rgba(30,135,255,.12),
    0 8px 18px rgba(77,112,166,.10) !important;
}

/* Buttons allgemein hell */
button:not(.ap-light-card):not(.ap-light-quick):not(.ap-exact-nav-btn),
.small-btn,
.secondary {
  background: rgba(255,255,255,.60) !important;
  color: var(--aplf-text) !important;
  border: 1px solid rgba(255,255,255,.82) !important;
  border-radius: 15px !important;
  box-shadow:
    0 10px 20px rgba(77,112,166,.10),
    inset 0 1px 0 rgba(255,255,255,.70) !important;
}

button.primary,
.primary {
  background: linear-gradient(135deg, #4f91ff, #7bbcff) !important;
  color: #ffffff !important;
  border: 1px solid rgba(255,255,255,.70) !important;
  font-weight: 850 !important;
}

/* Mobile */
@media screen and (max-width: 900px) {
  .ap-exact-logo::before {
    width: 38px;
    height: 38px;
  }

  .ap-exact-logo {
    min-height: 88px !important;
    font-size: 24px !important;
  }

  .ap-exact-nav-btn {
    min-height: 62px !important;
  }

  .panel .card,
  .card {
    border-radius: 22px !important;
  }
}
