@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(../media/7fea77d1d19108bf-s.0xyeb7czu1stb.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(../media/1bcd0e671759a44c-s.0vnh8.d8wxa2x.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(../media/e15f58668ad64cb8-s.0~.8lt~vdqmc3.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(../media/90c51ce8fb754fe8-s.00z~hoalba5dm.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(../media/57215795b8570f5c-s.0vwgtotjdgnhr.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(../media/03fc1b4a8d284b5e-s.p.09.f.n_ccld80.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url(../media/7fea77d1d19108bf-s.0xyeb7czu1stb.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url(../media/1bcd0e671759a44c-s.0vnh8.d8wxa2x.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url(../media/e15f58668ad64cb8-s.0~.8lt~vdqmc3.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url(../media/90c51ce8fb754fe8-s.00z~hoalba5dm.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url(../media/57215795b8570f5c-s.0vwgtotjdgnhr.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url(../media/03fc1b4a8d284b5e-s.p.09.f.n_ccld80.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:600;font-stretch:100%;font-display:swap;src:url(../media/7fea77d1d19108bf-s.0xyeb7czu1stb.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:600;font-stretch:100%;font-display:swap;src:url(../media/1bcd0e671759a44c-s.0vnh8.d8wxa2x.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:600;font-stretch:100%;font-display:swap;src:url(../media/e15f58668ad64cb8-s.0~.8lt~vdqmc3.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:600;font-stretch:100%;font-display:swap;src:url(../media/90c51ce8fb754fe8-s.00z~hoalba5dm.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:600;font-stretch:100%;font-display:swap;src:url(../media/57215795b8570f5c-s.0vwgtotjdgnhr.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:600;font-stretch:100%;font-display:swap;src:url(../media/03fc1b4a8d284b5e-s.p.09.f.n_ccld80.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:700;font-stretch:100%;font-display:swap;src:url(../media/7fea77d1d19108bf-s.0xyeb7czu1stb.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:700;font-stretch:100%;font-display:swap;src:url(../media/1bcd0e671759a44c-s.0vnh8.d8wxa2x.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:700;font-stretch:100%;font-display:swap;src:url(../media/e15f58668ad64cb8-s.0~.8lt~vdqmc3.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:700;font-stretch:100%;font-display:swap;src:url(../media/90c51ce8fb754fe8-s.00z~hoalba5dm.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:700;font-stretch:100%;font-display:swap;src:url(../media/57215795b8570f5c-s.0vwgtotjdgnhr.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:700;font-stretch:100%;font-display:swap;src:url(../media/03fc1b4a8d284b5e-s.p.09.f.n_ccld80.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Sans Fallback;src:local(Arial);ascent-override:101.32%;descent-override:27.18%;line-gap-override:0.0%;size-adjust:101.17%}.ibm_plex_sans_2b67c4de-module__NpprRa__className{font-family:IBM Plex Sans,IBM Plex Sans Fallback;font-style:normal}.ibm_plex_sans_2b67c4de-module__NpprRa__variable{--font-sans:"IBM Plex Sans", "IBM Plex Sans Fallback"}
@font-face{font-family:Fraunces;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/1e219c03c996efbd-s.0vlx5hthn2t7i.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Fraunces;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/b35b0dbffda7f2c4-s.0fu677rwbv-.g.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Fraunces;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/03bda585a99c6450-s.p.0zzh68k1~whtc.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Fraunces Fallback;src:local(Times New Roman);ascent-override:84.71%;descent-override:22.09%;line-gap-override:0.0%;size-adjust:115.45%}.fraunces_564d2be6-module__ne8-LG__className{font-family:Fraunces,Fraunces Fallback;font-style:normal}.fraunces_564d2be6-module__ne8-LG__variable{--font-serif:"Fraunces", "Fraunces Fallback"}
:root{--bg:#eef2ef;--rail:#17211c;--rail-muted:#aab7b0;--surface:#fff;--surface-soft:#f7f9f7;--ink:#111a16;--muted:#637169;--line:#d8e0da;--line-strong:#b8c5bd;--green:#166d3b;--green-strong:#0f5630;--amber:#a46d18;--blue:#275b82;--shadow:0 18px 42px #111a1614}*{box-sizing:border-box}html{min-width:320px}body{min-height:100vh;color:var(--ink);background:var(--bg);font-family:var(--font-sans), sans-serif;margin:0}button,input,select{font:inherit}button,select,input{border:1px solid var(--line-strong);background:var(--surface);min-height:2.5rem;color:var(--ink);border-radius:6px}button{cursor:pointer;padding:0 .9rem;font-weight:700}input,select{width:100%;padding:.45rem .65rem}table{border-collapse:collapse;width:100%}th,td{border-bottom:1px solid var(--line);text-align:left;vertical-align:middle;padding:.75rem}th{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;font-size:.76rem}tfoot td{border-bottom:0;font-weight:800}.app-shell{grid-template-columns:220px minmax(0,1fr);min-height:100vh;display:grid}.auth-shell{place-items:center;min-height:100vh;padding:1.25rem;display:grid}.auth-card{border:1px solid var(--line);background:var(--surface);width:min(100%,460px);box-shadow:var(--shadow);border-radius:12px;gap:1rem;padding:1.4rem;display:grid}.auth-card h1{margin:0;line-height:1.05}.auth-card p{color:var(--muted);margin:0;line-height:1.5}.auth-form{gap:.85rem;display:grid}.auth-secondary-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem;display:grid}.auth-link{color:var(--green-strong);font-weight:800}.auth-success,.auth-error{border-radius:8px;padding:.75rem}.auth-success{background:#166d3b14;color:var(--green-strong)!important}.auth-error{background:#a46d181f;color:var(--amber)!important}.side-rail{background:var(--rail);color:#fff;flex-direction:column;gap:2rem;padding:1.3rem;display:flex}.brand-kicker,.section-label{color:var(--muted);letter-spacing:.12em;text-transform:uppercase;margin:0;font-size:.74rem;font-weight:800}.brand-kicker{color:var(--rail-muted)}.side-rail h1,.quote-header h2,.section-toolbar h3{margin:.2rem 0 0;line-height:1.1}.side-rail h1{font-size:2rem}.user-chip{color:#fff;gap:.15rem;margin:.7rem 0 0;font-size:.85rem;font-weight:800;display:grid}.user-chip span{color:var(--rail-muted);letter-spacing:.08em;text-transform:uppercase;font-size:.72rem}.nav-list{gap:.35rem;display:grid}.nav-item{color:var(--rail-muted);text-align:left;background:0 0;border:0;border-radius:6px;justify-content:space-between;align-items:center;padding:.7rem .8rem;font-weight:700;text-decoration:none;display:flex}.nav-item.active{color:#fff;background:#ffffff1c}.nav-item span{color:inherit;font-size:.8rem}.workspace{gap:1rem;padding:1.25rem;display:grid}.quote-header,.quote-grid,.invoice-panel,.table-section,.quote-preview-panel,.summary-panel{border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow);border-radius:8px}.quote-header{justify-content:space-between;align-items:center;gap:1rem;padding:1rem;display:flex}.quote-header h2{font-size:1.45rem}.quote-actions{gap:.65rem;display:flex}.primary-action{border-color:var(--green-strong);background:var(--green);color:#fff}button:disabled,input:disabled{cursor:not-allowed;opacity:.65}.operation-message,.operation-error{border-radius:8px;margin:0;padding:.85rem 1rem;line-height:1.45}.operation-message{border-left:4px solid var(--green);color:var(--green-strong);background:#166d3b14}.operation-error{border-left:4px solid var(--amber);color:var(--amber);background:#a46d181f}.quote-grid{grid-template-columns:minmax(0,1fr) minmax(260px,340px);gap:1rem;padding:1rem;display:grid}.quote-form{gap:.85rem;display:grid}.form-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:.85rem;display:grid}label{color:var(--muted);letter-spacing:.04em;text-transform:uppercase;gap:.35rem;font-size:.8rem;font-weight:800;display:grid}.summary-panel{align-self:stretch;gap:.8rem;padding:1rem;display:grid}.summary-number,.summary-split{border-left:4px solid var(--green);background:var(--surface-soft);gap:.25rem;padding:.7rem .9rem;display:grid}.summary-number strong{font-size:2rem}.summary-split{border-left-color:var(--blue)}.summary-split.profit{border-left-color:var(--amber)}.summary-number span,.summary-split span{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;font-size:.75rem;font-weight:800}.section-toolbar{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:1rem;padding:.85rem 1rem;display:flex}.table-wrap{overflow-x:auto}.line-items-wrap{overflow:visible}.quote-preview-panel{display:grid;overflow:hidden}.quote-document{margin-top:1rem}.quote-approval-note{color:#25292b;margin:0;font-weight:800;line-height:1.5}.line-items-table{table-layout:fixed;min-width:1160px}.line-items-table th:first-child,.line-items-table td:first-child{width:28%;min-width:18rem}.table-wrap input{max-width:7rem}.line-items-table .quantity-input{min-width:7.5rem;max-width:none;padding-block:.7rem;font-size:1.05rem}.line-items-table .money-input{min-width:7rem;max-width:none}.custom-line-fields{gap:.5rem;display:grid}.custom-line-fields input,.custom-line-fields textarea{width:100%;max-width:none}.custom-line-fields textarea{resize:vertical;min-height:4.5rem}.line-note{color:var(--muted);margin-top:.35rem;line-height:1.35;display:block}.icon-button{place-items:center;width:2.25rem;min-height:2.25rem;padding:0;display:inline-grid}.bottom-grid{grid-template-columns:minmax(0,1fr) minmax(320px,.7fr);gap:1rem;display:grid}.invoice-panel{display:grid;overflow:hidden}.invoice-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;padding:1rem;display:grid}.invoice-card{border:1px solid var(--line);background:var(--surface-soft);border-radius:8px;gap:.25rem;padding:.85rem;display:grid}.invoice-card span,.status-pill{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;font-size:.74rem;font-weight:800}.invoice-card strong{font-size:1.1rem}.invoice-card small,.calendar-callout{color:var(--muted);line-height:1.45}.status-pill{color:var(--green-strong);background:#166d3b14;border:1px solid #166d3b40;border-radius:999px;padding:.45rem .75rem}.calendar-callout{border-left:4px solid var(--green);background:var(--surface-soft);margin:0 1rem 1rem;padding:.75rem .9rem}.invoice-document{border:1px solid var(--line);background:#fff;gap:1.1rem;margin:0 1rem 1rem;padding:1.4rem;display:grid}.invoice-document-header{grid-template-columns:1.2fr 1fr 1fr;align-items:start;gap:1rem;display:grid}.invoice-brand{color:#4faac3;letter-spacing:.08em;text-transform:uppercase;gap:.45rem;font-size:1.15rem;font-style:italic;display:grid}.logo-mark{color:#3e474b;letter-spacing:-.08em;border:3px solid #a8aeb0;place-items:center;width:4.2rem;height:2.2rem;font-weight:900;display:grid;transform:skew(-14deg)}.invoice-document-header div:not(.invoice-brand){gap:.25rem;display:grid}.invoice-document-header strong:first-child,.invoice-document h4,.invoice-document td:first-child{color:#4faac3}.invoice-document-header span{color:#3c4143}.invoice-document h4{border-bottom:1px solid var(--line);letter-spacing:.08em;text-transform:uppercase;margin:0;padding-bottom:.75rem;font-size:1rem}.invoice-document-meta{border-bottom:1px solid var(--line);grid-template-columns:1fr 1.2fr;gap:2rem;padding-bottom:.8rem;display:grid}.invoice-document dl{gap:.45rem;margin:0;display:grid}.invoice-document dl div{grid-template-columns:7.5rem 1fr;gap:1rem;display:grid}.invoice-document dt{color:#25292b;font-weight:800}.invoice-document dd{margin:0}.invoice-document-table{overflow-x:auto}.invoice-document-table table{min-width:760px}.invoice-document-table tbody tr:nth-child(odd){background:#f3f3f3}.invoice-document-table th,.invoice-document-table td{border-bottom:2px solid #e2e2e2}.invoice-document-table td:first-child{font-weight:800}.invoice-document-footer{grid-template-columns:1fr minmax(260px,320px);align-items:start;gap:1rem;display:grid}.invoice-document-footer dl div{grid-template-columns:1fr auto}.paid-stamp{color:#df53664d;letter-spacing:.08em;text-transform:uppercase;border:5px solid #df536640;justify-self:start;padding:.35rem 1rem;font-size:3.4rem;font-weight:900;transform:rotate(-6deg)}@media print{body{background:#fff}.side-rail,.quote-header,.quote-grid,.table-section,.invoice-panel,.section-toolbar,.operation-message,.operation-error{display:none!important}.app-shell,.workspace{min-height:auto;padding:0;display:block}.quote-preview-panel{box-shadow:none;border:0}.invoice-document{box-shadow:none;border:0;margin:0}}.payment-bar,.tax-export-panel,.job-photo-panel{border-top:1px solid var(--line);padding:1rem}.payment-bar{grid-template-columns:repeat(3,minmax(0,1fr));align-items:end;gap:1rem;display:grid}.tax-export-panel{background:#166d3b0d;grid-template-columns:minmax(0,1fr) minmax(320px,.8fr);gap:1rem;display:grid}.tax-export-panel h4{margin:.2rem 0 .35rem;font-size:1.1rem}.tax-export-panel p{color:var(--muted);margin:0;line-height:1.45}.tax-metrics{gap:.5rem;display:grid}.tax-metrics span{border:1px solid var(--line);background:var(--surface);color:var(--muted);border-radius:8px;justify-content:space-between;gap:1rem;padding:.65rem .75rem;font-weight:800;display:flex}.tax-metrics strong{color:var(--ink)}.job-photo-panel{gap:1rem;display:grid}.photo-toolbar{border:0;padding:0}.photo-controls{grid-template-columns:minmax(140px,.4fr) minmax(220px,1fr);align-items:end;gap:.75rem;display:grid}.photo-list{gap:.5rem;display:grid}.photo-row{border:1px solid var(--line);background:var(--surface-soft);border-radius:8px;justify-content:space-between;align-items:center;gap:1rem;padding:.75rem;display:flex}.photo-row div{gap:.2rem;display:grid}.photo-row span,.empty-note{color:var(--muted);font-size:.85rem}.empty-note{border:1px dashed var(--line-strong);background:var(--surface-soft);border-radius:8px;margin:0;padding:.9rem;line-height:1.45}.compact{box-shadow:none}.records-panel{border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow);border-radius:8px;gap:1rem;padding:1rem;display:grid}.records-header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:1rem;padding-bottom:1rem;display:flex}.records-header h2{margin:.2rem 0 0}.records-actions{flex-wrap:wrap;justify-content:end;align-items:center;gap:.6rem;display:flex}.inline-toggle{flex-direction:row;align-items:center;gap:.45rem;min-height:2.5rem;display:flex}.inline-toggle input{width:auto;min-height:1rem}.danger-action{color:#8b2d2d;border-color:#912d2d73}.labor-schedule-card,.rain-delay-panel,.work-block-list{border:1px solid var(--line);background:var(--surface-soft);border-radius:8px;gap:.35rem;padding:.85rem;display:grid}.rain-delay-panel{grid-template-columns:minmax(260px,1fr) minmax(150px,.25fr) minmax(120px,.2fr) auto;align-items:end;margin:1rem}.rain-delay-panel h3,.rain-delay-panel p{margin:.2rem 0 0}.rain-delay-panel p{color:var(--muted);line-height:1.45}.labor-schedule-card span{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;font-size:.78rem;font-weight:900}.labor-schedule-card p{color:var(--muted);margin:0;line-height:1.45}.work-block-list{margin-top:.75rem}.work-block-list span{font-size:.9rem}.calendar-board{gap:1rem;display:grid}.calendar-toolbar{justify-content:space-between;align-items:center;gap:1rem;display:flex}.calendar-toolbar h3{margin:.2rem 0;font-size:1.45rem}.calendar-toolbar span{color:var(--muted)}.calendar-grid{border:1px solid var(--line);background:#fff;border-radius:10px;grid-template-columns:repeat(7,minmax(120px,1fr));display:grid;overflow:hidden}.calendar-weekday{border-bottom:1px solid var(--line);background:var(--surface-soft);color:var(--muted);letter-spacing:.08em;text-align:center;text-transform:uppercase;padding:.75rem;font-size:.75rem;font-weight:900}.calendar-day{border-right:1px solid var(--line);border-bottom:1px solid var(--line);background:#fff;align-content:start;gap:.5rem;min-height:11rem;padding:.65rem;display:grid}.calendar-day:nth-child(7n+7){border-right:0}.calendar-day.muted-day{color:var(--muted);background:#f7f8f5}.calendar-day.has-events{background:linear-gradient(#fff 0%,#f6faf6 100%)}.calendar-day-number{color:var(--muted);font-size:.8rem;font-weight:900}.calendar-events{gap:.5rem;display:grid}.calendar-event-card{border:1px solid #166d3b2e;border-left:4px solid var(--green);background:#fff;border-radius:8px;gap:.4rem;padding:.6rem;display:grid;box-shadow:0 8px 18px #12231b14}.calendar-event-card div:first-child{gap:.15rem;display:grid}.calendar-event-card strong{line-height:1.2}.calendar-event-card span,.calendar-event-card small,.calendar-event-card p{color:var(--muted);margin:0;line-height:1.35}.calendar-event-card span{font-size:.82rem;font-weight:800}.calendar-event-actions{justify-content:space-between;align-items:center;gap:.5rem;display:flex}.calendar-event-actions button{min-height:2rem;padding:.35rem .7rem}.record-list{gap:.85rem;display:grid}.record-card{border:1px solid var(--line);background:var(--surface-soft);border-radius:10px;gap:.85rem;padding:1rem;display:grid}.record-card-header{justify-content:space-between;align-items:start;gap:1rem;display:flex}.record-card-header h3{margin:.5rem 0 0}.record-card-header strong{font-size:1.25rem}.record-card-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:.6rem;display:flex}.record-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:.6rem;display:grid}.record-grid span{color:var(--muted);letter-spacing:.04em;text-transform:uppercase;gap:.2rem;font-size:.8rem;font-weight:800;display:grid}.record-grid strong{color:var(--ink);letter-spacing:0;text-transform:none;font-size:.95rem}.invoice-workspace{grid-template-columns:minmax(220px,.35fr) minmax(0,1fr);gap:1rem;display:grid}.invoice-list-panel,.invoice-detail-panel,.workflow-card{border:1px solid var(--line);background:var(--surface-soft);border-radius:10px}.invoice-list-panel{align-content:start;gap:.5rem;padding:.75rem;display:grid}.invoice-list-item{text-align:left;background:#fff;border-color:#0000;gap:.25rem;width:100%;height:auto;min-height:0;padding:.85rem;display:grid}.invoice-list-item.active{box-shadow:inset 4px 0 0 var(--green);border-color:#166d3b59}.invoice-list-item span,.invoice-list-item small,.invoice-list-item b{color:var(--muted)}.invoice-list-item span{letter-spacing:.08em;text-transform:uppercase;font-size:.72rem;font-weight:900}.invoice-list-item strong{color:var(--ink);line-height:1.2}.invoice-list-item b{font-size:.9rem}.invoice-detail-panel{background:#fff;gap:1rem;padding:1rem;display:grid}.invoice-detail-header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:start;gap:1rem;padding-bottom:1rem;display:flex}.invoice-detail-header h3,.workflow-card h4{margin:.2rem 0 0}.invoice-detail-header span{color:var(--muted)}.invoice-overview-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:.75rem;display:grid}.invoice-overview-grid div{border:1px solid var(--line);background:var(--surface-soft);border-radius:8px;gap:.25rem;padding:.8rem;display:grid}.invoice-overview-grid span,.workflow-step span{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;font-size:.72rem;font-weight:900}.invoice-overview-grid strong{font-size:1.1rem}.workflow-layout{grid-template-columns:minmax(260px,.8fr) minmax(0,1fr);gap:1rem;display:grid}.workflow-card{align-content:start;gap:1rem;padding:1rem;display:grid}.workflow-timeline{gap:.75rem;display:grid}.workflow-step{border-left:4px solid var(--line-strong);gap:.2rem;padding:.2rem 0 .2rem .85rem;display:grid}.workflow-step.complete{border-left-color:var(--green)}.workflow-step.current{border-left-color:var(--blue)}.workflow-step.attention{border-left-color:var(--amber)}.workflow-step p{color:var(--muted);margin:0;line-height:1.45}.compact-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.supplier-list{display:grid}.supplier-row{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:1rem;padding:.8rem 1rem;display:flex}.supplier-row:last-child{border-bottom:0}.supplier-row div{gap:.2rem;display:grid}.supplier-row span{color:var(--muted);font-size:.85rem}.pricing-list{gap:.85rem;display:grid}.pricing-card{border:1px solid var(--line);background:var(--surface-soft);border-radius:10px;grid-template-columns:minmax(220px,1.4fr) .45fr repeat(3,minmax(120px,.7fr));align-items:end;gap:.75rem;padding:.85rem;display:grid}.pricing-card div{gap:.25rem;display:grid}.pricing-card div span{color:var(--muted);font-size:.85rem}.pricing-toggle{align-content:center;gap:.45rem;min-height:2.5rem;display:flex}.pricing-toggle input{width:auto;min-height:1rem}@media (max-width:980px){.app-shell,.quote-grid,.invoice-grid,.payment-bar,.tax-export-panel,.bottom-grid{grid-template-columns:1fr}.side-rail{gap:1rem}.nav-list{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width:640px){.workspace{padding:.75rem}.auth-secondary-actions{grid-template-columns:1fr}.quote-header,.quote-actions,.invoice-document-header,.invoice-document-meta,.invoice-document-footer,.form-row,.section-toolbar,.rain-delay-panel,.records-header,.record-card-header,.record-card-actions,.photo-controls,.photo-row,.pricing-card,.supplier-row{flex-direction:column;grid-template-columns:1fr;align-items:stretch}.invoice-document dl div{grid-template-columns:1fr}.line-items-wrap{overflow:visible}.line-items-table{min-width:0}.line-items-table thead{display:none}.line-items-table,.line-items-table tbody,.line-items-table tr,.line-items-table td{width:100%;display:block}.line-items-table tbody{gap:.85rem;padding:.85rem;display:grid}.line-items-table tbody tr{border:1px solid var(--line);background:var(--surface-soft);border-radius:10px;gap:.55rem;padding:.85rem;display:grid}.line-items-table td{border-bottom:0;gap:.3rem;padding:0;display:grid}.line-items-table td:before{content:attr(data-label);color:var(--muted);letter-spacing:.08em;text-transform:uppercase;font-size:.72rem;font-weight:900}.line-items-table td:first-child{min-width:0}.line-items-table .quantity-input,.line-items-table .money-input,.line-items-table select{width:100%;min-width:0}.line-items-table tfoot{padding:0 .85rem .85rem;display:grid}.line-items-table tfoot tr{border:1px solid var(--line);background:#fff;border-radius:10px;grid-template-columns:1fr;padding:.85rem;display:grid}.line-items-table tfoot td{border-bottom:0;justify-content:space-between;padding:.25rem 0;display:flex}.line-items-table tfoot td:empty{display:none}.nav-list{grid-template-columns:repeat(2,minmax(0,1fr))}.record-grid,.invoice-workspace,.workflow-layout,.invoice-overview-grid,.compact-grid{grid-template-columns:1fr}.invoice-detail-header,.calendar-toolbar{flex-direction:column;align-items:stretch}.calendar-grid{background:0 0;border:0;gap:.75rem;display:grid}.calendar-weekday{display:none}.calendar-day{border:1px solid var(--line);border-radius:10px;min-height:0}.calendar-day:not(.has-events),.calendar-day.muted-day{display:none}.calendar-day-number:before{content:"Day "}th,td{padding:.65rem}}
