:root{font-family:system-ui,-apple-system,'Segoe UI',Arial,sans-serif;color:#20262c;background:#f8f9fa;--line:#dfe3e6;--navy:#213b52;--muted:#67717b}*{box-sizing:border-box}body{margin:0}header{padding:20px 32px;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:16px}.wordmark{font-size:24px;font-weight:700;letter-spacing:-1px;color:#20262c;text-decoration:none}.header-tools{display:flex;gap:16px;align-items:center}main{max-width:1100px;margin:auto;padding:32px}h1{font-size:28px;margin:0 0 8px;font-weight:650;letter-spacing:-.5px}h2{font-size:19px;margin:0 0 16px}p{line-height:1.6}section{margin-bottom:32px}button,.button,input,select,textarea{font:inherit;min-height:44px;border:1px solid #cdd5dc;border-radius:3px;padding:10px 12px;background:#fff;color:inherit}button,.button{cursor:pointer}.button{display:inline-flex;align-items:center;text-decoration:none}button.primary{background:var(--navy);border-color:var(--navy);color:#fff}button.quiet{border:0;background:transparent}input,select,textarea{width:100%;margin-top:7px}input[type=file]{font-size:12px}input[type=checkbox]{width:auto;min-height:auto}.header-tools select{width:auto;max-width:120px;margin:0}label{font-size:13px;font-weight:500;display:block}textarea{min-height:95px;resize:vertical}.auth-panel{max-width:420px;margin:40px auto}.stack{display:grid;gap:20px;margin-top:28px}.muted,small{font-size:13px;color:var(--muted)}small{display:block;margin-top:4px}a{color:var(--navy)}.notice{background:#edf1f4;border-inline-start:3px solid #8495a3;padding:13px 16px;font-size:13px}.errors{background:#fff0ec;color:#963d30;padding:10px 18px;margin-bottom:20px}.page-heading,.section-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:24px}.record{border-bottom:1px solid var(--line);padding:18px 0;display:flex;justify-content:space-between;gap:18px;align-items:center;font-size:14px;overflow-wrap:anywhere}.empty{padding:28px 0;color:var(--muted)}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.form-grid .full{grid-column:1/-1}.form-grid>button{align-self:end}.section-heading{margin-top:28px}.section-heading h2{margin:0}.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}#connection-status{position:fixed;bottom:0;inset-inline:0;padding:9px 20px;background:#edf1f4;text-align:center;font-size:12px}#update-notice{position:fixed;bottom:40px;inset-inline:20px;background:#fff;border:1px solid var(--line);padding:14px}dialog{max-width:460px;width:calc(100% - 32px);border:1px solid var(--line);padding:24px;border-radius:4px}dialog::backdrop{background:#202a3459}dialog button{margin:5px}.local-draft{padding:16px 0;border-bottom:1px solid var(--line)}.local-draft p{margin:5px 0;font-size:13px}[hidden]{display:none!important}button:disabled{opacity:.5;cursor:not-allowed}:focus-visible{outline:3px solid #8cabbf;outline-offset:2px}[dir=rtl]body{font-family:Tahoma,Arial,sans-serif;line-height:1.8}[dir=rtl]h1{letter-spacing:0}@media(max-width:600px){header{padding:15px 18px}.wordmark{font-size:21px}.header-tools{gap:8px}main{padding:24px 18px 65px}.auth-panel{margin:25px auto}.form-grid{grid-template-columns:1fr}.page-heading{align-items:flex-start}h1{font-size:25px}input,select,textarea{font-size:16px}.record{font-size:13px}.header-tools select{font-size:13px;max-width:88px}.page-heading .button{font-size:12px;padding:8px}}
[data-authenticated=offline] #draft-workspace{margin-top:28px}
main{padding-bottom:70px}
label{font-size:14px}
[dir=rtl] .muted,[dir=rtl] small,[dir=rtl] .notice{font-size:14px}
.access-editor{border-bottom:1px solid var(--line);margin-bottom:18px;padding-bottom:12px}.access-editor summary{cursor:pointer;min-height:44px;padding:12px 0;font-size:14px}.access-editor form{padding-top:12px}
.workspace-nav{display:flex;gap:24px;padding:0 32px;background:#fff;border-bottom:1px solid var(--line)}.workspace-nav a{padding:14px 0;text-decoration:none;border-bottom:2px solid transparent}.workspace-nav [aria-current]{border-color:var(--navy);font-weight:600}.section-fields{margin-top:20px}.check{display:flex;align-items:center;gap:10px;min-height:44px}.check input[type=checkbox]{margin:0;flex-shrink:0;width:20px;height:20px}.check-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}fieldset{border:1px solid var(--line);padding:18px;margin:20px 0}legend{padding:0 6px;font-size:14px}.editable-row{display:grid;gap:14px;padding:18px 0;border-bottom:1px solid var(--line);margin-bottom:18px;align-items:end}.floor-row{grid-template-columns:2fr 1fr 1fr auto}.boq-row{grid-template-columns:2fr 1fr 1fr 1fr auto}.editable-row button{align-self:end}.project-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin:20px 0}.project-facts>div{min-width:0;overflow-wrap:anywhere}.project-facts dt{font-size:13px;color:var(--muted);margin-bottom:8px}.project-facts dd{margin:0;font-size:17px;font-weight:600}.preserve-lines{white-space:pre-wrap;overflow-wrap:anywhere}.private-section{margin-top:28px;border-top:1px solid var(--line);padding-top:20px}.contract-revision{padding:20px 0;border-top:1px solid var(--line)}summary{cursor:pointer;min-height:44px;padding:12px 0}.approval-form{margin-top:24px}.member-list{display:grid;grid-template-columns:1fr 1fr;gap:12px}.member-list small{margin:0}.subcontract{padding-bottom:24px}.floor-list{margin-bottom:24px}h3{font-size:16px;margin-top:24px}.record strong{white-space:normal}.stack button{justify-self:start}@media(max-width:700px){.workspace-nav{padding-inline:18px}.editable-row{grid-template-columns:1fr 1fr}.boq-row>label:first-child{grid-column:1/-1}.editable-row button{justify-self:start}.member-list{grid-template-columns:1fr}.project-facts{gap:20px}.project-facts dd{font-size:16px}.record{flex-wrap:wrap}.check-grid{grid-template-columns:1fr}}
.page-heading>div{min-width:0}.page-heading>a{flex-shrink:0;white-space:nowrap}h1{overflow-wrap:anywhere}
/* Local drafts are also rendered without the authenticated shell while offline. */
.local-draft,#offline-identity{min-width:0;overflow-wrap:anywhere}.local-draft p{unicode-bidi:plaintext}
.actual-cost-summary{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:4px 0 12px;margin:20px 0 32px}.actual-cost-summary .project-facts dd{font-size:22px}.actual-cost-summary .muted{margin-bottom:0}
.app-sidebar{display:none}.button.primary{background:var(--navy);border-color:var(--navy);color:#fff}.dashboard-site{border-top:1px solid var(--line)}.site-heading{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:24px 0}.site-heading h2{margin:0}.site-heading p{margin:8px 0 0}.site-heading>a{white-space:nowrap}.dashboard-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));background:#fff;border-block:1px solid var(--line);padding:24px 0}.dashboard-stats>div{padding:0 24px;border-inline-end:1px solid var(--line);min-width:0}.dashboard-stats>div:last-child{border:0}.dashboard-stats span{font-size:13px;color:var(--muted)}.dashboard-stats strong{display:block;font-size:26px;letter-spacing:-1px;margin:8px 0;overflow-wrap:anywhere}.dashboard-stats .currency{display:inline;font-size:12px;letter-spacing:0}.dashboard-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border:1px solid var(--line);background:#fff}.dashboard-actions a{padding:22px;text-decoration:none;border-inline-end:1px solid var(--line)}.dashboard-actions a:last-child{border:0}.dashboard-actions strong{font-size:15px;font-weight:600}.dashboard-columns{display:grid;grid-template-columns:1.2fr 1fr;gap:36px}.dashboard-empty-line{border-top:1px solid var(--line);padding:24px 0;color:var(--muted);font-size:14px}.dashboard-empty{border-block:1px solid var(--line);padding:32px 0}.working-site{display:flex;align-items:center;gap:14px}.working-site label{white-space:nowrap;color:var(--muted)}.working-site select{max-width:260px!important;border:0;font-weight:600}.row-actions{display:flex;gap:10px;margin-top:16px;flex-wrap:wrap}
@media(min-width:1000px){.app-layout{padding-inline-start:240px}.app-sidebar{display:flex;position:fixed;inset-inline-start:0;top:0;bottom:0;width:240px;padding:40px 24px;background:#fff;border-inline-end:1px solid var(--line);flex-direction:column}.app-sidebar .wordmark{font-size:27px}.app-sidebar nav{display:grid;gap:12px;margin-top:52px}.app-sidebar nav>a,.nav-pending{display:flex;align-items:center;gap:14px;min-height:50px;padding:12px 14px;text-decoration:none;font-size:16px;font-weight:550}.app-sidebar nav>a>span,.nav-pending>span{font-size:22px;width:22px;text-align:center}.app-sidebar [aria-current]{background:#f2f4f5;border-inline-start:2px solid var(--navy)}.nav-pending{color:#7c858c;flex-wrap:wrap;gap:4px 14px}.nav-pending small{width:100%;padding-inline-start:36px;margin:0;font-size:10px}.sidebar-account{margin-top:auto;border-top:1px solid var(--line);padding-top:24px;font-size:14px}.sidebar-account>a{display:inline-block;margin-top:12px;font-size:13px}.app-layout>header{min-height:88px;padding:18px 40px}.app-layout>header>.wordmark{display:none}.app-layout .header-tools{width:100%;justify-content:flex-end}.app-layout .working-site{margin-inline-end:auto}.app-layout>.workspace-nav{display:none}.app-layout>main{max-width:1400px;padding:38px 40px 80px}.app-layout #connection-status{inset-inline-start:240px}}
@media(max-width:999px){.app-layout>header{flex-wrap:wrap}.app-layout .header-tools{flex-wrap:wrap;justify-content:flex-end;flex:1}.working-site{order:3;flex-basis:100%;justify-content:space-between}.working-site select{max-width:190px!important}.dashboard-stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 0}.dashboard-stats>div:nth-child(2){border:0}.dashboard-stats strong{font-size:23px}.dashboard-actions a{padding:16px}.dashboard-columns{gap:24px}.workspace-nav{overflow-x:auto;font-size:14px;gap:20px}.workspace-nav a{white-space:nowrap}}
@media(max-width:600px){.dashboard-stats>div{padding-inline:18px}.dashboard-columns{grid-template-columns:1fr;gap:0}.dashboard-actions{grid-template-columns:1fr}.dashboard-actions a{border-inline-end:0;border-bottom:1px solid var(--line)}.site-heading{align-items:flex-start}.site-heading>a{font-size:13px}.working-site label{font-size:12px}.page-heading>span{font-size:11px;white-space:nowrap}.site-heading h2{font-size:18px}.dashboard-stats small{font-size:11px}.header-tools .working-site{min-width:0}.app-layout>header>.wordmark{align-self:flex-start;margin-top:10px}}
