.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 OrçaFlow: 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}}
