:root{font-family:Inter,PingFang SC,Microsoft YaHei,sans-serif;color:#1c2b33;background:#f5f7f6;font-synthesis:none}*{box-sizing:border-box}body{margin:0;min-width:320px}button,input,select,textarea{font:inherit}button{cursor:pointer}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #bce5dc;outline-offset:2px}.login-shell{min-height:100vh;display:grid;place-items:center;padding:28px;background:linear-gradient(135deg,#edf6f2,#f6f8f7 55%,#d8ede6)}.login-card{width:min(100%,430px);padding:46px;border:1px solid #d8e7e1;border-radius:22px;background:#fff;box-shadow:0 20px 60px #1e56401a;text-align:center}.brand-mark{display:grid;place-items:center;width:52px;height:52px;margin:0 auto 18px;border-radius:15px;background:#146c5a;color:#fff;font-weight:800;letter-spacing:-1px}.eyebrow{margin:0;color:#648177;font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.login-card h1{margin:5px 0 8px;font-size:30px;letter-spacing:-.06em}.login-copy{color:#66756e;line-height:1.7}.login-form{display:grid;gap:16px;margin-top:30px;text-align:left}.login-form label,.form-grid label,.sale-line label{display:grid;gap:7px;font-size:13px;font-weight:700;color:#40554c}.login-form input,.form-grid input,.form-grid select,.form-grid textarea,.sale-line input,.page-actions input{width:100%;height:44px;padding:0 12px;border:1px solid #d8e1dd;border-radius:9px;background:#fff;color:#1c2b33}.login-form .check{display:flex;align-items:center;gap:8px;font-weight:500}.check input{width:15px;height:15px}.primary{min-height:44px;padding:0 17px;border:0;border-radius:9px;background:#146c5a;color:#fff;font-weight:750;transition:background .18s}.primary:hover{background:#0d594a}.login-form .primary{margin-top:5px}.login-tip{margin:22px 0 0;color:#87948f;font-size:12px}.app-shell{min-height:100vh;display:flex;background:#f5f7f6}.sidebar{position:fixed;z-index:30;display:flex;flex-direction:column;width:236px;height:100dvh;padding:18px 13px;background:#123b35;color:#e7f1ed}.sidebar-brand{display:flex;align-items:center;gap:10px;padding:0 11px 25px;font-size:18px;letter-spacing:-.04em}.sidebar-brand span{display:grid;place-items:center;width:32px;height:32px;border-radius:9px;background:#e5aa47;color:#163e36;font-size:12px;font-weight:900}.sidebar nav{display:grid;gap:3px}.sidebar nav button{display:flex;align-items:center;gap:13px;width:100%;min-height:43px;padding:0 11px;border:0;border-radius:8px;background:transparent;color:#c8d8d2;text-align:left;font-size:14px}.sidebar nav button i{width:17px;color:#9dc5b7;font-style:normal;text-align:center}.sidebar nav button:hover,.sidebar nav button.active{background:#216050;color:#fff}.sidebar nav button.active i{color:#f1c66a}.sidebar-user{display:flex;align-items:center;gap:9px;margin-top:auto;padding:15px 10px 4px;border-top:1px solid #2b5b51}.sidebar-user span:nth-child(2){display:grid;gap:2px;flex:1;font-size:12px}.sidebar-user small{color:#9bb8ad}.sidebar-user button{border:0;background:transparent;color:#bad0c8;font-size:20px}.avatar{display:grid;place-items:center;width:32px;height:32px;border-radius:50%;background:#ddac59;color:#fff;font-size:13px;font-weight:800}.content-area{width:calc(100% - 236px);min-height:100vh;margin-left:236px;padding-bottom:35px}.topbar{display:flex;align-items:center;justify-content:space-between;min-height:84px;padding:17px clamp(22px,4vw,55px);background:#fff;border-bottom:1px solid #e3e9e6}.topbar h2{margin:3px 0 0;font-size:23px;letter-spacing:-.04em}.top-actions{display:flex;align-items:center;gap:16px}.outline{min-height:38px;padding:0 13px;border:1px solid #b8d2c9;border-radius:8px;background:#fff;color:#146c5a;font-weight:700}.outline:hover{background:#eef7f4}.mobile-menu{display:none}.page{max-width:1450px;margin:auto;padding:28px clamp(22px,4vw,55px)}.welcome{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:25px 28px;border-radius:14px;background:#e4f1eb;color:#173e35}.welcome h3{margin:6px 0 5px;font-size:26px;letter-spacing:-.05em}.welcome p{margin:0;color:#547268;font-size:14px}.status-dot{display:inline-block;width:7px;height:7px;margin-right:7px;border-radius:50%;background:#27a37c}.metric-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:15px;margin:19px 0}.metric{display:grid;gap:9px;min-height:132px;padding:20px;border:1px solid #e1e9e5;border-radius:13px;background:#fff}.metric span{color:#667d73;font-size:13px}.metric strong{font-size:25px;letter-spacing:-.05em}.metric small{color:#85948e;font-size:12px}.metric em{color:#0e8e68;font-style:normal;font-weight:800}.metric.revenue{border-color:#d2e5dd;background:#fafffc}.home-grid,.finance-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:18px}.panel,.form-card{border:1px solid #e1e9e5;border-radius:13px;background:#fff}.panel{padding:21px}.panel-title,.page-actions,.form-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}.panel-title h3,.page-actions h3,.form-heading h3{margin:0;font-size:17px;letter-spacing:-.03em}.panel-title small,.page-actions p{margin:6px 0 0;color:#82918c;font-size:12px}.text-button{padding:3px 0;border:0;background:transparent;color:#146c5a;font-size:13px;font-weight:750}.text-button:hover{text-decoration:underline}.quick-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:18px}.quick-grid button{display:grid;gap:9px;place-items:start;min-height:108px;padding:17px;border:1px solid #deebe5;border-radius:10px;background:#fbfdfc;color:#2d433a;text-align:left}.quick-grid button:hover{border-color:#8dc9b8;background:#f0f8f5}.quick-grid b{display:grid;place-items:center;width:29px;height:29px;border-radius:8px;background:#dcefe8;color:#146c5a;font-size:18px}.quick-grid span{font-size:13px;font-weight:750}.todo{display:grid;grid-template-columns:36px 1fr auto;align-items:center;gap:11px;padding:15px 0;border-bottom:1px solid #edf1ef}.todo:last-child{border-bottom:0}.todo-icon{display:grid;place-items:center;width:32px;height:32px;border-radius:9px;background:#fff1d7;color:#a86c00;font-size:12px;font-weight:800}.todo-icon.pay{background:#e8efff;color:#3f63b5}.todo div{display:grid;gap:4px}.todo b{font-size:13px}.todo small{color:#81908b;font-size:11px}.todo strong{font-size:14px}.segmented{display:flex;gap:4px;width:max-content;max-width:100%;padding:4px;border:1px solid #dde7e2;border-radius:10px;background:#fff}.segmented button{min-height:35px;padding:0 13px;border:0;border-radius:7px;background:transparent;color:#657971;font-size:13px;font-weight:700}.segmented button.active{background:#dff0e9;color:#146c5a}.form-card{margin-top:20px;padding:27px}.form-heading{padding-bottom:19px;border-bottom:1px solid #e7eeeb}.draft{padding:6px 9px;border-radius:20px;background:#eef6f2;color:#397463;font-size:11px;font-weight:750}.form-section{padding:22px 0;border-bottom:1px solid #e7eeeb}.form-section h4{margin:0 0 14px;font-size:14px}.form-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.form-grid textarea{height:74px;padding:10px 12px;resize:vertical}.form-grid .wide{grid-column:span 2}.customer-row{grid-template-columns:2fr auto 1fr 1.5fr}.add-customer{align-self:end;height:44px;white-space:nowrap}.autocomplete{position:relative}.suggestions{position:absolute;z-index:20;top:100%;left:0;right:0;max-height:230px;overflow:auto;padding:5px;border:1px solid #cce1d9;border-radius:8px;background:#fff;box-shadow:0 10px 25px #1e493a1a}.suggestions button{display:grid;gap:3px;width:100%;padding:10px;border:0;border-radius:6px;background:#fff;color:#2b4038;text-align:left}.suggestions button:hover{background:#eff8f4}.suggestions small{color:#80918a;font-weight:500}.suggestions .new-option{color:#146c5a;font-weight:800}.line-header,.sale-line{display:grid;grid-template-columns:2.5fr .9fr .9fr .9fr 1.1fr;align-items:center;gap:10px}.line-header{padding:0 3px 7px;color:#7c8d87;font-size:11px;font-weight:700}.sale-line{padding:12px;border-radius:9px;background:#f7faf8}.sale-line label{display:block}.sale-line input{height:41px}.sale-line b{justify-self:end;font-size:15px}.readonly{color:#697d74;font-size:13px}.totals{display:grid;grid-template-columns:1fr 200px;gap:24px;align-items:end;border-bottom:0}.amount-box{display:grid;gap:7px;padding:16px;border-radius:10px;background:#eef7f3;text-align:right}.amount-box span,.amount-box small{color:#638077;font-size:12px}.amount-box strong{font-size:24px;color:#146c5a}.submit{float:right;min-width:170px;margin-top:3px}.form-card:after{content:"";display:block;clear:both}.amount-summary{display:flex;justify-content:flex-end;gap:31px;margin:25px 0 4px}.amount-summary span{color:#657d73;font-size:13px}.amount-summary strong{margin-left:7px;color:#183f35;font-size:19px}.page-actions{margin-bottom:19px}.page-actions p{line-height:1.45}.page-actions>input{width:280px}.desktop-table{overflow:auto;padding:0}.desktop-table table{width:100%;border-collapse:collapse;text-align:left;white-space:nowrap}.desktop-table th{padding:13px 15px;border-bottom:1px solid #e4ebe7;background:#f7f9f8;color:#6b7d75;font-size:11px;font-weight:800}.desktop-table td{padding:16px 15px;border-bottom:1px solid #edf1ef;font-size:13px}.desktop-table tr:last-child td{border-bottom:0}.link{padding:0;border:0;background:transparent;color:#146c5a;font-size:inherit;font-weight:800;text-align:left}.link:hover{text-decoration:underline}.pill{display:inline-flex;align-items:center;min-height:23px;padding:0 8px;border-radius:20px;background:#fff3dc;color:#9c6400;font-size:11px;font-weight:800}.pill.sent{background:#e2f3ec;color:#137153}.pill.void{background:#f0f0f0;color:#737373}.row-actions{display:flex;gap:10px}.danger,.negative{color:#bd4545}.positive{color:#168361}.mobile-records{display:none}.product-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.product-card{display:grid;grid-template-columns:86px 1fr;gap:14px;min-width:0;padding:15px;border:1px solid #e1e9e5;border-radius:12px;background:#fff}.product-photo{display:grid;place-items:center;aspect-ratio:1;border-radius:9px;background:linear-gradient(135deg,#dfede7,#aacbbb);color:#146c5a;font-size:29px;font-weight:800}.product-name{font-size:14px}.product-card p{margin:5px 0 10px;color:#7b8e86;font-size:11px}.product-data{display:flex;gap:15px;margin-bottom:8px;color:#71847c;font-size:11px}.product-data b{display:block;margin-top:3px;color:#264239;font-size:13px}.product-card small{color:#8a9993;font-size:10px}.finance-tabs{display:flex;gap:20px;margin-bottom:18px;border-bottom:1px solid #dfe8e4}.finance-tabs button{padding:0 0 12px;border:0;border-bottom:2px solid transparent;background:transparent;color:#70827b;font-weight:750}.finance-tabs button.active{border-color:#146c5a;color:#146c5a}.receivable{display:flex;align-items:center;justify-content:space-between;padding:16px 0;border-bottom:1px solid #edf1ef}.receivable:last-child{border:0}.receivable div{display:grid;gap:5px}.receivable b{font-size:13px}.receivable small{color:#83918c;font-size:11px}.receivable strong{color:#355148;font-size:15px}.empty-page{display:grid;place-items:center;gap:13px;min-height:55vh;text-align:center}.empty-page h3{margin:0;font-size:22px}.empty-page p{max-width:450px;margin:0;color:#70827a;line-height:1.7;font-size:13px}.empty-icon{display:grid;place-items:center;width:55px;height:55px;border-radius:50%;background:#e3f1eb;color:#146c5a;font-size:24px}.mobile-nav{display:none}.toast{position:fixed;z-index:100;bottom:30px;left:50%;max-width:calc(100vw - 36px);padding:12px 16px;border-radius:9px;background:#173f35;color:#fff;box-shadow:0 8px 20px #1a493a33;font-size:13px;font-weight:650;transform:translate(-50%)}.toast-enter-active,.toast-leave-active{transition:opacity .2s,transform .2s}.toast-enter-from,.toast-leave-to{opacity:0;transform:translate(-50%,10px)}.mask{display:none}.notice{margin-top:17px;padding:12px 14px;border-radius:8px;background:#fff7e7;color:#826027;font-size:12px;line-height:1.6}.quote-layout{display:grid;grid-template-columns:minmax(0,2fr) minmax(280px,1fr);gap:18px;align-items:start}.quote-form{margin-top:0}.quote-title{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin:22px 0 19px;padding-bottom:14px;border-bottom:1px solid #e7eeeb}.quote-title span{font-size:20px;font-weight:800}.quote-title p{margin:4px 0 0;color:#71847b;font-size:11px;line-height:1.45}.quote-title small{padding-top:5px;color:#83918c;font-size:11px;white-space:nowrap}.quote-company-info{margin-top:8px!important;color:#71847b!important;font-size:11px!important;line-height:1.55!important}.quote-product{display:grid;grid-template-columns:130px 1fr;gap:18px;margin-top:22px;padding:17px;border-radius:10px;background:#f7faf8}.quote-product .product-photo{min-height:130px}.quote-fields{min-width:0}.quote-fields>p{margin:8px 0 15px;color:#75877f;font-size:12px}.quote-price-row{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.quote-price-row label{display:grid;gap:6px;color:#61756c;font-size:11px;font-weight:700}.quote-price-row span{display:block;min-height:40px;padding:11px;border:1px solid #dfe8e4;border-radius:8px;background:#fff;color:#2e433b;font-size:13px}.quote-price-row input{width:100%;height:40px;padding:0 10px;border:1px solid #d8e1dd;border-radius:8px;background:#fff}.quote-total{margin-top:20px;color:#647a70;text-align:right;font-size:13px}.quote-total strong{margin-left:8px;color:#146c5a;font-size:23px}.quote-history{padding:19px}.quote-record{display:grid;gap:7px;padding:15px 0;border-bottom:1px solid #eaf0ed}.quote-record:last-child{border-bottom:0}.quote-record>b{font-size:13px}.quote-record>span{color:#72867d;font-size:12px}.quote-record>div{display:flex;align-items:center;justify-content:space-between;gap:8px}.quote-record small{color:#8a9893;font-size:10px}.quote-record strong{font-size:14px}.inline-form{display:grid;gap:15px;margin-bottom:17px}.inline-form .primary{justify-self:end}.customer-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.customer-card{display:grid;gap:14px;padding:17px;border:1px solid #e1e9e5;border-radius:11px;background:#fff}.customer-card>div{display:flex;align-items:center;gap:11px}.customer-card>div>span:last-child{display:grid;gap:4px;min-width:0}.customer-initial{display:grid;place-items:center;flex:none;width:37px;height:37px;border-radius:50%;background:#ddefe8;color:#146c5a;font-size:15px;font-weight:800}.customer-card small{color:#7b9287;font-size:10px}.customer-card p{min-height:35px;margin:0;color:#6e8179;font-size:12px;line-height:1.6}.customer-card footer{display:flex;align-items:center;justify-content:space-between;padding-top:11px;border-top:1px solid #edf2ef;color:#8a9993;font-size:11px}.customer-card footer strong{font-size:12px}@media(max-width:1100px){.metric-grid,.product-grid,.customer-grid,.form-grid{grid-template-columns:repeat(2,1fr)}.customer-row{grid-template-columns:2fr auto 1fr}.customer-row label:last-child{grid-column:span 2}.home-grid,.finance-grid,.quote-layout,.totals{grid-template-columns:1fr}.amount-box{max-width:300px;justify-self:end}.product-card{grid-template-columns:90px 1fr}}.finance-list{max-width:920px}.payable-row{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:17px 0;border-bottom:1px solid #eaf0ed}.payable-row:last-child{border-bottom:0}.payable-row>div:first-child{display:grid;gap:5px;min-width:0}.payable-row b{font-size:13px}.payable-row small{color:#768981;font-size:11px}.approval-actions{display:flex;align-items:center;gap:8px;flex:none}.small-primary{min-height:38px;padding:0 12px;font-size:12px}.supplier-initial{background:#e7ecfb;color:#4967ad}.inventory-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:18px;align-items:start}.scrap-panel{padding:18px}.scrap-form{display:grid;gap:12px;margin-top:17px}.scrap-form label{display:grid;gap:6px;color:#50665d;font-size:12px;font-weight:700}.scrap-form input,.scrap-form select,.scrap-form textarea{width:100%;min-height:40px;padding:9px 10px;border:1px solid #d9e3de;border-radius:8px;background:#fff}.scrap-form textarea{min-height:62px;resize:vertical}.scrap-summary{margin-top:16px;padding:11px;border-radius:8px;background:#eef7f3;color:#617c72;font-size:12px}.scrap-summary strong{float:right;color:#146c5a;font-size:15px}.scrap-log{display:grid;gap:8px;margin-top:15px}.scrap-log>div{display:grid;gap:3px;padding-top:10px;border-top:1px solid #edf1ef}.scrap-log span{color:#778a82;font-size:10px}@media(max-width:760px){body{background:#f5f7f6}.sidebar{transform:translate(-100%);width:276px;transition:transform .2s}.sidebar.open{transform:translate(0)}.mask{position:fixed;z-index:25;display:block;inset:0;background:#173c32aa}.content-area{width:100%;margin-left:0;padding-bottom:84px}.topbar{min-height:70px;padding:12px 16px}.mobile-menu{display:grid;place-items:center;width:38px;height:38px;margin-right:8px;border:0;border-radius:8px;background:#edf6f2;color:#146c5a;font-size:19px}.topbar{justify-content:flex-start}.topbar h2{font-size:19px}.top-actions{margin-left:auto}.top-actions .outline{display:none}.top-actions .avatar{width:31px;height:31px}.page{padding:17px 14px}.welcome{align-items:flex-start;flex-direction:column;padding:19px}.welcome h3{font-size:22px}.welcome .primary{width:100%}.metric-grid{gap:10px;margin:12px 0;grid-template-columns:repeat(2,1fr)}.metric{min-height:112px;padding:14px}.metric strong{font-size:19px}.metric small{line-height:1.35}.panel{padding:16px}.quick-grid{gap:8px}.quick-grid button{min-height:95px;padding:12px}.quick-grid span{font-size:12px}.segmented{width:100%;overflow:auto}.segmented button{flex:1;white-space:nowrap}.form-card{margin-top:14px;padding:16px;border-radius:11px}.form-heading{align-items:center}.form-heading h3{font-size:18px}.draft{font-size:10px}.form-grid,.customer-row{grid-template-columns:1fr 1fr;gap:11px}.customer-row label:first-child{grid-column:span 1}.customer-row label:last-child{grid-column:span 2}.add-customer{padding:0 8px;font-size:12px}.form-grid .wide{grid-column:span 2}.form-section{padding:18px 0}.line-header{display:none}.sale-line{grid-template-columns:1fr 1fr;gap:9px;padding:10px}.sale-line label:first-child{grid-column:span 2}.sale-line .readonly{padding-left:10px}.sale-line b{justify-self:start;padding-left:10px}.totals{gap:14px}.amount-box{max-width:none}.submit{float:none;width:100%;margin-top:12px}.amount-summary{justify-content:space-between;gap:8px;margin-top:18px}.page-actions{align-items:center}.page-actions h3{font-size:18px}.page-actions>input{display:none}.desktop-table{display:none}.mobile-records{display:grid;gap:10px}.record-card{display:grid;gap:11px;padding:14px;border:1px solid #e0e9e4;border-radius:11px;background:#fff}.record-card>div:first-child,.record-money,.record-card footer,.two-side{display:flex;align-items:center;justify-content:space-between;gap:12px}.record-card>div:first-child span{padding:4px 6px;border:1px solid #d8e5df;border-radius:5px;color:#71837c;font-size:10px}.record-card>b{font-size:13px;line-height:1.5}.record-money span{overflow:hidden;color:#6d8179;font-size:12px;text-overflow:ellipsis;white-space:nowrap}.record-money strong{display:grid;justify-items:end;font-size:15px;white-space:nowrap}.record-money small{color:#83928d;font-size:10px;font-weight:500}.record-card footer{padding-top:10px;border-top:1px solid #eef2f0}.record-card.fund{gap:13px}.two-side{font-size:12px}.two-side b{max-width:70%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.two-side small,.two-side span{color:#72847c}.product-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.product-card{grid-template-columns:1fr;gap:10px;padding:10px}.product-photo{font-size:25px}.product-card p{height:27px;margin:4px 0 6px;overflow:hidden;line-height:1.25}.product-data{justify-content:space-between;gap:4px}.product-data b{font-size:12px}.product-card small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.finance-tabs{gap:16px;overflow:auto}.finance-tabs button{white-space:nowrap;font-size:12px}.finance-grid{gap:12px}.mobile-nav{position:fixed;z-index:50;right:0;bottom:0;left:0;display:grid;grid-template-columns:repeat(5,1fr);height:68px;padding-bottom:env(safe-area-inset-bottom);border-top:1px solid #dfe8e4;background:#fff}.mobile-nav button{display:grid;place-items:center;gap:2px;padding:5px 0 3px;border:0;background:#fff;color:#687c73;font-size:10px}.mobile-nav button i{font-size:18px;font-style:normal}.mobile-nav button.active{color:#146c5a;font-weight:800}.mobile-nav button.create i{display:grid;place-items:center;width:31px;height:31px;margin-top:-15px;border:3px solid #f5f7f6;border-radius:50%;background:#146c5a;color:#fff}.mobile-nav button.create{color:#146c5a;font-weight:800}.toast{bottom:83px}.login-card{padding:36px 26px;border-radius:16px}.login-shell{padding:18px}}@media(max-width:760px){.quote-layout{gap:12px}.quote-product{grid-template-columns:96px minmax(0,1fr);gap:11px;padding:11px}.quote-product .product-photo{min-height:96px}.quote-price-row{grid-template-columns:1fr 1fr}.quote-price-row label:first-child{grid-column:span 2}.quote-title span{font-size:17px}.quote-history{padding:15px}.customer-grid{grid-template-columns:1fr;gap:10px}.customer-card{gap:10px;padding:14px}.inline-form .primary{justify-self:stretch}.notice{font-size:11px}}@media(max-width:760px){.inventory-layout{grid-template-columns:1fr!important;gap:12px}.scrap-panel{padding:15px}.payable-row{align-items:flex-start;gap:10px}.payable-row .outline{min-height:36px;padding:0 10px;font-size:11px}}.settings-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:17px}.settings-grid .panel{padding:20px}.setting-form{margin-top:17px}.compact-form{display:grid;grid-template-columns:1.2fr 1fr auto;gap:8px;margin-top:15px}.compact-form input{min-width:0;height:39px;padding:0 9px;border:1px solid #d8e1dd;border-radius:8px}.backup-actions{display:flex;flex-wrap:wrap;gap:8px;margin:18px 0}.export-log{display:grid;gap:9px;padding-top:14px;border-top:1px solid #e8eeeb}.export-log>b{font-size:12px}.export-log>div{display:grid;gap:2px}.export-log span{color:#446359;font-size:11px}.export-log small{color:#889791;font-size:10px}@media(max-width:760px){.settings-grid{grid-template-columns:1fr;gap:12px}.settings-grid .panel{padding:15px}.compact-form{grid-template-columns:1fr 1fr}.compact-form .outline{grid-column:span 2}.backup-actions{display:grid;grid-template-columns:1fr}.backup-actions .outline{width:100%}}.modal-backdrop{position:fixed;z-index:80;inset:0;display:grid;place-items:center;padding:22px;background:#173c32a8}.order-modal{width:min(100%,670px);max-height:min(86dvh,760px);overflow:auto;padding:24px;border-radius:15px;background:#fff;box-shadow:0 20px 60px #122b2380}.order-modal header{display:flex;align-items:flex-start;justify-content:space-between;gap:15px}.order-modal h3{margin:4px 0 0;font-size:20px}.order-modal h4{margin:0 0 14px;font-size:15px}.modal-close{display:grid;place-items:center;width:34px;height:34px;border:0;border-radius:50%;background:#eef5f1;color:#405d53;font-size:23px}.detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:18px}.detail-grid span{display:grid;gap:4px;padding:10px;border-radius:8px;background:#f6f9f7;color:#74867e;font-size:11px}.detail-grid b{overflow:hidden;color:#284038;font-size:13px;text-overflow:ellipsis;white-space:nowrap}.modal-divider{height:1px;margin:19px 0;background:#e5ece8}.ship-form{display:grid;grid-template-columns:1fr 1fr;gap:11px}.ship-form label{display:grid;gap:6px;color:#50665d;font-size:12px;font-weight:700}.ship-form input,.ship-form select{width:100%;height:42px;padding:0 10px;border:1px solid #d8e2dd;border-radius:8px;background:#fff}.ship-form .wide{grid-column:span 2}@media(max-width:760px){.modal-backdrop{align-items:end;padding:0}.order-modal{width:100%;max-height:88dvh;padding:18px;border-radius:16px 16px 0 0}.detail-grid{grid-template-columns:1fr 1fr;gap:8px}.detail-grid span{padding:9px}.ship-form{grid-template-columns:1fr}.ship-form .wide{grid-column:span 1}}.shipment-proof .image-picker{margin-top:0}.shipment-proof-detail button{display:block;overflow:hidden;width:100%;max-width:180px;padding:0;border:1px solid #d7e3dd;border-radius:7px;background:#fff}.shipment-proof-detail img{display:block;width:100%;max-height:120px;object-fit:cover}.expense-line-list{display:grid;gap:10px;margin-top:20px}.expense-line{display:grid;grid-template-columns:1.25fr .85fr 1fr auto;align-items:end;gap:10px;padding:12px;border-radius:9px;background:#f7faf8}.expense-line label{display:grid;gap:6px;color:#50665d;font-size:12px;font-weight:700}.expense-line input{width:100%;height:41px;padding:0 10px;border:1px solid #d8e2dd;border-radius:8px;background:#fff}.expense-line .image-picker{min-height:41px;margin:0}.expense-line .text-button{align-self:center;white-space:nowrap}.add-expense-line{margin-top:10px}.expense-meta{margin-top:18px}@media(max-width:760px){.expense-line{grid-template-columns:1fr 1fr;gap:9px;padding:10px}.expense-line .expense-proof{grid-column:span 2}.expense-line .text-button{grid-column:2;justify-self:end}.expense-meta{margin-top:15px}}.order-detail-lines{display:grid;gap:8px}.order-detail-lines>div{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:3px 12px;padding:10px 12px;border:1px solid #e3ebe7;border-radius:8px;background:#f9fbfa}.order-detail-lines b{overflow:hidden;color:#294239;text-overflow:ellipsis;white-space:nowrap;font-size:13px}.order-detail-lines small,.order-detail-lines span{color:#71847b;font-size:11px}.order-detail-lines span{grid-column:1}.order-detail-lines strong{grid-column:2;grid-row:1 / span 2;align-self:center;color:#176b59;font-size:13px}@media(max-width:760px){.order-detail-lines>div{padding:9px 10px}.order-detail-lines b{font-size:12px}}.stats-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.stat-card{display:grid;gap:15px;padding:18px;border:1px solid #e1e9e5;border-radius:11px;background:#fff}.stat-card>div,.stat-card footer{display:flex;align-items:center;justify-content:space-between;gap:10px}.stat-card b{overflow:hidden;font-size:14px;text-overflow:ellipsis;white-space:nowrap}.stat-card span{flex:none;color:#6f837a;font-size:11px}.stat-card p{margin:0;color:#6d8178;font-size:12px}.stat-card p strong{margin-left:6px;color:#264239;font-size:15px}.stat-card footer{padding-top:12px;border-top:1px solid #edf2ef;color:#6d8178;font-size:12px}.stat-card footer strong{color:#146c5a;font-size:15px}@media(max-width:760px){.stats-grid{grid-template-columns:1fr;gap:10px}.stat-card{gap:11px;padding:14px}}.login-error{margin:14px 0 -7px;color:#bd4545;font-size:12px;font-weight:700}.fund-date-status{display:flex;align-items:center;gap:6px}.fund-date-status em{padding:3px 6px;border-radius:5px;background:#f0f0f0;color:#737373;font-size:10px;font-style:normal;font-weight:800}@media(max-width:760px){.record-card>div:first-child .fund-date-status span{padding:4px 6px;border:1px solid #d8e5df;border-radius:5px;color:#71837c;font-size:10px}}.stats-filter{display:flex;align-items:end;gap:10px;margin:-4px 0 17px}.stats-filter label{display:grid;gap:5px;color:#6f837a;font-size:11px;font-weight:750}.stats-filter input{width:150px;height:38px;padding:0 9px;border:1px solid #d8e3de;border-radius:8px;background:#fff;color:#294139}@media(max-width:760px){.stats-filter{align-items:end;gap:8px}.stats-filter label{flex:1;min-width:0}.stats-filter input{width:100%;min-width:0}.stats-filter .text-button{padding:0 2px 11px;white-space:nowrap;font-size:11px}}.add-quote-line{margin-top:14px}.quote-line-remove{margin-top:10px}.quote-list-price{color:#8a9993;text-decoration:line-through;text-decoration-thickness:1px}.quote-detail-modal{width:min(100%,720px)}.quote-detail-lines{display:grid;gap:9px}.quote-detail-lines article{display:grid;grid-template-columns:58px minmax(0,1fr) auto;align-items:center;gap:11px;padding:11px;border:1px solid #e2ebe6;border-radius:10px;background:#f8fbf9}.quote-detail-lines .product-photo{display:grid;place-items:center;width:58px;min-height:58px;margin:0;border-radius:9px;font-size:22px}.quote-detail-lines article>div{display:grid;min-width:0;gap:4px}.quote-detail-lines b{overflow:hidden;color:#2d433a;text-overflow:ellipsis;white-space:nowrap;font-size:13px}.quote-detail-lines small,.quote-detail-lines span{color:#71847b;font-size:11px;line-height:1.5}.quote-detail-lines del{color:#8a9993;text-decoration-thickness:1px}.quote-detail-lines article>strong{white-space:nowrap;color:#176b59;font-size:13px}@media(max-width:760px){.quote-line-remove{font-size:11px}.quote-detail-lines article{grid-template-columns:48px minmax(0,1fr);gap:9px;padding:10px}.quote-detail-lines .product-photo{width:48px;min-height:48px;font-size:19px}.quote-detail-lines article>strong{grid-column:2;justify-self:end}.quote-detail-lines b{font-size:12px}}.category-tabs{display:flex;gap:8px;flex-wrap:wrap;margin:-5px 0 16px}.category-tabs button{min-height:34px;padding:0 13px;border:1px solid #d9e5df;border-radius:18px;background:#fff;color:#62776e;font-size:12px;font-weight:750}.category-tabs button.active{border-color:#146c5a;background:#146c5a;color:#fff}.product-heading{display:flex;align-items:center;gap:7px;min-width:0}.category-badge{display:inline-flex;flex:none;align-items:center;min-height:20px;padding:0 6px;border-radius:10px;font-size:10px;font-weight:800}.category-badge.成品{background:#e3f2ec;color:#167354}.category-badge.半成品{background:#e9efff;color:#4968ad}.category-badge.耗材{background:#fff1d9;color:#9b6500}.bom-panel{margin-top:16px;padding:18px}.bom-lines{display:flex;flex-wrap:wrap;gap:7px;margin:15px 0}.bom-lines span{padding:5px 7px;border-radius:6px;background:#eff6f2;color:#4b6a5f;font-size:11px}.bom-form,.assembly-form{display:grid;grid-template-columns:1.3fr 1.3fr .7fr auto;gap:8px}.bom-form label,.assembly-form label{display:grid;gap:5px;color:#61766d;font-size:11px;font-weight:700}.bom-form select,.bom-form input,.assembly-form select,.assembly-form input{width:100%;height:39px;padding:0 9px;border:1px solid #d8e2dd;border-radius:8px;background:#fff}.assembly-form{grid-template-columns:1.5fr .8fr auto;margin-top:12px;padding-top:13px;border-top:1px solid #e8efeb}@media(max-width:760px){.bom-panel{padding:15px}.bom-form,.assembly-form{grid-template-columns:1fr 1fr}.bom-form label:first-child,.bom-form label:nth-child(2),.assembly-form label:first-child{grid-column:span 2}.bom-form .outline,.assembly-form .primary{grid-column:span 2}.category-tabs{flex-wrap:nowrap;overflow:auto;padding-bottom:2px}.category-tabs button{white-space:nowrap}}input[type=number]::-webkit-inner-spin-button,input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}input[type=number]{-moz-appearance:textfield;appearance:textfield}.product-tools{display:flex;align-items:center;flex-wrap:wrap;gap:9px;margin:0 0 18px}.product-tools span{margin-left:auto;color:#75867f;font-size:12px}.danger-outline{border-color:#edc5c5!important;color:#a84141!important;background:snow!important}.business-modal{width:min(100%,760px);max-height:min(88dvh,790px);overflow:auto;padding:24px;border-radius:15px;background:#fff;box-shadow:0 20px 60px #122b2380}.business-modal header{display:flex;align-items:flex-start;justify-content:space-between;gap:15px}.business-modal h3{margin:4px 0 3px;font-size:20px}.business-modal header p{max-width:560px;margin:0;color:#71827b;font-size:12px;line-height:1.65}.business-modal h4{margin:0;font-size:15px}.recipe-block{display:grid;gap:12px}.recipe-block .panel-title{align-items:flex-start}.empty-hint{margin:0;padding:10px 12px;border-radius:8px;background:#f5f8f6;color:#70827a;font-size:12px}.business-modal .bom-form{grid-template-columns:1.3fr 1.3fr .85fr auto}.business-modal .assembly-form{grid-template-columns:1.5fr .85fr auto}.modal-form{margin-top:20px}.modal-form select,.modal-form input,.modal-form textarea{width:100%;border:1px solid #d8e2dd;border-radius:8px;background:#fff}.modal-form select,.modal-form input{height:41px;padding:0 10px}.modal-form textarea{min-height:84px;padding:10px}.modal-form label{display:grid;gap:6px;color:#50665d;font-size:12px;font-weight:700}.scrap-modal{width:min(100%,620px)}@media(max-width:760px){.product-tools{display:grid;grid-template-columns:1fr 1fr;gap:8px}.product-tools .outline{width:100%;padding:0 8px;font-size:12px}.product-tools span{grid-column:span 2;margin:0;font-size:11px}.business-modal{width:100%;max-height:88dvh;padding:18px;border-radius:16px 16px 0 0}.business-modal .bom-form,.business-modal .assembly-form{grid-template-columns:1fr 1fr}.business-modal .bom-form label:first-child,.business-modal .bom-form label:nth-child(2),.business-modal .assembly-form label:first-child,.business-modal .bom-form .outline,.business-modal .assembly-form .primary{grid-column:span 2}.modal-form{grid-template-columns:1fr}.business-modal header p{font-size:11px}}.recipe-lines{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.bom-line{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:2px 8px;padding:9px 10px;border:1px solid #e1ebe6;border-radius:8px;background:#fbfdfc}.bom-line span{overflow:hidden;padding:0!important;background:transparent!important;color:#355347;font-size:12px;text-overflow:ellipsis;white-space:nowrap}.bom-line small{color:#7b8e85;font-size:10px}.remove-bom{grid-row:span 2;grid-column:2;padding:2px;border:0;background:transparent;color:#b14a4a;font-size:11px;font-weight:750}.recipe-cost{display:flex;justify-content:space-between;padding:10px 12px;border-radius:8px;background:#edf7f2;color:#547064;font-size:12px}.recipe-cost strong{color:#146c5a;font-size:15px}@media(max-width:760px){.recipe-lines{grid-template-columns:1fr}.bom-line{min-height:54px}}.product-modal{width:min(100%,690px)}.product-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:20px}.product-form label{display:grid;min-width:0;gap:6px;color:#50665d;font-size:12px;font-weight:700}.product-form input,.product-form select{width:100%;height:41px;min-width:0;padding:0 10px;border:1px solid #d8e2dd;border-radius:8px;background:#fff}.product-form .wide{grid-column:span 2}@media(max-width:760px){.product-form{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.product-form .wide{grid-column:span 2}.product-form label{font-size:11px}.product-form input,.product-form select{height:39px;padding:0 8px;font-size:12px}}.product-detail-modal{width:min(100%,640px)}.product-detail-heading{display:flex;align-items:center;gap:12px;min-width:0}.product-detail-heading .product-photo{display:grid;flex:none;place-items:center;width:58px;min-height:58px;margin:0;border-radius:12px;font-size:25px}.product-detail-heading h3{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.product-detail-grid{margin-top:20px}.product-detail-modal .panel-title{align-items:flex-start}.detail-bom .bom-line{grid-template-columns:1fr}.detail-bom .bom-line small{grid-column:1}@media(max-width:760px){.product-detail-heading .product-photo{width:48px;min-height:48px;font-size:21px}.product-detail-grid{margin-top:15px}}.modal-actions{display:flex;justify-content:flex-end;flex-wrap:wrap;gap:9px;margin-top:18px;padding-top:16px;border-top:1px solid #e7eeea}.modal-actions .outline{min-height:38px}@media(max-width:760px){.modal-actions{display:grid;grid-template-columns:1fr}.modal-actions .outline{width:100%}}.product-search{display:flex;align-items:center;gap:12px;margin:-6px 0 15px}.product-search input{width:min(100%,400px);height:39px;padding:0 11px;border:1px solid #d8e2dd;border-radius:8px;background:#fff}.product-search span{color:#778982;font-size:11px;white-space:nowrap}.product-empty{margin-top:14px;text-align:center}@media(max-width:760px){.product-search{gap:8px;margin:0 0 13px}.product-search input{min-width:0;flex:1;height:38px;font-size:12px}.product-search span{font-size:10px}}.product-page-actions{display:flex;gap:9px}@media(max-width:760px){.product-page-actions{width:100%;display:grid;grid-template-columns:1fr 1fr;gap:8px}.product-page-actions button{min-width:0;padding:0 7px;font-size:12px}}.product-photo{overflow:hidden;border:0;cursor:pointer}.product-photo img{width:100%;height:100%;object-fit:cover}.image-picker{position:relative;display:flex;align-items:center;gap:8px;min-height:42px;margin-top:8px;padding:5px 8px;border:1px dashed #b8cbc1;border-radius:8px;background:#f8fbf9;color:#527064;font-size:11px;font-weight:700}.image-picker input{position:absolute!important;inset:0;width:100%!important;height:100%!important;opacity:0;cursor:pointer}.image-picker img{width:32px;height:32px;border-radius:5px;object-fit:cover}.image-preview-backdrop{position:fixed;z-index:100;inset:0;display:grid;place-items:center;padding:24px;background:#11251ee6;cursor:zoom-out}.image-preview-backdrop img{max-width:100%;max-height:100%;border-radius:10px;object-fit:contain;box-shadow:0 20px 60px #0008}@media(max-width:760px){.image-picker{font-size:10px}}.customer-detail-modal,.purchase-detail-modal{width:min(100%,680px)}.customer-detail-grid .wide{grid-column:1/-1}.customer-order-list{display:grid;gap:8px}.customer-order-row{display:grid;grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:12px;padding:12px 0;border-bottom:1px solid #e8edf5}.customer-order-row:last-child{border-bottom:0}.customer-order-row span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#475569}.customer-order-row strong{white-space:nowrap}.customer-order-row small{justify-self:end;white-space:nowrap;color:#64748b}.status-note{color:#26805d;font-weight:700}@media(max-width:760px){.customer-order-row{grid-template-columns:minmax(0,1fr) auto;gap:5px 10px}.customer-order-row span{grid-column:1/-1;font-size:12px}.customer-order-row small{justify-self:end}}.card-edit{margin-left:auto;border:0;background:transparent;color:#2d8068;font-size:12px;font-weight:700;cursor:pointer}.supplier-card-actions{display:flex!important;align-items:center;gap:10px;margin-left:auto}.supplier-card-actions .card-edit{margin-left:0}.supplier-card-actions .danger-text{border:0;background:transparent;color:#b24b44;font-size:12px;font-weight:700;cursor:pointer}.record-editor-modal{width:min(100%,580px)}.record-editor-form{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:20px}.record-editor-form label{display:grid;gap:6px;color:#50665d;font-size:12px;font-weight:700}.record-editor-form input,.record-editor-form select{width:100%;height:41px;padding:0 10px;border:1px solid #d8e2dd;border-radius:8px;background:#fff}.record-editor-form .wide{grid-column:1/-1}@media(max-width:760px){.card-edit,.supplier-card-actions .danger-text{font-size:11px}.record-editor-form{gap:10px}.record-editor-form input,.record-editor-form select{height:39px;font-size:12px}}.business-expense-page{display:grid;gap:18px}.pending-expense-panel{padding:18px}.pending-expense-list{display:grid;gap:4px}.pending-expense-row{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:16px;padding:12px 0;border-bottom:1px solid #e8edf5}.pending-expense-row:last-child{border-bottom:0}.pending-expense-row div,.pending-expense-row span{display:grid;gap:4px}.pending-expense-row small{color:#64748b}.pending-expense-row span{font-size:12px;text-align:right;color:#64748b}.pending-expense-row span strong{color:#ca5a3a;font-size:13px}.pending-expense-row .outline{min-height:35px;padding:0 10px;white-space:nowrap}@media(max-width:760px){.pending-expense-panel{padding:14px}.pending-expense-row{grid-template-columns:minmax(0,1fr) auto;gap:8px}.pending-expense-row span{grid-column:1/-1;grid-row:2;text-align:left;display:flex;gap:10px}.pending-expense-row .outline{grid-column:2;grid-row:1 / span 2}}.quick-grid{grid-template-columns:repeat(4,1fr)}@media(max-width:760px){.quick-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.scrap-detail-modal{width:min(100%,560px)}.select-with-action{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:6px}.select-with-action button{min-height:41px;padding:0 8px;border:1px solid #b9cec3;border-radius:8px;background:#f3f9f6;color:#176b59;font-size:11px;font-weight:750}.quick-supplier-modal{width:min(100%,520px)}.quick-supplier-form{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:20px}.quick-supplier-form label{display:grid;gap:6px;color:#50665d;font-size:12px;font-weight:700}.quick-supplier-form input{width:100%;height:41px;padding:0 10px;border:1px solid #d8e2dd;border-radius:8px}.quick-supplier-form .wide{grid-column:span 2}@media(max-width:760px){.select-with-action button{min-height:39px;padding:0 6px;font-size:10px}.quick-supplier-form{gap:10px}.quick-supplier-form input{height:39px;font-size:12px}}.record-page-actions{align-items:center}.record-page-actions .segmented{overflow:auto}.record-page-actions .segmented button{white-space:nowrap}.empty-record{display:grid;place-items:center;gap:12px;min-height:260px;text-align:center}.empty-record h3,.empty-record p{margin:0}.empty-record p{max-width:360px;color:#71847c;font-size:13px;line-height:1.6}@media(max-width:760px){.record-page-actions{align-items:stretch}.record-page-actions .segmented{width:100%;padding:4px;scrollbar-width:none}.record-page-actions .segmented button{flex:0 0 auto}.empty-record{min-height:300px;padding:28px 16px}.empty-record .primary{width:100%}}.sale-line{grid-template-columns:2.5fr .9fr .9fr .9fr 1.1fr auto}.add-sale-line{min-height:38px;margin-top:10px}.line-remove{align-self:center;white-space:nowrap}@media(max-width:760px){.sale-line{grid-template-columns:1fr 1fr}.sale-line .line-remove{grid-column:span 2;justify-self:end;padding:0}.add-sale-line{width:100%;margin-top:9px}}.profile-form{max-width:720px;padding:24px}.profile-avatar{display:flex;align-items:center;gap:15px;padding-bottom:20px;border-bottom:1px solid #e7eeeb}.avatar-picker{display:grid;place-items:center;overflow:hidden;width:76px;height:76px;border-radius:50%;background:#dcefe8;color:#146c5a;font-size:27px;font-weight:800;cursor:pointer}.avatar-picker input,.profile-avatar .text-button input{display:none}.avatar-picker img{width:100%;height:100%;object-fit:cover}.profile-avatar>div{display:grid;gap:5px}.profile-avatar b{font-size:16px}.profile-avatar small{color:#71847c;font-size:12px}.profile-avatar .text-button{justify-self:start}.profile-fields{margin-top:20px}@media(max-width:760px){.profile-form{padding:17px}.profile-avatar{padding-bottom:17px}.avatar-picker{width:68px;height:68px;font-size:23px}.profile-fields{margin-top:17px}}.sidebar-user .avatar,.top-actions .avatar{overflow:hidden}.sidebar-user .avatar img,.top-actions .avatar img{display:block;width:100%;height:100%;object-fit:cover}.expense-detail-modal{width:min(100%,640px)}.expense-detail-lines{display:grid;gap:9px;margin-top:12px}.expense-detail-lines article{display:grid;grid-template-columns:minmax(0,1fr) auto 58px;align-items:center;gap:12px;padding:11px 12px;border:1px solid #e2ebe6;border-radius:10px;background:#fbfdfc}.expense-detail-lines article>div{display:grid;gap:4px;min-width:0}.expense-detail-lines article b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.expense-detail-lines article small,.expense-detail-lines article>span{color:#71847c;font-size:12px}.expense-detail-lines article strong{white-space:nowrap;color:#176b59}.expense-proof-thumb{display:grid;place-items:center;overflow:hidden;width:58px;height:48px;padding:0;border:1px solid #dce8e2;border-radius:7px;background:#f3f8f5;cursor:pointer}.expense-proof-thumb img{width:100%;height:100%;object-fit:cover}@media(max-width:760px){.expense-detail-lines article{grid-template-columns:minmax(0,1fr) auto 52px;gap:8px;padding:10px}.expense-proof-thumb{width:52px;height:44px}.expense-detail-lines article>span{font-size:11px;text-align:right}.expense-detail-modal .modal-actions{flex-wrap:wrap}.expense-detail-modal .modal-actions button{flex:1 1 auto}}.expense-review-modal{width:min(100%,560px)}.expense-review-form{display:grid;grid-template-columns:1fr 1fr;gap:13px;margin-top:20px}.expense-review-form label{display:grid;gap:6px;color:#50665d;font-size:12px;font-weight:700}.expense-review-form input,.expense-review-form select{width:100%;height:41px;padding:0 10px;border:1px solid #d8e2dd;border-radius:8px;background:#fff}.expense-review-total{grid-column:span 2;display:flex;align-items:baseline;gap:8px;padding:12px;border-radius:9px;background:#f4f9f6;color:#50665d;font-size:12px}.expense-review-total strong{color:#176b59;font-size:17px}.expense-review-total span{margin-left:auto;color:#71847c}.expense-review-form .modal-actions{grid-column:span 2;margin-top:2px}@media(max-width:760px){.expense-review-form{gap:10px;margin-top:17px}.expense-review-form input,.expense-review-form select{height:39px;font-size:12px}.expense-review-total{flex-wrap:wrap}.expense-review-total span{margin-left:0;flex-basis:100%}}.payment-modal{width:min(100%,590px)}.payment-form{display:grid;grid-template-columns:1fr 1fr;gap:13px;margin-top:20px}.payment-form label{display:grid;gap:6px;color:#50665d;font-size:12px;font-weight:700}.payment-form input,.payment-form select{width:100%;height:41px;padding:0 10px;border:1px solid #d8e2dd;border-radius:8px;background:#fff}.payment-summary{grid-column:span 2;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;padding:12px;border-radius:9px;background:#f4f9f6}.payment-summary span{display:grid;gap:4px;color:#71847c;font-size:12px}.payment-summary strong{color:#176b59;font-size:16px}.payment-form .modal-actions{grid-column:span 2;margin-top:2px}@media(max-width:760px){.payment-form{gap:10px;margin-top:17px}.payment-form input,.payment-form select{height:39px;font-size:12px}.payment-summary{grid-template-columns:1fr;gap:8px}.payment-form .modal-actions{flex-wrap:wrap}.payment-form .modal-actions button{flex:1 1 auto}}.payment-history{display:grid;gap:8px;margin:10px 0 16px}.payment-history article{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;padding:10px 12px;border:1px solid #e3ece7;border-radius:9px;background:#fbfdfc}.payment-history article>span{overflow:hidden;color:#71847c;font-size:12px;text-overflow:ellipsis;white-space:nowrap}.payment-history article strong{white-space:nowrap}@media(max-width:760px){.payment-history article{grid-template-columns:auto 1fr;gap:6px 9px;padding:9px 10px}.payment-history article>span{grid-column:span 2}.payment-history article strong{grid-column:2;grid-row:1;text-align:right}}.product-card>.product-photo{width:86px;height:86px;aspect-ratio:1 / 1}.product-card>.product-photo img{width:100%;height:100%;object-fit:cover}@media(max-width:640px){.product-card>.product-photo{width:100%;height:auto;aspect-ratio:1 / 1}}.product-card>.product-photo{border:0;box-shadow:none;outline:0}.product-card>.product-photo:focus-visible{outline:3px solid #b7ddd2;outline-offset:2px}.product-card{border-color:#e7ece9}.product-card>.product-photo{background:#f1f4f2}.product-form .image-picker{border-color:#e1e6e3;background:#fff}.product-form .image-picker:focus-within{border-color:#cfd8d3;box-shadow:0 0 0 3px #52706414}.product-card>.product-photo{flex:0 0 86px;inline-size:86px;block-size:86px;aspect-ratio:1 / 1;overflow:hidden}.product-card>.product-photo>img{display:block;inline-size:100%;block-size:100%;max-inline-size:none;object-fit:cover}@media(max-width:640px){.product-card>.product-photo{flex-basis:auto;inline-size:100%;block-size:auto;min-block-size:0;aspect-ratio:1 / 1}}.product-card>.product-photo{border-radius:14px}.product-card>.product-photo>img{border-radius:inherit}.product-card>.product-photo{padding:0;border:0}@media(max-width:760px){input,select,textarea{font-size:16px!important;scroll-margin-block:28vh 42vh}.login-shell{min-height:100svh}.category-tabs{align-items:center;flex-wrap:nowrap;overflow-x:auto}.category-tabs:before{content:"商品类目";flex:none;color:#526b61;font-size:12px;font-weight:800;white-space:nowrap}.category-tabs button{flex:none}.product-card .product-photo{min-height:154px}.order-modal{max-width:100vw;overflow-x:hidden;overscroll-behavior-x:none}.order-modal .detail-grid,.order-modal .detail-grid>*,.order-modal .order-detail-lines,.order-modal .order-detail-lines>*{min-width:0;max-width:100%}.order-modal .detail-grid b,.order-modal .order-detail-lines b,.order-modal .order-detail-lines small,.order-modal .order-detail-lines span{overflow-wrap:anywhere}.quote-detail-modal .quote-company-info{margin:3px 0 0!important}.quote-detail-modal .detail-grid{margin-top:8px}}.suggestions{overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;touch-action:none}@media(max-width:760px){body.keyboard-open .mobile-nav{visibility:hidden;pointer-events:none}}.shipment-confirm-backdrop{z-index:90}body:has(.shipment-confirm-backdrop) .modal-backdrop:not(.shipment-confirm-backdrop){display:none}.shipment-confirm-modal{width:min(100% - 32px,620px);max-height:min(760px,calc(100dvh - 32px));overflow:auto;padding:24px;border-radius:18px;background:#fff;box-shadow:0 24px 80px #15362b3d}.shipment-confirm-modal>header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.shipment-confirm-modal>header h3{margin:4px 0 0;font-size:22px;color:#172f28}.shipment-confirm-modal .modal-close{flex:0 0 auto}.shipment-customer-summary{display:grid;gap:10px;margin:20px 0;padding:14px;border:1px solid #dce9e3;border-radius:12px;background:#f5faf7}.shipment-customer-summary span{display:grid;grid-template-columns:80px minmax(0,1fr);gap:8px;color:#71847c;font-size:13px}.shipment-customer-summary b{min-width:0;color:#1c342c;overflow-wrap:anywhere}.shipment-confirm-form{margin-top:0}@media(max-width:760px){.shipment-confirm-modal{width:calc(100% - 24px);max-height:calc(100dvh - 24px);padding:18px 16px 22px;border-radius:16px}.shipment-confirm-modal>header h3{font-size:19px}.shipment-customer-summary{margin:16px 0;padding:12px}.shipment-customer-summary span{grid-template-columns:68px minmax(0,1fr);font-size:12px}.shipment-confirm-form{grid-template-columns:minmax(0,1fr)}.shipment-confirm-form .wide{grid-column:1}}.settings-tools{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px;padding:16px;border:1px solid #e1e9e5;border-radius:13px;background:#fff}.order-save-actions{display:flex;justify-content:flex-end;margin-top:16px;padding-top:16px;border-top:1px solid #e5ece8}.product-card .product-photo img{width:100%;height:100%;object-fit:cover}.order-detail-lines article{display:grid;grid-template-columns:112px minmax(0,1fr);gap:12px;padding:12px;border:1px solid #e1e9e5;border-radius:10px;background:#fff}.order-detail-lines .product-photo{width:112px;min-height:112px;border:0}.line-fields{min-width:0}.line-headings,.line-values{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.line-headings{margin-bottom:8px;padding-bottom:8px;border-bottom:1px solid #e4ece8;color:#71847b;font-size:10px;font-weight:750;line-height:1.35}.line-values b{min-width:0;overflow-wrap:anywhere;color:#294239;font-size:12px;line-height:1.35}.line-values del{color:#8a9993;text-decoration-thickness:1px}.line-values .line-amount{color:#176b59}.tag-manager-modal{max-width:560px}.tag-create-form{grid-template-columns:minmax(0,1fr) auto;align-items:end}.tag-manager-list{display:grid;gap:9px;margin-top:14px}.tag-manager-row{display:flex;min-height:48px;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;border:1px solid #e1e9e5;border-radius:10px;background:#f8fbf9}.tag-manager-row>input{min-width:0;flex:1}.tag-manager-row>div{display:flex;flex:none;gap:8px}.quote-fields>.autocomplete{display:grid;gap:6px;color:#61756c;font-size:11px;font-weight:700}.quote-fields>.autocomplete>input{width:100%;height:40px;padding:0 10px;border:1px solid #d8e1dd;border-radius:8px;background:#fff;color:#1c2b33}@media(max-width:760px){input[type=date]{box-sizing:border-box!important;min-width:0!important;max-width:100%!important}}@media(max-width:760px){.settings-tools{display:grid;grid-template-columns:1fr 1fr;margin:14px;padding:12px}.settings-tools button:last-child{grid-column:span 2}.tag-create-form{grid-template-columns:minmax(0,1fr)}.tag-create-form button{width:100%}.order-save-actions{justify-content:stretch}.order-save-actions button{width:100%}.order-detail-lines article{grid-template-columns:124px minmax(0,1fr);gap:10px;padding:11px}.order-detail-lines .product-photo{width:124px;min-height:124px;font-size:30px}.line-headings,.line-values{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px 8px}}@media(max-width:900px),(hover:none){.payment-form,.expense-review-form,.form-grid,.expense-meta.form-grid,.stats-filter{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important}.payment-form>label,.expense-review-form>label,.form-grid>label,.stats-filter>label{min-width:0!important;width:100%!important}.payment-form input[type=date],.expense-review-form input[type=date],.form-grid input[type=date],.stats-filter input[type=date]{box-sizing:border-box!important;width:100%!important;min-width:0!important;max-width:100%!important;padding-inline:8px!important;font-size:14px!important}.stats-filter .text-button{grid-column:1 / -1;justify-self:start;padding-bottom:0}}@media(max-width:760px){.quote-layout,.quote-form,.quote-product,.quote-fields,.quote-detail-modal,.quote-detail-lines{min-width:0;max-width:100%;overflow-x:hidden}.quote-product{grid-template-columns:108px minmax(0,1fr)!important;gap:10px!important;padding:12px!important;border:1px solid #e1e9e5;background:#fff}.quote-product .product-photo{width:108px;min-width:108px;min-height:108px!important}.quote-fields>p{margin:6px 0 10px;overflow-wrap:anywhere;line-height:1.45}.quote-price-row{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:5px!important}.quote-price-row label{min-width:0;font-size:10px}.quote-price-row span,.quote-price-row input{min-width:0;width:100%;padding-right:5px;padding-left:5px;font-size:11px}.quote-summary-row{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:10px;margin-top:14px;padding:10px;border-radius:9px;background:#f5f9f7}.quote-summary-row span{display:grid;min-width:0;gap:4px;color:#71847b;font-size:11px}.quote-summary-row b{overflow-wrap:anywhere;color:#2d433a;font-size:12px}.quote-summary-row strong{color:#146c5a;font-size:13px;white-space:nowrap}.quote-detail-lines article{grid-template-columns:96px minmax(0,1fr)!important;gap:10px!important;padding:11px!important}.quote-detail-lines .product-photo{width:96px!important;min-height:96px!important;font-size:26px!important}.quote-detail-lines article>div{min-width:0}.quote-detail-lines article>strong{grid-column:2;min-width:0;overflow-wrap:anywhere;white-space:normal}}.order-modal .order-detail-lines article{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:3px 12px;padding:10px 12px;border:1px solid #e3ebe7;border-radius:8px;background:#f9fbfa}.order-modal .order-detail-lines .product-photo,.order-modal .order-detail-lines .line-headings{display:none}.order-modal .order-detail-lines .line-fields,.order-modal .order-detail-lines .line-values{display:contents}.order-modal .order-detail-lines .line-values b{grid-column:1;min-width:0;overflow:hidden;color:#294239;text-overflow:ellipsis;white-space:nowrap;font-size:12px}.order-modal .order-detail-lines .line-values b:nth-child(1){grid-row:1;font-size:13px}.order-modal .order-detail-lines .line-values b:nth-child(2),.order-modal .order-detail-lines .line-values b:nth-child(3){color:#71847b;font-size:11px}.order-modal .order-detail-lines .line-values b:nth-child(4){display:none}.order-modal .order-detail-lines .line-values b:nth-child(5):before{content:"实收单价 ";color:#71847b;font-weight:400}.order-modal .order-detail-lines .line-values .line-amount{grid-column:2;grid-row:1 / span 4;align-self:center;overflow:visible;color:#176b59;text-align:right;text-overflow:clip;white-space:nowrap;font-size:13px}@media(max-width:760px){.order-modal .order-detail-lines article{grid-template-columns:minmax(0,1fr) auto;gap:3px 10px;padding:9px 10px}}@media(max-width:760px){.order-modal .print-actions{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8px}.order-modal .print-actions button:first-child,.order-modal .print-actions button:last-child{grid-row:1}.order-modal .print-actions button:nth-child(2){grid-column:1 / -1;grid-row:2}}.amount-box .sale-physical{padding-top:5px;border-top:1px solid #d5e7df;color:#3d6658;font-weight:700;line-height:1.45}.product-modal .unit-standard{margin:5px 0 0;color:#397463;font-size:11px;font-weight:700}.fund-export-page{max-width:760px}.fund-export-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.fund-export-form label{display:grid;gap:6px;order:1;color:#526a60;font-size:12px;font-weight:700}.fund-export-form label:first-child{grid-column:1 / -1}.fund-export-form .fund-export-extra{order:2}.fund-export-form .fund-export-extra.autocomplete{position:relative}.fund-export-form .fund-export-suggestions{z-index:70}.fund-export-form .empty-option{display:block;padding:10px;color:#71847c;font-size:12px;font-weight:500}.fund-export-form label:nth-child(2),.fund-export-form label:nth-child(3){order:3}.fund-export-form input,.fund-export-form select{width:100%;height:42px;min-width:0;padding:0 10px;border:1px solid #d8e2dd;border-radius:8px;background:#fff;color:#294139}.fund-export-count{order:3;grid-column:1 / -1;margin:2px 0 0;padding:12px;border-radius:9px;background:#edf7f2;color:#5a7066;font-size:13px}.fund-export-count strong{color:#146c5a;font-size:18px}.fund-export-form .modal-actions{order:4;grid-column:1 / -1;margin-top:2px}.finance{display:flex;flex-direction:column;gap:16px}.finance>.finance-tabs{order:0}.finance>.finance-export-actions{order:1}.finance>.report-metrics,.finance>.finance-grid,.finance>.finance-record-grid{order:2}.finance-export-actions{display:flex;justify-content:flex-end}.finance-record-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.finance-account-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.finance-account-wide{grid-column:1 / -1}.finance-data-cards{grid-column:1 / -1;margin:0}.customer-page-actions,.customer-filter-controls{display:flex;align-items:center;gap:10px}.customer-page-actions{justify-content:flex-end;flex-wrap:wrap}.customer-filter-controls input,.customer-filter-controls select{width:min(230px,100%);height:38px;min-width:0;padding:0 10px;border:1px solid #d8e1dd;border-radius:8px;background:#fff}.customer-receivable-toggle{display:flex;align-items:center;gap:6px;min-height:38px;color:#526a60;white-space:nowrap;font-size:12px;font-weight:700}.customer-receivable-toggle input{width:15px;height:15px}.finance-card-heading,.finance-record-grid>.empty-hint{grid-column:1 / -1}.finance-card-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;padding-bottom:4px}.finance-card-heading h3,.finance-card-heading p{margin:0}.finance-card-heading h3{font-size:17px}.finance-card-heading small{display:block;margin-top:5px;color:#71847c;font-size:12px;line-height:1.45}.finance-card-heading>strong{white-space:nowrap;color:#173e35;font-size:17px}.finance-record-card{display:grid;gap:9px;min-width:0;padding:15px;border:1px solid #dfe9e4;border-radius:11px;background:#fbfdfc}.finance-record-card header,.finance-record-card footer{display:flex;align-items:center;justify-content:space-between;gap:10px}.finance-record-card header>div{display:grid;min-width:0;gap:3px}.finance-record-card header span,.finance-record-card small,.finance-record-card p{color:#70827b;font-size:11px}.finance-record-card header b{overflow:hidden;color:#264239;text-overflow:ellipsis;white-space:nowrap;font-size:13px}.finance-record-card header>strong{flex:none;white-space:nowrap;color:#176b59;font-size:14px}.finance-record-card p{min-height:17px;margin:0;line-height:1.45}.finance-record-card small{line-height:1.45}.finance-record-card footer{justify-content:flex-end;padding-top:10px;border-top:1px solid #e9f0ec}.finance-record-card footer .outline,.finance-record-card footer .primary{min-height:34px;padding:0 10px;font-size:12px}@media(max-width:760px){.finance{gap:12px}.customer-page .page-actions,.customer-page-actions,.customer-filter-controls{align-items:stretch;flex-direction:column;width:100%}.customer-filter-controls input,.customer-filter-controls select,.customer-page-actions .primary{width:100%}.customer-receivable-toggle{min-height:34px}.finance-export-actions .outline{width:100%}.fund-export-page .page-actions{align-items:flex-start}.fund-export-page .page-actions .outline{flex:0 0 auto}.fund-export-form{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding:16px}.fund-export-form label:first-child,.fund-export-count,.fund-export-form .modal-actions{grid-column:1 / -1}.fund-export-form input,.fund-export-form select{height:40px}.finance-record-grid{grid-template-columns:1fr;gap:10px}.finance-account-grid{grid-template-columns:1fr;gap:12px}.finance-account-wide{grid-column:auto}.finance-card-heading{padding-bottom:2px}.finance-card-heading h3{font-size:16px}.finance-card-heading small{font-size:11px}.finance-record-card{gap:8px;padding:13px}.finance-record-card footer{justify-content:stretch}.finance-record-card footer button{flex:1;min-width:0}}
