/* Owner chrome: traffic light + Sala/Completo toggle */
.pf-tl-chip{
  display:inline-flex;
  align-items:center;
  gap:.55rem;
  max-width:280px;
  padding:.35rem .75rem .35rem .45rem;
  border-radius:999px;
  text-decoration:none !important;
  line-height:1.15;
  box-shadow:0 4px 14px rgba(0,0,0,.18);
  transition:transform .12s ease, box-shadow .12s ease;
}
.pf-tl-chip:hover{ transform:translateY(-1px); }
.pf-tl-chip__dot{ font-size:1.15rem; line-height:1; }
.pf-tl-chip__kicker{
  display:block;
  font-size:.62rem;
  font-weight:700;
  letter-spacing:.06em;
  text-transform:uppercase;
  opacity:.8;
}
.pf-tl-chip__line{
  display:block;
  font-size:.78rem;
  font-weight:700;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
  max-width:210px;
}
.pf-tl-chip--green{ background:#1aae6f; color:#fff; }
.pf-tl-chip--yellow{ background:#ff9f1c; color:#1a1208; }
.pf-tl-chip--red{
  background:#f5365c;
  color:#fff;
  animation:pfTlPulse 1.6s ease-in-out infinite;
}
.pf-tl-chip--off{ background:rgba(255,255,255,.18); color:#fff; }
@keyframes pfTlPulse{
  0%,100%{ box-shadow:0 0 0 0 rgba(245,54,92,.55); }
  50%{ box-shadow:0 0 0 8px rgba(245,54,92,0); }
}

.pf-ux-toggle{
  display:inline-flex;
  background:rgba(0,0,0,.22);
  border-radius:999px;
  padding:3px;
  margin-left:.35rem;
}
.pf-ux-toggle__btn{
  border:0;
  background:transparent;
  color:rgba(255,255,255,.85);
  font-size:.72rem;
  font-weight:800;
  letter-spacing:.04em;
  text-transform:uppercase;
  padding:.35rem .7rem;
  border-radius:999px;
  cursor:pointer;
}
.pf-ux-toggle__btn.is-on{
  background:#fff;
  color:#32325d;
}
.navbar-light .pf-ux-toggle{ background:#e9ecef; }
.navbar-light .pf-ux-toggle__btn{ color:#525f7f; }
.navbar-light .pf-ux-toggle__btn.is-on{ background:#5e72e4; color:#fff; }

.pf-ux-choice{
  border:2px solid #e9ecef;
  border-radius:1rem;
  padding:1.25rem;
  background:#fff;
  min-height:180px;
  cursor:pointer;
}
.pf-ux-choice:hover{ border-color:#5e72e4; }
.pf-ux-choice--sala{ border-color:#fb6340; }
.pf-ux-choice--office{ border-color:#2dce89; }
.pf-ux-choice__tag{
  font-size:.7rem;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
  color:#8898aa;
}
.pf-ux-choice__title{ font-weight:800; font-size:1.05rem; margin-top:.35rem; }

.pf-owner-chrome{
  display:flex;
  align-items:center;
  gap:.5rem;
  flex-wrap:wrap;
}
#sidenav-main .pf-owner-chrome{
  padding:.5rem .75rem 1rem;
}
#sidenav-main .pf-tl-chip{ max-width:100%; }
#sidenav-main .pf-tl-chip--off{ background:#525f7f; }
#sidenav-main .pf-tl-chip__line{ color:#fff; max-width:160px; }

@media (max-width:767px){
  .pf-tl-chip__line{ max-width:140px; }
}

/* Tester UX: logo, chat, toolbars, empty states, restaurant form */
#sidenav-main .navbar-brand{
  overflow:visible;
  padding-left:.75rem !important;
  margin-left:0;
}
#sidenav-main .navbar-brand-img{
  max-width:180px !important;
  margin-left:0;
}
.pf-agent-fab{
  right:20px !important;
  bottom:88px !important;
}
.pf-agent-panel{
  right:20px !important;
  bottom:156px !important;
}
.pf-hrm-toolbar{
  display:flex;
  flex-wrap:wrap;
  gap:.5rem;
  justify-content:flex-end;
  max-width:100%;
}
.pf-hrm-toolbar .btn{ margin:0; }
.pf-profit-nav{
  display:flex;
  flex-wrap:wrap;
  gap:.45rem;
}
.pf-profit-nav .btn{
  font-size:.8rem;
  padding:.45rem .7rem;
  white-space:nowrap;
}
.pf-empty-state{ min-height:140px; }
.pf-live-board .card{
  box-shadow:0 0 0 1px #e9ecef, 0 8px 24px rgba(50,50,93,.08);
}
.pf-resto-actions .btn{ margin-left:.35rem; margin-bottom:.35rem; }
.pf-resto-tabs .nav-link{
  min-height:44px;
  display:flex;
  align-items:center;
  justify-content:center;
}
.pf-app-fields h4.display-4{
  font-size:1.1rem;
  font-weight:700;
  background:#fff;
  border:1px solid #e9ecef;
  border-radius:.5rem;
  padding:.75rem 1rem;
  margin-top:1.25rem;
  box-shadow:0 4px 12px rgba(50,50,93,.06);
}
.alert-success.pf-flash-autohide{
  background:#3d8b6e;
  border-color:#3d8b6e;
  color:#fff;
}

/* Page titles: high contrast on light navbar (not white-on-white) */
#navbar-main .h4,
#navbar-main .pf-page-title{
  color:#1A1A1A !important;
  opacity:1 !important;
  font-weight:800;
  letter-spacing:.02em;
}

/* Purple header band must span the full main column (width is set in pf-ui-critical) */
.main-content > .header.bg-gradient-primary,
.main-content > .header.pb-8:not([style*="background-image"]),
.main-content > .header.pb-6:not([style*="background-image"]),
.main-content > .header.pb-7:not([style*="background-image"]){
  display:block;
  width:100% !important;
  max-width:none !important;
  margin-left:0 !important;
  margin-right:0 !important;
  box-sizing:border-box;
  background-color:#5e72e4 !important;
  background-image:linear-gradient(87deg,#5e72e4 0%,#825ee4 100%) !important;
  background-size:100% 100% !important;
  background-repeat:no-repeat !important;
}

/* Sidebar logo: do not clip the PanelFood wordmark */
#sidenav-main{
  overflow-x:visible;
}
#sidenav-main .navbar-brand{
  overflow:visible !important;
  padding:.85rem 1rem .35rem 1.1rem !important;
  margin-left:0 !important;
  height:auto !important;
  max-width:100%;
}
#sidenav-main .navbar-brand-img,
#sidenav-main .navbar-brand > img{
  max-width:158px !important;
  max-height:48px !important;
  height:auto !important;
  width:auto !important;
  object-fit:contain;
  object-position:left center;
}

.pf-empty-state{
  min-height:220px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
}
.pf-empty-state__art svg{
  width:88px;
  height:88px;
}
.pf-share-actions .btn{
  margin:.25rem;
}

/* Page titles on the light top bar (Argon navbar-dark inherits white/65%) */
#navbar-main.navbar-dark .pf-page-title,
#navbar-main .pf-page-title,
#navbar-main a.h4,
#navbar-main.navbar-dark a.h4{
  color:#1A1A1A !important;
  opacity:1 !important;
  -webkit-text-fill-color:#1A1A1A !important;
  font-weight:800 !important;
}
.card-header h3,
.card-header .h3,
.card-header h2{
  color:#1A1A1A !important;
}

.pf-qr{
  position:relative;
  display:inline-block;
}
.pf-qr img.pf-qr-mark{
  position:absolute;
  left:50%;
  top:50%;
  width:22%;
  height:22%;
  transform:translate(-50%,-50%);
  background:#fff;
  border-radius:8px;
  padding:3px;
  object-fit:contain;
}
.pf-link-chip{
  display:inline-flex;
  align-items:center;
  gap:.4rem;
  font-size:.75rem;
  font-weight:700;
  padding:.4rem .7rem;
  border-radius:999px;
  vertical-align:middle;
}
.pf-link-dot{
  width:.5rem;
  height:.5rem;
  border-radius:50%;
  background:currentColor;
}
.pf-link-on{background:#1aae6f;color:#fff;}
.pf-link-off{background:#f5365c;color:#fff;}
.pf-link-queue{background:#ff9f1c;color:#1a1208;}
.pf-link-sync{background:#11cdef;color:#fff;}
#navbar-main .pf-link-chip{margin:0;}
