/* Camada adaptativa de UX para desktop/notebook. Mantém o comportamento mobile existente. */

:root{
  --desktop-content:1760px;
  --desktop-sidebar:236px;
  --desktop-transition:160ms ease;
}

.header-leading{display:flex;align-items:center;gap:5px;min-width:0}
.header-search{height:42px;border:1px solid var(--cinza-200);background:var(--cinza-050);border-radius:12px;color:var(--cinza-600);display:flex;align-items:center;gap:8px;padding:0 10px 0 12px;font-weight:700;font-size:12.5px;transition:border-color var(--desktop-transition),background var(--desktop-transition),box-shadow var(--desktop-transition)}
.header-search:hover{background:#fff;border-color:var(--cinza-300);box-shadow:0 5px 16px rgba(23,43,54,.07)}
.header-search svg{width:17px;height:17px}
.header-search kbd,.global-search-footer kbd{font:700 10px/1 var(--fonte);color:var(--cinza-500);background:#fff;border:1px solid var(--cinza-200);border-bottom-color:var(--cinza-300);border-radius:6px;padding:4px 6px;box-shadow:0 1px 0 rgba(23,43,54,.08)}
.header-user{height:46px;border:1px solid transparent;background:transparent;border-radius:13px;display:flex;align-items:center;gap:8px;padding:4px 7px;color:var(--cinza-700);text-align:left;transition:background var(--desktop-transition),border-color var(--desktop-transition)}
.header-user:hover{background:var(--cinza-050);border-color:var(--cinza-200)}
.header-user-avatar{width:34px;height:34px;border-radius:10px;background:linear-gradient(135deg,var(--verde-escuro),var(--verde-claro));color:#fff;display:grid;place-items:center;font-size:12px;font-weight:900;letter-spacing:.02em}
.header-user-copy{display:block;min-width:0;max-width:130px}
.header-user-copy strong,.header-user-copy small{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.header-user-copy strong{font-size:12.5px}.header-user-copy small{font-size:10.5px;color:var(--cinza-500);margin-top:2px}
.header-user>svg{width:15px;height:15px;color:var(--cinza-400)}

.home-intro{display:flex;align-items:flex-end;justify-content:space-between;gap:22px;margin:2px 0 18px;padding:4px 2px}
.home-intro h2{margin:4px 0 5px;font-size:clamp(23px,2.2vw,31px);line-height:1.05;letter-spacing:-.02em}.home-intro p{margin:0;color:var(--cinza-500);font-size:13.5px;line-height:1.45}
.home-eyebrow{font-size:10.5px;font-weight:900;letter-spacing:.12em;color:var(--verde-escuro)}
.home-intro-actions{display:flex;align-items:center;gap:9px;flex-wrap:wrap;justify-content:flex-end}
.home-status-pill{display:inline-flex;align-items:center;gap:8px;min-height:38px;border-radius:999px;padding:8px 12px;font-size:11.5px;font-weight:800;border:1px solid var(--cinza-200);background:#fff;white-space:nowrap}
.home-status-pill>span{width:8px;height:8px;border-radius:50%;background:var(--conforme);box-shadow:0 0 0 4px rgba(65,143,52,.1)}
.home-status-pill.attention>span{background:var(--faltando);box-shadow:0 0 0 4px rgba(217,138,32,.11)}
.home-status-pill.critical>span{background:var(--nao-conforme);box-shadow:0 0 0 4px rgba(198,59,59,.11)}

.home-action-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:15px 0}
.home-action{border:1px solid var(--cinza-200);background:#fff;border-radius:16px;padding:13px 14px;display:grid;grid-template-columns:40px minmax(0,1fr) 18px;gap:11px;align-items:center;text-align:left;box-shadow:var(--sombra-card);transition:transform var(--desktop-transition),border-color var(--desktop-transition),box-shadow var(--desktop-transition)}
.home-action>.quick-icon{width:40px;height:40px;border-radius:12px}.home-action>.quick-icon svg{width:21px;height:21px}.home-action>svg{width:17px;height:17px;color:var(--cinza-400)}
.home-action strong,.home-action small{display:block}.home-action strong{font-size:13.5px}.home-action small{font-size:11.5px;color:var(--cinza-500);margin-top:3px;line-height:1.3}
.home-content-grid{display:grid;grid-template-columns:minmax(250px,.72fr) minmax(340px,1.15fr) minmax(340px,1.15fr);gap:14px;align-items:start}
.home-content-grid>.card{margin-top:0}
.fleet-health-card{min-width:0}.fleet-health-card .card-header{display:block}.fleet-health-status{display:inline-flex;margin-top:9px;border-radius:999px;padding:6px 9px;font-size:10.5px;font-weight:800;background:var(--conforme-bg);color:var(--conforme)}.fleet-health-status.attention{background:var(--faltando-bg);color:#A26412}.fleet-health-status.critical{background:var(--nao-conforme-bg);color:var(--nao-conforme)}
.fleet-health-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.fleet-health-metric{background:var(--cinza-050);border:1px solid var(--cinza-200);border-radius:12px;padding:11px}.fleet-health-metric span,.fleet-health-metric strong{display:block}.fleet-health-metric span{font-size:10.5px;color:var(--cinza-500);line-height:1.25}.fleet-health-metric strong{font-family:var(--fonte-dado);font-size:22px;margin-top:6px;color:var(--cinza-900)}.metric-danger{color:var(--nao-conforme)!important}.metric-warning{color:#B06D13!important}

.data-table-wrap{overflow-x:auto!important;overflow-y:visible!important;scrollbar-gutter:stable}
.data-table-wrap table{min-width:760px}
.data-table-wrap thead th{position:sticky;top:0;z-index:2;background:var(--cinza-050)}
.table-actions{flex-wrap:wrap;row-gap:6px}

.chart-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,480px),1fr))!important}
.chart-card{transition:border-color var(--desktop-transition),box-shadow var(--desktop-transition),transform var(--desktop-transition)}
.chart-header-actions{gap:8px}.chart-legend{margin-top:5px}.legend-item{font-weight:700}.legend-dot{box-shadow:inset 0 0 0 1px rgba(23,43,54,.06)}
.chart-bar,.chart-point{transition:opacity var(--desktop-transition),filter var(--desktop-transition),transform var(--desktop-transition)}
.chart-bar:hover,.chart-point:hover{opacity:1;filter:brightness(.94)}

.global-search-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}.global-search-heading h3{font-size:20px}.global-search-heading p{margin:4px 0 0}
.global-search-input-wrap{height:50px;margin-top:14px;border:1.5px solid var(--cinza-200);border-radius:14px;background:var(--cinza-050);display:grid;grid-template-columns:22px minmax(0,1fr);align-items:center;gap:8px;padding:0 14px;transition:border-color var(--desktop-transition),box-shadow var(--desktop-transition),background var(--desktop-transition)}
.global-search-input-wrap:focus-within{background:#fff;border-color:var(--verde-claro);box-shadow:0 0 0 4px rgba(134,189,0,.12)}.global-search-input-wrap svg{width:20px;height:20px;color:var(--cinza-500)}.global-search-input-wrap input{border:0;outline:0;background:transparent;width:100%;height:100%;font:inherit;font-size:14px;color:var(--cinza-900)}
.global-search-results{display:flex;flex-direction:column;gap:5px;margin-top:12px;max-height:440px;overflow:auto;padding-right:3px}.global-search-result{width:100%;border:1px solid transparent;background:transparent;border-radius:12px;padding:10px 9px;display:grid;grid-template-columns:96px minmax(0,1fr) 18px;gap:10px;align-items:center;text-align:left;transition:background var(--desktop-transition),border-color var(--desktop-transition)}.global-search-result:hover,.global-search-result:focus-visible{background:var(--cinza-050);border-color:var(--cinza-200)}.global-search-result>svg{width:17px;height:17px;color:var(--cinza-400)}
.global-search-kind{font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:.06em;color:var(--verde-escuro);background:rgba(134,189,0,.1);border-radius:8px;padding:6px 7px;text-align:center}.global-search-copy{min-width:0}.global-search-copy strong,.global-search-copy small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.global-search-copy strong{font-size:13.5px}.global-search-copy small{font-size:11.5px;color:var(--cinza-500);margin-top:3px}
.global-search-empty{min-height:190px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;color:var(--cinza-500);padding:22px}.global-search-empty svg{width:30px;height:30px;margin-bottom:9px;color:var(--cinza-400)}.global-search-empty strong{color:var(--cinza-700);font-size:14px}.global-search-empty span{font-size:12px;max-width:390px;line-height:1.45;margin-top:5px}
.global-search-footer{border-top:1px solid var(--cinza-200);margin-top:10px;padding-top:10px;display:flex;justify-content:space-between;gap:12px;color:var(--cinza-500);font-size:10.5px}.global-search-footer span{display:flex;align-items:center;gap:5px}
.modal:has(.global-search){width:min(760px,100%)}
.modal:has(form[data-submit="save-collaborator"]){width:min(720px,100%)}

@media(hover:hover) and (pointer:fine){
  .home-action:hover,.quick-card:hover{transform:translateY(-2px);border-color:rgba(134,189,0,.72);box-shadow:0 8px 24px rgba(23,54,20,.11)}
  .nav-link,.btn{transition:background var(--desktop-transition),color var(--desktop-transition),border-color var(--desktop-transition),box-shadow var(--desktop-transition),transform var(--desktop-transition)}
}

/* Desktop/notebook: mantém navegação persistente já a partir de 1024 px. */
@media(min-width:1024px){
  :root{--sidebar:var(--desktop-sidebar)}
  .app-shell{display:grid!important;grid-template-columns:var(--sidebar) minmax(0,1fr)!important}
  .sidebar{display:flex!important;position:sticky!important;left:auto!important;top:0!important;width:auto!important;height:100vh!important;transform:none!important;box-shadow:none!important}
  .drawer-overlay{display:none!important}
  .mobile-menu-btn{display:none!important}
  .bottom-nav{display:none!important}
  .desktop-app-header{grid-template-columns:auto minmax(0,1fr) auto!important}
  .desktop-app-header>.header-leading{display:flex!important}
  .header-leading .header-brand{display:none!important}
  .page-content{max-width:var(--desktop-content);padding:24px clamp(22px,2.3vw,38px) 42px}
  .sidebar-title{margin-top:4px}
  .sidebar-nav{gap:4px}
  .nav-link{min-height:43px}
}

@media(min-width:1024px) and (max-width:1279px){
  :root{--desktop-sidebar:216px}
  .sidebar{padding:16px 12px}.sidebar-logo{height:52px;margin-bottom:14px}.sidebar-logo img{width:158px}.sidebar-title{font-size:10.5px}.nav-link{padding:10px 10px;font-size:13px;gap:9px}.nav-link svg{width:19px;height:19px;flex-basis:19px}
  .header-search span,.header-search kbd,.header-user-copy{display:none}.header-search{width:42px;padding:0;justify-content:center}.header-user{padding:4px}.header-user>svg{display:none}
  .home-content-grid{grid-template-columns:minmax(220px,.75fr) minmax(0,1.25fr)}.home-recent-card{grid-column:1/-1}
  .home-action-strip{grid-template-columns:1fr 1fr}.home-action:last-child{grid-column:1/-1}
}

@media(min-width:1440px){
  :root{--desktop-sidebar:250px}
  .page-content{padding-top:28px}.home-content-grid{gap:17px}.home-action-strip{gap:14px}.chart-grid{gap:18px!important}
}

/* Tablet: gaveta lateral; mantém mais densidade que o celular. */
@media(max-width:1023px){
  .header-search{width:44px;padding:0;justify-content:center}.header-search span,.header-search kbd{display:none}
  .header-user{display:none}
  .home-content-grid{grid-template-columns:1fr 1fr}.fleet-health-card{grid-column:1/-1}.home-action-strip{grid-template-columns:1fr 1fr}.home-action:last-child{grid-column:1/-1}
}

@media(max-width:767px){
  .header-search{display:none}
  .desktop-create-button{display:none}
  .home-intro{display:block;margin:0 0 14px;padding:0}.home-intro h2{font-size:20px;margin-top:3px}.home-intro p{font-size:12.5px}.home-eyebrow{font-size:9.5px}.home-intro-actions{justify-content:flex-start;margin-top:10px}.home-intro-actions .btn{display:none}.home-status-pill{min-height:34px;padding:7px 10px;white-space:normal}
  .home-action-strip{grid-template-columns:1fr;gap:9px;margin:12px 0}.home-action:last-child{grid-column:auto}.home-action{min-height:78px;padding:11px 12px}
  .home-content-grid{grid-template-columns:1fr;gap:10px}.fleet-health-card{grid-column:auto}.fleet-health-grid{grid-template-columns:1fr 1fr}
  .global-search-footer{display:none}.global-search-result{grid-template-columns:78px minmax(0,1fr) 16px}.global-search-kind{font-size:9px;padding:5px}.global-search-results{max-height:52vh}
  .data-table-wrap table{min-width:680px}
}

@media(max-width:420px){
  .fleet-health-grid{grid-template-columns:1fr 1fr}.fleet-health-metric{padding:9px}.fleet-health-metric strong{font-size:19px}
  .global-search-result{grid-template-columns:1fr 16px}.global-search-kind{grid-column:1/2;width:max-content}.global-search-copy{grid-column:1/2}.global-search-result>svg{grid-column:2/3;grid-row:1/3}
}

@media(prefers-reduced-motion:reduce){
  .header-search,.header-user,.home-action,.chart-card,.chart-bar,.chart-point,.global-search-result{transition:none!important}
}
