.analytic-row-actions .budget-item-menu-trigger{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;min-height:32px;padding:0;color:#554b3d;background:transparent;border:1px solid #e3e0da;border-radius:6px}.analytic-row-actions .budget-item-menu-trigger:hover,.analytic-row-actions .budget-item-menu-trigger[aria-expanded=true]{background:#f2f0eb;border-color:#c9bfae}.analytic-table th:last-child.analytic-print-hide,.analytic-table td:last-child.analytic-print-hide{width:64px;min-width:64px}.budget-item-menu{position:fixed;z-index:1600;width:192px;padding:6px;background:#fff;border:1px solid #e2ded7;border-radius:6px;box-shadow:0 8px 24px #28231c26;box-sizing:border-box}.budget-item-menu>button{display:flex;align-items:center;gap:9px;width:100%;min-height:38px;padding:8px 10px;border:0;border-radius:4px;background:transparent;text-align:left;color:#373128;font-size:13px;font-weight:500;white-space:nowrap}.budget-item-menu>button:hover,.budget-item-menu>button:focus-visible{background:#f2f0eb;outline:2px solid #b38a45;outline-offset:-2px}.analytic-item-row .budget-item-notes,.analytic-modal .budget-item-origin{display:block;margin:5px 0 0;color:#68717d;font-size:12px;line-height:1.45;font-weight:400;white-space:pre-wrap;overflow-wrap:anywhere}.analytic-item-row .budget-item-origin{color:#526f80}@media print{.budget-item-menu{display:none!important}}.dynamic-analysis{display:grid;gap:12px}.dynamic-analysis .sr-only{clip:rect(0,0,0,0);clip-path:inset(50%);height:1px;overflow:hidden;position:absolute;white-space:nowrap;width:1px}.dynamic-analysis-header,.modal-title{align-items:center;display:flex;gap:18px;justify-content:space-between}.dynamic-analysis-header{background:var(--erp-surface);border:1px solid var(--erp-border);border-radius:var(--erp-radius);padding:18px 22px}.dynamic-analysis-header h2,.dynamic-analysis-header p{margin:0}.dynamic-analysis-header h2{align-items:center;display:flex;font-size:clamp(20px,1.6vw,25px);gap:8px}.dynamic-analysis-header>div:first-child{display:grid;gap:5px}.dynamic-analysis-header p{color:var(--erp-muted)}.analysis-info{align-items:center;border:1.5px solid currentColor;border-radius:50%;display:inline-flex;font-size:10px;height:17px;justify-content:center;width:17px}.dynamic-analysis-actions{align-items:center;display:flex;flex-wrap:wrap;gap:8px}.dynamic-analysis-actions>button,.analysis-export>button{align-items:center;background:var(--erp-surface);border-color:var(--erp-border);border-radius:7px;display:inline-flex;gap:7px;min-height:40px}.analysis-export,.analysis-field-choice,.analysis-filter-control{position:relative}.analysis-export-menu,.analysis-field-actions{background:var(--erp-surface);border:1px solid var(--erp-border);border-radius:10px;box-shadow:0 12px 30px #0f172a24;display:grid;gap:4px;padding:6px;position:absolute;z-index:30}.analysis-export-menu{min-width:120px;right:0;top:calc(100% + 5px)}.analysis-export-menu button,.analysis-field-actions button{border:0;justify-content:flex-start;min-height:32px;text-align:left}.analysis-builder,.analysis-active-filters,.analysis-empty{background:var(--erp-surface);border:1px solid var(--erp-border);border-radius:var(--erp-radius)}.analysis-builder{overflow:visible}.analysis-builder-content{display:grid;gap:16px;grid-template-columns:minmax(330px,.72fr) minmax(0,2fr);padding:14px}.analysis-fields{background:#fbfbfa;border:1px solid var(--erp-border);border-radius:12px;min-width:0;padding:11px}.analysis-fields-heading{align-items:center;display:flex;gap:10px;justify-content:space-between;margin-bottom:9px}.analysis-fields-heading>strong{white-space:nowrap}.analysis-fields-heading label{margin:0;max-width:190px;position:relative;width:100%}.analysis-fields-heading input{min-height:34px;padding-right:30px;width:100%}.analysis-fields-heading label>span:last-child{color:var(--erp-muted);pointer-events:none;position:absolute;right:10px;top:8px}.analysis-field-list{display:grid;gap:6px;grid-template-columns:repeat(3,minmax(0,1fr));max-height:218px;overflow:auto;padding-right:3px}.analysis-field-choice>button{align-items:center;background:var(--erp-surface);border-color:var(--erp-border);border-radius:6px;display:flex;font-size:11px;gap:6px;justify-content:flex-start;min-height:32px;overflow:hidden;padding:5px 7px;text-align:left;text-overflow:ellipsis;white-space:nowrap;width:100%}.analysis-field-choice>button.selected,.analysis-field-choice>button:hover{border-color:var(--erp-primary);color:var(--erp-primary)}.analysis-field-choice>button:active,.analysis-zone-chip:active{cursor:grabbing}.analysis-field-actions{left:12px;min-width:205px;top:calc(100% + 3px)}.analysis-zones{display:grid;gap:10px;grid-template-columns:repeat(2,minmax(0,1fr))}.analysis-drop-zone{border:1px dashed;border-radius:9px;min-height:108px;padding:11px}.analysis-drop-zone:nth-child(1){background:#f5f8ff;border-color:#b8cff2}.analysis-drop-zone:nth-child(2){background:#f4faf5;border-color:#bddbc4}.analysis-drop-zone:nth-child(3){background:#fffaf1;border-color:#ead4a6}.analysis-drop-zone:nth-child(4){background:#faf6ff;border-color:#d9c7ee}.analysis-drop-zone>strong{align-items:center;display:flex;font-size:12px;gap:7px;margin-bottom:8px;text-transform:none}.analysis-drop-zone>strong span{font-size:14px}.analysis-zone-items{align-content:flex-start;display:flex;flex-wrap:wrap;gap:7px}.analysis-zone-items>span{color:var(--erp-muted);font-size:12px}.analysis-zone-chip{align-items:center;background:#ffffffc7;border:1px solid var(--erp-border);border-radius:6px;cursor:grab;display:inline-flex;gap:6px;min-height:32px;padding:3px 5px 3px 8px}.analysis-zone-chip b{font-size:11px}.analysis-zone-chip select{border:0;font-size:10px;height:25px;min-height:25px;padding:2px 22px 2px 6px}.analysis-zone-chip button{align-items:center;border:0;border-radius:6px;display:inline-flex;font-size:15px;height:22px;justify-content:center;min-height:22px;padding:0;width:22px}.analysis-builder-hint{align-items:center;border-top:1px solid var(--erp-border);color:var(--erp-muted);display:flex;font-size:11px;gap:8px;padding:9px 16px}.analysis-active-filters{align-items:center;display:grid;gap:12px;grid-template-columns:auto minmax(0,1fr) auto;padding:11px 14px}.analysis-filter-heading strong{align-items:center;display:flex;gap:7px;white-space:nowrap}.analysis-filter-grid{align-items:center;display:flex;gap:10px;min-width:0}.analysis-filter-control{flex:1 1 180px;min-width:150px}.analysis-filter-control>summary{background:var(--erp-surface);border:1px solid var(--erp-border);border-radius:7px;cursor:pointer;font-size:11px;font-weight:750;list-style:none;min-height:38px;padding:11px}.analysis-filter-control[open]>div{background:var(--erp-surface);border:1px solid var(--erp-border);border-radius:10px;box-shadow:0 14px 35px #0f172a26;display:grid;gap:7px;left:0;min-width:240px;padding:9px;position:absolute;right:0;top:calc(100% + 4px);z-index:25}.analysis-filter-options{display:grid;gap:5px;max-height:220px;overflow:auto}.analysis-filter-options label{align-items:center;display:flex;font-size:12px;gap:7px;margin:0}.analysis-filter-options input{accent-color:var(--erp-primary)}.analysis-date-range{align-items:end;background:var(--erp-surface);border:1px solid var(--erp-border);border-radius:7px;display:grid;flex:2 1 330px;gap:7px;grid-template-columns:auto minmax(115px,1fr) minmax(115px,1fr) auto;padding:5px 8px}.analysis-date-range>strong{align-self:center;font-size:12px}.analysis-date-range label{display:grid;font-size:10px;gap:3px;margin:0}.analysis-date-range input{min-height:34px}.analysis-clear-filters{white-space:nowrap}.analysis-summary{display:grid;gap:14px;grid-template-columns:repeat(4,minmax(150px,1fr))}.analysis-summary article{align-items:center;background:var(--erp-surface);border:1px solid var(--erp-border);border-radius:var(--erp-radius);display:flex;gap:14px;min-height:92px;padding:14px 18px}.analysis-summary article>div{display:grid;gap:5px}.analysis-summary-icon{align-items:center;border-radius:50%;display:inline-flex;flex:0 0 42px;font-size:20px;height:42px;justify-content:center}.analysis-summary-icon.planned{background:#eaf1ff;color:#2563eb}.analysis-summary-icon.paid{background:#e8f7ee;color:#16934d}.analysis-summary-icon.balance{background:#e9f8ec;color:#2da84f}.negative .analysis-summary-icon.balance{background:#fff0ed;color:#b42318}.analysis-summary-icon.items{background:#fff4d7;color:#d28b00}.analysis-summary-icon .ui-icon{height:22px;width:22px}.analysis-summary small{color:var(--erp-muted);font-size:10px;font-weight:850;text-transform:uppercase}.analysis-summary strong{font-size:20px}.analysis-summary .positive strong{color:var(--erp-green)}.analysis-summary .negative strong{color:var(--erp-red)}.analysis-empty{color:var(--erp-muted);padding:28px;text-align:center}.analysis-table-card{display:grid;gap:9px;padding-bottom:10px}.dynamic-pivot-table{border-collapse:separate;border-spacing:0;min-width:max-content}.dynamic-pivot-table th,.dynamic-pivot-table td{background:var(--erp-surface);border-bottom:1px solid var(--erp-border);font-size:11px;min-width:122px;padding:8px 10px;vertical-align:middle}.dynamic-pivot-table thead th{background:var(--erp-surface-soft);position:sticky;top:0;z-index:4}.dynamic-pivot-table thead tr:nth-child(2) th{top:37px}.dynamic-pivot-table .analysis-sticky-column{box-shadow:1px 0 var(--erp-border);left:0;min-width:270px;position:sticky;text-align:left;z-index:3}.dynamic-pivot-table thead .analysis-sticky-column{z-index:6}.dynamic-pivot-table tfoot th,.dynamic-pivot-table tfoot td{background:#f4efe6;font-weight:850;position:sticky;bottom:0;z-index:4}.dynamic-pivot-table .pivot-group-row td{background:#fbf9f5;font-weight:750}.dynamic-pivot-table .finance-number{text-align:right}.analysis-sort-button,.pivot-value-button,.pivot-details-link{background:transparent;border:0;color:inherit;min-height:0;padding:0}.analysis-sort-button{font-size:inherit;font-weight:inherit;text-align:left;white-space:nowrap}.analysis-sort-button.number,.pivot-value-button{text-align:right;width:100%}.pivot-label{align-items:center;display:flex;gap:7px}.pivot-label>button:first-child{align-items:center;border:0;display:inline-flex;height:24px;justify-content:center;min-height:24px;padding:0;width:24px}.pivot-label small{color:var(--erp-muted);font-size:9px;margin-left:auto;text-transform:uppercase}.pivot-leaf-mark{color:var(--erp-primary);text-align:center;width:24px}.pivot-details-link:hover,.pivot-value-button:hover{color:var(--erp-primary);text-decoration:underline}.analysis-diagnostic{border-radius:999px;display:inline-flex;font-size:9px;font-weight:850;padding:5px 8px;white-space:nowrap}.analysis-diagnostic.success{background:#e8f7ee;color:#177245}.analysis-diagnostic.warning{background:#fff7dc;color:#8a5b00}.analysis-diagnostic.danger{background:#fff0ed;color:#b42318}.analysis-diagnostic.neutral{background:#eef2f6;color:#52606d}.analysis-details-modal{display:grid;gap:14px;max-height:min(90vh,840px);max-width:min(1180px,calc(100vw - 32px));overflow:hidden;width:100%}.analysis-details-modal .table-wrap{max-height:62vh}.analysis-details-modal table{min-width:1120px}.analysis-details-modal td small{color:var(--erp-muted);display:block;margin-top:3px}@media(max-width:900px){.analysis-builder-content,.analysis-zones,.analysis-active-filters{grid-template-columns:1fr}.analysis-filter-grid{align-items:stretch;flex-direction:column}.analysis-filter-control{width:100%}.analysis-summary{grid-template-columns:repeat(2,minmax(150px,1fr))}.analysis-date-range{grid-template-columns:1fr 1fr}}@media(max-width:600px){.dynamic-analysis-header{align-items:stretch;display:grid}.analysis-field-list{grid-template-columns:repeat(2,minmax(0,1fr))}.analysis-summary{grid-template-columns:1fr}}:root{color:#101828;background:#f4f7fb;font-family:Inter,Segoe UI,Arial,sans-serif}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button{cursor:pointer}.app-shell{max-width:1280px;margin:0 auto;padding:24px}.app-header{align-items:flex-start;background:#fff;border:1px solid #e4e7ec;border-radius:8px;box-shadow:0 10px 28px #1018280d;display:flex;gap:24px;justify-content:space-between;padding:22px}.header-actions{align-items:center;color:#344054;display:flex;font-size:14px;font-weight:800;gap:12px}.eyebrow{color:#2563eb;font-size:13px;font-weight:800;letter-spacing:0;margin:0 0 8px;text-transform:uppercase}h1{font-size:38px;line-height:1.1;margin:0 0 12px}h2{font-size:17px;margin:0 0 8px}p{color:#667085;line-height:1.5;margin:0}.module-grid{display:grid;gap:14px;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));margin-top:24px}.module-card{background:#fff;border:1px solid #e4e7ec;border-radius:8px;padding:18px}.module-nav{background:#fff;border:1px solid #e4e7ec;border-radius:8px;display:flex;flex-wrap:wrap;gap:8px;padding:10px}.global-nav{margin-bottom:16px}.module-nav button,.nav-card button{background:#f8fafc;border:1px solid #e4e7ec;border-radius:8px;color:#344054;font-weight:800;padding:10px 12px}.module-nav button.active{background:#2563eb;border-color:#2563eb;color:#fff}.module-nav .logout-button{background:#f8fafc;border:1px solid #d0d5dd;color:#344054;margin-left:auto;padding:10px 14px}.global-active-work{align-self:center;color:#475467;font-size:13px;font-weight:900;margin-left:auto;padding:0 10px}.module-content{margin-top:16px}.dashboard-panel,.dashboard-section,.module-frame{display:grid;gap:16px}.overview-panel{display:grid;gap:18px}.overview-metrics{display:grid;gap:14px;grid-template-columns:repeat(auto-fit,minmax(185px,1fr))}.legacy-metric{background:radial-gradient(circle at 88% 12%,rgba(37,99,235,.12),transparent 34%),#fff;border:1px solid #e4e7ec;border-radius:8px;box-shadow:0 10px 24px #1018280d;display:grid;gap:8px;min-height:112px;padding:18px}.legacy-metric small{color:#667085;font-size:13px;font-weight:800}.legacy-metric strong{color:#101828;font-size:24px;line-height:1.1}.legacy-metric.outflow,.legacy-metric.negative{background:radial-gradient(circle at 88% 12%,rgba(220,38,38,.12),transparent 34%),#fff}.legacy-metric.negative{background:radial-gradient(circle at 88% 12%,rgba(220,38,38,.16),transparent 34%),#fff7f7;border-color:#fecaca}.legacy-metric.outflow strong,.legacy-metric.negative strong,.negative-text{color:#dc2626}.legacy-metric.positive strong,.positive-text{color:#16a34a}.overview-section{background:#fff;border:1px solid #e4e7ec;border-radius:8px;box-shadow:0 10px 28px #1018280a;padding:18px}.overview-section-title{align-items:flex-start}.overview-actions,.work-card-actions{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}.overview-actions button,.work-card-actions button,.primary-action{background:#f8fafc;border:1px solid #d0d5dd;border-radius:8px;color:#344054;font-weight:800;padding:9px 12px}.overview-actions .primary-action,.work-card-actions .primary-action,.primary-action{background:#2563eb;border-color:#2563eb;color:#fff}.overview-work-grid{display:grid;gap:16px;grid-template-columns:repeat(3,minmax(0,1fr))}.overview-work-card{border:1px solid #e4e7ec;border-radius:8px;display:grid;gap:14px;overflow:hidden}.work-card-photo{align-items:center;background:linear-gradient(135deg,#eef2f7,#dbeafe);color:#667085;display:flex;font-size:13px;font-weight:800;height:110px;justify-content:center;overflow:hidden}.work-card-photo img{height:100%;object-fit:cover;width:100%}.work-card-photo.has-photo{background:#e4e7ec}.work-card-header,.work-card-stats,.work-card-actions{margin-left:16px;margin-right:16px}.work-card-header{align-items:flex-start;display:flex;gap:10px;justify-content:space-between}.work-card-header h3{color:#101828;font-size:18px;margin:0 0 4px}.work-card-header p{font-size:13px}.work-card-stats{display:grid;gap:8px;grid-template-columns:repeat(3,minmax(0,1fr));overflow:visible}.work-card-stats div{background:#f8fafc;border:1px solid #e4e7ec;border-radius:8px;min-width:0;padding:8px}.work-card-stats small{color:#667085;display:block;font-size:10px;font-weight:800;margin-bottom:5px}.work-card-stats strong{color:#101828;display:block;font-size:clamp(10px,.95vw,12px);line-height:1.2;white-space:nowrap}.work-card-actions{margin-bottom:16px;justify-content:flex-start}.overview-muted{color:#667085;font-size:13px;font-weight:700}.danger-outline-button{background:#fff7f7!important;border:1px solid #fecaca!important;color:#b42318!important}.danger-confirmation{background:#fff7f7;border:1px solid #fecaca;border-radius:8px;display:grid;gap:12px;padding:12px}.danger-confirmation p{color:#7f1d1d;font-size:13px;font-weight:800}.task-metrics{margin-top:10px}.tasks-workspace,.users-workspace{display:grid;gap:14px}.tasks-title,.users-title,.task-alert-card,.task-filters,.tasks-table-card,.users-table-card{background:#fff;border:1px solid #e4e7ec;border-radius:8px;box-shadow:0 10px 28px #1018280a}.tasks-title,.users-title{align-items:flex-start;margin-bottom:0;padding:18px}.task-alert-card{background:#fffbeb;border-color:#fde68a;display:grid;gap:6px;padding:14px 16px}.task-alert-card strong{color:#92400e;font-size:14px}.task-alert-card p{color:#78350f;font-size:13px;font-weight:900}.task-alert-list{display:grid;gap:4px}.task-alert-list span{color:#92400e;font-size:12px;font-weight:800}.task-filters{display:grid;gap:12px;grid-template-columns:minmax(180px,1fr) repeat(3,minmax(160px,.8fr));padding:14px}.tasks-table-card{overflow:hidden}.tasks-table,.users-table{table-layout:fixed}.tasks-table thead th,.users-table thead th{background:#f8fafc;color:#475467;font-size:11px;font-weight:950;text-transform:uppercase;white-space:nowrap}.tasks-table th:nth-child(1){width:17%}.tasks-table th:nth-child(2){width:26%}.tasks-table th:nth-child(3),.tasks-table th:nth-child(5){width:11%}.tasks-table th:nth-child(4){width:14%}.tasks-table th:nth-child(6),.tasks-table th:nth-child(7),.tasks-table th:nth-child(8){width:10%}.tasks-table td{font-size:13px;overflow:hidden;text-overflow:ellipsis}.tasks-table td:nth-child(8),.tasks-table th:nth-child(8){text-align:right}.tasks-table td:nth-child(8) button{background:#fff;border:1px solid #d0d5dd;border-radius:8px;color:#475467;font-size:12px;font-weight:900;padding:7px 10px}.users-table-card{overflow:hidden}.users-table th:nth-child(1){width:22%}.users-table th:nth-child(2){width:28%}.users-table th:nth-child(3){width:16%}.users-table th:nth-child(4){width:12%}.users-table th:nth-child(5){width:22%}.users-table td{font-size:13px}.users-table td:nth-child(5),.users-table th:nth-child(5){text-align:right}.users-row-actions{display:inline-flex;flex-wrap:wrap;gap:6px;justify-content:flex-end}.users-row-actions button{background:#fff;border:1px solid #d0d5dd;border-radius:8px;color:#475467;font-size:11px;font-weight:900;padding:7px 8px}.user-status{border-radius:999px;display:inline-flex;font-size:11px;font-weight:900;padding:5px 8px}.user-status.active{background:#dcfce7;color:#166534}.user-status.inactive{background:#e5e7eb;color:#475467}.user-modal{display:grid;gap:16px;max-width:680px}.task-status{border-radius:999px;display:inline-flex;font-size:11px;font-weight:900;padding:5px 8px;white-space:nowrap}.task-status.pendente{background:#fef3c7;color:#92400e}.task-status.em_andamento{background:#dbeafe;color:#1d4ed8}.task-status.concluida{background:#dcfce7;color:#166534}.task-status.cancelada{background:#e5e7eb;color:#475467}.task-modal{display:grid;gap:16px;max-width:860px}.task-attachments{background:#f8fafc;border:1px solid #e4e7ec;border-radius:8px;display:grid;gap:10px;padding:12px}.task-attachments-head{align-items:flex-start;display:flex;gap:12px;justify-content:space-between}.task-attachments h3{color:#101828;font-size:15px;margin:0 0 3px}.task-attachments p{font-size:12px}.task-attachment-list{display:grid;gap:8px;max-height:190px;overflow:auto}.task-attachment-list article{align-items:center;background:#fff;border:1px solid #e4e7ec;border-radius:8px;display:grid;gap:8px;grid-template-columns:minmax(0,1fr) auto auto;padding:9px 10px}.task-attachment-list strong{color:#101828;display:block;font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.task-attachment-list span{color:#667085;display:block;font-size:11px;font-weight:800}.task-attachment-list a,.task-attachment-list button{background:#f8fafc;border:1px solid #d0d5dd;border-radius:8px;color:#344054;font-size:11px;font-weight:900;padding:6px 8px;text-decoration:none}.empty-card{color:#667085;font-weight:800}.work-workspace{display:grid;gap:16px}.work-hero{background:#fff;border:1px solid #e4e7ec;border-radius:8px;box-shadow:0 14px 36px #10182812;display:grid;gap:18px;padding:22px}.work-hero-main{align-items:flex-start;display:flex;gap:20px;justify-content:space-between}.work-hero-main h2{color:#101828;font-size:30px;margin-bottom:8px}.work-hero-actions{align-items:center;display:flex;flex-wrap:wrap;gap:10px;justify-content:flex-end}.work-hero-actions button,.work-module-nav button,.work-shortcuts button{background:#f8fafc;border:1px solid #d0d5dd;border-radius:8px;color:#344054;font-weight:800;padding:10px 12px}.work-hero-metrics{display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(170px,1fr))}.work-hero-metrics .legacy-metric{box-shadow:none;min-height:96px}.work-module-nav{background:#fff;border:1px solid #e4e7ec;border-radius:8px;display:flex;flex-wrap:wrap;gap:8px;padding:10px}.work-module-nav button.active{background:#2563eb;border-color:#2563eb;color:#fff}.work-module-content,.work-summary-grid{display:grid;gap:16px}.work-shortcuts{display:grid;gap:10px;grid-template-columns:repeat(auto-fit,minmax(210px,1fr))}.work-shortcuts button{display:grid;gap:5px;min-height:84px;text-align:left}.work-shortcuts span{color:#667085;font-size:13px;font-weight:600}.stage-summary-card{background:#fff;border:1px solid #e4e7ec;border-radius:8px;box-shadow:0 10px 28px #1018280a;display:grid;gap:12px;padding:18px}.stage-summary-table thead th{background:#f8fafc;color:#475467;font-size:12px;font-weight:900;padding-bottom:14px;padding-top:14px;white-space:nowrap}.stage-summary-table th:first-child,.stage-summary-table td:first-child{min-width:280px}.stage-summary-table th:last-child,.stage-summary-table td:last-child{min-width:248px}.stage-summary-table td{padding-bottom:15px;padding-top:15px}.stage-summary-table td strong{color:#101828}.stage-parent-row{background:#fff;box-shadow:inset 4px 0 #dbeafe}.substage-row{background:#fcfcfd}.substage-name{display:inline-block;font-weight:800;padding-left:22px;position:relative}.substage-name:before{border-bottom:1px solid #cbd5e1;border-left:1px solid #cbd5e1;content:"";height:12px;left:6px;position:absolute;top:-1px;width:10px}.stage-row-actions{flex-wrap:nowrap;justify-content:flex-end;min-width:232px;white-space:nowrap}.stage-row-actions button,.stage-modal-actions button{background:#eef2f7;border:1px solid #d0d5dd;border-radius:8px;color:#344054;font-weight:800;padding:8px 10px}.stage-summary-note{font-size:12px;font-weight:700}.money-cell{text-align:right;white-space:nowrap}.stage-summary-table th:nth-child(2),.stage-summary-table th:nth-child(3),.stage-summary-table th:nth-child(4){text-align:right}.stage-row-actions button:first-child{background:#eff6ff;border-color:#bfdbfe;color:#1d4ed8}.substage-row .stage-row-actions button:first-child{background:#eef2f7;border-color:#d0d5dd;color:#344054}.stage-modal{display:grid;gap:16px;max-width:560px}.stage-modal form{margin-top:0}.stage-modal-actions{display:flex;gap:10px;justify-content:flex-end}.budget-workspace,.budget-summary-tab{display:grid;gap:16px}.budget-module-title,.budget-subnav,.budget-summary-table-card{background:#fff;border:1px solid #e4e7ec;border-radius:8px}.budget-module-title{margin-bottom:0;padding:18px}.budget-subnav{display:flex;flex-wrap:wrap;gap:8px;padding:10px}.budget-subnav button{background:#f8fafc;border:1px solid #d0d5dd;border-radius:8px;color:#344054;font-weight:900;padding:10px 13px}.budget-subnav button.active{background:#2563eb;border-color:#2563eb;color:#fff}.budget-kpi-grid{display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(175px,1fr))}.budget-kpi{background:radial-gradient(circle at 88% 12%,rgba(37,99,235,.11),transparent 36%),#fff;border:1px solid #e4e7ec;border-radius:8px;box-shadow:0 10px 25px #1018280d;display:grid;gap:7px;min-height:108px;padding:16px}.budget-kpi small{color:#667085;font-size:12px;font-weight:950;text-transform:uppercase}.budget-kpi strong{color:#101828;font-size:25px;line-height:1.1}.budget-kpi span{color:#667085;font-size:12px;font-weight:850}.budget-summary-table-card{box-shadow:0 10px 28px #1018280a;display:grid;gap:12px;padding:18px}.budget-summary-table-title{align-items:flex-start}.budget-summary-table thead th{background:#f8fafc;color:#475467;font-size:12px;font-weight:950;padding-bottom:14px;padding-top:14px;white-space:nowrap}.budget-summary-table th:not(:first-child){text-align:right}.budget-summary-table th:first-child,.budget-summary-table td:first-child{min-width:220px;text-align:left}.budget-summary-table td{padding-bottom:16px;padding-top:16px}.budget-summary-table td strong{color:#101828}.budget-summary-table .money-cell{text-align:right;white-space:nowrap}.budget-stage-row{box-shadow:inset 4px 0 #dbeafe}.budget-substage-row{background:#fcfcfd}.budget-analytic{background:#fff;border:1px solid #e4e7ec;border-radius:8px;box-shadow:0 10px 28px #1018280a;display:grid;gap:14px;padding:18px}.analytic-title-row{align-items:flex-start;display:flex;gap:16px;justify-content:space-between}.analytic-title-row h2{color:#101828;font-size:24px;margin-bottom:0}.analytic-title-row>strong{background:#eff6ff;border:1px solid #bfdbfe;border-radius:8px;color:#1d4ed8;font-size:18px;padding:12px 14px;white-space:nowrap}.analytic-actions{align-items:center;display:flex;flex-wrap:wrap;gap:8px}.analytic-actions button{background:#f8fafc;border:1px solid #d0d5dd;border-radius:8px;color:#344054;font-size:13px;font-weight:900;padding:9px 11px}.analytic-filters{background:#f8fafc;border:1px solid #e4e7ec;border-radius:8px;display:grid;gap:12px;grid-template-columns:minmax(220px,.7fr) minmax(320px,1.3fr);padding:14px}.analytic-search input{width:100%}.analytic-table-card{border:1px solid #e4e7ec;border-radius:8px;overflow:hidden}.analytic-table{min-width:980px}.analytic-table thead th{background:#344054;border-bottom-color:#344054;color:#fff;font-size:11px;font-weight:950;padding-bottom:14px;padding-top:14px;text-transform:uppercase;white-space:nowrap}.analytic-table th:nth-child(4),.analytic-table .number-cell{text-align:right}.analytic-table td{padding-bottom:14px;padding-top:14px}.analytic-table th:last-child,.analytic-table td:last-child{min-width:148px;text-align:right}.analytic-stage-row td{background:#eef2f7;border-bottom-color:#d0d5dd;color:#101828;font-size:13px;letter-spacing:0}.analytic-substage-row td{background:#f8fafc;color:#344054;font-size:13px;font-weight:850}.analytic-item-row td:first-child{color:#1d4ed8;font-weight:900;white-space:nowrap}.analytic-row-actions{display:inline-flex;gap:7px;justify-content:flex-end;white-space:nowrap}.analytic-row-actions button{background:#fff;border:1px solid #d0d5dd;border-radius:8px;color:#475467;font-size:12px;font-weight:900;padding:7px 9px}.analytic-modal{display:grid;gap:16px;max-width:720px}.analytic-modal-wide{max-width:min(1120px,96vw);overflow:visible;width:100%}.budget-batch-area{display:grid;gap:12px}.budget-composition-picker{position:relative}.budget-composition-suggestions{max-height:260px;min-width:100%;z-index:120}.budget-composition-dropdown{max-height:260px;min-width:0;overflow-y:auto;overscroll-behavior:contain;position:fixed;z-index:9999}.budget-composition-dropdown.top{box-shadow:0 -18px 44px #2d2a2629}.budget-composition-suggestions button{align-items:center;display:grid;gap:3px;grid-template-columns:minmax(0,1fr) auto;min-height:48px}.budget-composition-suggestions button strong{font-size:13px;font-weight:900;grid-column:1 / -1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.budget-composition-suggestions button span{color:var(--erp-muted);font-size:12px;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.budget-composition-suggestions button small{background:#fff7ed;border-radius:999px;color:#c2410c;font-size:11px;font-weight:900;padding:3px 7px}.budget-composition-suggestions button.selected{background:#fff7ed}.autocomplete-empty,.budget-batch-empty{color:var(--erp-muted);font-size:13px;margin:0;padding:10px}.budget-batch-list{border:1px solid var(--erp-border);border-radius:8px;max-height:min(42vh,390px);overflow:hidden;overflow-y:auto}.budget-batch-head,.budget-batch-row{display:grid;gap:8px;grid-template-columns:minmax(220px,1.8fr) 54px 100px 105px 110px minmax(150px,1fr) 84px}.budget-batch-head{background:var(--erp-table-head);color:var(--erp-muted);font-size:11px;font-weight:900;letter-spacing:0;padding:9px 10px;text-transform:uppercase}.budget-batch-row{align-items:center;background:#fff;border-top:1px solid var(--erp-border);padding:8px 10px}.budget-batch-row.duplicate{background:#fff7ed;outline:2px solid #f97316;outline-offset:-2px}.budget-batch-row div{display:grid;gap:1px;min-width:0}.budget-batch-row div span,.budget-batch-row div small{color:var(--erp-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.budget-batch-row input{min-width:0;width:100%}.budget-batch-row button{background:#fff;border:1px solid var(--erp-border-strong);border-radius:7px;color:var(--erp-muted);font-size:12px;font-weight:850;padding:8px 9px}.budget-batch-total{align-items:center;display:flex;gap:12px;justify-content:flex-end}.budget-batch-total span{color:var(--erp-muted);font-size:13px}.analytic-print-header{display:none}.budget-analytic:fullscreen{border:0;border-radius:0;height:100vh;max-width:none;overflow:auto;padding:28px;width:100vw}.supply-bank{display:grid;gap:14px}.supply-bank-title,.supply-table-card{background:#fff;border:1px solid #e4e7ec;border-radius:8px;box-shadow:0 10px 28px #1018280a;padding:18px}.supply-bank-title{align-items:flex-start;margin-bottom:0}.supply-top-actions{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}.supply-top-actions button,.import-modal .section-title button{background:#f8fafc;border:1px solid #d0d5dd;border-radius:8px;color:#344054;font-size:13px;font-weight:900;padding:9px 12px}.supply-table-card{padding:0;overflow:hidden}.supply-table{table-layout:fixed;width:100%}.supply-table thead tr:first-child th{background:#344054;border-bottom-color:#344054;color:#fff;font-size:11px;font-weight:950;padding-bottom:13px;padding-top:13px;text-transform:uppercase;white-space:normal}.supply-sort{background:transparent;border:0;color:inherit;font-size:inherit;font-weight:inherit;padding:0;text-transform:inherit}.supply-sort:after{content:" ↕";opacity:.7}.supply-filter-row th{background:#f8fafc;padding:7px 6px}.supply-filter-row input{background:#fff;min-width:0;padding:7px 6px;width:100%}.supply-table td{font-size:12px;overflow:hidden;padding:12px 7px;text-overflow:ellipsis;vertical-align:top}.supply-table th:nth-child(1){width:8%}.supply-table th:nth-child(2){width:25%}.supply-table th:nth-child(3){width:6%}.supply-table th:nth-child(4){width:9%}.supply-table th:nth-child(5),.supply-table th:nth-child(6),.supply-table th:nth-child(8),.supply-table th:nth-child(9){width:10%}.supply-table th:nth-child(7){width:11%}.supply-table th:nth-child(10){width:7%}.supply-table td:first-child{color:#1d4ed8;white-space:nowrap}.supply-table td:nth-child(3){text-align:center;white-space:nowrap}.supply-table td:nth-child(2){white-space:normal}.supply-table td:last-child,.supply-table th:last-child{text-align:right}.supply-row-actions{display:inline-flex;gap:5px;justify-content:flex-end;white-space:nowrap}.supply-row-actions button{background:#fff;border:1px solid #d0d5dd;border-radius:8px;color:#475467;font-size:11px;font-weight:900;padding:6px 7px}.supply-modal,.import-modal{display:grid;gap:16px}.supply-modal{max-width:760px}.import-modal{max-width:900px}.import-modal-wide{grid-template-rows:auto auto minmax(0,1fr) auto;max-height:92vh;max-width:min(1400px,96vw);overflow:hidden;width:96vw}.import-modal label{min-width:0}.import-modal-controls{display:grid;gap:12px;grid-template-columns:minmax(260px,1fr) minmax(280px,420px)}.import-preview{border:1px solid #e4e7ec;border-radius:8px}.import-preview-wide{min-height:0;overflow:auto}.import-preview p{font-size:12px;font-weight:800;padding:10px 12px}.import-preview-wide table{min-width:1120px}.import-preview-wide thead th{background:#f8fafc;position:sticky;top:0;z-index:2}.import-preview-wide td,.import-preview-wide th{line-height:1.35;max-width:280px;min-width:96px;white-space:normal}.import-preview-wide td:first-child,.import-preview-wide th:first-child{min-width:130px;white-space:nowrap}.import-preview-wide small{color:#667085;display:block;font-size:11px;margin-top:4px}.import-modal-footer{background:#fff;border-top:1px solid #e4e7ec;bottom:0;margin:0 -2px;padding-top:12px;position:sticky}.schedule-dependency-tools{display:grid;gap:8px;grid-template-columns:minmax(180px,1fr) minmax(160px,220px);margin-bottom:10px}.schedule-dependency-tools input,.schedule-dependency-tools select{min-width:0;width:100%}.schedule-dependency-field label.selected{background:#eef6ff;border-color:#93c5fd}.composition-bank{display:grid;gap:14px}.composition-bank-title,.composition-table-card{background:#fff;border:1px solid #e4e7ec;border-radius:8px;box-shadow:0 10px 28px #1018280a}.composition-bank-title{align-items:flex-start;margin-bottom:0;padding:18px}.composition-top-actions{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}.composition-top-actions button,.structure-title button{background:#f8fafc;border:1px solid #d0d5dd;border-radius:8px;color:#344054;font-size:13px;font-weight:900;padding:9px 12px}.composition-search{background:#f8fafc;border:1px solid #e4e7ec;border-radius:8px;grid-template-columns:minmax(120px,auto) minmax(260px,1fr);align-items:center;padding:14px}.composition-search input{width:100%}.composition-table-card{overflow:hidden}.composition-table{min-width:760px}.composition-table thead th,.composition-structure-table thead th{background:#344054;border-bottom-color:#344054;color:#fff;font-size:11px;font-weight:950;padding-bottom:13px;padding-top:13px;text-transform:uppercase;white-space:nowrap}.composition-table td,.composition-structure-table td{padding-bottom:14px;padding-top:14px}.composition-table td:first-child{color:#1d4ed8;white-space:nowrap}.composition-table th:nth-child(4),.composition-table th:last-child,.composition-table td:last-child,.composition-structure-table th:nth-child(5),.composition-structure-table th:nth-child(6){text-align:right}.composition-row-actions{display:inline-flex;gap:7px;justify-content:flex-end;white-space:nowrap}.composition-row-actions button,.ghost-button{background:#fff;border:1px solid #d0d5dd;border-radius:8px;color:#475467;font-size:12px;font-weight:900;padding:7px 9px}.composition-modal{display:grid;gap:16px;max-width:1180px}.composition-modal form{margin-top:0}.composition-id-grid{grid-template-columns:minmax(170px,.7fr) minmax(260px,1.4fr) minmax(130px,.45fr)}.structure-title{align-items:flex-end;margin-bottom:0}.structure-title h3{color:#101828}.composition-structure-table{min-width:1040px}.composition-structure-table select,.composition-structure-table input{min-width:0;padding:9px 10px;width:100%}.composition-structure-table td:nth-child(1){min-width:136px}.composition-structure-table td:nth-child(2){min-width:290px}.composition-structure-table td:nth-child(3){min-width:84px}.composition-structure-table td:nth-child(4){min-width:118px}.composition-suggestions{background:#fff;border:1px solid #d0d5dd;border-radius:8px;box-shadow:0 18px 42px #1018282e;display:grid;left:0;max-height:260px;min-width:330px;overflow:auto;padding:6px;position:absolute;top:calc(100% + 5px);width:max(100%,330px);z-index:4}.composition-suggestions button{background:#fff;border:0;border-radius:8px;color:#344054;display:grid;gap:3px;padding:9px 10px;text-align:left}.composition-suggestions button:hover{background:#eff6ff}.composition-suggestions small,.composition-suggestions span{color:#667085;font-size:12px;font-weight:700}.works-layout.stage-only{grid-template-columns:1fr;margin-top:0}.works-layout.stage-only .works-sidebar,.works-layout.stage-only .works-main>form{display:none}.module-frame-title,.placeholder-panel{background:#fff;border:1px solid #e4e7ec;border-radius:8px;padding:18px}.nav-card{display:grid;gap:12px}.nav-card button{justify-self:start}.placeholder-card,.placeholder-panel{background:#f8fafc}.auth-shell{align-items:center;display:grid;min-height:100vh;padding:24px}.login-panel{background:#fff;border:1px solid #e4e7ec;border-radius:8px;box-shadow:0 16px 45px #10182814;margin:0 auto;max-width:420px;padding:28px;width:100%}form{display:grid;gap:14px;margin-top:22px}label{color:#344054;display:grid;font-size:14px;font-weight:700;gap:7px}input,select,textarea{border:1px solid #d0d5dd;border-radius:8px;color:#101828;padding:12px 13px}form button,.logout-button{background:#2563eb;border:0;border-radius:8px;color:#fff;font-weight:800;padding:12px 16px}.logout-button{background:#344054;flex:0 0 auto}.form-error{color:#d92d20;font-size:14px}.form-success{color:#047857;font-size:14px}.works-layout{align-items:start;display:grid;gap:18px;grid-template-columns:300px minmax(0,1fr);margin-top:24px}.supplies-panel,.compositions-panel,.budget-panel,.abc-panel,.works-sidebar,.panel-form,.work-detail,.stage-card{background:#fff;border:1px solid #e4e7ec;border-radius:8px;padding:18px}.section-title{align-items:center;display:flex;gap:14px;justify-content:space-between;margin-bottom:14px}.section-title h2,.section-title h3{margin:0}.section-title button,.row-actions button{background:#eef2f7;border:1px solid #d0d5dd;border-radius:8px;color:#344054;font-weight:800;padding:9px 12px}.work-list{display:grid;gap:8px}.work-list-item{background:#fff;border:1px solid #e4e7ec;border-radius:8px;color:#101828;display:grid;gap:3px;padding:12px;text-align:left}.work-list-item.active{border-color:#2563eb;box-shadow:0 0 0 3px #2563eb1f}.work-list-item span{color:#667085;font-size:13px}.works-main{display:grid;gap:18px}.form-grid{display:grid;gap:12px;grid-template-columns:repeat(2,minmax(0,1fr))}.span-2{grid-column:1 / -1}.inline-form{align-items:end;display:grid;gap:10px;grid-template-columns:minmax(160px,1fr) minmax(160px,1fr) 90px auto;margin:14px 0}.inline-form input{width:100%}.row-actions{display:flex;gap:8px}.stage-list{display:grid;gap:14px}.substage-list{display:grid;gap:8px;list-style:none;margin:12px 0 0;padding:0}.substage-list li{align-items:center;background:#f8fafc;border:1px solid #e4e7ec;border-radius:8px;display:flex;justify-content:space-between;padding:10px 12px}.supplies-panel,.compositions-panel,.budget-panel,.abc-panel{display:grid;gap:16px}.abc-workspace{box-shadow:0 10px 28px #1018280a}.abc-header{align-items:flex-start;margin-bottom:0}.abc-header h2{color:#101828;font-size:24px}.abc-header-tools{align-items:flex-end;display:flex;flex-wrap:wrap;gap:10px;justify-content:flex-end}.abc-work-select{min-width:220px}.abc-actions{display:inline-flex;gap:7px}.abc-actions button{background:#f8fafc;border:1px solid #d0d5dd;border-radius:8px;color:#475467;font-size:12px;font-weight:900;padding:8px 10px}.abc-filter-bar{align-items:flex-end;display:flex;flex-wrap:wrap;gap:12px;justify-content:flex-start}.abc-filter-bar label{margin:0}.abc-filter-bar select{min-width:196px}.abc-class-chips{background:#f8fafc;border:1px solid #e4e7ec;border-radius:999px;display:inline-flex;gap:4px;padding:4px}.abc-class-chips button{background:transparent;border:0;border-radius:999px;color:#475467;font-size:13px;font-weight:950;min-width:42px;padding:9px 13px}.abc-class-chips button.active{background:#2563eb;box-shadow:0 8px 18px #2563eb33;color:#fff}.abc-table-card{border:1px solid #e4e7ec;border-radius:8px;box-shadow:0 10px 24px #1018280a;overflow:hidden}.abc-table{min-width:960px}.abc-table thead th{background:#f8fafc;color:#475467;font-size:11px;font-weight:950;padding-bottom:14px;padding-top:14px;text-transform:uppercase;white-space:nowrap}.abc-table td{padding-bottom:15px;padding-top:15px}.abc-table td:first-child{color:#101828;min-width:250px}.abc-supply-link{appearance:none;background:none;border:0;color:inherit;cursor:pointer;font:inherit;font-weight:700;padding:0;text-align:left;text-decoration:underline;text-underline-offset:3px}.abc-supply-link:hover{text-decoration-thickness:2px}.supply-editor-only>:not(.modal-backdrop){display:none}.abc-center-cell{text-align:center}.abc-table th:nth-child(3),.abc-table th:nth-child(9){text-align:center}.abc-table th:nth-child(4),.abc-table th:nth-child(5),.abc-table th:nth-child(6),.abc-table th:nth-child(7),.abc-table th:nth-child(8),.abc-table th:nth-child(9),.abc-number-cell{text-align:right;white-space:nowrap}.abc-class-badge{align-items:center;border-radius:999px;display:inline-flex;font-size:12px;font-weight:950;height:28px;justify-content:center;width:28px}.abc-class-badge.class-a{background:#dcfce7;color:#166534}.abc-class-badge.class-b{background:#fef3c7;color:#92400e}.abc-class-badge.class-c{background:#ffe4e6;color:#be123c}.finance-panel,.finance-forms,.finance-lists,.schedule-panel,.schedule-forms,.schedule-lists,.finance-workspace,.finance-purchases,.finance-contract{display:grid;gap:16px}.finance-subnav,.finance-title,.finance-table-card,.finance-work-picker{background:#fff;border:1px solid #e4e7ec;border-radius:8px}.finance-subnav{display:flex;flex-wrap:wrap;gap:8px;padding:10px}.finance-subnav button,.finance-actions button{background:#f8fafc;border:1px solid #d0d5dd;border-radius:8px;color:#344054;font-size:13px;font-weight:900;padding:9px 12px}.finance-subnav button.active{background:#2563eb;border-color:#2563eb;color:#fff}.finance-title,.contract-actions{align-items:flex-start;box-shadow:0 10px 28px #1018280a;margin-bottom:0;padding:18px}.finance-title h2,.contract-actions h2{color:#101828;font-size:24px}.finance-actions{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}.finance-purchase-filters{align-items:end;background:#f8fafc;border:1px solid #e4e7ec;border-radius:8px;display:grid;gap:10px;grid-template-columns:minmax(210px,1fr) 140px 150px 150px minmax(240px,1.2fr);padding:14px}.finance-search input{width:100%}.finance-stage-filter-field{display:grid;gap:6px;min-width:0}.finance-filter-label{color:#344054;font-size:13px;font-weight:800}.finance-stage-filter{min-width:0;position:relative}.finance-stage-filter summary{align-items:center;background:#fff;border:1px solid var(--erp-border-strong, #d0d5dd);border-radius:8px;color:#344054;cursor:pointer;display:flex;font-weight:800;height:42px;list-style:none;overflow:hidden;padding:0 38px 0 12px;position:relative;text-overflow:ellipsis;white-space:nowrap}.finance-stage-filter summary::-webkit-details-marker{display:none}.finance-stage-filter summary:after{border-bottom:2px solid #667085;border-right:2px solid #667085;content:"";height:7px;position:absolute;right:15px;top:15px;transform:rotate(45deg);transition:transform .15s ease,top .15s ease;width:7px}.finance-stage-filter[open] summary{border-color:var(--erp-primary, #b8873e);box-shadow:0 0 0 3px #b8873e1f}.finance-stage-filter[open] summary:after{top:18px;transform:rotate(225deg)}.finance-stage-options{background:#fff;border:1px solid var(--erp-border-strong, #d0d5dd);border-radius:10px;box-shadow:0 16px 38px #10182829;display:grid;gap:9px;left:0;margin-top:7px;min-width:300px;padding:10px;position:absolute;right:0;z-index:25}.finance-stage-options-head{align-items:center;display:grid;gap:8px;grid-template-columns:minmax(0,1fr) auto}.finance-stage-options-head input{min-height:36px;width:100%}.finance-stage-options-head .link-button{padding:7px 4px;white-space:nowrap}.finance-stage-options-head .link-button:disabled{color:#98a2b3;cursor:default}.finance-stage-options-list{display:grid;gap:3px;max-height:260px;overflow:auto;padding-right:3px}.finance-stage-options-list label{align-items:center;border-radius:7px;cursor:pointer;display:flex;font-size:13px;gap:9px;min-height:36px;padding:7px 8px}.finance-stage-options-list label:hover{background:var(--erp-primary-soft, #f4ecdf)}.finance-stage-options-list label:has(input:checked){background:#fbf4e9;color:var(--erp-primary-dark, #8b6127);font-weight:800}.finance-stage-options-list input{accent-color:var(--erp-primary, #b8873e);flex:0 0 auto;height:17px;min-height:0;width:17px}.finance-stage-options-list p{color:#667085;font-size:12px;padding:10px 8px}.link-button{background:transparent;border:0;color:#1d4ed8;cursor:pointer;font:inherit;font-size:12px;font-weight:800;padding:0;text-align:left}.finance-sort-button{align-items:center;background:transparent;border:0;color:inherit;cursor:pointer;display:inline-flex;font:inherit;font-weight:inherit;gap:4px;padding:0;text-align:left;text-transform:inherit}.finance-sort-button:hover,.finance-sort-button:focus-visible{color:#1d4ed8}.finance-sort-note{color:#475467;font-size:12px;margin:8px 0}.finance-table-card{box-shadow:0 10px 28px #1018280a;overflow:hidden;padding:0}.finance-purchase-table{table-layout:fixed;width:100%}.finance-purchase-table thead th,.contract-table thead th{background:#f8fafc;color:#475467;font-size:11px;font-weight:950;padding:12px 6px;text-transform:uppercase;white-space:normal}.finance-purchase-table td,.contract-table td{font-size:12px;overflow:hidden;padding:11px 6px;text-overflow:ellipsis;vertical-align:top}.finance-purchase-table th:nth-child(1),.finance-purchase-table th:nth-child(2){width:12%}.finance-purchase-table th:nth-child(3){width:19%}.finance-purchase-table th:nth-child(4){width:5%}.finance-purchase-table th:nth-child(5){width:6%}.finance-purchase-table th:nth-child(6),.finance-purchase-table th:nth-child(7){width:9%}.finance-purchase-table th:nth-child(8){width:9%}.finance-purchase-table th:nth-child(9){width:12%}.finance-purchase-table th:nth-child(10){width:7%}.finance-purchase-table th:nth-child(11){width:6%}.finance-stage-picker{font-size:12px;min-width:0;padding:7px 6px;width:100%}.finance-stage-picker.substage{min-width:0}.finance-center{text-align:center}.finance-purchase-table th:nth-child(4),.finance-center{text-align:center}.finance-purchase-table th:nth-child(5),.finance-purchase-table th:nth-child(6),.finance-purchase-table th:nth-child(7),.finance-number{text-align:right;white-space:nowrap}.purchase-status{border-radius:999px;display:inline-flex;font-size:11px;font-weight:900;padding:5px 9px}.purchase-status.pago{background:#dcfce7;color:#166534}.purchase-status.pendente{background:#fef3c7;color:#92400e}.finance-row-actions{display:inline-flex;gap:5px;justify-content:flex-end;white-space:nowrap}.finance-row-actions button{background:#fff;border:1px solid #d0d5dd;border-radius:8px;color:#475467;font-size:11px;font-weight:900;padding:6px 7px}.contract-kpis{display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.contract-table{padding:18px}.contract-table .section-title{margin-bottom:12px}.finance-modal{display:grid;gap:16px;max-width:880px}.finance-modal.compact{max-width:680px}.finance-modal form{margin-top:0}.budget-field-with-action,.finance-supplier-field{align-items:end;display:grid;gap:8px;grid-template-columns:minmax(0,1fr) 42px}.budget-field-with-action label,.finance-supplier-field label{min-width:0}.inline-add-button{align-items:center;background:#f4ead9;border:1px solid #d9bd8c;border-radius:9px;color:#80591f;display:inline-flex;font-size:20px;font-weight:800;height:42px;justify-content:center;padding:0;width:42px}.row-edit-button{background:transparent;border:0;color:#8a642c;font-size:11px;font-weight:800;padding:5px 7px}.structure-impact-modal{display:grid;gap:14px;max-width:720px}.structure-impact-summary{display:grid;gap:10px;grid-template-columns:repeat(3,minmax(0,1fr))}.structure-impact-summary strong,.structure-impact-group{background:#fbfaf7;border:1px solid #e5dccd;border-radius:10px;padding:12px}.structure-impact-group{display:grid;gap:4px}.structure-impact-group span,.structure-impact-modal p{color:#68625a;font-size:13px}.structure-impact-blocked{background:#fff1f0;border:1px solid #f0b8b3;border-radius:10px;color:#9b2c22;padding:12px}.structure-impact-warning{background:#fff8e6;border:1px solid #ead39c;border-radius:10px;padding:12px}.danger-button{background:#b42318;border-color:#b42318;color:#fff}.suppliers-panel{display:grid;gap:16px}.suppliers-modal{max-height:min(850px,92vh);max-width:1050px;overflow:auto;width:min(1050px,calc(100vw - 32px))}.supplier-modal-backdrop{z-index:1200}.suppliers-layout{align-items:start;display:grid;gap:18px;grid-template-columns:minmax(300px,.8fr) minmax(360px,1.2fr)}.supplier-form,.supplier-list{background:#fff;border:1px solid #e5dccd;border-radius:12px;display:grid;gap:12px;padding:16px}.supplier-form-row{display:grid;gap:10px;grid-template-columns:1fr 1fr}.supplier-form-row.city-state{grid-template-columns:minmax(0,1fr) 80px}.supplier-cards{display:grid;gap:8px;max-height:520px;overflow:auto}.supplier-card{align-items:center;border:1px solid #ebe4da;border-radius:10px;display:flex;gap:12px;justify-content:space-between;padding:11px 12px}.supplier-card>div:first-child{display:grid;gap:2px}.supplier-card span,.supplier-card small{color:#6d685f}.supplier-card-actions{display:flex;gap:6px}.supplier-card-actions button{background:#fff;border:1px solid #d9d0c3;border-radius:7px;padding:6px 8px}.supplier-card-actions .danger-link{color:#b42318}@media(max-width:850px){.suppliers-layout,.structure-impact-summary{grid-template-columns:1fr}}.finance-import-modal{max-width:900px}.finance-work-picker{max-width:360px;padding:14px}.finance-tabs{display:flex;gap:8px}.finance-tabs .active{background:#111827;color:#fff}.compositions-layout{align-items:start;display:grid;gap:18px;grid-template-columns:340px minmax(0,1fr)}.composition-input-form{grid-template-columns:minmax(220px,1.4fr) 120px minmax(160px,1fr) auto}.supplies-filters{background:#fff;border:1px solid #e4e7ec;border-radius:8px;display:grid;gap:12px;grid-template-columns:2fr 1fr 1fr;padding:18px}.budget-toolbar{background:#fff;border:1px solid #e4e7ec;border-radius:8px;display:grid;gap:12px;grid-template-columns:repeat(4,minmax(0,1fr));padding:18px}.summary-grid{display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.finance-toolbar{grid-template-columns:repeat(7,minmax(0,1fr))}.schedule-toolbar{grid-template-columns:2fr 1fr 1fr}.schedule-workspace{gap:14px}.schedule-title,.schedule-actions,.schedule-gantt-frame{background:#fff;border:1px solid #e4e7ec;border-radius:8px;box-shadow:0 10px 28px #1018280a}.schedule-title{align-items:end;margin:0;padding:18px}.schedule-title h2{color:#101828;font-size:24px}.schedule-work-picker{min-width:min(320px,100%)}.schedule-kpis{display:grid;gap:14px;grid-template-columns:repeat(4,minmax(0,1fr))}.schedule-kpi{align-content:space-between;border-left:4px solid #2563eb;overflow:hidden;position:relative}.schedule-kpi:after{background:linear-gradient(180deg,rgba(37,99,235,.14),transparent);border-radius:999px;content:"";height:86px;position:absolute;right:-24px;top:-34px;width:86px}.schedule-kpi small{letter-spacing:0;text-transform:uppercase}.schedule-kpi strong{font-size:clamp(24px,2.4vw,34px);font-weight:800;position:relative;z-index:1}.schedule-kpi.ahead{background:radial-gradient(circle at 88% 12%,rgba(22,163,74,.14),transparent 34%),#fff;border-left-color:#16a34a}.schedule-kpi.ahead strong{color:#166534}.schedule-kpi.late{background:radial-gradient(circle at 88% 12%,rgba(220,38,38,.13),transparent 34%),#fff;border-left-color:#dc2626}.schedule-kpi.late strong{color:#b42318}.schedule-kpi.on-time{border-left-color:#2563eb}.schedule-actions{align-items:end;display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between;padding:14px}.schedule-actions .row-actions{gap:8px;margin:0}.schedule-actions button.secondary,.stage-modal-actions button.secondary{background:#f8fafc;border:1px solid #d0d5dd;color:#344054}.schedule-filters{display:grid;gap:10px;grid-template-columns:repeat(2,minmax(160px,1fr));min-width:min(360px,100%)}.schedule-gantt-frame{display:grid;gap:12px;padding:14px}.schedule-gantt-frame:fullscreen{background:#f2f4f7;align-content:start;overflow:auto;padding:24px}.schedule-gantt-meta{align-items:center;display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between}.schedule-gantt-meta strong,.schedule-gantt-meta span{display:block}.schedule-gantt-heading{align-items:flex-start;display:flex;flex-direction:column}.schedule-gantt-meta .schedule-date-selection{color:#175cd3;font-weight:900}.schedule-clear-date-selection{background:transparent;border:0;color:#175cd3;font-size:12px;font-weight:900;margin-top:3px;padding:2px 0;text-decoration:underline;text-underline-offset:3px}.schedule-clear-date-selection:hover{color:#123f86}.schedule-date-empty{background:#fffaeb;border:1px solid #fedf89;border-radius:8px;color:#93370d;font-size:13px;font-weight:800;margin:0;padding:10px 12px}.schedule-gantt-meta span{color:#667085;font-size:13px;font-weight:800;margin-top:3px}.schedule-zoom{align-items:center;background:#f8fafc;border:1px solid #e4e7ec;border-radius:8px;display:flex;gap:10px;min-width:210px;padding:8px 10px}.schedule-zoom input{margin:0;padding:0}.schedule-modal{display:grid;gap:16px;max-width:980px}.schedule-modal form{margin-top:0}.schedule-dependency-field{background:#f8fafc;border:1px solid #e4e7ec;border-radius:8px;display:grid;gap:7px;max-height:210px;overflow:auto;padding:12px}.schedule-dependency-field legend{color:#344054;font-size:13px;font-weight:900;padding:0 6px}.schedule-dependency-field label{align-items:center;background:#fff;border:1px solid #eef2f7;border-radius:7px;display:grid;gap:8px;grid-template-columns:auto minmax(0,1fr) auto;padding:8px 9px}.schedule-dependency-field input{margin:0;width:auto}.schedule-dependency-field small,.schedule-dependency-field p{color:#667085;font-size:12px;font-weight:800;margin:0}.schedule-holiday-modal{display:grid;gap:16px;max-width:1040px}.schedule-holiday-layout{align-items:start;display:grid;gap:14px;grid-template-columns:minmax(360px,.95fr) minmax(360px,1.05fr)}.schedule-holiday-layout form{margin-top:0}.schedule-holiday-layout .holiday-list{max-height:min(58vh,620px);overflow:auto}.schedule-forms{align-items:start;grid-template-columns:minmax(0,1.35fr) minmax(320px,.9fr)}.schedule-forms form:first-child{grid-row:span 2}.gantt-shell{background:#fff;border:1px solid #e4e7ec;border-radius:8px;overflow:hidden}.gantt-scroll{overflow:auto}.gantt-grid{background:#fff;min-height:260px;position:relative}.gantt-fixed-head{align-items:center;background:#fff;border-bottom:1px solid #e4e7ec;border-right:1px solid #e4e7ec;box-shadow:6px 0 12px #1018280a;display:flex;height:70px;left:0;padding:12px;position:sticky;top:0;width:var(--gantt-left);z-index:12}.gantt-month-head,.gantt-day-head{display:grid;left:var(--gantt-left);position:absolute;width:var(--gantt-width)}.gantt-month-head{height:30px;top:0}.gantt-day-head{height:40px;top:30px}.gantt-month-cell,.gantt-day-cell{align-items:center;border-bottom:1px solid #e4e7ec;border-right:1px solid #eef2f7;display:grid;font-size:12px;font-weight:800;justify-items:center}.gantt-day-cell{appearance:none;background:#fff;color:inherit;cursor:pointer;font-family:inherit;padding:0;position:relative}.gantt-day-cell:hover{box-shadow:inset 0 0 0 2px #2563eb73;z-index:2}.gantt-day-cell:focus-visible{outline:3px solid #84adff;outline-offset:-3px;z-index:4}.gantt-month-cell{background:#f8fafc}.gantt-day-cell small{color:#667085;font-size:10px}.gantt-day-cell span{color:#475569;font-size:8px;max-width:30px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.gantt-day-cell.weekend{background:#f1f5f9;color:#64748b}.gantt-day-cell.holiday-head,.holiday-col{background:repeating-linear-gradient(135deg,#f1f5f9 0 5px,#e2e8f0 5px 10px)}.gantt-day-cell.today-head,.today-col{background:#dcfce7}.gantt-day-cell.selected{box-shadow:inset 0 0 0 3px #2563eb;color:#123f86;z-index:3}.gantt-day-cell.today-head.selected{background:linear-gradient(135deg,#dcfce7 0 50%,#dbeafe 50% 100%);box-shadow:inset 0 0 0 3px #2563eb,inset 0 -4px #16a34a}.gantt-day-bg.selected-col{background:#2563eb17;box-shadow:inset 1px 0 #2563eb33,inset -1px 0 #2563eb33}.gantt-stage-row,.gantt-row{display:grid;grid-template-columns:var(--gantt-left) var(--gantt-width);left:0;position:absolute;width:100%}.gantt-stage-row{height:30px}.gantt-stage-left,.gantt-stage-right{background:#eff6ff;border-bottom:1px solid #dbeafe;color:#1d4ed8;font-size:12px;font-weight:900;padding:7px 12px}.gantt-stage-left{box-shadow:6px 0 12px #1018280a;left:0;position:sticky;z-index:9}.gantt-row{height:42px}.gantt-left{align-items:center;background:#fff;border-bottom:1px solid #e4e7ec;border-right:1px solid #e4e7ec;box-shadow:6px 0 12px #1018280a;display:flex;gap:8px;justify-content:space-between;left:0;padding:7px 8px 7px 12px;position:sticky;z-index:8}.gantt-left strong{color:#253044;display:block;font-size:12px}.gantt-left small{color:#667085;display:block;font-size:11px}.gantt-left button{background:#f8fafc;border:1px solid #d0d5dd;border-radius:6px;color:#344054;font-size:11px;font-weight:800;padding:5px 8px}.gantt-row.critical-row .gantt-left{background:linear-gradient(90deg,#eef2fff2,#fff 70%);border-left:4px solid #4f46e5}.gantt-right{border-bottom:1px solid #eef2f7;position:relative}.gantt-day-bg{bottom:0;position:absolute;top:0}.weekend-col{background:#e2e8f075}.holiday-col{border-left:1px dashed #94a3b8;border-right:1px dashed #cbd5e1}.today-line{background:#16a34a;bottom:0;opacity:.8;position:absolute;top:0;width:2px;z-index:2}.gantt-bar{background:#dbeafe;border:1px solid #93c5fd;border-radius:7px;box-shadow:0 8px 18px #2563eb29;height:18px;overflow:hidden;position:absolute;top:12px;z-index:3}.gantt-bar-fill{align-items:center;background:linear-gradient(90deg,#145bc6,#2563eb);color:#fff;display:flex;font-size:10px;font-weight:900;height:100%;justify-content:center}.gantt-bar.critical{border:2px solid #4f46e5;box-shadow:0 0 0 2px #4f46e51a,0 7px 16px #2563eb1f}.gantt-bar.done .gantt-bar-fill{background:linear-gradient(90deg,#15803d,#22c55e)}.gantt-bar.late .gantt-bar-fill{background:linear-gradient(90deg,#b42318,#dc2626)}.gantt-slack{color:#667085;font-size:10px;font-weight:800;position:absolute;top:14px;white-space:nowrap}.gantt-connectors{left:var(--gantt-left);overflow:visible;pointer-events:none;position:absolute;top:0;z-index:5}.gantt-critical-connector{fill:none;stroke:#4f46e5;stroke-dasharray:5 4;stroke-width:2}.gantt-legend{align-items:center;background:#fff;border-top:1px solid #e2e8f0;color:#667085;display:flex;flex-wrap:wrap;font-size:12px;font-weight:800;gap:18px;padding:14px 18px}.gantt-legend-item{align-items:center;display:inline-flex;gap:8px}.legend-box{border:1px solid #d0d5dd;border-radius:4px;display:inline-block;height:14px;width:22px}.legend-weekend{background:#e5e7eb}.legend-holiday{background:repeating-linear-gradient(135deg,#f1f5f9 0 5px,#cbd5e1 5px 10px)}.legend-today{background:#bbf7d0;border-color:#86efac}.legend-critical{background:#4f46e5}.legend-normal{background:#2563eb}.legend-done{background:#16a34a}.legend-late{background:#dc2626}.dependency-list{display:grid;gap:10px;margin-top:12px}.critical-empty-note{background:#f8fafc;border:1px solid #e4e7ec;border-radius:8px;color:#667085;font-size:13px;font-weight:800;padding:12px 14px}.modal-backdrop{align-items:center;background:#10182873;display:grid;inset:0;padding:24px;position:fixed;z-index:20}.modal-panel{background:#fff;border-radius:8px;box-shadow:0 24px 80px #1018283d;margin:0 auto;max-height:90vh;max-width:760px;overflow:auto;padding:22px;width:100%}.new-work-modal{display:grid;gap:16px;max-width:720px}.new-work-modal .section-title{align-items:flex-start;margin-bottom:0}.work-photo-section{background:#f8fafc;border:1px solid #e4e7ec;border-radius:8px;display:grid;gap:10px;padding:12px}.work-photo-section-header{align-items:flex-start;display:flex;gap:12px;justify-content:space-between}.work-photo-section h3{color:#101828;font-size:15px;margin:0 0 3px}.work-photo-section p,.work-photo-empty{color:#667085;font-size:12px;font-weight:700}.photo-picker-button{align-items:center;background:#2563eb;border:1px solid #2563eb;border-radius:8px;color:#fff;cursor:pointer;display:inline-flex;font-size:13px;font-weight:900;justify-content:center;padding:8px 11px;white-space:nowrap}.photo-picker-button input{display:none}.work-photo-grid{display:grid;gap:8px;grid-template-columns:repeat(auto-fill,minmax(118px,1fr));max-height:260px;overflow:auto;padding-right:2px}.work-photo-thumb{background:#fff;border:1px solid #e4e7ec;border-radius:8px;display:grid;gap:6px;overflow:hidden;padding-bottom:8px}.work-photo-thumb.cover{border-color:#2563eb;box-shadow:0 0 0 2px #2563eb1f}.work-photo-thumb img{aspect-ratio:16 / 10;object-fit:cover;width:100%}.work-photo-thumb strong,.work-photo-thumb span{display:block;margin-left:8px;margin-right:8px}.work-photo-thumb strong{color:#101828;font-size:11px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.work-photo-thumb span{color:#175cd3;font-size:10px;font-weight:900}.work-photo-actions{display:flex;flex-wrap:wrap;gap:5px;margin:0 8px}.work-photo-actions button{background:#f8fafc;border:1px solid #d0d5dd;border-radius:8px;color:#344054;font-size:10px;font-weight:900;padding:6px 7px}.modal-close-button{background:#f8fafc;border:1px solid #d0d5dd;border-radius:8px;color:#475467;font-size:12px;font-weight:900;padding:8px 10px}.critical-kpi-grid,.critical-analysis-list{display:grid;gap:10px;margin-top:12px}.critical-kpi-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.critical-analysis-item{align-items:center;background:#fff7ed;border:1px solid #fed7aa;border-radius:8px;display:grid;gap:10px;grid-template-columns:36px 1fr auto;padding:12px}.critical-analysis-num{background:#ea580c;border-radius:999px;color:#fff;display:grid;font-size:12px;font-weight:900;height:28px;place-items:center;width:28px}.schedule-timeline{background:#fff;border:1px solid #e4e7ec;border-radius:8px;display:grid;gap:10px;padding:18px}.timeline-item{border-left:4px solid #2563eb;display:grid;gap:4px;padding:8px 12px}.timeline-item span,.holiday-card span{color:#667085;font-size:13px}.holiday-list{display:grid;gap:10px}.holiday-card{align-items:center;background:#f8fafc;border:1px solid #e4e7ec;border-radius:8px;display:flex;justify-content:space-between;padding:10px 12px}.finance-card.received,.finance-card.paid{border-left:4px solid #16a34a}.finance-card.pending,.finance-card.overdue{border-left:4px solid #dc2626}.finance-card.upcoming{border-left:4px solid #2563eb}.finance-card.balance{border-left:4px solid #7c3aed}.status-pill{border-radius:999px;display:inline-flex;font-size:12px;font-weight:700;padding:4px 8px}.status-pill.pago{background:#dcfce7;color:#166534}.status-pill.pendente,.status-pill.vencido{background:#fee2e2;color:#991b1b}.status-pill.cancelado{background:#e5e7eb;color:#4b5563}.physfin-panel{display:grid;gap:10px}.physfin-title,.physfin-matrix-card{background:#fff;border:1px solid #e4e7ec;border-radius:8px;box-shadow:0 10px 28px #1018280a}.physfin-title{align-items:center;margin-bottom:0;padding:12px 14px}.physfin-title h2{color:#101828;font-size:21px;margin-bottom:2px}.physfin-title p{font-size:12px}.physfin-actions{display:flex;flex-wrap:wrap;gap:6px;justify-content:flex-end}.physfin-actions button{background:#f8fafc;border:1px solid #d0d5dd;border-radius:8px;color:#344054;font-size:12px;font-weight:900;padding:8px 10px}.physfin-matrix-card{display:grid;gap:6px;overflow:hidden;padding:8px}.physfin-panel:fullscreen .physfin-title,.physfin-panel:fullscreen .physfin-fullscreen-hide,.physfin-panel:fullscreen .physfin-period{display:none!important}.physfin-panel:fullscreen .physfin-matrix-card{border:0;box-shadow:none;height:100vh;padding:0}.physfin-panel:fullscreen .physfin-table-scroll{border-radius:8px;max-height:none;height:100%}.physfin-period{align-items:center;color:#475467;display:flex;flex-wrap:wrap;font-size:12px;gap:12px;line-height:1.2}.physfin-period strong{color:#101828}.physfin-top-scroll{border:1px solid #e4e7ec;border-radius:8px;height:14px;overflow-x:auto;overflow-y:hidden}.physfin-top-scroll div{height:1px}.physfin-table-scroll{border:1px solid #dbe3ef;border-radius:8px;overflow:auto;max-height:78vh}.physfin-table{border-collapse:separate;border-spacing:0;table-layout:fixed}.physfin-table th{background:#1d4ed8;border-bottom:0;border-right:1px solid rgba(255,255,255,.18);color:#fff;font-size:12px;font-weight:950;letter-spacing:0;padding:10px 9px;position:sticky;text-transform:uppercase;top:0;z-index:5}.physfin-table td{background:#fff;border-bottom:1px solid #e4e7ec;border-right:1px solid #eef2f7;padding:8px;vertical-align:middle}.physfin-table .item-col{left:0;min-width:360px;width:360px}.physfin-table .cost-col{left:360px;min-width:150px;width:150px}.physfin-sticky{position:sticky;z-index:4}th.physfin-sticky{z-index:7}.physfin-table td.physfin-sticky{background:#fff}.physfin-table .item-col strong,.physfin-table .cost-col strong{color:#101828;display:block}.physfin-table .item-col small{color:#667085;display:block;margin-top:5px}.month-col,.physfin-cell{min-width:148px;width:148px}.distribution-pill{background:#f2f4f7;border-radius:999px;color:#475467;display:inline-flex;font-size:12px;font-weight:900;margin-top:8px;padding:4px 8px}.distribution-pill.done{background:#dcfce7;color:#166534}.distribution-pill.over{background:#fee2e2;color:#b42318}.physfin-cell{position:relative}.physfin-percent-input{align-items:center;border:1px solid #cbd5e1;border-radius:9px;display:grid;gap:2px;grid-template-columns:minmax(0,1fr) auto;margin:0 auto 7px;overflow:hidden;width:94px}.physfin-percent-input input{border:0;border-radius:0;font-size:13px;font-weight:900;margin:0;min-width:0;padding:7px 2px 7px 8px;text-align:right;width:100%}.physfin-percent-input span{color:#64748b;font-size:12px;font-weight:950;line-height:1;padding-right:10px}.physfin-cell>input{border:1px solid #cbd5e1;border-radius:7px;font-size:13px;font-weight:900;margin:0 auto 7px;padding:7px 8px;text-align:center;width:74px}.physfin-cell-values{display:grid;gap:2px;min-height:38px;position:relative;z-index:1}.physfin-cell-values span,.physfin-cell-values small{color:#667085;font-size:11px;font-weight:800;white-space:nowrap}.physfin-cell-values strong{color:#15803d;font-size:11px;white-space:nowrap}.physfin-bar{background:#22c55e;border-radius:999px;bottom:8px;height:5px;left:10px;position:absolute;right:10px}.physfin-print-sheet{display:none}.physfin-total-row td{font-size:12px;font-weight:950;text-align:right}.physfin-total-row .item-col{text-align:left}.physfin-total-row.planned td{background:#f8fafc}.physfin-total-row.realized td{background:#ecfdf3;color:#166534}.physfin-panel:fullscreen{background:#f2f4f7;overflow:auto;padding:24px}.status-pill.nao_iniciado{background:#e5e7eb;color:#344054}.status-pill.em_andamento{background:#dbeafe;color:#1d4ed8}.status-pill.concluido{background:#dcfce7;color:#166534}.status-pill.atrasado{background:#fee2e2;color:#991b1b}.table-wrap{overflow-x:auto}table{background:#fff;border-collapse:collapse;border-radius:8px;overflow:hidden;width:100%}th,td{border-bottom:1px solid #e4e7ec;padding:12px;text-align:left;vertical-align:top}td small{color:#667085;display:block;font-size:12px;margin-top:3px}@media(max-width:900px){.works-layout,.compositions-layout,.form-grid,.inline-form,.supplies-filters,.budget-toolbar,.schedule-forms,.schedule-kpis,.schedule-filters,.schedule-holiday-layout{grid-template-columns:1fr}.schedule-actions,.schedule-title,.physfin-title,.tasks-title{align-items:stretch;display:grid}.physfin-actions{justify-content:flex-start}.task-filters{grid-template-columns:1fr 1fr}.finance-purchase-filters{grid-template-columns:1fr}.overview-work-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.finance-title,.contract-actions{display:grid}.finance-actions{justify-content:flex-start}.work-hero-main{display:grid}.work-hero-actions{justify-content:flex-start}.analytic-filters{grid-template-columns:1fr}.analytic-title-row,.supply-bank-title{display:grid}.supply-top-actions,.composition-top-actions{justify-content:flex-start}.composition-bank-title,.structure-title{display:grid}.composition-search,.composition-id-grid{grid-template-columns:1fr}}@media(max-width:640px){.overview-work-grid,.work-card-stats{grid-template-columns:1fr}.work-card-stats strong{font-size:13px}.task-filters{grid-template-columns:1fr}.task-attachments-head,.task-attachment-list article{grid-template-columns:1fr}}@media print{.abc-print-hide,.physfin-print-hide,.app-header,.budget-subnav,.budget-module-title,.module-grid,.module-nav,.supplies-panel,.compositions-panel,.budget-panel,.work-hero,.work-module-nav,.works-layout,.logout-button{display:none!important}.abc-panel{border:0;box-shadow:none}.schedule-panel{background:#fff}.gantt-shell{border:0}.gantt-scroll{overflow:visible}.gantt-grid{transform:scale(.72);transform-origin:top left}.budget-kpi,.budget-summary-table-card{box-shadow:none}.analytic-print-hide,.budget-workspace>.budget-summary-tab,.budget-workspace>.abc-panel,.budget-workspace>.compositions-panel,.budget-workspace>.supplies-panel{display:none!important}.budget-workspace,.budget-analytic,.analytic-table-card{background:#fff;border:0;box-shadow:none;padding:0}.analytic-print-header{border-bottom:1px solid #d0d5dd;display:block;margin-bottom:16px;padding-bottom:12px}.analytic-print-header h1{font-size:24px;margin-bottom:6px}.analytic-table{min-width:0}.analytic-table thead th{background:#e4e7ec!important;color:#101828!important}.physfin-panel,.physfin-matrix-card{display:block}.physfin-matrix-card,.physfin-title,.physfin-fullscreen-hide{display:none!important}.physfin-print-sheet{display:block}.physfin-print-sheet h1{font-size:22px;margin:0 0 6px}.physfin-print-sheet p{color:#475467;font-size:12px;margin:0 0 5px}.physfin-print-sheet table{border-collapse:collapse;font-size:9px;margin-top:12px;width:100%}.physfin-print-sheet th{background:#1d4ed8!important;color:#fff!important;font-size:8px;padding:5px;text-transform:uppercase}.physfin-print-sheet td{border:1px solid #d0d5dd;padding:5px;vertical-align:top}.physfin-print-sheet small,.physfin-print-sheet span{display:block;font-size:8px}}:root{--erp-bg: #f5f3ee;--erp-surface: #ffffff;--erp-surface-soft: #fbfaf7;--erp-border: #e5ded2;--erp-border-strong: #d8cbb8;--erp-text: #24211d;--erp-muted: #746d64;--erp-muted-2: #9b9286;--erp-primary: #b89454;--erp-primary-dark: #7a5b29;--erp-primary-soft: #f3ead8;--erp-charcoal: #2d2a26;--erp-green: #16805b;--erp-green-soft: #e9f6ef;--erp-red: #b42318;--erp-red-soft: #fff0ed;--erp-blue: #315f7d;--erp-shadow: 0 18px 48px rgba(45, 42, 38, .08);--erp-shadow-soft: 0 10px 28px rgba(45, 42, 38, .06);--erp-radius: 8px}body{background:linear-gradient(180deg,#f5f3eef5,#faf9f6fa),var(--erp-bg);color:var(--erp-text)}.app-shell{display:grid;grid-template-columns:278px minmax(0,1fr);margin:0;max-width:none;min-height:100vh;padding:0}.erp-sidebar{background:linear-gradient(180deg,#2f2b25,#211f1c);border-right:1px solid rgba(255,255,255,.08);color:#f8f4ec;display:flex;flex-direction:column;gap:22px;min-height:100vh;padding:22px 16px;position:sticky;top:0}.erp-brand{align-items:center;display:flex;gap:12px;padding:4px 8px 18px}.erp-brand-mark{align-items:center;background:linear-gradient(135deg,#d7bd83,#9a7638);border:1px solid rgba(255,255,255,.18);border-radius:8px;color:#211f1c;display:grid;font-size:22px;font-weight:950;height:42px;justify-items:center;width:42px}.erp-brand strong,.erp-brand span{display:block}.erp-brand strong{color:#fffaf1;font-size:17px;letter-spacing:0}.erp-brand span{color:#fffaf1ad;font-size:12px;font-weight:800;margin-top:2px}.erp-nav-group{display:grid;gap:7px}.erp-nav-group>span{color:#fffaf18c;font-size:11px;font-weight:900;padding:0 10px 5px;text-transform:uppercase}.erp-nav-group button{align-items:center;background:transparent;border:1px solid transparent;border-radius:var(--erp-radius);color:#fffaf1c7;display:flex;gap:10px;min-height:42px;padding:10px;text-align:left}.erp-nav-group button.active{background:#d8bd8329;border-color:#d8bd835c;color:#fffaf1}.erp-nav-group button:disabled{cursor:default;opacity:.64}.erp-nav-icon{align-items:center;background:#ffffff14;border:1px solid rgba(255,255,255,.09);border-radius:7px;color:#e4c989;display:grid;flex:0 0 auto;font-size:12px;font-weight:950;height:26px;justify-items:center;width:26px}.erp-main{display:grid;gap:18px;min-width:0;padding:24px}.erp-topbar{align-items:center;background:#ffffffd1;border:1px solid var(--erp-border);border-radius:var(--erp-radius);box-shadow:var(--erp-shadow-soft);display:flex;gap:20px;justify-content:space-between;padding:18px 20px}.erp-topbar h1{color:var(--erp-text);font-size:26px;margin:0}.erp-user-area{align-items:center;display:flex;gap:10px;justify-content:flex-end}.erp-user-card{display:grid;gap:2px;text-align:right}.erp-user-card strong{color:var(--erp-text);font-size:13px}.erp-user-card span{color:var(--erp-muted);font-size:12px;font-weight:700}.topbar-icon-button,.logout-button,.ghost-action,.overview-actions button,.work-card-actions button,.work-hero-actions button,.work-module-nav button,.stage-row-actions button,.stage-modal-actions button,.section-title button,.row-actions button{border-radius:var(--erp-radius);transition:background-color .16s ease,border-color .16s ease,box-shadow .16s ease,transform .16s ease}.topbar-icon-button{background:var(--erp-surface-soft);border:1px solid var(--erp-border);color:var(--erp-primary-dark);font-size:12px;font-weight:950;height:38px;padding:0;width:38px}.logout-button,.primary-action,.overview-actions .primary-action,.work-card-actions .primary-action,.photo-picker-button{background:linear-gradient(135deg,#b89454,#8d682f);border-color:#8d682f;color:#fff}.module-content,.work-workspace,.overview-panel{margin-top:0}.eyebrow{color:var(--erp-primary-dark)}.overview-metrics,.work-hero-metrics{gap:12px}.legacy-metric{background:linear-gradient(145deg,#fffffff5,#fbfaf7fa),var(--erp-surface);border:1px solid var(--erp-border);border-radius:var(--erp-radius);box-shadow:var(--erp-shadow-soft);min-height:116px;overflow-x:hidden;overflow-y:auto;position:relative}.legacy-metric:after{background:linear-gradient(180deg,#b8945438,#b8945400);content:"";height:68px;position:absolute;right:-28px;top:-26px;transform:rotate(24deg);width:94px}.legacy-metric:hover{box-shadow:var(--erp-shadow);transform:translateY(-1px)}.legacy-metric .metric-icon{background:var(--erp-primary-soft);border:1px solid rgba(184,148,84,.24);border-radius:999px;height:9px;width:38px}.legacy-metric small{color:var(--erp-muted);font-size:12px;letter-spacing:0;text-transform:uppercase}.legacy-metric strong{color:var(--erp-text);font-size:clamp(20px,1.8vw,27px);letter-spacing:0;position:relative;z-index:1}.legacy-metric.positive strong,.positive-text{color:var(--erp-green)}.legacy-metric.negative,.legacy-metric.outflow{background:linear-gradient(145deg,#fff,#fff8f6);border-color:#f2c6bf}.legacy-metric.outflow strong,.legacy-metric.negative strong,.negative-text{color:var(--erp-red)}.overview-section,.work-hero,.stage-summary-card,.budget-module-title,.budget-subnav,.budget-summary-table-card,.budget-analytic,.finance-title,.finance-card,.schedule-panel,.tasks-title,.users-title,.tasks-table-card,.users-table-card,.placeholder-panel,.modal-panel{border-color:var(--erp-border);border-radius:var(--erp-radius);box-shadow:var(--erp-shadow-soft)}.work-hero{background:linear-gradient(135deg,#fffffff0,#fbfaf7f0),var(--erp-surface);display:grid;gap:18px;grid-template-columns:minmax(0,1fr) 280px;padding:22px}.work-hero.work-hero-summary-only{background:transparent;border:0;box-shadow:none;grid-template-columns:minmax(0,1fr);padding:0}.work-hero-main,.work-hero-metrics{grid-column:1}.work-hero-copy{min-width:0}.work-breadcrumb{color:var(--erp-muted-2);font-size:12px;font-weight:850;margin:0 0 10px}.work-hero-main h2{color:var(--erp-text);font-size:clamp(28px,3vw,42px);letter-spacing:0;margin-bottom:8px}.work-hero-main p strong,.work-hero-main p span{display:block}.work-hero-main p strong{color:var(--erp-text);font-size:15px}.work-hero-main p span{color:var(--erp-muted);font-size:13px;margin-top:2px}.work-hero-photo{border:1px solid var(--erp-border);border-radius:var(--erp-radius);grid-column:2;grid-row:1 / span 2;min-height:100%;overflow:hidden}.work-hero-photo img{height:100%;object-fit:cover;width:100%}.ghost-action,.work-hero-actions button,.work-module-nav button,.stage-row-actions button,.stage-modal-actions button,.section-title button,.row-actions button{background:var(--erp-surface-soft);border:1px solid var(--erp-border-strong);color:var(--erp-charcoal);font-weight:850}.work-module-nav{background:var(--erp-surface);border-color:var(--erp-border);box-shadow:var(--erp-shadow-soft);gap:6px;padding:7px}.work-module-nav button{border-color:transparent;color:var(--erp-muted);padding:11px 14px}.work-module-nav button.active,.module-nav button.active,.budget-subnav button.active{background:var(--erp-charcoal);border-color:var(--erp-charcoal);color:#fffaf1}.status-pill{border:1px solid var(--erp-border);background:var(--erp-surface-soft);color:var(--erp-muted);font-size:11px;font-weight:900;padding:6px 9px;text-transform:uppercase}.status-pill.active,.status-pill.em_andamento{background:var(--erp-green-soft);border-color:#b9e3cd;color:var(--erp-green)}.status-pill.planned{background:#eff6ff;border-color:#c7ddf2;color:var(--erp-blue)}.status-pill.paused{background:#fff7ed;border-color:#fed7aa;color:#9a4f13}.status-pill.cancelled,.status-pill.vencido,.status-pill.atrasado{background:var(--erp-red-soft);border-color:#f2c6bf;color:var(--erp-red)}.status-pill.completed,.status-pill.concluido{background:var(--erp-green-soft);border-color:#b9e3cd;color:var(--erp-green)}.work-summary-grid{align-items:start;display:grid;gap:16px;grid-template-columns:minmax(0,1fr) 310px}.work-summary-main{min-width:0}.work-summary-aside{display:grid;gap:12px;min-width:0}.info-widget{background:var(--erp-surface);border:1px solid var(--erp-border);border-radius:var(--erp-radius);box-shadow:var(--erp-shadow-soft);display:grid;gap:12px;padding:16px}.info-widget-title{align-items:flex-start;display:flex;gap:12px;justify-content:space-between}.info-widget-title span{color:var(--erp-muted);font-size:12px;font-weight:950;text-transform:uppercase}.info-widget-title strong{color:var(--erp-text);font-size:18px}.progress-track{background:#eee7dc;border-radius:999px;height:9px;overflow:hidden}.progress-track span{background:linear-gradient(90deg,var(--erp-primary),var(--erp-green));border-radius:inherit;display:block;height:100%}.work-progress-details{display:grid;gap:4px}.work-progress-details p{margin:0}.work-progress-details strong{font-size:12px}.info-list{display:grid;gap:9px;margin:0}.info-list div{align-items:center;border-top:1px solid #eee8de;display:flex;gap:12px;justify-content:space-between;padding-top:9px}.info-list dt{color:var(--erp-muted);font-size:12px;font-weight:800}.info-list dd{color:var(--erp-text);font-size:13px;font-weight:900;margin:0;text-align:right}.stage-summary-card{background:var(--erp-surface);padding:20px}.stage-summary-title h2{color:var(--erp-text);font-size:22px}.stage-summary-title p,.stage-summary-note{color:var(--erp-muted)}.table-wrap{border:1px solid var(--erp-border);border-radius:var(--erp-radius)}.stage-summary-table{border-collapse:separate;border-spacing:0}.stage-summary-table thead th{background:#f6f1e8;border-bottom:1px solid var(--erp-border);color:var(--erp-muted);font-size:11px;letter-spacing:0;padding:15px 14px;text-transform:uppercase}.stage-summary-table td{border-bottom-color:#eee8de;padding:16px 14px}.stage-summary-table tbody tr:last-child td{border-bottom:0}.stage-parent-row{background:#fff;box-shadow:inset 4px 0 0 var(--erp-primary)}.stage-parent-row td:first-child strong{color:var(--erp-text);font-size:14px}.substage-row{background:#fbfaf7}.substage-name{color:#4f4941}.substage-name:before{border-color:#c7bba9}.money-cell strong{color:var(--erp-text);font-size:13px}.stage-row-actions button:first-child{background:var(--erp-primary-soft);border-color:#dfcca7;color:var(--erp-primary-dark)}.substage-row .stage-row-actions button:first-child{background:var(--erp-surface-soft);border-color:var(--erp-border-strong);color:var(--erp-charcoal)}input,select,textarea{background:#fff;border-color:var(--erp-border-strong);color:var(--erp-text)}input:focus,select:focus,textarea:focus,button:focus-visible{box-shadow:0 0 0 3px #b894542e;outline:none}.overview-work-card,.module-card,.work-card-stats div{border-color:var(--erp-border);border-radius:var(--erp-radius)}.work-card-photo{background:linear-gradient(135deg,#eee8de,#f8f3ea)}.task-alert-card{background:#fff8eb;border-color:#ecd7aa}@media(max-width:1120px){.app-shell{grid-template-columns:minmax(0,1fr);width:100%}.erp-sidebar,.erp-main{min-width:0;width:100%}.erp-sidebar{min-height:auto;position:static}.erp-nav-group{grid-template-columns:repeat(auto-fit,minmax(170px,1fr))}.erp-nav-group>span{grid-column:1 / -1}.work-hero,.work-summary-grid{grid-template-columns:1fr}.work-hero-main,.work-hero-metrics,.work-hero-photo{grid-column:1;grid-row:auto}.work-hero-photo{aspect-ratio:16 / 6}}@media(max-width:720px){.erp-main{padding:14px}.erp-topbar,.work-hero-main,.section-title,.info-widget-title{align-items:stretch;display:grid}.erp-user-area{justify-content:flex-start}.erp-user-card{text-align:left}.work-hero{padding:16px}.work-hero-actions,.stage-modal-actions,.row-actions{justify-content:flex-start}.work-hero-main h2{font-size:28px}}.overview-section{overflow:hidden}.overview-work-grid{grid-template-columns:repeat(auto-fill,minmax(300px,360px));justify-content:start}.overview-work-card{background:var(--erp-surface);box-shadow:var(--erp-shadow-soft);max-width:360px;width:100%}.work-card-photo{aspect-ratio:16 / 10;height:auto;max-height:220px;min-height:160px}.work-card-photo img{height:100%;object-fit:cover;object-position:center;width:100%}.work-card-photo:not(.has-photo){background:linear-gradient(135deg,#b8945421,#2d2a260a),#f8f3ea;color:var(--erp-muted)}.stage-name-cell{align-items:center;display:grid;gap:8px;grid-template-columns:auto minmax(0,1fr) auto;min-width:0}.stage-name-cell.compact{display:inline-grid;grid-template-columns:auto minmax(0,max-content) auto auto;max-width:100%;white-space:nowrap}.stage-name-cell strong,.stage-name-cell span{min-width:0}.row-add-button{align-items:center;border-radius:6px!important;display:inline-grid;font-size:12px;font-weight:950;height:24px;justify-items:center;padding:0!important;width:24px}.row-name-toggle{appearance:none;background:transparent!important;border:0!important;color:inherit!important;cursor:pointer;font:inherit;font-weight:800;min-width:0;padding:2px 4px!important;text-align:left}.row-name-toggle:hover{color:var(--erp-primary-dark)!important;text-decoration:underline;text-underline-offset:3px}.row-name-toggle:focus-visible{border-radius:4px;outline:2px solid var(--erp-primary);outline-offset:2px}.row-add-button{background:var(--erp-primary-soft)!important;border:1px solid #dfcca7!important;color:var(--erp-primary-dark)!important}.stage-summary-table td,.budget-summary-table td,.analytic-table td,.supply-table td,.composition-table td,.abc-table td{padding-bottom:9px;padding-top:9px}.stage-summary-table thead th,.budget-summary-table thead th,.analytic-table thead th,.supply-table thead th,.composition-table thead th,.abc-table thead th{padding-bottom:10px;padding-top:10px}.analytic-table thead th,.supply-table thead th,.composition-table thead th,.abc-table thead th{position:sticky;top:0;z-index:2}.analytic-table thead th{background:#3a332b}.analytic-stage-row td{background:#f2eadc;color:var(--erp-primary-dark)}.analytic-substage-row td{background:#fbf7ef;color:var(--erp-charcoal)}.analytic-item-row td:first-child,.analytic-item-row td:nth-child(2) strong{color:var(--erp-text);font-size:13px;font-weight:850}.analytic-row-actions,.composition-row-actions,.supply-row-actions,.stage-row-actions{gap:5px}.analytic-row-actions button,.composition-row-actions button,.supply-row-actions button,.stage-row-actions button{font-size:11px;min-height:28px;padding:5px 8px}.table-sort-button,.supply-sort{align-items:center;background:transparent!important;border:0!important;color:inherit!important;display:inline-flex;font-size:inherit;font-weight:inherit;gap:5px;padding:0!important;text-align:inherit}.table-sort-button span{color:var(--erp-primary-dark);font-size:10px}.composition-search{align-items:end;background:var(--erp-surface);border:1px solid var(--erp-border);border-radius:var(--erp-radius);box-shadow:var(--erp-shadow-soft);display:grid;gap:8px;grid-template-columns:minmax(280px,1fr) minmax(130px,.28fr) minmax(110px,.22fr) minmax(105px,.2fr) minmax(105px,.2fr) auto;padding:10px}.composition-search label{color:var(--erp-muted);font-size:11px;font-weight:900;gap:4px;text-transform:uppercase}.composition-search input,.composition-search select{min-height:36px;padding:8px 10px}.composition-search-main input{min-width:0}.composition-search button,.abc-filter-bar>button{background:var(--erp-surface-soft);border:1px solid var(--erp-border-strong);border-radius:var(--erp-radius);color:var(--erp-charcoal);font-weight:850;padding:11px 13px}.composition-search button:disabled{cursor:default;opacity:.48}.composition-table td:first-child strong,.composition-table td:nth-child(2) strong{color:var(--erp-text);font-size:13px;font-weight:850}.composition-table td{padding-bottom:8px;padding-top:8px}.abc-filter-bar{align-items:center;display:flex;flex-wrap:wrap;gap:10px}.abc-type-filter{align-items:center;display:flex;gap:8px}.abc-type-filter select{min-width:160px;padding:8px 10px}.budget-summary-table .stage-name-cell,.stage-summary-table .stage-name-cell{min-width:240px}.budget-summary-table .budget-stage-row{background:#fff;box-shadow:inset 4px 0 0 var(--erp-primary)}.budget-summary-table .budget-substage-row{background:#fbfaf7}.budget-summary-table thead th{background:#f6f1e8;color:var(--erp-muted)}.schedule-panel,.schedule-timeline,.gantt-shell,.physfin-title,.physfin-matrix-card{background:var(--erp-surface);border-color:var(--erp-border);border-radius:var(--erp-radius);box-shadow:var(--erp-shadow-soft)}.schedule-title,.schedule-filters,.schedule-forms,.schedule-kpis,.schedule-holiday-layout{gap:12px}.schedule-actions button,.schedule-title button,.schedule-panel button,.gantt-left button,.physfin-actions button{background:var(--erp-surface-soft);border:1px solid var(--erp-border-strong);border-radius:var(--erp-radius);color:var(--erp-charcoal);font-size:12px;font-weight:850;padding:8px 10px}.schedule-panel table th,.gantt-month-cell,.gantt-day-cell,.physfin-table th{background:#f6f1e8;color:var(--erp-muted);font-size:11px;font-weight:950;letter-spacing:0;text-transform:uppercase}.schedule-panel table td,.physfin-table td{border-color:#eee8de;padding-bottom:8px;padding-top:8px}.gantt-stage-left,.gantt-stage-right{background:#f2eadc;border-bottom-color:#dfcca7;color:var(--erp-primary-dark)}.gantt-left{border-bottom-color:#eee8de;border-right-color:var(--erp-border);box-shadow:6px 0 12px #2d2a260a}.gantt-left strong,.physfin-table .item-col strong,.physfin-table .cost-col strong{color:var(--erp-text)}.gantt-bar{background:#eadabd;border-color:#d7bd83;box-shadow:0 8px 18px #b8945429}.gantt-bar-fill{background:linear-gradient(90deg,#8d682f,#b89454)}.gantt-bar.done .gantt-bar-fill,.physfin-bar{background:linear-gradient(90deg,#16805b,#22a06b)}.gantt-bar.late .gantt-bar-fill{background:linear-gradient(90deg,#8f1f16,#b42318)}.physfin-title h2{color:var(--erp-text)}.physfin-period{background:#fbfaf7;border:1px solid var(--erp-border);border-radius:var(--erp-radius);padding:10px 12px}.physfin-table th{background:#3a332b;color:#fffaf1}.physfin-table td.physfin-sticky,.physfin-table td{background:#fff}.physfin-total-row.planned td{background:#fbfaf7}.physfin-total-row.realized td{background:var(--erp-green-soft)}.distribution-pill{background:var(--erp-primary-soft);color:var(--erp-primary-dark)}.schedule-print-header,.schedule-print-note{display:none}.analytic-actions{align-items:center;background:var(--erp-surface);border:1px solid var(--erp-border);border-radius:var(--erp-radius);box-shadow:var(--erp-shadow-soft);display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end;padding:10px}.analytic-actions button,.composition-top-actions button,.supply-top-actions button{align-items:center;border-radius:var(--erp-radius);display:inline-flex;font-size:12px;font-weight:900;gap:6px;min-height:36px;padding:8px 11px;white-space:nowrap}.analytic-actions button:not(.primary-action),.composition-top-actions button:not(.primary-action),.supply-top-actions button:not(.primary-action){background:var(--erp-surface-soft);border:1px solid var(--erp-border-strong);color:var(--erp-charcoal)}.analytic-actions button:hover,.composition-top-actions button:hover,.supply-top-actions button:hover{box-shadow:0 8px 18px #2d2a2614;transform:translateY(-1px)}.composition-modal-backdrop{align-items:stretch;padding:14px;z-index:25}.composition-modal-full{display:grid;grid-template-rows:auto auto minmax(0,1fr) auto;gap:14px;height:calc(100vh - 28px);margin:0;max-height:none;max-width:none;overflow-x:hidden;overflow-y:auto;padding:0;width:100%}.composition-modal-header,.composition-modal-footer{align-items:center;background:#fff;display:flex;gap:14px;justify-content:space-between;padding:16px 18px}.composition-modal-header{border-bottom:1px solid var(--erp-border)}.composition-modal-header h2{color:var(--erp-text);font-size:24px;margin:0}.composition-modal-header>strong,.composition-modal-footer span strong{background:var(--erp-primary-soft);border:1px solid #dfcca7;border-radius:var(--erp-radius);color:var(--erp-primary-dark);padding:9px 12px}.composition-modal-header button,.composition-modal-footer button,.composition-structure-actions button{background:var(--erp-surface-soft);border:1px solid var(--erp-border-strong);border-radius:var(--erp-radius);color:var(--erp-charcoal);font-size:12px;font-weight:900;padding:8px 11px}.composition-modal-section{display:grid;gap:10px;padding:0 18px}.composition-modal-section h3{color:var(--erp-text);font-size:15px;margin:0}.composition-structure-section{min-height:0;overflow:visible}.composition-structure-actions{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}.composition-structure-wrap{border:1px solid var(--erp-border);border-radius:var(--erp-radius);min-height:0;overflow:visible}.composition-structure-table{border-collapse:separate;border-spacing:0;table-layout:fixed;width:100%}.composition-structure-table th{background:#f6f1e8;color:var(--erp-muted);font-size:11px;font-weight:950;padding:9px 8px;text-transform:uppercase}.composition-structure-table td{padding:8px;vertical-align:middle}.composition-structure-table th:nth-child(1),.composition-structure-table td:nth-child(1){width:112px}.composition-structure-table th:nth-child(2),.composition-structure-table td:nth-child(2){width:auto}.composition-structure-table th:nth-child(3),.composition-structure-table td:nth-child(3){width:76px}.composition-structure-table th:nth-child(4),.composition-structure-table td:nth-child(4),.composition-structure-table th:nth-child(5),.composition-structure-table td:nth-child(5),.composition-structure-table th:nth-child(6),.composition-structure-table td:nth-child(6){width:126px}.composition-structure-table th:nth-child(7),.composition-structure-table td:nth-child(7){width:88px}.composition-structure-table input,.composition-structure-table select{min-width:0;padding:8px 9px;width:100%}.composition-autocomplete{position:relative}.composition-suggestions{background:#fff;border:1px solid var(--erp-border-strong);border-radius:var(--erp-radius);box-shadow:0 18px 44px #2d2a262e;display:grid;gap:2px;left:0;max-height:290px;min-width:min(560px,72vw);overflow:auto;padding:6px;position:absolute;right:auto;top:calc(100% + 6px);z-index:80}.composition-suggestions button{background:#fff;border:0;border-radius:6px;color:var(--erp-text);display:grid;gap:2px;grid-template-columns:92px minmax(0,1fr) auto;padding:8px;text-align:left}.composition-suggestions button:hover,.composition-suggestions button.active{background:var(--erp-primary-soft)}.composition-suggestions strong,.composition-suggestions span,.composition-suggestions small{color:inherit;font-size:12px;min-width:0}.composition-suggestions span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.composition-suggestions.floating{position:absolute;z-index:9999}.composition-suggestions.budget-composition-dropdown{left:auto;max-height:260px;min-width:0;overflow-y:auto;position:fixed;right:auto;z-index:9999}.composition-suggestions.budget-composition-dropdown button{display:grid;gap:3px;grid-template-columns:minmax(0,1fr) auto;min-height:48px}.composition-suggestions.budget-composition-dropdown button strong{font-size:13px;font-weight:900;grid-column:1 / -1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.composition-suggestions.budget-composition-dropdown button span{color:var(--erp-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.composition-suggestions.budget-composition-dropdown button small{background:#fff7ed;border-radius:999px;color:#c2410c;font-size:11px;font-weight:900;padding:3px 7px}.composition-suggestions.budget-composition-dropdown button.selected{background:#fff7ed}.composition-modal-footer{border-top:1px solid var(--erp-border);position:sticky;bottom:0;z-index:2}.composition-modal-footer>div{display:flex;gap:8px;justify-content:flex-end}.modal-backdrop:has(.supply-modal){z-index:90}@media(max-width:900px){.composition-modal-backdrop{padding:0}.composition-modal-full{border-radius:0;height:100vh}.composition-modal-header,.composition-modal-footer,.section-title.structure-title{align-items:stretch;display:grid}.composition-structure-wrap{overflow-x:auto}.composition-structure-table{min-width:760px}.composition-suggestions{min-width:min(520px,88vw)}.budget-batch-head{display:none}.budget-batch-row{grid-template-columns:1fr 1fr}.budget-batch-row>div,.budget-batch-row>input{grid-column:1 / -1}.budget-batch-total{align-items:stretch;display:grid;justify-content:stretch}}@media print{@page{size:A4 landscape;margin:8mm}body.schedule-printing{background:#fff!important;color:#111!important;print-color-adjust:exact;-webkit-print-color-adjust:exact}body.schedule-printing .erp-sidebar,body.schedule-printing .erp-topbar,body.schedule-printing .schedule-title,body.schedule-printing .schedule-kpis,body.schedule-printing .schedule-actions,body.schedule-printing .schedule-gantt-meta,body.schedule-printing .form-success,body.schedule-printing .form-error,body.schedule-printing .critical-empty-note,body.schedule-printing .gantt-left button,body.schedule-printing .modal-backdrop{display:none!important}body.schedule-printing .app-shell,body.schedule-printing .erp-main,body.schedule-printing .module-content,body.schedule-printing .work-workspace,body.schedule-printing .work-module-content,body.schedule-printing .schedule-panel,body.schedule-printing .schedule-gantt-frame{background:#fff!important;border:0!important;box-shadow:none!important;display:block!important;margin:0!important;max-width:none!important;min-height:0!important;overflow:visible!important;padding:0!important;width:100%!important}body.schedule-printing .work-hero,body.schedule-printing .work-hero-metrics{display:none!important}body.schedule-printing .schedule-print-header{border-bottom:1px solid #d8cbb8;display:grid!important;gap:4px;margin-bottom:5mm;padding-bottom:3mm}body.schedule-printing .schedule-print-header>div:first-child{align-items:baseline;display:grid;gap:8px;grid-template-columns:auto auto 1fr}body.schedule-printing .schedule-print-header strong{color:#7a5b29;font-size:13px;text-transform:uppercase}body.schedule-printing .schedule-print-header b{color:#111;font-size:14px;text-align:right}body.schedule-printing .schedule-print-header>div:last-child{color:#333;display:flex;flex-wrap:wrap;font-size:9px;gap:4px 12px}body.schedule-printing .gantt-shell{border:0!important;box-shadow:none!important;overflow:visible!important;width:100%!important}body.schedule-printing .gantt-scroll{overflow:visible!important;width:100%!important}body.schedule-printing .gantt-grid{break-inside:avoid;page-break-inside:avoid;transform:scale(.94);transform-origin:top left}body.schedule-printing .gantt-fixed-head,body.schedule-printing .gantt-left,body.schedule-printing .gantt-stage-left{position:absolute!important}body.schedule-printing .gantt-month-cell,body.schedule-printing .gantt-day-cell,body.schedule-printing .gantt-stage-left,body.schedule-printing .gantt-stage-right,body.schedule-printing .gantt-left,body.schedule-printing .gantt-right{border-color:#d9d2c8!important}body.schedule-printing .gantt-left strong{font-size:10px}body.schedule-printing .gantt-left small{font-size:8px}body.schedule-printing .gantt-legend{border-top:1px solid #d8cbb8!important;font-size:9px!important;gap:10px!important;margin-top:2mm;padding:3mm 0 0!important}body.schedule-printing .legend-box{height:10px;width:16px}body.schedule-printing .schedule-print-note{display:block!important}}.schedule-print-report-host{display:none}.schedule-print-dialog-backdrop{align-items:stretch;padding:18px;z-index:160}.schedule-print-dialog{background:#f5f3ef;display:grid;grid-template-rows:auto minmax(0,1fr) auto;height:calc(100vh - 36px);max-height:none;max-width:none;overflow:hidden;padding:0;width:min(1680px,calc(100vw - 36px))}.schedule-print-dialog-header,.schedule-print-dialog-actions{align-items:center;background:#fff;display:flex;justify-content:space-between;padding:16px 20px}.schedule-print-dialog-header{border-bottom:1px solid var(--erp-border)}.schedule-print-dialog-header h2,.schedule-print-dialog-header p{margin:0}.schedule-print-dialog-layout{display:grid;gap:14px;grid-template-columns:minmax(320px,390px) minmax(0,1fr);min-height:0;padding:14px}.schedule-print-settings,.schedule-print-preview{background:#fff;border:1px solid var(--erp-border);border-radius:12px;min-height:0}.schedule-print-settings{display:grid;gap:14px;overflow-y:auto;padding:16px}.schedule-print-settings-grid{align-content:start;display:grid;gap:12px;grid-template-columns:repeat(2,minmax(0,1fr))}.schedule-print-settings-grid label{color:#4c463d;display:grid;font-size:12px;font-weight:850;gap:6px}.schedule-print-settings-grid .span-2{grid-column:1 / -1}.schedule-print-settings-grid input,.schedule-print-settings-grid select{min-width:0;width:100%}.schedule-print-checkbox{align-items:center;display:flex!important;grid-column:1 / -1;grid-template-columns:auto 1fr}.schedule-print-checkbox input{height:18px;margin:0;width:18px}.schedule-print-result{background:#faf6ef;border:1px solid #ead9bd;border-radius:10px;display:grid;gap:6px;padding:14px}.schedule-print-result strong{color:#7a5724;font-size:13px;text-transform:uppercase}.schedule-print-result span{color:#544d43;font-size:12px}.schedule-print-result b{color:#1f2933;font-size:22px}.schedule-print-result .form-error{margin:4px 0 0}.schedule-print-preview{display:grid;grid-template-rows:auto minmax(0,1fr);overflow:hidden}.schedule-print-preview-title{align-items:center;border-bottom:1px solid var(--erp-border);display:flex;justify-content:space-between;padding:12px 16px}.schedule-print-preview-title>div{display:grid;gap:2px}.schedule-print-preview-title span{color:#756d62;font-size:12px}.schedule-print-preview-empty{align-items:center;color:#6b7280;display:flex;justify-content:center}.schedule-print-preview-pages{align-content:start;background:#626363;display:grid;gap:20px;min-height:0;overflow:auto;padding:24px}.schedule-print-preview-paper{background:#fff;box-shadow:0 10px 30px #00000047;margin:0 auto;max-height:72vh;max-width:100%;position:relative;width:min(100%,1100px)}.schedule-print-preview-paper-inner{display:grid;grid-template-rows:auto minmax(0,1fr) auto;position:absolute}.schedule-print-preview-paper-inner>header{align-items:end;border-bottom:1px solid #cbbda8;display:grid;font-size:clamp(5px,.52vw,10px);gap:2px;grid-template-columns:28% minmax(0,1fr);padding-bottom:.5%}.schedule-print-preview-paper-inner>header strong{color:#7a5b29;grid-column:1;grid-row:1}.schedule-print-preview-paper-inner>header b{grid-column:1;grid-row:2;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.schedule-print-preview-paper-inner>header span{color:#667085;grid-column:2;overflow:hidden;text-align:right;text-overflow:ellipsis;white-space:nowrap}.schedule-print-preview-paper-inner>header span:first-of-type{grid-row:1}.schedule-print-preview-paper-inner>header span:last-of-type{grid-row:2}.schedule-print-preview-grid{align-content:start;display:grid;grid-template-columns:24% minmax(0,1fr);min-height:0;overflow:hidden}.schedule-print-preview-left-head,.schedule-print-preview-days{background:#efe8dc;border:1px solid #d8d2ca;min-height:16px}.schedule-print-preview-left-head{align-items:center;display:flex;font-size:clamp(4px,.42vw,8px);font-weight:900;padding:2px 4px}.schedule-print-preview-days{display:grid}.schedule-print-preview-days span{align-items:center;border-left:1px solid #ddd6cc;display:flex;font-size:clamp(3px,.36vw,7px);justify-content:center;min-width:0}.schedule-print-preview-days span.weekend{background:#e7eaee}.schedule-print-preview-row-label,.schedule-print-preview-row-timeline{border-bottom:1px solid #ded8d0;min-height:clamp(11px,1.3vw,22px)}.schedule-print-preview-row-label{align-items:center;display:grid;font-size:clamp(3px,.38vw,7px);gap:3px;grid-template-columns:minmax(0,1fr) auto;overflow:hidden;padding:2px 4px}.schedule-print-preview-row-label strong{min-width:0}.schedule-print-preview-row-label span{line-height:1.15;text-align:right;white-space:nowrap}.schedule-print-preview-row-label.stage,.schedule-print-preview-row-timeline.stage{background:#f6f0e7;color:#5f4b2f;font-weight:900;min-height:clamp(8px,.85vw,15px)}.schedule-print-preview-row-timeline{background-image:repeating-linear-gradient(90deg,transparent 0,transparent calc(5% - 1px),#ece8e1 calc(5% - 1px),#ece8e1 5%);position:relative}.schedule-print-preview-row-timeline i{align-items:center;background:#b89b63;border-radius:6px;color:#fff;display:flex;font-size:clamp(3px,.34vw,6px);font-style:normal;font-weight:900;height:48%;justify-content:space-between;min-width:4px;overflow:hidden;padding:0 2px;position:absolute;top:26%}.schedule-print-preview-row-timeline i.critical{background:#ef4444}.schedule-print-preview-row-timeline i.done{background:#16a34a}.schedule-print-preview-row-timeline i.late{background:#f97316}.schedule-print-preview-paper-inner>footer{align-items:end;color:#667085;display:flex;font-size:clamp(3px,.36vw,7px);justify-content:space-between;padding-top:.5%}.schedule-print-preview-more{background:#fff;border-radius:8px;margin:0 auto;padding:10px 14px}.schedule-print-dialog-actions{border-top:1px solid var(--erp-border)}.schedule-print-dialog-actions>div{display:flex;gap:10px}.schedule-print-dialog-actions button{min-width:120px}@media(max-width:1050px){.schedule-print-dialog-layout{grid-template-columns:1fr;overflow-y:auto}.schedule-print-settings{overflow:visible}.schedule-print-preview{min-height:70vh}}@media(max-width:640px){.schedule-print-dialog-backdrop{padding:0}.schedule-print-dialog{border-radius:0;height:100vh;width:100vw}.schedule-print-settings-grid{grid-template-columns:1fr}.schedule-print-settings-grid .span-2,.schedule-print-checkbox{grid-column:auto}}.schedule-print-report,.schedule-print-report *{box-sizing:border-box}.schedule-print-report{background:#fff;color:#1f2933;font-family:Inter,Arial,sans-serif}.schedule-print-page{background:#fff;break-after:page;display:grid;gap:2.5mm;page-break-after:always}.schedule-print-page:last-child{break-after:auto;page-break-after:auto}.schedule-print-report-header{border-bottom:.25mm solid #cbbda8;display:grid;gap:1.3mm;padding-bottom:1.8mm}.schedule-print-report-header>div{align-items:baseline;display:flex;justify-content:space-between}.schedule-print-report-header strong{color:#7a5b29;font-size:10pt}.schedule-print-report-header b{color:#1f2933;font-size:10pt}.schedule-print-report-header p{display:flex;flex-wrap:wrap;gap:1mm 4mm;margin:0}.schedule-print-report-header span{color:#394150;font-size:7.2pt}.schedule-print-gantt{border:.25mm solid #d8d2ca;display:grid;grid-template-columns:var(--print-left) minmax(0,1fr);width:287mm}.schedule-print-left-head,.schedule-print-calendar{background:#efe8dc;border-bottom:.25mm solid #d8d2ca;min-height:11mm}.schedule-print-left-head{align-items:center;border-right:.25mm solid #d8d2ca;display:flex;font-size:7.4pt;font-weight:900;padding:1.8mm}.schedule-print-calendar{overflow:hidden}.schedule-print-months,.schedule-print-days{display:grid}.schedule-print-months span,.schedule-print-days span{align-items:center;border-left:.2mm solid #d8d2ca;display:grid;justify-items:center;min-width:0}.schedule-print-months span{border-bottom:.2mm solid #d8d2ca;color:#5f4b2f;font-size:6.7pt;font-weight:900;height:4.6mm}.schedule-print-days span{color:#394150;font-size:5.8pt;height:6.4mm}.schedule-print-days b{font-size:6.5pt}.schedule-print-days small{font-size:5pt}.schedule-print-days .weekend,.schedule-print-timeline .weekend{background:#f4f6f8}.schedule-print-days .holiday,.schedule-print-timeline .holiday{background:#fff3df}.schedule-print-days .today{box-shadow:inset 0 0 0 .35mm #2563eb}.schedule-print-body{display:contents}.schedule-print-row{break-inside:avoid;display:grid;grid-column:1 / -1;grid-template-columns:var(--print-left) minmax(0,1fr);min-height:9.2mm;page-break-inside:avoid}.schedule-print-row.stage{min-height:6.2mm}.schedule-print-activity{border-right:.25mm solid #d8d2ca;border-top:.2mm solid #d8d2ca;display:grid;gap:.5mm;min-width:0;padding:1.2mm 1.6mm}.schedule-print-row.stage .schedule-print-activity{background:#f6f0e7;color:#5f4b2f;font-size:7pt;font-weight:900;text-transform:uppercase}.schedule-print-row.activity .schedule-print-activity strong{color:#5f6b7a;font-size:5.7pt}.schedule-print-row.activity .schedule-print-activity span{color:#1f2933;font-size:6.7pt;font-weight:800;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.schedule-print-row.activity .schedule-print-activity small{color:#667085;font-size:5.8pt}.schedule-print-timeline{border-top:.2mm solid #d8d2ca;display:grid;position:relative}.schedule-print-timeline>span{border-left:.15mm solid #e4ded5;min-width:0}.schedule-print-row.stage .schedule-print-timeline{background:#f6f0e7}.schedule-print-bar{background:#b89b63;border-radius:1.2mm;height:4.4mm;overflow:hidden;position:absolute;top:2.3mm}.schedule-print-bar span{align-items:center;background:#7a5b29;color:#fff;display:flex;font-size:5.8pt;font-weight:900;height:100%;justify-content:center;min-width:7mm}.schedule-print-bar.critical{background:#ef4444}.schedule-print-bar.critical span{background:#b91c1c}.schedule-print-bar.done,.schedule-print-bar.done span{background:#16a34a}.schedule-print-bar.late,.schedule-print-bar.late span{background:#f97316}.schedule-print-today{background:#2563eb;bottom:0;position:absolute;top:0;width:.35mm}.schedule-print-timeline em{background:#fff;border:.2mm solid #94a3b8;border-radius:1mm;color:#475569;font-size:5.5pt;font-style:normal;font-weight:900;padding:0 1mm;position:absolute;right:1mm;top:2.7mm}.schedule-print-legend{align-items:center;display:flex;flex-wrap:wrap;gap:2.2mm 4mm;padding-top:1mm}.schedule-print-legend span{align-items:center;color:#475569;display:inline-flex;font-size:6.5pt;gap:1mm}.schedule-print-legend i{background:#b89b63;border:.2mm solid #cbd5e1;display:inline-block;height:3mm;width:6mm}.schedule-print-legend i.weekend{background:#f4f6f8}.schedule-print-legend i.holiday{background:#fff3df}.schedule-print-legend i.today{background:#2563eb;width:1mm}.schedule-print-legend i.critical{background:#ef4444}.schedule-print-legend i.done{background:#16a34a}.schedule-print-legend i.late{background:#f97316}@media print{@page{size:A4 landscape;margin:5mm}body.schedule-report-printing{background:#fff!important;print-color-adjust:exact;-webkit-print-color-adjust:exact}body.schedule-report-printing .erp-sidebar,body.schedule-report-printing .erp-topbar,body.schedule-report-printing .work-hero,body.schedule-report-printing .work-hero-metrics,body.schedule-report-printing .schedule-panel>:not(.schedule-print-report-host),body.schedule-report-printing .modal-backdrop{display:none!important}body.schedule-report-printing .app-shell,body.schedule-report-printing .erp-main,body.schedule-report-printing .module-content,body.schedule-report-printing .work-workspace,body.schedule-report-printing .work-module-content,body.schedule-report-printing .schedule-panel{background:#fff!important;border:0!important;box-shadow:none!important;display:block!important;margin:0!important;max-width:none!important;min-height:0!important;overflow:visible!important;padding:0!important;width:100%!important}body.schedule-report-printing .schedule-print-report-host{display:block!important}}@media(min-width:1500px){.overview-work-grid{grid-template-columns:repeat(auto-fill,minmax(320px,360px))}}@media(max-width:900px){.overview-work-grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr))}.overview-work-card{max-width:none}.composition-search{grid-template-columns:1fr 1fr}}@media(max-width:640px){.overview-work-grid,.composition-search{grid-template-columns:1fr}.work-card-photo{min-height:150px}}.draggable-card-row>td,.analytic-stage-row>td,.analytic-substage-row>td,.budget-stage-row>td,.budget-substage-row>td,.stage-row>td,.substage-row>td{background-clip:padding-box;border-top:1px solid #dbe4ee;border-bottom:1px solid #dbe4ee;box-shadow:0 2px 7px #0f172a0f}.draggable-card-row>td:first-child,.analytic-stage-row>td:first-child,.analytic-substage-row>td:first-child,.budget-stage-row>td:first-child,.budget-substage-row>td:first-child,.stage-row>td:first-child,.substage-row>td:first-child{border-left:1px solid #dbe4ee;border-radius:8px 0 0 8px}.draggable-card-row>td:last-child,.analytic-stage-row>td:last-child,.analytic-substage-row>td:last-child,.budget-stage-row>td:last-child,.budget-substage-row>td:last-child,.stage-row>td:last-child,.substage-row>td:last-child{border-right:1px solid #dbe4ee;border-radius:0 8px 8px 0}.draggable-card-row{transition:opacity .14s ease,transform .14s ease}.draggable-card-row.dragging{opacity:.48;transform:scale(.995)}.draggable-card-content{display:flex;align-items:center;gap:.55rem}.draggable-card-content>span{display:grid}.drag-handle{min-width:2rem;min-height:2rem;padding:.2rem .45rem;border:1px solid #cbd5e1;border-radius:6px;background:#f8fafc;color:#64748b;cursor:grab;touch-action:none}.drag-handle:active{cursor:grabbing}.drag-handle:focus-visible{outline:3px solid rgb(37 99 235 / 35%);outline-offset:2px}[aria-busy=true] .drag-handle{cursor:progress;opacity:.55}.diary-page,.diary-editor{display:grid;gap:16px}.diary-heading,.diary-editor-header,.diary-filter-card,.diary-section,.diary-report-list,.diary-gallery-card{background:#fff;border:1px solid var(--erp-border);border-radius:8px;box-shadow:0 10px 28px #1018280f}.diary-heading,.diary-editor-header{align-items:flex-start;display:flex;gap:20px;justify-content:space-between;padding:20px}.diary-heading h2,.diary-editor-header h2{color:var(--erp-text);font-size:25px;margin:0 0 6px}.diary-new-report{align-items:flex-end;display:flex;gap:10px}.diary-new-report label,.diary-filters label,.diary-section label{color:var(--erp-muted);display:grid;font-size:12px;font-weight:850;gap:5px}.diary-new-report input,.diary-filters input,.diary-filters select,.diary-section input,.diary-section select,.diary-section textarea{background:#fff;border:1px solid var(--erp-border-strong);border-radius:7px;color:var(--erp-text);min-width:0;padding:9px 10px;width:100%}.diary-section textarea{min-height:72px;resize:vertical}.diary-filter-card{display:grid;gap:10px;padding:14px}.diary-filters{align-items:end;display:grid;gap:10px;grid-template-columns:repeat(7,minmax(115px,1fr)) auto}.diary-filters>button,.diary-repeat-list>button,.diary-comment-form button{background:#f8fafc;border:1px solid var(--erp-border-strong);border-radius:7px;color:var(--erp-text);font-weight:850;padding:9px 11px}.diary-filter-context,.diary-help{color:var(--erp-muted);font-size:12px;margin:0}.diary-kpis{display:grid;gap:12px;grid-template-columns:repeat(3,minmax(160px,1fr))}.diary-kpis article{background:radial-gradient(circle at 88% 12%,rgba(178,132,56,.13),transparent 38%),#fff;border:1px solid var(--erp-border);border-radius:8px;display:grid;gap:5px;padding:14px}.diary-kpis small,.diary-auto-grid small,.diary-review small{color:var(--erp-muted);font-size:11px;font-weight:900;text-transform:uppercase}.diary-kpis strong{color:var(--erp-text);font-size:24px}.diary-kpis article.is-clickable{padding:0}.diary-kpis article.is-clickable button{background:transparent;border:0;display:grid;gap:5px;padding:14px;text-align:left;width:100%}.diary-kpis article.is-clickable span{color:var(--erp-primary);font-size:11px;font-weight:900}.diary-kpis article.is-clickable:hover{border-color:var(--erp-primary);box-shadow:0 10px 24px #8d682f24}.diary-results{align-items:start;display:grid;gap:16px;grid-template-columns:minmax(0,1.1fr) minmax(340px,.9fr)}.diary-report-list,.diary-gallery-card{display:grid;gap:12px;padding:16px}.diary-report-card{border:1px solid var(--erp-border);border-left:4px solid var(--erp-primary);border-radius:8px;display:grid;gap:9px;padding:13px}.diary-report-card>button{background:transparent;border:0;color:var(--erp-text);display:grid;gap:3px;padding:0;text-align:left}.diary-report-card>button span{color:var(--erp-primary);font-size:12px;font-weight:900}.diary-report-card>button strong{font-size:16px}.diary-report-meta{display:flex;flex-wrap:wrap;gap:7px}.diary-report-meta>span{background:#f8fafc;border-radius:999px;color:var(--erp-muted);font-size:11px;font-weight:800;padding:5px 8px}.diary-status.finalizado{background:#dcfce7;color:#166534}.diary-status.rascunho{background:#fef3c7;color:#92400e}.diary-match-list{background:#fffbeb;border:1px solid #fde68a;border-radius:7px;display:grid;gap:4px;padding:9px}.diary-match-list p{color:#78350f;font-size:12px;margin:0}.diary-gallery-day{display:grid;gap:8px}.diary-gallery-page .diary-gallery-card{min-height:420px}.diary-gallery-page .diary-gallery-grid{grid-template-columns:repeat(auto-fit,minmax(360px,1fr))}.diary-gallery-page .diary-gallery-grid article>button:first-child{aspect-ratio:4 / 3;background:#171717;height:auto}.diary-gallery-page .diary-gallery-grid img{object-fit:contain}.diary-gallery-filters{align-items:end;display:grid;gap:10px;grid-template-columns:minmax(220px,1fr) minmax(220px,1fr) auto}.diary-gallery-filters label{color:var(--erp-muted);display:grid;font-size:12px;font-weight:850;gap:5px}.diary-gallery-filters select{background:#fff;border:1px solid var(--erp-border-strong);border-radius:7px;color:var(--erp-text);padding:9px 10px;width:100%}.diary-gallery-filters>button{background:#f8fafc;border:1px solid var(--erp-border-strong);border-radius:7px;color:var(--erp-text);font-weight:850;padding:9px 11px}.diary-gallery-day h4{color:var(--erp-text);font-size:13px;margin:4px 0 0}.diary-gallery-grid{display:grid;gap:9px;grid-template-columns:repeat(3,minmax(0,1fr))}.diary-gallery-grid article{border:1px solid var(--erp-border);border-radius:7px;display:grid;gap:4px;overflow:hidden;padding-bottom:7px}.diary-gallery-grid article>button:first-child{background:#eee;border:0;height:105px;padding:0}.diary-gallery-grid img{height:100%;object-fit:cover;width:100%}.diary-gallery-grid span,.diary-gallery-grid strong,.diary-gallery-grid article>button:last-child{margin:0 7px}.diary-gallery-grid span{color:var(--erp-muted);font-size:10px}.diary-gallery-grid strong{color:var(--erp-text);font-size:11px}.diary-gallery-grid article>button:last-child{background:transparent;border:0;color:var(--erp-primary);font-size:10px;font-weight:900;padding:0;text-align:left}.diary-editor-header .ghost-action{margin-bottom:12px}.diary-editor-actions{align-items:center;display:flex;flex-wrap:wrap;gap:9px;justify-content:flex-end}.diary-editor-actions .danger-outline-button{border-radius:7px;font-size:12px;font-weight:900;padding:8px 11px}.diary-save-state{border-radius:999px;font-size:12px;font-weight:900;min-width:92px;padding:8px 11px;text-align:center}.diary-save-state.saving{background:#fef3c7;color:#92400e}.diary-save-state.saved{background:#dcfce7;color:#166534}.diary-save-state.error{background:#fee2e2;color:#991b1b}.diary-section{overflow:hidden}.diary-section>summary{align-items:center;cursor:pointer;display:flex;gap:11px;list-style:none;padding:15px 17px}.diary-section>summary::-webkit-details-marker{display:none}.diary-section>summary>span{align-items:center;background:#f3ead8;border-radius:7px;color:var(--erp-primary);display:flex;font-weight:950;height:30px;justify-content:center;width:30px}.diary-section>summary>div{display:grid;gap:2px}.diary-section>summary strong{color:var(--erp-text)}.diary-section>summary small{color:var(--erp-muted)}.diary-section[open]>summary{border-bottom:1px solid var(--erp-border)}.diary-section>:not(summary){margin:14px 16px}.diary-auto-grid,.diary-review{display:grid;gap:10px;grid-template-columns:repeat(5,minmax(130px,1fr))}.diary-auto-grid article,.diary-review article{background:#f8fafc;border:1px solid var(--erp-border);border-radius:7px;display:grid;gap:4px;padding:11px}.diary-auto-grid strong,.diary-review strong{color:var(--erp-text);font-size:13px}.diary-weather-grid{display:grid;gap:11px;grid-template-columns:repeat(3,minmax(0,1fr))}.diary-weather-grid article{background:#f8fafc;border:1px solid var(--erp-border);border-radius:7px;display:grid;gap:8px;padding:12px}.diary-weather-grid article>strong{color:var(--erp-text)}.diary-repeat-list{display:grid;gap:10px}.diary-inline-card{align-items:end;background:#f8fafc;border:1px solid var(--erp-border);border-radius:7px;display:grid;gap:9px;grid-template-columns:1.1fr 100px 1fr 1fr auto;padding:10px}.diary-item-card{background:#fcfcfd;border:1px solid var(--erp-border);border-left:4px solid #d9b56f;border-radius:8px;display:grid;gap:11px;padding:13px}.diary-card-title{align-items:center;display:flex;justify-content:space-between}.diary-card-title>strong{color:var(--erp-text)}.diary-check{align-items:center;display:flex!important;grid-template-columns:auto 1fr}.diary-check input{width:auto}.diary-link-fields,.diary-material-grid{display:grid;gap:10px;grid-template-columns:repeat(2,minmax(0,1fr))}.diary-material-grid{grid-template-columns:1.2fr 110px 150px 1fr 1fr}.diary-photo-panel{background:#fff;border:1px dashed var(--erp-border-strong);border-radius:7px;display:grid;gap:9px;padding:10px}.diary-photo-actions{display:flex;flex-wrap:wrap;gap:8px}.diary-general-photos{background:var(--erp-surface-muted);border:1px solid var(--erp-border);border-radius:7px;display:grid;gap:8px;margin-bottom:12px;padding:12px}.diary-general-photos>div:first-child{display:grid;gap:2px}.diary-general-photos small{color:var(--erp-muted)}.photo-picker-button.is-disabled{cursor:not-allowed;opacity:.5}.diary-photo-drafts,.diary-photo-thumbs{display:grid;gap:9px;grid-template-columns:repeat(auto-fill,minmax(145px,1fr))}.diary-photo-drafts article,.diary-photo-thumbs article{border:1px solid var(--erp-border);border-radius:7px;display:grid;gap:6px;overflow:hidden;padding:7px}.diary-photo-drafts img,.diary-photo-thumbs img{border-radius:5px;height:105px;object-fit:cover;width:100%}.diary-photo-drafts button,.diary-photo-thumbs button{background:#fff;border:1px solid var(--erp-border);border-radius:6px;color:var(--erp-muted);font-size:11px;font-weight:800;padding:6px}.diary-comments{display:grid;gap:9px}.diary-comments>article{background:#f8fafc;border-radius:7px;display:grid;gap:4px;padding:10px}.diary-comments article strong{color:var(--erp-text);font-size:12px}.diary-comments article time{color:var(--erp-muted);font-size:10px}.diary-comments article p{color:var(--erp-text);margin:0}.diary-comment-form{display:grid;gap:8px;grid-template-columns:1fr auto}.diary-review{align-items:stretch;grid-template-columns:repeat(5,minmax(110px,1fr)) auto}.diary-photo-viewer{background:#fff;border-radius:9px;display:grid;gap:12px;max-height:94vh;max-width:980px;overflow:auto;padding:16px;width:min(94vw,980px)}.diary-viewer-close{justify-self:end}.diary-viewer-image{align-items:center;background:#111;border-radius:8px;display:grid;gap:8px;grid-template-columns:44px minmax(0,1fr) 44px;min-height:420px}.diary-viewer-image img{max-height:70vh;max-width:100%;object-fit:contain;width:100%}.diary-photo-placeholder{align-items:center;background:linear-gradient(110deg,#f4f1eb 30%,#faf8f4,#f4f1eb 70%);color:#776f63;display:flex;font-size:.75rem;height:100%;justify-content:center;min-height:72px;width:100%}.diary-viewer-image button{background:#ffffff29;border:0;color:#fff;font-size:35px;height:100%}@media(max-width:1050px){.diary-filters{grid-template-columns:repeat(4,minmax(135px,1fr))}.diary-results{grid-template-columns:1fr}.diary-auto-grid,.diary-review{grid-template-columns:repeat(3,minmax(130px,1fr))}.diary-inline-card,.diary-material-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:700px){.diary-heading,.diary-editor-header{display:grid}.diary-new-report,.diary-comment-form{align-items:stretch;display:grid;grid-template-columns:1fr;width:100%}.diary-editor-actions{align-items:stretch;display:grid;grid-template-columns:1fr;justify-content:stretch;width:100%}.diary-filters,.diary-gallery-filters,.diary-kpis,.diary-weather-grid,.diary-auto-grid,.diary-review,.diary-inline-card,.diary-link-fields,.diary-material-grid{grid-template-columns:1fr}.diary-kpis,.diary-gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.diary-gallery-page .diary-gallery-grid{grid-template-columns:1fr}.diary-section>summary{align-items:flex-start}.diary-viewer-image{grid-template-columns:34px minmax(0,1fr) 34px;min-height:260px}}.diary-pdf-page,.diary-gallery-page{max-width:1540px}.diary-pdf-toolbar{align-items:center;background:#fff;border:1px solid #e6e1d8;border-radius:12px;box-shadow:0 8px 24px #2823190d;display:flex;gap:24px;justify-content:space-between;padding:18px 22px}.diary-pdf-toolbar h2{color:#17191d;font-size:1.35rem;margin:4px 0}.diary-pdf-toolbar p:not(.eyebrow){color:#697180;margin:0}.diary-pdf-actions{align-items:center;display:flex;flex-wrap:wrap;gap:9px;justify-content:flex-end}.diary-pdf-actions a{align-items:center;display:inline-flex;justify-content:center;text-decoration:none}.diary-pdf-viewer{background:#343638;border:1px solid #d9d2c7;border-radius:12px;box-shadow:0 16px 40px #14141424;min-height:720px;overflow:hidden;position:relative}.diary-pdf-viewer iframe{border:0;display:block;height:min(78vh,930px);min-height:720px;width:100%}.diary-pdf-message{align-items:center;color:#fff;display:flex;flex-direction:column;gap:8px;inset:0;justify-content:center;min-height:720px;padding:30px;text-align:center}.diary-pdf-message span:last-child{color:#d0d3d5}.diary-pdf-message.error strong{color:#fecaca}.diary-pdf-spinner{animation:diary-pdf-spin .8s linear infinite;border:3px solid rgb(255 255 255 / 20%);border-radius:50%;border-top-color:#c99a4f;height:34px;width:34px}@keyframes diary-pdf-spin{to{transform:rotate(360deg)}}.diary-gallery-page .diary-heading{align-items:center;border-radius:12px;padding:18px 22px}.diary-gallery-page .diary-heading .ghost-action{margin-bottom:9px}.diary-gallery-count{align-items:baseline;background:#f7f2e9;border:1px solid #eadbc3;border-radius:999px;color:#74511f;display:flex;gap:5px;padding:9px 14px;white-space:nowrap}.diary-gallery-count strong{font-size:1.1rem}.diary-gallery-page .diary-filter-card{border-radius:12px;padding:13px 15px}.diary-gallery-page .diary-gallery-card{border-radius:12px;gap:20px;max-height:none;min-height:420px;overflow:visible;padding:18px}.diary-gallery-title-copy{align-items:center;display:flex;gap:11px}.diary-gallery-title-icon{align-items:center;background:#f7efe2;border-radius:10px;color:#a56f22;display:inline-flex;font-size:1.25rem;height:42px;justify-content:center;width:42px}.diary-gallery-page .diary-gallery-day{gap:11px}.diary-gallery-day-title{align-items:center;display:flex;gap:12px}.diary-gallery-day-title:after{background:#ece6dd;content:"";flex:1;height:1px}.diary-gallery-day-title h4{color:#24272c;font-size:.86rem;margin:0}.diary-gallery-day-title span{color:#7e7569;font-size:.72rem;order:2}.diary-gallery-page .diary-gallery-grid{display:grid;gap:14px;grid-template-columns:repeat(auto-fill,minmax(235px,1fr))}.diary-gallery-page .diary-gallery-photo-card{background:#fff;border:1px solid #e5ded4;border-radius:12px;box-shadow:0 6px 18px #2621180d;display:grid;gap:0;overflow:hidden;padding:0;transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease}.diary-gallery-page .diary-gallery-photo-card:hover{border-color:#ceb084;box-shadow:0 12px 28px #4530121f;transform:translateY(-2px)}.diary-gallery-page .diary-gallery-photo-button,.diary-gallery-page .diary-gallery-grid article>button:first-child{aspect-ratio:4 / 3;background:#161819;border:0;display:block;height:auto;margin:0;overflow:hidden;padding:0;position:relative;width:100%}.diary-gallery-page .diary-gallery-photo-button img,.diary-gallery-page .diary-gallery-grid img{height:100%;object-fit:cover;transition:transform .25s ease;width:100%}.diary-gallery-page .diary-gallery-photo-card:hover img{transform:scale(1.025)}.diary-gallery-photo-time{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0f1112b3;border-radius:999px;bottom:9px;color:#fff!important;font-size:.68rem!important;left:9px;margin:0!important;padding:4px 7px;position:absolute}.diary-gallery-photo-zoom{align-items:center;background:#ffffffe5;border-radius:50%;color:#44331c!important;display:flex;font-size:1rem!important;height:30px;justify-content:center;margin:0!important;opacity:0;position:absolute;right:9px;top:9px;transform:translateY(-3px);transition:opacity .18s ease,transform .18s ease;width:30px}.diary-gallery-photo-card:hover .diary-gallery-photo-zoom,.diary-gallery-photo-button:focus-visible .diary-gallery-photo-zoom{opacity:1;transform:translateY(0)}.diary-gallery-photo-copy{display:grid;gap:9px;padding:11px 12px 12px}.diary-gallery-photo-copy>div{display:grid;gap:2px}.diary-gallery-photo-copy strong,.diary-gallery-page .diary-gallery-grid .diary-gallery-photo-copy strong{color:#1e2125;font-size:.84rem;margin:0}.diary-gallery-photo-copy>div>span{color:#7a7369;font-size:.7rem;margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.diary-gallery-photo-copy p{color:#5e5a54;font-size:.73rem;margin:0}.diary-gallery-photo-copy>button,.diary-gallery-page .diary-gallery-grid article .diary-gallery-photo-copy>button:last-child{align-items:center;background:transparent;border:0;border-top:1px solid #eee8df;color:#9c681c;display:flex;font-size:.72rem;font-weight:850;justify-content:space-between;margin:0;padding:9px 0 0;text-align:left;width:100%}.diary-viewer-backdrop{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#080a0bd1;padding:18px}.diary-photo-viewer{background:#111415;border:1px solid rgb(255 255 255 / 12%);border-radius:16px;box-shadow:0 30px 90px #00000073;display:grid;gap:0;max-height:95vh;max-width:1240px;overflow:hidden;padding:0;width:min(96vw,1240px)}.diary-viewer-header{align-items:center;color:#fff;display:flex;justify-content:space-between;padding:12px 15px 11px 19px}.diary-viewer-header>div{display:grid;gap:2px}.diary-viewer-header span{color:#b7b9ba;font-size:.72rem}.diary-viewer-header strong{font-size:.95rem}.diary-viewer-close{align-items:center;background:#ffffff14;border:1px solid rgb(255 255 255 / 10%);border-radius:50%;color:#fff;display:flex;font-size:1.35rem;height:36px;justify-content:center;padding:0 0 2px;width:36px}.diary-viewer-image{background:#070809;border-radius:0;gap:0;grid-template-columns:56px minmax(0,1fr) 56px;min-height:min(65vh,720px)}.diary-viewer-image img{height:min(65vh,720px);max-height:none;object-fit:contain;width:100%}.diary-viewer-image button{background:transparent;font-size:2.6rem;height:100%;transition:background .15s ease,opacity .15s ease}.diary-viewer-image button:not(:disabled):hover{background:#ffffff14}.diary-viewer-image button:disabled{opacity:.16}.diary-viewer-footer{align-items:center;background:#fff;display:grid;gap:16px;grid-template-columns:minmax(190px,.85fr) minmax(360px,1.5fr) auto;padding:15px 18px}.diary-viewer-caption{display:grid;gap:3px}.diary-viewer-caption span,.diary-viewer-meta dt{color:#8a8175;font-size:.63rem;font-weight:850;text-transform:uppercase}.diary-viewer-caption strong{color:#23262b;font-size:.82rem}.diary-viewer-meta{display:grid;gap:10px;grid-template-columns:repeat(3,minmax(0,1fr));margin:0}.diary-viewer-meta>div{display:grid;gap:3px;min-width:0}.diary-viewer-meta dd{color:#30343a;font-size:.74rem;margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.diary-viewer-footer .primary-action{white-space:nowrap}@media(max-width:900px){.diary-pdf-toolbar,.diary-viewer-footer{align-items:stretch;grid-template-columns:1fr}.diary-pdf-toolbar{display:grid}.diary-pdf-actions{justify-content:stretch}.diary-pdf-actions>*{flex:1}.diary-viewer-meta{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:600px){.diary-gallery-page .diary-gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.diary-gallery-page .diary-gallery-card{padding:11px}.diary-gallery-photo-copy{padding:9px}.diary-viewer-backdrop{padding:0}.diary-photo-viewer{border:0;border-radius:0;max-height:100vh;width:100vw}.diary-viewer-image{grid-template-columns:38px minmax(0,1fr) 38px;min-height:48vh}.diary-viewer-image img{height:48vh}.diary-viewer-meta{grid-template-columns:1fr}.diary-pdf-viewer,.diary-pdf-message,.diary-pdf-viewer iframe{min-height:65vh}}.diary-dashboard{max-width:1540px}.diary-calendar-heading{align-items:center;padding:24px 28px}.diary-calendar-heading h2{font-size:clamp(1.55rem,2vw,2rem);margin-bottom:5px}.diary-calendar-heading>div:first-child>p{color:#687181;margin:0}.diary-calendar-stats{display:grid;gap:14px;grid-template-columns:repeat(4,minmax(0,1fr))}.diary-stat-card{align-items:center;background:#fff;border:1px solid #e6e1d8;border-radius:12px;box-shadow:0 8px 24px #2823190a;color:#17191d;display:flex;gap:18px;min-height:104px;padding:18px 22px;text-align:left;width:100%}button.diary-stat-card{cursor:pointer}button.diary-stat-card:hover{border-color:#c59a50;box-shadow:0 10px 26px #835a1a1a;transform:translateY(-1px)}.diary-stat-card>span:last-child{display:grid;gap:2px}.diary-stat-card small{color:#4d515a;font-size:.83rem;font-weight:700}.diary-stat-card strong{font-size:1.7rem;line-height:1.05}.diary-stat-card em{color:#8a8f99;font-size:.76rem;font-style:normal}.diary-stat-icon{align-items:center;border-radius:50%;display:inline-flex;flex:0 0 54px;font-size:1.45rem;height:54px;justify-content:center}.diary-stat-icon.gold{background:#f9f0df;color:#b97b16}.diary-stat-icon.amber{background:#fff4d8;color:#e3a200}.diary-stat-icon.green{background:#e8f7eb;color:#159447}.diary-stat-icon.red{background:#fde9e9;color:#dd3838}.diary-calendar-layout{align-items:start;display:grid;gap:14px;grid-template-columns:minmax(0,1fr) 340px}.diary-calendar-card,.diary-day-panel{background:#fff;border:1px solid #e6e1d8;border-radius:12px;box-shadow:0 8px 24px #2823190a;overflow:hidden}.diary-view-tabs{border-bottom:1px solid #e7e2da;display:flex;gap:12px;min-height:50px;padding:0 18px}.diary-view-tabs button{background:transparent;border:0;border-bottom:3px solid transparent;border-radius:0;color:#565b65;font-weight:700;min-width:106px;padding:14px 16px 11px}.diary-view-tabs button.active{border-bottom-color:#b97a17;color:#a76608}.diary-calendar-toolbar{align-items:center;display:flex;justify-content:space-between;padding:12px 18px}.diary-calendar-toolbar>div{align-items:center;display:flex;gap:14px}.diary-calendar-toolbar strong{font-size:1.05rem;min-width:160px;text-align:center}.diary-calendar-toolbar button{align-items:center;background:#fff;border:1px solid #ded8ce;border-radius:7px;display:inline-flex;font-weight:700;height:36px;justify-content:center;min-width:42px;padding:0 13px}.diary-calendar-grid{border-left:1px solid #e6e1d8;border-top:1px solid #e6e1d8;display:grid;grid-template-columns:repeat(7,minmax(0,1fr))}.diary-calendar-weekday{align-items:center;background:#fbfaf8;border-bottom:1px solid #e6e1d8;border-right:1px solid #e6e1d8;color:#3f434b;display:flex;font-size:.78rem;height:35px;justify-content:center}.diary-calendar-grid>button{align-content:start;background:#fff;border:0;border-bottom:1px solid #e6e1d8;border-radius:0;border-right:1px solid #e6e1d8;color:#292d34;display:grid;gap:7px;min-height:92px;padding:10px 11px;text-align:left}.diary-calendar-grid.week>button{min-height:170px}.diary-calendar-grid>button:hover{background:#fffaf1}.diary-calendar-grid>button.selected{background:#fffdf8;box-shadow:inset 0 0 0 2px #c78d32;position:relative;z-index:1}.diary-calendar-grid>button.outside{background:#faf9f7;color:#a7a7a7}.diary-calendar-state{align-items:center;display:flex;font-size:.72rem;font-weight:700;gap:6px;line-height:1.2}.diary-calendar-state i,.diary-calendar-dot{background:#aaa;border-radius:50%;display:inline-block;flex:0 0 8px;height:8px;width:8px}.diary-calendar-state.finalizado{color:#14883f}.diary-calendar-state.finalizado i,.diary-calendar-dot.finalizado{background:#1aa151}.diary-calendar-state.rascunho{color:#b97b00}.diary-calendar-state.rascunho i,.diary-calendar-dot.rascunho{background:#f3b000}.diary-calendar-state.empty{color:#8e9299;font-weight:500}.diary-calendar-grid>button small{color:#536073;font-size:.7rem}.diary-calendar-loading{color:#777d87;min-height:480px;padding:30px}.diary-calendar-list{border-top:1px solid #e6e1d8;display:grid;min-height:420px}.diary-calendar-list>button{align-items:center;background:#fff;border:0;border-bottom:1px solid #eee9e1;border-radius:0;color:#272a30;display:grid;gap:12px;grid-template-columns:10px 120px minmax(180px,1fr) 80px 90px;padding:12px 18px;text-align:left}.diary-calendar-list>button:hover,.diary-calendar-list>button.selected{background:#fffaf1}.diary-calendar-list span:not(.diary-status):not(.diary-calendar-dot){display:grid}.diary-calendar-list small{color:#7e8490}.diary-day-panel{display:grid;gap:14px;padding:18px}.diary-day-panel-title{align-items:center;display:flex;justify-content:space-between}.diary-day-panel-title>strong,.diary-day-empty>strong{font-size:1.35rem}.diary-status.empty{background:#eff0f2;color:#70757e}.diary-day-report-tabs{display:flex;flex-wrap:wrap;gap:6px}.diary-day-report-tabs button{background:#f7f3eb;border:1px solid #eadfcf;border-radius:99px;color:#8c5a0c;font-size:.72rem;padding:5px 10px}.diary-day-details{display:grid;gap:12px;margin:4px 0}.diary-day-details>div{display:grid;gap:10px;grid-template-columns:126px minmax(0,1fr)}.diary-day-details dt{color:#666d78;font-size:.75rem}.diary-day-details dd{color:#343840;display:grid;font-size:.78rem;gap:3px;margin:0}.diary-day-photos{display:grid;gap:10px;margin-top:4px}.diary-day-photos>div:first-child{align-items:center;display:flex;justify-content:space-between}.diary-day-photos>div:first-child button{background:transparent;border:0;color:#a56609;font-size:.72rem;padding:0}.diary-day-photos>div:last-child{display:grid;gap:8px;grid-template-columns:repeat(2,minmax(0,1fr))}.diary-day-photos>div:last-child button{background:#f2f2f2;border:0;border-radius:7px;height:78px;overflow:hidden;padding:0}.diary-day-photos img{height:100%;object-fit:cover;width:100%}.diary-open-report,.diary-secondary-action{align-items:center;display:flex;justify-content:space-between;width:100%}.diary-secondary-action{background:#fff;border:1px solid #ded8ce;border-radius:7px;color:#292d34;font-weight:700;min-height:38px;padding:8px 13px}.diary-day-warning{background:#fff2f0;border-radius:7px;color:#c23c32;font-size:.76rem;font-weight:700;padding:9px 11px}.diary-day-empty{align-items:center;justify-items:center;min-height:360px;text-align:center}.diary-day-empty>div{align-items:center;background:#f7f2e8;border-radius:50%;color:#b77918;display:flex;font-size:1.65rem;height:62px;justify-content:center;width:62px}.diary-day-empty h3,.diary-day-empty p{margin:0}.diary-day-empty p{color:#717783;font-size:.8rem;max-width:250px}@media(max-width:1200px){.diary-calendar-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.diary-calendar-layout{grid-template-columns:1fr}.diary-day-panel{grid-template-columns:repeat(2,minmax(0,1fr))}.diary-day-panel-title,.diary-day-report-tabs,.diary-day-warning,.diary-day-empty>*{grid-column:1 / -1}}@media(max-width:760px){.diary-calendar-heading{align-items:stretch}.diary-calendar-stats,.diary-day-panel{grid-template-columns:1fr}.diary-view-tabs{gap:0;justify-content:space-between;padding:0 8px}.diary-view-tabs button{min-width:auto;padding-inline:10px}.diary-calendar-grid{min-width:680px}.diary-calendar-card{overflow-x:auto}.diary-calendar-list>button{grid-template-columns:10px 90px minmax(150px,1fr)}.diary-calendar-list>button>:nth-child(n+4){display:none}}.legacy-metric.clickable{color:inherit;cursor:pointer;font:inherit;text-align:left;width:100%}.legacy-metric.clickable:focus-visible{outline:3px solid rgba(184,148,84,.38);outline-offset:2px}.finance-list-totals,.finance-comparison-totals{display:grid;gap:10px;grid-template-columns:repeat(4,minmax(150px,1fr))}.finance-list-totals article{background:var(--erp-surface);border:1px solid var(--erp-border);border-radius:var(--erp-radius);display:grid;gap:4px;padding:12px 14px}.finance-list-totals small{color:var(--erp-muted);font-size:11px;font-weight:800;text-transform:uppercase}.finance-list-totals strong{color:var(--erp-text);font-size:18px}.finance-list-totals .positive strong{color:var(--erp-green)}.finance-list-totals .pending strong{color:var(--erp-red)}.finance-select-actions label,.finance-row-actions{align-items:center}.finance-select-actions label{display:inline-flex;gap:6px}.finance-select-actions input,.finance-row-actions input{accent-color:var(--erp-primary);height:16px;width:16px}.finance-comparison{display:grid;gap:14px}.finance-comparison-filters{align-items:end;background:var(--erp-surface-soft);border:1px solid var(--erp-border);border-radius:var(--erp-radius);display:grid;gap:12px;grid-template-columns:minmax(180px,.55fr) minmax(180px,.55fr) minmax(260px,1fr) auto;padding:14px}.finance-comparison-filters label{display:grid;gap:6px;margin:0}.finance-comparison-filters button{min-height:42px}.finance-comparison-totals{grid-template-columns:repeat(3,minmax(180px,1fr))}.finance-comparison-totals .budget-kpi{min-height:96px}.finance-comparison-totals .comparison-saving strong{color:var(--erp-green)}.finance-comparison-totals .comparison-loss strong{color:var(--erp-red)}.finance-comparison-table{table-layout:fixed;min-width:1600px}.finance-comparison-table th,.finance-comparison-table td{font-size:12px;padding:10px 8px;vertical-align:middle}.finance-comparison-table th{background:var(--erp-surface-soft);color:var(--erp-muted);font-size:10px;text-transform:uppercase;white-space:nowrap}.finance-comparison-table th.finance-number,.finance-comparison-table td.finance-number{text-align:right}.finance-comparison-table th.finance-center,.finance-comparison-table td.finance-center{text-align:center}.finance-comparison-table .comparison-col-category{width:120px}.finance-comparison-table .comparison-col-type{width:130px}.finance-comparison-table .comparison-col-supply{width:240px}.finance-comparison-table .comparison-col-unit{width:75px}.finance-comparison-table .comparison-col-number{width:125px}.finance-comparison-table .comparison-col-difference{width:105px}.finance-comparison-table .comparison-col-diagnosis{width:155px}.comparison-percent,.comparison-cause{border-radius:999px;display:inline-flex;font-size:10px;font-weight:850;padding:5px 8px;white-space:nowrap}.comparison-percent.saving,.comparison-cause.cause-economia{background:#e8f7ee;color:#177245}.comparison-percent.loss,.comparison-cause:not(.cause-economia){background:#fff0ed;color:#b42318}.finance-comparison-note{color:var(--erp-muted);font-size:12px;margin:0}.abc-filter-bar{align-items:flex-end}.abc-filter-bar .abc-type-filter,.abc-filter-bar .abc-work-select{align-items:stretch;display:grid;gap:6px}.abc-filter-bar .abc-type-filter select,.abc-filter-bar .abc-work-select select{box-sizing:border-box;height:42px;min-height:42px;padding:8px 10px}@media(max-width:900px){.finance-list-totals,.finance-comparison-totals{grid-template-columns:repeat(2,minmax(150px,1fr))}.finance-comparison-filters{grid-template-columns:1fr}}@media(max-width:600px){.finance-list-totals,.finance-comparison-totals{grid-template-columns:1fr}}.drag-glyph{color:#64748b;cursor:grab;letter-spacing:-2px;margin-right:.25rem}@media print{.drag-handle{display:none!important}}.stage-catalog-modal{display:flex;flex-direction:column;gap:16px;max-height:min(88vh,820px);width:min(760px,calc(100vw - 32px))}.stage-catalog-modal .section-title{align-items:flex-start;margin:0}.stage-catalog-modal .section-title p{margin-bottom:0}.modal-close{min-width:40px;font-size:24px;line-height:1}.stage-catalog-create label,.stage-catalog-search{display:grid;gap:6px;font-weight:700}.stage-catalog-create label>span{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px}.stage-catalog-list{display:grid;gap:8px;min-height:120px;overflow-y:auto;padding:2px 4px 2px 2px}.stage-catalog-card{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;border:1px solid var(--erp-border, #e4e7ec);border-radius:var(--erp-radius, 8px);background:var(--erp-surface, #fff)}.stage-catalog-card.is-added{background:var(--erp-surface-soft, #f8fafc);border-color:var(--erp-border-strong, #d0d5dd)}.stage-catalog-choice{display:flex;align-items:center;gap:12px;min-width:0;cursor:pointer}.stage-catalog-choice input{width:18px;height:18px;flex:0 0 auto}.stage-catalog-choice span{display:grid;gap:3px;min-width:0}.stage-catalog-choice small{color:var(--muted, #64748b)}.stage-catalog-row-actions,.stage-catalog-edit{display:flex;align-items:center;gap:8px}.stage-catalog-row-actions{flex:0 0 auto;padding-left:12px;border-left:1px solid var(--erp-border, #e4e7ec)}.stage-catalog-edit-action,.stage-catalog-delete-action{display:inline-flex;align-items:center;justify-content:center;gap:5px;min-height:32px;border-radius:var(--erp-radius, 8px);font-size:12px;font-weight:850;padding:6px 9px}.stage-catalog-edit-action{background:var(--erp-surface-soft, #f8fafc);border:1px solid var(--erp-border-strong, #d0d5dd);color:var(--erp-charcoal, #344054)}.stage-catalog-edit-action span{color:var(--erp-primary, #9a7537);font-size:14px;line-height:1}.stage-catalog-delete-action{background:#fff7f7;border:1px solid #fecaca;color:#b42318}.stage-catalog-usage-pill{display:inline-flex;align-items:center;gap:6px;min-height:28px;border:1px solid #d6dce5;border-radius:999px;background:#f2f4f7;color:#667085;font-size:11px;font-weight:850;padding:4px 9px;white-space:nowrap}.stage-catalog-usage-pill:before{width:6px;height:6px;border-radius:50%;background:#98a2b3;content:""}.stage-catalog-edit{flex:1}.stage-catalog-edit label{display:grid;flex:1;gap:5px}@media(max-width:680px){.stage-catalog-create label>span,.stage-catalog-card,.stage-catalog-edit{grid-template-columns:1fr;align-items:stretch}.stage-catalog-card,.stage-catalog-edit{display:grid}.stage-catalog-row-actions{padding-left:0;padding-top:10px;border-left:0;border-top:1px solid var(--erp-border, #e4e7ec);justify-content:flex-end}}:root{--erp-bg: #f7f6f2;--erp-surface: #ffffff;--erp-surface-soft: #fbfaf7;--erp-border: #e8e4dc;--erp-border-strong: #dcd3c4;--erp-text: #171717;--erp-muted: #6f6b65;--erp-muted-2: #9c968d;--erp-primary: #b8873e;--erp-primary-dark: #8b6127;--erp-primary-soft: #f4ecdf;--erp-charcoal: #121615;--erp-green: #169653;--erp-green-soft: #e9f7ee;--erp-red: #e53e34;--erp-red-soft: #fff0ef;--erp-blue: #1672ee;--erp-shadow: 0 18px 44px rgba(34, 31, 26, .09);--erp-shadow-soft: 0 8px 24px rgba(34, 31, 26, .055);--erp-radius: 12px}html{font-size:16px}body,button,input,select,textarea{font-family:Inter,Segoe UI,Roboto,Helvetica,Arial,sans-serif}body{background:radial-gradient(circle at 65% 0%,rgba(217,187,139,.08),transparent 32%),var(--erp-bg);color:var(--erp-text);font-size:15px;line-height:1.45}.app-shell{grid-template-columns:230px minmax(0,1fr)}.erp-sidebar{background:radial-gradient(circle at 20% 0%,rgba(184,135,62,.11),transparent 24%),linear-gradient(150deg,#141817,#0f1211 72%,#1b1d1b);border-right:1px solid rgba(255,255,255,.08);gap:22px;height:100vh;min-height:0;overflow-y:auto;padding:20px 14px 16px}.erp-brand{align-items:center;gap:11px;justify-content:center;min-height:104px;padding:0 10px 16px}.erp-brand-logo{display:block;height:auto;max-width:184px;object-fit:contain;width:100%}.erp-brand-mark{background:transparent;border:0;color:#c99950;font-size:43px;font-style:italic;height:52px;line-height:1;text-shadow:0 2px 16px rgba(201,153,80,.18);width:48px}.erp-brand strong{font-size:20px;font-weight:900;letter-spacing:.6px}.erp-brand span{color:#d5a454;font-size:13px;font-weight:700}.erp-nav-group{gap:5px}.erp-nav-group>span{display:none}.erp-nav-group button{border-radius:8px;color:#ffffffdb;font-size:14px;font-weight:600;gap:12px;min-height:46px;padding:10px 12px}.erp-nav-group button:hover{background:#ffffff0e;color:#fff}.erp-nav-group button.active{background:linear-gradient(135deg,#bd914d,#9b6b2d);border-color:#c49a5b;box-shadow:0 8px 18px #00000038,inset 0 1px #ffffff2e;color:#fff}.erp-nav-icon{background:transparent;border:0;color:currentColor;font-size:19px;height:22px;width:22px}.erp-sidebar-user{align-items:center;border-top:1px solid rgba(255,255,255,.11);display:grid;gap:9px;grid-template-columns:36px minmax(0,1fr) 28px;margin-top:auto;padding:16px 8px 2px}.erp-sidebar-user>div{display:grid;min-width:0}.erp-sidebar-user strong{color:#fff;font-size:12px}.erp-sidebar-user span{color:#c99a4f;font-size:10px;overflow:hidden;text-overflow:ellipsis}.erp-user-avatar,.erp-topbar-avatar{align-items:center;background:linear-gradient(135deg,#d3aa68,#9c6928);border:1px solid rgba(255,255,255,.18);border-radius:7px;color:#fff!important;display:flex;font-size:15px!important;font-weight:800;height:36px;justify-content:center;width:36px}.erp-sidebar-user>button{background:transparent;border:0;color:#ffffffbd;font-size:17px;padding:4px}.erp-main{align-content:start;background:var(--erp-bg);gap:0;grid-template-rows:auto auto;padding:0}.erp-topbar{background:linear-gradient(90deg,#111514,#151918);border:0;border-bottom:1px solid rgba(184,135,62,.18);border-radius:0;box-shadow:0 5px 18px #00000014;height:64px;padding:0 24px;position:sticky;top:0;z-index:30}.erp-topbar-title{align-items:center;display:flex;gap:15px}.erp-topbar-title>span{color:#f4f0e9;font-size:18px}.erp-topbar-title strong{color:#d5a454;font-size:16px;font-weight:750}.erp-user-area{gap:16px}.topbar-icon-button{background:transparent;border-color:#ffffff24;color:#fff;font-size:18px}.erp-topbar-avatar{height:38px;width:38px}.module-content{margin:0;padding:24px}.overview-panel,.work-workspace,.budget-workspace,.budget-summary-tab,.finance-page,.schedule-page,.diary-page,.diary-editor{gap:20px}.overview-heading{align-items:center;display:flex;gap:20px;justify-content:space-between;padding:4px 2px 8px}.overview-heading h1{color:var(--erp-text);font-size:clamp(24px,2.2vw,32px);letter-spacing:-.5px;margin:0 0 4px}.overview-heading p{color:var(--erp-muted);margin:0}.overview-heading-actions{align-items:center;display:flex;gap:14px}.overview-heading-actions>span{background:#ffffffb3;border:1px solid var(--erp-border);border-radius:8px;color:var(--erp-primary-dark);font-size:13px;padding:11px 14px}.overview-metrics{grid-template-columns:repeat(6,minmax(0,1fr))}.legacy-metric{align-items:center;background:#fff;border-color:var(--erp-border);border-radius:var(--erp-radius);box-shadow:var(--erp-shadow-soft);display:grid;gap:14px;grid-template-columns:54px minmax(0,1fr);min-height:138px;padding:18px 16px}.legacy-metric:after{display:none}.legacy-metric>div{display:grid;gap:7px;min-width:0}.legacy-metric .metric-icon{align-items:center;background:#f5ecdf;border:0;border-radius:10px;color:#a87229;display:flex;font-size:26px;height:54px;justify-content:center;width:54px}.legacy-metric small{color:#35322e;font-size:11px;font-weight:800;line-height:1.25}.legacy-metric strong{color:#121212!important;font-size:clamp(18px,1.55vw,24px);white-space:nowrap}.legacy-metric.metric-total-recebido .metric-icon{background:#e9f7ee;color:#169653}.legacy-metric.metric-total-pago .metric-icon{background:#eaf2ff;color:#1672ee}.legacy-metric.metric-vencido .metric-icon,.legacy-metric.metric-a-pagar-em-30-dias .metric-icon{background:#fff0e7;color:#f05b19}.legacy-metric.metric-caixa-geral .metric-icon,.legacy-metric.metric-caixa-da-obra .metric-icon{background:#f2ebff;color:#8951de}.dashboard-alerts,.overview-section,.budget-subnav,.budget-summary-table-card,.finance-card,.finance-title,.schedule-panel,.tasks-title,.tasks-table-card,.users-title,.users-table-card,.diary-heading,.diary-filter-card,.diary-section,.diary-report-list,.diary-gallery-card,.modal-panel{background:#fffffff0;border:1px solid var(--erp-border);border-radius:var(--erp-radius);box-shadow:var(--erp-shadow-soft)}.dashboard-alerts{display:grid;gap:14px;padding:18px}.dashboard-alert-grid{display:grid;gap:14px;grid-template-columns:repeat(4,minmax(0,1fr))}.dashboard-alert-grid>button{background:#fff;border:1px solid var(--erp-border);border-radius:9px;color:var(--erp-text);display:grid;gap:5px;min-height:96px;padding:14px;text-align:left}.dashboard-alert-grid>button:hover{border-color:#d8b77e;box-shadow:0 6px 18px #46321412;transform:translateY(-1px)}.dashboard-alert-grid small{font-size:12px;font-weight:750}.dashboard-alert-grid strong{color:#e76018;font-size:22px}.dashboard-alert-grid span{color:var(--erp-muted);font-size:11px}.section-title h2,.section-title h3{color:var(--erp-text);font-size:20px;letter-spacing:-.2px}.section-title p{color:var(--erp-muted);font-size:13px}.overview-section{padding:18px}.overview-work-grid{gap:18px;grid-template-columns:repeat(auto-fill,minmax(320px,400px))}.overview-work-card{border-color:var(--erp-border);border-radius:var(--erp-radius);box-shadow:0 7px 20px #221f1a0e;max-width:400px}.work-card-photo{aspect-ratio:16 / 8;max-height:none;min-height:160px}.work-card-header h3{font-size:19px}.work-card-stats div{background:transparent;border:0;border-left:1px solid var(--erp-border);border-radius:0;padding:5px 10px}.work-card-stats div:first-child{border-left:0;padding-left:0}.work-card-stats strong{font-size:12px}button,.primary-action{min-height:40px}.primary-action,.overview-actions .primary-action,.work-card-actions .primary-action,.photo-picker-button{background:linear-gradient(135deg,#bd914d,#9b6b2d);border-color:#a87734;box-shadow:0 5px 12px #8b61272e;color:#fff}.primary-action:hover{background:linear-gradient(135deg,#c99c55,#a97531);transform:translateY(-1px)}input,select,textarea{border:1px solid var(--erp-border-strong);border-radius:8px;min-height:42px}.budget-subnav{gap:8px;padding:0 12px}.budget-subnav button{align-items:center;background:transparent;border:0;border-bottom:2px solid transparent;border-radius:0;color:#5f6268;display:flex;font-size:13px;gap:8px;min-height:58px;padding:10px 16px}.budget-subnav button>span{color:#9298a2;font-size:17px}.budget-subnav button.active{background:transparent;border-color:var(--erp-primary);color:var(--erp-primary-dark)}.budget-subnav button.active>span{color:var(--erp-primary)}.budget-kpi-grid{grid-template-columns:repeat(6,minmax(0,1fr))}.budget-kpi{align-items:center;background:#fff;border:1px solid var(--erp-border);border-radius:var(--erp-radius);box-shadow:var(--erp-shadow-soft);display:grid;gap:13px;grid-template-columns:52px minmax(0,1fr);min-height:132px;padding:17px 14px}.budget-kpi-filter{color:inherit;cursor:pointer;font:inherit;text-align:left;transition:border-color .16s ease,box-shadow .16s ease,transform .16s ease;width:100%}.budget-kpi-filter:hover{border-color:#c79b56;box-shadow:0 12px 26px #6e491a24;transform:translateY(-2px)}.budget-kpi-filter:focus-visible{outline:3px solid rgba(183,132,61,.3);outline-offset:2px}.budget-kpi-filter.active{background:linear-gradient(145deg,#fffaf2,#fff);border-color:var(--erp-primary);box-shadow:0 0 0 2px #b7843d29,var(--erp-shadow-soft)}.budget-category-details-card{background:#fff;border:1px solid var(--erp-border);border-radius:var(--erp-radius);box-shadow:var(--erp-shadow-soft);display:grid;gap:14px;padding:18px}.budget-category-details-card .section-title{align-items:flex-end}.budget-category-details-card .table-wrap{border:1px solid var(--erp-border);border-radius:10px;max-height:440px;overflow:auto}.budget-category-details-table{border-collapse:collapse;min-width:980px;width:100%}.budget-category-details-table th{background:#faf7f2;color:#5b554c;font-size:11px;position:sticky;text-transform:uppercase;top:0;z-index:1}.budget-category-details-table th,.budget-category-details-table td{border-bottom:1px solid var(--erp-border);padding:12px 14px;text-align:left}.budget-category-details-table tbody tr:hover{background:#fffcf7}.budget-category-details-table .number-cell,.budget-category-details-table .money-cell{text-align:right;white-space:nowrap}.budget-category-details-table tfoot td{background:#faf7f2;border-bottom:0;font-weight:900}.budget-kpi>div{display:grid;gap:6px;min-width:0}.budget-kpi-icon{align-items:center;background:#f5ecdf;border-radius:10px;color:#aa742b!important;display:flex;font-size:24px!important;height:52px;justify-content:center;width:52px}.budget-kpi small{color:#34322f;font-size:10px;line-height:1.2}.budget-kpi strong{font-size:clamp(16px,1.4vw,22px);white-space:nowrap}.budget-kpi span{color:var(--erp-primary-dark)}.budget-kpi-material .budget-kpi-icon{background:#e9f7ee;color:#199a50!important}.budget-kpi-mao-de-obra .budget-kpi-icon{background:#eaf2ff;color:#1672ee!important}.budget-kpi-equipamento .budget-kpi-icon{background:#f1ebff;color:#8756df!important}.budget-kpi-locacao .budget-kpi-icon{background:#fff0e7;color:#ff5a18!important}.budget-kpi-servicos .budget-kpi-icon{background:#e8f7f7;color:#14999b!important}.budget-summary-table-card{gap:14px;padding:0}.budget-summary-table-title{padding:18px 18px 0}.budget-summary-table-title .row-actions{gap:10px}.budget-summary-table-title .row-actions button{background:#fff;border-color:#e3d3ba;color:var(--erp-primary-dark);min-height:42px;padding:9px 15px}.budget-summary-table-title .row-actions .primary-action{background:linear-gradient(135deg,#bd914d,#9b6b2d);color:#fff}.budget-summary-table-card .table-wrap{border:1px solid var(--erp-border);border-radius:10px;margin:0 18px 18px;overflow:auto}.budget-summary-table{border-collapse:separate;border-spacing:0}.budget-summary-table thead th{background:#fbfaf8;border-bottom:1px solid var(--erp-border);color:#66645f;font-size:11px;padding:14px 16px;position:sticky;top:0;z-index:1}.budget-summary-table td{border-bottom:1px solid #eeeae3;font-size:13px;height:46px;padding:11px 16px}.budget-summary-table .draggable-card-row>td{border-left:0;border-radius:0;border-right:0;box-shadow:none}.budget-stage-row>td{background:#fff;font-weight:700}.budget-substage-row>td{background:#fdfcf9;color:#56524c}.budget-substage-row td:first-child{padding-left:40px}.drag-glyph{color:#aaa49a}table th{color:#5c5a55;font-size:11px;letter-spacing:.1px}table td{color:#373532;font-size:13px}.modal-backdrop{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.modal-panel{padding:20px}@media(max-width:1450px){.overview-metrics,.budget-kpi-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:1050px){.app-shell{grid-template-columns:1fr}.erp-sidebar{height:auto;padding:14px;position:static}.erp-brand,.erp-sidebar-user{display:none}.erp-nav-group{grid-template-columns:repeat(auto-fit,minmax(170px,1fr))}.erp-topbar{position:static}.dashboard-alert-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:700px){.module-content{padding:14px}.overview-heading,.overview-heading-actions{align-items:stretch;display:grid}.overview-metrics,.budget-kpi-grid,.dashboard-alert-grid{grid-template-columns:1fr}.legacy-metric,.budget-kpi{min-height:112px}.budget-subnav{display:grid;grid-template-columns:1fr;padding:8px}.budget-subnav button{border-bottom:0;border-left:3px solid transparent;min-height:44px}.budget-subnav button.active{border-left-color:var(--erp-primary)}}.diary-page{margin:0 auto;max-width:1480px;width:100%}.diary-editor{gap:12px;margin:0 auto;max-width:1180px;width:100%}.diary-heading,.diary-editor-header{padding:16px 18px}.diary-heading h2,.diary-editor-header h2{font-size:22px}.diary-filter-card{padding:11px 12px}.diary-kpis{gap:10px}.diary-kpis article,.diary-kpis article.is-clickable button{min-height:72px;padding:11px 13px}.diary-kpis strong{font-size:20px}.diary-results{gap:14px;grid-template-columns:minmax(0,1fr) minmax(320px,370px)}.diary-report-list,.diary-gallery-card{gap:10px;padding:13px}.diary-report-grid{display:grid;gap:9px;grid-template-columns:repeat(2,minmax(0,1fr))}.diary-report-card{align-content:start;gap:7px;min-width:0;padding:10px}.diary-report-card>button{grid-template-columns:1fr auto}.diary-report-card>button span,.diary-report-card>button strong{grid-column:1}.diary-report-card>button strong{font-size:14px}.diary-report-card>button small{align-self:center;color:var(--erp-primary);font-size:10px;font-weight:900;grid-column:2;grid-row:1 / span 2;white-space:nowrap}.diary-report-meta{gap:5px}.diary-report-meta>span{font-size:10px;padding:4px 7px}.diary-match-list{gap:3px;padding:7px}.diary-match-list p{font-size:11px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.diary-gallery-card{align-content:start;max-height:540px;overflow:auto}.diary-gallery-card .section-title{align-items:center}.diary-gallery-card .section-title h3,.diary-report-list .section-title h3{font-size:15px;margin-bottom:2px}.diary-gallery-card .section-title p,.diary-report-list .section-title p{font-size:11px}.diary-gallery-card .primary-action{font-size:10px;min-height:32px;padding:7px 9px}.diary-gallery-card .diary-gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.diary-gallery-card .diary-gallery-grid article>button:first-child{height:82px}.diary-gallery-card .diary-gallery-day h4{font-size:11px}.diary-editor-heading-copy{display:grid;gap:3px;min-width:0}.diary-editor-header .ghost-action{justify-self:start;margin-bottom:5px}.diary-editor-header .eyebrow{margin:3px 0 0}.diary-editor-overview{display:flex;flex-wrap:wrap;gap:7px;margin-top:8px}.diary-editor-overview>span{background:#f8fafc;border:1px solid var(--erp-border);border-radius:7px;display:grid;gap:2px;min-width:112px;padding:7px 9px}.diary-editor-overview small{color:var(--erp-muted);font-size:9px;font-weight:900;text-transform:uppercase}.diary-editor-overview strong{color:var(--erp-text);font-size:11px}.diary-editor-overview .diary-status{border-radius:999px;justify-self:start;padding:3px 7px}.diary-section>summary{min-height:58px;padding:11px 14px}.diary-section>summary:after{color:var(--erp-muted);content:"⌄";font-size:20px;margin-left:auto;transform:rotate(-90deg);transition:transform .18s ease}.diary-section[open]>summary:after{transform:rotate(0)}.diary-section>summary>span{height:28px;width:28px}.diary-section>:not(summary){margin:11px 13px}.diary-section textarea{min-height:60px}.diary-item-card{gap:9px;padding:11px}.diary-activity-text-grid{display:grid;gap:10px;grid-template-columns:repeat(2,minmax(0,1fr))}.diary-general-photos{gap:7px;padding:10px}.diary-photo-panel{gap:7px;padding:8px}@media(max-width:1300px){.diary-report-grid{grid-template-columns:1fr}}@media(max-width:1050px){.diary-results{grid-template-columns:1fr}.diary-gallery-card{max-height:none}.diary-gallery-card .diary-gallery-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}@media(max-width:700px){.diary-report-grid,.diary-activity-text-grid{grid-template-columns:1fr}.diary-gallery-card .diary-gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.diary-editor-overview>span{flex:1 1 42%}}.diary-gallery-page .diary-gallery-card{max-height:none;overflow:visible}.diary-gallery-page .diary-gallery-card .diary-gallery-grid{grid-template-columns:repeat(auto-fill,minmax(205px,1fr))}.diary-gallery-page .diary-gallery-card .diary-gallery-photo-button,.diary-gallery-page .diary-gallery-card .diary-gallery-grid article>button:first-child{aspect-ratio:4 / 3;height:auto}@media(max-width:700px){.diary-gallery-page .diary-gallery-card .diary-gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.ui-icon{display:block;flex:0 0 auto;height:1.25em;overflow:visible;width:1.25em}.erp-nav-icon.ui-icon{height:21px;width:21px}.erp-topbar-title>.ui-icon{color:#f4f0e9;height:20px;width:20px}.topbar-icon-button .ui-icon,.erp-sidebar-user>button .ui-icon{height:19px;margin:auto;width:19px}.budget-subnav button>.ui-icon{color:#9298a2;height:19px;transition:color .15s ease;width:19px}.budget-subnav button.active>.ui-icon{color:var(--erp-primary)}.legacy-metric .metric-icon .ui-icon,.budget-kpi-icon .ui-icon,.diary-stat-icon .ui-icon{height:27px;width:27px}.drag-glyph{align-items:center;display:inline-flex;height:24px;justify-content:center;letter-spacing:normal;margin-right:2px;width:18px}.drag-glyph .ui-icon{height:18px;width:18px}.row-add-button{background:transparent!important;border:0!important;border-radius:50%!important;height:28px;width:28px}.row-add-button .ui-icon{height:23px;width:23px}
