/* Tema ProServiceON — sobrepõe o huraga (29/10/2026) */
@import url('https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:wght@400;500;600;700&display=swap');

:root, [data-bs-theme=light], [data-bs-theme=dark] {
  --pson-orange: #FF8C01;
  --pson-orange-hover: #E67E00;
  --pson-orange-active: #CC7000;
  --bs-font-sans-serif: 'Plus Jakarta Sans', system-ui, -apple-system, 'Segoe UI', Roboto, Arial, sans-serif;
  --bs-body-font-family: var(--bs-font-sans-serif);
  --bs-primary: var(--pson-orange);
  --bs-primary-rgb: 255, 140, 1;
  --bs-link-color: var(--pson-orange);
  --bs-link-color-rgb: 255, 140, 1;
  --bs-link-hover-color: #FFA733;
  --bs-link-hover-color-rgb: 255, 167, 51;
}

[data-bs-theme=dark] {
  --bs-body-bg: #0B0B10;
  --bs-body-bg-rgb: 11, 11, 16;
  --bs-secondary-bg: #16161D;
  --bs-tertiary-bg: #121218;
  --bs-border-color: #2A2A34;
}

body { font-family: var(--bs-body-font-family); }

.btn-primary {
  --bs-btn-color: #111;
  --bs-btn-bg: var(--pson-orange);
  --bs-btn-border-color: var(--pson-orange);
  --bs-btn-hover-color: #111;
  --bs-btn-hover-bg: var(--pson-orange-hover);
  --bs-btn-hover-border-color: var(--pson-orange-hover);
  --bs-btn-active-color: #111;
  --bs-btn-active-bg: var(--pson-orange-active);
  --bs-btn-active-border-color: var(--pson-orange-active);
  --bs-btn-disabled-color: #111;
  --bs-btn-disabled-bg: var(--pson-orange);
  --bs-btn-disabled-border-color: var(--pson-orange);
  --bs-btn-focus-shadow-rgb: 255, 140, 1;
  font-weight: 600;
}
.btn-outline-primary {
  --bs-btn-color: var(--pson-orange);
  --bs-btn-border-color: var(--pson-orange);
  --bs-btn-hover-color: #111;
  --bs-btn-hover-bg: var(--pson-orange);
  --bs-btn-hover-border-color: var(--pson-orange);
  --bs-btn-active-color: #111;
  --bs-btn-active-bg: var(--pson-orange-active);
  --bs-btn-active-border-color: var(--pson-orange-active);
}

.form-control:focus, .form-select:focus {
  border-color: var(--pson-orange);
  box-shadow: 0 0 0 .25rem rgba(255, 140, 1, .25);
}
.form-check-input:checked { background-color: var(--pson-orange); border-color: var(--pson-orange); }
.nav-pills .nav-link.active, .page-item.active .page-link,
.list-group-item.active, .dropdown-item.active, .dropdown-item:active {
  background-color: var(--pson-orange); border-color: var(--pson-orange); color: #111;
}
.text-primary { color: var(--pson-orange) !important; }
.bg-primary { background-color: var(--pson-orange) !important; color: #111 !important; }
.badge.bg-primary { color: #111 !important; }

/* Acordeão (carrinho): cabeçalho aberto em laranja, não azul */
.accordion {
  --bs-accordion-active-color: var(--pson-orange);
  --bs-accordion-active-bg: rgba(255, 140, 1, .10);
  --bs-accordion-btn-focus-box-shadow: 0 0 0 .25rem rgba(255, 140, 1, .25);
}

/* Campos de formulário do pedido (Form Builder): rótulo, campo e ajuda empilhados */
fieldset > .mb-3.row > .col-form-label,
fieldset > .mb-3.row > .form-text,
fieldset > .mb-3.row > .col-sm-10 { flex: 0 0 100%; max-width: 100%; width: 100%; }
fieldset > .mb-3.row > .col-form-label { order: 1; font-weight: 600; padding-bottom: .25rem; }
fieldset > .mb-3.row > .col-sm-10 { order: 2; }
fieldset > .mb-3.row > .form-text { order: 3; padding-top: .35rem; }
fieldset > .mb-3.row > .form-text p { margin: 0; }

/* Página inicial da Área do Cliente: quadro de boas-vindas */
.pson-welcome {
  border: 1px solid rgba(255, 140, 1, .45);
  border-left: 4px solid var(--pson-orange);
  border-radius: .75rem;
  background: rgba(255, 140, 1, .08);
  padding: 1.25rem 1.5rem;
}

/* Menu lateral alinhado ao topo do conteúdo quando a página tem "Início / …" (só computador) */
@media (min-width: 768px) {
  .row:has(.breadcrumb) #sidebarMenu { margin-top: 36px; }
}
