/* Gestor PW v2 — interface sóbria, legível e consistente; sem regras de negócio. */
:root{--pw-navy:#06245b;--pw-teal:#00aaa7;--primary:#06245b;--dark:#0d1f38;--bg:#f5f7fa;--ink:#26364b;--muted:#64748b;--border:#e3e8ef;--shadow:0 2px 8px #142a4310}
body{font-family:Inter,"Segoe UI",Arial,sans-serif;font-size:14px;line-height:1.55;color:var(--ink);background:var(--bg)}
.layout-empresa .sidebar{background:#0d1f38;border-right:1px solid #ffffff0b;padding:24px 12px 16px}
.sidebar .brand{padding-bottom:22px;border-bottom:1px solid #ffffff12}
.sidebar .brand b{font-size:15px;font-weight:650;letter-spacing:0;line-height:1.4}
.sidebar .brand small{font-size:10px;color:#9fb0c5;margin-top:3px}
.sidebar nav a{font-size:13px;min-height:42px;border-radius:7px;padding:10px 12px;color:#bdc9d8;letter-spacing:0}
.layout-empresa .sidebar nav a:hover{background:#ffffff09;color:#fff}
.layout-empresa .sidebar nav a[aria-current=page]{background:#ffffff0c;color:#fff;border-color:#ffffff08;box-shadow:inset 3px 0 0 #00aaa7}
.sidebar nav a .ui-icon{width:18px;height:18px;opacity:.85}
.layout-empresa .sidebar-toggle{background:#1b2f49;border-color:#33465e}
.nav-section{font-size:10px;color:#879ab1;letter-spacing:.09em;padding-top:20px}
.top{background:#fff;border-bottom:1px solid var(--border);height:76px;box-shadow:none}
.top h1{font-size:19px;font-weight:650;letter-spacing:-.025em}
.top-title small{font-size:11px;color:#64748b}
.top-profile b{font-size:12px;font-weight:600}.top-profile small{font-size:11px}
.profile-avatar{background:#edf3f9;color:#06245b;width:36px;height:36px}
.tarefas-sino{background:#f7f9fc;border:1px solid #e6ebf1;border-radius:10px}
.content{max-width:1580px;padding:30px 32px 48px}
.page-intro{margin-bottom:26px}.page-intro h2{font-size:28px;line-height:1.3;font-weight:650;letter-spacing:-.035em;color:#172b45}
.page-intro p{font-size:13px;line-height:1.7;color:#64748b}.page-path{font-size:11px;color:#718197}.page-intro-tag{font-size:11px;border-color:#e3e8ef;color:#62758b}
.panel,.card,.driver-card{background:#fff;border:1px solid var(--border);border-radius:12px;box-shadow:var(--shadow)}
.panel{padding:24px;margin-top:22px}.panel-head{gap:16px;margin-bottom:20px}.panel h2{font-size:17px;font-weight:650;color:#253a54}.panel h3{font-size:15px;font-weight:650}.panel>p{font-size:13px;color:#64748b}
.grid{gap:16px}.card{padding:22px;min-height:120px}.card small{font-size:12px;line-height:1.5;color:#64748b;font-weight:550}.card .num{font-size:34px;font-weight:650;letter-spacing:-.04em;color:#172b45;margin-top:10px;font-variant-numeric:tabular-nums}
.dashboard-stat-card{border-top-width:2px}.dashboard-stat-card:hover{transform:none;box-shadow:0 4px 14px #142a4310}.kpi-icon{background:#f3f6fa;color:#71869e;border-radius:9px}
.table-scroll,.layout-table-scroll{border-radius:10px;border-color:#e3e8ef;background:#fff}
th{font-size:11px;font-weight:650;letter-spacing:.03em;color:#64748b;background:#f8fafc;padding:14px 16px}
td{font-size:13px;line-height:1.65;color:#42536b;padding:15px 16px;border-color:#edf1f5}td b,td strong{font-weight:600;color:#243950}td a:not(.btn){font-size:13px;color:#06245b}.table-scroll tr:hover td{background:#fafbfd}
label{font-size:13px;font-weight:600;color:#42536b}
input,select,textarea{font-size:14px;min-height:44px;border-radius:8px;border-color:#dce3ec;color:#263b53;background:#fff;padding:10px 12px}
input:focus,select:focus,textarea:focus{border-color:#008589;box-shadow:0 0 0 3px #00aaa718}
input:disabled,select:disabled,textarea:disabled{background:#f3f5f8;color:#748295}
input[type=checkbox],input[type=radio]{min-height:0;accent-color:#06245b}.field small,.hint{font-size:12px;line-height:1.6}
.form-grid{gap:22px 24px}.filters{background:#f8fafc;border-color:#e6ebf1;padding:14px;border-radius:9px}
.btn{font-size:13px;font-weight:600;min-height:40px;padding:9px 15px;border-radius:8px;box-shadow:none;line-height:1.4}
.btn.secondary{background:#fff;border-color:#dce3ec;color:#415773}.btn.secondary:hover{background:#f7f9fc;border-color:#bccbda}
.btn.danger,.layout-master .btn.danger{background:#bd4057;color:#fff}
a:focus-visible,button:focus-visible,[tabindex]:focus-visible{outline:3px solid #00aaa7;outline-offset:3px}
.alert{font-size:13px;line-height:1.65}.badge{font-size:11px;font-weight:550}.empty{font-size:13px;padding:32px 20px;color:#718197}
.calendar-day.today .day-number,.report-tabs a.active{background:#06245b}.calendar-toolbar h3{font-size:15px}.calendar-nav button{font-size:12px}.calendar-weekday,.day-number{font-size:12px}.map-legend{font-size:12px}
.layout-master{--primary:#06245b;--bg:#f5f7fa}
.layout-master .platform-header{background:#fff;color:#26364b;border-bottom:1px solid #e3e8ef;box-shadow:none;padding-top:18px;padding-bottom:18px}
.pw-master-logo{display:block;width:180px;height:60px;object-fit:contain;background:transparent;border-radius:0;padding:0}
.layout-master .platform-subtitle{font-size:11px;color:#64748b;margin-top:0}
.layout-master .platform-user{font-size:13px}.layout-master .platform-user .btn.secondary{background:#fff;border-color:#dce3ec;color:#415773}
.layout-master .platform-content{max-width:1360px;padding-top:28px}
.layout-master .platform-content>h1{font-size:28px;font-weight:650;color:#172b45;letter-spacing:-.035em}
.layout-master .master-nav{gap:8px;border-bottom:1px solid #e3e8ef;padding-bottom:18px;margin-bottom:24px}
.layout-master .master-nav a{font-size:13px;background:transparent;border-color:transparent;color:#64748b;padding:9px 14px;border-radius:7px}
.layout-master .master-nav a:hover{background:#edf2f8;color:#06245b}
.layout-master .master-nav a[aria-current=page]{background:#eaf1f8;color:#06245b;border-color:#dce6f0;box-shadow:inset 0 -2px 0 #00aaa7}
.layout-master .master-kpi b{color:#172b45!important;font-size:32px!important;font-weight:650}.layout-master .master-kpi span{font-size:12px!important}
.master-company summary b{font-size:14px}.master-meta{font-size:12px!important}
.layout-login,.layout-login.layout-master{--primary:#06245b;background:#f3f6fa}
.layout-login .login{background:#f3f6fa;padding:40px 24px;min-height:100dvh}
.layout-login .auth-shell{width:min(1000px,100%);grid-template-columns:1.05fr 1fr;min-height:560px;border:1px solid #e2e8f0;border-radius:16px;box-shadow:0 18px 55px #142a430d}
.layout-login .auth-showcase,.layout-login .auth-master .auth-showcase{background:#0d1f38;padding:46px;color:#fff}
.pw-showcase-icon{display:block;width:48px;height:48px;object-fit:contain;border-radius:12px;margin-bottom:28px}
.layout-login .auth-showcase>small,.layout-login .auth-master .auth-showcase>small{font-size:10px;letter-spacing:.13em;color:#86cecf;margin-bottom:18px}
.layout-login .auth-showcase h2{font-size:32px;font-weight:600;line-height:1.25;letter-spacing:-.035em}
.layout-login .auth-showcase p{font-size:13px;line-height:1.8;color:#adc0d5}
.layout-login .auth-features{font-size:12px;gap:14px;color:#c5d4e5}
.layout-login .auth-features li:before,.layout-login .auth-master .auth-features li:before{background:#ffffff0c;color:#76d3ce}
.layout-login .auth-shell .box,.layout-login .auth-shell .master-login{padding:44px}
.pw-auth-logo{display:block;width:min(205px,100%);height:auto;aspect-ratio:3/1;object-fit:contain;margin:0 0 24px}
.pw-company-login-logo{display:block;max-width:180px;max-height:80px;object-fit:contain;margin:0 0 24px}
.layout-login .auth-shell .box:before{content:none}
.layout-login .auth-shell h1{font-size:24px;font-weight:650;letter-spacing:-.03em;color:#172b45}
.layout-login .auth-shell .box>p,.layout-login .auth-shell .master-login>p{font-size:13px;color:#64748b;line-height:1.7;margin-bottom:28px}
.layout-login .platform-tag{font-size:10px;color:#64748b;letter-spacing:.1em;margin-bottom:8px}
.layout-login .auth-shell .field{margin-bottom:20px}.layout-login .auth-shell .btn{font-size:14px;min-height:46px;margin-top:10px}
@media(min-width:761px){.layout-empresa .sidebar{width:248px}.layout-empresa .app main{margin-left:248px;width:calc(100% - 248px)}.layout-empresa .app.sidebar-collapsed .sidebar{width:76px}.layout-empresa .app.sidebar-collapsed main{margin-left:76px;width:calc(100% - 76px)}}
@media(max-width:1000px) and (min-width:761px){.content{padding:24px}.layout-login .auth-showcase,.layout-login .auth-shell .box,.layout-login .auth-shell .master-login{padding:32px}}
@media(max-width:760px){.content{padding:22px 14px 36px}.top{height:68px}.top h1{font-size:17px}.panel{padding:18px}.page-intro h2{font-size:24px}.page-intro p{font-size:13px}.card{padding:18px 15px;min-height:112px}.card small{font-size:12px}.card .num{font-size:30px}.btn{font-size:13px;min-height:44px}.table-scroll td .btn{font-size:12px;min-height:36px}.filters{padding:12px}input:not([type=checkbox]):not([type=radio]),select,textarea,.filters input,.filters select,td input,td select,td textarea{font-size:16px}.field small{font-size:12px}.layout-master .platform-header{padding:16px 20px;gap:16px}.pw-master-logo{width:155px;height:52px}.layout-master .platform-content{padding:22px 14px 36px}.layout-master .platform-content>h1{font-size:24px}.layout-master .master-nav{gap:5px}.layout-master .master-nav a{font-size:12px;padding:9px 10px}.layout-login .login,.layout-login.layout-master{padding:20px 14px}.layout-login .auth-shell{display:block;max-width:450px;min-height:0;border-radius:14px}.layout-login .auth-showcase,.layout-login .auth-master .auth-showcase{padding:28px}.pw-showcase-icon{width:38px;height:38px;margin-bottom:16px}.layout-login .auth-showcase h2{font-size:25px;margin-bottom:12px}.layout-login .auth-showcase p{font-size:12px}.layout-login .auth-shell .box,.layout-login .auth-shell .master-login{padding:28px}.pw-auth-logo{width:190px;margin-bottom:20px}.layout-login .auth-shell h1{font-size:23px}}
@media(prefers-reduced-motion:reduce){.dashboard-stat-card,.btn,input,select,textarea{transition:none}}
@media print{.layout-empresa .sidebar,.pw-showcase-icon{display:none!important}.layout-empresa .app main{margin:0;width:100%}.panel,.card{box-shadow:none}.content{padding:0;max-width:none}}
