@import"https://fonts.googleapis.com/css2?family=Rubik:wght@400;500;600;700&family=Heebo:wght@400;500;700;800&display=swap";:root{--ink: #161A33;--ink-2: #4A5070;--ink-3: #8A90AC;--line: #DDE1EC;--line-row: #E3E7F2;--line-2: #EEF0F6;--paper: #F1F3F7;--card: #ffffff;--zebra: #FBFCFE;--navy: #1B2160;--navy-2: #2A3183;--navy-bg: #EDEFF8;--red: #C8102E;--red-2: #A50C25;--red-bg: #FBE9EB;--good: #1B6B3A;--good-bg: #E3F1E8;--warn: #8A6D1F;--warn-bg: #FBF3E2;--bad: #A31226;--bad-bg: #FBE9EB;--info: #1B4E7A;--info-bg: #E4EDF7;--radius: 6px;--shadow: 0 1px 2px rgba(22,26,51,.05), 0 6px 20px rgba(22,26,51,.06)}*{box-sizing:border-box}body{margin:0;font-family:Rubik,Heebo,Segoe UI,system-ui,sans-serif;background:var(--paper);color:var(--ink);font-size:14px;-webkit-font-smoothing:antialiased}button{font-family:inherit;font-size:inherit;cursor:pointer}input,select,textarea{font-family:inherit;font-size:inherit;color:inherit}.btn{border:1px solid var(--line);background:var(--card);color:var(--ink-2);padding:7px 14px;border-radius:var(--radius);font-weight:500;transition:background .12s,border-color .12s,color .12s}.btn:hover{background:var(--navy-bg);border-color:#c9cfe4;color:var(--ink)}.btn.primary{background:var(--red);border-color:var(--red);color:#fff;font-weight:600}.btn.primary:hover{background:var(--red-2);border-color:var(--red-2);color:#fff}.btn.ghost{border-color:transparent;background:transparent}.btn.ghost:hover{background:var(--line-2)}.btn.danger{color:var(--bad)}.btn.danger:hover{background:var(--bad-bg);border-color:#e9c3c8;color:var(--bad)}.btn:disabled{opacity:.45;cursor:not-allowed}.btn.sm{padding:5px 11px;font-size:12.5px}.topbar{display:flex;align-items:center;gap:14px;padding:0 24px;height:64px;background:var(--navy);color:#fff;position:sticky;top:0;z-index:20}.topbar h1{font-size:14px;font-weight:500;margin:0;color:#c3c8e8;letter-spacing:.2px;padding-right:14px;border-right:1px solid #3B4189}.topbar .sep{flex:1}.topbar .btn{background:transparent;border-color:#3b4189;color:#c3c8e8}.topbar .btn:hover{background:#262c74;border-color:#4a51a5;color:#fff}.who{color:#c3c8e8;font-size:13px;display:flex;align-items:center;gap:8px}.who b{color:#fff;font-weight:600}.who .role{background:var(--red);color:#fff;font-size:11px;font-weight:600;padding:2px 9px;border-radius:20px}.who .role.viewer{background:#3b4189}.wrap{padding:18px 24px 60px;display:flex;flex-direction:column;gap:14px}.kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.kpi{background:var(--card);border:1px solid var(--line);border-radius:8px;padding:14px 16px;display:flex;flex-direction:column;gap:6px}.kpi span{font-size:11.5px;color:var(--ink-3);letter-spacing:.2px}.kpi b{font-size:26px;font-weight:700;line-height:1;color:var(--navy);font-variant-numeric:tabular-nums}.kpi.accent b{color:var(--red)}.toolbar{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.toolbar input[type=text],.toolbar select{border:1px solid var(--line);border-radius:var(--radius);padding:8px 12px;background:var(--card);min-width:150px;color:var(--ink-2)}.toolbar input[type=text]:focus,.toolbar select:focus{outline:2px solid var(--navy-bg);border-color:var(--navy-2)}.toolbar .grow{flex:1}.tablecard{background:var(--card);border:1px solid var(--line);border-radius:8px;overflow:auto;box-shadow:var(--shadow)}table.grid{border-collapse:collapse;width:100%;white-space:nowrap}table.grid th{background:#f5f6fa;text-align:right;font-weight:600;font-size:11.5px;color:#5a6087;padding:10px 13px;border-bottom:2px solid var(--navy);position:sticky;top:0;z-index:2}table.grid td{padding:10px 13px;border-bottom:1px solid var(--line-row)}table.grid tbody tr{cursor:pointer}table.grid tbody tr:nth-child(2n){background:var(--zebra)}table.grid tbody tr:hover{background:var(--navy-bg)}table.grid tbody tr:hover td{border-bottom-color:#cbd2e6}table.grid tbody tr:last-child td{border-bottom:none}table.grid td.num{text-align:left;font-variant-numeric:tabular-nums}table.grid td.calc{color:var(--ink-3)}table.grid th.key,table.grid td.key{background:#f6f7fb}table.grid tbody tr:nth-child(2n) td.key{background:#f3f5fa}table.grid tbody tr:hover td.key{background:#e6eaf6}table.grid td.key{font-weight:700;color:var(--ink)}table.grid td.key.price{color:var(--navy)}.empty{padding:48px;text-align:center;color:var(--ink-3)}.chip{display:inline-block;padding:3px 10px;border-radius:4px;font-size:11.5px;font-weight:600}.chip.draft{background:var(--line-2);color:#5a6087}.chip.submitted{background:var(--info-bg);color:var(--info)}.chip.won{background:var(--good-bg);color:var(--good)}.chip.lost{background:var(--bad-bg);color:var(--bad)}.chip.cancelled{background:var(--line-2);color:var(--ink-3);text-decoration:line-through}.chip.ver{background:#f2eedd;color:var(--warn)}.backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#161a3373;display:flex;justify-content:center;align-items:flex-start;padding:26px;z-index:50;overflow:auto}.modal{background:var(--paper);border-radius:10px;width:100%;max-width:1180px;box-shadow:0 20px 60px #161a3352;overflow:hidden}.modal-head{background:var(--card);padding:13px 20px;border-bottom:1px solid var(--line);display:flex;align-items:center;gap:12px;position:sticky;top:0;z-index:5}.modal-head h2{margin:0;font-size:16px;font-weight:700}.modal-body{padding:16px 20px 26px;display:flex;flex-direction:column;gap:12px}.box{background:var(--card);border:1px solid var(--line);border-radius:8px;overflow:hidden}.box-head{display:flex;align-items:center;gap:10px;padding:11px 16px;border-bottom:1px solid var(--line-2);-webkit-user-select:none;user-select:none}.box-head .n{min-width:22px;height:22px;padding:0 5px;border-radius:5px;background:var(--navy);color:#fff;display:grid;place-items:center;font-size:11.5px;font-weight:700}.box-head h3{margin:0;font-size:13.5px;font-weight:700;flex:1}.box-head .sum{font-variant-numeric:tabular-nums;font-weight:700;font-size:14px;color:var(--navy)}.box-head .sum small{color:var(--ink-3);font-weight:400;margin-left:4px;font-size:11px}.box-head.static{cursor:default}.box-body{padding:0}table.form{width:100%;border-collapse:collapse}table.form th{text-align:right;font-size:11px;font-weight:600;color:var(--ink-3);padding:8px 14px;border-bottom:1px solid var(--line-2);white-space:nowrap}table.form td{padding:5px 14px;border-bottom:1px solid var(--line-2)}table.form tbody tr:hover td{background:#fbfcfe}table.form td.lbl{font-weight:500;white-space:nowrap}table.form td.out{text-align:left;font-variant-numeric:tabular-nums;color:var(--ink-2);white-space:nowrap}table.form td.out b{color:var(--ink)}table.form tr.total td{background:#f6f7fb;font-weight:700;border-top:1px solid var(--line);border-bottom:none}table.form tr.total:hover td{background:#f6f7fb}table.form tr.total td.out{color:var(--navy)}.inp{border:1px solid var(--line);border-radius:5px;padding:6px 9px;width:100%;background:#fcfcfe;text-align:right;color:var(--ink)}.inp:focus{outline:2px solid var(--navy-bg);border-color:var(--navy-2);background:#fff}.inp.num{text-align:left;font-variant-numeric:tabular-nums}.inp.w80{width:80px}.inp.w100{width:100px}.inp.w120{width:120px}.inp:disabled{background:#f4f5f9;color:var(--ink-3)}.rowbtn{color:var(--ink-3);border:none;background:none;padding:2px 6px;border-radius:4px}.rowbtn:hover{background:var(--bad-bg);color:var(--bad)}.addrow{padding:10px 14px;border-top:1px solid var(--line-2)}.head-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px 16px;padding:14px 16px}.head-grid.cols5{grid-template-columns:repeat(5,1fr)}@media (max-width: 1180px){.head-grid.cols5{grid-template-columns:repeat(3,1fr)}}table.grid td.due{white-space:nowrap}table.grid td.due.soon{color:var(--warn);font-weight:700;background:var(--warn-bg)}table.grid td.due.late{color:var(--bad);font-weight:700;background:var(--bad-bg)}.fxnow{display:flex;flex-direction:column;gap:1px;padding:7px 10px;border:1px dashed var(--line);border-radius:7px;background:var(--zebra);min-height:38px;justify-content:center}.fxnow b{font-size:15px;font-variant-numeric:tabular-nums;color:var(--ink)}.fxnow small{font-size:9.5px;color:var(--ink-3)}.inp.late{border-color:var(--bad);background:var(--bad-bg);color:var(--bad);font-weight:700}.suppnotes{padding:10px 14px;border-top:1px solid var(--line-2)}.suppnotes>label{display:block;font-size:11px;font-weight:700;color:var(--ink-3);margin-bottom:4px}.suppnotes textarea.inp{width:100%;min-height:44px;resize:vertical;height:auto;font-family:inherit;font-size:12.5px;line-height:1.5;text-align:right}html.printmode .suppnotes{padding:2px 6px;break-inside:avoid}html.printmode .suppnotes>label{font-size:8px;margin-bottom:1px}html.printmode .suppnotes textarea.inp{min-height:22px;font-size:8.5px!important;padding:2px 4px!important;border:1px solid #C9CEDC!important;background:#fff!important;text-align:right!important}.dimgrid{display:flex;gap:6px}.dimfld{display:flex;flex-direction:column;gap:2px;flex:1;min-width:0}.dimfld>span{font-size:10px;color:var(--ink-3);font-weight:600}.dimfld .inp{width:100%;min-width:0;text-align:center}.dimlegacy{margin-top:4px;font-size:10.5px;color:var(--ink-3)}.fld{display:flex;flex-direction:column;gap:4px}.fld label{font-size:11.5px;color:var(--ink-3);font-weight:500}.summary{background:var(--card);border:2px solid var(--navy);border-radius:8px;overflow:hidden}.summary .box-head{background:var(--navy);color:#fff;border-bottom:none}.summary .box-head .n{background:#ffffff29}.summary .box-head .sum{color:#fff}.summary .box-head .sum small{color:#a9b0de}table.sum{width:100%;border-collapse:collapse}table.sum th{background:#f5f6fa;font-size:11px;color:#5a6087;text-align:right;padding:9px 12px;border-bottom:1px solid var(--line)}table.sum td{padding:8px 12px;border-bottom:1px solid var(--line-row);font-variant-numeric:tabular-nums;text-align:left}table.sum tbody tr:hover td{background:#fbfcfe}table.sum td.t{text-align:right;font-variant-numeric:normal;font-weight:500}table.sum tr.grand td{background:var(--navy-bg);font-weight:700;color:var(--navy);border-top:1px solid var(--navy);border-bottom:none}table.sum tr.grand:hover td{background:var(--navy-bg)}table.sum.excel{border:1.5px solid #7F7F7F}table.sum.excel th,table.sum.excel td{border:1px solid #9AA0B4;text-align:center;padding:5px 8px;font-size:12px;white-space:nowrap}table.sum.excel tr.titlebar th{background:#fff200;color:#16192b;font-size:14px;font-weight:800;letter-spacing:.3px;padding:7px;border-bottom:1.5px solid #7F7F7F}table.sum.excel thead tr:not(.titlebar) th{background:#bfbfbf;color:#16192b;font-weight:700;font-size:11.5px;line-height:1.25;white-space:normal}table.sum.excel thead th small{font-weight:500;font-size:9.5px}table.sum.excel thead tr:not(.titlebar) th.inputhead{background:#c00000;color:#fff}table.sum.excel td{background:#f2f6fc;color:#16192b;font-weight:500}table.sum.excel td.t{text-align:right;font-weight:600;background:#fff}table.sum.excel tbody tr:hover td{background:#e8effa}table.sum.excel tbody tr:hover td.t{background:#fff}table.sum.excel .inp{width:100%;min-width:0;border:0;background:transparent;text-align:center;font-size:12px;font-weight:600;padding:0;height:22px;box-shadow:none}table.sum.excel .inp::-webkit-outer-spin-button,table.sum.excel .inp::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}table.sum.excel .inp[type=number]{-moz-appearance:textfield;-webkit-appearance:textfield;appearance:textfield}table.sum.excel td.pricecell{background:#ffe9e9}table.sum.excel tbody tr:hover td.pricecell{background:#ffdfdf}table.sum.excel td.pricecell .inp{color:#a31226;font-weight:800;font-size:15px}table.sum.excel td.pricecell{font-size:15px;font-weight:800}table.sum.excel thead tr:not(.titlebar) th.pcthead{background:#9cc3e8;color:#10233a;font-size:12px}table.sum.excel td.pctcell{background:#c3ddf6}table.sum.excel tbody tr:hover td.pctcell{background:#b2d3f3}table.sum.excel td.pctcell .inp{font-size:15px;font-weight:800;height:24px;color:#10233a}table.sum.excel td.pctcell,table.sum.excel td.ctr.pctcell{font-size:15px;font-weight:800;color:#10233a}table.sum.excel td.pctcell.neg{color:#a31226}.pctwrap{display:inline-flex;align-items:center;gap:2px}.pctwrap i{font-style:normal;color:var(--ink-3);font-size:11.5px}table.form .pctwrap .inp{width:62px}table.sum.excel .pctwrap .inp{width:46px}table.sum.excel .pctwrap i{color:#10233a;font-size:15px;font-weight:800}table.form tr.xref td{background:#fafafc;color:var(--ink-3);font-size:11.5px}table.form tr.xref td.out{color:var(--ink-2)}table.form .rolabel{display:block;width:100%;border:1px solid var(--line);border-radius:5px;padding:6px 9px;background:#fcfcfe;color:var(--ink);text-align:center;font-weight:400;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}table.form td.lbl:has(>.rolabel){text-align:center}table.form td.hcqty{display:flex;align-items:center;gap:5px}table.form td.hcqty span{font-size:11px;color:var(--ink-3)}table.sum.excel .inp:disabled{color:#9aa0b4}table.sum.excel tr.grand.ils td,table.sum.excel tr.grand.ils:hover td{background:#f0a22e;color:#16192b;font-weight:800;border-color:#b87516;border-top:1.5px solid #7F7F7F}table.sum.excel tr.grand.ils td.pricecell,table.sum.excel tr.grand.ils:hover td.pricecell{background:#fff200}table.sum.excel tr.subtitle td{background:#efefef;text-align:right;font-weight:800;font-size:12.5px;color:#16192b;border-top:1.5px solid #7F7F7F;padding:4px 8px}table.sum.excel tr.finalrow td,table.sum.excel tr.finalrow:hover td{background:#fff9e0;font-weight:700;border-inline:2.5px solid #7F7F7F;border-block:1.5px solid #7F7F7F;padding:8px 14px}table.sum.excel tr.finalrow td.pctcell,table.sum.excel tr.finalrow td.pricecell{font-size:16px}table.sum.excel tr.finalrow td.t,table.sum.excel tr.finalrow:hover td.t{background:#fff}table.sum.excel tr.finalrow.usdrow td,table.sum.excel tr.finalrow.usdrow:hover td{background:#eff7e6}table.sum.excel tr.finalrow.submittedrow td,table.sum.excel tr.finalrow.submittedrow:hover td{background:#fdecef}table.sum.excel tr.finalrow td.pricecell,table.sum.excel tr.finalrow:hover td.pricecell{background:#fff200}table.sum.excel tr.finalrow td.pricecell.ro{background:#f2f6fc;font-weight:800}table.sum.excel tr.finalrow td.pricecell .inp{font-size:16px;font-weight:800;color:#16192b;height:26px}table.sum.excel tr.finalrow td.neg{color:#a31226}table.sum.excel td.t .inp.curr{width:46px;margin-inline-start:6px;height:22px;padding:0 2px;font-size:12px;font-weight:700;text-align:center;border:1px solid #9AA0B4;background:#fff}table.sum.excel tr.grand.usd td,table.sum.excel tr.grand.usd:hover td{background:#92d050;color:#16192b;font-weight:700;border-color:#5e9130}.bar{height:6px;background:var(--line-2);border-radius:3px;overflow:hidden;min-width:60px}.bar>i{display:block;height:100%;background:var(--navy-2)}.finalbar{display:flex;align-items:flex-end;gap:22px;flex-wrap:wrap;padding:15px 16px;border-top:2px solid var(--navy);background:#fafbfe}.finalbar .fld{min-width:128px}.finalbar .fld .inp{padding:8px 11px;font-size:16px;font-weight:700;border-color:var(--navy)}.finalbar .fld .inp::-webkit-outer-spin-button,.finalbar .fld .inp::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.finalbar .fld .inp[type=number]{-moz-appearance:textfield;-webkit-appearance:textfield;appearance:textfield}.finalbar .fld .inp.w80{width:104px}.finalbar .fld .inp.w100{width:148px}.finalout{display:flex;gap:26px;flex-wrap:wrap;flex:1;justify-content:flex-end}.finalout>div{display:flex;flex-direction:column;gap:2px;text-align:left;min-width:96px}.finalout span{font-size:11.5px;color:var(--ink-3)}.finalout b{font-size:17px;font-variant-numeric:tabular-nums;color:var(--navy)}.finalout b.neg{color:var(--bad)}.finalout em{font-size:11.5px;color:var(--ink-3);font-style:normal;font-variant-numeric:tabular-nums}.snapshot{background:#f5f6fa;border:1px solid var(--line);border-radius:8px;padding:12px 15px;font-size:11.5px;color:#6b7194}.snapshot b{color:var(--ink)}.snapshot .items{display:flex;flex-wrap:wrap;gap:6px 18px;margin-top:7px}.note{background:var(--warn-bg);border:1px solid #E8D5B0;color:var(--warn);border-radius:6px;padding:9px 13px;font-size:13px}.hintbar{padding:9px 15px;font-size:11.5px;color:var(--ink-3);background:#fafbfe;border-top:1px solid var(--line-2)}.hintbar.bad{color:var(--bad);background:var(--bad-bg);font-weight:500;border-top-color:#e9c3c8}.login-split{min-height:100vh;display:flex;background:#fff}.login-brand{width:58%;background:var(--navy);color:#fff;position:relative;overflow:hidden;display:flex;flex-direction:column;justify-content:space-between;padding:52px 56px}.login-brand .rings{position:absolute;left:-190px;bottom:-210px;opacity:.5}.login-brand .row{position:relative}.login-brand .pitch{max-width:520px}.login-brand h2{font-size:44px;font-weight:700;line-height:1.2;letter-spacing:-1px;margin:0}.login-brand p{font-size:16px;line-height:1.75;color:#b6bce4;margin:20px 0 0;max-width:440px}.login-brand .foot{display:flex;gap:34px;font-size:13px;color:#8f97d0;flex-wrap:wrap}.login-form{flex:1;display:flex;align-items:center;justify-content:center;padding:0 56px}.login-form form{width:100%;max-width:360px}.login-form h1{font-size:26px;font-weight:700;letter-spacing:-.4px;margin:0;color:var(--ink)}.login-form .sub{font-size:14px;color:var(--ink-3);margin:7px 0 32px}.login-form .fld{margin-bottom:16px}.login-form .fld span{font-size:12.5px;font-weight:500;color:var(--ink-2)}.login-form .inp{padding:11px 13px;margin-top:6px}.login-form .btn{width:100%;padding:12px;font-size:15px;margin-top:8px}.login-form .err{color:var(--bad);background:var(--bad-bg);border:1px solid #E9C3C8;border-radius:6px;padding:9px 12px;font-size:13px;margin-bottom:16px}.login-form .help{font-size:12.5px;color:var(--ink-3);margin:22px 0 0;line-height:1.7}.login{min-height:100vh;display:grid;place-items:center;background:var(--paper)}.login .card{background:var(--card);border:1px solid var(--line);border-radius:10px;box-shadow:var(--shadow);padding:32px;width:380px;text-align:center}.login h1{font-size:19px;margin:0 0 6px;font-weight:700}.login p{color:var(--ink-3);margin:0 0 20px;font-size:13px}table.form th,table.form td,table.form td.out{text-align:center}table.form th:first-child,table.form td.lbl{text-align:right}table.form .inp,table.form .inp.num{text-align:center}.inp.unitsel{width:100%;min-width:86px;padding-inline:4px 20px}table.form.labor td.scope{color:var(--ink-3);font-size:11.5px;line-height:1.3}table.form.labor td.scope small{display:block;font-size:10px;color:#9aa0b4}table.form.labor td.dash{color:var(--ink-3);font-size:12px;text-align:center}table.form.labor td.mk{color:var(--ink-3);font-variant-numeric:tabular-nums}.dual{display:inline-flex;flex-direction:column;align-items:center;line-height:1.25}.dual b{font-variant-numeric:tabular-nums;font-weight:700;white-space:nowrap}.dual em{font-style:normal;font-size:10.5px;color:var(--ink-3);font-variant-numeric:tabular-nums;white-space:nowrap}table.form.labor td.loaded{background:#f4f8ff}table.form.labor td.loaded .dual b{color:var(--navy)}.curwrap{display:inline-flex;align-items:center;gap:2px}.curwrap i{font-style:normal;font-weight:800}table.form.labor td.derived{color:var(--navy);font-weight:600}table.form.labor tr.levelrow td{background:#fcfbf4}table.form.labor .lvlpick{display:flex;gap:5px;align-items:center}table.form.labor .lvlpick .inp{flex:1;min-width:0}table.form.labor .lvlsum{font-size:11.5px;font-weight:700;color:var(--navy);white-space:nowrap;font-variant-numeric:tabular-nums}@page{size:A4 portrait;margin:7mm}html.printmode #root>*:not(.backdrop){display:none!important}html.printmode .topbar,html.printmode .toolbar,html.printmode .kpis,html.printmode .wrap,html.printmode .modal-head .btn,html.printmode .rowbtn,html.printmode .addrow,html.printmode .hintbar,html.printmode .no-print{display:none!important}html.printmode,html.printmode body{height:auto;background:#fff}html.printmode,html.printmode *{-webkit-print-color-adjust:exact;print-color-adjust:exact}html.printmode .backdrop{position:static;padding:0;overflow:visible;background:#fff;display:block}html.printmode .modal-body{padding:0;overflow:visible}html.printmode .modal{width:1000px;max-width:none;height:auto;max-height:none;box-shadow:none;border-radius:0;border:0;overflow:visible;zoom:var(--print-scale, 1)}html.printmode .modal-head{position:static;padding:4px 8px}html.printmode .box,html.printmode .summary{break-inside:avoid;box-shadow:none;margin-bottom:4px;border-radius:0}html.printmode .box-head{padding:2px 6px;min-height:0}html.printmode .box-head h3{font-size:11px}html.printmode .box-body{padding:0}html.printmode .head-grid.cols5{grid-template-columns:repeat(5,1fr)}html.printmode .head-grid{gap:0;padding:0}html.printmode .head-grid .fld{padding:1px 4px;border:1px solid #C9CEDC;gap:0}html.printmode .head-grid .fld label{font-size:8px;line-height:1.2;margin:0}html.printmode .head-grid .fld .inp{height:auto!important;min-height:0!important;line-height:1.25!important}html.printmode .box{margin-bottom:3px}html.printmode .box-head{padding:1px 6px}html.printmode .summary .box-head{padding:2px 6px}html.printmode table.form,html.printmode table.sum{font-size:9px}html.printmode table.form th,html.printmode table.sum:not(.excel) th{padding:2px 4px;font-size:8.5px;background:#edf0f6!important;border:1px solid #C9CEDC}html.printmode table.sum.excel th,html.printmode table.sum.excel td{padding:1.5px 4px;font-size:8.5px}html.printmode table.sum.excel tr.titlebar th{font-size:11px;padding:4px}html.printmode table.sum.excel thead tr:not(.titlebar) th{font-size:8px}html.printmode table.sum.excel thead th small{font-size:7px}html.printmode table.sum.excel .inp{font-size:8.5px!important;height:auto!important}html.printmode table.sum.excel td.pctcell,html.printmode table.sum.excel td.pctcell .inp,html.printmode table.sum.excel td.pricecell,html.printmode table.sum.excel td.pricecell .inp,html.printmode table.sum.excel .pctwrap i{font-size:10.6px!important}html.printmode table.sum.excel tr.finalrow td{padding:4px 8px}html.printmode table.sum.excel tr.finalrow td.pctcell,html.printmode table.sum.excel tr.finalrow td.pricecell,html.printmode table.sum.excel tr.finalrow td.pricecell .inp{font-size:11.3px!important}html.printmode table.sum.excel td.t .inp.curr{font-size:8.5px!important;width:30px}html.printmode table.form td,html.printmode table.sum:not(.excel) td{padding:1px 4px;border:1px solid #C9CEDC}html.printmode .inp,html.printmode .inp.num{border:0!important;background:transparent!important;padding:0!important;height:auto!important;min-height:0!important;font-size:9px!important;box-shadow:none!important;-webkit-appearance:none;-moz-appearance:none;appearance:none}html.printmode .bar{display:none}html.printmode table.form th,html.printmode table.form td,html.printmode table.sum th,html.printmode table.sum td,html.printmode table.form td.out,html.printmode table.form td.lbl,html.printmode table.sum:not(.excel) td.t{text-align:center!important}html.printmode table.sum.excel td.t{text-align:right!important}html.printmode table.form .inp,html.printmode table.sum .inp,html.printmode table.form .inp.num,html.printmode table.sum .inp.num,html.printmode .head-grid .fld .inp{text-align:center!important}html.printmode .head-grid .fld,html.printmode .head-grid .fld label{text-align:center}html.printmode .finalout>div{text-align:center}html.printmode .finalbar{justify-content:center}html.printmode .finalbar .fld,html.printmode .finalbar .btn{display:none!important}html.printmode .summary .box-head{background:#fff;color:var(--navy);border-bottom:2px solid var(--navy)}html.printmode .summary .box-head .sum{color:var(--navy)}html.printmode .finalbar{padding:3px 6px;gap:8px;break-inside:avoid}html.printmode .finalout div{font-size:9px}html.printmode .snapshot{font-size:8px;padding:3px 6px;break-inside:avoid}@media print{.topbar,.toolbar,.kpis,.wrap,.modal-head .btn,.rowbtn,.addrow,.no-print{display:none!important}body,.backdrop{background:#fff}}.signgrid{display:grid;grid-template-columns:92px repeat(3,minmax(0,1fr));gap:6px;background:var(--card);border:1px solid var(--line);border-radius:8px;padding:14px}.signhead{text-align:center;font-size:13px;font-weight:700;color:var(--ink);padding:7px 4px;border-bottom:1px solid var(--line)}.signlabel{display:grid;place-items:center;font-size:13px;font-weight:700}.signlabel.ok{color:var(--good)}.signlabel.no{color:var(--bad)}.signcell{height:34px;border:1px solid transparent;border-radius:5px;display:grid;place-items:center;padding:0;transition:filter .12s}.signcell.ok{background:#b8dec4}.signcell.no{background:#f0bcc0}.signcell.ok.on{background:#1e9e4a}.signcell.no.on{background:#dc2b36}.signcell:hover:not(.locked){filter:brightness(.94)}.signcell.locked{cursor:not-allowed;opacity:.5}.signcell .mark{width:17px;height:17px;border-radius:3px;background:#fff;border:1px solid rgba(0,0,0,.22);display:grid;place-items:center;font-size:12px;font-weight:700;color:var(--ink);line-height:1}.signcell.on .mark{color:var(--ink)}.signwho{text-align:center;padding:8px 4px;display:flex;flex-direction:column;gap:2px}.signwho b{font-size:13px}.signwho span{font-size:11.5px;color:var(--ink-3);font-variant-numeric:tabular-nums}.signwho .none{color:var(--ink-3);font-size:12px}.sigbadge{display:inline-flex;align-items:center;gap:4px;font-size:11.5px;font-weight:600}.sigbadge i{width:8px;height:8px;border-radius:2px;background:var(--line);display:block;font-style:normal}.sigbadge i.on{background:var(--good)}.note.bad-note{background:var(--bad-bg);border-color:#e9c3c8;color:var(--bad)}table.grid th.sortable{cursor:pointer;-webkit-user-select:none;user-select:none;white-space:nowrap}table.grid th.sortable:hover{background:var(--navy-bg);color:var(--navy)}.sortmark{font-style:normal;font-size:9px;margin-right:5px;color:#b4bacd}.sortmark.on{color:var(--red);font-size:10px}.finalbar.submitted{border-top:1px solid var(--line);background:#fff}.finalbar.submitted .fld .inp{border-color:var(--line);font-size:15px}.finalbar.submitted .finalout b{font-size:15px}.login-form .installrow{display:flex;justify-content:center;margin-top:4px}.mktnotes{background:#dce9f9;border:3.5px solid var(--navy);border-radius:10px;padding:14px 16px;margin-top:14px;box-shadow:0 2px 12px #1b216029}.mktnotes>label{display:flex;align-items:center;gap:8px;font-size:16px;font-weight:800;color:var(--navy);margin-bottom:8px}.mktnotes>label:before{content:"✎";display:grid;place-items:center;width:22px;height:22px;border-radius:6px;flex:none;background:var(--navy);color:#fff;font-size:13px}.mktnotes textarea.inp{width:100%;min-height:74px;resize:vertical;line-height:1.55;font-family:inherit;font-size:15.5px;font-weight:700;color:var(--ink);padding:10px 12px;height:auto;border:2px solid var(--navy-2);background:#fff}.mktnotes textarea.inp:focus{border-color:var(--navy);background:#fff}.mktnotes .riskline{margin:12px 0 0;padding:9px 12px;border-radius:7px;background:var(--warn-bg);border:1.5px solid #D9C27E;color:#6b5312;font-size:12.5px;font-weight:700}html.printmode .mktnotes{padding:5px 8px;margin-top:6px;break-inside:avoid;border:2.5px solid var(--navy);box-shadow:none;background:#dce9f9}html.printmode .mktnotes>label{font-size:11px;margin-bottom:3px;gap:5px}html.printmode .mktnotes>label:before{width:14px;height:14px;font-size:9px;border-radius:4px}html.printmode .mktnotes textarea.inp{min-height:30px;font-size:11px!important;font-weight:700!important;padding:3px 5px!important;border:1.5px solid var(--navy-2)!important;background:#fff!important}html.printmode .mktnotes .riskline{font-size:9px;padding:4px 7px;margin-top:5px;border-width:1px}.coltoggle{display:flex;justify-content:flex-end;padding:0 0 8px}.coltoggle .btn{font-size:11.5px;padding:4px 9px}html.printmode .coltoggle{display:none!important}.viewtoggle{display:flex;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden}.viewtoggle button{border:none;background:var(--card);color:var(--ink-2);padding:7px 16px;font-weight:500}.viewtoggle button:hover{background:var(--navy-bg);color:var(--ink)}.viewtoggle button.on{background:var(--navy);color:#fff;font-weight:600}.viewtoggle button.on:hover{background:var(--navy-2);color:#fff}.board{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;align-items:start}@media (max-width: 1100px){.board{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 640px){.board{grid-template-columns:minmax(0,1fr)}}.bcol{background:var(--card);border:1px solid var(--line);border-radius:8px;overflow:hidden}.bcol-head{display:flex;align-items:center;gap:8px;padding:11px 14px;border-bottom:2px solid var(--ink-3)}.bcol.submitted .bcol-head{border-bottom-color:var(--info)}.bcol.won .bcol-head{border-bottom-color:var(--good)}.bcol.lost .bcol-head{border-bottom-color:var(--bad)}.bcol-head b{font-size:13px;flex:1}.bcol-head .n{font-size:11.5px;color:var(--ink-3);font-variant-numeric:tabular-nums}.bcol-body{padding:10px;display:flex;flex-direction:column;gap:9px}.bempty{padding:22px 10px;text-align:center;color:var(--ink-3);font-size:12.5px}.qcard{border:1px solid var(--line-row);border-radius:7px;background:var(--card);padding:11px 12px;display:flex;flex-direction:column;gap:7px;text-align:right;width:100%;color:inherit;transition:border-color .12s,box-shadow .12s}.qcard:hover{border-color:var(--navy-2);box-shadow:var(--shadow)}.qcard:focus-visible{outline:2px solid var(--navy-2);outline-offset:1px}.qcard.urgent{border-color:#e9c3c8}.qcard-top{display:flex;align-items:baseline;gap:7px}.qcard-top b{font-size:13.5px}.qcard-top .cust{font-size:12.5px;color:var(--ink-2);flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.qcard-sub{font-size:11.5px;color:var(--ink-3)}.duetag{font-size:11.5px;font-weight:700;padding:2px 7px;border-radius:4px;white-space:nowrap}.duetag.soon{color:var(--warn);background:var(--warn-bg)}.duetag.late{color:var(--bad);background:var(--bad-bg)}.qcard-foot{display:flex;align-items:baseline;gap:8px;border-top:1px solid var(--line-2);padding-top:7px}.qcard-foot .total{font-size:15px;color:var(--navy);font-variant-numeric:tabular-nums}.qcard-foot .marg{font-size:12px;font-weight:600;font-variant-numeric:tabular-nums}.qcard-foot .marg.good{color:var(--good)}.qcard-foot .marg.warn{color:var(--warn)}.qcard-foot .marg.bad{color:var(--bad)}.qcard-foot .sep{flex:1}.bcancelled{display:flex;align-items:center;gap:8px;padding:2px;color:var(--ink-3);font-size:12px}.printonly{display:none!important}html.printmode .printonly{display:inline-flex!important}html.printmode .printlogo{align-items:center;flex-shrink:0;margin-left:10px}html.printmode .printlogo img{height:30px!important}html.printmode table.sum.excel tr.catrow,html.printmode table.sum.excel th.pcthead,html.printmode table.sum.excel td.pctcell{display:none!important}table.form tbody tr.repeatrow td{background:#fdeff4}table.form tbody tr.repeatrow:hover td{background:#fbe4ec}.hintbar .repeatkey{display:inline-block;width:11px;height:11px;border-radius:3px;background:#fdeff4;border:1px solid #E8B9CC;vertical-align:-1px}table.sum.excel tr.finalrow td.pricecell .curwrap{justify-content:center;gap:4px}table.sum.excel tr.finalrow td.pricecell .curwrap .inp{width:4.2em;min-width:2.2em;max-width:6.5em;text-align:left;field-sizing:content}table.sum.excel tr.finalrow td.pricecell .curwrap i{font-size:16px;font-weight:800;color:#a31226}.loginpage{min-height:100vh;display:grid;grid-template-columns:1.12fr 1fr;background:#fff}.loginpage .lp-brand{background:var(--navy);color:#fff;padding:38px;position:relative;overflow:hidden;isolation:isolate;display:flex;flex-direction:column;justify-content:space-between}.loginpage .lp-lines{position:absolute;top:0;right:0;bottom:0;left:0;z-index:-1;pointer-events:none;background:repeating-linear-gradient(130deg,transparent 0 58px,#ffffff14 59px 60px);-webkit-mask-image:linear-gradient(0deg,#000,transparent);mask-image:linear-gradient(0deg,#000,transparent)}.loginpage .lp-brand img{width:auto;max-width:160px;object-fit:contain;object-position:right center}.loginpage .lp-copy{margin-block:40px}.loginpage .lp-eyebrow{font-size:12px;letter-spacing:.4px;color:#dde1ec}.loginpage .lp-copy h1{font-family:Rubik,Heebo,sans-serif;font-size:38px;line-height:1.3;font-weight:500;letter-spacing:-1px;margin:14px 0 22px}.loginpage .lp-rule{width:45px;height:4px;background:var(--red)}.loginpage .lp-copy p{color:#dde1ec;margin:22px 0 0}.loginpage .lp-foot{font-size:11px;color:#dde1ec;display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap}.loginpage .lp-form-area{background:#fff;padding:40px;display:flex;align-items:center;justify-content:center}.loginpage .lp-form{width:100%;max-width:310px}.loginpage .lp-kicker{color:var(--ink-2);font-size:12px}.loginpage .lp-form h2{font-family:Rubik,Heebo,sans-serif;font-size:26px;font-weight:500;margin:10px 0 6px;color:var(--ink)}.loginpage .lp-sub{color:var(--ink-2);margin:0 0 30px}.loginpage .lp-label{display:block;margin-block:17px;font-size:13px;font-weight:500;color:var(--ink)}.loginpage .lp-label input{display:block;width:100%;min-width:0;height:43px;border:1px solid #CBD0DF;background:#fbfcfe;border-radius:5px;padding:11px;margin-block-start:7px;color:var(--ink);font-size:15px;font-weight:400}.loginpage .lp-label input:focus{outline:2px solid var(--navy-bg);border-color:var(--navy-2);background:#fff}.loginpage .lp-pass{position:relative;display:block}.loginpage .lp-pass input{padding-inline-end:42px}.loginpage .lp-eye{position:absolute;inset-inline-end:8px;inset-block-start:20px;background:transparent;border:0;color:var(--ink-2);display:flex;padding:4px;border-radius:4px}.loginpage .lp-eye:hover{color:var(--navy);background:var(--navy-bg)}.loginpage .lp-enter{display:flex;align-items:center;justify-content:space-between;width:100%;background:var(--navy);color:#fff;border:0;padding:12px 16px;border-radius:5px;margin-block:25px;font-size:15px;font-weight:500}.loginpage .lp-enter:hover:not(:disabled){background:var(--navy-2)}.loginpage .lp-enter:disabled{opacity:.45;cursor:not-allowed}.loginpage .lp-err{background:var(--bad-bg);border:1px solid #E9C3C8;color:var(--bad);border-radius:5px;padding:9px 12px;font-size:13px;margin-block:16px 0}.loginpage .lp-help{font-size:12px;color:var(--ink-2);line-height:1.7;margin:0}.loginpage .lp-install{display:flex;justify-content:center;margin-block-start:18px}@media (max-width: 860px){.loginpage{grid-template-columns:1fr;min-height:100vh}.loginpage .lp-brand{padding:24px}.loginpage .lp-copy{margin-block:26px}.loginpage .lp-copy h1{font-size:28px;margin:12px 0 18px}.loginpage .lp-form-area{padding:28px 20px 40px;align-items:flex-start}}@media (max-width: 520px){.loginpage .lp-brand{padding:20px}.loginpage .lp-brand img{max-width:132px}.loginpage .lp-copy{margin-block:20px}.loginpage .lp-copy h1{font-size:25px}.loginpage .lp-copy p,.loginpage .lp-foot{display:none}}.appshell .topbar{height:auto;padding:12px 24px;gap:20px;border-bottom:3px solid var(--red)}.appshell .topbar img{height:47px!important;max-width:115px;object-fit:contain}.appshell .topbar h1{font-size:14px;font-weight:500;color:#fff;padding-right:20px;border-right:1px solid #ffffff30}.appshell .pagetitle{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap}.appshell .pagetitle .eyebrow{color:var(--ink-2);font-size:12px}.appshell .pagetitle h2{font-family:Rubik,Heebo,sans-serif;font-size:24px;font-weight:500;margin:4px 0 0;color:var(--ink)}.appshell .pagetitle .btn.primary{background:var(--navy);border-color:var(--navy);color:#fff;border-radius:5px;padding:9px 15px;white-space:nowrap;font-weight:500}.appshell .pagetitle .btn.primary:hover{background:var(--navy-2);border-color:var(--navy-2)}.appshell .kpis{grid-template-columns:repeat(4,minmax(0,1fr));gap:0;background:var(--card);border:1px solid var(--line);border-radius:6px;padding:16px 0}.appshell .kpi{background:transparent;border:0;border-radius:0;box-shadow:none;padding:0 18px;border-inline-end:1px solid var(--line);display:flex;flex-direction:column;gap:5px;min-width:0}.appshell .kpi:last-child{border-inline-end:0}.appshell .kpi span{font-size:12px;color:var(--ink-2)}.appshell .kpi b{font-family:Rubik,Heebo,sans-serif;font-size:24px;font-weight:500;color:var(--navy);white-space:nowrap}.appshell .kpi.accent b{color:var(--red)}@media (max-width: 760px){.appshell .kpis{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:16px}.appshell .kpi:nth-child(2n){border-inline-end:0}}.appshell .toolbar input[type=text],.appshell .toolbar select{border-radius:5px}.appshell .viewtoggle{border-radius:5px;padding:3px;border-color:var(--line);background:var(--card)}.appshell .viewtoggle button{border-radius:3px;padding:5px 12px;font-size:12.5px}.appshell .board{gap:12px}.appshell .bcol{border:0;background:transparent;border-radius:0;overflow:visible}.appshell .bcol-head{padding:9px 2px;border-bottom:0;border-top:3px solid var(--ink-3);font-weight:500}.appshell .bcol.submitted .bcol-head{border-top-color:var(--info)}.appshell .bcol.won .bcol-head{border-top-color:var(--good)}.appshell .bcol.lost .bcol-head{border-top-color:var(--bad)}.appshell .bcol-body{padding:0;gap:10px}.appshell .qcard{border:1px solid var(--line);border-radius:6px;padding:13px;gap:0;transition:border-color .12s}.appshell .qcard:hover{border-color:var(--navy);box-shadow:none}.appshell .qcard-top{font-size:12px}.appshell .qcard-top .cust{font-size:13px;color:var(--ink);font-weight:500}.appshell .qcard-sub{margin-block-start:6px;overflow-wrap:anywhere;white-space:normal}.appshell .qcard-foot{margin-block-start:11px;padding-block-start:9px;border-top:1px solid var(--line-2)}.appshell .qcard-foot .total{font-family:Rubik,Heebo,sans-serif;font-size:20px;font-weight:500}.appshell .tablecard{border-radius:5px;box-shadow:none}.appshell table.grid th{background:#e9ecf3;color:var(--navy);font-weight:500}.appshell table.grid th.key{background:#dfe4ef}.appshell .statdash{display:flex;flex-direction:column;gap:14px}.appshell .dg-bar{display:flex;align-items:center;gap:14px;flex-wrap:wrap;background:var(--card);border:1px solid var(--line);border-radius:6px;padding:10px 14px}.appshell .dg-spacer{flex:1}.appshell .dg-count{font-size:12.5px;color:var(--ink-2)}.appshell .dg-seg{display:inline-flex;border:1px solid var(--line);border-radius:5px;overflow:hidden}.appshell .dg-seg button{border:0;background:var(--card);color:var(--ink-2);padding:7px 14px;font-size:12.5px;border-inline-start:1px solid var(--line)}.appshell .dg-seg button:first-child{border-inline-start:0}.appshell .dg-seg button:hover{background:var(--navy-bg);color:var(--ink)}.appshell .dg-seg button.on{background:var(--navy);color:#fff;font-weight:500}.appshell .dg-seg.small button{padding:5px 11px;font-size:12px}.appshell .dg-more{border:1px solid var(--line);background:var(--card);color:var(--ink-2);padding:7px 13px;border-radius:5px;font-size:12.5px}.appshell .dg-more.on{border-color:var(--navy);color:var(--navy)}.appshell .dg-filters{display:flex;gap:22px;flex-wrap:wrap;background:var(--card);border:1px solid var(--line);border-radius:6px;padding:14px 16px}.appshell .dg-f{display:flex;flex-direction:column;gap:5px}.appshell .dg-f>span{font-size:11.5px;color:var(--ink-2);font-weight:500}.appshell .dg-f select[multiple]{border:1px solid var(--line);border-radius:5px;padding:4px;min-width:150px;font-size:12.5px;color:var(--ink);background:var(--card)}.appshell .dg-fcol{display:flex;flex-direction:column;gap:10px}.appshell .dg-pair{display:flex;gap:6px}.appshell .dg-pair .inp{width:78px}.appshell .dg-check{display:flex;align-items:center;gap:7px;font-size:12.5px;color:var(--ink-2)}.appshell .dg-frange{display:flex;align-items:center;gap:6px;font-size:11.5px;color:var(--ink-2)}.appshell .dg-frange .inp{width:130px}.appshell .dg-hero{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.appshell .dg-h{background:var(--card);border:1px solid var(--line);border-radius:8px;padding:16px 18px;display:flex;flex-direction:column;gap:7px;min-width:0}.appshell .dg-h.alert{border-color:#e9c3c8;background:#fffbfb}.appshell .dg-h-l{font-size:12.5px;color:var(--ink-2)}.appshell .dg-h-v{font-family:Rubik,Heebo,sans-serif;font-size:34px;font-weight:500;line-height:1;color:var(--navy);white-space:nowrap}.appshell .dg-h-v.good{color:var(--good)}.appshell .dg-h-v.bad{color:var(--bad)}.appshell .dg-h-sub{font-size:11.5px;color:var(--ink-3)}.appshell .dg-h-sub b{color:var(--ink-2);font-weight:600}.appshell .dg-delta{font-size:11.5px;font-weight:600}.appshell .dg-delta.good{color:var(--good)}.appshell .dg-delta.bad{color:var(--bad)}.appshell .dg-delta.flat{color:var(--ink-3);font-weight:400}.appshell .dg-badge{align-self:flex-start;font-size:11px;font-weight:600;padding:2px 9px;border-radius:20px}.appshell .dg-badge.good{background:var(--good-bg);color:var(--good)}.appshell .dg-badge.bad{background:var(--bad-bg);color:var(--bad)}.appshell .dg-meter{display:block;height:7px;border-radius:4px;background:var(--line-2);overflow:hidden}.appshell .dg-meter span{display:block;height:100%;background:var(--navy);border-radius:4px}@media (max-width: 1100px){.appshell .dg-hero{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 620px){.appshell .dg-hero{grid-template-columns:minmax(0,1fr)}}.appshell .dg-card{background:var(--card);border:1px solid var(--line);border-radius:8px;overflow:hidden}.appshell .dg-card.attention{border-color:#e9c3c8}.appshell .dg-card-h{display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding:12px 16px;border-bottom:1px solid var(--line-2)}.appshell .dg-card-h h3{margin:0;font-size:14px;font-weight:600}.appshell .dg-card-h small{font-size:11.5px;color:var(--ink-3)}.appshell .dg-card-h .dg-seg{margin-inline-start:auto}.appshell .dg-card-b{padding:18px 16px}.appshell .dg-scroll{overflow:auto}.appshell .dg-acts{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}.appshell .dg-act{padding:14px 16px;border-inline-end:1px solid var(--line-2)}.appshell .dg-act:last-child{border-inline-end:0}.appshell .dg-act>b{font-family:Rubik,Heebo,sans-serif;font-size:26px;font-weight:500;color:var(--warn);display:block;line-height:1}.appshell .dg-act.bad>b{color:var(--bad)}.appshell .dg-act>span{display:block;font-size:12.5px;color:var(--ink);margin-top:5px}.appshell .dg-act>small{display:block;font-size:11.5px;color:var(--ink-3);margin-top:2px}.appshell .dg-act ul{list-style:none;margin:9px 0 0;padding:0;display:flex;flex-direction:column;gap:3px}.appshell .dg-act li button{border:0;background:transparent;padding:2px 0;text-align:start;font-size:11.5px;color:var(--navy);text-decoration:underline;text-underline-offset:2px}.appshell .dg-act li button:hover{color:var(--red)}.appshell .dg-act li.more{font-size:11px;color:var(--ink-3)}.appshell .dg-custs{display:grid;grid-template-columns:repeat(auto-fill,minmax(238px,1fr));gap:12px;padding:16px}.appshell .dg-cust{border:1px solid var(--line);border-radius:7px;background:var(--card);padding:13px 14px;display:flex;flex-direction:column;gap:7px;text-align:start;color:inherit;transition:border-color .12s}.appshell .dg-cust:hover{border-color:var(--navy)}.appshell .dg-cust-top{display:flex;align-items:baseline;gap:8px}.appshell .dg-cust-top b{font-size:13.5px;flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.appshell .dg-cust-top i{font-style:normal;font-size:11px;color:var(--ink-3);white-space:nowrap}.appshell .dg-cust-val{font-family:Rubik,Heebo,sans-serif;font-size:22px;font-weight:500;color:var(--navy)}.appshell .dg-cust-bar{display:block;height:5px;border-radius:3px;background:var(--line-2);overflow:hidden}.appshell .dg-cust-bar span{display:block;height:100%;background:var(--navy);border-radius:3px}.appshell .dg-cust-facts{display:flex;gap:14px;margin-top:2px}.appshell .dg-cust-facts>span{display:flex;flex-direction:column;gap:1px}.appshell .dg-cust-facts em{font-style:normal;font-size:10.5px;color:var(--ink-3)}.appshell .dg-cust-facts b{font-size:13px;font-variant-numeric:tabular-nums}.appshell .dg-cust-facts b.good{color:var(--good)}.appshell .dg-cust-facts b.bad{color:var(--bad)}.appshell .dg-cust-flag{align-self:flex-start;font-size:10.5px;font-weight:600;background:var(--bad-bg);color:var(--bad);padding:2px 8px;border-radius:20px}.appshell .dg-rest{padding:0 16px 14px;font-size:12px;color:var(--ink-3)}.appshell .dg-plot{position:relative;display:flex;gap:8px;align-items:flex-start;overflow-x:auto}.appshell .dg-target{position:absolute;inset-inline:0;height:0;z-index:2;pointer-events:none;border-top:2px dashed var(--navy);opacity:.8}.appshell .dg-target i{position:absolute;inset-inline-end:0;top:-17px;font-style:normal;font-size:10.5px;color:var(--navy);background:var(--card);padding:0 5px}.appshell .dg-col{flex:1 0 42px;display:flex;flex-direction:column;align-items:center}.appshell .dg-col-v{font-size:10.5px;font-weight:600;color:var(--ink-2);font-variant-numeric:tabular-nums;height:15px;white-space:nowrap}.appshell .dg-col-plot{width:100%;display:flex;align-items:flex-end}.appshell .dg-col-plot i{display:block;width:100%;background:var(--navy);border-radius:4px 4px 0 0}.appshell .dg-col-plot i.under{background:var(--warn)}.appshell .dg-col-plot i.none{height:2px;background:var(--line);border-radius:2px}.appshell .dg-col-l{font-size:10.5px;color:var(--ink-3);margin-top:6px;white-space:nowrap}.appshell .dg-mix{display:flex;gap:2px;height:36px;border-radius:5px;overflow:hidden}.appshell .dg-mix-seg{display:flex;align-items:center;justify-content:center;min-width:2px}.appshell .dg-mix-seg b{font-size:12px;color:#fff;font-weight:700;text-shadow:0 1px 2px rgba(0,0,0,.35)}.appshell .dg-legend{display:flex;gap:10px 18px;flex-wrap:wrap;margin-top:12px;font-size:11.5px;color:var(--ink-2)}.appshell .dg-legend span{display:inline-flex;align-items:center;gap:6px}.appshell .dg-legend i{width:10px;height:10px;border-radius:3px;flex-shrink:0}.appshell table.dg-table td.num{text-align:left;font-variant-numeric:tabular-nums}.appshell table.dg-table .good{color:var(--good)}.appshell table.dg-table .bad{color:var(--bad)}.appshell .dg-toggle{border:1px dashed var(--line);background:transparent;color:var(--ink-2);padding:10px;border-radius:6px;font-size:12.5px;text-align:center}.appshell .dg-toggle:hover{border-color:var(--navy);color:var(--navy)}.appshell .fbar{background:var(--card);border:1px solid var(--line);border-radius:10px;padding:12px 14px;display:flex;flex-direction:column;gap:10px;box-shadow:0 1px 2px #161a330a}.appshell .fbar-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.appshell .fbar-row.sub{gap:18px;padding-top:2px;border-top:1px solid var(--line-2)}.appshell .fbar-gap{flex:1}.appshell .fbar-n{font-size:12.5px;color:var(--ink-2);font-weight:500;white-space:nowrap}.appshell .fsearch{display:inline-flex;align-items:center;gap:8px;flex:1;min-width:210px;max-width:340px;border:1px solid var(--line);border-radius:8px;background:var(--card);padding:0 11px;height:34px;color:var(--ink-3)}.appshell .fsearch:focus-within{border-color:var(--navy-2);color:var(--navy)}.appshell .fsearch input{border:0;background:transparent;flex:1;min-width:0;height:100%;font-size:12.5px;color:var(--ink);outline:none}.appshell .fadv{display:inline-flex;align-items:center;gap:7px;font-size:12px;color:var(--ink-2)}.appshell .fadv em{font-style:normal;color:var(--ink-3)}.appshell .fnum,.appshell .fdate{border:1px solid var(--line);border-radius:7px;background:var(--card);height:30px;padding:0 9px;font-size:12.5px;color:var(--ink);font-family:inherit}.appshell .fnum{width:74px;text-align:center}.appshell .fdate{width:136px}.appshell .fnum:focus,.appshell .fdate:focus{outline:none;border-color:var(--navy-2)}.appshell .fcheck{display:inline-flex;align-items:center;gap:7px;font-size:12px;color:var(--ink-2)}.appshell .fp{position:relative}.appshell .fp-btn{display:inline-flex;align-items:center;gap:7px;height:34px;border:1px solid var(--line);border-radius:8px;background:var(--card);color:var(--ink-2);padding:0 12px;font-size:12.5px;white-space:nowrap}.appshell .fp-btn:hover{border-color:var(--navy-2);color:var(--ink)}.appshell .fp-btn.on{border-color:var(--navy);color:var(--navy);background:var(--navy-bg);font-weight:500}.appshell .fp-btn em{font-style:normal;background:var(--navy);color:#fff;border-radius:20px;min-width:18px;height:18px;display:inline-grid;place-items:center;font-size:11px;font-weight:600;padding:0 5px}.appshell .fp-btn i{font-style:normal;font-size:10px;color:var(--ink-3)}.appshell .fp-veil{position:fixed;top:0;right:0;bottom:0;left:0;z-index:30}.appshell .fp-pop{position:absolute;inset-inline-start:0;top:calc(100% + 6px);z-index:31;min-width:208px;max-width:300px;background:var(--card);border:1px solid var(--line);border-radius:9px;box-shadow:0 6px 24px #161a3324;overflow:hidden}.appshell .fp-list{max-height:244px;overflow:auto;padding:5px}.appshell .fp-list label{display:flex;align-items:center;gap:8px;padding:7px 9px;border-radius:6px;font-size:12.5px;color:var(--ink);cursor:pointer}.appshell .fp-list label:hover{background:var(--navy-bg)}.appshell .fp-list label.on{color:var(--navy);font-weight:500}.appshell .fp-list label span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.appshell .fp-foot{display:flex;gap:8px;padding:8px 9px;border-top:1px solid var(--line-2);background:#fbfcfe}.appshell .fp-foot button{flex:1;border:1px solid var(--line);background:var(--card);color:var(--ink-2);border-radius:6px;padding:6px;font-size:12px}.appshell .fp-foot button:disabled{opacity:.45}.appshell .fp-foot button.prim{background:var(--navy);border-color:var(--navy);color:#fff}.appshell .fchips{display:flex;gap:6px;flex-wrap:wrap;align-items:center;padding-top:2px}.appshell .fchip{display:inline-flex;align-items:center;gap:6px;background:var(--navy-bg);border:1px solid #CDD4EA;color:var(--navy);border-radius:20px;padding:3px 10px;font-size:11.5px;font-weight:500}.appshell .fchip:hover{background:#e1e6f6;border-color:var(--navy-2)}.appshell .fchip i{font-style:normal;font-size:10px;opacity:.65}.appshell .fclear{border:0;background:transparent;color:var(--bad);font-size:11.5px;padding:3px 6px;text-decoration:underline;text-underline-offset:2px}.appshell .dn-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}@media (max-width: 1160px){.appshell .dn-row{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 720px){.appshell .dn-row{grid-template-columns:minmax(0,1fr)}}.appshell .dn-wrap{display:flex;flex-direction:column;align-items:center;gap:14px}.appshell .dn{position:relative;flex-shrink:0}.appshell .dn svg{display:block}.appshell .dn-mid{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;pointer-events:none;text-align:center}.appshell .dn-mid b{font-family:Rubik,Heebo,sans-serif;font-size:19px;font-weight:500;color:var(--ink);line-height:1.1}.appshell .dn-mid span{font-size:10.5px;color:var(--ink-3);margin-top:2px}.appshell .dn-key{list-style:none;margin:0;padding:0;width:100%;display:flex;flex-direction:column;gap:5px}.appshell .dn-key li{display:grid;grid-template-columns:10px 1fr auto auto;gap:8px;align-items:center;font-size:11.5px;color:var(--ink-2)}.appshell .dn-key i{width:10px;height:10px;border-radius:3px}.appshell .dn-key-n{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.appshell .dn-key b{font-size:12px;color:var(--ink);font-variant-numeric:tabular-nums}.appshell .dn-key em{font-style:normal;font-size:11px;color:var(--ink-3);font-variant-numeric:tabular-nums;min-width:58px;text-align:left}.appshell .dg-card,.appshell .dg-h{border-radius:10px;box-shadow:0 1px 2px #161a330a}.appshell .dg-cust{border-radius:9px}.appshell .dg-card-h{padding:13px 16px}.appshell .dg-toggle{border-radius:8px}
