:root{--bg:#f1f5f6;--surface:#fff;--surface-soft:#f7faf9;--ink:#102b2c;--muted:#708482;--line:#dfe8e6;--brand:#0b887a;--brand-deep:#075f58;--brand-soft:#e1f4f0;--nav:#0a2427;--nav-soft:#12363a;--gold:#d3a65b;--green:#087f61;--red:#c34755;--shadow:0 12px 34px #0d303014;--shadow-strong:0 22px 60px #08232524}*{box-sizing:border-box}html{background:var(--bg)}body{color:var(--ink);background:var(--bg);margin:0;font-family:Microsoft YaHei UI,PingFang SC,Inter,system-ui,sans-serif}button,input,select,textarea{font:inherit}button{cursor:pointer}a{color:inherit;text-decoration:none}.app-shell{grid-template-columns:252px minmax(0,1fr);min-height:100vh;display:grid}.sidebar{color:#fff;z-index:30;background:radial-gradient(circle at 10% 0,#23ab9742,#0000 34%),linear-gradient(165deg,#0c2d31 0%,#071d20 58%,#061719 100%);flex-direction:column;height:100vh;padding:28px 20px 22px;display:flex;position:sticky;top:0;overflow:hidden;box-shadow:12px 0 42px #0822241f}.sidebar:after{content:"";pointer-events:none;border:1px solid #ffffff0d;border-radius:50%;width:220px;height:220px;position:absolute;bottom:-110px;left:-72px;box-shadow:0 0 0 34px #ffffff05,0 0 0 68px #ffffff03}.side-brand{z-index:1;background:0 0;place-items:center;width:100%;min-height:72px;padding:8px 4px;display:grid;position:relative}.brand-lockup-image{z-index:1;object-fit:contain;width:100%;height:auto;position:relative}.side-nav{z-index:1;gap:8px;margin-top:22px;display:grid;position:relative}.side-nav a{color:#a9c0bf;border:1px solid #0000;border-radius:15px;align-items:center;gap:12px;min-height:66px;padding:11px 13px;transition:all .2s;display:flex}.side-nav a:hover{color:#fff;background:#ffffff0e}.side-nav a.active{color:#fff;background:linear-gradient(135deg,#1d918257,#14504f3d);border-color:#86e1d22e;box-shadow:inset 3px 0 #57d1bd,0 12px 30px #0000001a}.nav-icon{color:#83b8b0;background:#ffffff0e;border-radius:11px;flex:none;place-items:center;width:36px;height:36px;display:grid}.side-nav a.active .nav-icon{color:#0b3737;background:#8de0d1;box-shadow:0 8px 18px #2ec6ad33}.side-nav strong,.side-nav small{display:block}.side-nav strong{color:inherit;font-size:14px}.side-nav small{color:#789a98;margin-top:4px;font-size:10px}.side-nav a.active small{color:#a8ceca}.side-status{z-index:1;background:#ffffff0b;border:1px solid #ffffff14;border-radius:15px;align-items:center;gap:11px;margin-top:auto;padding:13px;display:flex;position:relative}.status-icon{color:#9be6d9;background:#4ccab51f;border-radius:10px;place-items:center;width:34px;height:34px;display:grid}.side-status strong,.side-status small{display:block}.side-status strong{font-size:12px}.side-status small{color:#7fa09e;margin-top:5px;font-size:10px}.side-status i{background:#55d29a;border-radius:50%;width:6px;height:6px;margin-right:4px;display:inline-block;box-shadow:0 0 0 3px #55d29a1f}.workspace{background:radial-gradient(circle at 92% 0, #6cd3c126, transparent 27%), linear-gradient(180deg, #f8fbfb 0, var(--bg) 460px);flex-direction:column;min-width:0;min-height:100vh;display:flex}.workspace-bar{z-index:20;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#f8fbfbd6;border-bottom:1px solid #d5e3e0e6;justify-content:flex-end;align-items:center;height:74px;padding:0 34px;display:flex;position:sticky;top:0}.workspace-bar span,.workspace-bar strong{display:block}.workspace-bar>div:first-child span{color:#829694;letter-spacing:1.5px;font-size:10px;font-weight:800}.workspace-bar>div:first-child strong{letter-spacing:-.2px;margin-top:4px;font-size:15px}.secure-pill{color:var(--brand-deep);background:#e8f7f4e6;border:1px solid #cfe8e3;border-radius:999px;align-items:center;gap:8px;padding:8px 12px;font-size:11px;font-weight:750;display:flex}.workspace-security{align-items:center;gap:9px;display:flex}.logout-button{color:#627875;background:#ffffffc7;border:1px solid #d9e6e3;border-radius:999px;align-items:center;gap:6px;min-height:34px;padding:0 11px;font-size:11px;font-weight:800;display:inline-flex}.logout-button:hover{color:var(--brand-deep);background:#fff;border-color:#bcd8d2}.logout-button:disabled{opacity:.55}.app-content{flex:1;width:100%;max-width:1640px;margin:0 auto;padding:32px 36px 22px}footer{color:#92a3a1;text-align:center;letter-spacing:.6px;padding:18px 34px 25px;font-size:10px}.login-page{background:#f4f8f7;grid-template-columns:minmax(420px,.92fr) minmax(500px,1.08fr);min-height:100vh;display:grid;overflow:hidden}.login-brand-panel{color:#fff;background:radial-gradient(circle at 18% 15%,#4bd6be40,#0000 29%),radial-gradient(circle at 85% 82%,#49ab9e2e,#0000 32%),linear-gradient(150deg,#0d383b 0%,#08282b 46%,#061c1f 100%);align-items:center;min-height:100vh;padding:54px 58px 42px;display:flex;position:relative;overflow:hidden}.login-brand-panel:before{content:"";opacity:.18;background-image:linear-gradient(#ffffff0e 1px,#0000 1px),linear-gradient(90deg,#ffffff0e 1px,#0000 1px);background-size:42px 42px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(to bottom right,#000,#0000 72%);mask-image:linear-gradient(to bottom right,#000,#0000 72%)}.login-orbit{pointer-events:none;border:1px solid #8be5d621;border-radius:50%;position:absolute}.orbit-one{width:510px;height:510px;top:-210px;left:-255px;box-shadow:0 0 0 46px #ffffff04,0 0 0 92px #ffffff03}.orbit-two{width:360px;height:360px;bottom:-155px;right:-190px;box-shadow:0 0 0 36px #ffffff03,0 0 0 72px #ffffff02}.login-brand-content{z-index:1;width:min(520px,100%);margin:0 auto;position:relative}.login-logo{object-fit:contain;width:min(470px,100%);height:auto}.login-divider{background:linear-gradient(90deg,#71dac8,#d5ad68);border-radius:99px;width:48px;height:3px;margin:38px 0 24px;box-shadow:0 0 22px #71dac859}.login-brand-content>p{color:#d9e9e6;letter-spacing:-.6px;max-width:430px;margin:0;font-size:clamp(20px,2vw,31px);font-weight:650;line-height:1.55}.login-trust{color:#9fc4bf;background:#ffffff09;border:1px solid #97d7cd24;border-radius:999px;align-items:center;gap:8px;width:max-content;max-width:100%;margin-top:29px;padding:10px 13px;font-size:11px;font-weight:750;display:flex}.login-trust svg{color:#71dac8}.login-edition{z-index:1;color:#537b79;letter-spacing:2.1px;font-size:9px;font-weight:850;position:absolute;bottom:38px;left:58px}.login-form-panel{background:radial-gradient(circle at 82% 8%,#34bea91c,#0000 26%),linear-gradient(150deg,#fbfdfd,#eff5f4);place-items:center;min-height:100vh;padding:50px;display:grid;position:relative}.login-form-panel:after{content:"";border:1px solid #0b887a14;border-radius:50%;width:190px;height:190px;position:absolute;top:22%;right:-90px;box-shadow:0 0 0 28px #0b887a06,0 0 0 56px #0b887a04}.login-card{z-index:1;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#ffffffe8;border:1px solid #ffffffe6;border-radius:27px;width:min(440px,100%);padding:42px;position:relative;box-shadow:0 32px 90px #0b373721,inset 0 1px #ffffffe6}.login-card:before{content:"";background:linear-gradient(90deg,#0000,#1ba994 30%,#78d9c9 70%,#0000);border-radius:0 0 8px 8px;height:3px;position:absolute;inset:0 28px auto}.login-card-head{margin-bottom:31px}.login-card-head>span{color:var(--brand);letter-spacing:2.2px;font-size:9px;font-weight:900}.login-card-head h1{color:#102e2f;letter-spacing:-1.2px;margin:10px 0 8px;font-size:30px}.login-card-head p{color:var(--muted);margin:0;font-size:12px}.login-field{margin-bottom:17px;display:block}.login-field>span{color:#385654;margin-bottom:8px;font-size:11px;font-weight:850;display:block}.login-field>div{color:#7f9693;background:#f9fcfb;border:1px solid #d5e3e0;border-radius:14px;align-items:center;gap:10px;height:50px;padding:0 14px;transition:all .18s;display:flex}.login-field>div:focus-within{color:var(--brand);background:#fff;border-color:#54b4a5;box-shadow:0 0 0 4px #0b887a14}.login-field input{height:46px;box-shadow:none;background:0 0;border:0;border-radius:0;flex:1;padding:0}.login-field input:hover,.login-field input:focus{box-shadow:none;background:0 0;border:0}.login-field button{color:#78908d;background:0 0;border:0;border-radius:8px;place-items:center;width:30px;height:30px;padding:0;display:grid}.login-field button:hover{color:var(--brand);background:var(--brand-soft)}.remember-login{color:#647b78;cursor:pointer;align-items:center;gap:8px;width:max-content;font-size:11px;font-weight:750;display:flex}.remember-login input{width:15px;height:15px;accent-color:var(--brand);padding:0}.login-error{color:#a52f3d;background:#fff4f5;border:1px solid #f1ccd1;border-radius:11px;margin-top:16px;padding:10px 12px;font-size:11px;font-weight:750}.login-submit{color:#fff;background:linear-gradient(135deg,#0c9786,#087267);border:0;border-radius:14px;justify-content:space-between;align-items:center;width:100%;height:50px;margin-top:23px;padding:0 18px;font-size:13px;font-weight:850;transition:all .18s;display:flex;box-shadow:0 14px 28px #0a84763d}.login-submit:hover{transform:translateY(-2px);box-shadow:0 18px 34px #0a84764d}.login-submit:disabled{opacity:.58;cursor:wait;transform:none}.login-footnote{color:#9aaba8;text-align:center;justify-content:center;align-items:center;gap:6px;margin:21px 0 0;font-size:9px;display:flex}.billing-card{padding:24px}.billing-head-grid{grid-template-columns:1.2fr .8fr 1fr 1fr;gap:14px;margin-bottom:19px;display:grid}.billing-head-grid .field>span,.billing-notes>span{color:#395856;font-size:11px;font-weight:800}.billing-lines-wrap{border:1px solid #dce7e5;border-radius:15px;max-width:100%;overflow-x:auto}.billing-lines{min-width:1200px}.billing-lines th:first-child,.billing-lines td:first-child{text-align:center;width:42px}.billing-lines th:nth-child(2){width:145px}.billing-lines th:nth-child(3){width:115px}.billing-lines th:nth-child(4){min-width:300px}.billing-lines th:nth-child(5),.billing-lines th:nth-child(6){width:90px}.billing-lines th:nth-child(7){width:60px}.billing-lines th:nth-child(8){width:95px}.billing-lines th:nth-child(9){width:115px}.billing-lines th:last-child{width:55px}.billing-lines td{vertical-align:middle}.billing-lines td>input{border-radius:9px;height:38px}.billing-lines tfoot td{color:#214441;background:#edf6f4;font-weight:850}.billing-lines tfoot td:first-child{text-align:right}.billing-catalog-input{gap:5px;display:flex}.billing-catalog-input input{min-width:0}.billing-catalog-input button{color:#fff;background:var(--brand);border:0;border-radius:9px;place-items:center;width:36px;min-width:36px;padding:0;display:grid}.billing-catalog-input button:hover{background:var(--brand-deep)}.catalog-quick-modal .field+.field{margin-top:14px}.billing-contract-badge{text-align:right;background:#edf7f5;border:1px solid #cde4df;border-radius:12px;padding:10px 14px}.billing-contract-badge span,.billing-contract-badge strong{display:block}.billing-contract-badge span{color:var(--muted);margin-bottom:4px;font-size:9px;font-weight:800}.billing-contract-badge strong{color:var(--brand-deep);font-size:18px}.roll-entry-button{color:#708482;text-align:left;background:#f8fbfa;border:1px dashed #bad1cc;border-radius:10px;flex-direction:column;align-items:flex-start;gap:4px;width:100%;min-height:40px;padding:8px 10px;font-size:11px;display:flex}.roll-entry-button:hover{color:var(--brand-deep);background:#eff8f6;border-color:#6eb9ad}.roll-entry-button.filled{background:#f1f8f6;border-style:solid;border-color:#c9dfda}.roll-entry-button strong{color:#174d48;text-overflow:ellipsis;white-space:nowrap;max-width:100%;overflow:hidden}.roll-entry-button small{color:#829693;font-size:9px}.billing-add-row{margin-top:12px}.billing-notes{width:100%;max-width:none;margin-top:16px}.billing-notes textarea{box-sizing:border-box;width:100%;max-width:none}.billing-form-actions{border-top:1px solid #e3ebe9;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:14px;margin-top:18px;padding-top:17px;display:flex}.billing-money-summary{flex-wrap:wrap}.billing-quantity-summary,.billing-money-summary{align-items:center;gap:8px;display:flex}.billing-quantity-summary span,.billing-money-summary>span{color:var(--muted);background:#f0f6f4;border-radius:10px;padding:9px 11px;font-size:10px}.billing-quantity-summary strong,.billing-money-summary strong{color:var(--ink);margin-left:4px;font-size:13px}.billing-money-summary label{min-width:145px;color:var(--muted);align-items:center;gap:7px;font-size:10px;font-weight:750;display:flex}.billing-money-summary label input{width:82px;height:36px;padding:0 8px}.billing-money-summary .contract-total{color:#fff;background:linear-gradient(135deg,#0b8f80,#087066)}.billing-money-summary .contract-total strong{color:#fff}.billing-saved-banner{color:#fff;background:linear-gradient(135deg,#0b8d7e,#087166);border-radius:16px;justify-content:space-between;align-items:center;gap:14px;margin:16px 0;padding:15px 17px;display:flex;box-shadow:0 15px 32px #0a7e712b}.billing-saved-banner strong,.billing-saved-banner span{display:block}.billing-saved-banner strong{font-size:13px}.billing-saved-banner span{color:#c1e2dc;margin-top:4px;font-size:10px}.billing-saved-banner .btn{color:var(--brand-deep);box-shadow:none;background:#b0eadf}.billing-history{margin-top:18px;padding:22px}.billing-filters{grid-template-columns:minmax(260px,1fr) 180px 180px auto;gap:9px;margin-bottom:14px;display:grid}.billing-search{height:44px;color:var(--muted);border:1px solid var(--line);background:#f8fbfa;border-radius:12px;align-items:center;gap:8px;padding:0 12px;display:flex}.billing-search input{height:40px;box-shadow:none;background:0 0;border:0;padding:0}.billing-search input:focus{box-shadow:none}.billing-history-table{min-width:760px}.billing-history-actions{white-space:nowrap;align-items:center;gap:6px;display:flex}.roll-modal{width:min(760px,100%)}.roll-textarea{min-height:108px;line-height:1.65}.roll-chips{background:#f6faf9;border:1px solid #dfe9e7;border-radius:12px;flex-wrap:wrap;gap:6px;max-height:105px;margin:10px 0 15px;padding:10px;display:flex;overflow-y:auto}.roll-chips button{color:#194d48;background:#dff2ee;border:0;border-radius:8px;align-items:center;gap:4px;padding:5px 7px 5px 9px;font-size:11px;font-weight:800;display:flex}.roll-operation{grid-template-columns:1fr 1fr;gap:11px;display:grid}.roll-operation label{color:#395856;flex-direction:column;gap:7px;font-size:11px;font-weight:800;display:flex}.roll-preview{grid-template-columns:110px 1fr 130px;gap:8px;margin-top:15px;display:grid}.roll-preview>div{background:#edf6f4;border-radius:11px;min-width:0;padding:11px 12px}.roll-preview span,.roll-preview strong{display:block}.roll-preview span{color:var(--muted);margin-bottom:5px;font-size:9px}.roll-preview strong{color:#174d48;max-height:48px;font-size:12px;line-height:1.55;overflow:auto}.roll-modal-error{margin-top:11px}.bill-print-page{color:#111;background:#e8eeee;min-height:100vh;padding:28px;font-family:SimSun,Songti SC,serif}.bill-print-toolbar{color:#617572;justify-content:space-between;align-items:center;width:min(1120px,100%);margin:0 auto 14px;font-size:11px;display:flex}.bill-layout-actions{justify-content:flex-end;align-items:center;gap:8px;display:flex}.bill-edit-mode{background:#eef4f3;border:1px solid #c8d9d6;border-radius:10px;gap:2px;height:36px;padding:3px;display:flex}.bill-edit-mode button{color:#5a716e;cursor:pointer;background:0 0;border:0;border-radius:7px;align-items:center;gap:5px;padding:0 9px;font-size:11px;font-weight:700;display:inline-flex}.bill-edit-mode button.active{color:#0b756a;background:#fff;box-shadow:0 2px 8px #1648421a}.bill-layout-field{color:#395b57;align-items:center;gap:7px;height:36px;font-family:Microsoft YaHei,sans-serif;font-size:12px;font-weight:600;display:flex}.bill-layout-field select{color:#173f3b;background:#fff;border:1px solid #c8d9d6;border-radius:9px;min-width:116px;height:34px;padding:0 28px 0 10px}.bill-layout-scale input{accent-color:#168a7c;width:112px}.bill-layout-scale strong{color:#14786e;font-variant-numeric:tabular-nums;min-width:37px}.bill-font-step{color:#176e65;cursor:pointer;background:#fff;border:1px solid #c8d9d6;border-radius:7px;place-items:center;width:28px;height:28px;padding:0;font-size:15px;font-weight:800;display:inline-grid}.bill-font-step:hover{background:#eaf6f3}.bill-color-field input[type=color]{cursor:pointer;background:#fff;border-radius:7px;width:34px;height:30px;padding:2px}.bill-color-field strong{color:#536967;min-width:58px;font-family:ui-monospace,monospace;font-size:10px}.bill-layout-nudge{background:#fff;border:1px solid #c8d9d6;border-radius:9px;grid-template-columns:repeat(4,30px);height:34px;display:grid;overflow:hidden}.bill-layout-nudge button{color:#235b55;cursor:pointer;background:0 0;border:0;border-right:1px solid #e1eae8;font-size:14px}.bill-layout-nudge button:last-child{border-right:0}.bill-layout-nudge button:hover{background:#eaf6f3}.bill-layout-status{color:#168a7c;font-family:Microsoft YaHei,sans-serif;font-size:12px}.spin{animation:.8s linear infinite bill-spin}@keyframes bill-spin{to{transform:rotate(360deg)}}.bill-layout-tip{color:#22675f;background:#f2fbf9;border:1px dashed #6db3aa;border-radius:10px;justify-content:center;align-items:center;gap:7px;width:min(1120px,100%);margin:-4px auto 10px;padding:9px 13px;font-family:Microsoft YaHei,sans-serif;font-size:12px;display:flex}.bill-print-editor [data-layout-key]{transform-origin:50%;transition:transform .12s}.bill-print-editor.is-editing [data-layout-key]{z-index:2;outline-offset:3px;cursor:move;touch-action:none;outline:1.5px dashed #128b7db8;position:relative}.bill-print-editor.is-editing [data-layout-key]:hover{background-color:#fff8e657;outline-color:#f0a83c}.bill-print-editor.is-content-editing [data-layout-key]{cursor:default;touch-action:auto;outline-color:#128b7d33}.bill-print-editor.is-content-editing [data-content-key]{outline-offset:2px;cursor:text;caret-color:#0b756a;background:#fff6dc;outline:1px dashed #e39a2e}.bill-print-editor.is-content-editing [data-content-key]:focus{background:#fff;outline:2px solid #0c9484}.bill-print-sheet{color:#111;background:#fff;width:min(1120px,100%);min-height:740px;margin:0 auto;padding:28px 34px 24px;font-family:SimHei,Heiti SC,sans-serif;box-shadow:0 22px 55px #0a282824}.bill-paper-head{grid-template-columns:310px 1fr 160px;align-items:center;gap:14px;min-height:112px;display:grid}.bill-paper-brand img{filter:brightness(0)saturate();opacity:.82;width:292px;height:auto;display:block}.bill-paper-company{flex-direction:column;justify-self:end;gap:0;width:320px;font-family:SimHei,Heiti SC,sans-serif;font-size:12px;font-weight:500;line-height:1.18;display:flex}.bill-paper-company-indent{padding-left:0}.bill-paper-right{flex-direction:column;justify-content:flex-start;align-items:flex-start;gap:2px;height:104px;display:flex}.bill-paper-number{color:#a53f3b;white-space:nowrap;justify-content:flex-start;align-items:baseline;gap:5px;padding-top:2px;display:flex}.bill-paper-number span{color:#161c1b;font-family:SimHei,Heiti SC,sans-serif;font-size:21px}.bill-paper-number strong{letter-spacing:2px;font-family:SimHei,Heiti SC,sans-serif;font-size:20px;font-weight:500}.bill-paper-qr{object-fit:contain;image-rendering:auto;width:58px;height:58px;margin:0 0 0 12px}.bill-paper-meta{justify-content:space-between;align-items:center;height:32px;font-family:SimHei,Heiti SC,sans-serif;font-size:15px;display:flex}.bill-paper-meta>div:first-child{flex:1}.bill-paper-meta>div:first-child strong{min-width:250px;padding-left:9px;display:inline-block}.bill-paper-date{align-items:center;gap:8px;padding-left:30px;display:flex}.bill-paper-date strong{text-align:center;min-width:34px}.bill-paper-table-layout{display:block;position:relative}.bill-paper-copies{border:0;place-items:center;width:27px;font-family:SimHei,Heiti SC,sans-serif;font-size:13px;font-weight:600;line-height:1;display:grid;position:absolute;top:0;bottom:0;right:-30px;overflow:hidden}.bill-paper-copies span{writing-mode:vertical-rl;text-orientation:upright;letter-spacing:1.5px;white-space:nowrap}.bill-paper-table,.bill-paper-summary{border-collapse:collapse;table-layout:fixed;width:100%;font-family:SimHei,Heiti SC,sans-serif}.bill-paper-table{border:1.5px solid #171c1b;font-size:13px}.bill-paper-table th,.bill-paper-table td{text-align:center;vertical-align:middle;white-space:normal;border:1px solid #3d4543;height:34px;padding:4px 5px}.bill-paper-table th{background:#fff;height:29px;font-size:14px;font-weight:500}.bill-paper-table th:first-child{width:14%}.bill-paper-table th:nth-child(2){width:10%}.bill-paper-table .bill-code-column{color:#000;width:5.6%}.bill-paper-table th:nth-last-child(3){width:10%}.bill-paper-table th:nth-last-child(2){width:9%}.bill-paper-table th:last-child{width:11%}.bill-paper-table td:first-child strong{font-size:14px;display:block}.bill-paper-table td small{color:#111;margin-top:3px;font-size:10px;display:block}.bill-code-value{font-size:12px;padding:3px 2px!important}.bill-paper-blank-row td{height:34px}.bill-paper-summary{border:1.5px solid #171c1b;width:100%;margin-top:-1px;font-family:SimHei,Heiti SC,sans-serif;font-size:14px}.bill-paper-summary th,.bill-paper-summary td{border:1px solid #3d4543;height:32px;padding:5px 10px}.bill-paper-summary col:first-child{width:14.17%}.bill-paper-summary col:nth-child(2){width:44.13%}.bill-paper-summary col:nth-child(3){width:21.46%}.bill-paper-summary col:nth-child(4){width:20.24%}.bill-paper-summary th{font-size:17px;font-weight:500}.bill-paper-summary td{width:auto}.bill-paper-summary span[data-content-key]{margin-right:5px}.bill-paper-summary strong{font-size:15px}.bill-paper-total{text-align:center;font-size:15px;width:28%!important}.bill-paper-total strong{margin-left:6px;font-size:19px}.bill-paper-signatures{border:1.5px solid #171c1b;border-top:0;grid-template-columns:1fr 1.15fr 1.2fr;align-items:center;width:100%;height:37px;font-family:SimHei,Heiti SC,sans-serif;font-size:14px;display:grid}.bill-paper-signatures span{border-right:1px solid #3d4543;height:100%;padding:10px 12px}.bill-paper-signatures span:last-child{border-right:0}.bill-paper-note{color:#111;text-align:left;border:0;width:100%;min-height:28px;margin-top:5px;padding:4px 8px;font-family:SimHei,Heiti SC,sans-serif;font-size:14px;font-weight:600;line-height:1.5}.bill-print-sheet th,.bill-print-sheet td{background:#fff}@media print{@page{size:A4 landscape;margin:8mm}body{background:#fff!important}.bill-print-page{background:#fff;min-height:0;padding:0}.bill-print-toolbar,.bill-layout-tip{display:none}.bill-print-editor.is-editing [data-layout-key]{cursor:default;outline:0}.bill-print-editor.is-content-editing [data-content-key],.bill-print-sheet th,.bill-print-sheet td{background:0 0!important}.bill-print-sheet{width:100%;min-height:0;box-shadow:none;-webkit-print-color-adjust:exact;print-color-adjust:exact;padding:0 7mm 0 0}.bill-paper-head{min-height:94px}.bill-paper-table tr{break-inside:avoid}}.page-head{justify-content:space-between;align-items:flex-end;gap:18px;margin-bottom:23px;display:flex}.page-head h1{letter-spacing:-1.1px;margin:0 0 7px;font-size:29px;line-height:1.15}.page-head p{color:var(--muted);margin:0;font-size:13px}.subtle{color:var(--muted);font-size:12px}.card{box-shadow:var(--shadow);background:#fffffff0;border:1px solid #d7e5e2f0;border-radius:20px}.section-head{justify-content:space-between;align-items:center;gap:12px;margin-bottom:20px;display:flex}.section-head h2{letter-spacing:-.25px;align-items:center;gap:9px;margin:0;font-size:16px;display:flex}.section-head h2 svg{color:var(--brand)}.entry-card{padding:24px;position:relative;overflow:hidden}.entry-card:before{content:"";background:linear-gradient(90deg, var(--brand), #55c8b5 45%, var(--gold));height:3px;position:absolute;inset:0 0 auto}.entry-head-actions{justify-content:flex-end;align-items:center;gap:12px;display:flex}.entry-date-display{color:#9aaba8;white-space:nowrap;font-size:11px;font-weight:600}.form-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;display:grid}.field{flex-direction:column;gap:7px;min-width:0;display:flex}.field.span-2{grid-column:span 2}.order-notes-field{grid-column:1/-1;width:100%}.order-notes-field textarea{box-sizing:border-box;width:100%;max-width:none}.field label{color:#395856;letter-spacing:.15px;font-size:11px;font-weight:800}.form-grid>.field>label,.form-grid>.field>.order-date-heading{align-items:center;min-height:26px;display:flex}.required:after{content:" *";color:var(--red)}.money-field-label{flex-wrap:wrap;align-items:baseline;gap:4px;display:flex}.money-field-label small{color:#9aaba8;font-size:9px;font-weight:500}input,select,textarea{width:100%;color:var(--ink);background:#fbfdfd;border:1px solid #d4e1df;border-radius:12px;outline:none;transition:border-color .16s,box-shadow .16s,background .16s}input,select{height:44px;padding:0 12px}textarea{resize:vertical;min-height:44px;padding:11px 12px}input:hover,select:hover,textarea:hover{background:#fff;border-color:#b8ceca}input:focus,select:focus,textarea:focus{background:#fff;border-color:#52ad9f;box-shadow:0 0 0 4px #0b887a17}.input-row{gap:8px;display:flex}.input-row input,.input-row select{flex:1;min-width:0}.expression-result{color:var(--brand);margin-top:-2px;font-size:11px;font-weight:800}.btn{white-space:nowrap;border:0;border-radius:11px;justify-content:center;align-items:center;gap:7px;min-height:41px;padding:0 16px;font-size:12px;font-weight:800;transition:transform .16s,box-shadow .16s,background .16s;display:inline-flex}.btn:hover{transform:translateY(-1px)}.btn-primary{color:#fff;background:linear-gradient(135deg,#0c9484,#087267);box-shadow:0 10px 24px #0a847633}.btn-primary:hover{box-shadow:0 14px 30px #0a847645}.btn-soft{color:var(--brand-deep);background:var(--brand-soft)}.btn-ghost{color:#536967;background:#f0f4f3}.btn-danger{color:var(--red);background:#fff0f2}.btn:disabled{opacity:.5;cursor:not-allowed;box-shadow:none;transform:none}.calc-strip{background:linear-gradient(135deg,#f3faf8,#f8fbfb);border:1px solid #d9e8e5;border-radius:16px;grid-template-columns:repeat(3,1fr);gap:0;margin-top:20px;display:grid;overflow:hidden}.calc-item{padding:17px 20px;position:relative}.calc-item+.calc-item:before{content:"";background:#dce9e7;width:1px;position:absolute;top:16px;bottom:16px;left:0}.calc-item small{color:var(--muted);margin-bottom:6px;font-size:10px;font-weight:750;display:block}.calc-item strong{letter-spacing:-.6px;font-size:21px}.form-actions{justify-content:flex-end;gap:9px;margin-top:19px;display:flex}.profit-pos{color:var(--green)!important}.profit-neg{color:var(--red)!important}.profit-zero{color:#637572!important}.summary-grid{grid-template-columns:repeat(7,minmax(0,1fr));gap:13px;margin:21px 0;display:grid}.dashboard-summary{grid-template-columns:repeat(8,minmax(0,1fr))}.metric{min-height:111px;padding:17px;transition:transform .18s,box-shadow .18s;position:relative;overflow:hidden}.metric:hover{transform:translateY(-3px);box-shadow:0 18px 40px #0d37351c}.metric:before{content:"";background:#1ea18f1c;border-radius:50%;width:64px;height:64px;position:absolute;top:-35px;right:-27px;box-shadow:0 0 0 12px #1ea18f09}.metric .label{color:var(--muted);margin-bottom:13px;font-size:10px;font-weight:750}.metric .value{letter-spacing:-.6px;font-size:20px;font-weight:850;position:relative}.metric .hint{color:#9aaba8;margin-top:8px;font-size:9px}.records-card,.report-card{min-width:0;padding:22px}.record-head{gap:12px}.record-actions{align-items:center;gap:8px;display:flex}.filters{background:#f7faf9;border:1px solid #e1eae8;border-radius:15px;grid-template-columns:1.25fr repeat(4,1fr) auto auto;gap:10px;margin-bottom:17px;padding:13px;display:grid}.unshipped-filter{color:#8e4d55;white-space:nowrap;cursor:pointer;background:#fff7f8;border:1px solid #efd9dc;border-radius:12px;align-items:center;gap:8px;min-height:42px;padding:0 12px;font-size:10px;font-weight:800;display:flex}.unshipped-filter input{accent-color:#d66a76;width:16px;height:16px;padding:0}.unshipped-order-number{color:#c85c68;background:0 0;padding:0;font-weight:400}.order-number-content{white-space:nowrap;vertical-align:middle;align-items:center;gap:0;display:inline-flex}.return-order-number{color:#66a8ce;background:0 0;padding:0;font-weight:400}.table-wrap{background:#fff;border:1px solid #dfe8e6;border-radius:14px;max-width:100%;overflow:auto}table{border-collapse:separate;border-spacing:0;width:100%;min-width:1040px;font-size:12px}th{color:#617572;text-align:left;letter-spacing:.15px;white-space:nowrap;background:#f3f7f6;border-bottom:1px solid #dfe9e7;padding:12px;font-size:10px;font-weight:850}td{white-space:nowrap;border-bottom:1px solid #edf2f1;padding:13px 12px}tbody tr{transition:background .14s}tbody tr:hover{background:#f8fcfb}tbody tr.selected-row{background:#edf8f6}tbody tr.return-order-row{background:#fff}tbody tr.return-order-row:hover{background:#f8fcfb}tbody tr.return-order-row.selected-row{background:#edf8f6}.order-date-heading{justify-content:space-between;align-items:center;gap:8px;display:flex}.return-order-toggle{width:fit-content;color:var(--muted);cursor:pointer;background:#f7faf9;border:1px solid #cbdedb;border-radius:7px;align-items:center;gap:5px;padding:2px 7px;display:inline-flex}.return-order-toggle.active{color:#24668e;background:#eaf6ff;border-color:#8fc4e7}.return-order-toggle input{accent-color:#3189bd;width:14px;height:14px}.return-order-toggle span{align-items:baseline;gap:8px;display:flex}.return-order-toggle strong{font-size:11px}.return-order-toggle small{color:#7a969f;font-size:10px}.return-badge{color:#66a8ce;background:#e8f5fd;border-radius:999px;flex:none;justify-content:center;align-items:center;min-width:17px;height:18px;padding:0 4px;font-size:9px;font-weight:700;line-height:1;display:inline-flex}tbody tr:last-child td{border-bottom:0}th:first-child{border-radius:13px 0 0}th:last-child{border-radius:0 13px 0 0}.note-cell{text-overflow:ellipsis;max-width:180px;overflow:hidden}.check-cell{text-align:center;width:42px;padding-left:14px;padding-right:6px}.check-cell input{width:16px;height:16px;accent-color:var(--brand)}.order-records-table{table-layout:fixed;min-width:1360px;font-size:11px}.order-records-table th,.order-records-table td{padding-left:6px;padding-right:6px}.order-records-table th:nth-child(2),.order-records-table td:nth-child(2),.order-records-table th:nth-child(3),.order-records-table td:nth-child(3){width:82px}.order-records-table th:nth-child(4),.order-records-table td:nth-child(4){width:128px}.order-records-table th:nth-child(n+5):nth-child(-n+7),.order-records-table td:nth-child(n+5):nth-child(-n+7){width:85px}.order-records-table th:nth-child(n+8):nth-child(-n+13),.order-records-table td:nth-child(n+8):nth-child(-n+13){width:78px}.order-records-table th:nth-child(14),.order-records-table td:nth-child(14){width:62px}.order-records-table th:nth-child(15),.order-records-table td:nth-child(15){width:120px}.order-records-table th:nth-child(16),.order-records-table td:nth-child(16){width:112px}.order-records-table td:nth-child(n+4):nth-child(-n+7),.order-records-table td:nth-child(15){text-overflow:ellipsis;overflow:hidden}.order-records-table .cost-breakdown{min-width:0}.order-records-table .cost-breakdown b{text-overflow:ellipsis;overflow:hidden}.actions{gap:6px;display:flex}.icon-btn{width:31px;height:31px;color:var(--brand);background:#e8f5f2;border:0;border-radius:9px;place-items:center;padding:0;transition:transform .15s;display:grid}.icon-btn:hover{transform:translateY(-1px)}.icon-btn.danger{color:var(--red);background:#fff0f2}.empty{color:var(--muted);text-align:center;padding:42px 20px}.empty svg{color:#94aaa6;margin-bottom:7px}.pagination{color:var(--muted);justify-content:space-between;align-items:center;margin-top:15px;font-size:11px;display:flex}.pagination .pages{gap:7px;display:flex}.report-filter{margin-bottom:19px;padding:17px}.quick-tabs{flex-wrap:wrap;gap:7px;margin-bottom:14px;display:flex}.quick-tabs button{color:#5c706d;background:#fff;border:1px solid #dbe6e4;border-radius:10px;padding:8px 15px;font-size:11px;font-weight:800}.quick-tabs button.active{color:#fff;border-color:var(--brand);background:linear-gradient(135deg,#0b9181,#087267);box-shadow:0 7px 18px #0a84762e}.report-filter-row{grid-template-columns:1fr 1fr 1fr auto auto;gap:10px;display:grid}.report-module-tabs{grid-template-columns:repeat(3,1fr);gap:13px;margin-bottom:18px;display:grid}.report-module-tabs button{color:#5b716e;text-align:left;background:#ffffffe0;border:1px solid #dce8e6;border-radius:17px;align-items:center;gap:13px;min-height:82px;padding:17px 19px;transition:all .18s;display:flex;box-shadow:0 8px 26px #0f37350f}.report-module-tabs button>svg{width:42px;height:42px;color:var(--brand);background:var(--brand-soft);border-radius:13px;flex:none;padding:10px}.report-module-tabs button span,.report-module-tabs button strong,.report-module-tabs button small{display:block}.report-module-tabs button strong{color:var(--ink);margin-bottom:5px;font-size:14px}.report-module-tabs button small{color:var(--muted);font-size:10px}.report-module-tabs button:hover{box-shadow:var(--shadow);transform:translateY(-2px)}.report-module-tabs button.active{color:#fff;background:linear-gradient(135deg,#0b8f80 0%,#087066 74%,#095c57 100%);border-color:#0b8074;box-shadow:0 16px 36px #0a7e7133}.report-module-tabs button.active>svg{color:#0b4c47;background:#9ce5d8}.report-module-tabs button.active strong{color:#fff}.report-module-tabs button.active small{color:#bde0da}.module-summary{grid-template-columns:repeat(4,minmax(0,1fr))}.module-summary-five{grid-template-columns:repeat(5,minmax(0,1fr))}.chart-box{width:100%;min-width:0;height:340px;min-height:0}.chart-scroll{width:100%;height:100%;overflow:auto hidden}.chart-canvas{min-width:100%;height:100%}.chart-head-actions{align-items:center;gap:13px;display:flex}.series-toggles{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.series-toggles button{color:var(--muted);border:1px solid var(--line);background:#fff;border-radius:9px;align-items:center;gap:6px;padding:6px 9px;font-size:10px;font-weight:800;display:flex}.series-toggles button.active{color:var(--ink);background:#edf7f5;border-color:#bcd5d0}.series-toggles button:disabled{cursor:default;opacity:1}.series-dot{background:#a9b5b2;border-radius:50%;width:8px;height:8px}.series-销售金额{background:#0d766e}.series-总成本{background:#ba7415}.series-总利润,.series-净利润{background:#5367c9}.report-tables{gap:18px;min-width:0;margin-top:18px;display:grid}.focused-report-table{min-width:680px}.customer-link{color:var(--brand);background:0 0;border:0;padding:0;font-weight:850}.unassigned-party{color:var(--muted);font-weight:800}.party-tabs{gap:9px;margin-bottom:18px;display:flex}.party-tabs button{color:#526966;border:1px solid var(--line);background:#fff;border-radius:11px;align-items:center;gap:8px;padding:10px 18px;font-size:12px;font-weight:800;display:flex}.party-tabs button.active{color:#fff;border-color:var(--brand);background:linear-gradient(135deg,#0b9181,#087267);box-shadow:0 9px 22px #0a84762b}.manage-layout{grid-template-columns:minmax(280px,380px) minmax(0,1fr);align-items:start;gap:19px;display:grid}.party-form,.party-list{padding:22px}.party-list-actions{align-items:center;gap:10px;display:flex}.customer-import-input{display:none}.party-search{min-height:44px;color:var(--muted);border:1px solid var(--line);background:#f8fbfa;border-radius:12px;align-items:center;gap:9px;margin-bottom:14px;padding:0 12px;display:flex}.party-search input{min-height:40px;box-shadow:none;background:0 0;border:0;padding:0}.party-search input:focus{box-shadow:none}.party-search button{width:28px;height:28px;color:var(--muted);background:0 0;border:0;border-radius:8px;flex:none;place-items:center;padding:0;display:grid}.party-search button:hover{color:var(--ink);background:#e9f3f1}.party-form{position:sticky;top:96px}.party-rows{gap:9px;display:grid}.party-row{background:#fbfdfc;border:1px solid #e0e9e7;border-radius:13px;justify-content:space-between;align-items:center;gap:12px;padding:14px 15px;transition:all .16s;display:flex}.party-row:hover{background:#fff;border-color:#c5dcd7;transform:translateY(-1px);box-shadow:0 10px 25px #0e36340f}.party-row strong,.party-row span{display:block}.party-row strong{font-size:13px}.party-row span{color:var(--muted);margin-top:4px;font-size:10px}.modal-backdrop{z-index:80;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#04161794;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.modal{background:#fff;border:1px solid #ffffffbf;border-radius:20px;width:min(480px,100%);padding:24px;box-shadow:0 30px 100px #0000004d}.modal h3{margin:0 0 19px;font-size:18px}.modal h3 svg{vertical-align:-4px;color:var(--brand);margin-right:6px}.modal-actions{justify-content:flex-end;gap:8px;margin-top:19px;display:flex}.field-error{color:var(--red);font-size:11px;font-weight:750}.recycle-modal{width:min(1050px,100%);max-height:calc(100vh - 40px);overflow:auto}.recycle-modal .section-head h3{margin-bottom:5px}.recycle-toolbar{justify-content:flex-end;margin-bottom:12px;display:flex}.recycle-table table{min-width:850px}.btn-compact{min-height:32px;padding:6px 10px}.field-hint{color:#8a641c;font-size:11px;font-weight:700}.batch-date-warning{color:#8a641c;background:#fffaf0;border:1px solid #f0dfb8;border-radius:10px;margin:13px 0 0;padding:10px 12px;font-size:11px;line-height:1.55}.batch-admin-password{margin-top:13px}.duplicate-check-modal{width:min(1240px,100%);max-height:calc(100vh - 36px);overflow:auto}.duplicate-check-modal .section-head{align-items:flex-start}.duplicate-check-modal .section-head h3{margin-bottom:5px}.duplicate-groups{gap:14px;display:grid}.duplicate-group{background:#fff;border:1px solid #dce7e5;border-radius:14px;overflow:hidden}.duplicate-group-head{background:#f2f8f6;justify-content:space-between;align-items:center;gap:12px;padding:11px 13px;display:flex}.duplicate-group-head strong{color:var(--brand-deep);font-size:13px}.duplicate-group-head strong small{color:#7b6150;margin-top:4px;font-size:9px;font-weight:750;display:block}.duplicate-group-head span{color:var(--muted);font-size:10px}.duplicate-group table{min-width:1490px}.duplicate-group th,.duplicate-group td{white-space:nowrap}.duplicate-group td>strong{display:block}.duplicate-ignore-toggle{color:#536966;cursor:pointer;align-items:center;gap:6px;font-size:11px;font-weight:800;display:inline-flex}.duplicate-ignore-toggle input{width:17px;height:17px;accent-color:var(--brand);cursor:pointer}.duplicate-ignore-toggle input:disabled{cursor:wait;opacity:.65}.duplicate-notes{text-overflow:ellipsis;max-width:210px;overflow:hidden}.duplicate-empty{min-height:170px;color:var(--muted);text-align:center;place-content:center;gap:7px;display:grid}.duplicate-empty strong{color:var(--brand-deep);font-size:16px}.duplicate-empty span{font-size:11px}.duplicate-confirm-backdrop{z-index:90}.duplicate-delete-summary{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:14px 0;display:grid}.duplicate-delete-summary span{color:var(--muted);background:#f7faf9;border:1px solid #e2eae8;border-radius:10px;gap:4px;padding:10px 11px;font-size:10px;display:grid}.duplicate-delete-summary strong{color:var(--ink);text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.merged-badge{color:#17665f;white-space:nowrap;background:#e5f5f1;border-radius:999px;width:max-content;margin-top:5px;padding:2px 7px;font-size:10px;font-weight:850;display:block}.cost-breakdown{gap:5px;min-width:145px;display:grid}.cost-breakdown span{white-space:nowrap;border-bottom:1px dashed #dbe5e2;justify-content:space-between;gap:10px;padding-bottom:4px;display:flex}.cost-breakdown span:last-child{border-bottom:0;padding-bottom:0}.cost-breakdown b{color:#264743;font-weight:780}.merge-modal{width:min(920px,100%);max-height:calc(100vh - 36px);overflow:auto}.merge-modal .section-head h3{margin-bottom:4px}.merge-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.merge-totals{flex-wrap:wrap;gap:10px;margin:17px 0;display:flex}.merge-totals span{color:var(--muted);background:#f6faf9;border:1px solid #dce8e5;border-radius:12px;align-items:center;gap:9px;padding:10px 13px;font-size:12px;display:flex}.merge-totals strong{color:var(--ink);font-size:14px}.cost-group-panel{background:#fbfdfc;border:1px solid #dfe9e7;border-radius:14px;margin-top:12px;padding:14px}.cost-group-panel h4,.merge-source-list h4{margin:0 0 10px;font-size:13px}.cost-group-panel>div{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.cost-group-panel span{background:#edf5f3;border-radius:9px;justify-content:space-between;gap:12px;padding:9px 11px;font-size:12px;display:flex}.editable-cost-groups>p{margin:-3px 0 10px}.editable-cost-groups label{background:#edf5f3;border-radius:10px;grid-template-columns:minmax(90px,1fr) minmax(120px,1fr);align-items:center;gap:10px;padding:9px 11px;font-size:12px;display:grid}.editable-cost-groups input{text-align:right;min-height:36px;padding:7px 9px}.processing-edit-form>.btn{margin-top:10px}.merge-source-list{border:1px solid #e4e9e7;border-radius:14px;margin-top:12px;padding:14px}.merge-source-table{border:1px solid #dfe8e6;border-radius:11px;max-width:100%;overflow-x:auto}.merge-source-header,.merge-source-row{grid-template-columns:94px 1.05fr 1.1fr 105px 1.1fr 105px minmax(220px,1.8fr);align-items:center;gap:10px;min-width:1040px;display:grid}.merge-source-header{color:#617572;background:#f2f7f5;padding:9px 11px;font-size:9px;font-weight:850}.merge-source-row{border-top:1px solid #e8efed;padding:10px 11px;font-size:11px}.merge-source-row strong{color:var(--ink)}.merge-source-party{color:var(--brand-deep);font-weight:800}.merge-source-note{color:#526865;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.undo-merge-panel{background:#fff6f7;border:1px solid #f2c9cf;border-radius:14px;margin-top:14px;padding:15px}.undo-merge-panel h4{color:#9d2938;margin:0 0 6px}.undo-merge-panel p{color:#76565a;margin:0 0 13px;font-size:12px;line-height:1.6}.debt-tabs{grid-template-columns:repeat(2,minmax(0,1fr));gap:13px;margin-bottom:19px;display:grid}.debt-tabs button{color:#5b716e;text-align:left;background:#ffffffe6;border:1px solid #dce8e6;border-radius:17px;align-items:center;gap:13px;min-height:76px;padding:15px 18px;transition:all .18s;display:flex;box-shadow:0 8px 26px #0f37350f}.debt-tabs button>svg{width:40px;height:40px;color:var(--brand);background:var(--brand-soft);border-radius:12px;flex:none;padding:9px}.debt-tabs span,.debt-tabs strong,.debt-tabs small{display:block}.debt-tabs strong{color:var(--ink);margin-bottom:5px;font-size:14px}.debt-tabs small{color:var(--muted);font-size:10px}.debt-tabs button:hover{box-shadow:var(--shadow);transform:translateY(-2px)}.debt-tabs button.active{color:#fff;background:linear-gradient(135deg,#0b8f80,#087066 74%,#095c57);border-color:#0b8074;box-shadow:0 16px 36px #0a7e7133}.debt-tabs button.active>svg{color:#0b4c47;background:#9ce5d8}.debt-tabs button.active strong{color:#fff}.debt-tabs button.active small{color:#bde0da}.debt-summary{grid-template-columns:repeat(4,minmax(0,1fr))}.debt-card{padding:22px}.debt-filters{background:#f7faf9;border:1px solid #e1eae8;border-radius:15px;grid-template-columns:minmax(220px,1fr) minmax(170px,220px) auto;align-items:end;gap:10px;margin-bottom:17px;padding:13px;display:grid}.debt-filters>label{color:#395856;flex-direction:column;gap:7px;font-size:11px;font-weight:800;display:flex}.debt-table{min-width:900px}.debt-detail-modal{width:min(760px,100%);max-height:calc(100vh - 40px);overflow:auto}.debt-detail-modal h4{margin:20px 0 10px;font-size:13px}.debt-detail-modal table{min-width:620px}.debt-orders-modal{width:min(940px,100%)}.debt-orders-modal table{min-width:760px}.debt-orders-total{color:var(--muted);background:#edf7f5;border-radius:12px;justify-content:space-between;align-items:center;margin-top:12px;padding:12px 14px;font-size:12px;display:flex}.debt-orders-total strong{color:var(--brand-deep);font-size:16px}.cash-purchase-toggle{white-space:nowrap;cursor:pointer;align-items:center;gap:7px;display:inline-flex}.cash-purchase-toggle input{width:17px;height:17px;accent-color:var(--brand);cursor:pointer}.cash-purchase-toggle input:disabled{cursor:wait;opacity:.55}.cash-purchase-row{color:#81908d;background:#f7faf9}.cash-purchase-row.return-order-row{background:#fff}.cash-purchase-row.return-order-row:hover{background:#f8fcfb}.cash-purchase-row td strong{color:#81908d;font-weight:500}.statement-modal{width:min(760px,100%)}.statement-filters{background:#f7faf9;border:1px solid #dfe9e7;border-radius:14px;grid-template-columns:1fr 1fr auto;align-items:end;gap:10px;margin-bottom:12px;padding:13px;display:grid}.statement-filters label{color:#395856;flex-direction:column;gap:7px;font-size:11px;font-weight:800;display:flex}.statement-period{color:var(--muted);text-align:right;margin-bottom:10px;font-size:11px}.statement-table table{min-width:580px}.statement-table th,.statement-table td{text-align:right}.statement-table th:first-child,.statement-table td:first-child{text-align:left}.statement-opening{background:#f4f8f7}.statement-opening td{color:#4f6663}.statement-closing{color:var(--muted);background:#eaf7f4;border:1px solid #cfe6e1;border-radius:13px;justify-content:space-between;align-items:center;margin-top:12px;padding:14px 16px;font-size:12px;display:flex}.statement-closing strong{color:var(--brand-deep);font-size:18px}.debt-formula{background:#f5faf9;border:1px solid #dce9e6;border-radius:15px;grid-template-columns:1fr auto 1fr auto 1fr auto 1fr;align-items:center;gap:10px;padding:16px;display:grid}.debt-formula span{min-width:0;color:var(--ink);text-align:center;font-size:15px;font-weight:850}.debt-formula small{color:var(--muted);margin-top:5px;font-size:9px;font-weight:750;display:block}.debt-formula b{color:#839592;font-size:18px}.toast{z-index:90;color:#fff;box-shadow:var(--shadow-strong);border-radius:12px;padding:13px 18px;font-size:12px;font-weight:800;position:fixed;top:88px;right:28px}.toast.success{background:#147a5a}.toast.error{background:#b93845}.backup-layout{grid-template-columns:minmax(0,1.55fr) minmax(310px,.75fr);align-items:start;gap:18px;display:grid}.backup-settings-card,.backup-status-card{padding:24px}.backup-settings-card .section-head h2{align-items:center;gap:8px;display:flex}.backup-settings-card .section-head h2 svg{color:var(--brand)}.backup-switch{color:var(--brand-deep);cursor:pointer;align-items:center;gap:9px;font-size:12px;font-weight:850;display:inline-flex}.backup-switch input{width:19px;height:19px;accent-color:var(--brand)}.backup-form{grid-template-columns:minmax(170px,.55fr) minmax(0,1.45fr) minmax(150px,.45fr);gap:14px;margin-top:22px;display:grid}.backup-form label{color:#395856;flex-direction:column;gap:8px;font-size:11px;font-weight:800;display:flex}.backup-form label>span{align-items:center;gap:7px;display:flex}.backup-form label>span svg{color:var(--brand)}.backup-form small{color:var(--muted);font-size:10px;font-weight:600;line-height:1.55}.backup-actions{justify-content:flex-end;margin-top:22px;display:flex}.backup-status-card{text-align:center}.backup-status-icon{width:58px;height:58px;color:var(--brand);background:var(--brand-soft);border-radius:18px;place-items:center;margin:0 auto 13px;display:grid}.backup-status-icon svg{width:29px;height:29px}.backup-status-card h2{margin:0 0 20px;font-size:17px}.backup-status-card dl{text-align:left;gap:9px;margin:0;display:grid}.backup-status-card dl div{background:#f4f8f7;border-radius:10px;padding:10px 12px}.backup-status-card dt{color:var(--muted);font-size:10px;font-weight:750}.backup-status-card dd{overflow-wrap:anywhere;color:var(--ink);margin:5px 0 0;font-size:11px;font-weight:800}.backup-error{color:#9d2938;text-align:left;background:#fff0f2;border-radius:10px;margin:13px 0 0;padding:10px;font-size:11px}.user-settings-card{margin-top:18px;padding:24px}.user-settings-card .section-head h2{align-items:center;gap:8px;display:flex}.user-settings-card .section-head h2 svg{color:var(--brand)}.user-count{color:var(--brand-deep);background:var(--brand-soft);border-radius:999px;padding:6px 10px;font-size:10px;font-weight:850}.settings-message{border-radius:10px;margin:15px 0;padding:11px 13px;font-size:11px;font-weight:800}.settings-message.success{color:#12634a;background:#e9f7f1}.settings-message.error{color:#9d2938;background:#fff0f2}.user-create-form{background:#f7faf9;border:1px solid #dfe9e7;border-radius:14px;grid-template-columns:1fr 1fr auto auto;align-items:end;gap:12px;margin:20px 0;padding:15px;display:grid}.user-create-form label{color:#395856;flex-direction:column;gap:7px;font-size:11px;font-weight:800;display:flex}.user-create-form label span{align-items:center;gap:6px;display:flex}.user-create-form label svg{color:var(--brand)}.user-create-form .user-admin-check{cursor:pointer;flex-direction:row;align-items:center;min-height:42px;padding:0 10px}.user-admin-check input{width:17px;height:17px;accent-color:var(--brand)}.user-list{gap:9px;display:grid}.user-row{background:#fbfdfc;border:1px solid #e0e9e7;border-radius:13px;justify-content:space-between;align-items:center;gap:16px;padding:13px 14px;display:flex}.user-identity{align-items:center;gap:10px;min-width:180px;display:flex}.user-identity>span{width:35px;height:35px;color:var(--brand);background:var(--brand-soft);border-radius:10px;place-items:center;display:grid}.user-identity strong,.user-identity small{display:block}.user-identity small{color:var(--muted);margin-top:4px;font-size:9px}.user-identity strong .admin-badge,.user-identity strong .user-badge{vertical-align:middle;border-radius:999px;margin:0 0 0 6px;padding:3px 6px;font-size:8px;display:inline-block}.admin-badge{background:#dff4ef;color:#0b655c!important}.user-badge{background:#eef3f2;color:#667774!important}.user-password-action{flex:1;justify-content:flex-end;align-items:center;gap:8px;display:flex}.user-password-action input{max-width:185px;min-height:34px}.settings-wide-card{margin-top:18px;padding:22px}.settings-wide-card .section-head h2{align-items:center;gap:8px;display:flex}.settings-wide-card .section-head h2 svg{color:var(--brand)}.settings-recycle-groups{gap:15px;display:grid}.settings-recycle-group{background:#fbfdfc;border:1px solid #e0e9e7;border-radius:13px;padding:14px}.settings-recycle-group h3{margin:0 0 10px;font-size:13px}.settings-recycle-group h3 small{color:var(--muted);margin-left:7px;font-size:9px}.settings-recycle-group table{min-width:850px}.audit-filters{grid-template-columns:minmax(260px,1fr) 190px auto;gap:9px;margin-bottom:14px;display:grid}.audit-table table{min-width:1050px}.audit-table td:last-child{text-overflow:ellipsis;white-space:nowrap;max-width:360px;overflow:hidden}@media (max-width:1180px){.summary-grid{grid-template-columns:repeat(4,1fr)}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.filters,.report-filter-row{grid-template-columns:repeat(3,1fr)}.record-actions{flex-wrap:wrap;justify-content:flex-end}.merge-modal{width:min(760px,100%)}.backup-layout{grid-template-columns:1fr}.user-row{flex-direction:column;align-items:flex-start}.user-password-action{justify-content:flex-start;width:100%}}@media (max-width:640px){.record-head{flex-direction:column;align-items:stretch}.record-actions{justify-content:flex-start;gap:6px;width:100%}.record-actions .btn{min-height:34px;padding:7px 9px;font-size:10px}.merge-form-grid,.cost-group-panel>div{grid-template-columns:1fr}.merge-source-list{padding:10px}.merge-modal{padding:17px}.backup-form,.user-create-form{grid-template-columns:1fr}.user-password-action{flex-direction:column;align-items:stretch}.user-password-action input{max-width:none}.audit-filters{grid-template-columns:1fr}}
@media screen and (max-width:900px){.login-page{grid-template-columns:minmax(280px,.8fr) minmax(420px,1.2fr)}.login-brand-panel{padding:38px 30px}.login-edition{bottom:28px;left:30px}.login-form-panel{padding:30px}.app-shell{display:block}.sidebar{grid-template-columns:auto 1fr;align-items:center;gap:12px;height:auto;min-height:0;padding:12px 14px;display:grid;position:sticky;top:0;overflow:visible}.sidebar:after,.side-status{display:none}.side-brand{border-radius:13px;width:190px;min-height:48px;padding:5px 8px}.side-nav{grid-template-columns:repeat(5,minmax(0,1fr));gap:5px;margin-top:0;display:grid}.side-nav a{border-radius:11px;justify-content:center;min-height:44px;padding:6px 8px}.side-nav a.active{box-shadow:inset 0 -2px #57d1bd}.nav-icon{border-radius:8px;width:28px;height:28px}.side-nav small{display:none}.side-nav strong{font-size:11px}.workspace-bar{height:58px;padding:0 18px}.app-content{padding:24px 18px 18px}.party-form{position:static}.debt-summary,.billing-head-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.billing-filters{grid-template-columns:1fr 1fr}.billing-search{grid-column:1/-1}}@media (max-width:680px){.login-page{background:linear-gradient(170deg,#0b3437 0,#082528 38%,#eef5f4 38%);min-height:100svh;display:block;overflow:auto}.login-brand-panel{background:0 0;align-items:flex-start;height:38svh;min-height:250px;padding:32px 25px 26px}.login-brand-content{width:100%}.login-logo{width:270px;max-width:86%}.login-divider{margin:20px 0 13px}.login-brand-content>p{max-width:310px;font-size:16px;line-height:1.5}.login-trust,.login-edition{display:none}.login-form-panel{background:0 0;align-items:start;min-height:62svh;padding:0 14px 24px}.login-card{border-radius:23px;width:100%;margin-top:-15px;padding:27px 22px;box-shadow:0 25px 65px #0522232e}.login-card-head{margin-bottom:22px}.login-card-head h1{font-size:26px}.login-field>div{height:47px}.login-field input{height:43px}.sidebar{grid-template-columns:112px minmax(0,1fr);gap:6px;padding:8px}.side-brand{border-radius:0;width:112px;min-height:42px;padding:3px;overflow:visible}.brand-lockup-image{width:106px;max-width:100%;transform:none}.side-nav{gap:3px}.side-nav a{border-radius:8px;flex-direction:column;gap:1px;min-height:42px;padding:2px}.side-nav strong{font-size:9px;line-height:1.1}.nav-icon{background:0 0;border-radius:6px;width:19px;height:19px}.nav-icon svg{width:12px;height:12px}.side-nav a.active .nav-icon{background:#8de0d1e6}.workspace-bar{display:none}.app-content{padding:21px 12px 15px}footer{padding:16px 12px 22px;font-size:9px}.page-head{flex-direction:column;align-items:flex-start;margin-bottom:18px}.page-head h1{font-size:25px}.page-head .btn{width:100%}.entry-card,.report-card,.party-form,.party-list{padding:16px}.records-card{padding:12px}.form-grid{grid-template-columns:1fr}.field.span-2{grid-column:span 1}.input-row{align-items:stretch}.input-row .btn{padding:0 11px}.calc-strip{grid-template-columns:1fr}.calc-item{justify-content:space-between;align-items:center;padding:14px 16px;display:flex}.calc-item+.calc-item:before{width:auto;height:1px;inset:0 15px auto}.calc-item small{margin:0}.calc-item strong{font-size:18px}.form-actions{grid-template-columns:1fr 1fr;display:grid}.summary-grid,.module-summary{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.metric{min-height:94px;padding:14px}.metric .value{font-size:17px}.filters{border-radius:12px;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;margin-bottom:11px;padding:8px}.filters .field:first-child{grid-column:1/-1}.filters>select{grid-area:2/1}.filters>.btn{grid-area:2/2;width:100%}.filters>input:first-of-type{grid-area:3/1}.filters>input:nth-of-type(2){grid-area:3/2}.filters input,.filters select{border-radius:9px;min-height:38px;padding:7px 9px;font-size:11px}.filters .btn{border-radius:9px;min-height:38px;padding:7px 8px;font-size:10px}.report-filter-row{grid-template-columns:1fr}.report-filter-row .btn{width:100%}.record-head{flex-direction:row;align-items:center;min-height:36px;margin-bottom:8px}.record-head h2{font-size:14px}.record-actions{display:flex}.record-actions .btn{min-height:32px;padding:6px 9px;font-size:10px}.record-actions .btn:disabled{display:none}.desktop-only-import,.recycle-button{display:none!important}.records-card table{min-width:900px;font-size:10px}.records-card th{padding:9px 8px;font-size:9px}.records-card td{padding:9px 8px}.records-card .pagination{margin-top:10px}.report-module-tabs{grid-template-columns:1fr;gap:8px}.report-module-tabs button{min-height:68px;padding:12px 14px}.report-module-tabs button>svg{width:38px;height:38px}.chart-head{display:block}.chart-head-actions{margin-top:10px;display:block}.series-toggles{margin-top:9px}.chart-box{height:270px}.section-head{align-items:flex-start}.section-head h2{font-size:14px}.party-tabs{grid-template-columns:repeat(5,1fr);gap:5px;display:grid}.party-tabs button{justify-content:center;padding:10px 6px}.manage-layout{grid-template-columns:1fr}.toast{top:68px;left:12px;right:12px}.recycle-modal{max-height:calc(100vh - 20px);padding:16px}.recycle-toolbar .btn{width:100%}.debt-tabs{gap:8px}.debt-tabs button{gap:8px;min-height:64px;padding:10px}.debt-tabs button>svg{width:34px;height:34px;padding:8px}.debt-tabs strong{font-size:12px}.debt-tabs small{display:none}.debt-card{padding:12px}.debt-filters{grid-template-columns:1fr 1fr;gap:7px;padding:8px}.debt-filters .field{grid-column:1/-1}.debt-filters .btn{width:100%}.debt-table{min-width:760px;font-size:10px}.debt-table th,.debt-table td{padding:9px 8px}.debt-detail-modal{max-height:calc(100vh - 20px);padding:16px}.debt-formula{grid-template-columns:1fr auto 1fr;gap:6px;padding:10px}.debt-formula span:last-child{border-top:1px solid #dce9e6;grid-column:1/-1;padding-top:9px}.debt-formula b:nth-of-type(3){display:none}.statement-filters{grid-template-columns:1fr 1fr;gap:7px;padding:9px}.statement-filters .btn{grid-column:1/-1;width:100%}.statement-modal{padding:14px}.billing-card,.billing-history{padding:13px}.billing-head-grid{grid-template-columns:1fr;gap:10px}.billing-head-grid .span-2{grid-column:auto}.billing-form-actions{flex-direction:column;align-items:stretch}.billing-quantity-summary{grid-template-columns:1fr 1fr;display:grid}.billing-money-summary{flex-direction:column;align-items:stretch}.billing-money-summary label{justify-content:space-between}.billing-money-summary label input{flex:1}.billing-form-actions>.btn{width:100%}.billing-saved-banner{flex-direction:column;align-items:stretch}.billing-filters{grid-template-columns:1fr 1fr;gap:6px}.billing-filters .btn{grid-column:1/-1;width:100%}.roll-modal{padding:16px}.roll-operation,.roll-preview{grid-template-columns:1fr 1fr}.roll-preview>div:nth-child(2){grid-area:2/1/auto/-1}.bill-print-page{overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch;padding:10px;overflow-x:auto}.bill-print-editor{width:auto;margin:0}.bill-print-toolbar{z-index:5;width:calc(100vw - 20px);min-width:0;margin-left:0;position:sticky;left:0}.bill-print-toolbar>span:first-child{display:none}.bill-print-sheet{width:1120px;max-width:none}.bill-layout-actions{justify-content:flex-end;width:100%;max-width:100%;overflow-x:auto}}
