/* Kundenbereich – statische Login-Anzeige (galerie.dirkdittrich-fotografie.de)
   Reine Anzeige, verarbeitet nichts. Farben/Schrift uebernommen aus front-page.php. */

:root {
  --kb-gold: #c9a96e;
  --kb-gold-hell: #e0c48a;
  --kb-gold-dim: #8a6d3b;
  --kb-gold-muted: #b69a6a;
  --kb-schwarz: #060606;
  --kb-schwarz-soft: #0d0d0d;
  --kb-schwarz-mid: #141414;
  --kb-text: #e8e3d7;
  --kb-text-dim: #b8b0a0;
  --kb-off-white: #f0ece4;
}

*, *::before, *::after { box-sizing: border-box; }

html, body { margin: 0; padding: 0; min-height: 100%; }

body {
  background: var(--kb-schwarz);
  /* tiefes Schwarz mit dezentem, radialem Gold-Schimmer hinter der Karte, ohne Layout-Einfluss */
  background-image: radial-gradient(58% 46% at 50% 40%, rgba(201, 169, 110, 0.12), rgba(6, 6, 6, 0) 72%);
  color: var(--kb-text);
  font-family: 'Cormorant Garamond', 'Times New Roman', Georgia, serif;
  -webkit-font-smoothing: antialiased;
  overflow-x: hidden;
}

.kb-wrap {
  min-height: 100vh;
  min-height: 100svh;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 1.5rem;
  padding: 2.4rem 1.2rem;
}

.kb-karte {
  width: 100%;
  max-width: 510px;
  background: linear-gradient(180deg, rgba(20, 20, 20, 0.94), rgba(13, 13, 13, 0.94));
  border: 1px solid rgba(201, 169, 110, 0.30);
  border-radius: 18px;
  padding: 3.4rem 2.4rem 3rem;
  box-shadow:
    0 30px 80px rgba(0, 0, 0, 0.62),
    0 0 0 1px rgba(201, 169, 110, 0.05),
    inset 0 1px 0 rgba(224, 196, 138, 0.07);
  text-align: center;
}

.kb-marke {
  margin: 0 0 0.7rem;
  font-size: 0.8rem;
  letter-spacing: 0.26em;
  text-transform: uppercase;
  color: var(--kb-gold-muted);
}

.kb-titel {
  margin: 0 0 2rem;
  /* responsiv: passt immer vollstaendig + zentriert in die Karte, kein Ueberlauf */
  font-size: clamp(1.1rem, 0.5rem + 3vw, 2.1rem);
  font-weight: 600;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--kb-gold-hell);
  line-height: 1.15;
}

.kb-fehler {
  margin: 0 0 1.1rem;
  padding: 0.55rem 0.7rem;
  font-size: 0.95rem;
  letter-spacing: 0.04em;
  color: var(--kb-gold-hell);
  border: 1px solid rgba(201, 169, 110, 0.4);
  border-radius: 8px;
  background: rgba(201, 169, 110, 0.07);
}
.kb-fehler[hidden] { display: none; }

.kb-form { text-align: left; }

.kb-feld { margin-bottom: 1.45rem; }

.kb-feld label {
  display: block;
  margin-bottom: 0.45rem;
  font-size: 0.72rem;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--kb-text-dim);
}

.kb-feld input {
  width: 100%;
  padding: 0.95rem 1rem;
  font-size: 1.02rem;
  font-family: inherit;
  color: var(--kb-off-white);
  background: var(--kb-schwarz-mid);
  border: 1px solid rgba(201, 169, 110, 0.20);
  border-radius: 10px;
  outline: none;
  transition: border-color 0.25s, box-shadow 0.25s;
}
.kb-feld input::placeholder { color: rgba(184, 176, 160, 0.45); }
.kb-feld input:focus {
  border-color: var(--kb-gold);
  box-shadow: 0 0 0 3px rgba(201, 169, 110, 0.18);
}

.kb-btn {
  width: 100%;
  margin-top: 0.6rem;
  padding: 0.95rem 1.2rem;
  font-family: 'Cormorant Garamond', 'Times New Roman', Georgia, serif;
  font-size: 1.08rem;
  font-weight: 600;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--kb-schwarz);
  /* EIN einfacher, leicht diagonaler Verlauf von dunklem zu hellem Gold – KEIN heller Streifen */
  background-color: var(--kb-gold);
  background-image: linear-gradient(135deg, var(--kb-gold-dim), var(--kb-gold-hell));
  background-size: 280% 100%;
  background-position: 0% 50%;
  background-repeat: no-repeat;
  border: 1px solid rgba(224, 196, 138, 0.45);
  border-radius: 999px;
  cursor: pointer;
  /* der gesamte Verlauf kippt langsam horizontal hin und her (Pingpong) */
  animation: kb-gold-tilt 5s ease-in-out infinite alternate;
  transition: filter 0.3s, box-shadow 0.3s;
}
.kb-btn:hover { filter: brightness(1.07); box-shadow: 0 6px 22px rgba(201, 169, 110, 0.28); }
.kb-btn:active { filter: brightness(0.98); }

/* der Verlauf wandert langsam von links nach rechts und per alternate wieder zurueck (reine CSS, kein JS) */
@keyframes kb-gold-tilt {
  from { background-position: 0% 50%; }
  to   { background-position: 100% 50%; }
}
/* Barrierefreiheit: statischer Goldverlauf ohne Bewegung */
@media (prefers-reduced-motion: reduce) {
  .kb-btn {
    animation: none;
    background-position: 50% 50%;
  }
}

/* dezenter Hinweis unter der Karte, gedaempftes Gold, kleines Schloss, keine Warnoptik */
.kb-hinweis {
  display: flex;
  align-items: flex-start;
  gap: 0.5rem;
  width: 100%;
  max-width: 28rem;
  margin: 0;
  font-size: 0.95rem;
  line-height: 1.6;
  letter-spacing: 0.03em;
  color: var(--kb-gold-muted);
  text-align: left;
}

.kb-schloss {
  flex: 0 0 auto;
  width: 1.15rem;
  height: 1.15rem;
  margin-top: 0.2rem;
  fill: none;
  stroke: var(--kb-gold-muted);
  stroke-width: 1.7;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.kb-zurueck {
  font-size: 0.85rem;
  letter-spacing: 0.12em;
  color: var(--kb-text-dim);
  text-decoration: none;
  border-bottom: 1px solid transparent;
  transition: color 0.25s, border-color 0.25s;
}
.kb-zurueck:hover { color: var(--kb-gold); border-bottom-color: rgba(201, 169, 110, 0.5); }

@media (min-width: 480px) {
  .kb-karte { padding: 4rem 3.4rem 3.6rem; }
}
