:root{
  --green:#073f2a; --green2:#0b6a42; --gold:#d2aa46; --bg:#f3f7f4; --card:#fff;
  --text:#07172d; --muted:#607083; --line:#dfe7e2; --danger:#b5231f; --ok:#0a7d41; --warn:#a96800;
}
*{box-sizing:border-box}
body{margin:0;font-family:Inter,Segoe UI,Arial,sans-serif;background:var(--bg);color:var(--text)}
a{text-decoration:none;color:inherit}
.app-shell{display:flex;min-height:100vh}
.sidebar{width:270px;background:var(--green);color:#fff;position:fixed;left:0;top:0;bottom:0;padding:22px 16px;overflow:auto}
.brand-horizontal{display:flex;gap:12px;align-items:center;margin-bottom:28px}
.brand-horizontal img{width:48px;height:48px;object-fit:contain;flex:0 0 48px}
.brand-text strong{display:block;color:#fff;font-size:14px;font-weight:900;white-space:nowrap;line-height:1.15}
.brand-text small{display:block;color:#d7e5dc;font-size:11px;font-weight:700;margin-top:5px}
.sidebar nav{display:flex;flex-direction:column;gap:6px}
.sidebar nav a{font-weight:850;padding:12px 14px;border-radius:10px;color:#fff;font-size:14px}
.sidebar nav a.active,.sidebar nav a:hover{background:rgba(255,255,255,.14)}
.main{margin-left:270px;width:calc(100% - 270px)}
.topbar{height:74px;background:var(--green);display:flex;align-items:center;justify-content:flex-end;padding:0 28px;position:sticky;top:0;z-index:10}
.userbar{display:flex;align-items:center;gap:8px;color:#fff}
.content{padding:28px;max-width:1780px}
.page-title{display:flex;justify-content:space-between;gap:15px;align-items:flex-start;margin-bottom:20px}
.page-title h1{margin:0 0 8px 0;font-size:30px}
.page-title p{margin:0;color:var(--muted)}
.grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.grid>.panel,.dashboard-grid>.panel{min-width:0}
.cards{grid-template-columns:repeat(5,minmax(0,1fr));margin-bottom:20px}
.card,.panel{background:var(--card);border:1px solid var(--line);border-radius:18px;box-shadow:0 10px 30px rgba(7,63,42,.06)}
.card{padding:18px}
.stat b{display:block;font-size:30px;color:var(--green)}
.stat span{display:block;color:var(--muted);font-weight:700;font-size:13px;margin-top:5px}
.panel{padding:20px;margin-bottom:18px}
.panel h2{margin:0;color:var(--text)}
.panel-head{display:flex;justify-content:space-between;gap:15px;align-items:flex-start;margin-bottom:14px}
.table-wrap{overflow:auto;border:1px solid var(--line);border-radius:14px}
table{width:100%;border-collapse:collapse;background:#fff}
th,td{padding:13px 14px;border-bottom:1px solid var(--line);text-align:left;font-size:14px;vertical-align:middle}
th{background:#eef4f1;font-size:12px;text-transform:uppercase}
tr:last-child td{border-bottom:0}
.attendance-ranking-table tbody tr:nth-child(odd) td{background:#d9ebdf}
.attendance-ranking-table tbody tr:nth-child(even) td{background:#eff8f2}
.attendance-ranking-table tbody tr:hover td{background:#cae2d3}
.install-app-button[hidden]{display:none!important}
.install-app-button{white-space:nowrap;background:#d8b34b!important;color:#073f2a!important}
.filters{display:flex;gap:10px;align-items:end;flex-wrap:wrap;margin-bottom:14px}
.field{display:flex;flex-direction:column;gap:6px}
.field label,.field>span{font-weight:850;font-size:12px}
.form-help{margin:12px 0 0;color:var(--muted);font-size:12px;line-height:1.5}
input,select,textarea{border:1px solid #cfdcd4;border-radius:10px;padding:11px 12px;min-height:42px;background:#fff;color:var(--text);font:inherit}
textarea{min-height:90px;resize:vertical}
.btn{display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:10px;background:var(--green2);color:#fff;padding:11px 16px;font-weight:900;cursor:pointer;gap:6px}
.btn:hover{filter:brightness(.95)}
.btn.small{font-size:12px;padding:8px 10px;border-radius:8px}
.btn.muted{background:#eef6f1;color:var(--green)}
.btn.dark{background:#24364d;color:#fff}
.btn.gold{background:var(--gold);color:#1d261f}
.btn.danger{background:var(--danger);color:#fff}
.badge{display:inline-flex;align-items:center;justify-content:center;padding:6px 10px;border-radius:999px;font-size:12px;font-weight:900}
.badge.ok{background:#d9f7e6;color:#087239}
.badge.warn{background:#fff0cf;color:#a96800}
.badge.err{background:#ffe1df;color:#a01210}
.badge.bad{background:#ffe1df;color:#a01210}
.badge.neutral{background:#edf2ef;color:#5d6e65}
.avatar{width:38px;height:38px;object-fit:cover;border-radius:50%;background:#eef4f1;border:1px solid #d6e3dc}
.actions{display:flex;gap:6px;flex-wrap:wrap}
.access-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:18px}
.access-summary .card{min-width:0}.access-summary .stat b{font-size:27px}
.login-body{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#073f2a,#0b6a42)}
.login-card{width:min(420px,92vw);background:#fff;border-radius:22px;padding:32px;box-shadow:0 30px 80px rgba(0,0,0,.25)}
.login-card img{display:block;width:92px;margin:0 auto 18px}
.login-card h1{text-align:center;margin:0 0 8px 0}
.login-card p{text-align:center;margin:0 0 22px;color:var(--muted)}
.alert{padding:12px 14px;border-radius:12px;margin-bottom:14px;font-weight:800}
.alert.err{background:#ffe1df;color:#9d1713}.alert.ok{background:#d9f7e6;color:#087239}
code{background:#f4f7f5;border:1px solid var(--line);border-radius:8px;padding:6px 8px;display:inline-block}
@media(max-width:1000px){
  .sidebar{position:static;width:100%;height:auto}
  .main{margin-left:0;width:100%}
  .app-shell{display:block}
  .cards{grid-template-columns:repeat(2,1fr)}
  .grid{grid-template-columns:1fr}
  .access-summary{grid-template-columns:repeat(4,minmax(0,1fr))}
  .topbar{position:static}
}

/* Atualização v3 - cartões clicáveis e ações editar/excluir */
.stat-link{display:block;transition:.15s ease;cursor:pointer}
.stat-link:hover{transform:translateY(-2px);box-shadow:0 14px 34px rgba(7,63,42,.12)}
.stat-link.active{border-color:var(--green2);box-shadow:0 0 0 3px rgba(11,106,66,.12)}
.inline-form{display:inline;margin:0}
.nowrap{white-space:nowrap}
input[readonly]{background:#f4f7f5;color:var(--muted)}
.table-wrap .actions{min-width:150px}


/* Atualização v4 - módulo de atualizações pelo sistema */
.update-upload{display:flex;flex-direction:column;gap:14px}
.update-warning{background:#fff4dc;border:1px solid #f4d89a;color:#8a5200;border-radius:14px;padding:14px;line-height:1.45}
.update-warning.soft{background:#f7faf8;color:var(--muted);border-color:var(--line);margin-top:14px}
.update-steps{margin:0;padding-left:22px;line-height:1.75}
.update-steps li{margin-bottom:4px}

/* Atualização v5 - agrupamento Admin no menu lateral */
.nav-group{margin-top:6px}
.nav-group summary{
  list-style:none;
  cursor:pointer;
  font-weight:900;
  padding:12px 14px;
  border-radius:10px;
  color:#fff;
  font-size:14px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  user-select:none;
}
.nav-group summary::-webkit-details-marker{display:none}
.nav-group summary:after{
  content:'▾';
  font-size:12px;
  opacity:.85;
  transition:transform .15s ease;
}
.nav-group:not([open]) summary:after{transform:rotate(-90deg)}
.nav-group summary:hover,.nav-group summary.active{background:rgba(255,255,255,.14)}
.nav-subitems{display:flex;flex-direction:column;gap:5px;margin-top:6px;margin-left:10px;padding-left:10px;border-left:1px solid rgba(255,255,255,.22)}
.sidebar nav .nav-subitems a{font-size:13px;padding:10px 12px;border-radius:9px;color:#eef8f1}
.sidebar nav .nav-subitems a.active,.sidebar nav .nav-subitems a:hover{background:rgba(255,255,255,.16);color:#fff}


/* Atualização v6 - impressão correta, app telemóvel e notificações */
.brand-horizontal img{border-radius:12px}
.notification-pill{
  display:inline-flex;align-items:center;gap:6px;
  background:#fff4dc;color:#8a5200;border:1px solid #f4d89a;
  border-radius:999px;padding:6px 10px;font-weight:900;font-size:12px;
}
.mobile-app-shell{
  max-width:920px;margin:0 auto;
}
.app-hero{
  background:linear-gradient(135deg,#073f2a,#0b6a42);
  color:#fff;border-radius:28px;padding:24px;margin-bottom:18px;
  display:flex;align-items:center;justify-content:space-between;gap:16px;
  box-shadow:0 16px 40px rgba(7,63,42,.18);
}
.app-hero h1{margin:0;font-size:26px}
.app-hero p{margin:8px 0 0;color:#d7e5dc}
.app-icon-big{width:72px;height:72px;border-radius:18px;object-fit:cover;box-shadow:0 10px 24px rgba(0,0,0,.25)}
.app-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-bottom:16px}
.app-mini-card{background:#fff;border:1px solid var(--line);border-radius:18px;padding:16px;box-shadow:0 8px 24px rgba(7,63,42,.06)}
.app-mini-card b{display:block;color:var(--green);font-size:24px}
.app-mini-card span{font-size:12px;color:var(--muted);font-weight:800}
.mobile-list{display:flex;flex-direction:column;gap:10px}
.mobile-row{display:flex;justify-content:space-between;gap:12px;background:#fff;border:1px solid var(--line);border-radius:16px;padding:14px}
.mobile-row strong{display:block}
.mobile-row small{color:var(--muted)}
.print-title{display:none}
.print-report-head{display:flex;align-items:center;gap:14px;margin-bottom:16px}
.print-report-head img{width:54px;height:54px;border-radius:12px;object-fit:cover}
.print-report-head h2,.print-report-head p{margin:0}.print-report-head p{color:var(--muted);margin-top:4px}
.report-totals{display:flex;gap:18px;flex-wrap:wrap;margin-top:14px;padding:14px;background:#eef4f1;border-radius:12px}
.report-employee-section+.report-employee-section{margin-top:34px;padding-top:30px;border-top:2px solid var(--line)}

@media print{
  body{background:#fff!important}
  .sidebar,.topbar,.page-title,.filters,.no-print,.btn{display:none!important}
  .main{margin:0!important;width:100%!important}
  .content{padding:0!important;max-width:none!important}
  .panel{box-shadow:none!important;border:0!important;padding:0!important;margin:0!important}
  body *{visibility:hidden}
  .print-area,.print-area *{visibility:visible}
  .print-area{position:absolute;left:0;top:0;width:100%}
  .print-title{display:block!important;margin:0 0 12px 0}
  .print-report-head{visibility:visible!important;display:flex!important}
 .report-totals{break-inside:avoid;background:#fff;border-top:1px solid #ccd8d1;border-radius:0;padding-left:0}
 .report-employee-section{break-inside:auto;page-break-inside:auto}
 .report-employee-section+.report-employee-section{break-before:page;page-break-before:always;margin-top:0;padding-top:0;border-top:0}
 .report-employee-section thead{display:table-header-group}
 .report-employee-section tr{break-inside:avoid;page-break-inside:avoid}
 table{font-size:11px}
  th,td{padding:6px 7px}
}

@media (max-width:860px){
  .app-shell{display:block}
  .sidebar{position:static;width:100%;height:auto;bottom:auto;padding:14px 12px}
  .brand-horizontal{margin-bottom:12px}
  .brand-horizontal img{width:44px;height:44px;flex-basis:44px}
  .sidebar nav{display:grid;grid-template-columns:1fr;gap:8px}
  .sidebar nav a,.nav-group summary{font-size:13px;padding:11px 12px}
  .nav-group{grid-column:1}
  .nav-subitems{display:grid;grid-template-columns:1fr;margin-left:0;padding-left:0;border-left:0}
  .accounting-nav .nav-subitems{grid-template-columns:1fr}
  .main{margin-left:0;width:100%}
  .topbar{height:auto;position:sticky;padding:12px;justify-content:flex-start}
  .userbar{flex-wrap:wrap}
  .content{padding:14px}
  .page-title{display:block}
  .page-title h1{font-size:24px}
  .cards{grid-template-columns:repeat(2,minmax(0,1fr))}
  .grid{grid-template-columns:1fr!important}
  .filters{display:grid;grid-template-columns:1fr;align-items:stretch}
  .filters .btn,.filters a.btn{width:100%}
  input,select,textarea{width:100%}
  th,td{font-size:13px;padding:10px}
  .app-hero{border-radius:22px;padding:18px}
  .app-icon-big{width:58px;height:58px}
  .app-card-grid{grid-template-columns:1fr}
  .mobile-row{align-items:flex-start}
}


/* v7 — experiência móvel profissional */
.mobile-topbar,.mobile-bottom-nav,.mobile-overlay,.mobile-close-button{display:none}
.mobile-sidebar-user{display:none}
.dashboard-detail-mobile{display:none}
.first-access-link{display:block;text-align:center;margin-top:18px;color:var(--green2);font-weight:850}
.mobile-login-card{display:flex;flex-direction:column;gap:14px}
.mobile-login-card .field{gap:8px}
.mobile-login-card img{border-radius:24px}
.mobile-review-actions{position:relative;z-index:2}
.communication-form{display:flex;flex-direction:column;gap:14px}
.text-button{border:0;background:transparent;color:var(--green2);font-weight:900;cursor:pointer}
.text-button.danger{color:#b42318}
.notification-actions{display:flex;align-items:center;justify-content:flex-end;gap:10px;flex-wrap:wrap}
.notification-actions form{margin:0}
.notification-open-link{display:block;color:inherit;padding-right:4px}
.mobile-notification-card summary{cursor:pointer;list-style:none;position:relative;padding-right:24px}
.mobile-notification-card summary::-webkit-details-marker{display:none}
.mobile-notification-card summary::after{content:'+';position:absolute;right:1px;top:50%;transform:translateY(-50%);font-size:20px;color:var(--green2);font-weight:900}
.mobile-notification-card[open] summary::after{content:'−'}
.mobile-notification-card[open] p{padding-top:5px}
.mobile-count{display:inline-flex;min-width:34px;height:34px;align-items:center;justify-content:center;border-radius:999px;background:#fff0cf;color:#8a5200;font-weight:900}

@media(max-width:700px){
  .document-profile-filter{grid-template-columns:1fr}.document-profile-filter .btn{width:100%}.document-profile-person{align-items:flex-start}
  html{scroll-behavior:smooth}
  body{padding-bottom:84px;background:#f3f7f4}
  .app-shell{display:block;min-height:auto}
  .main{margin-left:0;width:100%}
  .content{padding:20px 16px 24px;max-width:none}
  .topbar{display:none}

  .mobile-topbar{
    display:grid;grid-template-columns:42px minmax(0,1fr) 42px;position:sticky;top:0;z-index:1000;
    height:calc(64px + env(safe-area-inset-top));align-items:center;padding:env(safe-area-inset-top) 14px 0;
    background:rgba(7,63,42,.985);color:#fff;border-bottom:1px solid rgba(255,255,255,.09);
    box-shadow:0 8px 24px rgba(5,45,29,.14)
  }
  .mobile-menu-button,.mobile-bell{
    border:0;background:rgba(255,255,255,.10);color:#fff;width:42px;height:42px;
    border-radius:14px;display:inline-flex;align-items:center;justify-content:center;font-size:20px
  }
  .mobile-menu-button{justify-self:start}.mobile-bell{position:relative;font-size:17px;justify-self:end}
  .mobile-bell span{position:absolute;right:-4px;top:-5px;min-width:20px;height:20px;border-radius:999px;background:var(--gold);color:#1d261f;font-size:11px;font-weight:900;display:flex;align-items:center;justify-content:center}
  .mobile-topbar-brand{display:flex;align-items:center;justify-content:center;gap:9px;min-width:0}
  .mobile-topbar-brand img{width:36px;height:36px;border-radius:0;object-fit:contain;flex:0 0 36px}
  .mobile-topbar-brand strong{font-size:15px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}

  .sidebar{
    position:fixed;left:-310px;top:0;bottom:0;z-index:1200;width:300px;height:100dvh;
    padding:calc(24px + env(safe-area-inset-top)) 18px 24px;transition:left .22s ease;
    box-shadow:20px 0 50px rgba(0,0,0,.25)
  }
  body.mobile-menu-open .sidebar{left:0}
  .mobile-overlay{position:fixed;inset:0;background:rgba(3,20,14,.48);z-index:1100;pointer-events:none}
  body.mobile-menu-open .mobile-overlay{display:block;pointer-events:auto}
  .mobile-close-button{display:block;position:absolute;right:12px;top:calc(10px + env(safe-area-inset-top));border:0;background:rgba(255,255,255,.10);color:#fff;width:38px;height:38px;border-radius:12px;font-size:27px}
  .brand-horizontal{margin-top:20px}
  .sidebar nav{display:flex;grid-template-columns:none;gap:5px}
  .sidebar nav a,.nav-group summary{font-size:14px;padding:12px 14px}
  .accounting-nav .nav-subitems{display:flex;flex-direction:column;gap:5px;width:100%;margin-left:0;padding-left:0;border-left:0}
  .accounting-nav .nav-subitems a{display:block;width:100%;box-sizing:border-box}
  .mobile-sidebar-user{display:flex;position:absolute;bottom:24px;left:18px;right:18px;align-items:center;gap:8px;border-top:1px solid rgba(255,255,255,.16);padding-top:14px}
  .mobile-sidebar-user strong{font-size:13px;flex:1}
  .mobile-sidebar-user span{font-size:10px;color:#d7e5dc}
  .mobile-sidebar-user .btn{margin-left:auto}

  .mobile-bottom-nav{
    display:grid;grid-template-columns:repeat(4,1fr);position:fixed;left:10px;right:10px;
    bottom:calc(8px + env(safe-area-inset-bottom));z-index:950;height:66px;
    background:rgba(255,255,255,.96);border:1px solid #dce7e1;border-radius:22px;
    box-shadow:0 16px 40px rgba(7,63,42,.18);backdrop-filter:blur(14px);
    transition:transform .22s ease,opacity .18s ease;will-change:transform
  }
  .mobile-bottom-nav.is-hidden{transform:translateY(calc(100% + 24px + env(safe-area-inset-bottom)));opacity:0;pointer-events:none}
  .mobile-bottom-nav a{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;color:#52687a}
  .mobile-bottom-nav a span{font-size:20px;line-height:1}
  .mobile-bottom-nav a small{font-size:10px;font-weight:850}
  .mobile-bottom-nav a:active{color:var(--green2);transform:scale(.96)}

  .page-title{display:block;margin-bottom:16px}
  .page-title h1{font-size:25px}
  .page-title p{font-size:14px;line-height:1.5}
  .cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
  .access-summary{grid-template-columns:1fr;gap:10px}
  .card{padding:15px;border-radius:17px}
  .stat b{font-size:25px}
  .panel{padding:16px;border-radius:18px}
  .table-wrap{border-radius:14px}
  .filters{align-items:stretch}
  .filters .field{width:100%}
  .filters .btn{width:100%}
  input,select,textarea{font-size:16px}
  .mobile-login-body{padding:20px 0;min-height:100dvh}
  .mobile-app-shell{max-width:none;margin:0}
  .app-hero{display:none}
  .mobile-home-hero{
    background:linear-gradient(145deg,#073f2a,#0b6a42);
    color:#fff;border-radius:0 0 28px 28px;margin:-20px -16px 18px;padding:24px 20px 26px;
    display:flex;align-items:center;justify-content:space-between;gap:14px;
    box-shadow:0 18px 40px rgba(7,63,42,.16)
  }
  .mobile-profile{display:flex;align-items:center;gap:13px;min-width:0}
  .mobile-profile img{width:58px;height:58px;border-radius:18px;object-fit:cover;border:2px solid rgba(255,255,255,.55)}
  .mobile-profile small,.mobile-home-hero small{color:#cfe0d6;font-weight:750}
  .mobile-profile h1,.mobile-home-hero h1{font-size:21px;margin:2px 0 3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .mobile-profile p,.mobile-home-hero p{margin:0;color:#d7e5dc;font-size:12px}
  .mobile-notification-button{background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.18);border-radius:14px;padding:10px;color:#fff;font-weight:900;white-space:nowrap}
  .admin-mobile-hero img{width:66px;height:66px;border-radius:18px}

  .mobile-kpi-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-bottom:14px}
  .mobile-kpi-grid article{background:#fff;border:1px solid var(--line);border-radius:18px;padding:15px;box-shadow:0 7px 22px rgba(7,63,42,.055)}
  .mobile-kpi-grid span{display:block;color:#617487;font-size:11px;font-weight:850;text-transform:uppercase;letter-spacing:.04em}
  .mobile-kpi-grid strong{display:block;font-size:25px;color:var(--green);margin:6px 0 3px}
  .mobile-kpi-grid small{color:#8291a0;font-size:11px}

  .mobile-quick-actions{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin:0 0 22px}
  .mobile-quick-actions a{background:#fff;border:1px solid var(--line);border-radius:17px;padding:12px 6px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px;box-shadow:0 6px 18px rgba(7,63,42,.05)}
  .mobile-quick-actions span{width:38px;height:38px;border-radius:13px;background:#eaf5ef;color:var(--green2);display:flex;align-items:center;justify-content:center;font-size:20px}
  .mobile-quick-actions b{font-size:11px;color:#32485b}
  .admin-actions{grid-template-columns:repeat(2,1fr)}
  .admin-actions a{flex-direction:row;justify-content:flex-start;padding:13px}

  .mobile-section{margin-bottom:24px;scroll-margin-top:76px}
  .mobile-section-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:11px}
  .mobile-section-head small{display:block;color:#8291a0;font-weight:850;text-transform:uppercase;font-size:10px;letter-spacing:.06em}
  .mobile-section-head h2{margin:2px 0 0;font-size:20px}
  .notification-actions{gap:4px;max-width:58%}
  .notification-actions .text-button{font-size:11px;padding:5px}
  .mobile-event-list{display:flex;flex-direction:column;gap:9px}
  .mobile-event-card,.mobile-info-card,.mobile-notification-card,.mobile-request-card{
    background:#fff;border:1px solid var(--line);border-radius:18px;padding:14px;
    box-shadow:0 6px 20px rgba(7,63,42,.045)
  }
  .mobile-event-card{display:grid;grid-template-columns:42px 1fr auto;align-items:center;gap:11px}
  .event-icon{width:42px;height:42px;border-radius:14px;display:flex;align-items:center;justify-content:center;font-size:19px;font-weight:900}
  .event-icon.entry{background:#dcf6e7;color:#087239}.event-icon.exit{background:#fff0cf;color:#a96800}
  .mobile-event-card strong,.mobile-info-card strong,.mobile-notification-card strong,.mobile-request-card strong{display:block;font-size:14px}
  .mobile-event-card small,.mobile-info-card small,.mobile-notification-card small,.mobile-request-card small{display:block;color:#728497;font-size:11px;margin-top:4px;line-height:1.35}
  .mobile-event-card time{font-weight:950;color:var(--green);font-size:16px}
  .mobile-info-card{display:flex;align-items:center;justify-content:space-between;gap:12px}
  .mobile-notification-card.unread{border-left:4px solid var(--gold);background:#fffdf7}
  .mobile-notification-card p,.mobile-request-card p{margin:6px 0;color:#41566a;font-size:13px;line-height:1.5}
  .mobile-request-card{display:flex;flex-direction:column;gap:12px}
  .mobile-review-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}
  .mobile-review-actions input{grid-column:1/-1}
  .mobile-form-card{background:#fff;border:1px solid var(--line);border-radius:19px;padding:15px;display:flex;flex-direction:column;gap:12px;margin-bottom:12px}
  .mobile-form-row{display:grid;grid-template-columns:1fr 1fr;gap:10px}
  .mobile-primary{min-height:48px;border-radius:14px;font-size:15px}
  .mobile-empty{background:#fff;border:1px dashed #cddbd3;border-radius:18px;padding:24px;text-align:center;color:#728497;font-size:13px}

  /* esconder tabelas largas no app: o app usa cartões */
  .mobile-app-shell .table-wrap{display:none}

  /* Dashboard móvel: cartões horizontais e gráfico; detalhes numa vista própria */
  .dashboard-page .dashboard-heading,.dashboard-page>.grid{display:none}
  .dashboard-page.is-detail .smart-cards,.dashboard-page.is-detail .dashboard-detail,.dashboard-page.is-detail .dashboard-grid{display:none}
  .dashboard-page.is-home .smart-cards{grid-template-columns:1fr;margin:0;grid-auto-rows:minmax(82px,auto)}
  .dashboard-page.is-home .smart-card{display:grid;grid-template-columns:38px minmax(0,1fr);grid-template-rows:auto auto;column-gap:12px;padding:14px;min-height:82px}
  .dashboard-page.is-home .smart-card .smart-icon{grid-row:1/3;align-self:center}
  .dashboard-page.is-home .smart-card strong{margin:0;align-self:end}
  .dashboard-page.is-home .smart-card small{align-self:start}
  .dashboard-page.is-home .dashboard-grid{display:block;margin:16px 0 0}
  .dashboard-page.is-home .overview-panel{display:none}
  .dashboard-page.is-home .attendance-chart-panel{display:block;margin:0;min-height:250px}
  .dashboard-detail-mobile{display:block}
  .dashboard-detail-mobile-head{display:flex;align-items:center;gap:12px;margin:0 0 16px}
  .dashboard-detail-mobile-head>a{width:42px;height:42px;border-radius:14px;background:#fff;border:1px solid var(--line);display:grid;place-items:center;color:var(--green);font-size:30px;line-height:1;box-shadow:0 7px 20px rgba(7,63,42,.06)}
  .dashboard-detail-mobile-head small{display:block;color:var(--green2);font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:.08em}
  .dashboard-detail-mobile-head h1{margin:3px 0 0;font-size:21px;letter-spacing:-.02em}
  .dashboard-person-list{display:flex;flex-direction:column;gap:9px}
  .dashboard-person-card{display:grid;grid-template-columns:48px minmax(0,1fr);gap:3px 11px;align-items:center;background:#fff;border:1px solid var(--line);border-radius:18px;padding:13px;box-shadow:0 7px 22px rgba(7,63,42,.05)}
  .dashboard-person-card img{grid-row:1/3;width:48px;height:48px;border-radius:15px;object-fit:cover;background:#eef4f1}
  .dashboard-person-card strong,.dashboard-person-card small,.dashboard-person-card span{display:block}
  .dashboard-person-card strong{font-size:14px}.dashboard-person-card small{color:#6d7f90;font-size:10px;margin-top:3px}.dashboard-person-card span{color:var(--green2);font-size:11px;font-weight:850;margin-top:5px}
  .dashboard-person-card .badge{grid-column:2;justify-self:start;margin-top:5px;font-style:normal}
}

/* V10.1.33 — leitura simplificada e reposição segura de testes */
.print-only{display:none}
.employee-name-cell{display:flex;flex-direction:column;gap:3px;min-width:150px}
.employee-name-cell strong{color:var(--text);font-size:14px;line-height:1.25}
.employee-name-cell small{color:#6f8294;font-size:10px;font-weight:850;letter-spacing:.02em}
.accounting-summary-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.accounting-empty{grid-column:1/-1;padding:30px;border:1px dashed #cbdcd3;border-radius:17px;background:#f8fbf9;color:var(--muted);text-align:center}
.accounting-summary-card{display:flex;min-width:0;flex-direction:column;overflow:hidden;border:1px solid #d7e4dc;border-radius:20px;background:linear-gradient(155deg,#fff 0%,#f8fbf9 100%);box-shadow:0 8px 26px rgba(7,63,42,.055)}
.accounting-summary-header{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:16px 17px;border-bottom:1px solid #e1ebe5;background:#fff}
.accounting-summary-header .accounting-employee{min-width:0}.accounting-summary-header .accounting-employee>div{min-width:0}.accounting-summary-header .accounting-employee strong{overflow:hidden;font-size:15px;text-overflow:ellipsis;white-space:nowrap}.accounting-summary-header .accounting-employee small{overflow:hidden;color:#728496;font-size:10px;text-overflow:ellipsis;white-space:nowrap}
.accounting-summary-sections{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0;flex:1}
.accounting-summary-sections section{display:flex;min-width:0;flex-direction:column;gap:4px;padding:15px 17px;border-bottom:1px solid #e6eee9}
.accounting-summary-sections section:nth-child(odd){border-right:1px solid #e6eee9}
.accounting-summary-sections section>small{margin-bottom:3px;color:#698092;font-size:9px;font-weight:950;letter-spacing:.075em}
.accounting-summary-sections section>strong{color:#14372a;font-size:13px}.accounting-summary-sections section>span{overflow-wrap:anywhere;color:#65798b;font-size:11px;line-height:1.45}.accounting-summary-sections section b{color:#2b4758}
.accounting-summary-sections .accounting-salary{margin-top:5px;color:var(--green);font-size:16px}
.accounting-summary-footer{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:14px 17px;background:#f3f8f5}
.accounting-summary-metrics{display:flex;align-items:stretch;gap:8px}.accounting-summary-metrics>a{display:flex;min-width:92px;flex-direction:column;justify-content:center;padding:8px 10px;border:1px solid #dae8e0;border-radius:12px;background:#fff}.accounting-summary-metrics small,.accounting-summary-metrics strong,.accounting-summary-metrics span{display:block}.accounting-summary-metrics small{color:#728496;font-size:8px;font-weight:950;letter-spacing:.06em}.accounting-summary-metrics strong{margin-top:3px;color:var(--green);font-size:15px}.accounting-summary-metrics span{color:#81919f;font-size:9px}
.nav-subitems .nav-danger{margin-top:6px;border:1px solid rgba(255,122,112,.24);color:#ffd9d5}.nav-subitems .nav-danger:hover,.nav-subitems .nav-danger.active{background:#8d291f;color:#fff}
.data-reset-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:20px 0 16px}.data-reset-grid .panel{margin:0}.data-reset-grid h2{margin:0 0 13px}
.data-reset-list{display:flex;flex-direction:column;gap:10px;margin:0;padding:0;list-style:none}.data-reset-list li{position:relative;padding-left:27px;color:#405769;line-height:1.45}.data-reset-list li:before{position:absolute;left:0;top:0;display:grid;width:19px;height:19px;place-items:center;border-radius:50%;font-size:11px;font-weight:950}.data-reset-list.preserved li:before{content:'✓';background:#d9f2e3;color:#087344}.data-reset-list.removed li:before{content:'×';background:#ffe5e2;color:#b42e25}
.data-reset-preserved{border-top:4px solid #168c57}.data-reset-removed{border-top:4px solid #c33229}.data-reset-total{display:flex;align-items:baseline;gap:8px;margin-top:18px;padding:13px;border-radius:14px;background:#fff1ef;color:#8e281f}.data-reset-total strong{font-size:24px}.data-reset-total span{font-size:11px;font-weight:850}
.data-reset-confirmation{border:1px solid #edc9c5}.data-reset-warning{display:flex;flex-direction:column;gap:5px;margin:-2px 0 18px;padding:14px 16px;border-radius:14px;background:#fff4e2;color:#664713}.data-reset-warning strong{font-size:14px}.data-reset-warning span{font-size:12px;line-height:1.5}.data-reset-check{display:flex;align-items:flex-start;gap:9px;margin:15px 0 18px;color:#4d6173;font-weight:750}.data-reset-check input{width:auto;margin-top:3px}.data-reset-confirmation .btn.danger{min-height:45px}
@media(max-width:1050px){.accounting-summary-grid{grid-template-columns:1fr}}
@media(max-width:700px){.accounting-summary-sections{grid-template-columns:1fr}.accounting-summary-sections section:nth-child(odd){border-right:0}.accounting-summary-footer{align-items:stretch;flex-direction:column}.accounting-summary-metrics{display:grid;grid-template-columns:1fr 1fr}.accounting-summary-footer .table-actions{display:grid;grid-template-columns:repeat(3,1fr)}.accounting-summary-footer .table-actions .btn{width:100%;padding-left:5px;padding-right:5px}.data-reset-grid{grid-template-columns:1fr}.data-reset-confirmation .grid.two{grid-template-columns:1fr}}
@media print{.print-only{display:block!important}.accounting-summary-grid{display:none!important}}

@media(min-width:701px){
  .mobile-home-hero,.mobile-kpi-grid,.mobile-quick-actions,.mobile-section{max-width:920px}
  .mobile-home-hero{background:linear-gradient(145deg,#073f2a,#0b6a42);color:#fff;border-radius:24px;padding:22px;display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:16px}
  .mobile-profile{display:flex;align-items:center;gap:14px}.mobile-profile img{width:64px;height:64px;border-radius:18px;object-fit:cover}.mobile-profile small,.mobile-profile p{color:#d7e5dc}.mobile-profile h1{margin:3px 0;font-size:24px}.mobile-profile p{margin:0}
  .mobile-notification-button{background:rgba(255,255,255,.14);color:#fff;border-radius:13px;padding:10px 13px;font-weight:900}
  .mobile-kpi-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:16px}.mobile-kpi-grid article{background:#fff;border:1px solid var(--line);border-radius:17px;padding:16px}.mobile-kpi-grid span,.mobile-kpi-grid small{display:block;color:var(--muted);font-size:12px}.mobile-kpi-grid strong{display:block;color:var(--green);font-size:25px;margin:6px 0}
  .mobile-quick-actions{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:22px}.mobile-quick-actions a{background:#fff;border:1px solid var(--line);border-radius:16px;padding:14px;display:flex;align-items:center;justify-content:center;gap:8px}.mobile-quick-actions span{font-size:20px;color:var(--green2)}
  .mobile-section{margin-bottom:22px}.mobile-section-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}.mobile-section-head small{color:var(--muted);font-size:11px;text-transform:uppercase}.mobile-section-head h2{margin:2px 0}
  .mobile-event-list{display:flex;flex-direction:column;gap:8px}.mobile-event-card,.mobile-info-card,.mobile-notification-card,.mobile-request-card,.mobile-form-card{background:#fff;border:1px solid var(--line);border-radius:16px;padding:14px}.mobile-event-card,.mobile-info-card{display:flex;align-items:center;gap:12px}.mobile-event-card time,.mobile-info-card>span{margin-left:auto}.event-icon{width:40px;height:40px;border-radius:12px;display:grid;place-items:center}.event-icon.entry{background:#dcf6e7;color:#087239}.event-icon.exit{background:#fff0cf;color:#a96800}.mobile-event-card small,.mobile-info-card small,.mobile-notification-card small,.mobile-request-card small{display:block;color:var(--muted);margin-top:3px}.mobile-notification-card p,.mobile-request-card p{margin:6px 0}.mobile-form-card{display:flex;flex-direction:column;gap:12px}.mobile-form-row{display:grid;grid-template-columns:1fr 1fr;gap:10px}.mobile-review-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}.mobile-review-actions input{grid-column:1/-1}.mobile-empty{background:#fff;border:1px dashed var(--line);border-radius:16px;padding:20px;text-align:center;color:var(--muted)}
}

/* V10.1 Enterprise */
.eyebrow{display:block;color:var(--green2);font-size:10px;font-weight:950;letter-spacing:.14em;margin-bottom:5px}
.dashboard-heading h1{font-size:30px;letter-spacing:-.03em}
.live-date-time{display:flex;align-items:center;gap:7px;flex-wrap:wrap}
.live-clock{font-variant-numeric:tabular-nums}
.mobile-live-date{margin-top:5px!important}
.smart-cards{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:11px;margin-bottom:18px}
.smart-card{position:relative;min-width:0;background:linear-gradient(160deg,#fff,#f8fbf9);border:1px solid #dce8e1;border-radius:18px;padding:15px 13px;box-shadow:0 8px 25px rgba(7,63,42,.055);transition:.18s ease;overflow:hidden}
.smart-card:after{content:"";position:absolute;width:56px;height:56px;border-radius:50%;right:-24px;top:-24px;background:rgba(9,112,69,.06)}
.smart-card:hover{transform:translateY(-2px);border-color:#bcd5c7;box-shadow:0 12px 30px rgba(7,63,42,.1)}
.smart-card.active{border-color:var(--green2);box-shadow:0 0 0 2px rgba(10,115,71,.1)}
.smart-card strong,.smart-card small{display:block}.smart-card strong{font-size:24px;color:var(--green);margin:10px 0 3px;letter-spacing:-.03em}.smart-card small{font-weight:800;color:#617486;font-size:11px}
.smart-icon{width:30px;height:30px;border-radius:10px;display:grid;place-items:center;background:#e7f5ed;color:var(--green2);font-weight:950}
.smart-card-departed .smart-icon,.smart-card-open .smart-icon{background:#fff2d4;color:#a26900}.smart-card-absent .smart-icon{background:#ffe7e4;color:#b73c2f}.smart-card-vacations .smart-icon{background:#e8f4ff;color:#2369a7}.smart-card-pending .smart-icon{background:#f1eaff;color:#7250a5}
.dashboard-grid{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(260px,.7fr);gap:16px;margin-bottom:16px}
.attendance-chart-panel{min-height:292px}.chart-total{font-size:12px;font-weight:900;color:var(--green2);background:#eaf6ef;border-radius:999px;padding:7px 10px}
.attendance-chart{height:190px;display:grid;grid-template-columns:repeat(14,1fr);align-items:end;gap:8px;padding:18px 4px 0}
.chart-column{height:100%;display:grid;grid-template-rows:18px 1fr 20px;align-items:end;text-align:center;min-width:0}.chart-column span{font-size:10px;color:#607386;font-weight:900}.chart-column i{display:block;width:100%;max-width:24px;min-height:4px;margin:auto;background:linear-gradient(180deg,#18a465,#087045);border-radius:8px 8px 3px 3px;box-shadow:0 5px 12px rgba(8,112,69,.16)}.chart-column small{font-size:9px;color:#83919f;padding-top:5px}
.overview-list{display:flex;flex-direction:column}.overview-list div{display:flex;align-items:center;justify-content:space-between;padding:15px 0;border-bottom:1px solid #edf2ef}.overview-list div:last-child{border-bottom:0}.overview-list span{font-size:12px;color:#617486;font-weight:750}.overview-list strong{font-size:20px;color:var(--green)}
.module-tabs{display:flex;gap:7px;overflow:auto;margin:0 0 16px;padding-bottom:2px}.module-tabs a{white-space:nowrap;background:#fff;border:1px solid var(--line);border-radius:12px;padding:10px 13px;color:#52677a;font-weight:850;font-size:12px}.module-tabs a.active{background:var(--green);border-color:var(--green);color:#fff}
.document-center-tabs{margin-top:-4px}.document-profile-filter{display:grid;grid-template-columns:minmax(280px,520px) auto;align-items:end;margin:18px 0}.document-profile-filter .btn{height:44px}.document-profile-empty{margin-top:18px}.document-profile-person{display:flex;align-items:center;gap:12px;padding:14px 0 18px;border-top:1px solid var(--line)}.document-profile-person img{width:54px;height:54px;border-radius:16px;object-fit:cover;border:1px solid var(--line)}.document-profile-person strong,.document-profile-person span,.document-profile-person small{display:block}.document-profile-person strong{font-size:17px;color:var(--ink)}.document-profile-person span{font-weight:850;color:var(--green);font-size:12px;margin:2px 0}.document-profile-person small{color:var(--muted)}.document-profile-form{padding-top:2px}.field-check{display:flex;align-items:center;gap:9px;min-height:44px;font-weight:750}
.enterprise-form-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.enterprise-form-grid .field-wide{grid-column:1/-1}.check-field{display:flex;align-items:center;gap:8px;font-weight:800;color:#52677a}
.hikvision-status-grid,.commercial-status-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:16px}.hikvision-status-grid article,.commercial-status-grid article{position:relative}.hikvision-status-grid small,.hikvision-status-grid strong,.commercial-status-grid small,.commercial-status-grid strong{display:block}.hikvision-status-grid small,.commercial-status-grid small{color:var(--muted);font-size:11px;text-transform:uppercase;font-weight:850}.hikvision-status-grid strong,.commercial-status-grid strong{color:var(--green);font-size:20px;margin:8px 0}.hikvision-status-grid p,.commercial-status-grid p{margin:0;color:#728497;font-size:11px;overflow-wrap:anywhere}.status-dot{position:absolute;right:16px;top:16px;width:10px;height:10px;border-radius:50%;background:#c84c40;box-shadow:0 0 0 5px #fae8e5}.status-dot.online{background:#16a05f;box-shadow:0 0 0 5px #e0f5e9}
.employee-record-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.employee-record-summary article{background:#fff;border:1px solid var(--line);border-radius:16px;padding:13px}.employee-record-summary span,.employee-record-summary small{display:block;color:var(--muted);font-size:11px}.employee-record-summary strong{display:block;color:var(--green);font-size:22px;margin:5px 0}
.notification-enable{border:1px solid #c9dacf;background:#fff;color:var(--green2);border-radius:9px;padding:7px 9px;font-size:11px;font-weight:850;cursor:pointer}.notification-enable[hidden]{display:none}
.mobile-notification-permission{display:none}
.mobile-notification-permission[hidden]{display:none!important}
.notifications-page-title{align-items:center}
.notifications-unread-total{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;background:#0b6a42;color:#fff;padding:9px 13px;font-size:12px;font-weight:900}
.notifications-center{max-width:980px}
.notifications-center-head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:18px}
.notifications-center-head h2,.notifications-center-head p{margin:0}
.notifications-center-head p{color:var(--muted);font-size:12px;margin-top:4px}
.notifications-inbox{display:flex;flex-direction:column;gap:9px}
.notification-inbox-card{position:relative;border:1px solid #dce7e1;border-radius:17px;background:#fff;overflow:hidden;transition:border-color .16s ease,box-shadow .16s ease}
.notification-inbox-card.unread{border-left:5px solid var(--gold);background:#fffdf6}
.notification-inbox-card.selected{border-color:#86b99c;box-shadow:0 9px 28px rgba(7,63,42,.09)}
.notification-inbox-open{display:grid;grid-template-columns:44px minmax(0,1fr) auto auto;align-items:center;gap:12px;padding:14px 16px;color:inherit}
.notification-inbox-icon{width:44px;height:44px;border-radius:14px;background:#e8f4ed;display:grid;place-items:center;font-size:18px}
.notification-inbox-copy strong,.notification-inbox-copy small,.notification-inbox-message{display:block}
.notification-inbox-copy strong{font-size:14px}
.notification-inbox-copy small{color:#708294;font-size:11px;margin-top:4px}
.notification-inbox-message{color:#3e5265;font-size:13px;line-height:1.55;margin-top:10px}
.notification-unread-dot{width:11px;height:11px;border-radius:50%;background:#168c57;box-shadow:0 0 0 4px #dcf3e6}
.notification-inbox-arrow{font-size:25px;color:var(--green2);font-weight:800}
.notification-related-link{display:inline-flex;margin:0 16px 14px 72px;color:var(--green2);font-size:12px;font-weight:900}
.request-context{margin:10px 0 0;padding:12px 14px;border-radius:13px;background:#fff7df;border:1px solid #f0d99c;color:#604714;line-height:1.5}
.selected-request{border-color:#0b6a42!important;box-shadow:0 0 0 3px rgba(11,106,66,.12),0 10px 28px rgba(7,63,42,.1)!important}
.admin-mobile-hero{overflow:hidden}
.admin-mobile-hero img{display:block;width:104px;height:104px;flex:0 0 104px;object-fit:contain;object-position:center}
.remote-feed-form{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:10px;align-items:end}.release-card{margin-top:15px;padding:16px;border-radius:16px;background:#f0f8f3;border:1px solid #cfe4d7;display:flex;align-items:center;justify-content:space-between;gap:16px}.release-card small,.release-card strong{display:block}.release-card small{font-size:10px;color:var(--green2);font-weight:950}.release-card strong{font-size:24px;color:var(--green);margin:4px 0}.release-card p{margin:0;color:#607386;font-size:12px}
.employee-preview-banner{max-width:920px;display:flex;align-items:center;justify-content:space-between;gap:16px;margin:0 0 16px;padding:14px 16px;border:1px solid #dfbd58;border-radius:17px;background:#fff7dc;color:#5d4710;box-shadow:0 8px 25px rgba(100,73,8,.07)}
.employee-preview-banner strong,.employee-preview-banner span,.employee-preview-banner small{display:block}.employee-preview-banner strong{font-size:14px}.employee-preview-banner span{font-weight:850;margin-top:3px}.employee-preview-banner small{margin-top:4px;color:#756129;line-height:1.4}.employee-preview-banner form{flex:0 0 auto}
.employee-preview-readonly{background:#f7faf8}.employee-preview-readonly p{margin:0;color:var(--muted);line-height:1.5}
.table-actions{display:flex;align-items:center;gap:7px;flex-wrap:wrap}.table-actions .inline-form{display:inline-flex}

/* V10.1.32 — Contabilidade e centro documental por colaborador */
.accounting-page{display:flex;flex-direction:column;gap:16px}
.accounting-hero{position:relative;overflow:hidden;display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:174px;padding:30px 34px;border-radius:25px;background:linear-gradient(125deg,#063c29 0%,#08643f 62%,#0b7a4c 100%);color:#fff;box-shadow:0 20px 44px rgba(7,63,42,.18)}
.accounting-hero:after{content:"";position:absolute;right:-75px;top:-145px;width:340px;height:340px;border:64px solid rgba(255,255,255,.055);border-radius:50%;pointer-events:none}
.accounting-hero>div{position:relative;z-index:1}.accounting-eyebrow{display:block;margin-bottom:8px;color:#d8b64b;font-size:11px;font-weight:950;letter-spacing:.14em}.accounting-hero h1{margin:0 0 7px;font-size:34px;letter-spacing:-.035em}.accounting-hero p{margin:0;color:#d9e9e1;line-height:1.5}
.accounting-hero-actions{display:flex;gap:9px;flex-wrap:wrap;justify-content:flex-end}.accounting-hero-actions a{display:inline-flex;align-items:center;min-height:42px;padding:10px 15px;border:1px solid rgba(255,255,255,.2);border-radius:12px;background:rgba(255,255,255,.12);color:#fff;font-size:12px;font-weight:900;backdrop-filter:blur(8px)}.accounting-hero-actions a:hover{background:#fff;color:var(--green)}
.accounting-stats{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px}.accounting-stat{display:flex;align-items:center;gap:13px;min-width:0;padding:17px;border:1px solid var(--line);border-radius:19px;background:#fff;box-shadow:0 8px 25px rgba(7,63,42,.055)}.accounting-stat-icon{display:grid;place-items:center;flex:0 0 42px;width:42px;height:42px;border-radius:14px;background:#e8f5ee;color:#087344;font-size:19px;font-weight:950}.accounting-stat-icon.overtime{background:#fff1cf;color:#9b6500}.accounting-stat-icon.credit{background:#e7f1ff;color:#266eaa}.accounting-stat-icon.absence{background:#ffe9e6;color:#b13a31}.accounting-stat-icon.vacation{background:#edf2ff;color:#4d64b6}.accounting-stat-icon.missing{background:#f1eaff;color:#6541a5}.accounting-stat small,.accounting-stat strong,.accounting-stat em{display:block}.accounting-stat small{color:#607386;font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:.035em}.accounting-stat strong{margin:4px 0 1px;color:var(--green);font-size:24px;line-height:1}.accounting-stat em{color:#8a99a7;font-size:10px;font-style:normal;font-weight:700}
.accounting-workspace{padding:22px}.accounting-workspace-head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:18px}.accounting-workspace-head h2{margin:3px 0 4px}.accounting-workspace-head p{margin:0;color:var(--muted)}.accounting-primary-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:flex-end}
.accounting-filters{display:grid;grid-template-columns:210px minmax(260px,1fr) auto auto;align-items:end;gap:10px;padding:15px;border:1px solid #dbe7e0;border-radius:17px;background:#f7faf8;margin-bottom:14px}.accounting-filters .btn{min-height:43px}.accounting-search{min-width:0}
.accounting-access-note{display:flex;align-items:center;gap:12px;margin:0 0 16px;padding:13px 15px;border:1px solid #cce3d5;border-radius:16px;background:#eff8f2;color:#315746}.accounting-access-note>span{display:grid;place-items:center;flex:0 0 36px;width:36px;height:36px;border-radius:12px;background:#d8f1e2;color:#087344;font-size:17px;font-weight:950}.accounting-access-note strong,.accounting-access-note small{display:block}.accounting-access-note strong{font-size:13px;color:#075334}.accounting-access-note small{margin-top:3px;color:#60786b;line-height:1.45}
.accounting-table-wrap{border-radius:17px}.accounting-table{min-width:1480px}.accounting-table thead th{background:#e9f1ed;color:#385366;font-size:10px;letter-spacing:.045em}.accounting-table tbody tr:nth-child(even),.accounting-checklist-table tbody tr:nth-child(even){background:#f4faf6}.accounting-table tbody tr:hover,.accounting-checklist-table tbody tr:hover{background:#eaf6ee}.accounting-table td{vertical-align:middle}.accounting-table td small{color:#748697}.accounting-employee{display:flex;align-items:center;gap:10px;min-width:185px}.accounting-employee>span{display:grid;place-items:center;width:38px;height:38px;flex:0 0 38px;border-radius:13px;background:linear-gradient(145deg,#d9efe3,#edf7f1);color:#087344;font-weight:950}.accounting-employee strong,.accounting-employee small{display:block}.accounting-value{display:inline-flex;align-items:center;justify-content:center;min-width:61px;padding:7px 9px;border-radius:10px;background:#edf2f0;color:#173c2e;font-weight:900}.accounting-value.green{background:#dcf4e6;color:#087344}.accounting-value.blue{background:#e8f2ff;color:#276493}.accounting-count{display:inline-grid;place-items:center;min-width:34px;height:34px;border-radius:11px;background:#e8f4ed;color:#087344;font-weight:950}.accounting-count.warn{background:#fff0cf;color:#9a6400}.accounting-list-filter{padding:16px;margin-bottom:16px}.accounting-documents-panel{margin-top:16px}.accounting-checklist-panel{margin-top:16px}.accounting-checklist-table{min-width:920px}.accounting-checklist-table .badge{display:inline-flex;text-decoration:none}.accounting-checklist-table td{vertical-align:middle}

.accounting-heading{align-items:center}
.accounting-heading .accounting-primary-actions{flex:0 0 auto}
.accounting-card-groups{display:grid;grid-template-columns:1fr;gap:15px}
.accounting-card-group{min-width:0;padding:17px;border:1px solid #dbe7e0;border-radius:22px;background:#fff;box-shadow:0 9px 28px rgba(7,63,42,.055)}
.accounting-overview-group{background:linear-gradient(145deg,#f8fcfa,#eef7f2)}
.accounting-alert-group{background:linear-gradient(145deg,#fffdf8,#fbf8ee);border-color:#e9dfbf}
.accounting-card-group-head{display:flex;align-items:flex-end;justify-content:space-between;gap:14px;margin-bottom:13px}
.accounting-card-group-head h2{margin:0;font-size:19px;letter-spacing:-.02em}.accounting-card-group-head .eyebrow{margin-bottom:3px}.accounting-card-group-head>small{color:#708294;font-size:10px;font-weight:800;text-align:right}
.accounting-overview-cards{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:0}.accounting-alert-cards{grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin:0}
.accounting-card-groups .smart-card{min-height:126px;padding:13px 14px;border-radius:16px;box-shadow:0 5px 17px rgba(7,63,42,.045)}
.accounting-card-groups .smart-card strong{margin-top:8px}.accounting-card-note{display:block;margin-top:6px;color:#83919e;font-size:9px;font-weight:750;line-height:1.3}
.accounting-alert-cards .accounting-payroll-alert{grid-column:auto;min-height:126px}
.accounting-alert-card{border-left-width:4px}.accounting-alert-card.is-warning{border-left-color:#d5a126;background:linear-gradient(155deg,#fff,#fffaf0)}.accounting-alert-card.is-warning .smart-icon{background:#fff0c7;color:#966000}
.accounting-alert-card.is-danger{border-left-color:#c84a40;background:linear-gradient(155deg,#fff,#fff5f3)}.accounting-alert-card.is-danger .smart-icon{background:#ffe5e1;color:#b3342b}
.accounting-alert-card.is-ok{border-left-color:#2a9a62;background:linear-gradient(155deg,#fff,#f6fcf8)}.accounting-alert-card.is-ok .smart-icon{background:#def3e7;color:#087344}
.accounting-alert-card.is-ok .accounting-card-note{color:#438065}
.accounting-table{min-width:1260px}
.document-people-panel{padding:22px}
.document-people-head{align-items:flex-end}
.document-people-filters{margin:0}
.document-employee-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.document-employee-card{min-width:0;padding:17px;border:1px solid #dbe7e0;border-radius:18px;background:linear-gradient(155deg,#fff,#f7fbf8);box-shadow:0 7px 22px rgba(7,63,42,.045)}
.document-employee-main{display:grid;grid-template-columns:50px minmax(0,1fr) auto;align-items:center;gap:12px;padding-bottom:14px;border-bottom:1px solid #e5ede8}
.document-employee-avatar{width:50px;height:50px;object-fit:cover;border-radius:15px;background:#edf4f0;border:1px solid #d5e2db}
.document-employee-main strong,.document-employee-main span,.document-employee-main small{display:block}.document-employee-main strong{font-size:15px;color:var(--text)}.document-employee-main span{margin-top:3px;color:var(--green2);font-size:11px;font-weight:900}.document-employee-main small{margin-top:3px;color:#718395;font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.document-required-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:7px;padding:14px 0}
.document-required-grid>div{min-width:0;padding:9px 7px;border-radius:11px;background:#f0f5f2;text-align:center}.document-required-grid small{display:block;margin-bottom:7px;color:#607386;font-size:9px;font-weight:900;text-transform:uppercase}.document-required-grid .badge{max-width:100%;padding:5px 7px;font-size:10px;white-space:nowrap}
.document-required-grid>.document-item-link{cursor:pointer;transition:transform .16s ease,background .16s ease,box-shadow .16s ease}.document-required-grid>.document-item-link:hover,.document-required-grid>.document-item-link:focus{outline:0;background:#e5f1ea;box-shadow:0 0 0 2px rgba(8,116,75,.16);transform:translateY(-1px)}
.document-employee-actions{display:flex;justify-content:flex-end;gap:8px;flex-wrap:wrap}
.document-upload-panel{scroll-margin-top:90px}.document-employee-card{scroll-margin-top:90px}.accounting-documents-panel{scroll-margin-top:90px}
.dossier-subnav{display:flex;align-items:center;gap:12px;margin:0 0 16px}.dossier-subnav .module-tabs{flex:1;margin:0}.dossier-selector-panel{padding:20px 22px}.dossier-selector-form{display:grid;grid-template-columns:minmax(280px,680px) auto;align-items:end;gap:12px}.dossier-selector-form .field{margin:0}.dossier-empty-state{display:grid;justify-items:center;padding:58px 24px;text-align:center}.dossier-empty-state h2{margin:10px 0 5px}.dossier-empty-state p{margin:0;color:var(--muted)}.dossier-empty-icon{display:grid;place-items:center;width:58px;height:58px;border-radius:18px;background:#e6f3eb;color:var(--green2);font-size:27px}.employee-dossier-hero{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:22px;background:linear-gradient(130deg,#fff,#f2faf5)}.employee-dossier-person{display:flex;align-items:center;gap:16px;min-width:0}.employee-dossier-person img{width:76px;height:76px;object-fit:cover;border-radius:20px;border:1px solid #d5e3db;background:#edf4f0}.employee-dossier-person h2{margin:3px 0 2px;font-size:25px}.employee-dossier-person strong{display:block;color:var(--green2);font-size:12px}.employee-dossier-person p{margin:4px 0 0;color:#607386}.employee-dossier-actions{display:flex;align-items:center;justify-content:flex-end;gap:10px;flex-wrap:wrap}.employee-dossier-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px;margin-top:15px}.dossier-summary-card{min-width:0;padding:20px}.dossier-summary-wide{grid-column:1/-1}.dossier-required-grid{padding-bottom:0}.dossier-card-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px}.dossier-card-head>div{display:flex;align-items:center;gap:10px;min-width:0}.dossier-card-head h3{margin:0;font-size:18px}.dossier-card-icon{display:grid;place-items:center;width:38px;height:38px;flex:0 0 38px;border-radius:12px;background:#e5f3eb;color:var(--green2);font-weight:950}.dossier-summary-list{display:grid;gap:0;margin:0}.dossier-summary-list>div{display:grid;grid-template-columns:110px minmax(0,1fr);gap:10px;padding:9px 0;border-top:1px solid #e5ede8}.dossier-summary-list>div:first-child{border-top:0}.dossier-summary-list dt{color:#667a8c;font-size:11px;font-weight:850}.dossier-summary-list dd{min-width:0;margin:0;color:var(--text);font-weight:750;overflow-wrap:anywhere}.dossier-record-card{display:flex;flex-direction:column}.dossier-record-card p{flex:1;margin:0 0 16px;color:#65798b}.dossier-record-card>.btn{align-self:flex-start}.dossier-record-tabs{min-width:0}.accounting-documents-panel table{min-width:720px}
@media(max-width:900px){.dossier-subnav{align-items:flex-start;flex-direction:column}.dossier-subnav .module-tabs{width:100%}.employee-dossier-grid{grid-template-columns:1fr}.dossier-summary-wide{grid-column:auto}.employee-dossier-hero{align-items:flex-start;flex-direction:column}.employee-dossier-actions{justify-content:flex-start}}
@media(max-width:700px){.dossier-selector-panel{padding:14px}.dossier-selector-form{grid-template-columns:1fr}.dossier-selector-form .btn{width:100%}.dossier-empty-state{padding:38px 18px}.employee-dossier-hero{padding:16px}.employee-dossier-person{align-items:flex-start}.employee-dossier-person img{width:58px;height:58px;border-radius:16px}.employee-dossier-person h2{font-size:20px}.employee-dossier-actions{display:grid;grid-template-columns:1fr;width:100%}.employee-dossier-actions .btn{width:100%}.employee-dossier-grid{gap:11px;margin-top:11px}.dossier-summary-card{padding:14px}.dossier-card-head{align-items:flex-start}.dossier-card-head .btn{font-size:10px;padding:8px}.dossier-summary-list>div{grid-template-columns:90px minmax(0,1fr)}.dossier-required-grid>div:last-child{grid-column:auto}}
@media(max-width:1350px){.accounting-stats{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:1350px){.accounting-overview-cards{grid-template-columns:repeat(4,minmax(0,1fr))}.accounting-alert-cards{grid-template-columns:repeat(3,minmax(0,1fr))}.document-employee-grid{grid-template-columns:1fr}}
@media(max-width:900px){.accounting-hero{align-items:flex-start;flex-direction:column}.accounting-hero-actions{justify-content:flex-start}.accounting-heading{align-items:flex-start;flex-direction:column}.accounting-workspace-head{flex-direction:column}.accounting-primary-actions{justify-content:flex-start}.accounting-overview-cards,.accounting-alert-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.accounting-filters{grid-template-columns:1fr 1fr}.accounting-filters .accounting-search{grid-column:2}.accounting-filters .btn{width:100%}.document-people-head{align-items:flex-start;flex-direction:column}.document-people-filters{width:100%}}
@media(max-width:700px){.accounting-page{gap:12px}.accounting-hero{min-height:0;margin:-20px -16px 0;padding:25px 18px 23px;border-radius:0 0 27px 27px}.accounting-hero h1{font-size:28px}.accounting-hero p{font-size:13px}.accounting-hero-actions{display:grid;grid-template-columns:repeat(3,1fr);width:100%}.accounting-hero-actions a{justify-content:center;padding:9px 7px;font-size:11px}.accounting-stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.accounting-card-group{padding:12px;border-radius:18px}.accounting-card-group-head{align-items:flex-start;flex-direction:column;gap:3px}.accounting-card-group-head>small{text-align:left}.accounting-overview-cards,.accounting-alert-cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.accounting-card-groups .smart-card{min-height:125px;padding:12px 11px}.accounting-card-groups .smart-card small{font-size:10px}.accounting-card-note{font-size:8px}.accounting-stat{padding:13px;gap:9px}.accounting-stat-icon{width:36px;height:36px;flex-basis:36px;border-radius:12px}.accounting-stat strong{font-size:20px}.accounting-heading .accounting-primary-actions{display:grid;grid-template-columns:1fr 1fr;width:100%}.accounting-heading .accounting-primary-actions .btn{width:100%;font-size:11px}.accounting-workspace{padding:14px}.accounting-primary-actions{display:grid;grid-template-columns:1fr 1fr;width:100%}.accounting-primary-actions .btn{width:100%;font-size:11px}.accounting-filters{grid-template-columns:1fr;padding:12px}.accounting-filters .accounting-search{grid-column:auto}.accounting-access-note{align-items:flex-start;padding:12px}.accounting-list-filter{padding:13px}.document-people-panel{padding:14px}.document-people-filters{display:grid;grid-template-columns:1fr 1fr}.document-people-filters .field{min-width:0}.document-people-filters .btn{width:100%}.document-employee-main{grid-template-columns:44px minmax(0,1fr)}.document-employee-avatar{width:44px;height:44px;border-radius:13px}.document-employee-main>.badge{grid-column:1/-1;justify-self:start}.document-required-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.document-required-grid>div:last-child{grid-column:1/-1}.document-employee-actions{display:grid;grid-template-columns:1fr}.document-employee-actions .btn{width:100%}}

@media print{
  .accounting-page{display:block}.accounting-hero,.accounting-stats,.accounting-card-groups,.accounting-access-note{display:none!important}.accounting-workspace{border:0!important;box-shadow:none!important;padding:0!important}.accounting-workspace:before{content:"Mapa mensal de Contabilidade";display:block;margin:0 0 10px;font-size:18pt;font-weight:900;color:#073f2a}.accounting-table-wrap{overflow:visible;border:0}.accounting-table{min-width:0;width:100%;font-size:7pt}.accounting-table th,.accounting-table td{padding:5px 4px}.accounting-employee>span{display:none}.accounting-employee{min-width:0}.accounting-value{min-width:0;padding:0;background:none!important}.accounting-count{min-width:0;height:auto;background:none!important}}

@media(max-width:1200px){.smart-cards{grid-template-columns:repeat(4,minmax(0,1fr))}.hikvision-status-grid,.commercial-status-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:860px){.dashboard-grid{grid-template-columns:1fr}.enterprise-form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.attendance-chart{gap:5px}.remote-feed-form{grid-template-columns:1fr 1fr}.remote-feed-form .field{grid-column:1/-1}}
@media(max-width:700px){
  .dashboard-heading h1{font-size:25px}.smart-cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.smart-card{padding:13px}.smart-card strong{font-size:22px}
  .attendance-chart-panel{min-height:250px}.attendance-chart{height:160px;gap:3px}.chart-column i{max-width:18px}.chart-column span{font-size:9px}
  .enterprise-form-grid,.hikvision-status-grid,.commercial-status-grid{grid-template-columns:1fr}.module-tabs{margin-left:-2px;margin-right:-2px}.release-card{align-items:flex-start;flex-direction:column}.remote-feed-form{grid-template-columns:1fr}.remote-feed-form .field{grid-column:auto}
  .mobile-notification-permission{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:11px;background:#fff;border:1px solid #d7e5dd;border-radius:18px;padding:13px;margin:0 0 14px;box-shadow:0 8px 24px rgba(7,63,42,.07)}
  .mobile-notification-permission-icon{width:42px;height:42px;display:grid;place-items:center;border-radius:14px;background:#fff3cf;font-size:19px}
  .mobile-notification-permission strong,.mobile-notification-permission small{display:block}.mobile-notification-permission strong{font-size:13px;color:var(--green)}.mobile-notification-permission small{font-size:11px;line-height:1.35;color:#687b8c;margin-top:3px}
  .mobile-notification-permission .btn{padding:9px 11px;font-size:11px;white-space:nowrap}.mobile-notification-permission .btn[hidden]{display:none}
  .mobile-notification-permission + .mobile-app-shell .mobile-home-hero{margin-top:0}
  .admin-mobile-hero img{width:76px;height:76px;flex-basis:76px}
  .notifications-page-title{display:flex;align-items:flex-start;gap:10px}
  .notifications-page-title .notifications-unread-total{font-size:10px;padding:7px 9px;white-space:nowrap}
  .notifications-center{padding:14px}
  .notifications-center-head{align-items:flex-start;flex-direction:column}
  .notifications-center-head .notification-actions{max-width:none;width:100%;justify-content:flex-start}
  .notifications-center-head .notification-actions form{flex:1}
  .notifications-center-head .notification-actions .btn{width:100%;font-size:11px;padding:10px 8px}
  .notification-inbox-open{grid-template-columns:38px minmax(0,1fr) auto auto;gap:9px;padding:12px}
  .notification-inbox-icon{width:38px;height:38px;border-radius:12px;font-size:16px}
  .notification-inbox-copy strong{font-size:13px}
  .notification-related-link{margin:0 12px 12px 59px}
  .employee-preview-banner{align-items:stretch;flex-direction:column;padding:13px;margin-bottom:13px}.employee-preview-banner .btn{width:100%;min-height:44px}
}
.document-view-toolbar{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:18px}.document-view-toolbar h1{margin:4px 0}.document-view-toolbar p{margin:0;color:var(--muted,#60738a)}.document-viewer-shell{height:calc(100vh - 245px);min-height:520px;background:#252525;border-radius:20px;overflow:hidden;box-shadow:0 14px 35px rgba(2,42,27,.14)}.document-viewer-frame{display:block;width:100%;height:100%;border:0}.document-viewer-image{height:auto;min-height:520px;padding:24px;text-align:center}.document-viewer-image img{display:block;max-width:100%;max-height:calc(100vh - 285px);margin:0 auto;border-radius:12px;background:#fff}
@media(max-width:700px){.document-view-toolbar{align-items:flex-start;flex-direction:column}.document-view-toolbar .actions{width:100%}.document-view-toolbar .btn{flex:1;text-align:center}.document-viewer-shell{height:calc(100vh - 300px);min-height:430px;border-radius:14px}.document-viewer-image{height:auto;padding:10px}}

/* V10.1.40 — arquivo da Contabilidade, faturas e extratos bancários */
.invoice-heading,.company-doc-heading{align-items:center}.invoice-heading .actions{justify-content:flex-end}.invoice-cards{grid-template-columns:repeat(5,minmax(0,1fr));margin-bottom:18px}.invoice-list-panel,.invoice-form,.company-doc-list,.company-doc-form{padding:22px}.invoice-list-head,.invoice-form-head,.company-doc-list-head,.company-doc-form-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:17px}.invoice-list-head h2,.invoice-form-head h2,.company-doc-list-head h2,.company-doc-form-head h2{margin:3px 0 5px}.invoice-list-head p,.invoice-form-head p,.company-doc-list-head p,.company-doc-form-head p{margin:0;color:var(--muted);line-height:1.45}.invoice-filters{display:grid;grid-template-columns:170px minmax(210px,1fr) 180px minmax(230px,1.25fr) auto;align-items:end;gap:10px;margin-bottom:15px}.invoice-filters .btn{min-height:42px}.invoice-table{min-width:1250px}.invoice-table td small,.company-doc-table td small{display:block;margin-top:4px;color:#718395;font-size:11px;line-height:1.35}.invoice-form{scroll-margin-top:90px}.invoice-form-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-bottom:17px}.invoice-file{grid-column:span 2}.invoice-file small{color:var(--muted);font-size:11px}.invoice-description{grid-column:1/-1}
.company-doc-tabs{display:flex;gap:7px;margin:0 0 17px;overflow-x:auto;padding-bottom:3px;scrollbar-width:thin}.company-doc-tabs a{flex:0 0 auto}.company-doc-cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:18px}.company-doc-cards article{margin:0;padding:17px}.company-doc-cards small,.company-doc-cards strong{display:block}.company-doc-cards small{color:var(--muted);font-size:11px;font-weight:850}.company-doc-cards strong{margin-top:5px;color:var(--green);font-size:27px}.company-doc-filters{display:grid;grid-template-columns:175px 180px minmax(250px,1fr) auto;align-items:end;gap:10px;margin-bottom:15px}.company-doc-filters .btn{min-height:42px}.company-doc-table{min-width:1120px}.company-doc-form{scroll-margin-top:90px}.company-doc-form-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-bottom:17px}.company-doc-file{grid-column:span 2}.company-doc-description{grid-column:1/-1}.company-doc-table .table-actions{min-width:250px}
@media(max-width:1250px){.invoice-cards{grid-template-columns:repeat(3,minmax(0,1fr))}.invoice-filters{grid-template-columns:170px 1fr 170px}.invoice-filters .field:nth-child(4){grid-column:span 2}.invoice-form-grid,.company-doc-form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.company-doc-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.company-doc-filters{grid-template-columns:170px 170px minmax(220px,1fr) auto}}
@media(max-width:850px){.invoice-heading,.company-doc-heading,.invoice-form-head,.company-doc-form-head{align-items:flex-start;flex-direction:column}.invoice-heading .actions{width:100%}.invoice-heading .actions .btn{flex:1}.invoice-filters,.company-doc-filters{grid-template-columns:1fr 1fr}.invoice-filters .field:nth-child(4){grid-column:auto}.invoice-filters .btn,.company-doc-filters .btn{width:100%}.company-doc-search{grid-column:1/-1}}
@media(max-width:700px){.invoice-list-panel,.invoice-form,.company-doc-list,.company-doc-form{padding:14px}.invoice-cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.invoice-cards .smart-card:nth-child(5){grid-column:1/-1}.invoice-filters,.company-doc-filters,.invoice-form-grid,.company-doc-form-grid{grid-template-columns:1fr}.company-doc-search,.invoice-file,.invoice-description,.company-doc-file,.company-doc-description{grid-column:auto}.company-doc-cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.company-doc-tabs{margin-left:-2px;margin-right:-2px}.company-doc-heading>.btn{width:100%}}

/* V10.1.61 — Central de pedidos de correção enviados pelo App */
.requests-page-title{align-items:center}
.requests-title-actions{display:flex;align-items:center;justify-content:flex-end;gap:10px;flex-wrap:wrap}
.requests-pending-total{display:inline-flex;align-items:center;gap:7px;min-height:42px;padding:8px 13px;border:1px solid #efdca7;border-radius:12px;background:#fff8e5;color:#76530b;font-size:12px;font-weight:850}
.requests-pending-total strong{font-size:20px;color:#9a6500;line-height:1}
.requests-workspace{display:grid;grid-template-columns:minmax(360px,.9fr) minmax(520px,1.25fr);gap:16px;align-items:start}
.requests-list-panel,.request-detail-panel{min-width:0;margin-bottom:0}
.requests-list-panel .panel-head p,.request-detail-head p,.request-subhead p{margin:4px 0 0;color:var(--muted);font-size:12px}
.requests-list{display:flex;flex-direction:column;gap:9px;max-height:calc(100vh - 270px);min-height:280px;overflow:auto;padding-right:3px}
.request-list-item{display:grid;grid-template-columns:48px minmax(0,1fr) auto;align-items:center;gap:11px;padding:12px;border:1px solid #dce7e1;border-radius:15px;background:#fff;color:inherit;text-decoration:none;transition:border-color .16s ease,box-shadow .16s ease,transform .16s ease}
.request-list-item:hover{border-color:#a8cdb8;box-shadow:0 8px 24px rgba(7,63,42,.08);transform:translateY(-1px)}
.request-list-item.active{border-color:#0b6a42;background:#f3faf6;box-shadow:0 0 0 3px rgba(11,106,66,.1)}
.request-list-item>img{width:48px;height:48px;border-radius:15px;object-fit:cover;border:1px solid #d7e4dc;background:#eef4f1}
.request-list-copy{min-width:0}
.request-list-copy strong,.request-list-copy small,.request-list-copy b,.request-list-copy em{display:block}
.request-list-copy strong{font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.request-list-copy small{margin-top:2px;color:#748596;font-size:10px;font-weight:750}
.request-list-copy b{margin-top:6px;color:#26483a;font-size:12px}
.request-list-copy em{margin-top:4px;color:#637587;font-size:11px;font-style:normal;line-height:1.35;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.request-list-side{align-self:stretch;display:flex;flex-direction:column;align-items:flex-end;justify-content:space-between;gap:8px;min-width:73px}
.request-list-side small{color:#8795a2;font-size:9px;white-space:nowrap}
.request-list-side i{display:inline-flex;align-items:center;justify-content:center;padding:7px 9px;border-radius:8px;background:#eef6f1;color:var(--green);font-size:11px;font-style:normal;font-weight:900}
.requests-empty-state,.request-detail-empty{min-height:270px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:26px;border:1px dashed #cadbd1;border-radius:17px;background:#f9fcfa;color:#607386}
.requests-empty-state>span,.request-detail-empty>span{display:grid;place-items:center;width:54px;height:54px;border-radius:17px;background:#e3f4ea;color:#087344;font-size:25px;font-weight:950;margin-bottom:12px}
.requests-empty-state strong{color:var(--green);font-size:16px}
.requests-empty-state p,.request-detail-empty p{max-width:390px;margin:7px 0 0;line-height:1.5}
.request-detail-empty h2{margin:0;color:var(--text)}
.request-detail-head{display:flex;align-items:flex-start;justify-content:space-between;gap:15px;margin-bottom:15px}
.request-detail-head h2{margin:0}
.request-employee-card{display:grid;grid-template-columns:58px minmax(0,1fr) auto;align-items:center;gap:13px;padding:14px;border:1px solid #d9e6df;border-radius:17px;background:#f3f8f5;margin-bottom:13px}
.request-employee-card>img{width:58px;height:58px;border-radius:17px;object-fit:cover;border:1px solid #cfddd5;background:#fff}
.request-employee-card strong,.request-employee-card span,.request-employee-card small{display:block}
.request-employee-card strong{font-size:16px}
.request-employee-card span{margin-top:2px;color:var(--green2);font-size:11px;font-weight:900}
.request-employee-card small{margin-top:4px;color:#6d7f8f;font-size:11px}
.request-employee-card>.badge{display:inline-flex}
.request-facts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;margin-bottom:13px}
.request-facts>div{padding:11px 12px;border:1px solid #e0e8e3;border-radius:13px;background:#fff}
.request-facts small,.request-facts strong{display:block}
.request-facts small{color:#748596;font-size:9px;font-weight:900;text-transform:uppercase;letter-spacing:.035em}
.request-facts strong{margin-top:4px;color:#153a2b;font-size:13px}
.request-reason-box{padding:14px 15px;border:1px solid #efd89a;border-radius:15px;background:#fff8e3;margin-bottom:15px}
.request-reason-box small{display:block;color:#846110;font-size:10px;font-weight:950;text-transform:uppercase;letter-spacing:.04em}
.request-reason-box p{margin:7px 0 0;color:#4e411c;line-height:1.55;font-size:13px}
.request-day-punches{margin-bottom:15px}
.request-subhead{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:9px}
.request-subhead h3{margin:0;font-size:15px}
.request-no-punches{padding:13px;border:1px dashed #d4dfd9;border-radius:13px;background:#f8fbf9;color:#718294;font-size:12px;text-align:center}
.request-punch-table th,.request-punch-table td{padding:9px 11px;font-size:12px}
.request-punch-table th{font-size:10px}
.request-resolution-form{padding-top:15px;border-top:1px solid var(--line)}
.request-resolution-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:11px}
.request-admin-note{grid-column:1/-1}
.request-admin-note textarea{min-height:75px}
.request-resolution-warning{margin-top:12px;padding:11px 13px;border-radius:12px;background:#edf6f1;color:#416255;font-size:11px;line-height:1.45;font-weight:750}
.request-action-row{display:flex;gap:9px;flex-wrap:wrap;margin-top:13px}
.request-action-row .btn{min-width:150px}
.requests-list::-webkit-scrollbar{width:8px}
.requests-list::-webkit-scrollbar-thumb{background:#cfddd5;border-radius:999px}
.requests-list::-webkit-scrollbar-track{background:#f2f7f4}
@media(max-width:1120px){.requests-workspace{grid-template-columns:1fr}.requests-list{max-height:none}.request-detail-panel{scroll-margin-top:88px}}
@media(max-width:700px){.requests-title-actions{width:100%;justify-content:flex-start}.requests-workspace{gap:12px}.request-list-item{grid-template-columns:42px minmax(0,1fr)}.request-list-item>img{width:42px;height:42px}.request-list-side{grid-column:2;flex-direction:row;align-items:center;min-width:0}.request-employee-card{grid-template-columns:50px minmax(0,1fr)}.request-employee-card>img{width:50px;height:50px}.request-employee-card>.badge{grid-column:1/-1;justify-self:start}.request-facts{grid-template-columns:repeat(2,minmax(0,1fr))}.request-resolution-grid{grid-template-columns:1fr}.request-admin-note{grid-column:auto}.request-action-row .btn{width:100%}}
