:root {
    --ink: #17233a;
    --muted: #667085;
    --line: #dbe2ea;
    --surface: #ffffff;
    --background: #f3f6f8;
    --primary: #176b5b;
    --primary-dark: #105247;
    --accent: #d3a94e;
    font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    color: var(--ink);
    background: var(--background);
}

* { box-sizing: border-box; }
body { margin: 0; min-height: 100vh; background: linear-gradient(135deg, #edf3f1 0%, #f7f8fa 50%, #eef1f6 100%); }
a { color: inherit; }
button, input { font: inherit; }
.topbar { min-height: 76px; padding: 14px clamp(20px, 4vw, 64px); display: flex; align-items: center; justify-content: space-between; background: rgba(255,255,255,.92); border-bottom: 1px solid var(--line); }
.brand { display: flex; gap: 12px; align-items: center; text-decoration: none; }
.brand-mark { width: 44px; height: 44px; display: grid; place-items: center; border-radius: 12px; background: var(--primary); color: white; font-weight: 800; }
.brand-logo { width: 48px; height: 48px; flex: 0 0 48px; display: block; border-radius: 13px; object-fit: cover; box-shadow: 0 6px 18px rgba(0,0,0,.14); }
.brand strong, .brand small, .user-menu strong, .user-menu small, .project-context small { display: block; }
.brand small, .user-menu small, .project-context small { color: var(--muted); margin-top: 2px; }
.user-menu { display: flex; align-items: center; gap: 18px; text-align: right; }
.container { width: min(1180px, calc(100% - 36px)); margin: 0 auto; padding: 42px 0 70px; }
.button { border: 1px solid transparent; border-radius: 10px; padding: 10px 16px; display: inline-flex; justify-content: center; align-items: center; cursor: pointer; text-decoration: none; font-weight: 700; }
.button-primary { background: var(--primary); color: white; }
.button-primary:hover { background: var(--primary-dark); }
.button-light { background: white; border-color: var(--line); color: var(--ink); }
.button-selected { background: #e6f3ef; border-color: var(--primary); color: var(--primary-dark); }
.button-block { width: 100%; margin-top: 12px; }
.eyebrow, .label { color: var(--primary); font-size: .78rem; font-weight: 800; letter-spacing: .09em; text-transform: uppercase; }
.page-heading { display: flex; justify-content: space-between; gap: 24px; align-items: flex-start; margin-bottom: 28px; }
.page-heading h1, .auth-intro h1 { margin: 8px 0 10px; font-size: clamp(2rem, 4vw, 3.4rem); line-height: 1.05; letter-spacing: -.04em; }
.page-heading p, .auth-intro p, .module-card p, .auth-card > p { color: var(--muted); line-height: 1.65; }
.project-page-back{display:flex;justify-content:flex-end;align-items:center;margin:-16px 0 18px;min-height:48px}.project-page-back .button{gap:8px;min-width:132px;border-color:#8ebbb1;background:#fff;color:var(--primary-dark);box-shadow:0 6px 18px rgba(16,82,71,.07)}.project-page-back .button:hover{border-color:var(--primary);background:#eaf6f2;color:var(--primary-dark);box-shadow:0 8px 20px rgba(16,82,71,.11);transform:translateY(-1px)}.project-page-back .button span[aria-hidden="true"]{font-size:1.18rem;line-height:1}
.auth-shell { min-height: calc(100vh - 190px); display: grid; grid-template-columns: 1.15fr .85fr; align-items: center; gap: clamp(40px, 8vw, 100px); }
.auth-shell.single { grid-template-columns: minmax(300px, 520px); justify-content: center; }
.auth-intro { max-width: 630px; }
.auth-brand-icon { display: block; width: 164px; height: 164px; margin: 0 0 18px; border-radius: 32px; object-fit: cover; box-shadow: 0 12px 32px rgba(16,82,71,.18); }
.auth-card { background: var(--surface); border: 1px solid var(--line); border-radius: 20px; padding: clamp(28px, 5vw, 46px); box-shadow: 0 22px 60px rgba(18, 40, 62, .1); }
.auth-card h2 { font-size: 2rem; margin: 0; }
.auth-card label:not(.check) { display: block; margin: 20px 0 7px; font-weight: 700; }
.auth-card input[type="email"], .auth-card input[type="password"] { width: 100%; border: 1px solid #cbd5e1; border-radius: 10px; padding: 12px 14px; background: #fff; }
.auth-card input:focus { outline: 3px solid rgba(23,107,91,.16); border-color: var(--primary); }
.check { display: flex; align-items: center; gap: 8px; margin: 16px 0; color: var(--muted); }
.field-error { color: #b42318; font-size: .9rem; margin-top: 6px; }
.auth-link { display: block; text-align: center; margin-top: 18px; color: var(--primary); font-weight: 700; }
.help { display: block; color: var(--muted); margin-top: 6px; }
.project-context { padding: 22px; background: #fff; border: 1px solid var(--line); border-radius: 16px; display: flex; align-items: center; justify-content: space-between; gap: 20px; margin-bottom: 24px; }
.project-context strong { display: block; font-size: 1.25rem; margin-top: 4px; }
.project-switcher { display: flex; flex-wrap: wrap; gap: 8px; justify-content: flex-end; }
.module-grid { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 20px; }
.module-card { min-height: 310px; padding: 28px; background: #fff; border: 1px solid var(--line); border-radius: 18px; display: flex; flex-direction: column; box-shadow: 0 14px 34px rgba(18,40,62,.06); }
.module-card.disabled { opacity: .62; box-shadow: none; }
.module-number { color: var(--accent); font-weight: 900; font-size: 1.25rem; }
.module-card h2 { font-size: 1.35rem; margin: 30px 0 4px; }
.module-card p { flex: 1; }
.access-note { color: var(--muted); font-weight: 700; }
.notice { border-radius: 12px; padding: 14px 18px; margin-bottom: 22px; }
.notice.success { background: #e9f7f0; color: #116149; }
.notice.info { background: #eaf2fb; color: #214f7b; }
.notice.error { background: #fff0ee; color: #8e241c; }
.empty { color: var(--muted); margin: 0; }
.breadcrumb { display: flex; gap: 8px; color: var(--muted); margin-bottom: 22px; }
.table-shell { overflow-x: auto; background: white; border: 1px solid var(--line); border-radius: 16px; }
table { width: 100%; border-collapse: collapse; }
th, td { padding: 15px 18px; text-align: left; border-bottom: 1px solid var(--line); vertical-align: top; }
th { color: var(--muted); font-size: .78rem; letter-spacing: .05em; text-transform: uppercase; }
td small { display: block; color: var(--muted); margin-top: 3px; }
.budget-overview tbody td:nth-child(2) small { color: var(--ink); font-weight: 700; }
.badge { display: inline-flex; padding: 5px 9px; border-radius: 999px; font-size: .8rem; font-weight: 800; }
.badge.active { color: #116149; background: #e5f5ee; }
.badge.attention { color: #175cd3; background: #eaf2ff; }
.badge.inactive { color: #8e241c; background: #fff0ee; }
.form-card { background: white; border: 1px solid var(--line); border-radius: 18px; padding: clamp(22px, 4vw, 38px); }
.form-grid { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 20px; }
.form-card label:not(.check) { display: grid; gap: 7px; font-weight: 700; }
.form-card input:not([type="checkbox"]), .form-card select, .form-card textarea, .inline-form input, .inline-form select, .inline-form textarea, .wide-field textarea { width: 100%; border: 1px solid #cbd5e1; border-radius: 10px; padding: 11px 13px; background: white; }
.wide-field { display: grid; gap: 7px; font-weight: 700; margin-top: 20px; }
.form-check { align-self: end; padding-bottom: 12px; }
fieldset { margin: 28px 0; border: 1px solid var(--line); border-radius: 12px; padding: 18px; }
legend { padding: 0 8px; font-weight: 800; }
.project-checks { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 10px; }
.form-actions { display: flex; justify-content: flex-end; gap: 10px; }
.summary-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 16px; margin-bottom: 28px; }
.summary-grid article { background: white; border: 1px solid var(--line); border-radius: 14px; padding: 20px; }
.summary-grid span { display: block; color: var(--muted); margin-bottom: 7px; }
.summary-grid strong { font-size: 1.25rem; }
.structure-section { margin-top: 34px; }
.section-title h2 { margin: 5px 0 18px; font-size: 1.8rem; }
.inline-form { background: white; border: 1px solid var(--line); border-radius: 14px; padding: 18px; margin-bottom: 18px; }
.inline-form summary { cursor: pointer; font-weight: 800; color: var(--primary); }
.inline-form form { margin-top: 20px; }
.inline-form label { display: grid; gap: 6px; font-weight: 700; }
.structure-card { background: white; border: 1px solid var(--line); border-radius: 16px; padding: 22px; margin-bottom: 16px; }
.structure-card header, .nested-row { display: flex; justify-content: space-between; gap: 18px; }
.structure-card h3 { margin: 10px 0 0; }
.structure-card p { color: var(--muted); }
.nested { border-top: 1px solid var(--line); margin-top: 18px; padding-top: 12px; }
.nested h4 { margin: 0 0 10px; }
.nested-row { padding: 8px 0; }
.nested-row small { display: block; color: var(--muted); margin-top: 3px; }
.item-actions { display: inline-flex; align-items: center; gap: 12px; }
.item-actions a { color: var(--primary); font-weight: 800; }
.item-actions a.button{display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:12px 20px;line-height:1.25;text-align:center}.item-actions a.button-primary,.item-actions a.button-primary:visited{color:#fff;background:var(--primary)}.item-actions a.button-primary:hover{color:#fff;background:var(--primary-dark)}
.empty-card { padding: 24px; background: white; border: 1px dashed #bcc8d5; border-radius: 14px; color: var(--muted); }
.two-columns { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 18px; }
.subnav { display: flex; gap: 8px; flex-wrap: wrap; margin: -10px 0 26px; }
.financial-tabs { position: sticky; top: 0; z-index: 50; flex-wrap: nowrap; overflow-x: auto; margin-inline: -18px; padding: 12px 18px; background: rgba(243,246,248,.96); border-bottom: 1px solid var(--line); box-shadow: 0 8px 18px rgba(18,40,62,.08); backdrop-filter: blur(10px); scrollbar-width: thin; }
.financial-tabs .button { flex: 0 0 auto; white-space: nowrap; }
.financial-tabs .button-selected { background: var(--primary); border-color: var(--primary); color: #fff; box-shadow: 0 5px 14px rgba(18,107,85,.2); }
.danger-details > summary { color: #a32121; }
.reversal-form { border-color: #efb4b4; background: #fff8f8; }
.financial-accordion { display: grid; gap: 16px; }
.financial-panel { background: rgba(255,255,255,.78); border: 1px solid var(--line); border-radius: 16px; overflow: clip; box-shadow: 0 8px 24px rgba(18,40,62,.05); }
.financial-panel > summary { cursor: pointer; padding: 20px 24px; color: var(--primary-dark); font-size: 1.15rem; font-weight: 850; list-style: none; display: flex; align-items: center; justify-content: space-between; }
.financial-panel > summary::-webkit-details-marker { display: none; }
.financial-panel > summary::after { content: '+'; font-size: 1.55rem; }
.financial-panel[open] > summary { border-bottom: 1px solid var(--line); background: #eaf4f1; }
.financial-panel[open] > summary::after { content: '−'; }
.financial-panel > .panel-content { padding: 0 22px 24px; }
.financial-panel .structure-section { margin-top: 24px; }
.financial-subpanel{margin-top:18px;border:1px solid var(--line);border-radius:14px;background:#fff;overflow:hidden}.financial-subpanel>summary{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px 18px;color:var(--primary-dark);font-weight:850;cursor:pointer;list-style:none}.financial-subpanel>summary::-webkit-details-marker{display:none}.financial-subpanel>summary::after{content:'+';font-size:1.35rem}.financial-subpanel[open]>summary{border-bottom:1px solid var(--line);background:#edf7f3}.financial-subpanel[open]>summary::after{content:'−'}.financial-subpanel-content{padding:0 18px 20px;min-width:0}.financial-subpanel-content>.section-title{margin-top:18px}
.entries-friendly { background: transparent; border-collapse: separate; border-spacing: 0 14px; }
.entries-friendly thead { display: none; }
.entries-friendly tbody { display: grid; gap: 14px; }
.entries-friendly tr { display: grid; grid-template-columns: repeat(6,minmax(0,1fr)); background: white; border: 1px solid var(--line); border-radius: 14px; overflow: hidden; box-shadow: 0 6px 18px rgba(18,40,62,.05); }
.entries-friendly td { display: block; min-width: 0; border: 0; padding: 16px; }
.entries-friendly td::before { content: attr(data-label); display: block; margin-bottom: 7px; color: var(--muted); font-size: .7rem; font-weight: 800; letter-spacing: .05em; text-transform: uppercase; }
.entries-friendly td:last-child { grid-column: 1 / -1; border-top: 1px solid var(--line); background: #f8fafb; padding: 18px 20px; }
.entries-friendly td:last-child::before { color: var(--primary); font-size: .78rem; }
.entries-friendly td:last-child > details { display: inline-block; vertical-align: top; width: min(100%,320px); margin: 8px 12px 0 0; padding: 10px 12px; background: white; border: 1px solid var(--line); border-radius: 10px; }
.entries-friendly td:last-child > details[open] { display: block; width: min(100%,680px); }
.entries-friendly td:last-child > .cancel-form { margin-top: 14px; }
.expense-list-heading { margin: 30px 0 10px; }
.expense-list-search{display:grid;gap:7px;margin:0 0 14px;padding:14px 16px;border:1px solid var(--line);border-radius:12px;background:#fff}.expense-list-search>label{color:var(--ink);font-size:.82rem;font-weight:800}.expense-list-search>div{display:flex;gap:9px}.expense-list-search input{min-width:0;flex:1 1 auto}.expense-list-search .button{flex:0 0 auto}.expense-list-search>small{min-height:1em;color:var(--muted);font-size:.75rem}
.expense-record-list { display: grid; gap: 14px; }
.expense-record { background: white; border: 1px solid var(--line); border-radius: 14px; overflow: hidden; box-shadow: 0 6px 18px rgba(18,40,62,.05); }
.expense-record > summary { list-style: none; cursor: pointer; }
.expense-record > summary::-webkit-details-marker { display: none; }
.expense-record[open] { background: #e3f1eb; border-color: #82b9a5; box-shadow: 0 9px 24px rgba(17,104,78,.12); }
.expense-record[open] > summary { background: #eaf5f1; box-shadow: inset 5px 0 0 #2f8b6f; }
.expense-record-summary { display: grid; grid-template-columns: repeat(6,minmax(0,1fr)); gap: 16px; padding: 18px 52px 18px 20px; position: relative; }
.expense-record-summary::after { content: '+'; position: absolute; right: 20px; top: 22px; color: var(--primary); font-size: 1.45rem; font-weight: 900; }
.expense-record[open] .expense-record-summary::after { content: '−'; }
.expense-record-summary > div > span { display: block; margin-bottom: 7px; color: var(--muted); font-size: .7rem; font-weight: 800; letter-spacing: .05em; text-transform: uppercase; }
.payment-date-value { color: #17324d; font-weight: 800; white-space: nowrap; }
.payment-date-unpaid { display: inline-flex; align-items: center; min-height: 28px; padding: 5px 10px; border: 1px solid #f2b9b5; border-radius: 999px; background: #fde8e7; color: #a3261d; font-size: .78rem; font-weight: 850; white-space: nowrap; }
.expense-record-content { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 14px; padding: 18px 20px 20px; border-top: 1px solid var(--line); background: #f8fafb; }
.expense-record[open] > .expense-record-content { background: #dcece6; border-top-color: #a5cdbf; }
.expense-status-box, .expense-reconciliation-box, .expense-documents-box { min-height: 110px; padding: 16px; background: white; border: 1px solid var(--line); border-radius: 12px; }
.expense-status-box h4, .expense-reconciliation-box h4, .expense-documents-box h4 { margin: 0 0 12px; color: var(--primary-dark); }
.expense-reconciliation-box small { display:block; margin-top:8px; color:var(--muted); }
.badge.neutral { background:#eef1f3; color:#53616f; }
.expense-documents-box small { display: block; margin: 7px 0; }
.expense-document-record{margin-top:10px;padding:12px;border:1px solid #b9d7d0;border-left:4px solid var(--primary);border-radius:12px;background:#f7fcfa}.expense-document-record.is-inactive{border-color:#d5d9dc;border-left-color:#89949b;background:#f5f6f7}.expense-document-heading{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:10px;align-items:center}.expense-document-identity{min-width:0;display:grid;gap:3px}.expense-document-identity strong{color:var(--primary-dark)}.expense-document-identity span{overflow-wrap:anywhere;color:#334155}.expense-document-download{white-space:nowrap}.expense-document-actions{display:flex;flex-wrap:wrap;align-items:flex-start;gap:8px;margin-top:11px;padding-top:11px;border-top:1px solid #d9e9e5}.expense-document-actions>details{flex:1 1 260px;margin:0;padding:9px 11px;border:1px solid var(--line);border-radius:9px;background:#fff}.expense-document-actions>details[open]{flex-basis:100%}.expense-document-actions>form{margin:0}.expense-document-action-context{margin:9px 0;padding:8px 10px;border-radius:8px;background:#eaf5f2;color:#334155;overflow-wrap:anywhere}.expense-document-deactivate{border-color:#c63a30;background:#fff;color:#a52620}.expense-document-deactivate:hover{background:#fff0ee}.expense-documents-box>h4::after{content:' — cada ação abaixo afeta somente o arquivo do mesmo cartão';font-size:.75rem;font-weight:500;color:#60726f}
.expense-actions-grid { grid-column: 1 / -1; display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 12px; }
.expense-actions-grid>.payment-process-buttons{grid-column:1/-1;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin:0;min-width:0}.expense-actions-grid>.payment-process-buttons::before{grid-column:1/-1}.expense-actions-grid>.payment-process-buttons a{min-width:0}
.expense-actions-grid > details { padding: 12px 14px; background: white; border: 1px solid var(--line); border-radius: 10px; }
.expense-actions-grid > details[open] { grid-column: 1 / -1; }
.expense-record-content > .cancel-form { grid-column: 1 / -1; }

/* Despesa aberta: resumo e documentos no mesmo padrão dos processos de pagamento. */
.expense-record-content{grid-template-columns:repeat(2,minmax(0,1fr))}
.expense-status-box,.expense-reconciliation-box{min-height:0;padding:13px 16px;border-color:#b9d7d0;background:#fff}.expense-status-box h4,.expense-reconciliation-box h4{margin-bottom:8px;font-size:.78rem;text-transform:uppercase;letter-spacing:.04em}.expense-documents-box{grid-column:1/-1;min-height:0;padding:14px}.expense-documents-box>h4{display:flex;align-items:baseline;gap:4px;margin-bottom:10px;text-transform:uppercase;font-size:.78rem;letter-spacing:.04em}.expense-document-record{display:grid;grid-template-columns:90px minmax(220px,1fr) 145px minmax(175px,.75fr) minmax(155px,.65fr) 165px;align-items:center;gap:8px;margin-top:8px;padding:10px 12px}.expense-document-heading,.expense-document-actions{display:contents}.expense-document-identity{padding-right:8px}.expense-document-download{width:100%;padding:10px 12px;text-align:center}.expense-document-actions>details{width:100%;margin:0;padding:0;border:1px solid var(--line);border-radius:9px;background:#fff}.expense-document-actions>details>summary{min-height:42px;padding:10px 12px;display:flex;align-items:center;font-size:.82rem;font-weight:750}.expense-document-actions>details[open]{grid-column:1/-1;padding:0 12px 12px}.expense-document-actions>form{width:100%;margin:0}.expense-document-actions>form .button{width:100%;min-height:42px;padding:9px 10px;font-size:.8rem}.expense-document-action-context{margin-top:0}.expense-document-record+.expense-document-record{margin-top:9px}
.expense-status-box .badge,.expense-reconciliation-box .badge{min-height:36px;padding:8px 14px;font-size:.94rem;font-weight:900;letter-spacing:.01em}.expense-status-box>small,.expense-reconciliation-box>small{font-size:.82rem}.financial-subpanel[data-financial-panel="expense-composition"],.financial-subpanel[data-financial-panel="expense-maintenance"]{margin-top:12px;border:1px solid #b9d7d0;border-radius:12px;background:#fff;overflow:hidden}.financial-subpanel[data-financial-panel="expense-composition"]>summary,.financial-subpanel[data-financial-panel="expense-maintenance"]>summary{padding:16px 18px;color:var(--primary-dark);font-size:1rem;font-weight:850;background:#f7fbfa}.financial-subpanel[data-financial-panel="expense-composition"]>.financial-subpanel-content,.financial-subpanel[data-financial-panel="expense-maintenance"]>.financial-subpanel-content{padding:4px 14px 16px}
@media(max-width:1180px){.expense-document-record{grid-template-columns:80px minmax(200px,1fr) repeat(2,minmax(150px,.7fr))}.expense-document-download{grid-column:3}.expense-document-actions>details:first-child{grid-column:4}.expense-document-actions>details:nth-child(2){grid-column:3}.expense-document-actions>form{grid-column:4}.expense-document-actions>details[open]{grid-column:1/-1}.expense-document-record>.expense-document-actions:empty{display:none}}
@media (max-width: 820px) { .entries-friendly tr { grid-template-columns: repeat(2,minmax(0,1fr)); } .entries-friendly td:last-child { grid-column: 1 / -1; } }
@media (max-width: 820px) { .expense-record-summary { grid-template-columns: repeat(2,minmax(0,1fr)); } .expense-record-content, .expense-actions-grid,.expense-actions-grid>.payment-process-buttons { grid-template-columns: 1fr; } .expense-list-search>div{align-items:stretch;flex-direction:column}.expense-list-search .button{width:100%}.expense-document-heading{grid-template-columns:auto minmax(0,1fr)}.expense-document-download{grid-column:1/-1;text-align:center}.expense-document-actions,.expense-document-actions>details,.expense-document-actions>form,.expense-document-actions>form .button{width:100%} }
@media (max-width: 520px) { .entries-friendly tr { grid-template-columns: 1fr; } }
@media(max-width:820px){.expense-document-record{display:grid;grid-template-columns:72px minmax(0,1fr);gap:9px}.expense-document-identity{grid-column:2}.expense-document-download,.expense-document-actions>details:first-child,.expense-document-actions>details:nth-child(2),.expense-document-actions>form{grid-column:1/-1}.expense-document-actions>details[open]{grid-column:1/-1}.expense-documents-box>h4{display:block;line-height:1.45}.expense-documents-box>h4::after{display:block;margin-top:3px}}

/* Ações de cada documento com o mesmo padrão visual e dimensional. */
.expense-document-download,.expense-document-actions>details>summary,.expense-document-actions>form .button{box-sizing:border-box;display:flex;align-items:center;justify-content:center;width:100%;min-height:46px;margin:0;padding:10px 12px;border:1px solid #8fc1b5;border-radius:10px;background:#fff;color:var(--primary-dark);font-family:inherit;font-size:.8rem;font-weight:800;line-height:1.2;text-align:center;text-decoration:none;cursor:pointer}.expense-document-actions>details{border:0;background:transparent}.expense-document-actions>details>summary{list-style:none}.expense-document-actions>details>summary::-webkit-details-marker{display:none}.expense-document-actions>details>summary::before{content:none}.expense-document-download:hover,.expense-document-actions>details>summary:hover{border-color:var(--primary);background:#eef8f5}.expense-document-actions>details[open]>summary{border-color:var(--primary);background:#e6f4f0}.expense-document-actions>form .expense-document-deactivate{border-color:#e1aaa5;background:#fff7f6;color:#a3261d}.expense-document-actions>form .expense-document-deactivate:hover{border-color:#c63a30;background:#fdebea}
.financial-tabs + section, #fornecedores, #certidoes, #receitas, #despesas, #documentos-formais, #extratos, #importacoes, #lancamentos { scroll-margin-top: 92px; }
.classification-grid { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 12px; }
.classification-grid .inline-form { padding: 14px; }
.classification-grid form { display: grid; gap: 12px; }
.negative { color: #b42318; }
.classification-list { display: grid; gap: 6px; margin: -8px 0 18px; }
.classification-list > div { display: flex; justify-content: space-between; gap: 8px; padding: 8px 10px; background: rgba(255,255,255,.7); border-radius: 8px; }
.status-link { border: 0; background: none; color: var(--primary); font-weight: 800; cursor: pointer; }
.compact-form { min-width: 240px; display: grid; gap: 10px; padding-top: 10px; }
.compact-form label { display: grid; gap: 4px; font-size: .85rem; }
.compact-form input, .compact-form select { width: 100%; border: 1px solid #cbd5e1; border-radius: 8px; padding: 8px; background: white; }
td details summary { cursor: pointer; color: var(--primary); font-weight: 800; }
.filter-bar { display: flex; flex-wrap: wrap; gap: 9px; margin-bottom: 16px; padding: 14px; background: white; border: 1px solid var(--line); border-radius: 14px; }
.filter-bar input, .filter-bar select { min-width: 145px; border: 1px solid #cbd5e1; border-radius: 9px; padding: 9px; background: white; }
.cancel-form { margin-top: 8px; }
.print-actions { display: flex; gap: 10px; justify-content: flex-end; margin-bottom: 18px; }
.formal-document { position: relative; max-width: 850px; min-height: 1000px; margin: auto; padding: 70px; background: white; border: 1px solid var(--line); box-shadow: 0 15px 40px rgba(18,40,62,.08); font-family: Georgia, serif; line-height: 1.7; }
.formal-document > p{text-align:justify;text-justify:inter-word;hyphens:auto}
.formal-document header { text-align: center; border-bottom: 2px solid var(--ink); padding-bottom: 20px; }
.formal-document h2 { text-align: center; margin-top: 45px; }
.document-number { text-align: center; color: var(--muted); }
.document-data { margin: 35px 0; display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); border: 1px solid var(--line); }
.document-data div { padding: 12px; border: 1px solid var(--line); }
.document-data dt { font-size: .75rem; text-transform: uppercase; color: var(--muted); }
.document-data dd { margin: 4px 0 0; font-weight: 700; }
.signature-line { width: 360px; margin: 130px auto 0; border-top: 1px solid var(--ink); text-align: center; padding-top: 8px; }
.cancelled-watermark { position: absolute; inset: 42% auto auto 15%; transform: rotate(-25deg); font: 900 5rem sans-serif; color: rgba(180,20,20,.15); }
.report-document { max-width: 1050px; font-family: inherit; }
.report-document table { font-size: .85rem; }
.photo-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 18px; }
.photo-card { overflow: hidden; background: white; border: 1px solid var(--line); border-radius: 16px; }
.photo-card img, .photo-placeholder { width: 100%; aspect-ratio: 4/3; object-fit: cover; background: #e8edf1; display: grid; place-items: center; }
.photo-card > div { padding: 18px; }
.photo-card h3 { margin: 8px 0; }
.photo-card p, .photo-card small { color: var(--muted); }
.photo-report-status{display:flex;flex-wrap:wrap;gap:7px;margin-top:12px}.photo-report-action{margin-top:10px}.photo-report-action .button{width:100%}
.chart-row { display: grid; grid-template-columns: 220px 1fr 70px; gap: 12px; align-items: center; margin: 14px 0; }
.chart-track { height: 16px; border-radius: 999px; background: #e3e9ee; overflow: hidden; }
.chart-track i { display: block; height: 100%; background: var(--primary); border-radius: inherit; }
@media print { .no-print, .topbar { display: none !important; } body { background: white; } .container { width: 100%; padding: 0; } .formal-document { border: 0; box-shadow: none; max-width: none; } }

/* Padrão compacto A4 para todos os relatórios e documentos impressos. */
@page { size: A4 portrait; margin: 12mm 13mm; }
@media print {
  html, body { width: auto; min-width: 0; margin: 0; padding: 0; font-size: 9pt; }
  .app-shell, .container, main { width: 100% !important; max-width: none !important; margin: 0 !important; padding: 0 !important; }
  .formal-document,
  .report-document,
  .bank-audit-report {
    width: 100% !important;
    max-width: none !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    box-shadow: none !important;
    font-size: 9pt !important;
    line-height: 1.32 !important;
  }
  .formal-document header,
  .bank-audit-report header { margin: 0 0 10mm !important; padding: 0 0 5mm !important; }
  .formal-document h1,
  .bank-audit-report h1 { margin: 0 0 3mm !important; font-size: 18pt !important; line-height: 1.15 !important; }
  .formal-document h2,
  .bank-audit-report h2 { margin: 6mm 0 3mm !important; font-size: 13pt !important; line-height: 1.2 !important; }
  .formal-document h3,
  .bank-audit-report h3 { margin: 4mm 0 2mm !important; font-size: 10pt !important; line-height: 1.2 !important; }
  .formal-document p,
  .bank-audit-report p { margin: 0 0 3mm !important; font-size: 9pt !important; line-height: 1.38 !important; }
  .formal-document .document-number { margin-bottom: 5mm !important; font-size: 8.5pt !important; }
  .formal-document table,
  .report-document table,
  .bank-audit-report table { width: 100% !important; margin: 3mm 0 !important; border-collapse: collapse !important; font-size: 8.25pt !important; line-height: 1.22 !important; }
  .formal-document th,
  .formal-document td,
  .report-document th,
  .report-document td,
  .bank-audit-report th,
  .bank-audit-report td { padding: 2.1mm 2.4mm !important; font-size: 8.25pt !important; line-height: 1.22 !important; vertical-align: top !important; }
  .formal-document th,
  .report-document th,
  .bank-audit-report th { font-size: 7.5pt !important; letter-spacing: .02em !important; }
  .formal-document .summary-grid,
  .report-document .summary-grid { gap: 3mm !important; margin: 3mm 0 !important; }
  .formal-document .summary-grid article,
  .report-document .summary-grid article { padding: 3mm !important; }
  .formal-document .summary-grid strong,
  .report-document .summary-grid strong { font-size: 11pt !important; }
  .electronic-validation { margin-top: 4mm !important; padding: 2.5mm 3mm !important; font-size: 7.5pt !important; line-height: 1.18 !important; page-break-inside: avoid !important; break-inside: avoid !important; }
  .electronic-validation h2,
  .electronic-validation h3 { margin: 0 0 1.5mm !important; font-size: 8.5pt !important; }
  .electronic-validation p { margin: 1mm 0 !important; font-size: 7.5pt !important; line-height: 1.18 !important; }
  .report-history { font-size: 8pt !important; line-height: 1.15 !important; page-break-inside: avoid !important; break-inside: avoid !important; }
  .report-history h2 { margin: 0 0 2mm !important; font-size: 10pt !important; line-height: 1.15 !important; page-break-after: avoid !important; break-after: avoid !important; }
  .report-history p { margin: 0 0 2mm !important; font-size: 8pt !important; line-height: 1.15 !important; }
  .report-history table { margin: 0 !important; page-break-before: avoid !important; break-before: avoid !important; }
  .report-history th,
  .report-history td { padding: 1.5mm 2mm !important; font-size: 7.25pt !important; }
  tr, td, th, .attestation-data, .electronic-validation { page-break-inside: avoid; break-inside: avoid; }
}

@media (max-width: 850px) {
    .auth-shell, .module-grid, .form-grid, .project-checks, .summary-grid, .two-columns, .classification-grid, .photo-grid { grid-template-columns: 1fr; }
    .topbar, .page-heading, .project-context { align-items: stretch; flex-direction: column; }
    .user-menu { justify-content: space-between; text-align: left; }
    .project-switcher { justify-content: flex-start; }
}
.payment-process-buttons{display:grid;gap:9px;margin-top:12px;padding:12px;min-width:245px;border:1px solid #d5e5e1;border-radius:12px;background:#f7fbfa}.payment-process-buttons::before{content:'Processo de pagamento';color:#173b35;font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.04em}.payment-process-buttons a{display:grid;grid-template-columns:34px 1fr;grid-template-areas:'icon title' 'icon detail';align-items:center;column-gap:9px;padding:10px 12px;border:1px solid #b8d2cd;border-radius:9px;background:#fff;color:#075e54;text-decoration:none}.payment-process-buttons a::before{content:'PDF';grid-area:icon;display:grid;place-items:center;height:34px;border-radius:7px;background:#e6f4f1;color:#075e54;font-size:10px;font-weight:900}.payment-process-buttons a strong{grid-area:title;font-size:12px}.payment-process-buttons a small{grid-area:detail;margin:2px 0 0;color:#526b66;font-size:10px;font-weight:500}.payment-process-buttons a:hover{background:#edf8f5;border-color:#087f6d;transform:translateY(-1px)}
.composition-filter-bar{display:grid;grid-template-columns:minmax(260px,2fr) repeat(3,minmax(150px,1fr)) auto;gap:12px;align-items:end;margin:18px 0;padding:18px;border:1px solid #d9e5e2;border-radius:14px;background:#fbfdfc}.composition-filter-bar label{display:grid;gap:6px;font-size:12px;font-weight:700;color:#345}.composition-filter-bar input,.composition-filter-bar select{width:100%}.badge.unpaid{background:#fde8e7;color:#a3261d;border-color:#f2b9b5}@media(max-width:900px){.composition-filter-bar{grid-template-columns:1fr 1fr}.composition-filter-bar label:first-child{grid-column:1/-1}}@media(max-width:560px){.composition-filter-bar{grid-template-columns:1fr}.composition-filter-bar label:first-child{grid-column:auto}}
.sortable-filterable-table thead th{vertical-align:top;min-width:135px}.column-sort-button{display:flex;width:100%;align-items:center;justify-content:space-between;gap:8px;padding:0;border:0;background:transparent;color:inherit;font:inherit;font-weight:800;text-align:left;cursor:pointer}.column-sort-button:hover span:first-child{color:#087f6d}.sort-indicator{font-size:16px;color:#087f6d}.column-filter-input{width:100%;min-width:110px;margin-top:8px;padding:7px 8px!important;border:1px solid #cedbd8!important;border-radius:7px!important;background:#fff!important;font-size:11px!important;font-weight:400!important;text-transform:none!important}.column-filter-hidden{display:none!important}
.friendly-form-section>summary,.friendly-edit-panel>summary{cursor:pointer;list-style:none}.friendly-form-section>summary{display:flex;justify-content:space-between;padding-bottom:18px;border-bottom:1px solid var(--line)}.friendly-form-section>summary span{display:grid;gap:3px}.friendly-form-section>summary small,.friendly-edit-panel>summary small{color:var(--muted)}.themed-form-block{margin:20px 0;padding:20px;border:1px solid #dce7e4;border-radius:15px;background:#fbfdfc}.form-block-heading{display:flex;align-items:center;gap:12px;margin-bottom:18px}.form-block-heading>span{display:grid;place-items:center;width:34px;height:34px;border-radius:10px;background:#e4f2ef;color:#08705f;font-weight:900}.form-block-heading>div{display:grid;gap:2px}.form-block-heading strong{color:#153d36;font-size:1.05rem}.form-block-heading small{color:var(--muted)}.institutional-readonly input{background:#f2f6f5;color:#435b56}.organization-selection-preview,.organization-card-header{display:flex;align-items:center;gap:14px}.organization-selection-preview{min-height:76px;padding:12px;border:1px dashed #b8d1cb;border-radius:12px;background:#f5faf8}.organization-selection-preview img,.organization-card-header img{width:64px;height:64px;object-fit:contain;border-radius:10px;background:white}.organization-selection-preview div,.organization-card-header div{display:grid;gap:3px}.organization-selection-preview small,.organization-card-header small{color:var(--muted)}.organization-placeholder{display:grid;place-items:center;width:58px;height:58px;border-radius:12px;background:#176c5b;color:white;font-size:12px;font-weight:900}.organization-cards{display:grid;gap:18px}.organization-card{padding:20px;border:1px solid var(--line);border-radius:16px;background:white}.organization-card-header{display:grid;grid-template-columns:auto 1fr auto}.organization-card-header h3,.organization-card-header p{margin:0}.organization-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:18px 0}.organization-summary div{padding:12px;border-radius:10px;background:#f6f9f8}.organization-summary dt{color:var(--muted);font-size:.72rem;font-weight:800;text-transform:uppercase}.organization-summary dd{margin:5px 0 0;font-weight:700}.organization-summary dd small{display:block;margin-top:3px;color:var(--muted);font-weight:500}.friendly-edit-panel{margin-top:12px;padding-top:12px;border-top:1px solid var(--line)}.friendly-edit-panel>summary{color:var(--primary);font-weight:800}.friendly-edit-panel form{margin-top:16px}.sticky-form-actions{position:sticky;bottom:12px;z-index:3;padding:12px;border:1px solid #d7e5e1;border-radius:14px;background:rgba(255,255,255,.94);box-shadow:0 8px 24px rgba(20,55,48,.1);backdrop-filter:blur(8px)}.document-organization-logo{display:block;max-width:120px;max-height:70px;margin:0 auto 12px;object-fit:contain}@media(max-width:800px){.organization-summary{grid-template-columns:1fr 1fr}.organization-card-header{grid-template-columns:auto 1fr}.organization-card-header>.badge{grid-column:1/-1;width:max-content}.themed-form-block{padding:15px}}
.report-project-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;overflow:hidden;margin:18px 0;border:1px solid #d9e5e2;border-radius:15px;background:#d9e5e2}.report-project-strip>div{display:grid;gap:5px;padding:16px;background:#fff}.report-project-strip span{color:var(--muted);font-size:.72rem;font-weight:800;text-transform:uppercase}.report-filter-card{display:flex;align-items:end;justify-content:space-between;gap:24px;margin:20px 0;padding:20px;border:1px solid #d9e5e2;border-radius:16px;background:#f7fbfa}.report-filter-card h2{margin:4px 0 0}.report-filter-card form{display:flex;align-items:end;gap:12px;flex-wrap:wrap}.report-filter-card label{display:grid;gap:5px;color:#35534d;font-size:.8rem;font-weight:700}.report-catalog{display:grid;gap:14px;margin:20px 0}.report-category{overflow:hidden;border:1px solid #d8e5e2;border-radius:16px;background:#fff}.report-category>summary{cursor:pointer;list-style:none;padding:17px 20px;background:#f6faf9}.report-category>summary span{display:flex;align-items:center;justify-content:space-between}.report-category>summary small{color:var(--muted);font-weight:500}.report-card-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;padding:16px}.report-card{display:flex;justify-content:space-between;gap:18px;padding:17px;border:1px solid #e0e8e6;border-radius:13px}.report-card h3{margin:9px 0 5px}.report-card p{margin:0;color:var(--muted);font-size:.85rem}.report-card-actions{display:grid;align-content:center;gap:8px;min-width:170px}.report-card-actions form,.report-card-actions button{width:100%}@media(max-width:900px){.report-project-strip{grid-template-columns:1fr 1fr}.report-filter-card{display:block}.report-filter-card form{margin-top:14px}.report-card-grid{grid-template-columns:1fr}.report-card{display:block}.report-card-actions{margin-top:14px}}@media(max-width:560px){.report-project-strip{grid-template-columns:1fr}.report-card-grid{padding:10px}}
.consolidated-builder{border-color:#b8d6cf;background:linear-gradient(145deg,#fff,#f4faf8)}.consolidated-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:16px 0}.consolidated-options label{display:flex;align-items:flex-start;gap:10px;padding:13px;border:1px solid #d8e5e2;border-radius:11px;background:#fff;cursor:pointer}.consolidated-options input{width:auto;margin-top:3px}.consolidated-options span{display:grid;gap:3px}.consolidated-options small{color:var(--muted)}@media(max-width:700px){.consolidated-options{grid-template-columns:1fr}}
.unified-report-builders{display:grid;gap:22px;margin:22px 0}.unified-report-builders>.structure-section{margin:0}.financial-bundle{border-left:5px solid #176b5b}.execution-bundle{border-left:5px solid #315ca8;background:linear-gradient(145deg,#fff,#f4f7fc)}.bundle-selection-tools{display:flex;align-items:center;gap:9px;margin-top:15px}.bundle-selection-tools button{padding:7px 10px;border:1px solid #bad2cc;border-radius:8px;background:#fff;color:#086452;font-weight:700;cursor:pointer}.bundle-selection-tools span{margin-left:auto;color:var(--muted);font-size:.82rem}.unified-report-builders .consolidated-options{grid-template-columns:repeat(3,minmax(0,1fr))}@media(max-width:1050px){.unified-report-builders .consolidated-options{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:650px){.unified-report-builders .consolidated-options{grid-template-columns:1fr}.bundle-selection-tools{flex-wrap:wrap}.bundle-selection-tools span{width:100%;margin:0}}
.official-report-highlight{margin:20px 0;padding:20px;border:1px solid #dcc68d;border-radius:16px;background:#fffaf0}.official-report-links{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.official-report-links article{display:grid;gap:8px;padding:14px;border:1px solid #ead9ad;border-radius:12px;background:#fff}.official-report-links article>span{width:max-content;padding:3px 7px;border-radius:999px;background:#f4e7c4;color:#805c00;font-size:.68rem;font-weight:900}.official-report-links article>div{display:flex;align-items:center;gap:10px}.official-report-links a,.official-report-links button{border:0;background:transparent;color:#08705f;font-weight:800;text-decoration:underline;cursor:pointer;padding:0}@media(max-width:900px){.official-report-links{grid-template-columns:1fr 1fr}}@media(max-width:560px){.official-report-links{grid-template-columns:1fr}}
.audit-movement{border:1px solid var(--line);border-radius:12px;margin:10px 0;background:#fff}.audit-movement>summary{display:grid;grid-template-columns:120px minmax(260px,1fr) 150px 180px;gap:12px;align-items:center;padding:14px;cursor:pointer}.audit-movement-body{padding:0 16px 16px;border-top:1px solid var(--line)}.candidate-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:10px;margin:12px 0}.candidate-grid article{padding:12px;border:1px solid var(--line);border-radius:10px;background:#f8fbfa}.candidate-grid small{display:block;margin-top:4px}.bank-audit-report table{width:100%;border-collapse:collapse;margin:22px 0}.bank-audit-report th,.bank-audit-report td{border:1px solid #333;padding:8px}.bank-audit-report th{background:#edf3f2}@media(max-width:850px){.audit-movement>summary{grid-template-columns:1fr}.audit-movement>summary span,.audit-movement>summary strong{display:block}}
/* Beneficiários: pesquisa, edição individual e saída em lote */
.beneficiary-tools{display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,.8fr);gap:18px;margin:20px 0;padding:18px;border:1px solid #d8e3e0;border-radius:18px;background:#fff}.beneficiary-tools>div{display:grid;grid-template-columns:2fr 1fr;gap:12px}.beneficiary-tools label,.beneficiary-tools form{margin:0}.beneficiary-tools form{display:grid;grid-template-columns:1fr auto;gap:8px 12px;align-items:end;padding-left:18px;border-left:1px solid #d8e3e0}.beneficiary-tools form strong,.beneficiary-tools form span{grid-column:1/-1}.beneficiary-tools form span{color:#667085;font-size:.9rem}.beneficiary-list{display:grid;gap:12px}.beneficiary-card{border:1px solid #d8e3e0;border-radius:16px;background:#fff;overflow:hidden;transition:border-color .18s ease,background .18s ease,box-shadow .18s ease}.beneficiary-row{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:start;gap:12px;padding:10px 12px}.beneficiary-check{display:flex;align-items:center;gap:6px;min-height:48px;font-size:.8rem}.beneficiary-check-placeholder{width:1px}.beneficiary-information{min-width:0;border-radius:12px}.beneficiary-information>summary{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:14px;min-height:48px;padding:8px 12px;cursor:pointer;list-style:none}.beneficiary-information>summary::-webkit-details-marker{display:none}.beneficiary-information>summary::marker{content:""}.beneficiary-identity{min-width:0}.beneficiary-identity strong,.beneficiary-identity small,.beneficiary-facts small{display:block}.beneficiary-identity strong{overflow:hidden;text-overflow:ellipsis;color:#14332d}.beneficiary-identity small,.beneficiary-facts small{color:#667085}.beneficiary-expand-label{color:#087463;font-size:.78rem;font-weight:800}.beneficiary-expand-label::after{content:" +"}.beneficiary-information[open] .beneficiary-expand-label::after{content:" −"}.beneficiary-card:has(.beneficiary-information[open]){border-color:#83bba9;background:#e6f3ee;box-shadow:0 8px 22px rgba(17,104,78,.1)}.beneficiary-information[open]>summary{background:#dceee7;box-shadow:inset 4px 0 0 #2f8b6f}.beneficiary-facts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:4px;padding:16px 18px;border-top:1px solid #bcd9cf;background:#edf7f3}.beneficiary-fact-wide{grid-column:1/-1;padding-top:10px;border-top:1px solid #c9e0d8}.beneficiary-fact-wide>small{margin-bottom:6px;color:#526e67;font-weight:800}.beneficiary-fact-wide>span{display:block}.beneficiary-fact-wide ul{display:grid;gap:5px;margin:0;padding:0;list-style:none}.beneficiary-fact-wide li{display:block;padding:5px 9px;border-radius:7px;background:rgba(255,255,255,.62);line-height:1.4}.beneficiary-edit-surface>summary{min-width:88px;justify-content:center}.beneficiary-edit-form h3{margin-top:0}.beneficiary-card[hidden]{display:none}.bank-audit-report-center{margin:22px 0;padding:22px;border:1px solid #b9d4ce;border-radius:20px;background:linear-gradient(145deg,#f4faf8,#fff)}.audit-period-report{margin-top:10px;border:1px solid #d8e3e0;border-radius:14px;background:#fff}.audit-period-report summary{padding:14px 16px;cursor:pointer}.audit-period-report summary span,.audit-period-report summary small{display:block}.audit-period-report>div{display:flex;flex-wrap:wrap;gap:9px;padding:0 16px 16px}@media(max-width:800px){.beneficiary-tools{grid-template-columns:1fr}.beneficiary-tools>div{grid-template-columns:1fr}.beneficiary-tools form{padding:14px 0 0;border-left:0;border-top:1px solid #d8e3e0}.beneficiary-facts{grid-template-columns:1fr 1fr}.beneficiary-row{grid-template-columns:minmax(0,1fr) auto}.beneficiary-check{grid-column:1/-1;min-height:auto}.beneficiary-check-placeholder{display:none}}@media(max-width:520px){.beneficiary-facts{grid-template-columns:1fr}.beneficiary-tools form{grid-template-columns:1fr}.beneficiary-information>summary{grid-template-columns:1fr auto}.beneficiary-expand-label{grid-column:1/-1}.beneficiary-edit-surface>summary{min-width:74px}}
.master-beneficiary-catalog{margin:20px 0;border:1px solid #c9ddd8;border-radius:18px;background:#f8fcfb}.master-beneficiary-catalog>summary{padding:17px 20px;color:#075f51;font-weight:800;cursor:pointer}.master-beneficiary-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px;padding:0 20px 20px}.master-beneficiary-grid section{padding:16px;border:1px solid #dce8e5;border-radius:14px;background:#fff}.master-beneficiary-grid form{display:grid;gap:10px;align-items:end}.master-beneficiary-grid form button{width:100%}.master-chip-list{display:flex;flex-wrap:wrap;gap:7px;margin-top:12px}.master-chip-list span{padding:6px 9px;border-radius:999px;background:#eaf4f1;color:#305b53;font-size:.78rem}.beneficiary-link-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:16px 0;padding:15px;border:1px solid #dce8e5;border-radius:14px;background:#f9fcfb}.beneficiary-link-grid>.check{grid-column:1/-1}.beneficiary-link-grid select[multiple]{min-height:140px}.beneficiary-batch-import{margin:16px 0;border:1px solid #cfdedb;border-radius:16px;background:#fff}.beneficiary-batch-import>summary{padding:15px 18px;color:#075f51;font-weight:800;cursor:pointer}.beneficiary-batch-import>div{display:grid;grid-template-columns:1fr auto;gap:12px 20px;align-items:end;padding:0 18px 18px}.beneficiary-batch-import p{grid-column:1/-1;margin:0;color:var(--muted)}.beneficiary-batch-import form{display:flex;align-items:end;gap:10px}.beneficiary-batch-import form label{margin:0}@media(max-width:1000px){.master-beneficiary-grid{grid-template-columns:1fr 1fr}}@media(max-width:800px){.master-beneficiary-grid,.beneficiary-link-grid{grid-template-columns:1fr}.beneficiary-link-grid>.check{grid-column:auto}.beneficiary-batch-import>div{grid-template-columns:1fr}.beneficiary-batch-import form{display:grid}}
.batch-structure-import{margin-bottom:18px;border:1px solid #9fc9bd;background:#f7fbfa}.batch-structure-import>summary{font-size:1rem}.batch-import-intro{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:8px 0 18px}.batch-import-intro p{margin:5px 0 0;color:#526477}.batch-import-intro .button{flex:0 0 auto}@media(max-width:720px){.batch-import-intro{align-items:stretch;flex-direction:column}.batch-import-intro .button{text-align:center}}
.planning-status{display:inline-flex;padding:5px 9px;border-radius:999px;font-size:.72rem;font-weight:900}.planning-status.pending{background:#e8f1ff;color:#175cd3}.planning-status.balanced{background:#e7f7ef;color:#067647}.planning-status.exceeded{background:#feeceb;color:#b42318}.budget-row-actions{display:flex;gap:7px;flex-wrap:wrap;margin-top:8px}.budget-row-actions form{margin:0}.button-danger{border:1px solid #f2b8b5;background:#fff5f4;color:#b42318}
.amendment-panel{border-left:5px solid #9b6b17}.amendment-comparison{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:18px 0}.amendment-comparison article{display:grid;gap:6px;padding:16px;border:1px solid var(--line);border-radius:14px;background:#fff}.amendment-comparison article>span{color:var(--muted);font-size:.75rem;font-weight:800;text-transform:uppercase}.amendment-comparison article>strong{font-size:1.35rem}.amendment-list{display:grid;gap:13px;margin-top:18px}.amendment-list>article{padding:17px;border:1px solid var(--line);border-radius:15px;background:#fff}.amendment-list header{display:flex;justify-content:space-between;gap:16px}.amendment-list h3{margin:7px 0 3px}.amendment-values{display:flex;flex-wrap:wrap;gap:10px 24px;margin:14px 0;padding:12px;background:#f7faf9;border-radius:10px}.compact-cancel{margin-top:10px}.compact-cancel form{display:grid;gap:8px;margin-top:8px}@media(max-width:760px){.amendment-comparison{grid-template-columns:1fr}.amendment-list header{display:block}}

/* Navegação estrutural, contexto de projeto e painel inicial (v9). */
:root{--sidebar-expanded:264px;--sidebar-collapsed:76px;--header-height:88px;--sidebar:#114d44;--sidebar-deep:#0b4039;--sidebar-text:#e9f5f2;--background:#f3f6f5;--surface:#fff;--ink:#10233f;--muted:#63737c;--line:#dce6e3;--primary:#287a67;--primary-dark:#165b4d;--accent:#c7792d}
html{scroll-behavior:smooth}body{background:var(--background);color:var(--ink)}
.app-shell{min-height:100vh;display:grid;grid-template-columns:var(--sidebar-expanded) minmax(0,1fr);transition:grid-template-columns .2s ease}
.app-sidebar{position:sticky;top:0;z-index:200;height:100vh;display:flex;flex-direction:column;overflow:hidden;background:linear-gradient(180deg,var(--sidebar),var(--sidebar-deep));color:var(--sidebar-text);box-shadow:8px 0 28px rgba(11,48,43,.08)}
.sidebar-brand-row{min-height:var(--header-height);display:flex;align-items:center;gap:8px;padding:14px 12px 14px 16px;border-bottom:1px solid rgba(255,255,255,.1)}
.sidebar-brand{min-width:0;display:flex;align-items:center;gap:12px;text-decoration:none}.sidebar-brand .brand-mark{flex:0 0 44px;background:#fff;color:var(--primary-dark);box-shadow:0 6px 18px rgba(0,0,0,.12)}.sidebar-brand .brand-logo{width:48px;height:48px;flex-basis:48px}
.sidebar-brand strong,.sidebar-brand small{display:block;white-space:nowrap}.sidebar-brand strong{font-size:1rem}.sidebar-brand small{max-width:160px;margin-top:3px;color:#bcd8d2;font-size:.68rem;line-height:1.25;white-space:normal}
.sidebar-collapse{flex:0 0 32px;width:32px;height:32px;border:1px solid rgba(255,255,255,.18);border-radius:9px;background:rgba(255,255,255,.08);color:#fff;cursor:pointer;font-size:1.5rem;line-height:1;transition:.2s}.sidebar-collapse:hover{background:rgba(255,255,255,.16)}
.sidebar-nav{flex:1;overflow-y:auto;overflow-x:hidden;padding:14px 10px 24px;scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.25) transparent}
.sidebar-link,.sidebar-group>summary{position:relative;min-height:48px;display:flex;align-items:center;gap:13px;padding:11px 13px;border-radius:10px;color:#ddece9;text-decoration:none;cursor:pointer;list-style:none;font-weight:720;transition:background .16s,color .16s}
.sidebar-group>summary::-webkit-details-marker{display:none}.sidebar-link:hover,.sidebar-group>summary:hover{background:rgba(255,255,255,.09);color:#fff}.sidebar-link.active{background:rgba(255,255,255,.13);color:#fff;box-shadow:inset 4px 0 #e18a37}
.nav-icon{flex:0 0 23px;width:23px;height:23px}.sidebar-chevron{margin-left:auto;transition:transform .18s}.sidebar-group[open]>summary .sidebar-chevron{transform:rotate(90deg)}
.sidebar-count{min-width:22px;height:22px;display:grid;place-items:center;margin-left:auto;padding:0 6px;border-radius:999px;background:#e4822b;color:#fff;font-size:.7rem}.sidebar-count+.sidebar-chevron{margin-left:0}
.sidebar-submenu{display:grid;gap:2px;margin:2px 0 7px 49px;padding-left:10px;border-left:1px solid rgba(255,255,255,.17)}.sidebar-submenu a{padding:8px 10px;border-radius:8px;color:#c6ddd8;text-decoration:none;font-size:.84rem;line-height:1.25}.sidebar-submenu a:hover,.sidebar-submenu a.active{background:rgba(255,255,255,.1);color:#fff}.sidebar-submenu a.active{font-weight:800}
.sidebar-admin{margin-top:10px;padding-top:10px;border-top:1px solid rgba(255,255,255,.12)}.sidebar-footer{min-height:64px;display:flex;align-items:center;padding:12px 22px;border-top:1px solid rgba(255,255,255,.1)}.sidebar-footer small,.sidebar-footer strong{display:block}.sidebar-footer small{color:#a9ccc5;font-size:.68rem}.sidebar-footer strong{margin-top:2px;font-size:.76rem}
.app-workspace{min-width:0}.context-header{position:sticky;top:0;z-index:150;min-height:var(--header-height);display:grid;grid-template-columns:minmax(310px,540px) 1fr;align-items:center;gap:24px;padding:10px clamp(20px,3vw,42px);background:rgba(255,255,255,.94);border-bottom:1px solid var(--line);box-shadow:0 4px 18px rgba(28,57,50,.05);backdrop-filter:blur(12px)}
.mobile-menu-button{display:none;width:42px;height:42px;border:1px solid var(--line);border-radius:10px;background:#fff;color:var(--primary);cursor:pointer}.project-picker-wrap{min-width:0}.context-label{display:block;margin-bottom:5px;color:#315c54;font-size:.72rem;font-weight:850;letter-spacing:.04em;text-transform:uppercase}
.project-picker{position:relative}.project-picker>summary{height:48px;display:flex;align-items:center;gap:11px;padding:0 14px;border:1px solid #a9c8c0;border-radius:10px;background:#fbfdfc;cursor:pointer;list-style:none}.project-picker>summary::-webkit-details-marker{display:none}.project-picker>summary strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.project-picker>summary .nav-icon{color:var(--primary)}.picker-chevron{margin-left:auto;color:#42655e}
.project-picker-panel{position:absolute;top:calc(100% + 8px);left:0;z-index:250;width:min(520px,calc(100vw - 40px));padding:12px;border:1px solid var(--line);border-radius:13px;background:#fff;box-shadow:0 20px 50px rgba(16,45,39,.17)}.project-search{display:flex;align-items:center;gap:8px;padding:0 10px;border:1px solid var(--line);border-radius:9px;background:#f7faf9}.project-search .nav-icon{width:19px;color:var(--muted)}.project-search input{width:100%;height:42px;border:0;outline:0;background:transparent;color:var(--ink)}.project-options{max-height:300px;overflow:auto;margin-top:8px}.project-options form[hidden]{display:none}.project-options button{width:100%;display:flex;justify-content:space-between;gap:12px;padding:11px;border:0;border-radius:8px;background:#fff;color:var(--ink);cursor:pointer;text-align:left}.project-options button:hover,.project-options button.selected{background:#eaf4f1;color:var(--primary-dark);font-weight:750}.project-no-results,.project-picker-empty{color:var(--muted);font-size:.85rem}.project-picker-empty{padding:12px;border:1px dashed var(--line);border-radius:9px}
.header-actions{display:flex;align-items:center;justify-content:flex-end;gap:14px}.notification-button{position:relative;width:44px;height:44px;display:grid;place-items:center;border:1px solid var(--line);border-radius:50%;background:#fff;color:var(--primary);text-decoration:none}.notification-button span{position:absolute;top:-4px;right:-4px;min-width:20px;height:20px;display:grid;place-items:center;padding:0 5px;border:2px solid #fff;border-radius:999px;background:#d96d1d;color:#fff;font-size:.65rem;font-weight:900}
.account-menu{position:relative}.account-menu>summary{display:flex;align-items:center;gap:10px;cursor:pointer;list-style:none}.account-menu>summary::-webkit-details-marker{display:none}.user-avatar{width:44px;height:44px;display:grid;place-items:center;border-radius:50%;background:var(--primary-dark);color:#fff;font-size:1.15rem;font-weight:850}.account-copy strong,.account-copy small{display:block}.account-copy small{margin-top:2px;color:var(--muted);font-size:.75rem}.account-panel{position:absolute;top:calc(100% + 12px);right:0;width:260px;padding:14px;border:1px solid var(--line);border-radius:13px;background:#fff;box-shadow:0 20px 45px rgba(16,45,39,.16)}.account-panel>div{padding:4px 6px 13px;border-bottom:1px solid var(--line)}.account-panel small{display:block;margin-top:3px;color:var(--muted);overflow:hidden;text-overflow:ellipsis}.account-panel form{margin-top:8px}.account-panel button{width:100%;display:flex;align-items:center;gap:10px;padding:10px;border:0;border-radius:8px;background:#fff;color:#8e241c;cursor:pointer}.account-panel button:hover{background:#fff0ee}.account-panel .nav-icon{width:20px}
.app-content.container{width:min(1480px,calc(100% - 48px));padding:34px 0 70px}.sidebar-overlay{display:none}
.sidebar-is-collapsed{grid-template-columns:var(--sidebar-collapsed) minmax(0,1fr)}.sidebar-is-collapsed .app-sidebar .sidebar-label,.sidebar-is-collapsed .sidebar-chevron,.sidebar-is-collapsed .sidebar-count,.sidebar-is-collapsed .sidebar-submenu{display:none}.sidebar-is-collapsed .sidebar-brand-row{padding-inline:16px}.sidebar-is-collapsed .sidebar-collapse{position:absolute;right:-14px;top:68px;background:var(--primary-dark)}.sidebar-is-collapsed .sidebar-collapse span{display:block;transform:rotate(180deg)}.sidebar-is-collapsed .sidebar-link,.sidebar-is-collapsed .sidebar-group>summary{justify-content:center;padding-inline:12px}.sidebar-is-collapsed .sidebar-nav{padding-inline:10px}.sidebar-is-collapsed .sidebar-footer{display:none}

/* Painel inicial confortável e orientado ao trabalho. */
.dashboard-welcome{margin-bottom:20px}.dashboard-welcome>span,.dashboard-welcome p{color:var(--muted)}.dashboard-welcome h1{margin:2px 0;font-size:clamp(1.7rem,3vw,2.35rem);letter-spacing:-.035em}.dashboard-welcome p{margin:0}
.active-project-hero{min-height:116px;display:flex;align-items:center;justify-content:center;gap:30px;margin-bottom:24px;padding:24px 34px;border:1px solid #c5e0d8;border-left:5px solid #2b9a75;border-radius:16px;background:linear-gradient(105deg,#e6f4ee,#eef8f5);box-shadow:0 8px 24px rgba(29,99,79,.06)}.active-project-hero .nav-icon{width:58px;height:58px;color:#238d69}.active-project-hero div{text-align:center}.active-project-hero span{display:block;margin-bottom:7px;color:#174f43;font-size:.78rem;font-weight:900;letter-spacing:.2em;text-transform:uppercase}.active-project-hero strong{font-size:clamp(1.65rem,3vw,2.7rem);line-height:1.1;color:#123f38}
.dashboard-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;margin-bottom:32px}.kpi-card{position:relative;display:grid;grid-template-columns:60px 1fr auto;grid-template-rows:auto 8px;gap:14px;padding:20px;border:1px solid var(--line);border-radius:15px;background:#fff;box-shadow:0 8px 24px rgba(25,57,50,.045)}.kpi-icon{grid-row:1/3;width:56px;height:56px;display:grid;place-items:center;border-radius:50%;background:#e8f4ee;color:#268b68}.kpi-icon .nav-icon{width:28px;height:28px}.kpi-card span{display:block;color:#334b59;font-size:.85rem}.kpi-card strong{display:block;margin-top:7px;font-size:1.32rem;white-space:nowrap}.kpi-card>b{align-self:end;color:currentColor;font-size:.75rem}.kpi-progress{align-self:center;height:8px;overflow:hidden;border-radius:999px;background:#e6eeeb}.kpi-progress i{display:block;height:100%;border-radius:inherit;background:currentColor}.kpi-green{color:#238c65}.kpi-blue{color:#2c75c9}.kpi-orange{color:#d26b21}.kpi-purple{color:#7654c8}.kpi-blue .kpi-icon{background:#e8f1fb;color:#2c75c9}.kpi-orange .kpi-icon{background:#fff0e5;color:#d26b21}.kpi-purple .kpi-icon{background:#f0ebfb;color:#7654c8}
.dashboard-section-title{display:flex;align-items:center;gap:10px;color:#164f43}.dashboard-section-title .nav-icon{width:25px}.dashboard-section-title h2{margin:0;font-size:1.3rem}.quick-access-section{margin:26px 0 30px}.quick-access-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:16px;margin-top:15px}.quick-card{min-height:115px;display:grid;grid-template-columns:1fr auto;grid-template-rows:1fr auto;align-items:center;padding:20px;border:1px solid var(--line);border-radius:14px;color:#183348;text-decoration:none;transition:transform .16s,box-shadow .16s}.quick-card:hover{transform:translateY(-2px);box-shadow:0 12px 28px rgba(30,64,55,.09)}.quick-card .nav-icon{grid-column:1/-1;width:34px;height:34px;color:var(--primary)}.quick-card strong{font-size:.92rem}.quick-card>span{font-size:1.4rem}.quick-green{background:#eaf6f1}.quick-blue{background:#eaf3fc}.quick-orange{background:#fff4e5}.quick-purple{background:#f2edfc}
.dashboard-lower-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.dashboard-panel{padding:20px;border:1px solid var(--line);border-radius:15px;background:#fff}.dashboard-alert{display:grid;grid-template-columns:32px 1fr auto;align-items:center;gap:10px;margin-top:16px;padding:13px;border-radius:10px;background:#fff2e9;color:#713a18;text-decoration:none}.dashboard-alert>span{width:28px;height:28px;display:grid;place-items:center;border-radius:50%;background:#d86f26;color:#fff;font-weight:900}.deadline-list{display:grid;gap:9px;margin-top:15px}.deadline-list>a{display:grid;grid-template-columns:52px 1fr auto;align-items:center;gap:12px;padding:10px;border:1px solid var(--line);border-radius:10px;text-decoration:none}.deadline-list time{display:grid;place-items:center;padding-right:10px;border-right:1px solid var(--line)}.deadline-list time strong{font-size:1.05rem}.deadline-list time span,.deadline-list small{color:var(--muted);font-size:.68rem}.deadline-list>a>span>strong,.deadline-list>a>span>small{display:block}.dashboard-empty-success{margin-top:15px;padding:14px;border-radius:10px;background:#eaf6f1;color:#17644f}.no-project-state{max-width:620px;margin:80px auto;padding:40px;border:1px dashed #aec7c1;border-radius:18px;background:#fff;text-align:center}.no-project-state .nav-icon{width:56px;height:56px;color:var(--primary)}.no-project-state p{color:var(--muted);line-height:1.6}
@media(max-width:1250px){.dashboard-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.quick-access-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.context-header{grid-template-columns:minmax(280px,500px) 1fr}.account-copy{display:none}}
@media(max-width:1100px){.app-shell,.sidebar-is-collapsed{display:block}.app-sidebar{position:fixed;left:0;top:0;width:var(--sidebar-expanded);transform:translateX(-102%);transition:transform .2s}.sidebar-is-open .app-sidebar{transform:translateX(0)}.sidebar-overlay{position:fixed;inset:0;z-index:190;border:0;background:rgba(10,35,31,.42);cursor:pointer}.sidebar-is-open .sidebar-overlay{display:block}.sidebar-collapse{display:none}.mobile-menu-button{display:grid;place-items:center}.context-header{grid-template-columns:44px minmax(220px,1fr) auto}.app-content.container{width:min(100% - 36px,1180px)}}
@media(max-width:760px){:root{--header-height:76px}.context-header{grid-template-columns:42px minmax(0,1fr) auto;gap:9px;padding:8px 12px}.context-label{display:none}.project-picker>summary{height:44px;padding-inline:10px}.project-picker>summary .nav-icon{display:none}.notification-button{display:none}.user-avatar{width:40px;height:40px}.account-copy,.account-menu .picker-chevron{display:none}.app-content.container{width:calc(100% - 24px);padding-top:24px}.active-project-hero{min-height:96px;justify-content:flex-start;gap:15px;padding:20px}.active-project-hero .nav-icon{width:42px;height:42px}.active-project-hero div{text-align:left}.dashboard-kpis,.dashboard-lower-grid{grid-template-columns:1fr}.quick-access-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.kpi-card{grid-template-columns:52px 1fr auto}.kpi-icon{width:50px;height:50px}}
@media(max-width:480px){.quick-access-grid{grid-template-columns:1fr}.active-project-hero strong{font-size:1.35rem}.dashboard-welcome h1{font-size:1.65rem}.project-picker-panel{position:fixed;top:72px;left:12px;right:12px;width:auto}.kpi-card strong{font-size:1.15rem}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition:none!important}}
@media print{.app-sidebar,.context-header,.sidebar-overlay{display:none!important}.app-shell{display:block!important}.app-content.container{width:100%!important}}

/* V9.2 — encaixe horizontal no espaço útil da janela. */
html,body{max-width:100%;overflow-x:clip}
.app-shell,.app-workspace,.app-content,main,section,article,form,fieldset{min-width:0;max-width:100%}
.app-content.container{width:auto;max-width:1480px;margin-inline:24px;padding-inline:0}
.form-grid,.form-grid>*,.two-columns,.two-columns>*,.summary-grid,.summary-grid>*,.inline-form,.form-card{min-width:0;max-width:100%}
.form-card input:not([type="checkbox"]),.form-card select,.form-card textarea,.inline-form input:not([type="checkbox"]),.inline-form select,.inline-form textarea,.wide-field textarea{min-width:0;max-width:100%}
.declaration-create-highlight{margin-top:22px;border:2px solid #7bb9aa;background:linear-gradient(145deg,#fff 0%,#f0faf7 100%);box-shadow:0 14px 34px rgba(13,92,75,.12)}
.declaration-create-heading{display:flex;align-items:center;gap:14px;margin-bottom:18px;padding-bottom:16px;border-bottom:1px solid #cbe3dc}.declaration-create-heading>span{display:grid;place-items:center;flex:0 0 48px;width:48px;height:48px;border-radius:14px;background:var(--primary);color:#fff;font-size:1.8rem;font-weight:800}.declaration-create-heading>div{display:grid;gap:4px}.declaration-create-heading strong{color:#073d34;font-size:clamp(1.15rem,2vw,1.45rem)}.declaration-create-heading small{color:var(--muted);font-size:.92rem}
.declaration-field-panel{display:grid;gap:18px}.declaration-field-panel-heading h2,.declaration-field-panel-heading p{margin:0}.declaration-field-panel-heading p{margin-top:5px;color:var(--muted)}.declaration-field-steps{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.declaration-field-steps>div{display:flex;align-items:center;gap:12px;padding:14px;border:1px solid #d9e8e4;border-radius:14px;background:#f7fbfa}.declaration-field-steps>div>span{display:grid;place-items:center;flex:0 0 34px;width:34px;height:34px;border-radius:50%;background:#176c5b;color:#fff;font-weight:900}.declaration-field-steps p{display:grid;gap:2px;margin:0}.declaration-field-steps small{color:var(--muted)}.declaration-field-search{padding:14px;border:1px solid #bcd8d1;border-radius:14px;background:#f3faf8}.declaration-field-search small{color:var(--muted);font-weight:500}.declaration-field-categories{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.declaration-field-group{min-width:0;border:1px solid #dbe7e4;border-radius:14px;background:#fff;overflow:hidden}.declaration-field-group>summary{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;padding:14px;cursor:pointer;list-style:none}.declaration-field-group>summary::-webkit-details-marker{display:none}.declaration-field-group>summary>span:nth-child(2){display:grid;gap:2px}.declaration-field-group>summary small{color:var(--muted);font-weight:500}.declaration-field-group[open]>summary{border-bottom:1px solid #dbe7e4;background:#f4faf8}.declaration-field-icon{display:grid;place-items:center;min-width:42px;height:34px;padding:0 7px;border-radius:9px;background:#e2f2ed;color:#126554;font-size:.68rem;font-weight:900;letter-spacing:.04em}.declaration-field-count{color:#54716b;font-size:.78rem;white-space:nowrap}.declaration-token-toolbar{display:flex;flex-wrap:wrap;gap:8px;padding:14px}.declaration-token-toolbar .button{display:inline-flex;align-items:center;gap:5px;min-height:38px;text-align:left}.declaration-token-toolbar .button span{color:#16806a;font-size:1.05rem}.declaration-custom-field{grid-column:1/-1;border-color:#a8d4c9}.declaration-custom-field-body{padding:16px}.declaration-custom-field-body>p{margin-top:0;color:var(--muted)}.declaration-field-empty{padding:14px;border-radius:12px;background:#fff4dc;color:#7a5200}.declaration-field-help{margin-top:0}@media(max-width:800px){.declaration-field-steps,.declaration-field-categories{grid-template-columns:1fr}.declaration-field-group>summary{grid-template-columns:auto minmax(0,1fr)}.declaration-field-count{grid-column:2}.declaration-token-toolbar .button{width:100%;justify-content:flex-start}}
.table-shell{max-width:100%;overflow-x:auto;overscroll-behavior-inline:contain}
img,svg,video,canvas{max-width:100%}
@media(max-width:1100px){.app-content.container{width:auto;max-width:none;margin-inline:18px}}
@media(max-width:760px){.app-content.container{width:auto;margin-inline:12px}}

/* V9.3 — nenhuma rolagem horizontal, inclusive nas tabelas. */
.app-content.container{max-width:none;margin-inline:16px}
.table-shell{width:100%;max-width:100%;overflow-x:visible}
.table-shell table,table{width:100%;max-width:100%;table-layout:fixed}
th,td{min-width:0!important;max-width:none;overflow-wrap:anywhere;word-break:break-word;white-space:normal;padding:11px 10px}
th{font-size:.68rem;letter-spacing:.025em}
td{font-size:.84rem;line-height:1.35}
td a,td button,td strong,td small{max-width:100%;overflow-wrap:anywhere;white-space:normal}
.sortable-filterable-table thead th{min-width:0!important}
.column-filter-input{min-width:0!important;width:100%!important;padding:6px!important}
.compact-form,.payment-process-buttons{min-width:0!important;max-width:100%}

/* Processo de pagamento no mesmo padrão de linha dos documentos. */
.payment-process-buttons a{grid-template-columns:38px minmax(0,1fr) 118px;grid-template-areas:'icon title generate' 'icon detail generate';min-height:68px;padding:10px 12px}.payment-process-buttons a strong{font-size:.94rem;font-weight:850;line-height:1.2}.payment-process-buttons a small{font-size:.72rem;line-height:1.3}.payment-process-generate{grid-area:generate;display:flex;align-items:center;justify-content:center;align-self:stretch;min-height:44px;padding:9px 12px;border:1px solid #8fc1b5;border-radius:10px;background:#fff;color:var(--primary-dark);font-size:.8rem;font-weight:850;white-space:nowrap}.payment-process-buttons a:hover .payment-process-generate{border-color:var(--primary);background:#e6f4f0}
@media(max-width:620px){.payment-process-buttons a{grid-template-columns:38px minmax(0,1fr);grid-template-areas:'icon title' 'icon detail' 'generate generate'}.payment-process-generate{margin-top:6px}}

/* Destaque suave para a pesquisa das despesas efetuadas. */
#despesas-efetuadas .filter-bar{position:relative;padding:16px 16px 16px 20px;border:1px solid #b7d8cf;border-left:5px solid #5cae9a;border-radius:14px;background:linear-gradient(135deg,#edf8f5 0%,#f7fbfa 100%);box-shadow:0 5px 16px rgba(23,91,77,.06)}#despesas-efetuadas .filter-bar input,#despesas-efetuadas .filter-bar select{background:#fff;border-color:#b9d3dc}#despesas-efetuadas .filter-bar input:focus,#despesas-efetuadas .filter-bar select:focus{border-color:#4b9f8b;box-shadow:0 0 0 3px rgba(75,159,139,.13)}

/* Estorno com destaque de risco, sem confundir com as ações comuns. */
.expense-actions-grid>details.danger-details{border-color:#e7aaa5;background:#fff3f2;box-shadow:inset 5px 0 0 #c9362b}.expense-actions-grid>details.danger-details>summary{padding-left:18px;color:#a6221a;font-weight:900}.expense-actions-grid>details.danger-details>summary::marker{color:#c9362b}.expense-actions-grid>details.danger-details:hover{border-color:#cf625a;background:#fde9e7}.expense-actions-grid>details.danger-details[open]{background:#fff7f6}

/* Títulos das ações da despesa com leitura mais rápida. */
.expense-actions-grid>details>summary{color:#102b46;font-weight:850;letter-spacing:.005em}.expense-actions-grid>details>summary::marker{font-weight:900}.expense-actions-grid>details[open]>summary{color:var(--primary-dark)}

/* Central visual dos relatórios financeiros. */
.financial-report-filter{padding:16px;border:1px solid #b7d8cf;border-left:5px solid #5cae9a;border-radius:14px;background:linear-gradient(135deg,#edf8f5,#f8fcfb);box-shadow:0 5px 16px rgba(23,91,77,.06)}.financial-report-selector{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:9px;margin:14px 0 18px;padding:10px;border:1px solid #c9ded8;border-radius:14px;background:#f5faf8;position:sticky;top:72px;z-index:12}.financial-report-selector-item{display:grid;align-content:center;gap:4px;min-height:70px;padding:11px 13px;border:1px solid #9bc8bd;border-radius:11px;background:#fff;color:var(--primary-dark);text-align:center;text-decoration:none;transition:.16s ease}.financial-report-selector-item strong{font-size:.9rem;font-weight:900}.financial-report-selector-item small{color:#5b6f6a;font-size:.68rem;line-height:1.25}.financial-report-selector-item:hover{border-color:var(--primary);background:#edf8f5;transform:translateY(-1px)}.financial-report-selector-item.active{border-color:var(--primary);background:var(--primary);color:#fff;box-shadow:0 7px 16px rgba(22,112,91,.18)}.financial-report-selector-item.active small{color:#e8f7f3}.financial-report-active-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin:18px 0;padding:16px;border:1px solid #b8d6cf;border-radius:12px;background:#f2faf7}.financial-report-active-heading span{color:var(--primary);font-size:.72rem;font-weight:900;letter-spacing:.06em;text-transform:uppercase}.financial-report-active-heading h2{margin:4px 0 6px;text-align:left}.financial-report-export-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}.financial-report-table-meta{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:15px 0 8px;padding:10px 12px;border-radius:9px;background:#edf6f3;color:#395751}.financial-report-preview-table{max-height:none}.financial-report-preview-table table{font-size:.78rem}.financial-report-preview-table th{position:sticky;top:0;z-index:2}.financial-report-preview-table td{vertical-align:top}
@media(max-width:1080px){.financial-report-selector{grid-template-columns:repeat(3,minmax(0,1fr));position:static}}@media(max-width:720px){.financial-report-selector{grid-template-columns:1fr}.financial-report-active-heading{display:grid}.financial-report-export-actions,.financial-report-export-actions .button{width:100%}.financial-report-table-meta{align-items:flex-start;flex-direction:column}}
.financial-report-preview-table .report-date-nowrap{min-width:88px;padding-left:8px;padding-right:8px;white-space:nowrap}

/* Visão geral financeira: hierarquia entre valores, contexto e alertas. */
.finance-overview-hero{display:grid;gap:14px;margin:16px 0 20px;padding:20px;border:1px solid #c9ded8;border-radius:20px;background:linear-gradient(145deg,#f3faf7 0%,#fff 54%,#f5f9fb 100%);box-shadow:0 10px 28px rgba(18,72,61,.06)}.finance-overview-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}.finance-overview-heading h2{margin:4px 0;color:#102a46;font-size:1.35rem}.finance-overview-heading p{margin:0;color:#637670}.finance-overview-updated{padding:7px 10px;border-radius:999px;background:#e6f3ef;color:#397064;font-size:.7rem;font-weight:800;white-space:nowrap}.finance-overview-primary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.finance-overview-primary article{display:grid;gap:5px;min-height:126px;padding:17px;border:1px solid #d0e1dc;border-left:5px solid #34816e;border-radius:15px;background:#fff}.finance-overview-primary article.received{border-left-color:#397fbd;background:#f8fbff}.finance-overview-primary article.available{border-left-color:#d59a31;background:#fffbf2}.finance-overview-primary span,.finance-overview-secondary span,.finance-overview-alerts span{color:#557069;font-size:.76rem;font-weight:900;letter-spacing:.025em;text-transform:uppercase}.finance-overview-primary strong{color:#102a46;font-size:clamp(1.25rem,2.2vw,1.75rem);line-height:1.15}.finance-overview-primary small{align-self:end;color:#697b76}.finance-overview-secondary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.finance-overview-secondary article{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;border:1px solid #dce7e3;border-radius:12px;background:#fff}.finance-overview-secondary strong{color:#17324d;font-size:1rem;white-space:nowrap}.finance-overview-alerts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;padding-top:13px;border-top:1px solid #dce8e4}.finance-overview-alerts article{display:grid;grid-template-columns:1fr auto;gap:3px 10px;padding:12px 14px;border:1px solid #dce6e3;border-radius:12px;background:#fff}.finance-overview-alerts article strong{grid-row:1/3;grid-column:2;align-self:center;font-size:1.35rem}.finance-overview-alerts article small{color:#657872}.finance-overview-alerts article.danger{border-color:#edb5b0;background:#fff5f4}.finance-overview-alerts article.danger strong{color:#b12a21}.finance-overview-alerts article.warning{border-color:#ead292;background:#fffbef}.finance-overview-alerts article.warning strong{color:#966300}.finance-overview-alerts article.ok{border-color:#b9ddcf;background:#f5fbf8}.finance-overview-alerts article.ok strong{color:#16705a}
@media(max-width:900px){.finance-overview-primary,.finance-overview-secondary,.finance-overview-alerts{grid-template-columns:1fr 1fr}.finance-overview-primary article:last-child,.finance-overview-alerts article:last-child{grid-column:1/-1}}@media(max-width:600px){.finance-overview-hero{padding:14px}.finance-overview-heading{flex-direction:column}.finance-overview-primary,.finance-overview-secondary,.finance-overview-alerts{grid-template-columns:1fr}.finance-overview-primary article:last-child,.finance-overview-alerts article:last-child{grid-column:auto}.finance-overview-secondary article{align-items:flex-start;flex-direction:column}.finance-overview-updated{white-space:normal}}

/* Subpainéis da visão geral financeira. */
.finance-overview-subpanel,.finance-overview-query-panel{margin:14px 0;border:1px solid #b9d8d0;border-radius:15px;background:#fff;overflow:hidden;box-shadow:0 5px 16px rgba(18,72,61,.045)}.finance-overview-subpanel>summary,.finance-overview-query-panel>summary{position:relative;display:grid;gap:4px;padding:17px 52px 17px 19px;cursor:pointer;background:linear-gradient(135deg,#edf8f5,#f9fcfb);color:var(--primary-dark);font-size:1rem;font-weight:900;list-style:none}.finance-overview-subpanel>summary::-webkit-details-marker,.finance-overview-query-panel>summary::-webkit-details-marker{display:none}.finance-overview-subpanel>summary::after,.finance-overview-query-panel>summary::after{content:'+';position:absolute;right:19px;top:50%;transform:translateY(-50%);display:grid;place-items:center;width:28px;height:28px;border-radius:9px;background:#d9efe8;color:#126b58;font-size:1.25rem;font-weight:900}.finance-overview-subpanel[open]>summary::after,.finance-overview-query-panel[open]>summary::after{content:'−'}.finance-overview-subpanel>summary small,.finance-overview-query-panel>summary small{color:#60756f;font-size:.76rem;font-weight:550;line-height:1.35}.finance-overview-subpanel[open]>summary,.finance-overview-query-panel[open]>summary{border-bottom:1px solid #cce0da;background:#e5f4ef}.finance-overview-subpanel-body{padding:16px}.finance-overview-subpanel-body>.table-shell{margin:0}.finance-overview-query-panel{border-left:5px solid #23836b}.finance-overview-query-panel>summary{padding-top:19px;padding-bottom:19px;font-size:1.05rem}.finance-overview-query-panel>div{padding:16px;background:#fff}.finance-overview-query-panel .filter-bar{margin-top:0;padding:15px;border:1px solid #c8ddd7;border-radius:12px;background:#f5faf8}
.composition-filter-bar{grid-template-columns:repeat(4,minmax(0,1fr)) auto}
.composition-filter-bar label{min-width:0}
.financial-tabs{max-width:100%;overflow-x:visible;flex-wrap:wrap}
.financial-tabs .button{white-space:normal}
@media(max-width:1250px){th,td{padding:9px 7px;font-size:.78rem}.composition-filter-bar{grid-template-columns:repeat(2,minmax(0,1fr))}.composition-filter-bar>button{width:100%}}
@media(max-width:900px){.app-content.container{margin-inline:10px}.form-grid,.two-columns{grid-template-columns:1fr}.composition-filter-bar{grid-template-columns:1fr}.table-shell table{font-size:.72rem}th,td{padding:7px 5px;font-size:.7rem}.button{padding:8px 10px;font-size:.78rem}}

/* V9.4 — menus de abas permanecem visíveis durante a rolagem. */
.app-content>.subnav,.financial-tabs{position:sticky;top:var(--header-height);z-index:140;max-width:100%;margin-inline:0;padding:10px 8px;border:1px solid var(--line);border-radius:0 0 12px 12px;background:rgba(247,250,249,.98);box-shadow:0 8px 18px rgba(18,40,62,.09);backdrop-filter:blur(10px)}
.app-content>.subnav .button,.financial-tabs .button{flex:1 1 auto;min-width:0;text-align:center;white-space:normal}
.financial-tabs+section,#fornecedores,#certidoes,#receitas,#despesas,#documentos-formais,#extratos,#importacoes,#lancamentos{scroll-margin-top:calc(var(--header-height) + 78px)}
@media(max-width:760px){.app-content>.subnav,.financial-tabs{top:var(--header-height);padding:7px 5px}.app-content>.subnav .button,.financial-tabs .button{flex:1 1 calc(50% - 8px)}}

/* V10 — tratamento global e persistente dos erros de cadastro. */
.validation-toast{position:fixed;right:22px;bottom:22px;z-index:1000;display:grid;grid-template-columns:100px minmax(0,1fr);align-items:center;width:min(570px,calc(100vw - 44px));max-height:min(70vh,560px);overflow-y:auto;border:1px solid #e9aaa5;border-left:6px solid #b42318;border-radius:18px;background:#fff;color:#6f1d17;box-shadow:0 22px 60px rgba(62,20,17,.24)}
.validation-toast .hub-alert-content{min-width:0}.validation-toast header{position:sticky;top:0;display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding:16px 16px 13px;background:#fff4f2;border-bottom:1px solid #f2cbc7}
.validation-toast header div{min-width:0}.validation-toast header strong,.validation-toast header small{display:block}.validation-toast header strong{font-size:1rem;color:#8f2119}.validation-toast header small{margin-top:4px;color:#8a4a45;font-size:.78rem;line-height:1.35}
.validation-toast header button{flex:0 0 34px;width:34px;height:34px;display:grid;place-items:center;padding:0;border:1px solid #dfa19b;border-radius:9px;background:#fff;color:#9f281f;cursor:pointer;font-size:1.4rem;line-height:1}.validation-toast header button:hover,.validation-toast header button:focus{background:#ffe7e4;outline:3px solid rgba(180,35,24,.12)}
.validation-toast ul{display:grid;gap:8px;margin:0;padding:15px 22px 10px 38px;color:#711f19}.validation-toast li{padding-left:2px;line-height:1.4}.validation-toast>p{margin:0;padding:10px 16px 15px;border-top:1px solid #f4d5d2;color:#6c4b48;font-size:.78rem;font-weight:700}
.field-validation-warning{border-color:#d6a900!important;background:#fff8cf!important;color:#3f3400!important;box-shadow:0 0 0 3px rgba(214,169,0,.22)!important;outline:0!important}.label-validation-warning{padding:8px;border:1px solid #e3bd32!important;border-radius:10px;background:#fffbea!important;color:#5f4b00!important}.field-validation-help{display:block!important;margin-top:2px;color:#795e00!important;font-size:.72rem!important;font-weight:800!important;line-height:1.35}.details-validation-warning{border-color:#dfbd3d!important}.details-validation-warning>summary{background:#fff9dc!important}.field-validation-warning[type=checkbox],.field-validation-warning[type=radio]{accent-color:#c99b00;outline:3px solid rgba(214,169,0,.28)!important}
.team-item-validation-warning{border-width:2px!important;box-shadow:0 0 0 4px rgba(214,169,0,.16)!important}.team-item-validation-warning>summary::after{content:"Revisar este item";margin-left:auto;padding:4px 9px;border-radius:999px;background:#f2c94c;color:#4e3d00;font-size:.68rem;font-weight:900}
@media(max-width:600px){.validation-toast{left:10px;right:10px;bottom:10px;width:auto;max-height:58vh;grid-template-columns:72px minmax(0,1fr)}.validation-toast header{padding:13px}.validation-toast ul{padding:13px 18px 9px 32px}}
.success-toast{position:fixed;right:22px;bottom:22px;z-index:1001;display:grid;grid-template-columns:92px minmax(0,1fr);align-items:center;gap:10px;width:min(480px,calc(100vw - 44px));padding:10px 18px 10px 8px;border:1px solid #9bd6c2;border-left:6px solid #16835f;border-radius:18px;background:#f2fbf7;color:#104f3c;box-shadow:0 18px 48px rgba(16,79,60,.2);pointer-events:none;animation:success-toast-in .22s ease-out}
.hub-alert-mascot{display:block;width:96px;height:96px;object-fit:contain;align-self:center;justify-self:center}.success-toast .hub-alert-mascot{width:88px;height:88px}.success-toast div{min-width:0}.success-toast strong,.success-toast small{display:block}.success-toast strong{font-size:1rem}.success-toast small{margin-top:4px;color:#316b5a;font-size:.82rem;line-height:1.4}.success-toast::after{content:"";position:absolute;left:0;bottom:0;height:3px;width:100%;border-radius:0 0 14px 14px;background:#16835f;transform-origin:left;animation:success-toast-time 3.8s linear forwards}
.hub-confirm-overlay[hidden]{display:none}.hub-confirm-overlay{position:fixed;inset:0;z-index:1400;display:grid;place-items:center;padding:20px;background:rgba(10,31,53,.5);backdrop-filter:blur(3px)}.hub-confirm-dialog{display:grid;grid-template-columns:150px minmax(0,1fr);align-items:center;gap:18px;width:min(620px,100%);padding:22px;border:1px solid #9ebbe0;border-radius:22px;background:#fff;box-shadow:0 28px 80px rgba(10,31,53,.32);animation:success-toast-in .2s ease-out}.hub-confirm-mascot{display:block;width:150px;height:150px;object-fit:contain}.hub-confirm-copy{min-width:0}.hub-confirm-copy .eyebrow{color:#3568a8}.hub-confirm-copy h2{margin:.35rem 0 .55rem;color:#10294b;font-size:1.45rem}.hub-confirm-copy p{margin:0;color:#465d78;line-height:1.5}.hub-confirm-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:20px}.hub-confirm-is-open{overflow:hidden}

/* Camada global de usabilidade: listas pesquisáveis e formulários híbridos. */
.select-option-search{width:100%;min-width:0;margin:6px 0;padding-right:38px;background:#fbfdfc linear-gradient(90deg,transparent calc(100% - 40px),#eef5f2 calc(100% - 40px));border-color:#b8cec8;font-size:.86rem}
.select-option-search::placeholder{color:#687a75}.select-option-search:focus{background:#fff;border-color:var(--primary);box-shadow:0 0 0 3px rgba(18,107,85,.13)}
.form-surface-backdrop{position:fixed;inset:0;z-index:1180;width:100%;height:100%;padding:0;border:0;border-radius:0;background:rgba(13,34,31,.48);backdrop-filter:blur(2px);cursor:default}
.form-surface-backdrop[hidden]{display:none}.form-surface-is-open{overflow:hidden}
details[data-form-surface="modal"][open],details[data-form-surface="drawer"][open]{position:fixed!important;z-index:1200!important;margin:0!important;border:1px solid #c7d9d4!important;background:#fff!important;box-shadow:0 28px 80px rgba(10,35,29,.3)!important;overflow:auto!important;overscroll-behavior:contain}
details[data-form-surface="modal"][open]{left:50%;top:50%;width:min(720px,calc(100vw - 42px));max-height:min(86vh,820px);transform:translate(-50%,-50%);border-radius:18px!important}
details[data-form-surface="drawer"][open]{top:0;right:0;width:min(680px,calc(100vw - 44px));height:100dvh;max-height:none;border-radius:18px 0 0 18px!important;animation:form-drawer-in .2s ease-out}
details[data-form-surface][open]>summary{position:sticky;top:0;z-index:2;display:flex!important;align-items:center;min-height:64px;margin:0!important;padding:18px 68px 18px 22px!important;border:0!important;border-bottom:1px solid #dce8e5!important;border-radius:0!important;background:rgba(247,251,249,.98)!important;color:#073f35!important;font-size:1.02rem!important;font-weight:900!important;cursor:default!important;backdrop-filter:blur(8px)}
details[data-form-surface][open]>summary::marker,details[data-form-surface][open]>summary::-webkit-details-marker{display:none;content:""}
details[data-form-surface][open]>form,details[data-form-surface][open]>.compact-form{margin:0!important;padding:22px!important;border:0!important;border-radius:0!important;background:#fff!important}
details[data-form-surface][open]>.form-surface-close{display:grid}.form-surface-close{display:none;position:absolute;right:18px;top:14px;z-index:4;place-items:center;width:38px;height:38px;padding:0;border:1px solid #bfd3ce;border-radius:10px;background:#fff;color:#245b50;font-size:1.55rem;line-height:1;cursor:pointer}
.form-surface-close:hover,.form-surface-close:focus{border-color:#16806a;background:#eaf6f2;color:#075c4d;outline:3px solid rgba(22,128,106,.13)}
details[data-form-surface][open] .form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}details[data-form-surface][open] input,details[data-form-surface][open] select,details[data-form-surface][open] textarea{max-width:100%}
@keyframes form-drawer-in{from{opacity:.65;transform:translateX(34px)}to{opacity:1;transform:translateX(0)}}
@media(max-width:700px){details[data-form-surface="modal"][open],details[data-form-surface="drawer"][open]{inset:0!important;width:100vw!important;height:100dvh!important;max-width:none!important;max-height:none!important;transform:none!important;border:0!important;border-radius:0!important}details[data-form-surface][open]>summary{min-height:58px;padding:15px 62px 15px 16px!important}details[data-form-surface][open]>form,details[data-form-surface][open]>.compact-form{padding:16px!important}details[data-form-surface][open] .form-grid{grid-template-columns:1fr}.form-surface-close{right:12px;top:10px}}
@keyframes success-toast-in{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes success-toast-time{to{transform:scaleX(0)}}
@media(max-width:600px){.success-toast{left:10px;right:10px;bottom:10px;width:auto;grid-template-columns:70px minmax(0,1fr);padding:8px 13px 8px 5px}.success-toast .hub-alert-mascot{width:68px;height:68px}.hub-confirm-dialog{grid-template-columns:1fr;text-align:center;padding:18px}.hub-confirm-mascot{width:118px;height:118px;margin:auto}.hub-confirm-actions{justify-content:center;flex-wrap:wrap}.hub-confirm-actions .button{flex:1 1 140px}}

/* Mascote HUB: movimentos leves, informativos e sem impacto nas regras do sistema. */
.validation-toast .hub-alert-mascot{transform-origin:50% 72%;will-change:transform;animation:hub-mascot-attention .68s ease-out both}
.success-toast .hub-alert-mascot{transform-origin:50% 72%;will-change:transform;animation:hub-mascot-celebrate .72s ease-in-out 2 both}
.hub-confirm-mascot{transform-origin:50% 78%;will-change:transform;animation:hub-mascot-float 2.35s ease-in-out infinite}
@keyframes hub-mascot-attention{0%{opacity:0;transform:translateY(8px) rotate(0)}35%{opacity:1;transform:translateY(-2px) rotate(-3deg)}65%{transform:translateY(0) rotate(3deg)}100%{opacity:1;transform:translateY(0) rotate(0)}}
@keyframes hub-mascot-celebrate{0%,100%{transform:translateY(0) rotate(0) scale(1)}35%{transform:translateY(-7px) rotate(-3deg) scale(1.035)}70%{transform:translateY(-2px) rotate(2deg) scale(1.015)}}
@keyframes hub-mascot-float{0%,100%{transform:translateY(0) rotate(0)}50%{transform:translateY(-7px) rotate(1deg)}}
@media(prefers-reduced-motion:reduce){.validation-toast .hub-alert-mascot,.success-toast .hub-alert-mascot,.hub-confirm-mascot{animation:none;will-change:auto}}
.institutional-metrics{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;margin:0 0 22px}.institutional-metrics article{display:grid;gap:8px;min-width:0;padding:17px;border:1px solid var(--line);border-radius:14px;background:#fff;box-shadow:0 5px 16px rgba(18,40,62,.05)}.institutional-metrics article span{color:var(--muted);font-size:.76rem;font-weight:700}.institutional-metrics article strong{font-size:1.55rem;color:var(--ink)}.institutional-metrics strong.active{color:#087f5b}.institutional-metrics strong.danger{color:#b42318}.institutional-metrics strong.warning{color:#b65b00}.institutional-metrics strong.attention{color:#9a6b00}
.institutional-search{margin:0 0 14px}.institutional-search input{width:100%}.institutional-hero{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:18px;margin:0 0 20px;padding:22px;border:1px solid #b8d8cf;border-radius:18px;background:linear-gradient(135deg,#f2faf7,#e3f4ee)}.institutional-hero img,.institutional-hero .organization-placeholder{width:72px;height:72px;object-fit:contain;border-radius:14px}.institutional-hero h1{margin:4px 0;font-size:clamp(1.4rem,3vw,2.15rem)}.compliance-score{display:grid;place-items:center;min-width:120px;padding:15px;border-radius:14px;background:#fff}.compliance-score strong{font-size:1.7rem;color:#087f5b}.compliance-score span{color:var(--muted);font-size:.78rem;font-weight:800}.institutional-document-groups{display:grid;gap:12px;margin-top:16px}.institutional-document-category{border:1px solid var(--line);border-radius:12px;background:#fff;overflow:hidden}.institutional-document-category>summary{display:flex;justify-content:space-between;padding:14px 16px;cursor:pointer;font-weight:850;color:#075e54}.institutional-document-category>summary span{display:grid;place-items:center;min-width:28px;height:24px;border-radius:999px;background:#e8f4f0;font-size:.72rem}.institutional-document-category .table-shell{border:0;border-top:1px solid var(--line);border-radius:0}.badge.danger{background:#feeceb;color:#a7251b}.badge.warning{background:#fff0df;color:#a65300}.badge.attention{background:#fff8cc;color:#735c00}
.institutional-document-category>summary .category-completion{min-width:108px;padding:0 10px;white-space:nowrap}.institutional-document-category>summary .category-completion.is-empty{background:#fff0df;color:#a65300}.institutional-document-category>summary .category-completion.is-complete{background:#e5f7ef;color:#087f5b}
.document-toggle-actions,.kit-category-toolbar{display:flex;gap:8px;align-items:center;flex-wrap:wrap;padding:10px 12px;border-top:1px solid var(--line);background:#f7fbf9}.document-toggle-actions .button{padding:8px 12px;font-size:.78rem}.document-files-row>td{padding:0!important;background:#fbfdfc}.document-file-list{margin:6px 10px 10px;border:1px solid var(--line);border-radius:10px;background:#fff}.document-file-list>summary{display:flex;justify-content:space-between;align-items:center;padding:10px 12px;cursor:pointer;color:#075e54;font-weight:800}.document-file-list>summary span{min-width:26px;padding:3px 8px;text-align:center;border-radius:999px;background:#e8f4f0}.nested-document-table{margin:0;border:0;border-top:1px solid var(--line);border-radius:0}.kit-selection-actions{position:sticky;top:var(--sticky-offset,112px);z-index:14;padding:10px;border:1px solid var(--line);border-radius:12px;background:rgba(255,255,255,.96);box-shadow:0 5px 18px rgba(9,54,47,.08)}.kit-selection-actions [data-kit-counter]{font-weight:800;color:#075e54}.kit-category-groups{margin-bottom:18px}.kit-category-toolbar{justify-content:flex-end}
.declaration-card-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:14px}.declaration-card{display:flex;flex-direction:column;justify-content:space-between;gap:18px;padding:18px;border:1px solid var(--line);border-radius:16px;background:#fff}.declaration-card h3{margin:8px 0}.declaration-card small{display:block;color:var(--muted)}.declaration-card .button{align-self:flex-start}.document-body-preview{white-space:pre-wrap;padding:18px;border:1px solid var(--line);border-radius:12px;background:#fff}
.declaration-category{margin-bottom:14px;padding:14px;border:1px solid var(--line);border-radius:16px;background:#f8fbfa}.declaration-category>summary{cursor:pointer;margin-bottom:12px}.kit-mode-card{margin-bottom:14px}.kit-category-include{display:flex;margin:12px 16px 0;padding:10px;border-radius:10px;background:#eef7f4}.kit-category-groups .institutional-document-category.is-disabled{opacity:.55}.kit-category-groups .institutional-document-category.is-disabled .table-shell{filter:grayscale(.5)}
@media(max-width:760px){.institutional-hero{grid-template-columns:auto 1fr}.institutional-hero .compliance-score{grid-column:1/-1;width:100%}.institutional-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}}
.institutional-dashboard-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.institutional-timeline,.institutional-recent-list{display:grid;gap:.65rem}.institutional-timeline>div,.institutional-recent-list>div{display:grid;grid-template-columns:auto auto 1fr;gap:.35rem .65rem;align-items:center;border-bottom:1px solid #dde7e4;padding:.55rem 0}.institutional-timeline small,.institutional-recent-list small{grid-column:3;color:var(--muted)}.institutional-recent-list>div{grid-template-columns:1fr}.institutional-recent-list small{grid-column:1}.category-compliance-grid{display:grid;gap:.65rem}.category-compliance-grid>div{display:grid;grid-template-columns:minmax(180px,1fr) minmax(160px,3fr) 52px;gap:.8rem;align-items:center}.category-compliance-grid span{display:grid}.category-compliance-grid small{color:var(--muted)}.category-compliance-grid .progress{height:8px;background:#e4ece9;border-radius:999px;overflow:hidden}.category-compliance-grid .progress i{display:block;height:100%;background:#16876d;border-radius:inherit}.upload-dropzone{border:2px dashed #9bbdb4;border-radius:12px;padding:.8rem;background:#f5fbf9}.upload-dropzone:focus-within{border-color:#087f5b;background:#edf8f5}
@media(max-width:900px){.institutional-dashboard-grid{grid-template-columns:1fr}.category-compliance-grid>div{grid-template-columns:1fr 52px}.category-compliance-grid .progress{grid-column:1/-1;grid-row:2}}

/* V14 — preparação e liberação controlada das fichas institucionais. */
.organization-badge-stack{display:grid;justify-items:end;gap:7px}.institutional-release-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:14px 0;padding:14px 16px;border:1px solid var(--line);border-left:5px solid #ba7a17;border-radius:12px;background:#fffaf0}.institutional-release-summary.is-released{border-left-color:#16835f;background:#f2fbf7}.institutional-release-summary>div{min-width:0}.institutional-release-summary strong,.institutional-release-summary small{display:block}.institutional-release-summary strong{color:var(--ink);font-size:.84rem}.institutional-release-summary small{margin-top:4px;color:var(--muted);line-height:1.4}.institutional-release-panel fieldset{margin:12px 0}.institutional-release-panel .project-checks{grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.institutional-release-panel .check{align-items:flex-start;padding:11px;border:1px solid var(--line);border-radius:10px;background:#fbfdfc}.institutional-release-panel .check span,.institutional-release-panel .check small{display:block}.institutional-release-panel .check small{margin-top:3px;color:var(--muted);font-size:.72rem;font-weight:500}
@media(max-width:700px){.institutional-release-summary{grid-template-columns:1fr}.organization-card-header{align-items:flex-start}.organization-badge-stack{justify-items:start}}

/* V28 — Calculadora de custos da equipe. */
.team-cost-intro{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:20px 0}.team-cost-intro article{display:grid;gap:5px;padding:18px;border:1px solid #cfe2dd;border-radius:15px;background:linear-gradient(145deg,#fff,#f2f9f6)}.team-cost-intro strong{color:#075e54}.team-cost-intro span{color:var(--muted);font-size:.84rem}.team-cost-comparison{padding:18px;border:1px solid var(--line);border-radius:16px;background:#fff}.team-cost-comparison>summary,.team-parameter-panel>summary{display:flex;justify-content:space-between;gap:12px;cursor:pointer;color:#075e54}.positive-difference{color:#087f5b;font-weight:800}.negative-difference{color:#b42318;font-weight:800}.team-cost-list{display:grid;gap:14px}.team-cost-list>article{padding:18px;border:1px solid var(--line);border-radius:16px;background:#fff}.team-cost-list-heading{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.team-cost-list-heading h3{margin:8px 0 4px}.team-cost-list-heading small{color:var(--muted)}.team-cost-list-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:15px 0 0}.team-cost-list-metrics div{padding:11px;border-radius:10px;background:#f4f8f7}.team-cost-list-metrics dt{color:var(--muted);font-size:.72rem;font-weight:700}.team-cost-list-metrics dd{margin:4px 0 0;font-weight:850}.team-cost-sticky-summary{position:sticky;top:var(--header-height);z-index:130;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;margin:12px 0;padding:9px;border:1px solid #c8ded8;border-radius:14px;background:rgba(245,251,249,.96);box-shadow:0 6px 18px rgba(8,73,61,.08);backdrop-filter:blur(8px)}.team-cost-sticky-summary article{display:grid;gap:3px;min-width:0;padding:9px 11px;border-radius:9px;background:#fff}.team-cost-sticky-summary span{color:var(--muted);font-size:.7rem}.team-cost-sticky-summary strong{overflow:hidden;text-overflow:ellipsis;color:#075e54;font-size:.95rem}.team-cost-tabs{position:sticky;top:calc(var(--header-height) + 77px);z-index:129;display:flex;gap:7px;flex-wrap:wrap;padding:8px;border-bottom:1px solid var(--line);background:rgba(255,255,255,.96)}.team-cost-tabs a{padding:7px 10px;border-radius:8px;color:#075e54;font-size:.78rem;font-weight:800;text-decoration:none}.team-cost-tabs a:hover{background:#e8f4f0}.team-cost-item{margin:12px 0;border:1px solid #cfe0dc;border-radius:14px;background:#fff;overflow:hidden}.team-cost-item>summary{display:flex;justify-content:space-between;gap:12px;padding:15px;cursor:pointer;background:#f5faf8;color:#075e54}.team-cost-item>summary span:last-child{color:var(--muted);font-size:.78rem}.team-cost-item-body{padding:16px}.team-item-toolbar{display:flex;justify-content:flex-end;gap:6px;margin-bottom:12px}.team-item-toolbar button{padding:6px 9px;border:1px solid #bad1cb;border-radius:7px;background:#fff;color:#075e54;font-size:.75rem;font-weight:750;cursor:pointer}.team-item-subsection{margin:14px 0;border:1px solid var(--line);border-radius:10px;background:#fbfdfc}.team-item-subsection>summary{padding:12px;cursor:pointer;color:#075e54;font-weight:800}.team-item-subsection>.form-grid,.team-item-subsection>.addition-grid{padding:0 12px 12px}.addition-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.addition-grid label span{display:grid;grid-template-columns:1fr 1fr;gap:5px}.team-parameter-panel{padding:18px;border:1px solid var(--line);border-radius:16px;background:#fff}.team-parameter-panel>form{margin-top:18px}.calculation-memory{margin:8px 0;border:1px solid var(--line);border-radius:10px;background:#fff}.calculation-memory summary{padding:12px;cursor:pointer;color:#075e54;font-weight:800}.calculation-memory ol{margin:0;padding:0 36px 15px}.calculation-memory li{margin:5px 0;color:#41544f;font-size:.86rem}#dados,#equipe,#encargos,#resultados,#memoria,#historico,#despesas-programadas,#gerador-despesas{scroll-margin-top:190px}
.team-item-subsection>.form-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
@media(max-width:950px){.team-item-subsection>.form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.team-item-subsection>.form-grid{grid-template-columns:1fr}}
@media(max-width:950px){.team-cost-intro{grid-template-columns:1fr}.team-cost-sticky-summary{grid-template-columns:repeat(2,minmax(0,1fr));position:static}.team-cost-tabs{top:var(--header-height)}.team-cost-list-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.addition-grid{grid-template-columns:1fr 1fr}}@media(max-width:600px){.team-cost-list-heading{display:grid}.team-cost-list-metrics,.addition-grid{grid-template-columns:1fr}.team-cost-item>summary{display:grid}.team-item-toolbar{justify-content:flex-start;flex-wrap:wrap}}
.team-import-panel>summary{display:flex;justify-content:space-between;gap:12px;cursor:pointer;color:#075e54}.team-import-panel>form{align-items:end;margin-top:14px}.team-import-panel>.item-actions{margin:12px 0}
.allocation-panel{margin:1rem 0;padding:1rem;border:1px solid #cfe0db;border-radius:14px;background:#f8fbfa}.allocation-panel summary{cursor:pointer;font-weight:800;color:#075e50}.allocation-panel p{margin:.75rem 0;color:#53657a}.allocation-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:.75rem}.allocation-grid label{display:flex;flex-direction:column;gap:.35rem;padding:.75rem;background:#fff;border:1px solid #dce7e4;border-radius:10px}.allocation-grid input{width:100%}
.rich-text-field{display:grid;gap:.45rem;grid-column:1/-1}.rich-text-field>label{font-weight:800;color:#10213d}.rich-text-field>small{color:#607080}.rich-text-editor{min-width:0;border:1px solid #c9d9d5;border-radius:16px;background:#fff;overflow:hidden;box-shadow:0 8px 24px rgba(16,45,55,.06)}.rich-text-toolbar{position:sticky;top:0;z-index:4;display:flex;align-items:center;flex-wrap:wrap;gap:.35rem;padding:.65rem;background:#f3f8f6;border-bottom:1px solid #c9d9d5}.rich-text-toolbar button,.rich-text-toolbar select{min-height:38px;border:1px solid #bfd2cd;border-radius:9px;background:#fff;color:#10213d;font:700 .86rem Arial,sans-serif;padding:.4rem .65rem;cursor:pointer}.rich-text-toolbar button:hover,.rich-text-toolbar button:focus,.rich-text-toolbar select:hover,.rich-text-toolbar select:focus{border-color:#17745f;background:#e7f4ef;outline:2px solid rgba(23,116,95,.12)}.rich-text-toolbar select:first-child{min-width:150px}.rich-toolbar-divider{width:1px;height:28px;background:#c9d9d5;margin:0 .15rem}.rich-text-surface{min-height:360px;padding:1.35rem 1.5rem;font-family:Arial,sans-serif;font-size:12pt;line-height:1.15;color:#17233a;background:#fff;overflow-wrap:anywhere;outline:none}.rich-text-surface:focus{box-shadow:inset 0 0 0 2px rgba(23,116,95,.25)}.rich-text-surface p{margin-top:0}.rich-text-source{display:none!important}@media(max-width:720px){.rich-text-toolbar{position:static;padding:.5rem}.rich-text-toolbar button,.rich-text-toolbar select{flex:1 1 auto}.rich-toolbar-divider{display:none}.rich-text-surface{min-height:300px;padding:1rem}}
.declaration-card-actions{align-items:stretch;flex-wrap:wrap}.declaration-card-actions .button,.declaration-card-actions form,.declaration-card-actions form button{width:100%}.declaration-edit-form{display:grid;gap:1.1rem}.declaration-edit-actions{position:sticky;bottom:0;z-index:5;margin:0 -1rem -1rem;padding:1rem;background:rgba(255,255,255,.96);border-top:1px solid #d5e2df;backdrop-filter:blur(8px)}
/* Pesquisa de Preços e Mapa de Cotação */
.quote-sheet{width:100%;overflow:visible;border:1px solid var(--line,#d8e1df);border-radius:16px;background:#fff}
.quote-sheet table{width:100%;table-layout:fixed;border-collapse:collapse;font-size:.78rem}
.quote-sheet th,.quote-sheet td{padding:.55rem .45rem;vertical-align:top;word-break:break-word;border-bottom:1px solid #e4ebe9}
.quote-sheet thead th{position:sticky;top:var(--sticky-offset,112px);z-index:3;background:#edf5f2;color:#175c50;text-transform:uppercase;font-size:.66rem;letter-spacing:.04em}
.quote-sheet th:nth-child(2){width:20%}.quote-sheet th:nth-child(5){width:18%}
.quote-sheet .sheet-detail>td{padding:.25rem .55rem .7rem;background:#fafcfb}
.quote-sheet .sheet-detail summary{cursor:pointer;color:#176c5b;font-weight:700;padding:.45rem 0}
.offer-chip{display:inline-block;margin:.12rem;padding:.24rem .42rem;border-radius:999px;background:#e0f4ea;color:#125948;font-size:.7rem}.offer-chip.invalid{background:#fde7e5;color:#9d2620;text-decoration:line-through}
.compact-form{margin-top:1rem;padding:1rem;background:#f3f8f6;border-radius:12px}
.selection-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:.5rem;margin-bottom:1rem}.selection-grid label{display:flex;align-items:flex-start;gap:.45rem;padding:.55rem;border:1px solid #d9e5e1;border-radius:9px}
.sticky-section-tabs{position:sticky;top:var(--context-header-height,104px);z-index:12;display:flex;gap:.4rem;overflow-x:auto;background:rgba(246,250,248,.96);padding:.55rem;border:1px solid #dbe5e2;border-radius:12px;margin-bottom:1rem}.sticky-section-tabs a{white-space:nowrap;padding:.45rem .7rem;border-radius:8px;color:#174f45;font-weight:700}.sticky-section-tabs a:hover{background:#dff1ea}
.details-content{padding-top:1rem}.status-success{background:#dff4e8!important;color:#12643e!important}.status-warning{background:#fff0cf!important;color:#875500!important}.status-danger{color:#a32121!important}
@media(max-width:900px){.quote-sheet table{font-size:.7rem}.quote-sheet th,.quote-sheet td{padding:.4rem .3rem}.quote-sheet th:nth-child(5){width:15%}}

/* V30 — permissões e navegação operacional da Pesquisa de Preços. */
.quote-workflow-nav{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.55rem;overflow:visible;padding:.7rem;background:rgba(247,251,249,.98);box-shadow:0 8px 22px rgba(12,63,53,.08)}
.quote-workflow-nav a{display:flex;align-items:center;gap:.7rem;min-width:0;padding:.7rem .75rem;border:1px solid #d5e4df;border-radius:11px;background:#fff;color:#174f45;text-decoration:none;transition:background .18s ease,border-color .18s ease,transform .18s ease,box-shadow .18s ease}
.quote-workflow-nav a:hover,.quote-workflow-nav a:focus,.quote-workflow-nav a.active{border-color:#72b6a4;background:#eaf6f2;box-shadow:0 5px 14px rgba(17,99,82,.1);transform:translateY(-1px);outline:none}
.quote-workflow-nav a>span:last-child{display:grid;gap:.12rem;min-width:0}.quote-workflow-nav strong,.quote-workflow-nav small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.quote-workflow-nav strong{font-size:.82rem}.quote-workflow-nav small{color:#687c77;font-size:.68rem;font-weight:600}
.workflow-step{flex:0 0 30px;width:30px;height:30px;display:grid;place-items:center;border-radius:9px;background:#e5f2ee;color:#126653;font-size:.76rem;font-weight:900}.quote-workflow-nav a.active .workflow-step{background:#167963;color:#fff}
.quote-guidance{display:flex;align-items:flex-start;gap:.5rem;margin:-.3rem 0 1rem;padding:.8rem 1rem;border:1px solid #cfe2dd;border-left:4px solid #2b8d76;border-radius:10px;background:#f5faf8;color:#405b54;font-size:.8rem;line-height:1.45}.quote-guidance strong{flex:0 0 auto;color:#126653}
#dados,#itens,#documentos,#mapa,#relatorios,#historico{scroll-margin-top:205px}
.quote-export-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.8rem;margin-bottom:1.2rem}.quote-export-card{display:grid;grid-template-columns:auto 1fr;gap:.18rem .7rem;align-items:center;min-width:0;padding:1rem;border:1px solid #d2e1dd;border-radius:14px;background:#fff;color:#163f37;text-decoration:none;box-shadow:0 5px 16px rgba(15,69,59,.05);transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}.quote-export-card:hover,.quote-export-card:focus{border-color:#70b5a3;box-shadow:0 9px 22px rgba(15,69,59,.11);transform:translateY(-2px);outline:none}.quote-export-card>span{grid-row:1/3;display:grid;place-items:center;min-width:48px;height:48px;padding:.3rem;border-radius:11px;background:#e6f3ef;color:#126653;font-size:.7rem;font-weight:950}.quote-export-card strong,.quote-export-card small{min-width:0}.quote-export-card small{color:#687c77;font-size:.7rem;line-height:1.35}
@media(max-width:1050px){.quote-export-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.quote-workflow-nav{position:static;grid-template-columns:repeat(2,minmax(0,1fr))}.quote-workflow-nav small{white-space:normal}.quote-guidance{display:grid}.quote-export-grid{grid-template-columns:1fr}#dados,#itens,#documentos,#mapa,#relatorios,#historico{scroll-margin-top:110px}}
@media(max-width:480px){.quote-workflow-nav{grid-template-columns:1fr}}

/* V31 — formulários amigáveis e intuitivos da Pesquisa de Preços. */
.quote-form-intro{display:flex;align-items:center;gap:.85rem;margin:0 0 1rem;padding:1rem 1.1rem;border:1px solid #c8ded8;border-left:5px solid #197761;border-radius:14px;background:linear-gradient(135deg,#f7fcfa,#edf7f3);color:#294f46}.quote-form-intro>span{flex:0 0 38px;width:38px;height:38px;display:grid;place-items:center;border-radius:11px;background:#197761;color:#fff;font-weight:900}.quote-form-intro div{display:grid;gap:.15rem}.quote-form-intro small{color:#657b75;line-height:1.4}
.quote-form{display:grid;gap:1rem}.quote-form-section{min-width:0;margin:0;padding:0 0 1.1rem;border:0;border-bottom:1px solid #dce7e3}.quote-form-section:last-of-type{border-bottom:0}.quote-form-section>legend{display:flex;align-items:center;gap:.7rem;width:100%;margin:0 0 .9rem;padding:0;color:#123f36}.quote-form-section>legend>span{flex:0 0 34px;width:34px;height:34px;display:grid;place-items:center;border-radius:10px;background:#e4f2ed;color:#126653;font-size:.72rem;font-weight:950}.quote-form-section>legend>div{display:grid;gap:.1rem;font-size:.98rem;font-weight:900}.quote-form-section>legend small{color:#6b7d78;font-size:.72rem;font-weight:600}
.quote-form-grid,#dados .form-grid,#itens .form-grid,#documentos .form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.85rem 1rem;align-items:start}.quote-form-grid .field-wide,#dados .form-grid .field-wide,#itens .form-grid .field-wide,#documentos .form-grid .field-wide{grid-column:1/-1}
.quote-form label,.quote-search-form label,#dados .form-grid label,#itens .form-grid label,#documentos .form-grid label{display:grid;align-content:start;gap:.35rem;min-width:0;color:#183e36;font-size:.79rem;font-weight:850}.quote-form label>span:first-child,.quote-search-form label>span:first-child{display:block}.quote-form label>span b{color:#b42318}.quote-form label>small,.quote-search-form label>small{min-height:1.05rem;color:#6a7d78;font-size:.68rem;font-weight:600;line-height:1.35}
.quote-form input:not([type=checkbox]):not([type=radio]),.quote-form select,.quote-form textarea,.quote-search-form input,.quote-search-form select,#dados .form-grid input:not([type=checkbox]),#dados .form-grid select,#dados .form-grid textarea,#itens .form-grid input:not([type=checkbox]),#itens .form-grid select,#itens .form-grid textarea,#documentos .form-grid input:not([type=checkbox]),#documentos .form-grid select,#documentos .form-grid textarea{width:100%;min-width:0;min-height:46px;padding:.72rem .8rem;border:1px solid #bfd3cd;border-radius:10px;background:#fff;color:#10213d;font:700 .86rem Arial,sans-serif;transition:border-color .16s ease,box-shadow .16s ease,background .16s ease}.quote-form textarea,#dados .form-grid textarea,#itens .form-grid textarea,#documentos .form-grid textarea{min-height:100px;resize:vertical;line-height:1.45}.quote-form input:focus,.quote-form select:focus,.quote-form textarea:focus,.quote-search-form input:focus,.quote-search-form select:focus,#dados .form-grid input:focus,#dados .form-grid select:focus,#dados .form-grid textarea:focus,#itens .form-grid input:focus,#itens .form-grid select:focus,#itens .form-grid textarea:focus,#documentos .form-grid input:focus,#documentos .form-grid select:focus,#documentos .form-grid textarea:focus{border-color:#25856e;background:#fbfefd;box-shadow:0 0 0 3px rgba(37,133,110,.13);outline:none}.quote-form input::placeholder,.quote-form textarea::placeholder,.quote-search-form input::placeholder{color:#8b9b97;font-weight:500}
.quote-check{grid-template-columns:auto 1fr!important;align-items:flex-start!important;padding:.8rem .9rem;border:1px solid #d3e3de;border-radius:11px;background:#f6faf8}.quote-check input{width:18px;height:18px;margin:.12rem 0 0}.quote-check>span{display:grid!important;gap:.15rem}.quote-check strong{font-size:.8rem}.quote-check small{min-height:0!important}
.quote-form-actions{display:flex;justify-content:flex-end;gap:.65rem;flex-wrap:wrap;padding-top:.2rem}.quote-form-actions .button{min-height:44px}.quote-entry-panel{overflow:hidden}.quote-entry-panel>summary{display:flex;align-items:center;gap:.75rem;padding:.95rem 1rem;cursor:pointer;background:#f7fbf9;color:#125a4c}.quote-entry-panel>summary>span:last-child{display:grid;gap:.12rem}.quote-entry-panel>summary small{color:#687c77;font-size:.7rem;font-weight:600}.summary-icon{flex:0 0 34px;width:34px;height:34px;display:grid;place-items:center;border-radius:10px;background:#dff0ea;color:#126653;font-size:1.15rem;font-weight:900}.quote-entry-panel[open]>summary{border-bottom:1px solid #d8e5e1;background:#edf7f3}.quote-entry-panel>.quote-form{padding:1rem}
.quote-filter-panel{padding:.9rem 1rem}.quote-search-form{display:grid;grid-template-columns:minmax(240px,1fr) auto;gap:.85rem;align-items:end}.quote-search-form-wide{grid-template-columns:minmax(240px,2fr) minmax(190px,1fr) auto}.quote-search-form .item-actions{align-self:end;margin:0}.quote-search-form .button{min-height:46px}
#dados .form-grid,#itens .form-grid.compact-form,#documentos .form-grid{padding:1rem;border:1px solid #d9e6e2;border-radius:14px;background:#f9fcfb}#itens .form-grid.compact-form h3,#itens .form-grid.compact-form h4{margin:0;padding-bottom:.6rem;border-bottom:1px solid #dbe6e3;color:#125a4c}
@media(max-width:820px){.quote-form-grid,#dados .form-grid,#itens .form-grid,#documentos .form-grid,.quote-search-form,.quote-search-form-wide{grid-template-columns:1fr}.quote-form-grid .field-wide,#dados .form-grid .field-wide,#itens .form-grid .field-wide,#documentos .form-grid .field-wide{grid-column:auto}.quote-form label>small,.quote-search-form label>small{min-height:0}.quote-form-actions{justify-content:stretch}.quote-form-actions .button{flex:1 1 180px}}
/* Central integrada de pendências */
.notification-menu{position:relative}.notification-menu>summary{list-style:none;cursor:pointer}.notification-menu>summary::-webkit-details-marker{display:none}.notification-panel{position:absolute;right:0;top:calc(100% + 12px);z-index:120;width:min(420px,calc(100vw - 24px));max-height:70vh;overflow:auto;background:#fff;border:1px solid #d8e4e1;border-radius:16px;box-shadow:0 18px 45px rgba(20,45,53,.18);padding:12px}.notification-panel header{display:flex;align-items:center;justify-content:space-between;padding:8px 8px 12px;border-bottom:1px solid #e5ecea}.notification-panel header div,.notification-panel article{display:grid;gap:4px}.notification-panel header small,.notification-panel article small{color:#617078}.notification-panel article{padding:12px 8px;border-bottom:1px solid #edf1f0}.notification-panel article button{border:0;background:#e6f5f0;color:#075f50;padding:8px 10px;border-radius:9px;font-weight:700;cursor:pointer;text-align:left}.notification-empty{padding:24px;text-align:center;color:#617078}
.pending-heading{align-items:flex-end}.pending-summary article small{display:block;margin-top:5px;color:#64727a}.attention-text{color:#a35a00}.pending-create-card,.pending-filter-card,.pending-item{background:#fff;border:1px solid #dbe5e3;border-radius:16px}.pending-create-card{margin:22px 0}.pending-create-card>summary{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:20px 22px;cursor:pointer}.pending-create-card>summary::-webkit-details-marker,.pending-item>summary::-webkit-details-marker{display:none}.pending-create-card>summary span:first-child{display:grid;gap:4px}.pending-create-card>summary small{font-weight:400;color:#63727a}.details-action{color:#08705f;font-weight:800}.pending-form{border-top:1px solid #e4ecea;padding:22px}.form-grid .span-2{grid-column:span 2}.pending-filter-card{padding:20px;margin:22px 0}.pending-filter-card header{display:flex;align-items:center;justify-content:space-between}.pending-filter-card h2{margin:4px 0 14px}.pending-filters{display:grid;grid-template-columns:2fr repeat(3,minmax(140px,1fr));gap:12px;align-items:end}.pending-filters label{display:grid;gap:6px;font-size:.85rem;font-weight:700}.pending-filters input,.pending-filters select{min-width:0;width:100%}.pending-filters .button{height:44px}.pending-list{display:grid;gap:12px;margin-bottom:40px}.pending-item{overflow:hidden;border-left:5px solid #7d9590}.pending-item.priority-critical{border-left-color:#c43f3f}.pending-item.priority-high{border-left-color:#d88218}.pending-item.priority-medium{border-left-color:#2d78c4}.pending-item.priority-low{border-left-color:#6b8c85}.pending-item>summary{display:grid;grid-template-columns:12px minmax(260px,1fr) minmax(150px,.35fr) 110px 125px 24px;align-items:center;gap:16px;padding:17px 18px;cursor:pointer}.pending-status-dot{width:10px;height:10px;border-radius:50%;background:#6b8c85}.priority-critical .pending-status-dot{background:#c43f3f}.priority-high .pending-status-dot{background:#d88218}.priority-medium .pending-status-dot{background:#2d78c4}.pending-main{display:grid;gap:5px;min-width:0}.pending-main>strong{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pending-main>small{color:#617078}.pending-tags{display:flex;gap:8px;align-items:center}.pending-tags b{color:#075f50;font-size:.72rem;text-transform:uppercase;letter-spacing:.06em}.pending-tags i{font-size:.7rem;font-style:normal;padding:3px 7px;border-radius:20px;background:#eef2f1}.pending-tags .source-automatic{background:#e9f2ff;color:#195c9e}.pending-owner,.pending-deadline{display:grid;gap:3px}.pending-owner small,.pending-deadline small{color:#748188;font-size:.72rem;text-transform:uppercase}.pending-owner strong,.pending-deadline strong{font-size:.88rem}.pending-expand{font-size:1.3rem;transition:transform .2s}.pending-item[open] .pending-expand{transform:rotate(180deg)}.status-pending{background:#e8f1ff;color:#155ba3}.status-in_progress{background:#fff4d9;color:#8a5900}.status-overdue{background:#ffe7e7;color:#a51f1f}.status-done{background:#e2f5eb;color:#08704e}.status-not_applicable{background:#edf0ef;color:#5e6966}.pending-detail{border-top:1px solid #e3ebe9;background:#fbfdfc;padding:20px;display:grid;grid-template-columns:minmax(240px,.8fr) minmax(380px,1.2fr);gap:24px}.pending-description h3,.pending-update-form h3{margin-top:0}.pending-description p{white-space:pre-wrap;color:#46565c}.pending-description dl{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.pending-description dl div{padding:10px;background:#f0f5f3;border-radius:10px}.pending-description dt{font-size:.72rem;color:#68787e;text-transform:uppercase}.pending-description dd{margin:3px 0 0;font-weight:700}.pending-update-form{background:#fff;border:1px solid #dde8e5;border-radius:13px;padding:16px}.pending-history{grid-column:1/-1;border-top:1px solid #dce7e4;padding-top:12px}.pending-history summary{cursor:pointer;font-weight:700;color:#075f50}.pending-history ul{columns:2;margin-bottom:0}.empty-state{padding:45px;text-align:center;background:#fff;border:1px dashed #b9cbc6;border-radius:16px}.empty-state strong{font-size:1.2rem}.empty-state p{color:#66767b}
@media(max-width:1100px){.pending-filters{grid-template-columns:repeat(2,minmax(0,1fr))}.pending-item>summary{grid-template-columns:12px minmax(220px,1fr) 140px 110px 24px}.pending-deadline{display:none}.pending-detail{grid-template-columns:1fr}.pending-history{grid-column:auto}}
@media(max-width:700px){.pending-filters{grid-template-columns:1fr}.pending-item>summary{grid-template-columns:10px 1fr 24px}.pending-owner,.pending-deadline,.pending-item>summary>.badge{display:none}.form-grid .span-2{grid-column:auto}.pending-description dl{grid-template-columns:1fr}.notification-panel{position:fixed;right:12px;top:72px}}

/* V39 — atribuição coletiva e acompanhamento amigável de pendências. */
.pending-bulk-bar{position:sticky;top:calc(var(--header-height,88px) + 8px);z-index:25;display:grid;grid-template-columns:minmax(250px,1fr) auto minmax(260px,.8fr) auto;align-items:end;gap:14px;margin:18px 0;padding:14px 16px;border:1px solid #bad9d1;border-radius:14px;background:rgba(247,252,250,.97);box-shadow:0 10px 26px rgba(14,77,64,.1);backdrop-filter:blur(8px)}
.pending-select-all,.pending-select-cell{display:flex;align-items:center;gap:9px}.pending-select-all{align-self:center;color:#075f50;font-weight:800}.pending-select-all input,.pending-select-cell input{width:18px;height:18px;margin:0;accent-color:#08705f;cursor:pointer}.pending-bulk-bar>[data-pending-selected-count]{align-self:center;white-space:nowrap;color:#536a64;font-size:.82rem}.pending-bulk-assignee{display:grid;gap:6px;min-width:0;color:#183f37;font-size:.78rem;font-weight:800}.pending-bulk-assignee select{width:100%;min-width:0}.pending-bulk-bar button:disabled{cursor:not-allowed;opacity:.5}
.pending-item>summary{grid-template-columns:38px minmax(260px,1fr) minmax(150px,.35fr) 110px 125px 24px}.pending-select-cell{justify-content:flex-start}.pending-select-cell .pending-status-dot{flex:0 0 10px}
.pending-update-form{padding:0;overflow:hidden}.pending-update-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:16px 18px;border-bottom:1px solid #dce8e4;background:linear-gradient(135deg,#f3f8f6,#fbfdfc)}.pending-update-heading h3{margin:3px 0 4px;color:#123f36}.pending-update-heading p{margin:0;color:#61746e;font-size:.8rem;line-height:1.4}.pending-update-heading>.badge{flex:0 0 auto}
.pending-update-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px 14px;padding:16px 18px}.pending-update-fields label{display:grid;align-content:start;gap:6px;min-width:0}.pending-update-fields label>span{color:#284d45;font-size:.76rem;font-weight:800}.pending-update-fields input,.pending-update-fields select,.pending-update-fields textarea{width:100%;min-width:0}.pending-update-resolution{grid-column:1/-1}.pending-update-resolution textarea{min-height:108px;resize:vertical;line-height:1.45}.pending-update-actions{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:0 18px 16px}.pending-update-actions small{color:#6a7b76;font-size:.72rem}.pending-update-actions .button{flex:0 0 auto}
@media(max-width:1100px){.pending-bulk-bar{grid-template-columns:repeat(2,minmax(0,1fr))}.pending-bulk-bar>[data-pending-selected-count]{justify-self:end}.pending-item>summary{grid-template-columns:38px minmax(220px,1fr) 140px 110px 24px}}
@media(max-width:700px){.pending-bulk-bar{position:static;grid-template-columns:1fr;align-items:stretch}.pending-bulk-bar>[data-pending-selected-count]{justify-self:start}.pending-item>summary{grid-template-columns:38px 1fr 24px}.pending-update-heading{display:grid}.pending-update-heading>.badge{justify-self:start}.pending-update-fields{grid-template-columns:1fr}.pending-update-resolution{grid-column:auto}.pending-update-actions{display:grid}.pending-update-actions .button{width:100%}}
/* Central de Suporte, Melhorias e Conhecimento */
.support-page{display:grid;gap:18px;max-width:1500px;margin:0 auto}.support-page .page-heading{margin-bottom:0}.support-indicators,.support-metrics{display:grid;grid-template-columns:repeat(auto-fit,minmax(155px,1fr));gap:12px}.support-indicators article,.support-metrics article{background:#fff;border:1px solid #d8e4e1;border-radius:14px;padding:16px;box-shadow:0 8px 24px rgba(12,67,58,.05)}.support-indicators small,.support-metrics small{display:block;color:#596a78;line-height:1.35}.support-indicators strong,.support-metrics strong{display:block;margin-top:7px;font-size:1.65rem;color:#0b564a}.support-tabs{position:sticky;top:112px;z-index:12;display:flex;gap:8px;overflow-x:auto;padding:9px;background:rgba(246,250,249,.96);border:1px solid #d9e5e2;border-radius:14px;backdrop-filter:blur(8px)}.support-tabs a{flex:0 0 auto;padding:10px 14px;border-radius:10px;color:#233444;text-decoration:none;font-weight:700}.support-tabs a.active{background:#0b6556;color:#fff}.support-card{background:#fff;border:1px solid #d6e3e0;border-radius:16px;padding:20px;box-shadow:0 8px 25px rgba(12,67,58,.045)}.support-card>summary,.support-editor>summary{cursor:pointer;color:#075f50;font-weight:800}.support-card h2{margin-top:0}.support-new[open]>summary,.support-editor[open]>summary{margin-bottom:18px}.support-filters{display:grid;grid-template-columns:minmax(220px,2fr) repeat(4,minmax(135px,1fr)) auto;gap:9px;margin:12px 0 18px}.support-filters>*{min-width:0}.support-list{display:grid;gap:9px}.support-ticket{display:grid;grid-template-columns:minmax(0,1fr) minmax(160px,280px);gap:16px;padding:15px;border:1px solid #e0e8e6;border-radius:12px;text-decoration:none;color:inherit;transition:.18s ease}.support-ticket:hover{border-color:#7bb5aa;background:#f5fbf9;transform:translateY(-1px)}.support-ticket>div{display:grid;gap:5px}.support-ticket>div:last-child{text-align:right}.support-ticket small{color:#65727d}.support-badge{display:inline-flex;width:max-content;padding:4px 9px;border-radius:999px;font-size:.76rem;font-weight:800;background:#e9f7f1;color:#08634f}.support-badge.question{background:#eaf2ff;color:#245eaa}.support-breakdowns{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:16px}.support-breakdowns>div{padding:15px;border-radius:13px;background:#f6faf9;border:1px solid #e0ebe8}.support-breakdowns h3{margin:0 0 10px}.support-breakdowns p{display:flex;justify-content:space-between;gap:10px;margin:7px 0}.knowledge-item,.update-card,.manual-grid article{border:1px solid #dfe9e7;border-radius:13px;padding:15px;margin-top:10px}.knowledge-item summary{cursor:pointer;display:grid;gap:5px}.knowledge-item summary span{font-size:.78rem;color:#08705e;font-weight:800}.official-answer{padding:14px;border-left:4px solid #148975;background:#f2faf7}.manual-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:12px}.update-card{display:grid;gap:10px}.permission-list{display:grid;gap:8px}.permission-list form,.support-category-list form{display:grid;grid-template-columns:minmax(180px,1fr) auto auto auto;align-items:center;gap:10px;padding:10px;border-bottom:1px solid #e4ecea}.support-category-form{display:grid;grid-template-columns:180px minmax(220px,1fr) 90px auto;gap:9px}.support-detail-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:18px 20px;border-radius:16px;background:linear-gradient(110deg,#e7f5f0,#f7fbfa);border-left:5px solid #11806c}.support-detail-head h1{margin:7px 0}.support-detail-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,390px);gap:16px;align-items:start}.support-detail-grid main{display:grid;gap:16px}.sticky-card{position:sticky;top:180px}.support-message{padding:14px;border:1px solid #dfe9e7;border-radius:12px;margin:10px 0;background:#fbfdfc}.support-message.internal{background:#fff9e9;border-color:#ecd99d}.support-message header{display:flex;justify-content:space-between;gap:10px}.support-message header span{font-size:.8rem;color:#64717c}.meta-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin:15px 0}.meta-grid span{display:grid;padding:10px;background:#f5f9f8;border-radius:9px}.stack-form{display:grid;gap:11px}.support-history{display:grid;gap:8px;margin-top:14px}.support-history article{display:grid;gap:3px;padding:10px 12px;border-left:3px solid #81b8ae;background:#f7faf9}.support-history span,.support-history small{color:#60707a;font-size:.82rem}.empty-state{padding:18px;text-align:center;color:#697781;background:#f7faf9;border-radius:10px}
@media(max-width:1050px){.support-filters{grid-template-columns:repeat(2,minmax(0,1fr))}.support-detail-grid{grid-template-columns:1fr}.sticky-card{position:static}.support-breakdowns{grid-template-columns:1fr}.support-tabs{top:92px}}
@media(max-width:680px){.support-indicators,.support-metrics,.support-filters,.meta-grid,.support-category-form{grid-template-columns:1fr}.support-ticket{grid-template-columns:1fr}.support-ticket>div:last-child{text-align:left}.support-detail-head{display:grid}.permission-list form{grid-template-columns:1fr}.support-card{padding:15px}}

/* V63 — padrão visual global dos formulários de cadastro e edição. */
@media screen{
:root{
    --form-control-height:52px;
    --form-control-radius:12px;
    --form-control-border:#c5d4df;
    --form-control-focus:#1b806a;
    --form-control-shadow:0 0 0 3px rgba(27,128,106,.14);
}
.app-content form,.app-content form>*{min-width:0;max-width:100%}
.app-content :where(.form-card,.inline-form,.compact-form,.pending-form,.stack-form,.quote-form,.declaration-edit-form,.support-card) form{width:100%}
.app-content :where(.form-grid,.two-columns,.quote-form-grid,.pending-update-fields){grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 22px;align-items:start;width:100%}
.app-content form label:has(>input:not([type="checkbox"]):not([type="radio"])),
.app-content form label:has(>select),
.app-content form label:has(>textarea){display:grid;align-content:start;gap:8px;min-width:0;color:var(--ink);font-size:.9rem;font-weight:800}
.app-content form :where(input:not([type="hidden"]):not([type="checkbox"]):not([type="radio"]):not([type="submit"]):not([type="button"]):not([type="reset"]),select,textarea){width:100%;min-width:0;max-width:100%;min-height:var(--form-control-height);padding:13px 16px;border:1px solid var(--form-control-border);border-radius:var(--form-control-radius);background:#fff;color:var(--ink);font:600 .95rem/1.35 Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;transition:border-color .16s ease,box-shadow .16s ease,background-color .16s ease}
.app-content form :where(input[type="file"]){padding:8px 10px}
.app-content form :where(textarea){min-height:104px;resize:vertical;line-height:1.5}
.app-content form :where(input,select,textarea):focus{border-color:var(--form-control-focus);background:#fcfffe;box-shadow:var(--form-control-shadow);outline:0}
.app-content form :where(input,select,textarea):disabled,
.app-content form :where(input,textarea)[readonly]{cursor:not-allowed;border-color:#d8e0e6;background:#f2f5f7;color:#64727d;box-shadow:none}
.app-content form :where(input,textarea)::placeholder{color:#7c8994;font-weight:600;opacity:1}
.app-content form :where(.help,small){line-height:1.45}
.app-content :where(.form-grid,.two-columns,.quote-form-grid,.pending-update-fields) > :where(.wide-field,.field-wide,.span-2,.rich-text-field),
.app-content :where(.form-grid,.two-columns,.quote-form-grid,.pending-update-fields) > :where(h2,h3,h4,fieldset),
.app-content :where(.form-grid,.two-columns,.quote-form-grid,.pending-update-fields) > label:has(textarea){grid-column:1/-1}
.app-content .form-actions{justify-content:flex-start;align-items:center;flex-wrap:wrap;margin-top:22px}
.app-content :where(.button,button[type="submit"],input[type="submit"]){display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:11px 20px;border-radius:11px;cursor:pointer;font-weight:800;line-height:1.2;text-align:center;transition:background-color .16s ease,border-color .16s ease,color .16s ease,box-shadow .16s ease,transform .16s ease}
.app-content :where(button[type="submit"],input[type="submit"]):not(.button-light):not(.button-danger),
.app-content .button-primary{border:1px solid var(--primary);background:var(--primary);color:#fff;box-shadow:0 5px 13px rgba(23,107,91,.18)}
.app-content :where(button[type="submit"],input[type="submit"]):not(.button-light):not(.button-danger):hover,
.app-content .button-primary:hover{border-color:var(--primary-dark);background:var(--primary-dark);color:#fff;box-shadow:0 7px 17px rgba(16,82,71,.22);transform:translateY(-1px)}
.app-content .button-light{border-color:#8ebbb1;background:#fff;color:var(--primary-dark)}
.app-content .button-light:hover{border-color:var(--primary);background:#eaf6f2;color:var(--primary-dark)}
.app-content :where(.button-danger,button[data-danger="true"]){border-color:#e8aaa6;background:#fff4f3;color:#b42318;box-shadow:none}
.app-content :where(.button-danger,button[data-danger="true"]):hover{border-color:#b42318;background:#b42318;color:#fff;transform:translateY(-1px)}
.app-content :where(.button,button,input)[disabled]{cursor:not-allowed!important;border-color:#d3dbe1!important;background:#e9eef1!important;color:#7b8790!important;box-shadow:none!important;transform:none!important;opacity:1}
.app-content :where(.filter-bar,.pending-filters,.composition-filter-bar,.quote-search-form,.support-filters) :where(input,select){min-height:44px;padding:9px 12px;border-radius:10px;font-size:.84rem}
.app-content :where(.filter-bar,.pending-filters,.composition-filter-bar,.quote-search-form,.support-filters) :where(.button,button){min-height:44px;padding:9px 14px;font-size:.82rem}

/* Fornecedores: busca, edição em gaveta e exclusão protegida. */
.supplier-search{display:grid;grid-template-columns:minmax(190px,260px) minmax(260px,1fr);align-items:center;gap:7px 14px;margin:14px 0;padding:14px 16px;border:1px solid #cfe0dc;border-radius:14px;background:#f8fbfa}.supplier-search label{color:#124f45;font-weight:850}.supplier-search input{width:100%;min-height:44px}.supplier-search small{grid-column:2;color:var(--muted)}.supplier-row-actions{display:flex;align-items:center;gap:8px;white-space:nowrap}.supplier-row-actions details{margin:0}.supplier-row-actions details:not([open])>summary{display:inline-flex;min-height:38px;align-items:center;margin:0;padding:8px 12px;list-style:none}.supplier-row-actions details:not([open])>summary::marker,.supplier-row-actions details:not([open])>summary::-webkit-details-marker{display:none;content:""}.supplier-row-actions>.button{min-height:38px;padding:8px 12px}.supplier-edit-form h3{margin:0}.form-help{margin:0;color:var(--muted)}.supplier-delete-dialog{width:min(560px,calc(100vw - 32px));padding:0;border:1px solid #efb9b5;border-radius:18px;background:#fff;box-shadow:0 28px 80px rgba(34,19,17,.28)}.supplier-delete-dialog::backdrop{background:rgba(15,32,29,.52);backdrop-filter:blur(3px)}.supplier-delete-dialog form{display:grid;gap:17px;padding:22px}.supplier-delete-dialog header{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}.supplier-delete-dialog h2{margin:4px 0 0;font-size:1.3rem}.supplier-delete-dialog p{margin:0;line-height:1.55}.supplier-delete-dialog label{display:grid;gap:7px;font-weight:800}.supplier-delete-dialog input{width:100%}.supplier-delete-dialog footer{display:flex;justify-content:flex-end;gap:9px}.dialog-close{display:grid;place-items:center;width:40px;height:40px;padding:0;border:1px solid #dfbbb7;border-radius:10px;background:#fff;color:#a72820;font-size:1.4rem;cursor:pointer}@media(max-width:700px){.supplier-search{grid-template-columns:1fr}.supplier-search small{grid-column:auto}.supplier-row-actions{align-items:stretch;flex-direction:column}.supplier-delete-dialog footer{display:grid;grid-template-columns:1fr}.supplier-delete-dialog footer .button{width:100%}}
.app-content :where(.budget-row-actions,.item-actions,.document-toggle-actions,.team-item-toolbar) :where(.button,button){min-height:40px;padding:8px 12px;font-size:.8rem;box-shadow:none}
.app-content input[type="checkbox"],.app-content input[type="radio"]{accent-color:var(--primary)}
.compact-pagination{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:18px 0 8px;padding:12px 14px;border:1px solid #d3e2de;border-radius:13px;background:#fff}.compact-pagination-info{margin:0;color:#526565;font-size:.82rem}.compact-pagination-info span{white-space:nowrap}.compact-pagination-actions{display:flex;justify-content:flex-end;gap:8px;margin-left:auto}.compact-pagination-button{display:inline-flex;align-items:center;justify-content:center;gap:7px;width:auto!important;min-width:112px;min-height:40px;padding:8px 14px!important;font-size:.82rem!important;line-height:1.15;white-space:nowrap}.compact-pagination-button.is-disabled{border-color:#dce6e3;background:#f3f6f5;color:#8a9996;box-shadow:none;cursor:not-allowed;pointer-events:none}

/* Beneficiários: filtros compactos e legíveis. */
.beneficiary-tools{grid-template-columns:1fr}
.beneficiary-filter-panel{display:grid!important;grid-template-columns:minmax(280px,1.7fr) minmax(160px,.65fr) minmax(180px,.75fr) auto!important;gap:12px!important;align-items:end;padding:16px;border:1px solid #cfe0dc;border-radius:14px;background:#f8fbfa}
.beneficiary-filter-panel label{display:grid;gap:7px;color:#124f45;font-weight:850}
.beneficiary-filter-panel label>span{font-size:.82rem;letter-spacing:.01em}
.beneficiary-filter-panel input,.beneficiary-filter-panel select{width:100%;min-height:48px;margin:0;padding:10px 13px;border:1px solid #bed2cd;border-radius:11px;background:#fff;color:#172b4d;font-size:.92rem}
.beneficiary-filter-panel input:focus,.beneficiary-filter-panel select:focus{border-color:var(--primary);box-shadow:0 0 0 3px rgba(40,122,103,.12);outline:0}
.beneficiary-clear-filters{min-height:48px!important;white-space:nowrap}
.beneficiary-tools>form{grid-template-columns:minmax(220px,1fr) minmax(180px,260px) auto;padding:15px 0 0;border-top:1px solid #d8e3e0;border-left:0}
.beneficiary-tools>form strong,.beneficiary-tools>form span{grid-column:1/-1}
@media(max-width:950px){.beneficiary-filter-panel{grid-template-columns:1fr 1fr!important}.beneficiary-filter-search{grid-column:1/-1}.beneficiary-clear-filters{width:100%}.beneficiary-tools>form{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.beneficiary-filter-panel,.beneficiary-tools>form{grid-template-columns:1fr!important}.beneficiary-filter-search{grid-column:auto}.beneficiary-tools>form strong,.beneficiary-tools>form span{grid-column:auto}}
@media(max-width:820px){
    .project-page-back{margin:-10px 0 14px}.project-page-back .button{min-width:118px}
    .app-content :where(.form-grid,.two-columns,.quote-form-grid,.pending-update-fields){grid-template-columns:1fr;gap:15px}
    .app-content :where(.form-grid,.two-columns,.quote-form-grid,.pending-update-fields) > :where(.wide-field,.field-wide,.span-2,.rich-text-field),
    .app-content :where(.form-grid,.two-columns,.quote-form-grid,.pending-update-fields) > label:has(textarea){grid-column:auto}
    .app-content .form-actions{display:grid;grid-template-columns:1fr;width:100%}
    .app-content .form-actions :where(.button,button,input[type="submit"]){width:100%}
    .compact-pagination{align-items:stretch;flex-direction:column}.compact-pagination-actions{width:100%;margin-left:0}.compact-pagination-actions .compact-pagination-button{flex:1;min-width:0}
}
.execution-period-separator {
    display: block;
    margin: .12rem 0;
    color: var(--muted, #64748b);
    font-size: .75rem;
    font-weight: 600;
}

/* Execução: evidências organizadas por meta, etapa, ação e período. */
.execution-evidence-section .section-title p{margin:.35rem 0 0;color:var(--muted,#64748b)}
.evidence-hierarchy{margin:0 0 14px;border:1px solid #cfe0dc;border-radius:16px;background:#fff;overflow:hidden}
.evidence-hierarchy>summary{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:16px 18px;cursor:pointer;list-style:none;color:#0d4f45;background:#f7fbfa}
.evidence-hierarchy>summary::-webkit-details-marker{display:none}
.evidence-hierarchy>summary:before{content:'+';display:grid;place-items:center;flex:0 0 28px;width:28px;height:28px;border-radius:9px;background:#e1f1ed;color:#11695b;font-size:1.15rem;font-weight:900}
.evidence-hierarchy[open]>summary:before{content:'−';background:#187565;color:#fff}
.evidence-hierarchy>summary>span:first-of-type{display:grid;gap:3px;flex:1}
.evidence-hierarchy>summary small{font-size:.72rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase;color:#4b756e}
.evidence-hierarchy>summary strong{font-size:1rem;color:#102642}
.evidence-hierarchy>summary>span:last-child{font-size:.8rem;font-weight:800;color:#55736e;white-space:nowrap}
.evidence-hierarchy-body{display:grid;gap:12px;padding:14px 16px 16px}
.evidence-stage{margin:0;border-color:#d9e6e3;background:#fbfdfc}
.evidence-stage>summary{padding:13px 15px;background:#edf7f4}
.evidence-action{margin:0;border-color:#dfebe8}
.evidence-action>summary{padding:12px 14px;background:#f8fbfa}
.evidence-period-list{display:grid;gap:12px;padding:14px}
.evidence-period-card{padding:16px;border:1px solid #d4e2df;border-left:4px solid #27836f;border-radius:13px;background:#fff}
.evidence-period-card.is-cancelled{border-left-color:#b84a42;background:#fffafa}
.evidence-period-card>header{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:12px}
.evidence-period-card>header>div:first-child{display:grid;gap:4px}
.evidence-period-card>header small{color:#5c746f;font-size:.72rem;font-weight:850;text-transform:uppercase;letter-spacing:.06em}
.evidence-period-card>header strong{color:#102642;font-size:1.02rem}
.evidence-period-card>header span{color:#52667f}
.evidence-period-status{display:grid;justify-items:end;gap:7px;white-space:nowrap}
.evidence-period-status>strong{font-size:.78rem!important;color:#42615b!important}
.evidence-upload-form{margin:10px 0 14px}
.evidence-file-list{margin:0}
@media(max-width:720px){.evidence-hierarchy>summary,.evidence-period-card>header{align-items:stretch;flex-direction:column}.evidence-hierarchy>summary:before{position:absolute}.evidence-hierarchy>summary>span:first-of-type{padding-left:38px}.evidence-period-status{justify-items:start;white-space:normal}}
.schedule-table .hierarchy-meta td{background:#dcefe8;color:#075d4f;font-weight:800;border-left:4px solid #14866f}.schedule-table .hierarchy-stage td{background:#edf7f3;color:#174f45;font-weight:700;padding-left:28px}.schedule-table .hierarchy-action td{background:#f6faf8;color:#315e56;font-weight:700;padding-left:46px}.schedule-edit-row td{background:#e7f4ef!important;border-left:4px solid #2b8a72;padding:22px}.schedule-edit-row[hidden]{display:none}.schedule-edit-row .schedule-form{display:block}.schedule-edit-row .form-grid,.schedule-form .form-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.secure-change-box{display:grid;grid-template-columns:2fr 1fr;gap:16px;margin:18px 0;padding:18px;border:1px solid #d5a64b;border-radius:14px;background:#fff9e8}.secure-change-box p{grid-column:1/-1;margin:0;color:#6b5528}.schedule-table small{display:block;margin-top:5px}@media(max-width:900px){.schedule-edit-row .form-grid,.schedule-form .form-grid,.secure-change-box{grid-template-columns:1fr}}
.schedule-table tr[hidden]{display:none}.schedule-table .hierarchy-toggle-row td{padding-top:0;padding-bottom:0}.hierarchy-toggle{display:flex;width:100%;align-items:center;gap:10px;padding:13px 4px;border:0;background:transparent;color:inherit;font:inherit;font-weight:inherit;text-align:left;cursor:pointer}.hierarchy-toggle:hover{color:#064b40}.hierarchy-toggle:focus-visible{outline:3px solid rgba(20,134,111,.25);outline-offset:-3px;border-radius:8px}.hierarchy-toggle-icon{display:inline-flex;flex:0 0 18px;align-items:center;justify-content:center;font-size:.72rem;transition:transform .18s ease}.hierarchy-toggle[aria-expanded="true"] .hierarchy-toggle-icon{transform:rotate(90deg)}.schedule-table .hierarchy-activity td:first-child{border-left:4px solid #c9dfd7;padding-left:18px}
.gantt-card{margin:0 0 24px;border:1px solid #cfe1da;border-radius:18px;background:#fff;box-shadow:0 10px 28px rgba(10,61,52,.07);overflow:hidden}.gantt-card-header{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;padding:20px 22px;background:linear-gradient(135deg,#f5fbf8,#edf7f3)}.gantt-card-header h3{margin:3px 0 4px;color:#0b2c49}.gantt-card-header p{margin:0;color:#58716b}.gantt-legend{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px 14px;font-size:.78rem;color:#385d55}.gantt-legend span{display:inline-flex;align-items:center;gap:6px}.gantt-legend i{display:inline-block;width:12px;height:12px;border-radius:4px;background:#6489c9}.gantt-legend i.upcoming{background:#e5a11a}.gantt-legend i.in_progress{background:#21865f}.gantt-legend i.completed{background:#16704f}.gantt-legend i.overdue{background:#c83b32}.gantt-legend i.cancelled{background:#7c8582}.gantt-viewport{width:100%;padding-bottom:8px}.gantt-months,.gantt-row{display:grid;grid-template-columns:minmax(210px,280px) minmax(0,1fr)}.gantt-months{position:sticky;top:var(--sticky-offset,0);z-index:3;border-top:1px solid #dce8e3;border-bottom:1px solid #bdcec8;background:#f8fbfa}.gantt-months-label{padding:13px 16px;font-weight:800;color:#244b43}.gantt-months-scale{display:grid;grid-template-columns:repeat(var(--timeline-months),minmax(0,1fr))}.gantt-months-scale span{display:flex;min-width:0;flex-direction:column;align-items:center;justify-content:center;padding:7px 2px;border-left:1px solid #d5e0dc;text-align:center;overflow:hidden}.gantt-months-scale strong{font-size:.69rem;color:#245e52}.gantt-months-scale small{font-size:.62rem;color:#748b86}.gantt-group{padding:9px 16px;font-weight:800;border-top:1px solid #d2e1dc}.gantt-group-goal{background:#dcefe8;color:#075d4f;border-left:4px solid #168a70}.gantt-group-stage{padding-left:30px;background:#eef7f3;color:#245e52}.gantt-group-action{padding-left:46px;background:#f7faf9;color:#456a62}.gantt-row{min-height:52px;border-top:1px solid #e5eeeb}.gantt-row-label{display:flex;min-width:0;flex-direction:column;justify-content:center;padding:9px 16px;background:#fff}.gantt-row-label strong{overflow:hidden;color:#173b34;font-size:.84rem;text-overflow:ellipsis;white-space:nowrap}.gantt-row-label small{overflow:hidden;margin-top:3px;color:#71857f;font-size:.7rem;text-overflow:ellipsis;white-space:nowrap}.gantt-track{position:relative;min-width:0;background:repeating-linear-gradient(to right,#dce6e2 0,#dce6e2 1px,transparent 1px,transparent calc(100% / var(--timeline-months))),linear-gradient(#fff,#fbfdfc)}.gantt-bar{position:absolute;top:9px;bottom:9px;left:calc(var(--bar-start) * 100% / var(--timeline-months) + 3px);width:calc(var(--bar-span) * 100% / var(--timeline-months) - 6px);min-width:10px;border-radius:8px;background:#6489c9;box-shadow:0 3px 8px rgba(34,68,110,.18);overflow:hidden}.gantt-bar b{display:block;padding:8px 10px;color:#fff;font-size:.68rem;line-height:1;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.gantt-bar.in_progress{background:#21865f}.gantt-bar.completed{background:#16704f}.gantt-bar.overdue{background:#c83b32}.gantt-bar.cancelled{background:repeating-linear-gradient(135deg,#7c8582 0,#7c8582 8px,#aab3b0 8px,#aab3b0 16px)}.gantt-bar.upcoming{background:#e5a11a}@media(max-width:800px){.gantt-card-header{display:block}.gantt-legend{justify-content:flex-start;margin-top:15px}.gantt-months,.gantt-row{grid-template-columns:150px minmax(0,1fr)}.gantt-row-label strong{font-size:.76rem}.gantt-bar b{font-size:0;padding:0}.gantt-months-scale strong{font-size:.58rem}.gantt-months-scale small{display:none}}

.schedule-status{border:1px solid transparent;font-weight:900;white-space:nowrap}.schedule-status-planned{background:#e9eef2;color:#465b68;border-color:#cad5dc}.schedule-status-upcoming{background:#fff1bf;color:#7a4b00;border-color:#e5a11a}.schedule-status-in-progress{background:#dff3e9;color:#126244;border-color:#71b99d}.schedule-status-overdue{background:#fde5e3;color:#a5221b;border-color:#df776f}.schedule-status-completed{background:#d8efe5;color:#0c5d40;border-color:#69aa8d}.schedule-status-cancelled{background:#ecefed;color:#59635f;border-color:#bcc5c1}
/* Cronograma: proteção visual contra registros com datas fora da vigência. */
.gantt-period-warning{margin:0 18px 14px;padding:12px 14px;border:1px solid #e7b24a;border-left:5px solid #c77b00;border-radius:10px;background:#fff8df;color:#704900;font-size:.9rem;line-height:1.45}.gantt-row-label.has-invalid-period{background:#fff5e4;border-left:4px solid #c96b00}.gantt-row-label.has-invalid-period em{display:block;margin-top:4px;color:#a54800;font-size:.72rem;font-style:normal;font-weight:800}.gantt-bar.invalid-period{outline:3px solid #b7410e;outline-offset:-2px}.schedule-period-error{display:block;width:max-content;margin-top:5px;padding:3px 8px;border-radius:999px;background:#fff0e8;color:#a62f00;font-size:.72rem;font-weight:800}

/* V93 - Dashboard automatico da Execucao do Objeto */
.execution-dashboard-hero{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:28px 30px;margin-bottom:18px;border:1px solid #cfe4dc;border-radius:22px;background:linear-gradient(125deg,#f4fbf8 0%,#edf7f4 58%,#fff8ee 100%);box-shadow:0 12px 30px rgba(18,66,57,.06)}
.execution-dashboard-hero h1{margin:5px 0 7px;font-size:clamp(1.75rem,3vw,2.75rem);line-height:1.08;color:#0b2445}.execution-dashboard-hero p{margin:0;color:#55677d}.execution-dashboard-hero .item-actions{display:flex;gap:10px;flex-wrap:wrap}
.execution-dashboard-filter{position:sticky;top:68px;z-index:8;display:grid;grid-template-columns:minmax(190px,1.2fr) repeat(2,minmax(160px,.8fr)) auto auto;align-items:end;gap:12px;padding:14px 16px;margin-bottom:18px;border:1px solid #d9e7e2;border-radius:16px;background:rgba(255,255,255,.96);box-shadow:0 8px 24px rgba(13,61,54,.06);backdrop-filter:blur(12px)}
.execution-dashboard-filter label{display:grid;gap:6px;font-weight:800;color:#173351}.execution-dashboard-filter select,.execution-dashboard-filter input{width:100%;min-height:46px;padding:8px 12px;border:1px solid #bed4cd;border-radius:11px;background:#fff;color:#132a45}.execution-period-chip{align-self:center;padding:10px 13px;border-radius:999px;background:#e6f4ef;color:#126b58;font-weight:800;white-space:nowrap}
.execution-kpi-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px;margin-bottom:18px}.execution-kpi-card{position:relative;display:grid;align-content:start;gap:5px;min-height:142px;padding:20px;border:1px solid #dce7e3;border-radius:18px;background:#fff;overflow:hidden;box-shadow:0 7px 22px rgba(18,53,48,.045)}.execution-kpi-card:before{content:"";position:absolute;inset:0 auto 0 0;width:5px;background:var(--kpi-color)}.execution-kpi-card span{font-weight:800;color:#4d6075}.execution-kpi-card strong{font-size:clamp(1.55rem,2.5vw,2.25rem);line-height:1.1;color:#0d2848}.execution-kpi-card small{color:#6a7a8b}.execution-kpi-card>i{height:7px;margin-top:auto;border-radius:999px;background:#e8efed;overflow:hidden}.execution-kpi-card>i b{display:block;height:100%;border-radius:inherit;background:var(--kpi-color)}.kpi-green{--kpi-color:#239573}.kpi-blue{--kpi-color:#347fdb}.kpi-purple{--kpi-color:#7959c7}.kpi-orange{--kpi-color:#df832d}.kpi-red{--kpi-color:#c9534c}
.execution-dashboard-grid{display:grid;gap:18px;margin-bottom:18px}.dashboard-grid-primary{grid-template-columns:minmax(0,1.75fr) minmax(290px,.75fr)}.dashboard-grid-secondary{grid-template-columns:minmax(0,1.45fr) minmax(310px,.75fr)}.dashboard-grid-tertiary{grid-template-columns:repeat(3,minmax(0,1fr))}.execution-dashboard-panel{min-width:0;padding:21px;border:1px solid #dbe7e3;border-radius:19px;background:#fff;box-shadow:0 8px 25px rgba(18,53,48,.045)}.execution-dashboard-panel>header{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:18px}.execution-dashboard-panel>header h2{margin:3px 0 0;font-size:1.2rem;color:#102a49}.execution-dashboard-panel>header a{color:#14755f;font-weight:800;text-decoration:none}.chart-legend{display:flex;gap:12px;flex-wrap:wrap;font-size:.82rem}.chart-legend span{display:flex;align-items:center;gap:5px}.chart-legend i{width:10px;height:10px;border-radius:3px}.chart-legend .planned,.execution-bar-chart .planned{background:#b7c9d5}.chart-legend .executed,.execution-bar-chart .executed{background:#2b9676}
.execution-bar-chart{display:flex;align-items:stretch;gap:10px;min-height:265px;padding:12px 3px 0;overflow-x:auto}.bar-group{display:grid;grid-template-rows:1fr auto;gap:8px;min-width:38px;flex:1}.bars{display:flex;align-items:flex-end;justify-content:center;gap:3px;min-height:220px;border-bottom:1px solid #dce7e3;background:repeating-linear-gradient(to top,#f3f7f6 0,#f3f7f6 1px,transparent 1px,transparent 25%)}.bars i{display:block;width:min(14px,38%);min-height:2px;border-radius:5px 5px 0 0}.bar-group small{text-align:center;font-size:.68rem;color:#647488;white-space:nowrap}
.status-overview{display:grid;grid-template-columns:150px 1fr;align-items:center;gap:22px}.status-donut{display:grid;place-content:center;width:145px;aspect-ratio:1;border-radius:50%;position:relative}.status-donut:after{content:"";position:absolute;inset:20px;border-radius:50%;background:#fff}.status-donut strong,.status-donut span{position:relative;z-index:1;text-align:center}.status-donut strong{font-size:2rem;color:#102a49}.status-donut span{font-size:.76rem;color:#647488}.status-list{display:grid;gap:11px}.status-list div{display:grid;grid-template-columns:10px 1fr auto;align-items:center;gap:8px}.status-list i{width:9px;height:9px;border-radius:50%}.status-list span{color:#52657a}.status-list strong{color:#102a49}
.dashboard-hierarchy{padding:12px 0;border-bottom:1px solid #e1ebe7}.dashboard-hierarchy:first-of-type{padding-top:0}.dashboard-hierarchy summary,.dashboard-hierarchy details summary{display:flex;align-items:center;justify-content:space-between;gap:12px;cursor:pointer;font-weight:800;color:#153a57}.dashboard-hierarchy details{margin:12px 0 0 18px;padding:10px 0;border-top:1px dashed #d9e7e2}.progress-track{height:7px;margin-top:8px;border-radius:999px;background:#e5eeeb;overflow:hidden}.progress-track i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#2b9676,#61b59c)}.action-progress{display:grid;grid-template-columns:minmax(150px,1.2fr) minmax(100px,1fr) auto;align-items:center;gap:10px;margin:10px 0 0 20px;font-size:.86rem}.action-progress .progress-track{margin:0}.territory-row{display:grid;grid-template-columns:1fr auto;gap:6px 12px;padding:9px 0;border-bottom:1px solid #edf2f0}.territory-row>div{display:flex;justify-content:space-between;gap:12px;grid-column:1/-1}.territory-row>i{height:8px;border-radius:999px;background:#e8efed;overflow:hidden}.territory-row>i b{display:block;height:100%;border-radius:inherit;background:#4a8bd8}.territory-row small{font-weight:800;color:#52657a}
.photo-panel{margin-bottom:18px}.execution-photo-carousel{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(220px,28%);gap:14px;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:7px}.execution-photo-carousel figure{margin:0;scroll-snap-align:start;border:1px solid #dce7e3;border-radius:14px;overflow:hidden;background:#f7faf9}.execution-photo-carousel img{display:block;width:100%;aspect-ratio:16/10;object-fit:cover}.execution-photo-carousel figcaption{display:grid;gap:3px;padding:11px}.execution-photo-carousel figcaption span{font-size:.8rem;color:#647488}.narrative-panel details{padding:11px 0;border-bottom:1px solid #e2ebe8}.narrative-panel summary{cursor:pointer;font-weight:800;color:#163552}.narrative-detail{padding:10px 12px;border-radius:10px;background:#f5f9f7}.narrative-detail p{margin:4px 0 12px;white-space:pre-line;color:#52657a}.indicator-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 0;border-bottom:1px solid #e5eeeb}.indicator-row div{display:grid;gap:3px}.indicator-row small{color:#647488}.indicator-row>span{padding:6px 9px;border-radius:999px;background:#e7f5ef;color:#177159;font-weight:900}.deadline-row{display:flex;align-items:center;gap:11px;padding:9px 0;border-bottom:1px solid #e5eeeb}.deadline-row time{display:grid;place-content:center;min-width:49px;aspect-ratio:1;border-radius:10px;background:#eef5f2;text-align:center;color:#126b58}.deadline-row time strong{font-size:1.1rem}.deadline-row time span{font-size:.63rem;font-weight:900}.deadline-row div{display:grid;gap:3px}.deadline-row small{color:#6b7a8b}.deadline-row.overdue time{background:#fdecea;color:#b63d35}.pending-panel{margin-bottom:20px}.pending-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.pending-grid article{display:grid;gap:5px;padding:14px;border-radius:13px;background:#fff7e9;border:1px solid #f1dfba}.pending-grid article span{font-size:.72rem;font-weight:900;text-transform:uppercase;color:#a16013}.pending-grid article small{color:#6b6f73}.empty-state{color:#718092;font-style:italic}
@media(max-width:1180px){.execution-kpi-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.dashboard-grid-primary,.dashboard-grid-secondary{grid-template-columns:1fr}.dashboard-grid-tertiary{grid-template-columns:repeat(2,minmax(0,1fr))}.execution-dashboard-filter{grid-template-columns:repeat(2,minmax(0,1fr))}.execution-period-chip{justify-self:start}.pending-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:720px){.execution-dashboard-hero{align-items:flex-start;flex-direction:column;padding:21px}.execution-dashboard-filter{position:static;grid-template-columns:1fr}.execution-kpi-grid,.dashboard-grid-tertiary,.pending-grid{grid-template-columns:1fr}.status-overview{grid-template-columns:1fr;justify-items:center}.execution-photo-carousel{grid-auto-columns:82%}.action-progress{grid-template-columns:1fr;margin-left:10px}.execution-dashboard-panel{padding:16px}.execution-dashboard-panel>header{flex-direction:column}.execution-dashboard-filter .button{width:100%}}
@media print{.execution-dashboard-filter,.execution-dashboard-hero .item-actions{display:none!important}.execution-kpi-grid{grid-template-columns:repeat(5,1fr)}.execution-dashboard-grid{grid-template-columns:1fr 1fr}.execution-dashboard-panel,.execution-kpi-card{break-inside:avoid;box-shadow:none}}

/* V99 - Indicadores organizados por projeto, meta, etapa, ação e atividade. */
.indicator-organized-list{display:grid;gap:13px;margin-top:18px}.indicator-level-group{border:1px solid #cfe0db;border-radius:16px;background:#fff;overflow:hidden;box-shadow:0 5px 18px rgba(18,68,59,.035)}.indicator-level-group>summary{display:grid;grid-template-columns:1fr auto;align-items:center;gap:18px;padding:17px 19px;cursor:pointer;list-style:none;background:#f7fbfa;color:#123954}.indicator-level-group>summary::-webkit-details-marker,.indicator-context-group>summary::-webkit-details-marker{display:none}.indicator-level-group>summary>span{display:grid;gap:3px;padding-left:35px;position:relative}.indicator-level-group>summary>span:before{content:'+';position:absolute;left:0;top:50%;display:grid;place-items:center;width:24px;height:24px;transform:translateY(-50%);border-radius:8px;background:#e0f1eb;color:#146b59;font-weight:900}.indicator-level-group[open]>summary>span:before{content:'−';background:#247d69;color:#fff}.indicator-level-group>summary strong{font-size:1.06rem}.indicator-level-group>summary small{color:#667d78;font-size:.8rem}.indicator-level-group>summary>b{display:grid;place-items:center;min-width:34px;height:30px;padding:0 9px;border-radius:999px;background:#e0f1eb;color:#126250;font-size:.82rem}.indicator-level-content{padding:14px}.indicator-context-list{display:grid;gap:10px}.indicator-context-group{border:1px solid #d8e5e1;border-radius:13px;background:#fbfdfc;overflow:hidden}.indicator-context-group>summary{display:grid;grid-template-columns:auto minmax(0,1fr) minmax(0,.7fr) auto;align-items:center;gap:12px;padding:13px 15px;cursor:pointer;list-style:none;color:#153c55}.indicator-context-group>summary:before{content:'+';grid-column:1;display:grid;place-items:center;width:22px;height:22px;border-radius:7px;background:#e6f3ef;color:#176b59;font-weight:900}.indicator-context-group[open]>summary:before{content:'−';background:#318672;color:#fff}.indicator-context-group>summary>span{font-size:.7rem;font-weight:900;text-transform:uppercase;letter-spacing:.08em;color:#47736a}.indicator-context-group>summary>strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.indicator-context-group>summary>small{overflow:hidden;color:#6c817c;text-overflow:ellipsis;white-space:nowrap}.indicator-context-group>summary>b{min-width:28px;padding:5px 8px;border-radius:999px;background:#edf5f2;color:#2c6659;text-align:center;font-size:.74rem}.indicator-context-group>div{padding:0 12px 12px}.indicator-list-header,.indicator-list-row{display:grid;grid-template-columns:minmax(280px,2.2fr) minmax(85px,.55fr) minmax(90px,.6fr) minmax(105px,.7fr) minmax(90px,.6fr) minmax(135px,.8fr);align-items:center;gap:10px}.indicator-list-header{padding:10px 13px;border:1px solid #d6e4df;border-radius:10px 10px 0 0;background:#edf6f3;color:#395e57;font-size:.69rem;font-weight:900;letter-spacing:.055em;text-transform:uppercase}.indicator-list-row{margin-top:-1px;padding:13px;border:1px solid #dce7e3;background:#fff}.indicator-list-row:last-child{border-radius:0 0 10px 10px}.indicator-list-name{min-width:0}.indicator-list-name>strong{display:block;color:#102d49;font-size:.94rem;line-height:1.35}.indicator-list-cell{color:#244358;font-variant-numeric:tabular-nums}.indicator-list-achievement strong{color:#13725d;font-size:1rem}.indicator-list-action .button{width:100%;min-height:39px;padding:8px 10px;font-size:.78rem}.indicator-supporting-details{margin-top:6px}.indicator-supporting-details>summary{width:max-content;cursor:pointer;color:#327363;font-size:.72rem;font-weight:800}.indicator-supporting-details>div{display:grid;gap:7px;margin-top:8px;padding:10px 12px;border-radius:9px;background:#f5f9f7;color:#526d67;font-size:.78rem}.indicator-supporting-details p{margin:0}.indicator-history-line{display:flex;justify-content:space-between;gap:14px;padding-top:6px;border-top:1px solid #dce7e3}.indicator-measurement-panel{grid-column:1/-1;margin-top:3px;padding:16px;border:1px solid #acd3c8;border-left:4px solid #28836e;border-radius:12px;background:#eff8f5}.indicator-measurement-panel[hidden]{display:none}.indicator-measurement-panel .form-actions{margin-top:12px}.indicator-level-empty{padding:20px;border:1px dashed #cbdcd7;border-radius:11px;color:#69807a;text-align:center;background:#fbfdfc}
@media(max-width:980px){.indicator-list-header{display:none}.indicator-list-row{grid-template-columns:repeat(5,minmax(0,1fr));gap:13px}.indicator-list-name{grid-column:1/-1}.indicator-list-cell:before{content:attr(data-label);display:block;margin-bottom:4px;color:#6b807b;font-size:.64rem;font-weight:900;letter-spacing:.05em;text-transform:uppercase}.indicator-list-action .button{min-height:42px}.indicator-context-group>summary{grid-template-columns:auto minmax(0,1fr) auto}.indicator-context-group>summary>small{grid-column:2}.indicator-measurement-panel{grid-column:1/-1}}
@media(max-width:650px){.indicator-level-content{padding:9px}.indicator-context-group>div{padding:0 7px 7px}.indicator-list-row{grid-template-columns:1fr 1fr}.indicator-list-action{grid-column:1/-1}.indicator-context-group>summary>strong,.indicator-context-group>summary>small{white-space:normal}.indicator-level-group>summary{padding:14px}.indicator-level-group>summary small{line-height:1.35}}
/* V100 — medição orientada por fórmula e variáveis */
.indicator-formula-guide{background:#e7f4ef;border:1px solid #a9d3c4;border-left:5px solid #13755f;border-radius:14px;padding:16px 18px;margin-bottom:18px;display:grid;gap:5px}
.indicator-formula-guide>span{color:#216453;font-size:.76rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
.indicator-formula-guide>strong{color:#0c3f35;font-size:1.12rem}
.indicator-formula-guide>p{margin:2px 0 0;color:#385f56}
.indicator-calculation-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:16px;margin-bottom:18px}
.indicator-variable-field,.indicator-result-field{display:grid;gap:7px;align-content:start;font-weight:700}
.indicator-variable-field input,.indicator-result-field input{width:100%;min-height:52px;border:1px solid #b7cfc7;border-radius:12px;background:#fff;padding:10px 14px;font:inherit}
.indicator-variable-field small,.indicator-result-field small{color:#5e756f;font-size:.78rem;font-weight:500;line-height:1.35}
.indicator-result-field{background:#f7fbf9;border:1px solid #c7ded6;border-radius:13px;padding:13px}
.indicator-result-control{display:flex;align-items:center;gap:10px}
.indicator-result-control b{white-space:nowrap;color:#126b58}
.indicator-result-field input[readonly]{background:#ecf7f3;color:#0b5949;font-size:1.15rem;font-weight:800}
[data-indicator-result-message].is-ready{color:#087058}
[data-indicator-result-message].is-error{color:#b42318}
.indicator-measurement-metadata{margin-bottom:16px}
.indicator-history-calculation{margin:-5px 0 9px!important;color:#5d746d;font-size:.76rem}
.audit-balance-correction{display:grid;gap:12px;margin:16px 0;padding:16px;border:1px solid #b7cfe8;border-left:5px solid #2e68a3;border-radius:12px;background:#f3f8fd}.audit-balance-correction h3,.audit-balance-correction p{margin:0}.audit-balance-correction>.form-grid{padding-top:12px;border-top:1px solid #d4e2ef}.audit-balance-correction>.form-grid:first-of-type{padding-top:0;border-top:0}
.indicator-measurement-correction{margin:0 0 8px;padding:0;border:1px solid #bad8d0;border-radius:9px;background:#fff}.indicator-measurement-correction>summary{width:auto!important;padding:8px 10px;list-style:none;color:#176b59!important;font-weight:900!important}.indicator-measurement-correction>summary:before{content:'✎';margin-right:7px}.indicator-measurement-correction[open]>summary{border-bottom:1px solid #d7e7e2;background:#edf7f4}.indicator-measurement-correction form{padding:12px}.indicator-correction-grid{align-items:start}.indicator-correction-grid textarea{min-height:76px}
@media(max-width:720px){.indicator-calculation-grid{grid-template-columns:1fr}.indicator-formula-guide{padding:14px}}
/* V103 — pesos dos indicadores de ação e IGDP por data */
.indicator-list-header,.indicator-list-row{grid-template-columns:minmax(260px,2.1fr) minmax(78px,.5fr) minmax(85px,.55fr) minmax(95px,.65fr) minmax(82px,.52fr) minmax(118px,.72fr) minmax(130px,.8fr)}
.indicator-row-actions{display:grid;gap:6px}.indicator-list-action .indicator-row-actions .button{min-height:34px}.button-danger-light{border:1px solid #e7a8a1;background:#fff6f5;color:#a82a20}.button-danger-light:hover{background:#fee9e7}.indicator-maintenance-panel{grid-column:1/-1;margin-top:3px;padding:16px;border:1px solid #acd3c8;border-left:4px solid #28836e;border-radius:12px;background:#eff8f5}.indicator-maintenance-panel[hidden]{display:none}.indicator-maintenance-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:14px}.indicator-maintenance-heading>div{display:grid;gap:2px}.indicator-maintenance-heading span{color:#51766e;font-size:.7rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.indicator-maintenance-heading strong{color:#103b55;font-size:1.08rem}.indicator-edit-grid{align-items:start}.indicator-cancel-panel{border-color:#e2aaa4;border-left-color:#bd392d;background:#fff7f6}.indicator-cancel-panel>p{margin:0 0 14px;color:#754b47}.button-danger{border-color:#ad2d23;background:#ad2d23;color:#fff}.button-danger:hover{background:#8f2119}
.indicator-weight-form{display:flex;align-items:center;gap:5px}.indicator-weight-form input{width:68px;min-height:37px;padding:6px 7px;border:1px solid #b9d1ca;border-radius:8px}.indicator-weight-form button{min-height:37px;padding:6px 8px;border:1px solid #9ec9bd;border-radius:8px;background:#edf7f4;color:#126451;font-weight:800;cursor:pointer}.indicator-project-index{border-left:5px solid #19745f!important}.indicator-project-index small{display:block;margin-top:3px;color:#617b74;font-size:.72rem}.project-performance-preview{display:grid;gap:8px;margin-top:15px;padding:15px 17px;border:1px solid #9fcebf;border-left:5px solid #18745f;border-radius:13px;background:#e7f4ef}.project-performance-preview>div:first-child{display:flex;justify-content:space-between;align-items:center;gap:16px}.project-performance-preview span{color:#285e52;font-size:.78rem;font-weight:800;text-transform:uppercase;letter-spacing:.05em}.project-performance-preview strong{color:#0d5f4d;font-size:1.35rem}.project-performance-preview p{margin:0;color:#486b63;font-size:.82rem}.project-performance-preview summary{cursor:pointer;color:#176a58;font-size:.8rem;font-weight:800}.project-performance-preview details>div{display:grid;gap:5px;margin-top:8px}.project-performance-component{display:flex;justify-content:space-between;gap:14px;padding:7px 9px;border-radius:8px;background:rgba(255,255,255,.72)}.project-performance-component span{font-size:.72rem;text-transform:none;letter-spacing:0}.project-performance-component strong{font-size:.82rem}.indicator-history-performance{margin:-3px 0 8px!important;color:#136b58;font-size:.76rem}.indicator-history-performance strong{font-size:inherit}
@media(max-width:980px){.indicator-list-row{grid-template-columns:repeat(6,minmax(0,1fr))}.indicator-weight-cell{grid-column:auto}.indicator-measurement-panel{grid-column:1/-1}}
@media(max-width:650px){.indicator-list-row{grid-template-columns:1fr 1fr}.indicator-weight-cell{grid-column:auto}.project-performance-preview>div:first-child{align-items:flex-start;flex-direction:column;gap:4px}}
.execution-indicator-picker {
    grid-column: 1 / -1;
    padding: 1rem;
    border: 1px solid #b7d8ce;
    border-radius: 14px;
    background: #f3faf7;
}

.execution-indicator-picker h3 {
    margin: 0 0 .25rem;
    color: #075f4d;
}

.execution-indicator-picker > p {
    margin: 0 0 .75rem;
    color: #4e6962;
}

[data-indicator-measurements] {
    display: grid;
    gap: .6rem;
}

.execution-measurement-option {
    display: flex;
    align-items: flex-start;
    gap: .7rem;
    padding: .75rem;
    border: 1px solid #c8ddd7;
    border-radius: 10px;
    background: #fff;
    cursor: pointer;
}

.execution-measurement-option:has(input:checked) {
    border-color: #21865f;
    background: #e6f5ef;
}

.execution-measurement-option input {
    width: auto;
    margin-top: .2rem;
}

.execution-measurement-option span,
.execution-measurement-option small {
    display: block;
}
/* Módulo independente: Projeções e Decisões */
.module-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:1rem}.budget-program-nav{position:sticky;top:var(--app-header-height,72px);z-index:20;display:flex;gap:.5rem;overflow-x:auto;padding:.7rem;background:rgba(247,250,249,.96);border:1px solid #cfe0da;border-radius:14px;box-shadow:0 6px 18px rgba(12,72,59,.06);backdrop-filter:blur(8px)}.budget-program-nav a{flex:0 0 auto;padding:.65rem .85rem;border-radius:10px;color:#075b4b;font-weight:700;text-decoration:none}.budget-program-nav a:hover,.budget-program-nav a:focus{background:#dff2eb;outline:none}.module-anchor{scroll-margin-top:150px}.budget-summary-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.85rem;margin:1rem 0 1.2rem}.budget-summary-card{display:flex;flex-direction:column;min-width:0;min-height:132px;padding:1rem 1.05rem;border:1px solid #d5e4df;border-radius:15px;background:#fff;box-shadow:0 5px 16px rgba(13,72,60,.05)}.budget-summary-card>span{min-height:2.2em;color:#53645f;font-size:.82rem;font-weight:800;line-height:1.25}.budget-summary-card>strong{display:block;margin:.35rem 0;color:#102544;font-size:clamp(1.15rem,2vw,1.5rem);line-height:1.15;white-space:nowrap}.budget-summary-card>small{display:block;margin-top:auto;padding-top:.55rem;border-top:1px solid #edf2f0;color:#6a7974;font-size:.72rem;line-height:1.3}.budget-summary-card.executed{border-left:5px solid #3979bd;background:#f8fbff}.budget-summary-card.available{border-left:5px solid #16866e;background:#f3fbf8}.budget-summary-card.available>strong{color:#08705d}.budget-status{display:inline-flex;align-items:center;border-radius:999px;padding:.32rem .62rem;font-size:.8rem;font-weight:800}.status-normal{background:#dff3e8;color:#086343}.status-attention{background:#fff2bd;color:#765500}.status-critical{background:#ffe0c2;color:#984500}.status-blocked{background:#e7ebef;color:#45515e}.status-exceeded{background:#fee2e2;color:#a51515}.installment-list{display:grid;gap:.75rem}.installment-card{border:1px solid #cfe0da;border-radius:14px;background:#fff;overflow:hidden}.installment-card>summary{display:grid;grid-template-columns:minmax(180px,1fr) auto auto;gap:1rem;align-items:center;padding:1rem;cursor:pointer;font-weight:700}.installment-card[open]>summary{background:#eaf6f1;border-bottom:1px solid #cfe0da}.installment-body{padding:1rem}.nested-form{border:1px solid #cfe0da;border-radius:14px;background:#fff;margin-bottom:1rem}.nested-form>summary{padding:1rem;color:#075b4b;font-weight:800;cursor:pointer}.nested-form[open]>summary{background:#eaf6f1;border-bottom:1px solid #cfe0da}.nested-form>form,.nested-form>.two-column-grid{padding:1rem}.action-row{display:flex;flex-wrap:wrap;gap:.65rem;margin-top:1rem}.cycle-overview{border-left:5px solid #16866e}.budget-table th,.budget-table td{vertical-align:top}.budget-table small,.table-shell td small{display:block;margin-top:.25rem;color:#65736f}.two-column-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}

/* Projeções e Decisões — resumo do ciclo */
.cycle-overview{padding:1.25rem;border:1px solid #cfe0da;border-left:5px solid #16866e;border-radius:18px;background:linear-gradient(145deg,#fff 0%,#f7fbf9 100%);box-shadow:0 8px 24px rgba(12,72,59,.06)}
.cycle-overview-header{display:flex;align-items:flex-start;justify-content:space-between;gap:1.25rem;padding-bottom:1rem;border-bottom:1px solid #dbe8e3}
.cycle-overview-title{min-width:0}.cycle-overview-title h2{margin:.2rem 0;font-size:1.65rem;color:#102544}.cycle-title-line{display:flex;align-items:center;flex-wrap:wrap;gap:.65rem}.cycle-version{display:inline-flex;align-items:center;padding:.28rem .62rem;border-radius:999px;background:#dff2eb;color:#075b4b;font-size:.78rem;font-weight:800}
.cycle-deadlines{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.7rem}.cycle-deadlines span{display:inline-flex;align-items:center;gap:.25rem;padding:.45rem .65rem;border:1px solid #d6e5df;border-radius:9px;background:#fff;color:#53645f;font-size:.84rem}.cycle-deadlines b{color:#173d35}
.cycle-overview-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:.65rem}.cycle-overview-actions form{margin:0}.cycle-overview-actions .button{white-space:nowrap}
.cycle-metric-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.85rem;margin-top:1rem}.cycle-metric-card{display:flex;flex-direction:column;min-width:0;min-height:128px;padding:1rem;border:1px solid #d5e4df;border-radius:14px;background:#fff;box-shadow:0 4px 12px rgba(13,72,60,.04)}.cycle-metric-card>span{min-height:2.4em;color:#52635e;font-size:.85rem;font-weight:700;line-height:1.2}.cycle-metric-card>strong{display:block;margin:.45rem 0;color:#0f2b47;font-size:1.35rem;line-height:1.15;overflow-wrap:anywhere}.cycle-metric-card>small{display:block;margin-top:auto;padding-top:.55rem;border-top:1px solid #edf2f0;color:#64746f;font-size:.78rem;line-height:1.3}.cycle-metric-card>small b{display:block;margin-top:.15rem;color:#176b5b;font-size:.88rem}
.cycle-audit-notice{display:flex;align-items:flex-start;gap:.7rem;margin-top:1rem;padding:.85rem 1rem;border:1px solid #c9dff2;border-radius:12px;background:#edf6ff;color:#24547a}.cycle-audit-notice>span{display:grid;place-items:center;flex:0 0 24px;width:24px;height:24px;border-radius:50%;background:#2d75a8;color:#fff;font-weight:900}.cycle-audit-notice p{margin:0;line-height:1.45}.cycle-audit-notice strong{color:#17466b}
@media(max-width:1100px){.cycle-metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.cycle-overview-header{align-items:stretch;flex-direction:column}.cycle-overview-actions{justify-content:flex-start}}
@media(max-width:620px){.cycle-overview{padding:1rem}.cycle-metric-grid{grid-template-columns:1fr}.cycle-overview-actions{display:grid;grid-template-columns:1fr}.cycle-overview-actions form,.cycle-overview-actions .button{width:100%}.cycle-deadlines{display:grid}.cycle-deadlines span{width:100%}.cycle-metric-card{min-height:112px}}
@media(max-width:900px){.budget-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.module-heading{align-items:stretch;flex-direction:column}.budget-program-nav{top:64px}.installment-card>summary{grid-template-columns:1fr}.two-column-grid{grid-template-columns:1fr}}@media(max-width:520px){.budget-summary-grid{grid-template-columns:1fr}.budget-summary-card{min-height:118px}.budget-summary-card>strong{white-space:normal}}

.financial-cycle-hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(250px,330px);gap:1.2rem;margin:0 0 1rem;padding:1.4rem;border:1px solid #bad8cf;border-left:6px solid #16866e;border-radius:20px;background:linear-gradient(125deg,#f1faf7 0%,#fff 62%);box-shadow:0 12px 30px rgba(12,72,59,.08)}
.financial-cycle-hero-main{display:grid;grid-template-columns:56px minmax(0,1fr);gap:1rem;align-items:start}.financial-cycle-hero-icon{display:grid;place-items:center;width:56px;height:56px;border-radius:17px;background:linear-gradient(145deg,#08705d,#1b967b);box-shadow:0 8px 18px rgba(8,112,93,.22);color:#fff;font-size:1.8rem;font-weight:900}.financial-cycle-hero h1{margin:.25rem 0 .4rem;color:#102544;font-size:clamp(2rem,4vw,3rem);line-height:1.05}.financial-cycle-hero p{max-width:850px;margin:0;color:#52645f;line-height:1.55}
.financial-cycle-context{display:flex;flex-wrap:wrap;gap:.65rem;margin-top:1rem}.financial-cycle-context>span{display:grid;gap:.15rem;min-width:180px;padding:.65rem .8rem;border:1px solid #d5e6e0;border-radius:11px;background:rgba(255,255,255,.8)}.financial-cycle-context small{color:#64756f;font-size:.7rem;font-weight:800;letter-spacing:.05em;text-transform:uppercase}.financial-cycle-context strong{color:#16483f;font-size:.9rem}
.financial-cycle-hero-actions{display:flex;flex-direction:column;align-items:flex-start;padding:1rem 1.05rem;border:1px solid #d5e3df;border-radius:15px;background:#fff}.financial-cycle-hero-actions>span{color:#08705d;font-size:.72rem;font-weight:900;letter-spacing:.06em;text-transform:uppercase}.financial-cycle-hero-actions>strong{margin:.35rem 0;color:#142a46}.financial-cycle-hero-actions>small{color:#65736f;line-height:1.4}.financial-cycle-hero-actions .button{width:100%;margin-top:auto;padding-top:.75rem;padding-bottom:.75rem;text-align:center}
@media(max-width:900px){.financial-cycle-hero{grid-template-columns:1fr}.financial-cycle-hero-actions .button{margin-top:1rem;width:auto}}@media(max-width:560px){.financial-cycle-hero{padding:1rem}.financial-cycle-hero-main{grid-template-columns:1fr}.financial-cycle-hero-icon{width:46px;height:46px;border-radius:13px}.financial-cycle-context{display:grid}.financial-cycle-context>span{min-width:0}.financial-cycle-hero-actions .button{width:100%}}
.unpaid-expense-panel{padding:0;overflow:hidden;border:1px solid #cfe0da;border-left:5px solid #d28a16;border-radius:16px;background:#fff}.unpaid-expense-panel>summary{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1.15rem 1.25rem;cursor:pointer;list-style:none}.unpaid-expense-panel>summary::-webkit-details-marker{display:none}.unpaid-expense-panel>summary:before{content:"▶";flex:0 0 auto;color:#08705d;font-size:.9rem}.unpaid-expense-panel[open]>summary:before{content:"▼"}.unpaid-expense-panel>summary>span:first-of-type{display:grid;flex:1;gap:.18rem}.unpaid-expense-panel>summary strong{color:#102544;font-size:1.35rem}.unpaid-expense-panel>summary small{color:#65736f}.unpaid-expense-panel[open]>summary{background:#fff8e9;border-bottom:1px solid #ead9b8}.unpaid-expense-count{flex:0 0 auto;padding:.42rem .72rem;border-radius:999px;background:#fff0c7;color:#805500;font-size:.8rem;font-weight:900}.unpaid-expense-body{padding:1rem 1.2rem 1.2rem}.unpaid-expense-body .cycle-audit-notice{margin:0 0 1rem}.expense-budget-link{display:grid;gap:.15rem;padding:.25rem 0}.expense-budget-link+ .expense-budget-link{margin-top:.35rem;padding-top:.6rem;border-top:1px solid #e5ece9}.expense-budget-link b{color:#08705d;font-size:.76rem}.payment-schedule-form{display:flex;align-items:center;gap:.45rem}.payment-schedule-form input{min-width:145px}.payment-schedule-form .button{white-space:nowrap}.unpaid-expense-table th:nth-child(1){width:31%}.unpaid-expense-table th:nth-child(4){width:21%}@media(max-width:760px){.unpaid-expense-panel>summary{align-items:flex-start;flex-wrap:wrap}.unpaid-expense-count{margin-left:1.4rem}.payment-schedule-form{align-items:stretch;flex-direction:column}}
.simplified-projection-form>form{display:grid;gap:1rem}.projection-auto-notice{display:flex;align-items:flex-start;gap:.65rem;padding:.8rem .9rem;border:1px solid #bfe0d5;border-radius:11px;background:#eff9f5;color:#345d55}.projection-auto-notice strong{flex:0 0 auto;color:#08705d}.projection-exception-fields{border:1px dashed #ddb96c;border-radius:12px;background:#fffaf0}.projection-exception-fields>summary{padding:.85rem;color:#795800;font-weight:800;cursor:pointer}.projection-exception-fields>.form-grid{padding:0 .85rem .85rem}.simplified-projection-form label>small{display:block;margin-top:.3rem;color:#65736f}@media(max-width:650px){.projection-auto-notice{display:grid}}
.projection-submit-bar{position:sticky;bottom:0;z-index:3;display:flex;align-items:center;justify-content:space-between;gap:1rem;margin:0 -1rem -1rem;padding:.85rem 1rem;border-top:1px solid #cfe0da;background:rgba(255,255,255,.97);box-shadow:0 -8px 18px rgba(12,72,59,.08);backdrop-filter:blur(7px)}.projection-submit-bar span{color:#64736f;font-size:.8rem}.projection-submit-bar .button{min-width:220px}.projection-locked-notice{display:grid;gap:.25rem;padding:1rem;border:1px solid #eed28e;border-left:5px solid #d28a16;border-radius:12px;background:#fff9e9;color:#5f4b1c}.projection-locked-notice strong{color:#805500}@media(max-width:650px){.projection-submit-bar{align-items:stretch;flex-direction:column}.projection-submit-bar .button{width:100%}}
.projection-workspace{border-left:5px solid #16866e}.cash-capacity-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:.75rem;margin:1rem 0}.cash-capacity-grid article{display:grid;gap:.3rem;min-width:0;padding:.9rem;border:1px solid #d6e3df;border-radius:13px;background:#fff}.cash-capacity-grid span{min-height:2.2em;color:#596a65;font-size:.76rem;font-weight:800}.cash-capacity-grid strong{color:#102544;font-size:1.12rem;white-space:nowrap}.cash-capacity-grid small{color:#6c7a76;font-size:.7rem}.cash-capacity-grid .committed{border-left:4px solid #d28a16;background:#fffaf0}.cash-capacity-grid .available{border-left:4px solid #16866e;background:#f1faf7}.cash-capacity-grid .available strong{color:#08705d}.capacity-progress{height:10px;margin:-.25rem 0 1.35rem;overflow:hidden;border-radius:999px;background:#e7eeeb}.capacity-progress span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#16866e,#e1a127)}.projection-subheading{margin:1.5rem 0 .7rem;padding-left:.75rem;border-left:4px solid #16866e;color:#102544}.capacity-warning{color:#a33b18!important;font-weight:800}.projection-flow-action{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-top:1rem;padding:1rem;border:1px solid #bcd9d0;border-radius:13px;background:#eef8f4}.decision-workspace{border-left:5px solid #315ca8}.decision-form{min-width:250px}.decision-form>summary{color:#075b4b;font-weight:800;cursor:pointer}.decision-form form{display:grid;gap:.55rem;margin-top:.65rem;padding:.75rem;border:1px solid #cfe0da;border-radius:11px;background:#f8fbfa}.decision-form label{display:grid;gap:.25rem}.decision-results{border-left:5px solid #6b5aa8}.decision-result-card{margin:.8rem 0;border:1px solid #d6e3df;border-radius:14px;overflow:hidden;background:#fff}.decision-result-card>summary{display:flex;align-items:center;justify-content:space-between;padding:1rem;cursor:pointer}.decision-result-card>summary span{display:grid;place-items:center;min-width:32px;height:32px;border-radius:999px;font-weight:900}.decision-result-card.approved>summary{background:#eff9f4;color:#086343}.decision-result-card.approved>summary span{background:#d7f1e3}.decision-result-card.rejected>summary{background:#fff5f2;color:#923424}.decision-result-card.rejected>summary span{background:#fee2dc}@media(max-width:1050px){.cash-capacity-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:700px){.cash-capacity-grid{grid-template-columns:1fr 1fr}.projection-flow-action{align-items:stretch;flex-direction:column}.projection-flow-action .button{width:100%}}@media(max-width:450px){.cash-capacity-grid{grid-template-columns:1fr}}
.financial-workflow-tabs{position:sticky;top:var(--app-header-height,72px);z-index:20;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.7rem;margin-bottom:1rem;padding:.7rem;border:1px solid #cfe0da;border-radius:16px;background:rgba(247,250,249,.96);box-shadow:0 7px 20px rgba(12,72,59,.07);backdrop-filter:blur(8px)}.financial-workflow-tabs a{display:grid;grid-template-columns:34px minmax(0,1fr);gap:.08rem .65rem;align-items:center;padding:.75rem;border:1px solid transparent;border-radius:12px;color:#405750;text-decoration:none}.financial-workflow-tabs a>span{grid-row:1/3;display:grid;place-items:center;width:34px;height:34px;border-radius:999px;background:#e6efec;color:#42635a;font-weight:900}.financial-workflow-tabs a strong{color:#183047}.financial-workflow-tabs a small{overflow:hidden;color:#6a7974;font-size:.68rem;text-overflow:ellipsis;white-space:nowrap}.financial-workflow-tabs a:hover{border-color:#bad8cf;background:#fff}.financial-workflow-tabs a.active{border-color:#9fcec0;background:#eaf7f2;box-shadow:inset 4px 0 #16866e}.financial-workflow-tabs a.active>span{background:#16866e;color:#fff}@media(max-width:760px){.financial-workflow-tabs{grid-template-columns:1fr}.financial-workflow-tabs a small{white-space:normal}}

/* V111 — experiência financeira, tarefas, filtros e paginação sob demanda */
.financial-tabs{position:sticky;top:var(--app-header-height,72px);z-index:25;overflow-x:auto;flex-wrap:nowrap;background:rgba(247,250,249,.96);box-shadow:0 7px 18px rgba(10,73,58,.06);backdrop-filter:blur(8px)}
.financial-tabs .button{flex:0 0 auto;white-space:nowrap}.finance-command-center{display:grid;gap:16px;margin:18px 0}.finance-health-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.finance-health-grid article{padding:18px;border:1px solid #d4e3de;border-radius:16px;background:#fff;box-shadow:0 5px 16px rgba(11,77,62,.04)}.finance-health-grid span{display:block;color:#557069;font-size:.82rem;font-weight:800}.finance-health-grid strong{display:block;margin:6px 0;color:#102a46;font-size:1.55rem}.finance-health-grid small{display:block;margin-top:8px;color:#657872;line-height:1.35}.finance-progress{height:8px;overflow:hidden;border-radius:999px;background:#e5eeeb}.finance-progress i{display:block;height:100%;border-radius:inherit;background:#23876e}.finance-progress.warning i{background:#e69b2d}.finance-workspace-grid{display:grid;grid-template-columns:minmax(280px,.82fr) minmax(420px,1.45fr);gap:14px}.finance-next-action,.finance-task-center{padding:20px;border:1px solid #cbded8;border-radius:17px;background:#fff}.finance-next-action{border-left:5px solid #21836b;background:linear-gradient(135deg,#f5fbf8,#fff)}.finance-next-action h2,.finance-task-center h2{margin:5px 0 8px;color:#102a46}.finance-next-action p{margin:0 0 16px;color:#58716a;line-height:1.45}.finance-task-center header{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}.finance-task-counts{display:grid;min-width:74px;padding:8px 12px;border-radius:12px;background:#e8f5f0;text-align:center}.finance-task-counts strong{color:#126c58;font-size:1.25rem}.finance-task-counts small{font-size:.7rem}.finance-task-list{display:grid;gap:7px;margin-top:12px}.finance-task-list>a{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:10px;padding:10px;border:1px solid #e0e9e6;border-radius:11px;color:#17304b;text-decoration:none}.finance-task-list>a:hover{border-color:#94c8b9;background:#f2f9f6}.finance-task-list a>span:nth-child(2){display:grid;gap:2px}.finance-task-list small{color:#657872}.finance-task-priority{padding:4px 7px;border-radius:999px;font-size:.68rem;font-weight:900;text-transform:uppercase}.finance-task-priority.alta{background:#fde7e4;color:#a92c21}.finance-task-priority.média{background:#fff0c9;color:#7b5700}.finance-quick-actions{display:flex;align-items:center;gap:8px;overflow-x:auto;padding:12px 14px;border:1px solid #d3e2dd;border-radius:14px;background:#fff}.finance-quick-actions>span{flex:0 0 auto;color:#517069;font-size:.76rem;font-weight:900;text-transform:uppercase}.finance-quick-actions a{flex:0 0 auto;padding:8px 11px;border-radius:9px;background:#edf7f3;color:#116653;font-weight:800;text-decoration:none}.finance-budget-detail{margin-top:16px;border:1px solid #cbded8;border-radius:14px;background:#fff;overflow:hidden}.finance-budget-detail>summary{display:grid;gap:2px;padding:15px 17px;color:#126653;font-weight:900;cursor:pointer}.finance-budget-detail>summary small{color:#667a74;font-weight:500}.finance-budget-detail[open]>summary{border-bottom:1px solid #dbe7e3;background:#edf7f3}.finance-budget-detail>div{padding:16px}.finance-pagination{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-top:18px;padding:12px 14px;border:1px solid #d1e1dc;border-radius:13px;background:#fff}.finance-pagination>div{display:flex;align-items:center;gap:8px}.finance-pagination>div:first-child{display:grid;gap:2px}.finance-pagination small{color:#687a75}.finance-pagination [aria-disabled=true]{opacity:.48;pointer-events:none}.financial-filter-tools{display:flex;align-items:center;justify-content:flex-end;gap:7px;margin:-8px 0 16px}.financial-filter-tools>span{margin-right:auto;color:#687b75;font-size:.75rem;font-weight:800}.financial-filter-tools.saved::after{content:'Filtros salvos';padding:5px 8px;border-radius:8px;background:#dff3ea;color:#08614e;font-size:.72rem;font-weight:800}.expense-record-list{content-visibility:auto}.expense-record{contain-intrinsic-size:180px}.financial-panel>.panel-content{min-width:0}.financial-panel[open]>.panel-content{animation:finance-panel-in .08s ease-out}@keyframes finance-panel-in{from{opacity:.72;transform:translateY(-1px)}to{opacity:1;transform:none}}
@media(max-width:980px){.finance-health-grid{grid-template-columns:1fr}.finance-workspace-grid{grid-template-columns:1fr}.financial-tabs{top:64px}}
@media(max-width:640px){.finance-command-center{gap:12px}.finance-health-grid article,.finance-next-action,.finance-task-center{padding:14px}.finance-task-center header{align-items:stretch;flex-direction:column}.finance-task-counts{display:flex;align-items:center;justify-content:center;gap:5px}.finance-task-list>a{grid-template-columns:1fr auto}.finance-task-priority{grid-column:1/-1;width:max-content}.finance-pagination{align-items:stretch;flex-direction:column}.finance-pagination>div:last-child{display:grid;grid-template-columns:1fr 1fr}.finance-pagination .button{text-align:center}.financial-filter-tools{align-items:stretch;display:grid;grid-template-columns:1fr 1fr}.financial-filter-tools>span{grid-column:1/-1}.financial-filter-tools .button{width:100%;white-space:normal}.budget-overview .table-shell{overflow-x:auto}}

/* V112 — Usuários e acessos: visão gerencial, tarefas, filtros e formulário organizado */
.access-page-heading{align-items:flex-end}.access-summary-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:13px;margin:18px 0}.access-summary-card{display:grid;gap:5px;min-width:0;padding:17px;border:1px solid #d3e2dd;border-top:4px solid #7aa89b;border-radius:15px;background:#fff;color:#17324a;text-decoration:none;box-shadow:0 5px 16px rgba(11,77,62,.04)}.access-summary-card:hover{border-color:#7ab5a5;transform:translateY(-1px)}.access-summary-card span{color:#58726b;font-size:.78rem;font-weight:900;text-transform:uppercase;letter-spacing:.04em}.access-summary-card strong{font-size:1.55rem}.access-summary-card small{color:#697b76}.access-summary-success{border-top-color:#248267}.access-summary-muted{border-top-color:#929f9c}.access-summary-warning{border-top-color:#e1a238;background:#fffbf0}.access-summary-info{border-top-color:#4989bd;background:#f6faff}.access-command-grid{display:grid;grid-template-columns:minmax(280px,.8fr) minmax(420px,1.35fr);gap:14px;margin-bottom:20px}.access-next-action,.access-task-panel{padding:20px;border:1px solid #ccded8;border-radius:17px;background:#fff}.access-next-action{border-left:5px solid #25836c;background:linear-gradient(135deg,#f3faf7,#fff)}.access-next-action h2,.access-task-panel h2{margin:5px 0 8px;color:#102a46}.access-next-action p{margin:0 0 16px;color:#5b706b;line-height:1.45}.access-task-panel>header{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}.access-task-total{display:grid;place-items:center;min-width:54px;height:42px;border-radius:12px;background:#e6f4ef;color:#176b58;font-size:1.15rem;font-weight:900}.access-task-list{display:grid;gap:7px;margin-top:12px}.access-task{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;padding:10px;border:1px solid #e0e9e6;border-radius:11px;color:#17304b;text-decoration:none}.access-task:hover{border-color:#94c8b9;background:#f2f9f6}.access-task>span:nth-child(2){display:grid;gap:2px}.access-task small{color:#657872}.access-priority{padding:4px 7px;border-radius:999px;font-size:.68rem;font-weight:900;text-transform:uppercase}.access-priority-high{background:#fde7e4;color:#a92c21}.access-priority-medium{background:#fff0c9;color:#7b5700}.access-priority-low{background:#e6eef5;color:#3e607a}.access-directory{padding:20px;border:1px solid #cfdfda;border-radius:18px;background:#fff}.access-directory-title{display:flex;align-items:flex-end;justify-content:space-between;gap:16px}.access-directory-title h2{margin:3px 0 0}.access-quick-links{display:flex;gap:7px;overflow-x:auto}.access-quick-links a{flex:0 0 auto;padding:7px 10px;border-radius:9px;background:#edf7f3;color:#116653;font-size:.78rem;font-weight:800;text-decoration:none}.access-filter-card{display:grid;grid-template-columns:minmax(220px,1.3fr) repeat(5,minmax(120px,.62fr));gap:11px;margin:17px 0;padding:15px;border:1px solid #d4e3de;border-radius:14px;background:#f7faf9}.access-filter-card label{display:grid;gap:5px;color:#29483f;font-size:.77rem;font-weight:800}.access-filter-card input,.access-filter-card select{width:100%;min-height:44px;border:1px solid #bed3cc;border-radius:10px;background:#fff;padding:8px 11px;font:inherit;color:#17304b}.access-filter-actions{grid-column:1/-1;display:flex;justify-content:flex-end;gap:7px}.access-filter-card.filters-saved{box-shadow:inset 0 0 0 2px #79b9a7}.access-list{overflow:hidden;border:1px solid #d7e4e0;border-radius:14px}.access-list-head,.access-user-row{display:grid;grid-template-columns:minmax(230px,1.25fr) minmax(130px,.65fr) minmax(230px,1.3fr) minmax(120px,.65fr) minmax(90px,.48fr) minmax(130px,.65fr);align-items:center;gap:12px}.access-list-head{padding:11px 13px;background:#edf5f2;color:#48665e;font-size:.68rem;font-weight:900;letter-spacing:.055em;text-transform:uppercase}.access-user-row{padding:13px;border-top:1px solid #dce7e3;background:#fff}.access-user-row.is-inactive{background:#fafbfb;color:#687976}.access-user-identity{display:flex;align-items:center;gap:10px;min-width:0}.access-user-identity>span:last-child,.access-scope{display:grid;gap:3px;min-width:0}.access-user-identity strong,.access-scope strong{overflow:hidden;text-overflow:ellipsis}.access-user-identity small,.access-scope small,.access-user-row>div small{display:block;color:#677a75;font-size:.76rem;line-height:1.35}.access-avatar{display:grid;place-items:center;flex:0 0 38px;width:38px;height:38px;border-radius:12px;background:#dff1eb;color:#116653;font-weight:900}.access-inline-warning,.access-inline-info{width:max-content;padding:3px 7px;border-radius:999px;font-size:.67rem;font-weight:900}.access-inline-warning{background:#fff0c9;color:#7b5700}.access-inline-info{background:#e6eef8;color:#315d81}.access-row-action .button{width:100%;min-height:40px;padding:8px;text-align:center}.access-pagination{margin-top:16px}.access-empty{padding:24px}.button-small{min-height:36px;padding:7px 10px;font-size:.76rem}
.access-panel-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}.access-panel-heading h2{margin:5px 0 0}.access-count{display:grid;place-items:center;min-width:54px;height:42px;border-radius:12px;background:#e6f4ef;color:#176b58;font-size:1.15rem;font-weight:900}.access-user-form{display:grid;gap:12px;max-width:1180px;margin-inline:auto;padding:0;border:0;background:transparent;box-shadow:none}.access-form-section{overflow:hidden;border:1px solid #cfdfda;border-radius:15px;background:#fff}.access-form-section>summary{padding:16px 18px;cursor:pointer;list-style:none;background:#f8fbfa;color:#13344e}.access-form-section>summary::-webkit-details-marker{display:none}.access-form-section>summary>span{display:grid;gap:3px;padding-left:31px;position:relative}.access-form-section>summary>span:before{content:'+';position:absolute;left:0;top:50%;display:grid;place-items:center;width:23px;height:23px;transform:translateY(-50%);border-radius:7px;background:#e2f2ed;color:#176b58;font-weight:900}.access-form-section[open]>summary>span:before{content:'−';background:#287f6b;color:#fff}.access-form-section>summary small{color:#677c76;font-size:.76rem;font-weight:500}.access-form-section[open]>summary{border-bottom:1px solid #d8e5e1;background:#edf7f3}.access-form-section-body{padding:18px}.access-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.access-form-grid>label,.access-scope-toolbar label{display:grid;gap:6px;color:#173d36;font-weight:800}.access-form-grid input,.access-form-grid select,.access-scope-toolbar input{width:100%;min-height:50px;border:1px solid #b9d0c9;border-radius:11px;background:#fff;padding:10px 13px;font:inherit}.access-status-toggle{display:flex!important;align-items:center;gap:11px;padding:12px;border:1px solid #cfe0da;border-radius:11px;background:#f7fbf9}.access-status-toggle input{width:20px!important;min-height:auto!important}.access-status-toggle span{display:grid;gap:2px}.access-status-toggle small{color:#657872;font-weight:500}.access-permission-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.access-permission-card{display:flex;align-items:flex-start;gap:11px;padding:15px;border:1px solid #d2e1dc;border-radius:12px;background:#fbfdfc;cursor:pointer}.access-permission-card:has(input:checked){border-color:#7ebaa9;background:#eaf6f1}.access-permission-card input{flex:0 0 auto;width:19px;height:19px;margin-top:2px}.access-permission-card span{display:grid;gap:4px}.access-permission-card small{color:#60746e;line-height:1.4}.access-scope-toolbar{display:grid;grid-template-columns:minmax(240px,1fr) auto;align-items:end;gap:12px;margin-bottom:12px}.access-scope-toolbar>div{display:flex;gap:7px}.access-scope-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;max-height:330px;overflow-y:auto;padding:6px;border:1px solid #d5e3df;border-radius:12px;background:#f7faf9}.access-scope-option{display:flex;align-items:flex-start;gap:9px;padding:10px;border-radius:9px;background:#fff;cursor:pointer}.access-scope-option:hover{background:#edf7f3}.access-scope-option:has(input:checked){box-shadow:inset 0 0 0 1px #7bb8a7;background:#e5f4ef}.access-scope-option input{flex:0 0 auto;width:18px;height:18px;margin-top:2px}.access-scope-option span{display:grid;gap:2px}.access-scope-option small{color:#657872}.access-sticky-actions{position:sticky;bottom:10px;z-index:10;display:flex;justify-content:flex-end;gap:8px;padding:12px;border:1px solid #caded8;border-radius:13px;background:rgba(255,255,255,.95);box-shadow:0 8px 24px rgba(13,67,57,.12);backdrop-filter:blur(8px)}
@media(max-width:1180px){.access-summary-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.access-filter-card{grid-template-columns:repeat(3,minmax(0,1fr))}.access-list-head{display:none}.access-user-row{grid-template-columns:repeat(3,minmax(0,1fr));align-items:start}.access-user-identity{grid-column:1/-1}.access-user-row>div:before{content:attr(data-label);display:block;margin-bottom:4px;color:#6b807b;font-size:.64rem;font-weight:900;letter-spacing:.05em;text-transform:uppercase}.access-row-action{align-self:end}}
@media(max-width:800px){.access-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.access-command-grid{grid-template-columns:1fr}.access-filter-card{grid-template-columns:1fr 1fr}.access-form-grid,.access-permission-grid,.access-scope-list{grid-template-columns:1fr}.access-scope-toolbar{grid-template-columns:1fr}.access-scope-toolbar>div{overflow-x:auto}.access-directory-title{align-items:stretch;flex-direction:column}.access-user-row{grid-template-columns:1fr 1fr}.access-row-action{grid-column:1/-1}.access-row-action .button{width:auto}.access-page-heading{align-items:stretch;flex-direction:column}}
@media(max-width:520px){.access-summary-grid,.access-filter-card,.access-user-row{grid-template-columns:1fr}.access-filter-actions{display:grid;grid-template-columns:1fr 1fr}.access-filter-actions .button{width:100%}.access-task{grid-template-columns:1fr auto}.access-priority{grid-column:1/-1;width:max-content}.access-form-section-body{padding:13px}.access-sticky-actions{display:grid;grid-template-columns:1fr 1fr}.access-sticky-actions .button{width:100%;text-align:center}}

.access-task-marker{width:9px;height:9px;border-radius:50%;background:#6e968b}.access-task-high .access-task-marker{background:#bf3f31}.access-task-medium .access-task-marker{background:#d49a22}.access-task-low .access-task-marker{background:#5c7e98}

/* V114 — seleção de todos os escopos e diretório de usuários sem sobreposição. */
.access-scope-select-all{display:flex;align-items:flex-start;gap:10px;margin:0 0 10px;padding:12px 14px;border:1px solid #a9ccc1;border-radius:11px;background:#edf7f3;color:#123d35;cursor:pointer}
.access-scope-select-all:has(input:checked){border-color:#2f8b74;background:#dff2eb;box-shadow:inset 4px 0 0 #25836c}
.access-scope-select-all input{flex:0 0 auto;width:19px;height:19px;margin-top:2px;accent-color:#237f69}
.access-scope-select-all span{display:grid;gap:2px}.access-scope-select-all small{color:#60756f;font-weight:500;line-height:1.35}
.access-directory{container-name:access-directory;container-type:inline-size}
.access-list-head,.access-user-row{grid-template-columns:minmax(190px,1.25fr) minmax(112px,.65fr) minmax(180px,1.2fr) minmax(100px,.58fr) minmax(76px,.42fr) minmax(112px,.58fr)}
.access-list-head>span,.access-user-row>div{min-width:0}
.access-user-identity>span:last-child{overflow:hidden}
.access-user-identity strong,.access-user-identity small,.access-user-role strong,.access-scope strong,.access-scope small{max-width:100%;overflow-wrap:anywhere;word-break:normal}
.access-user-identity strong,.access-user-role strong{display:block;line-height:1.25}
.access-user-identity small{margin-top:2px}
@container access-directory (max-width:1050px){
    .access-list-head{display:none}
    .access-user-row{grid-template-columns:repeat(3,minmax(0,1fr));align-items:start}
    .access-user-identity{grid-column:1/-1}
    .access-user-row>div:before{content:attr(data-label);display:block;margin-bottom:4px;color:#6b807b;font-size:.64rem;font-weight:900;letter-spacing:.05em;text-transform:uppercase}
    .access-user-identity:before,.access-row-action:before{display:none!important}
    .access-row-action{align-self:end}
}
@container access-directory (max-width:700px){
    .access-user-row{grid-template-columns:1fr 1fr}
    .access-row-action{grid-column:1/-1}
    .access-row-action .button{width:auto}
}
@container access-directory (max-width:460px){
    .access-user-row{grid-template-columns:1fr}
    .access-user-identity,.access-row-action{grid-column:auto}
    .access-row-action .button{width:100%}
}

/* V116 — carteira, fluxo e análise da Gestão Institucional. */
.institutional-command-bar{display:grid;gap:18px}
.institutional-filters{display:grid;grid-template-columns:minmax(250px,1.4fr) minmax(190px,.8fr) minmax(210px,1fr);gap:14px;align-items:end}
.institutional-filters label,.institutional-workflow-panel label{display:grid;gap:7px;font-weight:800;color:#102d29}
.institutional-filters .form-actions{margin:0;grid-column:1/-1;justify-content:flex-start}
.institutional-dashboard-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(300px,.85fr);gap:18px;margin:18px 0}
.institutional-work-queue{display:grid;gap:8px}
.institutional-work-queue>a{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:13px 14px;border:1px solid #d4e4df;border-radius:12px;background:#fbfdfc;color:#102d29;text-decoration:none;transition:.18s ease}
.institutional-work-queue>a:hover{border-color:#6cae9c;background:#edf7f3;transform:translateY(-1px)}
.institutional-work-queue span{display:grid;gap:3px;min-width:0}.institutional-work-queue small{color:#667b75;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.institutional-work-queue b{display:grid;place-items:center;min-width:32px;height:32px;border-radius:999px;background:#fff0df;color:#a44900}
.institutional-portfolio-card{display:grid;gap:16px}
.institutional-progress-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.institutional-progress-grid>div,.institutional-readiness>div{display:grid;grid-template-columns:1fr auto;gap:7px 12px;padding:13px;border:1px solid #d6e5e0;border-radius:12px;background:#fbfdfc;min-width:0}
.institutional-progress-grid span,.institutional-readiness span{font-size:.78rem;font-weight:800;color:#5d716c}.institutional-progress-grid strong,.institutional-readiness strong{color:#103d35}
.institutional-progress-grid i,.institutional-readiness i{grid-column:1/-1;height:7px;border-radius:999px;background:#e2ece8;overflow:hidden}.institutional-progress-grid i b,.institutional-readiness i b{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#23856c,#69b89f)}
.institutional-readiness{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:16px 0}.institutional-readiness small{grid-column:1/-1;color:#657b75;line-height:1.35}
.institutional-workflow-panel{display:grid;grid-template-columns:minmax(240px,.8fr) minmax(360px,1.2fr);gap:22px;padding:20px;margin:18px 0;border:1px solid #a9d0c4;border-radius:16px;background:linear-gradient(135deg,#f4fbf8,#eaf6f2)}
.institutional-workflow-panel h2{margin:4px 0 6px}.institutional-workflow-panel p{margin:0;color:#5e746e}.institutional-workflow-panel form{display:grid;gap:12px}
.compact-review{margin-top:8px;padding:7px 9px;border:1px solid #c8ded7;border-radius:9px;background:#f6fbf9}.compact-review summary{cursor:pointer;font-weight:800;color:#176b58}.compact-review form{display:grid;gap:7px;margin-top:8px}.compact-review textarea{min-height:72px}
.notice.compact{margin:0;padding:11px 13px}.pagination-compact{margin-top:18px}.pagination-compact nav>div:first-child{display:none}.pagination-compact nav>div:last-child{display:flex;justify-content:space-between;align-items:center;gap:12px}.pagination-compact svg{width:18px;height:18px}
@media(max-width:1000px){.institutional-filters{grid-template-columns:1fr 1fr}.institutional-dashboard-grid,.institutional-workflow-panel{grid-template-columns:1fr}.institutional-readiness{grid-template-columns:1fr}.institutional-progress-grid{grid-template-columns:1fr}}
@media(max-width:650px){.institutional-filters{grid-template-columns:1fr}.institutional-filters .form-actions{display:grid;grid-template-columns:1fr 1fr}.institutional-dashboard-grid{display:block}.institutional-dashboard-grid>*+*{margin-top:16px}}
/* V117 — central operacional do módulo Execução. */
.execution-command-grid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(310px,.8fr);gap:18px;margin:18px 0}
.execution-command-grid>.panel{padding:20px}
.execution-progress-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.execution-progress-grid>div{display:grid;grid-template-columns:1fr auto;gap:7px 12px;padding:14px;border:1px solid #d6e5e0;border-radius:12px;background:#fbfdfc}
.execution-progress-grid span{font-size:.78rem;font-weight:800;color:#5d716c}
.execution-progress-grid strong{color:#103d35}
.execution-progress-grid i{grid-column:1/-1;height:7px;border-radius:999px;background:#e2ece8;overflow:hidden}
.execution-progress-grid i b{display:block;height:100%;background:linear-gradient(90deg,#23856c,#69b89f)}
.execution-progress-grid small{grid-column:1/-1;color:#607770}
.execution-quick-links{display:flex;flex-wrap:wrap;gap:8px;margin-top:15px}
.execution-quick-links a{padding:9px 12px;border-radius:10px;background:#eaf6f2;color:#12614f;font-weight:800;text-decoration:none}
.execution-work-queue{display:grid;gap:8px}
.execution-work-queue>a{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:12px 13px;border:1px solid #d4e4df;border-left:4px solid #d9a23b;border-radius:12px;background:#fbfdfc;text-decoration:none;color:#102d29}
.execution-work-queue>a.is-danger{border-left-color:#c53b32}
.execution-work-queue span{display:grid;gap:3px}
.execution-work-queue small{color:#657a74}
.execution-work-queue b{display:grid;place-items:center;min-width:32px;height:32px;border-radius:999px;background:#fff0df;color:#a44900}
.execution-next-deadline{margin:12px 0 0;padding:10px;border-radius:10px;background:#fff8e9;color:#75510b}
.execution-summary-grid{margin-top:0}
.execution-new-record{margin:18px 0}
.execution-filter-panel{position:sticky;top:82px;z-index:8;margin:18px 0;padding:16px;background:rgba(248,252,250,.97);backdrop-filter:blur(8px)}
.execution-filter-panel form{display:grid;grid-template-columns:minmax(240px,1.5fr) repeat(3,minmax(150px,.7fr));gap:12px;align-items:end}
.execution-filter-panel label{display:grid;gap:6px;font-weight:800}
.execution-filter-panel .form-actions{grid-column:1/-1;margin:0}
.execution-filter-result{display:flex;justify-content:space-between;align-items:center;gap:10px;margin:.4rem 0 0;color:#5f756f}
.execution-filter-result small{font-size:.78rem}
.execution-evidence-section>.evidence-hierarchy{margin-bottom:10px}
@media(max-width:1050px){.execution-command-grid{grid-template-columns:1fr}.execution-filter-panel form{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:680px){.execution-progress-grid,.execution-filter-panel form{grid-template-columns:1fr}.execution-filter-panel{position:static}.execution-filter-result{align-items:flex-start;flex-direction:column}}

/* Ordem de encaminhamento e atesto coletivo */
.collective-attestation-panel{border-color:#b7d6ce;background:linear-gradient(180deg,#f7fbfa 0,#fff 180px)}
.collective-attestation-list{border:1px solid #c9d9ea;border-radius:14px;overflow:visible;background:#fff}.collective-attestation-list table{table-layout:fixed}.collective-attestation-list thead th{padding:12px 14px;background:#eef4fb;color:#31577f;font-size:.76rem;letter-spacing:.04em}.collective-attestation-list tbody tr:nth-child(even){background:#f8fbff}.collective-attestation-list tbody tr:hover{background:#edf5ff}.collective-attestation-list td{padding:13px 14px;vertical-align:middle}.collective-attestation-list td small{display:block;margin-top:4px;color:#687b8f}.collective-attestation-list th:nth-child(1){width:16%}.collective-attestation-list th:nth-child(2){width:21%}.collective-attestation-list th:nth-child(3){width:12%}.collective-attestation-list th:nth-child(4){width:15%}.collective-attestation-list th:nth-child(5){width:16%}.collective-attestation-list th:nth-child(6){width:20%}.collective-number-cell strong,.collective-period-cell strong,.collective-total-cell strong{color:#102b4e}.collective-status-cell .badge{font-size:.78rem;padding:6px 10px}.collective-row-actions{display:flex;align-items:center;gap:8px;flex-wrap:nowrap}.collective-row-actions>.button,.collective-row-actions>details>summary{min-height:38px;padding:8px 12px;white-space:nowrap;justify-content:center;font-size:.78rem}.collective-cancel-action{position:relative;margin:0}.collective-cancel-action>summary{list-style:none;cursor:pointer}.collective-cancel-action>summary::-webkit-details-marker{display:none}.collective-cancel-action[open]>.compact-form{position:absolute;z-index:30;right:0;top:46px;width:300px;padding:14px;border:1px solid #efb5b0;border-radius:12px;background:#fff;box-shadow:0 14px 35px rgba(64,27,24,.18)}.collective-cancel-action textarea{min-height:82px}@media(max-width:1050px){.collective-attestation-list table{min-width:920px}.collective-row-actions{flex-wrap:wrap}}
.collective-attestation-form>summary{font-size:1.02rem;color:#126757}
.collective-expense-selector{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;max-height:360px;overflow:auto;padding:10px;border:1px solid var(--line);border-radius:12px;background:#fff}
.collective-expense-selector .check{display:flex;align-items:flex-start;gap:9px;padding:10px;border:1px solid #dce8e5;border-radius:10px;background:#f8fbfa}
.collective-expense-selector .check span,.collective-expense-selector .check small{display:block}.collective-expense-selector .check small{margin-top:3px;color:var(--muted)}
.collective-service-document{position:relative;max-width:900px;min-height:1120px;margin:auto;padding:38px 54px;background:#fff;border:1px solid var(--line);box-shadow:0 15px 40px rgba(18,40,62,.08);font-family:Arial,sans-serif;color:#17233a;font-size:13px;line-height:1.3}
.collective-letterhead{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:24px;padding-bottom:12px;margin-bottom:15px;border-bottom:3px solid #176c5b}.collective-letterhead img{width:120px;max-height:90px;object-fit:contain}.collective-letterhead div{display:grid;gap:3px}.collective-letterhead strong{font-size:18px;color:#174f45}.collective-letterhead span{font-size:12px;color:#3d5751}
.collective-service-document h1{text-align:center;font-size:21px;line-height:1.15;color:#174f45;margin:16px 0 3px}.collective-number{text-align:center;font-weight:800;margin:0 0 13px}
.collective-service-document table{width:100%;border-collapse:collapse}.collective-identification th,.collective-identification td,.collective-providers th,.collective-providers td,.collective-history th,.collective-history td{border:1px solid #46514f;padding:7px}.collective-identification th{width:18%;background:#eaf2f0;text-align:left;color:#174f45}.collective-table-title{background:#dceae7;text-align:center;color:#174f45;font-size:13px}.collective-providers{margin-top:10px}.collective-providers thead tr:last-child th{text-align:left;text-transform:uppercase;font-size:11px}.collective-providers td{vertical-align:top}.collective-providers td small{display:block;margin-top:3px;color:#5b6865}.collective-providers .number-column{width:5%}.collective-providers .amount-column{width:16%}.collective-total th{text-align:right;background:#eaf2f0}.collective-total td{font-weight:900}
.collective-clauses{margin-top:12px}.collective-clauses p{text-align:justify;text-justify:inter-word;margin:9px 0}.collective-status{font-size:14px}.collective-reservations,.collective-cancelled{padding:9px 12px;margin:9px 0;border:1px solid #b87b23;border-radius:7px;background:#fff7e8}.collective-cancelled{border-color:#b42318;background:#fff0ee;color:#8f1d15}.collective-validation{display:block;margin-top:22px;padding-top:8px;border-top:2px solid #176c5b;font-size:10px;text-align:justify}.collective-validation strong{color:#176c5b;margin-right:5px}.collective-history{margin-top:22px;font-size:10px;page-break-before:always;break-before:page}.collective-history h2{text-align:center;font-size:13px}.collective-history table{font-size:9px}
@media(max-width:800px){.collective-expense-selector{grid-template-columns:1fr}.collective-service-document{padding:24px 18px}.collective-letterhead{grid-template-columns:1fr;text-align:center}.collective-letterhead img{margin:auto}.collective-service-document{overflow-x:auto}}
@media print{.collective-service-document{max-width:none;min-height:0;padding:7mm 9mm;border:0;box-shadow:none;font-size:8.4pt;line-height:1.18}.collective-letterhead{grid-template-columns:26mm 1fr;gap:6mm;margin-bottom:3mm;padding-bottom:2mm}.collective-letterhead img{width:25mm;max-height:19mm}.collective-letterhead strong{font-size:10.5pt}.collective-letterhead span{font-size:7.2pt}.collective-service-document h1{font-size:13pt;margin:3mm 0 1mm}.collective-number{margin-bottom:2mm}.collective-identification th,.collective-identification td,.collective-providers th,.collective-providers td{padding:1.4mm}.collective-providers{margin-top:2mm}.collective-clauses{margin-top:2mm}.collective-clauses p{margin:1.7mm 0}.collective-validation{margin-top:3mm;padding-top:1.5mm;font-size:6.8pt}.collective-history{page-break-before:always;break-before:page;margin:0;font-size:8pt}.collective-history h2{font-size:10pt}.collective-history table{font-size:7.5pt}.collective-service-document table tr{break-inside:avoid}.collective-service-document h1,.collective-service-document h2{break-after:avoid}}
.service-catalog-list>div{display:flex;align-items:center;gap:10px;padding:8px 0;border-bottom:1px solid #deebe7}.service-catalog-list form{margin-left:auto}
.collective-provider-row>summary{cursor:pointer;list-style-position:inside}.collective-provider-row[open]>summary{padding-bottom:10px;border-bottom:1px solid #deebe7;margin-bottom:12px}.collective-provider-row>summary strong{flex:1}
.collective-provider-row{border:1px solid #c7ddd7;border-radius:14px;padding:14px;margin:0 0 12px;background:#f8fcfb}.provider-row-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}.provider-service-field{grid-column:span 2}.provider-total-check{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:14px 0}.provider-total-check>div{border:1px solid #c7ddd7;border-radius:12px;padding:12px;background:#fff}.provider-total-check span,.provider-total-check strong{display:block}.provider-total-check strong{font-size:1.12rem}.provider-total-check .is-balanced{color:#13745f}.collective-receipt-actions{display:flex;flex-wrap:wrap;gap:8px;margin:14px 0}.collective-receipt-actions a{border:1px solid #197663;border-radius:9px;padding:7px 10px}@media(max-width:760px){.provider-total-check{grid-template-columns:1fr}.provider-service-field{grid-column:auto}}
[data-provider-composition-form]{margin-top:14px;padding:20px;border:1px solid #c7ddd7;border-left:5px solid #2b826e;border-radius:16px;background:#f1f7f5;box-shadow:0 6px 18px rgba(22,91,75,.05)}[data-provider-composition-form] input:not([readonly]),[data-provider-composition-form] select,[data-provider-composition-form] textarea{background:#fff;border-color:#bdd5cf}[data-provider-composition-form] input[readonly]{background:#e6efed;border-color:#c5d7d3;color:#506760}[data-provider-composition-form] fieldset{background:rgba(255,255,255,.52);border-color:#c7ddd7;border-radius:14px}[data-provider-composition-form] legend{color:#155f50;font-weight:900}
.supplier-search{display:grid;gap:8px;margin:16px 0;padding:16px 18px;border:1px solid #c7ddd7;border-left:5px solid #2b826e;border-radius:14px;background:#f1f7f5}.supplier-search>label{color:#155f50;font-weight:900}.supplier-search-controls{display:grid;grid-template-columns:minmax(240px,1fr) auto auto;gap:9px}.supplier-search-controls input{background:#fff;border-color:#b9d3cc}.supplier-search>small{color:#58716a}@media(max-width:720px){.supplier-search-controls{grid-template-columns:1fr}.supplier-search-controls .button{width:100%}}
.other-entry-panels{display:grid;gap:12px;margin:16px 0}.other-entry-panel{margin:0;background:#f5faf8}.other-entry-panel>summary{padding:17px 19px}.other-entry-panel>.financial-subpanel-content{padding:0}.other-entry-panel>form{padding:18px;background:#f1f7f5}.other-entry-panel>form .wide-field{display:block;margin-top:12px}
.audit-period-create{margin:16px 0;border:1px solid #c7ddd7;border-left:5px solid #2b826e;border-radius:14px;background:#f1f7f5;overflow:hidden;box-shadow:0 6px 18px rgba(22,91,75,.05)}.audit-period-create>summary{padding:17px 19px;color:#155f50;font-weight:900}.audit-period-create[open]>summary{border-bottom:1px solid #c7ddd7;background:#e8f3ef}.audit-period-create>form{padding:18px}.audit-period-create input,.audit-period-create select,.audit-period-create textarea{background:#fff;border-color:#b9d3cc}
.audit-main-subpanel{margin:18px 0;border:1px solid #c7ddd7;border-radius:16px;background:#fff;overflow:hidden;box-shadow:0 7px 20px rgba(22,91,75,.05)}.audit-main-subpanel>summary{display:flex;align-items:center;justify-content:space-between;padding:19px 21px;color:#155f50;font-size:1.08rem;font-weight:900;cursor:pointer;list-style:none;background:#f1f7f5}.audit-main-subpanel>summary::-webkit-details-marker{display:none}.audit-main-subpanel>summary::after{content:'+';font-size:1.45rem}.audit-main-subpanel[open]>summary{border-bottom:1px solid #c7ddd7;background:#e6f2ee}.audit-main-subpanel[open]>summary::after{content:'−'}.audit-main-subpanel>.panel-content{padding:18px 20px}.audit-main-subpanel>.panel-content>p:first-child{margin-top:0;color:#58716a}
.audit-main-subpanel{border-color:var(--line);box-shadow:0 8px 24px rgba(18,40,62,.05)}.audit-main-subpanel>summary{padding:16px 18px;background:#fff;color:var(--primary-dark);font-size:1.05rem}.audit-main-subpanel>summary::after{font-size:1.3rem}.audit-main-subpanel[open]>summary{background:#eaf4f1;border-bottom-color:var(--line)}
.document-report-groups{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:18px 0}.document-report-subpanel{border:1px solid #c7ddd7;border-radius:14px;background:#fff;overflow:hidden}.document-report-subpanel>summary{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:16px 18px;color:#155f50;font-weight:900;cursor:pointer;list-style:none}.document-report-subpanel>summary::-webkit-details-marker{display:none}.document-report-subpanel>summary::after{content:'+';font-size:1.3rem}.document-report-subpanel[open]>summary{border-bottom:1px solid #c7ddd7;background:#eaf4f1}.document-report-subpanel[open]>summary::after{content:'−'}.document-report-subpanel>.panel-content{padding:16px}.document-report-subpanel .item-actions{display:grid;grid-template-columns:1fr;gap:9px}.document-report-subpanel .button{width:100%;justify-content:center}.audit-period-close{margin:18px 0;padding:16px 18px;border:1px solid #c7ddd7;border-left:5px solid #2b826e;border-radius:14px;background:#f1f7f5}.audit-period-close .inline-form{margin:0;border:0;padding:0;background:transparent}.audit-period-close small{margin-left:8px;color:#58716a}@media(max-width:800px){.document-report-groups{grid-template-columns:1fr}.audit-period-close .button{width:100%;margin-bottom:8px}.audit-period-close small{display:block;margin-left:0}}
.finance-budget-detail.finance-overview-query-panel{margin:14px 0;border:1px solid #b9d8d0;border-left:5px solid #23836b;border-radius:15px;box-shadow:0 5px 16px rgba(18,72,61,.045)}.finance-budget-detail.finance-overview-query-panel>summary{position:relative;padding:19px 52px 19px 19px;background:linear-gradient(135deg,#edf8f5,#f9fcfb);font-size:1.05rem}.finance-budget-detail.finance-overview-query-panel[open]>summary{background:#e5f4ef}.finance-budget-detail.finance-overview-query-panel>div{padding:16px;background:#fff}
.balance-hierarchy-grid{align-items:start}.balance-hierarchy-card{min-width:0;border:1px solid #c7ddd7;border-radius:15px;background:#fff;overflow:hidden}.balance-hierarchy-card>header{display:grid;gap:3px;padding:14px 17px;border-bottom:1px solid #c7ddd7;background:linear-gradient(135deg,#e2f2ed,#f5faf8)}.balance-hierarchy-card>header span{color:#58716a;font-size:.7rem;font-weight:800;letter-spacing:.07em;text-transform:uppercase}.balance-hierarchy-card>header strong{color:#125f50;font-size:1.12rem}.balance-hierarchy-card>.table-shell{margin:0;border:0;border-radius:0}@media(max-width:900px){.balance-hierarchy-grid{grid-template-columns:1fr}}
.finance-workspace-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start}.finance-next-action,.finance-task-center{padding:17px}.finance-recommended-actions{min-height:0}.finance-recommended-actions>header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.finance-recommended-actions h2{font-size:1.25rem}.finance-recommendation-count{flex:0 0 auto;padding:7px 9px;border-radius:10px;background:#e4f3ee;color:#176c59;font-size:.72rem;font-weight:900}.finance-recommendation-list{display:grid;gap:8px;margin-top:13px}.finance-recommendation-list>a{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;padding:11px;border:1px solid #d7e5e1;border-radius:11px;background:#fff;color:#17304b;text-decoration:none}.finance-recommendation-list>a:hover{border-color:#83bcae;background:#f4faf7}.finance-recommendation-list>a>span:nth-child(2){display:grid;gap:2px;min-width:0}.finance-recommendation-list small{color:#657872;line-height:1.3}.finance-recommendation-list b{color:#15715e;font-size:.75rem}.finance-flow-ok{display:grid;gap:4px;padding:14px;border-radius:11px;background:#edf8f4;color:#155f50}.finance-task-center .finance-task-list{max-height:390px;overflow:auto;padding-right:4px}.budget-overview{padding:22px;background:linear-gradient(180deg,#f8fcfa,#fff)}.budget-overview-heading{margin-bottom:15px}.budget-overview .budget-summary-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.budget-overview .budget-summary-grid article{position:relative;min-height:92px;padding:15px 17px;border:1px solid #d2e2dd;border-radius:13px;background:#fff}.budget-overview .budget-summary-grid article.primary{border-top:4px solid #23836b}.budget-overview .budget-summary-grid article.available{background:#edf8f4}.budget-overview .budget-summary-grid article.status{min-height:74px;padding-left:20px}.budget-overview .budget-summary-grid article.status::before{content:'';position:absolute;left:0;top:14px;bottom:14px;width:4px;border-radius:0 4px 4px 0;background:#5b9f8e}.budget-overview .budget-summary-grid article.attention::before{background:#e5a32d}.budget-overview .budget-summary-grid article.exhausted::before,.budget-overview .budget-summary-grid article.exceeded::before{background:#c7473a}.budget-overview .budget-summary-grid article span{font-size:.78rem}.budget-overview .budget-summary-grid article strong{margin-top:5px;font-size:1.22rem}@media(max-width:1050px){.budget-overview .budget-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:800px){.finance-workspace-grid,.budget-overview .budget-summary-grid{grid-template-columns:1fr}.finance-recommendation-list>a{grid-template-columns:auto minmax(0,1fr)}.finance-recommendation-list b{grid-column:2}}
.finance-workflow-divider{position:relative;display:flex;align-items:center;margin:22px 0 14px;padding:18px 22px;border:1px solid #c5d4e8;border-left:7px solid #486fa8;border-radius:15px;background:linear-gradient(110deg,#e9f0fb 0%,#f4f7fc 68%,#fff 100%);box-shadow:0 6px 18px rgba(44,75,120,.06)}.finance-workflow-divider::before{content:'';position:absolute;left:22px;right:22px;top:-12px;height:1px;background:linear-gradient(90deg,transparent,#adc0dd 18%,#adc0dd 82%,transparent)}.finance-workflow-divider h2{margin:0;color:#244f88;font-size:1.34rem;font-weight:950;letter-spacing:.045em;text-transform:uppercase}@media(max-width:700px){.finance-workflow-divider{padding:16px 18px}.finance-workflow-divider h2{font-size:1.12rem}}
.finance-section-banner{display:flex;align-items:center;margin:0 0 15px;padding:16px 20px;border:1px solid #c5d4e8;border-left:7px solid #486fa8;border-radius:14px;background:linear-gradient(110deg,#e9f0fb 0%,#f4f7fc 70%,#fff 100%);box-shadow:0 5px 15px rgba(44,75,120,.05);scroll-margin-top:230px}.finance-section-banner h2{margin:0;color:#244f88;font-size:1.25rem;font-weight:950;letter-spacing:.045em;text-transform:uppercase}.finance-overview-hero>.finance-section-banner{margin:-1px -1px 17px}.finance-command-center>.finance-section-banner{margin:0 0 15px}.budget-overview>.finance-section-banner{margin:-22px -22px 18px;border-top:0;border-right:0;border-radius:0 0 14px 0}.finance-overview-switcher>.finance-section-banner{margin:0 0 10px}.finance-overview-heading>div>h2,.budget-overview-heading>h2{margin-top:0}@media(max-width:700px){.finance-section-banner{padding:14px 17px;scroll-margin-top:205px}.finance-section-banner h2{font-size:1.08rem}}
.finance-overview-switcher{margin:18px 0 22px}.finance-overview-switcher-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;padding:9px;border:1px solid #c8d7e8;border-radius:16px;background:#eef3fa}.finance-overview-switcher-button{display:grid;gap:4px;min-width:0;padding:14px 16px;border:1px solid #c8d7e8;border-radius:12px;background:#fff;color:#244f88;text-align:left;cursor:pointer;transition:.16s ease}.finance-overview-switcher-button:hover{border-color:#819fc6;background:#f8faff}.finance-overview-switcher-button.is-active{border-color:#486fa8;background:#dfe9f7;box-shadow:inset 0 -4px 0 #486fa8}.finance-overview-switcher-button strong{font-size:.9rem;line-height:1.25}.finance-overview-switcher-button small{color:#66778d;font-size:.69rem;line-height:1.3}.finance-overview-switcher-content{margin-top:10px}.finance-overview-switcher-content>details{width:100%;margin:0!important}.finance-overview-switcher-content>details:not([open]){display:none}.finance-overview-switcher-content>details>summary{display:none!important}.finance-overview-switcher-content>.finance-overview-query-panel,.finance-overview-switcher-content>.finance-overview-subpanel{border:1px solid #c8d7e8;border-left:5px solid #486fa8;border-radius:15px;background:#fff;box-shadow:0 6px 18px rgba(44,75,120,.05)}.finance-overview-switcher-content>.finance-overview-query-panel>div,.finance-overview-switcher-content>.finance-overview-subpanel>.finance-overview-subpanel-body{padding:18px}@media(max-width:800px){.finance-overview-switcher-tabs{grid-template-columns:1fr}.finance-overview-switcher-button{padding:12px 14px}}
.financial-module-nav{position:sticky;top:var(--app-header-height,72px);z-index:24;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;margin:0 0 18px;padding:9px;border:1px solid #c9dcd6;border-radius:15px;background:rgba(247,251,249,.96);box-shadow:0 7px 20px rgba(18,72,61,.06);backdrop-filter:blur(9px)}.financial-module-nav>a{display:grid;gap:3px;min-width:0;padding:12px 13px;border:1px solid #c9dcd6;border-radius:11px;background:#fff;color:#155f50;text-decoration:none;transition:.16s ease}.financial-module-nav>a:hover{border-color:#7eb4a6;background:#f0f8f5}.financial-module-nav>a.is-active{border-color:#247e69;background:#247e69;color:#fff;box-shadow:0 5px 13px rgba(28,111,91,.18)}.financial-module-nav>a span{font-size:.82rem;font-weight:900;line-height:1.2}.financial-module-nav>a small{color:#657872;font-size:.65rem;line-height:1.25}.financial-module-nav>a.is-active small{color:#e2f3ee}.financial-overview-static{display:grid;gap:18px}.financial-overview-static>.finance-overview-hero,.financial-overview-static>.finance-command-center,.financial-overview-static>.budget-overview,.financial-overview-static>.finance-overview-switcher{margin-top:0}@media(max-width:950px){.financial-module-nav{display:flex;overflow-x:auto}.financial-module-nav>a{flex:0 0 185px}}@media(max-width:600px){.financial-module-nav{top:64px;margin-left:-4px;margin-right:-4px;padding:7px}.financial-module-nav>a{flex-basis:165px;padding:10px 11px}}
.financial-standard-heading{align-items:center;padding-bottom:4px}.financial-standard-heading>div:first-child{max-width:920px}.financial-standard-heading h1{margin:.25rem 0 .45rem;line-height:1.06}.financial-standard-heading p{max-width:850px;color:#58716a}.financial-standard-heading>.item-actions{align-self:center}.financial-page-nav{position:sticky;top:calc(var(--app-header-height,72px) + 78px);z-index:23;display:flex;align-items:center;gap:9px;overflow-x:auto;margin:-7px 0 18px;padding:11px 13px;border:1px solid #c2d1e3;border-radius:14px;background:rgba(244,247,251,.97);box-shadow:0 6px 16px rgba(44,75,120,.08);backdrop-filter:blur(9px);scroll-margin-top:230px}.financial-page-nav>span{flex:0 0 auto;margin-right:5px;color:#536b89;font-size:.74rem;font-weight:950;letter-spacing:.065em;text-transform:uppercase}.financial-page-nav>a,.financial-page-nav>button{flex:0 0 auto;padding:10px 14px;border:1px solid #bdcde0;border-radius:10px;background:#fff;color:#315a8d;font-family:inherit;font-size:.82rem;font-weight:900;text-decoration:none;cursor:pointer;transition:.16s ease}.financial-page-nav>a:hover,.financial-page-nav>button:hover{border-color:#7797bd;background:#e7eef8}.financial-page-nav>a.is-active,.financial-page-nav>button.is-active{border-color:#486fa8;background:#486fa8;color:#fff;box-shadow:0 4px 11px rgba(45,82,132,.2)}.financial-report-local-nav{margin-top:-5px}.financial-accordion>.financial-panel,.financial-subpanel,.audit-main-subpanel,#visao,#periodos-auditoria,#periodo-selecionado,#espelho-despesas-auditoria,#pendencias-auditoria,#arquivos-auditoria,#filtros-relatorios,#relatorios-disponiveis,#relatorio-selecionado,.finance-command-center,.budget-overview,.finance-overview-switcher{scroll-margin-top:230px}@media(max-width:700px){.financial-standard-heading{align-items:stretch}.financial-standard-heading>.item-actions{align-self:stretch}.financial-standard-heading>.item-actions .button{width:100%}.financial-page-nav{top:calc(64px + 70px);margin-top:-4px;padding:9px;scroll-margin-top:205px}.financial-page-nav>a,.financial-page-nav>button{padding:9px 12px;font-size:.78rem}.financial-accordion>.financial-panel,.financial-subpanel,.audit-main-subpanel,#visao,#periodos-auditoria,#periodo-selecionado,#espelho-despesas-auditoria,#pendencias-auditoria,#arquivos-auditoria,#filtros-relatorios,#relatorios-disponiveis,#relatorio-selecionado,.finance-command-center,.budget-overview,.finance-overview-switcher{scroll-margin-top:205px}}
.bank-audit-overview-summary{grid-template-columns:repeat(4,minmax(0,1fr))}.audit-movement-page-search{display:grid;grid-template-columns:minmax(190px,260px) auto;align-items:center;gap:7px;flex:1 0 270px;min-width:270px;margin-left:8px;padding:6px;border:1px solid #b8cce2;border-radius:13px;background:linear-gradient(180deg,#fff 0%,#f1f6fc 100%);box-shadow:0 5px 12px rgba(30,61,94,.16),inset 0 1px 0 rgba(255,255,255,.95);transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease}.audit-movement-page-search:focus-within{border-color:#537db5;box-shadow:0 7px 16px rgba(30,61,94,.2),0 0 0 3px rgba(83,125,181,.12);transform:translateY(-1px)}.audit-movement-page-search input{width:100%;min-height:40px;padding:8px 34px 8px 12px;border:1px solid #9fb7d3;border-radius:9px;background:#fff;color:#17304b;font:inherit;font-size:.82rem;box-shadow:inset 0 1px 3px rgba(25,53,82,.08)}.audit-movement-page-search input:focus{border-color:#486fa8;outline:none}.audit-movement-page-search small{min-width:76px;color:#48637f;font-size:.7rem;font-weight:800;white-space:nowrap}.audit-movement-search-empty{margin-bottom:12px;border-color:#e7bf64;background:#fff9e9;color:#755714}@media(max-width:1100px){.bank-audit-overview-summary{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:700px){.bank-audit-overview-summary{grid-template-columns:minmax(0,1fr)}.audit-movement-page-search{grid-template-columns:minmax(190px,1fr) auto;flex-basis:100%;min-width:250px;margin-left:0}}
.audit-movement-page-search{position:relative;display:flex;flex:0 0 285px;min-width:285px;max-width:285px;gap:0;margin-left:3px;padding:4px;border-radius:11px;box-shadow:0 3px 8px rgba(30,61,94,.14),inset 0 1px 0 #fff}.audit-movement-page-search>.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}.audit-movement-page-search input{min-width:0;min-height:36px;padding:7px 10px}.audit-movement-page-search small{position:absolute;right:9px;bottom:-17px;min-width:0;padding:2px 5px;border-radius:5px;background:#eef4fb;color:#315a8d}.audit-movement-page-search small:empty{display:none}@media(max-width:700px){.audit-movement-page-search{flex:0 0 250px;min-width:250px;max-width:250px;margin-left:2px}}
.audit-movement-page-search{flex:0 0 390px;min-width:390px;max-width:390px;align-items:center;gap:8px;border:2px solid #315f99;background:linear-gradient(180deg,#f8fbff 0%,#eaf2fb 100%);box-shadow:0 4px 10px rgba(35,73,122,.2),inset 0 1px 0 #fff}.audit-movement-page-search input{flex:1 1 auto;border:1px solid #406fa9}.audit-movement-page-search small{position:static;display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;min-width:82px;padding:5px 7px;border:1px solid #b8cce4;border-radius:7px;background:#fff;color:#244f86;font-size:.72rem;text-align:center}.audit-movement-page-search small:empty{display:none}@media(max-width:700px){.audit-movement-page-search{flex:0 0 330px;min-width:330px;max-width:330px}.audit-movement-page-search small{min-width:72px;font-size:.68rem}}
.audit-movement-page-search:focus-within{border-color:#173f73;box-shadow:0 6px 14px rgba(27,65,113,.24),0 0 0 3px rgba(49,95,153,.14)}.audit-movement-page-search input:focus{border-color:#173f73}

/* Menu de Módulos — Entrega 1 */
.module-hub-heading{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:16px;padding:8px 4px}.module-hub-heading h1{margin:.25rem 0 .35rem;font-size:clamp(2rem,4vw,3rem);line-height:1.05;color:#102544}.module-hub-heading p{margin:0;color:#607083}.module-hub-project{display:flex;align-items:center;gap:13px;margin-bottom:16px;padding:14px 17px;border:1px solid #bfd5e7;border-left:5px solid #3e72b4;border-radius:14px;background:linear-gradient(135deg,#f8fbff,#edf4fc);box-shadow:0 5px 15px rgba(49,89,139,.09)}.module-hub-project>.nav-icon{width:27px;height:27px;color:#356da9}.module-hub-project>div{display:grid;gap:2px}.module-hub-project span{color:#5a7190;font-size:.7rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.module-hub-project strong{color:#17375f;font-size:1.05rem}.module-hub-project small{color:#64748b}.module-hub-project-empty{border-left-color:#d59a27;background:linear-gradient(135deg,#fffdf7,#fff7e5)}.module-hub-toolbar{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:10px;padding:13px 15px;border:1px solid #d7dfec;border-radius:15px;background:#fff;box-shadow:0 7px 20px rgba(35,61,97,.08)}.module-hub-total{display:flex;align-items:center;gap:8px;color:#40546e}.module-hub-total>.nav-icon{width:21px;height:21px;color:#4c65d9}.module-hub-total strong{font-size:1.15rem;color:#182b49}.module-hub-total span{font-size:.83rem}.module-hub-search{display:flex;align-items:center;gap:9px;width:min(100%,390px);padding:0 13px;border:1px solid #b8c8dd;border-radius:12px;background:#f9fbfe;transition:.16s ease}.module-hub-search:focus-within{border-color:#4a6fba;box-shadow:0 0 0 3px rgba(74,111,186,.13)}.module-hub-search>.nav-icon{flex:0 0 auto;width:19px;height:19px;color:#6b7e98}.module-hub-search input{width:100%;min-height:43px;padding:0;border:0;background:transparent;color:#18304f;font:inherit}.module-hub-search input:focus{outline:0}.module-hub-filter-result{margin:12px 3px 9px;color:#6a7890;font-size:.78rem;font-weight:700}.module-hub-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px}.module-hub-card{position:relative;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:13px;min-height:125px;padding:18px;border:1px solid #d9e2ee;border-radius:17px;background:#fff;color:#1b2d49;text-decoration:none;box-shadow:0 8px 20px rgba(31,54,89,.07);transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease}.module-hub-card:hover,.module-hub-card:focus-visible{transform:translateY(-3px);border-color:#8fa9ca;box-shadow:0 12px 25px rgba(31,54,89,.13);outline:none}.module-hub-icon{display:grid;place-items:center;width:46px;height:46px;border-radius:13px;background:#eaf0ff;color:#4c58d8}.module-hub-icon>.nav-icon{width:24px;height:24px}.module-hub-card-copy{display:grid;gap:5px;min-width:0}.module-hub-card-copy strong{color:#182b49;font-size:.95rem;line-height:1.2}.module-hub-card-copy small{color:#69788e;font-size:.75rem;line-height:1.35}.module-hub-enter{color:#71849e;font-size:1.6rem;font-weight:400}.module-hub-card-financeiro .module-hub-icon,.module-hub-card-auditoria .module-hub-icon{background:#e6f4ef;color:#18735f}.module-hub-card-execucao .module-hub-icon,.module-hub-card-planejamento .module-hub-icon{background:#fff1d9;color:#b36a08}.module-hub-card-institucional .module-hub-icon,.module-hub-card-cadastros .module-hub-icon{background:#e8f3fb;color:#32729e}.module-hub-card-controle .module-hub-icon,.module-hub-card-projecoes .module-hub-icon{background:#f0eaff;color:#7651b6}.module-hub-card-administracao .module-hub-icon{background:#f0f2f5;color:#526070}.module-hub-empty{margin-top:15px}.module-hub-card[hidden]{display:none!important}@media(max-width:1200px){.module-hub-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:900px){.module-hub-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:650px){.module-hub-heading,.module-hub-toolbar{align-items:stretch;flex-direction:column}.module-hub-heading .button{width:100%}.module-hub-search{width:100%}.module-hub-grid{grid-template-columns:1fr}.module-hub-card{min-height:105px}}

/* Menu de Módulos — Entrega 2 */
.module-hub-toolbar{justify-content:flex-start;gap:11px}.module-hub-view-switcher{display:flex;align-items:center;gap:3px;padding:4px;border-radius:11px;background:#e9eef6}.module-hub-view-switcher button,.module-hub-favorites-filter{min-height:36px;padding:7px 10px;border:1px solid transparent;border-radius:8px;background:transparent;color:#5b6d85;font:inherit;font-size:.76rem;font-weight:850;cursor:pointer}.module-hub-view-switcher button:hover,.module-hub-view-switcher button.is-active,.module-hub-favorites-filter:hover,.module-hub-favorites-filter.is-active{border-color:#9fb5d0;background:#fff;color:#315a91;box-shadow:0 2px 7px rgba(37,68,111,.11)}.module-hub-favorites-filter{display:flex;align-items:center;gap:5px;border-color:#d5deea;background:#fbfcfe}.module-hub-favorites-filter>span:first-child{color:#cf8700;font-size:1.05rem}.module-hub-search{margin-left:auto}.module-hub-history{display:grid;grid-template-columns:minmax(230px,.7fr) minmax(0,1.3fr);gap:12px;margin:14px 0}.module-hub-last,.module-hub-recent{display:flex;align-items:center;gap:10px;min-height:54px;padding:10px 13px;border:1px solid #d9e2ee;border-radius:13px;background:#fff;box-shadow:0 4px 12px rgba(31,54,89,.055)}.module-hub-last>span,.module-hub-recent>span{flex:0 0 auto;color:#718097;font-size:.68rem;font-weight:900;letter-spacing:.045em;text-transform:uppercase}.module-hub-last>a,.module-hub-recent a{padding:7px 10px;border-radius:9px;background:#f0f4fa;color:#294f80;font-size:.78rem;font-weight:800;text-decoration:none}.module-hub-last>a:hover,.module-hub-recent a:hover{background:#e1eaf6}.module-hub-recent>div{display:flex;align-items:center;gap:6px;min-width:0;overflow-x:auto}.module-hub-card{display:block;padding:0}.module-hub-card-link{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:13px;min-height:123px;padding:18px 46px 18px 18px;color:inherit;text-decoration:none}.module-hub-card:hover,.module-hub-card:focus-within{transform:translateY(-3px);border-color:#8fa9ca;box-shadow:0 12px 25px rgba(31,54,89,.13)}.module-hub-favorite{position:absolute;top:9px;right:9px;z-index:2;display:grid;place-items:center;width:31px;height:31px;padding:0;border:1px solid transparent;border-radius:9px;background:transparent;color:#9aa7b8;font-size:1.25rem;cursor:pointer}.module-hub-favorite:hover,.module-hub-card.is-favorite .module-hub-favorite{border-color:#f0ce85;background:#fff8e5;color:#c67f00}.module-hub-card.is-favorite{border-color:#e5c373}.module-hub-grid[data-view="panel"]{grid-template-columns:repeat(2,minmax(0,1fr))}.module-hub-grid[data-view="panel"] .module-hub-card-link{min-height:145px}.module-hub-grid[data-view="panel"] .module-hub-icon{width:58px;height:58px}.module-hub-grid[data-view="panel"] .module-hub-card-copy strong{font-size:1.08rem}.module-hub-grid[data-view="list"]{grid-template-columns:1fr}.module-hub-grid[data-view="list"] .module-hub-card-link{min-height:72px;padding-block:10px}.module-hub-grid[data-view="list"] .module-hub-icon{width:39px;height:39px}.module-hub-grid[data-view="list"] .module-hub-card-copy{grid-template-columns:minmax(190px,.45fr) minmax(0,1fr);align-items:center}.module-hub-grid[data-view="compact"]{grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}.module-hub-grid[data-view="compact"] .module-hub-card-link{display:flex;flex-direction:column;justify-content:center;min-height:110px;padding:14px 32px 14px 14px;text-align:center}.module-hub-grid[data-view="compact"] .module-hub-icon{width:38px;height:38px}.module-hub-grid[data-view="compact"] .module-hub-card-copy small,.module-hub-grid[data-view="compact"] .module-hub-enter{display:none}.module-hub-grid[data-view="compact"] .module-hub-card-copy strong{font-size:.78rem}.module-hub-grid[data-view="compact"] .module-hub-favorite{top:5px;right:5px;width:27px;height:27px}@media(max-width:1200px){.module-hub-toolbar{flex-wrap:wrap}.module-hub-search{width:100%;max-width:none;margin-left:0}.module-hub-grid[data-view="compact"]{grid-template-columns:repeat(4,minmax(0,1fr))}}@media(max-width:900px){.module-hub-history{grid-template-columns:1fr}.module-hub-grid[data-view="compact"]{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:650px){.module-hub-view-switcher{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.module-hub-favorites-filter{justify-content:center}.module-hub-grid[data-view="panel"],.module-hub-grid[data-view="compact"]{grid-template-columns:1fr}.module-hub-grid[data-view="list"] .module-hub-card-copy{display:grid;grid-template-columns:1fr}.module-hub-grid[data-view="compact"] .module-hub-card-link{display:grid;grid-template-columns:auto minmax(0,1fr) auto;min-height:82px;text-align:left}.module-hub-grid[data-view="compact"] .module-hub-card-copy small{display:block}}
.audit-divergence-breakdown{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:0 0 12px;padding:10px;border:1px solid #dae5e2;border-radius:11px;background:#f7faf9}.audit-divergence-breakdown span{padding:7px 9px;border-radius:8px;background:#fff;color:#4f6760;font-size:.76rem}.audit-divergence-breakdown b{color:#16334b;font-size:.92rem}@media(max-width:760px){.audit-divergence-breakdown{grid-template-columns:1fr}}
.financial-heading-actions{display:flex;align-items:center;justify-content:flex-end;gap:10px;flex-wrap:wrap}.financial-heading-actions .financial-heading-back{display:inline-flex;align-items:center;gap:7px}.financial-heading-actions .financial-heading-back span[aria-hidden="true"]{font-size:1.12rem}@media(max-width:700px){.financial-heading-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.financial-heading-actions .button{width:100%}}
.financial-breadcrumb{margin-bottom:9px}.financial-standard-heading{gap:16px;margin-bottom:14px;padding:0}.financial-standard-heading h1{margin:.12rem 0 .3rem;font-size:clamp(1.9rem,3vw,2.75rem)}.financial-standard-heading p{margin:0;line-height:1.4}.financial-standard-heading .eyebrow{line-height:1.2}.financial-standard-heading .button{min-height:42px;padding:9px 15px}@media(max-width:700px){.financial-breadcrumb{margin-bottom:7px}.financial-standard-heading{gap:10px;margin-bottom:11px}.financial-standard-heading h1{font-size:clamp(1.75rem,8vw,2.25rem)}}

/* V302 — padrão operacional e navegação rápida do módulo Execução. */
.execution-module-nav{position:sticky;top:var(--app-header-height,72px);z-index:24;display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:7px;margin:0 0 18px;padding:8px;border:1px solid #c7d9e9;border-radius:15px;background:rgba(246,249,253,.97);box-shadow:0 7px 20px rgba(39,74,114,.07);backdrop-filter:blur(9px)}
.execution-module-nav>a{display:grid;gap:3px;min-width:0;padding:11px 12px;border:1px solid #c7d9e9;border-radius:11px;background:#fff;color:#285984;text-decoration:none;transition:.16s ease}
.execution-module-nav>a:hover{border-color:#7b9fc0;background:#eef5fb;transform:translateY(-1px)}
.execution-module-nav>a.active{border-color:#3f6fa7;background:#3f6fa7;color:#fff;box-shadow:0 5px 13px rgba(45,86,133,.2)}
.execution-module-nav strong{font-size:.76rem;font-weight:950;line-height:1.2}.execution-module-nav small{color:#667a8e;font-size:.61rem;line-height:1.25}.execution-module-nav>a.active small{color:#e5eef9}
.execution-breadcrumb{margin-bottom:9px}.execution-standard-heading{align-items:center;gap:16px;margin-bottom:14px;padding:0}.execution-standard-heading>div:first-child{max-width:930px}.execution-standard-heading h1{margin:.12rem 0 .3rem;font-size:clamp(1.9rem,3vw,2.75rem);line-height:1.06}.execution-standard-heading p{max-width:860px;margin:0;color:#587080;line-height:1.4}.execution-standard-heading .eyebrow{line-height:1.2}.execution-standard-heading>.item-actions{align-self:center}.execution-standard-heading .button{min-height:42px;padding:9px 15px}
.execution-page-nav{position:sticky;top:calc(var(--app-header-height,72px) + 76px);z-index:23;display:flex;align-items:center;gap:9px;overflow-x:auto;margin:-7px 0 18px;padding:10px 12px;border:1px solid #c7d9e9;border-radius:14px;background:rgba(244,248,252,.97);box-shadow:0 6px 16px rgba(39,74,114,.08);backdrop-filter:blur(9px)}
.execution-page-nav>span{flex:0 0 auto;margin-right:5px;color:#536d86;font-size:.72rem;font-weight:950;letter-spacing:.065em;text-transform:uppercase}.execution-page-nav>a{flex:0 0 auto;padding:9px 13px;border:1px solid #bfd0e0;border-radius:10px;background:#fff;color:#315f8a;font-size:.8rem;font-weight:900;text-decoration:none}.execution-page-nav>a:hover,.execution-page-nav>a.active{border-color:#3f6fa7;background:#3f6fa7;color:#fff}
.execution-heading-back{display:inline-flex!important;align-items:center;gap:7px}
@media(max-width:1180px){.execution-module-nav{display:flex;overflow-x:auto}.execution-module-nav>a{flex:0 0 170px}}
@media(max-width:700px){.execution-module-nav{top:64px;margin-left:-4px;margin-right:-4px;padding:7px}.execution-module-nav>a{flex-basis:155px;padding:10px}.execution-breadcrumb{margin-bottom:7px}.execution-standard-heading{align-items:stretch;gap:10px;margin-bottom:11px}.execution-standard-heading h1{font-size:clamp(1.75rem,8vw,2.25rem)}.execution-standard-heading>.item-actions{align-self:stretch}.execution-standard-heading>.item-actions .button{width:100%}.execution-page-nav{top:calc(64px + 68px);margin-top:-4px;padding:8px}.execution-page-nav>a{padding:8px 11px;font-size:.76rem}}

/* V303 — filtro do período sempre visível no Dashboard da Execução. */
.execution-module-nav+.execution-dashboard-filter{top:calc(var(--app-header-height,72px) + 76px);z-index:23;margin-top:-8px;border-color:#b9cfe2;box-shadow:0 8px 22px rgba(39,74,114,.1)}
@media(max-width:1180px){.execution-module-nav+.execution-dashboard-filter{top:calc(var(--app-header-height,72px) + 72px)}}
@media(max-width:720px){.execution-module-nav+.execution-dashboard-filter{position:sticky;top:calc(64px + 67px);z-index:23;grid-template-columns:repeat(2,minmax(0,1fr));max-height:52vh;overflow:auto;padding:10px;margin-top:-8px}.execution-module-nav+.execution-dashboard-filter label:first-child,.execution-module-nav+.execution-dashboard-filter .execution-period-chip{grid-column:1/-1}.execution-module-nav+.execution-dashboard-filter .button{width:100%}}

/* V304 — central visual de relatórios da Execução. */
.execution-report-filter{display:grid;grid-template-columns:repeat(2,minmax(190px,1fr)) auto auto;align-items:end;gap:11px;padding:16px;border:1px solid #bfd2e3;border-left:5px solid #4b7db2;border-radius:14px;background:linear-gradient(135deg,#edf4fb,#fafcfe);box-shadow:0 5px 16px rgba(39,74,114,.07)}.execution-report-filter label{display:grid;gap:6px;font-weight:850;color:#294f73}.execution-report-filter input{width:100%}
.execution-report-selector{position:sticky;top:calc(var(--app-header-height,72px) + 76px);z-index:22;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;margin:14px 0 18px;padding:10px;border:1px solid #c4d5e5;border-radius:14px;background:rgba(244,248,252,.97);box-shadow:0 6px 16px rgba(39,74,114,.08);backdrop-filter:blur(9px)}
.execution-report-selector-item{display:grid;align-content:center;gap:4px;min-height:70px;padding:11px 13px;border:1px solid #a8c1d8;border-radius:11px;background:#fff;color:#285984;text-align:center;text-decoration:none;transition:.16s ease}.execution-report-selector-item strong{font-size:.9rem;font-weight:950}.execution-report-selector-item small{color:#61778c;font-size:.68rem;line-height:1.25}.execution-report-selector-item:hover{border-color:#4b7db2;background:#eef5fb;transform:translateY(-1px)}.execution-report-selector-item.active{border-color:#3f6fa7;background:#3f6fa7;color:#fff;box-shadow:0 7px 16px rgba(45,86,133,.2)}.execution-report-selector-item.active small{color:#e5eef9}
.execution-report-active-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin:18px 0;padding:16px;border:1px solid #bfd2e3;border-radius:12px;background:#f0f6fb}.execution-report-active-heading span{color:#356b9c;font-size:.72rem;font-weight:950;letter-spacing:.06em;text-transform:uppercase}.execution-report-active-heading h2{margin:4px 0 6px;text-align:left}.execution-report-export-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}.execution-report-table-meta{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:15px 0 8px;padding:10px 12px;border-radius:9px;background:#eaf2f9;color:#36556f}.execution-report-preview-table{max-height:none}.execution-report-preview-table table{font-size:.76rem}.execution-report-preview-table th{position:sticky;top:0;z-index:2;background:#dce9f4}.execution-report-preview-table td{vertical-align:top}.execution-lgpd-note{margin-top:14px;padding:12px 14px;border-left:5px solid #4b7db2;border-radius:8px;background:#edf4fb;color:#425e76}.execution-report-closing{display:grid;gap:12px;margin-top:18px}.execution-report-closing>details{margin:0;padding:0;overflow:hidden}.execution-report-closing>details>summary{padding:16px 18px;color:#285984;font-weight:950;cursor:pointer}.execution-report-closing>details>form,.execution-report-closing>details>.table-shell{margin:0 16px 16px}.execution-report-local-nav{scroll-margin-top:220px}
@media(max-width:1000px){.execution-report-selector{position:static;grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:720px){.execution-report-filter,.execution-report-selector{grid-template-columns:1fr}.execution-report-active-heading{display:grid}.execution-report-export-actions,.execution-report-export-actions .button{width:100%}.execution-report-table-meta{align-items:flex-start;flex-direction:column}}
/* Calculadora de Prestação de Serviços — módulo informativo isolado */
.service-calculator-heading{align-items:flex-start}.service-calculator-guard{display:flex;gap:.45rem;flex-direction:column;border-left:5px solid #d99518;background:#fff8e8;margin-bottom:1rem}.service-calculator-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.8rem;margin:1rem 0}.service-calculator-metrics article{border:1px solid #cfe1dc;border-radius:16px;background:#fff;padding:1rem;display:grid;gap:.35rem}.service-calculator-metrics span{color:#536879;font-size:.86rem}.service-calculator-metrics strong{color:#082343;font-size:1.2rem}.service-calculator-filter{background:#f2f7fb;border:1px solid #cfdeeb;border-radius:15px;padding:1rem}.service-provider-create{margin-top:1rem;background:#f6fbf9}.service-provider-list{display:grid;gap:.8rem}.service-provider-row>summary{display:grid;grid-template-columns:minmax(260px,2fr) repeat(3,minmax(130px,1fr));gap:1rem;align-items:center;padding:1rem 1.2rem;cursor:pointer;background:#f3faf7;border-radius:14px}.service-provider-row[open]>summary{background:#dff2ea;border-left:5px solid #23846f}.service-provider-row>summary span{display:grid;gap:.2rem}.service-provider-row>summary small{color:#637783}.service-provider-expanded{display:grid;gap:1rem;padding:1rem}.service-calculation-new,.service-calculation-history{border:1px solid #d6e5e0;border-radius:15px;background:#fff;padding:1rem}.service-calculation-form{display:grid;gap:1rem}.service-calculation-memory{border-left:4px solid #3f76b5;background:#eff6ff;border-radius:8px;padding:.85rem 1rem;font-weight:700;color:#173b67}.calculated-field{background:#eaf6f1!important;border-color:#25866f!important}.record-actions{display:grid;gap:.7rem;min-width:min(520px,75vw);padding:.75rem}.record-actions form{margin:0}.archived-row{opacity:.72;background:#f5f5f5}.service-calculation-history td small{display:block;margin-top:.25rem}.service-calculation-history table{min-width:1080px}.service-provider-search{position:relative;margin-bottom:1rem;background:#fff8e8;border:1px solid #ecd7a6;border-radius:14px;padding:.8rem}.service-provider-search label{display:grid;gap:.35rem;font-weight:700}.service-provider-search-results{position:absolute;z-index:20;left:.8rem;right:.8rem;top:calc(100% - .4rem);border:1px solid #bcd6cf;border-radius:12px;background:#fff;box-shadow:0 12px 30px rgba(8,35,67,.14);overflow:hidden}.service-provider-search-results a,.service-provider-search-results span{display:grid;gap:.2rem;padding:.8rem 1rem;border-bottom:1px solid #e1ebe8;text-decoration:none;color:#082343}.service-provider-search-results a:hover{background:#eaf6f1}.service-provider-search-results small{color:#60727f}
@media(max-width:980px){.service-calculator-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.service-provider-row>summary{grid-template-columns:1fr 1fr}}
@media(max-width:620px){.service-calculator-metrics{grid-template-columns:1fr}.service-provider-row>summary{grid-template-columns:1fr}.service-provider-expanded{padding:.5rem}.record-actions{min-width:0}}
.service-provider-source-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem;margin-top:.8rem}.service-provider-source-grid>details{border:1px solid #c9ded7;border-radius:13px;background:#fff;overflow:hidden}.service-provider-source-grid>details>summary{padding:.9rem 1rem;font-weight:800;color:#075f52;background:#f2faf7;cursor:pointer}.service-provider-source-grid>details[open]>summary{background:#dff2ea}.service-provider-source-grid>details>form{padding:1rem;margin:0}.service-provider-source-grid .compact-form{display:grid;gap:.8rem}@media(max-width:800px){.service-provider-source-grid{grid-template-columns:1fr}}
.service-calculator-filter{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:14px 16px;background:linear-gradient(135deg,#eef5fb,#f8fbfd);border:1px solid #bfd4e6;border-left:5px solid #4b7db2;border-radius:16px;padding:18px;box-shadow:0 6px 18px rgba(37,75,114,.06)}.service-calculator-filter label{display:grid;align-content:start;gap:6px;min-width:0;font-weight:850;color:#163c61}.service-calculator-filter label small{min-height:16px;color:#63788b;font-size:.72rem;font-weight:600}.service-calculator-filter input,.service-calculator-filter select{width:100%;background:#fff}.service-calculator-filter .select-option-search{margin:0;border-color:#b7cce0;background:#f9fcff}.service-filter-heading{grid-column:1/-1;display:flex;align-items:flex-end;justify-content:space-between;gap:16px;padding-bottom:12px;border-bottom:1px solid #ccdae7}.service-filter-heading h3{margin:3px 0 0;color:#102d4f;font-size:1.15rem}.service-filter-heading p{margin:0;color:#607488;font-size:.84rem}.service-filter-provider{grid-column:span 4}.service-filter-status{grid-column:span 2}.service-filter-reference,.service-filter-start,.service-filter-end{grid-column:span 2}.service-filter-unit{grid-column:span 2}.service-filter-service{grid-column:span 4}.service-filter-actions{grid-column:1/-1;display:flex;justify-content:flex-end;gap:10px;padding-top:4px}.service-filter-actions .button{min-width:138px;justify-content:center}@media(max-width:900px){.service-calculator-filter{grid-template-columns:repeat(2,minmax(0,1fr))}.service-filter-provider,.service-filter-status,.service-filter-reference,.service-filter-start,.service-filter-end,.service-filter-unit,.service-filter-service{grid-column:span 1}}@media(max-width:620px){.service-calculator-filter{grid-template-columns:1fr;padding:13px}.service-filter-heading{align-items:flex-start;flex-direction:column}.service-filter-provider,.service-filter-status,.service-filter-reference,.service-filter-start,.service-filter-end,.service-filter-unit,.service-filter-service{grid-column:1}.service-filter-actions{display:grid;grid-template-columns:1fr 1fr}.service-filter-actions .button{min-width:0;width:100%}}

/* Menu de Módulos — Entrega 3 */
.module-hub-heading-actions{display:flex;align-items:center;justify-content:flex-end;gap:9px;flex-wrap:wrap}.module-hub-heading-actions .button{display:inline-flex;align-items:center;gap:7px}.module-hub-heading-actions .nav-icon{width:18px;height:18px}.module-hub-categories{display:flex;align-items:center;gap:7px;overflow-x:auto;margin:13px 0;padding:7px;border:1px solid #d2ddea;border-radius:13px;background:#f4f7fb;scrollbar-width:thin}.module-hub-categories button{flex:0 0 auto;min-height:38px;padding:8px 13px;border:1px solid transparent;border-radius:9px;background:transparent;color:#536b87;font:inherit;font-size:.78rem;font-weight:900;cursor:pointer}.module-hub-categories button:hover{border-color:#b7c8db;background:#fff;color:#315b8e}.module-hub-categories button.is-active{border-color:#416fa6;background:#416fa6;color:#fff;box-shadow:0 5px 12px rgba(49,85,130,.2)}.module-hub-search kbd{display:grid;place-items:center;min-width:25px;height:25px;margin-left:auto;border:1px solid #c5d1df;border-bottom-width:2px;border-radius:6px;background:#f5f7fa;color:#65758a;font:700 .72rem/1 system-ui}.module-hub-search input:focus+Kbd{border-color:#7e9cbd;color:#315b8e}.module-hub-card[hidden]{display:none!important}@media(max-width:700px){.module-hub-heading-actions{display:grid;grid-template-columns:1fr 1fr;width:100%}.module-hub-heading-actions .button{justify-content:center;width:100%}.module-hub-categories{margin-inline:-2px}.module-hub-search kbd{display:none}}

/* V324 — navegação financeira sem recorte e padronizada em azul. */
@media(min-width:1101px){.financial-module-nav{top:var(--header-height,88px)}.financial-page-nav{top:calc(var(--header-height,88px) + 78px)}}
.financial-module-nav{border-color:#c2d1e3;background:rgba(244,247,251,.97);box-shadow:0 7px 20px rgba(44,75,120,.08)}.financial-module-nav>a{border-color:#bdcde0;color:#315a8d}.financial-module-nav>a:hover{border-color:#7797bd;background:#e7eef8}.financial-module-nav>a.is-active{border-color:#486fa8;background:#486fa8;color:#fff;box-shadow:0 5px 13px rgba(45,82,132,.2)}.financial-module-nav>a.is-active small{color:#edf3fb}

/* V327 — identidade visual global azul-petróleo, azul médio e laranja da marca. */
:root{
    --sidebar:#123b55;
    --sidebar-deep:#0b2f47;
    --sidebar-text:#f1f6fb;
    --background:#f3f6fa;
    --line:#d5e0eb;
    --primary:#356fae;
    --primary-dark:#285a91;
    --accent:#f28c18;
}
    body{background:linear-gradient(135deg,#edf3f9 0%,#f7f9fc 52%,#eef3f8 100%)}
    .app-sidebar{background:linear-gradient(180deg,var(--sidebar) 0%,var(--sidebar-deep) 100%);box-shadow:8px 0 28px rgba(11,47,71,.13)}
    .sidebar-brand small{color:#bfd1e2}
    .sidebar-link,.sidebar-group>summary{color:#e2edf7}
    .sidebar-link:hover,.sidebar-group>summary:hover{background:rgba(255,255,255,.11);color:#fff}
    .sidebar-link.active{background:#356fae;color:#fff;box-shadow:inset 4px 0 var(--accent),0 5px 14px rgba(4,31,53,.18)}
    .sidebar-submenu{border-left-color:rgba(220,235,248,.24)}
    .sidebar-submenu a{color:#cbdbea}
    .sidebar-submenu a:hover,.sidebar-submenu a.active{background:rgba(83,140,194,.28);color:#fff}
    .sidebar-footer small{color:#b8cede}
    .sidebar-is-collapsed .sidebar-collapse{background:#285a91}
    .context-header{border-bottom-color:#d7e1ec;box-shadow:0 4px 18px rgba(31,67,105,.07)}
    .context-label{color:#315f8c}
    .project-picker>summary{border-color:#aec4da;background:#fbfdff}
    .project-picker>summary .nav-icon,.notification-button{color:#356fae}
    .project-options button:hover,.project-options button.selected{background:#e8f0fa;color:#285a91}
    .user-avatar{background:#285a91}
    .button-primary{background:#356fae;color:#fff;box-shadow:0 5px 13px rgba(42,92,145,.17)}
    .button-primary:hover{background:#285a91;box-shadow:0 7px 16px rgba(35,77,123,.23)}
    .button-selected{border-color:#356fae;background:#e7eff9;color:#285a91}
    .eyebrow,.label{color:#356fae}
    .inline-form summary,.friendly-edit-panel>summary{color:#285a91}
    .financial-panel>summary,.financial-subpanel>summary,.audit-main-subpanel>summary,.document-report-subpanel>summary{color:#285a91}
    .financial-panel[open]>summary,.financial-subpanel[open]>summary,.audit-main-subpanel[open]>summary,.document-report-subpanel[open]>summary{background:#e8f0f9}
    .audit-period-create,.supplier-search{border-color:#b9cee3;border-left-color:#4b7db4;background:#f1f6fc;box-shadow:0 6px 18px rgba(37,75,114,.06)}
    .audit-period-create>summary,.supplier-search>label{color:#285a91}
    .audit-period-create[open]>summary{border-bottom-color:#c6d7e8;background:#e5eef8}
    .themed-form-block{border-color:#d1dfec;background:#f9fbfe}
    .form-block-heading>span{background:#e3edf8;color:#356fae}
    .form-block-heading strong{color:#183b61}
    .sticky-form-actions{border-color:#cbd9e7;box-shadow:0 8px 24px rgba(32,68,106,.10)}
    .sortable-filterable-table .column-sort-button:hover span:first-child,.sort-indicator{color:#356fae}
    .finance-budget-detail.finance-overview-query-panel{border-color:#b8cee3;border-left-color:#4b7db4}
    .finance-budget-detail.finance-overview-query-panel>summary{background:linear-gradient(135deg,#edf4fb,#fafcff)}
    .finance-budget-detail.finance-overview-query-panel[open]>summary{background:#e4eef8}
    .balance-hierarchy-card{border-color:#c7d7e7}
    .balance-hierarchy-card>header{border-bottom-color:#c7d7e7;background:linear-gradient(135deg,#e5eef8,#f7faff)}
    .balance-hierarchy-card>header strong{color:#285a91}
    .module-hub-card-financeiro .module-hub-icon,.module-hub-card-auditoria .module-hub-icon{background:#e5eef9;color:#356fae}
    .module-hub-project{border-color:#bfd2e5;border-left-color:#4b7db4;background:linear-gradient(135deg,#f8fbff,#edf4fc)}
    .module-hub-project>.nav-icon{color:#356fae}
    .module-hub-project span{color:#536f8d}
    .module-hub-project strong{color:#173b63}
    .audit-selected-period>form{background:#dceafb;border-color:#b7cce4}
    .audit-selected-period>form>.button-primary{background:#356fae}
    .audit-selected-period>form>.button-primary:hover{background:#285a91}
}

/* V328 — filtro compacto da relação de lançamentos de despesa. */
.expense-entry-filter{
    display:grid;
    grid-template-columns:repeat(12,minmax(0,1fr));
    align-items:end;
    gap:10px 12px;
    padding:16px!important;
    border:1px solid #bfd2e5!important;
    border-left:5px solid #4b7db4!important;
    background:linear-gradient(135deg,#edf4fb 0%,#f8fbfe 100%)!important;
    box-shadow:0 6px 18px rgba(37,75,114,.07)!important;
}
.expense-entry-filter>label{display:grid;align-content:end;gap:5px;min-width:0;margin:0;color:#294f73;font-size:.76rem;font-weight:850}
.expense-entry-filter>label>span{white-space:nowrap}
.expense-entry-filter :where(input,select){width:100%;min-width:0!important;margin:0!important;background:#fff!important;border-color:#b8cce0!important}
.expense-entry-filter .select-option-search{margin:0 0 6px!important}
.expense-filter-search{grid-column:span 4}
.expense-filter-type{grid-column:span 2}
.expense-filter-status{grid-column:span 2}
.expense-filter-reconciliation{grid-column:span 2}
.expense-filter-supplier{grid-column:span 4}
.expense-filter-basis{grid-column:span 4}
.expense-filter-from,.expense-filter-to{grid-column:span 2}
.expense-filter-actions{grid-column:span 4;display:flex;align-items:center;justify-content:flex-end;gap:9px;min-width:0}
.expense-filter-actions .button{min-width:110px;margin:0}
@media(max-width:1100px){
    .expense-entry-filter{grid-template-columns:repeat(6,minmax(0,1fr))}
    .expense-filter-search,.expense-filter-supplier,.expense-filter-basis{grid-column:span 3}
    .expense-filter-type,.expense-filter-status,.expense-filter-reconciliation,.expense-filter-from,.expense-filter-to{grid-column:span 2}
    .expense-filter-actions{grid-column:span 3}
}

/* V368 — identificação compacta do lançamento de despesa */
.expense-identification-grid {
    display:grid;
    grid-template-columns:repeat(12,minmax(0,1fr));
    gap:14px 16px;
    padding:16px;
    border:1px solid #bfd1e5;
    border-radius:14px;
    background:#f7faff;
}
.expense-identification-grid > label { min-width:0; margin:0; }
.expense-identification-grid .expense-field-type { grid-column:span 3; }
.expense-identification-grid .expense-field-account { grid-column:span 9; }
.expense-identification-grid .expense-field-supplier { grid-column:span 8; }
.expense-identification-grid .expense-field-document { grid-column:span 4; }
.expense-identification-grid .expense-field-date,
.expense-identification-grid .expense-field-total { grid-column:span 3; }
.expense-identification-grid .expense-field-goal { grid-column:1 / -1; }
.expense-identification-grid input,
.expense-identification-grid select { min-height:48px; }
.expense-identification-grid input[readonly] { background:#eef2f6; color:#52687f; }
@media(max-width:900px){
    .expense-identification-grid .expense-field-type,
    .expense-identification-grid .expense-field-account,
    .expense-identification-grid .expense-field-supplier,
    .expense-identification-grid .expense-field-document,
    .expense-identification-grid .expense-field-date,
    .expense-identification-grid .expense-field-total { grid-column:span 6; }
}
@media(max-width:620px){
    .expense-identification-grid > label { grid-column:1 / -1 !important; }
}
@media(max-width:720px){
    .expense-entry-filter{grid-template-columns:repeat(2,minmax(0,1fr));padding:13px!important}
    .expense-filter-search,.expense-filter-supplier,.expense-filter-basis{grid-column:1/-1}
    .expense-filter-type,.expense-filter-status,.expense-filter-reconciliation,.expense-filter-from,.expense-filter-to{grid-column:span 1}
    .expense-filter-actions{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr}
    .expense-filter-actions .button{width:100%;min-width:0}
}
@media(max-width:480px){
    .expense-entry-filter{grid-template-columns:1fr}
    .expense-entry-filter>label,.expense-filter-actions{grid-column:1!important}
}

/* V329 — sincroniza largura e conteúdo visível do menu lateral. */
@media(min-width:1101px){
    .app-shell.sidebar-is-collapsed{
        grid-template-columns:var(--sidebar-collapsed,76px) minmax(0,1fr)!important;
    }
    .app-shell.sidebar-is-collapsed>.app-sidebar{
        width:var(--sidebar-collapsed,76px)!important;
    }
    .app-shell:not(.sidebar-is-collapsed){
        grid-template-columns:var(--sidebar-expanded,264px) minmax(0,1fr)!important;
    }
    .app-shell:not(.sidebar-is-collapsed)>.app-sidebar{
        width:var(--sidebar-expanded,264px)!important;
    }
    .app-shell:not(.sidebar-is-collapsed) .app-sidebar .sidebar-label{
        display:block!important;
    }
}
@media(max-width:1100px){
    .app-shell.sidebar-is-open .app-sidebar{
        width:min(var(--sidebar-expanded,264px),calc(100vw - 34px))!important;
    }
    .app-shell.sidebar-is-open .app-sidebar .sidebar-label,
    .app-shell.sidebar-is-open .sidebar-chevron,
    .app-shell.sidebar-is-open .sidebar-count{
        display:block!important;
    }
    .app-shell.sidebar-is-open .sidebar-submenu{
        display:grid!important;
    }
}

/* V330 — alinha pelo topo os campos do filtro compacto de despesas. */
.expense-entry-filter{
    align-items:start;
}
.expense-entry-filter>label{
    align-content:start;
    align-self:start;
}
.expense-filter-actions{
    align-self:end;
}

/* V333 — duas linhas compactas e alinhadas no filtro de despesas. */
.expense-filter-supplier-search{grid-column:span 4}
.expense-filter-basis{grid-column:span 3}
.expense-filter-from,.expense-filter-to{grid-column:span 2}
.expense-filter-supplier{grid-column:span 3}
.expense-filter-actions{grid-column:span 2}
.expense-filter-actions .button{min-width:0;flex:1}
@media(max-width:1100px){
    .expense-filter-supplier-search{grid-column:span 3}
    .expense-filter-supplier{grid-column:span 3}
}
@media(max-width:720px){
    .expense-filter-supplier-search,.expense-filter-supplier,.expense-filter-basis,.expense-filter-actions{grid-column:1/-1}
    .expense-filter-from,.expense-filter-to{grid-column:span 1}
    .expense-filter-actions{display:grid;grid-template-columns:1fr 1fr}
}

/* V334 — pesquisa e seleção de fornecedor na mesma coluna. */
@media(min-width:1101px){
    .expense-entry-filter .expense-filter-search{grid-column:1/5;grid-row:1}
    .expense-entry-filter .expense-filter-status{grid-column:5/7;grid-row:1}
    .expense-entry-filter .expense-filter-reconciliation{grid-column:7/9;grid-row:1}
    .expense-entry-filter .expense-filter-supplier-search{grid-column:9/13;grid-row:1}
    .expense-entry-filter .expense-filter-basis{grid-column:1/3;grid-row:2}
    .expense-entry-filter .expense-filter-from{grid-column:3/5;grid-row:2}
    .expense-entry-filter .expense-filter-to{grid-column:5/7;grid-row:2}
    .expense-entry-filter .expense-filter-actions{grid-column:7/9;grid-row:2}
    .expense-entry-filter .expense-filter-supplier{grid-column:9/13;grid-row:2}
}
/* V335 — navegação superior contextual compartilhada entre módulos */
.context-module-nav {
    position: sticky;
    top: var(--header-height, 88px);
    z-index: 24;
    display: none;
    grid-template-columns: repeat(auto-fit, minmax(168px, 1fr));
    gap: 8px;
    margin: 12px 0 18px;
    padding: 9px;
    border: 1px solid #bfd0e6;
    border-radius: 16px;
    background: #f7faff;
    box-shadow: 0 8px 24px rgba(31, 67, 112, .06);
}
.context-module-nav.is-ready { display: grid; }
.context-module-nav a {
    min-width: 0;
    min-height: 62px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 3px;
    padding: 11px 14px;
    border: 1px solid #bfd0e6;
    border-radius: 12px;
    color: #1f4778;
    background: #fff;
    text-decoration: none;
    transition: border-color .16s ease, background-color .16s ease, color .16s ease, transform .16s ease, box-shadow .16s ease;
}
.context-module-nav a:hover,
.context-module-nav a:focus-visible {
    border-color: #4779b8;
    background: #eef5ff;
    transform: translateY(-1px);
    box-shadow: 0 7px 16px rgba(50, 96, 153, .11);
}
.context-module-nav a strong {
    overflow-wrap: anywhere;
    font-size: .92rem;
    line-height: 1.15;
}
.context-module-nav a small {
    color: #65758a;
    font-size: .72rem;
    line-height: 1.18;
}
.context-module-nav a.active {
    border-color: #4779b8;
    color: #fff;
    background: #4779b8;
    box-shadow: 0 8px 18px rgba(50, 96, 153, .2);
}
.context-module-nav a.active small { color: #edf5ff; }

/* Cabeçalhos coerentes com Financeiro e Execução, sem alterar impressos. */
.app-content > .page-heading {
    margin-bottom: 10px;
}
.app-content > .page-heading h1 {
    line-height: 1.02;
}

@media (max-width: 1180px) {
    .context-module-nav {
        overflow-x: auto;
        grid-template-columns: none;
    }
    .context-module-nav.is-ready { display: flex; }
    .context-module-nav a { flex: 0 0 190px; }
}
@media (max-width: 560px) {
    .context-module-nav,
    .context-module-nav.is-ready {
        display: flex;
        overflow-x: auto;
        scroll-snap-type: x proximity;
        padding-bottom: 10px;
    }
    .context-module-nav a {
        flex: 0 0 210px;
        scroll-snap-align: start;
    }
}

/* V336 — carteira institucional em cartões responsivos, três por linha. */
.institutional-portfolio-card {
    display: flex;
    flex-direction: column;
    min-width: 0;
    height: 100%;
    padding: 17px;
    border-color: #c8d7e7;
    box-shadow: 0 7px 20px rgba(39, 74, 114, .07);
}
.organization-cards {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    align-items: stretch;
    gap: 16px;
}
.institutional-portfolio-card .organization-card-header {
    grid-template-columns: 52px minmax(0, 1fr) auto;
    align-items: start;
    gap: 11px;
}
.institutional-portfolio-card .organization-card-header img,
.institutional-portfolio-card .organization-placeholder {
    width: 52px;
    height: 52px;
}
.institutional-portfolio-card .organization-card-header h3,
.institutional-portfolio-card .organization-card-header p,
.institutional-portfolio-card .organization-card-header small {
    overflow-wrap: anywhere;
}
.institutional-portfolio-card .organization-card-header h3 {
    font-size: .92rem;
    line-height: 1.25;
}
.institutional-portfolio-card .organization-card-header p {
    color: #40546d;
    font-size: .78rem;
    line-height: 1.28;
}
.institutional-portfolio-card .organization-card-header small {
    font-size: .7rem;
}
.institutional-portfolio-card .organization-card-header > .badge {
    white-space: nowrap;
    font-size: .68rem;
}
.institutional-portfolio-card .institutional-progress-grid {
    gap: 7px;
}
.institutional-portfolio-card .institutional-progress-grid > div {
    gap: 5px 7px;
    padding: 9px;
}
.institutional-portfolio-card .institutional-progress-grid span {
    font-size: .67rem;
}
.institutional-portfolio-card .institutional-progress-grid strong {
    font-size: .82rem;
}
.institutional-portfolio-card .organization-summary {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
    margin: 0;
}
.institutional-portfolio-card .organization-summary div {
    min-width: 0;
    padding: 9px 10px;
}
.institutional-portfolio-card .organization-summary dt {
    font-size: .62rem;
}
.institutional-portfolio-card .organization-summary dd {
    overflow-wrap: anywhere;
    font-size: .78rem;
}
.institutional-portfolio-card > .notice {
    margin: 0;
    font-size: .76rem;
}
.institutional-portfolio-card > .button {
    display: flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 auto;
    min-height: 48px;
    width: 100%;
    margin-top: auto;
    text-align: center;
}
@media (max-width: 1400px) {
    .organization-cards { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 900px) {
    .organization-cards { grid-template-columns: minmax(0, 1fr); }
    .institutional-portfolio-card .institutional-progress-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media (max-width: 620px) {
    .institutional-portfolio-card .organization-card-header { grid-template-columns: 48px minmax(0, 1fr); }
    .institutional-portfolio-card .organization-card-header > .badge { grid-column: 1 / -1; width: max-content; }
    .institutional-portfolio-card .institutional-progress-grid { grid-template-columns: 1fr; }
}

/* V338 — fila institucional acima dos prazos, com três cartões por linha. */
.institutional-dashboard-grid {
    grid-template-columns: minmax(0, 1fr);
    align-items: start;
}
.institutional-work-queue,
.institutional-timeline {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    align-items: stretch;
    gap: 10px;
}
.institutional-work-queue > a {
    min-width: 0;
    min-height: 82px;
    align-items: flex-start;
    background: #f8fbff;
    border-color: #c8d8e9;
    box-shadow: 0 4px 12px rgba(39, 74, 114, .05);
}
.institutional-work-queue > a:hover {
    border-color: #6f96c2;
    background: #eef5fc;
}
.institutional-work-queue strong,
.institutional-work-queue small {
    overflow-wrap: anywhere;
}
.institutional-work-queue small {
    white-space: normal;
}
.institutional-timeline > div {
    grid-template-columns: auto 1fr;
    align-content: start;
    min-width: 0;
    min-height: 82px;
    padding: 13px 14px;
    border: 1px solid #c8d8e9;
    border-radius: 12px;
    background: #f8fbff;
    box-shadow: 0 4px 12px rgba(39, 74, 114, .05);
}
.institutional-timeline > div strong,
.institutional-timeline > div small {
    grid-column: 1 / -1;
    overflow-wrap: anywhere;
}
.institutional-timeline > .empty {
    grid-column: 1 / -1;
}
@media (max-width: 1150px) {
    .institutional-work-queue,
    .institutional-timeline { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 700px) {
    .institutional-work-queue,
    .institutional-timeline { grid-template-columns: minmax(0, 1fr); }
}

/* V339 — páginas institucionais separadas e ficha da OSC mais limpa. */
.institutional-dashboard-intro {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 24px;
    padding: 24px 26px;
    border-color: #c6d8ea;
    background: linear-gradient(135deg, #f8fbff, #eef5fc);
}
.institutional-dashboard-intro .section-title { margin: 0; }
.institutional-dashboard-intro .form-actions {
    flex: 0 0 auto;
    margin: 0;
}
.institutional-hero {
    min-height: 0;
    padding: 20px 24px;
    border-color: #c6d8ea;
    background: linear-gradient(135deg, #f8fbff, #edf4fb);
    box-shadow: 0 8px 24px rgba(39, 74, 114, .06);
}
.institutional-hero .compliance-score {
    border: 1px solid #c8d8e9;
    box-shadow: 0 5px 14px rgba(39, 74, 114, .06);
}
body:has(.institutional-hero) .context-module-nav {
    margin: 0 0 18px;
}
@media (max-width: 800px) {
    .institutional-dashboard-intro { align-items: stretch; flex-direction: column; }
    .institutional-dashboard-intro .form-actions { display: grid; grid-template-columns: 1fr; }
}

/* V340 — filtro compacto da Calculadora de Prestação de Serviços. */
.service-calculator-filter {
    grid-template-columns: repeat(12, minmax(0, 1fr));
    gap: 9px 12px;
    padding: 13px 15px;
}
.service-filter-heading {
    align-items: center;
    padding-bottom: 8px;
}
.service-filter-heading h3 { margin-top: 1px; font-size: 1.05rem; }
.service-calculator-filter label { gap: 4px; }
.service-calculator-filter label small {
    min-height: 0;
    font-size: .67rem;
    line-height: 1.2;
}
.service-calculator-filter input,
.service-calculator-filter select,
.service-calculator-filter .select-option-search {
    min-height: 44px;
}
.service-filter-provider { grid-column: span 5; }
.service-filter-status { grid-column: span 2; }
.service-filter-unit { grid-column: span 2; }
.service-filter-actions {
    grid-column: span 3;
    align-self: end;
    padding: 0;
}
.service-filter-actions .button { min-width: 0; flex: 1 1 0; }
.service-filter-reference,
.service-filter-start,
.service-filter-end { grid-column: span 2; }
.service-filter-service { grid-column: span 6; }
@media (max-width: 1100px) {
    .service-calculator-filter { grid-template-columns: repeat(6, minmax(0, 1fr)); }
    .service-filter-provider { grid-column: span 4; }
    .service-filter-status { grid-column: span 2; }
    .service-filter-reference,
    .service-filter-start,
    .service-filter-end,
    .service-filter-unit { grid-column: span 2; }
    .service-filter-service { grid-column: span 4; }
    .service-filter-actions { grid-column: span 2; }
}
@media (max-width: 700px) {
    .service-calculator-filter { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .service-filter-heading,
    .service-filter-provider,
    .service-filter-service,
    .service-filter-actions { grid-column: 1 / -1; }
    .service-filter-status,
    .service-filter-reference,
    .service-filter-start,
    .service-filter-end,
    .service-filter-unit { grid-column: span 1; }
}
@media (max-width: 520px) {
    .service-calculator-filter { grid-template-columns: 1fr; }
    .service-filter-status,
    .service-filter-reference,
    .service-filter-start,
    .service-filter-end,
    .service-filter-unit { grid-column: 1; }
}

/* V341 — biblioteca do Gerador de Declarações com até cinco cartões por linha. */
.declaration-card-grid {
    grid-template-columns: repeat(5, minmax(0, 1fr));
    align-items: stretch;
    gap: 12px;
}
.declaration-card {
    min-width: 0;
    height: 100%;
    padding: 15px;
}
.declaration-card h3,
.declaration-card p,
.declaration-card small {
    overflow-wrap: anywhere;
}
.declaration-card h3 {
    font-size: .96rem;
    line-height: 1.3;
}
.declaration-card p {
    font-size: .78rem;
    line-height: 1.35;
}
.declaration-card-actions {
    margin-top: auto;
}
.declaration-card-actions .button,
.declaration-card-actions form button {
    min-height: 40px;
    padding: 9px 10px;
    font-size: .75rem;
}
@media (max-width: 1500px) {
    .declaration-card-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); }
}
@media (max-width: 1200px) {
    .declaration-card-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media (max-width: 850px) {
    .declaration-card-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 560px) {
    .declaration-card-grid { grid-template-columns: minmax(0, 1fr); }
}

/* V342 — filtro da calculadora organizado em três colunas operacionais. */
.service-calculator-filter > .service-filter-column {
    display: flex;
    flex-direction: column;
    align-self: stretch;
    min-width: 0;
    gap: 11px;
}
.service-calculator-filter > .service-filter-column-main { grid-column: span 6; }
.service-calculator-filter > .service-filter-column-options { grid-column: span 3; }
.service-calculator-filter > .service-filter-column-dates { grid-column: span 3; }
.service-calculator-filter > .service-filter-column label {
    grid-column: auto;
    width: 100%;
}
.service-filter-column-main .service-filter-provider,
.service-filter-column-main .service-filter-service {
    min-width: 0;
}
.service-filter-clear,
.service-filter-apply {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    min-height: 44px;
    margin-top: auto;
}
@media (max-width: 1050px) {
    .service-calculator-filter > .service-filter-column-main { grid-column: 1 / -1; }
    .service-calculator-filter > .service-filter-column-options,
    .service-calculator-filter > .service-filter-column-dates { grid-column: span 3; }
}
@media (max-width: 700px) {
    .service-calculator-filter > .service-filter-column-main,
    .service-calculator-filter > .service-filter-column-options,
    .service-calculator-filter > .service-filter-column-dates { grid-column: 1 / -1; }
}

/* V343 — pesquisa e paginação do arquivo de declarações geradas. */
.declaration-emission-filter {
    display: grid;
    grid-template-columns: minmax(280px, 1fr) auto auto;
    align-items: end;
    gap: 10px;
    margin: 0 0 14px;
    padding: 12px;
    border: 1px solid #c6d8ea;
    border-left: 5px solid #4b7db2;
    border-radius: 14px;
    background: #f3f7fc;
}
.declaration-emission-filter label {
    display: grid;
    gap: 5px;
    color: #173c61;
    font-weight: 800;
}
.declaration-emission-filter input { min-height: 44px; background: #fff; }
.declaration-emission-filter .button { min-width: 110px; min-height: 44px; justify-content: center; }
#declaracoes-geradas .finance-pagination { margin-top: 12px; }
@media (max-width: 700px) {
    .declaration-emission-filter { grid-template-columns: 1fr 1fr; }
    .declaration-emission-filter label { grid-column: 1 / -1; }
}

/* V344 — datas à esquerda; fornecedor, serviço, unidade e ações à direita. */
.service-calculator-filter > .service-filter-column-dates {
    order: 1;
    grid-column: span 3;
}
.service-calculator-filter > .service-filter-column-options {
    order: 2;
    grid-column: span 3;
}
.service-calculator-filter > .service-filter-column-main {
    order: 3;
    grid-column: span 6;
}
.service-filter-column-actions {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
    margin-top: auto;
}
.service-filter-column-actions .service-filter-clear,
.service-filter-column-actions .service-filter-apply {
    margin-top: 0;
}
@media (max-width: 1050px) {
    .service-calculator-filter > .service-filter-column-dates,
    .service-calculator-filter > .service-filter-column-options { grid-column: span 3; }
    .service-calculator-filter > .service-filter-column-main { grid-column: 1 / -1; }
}
@media (max-width: 700px) {
    .service-calculator-filter > .service-filter-column-dates,
    .service-calculator-filter > .service-filter-column-options,
    .service-calculator-filter > .service-filter-column-main { grid-column: 1 / -1; }
}

/* V345 - Novo calculo em duas colunas uniformes. */
.service-calculation-new .service-calculation-fields {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    align-items: start;
    gap: 12px 16px;
}
.service-calculation-new .service-calculation-fields > label {
    grid-column: span 1 !important;
    min-width: 0;
    width: 100%;
    max-width: 100%;
}
.service-calculation-new .service-calculation-fields input,
.service-calculation-new .service-calculation-fields select,
.service-calculation-new .service-calculation-fields textarea,
.service-calculation-new .service-calculation-fields .select-option-search {
    box-sizing: border-box;
    width: 100%;
    max-width: 100%;
    min-width: 0;
}
.service-calculation-new .service-calculation-fields textarea {
    min-height: 100px;
    resize: vertical;
}
@media (max-width: 760px) {
    .service-calculation-new .service-calculation-fields { grid-template-columns: 1fr; }
    .service-calculation-new .service-calculation-fields > label { grid-column: 1 !important; }
}

/* V346 - Filtro da calculadora em duas colunas equilibradas. */
.service-calculator-filter > .service-filter-column-main {
    order: 1;
    grid-column: span 6;
}
.service-calculator-filter > .service-filter-column-dates {
    order: 2;
    grid-column: span 6;
}
.service-calculator-filter > .service-filter-column-dates .service-filter-status {
    margin-top: 0;
}
@media (max-width: 760px) {
    .service-calculator-filter > .service-filter-column-main,
    .service-calculator-filter > .service-filter-column-dates {
        grid-column: 1 / -1;
    }
}

/* V347 - OSCs em dois cartoes por linha e acoes alinhadas na base. */
.organization-cards {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    align-items: stretch;
}
.institutional-portfolio-card {
    display: flex;
    flex-direction: column;
    height: 100%;
}
.institutional-portfolio-card .organization-card-primary-action {
    margin-top: auto;
    padding-top: 12px;
}
.institutional-portfolio-card .organization-card-primary-action .button {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    min-height: 48px;
}
.institutional-portfolio-card > .friendly-edit-panel > summary {
    display: flex;
    align-items: center;
    min-height: 48px;
}
@media (max-width: 900px) {
    .organization-cards { grid-template-columns: minmax(0, 1fr); }
}

/* V348 - Ficha institucional organizada em cartoes tematicos. */
.institutional-profile-nav {
    position: sticky;
    top: var(--header-height);
    z-index: 115;
    display: grid;
    grid-template-columns: repeat(6, minmax(0, 1fr));
    gap: 8px;
    margin: 0 0 16px;
    padding: 9px;
    border: 1px solid #c6d8ea;
    border-radius: 14px;
    background: rgba(246, 250, 255, .96);
    box-shadow: 0 7px 20px rgba(39, 74, 114, .08);
    backdrop-filter: blur(10px);
}
.institutional-profile-nav a {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 42px;
    padding: 8px 10px;
    border: 1px solid #c8d9eb;
    border-radius: 10px;
    background: #fff;
    color: #214f83;
    font-size: .8rem;
    font-weight: 850;
    text-align: center;
    text-decoration: none;
}
.institutional-profile-nav a:hover { background: #eaf2fc; border-color: #4b7db2; }
.institutional-profile-hero {
    grid-template-columns: 92px minmax(0, 1fr) auto;
    padding: 22px 24px;
    border-left: 6px solid #4b7db2;
}
.institutional-profile-logo {
    display: grid;
    place-items: center;
    width: 92px;
    height: 92px;
    border: 1px solid #d3e0ed;
    border-radius: 16px;
    background: #fff;
}
.institutional-profile-logo img { max-width: 78px; max-height: 78px; }
.institutional-profile-title { min-width: 0; }
.institutional-profile-title h1 { overflow-wrap: anywhere; }
.institutional-profile-title p { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; }
.institutional-information-cards {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 14px;
    margin: 0 0 16px;
}
.institutional-information-cards > article {
    min-width: 0;
    padding: 18px;
    border: 1px solid #cbdbea;
    border-top: 4px solid #4b7db2;
    border-radius: 15px;
    background: #fff;
    box-shadow: 0 6px 18px rgba(39, 74, 114, .06);
}
.institutional-information-cards h3 { margin: 5px 0 14px; color: #102d4f; font-size: 1rem; overflow-wrap: anywhere; }
.institutional-information-cards dl { display: grid; gap: 9px; margin: 0; }
.institutional-information-cards dl > div { padding: 9px 10px; border-radius: 9px; background: #f4f7fb; }
.institutional-information-cards dt { color: #607488; font-size: .67rem; font-weight: 850; letter-spacing: .035em; text-transform: uppercase; }
.institutional-information-cards dd { margin: 4px 0 0; color: #102d4f; font-size: .84rem; font-weight: 750; overflow-wrap: anywhere; }
.institutional-information-cards dd small { display: block; margin-top: 3px; color: #607488; font-weight: 600; }
.institutional-readiness-cards > div,
.institutional-metric-cards > article {
    border-color: #cbdbea;
    background: #fff;
    box-shadow: 0 5px 15px rgba(39, 74, 114, .05);
}
.institutional-workflow-card { border-color: #c6d8ea; border-left: 6px solid #4b7db2; background: linear-gradient(135deg, #f8fbff, #edf4fb); }
.institutional-tools-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
    margin: 18px 0;
}
.institutional-tools-grid > article,
.institutional-tools-grid > details,
.institutional-profile-editor,
.institutional-document-section,
.institutional-project-section,
.institutional-audit-section {
    border-color: #cbdbea;
    box-shadow: 0 6px 18px rgba(39, 74, 114, .05);
}
.institutional-tools-grid > article {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    min-width: 0;
    padding: 20px;
    border: 1px solid #cbdbea;
    border-radius: 16px;
    background: #fff;
}
.institutional-tools-grid > article h3 { margin: 5px 0; color: #102d4f; }
.institutional-tools-grid > article p { margin: 0 0 16px; color: #607488; }
.institutional-tools-grid > article .button { margin-top: auto; }
.institutional-profile-editor > summary { padding: 4px 0; }
.institutional-document-section > .section-title,
.institutional-project-section > .section-title { padding-bottom: 14px; border-bottom: 1px solid #d5e1ed; }
#resumo,#fluxo,#documentos,#projetos,#relatorios,#auditoria { scroll-margin-top: calc(var(--header-height) + 82px); }
@media (max-width: 1050px) {
    .institutional-profile-nav { grid-template-columns: repeat(3, minmax(0, 1fr)); }
    .institutional-information-cards { grid-template-columns: 1fr 1fr; }
    .institutional-information-cards > article:last-child { grid-column: 1 / -1; }
}
@media (max-width: 760px) {
    .institutional-profile-nav { display: flex; overflow-x: auto; }
    .institutional-profile-nav a { flex: 0 0 125px; }
    .institutional-profile-hero { grid-template-columns: 72px minmax(0, 1fr); padding: 16px; }
    .institutional-profile-logo { width: 72px; height: 72px; }
    .institutional-profile-hero .compliance-score { grid-column: 1 / -1; width: 100%; }
    .institutional-information-cards,
    .institutional-tools-grid { grid-template-columns: 1fr; }
    .institutional-information-cards > article:last-child { grid-column: auto; }
}
/* Gestão institucional: cards de ações no padrão visual atual */
.institutional-action-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:20px 0}.institutional-action-card{min-width:0;margin:0;padding:20px;border:1px solid #bdd1eb;border-radius:16px;background:#fff;box-shadow:0 8px 22px rgba(31,75,132,.07)}.institutional-action-card-heading{display:flex;align-items:center;gap:12px}.institutional-action-card h3{margin:3px 0 0;color:#102d4f;font-size:1.15rem}.institutional-action-card p{margin:14px 0 18px;color:#607488}.institutional-action-icon{display:grid;place-items:center;flex:0 0 42px;width:42px;height:42px;border-radius:12px;background:#e8f1fc;color:#2d68ad;font-size:1.25rem;font-weight:900}.institutional-action-button{width:100%;margin-top:auto;text-align:center}.institutional-action-grid>article{display:flex;flex-direction:column}.institutional-action-details>summary{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;min-height:94px;cursor:pointer;list-style:none}.institutional-action-details>summary::-webkit-details-marker{display:none}.institutional-action-details>summary>span:nth-child(2){display:grid;gap:3px}.institutional-action-details>summary small{color:#2d68ad;font-size:.72rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.institutional-action-details>summary strong{color:#102d4f;font-size:1.08rem}.institutional-action-details>summary em{color:#607488;font-size:.88rem;font-style:normal}.institutional-action-details>summary>b{padding:11px 16px;border-radius:10px;background:#3978bb;color:#fff;font-size:.84rem;text-align:center;box-shadow:0 6px 14px rgba(45,104,173,.18)}.institutional-action-details[open]{grid-column:1/-1}.institutional-action-details[open]>summary{padding-bottom:17px;border-bottom:1px solid #d6e2f1}.institutional-action-details>form{margin-top:18px}.institutional-profile-editor{margin:0 0 20px}.institutional-profile-editor>summary{padding:0}
@media(max-width:800px){.institutional-action-grid{grid-template-columns:1fr}.institutional-action-details[open]{grid-column:auto}.institutional-action-details>summary{grid-template-columns:auto 1fr}.institutional-action-details>summary>b{grid-column:1/-1;width:100%}}
/* Gestão Institucional: seletor exclusivo dos formulários documentais */
.institutional-document-action-tabs {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
    margin: 18px 0 14px;
}

.institutional-document-action-card {
    min-height: 104px;
    padding: 18px 20px;
    border: 1px solid #b9cee7;
    border-radius: 16px;
    background: linear-gradient(145deg, #fff 0%, #f4f8fd 100%);
    color: #17365d;
    display: grid;
    grid-template-columns: 42px 1fr;
    grid-template-rows: auto auto;
    column-gap: 14px;
    align-content: center;
    text-align: left;
    cursor: pointer;
    box-shadow: 0 5px 14px rgba(38, 84, 132, .08);
    transition: border-color .18s ease, background .18s ease, box-shadow .18s ease, transform .18s ease;
}

.institutional-document-action-card > span {
    grid-row: 1 / 3;
    align-self: center;
    width: 42px;
    height: 42px;
    border-radius: 12px;
    display: grid;
    place-items: center;
    background: #e3eefb;
    color: #245f9f;
    font-size: 1.45rem;
    font-weight: 800;
}

.institutional-document-action-card strong {
    font-size: 1.03rem;
    line-height: 1.25;
}

.institutional-document-action-card small {
    margin-top: 5px;
    color: #5c6f85;
    line-height: 1.35;
}

.institutional-document-action-card:hover {
    border-color: #4f82bd;
    box-shadow: 0 8px 20px rgba(38, 84, 132, .14);
    transform: translateY(-1px);
}

.institutional-document-action-card.is-active {
    border-color: #315f96;
    background: linear-gradient(145deg, #315f96 0%, #467db8 100%);
    color: #fff;
    box-shadow: 0 9px 22px rgba(38, 84, 132, .24);
}

.institutional-document-action-card.is-active > span {
    background: rgba(255, 255, 255, .18);
    color: #fff;
}

.institutional-document-action-card.is-active small {
    color: #e8f1fc;
}

.institutional-document-action-panel {
    width: 100%;
    margin: 0 0 22px;
    padding: 22px;
    border: 1px solid #b9cee7;
    border-left: 5px solid #3f76b3;
    border-radius: 16px;
    background: #f8fbff;
    box-shadow: 0 7px 20px rgba(38, 84, 132, .09);
}

.institutional-document-action-panel[hidden] {
    display: none !important;
}

@media (max-width: 720px) {
    .institutional-document-action-tabs {
        grid-template-columns: 1fr;
    }

    .institutional-document-action-card {
        min-height: 92px;
    }
}

/* Gestão Institucional: apresentação compacta dos bloqueios de aptidão */
.institutional-blockers-panel {
    margin: 18px 0 22px;
    overflow: hidden;
    border: 1px solid #e7c77a;
    border-left: 5px solid #d99a18;
    border-radius: 16px;
    background: #fffdf7;
    box-shadow: 0 7px 20px rgba(137, 96, 15, .08);
}

.institutional-blockers-panel > summary {
    min-height: 86px;
    padding: 16px 20px;
    display: grid;
    grid-template-columns: 42px minmax(0, 1fr) auto 30px;
    align-items: center;
    gap: 14px;
    list-style: none;
    cursor: pointer;
    background: linear-gradient(90deg, #fff9e8 0%, #fffdf8 100%);
}

.institutional-blockers-panel > summary::-webkit-details-marker {
    display: none;
}

.institutional-blockers-icon,
.institutional-blocker-marker {
    display: grid;
    place-items: center;
    border-radius: 50%;
    background: #fff0c2;
    color: #9b6500;
    font-weight: 900;
}

.institutional-blockers-icon {
    width: 42px;
    height: 42px;
    font-size: 1.2rem;
}

.institutional-blockers-heading {
    display: grid;
    gap: 4px;
}

.institutional-blockers-heading strong {
    color: #263d59;
    font-size: 1.04rem;
}

.institutional-blockers-heading small {
    color: #697b8f;
    font-size: .86rem;
}

.institutional-blockers-count {
    padding: 8px 12px;
    border: 1px solid #edcf83;
    border-radius: 999px;
    background: #fff4cf;
    color: #805400;
    font-size: .82rem;
    font-weight: 800;
    white-space: nowrap;
}

.institutional-blockers-toggle {
    color: #8b6417;
    font-size: 1.35rem;
    font-weight: 900;
    text-align: center;
    transition: transform .18s ease;
}

.institutional-blockers-panel[open] .institutional-blockers-toggle {
    transform: rotate(45deg);
}

.institutional-blockers-content {
    padding: 18px 20px 22px;
    border-top: 1px solid #eedcae;
    background: #fff;
}

.institutional-blockers-guidance {
    margin-bottom: 14px;
    display: flex;
    align-items: baseline;
    gap: 10px;
    color: #52657b;
}

.institutional-blockers-guidance strong {
    color: #17365d;
}

.institutional-blockers-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 10px;
}

.institutional-blocker-card {
    min-width: 0;
    min-height: 58px;
    padding: 10px 12px;
    display: grid;
    grid-template-columns: 28px minmax(0, 1fr) auto;
    align-items: center;
    gap: 9px;
    border: 1px solid #e4eaf1;
    border-radius: 12px;
    background: #f9fbfd;
}

.institutional-blocker-marker {
    width: 28px;
    height: 28px;
    font-size: .86rem;
}

.institutional-blocker-card strong {
    overflow-wrap: anywhere;
    color: #1b3555;
    font-size: .9rem;
}

.institutional-blocker-card .badge {
    margin: 0;
    white-space: nowrap;
}

@media (max-width: 1050px) {
    .institutional-blockers-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 700px) {
    .institutional-blockers-panel > summary {
        grid-template-columns: 38px minmax(0, 1fr) 26px;
        padding: 14px;
    }
    .institutional-blockers-count { grid-column: 2 / 3; justify-self: start; }
    .institutional-blockers-toggle { grid-column: 3; grid-row: 1 / 3; }
    .institutional-blockers-grid { grid-template-columns: 1fr; }
    .institutional-blockers-guidance { display: grid; }
}

/* Gestão Institucional: montagem visual do Kit de Habilitação */
.kit-pending-panel{margin:16px 0 20px;overflow:hidden;border:1px solid #e4c77d;border-left:5px solid #d99a18;border-radius:16px;background:#fff}.kit-pending-panel>summary{display:grid;grid-template-columns:42px minmax(0,1fr) auto 28px;align-items:center;gap:13px;min-height:82px;padding:15px 18px;list-style:none;cursor:pointer;background:linear-gradient(90deg,#fff9e9,#fffdf8)}.kit-pending-panel>summary::-webkit-details-marker{display:none}.kit-pending-panel>summary>span:nth-child(2){display:grid;gap:4px}.kit-pending-panel>summary strong{color:#203b5b}.kit-pending-panel>summary small{color:#6b7888;font-size:.82rem}.kit-pending-panel>summary>b{padding:7px 11px;border-radius:999px;background:#fff0c4;color:#805400;font-size:.78rem;white-space:nowrap}.kit-pending-panel>summary>i{color:#8b6417;font-size:1.3rem;font-style:normal;font-weight:900;transition:transform .18s}.kit-pending-panel[open]>summary>i{transform:rotate(45deg)}.kit-pending-icon{display:grid;place-items:center;width:42px;height:42px;border-radius:50%;background:#fff0c2;color:#9b6500;font-size:1.2rem;font-weight:900}.kit-pending-body{padding:17px 18px 20px;border-top:1px solid #edddaf}.kit-pending-body>p{margin:0 0 13px;color:#56687b}.kit-pending-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.kit-pending-grid article{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:3px 9px;align-items:center;padding:11px 12px;border:1px solid #e2e8ef;border-radius:11px;background:#f9fbfd}.kit-pending-grid article>span{grid-column:1;color:#527092;font-size:.68rem;font-weight:900;letter-spacing:.04em;text-transform:uppercase}.kit-pending-grid article>strong{min-width:0;color:#17365d;font-size:.86rem;overflow-wrap:anywhere}.kit-pending-grid article>b{grid-column:2;grid-row:1/3}
.kit-mode-card{margin:0 0 16px;padding:20px;border:1px solid #bdd1ea;border-left:5px solid #3d76b5;border-radius:17px;background:linear-gradient(145deg,#f5f9fe,#fff);box-shadow:0 7px 20px rgba(40,84,132,.07)}.kit-mode-card header h2{margin:4px 0 3px;color:#102d4f;font-size:1.25rem}.kit-mode-card header p{margin:0;color:#62758a}.kit-mode-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px;margin:17px 0 13px}.kit-mode-options label{position:relative;display:grid;grid-template-columns:52px minmax(0,1fr) auto;align-items:center;gap:13px;min-height:92px;padding:15px 16px;border:1px solid #c8d7e8;border-radius:14px;background:#fff;cursor:pointer;transition:.18s ease}.kit-mode-options label:hover{border-color:#6f9ccc;box-shadow:0 6px 16px rgba(40,84,132,.1)}.kit-mode-options label:has(input:checked){border-color:#376fae;background:#eaf2fc;box-shadow:inset 4px 0 #376fae,0 7px 18px rgba(40,84,132,.13)}.kit-mode-options input{position:absolute;opacity:0;pointer-events:none}.kit-mode-icon{display:grid;place-items:center;width:52px;height:46px;border-radius:11px;background:#e4eef9;color:#2f69a9;font-size:.72rem;font-weight:900}.kit-mode-options label>span:nth-of-type(2){display:grid;gap:4px}.kit-mode-options strong{color:#17365d;font-size:.98rem}.kit-mode-options small{color:#66788d;line-height:1.35}.kit-mode-options i{padding:6px 9px;border-radius:8px;background:#eef3f8;color:#58718e;font-size:.7rem;font-style:normal;font-weight:800}.kit-mode-options label:has(input:checked) i{background:#3978bb;color:#fff}.kit-mode-help{padding:11px 13px;border-radius:10px;background:#edf4fc;color:#526b87;font-size:.82rem}.kit-mode-help strong{color:#244f80}
.kit-selection-actions{display:grid!important;grid-template-columns:auto auto minmax(180px,1fr);align-items:center;gap:9px}.kit-selection-actions [data-kit-counter]{justify-self:end;padding:8px 12px;border-radius:999px;background:#e8f1fb;color:#285d99!important}.kit-category-groups .institutional-document-category{border-color:#c8d8e9;border-radius:14px;box-shadow:0 4px 13px rgba(40,84,132,.045)}.kit-category-groups .institutional-document-category>summary{min-height:54px;align-items:center;color:#244f80;background:#f8fbff}.kit-category-groups .institutional-document-category[open]>summary{border-bottom:1px solid #d5e1ef;background:#eaf2fb}.kit-category-groups .kit-category-include{background:#edf4fc}.kit-generate-actions{position:sticky;bottom:10px;z-index:15;display:flex;align-items:center;justify-content:space-between;gap:18px;margin:18px 0;padding:14px 16px;border:1px solid #b9cee5;border-radius:14px;background:rgba(255,255,255,.96);box-shadow:0 8px 24px rgba(26,68,113,.14);backdrop-filter:blur(8px)}.kit-generate-actions>span{display:grid;gap:3px}.kit-generate-actions strong{color:#17365d}.kit-generate-actions small{color:#67798d}.kit-generate-actions .button{min-width:260px}
@media(max-width:950px){.kit-pending-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.kit-pending-panel>summary{grid-template-columns:38px minmax(0,1fr) 26px}.kit-pending-panel>summary>b{grid-column:2;justify-self:start}.kit-pending-panel>summary>i{grid-column:3;grid-row:1/3}.kit-pending-grid,.kit-mode-options{grid-template-columns:1fr}.kit-selection-actions{grid-template-columns:1fr 1fr}.kit-selection-actions [data-kit-counter]{grid-column:1/-1;justify-self:stretch;text-align:center}.kit-generate-actions{position:static;display:grid}.kit-generate-actions .button{width:100%;min-width:0}}

/* Gerador de Declarações: arquivo documental e ações por emissão */
.declaration-emissions-table-shell {
    border: 1px solid #c4d5e8;
    border-radius: 15px;
    background: #fff;
    box-shadow: 0 5px 16px rgba(35, 76, 121, .06);
}

.declaration-emissions-table {
    min-width: 1120px;
    table-layout: fixed;
}

.declaration-emissions-table th {
    padding: 13px 12px;
    background: #eef4fb;
    color: #405c7d;
    font-size: .72rem;
    letter-spacing: .035em;
    text-transform: uppercase;
}

.declaration-emissions-table th:nth-child(1) { width: 14%; }
.declaration-emissions-table th:nth-child(2) { width: 17%; }
.declaration-emissions-table th:nth-child(3) { width: 23%; }
.declaration-emissions-table th:nth-child(4) { width: 17%; }
.declaration-emissions-table th:nth-child(5) { width: 14%; }
.declaration-emissions-table th:nth-child(6) { width: 15%; }

.declaration-emissions-table td {
    padding: 14px 12px;
    vertical-align: top;
    line-height: 1.35;
}

.declaration-emissions-table tbody tr:nth-child(even) {
    background: #f9fbfe;
}

.declaration-emissions-table tbody tr:hover {
    background: #f1f6fc;
}

.declaration-emissions-table td > small {
    display: block;
    margin-top: 4px;
    color: #63768c;
    line-height: 1.3;
}

.declaration-emissions-table code {
    overflow-wrap: anywhere;
    color: #244c7d;
    font-size: .76rem;
}

.declaration-emission-actions-cell {
    vertical-align: middle !important;
}

.declaration-emission-actions {
    display: flex;
    align-items: center;
    gap: 7px;
    white-space: nowrap;
}

.declaration-emission-actions form {
    margin: 0;
}

.declaration-emission-actions .button {
    min-width: 62px;
    min-height: 40px;
    padding: 9px 12px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 10px;
    font-size: .82rem;
    font-weight: 800;
    line-height: 1;
    text-decoration: none;
}

.declaration-file-button {
    border: 1px solid #7fa7d3;
    background: #edf4fc;
    color: #245b98;
}

.declaration-file-button:hover {
    border-color: #3d75b2;
    background: #dfeefa;
    color: #173f70;
}

@media (max-width: 760px) {
.declaration-emissions-table-shell { overflow-x: auto; }
}

/* V360 — listas operacionais do Controle */
.report-emission-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 14px;
}
.report-emission-filter {
    display:grid;
    grid-template-columns:minmax(260px,1fr) auto auto;
    align-items:end;
    gap:10px;
    margin:16px 0;
    padding:14px;
    border:1px solid #bfd2e7;
    border-left:5px solid #3f76b5;
    border-radius:14px;
    background:#f2f7fd;
}
.report-emission-filter label { display:grid; gap:6px; min-width:0; color:#173f70; font-weight:800; }
.report-emission-filter input { min-width:0; background:#fff; }
.report-emission-filter .button { min-height:46px; margin:0; }
.report-emission-pagination { scroll-margin-top:150px; }
.report-emission-card {
    display: flex;
    min-width: 0;
    min-height: 290px;
    padding: 16px;
    border: 1px solid #cbdceb;
    border-radius: 15px;
    background: #fff;
    flex-direction: column;
}
.report-emission-card-top { display:flex; align-items:center; justify-content:space-between; gap:10px; }
.report-emission-card h3 { margin:14px 0 12px; overflow-wrap:anywhere; color:#102746; font-size:1rem; }
.report-emission-card dl { display:grid; gap:9px; margin:0; }
.report-emission-card dl div { display:grid; gap:2px; min-width:0; }
.report-emission-card dt { color:#647688; font-size:.68rem; font-weight:800; text-transform:uppercase; }
.report-emission-card dd { margin:0; overflow-wrap:anywhere; font-size:.8rem; font-weight:700; }
.report-emission-file { display:grid; gap:8px; margin-top:auto; padding-top:14px; }
.report-emission-file small { color:#647688; }
.report-emission-file .button { display:flex; justify-content:center; align-items:center; gap:8px; width:100%; }
.report-file-icon { padding:4px 6px; border-radius:6px; background:rgba(255,255,255,.2); font-size:.66rem; font-weight:900; }

.team-cost-list { grid-template-columns:repeat(4,minmax(0,1fr)); align-items:stretch; }
.team-cost-list > article { display:flex; min-width:0; min-height:290px; padding:16px; flex-direction:column; }
.team-cost-list-heading { flex:1; flex-direction:column; }
.team-cost-list-heading > div { min-width:0; }
.team-cost-list-heading h3 { overflow-wrap:anywhere; font-size:1rem; }
.team-cost-list-heading small { display:block; font-size:.7rem; line-height:1.4; }
.team-cost-list-heading .button { width:100%; margin-top:auto; text-align:center; }
.team-cost-list-metrics { grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; margin-top:14px; }
.team-cost-list-metrics div { min-width:0; padding:9px; background:#f2f7fb; }
.team-cost-list-metrics dd { overflow-wrap:anywhere; font-size:.83rem; }

.service-provider-list { grid-template-columns:repeat(3,minmax(0,1fr)); gap:.9rem; align-items:start; }
.service-provider-row { min-width:0; border:1px solid #cbdceb; border-radius:15px; background:#fff; overflow:hidden; }
.service-provider-row[open] { grid-column:1 / -1; }
.service-provider-row > summary { grid-template-columns:1fr 1fr; min-height:155px; gap:.75rem; align-items:start; padding:1rem; background:#f3f7fc; }
.service-provider-row > summary span:first-child { grid-column:1 / -1; }
.service-provider-row > summary strong { overflow-wrap:anywhere; }
.service-provider-row[open] > summary { min-height:0; background:#e4eefb; border-left-color:#3f76b5; }

.quote-filter-actions { display:grid; grid-template-columns:repeat(2,minmax(110px,1fr)); gap:10px; width:min(260px,100%); }
.quote-filter-actions .button { display:flex; min-width:0; min-height:46px; align-items:center; justify-content:center; margin:0; padding:10px 16px; text-align:center; }

@media(max-width:1250px) {
    .report-emission-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
    .team-cost-list { grid-template-columns:repeat(2,minmax(0,1fr)); }
    .service-provider-list { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media(max-width:680px) {
    .report-emission-grid,.team-cost-list,.service-provider-list { grid-template-columns:1fr; }
    .service-provider-row > summary { grid-template-columns:1fr; }
    .service-provider-row > summary span:first-child { grid-column:auto; }
    .quote-filter-actions { width:100%; }
    .report-emission-filter { grid-template-columns:1fr 1fr; }
    .report-emission-filter label { grid-column:1 / -1; }
}

/* V365 — ações da relação de receitas */
.revenue-maintenance-cell { min-width:360px; }
.revenue-receipt-history { display:grid; gap:3px; margin-bottom:9px; padding:8px 10px; border-radius:9px; background:#f3f7fb; color:#526b84; }
.revenue-receipt-record { display:grid; grid-template-columns:minmax(150px,1fr) auto; align-items:center; gap:8px; padding:5px 0; border-bottom:1px solid #d9e4ef; }
.revenue-receipt-record:last-child { border-bottom:0; }
.revenue-receipt-edit { position:relative; margin:0; }
.revenue-receipt-edit > summary { padding:6px 9px; border:1px solid #7fa7d3; border-radius:8px; background:#fff; color:#245b98; font-size:.72rem; font-weight:900; cursor:pointer; list-style:none; white-space:nowrap; }
.revenue-receipt-edit > summary::-webkit-details-marker { display:none; }
.revenue-receipt-edit[open] { grid-column:1/-1; }
.revenue-receipt-edit[open] > summary { border-radius:8px 8px 0 0; background:#e7f0fb; }
.revenue-receipt-edit > .compact-form { margin:0; padding:12px; border:1px solid #7fa7d3; border-top:0; border-radius:0 0 8px 8px; background:#fff; }
.revenue-receipt-edit .form-help { grid-column:1/-1; margin:0; color:#526b84; font-size:.75rem; }
.revenue-action-row { display:grid; grid-template-columns:minmax(150px,1.25fr) minmax(125px,1fr) auto; align-items:start; gap:8px; }
.revenue-action { min-width:0; margin:0; }
.revenue-action > summary,
.revenue-cancel-form button { display:flex; min-height:40px; align-items:center; justify-content:center; margin:0; padding:9px 11px; border:1px solid #7fa7d3; border-radius:10px; background:#edf4fc; color:#245b98; font-size:.78rem; font-weight:900; line-height:1.15; text-align:center; cursor:pointer; list-style:none; }
.revenue-action > summary::-webkit-details-marker { display:none; }
.revenue-action > summary::before { content:'+'; margin-right:6px; font-weight:900; }
.revenue-action[open] > summary::before { content:'−'; }
.revenue-action-primary > summary { border-color:#3f76b5; background:#3f76b5; color:#fff; }
.revenue-action[open] { grid-column:1 / -1; }
.revenue-action[open] > summary { border-radius:10px 10px 0 0; }
.revenue-action > .compact-form { margin:0; padding:12px; border:1px solid #a9c4df; border-top:0; border-radius:0 0 10px 10px; background:#f7faff; }
.revenue-cancel-form { margin:0; }
.revenue-cancel-form button { border-color:#e5a49d; background:#fff0ee; color:#a92c21; }
.revenue-cancel-form button:hover { border-color:#b92f24; background:#b92f24; color:#fff; }
@media(max-width:950px){.revenue-maintenance-cell{min-width:280px}.revenue-action-row{grid-template-columns:1fr 1fr}.revenue-cancel-form{grid-column:1/-1}.revenue-cancel-form button{width:100%}}

/* V366 — proporções compactas da relação de receitas */
.revenue-table { width:100%; table-layout:fixed; }
.revenue-table .revenue-col-month { width:11%; }
.revenue-table .revenue-col-origin { width:10%; }
.revenue-table .revenue-col-expected { width:11%; }
.revenue-table .revenue-col-received { width:14%; }
.revenue-table .revenue-col-status { width:10%; }
.revenue-table .revenue-col-actions { width:44%; }
.revenue-table th,
.revenue-table td { vertical-align:top; }

/* V367 — cores semânticas das ações de receitas */
.revenue-action-primary > summary {
    border-color:#74b7a3;
    background:#dcefe8;
    color:#155d4b;
    box-shadow:0 3px 8px rgba(21,93,75,.12);
}
.revenue-action-primary > summary:hover {
    border-color:#4f9e86;
    background:#cbe7dc;
}
form.revenue-cancel-form > button[type="submit"] {
    border-color:#c7463b !important;
    background:#c7463b !important;
    color:#fff !important;
    box-shadow:0 3px 8px rgba(185,52,42,.14);
}
form.revenue-cancel-form > button[type="submit"]:hover {
    border-color:#a72f26 !important;
    background:#a72f26 !important;
    color:#fff !important;
}
@media(max-width:1100px){
    .revenue-table { min-width:980px; table-layout:fixed; }
    .revenue-table .revenue-col-month { width:12%; }
    .revenue-table .revenue-col-origin { width:11%; }
    .revenue-table .revenue-col-expected { width:12%; }
    .revenue-table .revenue-col-received { width:15%; }
    .revenue-table .revenue-col-status { width:12%; }
    .revenue-table .revenue-col-actions { width:38%; }
}
.revenue-allocation-panel{grid-column:1/-1;border:1px solid #b8cde8;border-radius:14px;background:#f4f8fd;padding:14px;margin:8px 0}.revenue-allocation-panel legend{font-weight:800;color:#173d70;padding:0 8px}.revenue-allocation-list{display:grid;gap:8px;max-height:320px;overflow:auto;margin:10px 0}.revenue-allocation-row{display:grid;grid-template-columns:minmax(0,1fr) 180px;align-items:center;gap:14px;background:#fff;border:1px solid #d4e0ef;border-radius:10px;padding:10px 12px}.revenue-allocation-row span{display:grid;gap:3px}.revenue-allocation-row small{color:#51657d}.revenue-allocation-row input{width:100%}@media(max-width:720px){.revenue-allocation-row{grid-template-columns:1fr}}
details.revenue-allocation-panel{padding:0;overflow:hidden}details.revenue-allocation-panel>summary{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:58px;padding:14px 18px;cursor:pointer;list-style:none;font-weight:800;color:#173d70;background:#edf4fc}details.revenue-allocation-panel>summary::-webkit-details-marker{display:none}details.revenue-allocation-panel>summary::after{content:'+';display:grid;place-items:center;width:30px;height:30px;border-radius:9px;background:#d9e8f8;color:#174d87;font-size:20px;line-height:1}details.revenue-allocation-panel[open]>summary::after{content:'\2212'}details.revenue-allocation-panel[open]>summary{border-bottom:1px solid #c9d9ec}.revenue-allocation-content{padding:14px 18px 16px}
.pending-solve-action{display:grid;gap:7px;margin:16px 0;padding:14px;border:1px solid #b9d8d0;border-radius:12px;background:#f2faf7}.pending-solve-action .button{justify-self:start}.pending-solve-action small{color:#526b65}.pending-action-focus{outline:3px solid rgba(30,125,201,.55);outline-offset:3px;animation:pending-action-pulse 1.2s ease-out 2}@keyframes pending-action-pulse{50%{outline-color:#1e7dc9;box-shadow:0 0 0 7px rgba(30,125,201,.10)}}

/* V407 — Cadastro do projeto e planejamento mais legíveis e orientados à tarefa. */
.project-workflow-nav{position:sticky;top:8px;z-index:6;display:flex;gap:7px;overflow-x:auto;margin:0 0 18px;padding:7px;border:1px solid #c7d8e9;border-radius:14px;background:rgba(247,250,253,.96);box-shadow:0 6px 18px rgba(30,58,94,.08);backdrop-filter:blur(9px)}.project-workflow-nav a{flex:0 0 auto;padding:9px 13px;border-radius:9px;color:#315a86;font-size:.79rem;font-weight:850;text-decoration:none;white-space:nowrap}.project-workflow-nav a:hover,.project-workflow-nav a:focus-visible{background:#e3edf8;color:#173f70;outline:none}.project-structure-page,.planning-friendly-page{scroll-margin-top:100px}.project-structure-page section[id],.planning-friendly-page section[id],.planning-friendly-page details[id]{scroll-margin-top:92px}
.project-summary-grid article{position:relative;overflow:hidden;min-height:108px;padding:18px 20px;border:1px solid #d4e0ec;background:linear-gradient(145deg,#fff,#f5f9fd);box-shadow:0 7px 18px rgba(26,55,91,.065)}.project-summary-grid article::before{content:'';position:absolute;inset:0 auto 0 0;width:5px;background:#3577b8}.project-summary-grid article span{color:#62758b;font-size:.73rem;font-weight:900;letter-spacing:.04em;text-transform:uppercase}.project-summary-grid article strong{display:block;margin-top:9px;color:#102d51;font-size:clamp(1.05rem,2vw,1.42rem);line-height:1.25}
.project-structure-page .structure-section,.planning-friendly-page .structure-section{border:1px solid #d2dfeb;border-radius:18px;background:#fff;box-shadow:0 8px 22px rgba(28,57,91,.055)}.project-structure-page .section-title,.planning-friendly-page .section-title{align-items:flex-start}.project-structure-page .section-title h2,.planning-friendly-page .section-title h2{margin:.25rem 0}.project-structure-page .section-title p,.planning-friendly-page .section-title p{margin:.3rem 0 0;color:#637489}
.project-structure-page .structure-card{overflow:hidden;padding:0;border-color:#cbdbea;border-radius:17px;box-shadow:0 8px 20px rgba(28,58,93,.065)}.project-structure-page .structure-card>header{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:start;padding:19px 21px;background:linear-gradient(135deg,#f7fbff,#edf4fb);border-bottom:1px solid #d5e1ed}.project-structure-page .structure-card>header h3{margin:9px 0 3px;color:#102d51;font-size:1.1rem}.project-structure-page .structure-card>header .item-actions{display:grid;justify-items:end;gap:5px}.project-structure-page .structure-card>header .item-actions>a,.project-structure-page .nested-row .item-actions>a{display:inline-flex;padding:6px 10px;border:1px solid #b8cee2;border-radius:8px;background:#fff;color:#245d91;font-weight:800;text-decoration:none}.project-structure-page .structure-card>p{margin:0;padding:15px 21px;color:#52687f;border-bottom:1px solid #e1e8f0}.project-structure-page .nested{margin:0;padding:16px 21px;border-bottom:1px solid #e1e8f0}.project-structure-page .nested:last-child{border-bottom:0}.project-structure-page .nested h4{display:flex;align-items:center;gap:8px;margin:0 0 9px;color:#173d67;font-size:.78rem;letter-spacing:.055em;text-transform:uppercase}.project-structure-page .nested h4::before{content:'';width:9px;height:9px;border-radius:3px;background:#4f8ac2}.project-structure-page .nested-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(290px,.42fr);align-items:center;min-height:66px;margin-top:7px;padding:10px 12px;border:1px solid #e0e8f0;border-radius:11px;background:#fbfcfe}.project-structure-page .nested-row>.item-actions{display:grid;grid-template-columns:auto minmax(150px,1fr) auto;align-items:center;justify-items:end;gap:10px}.project-structure-page .nested-row>.item-actions small{margin:0}.project-structure-page .empty{margin:.5rem 0;padding:13px;border:1px dashed #c7d7e6;border-radius:10px;background:#fafcff;color:#6b7d90}
.project-structure-page .inline-form,.planning-friendly-page .inline-form{overflow:hidden;border:1px solid #bcd2e5;border-radius:15px;background:#f8fbfe}.project-structure-page .inline-form>summary,.planning-friendly-page .inline-form>summary{display:flex;align-items:center;justify-content:space-between;min-height:58px;padding:14px 17px;color:#174f86;font-weight:900;cursor:pointer;list-style:none}.project-structure-page .inline-form>summary::after,.planning-friendly-page .inline-form>summary::after{content:'+';display:grid;place-items:center;width:29px;height:29px;border-radius:9px;background:#deebf7;font-size:1.15rem}.project-structure-page .inline-form[open]>summary,.planning-friendly-page .inline-form[open]>summary{border-bottom:1px solid #d2e0ec;background:#eef5fb}.project-structure-page .inline-form[open]>summary::after,.planning-friendly-page .inline-form[open]>summary::after{content:'−'}.project-structure-page .inline-form>form,.planning-friendly-page .inline-form>form{padding:17px}
.project-structure-page .form-grid>label,.project-structure-page .wide-field,.planning-friendly-page .form-grid>label,.planning-friendly-page .wide-field,.project-friendly-form .form-grid>label,.project-friendly-form .wide-field{display:grid;align-content:start;gap:7px;padding:11px;border:1px solid #d8e3ed;border-radius:11px;background:#fff;color:#28445f;font-weight:800}.project-structure-page input,.project-structure-page select,.project-structure-page textarea,.planning-friendly-page input,.planning-friendly-page select,.planning-friendly-page textarea,.project-friendly-form input,.project-friendly-form select,.project-friendly-form textarea{min-height:45px;border-color:#aebfd1;background:#fbfdff}.project-structure-page textarea,.planning-friendly-page textarea,.project-friendly-form textarea{min-height:96px}.project-structure-page input:focus,.project-structure-page select:focus,.project-structure-page textarea:focus,.planning-friendly-page input:focus,.planning-friendly-page select:focus,.planning-friendly-page textarea:focus,.project-friendly-form input:focus,.project-friendly-form select:focus,.project-friendly-form textarea:focus{border-color:#3478b8;outline:0;box-shadow:0 0 0 3px rgba(52,120,184,.14);background:#fff}.project-structure-page label:has(>input[required])::first-letter,.project-structure-page label:has(>select[required])::first-letter,.planning-friendly-page label:has(>input[required])::first-letter,.planning-friendly-page label:has(>select[required])::first-letter{color:#173e68}
.project-create-grid{align-items:start}.project-create-grid .inline-form{margin:0}.planning-friendly-page .classification-grid>div{padding:15px;border:1px solid #d6e2ed;border-radius:15px;background:#fff;box-shadow:0 6px 16px rgba(31,60,94,.05)}.planning-friendly-page .classification-list>div{min-height:45px;padding:8px 10px;border-radius:8px}.planning-friendly-page #gerador-despesas{margin:18px 0;border-color:#91b8dc;box-shadow:0 7px 20px rgba(32,81,128,.08)}.planning-friendly-page #gerador-despesas>summary{font-size:1rem}.planning-friendly-page .planning-filter-bar{padding:15px;border-color:#c4d8e8;background:#f4f8fc}.planning-friendly-page .planning-filter-bar label{display:grid;gap:6px;color:#28445f;font-weight:800}.planning-friendly-page .table-shell{border:1px solid #cedce9;border-radius:13px}.planning-friendly-page .table-shell thead th{position:sticky;top:0;background:#eaf2f9;color:#244768;font-size:.72rem;letter-spacing:.035em;text-transform:uppercase}.planning-friendly-page .table-shell tbody tr:hover{background:#f5f9fd}.planning-friendly-page .table-shell td{vertical-align:middle}.planning-friendly-page .table-shell td small{display:block;margin-top:5px;color:#61758a}
@media(max-width:900px){.project-structure-page .structure-card>header{grid-template-columns:1fr}.project-structure-page .structure-card>header .item-actions{justify-items:start}.project-structure-page .nested-row{grid-template-columns:1fr}.project-structure-page .nested-row>.item-actions{grid-template-columns:1fr;justify-items:start}.project-workflow-nav{top:4px}}@media(max-width:650px){.project-workflow-nav{margin-inline:-4px}.project-summary-grid article{min-height:90px}.project-structure-page .structure-card>header,.project-structure-page .structure-card>p,.project-structure-page .nested{padding-inline:14px}.project-structure-page .form-grid>label,.planning-friendly-page .form-grid>label,.project-friendly-form .form-grid>label{padding:9px}}

/* V408 — fatos operacionais de metas, etapas e ações em primeiro plano. */
.project-structure-page .structure-facts{display:flex!important;align-items:stretch!important;justify-content:flex-end!important;gap:8px!important;flex-wrap:wrap}.project-structure-page .structure-facts>span{display:grid;align-content:center;gap:4px;min-height:52px;padding:8px 11px;border:1px solid #c8d9e8;border-radius:10px;background:#fff;color:#284864;font-size:.82rem;line-height:1.2;white-space:nowrap}.project-structure-page .structure-facts>span>b{color:#718399;font-size:.63rem;font-weight:900;letter-spacing:.055em;text-transform:uppercase}.project-structure-page .structure-facts .structure-value{border-color:#afd7c8;background:#f0faf6;color:#075f50}.project-structure-page .structure-facts .structure-value strong{color:#075f50;font-size:.92rem}.project-structure-page .structure-facts .structure-period{border-color:#b9d1e8;background:#f3f8fd;color:#173f69}.project-structure-page .structure-facts .structure-measure{border-color:#d8c7ea;background:#faf6fe;color:#633d85}.project-structure-page .structure-facts>a{align-self:center;min-height:42px;padding:10px 13px!important;border-color:#8eb5d8!important;background:#edf5fc!important;color:#174f86!important}.project-structure-page .structure-facts>a:hover,.project-structure-page .structure-facts>a:focus-visible{background:#dcecf9!important;border-color:#4d87ba!important;outline:none}.project-structure-page .structure-card>header .structure-facts{max-width:720px}.project-structure-page .nested-row>.structure-facts{display:flex!important;justify-content:flex-end!important}.project-structure-page .nested-row{grid-template-columns:minmax(260px,1fr) minmax(500px,auto)}
@media(max-width:1100px){.project-structure-page .nested-row{grid-template-columns:1fr}.project-structure-page .nested-row>.structure-facts{justify-content:flex-start!important}}@media(max-width:650px){.project-structure-page .structure-facts{display:grid!important;grid-template-columns:1fr 1fr;width:100%}.project-structure-page .structure-facts>span{min-width:0;white-space:normal}.project-structure-page .structure-facts>a{justify-content:center}.project-structure-page .structure-facts .structure-period{grid-column:1/-1}}

/* V409 — painel de indicadores mais compacto, legível e orientado aos resultados. */
.indicator-summary-grid article{position:relative;overflow:hidden;min-height:108px;padding:17px 19px;border:1px solid #cfe0e8;background:linear-gradient(145deg,#fff,#f2f8fa);box-shadow:0 7px 18px rgba(18,62,78,.06)}.indicator-summary-grid article::before{content:'';position:absolute;inset:0 auto 0 0;width:5px;background:#27806d}.indicator-summary-grid article>span{color:#607985;font-size:.7rem;font-weight:900;letter-spacing:.045em;text-transform:uppercase}.indicator-summary-grid article>strong{display:block;margin-top:8px;color:#103a51;font-size:clamp(1.45rem,3vw,2rem)}.indicator-summary-grid article>small{display:block;margin-top:5px;color:#647984}.indicator-summary-grid .indicator-project-index{background:linear-gradient(145deg,#eef9f5,#e4f3ed)}
.indicator-create-panel{overflow:hidden;margin:16px 0;border:1px solid #9fcdbf!important;border-radius:16px!important;background:#f5fbf9!important;box-shadow:0 7px 20px rgba(24,91,75,.07)}.indicator-create-panel>summary{display:flex!important;align-items:center;justify-content:space-between;min-height:68px;padding:15px 18px!important;list-style:none;color:#155f50!important}.indicator-create-panel>summary>span{display:grid;gap:3px}.indicator-create-panel>summary strong{font-size:1rem}.indicator-create-panel>summary small{color:#607b74;font-weight:500}.indicator-create-panel>summary::after{content:'+';display:grid;place-items:center;width:32px;height:32px;border-radius:10px;background:#dcefe9;color:#176a59;font-size:1.25rem;font-weight:900}.indicator-create-panel[open]>summary{border-bottom:1px solid #cde0da;background:#edf8f4}.indicator-create-panel[open]>summary::after{content:'−'}.indicator-create-panel>form{padding:18px}.indicator-create-panel .form-grid>label,.indicator-create-panel .wide-field{display:grid;align-content:start;gap:7px;padding:11px;border:1px solid #d4e3df;border-radius:11px;background:#fff;color:#244c44;font-weight:800}.indicator-create-panel input,.indicator-create-panel select,.indicator-create-panel textarea{min-height:45px;border-color:#aabfba;background:#fcfefd}.indicator-create-panel input:focus,.indicator-create-panel select:focus,.indicator-create-panel textarea:focus{border-color:#26816d;outline:0;box-shadow:0 0 0 3px rgba(38,129,109,.14);background:#fff}
.indicator-level-nav{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:9px;margin:17px 0}.indicator-level-nav span{display:flex;align-items:center;gap:9px;min-height:51px;padding:9px 12px;border:1px solid #cee0da;border-radius:12px;background:#f7fbfa;color:#315d55;font-size:.78rem;font-weight:800}.indicator-level-nav b{display:grid;place-items:center;min-width:30px;height:30px;padding:0 7px;border-radius:9px;background:#dff1eb;color:#116451;font-size:.88rem}.indicator-organized-list{gap:10px}.indicator-level-group{border-color:#c8dbd5;border-left:5px solid #3b8b78;border-radius:14px;box-shadow:0 6px 17px rgba(19,68,58,.045)}.indicator-level-group>summary{min-height:72px;padding:14px 17px;background:linear-gradient(135deg,#f8fcfb,#f1f8f6)}.indicator-level-group>summary>span{padding-left:38px}.indicator-level-group>summary>span:before{width:27px;height:27px}.indicator-level-group>summary strong{font-size:1rem}.indicator-level-group>summary>b{min-width:38px;height:34px;font-size:.9rem}.indicator-level-group[open]{box-shadow:0 9px 24px rgba(19,68,58,.08)}.indicator-level-group[open]>summary{border-bottom:1px solid #d1e0dc}.indicator-level-group.is-empty{border-left-color:#c3d0cd;box-shadow:none}.indicator-level-group.is-empty>summary{min-height:60px;background:#fafcfc;color:#60716e;cursor:default}.indicator-level-group.is-empty>summary>span:before{content:'0';background:#edf2f1;color:#82908d;font-size:.72rem}.indicator-level-group.is-empty[open]>summary>span:before{content:'0';background:#edf2f1;color:#82908d}.indicator-level-group.is-empty .indicator-level-content{display:none}.indicator-level-group.is-empty>summary>b{background:#edf2f1;color:#72817e}.indicator-level-content{padding:12px;background:#fbfdfc}.indicator-level-empty{padding:13px}
.indicator-context-group{border-color:#d0e1dc;background:#fff}.indicator-context-group>summary{min-height:58px;padding:11px 13px}.indicator-context-group[open]>summary{border-bottom:1px solid #d9e5e2;background:#f5faf8}.indicator-list-header{background:#e7f3ef}.indicator-list-row{padding:14px;border-color:#d5e3df}.indicator-list-row:hover{position:relative;z-index:1;border-color:#9ec9bd;background:#fbfefd;box-shadow:0 5px 14px rgba(26,89,73,.07)}.indicator-list-name>strong{font-size:1rem}.indicator-list-achievement strong{display:inline-flex;padding:6px 9px;border-radius:9px;background:#e4f4ee;font-size:1.02rem}.indicator-list-current,.indicator-list-target,.indicator-weight-cell{padding:8px;border-radius:9px;background:#f4f8f7}.indicator-row-actions{display:flex;align-items:center;gap:5px;flex-wrap:wrap}.indicator-list-action .indicator-row-actions .button{width:auto;min-height:36px;flex:1 1 85px}.indicator-measurement-toggle{border-color:#8cc5b5!important;background:#eaf7f3!important;color:#126552!important}
@media(max-width:980px){.indicator-level-nav{grid-template-columns:repeat(3,minmax(0,1fr))}.indicator-row-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}.indicator-list-action .indicator-row-actions .button{width:100%}}@media(max-width:650px){.indicator-summary-grid article{min-height:90px}.indicator-level-nav{grid-template-columns:1fr 1fr}.indicator-level-nav span:last-child{grid-column:1/-1}.indicator-level-group>summary{min-height:64px}.indicator-row-actions{grid-template-columns:1fr}.indicator-create-panel>form{padding:12px}}
.indicator-list-row>div:nth-child(3),.indicator-list-row>div:nth-child(4),.indicator-list-row>div:nth-child(5),.indicator-list-row>.indicator-weight-cell{padding:8px;border-radius:9px;background:#f4f8f7}

/* V410 — cabeçalho dos vínculos em três colunas iguais e centralizadas. */
.indicator-context-group>summary{position:relative;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-items:center;gap:0;min-height:72px;padding:12px 62px}.indicator-context-group>summary:before{position:absolute;left:14px;top:50%;grid-column:auto;transform:translateY(-50%)}.indicator-context-group>summary>span,.indicator-context-group>summary>strong,.indicator-context-group>summary>small{display:flex;align-items:center;justify-content:center;min-width:0;height:100%;padding:7px 16px;text-align:center;white-space:normal}.indicator-context-group>summary>span{border-right:1px solid #dce7e3}.indicator-context-group>summary>strong{border-right:1px solid #dce7e3;color:#103b58;font-size:.9rem;line-height:1.3}.indicator-context-group>summary>small{color:#617974;font-size:.75rem;line-height:1.35}.indicator-context-group>summary>b{position:absolute;right:14px;top:50%;transform:translateY(-50%);min-width:31px;padding:6px 8px}.indicator-context-group[open]>summary{background:#f2f9f6}
@media(max-width:760px){.indicator-context-group>summary{grid-template-columns:1fr;padding:13px 54px}.indicator-context-group>summary>span,.indicator-context-group>summary>strong,.indicator-context-group>summary>small{justify-content:flex-start;height:auto;padding:4px 8px;text-align:left;border-right:0}.indicator-context-group>summary>span{font-size:.65rem}.indicator-context-group>summary>small{grid-column:auto}}

/* V411 — central de triagem dos envios vista pela equipe técnica. */
.client-technical-heading{margin-bottom:9px;padding-block:2px}.client-technical-heading h1{font-size:clamp(1.9rem,3vw,2.65rem)}.client-technical-heading p{max-width:760px}.technical-review-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:11px;margin:15px 0}.technical-review-summary article{position:relative;overflow:hidden;min-height:106px;padding:16px 18px;border:1px solid #cfdeeb;border-radius:15px;background:linear-gradient(145deg,#fff,#f4f8fc);box-shadow:0 6px 17px rgba(29,58,93,.055)}.technical-review-summary article::before{content:'';position:absolute;inset:0 auto 0 0;width:5px;background:#4a7cae}.technical-review-summary article.attention::before{background:#d28219}.technical-review-summary span{display:block;color:#61758a;font-size:.7rem;font-weight:900;letter-spacing:.045em;text-transform:uppercase}.technical-review-summary strong{display:block;margin:6px 0 2px;color:#102f52;font-size:1.8rem;line-height:1}.technical-review-summary small{color:#66798d}.technical-review-nav{position:sticky;top:7px;z-index:7;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;margin:13px 0 18px;padding:8px;border:1px solid #c7d8e8;border-radius:15px;background:rgba(246,249,252,.96);box-shadow:0 7px 20px rgba(29,58,93,.09);backdrop-filter:blur(9px)}.technical-review-nav>a{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;min-height:66px;padding:10px 11px;border:1px solid transparent;border-radius:11px;color:#21496f;text-decoration:none}.technical-review-nav>a:hover,.technical-review-nav>a:focus-visible{border-color:#a8c2da;background:#fff;outline:none}.technical-review-icon{display:grid;place-items:center;width:38px;height:38px;border-radius:10px;background:#e5eff8;color:#28679e}.technical-review-icon>.nav-icon{width:21px;height:21px}.technical-review-nav>a>span:nth-child(2){display:grid;gap:3px;min-width:0}.technical-review-nav strong{font-size:.84rem}.technical-review-nav small{overflow:hidden;color:#667b8f;font-size:.68rem;line-height:1.3;text-overflow:ellipsis}.technical-review-nav b{display:grid;place-items:center;min-width:29px;height:29px;padding:0 7px;border-radius:999px;background:#e8eef4;color:#52708c;font-size:.76rem}.technical-review-nav b.has-pending{background:#fff0d9;color:#a55b05}.technical-review-nav~section[id]{scroll-margin-top:100px}.technical-review-nav~section.card{border-color:#cfdeeb;box-shadow:0 7px 19px rgba(28,57,91,.05)}.technical-review-nav~section.card>.section-heading{padding-bottom:12px;border-bottom:1px solid #e0e8f0}.technical-review-nav~section.card>.section-heading h2{color:#12365c}.technical-review-nav~section.card>.section-heading p{max-width:780px}
@media(max-width:1050px){.technical-review-nav{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:720px){.technical-review-summary{grid-template-columns:1fr}.technical-review-summary article{min-height:88px}.technical-review-nav{position:static;grid-template-columns:1fr}.technical-review-nav>a{min-height:58px}}

/* V412 — ações de formulários com hierarquia e intenção visuais claras. */
.technical-survey-create{overflow:hidden;margin:15px 0;border:1px solid #9fc4e2!important;border-radius:14px!important;background:#f6faff!important;box-shadow:0 6px 17px rgba(31,73,111,.06)}.technical-survey-create>summary{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:11px;min-height:67px;padding:13px 16px;cursor:pointer;list-style:none;color:#174f86}.technical-survey-create>summary::-webkit-details-marker,.technical-survey-card>summary::-webkit-details-marker{display:none}.technical-survey-create>summary::after{content:'+';display:grid;place-items:center;width:31px;height:31px;border-radius:9px;background:#dcebf8;color:#195d96;font-size:1.2rem;font-weight:900}.technical-survey-create[open]>summary::after{content:'−'}.technical-survey-create[open]>summary{border-bottom:1px solid #d1dfeb;background:#eef6fd}.technical-survey-create-icon{display:grid;place-items:center;width:39px;height:39px;border-radius:10px;background:#dcecf9;color:#23689f}.technical-survey-create-icon>.nav-icon{width:21px;height:21px}.technical-survey-create>summary>span:nth-child(2){display:grid;gap:3px}.technical-survey-create>summary small{color:#657a8e;font-weight:500}.technical-survey-create>form{padding:17px}
.technical-survey-card{overflow:hidden;margin:12px 0!important;padding:0!important;border:1px solid #cadbe9!important;border-radius:14px!important;background:#fff!important;box-shadow:0 6px 17px rgba(30,60,95,.055)}.technical-survey-card>summary{position:relative;display:block;min-height:60px;padding:18px 54px 18px 18px;cursor:pointer;list-style:none;color:#12375e;line-height:1.4}.technical-survey-card>summary::after{content:'+';position:absolute;right:16px;top:50%;display:grid;place-items:center;width:30px;height:30px;transform:translateY(-50%);border-radius:9px;background:#e6eff7;color:#245d8e;font-weight:900}.technical-survey-card[open]>summary::after{content:'−'}.technical-survey-card[open]>summary{border-bottom:1px solid #dce6ef;background:#f7fafc}.technical-survey-card>p,.technical-survey-card>.technical-survey-actions,.technical-survey-card>.table-shell,.technical-survey-card>.form-actions:not(.technical-survey-actions){margin-left:17px;margin-right:17px}.technical-survey-card>p{color:#526b82}
.technical-survey-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:14px;margin-bottom:16px;padding:12px;border:1px solid #dde7ef;border-radius:12px;background:#f7fafc}.technical-survey-actions form{margin:0}.technical-survey-actions .button{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:43px;padding:9px 14px;border-radius:10px;font-size:.8rem;font-weight:850;text-decoration:none;box-shadow:none}.technical-survey-actions .button>span{font-size:1rem;line-height:1}.survey-action-edit{border:1px solid #2f75ad;background:#2f75ad;color:#fff}.survey-action-edit:hover{background:#245f90;color:#fff}.survey-action-duplicate{border:1px solid #a9c3d9;background:#fff;color:#245b87}.survey-action-duplicate:hover{background:#eaf3fa}.survey-action-toggle{border:1px solid #e5bd72;background:#fff8e9;color:#8a5706}.survey-action-toggle:hover{background:#ffefca}.survey-action-delete{border:1px solid #e2a7a2;background:#fff4f3;color:#a52820}.survey-action-delete:hover{background:#fde5e3;color:#8c1d16}
@media(max-width:650px){.technical-survey-actions{display:grid;grid-template-columns:1fr 1fr}.technical-survey-actions form,.technical-survey-actions .button{width:100%}}@media(max-width:430px){.technical-survey-actions{grid-template-columns:1fr}}

/* V413 — Banco de Formulários e aplicações com bases de respostas independentes. */
.survey-template-bank{overflow:hidden;margin:15px 0!important;padding:0!important;border:1px solid #a9cbbf!important;border-radius:15px!important;background:#f7fbfa!important;box-shadow:0 7px 20px rgba(22,87,69,.065)}.survey-template-bank>summary{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:11px;min-height:70px;padding:14px 17px;cursor:pointer;list-style:none;color:#145c4d}.survey-template-bank>summary::-webkit-details-marker{display:none}.survey-template-bank>summary>span:nth-child(2){display:grid;gap:3px}.survey-template-bank>summary small{color:#617a74;font-weight:500}.survey-template-bank>summary>b{display:grid;place-items:center;min-width:34px;height:34px;padding:0 8px;border-radius:999px;background:#dcefe9;color:#146552;font-size:.82rem}.survey-template-bank[open]>summary{border-bottom:1px solid #cfe0db;background:#eff8f5}.survey-template-bank-body{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding:14px}.survey-template-card{padding:15px;border:1px solid #d2e1dc;border-radius:13px;background:#fff;box-shadow:0 5px 14px rgba(24,77,63,.045)}.survey-template-card h3{margin:.3rem 0;color:#113d55}.survey-template-card header small,.survey-template-card>p{color:#647a75}.survey-template-card>form{margin-top:12px;padding-top:12px;border-top:1px solid #e0e9e6}.survey-template-card .form-grid>label{display:grid;gap:6px;padding:9px;border:1px solid #d9e5e1;border-radius:10px;background:#fbfdfc;color:#294f47;font-weight:800}.survey-template-card input,.survey-template-card select{min-height:43px;border-color:#aec5be;background:#fff}.survey-action-bank{border:1px solid #83b9aa;background:#eaf7f3;color:#116652}.survey-action-bank:hover{background:#d8efe8;color:#0a5543}
@media(max-width:900px){.survey-template-bank-body{grid-template-columns:1fr}}@media(max-width:650px){.survey-template-bank-body{padding:9px}.survey-template-card{padding:12px}}

/* Execução do objeto — edição em largura total e evidências mais visíveis. */
.execution-edit-row[hidden]{display:none}.execution-edit-row>td{padding:0!important;border-bottom:2px solid #91b5d3;background:#eef5fb}.execution-inline-edit-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:18px 22px 14px;border-bottom:1px solid #c7dbea;background:linear-gradient(135deg,#e3f0fa,#f7fbfe)}.execution-inline-edit-heading span{color:#2d6c9f;font-size:.7rem;font-weight:950;letter-spacing:.08em;text-transform:uppercase}.execution-inline-edit-heading h3{margin:3px 0;color:#143c62}.execution-inline-edit-heading p{margin:0;color:#5e758a}.execution-inline-edit-close{display:grid;place-items:center;flex:0 0 auto;width:36px;height:36px;border:1px solid #a9c4d9;border-radius:10px;background:#fff;color:#285b85;font-size:1.4rem;cursor:pointer}.execution-inline-edit-form{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px!important;width:100%;margin:0!important;padding:20px 22px!important;border:0!important;border-radius:0!important;background:#f7fafc!important}.execution-inline-edit-form>input[type=hidden]{display:none}.execution-inline-edit-form>label{padding:12px;border:1px solid #cedeea;border-radius:11px;background:#fff;color:#294c6b;font-weight:850}.execution-inline-edit-form>label:has(textarea){grid-column:span 2}.execution-inline-edit-form textarea{min-height:105px;resize:vertical}.execution-inline-edit-form>.execution-indicator-picker{grid-column:1/-1;padding:16px;border:1px solid #bcd3e4;border-radius:12px;background:#fff}.execution-inline-edit-form>.execution-indicator-picker h3{margin:0 0 10px;color:#194d78}.execution-inline-edit-form>button[type=submit]{grid-column:4;justify-self:stretch;min-height:44px}.execution-edit-toggle[aria-expanded=true]{border-color:#2e719f;background:#dcecf8;color:#174f7a}.execution-evidence-section{padding:22px;border:1px solid #a9c8df;border-radius:18px;background:linear-gradient(180deg,#f5faff,#fff 180px);box-shadow:0 8px 24px rgba(29,72,108,.07)}.execution-evidence-section>.section-title{margin-bottom:18px;padding:17px 18px;border-left:5px solid #347aaa;border-radius:12px;background:#eaf4fb}.execution-evidence-section>.section-title h2{color:#123e65}.execution-evidence-section>.section-title p{max-width:850px;color:#4e6a82}.execution-evidence-section>.evidence-goal{border-color:#9fc3dc;box-shadow:0 5px 15px rgba(32,77,112,.06)}.execution-evidence-section .evidence-goal>summary{min-height:72px;background:#eaf4fb;color:#174d75}.execution-evidence-section .evidence-stage{border-left:5px solid #6da2c8}.execution-evidence-section .evidence-action{border-left:5px solid #79b7a5}.evidence-period-card{border:1px solid #c6d9e7!important;box-shadow:0 5px 14px rgba(25,68,102,.055)}.evidence-period-card>header{background:#f4f8fc}.evidence-upload-form{margin:14px!important;border:1px solid #79aaca!important;border-radius:13px!important;background:#f0f7fc!important;box-shadow:0 5px 15px rgba(29,75,111,.06)}.evidence-upload-form>summary{position:relative;display:flex;align-items:center;min-height:52px;padding:13px 50px 13px 16px!important;color:#185681!important;font-weight:900!important;cursor:pointer;list-style:none}.evidence-upload-form>summary:after{content:'+';position:absolute;right:14px;display:grid;place-items:center;width:29px;height:29px;border-radius:9px;background:#2f78a8;color:#fff;font-size:1.15rem}.evidence-upload-form[open]>summary:after{content:'−'}.evidence-upload-form[open]>summary{border-bottom:1px solid #bcd4e5;background:#e4f1fa}.evidence-upload-form>form{margin:0!important;padding:17px!important;background:#fff}.evidence-upload-form input,.evidence-upload-form select,.evidence-upload-form textarea{border-color:#afc9dc;background:#fff}.evidence-upload-form button{min-height:44px}.evidence-file-list{margin:14px!important}.evidence-file-list>div{padding:12px!important;border:1px solid #d7e3ec!important;background:#fff!important}.execution-new-record{overflow:hidden;border:1px solid #8ebbd6!important;border-radius:16px!important;background:#f3f9fd!important;box-shadow:0 7px 20px rgba(28,75,110,.07)}.execution-new-record>summary{position:relative;min-height:62px;padding:19px 58px 19px 19px!important;color:#164f79!important;font-size:1rem;font-weight:900;list-style:none}.execution-new-record>summary:after{content:'+';position:absolute;right:17px;top:50%;display:grid;place-items:center;width:32px;height:32px;transform:translateY(-50%);border-radius:10px;background:#2d75a5;color:#fff;font-size:1.3rem}.execution-new-record[open]>summary:after{content:'−'}.execution-new-record[open]>summary{border-bottom:1px solid #bed5e5;background:#e8f4fb}
@media(max-width:1000px){.execution-inline-edit-form{grid-template-columns:repeat(2,minmax(0,1fr))}.execution-inline-edit-form>button[type=submit]{grid-column:2}}@media(max-width:650px){.execution-inline-edit-heading{padding:15px}.execution-inline-edit-form{grid-template-columns:1fr;padding:15px!important}.execution-inline-edit-form>label:has(textarea),.execution-inline-edit-form>button[type=submit]{grid-column:auto}.execution-evidence-section{padding:13px}.evidence-upload-form>form .form-grid{grid-template-columns:1fr}}
.execution-report-selector{grid-template-columns:repeat(5,minmax(0,1fr))}.execution-complete-preview{display:grid;gap:14px}.execution-complete-preview>section{padding:17px;border:1px solid #c7d9e6;border-radius:12px;background:#fff}.execution-complete-preview h2{margin:0 0 10px;color:#174f78;font-size:1rem;text-align:left}.execution-complete-preview p{text-align:justify;line-height:1.55}.execution-complete-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.execution-complete-summary>div{display:grid;gap:3px;padding:12px;border-radius:9px;background:#edf5fa;text-align:center}.execution-complete-summary strong{color:#174f78;font-size:1.4rem}.execution-complete-summary span{color:#5e7485;font-size:.72rem}.execution-complete-action{margin:10px 0;border:1px solid #bed1df;background:#fbfdfe}.execution-complete-action>header{display:flex;justify-content:space-between;gap:12px;padding:10px 12px;background:#e8f2f8;color:#174f78}.execution-complete-action>p{margin:0;padding:9px 12px;border-top:1px solid #d6e2ea}.execution-complete-preview>aside{display:flex;justify-content:space-between;gap:12px;padding:14px;border-left:5px solid #2c719e;background:#edf5fa;color:#275777}@media(max-width:1100px){.execution-report-selector{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:650px){.execution-report-selector,.execution-complete-summary{grid-template-columns:1fr}.execution-complete-action>header,.execution-complete-preview>aside{align-items:flex-start;flex-direction:column}}
.execution-complete-strategy{margin:10px 0;padding:13px;border-left:5px solid #347da8;background:#f5f9fc}.execution-complete-strategy h3{margin:0 0 7px;color:#174f78}.execution-complete-strategy>div{margin-top:9px;padding:9px 11px;border:1px solid #d3e0e9;background:#fff}.execution-complete-strategy>div p{margin-bottom:0}
.project-strategy-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.project-strategy-grid>article{padding:15px;border:1px solid #cfdee8;border-radius:12px;background:#f8fbfd}.project-strategy-grid h3{margin:0 0 8px;color:#174f78}.project-strategy-grid p{text-align:justify;line-height:1.55}@media(max-width:760px){.project-strategy-grid{grid-template-columns:1fr}}
.execution-results-cell>span,.execution-results-cell>small{display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:3;line-clamp:3;white-space:normal;overflow-wrap:anywhere}.execution-results-cell>span{line-height:1.45}.execution-results-cell>small{line-height:1.35}
.survey-library-category{grid-column:1/-1;display:flex;align-items:end;gap:10px;padding:12px;border:1px dashed #9ebfb5;border-radius:12px;background:#fff}.survey-library-category label{display:grid;gap:5px;flex:1;font-weight:800;color:#315c52}.survey-library-category input{min-height:42px}.survey-template-card>header{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.survey-template-card>header>form{margin:0;padding:0;border:0}.survey-library-favorite{border:0;background:#fff4c8;color:#a96b00;border-radius:10px;min-width:42px;height:42px;font-size:1.55rem;cursor:pointer}.survey-library-meta{display:flex;flex-wrap:wrap;gap:6px;margin-top:5px}.survey-library-meta span{padding:4px 8px;border-radius:999px;background:#edf5f2;color:#315f54;font-size:.72rem;font-weight:800}.survey-library-tools{display:grid;gap:8px;margin-top:12px;padding-top:12px;border-top:1px solid #dce8e4}.survey-library-tools>details{border:1px solid #d6e4df;border-radius:10px;background:#fbfdfc}.survey-library-tools>details>summary{padding:11px 13px;cursor:pointer;color:#155f50;font-weight:900}.survey-library-tools>details>form,.survey-library-history{display:grid;gap:10px;padding:0 12px 12px}.survey-library-tools label{display:grid;gap:5px;color:#315c52;font-weight:800}.survey-library-tools select,.survey-library-tools textarea{width:100%;border-color:#abc5bd;background:#fff}.survey-library-history>div{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:8px;border-top:1px solid #e2ebe8}.survey-library-history span,.survey-library-history small{display:grid;gap:2px}.survey-library-tools>.button-danger{justify-self:start}@media(max-width:650px){.survey-library-category{align-items:stretch;flex-direction:column}.survey-template-card>header{align-items:flex-start}.survey-library-history>div{align-items:flex-start;flex-direction:column}}
