@font-face{font-family:Archivo Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/archivo-vietnamese-wght-normal-XAtsl5Q_.woff2) format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Archivo Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/archivo-latin-ext-wght-normal-C4zznr8T.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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:Archivo Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/archivo-latin-wght-normal-E0tuGl4L.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,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-display:swap;font-weight:400;src:url(/assets/ibm-plex-sans-cyrillic-ext-400-normal-g30qAdWV.woff2) format("woff2"),url(/assets/ibm-plex-sans-cyrillic-ext-400-normal-Dsrv2Tcn.woff) format("woff");unicode-range:U+0460-052F,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-display:swap;font-weight:400;src:url(/assets/ibm-plex-sans-cyrillic-400-normal-DZqxrq2p.woff2) format("woff2"),url(/assets/ibm-plex-sans-cyrillic-400-normal-BTotfTJu.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-sans-greek-400-normal-_efipK4i.woff2) format("woff2"),url(/assets/ibm-plex-sans-greek-400-normal-D9ESIMu3.woff) format("woff");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-sans-vietnamese-400-normal-DG4YqDda.woff2) format("woff2"),url(/assets/ibm-plex-sans-vietnamese-400-normal-fK1oJ5dG.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-sans-latin-ext-400-normal-C5H60-Va.woff2) format("woff2"),url(/assets/ibm-plex-sans-latin-ext-400-normal-RBey6euL.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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-display:swap;font-weight:400;src:url(/assets/ibm-plex-sans-latin-400-normal-CDDApCn2.woff2) format("woff2"),url(/assets/ibm-plex-sans-latin-400-normal-CYLoc0-x.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,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-display:swap;font-weight:500;src:url(/assets/ibm-plex-sans-cyrillic-ext-500-normal-Cs5J6C77.woff2) format("woff2"),url(/assets/ibm-plex-sans-cyrillic-ext-500-normal-DB5PtV2g.woff) format("woff");unicode-range:U+0460-052F,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-display:swap;font-weight:500;src:url(/assets/ibm-plex-sans-cyrillic-500-normal-CocWQlwt.woff2) format("woff2"),url(/assets/ibm-plex-sans-cyrillic-500-normal-ByOcLdNv.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-sans-greek-500-normal-JMMifIXV.woff2) format("woff2"),url(/assets/ibm-plex-sans-greek-500-normal-CuWXN6rf.woff) format("woff");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-sans-vietnamese-500-normal-e4dixQRQ.woff2) format("woff2"),url(/assets/ibm-plex-sans-vietnamese-500-normal-BEb3_waV.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-sans-latin-ext-500-normal-DakdToA3.woff2) format("woff2"),url(/assets/ibm-plex-sans-latin-ext-500-normal-D0aIdm-b.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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-display:swap;font-weight:500;src:url(/assets/ibm-plex-sans-latin-500-normal-6ng42L7E.woff2) format("woff2"),url(/assets/ibm-plex-sans-latin-500-normal-BgVn5rGT.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,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-display:swap;font-weight:600;src:url(/assets/ibm-plex-sans-cyrillic-ext-600-normal-DUMzJB7m.woff2) format("woff2"),url(/assets/ibm-plex-sans-cyrillic-ext-600-normal-Bz0x94Yp.woff) format("woff");unicode-range:U+0460-052F,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-display:swap;font-weight:600;src:url(/assets/ibm-plex-sans-cyrillic-600-normal-71GNu3SW.woff2) format("woff2"),url(/assets/ibm-plex-sans-cyrillic-600-normal-BGq0mW3O.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-sans-greek-600-normal-DzTrcv_p.woff2) format("woff2"),url(/assets/ibm-plex-sans-greek-600-normal-D-CqTdkO.woff) format("woff");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-sans-vietnamese-600-normal-DpPYBSTl.woff2) format("woff2"),url(/assets/ibm-plex-sans-vietnamese-600-normal-DgdngZtN.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-sans-latin-ext-600-normal-DOrvGEcy.woff2) format("woff2"),url(/assets/ibm-plex-sans-latin-ext-600-normal-DIrixKbi.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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-display:swap;font-weight:600;src:url(/assets/ibm-plex-sans-latin-600-normal-CuJfVYMP.woff2) format("woff2"),url(/assets/ibm-plex-sans-latin-600-normal-Cu4Hd6ag.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,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 Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-mono-cyrillic-ext-500-normal-BqneJy0T.woff2) format("woff2"),url(/assets/ibm-plex-mono-cyrillic-ext-500-normal-BIfNGwUT.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-mono-cyrillic-500-normal-Bq9vWWag.woff2) format("woff2"),url(/assets/ibm-plex-mono-cyrillic-500-normal-Ael50iVv.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-mono-vietnamese-500-normal-DZ4AoWbu.woff2) format("woff2"),url(/assets/ibm-plex-mono-vietnamese-500-normal-C8zxqsMH.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-mono-latin-ext-500-normal-CAhNIIs5.woff2) format("woff2"),url(/assets/ibm-plex-mono-latin-ext-500-normal-CZ70TYgx.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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 Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-mono-latin-500-normal-DSY6xOcd.woff2) format("woff2"),url(/assets/ibm-plex-mono-latin-500-normal-CB9ihrfo.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--bg: #f5f7fa;--surface: #ffffff;--sunk: #eef2f6;--ink: #0e1e33;--muted: #52637a;--line: #dce2ea;--line-2: #e8edf3;--navy: #0f2b4c;--navy-deep: #0b2240;--navy-soft: #e8eef5;--on-navy: #f1f4f8;--on-navy-muted: #afbdce;--navy-line: rgba(175, 189, 206, .16);--orange: #f26b1d;--orange-btn: #e25f10;--orange-ink: #b9500f;--orange-soft: #fef1e8;--good: #1d7f45;--good-soft: #e3f3e9;--warn: #9a5b00;--warn-soft: #fdf1dc;--bad: #b4322a;--bad-soft: #fbe7e5;--info: #2b5c9e;--info-soft: #e6eef9;--violet: #5b4bb0;--violet-soft: #eeebfa;--f-display: "Archivo Variable", "Archivo", "Arial Narrow", Arial, sans-serif;--f-body: "IBM Plex Sans", system-ui, -apple-system, "Segoe UI", sans-serif;--f-mono: "IBM Plex Mono", ui-monospace, Menlo, Consolas, monospace;color-scheme:light}*{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;background:var(--bg);color:var(--ink);font:14.5px/1.5 var(--f-body);-webkit-font-smoothing:antialiased}h1,h2,h3,h4{font-family:var(--f-display);font-stretch:106%;margin:0;line-height:1.15;text-wrap:balance}p{margin:0}button{font:inherit;color:inherit}a{color:var(--navy)}code,.mono{font-family:var(--f-mono);font-size:.92em}:focus-visible{outline:2px solid var(--orange);outline-offset:2px;border-radius:3px}.muted{color:var(--muted)}.num{font-variant-numeric:tabular-nums}.row{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.sp{flex:1}.stack{display:grid;gap:16px}.vh{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:38px;padding:0 14px;border-radius:5px;border:1px solid var(--line);background:var(--surface);font-weight:600;font-size:13.5px;cursor:pointer;white-space:nowrap;text-decoration:none;color:var(--ink)}.btn:hover{border-color:var(--navy)}.btn.primary{background:var(--orange-btn);border-color:var(--orange-btn);color:#fff}.btn.primary:hover{background:#c9530c}.btn.navy{background:var(--navy);border-color:var(--navy);color:#fff}.btn.ghost{border-color:transparent;background:transparent;color:var(--muted)}.btn.ghost:hover{background:var(--sunk);color:var(--ink)}.btn.danger{color:var(--bad)}.btn.sm{min-height:32px;padding:0 10px;font-size:13px}.btn:disabled{opacity:.5;cursor:not-allowed}.btn svg{width:16px;height:16px}.pill{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:600;padding:2px 9px;border-radius:999px;white-space:nowrap;background:var(--sunk);color:var(--muted)}.pill:before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor}.s-new{background:var(--orange-soft);color:var(--orange-ink)}.s-reviewing,.s-scoped{background:var(--info-soft);color:var(--info)}.s-pricing,.s-quoted{background:var(--violet-soft);color:var(--violet)}.s-won,.s-scheduled,.s-progress{background:var(--navy-soft);color:var(--navy)}.s-complete{background:var(--good-soft);color:var(--good)}.s-lost,.s-declined{background:var(--sunk);color:var(--muted)}.chip{font-size:12px;padding:2px 8px;border-radius:4px;background:var(--sunk);color:var(--ink);white-space:nowrap}.chip.oth{background:var(--orange-soft);color:var(--orange-ink)}.chips{display:flex;gap:4px;flex-wrap:wrap}.src{font-family:var(--f-mono);font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}.overdue{color:var(--bad);font-weight:600}.soon{color:var(--warn);font-weight:600}.app{display:grid;grid-template-columns:232px minmax(0,1fr);min-height:100%}.side{background:var(--navy);color:var(--on-navy);display:flex;flex-direction:column;gap:22px;padding:18px 12px;position:sticky;top:0;height:100vh}.side .logo{padding:4px 8px;display:block}.side .logo img{height:30px;width:auto;display:block}.side .sub{font:500 10.5px var(--f-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--on-navy-muted);padding:0 10px;margin-top:-12px}.side nav{display:grid;gap:2px}.side nav a{display:flex;align-items:center;gap:11px;padding:9px 10px;border-radius:5px;color:var(--on-navy-muted);font-weight:500;text-decoration:none;min-height:40px}.side nav a svg{width:18px;height:18px;flex:none}.side nav a:hover{color:#fff;background:#ffffff0d}.side nav a[aria-current=page]{background:#f26b1d29;color:#fff}.side .me{margin-top:auto;border-top:1px solid var(--navy-line);padding:14px 8px 0;display:flex;gap:10px;align-items:center}.side .me b{display:block;color:#fff;font-weight:600;font-size:13.5px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:130px}.side .me span{font-size:12px;color:var(--on-navy-muted)}.side .me a{margin-left:auto;color:var(--on-navy-muted);font-size:12px}.av{width:32px;height:32px;border-radius:50%;display:grid;place-items:center;font:600 12.5px var(--f-body);color:#fff;background:var(--orange-btn);flex:none}.main{min-width:0;display:flex;flex-direction:column}.content{padding:22px 28px 64px;display:grid;gap:16px;align-content:start;max-width:1360px;width:100%}.ph{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;flex-wrap:wrap}.ph h1{font-size:26px;font-weight:750;color:var(--navy)}.ph p{color:var(--muted);margin-top:4px}.back{display:inline-flex;align-items:center;gap:4px;font-size:13px;color:var(--muted);text-decoration:none}.back:hover{color:var(--navy)}.back svg{width:14px;height:14px}.pipe{display:grid;grid-template-columns:repeat(9,minmax(0,1fr));border:1px solid var(--line);border-radius:8px;background:var(--surface);overflow:hidden}.pipe button{border:0;border-right:1px solid var(--line-2);background:none;padding:10px 12px;text-align:left;cursor:pointer;display:grid;gap:2px;min-width:0}.pipe button:last-child{border-right:0}.pipe button:hover{background:var(--sunk)}.pipe button[aria-pressed=true]{background:var(--navy-soft);box-shadow:inset 0 -3px 0 var(--navy)}.pipe .n{font:700 22px var(--f-display);font-variant-numeric:tabular-nums;color:var(--navy)}.pipe .l{font-size:11.5px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pipe .new .n{color:var(--orange-ink)}.toolbar{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.tabs{display:flex;gap:4px;flex-wrap:wrap}.tabs button{border:1px solid transparent;background:none;border-radius:5px;padding:6px 11px;font-weight:600;font-size:13px;color:var(--muted);cursor:pointer}.tabs button[aria-pressed=true]{background:var(--surface);border-color:var(--line);color:var(--ink)}.search{position:relative;width:min(320px,100%)}.search input{width:100%;min-height:36px;border:1px solid var(--line);border-radius:5px;padding:0 10px 0 32px;font:14px var(--f-body);background:var(--surface)}.search svg{position:absolute;left:10px;top:50%;transform:translateY(-50%);width:15px;height:15px;color:var(--muted)}.toolbar select{min-height:36px;border:1px solid var(--line);border-radius:5px;padding:0 8px;font:13.5px var(--f-body);background:var(--surface)}.tw{background:var(--surface);border:1px solid var(--line);border-radius:8px;overflow-x:auto}table{width:100%;border-collapse:collapse;font-size:13.5px}th{text-align:left;font-size:11.5px;font-weight:600;color:var(--muted);padding:10px 12px;border-bottom:1px solid var(--line);white-space:nowrap;background:var(--bg)}td{padding:11px 12px;border-bottom:1px solid var(--line-2);vertical-align:top}tbody tr{cursor:pointer}tbody tr:hover td{background:#f9fbfd}tbody tr:last-child td{border-bottom:0}td .t{font-weight:600;color:var(--ink);text-decoration:none}td a.t:hover{text-decoration:underline}td .s{font-size:12.5px;color:var(--muted)}.empty{padding:40px 20px;text-align:center;color:var(--muted)}.loading{display:flex;gap:10px;align-items:center;justify-content:center;padding:40px;color:var(--muted)}.card{background:var(--surface);border:1px solid var(--line);border-radius:8px;min-width:0}.card>header{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:12px 16px;border-bottom:1px solid var(--line-2);min-height:52px}.card>header h2{font-size:15px;font-weight:700;color:var(--navy);font-stretch:100%}.card .body{padding:14px 16px;display:grid;gap:12px}.kv{display:grid;grid-template-columns:130px minmax(0,1fr);gap:7px 14px;font-size:13.5px;margin:0}.kv dt{color:var(--muted)}.kv dd{margin:0;min-width:0;overflow-wrap:anywhere}.msg{background:var(--bg);border:1px solid var(--line-2);border-radius:6px;padding:12px 14px;font-size:14px;white-space:pre-wrap}.alert{border-radius:6px;padding:10px 12px;font-size:13.5px;display:flex;gap:8px;flex-wrap:wrap;align-items:baseline}.alert.bad{background:var(--bad-soft);color:var(--bad)}.alert.warn{background:var(--warn-soft);color:#7a4800}.alert.info{background:var(--info-soft);color:var(--info)}.dh{display:flex;gap:16px;align-items:flex-start;justify-content:space-between;flex-wrap:wrap}.dh .id{font:500 12px var(--f-mono);color:var(--orange-ink);letter-spacing:.06em}.dh h1{font-size:24px;font-weight:750;color:var(--navy);margin:4px 0 6px}.dh .meta{display:flex;gap:6px 14px;flex-wrap:wrap;color:var(--muted);font-size:13px;align-items:center}.dgrid{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:16px;align-items:start}.stepper{display:flex;background:var(--surface);border:1px solid var(--line);border-radius:8px;overflow-x:auto;margin:0;padding:0}.stepper li{list-style:none;flex:1 0 96px;padding:10px 12px;font-size:12px;color:var(--muted);border-right:1px solid var(--line-2);display:grid;gap:6px}.stepper li:last-child{border-right:0}.stepper .bar{height:4px;border-radius:2px;background:var(--line)}.stepper .done .bar{background:var(--navy)}.stepper .now{color:var(--ink);font-weight:600;background:var(--orange-soft)}.stepper .now .bar{background:var(--orange)}.closed-banner{display:flex;gap:12px;align-items:center;padding:12px 16px;border-radius:8px;border:1px solid var(--line);background:var(--sunk);flex-wrap:wrap}.drop{border:1.5px dashed var(--line);border-radius:8px;padding:14px 16px;display:flex;gap:12px;align-items:center;flex-wrap:wrap;background:var(--bg);font-size:13.5px;color:var(--muted)}.drop.over{border-color:var(--orange);background:var(--orange-soft)}.drop svg{width:22px;height:22px;color:var(--navy);flex:none}.drop .t{flex:1;min-width:200px}.drop .t b{color:var(--ink);display:block;font-weight:600}.frow{display:grid;grid-template-columns:auto minmax(0,1fr) auto auto auto;gap:10px;align-items:center;padding:8px 10px;border:1px solid var(--line-2);border-radius:6px;font-size:13px}.frow .ic{width:34px;height:34px;border-radius:5px;display:grid;place-items:center;background:var(--bg);color:var(--navy);font:600 9.5px var(--f-mono);text-transform:uppercase}.frow .nm{min-width:0}.frow .nm button{display:block;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;cursor:pointer;background:none;border:0;padding:0;text-align:left;max-width:100%;color:var(--navy)}.frow .nm button:hover{text-decoration:underline}.frow .nm span{color:var(--muted);font-size:12px}.frow select{font-size:12.5px;padding:4px 6px;border:1px solid var(--line);border-radius:4px;background:var(--surface)}.frow label{display:flex;gap:5px;align-items:center;font-size:12px;color:var(--muted);white-space:nowrap}.progress{height:4px;border-radius:2px;background:var(--line);overflow:hidden}.progress>span{display:block;height:100%;background:var(--orange);transition:width .2s}.field{display:grid;gap:5px;min-width:0;align-content:start}.field label,.lbl{font-size:12.5px;font-weight:600}.field select,.field input,.field textarea{min-height:38px;border:1px solid var(--line);border-radius:5px;padding:7px 10px;font:14px var(--f-body);background:var(--surface);color:var(--ink);width:100%}.field textarea{min-height:84px;resize:vertical}.field input:focus,.field select:focus,.field textarea:focus{outline:2px solid var(--navy);outline-offset:0;border-color:var(--navy)}.field.has-error input,.field.has-error select,.field.has-error textarea{border-color:var(--bad)}.field .hint{font-size:12px;color:var(--muted)}.field .ferr{font-size:12px;color:var(--bad);font-weight:500}.req{color:var(--bad)}.formgrid{display:grid;grid-template-columns:1fr 1fr;gap:14px 16px;align-items:start}.formgrid .full{grid-column:1 / -1}.formgrid.three{grid-template-columns:2fr 1fr 1fr}.rform{max-width:920px}.fsec{border:0;margin:0;padding:20px 22px 22px;display:grid;gap:16px;min-width:0}.fsec+.fsec{border-top:1px solid var(--line-2)}.fhd{display:flex;gap:12px;align-items:flex-start}.fhd .fn{width:30px;height:30px;border-radius:8px;background:var(--orange-soft);color:var(--orange-ink);display:grid;place-items:center;flex:none;font:700 14px var(--f-display)}.fhd b{display:block;font:700 16px var(--f-display);font-stretch:104%;color:var(--navy)}.fhd span{font-size:13px;color:var(--muted)}.fact{display:flex;gap:8px;align-items:center;flex-wrap:wrap;padding:16px 22px;border-top:1px solid var(--line);background:var(--bg);border-radius:0 0 8px 8px}.seg{display:inline-flex;border:1px solid var(--line);border-radius:6px;overflow:hidden;justify-self:start;background:var(--surface)}.seg button{border:0;background:none;padding:8px 14px;font-size:13.5px;font-weight:600;color:var(--muted);cursor:pointer}.seg button+button{border-left:1px solid var(--line)}.seg button[aria-pressed=true]{background:var(--navy);color:#fff}.choice{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.choice button{display:grid;gap:2px;text-align:left;padding:12px 14px;border:1px solid var(--line);border-radius:8px;background:var(--surface);cursor:pointer}.choice button b{color:var(--navy);font-size:14.5px}.choice button span{color:var(--muted);font-size:12.5px}.choice button:hover{border-color:var(--navy)}.choice button[aria-pressed=true]{border-color:var(--navy);background:var(--navy-soft);box-shadow:inset 0 0 0 1px var(--navy)}.check{display:flex;gap:8px;align-items:center;font-size:13.5px;cursor:pointer}.check input{accent-color:var(--navy);width:16px;height:16px}.svcwrap{display:grid;gap:14px}.svchead{display:flex;justify-content:space-between;align-items:baseline;gap:10px}.svchead .n{font-size:12.5px;color:var(--muted)}.sgrp{display:grid;gap:8px}.sgrp h4{margin:0;font:600 10.5px var(--f-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--muted);display:flex;align-items:center;gap:10px}.sgrp h4:after{content:"";flex:1;height:1px;background:var(--line-2)}.stiles{display:grid;grid-template-columns:repeat(auto-fill,minmax(168px,1fr));gap:8px}.stile{display:flex;align-items:center;gap:10px;padding:9px 10px;border:1px solid var(--line);border-radius:7px;background:var(--surface);cursor:pointer;text-align:left;font-size:13.5px;font-weight:500;color:var(--ink);min-height:48px}.stile:hover{border-color:var(--navy)}.stile .si{width:30px;height:30px;border-radius:6px;display:grid;place-items:center;background:var(--sunk);color:var(--navy);flex:none}.stile .si svg{width:18px;height:18px}.stile .ck{margin-left:auto;width:18px;height:18px;border-radius:50%;border:1.5px solid var(--line);flex:none;display:grid;place-items:center;color:#fff}.stile .ck svg{width:11px;height:11px;opacity:0}.stile[aria-pressed=true]{border-color:var(--navy);background:var(--navy-soft);box-shadow:inset 0 0 0 1px var(--navy)}.stile[aria-pressed=true] .si{background:var(--navy);color:#fff}.stile[aria-pressed=true] .ck{background:var(--orange);border-color:var(--orange)}.stile[aria-pressed=true] .ck svg{opacity:1}.list{display:grid;gap:8px}.li{display:flex;gap:10px;align-items:center;justify-content:space-between;padding:9px 10px;border:1px solid var(--line-2);border-radius:6px;font-size:13.5px;flex-wrap:wrap}.li .nm{display:grid;gap:1px;min-width:0}.li .nm b{font-weight:600}.li .nm span{color:var(--muted);font-size:12.5px}.li.dim{opacity:.6}.tag{font:600 10.5px var(--f-body);letter-spacing:.04em;text-transform:uppercase;padding:1px 6px;border-radius:4px;background:var(--sunk);color:var(--muted)}.tag.navy{background:var(--navy-soft);color:var(--navy)}.tag.good{background:var(--good-soft);color:var(--good)}.tag.warn{background:var(--warn-soft);color:#7a4800}dialog.modal{border:0;padding:0;background:var(--surface);border-radius:10px;width:min(560px,calc(100% - 32px));max-height:calc(100vh - 32px);box-shadow:0 30px 70px -20px #0006;color:var(--ink)}dialog.modal.wide{width:min(880px,calc(100% - 32px))}dialog.modal::backdrop{background:#0b224073}dialog.modal[open]{display:grid;grid-template-rows:auto minmax(0,1fr) auto}.modal .mh{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:16px 20px;border-bottom:1px solid var(--line-2)}.modal .mh h2{font-size:18px;color:var(--navy)}.modal .mb{padding:16px 20px;overflow:auto;display:grid;gap:14px}.modal .mf{display:flex;gap:8px;justify-content:flex-end;padding:14px 20px;border-top:1px solid var(--line-2);background:var(--bg);border-radius:0 0 10px 10px}.hero{border-left:4px solid var(--orange)}.tiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px}.tile{display:grid;gap:4px;padding:14px 16px;background:var(--surface);border:1px solid var(--line);border-radius:8px;text-decoration:none;color:var(--ink)}.tile:hover{border-color:var(--navy)}.tile .n{font:700 28px var(--f-display);color:var(--navy)}.tile .l{color:var(--muted);font-size:13px}.status{display:inline-flex;align-items:center;gap:8px;font-weight:600}.status .dot{width:8px;height:8px;border-radius:50%;background:currentColor}.status.good{color:var(--good)}.status.bad{color:var(--bad)}.center{min-height:100%;display:grid;place-items:center;place-content:center;gap:12px;padding:16px;text-align:center;color:var(--muted)}.center .card{text-align:left;color:var(--ink)}.card.narrow{max-width:440px;width:100%}.card.narrow .body{padding:24px}.logo-dark{width:150px}.spin{width:14px;height:14px;border:2px solid var(--line);border-top-color:var(--orange);border-radius:50%;animation:spin .8s linear infinite;flex:none;display:inline-block}@keyframes spin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.spin{animation-duration:2.4s}}@media(max-width:1200px){.dgrid{grid-template-columns:minmax(0,1fr) 300px}}@media(max-width:1000px){.dgrid{grid-template-columns:1fr}.pipe{grid-template-columns:repeat(5,minmax(0,1fr))}}@media(max-width:760px){.app{grid-template-columns:1fr;grid-template-rows:auto 1fr}.side{position:static;height:auto;flex-direction:row;align-items:center;gap:8px;padding:10px 12px;overflow-x:auto}.side .sub,.side .me span,.side .me b{display:none}.side nav{display:flex}.side nav a span{display:none}.side .me{margin:0 0 0 auto;border:0;padding:0}.content{padding:16px 16px 48px}.formgrid,.formgrid.three,.choice{grid-template-columns:1fr}.pipe{grid-template-columns:repeat(3,minmax(0,1fr))}.kv{grid-template-columns:110px minmax(0,1fr)}.frow{grid-template-columns:auto minmax(0,1fr) auto}.frow select,.frow label{grid-column:2 / -1}.tw table{min-width:760px}}.ws>header .muted{font-size:12.5px}.ws-sec{padding:16px 18px;display:grid;gap:12px;border-top:1px solid var(--line-2)}.ws>header+.ws-sec{border-top:0}.ws-h{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;flex-wrap:wrap}.ws-h h3{font:700 15px var(--f-display);color:var(--navy);display:flex;align-items:center;gap:8px;margin:0 0 2px}.stepn{display:inline-grid;place-items:center;width:20px;height:20px;border-radius:50%;background:var(--navy);color:#fff;font:600 11px var(--f-body)}.qhint{font-size:12.5px;color:var(--muted)}.qhint b{color:var(--ink)}.empty-ws{display:flex;gap:12px;align-items:center;padding:16px;border:1px dashed var(--line);border-radius:8px;background:var(--bg)}.empty-ws svg{width:26px;height:26px;color:var(--muted);flex:none}.empty-ws b{display:block}.empty-ws span{font-size:13px;color:var(--muted)}.bidt tbody tr{cursor:default}.bidt td{vertical-align:middle}.bidt td:last-child{width:1%}.bidt td.num{min-width:150px}.bidt th.ra{text-align:right}.bidt tr.sel td{background:var(--good-soft)}.bidt tr.sel td:first-child{box-shadow:inset 3px 0 0 var(--good)}.rowacts{display:flex;gap:4px;justify-content:flex-end;align-items:center;white-space:nowrap}.btn.sel-pill,.good-t{color:var(--good);font-weight:600}.warn-t{color:var(--warn)}.bad-t{color:var(--bad)}.linkbtn{border:0;background:none;padding:0;font:inherit;color:var(--info);cursor:pointer;display:inline-flex;align-items:center;gap:4px;text-align:left;overflow-wrap:anywhere}.linkbtn:hover{text-decoration:underline}.linkbtn svg{width:14px;height:14px;flex:none}.linkbtn.s{font-size:12.5px;margin-top:2px}.pricebar{display:grid;grid-template-columns:minmax(0,1fr) 24px minmax(0,1.3fr) minmax(0,1fr);gap:10px;align-items:stretch}.pricebar .pb{display:flex;flex-direction:column;gap:4px;padding:12px 14px;border:1px solid var(--line);border-radius:8px;background:var(--bg);min-width:0}.pricebar .pb.arrow{border:0;background:none;padding:0;display:grid;place-items:center;color:var(--muted);font-size:18px}.pricebar .pb.main{border:2px solid var(--navy);background:var(--surface)}.pricebar .pl{font:600 11px var(--f-body);letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}.pricebar .pv{font:750 24px var(--f-display);color:var(--navy);font-variant-numeric:tabular-nums;line-height:1.1}.pricebar .ps{font-size:12px;color:var(--muted);overflow:hidden;text-overflow:ellipsis}.pricebar .pin{display:flex;align-items:center;gap:4px;border-bottom:2px solid var(--line)}.pricebar .pin:focus-within{border-color:var(--orange)}.pricebar .pin span{font:750 22px var(--f-display);color:var(--muted)}.pricebar .pin input{border:0;outline:0;background:none;font:750 26px var(--f-display);color:var(--navy);width:100%;min-width:0;font-variant-numeric:tabular-nums;padding:2px 0}.pricebar .pv.mv{color:var(--good)}.pricebar .pv.mv.low{color:var(--warn)}.pricebar .pv.mv.neg{color:var(--bad)}.mk{display:flex;gap:4px;flex-wrap:wrap;margin-top:2px}.chipbtn{border:1px solid var(--line);background:var(--surface);border-radius:999px;padding:1px 8px;font:600 11.5px var(--f-body);color:var(--navy);cursor:pointer}.chipbtn:hover,.chipbtn:focus-visible{border-color:var(--navy)}.sendrow{display:flex;justify-content:space-between;align-items:flex-end;gap:12px;flex-wrap:wrap}.sendrow .narrow-f{max-width:200px}.qsum{display:grid;gap:8px}.qsum .pre{white-space:pre-wrap;margin:0;font-size:13.5px}.qnbox{border-left:3px solid var(--orange);background:var(--orange-soft);border-radius:0 6px 6px 0;padding:9px 12px;display:grid;gap:4px;font-size:13.5px}.qnbox ul{margin:0;padding-left:18px}.ws details summary{cursor:pointer}.ws details .list{margin-top:8px}.lines{border:1px solid var(--line);border-radius:8px;overflow:hidden}.lines .lh,.lines .ln{display:grid;grid-template-columns:minmax(0,1fr) 64px 64px 120px 36px;gap:6px;align-items:center;padding:6px 8px}.lines .lh{background:var(--bg);font-size:11.5px;font-weight:600;color:var(--muted);border-bottom:1px solid var(--line)}.lines .ln+.ln{border-top:1px solid var(--line-2)}.lines input{min-height:34px;border:1px solid var(--line);border-radius:5px;padding:5px 8px;font:14px var(--f-body);width:100%;min-width:0}.lines input.num{text-align:right}.lines input[aria-invalid=true]{border-color:var(--bad)}.lines .lf{display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding:8px;border-top:1px solid var(--line);background:var(--bg)}.lines .tax{display:flex;align-items:center;gap:6px;margin-left:auto;font-size:12.5px;font-weight:600}.lines .tax input{width:110px}.lines .tot{font-size:12.5px;font-weight:600}.lines .tot b{font:750 18px var(--f-display);color:var(--navy);margin-left:6px}@media(max-width:760px){.pricebar{grid-template-columns:1fr 1fr}.pricebar .pb.arrow{display:none}.pricebar .pb.main{grid-column:1 / -1;order:-1}.lines .lh{display:none}.lines .ln{grid-template-columns:1fr 1fr 1fr 36px}.lines .ln input:first-child{grid-column:1 / -1}.bidt table{min-width:560px}}.form-actions{display:flex;gap:8px;justify-content:flex-end;padding-top:12px;border-top:1px solid var(--line-2)}.list.pick{max-height:260px;overflow-y:auto}.list.pick .li.check{justify-content:flex-start;flex-wrap:nowrap;gap:10px;align-items:flex-start}.list.pick .li.check input{margin-top:4px}.list.pick .li.dim{cursor:default}.tiles{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.tile{display:flex;flex-direction:column;gap:2px;padding:12px 14px;border:1px solid var(--line);border-radius:8px;background:var(--bg);min-width:0}.tile .pl{font:600 11px var(--f-body);letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}.tile .pv{font:750 22px var(--f-display);color:var(--navy);font-variant-numeric:tabular-nums;line-height:1.15}.tile .pv.neg{color:var(--bad)}.tile .ps{font-size:12px;color:var(--muted)}.inv .li{border-radius:6px}.pays{list-style:none;margin:4px 0 0 14px;padding:0 0 0 12px;border-left:2px solid var(--line);display:grid;gap:4px;font-size:13px;color:var(--muted)}.pays li{display:flex;justify-content:space-between;gap:10px}.pays li b{color:var(--ink)}.pays li.rev span{text-decoration:line-through}.stat-row{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:16px}.tabs{display:flex;gap:4px;border-bottom:1px solid var(--line);margin-bottom:14px}.tabs button{border:0;background:none;padding:10px 14px;font:600 14px var(--f-body);color:var(--muted);border-bottom:2px solid transparent;margin-bottom:-1px;cursor:pointer}.tabs button[aria-selected=true]{color:var(--navy);border-bottom-color:var(--orange)}.filters{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:12px}.filters button{border:1px solid var(--line);background:var(--surface);border-radius:999px;padding:4px 12px;font:500 13px var(--f-body);color:var(--ink);cursor:pointer}.filters button[aria-pressed=true]{background:var(--navy);border-color:var(--navy);color:#fff}@media(max-width:760px){.tiles,.stat-row{grid-template-columns:1fr 1fr}}.aging{display:flex;flex-wrap:wrap;gap:0;border:1px solid var(--line);border-radius:8px;background:var(--surface);margin-bottom:14px;overflow:hidden}.aging span{flex:1 1 120px;display:grid;padding:8px 12px;border-right:1px solid var(--line-2)}.aging span:last-child{border-right:0}.aging small{font-size:11.5px;color:var(--muted)}.aging b{font-variant-numeric:tabular-nums}.chipbtn.def{border-color:var(--orange);color:var(--orange-ink)}.monthnav{display:flex;align-items:center;gap:10px;margin-bottom:14px}.monthnav b{font:700 17px var(--f-display);color:var(--navy);min-width:150px;text-align:center}.bars{list-style:none;margin:0;padding:0;display:grid;gap:8px}.bars li{display:grid;grid-template-columns:minmax(120px,220px) minmax(0,1fr) 110px;gap:12px;align-items:center;font-size:13.5px}.bars .bt{height:10px;border-radius:4px;background:var(--sunk);overflow:hidden}.bars .bt span{display:block;height:100%;border-radius:4px;background:var(--navy)}.bars .bv{text-align:right}@media(max-width:760px){.bars li{grid-template-columns:1fr 90px}.bars .bt{grid-column:1 / -1;grid-row:2}}.kvrow{display:contents}.tw.flat{border:0;border-radius:0}tbody tr.static{cursor:default}.card+.card{margin-top:16px}.small{font-size:12.5px}.cnt{display:inline-block;min-width:20px;padding:0 6px;margin-left:4px;border-radius:999px;background:var(--orange-soft);color:var(--orange-ink);font-size:12px;text-align:center}.form-narrow{max-width:920px}.onb{min-height:100%;padding:24px 16px 64px;display:grid;gap:24px;justify-items:center;align-content:start}.onb-top{width:100%;max-width:920px;display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}.onb-top img{height:30px}.onb-card{width:100%;max-width:640px;background:var(--surface);border:1px solid var(--line);border-radius:10px;padding:28px;display:grid;gap:16px}.onb-card.wide{max-width:920px}.onb-card h1{font-size:26px;font-weight:750;color:var(--navy)}.onb-h{font-size:16px;font-weight:700;color:var(--navy);margin-top:8px}.onb-pick{display:grid;grid-template-columns:1fr 1fr;gap:12px}.onb-pick button{text-align:left;display:grid;gap:6px;padding:18px;border:1px solid var(--line);border-radius:8px;background:var(--bg);cursor:pointer}.onb-pick button:hover{border-color:var(--orange);background:var(--orange-soft)}.onb-pick b{font:700 17px var(--f-display);color:var(--navy)}.onb-pick span{color:var(--muted);font-size:13.5px}.statepick{display:grid;grid-template-columns:repeat(auto-fill,minmax(48px,1fr));gap:4px}.statepick button{border:1px solid var(--line);background:var(--surface);border-radius:4px;padding:6px 0;font:600 12.5px var(--f-mono);cursor:pointer}.statepick button[aria-pressed=true]{background:var(--navy);border-color:var(--navy);color:#fff}.lines-foot{display:flex;justify-content:flex-end;align-items:flex-end;gap:16px;padding:10px 12px;border-top:1px solid var(--line-2);flex-wrap:wrap}.lines-foot .field{width:140px}.lines-foot .tot b{display:block;margin:0}.terms{display:grid;gap:8px;padding:12px;border:1px solid var(--line);border-radius:6px;background:var(--bg)}.terms .check{display:flex;gap:8px;align-items:flex-start}.terms-body{max-height:320px;overflow:auto;font-size:13px}.comp{display:flex;gap:8px 20px;flex-wrap:wrap;align-items:center}.area-add{display:flex;gap:8px;align-items:flex-end;flex-wrap:wrap}.area-add .field{min-width:140px}.chip.area{display:inline-flex;align-items:center;gap:4px}.chip.area button{border:0;background:none;padding:0;display:inline-flex;color:var(--muted);cursor:pointer}.chip.area button svg{width:13px;height:13px}.quote-live{border-color:var(--orange);box-shadow:0 0 0 3px var(--orange-soft)}.quote-amt{display:flex;align-items:baseline;gap:10px}.quote-amt b{font:750 30px var(--f-display);color:var(--navy);font-variant-numeric:tabular-nums}@media(max-width:760px){.onb-pick{grid-template-columns:1fr}.onb-card{padding:20px}}svg.ic{flex:none}.li>svg.ic{color:var(--muted)}.li .nm{flex:1;min-width:0}.errlist{margin:4px 0 0;padding-left:18px;width:100%;font-size:13px}.lines .ln.bad input[aria-invalid=true]{border-color:var(--bad);background:var(--bad-soft)}.lines .ln-err{grid-column:1 / -1;color:var(--bad);font-size:12.5px}.li.legal{align-items:flex-start}.legal-body{width:100%;display:grid;gap:10px}.legal-old{margin-top:6px}.legal-old summary,.legal-body>details>summary{cursor:pointer;font-size:12.5px;color:var(--muted)}.radios{border:0;margin:0;padding:0;display:grid;gap:6px}.radio{display:flex;gap:10px;align-items:flex-start;padding:9px 12px;border:1px solid var(--line);border-radius:6px;background:var(--surface);cursor:pointer}.radio:has(input:checked){border-color:var(--navy);background:var(--navy-soft)}.radio input{margin-top:3px}.attest{display:grid;gap:10px;padding:12px;border:1px solid var(--line);border-radius:6px;background:var(--bg)}.check.confirm{display:flex;gap:8px;align-items:flex-start;padding:10px 12px;border:1px solid var(--line);border-radius:6px;background:var(--bg);font-size:13.5px}.check.confirm input{margin-top:3px}.staff-upload>summary{cursor:pointer;font-size:13px;color:var(--info);margin-bottom:8px}.pricecheck{display:grid;gap:8px;padding:12px 14px;border:1px solid var(--orange);border-radius:8px;background:var(--orange-soft)}.pricecheck .pc-main{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap}.pricecheck .pc-main b{font:750 24px var(--f-display);color:var(--navy)}.pricecheck .pc-staff{font-size:13px}.pricecheck .check.confirm{background:var(--surface)}.lines.v2 .lh,.lines.v2 .ln{grid-template-columns:104px minmax(0,1fr) 64px 124px 108px 34px 104px 36px}.lines.v2 select{min-height:34px;border:1px solid var(--line);border-radius:5px;padding:5px 6px;font:13.5px var(--f-body);background:var(--card, #fff);width:100%;min-width:0}.lines.v2 .ln:not(.k-item) select.mode{grid-column:span 2}.lines.v2 .ln.k-surcharge select:first-child,.lines.v2 .ln.k-discount select:first-child{font-weight:600}.lines.v2 .ln.k-discount .amt{color:var(--bad)}.lines.v2 .txb{display:flex;align-items:center;justify-content:center;gap:6px;font-size:12.5px;color:var(--muted)}.lines.v2 .txb input{width:16px;min-height:16px;accent-color:var(--navy)}.lines.v2 .txl{display:none}.lines.v2 .amt{text-align:right;font-weight:600;font-variant-numeric:tabular-nums;padding-right:4px}.lines.v2 .lh span:nth-child(6){text-align:center}.lines.v2.ro input,.lines.v2.ro select{border-color:transparent;background:transparent;appearance:none;color:var(--ink);opacity:1}.lines.v2 .lf{align-items:flex-start}.lines.v2 .adds{display:flex;gap:6px;flex-wrap:wrap}.lines.v2 .sums{margin-left:auto;display:grid;gap:4px;min-width:280px;font-size:13px}.lines.v2 .sums .row{display:flex;align-items:center;justify-content:space-between;gap:12px}.lines.v2 .sums .row b{font-variant-numeric:tabular-nums}.lines.v2 .sums .taxrow label{flex:1;display:flex;align-items:center;justify-content:space-between;gap:8px}.lines.v2 .sums .taxrow input{width:130px}.lines.v2 .sums .row.note{justify-content:flex-end;font-size:12px;color:var(--muted)}.lines.v2 .sums .row.note.bad{color:var(--bad)}.lines.v2 .sums .row.tot{border-top:1px solid var(--line);padding-top:6px;font-weight:600}.lines.v2 .sums .row.tot b{font:750 18px var(--f-display);color:var(--navy)}@media(max-width:760px){.lines.v2 .ln{grid-template-columns:minmax(0,1fr) 64px minmax(0,1fr) minmax(0,1fr)}.lines.v2 .ln>:nth-child(2){grid-column:1 / -1;order:-1}.lines.v2 .ln .amt{grid-column:span 2}.lines.v2 .txb{justify-content:flex-start}.lines.v2 .txl{display:inline}.lines.v2 .sums{min-width:0;width:100%}}.qb-h{display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap;margin-bottom:6px}.qb-h .mk{display:flex;align-items:center;gap:6px;flex-wrap:wrap;font-size:12.5px}.qb-h .chipbtn[aria-pressed=true]{background:var(--navy);border-color:var(--navy);color:#fff}.ltable{overflow-x:auto}.ltable table{width:100%;border-collapse:collapse;font-size:13.5px;min-width:480px}.ltable th{text-align:left;font-size:11.5px;font-weight:600;color:var(--muted);background:var(--bg);padding:7px 8px;border-bottom:1px solid var(--line)}.ltable td{padding:7px 8px;border-bottom:1px solid var(--line-2);vertical-align:top}.ltable .num{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}.ltable .neg{color:var(--bad)}.ltable tfoot td{border-bottom:0;padding:4px 8px;text-align:right;color:var(--muted)}.ltable tfoot td.num{color:var(--ink)}.ltable tfoot tr.tot td:not(:first-child){border-top:1px solid var(--line)}.ltable tfoot tr.tot td{padding-top:8px;font-weight:700;color:var(--navy);font-size:15px}.ltable .small{font-size:12px;margin:4px 0 0}.approve-page{min-height:100vh;display:flex;flex-direction:column;background:var(--bg)}.ap-top{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 24px;background:#fff;border-bottom:3px solid var(--orange, #f26b1d)}.ap-top a{font-size:13px;text-decoration:none}.ap-main{flex:1;width:100%;max-width:1120px;margin:0 auto;padding:24px 16px 40px}.ap-foot{text-align:center;font-size:12.5px;padding:16px}.ap-grid{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:20px;align-items:start}.ap-side{position:sticky;top:16px;display:grid;gap:10px}.ap-head{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:8px}.ap-head>div{display:grid;gap:2px}.ap-project{font:700 18px var(--f-display);color:var(--navy)}.ap-total{text-align:right}.ap-total b{font:750 28px var(--f-display);color:var(--navy)}.ap-services{font-size:12.5px;color:var(--muted);text-transform:uppercase;letter-spacing:.04em;margin:4px 0 0}.ap-h{font-size:12px;text-transform:uppercase;letter-spacing:.05em;color:var(--navy);margin:18px 0 6px}.ap-more{margin-top:12px;border-top:1px solid var(--line-2);padding-top:10px}.ap-more summary{cursor:pointer;font-weight:600;font-size:13.5px}.ap-more .pre{font-size:13px;white-space:pre-wrap}.ap-answer .body{display:grid;gap:12px}.ap-answer .seg{width:100%}.ap-answer .seg button{flex:1}.ap-answer .small,.ap-contact{font-size:12px;margin:0}@media(max-width:860px){.ap-grid{grid-template-columns:1fr}.ap-side{position:static}.ap-total{text-align:left}}.ltable .u-m{display:none}@media(max-width:560px){.ltable table{min-width:0}.ltable .c-unit,.ltable .c-price{display:none}.ltable .u-m{display:inline;color:var(--muted)}.ltable tfoot .u-m{color:inherit}.ltable tfoot tr.tot td:first-child{border-top:1px solid var(--line)}}.side nav a .nbadge{margin-left:auto;min-width:20px;height:20px;padding:0 6px;border-radius:10px;background:var(--orange, #f26b1d);color:#fff;font:700 11.5px/20px var(--f-body);text-align:center}@media(max-width:760px){.side nav a{position:relative}.side nav a span.nbadge{display:block;position:absolute;top:1px;right:0;min-width:16px;height:16px;padding:0 4px;margin:0;font-size:10px;line-height:16px}}.ws-progress{margin:0 0 12px;padding:10px 12px;border-radius:6px;font-size:13.5px;font-weight:600;border-left:3px solid var(--orange, #f26b1d);background:#fff4ec;color:var(--ink)}.ws-progress.ok{border-left-color:var(--good, #1f8a5b);background:#eaf6f0}dialog.drawer{margin:0 0 0 auto;height:100vh;max-height:100vh;width:min(480px,100vw);max-width:100vw;padding:0;border:0;border-left:1px solid var(--line);background:#fff;box-shadow:-12px 0 32px #0e1e332e}dialog.drawer::backdrop{background:#0e1e3347}.drawer .dw{display:flex;flex-direction:column;height:100%}.drawer .dh{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;padding:18px 20px 14px;border-bottom:1px solid var(--line)}.drawer .dh h2{margin:0;font:700 18px var(--f-display);color:var(--navy)}.drawer .db{flex:1;overflow-y:auto;padding:16px 20px;display:grid;gap:14px;align-content:start}.drawer .df{display:flex;gap:8px;justify-content:flex-end;padding:12px 20px;border-top:1px solid var(--line);background:var(--bg)}.wcards{display:grid;grid-template-columns:repeat(auto-fit,minmax(128px,1fr));gap:10px;margin:0 0 16px}.wcard{position:relative;display:grid;gap:2px;text-align:left;padding:14px 14px 12px;border:1px solid var(--line);border-radius:8px;background:#fff;cursor:pointer;font:inherit;color:var(--ink);transition:border-color .15s,box-shadow .15s}.wcard:hover{border-color:var(--navy)}.wcard[aria-pressed=true]{border-color:var(--navy);box-shadow:inset 0 0 0 1px var(--navy);background:#f3f6fa}.wcard .wn{font:750 26px/1.1 var(--f-display);color:var(--navy)}.wcard .wl{font-weight:600;font-size:13.5px}.wcard .ws{font-size:12px;color:var(--muted)}.wcard.alert .ws{color:var(--bad);font-weight:600}.wcard.grouped{border-top:3px solid var(--orange, #f26b1d)}.wcard .wg{position:absolute;top:-10px;left:10px;padding:0 6px;background:var(--bg);font-size:10.5px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--muted)}.svc-filter select{min-height:34px;border:1px solid var(--line);border-radius:6px;padding:4px 8px;font:13.5px var(--f-body);background:#fff}.svc-icons{display:inline-flex;align-items:center;gap:4px}.svc-icons .svc-i{display:inline-grid;place-items:center;width:26px;height:26px;border-radius:6px;background:#eef2f7;color:var(--navy)}.svc-icons .svc-i svg{width:16px;height:16px}.svc-icons .more{font-size:12px;color:var(--muted)}.ops-table tbody tr{cursor:pointer}.ops-table tbody tr.sel{background:#f3f6fa}.ops-table .s{font-size:11.5px;color:var(--muted)}@media(max-width:760px){.wcards{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:760px){.tw{overflow-x:auto}.ops-table{min-width:860px}}.card.attention{border-color:var(--orange, #f26b1d);box-shadow:inset 3px 0 0 var(--orange, #f26b1d)}.board{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:14px;margin-top:12px}.board-job .body{display:grid;gap:8px}.board-job .bj-h{display:flex;justify-content:space-between;gap:8px;font-size:15px}.board-job .bj-where{font-size:13.5px}.board-job .pre{font-size:13px;max-height:7.5em;overflow:hidden}.smap{margin:0 0 10px}.smap img{display:block;width:100%;height:auto;border-radius:8px;border:1px solid var(--line);background:#eef2f7}.smap figcaption{font-size:12px;margin-top:4px}.ops-map{margin:0 0 14px}.addr-search{position:relative}.addr-search input{width:100%}.addr-list{position:absolute;z-index:20;top:100%;left:0;right:0;margin:2px 0 0;padding:4px 0;list-style:none;background:#fff;border:1px solid var(--line);border-radius:6px;box-shadow:0 8px 24px #0e1e3324}.addr-list li{padding:8px 12px;font-size:13.5px;cursor:pointer}.addr-list li[aria-selected=true],.addr-list li:hover{background:#f3f6fa}.markup-bar{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:10px}.markup-bar .swatches{display:flex;gap:6px}.markup-bar .sw{width:26px;height:26px;border-radius:50%;border:2px solid var(--line);cursor:pointer}.markup-bar .sw[aria-pressed=true]{outline:2px solid var(--navy);outline-offset:2px}.markup-text{min-height:32px;border:1px solid var(--line);border-radius:5px;padding:4px 8px;font:13.5px var(--f-body);width:220px}.markup-stage{display:grid;place-items:center;background:#1b2330;border-radius:8px;padding:8px;min-height:200px}.markup-stage canvas{max-width:100%;height:auto;touch-action:none;cursor:crosshair}.markup-stage canvas.tool-text{cursor:text}
