:root{--ink:#102039;--navy:#061839;--blue:#1457d9;--line:#dce3ee;--wash:#f5f7fb;--muted:#5c6678}*{box-sizing:border-box}body{color:var(--ink);background:#fff;margin:0;font-family:Arial,Helvetica,sans-serif}main{min-height:100vh}.topbar{color:#fff;background:var(--navy);align-items:center;gap:14px;min-height:54px;padding:0 7%;font-size:14px;display:flex}.topbar strong{color:#72d8e3;letter-spacing:.08em;font-size:18px}.local{opacity:.75;margin-left:auto;font-size:12px}.topbar a{color:#cfe1ff;margin-left:auto;font-weight:700;text-decoration:none}.catalogue-header-actions .catalogue-action{box-sizing:border-box;border-radius:4px;justify-content:center;align-items:center;min-height:36px;margin:0;padding:8px 12px;font-size:13px;display:inline-flex}.catalogue-page .catalogue-header,.catalogue-page .catalogue-layout{max-width:none;padding-left:clamp(22px,3vw,48px);padding-right:clamp(22px,3vw,48px)}.catalogue-page .catalogue-layout{grid-template-columns:270px minmax(0,1fr)}.catalogue-page .table-panel{min-width:0}.catalogue-item-overlay .trade-overlay-card{width:min(100%,680px);max-height:calc(100vh - 48px);overflow-y:auto}.catalogue-item-overlay .trade-overlay-card form{gap:14px;margin-top:20px;display:grid}.catalogue-item-overlay .trade-overlay-card label{color:var(--ink);gap:6px;font-size:12px;font-weight:700;display:grid}.catalogue-item-overlay .trade-overlay-card input,.catalogue-item-overlay .trade-overlay-card select{box-sizing:border-box;border:1px solid var(--line);width:100%;min-height:40px;color:var(--ink);font:inherit;background:#fff;border-radius:4px;padding:9px 10px}.catalogue-item-overlay .trade-overlay-card .form-row{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.catalogue-item-overlay .trade-overlay-actions{flex-wrap:wrap;align-items:center;gap:8px;margin-top:4px;display:flex}.catalogue-item-overlay .trade-overlay-actions button,.catalogue-item-overlay .trade-overlay-actions a{box-sizing:border-box;border-radius:4px;justify-content:center;align-items:center;min-height:36px;padding:8px 12px;font-size:13px;font-weight:700;text-decoration:none;display:inline-flex}.catalogue-item-overlay .trade-overlay-actions button{background:var(--blue);color:#fff;cursor:pointer;border:0}.catalogue-item-overlay .trade-overlay-actions a{border:1px solid var(--line);color:var(--blue);background:#fff}@media (max-width:560px){.catalogue-item-overlay .trade-overlay-card .form-row{grid-template-columns:1fr}}.catalogue-item-edit{color:var(--blue);font-size:13px;font-weight:700;text-decoration:none}.catalogue-item-archive-form{border-top:1px solid var(--line);padding-top:16px;margin-top:18px!important}.catalogue-item-archive-form p{color:var(--muted);margin:0;font-size:12px;line-height:1.4}.catalogue-item-archive-form button{color:#8f2435;cursor:pointer;background:#fff;border:1px solid #e7a9b5;border-radius:4px;justify-self:start;min-height:36px;padding:8px 12px;font-size:13px;font-weight:700}.catalogue-items-register td:last-child form{margin:0}.catalogue-item-restore{color:#146338;cursor:pointer;background:#fff;border:1px solid #8acfb5;border-radius:4px;min-height:34px;padding:7px 10px;font-size:12px;font-weight:700}.bid-scope-panel{max-width:none;margin:0 auto;padding:0 20px 40px}.bid-scope-editor{border:1px solid var(--line);background:#f8fbff;border-radius:7px;gap:12px;width:min(100%,820px);margin:18px 0;padding:16px;display:grid}.bid-scope-heading{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.bid-scope-heading h4{margin:0 0 4px}.bid-scope-heading p{color:var(--muted);margin:0;font-size:13px;line-height:1.4}.bid-scope-heading span{color:#40506a;white-space:nowrap;background:#e4e9f1;border-radius:99px;padding:4px 7px;font-size:11px;font-weight:700}.bid-scope-lines{gap:7px;width:min(100%,680px);display:grid}.bid-scope-line{border:1px solid var(--line);background:#fff;border-radius:5px}.bid-scope-line summary{cursor:pointer;justify-content:space-between;gap:12px;padding:10px 12px;display:flex}.bid-scope-line summary span{color:var(--muted);font-size:12px}.bid-scope-line form{gap:10px;padding:0 12px 12px;display:grid}.bid-scope-line label,.bid-scope-add label{color:var(--ink);gap:5px;font-size:12px;font-weight:700;display:grid}.bid-scope-line input,.bid-scope-line select,.bid-scope-line textarea,.bid-scope-add input,.bid-scope-add select,.bid-scope-add textarea{box-sizing:border-box;border:1px solid var(--line);width:100%;min-height:36px;color:var(--ink);font:inherit;background:#fff;border-radius:4px;padding:8px 9px}.bid-scope-line textarea,.bid-scope-add textarea{resize:vertical;min-height:64px}.bid-scope-measure{grid-template-columns:1fr 1fr;gap:10px;display:grid}.bid-scope-remove{padding-top:0!important;display:block!important}.bid-scope-remove button{color:#8f2435;cursor:pointer;background:0 0;border:0;padding:0;font-size:12px;font-weight:700}.bid-scope-add{border-top:1px solid var(--line);gap:10px;width:min(100%,680px);padding-top:14px;display:grid}.bid-scope-add>button{background:var(--blue);color:#fff;cursor:pointer;border:0;border-radius:4px;justify-self:start;min-height:36px;padding:8px 12px;font-size:13px;font-weight:700}@media (max-width:560px){.bid-scope-heading{flex-direction:column}.bid-scope-measure{grid-template-columns:1fr}}.bid-scope-open{box-sizing:border-box;border:1px solid var(--line);min-height:36px;color:var(--blue);background:#fff;border-radius:4px;justify-content:center;align-items:center;margin-top:12px;padding:8px 12px;font-size:13px;font-weight:700;text-decoration:none;display:inline-flex}.bid-scope-open:hover{border-color:var(--blue)}.bid-scope-overlay{z-index:50;background:#1020397a;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.bid-scope-modal{box-sizing:border-box;background:#fff;border-radius:8px;width:min(100%,920px);max-height:calc(100vh - 48px);padding:20px;overflow-y:auto;box-shadow:0 18px 55px #0a182a47}.bid-scope-modal>header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-start;gap:18px;padding-bottom:16px;display:flex}.bid-scope-modal h2{margin:0 0 5px;font-size:24px}.bid-scope-modal header p:not(.eyebrow){color:var(--muted);margin:0;font-size:13px}.bid-scope-modal header>a{border:1px solid var(--line);width:36px;height:36px;color:var(--ink);border-radius:4px;flex:0 0 36px;place-items:center;font-size:26px;line-height:1;text-decoration:none;display:grid}.bid-scope-modal .bid-scope-editor{background:0 0;border:0;border-radius:0;width:100%;margin:0;padding:18px 0 0}@media (max-width:560px){.bid-scope-overlay,.bid-scope-modal{padding:16px}}.hero{background:linear-gradient(115deg,#f7fbff 0%,#fff 65%);max-width:1050px;margin:auto;padding:104px 7% 88px}.eyebrow{color:var(--blue);letter-spacing:.1em;margin:0 0 12px;font-size:12px;font-weight:700}.hero h1,.catalogue-header h1{letter-spacing:-.04em;max-width:800px;margin:0 0 22px;font-size:clamp(38px,5vw,64px);line-height:1.02}.lede{max-width:680px;color:var(--muted);font-size:19px;line-height:1.55}.button{background:var(--blue);color:#fff;cursor:pointer;border:0;border-radius:5px;margin-top:12px;padding:13px 19px;font-weight:700;text-decoration:none;display:inline-block}.section{max-width:1120px;margin:auto;padding:38px 7% 70px}.section-heading{border-bottom:1px solid var(--line);justify-content:space-between;align-items:end;margin-bottom:24px;padding-bottom:16px;display:flex}.section-heading h2{margin:0;font-size:30px}.section-heading span{color:var(--muted);font-size:14px}.grid{grid-template-columns:repeat(4,1fr);gap:16px;display:grid}.card{border:1px solid var(--line);border-radius:8px;min-height:190px;padding:20px}.card h3{margin:24px 0 10px}.card p{color:var(--muted);line-height:1.45}.status{color:var(--blue);font-size:12px;font-weight:700}.catalogue-header{justify-content:space-between;align-items:end;max-width:1200px;margin:auto;padding:54px 7% 28px;display:flex}.catalogue-header h1{margin-bottom:8px;font-size:46px}.catalogue-header p:not(.eyebrow){color:var(--muted);margin:0}.catalogue-action{margin-top:0}.catalogue-header-actions{justify-items:end;gap:9px;display:grid}.catalogue-header-actions .button{margin-top:0}.catalogue-manage-link{color:var(--blue);font-size:13px;font-weight:700;text-decoration:none}.catalogue-notice{background:#fff8dc;border:1px solid #ead39a;border-radius:5px;max-width:690px;padding:10px 12px;font-size:13px;font-weight:700;color:#705b18!important;margin-top:14px!important}.catalogue-layout{grid-template-columns:245px 1fr;gap:22px;max-width:1200px;margin:auto;padding:0 7%;display:grid}.sidebar,.table-panel{border:1px solid var(--line);border-radius:8px;overflow:hidden}.sidebar h2{background:var(--wash);margin:0;padding:18px;font-size:17px}.group{border:0;border-top:1px solid var(--line);text-align:left;width:100%;color:var(--ink);cursor:pointer;background:#fff;gap:11px;padding:15px 14px;display:flex}.group span{color:var(--blue);font-weight:700}.group.active{border-left:3px solid var(--blue);background:#eaf2ff}.table-tools{border-bottom:1px solid var(--line);gap:10px;padding:14px;display:flex}.table-tools input{border:1px solid var(--line);border-radius:4px;flex:1;padding:10px}.table-tools button{border:1px solid var(--line);background:#fff;border-radius:4px;padding:0 15px}table{border-collapse:collapse;width:100%}th{background:var(--wash);text-align:left;padding:13px;font-size:12px}td{border-top:1px solid var(--line);padding:15px 13px;font-size:14px}td:first-child{color:var(--blue);font-weight:700}td small{color:var(--muted);margin-top:5px;font-size:12px;display:block}.note{max-width:1200px;color:var(--muted);margin:22px auto;padding:0 7%;font-size:13px}@media (max-width:760px){.grid{grid-template-columns:1fr}.section-heading,.catalogue-header{flex-direction:column;align-items:start;gap:12px}.catalogue-layout{grid-template-columns:1fr}.table-panel{overflow:auto}table{min-width:650px}}.group{cursor:default}.group strong{display:block}.group small{color:var(--muted);margin-top:4px;display:block}.table-tools{color:var(--muted);font-size:14px}.empty{color:var(--muted);margin:0;padding:18px}.empty.large{text-align:center;padding:48px 22px}.code-row td{background:#fafbfd}.forms{grid-template-columns:repeat(3,1fr);gap:18px;max-width:1200px;margin:30px auto;padding:0 7%;display:grid}.forms form{border:1px solid var(--line);border-radius:8px;padding:20px}.forms h2{margin:0 0 17px;font-size:18px}.forms label{margin:10px 0;font-size:12px;font-weight:700;display:block}.forms input,.forms select{border:1px solid var(--line);background:#fff;border-radius:4px;width:100%;margin-top:6px;padding:10px;display:block}.forms button{background:var(--blue);color:#fff;cursor:pointer;border:0;border-radius:4px;margin-top:8px;padding:10px 13px;font-weight:700}.forms button:disabled{opacity:.45;cursor:not-allowed}.form-row{grid-template-columns:1fr 1fr 1fr;gap:7px;display:grid}.cost-code-picker{grid-template-columns:1fr 1fr}@media (max-width:760px){.forms{grid-template-columns:1fr}}.manage{background:var(--wash);border-top:1px solid var(--line);max-width:1200px;margin:52px auto 0;padding:30px 7%}.manage h2{margin:0;font-size:28px}.manage h3{margin:0 0 12px;font-size:16px}.manage-intro{max-width:720px;color:var(--muted);line-height:1.45}.manage .forms{max-width:none;margin:20px 0 0;padding:0}.archive-grid form{background:#fff}.archive-grid button{background:#8f2435}.catalogue-register-heading{border-bottom:1px solid var(--line);padding:18px}.catalogue-register-heading>div{justify-content:space-between;align-items:end;gap:16px;display:flex}.catalogue-register-heading h2{margin:0;font-size:22px}.catalogue-register-heading span{color:var(--muted);font-size:13px}.catalogue-filter{align-items:center;gap:8px;margin-top:15px;display:flex}.catalogue-filter input,.catalogue-filter select{box-sizing:border-box;border:1px solid var(--line);height:36px;color:var(--ink);background:#fff;border-radius:4px;padding:8px}.catalogue-filter input{width:220px}.catalogue-filter select{min-width:210px}.catalogue-filter button{background:var(--blue);color:#fff;cursor:pointer;border:0;border-radius:4px;height:36px;padding:0 11px;font-weight:700}.catalogue-filter a:not(.button){color:var(--blue);font-size:13px;font-weight:700;text-decoration:none}.catalogue-filter .catalogue-new-item{box-sizing:border-box;align-items:center;height:36px;margin:0;padding:0 12px;font-size:13px;display:inline-flex}.catalogue-item-form{grid-template-columns:minmax(360px,640px)}.manage{box-sizing:border-box;max-width:none;padding:0 7%}.manage>summary{cursor:pointer;justify-content:space-between;align-items:center;gap:18px;padding:30px 0;list-style:none;display:flex}.manage>summary::-webkit-details-marker{display:none}.manage>summary p{margin:0 0 8px}.manage>summary h2{font-size:24px}.manage>summary>span:last-child{color:var(--blue);font-size:13px;font-weight:700}.manage[open]>summary>span:last-child{font-size:0}.manage[open]>summary>span:last-child:after{content:"Close";font-size:13px}.manage>div{padding-bottom:32px}.manage>div>.forms{margin-top:0}.catalogue-code{vertical-align:top;min-width:125px;color:var(--blue);background:#fafcff}.catalogue-code strong{display:block}.catalogue-code small{margin-top:4px}.catalogue-items-page .catalogue-header{max-width:none;padding-left:20px;padding-right:20px}.catalogue-items-register{max-width:none;margin:0 auto;padding:0 20px}.catalogue-items-register .table-panel{overflow:auto}.catalogue-items-register table{min-width:980px}.archive-item-button{background:#8f2435!important}.catalogue-item-archive-picker,.catalogue-item-editor{gap:1px;display:grid}.catalogue-management-overlay{z-index:40;background:#0a182a85;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.catalogue-management-backdrop{position:absolute;inset:0}.catalogue-management-modal{border:1px solid var(--line);background:#fff;border-radius:9px;width:min(100%,1040px);max-height:calc(100vh - 48px);position:relative;overflow-y:auto;box-shadow:0 18px 55px #0a182a47}.catalogue-management-modal>header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-start;gap:18px;padding:22px 24px 18px;display:flex}.catalogue-management-modal h2{margin:0 0 7px;font-size:25px}.catalogue-management-modal header p:not(.eyebrow){max-width:660px;color:var(--muted);margin:0;line-height:1.4}.catalogue-management-close{border:1px solid var(--line);width:34px;height:34px;color:var(--ink);border-radius:4px;flex:0 0 34px;place-items:center;font-size:26px;line-height:1;text-decoration:none;display:grid}.catalogue-management-content{padding:20px 24px 26px}.catalogue-management-content .forms{grid-template-columns:repeat(2,minmax(0,1fr));max-width:none;margin:0;padding:0}.catalogue-management-content .manage-records{margin-top:22px}.catalogue-management-content .manage-grid{margin-top:12px}.catalogue-management-content .forms h3{margin:0 0 12px;font-size:16px}.catalogue-management-content .archive-grid{margin-top:12px}.catalogue-management-content .archive-grid button{background:#8f2435}@media (max-width:760px){.catalogue-management-overlay{padding:14px}.catalogue-management-modal>header{padding:18px}.catalogue-management-content{padding:16px}.catalogue-management-content .forms{grid-template-columns:1fr}}.bill-notice{background:#fff8dc;border:1px solid #ead39a;border-radius:5px;max-width:690px;padding:10px 12px;font-size:13px;font-weight:700;color:#705b18!important;margin-top:14px!important}.bill-control-alert{background:#fffaf0;border:1px solid #ead39a;border-left:4px solid #d1a52c;border-radius:6px;margin:0 0 18px;padding:16px 18px}.bill-control-alert-heading{justify-content:space-between;align-items:flex-start;gap:18px;display:flex}.bill-control-alert-heading h2{margin:4px 0 6px;font-size:18px}.bill-control-alert-heading p:not(.eyebrow){max-width:760px;color:var(--muted);margin:0;font-size:13px;line-height:1.45}.bill-control-alert-action{background:var(--blue);color:#fff;white-space:nowrap;border-radius:4px;justify-content:center;align-items:center;min-height:34px;padding:0 12px;font-size:12px;font-weight:700;text-decoration:none;display:inline-flex}.bill-control-alert-list{gap:7px;margin-top:14px;display:grid}.bill-control-item{color:var(--muted);border-top:1px solid #efe1b7;grid-template-columns:minmax(80px,.45fr) minmax(170px,1.25fr) minmax(100px,.65fr) minmax(120px,.7fr) minmax(150px,.8fr);align-items:center;gap:8px 14px;padding-top:9px;font-size:12px;display:grid}.bill-control-item a{color:var(--blue);font-weight:800;text-decoration:none}.bill-control-item span{min-width:0}.bill-control-status{color:#805f00;font-weight:800}@media (max-width:760px){.bill-control-alert-heading{flex-direction:column}.bill-control-item{grid-template-columns:1fr 1fr}.bill-control-item span:nth-last-child(-n+2){text-align:left}}.sidebar .group{text-decoration:none}.sidebar .group.active{border-left:3px solid var(--blue);background:#eaf2ff}.table-tools{justify-content:space-between;align-items:center}.clear-filter{color:var(--blue);font-weight:700;text-decoration:none}.estimate-forms{grid-template-columns:repeat(2,minmax(0,1fr))}.estimate-card{border:1px solid var(--line);border-radius:8px;max-width:1200px;margin:26px auto;overflow:hidden}.estimate-title{background:#f8fbff;justify-content:space-between;gap:20px;padding:22px;display:flex}.estimate-title p:not(.eyebrow){color:var(--muted)}.estimate-totals{gap:22px;display:flex}.estimate-totals span{color:var(--muted);font-size:12px}.estimate-totals strong{color:var(--ink);margin-top:5px;font-size:18px;display:block}.add-line{background:var(--wash);grid-template-columns:minmax(180px,1fr) minmax(220px,1.2fr) minmax(260px,1.5fr) 100px 110px auto;align-items:end;gap:12px;padding:15px;display:grid}.add-line label{color:var(--ink);gap:5px;font-size:12px;font-weight:700;display:grid}.add-line select,.add-line input{border:1px solid var(--line);border-radius:4px;width:100%;padding:9px}.add-line button{background:var(--blue);color:#fff;white-space:nowrap;border:0;border-radius:4px;padding:9px 13px;font-weight:700}.client-estimate-form{grid-template-columns:minmax(360px,620px)}.form-actions{align-items:center;gap:9px;margin-top:12px;display:flex}.form-actions button,.form-actions .secondary-button{margin-top:0}.secondary-button{border:1px solid var(--line);color:var(--ink);background:#fff;border-radius:4px;padding:9px 13px;font-weight:700;text-decoration:none}.edit-record{border-top:1px solid var(--line);padding:14px 22px}.edit-record summary{color:var(--blue);cursor:pointer;font-weight:700}.edit-forms{grid-template-columns:2fr 1fr;gap:18px;margin-top:14px;display:grid}.edit-forms form{border:1px solid var(--line);border-radius:6px;padding:14px}.edit-forms h3{margin:0 0 10px}.edit-forms label{margin:8px 0;font-size:12px;font-weight:700;display:block}.edit-forms input{border:1px solid var(--line);border-radius:4px;width:100%;margin-top:4px;padding:8px;display:block}.edit-forms button{background:var(--blue);color:#fff;border:0;border-radius:4px;padding:9px 13px;font-weight:700}@media (max-width:760px){.estimate-forms,.edit-forms{grid-template-columns:1fr}.estimate-title{flex-direction:column}.estimate-totals{flex-wrap:wrap}.add-line{grid-template-columns:1fr}}.estimate-card td details{margin-right:8px;display:inline-block;position:relative}.estimate-card td details summary{color:var(--blue);cursor:pointer;font-weight:700;display:inline-block}.estimate-card td>form{vertical-align:top;display:inline-block}.estimate-card td details form{z-index:5;border:1px solid var(--line);background:#fff;border-radius:5px;grid-template-columns:78px 78px auto;align-items:end;gap:9px;width:252px;padding:22px 10px 10px;display:grid;position:absolute;top:25px;right:0;box-shadow:0 8px 20px #10203929}.estimate-card td details form:before{content:"Qty                    Mark-up";color:var(--muted);white-space:pre;font-size:11px;font-weight:700;position:absolute;top:7px;left:10px}.line-input{border:1px solid var(--line);border-radius:4px;width:78px;padding:7px}.remove-line{margin-left:2px;color:#8f2435!important;background:#ffe5e9!important;border:1px solid #e7a9b5!important}.estimate-card td details form:before{content:"Qty";left:10px}.estimate-card td details form:after{content:"Mark-up (%)";color:var(--muted);pointer-events:none;font-size:11px;font-weight:700;position:absolute;top:7px;left:97px}.line-input[name=markupPercent]{padding-right:7px}.build-proposal{border-top:1px solid var(--line);padding:14px 22px}.build-proposal button,.proposal-actions button{background:var(--blue);color:#fff;cursor:pointer;border:0;border-radius:4px;padding:10px 14px;font-weight:700}.proposal-link{margin:14px 22px}.proposal-card{border:1px solid var(--line);border-radius:8px;max-width:1200px;margin:26px auto;overflow:hidden}.proposal-heading{background:#f8fbff;justify-content:space-between;align-items:flex-start;gap:20px;padding:22px;display:flex}.proposal-heading h2{margin:10px 0 5px}.proposal-heading p{color:var(--muted);margin:0}.proposal-heading>strong{font-size:27px}.proposal-status{color:#40506a;background:#e4e9f1;border-radius:99px;padding:5px 9px;font-size:11px;font-weight:700;display:inline-block}.proposal-status.sent{color:#805f00;background:#fff0bf}.proposal-status.approved{color:#146338;background:#c9f6dd}.proposal-layout{grid-template-columns:minmax(0,1fr) minmax(290px,.8fr);gap:22px;padding:22px;display:grid}.proposal-form label{margin-bottom:12px;font-size:12px;font-weight:700;display:block}.proposal-form input,.proposal-form textarea{border:1px solid var(--line);width:100%;font:inherit;border-radius:4px;margin-top:5px;padding:10px;display:block}.proposal-form textarea{resize:vertical;min-height:120px}.proposal-form button{background:var(--blue);color:#fff;border:0;border-radius:4px;padding:10px 14px;font-weight:700}.proposal-preview{border:1px solid var(--line);background:var(--wash);border-radius:6px;padding:20px}.proposal-preview h3{margin:0 0 8px}.proposal-preview p{color:var(--muted);line-height:1.45}.proposal-preview div{border-top:1px solid var(--line);margin-top:24px;padding-top:14px}.proposal-preview span{color:var(--muted);font-size:12px;display:block}.proposal-preview strong{margin-top:4px;font-size:25px;display:block}.preview-note{font-size:12px}.proposal-actions{background:var(--wash);border-top:1px solid var(--line);padding:14px 22px}.proposal-actions p{color:#146338;margin:0;font-weight:700}.estimate-next-step-actions{flex-wrap:wrap;align-items:center;gap:8px 10px;width:100%;display:flex}.estimate-next-step-actions form,.estimate-revision-follow-up form{margin:0}.estimate-next-step-actions .build-proposal{border:0;flex-wrap:wrap;align-items:end;gap:8px;padding:0;display:flex}.estimate-document-profile{color:var(--muted);gap:4px;font-size:11px;font-weight:700;display:grid}.estimate-document-profile select{box-sizing:border-box;border:1px solid var(--line);min-height:36px;color:var(--ink);font:inherit;background:#fff;border-radius:4px;padding:0 10px;font-size:13px;font-weight:400}.estimate-next-step-actions .build-proposal button,.estimate-next-step-actions .estimate-revision-action button,.estimate-revision-follow-up .estimate-revision-action button{box-sizing:border-box;white-space:nowrap;border-radius:4px;justify-content:center;align-items:center;min-height:36px;margin:0;padding:0 12px;font-size:13px;font-weight:700;line-height:1;display:inline-flex}.estimate-next-step-actions .build-proposal button{background:var(--blue);color:#fff;border:0;height:36px}.estimate-next-step-actions .estimate-revision-action button,.estimate-revision-follow-up .estimate-revision-action button{border:1px solid var(--line);height:36px;color:var(--blue);background:#fff}.estimate-next-step-help{flex-basis:100%;font-size:12px;line-height:1.4;color:var(--muted)!important;margin:0!important;font-weight:400!important}.estimate-revision-follow-up{flex-wrap:wrap;align-items:center;gap:8px;width:100%;display:flex}.estimate-revision-follow-up .estimate-next-step-help{flex-basis:auto}@media (max-width:760px){.proposal-layout{grid-template-columns:1fr}.proposal-heading{flex-direction:column}}.budget-card{border:1px solid var(--line);border-radius:8px;max-width:1200px;margin:26px auto;overflow:visible}.budget-heading{background:#f8fbff;justify-content:space-between;gap:20px;padding:22px;display:flex}.budget-heading h2{margin:0 0 5px}.budget-heading p:not(.eyebrow){color:var(--muted);margin:0}.budget-summary{grid-template-columns:repeat(7,minmax(0,1fr));gap:12px;min-width:min(100%,680px);display:grid}.budget-summary span{color:var(--muted);white-space:nowrap;font-size:12px}.budget-summary strong{color:var(--ink);white-space:nowrap;margin-top:5px;font-size:17px;display:block}.budget-table td:first-child{color:var(--ink)}.budget-card .table-panel{overflow:visible}.budget-table td details{position:relative}.budget-table summary{color:var(--blue);cursor:pointer;font-weight:700}.budget-table details form{z-index:5;border:1px solid var(--line);background:#fff;border-radius:5px;width:235px;padding:12px;position:absolute;bottom:22px;right:0;box-shadow:0 8px 20px #10203929}.budget-table details label{color:var(--muted);margin-bottom:8px;font-size:11px;font-weight:700;display:block}.budget-table details input,.budget-table details select{border:1px solid var(--line);border-radius:4px;width:100%;margin-top:3px;padding:7px;display:block}.budget-table details button{background:var(--blue);color:#fff;border:0;border-radius:4px;padding:8px 11px;font-weight:700}.budget-table tfoot{background:var(--wash)}.budget-table tfoot th{font-size:14px}.budget-cost-category-row th{border-top:2px solid var(--line);color:var(--ink);text-align:left;background:#f5f8fc;padding:0;position:relative}.budget-cost-category-row strong{font-size:13px}.budget-cost-category-row small{color:var(--muted);margin-left:10px;font-size:11px;font-weight:400}.budget-cost-category-control{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;margin:-1px;position:absolute;overflow:hidden}.budget-cost-category-toggle{min-height:22px;color:var(--ink);cursor:pointer;align-items:center;padding:11px 13px;display:flex}.budget-category-arrow-open,.budget-category-arrow-closed{width:20px;height:22px;color:var(--blue);flex:0 0 20px;place-items:center;margin-right:5px;font-size:16px;font-weight:700;line-height:1;display:inline-grid}.budget-category-arrow-closed{display:none}.budget-cost-category-control:focus-visible+.budget-cost-category-toggle{outline:2px solid var(--blue);outline-offset:-2px}.budget-cost-category:has(.budget-cost-category-control:not(:checked)) .budget-category-arrow-open{display:none}.budget-cost-category:has(.budget-cost-category-control:not(:checked)) .budget-category-arrow-closed{display:inline-grid}.budget-cost-category:has(.budget-cost-category-control:not(:checked)) .budget-cost-code-row{display:none}.budget-cost-code-row td:first-child{color:var(--ink);white-space:nowrap}.budget-cost-code-row td:first-child strong{color:var(--blue)}.budget-line-actions{white-space:nowrap;align-items:center;gap:8px;display:inline-flex}.budget-line-order-actions{vertical-align:middle;align-items:center;gap:3px;margin-right:0;display:inline-flex}.budget-line-order-actions form{margin:0;display:inline-flex}.budget-line-order-button{box-sizing:border-box;border:1px solid var(--line);width:25px;height:25px;min-height:25px;color:var(--blue);cursor:pointer;background:#fff;border-radius:4px;justify-content:center;align-items:center;margin:0;padding:0;font-size:14px;font-weight:700;line-height:1;display:inline-flex}.budget-line-order-button:hover:not(:disabled){border-color:var(--blue);background:var(--blue-soft,#eef3ff)}.budget-line-order-button:disabled{opacity:.45;cursor:not-allowed}.budget-register-page .catalogue-header{max-width:none;padding-left:20px;padding-right:20px}.budget-register{max-width:none;margin:34px auto;padding:0 20px}.budget-register-count{color:var(--muted);margin:0 0 12px;font-size:13px}.budget-register .table-panel{overflow:auto}.budget-register table{min-width:1320px}.budget-register-table th a{color:inherit;white-space:nowrap;text-decoration:none}.budget-register-table th a:hover{color:var(--blue)}.budget-project-id{color:var(--ink);white-space:nowrap;font-weight:700}.budget-project-name strong{display:block}.budget-open-link{white-space:nowrap;margin:0;padding:8px 11px}.budget-updated{color:var(--muted);font-variant-numeric:tabular-nums;white-space:nowrap;font-size:12px}.budget-variation-row td{background:#fcfbf6}.budget-variation{color:#805f00;vertical-align:middle;background:#fff0bf;border-radius:99px;margin-left:7px;padding:3px 6px;font-size:10px;font-weight:700;display:inline-block}.budget-detail-page .catalogue-header{box-sizing:border-box;max-width:none;margin:0;padding-left:32px;padding-right:32px}.budget-detail-page .budget-card{max-width:none;margin:26px 32px}.budget-contract-selector{border:1px solid var(--line);background:#f8fbff;border-radius:8px;margin:26px 32px;padding:18px 22px}.budget-contract-selector h2{margin:0 0 4px}.budget-contract-selector p:not(.eyebrow){color:var(--muted)}.budget-contract-selector-list{flex-wrap:wrap;gap:10px;margin-top:14px;display:flex}.budget-contract-selector-list a{border:1px solid var(--line);min-width:210px;color:var(--ink);background:#fff;border-radius:6px;flex-direction:column;gap:3px;padding:11px 13px;text-decoration:none;display:flex}.budget-contract-selector-list a:hover,.budget-contract-selector-list a.active{border-color:var(--blue);box-shadow:0 0 0 2px #234c7d1f}.budget-contract-selector-list span{color:var(--muted);font-size:12px}.budget-detail-page .purchase-order-form{grid-template-columns:minmax(180px,1.25fr) minmax(265px,1.7fr) minmax(180px,1.25fr) minmax(105px,.7fr) minmax(150px,.9fr) auto auto}.over-budget{font-weight:800;color:#a7283b!important}@media (max-width:760px){.budget-heading{flex-direction:column}.budget-summary{grid-template-columns:repeat(2,1fr)}}.purchase-order-form{background:var(--wash);border-top:1px solid var(--line);grid-template-columns:minmax(180px,1.35fr) minmax(265px,2fr) minmax(160px,1.35fr) minmax(100px,.75fr) minmax(145px,1fr) auto auto;align-items:end;gap:9px;padding:18px 22px;display:grid}.purchase-order-form h3{grid-column:1/-1;margin:0;font-size:16px}.purchase-order-form input,.purchase-order-form select{border:1px solid var(--line);border-radius:4px;width:100%;min-width:0;padding:9px}.purchase-order-form button,.purchase-order-entry button{background:var(--blue);color:#fff;cursor:pointer;border:0;border-radius:4px;padding:9px 12px;font-weight:700}.new-supplier-bill-link{box-sizing:border-box;border:1px solid var(--line);min-height:36px;color:var(--blue);white-space:nowrap;background:#fff;border-radius:4px;justify-content:center;align-items:center;padding:8px 12px;font-size:13px;font-weight:700;text-decoration:none;display:inline-flex}.purchase-order-entry{color:var(--muted);margin-top:6px;font-size:11px}.purchase-order-entry form{margin-left:6px;display:inline-block}.purchase-order-entry button{padding:3px 6px;font-size:10px}.po-date-field{color:var(--muted);font-size:11px;font-weight:700;display:block}.po-date-field small{margin-left:3px;font-weight:400}.po-date-field input{margin-top:4px}.purchase-order-edit-link{color:var(--blue);margin-left:6px;font-size:10px;font-weight:700;text-decoration:none}.purchase-order-edit-overlay .trade-overlay-card{width:min(100%,620px);max-height:calc(100vh - 48px);overflow-y:auto}.purchase-order-edit-overlay .trade-overlay-card input,.purchase-order-edit-overlay .trade-overlay-card select{box-sizing:border-box;border:1px solid var(--line);width:100%;min-height:40px;color:var(--ink);font:inherit;background:#fff;border-radius:4px;padding:9px 10px}.purchase-order-edit-overlay .form-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.purchase-order-edit-overlay .trade-overlay-actions{gap:8px;margin-top:4px}.purchase-order-edit-overlay .trade-overlay-actions button,.purchase-order-edit-overlay .trade-overlay-actions a{box-sizing:border-box;border-radius:4px;justify-content:center;align-items:center;min-height:36px;padding:8px 12px;font-size:13px;font-weight:700;text-decoration:none;display:inline-flex}.purchase-order-edit-overlay .trade-overlay-actions button{background:var(--blue);color:#fff;cursor:pointer;border:0}.purchase-order-edit-overlay .trade-overlay-actions a{border:1px solid var(--line);color:var(--blue);background:#fff}@media (max-width:560px){.purchase-order-edit-overlay .form-row{grid-template-columns:1fr}}.purchase-order-header-fields{grid-column:1/-1;grid-template-columns:minmax(180px,1fr) minmax(220px,1.4fr) minmax(145px,.7fr);gap:12px;display:grid}.purchase-order-header-fields label{color:var(--muted);font-size:11px;font-weight:700;display:block}.purchase-order-header-fields input,.purchase-order-header-fields select{box-sizing:border-box;min-height:36px;font:inherit;margin-top:4px;display:block}.purchase-order-lines-editor{border:1px solid var(--line);background:#fff;border-radius:6px;grid-column:1/-1;min-width:0;margin:0;padding:14px}.purchase-order-lines-editor legend{color:var(--ink);padding:0 5px;font-size:13px;font-weight:800}.purchase-order-lines-editor .form-help{margin:0 0 12px}.purchase-order-line-heading,.purchase-order-line-row{grid-template-columns:minmax(150px,1.25fr) minmax(170px,1.4fr) 70px 75px 105px 105px 28px;align-items:center;gap:8px;display:grid}.purchase-order-line-heading{color:var(--muted);text-transform:uppercase;margin-bottom:5px;font-size:10px;font-weight:800}.purchase-order-line-row{margin-top:7px}.purchase-order-line-row input,.purchase-order-line-row select{box-sizing:border-box;border:1px solid var(--line);width:100%;min-width:0;min-height:34px;color:var(--ink);font:inherit;background:#fff;border-radius:4px;padding:7px 8px}.purchase-order-line-total{color:var(--ink);white-space:nowrap;font-size:12px;font-weight:700}.purchase-order-line-remove,.purchase-order-line-add{border:1px solid var(--line);color:var(--blue);cursor:pointer;background:#fff;border-radius:4px;font-weight:800}.purchase-order-line-remove{width:28px;height:28px;padding:0;font-size:17px;line-height:1}.purchase-order-line-remove:disabled{cursor:not-allowed;opacity:.4}.purchase-order-line-add{min-height:32px;padding:6px 10px}.purchase-order-lines-footer{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;margin-top:14px;padding-top:12px;display:flex}.purchase-order-lines-footer strong{color:var(--ink);font-size:13px}.purchase-order-lines-footer output{margin-left:8px;font-size:16px}.purchase-order-form-actions{flex-wrap:wrap;grid-column:1/-1;align-items:center;gap:8px;display:flex}.purchase-order-view-link{color:var(--blue);margin-left:5px;font-size:10px;font-weight:700;text-decoration:none}.purchase-order-edit-overlay .purchase-order-lines-editor{margin-top:5px}.purchase-order-document{border:1px solid var(--line);background:#fff;max-width:1000px;margin:0 auto;padding:34px;box-shadow:0 8px 26px #10203914}.purchase-order-document-actions{justify-content:space-between;align-items:center;gap:12px;margin-bottom:28px;display:flex}.purchase-order-document-header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-start;gap:20px;padding-bottom:22px;display:flex}.purchase-order-document-header h1{margin:6px 0}.purchase-order-document-header p:not(.eyebrow){color:var(--muted);margin:0}.purchase-order-document-status{color:#40506a;background:#e4e9f1;border-radius:99px;padding:7px 11px;font-size:11px;display:inline-flex}.purchase-order-document-meta{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 32px;margin:24px 0;display:grid}.purchase-order-document-meta div{min-width:0}.purchase-order-document-meta dt{color:var(--muted);text-transform:uppercase;font-size:11px;font-weight:700}.purchase-order-document-meta dd{color:var(--ink);margin:5px 0 0;font-weight:700}.purchase-order-document-table{width:100%;min-width:0}.purchase-order-document-table th,.purchase-order-document-table td{border-bottom:1px solid var(--line);text-align:left;padding:11px 10px}.purchase-order-document-table th:nth-last-child(-n+2),.purchase-order-document-table td:nth-last-child(-n+2){text-align:right}.purchase-order-document-table tfoot th{border-bottom:0;font-size:15px}.purchase-order-document-note{color:var(--muted);margin:24px 0 0;font-size:12px;line-height:1.5}.purchase-order-print-button{border:1px solid var(--line);min-height:36px;color:var(--blue);cursor:pointer;background:#fff;border-radius:4px;padding:0 12px;font-weight:700}@media (max-width:900px){.purchase-order-line-heading{display:none}.purchase-order-line-row{grid-template-columns:minmax(150px,1fr) minmax(150px,1fr) 70px 75px 105px 105px 28px}.purchase-order-header-fields{grid-template-columns:1fr 1fr}.purchase-order-header-fields .po-date-field{grid-column:1/-1}}@media (max-width:620px){.purchase-order-line-row{grid-template-columns:1fr 1fr}.purchase-order-line-row>:first-child,.purchase-order-line-row>:nth-child(2){grid-column:span 2}.purchase-order-line-total{justify-self:start}.purchase-order-document-page{padding:12px}.purchase-order-document{padding:20px}.purchase-order-document-meta,.purchase-order-delivery-meta{grid-template-columns:1fr}.purchase-order-document-header{flex-direction:column}.purchase-order-document-table{font-size:12px}.purchase-order-header-fields{grid-template-columns:1fr}.purchase-order-header-fields .po-date-field{grid-column:auto}}@media print{.purchase-order-document-page{background:#fff;padding:0}.purchase-order-document{max-width:none;box-shadow:none;border:0;padding:0}.purchase-order-document-actions{display:none}.purchase-order-document-note{color:#555}}@media (max-width:760px){.budget-detail-page .catalogue-header{padding-left:16px;padding-right:16px}.budget-detail-page .budget-card{margin-left:16px;margin-right:16px}.purchase-order-form{grid-template-columns:1fr}}.purchase-order-revision-history h2{margin:0 0 12px;font-size:18px}.purchase-order-revision-history .purchase-order-document-table th,.purchase-order-revision-history .purchase-order-document-table td{padding:8px 10px;font-size:12px}.purchase-order-revision-history .purchase-order-document-table th:nth-last-child(-n+2),.purchase-order-revision-history .purchase-order-document-table td:nth-last-child(-n+2){text-align:left}.bill-form{grid-template-columns:minmax(320px,560px)}.bill-page .catalogue-header{max-width:none;padding-left:20px;padding-right:20px}.bill-list{max-width:none;margin:34px auto;padding:0 20px}.bill-list h2{font-size:24px}.bill-list form button{background:var(--blue);color:#fff;border:0;border-radius:4px;padding:8px 11px;font-weight:700}.bill-list-heading{margin-bottom:16px;display:block}.bill-filter{flex-wrap:wrap;align-items:center;gap:8px;width:100%;margin-top:12px;display:flex}.bill-filter select,.bill-filter input{border:1px solid var(--line);background:#fff;border-radius:4px;height:34px;padding:7px 9px}.bill-filter input{min-width:150px}.bill-filter a{color:var(--blue);font-size:13px;font-weight:700;text-decoration:none}.show-limit{color:var(--muted);align-items:center;gap:5px;font-size:12px;font-weight:700;display:flex}.bill-summary-chips{flex-wrap:wrap;gap:7px;margin:0;display:flex}.bill-summary-chips span{color:#40506a;background:#e4e9f1;border-radius:99px;padding:4px 8px;font-size:11px;font-weight:700}.bill-summary-chips .bill-overdue-chip{color:#8f2435;background:#ffe5e9}.record-limit-note{color:var(--muted);font-size:13px}.bill-status{color:#40506a;text-align:center;white-space:nowrap;background:#e4e9f1;border-radius:99px;width:116px;padding:5px 9px;font-size:11px;font-weight:700;display:inline-block}.bill-status.approved{color:#805f00;background:#fff0bf}.bill-status.paid{color:#146338;background:#c9f6dd}.bill-status.void{color:#8f2435;background:#ffe5e9}@media (max-width:760px){.bill-filter{flex-wrap:wrap}}.invoice-header-summary{justify-items:end;gap:9px;display:grid}.invoice-register-link{color:var(--blue);font-size:13px;font-weight:700;text-decoration:none}.invoice-register-link:hover{text-decoration:underline}.invoice-summary{border:1px solid var(--line);background:var(--wash);border-radius:8px;gap:8px;padding:12px;display:flex}.invoice-page .list-heading{flex-wrap:wrap}.invoice-page .invoice-filter{flex-wrap:wrap;flex:1}.invoice-filter .invoice-new-button{box-sizing:border-box;background:var(--blue);color:#fff;white-space:nowrap;border-radius:4px;align-items:center;height:36px;min-height:36px;padding:0 13px;font-size:13px;font-weight:700;line-height:1;text-decoration:none;display:inline-flex}.invoice-filter .invoice-register-link{padding:9px 4px}.invoice-page .catalogue-header{max-width:none;padding-left:20px;padding-right:20px}.column-sort{color:var(--ink);white-space:nowrap;text-decoration:none;display:inline-block}.column-sort:hover{color:var(--blue)}.list-heading{justify-content:space-between;align-items:center;gap:14px;margin-bottom:12px;display:flex}.list-heading h2{margin:0}.invoice-filter{align-items:end;gap:8px;display:flex}.invoice-filter label{color:var(--muted);gap:4px;font-size:12px;font-weight:700;display:grid}.invoice-filter select{border:1px solid var(--line);background:#fff;border-radius:4px;min-width:130px;padding:8px 9px}.invoice-filter input{border:1px solid var(--line);min-width:150px;font:inherit;background:#fff;border-radius:4px;padding:8px 9px}.invoice-filter button{background:var(--blue);color:#fff;cursor:pointer;border:0;border-radius:4px;padding:9px 13px;font-weight:700}.invoice-filter-error{color:#8f2435;margin:0 0 16px;font-size:13px;font-weight:700}.bill-list .table-panel{overflow:visible}.bill-list .inline-editor>form{z-index:30;width:min(320px,100vw - 40px);max-height:calc(100vh - 40px);position:fixed;top:50%;left:50%;right:auto;overflow-y:auto;transform:translate(-50%,-50%)}.invoice-summary span{min-width:104px;color:var(--muted);padding:2px 10px;font-size:12px}.invoice-summary span+span{border-left:1px solid var(--line)}.invoice-summary strong{color:var(--ink);margin-top:5px;font-size:18px;display:block}.invoice-actions{gap:7px;display:flex}.bill-action-spacer{width:26px;display:block}.bill-payment-blocked{min-height:34px;color:var(--muted);white-space:nowrap;align-items:center;font-size:11px;font-weight:700;display:inline-flex}.invoice-actions form{margin:0}.invoice-actions button{white-space:nowrap;height:34px;margin:0!important}.invoice-page .invoice-actions{white-space:nowrap;align-items:center;gap:7px;min-width:max-content;display:inline-flex}.invoice-page .invoice-actions form,.invoice-page .invoice-actions .inline-editor{flex:none}.invoice-page .invoice-actions .inline-editor summary{box-sizing:border-box;white-space:nowrap;justify-content:center;align-items:center;min-height:34px;padding:0 10px;display:inline-flex}.invoice-page .table-panel th:last-child,.invoice-page .table-panel td:last-child{white-space:nowrap;width:150px;min-width:150px}.invoice-status{color:#40506a;background:#e4e9f1;border-radius:99px;padding:5px 9px;font-size:11px;font-weight:700;display:inline-block}.invoice-status.sent{color:#805f00;background:#fff0bf}.invoice-status.paid{color:#146338;background:#c9f6dd}.invoice-status.void{color:#8f2435;background:#ffe5e9}.schedule-form{grid-template-columns:minmax(360px,680px)}.schedule-panel,.schedule-list{max-width:1200px;margin:32px auto;padding:0 7%}.schedule-heading,.schedule-list-heading{justify-content:space-between;align-items:end;margin-bottom:14px;display:flex}.schedule-heading h2,.schedule-list h2{margin:0;font-size:24px}.schedule-heading p,.schedule-heading span{color:var(--muted);margin:5px 0 0;font-size:14px}.gantt{border:1px solid var(--line);border-radius:8px;grid-template-columns:340px 1fr;display:grid;overflow:hidden}.gantt-axis-label,.gantt-date-axis{border-bottom:1px solid var(--line);min-height:32px;color:var(--muted);background:#f7f9fc;font-size:11px;font-weight:700}.gantt-axis-label{align-items:center;padding:0 12px;display:flex}.gantt-date-axis{grid-template-columns:repeat(7,1fr);display:grid}.gantt-date-axis span{border-right:1px solid var(--line);white-space:nowrap;justify-content:center;align-items:center;padding:0 4px;display:flex}.gantt-date-axis span:last-child{border-right:0}.gantt-label{border-bottom:1px solid var(--line);background:#fff;align-items:center;gap:9px;min-height:64px;padding:11px 12px;display:flex}.gantt-label:last-child,.gantt-row:last-child{border-bottom:0}.gantt-label>div{flex:1;min-width:0}.gantt-label strong,.gantt-label small{display:block}.gantt-label small{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;margin-top:4px;font-size:11px;overflow:hidden}.gantt-label form button{border:1px solid var(--line);color:var(--blue);cursor:pointer;background:#fff;border-radius:4px;padding:6px 8px;font-weight:700}.gantt-chart{border-left:1px solid var(--line);background:repeating-linear-gradient(90deg,#fff 0 calc(14.285% - 1px),#edf1f7 calc(14.285% - 1px) 14.285%)}.gantt-row{border-bottom:1px solid var(--line);min-height:64px;position:relative}.gantt-bar{white-space:nowrap;text-overflow:ellipsis;color:#fff;border-radius:3px;min-height:24px;padding:5px 8px;font-size:11px;font-weight:700;position:absolute;top:20px;overflow:hidden}.gantt-bar.blue,.schedule-dot.blue{background:#2074db}.gantt-bar.teal,.schedule-dot.teal{background:#12a8a0}.gantt-bar.orange,.schedule-dot.orange{background:#e98617}.gantt-bar.pink,.schedule-dot.pink{background:#d85c80}.gantt-bar.navy,.schedule-dot.navy{background:#243f7a}.gantt-bar.complete{opacity:.45;text-decoration:line-through}.schedule-dot{border-radius:50%;flex:0 0 10px;height:10px}.schedule-list{padding-bottom:48px}.schedule-list h2{margin-bottom:0}.schedule-list-tools{align-items:end;gap:8px;display:flex}.schedule-list-tools label{color:var(--muted);gap:4px;font-size:12px;font-weight:700;display:grid}.schedule-list-tools select{border:1px solid var(--line);min-width:235px;font:inherit;background:#fff;border-radius:4px;padding:8px 10px}.schedule-list-tools button{background:var(--blue);color:#fff;cursor:pointer;border:0;border-radius:4px;padding:9px 13px;font-weight:700}.schedule-list th a{color:var(--ink);text-decoration:none}@media (max-width:760px){.gantt{grid-template-columns:1fr}.gantt-chart{display:none}.gantt-label{min-height:72px}.schedule-heading{flex-direction:column;align-items:start;gap:5px}}.daily-log-form{grid-template-columns:minmax(360px,680px)}.daily-log-form textarea{border:1px solid var(--line);resize:vertical;width:100%;min-height:76px;font:inherit;border-radius:4px;margin-top:6px;padding:10px;display:block}.daily-log-list{max-width:1200px;margin:32px auto;padding:0 7% 60px}.daily-log-list h2{margin:0 0 16px;font-size:24px}.log-grid{grid-template-columns:repeat(3,1fr);gap:16px;display:grid}.log-card{border:1px solid var(--line);border-radius:8px;padding:18px}.log-card h3{margin:0 0 18px}.log-card p{color:var(--muted);white-space:pre-wrap;line-height:1.45}.log-card strong{color:var(--ink)}@media (max-width:760px){.log-grid{grid-template-columns:1fr}}.selection-form{grid-template-columns:minmax(360px,700px)}.selection-form textarea{border:1px solid var(--line);resize:vertical;width:100%;min-height:76px;font:inherit;border-radius:4px;margin-top:6px;padding:10px;display:block}.selection-list{max-width:1200px;margin:32px auto;padding:0 7% 60px}.selection-list h2{margin:0 0 16px;font-size:24px}.selection-grid{grid-template-columns:repeat(3,1fr);gap:16px;display:grid}.selection-card{border:1px solid var(--line);border-radius:8px;padding:18px}.selection-card-heading{justify-content:space-between;align-items:center;gap:10px;display:flex}.selection-card-heading small,.selection-job{color:var(--muted)}.selection-card h3{margin:14px 0 7px}.selection-card p{color:var(--muted);line-height:1.45}.selection-prices{border-top:1px solid var(--line);border-bottom:1px solid var(--line);grid-template-columns:1fr 1fr;padding:13px 0;display:grid}.selection-prices span{color:var(--muted);font-size:12px}.selection-prices strong{color:var(--ink);margin-top:4px;font-size:16px;display:block}.variance{font-weight:700}.variance.over{color:#a1394e}.variance.under{color:#146338}.selection-actions{gap:8px;display:flex}.selection-actions button{background:var(--blue);color:#fff;cursor:pointer;border:0;border-radius:4px;padding:8px 11px;font-weight:700}@media (max-width:760px){.selection-grid{grid-template-columns:1fr}}.change-order-form{grid-template-columns:minmax(360px,700px)}.change-order-form textarea{border:1px solid var(--line);resize:vertical;width:100%;min-height:76px;font:inherit;border-radius:4px;margin-top:6px;padding:10px;display:block}.change-order-list{max-width:1200px;margin:32px auto;padding:0 7% 60px}.change-order-list-heading{justify-content:space-between;align-items:center;gap:14px;margin-bottom:16px;display:flex}.change-order-list-heading span{color:var(--muted);margin-top:4px;font-size:13px;display:block}.change-order-list h2{margin:0;font-size:24px}.change-order-list>.lead-filter{margin:0 0 16px}.change-order-list form button{background:var(--blue);color:#fff;border:0;border-radius:4px;padding:8px 11px;font-weight:700}.change-order-list td strong a{color:var(--ink);text-decoration:none}.change-order-list td strong a:hover{color:var(--blue);text-decoration:underline}.change-order-actions{gap:7px;display:flex}.todo-form{grid-template-columns:minmax(360px,620px)}.todo-list{max-width:1200px;margin:32px auto;padding:0 7% 60px}.todo-list-heading{justify-content:space-between;align-items:center;margin-bottom:14px;display:flex}.todo-list-heading h2{margin:0;font-size:24px}.todo-list-heading span{color:var(--muted)}.todo-list form button{background:var(--blue);color:#fff;border:0;border-radius:4px;padding:8px 11px;font-weight:700}.todo-complete{opacity:.55}.todo-complete td:nth-child(2){text-decoration:line-through}.todo-state{color:#40506a;background:#e4e9f1;border-radius:99px;padding:4px 7px;font-size:11px;font-weight:700;display:inline-block}.todo-state.overdue{color:#8f2435;background:#ffe5e9}.todo-state.complete{color:#146338;background:#c9f6dd}.todo-filter{align-items:center;gap:8px;display:flex}.todo-filter select{border:1px solid var(--line);min-width:145px;height:36px;color:var(--ink);background:#fff;border-radius:4px;padding:8px}.todo-filter a{color:var(--blue);font-size:13px;font-weight:700;text-decoration:none}@media (max-width:760px){.todo-list-heading{flex-direction:column;align-items:flex-start;gap:10px}.todo-filter{flex-wrap:wrap}}.todo-summary{flex-wrap:wrap;gap:8px;margin:12px 0 16px;display:flex}.todo-summary a{color:#40506a;background:#e4e9f1;border-radius:99px;padding:4px 8px;font-size:11px;font-weight:700;text-decoration:none;display:inline-block}.todo-summary a:hover{color:#146c6a;background:#d8f7f6}.todo-list th a{color:var(--ink);text-decoration:none}.todo-list th a:hover{color:var(--blue)}.todo-actions .inline-editor>form{z-index:40;width:min(360px,100vw - 40px);max-height:calc(100vh - 40px);position:fixed;top:50%;left:50%;right:auto;overflow-y:auto;transform:translate(-50%,-50%)}.todo-overlay .trade-overlay-card{width:min(100%,560px);max-height:calc(100vh - 48px);overflow-y:auto}.todo-overlay input,.todo-overlay select{box-sizing:border-box;border:1px solid var(--line);width:100%;font:inherit;background:#fff;border-radius:4px;padding:10px}.todo-overlay .form-row{grid-template-columns:1fr 1fr;gap:14px;display:grid}.todo-filter{margin-top:16px}.todo-filter .todo-new-item{color:#fff;margin-top:0}@media (min-width:901px){.todo-filter{grid-template-columns:minmax(250px,1fr) minmax(160px,.55fr) auto auto auto;display:grid}.todo-filter select{box-sizing:border-box;width:100%;min-width:0}.todo-filter .todo-new-item{grid-column:-1}}@media (max-width:900px){.todo-filter{flex-wrap:wrap}.todo-filter .todo-new-item{width:max-content}}.todo-register{max-width:none;padding-left:clamp(22px,3vw,48px);padding-right:clamp(22px,3vw,48px)}.todo-register .table-panel{overflow-x:auto}.todo-register table{width:100%;min-width:1250px}.todo-register th:nth-child(2),.todo-register td:nth-child(2){min-width:230px}.todo-register .todo-timestamp{min-width:145px;color:var(--muted);font-variant-numeric:tabular-nums;font-size:12px;line-height:1.35}.todo-register-page .catalogue-header{max-width:none;padding-left:clamp(22px,3vw,48px);padding-right:clamp(22px,3vw,48px)}.todo-list-heading{margin-bottom:16px;display:block}.todo-list-heading>div:first-child span{color:var(--muted);font-size:13px}.todo-filter{flex-wrap:wrap;align-items:center;gap:8px;width:100%;margin-top:0;display:flex}.todo-filter input,.todo-filter select{box-sizing:border-box;border:1px solid var(--line);width:auto;height:36px;color:var(--ink);font:inherit;background:#fff;border-radius:4px;padding:8px 10px}.todo-filter select[name=jobId]{flex:0 390px;width:min(390px,100%);min-width:280px}.todo-filter input[name=query]{flex:0 210px;width:min(210px,100%);min-width:180px}.todo-filter select[name=status]{flex:0 135px;width:135px;min-width:135px}.todo-filter .register-filter-actions{margin-left:auto}.todo-filter .todo-new-item{color:#fff;white-space:nowrap;margin-top:0}@media (max-width:900px){.todo-filter .register-filter-actions{margin-left:0}}.todo-overlay .trade-overlay-actions{margin-top:4px}.todo-overlay .trade-overlay-actions button,.todo-overlay .trade-overlay-actions a{box-sizing:border-box;border-radius:4px;justify-content:center;align-items:center;min-height:36px;padding:8px 12px;font-size:13px;font-weight:700;text-decoration:none;display:inline-flex}.todo-overlay .trade-overlay-actions button{background:var(--blue);color:#fff;cursor:pointer;border:0}.todo-overlay .trade-overlay-actions a{border:1px solid var(--line);color:var(--blue);background:#fff}.question-list-heading{margin-bottom:22px}.question-list-heading span{margin-top:7px;display:block}.question-list-heading .question-new-item{margin-top:14px;display:inline-flex}.question-card .question-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.question-card .question-actions form{margin:0}.question-card .question-actions button,.question-card .question-actions .inline-editor summary{box-sizing:border-box;white-space:nowrap;border-radius:4px;justify-content:center;align-items:center;min-height:36px;margin:0;padding:8px 12px;font-size:13px;font-weight:700;display:inline-flex}.question-card .question-actions button{background:var(--blue);color:#fff;cursor:pointer;border:0}.question-card .question-actions button.remove-line{border:1px solid #e7a9b5;color:#8f2435!important;background:#fff!important}.question-card .question-actions .inline-editor summary{border:1px solid var(--line);color:var(--blue);cursor:pointer;background:#fff;list-style:none}.question-card .question-actions .inline-editor summary::-webkit-details-marker{display:none}.trade-forms{grid-template-columns:repeat(2,minmax(0,1fr))}.trade-single-form{grid-template-columns:minmax(360px,700px)}.trade-contact-fields{grid-template-columns:1fr 1fr;gap:0 8px;display:grid}.trade-list{max-width:none;margin:32px auto;padding:0 20px 60px}.trade-list-heading{flex-direction:column;align-items:flex-start;gap:12px;margin-bottom:14px;display:flex}.trade-list-heading h2{margin:0;font-size:24px}.trade-list-heading span{color:var(--muted);margin-top:4px;display:block}.trade-register-filter{flex-wrap:wrap;justify-content:flex-start}.trade-list td:first-child{color:var(--ink)}.trade-list th:nth-child(3),.trade-list td:nth-child(3){min-width:145px}.trade-actions{align-items:start;gap:7px;display:flex}.trade-actions form{margin:0}.trade-actions button{white-space:nowrap;background:var(--blue);color:#fff;border:0;border-radius:4px;height:34px;padding:8px 11px;font-weight:700;margin:0!important}.trade-actions button:disabled{opacity:.45;cursor:not-allowed}.job-chip{color:#146c6a;background:#d8f7f6;border-radius:99px;margin:2px 4px 2px 0;padding:4px 7px;font-size:11px;font-weight:700;text-decoration:none;display:inline-block}.trade-list .table-panel{overflow-x:auto}.trade-list~*{min-width:0}.catalogue-header-actions{justify-content:flex-end;align-items:center;gap:14px;display:flex}.catalogue-header-actions .catalogue-manage-link{white-space:nowrap}.trade-archived{opacity:.58}.archived-label{color:#40506a;background:#e4e9f1;border-radius:99px;margin:5px 0 0;padding:3px 6px;font-size:10px;font-weight:700;display:inline-block}@media (max-width:760px){.trade-forms{grid-template-columns:1fr}}.files-form{grid-template-columns:minmax(360px,620px)}.upload-note{color:var(--muted);margin:5px 0 0;font-size:12px}.file-list{max-width:none;margin:32px auto;padding:0 20px 60px}.file-list .table-panel{overflow:auto}.file-list table{min-width:960px}.file-list h2{margin:0;font-size:24px}.file-list-heading{justify-content:space-between;align-items:flex-start;gap:18px;margin-bottom:16px;display:flex}.file-list-heading>div>span{color:var(--muted);margin-top:5px;font-size:13px;display:block}.file-filter{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.file-filter input,.file-filter select{border:1px solid var(--line);min-height:35px;color:var(--ink);background:#fff;border-radius:4px;padding:7px 9px}.file-filter input{width:150px}.file-filter button,.file-upload-button{box-sizing:border-box;background:var(--blue);color:#fff;cursor:pointer;border:0;border-radius:4px;align-items:center;min-height:35px;padding:8px 12px;font-size:13px;font-weight:700;text-decoration:none;display:inline-flex}.file-filter a:not(.file-upload-button){color:var(--blue);align-self:center;font-size:13px;font-weight:700;text-decoration:none}.file-sort{color:inherit;white-space:nowrap;text-decoration:none}.file-sort:hover,.file-sort span{color:var(--blue)}.file-grid{grid-template-columns:repeat(3,1fr);gap:16px;display:grid}.file-card{border:1px solid var(--line);border-radius:8px;overflow:visible}.file-card>div{padding:16px}.file-card img{object-fit:cover;background:var(--wash);width:100%;height:160px;display:block}.file-card h3{margin:12px 0 6px}.file-card h3 a{color:var(--ink);text-decoration:none}.file-card p,.file-card small{color:var(--muted)}.file-type,.client-visible{color:#40506a;background:#e4e9f1;border-radius:99px;margin-right:5px;padding:4px 7px;font-size:10px;font-weight:700;display:inline-block}.file-type.photo{color:#146c6a;background:#d8f7f6}.client-visible{color:#146338;background:#c9f6dd}.file-preview-trigger{appearance:none;color:inherit;font:inherit;text-align:inherit;cursor:pointer;background:0 0;border:0;padding:0}.file-preview-trigger.title{color:var(--ink);font:inherit;text-align:left;font-weight:700}.file-preview-trigger.title:hover{color:var(--blue);text-decoration:underline}.file-preview-trigger.image{width:100%;display:block}.file-preview-trigger.image img{border-radius:7px 7px 0 0;width:100%}.file-preview-backdrop{z-index:40;background:#0a182aa3;place-items:center;padding:30px;display:grid;position:fixed;inset:0}.file-preview-modal{background:#fff;border-radius:10px;flex-direction:column;width:min(100%,1100px);max-height:calc(100vh - 60px);display:flex;overflow:hidden;box-shadow:0 20px 55px #00000057}.file-preview-modal header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-start;gap:18px;padding:18px 20px;display:flex}.file-preview-modal header span{color:var(--blue);letter-spacing:.09em;margin-bottom:4px;font-size:10px;font-weight:700;display:block}.file-preview-modal header h2{margin:0;font-size:19px}.file-preview-modal header small{color:var(--muted);margin-top:5px;display:block}.file-preview-close{border:1px solid var(--line);width:34px;height:34px;color:var(--ink);cursor:pointer;background:#fff;border-radius:4px;flex:0 0 34px;place-items:center;font-size:26px;line-height:1;display:grid}.file-preview-content{background:#edf1f6;flex:1;place-items:center;min-height:300px;display:grid;overflow:auto}.file-preview-content>img{object-fit:contain;max-width:100%;max-height:calc(100vh - 220px);display:block}.file-preview-content .file-pdf-preview{background:#fff;border:0;width:100%;height:calc(100vh - 210px);min-height:680px}.file-preview-fallback{text-align:center;max-width:390px;padding:28px}.file-preview-fallback p{color:var(--muted);line-height:1.45}.file-preview-fallback a{color:var(--blue);font-weight:700}.file-preview-modal footer{border-top:1px solid var(--line);background:#fff;justify-content:flex-end;gap:10px;padding:14px 20px;display:flex}.file-preview-modal footer a{border:1px solid var(--line);color:var(--blue);border-radius:4px;padding:9px 12px;font-size:13px;font-weight:700;text-decoration:none}.file-preview-modal footer a:last-child{border-color:var(--blue);background:var(--blue);color:#fff}.file-actions{align-items:center;gap:9px;margin:0;display:flex}.file-actions form{margin:0}.file-actions .inline-editor summary{font-size:12px}.file-actions .inline-editor form{min-width:230px}.file-added-cell{white-space:nowrap;align-items:center;gap:18px;display:flex}.file-restore{color:#146338;cursor:pointer;background:#fff;border:1px solid #8acfb5;border-radius:4px;padding:6px 9px;font-size:12px;font-weight:700}.file-download-status{color:#146338;align-self:center;margin-right:auto;font-size:13px;font-weight:700}@media (max-width:760px){.file-grid{grid-template-columns:1fr}}.portal-page{background:#f4f7fb;min-height:100vh}.portal-topbar{color:#fff;background:var(--navy);align-items:center;gap:14px;min-height:58px;padding:0 7%;display:flex}.portal-topbar strong{color:#72d8e3;letter-spacing:.08em}.portal-topbar a{color:#cfe1ff;margin-left:auto;font-size:13px;text-decoration:none}.portal-hero{background:#fff;justify-content:space-between;align-items:end;max-width:1200px;margin:auto;padding:42px 7% 28px;display:flex}.portal-hero p{color:var(--blue);letter-spacing:.1em;margin:0 0 9px;font-size:12px;font-weight:700}.portal-hero h1{margin:0 0 7px;font-size:38px}.portal-hero>div>span{color:var(--muted)}.portal-project-switcher{align-items:end;gap:8px;display:flex}.portal-project-switcher label{color:var(--muted);font-size:11px;font-weight:700;display:block}.portal-project-switcher select{border:1px solid var(--line);min-width:220px;color:var(--ink);background:#fff;border-radius:4px;margin-top:5px;padding:9px;display:block}.portal-project-switcher button{background:var(--blue);color:#fff;cursor:pointer;white-space:nowrap;border:0;border-radius:4px;padding:10px 13px;font-size:13px;font-weight:700}.portal-actions{grid-template-columns:repeat(4,1fr);gap:16px;max-width:1200px;margin:24px auto;padding:0 7%;display:grid}.portal-actions article{border:1px solid var(--line);background:#fff;border-radius:8px;align-items:center;gap:12px;padding:18px;display:flex}.portal-actions article>span{min-width:38px;color:var(--blue);font-size:24px;font-weight:700}.portal-actions article strong,.portal-actions article p{margin:0;display:block}.portal-actions article p{color:var(--muted);margin-top:4px;font-size:12px}.portal-actions .payment-card{background:#e9f7ff}.portal-actions .payment-card>span{font-size:18px}.portal-grid{grid-template-columns:repeat(2,1fr);gap:16px;max-width:1200px;margin:24px auto;padding:0 7%;display:grid}.portal-panel,.portal-files{border:1px solid var(--line);background:#fff;border-radius:8px;padding:20px}.portal-panel h2,.portal-files h2{margin:0 0 15px;font-size:19px}.portal-list{margin:0;padding:0;list-style:none}.portal-list li{border-top:1px solid var(--line);align-items:flex-start;gap:10px;padding:11px 0;display:flex}.portal-list li:first-child{border-top:0;padding-top:0}.portal-list strong,.portal-list small{display:block}.portal-list small{color:var(--muted);margin-top:4px}.portal-count{color:#805f00;background:#fff0bf;border-radius:50%;flex:0 0 22px;place-items:center;height:22px;font-weight:700;display:grid}.portal-count.invoice{color:#146c6a;background:#d8f7f6}.portal-update p:not(.eyebrow){white-space:pre-wrap;color:var(--muted);line-height:1.5}.portal-files{max-width:1200px;margin:24px auto;padding:20px}.portal-file-grid{grid-template-columns:repeat(3,1fr);gap:10px;display:grid}.portal-file-grid article{background:var(--wash);border-radius:5px;padding:14px;display:block}.portal-file-grid strong,.portal-file-grid small{margin-top:8px;display:block}.portal-file-grid small{color:var(--muted);font-size:12px}@media (max-width:760px){.portal-hero,.portal-actions,.portal-grid{grid-template-columns:1fr}.portal-hero{flex-direction:column;align-items:start;gap:18px}.portal-project-switcher{flex-direction:column;align-items:stretch;width:100%}.portal-project-switcher select{width:100%;min-width:0}.portal-actions,.portal-grid{display:grid}.portal-file-grid{grid-template-columns:1fr}}.portal-decision{gap:7px;margin-top:10px;display:flex}.portal-decision form{margin:0}.portal-decision button{background:var(--blue);color:#fff;cursor:pointer;border:0;border-radius:4px;padding:7px 10px;font-size:12px;font-weight:700}.portal-decision .portal-decline{color:#8f2435;background:#fff;border:1px solid #e7a9b5}.portal-document-link{color:var(--ink);text-decoration:none}.portal-document-link:hover{color:var(--blue);text-decoration:underline}.workflow-next-step{border:1px solid var(--line);background:#f8fbff;border-radius:8px;max-width:720px;margin:30px auto;padding:26px}.workflow-next-step h2{margin:0 0 10px;font-size:27px}.workflow-next-step p:not(.eyebrow){max-width:600px;color:var(--muted);margin:0;line-height:1.5}.workflow-next-step .button{margin-top:18px}.message-form{grid-template-columns:minmax(360px,650px)}.message-form textarea{border:1px solid var(--line);resize:vertical;width:100%;min-height:100px;font:inherit;border-radius:4px;margin-top:6px;padding:10px;display:block}.message-list{max-width:1200px;margin:32px auto;padding:0 7% 60px}.message-list h2{margin:0 0 16px;font-size:24px}.message-grid{grid-template-columns:repeat(3,1fr);gap:16px;display:grid}.message-card{border:1px solid var(--line);border-radius:8px;padding:18px}.message-card>div{justify-content:space-between;align-items:center;display:flex}.message-card h3{margin:14px 0 6px}.message-card p{color:var(--muted);white-space:pre-wrap;line-height:1.45}.message-job{font-size:13px}.message-audience{color:#40506a;background:#e4e9f1;border-radius:99px;padding:4px 7px;font-size:10px;font-weight:700;display:inline-block}.message-audience.client{color:#146338;background:#c9f6dd}.message-audience.subcontractor{color:#146c6a;background:#d8f7f6}.message-card small{color:var(--muted)}@media (max-width:760px){.message-grid{grid-template-columns:1fr}}.message-list-heading{margin-bottom:16px;display:block}.message-list-heading h2{margin:0 0 4px}.message-list-heading span{color:var(--muted);font-size:13px}.message-recipients small{color:var(--muted);margin-top:4px;font-weight:400;line-height:1.35;display:block}.message-recipients select{min-height:104px}.message-recipients-display{font-size:13px;font-weight:700;color:#146c6a!important;margin:0 0 7px!important}.message-recipient-picker{border:1px solid var(--line);border-radius:6px;gap:8px;margin:14px 0;padding:12px;display:grid}.message-recipient-picker legend{padding:0 4px;font-size:12px;font-weight:700}.message-recipient-picker>small,.message-client-recipient small{color:var(--muted);font-size:12px;line-height:1.35}.message-recipient-picker label{color:var(--ink);align-items:center;gap:8px;margin:0;font-size:13px;font-weight:400;display:flex}.message-recipient-picker input{width:16px;height:16px;accent-color:var(--blue);margin:0}.message-client-recipient{color:#146338;background:#f3fcf6;border:1px solid #9ad9be;border-radius:6px;gap:5px;margin:14px 0;padding:12px;font-size:13px;display:grid}.message-stack .message-card>.message-body{justify-content:flex-start;align-items:flex-start}.message-filter{align-items:center;gap:7px;margin-top:16px;display:flex}.message-filter select{border:1px solid var(--line);background:#fff;border-radius:4px;height:34px;padding:7px 9px}.message-filter button{background:var(--blue);color:#fff;border:0;border-radius:4px;height:34px;padding:0 11px;font-weight:700}.message-filter a{color:var(--blue);font-size:13px;font-weight:700;text-decoration:none}.message-filter input{box-sizing:border-box;border:1px solid var(--line);height:34px;font:inherit;background:#fff;border-radius:4px;padding:7px 9px}.message-filter input[name=query]{min-width:210px}.message-date-filter{color:var(--muted);white-space:nowrap;align-items:center;gap:6px;font-size:13px;font-weight:700;display:flex}.message-date-filter input{min-width:145px}.message-filter-error{color:#8f2435;margin:0 0 16px;font-size:13px;font-weight:700}.message-stack{gap:10px;display:grid}.message-stack .message-card{padding:16px 18px}.message-meta{gap:9px;justify-content:flex-start!important;align-items:center!important;display:flex!important}.message-meta small{margin-left:auto}.message-meta .message-job{color:var(--muted);margin:0;font-size:13px}.message-body{gap:12px;margin-top:13px;display:flex}.message-initial{color:#146c6a;background:#d8f7f6;border-radius:50%;flex:0 0 34px;place-items:center;width:34px;height:34px;font-weight:700;display:grid}.message-body h3{margin:0 0 5px}.message-body p{margin:0}@media (max-width:760px){.message-list-heading{flex-direction:column;align-items:flex-start}.message-filter{flex-wrap:wrap}.message-meta{flex-wrap:wrap;align-items:flex-start!important}.message-meta small{width:100%;margin-left:0}}.dashboard-metrics{grid-template-columns:repeat(6,1fr);gap:14px;max-width:none;margin:10px auto 30px;padding:0 clamp(22px,3vw,48px);display:grid}.dashboard-metrics article{border:1px solid var(--line);background:#fff;border-radius:8px;padding:18px}.dashboard-metrics span{color:var(--muted);font-size:12px;display:block}.dashboard-metrics strong{margin-top:8px;font-size:24px;display:block}.dashboard-table{max-width:none;margin:32px auto;padding:0 clamp(22px,3vw,48px)}.dashboard-table h2{margin:0;font-size:24px}.dashboard-table-heading{justify-content:space-between;align-items:flex-end;gap:18px;margin-bottom:16px;display:flex}.dashboard-table-heading p{color:var(--muted);margin:5px 0 0;font-size:13px}.dashboard-table-heading>span{color:var(--muted);font-size:13px}.dashboard-table .table-panel{overflow-x:auto}.dashboard-table table{min-width:1370px}.dashboard-table th:first-child,.dashboard-table td:first-child{min-width:170px}.dashboard-table th:nth-child(9),.dashboard-table td:nth-child(9){min-width:145px}.dashboard-table td:first-child{color:var(--ink)}.dashboard-project-link{color:var(--ink);text-decoration:none}.dashboard-project-link:hover strong{color:var(--blue);text-decoration:underline}.dashboard-action-links{flex-wrap:wrap;gap:4px 8px;display:flex}.dashboard-action-links a{color:var(--blue);white-space:nowrap;font-size:12px;text-decoration:none}.dashboard-action-links a:hover{text-decoration:underline}.dashboard-wip{min-width:105px}.dashboard-wip-bar{background:#e4e9f1;border-radius:99px;height:8px;overflow:hidden}.dashboard-wip-bar span{border-radius:inherit;background:#2074db;height:100%;display:block}.dashboard-wip-bar span.over{background:#c3384f}.dashboard-wip small{color:var(--muted);margin-top:5px;font-size:11px;display:block}.dashboard-links{grid-template-columns:repeat(4,1fr);gap:14px;max-width:none;margin:32px auto;padding:0 clamp(22px,3vw,48px) 60px;display:grid}.dashboard-links a{border:1px solid var(--line);color:var(--ink);border-radius:8px;padding:18px;text-decoration:none}.dashboard-links strong,.dashboard-links span{display:block}.dashboard-links span{color:var(--muted);margin-top:6px;font-size:13px}@media (max-width:760px){.dashboard-metrics,.dashboard-links{grid-template-columns:1fr 1fr}}.inline-editor{vertical-align:top;display:inline-block;position:relative}.inline-editor summary{color:var(--blue);cursor:pointer;padding:8px 2px;font-weight:700;list-style:none}.inline-editor summary::-webkit-details-marker{display:none}.inline-editor>form{z-index:10;border:1px solid var(--line);background:#fff;border-radius:6px;width:280px;padding:12px;position:absolute;top:34px;right:0;box-shadow:0 8px 20px #10203929}.change-order-list .table-panel,.todo-list .table-panel{overflow:visible}.inline-editor label{color:var(--muted);margin:0 0 9px;font-size:11px;font-weight:700;display:block}.inline-editor input,.inline-editor select,.inline-editor textarea{border:1px solid var(--line);width:100%;color:var(--ink);font:inherit;background:#fff;border-radius:4px;margin-top:4px;padding:8px;display:block}.inline-editor textarea{resize:vertical;min-height:58px}.inline-editor .form-row{grid-template-columns:1fr 1fr}.inline-editor button{background:var(--blue);color:#fff;cursor:pointer;border:0;border-radius:4px;margin-top:2px;padding:8px 11px;font-weight:700}.inline-editor .inline-editor-cancel{border:1px solid var(--line);color:var(--ink);background:#fff;margin-left:7px}.inline-editor-error{color:#8f2435;background:#fff1f3;border:1px solid #e7a9b5;border-radius:5px;margin:0 0 12px;padding:9px 10px;font-size:12px;font-weight:700;line-height:1.35}.budget-table .budget-line-actions .inline-editor>form{z-index:30;box-sizing:border-box;width:min(320px,100vw - 40px);max-height:calc(100vh - 40px);position:fixed;inset:50% auto auto 50%;overflow-y:auto;transform:translate(-50%,-50%)}.budget-table .budget-line-actions .inline-editor label{margin:0 0 12px;font-size:12px}.budget-table .budget-line-actions .inline-editor input,.budget-table .budget-line-actions .inline-editor select{box-sizing:border-box;min-height:36px;margin-top:6px;padding:8px 10px}.budget-table .budget-line-actions .inline-editor button{box-sizing:border-box;justify-content:center;align-items:center;min-height:36px;margin-top:4px;padding:8px 12px;font-size:13px;display:inline-flex}.budget-table .budget-line-actions .inline-editor .inline-editor-cancel{margin-left:8px}.budget-table th:has(.budget-column-tooltip){position:relative;overflow:visible}.budget-column-tooltip{cursor:help;text-underline-offset:3px;outline:none;-webkit-text-decoration:underline dotted;text-decoration:underline dotted;display:inline-block;position:relative}.budget-column-tooltip:before,.budget-column-tooltip:after{z-index:20;visibility:hidden;opacity:0;pointer-events:none;transition:opacity .15s,transform .15s,visibility .15s;position:absolute}.budget-column-tooltip:before{content:"";border:5px solid #0000;border-top-color:var(--ink);bottom:calc(100% + 3px);left:50%;transform:translate(-50%,4px)}.budget-column-tooltip:after{content:attr(data-tooltip);box-sizing:border-box;background:var(--ink);color:#fff;text-align:left;white-space:normal;border-radius:5px;width:max-content;max-width:240px;padding:7px 9px;font-size:11px;font-weight:500;line-height:1.35;bottom:calc(100% + 13px);left:50%;transform:translate(-50%,4px)}.budget-column-tooltip:hover:before,.budget-column-tooltip:hover:after,.budget-column-tooltip:focus-visible:before,.budget-column-tooltip:focus-visible:after{visibility:visible;opacity:1;transform:translate(-50%)}.todo-actions{align-items:start;gap:8px;display:flex}.todo-state.blocked{color:#805f00;background:#fff0bf}.risk-form{grid-template-columns:minmax(360px,700px)}.risk-form textarea{border:1px solid var(--line);resize:vertical;width:100%;min-height:74px;font:inherit;border-radius:4px;margin-top:6px;padding:10px;display:block}.risk-list{max-width:1200px;margin:32px auto;padding:0 7% 60px}.risk-list h2{margin:0;font-size:24px}.risk-list-heading{justify-content:space-between;align-items:center;gap:14px;margin-bottom:16px;display:flex}.risk-filter{align-items:center;gap:8px;display:flex}.risk-filter input,.risk-filter select{border:1px solid var(--line);height:36px;color:var(--ink);box-sizing:border-box;background:#fff;border-radius:4px;padding:8px}.risk-filter input{width:190px}.risk-filter select{min-width:150px}.risk-filter select[name=jobId]{min-width:360px}.risk-filter button{background:var(--blue);color:#fff;cursor:pointer;border:0;border-radius:4px;padding:8px 11px;font-weight:700}.risk-filter a{color:var(--blue);font-size:13px;font-weight:700;text-decoration:none}.risk-list td:first-child{color:var(--ink)}.risk-list form button{background:var(--blue);color:#fff;border:0;border-radius:4px;padding:8px 11px;font-weight:700}.risk-score{border-radius:4px;place-items:center;min-width:36px;padding:4px;font-weight:700;display:inline-grid}.risk-score small{font-size:10px;font-weight:400}.risk-score.low{color:#146338;background:#c9f6dd}.risk-score.medium{color:#805f00;background:#fff0bf}.risk-score.high{color:#8f2435;background:#ffe5e9}.form-actions,.table-actions{align-items:center;gap:10px;display:flex}.form-actions .button-secondary{border:1px solid var(--line);color:var(--ink);border-radius:4px;margin-top:8px;padding:9px 12px;font-size:13px;font-weight:700;text-decoration:none;display:inline-block}.table-actions{white-space:nowrap}.table-actions>a{color:var(--blue);font-size:13px;font-weight:700;text-decoration:none}.risk-list th a{color:inherit;white-space:nowrap;text-decoration:none}.risk-list th a:hover{color:var(--blue)}.risk-project-id{white-space:nowrap}.risk-new-item{box-sizing:border-box;background:var(--blue);border-radius:4px;align-items:center;min-height:36px;margin:0;padding:8px 11px;font-size:13px;display:inline-flex;color:#fff!important}.risk-project-actions{justify-content:flex-end;margin:-4px 0 16px;display:flex}.risk-overlay .trade-overlay-card{max-height:calc(100vh - 48px);overflow-y:auto}.risk-overlay .form-row{grid-template-columns:repeat(3,1fr)}@media (max-width:760px){.risk-list-heading{flex-direction:column;align-items:flex-start}.risk-filter{flex-wrap:wrap}.risk-overlay .form-row{grid-template-columns:1fr}}.selection-alert{color:#8f2435;background:#fff1f3;border:1px solid #e7a9b5;border-radius:8px;align-items:center;gap:9px;padding:12px 15px;display:flex}.selection-alert strong{color:#fff;background:#8f2435;border-radius:50%;place-items:center;width:28px;height:28px;display:grid}.selection-alert span{font-weight:700}.selection-overdue{border-color:#e7a9b5}.overdue-badge{color:#8f2435;background:#ffe5e9;border-radius:99px;margin-left:6px;padding:4px 7px;font-size:10px;font-weight:700;display:inline-block}.selection-list-heading{justify-content:space-between;align-items:center;gap:18px;margin-bottom:16px;display:flex}.selection-list-heading h2{margin:0 0 4px}.selection-list-heading span{color:var(--muted);font-size:13px}.selection-filter{align-items:center;gap:7px;display:flex}.selection-filter select{border:1px solid var(--line);background:#fff;border-radius:4px;min-width:126px;height:34px;padding:7px 9px}.selection-filter button{background:var(--blue);color:#fff;border:0;border-radius:4px;height:34px;padding:0 11px;font-weight:700}.selection-filter a{color:var(--blue);font-size:13px;font-weight:700;text-decoration:none}.selection-table-overdue td{background:#fffafb}.selection-list td:first-child{color:var(--ink)}.selection-list td small{white-space:normal;max-width:260px}.selection-list .selection-actions{gap:7px;display:flex}.selection-list .selection-actions form{margin:0}.selection-list .selection-actions button{white-space:nowrap;height:34px;margin:0!important}@media (max-width:760px){.selection-list-heading{flex-direction:column;align-items:flex-start}.selection-filter{flex-wrap:wrap}}.daily-log-list-heading{margin-bottom:16px;display:block}.daily-log-list-heading h2{margin:0 0 4px}.daily-log-list-heading span{color:var(--muted);font-size:13px}.daily-log-filter{align-items:center;gap:7px;margin-top:16px;display:flex}.daily-log-filter select,.daily-log-filter input{border:1px solid var(--line);min-width:180px;height:34px;font:inherit;background:#fff;border-radius:4px;padding:7px 9px}.daily-log-filter input{min-width:145px}.daily-log-filter button{background:var(--blue);color:#fff;border:0;border-radius:4px;height:34px;padding:0 11px;font-weight:700}.daily-log-filter a{color:var(--blue);font-size:13px;font-weight:700;text-decoration:none}.log-stack{gap:10px;display:grid}.log-stack .log-card{padding:17px 18px}.log-heading{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.log-heading h3{margin:0}.log-heading .eyebrow{margin-bottom:6px}.log-card-actions{align-items:center;gap:10px;display:flex}.log-card-actions>a{color:var(--blue);font-size:13px;font-weight:700;text-decoration:none}.weather-chip{color:#146c6a;background:#d8f7f6;border-radius:99px;padding:5px 9px;font-size:12px;font-weight:700;display:inline-block}.log-details{border-top:1px solid var(--line);grid-template-columns:repeat(3,1fr);gap:16px;margin-top:15px;padding-top:14px;display:grid}.log-details p{margin:5px 0 0}.daily-log-photos{border-top:1px solid var(--line);margin-top:15px;padding-top:14px}.daily-log-photos>div:first-child{justify-content:space-between;align-items:center;gap:14px;display:flex}.daily-log-photos small{color:var(--muted);font-size:12px}.daily-log-photos>.inline-editor summary{padding-bottom:0}.daily-log-photo-grid{grid-template-columns:repeat(auto-fill,minmax(145px,1fr));gap:10px;margin-top:10px;display:grid}.daily-log-photo-grid figure{border:1px solid var(--line);background:#fff;border-radius:7px;margin:0;overflow:hidden}.daily-log-photo-grid .file-preview-trigger.image img{object-fit:cover;border-radius:0;height:108px}.daily-log-photo-grid figcaption{color:var(--ink);padding:8px;font-size:12px;font-weight:700;line-height:1.3}.daily-log-photo-grid figcaption span{color:#146338;text-transform:uppercase;margin-top:5px;font-size:10px;display:block}.daily-log-photo-remove{color:#8f2435;cursor:pointer;background:#fff;border:1px solid #eab0b8;border-radius:4px;margin-top:8px;padding:5px 7px;font-size:11px;font-weight:700}.daily-log-date-filter{color:var(--muted);white-space:nowrap;align-items:center;gap:6px;font-size:13px;font-weight:700;display:flex}.daily-log-date-filter input{min-width:145px}.daily-log-filter-error{color:#8f2435;margin:0 0 16px;font-size:13px;font-weight:700}@media (max-width:760px){.daily-log-list-heading{flex-direction:column;align-items:flex-start}.daily-log-filter{flex-wrap:wrap}.log-heading{flex-direction:column}.log-details{grid-template-columns:1fr}}.project-register{max-width:1200px;margin:30px auto;padding:0 7% 60px}.project-register-heading{justify-content:space-between;align-items:center;margin-bottom:16px;display:flex}.project-register-heading h2{margin:0;font-size:24px}.project-register-heading span{color:var(--muted);font-size:13px}.project-grid{grid-template-columns:repeat(3,1fr);gap:16px;display:grid}.project-card{border:1px solid var(--line);min-height:174px;color:var(--ink);border-radius:8px;padding:18px;text-decoration:none;transition:border-color .15s,box-shadow .15s;display:block}.project-card:hover{border-color:var(--blue);box-shadow:0 7px 20px #1020391a}.project-card>div{justify-content:space-between;align-items:center;gap:12px;display:flex}.project-card>div>strong{color:var(--muted);font-size:12px}.project-card h3{margin:20px 0 7px;font-size:18px}.project-card p{min-height:20px;color:var(--muted);margin:0;font-size:13px}.project-card footer{border-top:1px solid var(--line);color:var(--muted);flex-wrap:wrap;gap:10px;margin-top:22px;padding-top:12px;font-size:11px;display:flex}.project-workspace-hero{justify-content:space-between;align-items:flex-end;gap:20px;max-width:1200px;margin:auto;padding:44px 7% 26px;display:flex}.project-workspace-hero h1{letter-spacing:-.035em;margin:0 0 8px;font-size:clamp(32px,4vw,48px)}.project-workspace-hero p:not(.eyebrow){color:var(--muted);margin:0}.workspace-switch{border:1px solid var(--line);color:var(--blue);white-space:nowrap;border-radius:4px;padding:10px 13px;font-size:13px;font-weight:700;text-decoration:none}.workspace-metrics{grid-template-columns:repeat(4,1fr);gap:14px;max-width:1200px;margin:0 auto 30px;padding:0 7%;display:grid}.workspace-metrics article{border:1px solid var(--line);background:var(--wash);border-radius:8px;padding:16px}.workspace-metrics span{color:var(--muted);font-size:12px;display:block}.workspace-metrics strong{color:var(--ink);margin-top:7px;font-size:23px;display:block}.workspace-section{max-width:1200px;margin:30px auto;padding:0 7%}.workspace-grid{grid-template-columns:repeat(4,1fr);gap:14px;display:grid}.workspace-grid a{border:1px solid var(--line);min-height:112px;color:var(--ink);border-radius:8px;padding:17px;text-decoration:none}.workspace-grid a:hover{border-color:var(--blue);background:#f8fbff}.workspace-grid strong,.workspace-grid span{display:block}.workspace-grid strong{color:var(--blue)}.workspace-grid span{color:var(--muted);margin-top:7px;font-size:13px;line-height:1.35}.project-team{padding-bottom:60px}.project-team .section-heading a{color:var(--blue);font-size:13px;font-weight:700;text-decoration:none}.project-team-grid{grid-template-columns:repeat(4,1fr);gap:14px;display:grid}.project-team-grid article{border:1px solid var(--line);border-radius:8px;padding:16px}.project-team-grid strong,.project-team-grid span,.project-team-grid small{display:block}.project-team-grid span{color:var(--blue);margin-top:6px;font-size:13px}.project-team-grid small{color:var(--muted);margin-top:7px;font-size:12px}@media (max-width:760px){.project-grid,.workspace-grid,.project-team-grid,.workspace-metrics{grid-template-columns:1fr}.project-workspace-hero{flex-direction:column;align-items:flex-start}}.project-context{border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:#f8fbff;max-width:1200px;margin:0 auto 20px;padding:13px 7%}.project-context span,.project-context strong{display:block}.project-context span{color:var(--blue);letter-spacing:.09em;margin-bottom:4px;font-size:10px;font-weight:700}.project-context-heading{width:100%}.project-context-project-row{justify-content:space-between;align-items:baseline;gap:16px;display:flex}.project-context strong{white-space:nowrap;font-size:14px}.project-context nav{flex-wrap:nowrap;justify-content:flex-end;gap:6px;display:flex}.project-context a{color:var(--blue);white-space:nowrap;border:1px solid #0000;border-radius:4px;padding:7px 9px;font-size:12px;font-weight:700;text-decoration:none}.project-context a:hover{border-color:var(--line);background:#fff}.project-field{border:1px solid var(--line);background:var(--wash);color:var(--ink);border-radius:4px;margin:5px 0 14px;padding:10px;font-size:13px;font-weight:700}@media (max-width:760px){.project-context-project-row{flex-direction:column;align-items:flex-start;gap:8px}.project-context strong{white-space:normal}.project-context nav{flex-wrap:wrap;justify-content:flex-start}}.lead-form{grid-template-columns:minmax(360px,700px)}.lead-duplicate-warning{color:#6c4c00;background:#fff4cf;border:1px solid #d8ae43;border-radius:5px;margin:0 0 16px;padding:12px 14px;font-size:14px;font-weight:700;line-height:1.45}.lead-list{max-width:none;margin:32px auto;padding:0 clamp(22px,3vw,48px) 60px}.lead-list-heading{justify-content:space-between;align-items:center;margin-bottom:16px;display:flex}.lead-list-heading h2{margin:0;font-size:24px}.lead-list-heading span{color:var(--muted);font-size:13px}.compact-button{margin:0;padding:8px 11px;font-size:13px}.lead-register-page .catalogue-header{max-width:none;padding-left:clamp(22px,3vw,48px);padding-right:clamp(22px,3vw,48px)}.lead-contact-cell .lead-contact-kind{color:#36506f;letter-spacing:.04em;text-transform:uppercase;background:#e8edf5;border-radius:999px;padding:3px 7px;font-size:10px;font-weight:700;display:inline-block}.lead-contact-cell .lead-contact-kind.client{color:#17633a;background:#d8f4e2}.lead-contact-cell strong{color:var(--ink);margin-top:6px;display:block}.lead-contact-cell small{margin-top:4px}.lead-list-heading>div span{margin-top:4px;display:block}.lead-filter{align-items:center;gap:7px;display:flex}.lead-filter input,.lead-filter select{border:1px solid var(--line);background:#fff;border-radius:4px;height:34px;padding:7px 9px}.lead-filter input{min-width:175px}.lead-filter button{background:var(--blue);color:#fff;border:0;border-radius:4px;height:34px;padding:0 11px;font-weight:700}.lead-filter a{color:var(--blue);font-size:13px;font-weight:700;text-decoration:none}.lead-register-filter{flex-wrap:wrap;justify-content:flex-end}.lead-actions{gap:8px;margin:0;display:grid}.lead-primary-actions{white-space:nowrap;align-items:center;gap:10px;display:flex}.lead-primary-actions>details{flex:none}.lead-actions>form{margin:0}.lead-actions>form button{white-space:nowrap;height:34px;margin:0!important}.lead-start-hint{color:var(--muted);font-size:12px;line-height:1.35}.lead-summary-chips{flex-wrap:wrap;gap:7px;margin:7px 0;display:flex}.lead-summary-chips span{color:#40506a;background:#e4e9f1;border-radius:99px;padding:4px 8px;font-size:11px;font-weight:700}.lead-filter .lead-new{box-sizing:border-box;color:#fff;align-items:center;height:34px;margin:0;padding:0 12px;display:inline-flex}.lead-list th:last-child,.lead-list td:last-child{width:135px;min-width:135px}.lead-open{color:var(--blue);font-size:13px;font-weight:700;text-decoration:none}.lead-open:hover{text-decoration:underline}.lead-management{border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:var(--wash);justify-content:space-between;align-items:center;gap:20px;max-width:1200px;margin:0 auto 26px;padding:18px 7%;display:flex}.lead-management h2{margin:0 0 5px;font-size:22px}.lead-management p:not(.eyebrow){max-width:580px;color:var(--muted);margin:0;font-size:13px;line-height:1.45}.lead-management-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;display:flex}.lead-management-actions form{margin:0}.lead-management-status{align-items:end;gap:7px;display:flex}.lead-management-status label{color:var(--muted);gap:4px;font-size:11px;font-weight:700;display:grid}.lead-management-status select{border:1px solid var(--line);background:#fff;border-radius:4px;min-width:135px;padding:8px}.lead-management button{background:var(--blue);color:#fff;border:0;border-radius:4px;padding:9px 12px;font-weight:700}.lead-management .inline-editor>form{z-index:30;width:min(380px,100vw - 40px);max-height:calc(100vh - 40px);position:fixed;top:50%;left:50%;right:auto;overflow-y:auto;transform:translate(-50%,-50%)}.lead-management .lead-start-hint{max-width:170px}.lead-management .lead-inactive-note{color:#8f2435;font-size:12px;font-weight:700}@media (max-width:760px){.lead-management{flex-direction:column;align-items:flex-start}.lead-management-actions{justify-content:flex-start}.lead-management-status{flex-direction:column;align-items:flex-start}}.lead-management-actions{grid-template-columns:auto auto;align-items:end;gap:8px 14px;display:grid}.lead-management-status{grid-column:1}.lead-record-actions{align-items:center;gap:12px;display:flex}.lead-record-actions .inline-editor summary{padding-bottom:0}.lead-management-next{grid-column:1/-1;min-height:18px}.lead-management-next .lead-start-hint{max-width:none;display:block}.lead-management-next form{margin:0}@media (max-width:760px){.lead-management-actions{align-items:flex-start;display:flex}.lead-record-actions{flex-wrap:wrap}.lead-management-next{width:100%}}.lead-management-status>button{align-self:end;height:36px;min-height:36px;padding-top:0;padding-bottom:0}.client-filter input{border:1px solid var(--line);background:#fff;border-radius:4px;min-width:175px;height:34px;padding:7px 9px}.lead-list-heading{margin-bottom:16px;display:block}.lead-register-filter{flex-wrap:wrap;justify-content:flex-start;align-items:center;width:100%;margin-top:12px;display:flex}.lead-list .table-panel{overflow-x:auto}.lead-list th:first-child,.lead-list td:first-child{min-width:210px}.lead-list th:nth-child(3),.lead-list td:nth-child(3){min-width:110px}.lead-list td.lead-contact-cell{white-space:normal;overflow-wrap:anywhere}.lead-list th:nth-child(4),.lead-list td:nth-child(4){min-width:150px}.lead-list th:nth-child(5),.lead-list td:nth-child(5){min-width:155px}.lead-list th:nth-child(6),.lead-list td:nth-child(6){min-width:190px}.lead-next-action a,.lead-next-action small{display:block}.lead-next-action a{color:var(--ink);font-weight:700;text-decoration:none}.lead-next-action a:hover{color:var(--blue);text-decoration:underline}.lead-next-action small{color:var(--muted);margin-top:4px}.lead-next-action small.overdue{color:#a02135;font-weight:700}.lead-no-next-action{color:var(--muted);font-size:12px}.project-register{max-width:none;padding-left:clamp(22px,3vw,48px);padding-right:clamp(22px,3vw,48px)}.catalogue-header:has(+.project-register){box-sizing:border-box;text-align:left;max-width:none;padding-left:clamp(22px,3vw,48px);padding-right:clamp(22px,3vw,48px)}.project-filter input{border:1px solid var(--line);min-width:180px;height:36px;font:inherit;background:#fff;border-radius:4px;padding:8px 9px}.project-schedule-overdue{color:#a7283b;font-weight:700}.budget-summary{grid-template-columns:repeat(7,minmax(76px,1fr));gap:12px}@media (max-width:1050px){.budget-heading{flex-direction:column}.budget-summary{width:100%}}.bill-list .table-panel{overflow-x:auto}.bill-list table{min-width:1220px}.bill-list .bill-id-column{white-space:nowrap;width:125px;min-width:125px}.bill-list .bill-description-column{width:170px;min-width:170px}.bill-list .bill-project-column{width:190px;min-width:190px}.bill-list .bill-purchase-order-column{white-space:nowrap;width:120px;min-width:120px}.bill-list .bill-supplier-column{width:160px;min-width:160px}.bill-list .bill-amount-column{white-space:nowrap;width:100px;min-width:100px}.bill-list .bill-invoice-due-column{white-space:nowrap;width:135px;min-width:135px}.bill-list .bill-activity-column{width:210px;min-width:210px}.bill-list .bill-status-column{white-space:nowrap;width:140px;min-width:140px}.bill-list .bill-actions-column{white-space:nowrap;width:250px;min-width:250px}.bill-list .bill-actions-column .invoice-actions{white-space:nowrap;min-width:max-content}.bill-overdue{font-weight:700;color:#a7283b!important}.invoice-overdue{color:#a7283b;font-weight:700}.staff-rate-table{min-width:1280px}@media (min-width:761px){.contract-filter{grid-template-columns:minmax(185px,1.6fr) minmax(160px,1.1fr) minmax(120px,.75fr) minmax(130px,.8fr) auto auto;align-items:center;width:100%;display:grid}.contract-filter input,.contract-filter select{box-sizing:border-box;width:100%;min-width:0}.contract-filter button,.contract-filter a{white-space:nowrap}}.schedule-register .schedule-views a{white-space:nowrap;place-items:center;height:36px;padding:0 12px;line-height:1;display:grid}.calendar-month-band{border:1px solid var(--line);background:var(--wash);border-bottom:0;border-radius:8px 8px 0 0;grid-template-columns:1fr auto auto 1fr;align-items:center;gap:10px;min-height:44px;margin-top:16px;padding:0 14px;display:grid}.calendar-month-band strong{grid-column:2;font-size:16px}.calendar-month-band a{color:var(--blue);font-size:13px;font-weight:700;text-decoration:none}.calendar-month-band a:last-child{grid-column:3;justify-self:end}.calendar-month-band .calendar-today-link{border:1px solid var(--line);background:#fff;border-radius:3px;grid-column:3;padding:4px 8px}.calendar-month-band a:last-child{grid-column:4}.calendar-month-band+.schedule-calendar{border-radius:0 0 8px 8px}.calendar-drag-help{color:var(--muted);margin:10px 0;font-size:12px}.calendar-move-message{color:#1f6846;background:#f1fbf5;border:1px solid #a9d8c1;border-radius:5px;justify-content:space-between;align-items:center;gap:12px;margin:0 0 10px;padding:9px 11px;font-size:13px;display:flex}.calendar-move-message button{color:var(--blue);font:inherit;cursor:pointer;background:0 0;border:0;font-weight:700}.calendar-move-message button:disabled{color:var(--muted);cursor:wait}.calendar-move-warning{color:#6c4b0d;background:#fff8e8;border:1px solid #e5bd73;border-radius:5px;justify-content:space-between;align-items:center;gap:14px;margin:0 0 10px;padding:10px 11px;font-size:13px;display:flex}.calendar-move-warning>div:first-child{gap:3px;display:grid}.calendar-move-warning strong{color:#5a3b00}.calendar-move-warning span{line-height:1.35}.calendar-move-warning-actions{flex-wrap:wrap;flex:none;gap:7px;display:flex}.calendar-move-warning-actions button,.gantt-move-warning-actions button{color:#6c4b0d;min-height:32px;font:inherit;cursor:pointer;background:#fff;border:1px solid #c18a2b;border-radius:4px;padding:6px 10px;font-weight:700}.calendar-move-warning-actions button:first-child,.gantt-move-warning-actions button:first-child{color:#fff;background:#c18a2b}.calendar-move-warning-actions button:disabled,.gantt-move-warning-actions button:disabled{opacity:.6;cursor:wait}.schedule-history-link{color:var(--blue);white-space:nowrap;margin-left:9px;font-size:11px;font-weight:700;text-decoration:none}.schedule-history-link:hover{text-decoration:underline}.schedule-history-card{width:min(100%,720px);max-height:calc(100vh - 48px);overflow-y:auto}.schedule-history-list{gap:10px;margin:18px 0;padding:0;list-style:none;display:grid}.schedule-history-list li{border:1px solid var(--line);background:#fff;border-radius:6px;justify-content:space-between;align-items:flex-start;gap:18px;padding:12px;display:flex}.schedule-history-list li>div{min-width:0}.schedule-history-list strong{text-transform:capitalize;display:block}.schedule-history-list p{color:var(--muted);margin:4px 0 0;font-size:13px}.schedule-history-list aside{min-width:190px;color:var(--muted);text-align:right;gap:3px;font-size:12px;display:grid}.schedule-history-list aside small{font-size:11px}.gantt-move-warning{z-index:8;color:#6c4b0d;background:#fff8e8;border:1px solid #e5bd73;border-radius:5px;gap:6px;width:min(260px,100vw - 40px);margin:6px 0 0;padding:9px;font-size:11px;display:grid;position:relative;box-shadow:0 4px 12px #0a182a1f}.gantt-move-warning>span{line-height:1.35}.gantt-move-warning-actions{flex-wrap:wrap;gap:6px;display:flex}.gantt-move-warning-actions button{min-height:28px;padding:5px 8px;font-size:11px}.gantt-move-message{color:var(--muted);margin-top:4px;font-size:11px;display:block}.schedule-calendar section.drop-target{transition:background .12s}.schedule-calendar section.drop-target:hover{background:#f0f6ff}.calendar-task{cursor:grab}.calendar-task.dragging{opacity:.45}.calendar-task a{cursor:grab}.calendar-task.teal a{color:#12676e;background:#e3f7f7}.calendar-task.orange a{color:#92520a;background:#fff1de}.calendar-task.pink a{color:#9a3058;background:#fbe9f0}.calendar-task.navy a{color:#26497f;background:#e7edf7}.gantt-frame{border:1px solid var(--line);border-radius:8px;grid-template-columns:390px minmax(0,1fr);display:grid;overflow:hidden}.gantt-scroll{min-width:0;padding-bottom:4px;overflow-x:auto}.gantt-scroll .gantt-chart{width:var(--gantt-width);min-width:var(--gantt-width)}.gantt-axis-label{height:46px;min-height:46px}.gantt-date-axis{grid-template-columns:repeat(var(--gantt-columns,var(--gantt-days)),minmax(72px,1fr));height:46px;min-height:46px}.gantt-date-axis span{white-space:normal;text-align:center;flex-direction:column;gap:2px}.gantt-date-axis span b,.gantt-date-axis span small{font-size:11px;line-height:1.1;display:block}.gantt-date-axis span small{font-weight:400}.gantt-date-axis span.weekend{background:#f0f3f8}.gantt-chart{background:#fff;position:relative}.gantt-weekends{pointer-events:none;position:absolute;inset:46px 0 0}.gantt-weekends span{background:#eff3f8b8;position:absolute;top:0;bottom:0}.gantt-row{z-index:1;height:64px;min-height:64px}.gantt-day-grid{grid-template-columns:repeat(var(--gantt-columns,var(--gantt-days)),minmax(72px,1fr));z-index:0;display:grid;position:absolute;inset:0}.gantt-day-grid span{border-right:1px solid #edf1f7}.gantt-day-grid span:last-child{border-right:0}.gantt-timeline-controls{border:1px solid var(--line);background:var(--wash);border-radius:6px;grid-template-columns:minmax(max-content,1fr) auto auto auto auto minmax(max-content,1fr);align-items:center;gap:16px;margin:0 0 12px;padding:10px 12px;display:grid}.gantt-timeline-controls a{color:var(--blue);font-size:13px;font-weight:700;text-decoration:none}.gantt-timeline-controls>a:last-child{justify-self:end}.gantt-timeline-controls strong{white-space:nowrap;font-size:13px}.gantt-timeline-controls .gantt-today-link{border:1px solid var(--line);background:#fff;border-radius:3px;justify-self:center;width:max-content;padding:4px 8px}.gantt-zoom{justify-self:start;gap:4px;display:flex}.gantt-timeline-controls .gantt-zoom a{border:1px solid var(--line);text-align:center;background:#fff;border-radius:3px;min-width:58px;padding:4px 7px;font-size:11px}.gantt-timeline-controls .gantt-zoom a.active{border-color:var(--blue);background:var(--blue);color:#fff}.gantt-schedule-overlay input,.gantt-schedule-overlay select{box-sizing:border-box;border:1px solid var(--line);width:100%;font:inherit;background:#fff;border-radius:4px;padding:10px}.gantt-overlay-dates{grid-template-columns:minmax(0,1.35fr) minmax(120px,.72fr) minmax(0,1.35fr) minmax(120px,.72fr);align-items:start;gap:10px;display:grid}.gantt-overlay-dates small{color:var(--muted);margin-top:4px;font-size:11px;font-weight:400;line-height:1.3;display:block}.gantt-schedule-overlay .trade-overlay-actions{margin-top:4px}.gantt-schedule-overlay .trade-overlay-actions button,.gantt-schedule-overlay .trade-overlay-actions a{box-sizing:border-box;border-radius:4px;justify-content:center;align-items:center;min-height:36px;padding:8px 12px;font-size:13px;font-weight:700;text-decoration:none;display:inline-flex}.gantt-schedule-overlay .trade-overlay-actions button{background:var(--blue);color:#fff;cursor:pointer;border:0}.gantt-schedule-overlay .trade-overlay-actions a{border:1px solid var(--line);color:var(--blue);background:#fff}.schedule-form-dates{grid-template-columns:minmax(0,1.35fr) minmax(120px,.72fr) minmax(0,1.35fr) minmax(120px,.72fr);align-items:start}.schedule-form-dates small{color:var(--muted);margin-top:4px;font-size:11px;font-weight:400;line-height:1.3;display:block}@media (max-width:700px){.gantt-overlay-dates,.schedule-form-dates{grid-template-columns:repeat(2,minmax(0,1fr))}}.schedule-dependency{background:#f6f9ff;border:1px solid #cbd9ef;border-radius:5px;padding:10px}.schedule-dependency small{color:var(--muted);margin-top:6px;font-size:11px;font-weight:400;line-height:1.35;display:block}.gantt-dependency-lines{z-index:1;pointer-events:none;width:100%;height:100%;position:absolute;inset:0;overflow:visible}.gantt-dependency-lines path{fill:none;stroke:#657994;stroke-width:2px;vector-effect:non-scaling-stroke}.gantt-dependency-lines marker path{fill:#657994}.gantt-row{z-index:2}.gantt-bar{z-index:3}.gantt-edit{color:var(--blue);font-size:13px;font-weight:700;text-decoration:none}.gantt-today-marker{z-index:5;pointer-events:none;background:#d9485f;width:2px;scroll-margin-inline:45vw;position:absolute;top:0;bottom:0}.gantt-today-marker span{color:#fff;white-space:nowrap;background:#d9485f;border-radius:3px;padding:2px 5px;font-size:10px;font-weight:700;line-height:1.1;position:absolute;top:3px;left:4px}.gantt-bar{cursor:grab}.gantt-bar:active{cursor:grabbing}.gantt-bar.moving{opacity:.65}.gantt-labels{z-index:2;position:relative;box-shadow:2px 0 4px #0a182a14}.gantt-axis-label,.gantt-label{z-index:1;position:relative}.gantt-label{height:64px;min-height:64px;overflow:hidden}.gantt-label>div{overflow:hidden}.gantt-label strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.gantt-label[hidden],.gantt-row[hidden]{display:none}.calendar-tools{justify-content:space-between;align-items:center;margin:18px 0 12px;display:flex}.calendar-tools a{color:var(--blue);font-size:13px;font-weight:700;text-decoration:none}.schedule-calendar{border:1px solid var(--line);border-radius:8px;grid-template-columns:repeat(7,1fr);display:grid;overflow:hidden}.schedule-calendar>strong{background:var(--wash);padding:10px;font-size:12px}.schedule-calendar section{border-top:1px solid var(--line);border-right:1px solid var(--line);min-height:112px;padding:8px}.schedule-calendar section:nth-child(7n){border-right:0}.schedule-calendar section.outside{color:var(--muted);background:#f8fafc}.schedule-calendar b,.schedule-calendar a{display:block}.schedule-calendar b{margin-bottom:7px;font-size:12px}.schedule-calendar a{color:var(--blue);text-overflow:ellipsis;white-space:nowrap;background:#eaf2ff;border-radius:3px;margin-top:4px;padding:4px 5px;font-size:11px;font-weight:700;text-decoration:none;overflow:hidden}.schedule-register:has(.schedule-views){margin-top:12px;position:relative}.schedule-register .schedule-views{margin:0;padding:0;position:absolute;top:0;right:7%}.schedule-register .schedule-views a{box-sizing:border-box;justify-content:center;align-items:center;height:36px;padding:0 11px;line-height:1;display:inline-flex}.schedule-calendar-register .schedule-views,.schedule-lookahead-register .schedule-views{right:calc(7% + 36px)}.schedule-views{gap:6px;max-width:1200px;margin:0 auto;padding:0 7%;display:flex}.schedule-views a{border:1px solid var(--line);color:var(--blue);border-radius:4px;padding:8px 11px;font-size:13px;font-weight:700;text-decoration:none}.schedule-views a.active{border-color:var(--blue);background:var(--blue);color:#fff}.lookahead-grid{grid-template-columns:repeat(7,1fr);gap:10px;margin-top:18px;display:grid}.lookahead-grid section{border:1px solid var(--line);border-radius:6px;min-height:150px;padding:11px}.lookahead-grid section:nth-child(7n+1),.lookahead-grid section:nth-child(7n+2){background:#f7f9fc}.lookahead-grid section:nth-child(8){border-top:3px solid var(--blue)}.lookahead-grid h2{margin:0 0 10px;font-size:13px}.lookahead-grid article{background:#eaf2ff;border-radius:4px;margin-top:7px;padding:8px;font-size:12px}.lookahead-grid strong,.lookahead-grid small{display:block}.lookahead-grid small,.lookahead-grid p{color:var(--muted);margin-top:4px;font-size:11px}.lookahead-grid p{line-height:1.4}.question-register-page .catalogue-header,.question-register-page .question-list{box-sizing:border-box;padding-left:0;padding-right:0}.question-list-heading{justify-content:space-between;align-items:flex-end;gap:16px;display:flex}.question-register-record{border:1px solid var(--line);color:var(--ink);background:#f8fbff;border-radius:8px;justify-content:space-between;align-items:flex-start;gap:20px;padding:20px 22px;text-decoration:none;display:flex}.question-register-record:hover{border-color:var(--blue)}.question-register-record h3{margin:10px 0 5px;font-size:21px}.question-register-record p{color:var(--muted);margin:0}.question-register-record aside{text-align:right;font-size:13px}.question-register-record aside strong,.question-register-record aside small{display:block}.question-register-record aside small{color:var(--muted);margin-top:7px;font-size:12px}.question-overdue{color:#a01b34}@media (max-width:760px){.question-register-page .catalogue-header,.question-register-page .question-list{padding-left:22px;padding-right:22px}.question-list-heading{flex-direction:column;align-items:flex-start}.question-register-record{flex-direction:column}.question-register-record aside{text-align:left}}.question-register-page .catalogue-header,.question-register-page .question-list{box-sizing:border-box;max-width:none;padding-left:20px;padding-right:20px}.question-summary{flex-wrap:wrap;gap:8px;margin:12px 0 16px;display:flex}.question-summary a{color:#40506a;background:#e4e9f1;border-radius:99px;padding:4px 8px;font-size:11px;font-weight:700;text-decoration:none;display:inline-block}.question-summary a.overdue{color:#8f2435;background:#ffe5e9}.question-summary a:hover{filter:brightness(.96)}.question-list .question-filter{grid-template-columns:minmax(250px,1fr) minmax(220px,.9fr) 150px auto auto auto;gap:9px;padding:0 0 14px;display:grid}.question-list .question-filter input,.question-list .question-filter select{box-sizing:border-box;width:100%;min-width:0}.question-filter .question-new-item{color:#fff;min-height:34px;margin:0;padding:7px 11px}.question-list .table-panel{overflow-x:auto}.question-register-table{min-width:1280px}.question-register-table td strong,.question-register-table td small{display:block}.question-register-table td small{white-space:normal;max-width:300px}.question-register-table th a{color:inherit;white-space:nowrap;text-decoration:none}.question-register-table th a:hover,.question-title-link:hover,.question-open:hover{color:var(--blue);text-decoration:underline}.question-title-link{color:var(--ink);text-decoration:none}.question-id{white-space:nowrap;min-width:150px}.question-description{min-width:280px}.question-project-id{white-space:nowrap}.question-open{color:var(--blue);white-space:nowrap;font-size:13px;font-weight:700;text-decoration:none}@media (max-width:900px){.question-list .question-filter{grid-template-columns:1fr 1fr}.question-filter .question-new-item{width:max-content}}@media (max-width:760px){.question-register-page .catalogue-header,.question-register-page .question-list{padding-left:22px;padding-right:22px}}.bill-filter .bill-new-button{box-sizing:border-box;background:var(--blue);color:#fff;border-radius:4px;align-items:center;height:34px;padding:0 11px;display:inline-flex}.question-detail-overlay .trade-overlay-card{width:min(100%,860px);max-height:calc(100vh - 48px);overflow-y:auto}.question-detail-overlay .question-card{margin:18px 0 0}.question-detail-overlay .question-card.closed{opacity:1}@media (max-width:760px){.question-detail-overlay .question-reply-form{grid-template-columns:1fr}}.question-detail-overlay .question-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.question-detail-overlay .question-actions form{margin:0}.question-detail-overlay .question-actions button,.question-detail-overlay .question-actions .inline-editor summary{box-sizing:border-box;white-space:nowrap;border-radius:4px;justify-content:center;align-items:center;min-height:36px;margin:0;padding:8px 12px;font-size:13px;font-weight:700;display:inline-flex}.question-detail-overlay .question-actions button{background:var(--blue);color:#fff;cursor:pointer;border:0}.question-detail-overlay .question-actions button.remove-line{border:1px solid #e7a9b5;color:#8f2435!important;background:#fff!important}.question-detail-overlay .question-actions .inline-editor summary{border:1px solid var(--line);color:var(--blue);cursor:pointer;background:#fff;list-style:none}.question-detail-overlay .question-actions .inline-editor summary::-webkit-details-marker{display:none}.question-detail-overlay .question-reply-form button{min-height:36px;padding:8px 12px}.question-detail-overlay .question-card .inline-editor>form{z-index:50;border:1px solid var(--line);background:#fff;border-radius:8px;width:min(380px,100vw - 40px);max-height:calc(100vh - 48px);padding:18px;position:fixed;top:50%;left:50%;right:auto;overflow-y:auto;transform:translate(-50%,-50%);box-shadow:0 18px 55px #0a182a47}.question-detail-overlay .question-card .inline-editor>form label{color:var(--ink);margin:0 0 12px;font-size:12px;font-weight:700;display:block}.question-detail-overlay .question-card .inline-editor>form input,.question-detail-overlay .question-card .inline-editor>form select,.question-detail-overlay .question-card .inline-editor>form textarea{box-sizing:border-box;border:1px solid var(--line);width:100%;color:var(--ink);font:inherit;background:#fff;border-radius:4px;margin-top:6px;padding:10px}.question-detail-overlay .question-card .inline-editor>form textarea{resize:vertical;min-height:78px}.question-detail-overlay .question-card .inline-editor>form button{margin:0 8px 0 0}@media (max-width:760px){.estimate-register-page .catalogue-header,.estimate-register-page .proposal-filter-panel,.estimate-register-list{padding-left:22px;padding-right:22px}}.estimate-register-page .catalogue-header,.estimate-register-page .proposal-filter-panel{box-sizing:border-box;max-width:none;padding-left:20px;padding-right:20px}.estimate-summary-chips{flex-wrap:wrap;gap:7px;margin-top:7px;display:flex}.estimate-summary-chips span{color:#40506a;background:#e4e9f1;border-radius:99px;padding:4px 8px;font-size:11px;font-weight:700}.estimate-new{box-sizing:border-box;align-items:center;min-height:36px;margin:0;padding:8px 12px;font-size:13px;display:inline-flex}.proposal-filter .estimate-new{color:#fff}.estimate-register-list{max-width:none;margin:14px auto 0;padding:0 20px 56px}.estimate-register-list .table-panel{overflow-x:auto}.estimate-register-table{min-width:1160px}.estimate-register-table td:first-child{color:var(--ink)}.estimate-register-table td strong,.estimate-register-table td small{display:block}.estimate-open{color:var(--blue);white-space:nowrap;font-size:13px;font-weight:700;text-decoration:none}.estimate-open:hover{text-decoration:underline}.estimate-detail-page .catalogue-header,.estimate-detail-page .proposal-filter-panel{box-sizing:border-box;padding-left:0;padding-right:0}@media (min-width:901px){.estimate-register-page .proposal-filter{grid-template-columns:minmax(230px,1fr) minmax(180px,.8fr) max-content max-content max-content max-content max-content}}@media (max-width:760px){.estimate-register-page .catalogue-header,.estimate-register-page .proposal-filter-panel,.estimate-register-list{padding-left:22px;padding-right:22px}}.risk-register-page .catalogue-header,.risk-register-page .risk-list{box-sizing:border-box;max-width:none;padding-left:20px;padding-right:20px}.risk-list-heading{justify-content:space-between;align-items:flex-end;gap:16px;display:flex}.risk-list-heading span{color:var(--muted);margin-top:4px;font-size:13px;display:block}.risk-summary{gap:8px;margin:12px 0 16px;display:flex}.risk-summary a,.risk-summary span,.risk-state{color:#40506a;background:#e4e9f1;border-radius:99px;padding:4px 8px;font-size:11px;font-weight:700;text-decoration:none;display:inline-block}.risk-summary a:hover{filter:brightness(.96)}.risk-summary .high,.risk-state.open{color:#8f2435;background:#ffe5e9}.risk-state.closed{color:#146338;background:#c9f6dd}.risk-title-link{color:var(--ink);text-decoration:none}.risk-title-link:hover{color:var(--blue);text-decoration:underline}@media (max-width:760px){.risk-register-page .catalogue-header,.risk-register-page .risk-list{padding-left:22px;padding-right:22px}.risk-list-heading{flex-direction:column;align-items:flex-start}}.register-columns-toolbar{z-index:3;box-sizing:border-box;background:var(--surface,#fff);justify-content:space-between;align-items:center;gap:12px;min-height:34px;margin-top:8px;margin-bottom:10px;display:flex;position:sticky;left:0}.proposal-register-table th:nth-child(3),.proposal-register-table td:nth-child(3){white-space:nowrap;min-width:132px}.register-columns-controls{margin-left:auto;position:relative}.budget-switcher{align-items:stretch;gap:10px;min-width:0;min-height:36px;margin-left:22px;display:flex}.budget-switcher-label{color:var(--muted);align-items:center;font-size:12px;font-weight:700;display:inline-flex}.budget-switcher-tabs{flex-wrap:wrap;align-items:stretch;gap:4px;min-width:0;display:flex}.budget-switcher-tab{box-sizing:border-box;border:1px solid var(--line);min-height:36px;color:var(--blue);white-space:nowrap;background:#fff;border-radius:4px;align-items:center;padding:8px 12px;font-size:13px;font-weight:700;text-decoration:none;display:inline-flex}.budget-switcher-tab:hover{border-color:var(--blue);background:var(--blue-soft,#eef3ff)}.budget-switcher-tab.active{border-color:var(--blue);background:var(--blue);color:#fff}.register-columns-trigger{box-sizing:border-box;text-align:center;justify-content:center;width:112px;min-width:112px;min-height:36px;margin-right:0;padding:8px 12px}.register-columns-toolbar+table th:last-child,.register-columns-toolbar+table td:last-child{min-width:84px}.register-columns-menu{z-index:50;border:1px solid var(--line);background:var(--surface,#fff);border-radius:8px;width:290px;max-width:calc(100vw - 32px);max-height:calc(100vh - 32px);padding:12px;position:fixed;top:0;left:0;overflow-y:auto;box-shadow:0 12px 30px #0f22462e}.register-columns-menu[hidden]{display:none}.register-columns-help{color:var(--muted);margin:0 0 10px;font-size:12px;line-height:1.4}.register-column-option{border-top:1px solid var(--line-soft,#edf0f5);cursor:grab;justify-content:space-between;align-items:center;gap:8px;min-height:34px;padding:4px 2px;display:flex}.register-column-option:first-of-type{border-top:0}.register-column-option.is-dragging{opacity:.45}.register-column-option label{min-width:0;color:var(--ink);flex:1;align-items:center;gap:8px;font-size:13px;display:flex}.register-column-option label input{accent-color:var(--blue)}.register-column-move-controls{gap:2px;display:flex}.register-column-move{border:1px solid var(--line);background:var(--surface,#fff);width:26px;height:26px;color:var(--ink);border-radius:4px;padding:0;line-height:1}.register-column-move:not(:disabled):hover{background:var(--blue-soft,#eef3ff)}.register-column-move:disabled{opacity:.35;cursor:not-allowed}.register-columns-footer{border-top:1px solid var(--line-soft,#edf0f5);justify-content:flex-end;margin-top:10px;padding-top:8px;display:flex}.register-columns-footer .button-link{color:var(--blue);cursor:pointer;background:0 0;border:0;padding:0;font-size:12px}.register-columns-footer .button-link:hover{text-decoration:underline}.register-column-resizable{position:relative}.register-column-resizable,.register-column-resizable>a{white-space:nowrap}.register-column-resize-handle{z-index:2;cursor:col-resize;touch-action:none;background:0 0;border:0;width:10px;height:100%;margin:0;padding:0;position:absolute;top:0;right:-5px}.register-column-resize-handle:after{content:"";background:0 0;width:1px;position:absolute;top:25%;bottom:25%;left:4px}.register-column-resizable:hover .register-column-resize-handle:after,.register-column-resize-handle:focus-visible:after{background:var(--blue)}.register-column-resize-handle:focus-visible{outline:2px solid var(--blue);outline-offset:-2px}body.register-columns-resizing,body.register-columns-resizing *{cursor:col-resize!important;-webkit-user-select:none!important;user-select:none!important}.register-filter-apply-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.register-filter-apply-actions>a,.bid-filter-actions>a:not(.bid-new-package),.proposal-filter>a:not(.button),.contract-filter>a,.schedule-filter>a:not(.button-link),.compliance-filter>a,.catalogue-filter>a,.risk-filter>a:not(.risk-new-item),.trade-filter-actions>.trade-filter-link{box-sizing:border-box;border:1px solid var(--line);height:36px;min-height:36px;color:var(--blue);white-space:nowrap;background:#fff;border-radius:4px;justify-content:center;align-items:center;margin:0;padding:0 12px;font-size:13px;font-weight:700;line-height:1;text-decoration:none;display:inline-flex}.register-filter-apply-actions>a:hover,.bid-filter-actions>a:not(.bid-new-package):hover,.proposal-filter>a:not(.button):hover,.contract-filter>a:hover,.schedule-filter>a:not(.button-link):hover,.compliance-filter>a:hover,.catalogue-filter>a:hover,.risk-filter>a:not(.risk-new-item):hover,.trade-filter-actions>.trade-filter-link:hover{border-color:var(--blue);background:var(--blue-soft,#eef3ff)}.register-filter-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;margin-left:auto;display:flex}.register-filter-actions>.record-limit,.register-filter-actions>.message-limit,.register-filter-actions>.show-limit{color:var(--muted);white-space:nowrap;align-items:center;gap:6px;font-size:12px;font-weight:700;display:inline-flex}.register-filter-actions>.record-limit select,.register-filter-actions>.message-limit select,.register-filter-actions>.show-limit select{min-width:64px}@media (max-width:900px){.register-filter-actions{justify-content:flex-start;margin-left:0}}@media (min-width:901px){.daily-log-filter>.register-filter-apply-actions{grid-column:4}.daily-log-filter>.daily-log-filter-actions{grid-column:5}.time-clock-register-page .time-filter>.register-filter-apply-actions{grid-column:6}.time-clock-register-page .time-filter>.register-filter-actions{grid-column:7/-1;justify-self:end}.trade-register-filter>.register-filter-actions{margin-left:auto}.trade-register-filter>.trade-filter-actions{flex:0 0 100%;justify-content:flex-end;margin-left:0}}@media (min-width:1760px){.trade-register-filter{flex-wrap:nowrap}.trade-register-filter>input[name=query]{flex:0 175px;width:175px;min-width:160px}.trade-register-filter>select[name=trade]{width:190px;min-width:170px}.trade-register-filter>select[name=active]{width:120px;min-width:120px}.trade-register-filter>select[name=sort]{width:145px;min-width:135px}.trade-register-filter>.register-filter-apply-actions{flex:none}.trade-register-filter>.register-filter-actions{flex:none;margin-left:0}.trade-register-filter>.trade-filter-actions{flex:none;order:0;justify-content:flex-end;margin-left:auto}}:is(.risk-filter,.bid-filter,.daily-log-filter,.lead-filter,.question-filter,.selection-filter,.todo-filter,.schedule-filter,.trade-register-filter,.compliance-filter,.time-filter,.project-filter,.client-filter,.bill-filter,.invoice-filter,.contract-filter,.proposal-filter,.catalogue-filter,.file-filter,.message-filter,.change-order-filter) input:not([type=hidden]),:is(.risk-filter,.bid-filter,.daily-log-filter,.lead-filter,.question-filter,.selection-filter,.todo-filter,.schedule-filter,.trade-register-filter,.compliance-filter,.time-filter,.project-filter,.client-filter,.bill-filter,.invoice-filter,.contract-filter,.proposal-filter,.catalogue-filter,.file-filter,.message-filter,.change-order-filter) select,:is(.risk-filter,.bid-filter,.daily-log-filter,.lead-filter,.question-filter,.selection-filter,.todo-filter,.schedule-filter,.trade-register-filter,.compliance-filter,.time-filter,.project-filter,.client-filter,.bill-filter,.invoice-filter,.contract-filter,.proposal-filter,.catalogue-filter,.file-filter,.message-filter,.change-order-filter) button,:is(.risk-filter,.bid-filter,.daily-log-filter,.lead-filter,.question-filter,.selection-filter,.todo-filter,.schedule-filter,.trade-register-filter,.compliance-filter,.time-filter,.project-filter,.client-filter,.bill-filter,.invoice-filter,.contract-filter,.proposal-filter,.catalogue-filter,.file-filter,.message-filter,.change-order-filter) .button-link{box-sizing:border-box;height:36px;min-height:36px}:is(.risk-filter,.bid-filter,.daily-log-filter,.lead-filter,.question-filter,.selection-filter,.todo-filter,.schedule-filter,.trade-register-filter,.compliance-filter,.time-filter,.project-filter,.client-filter,.bill-filter,.invoice-filter,.contract-filter,.proposal-filter,.catalogue-filter,.file-filter,.message-filter,.change-order-filter) button{justify-content:center;align-items:center;padding:0 12px;line-height:1;display:inline-flex}.risk-closed{background:#f8fbf9}.risk-closed .table-actions form{margin:0}.risk-list .table-actions{justify-content:flex-end}.risk-number,.risk-activity{white-space:nowrap}.risk-activity small{color:var(--muted);margin-top:4px;font-size:12px;display:block}.risk-register-page .catalogue-header,.risk-register-page .risk-list{text-align:left}.risk-register-page .risk-list-heading,.risk-register-page .risk-summary{text-align:left;justify-content:flex-start}.safety-form-error{color:#8f2435;background:#fff1f3;border:1px solid #e7a9b5;border-radius:5px;max-width:1200px;margin:18px auto;padding:10px 12px;font-size:13px;font-weight:700}.safety-induction-overlay form{gap:14px;display:grid}.safety-induction-overlay label{color:var(--ink);gap:6px;font-size:13px;font-weight:700;display:grid}.safety-induction-overlay label small{color:var(--muted);font-size:12px;font-weight:400}.safety-induction-overlay input,.safety-induction-overlay select{box-sizing:border-box;border:1px solid var(--line);width:100%;min-height:40px;color:var(--ink);font:inherit;background:#fff;border-radius:4px;padding:9px 10px}.signature-pad{box-sizing:border-box;border:1px solid var(--line);cursor:crosshair;touch-action:none;background:#fff;border-radius:4px;width:100%;height:150px}.safety-induction-overlay .trade-overlay-actions{flex-wrap:wrap;align-items:center;gap:8px;margin-top:4px;display:flex}.safety-induction-overlay .trade-overlay-actions button,.safety-induction-overlay .trade-overlay-actions a{box-sizing:border-box;border-radius:4px;justify-content:center;align-items:center;min-height:36px;padding:8px 12px;font-size:13px;font-weight:700;text-decoration:none;display:inline-flex}.safety-induction-overlay .trade-overlay-actions button{background:var(--blue);color:#fff;cursor:pointer;border:0}.safety-induction-overlay .trade-overlay-actions .signature-clear,.safety-induction-overlay .trade-overlay-actions a{border:1px solid var(--line);color:var(--blue);background:#fff}.safety-induction-overlay .trade-overlay-actions button:disabled{opacity:.45;cursor:not-allowed}.time-clock-overlay .trade-overlay-actions,.time-costing-overlay .trade-overlay-actions{flex-wrap:wrap;align-items:center;gap:8px;margin-top:16px;display:flex}.time-clock-overlay .trade-overlay-actions button,.time-clock-overlay .trade-overlay-actions a,.time-costing-overlay .trade-overlay-actions button,.time-costing-overlay .trade-overlay-actions a{box-sizing:border-box;border-radius:4px;justify-content:center;align-items:center;min-height:36px;padding:8px 12px;font-size:13px;font-weight:700;text-decoration:none;display:inline-flex}.time-clock-overlay .trade-overlay-actions button,.time-costing-overlay .trade-overlay-actions button{background:var(--blue);color:#fff;cursor:pointer;border:0}.time-clock-overlay .trade-overlay-actions a,.time-costing-overlay .trade-overlay-actions a{border:1px solid var(--line);color:var(--blue);background:#fff}.time-clock-overlay .trade-overlay-actions button:disabled,.time-costing-overlay .trade-overlay-actions button:disabled{opacity:.45;cursor:not-allowed}.safety-overview-heading{justify-content:space-between;align-items:flex-end;gap:16px;display:flex}.safety-summary{flex-wrap:wrap;gap:8px;padding-top:8px;display:flex}.safety-summary span,.safety-attention{color:#40506a;background:#e4e9f1;border-radius:99px;padding:4px 8px;font-size:11px;font-weight:700;display:inline-block}.safety-summary .attention,.safety-attention{color:#805f00;background:#fff0bf}.safety-note{gap:10px;display:grid}.safety-note a{width:max-content;max-width:100%}@media (max-width:760px){.safety-overview-heading{flex-direction:column;align-items:flex-start}.safety-summary{margin-top:4px}}.schedule-summary{flex-wrap:wrap;gap:8px;margin:0 0 16px;display:flex}.schedule-summary span,.schedule-state{color:#40506a;background:#e4e9f1;border-radius:99px;padding:4px 8px;font-size:11px;font-weight:700;display:inline-block}.schedule-summary .due{color:#805f00;background:#fff0bf}.schedule-summary .overdue,.schedule-state.overdue{color:#8f2435;background:#ffe5e9}.schedule-state.complete{color:#146338;background:#c9f6dd}.schedule-filter .schedule-new-item{color:#fff;margin-top:0}.schedule-filter .button-link{color:#fff}.selection-register-page .catalogue-header,.selection-register-page .selection-list{box-sizing:border-box;max-width:none;padding-left:20px;padding-right:20px}.selection-list .selection-filter{grid-template-columns:minmax(250px,1fr) 200px 150px 130px auto auto auto}.selection-filter .selection-new-item{color:#fff;grid-column:-1;min-height:34px;margin-top:0;padding:7px 11px}.selection-project-id{white-space:nowrap}@media (max-width:900px){.selection-list .selection-filter{grid-template-columns:1fr 1fr}.selection-filter .selection-new-item{grid-column:auto}}@media (max-width:760px){.selection-register-page .catalogue-header,.selection-register-page .selection-list{padding-left:22px;padding-right:22px}}.daily-logs-register-page .catalogue-header,.daily-logs-register-page .daily-log-list{box-sizing:border-box;max-width:none}.daily-log-filter .daily-log-new-item{color:#fff;margin-top:0}.daily-log-filter-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;display:flex}.daily-log-filter-actions a:not(.daily-log-new-item){color:var(--blue);font-size:13px;font-weight:700;text-decoration:none}.daily-log-recorded{color:var(--muted);margin-top:6px;font-size:11px;display:block}@media (min-width:901px){.daily-log-filter{grid-template-columns:minmax(260px,1fr) minmax(170px,.65fr) minmax(170px,.65fr) auto auto;display:grid}.daily-log-filter select,.daily-log-filter input{box-sizing:border-box;width:100%;min-width:0}.daily-log-filter .daily-log-date-filter input{min-width:0}.daily-log-filter-actions{grid-column:-1}}@media (max-width:900px){.daily-log-filter .daily-log-new-item{width:max-content}.daily-log-filter-actions{justify-content:flex-start}}.daily-log-photos>.inline-editor>form{z-index:30;width:min(360px,100vw - 40px);max-height:calc(100vh - 40px);position:fixed;top:50%;left:50%;right:auto;overflow-y:auto;transform:translate(-50%,-50%)}.daily-log-overlay .trade-overlay-card{width:min(100%,620px);max-height:calc(100vh - 48px);overflow-y:auto}.daily-log-overlay input,.daily-log-overlay select,.daily-log-overlay textarea{box-sizing:border-box;border:1px solid var(--line);width:100%;font:inherit;background:#fff;border-radius:4px;padding:10px}.daily-log-overlay textarea{resize:vertical;min-height:70px}.daily-log-overlay-project{margin-top:20px}.daily-log-overlay-project p{color:var(--muted);line-height:1.45}.daily-log-register-panel{border:1px solid var(--line);border-radius:8px;overflow:hidden}.daily-log-register-panel .daily-log-rows{border:0;border-radius:0;overflow:hidden}.daily-log-register-panel .register-columns-toolbar{margin-top:8px;margin-bottom:10px}.daily-log-rows{border:1px solid var(--line);border-radius:8px;overflow:hidden}.daily-log-row{border-top:1px solid var(--line);background:#fff;grid-template-columns:130px 105px minmax(190px,1.35fr) minmax(110px,.7fr) minmax(220px,1.7fr) 110px 75px 46px;align-items:center;gap:14px;min-height:58px;padding:0 14px;font-size:13px;display:grid}.daily-log-row:first-child{border-top:0}.daily-log-row:not(.daily-log-row-head):hover{background:#f8fbff}.daily-log-row-head{background:var(--wash);min-height:38px;color:var(--muted);font-size:11px;font-weight:700}.daily-log-row a{color:var(--blue);font-weight:700;text-decoration:none}.daily-log-row-head a{color:var(--muted)}.daily-log-row-head a:hover{color:var(--blue)}.daily-log-project,.daily-log-project-id{color:var(--ink);font-weight:700}.daily-log-project-id{white-space:nowrap}.daily-log-summary{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.daily-log-issue{white-space:nowrap;background:#ffe5e9;border-radius:99px;align-items:center;width:max-content;max-width:100%;padding:4px 8px;font-size:11px;font-weight:700;line-height:1.2;text-decoration:none;display:inline-flex;color:#8f2435!important}.daily-log-issue:hover{background:#ffd8de;text-decoration:none;color:#8f2435!important}.daily-log-muted{color:var(--muted)}.daily-log-detail-overlay .trade-overlay-card{width:min(100%,760px);max-height:calc(100vh - 48px);overflow-y:auto}.daily-log-detail-meta{justify-content:space-between;align-items:center;gap:12px;margin:18px 0;display:flex}.daily-log-detail-meta small{color:var(--muted);font-size:12px}.daily-log-detail-content{gap:14px;display:grid}.daily-log-detail-content section{border:1px solid var(--line);background:#fff;border-radius:6px;padding:14px}.daily-log-detail-content h3,.daily-log-detail-photos h3{margin:0;font-size:15px}.daily-log-detail-content p,.daily-log-detail-photos>p{color:var(--muted);white-space:pre-wrap;margin:7px 0 0;line-height:1.45}.daily-log-detail-photos{border-top:1px solid var(--line);margin-top:18px;padding-top:16px}.daily-log-detail-photos>div:first-child{justify-content:space-between;align-items:center;gap:14px;display:flex}.daily-log-detail-photos .inline-editor summary{padding-bottom:0}.daily-log-detail-photos .inline-editor>form{z-index:70;width:min(400px,100vw - 40px);max-height:calc(100vh - 40px);position:fixed;top:50%;left:50%;right:auto;overflow-y:auto;transform:translate(-50%,-50%)}.daily-log-detail-photos .inline-editor>form input,.daily-log-detail-photos .inline-editor>form select{box-sizing:border-box;width:100%}.daily-log-detail-photos .daily-log-photo-grid{margin-bottom:24px}.daily-log-detail-overlay .trade-overlay-actions{border-top:1px solid var(--line);margin-top:20px;padding-top:16px}@media (max-width:1050px){.daily-log-rows,.daily-log-register-panel .daily-log-rows{overflow-x:auto}.daily-log-row{min-width:1030px}.daily-log-detail-meta{flex-direction:column;align-items:flex-start}}.time-clock-register-page .catalogue-header,.time-clock-register-page .todo-list{box-sizing:border-box;max-width:none}.time-summary{flex-wrap:wrap;gap:8px;margin:0 0 16px;display:flex}.time-summary a,.time-state{color:#40506a;background:#e4e9f1;border-radius:99px;padding:4px 8px;font-size:11px;font-weight:700;text-decoration:none;display:inline-block}.time-summary a:hover,.time-state.active{color:#146c6a;background:#d8f7f6}.time-date-filter{color:var(--muted);white-space:nowrap;align-items:center;gap:6px;font-size:13px;font-weight:700;display:flex}.time-filter .time-clock-new-item{color:#fff;margin-top:0}.time-filter .time-weekly-link{margin-top:0}.time-filter{flex-wrap:wrap}.time-clock-overlay .trade-overlay-card,.time-costing-overlay .trade-overlay-card{width:min(100%,560px);max-height:calc(100vh - 48px);overflow-y:auto}.time-costing-overlay form{gap:14px;display:grid}.time-costing-overlay label{color:var(--ink);gap:6px;font-size:13px;font-weight:700;display:grid}.time-costing-overlay select{box-sizing:border-box;border:1px solid var(--line);width:100%;min-height:40px;color:var(--ink);font:inherit;background:#fff;border-radius:4px;padding:9px 10px}.time-costing-link{white-space:nowrap;min-height:32px;padding:6px 9px}.time-filter .time-weekly-back{margin-top:0}.time-clock-filter-actions{flex-basis:100%;align-items:center;gap:8px;display:flex}.time-clock-filter-actions .time-clock-new-item,.time-clock-filter-actions .time-weekly-link{margin-top:0}@media (min-width:1280px){.time-clock-register-page .time-filter{grid-template-columns:minmax(250px,1.3fr) minmax(175px,.8fr) max-content max-content 130px max-content max-content max-content;align-items:end;display:grid}.time-clock-register-page .time-filter>select:first-child,.time-clock-register-page .time-filter>input{width:100%;min-width:0}.time-clock-register-page .time-date-filter input{width:145px}.time-clock-register-page .time-filter .record-limit{gap:4px}.time-clock-register-page .time-filter .record-limit select{width:64px}.time-clock-filter-actions{grid-column:1/-1}}.time-clock-register-page .time-filter>button{box-sizing:border-box;height:36px}.time-clock-register-page .todo-list-heading span{margin-top:8px;display:block}.time-entry-edit-overlay .trade-overlay-card{width:min(100%,560px)}.time-entry-edit-overlay form{gap:14px;display:grid}.time-entry-edit-overlay label{color:var(--ink);gap:6px;font-size:13px;font-weight:700;display:grid}.time-entry-edit-overlay input{box-sizing:border-box;border:1px solid var(--line);width:100%;min-height:40px;color:var(--ink);font:inherit;background:#fff;border-radius:4px;padding:9px 10px}.time-entry-edit-overlay .trade-overlay-actions{flex-wrap:wrap;align-items:center;gap:8px;margin-top:4px;display:flex}.time-entry-edit-overlay .trade-overlay-actions button,.time-entry-edit-overlay .trade-overlay-actions a{box-sizing:border-box;border-radius:4px;justify-content:center;align-items:center;min-height:36px;padding:8px 12px;font-size:13px;font-weight:700;text-decoration:none;display:inline-flex}.time-entry-edit-overlay .trade-overlay-actions button{background:var(--blue);color:#fff;cursor:pointer;border:0}.time-entry-edit-overlay .trade-overlay-actions a,.time-entry-edit-link{border:1px solid var(--line);color:var(--blue);background:#fff}.time-entry-edit-link{box-sizing:border-box;border-radius:4px;align-items:center;min-height:32px;padding:6px 9px;font-size:13px;font-weight:700;text-decoration:none;display:inline-flex}.time-entry-edit-error{color:#8f2435;background:#fff1f3;border:1px solid #e7a9b5;border-radius:5px;margin:0;padding:10px 12px;font-size:13px;font-weight:700}.time-weekly-details-heading>.button-secondary{margin-top:12px}.time-weekly-details-heading>div>span{margin-top:8px;display:block}.labour-cost-entry{color:#146c6a;margin-top:4px;font-size:11px;font-weight:700;display:block}.labour-cost-entry a{color:inherit;text-decoration:underline}.messages-register-page .catalogue-header,.messages-register-page .message-list{box-sizing:border-box;max-width:none}.message-filter{flex-wrap:wrap}.message-filter .message-new-item{color:#fff;margin-top:0}.message-limit{color:var(--muted);white-space:nowrap;align-items:center;gap:6px;font-size:13px;font-weight:700;display:flex}.message-limit select{min-width:0}.record-limit{color:var(--muted);white-space:nowrap;align-items:center;gap:6px;font-size:13px;font-weight:700;display:flex}.record-limit select{min-width:0}.lead-status-form{gap:7px;min-width:130px;display:grid}.lead-status-form select{border:1px solid var(--line);background:#fff;border-radius:4px;padding:7px}.lead-status-form button{margin:0!important;padding:7px 9px!important}@media (max-width:760px){.lead-list-heading{flex-direction:column;align-items:flex-start;gap:10px}.lead-filter{flex-wrap:wrap}}.project-workspace-hero .project-client{color:var(--ink);margin-top:8px;font-size:13px}.project-workspace-hero .project-client strong{color:var(--blue)}.staff-form{grid-template-columns:minmax(360px,640px)}.staff-header{box-sizing:border-box;width:100%;max-width:none;padding-left:5%;padding-right:5%}.staff-list{box-sizing:border-box;width:100%;max-width:none;margin:32px auto;padding:0 5% 60px}.staff-list-heading{justify-content:space-between;align-items:center;gap:16px;margin-bottom:16px;display:flex}.staff-list-heading h2{margin:0;font-size:24px}.staff-list-heading span{color:var(--muted);font-size:13px}.staff-filter{align-items:center;gap:8px;display:flex}.staff-filter input,.staff-filter select{border:1px solid var(--line);height:36px;color:var(--ink);background:#fff;border-radius:4px;padding:8px}.staff-filter input{width:180px}.staff-filter button{background:var(--blue);color:#fff;cursor:pointer;border:0;border-radius:4px;height:36px;padding:0 11px;font-weight:700}.staff-filter a{color:var(--blue);font-size:13px;font-weight:700;text-decoration:none}.staff-filter a.button{box-sizing:border-box;color:#fff;align-items:center;height:36px;margin-top:0;padding:0 12px;font-size:13px;display:inline-flex}.staff-list .table-panel{overflow-x:auto}.staff-projects{flex-wrap:wrap;gap:4px;min-width:180px;display:flex}.staff-projects .job-chip{overflow-wrap:anywhere;max-width:100%;margin:0}.staff-actions{white-space:nowrap;margin:0}.staff-actions .inline-editor>form{z-index:30;white-space:normal;width:min(360px,100vw - 40px);max-height:calc(100vh - 40px);position:fixed;top:50%;left:50%;right:auto;overflow-y:auto;transform:translate(-50%,-50%)}.staff-actions .inline-editor-drawer>form{box-sizing:border-box;border:0;border-left:1px solid var(--line);border-radius:0;width:min(100%,560px);height:100dvh;max-height:none;padding:28px;inset:0 0 0 auto;overflow-y:auto;transform:none;box-shadow:-18px 0 55px #10234633}.inline-editor .inline-editor-drawer-backdrop{z-index:29;cursor:default;background:#0a182a85;border:0;border-radius:0;width:100%;height:100%;padding:0;position:fixed;inset:0}.inline-editor-drawer-heading{border-bottom:1px solid var(--line);margin:0 0 20px;padding-bottom:16px}.inline-editor-drawer-heading h2{margin:0;font-size:24px}.staff-name-edit-button{color:var(--ink);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;padding:0;font-weight:700}.staff-name-edit-button:hover{color:var(--blue);text-decoration:underline}@media (max-width:560px){.staff-actions .inline-editor-drawer>form{width:100%;padding:22px}}.staff-actions .inline-editor .form-help{margin:10px 0 12px}.staff-rate-method{border:1px solid var(--line);border-radius:6px;gap:7px;margin:16px 0;padding:12px;display:grid}.staff-rate-method legend{color:var(--muted);padding:0 4px;font-size:12px;font-weight:700}.staff-rate-method label{color:var(--ink);align-items:center;gap:8px;margin:0;font-size:13px;font-weight:600;display:flex}.staff-rate-method input{width:auto;margin:0}.staff-rate-calculation{background:#f4fbf7;border:1px solid #9ad9be;border-radius:6px;gap:3px;margin:14px 0;padding:12px;display:grid}.staff-rate-calculation span,.staff-rate-calculation small{color:#146338;font-size:12px}.staff-rate-calculation strong{color:var(--ink);font-size:20px}.help-preferences{z-index:40;position:fixed;bottom:20px;right:20px}.help-preferences>button{border:1px solid var(--line);color:var(--blue);cursor:pointer;background:#fff;border-radius:99px;padding:10px 14px;font-weight:700;box-shadow:0 5px 16px #10203926}.help-preferences-panel{border:1px solid var(--line);background:#fff;border-radius:8px;width:260px;padding:15px;position:absolute;bottom:48px;right:0;box-shadow:0 8px 24px #1020392e}.help-preferences-panel strong{color:var(--ink)}.help-preferences-panel p{color:var(--muted);margin:7px 0 12px;font-size:13px;line-height:1.4}.help-preferences-panel label{color:var(--ink);align-items:flex-start;gap:8px;font-size:13px;font-weight:700;display:flex}.help-preferences-panel input{margin-top:2px}.context-help{background:#f5f9ff;border:1px solid #b9cff2;border-radius:7px;gap:10px;margin:16px 0;padding:14px;display:grid}.context-help .eyebrow{margin-bottom:3px}.context-help h3{margin:0;font-size:16px}.context-help ol{color:var(--ink);gap:6px;margin:0;padding-left:21px;font-size:13px;line-height:1.4;display:grid}.context-help-actions{align-items:center;gap:13px;display:flex}.context-help-actions button,.context-help-trigger{color:var(--blue);cursor:pointer;background:0 0;border:0;padding:0;font-size:12px;font-weight:700}.context-help-trigger{margin:12px 0 0;text-decoration:underline}.trade-list .table-panel{overflow:auto visible}.trade-list table{min-width:1180px}.trade-list th:nth-child(5),.trade-list td:nth-child(5){min-width:185px}.trade-list td:nth-child(5) small{display:none}.trade-register-page .catalogue-header{max-width:none;padding-left:20px;padding-right:20px;position:relative}.trade-register-page .catalogue-header-actions{z-index:2;position:absolute;top:calc(100% + 94px);right:20px}.trade-register-page .catalogue-header-actions .trade-add-company{box-sizing:border-box;align-items:center;height:34px;margin:0;padding:0 12px;font-size:14px;display:inline-flex}@media (max-width:1180px){.trade-register-page .catalogue-header-actions{margin-top:16px;position:static}}.trade-overlay{z-index:30;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.trade-overlay-backdrop{background:#0a182a85;position:absolute;inset:0}.trade-overlay-card{border:1px solid var(--line);background:#fff;border-radius:9px;width:min(100%,510px);padding:24px;position:relative;box-shadow:0 18px 55px #0a182a47}.trade-overlay-card header{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.trade-overlay-card h2{margin:0 0 7px;font-size:25px}.trade-overlay-card header p:not(.eyebrow){color:var(--muted);margin:0;line-height:1.4}.trade-overlay-close{border:1px solid var(--line);width:32px;height:32px;color:var(--ink);border-radius:4px;place-items:center;font-size:24px;text-decoration:none;display:grid}.trade-overlay-card form{gap:14px;margin-top:20px;display:grid}.trade-overlay-card label{color:var(--ink);gap:6px;font-size:12px;font-weight:700;display:grid}.trade-overlay-card select{border:1px solid var(--line);width:100%;font:inherit;background:#fff;border-radius:4px;padding:10px}.trade-overlay-actions{align-items:center;gap:13px;display:flex}.trade-overlay-actions button{margin:0}.trade-overlay-actions a{color:var(--blue);font-size:14px;font-weight:700;text-decoration:none}.staff-create-overlay{justify-content:end;place-items:stretch stretch;padding:0}.staff-create-overlay .trade-overlay-card{border-top:0;border-bottom:0;border-right:0;border-radius:0;width:min(100%,620px);height:100dvh;max-height:none;padding:28px;overflow:hidden auto;box-shadow:-18px 0 55px #0a182a47}.staff-create-overlay .trade-overlay-card input:not([type=radio]):not([type=checkbox]),.staff-create-overlay .trade-overlay-card select{box-sizing:border-box;border:1px solid var(--line);width:100%;min-height:40px;color:var(--ink);font:inherit;background:#fff;border-radius:4px;padding:9px 10px}.staff-create-overlay .trade-overlay-card .form-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.staff-create-overlay .staff-rate-method label{justify-content:flex-start;align-items:center;width:100%;display:flex}.staff-create-overlay .staff-rate-method input[type=radio]{width:18px;min-width:18px;height:18px;min-height:18px;accent-color:var(--blue);flex:none;margin:0;padding:0}.staff-create-overlay .staff-rate-method+label{justify-items:start}.staff-create-overlay .staff-rate-method+label input{width:120px;max-width:100%}.staff-create-overlay .staff-rate-percentage-field{justify-items:start}.staff-create-overlay .staff-rate-percentage-input{max-width:100%;width:78px!important}.staff-rate-cost-field{justify-items:start}.staff-rate-cost-input{max-width:100%;width:120px!important}.staff-rate-chargeout-field{justify-items:start}.staff-rate-chargeout-input{max-width:100%;width:120px!important}.staff-create-overlay .context-help-trigger{text-align:left;justify-self:start;margin:0}.staff-create-overlay .trade-overlay-actions{gap:8px;margin-top:4px}.staff-create-overlay .trade-overlay-actions button,.staff-create-overlay .trade-overlay-actions a{box-sizing:border-box;border-radius:4px;justify-content:center;align-items:center;min-height:36px;padding:8px 12px;font-size:13px;font-weight:700;line-height:1;text-decoration:none;display:inline-flex}.staff-create-overlay .trade-overlay-actions button{background:var(--blue);color:#fff;cursor:pointer;border:0}.staff-create-overlay .trade-overlay-actions a{border:1px solid var(--line);color:var(--blue);background:#fff}@media (max-width:560px){.staff-create-overlay .trade-overlay-card{width:100%;padding:22px}.staff-create-overlay .trade-overlay-card .form-row{grid-template-columns:1fr}}.client-create-overlay{justify-content:flex-end;align-items:stretch;padding:0;display:flex}.client-create-overlay .trade-overlay-card{z-index:1;border-top:0;border-bottom:0;border-right:0;border-radius:0;width:min(100%,620px);height:100dvh;max-height:none;padding:28px;overflow:hidden auto;box-shadow:-18px 0 55px #0a182a47}.client-create-overlay .trade-overlay-card input,.client-create-overlay .trade-overlay-card select{box-sizing:border-box;border:1px solid var(--line);width:100%;min-height:40px;color:var(--ink);font:inherit;background:#fff;border-radius:4px;padding:9px 10px}.client-create-overlay .trade-overlay-card .form-row{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.client-create-overlay .trade-overlay-actions{gap:8px;margin-top:4px}.client-create-overlay .trade-overlay-actions button,.client-create-overlay .trade-overlay-actions a{box-sizing:border-box;border-radius:4px;justify-content:center;align-items:center;min-height:36px;padding:8px 12px;font-size:13px;font-weight:700;line-height:1;text-decoration:none;display:inline-flex}.client-create-overlay .trade-overlay-actions button{background:var(--blue);color:#fff;cursor:pointer;border:0}.client-create-overlay .trade-overlay-actions a{border:1px solid var(--line);color:var(--blue);background:#fff}@media (max-width:560px){.client-create-overlay .trade-overlay-card{width:100%;padding:22px}.client-create-overlay .trade-overlay-card .form-row{grid-template-columns:1fr}}.compliance-page .catalogue-header,.compliance-register{max-width:none;padding-left:20px;padding-right:20px}.compliance-register{margin:32px auto}.compliance-register-heading{justify-content:space-between;align-items:center;gap:16px;margin-bottom:14px;display:flex}.compliance-register-heading h2{margin:0;font-size:24px}.compliance-register-heading span{color:var(--muted);font-size:13px}.compliance-register-heading form{align-items:center;gap:8px;display:flex}.compliance-register-heading select{border:1px solid var(--line);background:#fff;border-radius:4px;height:34px;padding:7px 9px}.compliance-register-heading button{background:var(--blue);color:#fff;border:0;border-radius:4px;height:34px;padding:0 11px;font-weight:700}.compliance-register-heading a,.compliance-update{color:var(--blue);font-size:13px;font-weight:700;text-decoration:none}.compliance-register .file-preview-trigger.title{color:var(--blue);text-align:left;margin-top:6px;font-size:12px;font-weight:700;text-decoration:underline;display:block}.trade-actions .inline-editor>form{width:320px;max-height:calc(100vh - 40px);position:fixed;top:50%;left:50%;right:auto;overflow-y:auto;transform:translate(-50%,-50%)}.trade-actions .inline-editor summary{box-sizing:border-box;border:1px solid var(--line);height:34px;min-height:34px;color:var(--blue);cursor:pointer;white-space:nowrap;background:#fff;border-radius:4px;justify-content:center;align-items:center;margin:0;padding:0 11px;font-weight:700;list-style:none;display:inline-flex}.trade-actions .inline-editor summary::-webkit-details-marker{display:none}.trade-actions .inline-editor-drawer>form{z-index:30;box-sizing:border-box;border:0;border-left:1px solid var(--line);border-radius:0;width:min(100%,560px);height:100dvh;max-height:none;padding:28px;inset:0 0 0 auto;overflow-y:auto;transform:none;box-shadow:-18px 0 55px #10234633}.trade-actions .inline-editor-drawer>form input,.trade-actions .inline-editor-drawer>form select{box-sizing:border-box;width:100%;min-height:40px;padding:9px 10px}.trade-actions .inline-editor-drawer>form>button:not(.inline-editor-cancel),.trade-actions .inline-editor-drawer>form .inline-editor-cancel{box-sizing:border-box;white-space:nowrap;border-radius:4px;justify-content:center;align-items:center;height:36px;min-height:36px;margin:0;padding:0 12px;font-size:13px;font-weight:700;line-height:1;display:inline-flex}.trade-actions .inline-editor-drawer>form>button:not(.inline-editor-cancel){background:var(--blue);color:#fff;cursor:pointer;border:0}.trade-actions .inline-editor-drawer>form .inline-editor-cancel{border:1px solid var(--line);color:var(--blue);cursor:pointer;background:#fff;margin-left:8px}@media (max-width:560px){.trade-actions .inline-editor-drawer>form{width:100%;padding:22px}}.compliance-records{border:1px solid var(--line);background:var(--wash);border-radius:5px;margin:0 0 16px;padding:12px}.compliance-records h3{margin:0 0 8px;font-size:14px}.compliance-records p{grid-template-columns:auto 1fr;gap:4px 9px;margin:0 0 9px;font-size:12px;display:grid}.compliance-records a{color:var(--blue);font-weight:700;text-decoration:none}.compliance-records small{color:var(--muted);grid-column:1/-1}.compliance-records .file-preview-trigger.title{color:var(--blue);background:0 0;border:0;margin-bottom:4px;padding:0;font-size:12px;font-weight:700;text-decoration:underline;display:inline-block}.compliance-records p{grid-template-columns:1fr}.compliance-records small{grid-column:auto}.project-staff{padding-bottom:60px}.project-staff .section-heading a{color:var(--blue);font-size:13px;font-weight:700;text-decoration:none}.workspace-note{max-width:680px;color:var(--muted);margin:0 0 15px;font-size:13px;line-height:1.45}.project-staff-form{border:1px solid var(--line);background:var(--wash);border-radius:8px;grid-template-columns:minmax(230px,1fr) minmax(190px,.7fr) auto;align-items:end;gap:12px;max-width:760px;padding:16px;display:grid}.project-staff-form label{color:var(--muted);font-size:11px;font-weight:700;display:block}.project-staff-form select{border:1px solid var(--line);width:100%;color:var(--ink);background:#fff;border-radius:4px;margin-top:5px;padding:10px;display:block}.project-staff-form button,.project-remove{background:var(--blue);color:#fff;cursor:pointer;border:0;border-radius:4px;padding:10px 13px;font-weight:700}.project-staff-grid{grid-template-columns:repeat(3,1fr);gap:14px;margin-top:15px;display:grid}.project-staff-grid article{border:1px solid var(--line);border-radius:8px;flex-direction:column;min-height:122px;padding:16px;display:flex}.project-staff-grid strong,.project-staff-grid span,.project-staff-grid small{display:block}.project-staff-grid span{color:var(--blue);margin-top:6px;font-size:13px;font-weight:700}.project-staff-grid small{color:var(--muted);margin-top:8px;font-size:12px}.project-staff-grid form{margin-top:auto;padding-top:13px}.project-remove{color:#8f2435;background:#fff;border:1px solid #e7a9b5;padding:6px 9px;font-size:12px}.project-role-access{color:var(--muted);margin:10px 0 0;font-size:12px;line-height:1.35}@media (max-width:760px){.staff-list-heading{flex-direction:column;align-items:flex-start}.staff-filter{flex-wrap:wrap}.project-staff-form,.project-staff-grid{grid-template-columns:1fr}}.question-form{grid-template-columns:minmax(0,1fr)}.question-form form{grid-template-columns:repeat(6,minmax(0,1fr));gap:0 14px;max-width:1200px;display:grid}.question-form h2,.question-form>form>label,.question-form .project-field,.question-form .form-help{grid-column:1/-1}.question-form>form>button{grid-column:1/-1;justify-self:start}.question-form textarea{border:1px solid var(--line);resize:vertical;width:100%;min-height:92px;font:inherit;border-radius:4px;margin-top:6px;padding:10px;display:block}.question-form-row{grid-column:1/-1;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;display:grid}.question-link-row{grid-template-columns:repeat(2,minmax(0,1fr));max-width:760px}.question-form-row label{min-width:0;margin:10px 0;font-size:12px;font-weight:700;display:block}.question-form-row input,.question-form-row select{border:1px solid var(--line);background:#fff;border-radius:4px;width:100%;min-width:0;margin-top:6px;padding:10px;display:block}.question-list{max-width:1200px;margin:32px auto;padding:0 7% 60px}.question-list-heading{justify-content:space-between;align-items:center;gap:18px;margin-bottom:16px;display:flex}.question-list-heading h2{margin:0 0 4px;font-size:24px}.question-list-heading span{color:var(--muted);font-size:13px}.question-filter{align-items:center;gap:7px;display:flex}.question-filter input,.question-filter select{border:1px solid var(--line);box-sizing:border-box;background:#fff;border-radius:4px;height:34px;padding:7px 9px}.question-filter input{width:190px}.question-filter select[name=jobId]{min-width:280px}.question-filter button,.question-reply-form button{background:var(--blue);color:#fff;cursor:pointer;border:0;border-radius:4px;font-weight:700}.question-filter button{height:34px;padding:0 11px}.question-filter a{color:var(--blue);font-size:13px;font-weight:700;text-decoration:none}.question-stack{gap:12px;display:grid}.question-card{border:1px solid var(--line);background:#fff;border-radius:8px;padding:17px 18px}.question-card.closed{opacity:.65}.question-meta{align-items:center;gap:9px;display:flex}.question-meta small{color:var(--muted);margin-left:auto;font-size:12px}.question-job{color:var(--muted);font-size:13px}.question-status{color:#40506a;background:#e4e9f1;border-radius:99px;padding:4px 7px;font-size:10px;font-weight:700;display:inline-block}.question-status.answered{color:#146c6a;background:#d8f7f6}.question-status.closed{color:#146338;background:#c9f6dd}.question-category{color:var(--muted);font-size:12px}.question-heading{justify-content:space-between;align-items:flex-start;gap:18px;margin-top:13px;display:flex}.question-heading h3{margin:0 0 6px}.question-heading p,.question-replies p{color:var(--muted);white-space:pre-wrap;margin:0;line-height:1.45}.question-links{border-top:1px solid var(--line);color:var(--muted);flex-wrap:wrap;gap:7px 14px;margin-top:13px;padding-top:12px;font-size:12px;display:flex}.question-links a{color:var(--blue);font-weight:700;text-decoration:none}.question-replies{border-top:1px solid var(--line);gap:9px;margin-top:14px;padding-top:13px;display:grid}.question-replies>div{background:var(--wash);border-left:3px solid #d8f7f6;padding:10px 12px}.question-replies strong{font-size:13px}.question-replies small{color:var(--muted);margin-left:8px;font-size:11px}.question-replies p{margin-top:5px;font-size:13px}.question-reply-form{border-top:1px solid var(--line);grid-template-columns:150px minmax(180px,1fr) auto;align-items:center;gap:8px;margin-top:14px;padding-top:13px;display:grid}.question-reply-form input{border:1px solid var(--line);min-width:0;font:inherit;border-radius:4px;padding:9px}.question-reply-form button{white-space:nowrap;padding:9px 12px}.question-card .inline-editor>form{width:270px}.question-card .inline-editor summary{padding-top:0}@media (max-width:760px){.question-form form{grid-template-columns:1fr}.question-form-row,.question-link-row{grid-template-columns:1fr;max-width:none}.question-list-heading,.question-heading{flex-direction:column;align-items:flex-start}.question-filter{flex-wrap:wrap}.question-meta{flex-wrap:wrap;align-items:flex-start}.question-meta small{width:100%;margin-left:0}.question-reply-form{grid-template-columns:1fr}}.form-help{color:#805f00;margin:10px 0 0;font-size:12px;line-height:1.4}.client-form{grid-template-columns:minmax(360px,720px)}.client-list{max-width:1200px;margin:32px auto;padding:0 7% 60px}.client-list-heading{justify-content:space-between;align-items:center;margin-bottom:16px;display:flex}.client-list-heading h2{margin:0;font-size:24px}.client-list-heading span{color:var(--muted);font-size:13px}.client-list td:first-child{color:var(--ink)}.client-filter{flex-wrap:wrap;justify-content:flex-end}.client-filter .client-new{box-sizing:border-box;color:#fff;align-items:center;height:34px;margin:0;padding:0 12px;display:inline-flex}.client-project-link{width:max-content;color:var(--blue);margin-top:5px;font-size:13px;font-weight:700;text-decoration:none;display:block}.client-actions{white-space:nowrap;align-items:center;gap:10px;display:flex}.project-readiness>div{grid-template-columns:repeat(5,1fr);gap:10px;display:grid}.project-readiness a{border:1px solid var(--line);min-height:66px;color:var(--ink);border-radius:7px;grid-template-columns:26px 1fr;align-items:center;gap:8px;padding:11px;text-decoration:none;display:grid}.project-readiness a:hover{border-color:var(--blue)}.project-readiness a strong{font-size:20px}.project-readiness a.ready strong,.project-readiness a.ready small{color:#146338}.project-readiness a.not-ready strong,.project-readiness a.not-ready small{color:#805f00}.project-readiness a span{font-size:12px;font-weight:700}.project-readiness a small{grid-column:2;font-size:11px}@media (max-width:760px){.project-readiness>div{grid-template-columns:1fr}}.portal-access{grid-template-columns:minmax(0,680px) minmax(240px,.7fr);gap:18px;max-width:1050px;margin:30px auto;padding:0 7% 60px;display:grid}.portal-access>.save-notice{grid-column:1/-1}.portal-access form,.portal-access aside{border:1px solid var(--line);border-radius:8px;padding:20px}.portal-access h2{margin:0 0 16px;font-size:21px}.portal-access fieldset{border:0;margin:18px 0;padding:0}.portal-access legend{color:var(--ink);margin-bottom:10px;font-weight:700}.access-list{gap:8px;display:grid}.access-option{border:1px solid var(--line);cursor:pointer;border-radius:6px;align-items:flex-start;gap:10px;padding:12px;display:flex}.access-option input{width:17px;height:17px;accent-color:var(--blue);flex:none;margin:2px 0 0}.access-option strong,.access-option small{display:block}.access-option small{color:var(--muted);margin-top:4px;font-size:12px;line-height:1.35}.portal-access button{background:var(--blue);color:#fff;cursor:pointer;border:0;border-radius:4px;padding:10px 13px;font-weight:700}.portal-access aside{background:var(--wash);align-self:start}.portal-access aside p{color:var(--muted);font-size:13px;line-height:1.5}.portal-access .portal-preview-link{margin-top:8px}.portal-token-actions{border-top:1px solid var(--line);gap:8px;margin-top:16px;padding-top:16px;display:grid}.portal-token-actions strong{font-size:13px}.portal-access aside .portal-token-actions form{border:0;margin:0;padding:0}.portal-token-actions .danger-button{color:#9f1239;background:#fff1f2;border:1px solid #fda4af}.portal-access aside p.portal-token-warning{color:#9f1239;margin:0}.portal-permission-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:10px 0 4px 27px;display:grid}.portal-assignment{border:1px solid var(--line);border-radius:8px;padding:10px}.portal-assignment>.access-option{border:0;padding:2px 0 8px}.portal-assignment .portal-permission-grid{margin-left:27px}@media (max-width:760px){.portal-access{grid-template-columns:1fr}.portal-permission-grid,.portal-assignment .portal-permission-grid{grid-template-columns:1fr;margin-left:0}}.workspace-hero-actions{gap:8px;display:flex}.project-setup{grid-template-columns:minmax(0,620px) minmax(240px,.7fr);gap:18px;max-width:1000px;margin:30px auto;padding:0 7% 60px;display:grid}.project-setup form,.project-setup aside{border:1px solid var(--line);border-radius:8px;padding:20px}.project-setup label{color:var(--muted);margin:12px 0;font-size:12px;font-weight:700;display:block}.project-setup input,.project-setup select{border:1px solid var(--line);width:100%;color:var(--ink);font:inherit;background:#fff;border-radius:4px;margin-top:6px;padding:10px;display:block}.project-setup button{background:var(--blue);color:#fff;cursor:pointer;border:0;border-radius:4px;padding:10px 13px;font-weight:700}.project-setup aside{background:var(--wash);align-self:start}.project-setup aside h2{margin:0 0 14px;font-size:19px}.project-setup aside p{color:var(--muted);font-size:13px;line-height:1.5}.project-setup aside strong{color:var(--ink)}.save-notice{color:#146338;background:#c9f6dd;border-radius:4px;margin:0 0 14px;padding:10px 12px;font-size:13px;font-weight:700}@media (max-width:760px){.workspace-hero-actions,.project-setup{grid-template-columns:1fr}.workspace-hero-actions{flex-wrap:wrap}}.safety-picker,.safety-layout{max-width:1200px;margin:30px auto;padding:0 7% 60px}.safety-picker h2,.safety-form h2,.safety-note h2{margin:0 0 16px;font-size:24px}.safety-picker>div{grid-template-columns:repeat(3,1fr);gap:14px;display:grid}.safety-picker a{border:1px solid var(--line);min-height:94px;color:var(--ink);border-radius:8px;padding:16px;text-decoration:none;display:block}.safety-picker a:hover{border-color:var(--blue)}.safety-picker strong,.safety-picker span{display:block}.safety-picker span{color:var(--muted);margin-top:8px;font-size:12px}.safety-layout{grid-template-columns:minmax(0,1.8fr) minmax(250px,.7fr);gap:18px;display:grid}.safety-form,.safety-note{border:1px solid var(--line);border-radius:8px;padding:20px}.safety-form label{color:var(--muted);margin:12px 0;font-size:12px;font-weight:700;display:block}.safety-form input,.safety-form select,.safety-form textarea{border:1px solid var(--line);width:100%;color:var(--ink);font:inherit;background:#fff;border-radius:4px;margin-top:6px;padding:10px;display:block}.safety-form textarea{resize:vertical;min-height:96px}.safety-form button{background:var(--blue);color:#fff;cursor:pointer;border:0;border-radius:4px;padding:10px 13px;font-weight:700}.safety-note{background:var(--wash);align-self:start}.safety-note p{color:var(--muted);line-height:1.45}.safety-note a{color:var(--blue);font-size:13px;font-weight:700;text-decoration:none}@media (max-width:760px){.safety-picker>div,.safety-layout{grid-template-columns:1fr}}.contract-file-list{border-top:1px solid var(--line);gap:7px;margin-top:16px;padding-top:14px;display:grid}.contract-file-list>span{color:var(--muted);font-size:12px;font-weight:700}.contract-file-list button{width:max-content;color:var(--blue);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;padding:0;font-weight:700}.signed-contract-record{background:0 0;border:0;border-radius:0;justify-items:start;gap:7px;margin-top:8px;padding:0 0 12px;display:grid}.signed-contract-record>span{color:#146338;font-size:12px;font-weight:700}.signed-contract-signature{object-fit:contain;object-position:left center;background:#fff;border:1px solid #c9e6d7;border-radius:4px;width:min(260px,100%);max-height:96px;padding:6px 10px}.signed-contract-record .file-preview-trigger.title{width:max-content;color:var(--blue);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;padding:0;font-weight:700;text-decoration:underline}.proposal-actions .inline-editor>form .form-help{color:var(--muted);margin:4px 0 10px;font-size:11px}.proposal-actions .inline-editor>form{z-index:30;border:1px solid var(--line);background:#fff;border-radius:8px;width:min(560px,100vw - 40px);max-height:calc(100vh - 40px);padding:20px;position:fixed;top:50%;left:50%;right:auto;overflow-y:auto;transform:translate(-50%,-50%);box-shadow:0 18px 55px #0a182a47}.proposal-actions .inline-editor>form label{color:var(--ink);margin-bottom:12px;font-size:12px}.proposal-actions .inline-editor>form input:not([type=hidden]),.proposal-actions .inline-editor>form select,.proposal-actions .inline-editor>form textarea{box-sizing:border-box;border:1px solid var(--line);width:100%;min-height:40px;color:var(--ink);font:inherit;background:#fff;border-radius:4px;margin-top:6px;padding:9px 10px}.proposal-actions .inline-editor>form input[type=file]{padding:4px 8px}.proposal-actions .inline-editor>form input[type=file]::file-selector-button{box-sizing:border-box;border:1px solid var(--line);min-height:36px;color:var(--blue);font:inherit;cursor:pointer;background:#fff;border-radius:4px;margin:0 10px 0 0;padding:0 12px;font-size:13px;font-weight:700}.proposal-actions .inline-editor>form input[type=file]::file-selector-button:hover{border-color:var(--blue);background:#f5f8fc}.proposal-actions .inline-editor>form>button:not(.inline-editor-cancel),.proposal-actions .inline-editor>form .inline-editor-cancel{box-sizing:border-box;white-space:nowrap;border-radius:4px;justify-content:center;align-items:center;height:36px;min-height:36px;margin:0;padding:0 12px;font-size:13px;font-weight:700;line-height:1;display:inline-flex}.proposal-actions .inline-editor>form>button:not(.inline-editor-cancel){background:var(--blue);color:#fff;cursor:pointer;border:0}.proposal-actions .inline-editor>form .inline-editor-cancel{border:1px solid var(--line);color:var(--blue);cursor:pointer;background:#fff;margin-left:8px}.approval-confirmation{align-items:flex-start;gap:7px;color:var(--ink)!important;display:flex!important}.approval-confirmation input{width:auto!important;min-height:0!important;margin:2px 0 0!important}.signature-pad{height:auto;margin:10px 0}.signature-pad canvas{border:1px solid var(--line);touch-action:none;cursor:crosshair;background:#fff;border-radius:4px;width:100%;height:130px;display:block}.signature-pad>div{color:var(--muted);justify-content:space-between;align-items:center;gap:8px;margin-top:8px;font-size:11px;display:flex}.signature-pad>div>span{min-width:0;display:block}.signature-pad button{box-sizing:border-box;white-space:nowrap;border-radius:4px;justify-content:center;align-items:center;height:30px;min-height:30px;margin:0;font-size:12px;font-weight:700;line-height:1;display:inline-flex;border:1px solid var(--line)!important;color:var(--blue)!important;background:#fff!important;padding:0 10px!important}.proposal-approval-record{background:#f4fbf7;border:1px solid #9ad9be;border-radius:6px;gap:7px;padding:12px;display:grid;margin-top:16px!important}.proposal-approval-record>span{font-size:12px;font-weight:700;color:#146338!important}.proposal-approval-record .file-preview-trigger.title{width:max-content;color:var(--blue);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;padding:0;font-weight:700;text-decoration:underline}.proposal-director-identity{border:1px solid var(--line);background:#f8fbff;border-radius:6px;gap:3px;margin:0 0 14px;padding:10px 12px;display:grid}.proposal-director-identity strong{color:var(--muted);font-size:11px}.proposal-director-identity span{color:var(--ink);font-size:13px;font-weight:700}.proposal-director-identity small{color:var(--muted);font-size:11px;line-height:1.35}.proposal-send-requirement{flex-basis:100%;margin:0;font-weight:700;color:#805f00!important}.proposal-document-director-approval{border-top:1px solid var(--line);gap:4px;margin-top:10px;padding:10px 0 4px;display:grid}.proposal-document-director-approval span{color:var(--ink);font-size:11px;font-weight:700}.proposal-document-director-approval img{object-fit:contain;object-position:left bottom;width:min(190px,100%);max-height:52px;display:block}.proposal-document-director-approval small{color:var(--muted);font-size:10px}.proposal-document-director-pending{color:#805f00!important;font-size:11px!important}.project-register-heading{gap:16px}.project-filter{align-items:center;gap:8px;display:flex}.project-filter select{border:1px solid var(--line);height:36px;color:var(--ink);background:#fff;border-radius:4px;padding:8px}.project-filter button{background:var(--blue);color:#fff;cursor:pointer;border:0;border-radius:4px;padding:8px 11px;font-weight:700}.project-filter a{color:var(--blue);font-size:13px;font-weight:700;text-decoration:none}.project-grid{grid-template-columns:1fr;gap:10px}.project-card{grid-template-columns:160px 155px minmax(150px,1.1fr) minmax(150px,.9fr) minmax(175px,.9fr) auto;align-items:center;gap:12px;min-height:0;padding:16px 18px;display:grid}.project-card>.project-card-status{justify-items:start;gap:6px;display:grid}.project-card-status .proposal-status{white-space:nowrap}.project-number{color:var(--ink);white-space:nowrap;font-size:14px}.project-card h3{margin:0}.project-address{min-width:0;color:var(--muted);margin:0;font-size:13px;line-height:1.25}.project-card footer{border:0;margin:0;padding:0}.project-priority{border-radius:99px;padding:4px 7px;font-size:10px;font-weight:800;display:inline-block}.project-priority.normal{color:#40506a;background:#e4e9f1}.project-priority.high{color:#805f00;background:#fff0bf}.project-priority.urgent{color:#8f2435;background:#ffe5e9}.project-open{color:var(--blue);white-space:nowrap;font-size:13px;font-weight:700}.project-summary{flex-wrap:wrap;gap:8px;margin:0 0 16px;display:flex}.project-summary span{color:#40506a;background:#e4e9f1;border-radius:99px;padding:4px 8px;font-size:11px;font-weight:700}.project-summary .project-summary-overdue{color:#8f2435;background:#ffe5e9}.project-card{color:var(--ink);grid-template-columns:145px 120px minmax(160px,1.1fr) minmax(150px,.9fr) minmax(150px,.9fr) minmax(210px,1fr) auto}.project-card-people strong,.project-card-people small{display:block}.project-card-people small{color:var(--muted);margin-top:4px;font-size:12px}.project-card footer{flex-wrap:wrap;gap:8px 12px;font-size:11px;display:flex}.project-card footer a{color:var(--blue);text-decoration:none}.project-card footer a:hover{text-decoration:underline}.project-register-table td strong,.project-register-table td small{display:block}.project-register-table td small{color:var(--muted);margin-top:4px;font-size:12px}.project-register-table td>a{color:var(--blue);font-size:13px;text-decoration:none}.project-table-actions{flex-wrap:wrap;align-items:center;gap:5px 10px;display:flex}.project-table-actions a{color:var(--blue);white-space:nowrap;font-size:13px;font-weight:700;text-decoration:none}.project-table-actions a:hover{text-decoration:underline}.project-table-actions .project-open-button{color:var(--blue)}@media (max-width:760px){.project-register-heading{flex-direction:column;align-items:flex-start}.project-filter{flex-wrap:wrap}.project-card{grid-template-columns:1fr;gap:10px}}.project-setup form{min-width:0}.project-setup .form-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.project-setup textarea{border:1px solid var(--line);width:100%;min-height:84px;color:var(--ink);font:inherit;resize:vertical;background:#fff;border-radius:4px;margin-top:6px;padding:10px;line-height:1.4;display:block}.project-setup label:has(textarea){margin-top:18px}.portal-approved-changes{border-top:1px solid var(--line);margin-top:16px;padding-top:14px}.portal-approved-changes>strong{color:#146338;margin-bottom:8px;font-size:13px;display:block}.portal-progress-summary{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.portal-progress-summary strong{color:var(--blue);font-size:28px}.portal-progress-summary span{color:var(--muted);text-align:right;font-size:12px}.portal-progress-bar{background:#e4e9f1;border-radius:99px;height:10px;margin:16px 0;overflow:hidden}.portal-progress-bar span{border-radius:inherit;background:var(--blue);height:100%;display:block}.portal-progress-next{border-top:1px solid var(--line);padding-top:14px}.portal-progress-next small,.portal-progress-next strong,.portal-progress-next span{display:block}.portal-progress-next small,.portal-progress-next span{color:var(--muted);font-size:12px}.portal-progress-next strong{margin:5px 0}.schedule-dot.overdue{background:#c3384f}.portal-schedule-overdue{font-weight:700;color:#8f2435!important}.safety-status{border-radius:5px;margin:0 0 15px;padding:9px 11px;font-size:13px}.safety-status.draft{color:#805f00;background:#fff0bf}.safety-status.reviewed{color:#146338;background:#c9f6dd}.safety-actions{flex-wrap:wrap;gap:9px;display:flex}.safety-actions button:last-child{background:#146338}.safety-actions button:disabled{cursor:not-allowed;opacity:.45}.safety-review-hint{color:#805f00;margin:10px 0 0;font-size:13px;font-weight:700}.safety-readiness{gap:7px;margin:0;padding:0;font-size:13px;font-weight:700;list-style:none;display:grid}.safety-readiness .complete{color:#146338}.safety-readiness .incomplete{color:#805f00}.safety-note hr{border:0;border-top:1px solid var(--line);width:100%;margin:5px 0}.safety-risk-summary{flex-wrap:wrap;gap:7px;display:flex}.safety-risk-summary span{color:#40506a;background:#e4e9f1;border-radius:99px;padding:4px 8px;font-size:11px;font-weight:700}.safety-risk-summary .high{color:#9f233b;background:#ffe0e5}.risk-overlay input,.risk-overlay select,.risk-overlay textarea{box-sizing:border-box;border:1px solid var(--line);width:100%;color:var(--ink);font:inherit;background:#fff;border-radius:4px;padding:10px}.risk-overlay textarea{resize:vertical;min-height:74px}.risk-overlay .form-row{grid-template-columns:repeat(3,1fr);gap:8px;display:grid}.risk-overlay .trade-overlay-actions{margin-top:4px}.risk-overlay .trade-overlay-actions button,.risk-overlay .trade-overlay-actions a{box-sizing:border-box;border-radius:4px;justify-content:center;align-items:center;min-height:36px;padding:8px 12px;font-size:13px;font-weight:700;text-decoration:none;display:inline-flex}.risk-overlay .trade-overlay-actions button{background:var(--blue);color:#fff;cursor:pointer;border:0}.risk-overlay .trade-overlay-actions a{border:1px solid var(--line);color:var(--blue);background:#fff}@media (max-width:560px){.risk-overlay .form-row{grid-template-columns:1fr}}.safety-induction-register{max-width:1200px;margin:0 auto;padding:0 7% 60px}.safety-induction-heading{justify-content:space-between;align-items:end;gap:16px;margin-bottom:14px;display:flex}.safety-induction-heading h2{margin:0;font-size:24px}.safety-induction-heading p{color:var(--muted);margin:5px 0 0;font-size:13px}.safety-induction-heading>span{color:#40506a;background:#e4e9f1;border-radius:99px;padding:4px 8px;font-size:11px;font-weight:700}.safety-induction-register td:first-child{color:var(--ink)}.safety-induction-register form{margin:0}.safety-induction-register button{border:1px solid var(--line);color:var(--blue);background:#fff;border-radius:4px;padding:8px 11px;font-weight:700}.safety-inducted{color:#146338;background:#c9f6dd;border-radius:99px;padding:4px 8px;font-size:11px;font-weight:700;display:inline-block}@media (max-width:760px){.safety-induction-heading{flex-direction:column;align-items:flex-start}}.safety-induction-summary{justify-content:space-between;align-items:center;gap:16px;max-width:1200px;margin:0 auto 24px;padding:0 7%;display:flex}.safety-induction-summary h2{margin:0;font-size:20px}.safety-induction-summary p{color:var(--muted);margin:5px 0 0;font-size:13px}.safety-induction-overlay .trade-overlay-card{width:min(100%,760px);max-height:calc(100vh - 48px);overflow-y:auto}.safety-induction-overlay .table-panel{margin-top:12px;overflow-x:auto}.safety-induction-overlay table{min-width:600px}.safety-induction-overlay td:first-child{color:var(--ink)}.safety-induction-overlay form{margin:0}.safety-induction-overlay button{border:1px solid var(--line);color:var(--blue);background:#fff;border-radius:4px;padding:8px 11px;font-weight:700}.safety-induction-count{color:var(--muted);margin:16px 0 0;font-size:13px;font-weight:700}@media (max-width:760px){.safety-induction-summary{flex-direction:column;align-items:flex-start}}.safety-induction-group{margin:22px 0 0;font-size:16px}.safety-review-history{max-width:1200px;margin:0 auto 24px;padding:0 7%}.safety-review-history h2{margin:0;font-size:20px}.safety-review-history p{color:var(--muted);margin:6px 0 0;font-size:13px}.safety-review-history ul{color:var(--muted);margin:8px 0 0;padding-left:18px;font-size:12px}.safety-file-overlay .trade-overlay-card{width:min(100%,560px)}.safety-file-overlay input{box-sizing:border-box;border:1px solid var(--line);width:100%;color:var(--ink);font:inherit;background:#fff;border-radius:4px;padding:10px}.safety-file-overlay .trade-overlay-actions button,.safety-file-overlay .trade-overlay-actions a{box-sizing:border-box;border-radius:4px;justify-content:center;align-items:center;min-height:36px;padding:8px 12px;font-size:13px;font-weight:700;text-decoration:none;display:inline-flex}.safety-file-overlay .trade-overlay-actions button{background:var(--blue);color:#fff;border:0}.safety-file-overlay .trade-overlay-actions a{border:1px solid var(--line);color:var(--blue)}.safety-file-overlay .upload-note{color:var(--muted);margin:0;font-size:12px}.lead-record-link{color:var(--ink);text-decoration:none;display:block}.lead-record-link:hover strong{color:var(--blue)}.lead-record-link small{display:block}.lead-history{max-width:1200px;margin:30px auto;padding:0 7% 60px}.lead-history-heading{justify-content:space-between;align-items:flex-end;margin-bottom:14px;display:flex}.lead-history-heading h2{margin:3px 0 0;font-size:24px}.lead-history-heading>span{color:var(--muted);font-size:13px}.lead-history-stack{gap:10px;display:grid}.lead-history-stack article{border:1px solid var(--line);background:#fff;border-radius:8px;justify-content:space-between;gap:22px;padding:16px;display:flex}.lead-history-stack article strong,.lead-history-stack article small{display:block}.lead-history-stack article strong{margin-top:8px}.lead-history-stack article p{color:var(--muted);white-space:pre-wrap;margin:7px 0 0}.lead-history-stack aside{min-width:150px;color:var(--muted);align-content:start;justify-items:end;gap:5px;display:grid}.lead-history-stack aside .proposal-status{margin-top:4px}@media (max-width:760px){.lead-history-stack article{flex-direction:column}.lead-history-stack aside{justify-items:start}}.question-reply-form select{border:1px solid var(--line);min-width:190px;height:40px;color:var(--ink);font:inherit;background:#fff;border-radius:4px;padding:0 10px}.question-reply-form{grid-template-columns:210px minmax(0,1fr) auto}.question-reply-form select{width:100%;min-width:0}@media (max-width:760px){.question-reply-form{grid-template-columns:1fr}}.question-reply-form textarea{border:1px solid var(--line);min-width:0;min-height:112px;font:inherit;resize:vertical;border-radius:4px;padding:9px}.question-notify{color:var(--muted);grid-column:1/-1;font-size:12px}.question-notify summary{width:max-content;color:var(--blue);cursor:pointer;font-weight:700}.question-notify>div{flex-wrap:wrap;gap:8px 14px;margin-top:9px;display:flex}.question-notify label{align-items:center;gap:6px;display:flex}.question-notify input{width:15px;height:15px;accent-color:var(--blue);margin:0}.question-reply-form>button{grid-column:3}.question-recipients{color:var(--muted);flex-wrap:wrap;align-items:center;gap:7px;margin-top:14px;font-size:12px;display:flex}.question-recipients span{color:#146c6a;background:#d8f7f6;border-radius:99px;padding:4px 7px;font-weight:700}@media (max-width:760px){.question-reply-form>button{grid-column:auto}}.lead-inactive-note{border:1px solid var(--line);background:var(--wash);min-height:34px;color:var(--muted);border-radius:4px;align-items:center;padding:0 10px;font-size:12px;font-weight:700;display:inline-flex}.lead-workflow{max-width:1200px;margin:30px auto;padding:0 7%}.lead-workflow-heading{justify-content:space-between;align-items:flex-end;gap:18px;margin-bottom:14px;display:flex}.lead-workflow-heading h2{margin:3px 0 0;font-size:24px}.lead-workflow-heading>p{color:var(--muted);margin:0;font-size:13px}.lead-workflow-steps{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;display:grid}.lead-workflow-step{border:1px solid var(--line);background:#fff;border-radius:8px;grid-template-columns:34px minmax(0,1fr);gap:11px;min-height:155px;padding:16px;display:grid}.lead-workflow-step>span{background:var(--blue);color:#fff;border-radius:50%;place-items:center;width:28px;height:28px;font-size:13px;font-weight:800;display:grid}.lead-workflow-step h3{margin:3px 0 7px;font-size:17px}.lead-workflow-step p{min-height:54px;color:var(--muted);margin:0 0 13px;font-size:13px;line-height:1.4}.lead-workflow-step a{color:var(--blue);font-size:13px;font-weight:700;text-decoration:none}.lead-workflow-step.locked{background:var(--wash)}.lead-workflow-step.locked>span{background:#aab6c7}.lead-workflow-step.locked h3,.lead-workflow-step.locked p,.lead-workflow-step.locked small{color:#7d8999}.lead-workflow-step.locked small{font-size:12px;font-weight:700}.lead-workflow-step.ready{border-color:#9ad9be}.lead-workflow-step.ready>span{background:#146338}@media (max-width:760px){.lead-workflow-heading{flex-direction:column;align-items:flex-start;gap:6px}.lead-workflow-steps{grid-template-columns:1fr}.lead-workflow-step p{min-height:auto}}.lead-follow-ups{max-width:1200px;margin:30px auto;padding:0 7%}.lead-follow-ups-heading{justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:14px;display:flex}.lead-follow-ups-heading h2{margin:3px 0 0;font-size:22px}.lead-follow-ups-heading>span{color:var(--muted);font-size:13px}.lead-follow-ups-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.lead-follow-ups-list a{border:1px solid var(--line);color:var(--ink);border-radius:7px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;column-gap:10px;padding:14px;text-decoration:none;display:grid}.lead-follow-ups-list a:hover{border-color:var(--blue)}.lead-follow-ups-list a>strong{min-width:0}.lead-follow-ups-list a>small{color:var(--muted);grid-column:2;margin-top:4px;font-size:12px}.lead-follow-ups-list aside{color:var(--muted);grid-area:1/3/span 2;justify-items:end;gap:4px;font-size:12px;display:grid}.lead-follow-ups-list aside strong{color:var(--ink);font-size:13px}.lead-follow-ups-list .proposal-status{white-space:nowrap}@media (max-width:760px){.lead-follow-ups-heading{flex-direction:column;align-items:flex-start;gap:6px}.lead-follow-ups-list{grid-template-columns:1fr}}.bid-form{grid-template-columns:minmax(360px,700px)}.bid-list{max-width:1200px;margin:32px auto;padding:0 7% 60px}.bid-stack{gap:14px;display:grid}.bid-card{border:1px solid var(--line);border-radius:8px;padding:18px}.bid-heading{justify-content:space-between;gap:18px;display:flex}.bid-heading h2{margin:8px 0 5px;font-size:21px}.bid-heading p{color:var(--muted);margin:0;font-size:13px}.bid-heading>strong{white-space:nowrap}.bid-invite{gap:8px;margin:16px 0;display:flex}.bid-invite select,.bid-response-list input,.bid-response-list select{border:1px solid var(--line);background:#fff;border-radius:4px;padding:8px}.bid-invite select{min-width:260px}.bid-invite button,.bid-response-list button{background:var(--blue);color:#fff;border:0;border-radius:4px;margin:0;padding:8px 11px;font-weight:700}.bid-response-list{gap:8px;display:grid}.bid-response-list>div{border-top:1px solid var(--line);grid-template-columns:minmax(130px,.6fr) minmax(100px,.5fr) minmax(0,1.6fr);align-items:center;gap:8px;padding:11px;display:grid}.bid-response-list form{justify-content:flex-end;gap:7px;display:flex}.bid-response-list small{color:var(--muted);grid-column:1/-1}@media (max-width:760px){.bid-heading,.bid-invite{flex-direction:column}.bid-invite select{min-width:0}.bid-response-list>div{grid-template-columns:1fr}.bid-response-list form{flex-wrap:wrap;justify-content:flex-start}}.bid-edit{margin-top:16px}.bid-edit summary{cursor:pointer;color:var(--blue);font-weight:700}.bid-edit form{max-width:700px;margin-top:12px}.bid-edit label small{color:var(--muted);margin:4px 0;font-weight:400;display:block}.bid-edit select{border:1px solid var(--line);background:#fff;border-radius:4px;padding:8px}.bid-edit button,.bid-issue button{background:var(--blue);color:#fff;border:0;border-radius:4px;margin:0;padding:8px 11px;font-weight:700}.bid-issue{align-items:center;gap:12px;margin:14px 0;display:flex}.bid-issue small{color:var(--muted)}.bid-response-list .proposal-status{justify-self:start}.bid-response-list .danger-button{color:#9f1239;background:#fff1f2;border:1px solid #fda4af}@media (max-width:760px){.bid-issue{flex-direction:column;align-items:stretch}}.bid-register-page .catalogue-header,.bid-register-page .bid-list{box-sizing:border-box;max-width:none;padding-left:20px;padding-right:20px}.bid-list{margin-top:38px}.bid-list-heading{justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:14px;display:flex}.bid-list-heading h2{margin:0;font-size:24px}.bid-list-heading span{color:var(--muted);margin-top:4px;font-size:13px;display:block}.bid-filter{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:22px;display:flex}.bid-filter input,.bid-filter select{box-sizing:border-box;border:1px solid var(--line);min-width:0;height:36px;color:var(--ink);font:inherit;background:#fff;border-radius:4px;padding:8px 10px}.bid-filter select:first-child{min-width:280px}.bid-filter input{width:220px}.bid-filter button,.bid-filter .bid-new-package{box-sizing:border-box;border-radius:4px;height:36px;margin:0;padding:8px 12px;font-size:13px}.bid-filter button{background:var(--blue);color:#fff;cursor:pointer;border:0;font-weight:700}.bid-filter a:not(.bid-new-package){color:var(--blue);font-size:13px;font-weight:700;text-decoration:none}.bid-filter .bid-new-package{background:var(--blue);color:#fff;border:0;align-items:center;font-weight:700;text-decoration:none;display:inline-flex}.bid-list .table-panel{overflow-x:auto}.bid-register-table{min-width:1060px}.bid-register-table td{vertical-align:top}.bid-register-table td:first-child{color:var(--ink)}.bid-register-table td strong,.bid-register-table td small{display:block}.bid-register-table td small{color:var(--muted);margin-top:4px;font-size:12px}.bid-open{color:var(--blue);white-space:nowrap;font-size:13px;font-weight:700;text-decoration:none}.bid-open:hover{text-decoration:underline}.bid-detail-row>td{background:#f8fbff;padding:0}.bid-detail{border-top:1px solid var(--line);padding:20px}.bid-detail-heading{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.bid-detail-heading h3{margin:8px 0 4px;font-size:20px}.bid-detail-heading p{color:var(--muted);margin:0;font-size:13px}.bid-detail-heading>a{color:var(--blue);font-size:13px;font-weight:700;text-decoration:none}.bid-response-list h4{margin:18px 0 0;font-size:15px}@media (min-width:901px){.bid-filter{grid-template-columns:minmax(230px,1.3fr) minmax(190px,1fr) minmax(140px,.6fr) auto auto auto;display:grid}.bid-filter input,.bid-filter select{width:100%}.bid-filter select:first-child{min-width:0}}@media (max-width:760px){.bid-register-page .catalogue-header,.bid-register-page .bid-list{padding-left:22px;padding-right:22px}.bid-filter input,.bid-filter select{width:100%}.bid-detail-heading{flex-direction:column;gap:8px}}.bid-package-overlay{z-index:50;background:#1020397a;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.bid-package-overlay form{box-sizing:border-box;background:#fff;border-radius:8px;width:min(100%,620px);max-height:calc(100vh - 48px);padding:20px;overflow-y:auto;box-shadow:0 18px 55px #0a182a47}.bid-package-overlay header{justify-content:space-between;align-items:flex-start;gap:18px;margin-bottom:18px;display:flex}.bid-package-overlay h2{margin:0 0 5px;font-size:24px}.bid-package-overlay header p:not(.eyebrow){color:var(--muted);margin:0;font-size:13px}.bid-package-overlay header>a{border:1px solid var(--line);width:36px;height:36px;color:var(--ink);border-radius:4px;flex:0 0 36px;place-items:center;font-size:26px;line-height:1;text-decoration:none;display:grid}.bid-package-overlay label{color:var(--ink);margin:14px 0;font-size:12px;font-weight:700;display:block}.bid-package-overlay input,.bid-package-overlay select{box-sizing:border-box;border:1px solid var(--line);width:100%;color:var(--ink);font:inherit;background:#fff;border-radius:4px;margin-top:6px;padding:10px;display:block}.bid-package-overlay .project-field{margin:0 0 14px}.bid-package-overlay .trade-overlay-actions{flex-wrap:wrap;align-items:center;gap:8px;margin-top:18px;display:flex}.bid-package-overlay .trade-overlay-actions button,.bid-package-overlay .trade-overlay-actions a{box-sizing:border-box;border-radius:4px;justify-content:center;align-items:center;min-height:36px;padding:8px 12px;font-size:13px;font-weight:700;text-decoration:none;display:inline-flex}.bid-package-overlay .trade-overlay-actions button{background:var(--blue);color:#fff;cursor:pointer;border:0}.bid-package-overlay .trade-overlay-actions a{border:1px solid var(--line);color:var(--blue);background:#fff}@media (max-width:560px){.bid-package-overlay{padding:16px}.bid-package-overlay .bid-package-fields{grid-template-columns:1fr}}.bid-filter-actions,.bid-filter-apply-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.bid-filter-actions{justify-content:flex-end}.bid-filter .bid-filter-actions .bid-new-package{justify-content:center;align-items:center;display:inline-flex}.bid-register-table{table-layout:fixed;width:100%;min-width:0}.bid-register-table th a{color:inherit;white-space:nowrap;text-decoration:none}.bid-register-table th a:hover{color:var(--blue)}.bid-register-table th:first-child{width:11%}.bid-register-table th:nth-child(2){width:16%}.bid-register-table th:nth-child(3){width:15%}.bid-register-table th:nth-child(4),.bid-register-table th:nth-child(5),.bid-register-table th:nth-child(6){width:7%}.bid-register-table th:nth-child(7){width:9%}.bid-register-table th:nth-child(8){width:12%}.bid-register-table th:nth-child(9){width:16%}.bid-register-table td{overflow-wrap:anywhere}.bid-register-table .bid-open{margin-top:7px;display:inline-block}.bid-timestamp{font-variant-numeric:tabular-nums;line-height:1.35}@media (min-width:901px){.bid-filter{grid-template-columns:minmax(280px,390px) minmax(180px,220px) 150px auto minmax(0,1fr)}.bid-filter-apply-actions{grid-column:4;justify-self:start}.bid-filter-actions{grid-column:5;justify-self:end}}@media (max-width:900px){.bid-register-table{min-width:1080px}.bid-filter-actions{justify-content:flex-start}}.proposal-filter-panel{max-width:1200px;margin:32px auto 0;padding:0 7%}.proposal-filter-heading{justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:14px;display:flex}.proposal-filter-heading h2{margin:0;font-size:24px}.proposal-filter-heading span{color:var(--muted);margin-top:4px;font-size:13px;display:block}.proposal-filter{flex-wrap:wrap;justify-content:flex-start;gap:8px;display:flex}.proposal-filter input,.proposal-filter select{border:1px solid var(--line);min-height:36px;color:var(--ink);font:inherit;background:#fff;border-radius:4px;padding:8px 10px}.proposal-filter select:first-child{min-width:300px}.proposal-filter input{width:210px}.proposal-filter button{background:var(--blue);color:#fff;cursor:pointer;border:0;border-radius:4px;padding:8px 12px;font-weight:700}.proposal-filter a{color:var(--blue);align-self:center;font-size:13px;font-weight:700;text-decoration:none}@media (max-width:760px){.proposal-filter-heading{flex-direction:column;align-items:flex-start}.proposal-filter select:first-child,.proposal-filter input{width:100%;min-width:0}}.proposal-register-page .catalogue-header,.proposal-register-page .proposal-filter-panel{box-sizing:border-box;max-width:none;padding-left:20px;padding-right:20px}@media (max-width:760px){.proposal-register-page .catalogue-header,.proposal-register-page .proposal-filter-panel{padding-left:22px;padding-right:22px}}.proposal-detail-page .catalogue-header,.proposal-detail-page .proposal-filter-panel,.contract-detail-page .catalogue-header{box-sizing:border-box;padding-left:0;padding-right:0}.proposal-summary-chips{flex-wrap:wrap;gap:7px;margin-top:7px;display:flex}.proposal-summary-chips span{color:#40506a;background:#e4e9f1;border-radius:99px;padding:4px 8px;font-size:11px;font-weight:700}.proposal-register-list{max-width:none;margin:14px auto 0;padding:0 20px 56px}.proposal-register-list .table-panel{overflow-x:auto}.proposal-register-table{min-width:1160px}.proposal-register-table td:first-child{color:var(--ink)}.proposal-register-table td strong,.proposal-register-table td small{display:block}.proposal-open{color:var(--blue);white-space:nowrap;font-size:13px;font-weight:700;text-decoration:none}.proposal-open:hover{text-decoration:underline}@media (max-width:760px){.proposal-register-list{padding-left:22px;padding-right:22px}}.proposal-register-record{border:1px solid var(--line);max-width:1200px;color:var(--ink);background:#f8fbff;border-radius:8px;justify-content:space-between;align-items:flex-start;gap:20px;margin:14px auto;padding:20px 22px;text-decoration:none;display:flex}.proposal-register-record:hover{border-color:var(--blue)}.proposal-register-record h3{margin:10px 0 5px;font-size:24px}.proposal-register-record p{color:var(--muted);margin:0}.proposal-register-record aside{text-align:right}.proposal-register-record aside strong,.proposal-register-record aside small{display:block}.proposal-register-record aside strong{font-size:25px}.proposal-register-record aside small{color:var(--muted);margin-top:7px;font-size:12px}@media (max-width:760px){.proposal-register-record{flex-direction:column;margin-left:22px;margin-right:22px}.proposal-register-record aside{text-align:left}}.safety-overview{box-sizing:border-box;max-width:none;margin:32px auto;padding:0 20px 60px}.safety-overview-heading{justify-content:space-between;align-items:center;gap:18px;margin-bottom:16px;display:flex}.safety-overview-heading h2{margin:0 0 4px;font-size:24px}.safety-overview-heading span{color:var(--muted);font-size:13px}.safety-overview .risk-filter input{width:190px}.safety-overview .risk-filter select{min-width:160px}.safety-project-link{color:var(--blue);white-space:nowrap;text-decoration:none}.safety-project-link:hover{text-decoration:underline}@media (max-width:760px){.safety-overview{padding-left:22px;padding-right:22px}.safety-overview-heading{flex-direction:column;align-items:flex-start}}.bid-package-form,.bid-edit-form{width:100%}.bid-package-fields{grid-template-columns:minmax(0,2fr) minmax(180px,1fr);align-items:end;gap:16px;display:grid}.bid-package-fields label{min-width:0}.field-help{min-height:30px;color:var(--muted);margin-top:4px;font-size:11px;font-weight:400;line-height:1.35;display:block}.bid-edit-form label{color:var(--ink);margin:10px 0;font-size:12px;font-weight:700;display:block}.bid-edit-form input,.bid-edit-form select{box-sizing:border-box;border:1px solid var(--line);width:100%;color:var(--ink);font:inherit;background:#fff;border-radius:4px;margin-top:6px;padding:10px;display:block}.bid-edit-form .bid-package-fields{margin:14px 0}.bid-edit-form button{margin-top:2px}@media (max-width:760px){.bid-package-fields{grid-template-columns:1fr;gap:0}.field-help{min-height:auto}}.schedule-register{max-width:1200px;margin:32px auto;padding:0 7% 56px}.schedule-register-heading,.schedule-register-actions,.schedule-filter{align-items:center;gap:8px;display:flex}.schedule-register-heading{justify-content:space-between;gap:18px;margin-bottom:16px}.schedule-register-heading h2{margin:0;font-size:24px}.schedule-register-heading p{color:var(--muted);margin:5px 0 0;font-size:13px}.schedule-register-all-count{color:var(--muted);margin:0 0 16px;font-size:13px}.button-link,.button-secondary{box-sizing:border-box;border-radius:4px;align-items:center;min-height:36px;padding:8px 12px;font-size:13px;font-weight:700;text-decoration:none;display:inline-flex}.button-link{background:var(--blue);color:#fff}.button-secondary{border:1px solid var(--line);color:var(--blue);background:#fff}.schedule-filter{flex-wrap:wrap;margin-bottom:16px}.schedule-filter input,.schedule-filter select{box-sizing:border-box;border:1px solid var(--line);height:36px;color:var(--ink);font:inherit;background:#fff;border-radius:4px;padding:8px 10px}.schedule-filter select:first-child{min-width:300px}.schedule-filter input{width:220px}.schedule-filter button{background:var(--blue);color:#fff;border:0;border-radius:4px;height:36px;padding:8px 12px;font-weight:700}.schedule-filter a{color:var(--blue);font-size:13px;font-weight:700;text-decoration:none}.schedule-gantt-prompt{color:var(--muted);margin:0 0 16px;font-size:13px}.schedule-panel{padding-bottom:56px}.schedule-list{display:none}@media (max-width:760px){.schedule-register-heading,.schedule-register-actions{flex-direction:column;align-items:flex-start}.schedule-filter select:first-child,.schedule-filter input{width:100%;min-width:0}}.selection-filter{flex-wrap:wrap}.selection-filter input{box-sizing:border-box;border:1px solid var(--line);background:#fff;border-radius:4px;width:200px;height:34px;padding:7px 9px}.selection-list .selection-filter{gap:9px;padding:0 0 14px}.selection-summary{flex-wrap:wrap;gap:8px;margin:12px 0 16px;display:flex}.selection-summary a{color:#40506a;background:#e4e9f1;border-radius:99px;padding:4px 8px;font-size:11px;font-weight:700;text-decoration:none;display:inline-block}.selection-summary a.overdue{color:#8f2435;background:#ffe5e9}.selection-summary a:hover{filter:brightness(.96)}.selection-list .variance{border-radius:4px;padding:3px 6px;display:inline-block}.selection-list .variance.under{color:#087a37;background:#d9f7e4}.selection-list .variance.over{color:#a1394e;background:#ffe5e9}.selection-list .table-panel{overflow-x:auto}.selection-list th a{color:inherit;white-space:nowrap;text-decoration:none}.selection-list th a:hover{color:var(--blue)}.selection-list th.selection-name-header,.selection-list td.selection-name-cell{min-width:210px}.selection-list th.selection-description-header,.selection-list td.selection-description{min-width:260px}.selection-list th.selection-project-id-header,.selection-list td.selection-project-id{min-width:130px}.selection-list th.selection-project-name-header,.selection-list td.selection-project-name{min-width:300px}.selection-list th.selection-due-header,.selection-list td.selection-due-date{white-space:nowrap;min-width:120px}.selection-list th.selection-due-status-header,.selection-list td.selection-due-status{white-space:nowrap;min-width:105px}.selection-overlay .trade-overlay-card{width:min(100%,620px);max-height:calc(100vh - 48px);overflow-y:auto}.selection-overlay input,.selection-overlay select,.selection-overlay textarea{box-sizing:border-box;border:1px solid var(--line);width:100%;color:var(--ink);font:inherit;background:#fff;border-radius:4px;padding:10px}.selection-overlay textarea{resize:vertical;min-height:74px}.selection-overlay .form-row{grid-template-columns:repeat(3,1fr);gap:10px}.selection-overlay .trade-overlay-actions{margin-top:4px}.selection-overlay .trade-overlay-actions button,.selection-overlay .trade-overlay-actions a{box-sizing:border-box;border-radius:4px;justify-content:center;align-items:center;min-height:36px;padding:8px 12px;font-size:13px;font-weight:700;text-decoration:none;display:inline-flex}.selection-overlay .trade-overlay-actions button{background:var(--blue);color:#fff;cursor:pointer;border:0}.selection-overlay .trade-overlay-actions a{border:1px solid var(--line);color:var(--blue);background:#fff}@media (max-width:560px){.selection-overlay .form-row{grid-template-columns:1fr}}.selection-list .selection-actions{flex-wrap:wrap;align-items:center}.selection-list .selection-actions .button-link,.selection-list .selection-actions .button-secondary{white-space:nowrap;min-height:34px;padding:7px 10px}.selection-list .selection-actions .selection-decline{color:#8f2435;border-color:#eab0b8}.selection-history-link{color:var(--blue);font-size:12px;font-weight:700;text-decoration:none}.selection-history{gap:10px;margin:18px 0;padding:0;list-style:none;display:grid}.selection-history li{border:1px solid var(--line);background:#fff;border-radius:6px;gap:3px;padding:12px;display:grid}.selection-history strong{text-transform:capitalize}.selection-history span{color:var(--muted);font-size:13px}.selection-history small{color:var(--muted);font-size:12px}.selection-cost-warning{color:#765600;background:#fff5d6;border:1px solid #edc56d;border-radius:6px;margin:14px 0;padding:10px 12px;font-size:13px;line-height:1.45}.selection-cost-warning strong{display:block}.selection-list .selection-filter{grid-template-columns:minmax(250px,1fr) 200px 150px 130px auto auto;display:grid}.selection-list .selection-filter select{width:100%;min-width:0}.selection-list .selection-filter input{width:100%}@media (max-width:900px){.selection-list .selection-filter{grid-template-columns:1fr 1fr}.selection-list .selection-filter input,.selection-list .selection-filter select{width:100%;min-width:0}}.daily-logs-register-only .daily-log-form{display:none}.daily-log-entry .daily-log-form{display:grid}.time-clock-register-only .todo-form{display:none}.time-filter{flex-wrap:wrap;gap:8px;margin:0 0 16px;display:flex}.time-filter input,.time-filter select{box-sizing:border-box;border:1px solid var(--line);background:#fff;border-radius:4px;height:36px;padding:8px 10px}.time-filter select:first-child{min-width:300px}.time-filter input{width:200px}.time-filter button{background:var(--blue);color:#fff;border:0;border-radius:4px;padding:8px 12px;font-weight:700}.time-filter a{color:var(--blue);align-self:center;font-size:13px;font-weight:700;text-decoration:none}.time-approval{border:1px solid var(--line);background:var(--wash);border-radius:8px;margin:0 0 22px;padding:18px}.time-approval>div:first-child{margin-bottom:14px}.time-approval h3{margin:0 0 5px;font-size:18px}.time-approval p{color:var(--muted);margin:0;font-size:13px}.time-approval form{margin:0}.time-approval button{background:var(--blue);color:#fff;white-space:nowrap;border:0;border-radius:4px;padding:8px 11px;font-weight:700}.time-clock-links{align-items:center;gap:14px;display:flex}.time-clock-links>a:first-child{color:var(--blue);font-size:13px;font-weight:700;text-decoration:none}.time-approved{flex-direction:column;align-items:flex-start;gap:4px;display:flex}.time-approved small{color:var(--muted);white-space:nowrap;font-size:11px}.time-cost-incomplete{color:#8f2435;font-size:12px;font-weight:700}.time-week-link{color:var(--blue);font-weight:700;text-decoration:none}.time-week-link:hover{text-decoration:underline}.time-week-approve{margin-top:16px}.time-week-approve button{background:var(--blue);color:#fff;border:0;border-radius:4px;padding:9px 12px;font-weight:700}.time-week-reopen,.time-approval-history{border:1px solid var(--line);background:var(--wash);border-radius:8px;max-width:680px;margin-top:22px;padding:18px}.time-week-reopen h3,.time-approval-history h3{margin:0 0 6px;font-size:18px}.time-week-reopen p,.time-approval-history>p{color:var(--muted);margin:0 0 14px;font-size:13px}.time-week-reopen label{font-size:13px;font-weight:700;display:block}.time-week-reopen textarea{box-sizing:border-box;border:1px solid var(--line);resize:vertical;width:100%;min-height:72px;font:inherit;border-radius:4px;margin:6px 0 12px;padding:9px;display:block}.time-week-reopen button{color:#fff;background:#8f2435;border:0;border-radius:4px;padding:9px 12px;font-weight:700}.time-approval-history ol{gap:10px;margin:0;padding:0;list-style:none;display:grid}.time-approval-history li{border-top:1px solid var(--line);grid-template-columns:max-content 1fr;gap:3px 10px;padding-top:10px;font-size:13px;display:grid}.time-approval-history li span{color:var(--muted)}.time-approval-history li p{grid-column:1/-1;margin:4px 0 0}.messages-feed-only .message-form{display:none}.message-entry .message-form{display:grid}.message-overlay .trade-overlay-card{width:min(100%,680px);max-height:calc(100vh - 48px);overflow-y:auto}.message-overlay .form-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.message-overlay input,.message-overlay select,.message-overlay textarea{box-sizing:border-box;border:1px solid var(--line);width:100%;color:var(--ink);font:inherit;background:#fff;border-radius:4px;padding:10px}.message-overlay textarea{resize:vertical;min-height:100px}.message-overlay .trade-overlay-actions{margin-top:4px}.message-overlay .trade-overlay-actions button,.message-overlay .trade-overlay-actions a{box-sizing:border-box;border-radius:4px;justify-content:center;align-items:center;min-height:36px;padding:8px 12px;font-size:13px;font-weight:700;text-decoration:none;display:inline-flex}.message-overlay .trade-overlay-actions button{background:var(--blue);color:#fff;cursor:pointer;border:0}.message-overlay .trade-overlay-actions a{border:1px solid var(--line);color:var(--blue);background:#fff}@media (max-width:560px){.message-overlay .form-row{grid-template-columns:1fr}}.message-overlay .message-recipient-picker label{justify-content:flex-start;align-items:center;gap:8px;display:flex}.message-overlay .message-recipient-picker input{width:16px;height:16px;accent-color:var(--blue);margin:0;padding:0}.messages-register-page .catalogue-header,.messages-register-page .message-list{box-sizing:border-box;max-width:none;padding-left:20px;padding-right:20px}.message-register-table{min-width:1040px}.message-register-table th a{color:inherit;white-space:nowrap;text-decoration:none}.message-register-table th a:hover{color:var(--blue)}.message-register-table td{vertical-align:top}.message-recorded{min-width:155px;color:var(--muted);font-variant-numeric:tabular-nums;white-space:nowrap;font-size:12px}.message-content{white-space:pre-wrap;min-width:300px;line-height:1.45}.message-open-link{box-sizing:border-box;border:1px solid var(--line);min-height:32px;color:var(--blue);white-space:nowrap;border-radius:4px;justify-content:center;align-items:center;padding:6px 10px;font-size:12px;font-weight:700;text-decoration:none;display:inline-flex}.message-open-link:hover{border-color:var(--blue);background:var(--blue-soft,#eef3ff)}.message-detail-overlay .trade-overlay-card{width:min(100%,680px);max-height:calc(100vh - 48px);overflow-y:auto}.message-detail-meta{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:20px 0 0;padding:0;display:grid}.message-detail-meta>div{border:1px solid var(--line);background:var(--wash);border-radius:5px;min-width:0;padding:11px 12px}.message-detail-meta dt{color:var(--muted);font-size:11px;font-weight:700}.message-detail-meta dd{color:var(--ink);overflow-wrap:anywhere;margin:5px 0 0;font-size:13px;line-height:1.35}.message-detail-body{border-top:1px solid var(--line);margin-top:20px;padding-top:16px}.message-detail-body h3{margin:0;font-size:16px}.message-detail-body p{color:var(--ink);white-space:pre-wrap;overflow-wrap:anywhere;margin:8px 0 0;line-height:1.5}.message-detail-overlay .trade-overlay-actions{border-top:1px solid var(--line);justify-content:flex-end;margin-top:20px;padding-top:16px}.message-detail-overlay .trade-overlay-actions a{box-sizing:border-box;border:1px solid var(--line);min-height:36px;color:var(--blue);background:#fff;border-radius:4px;justify-content:center;align-items:center;padding:8px 12px;font-size:13px;font-weight:700;text-decoration:none;display:inline-flex}.message-detail-overlay .trade-overlay-actions a:hover{border-color:var(--blue)}@media (max-width:760px){.messages-register-page .catalogue-header,.messages-register-page .message-list{padding-left:22px;padding-right:22px}}@media (max-width:560px){.message-detail-meta{grid-template-columns:1fr}.message-detail-overlay .trade-overlay-card{max-height:calc(100vh - 32px);padding:20px}}.portal-actions .payment-card{grid-template-columns:1fr;gap:7px;padding:18px;display:grid}.portal-actions .payment-card>div{grid-row:1;min-width:0}.portal-actions .payment-card>span{white-space:nowrap;grid-row:2;min-width:0;padding:0}.portal-actions article{grid-template-columns:1fr;gap:7px;padding:18px;display:grid}.portal-actions article>div{grid-row:1;min-width:0}.portal-actions article>span{white-space:nowrap;grid-row:2;min-width:0}.portal-actions a{border:1px solid var(--line);color:inherit;background:#fff;border-radius:8px;grid-template-columns:1fr;gap:7px;padding:18px;text-decoration:none;display:grid}.portal-actions a:hover{border-color:#9ab9ef;box-shadow:0 2px 8px #17386814}.portal-actions a>div{grid-row:1;min-width:0}.portal-actions a>span{min-width:0;color:var(--blue);white-space:nowrap;grid-row:2;font-size:24px;font-weight:700}.portal-files-heading{justify-content:space-between;align-items:center;gap:16px;display:flex}.portal-files-heading a{color:var(--blue);font-size:13px;font-weight:700;text-decoration:none}.portal-files-all{padding-bottom:48px}.dashboard-table td small{color:var(--muted);margin-top:5px;font-size:11px;display:block}.dashboard-metrics article,.workspace-metrics article{grid-template-columns:1fr;gap:7px;padding:18px;display:grid}.dashboard-metrics strong,.workspace-metrics strong{margin-top:0}.dashboard-metrics{grid-template-columns:repeat(5,minmax(0,1fr))}.dashboard-metrics a{border:1px solid var(--line);color:var(--ink);background:#fff;border-radius:8px;grid-template-columns:1fr;gap:7px;padding:18px;text-decoration:none;display:grid}.dashboard-metrics a:hover{border-color:#9ab9ef}.dashboard-metrics a span{color:var(--muted);font-size:12px}.dashboard-metrics a strong{font-size:24px}.dashboard-alerts{grid-template-columns:minmax(200px,1.6fr) repeat(4,minmax(150px,1fr));gap:14px;max-width:none;margin:0 auto 30px;padding:0 clamp(22px,3vw,48px);display:grid}.dashboard-alerts>div{align-self:center}.dashboard-alerts h2{margin:0;font-size:20px}.dashboard-alerts>div>span{color:var(--muted);margin-top:5px;font-size:12px;display:block}.dashboard-alert{border:1px solid var(--line);color:var(--ink);background:#fff;border-radius:8px;gap:5px;padding:15px 17px;text-decoration:none;display:grid}.dashboard-alert strong{font-size:22px}.dashboard-alert span{color:var(--muted);font-size:12px}.dashboard-alert.pending{background:#fffaf0;border-color:#f0d58c}.dashboard-alert.urgent{background:#fff6f7;border-color:#f0c1ca}.dashboard-alert.urgent strong{color:#8f2435}@media (max-width:1100px){.dashboard-metrics{grid-template-columns:repeat(auto-fit,minmax(155px,1fr))}.dashboard-alerts{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-alerts>div{grid-column:1/-1}}.workspace-metrics{max-width:1200px;padding-left:7%;padding-right:7%}.workspace-metrics article{background:#fff;padding:18px}.question-form .form-actions{grid-column:1/-1}.question-list-heading,.risk-list-heading{display:block}.question-filter,.risk-filter{margin:0 0 16px}.safety-overview-heading{display:block}.safety-overview .risk-filter{margin:0 0 16px}.safety-summary a{color:#40506a;background:#e4e9f1;border-radius:99px;padding:4px 8px;font-size:11px;font-weight:700;text-decoration:none;display:inline-block}.safety-summary a.attention{color:#805f00;background:#fff0bf}.safety-summary a.overdue{color:#8f2435;background:#ffe5e9}.safety-summary a:hover{filter:brightness(.96)}.safety-overview th a{color:inherit;white-space:nowrap;text-decoration:none}.safety-overview th a:hover{color:var(--blue)}.safety-open{color:var(--blue);white-space:nowrap;font-size:13px;font-weight:700;text-decoration:none}.safety-open:hover{text-decoration:underline}.safety-summary{margin:12px 0 16px;padding-top:0}.safety-overview-table th:first-child,.safety-overview-table td:first-child{min-width:112px}.health-safety-dashboard{max-width:none;margin:28px auto 0;padding:0 20px}.health-safety-dashboard-heading h2{margin:0;font-size:24px}.health-safety-dashboard-heading p{color:var(--muted);margin:5px 0 0;font-size:13px}.health-safety-metrics{grid-template-columns:repeat(6,minmax(0,1fr));gap:12px;margin-top:16px;display:grid}.health-safety-metrics a,.project-health-safety-summary article,.project-health-safety-summary a{border:1px solid var(--line);color:var(--ink);background:#fff;border-radius:8px;gap:6px;padding:16px;text-decoration:none;display:grid}.health-safety-metrics a:hover,.project-health-safety-summary a:hover{border-color:#9ab9ef}.health-safety-metrics a.attention{background:#fffaf0;border-color:#f0d58c}.health-safety-metrics a.urgent{background:#fff6f7;border-color:#f0c1ca}.health-safety-metrics span,.project-health-safety-summary span{color:var(--muted);font-size:12px}.health-safety-metrics strong,.project-health-safety-summary strong{font-size:24px;line-height:1.1}.health-safety-metrics small,.project-health-safety-summary small{color:var(--muted);font-size:11px;line-height:1.35}.health-safety-attention{color:#805f00;background:#fffaf0;border:1px solid #f0d58c;border-radius:6px;flex-wrap:wrap;align-items:center;gap:8px 18px;margin-top:12px;padding:11px 14px;font-size:12px;display:flex}.health-safety-attention strong{color:var(--ink)}.project-health-safety-summary{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;max-width:none;margin:22px auto 0;padding:0 20px;display:grid}.project-health-safety-summary article,.project-health-safety-summary a{align-content:start}.safety-overview .table-panel{overflow-x:auto}.safety-overview-table{min-width:1080px}@media (max-width:1100px){.health-safety-metrics{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width:760px){.health-safety-dashboard,.project-health-safety-summary{padding-left:22px;padding-right:22px}.health-safety-metrics,.project-health-safety-summary{grid-template-columns:1fr 1fr}}@media (max-width:480px){.health-safety-metrics,.project-health-safety-summary{grid-template-columns:1fr}}form[class*=filter] input,form[class*=filter] select,.table-tools input{font-size:14px}@media (min-width:901px){.proposal-filter,.contract-filter,.risk-filter,.question-filter{flex-wrap:nowrap;grid-template-columns:minmax(230px,1fr) minmax(180px,.8fr) max-content max-content max-content max-content;display:grid}.proposal-filter input,.proposal-filter select,.contract-filter input,.contract-filter select,.risk-filter input,.risk-filter select,.question-filter input,.question-filter select{box-sizing:border-box;width:100%;min-width:0}.risk-filter select[name=jobId],.question-filter select[name=jobId]{min-width:0}.safety-overview .risk-filter input,.safety-overview .risk-filter select{width:100%;min-width:0}.proposal-filter button,.proposal-filter a,.contract-filter button,.contract-filter a,.risk-filter button,.risk-filter a,.question-filter button,.question-filter a{white-space:nowrap}}.contract-list{max-width:1200px;margin:32px auto 0;padding:0 7%}.contract-list-heading{margin-bottom:14px}.contract-list-heading h2{margin:0;font-size:24px}.contract-list-heading span{color:var(--muted);margin-top:4px;font-size:13px;display:block}.contract-filter{flex-wrap:wrap;gap:8px;margin-bottom:22px;display:flex}.contract-filter input,.contract-filter select{border:1px solid var(--line);min-height:36px;color:var(--ink);font:inherit;background:#fff;border-radius:4px;padding:8px 10px}.contract-filter select:first-child{min-width:300px}.contract-filter input{width:210px}.contract-filter button{background:var(--blue);color:#fff;cursor:pointer;border:0;border-radius:4px;padding:8px 12px;font-weight:700}.contract-filter a{color:var(--blue);align-self:center;font-size:13px;font-weight:700;text-decoration:none}@media (max-width:760px){.contract-filter select:first-child,.contract-filter input{width:100%;min-width:0}}.contract-register-page .catalogue-header,.contract-register-page .contract-list{box-sizing:border-box;max-width:none;padding-left:20px;padding-right:20px}@media (max-width:760px){.contract-register-page .catalogue-header,.contract-register-page .contract-list{padding-left:22px;padding-right:22px}}.contract-list-heading{justify-content:space-between;align-items:flex-end;gap:16px;display:flex}.contract-summary-chips{flex-wrap:wrap;gap:7px;margin-top:7px;display:flex}.contract-summary-chips span{color:#40506a;background:#e4e9f1;border-radius:99px;padding:4px 8px;font-size:11px;font-weight:700}.contract-list .table-panel{overflow-x:auto}.contract-register-table{min-width:1120px}.contract-register-table td:first-child{color:var(--ink)}.contract-register-table td strong,.contract-register-table td small{display:block}.contract-open{color:var(--blue);white-space:nowrap;font-size:13px;font-weight:700;text-decoration:none}.contract-open:hover{text-decoration:underline}@media (min-width:761px){.contract-filter{grid-template-columns:minmax(185px,1.6fr) minmax(160px,1.1fr) minmax(120px,.75fr) minmax(130px,.8fr) auto auto;align-items:center;width:100%;display:grid}.contract-filter input,.contract-filter select{box-sizing:border-box;width:100%;min-width:0}.contract-filter button,.contract-filter a{white-space:nowrap}}.question-create-overlay .trade-overlay-card{width:min(100%,510px);max-height:calc(100vh - 48px);overflow-y:auto}.question-create-overlay input,.question-create-overlay select,.question-create-overlay textarea{box-sizing:border-box;border:1px solid var(--line);width:100%;color:var(--ink);font:inherit;background:#fff;border-radius:4px;padding:10px}.question-create-overlay textarea{resize:vertical;min-height:76px;line-height:1.4}.question-create-overlay .form-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.question-create-overlay .trade-overlay-actions{align-items:center;gap:12px;margin-top:18px;display:flex}.question-create-overlay .trade-overlay-actions button,.question-create-overlay .trade-overlay-actions a{min-height:36px;padding:8px 12px}.question-create-overlay .trade-overlay-actions button{border:1px solid var(--blue);background:var(--blue);color:#fff;border-radius:4px;font-weight:700}.question-create-overlay .trade-overlay-actions a{align-items:center;font-weight:700;display:inline-flex}@media (max-width:560px){.question-create-overlay .form-row{grid-template-columns:1fr}}.file-list .file-actions .inline-editor>form{z-index:50;border:1px solid var(--line);background:#fff;border-radius:8px;width:min(390px,100vw - 40px);max-height:calc(100vh - 48px);padding:18px;position:fixed;top:50%;left:50%;overflow-y:auto;transform:translate(-50%,-50%);box-shadow:0 18px 55px #0a182a47}.file-list .file-actions .inline-editor>form label{margin:0 0 12px;font-size:12px;font-weight:700;display:block}.file-list .file-actions .inline-editor>form input,.file-list .file-actions .inline-editor>form select{box-sizing:border-box;border:1px solid var(--line);width:100%;color:var(--ink);font:inherit;background:#fff;border-radius:4px;margin-top:6px;padding:10px}.file-list .file-actions .inline-editor>form button{background:var(--blue);color:#fff;border:0;border-radius:4px;min-height:36px;margin:0 8px 0 0;padding:8px 12px;font-weight:700}.file-list .file-actions .inline-editor>form .inline-editor-cancel{color:var(--blue);border:1px solid var(--line);background:#fff}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.file-library{max-width:1200px;margin:32px auto;padding:0 7% 60px}.file-library-heading{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.file-library-heading h2{margin:0 0 6px;font-size:24px}.file-library-heading p{color:var(--muted);margin:0}.file-library-heading>a{color:var(--blue);font-weight:700;text-decoration:none}.file-library-tabs{border-bottom:1px solid var(--line);gap:18px;margin:24px 0 14px;display:flex}.file-library-tabs a{color:var(--muted);padding:0 0 10px;font-weight:700;text-decoration:none}.file-library-tabs a.active{color:var(--blue);border-bottom:3px solid var(--blue)}.file-library-search{gap:10px;margin:0 0 20px;display:flex}.file-library-search label{flex:1}.file-library-search input{box-sizing:border-box;border:1px solid var(--line);border-radius:4px;width:100%;padding:10px}.file-library-search button{border:1px solid var(--blue);background:var(--blue);color:#fff;cursor:pointer;border-radius:4px;padding:10px 15px;font-weight:700}.file-library-search a{color:var(--blue);align-self:center;font-weight:700;text-decoration:none}.file-folder-grid{grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:22px;display:grid}.file-folder-grid a{border:1px solid var(--line);min-height:88px;color:var(--ink);background:#fff;border-radius:8px;padding:16px;text-decoration:none}.file-folder-grid a.active,.file-folder-grid a:hover{border-color:var(--blue);background:#f8fbff}.file-folder-grid strong,.file-folder-grid span{display:block}.file-folder-grid span{color:var(--muted);margin-top:7px;font-size:13px}.file-library-photos{grid-template-columns:repeat(3,1fr);gap:14px;display:grid}.file-library-photos article{border:1px solid var(--line);background:#fff;border-radius:8px;overflow:hidden}.file-library-photos .file-preview-trigger{background:0 0;border:0;width:100%;padding:0;display:block}.file-library-photos img{object-fit:cover;width:100%;height:180px;display:block}.file-library-photos strong,.file-library-photos small{padding:0 12px;display:block}.file-library-photos strong{padding-top:11px}.file-library-photos small{color:var(--muted);padding-bottom:12px}@media (max-width:760px){.file-folder-grid,.file-library-photos{grid-template-columns:1fr}.file-library-heading{flex-direction:column}.file-library-search{flex-wrap:wrap}.file-library-search label{flex-basis:100%}}.file-page-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:12px;display:flex}.file-page-actions .button{margin-top:0}@media (max-width:760px){.file-page-actions{justify-content:flex-start}}.file-page-header{max-width:none;padding-left:20px;padding-right:20px}.file-upload-overlay .trade-overlay-card{width:min(100%,660px);max-height:calc(100vh - 48px);overflow-y:auto}.file-upload-overlay input,.file-upload-overlay select{box-sizing:border-box;border:1px solid var(--line);width:100%;color:var(--ink);font:inherit;background:#fff;border-radius:4px;padding:10px}.file-upload-overlay input[type=file]{padding:8px}.file-upload-overlay .form-row{grid-template-columns:repeat(3,1fr);gap:10px;display:grid}.file-upload-overlay .trade-overlay-actions{margin-top:4px}.file-upload-overlay .trade-overlay-actions button,.file-upload-overlay .trade-overlay-actions a{box-sizing:border-box;border-radius:4px;justify-content:center;align-items:center;min-height:36px;padding:8px 12px;font-size:13px;font-weight:700;text-decoration:none;display:inline-flex}.file-upload-overlay .trade-overlay-actions button{background:var(--blue);color:#fff;cursor:pointer;border:0}.file-upload-overlay .trade-overlay-actions a{border:1px solid var(--line);color:var(--blue);background:#fff}.file-upload-overlay .upload-note{color:var(--muted);margin:0;font-size:12px}@media (max-width:560px){.file-upload-overlay .form-row{grid-template-columns:1fr}}.selection-list .selection-filter{flex-wrap:wrap;align-items:center;display:flex}.selection-list .selection-filter input:not([type=hidden]){flex:2 220px;width:auto}.selection-list .selection-filter select{flex:160px;width:auto}.proposal-detail-page .proposal-layout{background:#f0f3f7;grid-template-columns:minmax(240px,.65fr) minmax(0,1.65fr);align-items:start;gap:28px}.proposal-preview.proposal-document{background:#fff;border-radius:4px;min-width:0;padding:30px;box-shadow:0 6px 24px #182f4910}.proposal-document-brand{justify-content:space-between;align-items:center;gap:20px;margin-bottom:24px;padding:0;display:flex}.proposal-document-brand span{text-align:right;letter-spacing:1px;font-size:10px}.proposal-client-logo-placeholder{box-sizing:border-box;width:180px;height:64px;color:var(--muted);letter-spacing:.08em;text-transform:uppercase;background:#fafbfd;border:1px dashed #9aa8b8;border-radius:4px;place-items:center;font-size:11px;font-weight:700;display:grid}.proposal-document h3{overflow-wrap:anywhere;font-size:28px;line-height:1.2}.proposal-document>p{white-space:pre-wrap;line-height:1.7}.proposal-document-meta{border-top:1px solid var(--line);border-bottom:1px solid var(--line);grid-template-columns:1fr 1fr;gap:0 24px;margin:24px 0;display:grid}.proposal-document-meta p{font-size:12px}.proposal-document-meta b{color:#23364b}.proposal-document-scope h4{margin:0 0 14px}.proposal-document-table{overflow-x:auto}.proposal-document table{border-collapse:collapse;width:100%;font-size:12px}.proposal-document th{text-align:left;background:#f0f4f7}.proposal-document th,.proposal-document td{border-bottom:1px solid var(--line);vertical-align:top;padding:12px 10px}.proposal-document td:first-child{white-space:pre-wrap;overflow-wrap:anywhere}.proposal-document th:last-child,.proposal-document td:last-child{text-align:right;white-space:nowrap}.proposal-document .proposal-tax-summary{grid-template-columns:max-content 120px;justify-content:end;gap:12px 24px;margin:0;padding:20px 20px 20px 0;font-size:13px;line-height:1.5;display:grid}.proposal-cost-category{border:1px solid var(--line);background:#fff;border-radius:4px;margin:0 0 10px;overflow:hidden}.proposal-cost-category summary{color:var(--ink);cursor:pointer;background:#f0f4f7;justify-content:space-between;align-items:center;gap:14px;padding:12px 14px;list-style:none;display:flex}.proposal-cost-category summary::-webkit-details-marker{display:none}.proposal-cost-category summary:before{content:"▸";color:var(--blue);flex:none;font-size:16px;font-weight:700}.proposal-cost-category[open] summary:before{content:"▾"}.proposal-cost-category-heading{flex-wrap:wrap;flex:auto;align-items:baseline;gap:4px 10px;min-width:0;display:flex}.proposal-cost-category-heading strong{font-size:13px}.proposal-cost-category-heading small{color:var(--muted);font-size:11px;font-weight:400}.proposal-cost-category-action{color:var(--blue);white-space:nowrap;flex:none;font-size:11px;font-weight:700}.proposal-document .proposal-cost-category-action-open,.proposal-document .proposal-cost-category[open] .proposal-cost-category-action-closed{display:none}.proposal-document .proposal-cost-category[open] .proposal-cost-category-action-open{display:inline}.proposal-cost-category-details{padding:0}.proposal-cost-category-details .proposal-document-table,.proposal-cost-category-details .proposal-document-table table{margin:0}.proposal-cost-code{color:var(--blue);font-weight:700;display:block}.proposal-cost-category-details td:first-child small,.proposal-cost-category-details td:first-child span:last-child{display:block}.proposal-cost-category-details td:first-child small{color:var(--muted);margin-top:2px;font-size:11px}.proposal-cost-category-details td:first-child span:last-child{margin-top:2px}.proposal-scope-view{gap:10px;display:grid}.proposal-scope-toggle{border:1px solid var(--line);color:var(--ink);cursor:pointer;background:#f8fbff;border-radius:4px;align-items:flex-start;gap:9px;margin:0 0 2px;padding:10px 12px;display:flex}.proposal-scope-toggle input{width:16px;height:16px;accent-color:var(--blue);flex:none;margin:2px 0 0}.proposal-scope-toggle>span{gap:2px;margin:0;display:grid}.proposal-scope-toggle strong{font-size:12px}.proposal-scope-toggle small{color:var(--muted);font-size:11px;font-weight:400;line-height:1.4}.proposal-cost-category-summary{min-height:48px;color:var(--ink);background:#f0f4f7;align-items:center;gap:14px;padding:10px 20px 10px 14px;display:flex}.proposal-document .proposal-cost-category-heading{flex-wrap:wrap;flex:auto;align-items:baseline;gap:4px 10px;min-width:0;display:flex}.proposal-document .proposal-cost-category-heading strong{font-size:13px}.proposal-document .proposal-cost-category-heading small{color:var(--muted);font-size:11px;font-weight:400}.proposal-cost-category-summary:before{content:"•";color:var(--blue);flex:none;font-size:18px;line-height:1}.proposal-document .proposal-cost-category-amount{color:var(--ink);text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums;flex:0 0 120px;margin:0;font-size:13px}.proposal-document .proposal-cost-category-details table{table-layout:fixed}.proposal-document .proposal-cost-column-description{width:43%}.proposal-document .proposal-cost-column-quantity{width:18%}.proposal-document .proposal-cost-column-amount{width:39%}.proposal-document .proposal-cost-quantity{vertical-align:middle;white-space:nowrap;font-variant-numeric:tabular-nums}.proposal-document .proposal-cost-category-details th:last-child,.proposal-document .proposal-cost-category-details td:last-child{text-align:right;padding-right:20px}.proposal-document .proposal-scope-view,.proposal-document .proposal-cost-categories,.proposal-document .proposal-cost-category-details,.proposal-document .proposal-cost-category-details .proposal-document-table{border-top:0;margin-top:0;padding-top:0}.proposal-tax-summary dt{color:#46566b;margin:0}.proposal-tax-summary dd{text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums;margin:0;font-weight:600}.proposal-document .proposal-document-total{color:#fff;background:#244a6c;border-radius:4px;justify-content:space-between;align-items:center;gap:16px;padding:20px;display:flex}.proposal-document-total span{color:#fff}.proposal-document-total strong{font-variant-numeric:tabular-nums;margin:0}.proposal-document .preview-note{font-size:11px}.proposal-preview.proposal-document{box-shadow:none;background:#edf2f7;gap:24px;padding:0;display:grid}.proposal-document-page{box-sizing:border-box;background:#fff;border:1px solid #d8e0e8;flex-direction:column;min-height:760px;padding:30px;display:flex;box-shadow:0 6px 24px #182f4910}.proposal-document-page+.proposal-document-page{margin-top:0}.proposal-document-page .proposal-document-brand,.proposal-document-page .proposal-document-meta{flex:none}.proposal-document-page .proposal-document-footer{margin-top:auto}.proposal-document-cover-brand{justify-content:center;margin-bottom:0;position:relative}.proposal-document-cover-brand>span{position:absolute;top:24px;right:0}.proposal-document .proposal-company-logo-placeholder{box-sizing:border-box;width:172px;min-height:58px;color:var(--muted);text-align:center;background:#fafbfd;border:1px solid #9aa8b8;border-radius:0;place-items:center;margin:0;padding:6px;display:grid}.proposal-document .proposal-company-logo-placeholder img{object-fit:contain;width:auto;max-width:100%;height:auto;max-height:100%;margin:0;display:block}.proposal-document .proposal-company-logo-placeholder span{color:#53677d;letter-spacing:.04em;text-align:center;text-transform:uppercase;margin:0;font-size:10px;line-height:1.2;display:block;position:static}.proposal-document .proposal-company-logo-placeholder strong{color:var(--blue);margin:2px 0 0;font-size:11px;line-height:1.2;display:block}.proposal-document-contact-line{text-align:center;color:#53677d!important;margin:12px 0 26px!important;font-size:11px!important;line-height:1.4!important}.proposal-document-recipient{grid-template-columns:minmax(0,1fr) max-content;gap:24px;margin:0 0 24px;display:grid}.proposal-document .proposal-document-recipient>div{border:0;min-width:0;margin:0;padding:0}.proposal-document-recipient strong,.proposal-document-recipient span{color:var(--ink);margin:0;font-size:12px;line-height:1.35;display:block}.proposal-document-recipient strong{font-size:13px}.proposal-document-recipient span{margin-top:10px;font-weight:700}.proposal-document-recipient p{margin:4px 0 0;font-size:12px;color:var(--ink)!important;line-height:1.45!important}.proposal-document-recipient>div:last-child{text-align:right}.proposal-document-cover>h3{margin:0 0 18px}.proposal-document-greeting{color:var(--ink)!important;margin:0 0 14px!important;font-size:13px!important;line-height:1.5!important}.proposal-document-prepared{margin-bottom:0}.proposal-document-contract-price{margin:24px 0 0;font-size:13px;color:var(--ink)!important;line-height:1.5!important}.proposal-document-copy{margin:12px 0 0;font-size:13px;color:var(--ink)!important;line-height:1.5!important}.proposal-document-optional-section{margin-top:24px}.proposal-document-optional-section h4{color:var(--ink);margin:0 0 9px;font-size:13px}.proposal-document-optional-section ul{color:var(--ink);margin:0;padding-left:20px;font-size:12px;line-height:1.55}.proposal-document-signoff{color:var(--ink);gap:4px;margin-top:28px;padding-bottom:24px;font-size:12px;display:grid}.proposal-document-signoff p{margin:0 0 8px;font-size:12px;color:var(--ink)!important}.proposal-document-signoff strong{font-size:13px}.proposal-document-signoff span{color:var(--muted)}.proposal-document-footer{border-top:1px solid var(--line);color:#53677d;justify-content:space-between;gap:16px;padding-top:12px;font-size:11px;display:flex}.proposal-document-page-heading{border-bottom:1px solid var(--line);justify-content:space-between;align-items:baseline;gap:18px;margin-bottom:22px;padding-bottom:14px;display:flex}.proposal-document-page-heading h3{margin:0;font-size:22px}.proposal-document-page-heading span{color:var(--blue);font-size:11px;font-weight:700}.proposal-document-pricing-page .proposal-cost-categories{gap:10px;display:grid}.proposal-document-pricing-page .proposal-tax-summary{margin-top:20px}.proposal-document-acceptance{margin-top:34px;padding-bottom:28px}.proposal-document-acceptance h4{color:var(--ink);text-align:center;margin:0 0 18px;font-size:17px}.proposal-document-acceptance>p{margin:0 0 28px;font-size:12px;color:var(--ink)!important;line-height:1.6!important}.proposal-document-signature-row{min-height:34px;color:var(--ink);grid-template-columns:90px minmax(0,1fr);align-items:center;gap:14px;font-size:12px;display:grid}.proposal-document .proposal-document-signature-row{border-top:0;margin:0;padding:0}.proposal-document-signature-row strong{font-size:12px}.proposal-document .proposal-document-signature-value{border-top:0;align-items:center;min-width:0;min-height:28px;margin:0;padding:0 0 0 4px;display:flex}.proposal-document .proposal-document-signature-line{border-top:0;border-bottom:1px solid #53677d;align-items:flex-end;padding:0 0 3px 4px;overflow:hidden}.proposal-document-signature-line img{object-fit:contain;object-position:left bottom;width:auto;max-width:190px;height:auto;max-height:42px;margin-bottom:3px;display:block}.proposal-document-recorded{color:#53677d;flex-wrap:wrap;align-items:center;gap:10px;margin-top:20px;font-size:11px;display:flex}.proposal-document-recorded .file-preview-trigger.title{color:var(--blue);font:inherit;cursor:pointer;background:0 0;border:0;padding:0;font-weight:700;text-decoration:underline}.proposal-document-contact{text-align:center;margin:0;padding:0 4px 4px;color:var(--muted)!important;font-size:11px!important}.proposal-detail-page .proposal-layout{grid-template-columns:minmax(0,1fr)}.proposal-heading-status{flex-wrap:wrap;align-items:center;gap:7px;display:flex}.proposal-heading-status .proposal-status{margin:0}.proposal-setup-scope{border-top:1px solid var(--line);margin:24px 0;padding-top:20px}.proposal-setup-scope>.eyebrow{margin:0 0 6px}.proposal-setup-scope h3{margin:0 0 12px;font-size:16px}.proposal-setup-scope .proposal-scope-toggle{border-radius:6px;align-items:flex-start;gap:12px;margin:0;padding:14px}.proposal-setup-scope .proposal-scope-toggle>span{gap:4px}.proposal-setup-scope .proposal-scope-toggle small{line-height:1.45}.proposal-setup-scope .form-help{color:var(--muted);margin:10px 2px 0;font-size:12px;line-height:1.45}.proposal-setup-sections{border-top:1px solid var(--line);gap:12px;margin:24px 0;padding-top:20px;display:grid}.proposal-setup-sections>.eyebrow{margin:0 0 2px}.proposal-actions .inline-editor-drawer>form .proposal-section-toggle{border:1px solid var(--line);background:#f8fbff;border-radius:6px;grid-template-columns:18px minmax(0,1fr);align-items:start;gap:10px;margin:0;padding:12px 14px;display:grid}.proposal-actions .inline-editor-drawer>form .proposal-section-toggle input{width:16px;min-width:16px;height:16px;min-height:16px;accent-color:var(--blue);border:0;margin:2px 0 0;padding:0}.proposal-section-toggle>span{gap:3px;min-width:0;display:grid}.proposal-section-toggle small{color:var(--muted);font-size:11px;font-weight:400;line-height:1.4}.proposal-actions .inline-editor{display:block}.proposal-actions .inline-editor>summary{box-sizing:border-box;border:1px solid var(--blue);background:var(--blue);color:#fff;white-space:nowrap;border-radius:4px;justify-content:center;align-items:center;min-height:36px;padding:0 12px;font-size:13px;line-height:1;display:inline-flex}.proposal-actions .inline-editor-drawer>form{z-index:30;box-sizing:border-box;border:0;border-left:1px solid var(--line);border-radius:0;width:min(100%,560px);height:100dvh;max-height:none;padding:28px;position:fixed;inset:0 0 0 auto;overflow-y:auto;transform:none;box-shadow:-18px 0 55px #10234633}.proposal-actions .inline-editor-drawer>form label{color:var(--ink);margin:0 0 14px;font-size:12px;font-weight:700;display:block}.proposal-actions .inline-editor-drawer>form input:not([type=hidden]),.proposal-actions .inline-editor-drawer>form textarea{box-sizing:border-box;border:1px solid var(--line);width:100%;min-height:40px;color:var(--ink);font:inherit;background:#fff;border-radius:4px;margin-top:6px;padding:9px 10px;display:block}.proposal-actions .inline-editor-drawer>form textarea{resize:vertical;min-height:128px}.proposal-actions .inline-editor-drawer>form>button:not(.inline-editor-cancel),.proposal-actions .inline-editor-drawer>form .inline-editor-cancel{box-sizing:border-box;white-space:nowrap;border-radius:4px;justify-content:center;align-items:center;height:36px;min-height:36px;margin:0;padding:0 12px;font-size:13px;font-weight:700;line-height:1;display:inline-flex}.proposal-actions .inline-editor-drawer>form>button:not(.inline-editor-cancel){background:var(--blue);color:#fff;cursor:pointer;border:0}.proposal-actions .inline-editor-drawer>form .inline-editor-cancel{border:1px solid var(--line);color:var(--blue);cursor:pointer;background:#fff;margin-left:8px}.proposal-actions .inline-editor-drawer>form .proposal-setup-scope .proposal-scope-toggle{grid-template-columns:18px minmax(0,1fr);align-items:start;gap:10px;margin:0;padding:14px;display:grid}.proposal-actions .inline-editor-drawer>form .proposal-setup-scope .proposal-scope-toggle input{width:16px;min-width:16px;height:16px;min-height:16px;margin:2px 0 0;padding:0}.proposal-actions .inline-editor-drawer>form .proposal-setup-scope .proposal-scope-toggle>span{min-width:0}@media (max-width:760px){.proposal-actions .inline-editor-drawer>form{width:100%;padding:22px}}.contract-detail-page .contract-control-panel{background:#edf2f7;margin:0 22px 22px}.contract-detail-page .proposal-layout{background:#f0f3f7;grid-template-columns:minmax(0,1fr);align-items:start;gap:28px}.contract-control-panel{border:1px solid var(--line);background:#fff;border-radius:6px;min-width:0;padding:22px}.contract-control-panel h3{margin:0 0 8px;font-size:20px}.contract-control-panel>p:not(.eyebrow):not(.preview-note){color:var(--muted);font-size:13px;line-height:1.5}.contract-control-summary,.contract-control-tax{gap:12px;margin:20px 0;display:grid}.contract-control-summary{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:14px 0}.contract-control-summary div{gap:3px;display:grid}.contract-control-summary dt,.contract-control-tax dt{color:var(--muted);font-size:11px;font-weight:700}.contract-control-summary dd,.contract-control-tax dd{color:var(--ink);margin:0;font-size:13px;font-weight:700}.contract-control-tax{grid-template-columns:minmax(0,1fr) max-content;gap:8px 16px}.contract-control-tax dd{text-align:right;font-variant-numeric:tabular-nums}.contract-detail-page .proposal-actions>.button-secondary{box-sizing:border-box;justify-content:center;align-items:center;min-height:36px;display:inline-flex}.contract-document .contract-document-adjustments{margin-bottom:0}.contract-document .signed-contract-record,.contract-document .contract-file-list{margin-top:18px}.contract-builder-document{border:1px solid var(--line);background:#edf2f7;border-radius:8px;min-width:0;padding:0;overflow:hidden;box-shadow:0 6px 24px #182f4910}.contract-builder-preview-heading{border-bottom:1px solid var(--line);background:#fff;justify-content:space-between;align-items:flex-start;gap:18px;padding:18px 22px;display:flex}.contract-builder-preview-heading h3{color:var(--ink);margin:4px 0 0;font-size:20px}.contract-builder-preview-heading>span{color:var(--muted);white-space:nowrap;font-size:12px;font-weight:700}.contract-builder-preview-frame{background:#edf2f7;border:0;width:100%;min-height:1280px;display:block}.contract-builder-document .signed-contract-record,.contract-builder-document .contract-file-list{margin:18px 22px}.contract-document>.proposal-document-scope,.contract-document>.proposal-tax-summary,.contract-document>.proposal-document-total,.contract-document>.preview-note,.contract-document>.signed-contract-record,.contract-document>.contract-file-list{margin-left:22px;margin-right:22px}.contract-document>.proposal-document-total{margin-left:0;margin-right:0;padding-left:22px;padding-right:22px}.proposal-actions .inline-editor-drawer>form{display:block}.proposal-actions .inline-editor-drawer>form select{box-sizing:border-box;border:1px solid var(--line);width:100%;min-height:40px;color:var(--ink);font:inherit;background:#fff;border-radius:4px;margin-top:6px;padding:9px 10px;display:block}.proposal-actions .inline-editor-drawer>form .form-help{width:auto;margin:10px 0 16px;line-height:1.45;display:block}.contract-document>.proposal-tax-summary{padding-right:0}.contract-document .proposal-document-scope h4{font-size:20px}.contract-detail-page .proposal-layout,.contract-detail-page .contract-document{background:#fff}.contract-detail-page .contract-control-panel{background:#edf2f7}@media (max-width:900px){.proposal-detail-page .proposal-layout,.contract-detail-page .proposal-layout{grid-template-columns:1fr}.proposal-preview.proposal-document{padding:0}.proposal-document-page{padding:22px}}@media (max-width:480px){.proposal-document-page{min-height:0;padding:20px}.proposal-document-meta{grid-template-columns:1fr}.proposal-document .proposal-tax-summary{grid-template-columns:minmax(0,1fr) 110px;padding-right:20px}.proposal-document .proposal-document-total{flex-wrap:wrap}.proposal-document h3{font-size:23px}.proposal-document-signature-row{grid-template-columns:74px minmax(0,1fr);gap:9px}}.gst-settings-panel{grid-template-columns:1fr 1fr;gap:32px;max-width:1100px;margin:24px auto;padding:24px;display:grid}.gst-settings-panel form,.gst-settings-panel aside{border:1px solid var(--line);background:#fff;border-radius:8px;padding:24px}.gst-settings-panel label{margin:20px 0;font-weight:600;display:block}.gst-settings-panel input,.gst-settings-panel select{box-sizing:border-box;border:1px solid var(--line);border-radius:4px;width:100%;margin-top:8px;padding:10px;display:block}.gst-settings-panel p,.gst-settings-panel dd{line-height:1.6}.gst-settings-panel dt{margin-top:18px;font-weight:600}.gst-settings-panel dd{margin:6px 0}.gst-settings-panel .success{grid-column:1/-1}@media (max-width:760px){.gst-settings-panel{grid-template-columns:1fr;padding:16px}}.gst-settings-panel .gst-save-button{background:var(--blue);color:#fff;min-height:38px;font:inherit;cursor:pointer;border:0;border-radius:4px;padding:10px 16px;font-weight:700}.gst-settings-panel .gst-save-button:hover:not(:disabled){filter:brightness(.94)}.gst-settings-panel .gst-save-button:focus-visible{outline:2px solid var(--blue);outline-offset:3px}.gst-settings-panel .gst-save-button:disabled{opacity:.6;cursor:wait}.change-order-dialog{box-sizing:border-box;border:1px solid var(--line);width:min(700px,100vw - 32px);max-height:calc(100dvh - 48px);color:var(--ink);background:#fff;border-radius:10px;padding:24px;overflow-y:auto;box-shadow:0 20px 70px #10234240}.change-order-dialog::backdrop{background:#10234280}.change-order-dialog>header{justify-content:space-between;align-items:center;gap:16px;margin-bottom:20px;display:flex}.change-order-dialog h2{margin:0;font-size:22px}.change-order-dialog>header button{cursor:pointer;background:0 0;border:0;font-size:28px}.change-order-dialog form{gap:16px;display:grid}.change-order-dialog label{gap:6px;font-size:13px;font-weight:600;display:grid}.change-order-dialog input,.change-order-dialog select,.change-order-dialog textarea{box-sizing:border-box;border:1px solid var(--line);width:100%;min-width:0;font:inherit;border-radius:4px;padding:10px}.change-order-dialog textarea{resize:vertical;min-height:90px}.change-order-dialog .form-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.change-order-dialog .form-actions{align-items:center;gap:16px;display:flex}.change-order-dialog .form-actions button{background:var(--blue);color:#fff;cursor:pointer;border:0;border-radius:4px;padding:10px 16px;font-weight:700}.invoice-popup-summary{border:1px solid var(--line);background:var(--wash);border-radius:5px;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;padding:12px;display:grid}.invoice-popup-summary span{color:var(--muted);font-size:11px;font-weight:700}.invoice-popup-summary strong{color:var(--ink);margin-top:4px;font-size:14px;display:block}.invoice-popup-help{color:var(--muted);margin:0;font-size:12px;line-height:1.45}@media (max-width:520px){.invoice-popup-summary,.change-order-dialog .form-row{grid-template-columns:1fr}}.change-order-list>.change-order-filter{flex-wrap:wrap;justify-content:flex-start;align-items:center;gap:10px;width:100%;display:flex}.change-order-filter .button-link{white-space:nowrap;margin:0}.change-order-list .change-order-filter a.button-link{background:var(--blue);color:#fff;border-radius:4px;justify-content:center;align-items:center;padding:9px 14px;font-weight:700;text-decoration:none;display:inline-flex}.change-order-list .change-order-filter a.button-link:hover{color:#fff}.change-order-row-actions{flex-wrap:wrap;align-items:center;gap:7px;display:flex}.change-order-row-actions>form{margin:0}.change-order-row-actions>form button,.change-order-open{box-sizing:border-box;white-space:nowrap;justify-content:center;align-items:center;height:36px;min-height:36px;display:inline-flex}.change-order-open{border:1px solid var(--line);color:var(--blue);background:#fff;border-radius:4px;padding:0 11px;font-size:13px;font-weight:700;text-decoration:none}.change-order-open:hover{border-color:var(--blue)}.change-order-record-view{gap:16px;display:grid}.change-order-record-meta{border:1px solid var(--line);background:var(--wash);border-radius:5px;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding:12px;display:grid}.change-order-record-meta span,.change-order-record-details dt,.change-order-record-dates dt{color:var(--muted);font-size:12px;font-weight:700}.change-order-record-meta strong{color:var(--ink);margin-top:5px;display:block}.change-order-record-details,.change-order-record-dates{gap:14px 16px;margin:0;display:grid}.change-order-record-details{grid-template-columns:repeat(2,minmax(0,1fr))}.change-order-record-dates{grid-template-columns:repeat(3,minmax(0,1fr))}.change-order-record-details>div:first-child,.change-order-record-details>div:nth-child(2){grid-column:1/-1}.change-order-record-details dd,.change-order-record-dates dd{color:var(--ink);margin:5px 0 0;line-height:1.45}.change-order-record-invoices{gap:8px;display:grid}.change-order-record-invoices h3{margin:0;font-size:16px}.change-order-record-invoices ul{gap:8px;margin:0;padding:0;list-style:none;display:grid}.change-order-record-invoices li{border:1px solid var(--line);background:var(--wash);border-radius:5px;flex-wrap:wrap;align-items:center;gap:8px 12px;padding:10px 12px;display:flex}.change-order-record-invoices li>a{color:var(--blue);text-decoration:none}.change-order-record-invoices li>a:hover{text-decoration:underline}.change-order-record-invoices li>span:not(.invoice-status){font-variant-numeric:tabular-nums;margin-left:auto}.change-order-record-invoices p{color:var(--muted);margin:0}@media (max-width:520px){.change-order-record-details,.change-order-record-dates{grid-template-columns:1fr}.change-order-record-details>div:first-child,.change-order-record-details>div:nth-child(2){grid-column:auto}}.portal-subheading{color:var(--muted);margin:18px 0 10px;font-size:13px}.daily-log-rows{overflow-x:auto}.daily-log-row{grid-template-columns:130px 105px minmax(190px,1.35fr) minmax(110px,.7fr) minmax(220px,1.7fr) 110px 75px 150px 150px 46px;min-width:1440px}.daily-log-rows-project .daily-log-row{grid-template-columns:130px 110px minmax(180px,1.4fr) 110px 75px 150px 150px 46px;min-width:0}.daily-log-activity{color:var(--muted);gap:3px;font-size:12px;line-height:1.3;display:grid}.daily-log-overlay .trade-overlay-actions{margin-top:4px}.daily-log-overlay .trade-overlay-actions button,.daily-log-overlay .trade-overlay-actions a{box-sizing:border-box;border-radius:4px;justify-content:center;align-items:center;min-height:36px;padding:8px 12px;font-size:13px;font-weight:700;text-decoration:none;display:inline-flex}.daily-log-overlay .trade-overlay-actions button{background:var(--blue);color:#fff;cursor:pointer;border:0}.daily-log-overlay .trade-overlay-actions a{border:1px solid var(--line);color:var(--blue);background:#fff}.daily-log-detail-content p{overflow-wrap:anywhere}.daily-log-summary{text-overflow:clip;white-space:pre-wrap;overflow-wrap:anywhere;min-height:0;padding:8px 0;line-height:1.45;display:block;overflow:visible}@media (max-width:1050px){.daily-log-row{min-width:1220px}}.change-order-page .change-order-list{box-sizing:border-box;width:100%;max-width:none;padding:0 32px 60px}.change-order-page .catalogue-header{max-width:none;padding-left:32px;padding-right:32px}.change-order-page .table-panel{overflow-x:auto}.change-order-page table{width:100%;min-width:1050px}.change-order-page th a{color:var(--ink);text-decoration:none}.change-order-page th a:hover{color:var(--blue)}.change-order-page td:first-child{white-space:nowrap}.change-order-page td:nth-child(2){min-width:200px}.change-order-page .change-order-project-column{width:180px;min-width:180px}.change-order-page .change-order-cost-code-column{white-space:nowrap;width:92px;min-width:92px}.change-order-page .change-order-cost-column{white-space:nowrap;width:126px;min-width:126px}.change-order-page .change-order-total-column{width:160px;min-width:160px}.change-order-page .change-order-status-column{white-space:nowrap;width:96px;min-width:96px}.change-order-page .change-order-date-column{white-space:nowrap;width:148px;min-width:148px}.change-order-page .change-order-actions-column{white-space:nowrap;width:220px;min-width:220px}.change-order-page .change-order-row-actions{white-space:nowrap;flex-wrap:nowrap;min-width:max-content}@media (max-width:600px){.change-order-page .change-order-list{padding-left:16px;padding-right:16px}}.budget-table .budget-client-pricing{margin-top:8px;font-size:12px}.budget-client-pricing summary{cursor:pointer;color:var(--blue);font-weight:600}.budget-client-pricing dl{border:1px solid var(--line);background:#f4f7fb;border-radius:4px;grid-template-columns:minmax(0,1fr) auto;gap:8px 16px;margin:12px 0;padding:12px;display:grid}.budget-client-pricing dt,.budget-client-pricing dd{margin:0}.budget-client-pricing dd{text-align:right;font-variant-numeric:tabular-nums}.budget-client-pricing p{color:var(--muted);font-size:11px}.change-order-dialog .form-actions>button,.change-order-dialog .form-actions>a.button-secondary{box-sizing:border-box;vertical-align:middle;justify-content:center;align-items:center;height:38px;min-height:38px;margin:0;padding:0 16px;font-size:13px;line-height:1;display:inline-flex}.void-invoice-view dl{grid-template-columns:140px minmax(0,1fr);gap:12px 20px;margin:20px 0;display:grid}.void-invoice-view dt{font-weight:600}.void-invoice-view dd{overflow-wrap:anywhere;margin:0}.void-invoice-view dd small{margin-top:6px;line-height:1.5;display:block}.void-invoice-view li{margin:8px 0}@media (max-width:480px){.void-invoice-view dl{grid-template-columns:1fr;gap:6px}.void-invoice-view dd{margin-bottom:10px}}.invoice-record-view{gap:16px;display:grid}.invoice-record-heading{gap:8px;display:grid}.invoice-record-heading h3{margin:0;font-size:20px}.invoice-record-view dl{grid-template-columns:140px minmax(0,1fr);gap:12px 20px;margin:0;display:grid}.invoice-record-view dt{color:var(--muted);font-weight:600}.invoice-record-view dd{overflow-wrap:anywhere;margin:0}.invoice-record-view dd small{margin-top:6px;line-height:1.5;display:block}.invoice-record-view dd a{color:var(--blue);font-weight:600}.invoice-record-view ul{margin:0;padding-left:20px}.invoice-record-view li{margin:8px 0}.invoice-record-notice{border:1px solid var(--line);background:var(--wash);color:var(--muted);border-radius:5px;margin:0;padding:10px 12px}.invoice-related-change{color:var(--blue);gap:2px;text-decoration:none;display:grid}.invoice-related-change:hover{text-decoration:underline}@media (max-width:480px){.invoice-record-view dl{grid-template-columns:1fr;gap:6px}.invoice-record-view dd{margin-bottom:10px}}.question-card.closed{opacity:1;background:#f8fbf9}.file-preview-content .file-pdf-pages{box-sizing:border-box;gap:18px;width:100%;padding:18px;display:grid}.file-preview-content .file-pdf-page{min-width:0}.file-preview-content .file-pdf-pages img{background:#fff;width:100%;max-width:100%;height:auto;display:block;box-shadow:0 2px 10px #0a182a1f}.file-preview-content .file-docx-preview{box-sizing:border-box;width:min(100%,780px);min-height:100%;color:var(--ink);background:#fff;padding:34px 42px;line-height:1.55;box-shadow:0 2px 10px #0a182a1f}.file-preview-content .file-docx-preview-images{gap:16px;margin:0 0 24px;display:grid}.file-preview-content .file-docx-preview-images img{object-fit:contain;object-position:left center;width:auto;max-width:100%;max-height:120px;display:block}.file-preview-content .file-docx-preview-table{border-collapse:collapse;table-layout:fixed;width:100%;min-width:0;color:var(--ink);margin:24px 0 0;font-size:12px}.file-preview-content .file-docx-preview-table th,.file-preview-content .file-docx-preview-table td{text-align:left;vertical-align:top;overflow-wrap:anywhere;white-space:pre-wrap;border:1px solid #8b929b;min-width:0;padding:8px 7px}.file-preview-content .file-docx-preview-table th{color:var(--ink);background:#e4e7eb;font-weight:700}.file-preview-content .file-docx-preview-table td{height:30px}.file-preview-content .file-docx-preview p{white-space:pre-wrap;margin:0 0 14px}.file-preview-content .file-docx-preview p:last-child{margin-bottom:0}.file-preview-content .file-docx-preview-status{color:var(--muted);text-align:center}.file-preview-modal header .file-pdf-page-status{color:var(--blue);font-variant-numeric:tabular-nums;margin-top:8px;font-size:12px;font-weight:700}.file-preview-modal .file-preview-close{border-radius:5px;flex-basis:42px;width:42px;height:42px;font-size:32px}.proposal-actions{flex-wrap:wrap;align-items:center;gap:12px;padding:18px 22px;display:flex}.proposal-actions>p{flex-basis:100%;margin:4px 0 0}.proposal-actions>.button-secondary{justify-content:center;min-height:36px}.proposal-register-table th a{color:inherit;white-space:nowrap;text-decoration:none}.proposal-register-table th a:hover{color:var(--blue)}.proposal-current-control{align-items:center;gap:8px;padding:0 22px 14px;display:flex}.proposal-current-control form{margin:0}.proposal-current-control button,.proposal-set-current{box-sizing:border-box;background:var(--blue);color:#fff;white-space:nowrap;cursor:pointer;border:0;border-radius:4px;justify-content:center;align-items:center;min-height:36px;margin:0;padding:0 12px;font-size:13px;font-weight:700;line-height:1;display:inline-flex}.proposal-current-badge{box-sizing:border-box;color:#146338;white-space:nowrap;background:#c9f6dd;border-radius:99px;align-items:center;min-height:28px;padding:5px 9px;font-size:11px;font-weight:700;display:inline-flex}.contract-pdf-status{box-sizing:border-box;white-space:nowrap;border-radius:99px;align-items:center;min-height:28px;padding:5px 9px;font-size:11px;font-weight:700;display:inline-flex}.contract-pdf-status.attached{color:#146338;background:#c9f6dd}.contract-pdf-status.missing{color:var(--muted);background:#f0f3f7}.contract-heading-file{font-size:12px;margin:8px 0 0!important}.contract-heading-file .file-preview-trigger.title{color:var(--blue);font-size:12px;font-weight:700;text-decoration:underline}.contract-document-upload .inline-editor>form{border-radius:10px;width:min(620px,100vw - 48px);padding:28px;box-shadow:0 18px 55px #0a182a47}.contract-document-upload .inline-editor>form label{margin-bottom:16px;font-size:13px}.contract-document-upload .inline-editor>form input{box-sizing:border-box;margin-top:8px;padding:11px}.upload-progress{gap:5px;margin:-3px 0 14px;display:grid}.upload-progress progress{appearance:none;background:#e4e9f1;border:0;border-radius:99px;width:100%;height:8px;display:block;overflow:hidden}.upload-progress progress::-webkit-progress-bar{background:#e4e9f1;border-radius:99px}.upload-progress progress::-webkit-progress-value{background:var(--blue);border-radius:99px;transition:width .12s linear}.upload-progress progress::-moz-progress-bar{background:var(--blue);border-radius:99px}.upload-progress span{color:var(--muted);font-size:11px;font-weight:700}.contract-source-file{border-top:0;flex:1 0 100%;margin-top:0;padding:0 0 2px}.contract-source-file>span{color:var(--muted);font-size:12px;font-weight:700}.contract-source-file .file-preview-trigger.title{width:max-content;margin-top:5px;display:block}.contract-document .signed-contract-record{margin-top:8px}.proposal-actions>form{margin:0}.proposal-actions>.proposal-send-requirement{color:var(--muted);margin:0;font-size:11px;font-weight:400}.portal-contract-item>div{flex:1;min-width:0}.portal-contract-file{margin-top:8px}.portal-contract-file .file-preview-trigger.title{color:var(--blue);font-size:12px;font-weight:700;text-decoration:underline}.portal-contract-sign-form{background:#f7fbff;border:1px solid #cfe0ef;border-radius:6px;gap:9px;margin-top:14px;padding:14px;display:grid}.portal-contract-sign-form label{color:var(--ink);gap:5px;font-size:12px;font-weight:700;display:grid}.portal-contract-sign-form input:not([type=hidden]){box-sizing:border-box;border:1px solid var(--line);width:100%;min-height:38px;color:var(--ink);font:inherit;background:#fff;border-radius:4px;padding:8px 10px}.portal-contract-sign-form .signature-pad{margin:0}.portal-contract-sign-form>button{background:var(--blue);color:#fff;cursor:pointer;border:0;border-radius:4px;width:max-content;min-height:36px;padding:8px 13px;font-size:13px;font-weight:700}.portal-milestone-list{border:1px solid var(--line);background:var(--wash);border-radius:6px;margin-top:12px;padding:10px 12px}.portal-milestone-list>strong{color:var(--ink);font-size:12px;display:block}.portal-milestone-list ul{margin:6px 0 0;padding:0;list-style:none}.portal-milestone-list li{border-top:1px solid var(--line);justify-content:space-between;gap:14px;padding:5px 0;font-size:12px;display:flex}.portal-milestone-list li:first-child{border-top:0}.portal-milestone-list li span{color:var(--ink)}.portal-milestone-list li small{text-align:right;white-space:nowrap;margin:0}.portal-milestone-summary{border:1px solid var(--line);background:var(--wash);border-radius:6px;justify-content:space-between;align-items:center;gap:12px;margin-top:12px;padding:12px;display:flex}.portal-milestone-summary>div{min-width:0}.portal-milestone-summary strong,.portal-milestone-summary span{display:block}.portal-milestone-summary strong{color:var(--ink);font-size:13px}.portal-milestone-summary span{color:var(--muted);margin-top:3px;font-size:12px}.portal-milestone-open{border:1px solid var(--blue);min-height:34px;color:var(--blue);font:inherit;cursor:pointer;white-space:nowrap;background:#fff;border-radius:4px;flex:none;padding:8px 11px;font-size:12px;font-weight:700}.portal-milestone-backdrop{z-index:55;background:#0a182a94;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.portal-milestone-modal{background:#fff;border-radius:9px;flex-direction:column;width:min(100%,900px);max-height:calc(100vh - 40px);display:flex;overflow:hidden;box-shadow:0 20px 60px #0a182a4d}.portal-milestone-modal>header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-start;gap:16px;padding:20px 22px;display:flex}.portal-milestone-modal>header span{color:var(--blue);letter-spacing:.09em;margin-bottom:5px;font-size:10px;font-weight:700;display:block}.portal-milestone-modal>header h2{margin:0;font-size:22px}.portal-milestone-modal>header p{color:var(--muted);margin:5px 0 0;font-size:13px}.portal-milestone-close{border:1px solid var(--line);width:34px;height:34px;color:var(--ink);cursor:pointer;background:#fff;border-radius:4px;flex:0 0 34px;place-items:center;font-size:24px;line-height:1;display:grid}.portal-milestone-modal-body{padding:0 22px 22px;overflow:auto}.portal-milestone-table{border-collapse:collapse;width:100%;margin-top:16px;font-size:13px}.portal-milestone-table th{background:var(--blue);color:#fff;text-align:left;padding:10px 12px}.portal-milestone-table td{border-bottom:1px solid var(--line);vertical-align:top;padding:13px 12px}.portal-milestone-table td strong,.portal-milestone-table td small{display:block}.portal-milestone-table td small{color:var(--muted);margin-top:5px}.portal-milestone-table .claim{white-space:nowrap;text-align:right;font-variant-numeric:tabular-nums;font-weight:700}.portal-milestone-table .status{color:var(--blue);white-space:nowrap;background:#edf5ff;border-radius:999px;padding:4px 8px;font-size:12px;display:inline-block}@media (max-width:640px){.portal-milestone-summary{flex-direction:column;align-items:flex-start}.portal-milestone-open{width:100%}.portal-milestone-modal{max-height:calc(100vh - 24px)}.portal-milestone-modal>header{padding:16px}.portal-milestone-modal-body{padding:0 16px 16px;overflow-x:auto}.portal-milestone-table{min-width:620px}}.bid-scope-add .trade-overlay-actions{align-items:center;gap:8px;display:flex}.bid-scope-add .trade-overlay-actions button,.bid-scope-add .trade-overlay-actions a{box-sizing:border-box;border-radius:4px;justify-content:center;align-items:center;min-height:36px;padding:8px 12px;font-size:13px;font-weight:700;text-decoration:none;display:inline-flex}.bid-scope-add .trade-overlay-actions button{background:var(--blue);color:#fff;cursor:pointer;border:0}.bid-scope-add .trade-overlay-actions a{border:1px solid var(--line);color:var(--blue);background:#fff}.bid-scope-line .trade-overlay-actions{align-items:center;gap:8px;display:flex}.bid-scope-line .trade-overlay-actions button{box-sizing:border-box;background:var(--blue);color:#fff;cursor:pointer;border:0;border-radius:4px;justify-content:center;align-items:center;min-height:36px;padding:8px 12px;font-size:13px;font-weight:700;display:inline-flex}.bid-scope-remove{margin-top:8px;padding:0 12px 12px!important;display:flex!important}.bid-scope-remove button{box-sizing:border-box;color:#8f2435;cursor:pointer;background:#fff;border:1px solid #eab0b8;border-radius:4px;justify-content:center;align-items:center;min-height:36px;padding:8px 12px;font-size:13px;font-weight:700;display:inline-flex}.bid-scope-line .trade-overlay-actions button,.bid-scope-remove button,.bid-scope-add .trade-overlay-actions button{white-space:nowrap;width:140px}.bid-scope-line .trade-overlay-actions .bid-scope-line-cancel,.bid-scope-add .trade-overlay-actions a{white-space:nowrap;border:1px solid var(--line);width:96px;color:var(--blue);background:#fff}.bid-response-recorded{font-variant-numeric:tabular-nums;font-weight:700;color:#146338!important}.bid-award-summary{background:#f5fcf7;border:1px solid #b8dfc7;border-radius:7px;max-width:820px;margin-top:20px;padding:16px}.bid-award-summary h4{margin:0 0 14px;font-size:16px}.bid-award-summary dl{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:0;display:grid}.bid-award-summary dl div{background:#fff;border:1px solid #d8ece0;border-radius:5px;padding:10px}.bid-award-summary dt{color:var(--muted);font-size:11px;font-weight:700}.bid-award-summary dd{margin:5px 0 0;font-size:13px;font-weight:700}.bid-award-summary h5{margin:18px 0 8px;font-size:13px}.bid-award-summary>p{color:var(--muted);margin:0;font-size:13px}.bid-award-summary ul{gap:7px;margin:0;padding:0;list-style:none;display:grid}.bid-award-summary li{background:#fff;border:1px solid #d8ece0;border-radius:5px;padding:10px}.bid-award-summary li strong,.bid-award-summary li span{display:block}.bid-award-summary li span{color:var(--muted);margin-top:3px;font-size:12px}.bid-award-summary li p{color:var(--ink);margin:7px 0 0;font-size:13px;line-height:1.4}@media (max-width:560px){.bid-award-summary dl{grid-template-columns:1fr}}.bid-award-open{margin-top:18px}.bid-award-overlay{z-index:50;background:#1020397a;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.bid-award-modal{box-sizing:border-box;background:#fff;border-radius:8px;width:min(100%,920px);max-height:calc(100vh - 48px);padding:20px;overflow-y:auto;box-shadow:0 18px 55px #0a182a47}.bid-award-modal>header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-start;gap:18px;padding-bottom:16px;display:flex}.bid-award-modal h2{margin:0 0 5px;font-size:24px}.bid-award-modal header p:not(.eyebrow){color:var(--muted);margin:0;font-size:13px}.bid-award-modal header>a{border:1px solid var(--line);width:36px;height:36px;color:var(--ink);border-radius:4px;flex:0 0 36px;place-items:center;font-size:26px;line-height:1;text-decoration:none;display:grid}.bid-award-modal .bid-award-summary{max-width:none;margin:18px 0 0}@media (max-width:560px){.bid-award-overlay,.bid-award-modal{padding:16px}}.trade-register-filter{width:100%}.trade-register-filter .trade-add-company{box-sizing:border-box;color:#fff;white-space:nowrap;align-items:center;height:34px;margin:0;padding:0 12px;font-size:13px;display:inline-flex}.trade-register-filter .trade-filter-link{box-sizing:border-box;border:1px solid var(--line);min-height:36px;color:var(--blue);white-space:nowrap;background:#fff;border-radius:4px;justify-content:center;align-items:center;margin:0;padding:8px 12px;font-size:13px;font-weight:700;line-height:1;text-decoration:none;display:inline-flex}.trade-register-filter .trade-filter-link:hover{border-color:var(--blue);background:var(--blue-soft,#eef3ff)}.trade-filter-actions{align-items:center;gap:14px;margin-left:auto;display:flex}.trade-filter-actions .trade-add-company{flex:none}.trade-company-overlay .trade-overlay-card{width:min(100%,680px);max-height:calc(100vh - 48px);overflow-y:auto}.trade-company-overlay .trade-overlay-card input,.trade-company-overlay .trade-overlay-card select{box-sizing:border-box;border:1px solid var(--line);width:100%;min-height:40px;color:var(--ink);font:inherit;background:#fff;border-radius:4px;padding:9px 10px}.trade-company-overlay .trade-contact-fields{gap:12px}.trade-company-overlay h3{margin:0 0 5px;font-size:16px}.trade-company-overlay .form-help{margin:0}@media (max-width:560px){.trade-company-overlay .trade-contact-fields{grid-template-columns:1fr}}.trade-company-overlay .trade-overlay-actions{gap:8px;margin-top:4px}.trade-company-overlay .trade-overlay-actions button,.trade-company-overlay .trade-overlay-actions a{box-sizing:border-box;border-radius:4px;justify-content:center;align-items:center;min-height:36px;padding:8px 12px;font-size:13px;font-weight:700;text-decoration:none;display:inline-flex}.trade-company-overlay .trade-overlay-actions button{background:var(--blue);color:#fff;cursor:pointer;border:0}.trade-company-overlay .trade-overlay-actions a{border:1px solid var(--line);color:var(--blue);background:#fff}.trade-company-overlay{justify-content:flex-end;align-items:stretch;padding:0;display:flex}.trade-company-overlay .trade-overlay-card{z-index:1;border-top:0;border-bottom:0;border-right:0;border-radius:0;width:min(100%,680px);height:100dvh;max-height:none;padding:28px;overflow:hidden auto;box-shadow:-18px 0 55px #0a182a47}@media (max-width:560px){.trade-company-overlay .trade-overlay-card{width:100%;padding:22px}}.schedule-register,.schedule-views,.schedule-page .catalogue-header{box-sizing:border-box;max-width:none;padding-left:20px;padding-right:20px}@media (max-width:760px){.schedule-page .catalogue-header,.schedule-register,.schedule-views{padding-left:22px;padding-right:22px}}.schedule-register .table-panel{overflow-x:auto}.schedule-register table{min-width:1130px}.schedule-register th a{color:inherit;white-space:nowrap;text-decoration:none}.schedule-register th a:hover{color:var(--blue)}.schedule-register .schedule-category-row th{border-top:2px solid var(--line);color:var(--ink);text-align:left;background:#f5f8fc;padding:10px 13px;font-size:13px}.schedule-register .schedule-category-row strong{font-size:13px}.schedule-register .schedule-category-row small{color:var(--muted);margin-left:10px;font-size:11px;font-weight:400}.schedule-register .schedule-category-toggle{width:20px;height:22px;color:var(--blue);cursor:pointer;vertical-align:middle;background:0 0;border:0;place-items:center;margin:0 5px 0 0;padding:0;font-size:16px;font-weight:700;line-height:1;display:inline-grid}.schedule-category-toggle-all{white-space:nowrap;flex:none}.schedule-actions-menu{flex:none;position:relative}.schedule-actions-menu-trigger{white-space:nowrap;gap:7px}.schedule-actions-menu-trigger span{font-size:11px}.schedule-actions-menu-panel{z-index:25;border:1px solid var(--line);background:#fff;border-radius:5px;gap:2px;min-width:230px;padding:6px;display:grid;position:absolute;top:calc(100% + 6px);right:0;box-shadow:0 10px 26px #1020392e}.schedule-actions-menu-panel a,.schedule-actions-menu-panel button{box-sizing:border-box;width:100%;min-height:36px;color:var(--blue);font:inherit;text-align:left;white-space:nowrap;cursor:pointer;background:#fff;border:1px solid #0000;border-radius:4px;justify-content:flex-start;align-items:center;margin:0;padding:8px 10px;font-size:13px;font-weight:700;line-height:1.2;text-decoration:none;display:flex}.schedule-actions-menu-panel a:hover,.schedule-actions-menu-panel button:hover{border-color:var(--line);background:#f5f8fc}.schedule-actions-menu-panel form{margin:0}.schedule-actions-menu-panel>button.schedule-action-danger{color:#8f2435;border-color:#0000}.schedule-actions-menu-panel>button.schedule-action-danger:hover{background:#fff1f3;border-color:#e7a9b5}.schedule-actions-menu-panel form button.schedule-action-danger{color:#8f2435;border-color:#0000}.schedule-actions-menu-panel form button.schedule-action-danger:hover{background:#fff1f3;border-color:#e7a9b5}.schedule-actions-menu-panel .schedule-category-toggle-all{min-height:36px}.schedule-delete-overlay{z-index:40}.schedule-delete-overlay .trade-overlay-card{width:min(100%,520px)}.schedule-delete-overlay .trade-overlay-backdrop{cursor:default;border:0;margin:0;padding:0}.schedule-delete-overlay .trade-overlay-close{font:inherit;cursor:pointer;background:#fff;padding:0}.schedule-delete-summary{border:1px solid var(--line);background:var(--wash);border-radius:6px;gap:5px;margin-top:20px;padding:14px;display:grid}.schedule-delete-summary span{color:var(--muted);letter-spacing:.04em;text-transform:uppercase;font-size:11px;font-weight:700}.schedule-delete-summary strong{font-size:15px}.schedule-delete-warning{color:#8f2435;background:#fff1f3;border:1px solid #e7a9b5;border-radius:6px;margin:14px 0 0;padding:11px 12px;font-size:13px;line-height:1.45}.schedule-delete-overlay .trade-overlay-card form{margin-top:20px}.schedule-delete-overlay .trade-overlay-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;margin-top:0}.schedule-delete-overlay .schedule-delete-submit{color:#fff;cursor:pointer;background:#8f2435;border:1px solid #8f2435;border-radius:4px}.schedule-delete-overlay .schedule-delete-submit:hover{background:#751d2d}.schedule-delete-overlay .schedule-delete-submit:disabled{opacity:.65;cursor:wait}.schedule-import-page .catalogue-header{padding-bottom:22px}.schedule-import-panel{box-sizing:border-box;border:1px solid var(--line);background:#fff;border-radius:8px;max-width:none;margin:30px 20px 60px;padding:24px}.schedule-import-heading{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-start;gap:20px;padding-bottom:20px;display:flex}.schedule-import-heading h2{margin:0;font-size:22px}.schedule-import-heading p{color:var(--muted);margin:6px 0 0;font-size:13px}.schedule-import-links{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.schedule-import-workflow{max-width:920px;margin-top:24px}.schedule-import-file-form{border:1px solid var(--line);background:#f8fafc;border-radius:6px;gap:12px;padding:18px;display:grid}.schedule-import-file-form label,.schedule-import-confirm label{color:var(--ink);gap:6px;font-size:13px;font-weight:700;display:grid}.schedule-import-file-form input[type=file]{box-sizing:border-box;border:1px solid var(--line);width:100%;min-height:40px;color:var(--ink);font:inherit;background:#fff;border-radius:4px;padding:8px 10px}.schedule-import-file-form input[type=file]::file-selector-button{box-sizing:border-box;border:1px solid var(--line);min-height:36px;color:var(--blue);font:inherit;cursor:pointer;background:#fff;border-radius:4px;margin:0 10px 0 0;padding:8px 12px;font-size:13px;font-weight:700}.schedule-import-file-form input[type=file]::file-selector-button:hover{border-color:var(--blue);background:#f5f8fc}.schedule-import-file-form button,.schedule-import-action-row button{background:var(--blue);color:#fff;cursor:pointer;border:0;border-radius:4px;width:max-content;min-height:36px;padding:8px 12px;font-size:13px;font-weight:700}.schedule-import-file-form button:disabled,.schedule-import-action-row button:disabled{opacity:.55;cursor:not-allowed}.schedule-import-file-form .form-help{color:var(--muted);margin:0;font-size:12px;line-height:1.4}.schedule-import-message{color:#8f2435;background:#fff1f3;border:1px solid #e7a9b5;border-radius:5px;margin:14px 0 0;padding:10px 12px;font-size:13px;font-weight:700}.schedule-import-preview{border:1px solid var(--line);background:#fff;border-radius:6px;margin-top:18px;padding:18px}.schedule-import-preview.is-valid{background:#f8fcf9;border-color:#b8dfc7}.schedule-import-preview.has-errors{background:#fffafb;border-color:#e7a9b5}.schedule-import-preview header{justify-content:space-between;align-items:flex-start;gap:14px;display:flex}.schedule-import-preview h3{margin:0;font-size:17px}.schedule-import-preview header p{color:var(--muted);margin:5px 0 0;font-size:12px}.schedule-import-valid{color:#146338;background:#c9f6dd;border-radius:99px;align-items:center;min-height:26px;padding:4px 9px;font-size:11px;font-weight:700;display:inline-flex}.schedule-import-errors{color:#8f2435;background:#fff1f3;border:1px solid #e7a9b5;border-radius:5px;gap:6px;margin:16px 0 0;padding:12px 12px 12px 28px;font-size:12px;line-height:1.4;display:grid}.schedule-import-warnings{color:#805f00;background:#fff9e7;border:1px solid #efd28a;border-radius:5px;gap:6px;margin:16px 0 0;padding:12px 12px 12px 28px;font-size:12px;line-height:1.4;display:grid}.schedule-import-preview-table{margin-top:16px;overflow-x:auto}.schedule-import-preview-table table{border-collapse:collapse;width:100%;min-width:560px;font-size:12px}.schedule-import-preview-table th,.schedule-import-preview-table td{border:1px solid var(--line);text-align:left;padding:8px 9px}.schedule-import-preview-table th{background:var(--wash);color:var(--muted);font-size:11px}.schedule-import-preview-table small{color:var(--muted);margin-top:8px;font-size:11px;display:block}.schedule-import-confirm{border-top:1px solid var(--line);grid-template-columns:minmax(220px,420px);gap:8px;margin-top:18px;padding-top:16px;display:grid}.schedule-import-confirm input{box-sizing:border-box;border:1px solid var(--line);width:100%;min-height:40px;color:var(--ink);font:inherit;background:#fff;border-radius:4px;padding:9px 10px}.schedule-import-action-row{flex-wrap:wrap;align-items:center;gap:8px;margin-top:12px;display:flex}.schedule-import-action-row .button-secondary{cursor:pointer;min-height:36px}@media (max-width:760px){.schedule-import-panel{margin-left:22px;margin-right:22px;padding:20px}.schedule-import-heading{gap:14px;display:grid}.schedule-import-links{justify-content:flex-start}}@page{size:landscape;margin:12mm}@media print{.topbar,.app-navigation,.app-shell-sidebar,.app-navigation-toggle,.app-navigation-scrim,.help-preferences,#codex-browser-sidebar-comments-root,.schedule-views,.project-context,.schedule-filter,.schedule-register-heading .schedule-register-actions,.schedule-actions-menu,.schedule-new-item,.schedule-summary,.schedule-gantt-prompt,.gantt-timeline-controls,.catalogue-header p:not(.eyebrow),.schedule-page>.catalogue-header{display:none!important}html,body{height:auto!important;min-height:0!important}body{background:#fff;margin:0!important;overflow:visible!important}*,:before,:after{box-shadow:none!important}.app-shell,.app-main,main{height:auto!important;min-height:0!important;overflow:visible!important}.app-main{margin-left:0!important}.schedule-page{page:auto!important;break-before:auto!important;break-after:auto!important;page-break-before:auto!important;page-break-after:auto!important;width:100%!important;height:auto!important;min-height:0!important;overflow:visible!important}.schedule-page,.schedule-register,.schedule-panel,.schedule-gantt-page .schedule-panel{max-width:none!important;margin:0!important;padding:0!important}.schedule-register,.schedule-register .table-panel{width:100%!important}.schedule-register .table-panel,.gantt-scroll{overflow:visible!important}.schedule-register table{table-layout:auto;width:100%!important;min-width:0!important}.schedule-register th,.schedule-register td{font-size:10px;padding:6px 7px!important}.schedule-register .schedule-category-row th{font-size:11px}.schedule-register .schedule-category-row small,.schedule-register .schedule-updated{font-size:9px}.schedule-register td a{color:inherit;text-decoration:none}.gantt-frame{grid-template-columns:250px minmax(0,1fr)}.schedule-gantt-page .catalogue-header{padding-top:16px!important;padding-bottom:12px!important}.schedule-gantt-page .gantt-frame{grid-template-columns:250px minmax(0,1fr)!important;width:100%!important;display:grid!important;overflow:visible!important}.schedule-gantt-page .gantt-labels,.schedule-gantt-page .gantt-scroll{width:auto!important;min-width:0!important;overflow:visible!important}.gantt-chart,.gantt-scroll .gantt-chart{width:100%!important;min-width:0!important;display:block!important;overflow:visible!important}.gantt-date-axis,.gantt-day-grid{grid-template-columns:repeat(var(--gantt-columns,var(--gantt-days)),minmax(0,1fr))!important;width:100%!important;min-width:0!important;display:grid!important}.schedule-gantt-page .gantt-reorder-handle,.schedule-gantt-page .gantt-edit,.schedule-gantt-page .gantt-label form{display:none!important}.schedule-gantt-page .gantt-label>div{overflow:visible!important}.schedule-gantt-page .gantt-label strong,.schedule-gantt-page .gantt-label small{text-overflow:clip!important;white-space:normal!important;overflow:visible!important}.schedule-gantt-page .gantt-bar,.schedule-gantt-page .gantt-group-bar,.schedule-gantt-page .gantt-date-axis span.weekend{-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important}.schedule-gantt-page .gantt-bar{opacity:1!important}.schedule-gantt-page .gantt-today-marker{z-index:8!important;-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important;background:#d9485f!important}.schedule-gantt-page .gantt-today-marker span{color:#fff!important;-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important;background:#d9485f!important;display:block!important}.gantt-date-axis span b,.gantt-date-axis span small{font-size:8px}}.schedule-register .schedule-activity-cell{padding-left:18px}.schedule-register .schedule-reorderable{cursor:grab}.schedule-register .schedule-reorderable:active{cursor:grabbing}.schedule-register .schedule-reorderable.reordering{opacity:.55}.schedule-register .schedule-drag-handle,.schedule-register .schedule-child-indent{width:17px;color:var(--muted);font-weight:700;display:inline-block}.schedule-updated{color:var(--muted);font-variant-numeric:tabular-nums;white-space:nowrap;font-size:12px}.schedule-filter>select[name=jobId],.schedule-gantt-filter-form>select[name=jobId]{flex:0 390px;width:390px;min-width:280px;max-width:100%}.schedule-filter>select[name=planId],.schedule-gantt-filter-form>select[name=planId]{flex:0 230px;width:230px;min-width:190px;max-width:100%}.schedule-filter>select[name=status]{flex:0 150px;width:150px;min-width:150px}.schedule-filter{align-items:center;gap:8px;display:flex}.schedule-filter>input[type=hidden],.schedule-gantt-filter-form>input[type=hidden]{display:none}.schedule-filter-actions{align-items:center;gap:8px;margin-left:auto;display:flex}.schedule-filter-apply-actions{align-items:center;gap:8px;display:flex}.schedule-list-filter-form{flex-wrap:wrap;flex:auto;align-items:center;gap:8px;min-width:0;display:flex}.schedule-gantt-filter-form{flex:auto;align-items:center;gap:8px;min-width:0;display:flex}@media (max-width:760px){.schedule-filter{flex-wrap:wrap;display:flex}.schedule-filter>select[name=jobId],.schedule-filter>select[name=planId],.schedule-filter>input[name=query],.schedule-filter>select[name=status]{flex:100%;width:100%;min-width:0}.schedule-gantt-filter-form{flex-wrap:wrap;flex:100%}.schedule-list-filter-form{flex:100%}.schedule-gantt-filter-form>select[name=jobId],.schedule-gantt-filter-form>select[name=planId]{flex:100%;width:100%;min-width:0}.schedule-filter-actions{flex-wrap:wrap;margin-left:0}.schedule-actions-menu-panel{left:0;right:auto}.schedule-gantt-filter{grid-template-columns:auto minmax(0,1fr);align-items:center;gap:8px;display:grid}.schedule-gantt-filter-form{display:contents}.schedule-gantt-filter-form>select[name=jobId],.schedule-gantt-filter-form>select[name=planId]{grid-column:1/-1}.schedule-gantt-filter-form>button{white-space:nowrap;grid-column:1;min-width:0;padding-left:9px;padding-right:9px}.schedule-gantt-filter .schedule-filter-actions{flex-wrap:nowrap;grid-column:2;align-items:center;gap:6px;min-width:0;margin-left:0;display:flex}.schedule-gantt-filter .schedule-filter-actions>*{white-space:nowrap;min-width:0;padding-left:8px;padding-right:8px}.schedule-gantt-page .gantt-frame{--gantt-label-width:clamp(220px,55vw,390px);grid-template-columns:var(--gantt-label-width) minmax(0,1fr)}.schedule-gantt-page .gantt-scroll{-webkit-overflow-scrolling:touch;min-width:0;overflow-x:auto}.schedule-gantt-page .gantt-scroll .gantt-chart{display:block}}@media (min-width:761px) and (max-width:1100px){.schedule-gantt-filter{flex-wrap:nowrap}.schedule-gantt-filter-form{flex:auto;grid-template-columns:minmax(0,1fr) minmax(145px,.58fr) auto;gap:8px;min-width:0;display:grid}.schedule-gantt-filter-form>select[name=jobId],.schedule-gantt-filter-form>select[name=planId]{width:100%;min-width:0;max-width:none}.schedule-gantt-filter-form>button{white-space:nowrap;min-width:0;padding-left:10px;padding-right:10px}.schedule-gantt-filter .schedule-filter-actions{flex:none;gap:6px;margin-left:0}.schedule-gantt-filter .schedule-filter-actions>*{white-space:nowrap}.schedule-gantt-filter .schedule-new-item{padding-left:10px;padding-right:10px}.schedule-gantt-page .gantt-timeline-controls{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);grid-template-areas:"previous title next""zoom zoom zoom""outline today.";gap:8px 10px}.schedule-gantt-page .gantt-timeline-controls>a:first-child{grid-area:previous;justify-self:start}.schedule-gantt-page .gantt-timeline-controls>strong{text-align:center;grid-area:title;min-width:0}.schedule-gantt-page .gantt-timeline-controls>.gantt-zoom{flex-wrap:wrap;grid-area:zoom;justify-self:center}.schedule-gantt-page .gantt-timeline-controls>.gantt-outline-toggle{grid-area:outline;justify-self:start}.schedule-gantt-page .gantt-timeline-controls>.gantt-today-link{grid-area:today}.schedule-gantt-page .gantt-timeline-controls>a:last-child{grid-area:next}}@media (max-width:760px){.schedule-gantt-page .gantt-timeline-controls{grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-template-areas:"title title""previous next""zoom zoom""outline today";gap:8px}.schedule-gantt-page .gantt-timeline-controls>a:first-child{grid-area:previous;justify-self:start}.schedule-gantt-page .gantt-timeline-controls>strong{text-align:center;text-overflow:ellipsis;grid-area:title;min-width:0;overflow:hidden}.schedule-gantt-page .gantt-timeline-controls>.gantt-zoom{flex-wrap:wrap;grid-area:zoom;justify-self:center}.schedule-gantt-page .gantt-timeline-controls>.gantt-outline-toggle{grid-area:outline;justify-self:start}.schedule-gantt-page .gantt-timeline-controls>.gantt-today-link{grid-area:today}.schedule-gantt-page .gantt-timeline-controls>a:last-child{grid-area:next}}.schedule-plan-overlay .trade-overlay-card{width:min(100%,560px);max-height:calc(100vh - 48px);overflow-y:auto}.schedule-plan-overlay .trade-overlay-card form{gap:14px;margin-top:20px;display:grid}.schedule-plan-overlay .trade-overlay-card label{color:var(--ink);gap:6px;font-size:12px;font-weight:700;display:grid}.schedule-plan-overlay .trade-overlay-card input{box-sizing:border-box;border:1px solid var(--line);width:100%;min-height:40px;color:var(--ink);font:inherit;background:#fff;border-radius:4px;padding:9px 10px;display:block}.schedule-plan-overlay .project-field{border:1px solid var(--line);background:var(--wash);color:var(--ink);border-radius:5px;margin:0;padding:10px 12px;font-size:13px;font-weight:700;line-height:1.4}.schedule-plan-overlay .form-help{color:#765600;margin:0;font-size:12px;line-height:1.45}.schedule-plan-overlay .trade-overlay-actions{flex-wrap:wrap;align-items:center;gap:8px;margin-top:4px;display:flex}.schedule-plan-overlay .trade-overlay-actions button,.schedule-plan-overlay .trade-overlay-actions a{box-sizing:border-box;border-radius:4px;justify-content:center;align-items:center;min-height:36px;padding:8px 12px;font-size:13px;font-weight:700;line-height:1;text-decoration:none;display:inline-flex}.schedule-plan-overlay .trade-overlay-actions button{background:var(--blue);color:#fff;cursor:pointer;border:0}.schedule-plan-overlay .trade-overlay-actions a{border:1px solid var(--line);color:var(--blue);background:#fff}@media (max-width:560px){.schedule-plan-overlay{padding:16px}.schedule-plan-overlay .trade-overlay-card{width:100%;padding:20px}}.gantt-project-overlay .trade-overlay-card{width:min(100%,560px)}.gantt-project-overlay .trade-overlay-actions{gap:8px;margin-top:4px}.gantt-project-overlay .trade-overlay-actions button,.gantt-project-overlay .trade-overlay-actions a{box-sizing:border-box;border-radius:4px;justify-content:center;align-items:center;min-height:36px;padding:8px 12px;font-size:13px;font-weight:700;text-decoration:none;display:inline-flex}.gantt-project-overlay .trade-overlay-actions button{background:var(--blue);color:#fff;cursor:pointer;border:0}.gantt-project-overlay .trade-overlay-actions a{border:1px solid var(--line);color:var(--blue);background:#fff}.schedule-gantt-page .catalogue-header,.schedule-gantt-page .schedule-panel,.schedule-calendar-page .catalogue-header,.schedule-lookahead-page .catalogue-header{box-sizing:border-box;max-width:none;padding-left:20px;padding-right:20px}:is(.app-shell:has(.schedule-gantt-page) .app-navigation-project,.app-shell:has(.schedule-calendar-page) .app-navigation-project,.app-shell:has(.schedule-lookahead-page) .app-navigation-project){margin-top:13px}:is(.app-shell:has(.schedule-gantt-page) .app-navigation-project select,.app-shell:has(.schedule-calendar-page) .app-navigation-project select,.app-shell:has(.schedule-lookahead-page) .app-navigation-project select){height:36px;min-height:36px;padding:8px 10px}.schedule-register:has(.schedule-views){margin-top:32px}.schedule-register .schedule-views,.schedule-calendar-register .schedule-views,.schedule-lookahead-register .schedule-views{justify-content:flex-start;max-width:none;margin:0 0 16px;padding:0;position:static}.schedule-all-projects{background:#fff;border-color:var(--blue)!important;color:var(--blue)!important}.schedule-lookahead-summary{color:var(--muted);margin:0 0 16px;font-size:13px}.schedule-lookahead-summary strong{color:var(--ink)}.schedule-date-error{color:#8f2435;background:#fff1f3;border:1px solid #e7a9b5;border-radius:5px;grid-column:1/-1;margin:0;padding:9px 10px;font-size:13px;font-weight:700}.gantt-axis-label small{color:var(--muted);margin-left:8px;font-size:11px;font-weight:400}.lookahead-grid .lookahead-item{color:var(--ink);background:#eaf2ff;border-radius:4px;margin-top:7px;padding:8px;font-size:12px;text-decoration:none;display:block}.lookahead-grid .lookahead-item:hover{background:#dceaff}.gantt-reorderable{cursor:grab}.gantt-reorderable:active{cursor:grabbing}.gantt-reorderable.reordering{opacity:.55}.gantt-reorder-handle{color:#8191a7;font-size:16px;line-height:1}.gantt-group-label{background:#f7f9fc;border-bottom-color:#d9e2ef}.gantt-group-label>div{flex-direction:column;gap:2px;display:flex}.gantt-group-label strong{color:var(--ink)}.gantt-group-toggle{width:20px;height:24px;color:var(--blue);cursor:pointer;background:0 0;border:0;flex:0 0 20px;padding:0;font-size:16px;font-weight:700;line-height:1}.gantt-group-toggle-spacer{flex:0 0 20px;width:20px;height:24px}.gantt-child-label{padding-left:30px}.gantt-group-row{background:#f7f9fc}.gantt-group-bar{z-index:3;white-space:nowrap;text-overflow:ellipsis;color:#294b79;background:#dce7f6;border:1px solid #8ea6c8;border-radius:3px;min-height:24px;padding:5px 8px;font-size:11px;font-weight:700;position:absolute;top:20px;overflow:hidden}.gantt-phase-label{background:#f2f6fb}.gantt-phase-row{background:#edf4fc}.gantt-phase-bar{color:#183b61;background:#b9d2ee;border-color:#466e9d}.gantt-milestone-label{background:#fffaf0}.gantt-milestone-label .gantt-milestone-diamond{background:#c47c00;border-radius:2px;flex:0 0 11px;width:11px;height:11px;transform:rotate(45deg)}.gantt-milestone-label small{color:#8a5a00}.gantt-milestone-row{background:#fffdf8}.gantt-milestone-marker{z-index:5;background:#c47c00;border:2px solid #fff;border-radius:2px;width:14px;height:14px;position:absolute;top:26px;transform:translate(-7px)rotate(45deg);box-shadow:0 1px 3px #0000003d}.gantt-milestone-marker.ready{background:#c47c00}.gantt-milestone-marker.achieved{background:#24945a}.gantt-milestone-marker.invoiced{background:#2f68bd}.gantt-milestone-marker.paid{background:#17633d}.gantt-milestone-marker span{width:100%;height:100%;display:block}.gantt-outline-toggle{border:1px solid var(--line);background:#fff;border-radius:4px;gap:3px;padding:2px;display:flex}.gantt-outline-toggle a{border-radius:3px;padding:4px 7px;font-size:11px!important}.gantt-outline-toggle a.active{background:var(--blue);color:#fff}.calendar-task{align-items:center;gap:4px;margin-top:4px;display:flex}.schedule-calendar .calendar-task a{flex:1;min-width:0;margin-top:0}.calendar-complete{border:1px solid var(--line);min-height:24px;color:var(--blue);cursor:pointer;background:#fff;border-radius:3px;flex:none;margin:0;padding:3px 5px;font-size:10px;font-weight:700}.calendar-task.complete a{opacity:.58;text-decoration:line-through}.schedule-calendar section.today{background:#e9edf3;box-shadow:inset 0 0 0 2px #a9b4c4}@media (max-width:760px){.schedule-gantt-page .catalogue-header,.schedule-gantt-page .schedule-panel,.schedule-calendar-page .catalogue-header,.schedule-lookahead-page .catalogue-header{padding-left:22px;padding-right:22px}}.schedule-new-overlay .trade-overlay-actions{gap:8px;margin-top:4px}.schedule-new-overlay .trade-overlay-actions button,.schedule-new-overlay .trade-overlay-actions a{box-sizing:border-box;border-radius:4px;justify-content:center;align-items:center;min-height:36px;padding:8px 12px;font-size:13px;font-weight:700;text-decoration:none;display:inline-flex}.schedule-new-overlay .trade-overlay-actions button{background:var(--blue);color:#fff;cursor:pointer;border:0}.schedule-new-overlay .trade-overlay-actions a{border:1px solid var(--line);color:var(--blue);background:#fff}.trade-assign-overlay .trade-overlay-actions{gap:8px;margin-top:4px}.trade-assign-overlay .trade-overlay-actions button,.trade-assign-overlay .trade-overlay-actions a{box-sizing:border-box;border-radius:4px;justify-content:center;align-items:center;min-height:36px;padding:8px 12px;font-size:13px;font-weight:700;text-decoration:none;display:inline-flex}.trade-assign-overlay .trade-overlay-actions button{background:var(--blue);color:#fff;cursor:pointer;border:0}.trade-assign-overlay .trade-overlay-actions a{border:1px solid var(--line);color:var(--blue);background:#fff}.trade-compliance-overlay .trade-overlay-card{width:min(100%,620px);max-height:calc(100vh - 48px);overflow-y:auto}.trade-compliance-overlay .trade-overlay-card form{gap:14px;margin-top:20px;display:grid}.trade-compliance-overlay .trade-overlay-card label{color:var(--ink);gap:6px;font-size:12px;font-weight:700;display:grid}.trade-compliance-overlay .trade-overlay-card input,.trade-compliance-overlay .trade-overlay-card select{box-sizing:border-box;border:1px solid var(--line);width:100%;min-height:40px;color:var(--ink);font:inherit;background:#fff;border-radius:4px;padding:9px 10px}.trade-compliance-overlay .trade-overlay-card input[type=file]{padding:8px 10px}.trade-compliance-overlay .trade-overlay-card .form-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.trade-compliance-overlay .trade-overlay-actions{flex-wrap:wrap;align-items:center;gap:8px;margin-top:4px;display:flex}.trade-compliance-overlay .trade-overlay-actions button,.trade-compliance-overlay .trade-overlay-actions a{box-sizing:border-box;border-radius:4px;justify-content:center;align-items:center;min-height:36px;padding:8px 12px;font-size:13px;font-weight:700;text-decoration:none;display:inline-flex}.trade-compliance-overlay .trade-overlay-actions button{background:var(--blue);color:#fff;cursor:pointer;border:0}.trade-compliance-overlay .trade-overlay-actions a{border:1px solid var(--line);color:var(--blue);background:#fff}@media (max-width:560px){.trade-compliance-overlay .trade-overlay-card .form-row{grid-template-columns:1fr}}.lead-create-overlay .trade-overlay-card{width:min(100%,640px);max-height:calc(100vh - 48px);overflow-y:auto}.lead-create-overlay .trade-overlay-card form{gap:14px;margin-top:20px;display:grid}.lead-create-overlay .trade-overlay-card label{color:var(--ink);gap:6px;font-size:12px;font-weight:700;display:grid}.lead-create-overlay .trade-overlay-card input{box-sizing:border-box;border:1px solid var(--line);width:100%;min-height:40px;color:var(--ink);font:inherit;background:#fff;border-radius:4px;padding:9px 10px}.lead-create-overlay .trade-overlay-card .form-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.lead-create-overlay .form-help{color:var(--muted);margin:0;font-size:12px;line-height:1.4}.lead-create-overlay .trade-overlay-actions{gap:8px;margin-top:2px}.lead-create-overlay .trade-overlay-actions button,.lead-create-overlay .trade-overlay-actions a{box-sizing:border-box;border-radius:4px;justify-content:center;align-items:center;min-height:36px;padding:8px 12px;font-size:13px;font-weight:700;text-decoration:none;display:inline-flex}.lead-create-overlay .trade-overlay-actions button{background:var(--blue);color:#fff;cursor:pointer;border:0}.lead-create-overlay .trade-overlay-actions a{border:1px solid var(--line);color:var(--blue);background:#fff}.lead-register-success{max-width:none;margin:18px 20px 0}@media (max-width:560px){.lead-create-overlay .trade-overlay-card .form-row{grid-template-columns:1fr}.lead-register-success{margin-left:22px;margin-right:22px}}.lead-list th:first-child,.lead-list td:first-child{white-space:nowrap;min-width:130px}.lead-list th:nth-child(2),.lead-list td:nth-child(2){min-width:220px}.lead-number-link{color:var(--ink);white-space:nowrap;font-weight:700}.lead-number-link:hover{color:var(--blue);text-decoration:underline}.lead-list table{min-width:1360px}.lead-list th a{color:inherit;white-space:nowrap;text-decoration:none}.lead-list th a:hover{color:var(--blue)}.register-columns-target td{white-space:normal;overflow-wrap:anywhere;word-break:normal}.trade-overlay-card form:has(:is(input,select,textarea)[required]):before{content:"* Required field";color:#a01b34;font-size:12px;font-weight:700}.catalogue-management-modal form:has(:is(input,select,textarea)[required]):before{content:"* Required field";color:#a01b34;font-size:12px;font-weight:700}:is(.trade-overlay-card label:has(:is(input,select,textarea)[required]),.catalogue-management-modal label:has(:is(input,select,textarea)[required])){padding-right:14px;position:relative}.trade-overlay-card label:has(:is(input,select,textarea)[required]):after{content:"*";color:#a01b34;font-size:15px;font-weight:800;line-height:1;position:absolute;top:0;right:0}.catalogue-management-modal label:has(:is(input,select,textarea)[required]):after{content:"*";color:#a01b34;font-size:15px;font-weight:800;line-height:1;position:absolute;top:0;right:0}.lead-detail-page .catalogue-header{align-items:flex-start;padding-top:42px;padding-bottom:22px}.lead-detail-page .catalogue-header h1{letter-spacing:-.03em;max-width:none;margin:0;font-size:clamp(28px,2.6vw,36px);line-height:1.12}.lead-record-title{flex-wrap:wrap;align-items:flex-start;gap:10px 12px;display:flex}.lead-record-title .proposal-status{margin-top:8px}.lead-detail-page .catalogue-header p:not(.eyebrow){margin-top:7px}.lead-detail-page .lead-management{align-items:flex-start;padding-top:20px;padding-bottom:20px}.lead-detail-page .lead-management-actions{grid-template-columns:1fr;gap:12px;width:min(100%,350px);display:grid}.lead-detail-page .lead-management-status{grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:10px;width:100%;display:grid}.lead-detail-page .lead-management-status label{min-width:0}.lead-detail-page .lead-management-status select{box-sizing:border-box;width:100%;min-width:0;height:36px}.lead-detail-page .lead-management-status>button{white-space:nowrap;height:36px;min-height:36px;padding:0 12px}.lead-detail-page .lead-record-actions{justify-content:flex-start;gap:8px}.lead-detail-page .lead-record-actions .inline-editor summary{box-sizing:border-box;border:1px solid var(--line);min-height:36px;color:var(--blue);background:#fff;border-radius:4px;align-items:center;padding:8px 12px;font-size:13px;font-weight:700;display:inline-flex}.lead-detail-page .lead-management-next{min-height:0}.lead-detail-page .lead-management-next .lead-start-hint{max-width:none}.lead-detail-page .lead-management-next .lead-start-hint,.lead-detail-page .lead-inactive-note{padding-top:2px;display:block}@media (max-width:760px){.lead-detail-page .catalogue-header{padding-top:32px}.lead-detail-page .lead-management-actions{width:100%}.lead-detail-page .lead-record-title .proposal-status{margin-top:0}}.estimate-register-page .catalogue-header h1,.estimate-detail-page .catalogue-header h1{letter-spacing:-.03em;max-width:none;margin:0;font-size:clamp(28px,2.6vw,36px);line-height:1.12}.estimate-detail-page .proposal-filter-panel,.estimate-detail-page .estimate-card{box-sizing:border-box;width:min(1200px,100% - 40px);max-width:none;margin-left:auto;margin-right:auto}.estimate-detail-page .proposal-filter-panel{padding-left:0;padding-right:0}.estimate-detail-page .catalogue-header,.estimate-detail-page .proposal-filter-panel,.estimate-detail-page .estimate-card{box-sizing:border-box;width:calc(100% - 40px);max-width:none;margin-left:20px;margin-right:20px}.estimate-detail-page .catalogue-header{padding-left:0;padding-right:0}.estimate-detail-page .estimate-line-entry-fields{max-width:none}@media (max-width:760px){.estimate-detail-page .catalogue-header,.estimate-detail-page .proposal-filter-panel,.estimate-detail-page .estimate-card{width:calc(100% - 44px);margin-left:22px;margin-right:22px}}.proposal-detail-page .proposal-filter-panel,.proposal-detail-page .proposal-card{box-sizing:border-box;width:min(1200px,100% - 40px);max-width:none;margin-left:auto;margin-right:auto}.proposal-detail-page .proposal-filter-panel{padding-left:0;padding-right:0}.estimate-record-title{min-width:0}.estimate-reference{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:6px;display:flex}.estimate-reference .eyebrow{margin:0}.estimate-reference .proposal-status{flex:none}.estimate-title h2{margin:0}.estimate-detail-page .edit-record summary{box-sizing:border-box;border:1px solid var(--line);min-height:36px;color:var(--blue);background:#fff;border-radius:4px;align-items:center;padding:8px 12px;font-size:13px;font-weight:700;list-style:none;display:inline-flex}.estimate-detail-page .edit-record summary::-webkit-details-marker{display:none}.estimate-detail-page .edit-record[open] summary{border-color:var(--blue);background:#f8fbff}.estimate-detail-page .estimate-card td:last-child{white-space:nowrap}.estimate-detail-page .estimate-card td details{vertical-align:middle;margin:0 8px 0 0}.estimate-detail-page .estimate-card td details summary,.estimate-detail-page .estimate-card td>form .remove-line{box-sizing:border-box;white-space:nowrap;border-radius:4px;justify-content:center;align-items:center;min-height:32px;margin:0;padding:6px 10px;font-size:13px;font-weight:700;line-height:1;display:inline-flex}.estimate-detail-page .estimate-card td details summary{border:1px solid var(--line);color:var(--blue);cursor:pointer;background:#fff;list-style:none}.estimate-detail-page .estimate-card td details summary::-webkit-details-marker{display:none}.estimate-detail-page .estimate-card td>form{vertical-align:middle;margin:0;display:inline-flex}.estimate-detail-page .estimate-card td>form .remove-line{color:#8f2435!important;background:#fff!important;border:1px solid #e7a9b5!important}.estimate-detail-page .estimate-card details form{z-index:30;width:min(252px,100vw - 32px);max-width:calc(100vw - 32px);position:fixed;top:50%;left:50%;right:auto;transform:translate(-50%,-50%)}.estimate-detail-page .add-line{border-top:1px solid var(--line);background:#fff;padding:0;display:block}.estimate-line-entry-heading{background:var(--wash);border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-end;gap:18px;padding:18px 22px 14px;display:flex}.estimate-line-entry-heading .eyebrow{margin:0 0 4px}.estimate-line-entry-heading h3{margin:0;font-size:16px}.estimate-line-entry-heading>p{max-width:390px;color:var(--muted);text-align:right;margin:0;font-size:12px;line-height:1.45}.estimate-line-entry-fields{grid-template-columns:minmax(150px,.9fr) minmax(180px,1fr) minmax(220px,1.25fr) 130px 88px auto;align-items:end;gap:12px;max-width:1080px;padding:16px 22px 22px;display:grid}.estimate-line-entry-fields label{min-width:0}.estimate-line-entry-fields small{color:var(--muted);margin-top:5px;font-size:11px;line-height:1.3;display:block}.estimate-line-entry-fields button{box-sizing:border-box;min-height:36px}.estimate-line-entry-fields .estimate-markup-field{position:relative}.estimate-line-entry-fields .estimate-markup-field small{z-index:3;box-sizing:border-box;border:1px solid var(--line);opacity:0;pointer-events:none;background:#fff;border-radius:4px;width:230px;max-width:calc(100vw - 56px);margin:0;padding:7px 9px;transition:opacity .12s,transform .12s;position:absolute;bottom:calc(100% + 7px);left:0;transform:translateY(4px);box-shadow:0 6px 16px #10203924}.estimate-line-entry-fields .estimate-markup-field:hover small,.estimate-line-entry-fields .estimate-markup-field:focus-within small{opacity:1;pointer-events:auto;transform:translateY(0)}.estimate-lines-table{overflow-x:auto}.estimate-lines-table table{min-width:790px}.estimate-cost-category-row th{border-top:2px solid var(--line);color:var(--ink);text-align:left;background:#f5f8fc;padding:0;position:relative}.estimate-cost-category-row strong{font-size:13px}.estimate-cost-category-row small{color:var(--muted);margin-left:10px;font-size:11px;font-weight:400}.estimate-cost-category-control{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;margin:-1px;position:absolute;overflow:hidden}.estimate-cost-category-toggle{min-height:22px;color:var(--ink);cursor:pointer;align-items:center;padding:11px 13px;display:flex}.estimate-category-arrow-open,.estimate-category-arrow-closed{width:20px;height:22px;color:var(--blue);flex:0 0 20px;place-items:center;margin-right:5px;font-size:16px;font-weight:700;line-height:1;display:inline-grid}.estimate-category-arrow-closed{display:none}.estimate-cost-category-control:focus-visible+.estimate-cost-category-toggle{outline:2px solid var(--blue);outline-offset:-2px}.estimate-cost-category:has(.estimate-cost-category-control:not(:checked)) .estimate-category-arrow-open{display:none}.estimate-cost-category:has(.estimate-cost-category-control:not(:checked)) .estimate-category-arrow-closed{display:inline-grid}.estimate-cost-category:has(.estimate-cost-category-control:not(:checked)) .estimate-cost-code-row{display:none}.estimate-cost-code-row td:first-child{color:var(--ink);white-space:nowrap}.estimate-cost-code-row td:first-child strong{color:var(--blue)}.estimate-child-indent{color:#7f8ca1;margin-right:8px;font-weight:700;display:inline-block}.estimate-total-footer{border-top:1px solid var(--line);background:var(--wash);flex-wrap:wrap;justify-content:flex-end;align-items:flex-end;gap:18px;padding:16px 22px;display:flex}.estimate-total-footer span{color:var(--muted);font-size:12px}.estimate-total-footer strong{color:var(--ink);margin-top:5px;font-size:17px;display:block}.estimate-total-footer .estimate-total-footer-grand{border-left:1px solid var(--line);color:var(--ink);padding-left:18px;font-weight:700}.estimate-total-footer .estimate-total-footer-grand strong{font-size:20px}.estimate-line-actions{white-space:nowrap;align-items:center;gap:8px;display:inline-flex}.estimate-line-order-actions{align-items:center;gap:3px;display:inline-flex}.estimate-line-order-actions form{margin:0!important;display:inline-flex!important}.estimate-line-order-button{box-sizing:border-box;border:1px solid var(--line);width:28px;height:28px;min-height:28px;color:var(--blue);cursor:pointer;background:#fff;border-radius:4px;justify-content:center;align-items:center;margin:0;padding:0;font-size:15px;font-weight:700;line-height:1;display:inline-flex}.estimate-line-order-button:hover:not(:disabled){border-color:var(--blue);background:var(--blue-soft,#eef3ff)}.estimate-line-order-button:disabled{opacity:.45;cursor:not-allowed}.estimate-detail-page .estimate-card td details form>button{box-sizing:border-box;background:var(--blue);color:#fff;white-space:nowrap;cursor:pointer;border:0;border-radius:4px;justify-content:center;align-items:center;height:36px;min-height:36px;margin:0;padding:0 12px;font-size:13px;font-weight:700;line-height:1;display:inline-flex}@media (max-width:760px){.estimate-line-entry-heading{flex-direction:column;align-items:flex-start}.estimate-line-entry-heading>p{text-align:left;max-width:none}.estimate-line-entry-fields{grid-template-columns:1fr;max-width:none}.estimate-total-footer{justify-content:flex-start;gap:12px 18px}.estimate-total-footer .estimate-total-footer-grand{border-left:0;padding-left:0}}.estimate-detail-page .proposal-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.estimate-detail-page .proposal-actions form,.estimate-detail-page .proposal-actions .button{margin:0}.estimate-add-line-overlay{justify-content:flex-end;align-items:stretch;padding:0;display:flex}.estimate-add-line-overlay .trade-overlay-card{z-index:1;border-top:0;border-bottom:0;border-right:0;border-radius:0;width:min(100%,560px);height:100%;max-height:none;padding:28px;overflow:hidden auto;box-shadow:-18px 0 55px #0a182a47}.estimate-add-line-overlay .estimate-add-line-fields{grid-template-columns:1fr;align-items:stretch;gap:14px;max-width:none;padding:0;display:grid}.estimate-add-line-overlay .estimate-add-line-fields label{min-width:0;color:var(--ink);gap:6px;font-size:12px;font-weight:700;display:grid}.estimate-add-line-overlay .estimate-add-line-fields select,.estimate-add-line-overlay .estimate-add-line-fields input{box-sizing:border-box;border:1px solid var(--line);width:100%;min-height:40px;color:var(--ink);font:inherit;background:#fff;border-radius:4px;padding:9px 10px}.estimate-add-line-overlay .trade-overlay-actions{gap:8px;margin-top:4px}.estimate-add-line-overlay .trade-overlay-actions button,.estimate-add-line-overlay .trade-overlay-actions a{box-sizing:border-box;border-radius:4px;justify-content:center;align-items:center;min-height:36px;padding:8px 12px;font-size:13px;font-weight:700;text-decoration:none;display:inline-flex}.estimate-add-line-overlay .trade-overlay-actions button{background:var(--blue);color:#fff;cursor:pointer;border:0}.estimate-add-line-overlay .trade-overlay-actions a{border:1px solid var(--line);color:var(--blue);background:#fff}.estimate-detail-page .proposal-actions .estimate-add-line-trigger,.estimate-detail-page .proposal-actions .estimate-lock-trigger{box-sizing:border-box;white-space:nowrap;border-radius:4px;justify-content:center;align-items:center;height:36px;min-height:36px;margin:0;padding:0 12px;font-size:13px;font-weight:700;line-height:1;display:inline-flex}.estimate-add-line-overlay .estimate-add-line-fields .estimate-markup-field,.estimate-add-line-overlay .estimate-add-line-fields .estimate-add-quantity,.estimate-add-line-overlay .estimate-add-line-fields .estimate-markup-field input,.estimate-add-line-overlay .estimate-add-line-fields .estimate-add-quantity input{width:110px;max-width:100%}@media (max-width:560px){.estimate-add-line-overlay .trade-overlay-card{width:100%;padding:22px}}.estimate-create-overlay .trade-overlay-card{width:min(100%,560px);max-height:calc(100vh - 48px);overflow-y:auto}.estimate-create-overlay .trade-overlay-card form{gap:14px;margin-top:20px;display:grid}.estimate-create-overlay .trade-overlay-card label{color:var(--ink);gap:6px;font-size:12px;font-weight:700;display:grid}.estimate-create-overlay .trade-overlay-card input,.estimate-create-overlay .trade-overlay-card select{box-sizing:border-box;border:1px solid var(--line);width:100%;min-height:40px;color:var(--ink);font:inherit;background:#fff;border-radius:4px;padding:9px 10px}.estimate-create-overlay .project-field,.estimate-create-overlay .form-help{color:var(--muted);margin:0;font-size:13px;line-height:1.45}.estimate-create-overlay .project-field{border:1px solid var(--line);background:var(--wash);color:var(--ink);border-radius:5px;padding:10px 12px;font-weight:700}.estimate-create-overlay .trade-overlay-actions{gap:8px;margin-top:2px}.estimate-create-overlay .trade-overlay-actions button,.estimate-create-overlay .trade-overlay-actions a{box-sizing:border-box;border-radius:4px;justify-content:center;align-items:center;min-height:36px;padding:8px 12px;font-size:13px;font-weight:700;text-decoration:none;display:inline-flex}.estimate-create-overlay .trade-overlay-actions button{background:var(--blue);color:#fff;cursor:pointer;border:0}.estimate-create-overlay .trade-overlay-actions a{border:1px solid var(--line);color:var(--blue);background:#fff}.estimate-register-success{max-width:none;margin:18px 20px 0}@media (max-width:760px){.estimate-register-success{margin-left:22px;margin-right:22px}}:is(.bid-register-page,.budget-register-page,.catalogue-items-page,.change-order-page,.client-register-page,.compliance-page,.contract-register-page,.daily-logs-register-page,.estimate-register-page,.invoice-page,.lead-register-page,.messages-register-page,.proposal-register-page,.question-register-page,.risk-register-page,.schedule-page,.selection-register-page,.time-clock-register-page,.todo-register-page,.trade-register-page) .catalogue-header,:is(.bid-list,.budget-register,.catalogue-items-register,.change-order-list,.client-list,.compliance-register,.contract-list,.daily-log-list,.estimate-register-list,.bill-list,.lead-list,.message-list,.proposal-filter-panel,.question-list,.risk-list,.schedule-register,.selection-list,.todo-register,.trade-list),.time-clock-register-page .todo-list{box-sizing:border-box;max-width:none;padding-left:20px;padding-right:20px}@media (max-width:760px){:is(.bid-register-page,.budget-register-page,.catalogue-items-page,.change-order-page,.client-register-page,.compliance-page,.contract-register-page,.daily-logs-register-page,.estimate-register-page,.invoice-page,.lead-register-page,.messages-register-page,.proposal-register-page,.question-register-page,.risk-register-page,.schedule-page,.selection-register-page,.time-clock-register-page,.todo-register-page,.trade-register-page) .catalogue-header,:is(.bid-list,.budget-register,.catalogue-items-register,.change-order-list,.client-list,.compliance-register,.contract-list,.daily-log-list,.estimate-register-list,.bill-list,.lead-list,.message-list,.proposal-filter-panel,.question-list,.risk-list,.schedule-register,.selection-list,.todo-register,.trade-list),.time-clock-register-page .todo-list{padding-left:22px;padding-right:22px}}.time-weekly-register-page .catalogue-header,.time-weekly-register-page .todo-list{box-sizing:border-box;max-width:none;padding-left:20px;padding-right:20px}@media (max-width:760px){.time-weekly-register-page .catalogue-header,.time-weekly-register-page .todo-list{padding-left:22px;padding-right:22px}}@media (min-width:901px){.safety-overview .risk-filter{align-items:center;display:flex}.safety-overview .risk-filter input{flex:0 0 260px;width:260px}.safety-overview .risk-filter select{flex:0 0 180px;width:180px}}.safety-page .catalogue-header{box-sizing:border-box;text-align:left;max-width:none;margin:0;padding-left:20px;padding-right:20px}@media (max-width:760px){.safety-page .catalogue-header{padding-left:22px;padding-right:22px}}.risk-list .table-panel{overflow-x:auto}.risk-list table{min-width:1320px}.risk-list td{vertical-align:middle;padding-top:17px;padding-bottom:17px}.risk-list .risk-row-actions{justify-content:flex-end;gap:8px;min-width:164px}.risk-list .risk-row-actions form{margin:0;display:flex}.risk-list .risk-row-action{box-sizing:border-box;white-space:nowrap;border-radius:4px;justify-content:center;align-items:center;min-width:76px;min-height:36px;margin:0;padding:8px 12px;font-size:13px;font-weight:700;text-decoration:none;display:inline-flex}.risk-list .risk-row-edit{border:1px solid var(--line);color:var(--blue);background:#fff}.risk-list .risk-row-status{background:var(--blue);color:#fff;cursor:pointer;border:0}@media (min-width:901px){.risk-register-page .risk-filter{flex-wrap:wrap;justify-content:flex-start;align-items:center;display:flex}.risk-register-page .risk-filter select[name=jobId]{flex:0 0 300px;width:300px}.risk-register-page .risk-filter input{flex:0 0 240px;width:240px}.risk-register-page .risk-filter select[name=status]{flex:0 0 150px;width:150px}.question-register-page .question-filter{flex-wrap:wrap;justify-content:flex-start;align-items:center;display:flex}.question-register-page .question-filter select[name=jobId]{flex:0 0 300px;width:300px}.question-register-page .question-filter input{flex:0 0 240px;width:240px}.question-register-page .question-filter select[name=status]{flex:0 0 150px;width:150px}.question-register-page .question-filter select[name=category]{flex:0 0 190px;width:190px}.question-register-page .question-filter{flex-wrap:wrap;align-items:center;gap:8px;width:100%;display:flex}.question-register-page .question-filter select[name=jobId]{flex:0 390px;width:390px;min-width:280px}.question-register-page .question-filter input[name=query]{flex:0 210px;width:210px;min-width:180px}.question-register-page .question-filter select[name=status]{flex:0 135px;width:135px;min-width:135px}.question-register-page .question-filter select[name=category]{flex:0 190px;width:190px;min-width:170px}.question-register-page .question-filter .register-filter-actions{margin-left:auto}}.question-project-table{min-width:980px}.question-detail-overlay .question-reply-form{grid-template-columns:minmax(0,1fr);align-items:stretch}.question-detail-overlay .question-reply-form select,.question-detail-overlay .question-reply-form textarea,.question-detail-overlay .question-notify,.question-detail-overlay .question-reply-form>button{grid-column:1}.question-detail-overlay .question-reply-form textarea{box-sizing:border-box;width:100%;min-height:112px}.question-detail-overlay .question-notify{margin-top:2px}.question-detail-overlay .question-reply-form>button{justify-self:end}@media (min-width:901px){.selection-register-page .selection-filter{flex-wrap:wrap;justify-content:flex-start;align-items:center;display:flex}.selection-register-page .selection-filter select[name=jobId]{flex:0 0 280px;width:280px}.selection-register-page .selection-filter input[name=query]{flex:0 0 230px;width:230px}.selection-register-page .selection-filter select[name=category]{flex:0 0 170px;width:170px}.selection-register-page .selection-filter select[name=supplier]{flex:0 0 190px;width:190px}.selection-register-page .selection-filter select[name=status]{flex:0 0 140px;width:140px}.selection-register-page .selection-filter{flex-wrap:wrap;align-items:center;gap:8px;width:100%;display:flex}.selection-register-page .selection-filter select[name=jobId]{flex:0 390px;width:390px;min-width:280px}.selection-register-page .selection-filter input[name=query]{flex:0 210px;width:210px;min-width:180px}.selection-register-page .selection-filter select[name=category]{flex:0 170px;width:170px;min-width:150px}.selection-register-page .selection-filter select[name=supplier]{flex:0 190px;width:190px;min-width:170px}.selection-register-page .selection-filter select[name=status]{flex:0 135px;width:135px;min-width:135px}.selection-register-page .selection-filter .register-filter-actions{margin-left:auto}}.selection-list table{min-width:1260px}.selection-record-card{width:min(100%,620px)}.selection-record-content{gap:16px;margin:20px 0;display:grid}.selection-record-heading{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.selection-record-heading h3{margin:0 0 8px;font-size:20px}.selection-record-heading small{color:var(--muted);white-space:nowrap;font-size:12px}.selection-record-details{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:0;display:grid}.selection-record-details div{border:1px solid var(--line);background:var(--wash);border-radius:5px;padding:11px}.selection-record-details dt{color:var(--muted);font-size:11px;font-weight:700}.selection-record-details dd{color:var(--ink);margin:5px 0 0;font-size:13px;font-weight:700}.selection-record-details dd.over{color:#a1394e}.selection-record-details dd.under{color:#146338}.selection-record-notes{border-top:1px solid var(--line);padding-top:14px}.selection-record-notes strong{font-size:13px}.selection-record-notes p{color:var(--muted);white-space:pre-wrap;margin:6px 0 0;line-height:1.45}@media (max-width:560px){.selection-record-heading{flex-direction:column}.selection-record-details{grid-template-columns:1fr}}@media (min-width:901px){.project-register-page .project-filter{flex-wrap:wrap;justify-content:flex-start;align-items:center;margin:0 0 16px;display:flex}.project-register-page .project-filter input{flex:0 0 230px;width:230px}.project-register-page .project-filter select[name=priority]{flex:0 0 150px;width:150px}.project-register-page .project-filter select[name=status]{flex:0 0 165px;width:165px}.project-register-page .project-filter .record-limit{align-items:center;gap:6px;display:inline-flex}.project-register-page .project-filter .record-limit select{flex:0 0 70px;width:70px}}.project-register-table{min-width:1420px}.project-register .table-panel{overflow:auto hidden}.project-register-table td{vertical-align:middle}.project-register-table th a{color:inherit;white-space:nowrap;text-decoration:none}.project-register-table th a:hover{color:var(--blue)}.project-workspace-hero,.workspace-metrics,.workspace-section{box-sizing:border-box;max-width:none;padding-left:clamp(22px,3vw,48px);padding-right:clamp(22px,3vw,48px)}.project-workspace-hero h1{font-size:clamp(28px,2.6vw,36px);line-height:1.12}.workspace-hero-actions{flex-wrap:wrap;justify-content:flex-end}@media (max-width:760px){.workspace-hero-actions{justify-content:flex-start}}.workspace-bottom-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px;max-width:none;margin:30px auto 60px;padding:0 clamp(22px,3vw,48px);display:grid}.workspace-bottom-grid .workspace-section{margin:0;padding:0}.workspace-bottom-grid .project-team{padding-bottom:0}.workspace-bottom-grid .project-staff-form{box-sizing:border-box;grid-template-columns:repeat(3,minmax(0,1fr));width:100%;max-width:none}.workspace-bottom-grid .project-staff-form button{box-sizing:border-box;width:100%;min-height:40px}@media (max-width:900px){.workspace-bottom-grid{grid-template-columns:1fr}}.project-address-fields{grid-template-columns:repeat(3,minmax(0,1fr));column-gap:7px;display:grid}.project-address-fields legend,.project-address-fields>label:first-of-type{grid-column:1/-1}.project-address-fields>.form-row{display:contents}.project-address-fields>.form-row label{grid-column:span 1}.project-address-fields>label:last-child{grid-column:1;width:auto}@media (max-width:760px){.project-address-fields{grid-template-columns:1fr}.project-address-fields>.form-row label,.project-address-fields>label:last-child{grid-column:1}}.project-record-history{border-bottom:1px solid var(--line);margin:0 0 18px;padding:0 0 16px}.project-record-history .eyebrow{margin:0 0 10px}.project-record-history dl{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:0;display:grid}.project-record-history dt{color:var(--muted);font-size:11px;font-weight:700}.project-record-history dd{color:var(--ink);font-variant-numeric:tabular-nums;margin:4px 0 0;font-size:12px;font-weight:700;line-height:1.35}.project-setup-tabs{border-bottom:1px solid var(--line);flex-wrap:wrap;gap:2px;max-width:1000px;margin:0 auto;padding:0 7%;display:flex}.project-setup-tabs a{color:var(--muted);border-bottom:2px solid #0000;padding:11px 13px;font-size:13px;font-weight:700;text-decoration:none}.project-setup-tabs a:hover{color:var(--blue)}.project-setup-tabs a.active{border-color:var(--blue);color:var(--blue)}.project-information-fields,.project-date-fields{border:1px solid var(--line);border-radius:6px;gap:12px;margin:18px 0;padding:14px;display:grid}.project-information-fields{grid-template-columns:repeat(3,minmax(0,1fr))}.project-date-fields{grid-template-columns:repeat(2,minmax(0,1fr))}.project-information-fields legend,.project-date-fields legend{color:var(--ink);padding:0 4px;font-size:13px;font-weight:700}.project-information-fields label,.project-date-fields label{min-width:0;margin:0}.project-information-fields .project-info-wide{grid-column:1/-1}.project-working-days{border-top:1px solid var(--line);flex-wrap:wrap;grid-column:1/-1;align-items:center;gap:8px 12px;margin-top:4px;padding-top:12px;display:flex}.project-working-days>span{width:100%;color:var(--muted);font-size:12px;font-weight:700}.project-setup .project-working-days label{color:var(--ink);align-items:center;gap:5px;margin:0;font-size:12px;display:flex}.project-setup .project-working-days input{width:auto;accent-color:var(--blue);margin:0;display:inline-block}.schedule-calendar section.non-working:not(.outside),.lookahead-grid section.non-working{background:#f0f3f8}.lookahead-grid .lookahead-closure{color:#5d6c80;font-weight:700}.schedule-calendar section{position:relative}.calendar-closure-label{color:#5d6c80;margin:-3px 0 5px;font-size:10px;font-weight:700;line-height:1.2;display:block}.schedule-calendar .calendar-task{min-height:24px;color:var(--blue);background:#eaf2ff;border-radius:0;margin:4px -8px 0;padding:0 8px}.schedule-calendar .calendar-task.teal{color:#12676e;background:#e3f7f7}.schedule-calendar .calendar-task.orange{color:#92520a;background:#fff1de}.schedule-calendar .calendar-task.pink{color:#9a3058;background:#fbe9f0}.schedule-calendar .calendar-task.navy{color:#26497f;background:#e7edf7}.schedule-calendar .calendar-task.starts{border-radius:3px 0 0 3px}.schedule-calendar .calendar-task.ends{border-radius:0 3px 3px 0}.schedule-calendar .calendar-task.starts.ends{border-radius:3px}.schedule-calendar .calendar-task a{color:inherit;background:0 0;margin:0;padding:4px 0}.calendar-task-continuation{min-height:24px;display:block}.project-setup textarea{box-sizing:border-box;border:1px solid var(--line);width:100%;min-height:88px;color:var(--ink);font:inherit;resize:vertical;background:#fff;border-radius:4px;margin-top:6px;padding:10px;display:block}.project-contract-summary{border-bottom:1px solid var(--line);gap:6px;margin:0 0 18px;padding:0 0 16px;display:grid}.project-contract-summary .eyebrow{margin:0 0 4px}.project-contract-summary strong{color:var(--ink);font-size:14px}.project-contract-summary span{color:var(--muted);font-size:12px}.project-contract-summary b{color:var(--ink);font-size:22px}.project-contract-summary a{width:max-content;color:var(--blue);margin-top:2px;font-size:13px;font-weight:700;text-decoration:none}.project-calendar-closures{border-bottom:1px solid var(--line);margin:0 0 18px;padding:0 0 16px}.project-calendar-closures .eyebrow{margin:0 0 5px}.project-calendar-closures>p{margin:0 0 12px}.project-setup-page .project-calendar-closures form{border:0;grid-template-columns:1fr;gap:8px;padding:0;display:grid}.project-calendar-closures label{margin:0}.project-calendar-closures input{padding:8px}.project-calendar-closures form>button{width:max-content;padding:8px 10px}.project-closure-form-actions{align-items:center;gap:10px;display:flex}.project-closure-form-actions a{color:var(--blue);font-size:12px;font-weight:700;text-decoration:none}.project-closure-form-actions .project-closure-clear{border:1px solid var(--line);color:var(--blue);background:#fff;padding:8px 10px}.project-calendar-closures ul{margin:12px 0 0;padding:0;list-style:none;display:block}.project-calendar-closures li{min-height:28px;color:var(--ink);grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;margin:0;padding:1px 0;font-size:12px;display:grid}.project-calendar-closures li>span:before{content:"•";color:var(--blue);margin-right:6px}.project-calendar-closures li>div{z-index:1;align-items:center;gap:8px;display:flex;position:relative}.project-calendar-closures li .project-closure-edit{color:var(--blue);font:inherit;background:0 0;border:0;padding:4px 0;font-size:11px;font-weight:700}.project-setup-page .project-calendar-closures li form{border:0;padding:0;display:block}.project-calendar-closures li button{color:#8f2435;font:inherit;background:#fff;border:1px solid #eab0b8;border-radius:3px;padding:4px 7px;font-size:11px;font-weight:700}@media (max-width:760px){.project-setup-tabs{padding-left:22px;padding-right:22px}.project-information-fields,.project-date-fields{grid-template-columns:1fr}.project-information-fields .project-info-wide{grid-column:1}}.project-location-schedule{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin:18px 0;display:grid}.project-location-schedule>fieldset{min-width:0;margin:0}.project-location-schedule .project-address-fields{grid-template-columns:repeat(2,minmax(0,1fr))}@media (max-width:760px){.project-location-schedule,.project-location-schedule .project-address-fields{grid-template-columns:1fr}}.project-setup-page .catalogue-header,.project-setup-page .project-setup-tabs{box-sizing:border-box;max-width:none;padding-left:clamp(22px,3vw,48px);padding-right:clamp(22px,3vw,48px)}.project-setup-page .project-setup{box-sizing:border-box;grid-template-columns:minmax(0,1.7fr) minmax(330px,.9fr);gap:24px;max-width:none;margin:30px auto;padding:0 clamp(22px,3vw,48px) 60px}.project-setup-page .project-setup form,.project-setup-page .project-setup aside{padding:24px}@media (max-width:900px){.project-setup-page .project-setup{grid-template-columns:1fr}.project-setup-page .project-setup aside{min-width:0}}.project-setup .project-core-row{grid-template-columns:repeat(3,minmax(0,1fr))}.project-setup .project-client-field{width:calc(33.3333% - 9.33333px)}@media (max-width:760px){.project-setup .project-core-row{grid-template-columns:1fr}.project-setup .project-client-field{width:100%}}.project-setup-page .project-setup.project-setup-tab-layout{display:block}.project-setup-tab-panel{box-sizing:border-box;border:1px solid var(--line);background:#fff;border-radius:7px;min-height:330px;padding:28px}.project-tab-heading{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:24px;padding-bottom:20px;display:flex}.project-tab-heading .eyebrow{margin:0 0 7px}.project-tab-heading h2{color:var(--ink);margin:0;font-size:22px}.project-tab-heading p:not(.eyebrow){max-width:570px;color:var(--muted);margin:6px 0 0}.project-tab-heading .button-link{color:#fff;flex:none}.project-setup-tab-panel .button-link{justify-content:center;align-items:center;height:38px;min-height:38px;padding:0 16px;line-height:1}.project-tab-card-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;display:grid}.project-tab-card-grid article,.project-financial-summary article{border:1px solid var(--line);background:#f8fafc;border-radius:6px;gap:6px;min-width:0;padding:16px;display:grid}.project-tab-card-grid strong{color:var(--ink);overflow-wrap:anywhere;font-size:15px}.project-tab-card-grid span{color:var(--blue);text-transform:capitalize;font-size:12px;font-weight:700}.project-tab-card-grid small{color:var(--muted);overflow-wrap:anywhere}.project-tab-details{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:0 0 22px;display:grid}.project-tab-details div{border:1px solid var(--line);border-radius:6px;min-width:0;padding:14px}.project-tab-details dt{color:var(--muted);font-size:11px;font-weight:700}.project-tab-details dd{color:var(--ink);overflow-wrap:anywhere;margin:6px 0 0;font-weight:700}.project-tab-table{min-width:700px}.project-financial-summary{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;display:grid}.project-financial-summary span,.project-financial-summary small{color:var(--muted);font-size:12px}.project-financial-summary strong{color:var(--ink);font-variant-numeric:tabular-nums;font-size:22px}.project-tab-links{flex-wrap:wrap;gap:18px;margin-top:24px;display:flex}.project-tab-links a{color:var(--blue);font-size:13px;font-weight:700;text-decoration:none}.project-setup-tab-panel>.button-link{color:#fff;margin-top:22px;display:inline-flex}@media (max-width:900px){.project-tab-card-grid,.project-financial-summary,.project-tab-details{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:620px){.project-setup-tab-panel{padding:20px}.project-tab-heading{gap:14px;display:grid}.project-tab-heading .button-link{width:max-content}.project-tab-card-grid,.project-financial-summary,.project-tab-details{grid-template-columns:1fr}}.catalogue-item-overlay,.question-create-overlay,.question-detail-overlay,.risk-overlay,.selection-form-overlay,.gantt-schedule-overlay,.purchase-order-edit-overlay,.todo-overlay,.daily-log-overlay{justify-content:flex-end;align-items:stretch;padding:0;display:flex}.catalogue-item-overlay .trade-overlay-card,.question-create-overlay .trade-overlay-card,.question-detail-overlay .trade-overlay-card,.risk-overlay .trade-overlay-card,.selection-form-overlay .trade-overlay-card,.gantt-schedule-overlay .trade-overlay-card,.purchase-order-edit-overlay .trade-overlay-card,.todo-overlay .trade-overlay-card,.daily-log-overlay .trade-overlay-card{z-index:1;border-top:0;border-bottom:0;border-right:0;border-radius:0;height:100%;max-height:none;padding:28px;overflow:hidden auto;box-shadow:-18px 0 55px #0a182a47}.catalogue-item-overlay .trade-overlay-card,.question-create-overlay .trade-overlay-card{width:min(100%,560px)}.question-detail-overlay .trade-overlay-card{width:min(100%,760px)}.risk-overlay .trade-overlay-card{width:min(100%,620px)}.selection-form-overlay .trade-overlay-card{width:min(100%,640px)}.gantt-schedule-overlay .trade-overlay-card{width:min(100%,760px)}.purchase-order-edit-overlay .trade-overlay-card,.daily-log-overlay .trade-overlay-card{width:min(100%,620px)}@media (max-width:760px){.question-detail-overlay .trade-overlay-card,.gantt-schedule-overlay .trade-overlay-card{width:100%}}@media (max-width:560px){.catalogue-item-overlay .trade-overlay-card,.question-create-overlay .trade-overlay-card,.risk-overlay .trade-overlay-card,.selection-form-overlay .trade-overlay-card,.purchase-order-edit-overlay .trade-overlay-card,.todo-overlay .trade-overlay-card,.daily-log-overlay .trade-overlay-card{width:100%;padding:22px}}.change-order-dialog.change-order-drawer{border-top:0;border-bottom:0;border-right:0;border-radius:0;width:min(100%,680px);height:100dvh;max-height:none;margin:0;padding:28px;position:fixed;inset:0 0 0 auto;overflow-y:auto;box-shadow:-18px 0 55px #0a182a47}@media (max-width:560px){.change-order-dialog.change-order-drawer{width:100%;padding:22px}}.app-shell{min-height:100vh}.app-main{min-width:0;min-height:100vh;margin-left:264px}.app-main:is(.has-project-context,.has-register-bar)>main:is(.bid-register-page,.bill-page,.budget-page,.change-order-page,.client-register-page,.catalogue-page,.catalogue-items-page,.contract-detail-page,.contract-register-page,.daily-logs-register-page,.estimate-detail-page,.estimate-register-page,.file-library-page,.invoice-page,.lead-register-page,.messages-register-page,.project-register-page,.proposal-detail-page,.proposal-register-page,.question-register-page,.risk-register-page,.safety-page,.selection-register-page,.schedule-page,.settings-register-page,.time-clock-register-page,.time-weekly-details-register-page,.time-weekly-register-page,.todo-register-page,.trade-register-page,.compliance-page)>.catalogue-header,.app-main:is(.has-project-context,.has-register-bar)>main>.file-page-header,.app-main:is(.has-project-context,.has-register-bar)>main>.staff-header,.topbar,.project-context{display:none}.app-project-bar{box-sizing:border-box;border-bottom:1px solid var(--line);background:#f8fbff;width:100%}.app-project-bar-inner{justify-content:space-between;align-items:center;gap:24px;min-height:72px;padding:13px 28px;display:flex}.app-project-bar-heading{gap:4px;min-width:0;display:grid}.app-project-bar-heading span{color:var(--blue);letter-spacing:.09em;font-size:10px;font-weight:700}.app-project-bar-heading strong{color:var(--ink);text-overflow:ellipsis;white-space:nowrap;font-size:14px;overflow:hidden}.app-project-bar nav{flex-wrap:wrap;justify-content:flex-end;gap:6px;display:flex}.app-project-bar nav a{color:var(--blue);white-space:nowrap;border:1px solid #0000;border-radius:4px;padding:7px 9px;font-size:12px;font-weight:700;text-decoration:none}.app-project-bar nav a:hover{border-color:var(--line);background:#fff}.app-account-only-bar{box-sizing:border-box;border-bottom:1px solid var(--line);background:#f8fbff;justify-content:flex-end;align-items:center;min-height:52px;padding:8px 20px;display:flex}.app-account-menu{z-index:80;flex:none;margin-left:auto;position:relative}.app-account-trigger{border:1px solid var(--line);min-height:38px;color:var(--ink);cursor:pointer;background:#fff;border-radius:5px;align-items:center;gap:8px;padding:4px 8px 4px 5px;display:flex}.app-account-trigger:hover,.app-account-trigger:focus-visible{background:#f8fbff;border-color:#a9c2e6;outline:0}.app-account-avatar{background:var(--navy);color:#fff;letter-spacing:.02em;border-radius:50%;flex:0 0 28px;place-items:center;width:28px;height:28px;font-size:10px;font-weight:800;display:grid}.app-account-copy{text-align:left;gap:1px;min-width:0;display:grid}.app-account-copy strong{text-overflow:ellipsis;white-space:nowrap;max-width:180px;font-size:12px;line-height:1.2;overflow:hidden}.app-account-copy small{color:var(--muted);font-size:10px;line-height:1.2}.app-account-chevron{color:var(--blue);margin-left:2px;font-size:17px;line-height:1}.app-account-popover{box-sizing:border-box;border:1px solid var(--line);background:#fff;border-radius:6px;width:min(280px,100vw - 32px);padding:7px;position:absolute;top:calc(100% + 6px);right:0;box-shadow:0 14px 35px #0a182a33}.app-account-popover-heading{border-bottom:1px solid var(--line);gap:3px;padding:8px 9px 10px;display:grid}.app-account-popover-heading strong{color:var(--ink);font-size:12px}.app-account-popover-heading small{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.app-account-popover a,.app-account-popover button{box-sizing:border-box;width:100%;color:var(--ink);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:4px;padding:9px;font-size:12px;text-decoration:none;display:block}.app-account-popover a:hover,.app-account-popover button:hover,.app-account-popover a:focus-visible,.app-account-popover button:focus-visible{background:var(--wash);color:var(--blue);outline:0}.app-project-bar-inner>.app-account-menu{margin-left:0}.schedule-all-project-bar .app-project-bar-heading strong{font-size:16px}.schedule-all-project-bar .app-project-bar-inner{padding-left:20px;padding-right:20px}.register-all-project-bar .app-project-bar-heading strong{font-size:16px}.register-all-project-bar .app-project-bar-inner{padding-left:20px;padding-right:20px}.catalogue-register-notice{max-width:none;margin:0 7% 16px!important}.catalogue-page .catalogue-layout{grid-template-columns:300px minmax(0,1fr);margin-top:24px;padding-left:20px;padding-right:20px}.catalogue-register-heading-actions{align-items:center;gap:12px;margin-left:auto;justify-content:flex-end!important;display:flex!important}.project-register,.staff-list,.file-library{box-sizing:border-box;max-width:none;padding-left:20px;padding-right:20px}.invoice-register-summary{justify-items:start;margin:0 0 16px}.change-order-register-summary{width:max-content;margin:0 0 16px}.selection-register-alert{margin:0 0 16px}.file-library-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:12px;display:flex}.app-navigation{z-index:60;box-sizing:border-box;color:#dbe7ff;background:var(--navy);flex-direction:column;gap:0;width:264px;padding:12px 14px 16px;display:flex;position:fixed;inset:0 auto 0 0;overflow-y:auto}.app-navigation-header{border-bottom:1px solid #dbe7ff2e;justify-content:space-between;align-items:center;gap:12px;min-height:47px;padding:0 6px 13px;display:flex}.app-navigation-brand{color:#fff;align-items:baseline;gap:9px;min-width:0;text-decoration:none;display:flex}.app-navigation-brand strong{color:#72d8e3;letter-spacing:.08em;font-size:26px;line-height:1}.app-navigation-brand span{color:#cfe1ff;text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.app-navigation-collapse{color:#fff;cursor:pointer;background:0 0;border:1px solid #dbe7ff47;border-radius:4px;flex:0 0 30px;place-items:center;width:30px;height:30px;font-size:22px;line-height:1;display:grid}.app-navigation-project{gap:6px;margin:18px 4px 20px;display:grid}.app-navigation-project label{color:#9fb9e7;letter-spacing:.08em;text-transform:uppercase;font-size:10px;font-weight:700}.app-navigation-project select{box-sizing:border-box;color:#fff;width:100%;min-height:38px;font:inherit;background:#102951;border:1px solid #dbe7ff47;border-radius:4px;padding:8px 9px;font-size:12px}.app-navigation-project-link{color:#72d8e3;font-size:11px;font-weight:700;text-decoration:none}.app-navigation-project-note{color:#9fb9e7;margin:0;font-size:10px;line-height:1.35}.app-navigation-menu{gap:18px;display:grid}.app-navigation-group{gap:3px;display:grid}.app-navigation-group h2{color:#7f9acb;letter-spacing:.1em;text-transform:uppercase;margin:0 6px 4px;font-size:10px;font-weight:700}.app-navigation-item{gap:2px;display:grid}.app-navigation-link{color:#dbe7ff;border-left:3px solid #0000;border-radius:3px;align-items:center;min-height:32px;padding:7px 9px;font-size:13px;text-decoration:none;display:flex}.app-navigation-submenu{border-left:1px solid #dbe7ff38;gap:1px;margin:0 0 2px 28px;padding-left:9px;display:grid}.app-navigation-sublink{color:#afc3e8;border-radius:3px;align-items:center;min-height:27px;padding:5px 8px;font-size:12px;text-decoration:none;display:flex}.app-navigation-sublink:hover{color:#fff;background:#102951}.app-navigation-sublink.active{color:#fff;background:#15345f;font-weight:700}.app-navigation-icon{color:currentColor;flex:0 0 20px;justify-content:center;align-items:center;width:20px;height:20px;display:none}.app-navigation-icon svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.8px;width:18px;height:18px;display:block}.app-navigation-brand .app-navigation-icon{display:none}.app-navigation-link:hover{color:#fff;background:#102951}.app-navigation-link.active{color:#fff;background:#15345f;border-left-color:#72d8e3;font-weight:700}.app-navigation-settings{color:#cfe1ff;border-top:1px solid #dbe7ff2e;align-items:center;min-height:34px;margin:20px 0 0;padding:18px 9px 0;font-size:13px;font-weight:700;text-decoration:none;display:flex}.app-navigation-toggle,.app-navigation-scrim{display:none}.app-shell.is-collapsed .app-navigation{width:76px;padding-left:10px;padding-right:10px}.app-shell.is-collapsed .app-main{margin-left:76px}.app-shell.is-collapsed .app-navigation-brand,.app-shell.is-collapsed .app-navigation-brand>strong{display:none}.app-shell.is-collapsed .app-navigation-brand .app-navigation-icon{color:#9fb9e7;display:flex}.app-shell.is-collapsed .app-navigation-brand span,.app-shell.is-collapsed .app-navigation-project,.app-shell.is-collapsed .app-navigation-group h2,.app-shell.is-collapsed .app-navigation-settings{display:none}.app-shell.is-collapsed .app-navigation-header{border-bottom:0;justify-content:center;padding-left:0;padding-right:0}.app-shell.is-collapsed .app-navigation-collapse{flex-basis:24px;width:24px;height:24px;position:static}.app-shell.is-collapsed .app-navigation-menu{margin-top:14px}.app-shell.is-collapsed .app-navigation-link{border-left:0;justify-content:center;padding-left:5px;padding-right:5px;font-size:0}.app-shell.is-collapsed .app-navigation-submenu{display:none}.app-shell.is-collapsed .app-navigation-icon{color:#9fb9e7;display:flex}.app-shell.is-collapsed .app-navigation-link:hover .app-navigation-icon{color:#fff}.app-shell.is-collapsed .app-navigation-link.active .app-navigation-icon{color:#72d8e3}@media (max-width:960px){.app-main,.app-shell.is-collapsed .app-main{margin-left:0}.app-project-bar-inner{flex-direction:column;align-items:flex-start;gap:8px;padding:14px 22px 14px 64px}.app-project-bar-heading strong{white-space:normal}.app-project-bar nav{justify-content:flex-start}.app-project-bar-inner>.app-account-menu{align-self:flex-end;margin-left:0}.app-account-only-bar{padding-left:64px}.app-navigation{width:280px;transition:transform .18s;transform:translate(-100%);box-shadow:12px 0 35px #0a182a38}.app-navigation.is-open{transform:translate(0)}.app-navigation-toggle{z-index:70;border:1px solid var(--line);min-height:34px;color:var(--blue);cursor:pointer;background:#fff;border-radius:4px;align-items:center;padding:7px 10px;font-size:12px;font-weight:700;display:inline-flex;position:fixed;top:10px;left:12px}.app-navigation-scrim{z-index:55;cursor:pointer;background:#0a182a73;border:0;display:block;position:fixed;inset:0}.app-shell.is-collapsed .app-navigation{width:280px;padding-left:14px;padding-right:14px}.app-shell.is-collapsed .app-navigation-brand span,.app-shell.is-collapsed .app-navigation-project,.app-shell.is-collapsed .app-navigation-group h2,.app-shell.is-collapsed .app-navigation-settings{display:initial}.app-shell.is-collapsed .app-navigation-brand{flex:initial;display:flex}.app-shell.is-collapsed .app-navigation-brand>strong{display:initial}.app-shell.is-collapsed .app-navigation-brand .app-navigation-icon{display:none}.app-shell.is-collapsed .app-navigation-header{border-bottom:1px solid #dbe7ff2e;justify-content:space-between;padding-left:6px;padding-right:6px}.app-shell.is-collapsed .app-navigation-collapse{flex-basis:30px;width:30px;height:30px;position:static}.app-shell.is-collapsed .app-navigation-menu{margin-top:0}.app-shell.is-collapsed .app-navigation-link{justify-content:initial;border-left:3px solid #0000;padding-left:9px;padding-right:9px;font-size:13px}.app-shell.is-collapsed .app-navigation-submenu{display:grid}.app-shell.is-collapsed .app-navigation-icon{display:none}.app-main main>.topbar{padding-left:64px}}body[data-company-logo] .topbar>strong,body[data-company-logo] .portal-topbar>strong,body[data-company-logo] .app-navigation-brand>strong{color:#0000;background-image:var(--company-logo);letter-spacing:0;background-position:0;background-repeat:no-repeat;background-size:contain;flex:none;width:clamp(74px,9vw,120px);height:30px;font-size:0;display:inline-block;overflow:hidden}body[data-company-logo] .app-navigation-brand>strong{width:175px;height:47px}@media (min-width:961px){body[data-company-logo] .app-shell.is-collapsed .app-navigation-brand>strong{width:42px;height:32px}}@media (max-width:960px){body[data-company-logo] .topbar>strong{width:92px}}.settings-page{box-sizing:border-box;max-width:none;margin:0;padding:24px 20px 60px}.settings-page .grid{grid-template-columns:1fr}.settings-branding-card{gap:16px;min-height:0;display:grid}.settings-branding-card>div:first-child p:not(.eyebrow){max-width:660px}.settings-branding-card h2{margin:0 0 8px}.settings-branding-card .success{color:#146338;background:#e4f8ea;border:1px solid #a7ddbc;border-radius:5px;margin:0;padding:10px 12px;font-size:13px;font-weight:700}.settings-branding-preview{border:1px solid var(--line);background:var(--navy);border-radius:6px;justify-content:space-between;align-items:center;gap:18px;min-height:86px;padding:16px 18px;display:flex}.settings-branding-preview img{object-fit:contain;object-position:left center;width:min(240px,55%);height:64px;display:block}.settings-branding-preview>strong{color:#72d8e3;letter-spacing:.08em;font-size:24px}.settings-branding-preview span{color:#cfe1ff;text-align:right;max-width:250px;font-size:11px;line-height:1.4}.settings-branding-form{gap:8px;display:grid}.settings-branding-form label{color:var(--ink);gap:7px;font-size:12px;font-weight:700;display:grid}.settings-branding-form input[type=file]{box-sizing:border-box;border:1px solid var(--line);width:100%;min-height:40px;color:var(--ink);font:inherit;background:#fff;border-radius:4px;padding:8px 10px}.settings-branding-form input[type=file]::file-selector-button{box-sizing:border-box;border:1px solid var(--line);min-height:36px;color:var(--blue);font:inherit;cursor:pointer;background:#fff;border-radius:4px;margin:0 10px 0 0;padding:0 12px;font-size:13px;font-weight:700}.settings-branding-form input[type=file]::file-selector-button:hover{border-color:var(--blue);background:#f5f8fc}.settings-branding-form .form-help{margin:0}.settings-branding-form button{background:var(--blue);color:#fff;min-height:38px;font:inherit;cursor:pointer;border:0;border-radius:4px;justify-self:start;margin-top:2px;padding:10px 16px;font-weight:700}.settings-branding-remove{color:#8f2435;min-height:36px;font:inherit;cursor:pointer;background:#fff;border:1px solid #e7a9b5;border-radius:4px;justify-self:start;margin:0;padding:8px 12px;font-weight:700}.settings-email-card{gap:16px;min-height:0;display:grid}.settings-email-test-form{border-top:1px solid var(--line);gap:10px;padding-top:16px;display:grid}.settings-email-test-form h3{color:var(--ink);margin:0;font-size:15px}.settings-email-test-form label{color:var(--ink);gap:7px;font-size:12px;font-weight:700;display:grid}.settings-email-test-form input{box-sizing:border-box;border:1px solid var(--line);width:100%;min-height:38px;color:var(--ink);font:inherit;background:#fff;border-radius:4px;padding:8px 10px}.settings-email-test-form button{background:var(--blue);color:#fff;min-height:38px;font:inherit;cursor:pointer;border:0;border-radius:4px;justify-self:start;margin-top:2px;padding:10px 16px;font-weight:700}.settings-email-card h2{margin:0 0 8px}.settings-email-form{gap:14px;display:grid}.settings-email-form label:not(.checkbox-label){color:var(--ink);gap:7px;font-size:12px;font-weight:700;display:grid}.settings-email-form input:not([type=checkbox]),.settings-email-form select{box-sizing:border-box;border:1px solid var(--line);width:100%;min-height:38px;color:var(--ink);font:inherit;background:#fff;border-radius:4px;padding:8px 10px}.settings-email-form .form-row{grid-template-columns:1fr 1fr;gap:12px}.settings-email-form .checkbox-label{color:var(--ink);align-items:center;gap:8px;font-size:13px;font-weight:700;display:flex}.settings-email-form .checkbox-label input{width:16px;height:16px;accent-color:var(--blue);flex:none;margin:0}.settings-email-form .form-help{margin:0}.settings-email-form button{background:var(--blue);color:#fff;min-height:38px;font:inherit;cursor:pointer;border:0;border-radius:4px;justify-self:start;margin-top:2px;padding:10px 16px;font-weight:700}.settings-email-audit-card{gap:16px;min-height:0;display:grid}.settings-email-audit-card h2{margin:0 0 8px}.settings-email-audit-list{gap:8px;margin:0;padding:0;list-style:none;display:grid}.settings-email-audit-list li{border:1px solid var(--line);background:var(--wash);border-radius:5px;justify-content:space-between;align-items:baseline;gap:14px;padding:10px 12px;display:flex}.settings-email-audit-list strong{color:var(--ink);text-transform:capitalize;font-size:12px}.settings-email-audit-list span{color:var(--muted);text-align:right;font-size:12px}.staff-password-controls{border:1px solid var(--line);background:var(--wash);border-radius:5px;gap:8px;margin:2px 0 10px;padding:12px;display:grid}.staff-password-controls .form-help{color:var(--muted);margin:0}.staff-password-controls .button-secondary{cursor:pointer}.staff-password-button-row{flex-wrap:wrap;gap:8px;display:flex}@media (max-width:760px){.settings-email-form .form-row{grid-template-columns:1fr}.settings-email-audit-list li{flex-direction:column;align-items:flex-start}.settings-email-audit-list span{text-align:left}}.settings-navigation-card{gap:16px;min-height:0;display:grid}.settings-navigation-card h2{margin:0 0 8px}.settings-navigation-toggle{color:var(--ink);align-items:flex-start;gap:9px;font-size:13px;font-weight:700;display:flex}.settings-navigation-toggle input{width:16px;height:16px;accent-color:var(--blue);flex:none;margin:0}.settings-register-intro{color:var(--muted);margin:0 0 18px;font-size:13px}.settings-register-panel{overflow-x:auto}.settings-register-table{min-width:860px}.settings-register-table th,.settings-register-table td{vertical-align:top}.settings-register-table td:first-child{color:var(--muted);font-weight:700}.settings-register-table td:nth-child(2){color:var(--ink);font-weight:700}.settings-register-table td:nth-child(3){color:var(--muted);line-height:1.4}.settings-register-table td:nth-child(4){white-space:nowrap}.settings-register-table td:last-child{white-space:nowrap;width:1%}.settings-register-open{box-sizing:border-box;border:1px solid var(--line);min-height:34px;color:var(--blue);border-radius:4px;align-items:center;margin:0;padding:7px 11px;font-size:12px;font-weight:700;text-decoration:none;display:inline-flex}.settings-register-open:hover{border-color:var(--blue);background:var(--blue-soft,#eef3ff)}.settings-register-status{color:#40506a;background:#e4e9f1;border-radius:99px;align-items:center;min-height:24px;padding:4px 8px;font-size:11px;font-weight:700;display:inline-flex}.settings-register-status.enabled{color:#146338;background:#c9f6dd}.settings-drawer{z-index:90;justify-content:flex-end;display:flex;position:fixed;inset:0}.settings-drawer-backdrop{background:#0a182a85;position:absolute;inset:0}.settings-drawer-panel{background:#fff;border-top:0;border-bottom:0;border-right:0;border-radius:0;flex-direction:column;width:min(100%,620px);height:100dvh;display:flex;position:relative;overflow:hidden;box-shadow:-18px 0 55px #0a182a47}.settings-drawer-header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-start;gap:18px;padding:24px 26px 18px;display:flex}.settings-drawer-header h2{margin:0 0 7px;font-size:25px}.settings-drawer-header p:not(.eyebrow){max-width:500px;color:var(--muted);margin:0;line-height:1.4}.settings-drawer-close{border:1px solid var(--line);width:34px;height:34px;color:var(--ink);border-radius:4px;flex:0 0 34px;place-items:center;font-size:26px;line-height:1;text-decoration:none;display:grid}.settings-drawer-content{gap:18px;padding:22px 26px 36px;display:grid;overflow-y:auto}.settings-drawer-content>.card{min-height:0;margin:0}.settings-drawer-content .settings-branding-preview{margin:0}.settings-drawer-content .settings-email-audit-card{padding-top:18px}.settings-navigation-card-drawer{background:0 0;border:0;padding:0}.settings-drawer-info{gap:10px;padding:4px 0;display:grid}.settings-drawer-info h3{margin:0;font-size:20px}.settings-drawer-info p:not(.eyebrow){color:var(--muted);margin:0;line-height:1.5}.settings-drawer-gst-link{box-sizing:border-box;background:var(--blue);color:#fff;border-radius:4px;align-items:center;width:max-content;min-height:38px;margin-top:4px;padding:0 13px;font-size:13px;font-weight:700;text-decoration:none;display:inline-flex}.settings-drawer-gst-link:hover{filter:brightness(.94)}@media (max-width:760px){.settings-page .grid{grid-template-columns:1fr}.settings-branding-preview{flex-direction:column;align-items:flex-start}.settings-branding-preview img{width:240px;max-width:100%}.settings-branding-preview span{text-align:left;max-width:none}.settings-drawer-panel{width:100%}.settings-drawer-header{padding:20px 22px 16px}.settings-drawer-content{padding:18px 22px 30px}}.safety-project-content{box-sizing:border-box;width:100%;max-width:1200px;margin:0 auto;padding:0 20px 60px}.safety-project-overview-panels{grid-template-columns:1fr;gap:14px;margin-bottom:18px;display:grid}.safety-project-overview-panels>.safety-induction-summary,.safety-project-overview-panels>.safety-review-history{box-sizing:border-box;border:1px solid var(--line);background:#fff;border-radius:8px;min-width:0;max-width:none;min-height:124px;margin:0;padding:18px 20px}.safety-project-overview-panels>.safety-induction-summary{align-items:flex-start}.safety-project-overview-panels>.safety-induction-summary h2,.safety-project-overview-panels>.safety-review-history h2{margin:0;font-size:18px;line-height:1.25}.safety-project-overview-panels>.safety-induction-summary p,.safety-project-overview-panels>.safety-review-history p{margin:7px 0 0;font-size:13px;line-height:1.45}.safety-project-overview-panels>.safety-review-history{flex-direction:column;justify-content:flex-start;display:flex}.safety-project-overview-panels>.safety-review-history ul{margin:9px 0 0}.safety-project-content>.safety-layout{box-sizing:border-box;grid-template-columns:1fr;align-items:stretch;gap:14px;width:100%;max-width:none;margin:0;padding:0}.safety-project-content>.safety-layout>*{min-width:0}.safety-project-content>.safety-layout>.safety-note{grid-template-columns:repeat(3,minmax(0,1fr));align-self:stretch;gap:0;display:grid}.safety-project-content>.safety-layout>.safety-note>.safety-note-section{min-width:0}.safety-project-content>.safety-layout>.safety-note>.safety-note-section+.safety-note-section{border-left:1px solid var(--line);margin-left:20px;padding-left:20px}.safety-project-content>.safety-layout>.safety-note .safety-note-section h2{margin:0 0 10px;font-size:20px;line-height:1.25}.safety-project-content>.safety-layout>.safety-note .safety-note-section p{margin:0}.safety-project-content>.safety-layout>.safety-note .safety-note-section>a{margin-top:10px;display:block}.safety-project-content>.safety-layout .safety-note h2{font-size:20px;line-height:1.25}.safety-project-content>.safety-layout .safety-note hr{margin:12px 0}.safety-page>.safety-form-error{box-sizing:border-box;max-width:1200px;margin:18px auto;padding-left:20px;padding-right:20px}.project-health-safety-summary{box-sizing:border-box;max-width:1200px;margin-bottom:18px;padding-left:20px;padding-right:20px}.risk-filter .risk-new-item{margin-left:auto}@media (max-width:900px){.safety-project-overview-panels,.safety-project-content>.safety-layout{grid-template-columns:1fr}.safety-project-content>.safety-layout>.safety-note{grid-template-columns:1fr;align-self:start;gap:14px}.safety-project-content>.safety-layout>.safety-note>.safety-note-section+.safety-note-section{border-left:0;border-top:1px solid var(--line);margin-left:0;padding-top:14px;padding-left:0}}@media (max-width:760px){.safety-project-content{padding-left:22px;padding-right:22px}.safety-project-overview-panels>.safety-induction-summary{flex-direction:column;align-items:flex-start}.safety-project-overview-panels>.safety-induction-summary .button-secondary{margin-top:14px}.project-health-safety-summary{padding-left:22px;padding-right:22px}.safety-page>.safety-form-error{margin-left:22px;margin-right:22px;padding-left:0;padding-right:0}.risk-filter .risk-new-item{margin-left:0}}.file-list-heading{margin-bottom:14px}.file-filter{flex-wrap:wrap;justify-content:flex-start;align-items:center;gap:8px;width:100%;margin:0 0 16px;display:flex}.file-filter-actions{margin-left:auto}.file-filter-actions .file-library-link,.file-filter-actions .file-upload-button{white-space:nowrap}@media (max-width:900px){.file-filter-actions{margin-left:0}}@media (max-width:760px){.file-filter-actions{justify-content:flex-start;width:100%}}@media (min-width:1201px){.time-clock-register-page .time-filter{flex-wrap:nowrap;align-items:center;gap:8px;width:100%;display:flex}.time-clock-register-page .time-filter>select:first-child{flex:280px;width:auto;min-width:240px}.time-clock-register-page .time-filter>input[name=query]{flex:0 170px;width:170px;min-width:150px}.time-clock-register-page .time-filter .time-date-filter{flex:0 132px;gap:4px}.time-clock-register-page .time-filter .time-date-filter input{width:112px;min-width:0}.time-clock-register-page .time-filter>select[name=status]{flex:0 125px;width:125px;min-width:110px}.time-clock-register-page .time-filter>.register-filter-apply-actions{flex-wrap:nowrap;flex:none;align-items:center;gap:8px;margin-left:0;display:flex}.time-clock-register-page .time-filter>.register-filter-actions.time-clock-filter-actions{flex-wrap:nowrap;flex:none;align-items:center;gap:8px;margin-left:auto;display:flex}.time-clock-register-page .time-filter>.register-filter-actions .record-limit select{width:64px;min-width:64px}}@media (max-width:1200px){.time-clock-register-page .time-filter>.register-filter-actions.time-clock-filter-actions{flex-basis:auto;margin-left:0}}.time-weekly-register-page .time-filter{flex-wrap:wrap;align-items:center;gap:8px;width:100%;display:flex}.time-weekly-register-page .time-filter>select{flex:0 400px;width:400px;min-width:260px;max-width:100%}.time-weekly-register-page .time-filter>input[name=query]{flex:0 220px;width:220px;min-width:180px}.time-weekly-register-page .time-filter>select[name=status]{flex:0 170px;width:170px;min-width:150px}.time-weekly-register-page .time-filter>.register-filter-apply-actions{align-items:center;gap:8px;display:flex}.time-weekly-register-page .time-filter>.register-filter-actions{align-items:center;gap:8px;margin-left:auto;display:flex}.time-weekly-register-page .time-filter .record-limit select{width:64px;min-width:64px}.time-weekly-register-page .time-filter>.time-weekly-back{margin-left:auto}@media (min-width:1500px){.time-weekly-register-page .time-filter{flex-wrap:nowrap}.time-weekly-register-page .time-filter>.register-filter-apply-actions,.time-weekly-register-page .time-filter>.register-filter-actions{flex:none}}.time-weekly-register-page .time-approval .table-panel{overflow-x:auto}.time-weekly-register-page .time-approval table{min-width:1400px}.time-weekly-register-page .time-approval th,.time-weekly-register-page .time-approval th a{white-space:nowrap}.time-weekly-register-page .time-approval{background:0 0;border:0;margin:0 0 22px;padding:0}.time-weekly-register-page .time-approval-intro{margin:0 0 14px}.time-weekly-register-page .time-approval-intro h3{margin:0 0 5px;font-size:18px}.time-weekly-register-page .time-approval-intro p{color:var(--muted);margin:0;font-size:13px}.time-weekly-register-page .time-approval-cell{text-align:left}.time-weekly-register-page .time-approval-state{text-align:center;white-space:nowrap;justify-content:center;align-items:center;min-width:148px;display:inline-flex}.time-approval-error{color:#8f2435;background:#fff1f3;border:1px solid #e7a9b5;border-radius:5px;margin:0 0 14px;padding:10px 12px;font-size:13px;font-weight:700}.time-approval-error a{color:inherit;text-decoration:underline}.time-weekly-register-page .register-columns-toolbar{justify-content:flex-end;width:100%!important}.time-weekly-register-page .register-columns-controls{margin-left:auto}.time-weekly-register-page .register-columns-trigger{border:1px solid var(--line);color:var(--blue);background:#fff}.time-weekly-register-page .register-columns-trigger:hover{background:var(--blue-soft,#eef3ff)}.register-columns-menu .register-column-move{border:1px solid var(--line);color:var(--ink);background:#fff}.register-columns-menu .register-column-move:not(:disabled):hover{background:var(--blue-soft,#eef3ff)}@media (max-width:900px){.time-weekly-register-page .time-filter>.time-weekly-back,.time-weekly-register-page .time-filter>.register-filter-actions{margin-left:0}}.time-weekly-details-register-page .catalogue-header,.time-weekly-details-register-page .todo-list{box-sizing:border-box;max-width:none;padding-left:20px;padding-right:20px}.time-weekly-details-register-page .time-weekly-details-filter{flex-wrap:wrap;align-items:center;gap:8px;width:100%;margin:0 0 16px;display:flex}.time-weekly-details-register-page .time-weekly-details-filter>input[name=query]{width:220px;min-width:180px}.time-weekly-details-register-page .time-weekly-details-filter>select[name=status]{width:170px;min-width:150px}.time-weekly-details-register-page .time-weekly-details-filter .register-filter-apply-actions{align-items:center;gap:8px;display:flex}.time-weekly-details-register-page .time-weekly-details-filter .register-filter-actions{margin-left:auto}.time-weekly-details-register-page .time-weekly-details-filter .record-limit select{width:64px;min-width:64px}.time-weekly-details-register-page .table-panel{overflow-x:auto}.time-weekly-details-register-page table{min-width:1080px}.time-weekly-details-register-page th,.time-weekly-details-register-page th a{white-space:nowrap}@media (max-width:900px){.time-weekly-details-register-page .catalogue-header,.time-weekly-details-register-page .todo-list{padding-left:22px;padding-right:22px}.time-weekly-details-register-page .time-weekly-details-filter .register-filter-actions{margin-left:0}}.time-entry-edit-overlay input:focus{border-color:var(--blue);outline-offset:1px;outline:3px solid #1457d924}.time-entry-edit-overlay fieldset.time-entry-datetime{border:0;min-width:0;margin:0;padding:0}.time-entry-edit-overlay fieldset.time-entry-datetime legend{color:var(--ink);margin:0 0 6px;padding:0;font-size:13px;font-weight:700}.time-entry-edit-overlay .time-entry-datetime-fields{grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);gap:10px;display:grid}.time-entry-edit-overlay .time-entry-datetime-fields label{color:var(--muted);gap:5px;font-size:12px;font-weight:600}.time-entry-edit-overlay input[type=date],.time-entry-edit-overlay .time-entry-datetime-fields select{box-sizing:border-box;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;width:100%;min-height:40px;color:var(--ink);font:inherit;font-variant-numeric:tabular-nums;background:#fff}.time-entry-edit-overlay input[type=date]::-webkit-calendar-picker-indicator{opacity:.75;cursor:pointer}.time-entry-edit-overlay .time-entry-datetime-fields select:focus{border-color:var(--blue);outline-offset:1px;outline:3px solid #1457d924}.trade-assign-error{color:#8f2435;background:#fff1f3;border:1px solid #e7a9b5}.purchase-order-form>select,.purchase-order-form>input,.purchase-order-form>button,.purchase-order-form>.new-supplier-bill-link,.purchase-order-form .po-date-field input{box-sizing:border-box;height:36px;min-height:36px}.purchase-order-form>button{white-space:nowrap;justify-content:center;align-items:center;padding:0 12px;line-height:1;display:inline-flex}.purchase-order-form>.new-supplier-bill-link{padding:0 12px}.budget-completion-at{white-space:nowrap;font-variant-numeric:tabular-nums}.budget-line-locked{color:var(--muted);white-space:nowrap;font-size:11px;font-weight:700}.app-shell:has(.bid-register-page) .app-navigation-project select{height:36px;min-height:36px;padding:8px 10px}.dashboard-metrics{margin-top:36px;padding-left:20px;padding-right:20px}.dashboard-alerts,.dashboard-table,.dashboard-links{padding-left:20px;padding-right:20px}.dashboard-alerts{grid-template-columns:repeat(5,minmax(0,1fr))}@media (max-width:1100px){.dashboard-alerts{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-alerts>div{grid-column:1/-1}}.auth-shell{box-sizing:border-box;background:linear-gradient(135deg,#f5f8fd 0%,#fff 65%);place-items:center;min-height:100vh;padding:32px 20px;display:grid}.auth-page{width:100%}.auth-card{box-sizing:border-box;border:1px solid var(--line);background:#fff;border-radius:10px;width:min(100%,430px);margin:0 auto;padding:32px;box-shadow:0 18px 50px #0a182a1f}.auth-card h1{letter-spacing:-.03em;margin:0 0 10px;font-size:34px}.auth-intro{color:var(--muted);margin:0 0 22px;line-height:1.5}.auth-form{gap:15px;display:grid}.auth-form label{color:var(--ink);gap:6px;font-size:13px;font-weight:700;display:grid}.auth-form input{box-sizing:border-box;border:1px solid var(--line);width:100%;min-height:42px;color:var(--ink);font:inherit;background:#fff;border-radius:4px;padding:9px 10px}.auth-form input:focus{border-color:var(--blue);outline-offset:1px;outline:3px solid #1457d924}.auth-form .button{min-height:40px;margin-top:3px}.auth-form .button:disabled{opacity:.5;cursor:not-allowed}.auth-back-link{box-sizing:border-box;justify-content:center;align-items:center;min-height:40px;margin-top:12px;padding:0 13px;display:inline-flex}.auth-card .form-error,.auth-card .form-help{border-radius:4px;margin:0 0 18px;padding:10px 12px;font-size:13px;line-height:1.4}.auth-card .form-error{color:#8f2435;background:#fff1f3;border:1px solid #e7a9b5}.auth-card .form-help{color:#705b18;background:#fff8dc;border:1px solid #ead39a}@media (max-width:560px){.auth-shell{padding:20px 16px}.auth-card{padding:24px 20px}}.contract-document-cover>h3{font-size:24px;line-height:1.2}.contract-document-cover .proposal-document-contract-price{font-size:24px;line-height:1.2!important}.contract-document-cover{text-align:center;border-radius:10px;justify-content:center;align-items:center;gap:0;overflow:hidden}.contract-cover-logo{box-sizing:border-box;place-items:center;width:min(330px,100%);min-height:150px;margin:0 auto;display:grid}.contract-cover-logo img{object-fit:contain;width:auto;max-width:100%;height:auto;max-height:180px;display:block}.contract-cover-logo span{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;font-size:14px;font-weight:700;display:block}.contract-cover-logo strong{color:var(--blue);margin-top:6px;font-size:15px;display:block}.contract-cover-details{color:var(--ink);gap:12px;margin-top:130px;font-size:15px;line-height:1.45;display:grid}.contract-cover-details p{margin:0}.contract-cover-details p:nth-child(3){margin-top:4px}.contract-cover-details .contract-cover-project-type,.contract-cover-details strong{font-weight:700}@media (max-width:480px){.contract-cover-logo{min-height:120px}.contract-cover-details{margin-top:80px;font-size:14px}}.contract-document .contract-cover-logo{border-top:0;margin-top:0;padding-top:0}.contract-document .contract-cover-details{border-top:0;margin-top:130px;padding-top:0}.contract-document .contract-cover-details strong{font-size:inherit;margin:0;display:inline}.contract-document .contract-cover-details span{color:inherit;font-size:inherit;display:inline}.contract-document .contract-document-cover{box-shadow:none;border:0;margin-bottom:-12px}.contract-document-frame{box-sizing:border-box;background:#fff;border:1px solid #d8e0e8;border-radius:10px;gap:24px;display:grid;overflow:hidden}.contract-document .contract-document-frame{margin-top:0;padding-top:0}.contract-document-frame>.proposal-document-scope{margin-left:22px;margin-right:22px}.contract-document-frame>.contract-document-cover{border:1px solid #d8e0e8;margin-bottom:-4px;box-shadow:0 6px 24px #182f4910}button.submit-button:disabled{color:#637184!important;opacity:1!important;cursor:not-allowed!important;box-shadow:none!important;background:#dbe3ec!important;border:1px solid #c4cedb!important}.document-builder-page{padding-bottom:60px}.document-builder-save-banner{max-width:1400px;margin:0 auto;padding:0 20px}.document-builder-save-banner .save-notice{margin:0 0 14px;padding:10px 20px}.document-builder-shell{grid-template-columns:minmax(340px,460px) minmax(0,1fr);align-items:start;gap:20px;max-width:1400px;margin:24px auto 0;padding:0 20px;display:grid}.document-builder-editor-panel,.document-builder-preview-panel{border:1px solid var(--line);background:#fff;border-radius:8px;min-width:0}.document-builder-editor-panel{padding:20px}.document-builder-panel-heading,.document-builder-preview-heading{justify-content:space-between;align-items:flex-start;gap:14px;margin-bottom:18px;display:flex}.document-builder-panel-heading h2,.document-builder-preview-heading h2{margin:3px 0 5px;font-size:22px}.document-builder-panel-heading p:not(.eyebrow),.document-builder-preview-heading span{color:var(--muted);margin:0;font-size:13px;line-height:1.45}.document-builder-profile-form{background:#f7faff;border:1px solid #d8e3ef;border-radius:6px;margin:0 0 18px;padding:12px}.document-builder-profile-form label{margin:0 0 8px}.document-builder-profile-form select{box-sizing:border-box;border:1px solid var(--line);width:100%;color:var(--ink);font:inherit;background:#fff;border-radius:4px;margin-top:6px;padding:9px 10px;display:block}.document-builder-profile-form .button-secondary{min-height:34px}.document-builder-profile-form .form-help{margin:8px 0 0}.document-builder-editor-panel label{color:var(--ink);margin:13px 0;font-size:12px;font-weight:700;display:block}.document-builder-editor-panel input,.document-builder-editor-panel textarea{box-sizing:border-box;border:1px solid var(--line);width:100%;color:var(--ink);font:inherit;background:#fff;border-radius:4px;margin-top:6px;padding:9px 10px;display:block}.document-builder-editor-panel textarea{resize:vertical;min-height:92px;line-height:1.45}.document-builder-editor-panel input:disabled,.document-builder-editor-panel textarea:disabled{color:#6f7d8d;background:#f4f6f8}.document-builder-title-field{color:var(--ink);margin:13px 0;font-size:12px;font-weight:700}.document-builder-title-field>span{display:block}.document-builder-title-field .document-builder-rich-text{margin-top:6px}.document-builder-title-field .document-builder-rich-text-editor{min-height:74px;font-size:15px;line-height:1.35}.document-builder-section-list{gap:10px;margin-top:18px;display:grid}.document-builder-section-card{border:1px solid var(--line);background:#fbfcfe;border-radius:6px;padding:12px}.document-builder-section-card header{color:var(--blue);letter-spacing:.04em;text-transform:uppercase;justify-content:space-between;align-items:center;gap:8px;font-size:11px;font-weight:800;display:flex}.document-builder-section-card header div{gap:3px;display:flex}.document-builder-section-card header button{border:1px solid var(--line);width:26px;height:26px;color:var(--blue);cursor:pointer;background:#fff;border-radius:4px;padding:0}.document-builder-section-card header button:disabled{color:#aab4c0;cursor:not-allowed}.document-builder-section-card label{margin-bottom:0}.document-builder-section-wording{margin-top:13px}.document-builder-section-wording>span{color:var(--ink);font-size:12px;font-weight:700;display:block}.document-builder-rich-text{border:1px solid var(--line);background:#fff;border-radius:4px;margin-top:6px;overflow:hidden}.document-builder-rich-text-toolbar{border-bottom:1px solid var(--line);background:#f7f9fc;flex-wrap:wrap;align-items:center;gap:5px;padding:7px 8px;display:flex}.document-builder-rich-text-toolbar button{border:1px solid var(--line);min-height:28px;color:var(--blue);font:inherit;cursor:pointer;background:#fff;border-radius:4px;padding:4px 9px;font-size:12px}.document-builder-rich-text-toolbar button:hover:not(:disabled){border-color:var(--blue);background:#eef4ff}.document-builder-rich-text-toolbar button:disabled{color:#aab4c0;cursor:not-allowed}.document-builder-rich-text-toolbar select{border:1px solid var(--line);min-height:28px;color:var(--blue);font:inherit;cursor:pointer;background:#fff;border-radius:4px;padding:4px 26px 4px 8px;font-size:12px}.document-builder-rich-text-toolbar select:disabled{color:#aab4c0;cursor:not-allowed}.document-builder-rich-text-editor{min-height:112px;color:var(--ink);font:inherit;outline:0;padding:10px;font-size:13px;font-weight:400;line-height:1.45}.document-builder-rich-text-editor:focus{box-shadow:inset 0 0 0 2px #dbe8ff}.document-builder-rich-text-editor p,.document-builder-rich-text-editor h3{margin:0 0 8px}.document-builder-rich-text-editor p:last-child,.document-builder-rich-text-editor h3:last-child{margin-bottom:0}.document-builder-rich-text-editor h3{color:var(--ink);font-size:16px;line-height:1.3}.document-builder-rich-text-editor ul,.document-builder-rich-text-editor ol{margin:0 0 8px;padding-left:22px}.document-builder-rich-text-editor li{margin:2px 0}.document-builder-rich-text-editor font[size="2"]{font-size:.9em}.document-builder-rich-text-editor font[size="3"]{font-size:1em}.document-builder-rich-text-editor font[size="4"]{font-size:1.2em}.document-builder-rich-text-editor font[size="5"]{font-size:1.45em}.document-builder-section-card .form-help{margin:8px 0 0}.document-builder-pricing-toggle{border:1px solid var(--line);cursor:pointer;background:#f8fbff;border-radius:4px;align-items:flex-start;gap:9px;padding:10px 12px;margin:13px 0 0!important;display:flex!important}.document-builder-pricing-toggle input{height:16px;accent-color:var(--blue);flex:none;margin:2px 0 0;width:16px!important;padding:0!important}.document-builder-pricing-toggle>span{gap:2px;margin:0;display:grid}.document-builder-pricing-toggle strong{font-size:12px}.document-builder-pricing-toggle small{color:var(--muted);font-size:11px;font-weight:400;line-height:1.4}.document-builder-add-actions,.document-builder-actions{flex-wrap:wrap;align-items:center;gap:8px;margin-top:16px;display:flex}.document-builder-add-actions span{color:var(--muted);margin-right:2px;font-size:12px;font-weight:700}.document-builder-add-actions button{border:1px solid var(--line);color:var(--blue);cursor:pointer;background:#fff;border-radius:4px;padding:7px 10px;font-size:12px;font-weight:700}.document-builder-actions .button,.document-builder-actions .button-secondary{box-sizing:border-box;justify-content:center;align-items:center;height:38px;min-height:38px;margin:0;padding:0 16px;line-height:1;display:inline-flex}.document-builder-preview-panel{background:#f1f4f8;padding:18px;position:sticky;top:20px}.document-builder-preview-heading{margin:0 0 12px}.document-builder-preview-heading h2{white-space:pre-line}.document-builder-preview-panel iframe{background:#edf2f7;border:1px solid #d7e0e9;width:100%;min-height:1100px;display:block}.document-builder-versions{border:1px solid var(--line);background:#fff;border-radius:8px;max-width:1400px;margin:22px auto 0;padding:20px}.document-builder-versions h2{margin:3px 0 14px;font-size:20px}.document-builder-version-list{gap:8px;display:grid}.document-builder-version-list>div{border-top:1px solid var(--line);grid-template-columns:130px minmax(0,1fr) auto;align-items:center;gap:14px;padding:10px 0;font-size:13px;display:grid}.document-builder-version-list span{color:var(--muted)}.document-builder-version-list a{color:var(--blue);font-weight:700;text-decoration:none}.document-builder-empty-actions{flex-wrap:wrap;gap:8px;display:flex}.contract-milestones-panel{border:1px solid var(--line);background:#fff;border-radius:8px;gap:16px;margin:24px 0 0;padding:22px;display:grid}.contract-milestones-heading{justify-content:space-between;align-items:flex-start;gap:20px;display:flex}.contract-milestones-heading h2{margin:3px 0 6px;font-size:22px}.contract-milestones-heading p:not(.eyebrow){max-width:760px;color:var(--muted);margin:0;font-size:13px;line-height:1.45}.contract-milestones-summary{color:var(--muted);flex-wrap:wrap;gap:8px;font-size:12px;display:flex}.contract-milestones-summary span{border:1px solid var(--line);background:var(--wash);border-radius:999px;padding:5px 9px}.contract-milestones-table{width:100%}.contract-milestones-table th,.contract-milestones-table td{vertical-align:top}.contract-milestones-table td>span,.contract-milestones-table td>small{display:block}.contract-milestones-table td small{color:var(--muted);margin-top:4px}.contract-milestones-table td:nth-child(3){min-width:220px;max-width:360px;line-height:1.4}.contract-milestones-table th:nth-child(5),.contract-milestones-table td:nth-child(5){white-space:nowrap;min-width:110px}.milestone-evidence{font-weight:700;color:#8a5a00!important}.milestone-update-form{gap:5px;min-width:145px;display:grid}.milestone-update-form input{box-sizing:border-box;border:1px solid var(--line);width:100%;min-height:32px;color:var(--ink);font:inherit;background:#fff;border-radius:4px;padding:6px 8px;font-size:12px}.milestone-update-form button{border:1px solid var(--line);min-height:30px;color:var(--blue);cursor:pointer;background:#fff;border-radius:4px;justify-self:start;padding:6px 9px;font-size:12px;font-weight:700}.milestone-actions{flex-wrap:wrap;gap:5px;min-width:120px;display:flex}.milestone-actions form{margin:0}.milestone-actions button{border:1px solid var(--line);min-height:30px;color:var(--blue);cursor:pointer;background:#fff;border-radius:4px;padding:6px 9px;font-size:12px;font-weight:700}.milestone-status{color:#536579;background:#edf2f7;border-radius:999px;width:max-content;padding:4px 8px;font-size:11px;font-weight:800;display:inline-flex!important}.milestone-status.ready{color:#80631b;background:#fff4d9}.milestone-status.achieved{color:#1e7046;background:#e4f5eb}.milestone-status.invoiced{color:#2659a7;background:#e6efff}.milestone-status.paid{color:#14613a;background:#d9f2e5}.milestone-status.waived{color:#775866;background:#f1e9ed}@media (max-width:900px){.contract-milestones-heading{flex-direction:column}.contract-milestones-table{min-width:920px}.contract-milestones-panel .table-panel{overflow-x:auto}}.proposal-actions form{margin:0;display:inline-flex}.topbar-links{align-items:center;gap:14px;margin-left:auto;display:inline-flex}.programme-phase-page .catalogue-header p:not(.eyebrow){max-width:760px}.programme-phase-register{max-width:1180px;margin:22px auto 0;padding:0 20px 56px}.programme-phase-toolbar{justify-content:space-between;align-items:flex-end;gap:18px;margin-bottom:18px;display:flex}.programme-project-picker{color:var(--ink);margin:0;font-size:12px;font-weight:700;display:block}.programme-project-picker select{min-width:320px;margin-top:6px;display:block}.programme-project-form{align-items:flex-end;gap:8px;display:flex}.programme-phase-toolbar .form-help{margin:6px 0 0}.programme-phase-list{gap:10px;display:grid}.programme-phase-card{border:1px solid var(--line);background:#fff;border-radius:8px;grid-template-columns:42px minmax(260px,2.4fr) minmax(170px,1.4fr) minmax(86px,.7fr) minmax(88px,.7fr) minmax(88px,.7fr) max-content max-content;align-items:center;gap:14px;padding:15px 18px;display:grid}.programme-phase-order{width:32px;height:32px;color:var(--blue);background:#e8f0f8;border-radius:50%;place-items:center;font-weight:800;display:grid}.programme-phase-main{min-width:0}.programme-phase-main h2{overflow-wrap:anywhere;margin:2px 0 4px;font-size:18px;line-height:1.2}.programme-phase-main>p:not(.eyebrow){color:var(--muted);overflow-wrap:anywhere;margin:0;font-size:12px;line-height:1.35}.programme-phase-cell{min-width:0;color:var(--muted);gap:3px;font-size:12px;line-height:1.35;display:grid}.programme-phase-cell strong{color:var(--ink);text-transform:uppercase;letter-spacing:.04em;font-size:11px}.programme-phase-cell span{overflow-wrap:anywhere}.programme-phase-heading{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.programme-phase-heading h2{margin:2px 0 8px;font-size:18px}.programme-phase-body>p{color:var(--muted);margin:0 0 12px;line-height:1.45}.programme-phase-meta{color:var(--muted);flex-wrap:wrap;gap:12px 26px;font-size:12px;display:flex}.programme-phase-meta span{gap:2px;display:grid}.programme-phase-meta strong{color:var(--ink);text-transform:uppercase;letter-spacing:.04em;font-size:11px}.programme-phase-status{color:var(--blue);text-transform:capitalize;white-space:nowrap;background:#e8f0f8;border-radius:999px;padding:4px 8px;font-size:11px;font-weight:800;display:inline-flex}.programme-phase-status.active{color:#1e7046;background:#e4f5eb}.programme-phase-status.on_hold{color:#80631b;background:#fff4d9}.programme-phase-status.complete{color:#506273;background:#e7edf2}.programme-phase-actions{justify-self:end;align-items:center;gap:7px;display:flex}.programme-phase-reorder{align-items:center;gap:4px;display:flex}.programme-phase-reorder form{margin:0}.programme-phase-reorder-button{justify-content:center;min-width:32px;min-height:32px;padding:6px 8px;font-size:15px;line-height:1}.programme-phase-reorder-button:disabled{cursor:not-allowed;opacity:.4}.budget-phase-label{color:var(--blue);font-weight:700}@media (max-width:1100px) and (min-width:721px){.programme-phase-card{grid-template-columns:36px minmax(220px,2fr) minmax(145px,1.25fr) minmax(70px,.7fr) minmax(76px,.7fr) minmax(76px,.7fr) max-content max-content;gap:10px;padding-left:14px;padding-right:14px}}@media (max-width:720px){.programme-phase-toolbar{flex-direction:column;align-items:stretch}.programme-project-picker select{width:100%;min-width:0}.programme-phase-card{grid-template-columns:32px minmax(0,1fr)}.programme-phase-main,.programme-phase-cell,.programme-phase-status,.programme-phase-actions{grid-column:2;justify-self:start}.programme-phase-heading{flex-direction:column;gap:4px}.topbar-links{gap:8px}}.programme-phase-page .catalogue-header{box-sizing:border-box;max-width:none;padding-left:20px;padding-right:20px}.programme-phase-page .catalogue-header h1{max-width:760px}.programme-phase-page .catalogue-header p:not(.eyebrow){max-width:760px;line-height:1.5}.programme-phase-register{max-width:none;margin:10px auto 0;padding-left:20px;padding-right:20px}.programme-phase-toolbar{border:1px solid var(--line);background:#fff;border-radius:8px;align-items:flex-end;padding:18px 20px}.programme-phase-toolbar-main{flex:1;min-width:0}.programme-phase-toolbar-heading{margin-bottom:16px}.programme-phase-toolbar-heading h2{margin:0 0 4px;font-size:22px}.programme-phase-toolbar-heading p:not(.eyebrow){color:var(--muted);margin:0;font-size:13px}.programme-project-form{align-items:flex-end}.programme-project-picker select{box-sizing:border-box;border:1px solid var(--line);min-height:36px;color:var(--ink);font:inherit;background:#fff;border-radius:4px;padding:8px 10px}.programme-project-current{box-sizing:border-box;border:1px solid var(--line);background:var(--wash);border-radius:4px;gap:4px;min-height:36px;padding:8px 10px;display:grid}.programme-project-current span{color:var(--muted);font-size:11px;font-weight:700}.programme-project-current strong{color:var(--ink);font-size:13px}.programme-project-current small{color:var(--muted);font-size:11px}.programme-phase-toolbar-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;display:flex}.programme-phase-toolbar-actions .button-secondary{white-space:nowrap}.programme-phase-page .inline-editor>summary{box-sizing:border-box;background:var(--blue);color:#fff;cursor:pointer;border:0;border-radius:4px;justify-content:center;align-items:center;min-height:36px;margin:0;padding:8px 12px;font-size:13px;font-weight:700;line-height:1;display:inline-flex}.programme-phase-page .inline-editor>summary:hover{background:#1e4f86}.programme-phase-page .inline-editor-drawer>form{z-index:30;box-sizing:border-box;border:0;border-left:1px solid var(--line);background:#fff;border-radius:0;width:min(100%,560px);height:100dvh;max-height:none;padding:28px;position:fixed;inset:0 0 0 auto;overflow-y:auto;transform:none;box-shadow:-18px 0 55px #10234633}.programme-phase-page .inline-editor-drawer>form label{color:var(--ink);gap:6px;margin:0 0 14px;font-size:12px;font-weight:700;display:grid}.programme-phase-page .inline-editor-drawer>form input:not([type=hidden]),.programme-phase-page .inline-editor-drawer>form select,.programme-phase-page .inline-editor-drawer>form textarea{box-sizing:border-box;border:1px solid var(--line);width:100%;min-height:40px;color:var(--ink);font:inherit;background:#fff;border-radius:4px;margin:0;padding:9px 10px;display:block}.programme-phase-page .inline-editor-drawer>form textarea{resize:vertical;min-height:94px}.programme-phase-page .inline-editor-drawer>form .form-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.programme-phase-dates{grid-template-columns:repeat(3,minmax(0,1fr));align-items:start;gap:12px;margin:2px 0 14px;display:grid}.programme-phase-dates small{color:var(--muted);margin-top:4px;font-size:11px;font-weight:400;line-height:1.35;display:block}.programme-phase-dates input[readonly]{background:var(--wash);color:var(--muted);cursor:not-allowed}.programme-phase-page .inline-editor-drawer>form>button:not(.inline-editor-cancel),.programme-phase-page .inline-editor-drawer>form .inline-editor-cancel{box-sizing:border-box;cursor:pointer;border-radius:4px;justify-content:center;align-items:center;min-height:36px;margin:0;padding:8px 12px;font-size:13px;font-weight:700;line-height:1;display:inline-flex}.programme-phase-page .inline-editor-drawer>form>button:not(.inline-editor-cancel){background:var(--blue);color:#fff;border:0}.programme-phase-page .inline-editor-drawer>form .inline-editor-cancel{border:1px solid var(--line);color:var(--blue);background:#fff;margin-left:8px}.programme-phase-list-heading{justify-content:space-between;align-items:flex-end;gap:16px;margin:26px 0 12px;padding:0 2px;display:flex}.programme-phase-list-heading h2{margin:0;font-size:22px}.programme-phase-list-heading>span{color:var(--muted);font-size:13px}.programme-phase-empty{border:1px dashed var(--line);text-align:center;background:#fff;border-radius:8px;margin-top:20px;padding:28px 22px}.programme-phase-empty h2{margin:0 0 6px;font-size:18px}.programme-phase-empty p{max-width:620px;color:var(--muted);margin:0 auto;font-size:13px;line-height:1.5}.programme-phase-actions .inline-editor>summary{border:1px solid var(--line);min-height:34px;color:var(--blue);background:#fff;padding:7px 11px}.programme-phase-actions .inline-editor>summary:hover{border-color:var(--blue);background:var(--blue-soft,#eef3ff)}@media (max-width:760px){.programme-phase-page .catalogue-header,.programme-phase-register{padding-left:22px;padding-right:22px}.programme-phase-toolbar{align-items:stretch}.programme-phase-toolbar-actions{justify-content:flex-start}.programme-phase-toolbar-actions .button-secondary,.programme-phase-toolbar-actions .inline-editor>summary{width:100%}.programme-phase-page .inline-editor-drawer>form{width:100%;padding:22px}}@media (max-width:560px){.programme-phase-page .inline-editor-drawer>form .form-row,.programme-phase-dates{grid-template-columns:1fr}}@media (max-width:900px){.document-builder-shell{grid-template-columns:1fr}.document-builder-preview-panel{position:static}.document-builder-preview-panel iframe{min-height:820px}}@media (max-width:560px){.document-builder-shell{padding:0 14px}.document-builder-version-list>div{grid-template-columns:1fr;gap:4px}.document-builder-panel-heading,.document-builder-preview-heading{flex-direction:column}}.schedule-gantt-page .gantt-frame{overflow:visible}.schedule-gantt-page .gantt-axis-label,.schedule-gantt-page .gantt-date-axis{z-index:1;box-shadow:none;position:relative;top:auto}.gantt-sticky-header{z-index:10;grid-column:1/-1;grid-template-columns:var(--gantt-label-width,390px) minmax(0,1fr);width:100%;height:46px;min-height:46px;margin-bottom:-46px;position:sticky;top:0}.gantt-sticky-axis-label,.gantt-sticky-scroll{box-sizing:border-box;border-bottom:1px solid var(--line);height:46px;min-height:46px;box-shadow:0 1px 0 var(--line), 0 3px 8px #0a182a1a;background:#f7f9fc;position:absolute;top:0}.gantt-sticky-axis-label{width:var(--gantt-label-width,390px);color:var(--muted);align-items:center;padding:0 12px;font-size:11px;font-weight:700;display:flex;left:0}.gantt-sticky-scroll{left:var(--gantt-label-width,390px);border-left:1px solid var(--line);right:0;overflow:hidden}.gantt-sticky-date-axis{width:var(--gantt-width);min-width:var(--gantt-width);grid-template-columns:repeat(var(--gantt-columns,var(--gantt-days)),minmax(0,1fr));will-change:transform;background:#f7f9fc;height:46px;display:grid}.gantt-sticky-date-axis span{border-right:1px solid var(--line);text-align:center;white-space:normal;flex-direction:column;justify-content:center;align-items:center;gap:2px;padding:0 4px;display:flex}.gantt-sticky-date-axis span:last-child{border-right:0}.gantt-sticky-date-axis span b,.gantt-sticky-date-axis span small{font-size:11px;line-height:1.1;display:block}.gantt-sticky-date-axis span small{font-weight:400}.gantt-sticky-date-axis span.weekend{background:#f0f3f8}.subcontractor-save-notice{max-width:1200px;margin:18px auto 0}.subcontractor-purchase-orders .portal-list li{align-items:flex-start}.subcontractor-po-item{flex:1;min-width:0}.subcontractor-po-status{color:#80631b;background:#fff4d9;border-radius:999px;width:max-content;margin-top:8px;padding:4px 8px;font-size:11px;font-weight:800;display:inline-flex}.subcontractor-po-status.accepted{color:#1e7046;background:#e4f5eb}.subcontractor-po-status.declined{color:#9f2438;background:#fff0f2}.subcontractor-po-status.delivered{color:#146c6a;background:#d8f7f6}.subcontractor-po-note{color:var(--muted);white-space:pre-wrap;margin:8px 0 0;font-size:12px;line-height:1.45}.subcontractor-po-actions{grid-template-columns:1fr;gap:14px;margin-top:14px;display:grid}.subcontractor-po-actions form,.subcontractor-po-delivery{border:1px solid var(--line);background:#f8fbff;border-radius:6px;gap:9px;min-width:0;padding:14px;display:grid}.subcontractor-po-actions label,.subcontractor-po-delivery label{color:var(--ink);gap:6px;font-size:13px;font-weight:700;line-height:1.3;display:grid}.subcontractor-po-delivery input{box-sizing:border-box;border:1px solid var(--line);width:100%;min-height:36px;color:var(--ink);font:inherit;background:#fff;border-radius:4px;padding:8px 10px}.subcontractor-po-delivery input[type=file]{min-height:0;padding:7px}.subcontractor-po-delivery small{color:var(--muted);font-size:11px;font-weight:400}.subcontractor-po-actions textarea,.subcontractor-po-delivery textarea{box-sizing:border-box;border:1px solid var(--line);width:100%;min-height:120px;color:var(--ink);font:inherit;resize:vertical;background:#fff;border-radius:4px;padding:10px 11px;font-size:13px}.subcontractor-po-actions button,.subcontractor-po-delivery button{background:var(--blue);color:#fff;cursor:pointer;white-space:nowrap;border:0;border-radius:4px;justify-self:start;min-height:36px;padding:8px 12px;font-size:13px;font-weight:700;line-height:1.2}.subcontractor-po-actions .subcontractor-po-decline{color:#9f2438;background:#fff;border:1px solid #e7a9b5}.subcontractor-po-delivery{margin-top:12px}.purchase-order-delivery-record h2{margin:0 0 12px;font-size:18px}.purchase-order-delivery-meta dt{color:var(--muted);text-transform:uppercase;font-size:11px;font-weight:700}.purchase-order-delivery-meta dd{color:var(--ink);margin:5px 0 0;font-weight:700}.purchase-order-delivery-note{color:var(--ink);white-space:pre-wrap;margin:16px 0 0;font-size:13px;line-height:1.5}.purchase-order-delivery-file{color:var(--muted);align-items:center;gap:10px;margin-top:16px;font-size:12px;font-weight:700;display:flex}.schedule-gantt-page .gantt-condensed .gantt-scroll{overflow-x:hidden}.schedule-gantt-page .gantt-condensed .gantt-chart,.schedule-gantt-page .gantt-condensed .gantt-scroll .gantt-chart{width:100%;min-width:0}.schedule-gantt-page .gantt-condensed .gantt-date-axis,.schedule-gantt-page .gantt-condensed .gantt-day-grid{grid-template-columns:repeat(var(--gantt-columns),minmax(0,1fr))}.schedule-gantt-page .gantt-condensed .gantt-date-axis span{padding-left:2px;padding-right:2px}.schedule-gantt-page .gantt-condensed .gantt-date-axis span b,.schedule-gantt-page .gantt-condensed .gantt-date-axis span small{font-size:10px}.schedule-gantt-page .gantt-condensed .gantt-milestone-marker-label{white-space:normal;max-width:150px}.schedule-gantt-page .gantt-condensed .gantt-milestone-marker-wrap-left .gantt-milestone-marker-label{left:auto;right:11px}.schedule-gantt-page .gantt-condensed .gantt-bar,.schedule-gantt-page .gantt-condensed .gantt-group-bar{padding-left:2px;padding-right:2px}.schedule-gantt-page .gantt-calendar-axis{height:46px;min-height:46px;display:block;overflow:hidden}.schedule-gantt-page .gantt-calendar-axis .gantt-month-axis,.schedule-gantt-page .gantt-calendar-axis .gantt-day-axis{grid-template-columns:repeat(var(--gantt-columns),minmax(0,1fr));width:100%;display:grid}.schedule-gantt-page .gantt-calendar-axis .gantt-month-axis{border-bottom:1px solid var(--line);height:22px}.schedule-gantt-page .gantt-calendar-axis .gantt-month-axis span{border-right:1px solid var(--line);min-width:0;color:var(--muted);white-space:nowrap;justify-content:center;align-items:center;font-size:10px;font-weight:700;line-height:1;display:flex;overflow:hidden}.schedule-gantt-page .gantt-calendar-axis .gantt-month-axis span:last-child{border-right:0}.schedule-gantt-page .gantt-calendar-axis .gantt-day-axis{height:24px}.schedule-gantt-page .gantt-calendar-axis .gantt-day-axis span{min-width:0;color:var(--muted);white-space:nowrap;border-right:1px solid #e3e8f0;justify-content:center;align-items:center;font-size:8px;font-weight:600;line-height:1;display:flex;overflow:hidden}.schedule-gantt-page .gantt-calendar-axis .gantt-day-axis span:last-child{border-right:0}.schedule-gantt-page .gantt-calendar-axis .gantt-day-axis span.weekend{color:#8995a6;background:#f0f3f8}.schedule-gantt-page .gantt-sticky-date-axis.gantt-calendar-axis{display:block}.gantt-milestone-marker-wrap{z-index:5;pointer-events:none;width:1px;position:absolute;top:0;bottom:0}.gantt-milestone-marker-wrap .gantt-milestone-marker{pointer-events:auto;left:0}.gantt-milestone-marker-label{color:#8a5a00;white-space:nowrap;text-overflow:ellipsis;background:#fffaf0;border:1px solid #ead7a8;border-radius:3px;width:max-content;max-width:240px;padding:2px 5px;font-size:10px;font-weight:700;line-height:1.2;display:block;position:absolute;top:20px;left:11px;overflow:hidden}.purchase-order-document-action-group form button{background:var(--blue);color:#fff;min-height:36px;font:inherit;cursor:pointer;border:0;border-radius:4px;padding:0 12px;font-size:13px;font-weight:700}.purchase-order-document-page{background:#f3f6fa;min-height:100vh;padding:32px}.purchase-order-document{background:#fff;border:1px solid #dce3ed;border-radius:5px;max-width:1000px;margin:0 auto;padding:0 34px 34px;overflow:hidden;box-shadow:0 10px 32px #10203914}.purchase-order-document-actions{justify-content:space-between;align-items:center;gap:12px;min-height:72px;display:flex}.purchase-order-document-actions a{color:var(--blue);font-size:13px;font-weight:700;text-decoration:none}.purchase-order-document-action-group{align-items:center;gap:8px;display:flex}.purchase-order-document-action-group form{margin:0}.purchase-order-document-action-group form button,.purchase-order-print-button{background:var(--blue);color:#fff;min-height:36px;font:inherit;cursor:pointer;border:0;border-radius:5px;padding:0 12px;font-size:13px;font-weight:700}.purchase-order-print-button{color:var(--blue);background:#fff;border:1px solid #cfd8e5}.purchase-order-document-header{color:#fff;background:#101a30;border-bottom:8px solid #ff6a18;justify-content:space-between;align-items:flex-start;gap:26px;margin:0 -34px;padding:34px 48px 28px;display:flex}.purchase-order-document-header-copy{min-width:0}.purchase-order-document-brand{color:#a4b1c7;letter-spacing:.33em;margin:0 0 23px;font-size:11px;font-weight:700}.purchase-order-document-eyebrow{color:#d5dce8;letter-spacing:.12em;text-transform:uppercase;margin:0 0 3px;font-size:10px;font-weight:700}.purchase-order-document-header h1{color:#fff;letter-spacing:-.02em;margin:0;font-size:38px;line-height:1.08}.purchase-order-document-header-copy>p:last-child{color:#c5cfdf;margin:8px 0 0;font-size:16px;line-height:1.35}.purchase-order-document-header-side{text-align:right;flex-direction:column;flex:0 0 170px;align-items:flex-end;gap:28px;padding-top:7px;display:flex}.purchase-order-document-status{box-sizing:border-box;color:#087a55;letter-spacing:.04em;background:#c9f6df;border-radius:99px;justify-content:center;align-items:center;min-width:132px;min-height:38px;padding:8px 18px;font-size:13px;font-weight:800;display:inline-flex}.purchase-order-document-status.draft{color:#40506a;background:#e6edf6}.purchase-order-document-status.approved{color:#087a55;background:#c9f6df}.purchase-order-document-status.sent{color:#1e54b7;background:#dce8ff}.purchase-order-document-header-side dl,.purchase-order-document-header-side dt,.purchase-order-document-header-side dd{margin:0}.purchase-order-document-header-side dt{color:#aab7ca;letter-spacing:.1em;text-transform:uppercase;font-size:10px;font-weight:700}.purchase-order-document-header-side dd{color:#fff;white-space:nowrap;margin-top:5px;font-size:14px;font-weight:700}.purchase-order-summary-card{background:#f8fafc;border:2px solid #e0e5ec;border-radius:18px;margin:28px 0 34px;overflow:hidden}.purchase-order-summary-parties{border-bottom:1px solid #d8e0ea;grid-template-columns:1fr 1fr;gap:28px;padding:22px 28px 20px;display:grid}.purchase-order-summary-dates{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;padding:22px 28px 24px;display:grid}.purchase-order-summary-card dt,.purchase-order-summary-card dd{margin:0}.purchase-order-summary-card dt{color:#6a7688;letter-spacing:.03em;text-transform:uppercase;font-size:11px;font-weight:800}.purchase-order-summary-card dd{color:var(--ink);margin-top:8px;font-size:16px;font-weight:700;line-height:1.35}.purchase-order-lines-section{margin-top:0}.purchase-order-section-heading{border-bottom:2px solid #dce3ed;align-items:center;min-height:38px;display:flex}.purchase-order-section-heading h2{color:var(--ink);margin:0 0 9px;font-size:23px;line-height:1.1}.purchase-order-lines-table-wrap{overflow-x:auto}.purchase-order-document-table{border-collapse:collapse;table-layout:fixed;width:100%;min-width:620px}.purchase-order-document-table th,.purchase-order-document-table td{text-align:left;vertical-align:middle;border-bottom:1px solid #dce3ed;padding:12px 10px}.purchase-order-document-table th{color:#6a7688;letter-spacing:.03em;text-transform:uppercase;background:#f6f8fb;font-size:11px;font-weight:800}.purchase-order-document-table td{color:var(--ink);font-size:14px;line-height:1.3}.purchase-order-document-table th:first-child,.purchase-order-document-table td:first-child{width:74px}.purchase-order-document-table th:nth-child(3),.purchase-order-document-table td:nth-child(3){text-align:right;width:42px}.purchase-order-document-table th:nth-child(4),.purchase-order-document-table td:nth-child(4){text-align:right;width:52px}.purchase-order-document-table th:nth-child(5),.purchase-order-document-table td:nth-child(5){text-align:right;width:78px}.purchase-order-document-table th:nth-child(6),.purchase-order-document-table td:nth-child(6){text-align:right;width:88px}.purchase-order-document-table td:nth-child(6){font-weight:800}.purchase-order-order-total{box-sizing:border-box;color:#fff;background:#101a30;border-radius:15px;justify-content:space-between;align-items:center;gap:18px;width:min(100%,400px);margin:14px 0 0 auto;padding:15px 20px;display:flex}.purchase-order-order-total span{color:#a9b5c8;letter-spacing:.04em;text-transform:uppercase;font-size:13px;font-weight:800}.purchase-order-order-total strong{white-space:nowrap;font-size:27px;line-height:1}.purchase-order-delivery-record{border-top:0;margin-top:38px;padding-top:0}.purchase-order-delivery-record .purchase-order-section-heading,.purchase-order-revision-history .purchase-order-section-heading{margin-bottom:24px}.purchase-order-delivery-card{background:#f8fafc;border:2px solid #e0e5ec;border-radius:18px;padding:23px 28px 18px}.purchase-order-delivery-meta{grid-template-columns:1fr 1fr;gap:24px 28px;margin:0;display:grid}.purchase-order-delivery-meta div{min-width:0}.purchase-order-delivery-meta dt{color:#6a7688;letter-spacing:.03em;text-transform:uppercase;font-size:11px;font-weight:800}.purchase-order-delivery-meta dd{color:var(--ink);margin:8px 0 0;font-size:16px;font-weight:700;line-height:1.35}.purchase-order-delivery-status{box-sizing:border-box;color:#087a55;letter-spacing:.03em;background:#c9f6df;border-radius:99px;align-items:center;min-height:28px;padding:5px 14px;font-size:12px;font-weight:800;display:inline-flex}.purchase-order-delivery-status.pending{color:#805f00;background:#fff0bf}.purchase-order-delivery-status.declined{color:#8f2435;background:#ffe5e9}.purchase-order-delivery-note{color:#6a7688;white-space:pre-wrap;border-top:1px solid #d8e0ea;margin:20px 0 0;padding-top:13px;font-size:13px;font-style:italic;line-height:1.5}.purchase-order-delivery-file{color:#6a7688;border-top:1px solid #d8e0ea;align-items:center;gap:10px;margin-top:14px;padding-top:13px;font-size:12px;font-weight:700;display:flex}.purchase-order-revision-history{margin-top:38px}.purchase-order-revision-list{gap:0;margin:0;padding:0;list-style:none;display:grid;position:relative}.purchase-order-revision-list li{min-height:48px;color:var(--ink);grid-template-columns:24px 54px minmax(80px,.8fr) minmax(140px,1.2fr) 100px;align-items:center;gap:14px;font-size:13px;display:grid;position:relative}.purchase-order-revision-list li:not(:last-child):before{content:"";background:#d2dce9;width:2px;position:absolute;top:29px;bottom:-1px;left:10px}.purchase-order-revision-marker{z-index:1;background:#cbd7e6;border-radius:50%;width:16px;height:16px;display:block;position:relative}.purchase-order-revision-list li.current .purchase-order-revision-marker{background:#ff6a18}.purchase-order-revision-list strong{font-size:15px}.purchase-order-revision-list time{color:#6a7688}.purchase-order-revision-list li>span:last-child{justify-self:end}.purchase-order-document-footer{color:#6a7688;border-top:2px solid #dce3ed;justify-content:space-between;align-items:flex-start;gap:18px;margin-top:36px;padding-top:14px;font-size:12px;line-height:1.45;display:flex}.purchase-order-document-footer p{max-width:760px;margin:0}.purchase-order-document-footer>span{white-space:nowrap;flex:none}@media (max-width:760px){.purchase-order-document-page{padding:12px}.purchase-order-document{padding:0 20px 24px}.purchase-order-document-header{gap:18px;margin:0 -20px;padding:28px 28px 24px}.purchase-order-document-header h1{font-size:31px}.purchase-order-document-header-side{flex-basis:140px}.purchase-order-summary-parties{gap:18px;padding:20px}.purchase-order-summary-dates{gap:16px;padding:20px}.purchase-order-delivery-card{padding:20px}.purchase-order-revision-list li{grid-template-columns:24px 45px minmax(70px,.8fr) minmax(125px,1.2fr);gap:10px}.purchase-order-revision-list li>span:last-child{display:none}}@media (max-width:560px){.purchase-order-document-actions{align-items:flex-start;min-height:64px;padding-top:16px}.purchase-order-document-action-group{flex-wrap:wrap;justify-content:flex-end}.purchase-order-document-header{display:block}.purchase-order-document-header-side{text-align:left;border-top:1px solid #fff3;align-items:flex-start;gap:16px;margin-top:22px;padding-top:16px}.purchase-order-summary-parties,.purchase-order-summary-dates,.purchase-order-delivery-meta{grid-template-columns:1fr}.purchase-order-summary-dates{gap:16px}.purchase-order-order-total{width:100%}.purchase-order-revision-list li{grid-template-columns:24px 42px 1fr}.purchase-order-revision-list time{grid-column:3}.purchase-order-document-footer{display:block}.purchase-order-document-footer>span{margin-top:10px;display:block}}@media print{@page{size:A4;margin:0}.purchase-order-document-page{background:#fff;min-height:0;padding:0}.purchase-order-document{max-width:none;box-shadow:none;border:0;border-radius:0;padding:0 17mm 16mm;overflow:visible}.purchase-order-document-actions{display:none}.purchase-order-document-header{-webkit-print-color-adjust:exact;print-color-adjust:exact;margin:0 -17mm;padding:15mm 17mm 12mm}.purchase-order-summary-card,.purchase-order-delivery-card,.purchase-order-order-total{-webkit-print-color-adjust:exact;print-color-adjust:exact}.purchase-order-document-table{min-width:0}.purchase-order-document-footer{margin-bottom:0}.purchase-order-lines-section,.purchase-order-delivery-record,.purchase-order-revision-history{break-inside:avoid}}
