.field-worker{--fw-gutter-base: clamp(12px, 3.6vw, 16px);--fw-gutter: var(--fw-gutter-base);--fw-preview-max: 27rem;--fw-row-pad-y: .72rem;--fw-section-gap: 1.15rem;--fw-fs-title: 1.2rem;--fw-fs-doc-title: 1.1rem;--fw-fs-sheet-title: 1.02rem;--fw-fs-section: .68rem;--fw-fs-row: .95rem;--fw-fs-item: .82rem;--fw-fs-meta: .78rem;--fw-fs-status: .68rem;--fw-surface: #ffffff;--fw-text: #0f172a;--fw-text-2: #334155;--fw-muted: #64748b;--fw-faint: #94a3b8;--fw-sep: #e7ecf2;--fw-sep-soft: #eef2f7;--fw-sep-strong: #dbe2ea;--fw-pressed: #f1f5f9;--fw-zebra: #f5f8fc;--fw-major-bg: #f1f5f9;--fw-area-bg: #f8fafc;--fw-accent: #1d4ed8;--fw-accent-pressed: #1e40af;--fw-accent-border: #b9c9ec;--fw-bar-track: #e6ebf1;--fw-bar-fill: #3b82f6;--fw-success: #047857;--fw-success-bg: #edf8f1;--fw-success-bg-strong: #e6f5ec;--fw-success-sep: #d8eee2;--fw-select-bg: #eff6ff;--fw-select-ring: #93c5fd;--fw-pending-edge: #2563eb;--fw-info: #1d4ed8;--fw-info-bg: #f6f9ff;--fw-info-edge: #60a5fa;--fw-attn: #b45309;--fw-attn-bg: #fffaf2;--fw-attn-edge: #f59e0b;--fw-stale: #c2410c;--fw-stale-bg: #fff8f3;--fw-stale-edge: #fb923c;--fw-removed: #9f1239;--fw-danger: #b42318;--fw-demo-bg: #fff8e6;--fw-demo-border: #f1e3b5;--fw-demo-text: #7a6419;--fw-btn-h: 2.9rem;--fw-btn-h-2: 2.75rem;--fw-radius: 8px;--fw-sheet-radius: 14px;--fw-sheet-head-h: 3.25rem;--fw-bar-h: 4px;--fw-z-head: 20;--fw-z-foot: 15;--fw-z-chrome: 25;--fw-z-menu: 30;--fw-z-sheet: 40;width:100%;padding:0 var(--fw-gutter) calc(2rem + env(safe-area-inset-bottom,0px));background:var(--fw-surface);color:var(--fw-text)}.field-worker a:focus-visible,.field-worker button:focus-visible{outline:2px solid var(--fw-accent);outline-offset:2px}@media (min-width: 600px){.field-worker{--fw-gutter-base: 16px;max-width:var(--fw-preview-max);margin:0 auto;min-height:100%;box-shadow:0 0 0 1px var(--fw-sep-strong)}}.fw-demo-strip{margin:0 calc(-1 * var(--fw-gutter));padding:.3rem var(--fw-gutter);background:var(--fw-demo-bg);border-bottom:1px solid var(--fw-demo-border);color:var(--fw-demo-text);font-size:.7rem;font-weight:600;line-height:1.3;letter-spacing:.01em}.fw-page-head{position:sticky;top:0;z-index:var(--fw-z-head);margin:0 calc(-1 * var(--fw-gutter));padding:.7rem var(--fw-gutter) .6rem;background:var(--fw-surface);border-bottom:1px solid var(--fw-sep)}.fw-page-back,.fw-back{position:relative;display:inline-flex;align-items:center;gap:.15rem;color:var(--fw-accent);font-size:.82rem;font-weight:600;line-height:1.4;text-decoration:none}.fw-page-back{margin:0 0 .2rem -.1rem}button.fw-page-back{border:0;background:transparent;padding:0;font:inherit;cursor:pointer}.fw-back{margin-bottom:.2rem}.fw-page-back:before,.fw-back:before{content:"";position:absolute;top:-.55rem;right:-.75rem;bottom:-.4rem;left:-.6rem}.fw-back-chevron{font-size:1.35em;line-height:1;font-weight:500;margin-top:-.12em}.fw-page-overline{margin-bottom:.1rem;font-size:var(--fw-fs-section);font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:var(--fw-attn)}.fw-page-title{margin:0;font-size:var(--fw-fs-title);font-weight:700;line-height:1.25;letter-spacing:-.012em;color:var(--fw-text);overflow-wrap:anywhere}.fw-page-meta{margin:.15rem 0 0;font-size:var(--fw-fs-meta);font-weight:500;color:var(--fw-muted)}.fw-section{margin-top:var(--fw-section-gap)}.fw-section-label{margin:0;padding:0 0 .4rem;font-size:var(--fw-fs-section);font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:var(--fw-muted)}.fw-empty{margin:1rem 0;color:var(--fw-muted);font-size:.88rem}.field-worker-error{margin:.5rem 0;color:var(--fw-danger);font-size:.82rem}.fw-flash{margin:.6rem 0 0;color:var(--fw-success);font-size:.82rem;font-weight:650}.fw-auth-meta{margin:.75rem var(--fw-gutter) 0;color:var(--fw-muted);font-size:var(--fw-fs-meta)}.fw-lead{margin:.75rem 0 .6rem;color:var(--fw-text-2);font-size:.86rem;line-height:1.4}.fw-hint{margin:-.15rem 0 .1rem;color:var(--fw-muted);font-size:.8rem;line-height:1.35}.fw-chev{flex:0 0 auto;font-size:1.3rem;font-weight:400;line-height:1;color:var(--fw-faint)}.fw-list{list-style:none;margin:0 calc(-1 * var(--fw-gutter));padding:0;border-top:1px solid var(--fw-sep)}.fw-page-head+.fw-list{border-top:0}.fw-list-row,.fw-day-row,.fw-home-row{color:inherit;text-decoration:none;background:var(--fw-surface);border-bottom:1px solid var(--fw-sep);-webkit-tap-highlight-color:transparent}.fw-list-row:active,.fw-day-row:active,.fw-home-row:active{background:var(--fw-pressed)}.field-worker .fw-list-row:focus-visible,.field-worker .fw-day-row:focus-visible,.field-worker .fw-home-row:focus-visible{outline-offset:-2px}.fw-list-row{display:block;padding:var(--fw-row-pad-y) var(--fw-gutter)}.fw-list-row.is-review_required{background:var(--fw-attn-bg);box-shadow:inset 3px 0 0 var(--fw-attn-edge)}.fw-list-row.is-stale_draft{background:var(--fw-stale-bg);box-shadow:inset 3px 0 0 var(--fw-stale-edge)}.fw-list-row.is-scope_updated{background:var(--fw-info-bg);box-shadow:inset 3px 0 0 var(--fw-info-edge)}.fw-list-row-title{font-size:var(--fw-fs-row);font-weight:650;line-height:1.3;letter-spacing:-.005em;overflow-wrap:anywhere}.fw-list-row-meta{display:flex;align-items:baseline;justify-content:space-between;gap:.75rem;margin-top:.12rem;font-size:var(--fw-fs-meta);font-weight:500;color:var(--fw-muted)}.fw-list-row-sub{min-width:0;overflow-wrap:anywhere}.fw-phase-tag{flex:0 0 auto;font-size:var(--fw-fs-status);font-weight:700;letter-spacing:.06em;color:var(--fw-text-2)}.fw-attn{margin-top:.22rem;font-size:var(--fw-fs-status);font-weight:700;letter-spacing:.04em;line-height:1.3;text-transform:uppercase}.fw-attn.is-review_required{color:var(--fw-attn)}.fw-attn.is-scope_updated{color:var(--fw-info)}.fw-attn.is-stale_draft,.fw-attn.is-pending{font-size:.74rem;font-weight:650;letter-spacing:.005em;text-transform:none}.fw-attn.is-stale_draft{color:var(--fw-stale)}.fw-attn.is-pending{color:var(--fw-text-2)}.fw-progress{display:flex;align-items:center;gap:.55rem;margin-top:.42rem}.fw-bar{flex:1 1 auto;height:var(--fw-bar-h);background:var(--fw-bar-track);border-radius:999px;overflow:hidden}.fw-bar>span{display:block;height:100%;background:var(--fw-bar-fill);border-radius:inherit}.fw-bar>span.is-complete{background:var(--fw-success)}.fw-bar-label{flex:0 0 auto;min-width:2.6rem;font-style:normal;font-size:.72rem;font-weight:650;line-height:1;text-align:right;font-variant-numeric:tabular-nums;color:var(--fw-text-2)}.fw-bar-label.is-complete{color:var(--fw-success)}.fw-day-row{display:flex;align-items:center;justify-content:space-between;gap:.75rem;min-height:3.35rem;padding:.55rem var(--fw-gutter)}.fw-day-row.is-attention{background:var(--fw-attn-bg);box-shadow:inset 3px 0 0 var(--fw-attn-edge)}.fw-day-when{display:flex;flex-direction:column;min-width:0}.fw-day-rel{font-size:var(--fw-fs-section);font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:var(--fw-muted)}.fw-day-row.is-attention .fw-day-rel{color:var(--fw-attn)}.fw-day-date{font-size:var(--fw-fs-row);font-weight:650;line-height:1.3}.fw-day-status{display:inline-flex;align-items:center;gap:.3rem;flex:0 1 auto;min-width:0;text-align:right;font-size:.84rem;font-weight:650;line-height:1.3}.fw-day-row.is-action .fw-day-status{color:var(--fw-accent)}.fw-day-row.is-success .fw-day-status{color:var(--fw-success)}.fw-day-row.is-attention .fw-day-status{color:var(--fw-attn)}.fw-home-row{display:flex;align-items:center;gap:.75rem;min-height:4rem;padding:.8rem var(--fw-gutter)}.fw-home-row-text{display:flex;flex:1;flex-direction:column;gap:.12rem;min-width:0}.fw-home-row-title{font-size:1.02rem;font-weight:650;line-height:1.3}.fw-home-row.is-primary .fw-home-row-title,.fw-home-row.is-primary .fw-chev{color:var(--fw-accent);font-weight:750}button.fw-home-row{width:100%;border:0;font:inherit;text-align:left;cursor:pointer}.fw-home-row-desc{font-size:var(--fw-fs-meta);line-height:1.35;color:var(--fw-muted)}.fw-btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;display:flex;align-items:center;justify-content:center;width:100%;min-height:var(--fw-btn-h-2);padding:.55rem .9rem;border:1px solid transparent;border-radius:var(--fw-radius);font-size:.9rem;font-weight:650;line-height:1.25;text-align:center;text-decoration:none;cursor:pointer}.fw-btn:disabled,.fw-primary:disabled{opacity:.45;cursor:default}.fw-btn-primary{min-height:var(--fw-btn-h);background:var(--fw-accent);color:#fff;font-weight:700}.fw-btn-primary:active,.fw-primary:active{background:var(--fw-accent-pressed)}.fw-btn-secondary{background:var(--fw-surface);border-color:var(--fw-accent-border);color:var(--fw-accent)}.fw-btn-secondary:active{background:var(--fw-pressed)}.fw-btn-quiet{background:transparent;color:var(--fw-muted);font-weight:600}.fw-actions{display:flex;flex-direction:column;gap:.5rem;padding:.9rem 0 .25rem}.fw-task-row{padding:.7rem var(--fw-gutter);border-bottom:1px solid var(--fw-sep)}.fw-task-row.is-attention{background:var(--fw-attn-bg);box-shadow:inset 3px 0 0 var(--fw-attn-edge)}.fw-task-title{font-size:.92rem;font-weight:650;line-height:1.3;overflow-wrap:anywhere}.fw-task-sub{margin-top:.05rem;font-size:.82rem;color:var(--fw-text-2);overflow-wrap:anywhere}.fw-task-meta{margin-top:.1rem;font-size:.76rem;color:var(--fw-muted)}.fw-task-actions{display:flex;flex-direction:column;gap:.45rem;margin-top:.65rem}.fw-reminder-date{font-size:.95rem;font-weight:650;color:var(--fw-text)}.fw-closeout-total{margin:.55rem 0 0;font-size:.8rem;font-weight:650;color:var(--fw-text-2)}.fw-closeout-question{margin:0;font-size:.95rem;font-weight:650;line-height:1.4}.fw-field-label{display:block;margin-bottom:.35rem;font-size:.82rem;font-weight:650}.fw-textarea{display:block;width:100%;min-height:5rem;padding:.55rem .6rem;border:1px solid var(--fw-sep-strong);border-radius:var(--fw-radius);font:inherit;font-size:.88rem;resize:vertical}.fw-update{margin:.55rem calc(-1 * var(--fw-gutter)) .85rem;background:var(--fw-surface);border-top:1px solid var(--fw-sep);border-bottom:1px solid var(--fw-sep)}.fw-update.is-review-required{border-top-color:var(--fw-attn-edge);box-shadow:inset 3px 0 0 var(--fw-attn-edge)}.fw-update-head{position:sticky;top:0;z-index:3;padding:.7rem var(--fw-gutter) .45rem;background:var(--fw-surface);border-bottom:1px solid var(--fw-sep-soft)}.fw-update-doc{font-size:.78rem;font-weight:700;color:var(--fw-text)}.fw-update-meta{margin-top:.08rem;font-size:.68rem;font-weight:650;color:var(--fw-muted)}.fw-update-title{margin:.45rem 0 .1rem;font-size:1.05rem;font-weight:750;color:var(--fw-text)}.fw-update.is-review-required .fw-update-title{color:#9a3412}.fw-update-version{font-size:.72rem;font-weight:700;color:var(--fw-text-2)}.fw-update-lead{margin:.25rem 0 0;font-size:.78rem;line-height:1.35;color:#475569}.fw-update-summary{margin-top:.35rem;font-size:.68rem;font-weight:700;color:var(--fw-muted)}.fw-update-body{padding:.25rem var(--fw-gutter) .55rem}.fw-update-empty{margin:.45rem 0;font-size:.78rem;color:#475569}.fw-update-major{margin-top:.75rem}.fw-update-area{margin-top:.35rem}.fw-update-item{padding:.38rem 0 .35rem;border-bottom:1px solid var(--fw-sep-soft)}.fw-update-item-desc{display:block;font-size:var(--fw-fs-item);font-weight:650;line-height:1.3;color:var(--fw-text);overflow-wrap:anywhere}.fw-update-detail{margin-top:.18rem}.fw-update-detail-label{font-size:.62rem;font-weight:700;letter-spacing:.03em;text-transform:uppercase;color:var(--fw-muted)}.fw-update-detail-value{margin-top:.05rem;font-size:.72rem;font-weight:650;line-height:1.35;color:var(--fw-text-2);overflow-wrap:anywhere}.fw-update-detail.is-phase .fw-update-detail-label{color:var(--fw-info)}.fw-update-detail.is-phase .fw-update-detail-value{color:#1e3a8a;font-weight:750}.fw-update-detail.is-added .fw-update-detail-label{color:var(--fw-success)}.fw-update-detail.is-removed .fw-update-detail-label,.fw-update-detail.is-removed .fw-update-detail-value{color:var(--fw-removed)}.fw-update-note-toggle,.fw-review-note-toggle{-webkit-appearance:none;-moz-appearance:none;appearance:none;margin:0;padding:.12rem 0 0;border:0;background:transparent;color:var(--fw-accent);font-size:.68rem;font-weight:650;cursor:pointer}.fw-update-foot{position:sticky;bottom:0;z-index:3;display:flex;flex-direction:column;gap:.4rem;padding:.55rem var(--fw-gutter) calc(.65rem + env(safe-area-inset-bottom,0px));background:var(--fw-surface);border-top:1px solid var(--fw-sep-soft)}.fw-update-ack{display:flex;align-items:flex-start;gap:.45rem;font-size:.78rem;font-weight:650;color:var(--fw-text)}.fw-update-ack input{margin-top:.15rem}.fw-update-secondary{-webkit-appearance:none;-moz-appearance:none;appearance:none;min-height:var(--fw-btn-h-2);padding:.55rem .7rem;border:1px solid var(--fw-accent-border);border-radius:var(--fw-radius);background:var(--fw-surface);color:var(--fw-accent);font-size:.84rem;font-weight:650;cursor:pointer}.fw-update-secondary:disabled{opacity:.45;cursor:default}.fw-update-inspect-hint{margin:0;font-size:.68rem;line-height:1.35;color:var(--fw-muted)}.fw-stale{padding:.55rem var(--fw-gutter) .65rem;background:#fffbeb;border-bottom:1px solid var(--fw-sep-soft)}.fw-stale-title{margin:0;font-size:.88rem;font-weight:750;color:#92400e}.fw-stale-lead{margin:.25rem 0 .45rem;font-size:.74rem;line-height:1.35;color:#78350f}.fw-stale-group{margin-top:.45rem}.fw-stale-group-title{margin:0 0 .2rem;font-size:.62rem;font-weight:750;letter-spacing:.04em;text-transform:uppercase;color:#92400e}.fw-stale-item{padding:.35rem 0;border-bottom:1px solid #fde68a}.fw-stale-item-top{display:flex;align-items:flex-start;justify-content:space-between;gap:.45rem}.fw-stale-item-main{flex:1;min-width:0}.fw-stale-item-main strong{display:block;font-size:.8rem;color:var(--fw-text);overflow-wrap:anywhere}.fw-stale-progress{margin-top:.08rem;font-size:.68rem;font-weight:700;color:#475569}.fw-stale-hint{margin-top:.12rem;font-size:.68rem;font-weight:650;color:#9a3412}.fw-stale-item.is-still_valid .fw-stale-hint{color:var(--fw-success)}.fw-stale-remove{-webkit-appearance:none;-moz-appearance:none;appearance:none;flex-shrink:0;max-width:6.5rem;padding:.15rem 0;border:0;background:transparent;color:var(--fw-danger);font-size:.68rem;font-weight:700;text-align:right;cursor:pointer}.fw-stale-actions{display:flex;flex-direction:column;gap:.35rem;margin-top:.55rem}.field-worker-sheet{position:fixed;top:0;right:0;bottom:0;left:0;z-index:var(--fw-z-sheet);display:flex;align-items:flex-end;justify-content:center;background:#0f172a73}.field-worker-sheet-card{width:min(var(--fw-preview-max),100%);max-height:92vh;max-height:92dvh;overflow:auto;overscroll-behavior:contain;padding:.85rem var(--fw-gutter) calc(1.2rem + env(safe-area-inset-bottom,0px));background:var(--fw-surface);border-radius:var(--fw-sheet-radius) var(--fw-sheet-radius) 0 0;box-shadow:0 -8px 30px #0f172a29}.field-worker-sheet-card.is-mark-progress,.field-worker-sheet-card.is-review-progress{display:flex;flex-direction:column;max-height:min(92vh,100%);max-height:min(92dvh,100%);padding:0;overflow:hidden}.fw-mark-head{position:sticky;top:0;z-index:2;flex-shrink:0;display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem;min-height:var(--fw-sheet-head-h);padding:.7rem var(--fw-gutter) .55rem;background:var(--fw-surface);border-bottom:1px solid var(--fw-sep-soft)}.fw-mark-head-text h2{margin:0;font-size:var(--fw-fs-sheet-title);font-weight:750;color:var(--fw-text)}.fw-mark-head-text span{display:block;margin-top:.08rem;font-size:.72rem;font-weight:650;color:var(--fw-muted)}.fw-mark-close{position:relative;flex-shrink:0;-webkit-appearance:none;-moz-appearance:none;appearance:none;padding:.2rem 0;border:0;background:transparent;color:var(--fw-accent);font-size:.8rem;font-weight:650;cursor:pointer}.fw-mark-close:after{content:"";position:absolute;top:-.6rem;right:-.75rem;bottom:-.6rem;left:-.75rem}.field-worker-sheet-card:not(.is-mark-progress):not(.is-review-progress)>.fw-mark-close{display:block;margin:-.2rem 0 .2rem auto}.fw-mark-body{flex:1;overflow:auto;overscroll-behavior:contain;padding:.35rem var(--fw-gutter) .75rem;-webkit-overflow-scrolling:touch}.fw-mark-foot{flex-shrink:0;padding:.55rem var(--fw-gutter) calc(.65rem + env(safe-area-inset-bottom,0px));background:var(--fw-surface);border-top:1px solid var(--fw-sep-soft)}.fw-mark-major{margin:.85rem 0 .2rem;font-size:.7rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:#1e293b}.fw-mark-major:first-child{margin-top:.35rem}.fw-mark-area{margin:.4rem calc(-1 * var(--fw-gutter)) .12rem;padding:0 var(--fw-gutter) 0 calc(var(--fw-gutter) + var(--fw-mark-depth, 0) * .55rem);font-size:.88rem;font-weight:700;line-height:1.25;color:var(--fw-text)}.fw-mark-area.is-section-start{margin-top:.3rem;padding-top:.42rem;border-top:1px solid var(--fw-sep)}.fw-mark-item-wrap{margin:0 calc(-1 * var(--fw-gutter));padding:0 var(--fw-gutter);border-bottom:1px solid var(--fw-sep-soft)}.fw-mark-item-wrap.is-alt{background:var(--fw-zebra)}.fw-mark-item{padding:.45rem 0 .4rem}.fw-mark-row{display:flex;align-items:flex-start;justify-content:space-between;gap:.45rem}.fw-mark-main{flex:1;min-width:0}.fw-mark-desc{display:block;font-size:var(--fw-fs-item);font-weight:650;line-height:1.3;color:var(--fw-text);overflow-wrap:anywhere}.fw-mark-status{margin-top:.12rem;font-size:.62rem;font-weight:700;letter-spacing:.03em;color:var(--fw-muted)}.fw-mark-stepper{display:inline-flex;flex-shrink:0;align-items:center;gap:.15rem;margin-top:.05rem}.fw-mark-stepper button{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:2rem;height:2rem;padding:0;border:1px solid #d6dbe3;border-radius:6px;background:#f8fafc;color:var(--fw-text);font-size:1rem;font-weight:700;line-height:1}.fw-mark-stepper button:disabled{opacity:.4}.fw-mark-stepper input{width:2.6rem;height:2rem;padding:0;border:1px solid #d6dbe3;border-radius:6px;background:var(--fw-surface);color:var(--fw-text);font-size:.85rem;font-weight:700;font-variant-numeric:tabular-nums;text-align:center;-moz-appearance:textfield}.fw-mark-stepper input::-webkit-outer-spin-button,.fw-mark-stepper input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.fw-mark-note-toggle{-webkit-appearance:none;-moz-appearance:none;appearance:none;margin-top:.05rem;padding:.2rem 0 0;border:0;background:transparent;color:var(--fw-accent);font-size:.68rem;font-weight:650}.fw-mark-note-toggle.is-required{color:var(--fw-attn)}.fw-mark-note{display:block;width:100%;min-height:2.6rem;margin-top:.3rem;padding:.4rem .5rem;border:1px solid #d6dbe3;border-radius:6px;font:inherit;font-size:.78rem;resize:vertical}.fw-mark-percent{display:flex;align-items:center;gap:.45rem;margin-top:.25rem}.fw-mark-percent input[type=range]{flex:1;min-width:0}.fw-mark-percent em{min-width:2.4rem;font-style:normal;font-size:.78rem;font-weight:750;font-variant-numeric:tabular-nums;text-align:right;color:var(--fw-text)}.field-worker-quick{display:flex;gap:.35rem;margin:.3rem 0 .65rem}.fw-mark-item .field-worker-quick{margin:.25rem 0 .1rem}.fw-mark-item .field-worker-quick button{-webkit-appearance:none;-moz-appearance:none;appearance:none;padding:.22rem .4rem;border:1px solid #d6dbe3;border-radius:4px;background:var(--fw-surface);color:var(--fw-text-2);font-size:.68rem;font-weight:650}.field-worker-crumb{color:#6b7785;font-size:.72rem}.field-worker-sheet-card:not(.is-mark-progress) .fw-mark-item{margin-top:.35rem}.field-worker-sheet-card:not(.is-mark-progress) .fw-primary{margin-top:.75rem}.fw-mark-complete-msg{padding:.35rem 0}.fw-mark-complete-msg p{margin:.35rem 0 .2rem;font-size:var(--fw-fs-item);font-weight:650;color:var(--fw-text-2)}.fw-review-work-date{position:relative;display:inline-flex;align-items:center;gap:.35rem;margin-top:.2rem;font-size:.72rem;font-weight:650;color:var(--fw-muted)}.fw-review-work-date input[type=date]{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;border:0;opacity:0;cursor:pointer}.fw-review-item{margin:0 calc(-1 * var(--fw-gutter));padding:.38rem var(--fw-gutter) .34rem;border-bottom:1px solid var(--fw-sep-soft)}.fw-review-item.is-alt{background:var(--fw-zebra)}.fw-review-item-top{display:flex;align-items:flex-start;gap:.25rem}.fw-review-item-main{-webkit-appearance:none;-moz-appearance:none;appearance:none;flex:1;min-width:0;margin:0;padding:0;border:0;background:transparent;color:inherit;font:inherit;text-align:left;cursor:pointer}.fw-review-desc{display:block;font-size:var(--fw-fs-item);font-weight:650;line-height:1.3;color:var(--fw-text);overflow-wrap:anywhere}.fw-review-change{margin-top:.12rem;font-size:.68rem;font-weight:700;letter-spacing:.02em;font-variant-numeric:tabular-nums;white-space:pre-wrap;color:#475569}.fw-review-item.is-pending-complete .fw-review-change{color:var(--fw-accent)}.fw-review-note{margin-top:.18rem;font-size:.68rem;font-weight:550;line-height:1.35;color:var(--fw-muted)}.fw-review-note-block{margin-top:.12rem;padding-right:2rem}.fw-review-note-toggle{padding-top:.15rem}.fw-review-noop{display:flex;align-items:center;justify-content:space-between;gap:.5rem;margin-top:.25rem;padding:.28rem .4rem;border-radius:6px;background:#fff7ed;color:#9a3412;font-size:.68rem;font-weight:650}.fw-review-noop-remove{-webkit-appearance:none;-moz-appearance:none;appearance:none;padding:.15rem .2rem;border:0;background:transparent;color:var(--fw-danger);font-size:.68rem;font-weight:700;cursor:pointer}.fw-review-menu-wrap{position:relative;flex-shrink:0}.fw-review-menu-btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:2rem;height:2rem;padding:0;border:0;border-radius:6px;background:transparent;color:var(--fw-muted);font-size:1.1rem;font-weight:700;line-height:1}.fw-review-menu-btn:hover,.fw-review-menu-btn[aria-expanded=true]{background:var(--fw-pressed);color:var(--fw-text)}.fw-review-menu,.fw-menu{position:absolute;top:100%;right:0;padding:.25rem;background:var(--fw-surface);border:1px solid #e2e8f0;box-shadow:0 8px 20px #0f172a1f}.fw-review-menu{z-index:5;min-width:10.5rem;border-radius:8px}.fw-review-menu button{-webkit-appearance:none;-moz-appearance:none;appearance:none;display:block;width:100%;padding:.5rem .55rem;border:0;border-radius:6px;background:transparent;color:var(--fw-text);font-size:.78rem;font-weight:650;text-align:left}.fw-review-menu button:hover{background:#f8fafc}.fw-review-menu button.is-danger{color:var(--fw-danger)}.fw-scope{--fw-gutter: .75rem;padding-bottom:5.75rem}.fw-scope .field-worker-sheet{--fw-gutter: var(--fw-gutter-base)}.fw-sticky-chrome{position:sticky;top:0;z-index:var(--fw-z-chrome);margin:0 calc(-1 * var(--fw-gutter));padding:.55rem var(--fw-gutter) 0;background:var(--fw-surface);border-bottom:1px solid #e2e8f0;box-shadow:0 1px #0f172a0a}.fw-doc-head{padding:.05rem 0 .35rem}.fw-doc-identity{display:flex;align-items:flex-start;justify-content:space-between;gap:.5rem}.fw-doc-title{min-width:0;margin:0;font-size:var(--fw-fs-doc-title);font-weight:700;line-height:1.25;letter-spacing:-.012em;color:var(--fw-text);overflow-wrap:anywhere}.fw-doc-phase-chip{display:none;flex-shrink:0;margin-top:.1rem;padding:.18rem .4rem;border-radius:4px;background:#e8eef6;color:#1e3a5f;font-size:.68rem;font-weight:750;letter-spacing:.02em;white-space:nowrap}.fw-doc-meta{margin-top:.12rem;font-size:.74rem;font-weight:500;color:var(--fw-muted)}.fw-doc-bar .fw-progress{margin-top:.4rem}.fw-doc-toolbar{display:flex;align-items:center;justify-content:space-between;gap:.5rem;margin-top:.4rem}.fw-work-date{position:relative;display:inline-flex;align-items:center;gap:.3rem;font-size:.72rem;color:var(--fw-muted);cursor:pointer}.fw-work-date em{font-style:normal;font-weight:650;color:var(--fw-text)}.fw-work-date-short{display:none}.fw-work-date input[type=date]{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;opacity:0;cursor:pointer}.fw-link-btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;padding:.15rem 0;border:0;background:transparent;color:var(--fw-accent);font-size:.72rem;font-weight:650}.fw-sticky-chrome.is-compact .fw-back{display:none}.fw-sticky-chrome.is-compact .fw-doc-head{padding-bottom:.2rem}.fw-sticky-chrome.is-compact .fw-doc-title{font-size:.92rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.fw-sticky-chrome.is-compact .fw-doc-phase-chip{display:inline-flex}.fw-sticky-chrome.is-compact .fw-doc-meta,.fw-sticky-chrome.is-compact .fw-doc-bar,.fw-sticky-chrome.is-compact .fw-work-date-label,.fw-sticky-chrome.is-compact .fw-work-date-full,.fw-sticky-chrome.is-compact .fw-link-btn{display:none}.fw-sticky-chrome.is-compact .fw-work-date-short{display:inline}.fw-sticky-chrome.is-compact .fw-doc-toolbar{margin-top:.15rem}.fw-proposal{margin:.15rem calc(-1 * var(--fw-gutter)) 0}.fw-proposal-cols{display:grid;grid-template-columns:minmax(0,1fr) 2.4rem 3.6rem;gap:.25rem;padding:.28rem 1.75rem .28rem 3.55rem;background:var(--fw-surface);border-top:1px solid #f1f5f9;color:var(--fw-faint);font-size:.58rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase}.fw-col-qty,.fw-col-done{text-align:right;font-variant-numeric:tabular-nums}.fw-row{display:grid;grid-template-columns:1.55rem 1.55rem minmax(0,1fr) 1.55rem;gap:.1rem;align-items:center;min-height:2.55rem;padding:.22rem calc(var(--fw-gutter) + .15rem) .22rem calc(var(--fw-gutter) + .1rem + var(--fw-depth, 0) * .7rem);border-bottom:1px solid var(--fw-sep-soft);background:transparent}.fw-row.is-major{margin-top:.35rem;min-height:2.4rem;background:var(--fw-major-bg);border-bottom-color:#e2e8f0}.fw-row.is-area{background:var(--fw-area-bg)}.fw-row.is-item{padding-left:calc(var(--fw-gutter) + .55rem + var(--fw-depth, 0) * .7rem)}.fw-row.is-item.is-alt:not(.is-selected):not(.is-complete){background:var(--fw-zebra)}.fw-row.is-selected{background:var(--fw-select-bg);box-shadow:inset 0 0 0 1.5px var(--fw-select-ring)}.fw-row.is-pending{box-shadow:inset 2px 0 0 var(--fw-pending-edge)}.fw-row.is-pending.is-selected{box-shadow:inset 2px 0 0 var(--fw-pending-edge),inset 0 0 0 1.5px var(--fw-select-ring)}.fw-row.is-complete{background:var(--fw-success-bg);border-bottom-color:var(--fw-success-sep)}.fw-row.is-complete.is-major,.fw-row.is-complete.is-area,.fw-row.is-complete.is-selected{background:var(--fw-success-bg-strong)}.fw-row.is-complete.is-selected{box-shadow:inset 0 0 0 2px var(--fw-pending-edge)}.fw-row.is-complete.is-pending{box-shadow:inset 2px 0 0 var(--fw-pending-edge)}.fw-row.is-complete.is-pending.is-selected{box-shadow:inset 2px 0 0 var(--fw-pending-edge),inset 0 0 0 2px var(--fw-pending-edge)}.fw-row.is-complete .fw-item-desc strong,.fw-row.is-complete .fw-header-main strong{color:var(--fw-text)}.fw-row.is-complete .fw-col-done,.fw-row.is-complete .fw-complete-mark,.fw-row.is-complete .fw-header-cap{color:var(--fw-success);font-weight:700}.fw-row.is-note{min-height:2rem;background:transparent}.fw-chevron,.fw-overflow{-webkit-appearance:none;-moz-appearance:none;appearance:none;display:inline-flex;align-items:center;justify-content:center;width:1.55rem;height:1.55rem;padding:0;border:0;background:transparent;color:var(--fw-muted);font-size:.85rem;line-height:1}.fw-chevron:disabled{opacity:.35}.fw-chevron-spacer,.fw-check-spacer,.fw-overflow-spacer{width:1.55rem;height:1.55rem}.fw-check{width:1.15rem;height:1.15rem;margin:0 auto;accent-color:#2563eb}.fw-header-main,.fw-item-main{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:100%;min-width:0;padding:.15rem;border:0;background:transparent;color:inherit;text-align:left}.fw-header-main{display:flex;flex-wrap:wrap;align-items:baseline;gap:.35rem}.fw-header-main strong{font-size:.8rem;font-weight:700;color:var(--fw-text)}.fw-row.is-major .fw-header-main strong{font-size:.72rem;letter-spacing:.05em;text-transform:uppercase}.fw-header-cap{margin-left:auto;font-size:.68rem;font-weight:650;font-variant-numeric:tabular-nums;color:var(--fw-muted)}.fw-complete-mark{color:var(--fw-success);font-size:.72rem}.fw-item-main{display:grid;grid-template-columns:minmax(0,1fr) 2.4rem 3.6rem;gap:.25rem;align-items:start}.fw-item-desc{display:flex;flex-direction:column;gap:.05rem;min-width:0}.fw-item-desc strong{font-size:.8rem;font-weight:600;line-height:1.25;color:var(--fw-text);overflow-wrap:anywhere}.fw-mode{font-size:.58rem;font-weight:700;letter-spacing:.04em;color:var(--fw-faint)}.fw-pending-tag{display:inline-block;width:fit-content;margin-top:.05rem;padding:.04rem .28rem;border-radius:3px;background:#dbeafe;color:var(--fw-accent);font-size:.55rem;font-weight:700;letter-spacing:.04em}.fw-item-main .fw-col-qty,.fw-item-main .fw-col-done{padding-top:.1rem;font-size:.72rem;font-weight:650;color:var(--fw-text-2)}.fw-note-text{grid-column:3 / 4;font-size:.75rem;color:var(--fw-muted)}.fw-menu-wrap{position:relative}.fw-menu{z-index:var(--fw-z-menu);min-width:11rem;border-radius:6px}.fw-menu button{-webkit-appearance:none;-moz-appearance:none;appearance:none;display:block;width:100%;padding:.45rem .55rem;border:0;border-radius:4px;background:transparent;color:var(--fw-text);font-size:.75rem;font-weight:600;text-align:left}.fw-menu button:hover{background:var(--fw-pressed)}.fw-sticky-actions{position:sticky;bottom:0;z-index:var(--fw-z-foot);margin:0 calc(-1 * var(--fw-gutter));padding:.55rem var(--fw-gutter) calc(.55rem + env(safe-area-inset-bottom,0px));background:linear-gradient(rgba(255,255,255,0),var(--fw-surface) 28%)}.fw-primary{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:100%;min-height:var(--fw-btn-h);padding:.85rem 1rem;border:0;border-radius:var(--fw-radius);background:var(--fw-accent);color:#fff;font-size:.92rem;font-weight:700}.fw-writeup{overflow-x:hidden;max-width:100%;padding-bottom:calc(5.5rem + env(safe-area-inset-bottom,0px))}.fw-wu-new{padding:.2rem var(--fw-gutter) .4rem}.fw-wu-prompt,.fw-wu-lines-label{margin:.4rem var(--fw-gutter) .5rem;font-size:var(--fw-fs-section);font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--fw-muted)}.fw-wu-form,.fw-wu-review-note,.fw-wu-confirm{display:flex;flex-direction:column;gap:.45rem;padding:0 0 .8rem}.fw-wu-label{font-size:var(--fw-fs-meta);font-weight:650;color:var(--fw-text-2)}.fw-wu-label.is-optional{color:var(--fw-muted);font-weight:600}.fw-wu-input,.fw-wu-textarea,.fw-wu-qty{width:100%;max-width:100%;box-sizing:border-box;border:1px solid var(--fw-sep-strong);border-radius:.7rem;background:var(--fw-surface);color:var(--fw-text);font:inherit;font-size:1rem;padding:.7rem .75rem}.fw-wu-qty{font-variant-numeric:tabular-nums;text-align:center;font-size:1.05rem}.fw-wu-textarea{resize:vertical;min-height:4.5rem;line-height:1.35;text-align:left}.fw-wu-composer-desc{min-height:2.7rem;max-height:4.8rem;resize:none;overflow:auto;padding:.45rem .65rem;line-height:1.35}.fw-wu-note-input{min-height:2.5rem;max-height:4.2rem;resize:none}.fw-wu-compact{margin:.15rem 0 .35rem}.fw-wu-note-row,.fw-wu-add{display:flex;justify-content:space-between;align-items:center;width:100%;margin:.15rem 0;min-height:2.6rem;padding:0;border:0;background:transparent;color:var(--fw-text);font-weight:650;text-align:left}.fw-wu-note-row span:last-child,.fw-wu-add,.fw-wu-note-edit,.fw-wu-discard{color:var(--fw-accent)}.fw-wu-note-preview{margin:0 0 .2rem;color:var(--fw-text-2);font-size:var(--fw-fs-meta);line-height:1.35;white-space:pre-wrap;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.fw-wu-note-edit,.fw-wu-discard{margin:0 0 .35rem}.fw-wu-browse{margin:.35rem 0}.fw-wu-retry{border:0;background:transparent;padding:0;color:var(--fw-danger);font:inherit;font-weight:700;cursor:pointer}.fw-wu-lines{list-style:none;margin:0 calc(-1 * var(--fw-gutter));padding:0}.fw-wu-line{position:relative;display:flex;align-items:flex-start;gap:.2rem;border-top:1px solid var(--fw-sep);padding:.65rem var(--fw-gutter) .7rem}.fw-wu-line:nth-child(2n){background:var(--fw-zebra)}.fw-wu-line-main{display:flex;flex:1;gap:.7rem;min-width:0;border:0;background:transparent;text-align:left;padding:0;color:inherit}.fw-wu-line-main.is-static{display:flex}.fw-wu-line-no{font-weight:700;color:var(--fw-muted);min-width:1.2rem}.fw-wu-line-copy{display:flex;flex:1;flex-direction:column;gap:.2rem;min-width:0;overflow-wrap:anywhere}.fw-wu-line-desc{font-size:var(--fw-fs-row);font-weight:650;line-height:1.35}.fw-wu-line-foot{display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem}.fw-wu-line-price{display:flex;flex:0 0 auto;flex-direction:column;align-items:flex-end;font-size:var(--fw-fs-meta);font-weight:650;font-variant-numeric:tabular-nums;color:var(--fw-text-2)}.fw-wu-overflow{position:relative;flex:0 0 auto}.fw-wu-more{min-width:2.4rem;min-height:2.4rem;border:0;background:transparent;color:var(--fw-muted);font-size:1.1rem;font-weight:700;letter-spacing:.04em}.fw-wu-menu{position:absolute;top:2.1rem;right:0;background:var(--fw-surface);border:1px solid var(--fw-sep-strong);box-shadow:0 8px 20px #0f172a1f}.fw-wu-line-meta,.fw-wu-save,.fw-wu-status,.fw-wu-subtotal,.fw-wu-suggestion-meta{color:var(--fw-muted);font-size:var(--fw-fs-meta)}.fw-wu-line-actions{display:flex;gap:.8rem;margin-top:.35rem}.fw-wu-line-actions button{border:0;background:transparent;color:var(--fw-muted);font-weight:650;min-height:2.4rem;padding:0}.fw-wu-stepper{display:grid;grid-template-columns:3rem minmax(0,1fr) 3rem;gap:.45rem;align-items:center}.fw-wu-stepper.is-compact{display:inline-flex;width:auto;gap:.25rem;align-items:center}.fw-wu-stepper.is-compact .fw-wu-step{width:2.25rem;min-width:2.25rem;min-height:2.25rem;padding:0;font-size:1.15rem}.fw-wu-stepper.is-compact .fw-wu-qty{width:2.8rem;min-height:2.25rem;padding:.2rem .15rem;border-radius:.55rem}.fw-wu-step{min-height:3rem;border-radius:.7rem;border:1px solid var(--fw-sep-strong);background:var(--fw-area-bg);font-size:1.3rem}.fw-wu-suggestions{display:flex;flex-direction:column;max-height:8.75rem;overflow:hidden;margin:.45rem 0 .35rem;border:1px solid var(--fw-sep);border-radius:var(--fw-radius);background:var(--fw-area-bg)}.fw-wu-suggestions[hidden]{display:none}.fw-wu-suggest-head{display:flex;align-items:center;justify-content:space-between;gap:.5rem;flex:0 0 auto;padding:.28rem .65rem;color:var(--fw-muted);font-size:var(--fw-fs-section);font-weight:650;letter-spacing:.06em;text-transform:uppercase}.fw-wu-suggest-scroll{flex:1 1 auto;overflow:auto;min-height:0;max-height:8.5rem}.fw-wu-suggestion{display:flex;flex-direction:column;align-items:stretch;gap:.12rem;width:100%;text-align:left;border:0;border-top:1px solid var(--fw-sep);background:transparent;padding:.55rem .65rem;color:inherit}.fw-wu-suggest-desc{font-weight:650;line-height:1.3;overflow-wrap:anywhere}.fw-wu-suggest-meta{display:flex;justify-content:space-between;gap:.6rem;font-size:var(--fw-fs-meta)}.fw-wu-suggest-source{color:var(--fw-muted)}.fw-wu-suggest-price{flex:0 0 auto;color:var(--fw-text-2);font-weight:650;font-variant-numeric:tabular-nums}.fw-wu-suggest-hint,.fw-wu-line-total,.fw-wu-added{margin:.25rem 0 0;color:var(--fw-muted);font-size:var(--fw-fs-meta)}.fw-wu-added{color:var(--fw-success);font-weight:700}.fw-wu-price{display:flex;align-items:center;gap:.4rem}.fw-wu-price span{font-weight:700;color:var(--fw-text-2)}.fw-wu-note-compact{margin:.45rem 0}.fw-wu-note-head{display:flex;justify-content:space-between;align-items:center;font-weight:650}.fw-wu-row-edit{flex:0 0 auto;align-self:center;color:var(--fw-accent);font-size:var(--fw-fs-meta);font-weight:700;text-decoration:none}.fw-wu-status.is-submitted{margin:.45rem 0 .2rem;color:var(--fw-success);font-weight:700}.fw-wu-sticky .fw-primary:disabled{background:#e8eef6;color:#94a3b8;opacity:1}.fw-wu-sticky{position:sticky;bottom:0;z-index:5;display:flex;flex-direction:column;gap:.45rem;margin-top:.8rem;padding:.55rem var(--fw-gutter) calc(.7rem + env(safe-area-inset-bottom,0px));background:linear-gradient(rgba(255,255,255,0),var(--fw-surface) 28%)}.fw-wu-sticky .fw-btn-secondary{text-align:center;text-decoration:none}.field-worker-sheet.is-writeup-composer{z-index:41;background:#0f172a9e}.field-worker-sheet-card.is-writeup-line{display:flex;flex-direction:column;width:min(100%,30rem);height:calc(100dvh - .35rem);max-height:calc(100dvh - .35rem);padding:0;overflow:hidden}.fw-wu-sheet-body{flex:1 1 auto;overflow:auto;min-height:0;padding:.2rem var(--fw-gutter) .55rem}.fw-wu-sheet-foot{display:flex;flex-direction:row;align-items:stretch;gap:.5rem;flex:0 0 auto;margin-top:auto;position:sticky;bottom:0;padding:.5rem var(--fw-gutter) calc(.55rem + env(safe-area-inset-bottom,0px));background:var(--fw-surface);border-top:1px solid var(--fw-sep)}.fw-wu-sheet-foot .fw-btn,.fw-wu-sheet-foot .fw-primary{box-sizing:border-box;flex:1 1 0;width:auto;height:2.75rem;min-height:2.75rem;max-height:2.75rem;padding:0 .4rem;font-size:.9rem;line-height:1.1}.field-worker-sheet-card.is-writeup-line .fw-wu-sheet-foot .fw-primary{margin-top:0}.fw-wu-sheet-foot .fw-primary.is-next{flex:1.15 1 0}.is-writeup-line[data-keyboard=open] .fw-wu-sheet-foot{padding-bottom:.45rem}.fw-wu-note-toggle{margin:.4rem 0}.field-worker-sheet-card.is-writeup-line .fw-mark-head h2{margin:0;font-size:var(--fw-fs-sheet-title);font-weight:700}.fw-writeup .fw-page-head{padding-top:.5rem;padding-bottom:.4rem}.fw-writeup .fw-page-title{font-size:1.12rem;font-weight:700}.fw-writeup .fw-page-overline,.fw-writeup .fw-section-label{font-weight:650}.fw-wu-identity{display:flex;align-items:baseline;justify-content:space-between;gap:.75rem}.fw-wu-save-cue{flex:0 0 auto;min-height:1em;font-weight:500}.fw-wu-zone{margin-top:.8rem}.fw-wu-zone .fw-section-label{padding-bottom:.2rem}.fw-wu-section-head{display:flex;align-items:baseline;justify-content:space-between;gap:.75rem;margin-bottom:.15rem;border-bottom:1px solid var(--fw-sep-soft)}.fw-wu-section-head .fw-section-label{padding-bottom:.28rem}.fw-wu-section-count{color:var(--fw-muted);font-size:var(--fw-fs-meta);font-weight:500}.fw-wu-note-line,.fw-wu-context{display:flex;align-items:center;justify-content:space-between;gap:.75rem;min-height:1.7rem}.fw-wu-context{display:block;margin-bottom:.15rem}.fw-wu-note-title{font-weight:600;color:var(--fw-text)}.fw-wu-note-hint{margin:0;color:var(--fw-muted);font-size:var(--fw-fs-meta);font-weight:400}.fw-wu-zone .fw-wu-textarea{min-height:3.2rem;margin-top:.3rem}.fw-writeup .fw-wu-line-desc{font-weight:600}.fw-writeup .fw-wu-line-meta{font-weight:400}.fw-wu-empty{margin:.35rem 0 .15rem;padding:.75rem .8rem .55rem;border:1px solid var(--fw-sep);border-radius:.7rem;background:var(--fw-area-bg)}.fw-wu-empty-title{margin:0;color:var(--fw-text);font-weight:600}.fw-wu-empty p{margin:.15rem 0 .35rem;color:var(--fw-muted);font-size:.88rem;font-weight:400}.fw-wu-empty .fw-wu-add,.fw-wu-add.is-inline{justify-content:flex-start;width:auto;min-height:2.15rem;margin:0;font-size:.92rem;font-weight:600}.fw-wu-draft-options{margin-top:1.15rem}.fw-wu-draft-options .fw-wu-discard{color:var(--fw-danger);font-size:.82rem;font-weight:600;min-height:2rem}.fw-wu-confirm-actions{display:flex;gap:1rem}.fw-wu-confirm-actions button{border:0;background:transparent;padding:0;min-height:2rem;color:var(--fw-muted);font-weight:600}.fw-wu-confirm-actions .is-danger{color:var(--fw-danger)}.fw-wu-measure{display:flex;flex-wrap:wrap;align-items:center;gap:.4rem .75rem;margin-top:.45rem}.fw-wu-qty-line{display:flex;align-items:center;gap:.4rem;flex:1 1 12.5rem;min-width:0}.fw-wu-qty-label{color:var(--fw-text-2);font-size:var(--fw-fs-meta);font-weight:600}.is-writeup-line .fw-wu-label{font-weight:600}.fw-wu-note-toggle{margin:0 0 0 auto;min-height:2.25rem;padding:0 .1rem;font-size:.84rem;font-weight:600;white-space:nowrap}.fw-wu-price-line{display:flex;align-items:center;gap:.4rem;flex:1 1 10.5rem;min-width:0;color:var(--fw-text-2);font-size:var(--fw-fs-meta);font-weight:600}.fw-wu-price-line .fw-wu-input{width:6.2rem;min-height:2.25rem;padding:.3rem .45rem}.fw-wu-note-editor{margin-top:.35rem}.fw-wu-suggest-bar{display:flex;align-items:center;justify-content:space-between;gap:.5rem;margin-top:.45rem;padding:.2rem .65rem;border:1px solid var(--fw-sep);border-radius:var(--fw-radius);background:var(--fw-area-bg);color:var(--fw-muted);font-size:var(--fw-fs-section);font-weight:650;letter-spacing:.06em;text-transform:uppercase}.fw-wu-suggest-head .fw-wu-browse,.fw-wu-suggest-bar .fw-wu-browse,.fw-wu-suggest-disclosure .fw-wu-browse{margin:0;min-height:1.75rem;font-size:.8rem;font-weight:600;letter-spacing:0;text-transform:none;white-space:nowrap}.fw-wu-suggest-disclosure{margin:.3rem 0 .15rem;border:1px solid var(--fw-sep);border-radius:var(--fw-radius);background:var(--fw-area-bg);overflow:hidden;min-width:0}.fw-wu-suggest-kicker{margin:0;padding:.22rem .65rem 0;color:var(--fw-muted);font-size:var(--fw-fs-section);font-weight:650;letter-spacing:.06em;text-transform:uppercase}.fw-wu-suggest-row{display:flex;align-items:center;gap:.35rem;min-height:1.7rem;padding:0 .4rem .18rem .65rem;min-width:0}.fw-wu-suggest-toggle{display:flex;align-items:center;justify-content:space-between;gap:.35rem;flex:1 1 auto;min-width:0;min-height:1.7rem;padding:0;border:0;background:transparent;color:inherit;font:inherit;text-align:left}.fw-wu-suggest-disclosure .fw-wu-suggest-status{margin:0;flex:1 1 auto;min-width:0;color:var(--fw-text-2);font-size:.84rem;font-weight:650;letter-spacing:0;line-height:1.25;text-transform:none;overflow-wrap:anywhere}.fw-wu-suggest-chev{flex:0 0 auto;color:var(--fw-muted);font-size:.85rem}.fw-wu-suggest-disclosure .fw-wu-browse{flex:0 0 auto;margin-left:auto}.fw-wu-suggest-disclosure .fw-wu-suggestion{padding:.32rem .65rem;gap:.04rem}.app-layout{display:flex;min-height:100vh;height:100vh;overflow:hidden}.app-main{flex:1;display:flex;flex-direction:column;min-width:0;min-height:0}.app-content{flex:1;display:flex;flex-direction:column;min-height:0;padding:var(--space-5) var(--space-6) var(--space-6);overflow:auto}.app-content:has(.expense-review-page),.app-content:has(.daily-view){overflow:hidden}.app-layout.is-field-worker{height:100vh;height:100dvh}.app-layout.is-field-worker .app-main{width:100%}.app-layout.is-field-worker .app-content{display:block;padding:0;background:#fff;overscroll-behavior-y:contain}@media (min-width: 600px){.app-layout.is-field-worker .app-content{background:#eef2f6}}.page-header{margin-bottom:var(--space-5)}.page-header h1{font-size:1.75rem;font-weight:700;color:var(--color-text)}.page-header p{margin-top:var(--page-header-gap);color:var(--color-text-muted);font-size:.9375rem;line-height:1.4}.page-toolbar{display:flex;flex-wrap:wrap;gap:var(--space-3);align-items:center;justify-content:space-between;margin-bottom:var(--space-3)}.search-input{min-width:220px}@media (max-width: 768px){.app-layout{flex-direction:column}.app-content{padding:var(--space-4)}.page-toolbar{flex-direction:column;align-items:stretch}.search-input{width:100%}}:root{--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 24px;--space-6: 32px;--space-7: 48px;--control-height: 32px;--control-padding-y: 6px;--control-padding-x: 10px;--control-radius: 6px;--control-font-size: .875rem;--control-line-height: 1.25;--control-border: 1px solid var(--color-border);--control-bg: var(--color-surface);--control-text: var(--color-text);--control-placeholder: #94a3b8;--control-focus-ring: 0 0 0 2px rgba(37, 99, 235, .2);--control-focus-border: var(--color-primary);--control-disabled-bg: var(--color-surface-muted);--control-disabled-text: #94a3b8;--control-readonly-bg: var(--color-surface-muted);--label-font-size: .8125rem;--label-font-weight: 600;--label-color: var(--color-text);--label-gap: var(--space-1);--label-required-color: var(--color-danger);--form-grid-gap: var(--space-3);--form-grid-gap-wide: var(--space-4);--form-section-gap: var(--space-5);--form-section-padding-top: var(--space-4);--page-header-gap: var(--space-2);--page-section-gap: var(--space-5);--panel-padding: var(--space-4);--panel-header-padding-y: var(--space-3);--panel-header-padding-x: var(--space-4);--panel-radius: var(--radius);--panel-gap: var(--space-3);--editor-split-gap: var(--space-5);--editor-aside-width: min(22rem, 100%);--editor-main-min: 0;--workspace-column-gap: var(--space-3);--workspace-drawer-width: min(26rem, 100vw);--table-cell-padding-y: .5rem;--table-cell-padding-x: .75rem;--table-header-padding-y: .5rem;--table-header-padding-x: .75rem;--table-header-font-size: .75rem;--table-header-font-weight: 600;--table-header-letter-spacing: .04em;--table-header-bg: var(--color-surface-muted);--table-row-hover-bg: var(--color-surface-hover);--table-row-selected-bg: #e8eef5;--table-row-zebra-bg: #fafbfc;--table-border-color: var(--color-border);--table-min-width: 640px;--table-checkbox-col-width: 2.25rem;--list-item-padding-y: .5rem;--list-item-padding-x: .75rem}.hub-control,.form-field input:not([type=checkbox]):not([type=radio]):not([type=color]):not([type=file]),.form-field select,.form-field textarea,.editor-field input:not([type=checkbox]):not([type=radio]):not([type=color]):not([type=file]),.editor-field select,.editor-field textarea,.search-input,input.search-input,select.search-input,.customer-selector-input,.clause-templates-create-row input[type=text],.library-toolbar input[type=text],.library-toolbar select,.project-financial-workspace-field-input,.project-financial-workspace-status-select,.project-contract-progress-contract-value-input{display:block;width:100%;box-sizing:border-box;min-height:var(--control-height);padding:var(--control-padding-y) var(--control-padding-x);border:var(--control-border);border-radius:var(--control-radius);background:var(--control-bg);color:var(--control-text);font-size:var(--control-font-size);line-height:var(--control-line-height);transition:border-color .12s ease,box-shadow .12s ease,background-color .12s ease}.hub-control--inline,.project-financial-workspace-field-input,.project-contract-progress-contract-value-input{width:auto;flex:1;min-width:0}.form-field textarea,.editor-field textarea,.hub-control--textarea,textarea.hub-control{min-height:72px;height:auto;resize:vertical}.hub-control::placeholder,.form-field input::placeholder,.form-field textarea::placeholder,.editor-field input::placeholder,.editor-field textarea::placeholder,.search-input::placeholder,.customer-selector-input::placeholder{color:var(--control-placeholder);opacity:1}.hub-control:focus,.form-field input:not([type=checkbox]):not([type=radio]):focus,.form-field select:focus,.form-field textarea:focus,.editor-field input:not([type=checkbox]):not([type=radio]):focus,.editor-field select:focus,.editor-field textarea:focus,.search-input:focus,.customer-selector-input:focus,.clause-templates-create-row input[type=text]:focus,.library-toolbar input[type=text]:focus,.library-toolbar select:focus,.project-financial-workspace-field-input:focus,.project-financial-workspace-status-select:focus,.project-contract-progress-contract-value-input:focus{outline:none;border-color:var(--control-focus-border);box-shadow:var(--control-focus-ring)}.hub-control:disabled,.form-field input:disabled,.form-field select:disabled,.form-field textarea:disabled,.editor-field input:disabled,.editor-field select:disabled,.editor-field textarea:disabled,.search-input:disabled,.customer-selector-input:disabled{background:var(--control-disabled-bg);color:var(--control-disabled-text);cursor:not-allowed}.hub-control:read-only,.form-field input:read-only,.editor-field input:read-only,.editor-field.readonly input{background:var(--control-readonly-bg)}.hub-control--select,.form-field select,.editor-field select,select.hub-control,select.search-input,.hub-table-toolbar select,.library-toolbar select,.project-financial-workspace-status-select{-webkit-appearance:none;-moz-appearance:none;appearance:none;padding-right:calc(var(--control-padding-x) + 1.25rem);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%2364748b' d='M2.5 4.5 6 8l3.5-3.5'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right var(--space-2) center;background-size:12px;cursor:pointer}input[type=date].hub-control,.form-field input[type=date],.editor-field input[type=date],input[type=number].hub-control,.form-field input[type=number],.editor-field input[type=number]{min-height:var(--control-height)}.hub-search,input[type=search].hub-control,input[type=search].search-input,.search-input[type=search],.search-input:not(select){min-width:220px}.hub-checkbox,.form-field.checkbox-field input[type=checkbox],.hub-checkbox-label input[type=checkbox],.library-filter-toggle input[type=checkbox],.clause-templates-default-toggle input[type=checkbox],.hub-radio,.form-field.radio-field input[type=radio],.hub-radio-label input[type=radio]{width:16px;height:16px;margin:0;flex-shrink:0;accent-color:var(--color-primary);cursor:pointer}.hub-checkbox:disabled,.hub-radio:disabled{cursor:not-allowed;opacity:.55}.hub-checkbox-label,.hub-radio-label,.form-field.checkbox-field,.form-field.radio-field,.library-filter-toggle{display:inline-flex;align-items:center;gap:var(--space-2);font-size:var(--control-font-size);font-weight:400;color:var(--control-text);cursor:pointer}.form-field.checkbox-field{flex-direction:row}.form-field.checkbox-field label,.form-field.radio-field label{font-size:var(--control-font-size);font-weight:400;cursor:pointer}.hub-checkbox-label span,.hub-radio-label span{line-height:var(--control-line-height)}.form-label-required{color:var(--label-required-color);font-weight:600}.form-field{display:flex;flex-direction:column;gap:var(--label-gap);min-width:0}.form-field>label,.hub-field-label,.editor-field label,.customer-selector-label-row label,.project-financial-workspace-field-label,.project-contract-progress-contract-value-label{font-size:var(--label-font-size);font-weight:var(--label-font-weight);color:var(--label-color);line-height:1.3}.editor-field{display:flex;flex-direction:column;gap:var(--label-gap);min-width:0}.editor-field.span-2{grid-column:span 2}.editor-field.span-4{grid-column:span 4}.form-grid{display:grid;gap:var(--form-grid-gap)}.form-grid.two-col{grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--form-grid-gap) var(--form-grid-gap-wide)}.form-grid.three-col{grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--form-grid-gap) var(--form-grid-gap-wide)}@media (max-width: 900px){.form-grid.three-col{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 640px){.form-grid.two-col,.form-grid.three-col{grid-template-columns:1fr}}.form-section,.settings-section{margin-top:var(--form-section-gap);padding-top:var(--form-section-padding-top);border-top:1px solid var(--color-border)}.form-section:first-child,.settings-section:first-child{margin-top:0;padding-top:0;border-top:none}.form-section-header,.settings-section-header{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:var(--space-3);margin-bottom:var(--space-3)}.form-section-header h2,.settings-section-header h2{margin:0;font-size:1.05rem;font-weight:600;color:var(--color-text)}.form-section-header p,.settings-section-header p,.field-hint{margin:var(--space-1) 0 0;color:var(--color-text-muted);font-size:.875rem;line-height:1.4}.form-section-actions,.settings-section-actions{display:flex;flex-wrap:wrap;gap:var(--space-2)}.qbt-labor-history{margin-top:.2rem;color:var(--color-text-muted);font-size:.75rem;line-height:1.3}.qbt-jobcode-badge{display:inline-block;margin-right:.35rem;padding:.05rem .35rem;border:1px solid var(--table-border-color);border-radius:var(--radius);font-size:.6875rem;font-weight:700;letter-spacing:.02em}.form-subsection-title{margin:0 0 var(--space-3);font-size:.9375rem;font-weight:600;color:var(--color-text)}.form-info-hint{margin:0;padding:var(--space-2) var(--space-3);font-size:.8125rem;color:var(--color-text-muted);background:#f8fafc;border-left:3px solid var(--color-border);border-radius:var(--control-radius)}.project-folder-name-preview{margin:0;padding:var(--space-2) var(--control-padding-x);background:var(--control-readonly-bg);border:var(--control-border);border-radius:var(--control-radius)}.project-folder-name-preview-label{display:block;margin-bottom:var(--space-1);font-size:.75rem;font-weight:600;letter-spacing:.02em;text-transform:uppercase;color:var(--color-text-muted)}.project-folder-name-preview-value{margin:0;font-size:var(--control-font-size);line-height:1.4;color:var(--control-text);word-break:break-word}.project-id-row{display:flex;align-items:center;gap:.5rem}.project-id-row input{flex:1}.project-id-edit{flex:0 0 auto}.project-id-confirm{margin:0;padding:.65rem .75rem;background:#fff4e5;border:1px solid #e0b15a;border-radius:6px}.project-id-confirm p{margin:0 0 .6rem}.project-id-confirm-actions{display:flex;flex-wrap:wrap;gap:.5rem}.sharepoint-name-editor{display:flex;flex-direction:column;gap:.45rem}.sharepoint-name-editor-heading{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.sharepoint-name-segments{display:grid;grid-template-columns:minmax(5.5rem,.7fr) minmax(0,1fr) minmax(0,1.3fr);gap:.5rem}.sharepoint-name-segments label span{display:block;margin-bottom:.2rem;font-size:.75rem;color:var(--color-text-muted, #64748b)}.sharepoint-name-segments input[readOnly]{background:var(--control-readonly-bg, #f1f5f9)}.sharepoint-name-warn{margin:0;color:#8a5a00}.status-badge{display:inline-block;padding:2px var(--space-2);border-radius:999px;font-size:.75rem;font-weight:600}.status-badge--completed{background:#e8f5e9;color:#2e7d32}.status-badge--muted{background:#f0f0f0;color:#666}.document-type-settings-grid{display:flex;flex-direction:column;gap:var(--space-3);max-width:720px}.document-expiration-settings-grid{display:grid;grid-template-columns:repeat(2,minmax(220px,1fr));gap:var(--form-grid-gap)}@media (max-width: 700px){.document-expiration-settings-grid{grid-template-columns:1fr}}.document-type-settings-row{display:grid;grid-template-columns:minmax(180px,1fr) minmax(220px,1.5fr);gap:var(--form-grid-gap);padding-bottom:var(--space-3);border-bottom:1px solid var(--color-border)}@media (max-width: 700px){.document-type-settings-row{grid-template-columns:1fr}}.hub-panel,.editor-section,.project-detail-section,.customer-summary-section{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--panel-radius);box-shadow:var(--shadow-sm);overflow:hidden}.hub-panel--flat{box-shadow:none}.hub-panel__header,.editor-section-header,.project-detail-section-header,.customer-summary-section-header{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-3);padding:var(--panel-header-padding-y) var(--panel-header-padding-x);border-bottom:1px solid var(--color-border);background:var(--color-surface-muted)}.hub-panel__header h2,.hub-panel__header h3,.editor-section-header,.project-detail-section-header h3,.customer-summary-section-title{margin:0;font-size:.9375rem;font-weight:600;color:var(--color-text);letter-spacing:normal;text-transform:none}.editor-section-header{display:block;font-size:.8125rem;font-weight:600;letter-spacing:.03em;text-transform:uppercase;color:var(--color-text-muted)}.hub-panel__description,.project-detail-section-subtitle{margin:var(--space-1) 0 0;font-size:.8125rem;color:var(--color-text-muted);line-height:1.4}.hub-panel__actions,.project-detail-section-actions{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2);flex-shrink:0}.hub-panel__body,.editor-section-body,.project-detail-section-body{padding:var(--panel-padding)}.customer-summary-section:not(:has(.customer-summary-section-header)){padding:var(--panel-padding)}.customer-summary-section:has(.customer-summary-section-header) .customer-summary-section-title{margin:0}.customer-summary-section:has(.customer-summary-section-header){padding:0}.customer-summary-section:has(.customer-summary-section-header) .customer-summary-section-header{padding:var(--panel-header-padding-y) var(--panel-header-padding-x);border-bottom:1px solid var(--color-border);background:var(--color-surface-muted);margin-bottom:0}.customer-summary-section:has(.customer-summary-section-header) .customer-summary-loading,.customer-summary-section:has(.customer-summary-section-header) .hub-table-wrapper,.customer-summary-section:has(.customer-summary-section-header) .data-table-wrapper,.customer-summary-section:has(.customer-summary-section-header)>dl,.customer-summary-section:has(.customer-summary-section-header)>p:not(.customer-summary-loading){padding:var(--panel-padding)}.hub-metrics-grid,.customer-summary-metrics-grid,.project-detail-metrics-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(8.5rem,1fr));gap:var(--space-3) var(--space-4);margin:0}.hub-metrics-grid>div,.customer-summary-metrics-grid>div,.project-detail-metrics-grid>div{min-width:0}.hub-metrics-grid dt,.customer-summary-metrics-grid dt,.project-detail-metrics-grid dt{margin:0 0 var(--space-1);font-size:.75rem;font-weight:600;letter-spacing:.02em;text-transform:uppercase;color:var(--color-text-muted)}.hub-metrics-grid dd,.customer-summary-metrics-grid dd,.project-detail-metrics-grid dd{margin:0;font-size:1.05rem;font-weight:700;line-height:1.2;font-variant-numeric:tabular-nums}.hub-metrics-strip{display:flex;flex-wrap:wrap;gap:var(--space-2) var(--space-4);margin:0;padding:0;list-style:none}.hub-metrics-strip__item{display:flex;flex-direction:column;gap:var(--space-1);min-width:7.5rem;padding:var(--space-2) var(--space-3);border:1px solid var(--color-border);border-radius:var(--control-radius);background:var(--color-surface-muted)}.hub-metrics-strip__label{font-size:.72rem;font-weight:600;letter-spacing:.02em;text-transform:uppercase;color:var(--color-text-muted)}.hub-metrics-strip__value{font-size:.95rem;font-weight:700;font-variant-numeric:tabular-nums;color:var(--color-text)}.hub-collapsible,.customer-collapse-section{border:1px solid var(--color-border);border-radius:var(--control-radius);background:var(--color-surface);overflow:hidden}.hub-collapsible__header{display:flex;align-items:center;gap:var(--space-2);background:var(--color-surface-muted)}.hub-collapsible__toggle,.customer-collapse-header{display:flex;align-items:center;gap:var(--space-2);min-width:0;flex:1;padding:var(--space-2) var(--space-3);border:none;background:var(--color-surface-muted);font:inherit;font-size:.875rem;font-weight:600;color:var(--color-text);text-align:left;cursor:pointer}.hub-collapsible__header-action{flex-shrink:0;padding-right:var(--space-3)}.hub-collapsible__toggle:hover,.customer-collapse-header:hover{background:var(--color-surface-hover)}.hub-collapsible__chevron,.customer-collapse-chevron{font-size:.65rem;color:var(--color-text-muted);flex-shrink:0}.hub-collapsible__collapsed,.customer-collapse-collapsed{padding:var(--space-2) var(--space-3);font-size:.8125rem;color:var(--color-text-muted);border-top:1px solid var(--color-border)}.hub-collapsible__body,.customer-collapse-expanded{padding:var(--space-3);border-top:1px solid var(--color-border)}.hub-collapsible__footer,.customer-collapse-footer{margin-top:var(--space-2);padding-top:var(--space-2);border-top:1px solid var(--color-border)}.hub-subnav{display:flex;flex-wrap:wrap;gap:var(--space-1);margin-bottom:var(--space-3);padding-bottom:var(--space-2);border-bottom:1px solid var(--color-border)}.hub-subnav__item{-webkit-appearance:none;-moz-appearance:none;appearance:none;display:inline-flex;align-items:center;border:1px solid transparent;border-radius:var(--control-radius);background:transparent;padding:var(--space-2) var(--space-3);font:inherit;font-size:.875rem;font-weight:600;color:var(--color-text-muted);cursor:pointer;text-decoration:none}.hub-subnav__item:hover{color:var(--color-text);background:var(--color-surface-muted)}.hub-subnav__item.active{color:var(--color-primary);border-color:var(--color-border);background:#eff6ff}.hub-segmented-band{display:flex;margin:0;padding:0;list-style:none;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--control-radius);overflow:hidden}.hub-segmented-band__item{flex:1;display:flex;align-items:center;gap:var(--space-2);min-width:0;min-height:44px;padding:var(--space-2) var(--space-3);border:none;border-right:1px solid var(--color-border);background:transparent;color:inherit;text-decoration:none}.hub-segmented-band__item:last-child{border-right:none}.hub-segmented-band__item:hover{background:var(--color-surface-hover)}.hub-segmented-band__item:focus-visible{outline:2px solid var(--color-primary);outline-offset:-2px}.hub-segmented-band__dot{width:.5rem;height:.5rem;border-radius:50%;flex-shrink:0}.hub-segmented-band__label{font-size:.6875rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--color-text-muted);white-space:nowrap}.hub-segmented-band__value{margin-left:auto;font-size:1.125rem;font-weight:700;line-height:1;font-variant-numeric:tabular-nums;color:var(--color-text)}.hub-summary-tray{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;background:var(--color-border);border:1px solid var(--color-border);border-radius:var(--control-radius);overflow:hidden}.hub-summary-tray>:only-child{grid-column:1 / -1}.hub-summary-tray>:nth-child(3):last-child{grid-column:1 / -1}.hub-summary-tray--flush{gap:0;background:var(--color-surface-muted);border:none;border-radius:0}.hub-summary-tray--flush .hub-summary-tile{min-height:38px;padding:0 var(--space-3) 0 0;background:transparent;box-shadow:inset -1px 0 0 var(--color-border),inset 0 -1px 0 var(--color-border)}.hub-summary-tray--flush .hub-summary-tile:nth-child(2n){padding-right:0;padding-left:var(--space-3);box-shadow:inset 0 -1px 0 var(--color-border)}.hub-summary-tray--flush .hub-summary-tile:only-child,.hub-summary-tray--flush .hub-summary-tile:nth-child(3):last-child{padding-left:0;padding-right:0;box-shadow:inset 0 -1px 0 var(--color-border)}.hub-summary-tray--flush .hub-summary-tile:hover{background:var(--color-surface-hover)}.hub-summary-tray--stack{display:flex;flex-direction:column;gap:0;background:transparent;border:none;border-radius:0;overflow:visible}.hub-summary-tray--stack .hub-summary-tile{min-height:32px;padding:var(--space-1) 0;background:transparent;box-shadow:none}.hub-summary-tray--stack .hub-summary-tile:hover{background:var(--color-surface-hover)}.hub-summary-tile{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);min-height:36px;padding:0 var(--space-3);border:none;background:var(--color-surface-muted);color:inherit;font:inherit;text-align:left;text-decoration:none;cursor:pointer}.hub-summary-tile:hover{background:var(--color-surface-hover)}.hub-summary-tile:focus-visible{outline:2px solid var(--color-primary);outline-offset:-2px}.hub-summary-tile__label{display:flex;align-items:center;gap:var(--space-2);min-width:0;font-size:.75rem;font-weight:600;color:var(--color-text)}.hub-summary-tile__count{flex-shrink:0;font-size:.875rem;font-weight:700;font-variant-numeric:tabular-nums;color:var(--color-text)}.hub-collapsible--compact{border:none;border-radius:0;background:transparent}.hub-collapsible--compact .hub-collapsible__header,.hub-collapsible--compact .hub-collapsible__toggle{min-height:36px;background:var(--color-surface-muted)}.hub-collapsible--compact .hub-collapsible__toggle{padding:0 var(--space-3);font-size:.75rem}.hub-collapsible--compact .hub-collapsible__body{padding:0}.hub-table-wrapper,.data-table-wrapper{overflow-x:auto;background:var(--color-surface);border:1px solid var(--table-border-color);border-radius:var(--radius);box-shadow:var(--shadow-sm)}.hub-table,.data-table{width:100%;border-collapse:collapse;min-width:var(--table-min-width);font-size:var(--control-font-size)}.hub-table th,.hub-table td,.data-table th,.data-table td{padding:var(--table-cell-padding-y) var(--table-cell-padding-x);text-align:left;vertical-align:middle;border-bottom:1px solid var(--table-border-color)}.hub-table th,.data-table th{padding:var(--table-header-padding-y) var(--table-header-padding-x);font-size:var(--table-header-font-size);font-weight:var(--table-header-font-weight);text-transform:uppercase;letter-spacing:var(--table-header-letter-spacing);color:var(--color-text-muted);background:var(--table-header-bg);white-space:nowrap}.hub-table tbody tr,.data-table tbody tr{cursor:default}.hub-table tbody tr[data-clickable=true],.data-table tbody tr[data-clickable=true]{cursor:pointer}.hub-table tbody tr:nth-child(2n):not(.selected):not(.hub-table__row--selected):not(.is-selected),.data-table tbody tr:nth-child(2n):not(.selected):not(.hub-table__row--selected):not(.is-selected){background:var(--table-row-zebra-bg)}.hub-table tbody tr:hover,.data-table tbody tr:hover,.hub-table tbody tr.is-selected:hover,.data-table tbody tr.is-selected:hover,.hub-table tbody tr.selected:hover,.data-table tbody tr.selected:hover{background:var(--table-row-hover-bg)}.hub-table tbody tr.selected,.hub-table tbody tr.hub-table__row--selected,.data-table tbody tr.selected,.hub-table tbody tr.is-selected,.data-table tbody tr.is-selected{background:var(--table-row-selected-bg);box-shadow:inset 3px 0 0 var(--color-primary)}.hub-table tbody tr:last-child td,.data-table tbody tr:last-child td{border-bottom:none}.hub-table--compact{min-width:0}.hub-table--compact th,.hub-table--compact td{padding:.4rem .5rem;font-size:.8125rem}.hub-table--compact th{padding-top:.45rem;padding-bottom:.45rem}.hub-table__cell--align-left,.data-table .hub-table__cell--align-left{text-align:left}.hub-table__cell--align-center,.data-table .hub-table__cell--align-center{text-align:center}.hub-table__cell--align-right,.data-table .hub-table__cell--align-right{text-align:right;font-variant-numeric:tabular-nums}.hub-table__cell--numeric{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}.hub-table__cell--date{text-align:left;font-variant-numeric:tabular-nums;white-space:nowrap}.hub-table__cell--select,.data-table-select-col{width:var(--table-checkbox-col-width);min-width:var(--table-checkbox-col-width);max-width:var(--table-checkbox-col-width);padding-left:var(--space-2);padding-right:var(--space-1);text-align:center;vertical-align:middle}.hub-table__cell--select input[type=checkbox],.data-table-select-col input[type=checkbox]{display:block;margin:0 auto;cursor:pointer}.hub-table__cell--actions{text-align:right;white-space:nowrap;width:1%}.hub-table__cell--actions .btn{padding:.3rem .55rem;font-size:.8125rem}.hub-table-empty,.hub-table-message,.data-table-empty{margin:0;padding:var(--space-4) var(--space-3);text-align:center;color:var(--color-text-muted);font-size:var(--control-font-size);line-height:1.45}.hub-table-empty--bordered,.data-table-empty--bordered{border:1px solid var(--table-border-color);border-radius:var(--radius);background:var(--color-surface)}.hub-table-toolbar{display:flex;flex-direction:column;gap:var(--space-3);margin-bottom:var(--space-4)}.hub-table-toolbar--row{flex-direction:row;flex-wrap:wrap;align-items:center}.hub-table-toolbar__search{width:100%;max-width:none}.hub-table-toolbar__filters{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--space-3) var(--space-4);align-items:end;width:100%}.hub-table-toolbar__actions{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2);margin-left:auto}.hub-table-toolbar .hub-control,.hub-table-toolbar select,.hub-table-toolbar .search-input{min-width:12.5rem}.hub-table-toolbar .hub-search,.hub-table-toolbar .search-input[type=search]{min-width:14rem}.hub-table-filter-chips{display:flex;flex-wrap:wrap;gap:var(--space-2);align-items:center}.hub-table-filter-chip{padding:.35rem .75rem;border:1px solid var(--table-border-color);border-radius:var(--radius);background:var(--color-surface);color:var(--color-text);font-size:.8125rem;font-weight:600;cursor:pointer;line-height:1.2}.hub-table-filter-chip:hover{background:var(--table-row-hover-bg)}.hub-table-filter-chip.active,.hub-table-filter-chip[aria-pressed=true]{background:var(--color-primary);border-color:var(--color-primary);color:#fff}.hub-table-filter-toggle{display:inline-flex;align-items:center;gap:var(--space-2);font-size:var(--control-font-size);color:var(--color-text);cursor:pointer;white-space:nowrap}.hub-table-footer{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--space-3);margin-top:var(--space-3)}.hub-table-footer__summary{margin:0;font-size:var(--control-font-size);color:var(--color-text-muted)}.hub-table-footer__controls{display:flex;align-items:center;gap:var(--space-3)}.hub-table-footer__page{font-size:var(--control-font-size);color:var(--color-text);white-space:nowrap}.hub-list{list-style:none;margin:0;padding:0;border:1px solid var(--table-border-color);border-radius:var(--radius);overflow:hidden;background:var(--color-surface)}.hub-list--scroll{max-height:18rem;overflow:auto}.hub-list__item{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-2);width:100%;padding:var(--list-item-padding-y) var(--list-item-padding-x);border:none;border-bottom:1px solid var(--table-border-color);background:transparent;text-align:left;cursor:pointer;font:inherit;color:inherit;line-height:1.4}.hub-list__item:last-child{border-bottom:none}.hub-list__item:hover{background:var(--table-row-hover-bg)}.hub-list__item--active,.hub-list__item.active{background:var(--table-row-selected-bg);box-shadow:inset 3px 0 0 var(--color-primary);font-weight:600}.hub-list__item-text{flex:1;min-width:0}.hub-list__item-meta{flex-shrink:0;font-size:.75rem;color:var(--color-text-muted)}.hub-list--cards{display:flex;flex-direction:column;gap:var(--space-3);border:none;border-radius:0;overflow:visible;background:transparent}@media (max-width: 1024px){.hub-table-toolbar__filters{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 640px){.hub-table-toolbar__filters{grid-template-columns:1fr}.hub-table,.data-table{min-width:0}}.hub-editor-page{display:flex;flex-direction:column;gap:var(--space-4);min-height:0}.hub-editor-header{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-3);flex-wrap:wrap}.hub-editor-header__identity{min-width:0}.hub-editor-back{display:inline-block;margin:0;padding:0;border:none;background:none;font:inherit;font-size:.875rem;font-weight:600;color:var(--color-primary);cursor:pointer;text-align:left}.hub-editor-back:hover{text-decoration:underline}.hub-editor-title{margin:var(--space-1) 0 0;font-size:1.5rem;font-weight:700;line-height:1.2;color:var(--color-text)}.hub-editor-subtitle{margin:var(--space-1) 0 0;font-size:.875rem;line-height:1.4;color:var(--color-text-muted)}.hub-editor-split{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--editor-split-gap);align-items:start}.hub-editor-main{min-width:0}.hub-editor-aside{display:flex;flex-direction:column;gap:var(--space-3);min-width:0}.hub-editor-panel{margin:0}.hub-editor-panel__title{margin:0 0 var(--space-3);font-size:.9375rem;font-weight:600;color:var(--color-text)}@media (min-width: 1100px){.hub-editor-split--with-aside{grid-template-columns:minmax(0,1.55fr) minmax(18rem,.85fr)}}.hub-settings-layout{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--space-5);align-items:start}.hub-settings-nav{display:flex;flex-direction:column;gap:var(--space-1)}.hub-settings-nav__button{display:block;width:100%;padding:var(--space-2) var(--space-3);border:1px solid transparent;border-radius:var(--control-radius);background:transparent;font:inherit;font-size:.875rem;font-weight:500;color:var(--color-text-muted);text-align:left;cursor:pointer}.hub-settings-nav__button:hover{background:#f8fafc;color:var(--color-text)}.hub-settings-nav__button--active{background:#eff6ff;border-color:#dbeafe;color:var(--color-primary);font-weight:600}.hub-settings-content{display:flex;flex-direction:column;gap:var(--space-3);min-width:0;min-height:0;max-height:calc(100vh - 11rem);overflow-y:auto;padding-right:var(--space-1)}.hub-settings-category-header{flex-shrink:0}.hub-settings-category-title{margin:0;font-size:1.125rem;font-weight:600;color:var(--color-text)}.hub-settings-category-description{margin:var(--space-1) 0 0;font-size:.875rem;line-height:1.45;color:var(--color-text-muted)}.hub-settings-category-panel{display:flex;flex-direction:column;gap:0;min-width:0}.hub-settings-category-panel .settings-section:first-child,.hub-settings-category-panel .settings-section--first{margin-top:0;padding-top:0;border-top:none}.settings-category-banner{margin-bottom:var(--space-4)}.settings-feedback{margin:0;font-size:.875rem}.settings-feedback--success{color:var(--color-success)}.settings-feedback--error{color:var(--color-danger)}.hub-settings-content .form-grid{max-width:none}@media (min-width: 960px){.hub-settings-layout{grid-template-columns:11rem minmax(0,1fr)}.hub-settings-nav{position:sticky;top:var(--space-4)}}.hub-editor-sections{display:flex;flex-direction:column;gap:var(--space-3)}.hub-editor-sections .editor-section,.hub-editor-sections .hub-panel{margin-bottom:0}.document-setup-tab .hub-setup-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--space-3)}@media (min-width: 1200px){.document-setup-tab--split .hub-setup-layout{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:var(--space-4);align-items:start}}.hub-workspace{display:flex;flex-direction:column;gap:var(--workspace-column-gap);min-height:0}.hub-workspace-board{display:flex;flex-direction:column;gap:var(--space-3)}.hub-workspace-board__row{display:grid;gap:var(--space-3);align-items:stretch}.hub-workspace-board__row--3{grid-template-columns:repeat(3,minmax(0,1fr))}.hub-workspace-board__row--2{grid-template-columns:repeat(2,minmax(0,1fr))}.hub-workspace-column{display:flex;flex-direction:column;min-height:10rem;border:1px solid var(--color-border);border-radius:var(--panel-radius);background:var(--color-surface);overflow:hidden}.hub-workspace-column__header{padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--color-border);background:#f8fafc}.hub-workspace-column__header h3{margin:0;font-size:.9rem;font-weight:700}.hub-workspace-column__body{flex:1;display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-3);overflow-y:auto;min-height:0}.hub-template-workspace{display:flex;flex-direction:column;gap:var(--space-4)}.hub-template-workspace__preview{min-width:0}.hub-template-workspace__tools{display:flex;flex-direction:column;gap:var(--space-4);min-width:0}@media (min-width: 1200px){.hub-template-workspace{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:var(--space-4);align-items:start}.hub-template-workspace__preview{position:sticky;top:var(--space-4);max-height:calc(100vh - var(--space-7));overflow:auto}}.hub-detail-drawer-backdrop,.project-contract-progress-drawer-backdrop,.project-financial-workspace-drawer-backdrop,.project-work-progress-drawer-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:40;border:none;background:#0f172a47;cursor:pointer}.hub-detail-drawer,.project-contract-progress-drawer,.project-financial-workspace-drawer,.project-work-progress-drawer{position:fixed;top:0;right:0;z-index:41;display:flex;flex-direction:column;width:var(--workspace-drawer-width);height:100vh;border-left:1px solid var(--color-border);background:var(--color-surface);box-shadow:-8px 0 24px #0f172a1f}.hub-detail-drawer__header,.project-contract-progress-drawer-header,.project-financial-workspace-drawer-header,.project-work-progress-drawer-header{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-3);padding:var(--space-4);border-bottom:1px solid var(--color-border);flex-shrink:0}.hub-detail-drawer__header h3,.project-contract-progress-drawer-header h3,.project-financial-workspace-drawer-header h3,.project-work-progress-drawer-header h3{margin:0;font-size:1rem;font-weight:600}.hub-detail-drawer__body,.project-contract-progress-drawer-body,.project-financial-workspace-drawer-body,.project-work-progress-drawer-body{flex:1;overflow-y:auto;padding:var(--space-4);min-height:0}.project-detail-page--files-workstation{min-height:0}.project-detail-page--files-workstation .project-detail-body{padding-top:var(--space-2);padding-bottom:var(--space-2)}.project-detail-page--progress-workspace{min-height:0}@media (max-width: 1100px){.hub-workspace-board__row--3,.hub-workspace-board__row--2{grid-template-columns:1fr}}:root{--hub-board-radius: 4px;--hub-board-gap: .5rem;--hub-board-header-size: .6875rem;--hub-board-meta-size: .6875rem;--hub-board-body-size: .8125rem}.project-contract-progress-tab,.project-financial-workspace-tab{display:flex;flex-direction:column;min-width:0;min-height:0;flex:1;overflow:hidden}.project-contract-progress-empty,.project-financial-workspace-empty,.project-work-progress-empty{display:flex;flex-direction:column;align-items:flex-start;gap:.35rem;padding:1.1rem 1rem;border:1px dashed var(--color-border);border-radius:var(--hub-board-radius);background:#f8fafc}.project-contract-progress-empty h3,.project-financial-workspace-empty h3,.project-work-progress-empty h3{margin:0;font-size:.875rem;font-weight:700;color:var(--color-text)}.project-contract-progress-error,.project-financial-workspace-error{margin:0 0 .65rem;color:var(--color-danger);font-size:.8125rem}.project-contract-progress-workspace,.project-financial-workspace-workspace{display:grid;grid-template-columns:minmax(18rem,.38fr) minmax(24rem,.62fr);grid-template-rows:minmax(0,1fr);gap:var(--hub-board-gap);align-items:stretch;min-width:0;min-height:0;flex:1;overflow:hidden}.project-contract-progress-board,.project-financial-workspace-board{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:.4rem;min-width:0;min-height:0;overflow:hidden}.project-contract-progress-board{grid-template-rows:minmax(0,1fr)}.project-contract-progress-board-left,.project-contract-progress-board-right,.project-financial-workspace-board-left,.project-financial-workspace-board-right{display:flex;flex-direction:column;gap:.4rem;min-width:0;min-height:0;overflow-y:auto}.project-contract-progress-board-left-rest,.project-contract-progress-board-left-secondary{display:flex;flex-direction:column;gap:.4rem;min-width:0}.project-contract-progress-board-left-secondary{margin-top:.45rem}.project-contract-progress-board-right .project-contract-progress-column{flex:1;min-height:0}.project-contract-progress-options{display:flex;flex-direction:column;flex:0 0 auto;min-width:0;height:auto;border:1px solid var(--color-border);border-radius:var(--hub-board-radius);background:var(--color-surface);overflow:hidden}.project-contract-progress-options-body{padding:.4rem}.project-contract-progress-options .project-contract-progress-card-list{display:flex;flex-direction:column;gap:.22rem;margin:0;padding:0;list-style:none}.project-contract-progress-previous-versions{display:flex;flex-direction:column;flex:0 0 auto;min-width:0;height:auto;border:1px solid var(--color-border);border-radius:var(--hub-board-radius);background:var(--color-surface);overflow:hidden}.project-contract-progress-previous-versions-toggle{display:flex;align-items:baseline;justify-content:space-between;width:100%;padding:.28rem .5rem;border:none;border-bottom:1px solid transparent;background:#f8fafc;text-align:left;font:inherit;cursor:pointer}.project-contract-progress-previous-versions.is-expanded .project-contract-progress-previous-versions-toggle{border-bottom-color:var(--color-border)}.project-contract-progress-previous-versions-toggle h3{margin:0;font-size:var(--hub-board-header-size);font-weight:600;letter-spacing:.04em;line-height:1.2;text-transform:none;color:var(--color-text-muted)}.project-contract-progress-previous-versions-body{padding:.4rem}.project-contract-progress-previous-versions .project-contract-progress-card-list{display:flex;flex-direction:column;gap:.22rem;margin:0;padding:0;list-style:none}.project-contract-progress-column,.project-financial-workspace-column{display:flex;flex-direction:column;min-width:0;min-height:0;border:1px solid var(--color-border);border-radius:var(--hub-board-radius);background:var(--color-surface);overflow:hidden}.project-contract-progress-column.is-empty,.project-financial-workspace-column.is-empty{flex:0 0 auto}.project-contract-progress-column-header,.project-financial-workspace-column-header{display:flex;align-items:baseline;justify-content:space-between;gap:.5rem;padding:.28rem .5rem;border-bottom:1px solid var(--color-border);background:#f8fafc}.project-contract-progress-column-header h3,.project-financial-workspace-column-header h3{margin:0;font-size:var(--hub-board-header-size);font-weight:600;letter-spacing:.05em;line-height:1.2;text-transform:uppercase}.hub-board-count{font-size:.6875rem;font-weight:600;font-variant-numeric:tabular-nums;color:var(--color-text-muted)}.project-contract-progress-column--draft,.project-financial-workspace-column--draft{border-color:#d5dde6}.project-contract-progress-column--draft .project-contract-progress-column-header,.project-financial-workspace-column--draft .project-financial-workspace-column-header{background:#f4f7fa;color:#334155;box-shadow:inset 3px 0 #64748b}.project-contract-progress-column--pending,.project-financial-workspace-column--submitted{border-color:#e6d7b3}.project-contract-progress-column--pending .project-contract-progress-column-header,.project-financial-workspace-column--submitted .project-financial-workspace-column-header{background:#fbf6ea;color:#7a5b16;box-shadow:inset 3px 0 #c9a227}.project-financial-workspace-column--partially-paid{border-color:#dcc6e8}.project-financial-workspace-column--partially-paid .project-financial-workspace-column-header{background:#f7f2fb;color:#5b3d73;box-shadow:inset 3px 0 #8b5fbf}.project-contract-progress-column--accepted,.project-financial-workspace-column--paid{border-color:#c5d9c8}.project-contract-progress-column--accepted .project-contract-progress-column-header,.project-financial-workspace-column--paid .project-financial-workspace-column-header{background:#f1f7f2;color:#215c2e;box-shadow:inset 3px 0 #3f8f4e}.project-contract-progress-column--rejected,.project-financial-workspace-column--rejected{border-color:#e0cdcd}.project-contract-progress-column--rejected .project-contract-progress-column-header,.project-financial-workspace-column--rejected .project-financial-workspace-column-header{background:#f8f1f1;color:#7f1d1d;box-shadow:inset 3px 0 #b91c1c}.project-contract-progress-column-body,.project-financial-workspace-column-body{display:flex;flex-direction:column;gap:.35rem;padding:.32rem .35rem .4rem;overflow:visible}.project-contract-progress-board-right .project-contract-progress-column-body,.project-financial-workspace-board-left .project-financial-workspace-column:not(.is-empty) .project-financial-workspace-column-body,.project-financial-workspace-board-right .project-financial-workspace-column:not(.is-empty) .project-financial-workspace-column-body{flex:1;min-height:0;overflow-y:auto}.project-contract-progress-column-empty,.project-financial-workspace-column-empty{margin:0;padding:.12rem .08rem;color:var(--color-text-muted);font-size:var(--hub-board-meta-size)}.project-contract-progress-type-group-label,.project-financial-workspace-type-group-label{margin:0 0 .18rem;font-size:.625rem;font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:var(--color-text-muted)}.project-contract-progress-card-list,.project-financial-workspace-card-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.22rem}.project-contract-progress-card,.project-financial-workspace-card{display:flex;align-items:stretch;width:100%;border:1px solid var(--color-border);border-radius:3px;background:#fff;overflow:hidden}.project-contract-progress-card:hover,.project-financial-workspace-card:hover{border-color:#cbd5e1;background:#f8fafc}.project-contract-progress-card.is-selected,.project-financial-workspace-card.is-selected{border-color:#bfdbfe;background:#f8fbff;box-shadow:inset 2px 0 0 var(--color-primary)}.project-contract-progress-card.is-saving,.project-financial-workspace-card.is-saving{opacity:.65}.project-contract-progress-card-main,.project-financial-workspace-card-main{display:flex;flex-direction:column;align-items:stretch;gap:.06rem;flex:1;min-width:0;padding:.32rem .42rem .34rem;border:none;background:transparent;text-align:left;font:inherit;cursor:pointer}.project-contract-progress-card-main{cursor:grab}.project-contract-progress-card-main:active{cursor:grabbing}.project-financial-workspace-card-main[draggable=true]{cursor:grab}.project-financial-workspace-card-main[draggable=true]:active{cursor:grabbing}.project-contract-progress-card-menu,.project-financial-workspace-card-menu{flex:0 0 auto;display:flex;align-items:flex-start;justify-content:center;width:1.5rem;padding:.28rem .1rem 0 0;border:none;background:transparent;color:#94a3b8;cursor:pointer}.project-contract-progress-card-menu:hover:not(:disabled),.project-financial-workspace-card-menu:hover:not(:disabled){color:var(--color-text)}.project-contract-progress-card-menu:disabled,.project-financial-workspace-card-menu:disabled{cursor:wait}.project-contract-progress-card-topline,.project-financial-workspace-card-topline{display:flex;align-items:baseline;justify-content:space-between;gap:.45rem;min-width:0}.project-contract-progress-card-primary,.project-financial-workspace-card-primary{display:flex;flex-wrap:wrap;align-items:center;gap:.28rem;min-width:0;font-size:var(--hub-board-body-size);font-weight:700;line-height:1.25;color:var(--color-text)}.project-contract-progress-card-secondary{width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.75rem;line-height:1.3;color:#475569}.project-contract-progress-card-type,.project-financial-workspace-card-type{font-size:var(--hub-board-meta-size);line-height:1.25;color:var(--color-text-muted)}.project-contract-progress-card-field-progress{display:block;width:100%;font-size:.6875rem;line-height:1.25;color:#64748b}.project-contract-progress-card-field-progress.is-update-required{color:#b45309;font-weight:700}.field-progress-ai-notice{margin:0 0 .65rem;font-size:.8125rem;font-weight:600;color:#1e3a5f}.field-progress-ai-retry{align-self:center;margin-right:.15rem;border:0;background:transparent;color:#1d4ed8;font-size:.75rem;font-weight:600;cursor:pointer}.project-contract-progress-card-status{font-size:var(--hub-board-meta-size);line-height:1.25;color:var(--color-text-muted)}.project-contract-progress-card-option-count{margin-left:.4rem;font-weight:500;color:#64748b}.project-contract-progress-card--option{background:#f8fafc;border-style:dashed;border-color:#cbd5e1}.project-contract-progress-card--option:hover{background:#f1f5f9;border-color:#94a3b8}.project-contract-progress-card--option.is-selected{border-style:solid;border-color:#bfdbfe;background:#f8fbff}.project-contract-progress-card--option .project-contract-progress-card-main,.project-contract-progress-card--option .project-contract-progress-card-main:active{cursor:pointer}.project-contract-progress-card--revision{background:#f8fafc;border-style:dotted;border-color:#cbd5e1}.project-contract-progress-card--revision:hover{background:#f1f5f9;border-color:#94a3b8}.project-contract-progress-card--revision.is-selected{border-style:solid;border-color:#bfdbfe;background:#f8fbff}.project-contract-progress-card--revision .project-contract-progress-card-main,.project-contract-progress-card--revision .project-contract-progress-card-main:active{cursor:pointer}.project-contract-progress-card-value,.project-financial-workspace-card-value{flex-shrink:0;font-size:.75rem;font-weight:600;line-height:1.25;font-variant-numeric:tabular-nums;font-feature-settings:"tnum" 1;color:var(--color-text);text-align:right}.project-contract-progress-base-contract-badge{display:inline-flex;align-items:center;padding:.04rem .32rem;border-radius:3px;background:#eff6ff;color:#1e40af;font-size:.5625rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.project-financial-workspace-card-meta{display:flex;flex-wrap:wrap;align-items:baseline;gap:.15rem .7rem;font-size:var(--hub-board-meta-size);line-height:1.3;color:#475569;font-variant-numeric:tabular-nums}.project-financial-workspace-overdue{display:inline-flex;margin-left:.28rem;padding:.02rem .28rem;border-radius:3px;background:#fee2e2;color:#991b1b;font-size:.5625rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.project-contract-progress-panel,.project-financial-workspace-panel{display:flex;flex-direction:column;min-width:0;min-height:0;border:1px solid var(--color-border);border-radius:var(--hub-board-radius);background:var(--color-surface);overflow:hidden}.project-contract-progress-panel-empty,.project-financial-workspace-panel-empty{flex:1;display:flex;align-items:center;justify-content:center;padding:1rem;color:var(--color-text-muted);font-size:.8125rem}.project-contract-progress-panel-chrome,.project-financial-workspace-panel-chrome{display:flex;align-items:stretch;justify-content:space-between;gap:.35rem;flex-shrink:0;border-bottom:1px solid var(--color-border);background:transparent}.project-contract-progress-panel-tabs,.project-financial-workspace-panel-tabs{display:flex;align-items:stretch;gap:.9rem;padding:0 .65rem}.project-contract-progress-panel-tab,.project-financial-workspace-panel-tab{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:none;background:transparent;padding:.38rem 0 .34rem;margin-bottom:-1px;border-bottom:2px solid transparent;font:inherit;font-size:.8125rem;font-weight:500;line-height:1.2;color:var(--color-text-muted);cursor:pointer;white-space:nowrap}.project-contract-progress-panel-tab:hover:not(:disabled),.project-financial-workspace-panel-tab:hover:not(:disabled){color:var(--color-text)}.project-contract-progress-panel-tab.is-active,.project-financial-workspace-panel-tab.is-active{color:var(--color-text);font-weight:600;border-bottom-color:var(--color-primary)}.project-contract-progress-panel-tab:disabled,.project-financial-workspace-panel-tab:disabled{cursor:default}.project-contract-progress-preview-expand,.project-financial-workspace-preview-expand{display:inline-flex;align-items:center;justify-content:center;width:1.75rem;height:auto;margin-right:.35rem;padding:0;border:none;background:transparent;color:#94a3b8;cursor:pointer}.project-contract-progress-preview-expand:hover,.project-financial-workspace-preview-expand:hover{color:var(--color-text)}.project-contract-progress-panel-body,.project-financial-workspace-panel-body{flex:1;min-height:0;overflow:hidden;display:flex;flex-direction:column}.project-contract-progress-info,.project-financial-workspace-info{flex:1;min-height:0;overflow:hidden;padding:.75rem .85rem 1rem}.project-contract-progress-info-header h3,.project-financial-workspace-info .project-contract-progress-info-header h3{display:flex;flex-wrap:wrap;align-items:center;gap:.35rem;margin:0;font-size:.9375rem;font-weight:700;line-height:1.25}.project-contract-progress-info-subtitle{margin:.18rem 0 0;color:#475569;font-size:.8125rem}.project-contract-progress-info-details{display:grid;gap:.45rem;margin:.75rem 0 0}.project-contract-progress-info-details div{display:grid;grid-template-columns:6.5rem minmax(0,1fr);column-gap:.65rem;align-items:baseline}.project-contract-progress-info-details dt{margin:0;font-size:var(--hub-board-header-size);font-weight:600;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.04em}.project-contract-progress-info-details dd{margin:0;font-size:var(--hub-board-body-size);color:var(--color-text)}.project-financial-workspace-field-amount,.project-contract-progress-contract-value-amount{font-variant-numeric:tabular-nums;font-feature-settings:"tnum" 1}@media (max-width: 960px){.project-contract-progress-workspace,.project-financial-workspace-workspace{grid-template-columns:minmax(0,1fr);grid-template-rows:auto auto;height:auto;min-height:0;overflow:visible}.project-contract-progress-board,.project-financial-workspace-board{min-height:12rem;max-height:min(42vh,24rem);overflow-y:auto}.project-contract-progress-panel,.project-financial-workspace-panel{min-height:22rem;height:min(70vh,44rem);max-height:70vh}}@media (max-width: 640px){.project-contract-progress-board,.project-financial-workspace-board{grid-template-columns:minmax(0,1fr)}.project-contract-progress-board-right .project-contract-progress-column{min-height:16rem}}:root{--color-bg: #e9eef4;--color-surface: #f7f9fc;--color-surface-muted: #f1f4f8;--color-surface-hover: #e8eef5;--color-bg-muted: var(--color-surface-muted);--color-sidebar: #1e293b;--color-sidebar-hover: #334155;--color-sidebar-active: #3b82f6;--color-text: #172033;--color-text-muted: #5e6c80;--color-border: #d3dce7;--color-primary: #31598f;--color-primary-hover: #274874;--color-danger: #dc2626;--color-danger-hover: #b91c1c;--color-success: #16a34a;--shadow-sm: 0 1px 2px rgba(15, 23, 42, .06);--shadow-md: 0 4px 12px rgba(15, 23, 42, .08);--radius: 8px;--sidebar-width: 240px;font-family:Segoe UI,system-ui,-apple-system,sans-serif;line-height:1.5;font-weight:400;color:var(--color-text);background-color:var(--color-bg);font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}*{box-sizing:border-box}body{margin:0;min-height:100vh}#root{min-height:100vh}h1,h2,h3,h4,p{margin:0}button,input,select,textarea{font:inherit}button{cursor:pointer}a{color:inherit;text-decoration:none}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
