/* Nur relevant, wenn body.is-editing aktiv ist (also nach Login) */

.bp-admin-bar {
  position: sticky;
  top: 0;
  z-index: 999;
  background: #1f1f1f;
  color: #fff;
  font-size: 13px;
  font-family: Inter, sans-serif;
  padding: 10px 16px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  flex-wrap: wrap;
}
.bp-admin-bar a {
  color: #fff;
  text-decoration: underline;
  text-underline-offset: 2px;
  font-weight: 700;
  white-space: nowrap;
}

.bp-save-all-btn {
  margin-left: auto;
  background: #444;
  color: #fff;
  border: 0;
  padding: 8px 16px;
  border-radius: 999px;
  font-family: Inter, sans-serif;
  font-size: 13px;
  font-weight: 800;
  cursor: not-allowed;
  white-space: nowrap;
  transition: background .15s, transform .1s;
}
.bp-save-all-btn.has-changes {
  background: #e8651a;
  cursor: pointer;
  animation: bp-pulse 1.6s ease-in-out infinite;
}
.bp-save-all-btn.has-changes:hover { background: #c94f12; }
.bp-save-all-btn:active:not(:disabled) { transform: scale(0.97); }
@keyframes bp-pulse {
  0%, 100% { box-shadow: 0 0 0 0 rgba(232,101,26,.5); }
  50% { box-shadow: 0 0 0 6px rgba(232,101,26,0); }
}

.is-editing [contenteditable="true"].bp-dirty {
  outline: 2px dashed #e8651a;
  background: rgba(232, 101, 26, .1);
}

[data-edit-img].bp-img-pending {
  outline: 3px dashed #e8651a;
  outline-offset: 2px;
}

/* Auf orangem Hintergrund (z. B. Öffnungszeiten-Karte) ist der orange
   gestrichelte Rahmen unsichtbar -- hier stattdessen weiß anzeigen */
.hours [contenteditable="true"] {
  outline-color: rgba(255, 255, 255, .8);
}
.hours [contenteditable="true"]:hover {
  outline-color: #fff;
  background: rgba(255, 255, 255, .18);
}
.hours [contenteditable="true"]:focus {
  outline-color: #fff;
  background: rgba(255, 255, 255, .22);
}
.hours [contenteditable="true"].bp-dirty {
  outline-color: #fff;
  background: rgba(255, 255, 255, .25);
}

.is-editing [data-edit-active="true"],
.is-editing [contenteditable="true"] {
  outline: 2px dashed rgba(232, 101, 26, .55);
  outline-offset: 3px;
  border-radius: 4px;
  cursor: text;
  transition: outline-color .15s, background .15s;
}
.is-editing [contenteditable="true"]:hover {
  outline-color: rgba(232, 101, 26, .9);
  background: rgba(232, 101, 26, .06);
}
.is-editing [contenteditable="true"]:focus {
  outline: 2px solid #e8651a;
  background: rgba(232, 101, 26, .09);
}

.bp-save-flag {
  position: fixed;
  bottom: 18px;
  right: 18px;
  z-index: 1000;
  background: #1f1f1f;
  color: #fff;
  font-family: Inter, sans-serif;
  font-size: 13px;
  font-weight: 700;
  padding: 10px 16px;
  border-radius: 999px;
  box-shadow: 0 10px 30px rgba(0,0,0,.25);
  opacity: 0;
  transform: translateY(8px);
  transition: opacity .2s, transform .2s;
  pointer-events: none;
}
.bp-save-flag.show { opacity: 1; transform: translateY(0); }
.bp-save-flag.ok { background: #2e7d32; }
.bp-save-flag.error { background: #b3261e; }

/* Bild-Editor Overlay */
.bp-img-edit-btn {
  position: absolute;
  z-index: 40;
  bottom: 12px;
  right: 12px;
  background: rgba(31,31,31,.85);
  color: #fff;
  border: 0;
  padding: 9px 14px;
  border-radius: 999px;
  font-family: Inter, sans-serif;
  font-size: 12px;
  font-weight: 800;
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  box-shadow: 0 8px 22px rgba(0,0,0,.25);
}
.bp-img-edit-btn:hover { background: #e8651a; }
.bp-img-edit-btn.uploading { opacity: .6; pointer-events: none; }

[data-edit-img] {
  position: relative;
}
