/* MeuCondutor Admin V2 - camada visual oficial e exclusiva do perfil Administrador. */
/* Consolidado em 2026-08-20; não adicionar regras do Admin em outros arquivos. */

/* Admin layout: canonical solid shell (stage 1) */
@media (min-width: 821px) {
  body.admin-session {
    --admin-shell-blue: #3856ad;
    --admin-shell-blue-strong: #29448f;
    --admin-shell-bg: #f2f4f8;
    --admin-shell-surface: #ffffff;
    --admin-shell-line: #e1e5ed;
    --admin-shell-text: #172033;
    --admin-shell-muted: #68758a;
    background: #e9edf5 !important;
  }

  body.admin-session::before {
    display: none !important;
  }

  body.admin-session #appShell.shell {
    width: min(1440px, calc(100% - 32px)) !important;
    max-width: 1440px !important;
    min-height: calc(100vh - 32px) !important;
    margin: 16px auto !important;
    padding: 0 !important;
    gap: 0 !important;
    grid-template-columns: 252px minmax(0, 1fr) !important;
    overflow: hidden !important;
    border: 1px solid #d9deea !important;
    border-radius: 24px !important;
    background: var(--admin-shell-bg) !important;
    box-shadow: 0 24px 64px rgba(35, 52, 91, .16) !important;
  }

  body.admin-session #appShell > .side {
    position: relative !important;
    inset: auto !important;
    width: auto !important;
    min-width: 0 !important;
    height: calc(100vh - 34px) !important;
    min-height: 0 !important;
    padding: 22px 17px !important;
    gap: 16px !important;
    overflow-x: hidden !important;
    overflow-y: auto !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: var(--admin-shell-blue) !important;
    background-image: none !important;
    color: #fff !important;
    box-shadow: none !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
  }

  body.admin-session #appShell > .main {
    min-width: 0 !important;
    height: calc(100vh - 34px) !important;
    overflow-x: hidden !important;
    overflow-y: auto !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: var(--admin-shell-bg) !important;
    background-image: none !important;
    color: var(--admin-shell-text) !important;
    box-shadow: none !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
  }

  body.admin-session #appShell > .main > .top {
    position: relative !important;
    min-height: 94px !important;
    padding: 24px 32px !important;
    border: 0 !important;
    border-bottom: 1px solid var(--admin-shell-line) !important;
    border-radius: 0 !important;
    background: var(--admin-shell-surface) !important;
    background-image: none !important;
    color: var(--admin-shell-text) !important;
    box-shadow: none !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
  }

  body.admin-session #appShell > .main > .top h1,
  body.admin-session #appShell > .main > .top #title {
    color: var(--admin-shell-text) !important;
    text-shadow: none !important;
  }

  body.admin-session #appShell > .main > .top .eyebrow,
  body.admin-session #appShell > .main > .top #roleLabel {
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    color: var(--admin-shell-blue) !important;
    box-shadow: none !important;
    text-shadow: none !important;
  }

  body.admin-session #appShell .view {
    padding: 28px 32px 40px !important;
  }
}

#loginLoading .loading-orb{
  width:78px!important;
  height:78px!important;
  margin:0 0 2px!important;
  border-radius:0!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  overflow:visible!important;
  transform-origin:center!important;
}
#loginLoading .loading-orb img{
  width:72px!important;
  height:72px!important;
  max-width:none!important;
  max-height:none!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
}
#loginLoading .loading-card{
  row-gap:10px!important;
}

/* Admin navigation: canonical solid menu (stage 2) */
@media (min-width: 821px) {
  body.admin-session #appShell > .side .brand-home {
    width: 100% !important;
    min-height: 66px !important;
    margin: 0 0 2px !important;
    padding: 10px 11px !important;
    border: 0 !important;
    border-radius: 14px !important;
    background: var(--admin-shell-blue-strong) !important;
    color: #fff !important;
    box-shadow: none !important;
  }

  body.admin-session #appShell > .side .brand-home .mark {
    width: 42px !important;
    height: 42px !important;
    border: 0 !important;
    border-radius: 11px !important;
    background: #fff !important;
    box-shadow: none !important;
  }

  body.admin-session #appShell > .side .brand strong,
  body.admin-session #appShell > .side .brand span {
    color: #fff !important;
  }

  body.admin-session #appShell > .side .brand strong {
    font-size: 17px !important;
    letter-spacing: 0 !important;
  }

  body.admin-session #appShell > .side .brand span {
    margin-top: 2px !important;
    color: #cdd8f7 !important;
    font-size: 11px !important;
  }

  body.admin-session #appShell > .side .profile {
    width: 100% !important;
    height: auto !important;
    min-height: 142px !important;
    max-height: none !important;
    padding: 13px !important;
    gap: 11px !important;
    border: 0 !important;
    border-radius: 14px !important;
    background: var(--admin-shell-blue-strong) !important;
    color: #fff !important;
    box-shadow: none !important;
    overflow: visible !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
  }

  body.admin-session #appShell > .side .profile-top {
    display: grid !important;
    grid-template-columns: 42px minmax(0, 1fr) !important;
    align-items: center !important;
    gap: 10px !important;
    min-height: 42px !important;
  }

  body.admin-session #appShell > .side .profile-top > div,
  body.admin-session #appShell > .side .vehicle-pill > div:last-child {
    min-width: 0 !important;
  }

  body.admin-session #appShell > .side .profile strong,
  body.admin-session #appShell > .side .profile small,
  body.admin-session #appShell > .side .vehicle-pill strong,
  body.admin-session #appShell > .side .vehicle-pill small,
  body.admin-session #appShell > .side .vehicle-pill span {
    color: #fff !important;
  }

  body.admin-session #appShell > .side .profile small,
  body.admin-session #appShell > .side .vehicle-pill small,
  body.admin-session #appShell > .side .vehicle-pill span {
    color: #cdd8f7 !important;
  }

  body.admin-session #appShell > .side .avatar,
  body.admin-session #appShell > .side .vehicle-car-icon {
    border: 0 !important;
    background: #5f7bd2 !important;
    color: #fff !important;
    box-shadow: none !important;
  }

  body.admin-session #appShell > .side .vehicle-pill {
    padding: 10px !important;
    border: 1px solid #4d68bd !important;
    border-radius: 11px !important;
    background: #314b99 !important;
    box-shadow: none !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
  }

  body.admin-session #appShell > .side .feed-menu-toggle {
    min-height: 38px !important;
    margin: 1px 0 0 !important;
    padding: 0 4px !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    color: #dbe4ff !important;
    box-shadow: none !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
  }

  body.admin-session #appShell > .side .feed-menu-toggle span {
    font-size: 11px !important;
    font-weight: 850 !important;
    letter-spacing: .08em !important;
    text-transform: uppercase !important;
  }

  body.admin-session #appShell > .side .feed-menu-toggle strong {
    width: 26px !important;
    height: 26px !important;
    border-radius: 8px !important;
    background: #29448f !important;
    color: #fff !important;
  }

  body.admin-session #appShell > .side .nav-feed.mc-grouped {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 7px !important;
    max-height: none !important;
    padding: 0 2px 24px 0 !important;
    overflow-x: hidden !important;
    overflow-y: visible !important;
    background: transparent !important;
    box-shadow: none !important;
  }

  body.admin-session #appShell > .side .mc-nav-group {
    padding: 0 !important;
    overflow: hidden !important;
    border: 0 !important;
    border-radius: 12px !important;
    background: transparent !important;
    box-shadow: none !important;
  }

  body.admin-session #appShell > .side .mc-nav-group.is-open,
  body.admin-session #appShell > .side .mc-nav-group.is-click-open {
    padding-bottom: 5px !important;
    background: #29448f !important;
  }

  html body.admin-session #appShell > .side .nav-feed.mc-grouped .mc-nav-group-head {
    min-height: 48px !important;
    padding: 8px 9px 8px 12px !important;
    border: 0 !important;
    border-radius: 12px !important;
    background: transparent !important;
    background-image: none !important;
    color: #fff !important;
    box-shadow: none !important;
    text-shadow: none !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
  }

  html body.admin-session #appShell > .side .nav-feed.mc-grouped .mc-nav-group-head:hover,
  html body.admin-session #appShell > .side .nav-feed.mc-grouped .mc-nav-group.is-open > .mc-nav-group-head,
  html body.admin-session #appShell > .side .nav-feed.mc-grouped .mc-nav-group.is-click-open > .mc-nav-group-head {
    background: #fff !important;
    color: var(--admin-shell-blue-strong) !important;
  }

  body.admin-session #appShell > .side .mc-nav-group-title {
    color: inherit !important;
    font-size: 13px !important;
    line-height: 1.15 !important;
  }

  body.admin-session #appShell > .side .mc-nav-group-subtitle {
    margin-top: 3px !important;
    color: #cdd8f7 !important;
    font-size: 10px !important;
    line-height: 1.2 !important;
    text-shadow: none !important;
  }

  body.admin-session #appShell > .side .mc-nav-group-head:hover .mc-nav-group-subtitle,
  body.admin-session #appShell > .side .mc-nav-group.is-open > .mc-nav-group-head .mc-nav-group-subtitle,
  body.admin-session #appShell > .side .mc-nav-group.is-click-open > .mc-nav-group-head .mc-nav-group-subtitle {
    color: #6676a8 !important;
  }

  body.admin-session #appShell > .side .mc-nav-chevron {
    width: 25px !important;
    height: 25px !important;
    border: 0 !important;
    border-radius: 8px !important;
    background: #5f7bd2 !important;
    color: #fff !important;
    box-shadow: none !important;
  }

  body.admin-session #appShell > .side .mc-nav-group-body {
    padding: 6px 7px 2px !important;
    gap: 4px !important;
    background: transparent !important;
  }

  html body.admin-session #appShell > .side .mc-nav-group-body > button {
    min-height: 38px !important;
    margin: 0 !important;
    padding: 7px 9px !important;
    border: 0 !important;
    border-radius: 9px !important;
    background: transparent !important;
    color: #e5ebff !important;
    box-shadow: none !important;
    font-size: 11px !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
  }

  html body.admin-session #appShell > .side .mc-nav-group-body > button:hover,
  html body.admin-session #appShell > .side .mc-nav-group-body > button.active {
    background: #fff !important;
    color: var(--admin-shell-blue-strong) !important;
  }

  body.admin-session #appShell > .side .mc-nav-group-body > button .nav-icon {
    width: 25px !important;
    height: 25px !important;
    min-width: 25px !important;
    border-radius: 7px !important;
    background: #5f7bd2 !important;
    color: #fff !important;
    box-shadow: none !important;
  }

  html body.admin-session #appShell > .side .mc-nav-group.mc-menu-attention > .mc-nav-group-head,
  html body.admin-session #appShell > .side .mc-nav-group-body > button.mc-menu-attention {
    background: #e62e43 !important;
    color: #fff !important;
    animation: mcAdminMenuPulse 1.8s ease-in-out infinite !important;
  }

  body.admin-session #appShell > .side .mc-nav-group.mc-menu-attention > .mc-nav-group-head .mc-nav-group-subtitle,
  body.admin-session #appShell > .side .mc-nav-group.mc-menu-attention > .mc-nav-group-head * {
    color: #fff !important;
  }

  @keyframes mcAdminMenuPulse {
    0%, 100% { box-shadow: 0 0 0 0 rgba(230, 46, 67, 0) !important; }
    50% { box-shadow: 0 0 0 4px rgba(230, 46, 67, .18) !important; }
  }
}

/* Admin header: canonical solid toolbar (stage 3) */
.admin-global-search {
  display: none;
}

@media (min-width: 821px) {
  body.admin-session #appShell > .main > .top {
    display: grid !important;
    grid-template-columns: minmax(190px, auto) minmax(260px, 520px) minmax(250px, 1fr) !important;
    align-items: center !important;
    gap: 24px !important;
    min-height: 88px !important;
    padding: 18px 330px 18px 32px !important;
    border: 0 !important;
    border-bottom: 1px solid #e2e6ef !important;
    border-radius: 0 !important;
    background: #fff !important;
    background-image: none !important;
    box-shadow: none !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
  }

  body.admin-session #appShell > .main > .top .top-title {
    min-width: 0 !important;
  }

  body.admin-session #appShell > .main > .top .eyebrow {
    margin: 0 0 5px !important;
    color: #526cb9 !important;
    font-size: 10px !important;
    font-weight: 900 !important;
    letter-spacing: .08em !important;
    text-transform: uppercase !important;
  }

  body.admin-session #appShell > .main > .top h1,
  body.admin-session #appShell > .main > .top #title {
    margin: 0 !important;
    color: #172033 !important;
    font-size: 23px !important;
    font-weight: 850 !important;
    line-height: 1.1 !important;
    letter-spacing: 0 !important;
  }

  body.admin-session .admin-global-search {
    display: grid !important;
    grid-template-columns: 20px minmax(0, 1fr) auto !important;
    align-items: center !important;
    gap: 8px !important;
    width: min(100%, 520px) !important;
    min-height: 42px !important;
    padding: 0 13px !important;
    border: 1px solid #dde3ef !important;
    border-radius: 10px !important;
    background: #f4f6fa !important;
    color: #65728a !important;
    box-shadow: none !important;
  }

  body.admin-session .admin-global-search > span {
    color: #3856ad !important;
    font-size: 20px !important;
    line-height: 1 !important;
  }

  body.admin-session .admin-global-search input {
    width: 100% !important;
    min-width: 0 !important;
    height: 38px !important;
    padding: 0 !important;
    border: 0 !important;
    outline: 0 !important;
    background: transparent !important;
    color: #172033 !important;
    font: inherit !important;
    font-size: 12px !important;
    box-shadow: none !important;
  }

  body.admin-session .admin-global-search input::placeholder {
    color: #8792a6 !important;
  }

  body.admin-session .admin-global-search small {
    color: #8b95a8 !important;
    font-size: 9px !important;
    white-space: nowrap !important;
  }

  body.admin-session #appShell > .floating-actions {
    position: absolute !important;
    z-index: 35 !important;
    top: 20px !important;
    right: 28px !important;
    left: auto !important;
    bottom: auto !important;
    display: flex !important;
    align-items: center !important;
    gap: 7px !important;
    width: auto !important;
    min-height: 42px !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
  }

  body.admin-session #appShell > .floating-actions .theme-select,
  body.admin-session #appShell > .floating-actions .btn {
    min-height: 38px !important;
    height: 38px !important;
    margin: 0 !important;
    padding: 0 12px !important;
    border: 1px solid #dce2ed !important;
    border-radius: 9px !important;
    background: #f4f6fa !important;
    color: #263550 !important;
    box-shadow: none !important;
    font-size: 11px !important;
    font-weight: 800 !important;
    white-space: nowrap !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
  }

  body.admin-session #appShell > .floating-actions .theme-select {
    width: 116px !important;
  }

  body.admin-session #appShell > .floating-actions .btn:hover,
  body.admin-session #appShell > .floating-actions .theme-select:hover {
    border-color: #9baddd !important;
    background: #e9eefb !important;
    color: #29448f !important;
  }
}

@media (min-width: 821px) and (max-width: 1180px) {
  body.admin-session #appShell > .main > .top {
    grid-template-columns: minmax(180px, auto) minmax(220px, 1fr) !important;
    padding-right: 290px !important;
  }

  body.admin-session .admin-global-search small {
    display: none !important;
  }

  body.admin-session #appShell > .floating-actions {
    right: 18px !important;
  }
}

