/* Original GiroPDV green palette, matching the approved reference. */
:root {
  --primary: 155 64% 32%;
  --primary-foreground: 0 0% 100%;
  --ring: 152 60% 42%;
  --sidebar-primary: 155 55% 38%;
  --sidebar-primary-foreground: 0 0% 100%;
}
/* Branding shared by desktop, collapsed sidebar and mobile header. */
img.real-app-logo[data-real-marca] {
  width: 40px !important;
  height: 40px !important;
  max-width: 100%;
  flex-shrink: 0;
  padding: 0 !important;
  border-radius: 50% !important;
  object-fit: contain;
}
.app-sidebar .real-sidebar-header { padding-left: 16px; padding-right: 16px; }
.app-sidebar { background: linear-gradient(175deg, #182b26, #101e1a) !important; }
.app-sidebar nav a:not(.bg-sidebar-primary), .app-sidebar > div > button { color: #edf7f1; }
.real-sidebar-brand { width: 100%; min-width: 0; }
.real-sidebar-label { font-size: 15px; line-height: 1.3; }
.app-sidebar[data-real-collapsed="true"] .real-sidebar-header { padding-left: 8px; padding-right: 8px; }
.app-sidebar[data-real-collapsed="true"] .real-sidebar-brand { justify-content: center; }
.app-sidebar[data-real-collapsed="true"] .real-sidebar-brand > div { display: none; }
@media (min-width: 768px) {
  .app-sidebar[data-real-collapsed="true"] nav {
    padding-left: 6px;
    padding-right: 6px;
    overflow-x: hidden;
    scrollbar-width: thin;
  }
  .app-sidebar[data-real-collapsed="true"] nav a {
    width: 44px;
    min-width: 44px;
    max-width: 44px;
    height: 42px;
    margin-left: auto;
    margin-right: auto;
    padding: 0 !important;
    justify-content: center !important;
    gap: 0;
  }
  .app-sidebar[data-real-collapsed="true"] nav a > svg {
    display: block !important;
    width: 20px !important;
    min-width: 20px !important;
    height: 20px !important;
    flex: 0 0 20px !important;
    opacity: 1;
  }
}

/* The logo is an entire image in the empty product area, never a cover backdrop. */
.real-pdv-surface { background-image: none !important; background-color: hsl(var(--background)); }
.real-pdv-empty { gap: 0; min-height: 0; overflow: hidden; }
.real-pdv-surface:has(.real-pdv-empty) { background-color: #142420; }
.real-pdv-surface:has(.real-pdv-empty) > :first-child {
  background: linear-gradient(175deg, #182b26, #101e1a);
}
.real-pdv-empty { background-color: transparent; }
.real-pdv-empty::before {
  content: "";
  display: block;
  width: min(100%, var(--real-pdv-logo-size, 100%));
  height: var(--real-pdv-logo-size, 100%);
  flex: 0 0 auto;
  border-radius: 50%;
  background: url('/logo-real.jpeg') center / contain no-repeat;
}
.real-pdv-empty > svg { display: none; }
.real-pdv-empty > p { display: none; }

/* Action labels remain legible against the client's green palette. */
.real-pdv-surface > :last-child {
  background-color: #142420 !important;
}
.real-pdv-surface > :last-child button {
  color: #fff !important;
  border-color: rgb(255 255 255 / 35%);
}
.real-pdv-surface > :last-child button:not(.bg-primary) { background-color: #254438; }
.real-pdv-surface > :last-child button:not(.bg-primary):enabled:hover { background-color: #315744; }
.real-pdv-surface > :last-child button:disabled { opacity: .75 !important; }
#main-content button.text-destructive {
  color: #fff !important;
  background-color: #b91c1c;
}
#main-content button.text-destructive:hover { background-color: #991b1b; }
#main-content button.text-muted-foreground {
  color: #fff !important;
  background-color: #254438;
}
