.overview-actions{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:0 0 18px}
.overview-actions button{display:grid;grid-template-columns:auto 1fr;column-gap:12px;align-items:center;border:1px solid #d9d8d3;border-radius:8px;background:#fff;padding:16px 18px;text-align:left;cursor:pointer;transition:.18s}
.overview-actions button:hover{border-color:#9d8a5c;transform:translateY(-1px)}.overview-actions button>span{grid-row:1/3;display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:#171818;color:#c4c9c6;font-size:8px;font-weight:800}.overview-actions strong{font-size:11px}.overview-actions small{margin-top:2px;color:#888;font-size:9px}
.overview-grid{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(300px,.7fr);gap:16px}.overview-grid .panel{min-width:0}.overview-reports .panel-head button{border:0;background:transparent;color:#626965;font-size:8px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;cursor:pointer}
.overview-status{display:inline-flex;padding:5px 7px;border:1px solid #b9dac2;border-radius:4px;background:#edf8f0;color:#216c38;font-size:8px;font-style:normal;font-weight:800}.overview-status.pending{border-color:#e4cf94;background:#fff8e6;color:#7d6118}
.overview-status.revision{border-color:#e1b2ab;background:#fff0ee;color:#8b3329}
.overview-indicators{display:grid;grid-template-columns:1fr 1fr;gap:9px}.overview-indicators div{padding:14px;border-radius:6px;background:#f5f4f0}.overview-indicators strong{display:block;font:500 25px "Helvetica Neue",Arial,sans-serif}.overview-indicators span{color:#777;font-size:8px;font-weight:800;letter-spacing:.06em;text-transform:uppercase}
.overview-composition>div{display:flex;align-items:center;justify-content:space-between;padding:12px 0;border-bottom:1px solid #eee}.overview-composition>div:last-child{border-bottom:0}.overview-composition span{color:#666;font-size:10px}.overview-composition strong{font-size:14px}
.overview-pending>div{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 0;border-bottom:1px solid #eee}.overview-pending span b,.overview-pending span small{display:block}.overview-pending span b{font-size:10px}.overview-pending span small{margin-top:3px;color:#888;font-size:8px}.overview-pending em{color:#626965;font-size:8px;font-style:normal;font-weight:800;text-transform:uppercase}.overview-pending>button{width:100%;margin-top:12px;border:1px solid #222;border-radius:5px;background:#222;padding:10px;color:#fff;font-size:8px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;cursor:pointer}.overview-pending .overview-empty{display:flex;align-items:flex-start;flex-direction:column}.overview-empty strong{font-size:12px}.overview-empty small{color:#888;font-size:9px}
@media(max-width:1050px){.overview-grid{grid-template-columns:1fr}.overview-actions{grid-template-columns:1fr 1fr 1fr}}
@media(max-width:650px){.overview-actions{grid-template-columns:1fr}.overview-indicators{grid-template-columns:1fr 1fr}.overview-reports{overflow:hidden}}
.action-modal select{border:0;border-bottom:1px solid #bbb;background:transparent;padding:12px 2px}
.report-toolbar-actions{display:flex;align-items:center;gap:12px}.report-toolbar-actions small{color:#777;font-size:9px}
.report-progress{height:32px;background:#e5e4df;position:relative;margin-bottom:16px;overflow:hidden}.report-progress>span{display:block;height:100%;width:0;background:#929995;transition:.25s}.report-progress small{position:absolute;inset:0;display:grid;place-items:center;font-size:9px;font-weight:700;letter-spacing:.08em}
.service-report-layout{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(320px,.55fr);gap:18px;align-items:start}
.service-report-form fieldset{border:0;border-top:1px solid #ddd;padding:30px 0;margin:0}
.service-report-form fieldset:first-child{border-top:0;padding-top:0}
.service-report-form legend{font-size:10px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;padding:0 0 20px;color:#222}.service-report-form legend b{display:inline-grid;place-items:center;width:25px;height:25px;margin-right:9px;background:#111;color:#c4c9c6;font-size:9px}
.service-report-form label{display:flex;flex-direction:column;gap:7px;font-size:9px;text-transform:uppercase;letter-spacing:.08em;color:#666;margin-bottom:15px}
.service-report-form input,.service-report-form textarea,.service-report-form select{border:0;border-bottom:1px solid #bbb;background:transparent;padding:11px 2px}
.service-report-form textarea{min-height:82px;resize:vertical}
.field-help{font-size:11px;color:#888;margin:-6px 0 18px}
.fieldset-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:20px}.fieldset-heading>div{display:flex;gap:7px}.inline-action{border:1px solid #222;background:#222;color:#fff;padding:8px 10px;font-size:8px;text-transform:uppercase;letter-spacing:.08em;cursor:pointer}.inline-action.subtle{background:transparent;color:#555;border-color:#bbb}
.equipment-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px 16px}
.equipment-grid label{margin-bottom:4px}
.equipment-grid input{text-align:center;font-size:16px;font-weight:600}
.activity-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.activity-toggle{position:relative;display:block!important;margin:0!important}.activity-toggle input{position:absolute;opacity:0;pointer-events:none}.activity-toggle span{display:flex;align-items:center;justify-content:space-between;min-height:54px;border:1px solid #d5d5d5;padding:12px;font-size:10px;font-weight:700;letter-spacing:0;text-transform:none;cursor:pointer}.activity-toggle span:after{content:"NÃO";font-size:8px;color:#999}.activity-toggle input:checked+span{border-color:#287a40;background:#edf7ef;color:#195b2c}.activity-toggle input:checked+span:after{content:"SIM";color:#287a40}.activity-toggle.critical input:checked+span{border-color:#a23c3c;background:#fff0f0;color:#7f2525}.activity-toggle.critical input:checked+span:after{color:#a23c3c}
.quantity-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-top:18px;padding:18px;background:#f5f4f0}.quantity-summary label{margin:0}.quantity-summary input{font-size:19px;font-weight:600;text-align:center}
.service-report-sidebar{position:sticky;top:18px;display:grid;gap:18px}.service-report-history{position:static}
.report-preview-card pre{white-space:pre-wrap;word-break:break-word;max-height:520px;overflow:auto;background:#f6f5f1;color:#222;border:1px solid #ddd;padding:22px;font:11px/1.65 "Helvetica Neue",Arial,sans-serif;margin:12px 0 0}.report-preview-card i{font-size:8px;color:#888;font-style:normal}.preview-actions{display:flex;align-items:center;gap:10px}.report-submit{display:flex;gap:10px}.report-submit .btn{min-width:160px}
.report-history-list article{padding:17px 0;border-bottom:1px solid #eee}
.report-history-list strong{display:block;font-size:14px}
.report-history-list span{display:block;font-size:10px;color:#777;margin:3px 0 10px}
.report-history-list button{border:0;background:#111;color:#fff;padding:8px 10px;font-size:8px;text-transform:uppercase;letter-spacing:.08em;cursor:pointer}
.report-history-list .rso-status{display:inline-flex;width:max-content;margin:2px 0 10px;padding:4px 7px;border:1px solid #a9d8b6;border-radius:999px;background:#edf8f0;color:#176b35;font-size:8px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
.report-history-list .rso-status.is-pending{border-color:#e7c86e;background:#fff8e5;color:#7b5a00}
.report-history-list .rso-status.is-revision{border-color:#e1b2ab;background:#fff0ee;color:#8b3329}
.rso-revision-note{margin:0 0 11px;padding:10px;border-left:3px solid #b34d40;background:#fff3f1;color:#6f3b35;font-size:9px;line-height:1.5}.rso-revision-note b{display:inline;font-size:9px}
.rso-actions{display:flex;flex-wrap:wrap;gap:6px}.report-history-list .rso-actions button{margin:0}.report-history-list .rso-actions button.secondary{border:1px solid #bbb;background:#fff;color:#333}
.report-revision-notice{display:flex;align-items:flex-start;flex-direction:column;gap:4px;margin:0 0 16px;padding:14px 17px;border:1px solid #dfaea6;border-radius:7px;background:#fff1ef;color:#71382f}.report-revision-notice[hidden]{display:none}.report-revision-notice strong{font-size:11px}.report-revision-notice span{font-size:10px;line-height:1.5}
.nav-badge{display:inline-grid;place-items:center;min-width:19px;height:19px;margin-left:auto;border-radius:10px;background:#a33b31;color:#fff;font-size:8px}
.rso-tabs{display:flex;flex-wrap:wrap;gap:5px;margin:12px 0}.rso-tabs button{border:1px solid #d5d4cf;border-radius:4px;background:#fff;padding:7px 8px;color:#666;font-size:7px;font-weight:800;text-transform:uppercase;cursor:pointer}.rso-tabs button.active{border-color:#222;background:#222;color:#fff}
.rso-filters{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin-bottom:12px}.rso-filters input,.rso-filters select{min-width:0;border:1px solid #d8d7d2;border-radius:4px;background:#fff;padding:8px;font-size:9px}.version-note{display:block;margin:0 0 9px;color:#777;font-size:8px}
.statistics-filters{display:flex;flex-wrap:wrap;gap:8px}.statistics-comparison{display:flex;align-items:center;gap:12px;margin-bottom:14px;padding:14px 18px}.statistics-comparison strong{font-size:24px}.statistics-comparison span{color:#777;font-size:10px}
.staff-row{cursor:pointer}.staff-profile-modal{width:min(760px,calc(100% - 30px));padding:25px}.profile-head{display:flex;align-items:center;gap:16px}.profile-head h2{margin:3px 0;font-size:24px}.profile-head p,.profile-head span{margin:0;color:#777;font-size:10px}.profile-metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin:22px 0}.profile-metrics div{padding:13px;background:#f4f3ef}.profile-metrics span,.profile-metrics b{display:block}.profile-metrics span{color:#888;font-size:8px;text-transform:uppercase}.profile-metrics b{margin-top:5px;font-size:12px}.staff-profile-modal h3{margin:20px 0 9px;font-size:11px;text-transform:uppercase}.profile-tags{display:flex;flex-wrap:wrap;gap:5px}.profile-tags span{padding:6px 8px;border:1px solid #ddd;border-radius:5px;background:#f7f6f2;font-size:9px}.career-timeline>div{display:grid;grid-template-columns:130px 1fr auto;gap:10px;padding:10px 0;border-bottom:1px solid #eee}.career-timeline b,.career-timeline span,.career-timeline small{font-size:9px}.career-timeline small{color:#888}
.backup-list{margin-bottom:14px}.backup-list>div{display:flex;align-items:center;justify-content:space-between;padding:11px 0;border-bottom:1px solid #eee}.backup-list span strong,.backup-list span small{display:block}.backup-list span strong{font-size:10px}.backup-list span small{margin-top:3px;color:#888;font-size:8px}.backup-list button{border:1px solid #bbb;background:#fff;padding:7px 9px;font-size:8px;text-transform:uppercase;cursor:pointer}
@media(max-width:650px){.profile-metrics{grid-template-columns:1fr 1fr}.career-timeline>div{grid-template-columns:1fr}.statistics-filters{width:100%}.statistics-filters label{flex:1}.rso-filters{grid-template-columns:1fr}}
.period-filter{display:flex;flex-direction:column;gap:5px;font-size:8px;text-transform:uppercase;letter-spacing:.1em;color:#777}.period-filter select{min-width:180px;border:1px solid #ccc;background:#fff;padding:10px}
.statistics-note{font-size:12px;color:#777;margin:-8px 0 22px}.statistics-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.indicator-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.indicator-grid div{padding:16px;background:#f5f4f0}.indicator-grid strong{display:block;font:500 27px "Helvetica Neue",Arial,sans-serif}.indicator-grid span{font-size:9px;color:#777;text-transform:uppercase;letter-spacing:.07em}.bar-list>div{display:grid;grid-template-columns:120px 1fr 36px;align-items:center;gap:10px;margin:15px 0}.bar-list label{font-size:10px;color:#555;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.bar-track{height:8px;background:#e7e6e1}.bar-track i{display:block;height:100%;background:#929995}.bar-list b{text-align:right;font-size:11px}.ranking-list>div{display:grid;grid-template-columns:28px 1fr auto;align-items:center;padding:13px 0;border-bottom:1px solid #eee}.ranking-list em{font-style:normal;font-size:10px;color:#747b77}.ranking-list strong{font-size:12px}.ranking-list span{font-size:10px;color:#777}.empty-statistics{text-align:center;padding:50px;border:1px dashed #bbb;background:#f5f4f0;margin-top:16px}.empty-statistics strong{font-size:18px}.empty-statistics p{color:#777;font-size:12px}
.participant-ranking-panel{grid-column:1/-1}.participant-ranking-panel .panel-head>small{font-size:9px;color:#888}.participant-ranking td{vertical-align:middle}.participant-ranking td:first-child{font-weight:800;color:#747b77}.participant-ranking td:nth-child(2){font-weight:700}.participant-ranking tr:first-child td{background:#f4f5f4}.participant-ranking tr:first-child td:first-child{font-size:16px}
.role-badge{display:inline-block;white-space:nowrap;background:#efeee9;border:1px solid #ddd;padding:6px 8px;font-size:8px;font-weight:700;text-transform:uppercase;letter-spacing:.05em}
.rank-label{display:block;margin-top:3px;color:#777;font-size:8px;font-weight:700;letter-spacing:.06em;text-transform:uppercase}
[data-admin-only][hidden]{display:none!important}
@media(max-width:900px){.time-layout,.service-report-layout,.statistics-grid{grid-template-columns:1fr}.service-report-sidebar{position:static}.activity-grid,.equipment-grid,.quantity-summary{grid-template-columns:1fr 1fr}.report-toolbar{align-items:flex-start}.report-toolbar-actions{flex-direction:column;align-items:flex-end}}
@media print{.sidebar,.dashboard-header,.view-toolbar,.btn,.small-btn{display:none!important}.dashboard{display:block!important}.dashboard-view{display:none!important}#overviewView{display:block!important}.dashboard-main{background:#fff}.metric-grid{grid-template-columns:repeat(4,1fr)}}
@media print{body.printing-service-report #serviceReportsView{display:block!important}body.printing-service-report *{visibility:hidden!important}body.printing-service-report #serviceReportPreview,body.printing-service-report #serviceReportPreview *{visibility:visible!important}body.printing-service-report #serviceReportPreview{position:absolute;inset:0;max-height:none;overflow:visible;border:0;background:#fff;padding:30px;font-size:12px}}

/* Fluxo compacto do RSO */
#serviceReportsView{max-width:1440px;margin:0 auto}
.report-toolbar{align-items:flex-end;margin-bottom:14px}
.report-toolbar h2{margin-bottom:5px}
.report-toolbar p{margin:0;color:#777;font-size:12px}
.report-toolbar-actions{padding-bottom:3px}
.report-progress{height:5px;margin:0 0 22px;border-radius:10px;background:#e8e7e2}
.report-progress>span{border-radius:10px}
.report-progress small{top:-22px;right:0;left:auto;place-items:end;font-size:8px;color:#777}
.service-report-layout{grid-template-columns:minmax(0,1fr) 370px;gap:22px}
.service-report-form.panel{display:flex;flex-direction:column;gap:14px;padding:0;border:0;background:transparent;box-shadow:none}
.service-report-form fieldset,.service-report-form fieldset:first-child{
  margin:0;padding:24px;border:1px solid #e2e1dc;background:#fff;border-radius:10px
}
.service-report-form fieldset:first-child{order:1}
.service-report-form fieldset:nth-of-type(2){order:2}
.service-report-form .report-section-activity{order:3}
.service-report-form .report-section-narrative{order:4}
.service-report-form .report-section-equipment{order:5}
.service-report-form .report-section-indicators{order:6}
.service-report-form .report-section-cad{order:7}
.service-report-form .report-submit{order:8}
.service-report-form legend{width:100%;padding:0 0 18px;font-size:11px;color:#111}
.service-report-form legend b{width:28px;height:28px;border-radius:50%;margin-right:10px}
.service-report-form .form-grid{gap:0 16px}
.service-report-form fieldset:first-child .form-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.service-report-form label{gap:6px;margin-bottom:14px;font-size:8px;font-weight:700;color:#666}
.service-report-form input,.service-report-form textarea,.service-report-form select{
  min-height:42px;padding:10px 12px;border:1px solid #d8d7d2;border-radius:6px;background:#fbfbf9;color:#171717
}
.service-report-form input:focus,.service-report-form textarea:focus,.service-report-form select:focus{
  outline:2px solid rgba(201,168,93,.25);border-color:#b89549;background:#fff
}
.service-report-form textarea{min-height:92px;line-height:1.5}
.fieldset-heading{align-items:center;margin-bottom:16px;padding-bottom:14px;border-bottom:1px solid #eee}
.fieldset-heading .field-help{margin:0}
.inline-action{border-radius:5px}
.equipment-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.equipment-grid label{padding:10px 10px 7px;border:1px solid #e5e4df;border-radius:7px;background:#faf9f6;text-align:center}
.equipment-grid input{min-height:34px;padding:5px;border:0;background:#fff;text-align:center}
.activity-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:8px}
.activity-toggle span{min-height:66px;border-radius:7px;background:#faf9f6;align-items:flex-start;flex-direction:column}
.quantity-summary{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:12px;padding:0;background:transparent}
.quantity-summary label{padding:13px;border:1px solid #e5e4df;border-radius:7px;background:#faf9f6;text-align:center}
.quantity-summary input{margin-top:3px;background:#fff}
.report-submit{align-items:center;justify-content:flex-end;padding:6px 0 12px}
.report-submit span{margin-right:auto;color:#777;font-size:10px}
.report-submit .btn{min-width:180px;border-radius:6px}
.service-report-sidebar{top:14px;gap:14px}
.service-report-sidebar .panel{padding:20px;border-radius:10px}
.report-preview-card pre{max-height:430px;margin-top:14px;padding:18px;border-radius:7px;background:#f7f6f2;font-size:10px}
.report-history-list{max-height:310px;overflow:auto;padding-right:4px}
.report-history-list article{padding:13px 0}
.history-access-note{margin:0 0 10px;padding:10px 12px;border-radius:6px;background:#f5f4f0;color:#666;font-size:10px;line-height:1.5}
.service-report-history .report-history-list{max-height:70vh}
.staff-card{position:relative}
.staff-edit-button{align-self:center;margin-left:auto;border:1px solid #d2d1cc;border-radius:5px;background:#fff;padding:8px 11px;color:#333;font-size:8px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;cursor:pointer}
.staff-edit-button:hover{border-color:#111;background:#111;color:#fff}
.staff-account-fields{display:grid;grid-template-columns:1fr 1fr;grid-column:1/-1;gap:0 16px}
.staff-account-fields[hidden]{display:none!important}
.staff-account-status{grid-column:1/-1;display:grid;grid-template-columns:9px 1fr;align-items:center;gap:10px;margin-bottom:15px;padding:12px;border:1px solid #dfdcd3;border-radius:7px;background:#f8f7f3}.staff-account-status>i{width:8px;height:8px;border-radius:50%;background:#a8a49b;box-shadow:0 0 0 4px #e8e5de}.staff-account-status span{display:grid;gap:2px}.staff-account-status strong{font-size:9px}.staff-account-status small{color:#858178;font-size:8px}.staff-account-status.active>i{background:#2c9b5d;box-shadow:0 0 0 4px rgba(44,155,93,.13)}.staff-account-status.disabled>i{background:#c08b2f;box-shadow:0 0 0 4px rgba(192,139,47,.13)}.reset-access-field[hidden]{display:none!important}
.staff-access-action{display:grid;justify-items:start;gap:6px}.account-badge{white-space:nowrap;padding:4px 6px;border:1px solid #ddd;border-radius:4px;background:#f4f3ef;color:#777;font-size:7px;font-weight:800}.account-badge.active{border-color:#b9ddc4;background:#eef8f1;color:#287442}.account-badge.disabled{border-color:#ead69e;background:#fff8e6;color:#826318}.account-badge.missing{color:#87837a}

/* Efetivo responsivo sem corte horizontal */
#staffView{min-width:0;overflow-x:hidden}.staff-group{max-width:100%;overflow:hidden}.staff-access-action{min-width:0}.staff-access-action .staff-edit-button{width:100%;padding-left:6px;padding-right:6px}.account-badge{max-width:100%;overflow:hidden;text-overflow:ellipsis}
@media(max-width:1450px){.staff-list-head,.staff-row{grid-template-columns:minmax(145px,1.2fr) 58px minmax(88px,.7fr) minmax(112px,.95fr) 76px 88px minmax(120px,.9fr) 62px 86px;gap:7px}.staff-list-head,.staff-row{padding-left:14px;padding-right:14px}.staff-row b,.staff-row strong{font-size:10px}.staff-row small{font-size:7px}.qualification-trigger{padding-left:6px!important;padding-right:6px!important}}

@media(max-width:1450px){.staff-list-head,.staff-row{grid-template-columns:minmax(135px,1.15fr) 54px minmax(82px,.65fr) minmax(100px,.9fr) 70px 78px minmax(138px,.9fr) 54px 56px;gap:6px;padding-left:12px;padding-right:12px}.staff-qualifications{display:grid;grid-template-columns:1fr 1fr;gap:3px}.qualification-popover summary{justify-content:space-between;min-width:0;padding:5px 6px;font-size:7px}.staff-row .staff-edit-button{width:100%;padding:7px 4px;font-size:7px}.staff-person{gap:8px}.staff-row .avatar{width:31px;height:31px}.staff-person .account-badge{display:inline-flex;width:max-content;max-width:100%;margin-top:4px}}

/* Painel lateral retrátil */
@media(min-width:901px){
  .dashboard{grid-template-columns:72px minmax(0,1fr)}
  .sidebar{z-index:50;width:72px;padding:20px 10px;overflow:hidden;transition:width .24s cubic-bezier(.22,.8,.25,1),box-shadow .24s}
  .sidebar:hover,.sidebar:focus-within{width:224px;box-shadow:18px 0 38px rgba(0,0,0,.18)}
  .sidebar-brand{justify-content:center;width:52px;margin:0 0 14px;padding:5px 9px 22px;transition:width .24s,justify-content .24s}
  .sidebar-brand img{flex:0 0 34px}
  .sidebar-brand span,.side-nav-label,.side-nav .nav-text,.sidebar-foot>div{max-width:0;overflow:hidden;opacity:0;white-space:nowrap;transform:translateX(-5px);transition:max-width .2s,opacity .13s,transform .2s}
  .sidebar:hover .sidebar-brand,.sidebar:focus-within .sidebar-brand{justify-content:flex-start;width:200px;margin-left:4px;padding-left:8px}
  .sidebar:hover .sidebar-brand span,.sidebar:focus-within .sidebar-brand span,.sidebar:hover .side-nav-label,.sidebar:focus-within .side-nav-label,.sidebar:hover .side-nav .nav-text,.sidebar:focus-within .side-nav .nav-text,.sidebar:hover .sidebar-foot>div,.sidebar:focus-within .sidebar-foot>div{max-width:170px;opacity:1;transform:none}
  .side-nav{width:52px;transition:width .24s}.sidebar:hover .side-nav,.sidebar:focus-within .side-nav{width:200px}
  .side-nav-label{height:0;padding:0}.sidebar:hover .side-nav-label,.sidebar:focus-within .side-nav-label{height:auto;padding:14px 13px 7px}
  .side-nav-admin-label{margin-top:9px!important;border-top:0!important}.sidebar:hover .side-nav-admin-label,.sidebar:focus-within .side-nav-admin-label{border-top:1px solid #292a29!important;padding-top:18px}
  .side-nav button{width:52px;padding:0 16px;gap:12px;transition:width .24s,background .15s,color .15s}.sidebar:hover .side-nav button,.sidebar:focus-within .side-nav button{width:200px;padding:0 12px}
  .side-nav button .nav-icon{flex:0 0 19px}.side-nav button:hover{transform:none}
  .nav-badge{position:absolute;top:5px;right:3px;min-width:15px;height:15px;padding:0;font-size:7px}.sidebar:hover .nav-badge,.sidebar:focus-within .nav-badge{position:static;min-width:20px;height:20px;padding:0 6px}
  .sidebar-foot{width:52px;margin:0;padding:18px 14px 2px;gap:12px;transition:width .24s,padding .24s}.sidebar:hover .sidebar-foot,.sidebar:focus-within .sidebar-foot{width:200px;margin-left:4px;padding:18px 8px 2px}
}
@media(max-width:900px){.sidebar{width:255px;overflow:visible}.sidebar-brand span,.side-nav-label,.side-nav .nav-text,.sidebar-foot>div{max-width:none;opacity:1;transform:none}.side-nav,.side-nav button,.sidebar-foot{width:auto}.side-nav-label{height:auto}.nav-badge{position:static}}

/* Navegação permanece acessível mesmo em telas baixas */
.sidebar{height:100vh;display:flex;flex-direction:column;overflow:hidden}
.sidebar-brand,.sidebar-foot{flex:0 0 auto}
.side-nav{flex:1 1 auto;min-height:0;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:none;-ms-overflow-style:none}
.side-nav::-webkit-scrollbar{display:none;width:0;height:0}

/* Gestão de permissões */
.permission-manage-button{border:1px solid #d7d4ca;border-radius:6px;background:#fff;padding:8px 10px;color:#282a27;font-size:8px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;cursor:pointer}
.permission-manage-button:hover{border-color:#858c88;color:#8a661d}
.permissions-modal{width:min(820px,94vw)}.permission-presets{display:flex;align-items:center;gap:8px;padding:16px 22px;border-bottom:1px solid #e3e0d7;background:#f7f6f2}.permission-presets span{margin-right:auto;color:#777;font-size:9px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.permission-presets button{border:1px solid #d7d4ca;border-radius:6px;background:#fff;padding:9px 12px;font-size:9px;font-weight:700;cursor:pointer}.permission-presets button:hover{border-color:#858c88;background:#f6f7f6}
.permissions-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;padding:22px}.permission-option{display:grid;grid-template-columns:22px 1fr;gap:12px;align-items:start;border:1px solid #dedbd2;border-radius:9px;padding:16px;background:#fff;cursor:pointer}.permission-option:has(input:checked){border-color:#9aa19d;background:#f6f7f6;box-shadow:inset 3px 0 #858c88}.permission-option input{width:18px;height:18px;accent-color:#737a76}.permission-option span{display:grid;gap:5px}.permission-option small{color:#717873;font-size:7px;font-weight:900;letter-spacing:.1em}.permission-option strong{font-size:12px}.permission-option em{color:#74736e;font-size:9px;font-style:normal;line-height:1.45}.permission-security-note{margin:0 22px 6px;padding:11px 13px;border-radius:6px;background:#f3f2ed;color:#686762;font-size:9px}
@media(max-width:680px){.permissions-grid{grid-template-columns:1fr}.permission-presets{align-items:stretch;flex-direction:column}.permission-presets span{margin:0 0 4px}}

/* Janelas sempre acima da navegação */
body:has(dialog[open]) .sidebar{z-index:1;pointer-events:none;box-shadow:none!important}
@media(min-width:901px){
  body:has(dialog[open]) .sidebar,body:has(dialog[open]) .sidebar:hover,body:has(dialog[open]) .sidebar:focus-within{width:72px}
  body:has(dialog[open]) .sidebar-brand{justify-content:center!important;width:52px!important;margin:0 0 14px!important;padding:5px 9px 22px!important}
  body:has(dialog[open]) .sidebar-brand span,body:has(dialog[open]) .side-nav-label,body:has(dialog[open]) .side-nav .nav-text,body:has(dialog[open]) .sidebar-foot>div{max-width:0!important;height:0;overflow:hidden;opacity:0!important}
  body:has(dialog[open]) .side-nav,body:has(dialog[open]) .side-nav button,body:has(dialog[open]) .sidebar-foot{width:52px!important}
  body:has(dialog[open]) .side-nav button{padding:0 16px!important}
}
@media(max-width:900px){body:has(dialog[open]) .sidebar{transform:translateX(-100%)!important}}
dialog[open]{z-index:1000!important}
.password-form-message{display:block;min-height:18px;margin-top:10px;color:#a33a33;font-size:9px;font-weight:700}.password-form-message:empty{min-height:0;margin:0}
#passwordModal .modal-head p{max-width:430px;margin:7px 0 0;color:#777;font-size:10px;line-height:1.5}.password-form-grid{grid-template-columns:1fr 1fr;gap:0 18px}.password-current-field{grid-column:1/-1}.password-form-grid label[hidden]{display:none!important}@media(max-width:620px){.password-form-grid{grid-template-columns:1fr}.password-current-field{grid-column:auto}}
.staff-card-content{min-width:0;flex:1}
.personnel-tags{display:flex;flex-wrap:wrap;gap:5px;margin:9px 0}
.personnel-tag{display:inline-flex;align-items:center;min-height:21px;padding:4px 7px;border:1px solid #deddd8;border-radius:5px;background:#f5f4f0;color:#555;font-size:8px;font-weight:700;line-height:1.2}
.personnel-tag:before{content:"";width:6px;height:6px;margin-right:5px;border-radius:50%;background:#aaa}
.personnel-tag.rank{background:#fff2f0;color:#85342d;border-color:#efd2ce}.personnel-tag.rank:before{background:#c73b2e}
.personnel-tag.unit{background:#f8f3ff;color:#624385;border-color:#e2d6ee}.personnel-tag.unit:before{background:#9a65c7}
.personnel-tag.function{background:#fff4f8;color:#85465e;border-color:#efd6df}.personnel-tag.function:before{background:#d76a91}
.personnel-tag.course{background:#eff8f2;color:#356b45;border-color:#cfe5d5}.personnel-tag.course:before{background:#269552}
.course-tag-editor>span{display:block;margin-bottom:8px;color:#777;font-size:8px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
.course-tag-picker{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:16px}
.course-tag-picker button{border:1px solid #d9d8d3;border-radius:15px;background:#f6f5f1;padding:7px 10px;color:#555;font-size:9px;cursor:pointer}
.course-tag-picker button:hover{border-color:#999}
.course-tag-picker button.selected{border-color:#287a40;background:#eaf6ed;color:#1d6534;font-weight:800}
.staff-toolbar{align-items:flex-end}.staff-toolbar h2{margin-bottom:5px}.staff-toolbar p{margin:0;color:#777;font-size:12px}
.staff-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:14px}
.staff-summary article{padding:18px 20px;border:1px solid #ddd;border-radius:8px;background:#fff}
.staff-summary span{display:block;color:#888;font-size:8px;font-weight:800;letter-spacing:.1em}
.staff-summary strong{display:block;margin:5px 0 1px;font:500 30px "Helvetica Neue",Arial,sans-serif}
.staff-summary small{color:#888;font-size:9px}
.staff-controls{display:flex;flex-wrap:wrap;align-items:flex-end;gap:12px;margin-bottom:14px;padding:14px 16px;border-radius:8px}
.staff-controls label{display:flex;flex:1 1 145px;flex-direction:column;gap:6px;color:#777;font-size:8px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
.staff-controls label.staff-search{flex:2 1 260px}
.staff-controls input,.staff-controls select{height:40px;border:1px solid #d6d5d0;border-radius:5px;background:#fafaf8;padding:0 11px;color:#222}
.staff-controls>button{height:40px;border:1px solid #d2d1cc;border-radius:5px;background:#fff;padding:0 13px;color:#444;font-size:8px;font-weight:800;letter-spacing:.07em;text-transform:uppercase;cursor:pointer}.staff-controls>button:hover{border-color:#111;color:#111}
.staff-controls>span{align-self:center;margin-left:auto;color:#777;font-size:10px;white-space:nowrap}
.staff-directory{display:grid;gap:14px}
.staff-group{overflow:hidden;border:1px solid #ddd;border-radius:9px;background:#fff}
.staff-group>header{display:flex;align-items:center;justify-content:space-between;padding:17px 20px;border-bottom:1px solid #e4e3df;background:#f7f6f2}
.staff-group>header div{display:flex;align-items:center;gap:10px}.staff-group>header span{padding:4px 6px;border:1px solid #d2d1cc;border-radius:4px;color:#777;font-size:8px;font-weight:800}
.staff-group>header h3{margin:0;font:600 16px "Helvetica Neue",Arial,sans-serif}.staff-group>header b{display:grid;place-items:center;width:27px;height:27px;border-radius:50%;background:#111;color:#fff;font-size:9px}
.staff-group{overflow:visible}
.staff-list-head,.staff-row{display:grid;grid-template-columns:minmax(175px,1.25fr) 72px minmax(105px,.75fr) minmax(135px,1fr) 92px 105px minmax(155px,1fr) 76px 58px;gap:10px;align-items:center}
.staff-list-head{padding:9px 20px;border-bottom:1px solid #eee;color:#999;font-size:7px;font-weight:800;letter-spacing:.09em;text-transform:uppercase}
.staff-row{min-height:75px;padding:12px 20px;border-bottom:1px solid #eee}.staff-row:last-child{border-bottom:0}
.staff-row:hover{background:#fcfbf8}
.staff-row>div{min-width:0}.staff-row b,.staff-row strong{display:block;overflow:hidden;color:#222;font-size:11px;text-overflow:ellipsis;white-space:nowrap}
.staff-row small{display:block;margin-top:2px;color:#888;font-size:8px}
.staff-person{display:flex;align-items:center;gap:11px}.staff-row .avatar{flex:0 0 auto;width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:#171818;color:#c4c9c6;font-size:9px;font-weight:800}
.staff-insignia{display:flex;justify-content:flex-start}
.rank-insignia{display:inline-flex;align-items:center;justify-content:center;width:54px;height:34px;padding:3px;border:1px solid #c9c8c3;border-radius:4px;background:#fff;overflow:hidden}
.rank-insignia img{display:block;width:100%;height:100%;object-fit:contain}
.staff-date b{font-size:10px}.staff-date small{display:none}
.staff-qualifications{display:flex;align-items:center;gap:5px;position:relative}
.qualification-popover{position:relative}
.qualification-popover summary{display:flex;align-items:center;gap:5px;padding:6px 8px;border:1px solid #deddd8;border-radius:5px;background:#f7f6f2;color:#444;font-size:8px;font-weight:800;list-style:none;cursor:pointer;white-space:nowrap}
.qualification-popover summary::-webkit-details-marker{display:none}.qualification-popover summary b{display:grid;place-items:center;min-width:16px;height:16px;border-radius:8px;background:#222;color:#fff;font-size:7px}
.qualification-popover.laurels summary{background:#fff8e8;border-color:#ead7a9;color:#795b13}.qualification-popover.laurels summary b{background:#a37c20}
.qualification-popover>div{position:absolute;z-index:20;top:calc(100% + 7px);right:0;width:270px;padding:15px;border:1px solid #d9d8d3;border-radius:8px;background:#171818;color:#fff;box-shadow:0 14px 35px #0003}
.qualification-popover>div>strong{font-size:11px}.qualification-popover ul{margin:10px 0 0;padding-left:17px}.qualification-popover li,.qualification-popover p{margin:6px 0;color:#c9c9c9;font-size:10px;line-height:1.4}
.staff-status{display:inline-flex;padding:5px 7px;border:1px solid #cce1d1;border-radius:4px;background:#edf7ef;color:#28723d;font-size:8px;font-style:normal;font-weight:800}
.staff-status.inativo,.staff-status.afastado{border-color:#e3cccc;background:#faeeee;color:#8a3e3e}.staff-status.curso{border-color:#eadba9;background:#fff8e3;color:#84691d}
.staff-row .staff-edit-button{margin:0}
.staff-empty{display:flex;flex-direction:column;align-items:center;padding:60px;border:1px dashed #ccc;border-radius:8px;background:#fff}.staff-empty strong{font-size:15px}.staff-empty span{margin-top:4px;color:#888;font-size:10px}
@media(max-width:1050px){
  .staff-summary{grid-template-columns:repeat(2,1fr)}
  .staff-controls>span{margin-left:0}
  .staff-list-head{display:none}.staff-row{grid-template-columns:1.2fr 72px .8fr 1fr auto}.staff-row>div:nth-child(5),.staff-row>div:nth-child(6){display:block}.staff-row>div:nth-child(7){grid-column:1/5}.staff-row>div:nth-child(9){grid-column:5;grid-row:1}
  .staff-date small{display:block}
}
@media(max-width:650px){
  .staff-summary{grid-template-columns:1fr 1fr}.staff-controls label,.staff-controls label.staff-search{flex-basis:100%}
  .staff-row{grid-template-columns:1fr auto;padding:16px}.staff-row>div:nth-child(2),.staff-row>div:nth-child(3),.staff-row>div:nth-child(4),.staff-row>div:nth-child(5),.staff-row>div:nth-child(6),.staff-row>div:nth-child(7){grid-column:1/-1}.staff-row>div:nth-child(8){grid-column:1}.staff-row>div:nth-child(9){grid-column:2;grid-row:1}.qualification-popover>div{left:0;right:auto;width:min(270px,75vw)}
}
.staff-editor-modal{width:min(920px,calc(100% - 30px));max-height:92vh;border-radius:12px;background:#f4f3ef}
.staff-editor-modal form{padding:0}
.staff-editor-head{align-items:flex-start;padding:24px 28px 18px;border-bottom:1px solid #deddd8;background:#fff}
.staff-editor-head h2{margin-bottom:5px}.staff-editor-head p{margin:0;color:#888;font-size:11px}
.staff-editor-head .close-modal{width:38px;height:38px;border-radius:50%;background:#f3f2ee;color:#555;line-height:1}
.staff-editor-identity{display:flex;align-items:center;gap:13px;padding:14px 28px;border-bottom:1px solid #deddd8;background:#faf9f6}
.staff-editor-identity>span{width:42px;height:42px;border-radius:50%;display:grid;place-items:center;background:#171818;color:#c4c9c6;font-size:10px;font-weight:800}
.staff-editor-identity div{display:flex;flex-direction:column}.staff-editor-identity strong{font-size:13px}.staff-editor-identity small{color:#888;font-size:9px}
.staff-editor-body{display:grid;grid-template-columns:1fr 1fr;gap:14px;max-height:58vh;overflow:auto;padding:18px 28px}
.staff-editor-body fieldset{min-width:0;margin:0;padding:18px;border:1px solid #deddd8;border-radius:8px;background:#fff}
.staff-editor-body legend{display:flex;align-items:center;gap:8px;padding:0 6px;color:#444;font-size:9px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
.staff-editor-body legend b{width:23px;height:23px;border-radius:50%;display:grid;place-items:center;background:#111;color:#c4c9c6;font-size:7px}
.staff-editor-body .form-grid{gap:0 12px}
.staff-editor-body label{gap:6px;margin-bottom:13px;color:#777;font-size:8px}
.staff-editor-body input,.staff-editor-body select{width:100%;height:41px;border:1px solid #d7d6d1;border-radius:5px;background:#fafaf8;padding:0 10px;color:#222;outline:none}
.staff-editor-body input:focus,.staff-editor-body select:focus{border-color:#a98432;box-shadow:0 0 0 3px rgba(201,168,93,.14)}
.staff-editor-body input[readonly]{background:#efeee9;color:#777;font-weight:800}
.staff-qualification-section{grid-column:1/-1}.staff-qualification-section>label{display:flex}
.staff-editor-body .staff-account-fields{display:block;grid-column:1/-1}.staff-editor-body .staff-account-fields[hidden]{display:none!important}
.staff-editor-body .checkbox{min-height:38px;margin:0 0 12px;padding:9px 11px;border:1px solid #ddd;border-radius:5px;background:#f7f6f2}
.staff-editor-body .checkbox input{width:auto;height:auto}
.staff-editor-modal .course-tag-picker{margin:0}.staff-editor-modal .course-tag-picker button{padding:7px 10px}
.function-tag-editor{padding:13px;border:1px solid #dedbd2;border-radius:8px;background:#faf9f6}.function-tag-editor>span{display:block;margin-bottom:9px;color:#777;font-size:8px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.function-tag-editor>small{display:block;margin-top:9px;color:#85817a;font-size:9px}.function-tag-picker{display:flex;flex-wrap:wrap;gap:6px}.function-tag-picker button{border:1px solid #d8d5cc;border-radius:16px;background:#fff;padding:7px 10px;color:#555;font-size:9px;cursor:pointer}.function-tag-picker button:hover{border-color:#b28e3a}.function-tag-picker button.selected{border-color:#a77d22;background:#f6edd6;color:#705313;font-weight:800}.staff-functions b{display:block;line-height:1.25}.staff-functions small{display:block;margin-top:4px;color:#85817a}.function-profile-tags span{border-color:#d9c181;background:#fff8e5;color:#705313}
.staff-editor-modal .modal-actions{position:sticky;bottom:0;margin:0;padding:16px 28px;border-top:1px solid #deddd8;background:#fff}
@media(max-width:720px){
  .staff-editor-modal{width:calc(100% - 16px);max-height:96vh}
  .staff-editor-head,.staff-editor-identity,.staff-editor-body,.staff-editor-modal .modal-actions{padding-left:18px;padding-right:18px}
  .staff-editor-body{grid-template-columns:1fr;max-height:65vh}.staff-qualification-section{grid-column:auto}
}

.courses-toolbar{align-items:flex-end}.courses-toolbar h2{margin-bottom:5px}.courses-toolbar p{margin:0;color:#777;font-size:12px}
.course-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:14px}
.course-summary article{padding:18px 20px;border:1px solid #ddd;border-radius:8px;background:#fff}
.course-summary span{display:block;color:#888;font-size:8px;font-weight:800;letter-spacing:.1em}
.course-summary strong{display:block;margin:5px 0 1px;font:500 30px "Helvetica Neue",Arial,sans-serif}.course-summary small{color:#888;font-size:9px}
.course-controls{display:grid;grid-template-columns:minmax(260px,1fr) 200px 170px auto;align-items:end;gap:12px;margin-bottom:14px;padding:14px 16px;border-radius:8px}
.course-controls label{display:flex;flex-direction:column;gap:6px;color:#777;font-size:8px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
.course-controls input,.course-controls select{height:40px;border:1px solid #d6d5d0;border-radius:5px;background:#fafaf8;padding:0 11px;color:#222}.course-controls>span{align-self:center;justify-self:end;color:#777;font-size:10px;white-space:nowrap}
.course-catalog{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.course-card{display:flex;flex-direction:column;min-height:245px;overflow:hidden;padding:0;border:1px solid #ddd;border-radius:9px;background:#fff}.course-card.inactive{opacity:.68}
.course-card>header{display:flex;align-items:center;justify-content:space-between;padding:20px 20px 0}.course-card>header span{padding:5px 7px;border-radius:4px;background:#111;color:#c4c9c6;font-size:8px;font-weight:800;letter-spacing:.06em}.course-card>header em{padding:4px 7px;border-radius:4px;background:#edf7ef;color:#28723d;font-size:8px;font-style:normal;font-weight:800}.course-card.inactive>header em{background:#f1eeee;color:#805050}
.course-card h3{margin:17px 20px 7px;font:600 18px/1.25 "Helvetica Neue",Arial,sans-serif}.course-card>p{margin:0;padding:0 20px 20px;color:#777;font-size:11px;line-height:1.55}
.course-card>footer{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto;align-items:center;gap:12px;margin-top:auto;padding:15px 20px 18px;border-top:1px solid #eee;background:#faf9f6}.course-card>footer div{min-width:0}.course-card>footer small{display:block;color:#999;font-size:7px;text-transform:uppercase}.course-card>footer b{display:block;overflow:hidden;margin-top:3px;font-size:9px;line-height:1.35;text-overflow:ellipsis;white-space:normal}
.course-edit-button{border:1px solid #ccc;border-radius:5px;background:#fff;padding:8px 10px;color:#333;font-size:8px;font-weight:800;text-transform:uppercase;cursor:pointer}.course-edit-button:hover{border-color:#111;background:#111;color:#fff}
.function-edit-button{display:inline-flex;align-items:center;justify-content:center;justify-self:end;min-width:82px;min-height:36px;border:1px solid #1b1d19;border-radius:6px;background:#1b1d19;padding:9px 14px;color:#fff;font-size:8px;font-weight:900;letter-spacing:.07em;text-transform:uppercase;cursor:pointer;box-shadow:0 4px 10px rgba(18,19,16,.12);transition:border-color .18s ease,background .18s ease,color .18s ease,transform .18s ease,box-shadow .18s ease}.function-edit-button:hover{border-color:#c69a32;background:#c69a32;color:#171812;transform:translateY(-1px);box-shadow:0 7px 15px rgba(104,79,22,.2)}.function-edit-button:focus-visible{outline:3px solid rgba(198,154,50,.3);outline-offset:2px}.function-edit-button:active{transform:translateY(0)}
.course-editor-modal{width:min(720px,calc(100% - 30px));border-radius:11px}.course-editor-modal form{padding:0}.course-editor-head{padding:24px 28px 18px;border-bottom:1px solid #ddd}.course-editor-head h2{margin-bottom:5px}.course-editor-head p{margin:0;color:#888;font-size:11px}
.course-editor-body{display:grid;grid-template-columns:1fr 1fr;gap:0 14px;padding:22px 28px}.course-editor-body label{gap:6px;margin-bottom:15px;color:#777;font-size:8px}.course-editor-body input,.course-editor-body select,.course-editor-body textarea{width:100%;border:1px solid #d7d6d1;border-radius:5px;background:#fafaf8;padding:11px;color:#222;outline:none}.course-editor-body input,.course-editor-body select{height:42px}.course-editor-body textarea{min-height:95px;resize:vertical}.course-editor-body label>small{color:#999;font-size:8px;text-transform:none;letter-spacing:0}
.course-active-field{align-self:end;height:42px;display:flex!important;flex-direction:row!important;align-items:center;padding:10px 12px;border:1px solid #d7d6d1;border-radius:5px;background:#f5f4f0;text-transform:none!important;letter-spacing:0!important}.course-active-field input{width:auto;height:auto}.course-editor-modal .modal-actions{margin:0;padding:16px 28px;border-top:1px solid #ddd}
.course-modal-actions>span{flex:1}.danger-action{border:1px solid #d8aaaa;border-radius:5px;background:#fff5f5;padding:10px 13px;color:#9a3232;font-size:9px;font-weight:800;letter-spacing:.05em;text-transform:uppercase;cursor:pointer}.danger-action:hover{border-color:#9a3232;background:#9a3232;color:#fff}
#assistant4Field[hidden]{display:none!important}
@media(max-width:900px){.course-summary{grid-template-columns:repeat(2,1fr)}.course-controls{grid-template-columns:1fr 1fr}.course-controls label:first-child{grid-column:1/-1}.course-controls>span{justify-self:start}}
@media(max-width:650px){.course-catalog,.course-controls,.course-editor-body{grid-template-columns:1fr}.course-controls label:first-child{grid-column:auto}.course-card>footer{grid-template-columns:1fr 1fr}.course-edit-button,.function-edit-button{grid-column:1/-1;justify-self:stretch;width:100%}.course-summary{grid-template-columns:1fr 1fr}}
@media(max-width:1180px){
  .service-report-layout{grid-template-columns:1fr}
  .service-report-sidebar{position:static;grid-template-columns:1fr 1fr}
  .report-preview-card pre,.report-history-list{max-height:360px}
}
@media(max-width:760px){
  .report-toolbar{align-items:flex-start}
  .report-toolbar-actions{align-items:flex-start}
  .service-report-form fieldset:first-child .form-grid,.service-report-form .form-grid{grid-template-columns:1fr}
  .activity-grid,.equipment-grid,.quantity-summary{grid-template-columns:repeat(2,minmax(0,1fr))}
  .service-report-sidebar{grid-template-columns:1fr}
  .fieldset-heading{flex-direction:column;align-items:flex-start}
  .report-submit{align-items:stretch;flex-direction:column}
  .report-submit .btn{width:100%}
}

/* Interface operacional 2026 */
:root{
  --ui-bg:#f4f4f1;
  --ui-surface:#fff;
  --ui-surface-soft:#f8f8f5;
  --ui-ink:#191a18;
  --ui-muted:#72736f;
  --ui-line:#dfdfd9;
  --ui-accent:#747b77;
  --ui-accent-soft:#f1ead9;
  --ui-sidebar:#121312;
}
.system-page{background:var(--ui-bg);color:var(--ui-ink);font-family:Inter,"Helvetica Neue",Arial,sans-serif}
.login-screen{min-height:100vh;grid-template-columns:minmax(340px,42%) 1fr;background:var(--ui-bg)}
.login-visual{position:relative;min-height:100vh;padding:48px clamp(36px,6vw,90px);background:var(--ui-sidebar)}
.login-copy{max-width:520px}.login-copy img{width:70px;height:auto;margin-bottom:38px;filter:grayscale(1) brightness(1.25)}
.login-copy .eyebrow{color:#b8bdbb}.login-copy h1{max-width:480px;margin:14px 0 20px;font-size:clamp(42px,5vw,70px);font-weight:500;line-height:.98;letter-spacing:-.055em}
.login-copy p{max-width:430px;color:#a8aaa6;font-size:14px;line-height:1.7}
.back-home{color:#8d8f8b}
.login-panel{display:grid;place-items:center;padding:40px}
.login-form{width:min(420px,100%);padding:38px;border:1px solid var(--ui-line);border-radius:16px;background:var(--ui-surface);box-shadow:0 18px 55px rgba(24,24,20,.06)}
.login-title{margin-bottom:28px}.login-title span{color:var(--ui-accent)}.login-title h2{margin:7px 0 8px;font-size:30px;font-weight:550;letter-spacing:-.035em}.login-title p{color:var(--ui-muted)}
.login-form>label:not(.remember-access){gap:8px;margin-bottom:17px;color:#5f605d;font-size:9px;letter-spacing:.1em;text-transform:uppercase}
.login-form input[type=text],.login-form input[type=password]{height:50px;border:1px solid var(--ui-line);border-radius:8px;background:#fbfbf9;padding:0 14px;font-size:14px;outline:none}
.login-form input:focus{border-color:var(--ui-accent);box-shadow:0 0 0 3px var(--ui-accent-soft)}
.remember-access{display:flex!important;align-items:flex-start;gap:10px;margin:4px 0 22px!important;color:var(--ui-ink)!important;letter-spacing:0!important;text-transform:none!important;cursor:pointer}
.remember-access input{width:17px;height:17px;margin-top:2px;accent-color:var(--ui-accent)}
.remember-access span{display:grid;gap:3px}.remember-access strong{font-size:12px}.remember-access small{color:var(--ui-muted);font-size:10px;line-height:1.4}
.login-form .btn{height:50px;border-radius:8px;background:var(--ui-ink);letter-spacing:.07em}.login-form .btn:hover{background:#2b2d2a}

.dashboard{grid-template-columns:224px minmax(0,1fr);background:var(--ui-bg)}
.sidebar{padding:20px 12px;background:var(--ui-sidebar)}
.sidebar-brand{margin:0 4px 14px;padding:5px 8px 22px;border-bottom:1px solid #292a29}.sidebar-brand img{width:34px}.sidebar-brand strong{font-size:16px}.sidebar-brand small{color:#747672}
.side-nav{gap:3px}.side-nav-label{display:block;padding:14px 13px 7px;color:#5f615e;font-size:7px;font-weight:800;letter-spacing:.15em;text-transform:uppercase}
.side-nav-admin-label{margin-top:9px;border-top:1px solid #292a29;padding-top:18px}
.side-nav button{position:relative;display:flex;align-items:center;gap:12px;min-height:46px;border:0!important;border-radius:8px;padding:0 12px;color:#9b9d99;font-size:11px;font-weight:500;transition:background .15s,color .15s}
.side-nav button .nav-icon{display:grid;width:19px;height:19px;flex:0 0 19px;place-items:center;color:#6e706c}
.side-nav button .nav-icon svg{width:18px;height:18px;fill:currentColor}
.side-nav button .nav-text{min-width:0;flex:1;text-align:left}
.side-nav button.active,.side-nav button:hover{background:#202220;color:#fff}
.side-nav button.active:before{position:absolute;left:0;width:3px;height:20px;border-radius:0 4px 4px 0;background:#858c88;content:""}
.side-nav button.active .nav-icon{color:#d2b264}.side-nav button:hover .nav-icon{color:#c2c4bf}
.nav-badge{margin-left:auto;background:#b98b34;color:#fff}.sidebar-foot{margin:0 4px;padding:18px 8px 2px;border-top:1px solid #292a29}
.dashboard-main{min-width:0;background:var(--ui-bg)}
.dashboard-header{height:74px;padding:0 clamp(18px,2.5vw,38px);border-bottom:1px solid var(--ui-line);background:rgba(255,255,255,.94);backdrop-filter:blur(12px)}
.dashboard-header h1{font-size:23px}.dashboard-header>div:first-of-type small{color:#858681;font-size:8px}
.user-box{gap:12px}.user-box>span{background:var(--ui-ink);color:#d7b867}.user-box button{border-radius:7px;background:transparent}.user-box button:hover{background:#f0efe9}
.dashboard-view{max-width:1600px;margin:0 auto;padding:28px clamp(18px,2.5vw,38px) 50px}
.view-toolbar{margin-bottom:22px}.view-toolbar>div:first-child>span,.panel-head span{color:var(--ui-accent);font-size:8px;letter-spacing:.14em}.view-toolbar h2{margin:7px 0 5px;font-size:27px;font-weight:540;letter-spacing:-.035em}.view-toolbar p{color:var(--ui-muted)}
.panel,.metric-grid article,.staff-summary article,.course-summary article{border:1px solid var(--ui-line);border-radius:10px;background:var(--ui-surface);box-shadow:none}
.metric-grid{gap:12px}.metric-grid article{padding:21px}.metric-grid article strong{font-size:31px}.metric-grid article span{color:#777873}
.overview-actions{gap:10px}.overview-actions button{border:1px solid var(--ui-line);border-radius:10px;background:var(--ui-surface)}.overview-actions button:hover{border-color:#c8b583;transform:none}
.btn,.small-btn,.inline-action,.staff-controls button{border-radius:7px}.btn-primary{background:var(--ui-ink);color:#fff}.btn-primary:hover{background:#2b2d2a}
input,select,textarea{font-family:inherit}.staff-controls,.course-controls{border-color:var(--ui-line);border-radius:10px;background:var(--ui-surface)}
.staff-controls input,.staff-controls select,.course-controls input,.course-controls select,.service-report-form input,.service-report-form select,.service-report-form textarea{border-color:var(--ui-line);border-radius:7px;background:#fcfcfa}
.staff-controls input:focus,.staff-controls select:focus,.course-controls input:focus,.course-controls select:focus,.service-report-form input:focus,.service-report-form select:focus,.service-report-form textarea:focus{border-color:var(--ui-accent);box-shadow:0 0 0 3px var(--ui-accent-soft)}
.staff-group,.staff-card,.course-card{border-color:var(--ui-line);border-radius:10px}
.table-wrap{border-radius:8px}table th{color:#858681;background:#f7f7f3}table td{border-color:#ecece7}

.report-toolbar{align-items:center}.report-toolbar-actions{align-items:flex-end;gap:9px}.report-view-switch{display:flex;padding:3px;border:1px solid var(--ui-line);border-radius:9px;background:var(--ui-surface)}
.report-view-switch button{height:34px;border:0;border-radius:6px;background:transparent;padding:0 15px;color:var(--ui-muted);font-size:9px;font-weight:800;letter-spacing:.05em;text-transform:uppercase;cursor:pointer}
.report-view-switch button.active{background:var(--ui-ink);color:#fff}.report-draft-actions{display:flex;align-items:center;justify-content:flex-end;gap:10px}
.report-draft-actions small{color:var(--ui-muted);font-size:9px}
.service-report-form fieldset,.service-report-form fieldset:first-child{border:1px solid var(--ui-line);border-radius:11px;background:var(--ui-surface);padding:23px}
.service-report-form legend{padding:0 8px;color:var(--ui-ink)}.service-report-form legend b{background:var(--ui-accent-soft);color:#8b6823}
.service-report-sidebar .panel{border-color:var(--ui-line);background:var(--ui-surface)}
.rso-central-mode .report-progress,.rso-central-mode .report-revision-notice,.rso-central-mode .service-report-form,.rso-central-mode .report-draft-actions{display:none!important}
.rso-central-mode .service-report-layout{display:block}.rso-central-mode .service-report-sidebar{position:static;display:block}
.rso-central-mode .service-report-sidebar>.report-preview-card{display:none}
.rso-central-mode .service-report-history{width:100%;min-height:520px}
.rso-central-mode .report-history-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;max-height:none;margin-top:14px;padding:0}
.rso-central-mode .report-history-list article{border:1px solid var(--ui-line);border-radius:9px;background:#fcfcfa;padding:16px}
.rso-form-mode .service-report-layout{display:block}.rso-form-mode .service-report-form{max-width:1050px;margin:0 auto}.rso-form-mode .service-report-sidebar{display:none}
.rso-live-bar{order:-1;display:flex;align-items:center;justify-content:space-between;gap:18px;padding:14px 16px;border:1px solid #d9d6cd;border-radius:8px;background:#171716;color:#fff}
.rso-live-bar>div:first-child{display:grid;grid-template-columns:auto auto;align-items:center;gap:2px 8px}.rso-live-bar strong{font-size:12px}.rso-live-bar small{grid-column:2;color:#aaa;font-size:9px}
.live-dot{grid-row:1/3;width:8px;height:8px;border-radius:50%;background:#35c86f;box-shadow:0 0 0 5px rgba(53,200,111,.12)}
.rso-live-actions{display:flex;gap:7px}.rso-live-actions button{min-height:34px;padding:0 11px;border:1px solid #454541;border-radius:5px;background:#252523;color:#eee;font-size:10px;font-weight:700;cursor:pointer}.rso-live-actions button:hover{border-color:#c3a14a;color:#fff}.rso-live-actions button:last-child{background:#f5f1e6;color:#554316}
.service-report-form fieldset>legend{width:100%;cursor:pointer;user-select:none}.service-report-form fieldset>legend::after{content:"−";float:right;margin-left:12px;color:#8a8579;font-size:15px;font-weight:500}.service-report-form fieldset.rso-section-collapsed>legend::after{content:"+"}
.service-report-form fieldset.rso-section-collapsed>*:not(legend){display:none!important}.service-report-form fieldset.rso-section-collapsed{padding-bottom:12px;background:#faf9f6}.service-report-form fieldset.rso-section-relevant{border-color:#b89642;box-shadow:inset 3px 0 #b89642}.service-report-form fieldset.rso-section-relevant>legend::before{content:"PREENCHER";float:right;margin:1px 26px 0 0;padding:3px 7px;border-radius:999px;background:#f1e6c8;color:#745816;font-size:7px;letter-spacing:.08em}
.number-stepper{display:grid;grid-template-columns:32px minmax(45px,1fr) 32px;align-items:stretch;overflow:hidden;border:1px solid #ddd;border-radius:6px;background:#fff}.number-stepper input{width:100%;border:0!important;border-radius:0!important;box-shadow:none!important}.number-stepper button{border:0;background:#f0eee8;color:#282722;font-size:17px;cursor:pointer}.number-stepper button:active{background:#dfd8c7}
@media(max-width:700px){.rso-live-bar{position:sticky;top:8px;z-index:15;align-items:flex-start;flex-direction:column}.rso-live-actions{width:100%}.rso-live-actions button{flex:1;padding:0 7px}.service-report-form{padding:10px}.service-report-form fieldset{padding-left:12px;padding-right:12px}}

/* Movimento e resposta visual */
@keyframes viewReveal{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}
@keyframes panelReveal{from{opacity:0;transform:translateY(8px) scale(.995)}to{opacity:1;transform:translateY(0) scale(1)}}
@keyframes modalReveal{from{opacity:0;transform:translateY(16px) scale(.975)}to{opacity:1;transform:translateY(0) scale(1)}}
@keyframes waveExpand{from{width:0;height:0;opacity:.26}to{width:360px;height:360px;opacity:0}}
@keyframes markerPulse{0%,100%{box-shadow:0 0 0 4px rgba(190,45,45,.22),0 4px 12px rgba(0,0,0,.28)}50%{box-shadow:0 0 0 11px rgba(190,45,45,0),0 5px 16px rgba(0,0,0,.35)}}
@keyframes statusPulse{0%,100%{opacity:1;transform:scale(1)}50%{opacity:.65;transform:scale(.84)}}
.dashboard-view.view-entering.active{animation:viewReveal .34s cubic-bezier(.22,.8,.25,1) both}
.dashboard-view.view-entering.active>.view-toolbar{animation:panelReveal .36s .03s cubic-bezier(.22,.8,.25,1) both}
.dashboard-view.view-entering.active>.metric-grid,.dashboard-view.view-entering.active>.overview-actions,.dashboard-view.view-entering.active>.overview-grid,.dashboard-view.view-entering.active>.service-report-layout,.dashboard-view.view-entering.active>.staff-table-wrap,.dashboard-view.view-entering.active>.course-catalog,.dashboard-view.view-entering.active>.statistics-grid,.dashboard-view.view-entering.active>.map-layout{animation:panelReveal .42s .08s cubic-bezier(.22,.8,.25,1) both}
.side-nav button{overflow:hidden;will-change:transform}.side-nav button:hover{transform:translateX(3px)}.side-nav button:active{transform:translateX(2px) scale(.985)}
.side-nav button.active:before{animation:panelReveal .24s ease-out both}.side-nav button .nav-icon{transition:color .2s,transform .2s}.side-nav button:hover .nav-icon{transform:scale(1.1)}
button,.btn{position:relative;overflow:hidden;isolation:isolate;transition:background-color .18s,border-color .18s,color .18s,transform .16s,box-shadow .18s}
button:active,.btn:active{transform:scale(.975)}
.interaction-wave{position:absolute;z-index:0;border-radius:50%;background:currentColor;pointer-events:none;transform:translate(-50%,-50%);animation:waveExpand .52s ease-out forwards}
.panel,.metric-grid article,.staff-summary article,.course-summary article,.overview-actions button{transition:transform .2s cubic-bezier(.22,.8,.25,1),border-color .2s,box-shadow .2s}
.metric-grid article:hover,.staff-summary article:hover,.course-summary article:hover,.overview-actions button:hover{transform:translateY(-3px);border-color:#c9b57f;box-shadow:0 10px 24px rgba(31,29,23,.07)}
.staff-row td,.participant-ranking tr td{transition:background-color .18s}.staff-row:hover td,.participant-ranking tr:hover td{background:#faf7ee}
input,select,textarea{transition:border-color .18s,box-shadow .18s,background-color .18s}
input:focus,select:focus,textarea:focus{box-shadow:0 2px 0 rgba(174,137,51,.28)}
.report-progress>span,.bar-track i{transition:width .5s cubic-bezier(.22,.8,.25,1)}
.activity-toggle span{transition:border-color .2s,background-color .2s,color .2s,transform .16s}.activity-toggle input:checked+span{transform:translateY(-2px);box-shadow:0 7px 16px rgba(35,105,57,.09)}
.live-dot{animation:statusPulse 1.8s ease-in-out infinite}
#rsoMapMarker,.operational-point{animation:markerPulse 2s ease-in-out infinite}
dialog[open]{animation:modalReveal .26s cubic-bezier(.22,.8,.25,1) both}dialog::backdrop{transition:background .25s,backdrop-filter .25s}
#toast.show{animation:modalReveal .25s cubic-bezier(.22,.8,.25,1) both}
.nav-badge{animation:statusPulse 2s ease-in-out infinite}
.rso-section-relevant{animation:panelReveal .3s ease-out both}
@media(prefers-reduced-motion:reduce){
  *,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}
  .interaction-wave{display:none}
}
.crew-change-box{margin-top:5px;padding-top:16px;border-top:1px dashed #d7d4cb}
.crew-change-head{display:flex;align-items:center;justify-content:space-between;gap:14px}.crew-change-head>div{display:grid;gap:3px}.crew-change-head strong{font-size:10px}.crew-change-head small{color:#858179;font-size:9px}
.crew-change-head button,.crew-change-editor>button{min-height:34px;border:1px solid #222;border-radius:5px;background:#222;padding:0 11px;color:#fff;font-size:8px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;cursor:pointer}
.crew-change-editor{display:grid;grid-template-columns:1fr 1fr 120px 1fr auto;align-items:end;gap:8px;margin-top:13px;padding:13px;border-radius:7px;background:#f4f2ec}.crew-change-editor[hidden]{display:none}.crew-change-editor label{margin:0!important}.crew-change-editor input,.crew-change-editor select{min-width:0;height:38px;border:1px solid #d3d0c7!important;border-radius:5px!important;background:#fff!important;padding:0 9px!important}
.crew-change-list{display:grid;gap:6px;margin-top:10px}.crew-change-list>p{margin:0;color:#949087;font-size:9px}.crew-change-list article{display:grid;grid-template-columns:1fr auto;align-items:center;gap:3px 10px;padding:10px 12px;border:1px solid #dfdcd4;border-radius:6px;background:#fff}.crew-change-list article span{display:flex;align-items:center;gap:8px;font-size:10px}.crew-change-list article i{color:#a17e2d;font-style:normal}.crew-change-list article small{color:#7f7b72;font-size:8px}.crew-change-list article button{grid-column:2;grid-row:1/3;width:27px;height:27px;border:0;border-radius:50%;background:#f3eeeb;color:#8c3d35;font-size:15px;cursor:pointer}
@media(max-width:900px){.crew-change-editor{grid-template-columns:1fr 1fr}.crew-change-editor>button{min-height:38px}.crew-change-head{align-items:flex-start;flex-direction:column}}
.map-annotation-toolbar{display:flex;align-items:center;gap:14px;margin-bottom:14px;padding:13px 16px}.map-annotation-toolbar>div:first-child{display:grid;gap:2px;min-width:180px}.map-annotation-toolbar strong{font-size:10px}.map-annotation-toolbar small{color:var(--ui-muted);font-size:8px}.map-annotation-toolbar>div:nth-child(2){display:flex;flex:1;flex-wrap:wrap;gap:5px}.map-annotation-toolbar button{min-height:31px;border:1px solid var(--ui-line);border-radius:5px;background:#fff;padding:0 9px;font-size:8px;font-weight:700;cursor:pointer}.map-annotation-toolbar button.active,.map-annotation-toolbar>button:last-child{border-color:#222;background:#222;color:#fff}.map-annotation-toolbar button i{display:inline-block;width:7px;height:7px;margin-right:5px;border-radius:50%}
#mapAnnotationLayer{position:absolute;inset:0;width:100%;height:100%;overflow:visible;pointer-events:none}.map-note-area{fill:var(--note-color);fill-opacity:.25;stroke:var(--note-color);stroke-width:4;vector-effect:non-scaling-stroke;pointer-events:visiblePainted}.map-note-area.pending{stroke-dasharray:8 6}.map-note-point{color:var(--note-color);pointer-events:visiblePainted}.map-note-point circle:first-child{fill:var(--note-color);fill-opacity:.22;stroke:var(--note-color);stroke-width:3;vector-effect:non-scaling-stroke}.map-note-point circle:nth-child(2){fill:var(--note-color)}.map-note-point text{fill:#171717;paint-order:stroke;stroke:#fff;stroke-width:5px;font-size:18px;font-weight:800;text-anchor:middle;vector-effect:non-scaling-stroke}.map-note-point.pending{opacity:.58}.map-note-draft{fill:rgba(185,145,61,.16);stroke:#858c88;stroke-width:4;stroke-dasharray:10 7;vector-effect:non-scaling-stroke}.map-note-draft-point{fill:#858c88;stroke:#fff;stroke-width:3;vector-effect:non-scaling-stroke}.annotation-drawing{cursor:crosshair!important}.annotation-drawing .operational-map-stage{cursor:crosshair!important}
.annotation-list-head{display:flex;justify-content:space-between;margin-top:20px;padding-top:16px;border-top:1px solid var(--ui-line)}.annotation-list-head strong{font-size:10px}.annotation-list-head span{color:#956d1f;font-size:8px}.map-annotation-list{display:grid;margin-top:7px}.map-annotation-list>p{color:var(--ui-muted);font-size:9px}.map-annotation-list article{display:grid;grid-template-columns:8px 1fr auto;align-items:center;gap:9px;padding:10px 0;border-bottom:1px solid #eee}.map-annotation-list article>i{width:8px;height:24px;border-radius:5px}.map-annotation-list article div{display:grid;gap:3px}.map-annotation-list article strong{font-size:9px}.map-annotation-list article small{color:var(--ui-muted);font-size:7px}.map-annotation-list article span{display:flex;gap:4px}.map-annotation-list article button{min-height:25px;border:1px solid #d3d0c8;border-radius:4px;background:#fff;padding:0 7px;font-size:7px;cursor:pointer}
.map-annotation-modal{width:min(720px,calc(100% - 24px))}.map-annotation-modal form{padding:24px}.map-annotation-modal .form-grid{margin-top:18px}.map-annotation-modal label{display:grid;gap:6px;color:#666;font-size:8px;font-weight:800;text-transform:uppercase}.map-annotation-modal input,.map-annotation-modal select,.map-annotation-modal textarea{border:1px solid #d5d2ca;border-radius:5px;background:#fff;padding:10px}.map-annotation-modal textarea{min-height:85px;resize:vertical}.annotation-draw-status{margin-top:12px;padding:11px;border-left:3px solid #858c88;background:#f3f5f4;color:#6f6243;font-size:9px}.map-annotation-modal .modal-actions{padding:16px 0 0}
@media(max-width:800px){.map-annotation-toolbar{align-items:flex-start;flex-direction:column}.map-annotation-toolbar>div:nth-child(2){width:100%}.map-annotation-modal .form-grid{grid-template-columns:1fr}.map-annotation-modal .span-2{grid-column:auto}}

/* Novo fluxo guiado do RSO */
.rso-wizard-steps{order:0;display:grid;grid-template-columns:repeat(4,1fr);overflow:hidden;border:1px solid #dcd9d1;border-radius:10px;background:#fff}.rso-wizard-steps button{display:grid;grid-template-columns:34px 1fr;grid-template-rows:auto auto;align-items:center;gap:1px 9px;min-height:66px;border:0;border-right:1px solid #e7e4dc;background:#fff;padding:10px 14px;color:#777;text-align:left;cursor:pointer}.rso-wizard-steps button:last-child{border-right:0}.rso-wizard-steps button>span{grid-row:1/3;display:grid;width:30px;height:30px;border-radius:50%;background:#efede7;place-items:center;color:#777;font-size:10px;font-weight:800}.rso-wizard-steps button b{align-self:end;color:#4e4d48;font-size:10px}.rso-wizard-steps button small{align-self:start;color:#999;font-size:8px}.rso-wizard-steps button.active{background:#171716;color:#fff}.rso-wizard-steps button.active>span{background:#c6a24c;color:#171716}.rso-wizard-steps button.active b{color:#fff}.rso-wizard-steps button.done>span{background:#e5f3e9;color:#277242}.rso-wizard-steps button.done>span:after{content:"✓"}.rso-wizard-steps button.done>span{font-size:0}.rso-wizard-steps button.done>span:after{font-size:11px}
.service-report-form [data-wizard-step][hidden]{display:none!important}.service-report-form fieldset[data-wizard-step]:not([hidden]),.rso-review-panel:not([hidden]){animation:panelReveal .28s cubic-bezier(.22,.8,.25,1) both}.service-report-form fieldset>legend{cursor:default}.service-report-form fieldset>legend:after,.service-report-form fieldset.rso-section-relevant>legend:before{display:none!important}.service-report-form fieldset.rso-section-collapsed>*:not(legend){display:initial!important}.service-report-form fieldset.rso-section-collapsed{padding:24px;background:#fff}
.rso-conditional-detail[hidden]{display:none!important}.rso-context-note{margin:-4px 0 14px!important;padding:9px 11px;border-left:2px solid #b78b28;background:#f7f4eb;color:#6f695c;font-size:10px!important}.report-section-narrative label>small{color:#8c877d;font-size:9px;font-weight:500;text-transform:none;letter-spacing:0}
.rso-review-panel{order:7;padding:24px;border:1px solid #dedbd3;border-radius:10px;background:#fff}.rso-review-panel .panel-head em{padding:6px 9px;border-radius:999px;background:#fff1df;color:#8a5b18;font-size:8px;font-style:normal;font-weight:800}.rso-review-panel .panel-head em.ready{background:#e8f5ec;color:#267241}.rso-review-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:9px;margin-top:18px}.rso-review-grid article{padding:14px;border:1px solid #e5e2da;border-radius:7px;background:#faf9f6}.rso-review-grid span,.rso-review-grid strong{display:block}.rso-review-grid span{margin-bottom:5px;color:#8a867d;font-size:7px;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.rso-review-grid strong{font-size:10px;line-height:1.5}.rso-review-alerts{margin-top:12px;padding:14px;border-left:3px solid #d39936;background:#fff8e9}.rso-review-alerts strong{font-size:10px;color:#805716}.rso-review-alerts strong.ready{color:#277242}.rso-review-alerts p{margin:6px 0 0;color:#6f6b62;font-size:9px}
.rso-submission-blockers{margin-top:16px;overflow:hidden;border:1px solid #dca29d;border-radius:10px;background:#fff9f8;box-shadow:0 12px 28px rgba(118,38,31,.09)}.rso-submission-blockers[hidden]{display:none!important}.rso-submission-blockers-head{display:grid;grid-template-columns:34px 1fr auto;align-items:center;gap:11px;padding:15px 16px;border-bottom:1px solid #efd4d1;background:#fff0ee}.rso-submission-blockers-head>span{display:grid;width:32px;height:32px;border-radius:50%;background:#a6433c;color:#fff;font-size:15px;font-weight:900;place-items:center}.rso-submission-blockers-head div{display:grid;gap:3px}.rso-submission-blockers-head strong{color:#792f2a;font-size:11px}.rso-submission-blockers-head p{margin:0;color:#8c625e;font-size:8px;line-height:1.5}.rso-submission-blockers-head>b{padding:6px 9px;border-radius:999px;background:#a6433c;color:#fff;font-size:8px;white-space:nowrap}.rso-submission-blockers ol{display:grid;gap:7px;margin:0;padding:12px;list-style:none}.rso-submission-blockers li button{display:grid;width:100%;grid-template-columns:30px 1fr auto;align-items:center;gap:10px;min-height:46px;border:1px solid #ecd4d1;border-radius:7px;background:#fff;padding:7px 11px;color:#33211f;text-align:left;cursor:pointer;transition:border-color .16s,transform .16s,box-shadow .16s}.rso-submission-blockers li button:hover{border-color:#b95a52;box-shadow:0 5px 14px rgba(118,38,31,.09);transform:translateY(-1px)}.rso-submission-blockers li button>span{display:grid;width:27px;height:27px;border-radius:50%;background:#f8e5e2;color:#963d36;font-size:8px;font-weight:900;place-items:center}.rso-submission-blockers li button>b{font-size:9px;line-height:1.45}.rso-submission-blockers li button>small{color:#983f38;font-size:8px;font-weight:800;white-space:nowrap}
.service-report-form .report-submit{order:8;align-items:center;justify-content:space-between;padding:18px 20px;border-radius:9px;background:#171716;color:#fff}.service-report-form .report-submit span{color:#aaa;font-size:9px}.rso-wizard-navigation{order:9;position:sticky;bottom:10px;z-index:12;display:grid;grid-template-columns:120px 1fr 120px;align-items:center;gap:10px;padding:10px;border:1px solid #d9d5cb;border-radius:10px;background:rgba(255,255,255,.94);box-shadow:0 14px 35px rgba(25,23,18,.12);backdrop-filter:blur(10px)}.rso-wizard-navigation span{text-align:center;color:#777;font-size:9px;font-weight:700}.rso-wizard-navigation button{min-height:38px;border:1px solid #d1cec5;border-radius:6px;background:#fff;color:#333;font-size:9px;font-weight:800;cursor:pointer}.rso-wizard-navigation button:last-child{border-color:#1b1b1a;background:#1b1b1a;color:#fff}.rso-wizard-navigation button:disabled{opacity:.35;cursor:not-allowed}
@media(max-width:760px){.rso-wizard-steps{grid-template-columns:repeat(4,minmax(60px,1fr))}.rso-wizard-steps button{display:flex;min-height:54px;justify-content:center;padding:8px}.rso-wizard-steps button b,.rso-wizard-steps button small{display:none}.rso-review-grid{grid-template-columns:1fr}.rso-submission-blockers-head{grid-template-columns:34px 1fr}.rso-submission-blockers-head>b{grid-column:2;justify-self:start}.rso-submission-blockers li button{grid-template-columns:28px 1fr}.rso-submission-blockers li button>small{grid-column:2}.rso-wizard-navigation{grid-template-columns:90px 1fr 90px;bottom:5px}.service-report-form .report-submit{align-items:stretch;flex-direction:column}.service-report-form .report-submit button{width:100%}}

dialog{border:1px solid var(--ui-line)!important;border-radius:13px!important;box-shadow:0 28px 80px rgba(0,0,0,.18)!important}dialog::backdrop{background:rgba(16,17,16,.58);backdrop-filter:blur(3px)}

@media(max-width:900px){
  .login-screen{grid-template-columns:1fr}.login-visual{display:none}.login-panel{min-height:100vh;padding:22px}.login-form{padding:28px}
  .dashboard,.dashboard:not([hidden]){display:block;grid-template-columns:1fr}.dashboard-header{height:68px}.dashboard-view{padding-top:20px}
  .sidebar{position:fixed;z-index:50;top:0;left:0;width:255px;transform:translateX(-100%);transition:transform .25s ease}.sidebar.open{transform:none}.mobile-side-toggle{display:block}
  .rso-central-mode .report-history-list{grid-template-columns:1fr}
}
@media(max-width:640px){
  .metric-grid,.staff-summary,.course-summary{grid-template-columns:1fr 1fr}.report-toolbar{align-items:flex-start}.report-toolbar-actions{width:100%;align-items:stretch}.report-view-switch{width:100%}.report-view-switch button{flex:1}
  .report-draft-actions{justify-content:space-between}.service-report-form fieldset,.service-report-form fieldset:first-child{padding:18px}
}

/* Mapa operacional */
.report-location-fields{display:grid;grid-template-columns:minmax(260px,1fr) 1fr;align-items:end;gap:18px;margin-bottom:14px}
.report-location-fields p{margin:0 0 3px;color:var(--ui-muted);font-size:10px;line-height:1.55}
.location-search-row{display:flex}.location-search-row input{min-width:0;flex:1;border-radius:7px 0 0 7px!important}.location-search-row button{flex:0 0 auto;border:1px solid var(--ui-ink);border-radius:0 7px 7px 0;background:var(--ui-ink);padding:0 14px;color:#fff;font-size:8px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;cursor:pointer}.location-search-row button:hover{background:#2b2d2a}.location-match-status{display:block;margin-top:6px;color:#42744c;font-size:9px;font-weight:700}.location-match-status.error{color:#a23b35}
.rso-map-picker{position:relative;overflow:auto;width:min(100%,700px);height:430px;margin:0 auto 22px;border:1px solid var(--ui-line);border-radius:10px;background:#d9edf2;cursor:grab;scrollbar-width:thin;touch-action:none;overscroll-behavior:contain;user-select:none}
.rso-map-stage{position:relative;width:100%;min-width:100%}.rso-map-picker img{display:block;width:100%;height:auto;-webkit-user-drag:none}
.rso-map-picker span{position:absolute;z-index:3;width:18px;height:18px;border:3px solid #fff;border-radius:50%;background:#c8382f;box-shadow:0 2px 9px rgba(0,0,0,.45);transform:translate(-50%,-50%);pointer-events:none}
.map-toolbar{align-items:flex-end}.map-filters{display:flex;gap:9px}.map-filters label{display:grid;gap:6px;color:var(--ui-muted);font-size:8px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
.map-filters select{min-width:155px;height:40px;border:1px solid var(--ui-line);border-radius:7px;background:var(--ui-surface);padding:0 10px;color:var(--ui-ink)}
.map-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:14px}
.map-summary article{padding:18px 20px;border:1px solid var(--ui-line);border-radius:10px;background:var(--ui-surface)}
.map-summary span{display:block;color:var(--ui-muted);font-size:8px;font-weight:800;letter-spacing:.1em}.map-summary strong{display:block;overflow:hidden;margin:7px 0 2px;font-size:25px;font-weight:550;text-overflow:ellipsis;white-space:nowrap}.map-summary article:last-child strong{white-space:normal;line-height:1.15}.map-summary small{color:#8c8d88;font-size:9px}
.operational-map-layout{display:grid;grid-template-columns:minmax(0,1fr) 310px;gap:14px;align-items:start}.operational-map-panel{padding:14px}
.operational-map{position:relative;overflow:auto;max-height:calc(100vh - 270px);min-height:520px;border-radius:8px;background:#cde7ee;cursor:grab;scrollbar-width:thin;touch-action:none;overscroll-behavior:contain;user-select:none}
.operational-map-stage{position:relative;width:100%;min-width:100%}.operational-map img{display:block;width:100%;height:auto;-webkit-user-drag:none}.operational-map canvas{position:absolute;inset:0;pointer-events:none;mix-blend-mode:multiply}
.rso-map-picker.dragging,.operational-map.dragging{cursor:grabbing}.rso-map-picker.dragging *,.operational-map.dragging *{cursor:grabbing!important}
.operational-map-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px}.map-legend{display:flex;align-items:center;gap:8px;color:var(--ui-muted);font-size:8px}.map-legend i{width:90px;height:8px;border-radius:20px;background:linear-gradient(90deg,#ffe52d,#ff7417,#d9211d)}.map-legend b{color:var(--ui-muted)}
.map-navigation-hint{display:block;margin-top:5px;color:#888984;font-size:8px}
.map-view-controls{display:flex;align-items:center;gap:8px}.map-expand-control{height:34px;border:1px solid var(--ui-line);border-radius:7px;background:var(--ui-surface);padding:0 12px;color:var(--ui-ink);font-size:8px;font-weight:800;letter-spacing:.04em;text-transform:uppercase;cursor:pointer}.map-expand-control:hover,.map-expand-control[aria-pressed="true"]{border-color:var(--ui-accent);background:var(--ui-accent-soft)}
.map-zoom-controls{z-index:8;display:flex;overflow:hidden;border:1px solid var(--ui-line);border-radius:7px;background:rgba(255,255,255,.94);box-shadow:0 4px 14px rgba(0,0,0,.08)}
.map-zoom-controls button{min-width:35px;height:32px;border:0;border-right:1px solid var(--ui-line);background:transparent;color:var(--ui-ink);font-size:14px;font-weight:700;cursor:pointer}.map-zoom-controls button:last-child{border-right:0}.map-zoom-controls button[data-map-zoom=reset],.map-zoom-controls button[data-rso-zoom=reset]{min-width:54px;font-size:9px}.map-zoom-controls button:hover{background:var(--ui-surface-soft)}
.rso-map-controls{position:sticky;top:10px;left:calc(100% - 139px);width:max-content;margin:10px 10px -42px auto}
.map-ranking-panel{position:sticky;top:18px;padding:20px}.map-ranking-context{margin:-8px 0 8px;color:var(--ui-muted);font-size:8px;line-height:1.45}.map-ranking{display:grid;margin-top:10px}.map-ranking>div{display:grid;grid-template-columns:24px 1fr auto;align-items:center;gap:10px;padding:13px 0;border-bottom:1px solid #ecece7}.map-ranking>div>span{display:grid;width:24px;height:24px;border-radius:6px;background:var(--ui-accent-soft);place-items:center;color:#8b6823;font-size:9px;font-weight:800}.map-ranking p{display:grid;gap:2px;margin:0}.map-ranking strong{font-size:11px}.map-ranking small{color:var(--ui-muted);font-size:8px}.map-ranking-value{display:grid;justify-items:end;gap:1px;font-style:normal}.map-ranking-value b{font-size:12px}.map-ranking-value small{font-size:7px;text-transform:uppercase}.map-method-note{margin:18px 0 0;padding-top:15px;border-top:1px solid var(--ui-line);color:var(--ui-muted);font-size:9px;line-height:1.55}.map-empty{color:var(--ui-muted);font-size:10px}
.map-workspace-expanded{overflow:hidden}#mapView:has(.map-expanded){animation:none!important;transform:none!important}.operational-map-panel.map-expanded{position:fixed;inset:14px;z-index:900;display:grid;grid-template-rows:auto minmax(0,1fr);height:calc(100dvh - 28px);min-height:0;margin:0;padding:14px;overflow:hidden;background:var(--ui-surface);box-shadow:0 28px 90px rgba(0,0,0,.55)}.operational-map-panel.map-expanded .operational-map{height:100%;max-height:none;min-height:0}.operational-map-panel.map-expanded .map-expand-control{border-color:var(--ui-accent);background:var(--ui-accent);color:#171815}
@media(max-width:1050px){.map-toolbar{align-items:flex-start}.map-filters{width:100%;flex-wrap:wrap}.operational-map-layout{grid-template-columns:1fr}.map-ranking-panel{position:static}.operational-map{max-height:none}}
@media(max-width:650px){.report-location-fields,.map-summary{grid-template-columns:1fr}.map-filters{display:grid;grid-template-columns:1fr}.map-filters select{width:100%}.operational-map{min-height:0}.map-summary strong{font-size:20px}.rso-map-picker{height:360px}.operational-map-head{align-items:flex-start;flex-direction:column}.map-legend{order:2}}

/* Localização rápida do RSO */
.report-location-fields{grid-template-columns:minmax(280px,1.15fr) minmax(260px,.85fr);align-items:stretch;gap:10px}
.report-location-fields>label{display:grid;align-content:start}
.location-compact-status{display:grid;grid-template-columns:9px minmax(0,1fr) auto;align-items:center;gap:11px;padding:10px 12px;border:1px solid var(--ui-line);border-radius:7px;background:#faf9f6}
.location-compact-status>span{width:8px;height:8px;border-radius:50%;background:#aaa69d;box-shadow:0 0 0 4px #ebe9e3}
.location-compact-status>span.confirmed{background:#2e9b5d;box-shadow:0 0 0 4px rgba(46,155,93,.13)}
.location-compact-status p{display:grid;min-width:0;gap:2px;margin:0!important}
.location-compact-status b{overflow:hidden;color:#292925;font-size:10px;text-overflow:ellipsis;white-space:nowrap}
.location-compact-status small{overflow:hidden;margin:0;color:#7f7b72;font-size:8px;font-weight:500;text-overflow:ellipsis;white-space:nowrap}
.location-compact-status small.error{color:#a23b35}
.location-compact-status button,.rso-map-picker-head button{min-height:32px;border:1px solid #d2cec4;border-radius:5px;background:#fff;padding:0 10px;color:#45433e;font-size:8px;font-weight:800;cursor:pointer}
.rso-map-picker[hidden]{display:none!important}
.rso-map-picker{height:360px}
.rso-map-picker-head{position:sticky;top:0;z-index:9;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:9px 10px;border-bottom:1px solid rgba(0,0,0,.1);background:rgba(255,255,255,.94);backdrop-filter:blur(8px)}
.rso-map-picker-head span{position:static;width:auto;height:auto;border:0;border-radius:0;background:transparent;box-shadow:none;transform:none;color:#6e6b63;font-size:8px;pointer-events:auto}
.rso-map-controls{top:58px}
@media(max-width:720px){.report-location-fields{grid-template-columns:1fr}.location-compact-status{grid-template-columns:9px 1fr}.location-compact-status button{grid-column:2;width:100%;margin-top:4px}.location-compact-status small{white-space:normal}.rso-map-picker{height:300px}.rso-map-picker-head{align-items:flex-start;flex-direction:column}.rso-map-picker-head button{width:100%}.rso-map-controls{top:88px}}

/* Visão geral — centro de comando */
#overviewView{display:none;gap:14px}#overviewView.active{display:grid}
.overview-command{position:relative;overflow:hidden;min-height:210px;border-radius:13px;background:#161715;padding:30px;color:#fff}
.overview-command:after{content:"7º";position:absolute;right:24px;bottom:-50px;color:rgba(255,255,255,.035);font-size:190px;font-weight:800;line-height:1;pointer-events:none}
.overview-command-copy{position:relative;z-index:1;max-width:720px}.overview-kicker{color:#c7a555;font-size:8px;font-weight:900;letter-spacing:.18em}
.overview-command-title{display:flex;align-items:center;gap:14px;margin-top:13px}.overview-command-title h2{margin:0;font-size:28px;font-weight:520;letter-spacing:-.035em}.overview-command-title em{padding:6px 9px;border:1px solid rgba(83,199,125,.35);border-radius:999px;background:rgba(62,179,105,.1);color:#72d895;font-size:8px;font-style:normal;font-weight:800}.overview-command-title em.attention{border-color:rgba(216,174,75,.4);background:rgba(216,174,75,.1);color:#e2bf68}
.overview-command-copy>p{max-width:590px;margin:11px 0 22px;color:#aaa;font-size:10px;line-height:1.6}.overview-command-actions{display:flex;gap:8px}.overview-command-actions button{min-height:38px;border:1px solid #454642;border-radius:6px;background:#262724;padding:0 14px;color:#e9e9e5;font-size:8px;font-weight:800;letter-spacing:.05em;text-transform:uppercase;cursor:pointer}.overview-command-actions .overview-primary-action{border-color:#d0ad5a;background:#d0ad5a;color:#171713}
#overviewView>.metric-grid{position:relative;z-index:2;grid-template-columns:repeat(4,1fr);gap:0;margin:-55px 18px 2px;padding:0;border:1px solid #dedbd2;border-radius:10px;background:#fff;box-shadow:0 14px 32px rgba(23,22,18,.09)}
#overviewView>.metric-grid article{min-height:112px;border:0;border-right:1px solid #e7e4dc;border-radius:0;padding:20px 22px;background:transparent}#overviewView>.metric-grid article:last-child{border-right:0}#overviewView>.metric-grid article:hover{transform:none;box-shadow:none}
#overviewView>.metric-grid article span{color:#838078;font-size:7px;letter-spacing:.12em}#overviewView>.metric-grid article strong{margin:6px 0 2px;color:#1e1e1c;font-size:29px;font-weight:560}#overviewView>.metric-grid article small{color:#99958c;font-size:8px}
#overviewView>.overview-actions{grid-template-columns:repeat(3,1fr);gap:8px;margin:3px 0 0}
#overviewView>.overview-actions button{grid-template-columns:34px 1fr auto;grid-template-rows:auto auto;gap:2px 11px;min-height:68px;border-radius:8px;padding:12px 14px}#overviewView>.overview-actions button>span{grid-row:1/3;width:32px;height:32px;border-radius:7px;background:#efede7;color:#83703f}#overviewView>.overview-actions button:after{content:"→";grid-column:3;grid-row:1/3;align-self:center;color:#a69a7d;font-size:16px}#overviewView>.overview-actions strong{align-self:end}#overviewView>.overview-actions small{align-self:start}
#overviewView>.overview-grid{grid-template-columns:minmax(0,1.25fr) minmax(300px,.75fr);gap:12px}.overview-grid>.panel{padding:21px}.overview-grid>.panel:nth-child(1){grid-row:span 2}.overview-grid .panel-head{margin-bottom:14px}.overview-grid .panel-head h2{font-size:15px}.overview-reports .table-wrap{max-height:430px;overflow:auto}.overview-reports table th{position:sticky;top:0;z-index:2}.overview-reports table td{height:54px}
#overviewView .overview-indicators{grid-template-columns:repeat(2,1fr);gap:7px}#overviewView .overview-indicators div{position:relative;overflow:hidden;min-height:80px;padding:15px;border:1px solid #e9e6df;border-radius:7px;background:#faf9f6}#overviewView .overview-indicators div:after{content:"";position:absolute;right:-12px;bottom:-14px;width:48px;height:48px;border:10px solid rgba(190,157,78,.08);border-radius:50%}#overviewView .overview-indicators strong{font-size:26px;font-weight:560}#overviewView .overview-indicators span{font-size:7px}
#overviewView .overview-composition>div{padding:11px 2px}#overviewView .overview-pending>button{border-radius:6px}.overview-grid>.panel:last-child{border-left:3px solid #c8a24a}
@media(max-width:1050px){#overviewView>.metric-grid{grid-template-columns:1fr 1fr}#overviewView>.metric-grid article:nth-child(2){border-right:0}#overviewView>.metric-grid article:nth-child(-n+2){border-bottom:1px solid #e7e4dc}#overviewView>.overview-grid{grid-template-columns:1fr}.overview-grid>.panel:nth-child(1){grid-row:auto}}
@media(max-width:700px){.overview-command{min-height:250px;padding:24px 20px}.overview-command-title{align-items:flex-start;flex-direction:column}.overview-command-title h2{font-size:24px}.overview-command-actions{align-items:stretch;flex-direction:column}.overview-command-actions button{width:100%}#overviewView>.metric-grid{margin:-38px 8px 2px}#overviewView>.metric-grid article{min-height:98px;padding:16px}#overviewView>.metric-grid article strong{font-size:25px}#overviewView>.overview-actions{grid-template-columns:1fr}#overviewView>.overview-grid{grid-template-columns:1fr}.overview-reports{overflow:auto}}

/* Correção de espaçamento do resumo operacional */
#overviewView>.metric-grid{margin:0;box-shadow:0 10px 25px rgba(23,22,18,.06)}
@media(max-width:700px){#overviewView>.metric-grid{margin:0}}

/* Páginas ajustadas ao painel lateral retrátil */
@media(min-width:901px){
  .dashboard{grid-template-columns:72px minmax(0,1fr);transition:grid-template-columns .24s cubic-bezier(.22,.8,.25,1)}
  body:not(:has(dialog[open])) .dashboard:has(>.sidebar:hover),body:not(:has(dialog[open])) .dashboard:has(>.sidebar:focus-within){grid-template-columns:224px minmax(0,1fr)}
  .dashboard-main{width:100%;max-width:none;min-width:0}
  .dashboard-header{width:100%;max-width:none;margin:0;padding-inline:clamp(22px,2.2vw,40px)}
  .dashboard-view{width:100%;max-width:none;margin:0;padding:28px clamp(22px,2.2vw,40px) 50px}
  .rso-form-mode .service-report-form{width:100%;max-width:none;margin:0}
}

@media(min-width:1400px){
  .dashboard-view{padding-inline:42px}
  .course-catalog{grid-template-columns:repeat(3,minmax(0,1fr))}
  .operational-map-layout{grid-template-columns:minmax(0,1fr) 340px}
  #overviewView>.overview-grid{grid-template-columns:minmax(0,1.55fr) minmax(340px,.65fr)}
}

@media(min-width:1800px){
  .dashboard-view{padding-inline:52px}
  .statistics-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .course-catalog{grid-template-columns:repeat(4,minmax(0,1fr))}
}

/* Gestão da galeria pública */
.gallery-upload-form{display:grid;grid-template-columns:minmax(260px,1.4fr) minmax(190px,1fr) 190px auto;align-items:end;gap:12px;margin-bottom:16px;padding:18px}.gallery-upload-form>label{display:grid;gap:7px;color:#6f706c;font-size:8px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.gallery-upload-form input,.gallery-upload-form select{height:42px;border:1px solid var(--ui-line);border-radius:7px;background:#fcfcfa;padding:0 11px}.gallery-file-picker{position:relative;min-height:70px;border:1px dashed #c9c5ba;border-radius:8px;background:#faf9f5;padding:13px 15px;cursor:pointer}.gallery-file-picker input{position:absolute;width:1px;height:1px;opacity:0}.gallery-file-picker span{color:#242521;font-size:11px}.gallery-file-picker small{color:#8a877e;font-size:7px;font-weight:500;text-transform:none}.gallery-upload-status{grid-column:1/-1;color:#7c776b;font-size:8px}.gallery-admin-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(245px,1fr));gap:12px}.gallery-admin-grid article{overflow:hidden;border:1px solid var(--ui-line);border-radius:9px;background:#fff}.gallery-admin-grid img{width:100%;height:175px;object-fit:cover}.gallery-admin-grid article>div{display:grid;gap:5px;padding:13px}.gallery-admin-grid small{color:#9a752a;font-size:7px;font-weight:900;letter-spacing:.1em;text-transform:uppercase}.gallery-admin-grid strong{font-size:12px}.gallery-admin-grid span{color:#8b8981;font-size:7px}.gallery-admin-grid button{width:calc(100% - 26px);height:32px;margin:0 13px 13px;border:1px solid #e0c8c5;border-radius:5px;background:#fff8f7;color:#95483f;font-size:8px;font-weight:800;cursor:pointer}
@media(max-width:1050px){.gallery-upload-form{grid-template-columns:1fr 1fr}.gallery-file-picker{grid-column:1/-1}}@media(max-width:650px){.gallery-upload-form{grid-template-columns:1fr}.gallery-file-picker{grid-column:auto}.gallery-admin-grid{grid-template-columns:1fr}}
.table-subline{display:block;margin-top:5px;color:#9a978f;font-size:7px}
form [aria-invalid="true"]{border-color:#c65349!important;background:#fff8f7!important;box-shadow:0 0 0 3px rgba(198,83,73,.1)!important}form label:has([aria-invalid="true"]){color:#9c3f38!important}.report-section-identification label>small{color:#8d8a82;font-size:7px;font-weight:500;letter-spacing:0;text-transform:none}
.rso-delete-action{display:flex;justify-content:flex-end;margin-top:7px;padding-top:7px;border-top:1px solid #ece8e1}.rso-delete-action .danger{min-height:28px;border:1px solid #e1c3bf;border-radius:4px;background:#fff8f7;padding:0 9px;color:#9c453e;font-size:7px;font-weight:800;cursor:pointer}.rso-delete-action .danger:hover{border-color:#b9544b;background:#b9544b;color:#fff}
.map-note-area{fill-opacity:.12!important;stroke-width:2!important;transition:fill-opacity .2s,stroke-width .2s}.map-note-area:hover{fill-opacity:.22!important;stroke-width:3!important}.map-note-point{cursor:pointer}.map-note-point .map-note-halo{fill:#fff!important;fill-opacity:.95!important;stroke:var(--note-color)!important;stroke-width:3!important;vector-effect:non-scaling-stroke;filter:drop-shadow(0 2px 3px rgba(0,0,0,.25))}.map-note-point .map-note-dot{fill:var(--note-color)!important}.map-note-point .map-note-label{opacity:.88;transition:opacity .18s,transform .18s}.map-note-point:hover .map-note-label{opacity:1;transform:translateY(-2px)}.map-note-point .map-note-label rect{fill:rgba(20,21,19,.9);stroke:rgba(255,255,255,.72);stroke-width:1;vector-effect:non-scaling-stroke}.map-note-point .map-note-label text{fill:#fff!important;stroke:none!important;font-size:9px!important;font-weight:700!important;letter-spacing:.01em;text-anchor:middle;paint-order:normal!important}.map-note-point.pending .map-note-label rect{stroke-dasharray:3 2}.map-note-point.pending{opacity:.7}
.access-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:14px}.access-summary article{display:grid;gap:8px;min-height:112px;padding:19px;border:1px solid var(--ui-line);border-radius:9px;background:#fff}.access-summary span{color:#88867e;font-size:7px;font-weight:900;letter-spacing:.1em;text-transform:uppercase}.access-summary strong{font-size:27px;font-weight:560}.access-summary small{color:#99968e;font-size:8px}.access-panel{margin-bottom:24px}.access-panel-head{display:flex;align-items:end;justify-content:space-between;gap:20px;padding:18px 20px;border-bottom:1px solid var(--ui-line)}.access-panel-head span,.audit-section-title span{color:#a17d2c;font-size:7px;font-weight:900;letter-spacing:.12em}.access-panel-head h3,.audit-section-title h3{margin:5px 0 0;font-size:16px}.access-panel-head label{display:grid;gap:6px;color:#7d7b74;font-size:7px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.access-panel-head input{width:230px;height:38px;border:1px solid var(--ui-line);border-radius:6px;background:#fbfbf9;padding:0 11px}.access-account{display:grid;gap:4px}.access-account strong{font-size:10px}.access-account small{color:#8f8c84;font-size:7px}.access-state{display:inline-flex;align-items:center;gap:6px;width:max-content;padding:5px 7px;border-radius:4px;background:#f0efea;color:#74726b;font-size:7px;font-weight:800}.access-state:before{width:6px;height:6px;border-radius:50%;background:#aaa;content:""}.access-state.online{background:#e8f7ed;color:#18723a}.access-state.online:before{background:#2cb55d;box-shadow:0 0 0 3px rgba(44,181,93,.12)}.access-state.disabled{background:#f5ecea;color:#92463f}.access-table td{vertical-align:middle}.audit-section-title{margin:28px 0 11px}.audit-section-title>div{padding-left:3px}@media(max-width:950px){.access-summary{grid-template-columns:1fr 1fr}.access-table{min-width:850px}}@media(max-width:620px){.access-summary{grid-template-columns:1fr}.access-panel-head{align-items:stretch;flex-direction:column}.access-panel-head input{width:100%}}
/* Recursos integrados: busca, perfil, pendências, anexos e impressão */
.login-recovery-button{border:0;background:transparent;color:#8b6b20;text-decoration:underline;cursor:pointer;padding:.45rem}
.header-tools{margin-left:auto;display:flex;align-items:center;gap:8px;position:relative}.global-search{position:relative}.global-search input{width:220px;border:1px solid #ddd8ce;border-radius:8px;padding:10px 12px;background:#faf9f6}.global-search>span{position:absolute;right:0;top:calc(100% + 8px);width:360px;max-height:390px;overflow:auto;background:#fff;border:1px solid #dedbd3;border-radius:10px;box-shadow:0 18px 50px #1112;z-index:80;padding:6px}.global-search>span button{display:flex;width:100%;flex-direction:column;align-items:flex-start;padding:10px;border:0;border-radius:7px;background:transparent;text-align:left}.global-search>span button:hover{background:#f2f0ea}.global-search>span small{color:#777}.notification-button{position:relative;width:38px;height:38px;border:1px solid #ddd8ce;border-radius:50%;background:#fff;color:#c39731}.notification-button b{position:absolute;right:-5px;top:-6px;background:#b42318;color:#fff;border-radius:20px;min-width:18px;padding:2px;font-size:10px}.notification-panel{position:absolute;right:0;top:48px;width:360px;max-height:460px;overflow:auto;background:#fff;border:1px solid #dedbd3;border-radius:12px;box-shadow:0 18px 50px #1112;z-index:90;padding:10px}.notification-head{display:flex;justify-content:space-between;align-items:center;padding:8px}.notification-head button{border:0;background:transparent;color:#8b6b20}.notification-panel article{padding:11px;border-top:1px solid #eee}.notification-panel article.unread{border-left:3px solid #c89e3d;background:#fffbef}.notification-panel article p{margin:4px 0}.notification-panel article small{color:#777}
.dashboard-header{position:relative;z-index:120;overflow:visible}.notification-button{display:grid;place-items:center;transition:.18s;cursor:pointer}.notification-button:hover,.notification-button[aria-expanded="true"]{border-color:#b99643;background:#f8f3e7;color:#8b6a1f}.notification-button svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.notification-button.has-unread:after{content:"";position:absolute;right:8px;top:7px;width:5px;height:5px;border:2px solid #fff;border-radius:50%;background:#c13b30}.notification-button b{right:-4px;top:-6px;display:grid;place-items:center;min-width:18px;height:18px;padding:0 4px;border:2px solid #fff;background:#b42318;font-size:8px}.notification-button b[hidden],.notification-panel[hidden]{display:none!important}.notification-panel{right:-8px;top:50px;width:min(390px,calc(100vw - 28px));max-height:min(520px,calc(100vh - 92px));overflow:hidden;padding:0;border-color:#d8d4ca;border-radius:12px;background:#fff;box-shadow:0 22px 65px rgba(20,19,16,.2);z-index:220}.notification-head{padding:17px 18px;border-bottom:1px solid #ebe8e0;background:#fbfaf7}.notification-head>div{display:flex;flex-direction:column;gap:3px}.notification-head>div>b{font-size:14px}.notification-head>div>small{color:#8a857a;font-size:9px}.notification-head button{padding:7px 9px;border:1px solid #d8d1c1;border-radius:5px;background:#fff;color:#765b1e;font-size:8px;font-weight:800;letter-spacing:.04em;text-transform:uppercase;cursor:pointer}.notification-head button:hover{border-color:#b99748}.notification-head button:disabled{opacity:.4;cursor:default}.notification-list{max-height:410px;overflow:auto;padding:7px}.notification-item{display:grid;grid-template-columns:34px minmax(0,1fr);gap:11px;margin:0;padding:13px 11px!important;border:0!important;border-radius:8px;background:#fff}.notification-item+.notification-item{border-top:1px solid #efede7!important;border-radius:0}.notification-item.unread{border-left:0!important;background:#fbf7eb}.notification-item-icon{display:grid;place-items:center;width:32px;height:32px;border-radius:9px;background:#efeee9;color:#5f5b52;font-size:9px;font-weight:900}.notification-item-icon.access{background:#f2ead5;color:#795d1c}.notification-item-icon.operational{background:#e9f2ec;color:#28633a}.notification-item-top{display:flex;align-items:center;justify-content:space-between;gap:8px}.notification-item-top b{overflow:hidden;font-size:10px;text-overflow:ellipsis;white-space:nowrap}.notification-item-top i{flex:0 0 auto;width:6px;height:6px;border-radius:50%;background:#c5962f}.notification-item p{margin:4px 0 6px!important;color:#625f58;font-size:10px;line-height:1.45}.notification-item small{color:#999!important;font-size:8px}.notification-empty{display:grid;justify-items:center;padding:40px 20px;text-align:center}.notification-empty span{display:grid;place-items:center;width:36px;height:36px;border-radius:50%;background:#edf5ef;color:#2c7040}.notification-empty b{margin-top:12px;font-size:11px}.notification-empty p{margin:5px 0;color:#8a877f;font-size:9px}
.profile-hero{display:flex;align-items:center;gap:20px;padding:28px}.profile-avatar{display:grid;place-items:center;width:82px;height:82px;border-radius:50%;background:#151716;color:#e2ba58;font:700 24px serif}.profile-hero h2{margin:4px 0;font-size:28px}.profile-hero p{margin:0;color:#666}.profile-hero em{display:inline-block;margin-top:10px;padding:5px 9px;border-radius:20px;background:#eaf8ee;color:#16723b;font-style:normal}.profile-metrics,.pending-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:14px 0}.profile-metrics article,.pending-summary article{background:#fff;border:1px solid #ddd8ce;border-radius:10px;padding:18px}.profile-metrics strong,.pending-summary strong{display:block;font-size:26px}.profile-metrics span,.pending-summary span{color:#666;font-size:12px}.profile-grid,.pending-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.profile-grid article,.pending-grid article{padding:18px}.profile-tag{display:inline-block;margin:4px;padding:7px 10px;border:1px solid #ddd4bd;border-radius:18px;background:#fffbf1}#profileReports button,#pendingRsoList button{width:100%;display:grid;grid-template-columns:1fr auto;text-align:left;border:0;border-top:1px solid #eee;background:transparent;padding:11px}#profileReports button span,#pendingRsoList button span{grid-row:2;color:#777;font-size:12px}#profileReports em,#pendingRsoList em{grid-row:1/3;grid-column:2;align-self:center;font-style:normal;color:#8b6b20}.history-event{display:flex;gap:10px;padding:9px}.history-event i{width:8px;height:8px;margin-top:5px;border-radius:50%;background:#c89e3d}.history-event span,.history-event small{display:block;color:#777}.pending-item{display:flex;justify-content:space-between;align-items:center;padding:12px 4px;border-top:1px solid #eee}.pending-item small{display:block;color:#777}.pending-item button,.statistics-filters button{border:1px solid #d8d3c9;background:#fff;border-radius:7px;padding:9px;cursor:pointer}.report-attachments{margin-top:15px;padding:14px;border:1px dashed #cfc7b7;border-radius:9px;background:#faf9f5}.report-attachments input[type=file]{display:block;margin-top:7px}.report-attachments a{display:inline-block;margin:8px 6px 0 0;padding:6px 9px;border-radius:6px;background:#fff;color:#765a16}
.profile-identity-copy{min-width:0}.profile-status-row{display:flex;align-items:center;flex-wrap:wrap;gap:9px}.profile-link-warning{display:inline-block;margin-top:10px;padding:5px 9px;border:1px solid #e5d6ae;border-radius:20px;background:#fff8e6;color:#785c18;font-size:11px}#profileReports button{cursor:pointer;border-radius:7px;transition:background .18s ease}#profileReports button:hover{background:#f7f4ec}
@media(max-width:900px){.header-tools{display:none}.profile-metrics,.pending-summary,.profile-grid,.pending-grid{grid-template-columns:1fr}.global-search input{width:160px}}
@media print{.sidebar,.dashboard-header,.view-toolbar .statistics-filters,.overview-command-actions{display:none!important}.dashboard-main{margin:0!important}.dashboard-view{display:none!important}#statisticsView{display:block!important}.panel{break-inside:avoid}}
.rso-list-card{padding:0!important;overflow:hidden}.rso-open-details{display:grid;grid-template-columns:1fr auto;gap:8px;width:100%;padding:16px;text-align:left;border:0;background:transparent;cursor:pointer}.rso-open-details:hover{background:#faf8f2}.rso-open-details>span:first-child{display:flex;flex-direction:column;gap:4px}.rso-open-details small{color:#757575}.rso-open-details em{grid-column:1/3;color:#8c6a1d;font-size:11px;font-style:normal}.rso-list-card>.rso-actions,.rso-list-card>.rso-delete-action,.rso-list-card>.rso-revision-note,.rso-list-card>.rso-timeline,.rso-list-card>.rso-attachments-list{margin-left:16px;margin-right:16px}.rso-attachment{display:inline-block;padding:6px 8px;margin:4px;border-radius:6px;background:#f5f1e6;color:#725718}.rso-timeline{margin-bottom:12px}.rso-timeline li{display:flex;justify-content:space-between;padding:4px 0}.rso-timeline li span{font-size:11px;color:#777}
.report-details-modal{width:min(920px,calc(100vw - 28px));max-height:92vh;padding:0;border:0;border-radius:14px;background:#f6f5f1;box-shadow:0 30px 100px #0007}.report-details-modal::backdrop{background:#0a0b0acc;backdrop-filter:blur(3px)}.report-details-close{position:sticky;float:right;right:16px;top:14px;z-index:3;width:38px;height:38px;border:1px solid #ffffff33;border-radius:50%;background:#202220;color:#fff;font-size:23px;cursor:pointer}.report-detail-hero{display:flex;justify-content:space-between;align-items:center;padding:34px 38px;background:#151715;color:#fff}.report-detail-hero span{font-size:10px;letter-spacing:1.5px;color:#d1aa4b}.report-detail-hero h2{margin:6px 0;font-size:30px}.report-detail-hero p{margin:0;color:#aaa}.report-detail-hero em{padding:7px 10px;border:1px solid #caa33e66;border-radius:20px;color:#e1bb59;font-style:normal}.report-details-modal section{margin:16px 20px;padding:20px;background:#fff;border:1px solid #dfdcd5;border-radius:10px}.report-details-modal section h3{margin:0 0 15px;font-size:16px}.report-detail-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.report-detail-grid>div{padding:12px;background:#f7f6f2;border-radius:7px}.report-detail-grid small,.report-detail-text small{display:block;margin-bottom:5px;color:#85817a;font-size:9px;letter-spacing:1px;text-transform:uppercase}.report-detail-grid strong{font-size:13px}.report-detail-text{margin-top:10px;padding:14px;border-left:2px solid #d0aa4f;background:#faf9f6}.report-detail-text p{margin:0;line-height:1.65;white-space:normal}.report-detail-location{padding:12px;border-radius:7px;background:#171917;color:#fff}.report-detail-warning{margin:16px 20px;padding:14px;border:1px solid #e0ba58;border-radius:8px;background:#fff8dc}.report-detail-warning p{margin:4px 0 0}.report-change-list{margin:12px 0 0;padding-left:20px}.report-change-list small{color:#777}.report-detail-attachments a{display:inline-block;margin:4px;padding:9px 12px;border-radius:7px;background:#f1ead8;color:#765914}.report-detail-timeline{list-style:none;padding:0}.report-detail-timeline li{display:flex;gap:10px;padding:8px}.report-detail-timeline i{width:8px;height:8px;margin-top:5px;border-radius:50%;background:#c99d35}.report-detail-timeline span{display:block;color:#777;font-size:11px}@media(max-width:650px){.report-detail-grid{grid-template-columns:1fr 1fr}.report-detail-hero{padding:26px 20px}.report-detail-hero h2{font-size:22px}.report-details-modal section{margin:10px;padding:15px}}

/* Diretório do efetivo */
#staffView{max-width:1500px;margin:0 auto}.staff-toolbar{align-items:flex-end}.staff-summary{gap:10px}.staff-summary article{position:relative;overflow:hidden;padding:18px 20px}.staff-summary article:after{content:"";position:absolute;right:-15px;bottom:-28px;width:74px;height:74px;border:1px solid #eee9dc;border-radius:50%}.staff-controls{display:grid;grid-template-columns:minmax(230px,1.7fr) repeat(3,minmax(130px,1fr));gap:11px;padding:16px}.staff-controls label{min-width:0}.staff-controls label:nth-of-type(5),.staff-controls label:nth-of-type(6),.staff-controls label:nth-of-type(7){grid-row:2}.staff-controls button{align-self:end}.staff-controls>span{align-self:center;justify-self:end;color:#777;font-size:9px}.staff-directory{display:grid;gap:18px;margin-top:18px}.staff-group{overflow:visible;border:0;border-radius:12px;background:transparent}.staff-group>header{position:relative;padding:15px 18px;border:1px solid #ddd9cf;border-radius:10px 10px 0 0;background:#f5f3ed}.staff-group>header:before{content:"";position:absolute;left:0;top:16px;bottom:16px;width:3px;border-radius:0 3px 3px 0;background:#c49a38}.staff-group>header h3{font-size:15px}.staff-group>header b{background:#242522}.staff-card.staff-row{display:grid;grid-template-columns:minmax(270px,1.35fr) minmax(210px,1.15fr) minmax(175px,.85fr) minmax(155px,.8fr) 76px;gap:18px;align-items:center;min-height:0;padding:18px;border:1px solid #e2dfd7;border-top:0;background:#fff}.staff-card.staff-row:last-child{border-radius:0 0 10px 10px}.staff-card.staff-row:hover{position:relative;z-index:2;border-color:#c9b77f;background:#fffdfa;box-shadow:0 8px 24px rgba(31,30,26,.07)}.staff-card-identity{display:grid;grid-template-columns:minmax(128px,1fr) minmax(112px,auto);align-items:center;gap:12px;min-width:0}.staff-card .staff-person{min-width:0}.staff-card .staff-person>div,.staff-rank-line>div{min-width:0}.staff-card .staff-person strong{overflow:visible;font-size:12px;line-height:1.25;text-overflow:clip;white-space:normal;overflow-wrap:break-word}.staff-card .staff-person small{font-size:8px;letter-spacing:.03em}.staff-card .avatar{width:40px;height:40px;background:#191a18;color:#d8b95d}.staff-rank-line{display:flex;align-items:center;min-width:0;gap:8px;padding-left:11px;border-left:1px solid #ece9e1}.staff-rank-line .staff-insignia img,.staff-rank-line .staff-insignia svg{max-width:38px;max-height:30px}.staff-rank-line b{overflow:visible;font-size:9px!important;line-height:1.2;text-overflow:clip;white-space:normal}.staff-card-label{display:block;margin-bottom:8px;color:#9a958a;font-size:7px;font-weight:900;letter-spacing:.11em}.staff-card-assignment>small{margin-top:8px;color:#777;font-size:8px}.staff-function-tags{display:flex;flex-wrap:wrap;gap:5px}.staff-function-tags span{padding:5px 7px;border:1px solid #ded5bb;border-radius:5px;background:#f3f5f4;color:#6f571f;font-size:8px;font-weight:700}.staff-function-tags i{color:#999;font-size:9px}.staff-card-record>div{display:grid;grid-template-columns:1fr 1fr;gap:6px}.staff-card-record>div>span{padding:8px;border-radius:6px;background:#f7f6f2}.staff-card-record small{margin:0 0 4px;color:#999;font-size:7px;text-transform:uppercase}.staff-card-record b{font-size:9px!important}.staff-card-qualifications .staff-qualifications{display:grid;grid-template-columns:1fr 1fr;gap:5px}.staff-card-qualifications .qualification-popover summary{justify-content:space-between;width:100%;padding:7px 8px;font-size:7px}.staff-card-actions{display:flex;flex-direction:column;align-items:stretch;gap:8px}.staff-card-actions .staff-status{justify-content:center;text-align:center}.staff-card-actions .staff-edit-button{width:100%;margin:0}.staff-card .account-badge{width:max-content;max-width:100%;margin-top:5px}.staff-card .qualification-popover>div{z-index:20}
@media(max-width:1180px){.staff-card.staff-row{grid-template-columns:minmax(260px,1.3fr) minmax(205px,1.15fr) minmax(165px,.8fr) 76px}.staff-card-qualifications{grid-column:2/4}.staff-card-actions{grid-column:4;grid-row:1/3}.staff-controls{grid-template-columns:repeat(3,minmax(150px,1fr))}.staff-controls .staff-search{grid-column:1/3}.staff-controls label:nth-of-type(5),.staff-controls label:nth-of-type(6),.staff-controls label:nth-of-type(7){grid-row:auto}}
@media(max-width:780px){.staff-summary{grid-template-columns:1fr 1fr}.staff-controls{grid-template-columns:1fr 1fr}.staff-controls .staff-search{grid-column:1/-1}.staff-controls>span{justify-self:start}.staff-card.staff-row{grid-template-columns:1fr auto;gap:15px;padding:16px}.staff-card.staff-row>div{display:block;grid-column:auto;grid-row:auto}.staff-card.staff-row>.staff-card-identity,.staff-card.staff-row>.staff-card-assignment,.staff-card.staff-row>.staff-card-record,.staff-card.staff-row>.staff-card-qualifications{grid-column:1/-1}.staff-card.staff-row>.staff-card-actions{display:flex;grid-column:2;grid-row:1}.staff-card-record>div{grid-template-columns:1fr 1fr}.staff-rank-line{padding-left:8px}.staff-function-tags span{font-size:7px}}
@media(max-width:520px){.staff-summary,.staff-controls{grid-template-columns:1fr}.staff-controls .staff-search{grid-column:auto}.staff-card-identity{grid-template-columns:1fr}.staff-rank-line{padding:10px 0 0;border-top:1px solid #eee;border-left:0}.staff-card.staff-row>.staff-card-actions{grid-column:1/-1;grid-row:auto;flex-direction:row}.staff-card-actions>*{flex:1}}

/* Diretório do efetivo compacto no celular */
.staff-filter-toggle{display:none}
@media(max-width:620px){
  #staffView{padding-right:12px;padding-left:12px}
  .staff-toolbar{align-items:stretch;gap:13px}.staff-toolbar .btn{width:100%}
  .staff-summary{grid-template-columns:1fr 1fr;gap:8px}.staff-summary article{min-height:82px;padding:13px 14px}.staff-summary article:after{width:54px;height:54px}.staff-summary strong{font-size:24px}.staff-summary small{display:none}
  .staff-filter-toggle{display:grid;grid-template-columns:1fr auto 18px;align-items:center;gap:8px;width:100%;min-height:47px;margin:0;border:1px solid var(--ui-line);border-radius:9px;background:var(--ui-surface);padding:0 13px;color:var(--ui-ink);text-align:left;cursor:pointer}.staff-filter-toggle span{font-size:9px;font-weight:850;letter-spacing:.08em;text-transform:uppercase}.staff-filter-toggle b{color:var(--ui-muted);font-size:8px;font-weight:650}.staff-filter-toggle i{color:var(--ui-accent);font-size:15px;font-style:normal;text-align:center;transition:transform .18s}.staff-filter-toggle[aria-expanded="true"] i{transform:rotate(180deg)}
  .staff-controls{display:none;grid-template-columns:1fr!important;gap:10px;margin:8px 0 14px;padding:13px}.staff-controls.mobile-open{display:grid}.staff-controls .staff-search{grid-column:auto}.staff-controls label{margin:0}.staff-controls>button{width:100%}.staff-controls>span{justify-self:start}
  .staff-directory{gap:15px;margin-top:14px}.staff-group{display:grid;gap:8px}.staff-group>header{padding:12px 14px;border-radius:10px}.staff-group>header:before{top:13px;bottom:13px}.staff-group>header h3{font-size:14px}.staff-group>header b{width:25px;height:25px}
  .staff-card.staff-row,.staff-card.staff-row:last-child{grid-template-columns:1fr;gap:0;margin:0;padding:14px;border:1px solid var(--ui-line);border-radius:10px;background:var(--ui-surface)}
  .staff-card.staff-row>div,.staff-card.staff-row>.staff-card-identity,.staff-card.staff-row>.staff-card-assignment,.staff-card.staff-row>.staff-card-record,.staff-card.staff-row>.staff-card-qualifications,.staff-card.staff-row>.staff-card-actions{grid-column:1;grid-row:auto}
  .staff-card-identity{display:grid!important;grid-template-columns:minmax(0,1.15fr) minmax(118px,.85fr);align-items:center;gap:10px}.staff-card .staff-person{gap:9px}.staff-card .avatar{width:35px;height:35px}.staff-card .staff-person strong{font-size:11px}.staff-card .account-badge{margin-top:4px}
  .staff-rank-line{padding:0 0 0 10px;border-top:0;border-left:1px solid var(--ui-line)}.staff-rank-line .staff-insignia{width:43px;height:31px}.staff-rank-line .staff-insignia img{max-width:34px;max-height:25px}.staff-rank-line b{font-size:8px!important}.staff-rank-line small{font-size:7px}
  .staff-card-assignment{margin-top:12px;padding-top:11px;border-top:1px solid var(--ui-line)}.staff-card-label{margin-bottom:6px}.staff-function-tags{gap:4px}.staff-function-tags span{padding:4px 6px}.staff-card-assignment>small{margin-top:6px}
  .staff-card-record{margin-top:11px}.staff-card-record.is-empty{display:none!important}.staff-card-record>div{gap:5px}.staff-card-record>div>span{padding:7px 8px}
  .staff-card-qualifications{margin-top:11px}.staff-card-qualifications .staff-card-label{display:none}.staff-card-qualifications .staff-qualifications{gap:6px}.staff-card-qualifications .qualification-popover summary{min-height:35px;padding:7px 8px}
  .staff-card.staff-row>.staff-card-actions{display:flex;margin-top:12px;padding-top:11px;border-top:1px solid var(--ui-line);flex-direction:row}.staff-card-actions>*{min-height:35px;flex:1}.staff-card-actions .staff-status{align-items:center}.staff-card-actions .staff-edit-button{background:transparent}
}
@media(max-width:350px){.staff-card-identity{grid-template-columns:1fr}.staff-rank-line{margin-top:10px;padding:10px 0 0;border-top:1px solid var(--ui-line);border-left:0}}

/* Exclusão segura de integrantes */
.staff-modal-actions{display:grid;grid-template-columns:auto 1fr auto auto;align-items:center}.staff-delete-button{border:1px solid #d9aaa5;background:#fff7f6;color:#963f38}.staff-delete-button:hover{border-color:#963f38;background:#963f38;color:#fff}.staff-delete-button:disabled{cursor:wait;opacity:.55}
@media(max-width:620px){.staff-modal-actions{grid-template-columns:1fr 1fr}.staff-modal-actions>span{display:none}.staff-delete-button{grid-column:1/-1}}

/* Mapa territorial — marcações e desenho de áreas */
.map-annotation-toolbar{padding:16px 18px;border-radius:10px}.map-annotation-toolbar>div:first-child strong{font-size:11px}.map-annotation-toolbar>div:first-child small{font-size:8px;line-height:1.45}.map-annotation-toolbar>div:nth-child(2){gap:7px}.map-annotation-toolbar button{min-height:34px;border-radius:18px;padding:0 12px}.map-annotation-toolbar button.active{box-shadow:0 0 0 2px #fff,0 0 0 3px #222}.map-annotation-toolbar>#newMapAnnotation{border-radius:7px;padding:0 15px;background:#1d1e1b;color:#fff;font-weight:800}.map-annotation-toolbar button i{width:9px;height:9px;box-shadow:0 0 0 3px #0000000a}.map-annotation-toolbar button b{display:inline-grid;min-width:18px;height:18px;margin-left:7px;border-radius:9px;background:#0000000d;place-items:center;font-size:7px}.map-annotation-toolbar button.active b{background:#ffffff1c}
#mapAnnotationLayer{overflow:visible;filter:drop-shadow(0 2px 3px rgba(21,22,19,.12))}.map-note-region,.map-note-point{cursor:pointer;pointer-events:visiblePainted}.map-note-area-shadow{fill:none;stroke:#fff;stroke-width:8;stroke-linejoin:round;vector-effect:non-scaling-stroke;opacity:.82}.map-note-area{fill:var(--note-color)!important;fill-opacity:.18!important;stroke:var(--note-color)!important;stroke-width:3!important;stroke-linejoin:round;vector-effect:non-scaling-stroke;transition:fill-opacity .18s,stroke-width .18s}.map-note-region:hover .map-note-area{fill-opacity:.3!important;stroke-width:4!important}.map-note-region.pending .map-note-area{stroke-dasharray:9 7}.map-note-region.pending{opacity:.72}.map-area-label{pointer-events:none}.map-area-label circle{fill:var(--note-color);stroke:#fff;stroke-width:3;vector-effect:non-scaling-stroke}.map-area-label rect{fill:rgba(23,24,21,.92);stroke:rgba(255,255,255,.86);stroke-width:1;vector-effect:non-scaling-stroke}.map-area-symbol,.map-area-name{fill:#fff;stroke:none!important;text-anchor:middle;paint-order:normal!important;font-family:inherit;font-weight:850}.map-area-symbol{font-size:10px}.map-area-name{font-size:11px;letter-spacing:.01em}
.map-note-pulse{fill:var(--note-color);fill-opacity:.16;stroke:var(--note-color);stroke-opacity:.3;stroke-width:1;vector-effect:non-scaling-stroke}.map-note-pin{fill:var(--note-color);stroke:#fff;stroke-width:2;stroke-linejoin:round;vector-effect:non-scaling-stroke}.map-note-center{fill:#fff;stroke:none}.map-note-symbol{fill:#1c1d1a!important;stroke:none!important;font:850 7px/1 inherit;text-anchor:middle;paint-order:normal!important}.map-note-label{opacity:.96;pointer-events:none}.map-note-label rect{fill:rgba(23,24,21,.94)!important;stroke:rgba(255,255,255,.86)!important;stroke-width:1!important;vector-effect:non-scaling-stroke}.map-note-label text{fill:#fff!important;stroke:none!important;font-size:9px!important;font-weight:780!important;letter-spacing:.01em;text-anchor:middle;paint-order:normal!important}.map-note-point:hover .map-note-pulse{fill-opacity:.28}.map-note-point:hover .map-note-label{opacity:1}.map-note-point.pending{opacity:.68}.map-note-point.pending .map-note-pin{stroke-dasharray:5 3}
g.map-note-draft{fill:none;stroke:none}.map-note-draft-fill{fill:var(--note-color);fill-opacity:.2;stroke:none}.map-note-draft-line{fill:none;stroke:var(--note-color);stroke-width:4;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke}.map-note-draft-close{stroke:var(--note-color);stroke-width:2;stroke-dasharray:8 6;vector-effect:non-scaling-stroke;opacity:.75}.map-note-draft-vertex circle{fill:#fff;stroke:var(--note-color);stroke-width:3;vector-effect:non-scaling-stroke}.map-note-draft-vertex text{fill:#242520;stroke:none!important;font-size:9px;font-weight:900;text-anchor:middle;paint-order:normal!important}.map-note-draft-point{fill:var(--note-color)!important;fill-opacity:.25!important;stroke:var(--note-color)!important;stroke-width:4!important;vector-effect:non-scaling-stroke}
.annotation-drawing-bar{position:sticky;top:12px;z-index:30;display:grid;grid-template-columns:auto minmax(190px,1fr) auto auto;align-items:center;gap:14px;width:calc(100% - 24px);margin:12px;padding:12px 14px;border:1px solid #ffffff24;border-radius:10px;background:rgba(24,25,22,.94);color:#fff;box-shadow:0 14px 35px #0004;backdrop-filter:blur(10px);cursor:default}.annotation-drawing-bar[hidden]{display:none}.annotation-drawing-identity{display:flex;align-items:center;gap:10px}.annotation-drawing-identity>i{display:grid;width:32px;height:32px;border:3px solid #fff;border-radius:50%;place-items:center;color:#fff;font-size:9px;font-style:normal;font-weight:900;box-shadow:0 0 0 4px #ffffff12}.annotation-drawing-identity span{display:grid;gap:2px}.annotation-drawing-identity small{color:#c9a64c;font-size:7px;font-weight:900;letter-spacing:.12em}.annotation-drawing-identity strong{font-size:11px}.annotation-drawing-bar>p{margin:0;color:#c9c9c5;font-size:9px}.annotation-drawing-bar>b{min-width:62px;color:#e3bd5b;font-size:9px;text-align:center}.annotation-drawing-bar>div:last-child{display:flex;gap:6px}.annotation-drawing-bar button{height:32px;border:1px solid #ffffff2b;border-radius:6px;background:#ffffff0c;color:#fff;padding:0 10px;font-size:8px;font-weight:800;cursor:pointer}.annotation-drawing-bar button:hover:not(:disabled){background:#ffffff1c}.annotation-drawing-bar #finishAnnotationDrawing{border-color:#d1a844;background:#d1a844;color:#171815}.annotation-drawing-bar button:disabled{cursor:not-allowed;opacity:.38}.annotation-drawing .operational-map-stage:after{position:absolute;inset:0;border:3px solid #d1a844;box-shadow:inset 0 0 0 2px #fff8;pointer-events:none;content:""}
.annotation-category-preview{display:flex;align-items:center;gap:13px;margin-top:18px;padding:13px 15px;border:1px solid #e1ded5;border-radius:9px;background:#f8f7f3}.annotation-category-preview>i{display:grid;flex:0 0 auto;width:38px;height:38px;border:3px solid #fff;border-radius:10px;place-items:center;color:#fff;font-size:10px;font-style:normal;font-weight:900;box-shadow:0 4px 12px #0002}.annotation-category-preview>div{display:grid;gap:2px}.annotation-category-preview small{color:#717873;font-size:7px;font-weight:900;letter-spacing:.12em}.annotation-category-preview strong{font-size:12px}.annotation-category-preview span{color:#85827a;font-size:8px}.annotation-form-grid{grid-template-columns:1fr 1fr 1fr}.annotation-form-grid .span-2{grid-column:1/-1}.annotation-format-picker{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin:16px 0 0;padding:0;border:0}.annotation-format-picker legend{grid-column:1/-1;margin-bottom:8px;color:#666;font-size:8px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.annotation-format-picker label{cursor:pointer}.annotation-format-picker input{position:absolute;width:1px;height:1px;opacity:0}.annotation-format-picker label>span{display:grid;grid-template-columns:34px 1fr;grid-template-rows:auto auto;gap:3px 10px;min-height:66px;padding:12px;border:1px solid #ddd9cf;border-radius:8px;background:#fff}.annotation-format-picker label>span>i{grid-row:1/3;display:grid;width:32px;height:32px;border-radius:8px;background:#efede7;place-items:center;color:#777;font-style:normal}.annotation-format-picker label>span>b{align-self:end;color:#3d3e39;font-size:9px}.annotation-format-picker label>span>small{align-self:start;color:#8c8981;font-size:7px}.annotation-format-picker label:has(input:checked)>span{border-color:#252622;background:#252622;box-shadow:0 5px 14px #0002}.annotation-format-picker label:has(input:checked)>span>i{background:#aeb3b1;color:#20211e}.annotation-format-picker label:has(input:checked)>span>b{color:#fff}.annotation-format-picker label:has(input:checked)>span>small{color:#bbb}.annotation-draw-status{border:1px solid #d4d7d5;border-left:3px solid #858c88;border-radius:0 7px 7px 0}.map-annotation-modal #saveMapAnnotation:disabled{cursor:not-allowed;opacity:.38;filter:saturate(.25)}
.map-annotation-list{gap:7px}.map-annotation-list article{grid-template-columns:36px 1fr auto;gap:10px;padding:11px 0}.map-annotation-list .annotation-list-symbol{display:grid;width:32px;height:32px;border:2px solid color-mix(in srgb,var(--note-color),#fff 72%);border-radius:9px;background:color-mix(in srgb,var(--note-color),#fff 87%)!important;place-items:center;color:var(--note-color);font-style:normal}.annotation-list-symbol b{font-size:8px}.map-annotation-list article div{gap:4px}.map-annotation-list article strong{font-size:10px}.map-annotation-list article small{font-size:7px}.map-annotation-list article p{display:-webkit-box;overflow:hidden;margin:0;color:#8d8a82;font-size:7px;line-height:1.35;-webkit-box-orient:vertical;-webkit-line-clamp:2}.map-annotation-list article span{align-self:start}.map-annotation-list article button{border-radius:5px}
@media(max-width:900px){.annotation-drawing-bar{grid-template-columns:1fr auto}.annotation-drawing-bar>p{grid-column:1/-1;grid-row:2}.annotation-drawing-bar>b{grid-column:2;grid-row:2}.annotation-drawing-bar>div:last-child{grid-column:1/-1}.annotation-form-grid{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.annotation-format-picker,.annotation-form-grid{grid-template-columns:1fr}.annotation-drawing-bar{position:absolute;grid-template-columns:1fr;align-items:stretch}.annotation-drawing-bar>b{grid-column:1;grid-row:auto;text-align:left}.annotation-drawing-bar>div:last-child{grid-column:1;flex-wrap:wrap}.annotation-category-preview{align-items:flex-start}.map-annotation-toolbar button{font-size:8px}.map-annotation-toolbar>#newMapAnnotation{width:100%}.map-filters label,.map-navigation-hint{font-size:9px}.map-view-controls{width:100%;justify-content:space-between}.map-expand-control{flex:1}.operational-map-panel.map-expanded{inset:0;height:100dvh;border-radius:0!important}.operational-map-panel.map-expanded .operational-map-head{padding:2px 2px 0}}

/* Editor de integrante — layout renovado */
.staff-editor-modal{
  width:min(1080px,calc(100vw - 40px));
  max-height:min(900px,calc(100vh - 36px));
  padding:0;
  border:1px solid var(--ui-line);
  border-radius:20px!important;
  background:var(--ui-surface);
  color:var(--ui-ink);
  overflow:hidden;
}
.staff-editor-modal form{
  display:grid;
  grid-template-rows:auto auto minmax(0,1fr) auto;
  max-height:min(900px,calc(100vh - 36px));
  padding:0;
}
.staff-editor-head{
  align-items:flex-start;
  gap:18px;
  padding:24px 30px 19px;
  border:0;
  border-bottom:1px solid var(--ui-line);
  background:linear-gradient(135deg,var(--ui-surface-soft),var(--ui-surface));
}
.staff-editor-head>div:first-child{min-width:0}
.staff-editor-head span,.staff-editor-head #staffModalEyebrow{
  display:block;
  margin-bottom:7px;
  color:var(--ui-accent);
  font-size:10px;
  font-weight:900;
  letter-spacing:.14em;
}
.staff-editor-head h2{margin:0 0 6px;font-size:27px;line-height:1.1;letter-spacing:-.03em;color:var(--ui-ink)}
.staff-editor-head p{margin:0;color:var(--ui-muted);font-size:13px;line-height:1.4}
.staff-editor-head .close-modal{
  flex:0 0 auto;
  width:42px;
  height:42px;
  margin-left:auto;
  border:1px solid var(--ui-line);
  border-radius:12px;
  background:var(--ui-surface-soft);
  color:var(--ui-ink);
  font-size:26px;
  line-height:1;
}
.staff-editor-head .close-modal:hover{border-color:var(--ui-accent);background:var(--ui-accent-soft);color:var(--ui-ink)}
.staff-editor-identity{
  gap:13px;
  padding:14px 30px;
  border:0;
  border-bottom:1px solid var(--ui-line);
  background:var(--ui-surface-soft);
}
.staff-editor-identity>span{width:44px;height:44px;background:var(--ui-ink);color:var(--ui-accent);font-size:12px}
.staff-editor-identity strong{font-size:14px;color:var(--ui-ink)}
.staff-editor-identity small{margin-top:3px;color:var(--ui-muted);font-size:11px}
.staff-editor-body{
  display:grid;
  grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);
  grid-template-areas:"ident position" "qual account";
  align-content:start;
  gap:14px;
  max-height:none;
  padding:20px 30px 24px;
  overflow:auto;
  background:var(--ui-bg);
  scrollbar-width:thin;
  scrollbar-color:var(--ui-line) transparent;
}
.staff-editor-body fieldset{
  min-width:0;
  margin:0;
  padding:21px;
  border:1px solid var(--ui-line);
  border-radius:15px;
  background:var(--ui-surface);
}
.staff-editor-body fieldset:nth-of-type(1){grid-area:ident}
.staff-editor-body fieldset:nth-of-type(2){grid-area:position}
.staff-editor-body fieldset:nth-of-type(3){grid-area:qual}
.staff-editor-body fieldset:nth-of-type(4){grid-area:account}
.staff-editor-body legend{gap:9px;padding:0 8px;color:var(--ui-ink);font-size:11px;letter-spacing:.08em}
.staff-editor-body legend b{width:26px;height:26px;background:var(--ui-accent-soft);color:var(--ui-accent);font-size:9px}
.staff-editor-body .form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 13px}
.staff-editor-body label{gap:7px;margin-bottom:14px;color:var(--ui-muted);font-size:11px;font-weight:800;letter-spacing:.04em}
.staff-editor-body input,.staff-editor-body select{
  height:46px;
  border:1px solid var(--ui-line);
  border-radius:9px;
  background:var(--ui-surface-soft);
  padding:0 13px;
  color:var(--ui-ink);
  font-size:14px;
}
.staff-editor-body input::placeholder{color:var(--ui-muted);opacity:.78}
.staff-editor-body input:focus,.staff-editor-body select:focus{border-color:var(--ui-accent);box-shadow:0 0 0 3px var(--ui-accent-soft);outline:none}
.staff-editor-body input[readonly]{background:var(--ui-bg);color:var(--ui-muted)}
.function-tag-editor,.course-tag-editor{
  margin:2px 0 13px;
  padding:14px;
  border:1px solid var(--ui-line);
  border-radius:11px;
  background:var(--ui-surface-soft);
}
.function-tag-editor>span,.course-tag-editor>span{display:block;margin-bottom:10px;color:var(--ui-muted);font-size:10px;font-weight:900;letter-spacing:.1em;text-transform:uppercase}
.function-tag-picker,.course-tag-picker{max-height:150px;overflow:auto;padding-right:2px;scrollbar-width:thin;scrollbar-color:var(--ui-line) transparent}
.function-tag-picker{gap:7px}
.function-tag-picker button,.course-tag-picker button{min-height:34px;border:1px solid var(--ui-line);border-radius:18px;background:var(--ui-surface);padding:0 11px;color:var(--ui-ink);font-size:11px}
.function-tag-picker button:hover,.course-tag-picker button:hover{border-color:var(--ui-accent)}
.function-tag-picker button.selected,.course-tag-picker button.selected{border-color:var(--ui-accent);background:var(--ui-accent-soft);color:var(--ui-ink);font-weight:850}
.function-tag-editor>small{display:block;margin-top:10px;color:var(--ui-muted);font-size:11px;line-height:1.4}
.staff-editor-body .staff-qualification-section,.staff-editor-body .staff-account-fields{grid-column:auto}
.staff-qualification-section>label{display:flex}
.staff-account-status{display:flex;align-items:center;gap:10px;margin:0 0 14px;padding:12px 13px;border:1px solid var(--ui-line);border-radius:10px;background:var(--ui-surface-soft)}
.staff-account-status>i{width:9px;height:9px;border-radius:50%;background:var(--ui-muted);box-shadow:0 0 0 4px color-mix(in srgb,var(--ui-muted),transparent 82%)}
.staff-account-status strong{display:block;color:var(--ui-ink);font-size:12px}.staff-account-status small{display:block;margin-top:3px;color:var(--ui-muted);font-size:10px}
.staff-editor-body .checkbox{display:flex;align-items:center;gap:10px;min-height:44px;margin:0 0 14px;padding:10px 12px;border:1px solid var(--ui-line);border-radius:9px;background:var(--ui-surface-soft);color:var(--ui-ink);font-size:12px;letter-spacing:0;text-transform:none}
.staff-editor-body .checkbox input{width:17px;height:17px;accent-color:var(--ui-accent)}
.staff-editor-body label small{display:block;color:var(--ui-muted);font-size:10px;font-weight:500;line-height:1.45;letter-spacing:0}
.staff-editor-modal .modal-actions{display:flex;align-items:center;gap:10px;margin:0;padding:14px 30px;border:0;border-top:1px solid var(--ui-line);background:var(--ui-surface)}
.staff-editor-modal .modal-actions>span{flex:1}
.staff-editor-modal .modal-actions .btn{min-height:42px;padding:0 19px;border-radius:9px;font-size:11px;font-weight:900;letter-spacing:.05em}
.staff-editor-modal .modal-actions .btn-primary{background:var(--ui-accent);color:#1d1d19}.staff-editor-modal .modal-actions .btn-primary:hover{filter:brightness(1.08)}
.staff-editor-modal .modal-actions .btn-outline{border-color:var(--ui-line);background:transparent;color:var(--ui-ink)}
.staff-editor-modal .modal-actions .btn-outline:hover{border-color:var(--ui-accent);background:var(--ui-accent-soft)}
.staff-editor-modal .modal-actions .staff-delete-button{margin-right:auto;border-color:#b96b63;background:transparent;color:#d48a80}
.staff-editor-modal .modal-actions .staff-delete-button:hover{border-color:#c85f55;background:#a94940;color:#fff}
@media(max-width:820px){
  .staff-editor-modal{width:min(720px,calc(100vw - 22px));max-height:calc(100vh - 22px)}
  .staff-editor-modal form{max-height:calc(100vh - 22px)}
  .staff-editor-body{grid-template-columns:1fr;grid-template-areas:"ident" "position" "qual" "account";padding:16px 20px 20px}
  .staff-editor-head,.staff-editor-identity{padding-left:20px;padding-right:20px}
  .staff-editor-modal .modal-actions{padding-left:20px;padding-right:20px}
}
@media(max-width:520px){
  .staff-editor-head h2{font-size:23px}.staff-editor-head p{font-size:12px}.staff-editor-body fieldset{padding:17px}.staff-editor-body .form-grid{grid-template-columns:1fr}.staff-editor-modal .modal-actions{display:grid;grid-template-columns:1fr 1fr}.staff-editor-modal .modal-actions>span{display:none}.staff-editor-modal .modal-actions .staff-delete-button{grid-column:1/-1;margin:0}.staff-editor-modal .modal-actions .btn{width:100%}
}

/* Efetivo — diretório renovado */
#staffView{
  max-width:1560px;
  margin:0 auto;
  padding-bottom:34px;
}
#staffView .staff-toolbar{
  align-items:flex-end;
  gap:22px;
  margin-bottom:22px;
}
#staffView .staff-toolbar>div{min-width:0}
#staffView .staff-toolbar h2{margin:7px 0 5px;font-size:30px;letter-spacing:-.035em}
#staffView .staff-toolbar p{font-size:13px;color:var(--ui-muted)}
#staffView .staff-toolbar .btn{min-height:44px;border-radius:10px;padding:0 19px;font-size:11px;font-weight:900;letter-spacing:.06em}
#staffView .staff-summary{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:16px}
#staffView .staff-summary article{
  position:relative;
  min-height:124px;
  overflow:hidden;
  padding:20px 21px;
  border:1px solid var(--ui-line);
  border-radius:14px;
  background:linear-gradient(145deg,var(--ui-surface),var(--ui-surface-soft));
  box-shadow:0 9px 24px rgba(16,17,14,.05);
}
#staffView .staff-summary article:before{position:absolute;top:0;left:0;right:0;height:3px;background:var(--ui-accent);content:""}
#staffView .staff-summary article:nth-child(2):before{background:#8b9bb6}
#staffView .staff-summary article:nth-child(3):before{background:#7b9d82}
#staffView .staff-summary article:nth-child(4):before{background:#c59b43}
#staffView .staff-summary article:after{right:-22px;bottom:-34px;width:92px;height:92px;border-color:var(--ui-line)}
#staffView .staff-summary span{font-size:10px;color:var(--ui-muted);letter-spacing:.12em}
#staffView .staff-summary strong{margin:10px 0 3px;font-size:32px;line-height:1;color:var(--ui-ink)}
#staffView .staff-summary small{font-size:11px;color:var(--ui-muted)}
#staffView .staff-controls{
  display:grid;
  grid-template-columns:minmax(260px,2fr) repeat(4,minmax(135px,1fr));
  align-items:end;
  gap:12px;
  margin-bottom:18px;
  padding:17px;
  border:1px solid var(--ui-line);
  border-radius:14px;
  background:var(--ui-surface);
  box-shadow:0 8px 22px rgba(16,17,14,.04);
}
#staffView .staff-controls label{gap:7px;color:var(--ui-muted);font-size:10px;letter-spacing:.08em}
#staffView .staff-controls .staff-search{grid-column:span 2}
#staffView .staff-controls input,#staffView .staff-controls select{height:44px;border:1px solid var(--ui-line);border-radius:9px;background:var(--ui-surface-soft);padding:0 12px;color:var(--ui-ink);font-size:13px;outline:none}
#staffView .staff-controls input:focus,#staffView .staff-controls select:focus{border-color:var(--ui-accent);box-shadow:0 0 0 3px var(--ui-accent-soft)}
#staffView .staff-controls>button{height:42px;border:1px solid var(--ui-line);border-radius:9px;background:var(--ui-surface-soft);padding:0 12px;color:var(--ui-ink);font-size:10px;font-weight:900;letter-spacing:.06em}
#staffView .staff-controls>button:hover{border-color:var(--ui-accent);background:var(--ui-accent-soft)}
#staffView .staff-controls>span{grid-column:5;align-self:center;justify-self:end;color:var(--ui-muted);font-size:11px}
#staffView .staff-directory{display:grid;gap:18px;margin-top:0}
#staffView .staff-group{
  overflow:hidden;
  border:1px solid var(--ui-line);
  border-radius:16px;
  background:var(--ui-surface);
  box-shadow:0 10px 28px rgba(16,17,14,.05);
}
#staffView .staff-group>header{
  position:relative;
  padding:17px 20px;
  border:0;
  border-bottom:1px solid var(--ui-line);
  border-radius:0;
  background:linear-gradient(135deg,var(--ui-surface-soft),var(--ui-surface));
}
#staffView .staff-group>header:before{top:15px;bottom:15px;width:4px;background:var(--ui-accent)}
#staffView .staff-group>header div{gap:12px}
#staffView .staff-group>header span{padding:5px 8px;border:1px solid var(--ui-line);border-radius:6px;background:var(--ui-surface);color:var(--ui-muted);font-size:10px}
#staffView .staff-group>header h3{font-size:16px;color:var(--ui-ink)}
#staffView .staff-group>header b{width:30px;height:30px;background:var(--ui-accent-soft);color:var(--ui-accent);font-size:11px}
#staffView .staff-card.staff-row{
  display:grid;
  grid-template-columns:minmax(265px,1.35fr) minmax(210px,1.08fr) minmax(180px,.88fr) minmax(190px,1fr) 105px;
  grid-template-areas:"identity assignment record qualifications actions";
  gap:20px;
  align-items:center;
  min-height:112px;
  padding:20px;
  border:0;
  border-bottom:1px solid var(--ui-line);
  background:var(--ui-surface);
  transition:background .18s,border-color .18s,box-shadow .18s,transform .18s;
}
#staffView .staff-card.staff-row:last-child{border-bottom:0}
#staffView .staff-card.staff-row:hover{position:relative;z-index:2;background:var(--ui-surface-soft);box-shadow:inset 3px 0 0 var(--ui-accent),0 8px 22px rgba(16,17,14,.08);transform:translateY(-1px)}
#staffView .staff-card-identity{grid-area:identity}
#staffView .staff-card-assignment{grid-area:assignment}
#staffView .staff-card-record{grid-area:record}
#staffView .staff-card-qualifications{grid-area:qualifications}
#staffView .staff-card-actions{grid-area:actions}
#staffView .staff-card .staff-person{gap:12px}
#staffView .staff-card .staff-person strong{font-size:14px;line-height:1.25;color:var(--ui-ink)}
#staffView .staff-card .staff-person small{margin-top:4px;font-size:10px;color:var(--ui-muted)}
#staffView .staff-card .avatar{width:44px;height:44px;font-size:11px;background:var(--ui-ink);color:var(--ui-accent)}
#staffView .staff-rank-line{gap:9px;padding-left:13px;border-left:1px solid var(--ui-line)}
#staffView .staff-rank-line b{font-size:11px!important;color:var(--ui-ink)}
#staffView .staff-rank-line small{margin-top:4px;font-size:10px;color:var(--ui-muted)}
#staffView .staff-card-label{margin-bottom:9px;color:var(--ui-muted);font-size:10px;letter-spacing:.11em}
#staffView .staff-function-tags{gap:6px}
#staffView .staff-function-tags span{padding:6px 8px;border:1px solid color-mix(in srgb,var(--ui-accent),var(--ui-line) 62%);border-radius:7px;background:var(--ui-accent-soft);color:var(--ui-ink);font-size:10px}
#staffView .staff-card-assignment>small{margin-top:9px;font-size:10px;color:var(--ui-muted)}
#staffView .staff-card-record>div{gap:7px}
#staffView .staff-card-record>div>span{padding:9px 10px;border:1px solid var(--ui-line);border-radius:8px;background:var(--ui-surface-soft)}
#staffView .staff-card-record small{margin:0 0 5px;font-size:9px;color:var(--ui-muted)}
#staffView .staff-card-record b{font-size:11px!important;color:var(--ui-ink)}
#staffView .staff-card-qualifications .staff-qualifications{gap:7px}
#staffView .staff-card-qualifications .qualification-popover summary{min-height:38px;padding:9px 10px;border:1px solid var(--ui-line);border-radius:8px;background:var(--ui-surface-soft);color:var(--ui-ink);font-size:10px}
#staffView .staff-card-actions{gap:9px}
#staffView .staff-card-actions .staff-status{justify-content:center;min-height:31px;padding:0 9px;border-radius:8px;font-size:10px}
#staffView .staff-card-actions .staff-edit-button{width:100%;min-height:35px;border:1px solid var(--ui-line);border-radius:8px;background:transparent;color:var(--ui-ink);font-size:10px;font-weight:900;letter-spacing:.06em}
#staffView .staff-card-actions .staff-edit-button:hover{border-color:var(--ui-accent);background:var(--ui-accent-soft)}
#staffView .account-badge{margin-top:5px;font-size:10px}
#staffView .staff-empty{padding:46px 24px;border:1px dashed var(--ui-line);border-radius:14px;background:var(--ui-surface);text-align:center}
@media(max-width:1250px){
  #staffView .staff-controls{grid-template-columns:minmax(220px,2fr) repeat(3,minmax(135px,1fr))}
  #staffView .staff-controls .staff-search{grid-column:span 2}
  #staffView .staff-controls>span{grid-column:4}
  #staffView .staff-card.staff-row{grid-template-columns:minmax(250px,1.25fr) minmax(190px,1fr) minmax(160px,.9fr) 104px;grid-template-areas:"identity assignment actions actions" "record qualifications actions actions";gap:16px}
  #staffView .staff-card-qualifications{min-width:0}
}
@media(max-width:860px){
  #staffView .staff-summary{grid-template-columns:repeat(2,minmax(0,1fr))}
  #staffView .staff-controls{grid-template-columns:repeat(2,minmax(0,1fr))}
  #staffView .staff-controls .staff-search{grid-column:1/-1}
  #staffView .staff-controls>span{grid-column:1/-1;justify-self:start}
  #staffView .staff-card.staff-row{grid-template-columns:1fr auto;grid-template-areas:"identity actions" "assignment actions" "record actions" "qualifications actions";gap:14px;padding:17px}
}
@media(max-width:620px){
  #staffView{padding-right:12px;padding-left:12px}
  #staffView .staff-toolbar{align-items:stretch;gap:14px}
  #staffView .staff-toolbar .btn{width:100%}
  #staffView .staff-toolbar h2{font-size:25px}
  #staffView .staff-summary{grid-template-columns:1fr 1fr;gap:9px}
  #staffView .staff-summary article{min-height:96px;padding:16px}
  #staffView .staff-summary strong{font-size:27px}
  #staffView .staff-summary small{font-size:10px}
  #staffView .staff-filter-toggle{display:grid;width:100%;min-height:46px;margin:0 0 9px;border:1px solid var(--ui-line);border-radius:10px;background:var(--ui-surface);padding:0 13px;color:var(--ui-ink);text-align:left}
  #staffView .staff-controls{display:none;grid-template-columns:1fr!important;gap:10px;margin:0 0 14px;padding:13px}
  #staffView .staff-controls.mobile-open{display:grid}
  #staffView .staff-controls .staff-search{grid-column:auto}
  #staffView .staff-controls>span{grid-column:auto}
  #staffView .staff-controls>button{width:100%}
  #staffView .staff-group>header{padding:14px 15px}
  #staffView .staff-group>header h3{font-size:14px}
  #staffView .staff-card.staff-row{grid-template-columns:1fr;grid-template-areas:"identity" "assignment" "record" "qualifications" "actions";gap:0;padding:16px;border-bottom:1px solid var(--ui-line)}
  #staffView .staff-card-identity{grid-template-columns:minmax(0,1fr);gap:10px}
  #staffView .staff-rank-line{padding:10px 0 0;border-top:1px solid var(--ui-line);border-left:0}
  #staffView .staff-card-assignment,#staffView .staff-card-record,#staffView .staff-card-qualifications,#staffView .staff-card-actions{margin-top:13px;padding-top:13px;border-top:1px solid var(--ui-line)}
  #staffView .staff-card-actions{flex-direction:row;align-items:center}
  #staffView .staff-card-actions>*{flex:1}
}
@media(max-width:390px){#staffView .staff-summary{grid-template-columns:1fr}.staff-summary article{min-height:86px}}

/* Efetivo — painéis alinhados */
#staffView .staff-card.staff-row{
  grid-template-columns:minmax(280px,1.35fr) minmax(220px,1.05fr) minmax(185px,.9fr) minmax(205px,1fr) 108px;
  gap:12px;
  padding:14px 16px;
  background:var(--ui-surface);
}
#staffView .staff-card.staff-row>div:not(.staff-card-actions){
  min-width:0;
  min-height:86px;
  padding:13px 14px;
  border:1px solid var(--ui-line);
  border-radius:11px;
  background:var(--ui-surface-soft);
}
#staffView .staff-card.staff-row:hover{background:var(--ui-surface)}
#staffView .staff-card.staff-row:hover>div:not(.staff-card-actions){border-color:color-mix(in srgb,var(--ui-accent),var(--ui-line) 65%)}
#staffView .staff-card-identity{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(112px,.9fr);align-items:center;gap:12px}
#staffView .staff-card-identity .staff-rank-line{padding-left:12px}
#staffView .staff-card-assignment,#staffView .staff-card-record,#staffView .staff-card-qualifications{display:flex;flex-direction:column;justify-content:center}
#staffView .staff-card-actions{align-self:stretch;justify-content:center;gap:8px;padding:3px 0}
#staffView .staff-card-actions .staff-status,#staffView .staff-card-actions .staff-edit-button{min-height:39px}
#staffView .staff-card-actions .staff-edit-button{background:var(--ui-surface-soft)}
#staffView .staff-card-actions .staff-edit-button:hover{background:var(--ui-accent-soft)}
@media(max-width:1250px){
  #staffView .staff-card.staff-row{grid-template-columns:minmax(245px,1.25fr) minmax(190px,1fr) minmax(170px,.9fr) 106px;grid-template-areas:"identity assignment actions actions" "record qualifications actions actions"}
}
@media(max-width:860px){
  #staffView .staff-card.staff-row{grid-template-columns:1fr auto;grid-template-areas:"identity actions" "assignment actions" "record actions" "qualifications actions";gap:10px}
}
@media(max-width:620px){
  #staffView .staff-card.staff-row{grid-template-columns:1fr;grid-template-areas:"identity" "assignment" "record" "qualifications" "actions";gap:0;padding:14px}
  #staffView .staff-card.staff-row>div:not(.staff-card-actions){min-height:0;padding:13px;border-radius:10px}
  #staffView .staff-card-identity{grid-template-columns:1fr}
  #staffView .staff-card-actions{padding:12px 0 0}
}

/* Efetivo — listagem horizontal limpa, sem cartões aninhados */
#staffView .staff-group{
  overflow:hidden;
  border:1px solid var(--ui-line);
  border-radius:17px;
  background:var(--ui-surface);
  box-shadow:0 8px 25px rgba(16,17,14,.05);
}
#staffView .staff-group>header{
  min-height:64px;
  padding:16px 21px;
  border-bottom:1px solid var(--ui-line);
  background:var(--ui-surface-soft);
}
#staffView .staff-group>header:before{top:17px;bottom:17px;width:3px}
#staffView .staff-group>header h3{font-size:17px;letter-spacing:-.01em}
#staffView .staff-group>header b{width:29px;height:29px;border:1px solid var(--ui-line);background:var(--ui-surface);color:var(--ui-accent)}
#staffView .staff-card.staff-row{
  display:grid;
  grid-template-columns:minmax(310px,1.38fr) minmax(215px,.98fr) minmax(190px,.86fr) minmax(220px,1.05fr) 116px;
  grid-template-areas:"identity assignment record qualifications actions";
  gap:0;
  align-items:stretch;
  min-height:116px;
  padding:0;
  border:0;
  border-bottom:1px solid var(--ui-line);
  border-radius:0;
  background:var(--ui-surface);
  box-shadow:none;
  transform:none!important;
}
#staffView .staff-card.staff-row:last-child{border-bottom:0}
#staffView .staff-card.staff-row:hover{background:var(--ui-surface-soft);box-shadow:none}
#staffView .staff-card.staff-row>div{
  min-width:0;
  min-height:116px;
  padding:17px 18px;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
}
#staffView .staff-card.staff-row>div+div{border-left:1px solid var(--ui-line)!important}
#staffView .staff-card-identity{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(115px,.95fr);align-items:center;gap:14px}
#staffView .staff-card-identity .staff-rank-line{min-width:0;padding-left:14px;border-left:1px solid var(--ui-line)}
#staffView .staff-card-assignment,#staffView .staff-card-record,#staffView .staff-card-qualifications{display:flex;flex-direction:column;justify-content:center}
#staffView .staff-card-label{margin-bottom:8px;color:var(--ui-muted);font-size:9px;letter-spacing:.13em}
#staffView .staff-card .staff-person strong{font-size:14px}
#staffView .staff-card .staff-person small{font-size:10px}
#staffView .staff-function-tags{gap:5px}
#staffView .staff-function-tags span{padding:5px 7px;border:1px solid color-mix(in srgb,var(--ui-accent),var(--ui-line) 62%);border-radius:6px;background:var(--ui-accent-soft);font-size:10px}
#staffView .staff-card-record>div{gap:11px}
#staffView .staff-card-record>div>span{padding:0;border:0;border-radius:0;background:transparent}
#staffView .staff-card-record small{margin:0 0 4px;font-size:9px}
#staffView .staff-card-record b{font-size:11px!important}
#staffView .staff-card-qualifications .staff-qualifications{gap:6px}
#staffView .staff-card-qualifications .qualification-popover summary{min-height:35px;padding:8px 9px;border:1px solid var(--ui-line);border-radius:7px;background:transparent;color:var(--ui-ink);font-size:10px}
#staffView .staff-card-actions{display:flex;flex-direction:column;justify-content:center;gap:8px;padding:17px 15px!important}
#staffView .staff-card-actions .staff-status,#staffView .staff-card-actions .staff-edit-button{min-height:36px}
#staffView .staff-card-actions .staff-edit-button{background:transparent}
#staffView .staff-card-actions .staff-edit-button:hover{background:var(--ui-accent-soft)}
@media(max-width:1250px){
  #staffView .staff-card.staff-row{grid-template-columns:minmax(265px,1.25fr) minmax(195px,1fr) minmax(170px,.9fr) 108px;grid-template-areas:"identity assignment actions actions" "record qualifications actions actions"}
  #staffView .staff-card.staff-row>div{min-height:91px}
}
@media(max-width:860px){
  #staffView .staff-card.staff-row{grid-template-columns:minmax(0,1fr) 108px;grid-template-areas:"identity actions" "assignment actions" "record actions" "qualifications actions"}
  #staffView .staff-card.staff-row>div{min-height:78px}
  #staffView .staff-card.staff-row>div+div{border-left:0!important;border-top:1px solid var(--ui-line)!important}
  #staffView .staff-card-actions{border-left:1px solid var(--ui-line)!important;border-top:0!important}
}
@media(max-width:620px){
  #staffView .staff-card.staff-row{grid-template-columns:1fr;grid-template-areas:"identity" "assignment" "record" "qualifications" "actions";min-height:0}
  #staffView .staff-card.staff-row>div{min-height:0;padding:13px 14px}
  #staffView .staff-card.staff-row>div+div{border-top:1px solid var(--ui-line)!important}
  #staffView .staff-card-identity{grid-template-columns:1fr;gap:10px}
  #staffView .staff-card-identity .staff-rank-line{padding:10px 0 0;border-top:1px solid var(--ui-line);border-left:0}
  #staffView .staff-card-actions{flex-direction:row;padding:13px 14px!important}
}

/* Efetivo — acabamento premium em modo escuro */
#staffView .staff-group{
  border-color:#3c3e37;
  background:linear-gradient(180deg,#171916 0%,#121411 100%);
  box-shadow:0 24px 48px rgba(0,0,0,.18);
}
#staffView .staff-group>header{
  min-height:70px;
  padding:18px 24px;
  border-bottom-color:#3c3e37;
  background:linear-gradient(100deg,#252820 0%,#1a1c18 56%,#161814 100%);
}
#staffView .staff-group>header:before{top:18px;bottom:18px;width:4px;background:linear-gradient(180deg,#e4c46b,#9a7224);box-shadow:0 0 16px rgba(208,172,85,.22)}
#staffView .staff-group>header span{border-color:#4b4d45;background:#1a1c18;color:#d2b86c}
#staffView .staff-group>header h3{font-size:18px;color:#f4f2e9;letter-spacing:-.02em}
#staffView .staff-group>header b{border-color:#695523;background:#302817;color:#e4c46b;box-shadow:0 0 0 4px #1c1e19}
#staffView .staff-card.staff-row{
  grid-template-columns:minmax(315px,1.4fr) minmax(220px,1fr) minmax(190px,.88fr) minmax(225px,1.05fr) 118px;
  gap:0;
  min-height:124px;
  margin:12px;
  padding:0;
  border:1px solid #353831!important;
  border-radius:15px!important;
  background:linear-gradient(120deg,#21231f 0%,#191b18 72%,#171916 100%)!important;
  box-shadow:0 10px 24px rgba(0,0,0,.22),inset 0 1px 0 #ffffff08;
  transition:border-color .2s,box-shadow .2s,transform .2s;
}
#staffView .staff-card.staff-row:last-child{border-bottom:1px solid #353831}
#staffView .staff-card.staff-row:hover{border-color:#79602b!important;background:linear-gradient(120deg,#282b24 0%,#1c1f1a 72%,#191b18 100%)!important;box-shadow:0 14px 30px rgba(0,0,0,.3),0 0 0 1px #876b31;transform:translateY(-2px)!important}
#staffView .staff-card.staff-row>div{min-height:124px;padding:18px 19px;border:0!important;background:transparent!important}
#staffView .staff-card.staff-row>div+div{border-left:1px solid #343730!important}
#staffView .staff-card-identity{position:relative;grid-template-columns:minmax(0,1.06fr) minmax(120px,.94fr);gap:15px;padding-left:25px!important;border-radius:14px 0 0 14px!important;background:linear-gradient(100deg,#252820,#20221e)!important}
#staffView .staff-card-identity:before{position:absolute;top:18px;bottom:18px;left:0;width:4px;border-radius:0 4px 4px 0;background:linear-gradient(180deg,#e0bd59,#8c651c);box-shadow:0 0 14px rgba(208,172,85,.18);content:""}
#staffView .staff-card .avatar{width:47px;height:47px;border:1px solid #806525;background:#11130f;color:#e2c36a;box-shadow:0 0 0 4px #ffffff06}
#staffView .staff-card .staff-person strong{font-size:15px;color:#f4f2e9}
#staffView .staff-card .staff-person small{color:#a9aaa2;font-size:10px}
#staffView .staff-card-identity .staff-rank-line{padding-left:15px;border-left-color:#45483f}
#staffView .staff-rank-line b{color:#f2f0e7;font-size:11px!important}
#staffView .staff-rank-line small{color:#a8a99f;font-size:10px}
#staffView .staff-card-label{color:#c3a45a;font-size:9px;font-weight:900;letter-spacing:.14em}
#staffView .staff-card-assignment{background:linear-gradient(180deg,#1d201b,#1a1c18)!important}
#staffView .staff-function-tags span{border-color:#78602d;background:#332b1c;color:#efd487;box-shadow:inset 0 1px 0 #ffffff08}
#staffView .staff-card-assignment>small{color:#999b93;font-size:10px}
#staffView .staff-card-record{background:#1b1d19!important}
#staffView .staff-card-record>div>span{padding:10px 10px;border:1px solid #3c4037;border-radius:9px;background:#242720}
#staffView .staff-card-record small{color:#93958e;font-size:9px}
#staffView .staff-card-record b{color:#eeeade;font-size:11px!important}
#staffView .staff-card-qualifications{background:#1d201b!important}
#staffView .staff-card-qualifications .qualification-popover summary{border-color:#3d4138;background:#242720;color:#eeeade}
#staffView .staff-card-qualifications .qualification-popover summary:hover{border-color:#8a6a2d;background:#302a1c}
#staffView .staff-card-actions{align-self:stretch;justify-content:center;gap:9px;padding:18px 15px!important;border-radius:0 14px 14px 0!important;background:linear-gradient(180deg,#20231e,#191b18)!important}
#staffView .staff-card-actions .staff-status{border:1px solid #2d6a45;background:#173223;color:#85d7a0;box-shadow:0 0 0 3px #2d6a451c}
#staffView .staff-card-actions .staff-edit-button{border-color:#454940;color:#eeeade;background:#242720!important}
#staffView .staff-card-actions .staff-edit-button:hover{border-color:#a17b31;background:#332b1c!important;color:#f0d17a}
#staffView .account-badge.active{border-color:#2d6a45;background:#173223;color:#85d7a0}
@media(max-width:1250px){
  #staffView .staff-card.staff-row{grid-template-columns:minmax(270px,1.28fr) minmax(205px,1fr) minmax(170px,.9fr) 110px;grid-template-areas:"identity assignment actions actions" "record qualifications actions actions"}
}
@media(max-width:860px){
  #staffView .staff-card.staff-row{grid-template-columns:minmax(0,1fr) 112px;grid-template-areas:"identity actions" "assignment actions" "record actions" "qualifications actions"}
  #staffView .staff-card.staff-row>div{min-height:86px}
  #staffView .staff-card.staff-row>div+div{border-top:1px solid #343730!important;border-left:0!important}
  #staffView .staff-card-actions{border-top:0!important;border-left:1px solid #343730!important}
}
@media(max-width:620px){
  #staffView .staff-card.staff-row{grid-template-columns:1fr;grid-template-areas:"identity" "assignment" "record" "qualifications" "actions";margin:9px 8px}
  #staffView .staff-card.staff-row>div{min-height:0;padding:14px 16px}
  #staffView .staff-card-identity{grid-template-columns:1fr;gap:11px;padding-left:20px!important;border-radius:13px 13px 0 0!important}
  #staffView .staff-card-identity:before{top:15px;bottom:15px}
  #staffView .staff-card-identity .staff-rank-line{padding:11px 0 0;border-top:1px solid #3b3e36;border-left:0}
  #staffView .staff-card.staff-row>div+div{border-top:1px solid #343730!important}
  #staffView .staff-card-actions{flex-direction:row;padding:14px 16px!important;border-radius:0 0 13px 13px!important;border-left:0!important}
}

/* Mantém a mesma composição elegante quando o usuário alterna para o tema claro. */
html:not([data-theme="dark"]) .system-page #staffView .staff-group{border-color:var(--ui-line);background:linear-gradient(180deg,var(--ui-surface),var(--ui-surface-soft));box-shadow:0 18px 38px rgba(28,29,24,.08)}
html:not([data-theme="dark"]) .system-page #staffView .staff-group>header{border-bottom-color:var(--ui-line);background:linear-gradient(100deg,var(--ui-surface-soft),var(--ui-surface))}
html:not([data-theme="dark"]) .system-page #staffView .staff-group>header h3{color:var(--ui-ink)}
html:not([data-theme="dark"]) .system-page #staffView .staff-group>header span{border-color:var(--ui-line);background:var(--ui-surface);color:var(--ui-muted)}
html:not([data-theme="dark"]) .system-page #staffView .staff-group>header b{border-color:var(--ui-line);background:var(--ui-accent-soft);color:var(--ui-accent);box-shadow:0 0 0 4px var(--ui-surface-soft)}
html:not([data-theme="dark"]) .system-page #staffView .staff-card.staff-row{border-color:var(--ui-line)!important;background:linear-gradient(120deg,var(--ui-surface),var(--ui-surface-soft))!important;box-shadow:0 8px 22px rgba(28,29,24,.07),inset 0 1px 0 #ffffffb8}
html:not([data-theme="dark"]) .system-page #staffView .staff-card.staff-row:hover{border-color:var(--ui-accent)!important;background:var(--ui-surface-soft)!important;box-shadow:0 12px 26px rgba(28,29,24,.11),0 0 0 1px var(--ui-accent)!important}
html:not([data-theme="dark"]) .system-page #staffView .staff-card.staff-row>div+div{border-left-color:var(--ui-line)!important}
html:not([data-theme="dark"]) .system-page #staffView .staff-card-identity{background:linear-gradient(100deg,var(--ui-surface-soft),var(--ui-surface))!important}
html:not([data-theme="dark"]) .system-page #staffView .staff-card .avatar{border-color:var(--ui-accent);background:var(--ui-ink);color:var(--ui-accent)}
html:not([data-theme="dark"]) .system-page #staffView .staff-card .staff-person strong,html:not([data-theme="dark"]) .system-page #staffView .staff-rank-line b{color:var(--ui-ink)}
html:not([data-theme="dark"]) .system-page #staffView .staff-card-assignment,html:not([data-theme="dark"]) .system-page #staffView .staff-card-record,html:not([data-theme="dark"]) .system-page #staffView .staff-card-qualifications,html:not([data-theme="dark"]) .system-page #staffView .staff-card-actions{background:transparent!important}
html:not([data-theme="dark"]) .system-page #staffView .staff-function-tags span{border-color:color-mix(in srgb,var(--ui-accent),var(--ui-line) 62%);background:var(--ui-accent-soft);color:var(--ui-ink)}
html:not([data-theme="dark"]) .system-page #staffView .staff-card-record>div>span{border-color:var(--ui-line);background:var(--ui-surface-soft)}
html:not([data-theme="dark"]) .system-page #staffView .staff-card-record small{color:var(--ui-muted)!important}
html:not([data-theme="dark"]) .system-page #staffView .staff-card-record b{color:var(--ui-ink)!important}
html:not([data-theme="dark"]) .system-page #staffView .staff-rank-line b{color:var(--ui-ink)!important}
html:not([data-theme="dark"]) .system-page #staffView .staff-rank-line small,html:not([data-theme="dark"]) .system-page #staffView .staff-card .staff-person small,html:not([data-theme="dark"]) .system-page #staffView .staff-card-assignment>small{color:var(--ui-muted)!important}
html:not([data-theme="dark"]) .system-page #staffView .staff-card-label{color:var(--ui-accent)!important}
html:not([data-theme="dark"]) .system-page #staffView .staff-card-qualifications .qualification-popover summary{border-color:var(--ui-line);background:var(--ui-surface-soft);color:var(--ui-ink)}
html:not([data-theme="dark"]) .system-page #staffView .staff-card-actions .staff-status{border-color:#b9d9c1;background:#eaf7ed;color:#277443;box-shadow:none}
html:not([data-theme="dark"]) .system-page #staffView .staff-card-actions .staff-edit-button{border-color:var(--ui-line);background:var(--ui-surface-soft)!important;color:var(--ui-ink)}

/* Ações do integrante — coluna estável e sem recorte */
#staffView .staff-card.staff-row{overflow:hidden}
#staffView .staff-card-actions{
  width:100%;
  min-width:0;
  box-sizing:border-box;
  align-self:stretch;
  justify-self:stretch;
  overflow:visible;
}
#staffView .staff-card-actions .staff-status,#staffView .staff-card-actions .staff-edit-button{
  display:flex;
  width:100%;
  min-width:0;
  box-sizing:border-box;
  align-items:center;
  justify-content:center;
  overflow:hidden;
  white-space:nowrap;
  text-overflow:ellipsis;
}
#staffView .staff-card-actions .staff-edit-button{padding:0 10px}
@media(max-width:620px){#staffView .staff-card-actions{width:100%;align-items:stretch}}

/* Cabeçalho do sistema — identidade e ações reorganizadas */
#dashboard .dashboard-header{
  display:flex;
  align-items:center;
  gap:18px;
  height:82px;
  padding:0 clamp(22px,2.8vw,48px);
  border-bottom:1px solid var(--ui-line);
  background:linear-gradient(100deg,var(--ui-bg),var(--ui-surface));
}
#dashboard .dashboard-header>div:first-of-type{display:flex;min-width:155px;flex-direction:column;gap:4px}
#dashboard .dashboard-header>div:first-of-type small{color:var(--ui-muted);font-size:9px;font-weight:800;letter-spacing:.12em}
#dashboard .dashboard-header h1{margin:0;color:var(--ui-ink);font-size:21px;font-weight:650;letter-spacing:-.035em}
#dashboard .header-tools{display:flex;align-items:center;gap:9px;margin-left:auto;position:relative}
#dashboard .global-search{position:relative;display:block}
#dashboard .global-search:before{position:absolute;z-index:1;left:14px;top:50%;color:var(--ui-muted);font-size:18px;line-height:1;transform:translateY(-54%);content:"⌕";pointer-events:none}
#dashboard .global-search input{
  width:260px;
  height:44px;
  box-sizing:border-box;
  border:1px solid var(--ui-line);
  border-radius:12px;
  background:var(--ui-surface-soft);
  padding:0 14px 0 39px;
  color:var(--ui-ink);
  font-size:13px;
  outline:none;
}
#dashboard .global-search input::placeholder{color:var(--ui-muted)}
#dashboard .global-search input:focus{border-color:var(--ui-accent);box-shadow:0 0 0 3px var(--ui-accent-soft)}
#dashboard .global-search>span{top:calc(100% + 10px);right:0;width:340px;border-color:var(--ui-line);background:var(--ui-surface);box-shadow:0 22px 60px rgba(0,0,0,.24)}
#dashboard .global-search>span button{color:var(--ui-ink)}
#dashboard .global-search>span button:hover{background:var(--ui-surface-soft)}
#dashboard .global-search>span small{color:var(--ui-muted)}
#dashboard .notification-button{
  width:44px;
  height:44px;
  border:1px solid var(--ui-line);
  border-radius:12px;
  background:var(--ui-surface-soft);
  color:var(--ui-accent);
}
#dashboard .notification-button:hover,#dashboard .notification-button[aria-expanded="true"]{border-color:var(--ui-accent);background:var(--ui-accent-soft);color:var(--ui-accent)}
#dashboard .user-box{
  display:flex;
  align-items:center;
  gap:11px;
  margin-left:4px;
  padding:5px 6px 5px 13px;
  border:1px solid var(--ui-line);
  border-radius:15px;
  background:var(--ui-surface);
}
#dashboard .user-box>div{display:flex;min-width:112px;flex-direction:column;gap:3px}
#dashboard .user-box>div strong{overflow:hidden;color:var(--ui-ink);font-size:12px;font-weight:800;text-overflow:ellipsis;white-space:nowrap}
#dashboard .user-box>div small{overflow:hidden;color:var(--ui-muted);font-size:10px;text-overflow:ellipsis;white-space:nowrap}
#dashboard .user-box>span{display:grid;width:40px;height:40px;place-items:center;border:1px solid color-mix(in srgb,var(--ui-accent),var(--ui-line) 45%);border-radius:12px;background:var(--ui-accent-soft);color:var(--ui-accent);font-size:11px;font-weight:900}
#dashboard .user-box button{display:grid;width:36px;height:36px;place-items:center;border:1px solid transparent;border-radius:10px;background:transparent;color:var(--ui-muted);font-size:17px;line-height:1;cursor:pointer}
#dashboard .user-box button:hover{border-color:var(--ui-line);background:var(--ui-surface-soft);color:var(--ui-ink)}
#dashboard .user-box .theme-toggle{width:36px;height:36px;border:1px solid var(--ui-line);border-radius:10px;background:var(--ui-surface-soft);color:var(--ui-accent)}
#dashboard .mobile-side-toggle{width:38px;height:38px;border:1px solid var(--ui-line);border-radius:10px;background:var(--ui-surface-soft);color:var(--ui-ink)}
@media(max-width:900px){
  #dashboard .dashboard-header{height:72px;padding-inline:16px;gap:10px}
  #dashboard .dashboard-header>div:first-of-type{min-width:0;flex:1}
  #dashboard .dashboard-header>div:first-of-type small{display:none}
  #dashboard .dashboard-header h1{font-size:18px}
  #dashboard .header-tools{display:flex;margin-left:auto}
  #dashboard .global-search{display:none}
  #dashboard .user-box{margin-left:0;padding-left:6px;border:0;background:transparent}
  #dashboard .user-box>div{display:none}
  #dashboard .user-box>span{width:38px;height:38px}
}
@media(max-width:520px){#dashboard .dashboard-header{padding-inline:12px}#dashboard .notification-button{width:38px;height:38px}#dashboard .user-box .theme-toggle,#dashboard .user-box>span{width:36px;height:36px}#dashboard .mobile-side-toggle{width:36px;height:36px}}

/* Administração — central de controle organizada */
#auditView{max-width:1540px}
#auditView>.view-toolbar{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:24px;
  margin-bottom:18px;
  padding:25px 27px;
  border:1px solid var(--ui-line);
  border-radius:18px;
  background:linear-gradient(115deg,var(--ui-surface-soft),var(--ui-surface));
  box-shadow:0 14px 32px rgba(20,20,16,.06);
}
#auditView>.view-toolbar h2{margin:7px 0 5px;font-size:29px}
#auditView>.view-toolbar p{margin:0;color:var(--ui-muted);font-size:13px}
#auditView>.view-toolbar #createBackupButton{min-height:44px;border-radius:10px;padding:0 18px;font-size:10px;font-weight:900;letter-spacing:.07em}
#auditView .access-summary{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:16px}
#auditView .access-summary article{
  position:relative;
  min-height:124px;
  overflow:hidden;
  gap:9px;
  padding:20px 21px;
  border:1px solid var(--ui-line);
  border-radius:14px;
  background:linear-gradient(145deg,var(--ui-surface),var(--ui-surface-soft));
  box-shadow:0 8px 24px rgba(20,20,16,.05);
}
#auditView .access-summary article:before{position:absolute;top:0;left:0;right:0;height:3px;background:var(--ui-accent);content:""}
#auditView .access-summary article:nth-child(2):before{background:#6eaa7c}
#auditView .access-summary article:nth-child(3):before{background:#8d9fbe}
#auditView .access-summary article:nth-child(4):before{background:#c18f42}
#auditView .access-summary span{font-size:10px;color:var(--ui-muted);letter-spacing:.12em}
#auditView .access-summary strong{font-size:34px;line-height:1;color:var(--ui-ink)}
#auditView .access-summary small{font-size:11px;color:var(--ui-muted)}
#auditView .access-panel{overflow:hidden;margin-bottom:25px;border:1px solid var(--ui-line);border-radius:16px;background:var(--ui-surface);box-shadow:0 12px 28px rgba(20,20,16,.06)}
#auditView .access-panel-head{align-items:center;padding:20px 23px;border-bottom:1px solid var(--ui-line);background:var(--ui-surface-soft)}
#auditView .access-panel-head span,#auditView .audit-section-title span{font-size:10px;letter-spacing:.13em;color:var(--ui-accent)}
#auditView .access-panel-head h3{margin:6px 0 0;font-size:18px;color:var(--ui-ink)}
#auditView .access-panel-head p{margin:5px 0 0;color:var(--ui-muted);font-size:11px}
#auditView .access-panel-head label{gap:7px;color:var(--ui-muted);font-size:10px}
#auditView .access-panel-head input{width:260px;height:42px;border:1px solid var(--ui-line);border-radius:9px;background:var(--ui-surface);padding:0 12px;color:var(--ui-ink);font-size:13px}
#auditView .access-panel-head input:focus{border-color:var(--ui-accent);box-shadow:0 0 0 3px var(--ui-accent-soft);outline:none}
#auditView .access-table{min-width:900px;border-collapse:collapse}
#auditView .access-table th{height:44px;padding:0 16px;background:var(--ui-surface);color:var(--ui-muted);font-size:9px;letter-spacing:.1em}
#auditView .access-table td{padding:14px 16px;border-top:1px solid var(--ui-line);color:var(--ui-ink);font-size:12px}
#auditView .access-table tbody tr:hover{background:var(--ui-surface-soft)}
#auditView .access-account{gap:5px}.access-account strong{font-size:12px;color:var(--ui-ink)}.access-account small{font-size:10px;color:var(--ui-muted)}
#auditView .access-person-button{display:inline-flex;align-items:center;gap:7px;border:0;background:none;padding:2px 0;color:var(--ui-ink);font:700 12px Inter,"Helvetica Neue",Arial,sans-serif;text-align:left;cursor:pointer}
#auditView .access-person-button span{color:var(--ui-accent);font-size:13px;transition:transform .18s}
#auditView .access-person-button:hover,#auditView .access-person-button:focus-visible{color:var(--ui-accent);text-decoration:underline;text-underline-offset:3px}
#auditView .access-person-button:hover span{transform:translate(2px,-2px)}
#auditView .access-person-button:focus-visible{outline:2px solid var(--ui-accent);outline-offset:3px;border-radius:3px}
#auditView .access-state{padding:6px 9px;border:1px solid var(--ui-line);border-radius:7px;background:var(--ui-surface-soft);color:var(--ui-muted);font-size:10px}
#auditView .access-state.online{border-color:#4d9a68;background:color-mix(in srgb,#2f9c59,var(--ui-surface) 82%);color:#63d28a}
#auditView .access-state.disabled{border-color:#b47868;background:color-mix(in srgb,#a95343,var(--ui-surface) 84%);color:#d99587}
#auditView .table-subline{font-size:10px;color:var(--ui-muted)}
#auditView .permission-manage-button{min-height:34px;border:1px solid var(--ui-line);border-radius:8px;background:var(--ui-surface-soft);padding:0 12px;color:var(--ui-ink);font-size:10px;font-weight:900;letter-spacing:.04em;cursor:pointer}
#auditView .permission-manage-button:hover{border-color:var(--ui-accent);background:var(--ui-accent-soft)}
#auditView .audit-section-title{display:flex;align-items:center;gap:16px;margin:28px 0 11px;padding:0 2px}
#auditView .audit-section-title:after{height:1px;flex:1;background:var(--ui-line);content:""}
#auditView .audit-section-title h3{margin:6px 0 0;color:var(--ui-ink);font-size:18px}
#auditView>#backupList{position:relative;display:grid;gap:0;margin-bottom:16px;padding:48px 20px 14px;border:1px solid var(--ui-line);border-radius:14px;background:var(--ui-surface);box-shadow:0 8px 24px rgba(20,20,16,.04)}
#auditView>#backupList:before{position:absolute;top:18px;left:20px;color:var(--ui-muted);font-size:10px;font-weight:900;letter-spacing:.13em;content:"BACKUPS DE SEGURANÇA"}
#auditView>#backupList>div{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:13px 0;border-bottom:1px solid var(--ui-line)}
#auditView>#backupList>div:last-child{border-bottom:0}
#auditView>#backupList>div strong{font-size:12px;color:var(--ui-ink)}
#auditView>#backupList>div small{margin-top:4px;color:var(--ui-muted);font-size:10px}
#auditView>#backupList>div button{min-height:32px;border:1px solid var(--ui-line);border-radius:8px;background:var(--ui-surface-soft);padding:0 11px;color:var(--ui-ink);font-size:10px;font-weight:900;cursor:pointer}
#auditView>#backupList>div button:hover{border-color:var(--ui-accent);background:var(--ui-accent-soft)}
#auditView>.panel:last-child{overflow:hidden;border:1px solid var(--ui-line);border-radius:14px;background:var(--ui-surface);box-shadow:0 8px 24px rgba(20,20,16,.04)}
#auditView>.panel:last-child table{min-width:820px}
#auditView>.panel:last-child th{height:43px;padding:0 16px;background:var(--ui-surface-soft);color:var(--ui-muted);font-size:9px;letter-spacing:.1em}
#auditView>.panel:last-child td{padding:13px 16px;border-top:1px solid var(--ui-line);color:var(--ui-ink);font-size:11px}
@media(max-width:950px){
  #auditView .access-summary{grid-template-columns:1fr 1fr}
  #auditView>.view-toolbar{align-items:stretch;flex-direction:column}
  #auditView>.view-toolbar #createBackupButton{align-self:flex-start}
}
@media(max-width:620px){
  #auditView .access-summary{grid-template-columns:1fr}
  #auditView>.view-toolbar{padding:20px}
  #auditView>.view-toolbar h2{font-size:25px}
  #auditView .access-panel-head{align-items:stretch;gap:14px;padding:17px}
  #auditView .access-panel-head input{width:100%}
  #auditView>#backupList{padding-inline:16px}
  #auditView>#backupList:before{left:16px}
}

/* Histórico individual de atividades da conta */
.account-activity-modal{width:min(720px,calc(100% - 28px));max-height:calc(100dvh - 32px);overflow:auto;border:1px solid var(--ui-line);border-radius:18px;background:var(--ui-surface);color:var(--ui-ink);box-shadow:0 30px 80px rgba(0,0,0,.35)}
.account-activity-head{display:flex;justify-content:space-between;gap:20px;padding:27px 29px 22px;border-bottom:1px solid var(--ui-line);background:linear-gradient(120deg,var(--ui-surface-soft),var(--ui-surface))}
.account-activity-head span,.account-activity-section span{color:var(--ui-accent);font-size:10px;font-weight:850;letter-spacing:.12em}
.account-activity-head h2{margin:8px 0 5px;font-size:27px;line-height:1.15;color:var(--ui-ink)}
.account-activity-head p{margin:0;color:var(--ui-muted);font-size:12px}
.account-activity-close{flex:none;display:grid;place-items:center;width:34px;height:34px;border:1px solid var(--ui-line);border-radius:9px;background:var(--ui-surface);color:var(--ui-ink);font-size:24px;line-height:1;cursor:pointer}
.account-activity-close:hover{border-color:var(--ui-accent);color:var(--ui-accent)}
.account-activity-content{padding:24px 29px 27px}
.account-activity-metrics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.account-activity-metrics>div{display:flex;flex-direction:column;gap:8px;min-height:76px;padding:14px 16px;border:1px solid var(--ui-line);border-radius:10px;background:var(--ui-surface-soft)}
.account-activity-metrics span{color:var(--ui-muted);font-size:10px;font-weight:750;letter-spacing:.06em;text-transform:uppercase}
.account-activity-metrics strong{color:var(--ui-ink);font-size:15px;font-weight:750}
.account-activity-section{display:flex;align-items:end;justify-content:space-between;gap:12px;margin:27px 0 13px}
.account-activity-section h3{margin:4px 0 0;color:var(--ui-ink);font-size:17px}
.account-activity-section small{color:var(--ui-muted);font-size:11px}
.account-activity-timeline{display:grid;gap:0;max-height:360px;margin:0;padding:0;overflow:auto;list-style:none;border:1px solid var(--ui-line);border-radius:10px;background:var(--ui-surface)}
.account-activity-timeline li{display:grid;grid-template-columns:132px minmax(0,1fr);gap:16px;padding:15px 17px;border-bottom:1px solid var(--ui-line)}
.account-activity-timeline li:last-child{border-bottom:0}
.account-activity-timeline time{color:var(--ui-accent);font-size:11px;font-weight:800}
.account-activity-timeline strong{color:var(--ui-ink);font-size:12px}
.account-activity-timeline p{margin:5px 0 0;color:var(--ui-muted);font-size:11px;line-height:1.5;white-space:normal;overflow-wrap:anywhere}
.account-activity-empty{padding:24px;border:1px dashed var(--ui-line);border-radius:10px;background:var(--ui-surface-soft);color:var(--ui-muted);font-size:12px;line-height:1.6}
.account-activity-note{margin:14px 0 0;color:var(--ui-muted);font-size:10px;line-height:1.5}
@media(max-width:620px){.account-activity-head{padding:21px}.account-activity-head h2{font-size:22px}.account-activity-content{padding:18px 20px 22px}.account-activity-metrics{grid-template-columns:1fr}.account-activity-timeline li{grid-template-columns:1fr;gap:5px}.account-activity-section{align-items:start;flex-direction:column}}

/* Anexos do RSO — imagens visíveis e downloads com nome legível */
.rso-attachments-list{display:flex;flex-wrap:wrap;gap:10px;padding:12px 16px 16px}
.rso-attachment,.report-attachment-card{display:flex;align-items:center;gap:8px;min-width:0;border:1px solid var(--ui-line);border-radius:9px;background:var(--ui-surface-soft);color:var(--ui-ink);text-decoration:none}
.rso-attachment{padding:7px 10px}
.rso-attachment span,.report-attachment-card span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:11px}
.rso-attachment.is-image{width:150px;align-items:stretch;flex-direction:column;padding:6px;gap:6px}
.rso-attachment.is-image img{display:block;width:100%;height:92px;object-fit:cover;border-radius:6px;background:var(--ui-surface);}
.rso-attachment.is-image span{padding:0 3px 2px}
.rso-attachment:hover,.report-attachment-card:hover{border-color:var(--ui-accent);background:var(--ui-accent-soft)}
.report-detail-attachments{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:12px}
.report-detail-attachments .report-attachment-card{min-height:44px;padding:10px 12px}
.report-detail-attachments .report-attachment-card.is-image{display:flex;align-items:stretch;flex-direction:column;padding:7px;gap:8px}
.report-detail-attachments .report-attachment-card.is-image img{display:block;width:100%;height:132px;object-fit:cover;border-radius:7px;background:#ecebe6}
.report-detail-attachments .report-attachment-card.is-image span{padding:0 4px 3px}
#reportAttachmentList{display:flex;flex-wrap:wrap;gap:9px;margin-top:10px}
#reportAttachmentList .report-attachment-card{padding:7px 10px}
#reportAttachmentList .report-attachment-card.is-image{width:130px;align-items:stretch;flex-direction:column;padding:6px;gap:6px}
#reportAttachmentList .report-attachment-card.is-image img{width:100%;height:78px;object-fit:cover;border-radius:6px}
@media(max-width:620px){
  .rso-attachment.is-image{width:calc(50% - 5px)}
  .report-detail-attachments{grid-template-columns:repeat(2,minmax(0,1fr))}
}
