:root{--navy:#12324d;--navy2:#1b4969;--blue:#2874a6;--ink:#203244;--muted:#708193;--line:#e2eaf0;--bg:#f3f6f9;--green:#16845c;--amber:#a66b13}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font-family:Inter,"Segoe UI",Arial,sans-serif}.hidden{display:none!important}button,input,select{font:inherit}button{cursor:pointer}.login-shell{min-height:100vh;display:grid;place-items:center;padding:24px;background:radial-gradient(circle at 15% 15%,#2c6286 0,transparent 34%),linear-gradient(135deg,#0b2238,#1b4969)}.login-card{width:min(100%,440px);background:white;padding:40px;border-radius:24px;box-shadow:0 25px 80px #07182766}.brand-mark{width:62px;height:62px;border-radius:17px;display:grid;place-items:center;background:var(--navy);color:white;font-size:18px;font-weight:850;letter-spacing:1px;margin-bottom:27px}.eyebrow{font-size:10px;letter-spacing:1.6px;font-weight:800;color:#8293a2;margin:0 0 8px}.login-card h1{font-size:31px;line-height:1.13;color:var(--navy);letter-spacing:-.8px;margin:0}.muted{color:var(--muted);font-size:14px;line-height:1.55}.login-card form{display:grid;gap:9px;margin-top:26px}.login-card label,.filter-grid label{font-size:12px;font-weight:700;color:#506477}.login-card input,.filter-grid select,.search-box input{width:100%;border:1px solid #d8e2e9;border-radius:11px;background:#fff;padding:13px 14px;color:var(--ink);outline:none}.login-card input:focus,.filter-grid select:focus,.search-box:focus-within{border-color:#5b94bb;box-shadow:0 0 0 3px #2874a619}.login-card button,.search-button{border:0;border-radius:11px;background:var(--navy);color:#fff;font-weight:750;padding:14px;margin-top:9px}.login-card button:disabled{opacity:.6}.error{min-height:18px;margin:2px 0;color:#b42318;font-size:12px}.login-note{border-top:1px solid var(--line);padding-top:18px;margin-top:18px;text-align:center;color:#81909d;font-size:11px}.topbar{background:var(--navy);color:white;box-shadow:0 3px 12px #0b223822}.topbar-inner{max-width:1480px;margin:auto;padding:15px 30px;display:flex;justify-content:space-between;align-items:center}.brand-inline{display:flex;align-items:center;gap:12px}.brand-mark.small{width:43px;height:43px;margin:0;border-radius:12px;background:#285271;font-size:13px}.brand-inline .eyebrow{color:#a9c0d1;font-size:9px;margin-bottom:3px}.brand-inline strong{font-size:15px}.logout{border:1px solid #ffffff50;background:#ffffff0d;color:white;border-radius:9px;padding:9px 13px;font-size:12px}.container{max-width:1480px;margin:auto;padding:32px 30px 45px}.welcome{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:22px}.welcome h1{font-size:30px;letter-spacing:-.8px;color:var(--navy);margin:0}.welcome .muted{margin:7px 0 0}.blue{color:var(--blue)}.source-tag{background:white;border:1px solid var(--line);border-radius:30px;padding:9px 13px;color:#607487;font-size:11px;white-space:nowrap}.live-dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:#2b9b70;margin-right:7px}.stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-bottom:18px}.stat-card{display:flex;align-items:center;gap:13px;background:white;border:1px solid var(--line);border-radius:15px;padding:17px 19px;box-shadow:0 3px 12px #18364d08}.stat-icon{width:39px;height:39px;display:grid;place-items:center;border-radius:12px;background:#eaf1f6;color:var(--navy);font-size:20px;font-weight:800}.stat-icon.green{background:#e6f5ee;color:var(--green)}.stat-icon.amber{background:#fff3df;color:var(--amber)}.stat-icon.blue-icon{background:#e8f2fa;color:var(--blue)}.stat-card small{display:block;color:#718293;font-size:11px}.stat-card strong{display:block;color:var(--navy);font-size:25px;margin-top:3px}.panel{background:white;border:1px solid var(--line);border-radius:16px;box-shadow:0 3px 14px #18364d08;margin-bottom:18px}.search-panel{padding:23px}.panel-title,.results-top{display:flex;justify-content:space-between;align-items:center;gap:15px}.panel h2{font-size:18px;color:var(--navy);margin:0}.panel-title .eyebrow,.results-top .eyebrow{margin-bottom:5px}.clear-button{border:1px solid #dce6ed;background:white;border-radius:9px;padding:9px 12px;color:#3b6c8d;font-size:12px;font-weight:700}.search-row{display:flex;gap:10px;margin-top:18px}.search-box{position:relative;display:flex;align-items:center;flex:1;border:1px solid #d8e2e9;border-radius:12px;background:white}.search-icon{font-size:25px;color:#8395a4;padding-left:14px}.search-box input{border:0;box-shadow:none!important;padding:14px 12px}.search-clear{border:0;background:transparent;color:#748696;font-size:22px;padding:0 13px}.search-button{min-width:116px;margin:0;padding:0 22px}.helper{font-size:11px;color:#8493a0;margin:8px 0 20px}.filters-toggle{display:flex;align-items:baseline;gap:10px;border-top:1px solid #edf1f4;padding-top:17px;margin-bottom:13px;font-size:12px;font-weight:800;color:#40586b}.filter-hint{font-weight:400;color:#8795a1;font-size:11px}.filter-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.filter-grid label{display:grid;gap:7px}.filter-grid select{padding:11px 12px;font-size:12px}.results-panel{overflow:hidden}.results-top{padding:21px 23px}.small-muted{font-size:11px;margin:5px 0 0}.result-count{background:#eaf2f7;color:#365c77;border-radius:9px;padding:9px 12px;font-size:12px;font-weight:750;white-space:nowrap}.table-scroll{overflow:auto;border-top:1px solid var(--line)}table{width:100%;border-collapse:collapse;white-space:nowrap;font-size:12px}th{text-align:left;background:#f5f8fa;color:#607487;font-size:10px;letter-spacing:.45px;text-transform:uppercase;padding:13px 14px;border-bottom:1px solid var(--line)}td{padding:13px 14px;border-bottom:1px solid #edf1f4;color:#34495b}tbody tr:hover{background:#f7fbfd}.status{display:inline-block;padding:5px 8px;border-radius:30px;font-size:10px;font-weight:750}.s-ok{background:#e6f5ee;color:#17734e}.s-bad{background:#fdebea;color:#ae302b}.s-warn{background:#fff2d9;color:#98600a}.s-off{background:#edf0f3;color:#657382}.s-empty{background:#f2f3f5;color:#77818c}.empty{text-align:center;padding:38px;color:#81909c}.pagination{display:flex;justify-content:space-between;align-items:center;padding:14px 21px;color:#718092;font-size:11px}.page-btn{border:1px solid var(--line);background:white;border-radius:8px;padding:9px 12px;margin-left:5px;color:#40596d;font-size:11px}.page-btn:disabled{opacity:.4;cursor:not-allowed}footer{text-align:center;color:#8b99a6;font-size:11px;padding:4px 0 18px}@media(max-width:900px){.stats{grid-template-columns:repeat(2,1fr)}.filter-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:600px){.topbar-inner{padding:12px 14px}.brand-inline strong{font-size:12px}.brand-mark.small{width:38px;height:38px}.logout{padding:8px}.container{padding:23px 12px 35px}.welcome{display:block}.welcome h1{font-size:25px}.source-tag{display:inline-block;margin-top:13px}.stats{gap:8px}.stat-card{padding:12px;gap:9px}.stat-icon{width:32px;height:32px;font-size:16px}.stat-card small{font-size:10px}.stat-card strong{font-size:22px}.search-panel{padding:16px}.panel-title h2{font-size:16px}.search-row{gap:7px}.search-button{min-width:78px;padding:0 13px;font-size:12px}.search-box input{font-size:12px;padding:13px 7px}.filter-grid{grid-template-columns:1fr}.filter-hint{display:none}.results-top{padding:17px}.results-top h2{font-size:16px}.pagination{padding:12px;gap:8px}.page-btn{padding:8px}.login-card{padding:30px 24px}}
/* Interações: cartão de atenção e relatórios */
.attention-card{width:100%;text-align:left;font-family:inherit;cursor:pointer;transition:border-color .15s,transform .15s,box-shadow .15s}
.attention-card:hover,.attention-card:focus-visible{border-color:#e2b65f;box-shadow:0 5px 18px #a66b1318;transform:translateY(-1px);outline:none}
.stat-copy{display:block;min-width:0}.stat-copy em{display:block;margin-top:4px;color:#a66b13;font-size:10px;font-style:normal;font-weight:650}
.results-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;justify-content:flex-end}
.pdf-button{border:0;border-radius:9px;background:var(--navy);color:#fff;padding:10px 14px;font-size:11px;font-weight:750;white-space:nowrap}
.pdf-button:hover{background:var(--navy2)}
.dialog-open{overflow:hidden}.dialog-backdrop{position:fixed;inset:0;z-index:50;background:#102b46a8;display:grid;place-items:center;padding:20px}
.dialog-card{width:min(100%,900px);max-height:min(88vh,850px);overflow:auto;background:#fff;border-radius:18px;padding:24px;box-shadow:0 24px 80px #07182755}
.dialog-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:15px}.dialog-heading h2{margin:0;color:var(--navy);font-size:21px}.dialog-close{border:0;background:#edf2f5;color:#4d6273;width:34px;height:34px;border-radius:9px;font-size:23px;line-height:1}
.dialog-card>p.muted{max-width:760px;margin:12px 0 16px}.attention-breakdown{display:flex;gap:10px;flex-wrap:wrap;margin:12px 0 17px}.attention-chip{display:flex;align-items:center;gap:8px;background:#fff7e9;border:1px solid #f1dfbf;border-radius:10px;padding:9px 13px;color:#80540e;font-size:12px}.attention-chip strong{font-size:18px}.dialog-table{border:1px solid var(--line);border-radius:10px;max-height:42vh}.dialog-footnote{font-size:10px;color:#8795a1;margin:12px 0 0}
@media(max-width:600px){.results-actions{width:100%;justify-content:space-between}.results-top{align-items:flex-start;flex-wrap:wrap}.pdf-button{font-size:10px;padding:9px 10px}.dialog-card{padding:18px}.dialog-heading h2{font-size:18px}.dialog-backdrop{padding:10px}}
.attention-chip span{display:grid;gap:3px}.attention-chip small{font-size:10px;color:#806b4b;font-weight:400;white-space:normal;max-width:210px}


/* Página inicial do Sistema Integrado */
.home-shell{min-height:100vh;background:linear-gradient(145deg,#f4f8fb 0%,#eaf1f7 100%);color:#172b3b}
.home-header{height:82px;background:#102b46;color:#fff;display:flex;align-items:center;padding:0 max(24px,calc((100vw - 1180px)/2));box-shadow:0 4px 18px #102b4618}
.home-brand{display:flex;align-items:center;gap:13px}
.home-brand strong{display:block;font-size:16px;letter-spacing:.1px}
.home-brand .eyebrow{display:block;color:#b9d5e9;font-size:10px;letter-spacing:1.5px;margin-bottom:4px}
.home-main{max-width:1180px;margin:0 auto;padding:58px 24px 48px}
.home-intro{margin-bottom:34px}
.home-intro h1{font-size:clamp(27px,4vw,38px);line-height:1.15;color:#102b46;margin:7px 0 10px}
.home-intro .muted{font-size:15px}
.module-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.module-card{position:relative;display:flex;align-items:flex-start;gap:17px;min-height:220px;padding:25px 22px;border:1px solid #dce5ec;border-radius:17px;background:#fff;text-align:left;color:#172b3b;box-shadow:0 8px 26px #183b5510}
button.module-card{font:inherit;cursor:pointer;width:100%;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}
button.module-card:hover{transform:translateY(-3px);box-shadow:0 14px 32px #183b5520;border-color:#8bb9d9}
.module-disabled{opacity:.76;background:#f8fafc}
.module-icon{width:53px;height:53px;flex:0 0 53px;border-radius:14px;display:grid;place-items:center;font-size:27px;font-weight:700}
.inventory-icon{background:#edf1f5;color:#637b90}
.reservation-icon{background:#f2eef9;color:#7662a3}
.air-icon{background:#e7f3fc;color:#1879b9}
.module-content{min-width:0;padding-right:10px}
.module-kicker{font-size:10px;letter-spacing:1.2px;font-weight:800;color:#8294a3}
.module-content h2{font-size:19px;line-height:1.25;margin:10px 0 9px;color:#17334c}
.module-content p{font-size:13px;line-height:1.55;color:#637586;margin:0 0 18px}
.module-status{display:inline-flex;align-items:center;gap:7px;font-size:11px;font-weight:700;color:#8b6a32;background:#fff5e3;border-radius:20px;padding:7px 10px}
.active-status{color:#16734a;background:#e9f7ef}
.active-status i{width:7px;height:7px;border-radius:50%;background:#22a568;display:inline-block}
.module-lock{position:absolute;right:18px;top:18px;font-size:13px;opacity:.55}
.module-arrow{position:absolute;right:20px;bottom:20px;font-size:25px;color:#1681bf}
.home-footnote{margin:25px 0 0;color:#718293;font-size:12px}
.topbar-actions{display:flex;align-items:center;gap:10px}
.back-home{border:1px solid #d5e0e8;background:transparent;color:#fff;border-radius:8px;padding:9px 13px;font-weight:700;cursor:pointer}
.back-home:hover{background:#ffffff16}
@media(max-width:900px){.module-grid{grid-template-columns:1fr}.module-card{min-height:155px}.home-main{padding-top:38px}}
@media(max-width:520px){.home-header{padding:0 18px}.home-main{padding-left:17px;padding-right:17px}.module-card{padding:20px 17px;gap:13px}.module-content h2{font-size:17px}.topbar-actions{gap:6px}.back-home,.logout{font-size:11px;padding:8px 9px}}

/* Módulo de Reservas de Espaços e Equipamentos */
.reserve-container{max-width:1480px}
.reserve-panel{padding:22px 23px}
.reserve-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px;margin-top:20px}
.reserve-form>label,.reserve-fields label,.reserve-filter-grid label{display:grid;gap:7px;color:#506477;font-size:12px;font-weight:700}
.reserve-form input,.reserve-form select,.reserve-form textarea,.reserve-filter-grid input,.reserve-filter-grid select{width:100%;border:1px solid #d8e2e9;border-radius:10px;background:#fff;padding:11px 12px;color:var(--ink);font:inherit;font-size:12px;outline:none}
.reserve-form textarea{resize:vertical;min-height:66px}
.reserve-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.reserve-fields.hidden{display:none}
.reserve-form>label:nth-of-type(1){grid-column:1/-1}
.reserve-form>label:has(textarea){grid-column:1/-1}
.reserve-feedback{grid-column:1/-1;margin:0;min-height:18px;font-size:12px}
.reserve-feedback.error-text{color:#b42318}.reserve-feedback.success-text{color:#16845c}
.reserve-actions{grid-column:1/-1;display:flex;align-items:center;gap:13px;flex-wrap:wrap}
.reserve-actions .helper{margin:0}
.reserve-filter-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;padding:4px 0 18px}
.reserve-results-top{border-top:1px solid var(--line);padding:18px 0 14px}
.cancel-reservation{border:1px solid #e4c9c7;background:#fff7f6;color:#a53630;border-radius:7px;padding:6px 8px;font-size:10px;font-weight:700}
.reserve-container .table-scroll{border:1px solid var(--line);border-radius:10px}
.reserve-container table{white-space:normal;min-width:850px}
.reserve-container td{vertical-align:top;line-height:1.4}
.reserve-stats{margin-bottom:18px}
@media(max-width:900px){.reserve-filter-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.reserve-panel{padding:16px}.reserve-form{grid-template-columns:1fr}.reserve-fields{grid-template-columns:1fr}.reserve-form>label:nth-of-type(1),.reserve-form>label:has(textarea){grid-column:auto}.reserve-filter-grid{grid-template-columns:1fr}.reserve-results-top{align-items:flex-start}.reserve-actions{align-items:flex-start}.reserve-container .stats{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* Navegação interna do módulo de reservas */
.reserve-actions-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:0 0 20px}
.reserve-action-card{width:100%;min-height:118px;display:flex;align-items:center;gap:14px;padding:20px 18px;border:1px solid var(--line);border-radius:15px;background:#fff;color:var(--ink);text-align:left;box-shadow:0 3px 14px #18364d08;transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease}
.reserve-action-card:hover{transform:translateY(-2px);border-color:#8bb9d9;box-shadow:0 10px 22px #183b5514}
.reserve-action-card:focus-visible,.back-inline-button:focus-visible{outline:3px solid #2874a655;outline-offset:2px}
.reserve-action-primary{border-color:#b8d3e5;background:linear-gradient(135deg,#f5faff,#fff)}
.reserve-action-icon{flex:0 0 43px;width:43px;height:43px;display:grid;place-items:center;border-radius:12px;background:#eaf2f8;color:var(--navy);font-size:23px;font-weight:800}
.reserve-action-primary .reserve-action-icon{background:var(--navy);color:#fff}
.reserve-action-text{display:grid;gap:6px;min-width:0;flex:1}
.reserve-action-text strong{color:var(--navy);font-size:14px;line-height:1.25}
.reserve-action-text small{color:#758696;font-size:11px;line-height:1.45}
.reserve-action-text small b{color:#365c77}
.reserve-action-arrow{color:#66849a;font-size:22px;font-weight:700}
.back-inline-button{border:1px solid #d8e3eb;background:#fff;color:#365c77;border-radius:9px;padding:9px 12px;font-size:11px;font-weight:750;white-space:nowrap}
.back-inline-button:hover{background:#f4f8fb;border-color:#b7cad8}
.catalog-heading-actions{display:flex;align-items:center;gap:9px;flex-wrap:wrap;justify-content:flex-end}
.field-help{display:block;color:#8292a0;font-size:10px;font-weight:400;line-height:1.4}
.reserve-form select[multiple]{min-height:150px;padding:7px}
.reserve-form select[multiple] option{padding:5px 7px}
.reserve-form .equipment-multi-label{align-content:start}
.agenda-today td{font-weight:750;color:#1b3448}
.agenda-today:hover{background:#f0f7fc}
@media(max-width:1000px){.reserve-actions-grid{grid-template-columns:1fr}.reserve-action-card{min-height:90px}}
@media(max-width:600px){.reserve-actions-grid{gap:9px}.reserve-action-card{padding:16px 14px;min-height:84px}.reserve-action-text strong{font-size:13px}.catalog-heading-actions{width:100%;justify-content:space-between}.back-inline-button{padding:8px 9px}.reserve-form select[multiple]{min-height:135px}}
/* Aviso de reservas do dia vigente */
.reserve-notice-actions{display:flex;justify-content:flex-end;margin-top:16px}
.reserve-today-card{width:min(100%,1000px)}

/* Módulo de Inventário */
.inventory-container{max-width:1540px}
.inventory-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px;margin:0 0 18px}
.inventory-stat{position:relative;display:flex;align-items:center;gap:13px;min-width:0;width:100%;padding:18px 17px;border:1px solid var(--line);border-radius:15px;background:#fff;color:var(--ink);text-align:left;box-shadow:0 3px 12px #18364d08}
.inventory-stat-icon{flex:0 0 40px;width:40px;height:40px;display:grid;place-items:center;border-radius:12px;background:#eaf1f6;color:var(--navy);font-size:21px;font-weight:800}
.limbo-icon{background:#fff3df;color:#9b681c}.transfer-icon{background:#eaf0f6;color:#496a88}.history-icon{background:#e9f5ee;color:#24764f}
.inventory-stat small{display:block;color:#718293;font-size:11px;line-height:1.4}
.inventory-stat strong{display:block;color:var(--navy);font-size:25px;margin-top:3px}
.inventory-stat em{display:block;margin-top:4px;color:#82919d;font-size:10px;font-style:normal}
.inventory-click{cursor:pointer;font-family:inherit;transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease}
.inventory-click:hover,.inventory-click:focus-visible{transform:translateY(-2px);border-color:#8bb9d9;box-shadow:0 9px 22px #183b5514;outline:none}
.inventory-stat-arrow{margin-left:auto;color:#6d879b;font-size:22px;font-weight:800}
.inventory-panel{padding:22px 23px}
.inventory-filter-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:11px;padding:0 0 18px}
.inventory-filter-grid label,.inventory-subfilters label{display:grid;gap:7px;color:#506477;font-size:11px;font-weight:700;min-width:0}
.inventory-filter-grid select,.inventory-subfilters select{width:100%;min-width:0;border:1px solid #d8e2e9;border-radius:10px;background:#fff;padding:11px 10px;color:var(--ink);font:inherit;font-size:11px;outline:none}
.inventory-filter-grid select:focus,.inventory-subfilters select:focus{border-color:#5b94bb;box-shadow:0 0 0 3px #2874a619}
.inventory-results-top{border-top:1px solid #edf1f4;padding:17px 0 13px}
.inventory-table-scroll{border:1px solid var(--line);border-radius:10px;max-height:68vh}
.inventory-table{min-width:1650px;white-space:normal;table-layout:auto}
.inventory-table th{position:sticky;top:0;z-index:2}
.inventory-table td{vertical-align:top;line-height:1.45}
.inventory-table .inventory-description{min-width:240px;max-width:400px;white-space:normal;overflow-wrap:anywhere}
.inventory-subfilters{display:grid;grid-template-columns:minmax(280px,2fr) repeat(2,minmax(160px,1fr));gap:12px;margin:18px 0}
.inventory-subfilters .search-box{min-width:0}
.inventory-subfilters .search-box input{min-width:0}
.agenda-observations{min-width:210px;max-width:360px;white-space:normal;overflow-wrap:anywhere}
@media(max-width:1100px){.inventory-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.inventory-filter-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:700px){.inventory-panel{padding:16px}.inventory-stats{grid-template-columns:1fr 1fr;gap:8px}.inventory-stat{padding:12px 10px;gap:9px}.inventory-stat-icon{width:32px;height:32px;flex-basis:32px;font-size:17px}.inventory-stat strong{font-size:21px}.inventory-stat small{font-size:10px}.inventory-stat em{font-size:9px}.inventory-filter-grid{grid-template-columns:1fr 1fr}.inventory-subfilters{grid-template-columns:1fr}.inventory-panel .panel-title{align-items:flex-start;flex-wrap:wrap}.inventory-panel .catalog-heading-actions{width:100%;justify-content:space-between}}
@media(max-width:430px){.inventory-stats{grid-template-columns:1fr}.inventory-filter-grid{grid-template-columns:1fr}}

/* Exportação comum dos módulos */
.topbar-export-group{display:flex;align-items:center;gap:5px;padding:3px;border:1px solid #ffffff2b;border-radius:10px;background:#ffffff10}
.topbar-export-group button{border:0;border-radius:7px;background:transparent;color:#fff;padding:8px 9px;font:inherit;font-size:10px;font-weight:700;cursor:pointer}
.topbar-export-group button:hover,.topbar-export-group button:focus-visible{background:#ffffff20;outline:none}
.alerts-top-button{position:relative;border:1px solid #ffffff4a;background:#ffffff12;color:#fff;border-radius:8px;padding:9px 11px;font-size:11px;font-weight:750;cursor:pointer;white-space:nowrap}
.alerts-top-button span{display:inline-grid;place-items:center;min-width:18px;height:18px;padding:0 4px;margin-left:3px;border-radius:99px;background:#dceaf4;color:#16334b;font-size:10px}
.alerts-top-button.has-alerts span{background:#ffcf73;color:#533800}
.report-error-button{border:1px solid #d9b5a8;background:#fff8f5;color:#a3422b;border-radius:7px;padding:6px 8px;font-size:10px;font-weight:750;white-space:nowrap;cursor:pointer}
.report-error-button:hover{background:#ffede6;border-color:#cf907d}
.ufs-alert-backdrop{position:fixed;inset:0;z-index:10000;display:grid;place-items:center;padding:18px;background:#10283dcc;backdrop-filter:blur(3px)}
.ufs-alert-backdrop.hidden{display:none}
.ufs-alert-card{width:min(100%,780px);max-height:min(88vh,900px);overflow:auto;border-radius:17px;background:#fff;padding:22px;box-shadow:0 24px 70px #081b2d55}
.ufs-alert-head{display:flex;justify-content:space-between;align-items:flex-start;gap:18px;border-bottom:1px solid #e7edf1;padding-bottom:14px;margin-bottom:17px}
.ufs-alert-head h2{margin:4px 0 0;color:#17334c;font-size:22px}
.ufs-alert-item{display:grid;gap:6px;background:#f1f6fa;border:1px solid #dfe9ef;border-radius:11px;padding:13px;margin-bottom:15px;color:#17334c}
.ufs-alert-item small,.ufs-alert-record small{font-size:10px;color:#708292}
.ufs-error-form{display:grid;gap:10px}
.ufs-error-form label{font-size:12px;font-weight:800;color:#40576a}
.ufs-error-form textarea{width:100%;resize:vertical;border:1px solid #ccd9e2;border-radius:10px;padding:12px;font:13px/1.5 inherit;color:#19344a;outline:none;min-height:120px}
.ufs-error-form textarea:focus{border-color:#5689ac;box-shadow:0 0 0 3px #2874a61a}
.ufs-alert-note,.ufs-alert-summary{font-size:11px;color:#718293;margin:0}
.ufs-alert-actions{display:flex;justify-content:flex-end;gap:9px;flex-wrap:wrap;margin-top:7px}
.ufs-alert-list{display:grid;gap:11px}
.ufs-alert-record{border:1px solid #dce5eb;border-radius:12px;padding:13px;background:#fff}
.ufs-alert-record.resolved{background:#f7faf8;opacity:.84}
.ufs-alert-record-top{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}
.ufs-alert-record p{margin:9px 0;color:#2c4356;white-space:pre-wrap;overflow-wrap:anywhere;font-size:12px;line-height:1.5}
.ufs-alert-record .back-inline-button{margin-top:9px}
.ufs-alert-empty{padding:24px;border:1px dashed #d4e0e8;border-radius:12px;text-align:center;color:#718293}
.ufs-alert-toast{position:fixed;right:20px;bottom:20px;z-index:11000;max-width:min(90vw,420px);padding:12px 16px;border-radius:10px;background:#173c56;color:#fff;font-size:12px;font-weight:700;box-shadow:0 8px 30px #102b4633;opacity:0;transform:translateY(8px);pointer-events:none;transition:all .2s ease}
.ufs-alert-toast.visible{opacity:1;transform:translateY(0)}

/* Processos SEI */
.process-container{max-width:1450px}
.process-stats{margin:0 0 18px}
.process-panel{padding:22px 23px}
.process-filter-grid{display:grid;grid-template-columns:minmax(220px,340px);gap:12px;margin:12px 0 20px}
.process-filter-grid label{display:grid;gap:7px;color:#506477;font-size:12px;font-weight:700}
.process-filter-grid select{width:100%;border:1px solid #d8e2e9;border-radius:10px;background:#fff;padding:11px 12px;color:var(--ink);font:inherit;font-size:12px}
.process-table-scroll{border:1px solid var(--line);border-radius:10px;max-height:72vh}
.process-table{min-width:760px;white-space:normal;table-layout:auto}
.process-table th{position:sticky;top:0;z-index:2}
.process-table td{vertical-align:top;line-height:1.5}
.process-table td:first-child{min-width:210px;font-variant-numeric:tabular-nums;white-space:nowrap}
.process-table td:nth-child(2){min-width:190px}
.process-subject{min-width:330px;max-width:720px;overflow-wrap:anywhere}
.result-all-note{justify-content:flex-start;color:#708292;font-size:11px}
@media(max-width:1100px){.topbar-inner{gap:10px}.topbar-actions{flex-wrap:wrap;justify-content:flex-end}}
@media(max-width:700px){.topbar-export-group{order:1}.topbar-actions{gap:5px}.topbar-export-group button{padding:7px 6px;font-size:9px}.alerts-top-button{padding:8px 8px;font-size:10px}.process-panel{padding:16px}.process-filter-grid{grid-template-columns:1fr}.ufs-alert-card{padding:16px}.ufs-alert-head h2{font-size:19px}}

/* Ajustes gerais de navegação, largura e leitura responsiva */
.maintenance-icon{background:#eaf2f7;color:#2d668b}
.topbar-inner{min-width:0;gap:14px}
.topbar-actions{min-width:0;max-width:100%;flex-wrap:wrap;justify-content:flex-end}
.topbar-export-group{flex-wrap:wrap;max-width:100%}
.topbar-export-group button{white-space:nowrap}
.report-error-button{white-space:normal;max-width:100%;line-height:1.25;overflow-wrap:anywhere}
.air-uninstalled-access{max-width:520px;margin:0 0 18px auto}

/* Tabelas dos módulos em fluxo normal: sem barras internas verticais ou horizontais */
.air-table-scroll,.inventory-table-scroll,.process-table-scroll,.maintenance-table-scroll{
  overflow:visible!important;max-height:none!important;height:auto!important;min-width:0;width:100%;
  border:1px solid var(--line);border-radius:10px;
}
.air-table-scroll table,.inventory-table-scroll .inventory-table,.process-table-scroll .process-table,.maintenance-table-scroll .maintenance-table{
  width:100%;min-width:0!important;max-width:100%;table-layout:fixed;white-space:normal;
}
.air-table-scroll th,.air-table-scroll td,
.inventory-table-scroll th,.inventory-table-scroll td,
.process-table-scroll th,.process-table-scroll td,
.maintenance-table-scroll th,.maintenance-table-scroll td{
  white-space:normal;overflow-wrap:anywhere;word-break:normal;vertical-align:top;line-height:1.42;
}
.air-table-scroll td,.inventory-table-scroll td,.process-table-scroll td,.maintenance-table-scroll td{padding:10px 9px}
.air-table-scroll th,.inventory-table-scroll th,.process-table-scroll th,.maintenance-table-scroll th{padding:11px 9px;font-size:9px}
.inventory-table-scroll .inventory-description{min-width:0;max-width:none;white-space:normal;overflow-wrap:anywhere}
.process-table-scroll .process-table td:first-child,.process-table-scroll .process-table td:nth-child(2){min-width:0;white-space:normal}
.process-table-scroll .process-subject{min-width:0;max-width:none;overflow-wrap:anywhere}
.maintenance-table-scroll .maintenance-solution{min-width:0;max-width:340px;white-space:normal;overflow-wrap:anywhere}
.inventory-actions{display:flex;gap:6px;flex-wrap:wrap;align-items:flex-start}
.inventory-origin-badge{display:inline-block;margin-left:5px;padding:3px 6px;border-radius:20px;background:#fff3df;color:#8c5b11;font-size:9px;font-weight:800;vertical-align:middle}
.inventory-detail-button{border:1px solid #b8cbd8;background:#f2f7fa;color:#285574;border-radius:7px;padding:6px 8px;font-size:10px;font-weight:750;cursor:pointer}
.inventory-detail-button:hover{background:#e4f0f7}
.inventory-detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.inventory-detail-field{min-width:0;padding:12px;border:1px solid #e1e9ee;border-radius:10px;background:#fbfcfd}
.inventory-detail-field small{display:block;margin-bottom:5px;color:#778999;font-size:10px;font-weight:750;text-transform:uppercase;letter-spacing:.35px}
.inventory-detail-field strong{display:block;color:#233e53;font-size:12px;font-weight:650;overflow-wrap:anywhere;line-height:1.45}
.inventory-detail-actions{grid-column:1/-1;display:flex;justify-content:flex-end;margin-top:5px}

/* Novo módulo Serviços de Manutenção */
.maintenance-container{max-width:1600px}
.maintenance-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px;margin:0 0 18px}
.maintenance-panel{padding:22px 23px}
.maintenance-filter-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;padding:18px 0}
.maintenance-filter-grid label,.monthly-chart-controls label{display:grid;gap:7px;min-width:0;color:#506477;font-size:11px;font-weight:750}
.maintenance-filter-grid input,.maintenance-filter-grid select,.monthly-chart-controls select{width:100%;min-width:0;border:1px solid #d8e2e9;border-radius:10px;background:#fff;padding:11px 10px;color:var(--ink);font:inherit;font-size:11px;outline:none}
.maintenance-filter-grid input:focus,.maintenance-filter-grid select:focus,.monthly-chart-controls select:focus{border-color:#5b94bb;box-shadow:0 0 0 3px #2874a619}
.maintenance-results-top{border-top:1px solid #edf1f4;padding:16px 0 13px}
.maintenance-table-scroll{border:1px solid var(--line);border-radius:10px}
.maintenance-table{font-size:11px}
.monthly-chart-controls{display:flex;justify-content:flex-end;margin:12px 0}
.monthly-chart-controls label{width:min(100%,360px)}
.maintenance-chart{width:100%;min-width:0;padding:12px;border:1px solid #e4ebf0;border-radius:12px;background:#fbfdfe;overflow:hidden}
.maintenance-chart svg{display:block;width:100%;height:auto;max-height:470px}
.monthly-table-scroll{margin-top:18px}
.monthly-total-row{font-weight:800;background:#f1f6f9}
.monthly-total-row td{color:#183952}
.life-filter-grid{padding-bottom:18px}

@media(max-width:1100px){
  .maintenance-stats{grid-template-columns:repeat(2,minmax(0,1fr))}
  .maintenance-filter-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .topbar-inner{flex-wrap:wrap;align-items:flex-start}
  .topbar-actions{flex:1 1 100%;justify-content:flex-start}
  .air-table-scroll table,.inventory-table-scroll .inventory-table,.process-table-scroll .process-table,.maintenance-table-scroll .maintenance-table{display:block}
  .air-table-scroll thead,.inventory-table-scroll thead,.process-table-scroll thead,.maintenance-table-scroll thead{display:none}
  .air-table-scroll tbody,.inventory-table-scroll tbody,.process-table-scroll tbody,.maintenance-table-scroll tbody{display:block;width:100%}
  .air-table-scroll tbody tr,.inventory-table-scroll tbody tr,.process-table-scroll tbody tr,.maintenance-table-scroll tbody tr{display:block;width:100%;padding:8px 13px;border-bottom:1px solid #e7edf1;background:#fff}
  .air-table-scroll tbody tr:last-child,.inventory-table-scroll tbody tr:last-child,.process-table-scroll tbody tr:last-child,.maintenance-table-scroll tbody tr:last-child{border-bottom:0}
  .air-table-scroll td,.inventory-table-scroll td,.process-table-scroll td,.maintenance-table-scroll td{display:grid;grid-template-columns:minmax(125px,30%) minmax(0,1fr);gap:10px;width:100%;min-width:0;max-width:none;padding:8px 2px;border-bottom:1px solid #f0f3f5;text-align:left;white-space:normal;overflow-wrap:anywhere}
  .air-table-scroll td:last-child,.inventory-table-scroll td:last-child,.process-table-scroll td:last-child,.maintenance-table-scroll td:last-child{border-bottom:0}
  .air-table-scroll td::before,.inventory-table-scroll td::before,.process-table-scroll td::before,.maintenance-table-scroll td::before{content:attr(data-label);color:#6a7f90;font-size:10px;font-weight:800;letter-spacing:.15px}
  .air-table-scroll td.empty,.inventory-table-scroll td.empty,.process-table-scroll td.empty,.maintenance-table-scroll td.empty{display:block;padding:22px;text-align:center}
  .air-table-scroll td.empty::before,.inventory-table-scroll td.empty::before,.process-table-scroll td.empty::before,.maintenance-table-scroll td.empty::before{content:none}
}
@media(max-width:700px){
  .topbar-inner{display:flex;flex-direction:column;align-items:stretch;padding:12px 14px;gap:10px}
  .brand-inline{min-width:0}
  .brand-inline strong{font-size:12px;white-space:normal}
  .topbar-actions{display:flex;align-items:center;justify-content:flex-start;gap:7px;flex-wrap:wrap;width:100%}
  .topbar-export-group{order:0;flex:1 1 100%;justify-content:space-between}
  .topbar-export-group button{padding:8px 10px;font-size:10px}
  .alerts-top-button,.back-home,.logout{max-width:100%;white-space:normal}
  .air-uninstalled-access{max-width:none;width:100%;margin:0 0 16px}
  .maintenance-panel{padding:16px}
  .maintenance-stats{grid-template-columns:1fr 1fr;gap:8px}
  .maintenance-filter-grid{grid-template-columns:1fr}
  .maintenance-panel .panel-title{align-items:flex-start;flex-wrap:wrap}
  .maintenance-panel .catalog-heading-actions{width:100%;justify-content:space-between}
  .monthly-chart-controls{justify-content:stretch}
  .monthly-chart-controls label{width:100%}
  .maintenance-chart{padding:4px}
  .inventory-detail-grid{grid-template-columns:1fr}
  .inventory-detail-actions{grid-column:auto}
  .air-table-scroll td,.inventory-table-scroll td,.process-table-scroll td,.maintenance-table-scroll td{grid-template-columns:minmax(105px,34%) minmax(0,1fr);gap:7px;font-size:11px}
  .report-error-button{padding:7px 8px;font-size:10px}
}
@media(max-width:430px){
  .maintenance-stats{grid-template-columns:1fr}
  .results-actions,.catalog-heading-actions{flex-wrap:wrap}
  .topbar-actions .back-home,.topbar-actions .logout{font-size:10px;padding:7px 8px}
}

/* Destaque e alternância dos relatórios de manutenção */
.maintenance-nav-label{display:block;font-size:14px!important;font-weight:850!important;letter-spacing:.01em;color:#183a56!important}
.report-source-switch{display:flex;gap:10px;flex-wrap:wrap;margin:4px 0 18px}
.report-source-button{appearance:none;border:1px solid #bfd0dc;border-radius:11px;padding:11px 18px;background:#f5f8fa;color:#28465d;font-family:inherit;font-size:13px;font-weight:700;cursor:pointer;transition:background .15s,border-color .15s,color .15s}
.report-source-button:hover{border-color:#4b84ad}
.report-source-button.active{background:#173f5d;border-color:#173f5d;color:#fff;box-shadow:0 5px 14px rgba(23,63,93,.16)}
@media(max-width:640px){.report-source-switch{display:grid;grid-template-columns:1fr 1fr}.report-source-button{padding:10px 8px;font-size:12px}}
