.catalog-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin:20px 0}.catalog-stats>div{background:white;border:1px solid var(--line);padding:20px;border-radius:10px;display:flex;gap:15px;align-items:center}.catalog-stats strong{font-size:29px;color:var(--green)}.catalog-stats span{color:var(--muted)}.resource-filters{display:grid;grid-template-columns:2fr 1.4fr 1.4fr 1fr;gap:15px;padding:20px}.resource-filters .search{width:100%}.resource-filters select{width:100%}.form-section{grid-column:1/-1;border-bottom:1px solid var(--line);padding-bottom:10px}.form-section h3{margin:0}.form-section p{margin:7px 0 0;font-size:12px;color:var(--muted)}.check-row{grid-column:1/-1;display:flex;align-items:center;gap:10px;font-size:13px}.check-row input{accent-color:var(--green);width:17px;height:17px}.legacy-fields{grid-column:1/-1;border:1px solid var(--line);border-radius:8px;padding:15px}.legacy-fields summary{cursor:pointer;font-weight:600}.legacy-fields .formbody{padding:12px 0}.legacy-fields p{font-size:12px}.wrap{white-space:normal;min-width:180px;max-width:330px}.panel .tabs{overflow:auto}.panel .tabs button{white-space:nowrap}input:disabled,select:disabled{background:#f5f5f4;color:#78716c}dialog{width:min(880px,94vw)}
@media(max-width:950px){.resource-filters{grid-template-columns:1fr 1fr}.catalog-stats{gap:8px}.catalog-stats>div{padding:13px;display:block}.catalog-stats span{display:block;margin-top:7px;font-size:12px}}
@media(max-width:600px){.resource-filters{grid-template-columns:1fr}.catalog-stats strong{font-size:24px}.legacy-fields .formbody{grid-template-columns:1fr}}

.model-row{border:1px solid #e7e5e4;border-radius:10px;margin:16px 0;padding:12px;min-width:0}.model-row legend{font-weight:600;padding:0 8px}

dialog.insumo-dialog{width:min(1180px,96vw);max-width:96vw}.insumo-tabs{display:flex;flex-wrap:wrap;gap:6px;padding:12px 24px;background:#fafaf9;border-block:1px solid #e7e5e4}.insumo-tabs button{font-size:12px;padding:8px 10px}.insumo-tabs [aria-pressed=true]{background:#c2410c;color:white}.insumo-content{padding:24px;overflow-x:auto}.insumo-content fieldset{min-width:0;border:1px solid #e7e5e4;border-radius:8px;padding:16px;margin-bottom:16px}.insumo-content legend{font-weight:600;padding:0 8px}.insumo-content textarea{min-height:80px;width:100%}.insumo-dialog [hidden]{display:none!important}.insumo-dialog .modalfoot{position:sticky;bottom:0;background:white;border-top:1px solid #e7e5e4}.insumo-content .field input[type=checkbox]{width:20px;height:20px}.insumo-content table{width:100%}

.insumo-tabs button{color:#44403c;background:white;border:1px solid #d6d3d1;opacity:1;margin:0;white-space:normal}.insumo-tabs button[aria-pressed=true]{color:white;background:#c2410c;border-color:#c2410c}

.insumo-context{padding:12px 24px;background:#fff7ed;font-weight:600}.query-compact td,.query-compact th{padding:7px}.insumo-content [hidden]{display:none!important}

.budget-tools{justify-content:flex-start;gap:8px;flex-wrap:wrap}.budget-tools button{font-size:12px;padding:8px 10px}.budget-grid .budget-anchor td{box-shadow:inset 0 2px #f97316,inset 0 -2px #f97316}.budget-grid .num-input{width:90px}.budget-grid input[type=checkbox]{width:17px;height:17px;accent-color:var(--green)}.budget-grid .wrap{min-width:220px;max-width:420px}.budget-grid td{padding:12px 10px}.budget-grid th{padding:13px 10px}@media print{.budget-grid input[type=checkbox]{display:none}.budget-grid .budget-anchor td{box-shadow:none}.budget-grid{font-size:9px}}

button:disabled{opacity:.5;cursor:not-allowed}@media print{.budget-grid th,.budget-grid td{font-size:8px;padding:6px 3px;white-space:normal}.budget-grid .wrap{min-width:0;max-width:none}.budget-grid .num-input{width:52px;padding:0}.budget-grid th:last-child,.budget-grid td:last-child{display:none}}

/* Identidade SSJ Engenharia: marca original, azul-marinho e laranja. */
:root{--brand-navy:#10344b;--brand-orange:#ff8019;--green:#bb4705;--line:#e2e8ed;--muted:#647581;color:var(--brand-navy)}
.brand-logo{display:block;padding:0;width:100%;aspect-ratio:4/1;overflow:hidden;background:#fff;flex-shrink:0}
.brand-logo img{display:block;width:100%;height:100%;object-fit:cover;object-position:center}
aside .brand-logo{margin:3px 0 12px}aside{border-top:4px solid var(--brand-orange)}
h1,h2,h3,.workspace strong,.aside-bottom strong,.topbar b,.metric .value{color:var(--brand-navy)}
button,input,select,textarea,dialog{color:var(--brand-navy)}
button.primary{background:var(--brand-orange);border-color:var(--brand-orange);color:#102f43}button.primary:hover{background:#ef7210;border-color:#ef7210;color:#102f43}
nav button{color:#40596a}nav button.active{background:#fff1e5;color:#a83e00;box-shadow:inset 3px 0 var(--brand-orange)}nav button:hover{background:#fff7f0}
.workspace{background:#f8fafc;border-color:var(--line)}.nav-label{color:#647581}.topbar{border-top:0}.eyebrow{color:#ac4004}
.metric.featured{background:#fff3e8;border-color:#ffd3af;color:var(--brand-navy)}.metric.featured .label,.metric.featured .sub{color:#9b430c}
th{background:#f5f8fa;color:#526b7b}td{border-bottom-color:#edf1f4}.panel{box-shadow:0 3px 12px #10344b04}
.tabs button.active{border-bottom:3px solid var(--brand-orange);color:#ad4207}.insumo-tabs button[aria-pressed=true]{background:var(--brand-navy);border-color:var(--brand-navy);color:white}
.auth-page{background:linear-gradient(135deg,#fff 50%,#fff3e8);border-top:5px solid var(--brand-orange)}.auth-card{border-color:var(--line);box-shadow:0 18px 60px #10344b10}.auth-card .brand-logo{width:100%;margin:0 0 32px;aspect-ratio:4/1}.auth-card h1{font-size:25px}
#toast{background:var(--brand-navy)}
@media(max-width:700px){aside .brand-logo{max-width:220px;margin:0}aside{border-top-width:3px}.auth-card{padding:25px}.auth-card .brand-logo{margin-bottom:24px}}

.support-sections{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:0 0 24px}.support-sections button{display:flex;flex-direction:column;align-items:flex-start;gap:8px;white-space:normal;border:1px solid var(--line);padding:18px;border-radius:10px}.support-sections strong{font-size:16px}.support-sections span{font-size:12px;font-weight:400;color:var(--muted);line-height:1.5}.support-sections button.active{border-color:#ffb477;background:#fff3e8;box-shadow:inset 3px 0 var(--brand-orange);color:var(--brand-navy)}
@media(max-width:700px){.support-sections{display:grid;grid-template-columns:1fr;overflow:visible}.support-sections button{padding:12px 16px}.support-sections span{white-space:normal}}

.engineering-modules{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 20px}.engineering-modules button{background:white;border:1px solid #dce3e8;color:#12354b;padding:10px 14px}.engineering-modules button.active{background:#fff0e1;border-color:#ed7816;color:#873d00}.engineering-modules+section .tabs{flex-wrap:wrap}.engineering-modules+section fieldset{border:1px solid #dce3e8;border-radius:8px;padding:14px;margin:16px 0}.engineering-modules+section fieldset label{display:inline-flex;gap:8px;margin-right:16px}

/* Hierarquia da navegação da Engenharia */
aside{overflow-y:auto}.engineering-tree{display:block!important;overflow:visible!important}.engineering-tree details{border-bottom:1px solid #e5e7eb}.engineering-tree summary{cursor:pointer;padding:12px 6px;color:#12354b;font-size:13px;font-weight:600}.engineering-tree details>div{padding:0 0 8px 12px}.engineering-tree button{display:block;text-align:left;width:100%;white-space:normal!important;padding:9px 12px;font-size:12px}.engineering-tree button.active{background:#fff0e1;color:#9a4300}.engineering-tree button:disabled{opacity:.55;cursor:not-allowed}.menu-pending{display:block;font-size:10px;font-weight:400;margin-top:3px}@media(max-width:700px){.engineering-tree{max-height:320px;overflow-y:auto!important}}

.module-switch{display:grid!important;grid-template-columns:1fr;gap:6px;margin-bottom:16px}.module-switch button[aria-pressed="true"]{background:#fff0e1;color:#963f00;border-color:#f28425}.engineering-tree details details{border-bottom:0}.engineering-tree details details summary{font-size:12px;font-weight:500}.local-tools{margin-top:20px;font-size:12px;border-top:1px solid #e5e7eb;padding-top:12px}.local-tools summary{cursor:pointer}.local-tools button{display:block;width:100%;text-align:left;margin-top:8px;font-size:11px}
/* Apoio: grupos de campos legíveis em desktop e celular. */
#apoio-editor .formbody{display:block;max-height:68vh;overflow:auto}#apoio-editor fieldset{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;border:1px solid #e7e5e4;border-radius:8px;margin:0 0 18px;padding:16px;min-width:0}#apoio-editor legend{color:#12354b;font-weight:700;padding:0 8px}#apoio-editor .field{grid-column:auto;min-width:0;display:flex;flex-direction:column;gap:7px}#apoio-editor .field:has(input[type=checkbox]){flex-direction:row-reverse;justify-content:flex-end;align-items:center}#apoio-editor input[type=checkbox]{width:18px;height:18px;flex-shrink:0}#apoio-editor textarea{min-height:85px;width:100%;box-sizing:border-box}#apoio-editor .modalfoot{position:sticky;bottom:0;background:#fff}#at-text{display:block;width:100%;box-sizing:border-box;margin:10px 0}main:has(#at-report-kind) fieldset{display:flex;flex-wrap:wrap;gap:12px;margin:16px 0;border:1px solid #ddd}main:has(#at-report-kind) fieldset label{display:flex;gap:5px;align-items:center}main:has(#at-report-kind) input[type=checkbox]{width:18px;height:18px}@media(max-width:650px){#apoio-editor fieldset{grid-template-columns:1fr}}
.work-record-tabs{display:flex;flex-wrap:wrap;gap:8px;margin:18px 0;border-bottom:1px solid #e7e5e4;padding-bottom:14px}.work-record-tabs button{border:1px solid #e7e5e4;padding:10px 14px}.work-record-tabs button.active{background:#fff0e1;border-color:#ed7816;color:#873d00}.work-record [hidden]{display:none!important}.work-record .work-editable{border:0;padding:0;min-width:0}.work-record section>fieldset{border:1px solid #e7e5e4;border-radius:8px;padding:18px;margin:18px 0;min-width:0}.work-record legend{font-weight:700;color:#12354b;padding:0 8px}.work-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.work-fields .field{grid-column:auto;min-width:0}.work-pending{position:static;width:auto;height:auto;background:#fff7ed;color:#78350f;border:1px solid #fed7aa;padding:18px;margin:20px 0;border-radius:8px}.work-pending ul{padding-left:20px}.work-record h1{font-size:25px}.work-record .check-row{display:flex;gap:10px}.work-record input[type=checkbox]{width:18px;height:18px}@media(max-width:700px){.work-fields{grid-template-columns:1fr}.work-record-tabs{display:flex;overflow:visible}.work-record-tabs button{white-space:normal}.work-record table{display:block;overflow:auto}.work-pending{display:block}}

/* Marca textual SSJ Engenharia */
.brand-logo,.auth-card .brand-logo{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:2px;aspect-ratio:auto;min-height:76px;overflow:visible;line-height:1.1}
.brand-logo .brand-initials{font-size:30px;font-weight:850;letter-spacing:1px;color:var(--brand-navy,#10344b)}
.brand-logo .brand-name{font-size:25px;font-weight:750;color:var(--brand-orange,#f58020);letter-spacing:-.5px}
.auth-card .brand-logo{align-items:center;min-height:100px}.auth-card .brand-initials{font-size:36px}.auth-card .brand-name{font-size:30px}

.brand-logo img.ssj-company-logo{width:180px;height:auto;max-width:100%;object-fit:contain;aspect-ratio:auto}.auth-card .brand-logo img.ssj-company-logo{width:250px}.slide-heading .brand-logo{flex-wrap:nowrap}.brand-logo .brand-name{font-size:20px}
