/* ============================================================
   StageON — Brand overrides (v1.0)
   Caricato dopo style.css. Palette da Brand Guidelines:
   navy #354048 · arancio #e06337 · bianco caldo #fcf9f1
   nero tecnico #0e0e0f · silver #c6c4bf
   ============================================================ */

:root {
  --so-navy: #354048;
  --so-navy-dark: #2d3741;
  --so-orange: #e06337;
  --so-orange-dark: #c8552d;
  --so-orange-tint: #fbece5;
  --so-bg: #f2f3f6;
  --so-black: #0e0e0f;
  --so-silver: #c6c4bf;
}

/* ------------------------------------------------------------
   Residui Bootstrap (classi non ridefinite da style.css)
   ------------------------------------------------------------ */
a {
  color: var(--so-orange);
}

a:hover {
  color: var(--so-orange-dark);
}

.text-primary {
  color: var(--so-orange) !important;
}

.bg-primary {
  background-color: var(--so-orange) !important;
}

.border-primary {
  border-color: var(--so-orange) !important;
}

.badge-primary {
  background-color: var(--so-orange);
}

.btn-link {
  color: var(--so-orange);
}

.btn-link:hover {
  color: var(--so-orange-dark);
}

.progress-bar {
  background-color: var(--so-orange);
}

.page-link {
  color: var(--so-orange);
}

.page-link:hover {
  color: var(--so-orange-dark);
}

.page-item.active .page-link {
  background-color: var(--so-orange);
  border-color: var(--so-orange);
}

.dropdown-item.active,
.dropdown-item:active {
  background-color: var(--so-orange);
}

.custom-control-input:checked ~ .custom-control-label::before {
  border-color: var(--so-orange);
  background-color: var(--so-orange);
}

.form-control:focus {
  border-color: var(--so-orange);
  -webkit-box-shadow: 0 0 0 0.2rem rgba(224, 99, 55, 0.2);
          box-shadow: 0 0 0 0.2rem rgba(224, 99, 55, 0.2);
}

/* ------------------------------------------------------------
   Tipografia
   ------------------------------------------------------------ */
body {
  color: var(--so-black);
}

h1, h2, h3, h4, h5, h6 {
  color: var(--so-black);
  font-weight: 600;
}

/* ------------------------------------------------------------
   Sidebar
   ------------------------------------------------------------ */
.pcoded-navbar .pcoded-inner-navbar li.pcoded-menu-caption {
  color: var(--so-orange);
  letter-spacing: 0.08em;
}

/* Testo e icone menu: quasi bianco come da mockup */
.pcoded-navbar a,
.pcoded-navbar .pcoded-inner-navbar li > a {
  color: #eef1f2;
}

.pcoded-navbar .pcoded-inner-navbar li > a .pcoded-micon {
  color: #eef1f2;
}

/* Voce attiva: pillola arancio arrotondata con bordo chiaro (da mockup) */
.pcoded-navbar .pcoded-inner-navbar > li > a {
  border-radius: 9px;
  margin: 3px 12px;
  padding: 9px 13px;
  border: 1px solid transparent;
}

.pcoded-navbar .pcoded-inner-navbar > li.active > a,
.pcoded-navbar .pcoded-inner-navbar > li.pcoded-trigger > a {
  background: var(--so-orange);
  color: #fff;
  border-color: rgba(255, 255, 255, 0.45);
}

/* Hover: stessa pillola arancio della voce attiva */
.pcoded-navbar .pcoded-inner-navbar > li:hover > a,
.pcoded-navbar .pcoded-inner-navbar > li:focus > a {
  background: var(--so-orange);
  color: #fff;
}

.pcoded-navbar .pcoded-inner-navbar li.active > a,
.pcoded-navbar .pcoded-inner-navbar li:focus > a,
.pcoded-navbar .pcoded-inner-navbar li:hover > a {
  color: #fff;
}

.pcoded-navbar .pcoded-inner-navbar > li.active > a,
.pcoded-navbar .pcoded-inner-navbar > li.active:hover > a,
.pcoded-navbar .pcoded-inner-navbar > li.pcoded-trigger > a {
  color: #fff;
}

/* Niente barretta laterale: la pillola basta */
.pcoded-navbar .pcoded-inner-navbar > li.active:after,
.pcoded-navbar .pcoded-inner-navbar > li.pcoded-trigger:after {
  display: none;
}

/* Decoro brand: "O" di StageON dopo l'ultima voce di menu (da mockup).
   Elemento nel flusso: scorre col menu, mai sovrapposto alle voci. */
.so-sidebar-decor {
  height: 230px;
  margin-top: 30px;
  background-image:
    radial-gradient(circle at 116px 69px, #fff 0 18px, transparent 19px),
    radial-gradient(circle at 110px 160px,
      #354048 0 54px, #e06337 55px 127px, transparent 128px);
  background-repeat: no-repeat;
  pointer-events: none;
}

.pcoded-navbar.navbar-collapsed .so-sidebar-decor {
  display: none;
}

.pcoded-navbar.navbar-collapsed:hover .so-sidebar-decor {
  display: block;
}

/* ------------------------------------------------------------
   Card e superfici
   ------------------------------------------------------------ */
.card {
  border-radius: 12px;
}

.card .card-header {
  border-top-left-radius: 12px;
  border-top-right-radius: 12px;
}

.btn {
  border-radius: 8px;
}

.form-control,
.custom-select {
  border-radius: 8px;
}

.alert {
  border-radius: 10px;
}

/* ------------------------------------------------------------
   Pagine auth: fondo navy come da brand
   ------------------------------------------------------------ */
.auth-wrapper {
  background: var(--so-navy);
}
