@font-face{font-family:Montserrat;font-style:normal;font-display:swap;font-weight:400;src:url(/_next/static/media/montserrat-cyrillic-ext-400-normal.238f3164.woff2) format("woff2"),url(/_next/static/media/montserrat-cyrillic-ext-400-normal.3cff320e.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:Montserrat;font-style:normal;font-display:swap;font-weight:400;src:url(/_next/static/media/montserrat-cyrillic-400-normal.9840a42e.woff2) format("woff2"),url(/_next/static/media/montserrat-cyrillic-400-normal.34546725.woff) format("woff");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Montserrat;font-style:normal;font-display:swap;font-weight:400;src:url(/_next/static/media/montserrat-vietnamese-400-normal.f680b0eb.woff2) format("woff2"),url(/_next/static/media/montserrat-vietnamese-400-normal.31c971da.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:Montserrat;font-style:normal;font-display:swap;font-weight:400;src:url(/_next/static/media/montserrat-latin-ext-400-normal.a6734113.woff2) format("woff2"),url(/_next/static/media/montserrat-latin-ext-400-normal.9d768205.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:Montserrat;font-style:normal;font-display:swap;font-weight:400;src:url(/_next/static/media/montserrat-latin-400-normal.705cdc10.woff2) format("woff2"),url(/_next/static/media/montserrat-latin-400-normal.6b42e70e.woff) format("woff");unicode-range:u+00??,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:Montserrat;font-style:normal;font-display:swap;font-weight:500;src:url(/_next/static/media/montserrat-cyrillic-ext-500-normal.ac1f2be1.woff2) format("woff2"),url(/_next/static/media/montserrat-cyrillic-ext-500-normal.399f084d.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:Montserrat;font-style:normal;font-display:swap;font-weight:500;src:url(/_next/static/media/montserrat-cyrillic-500-normal.55a78c80.woff2) format("woff2"),url(/_next/static/media/montserrat-cyrillic-500-normal.e7be3b49.woff) format("woff");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Montserrat;font-style:normal;font-display:swap;font-weight:500;src:url(/_next/static/media/montserrat-vietnamese-500-normal.221fa1b5.woff2) format("woff2"),url(/_next/static/media/montserrat-vietnamese-500-normal.269071d5.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:Montserrat;font-style:normal;font-display:swap;font-weight:500;src:url(/_next/static/media/montserrat-latin-ext-500-normal.91ca212d.woff2) format("woff2"),url(/_next/static/media/montserrat-latin-ext-500-normal.dd528ece.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:Montserrat;font-style:normal;font-display:swap;font-weight:500;src:url(/_next/static/media/montserrat-latin-500-normal.4eabd293.woff2) format("woff2"),url(/_next/static/media/montserrat-latin-500-normal.6c433f92.woff) format("woff");unicode-range:u+00??,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:Montserrat;font-style:normal;font-display:swap;font-weight:600;src:url(/_next/static/media/montserrat-cyrillic-ext-600-normal.abc4c41d.woff2) format("woff2"),url(/_next/static/media/montserrat-cyrillic-ext-600-normal.9c0bebef.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:Montserrat;font-style:normal;font-display:swap;font-weight:600;src:url(/_next/static/media/montserrat-cyrillic-600-normal.3bbf596e.woff2) format("woff2"),url(/_next/static/media/montserrat-cyrillic-600-normal.46972ecf.woff) format("woff");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Montserrat;font-style:normal;font-display:swap;font-weight:600;src:url(/_next/static/media/montserrat-vietnamese-600-normal.255999b5.woff2) format("woff2"),url(/_next/static/media/montserrat-vietnamese-600-normal.00e08129.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:Montserrat;font-style:normal;font-display:swap;font-weight:600;src:url(/_next/static/media/montserrat-latin-ext-600-normal.45f69401.woff2) format("woff2"),url(/_next/static/media/montserrat-latin-ext-600-normal.6710b7fe.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:Montserrat;font-style:normal;font-display:swap;font-weight:600;src:url(/_next/static/media/montserrat-latin-600-normal.ace0a360.woff2) format("woff2"),url(/_next/static/media/montserrat-latin-600-normal.cc4d5dc9.woff) format("woff");unicode-range:u+00??,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:Montserrat;font-style:normal;font-display:swap;font-weight:700;src:url(/_next/static/media/montserrat-cyrillic-ext-700-normal.e3e1815e.woff2) format("woff2"),url(/_next/static/media/montserrat-cyrillic-ext-700-normal.1735653d.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:Montserrat;font-style:normal;font-display:swap;font-weight:700;src:url(/_next/static/media/montserrat-cyrillic-700-normal.ac265291.woff2) format("woff2"),url(/_next/static/media/montserrat-cyrillic-700-normal.1fa15f77.woff) format("woff");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Montserrat;font-style:normal;font-display:swap;font-weight:700;src:url(/_next/static/media/montserrat-vietnamese-700-normal.addf3de3.woff2) format("woff2"),url(/_next/static/media/montserrat-vietnamese-700-normal.e9fc2d93.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:Montserrat;font-style:normal;font-display:swap;font-weight:700;src:url(/_next/static/media/montserrat-latin-ext-700-normal.d176cf18.woff2) format("woff2"),url(/_next/static/media/montserrat-latin-ext-700-normal.6a39ff2d.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:Montserrat;font-style:normal;font-display:swap;font-weight:700;src:url(/_next/static/media/montserrat-latin-700-normal.6a2f5196.woff2) format("woff2"),url(/_next/static/media/montserrat-latin-700-normal.b53a7bfd.woff) format("woff");unicode-range:u+00??,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{--brand:#A31F37;--brand-dark:#7E1729;--brand-tint:#FAF0F2;--brand-soft:#F5E2E6;--red:#A31F37;--red-bg:#F6E8EB;--ok:#2E7D4F;--ok-bg:#E7F3EC;--warn:#8A6D1F;--warn-bg:#FBF4E2;--ink:#1D2024;--text:#1D2024;--body:#4A4D52;--muted:#5E6064;--accent:#8A8C8F;--line:#D4D6D9;--panel:#F4F4F5;--fog:#EDEEEF;--bg:#FFFFFF;--radius:0}*{box-sizing:border-box}body,html{margin:0;background:var(--bg);color:var(--text);-webkit-text-size-adjust:100%}body{font-family:Montserrat,Helvetica Neue,Helvetica,Arial,sans-serif;font-size:14px;line-height:1.5;-webkit-font-smoothing:antialiased}a{color:inherit}:focus-visible{outline:2px solid var(--brand);outline-offset:2px}::selection{background:var(--brand);color:#fff}h1{font-size:30px;font-weight:800;letter-spacing:-.03em;line-height:1.1;margin:0 0 6px}h2{font-size:13px;font-weight:700;margin:0 0 12px;text-transform:uppercase;letter-spacing:.06em}.muted,h2{color:var(--muted)}.small{font-size:12px}.topbar{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:0 28px;height:72px;border-bottom:1px solid var(--line);background:#fff;position:-webkit-sticky;position:sticky;top:0;z-index:30}.topbar-left{gap:14px}.logo,.topbar-left{display:flex;align-items:center;min-width:0}.logo{text-decoration:none}.logo img{height:44px;width:auto;max-width:260px;object-fit:contain;display:block}.wordmark{font-weight:800;font-size:19px;letter-spacing:-.02em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.menu-btn{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border:1.5px solid var(--line);background:#fff;color:var(--ink);cursor:pointer;flex-shrink:0}.menu-btn svg{fill:currentColor}.menu-btn:hover,.menu-btn[aria-expanded=true]{border-color:var(--ink);background:var(--ink);color:#fff}.user{display:flex;align-items:center;gap:16px;color:var(--muted);font-size:13px;white-space:nowrap}.user .who{display:flex;flex-direction:column;line-height:1.25;color:var(--ink);font-weight:600;text-align:right}.user .who small{color:var(--muted);font-weight:500;font-size:12px}.drawer-bg{position:fixed;inset:0;background:rgba(29,32,36,.55);opacity:0;pointer-events:none;transition:opacity .18s;z-index:40}.drawer-bg.open{opacity:1;pointer-events:auto}.drawer{position:fixed;top:0;bottom:0;left:0;width:min(320px,86vw);background:#fff;border-right:1px solid var(--line);transform:translateX(-100%);transition:transform .2s ease;z-index:50;overflow-y:auto;padding:0 0 24px;display:flex;flex-direction:column}.drawer.open{transform:none;box-shadow:12px 0 40px rgba(0,0,0,.12)}@media (prefers-reduced-motion:reduce){.drawer,.drawer-bg{transition:none}}.drawer-head{display:flex;align-items:center;justify-content:space-between;height:72px;padding:0 20px 0 28px;border-bottom:1px solid var(--line)}.drawer-title{font-weight:800;font-size:18px;letter-spacing:-.02em}.drawer-close{width:44px;height:44px;border:none;background:none;font-size:28px;line-height:1;cursor:pointer;color:var(--ink)}.drawer-group{padding:20px 0 4px}.drawer-label{margin:0 28px 8px;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--muted)}.drawer a{display:block;padding:12px 28px;text-decoration:none;font-size:16px;font-weight:600;color:var(--ink);border-left:4px solid transparent}.drawer a:hover{background:var(--panel);color:var(--brand)}.drawer a.active{border-left-color:var(--brand);background:var(--brand-tint);color:var(--brand)}.btn{font:inherit;font-weight:600;border:1.5px solid var(--line);background:#fff;color:var(--ink);padding:8px 14px;cursor:pointer;min-height:38px;transition:background-color .15s,border-color .15s,color .15s}.btn:hover{border-color:var(--ink)}.btn.primary{background:var(--brand);color:#fff;border-color:var(--brand)}.btn.primary:hover{background:var(--brand-dark);border-color:var(--brand-dark)}.btn.primary:disabled{background:var(--fog);border-color:var(--fog);color:var(--muted);cursor:not-allowed}.btn.link{border:none;background:none;color:var(--muted);padding:0;min-height:0;text-decoration:underline}main.page{padding:36px 28px 48px;max-width:1440px;margin:0 auto}.page-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:28px;flex-wrap:wrap}.kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));grid-gap:20px 28px;gap:20px 28px;margin-bottom:36px}.kpi{border-top:2px solid var(--ink);padding:14px 2px 4px;background:#fff}.kpi .label{font-size:12px;color:var(--muted);font-weight:500}.kpi .value{font-size:30px;font-weight:700;letter-spacing:-.03em;margin-top:4px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.kpi .delta{font-size:12px;margin-top:2px}.up{color:var(--ok)}.down{color:var(--red)}.cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(330px,1fr));grid-gap:14px;gap:14px}.card{border:1px solid var(--line);border-top:2px solid var(--ink);border-radius:0;padding:18px 20px;background:#fff}.card h3{margin:0 0 14px;font-size:17px;font-weight:700;letter-spacing:-.01em;display:flex;justify-content:space-between;align-items:center}.rows{display:grid;grid-template-columns:1fr auto;grid-gap:4px 12px;gap:4px 12px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.rows .k{color:var(--muted)}.aging{display:flex;height:8px;border-radius:0;overflow:hidden;background:var(--panel);margin:12px 0 6px}.aging span{display:block;height:100%}.aging .a1{background:#C9CACC}.aging .a2{background:#A9AAAD}.aging .a3{background:#7E8083}.aging .a4{background:#4C4E51}.legend{display:grid;grid-template-columns:repeat(4,1fr);font-size:11px;color:var(--muted);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.tiles{display:flex;gap:8px;margin-top:12px;flex-wrap:wrap}.tile{border-radius:0;padding:6px 10px;font-size:12px;font-weight:600;background:var(--panel);color:var(--text);text-decoration:none}.tile.red{background:var(--red-bg);color:var(--red)}.tile.ok{background:var(--ok-bg);color:var(--ok)}.work{display:grid;grid-template-columns:380px 1fr;grid-gap:0;gap:0;border:1px solid var(--line);border-radius:0;height:calc(100vh - 170px);min-height:520px;overflow:hidden;background:#fff}.list{border-right:1px solid var(--line);display:flex;flex-direction:column;min-height:0}.list .filters{padding:12px;border-bottom:1px solid var(--line);display:grid;grid-gap:8px;gap:8px}.input,select.input,textarea.input{font:inherit;width:100%;border:1px solid var(--line);border-radius:0;padding:8px 10px;background:#fff;color:var(--text)}.input:focus{outline:2px solid var(--brand);outline-offset:-1px;border-color:transparent}.filters .row{display:grid;grid-template-columns:1fr 1fr;grid-gap:8px;gap:8px}.items{overflow-y:auto;flex:1 1}.item{padding:12px 14px;border-bottom:1px solid var(--line);cursor:pointer;display:grid;grid-gap:2px;gap:2px}.item:hover{background:var(--panel)}.item.sel{background:var(--brand-tint);box-shadow:inset 4px 0 0 var(--brand)}.item .top{font-weight:600;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.item .meta,.item .top{display:flex;justify-content:space-between}.item .meta{gap:8px}.count,.item .meta{color:var(--muted);font-size:12px}.count{padding:8px 14px;border-bottom:1px solid var(--line)}.panel{overflow-y:auto;padding:20px 24px;min-height:0}.panel .empty{color:var(--muted);padding:40px;text-align:center}.facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));grid-gap:12px 20px;gap:12px 20px;margin:16px 0 20px}.facts .k{font-size:11px;color:var(--muted);text-transform:uppercase;letter-spacing:.04em}.facts .v{font-weight:600;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.box{border:1px solid var(--line);border-radius:0;padding:14px 16px;margin-bottom:14px}.box.reason{background:var(--panel);border-color:var(--panel)}.form{grid-gap:12px}.form,.form .row{display:grid;gap:12px}.form .row{grid-template-columns:1fr 1fr;grid-gap:12px}.field label{display:flex;justify-content:space-between;font-size:12px;font-weight:600;margin-bottom:4px}.req.missing{color:var(--red);font-weight:600}.req.ok{color:var(--ok);font-weight:600}.field.missing .input{background:var(--red-bg);border-color:var(--red-bg)}.badge{display:inline-block;font-size:11px;font-weight:600;border-radius:0;padding:2px 7px;background:var(--panel);color:var(--muted)}.badge.red{background:var(--red-bg);color:var(--red)}.history{font-size:13px;display:grid;grid-gap:8px;gap:8px}.history .h{border-left:2px solid var(--line);padding-left:10px}.toast{position:fixed;bottom:20px;right:20px;background:var(--text);color:#fff;padding:10px 14px;border-radius:0;font-size:13px}.toast.err{background:var(--red)}.login{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);background:#fff}.login-main{display:flex;flex-direction:column;padding:32px clamp(24px,6vw,88px)}.login-brand img{height:48px;width:auto;display:block}.login-brand .wordmark{font-size:22px}.login-form{margin:auto 0;max-width:420px;width:100%;padding:48px 0}.login-form h1{font-size:clamp(40px,5vw,56px);letter-spacing:-.035em;line-height:1.02;margin-bottom:14px}.eyebrow{color:var(--brand);font-weight:600;font-size:15px;margin:0 0 14px}.lead{font-size:17px;color:var(--body);margin:0 0 28px}.btn.big{display:flex;align-items:center;justify-content:center;min-height:54px;font-size:16px;text-decoration:none;width:100%}.login .note{margin-top:18px;line-height:1.6}.login .note,.login-foot{font-size:12px;color:var(--muted)}.login-foot{margin:0}.login-side{background:var(--ink);color:#fff;padding:64px clamp(32px,5vw,80px);display:flex;flex-direction:column;justify-content:flex-end;gap:28px}.side-kicker{margin:0;font-weight:700;color:#fff;opacity:.7;font-size:14px}.side-quote{margin:0;font-size:clamp(28px,3vw,42px);font-weight:700;letter-spacing:-.03em;line-height:1.15;max-width:14em}.side-proof{display:grid;grid-template-columns:1fr 1fr;grid-gap:28px;gap:28px}.side-proof div{border-top:2px solid #fff;padding-top:14px;display:flex;flex-direction:column;gap:4px}.side-proof strong{font-size:30px;letter-spacing:-.03em}.side-proof span{font-size:14px;opacity:.8}@media (max-width:900px){.login{grid-template-columns:1fr}.login-side{display:none}}.devbox{margin-top:24px;padding-top:18px;border-top:1px dashed var(--line)}.alert{background:var(--red-bg);color:var(--red);padding:10px 12px;border-radius:0;font-size:13px;margin-bottom:14px}.soon{border:1px dashed var(--line);border-radius:0;padding:40px;text-align:center;color:var(--muted)}@media (max-width:900px){.topbar{height:64px;padding:0 14px;gap:10px}.logo img{height:34px;max-width:160px}.wordmark{font-size:16px;max-width:44vw}.user{gap:8px}.user .who{display:none}h1{font-size:24px}main.page{padding:22px 16px 36px}.work{grid-template-columns:1fr;height:auto}.list{max-height:50vh;border-right:none;border-bottom:1px solid var(--line)}.filters .row,.form .row{grid-template-columns:1fr}}.docs{display:grid;grid-gap:6px;gap:6px;margin-bottom:10px}.doc{display:flex;justify-content:space-between;gap:10px;padding:8px 10px;border:1px solid var(--line);border-radius:0;text-decoration:none}.doc:hover{border-color:var(--accent)}.drop{border:1.5px dashed var(--line);border-radius:0;padding:18px;text-align:center;color:var(--muted);cursor:pointer;font-size:13px}.drop.over,.drop:hover{border-color:var(--accent);background:var(--panel)}.modal-bg{position:fixed;inset:0;background:rgba(30,30,32,.35);display:grid;place-items:center;z-index:50;padding:16px}.modal{background:#fff;border-radius:0;padding:22px;width:100%;max-width:520px;box-shadow:0 10px 40px rgba(0,0,0,.18)}.tabs{display:flex;gap:4px;border-bottom:1px solid var(--line);margin-bottom:18px;overflow-x:auto}.tabs a,.tabs button{font:inherit;background:none;border:none;padding:10px 14px;color:var(--muted);font-weight:500;text-decoration:none;cursor:pointer;white-space:nowrap}.tabs .on{color:var(--ink);font-weight:700;box-shadow:inset 0 -3px 0 var(--brand)}.chips{display:flex;gap:6px;flex-wrap:wrap}.chip{font:inherit;font-size:12px;font-weight:600;border:1px solid var(--line);background:#fff;border-radius:0;padding:5px 11px;cursor:pointer;color:var(--muted)}.chip.on{background:var(--ink);border-color:var(--ink);color:#fff}.chip .n{opacity:.7;margin-left:4px}.table-wrap{overflow-x:auto;border:1px solid var(--line);border-radius:0}table.t{width:100%;border-collapse:collapse;font-size:13px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}table.t th{text-align:left;font-size:11px;color:var(--ink);text-transform:uppercase;letter-spacing:.04em;color:var(--muted);font-weight:600;background:var(--panel);white-space:nowrap}table.t td,table.t th{padding:10px 12px;border-bottom:1px solid var(--line)}table.t td{vertical-align:top}table.t tr:last-child td{border-bottom:none}table.t td.num,table.t th.num{text-align:right}.lines{width:100%;border-collapse:collapse;font-size:13px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.lines th{text-align:left;font-size:11px;color:var(--muted);font-weight:600;padding:6px 8px}.lines td,.lines th{border-bottom:1px solid var(--line)}.lines td{padding:7px 8px;vertical-align:top}.lines td.num,.lines th.num{text-align:right;white-space:nowrap}.actions,.pdfs{display:flex;gap:8px;flex-wrap:wrap}.pdfs{margin-bottom:14px}.cal{display:grid;grid-template-columns:repeat(5,1fr);grid-gap:6px;gap:6px}.cal .dow{font-size:11px;color:var(--muted);text-align:center;font-weight:600}.cal .day{border:1px solid var(--line);border-radius:0;padding:8px;min-height:64px;cursor:pointer;background:#fff;font:inherit;text-align:left}.cal .day .d{font-weight:600;font-size:13px}.cal .day .s{font-size:11px;margin-top:4px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.cal .day.BALANCED{background:var(--ok-bg);border-color:var(--ok-bg);color:var(--ok)}.cal .day.WAITING{background:var(--warn-bg);border-color:var(--warn-bg);color:var(--warn)}.cal .day.OUT{background:var(--red-bg);border-color:var(--red-bg);color:var(--red)}.cal .day.NO_ACTIVITY,.cal .day.empty{color:var(--muted)}.cal .day.empty{cursor:default;border-style:dashed}.cal .day.sel{outline:2px solid var(--ink);outline-offset:1px}.cal .day.future{opacity:.45;cursor:default}.split{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);grid-gap:20px;gap:20px;align-items:start}.balance{display:grid;grid-template-columns:1fr auto;grid-gap:6px 16px;gap:6px 16px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;font-size:15px}.balance .total{border-top:1px solid var(--line);padding-top:8px;font-weight:700}.state{display:inline-block;font-weight:700;font-size:12px;padding:4px 10px;border-radius:0}.state.BALANCED{background:var(--ok-bg);color:var(--ok)}.state.WAITING{background:var(--warn-bg);color:var(--warn)}.state.OUT{background:var(--red-bg);color:var(--red)}.state.NO_ACTIVITY{background:var(--panel);color:var(--muted)}.checks{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));grid-gap:6px;gap:6px;max-height:240px;overflow-y:auto;border:1px solid var(--line);border-radius:0;padding:10px}.checks label{display:flex;gap:8px;align-items:center;font-size:13px}@media (max-width:900px){.split{grid-template-columns:1fr}.cal .day{min-height:52px;padding:6px}}.chart svg{display:block;margin-top:8px}.legend-inline{display:flex;gap:12px;color:var(--muted)}.sw{display:inline-block;vertical-align:middle;margin-right:6px}.sw.bar{width:10px;height:10px;border-radius:0;background:#4C4E51}.sw.line{width:14px;height:2px;background:#8A8C8F;position:relative}.tip{position:absolute;top:8px;transform:translateX(-50%);background:#fff;border:1px solid var(--line);border-radius:0;padding:8px 10px;font-size:13px;box-shadow:0 4px 16px rgba(0,0,0,.08);pointer-events:none;white-space:nowrap;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.grid2{display:grid;grid-template-columns:1fr 1fr;grid-gap:16px;gap:16px}@media (max-width:900px){.grid2{grid-template-columns:1fr}}.grid2>*,.split>*{min-width:0}.grid2>.box{overflow-x:auto}@media (max-width:900px){.grid2,.split{grid-template-columns:minmax(0,1fr)}.page-head .input,.page-head select.input{max-width:100%}.cal{gap:4px}.cal .day .s{font-size:10px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}}.demo-bar{background:var(--ink);color:#fff;text-align:center;font-size:12px;font-weight:600;letter-spacing:.04em;padding:5px 12px}.modal.wide{max-width:980px;max-height:calc(100vh - 32px);overflow-y:auto}.modal-title{margin:0 0 18px;font-size:22px;font-weight:800;letter-spacing:-.02em}.brand-edit{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);grid-gap:28px;gap:28px;align-items:start}@media (max-width:900px){.brand-edit{grid-template-columns:minmax(0,1fr)}}.brand-thumb{height:32px;width:auto;max-width:160px;object-fit:contain;display:block}.logo-preview{max-height:72px;max-width:100%;object-fit:contain}.swatch-row{display:inline-flex;align-items:center;gap:8px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.swatch{width:18px;height:18px;display:inline-block;border:1px solid rgba(0,0,0,.12)}.swatches{display:flex;align-items:center;gap:8px;margin-bottom:10px;flex-wrap:wrap}.swatch-btn{width:30px;height:30px;border:2px solid #fff;outline:1px solid var(--line);cursor:pointer;padding:0}.swatch-btn.on{outline:2px solid var(--ink)}.color-in{width:44px;height:38px;padding:2px;border:1.5px solid var(--line);background:#fff;cursor:pointer}.brand-preview{border:1px solid var(--line);background:#fff;font-size:12px}.bp-top{display:flex;align-items:center;gap:10px;height:52px;padding:0 14px;border-bottom:1px solid var(--line)}.bp-top img{height:30px;max-width:180px;object-fit:contain}.bp-top .wordmark{font-size:15px}.bp-menu{width:30px;height:30px;border:1.5px solid var(--line);display:inline-flex;align-items:center;justify-content:center;font-weight:800}.bp-body{display:grid;grid-template-columns:110px 1fr;min-height:170px}.bp-nav{border-right:1px solid var(--line);padding:10px 0;display:flex;flex-direction:column}.bp-nav span{padding:7px 12px;font-weight:600;border-left:3px solid transparent}.bp-nav span.on{border-left-color:var(--brand);background:var(--brand-tint);color:var(--brand)}.bp-main{padding:14px;display:grid;grid-gap:12px;gap:12px;align-content:start;justify-items:start}.bp-h{font-size:18px;font-weight:800;letter-spacing:-.02em}.bp-kpi{border-top:2px solid var(--ink);padding-top:8px;display:grid;grid-gap:2px;gap:2px;min-width:150px}.bp-kpi span{color:var(--muted)}.bp-kpi strong{font-size:18px;letter-spacing:-.02em}.checks label{justify-content:flex-start;font-weight:500;margin:0}.topbar-left{flex:1 1 auto}.logo{flex:0 1 auto;overflow:hidden}.logo img{max-width:100%}.user{flex:0 0 auto}@media (max-width:600px){.logo img{height:30px}.user .btn.link{font-size:12px}}tr.rowlink{cursor:pointer}tr.rowlink:hover td{background:var(--panel)}.check{display:flex;gap:8px;align-items:center;font-size:14px;font-weight:500}.vob-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));grid-gap:16px;gap:16px}.vob-grid .card .field{margin-bottom:10px}.vob-grid .field label{font-size:12px;font-weight:600;color:var(--muted)}.ro{padding:7px 0;font-weight:600;min-height:36px}.status-bar{display:flex;flex-wrap:wrap;align-items:center;gap:12px;background:var(--panel);border-color:var(--line)}.num-in{width:84px;text-align:right;padding:6px 8px}.modal .form .row{grid-template-columns:1fr 1fr}.modal .form .row,.tp-tools{display:grid;grid-gap:12px;gap:12px}.tp-tools{margin-bottom:18px}.estimate{border:1px solid var(--line);border-top:4px solid var(--brand);padding:28px 32px}.est-head{display:flex;align-items:center;justify-content:space-between;gap:20px;padding-bottom:18px;border-bottom:1px solid var(--line);margin-bottom:18px}.est-logo{max-height:56px;max-width:280px;object-fit:contain}.est-title{text-align:right;display:flex;flex-direction:column}.est-title strong{font-size:22px;letter-spacing:-.02em;color:var(--brand)}.est-title span{color:var(--muted);font-size:13px}.est-facts{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));grid-gap:12px 24px;gap:12px 24px;margin-bottom:20px}.est-facts div{display:flex;flex-direction:column}.est-facts span{font-size:11px;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);font-weight:600}.est-table thead th{background:var(--brand-tint)}.est-table tfoot td{font-weight:700;border-top:2px solid var(--ink);padding:10px 12px}.est-total{display:flex;flex-wrap:wrap;gap:16px 40px;align-items:flex-end;margin:20px 0}.est-total div{display:flex;flex-direction:column}.est-total span{font-size:13px;color:var(--muted)}.est-total strong{font-size:24px;letter-spacing:-.02em}.est-total .you strong{color:var(--brand);font-size:30px}.est-total p{flex-basis:100%;margin:0}.est-notes{font-size:13px;color:var(--body);line-height:1.6;border-top:1px solid var(--line);padding-top:14px}.est-notes .notice{border-left:4px solid var(--brand);background:var(--brand-tint);padding:12px 14px;margin-bottom:12px;color:var(--ink)}.initials span,.sign span{display:inline-block}.initials span{width:90px;border-bottom:1px solid var(--ink);height:1em;vertical-align:bottom;margin-left:6px}.sign{display:grid;grid-template-columns:2fr 1fr;grid-gap:32px;gap:32px;margin-top:36px}.sign span{border-top:1px solid var(--ink);padding-top:6px;font-size:12px;color:var(--muted)}.print-only{display:none}@media print{@page{margin:.5in}*{-webkit-print-color-adjust:exact;print-color-adjust:exact}.demo-bar,.drawer,.drawer-bg,.no-print,.toast,.topbar{display:none!important}.print-only{display:inline}main.page{padding:0;max-width:none}.estimate{border:none;padding:0}.table-wrap{border:none;overflow:visible}}.practice-banner{display:flex;align-items:center;gap:16px;padding:12px 16px;margin-bottom:22px;border:1px solid var(--line);border-left:4px solid var(--brand);background:#fff}.practice-banner img{height:40px;max-width:240px;object-fit:contain}.practice-section h1{color:var(--ink)}.seg{border:1.5px solid var(--line)}.seg a{padding:8px 14px;text-decoration:none;font-weight:600;color:var(--ink);min-height:38px;display:inline-flex;align-items:center}.seg a+a{border-left:1.5px solid var(--line)}.seg a.on{background:var(--brand);color:#fff}.seg a:hover:not(.on){background:var(--panel)}.day-list{list-style:none;margin:0;padding:0;border-top:2px solid var(--ink)}.day-row{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr) minmax(0,2fr) 170px;grid-gap:16px;gap:16px;align-items:center;border-bottom:1px solid var(--line);border-left:4px solid transparent;padding:16px 4px 16px 14px}.day-row.green{border-left-color:var(--ok)}.day-row.red{border-left-color:var(--red)}.pt-name{font-size:20px;font-weight:700;letter-spacing:-.02em;color:var(--ink);text-decoration:none}.pt-name:hover{color:var(--brand);text-decoration:underline}.pt-acct{color:var(--muted);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.pt-state{font-weight:600}.pt-state.green{color:var(--ok)}.pt-state.red{color:var(--red)}.day-empty,.pt-state.none{color:var(--muted)}.day-empty{padding:40px;text-align:center}.month{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));border-top:2px solid var(--ink);border-left:1px solid var(--line)}.m-dow{padding:8px 10px;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--muted)}.m-cell,.m-dow{border-right:1px solid var(--line);border-bottom:1px solid var(--line)}.m-cell{min-height:118px;padding:6px 8px;display:flex;flex-direction:column;gap:3px;min-width:0}.m-cell.out{background:var(--panel)}.m-cell.out .m-date{color:var(--muted)}.m-cell.today{box-shadow:inset 0 3px 0 var(--brand)}.m-date{font-weight:700;align-self:flex-start}.m-date,.m-pt{text-decoration:none;color:var(--ink)}.m-pt{font-size:12px;font-weight:600;padding:3px 6px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;border-left:3px solid var(--line);background:var(--panel)}.m-pt.green{border-left-color:var(--ok);background:var(--ok-bg)}.m-pt.red{border-left-color:var(--red);background:var(--red-bg);color:var(--red)}.m-pt:hover{text-decoration:underline}.m-more{font-size:12px;color:var(--muted)}.legend-row{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-top:14px}.dot{width:10px;height:10px;display:inline-block;margin-left:10px}.dot.lg-green{background:var(--ok)}.dot.lg-red{background:var(--red)}@media (max-width:900px){.pt-acct{display:none}.pt-state{grid-column:1;font-size:13px}.pt-act{grid-row:1/span 2;grid-column:2}.day-row{grid-template-columns:minmax(0,1fr) auto}.m-cell{min-height:72px;padding:4px}.m-pt{font-size:10px;padding:2px 3px}}.pt-act{justify-self:end}.recheck{border:1px solid var(--red);background:var(--red-bg);color:var(--red);padding:14px 16px;margin-bottom:16px;font-weight:600}.recheck.ok{border-color:var(--ok);background:var(--ok-bg);color:var(--ok)}.row3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:10px;gap:10px}.checks.tall{max-height:360px}@media (max-width:900px){.vob-grid .card[style*="span 2"]{grid-column:auto!important}.row3{grid-template-columns:1fr}}.find{display:flex;gap:8px;margin:0 0 18px;max-width:760px}.find .input{flex:1 1}.seg .off{padding:8px 14px;color:var(--line);min-height:38px;display:inline-flex;align-items:center}.m-count{font-size:13px;font-weight:700;text-decoration:none;padding:4px 8px;border-left:4px solid var(--line);background:var(--panel);color:var(--ink)}.m-count.green{border-left-color:var(--ok);background:var(--ok-bg);color:var(--ok)}.m-count.red{border-left-color:var(--red);background:var(--red-bg);color:var(--red)}.m-count.none{font-weight:600;color:var(--muted)}.m-count:hover{text-decoration:underline}@media (max-width:900px){.m-count{font-size:10px;padding:2px 3px}.find{flex-wrap:wrap}}.slots{border-top:2px solid var(--ink)}.slot{display:grid;grid-template-columns:92px minmax(0,1fr);border-bottom:1px solid var(--line);min-height:34px}.slot.hour{border-top:1px solid var(--accent)}.slot-time{padding:8px 10px 0 0;font-size:13px;font-weight:700;color:var(--muted);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;text-align:right;border-right:1px solid var(--line)}.slot.open .slot-time{font-weight:500;color:var(--line)}.slot.hour .slot-time{color:var(--ink)}.slot-pts .day-row{border-bottom:none;padding-top:10px;padding-bottom:10px;grid-template-columns:minmax(0,3fr) minmax(0,2fr) 170px}.slot-pts .day-row+.day-row{border-top:1px dashed var(--line)}.pt-main{display:flex;flex-direction:column;min-width:0}.pt-meta{color:var(--muted);font-size:13px}@media (max-width:900px){.slot{grid-template-columns:64px minmax(0,1fr)}.slot-time{font-size:11px}.slot-pts .day-row{grid-template-columns:minmax(0,1fr) auto}}.est-table tr.sect td{background:var(--brand-tint);color:var(--brand);font-weight:700;font-size:13px;padding:8px 12px}.est-table tr.sect.not td,.sign-table tr.sect.not td{background:var(--panel);color:var(--ink)}.sign-table tr.sect td{background:var(--brand-tint);color:var(--brand);font-weight:700}.est-table tr.over td{background:#FBF7F0}.est-table tr.subtotal td{font-weight:700;border-top:1px solid var(--ink)}.tooth-in{width:130px;padding:6px 8px}.money-in{width:110px;text-align:right;padding:6px 8px}.signing{max-width:920px;font-size:16px}.sign-head{display:flex;gap:24px;align-items:center;border-bottom:4px solid var(--brand);padding-bottom:18px;margin-bottom:22px}.sign-head img{max-height:64px;max-width:260px;object-fit:contain}.sign-head h1{font-size:32px;margin:0}.sign-head p{margin:4px 0 0}.sign-totals{display:flex;flex-wrap:wrap;gap:18px 40px;margin-bottom:18px}.sign-totals div{display:flex;flex-direction:column}.sign-totals span{color:var(--muted);font-size:14px}.sign-totals strong{font-size:24px}.sign-totals .you strong{font-size:34px;color:var(--brand)}.sign-table td,.sign-table th{font-size:15px;padding:12px}.sign-notice{border-left:4px solid var(--brand);background:var(--brand-tint);padding:16px 18px;margin:18px 0}.sign-notice h2{color:var(--ink);text-transform:none;letter-spacing:-.01em;font-size:18px;margin:0 0 6px}.sign-notice p{margin:0 0 12px;line-height:1.6}.sign-final{border-top:2px solid var(--ink);margin-top:28px;padding-top:20px;display:grid;grid-gap:14px;gap:14px}.sign-final .row{display:grid;grid-template-columns:2fr 1fr;grid-gap:14px;gap:14px}.big-in{font-size:18px;padding:12px}.pad{background:#fff;border:1.5px solid var(--line)}.pad-head{display:flex;justify-content:space-between;padding:8px 12px;border-bottom:1px dashed var(--line);font-weight:600;color:var(--muted)}.pad canvas{display:block;width:100%;touch-action:none;cursor:crosshair}.sign-done{text-align:center;padding:80px 20px}.sign-done h1{font-size:40px}.sign-done p{font-size:20px;color:var(--body);margin-bottom:28px}.sign-done .btn.big{max-width:320px;margin:0 auto}@media (max-width:700px){.sign-final .row{grid-template-columns:1fr}}body:has(.signing) .demo-bar,body:has(.signing) .topbar{display:none}.estimate{--soft-line:#ECEAE6;--warm:#FBFAF8;--sand:#FAF5EF;--sand-line:#EBDDCF;--sand-ink:#8A5B3F;border:1px solid var(--soft-line);border-top:none;border-radius:18px;background:#fff;padding:36px 40px 32px;box-shadow:0 1px 2px rgba(0,0,0,.03),0 8px 28px rgba(0,0,0,.04)}.estimate .est-head{border-bottom:none;padding-bottom:6px;margin-bottom:4px;align-items:center}.estimate .est-logo{max-height:60px}.estimate .est-name{font-weight:600;font-size:20px;color:var(--brand)}.estimate .est-title{text-align:right}.estimate .est-title h2{margin:0;text-transform:none;letter-spacing:-.01em;font-size:24px;font-weight:600;color:var(--brand)}.estimate .est-title span{color:var(--muted);font-size:13px}.est-for{margin:14px 0 26px;padding:14px 18px;background:var(--brand-tint);border-radius:12px;font-size:15px;color:var(--body)}.est-for strong{color:var(--ink);font-weight:600}.est-empty{padding:28px;text-align:center;color:var(--muted);border:1px dashed var(--soft-line);border-radius:14px;margin-bottom:18px}.est-group{border-radius:16px;margin:0 0 22px;overflow:hidden;border:1px solid var(--soft-line)}.est-group.covered{border-color:color-mix(in srgb,var(--brand) 22%,white)}.est-group-head{padding:16px 20px 12px}.est-group.covered .est-group-head{background:var(--brand-tint)}.est-group.not-covered{border-color:var(--sand-line)}.est-group.not-covered .est-group-head{background:var(--sand)}.est-group-head h3{margin:0 0 2px;font-size:17px;font-weight:600;letter-spacing:-.01em}.est-group.covered .est-group-head h3{color:var(--brand)}.est-group.not-covered .est-group-head h3{color:var(--sand-ink)}.est-group-head p{margin:0;font-size:13px;color:var(--body)}.est-group .table-wrap{border:none;border-radius:0}table.est-lines{border-collapse:collapse}table.est-lines th{background:#fff;text-transform:none;letter-spacing:0;font-size:12px;font-weight:600;color:var(--muted);padding:10px 12px}table.est-lines td,table.est-lines th{border-bottom:1px solid var(--soft-line)}table.est-lines td{padding:12px;font-size:14px;vertical-align:middle}table.est-lines td strong{font-weight:600}table.est-lines tbody tr:last-child td{border-bottom:none}table.est-lines tr.over td{background:#FFFBF6}table.est-lines tfoot td{border-top:1px solid var(--soft-line);border-bottom:none;font-weight:600;background:var(--warm);padding:11px 12px}.est-summary{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-gap:8px 32px;gap:8px 32px;align-items:end;background:var(--warm);border-radius:16px;padding:20px 24px;margin:6px 0 22px;border:1px solid var(--soft-line)}.est-sum-rows{display:grid;grid-gap:6px;gap:6px;max-width:420px}.est-sum-rows div{display:flex;justify-content:space-between;gap:24px;font-size:14px;color:var(--body)}.est-sum-rows div span:last-child{color:var(--ink);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.est-you{text-align:right;display:flex;flex-direction:column}.est-you span{font-size:13px;color:var(--muted)}.est-you strong{font-size:34px;font-weight:600;color:var(--brand);letter-spacing:-.02em}.est-fine{grid-column:1/-1;margin:6px 0 0;font-size:12px;color:var(--muted)}.estimate .est-notes{border-top:none;padding-top:0;font-size:13px}.est-note{background:var(--sand);border-radius:14px;padding:14px 18px;margin-bottom:12px;color:var(--ink)}.est-note h4{margin:0 0 4px;font-size:14px;font-weight:600;color:var(--sand-ink)}.est-note p{margin:0 0 8px;line-height:1.6}.est-note .initials{margin:0;font-size:12px;color:var(--muted)}.est-disclaimer{color:var(--muted);font-size:12px;line-height:1.6;margin:14px 0 0}.estimate .sign{margin-top:40px}.estimate .sign span{border-top-color:#BDB8B0}.estimate .money-in,.estimate .num-in,.estimate .tooth-in{border-radius:8px;border-color:var(--soft-line)}@media (max-width:760px){.estimate{padding:22px 16px;border-radius:14px}.est-summary{grid-template-columns:1fr}.est-you{text-align:left}}@media print{.estimate{box-shadow:none;border:none;padding:0;border-radius:0}.est-for,.est-group,.est-note,.est-summary{page-break-inside:avoid;break-inside:avoid}}.signing{--soft-line:#ECEAE6;--sand:#FAF5EF;--sand-line:#EBDDCF;--sand-ink:#8A5B3F}.signing .sign-head{border-bottom:none}.signing .sign-head h1{font-weight:600;color:var(--brand)}.signing .sign-notice{border-left:none;border-radius:14px;background:var(--sand)}.signing .sign-notice h2{color:var(--sand-ink);font-weight:600}.signing .pad{border-radius:12px;border-color:var(--soft-line)}.signing .sign-final{border-top:1px solid var(--soft-line)}.signing .sign-totals{background:var(--brand-tint);border-radius:16px;padding:18px 22px}.signing .sign-totals .you strong{font-weight:600}.signing .btn.big{border-radius:12px}.pill-tabs{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 18px}.pill-tabs a,.pill-tabs button{font:inherit;text-decoration:none;padding:9px 16px;border-radius:999px;background:#fff;border:1px solid #eceae6;color:var(--ink);font-weight:500;font-size:14px;cursor:pointer}.pill-tabs a.on,.pill-tabs button.on{background:var(--brand);border-color:var(--brand);color:#fff;font-weight:600}.pde-tiles{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:16px;gap:16px;margin-bottom:20px}.pde-tiles>div{background:#fff;border:1px solid #eceae6;border-radius:16px;padding:18px 20px;display:flex;flex-direction:column;gap:4px}.pde-tiles span{font-size:13px;color:var(--muted)}.pde-tiles small{font-size:12px;color:var(--muted)}.pde-tiles strong{font-size:32px;font-weight:600;letter-spacing:-.02em}.pde-tiles .brand strong{color:var(--brand)}.pde-tiles .ok strong{color:var(--ok)}.pde-tiles .warm strong{color:#8A5B3F}.pde-card{background:#fff;border:1px solid #eceae6;border-radius:16px;overflow:hidden}.pde-card-head{padding:16px 20px;border-bottom:1px solid #eceae6}.pde-card-head h2{margin:0;font-size:17px;font-weight:600;text-transform:none;letter-spacing:-.01em;color:var(--ink)}.pde-type{display:grid;grid-template-columns:260px minmax(0,1fr) 60px 120px;grid-gap:16px;gap:16px;align-items:center;padding:14px 20px;border-bottom:1px solid #f1efeb}.pde-type strong{font-weight:600;font-size:14px}.pde-type .bar{height:10px;background:#F1EFEB;border-radius:999px;overflow:hidden}.pde-type .bar div{height:10px;background:var(--brand);border-radius:999px}.pde-type .bar div.warm{background:#8A5B3F}.pde-type a{font-size:13px;font-weight:600;text-decoration:none;text-align:right;color:var(--brand)}.pde-mrow,.pde-row{display:grid;grid-gap:12px;gap:12px;align-items:center;padding:15px 20px;border-bottom:1px solid #f1efeb;font-size:14px}.pde-row{grid-template-columns:110px 180px 170px 150px 150px minmax(0,1fr) 120px}.pde-row.fixedv{grid-template-columns:110px 180px 170px 150px 150px minmax(0,1fr) 0}.pde-mrow{grid-template-columns:120px 220px minmax(0,1fr) 380px}.pde-mrow.head,.pde-row.head{font-size:12px;font-weight:600;color:var(--muted);padding-top:12px;padding-bottom:12px;border-bottom:1px solid #eceae6}.pde-mrow .stack,.pde-row .stack{display:flex;flex-direction:column;gap:2px;min-width:0}.pde-mrow small,.pde-row small{font-size:12px;color:var(--muted)}.pde-mrow a,.pde-row a{color:var(--ink);text-decoration:none}.pde-mrow a:hover,.pde-row a:hover{color:var(--brand);text-decoration:underline}.pde-chip{justify-self:start;background:#FAF5EF;color:#8A5B3F;border-radius:999px;padding:5px 10px;font-size:12px;font-weight:600;white-space:nowrap}.pde-row .was{color:#8A5B3F;text-decoration:line-through}.pde-row .now{color:var(--ok);font-weight:600}.pde-fix{border-color:var(--brand);color:var(--brand);border-radius:10px}.pde-fix:hover{background:var(--brand);color:#fff}.chips-row{gap:6px}.chips-row,.pde-acts{display:flex;flex-wrap:wrap}.pde-acts{gap:8px;justify-content:flex-end}.pde-acts .btn{border-radius:10px;font-size:13px}.pde-empty{padding:28px 20px;text-align:center}.pde-empty,.pde-foot{color:var(--muted);margin:0}.pde-foot{padding:12px 20px;font-size:12px;background:#FBFAF8}@media (max-width:1000px){.pde-tiles{grid-template-columns:repeat(2,minmax(0,1fr))}.pde-mrow,.pde-row,.pde-row.fixedv{grid-template-columns:1fr 1fr}.pde-mrow.head,.pde-row.head{display:none}.pde-type{grid-template-columns:1fr 60px}.pde-type .bar,.pde-type a{display:none}.pde-acts{justify-content:flex-start;grid-column:1/-1}}.onboard-wrap{max-width:1440px;margin:0 auto;padding:20px 28px 0}.onboard{background:#fff;border:1px solid #eceae6;border-radius:16px;padding:16px 20px}.onboard-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.onboard-head div{display:flex;flex-direction:column;gap:2px}.onboard-head strong{font-size:16px;font-weight:600}.onboard-head span{font-size:13px;color:var(--muted)}.onboard-bar{background:#F1EFEB;overflow:hidden;margin:12px 0 14px}.onboard-bar,.onboard-bar div{height:6px;border-radius:999px}.onboard-bar div{background:var(--brand)}.onboard-steps{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));grid-gap:12px;gap:12px}.onboard-steps li{display:flex;gap:10px;align-items:flex-start}.onboard-steps li div{display:flex;flex-direction:column;gap:2px}.onboard-steps a{font-weight:600;color:var(--brand);text-decoration:none}.onboard-steps a:hover{text-decoration:underline}.onboard-steps small{font-size:12px;color:var(--muted);line-height:1.5}.onboard-num{width:26px;height:26px;border-radius:999px;background:var(--brand-tint);color:var(--brand);font-size:12px;font-weight:700;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.onboard-steps li.done .onboard-num{background:var(--ok-bg);color:var(--ok)}.onboard-steps li.done a{color:var(--muted);text-decoration:line-through}.team-form{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1.4fr) 200px auto;grid-gap:12px;gap:12px;align-items:end;padding:16px 20px}.team-form .field{display:flex;flex-direction:column;gap:4px;margin:0}.team-form .field span{font-size:12px;font-weight:600;color:var(--muted)}.team-form .btn{min-height:40px;border-radius:10px;padding:0 22px}.team-row{display:grid;grid-template-columns:minmax(0,1fr) 160px 120px 90px;grid-gap:12px;gap:12px;align-items:center;padding:13px 20px;border-bottom:1px solid #f1efeb;font-size:14px}.team-row.ev{grid-template-columns:minmax(0,1fr) auto}.team-row .stack{display:flex;flex-direction:column}.team-row small{font-size:12px;color:var(--muted)}.team-row strong,.team-status{font-weight:600}.team-status{justify-self:start;font-size:12px;border-radius:999px;padding:4px 10px}.team-status.on{background:var(--ok-bg);color:var(--ok)}.team-status.inv{background:var(--brand-tint);color:var(--brand)}.team-status.off{background:#F1EFEB;color:var(--muted)}@media (max-width:900px){.team-form{grid-template-columns:1fr}.team-row{grid-template-columns:1fr auto}}.seg-period{display:inline-flex;background:#F1EFEB;border-radius:12px;padding:4px;gap:2px;margin:0 0 16px}.seg-period button{font:inherit;font-size:13px;font-weight:600;border:none;background:transparent;color:var(--muted);padding:7px 14px;border-radius:9px;cursor:pointer}.seg-period button.on{background:#fff;color:var(--ink);box-shadow:0 1px 2px rgba(0,0,0,.08)}.logo img,.practice-banner img{height:52px;max-width:280px}@media (max-width:600px){.logo img{height:36px;max-width:170px}}.login,.login-main{min-height:100vh;min-height:100dvh}.login-main,.login-side{box-sizing:border-box}.login-side{justify-content:center;position:-webkit-sticky;position:sticky;top:0;height:100vh;height:100dvh;overflow:auto;padding:48px clamp(28px,5vw,72px)}.side-quote{font-size:clamp(26px,2.6vw,40px)}.side-proof strong{font-size:clamp(24px,2.4vw,30px)}@media (max-width:1100px){.side-proof{grid-template-columns:1fr;gap:20px}}.facts{grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.facts>div{min-width:0}.facts .v{overflow-wrap:anywhere;word-break:break-word}.row3{align-items:end}.row3 .field{margin-bottom:12px}.row3 .input,.row3 select.input{height:40px;box-sizing:border-box;line-height:1.2;margin:0}input[type=time].input{min-height:40px;display:block}input[type=time].input,select.input{-webkit-appearance:none;-moz-appearance:none;appearance:none}select.input{padding-right:32px;background-repeat:no-repeat;background-position:right 10px center;background-size:12px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' fill='none' stroke='%235E6064' stroke-width='1.6'/%3E%3C/svg%3E")}.day-row.green{background:rgba(46,125,80,.08)}.day-row.red{background:var(--red-bg)}.workin-badge{display:inline-block;margin-top:4px;padding:2px 8px;font-size:12px;font-weight:700;color:#fff;background:var(--brand);border-radius:999px;width:-moz-fit-content;width:fit-content}.workin-btn{border-color:var(--brand);color:var(--brand);font-weight:700}.pt-act{gap:8px;justify-content:flex-end}.demo-watermark,.pt-act{display:flex;flex-wrap:wrap}.demo-watermark{position:fixed;inset:0;pointer-events:none;z-index:50;align-content:space-around;justify-content:space-around;color:rgba(163,31,55,.07);font-size:22px;font-weight:700;transform:rotate(-18deg);overflow:hidden;white-space:nowrap}.demo-watermark:before{content:attr(data-x)}.why-changed{background:#fff;border:1px solid var(--line);border-radius:12px;padding:24px 26px;margin:18px 0 8px}.why-changed h2{margin:4px 0 10px;font-size:26px}.why-changed h3{margin:22px 0 8px;font-size:17px}.why-summary{font-size:19px;line-height:1.55;margin:0 0 16px}.why-amounts{display:flex;align-items:center;gap:18px;background:var(--tint,#faf3f4);border-radius:10px;padding:14px 18px;flex-wrap:wrap}.why-amounts span{display:block;font-size:13px;color:var(--muted)}.why-amounts strong{font-size:26px}.why-amounts .now strong{color:var(--accent,#A31F37)}.why-amounts .arrow{font-size:26px;color:var(--muted)}.why-table td,.why-table th{font-size:16px;padding:10px 12px}.why-table tr.changed td{background:#fbf2f3}.why-table tr.same td{color:var(--muted)}.why-list{font-size:16px;line-height:1.6;padding-left:20px;margin:0}.why-verify{margin:18px 0 10px;padding:14px 16px;border:1px solid var(--line);border-radius:10px;background:#fcfbf9;font-size:16px}.signing .ack{display:flex;gap:12px;align-items:flex-start;font-size:17px;line-height:1.5;margin:6px 0 16px;padding:14px;border:2px solid var(--accent,#a31f37);border-radius:10px}.signing .ack input{width:26px;height:26px;margin-top:2px;flex:none}.copy-box{display:grid;grid-gap:12px;gap:12px;max-width:520px;margin:20px auto;text-align:left}.copy-email{display:flex;gap:8px}.copy-email .input{flex:1 1}.revision-box{border-left:4px solid var(--accent,#a31f37);margin-bottom:16px}.revision-box.done{border-left-color:#2e7d4f}.revision-box .rev-head{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap}.estimate .letterhead{display:flex;justify-content:space-between;align-items:center;gap:24px;padding-bottom:14px;border-bottom:3px solid var(--brand);margin-bottom:18px}.estimate .letterhead .est-logo{max-height:64px;max-width:280px;object-fit:contain}.estimate .letterhead .est-name{font-size:24px;font-weight:700;color:var(--brand);letter-spacing:-.01em}.lh-contact{font-style:normal;text-align:right;display:flex;flex-direction:column;gap:1px;font-size:12.5px;color:var(--muted);line-height:1.45}.lh-contact strong{color:var(--brand);font-size:14px}.est-title-row{display:flex;justify-content:space-between;align-items:baseline;margin:0 0 6px}.est-title-row h2{margin:0;color:var(--brand);font-size:22px}.est-title-row span{color:var(--muted);font-size:13px}.lh-footer{margin-top:26px;padding-top:10px;border-top:1.5px solid var(--brand);font-size:10.5px;color:var(--muted);line-height:1.45}.lh-footer p{margin:0 0 4px}.lh-footer .lh-policy strong{color:var(--ink)}.lh-footer .lh-line{text-align:center;color:var(--brand);font-weight:600;letter-spacing:.01em}@media print{@page{size:letter;margin:.5in .55in}body,html{background:#fff!important}.page-head,.practice-banner,.revision-box{display:none!important}.estimate{font-size:11px}.lh-footer{page-break-inside:avoid;break-inside:avoid}.estimate .letterhead{page-break-after:avoid;break-after:avoid}}.tp .estimate{max-width:8.5in;min-height:11in;margin:18px auto 28px;padding:.55in .6in;background:#fff;border:1px solid #e4e2de;border-radius:2px;box-shadow:0 6px 24px rgba(0,0,0,.08);display:flex;flex-direction:column}.tp .estimate .lh-footer{margin-top:auto}@media print{.tp .estimate{max-width:none;min-height:0;margin:0;padding:0;border:none;box-shadow:none}}.why-changed.paper{border:none;padding:0;margin:6px 0 0;background:none}.why-changed.paper .why-summary{font-size:14px;line-height:1.6}.why-changed.paper .why-amounts strong{font-size:22px}.why-changed.paper .why-table td,.why-changed.paper .why-table th{font-size:12.5px;padding:7px 10px}.why-changed.paper h3{font-size:14px;margin:18px 0 6px;color:var(--brand)}.why-changed.paper .why-list,.why-changed.paper .why-verify{font-size:12.5px}.why-changed.paper .eyebrow{margin:0 0 8px}.page-label{text-align:center;color:var(--muted);font-size:13px;margin:6px 0 -6px}@media print{.rev-page{break-after:page;page-break-after:always}}body.presenting{background:#e9e8e5}body.presenting .demo-bar,body.presenting .drawer,body.presenting .drawer-bg,body.presenting .page-label,body.presenting .practice-banner,body.presenting .revision-box,body.presenting .toast,body.presenting .topbar,body.presenting .tp .page-head,body.presenting .tp .recheck,body.presenting .tp-tools:not(.present-tools),body.presenting .tp>.small.muted{display:none!important}body.presenting main.page{padding:24px 12px 110px;max-width:none}body.presenting .estimate .no-print{display:none!important}body.presenting .estimate .print-only{display:inline!important}body.presenting .tp .estimate{margin:0 auto 24px}.present-bar{bottom:18px;display:flex;gap:10px;padding:10px 12px;background:rgba(255,255,255,.96)}.present-bar,.tp-tools.present-tools{position:fixed;left:50%;transform:translateX(-50%);border:1px solid #e4e2de;border-radius:14px;box-shadow:0 8px 28px rgba(0,0,0,.14);z-index:60}.tp-tools.present-tools{display:block!important;bottom:82px;width:min(920px,calc(100% - 24px));background:#fff;padding:14px 16px}@media print{.present-bar,.present-tools{display:none!important}}.tp .tp-work{margin-top:6px}.work-lines td,.work-lines th{vertical-align:middle}.work-lines .code-cell,.work-lines td.num,.work-lines th.num{white-space:nowrap}.work-lines tfoot td{font-weight:700;border-top:2px solid var(--ink)}.work-lines tr.over td{background:#FFFBF6}.tp-work .money-in{width:104px}.tp-work .num-in{width:64px}.tp-work .tooth-in{width:96px}.work-sum{display:flex;flex-wrap:wrap;gap:14px 34px;margin:16px 0 10px;padding:14px 18px;background:var(--panel,#f6f6f5);border-radius:12px}.work-sum div{display:flex;flex-direction:column}.work-sum span{font-size:12px;color:var(--muted)}.work-sum strong{font-size:18px}.work-sum .you strong{color:var(--brand);font-size:22px}.work-notes{margin:8px 0 10px;padding-left:18px;line-height:1.7}.paper-doc .print-frame,.paper-doc .print-frame>tbody,.paper-doc .print-frame>tbody>tr,.paper-doc .print-frame>tbody>tr>td{display:block;border:0;padding:0;background:none}.paper-doc .print-footer,.paper-doc .print-frame>tfoot{display:none}.paper-doc .estimate.sheet{width:8.5in;max-width:100%;min-height:11in;margin:18px auto 28px;padding:.55in .6in;box-sizing:border-box;background:#fff;border:1px solid #e4e2de;border-radius:2px;box-shadow:0 6px 24px rgba(0,0,0,.08);display:flex;flex-direction:column}.paper-doc .estimate.sheet .lh-footer{margin-top:auto}.paper-doc.offstage{position:absolute;left:-10000px;top:0;width:8.5in;visibility:hidden;pointer-events:none}.fit-wrap{--fit:1;width:100%;overflow:hidden}table.paper-lines{width:100%;table-layout:fixed;border-collapse:collapse;font-size:calc(12.5px * var(--fit))}table.paper-lines col.c-tooth{width:9%}table.paper-lines col.c-qty{width:6%}table.paper-lines col.c-pct{width:9%}table.paper-lines col.c-money{width:13%}table.paper-lines th{font-size:calc(11px * var(--fit));font-weight:600;color:var(--muted);text-align:left;padding:6px 5px;line-height:1.25;vertical-align:bottom}table.paper-lines td,table.paper-lines th{border-bottom:1px solid var(--soft-line);overflow-wrap:anywhere}table.paper-lines td{padding:7px 5px;line-height:1.35;vertical-align:top}table.paper-lines .num{text-align:right}table.paper-lines td.num{white-space:nowrap;overflow-wrap:normal;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}table.paper-lines td .code{font-weight:600;margin-right:4px}table.paper-lines td .nc{color:var(--muted);white-space:normal}table.paper-lines tr.over td{background:#FFFBF6}table.paper-lines tfoot td{font-weight:600;background:var(--warm);border-bottom:none;border-top:1px solid var(--soft-line)}table.paper-lines thead{display:table-header-group}table.paper-lines tr{page-break-inside:avoid;break-inside:avoid}body.presenting .tp .tp-work{display:none!important}body.presenting .paper-doc .estimate.sheet{margin:0 auto 24px}.signing .paper-doc .estimate.sheet{margin:0 auto 26px}.signing .sign-step{text-transform:none;letter-spacing:-.01em;font-size:22px;color:var(--brand);margin:10px 0 6px}@media print{.tp .tp-work{display:none!important}.paper-doc.offstage{position:static;visibility:visible;width:auto}.paper-doc .estimate.sheet{width:auto;min-height:0;margin:0;padding:0;border:none;box-shadow:none;display:block}.paper-doc .print-frame{display:table;width:100%;border-collapse:collapse}.paper-doc .print-frame>tbody{display:table-row-group}.paper-doc .print-frame>tbody>tr{display:table-row}.paper-doc .print-frame>tbody>tr>td{display:table-cell}.paper-doc .print-frame>tfoot{display:table-footer-group}.paper-doc .footer-space{height:.85in}.paper-doc .sheet .lh-footer{display:none}.paper-doc .print-footer{display:block;position:fixed;left:0;right:0;bottom:0;background:#fff}.paper-doc .print-footer .lh-footer{margin:0}.signing .sign-final,.signing .sign-notice,.signing .sign-step{display:none!important}}.plus-row td{border-bottom:none;padding:10px 8px;background:#fff}.plus-line{display:flex;align-items:center;justify-content:space-between;gap:12px}.plus-btn{display:inline-flex;align-items:center;gap:10px;font:inherit;font-weight:600;color:var(--brand,#A31F37);background:none;border:1.5px dashed #cfccc6;border-radius:10px;padding:8px 16px 8px 10px;cursor:pointer}.plus-btn span{display:inline-grid;place-items:center;width:26px;height:26px;border-radius:50%;background:var(--brand,#A31F37);color:#fff;font-size:18px;line-height:1}.plus-btn:hover{border-color:var(--brand,#A31F37);background:var(--brand-tint,#fbf3f4)}.est-empty .plus-btn{margin-top:6px}.est-empty p{margin:0 0 4px}.row-acts{white-space:nowrap;text-align:right}.star{background:none;border:none;font-size:18px;line-height:1;cursor:pointer;color:#b5b1aa;padding:2px 6px}.star.on,.star:hover:not(:disabled){color:#c9971c}.star.on{cursor:default}.code-picker{position:relative;width:100%;max-width:640px}.cp-input{display:flex;gap:8px;align-items:center}.cp-input .input{flex:1 1}.cp-list{list-style:none;margin:6px 0 0;padding:4px;border:1px solid #e4e2de;border-radius:10px;background:#fff;max-height:300px;overflow-y:auto;box-shadow:0 8px 24px rgba(0,0,0,.08)}.cp-list li{padding:7px 10px;border-radius:7px;cursor:pointer;display:flex;gap:10px}.cp-list li strong{min-width:56px}.cp-list li span{color:var(--body,#444)}.cp-list li.hi{background:var(--brand-tint,#fbf3f4)}.cp-list li.none{color:var(--muted);cursor:default}.code-tools{display:grid;grid-gap:12px;gap:12px}.fav-panel{border:1px solid #e4e2de;border-radius:12px;padding:12px 14px;background:#fff}.fav-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.fav-cats{display:flex;flex-wrap:wrap;gap:6px;padding-bottom:10px;border-bottom:1px solid #efede9}.fav-cat{font:inherit;font-size:13px;font-weight:600;border:1px solid #dedbd5;background:#fff;color:var(--body,#444);border-radius:999px;padding:6px 13px;cursor:pointer}.fav-cat .n{margin-left:6px;font-size:11px;background:#f1efeb;color:var(--muted);border-radius:999px;padding:1px 7px}.fav-cat.on{background:var(--brand,#A31F37);border-color:var(--brand,#A31F37);color:#fff}.fav-cat.on .n{background:rgba(255,255,255,.22);color:#fff}.fav-cat.empty:not(.on){color:var(--muted);border-style:dashed}.fav-codes{display:flex;flex-wrap:wrap;gap:8px;padding-top:10px;align-items:center}.fav-code{display:inline-flex;align-items:stretch;border:1px solid #dedbd5;border-radius:9px;overflow:hidden;background:#fff}.fav-add{font:inherit;font-size:13px;background:none;border:none;padding:7px 11px;cursor:pointer;text-align:left;max-width:340px}.fav-add span{color:var(--muted)}.fav-add:hover{background:var(--brand-tint,#fbf3f4)}.fav-x{border:none;border-left:1px solid #dedbd5;background:#faf7f6;color:#a31f37;font-size:16px;padding:0 10px;cursor:pointer}.fav-new{font:inherit;font-size:13px;font-weight:600;color:var(--brand,#A31F37);background:none;border:1.5px dashed #cfccc6;border-radius:9px;padding:7px 12px;cursor:pointer}.fav-new:hover{border-color:var(--brand,#A31F37)}.fav-picker{padding-top:10px}.tpl-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.tpl-row select{width:340px;max-width:100%}.btn.plus{width:38px;height:38px;padding:0;font-size:22px;font-weight:600;line-height:1;display:inline-grid;place-items:center;background:var(--brand,#A31F37);border-color:var(--brand,#A31F37);color:#fff;border-radius:50%}.tpl-modal .field{display:grid;grid-gap:6px;gap:6px;margin-bottom:14px}.tpl-modal .field span{font-size:13px;font-weight:600;color:var(--muted)}.tpl-lines{margin-bottom:8px}.tpl-lines .num-in{width:64px}.tpl-list{list-style:none;margin:0 0 16px;padding:0}.tpl-list li{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:12px 0;border-bottom:1px solid #efede9}.btn.link.danger{color:#a31f37}body.presenting .tp-tools.present-tools{max-height:60vh;overflow-y:auto}.star-pick{-moz-appearance:none;appearance:none;-webkit-appearance:none;border:none;background:none;font-size:18px;color:#b5b1aa;cursor:pointer;width:30px;padding:2px 6px;text-align:center}.star-pick:hover{color:#c9971c}.fav-hint{flex-basis:100%;margin:0 0 2px}.fav-code.editing{align-items:center;padding-left:10px;border-color:var(--brand,#A31F37);border-style:dashed}.fav-code.editing .fav-c{font-size:13px;margin-right:6px}.fav-label{font:inherit;font-size:13px;border:none;border-bottom:1px solid #cfccc6;background:transparent;padding:6px 2px;width:260px;max-width:46vw;color:var(--ink,#222)}.fav-label:focus{outline:none;border-bottom-color:var(--brand,#A31F37);background:var(--brand-tint,#fbf3f4)}.paper-doc.removing .fit-wrap{overflow:visible}.paper-doc .rm-cell{position:relative}.paper-doc .rm-x{position:absolute;top:50%;right:-.47in;transform:translateY(-50%);width:28px;height:28px;border-radius:50%;border:none;background:#A31F37;color:#fff;font-size:18px;line-height:1;cursor:pointer;box-shadow:0 2px 6px rgba(0,0,0,.18);display:grid;place-items:center}.paper-doc .rm-x:hover{background:#7f1529}.paper-doc.removing table.paper-lines tbody tr:hover td{background:#fbf3f4}.present-bar .btn.on{background:#A31F37;border-color:#A31F37;color:#fff}@media print{.paper-doc .rm-x{display:none!important}}.fav-add{padding:8px 14px;min-width:64px;text-align:center}.fav-add strong{font-size:14px;letter-spacing:.01em}.fav-code.editing{padding-left:0}.fav-code.editing .fav-add{cursor:default;color:var(--muted)}.pay-mode{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:4px 0 12px}.seg{display:inline-flex;border:1px solid #dedbd5;border-radius:10px;overflow:hidden}.seg button{font-size:13px;border:none;color:var(--body,#444)}.seg button+button{border-left:1px solid #dedbd5}.seg button.on{background:var(--brand,#A31F37)}.seg.small-seg button{padding:6px 11px}.all-pct{display:inline-flex;align-items:center;gap:8px;font-size:13px;color:var(--muted);margin-left:auto}.pct-sign{margin-left:3px;color:var(--muted)}.courtesy{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:4px 0 12px;padding:10px 14px;border:1px dashed #dedbd5;border-radius:12px}.est-card{grid-column:1/-1;margin:6px 0 0;font-size:12.5px;color:var(--body,#444);line-height:1.5}.est-card strong{color:var(--ink,#222)}.pin-modal p{line-height:1.55}.card .field,.pin-modal .field{display:grid;grid-gap:6px;gap:6px;margin-bottom:12px}.card .field span,.pin-modal .field span{font-size:13px;font-weight:600;color:var(--muted)}.pin-in{width:140px;font-size:22px;letter-spacing:.4em;text-align:center}.approval-ok{color:#2e7d4f}.who small a{color:inherit;text-decoration:underline}.unv{color:#A31F37;font-weight:600;font-size:12.5px}.recheck.unverified-warn{border-left:4px solid #a31f37}.pu{min-height:100vh;background:var(--brand-tint,#f7f3f4);padding:18px 14px 40px;font-family:Montserrat,system-ui,sans-serif;color:#222}.pu-head{display:flex;justify-content:center;padding:8px 0 18px}.pu-head img{max-height:64px;max-width:260px;object-fit:contain}.pu-head strong{font-size:20px;color:var(--brand,#A31F37)}.pu-card{max-width:480px;margin:0 auto;background:#fff;border-radius:18px;padding:22px 18px;box-shadow:0 6px 24px rgba(0,0,0,.06)}.pu-card h1{font-size:22px;margin:0 0 8px;color:var(--brand,#A31F37);letter-spacing:-.01em}.pu-card p{font-size:15px;line-height:1.55;margin:0 0 14px;color:#444}.pu-big{display:grid;grid-template-columns:44px 1fr;grid-template-rows:auto auto;align-items:center;grid-column-gap:10px;column-gap:10px;width:100%;text-align:left;font:inherit;background:#fff;border:1.5px solid #e2ddd8;border-radius:14px;padding:14px;margin:0 0 12px;cursor:pointer}.pu-big span{grid-row:span 2;font-size:24px;width:44px;height:44px;border-radius:50%;background:var(--brand-tint,#f7f3f4);display:grid;place-items:center;color:var(--brand,#A31F37);font-weight:700}.pu-big b{font-size:16px}.pu-big small{color:#777;font-size:13px}.pu-big.ok{border-color:#2e7d4f}.pu-big.ok span{background:#e8f5ed;color:#2e7d4f}.pu-big:disabled{opacity:.6}.pu-primary{width:100%;font:inherit;font-size:17px;font-weight:700;color:#fff;background:var(--brand,#A31F37);border:none;border-radius:14px;padding:15px;margin-top:6px;cursor:pointer}.pu-primary:disabled{opacity:.45}.pu-link{display:block;margin:12px auto 0;font:inherit;color:var(--brand,#A31F37);background:none;border:none;text-decoration:underline;cursor:pointer}.pu-card label{display:grid;grid-gap:6px;gap:6px;font-size:14px;font-weight:600;color:#333;margin-bottom:12px}.pu-card label i{font-weight:400;color:#888;font-style:normal}.pu-card input,.pu-card select{font:inherit;font-size:16px;padding:12px;border:1.5px solid #e2ddd8;border-radius:10px;background:#fff}.pu-note{color:#666!important;font-size:14px!important}.pu-ok{color:#2e7d4f!important}.pu-err,.pu-ok{font-weight:600}.pu-err{color:#A31F37!important;margin-top:12px!important}.pu-foot{max-width:480px;margin:16px auto 0;text-align:center;font-size:12px;color:#777}.ir-panel{margin-bottom:16px}.ir-panel-head{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}.ir-panel-head h3{margin:0}.ir-card{border:1px solid #e4e2de;border-radius:12px;padding:12px 14px;margin-top:12px;background:#fff}.ir-card.received{border-left:4px solid var(--brand,#a31f37)}.ir-card.done{opacity:.85}.ir-head{display:flex;justify-content:space-between;gap:10px;align-items:flex-start}.badge.ok{background:#e8f5ed;color:#2e7d4f}.ir-files{display:flex;flex-wrap:wrap;gap:12px;margin:12px 0 6px}.ir-file{margin:0;width:220px}.ir-file img{width:220px;height:140px;object-fit:contain;background:#f6f5f3;border:1px solid #e4e2de;border-radius:8px;cursor:-webkit-grab;cursor:grab}.ir-file figcaption{font-size:12px;color:var(--muted);margin-top:4px}.ir-doc,.ir-gone{display:grid;place-items:center;width:220px;height:140px;background:#f6f5f3;border:1px dashed #d8d4ce;border-radius:8px;text-align:center;font-weight:600;color:var(--body);font-size:13px}.ir-typed{max-width:520px;margin:10px 0}.ir-typed th{width:190px;text-align:left;font-weight:600;color:var(--muted)}.pde-teg{display:inline-block;margin:0 8px 4px 0;padding:2px 8px;border-radius:999px;background:#E8F3EC;color:#1E6B3A;font-size:11px;font-weight:700;letter-spacing:.02em;text-transform:uppercase;vertical-align:middle}.team-row{grid-template-columns:minmax(0,1fr) 140px 150px 210px}.team-btns{display:flex;gap:8px;align-items:center;justify-content:flex-end}.team-btns .btn{min-height:32px;padding:0 12px}.team-status.fail{background:#FDECEE;color:#A31F37;cursor:help}.pde-card-head{display:flex;align-items:center;justify-content:space-between;gap:12px}@media (max-width:900px){.team-row{grid-template-columns:1fr auto}.team-btns{grid-column:1/-1;justify-content:flex-start}}.seg button{padding:8px 14px;font-weight:600;color:var(--ink);min-height:38px;background:#fff;border:0;cursor:pointer;font:inherit}.seg button+button{border-left:1.5px solid var(--line)}.seg button.on{background:var(--brand);color:#fff}.pde-acts-col{display:flex;flex-direction:column;gap:6px;align-items:flex-start}.day-row.yellow{border-left-color:#E8DC4A;background:#FFFFCC}.pt-state.yellow{color:#4A4300}.m-count.yellow,.m-pt.yellow{border-left-color:#E8DC4A;background:#FFFFCC;color:#4A4300}.dot.lg-yellow{background:#E8DC4A}body.presenting .staff-only{display:none!important}@media print{.staff-only{display:none!important}}.pt-state .cov-chg{display:block;margin-top:4px;font-size:12px;font-weight:600;color:#6B5600}@media print{.cov-chg{display:none!important}}.ins-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:16px;gap:16px;align-items:start}.ins-col{display:flex;flex-direction:column;gap:16px;min-width:0}.ins-grid .card .field{margin-bottom:10px}.ins-grid .field label{font-size:12px;font-weight:600;color:var(--muted)}.ins-head{display:flex;justify-content:space-between;align-items:flex-start;gap:10px;margin-bottom:14px;flex-wrap:wrap}.ins-sub{margin:16px 0 8px;font-size:13px;text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}.card-up{display:flex;flex-direction:column;align-items:flex-end;gap:4px}.card-up .small-btn{font-size:12px;padding:6px 10px;min-height:0}.card-list{list-style:none;margin:0;padding:0;font-size:12px;text-align:right}@media (max-width:1200px){.ins-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:700px){.ins-grid{grid-template-columns:1fr}.card-up{align-items:flex-start}.card-list{text-align:left}}.ins-order{display:inline-block;margin-top:4px;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;padding:2px 8px;background:var(--panel);color:var(--muted)}.ins-order.p{background:var(--brand);color:#fff}.pms-badge-wrap{display:block;margin-top:4px}.pms-badge{display:inline-block;background:#A31F37;color:#fff;font-weight:600;font-size:12px;border-radius:4px;padding:2px 8px}.pms-line{display:block;font-size:12px;color:#444;margin-top:2px}.m-count.total{font-weight:600;color:#333}.pms-badge{white-space:normal;line-height:1.35}.conflict-alert{border:2px solid #a31f37;background:#FDF2F4;color:#3a0d16;border-radius:8px;padding:10px 14px;margin:0 0 14px;max-width:900px}.conflict-alert .conflict-item{border-top:1px solid #f0c9d0;margin-top:8px;padding-top:8px}.pf-backdrop{position:fixed;inset:0;background:rgba(0,0,0,.35);display:flex;align-items:center;justify-content:center;z-index:1000;padding:16px}.pf-modal{background:#fff;border-radius:10px;padding:18px 20px;max-width:560px;width:100%;max-height:85vh;overflow:auto;box-shadow:0 10px 30px rgba(0,0,0,.25)}.net-line{display:block;font-size:12px;color:#444;margin-top:2px;position:relative}.net-line .net-unknown{color:#6B5600}.net-line .net-out{color:#A31F37}.net-checks{display:inline-flex;gap:12px;margin-left:10px}.net-checks label{display:inline-flex;gap:4px;align-items:center;cursor:pointer}.net-pop{position:absolute;left:0;top:100%;margin-top:4px;z-index:50;background:#2F3033;color:#fff;padding:6px 10px;border-radius:6px;font-size:12px;box-shadow:0 4px 12px rgba(0,0,0,.2);animation:netfade 5s forwards;white-space:normal;max-width:360px}.net-pop.err{background:#A31F37}@keyframes netfade{0%,80%{opacity:1}to{opacity:0}}.am-box{grid-column:1/-1;display:grid;grid-gap:4px;gap:4px;margin-top:8px;padding:10px 12px;border:1px solid var(--line,#e3e3e3);border-radius:8px}.am-box .am-title{font-weight:600;font-size:13px;margin-bottom:2px}.am-box .am-over span,.am-box .am-over strong{color:var(--red,#A31F37)}.est-am{grid-column:1/-1;margin-top:10px;padding:8px 10px;border:1px solid var(--line,#ddd);border-radius:6px;page-break-inside:avoid;break-inside:avoid}.est-am h4{margin:0 0 6px;font-size:13px}.est-am .est-sum-rows{max-width:none;gap:3px}.est-am .est-sum-rows div{font-size:13px}.est-am-over span{font-weight:600}.pay-compare{grid-column:1/-1;width:100%;border-collapse:collapse;font-size:13.5px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.pay-compare th{font-size:12px;font-weight:600;color:var(--muted);text-align:right;padding:4px 8px;border-bottom:1px solid var(--line,#ddd)}.pay-compare td{padding:4px 8px;color:var(--body)}.pay-compare td.num,.pay-compare th.num{text-align:right;white-space:nowrap}.pay-compare tr.pc-total td{font-weight:700;font-size:15px;color:var(--ink);border-top:2px solid var(--brand,#a31f37);padding-top:6px}.pay-compare tr.pc-total td.num{color:var(--brand,#A31F37)}.pay-compare tr.pc-section td{font-weight:600;padding-top:12px;color:var(--ink);border-bottom:1px solid var(--line,#ddd)}.pay-compare tr.pc-over td{color:var(--red,#A31F37);font-weight:600}.est-summary .pay-compare{page-break-inside:avoid;break-inside:avoid}.pay-compare tr.pc-sub td{border-top:1px solid var(--line,#ddd);font-weight:600;color:var(--ink)}.pay-compare tr.pc-note td{font-size:12.5px;color:var(--body,#444);line-height:1.5;padding-top:6px}.pay-compare th .pc-hint{display:block;font-weight:400;font-size:11px}.num-box{display:inline-block;min-width:64px;padding:4px 8px;border:1px solid var(--soft-line,#cfcfcf);border-radius:6px;text-align:right;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}@media print{.num-box{border-color:#999}}.pt-state .vob-sum{margin:6px 0 0;padding-left:16px;font-size:12px;font-weight:500;color:#333;line-height:1.35}.pt-state .vob-sum li{margin:1px 0}.pt-act .needs-plan{display:block;width:100%;font-size:12px;font-weight:700;color:#6B5600;text-align:center;margin-bottom:4px}@media print{.needs-plan,.vob-sum{display:none!important}}.visit-msgs{margin-top:18px}.visit-msgs-head{display:flex;flex-wrap:wrap;align-items:baseline;gap:10px}.visit-msgs-head h2{margin:0;font-size:17px}.visit-msgs-list{display:flex;flex-direction:column;gap:8px;margin:12px 0;max-height:420px;overflow-y:auto}.msg{max-width:78%;padding:8px 12px;border-radius:10px;background:#F2F2F3;align-self:flex-start}.msg.teg{background:#F7EEF0}.msg.mine{align-self:flex-end;background:#E9F3EC}.msg-meta{font-size:12px;color:#6B6D70;margin-bottom:2px}.msg-body{white-space:pre-wrap;font-size:14px;line-height:1.4}.msg-tag{margin-left:6px;font-size:10px;font-weight:700;color:#fff;background:#A31F37;border-radius:4px;padding:1px 5px}.visit-msgs-actions{display:flex;justify-content:flex-end;align-items:center;gap:10px;margin-top:8px}.msg-badge{display:inline-block;min-width:18px;margin-left:6px;padding:0 6px;border-radius:9px;background:#A31F37;color:#fff;font-size:11px;font-weight:700;line-height:18px;text-align:center}.msg-inbox{display:flex;flex-direction:column;gap:8px;margin-top:12px}.msg-thread{display:flex;justify-content:space-between;gap:12px;text-decoration:none;color:inherit}.msg-thread.unread{border-left:4px solid #a31f37}.msg-thread-main{display:flex;flex-direction:column;gap:2px;min-width:0}.msg-thread-last{font-size:13px;color:#444;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.msg-thread-side{display:flex;flex-direction:column;align-items:flex-end;gap:4px;white-space:nowrap}.msg-card-link{display:inline-block;margin-top:4px;font-size:12px;font-weight:600;color:#6B5600}.msg-card-link.unread{color:#A31F37}@media print{.msg-badge-link,.msg-card-link,.visit-msgs{display:none!important}}.cbar-wrap{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));grid-gap:8px;gap:8px;align-items:end;height:220px;margin:4px 0 34px;padding:0 2px;border-bottom:1px solid var(--line,#e4e5e7)}.cbar{display:flex;flex-direction:column;align-items:center;height:100%;justify-content:flex-end;min-width:0}.cbar-val{font-size:11px;font-weight:700;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;margin-bottom:4px}.cbar-track{width:70%;max-width:46px;height:160px;display:flex;align-items:flex-end}.cbar-fill{width:100%;background:#7E8083;border-radius:3px 3px 0 0;min-height:2px}.cbar-fill.good{background:#4C4E51}.cbar-lbl{font-size:11px;text-align:center;margin-top:6px;line-height:1.2;transform:translateY(26px);position:absolute}.cbar{position:relative}.rf-bar{position:fixed;left:0;right:0;bottom:0;z-index:40;background:#fff;border-top:1px solid var(--line);box-shadow:0 -6px 20px rgba(0,0,0,.06);display:flex;justify-content:space-between;align-items:center;gap:12px;padding:14px 24px;flex-wrap:wrap}.rf-dot{display:inline-block;width:8px;height:8px;border-radius:50%;background:#A31F37;margin-right:6px;vertical-align:middle}.rf-unread{font-weight:700}