:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--brand:#b42318;--ink:#16191d;--ink-2:#3b4149;--muted:#6b7280;--muted-2:#8b929b;--line:#d7dbe0;--line-soft:#e8eaee;--line-strong:#bcc2c9;--surface:#fff;--surface-2:#f4f5f7;--surface-3:#fafbfc;--canvas:#eceef1;--ok:#17654a;--ok-line:#bcdccc;--ok-fill:#f1f8f4;--warn:#855400;--warn-line:#e6d2a4;--warn-fill:#fdf8ec;--alert:#a12b1f;--alert-line:#e7bdb8;--alert-fill:#fdf3f2;--sf:#1c5f9e;--sf-fill:#eef4fa;--sf-line:#b9d0e5;--nav:#3f6b3a;--nav-fill:#f0f5ef;--nav-line:#c3d6c0;--focus:0 0 0 2px #fff, 0 0 0 4px #1e407873}*{box-sizing:border-box}body{background:var(--canvas);color:var(--ink);-webkit-font-smoothing:antialiased;margin:0;font-family:Segoe UI,system-ui,-apple-system,Roboto,Arial,sans-serif;font-size:13px;line-height:1.45}button,input,select{font:inherit;color:inherit}button,select{cursor:pointer}:focus-visible{box-shadow:var(--focus);outline:0}.num{font-variant-numeric:tabular-nums}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.login{place-items:center;min-height:100vh;padding:24px;display:grid}.login-card{border:1px solid var(--line);background:var(--surface);width:min(400px,100%);box-shadow:0 1px 2px #10141a0d}.login-card header{border-bottom:1px solid var(--line-soft);text-align:center;justify-items:center;padding:30px 26px 22px;display:grid}.login-logo{object-fit:contain;width:132px;height:119px;margin-bottom:16px}.logo-load{display:block;position:relative}.logo-load .logo-layer{object-fit:contain;width:100%;height:100%;position:absolute;inset:0}.logo-load .is-empty{filter:grayscale();opacity:.22}.logo-load .is-full{clip-path:inset(calc(100% - var(--fill,0) * 100%) 0 0 0);transition:clip-path .12s linear}.login-card h1{margin:0;font-size:17px;font-weight:600}.login-card header p{color:var(--muted);margin:3px 0 0;font-size:12px}.login-card.is-splash header{border-bottom:0;padding-bottom:30px}.login-body{padding:18px 26px 22px}.login-body>p{color:var(--ink-2);text-align:center;margin:0 0 14px;font-size:12.5px}.loading-bar{background:var(--surface-2);border:1px solid var(--line-soft);height:3px;overflow:hidden}.loading-bar i{background:var(--brand);width:38%;height:100%;animation:1.25s ease-in-out infinite loading-sweep;display:block}@keyframes loading-sweep{0%{transform:translate(-100%)}to{transform:translate(365%)}}@media (prefers-reduced-motion:reduce){.loading-bar i{opacity:.35;width:100%;animation:none}.ghost{opacity:.7;animation:none}.detail,.year-line,.year-point{animation:none}.logo-load .is-full{transition:none}}.login-card footer{border-top:1px solid var(--line-soft);color:var(--muted);text-align:center;padding:12px 26px;font-size:11.5px}.ms-button{color:#5e5e5e;background:#fff;border:1px solid #8c8c8c;justify-content:center;align-items:center;gap:12px;width:100%;height:41px;font-size:15px;font-weight:600;text-decoration:none;display:flex}.ms-button:hover{background:#f3f3f3}.ms-mark{grid-template:repeat(2,9px)/repeat(2,9px);gap:2px;width:20px;height:20px;display:grid}.ms-mark i:first-child{background:#f25022}.ms-mark i:nth-child(2){background:#7fba00}.ms-mark i:nth-child(3){background:#00a4ef}.ms-mark i:nth-child(4){background:#ffb900}.shell{flex-direction:column;height:100vh;display:flex;overflow:hidden}.topbar{border-bottom:1px solid var(--line);background:var(--surface);align-items:center;gap:16px;height:46px;padding:0 16px;display:flex}.brand{align-items:center;gap:9px;display:flex}.brand-logo{object-fit:contain;width:auto;height:34px}.topbar h1{letter-spacing:.01em;color:var(--ink);white-space:nowrap;margin:0;font-size:14px;font-weight:600}.views{align-items:stretch;gap:2px;height:100%;margin-left:6px;display:flex}.view-tab{font:inherit;color:var(--muted);white-space:nowrap;cursor:pointer;background:0 0;border:0;border-bottom:2px solid #0000;padding:0 10px;font-size:12px}.view-tab:hover{color:var(--ink)}.view-tab[aria-pressed=true]{color:var(--ink);border-bottom-color:var(--brand);font-weight:600}.view-tab:focus-visible{box-shadow:var(--focus);outline:0}.topbar-right{color:var(--muted);align-items:center;gap:14px;margin-left:auto;font-size:11.5px;display:flex}.source-dots{border:1px solid var(--line);background:var(--surface-3);flex-direction:column;display:inline-flex}.source-pill{justify-content:center;align-items:center;width:20px;height:12px;display:inline-flex}.source-pill+.source-pill{border-top:1px solid var(--line-soft)}.source-pill .dot{width:7px;height:7px}.source-pill.is-sf .dot{background:var(--sf)}.source-pill.is-nav .dot{background:var(--nav)}.source-pill.is-down .dot{background:var(--alert)}.source-pill.is-off .dot{background:var(--muted-2)}.linkish{color:var(--ink-2);border-bottom:1px solid var(--line-strong);text-decoration:none}.linkish:hover{color:var(--brand);border-color:var(--brand)}.workspace{flex:1;grid-template-columns:360px minmax(0,1fr);min-height:0;display:grid}.board{flex:1;min-height:0;overflow-y:auto}.pane{border-right:1px solid var(--line);background:var(--surface);flex-direction:column;min-height:0;display:flex}.pane-head{border-bottom:1px solid var(--line-soft);gap:8px;padding:10px 12px;display:grid}.search{border:1px solid var(--line-strong);background:var(--surface);width:100%;height:30px;padding:0 10px}.filter-row{flex-wrap:wrap;gap:4px;display:flex}.trade-filter{margin:0 0 10px}.chip{border:1px solid var(--line);background:var(--surface-3);height:24px;color:var(--ink-2);white-space:nowrap;padding:0 9px;font-size:11.5px}.chip:hover{background:var(--surface-2)}.chip[aria-pressed=true]{border-color:var(--ink-2);background:var(--ink);color:#fff}.chip.is-go{border-color:var(--ink);background:var(--ink);color:#fff;font-weight:600}.chip.is-go:hover{background:var(--ink-2)}.chip[disabled]{border-color:var(--line);background:var(--surface-3);color:var(--muted-2);cursor:default}.chip.is-go[disabled]{background:var(--surface-3)}.chip-group{display:inline-flex}.chip-group.is-crosscut{border-left:1px solid var(--line);margin-left:9px;padding-left:9px}.toggle{height:24px;color:var(--ink-2);white-space:nowrap;cursor:pointer;align-items:center;gap:5px;margin-left:6px;font-size:11.5px;display:inline-flex}.toggle input{width:13px;height:13px;accent-color:var(--ink-2);cursor:pointer;margin:0}.toggle .count{color:var(--muted);font-variant-numeric:tabular-nums}.sums{border-top:1px solid var(--line-soft);background:var(--surface-3);color:var(--muted);font-size:12px}.sums p{margin:0}.sums b{color:var(--ink-2);font-weight:600}.chip .count{color:var(--muted);font-variant-numeric:tabular-nums;margin-left:5px}.chip[aria-pressed=true] .count{color:#cfd4da}.list{flex:1;min-height:0;overflow:auto}.list-item{border:0;border-bottom:1px solid var(--line-soft);text-align:left;background:0 0;border-left:3px solid #0000;grid-template-columns:minmax(0,1fr) auto;gap:2px 10px;width:100%;padding:7px 12px;display:grid}.list-item:hover{background:var(--surface-2)}.list-item[aria-current=true]{border-left-color:var(--brand);background:var(--surface-2)}.list-item .name{text-overflow:ellipsis;white-space:nowrap;font-weight:600;overflow:hidden}.list-item .place{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;grid-column:1;font-size:11.5px;overflow:hidden}.list-item .kred{font-variant-numeric:tabular-nums;color:var(--nav);grid-area:1/2;font-size:11.5px}.list-item .state{text-transform:uppercase;letter-spacing:.04em;color:var(--muted-2);grid-area:2/2;font-size:10.5px}.list-item.is-warn .state{color:var(--warn)}.list-item.is-alert .state{color:var(--alert)}.list-empty{color:var(--muted);text-align:center;padding:24px 16px}.detail{background:var(--canvas);min-height:0;animation:.18s ease-out both detail-in;overflow:auto}@keyframes detail-in{0%{opacity:0}to{opacity:1}}.detail-head{border-bottom:1px solid var(--line);background:var(--surface);padding:14px 18px}.detail-title{align-items:center;gap:12px;display:flex}.detail-title h2{margin:0;font-size:17px;font-weight:600}.detail-actions{flex:none;gap:4px;margin-left:auto;display:flex}.chip.is-icon{justify-content:center;align-items:center;width:24px;padding:0;display:inline-flex}.btn-icon{flex:none;width:13px;height:13px}.detail-head h2{margin:0;font-size:17px;font-weight:600}.detail-sub{color:var(--muted);flex-wrap:wrap;align-items:center;gap:4px 12px;margin:3px 0 0;font-size:12px;display:flex}.badge{border:1px solid var(--line);background:var(--surface-3);white-space:nowrap;align-items:center;gap:5px;padding:1px 7px;font-size:11px;display:inline-flex}.badge.is-ok{border-color:var(--ok-line);background:var(--ok-fill);color:var(--ok)}.badge.is-warn{border-color:var(--warn-line);background:var(--warn-fill);color:var(--warn)}.badge.is-alert{border-color:var(--alert-line);background:var(--alert-fill);color:var(--alert)}.badge.is-sf{border-color:var(--sf-line);background:var(--sf-fill);color:var(--sf)}.badge.is-nav{border-color:var(--nav-line);background:var(--nav-fill);color:var(--nav)}.section{border:1px solid var(--line);background:var(--surface);margin:12px 12px 0}.section:last-child{margin-bottom:12px}.section>h3{border-bottom:1px solid var(--line-soft);text-transform:uppercase;letter-spacing:.05em;color:var(--ink-2);align-items:center;gap:10px;margin:0;padding:8px 14px;font-size:12px;font-weight:600;display:flex}.section>h3 .hint{text-transform:none;letter-spacing:0;color:var(--muted);margin-left:auto;font-size:11.5px;font-weight:400}.section-body{padding:12px 14px}.section>h3 .fold{font:inherit;text-transform:none;letter-spacing:0;color:var(--muted);text-decoration:underline;-webkit-text-decoration-color:var(--line-strong);text-decoration-color:var(--line-strong);text-underline-offset:2px;white-space:nowrap;cursor:pointer;background:0 0;border:0;padding:0;font-size:11.5px;font-weight:400}.section>h3 .fold:hover{color:var(--brand)}.section.is-folded>.section-fold{display:none}.section.is-folded>h3{border-bottom:0}.tiles{border-top:1px solid var(--line-soft);grid-template-columns:repeat(auto-fit,minmax(150px,1fr));display:grid}.tile{border-right:1px solid var(--line-soft);border-bottom:1px solid var(--line-soft);padding:10px 14px}.tile:last-child{border-right:0}.tile .label{color:var(--muted);text-transform:uppercase;letter-spacing:.04em;font-size:11px}.tile .value{font-variant-numeric:tabular-nums;font-size:18px;font-weight:600;line-height:1.25}.tile .note{color:var(--muted);font-size:11.5px}.tile.is-alert .value{color:var(--alert)}.tile.is-ok .value{color:var(--ok)}button.tile{text-align:left;width:100%;font:inherit;color:inherit;background:0 0;border-top:0;border-left:0}button.tile.is-link:hover{background:var(--surface-2)}button.tile.is-link .label:after{content:" ↓";color:var(--muted-2)}button.tile.is-link:hover .label:after{color:var(--ink-2)}.compare{border-collapse:collapse;width:100%}.compare th,.compare td{border-bottom:1px solid var(--line-soft);text-align:left;vertical-align:top;padding:6px 14px}.compare thead th{text-transform:uppercase;letter-spacing:.04em;color:var(--muted);background:var(--surface-3);font-size:11px;font-weight:600}.compare thead th.sf{color:var(--sf)}.compare thead th.nav{color:var(--nav)}.compare td.field{width:120px;color:var(--muted)}.compare tr.is-diff td:not(.field){background:var(--warn-fill)}.compare tr.is-diff td.field:after{content:" ≠";color:var(--warn);font-weight:600}.compare .empty{color:var(--muted-2)}.table-wrap{overflow-x:auto}table.ledger{border-collapse:collapse;font-variant-numeric:tabular-nums;width:100%}table.ledger th,table.ledger td{border-bottom:1px solid var(--line-soft);white-space:nowrap;text-align:left;padding:5px 10px}table.ledger thead th{z-index:1;background:var(--surface-3);border-bottom:1px solid var(--line);text-transform:uppercase;letter-spacing:.04em;color:var(--muted);font-size:11px;font-weight:600;position:sticky;top:0}table.ledger td.right,table.ledger th.right{text-align:right}table.ledger td.project{text-overflow:ellipsis;max-width:280px;overflow:hidden}table.ledger tbody tr:hover{background:var(--surface-2)}table.ledger tr.is-open td{background:var(--surface-3)}table.ledger tr.is-open:hover td{background:var(--surface-2)}.type{border:1px solid var(--line);background:var(--surface-3);text-align:center;min-width:78px;padding:0 6px;font-size:11px;display:inline-block}.type.is-invoice{border-color:var(--warn-line);background:var(--warn-fill);color:var(--warn)}.type.is-payment{border-color:var(--ok-line);background:var(--ok-fill);color:var(--ok)}.type.is-credit{border-color:var(--sf-line);background:var(--sf-fill);color:var(--sf)}.no-document{cursor:help}.overdue{color:var(--alert);font-weight:600}.year-chart{--year-plot:168px;grid-template-columns:auto minmax(0,1fr);column-gap:10px;margin:0;display:grid}.year-scale{height:calc(var(--year-plot) + 1.2em);font-variant-numeric:tabular-nums;color:var(--muted);align-content:space-between;justify-items:end;margin:-.6em 0;font-size:11px;line-height:1.2;display:grid}.year-scale span{white-space:nowrap}.year-plot{height:var(--year-plot);border-bottom:1px solid var(--line);position:relative}.year-grid{border-top:1px solid var(--line-soft);display:block;position:absolute;left:0;right:0}.year-line{width:100%;height:100%;position:absolute;inset:0;overflow:visible}.year-line polyline{fill:none;stroke:var(--nav);stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke}.year-point{cursor:help;width:24px;height:24px;position:absolute;transform:translate(-50%,50%)}.year-point:after{content:"";background:var(--nav);border-radius:50%;width:9px;height:9px;margin:-4.5px 0 0 -4.5px;position:absolute;top:50%;left:50%}.year-point:hover:after{transform:scale(1.4)}.year-foot{font-variant-numeric:tabular-nums;grid-column:2;margin:0;padding-top:7px;display:grid}.year-mark{text-align:center;white-space:nowrap;justify-items:center;gap:1px;display:grid}.year-mark .amount{font-size:11.5px}.year-line{animation:.6s ease-out both year-draw}@keyframes year-draw{0%{clip-path:inset(0 100% 0 0)}to{clip-path:inset(0)}}.year-point{animation:.24s ease-out both year-point-in;animation-delay:calc(var(--year-step,0) * .52s)}@keyframes year-point-in{0%{opacity:0;transform:translate(-50%,50%)scale(.4)}to{opacity:1;transform:translate(-50%,50%)scale(1)}}.bars{gap:6px;display:grid}.bar-row{font-variant-numeric:tabular-nums;grid-template-columns:116px minmax(0,1fr) 120px 64px;align-items:center;gap:10px;display:grid}.bar-row .bar{background:var(--surface-2);border:1px solid var(--line-soft);height:14px;position:relative;overflow:hidden}.bar-row .bar i{background:var(--nav-line);display:block;position:absolute;top:0;bottom:0;left:0}.bar-row.is-alert .bar i,.bar-row .bar i.is-alert{background:var(--alert-line)}.bar-row .bar i.is-soft{background:var(--line-strong)}.bar-row .amount{text-align:right}.bar-row .count{text-align:right;color:var(--muted);font-size:11.5px}table.plain{border-collapse:collapse;font-variant-numeric:tabular-nums;width:100%}table.plain th,table.plain td{border-bottom:1px solid var(--line-soft);text-align:left;padding:5px 14px}table.plain thead th{text-transform:uppercase;letter-spacing:.04em;color:var(--muted);background:var(--surface-3);font-size:11px;font-weight:600}table.plain td.right,table.plain th.right{text-align:right}table.plain td.is-alert{color:var(--alert)}.contract-site{border-top:1px solid var(--line-soft);padding-top:8px}.contract-site:first-of-type{border-top:0}.contract-site-head{flex-wrap:wrap;align-items:center;gap:8px;padding:6px 14px;display:flex}.contract-site-head strong{font-variant-numeric:tabular-nums}.contract-name{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.contract-site-head span:not(.badge):not(.mini){color:var(--ink-2)}.contract-site .mini{padding:0 14px}.contract-site tfoot td{border-bottom:0;border-top:1px solid var(--line);color:var(--ink-2)}.contract-processes{background:var(--surface-3);margin:6px 0 10px;padding-top:6px}.contract-select{font:inherit;border:1px solid var(--line);background:var(--surface);color:inherit;max-width:100%;padding:2px 4px}.contract-site tr.has-amendments>td{border-bottom:0;padding-bottom:2px}.contract-amendment-row>td{border-bottom:1px solid var(--line-soft);padding:0 14px 8px}.amendment-head{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.amendment-bar{background:var(--surface-2);border:1px solid var(--line-soft);flex:none;width:170px;height:10px;display:block;position:relative;overflow:hidden}.amendment-bar i{display:block;position:absolute;top:0;bottom:0}.amendment-bar i.is-base{background:var(--line-strong)}.amendment-bar i.is-added{background:var(--sf-line)}.amendment-bar i.is-reduced{background:var(--alert-line)}.amendment-sum{color:var(--ink-2);font-variant-numeric:tabular-nums;flex:22em;margin:0;font-size:11.5px}.amendment-sum b{color:var(--ink);font-weight:600}.amendment-table{background:var(--surface-3);margin-top:6px}.amendment-table thead th{background:0 0}.amendment-table td{vertical-align:top}.amendment-link{color:var(--sf);border-bottom-color:var(--sf-line);align-items:center;gap:4px;display:inline-flex}.list-item .sum{font-variant-numeric:tabular-nums;color:var(--muted);text-align:right;grid-area:2/2;font-size:11.5px}.list-foot{border-top:1px solid var(--line-soft);background:var(--surface-3);color:var(--muted);margin:0;padding:6px 12px;font-size:11px}.cc-bar{background:var(--line);height:3px;margin-top:4px;display:block;position:relative}.cc-bar i{background:var(--ok);height:100%;position:absolute;top:0;left:0}.cc-bar i.is-over{background:var(--alert)}.cc-note-line{color:var(--muted-2);display:block}.tile.is-muted .value{color:var(--muted-2)}.cc-parties{border-top:1px solid var(--line-soft)}.cc-party-row{border-bottom:1px solid var(--line-soft);grid-template-columns:minmax(0,1fr) 170px 72px 116px 116px 116px;align-items:center;gap:10px;padding:5px 14px;display:grid}.cc-party-row.is-head{background:var(--surface-3);border-bottom:1px solid var(--line);color:var(--muted);letter-spacing:.04em;text-transform:uppercase;font-size:11px;font-weight:600}.cc-party-row.is-open{background:var(--surface-2);border-bottom-color:var(--line)}.cc-c-name{align-items:center;gap:6px;min-width:0;display:flex}.cc-c-kred{min-width:0}.cc-c-num{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}.cc-c-num.is-alert{color:var(--alert)}.cc-trade-name{align-items:center;gap:6px;width:100%;min-width:0;display:flex}.cc-trade-name>b{flex:none}.cc-trade-marks{flex:none;align-items:center;gap:2px;margin-left:auto;padding-left:12px;display:inline-flex}.cc-mark{justify-content:center;align-items:center;display:inline-flex}.cc-mark.is-sf{width:15px;color:var(--sf)}.cc-mark.is-nav{width:13px;color:var(--nav)}.cc-mark.is-sf.is-idle{color:var(--muted-2)}.cc-trade-label{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.cc-trade-name .mini{white-space:nowrap;flex:none}.cc-trades tbody>tr:not(.cc-trade-body):hover>td{background:var(--surface-2)}.cc-trade-body>td{background:var(--surface-2);padding:4px 14px 10px 24px}.cc-trade-contracts{background:var(--surface);border:1px solid var(--line-soft)}.cc-toggle{width:18px;height:18px;color:var(--muted-2);cursor:pointer;background:0 0;border:0;flex:none;justify-content:center;align-items:center;padding:0;display:inline-flex}.cc-toggle:hover{color:var(--ink)}.cc-toggle:focus-visible{box-shadow:var(--focus);outline:0}.cc-caret{width:10px;height:10px;transition:transform .12s ease-out}.cc-toggle[aria-expanded=true] .cc-caret{transform:rotate(90deg)}@media (prefers-reduced-motion:reduce){.cc-caret{transition:none}}.cc-party-name{font:inherit;color:var(--ink);cursor:pointer;text-overflow:ellipsis;white-space:nowrap;background:0 0;border-top:0;border-left:0;border-right:0;padding:0;font-weight:600;overflow:hidden}.cc-proposal{border-bottom:1px solid var(--line-soft);background:var(--surface-3);flex-wrap:wrap;align-items:center;gap:4px 10px;margin:0;padding:6px 14px 8px 38px;font-size:12px;display:flex}.cc-proposal-lead{align-items:center;gap:8px;display:inline-flex}.cc-party-body{border-bottom:1px solid var(--line-soft);background:var(--surface-2);padding:6px 0 10px 24px}.cc-party-body .mini{padding:0 14px}@media (max-width:1100px){.cc-party-row{grid-template-columns:minmax(0,1fr) 62px 104px 104px 104px;gap:6px 8px}.cc-c-kred{grid-area:2/1;padding-left:24px}.cc-party-row.is-head .cc-c-kred{display:none}}.notice{border:1px solid var(--line);background:var(--surface);color:var(--ink-2);margin:12px;padding:10px 14px}.notice.is-error{border-color:var(--alert-line);background:var(--alert-fill);color:var(--alert)}.notice.is-warn{border-color:var(--warn-line);background:var(--warn-fill);color:var(--warn)}.notice.is-ok{border-color:var(--ok-line);background:var(--ok-fill);color:var(--ok)}.notice.is-sf{border-color:var(--sf-line);background:var(--sf-fill);color:var(--sf)}.chip.is-write{border-color:var(--brand);color:var(--brand);font-weight:600}.chip.is-write:hover{background:var(--alert-fill)}.chip.is-write[disabled]{border-color:var(--line);color:var(--muted);cursor:default}.confirm-write{flex-wrap:wrap;align-items:center;gap:8px 12px;padding:2px 0;display:flex}.confirm-actions{gap:6px;margin-left:auto;display:inline-flex}.write-error{color:var(--alert);flex-basis:100%}.notice strong{margin-bottom:2px;display:block}.placeholder{height:100%;color:var(--muted);text-align:center;place-items:center;padding:40px;display:grid}.placeholder p{max-width:42ch;margin:6px 0 0}.mini{color:var(--muted);font-size:11.5px}.ghost{background:var(--surface-2);animation:1.6s ease-in-out infinite ghost-pulse;display:block}.ghost-title{width:210px;height:18px}.ghost-action{width:24px;height:24px}.ghost-line{width:330px;height:11px;margin-top:9px}.ghost-label{width:80px;height:10px}.ghost-value{width:118px;height:17px}.ghost-note{width:148px;height:10px}.ghost-plot{height:228px}.is-skeleton .tile .ghost+.ghost{margin-top:7px}@keyframes ghost-pulse{0%,to{opacity:1}50%{opacity:.45}}.mini.is-busy{align-items:center;gap:8px;display:inline-flex}.mini.is-busy .loading-bar{width:56px}.rowbtn{color:var(--ink);text-align:left;text-decoration:underline;-webkit-text-decoration-color:var(--line-strong);text-decoration-color:var(--line-strong);text-underline-offset:2px;background:0 0;border:0;padding:0}.rowbtn:hover{color:var(--brand)}.rowbtn.mini{color:var(--muted)}table.proposals td{vertical-align:top;padding-top:7px;padding-bottom:7px}.candidate-actions{flex-wrap:wrap;align-items:center;gap:8px;margin-top:4px;display:flex}a.chip{align-items:center;gap:4px;text-decoration:none;display:inline-flex}.chip.is-sf{border-color:var(--sf-line);color:var(--sf)}.chip.is-sf:hover{background:var(--sf-fill)}.chip.is-nav{border-color:var(--nav-line);color:var(--nav)}.chip.is-nav:hover{background:var(--nav-fill)}.mini.is-inactive{color:var(--warn)}.sf-cloud{flex:none;width:15px;height:9px}table.proposals tr.is-alternative td{background:var(--surface-3);border-bottom:0;padding-top:0}.reasons span+span:before{content:" · ";color:var(--line-strong)}.reasons .is-against{color:var(--alert)}.statusline{border-top:1px solid var(--line);background:var(--surface);height:26px;color:var(--muted);align-items:center;gap:14px;padding:0 16px;font-size:11px;display:flex}.statusline .spacer{margin-left:auto}@media (max-width:900px){.workspace{grid-template-rows:auto minmax(0,1fr);grid-template-columns:minmax(0,1fr)}.pane{border-right:0;border-bottom:1px solid var(--line);max-height:42vh}}.sheet-picker{z-index:50;background:#16191d59;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.sheet-picker-box{border:1px solid var(--line-strong);background:var(--surface);flex-direction:column;width:400px;max-width:100%;max-height:100%;display:flex}.sheet-picker-box:focus{outline:0}.sheet-picker-head{border-bottom:1px solid var(--line-soft);padding:11px 14px}.sheet-picker-head h3{text-transform:uppercase;letter-spacing:.05em;color:var(--ink-2);margin:0;font-size:12px;font-weight:600}.sheet-picker-period{border-bottom:1px solid var(--line-soft);background:var(--surface-3);flex-wrap:wrap;align-items:center;gap:6px 9px;padding:9px 14px;display:flex}.sheet-picker-list{overflow:auto}.sheet-row{border-bottom:1px solid var(--line-soft);cursor:pointer;align-items:flex-start;gap:9px;padding:8px 14px;display:flex}.sheet-row:hover{background:var(--surface-3)}.sheet-row input{width:13px;height:13px;accent-color:var(--ink-2);cursor:pointer;flex:none;margin:2px 0 0}.sheet-row-text{gap:1px;display:grid}.sheet-row-name{font-size:12.5px}.sheet-row-note{color:var(--muted);font-size:11.5px}.sheet-row.is-off .sheet-row-name{color:var(--muted-2)}.sheet-picker-foot{border-top:1px solid var(--line);background:var(--surface-3);align-items:center;gap:6px;padding:10px 14px;display:flex}.sheet-picker-count{font-variant-numeric:tabular-nums;white-space:nowrap;margin:0 auto}.record-window{z-index:50;background:#16191d59;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.record-box{border:1px solid var(--line-strong);background:var(--surface);flex-direction:column;width:560px;max-width:100%;max-height:100%;display:flex}.record-box.is-wide{width:1000px}.record-box:focus{outline:0}.record-where{border-bottom:1px solid var(--line-soft);color:var(--muted);margin:0;padding:10px 14px}.record-box .notice{margin:14px}.record-box table.ledger{min-width:860px}.record-box .record-list{overflow:auto}.record-box table.ledger tfoot td{border-top:1px solid var(--line-strong);background:var(--surface-2);font-weight:600;position:sticky;bottom:0}.record-head{border-bottom:1px solid var(--line-soft);flex-wrap:wrap;align-items:baseline;gap:4px 10px;padding:11px 14px;display:flex}.record-head h3{text-transform:uppercase;letter-spacing:.05em;color:var(--ink-2);align-items:center;gap:7px;margin:0;font-size:12px;font-weight:600;display:flex}.record-head h3 .btn-icon{color:var(--nav)}.record-head .hint{color:var(--muted);margin-left:auto;font-size:11.5px}.record-tools{border-bottom:1px solid var(--line-soft);background:var(--surface-3);align-items:center;gap:6px 12px;padding:9px 14px;display:flex}.record-search{flex:1;min-width:150px}.record-blank,.record-compare{color:var(--muted);white-space:nowrap;cursor:pointer;align-items:center;gap:6px;font-size:11.5px;display:flex}.record-blank.is-off{color:var(--muted-2);cursor:default}.record-list{overflow:auto}.record-table{border-collapse:collapse;width:100%}.record-table td{border-bottom:1px solid var(--line-soft);text-align:left;vertical-align:top;padding:6px 14px}.record-table td:last-child{overflow-wrap:anywhere}.record-field{width:210px}@media (max-width:560px){.record-field{width:40%}}.record-label{display:block}.record-name{letter-spacing:.02em;color:var(--muted-2);font-size:10.5px;display:block}.record-table .empty{color:var(--muted-2)}.record-side{grid-template-columns:72px 1fr;align-items:baseline;gap:8px;display:grid}.record-side-label{letter-spacing:.02em;font-size:10.5px}.record-side-label.is-nav{color:var(--nav)}.record-side-label.is-sf{color:var(--sf)}.record-table tr.is-diff td{background:var(--warn-fill)}.record-table tr.is-diff .record-label:after{content:" ≠";color:var(--warn);font-weight:600}.record-nothing{color:var(--muted);margin:0;padding:14px}.record-foot{border-top:1px solid var(--line);background:var(--surface-3);align-items:center;gap:10px;padding:10px 14px;display:flex}.record-foot .chip{margin-left:auto}.print-head{display:none}@media print{body{color:#000;-webkit-print-color-adjust:exact;print-color-adjust:exact;background:#fff;font-size:9.5pt;line-height:1.4}@page{size:A4 portrait;margin:14mm 13mm 16mm}.shell,.detail,.board,.table-wrap{background:#fff;height:auto;max-height:none;overflow:visible}.workspace{display:block}.topbar,.pane,.statusline,.filter-row,.candidate-actions,.confirm-write,.period-bar,.detail-head,.detail button,.detail a.chip{display:none!important}.print-head{margin-bottom:7mm;display:block}.print-brand{border-bottom:1.2pt solid var(--brand);align-items:flex-end;gap:5mm;padding-bottom:2mm;display:flex}.print-logo{object-fit:contain;width:auto;height:13mm}.print-kind{gap:.5mm;display:grid}.print-kind strong{letter-spacing:.01em;font-size:12pt;font-weight:600}.print-kind span,.print-stamp{color:var(--muted);font-size:8pt}.print-stamp{white-space:nowrap;margin-left:auto}.print-name{margin:4mm 0 0;font-size:15pt;font-weight:600;line-height:1.15}.print-address{color:var(--ink-2);margin:1mm 0 0;font-size:9.5pt}.print-state{color:var(--alert);margin:1.5mm 0 0;font-size:9pt}.print-meta{border-top:.4pt solid var(--line-strong);grid-template-columns:repeat(4,1fr);gap:0 5mm;margin:4mm 0 0;padding-top:2mm;display:grid}.print-meta dt{letter-spacing:.06em;text-transform:uppercase;color:var(--muted);font-size:7pt}.print-meta dd{margin:0;font-size:9.5pt}.print-source{color:var(--muted);margin:3mm 0 0;font-size:8pt}.print-off,.sheet-picker,.record-window{display:none!important}.section.is-folded>.section-fold{display:block}.section.is-folded>h3{border-bottom:.8pt solid var(--ink)}.section>h3 .fold{display:none}.section{break-inside:auto;background:0 0;border:0;margin:0 0 6mm;padding:0}.section>h3{border-bottom:.8pt solid var(--ink);letter-spacing:.08em;color:var(--ink);break-after:avoid;border-top:0;padding:0 0 1mm;font-size:8pt}.section>h3 .hint{color:var(--muted);font-size:7.5pt}.section-body{padding:2mm 0 0}.tiles{border:0;grid-template-columns:repeat(3,1fr);gap:3mm 6mm;margin-top:2mm;display:grid}.tile{border:0;padding:0}.tile .label{letter-spacing:.06em;font-size:7pt}.tile .value{font-size:13pt;line-height:1.2}.tile .note{font-size:8pt}table.ledger,table.plain,table.proposals,.compare{width:100%;font-size:8.5pt}table.ledger thead th,table.plain thead th,.compare thead th{border-bottom:.6pt solid var(--ink);color:var(--ink);letter-spacing:.06em;background:0 0;padding:0 2mm 1mm 0;font-size:7pt}table.ledger td,table.plain td,.compare td{border-bottom:.3pt solid var(--line-strong);padding:1.1mm 2mm 1.1mm 0}table.ledger th:last-child,table.ledger td:last-child,table.plain th:last-child,table.plain td:last-child{padding-right:0}table.ledger{table-layout:fixed}table.ledger th:first-child,table.ledger td:first-child{width:11%}table.ledger th:nth-child(2),table.ledger td:nth-child(2){width:13%}table.ledger th:nth-child(3),table.ledger td:nth-child(3),table.ledger th:nth-child(4),table.ledger td:nth-child(4){width:9%}table.ledger th:nth-child(5),table.ledger td:nth-child(5){width:21%}table.ledger th:nth-child(6),table.ledger td:nth-child(6),table.ledger th:nth-child(7),table.ledger td:nth-child(7){width:10%}table.ledger th:nth-child(8),table.ledger td:nth-child(8){width:9%}table.ledger th:nth-child(9),table.ledger td:nth-child(9){width:8%}table.ledger td:first-child,table.ledger td:nth-child(2),table.ledger td.project,table.ledger td.mini{text-overflow:clip;white-space:normal;overflow-wrap:break-word;max-width:none;overflow:visible}table.ledger tr.is-open td{background:0 0}table.ledger tr.is-open td:nth-last-child(2){font-weight:600}.type,.type.is-invoice,.type.is-payment,.type.is-credit{color:var(--ink);text-transform:none;letter-spacing:0;background:0 0;border:0;padding:0;font-size:8.5pt}.type.is-invoice,.type.is-credit{font-weight:600}.badge{background:0 0;border:0;padding:0;font-weight:600}.notice{border:0;border-left:1.5pt solid var(--line-strong);background:0 0;margin:0 0 4mm;padding:0 0 0 3mm;font-size:8.5pt}.notice.is-alert,.notice.is-error{border-left-color:var(--alert)}.notice.is-warn{border-left-color:var(--warn)}.bar-row .bar,.amendment-bar{border-color:var(--line-strong);height:2.5mm}.contract-site tr.has-amendments>td{border-bottom:0;padding-bottom:0}.contract-amendment-row>td{border-bottom:.3pt solid var(--line-strong);padding:0 0 1.5mm}.year-chart{--year-plot:32mm}.year-plot{border-bottom-color:var(--line-strong)}.detail,.year-line,.year-point{animation:none}.year-scale{font-size:7pt}.year-mark .amount{font-size:8pt}.tiles,.tile,.bar-row,.year-chart,.amendment-head,.compare tr,table.plain tr,table.ledger tr,.print-head{break-inside:avoid}thead{display:table-header-group}}.access{max-width:1100px;padding:16px 12px 40px}.access-head h2{margin:0 0 4px;font-size:18px}.access-head p{max-width:70ch;margin:0 0 16px}.access-add{border:1px solid var(--line);background:var(--surface-3);flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:18px;padding:12px 14px;display:flex}.access-add label{color:var(--ink-2)}.access-add input{border:1px solid var(--line-strong);background:var(--surface);min-width:0;color:var(--ink);font:inherit;flex:22rem;padding:6px 8px}.access-table{border-collapse:collapse;width:100%}.access-table th,.access-table td{border-bottom:1px solid var(--line-soft);text-align:left;vertical-align:top;padding:8px 10px}.access-table th{border-bottom:1px solid var(--line);color:var(--ink-2);font-weight:600}.access-table tr.is-pending{background:var(--warn-fill);box-shadow:inset 3px 0 0 var(--warn-line)}.access-actions{flex-wrap:wrap;gap:6px;display:flex}.access-find{gap:8px;margin:0 0 12px;display:grid}.access-history-toggle{margin-top:5px;display:block}.access-history-row>td{background:var(--surface-3)}.access-history{gap:7px;margin:0;padding:0 0 0 18px;display:grid}.access-history li{grid-template-columns:150px minmax(0,1fr) minmax(0,1fr);gap:4px 12px;font-size:12px;display:grid}.access-history-when{color:var(--muted);font-variant-numeric:tabular-nums}.access-history-step b{font-weight:600}.access-history-reason{color:var(--ink-2);grid-column:1/-1}@media (max-width:760px){.access-history li{grid-template-columns:minmax(0,1fr)}}.access-confirm-row>td{background:var(--alert-fill);box-shadow:inset 3px 0 0 var(--alert-line)}.access-confirm{gap:6px;max-width:640px;display:grid}.access-confirm p{margin:0}.access-confirm label{color:var(--ink-2);font-size:12px}.access-confirm input{border:1px solid var(--line-strong);background:var(--surface);font:inherit;padding:5px 8px}.access-confirm-actions{align-items:center;gap:8px;display:flex}.pending-count{background:var(--warn);color:#fff;font-variant-numeric:tabular-nums;border-radius:9px;justify-content:center;align-items:center;min-width:17px;height:17px;margin-left:6px;padding:0 5px;font-size:11px;font-weight:600;display:inline-flex}.access-state{border:1px solid var(--line);background:var(--surface-2);color:var(--ink-2);white-space:nowrap;padding:1px 8px;display:inline-block}.access-state.is-frei,.access-state.is-schreiber,.access-state.is-verwalter{border-color:var(--ok-line);background:var(--ok-fill);color:var(--ok)}.access-state.is-angefragt{border-color:var(--warn-line);background:var(--warn-fill);color:var(--warn)}.access-state.is-abgelehnt,.access-state.is-entzogen{border-color:var(--alert-line);background:var(--alert-fill);color:var(--alert)}.access-state.is-verwalter{font-weight:600}.access-add select{border:1px solid var(--line-strong);background:var(--surface);color:var(--ink);font:inherit;padding:6px 8px}.tab-icon{flex:none;width:.95em;height:.95em}.tab-icon.is-wide{width:1.35em}.view-tab,.linkish.has-icon{align-items:center;gap:5px;display:inline-flex}.linkish.has-icon{background:0 0;border:0;padding:0}.linkish.has-icon:hover{color:var(--ink)}.access-add button{border:1px solid var(--ink);background:var(--ink);color:#fff;font:inherit;cursor:pointer;padding:6px 14px;font-weight:600}.access-add button:hover:enabled{background:var(--ink-2);border-color:var(--ink-2)}.access-add button:disabled{border-color:var(--line);background:var(--surface-2);color:var(--muted-2);cursor:default}.access-btn{border:1px solid var(--line-strong);background:var(--surface);color:var(--ink-2);font:inherit;cursor:pointer;padding:4px 9px;font-size:11px}.access-btn:hover:enabled{border-color:var(--ink-2);color:var(--ink)}.access-btn.is-frei:hover:enabled,.access-btn.is-schreiber:hover:enabled,.access-btn.is-verwalter:hover:enabled{border-color:var(--ok-line);background:var(--ok-fill);color:var(--ok)}.access-btn.is-abgelehnt,.access-btn.is-entzogen{color:var(--muted)}.access-btn.is-abgelehnt:hover:enabled,.access-btn.is-entzogen:hover:enabled{border-color:var(--alert-line);background:var(--alert-fill);color:var(--alert)}.access-btn:disabled{border-color:var(--line-soft);background:var(--surface-3);color:var(--muted-2);cursor:default}.access-btn:disabled.is-aktuell:before{content:"✓ "}
