@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(/fonts/geist-latin.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(/fonts/geist-latin-ext.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}:root{--accent:#4b44c4;--accent-hover:#3f39ad;--accent-2:#efeefc;--ring:#e3e1fb;--bg:#f6f6f4;--card:#fff;--line:#e7e6ea;--line-2:#efeef1;--line-3:#f2f1f4;--input:#e3e2e7;--text:#1c1b22;--text-2:#4a4954;--muted:#6b6a75;--faint:#8a8994;--faint-2:#9a99a3;--head-bg:#fafaf9;--green:#1e7047;--green-bg:#e7f3ec;--red:#b02e3c;--red-bg:#fbe9eb;--amber:#8f5600;--amber-bg:#fbf0dc;--blue:#2b56ad;--blue-bg:#e8eefa;--grey:#5d5c66;--grey-bg:#efeff1;--track:#f2f1f4;--seg:#ecebef;--shadow-pop:0 16px 40px #1c1b2224;color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased;font-family:Geist,system-ui,-apple-system,sans-serif;font-size:14px}*{box-sizing:border-box}body{background:var(--bg);margin:0}a{color:var(--accent);text-decoration:none}a:hover{color:var(--accent-hover);text-decoration:underline}h1{letter-spacing:-.02em;margin:0;font-size:24px;font-weight:600}h2{margin:0;font-size:16px;font-weight:600}h3{margin:0;font-size:14px;font-weight:600}input,select,textarea,button{font-family:inherit}input,select,textarea{color:inherit;border:1px solid var(--input);background:#fff;border-radius:8px;min-width:0;height:38px;padding:0 10px;font-size:14px}input[type=checkbox],input[type=radio]{height:auto;accent-color:var(--accent);margin:0}input[type=file]{border-style:dashed;border-color:#d6d5dc;height:auto;padding:8px;font-size:13px}input[type=color]{width:46px;padding:2px}input[type=number]::-webkit-inner-spin-button{opacity:.3}input:focus,select:focus,textarea:focus{outline:2px solid var(--ring);outline-offset:0;border-color:var(--accent)}textarea{resize:vertical;height:auto;min-height:72px;padding:9px 10px;line-height:1.5}table input,table select{border-radius:7px;height:32px;padding:0 8px;font-size:13px}code{background:var(--track);border-radius:6px;padding:1px 6px;font-family:ui-monospace,Menlo,monospace;font-size:12px}.app{background:var(--bg);grid-template-columns:232px minmax(0,1fr);min-height:100vh;display:grid}.side{border-right:1px solid var(--line);color:var(--text-2);z-index:5;background:#fff;flex-direction:column;align-self:start;height:100vh;display:flex;position:sticky;top:0}.brand{align-items:center;gap:10px;padding:18px 16px 14px;display:flex}.brand-mark{background:var(--text);color:#fff;border-radius:9px;flex:none;place-items:center;width:32px;height:32px;font-size:15px;font-weight:700;display:grid}.brand-name{color:var(--text);font-size:14px;font-weight:600}.brand small{color:var(--muted);margin-top:1px;font-size:12px;font-weight:400;display:block}.side nav{flex-direction:column;flex:1;gap:2px;padding:6px 10px;display:flex;overflow:auto}.side nav a{color:var(--text-2);border-radius:8px;justify-content:space-between;align-items:center;height:36px;padding:0 10px;font-size:13.5px;font-weight:500;display:flex}.side nav a:hover{background:var(--bg);color:var(--text);text-decoration:none}.side nav a.active{background:var(--accent-2);color:var(--accent);font-weight:600}.side nav a .badge-count{background:var(--red-bg);color:var(--red)}.side .nav-group{text-transform:uppercase;letter-spacing:.06em;color:var(--faint-2);padding:14px 10px 6px;font-size:11px;font-weight:500}.side .side-foot{border-top:1px solid var(--line-2);color:var(--text-2);flex-direction:column;gap:10px;padding:14px 16px;font-size:12.5px;display:flex}.side .side-foot .btn{justify-content:center;height:30px;font-size:12.5px}.main{flex-direction:column;min-width:0;display:flex}.topbar{-webkit-backdrop-filter:blur(8px);border-bottom:1px solid var(--line);z-index:20;background:#ffffffeb;justify-content:space-between;align-items:center;gap:16px;min-height:58px;padding:10px 20px;display:flex;position:sticky;top:0}.topbar .who{flex-shrink:0;align-items:center;gap:10px;display:flex}.topbar .who select{max-width:150px;height:34px;font-size:13px}.topbar .btn{height:34px}.pill{white-space:nowrap;cursor:pointer;border:0;border-radius:999px;flex:none;align-items:center;gap:7px;height:28px;padding:0 10px;font-family:inherit;font-size:12.5px;font-weight:500;text-decoration:none;display:inline-flex}.pill:hover{filter:brightness(.97);text-decoration:none}.pill:before{content:"";opacity:.75;background:currentColor;border-radius:50%;width:6px;height:6px}.pill.amber{background:var(--amber-bg);color:var(--amber)}.pill.red{background:var(--red-bg);color:var(--red)}.count{color:#fff;background:var(--red);border-radius:999px;place-items:center;min-width:18px;height:18px;padding:0 5px;font-size:10.5px;font-weight:600;display:inline-grid}.count.amber{background:#d48a1c}.bell{position:relative}.popover{border:1px solid var(--line);width:360px;max-height:440px;box-shadow:var(--shadow-pop);z-index:100;background:#fff;border-radius:12px;position:absolute;top:42px;right:0;overflow:auto}.popover-head{border-bottom:1px solid var(--line-2);justify-content:space-between;align-items:center;padding:12px 14px;font-size:13.5px;display:flex}.popover .item{border-bottom:1px solid var(--line-3);padding:11px 14px;font-size:13px;line-height:1.45}.popover .item a{color:var(--text)}.popover .item.unread{background:#f7f6fe}.popover .item .when{color:var(--faint);margin-top:3px;font-size:11.5px}.content{padding:28px 32px 80px}.content>*{max-width:1280px;margin-left:auto;margin-right:auto}.page{flex-direction:column;gap:18px;display:flex}.page-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:12px;display:flex}.page-head .muted{margin-top:4px}.card{background:var(--card);border:1px solid var(--line);border-radius:12px;min-width:0;padding:16px 18px}.card-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;margin-bottom:12px;display:flex}.card-head .muted{font-size:12px}.row{align-items:center;display:flex}.row.gap{flex-wrap:wrap;gap:8px}.col{flex-direction:column;gap:10px;display:flex}.split{grid-template-columns:repeat(auto-fit,minmax(420px,1fr));gap:18px;display:grid}.split3{grid-template-columns:repeat(3,1fr);gap:18px;display:grid}.split-2-1{grid-template-columns:2fr 1fr;gap:18px;display:grid}@media (width<=1100px){.split,.split3,.split-2-1{grid-template-columns:1fr}}.muted{color:var(--muted)}.faint{color:var(--faint)}.small{font-size:12px}.right{text-align:right}.nowrap{white-space:nowrap}.spacer{flex:1}.num,.stat-value,.money{font-variant-numeric:tabular-nums}.warn-text{color:var(--amber)}.bad-text{color:var(--red)}.good-text{color:var(--green)}.btn{font:inherit;border:1px solid var(--input);height:36px;color:var(--text);cursor:pointer;white-space:nowrap;background:#fff;border-radius:8px;align-items:center;gap:6px;padding:0 14px;font-size:13px;font-weight:500;text-decoration:none;display:inline-flex}.btn:hover{background:var(--bg);color:var(--text);text-decoration:none}.btn.primary{background:var(--accent);border-color:var(--accent);color:#fff}.btn.primary:hover{background:var(--accent-hover);border-color:var(--accent-hover);color:#fff}.btn.danger{color:var(--red);border-color:#f0c4ca}.btn.danger:hover{background:#fdf1f2}.btn.good{background:var(--green);border-color:var(--green);color:#fff}.btn.good:hover{filter:brightness(1.08);background:var(--green);color:#fff}.btn.soft-good{color:var(--green);background:#eef7f1;border-color:#cde6d6;font-weight:600}.btn.ghost{color:var(--muted);background:0 0;border-color:#0000}.btn.ghost:hover{background:var(--track);color:var(--text)}.btn.sm{border-radius:7px;height:30px;padding:0 10px;font-size:12.5px}.btn.icon{justify-content:center;width:32px;padding:0}.btn.wa{color:#fff;background:#1fa855;border-color:#1fa855}.btn.wa:hover{color:#fff;background:#1b964c}.btn:disabled{opacity:.5;cursor:not-allowed}.tabs{border-bottom:1px solid var(--line-2);scrollbar-width:thin;gap:4px;display:flex;overflow-x:auto}.tabs .tab{color:var(--muted);font:inherit;cursor:pointer;white-space:nowrap;background:0 0;border:0;align-items:center;gap:6px;padding:10px 12px 12px;font-size:13.5px;font-weight:500;display:inline-flex}.tabs .tab:hover{color:var(--text);text-decoration:none}.tabs .tab.active{color:var(--text);box-shadow:inset 0 -2px 0 var(--accent);font-weight:600}.tabs .tab .badge-count{background:var(--red-bg);color:var(--red)}.tabs.sub{background:var(--seg);border-bottom:0;border-radius:9px;gap:0;width:fit-content;max-width:100%;padding:3px}.tabs.sub .tab{height:30px;box-shadow:none;border-radius:7px;padding:0 14px;font-size:13px}.tabs.sub .tab.active{color:var(--text);background:#fff;font-weight:500;box-shadow:0 1px 2px #1c1b221a}.badge-count{background:var(--red);color:#fff;border-radius:999px;place-items:center;min-width:18px;height:18px;padding:0 5px;font-size:10.5px;font-weight:600;display:inline-grid}.stats{grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:12px;display:grid}.stat{border:1px solid var(--line);text-align:left;font:inherit;color:var(--text);background:#fff;border-radius:12px;padding:16px 18px}.stat-label{color:var(--muted);font-size:12.5px}.stat-value{letter-spacing:-.01em;margin-top:6px;font-size:22px;font-weight:600}.stat-hint{color:var(--faint);margin-top:4px;font-size:12px}.stat.good .stat-value{color:var(--green)}.stat.bad .stat-value{color:var(--red)}.stat.warn .stat-value{color:var(--amber)}a.stat,button.stat{cursor:pointer}a.stat:hover,button.stat:hover{border-color:#c9c5f1;text-decoration:none}a.stat{color:inherit}.stat.selected{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-2)}.tbl-wrap{overflow-x:auto}table.tbl{border-collapse:collapse;width:100%;font-size:13px}.tbl th{text-align:left;color:var(--muted);border-top:1px solid var(--line-2);border-bottom:1px solid var(--line-2);background:var(--head-bg);white-space:nowrap;padding:10px 12px;font-size:12px;font-weight:500}.tbl td{border-bottom:1px solid var(--line-3);vertical-align:middle;padding:11px 12px}.tbl th:first-child,.tbl td:first-child{padding-left:18px}.tbl th:last-child,.tbl td:last-child{padding-right:18px}.tbl tbody tr:last-child td{border-bottom:0}.tbl tr.section td{background:var(--head-bg);color:var(--text-2);font-size:12.5px;font-weight:600}.tbl tr.clickable{cursor:pointer}.tbl tr.clickable:hover td{background:var(--head-bg)}.tbl tfoot td{border-top:1px solid var(--line-2);border-bottom:0;font-weight:600}.tbl td.num,.tbl th.num{text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums}.card>.tbl-wrap{margin:0 -18px}.card>.tbl-wrap:last-child{margin-bottom:-16px}.card>.tbl-wrap:last-child .tbl tbody tr:last-child td{border-bottom:0}.badge{white-space:nowrap;border-radius:999px;align-items:center;gap:5px;padding:2px 8px;font-size:11.5px;font-weight:600;display:inline-flex}.badge.dot:before{content:"";background:currentColor;border-radius:50%;width:5px;height:5px}.badge.green{background:var(--green-bg);color:var(--green)}.badge.red{background:var(--red-bg);color:var(--red)}.badge.amber{background:var(--amber-bg);color:var(--amber)}.badge.blue{background:var(--blue-bg);color:var(--blue)}.badge.grey{background:var(--grey-bg);color:var(--grey)}.badge.purple{background:var(--accent-2);color:var(--accent)}.progress{background:var(--track);border-radius:999px;flex:1;min-width:60px;height:6px;overflow:hidden}.progress>div{background:var(--accent);border-radius:999px;height:100%}.progress.done>div{background:var(--green)}.progress.small{height:5px}.money.neg{color:var(--red)}.empty{text-align:center;color:var(--muted);background:#fff;border:1px dashed #dcdbe1;border-radius:10px;padding:32px 20px;font-size:13px}.empty b,.empty strong{color:var(--text);margin-bottom:4px;font-size:14px;display:block}.fixnote{color:#5f4a00;background:#fbf7ea;border:1px solid #efe3bd;border-radius:10px;align-items:flex-start;gap:10px;padding:10px 14px;font-size:12.5px;line-height:1.5;display:flex}.fixnote:before{content:"Demo note";background:#f2e5b6;border-radius:5px;flex:none;padding:1px 7px;font-size:11px;font-weight:600}.notes-off .fixnote{display:none}.alert{border:1px solid #0000;border-radius:10px;align-items:center;gap:12px;padding:12px 14px;font-size:13.5px;font-weight:600;line-height:1.45;display:flex}.alert:before{color:#fff;content:"!";border-radius:50%;flex:none;place-items:center;width:20px;height:20px;font-size:12px;font-weight:700;display:grid}.alert.warn{color:var(--amber);background:#fdf6e8;border-color:#f0dcb1}.alert.warn:before{background:#b37315}.alert.bad{color:var(--red);background:#fdf1f2;border-color:#f3cfd4}.alert.bad:before{background:var(--red)}.alert.info{color:#2b3f6b;background:#f1f4fc;border-color:#d3dcf3;font-size:12.5px;font-weight:400}.alert.info:before{background:var(--blue);content:"i";width:18px;height:18px;font-size:11px}.alert.good{color:var(--green);background:#eef7f1;border-color:#cde6d6}.alert.good:before{background:var(--green);content:"✓"}.alert>.btn{height:30px;color:inherit;border-color:currentColor;border-color:color-mix(in srgb, currentColor 30%, transparent);background:#fff;flex:none;margin-left:auto;padding:0 12px;font-size:12.5px;font-weight:600}.chip{background:var(--grey-bg);color:var(--text-2);border-radius:999px;align-items:center;gap:6px;height:26px;padding:0 10px;font-size:12.5px;font-weight:500;display:inline-flex}a.chip:hover{filter:brightness(.97);text-decoration:none}.help{width:17px;height:17px;color:var(--faint);cursor:help;vertical-align:middle;letter-spacing:0;border:1px solid #d6d5dc;border-radius:50%;place-items:center;margin-left:6px;font-size:10.5px;font-weight:600;display:inline-grid}.kv{flex-wrap:wrap;gap:10px 0;display:flex}.kv>div{border-left:1px solid #ebeaee;flex-direction:column;gap:3px;padding:0 20px;display:flex}.kv>div:first-child{border-left:0;padding-left:0}.kv-label{letter-spacing:.05em;text-transform:uppercase;color:var(--faint-2);font-size:11px;font-weight:500}.kv-value{color:var(--text);font-size:13.5px;font-weight:500}.list-link{color:var(--text);cursor:pointer;border-radius:8px;align-items:center;gap:12px;padding:10px;display:flex}.list-link:hover{background:var(--bg);color:var(--text);text-decoration:none}.list-link .n{background:var(--amber-bg);min-width:28px;height:24px;color:var(--amber);border-radius:7px;place-items:center;padding:0 6px;font-size:12.5px;font-weight:600;display:grid}.list-link.zero{color:var(--faint)}.list-link.zero .n{background:var(--grey-bg);color:var(--faint)}.list-link:after{content:"›";color:var(--faint-2);margin-left:auto}.overlay{z-index:50;background:#1c1b2252;justify-content:flex-end;display:flex;position:fixed;inset:0}.overlay.center{background:#1c1b225c;justify-content:center;align-items:center;padding:16px}.drawer{background:#fff;flex-direction:column;width:min(520px,100vw);height:100vh;display:flex;box-shadow:-16px 0 40px #1c1b2224}.drawer.wide{width:min(980px,100vw)}.modal{background:#fff;border-radius:14px;flex-direction:column;width:min(520px,100%);max-height:90vh;display:flex;box-shadow:0 24px 60px #1c1b2238}.drawer-head{border-bottom:1px solid var(--line-2);justify-content:space-between;align-items:center;gap:12px;padding:16px 20px;display:flex}.drawer-head .sub{color:var(--muted);margin-top:2px;font-size:12.5px}.drawer-head .btn.ghost{justify-content:center;width:32px;height:32px;padding:0}.drawer-body{flex-direction:column;flex:1;gap:14px;padding:20px;display:flex;overflow:auto}.drawer-foot{border-top:1px solid var(--line-2);flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;padding:14px 20px;display:flex}.confirm{background:#fff;border-radius:14px;width:min(420px,100%);padding:20px;box-shadow:0 24px 60px #1c1b2238}.confirm-icon{background:var(--amber-bg);width:32px;height:32px;color:var(--amber);border-radius:50%;flex:none;place-items:center;font-size:15px;font-weight:700;display:grid}.confirm.danger .confirm-icon{background:var(--red-bg);color:var(--red)}.confirm-title{font-size:15px;font-weight:600}.confirm-body{color:var(--text-2);margin-top:6px;font-size:13px;line-height:1.5}.confirm-foot{justify-content:flex-end;gap:8px;margin-top:20px;display:flex}.field{flex-direction:column;gap:5px;min-width:0;display:flex}.field.span2{grid-column:span 2}.field-label{color:var(--muted);font-size:12px;font-weight:500}.field-hint{color:var(--faint);font-size:11.5px}.grid{gap:14px;display:grid}.grid.g2{grid-template-columns:1fr 1fr}.grid.g3{grid-template-columns:repeat(3,1fr)}.grid.g4{grid-template-columns:repeat(4,1fr)}.inline-create{background:var(--accent-2);border-radius:10px;flex-wrap:wrap;align-items:center;gap:6px;padding:8px;display:flex}.inline-create input{flex:1;min-width:120px}.combo{width:100%;position:relative}.combo>input{width:100%;padding-right:28px}.combo>input.has-value::placeholder{color:var(--text)}.combo-caret{color:var(--muted);pointer-events:none;font-size:11px;position:absolute;top:50%;right:10px;transform:translateY(-50%)}.combo-list{z-index:40;border:1px solid var(--line);box-shadow:var(--shadow-pop);background:#fff;border-radius:10px;max-height:280px;margin:0;padding:4px;list-style:none;position:absolute;top:calc(100% + 4px);left:0;right:0;overflow-y:auto}.combo-list li{cursor:pointer;border-radius:7px;justify-content:space-between;gap:10px;padding:8px 10px;font-size:13.5px;display:flex}.combo-list li.hi{background:var(--accent-2)}.combo-list li.on{font-weight:600}.combo-meta{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;font-size:12px;overflow:hidden}.combo-list .combo-empty{color:var(--muted);cursor:default}.combo-list .combo-new{color:var(--accent);border-top:1px solid var(--line-2);margin-top:2px;font-weight:500}.steps{flex-direction:column;gap:12px;display:flex}.step{gap:10px;font-size:13px;line-height:1.5;display:flex}.step-n{background:var(--accent-2);width:22px;height:22px;color:var(--accent);border-radius:50%;flex:none;place-items:center;font-size:12px;font-weight:600;display:grid}.bars{align-items:flex-end;gap:14px;height:170px;display:flex}.bar-col{flex-direction:column;flex:1;align-items:center;gap:6px;min-width:0;height:100%;display:flex}.bar-val{color:var(--muted);font-variant-numeric:tabular-nums;font-size:11.5px}.bar-track{background:var(--track);border-radius:6px;flex:1;align-items:flex-end;width:100%;max-width:40px;display:flex;overflow:hidden}.bar-fill{background:var(--accent);border-radius:6px 6px 0 0;width:100%}.bar-label{color:var(--faint);font-size:11.5px}.hbars{grid-template-columns:minmax(0,170px) minmax(0,1fr) auto;align-items:center;gap:12px;font-size:13px;display:grid}.hbar{display:contents}.hbar-label{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.hbar-track{background:var(--track);border-radius:999px;height:8px;overflow:hidden}.hbar-track>div{background:var(--accent);border-radius:999px;height:100%}.hbar-val{text-align:right;color:var(--text-2);font-variant-numeric:tabular-nums}.toasts{z-index:200;pointer-events:none;flex-direction:column;gap:8px;width:min(440px,100vw - 24px);display:flex;position:fixed;bottom:20px;left:50%;transform:translate(-50%)}.toast{pointer-events:auto;background:var(--text);color:#fff;border-radius:12px;align-items:flex-start;gap:12px;padding:12px 12px 12px 14px;display:flex;box-shadow:0 12px 32px #1c1b2247}.toast-dot{color:#5fd394;border:1.5px solid #5fd394;border-radius:50%;flex:none;place-items:center;width:20px;height:20px;margin-top:1px;font-size:11px;font-weight:700;display:grid}.toast.error{background:var(--red)}.toast.error .toast-dot{color:#fff;background:#ffffff38;border:0}.toast-title{font-size:13px;font-weight:600}.toast-msg{opacity:.88;margin-top:2px;font-size:13px;line-height:1.45}.toast-x{width:24px;height:24px;color:inherit;opacity:.6;cursor:pointer;background:0 0;border:0;flex:none}.gantt{border:1px solid var(--line);background:#fff;border-radius:12px;overflow-x:auto}.gantt svg text{font-family:inherit}.phone-frame{background:#e9e8e4;min-height:100vh}.phone{background:var(--bg);flex-direction:column;max-width:460px;min-height:100vh;margin:0 auto;display:flex}.phone-top{background:var(--text);color:#fff;z-index:10;justify-content:space-between;align-items:center;padding:14px 16px;display:flex;position:sticky;top:0}.phone-body{flex-direction:column;flex:1;gap:12px;padding:12px;display:flex}.phone-nav{border-top:1px solid var(--line);background:#fff;grid-template-columns:repeat(4,1fr);display:grid;position:sticky;bottom:0}.phone-nav a{text-align:center;color:var(--muted);padding:12px 4px;font-size:12px;font-weight:500}.phone-nav a.active{color:var(--accent);font-weight:600}.doc{border:1px solid var(--line);background:#fff;border-radius:12px;max-width:860px;margin:0 auto;padding:32px}.doc h1{font-size:22px}.doc table{border-collapse:collapse;width:100%;font-size:12.5px}.doc th,.doc td{text-align:left;border:1px solid #dcdbe1;padding:6px 8px}.doc th{background:var(--head-bg);font-weight:600}.doc .num{text-align:right}.doc-head{border-bottom:2px solid var(--text);justify-content:space-between;gap:20px;margin-bottom:14px;padding-bottom:12px;display:flex}.doc-sign{text-align:center;justify-content:flex-end;margin-top:30px;display:flex}.doc-logo{align-items:center;gap:14px;display:flex}.doc-logo img{object-fit:contain;max-width:3in;max-height:1in}.doc-sign img{object-fit:contain;width:3in;max-width:100%;max-height:3in;margin:0 auto 4px;display:block}.doc-sign .row{flex-wrap:wrap}.doc-sign,.doc-sign img{break-inside:avoid}.print-bar{justify-content:center;gap:8px;padding:12px;display:flex}@media print{.print-bar,.side,.topbar{display:none!important}.app{display:block}.content{padding:0}.doc{border:0;border-radius:0;max-width:none;padding:0}body,:root{background:#fff}}.menu-btn,.side-backdrop{display:none}.topbar .attention{flex-wrap:wrap;flex:1;align-items:center;gap:6px;display:flex}.tbl-wrap{-webkit-overflow-scrolling:touch;max-width:100%;overflow-x:auto}.tbl-wrap>table.tbl{min-width:100%}.drawer,.side{height:100dvh}.drawer-body .tbl-wrap{border:1px solid var(--line);border-radius:8px}.drawer-body .tbl th{z-index:1;position:sticky;top:0}.page-head h1{word-break:break-word}.page-head>div:last-child{justify-content:flex-end}.stat-value{word-break:break-word}.btn{touch-action:manipulation}.popover{width:min(360px,92vw)}.empty{word-break:break-word}img{max-width:100%}@media (width<=1100px){.app{grid-template-columns:210px minmax(0,1fr)}.grid.g4{grid-template-columns:repeat(2,1fr)}}@media (width<=900px){.app{grid-template-columns:1fr}.side{z-index:60;width:260px;transition:transform .2s;position:fixed;top:0;bottom:0;left:0;transform:translate(-100%)}.side.open{transform:none;box-shadow:8px 0 30px #00000040}.side-backdrop{z-index:55;background:#0f0f2859;display:block;position:fixed;inset:0}.menu-btn{justify-content:center;width:34px;padding:0;font-size:16px;display:inline-flex}.topbar{gap:8px;min-height:54px;padding:8px 10px}.topbar .attention{display:none}.topbar .who{flex:1;justify-content:flex-end}.content{padding:18px 16px 60px}.grid.g3{grid-template-columns:repeat(2,1fr)}}@media (width<=640px){:root{font-size:14px}input,select,textarea{font-size:16px}.hide-sm{display:none}.topbar .who select{max-width:150px}.content{padding:10px}.page{gap:12px}.page-head{flex-direction:column;align-items:stretch}.page-head>div:last-child{justify-content:flex-start}h1{font-size:20px}.card{padding:14px}.card>.tbl-wrap{margin:0 -14px}.card>.tbl-wrap:last-child{margin-bottom:-14px}.kv>div{padding:0 12px}.stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.stat{padding:10px}.stat-value{font-size:17px}.grid.g2,.grid.g3,.grid.g4{grid-template-columns:1fr}.field.span2{grid-column:auto}.drawer,.drawer.wide{width:100vw}.drawer-body{padding:12px}.drawer-foot{background:#fff;position:sticky;bottom:0}.drawer-foot .btn{flex:1;justify-content:center}.modal{border-radius:0;width:100vw;height:100dvh;max-height:100dvh}.popover{max-height:70dvh;position:fixed;inset:auto 8px 8px;width:auto!important}.tabs .tab{padding:8px 10px}.tabs.sub{width:100%;overflow-x:auto}.hbars{grid-template-columns:minmax(0,96px) minmax(0,1fr) auto;gap:8px 10px;font-size:12px}.bars{gap:4px;height:140px}.bar-val,.bar-label{text-align:center;overflow-wrap:anywhere;font-size:10px;line-height:1.2}table input,table select{height:36px;font-size:16px}.topbar .who{gap:6px;min-width:0}.topbar .who select{flex:auto;min-width:0}.tbl th,.tbl td{padding:7px 6px}.inline-create>*{flex:100%}.toasts{left:10px;right:10px;transform:none}.doc{padding:14px}.doc-head{flex-direction:column;gap:8px}.doc-head>div:last-child{text-align:left!important}}@media (width<=420px){.topbar{gap:6px;padding:8px}.topbar .who select{max-width:110px}.topbar .btn{padding:0 9px}.stats{gap:6px}.stat-value{font-size:15px}}@media screen and (width<=640px){.doc{overflow-x:auto}.doc table{min-width:560px}.print-bar{z-index:5;background:#eef0f4;position:sticky;top:0}}.btn.danger-solid{background:var(--red);border-color:var(--red);color:#fff}.btn.danger-solid:hover{color:#fff;background:#9a2834}.toast.info .toast-dot{color:#9db6f5;border-color:#9db6f5}.login{background:var(--bg);place-items:center;min-height:100vh;padding:20px;display:grid}.login-card{flex-direction:column;gap:12px;width:min(380px,100%);padding:24px;display:flex}.login-brand{align-items:center;gap:10px;margin-bottom:6px;display:flex}.login-brand small{color:var(--muted);margin-top:1px;font-size:12px;display:block}.login-main{justify-content:center;width:100%;height:40px}.login-code{letter-spacing:.3em;font-variant-numeric:tabular-nums;font-size:20px}.login-links{flex-wrap:wrap;justify-content:space-between;gap:12px;display:flex}.linkish{color:var(--accent);cursor:pointer;background:0 0;border:0;padding:0;font-size:13px}.linkish:disabled{color:var(--faint);cursor:default}.login-wait{color:var(--muted);text-align:center;flex-direction:column;align-items:center;gap:12px;max-width:360px;font-size:14px;display:flex}.sync-pill{z-index:210;background:var(--text);color:#fff;border-radius:999px;padding:6px 14px;font-size:12.5px;font-weight:500;position:fixed;top:12px;left:50%;transform:translate(-50%);box-shadow:0 6px 18px #1c1b2233}.sync-pill.offline{background:var(--amber-bg);color:var(--amber);border:1px solid #f0dcb1}.qt-reply{text-align:left;border:1px solid #0000;border-radius:8px;margin-top:6px;padding:7px 10px;font-size:12.5px;line-height:1.45}.qt-reply.good{color:var(--green);background:#eef7f1;border-color:#cde6d6}.qt-reply.warn{color:var(--amber);background:#fdf6e8;border-color:#f0dcb1}.qt-reply.bad{color:var(--red);background:#fdf1f2;border-color:#f3cfd4}.qt-reply-note{color:var(--text);white-space:pre-wrap;margin-top:2px}.qt-reply.compact{max-width:260px;padding:4px 8px}.qt-reply.compact .qt-reply-note{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.fu-group-head{border-bottom:1px solid var(--line-2);background:var(--head-bg);border-radius:12px 12px 0 0;align-items:center;gap:10px;padding:12px 16px;display:flex}.fu-row{border-bottom:1px solid var(--line-3);align-items:center;gap:14px;padding:12px 16px;display:flex}.fu-row:last-child{border-bottom:0}.fu-main{flex-direction:column;flex:1;gap:3px;min-width:0;display:flex}.fu-main .cell-strong{color:var(--text);font-weight:600}.fu-todo{font-size:13.5px}.fu-row .sub-line{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.fu-act{flex:none;gap:6px;display:flex}.pipeline{flex-wrap:wrap;align-items:stretch;gap:6px;display:flex}.pipe-step{border:1px solid var(--line);min-width:0;font:inherit;color:var(--text);cursor:pointer;text-align:left;background:#fff;border-radius:10px;flex-direction:column;flex:110px;align-items:flex-start;gap:1px;padding:9px 12px 9px 14px;display:flex;position:relative}.pipe-step:hover{border-color:#cfcdd8}.pipe-step.on{border-color:var(--accent);background:var(--accent-2);box-shadow:0 0 0 2px var(--ring)}.pipe-step.all{flex:none}.pipe-n{font-variant-numeric:tabular-nums;font-size:18px;font-weight:600;line-height:1.2}.pipe-label{font-size:12.5px;font-weight:600}.pipe-help{color:var(--faint);white-space:nowrap;text-overflow:ellipsis;max-width:100%;font-size:11.5px;overflow:hidden}.pipe-step:not(.all)+.pipe-step:before{content:"›";color:var(--faint);font-size:14px;position:absolute;top:50%;left:-9px;transform:translateY(-50%)}.pipe-side{flex-wrap:wrap;align-items:center;gap:6px;margin-left:6px;display:flex}.lead-facts{flex-wrap:wrap;gap:6px 22px;font-size:13.5px;display:flex}.lead-facts>span{overflow-wrap:anywhere;gap:6px;min-width:0;display:inline-flex}.stage-card{flex-direction:column;gap:12px;display:flex}.stepper{counter-reset:none;grid-template-columns:repeat(5,minmax(0,1fr));gap:0;margin:0;padding:0;list-style:none;display:grid}.stepper li{min-width:0;position:relative}.stepper li+li:before{content:"";background:var(--line);height:2px;position:absolute;top:15px;left:calc(18px - 50%);right:calc(50% + 18px)}.stepper li.step-done:before,.stepper li.step-current:before{background:var(--accent)}.stage-step{width:100%;font:inherit;color:var(--text);cursor:pointer;text-align:center;background:0 0;border:0;flex-direction:column;align-items:center;gap:4px;padding:0 4px;display:flex}.stage-dot{border:2px solid var(--line);width:30px;height:30px;color:var(--faint);background:#fff;border-radius:50%;place-items:center;font-size:12.5px;font-weight:600;display:grid}.step-done .stage-dot{background:var(--accent);border-color:var(--accent);color:#fff}.step-current .stage-dot{border-color:var(--accent);color:var(--accent);box-shadow:0 0 0 4px var(--ring)}.stage-name{font-size:13px;font-weight:600}.step-todo .stage-name{color:var(--muted);font-weight:500}.step-current .stage-name{color:var(--accent)}.stage-help{color:var(--faint);font-size:11.5px;line-height:1.35}.stage-step:hover .stage-dot{border-color:var(--accent)}.stepper.parked{opacity:.55}.stage-side{border-top:1px solid var(--line-3);flex-wrap:wrap;align-items:center;gap:8px;padding-top:12px;display:flex}.stage-side .alert{flex:1}.next-fu{border-left:3px solid var(--accent)}.next-fu.overdue{border-left-color:var(--red)}.next-fu-body{flex-direction:column;gap:4px;font-size:14px;display:flex}.next-fu-date{flex-wrap:wrap;align-items:center;gap:8px;font-size:15px;font-weight:600;display:flex}.qt-list{flex-direction:column;display:flex}.qt-item{border-top:1px solid var(--line-3);flex-direction:column;gap:6px;padding:12px 0;display:flex}.qt-item:first-child{border-top:0;padding-top:0}.qt-item:last-child{padding-bottom:0}.qt-item-top{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.qt-item-top .cell-strong{color:var(--text);font-weight:600}.qt-item.older .qt-item-top b{color:var(--muted);font-weight:500}.qt-item .qt-reply{margin-top:0}.timeline{flex-direction:column;gap:14px;margin:0;padding:0;list-style:none;display:flex}.timeline li{gap:10px;display:flex;position:relative}.timeline li:not(:last-child):after{content:"";background:var(--line);width:1px;position:absolute;top:28px;bottom:-12px;left:12px}.tl-dot{background:var(--grey-bg);width:25px;height:25px;color:var(--grey);border-radius:50%;flex:none;place-items:center;font-size:11px;font-weight:700;display:grid}.tl-call .tl-dot,.tl-meeting .tl-dot,.tl-site-visit .tl-dot{background:var(--blue-bg);color:var(--blue)}.tl-whatsapp .tl-dot{color:#1b964c;background:#e5f6ec}.tl-quotation .tl-dot{background:var(--accent-2);color:var(--accent)}.tl-client-reply .tl-dot{background:var(--amber-bg);color:var(--amber)}.tl-stage .tl-dot{background:var(--green-bg);color:var(--green)}.tl-meta{color:var(--faint);font-size:12px}.tl-meta b{color:var(--text-2);font-weight:600}.tl-text{overflow-wrap:anywhere;font-size:13.5px;line-height:1.45}.cq-sec{color:var(--muted);text-transform:uppercase;letter-spacing:.03em;font-size:13px;font-weight:600}.cq-line{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.cq-line .num{white-space:nowrap}.cq-totals{gap:0}.cq-totals .quote-total{border-top:1px solid var(--line-2);margin-top:4px;padding-top:10px;font-size:16px}.cq-terms{white-space:pre-wrap;line-height:1.5}.cq-choices{flex-direction:column;gap:8px;display:flex}.cq-choice{justify-content:center;height:44px;font-size:14.5px}.cq-choice.on{box-shadow:0 0 0 3px var(--ring);border-color:var(--accent)}.cq-choice.quiet{border-color:var(--input);color:var(--red)}.cq-note{background:var(--head-bg);white-space:pre-wrap;border-radius:8px;padding:8px 10px;font-size:14px}.cq-answer{gap:6px}.cq-answer.changes-asked .tick{background:var(--amber-bg);color:var(--amber)}.cq-answer.rejected .tick{background:var(--red-bg);color:var(--red)}@media (width<=900px){.stage-help,.pipe-help{display:none}}@media (width<=640px){.fu-row{flex-direction:column;align-items:stretch;gap:8px}.fu-row .sub-line{white-space:normal}.fu-act .btn{flex:1;justify-content:center;height:36px}.pipe-step{flex:calc(33% - 6px);padding:7px 10px}.pipe-step:before{display:none}.pipe-side{margin-left:0}.stepper li+li:before{top:12px;left:calc(14px - 50%);right:calc(50% + 14px)}.stage-dot{width:24px;height:24px;font-size:11px}.stage-name{font-size:11.5px}.stage-side .btn{flex:1;justify-content:center}.qt-item-act .btn{flex:auto;justify-content:center;height:36px}.lead-facts{flex-direction:column;gap:4px}}.cq-updated{color:var(--text-2);background:#eef3fd;border-radius:8px;margin-bottom:12px;padding:10px 12px;font-size:13.5px;line-height:1.5}.cq-updated b{color:var(--blue)}.cq-quote{color:var(--text)}.dash-replies{flex-direction:column;display:flex}.dash-reply{border-top:1px solid var(--line);color:inherit;grid-template-columns:minmax(0,1fr) minmax(0,1.4fr) auto;align-items:center;gap:12px;padding:12px 18px;text-decoration:none;display:grid}.dash-reply:hover{background:var(--hover,#00000005)}.dash-reply-who{overflow-wrap:anywhere;min-width:0}@media (width<=720px){.dash-reply{grid-template-columns:1fr;gap:6px}.dash-reply .btn{justify-self:start}}.menu{border:1px solid var(--line);z-index:30;text-align:left;background:#fff;border-radius:10px;width:210px;padding:5px;position:absolute;top:40px;right:0;box-shadow:0 12px 32px #1c1b2224}.menu.up{top:auto;bottom:38px}.menu{max-width:calc(100vw - 20px)}.menu-item{text-align:left;width:100%;font:inherit;color:var(--text);cursor:pointer;background:0 0;border:0;border-radius:7px;padding:8px 10px;font-size:13px;display:block}.menu-item:hover{background:var(--bg);color:var(--text);text-decoration:none}.menu-sep{background:var(--line-2);height:1px;margin:4px 0}.card-foot{border-top:1px solid var(--line-2);flex-wrap:wrap;align-items:center;gap:8px;padding:12px 18px;display:flex}.card-pad{margin:0 18px 18px}.empty-title{color:var(--text);font-size:15px;font-weight:600}.empty-text{color:var(--muted);max-width:440px;margin:6px auto 0;font-size:13px;line-height:1.5}.doc-bar{z-index:10;-webkit-backdrop-filter:blur(6px);background:#f6f6f4f0;flex-wrap:wrap;align-items:center;gap:8px;margin:-10px 0;padding:10px 0;display:flex;position:sticky;top:58px}.doc-bar>a:first-child{align-items:center;min-height:36px;font-size:13px;font-weight:500;display:inline-flex}.doc-bar-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.unsaved{background:var(--amber-bg);color:var(--amber);border-radius:999px;align-items:center;gap:6px;padding:4px 10px;font-size:12px;font-weight:600;display:inline-flex}.unsaved:before{content:"";background:#d48a1c;border-radius:50%;width:6px;height:6px}.doc-head-grid{grid-template-columns:2fr 1fr 1fr;gap:14px;display:grid}.doc-head-grid input[readonly]{border-color:var(--line-2);color:var(--muted);background:var(--head-bg)}.doc-meta{color:var(--muted);flex-wrap:wrap;align-items:center;gap:8px;margin-top:12px;font-size:13px;display:flex}.doc-meta b{color:var(--text);font-weight:500}.sec-head{flex-direction:column;gap:10px;padding:14px 18px;display:flex}.sec-head-top{justify-content:space-between;align-items:center;gap:12px;display:flex}.sec-name{background:0 0;border-color:#0000;border-radius:7px;flex:1;min-width:0;max-width:360px;height:auto;margin-left:-8px;padding:5px 8px;font-size:15px;font-weight:600}.sec-name:hover{border-color:var(--input)}.sec-name:focus{background:#fff}.sec-total{color:var(--muted);white-space:nowrap;font-size:12.5px}.sec-total b{color:var(--text);font-variant-numeric:tabular-nums;font-weight:600}.sec-tools{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.sec-tools select{border-radius:7px;max-width:220px;height:28px;padding:0 8px;font-size:12.5px}.sec-tools .btn{height:28px}.btn.quiet{color:var(--faint);background:0 0;border-color:#0000}.btn.quiet:hover{color:var(--red);background:#fdf1f2}.empty.in-card{margin:0 18px 18px;padding:24px 20px}.empty.in-card .empty-title{font-size:13.5px}.empty.in-card .empty-text{margin-top:4px;font-size:12.5px}.tbl.items input[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.tbl.items input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.tbl.items input[type=number]{appearance:textfield}.tbl.items input,.tbl.items select{border-radius:8px;height:38px;font-size:14px}.tbl.items th{padding:10px}.tbl.items th:first-child{padding-left:18px}.tbl.items th:last-child{padding-right:18px}.tbl.items td{vertical-align:top;padding:14px 10px}.tbl.items td:first-child{min-width:280px;padding-left:18px;padding-right:12px}.tbl.items td:last-child{padding-right:18px}.tbl.items td.num{line-height:38px}.tbl.items td.num input{text-align:right}.tbl.items .item-name{width:100%;font-weight:500}.tbl.items .item-desc{width:100%;color:var(--muted);background:0 0;border-color:#0000;border-radius:6px;margin-top:6px;font-size:12px;height:30px!important}.tbl.items .item-desc:hover{border-color:var(--input)}.tbl.items .item-desc:focus{background:#fff}.measure{align-items:center;gap:4px;display:flex}.measure input{text-align:center;width:56px;padding:0 6px}.btn.measure-add{height:38px;color:var(--accent);border-style:dashed;border-color:#d6d5dc;padding:0 10px;font-size:12.5px}.btn.measure-add:hover{color:var(--accent);background:#f6f5fe}.icon-x{width:26px;height:26px;color:var(--faint);cursor:pointer;background:0 0;border:0;border-radius:6px;font-size:12px}.icon-x:hover{background:var(--track)}.icon-x.del{width:32px;height:38px}.icon-x.del:hover{color:var(--red);background:#fdf1f2}.qty-measured{flex-direction:column;justify-content:center;align-items:flex-end;height:38px;line-height:1.2;display:flex}.qty-measured b{font-weight:600}.qty-measured span{color:var(--faint);font-size:10.5px}.done-cell{min-width:96px}.done-cell .done-billed{color:var(--faint);margin-top:4px;font-size:11px}.done-cell .done-of{font-variant-numeric:tabular-nums;padding-top:6px;font-size:12.5px}.done-cell .progress{height:4px;margin-top:4px}.btn.add-section{color:var(--accent);border-style:dashed;border-color:#cfcdd6}.btn.add-section:hover{color:var(--accent);background:#f6f5fe}.doc-foot{grid-template-columns:repeat(auto-fit,minmax(380px,1fr));align-items:start;gap:18px;display:grid}.card.stack{flex-direction:column;gap:14px;display:flex}.sum-row{justify-content:space-between;padding:8px 0;font-size:13.5px;display:flex}.sum-row>span:first-child{color:var(--text-2)}.sum-row>span:last-child{font-variant-numeric:tabular-nums}.sum-total{border-top:1px solid var(--line);justify-content:space-between;align-items:baseline;margin-top:6px;padding:12px 0 2px;font-weight:600;display:flex}.sum-total>span:last-child{font-variant-numeric:tabular-nums;font-size:20px}.card.internal{background:var(--head-bg);border:1px dashed #d6d5dc}.card.internal .sum-row{padding:7px 0}.check-row{cursor:pointer;align-items:center;gap:8px;font-size:13px;display:flex}.import-code{white-space:normal;word-break:break-word;border-radius:8px;margin-top:6px;padding:8px 10px;display:block}textarea.mono{font-family:ui-monospace,Menlo,monospace;font-size:12.5px;line-height:1.55}.chip-btn{border:1px solid var(--input);height:30px;color:var(--text);font:inherit;cursor:pointer;background:#fff;border-radius:999px;padding:0 12px;font-size:12.5px;font-weight:500}.chip-btn .n{color:var(--faint);margin-left:2px}.chip-btn.on{border-color:var(--accent);background:var(--accent-2);color:var(--accent)}.cell-strong{font-weight:500}.lib-tabs{flex-wrap:wrap}.unit-chip{background:var(--track);border-radius:999px;align-items:center;gap:4px;padding:5px 12px;font-size:13px;display:inline-flex}.unit-chip button{color:var(--faint);cursor:pointer;background:0 0;border:0;padding:0 2px;font-size:11px}.unit-chip button:hover{color:var(--red)}.settings-grid{grid-template-columns:repeat(auto-fit,minmax(380px,1fr));align-items:start;gap:18px;display:grid}.settings-grid .card{flex-direction:column;gap:12px;display:flex}.settings-grid .card>.card-head{margin-bottom:0}.btn.save-sm{border:0;height:30px;padding:0 14px;font-size:12.5px}.btn.save-sm:disabled{background:var(--seg);color:var(--faint-2);opacity:1;cursor:default}.upload-tile{height:110px;color:var(--muted);cursor:pointer;background:repeating-linear-gradient(135deg,#fafaf9 0 8px,#f4f3f6 8px 16px);border:1px dashed #d6d5dc;border-radius:10px;place-items:center;font-family:ui-monospace,Menlo,monospace;font-size:12.5px;display:grid;position:relative;overflow:hidden}.upload-tile:hover{border-color:#c9c5f1}.upload-tile img{max-width:90%;max-height:90px}.upload-tile input{opacity:0;cursor:pointer;height:100%;position:absolute;inset:0}.user-row{border-top:1px solid var(--line-3);cursor:pointer;align-items:center;gap:12px;padding:10px 0;display:flex}.user-row:hover .user-name{color:var(--accent)}.avatar{background:var(--accent-2);width:32px;height:32px;color:var(--accent);border-radius:50%;flex:none;place-items:center;font-size:13px;font-weight:600;display:grid}.user-name{font-size:13.5px;font-weight:500}.mod-chip{background:var(--track);color:var(--muted);border-radius:999px;padding:5px 12px;font-size:12.5px}.hr{background:var(--line-3);height:1px;margin:4px 0}.drawer-foot .left{margin-right:auto}@media (width<=900px){.doc-bar{top:54px}.lib-tabs .tabs.sub{flex-wrap:wrap;row-gap:2px;width:100%;overflow:visible}.lib-tabs .tabs.sub .tab{flex:auto;justify-content:center}.tbl.items,.tbl.items tbody{width:100%;display:block}.tbl.items thead{display:none}.tbl.items tr{border-bottom:1px solid var(--line-2);grid-template-columns:repeat(4,minmax(0,1fr));grid-auto-flow:dense;gap:12px;padding:14px 18px 16px;display:grid;position:relative}.tbl.items tbody tr:last-child{border-bottom:0}.tbl.items td,.tbl.items td:first-child,.tbl.items td:last-child{text-align:left;white-space:normal;border:0;min-width:0;padding:0;line-height:normal;display:block}.tbl.items td[data-label]:before{content:attr(data-label);color:var(--muted);white-space:nowrap;margin-bottom:5px;font-size:11.5px;font-weight:500;display:block}.tbl.items td.c-item{grid-column:1/-1;padding-right:44px}.tbl.items td.c-measure{grid-column:span 2}.tbl.items td.c-done{grid-column:1/-1}.tbl.items td.c-del{position:absolute;top:12px;right:12px}.tbl.items td input,.tbl.items td select{width:100%!important}.tbl.items td.num input{text-align:left}.tbl.items td.c-sale,.tbl.items td.c-amount{font-variant-numeric:tabular-nums;line-height:38px}.tbl.items td.c-sale:before,.tbl.items td.c-amount:before{line-height:normal}.tbl.items .measure input{flex:1 1 0;min-width:0;padding:0 4px}.tbl.items .btn.measure-add{justify-content:center;width:100%}.tbl.items .measure .icon-x{flex:none;width:36px;height:38px}.tbl.items .qty-measured{align-items:flex-start}.tbl.items .icon-x.del{width:36px;height:36px}.tbl.items .done-cell .done-of{padding-top:0}.tbl.items .done-cell .progress{max-width:320px}}@media (width<=640px){.menu{width:min(210px,100vw - 20px)}.doc-bar{gap:6px 8px}.doc-bar>.spacer{display:none}.doc-bar>a:first-child{flex:auto;min-width:0}.doc-bar-actions{flex-wrap:nowrap;flex:100%;gap:6px}.doc-bar-actions>.btn,.doc-bar-actions>.menu-wrap{flex:1 1 0;min-width:0}.doc-bar-actions .btn{justify-content:center;width:100%;padding:0 8px}.doc-head-grid{grid-template-columns:1fr 1fr;gap:12px}.doc-head-grid>:first-child{grid-column:1/-1}.doc-meta>span:first-child{flex:100%}.doc-meta>.spacer{display:none}.doc-meta>select,.doc-meta>.btn{flex:auto;justify-content:center}.doc-foot,.settings-grid{grid-template-columns:1fr;gap:12px}.sec-head{padding:12px 14px}.sec-head-top{flex-wrap:wrap;gap:4px 12px}.sec-name{flex:100%;max-width:none;margin-left:-8px}.sec-tools select{flex:100%;max-width:none;height:38px}.sec-tools .btn{height:36px}.sec-tools .btn.sm:not(.quiet){flex:auto;justify-content:center}.empty.in-card{margin:0 14px 14px;padding:18px 14px}.tbl.items tr{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:12px 14px 14px}.tbl.items td.c-measure{grid-column:1/-1}.tbl.items td.c-del{top:10px;right:8px}.tbl.items td.c-amount{font-size:14px}.sum-total>span:last-child{word-break:break-word;text-align:right;font-size:18px}.sum-row{gap:12px}.sum-row>span:last-child{text-align:right}.card.flush>.card-head{padding:14px}.card-pad{margin:0 14px 14px}.card-foot{padding:10px 14px}.card-foot .btn.sm{height:36px}.card-foot .btn.sm.icon{width:36px}.tbl.boq-list,.tbl.boq-list tbody{width:100%;display:block}.tbl.boq-list thead{display:none}.tbl.boq-list tr{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px 12px;padding:14px;display:grid}.tbl.boq-list td,.tbl.boq-list td:first-child,.tbl.boq-list td:last-child{text-align:left;white-space:normal;word-break:break-word;border:0;display:block;min-width:0!important;padding:0!important}.tbl.boq-list td[data-label]:before{content:attr(data-label);color:var(--muted);margin-bottom:3px;font-size:11.5px;font-weight:500;display:block}.tbl.boq-list td:first-child{grid-area:1/1/auto/-1}.tbl.boq-list td:nth-child(3){grid-area:2/1}.tbl.boq-list td:nth-child(5){grid-area:2/2}.tbl.boq-list td:nth-child(2){grid-area:2/3}.tbl.boq-list td:nth-child(4){grid-area:3/1/auto/-1}.tbl.stack,.tbl.stack tbody{width:100%;display:block}.tbl.stack thead{display:none}.tbl.stack tr{border-bottom:1px solid var(--line-3);grid-template-columns:minmax(0,1fr) auto;gap:8px 12px;padding:12px 14px;display:grid}.tbl.stack tbody tr:last-child{border-bottom:0}.tbl.stack td,.tbl.stack td:first-child,.tbl.stack td:last-child{text-align:left;word-break:break-word;border:0;min-width:0;display:block;padding:0!important}.tbl.stack td[data-label]:before{content:attr(data-label);color:var(--muted);margin-bottom:3px;font-size:11.5px;font-weight:500;display:block}.tbl.stack tr.clickable:hover td{background:0 0}.tbl.stack tr.clickable:active{background:var(--head-bg)}.lead-tbl td:first-child{grid-area:1/1}.lead-tbl td.c-status{text-align:right;grid-area:1/2}.lead-tbl td.c-req{grid-area:2/1}.lead-tbl td.c-fu{text-align:right;grid-area:2/2}.lead-tbl td.c-qt{grid-area:3/1/auto/-1}.lead-tbl td.c-qt a{padding:4px 0;display:inline-block}.qt-tbl td:first-child{grid-area:1/1}.qt-tbl td.c-value{text-align:right;white-space:nowrap;grid-area:1/2}.qt-tbl td.c-lead{grid-area:2/1}.qt-tbl td.c-status{text-align:right;grid-area:2/2;align-self:end}.qt-tbl td.c-act{white-space:normal;grid-area:3/1/auto/-1}.qt-tbl td.c-act .row{flex-wrap:wrap;justify-content:flex-start!important}.qt-tbl td.c-act .btn.sm{flex:auto;justify-content:center;height:36px}.chip-btn{height:34px}.tbl-wrap>table.lib-tbl.wide{min-width:500px}.lib-tbl.wide th:first-child,.lib-tbl.wide td:first-child{z-index:1;max-width:150px;box-shadow:inset -1px 0 0 var(--line-2);background:#fff;position:sticky;left:0}.lib-tbl.wide th:first-child{background:var(--head-bg);z-index:2}.lib-tbl td{padding-top:10px;padding-bottom:10px}.unit-chip{padding:2px 4px 2px 12px}.unit-chip button{min-width:32px;min-height:32px}.unit-add{max-width:none!important}.unit-add input,.unit-add .btn{height:38px!important}.btn.save-sm{height:34px}.data-actions>.btn{flex:auto;justify-content:center}.user-row{padding:12px 0}}@media (width<=420px){.doc-head-grid{grid-template-columns:1fr}.doc-head-grid>:first-child{grid-column:auto}.doc-bar-actions .btn{padding:0 6px;font-size:12.5px}}@media screen and (width<=640px){.print-frame{padding-left:8px;padding-right:8px}div.doc{overflow-x:visible}div.doc table{min-width:0}div.doc .doc-scroll{-webkit-overflow-scrolling:touch;margin:0 -14px;padding:0 14px;overflow-x:auto}div.doc .doc-scroll>table{min-width:560px}div.doc>.row{flex-wrap:wrap;gap:12px!important}div.doc>.row>div{flex:100%!important}div.doc>.row>div:not(.doc-sign){text-align:left!important}.print-frame>.print-bar+.print-bar{padding-top:0;position:static}div.doc h1{word-break:break-word}}.role-picks{border:0;flex-direction:column;gap:8px;margin:0;padding:0;display:flex}.role-picks .field-label{margin-bottom:2px;padding:0}.role-picks .check-row{align-items:flex-start}.role-picks .check-row input{margin-top:2px}.audit-list{flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.audit-entry{border-top:1px solid var(--line-3);padding:9px 0;font-size:13px}.audit-entry:first-child{border-top:0}.audit-line{flex-wrap:wrap;align-items:baseline;gap:4px 6px;display:flex}.audit-who{font-weight:600}.audit-changes{border-collapse:collapse;margin-top:6px;font-size:12.5px}.audit-changes td{vertical-align:top;overflow-wrap:anywhere;padding:2px 8px 2px 0}.audit-history{border-top:1px solid var(--line-3);flex-direction:column;gap:6px;padding-top:10px;display:flex}.audit-history>.linkish{align-self:flex-start}.ch-empty{color:var(--faint);text-align:center;padding:18px 0;font-size:13px}.ch-plain{color:inherit;text-decoration:none;display:block}.ch-plain:hover .ch-step-l,.ch-plain:hover .ch-budget-l{color:var(--accent)}.ch-legend{color:var(--muted);gap:14px;margin-bottom:10px;font-size:12px;display:flex}.ch-legend span{align-items:center;gap:6px;display:inline-flex}.ch-dot{background:var(--accent);border-radius:3px;flex:none;width:9px;height:9px;display:inline-block}.ch-dot.in,.ch-bar.in{background:var(--green)}.ch-dot.out,.ch-bar.out{background:#c9c7d6}.ch-dot.material{background:var(--accent)}.ch-dot.labour{background:#e0a43a}.ch-dot.other{background:#6f9ed8}.ch-pairs{align-items:stretch;gap:10px;height:190px;display:flex}.ch-pair{flex-direction:column;flex:1;align-items:center;gap:4px;min-width:0;display:flex}.ch-pair-bars{border-bottom:1px solid var(--line);flex:1;align-items:flex-end;gap:3px;width:100%;max-width:54px;display:flex}.ch-bar{border-radius:4px 4px 0 0;flex:1;min-height:0}.ch-pair-label{color:var(--faint);font-size:11.5px}.ch-pair-net{color:var(--faint);font-variant-numeric:tabular-nums;white-space:nowrap;font-size:11px}.ch-pair-net.good{color:var(--green)}.ch-pair-net.bad{color:var(--red)}.ch-donut{align-items:center;gap:22px;display:flex}.ch-donut svg{flex:none;width:150px;height:150px}.ch-ring{fill:none;stroke:var(--track);stroke-width:16px}.ch-seg{fill:none;stroke-width:16px;stroke:var(--accent)}.ch-seg.labour{stroke:#e0a43a}.ch-seg.other{stroke:#6f9ed8}.ch-donut-k{fill:var(--faint);font-size:10px}.ch-donut-v{fill:var(--text);font-size:14px;font-weight:600}.ch-keys{flex-direction:column;flex:1;gap:4px;min-width:0;display:flex}.ch-key{color:inherit;border-radius:8px;grid-template-columns:auto minmax(0,1fr) auto 40px;align-items:center;gap:8px;padding:6px 8px;font-size:13px;text-decoration:none;display:grid}a.ch-key:hover{background:var(--line-3)}.ch-key .small{text-align:right}.ch-key-l{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.ch-funnel{grid-template-columns:minmax(0,92px) minmax(0,1fr) 28px;align-items:center;gap:9px 10px;font-size:13px;display:grid}.ch-step{display:contents}.ch-step-l{color:var(--text-2)}.ch-step-track{background:var(--line-3);border-radius:6px;height:22px;overflow:hidden}.ch-step-fill{background:var(--accent);border-radius:6px;height:100%}.ch-step-fill.f0{background:#c9c6f2}.ch-step-fill.f1{background:#a29dea}.ch-step-fill.f2{background:#7a73dc}.ch-step-fill.f3{background:var(--accent)}.ch-step-fill.f4{background:var(--green)}.ch-step-n{text-align:right;font-variant-numeric:tabular-nums}.ch-step-h{grid-column:2/-1;margin-top:-6px}.ch-budget{flex-direction:column;gap:6px;display:flex}.ch-budget-row{border-top:1px solid var(--line-2);padding:8px 0}.ch-budget-row:first-child{border-top:0;padding-top:0}.ch-budget-top{justify-content:space-between;gap:10px;margin-bottom:6px;font-size:13px;display:flex}.ch-budget-l{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-weight:500;overflow:hidden}.ch-budget-top>.small{white-space:nowrap;font-variant-numeric:tabular-nums}.ch-budget-track{height:10px;margin-bottom:4px;position:relative}.ch-budget-value{background:var(--track);border-radius:999px;position:absolute;inset:0 auto 0 0}.ch-budget-spent{background:var(--accent);border-radius:999px;position:absolute;inset:0 auto 0 0}.ch-budget-spent.over{background:var(--red)}.dash-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.dash-grid>.card{min-width:0;margin:0}.dash-card-sub{color:var(--faint);font-size:12px}.dash-kpi-link{color:inherit;text-decoration:none;display:block}.dash-kpi-link>.stat{height:100%}.dash-kpi-link:hover .stat{border-color:var(--ring)}.dash-due .tbl td{padding-top:8px;padding-bottom:8px}@media (width<=900px){.dash-grid{grid-template-columns:minmax(0,1fr)}}@media (width<=520px){.ch-donut{flex-direction:column;align-items:stretch}.ch-donut svg{align-self:center;width:132px;height:132px}.ch-pairs{gap:4px;height:160px}.ch-pair-net{font-size:9.5px}.ch-funnel{grid-template-columns:minmax(0,80px) minmax(0,1fr) 24px}}.card.flush{padding:0}.card.flush>.card-head{margin-bottom:0;padding:16px 18px 12px}.card.flush>.card-head.tight{padding:14px 18px}.card.flush>.tbl-wrap .tbl{font-size:13px}.cells{background:var(--line-2);gap:1px;display:grid}.cells.c2{grid-template-columns:repeat(2,minmax(0,1fr))}.cells.c3{grid-template-columns:repeat(3,minmax(0,1fr))}.cells.boxed{border:1px solid var(--line-2);border-radius:10px;overflow:hidden}.cells.band{border-top:1px solid var(--line-2);border-bottom:1px solid var(--line-2)}.cells.band>div{padding:12px 18px}.cell-label{color:var(--muted);font-size:12px}.cell-value{margin-top:3px;font-weight:500}.cell-value.big{font-variant-numeric:tabular-nums;margin-top:4px;font-size:20px;font-weight:600}.cell-value.mid{font-variant-numeric:tabular-nums;margin-top:4px;font-size:18px;font-weight:600}.cell-hint{color:var(--faint);margin-top:2px;font-size:12px}.attention-list{flex-direction:column;padding:4px 8px 10px;display:flex}.card.flush>.card-head+.attention-list{margin-top:-6px}.stat-count{letter-spacing:-.01em;font-variant-numeric:tabular-nums;margin-top:6px;font-size:24px;font-weight:600}.proj-head{padding:18px 20px 0}.proj-head h1{margin-top:4px;font-size:22px}.proj-head .kv{margin-top:14px}.proj-head .tabs{border-bottom:0;margin-top:16px}.proj-head .status-badge-wrap .badge{padding:3px 10px;font-size:12px}.proj-head select{height:34px;font-size:13px}.alert.info.strong{color:var(--blue);font-size:13.5px;font-weight:600}.alert.info.strong:before{width:20px;height:20px;font-size:12px}.alert>.btn.primary{background:var(--accent);border-color:var(--accent);color:#fff}.mom-box{border:1px solid var(--line-2);border-radius:10px;padding:12px 14px}.mom-box+.mom-box{margin-top:8px}.mom-box p{color:var(--text-2);margin:4px 0 0;font-size:13px;line-height:1.5}.team-chip{background:var(--track);border-radius:999px;align-items:center;gap:6px;padding:5px 12px;font-size:12.5px;display:inline-flex}.btn.on{border-color:var(--accent);background:var(--accent-2);color:var(--accent)}.history{border:1px solid var(--line-2);border-radius:10px;overflow:hidden}.history>div{border-bottom:1px solid #f4f3f6;grid-template-columns:70px 1fr auto;gap:10px;padding:9px 12px;font-size:12.5px;display:grid}.history>div:last-child{border-bottom:0}.history .empty-line{color:var(--faint);display:block}.gantt-card{-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain;--gantt-label:220px;--gantt-gap:12px;--gantt-min:720px;--gantt-pad:18px;max-width:100%;overflow-x:auto}.gantt-inner{position:relative}.gantt-row{grid-template-columns:var(--gantt-label) minmax(0, 1fr);gap:var(--gantt-gap);border-bottom:1px solid #f4f3f6;align-items:center;padding:9px 0;display:grid}.gantt-row.head{border-bottom:1px solid var(--line-2);color:var(--muted);align-items:end;padding:0 0 8px;font-size:12px;font-weight:500}.gantt-name{text-overflow:ellipsis;white-space:nowrap;z-index:2;box-shadow:calc(-1 * var(--gantt-pad)) 0 0 #fff;background:#fff;font-size:13px;position:sticky;left:0;overflow:hidden}.gantt-row.head .gantt-name{font-size:12px}.gantt-track{height:22px;position:relative}.gantt-weeks{height:16px;position:relative}.gantt-weeks span{color:var(--faint);white-space:nowrap;font-size:11.5px;position:absolute}.gantt-bar{background:#dcdaf6;border-radius:5px;height:16px;position:absolute;top:3px;overflow:hidden}.gantt-bar.late{background:#f6d4d9}.gantt-bar>div{background:var(--accent);height:100%}.gantt-bar.done>div{background:var(--green)}.gantt-today{background:var(--red);opacity:.6;z-index:1;pointer-events:none;width:2px;position:absolute;top:0;bottom:0}.gantt-legend{color:var(--muted);flex-wrap:wrap;gap:16px;margin-top:12px;font-size:12px;display:flex}.gantt-legend span{align-items:center;gap:6px;display:inline-flex}.gantt-legend i{border-radius:3px;width:12px;height:8px;display:inline-block}.mom-card{flex-direction:column;gap:14px;display:flex}.mom-card h3{font-size:15px}.mom-cols{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px;display:grid}.mom-cols .kv-label{display:block}.mom-cols .txt{margin-top:4px;font-size:13.5px;line-height:1.5}.more-grid{grid-template-columns:repeat(auto-fit,minmax(380px,1fr));align-items:start;gap:18px;display:grid}.more-grid .card{flex-direction:column;gap:12px;display:flex}.more-grid input,.more-grid select{height:34px;font-size:13.5px}.todo-row{border-top:1px solid var(--line-3);cursor:pointer;align-items:center;gap:10px;padding:10px 2px;display:flex}.todo-row input{width:16px;height:16px}.todo-row .t{flex:1;font-size:13.5px}.todo-row.done .t{color:var(--faint);text-decoration:line-through}.att-form{grid-template-columns:minmax(0,1.4fr) 80px 100px auto;align-items:end;gap:6px;display:grid}.pj-todo-form>input{flex:1;min-width:160px}.att-form .field-label{font-size:11.5px;font-weight:400}.att-day{border-top:1px solid var(--line-3);padding:10px 2px}.att-day .h{justify-content:space-between;font-size:13px;font-weight:600;display:flex}.att-day .r{color:var(--muted);justify-content:space-between;gap:10px;margin-top:4px;font-size:12.5px;display:flex}.att-day .r>span:last-child{flex:none}.new-client{border:1px solid var(--line);background:#fafaf9;border-radius:10px;flex-direction:column;gap:10px;padding:12px;display:flex}.welcome{flex-direction:column;gap:10px;padding:22px 24px;display:flex}.welcome p{max-width:620px;margin:0;font-size:13.5px;line-height:1.55}.welcome .row{margin-top:4px}.stats.pj-stats-status{grid-template-columns:repeat(auto-fit,minmax(170px,1fr))}.stats.pj-stats-fin{grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}.pj-filter{height:34px;font-size:13px}.pj-mom-grid{grid-template-columns:150px minmax(0,1fr);gap:12px}.cell-value,.kv-value,.mom-cols .txt,.mom-box p,.todo-row .t,.proj-head h1,.pj-mom-head>div:first-child h3{overflow-wrap:anywhere}.proj-head .tabs{overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch}.proj-head .tabs .tab{flex:none}.tbl-wrap>table.tbl.pj-projects-tbl{min-width:760px}.tbl-wrap>table.tbl.pj-list-tbl{min-width:620px}.tbl-wrap>table.tbl.pj-task-tbl{min-width:860px}@media (width<=900px){.proj-head{padding:16px 16px 0}.card.flush>.card-head{padding:14px 16px 10px}.cells.band>div{padding:12px 16px}}@media (width<=640px){.cells.c3,.cells.c4{grid-template-columns:repeat(2,minmax(0,1fr))}.cells.c3>div:nth-child(3):last-child{grid-column:1/-1}.cells.band>div{padding:10px 14px}.cell-value.mid{font-size:16px}.cell-value.big{font-size:18px}.stats.pj-stats-status,.stats.pj-stats-fin{grid-template-columns:repeat(2,minmax(0,1fr))}.stats.pj-stats-3>:last-child:nth-child(odd){grid-column:1/-1}.stat-count{font-size:20px}.welcome{padding:16px 14px}.card.flush>.card-head,.card.flush>.card-head.tight{padding:12px 14px}.card.flush>.empty{margin:0 14px 14px}.alert.pj-alert{flex-wrap:wrap}.alert.pj-alert>.btn{flex:100%;justify-content:center;height:36px;margin-left:0}.proj-head{padding:14px 14px 0}.proj-head h1{font-size:19px}.pj-head-row{gap:12px!important}.pj-head-main{flex:100%}.proj-head .kv.pj-kv{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-flow:dense;gap:10px 12px;margin-top:12px;display:grid}.proj-head .kv.pj-kv>div{border-left:0;min-width:0;padding:0}.proj-head .kv.pj-kv>.pj-kv-site{grid-column:1/-1}.pj-head-status{flex-wrap:nowrap;flex:100%}.pj-head-status select{flex:1;min-width:0;height:38px;font-size:16px}.proj-head .tabs{scrollbar-width:none;margin:12px -14px 0;padding:0 6px}.proj-head .tabs::-webkit-scrollbar{display:none}.proj-head .tabs .tab{min-height:40px}.pj-toolbar>.tabs.sub{width:auto}.pj-filters{flex-wrap:wrap}.pj-filter{flex:140px;height:38px;font-size:16px}.tbl-wrap>table.tbl.pj-stack{width:100%;min-width:0}.tbl.pj-stack,.tbl.pj-stack tbody{width:100%;display:block}.tbl.pj-stack thead{display:none}.tbl.pj-stack tr{border-bottom:1px solid var(--line-3);grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 14px;padding:12px 14px;display:grid}.tbl.pj-stack tbody tr:last-child{border-bottom:0}.tbl.pj-stack tr.clickable:hover td{background:0 0}.tbl.pj-stack tr.clickable:active{background:var(--head-bg)}.tbl.pj-stack td{white-space:normal;text-align:left;overflow-wrap:anywhere;border:0;display:block;min-width:0!important;padding:0!important}.tbl.pj-stack td.pj-main,.tbl.pj-stack td.pj-actions{grid-column:1/-1}.tbl.pj-stack td[data-label]:before{content:attr(data-label);letter-spacing:.05em;text-transform:uppercase;color:var(--faint-2);margin-bottom:4px;font-size:11px;font-weight:500;display:block}.tbl.pj-stack td.pj-actions .row{justify-content:flex-start!important}.tbl.pj-stack td.pj-actions .btn{flex:1;justify-content:center;height:36px}.gantt-card{--gantt-label:120px;--gantt-gap:8px;--gantt-min:560px;--gantt-pad:14px}.gantt-name{font-size:12.5px}.pj-check{min-height:34px}.pj-mom-head{flex-wrap:wrap}.pj-mom-head>div:first-child{flex:180px}.pj-mom-grid,.more-grid{grid-template-columns:1fr}.more-grid input:not([type=checkbox]),.more-grid select{height:38px;font-size:16px}.pj-todo-form>input{flex:100%;min-width:0}.pj-todo-form>select,.pj-todo-form>.btn{flex:1;justify-content:center}.att-form{grid-template-columns:1fr 1fr}.att-form>.field:first-child,.att-form>.btn{grid-column:1/-1}.att-form>.btn{justify-content:center}}@media (width<=420px){.pj-toolbar>.tabs.sub{width:100%}.pj-toolbar>.tabs.sub .tab{flex:1;justify-content:center}.pj-toolbar>.spacer{display:none}.pj-toolbar>.btn{flex:1;justify-content:center}}.tbl tr.group td{background:var(--bg);letter-spacing:.04em;text-transform:uppercase;color:var(--muted);padding:8px 18px;font-size:11.5px;font-weight:600}.tbl .sub-line{color:var(--faint);margin-top:2px;font-size:12px}.tbl td.faint-dash{color:#c4c3ca}.tbl td.best{color:var(--green);font-weight:600}.card.flush{padding:0;overflow:hidden}.card.flush>.tbl-wrap{margin:0}.card.flush>.tbl-wrap:last-child{margin-bottom:0}.card.flush>.tbl-wrap .tbl tr:first-child th{border-top:0}.card.flush>.card-head{margin:0;padding:16px 18px 12px}.card.flush>.card-head+.tbl-wrap .tbl tr:first-child th{border-top:1px solid var(--line-2)}.card.flush>.empty{margin:0 18px 18px}.card-bar{flex-wrap:wrap;align-items:center;gap:10px;padding:14px 18px;display:flex}.card-bar label{cursor:pointer;align-items:center;gap:8px;font-size:13.5px;font-weight:600;display:flex}.menu-wrap{position:relative}.menu{border:1px solid var(--line);z-index:30;background:#fff;border-radius:10px;width:210px;padding:5px;position:absolute;top:40px;right:0;box-shadow:0 12px 32px #1c1b2224}.menu button{text-align:left;width:100%;font:inherit;cursor:pointer;color:var(--text);background:0 0;border:0;border-radius:7px;padding:8px 10px;font-size:13px}.menu button:hover{background:var(--bg)}.empty-ok{text-align:center;background:#fff;border:1px dashed #dcdbe1;border-radius:12px;padding:40px 20px}.empty-ok .tick{width:36px;height:36px;color:var(--green);background:#eef7f1;border-radius:50%;place-items:center;margin:0 auto;font-weight:700;display:grid}.empty-ok .t{margin-top:10px;font-size:14px;font-weight:600}.empty-ok .d{color:var(--muted);max-width:440px;margin:4px auto 0;font-size:13px;line-height:1.5}.empty-ok .btn{margin-top:12px}.req-line{background:var(--head-bg);border:1px solid #ebeaee;border-radius:10px;flex-direction:column;gap:8px;padding:12px;display:flex}.req-line.bad{background:#fdf1f2;border-color:#f3cfd4}.req-line-head{color:var(--muted);justify-content:space-between;align-items:center;font-size:12px;font-weight:600;display:flex}.link-btn{color:var(--faint);font:inherit;cursor:pointer;background:0 0;border:0;padding:0;font-size:12.5px}.link-btn:hover{color:var(--text)}.btn.dashed{color:var(--accent);border-style:dashed;border-color:#cfcdd6;align-self:flex-start}.mini-stats{background:var(--line-2);border:1px solid var(--line-2);border-radius:10px;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;display:grid;overflow:hidden}.mini-stats>div{background:#fff;padding:12px 14px}.mini-stats .l{color:var(--muted);font-size:12px}.mini-stats .v{font-variant-numeric:tabular-nums;margin-top:3px;font-weight:600}@media (width<=640px){.mini-stats{grid-template-columns:repeat(2,minmax(0,1fr))}}.box{border:1px solid var(--line-2);border-radius:10px;overflow:hidden}.box .tbl th:first-child,.box .tbl td:first-child{padding-left:12px}.box .tbl th:last-child,.box .tbl td:last-child{padding-right:12px}.box .tbl tr:first-child th{border-top:0}.drawer-body .box .tbl-wrap{border:0;border-radius:0}.sec-title{margin-bottom:8px;font-size:13px;font-weight:600}.list-rows>div{border-bottom:1px solid #f4f3f6;justify-content:space-between;gap:12px;padding:8px 0;font-size:13px;display:flex}.list-rows>div b{font-weight:500}.list-rows>.clickable{cursor:pointer;border-radius:6px;margin:0 -6px;padding-left:6px;padding-right:6px}.list-rows>.clickable:hover{background:var(--head-bg)}.list-rows>.clickable:focus-visible{outline:2px solid var(--accent,#5b5bd6);outline-offset:-2px}.pick-row{cursor:pointer;border-top:1px solid #f4f3f6;align-items:center;gap:10px;padding:11px 12px;display:flex}.pick-row:first-child{border-top:0}.pick-row.off{opacity:.5;cursor:default}.pick-row .grow{flex:1;min-width:0}.pick-row .name{font-size:13.5px}.pick-row .meta{color:var(--faint);font-size:12px}.pick-row input[type=checkbox]{width:16px;height:16px}.party-cols{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;display:grid}.party-cols .kv-value{margin-top:3px}@media (width<=640px){.party-cols{grid-template-columns:1fr}}.bill-row{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.bill-row .grow{flex:1;min-width:200px}.drawer.wide:has(.w720){width:min(720px,100vw)}.drawer.wide:has(.w640){width:min(640px,100vw)}@media (width<=900px){.tbl.pin1 thead th:first-child,.tbl.pin1 tbody tr:not(.group) td:first-child{z-index:1;box-shadow:1px 0 0 var(--line-2);background:#fff;position:sticky;left:0}.tbl.pin1 thead th:first-child{background:var(--head-bg);z-index:2}.tbl.pin1 tr.clickable:hover td:first-child{background:var(--head-bg)}.tbl.rate-card td:first-child{min-width:140px}}@media (width<=640px){.tbl-wrap>.tbl.mw480{min-width:480px}.tbl-wrap>.tbl.mw520{min-width:520px}.tbl-wrap>.tbl.mw640{min-width:640px}.tbl.pin1 tbody tr:not(.group) td:first-child{min-width:120px;max-width:170px}.tbl.m-cards{min-width:0;display:block}.tbl.m-cards thead{display:none}.tbl.m-cards tbody,.tbl.m-cards tfoot{display:block}.tbl.m-cards tr{border-bottom:1px solid var(--line-3);flex-wrap:wrap;align-items:center;gap:4px 12px;padding:11px 14px;display:flex}.tbl.m-cards tbody tr:last-child{border-bottom:0}.tbl.m-cards tr>td:nth-child(n){text-align:left;white-space:normal;border:0;min-width:0;padding:0;display:block}.tbl.m-cards tr>td:empty{display:none}.tbl.m-cards td[data-l]:before{content:attr(data-l) ": ";color:var(--faint);font-size:12px;font-weight:400}.tbl.m-cards tr.group{background:var(--bg);padding:7px 14px;display:block}.tbl.m-cards tr.group>td:nth-child(n),.tbl.m-cards tr.clickable:hover td{background:0 0}.tbl.m-cards tr.clickable:hover{background:var(--head-bg)}.tbl.m-cards:is(.mat-recent,.pr-pos,.po-grn,.wh-inv) tbody tr:not(.group):after{content:"";flex-basis:100%;order:0;margin-top:-4px}.box .tbl.m-cards tr,.drawer-body .tbl.m-cards tr{padding:10px 12px}.tbl.m-cards .btn.sm{height:36px;padding:0 12px}.tbl.m-cards.mat-req tr>td:nth-child(2){flex:100%;order:-1;font-weight:500}.tbl.m-cards.mat-req tr>td:first-child{flex:auto}.tbl.m-cards.mat-req tr>td:nth-child(5){margin-left:auto}.tbl.m-cards.mat-recv tr>td:first-child{flex:auto}.tbl.m-cards.mat-recv tr>td:nth-child(2),.tbl.m-cards.mat-recv tr>td:nth-child(3){flex:100%;order:1}.tbl.m-cards.mat-recv tr>td:nth-child(4),.tbl.m-cards.mat-recv tr>td:nth-child(6){order:1}.tbl.m-cards.mat-recv tr>td:nth-child(6){margin-left:auto}.tbl.m-cards.mat-recent tr>td:nth-child(2){flex:auto;order:-2;font-weight:500}.tbl.m-cards.mat-recent tr>td:nth-child(4){order:-1;font-weight:600}.tbl.m-cards.mat-recent tr>td:first-child,.tbl.m-cards.mat-recent tr>td:nth-child(3){order:1}.tbl.m-cards.mat-recent tr>td:nth-child(5){flex:100%;order:1}.tbl.m-cards.pr-req tr:not(.group){grid-template-columns:18px repeat(3,minmax(0,1fr));align-items:start;gap:4px 10px;display:grid}.tbl.m-cards.pr-req tr>td:first-child{grid-row:1/span 3;padding-top:2px}.tbl.m-cards.pr-req tr>td:nth-child(2),.tbl.m-cards.pr-req tr>td:nth-child(6){grid-column:2/-1}.tbl.m-cards.pr-req tr>td:nth-child(2){font-weight:500}.tbl.m-cards.pr-req td[data-l]:before{display:block}.tbl.m-cards.pr-req input[type=checkbox]{width:18px;height:18px}.tbl.m-cards.pr-pos tr>td:first-child{flex:auto;order:-1}.tbl.m-cards.pr-pos tr>td:nth-child(4){order:-1}.tbl.m-cards.pr-pos tr>td:nth-child(2){flex:auto;order:1}.tbl.m-cards.pr-pos tr>td:nth-child(3){order:1;font-weight:500}.tbl.m-cards.po-prev tr>td:first-child{flex:100%}.tbl.m-cards.po-prev tr>td:nth-child(4){margin-left:auto}.tbl.m-cards.po-prev tfoot tr>td:first-child{flex:auto}.tbl.m-cards.po-prev .badge{white-space:normal}.tbl.m-cards.po-lines tr{grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto;align-items:end;gap:8px 10px;display:grid}.tbl.m-cards.po-lines tr>td:first-child{grid-column:1/-1}.tbl.m-cards.po-lines tr>td:first-child select{width:100%}.tbl.m-cards.po-lines tr>td:nth-child(2),.tbl.m-cards.po-lines tr>td:nth-child(3){flex-wrap:wrap;align-items:center;gap:4px 6px;display:flex}.tbl.m-cards.po-lines td[data-l]:before{flex:100%}.tbl.m-cards.po-lines td input[type=number]{flex:60px;height:38px;font-size:16px;width:auto!important}.tbl.m-cards.po-lines .btn.ghost{justify-content:center;width:38px;height:38px;padding:0}.tbl.m-cards.po-grn tr>td:first-child{flex:auto;order:-1}.tbl.m-cards.po-grn tr>td:nth-child(5){order:-1}.tbl.m-cards.po-grn tr>td:nth-child(2),.tbl.m-cards.po-grn tr>td:nth-child(3){order:1}.tbl.m-cards.po-grn tr>td:nth-child(4){flex:100%;order:1}.kv.po-kv{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 14px;display:grid}.kv.po-kv>div{overflow-wrap:anywhere;border-left:0;min-width:0;padding:0}.tbl.m-cards.wh-inv tr>td:first-child{flex:auto;order:-1;font-weight:500}.tbl.m-cards.wh-inv tr>td:nth-child(2){order:-1}.tbl.m-cards.wh-inv tr>td:nth-child(3){order:1}.tbl.m-cards.wh-inv tr>td:nth-child(4){order:1;margin-left:auto}.tbl.m-cards.xfer tr>td:first-child{flex:auto;font-weight:500}.tbl.m-cards.xfer tr>td:nth-child(3){flex-wrap:wrap;flex:100%;align-items:center;gap:6px;display:flex}.tbl.m-cards.xfer tr>td:nth-child(3):before{flex:none}.tbl.m-cards.xfer td input[type=number]{flex:80px;height:38px;font-size:16px;width:auto!important}.tbl.m-cards.xfer td .btn.ghost{height:38px}.tbl.m-cards.xfer td .bad-text,.page-acts{flex:100%}.page-acts>.btn{flex:calc(50% - 4px);justify-content:center}.po-acts>.btn.primary{flex-basis:100%;order:-1}.mat-bar>.tabs{flex:100%}.mat-bar>.spacer{display:none}.mat-bar>.btn.primary{flex:auto;justify-content:center}.mat-bar .menu-wrap>.btn{justify-content:center}.mat-bar .menu{max-width:calc(100vw - 20px)}.mat-bar .menu button{padding:11px 12px;font-size:14px}.card-bar>label{flex:100%}.card-bar>.spacer{display:none}.card-bar>.btn{flex:1 1 0;justify-content:center;height:36px}.alert.alert-act{flex-wrap:wrap}.alert.alert-act>span{flex:180px;min-width:0}.alert.alert-act>.btn{flex:100%;justify-content:center;height:36px;margin-left:32px}.bill-row .grow{flex-basis:100%;min-width:0}.bill-row>.btn{flex:100%;justify-content:center}.recv-row .name{overflow-wrap:anywhere}.recv-row input[type=number]{height:38px}.pick-row.wo-pick{grid-template-columns:18px minmax(0,1fr) auto;align-items:center;gap:8px 10px;display:grid}.pick-row.wo-pick input[type=checkbox]{width:18px;height:18px}.pick-row.wo-pick>.wo-qr{grid-area:2/2/auto/-1}.pick-row.wo-pick>.wo-qr input{flex:1 1 0;height:38px;width:auto!important}.pick-row.wo-pick .name{overflow-wrap:anywhere}.pick-row.wo-pick>.wo-amt{min-width:0!important}.drawer-foot>.wo-total{flex:100%}.drawer-foot>.wo-total+.spacer{display:none}.wo-bill{padding:12px}.wo-bill .tbl-wrap>.tbl{min-width:560px}.wo-bill .tbl thead th:first-child,.wo-bill .tbl tbody td:first-child{z-index:1;box-shadow:1px 0 0 var(--line-2);background:#fff;min-width:110px;max-width:150px;position:sticky;left:0}.wo-bill .tbl thead th:first-child{background:var(--head-bg);z-index:2}.wo-bill .field,.wo-bill .field input{width:100%}.wo-bill-save>.btn{flex:100%;justify-content:center}.mini-stats .v{overflow-wrap:anywhere}.list-rows>div>span{overflow-wrap:anywhere;min-width:0}}@media (width<=420px){.req-qty>input[type=number]{width:110px!important}.kv.po-kv>div:nth-child(-n+3){grid-column:1/-1}}.pr-flow{flex-wrap:wrap;align-items:center;gap:6px;margin-bottom:14px;display:flex}.pr-flow-step{border:1px solid var(--line);background:var(--card);font:inherit;color:var(--text);cursor:pointer;text-align:left;border-radius:9px;flex-direction:column;align-items:flex-start;gap:1px;padding:7px 12px;display:flex}.pr-flow-step:hover{border-color:var(--input);background:var(--head-bg)}.pr-flow-step.on{border-color:var(--accent);box-shadow:0 0 0 2px var(--ring)}.pr-flow-t{white-space:nowrap;font-size:12.5px;font-weight:600}.pr-flow-opt{color:var(--faint);font-weight:400}.pr-flow-n{color:var(--muted);white-space:nowrap;font-size:12px}.pr-flow-n b{color:var(--text);font-weight:600}.pr-flow-step.zero .pr-flow-n,.pr-flow-step.zero .pr-flow-n b{color:var(--faint);font-weight:400}.pr-flow-arrow{color:var(--faint-2);font-size:13px}.pr-req-bar{flex-wrap:wrap}.pr-none{padding:0 18px 16px}.tbl tr.group.with-acts td{padding-top:6px;padding-bottom:6px}.pr-group-acts{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.pr-group-acts .btn{text-transform:none;letter-spacing:0;font-weight:500}@media (width<=640px){.pr-flow{gap:4px}.pr-flow-step{padding:6px 9px}.pr-flow-arrow{font-size:11px}.pr-req-bar .btn{flex:100%;justify-content:center}.pr-none{padding:0 14px 14px}}.txn-menu{border:1px solid var(--line);width:300px;max-width:calc(100vw - 24px);box-shadow:var(--shadow-pop);z-index:31;background:#fff;border-radius:12px;padding:6px 12px 12px;position:absolute;top:42px;right:0}.txn-menu-sec+.txn-menu-sec{border-top:1px solid var(--line-2);margin-top:6px}.txn-menu-group{color:var(--faint);padding:10px 0 8px;font-size:12px;font-weight:500}.txn-menu-grid{grid-template-columns:1fr 1fr;gap:6px;display:grid}.txn-menu-item{color:#34316b;height:30px;font:inherit;cursor:pointer;white-space:nowrap;text-overflow:ellipsis;text-align:center;background:#ecebf8;border:0;border-radius:6px;padding:0 8px;font-size:12.5px;font-weight:500;overflow:hidden}.txn-menu-item:hover{background:#dfddf5}.txn-menu-item.in{color:var(--green);background:#e3f4e9}.txn-menu-item.in:hover{background:#d3edde}.txn-menu-item.out{color:#b4284f;background:#fde9ee}.txn-menu-item.out:hover{background:#fbdbe3}.cells{background:var(--line-2);border:1px solid var(--line-2);border-radius:10px;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;display:grid;overflow:hidden}.cells.c4{grid-template-columns:repeat(4,minmax(0,1fr))}.cells>div{background:#fff;min-width:0;padding:10px 12px}.cells .cell-label{color:var(--muted);font-size:11.5px}.cells .cell-value{margin-top:3px;font-weight:600}.cells.big>div{padding:12px 14px}.cells.big .cell-label{font-size:12px}@media (width<=640px){.cells.c4{grid-template-columns:repeat(2,minmax(0,1fr))}}.choice{flex-wrap:wrap;gap:6px;display:flex}.choice button{border:1px solid var(--input);height:32px;color:var(--text);font:inherit;cursor:pointer;background:#fff;border-radius:8px;padding:0 12px;font-size:13px;font-weight:500}.choice button.on{border-color:var(--accent);background:var(--accent-2);color:var(--accent)}.sub-line{color:var(--faint);margin-top:2px;font-size:12px}.adv-text{color:var(--blue);font-weight:500}.bad-text.b,.good-text.b{font-weight:500}.total-strip{background:var(--head-bg);border-top:1px solid var(--line-2);border-radius:0 0 12px 12px;justify-content:space-between;align-items:center;margin:0 -18px -16px;padding:12px 18px;font-size:13px;display:flex}.bal-row{border-top:1px solid var(--line-3);cursor:pointer;justify-content:space-between;align-items:center;gap:12px;margin:0 -18px;padding:12px 18px;font-size:13px;display:flex}.bal-row:hover{background:var(--head-bg)}.bal-row:last-child{border-radius:0 0 12px 12px;margin-bottom:-16px}.pr-card{flex-direction:column;gap:12px;display:flex}.pr-amount{font-variant-numeric:tabular-nums;white-space:nowrap;font-size:20px;font-weight:600}.phone-frame{position:fixed;inset:0;overflow:auto}.phone-frame .phone{max-width:430px;box-shadow:0 0 0 1px var(--input)}.phone-top .btn.exit{color:#fff;background:0 0;border-color:#ffffff40;height:34px;padding:0 12px;font-size:12.5px}.phone-top .btn.exit:hover{color:#fff;background:#ffffff14}.phone-body{padding:14px}.phone .p-card{border:1px solid var(--line);background:#fff;border-radius:14px;flex-direction:column;gap:12px;padding:16px;display:flex}.phone .p-label{color:var(--muted);text-transform:uppercase;letter-spacing:.05em;font-size:12px;font-weight:600}.phone .p-title{font-size:16px;font-weight:600}.phone .p-big{background:var(--accent);color:#fff;height:50px;font:inherit;cursor:pointer;border:0;border-radius:12px;width:100%;font-size:16px;font-weight:600}.phone .p-big:hover{background:var(--accent-hover)}.phone .p-big:disabled{opacity:.5;cursor:not-allowed}.phone .p-bar{background:#f0eff2;border-radius:999px;height:8px;margin-top:6px;overflow:hidden}.phone .p-bar.thin{height:6px;margin-top:0}.phone .p-bar>div{background:var(--accent);border-radius:999px;height:100%}.phone .p-bar.done>div{background:var(--green)}.phone .p-line{justify-content:space-between;align-items:center;gap:8px;display:flex}.phone .p-sub{color:var(--faint);font-size:12.5px}.phone .p-figs{grid-template-columns:1fr 1fr;gap:10px 14px;font-size:13px;display:grid}.phone .p-figs .muted{display:block}.phone .p-figs b{font-size:15px;font-weight:600}.phone .p-list>div{border-bottom:1px solid var(--line-3);padding:12px 0}.phone .p-list>div:last-child{border-bottom:0}.phone .badge{padding:3px 9px;font-size:12px}.phone-nav a{place-items:center;height:56px;padding:0 4px;font-size:13px;display:grid}.phone-nav a:hover{text-decoration:none}.phone-nav a.active{box-shadow:inset 0 2px 0 var(--accent)}.drawer:has(.ledger-body){width:min(640px,100vw)}.ledger-body .tbl th:first-child,.ledger-body .tbl td:first-child{padding-left:10px}.ledger-body .tbl th:last-child,.ledger-body .tbl td:last-child{padding-right:10px}.fin-filter{height:32px;font-size:13px}.pr-method{height:30px;font-size:13px}.cells>div{overflow-wrap:anywhere}.bal-row>div:first-child,.pr-head>div:first-child{overflow-wrap:anywhere;min-width:0}.phone-top{gap:12px}.phone-who{overflow-wrap:anywhere;min-width:0}.phone-logo{object-fit:contain;background:#fff;border-radius:6px;flex:none;max-width:96px;height:36px;margin-right:10px;padding:3px}.phone-logo+.phone-who{flex:1}.phone-top .btn.exit{flex:none}.phone .p-line>*{min-width:0}.phone .p-line>div{overflow-wrap:anywhere}.phone .p-line>.badge,.phone .p-line>b.nowrap{flex:none}.phone .p-figs{grid-template-columns:repeat(2,minmax(0,1fr))}.phone .p-figs b{overflow-wrap:anywhere}@media (width>=641px){.phone-frame{padding:24px 16px}.phone-frame .phone{min-height:calc(100dvh - 48px);box-shadow:0 0 0 1px var(--input), 0 24px 60px #1c1b221f;border-radius:20px;overflow:clip}}@media (width<=640px){.txn-bar .spacer{display:none}.txn-bar .txn-menu-wrap,.page-head .txn-menu-wrap{flex:100%}.txn-menu-wrap>.btn{justify-content:center;width:100%}.txn-menu-backdrop{background:#1c1b2252}.txn-menu{width:auto;max-width:none;max-height:calc(100dvh - 24px);padding:6px 14px calc(14px + env(safe-area-inset-bottom));border-radius:16px;position:fixed;inset:auto 8px 8px;overflow-y:auto}.txn-menu-grid{gap:8px}.txn-menu-item{border-radius:8px;height:40px;font-size:13.5px}.fin-tabs .tabs.sub{flex-wrap:wrap;row-gap:2px;overflow:visible}.fin-tabs .tabs.sub .tab{flex:auto;justify-content:center;height:34px;padding:0 10px}.fin-filters .fin-filter{flex:150px;height:38px;font-size:16px}.pr-method{height:36px;font-size:16px}.pr-head{flex-wrap:wrap}.pr-head>div:first-child{flex:200px}.pr-card .btn.sm{height:36px;padding:0 14px}.total-strip{margin:0 -14px -14px;padding:12px 14px}.bal-row{margin:0 -14px;padding:12px 14px}.bal-row:last-child{margin-bottom:-14px}table.tbl.txn-tbl,table.tbl.txn-tbl tbody{display:block}table.tbl.txn-tbl thead{display:none}table.tbl.txn-tbl tr{border-bottom:1px solid var(--line-3);grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"party amt""type due""date date";align-items:center;gap:4px 10px;padding:10px 14px;display:grid}table.tbl.txn-tbl tbody tr:last-child{border-bottom:0}table.tbl.txn-tbl tr.clickable:hover{background:var(--head-bg)}table.tbl.txn-tbl td{background:0 0;border:0;min-width:0;padding:0}table.tbl.txn-tbl .c-party{overflow-wrap:anywhere;grid-area:party;font-weight:500}table.tbl.txn-tbl .c-amt{grid-area:amt}table.tbl.txn-tbl .c-type{grid-area:type}table.tbl.txn-tbl .c-due{white-space:normal;flex-wrap:wrap;grid-area:due;justify-content:flex-end;gap:4px;display:flex}table.tbl.txn-tbl .c-due .badge{margin-left:0!important}table.tbl.txn-tbl .c-date{color:var(--muted);grid-area:date;gap:6px;font-size:12px;display:flex}table.tbl.txn-tbl .c-date .sub-line{margin-top:0;font-size:12px}table.tbl.bill-tbl,table.tbl.bill-tbl tbody{display:block}table.tbl.bill-tbl thead{display:none}table.tbl.bill-tbl tr{border-bottom:1px solid var(--line-3);grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"bill amt""party party""due act";align-items:center;gap:4px 10px;padding:12px 14px;display:grid}table.tbl.bill-tbl tbody tr:last-child{border-bottom:0}table.tbl.bill-tbl td{border:0;min-width:0;padding:0}table.tbl.bill-tbl .c-bill{overflow-wrap:anywhere;grid-area:bill}table.tbl.bill-tbl .c-amt{grid-area:amt}table.tbl.bill-tbl .c-party{color:var(--text-2);overflow-wrap:anywhere;grid-area:party;font-size:12.5px}table.tbl.bill-tbl .c-due{grid-area:due}table.tbl.bill-tbl .c-act{grid-area:act}table.tbl.bill-tbl .c-act .btn{height:36px;padding:0 20px}table.tbl.party-tbl{min-width:620px}.pin-first .tbl th:first-child,.pin-first .tbl td:first-child{z-index:1;min-width:140px;max-width:170px;box-shadow:1px 0 0 var(--line-2);overflow-wrap:anywhere;background:#fff;position:sticky;left:0}.pin-first .tbl th:first-child,.pin-first .tbl tr.clickable:hover td:first-child{background:var(--head-bg)}table.tbl.ledger-tbl{min-width:540px}table.tbl.ledger-tbl .c-entry{min-width:150px}table.tbl.wide-tbl{min-width:600px}table.tbl.wide-tbl td:first-child,table.tbl.wide-tbl td:nth-child(2){min-width:120px}table.tbl.mid-tbl{min-width:440px}table.tbl.wide-tbl input,table.tbl.mid-tbl input{height:36px;font-size:16px}.drawer-body .card>.tbl-wrap{margin-left:0;margin-right:0}.drawer-body .card>.tbl-wrap:last-child{margin-bottom:0}table.tbl.line-tbl,table.tbl.line-tbl tbody{display:block}table.tbl.line-tbl thead{display:none}table.tbl.line-tbl tr{border-bottom:1px solid var(--line-3);grid-template-columns:repeat(3,minmax(0,1fr)) auto;gap:8px;padding:10px;display:grid}table.tbl.line-sales tr{grid-template-columns:repeat(4,minmax(0,1fr));grid-template-areas:"desc desc desc del""qty unit rate gst""amt amt amt amt"}table.tbl.line-direct tr{grid-template-areas:"desc desc desc del""qty rate gst.""amt amt amt amt"}table.tbl.line-tbl tbody tr:last-child{border-bottom:0}table.tbl.line-tbl td{border:0;flex-wrap:wrap;align-items:center;gap:4px 6px;padding:0;display:flex;min-width:0!important}table.tbl.line-tbl td[data-label]:before{content:attr(data-label);color:var(--muted);flex:0 0 100%;font-size:11.5px;font-weight:500}table.tbl.line-tbl td input,table.tbl.line-tbl td select{flex:1 1 0;min-width:0;height:38px;font-size:16px;width:auto!important}table.tbl.line-tbl .c-desc>*{flex:100%;min-width:0}table.tbl.line-tbl .c-desc{grid-area:desc}table.tbl.line-tbl .c-qty{grid-area:qty}table.tbl.line-tbl .c-unit{grid-area:unit}table.tbl.line-tbl .c-rate{grid-area:rate}table.tbl.line-tbl .c-gst{grid-area:gst}table.tbl.line-tbl .c-amt{flex-wrap:nowrap;grid-area:amt;justify-content:space-between;font-weight:600}table.tbl.line-tbl .c-amt:before{flex:none}table.tbl.line-tbl .c-del{grid-area:del;justify-content:flex-end;align-self:end}table.tbl.line-tbl .c-del .btn{justify-content:center;width:38px;height:38px;padding:0}.drawer-foot:has(.foot-total) .spacer{display:none}.foot-total{text-align:right;flex:100%}.ledger-body .tbl th:first-child,.ledger-body .tbl td:first-child{padding-left:8px}}.settle-card{flex-direction:column;gap:10px;display:flex}.settle-tbl td{vertical-align:middle}.settle-tbl input[type=number]{height:34px}.settle-sum{text-align:right;font-size:13px}.settle-view .list-rows{margin-top:6px}.rfq-sup-list{max-height:260px;overflow-y:auto}.rfq-sup-search{margin-bottom:8px}.rfq-items .tbl td{vertical-align:middle}.rfq-sup-row{border-top:1px solid var(--line-3);flex-wrap:wrap;align-items:center;gap:12px;padding:12px 18px;display:flex}.rfq-sup-row:first-child{border-top:0}.rfq-sup-row .grow{flex:200px;min-width:0}.rfq-sup-row .name{font-weight:500}.rfq-sup-acts{flex-wrap:wrap;gap:6px;display:flex}.rfq-sup-acts .btn{height:30px;font-size:12.5px}.tbl.rfq-cmp td.rfq-cell{min-width:130px}.tbl.rfq-cmp td.rfq-best{background:var(--green-bg)}.tbl.rfq-cmp td.rfq-best .money{color:var(--green);font-weight:600}.rfq-pick{cursor:pointer;justify-content:flex-end;align-items:center;gap:8px;display:flex}.rfq-pick input[type=radio]{flex:none;width:16px;height:16px;margin:0}.tbl.rfq-cmp tfoot td{font-weight:500}.rfq-foot{border-top:1px solid var(--line-3);flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:12px;padding:14px 18px;display:flex}.rfq-foot .muted{margin-right:auto}.quote-card{border:1px solid var(--line-2);background:#fff;border-radius:12px;flex-direction:column;gap:10px;padding:14px;display:flex}.quote-card h2{margin:0;font-size:16px}.quote-item{border-top:1px solid var(--line-3);flex-direction:column;gap:8px;padding-top:12px;display:flex}.quote-item:first-of-type{border-top:0;padding-top:0}.quote-item .name{font-size:14px;font-weight:600}.quote-item .meta{color:var(--muted);font-size:12.5px}.quote-item-row{grid-template-columns:minmax(0,1fr) 96px;gap:10px;display:grid}.quote-item-row input,.quote-item-row select{width:100%}.quote-item.off .quote-item-row{opacity:.45}.quote-can{cursor:pointer;align-items:center;gap:8px;font-size:13.5px;display:flex}.quote-can input{width:18px;height:18px;margin:0}.quote-total{justify-content:space-between;font-size:14px;font-weight:600;display:flex}.quote-submit{justify-content:center;width:100%;height:44px;font-size:15px}.quote-done{text-align:center;padding:28px 16px}.quote-done .tick{background:var(--green-bg);width:44px;height:44px;color:var(--green);border-radius:50%;place-items:center;margin:0 auto 10px;font-size:18px;font-weight:700;display:grid}@media (width<=640px){.rfq-sup-row{padding:12px 14px}.rfq-sup-acts{flex:100%}.rfq-sup-acts .btn{flex:auto;justify-content:center;height:36px}.rfq-foot .btn{flex:100%;justify-content:center;height:40px}}.rfq-filters{flex-wrap:wrap;gap:6px;padding:0 18px 12px;display:flex}.tbl.rfq-list td.rfq-row-acts{white-space:nowrap;text-align:right}.tbl.rfq-list td.rfq-row-acts .btn+.btn{margin-left:6px}@media (width<=640px){.tbl.rfq-list td.rfq-row-acts{text-align:left;white-space:normal;flex-wrap:wrap;gap:6px;display:flex}.tbl.rfq-list td.rfq-row-acts .btn+.btn{margin-left:0}}
