:root{--primary: #00327d;--primary-container: #0047ab;--secondary: #994700;--secondary-container: #fc8127;--surface: #f8f9ff;--surface-container-lowest: #ffffff;--surface-container: #e5eeff;--on-surface: #0b1c30;--on-surface-variant: #434653;--outline-variant: #c3c6d5;--inverse-surface: #213145;--inverse-on-surface: #eaf1ff;--error: #ba1a1a;--sidebar-width: 180px;--sidebar-collapsed-width: 48px}.app-shell{display:grid;grid-template-columns:auto 1fr;grid-template-rows:64px minmax(0,1fr);height:100vh;height:100dvh;overflow:hidden}.app-header{grid-column:1 / -1;display:flex;align-items:center;justify-content:space-between;padding:0 24px;background:var(--surface);border-bottom:1px solid var(--outline-variant);z-index:50}.app-header-title{color:var(--primary);font-size:1.25rem}.app-header-actions{display:flex;gap:16px;align-items:center}.app-sidebar{display:flex;flex-direction:column;width:var(--sidebar-width);flex-shrink:0;align-self:stretch;min-height:0;background:var(--inverse-surface);color:var(--inverse-on-surface);padding:8px 0 0;overflow:hidden}.app-sidebar.collapsed{width:var(--sidebar-collapsed-width)}.app-sidebar-nav{flex:1;min-height:0;overflow-y:auto;overflow-x:hidden}.sidebar-collapse-toggle{display:flex;align-items:center;justify-content:center;flex-shrink:0;width:100%;margin-top:auto;padding:12px;border:none;background:transparent;color:var(--inverse-on-surface);cursor:pointer;font:inherit;opacity:.85}.sidebar-collapse-toggle:hover{opacity:1;background:#ffffff0f}.app-sidebar.collapsed .sidebar-collapse-toggle{padding:10px 0}.sidebar-link,.sidebar-group-toggle{display:block;width:100%;padding:12px 28px 12px 16px;color:#a5bdff;border-left:4px solid transparent;font-weight:400;line-height:1.4;text-decoration:none;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar-link.active,.sidebar-group-toggle.active{color:#dae2ff;border-left-color:var(--secondary-container);font-weight:700}.sidebar-sublink{display:block;padding:12px 28px;font-size:13px;color:#a5bdff;border-left:4px solid transparent;font-weight:400;line-height:1.4;text-decoration:none;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar-sublink.active{color:#dae2ff;border-left-color:var(--secondary-container);font-weight:700}.sidebar-group-toggle{position:relative;border:none;background:transparent;cursor:pointer;text-align:left;font-family:inherit;font-size:inherit}.sidebar-group-toggle--back{padding-left:28px}.sidebar-group-chevron,.sidebar-back-arrow{position:absolute;top:50%;transform:translateY(-50%);font-size:10px;opacity:.8;pointer-events:none}.sidebar-group-chevron{right:12px}.sidebar-back-arrow{left:12px}.app-main{min-width:0;min-height:0;padding:24px;overflow:auto}*{box-sizing:border-box}body{margin:0;overflow:hidden;font-family:Inter,system-ui,sans-serif;background:var(--surface);color:var(--on-surface);font-size:14px;line-height:1.4}.mono{font-family:JetBrains Mono,monospace}a{color:var(--primary);text-decoration:none}button,input,select,textarea{font:inherit}.btn{padding:8px 16px;border-radius:4px;border:1px solid transparent;cursor:pointer;font-weight:600}.btn-primary{background:var(--primary);color:#fff}.btn-secondary{background:transparent;border-color:var(--primary);color:var(--primary)}.btn-action{background:var(--secondary-container);color:#fff}.card{background:var(--surface-container-lowest);border:1px solid var(--outline-variant);border-radius:4px;padding:16px}table{width:100%;border-collapse:collapse}th,td{padding:8px;text-align:left;border-bottom:1px solid var(--outline-variant)}th{font-size:12px;text-transform:uppercase;letter-spacing:.05em;color:var(--on-surface-variant)}tr:hover td{background:var(--surface-container)}.input{width:100%;padding:8px;border:1px solid var(--outline-variant);border-radius:4px}.form-switch{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:8px}.form-switch-label{text-transform:capitalize}.switch{position:relative;display:inline-flex;width:44px;height:24px;flex-shrink:0}.switch input{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;margin:0;opacity:0;cursor:pointer}.switch-track{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:999px;background:var(--outline-variant);transition:background .15s ease}.switch-track:after{content:"";position:absolute;top:2px;left:2px;width:20px;height:20px;border-radius:50%;background:var(--surface-container-lowest);box-shadow:0 1px 2px #0003;transition:transform .15s ease}.switch input:checked+.switch-track{background:var(--primary)}.switch input:checked+.switch-track:after{transform:translate(20px)}.switch input:focus-visible+.switch-track{outline:2px solid var(--primary);outline-offset:2px}textarea.input{resize:vertical;min-height:56px;font-family:inherit}.badge{display:inline-block;padding:2px 8px;border-radius:999px;font-size:12px;font-weight:600}.badge-open{background:#e2e8f0;color:#334155}.badge-approved{background:#dbeafe;color:#1e40af}.badge-payment-complete{background:#dcfce7;color:#166534}.badge-payment-my-part{background:#dbeafe;color:#1e40af}.badge-payment-partly{background:#fef3c7;color:#92400e}.badge-payment-pending{background:#e2e8f0;color:#475569}.group-header td{background:var(--surface-container);font-weight:700}.subtotal td{font-weight:600;font-style:italic}.grand-total td{font-weight:700;background:var(--inverse-surface);color:var(--inverse-on-surface)}.overview-actions{display:flex;gap:6px}.icon-btn{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;border:1px solid var(--outline-variant);border-radius:4px;background:var(--surface-container-lowest);color:var(--primary);cursor:pointer;text-decoration:none}.icon-btn:hover{background:var(--surface-container)}.breakdown-ai-summary{margin:0;font-size:13px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%;cursor:default}.breakdown-page-header{display:flex;align-items:center;justify-content:space-between;gap:16px}.breakdown-page-header h1{flex:1;min-width:0}.breakdown-display-mode{width:auto;flex-shrink:0;margin-left:auto}.breakdown-display-mode-select{min-width:180px;padding:4px 8px}.breakdown-toolbar{display:flex;justify-content:flex-end;align-items:center;gap:6px;margin-bottom:12px;flex-wrap:wrap}.breakdown-edit-active{background:var(--surface-container);border-color:var(--primary);color:var(--primary)}.breakdown-analyze-busy{display:inline-flex;align-items:center;gap:6px}.breakdown-spinner{display:inline-block;width:12px;height:12px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:breakdown-spin .7s linear infinite}@keyframes breakdown-spin{to{transform:rotate(360deg)}}.breakdown-view-hint{margin:0 0 10px;font-size:13px;color:var(--on-surface-variant);display:flex;align-items:center;gap:8px;flex-wrap:wrap}.breakdown-view-reset{font-size:12px;padding:2px 8px}.breakdown-sortable-th{cursor:pointer;-webkit-user-select:none;user-select:none}.breakdown-sortable-th:hover{color:var(--primary)}.breakdown-th-sort-btn{display:block;width:100%;margin:0;padding:0;border:none;background:none;font:inherit;font-weight:600;text-align:left;color:inherit;cursor:pointer}.breakdown-th-label{display:flex;flex-direction:column;align-items:flex-start;gap:4px}.breakdown-filter-wrap{position:relative}.breakdown-filter-btn{min-width:2rem;padding-left:8px;padding-right:8px;font-size:14px;line-height:1}.breakdown-filter-btn--active{border-color:var(--primary);color:var(--primary)}.breakdown-filter-popup{position:absolute;top:calc(100% + 6px);left:0;z-index:40;min-width:220px;padding:12px;border:1px solid var(--outline-variant);border-radius:8px;background:var(--surface-container-lowest);box-shadow:0 4px 16px #0b1c301f}.breakdown-filter-field{display:flex;flex-direction:column;gap:4px;margin-bottom:10px;font-size:12px;color:var(--on-surface-variant)}.breakdown-filter-field:last-of-type{margin-bottom:0}.breakdown-filter-field .input{font-size:13px}.breakdown-filter-popup-actions{display:flex;justify-content:flex-end;margin-top:10px;padding-top:10px;border-top:1px solid var(--outline-variant)}.breakdown-positions-table thead th{vertical-align:bottom;padding-top:6px;padding-bottom:6px}.breakdown-positions-table thead .breakdown-position-col{text-align:left}.breakdown-position-col--resizable{position:relative;padding-right:8px}.breakdown-position-col-label{display:inline-block;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;vertical-align:bottom}.breakdown-col-resize-handle{position:absolute;top:0;right:-3px;z-index:2;width:7px;height:100%;cursor:col-resize;touch-action:none}.breakdown-col-resize-handle:hover,.breakdown-col-resize-handle:active{background:color-mix(in srgb,var(--primary) 22%,transparent)}.breakdown-show-all-notes{display:block;margin:0 auto;padding:0;border:none;background:none;font-size:10px;font-weight:600;line-height:1;letter-spacing:.02em;text-transform:lowercase;color:var(--on-surface-variant);cursor:pointer;text-decoration:underline;text-underline-offset:2px}.breakdown-show-all-notes:hover{color:var(--primary)}.breakdown-row-insert-zone td{height:10px;padding:0;border:none;position:relative;overflow:visible;line-height:0}.breakdown-row-insert-zone .breakdown-row-insert-btn{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);z-index:3;display:flex;align-items:center;justify-content:center;width:22px;height:22px;padding:0;border:1px solid var(--outline-variant);border-radius:50%;background:var(--surface-container-lowest);color:var(--primary);font-size:15px;font-weight:600;line-height:1;cursor:pointer;opacity:0;pointer-events:none;transition:opacity .12s ease,background .12s ease,color .12s ease;box-shadow:0 1px 4px #0b1c301f}.breakdown-row-insert-zone:hover .breakdown-row-insert-btn,.breakdown-row-insert-zone:focus-within .breakdown-row-insert-btn,.breakdown-data-row:hover+.breakdown-row-insert-zone .breakdown-row-insert-btn,.breakdown-row-insert-zone:has(+.breakdown-data-row:hover) .breakdown-row-insert-btn{opacity:1;pointer-events:auto}.breakdown-row-insert-zone .breakdown-row-insert-btn:hover{background:var(--primary);color:#fff;border-color:var(--primary)}.breakdown-row-insert-zone--after-last td{height:12px}.breakdown-empty-warning{margin:8px 0 0;padding:10px 12px;font-size:13px;color:var(--secondary);background:color-mix(in srgb,var(--secondary-container) 35%,var(--surface-container-lowest));border:1px solid color-mix(in srgb,var(--secondary) 25%,var(--outline-variant));border-radius:6px}.breakdown-table-hint{margin:0 0 8px;font-size:12px;color:var(--on-surface-variant);text-align:right}.breakdown-selection-float{position:fixed;bottom:24px;left:50%;z-index:100;display:flex;align-items:center;flex-wrap:nowrap;gap:10px 12px;padding:10px 14px;width:max-content;max-width:min(560px,calc(100vw - 32px));border-radius:12px;border:1px solid var(--outline-variant);background:var(--surface-container-high);box-shadow:0 8px 32px #0000002e;transform:translate(-50%);white-space:nowrap;overflow:visible}.breakdown-selection-float-count{flex-shrink:0;font-size:13px;font-weight:500;color:var(--on-surface);white-space:nowrap}.breakdown-selection-float-clear{flex-shrink:0}.breakdown-bulk-cc-picker{flex:1 1 auto;min-width:160px;max-width:280px;overflow:visible}.breakdown-bulk-cc-picker .cc-tag-picker{min-width:0;width:100%}.breakdown-bulk-cc-picker .cc-tag-picker-field{min-height:30px;padding:2px 6px;background:var(--surface-container-lowest)}.breakdown-selection-float .cc-tag-picker-suggestions{z-index:110}.cc-tag-picker--drop-up .cc-tag-picker-suggestions{top:auto;bottom:calc(100% + 2px);box-shadow:0 -4px 12px #00000014}.breakdown-positions-table tbody>tr.breakdown-row--selected>td{background:color-mix(in srgb,var(--primary) 14%,var(--surface-container-lowest));box-shadow:inset 3px 0 0 var(--primary)}.breakdown-positions-table tbody>tr.breakdown-data-row{cursor:cell;-webkit-user-select:none;user-select:none}.breakdown-cc-tags--selectable{cursor:pointer}.breakdown-notes-row td{background:var(--surface-container);padding-top:0}.breakdown-notes-label{display:block;font-size:12px;color:var(--on-surface-variant);margin-bottom:4px}.breakdown-row-toggle-col{width:32px;padding-left:4px;padding-right:4px;text-align:center}.breakdown-row-notes-toggle{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;padding:0;border:none;border-radius:4px;background:transparent;color:var(--on-surface-variant);cursor:pointer;font-size:10px;line-height:1}.breakdown-row-notes-toggle:hover{background:var(--surface-container);color:var(--on-surface)}.breakdown-totals-toolbar-row{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:12px}.breakdown-totals-toolbar-row .breakdown-totals{margin-bottom:0;flex-shrink:0}.breakdown-totals-toolbar-row .breakdown-toolbar{margin-bottom:0;flex:1;min-width:min(100%,320px);justify-content:flex-end}.breakdown-summary-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:12px}.breakdown-summary-header h2{margin:0}.breakdown-share-col-header{display:flex;flex-direction:column;gap:4px;align-items:flex-start;min-width:7rem}.breakdown-share-mode-select{font-size:11px;padding:2px 4px;max-width:9rem;height:auto}.breakdown-doc-total{margin:0}.breakdown-doc-total+.breakdown-doc-total{margin-top:4px}.breakdown-discounts{flex-shrink:0;min-width:180px;margin-left:auto;text-align:right}.breakdown-discounts-label{margin:0 0 8px;font-size:13px;font-weight:600}.breakdown-tax-display{margin:0 0 10px;font-size:12px;color:var(--on-surface-variant)}.breakdown-discounts-empty{margin:0 0 8px;font-size:12px;color:var(--on-surface-variant)}.breakdown-discount-row{display:flex;align-items:center;gap:6px;margin-bottom:6px}.breakdown-discount-row .input{padding:2px 6px;font-size:12px;min-height:24px}.breakdown-discount-label-input{width:120px}.breakdown-discount-input{width:52px}.breakdown-discount-percent{font-size:12px;color:var(--on-surface-variant)}.breakdown-discount-add{margin-top:4px}.breakdown-discount-display{margin:0 0 4px;font-size:12px;color:var(--on-surface-variant)}.document-discounts{margin-top:10px}.document-discounts-label{margin:0 0 6px;font-size:13px;font-weight:600}.document-discounts-empty{margin:0 0 8px;font-size:12px;color:var(--on-surface-variant)}.document-discount-row{display:flex;align-items:center;gap:6px;margin-bottom:6px}.document-discount-row .input{padding:2px 6px;font-size:12px;min-height:24px}.document-discount-label-input{flex:1;min-width:0}.document-discount-input{width:52px}.document-discount-value-type-select{width:auto;max-width:4rem}.document-discount-percent{font-size:12px;color:var(--on-surface-variant)}.document-discount-add{margin-top:4px}.breakdown-summary-footer td{font-weight:600;border-top:2px solid var(--outline-variant);background:var(--surface-container)}.breakdown-summary-total-cell,.breakdown-summary-combo-cell{white-space:nowrap}.breakdown-summary-split-rate{font-size:11px;color:var(--on-surface-variant);font-weight:400}.breakdown-total-warning{margin-left:8px;color:var(--error);font-size:12px;font-weight:600}.breakdown-positions-table{table-layout:fixed;width:100%}.breakdown-positions-table tbody>tr.breakdown-row--edit>td{border-bottom:none}.breakdown-positions-table tbody>tr.breakdown-row--edit:hover>td{background:transparent}.breakdown-positions-table .breakdown-position-col,.breakdown-positions-table .breakdown-net-unit-col,.breakdown-positions-table .breakdown-units-col,.breakdown-positions-table .breakdown-row-toggle-col,.breakdown-positions-table .breakdown-actions-col{text-align:center;vertical-align:middle}.breakdown-positions-table .breakdown-amount-col{text-align:right;vertical-align:middle}.breakdown-cell-text{display:block;font-size:13px;line-height:1.4;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.breakdown-cell-text-title{white-space:normal;overflow-wrap:anywhere}.breakdown-cell-text-numeric{text-align:center}.breakdown-title-col{text-align:left;vertical-align:middle}.breakdown-cc-tags{display:flex;flex-wrap:wrap;gap:4px;align-items:center}.breakdown-notes-view{margin:0;font-size:13px;white-space:pre-wrap}.breakdown-compact-input,.breakdown-position-input{width:auto;max-width:100%;margin:0 auto;display:block}.btn-compact{padding:4px 8px;font-size:12px}.breakdown-actions-col .btn-compact{margin:0 auto;display:block}.breakdown-row-toggle-col .breakdown-row-notes-toggle{margin:0 auto}.breakdown-row-edit-actions{display:flex;flex-direction:column;align-items:center;gap:4px}.icon-btn-danger{color:var(--error)}.icon-btn-danger:hover{background:#fde8e8}.breakdown-positions-table col.breakdown-col-toggle{width:32px}.breakdown-positions-table col.breakdown-col-position{width:96px}.breakdown-position-col .breakdown-cell-text,.breakdown-position-col .breakdown-position-input{white-space:nowrap;overflow:visible;text-overflow:clip}.breakdown-positions-table col.breakdown-col-net-unit{width:80px}.breakdown-positions-table col.breakdown-col-units{width:52px}.breakdown-positions-table col.breakdown-col-amount{width:112px}.breakdown-positions-table col.breakdown-col-cost-centers{width:160px}.breakdown-positions-table col.breakdown-col-actions{width:40px}.breakdown-position-input{padding:4px 6px;font-size:12px;text-align:center}.breakdown-title-col{width:100%;min-width:0}.breakdown-net-unit-col{padding-left:4px;padding-right:4px;white-space:nowrap}.breakdown-units-col{padding-left:4px;padding-right:4px}.breakdown-cost-centers-col{vertical-align:middle}.breakdown-cost-centers-col .cc-tag-picker{min-width:0;width:100%}.breakdown-actions-col{padding-left:4px;padding-right:4px}.breakdown-compact-input,.breakdown-net-unit-col .input,.breakdown-units-col .input{padding:4px 6px;font-size:12px;text-align:center}.breakdown-amount-col{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding-left:6px;padding-right:6px}.cc-tag-key{background:var(--surface-container-high);color:var(--on-surface-variant)}.document-discount-kind-select{min-width:9.5rem}.cc-tag-colored{border:1px solid rgb(0 0 0 / 8%)}.cc-tag-picker{position:relative;min-width:180px}.cc-tag-picker-field{display:flex;flex-wrap:wrap;align-items:center;gap:4px;min-height:36px;padding:4px 6px;border:1px solid var(--outline-variant);border-radius:4px;background:var(--surface-container-lowest);cursor:text}.cc-tag-picker-field:focus-within{outline:2px solid var(--primary-container);outline-offset:1px}.cc-tag{display:inline-flex;align-items:center;gap:4px;padding:2px 6px;border-radius:999px;background:var(--surface-container);font-size:12px;line-height:1.3;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cc-tag-remove{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;padding:0;border:none;border-radius:999px;background:transparent;color:var(--on-surface-variant);cursor:pointer;font-size:14px;line-height:1}.cc-tag-remove:hover{background:var(--outline-variant);color:var(--on-surface)}.cc-tag-picker-input{flex:1;min-width:72px;border:none;outline:none;padding:2px 4px;background:transparent;font:inherit;font-size:13px}.cc-tag-picker-suggestions{position:absolute;z-index:20;top:calc(100% + 2px);left:0;right:0;margin:0;padding:4px 0;list-style:none;border:1px solid var(--outline-variant);border-radius:4px;background:var(--surface-container-lowest);box-shadow:0 4px 12px #00000014;max-height:200px;overflow-y:auto}.cc-tag-picker-suggestions button{display:block;width:100%;padding:8px 10px;border:none;background:transparent;text-align:left;font:inherit;font-size:13px;cursor:pointer}.cc-tag-picker-suggestions button:hover,.cc-tag-picker-suggestions button:focus{background:var(--surface-container)}.document-detail-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:8px;flex-wrap:wrap}.document-detail-toolbar nav{font-size:12px;color:var(--on-surface-variant);margin:0}.document-detail-toolbar-actions{display:flex;align-items:center;gap:8px;flex-shrink:0}.document-detail-toolbar-actions .btn{padding:4px 12px;font-size:13px}.document-detail-grid{display:grid;grid-template-columns:2fr 1fr;gap:12px;height:calc(100vh - 136px);min-height:480px}.document-pdf-column{display:flex;flex-direction:column;min-height:0;height:100%;overflow:auto}.document-pdf-column .document-pdf-pane{flex:1 1 auto;min-height:280px}.document-pdf-pane{padding:0;overflow:hidden;display:flex;flex-direction:column;min-height:0;height:100%}.document-pdf-tabs{display:flex;flex-shrink:0;gap:0;overflow-x:auto;border-bottom:1px solid var(--outline-variant);background:var(--surface-container)}.document-pdf-tab{flex:0 1 auto;max-width:12rem;padding:8px 12px;border:none;border-bottom:2px solid transparent;background:transparent;color:var(--on-surface-variant);font:inherit;font-size:12px;line-height:1.3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;cursor:pointer}.document-pdf-tab:hover{color:var(--on-surface);background:var(--surface-container-lowest)}.document-pdf-tab--active{color:var(--primary);border-bottom-color:var(--primary);background:var(--surface-container-lowest);font-weight:600}.document-pdf-pane iframe{flex:1;width:100%;border:none;min-height:0}.document-pdf-pane-empty{flex:1;display:flex;align-items:center;justify-content:center;padding:24px;text-align:center;color:var(--on-surface-variant);font-size:14px}.document-fields-pane{overflow-y:auto;min-height:0;height:100%;min-width:0}.document-fields-card>.btn,.document-amounts-card>.btn,.document-meta-card>.btn{display:block;width:100%;margin-bottom:8px}.document-fields-card label,.document-amounts-card label,.document-meta-card label{display:block;font-size:13px;margin-top:6px}.document-fields-card label:first-of-type,.document-amounts-card label:first-of-type,.document-meta-card label:first-of-type{margin-top:0}.reduction-links-table{width:100%;border-collapse:collapse;font-size:13px}.reduction-links-table th,.reduction-links-table td{padding:6px 8px 6px 0;vertical-align:middle;text-align:left}.reduction-links-table th{font-weight:600;color:var(--on-surface-variant);font-size:12px}.reduction-links-table .input{width:100%;min-width:120px}.reduction-links-table td:first-child{min-width:min(100%,360px)}.reduction-link-target-select{min-width:280px;max-width:none;text-overflow:clip}.reduction-link-amount-cell{display:flex;flex-direction:column;gap:6px;min-width:0}.reduction-link-amount-mode{display:inline-flex;border:1px solid var(--outline-variant);border-radius:6px;overflow:hidden;align-self:flex-start}.reduction-link-amount-mode-btn{border:none;background:transparent;color:var(--on-surface-variant);font-size:11px;font-weight:600;padding:3px 8px;cursor:pointer}.reduction-link-amount-mode-btn.active{background:var(--primary-container);color:var(--on-primary-container)}.reduction-link-amount-mode-btn:not(.active):hover{background:var(--surface-variant)}.reduction-link-amount-cell .input.mono,.reduction-link-amount-cell .reduction-link-split-pick{width:100%;min-width:0}.reduction-link-split-pick{width:100%}.reduction-split-assistant{position:relative}.reduction-split-assistant>summary{list-style:none;cursor:pointer}.reduction-split-assistant>summary::-webkit-details-marker{display:none}.reduction-split-assistant-panel{position:absolute;right:0;z-index:20;margin-top:6px;min-width:320px;padding:10px 12px;border:1px solid var(--outline-variant, #ccc);border-radius:8px;background:var(--surface, #fff);box-shadow:0 8px 24px #0000001f}.reduction-split-assistant-row{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:6px;font-size:12px}.document-tax-row{display:flex;gap:6px;margin-top:6px;flex-wrap:wrap}.document-tax-row .input{flex:1;min-width:64px}.document-tax-row .btn{padding:4px 8px;font-size:12px}.fetched-pdfs-page{display:flex;flex-direction:column;min-height:0}.fetched-pdfs-page--split{height:calc(100vh - 112px);min-height:480px}.fetched-pdfs-page-header{flex-shrink:0;margin-bottom:12px}.fetched-pdfs-layout{display:grid;gap:12px;min-height:0}.fetched-pdfs-layout--split{flex:1;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);align-items:stretch}.fetched-pdfs-table-pane{min-width:0;min-height:0;display:flex;flex-direction:column}.fetched-pdfs-layout--split .fetched-pdfs-table-pane{padding:8px;overflow:hidden}.fetched-pdfs-table-scroll{overflow-y:auto;max-height:calc(100vh - 260px)}.fetched-pdfs-page--split .fetched-pdfs-table-scroll{flex:1;min-height:0;max-height:none}.fetched-pdfs-table-scroll .fetched-pdfs-table{width:100%}.fetched-pdfs-loading-more{margin:8px 0 0;text-align:center;font-size:12px;color:var(--on-surface-variant)}tr.virtual-scroll-spacer td{padding:0!important;border:none!important;line-height:0}.list-row-clickable:hover td{background:var(--surface-container)}.fetched-pdfs-toolbar{display:flex;flex-wrap:wrap;align-items:flex-end;gap:12px;margin-bottom:8px;flex-shrink:0}.fetched-pdfs-toolbar .documents-list-search{flex:1 1 200px;min-width:0;max-width:none}.fetched-pdfs-filter{display:flex;flex-direction:column;gap:4px;font-size:11px;color:var(--on-surface-variant);text-transform:uppercase;letter-spacing:.05em}.fetched-pdfs-filter-select{width:auto;min-width:11rem;padding:3px 6px;font-size:13px;text-transform:none;letter-spacing:normal}.fetched-pdfs-preview-pane{display:flex;flex-direction:column;min-width:0;min-height:0;padding:8px;overflow:hidden}.fetched-pdfs-preview-header{display:flex;align-items:flex-start;justify-content:space-between;gap:8px;flex-shrink:0;padding:4px 4px 0}.fetched-pdfs-preview-title{margin:0;font-size:13px;font-weight:600;word-break:break-word}.fetched-pdfs-preview-pane .document-pdf-pane{flex:1;min-height:0;margin-top:6px}.fetched-pdfs-table th,.fetched-pdfs-table td{padding:4px 6px;font-size:13px;line-height:1.25;vertical-align:middle}.fetched-pdfs-table th{font-size:11px;position:sticky;top:0;z-index:1;background:var(--surface-container-lowest)}.fetched-pdfs-layout--split .fetched-pdfs-table{table-layout:fixed}.fetched-pdfs-layout--split .fetched-pdfs-filename-col{width:38%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fetched-pdfs-label-col{width:12rem;min-width:12rem}.fetched-pdfs-layout--split .fetched-pdfs-label-col{width:62%;min-width:13.5rem}.fetched-pdfs-label-select{width:100%;min-width:11rem;padding:3px 6px;font-size:13px}.fetched-pdf-row{cursor:pointer}.fetched-pdf-row--selected td,.fetched-pdf-row:hover td{background:var(--surface-container)}.fetched-pdf-row .input,.fetched-pdf-row a{cursor:auto}.documents-list-toolbar{display:flex;flex-wrap:wrap;align-items:flex-end;gap:12px;margin-bottom:16px}.documents-list-search{max-width:320px;flex:1 1 200px}.documents-list-filter{display:flex;flex-direction:column;gap:4px;font-size:11px;color:var(--on-surface-variant);text-transform:uppercase;letter-spacing:.05em}.documents-list-filter-select{width:auto;min-width:9rem;padding:8px;font-size:14px;text-transform:none;letter-spacing:normal}.overview-toolbar{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px}.overview-toolbar h1{margin:0}.overview-toolbar-actions{display:flex;align-items:center;gap:8px;flex-shrink:0}.overview-toolbar-select{width:auto;min-width:11rem;max-width:100%;padding:8px;font-size:14px}.document-computed-total{margin:10px 0 0;padding-top:10px;border-top:1px solid var(--outline-variant);font-size:13px}.wp-balance-groups{display:flex;flex-direction:column;gap:16px}.wp-balance-summary{padding:16px}.wp-balance-section-title{margin:0 0 12px;font-size:16px;font-weight:600}.wp-balance-capital,.wp-balance-risks,.wp-balance-final{padding:16px}.wp-balance-section-title--muted{color:var(--on-surface-variant);font-weight:500}.wp-balance-risks-list{margin:0;display:flex;flex-direction:column;gap:8px}.wp-balance-risks-row{display:flex;justify-content:space-between;align-items:baseline;gap:16px;font-size:14px;color:var(--on-surface-variant)}.wp-balance-risks-row dt{margin:0;font-weight:400}.wp-balance-risks-row dd{margin:0}.wp-balance-final-row td{font-weight:600;border-top:none}.wp-balance-final-row td:last-child{text-align:right}.wp-balance-risk-cover{color:var(--on-surface-variant);font-weight:400}.planned-cost-label{display:inline-flex;flex-direction:column;align-items:flex-start;gap:2px}.planned-cost-splits,.planned-cost-subtitle-line,.planned-cost-subtitle{color:var(--on-surface-variant);font-weight:400}.planned-cost-subtitle-line{font-size:11px;line-height:1.2}.wp-balance-clickable .planned-cost-splits,.wp-balance-clickable .planned-cost-subtitle-line,.wp-balance-clickable .planned-cost-subtitle,.wp-balance-wp-toggle .planned-cost-splits,.wp-balance-wp-toggle .planned-cost-subtitle-line,.wp-balance-wp-toggle .planned-cost-subtitle{color:var(--on-surface-variant)}.wp-balance-wp-toggle{display:inline-flex;align-items:center;gap:8px;border:none;background:none;padding:0;font:inherit;font-weight:600;color:inherit;cursor:pointer;text-align:left}.wp-balance-wp-toggle:hover{color:var(--primary)}.wp-balance-wp-toggle:focus-visible{outline:2px solid var(--primary);outline-offset:2px;border-radius:2px}.wp-balance-wp-chevron{display:inline-block;width:1em;flex-shrink:0;color:var(--on-surface-variant);font-size:.75em}.wp-balance-planned-cost-header{display:inline-flex;align-items:center;gap:8px}.wp-balance-expand-all{display:inline-flex;align-items:center;justify-content:center;border:none;background:none;padding:0;cursor:pointer;color:inherit}.wp-balance-expand-all:hover .wp-balance-wp-chevron{color:var(--primary)}.wp-balance-expand-all:focus-visible{outline:2px solid var(--primary);outline-offset:2px;border-radius:2px}.wp-balance-wp-row td{background:var(--surface-container)}.wp-balance-wp-row .wp-balance-clickable{font-weight:600}.wp-balance-detail td:first-child{padding-left:2rem}.wp-balance-group{padding:16px}.wp-balance-group-title{margin:0 0 12px;font-size:16px;font-weight:600}.wp-balance-table{width:100%}.wp-balance-clickable{border:none;background:none;padding:0;font:inherit;color:var(--primary);cursor:pointer;text-align:left}.wp-balance-clickable:hover{text-decoration:underline}.wp-balance-clickable:focus-visible{outline:2px solid var(--primary);outline-offset:2px;border-radius:2px}.offer-preview-dialog--list{width:min(560px,96vw);height:auto;max-height:80vh}.balance-list-modal{display:flex;flex-direction:column;max-height:80vh}.balance-list-modal-header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-bottom:12px;border-bottom:1px solid var(--outline-variant)}.balance-list-modal-header h3{margin:0;font-size:16px}.balance-list-modal-body{overflow-y:auto;padding-top:12px}.balance-list{list-style:none;margin:0;padding:0}.balance-list-item{display:grid;grid-template-columns:1fr auto;grid-template-rows:auto auto;gap:2px 12px;width:100%;padding:10px 12px;border:1px solid var(--outline-variant);border-radius:8px;background:var(--surface-container-lowest);cursor:pointer;text-align:left;margin-bottom:8px;font:inherit;color:inherit}.balance-list-item--bill{grid-template-rows:auto auto auto}.balance-list-item-head{grid-column:1;grid-row:1;display:flex;align-items:center;gap:8px;flex-wrap:wrap;min-width:0}.balance-list-item--bill .balance-list-item-subtitle{grid-column:1;grid-row:2}.balance-list-item--bill .balance-list-item-meta{grid-column:2;grid-row:1 / span 3}.balance-list-item:hover{background:var(--surface-variant)}.balance-list-item-title{grid-column:1;grid-row:1;font-weight:600;font-size:14px}.balance-list-item-subtitle{grid-column:1;grid-row:2;font-size:12px;color:var(--on-surface-variant)}.balance-list-item-meta{grid-column:2;grid-row:1 / span 2;align-self:center;font-size:14px}.balance-list-empty{margin:0;color:var(--on-surface-variant);font-size:14px}.wp-balance-offer-cell,.wp-balance-name-cell{display:flex;align-items:center;gap:8px}.wp-balance-name-cell>span{min-width:0}.wp-balance-entry-actions,.wp-balance-offer-actions{display:inline-flex;align-items:center;gap:4px;flex-shrink:0}.wp-balance-entry-link,.wp-balance-offer-link{position:relative;flex-shrink:0}.wp-balance-entry-preview,.wp-balance-offer-preview{flex-shrink:0}.offer-preview-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;display:flex;align-items:center;justify-content:center;padding:24px;background:#0b1c3073}.offer-preview-dialog{display:flex;flex-direction:column;width:min(1400px,96vw);height:80vh;border-radius:12px;background:var(--surface-container-lowest);box-shadow:0 12px 40px #0b1c3033;overflow:hidden}.offer-preview-dialog--editor{padding:12px 16px 16px}.offer-preview-dialog--editor .document-detail--modal{display:flex;flex-direction:column;min-height:0;height:100%}.offer-preview-dialog--editor .document-detail-grid{flex:1;min-height:0;height:auto}.offer-preview-dialog--planned-cost{width:min(720px,96vw)}.planned-cost-editor--modal{display:flex;flex-direction:column;min-height:0;height:100%}.planned-cost-editor--modal .planned-cost-editor-body{flex:1;min-height:0;overflow-y:auto;padding-right:4px}.document-detail--modal .document-fields-pane{min-height:0}.document-detail-modal-title{display:flex;align-items:baseline;gap:10px;min-width:0}.document-detail-modal-title h3{margin:0;font-size:16px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.document-detail-modal-type{flex-shrink:0;font-size:12px;color:var(--on-surface-variant)}.document-detail-status{margin:0;padding:16px 0;color:var(--on-surface-variant)}.document-detail-status--error{color:var(--error)}.wp-balance-entry-badge,.wp-balance-offer-badge{position:absolute;top:-6px;right:-6px;min-width:14px;height:14px;padding:0 3px;border-radius:999px;background:var(--secondary-container);color:var(--on-secondary-container, #602a00);font-size:10px;font-weight:700;line-height:14px;text-align:center}.wp-balance-total td{font-weight:700;background:var(--inverse-surface);color:var(--inverse-on-surface);border-top:1px solid var(--outline-variant)}.wp-balance-diff--favorable{color:#15803d}.wp-balance-diff--unfavorable{color:var(--error)}.wp-balance-total .wp-balance-diff--favorable{color:#86efac}.wp-balance-total .wp-balance-diff--unfavorable{color:#fca5a5}.offer-cc-balance-table{width:100%;font-size:13px}.offer-cc-balance-table th,.offer-cc-balance-table td{padding:8px 10px;text-align:left;vertical-align:top}.offer-cc-balance-charges{margin:6px 0 0;padding-left:16px;font-size:12px;color:var(--on-surface-variant)}.offer-cc-balance-charges a{color:var(--primary)}.offer-cc-balance-remaining--open{color:var(--on-surface)}.offer-cc-balance-remaining--over{color:#fca5a5}.offer-summary-page{max-width:1200px}.offer-summary-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.offer-summary-toolbar nav{font-size:13px;color:var(--on-surface-variant)}.offer-summary-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:16px}.offer-summary-header h1{margin:0 0 6px;font-size:20px}.offer-summary-meta{margin:0;font-size:13px;color:var(--on-surface-variant)}.offer-summary-payment-status{flex-shrink:0;padding:8px 12px;border-radius:8px;font-size:13px;font-weight:600}.offer-summary-payment-status--paid{background:#86efac26;color:#86efac}.offer-summary-payment-status--open{background:#fca5a51f;color:#fca5a5}.offer-summary-columns{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:16px}.offer-summary-column h2{margin:0 0 12px;font-size:15px}.offer-summary-empty{margin:0;font-size:13px;color:var(--on-surface-variant)}.offer-summary-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:12px}.offer-summary-list-item{padding-bottom:12px;border-bottom:1px solid var(--outline-variant)}.offer-summary-list-item:last-child{padding-bottom:0;border-bottom:none}.offer-summary-list-item-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.offer-summary-list-item-amount{flex-shrink:0;font-weight:600}.offer-summary-list-item-detail{display:flex;flex-direction:column;gap:2px;margin-top:6px;font-size:12px;color:var(--on-surface-variant)}.offer-summary-bill-link{display:inline-flex;align-items:center;gap:8px;flex-wrap:wrap}.offer-summary-final-badge{display:inline-block;padding:1px 6px;border-radius:4px;font-size:11px;font-weight:600;background:#86efac26;color:#86efac}.document-final-bill-toggle{display:flex;align-items:center;gap:8px;margin-top:12px;font-size:14px;cursor:pointer}@media(max-width:768px){.offer-summary-columns{grid-template-columns:1fr}.offer-summary-header{flex-direction:column}}.desktop-only{display:block}.mobile-only{display:none}.table-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch;margin:0 -4px;padding:0 4px}.table-scroll table{min-width:640px}.table-scroll th:first-child,.table-scroll td:first-child{position:sticky;left:0;z-index:1;background:var(--surface-container-lowest);box-shadow:1px 0 0 var(--outline-variant)}.table-scroll thead th:first-child{z-index:2}.mobile-list-cards{display:flex;flex-direction:column;gap:10px}.mobile-list-card{display:block;padding:14px;border:1px solid var(--outline-variant);border-radius:8px;background:var(--surface-container-lowest);color:inherit;text-decoration:none}.mobile-list-card--clickable{cursor:pointer}.mobile-list-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;margin-bottom:8px}.mobile-list-card-title{font-weight:600;font-size:15px;line-height:1.35;word-break:break-word}.mobile-list-card-meta{display:grid;grid-template-columns:auto 1fr;gap:4px 12px;margin:0;font-size:13px}.mobile-list-card-meta dt{margin:0;color:var(--on-surface-variant);font-weight:500}.mobile-list-card-meta dd{margin:0;text-align:right}.mobile-list-card-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px;padding-top:12px;border-top:1px solid var(--outline-variant)}.list-row-clickable{cursor:pointer}.page-toolbar{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px;flex-wrap:wrap}.page-toolbar h1{margin:0}.login-form{width:min(360px,calc(100vw - 32px))}.document-pdf-toggle{width:100%;margin-bottom:8px}@media(max-width:768px){:root{--safe-bottom: env(safe-area-inset-bottom, 0px);--mobile-nav-height: 56px}.desktop-only{display:none!important}.mobile-only{display:block}.mobile-only.mobile-list-cards{display:flex}.app-shell{grid-template-columns:1fr;grid-template-rows:56px minmax(0,1fr) var(--mobile-nav-height)}.app-header{padding:0 12px;min-height:56px}.app-header-start{display:flex;align-items:center;gap:8px;min-width:0}.app-header-title{font-size:1rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.app-header-actions{gap:8px}.app-header-username{display:none}.app-header-actions .btn-secondary{padding:10px 12px;min-height:44px}.mobile-menu-btn{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;padding:0;border:1px solid var(--outline-variant);border-radius:8px;background:var(--surface-container-lowest);color:var(--primary);font-size:20px;cursor:pointer;flex-shrink:0}.app-sidebar{position:fixed;top:56px;left:0;bottom:calc(var(--mobile-nav-height) + var(--safe-bottom));z-index:120;width:min(280px,88vw);transform:translate(-110%);transition:transform .2s ease;box-shadow:4px 0 24px #0b1c302e}.app-shell.mobile-nav-open .app-sidebar{transform:translate(0)}.app-sidebar.collapsed{width:min(280px,88vw)}.sidebar-collapse-toggle{display:none}.mobile-nav-backdrop{position:fixed;inset:56px 0 calc(var(--mobile-nav-height) + var(--safe-bottom)) 0;z-index:110;border:none;padding:0;background:#0b1c3073;cursor:pointer}.app-main{padding:12px;padding-bottom:calc(12px + var(--safe-bottom))}.mobile-bottom-nav{display:flex;align-items:stretch;grid-column:1 / -1;border-top:1px solid var(--outline-variant);background:var(--surface-container-lowest);padding-bottom:var(--safe-bottom);z-index:90}.mobile-bottom-nav-item{flex:1;display:flex;align-items:center;justify-content:center;min-height:var(--mobile-nav-height);padding:6px 4px;border:none;background:transparent;color:var(--on-surface-variant);font:inherit;font-size:11px;font-weight:600;text-align:center;text-decoration:none;cursor:pointer;line-height:1.2}.mobile-bottom-nav-item.active{color:var(--primary)}.icon-btn{width:44px;height:44px}.btn{min-height:44px}.overview-toolbar{flex-wrap:wrap;align-items:flex-start}.overview-toolbar-actions{flex-wrap:wrap;width:100%}.document-detail-grid{grid-template-columns:1fr;height:auto;min-height:0}.document-pdf-column{max-height:45vh;min-height:200px}.document-pdf-column.is-collapsed .document-pdf-pane,.document-pdf-column.is-collapsed .document-pdf-tabs{display:none}.document-pdf-column.is-collapsed{max-height:none;min-height:0}.fetched-pdfs-layout--split{grid-template-columns:1fr}.fetched-pdfs-layout--split .fetched-pdfs-table-pane{max-height:50vh}.breakdown-col-resize-handle{display:none}.breakdown-row-insert-zone .breakdown-row-insert-btn{opacity:1;pointer-events:auto;width:44px;height:44px}.breakdown-positions-table-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch}.breakdown-positions-table{min-width:720px}.breakdown-positions-table th:first-child,.breakdown-positions-table td:first-child{position:sticky;left:0;z-index:1;background:var(--surface-container-lowest)}.breakdown-selection-float{bottom:calc(var(--mobile-nav-height) + var(--safe-bottom) + 12px);max-width:calc(100vw - 24px);flex-wrap:wrap}.offer-preview-backdrop{align-items:flex-end;padding:0}.offer-preview-dialog{width:100%;max-height:92vh;height:auto;border-radius:16px 16px 0 0;box-shadow:none}.offer-preview-dialog--editor{height:92vh;max-height:92vh}.offer-preview-dialog--editor .document-detail-grid{grid-template-columns:1fr}.balance-list-modal{max-height:85vh}.overview-table-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch}.overview-table-scroll table{min-width:560px}.overview-table-scroll th:first-child,.overview-table-scroll td:first-child{position:sticky;left:0;z-index:1;background:var(--surface-container-lowest);box-shadow:1px 0 0 var(--outline-variant)}.documents-list-toolbar{flex-wrap:wrap}.documents-list-search{min-width:0;flex:1 1 100%}}.mobile-expand-card{border:1px solid var(--outline-variant);border-radius:8px;background:var(--surface-container-lowest);overflow:hidden}.mobile-expand-card-head{display:flex;align-items:stretch;gap:0}.mobile-expand-card-main{flex:1;min-width:0;padding:14px;border:none;background:transparent;text-align:left;font:inherit;color:inherit;cursor:pointer}.mobile-expand-card-main:disabled{cursor:default}.mobile-expand-card-title-row{display:flex;align-items:flex-start;justify-content:space-between;gap:8px;margin-bottom:6px}.mobile-expand-card-title{font-weight:600;font-size:15px;line-height:1.35;word-break:break-word}.mobile-expand-card-primary{font-size:16px;font-weight:600;color:var(--primary)}.mobile-expand-card-chevron{flex-shrink:0;width:44px;border:none;border-left:1px solid var(--outline-variant);background:var(--surface-container);color:var(--on-surface-variant);font-size:12px;cursor:pointer}.mobile-expand-card-chevron.mobile-expand-card-open{font-size:18px;font-weight:600;color:var(--primary)}.mobile-expand-card-details{padding:0 14px 14px;border-top:1px solid var(--outline-variant)}.overview-mobile-group{margin-bottom:20px}.overview-mobile-group-title{margin:0 0 10px;font-size:13px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--on-surface-variant)}.overview-mobile-subtotal,.overview-mobile-grand-total{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:10px 14px;font-weight:600;font-size:14px}.overview-mobile-subtotal{margin-top:8px;border-top:1px solid var(--outline-variant);color:var(--on-surface-variant)}.overview-mobile-grand-total{margin-top:8px;border-radius:8px;background:var(--inverse-surface);color:var(--inverse-on-surface)}.balance-mobile-toolbar{margin-bottom:12px}.balance-mobile-group{margin-bottom:12px;padding:0;overflow:hidden}.balance-mobile-group-header{display:grid;grid-template-columns:auto 1fr auto auto;gap:8px;align-items:center;width:100%;padding:14px;border:none;background:transparent;font:inherit;text-align:left;cursor:pointer}.balance-mobile-group-chevron{font-size:11px;color:var(--on-surface-variant)}.balance-mobile-group-name{font-weight:700;min-width:0;word-break:break-word}.balance-mobile-group-planned,.balance-mobile-group-diff{font-weight:600}.balance-mobile-diff--favorable{color:#166534}.balance-mobile-diff--unfavorable{color:var(--error)}.balance-mobile-group-body{padding:0 14px 14px;border-top:1px solid var(--outline-variant)}.balance-mobile-metrics{display:grid;grid-template-columns:1fr 1fr;gap:8px 12px;margin:12px 0 0}.balance-mobile-metric{display:contents}.balance-mobile-metric dt{margin:0;font-size:12px;color:var(--on-surface-variant);font-weight:500}.balance-mobile-metric dd{margin:0;text-align:right;font-size:14px}.balance-mobile-metric--full{display:block;grid-column:1 / -1;padding-top:4px}.balance-mobile-row{margin-top:12px;padding-top:12px;border-top:1px dashed var(--outline-variant)}.balance-mobile-row-title{display:block;width:100%;margin-bottom:4px;padding:0;border:none;background:transparent;font:inherit;text-align:left;cursor:pointer;color:var(--primary)}.balance-mobile-total,.balance-mobile-final-row{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:14px;font-weight:700}.balance-mobile-capital,.balance-mobile-final{margin-top:16px}@media(min-width:769px){.mobile-menu-btn,.mobile-bottom-nav,.mobile-nav-backdrop{display:none}}@media(hover:none){.breakdown-row-insert-zone .breakdown-row-insert-btn{opacity:1;pointer-events:auto;width:44px;height:44px}}.breakdown-summary-mobile{display:flex;flex-direction:column;gap:10px}.breakdown-summary-mobile-card{border:1px solid var(--outline-variant);border-radius:8px;background:var(--surface-container-lowest);overflow:hidden}.breakdown-summary-mobile-head{display:flex;align-items:stretch}.breakdown-summary-mobile-main{flex:1;min-width:0;padding:14px;border:none;background:transparent;text-align:left;font:inherit;color:inherit;cursor:pointer}.breakdown-summary-mobile-name{display:block;font-weight:600;margin-bottom:4px}.breakdown-summary-mobile-total{font-size:15px}.breakdown-summary-mobile-pct{color:var(--on-surface-variant);font-size:13px}.breakdown-summary-mobile-details{margin:0;padding:0 14px 14px;display:flex;flex-direction:column;gap:10px}.breakdown-summary-mobile-field{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:start}.breakdown-summary-mobile-field dt{margin:0;font-size:12px;color:var(--on-surface-variant)}.breakdown-summary-mobile-field dd{margin:0;text-align:right}.breakdown-summary-mobile-split-select{display:block;margin-top:4px;width:100%;max-width:220px;font-size:12px}.breakdown-summary-mobile-footer{padding:14px}.breakdown-summary-mobile-footer-label{font-weight:600;margin-bottom:6px}.breakdown-positions-mobile{display:flex;flex-direction:column;gap:0}.breakdown-positions-mobile-empty{margin:0 0 12px;color:var(--on-surface-variant)}.breakdown-positions-mobile-add{width:100%}.breakdown-positions-mobile-insert{display:flex;justify-content:center;padding:4px 0}.breakdown-position-mobile-card{border:1px solid var(--outline-variant);border-radius:8px;background:var(--surface-container-lowest);padding:14px}.breakdown-position-mobile-head{margin-bottom:8px}.breakdown-position-mobile-title-row{display:flex;align-items:center;justify-content:space-between;gap:8px}.breakdown-position-mobile-pos{font-weight:600;color:var(--primary)}.breakdown-position-mobile-name{margin-top:4px;line-height:1.35}.breakdown-position-mobile-amount{margin-bottom:10px;font-size:15px}.breakdown-position-mobile-gross{color:var(--on-surface-variant);font-size:13px}.breakdown-position-mobile-tags{display:flex;flex-wrap:wrap;gap:6px;width:100%;padding:0;border:none;background:transparent;text-align:left;cursor:pointer}.breakdown-position-mobile-notes{margin:10px 0 0;font-size:13px;color:var(--on-surface-variant);white-space:pre-wrap}.breakdown-edit-sheet-backdrop{z-index:1200}.breakdown-edit-sheet{max-height:92vh;display:flex;flex-direction:column}.breakdown-edit-sheet-header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px;border-bottom:1px solid var(--outline-variant)}.breakdown-edit-sheet-header h3{margin:0;font-size:1rem}.breakdown-edit-sheet-body{flex:1;overflow-y:auto;padding:16px;display:flex;flex-direction:column;gap:14px}.breakdown-edit-sheet-field{display:flex;flex-direction:column;gap:6px}.breakdown-edit-sheet-field span{font-size:13px;color:var(--on-surface-variant)}.breakdown-edit-sheet-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.breakdown-edit-sheet-computed{display:flex;flex-wrap:wrap;gap:12px;font-size:14px;color:var(--on-surface-variant)}.breakdown-edit-sheet-actions{display:flex;gap:10px;padding:16px;padding-bottom:calc(16px + var(--safe-bottom, 0px));border-top:1px solid var(--outline-variant)}.breakdown-edit-sheet-actions .btn-primary{flex:1}.fetched-pdfs-mobile-scroll{max-height:min(70vh,640px);overflow-y:auto;-webkit-overflow-scrolling:touch}.fetched-pdfs-mobile-list{display:flex;flex-direction:column;gap:10px}.fetched-pdf-mobile-card{border:1px solid var(--outline-variant);border-radius:8px;background:var(--surface-container-lowest);overflow:hidden}.fetched-pdf-mobile-card--selected{border-color:var(--primary)}.fetched-pdf-mobile-head{display:flex;align-items:stretch}.fetched-pdf-mobile-main{flex:1;min-width:0;padding:14px;border:none;background:transparent;text-align:left;font:inherit;color:inherit;cursor:pointer}.fetched-pdf-mobile-title-row{display:flex;align-items:flex-start;justify-content:space-between;gap:8px;margin-bottom:6px}.fetched-pdf-mobile-filename{font-weight:600;line-height:1.3;word-break:break-word}.fetched-pdf-mobile-badge{flex-shrink:0;font-size:11px;padding:2px 8px;border-radius:999px;background:var(--surface-container-high);color:var(--on-surface-variant)}.fetched-pdf-mobile-meta{display:flex;flex-direction:column;gap:2px;font-size:13px;color:var(--on-surface-variant)}.fetched-pdf-mobile-subject{word-break:break-word}.fetched-pdf-mobile-date{font-size:12px}.fetched-pdf-mobile-details{padding:0 14px 14px;display:flex;flex-direction:column;gap:12px;border-top:1px solid var(--outline-variant)}.fetched-pdf-mobile-field{display:flex;flex-direction:column;gap:6px}.fetched-pdf-mobile-field>span:first-child{font-size:12px;color:var(--on-surface-variant)}.fetched-pdf-mobile-actions{display:flex;gap:8px;flex-wrap:wrap}.fetched-pdfs-mobile-preview-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1200;background:var(--surface-container-lowest);display:flex;flex-direction:column}.fetched-pdfs-mobile-preview{display:flex;flex-direction:column;height:100%;padding-top:var(--safe-top, 0px);padding-bottom:var(--safe-bottom, 0px)}.fetched-pdfs-mobile-preview-header{display:flex;align-items:center;gap:10px;padding:12px 16px;border-bottom:1px solid var(--outline-variant);flex-shrink:0}.fetched-pdfs-mobile-preview-title{margin:0;font-size:14px;font-weight:600;line-height:1.3;word-break:break-word;flex:1;min-width:0}.fetched-pdfs-mobile-preview-meta{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:10px 16px;flex-shrink:0}.fetched-pdfs-mobile-preview-type{padding:0 16px 10px;flex-shrink:0}.fetched-pdfs-mobile-preview-frame{flex:1;min-height:0;padding:0 8px 8px}.fetched-pdfs-mobile-preview-frame iframe{width:100%;height:100%;border:1px solid var(--outline-variant);border-radius:8px;background:var(--surface-container)}@media(max-width:768px){.document-stacked-table{display:block;width:100%}.document-stacked-table thead{display:none}.document-stacked-table tbody{display:block}.document-stacked-table tbody tr{display:block;border:1px solid var(--outline-variant);border-radius:8px;margin-bottom:10px;padding:12px;background:var(--surface-container-lowest)}.document-stacked-table tbody tr.document-stacked-table-add-row{border-style:dashed;background:transparent}.document-stacked-table td{display:block;padding:8px 0;border:none;white-space:normal!important}.document-stacked-table td:before{content:attr(data-label);display:block;font-size:12px;color:var(--on-surface-variant);margin-bottom:4px}.document-stacked-table td .input,.document-stacked-table td .btn,.document-stacked-table td select{width:100%;max-width:100%}.document-stacked-table td[colspan]{width:100%}.reduction-links-table .reduction-link-target-select{max-width:100%}.document-stacked-table .proof-add-amount,.document-stacked-table .proof-add-date{width:100%!important}}.view-toggle{display:inline-flex;border:1px solid var(--outline-variant);border-radius:8px;overflow:hidden;background:var(--surface-container-lowest)}.view-toggle-btn{border:none;background:transparent;color:var(--on-surface-variant);padding:8px 12px;font:inherit;font-size:14px;cursor:pointer}.view-toggle-btn:hover{background:var(--surface-container)}.view-toggle-btn.active{background:var(--primary);color:#fff}.money-flow-scope{margin-bottom:16px;padding:12px 16px;border:1px solid var(--outline-variant);border-radius:12px;background:var(--surface-container-lowest)}.money-flow-scope-filters{display:flex;flex-wrap:wrap;gap:12px;align-items:flex-end}.money-flow-scope-field{display:flex;flex-direction:column;gap:4px;min-width:min(100%,220px)}.money-flow-scope-label{font-size:12px;font-weight:600;color:var(--on-surface-variant)}.money-flow-scope-select{min-width:220px}.money-flow-scope-active{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-top:12px;padding-top:12px;border-top:1px solid var(--outline-variant)}.money-flow-scope-active-label{font-size:12px;font-weight:600;color:var(--on-surface-variant)}.money-flow-scope-chips{display:flex;flex-wrap:wrap;gap:8px;flex:1}.money-flow-scope-chip{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--outline-variant);border-radius:999px;background:var(--surface-container);padding:4px 10px;font:inherit;font-size:12px;cursor:pointer;color:inherit}.money-flow-scope-chip:hover{border-color:var(--primary)}.money-flow-scope-chip-remove{font-size:14px;line-height:1;opacity:.7}.money-flow-scoped-hint{margin:0;font-size:13px;color:var(--on-surface-variant)}.money-flow{display:flex;flex-direction:column;gap:20px}.money-flow-empty{color:var(--on-surface-variant);margin:0}.money-flow-legend{padding:12px 16px;border:1px solid var(--outline-variant);border-radius:12px;background:var(--surface-container-lowest)}.money-flow-legend-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:8px}.money-flow-legend-title{display:block;font-weight:600}.money-flow-legend-items{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.money-flow-legend-item{display:inline-block;padding:4px 10px;border-radius:999px;font-size:13px;border:1px solid transparent}.money-flow-legend-edges{display:flex;flex-wrap:wrap;gap:10px;margin-top:10px}.money-flow-legend-edge{display:inline-flex;align-items:center;gap:8px;font-size:12px;color:var(--on-surface-variant);padding:4px 10px 4px 28px;border-radius:999px;background:var(--surface-container);position:relative}.money-flow-legend-edge:before{content:"";position:absolute;left:10px;top:50%;width:14px;height:0;border-top:2px solid currentColor;transform:translateY(-50%)}.money-flow-legend-edge.money-flow-edge--reduction{color:#0047ab}.money-flow-legend-edge.money-flow-edge--charge{color:#2d6a4f}.money-flow-legend-edge.money-flow-edge--allocation{color:#7c5295}.money-flow-legend-edge.money-flow-edge--allocation:before{border-top-style:dashed}.money-flow-legend-hint{margin:10px 0 0;font-size:13px;color:var(--on-surface-variant)}.money-flow-wp{border:1px solid var(--outline-variant);border-radius:12px;overflow:hidden;background:var(--surface-container-lowest)}.money-flow-wp-title{margin:0;padding:12px 16px;font-size:1rem;background:var(--surface-container);border-bottom:1px solid var(--outline-variant)}.money-flow-wp-rows{display:flex;flex-direction:column}.money-flow-row{padding:16px;border-bottom:1px solid var(--outline-variant)}.money-flow-row:last-child{border-bottom:none}.money-flow-canvas-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch;margin:0 -4px;padding:4px}.money-flow-canvas-scroll--vertical{overflow-y:auto;max-height:min(85vh,1200px)}.money-flow:fullscreen,.money-flow--fullscreen{background:var(--surface);padding:16px;overflow:hidden}.money-flow--fullscreen{position:fixed;top:0;right:0;bottom:0;left:0;z-index:200}.money-flow:fullscreen .money-flow-canvas-scroll--vertical,.money-flow--fullscreen .money-flow-canvas-scroll--vertical{max-height:none;flex:1;min-height:0}.money-flow-canvas{position:relative;min-width:min(100%,960px)}.money-flow-canvas--vertical{min-width:min(100%,480px);margin:0 auto}.money-flow-canvas-svg{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.money-flow-canvas-node{position:absolute;z-index:1}.money-flow-canvas-node .money-flow-node{width:100%;height:100%;min-width:0;max-width:none;box-sizing:border-box}.money-flow-edge{stroke-width:2.5}.money-flow-edge--aggregate{stroke:#5c677d;stroke-width:2}.money-flow-edge--reduction{stroke:#0047ab}.money-flow-edge--charge{stroke:#2d6a4f}.money-flow-edge--payment{stroke:#b8860b}.money-flow-edge--allocation{stroke:#7c5295;stroke-dasharray:7 5}.money-flow-marker--aggregate{fill:#5c677d}.money-flow-marker--reduction{fill:#0047ab}.money-flow-marker--charge{fill:#2d6a4f}.money-flow-marker--payment{fill:#b8860b}.money-flow-marker--allocation{fill:#7c5295}.money-flow-edge-label-bg{fill:var(--surface-container-lowest);stroke:var(--outline-variant);stroke-width:1}.money-flow-edge-label-text{fill:var(--on-surface);font-size:11px;font-weight:600;font-family:inherit}.money-flow-row-uncovered{display:flex;flex-wrap:wrap;align-items:center;gap:16px;min-height:48px}.money-flow-uncovered-label{font-size:13px;color:var(--on-surface-variant);font-style:italic}.money-flow-node{display:flex;flex-direction:column;gap:4px;min-width:140px;max-width:220px;padding:10px 12px;border-radius:10px;border:1px solid var(--outline-variant);background:var(--surface);text-decoration:none;color:inherit}.money-flow-node--link:hover{border-color:var(--primary);box-shadow:0 2px 8px #00327d1f}.money-flow-node--link:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.money-flow-node-kind{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--on-surface-variant)}.money-flow-node-label{font-size:14px;font-weight:600;line-height:1.3;word-break:break-word}.money-flow-node-amount{font-size:14px;font-variant-numeric:tabular-nums}.money-flow-node-meta{font-size:12px;color:var(--on-surface-variant)}.money-flow-node--total{border-color:#5c677d;background:#eef1f6;min-width:180px;font-weight:700}.money-flow-node--work_package{border-color:#6b8cae;background:#e8f0f8}.money-flow-node--planned_cost{border-color:#7c9fd4;background:#eef4ff}.money-flow-node--offer{border-color:#d4a574;background:#fff6ee}.money-flow-node--bill{border-color:#8fb996;background:#f0faf2}.money-flow-node--payment{border-color:#c9a227;background:#fffbeb}.money-flow-node--cost_center{border-color:#a894c9;background:#f6f1fc;min-width:100px}.money-flow-legend-edge.money-flow-edge--aggregate{color:#5c677d}.money-flow-legend-edge.money-flow-edge--payment{color:#b8860b}
