:root{color:#17202a;background:#f4f7f6;font-family:Inter,PingFang SC,Microsoft YaHei,Arial,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility}*{box-sizing:border-box}body{margin:0;min-width:320px;overscroll-behavior-y:none;padding:env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left)}button,input,select,textarea{font:inherit}.app-shell{display:grid;grid-template-columns:248px 1fr;min-height:100vh}.sidebar{background:#163832;color:#f8fbfa;padding:20px 14px;position:sticky;top:0;height:100vh}.brand{display:flex;align-items:center;gap:12px;padding:10px 8px 22px}.brand strong,.brand span{display:block}.brand span{color:#b8cbc6;font-size:12px;margin-top:3px}nav{display:grid;gap:6px}nav button,.ghost,.primary{border:0;cursor:pointer}nav button{align-items:center;background:transparent;border-radius:8px;color:#d8e5e1;display:flex;gap:10px;justify-content:flex-start;min-height:42px;padding:0 12px}nav button.active,nav button:hover{background:#24564c;color:#fff}main{padding:24px}.topbar{align-items:center;display:flex;justify-content:space-between;gap:16px;margin-bottom:18px}.top-actions{align-items:center;display:flex;gap:8px}.tab-strip{border-bottom:1px solid #dfe8e5;display:flex;gap:6px;margin:-4px 0 16px;overflow-x:auto;padding-bottom:6px}.h5-shell .tab-strip{scroll-behavior:smooth;scrollbar-width:none}.h5-shell .tab-strip::-webkit-scrollbar{display:none}.page-tab{align-items:center;background:#eef5f3;border:1px solid #d8e5e1;border-radius:8px;color:#29443e;display:inline-flex;flex:0 0 auto;gap:8px;min-height:36px;padding:0 10px}.page-tab.active{background:#163832;color:#fff}.tab-close{align-items:center;border-radius:999px;display:inline-flex;height:20px;justify-content:center;width:20px}.tab-close:hover{background:#ffffff2e}.tab-panel{display:none}.tab-panel.active{display:block}.account-pill{align-items:center;background:#eef5f3;border:1px solid #d8e5e1;border-radius:8px;color:#29443e;display:inline-flex;font-size:13px;min-height:40px;padding:0 12px;white-space:nowrap}.account-link{cursor:pointer}.account-link:hover{background:#dfeee9;color:#164b40}.install-btn{background:#d7eee5;color:#153b33}.mobile-menu-btn,.mobile-menu-backdrop{display:none}@media(min-width:901px){.h5-shell{background:#f4f7f6;display:block;margin:0 auto;max-width:520px;min-height:100vh;padding-bottom:calc(58px + env(safe-area-inset-bottom))}.h5-shell .sidebar,.h5-shell .brand{display:none}.h5-shell nav{display:flex;gap:4px;justify-content:space-around;overflow:hidden}.h5-shell nav button{border-radius:10px;color:#5d6e69;flex:1 1 0;flex-direction:column;font-size:11px;gap:3px;min-height:48px;min-width:0;padding:5px 2px}.h5-shell nav button:nth-child(n+6){display:none}.h5-shell nav button.active,.h5-shell nav button:hover{background:#e5f3ed;color:#176046}.h5-shell nav button span{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.h5-shell main{padding:14px 12px}.h5-shell .topbar{align-items:center;background:#f4f7f6f5;display:grid;gap:10px;grid-template-columns:1fr;margin:-14px -12px 12px;padding:12px;position:sticky;top:0;z-index:8}.h5-shell h1{font-size:21px;line-height:1.25}.h5-shell .top-actions{display:grid;gap:6px;grid-template-columns:.92fr 1.08fr 1.28fr .72fr}.h5-shell .top-actions .ghost,.h5-shell .top-actions .primary{font-size:12px;gap:4px;min-height:34px;padding:0 6px;white-space:nowrap;width:100%}.h5-shell .mobile-menu-btn{display:none;order:3}.h5-shell .refresh-btn{order:1}.h5-shell .account-pill{order:3}.h5-shell .account-pill{order:2}.h5-shell .logout-btn{order:4;padding:0 4px}.h5-shell .install-btn{display:none}.h5-shell .account-pill{justify-content:center;font-size:12px;min-height:34px;overflow:hidden;padding:0 6px;text-overflow:ellipsis;white-space:nowrap;width:100%}.h5-shell .tab-strip{background:#fff;border-bottom:0;border-top:1px solid #dfe8e5;bottom:0;box-shadow:0 -10px 26px #0916131a;gap:7px;left:50%;margin:0;max-width:520px;padding:8px 8px calc(8px + env(safe-area-inset-bottom));position:fixed;right:auto;transform:translate(-50%);width:100%;z-index:10}.h5-shell .page-tab{border-radius:8px;min-height:38px;max-width:148px}.h5-shell .cards,.h5-shell .form-grid,.h5-shell .inline-tools,.h5-shell .inline-input,.h5-shell .field-quick-create,.h5-shell .meta-quick-row,.h5-shell .permission-grid{grid-template-columns:1fr}.h5-shell .cards{gap:9px;grid-template-columns:repeat(2,minmax(0,1fr))}.h5-shell .dashboard-product-table-wrap{display:none}.h5-shell .h5-product-summary-list{display:grid;gap:8px}.h5-shell .h5-product-summary-card{background:#fff;border:1px solid #dbe8e4;border-radius:8px;box-shadow:0 8px 22px #1c3d350d;display:grid;gap:8px;padding:9px}.h5-shell .h5-product-summary-head{align-items:flex-start;display:grid;gap:8px;grid-template-columns:1fr auto}.h5-shell .h5-product-summary-head strong,.h5-shell .h5-product-summary-head small{display:block;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.h5-shell .h5-product-summary-head strong{color:#14231f;font-size:14px;line-height:1.25}.h5-shell .h5-product-summary-head small{color:#74847f;font-size:11px;margin-top:2px}.h5-shell .h5-product-summary-head>span{background:#edf7f2;border:1px solid #d2eadf;border-radius:999px;color:#1c624a;font-size:11px;max-width:76px;overflow:hidden;padding:3px 7px;text-overflow:ellipsis;white-space:nowrap}.h5-shell .h5-product-summary-grid{display:grid;gap:6px;grid-template-columns:repeat(3,minmax(0,1fr))}.h5-shell .h5-product-summary-grid>div{background:#f6faf8;border:1px solid #e3eeea;border-radius:7px;min-width:0;padding:6px 7px}.h5-shell .h5-product-summary-grid>div.wide{grid-column:span 3}.h5-shell .h5-product-summary-grid span{color:#71817c;display:block;font-size:10px;line-height:1.1}.h5-shell .h5-product-summary-grid b{color:#173f35;display:block;font-size:13px;line-height:1.2;margin-top:3px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.h5-shell .report-toolbar,.h5-shell .report-section-head,.h5-shell .promotion-list-toolbar,.h5-shell .document-actions{align-items:stretch;flex-direction:column}.h5-shell .segmented,.h5-shell .date-range{display:grid;grid-template-columns:1fr}.h5-shell .report-filter,.h5-shell .report-filter.customer-filter,.h5-shell .flow-search,.h5-shell .document-flow-toolbar,.h5-shell .list-tools,.h5-shell .line-item,.h5-shell .purchase-line-item{grid-template-columns:1fr}.h5-shell .document-action-buttons{display:grid}.h5-shell .document-totals{justify-content:center;margin-left:0;width:100%}.h5-shell .form-message{position:sticky;top:78px;z-index:9}.h5-shell .panel,.h5-shell .metric,.h5-shell .subform,.h5-shell .line-item,.h5-shell .list-row{border-radius:8px}.h5-shell .panel{padding:12px}.h5-shell .metric{min-height:82px;padding:10px}.h5-shell .metric strong{font-size:19px;margin-top:4px}.h5-shell .metric span{font-size:12px;margin-top:6px}.h5-shell .mobile-menu-backdrop{background:#0916136b;display:flex;inset:0 auto 0 50%;max-width:520px;padding:8px 10px calc(66px + env(safe-area-inset-bottom));position:fixed;transform:translate(-50%);width:100%;z-index:40}.h5-shell .mobile-menu-panel{align-self:flex-end;background:#fff;border-radius:8px;box-shadow:0 18px 60px #0916133d;max-height:calc(100svh - 84px - env(safe-area-inset-bottom));overflow:auto;padding:12px;width:100%}.h5-shell .mobile-menu-head{align-items:center;display:flex;justify-content:space-between;margin-bottom:8px}.h5-shell .mobile-menu-grid{display:grid;gap:7px;grid-template-columns:repeat(3,minmax(0,1fr))}.h5-shell .mobile-menu-grid button{align-items:center;background:#f5f9f7;border:1px solid #dfe8e5;border-radius:8px;color:#25413a;display:grid;gap:5px;justify-items:center;min-height:56px;padding:6px 3px;touch-action:manipulation}.h5-shell .mobile-menu-grid button svg{height:17px;width:17px}.h5-shell .mobile-menu-grid button.active{background:#e5f3ed;border-color:#b9dccc;color:#176046;font-weight:800}.h5-shell .mobile-menu-grid span{font-size:11px;line-height:1.2}}.eyebrow{color:#6b7c78;font-size:12px}h1,h2{letter-spacing:0;margin:0}h1{font-size:28px}h2{font-size:17px}.subhead{border-top:1px solid #e2ebe8;color:#29443e;font-size:15px;margin:18px 0 10px;padding-top:14px}.ghost,.primary{align-items:center;border-radius:8px;display:inline-flex;gap:8px;justify-content:center;min-height:40px;padding:0 14px}.ghost{background:#e5ece9;color:#243d38}.ghost:disabled,.primary:disabled{cursor:not-allowed;opacity:.55}.primary{background:#1f7a5a;color:#fff;font-weight:700}.compact-btn{font-size:13px;min-height:32px;padding:0 10px}.panel{background:#fff;border:1px solid #dfe8e5;border-radius:8px;margin-bottom:18px;padding:16px}.panel-head{align-items:center;display:flex;justify-content:space-between;gap:12px;margin-bottom:14px}.panel-head>div{align-items:center;display:flex;gap:8px}.product-cell{align-items:center;display:flex;gap:8px;min-width:138px}.product-cell img,.product-thumb{border-radius:6px;flex:0 0 auto;height:38px;object-fit:cover;width:38px}.product-thumb{align-items:center;background:#e5ece9;color:#41625a;display:inline-flex;font-weight:700;justify-content:center}.grid{display:grid;gap:12px}.cards{grid-template-columns:repeat(4,minmax(160px,1fr));margin-bottom:18px}.metric{background:#fff;border:1px solid #dfe8e5;border-radius:8px;min-height:106px;padding:16px}.metric svg{color:#1f7a5a}.metric span{color:#62736f;display:block;margin-top:10px}.metric strong{display:block;font-size:25px;margin-top:6px}.report-toolbar{align-items:center;display:flex;gap:12px;justify-content:space-between;margin-bottom:12px}.segmented{background:#f3f7f5;border:1px solid #dce8e4;border-radius:8px;display:inline-flex;gap:4px;padding:4px}.segmented button{background:transparent;border:0;color:#526560;min-height:34px;padding:0 12px}.segmented button.active{background:#1f7a5a;color:#fff}.date-range{align-items:center;display:flex;gap:8px}.date-range input{min-width:150px}.report-refresh{white-space:nowrap}.report-summary{color:#5f706c;font-size:13px;margin-bottom:10px}.report-cards{margin-bottom:16px}.report-tabbar{margin-bottom:12px;width:fit-content}.report-panel{margin-bottom:16px}.report-section-head{align-items:center;display:flex;gap:10px;justify-content:space-between;margin-bottom:10px}.report-section-head .subhead{margin:0}.report-filter{align-items:center;display:grid;gap:8px;grid-template-columns:minmax(150px,1fr) minmax(120px,150px) auto}.report-filter.customer-filter{grid-template-columns:minmax(160px,1fr) auto}.report-filter .ghost{white-space:nowrap}.form-grid{display:grid;grid-template-columns:repeat(4,minmax(150px,1fr));gap:12px;margin-bottom:16px}.inline-tools{background:#f7faf9;border:1px solid #e2ebe8;border-radius:8px;display:grid;gap:12px;grid-template-columns:repeat(2,minmax(220px,1fr));margin-bottom:16px;padding:12px}.inline-input{display:grid;gap:8px;grid-template-columns:minmax(120px,1fr) auto}.field-quick-create{display:grid;gap:8px;grid-template-columns:minmax(90px,1fr) auto}.field-quick-create input{height:42px;min-height:42px}.field-quick-create .ghost{min-height:42px;padding:0 10px;white-space:nowrap}.meta-quick-row{display:grid;gap:12px;grid-template-columns:repeat(2,minmax(0,1fr))}.product-form-triple{display:grid;gap:12px;grid-template-columns:repeat(3,minmax(0,1fr))}.partner-form-pair,.user-form-pair{display:grid;gap:12px;grid-template-columns:repeat(2,minmax(0,1fr))}.partner-form-pair .field:only-child{grid-column:1 / -1}.meta-quick-create{display:grid;gap:6px}.meta-quick-create>span{color:#5f706c;font-size:13px}.field-hint{font-size:12px;line-height:1.35}.form-wide{grid-column:1 / -1}.list-tools{align-items:center;display:grid;gap:10px 12px;grid-template-columns:minmax(180px,1fr) auto auto;margin-bottom:12px}.product-search-tools{grid-template-columns:minmax(240px,1fr) 180px auto}.product-search-tools select{min-width:160px}.partner-search-tools{grid-template-columns:minmax(240px,1fr) 160px auto}.partner-search-tools select{min-width:140px}.document-flow-toolbar{align-items:center;display:grid;gap:10px 12px;grid-template-columns:auto auto minmax(240px,1fr);margin-bottom:12px}.flow-search{display:grid;gap:8px;grid-template-columns:minmax(180px,1fr) auto}.section-actions{display:flex;justify-content:flex-end;margin-bottom:12px}.pagination-bar{align-items:center;color:#5f706c;display:flex;font-size:13px;justify-content:space-between;gap:12px;margin-bottom:10px}.pagination-bar>div{display:flex;gap:8px}.pagination-summary{align-items:center;flex-wrap:wrap}.pagination-summary .primary{min-height:32px;padding:0 11px}.small-action{gap:5px;min-height:32px;padding:0 9px}.ghost.danger{background:#fee2e2;color:#b91c1c}.ghost.success-action{background:#dcfce7;color:#166534}.field{display:grid;gap:6px}.field span{color:#5f706c;font-size:13px}.required-star{color:#dc2626;font-weight:800;margin-left:3px}input,select{background:#fbfdfc;border:1px solid #cddbd7;border-radius:8px;height:42px;min-height:42px;padding:0 10px;width:100%}input:focus,select:focus{border-color:#1f7a5a;outline:2px solid rgba(31,122,90,.12)}.table-wrap{overflow-x:auto}.h5-product-summary-list,.h5-customer-summary-list,.h5-account-summary-list,.h5-account-movement-list,.h5-product-data-list,.h5-partner-data-list,.h5-inventory-card-list,.h5-document-card-list,.h5-document-detail-items,.h5-shell .dashboard-product-table-wrap,.h5-shell .report-product-table-wrap,.h5-shell .report-customer-table-wrap,.h5-shell .inventory-table-wrap,.h5-shell .document-flow-table-wrap,.h5-shell .document-detail-table-wrap,.h5-shell .account-summary-table-wrap,.h5-shell .account-movement-table-wrap,.h5-shell .product-table-wrap,.h5-shell .partner-table-wrap{display:none}.h5-shell .h5-product-summary-list,.h5-shell .h5-customer-summary-list,.h5-shell .h5-account-summary-list,.h5-shell .h5-account-movement-list,.h5-shell .h5-product-data-list,.h5-shell .h5-partner-data-list,.h5-shell .h5-inventory-card-list,.h5-shell .h5-document-card-list,.h5-shell .h5-document-detail-items{display:grid;gap:8px}.h5-shell .h5-product-summary-card,.h5-shell .h5-customer-summary-card{background:#fff;border:1px solid #dbe8e4;border-radius:8px;box-shadow:0 8px 22px #1c3d350d;display:grid;gap:8px;padding:9px}.h5-shell .h5-product-summary-head{align-items:flex-start;display:grid;gap:8px;grid-template-columns:1fr auto}.h5-shell .h5-customer-summary-head{display:grid;gap:3px}.h5-shell .h5-product-summary-head strong,.h5-shell .h5-product-summary-head small,.h5-shell .h5-customer-summary-head strong,.h5-shell .h5-customer-summary-head small{display:block;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.h5-shell .h5-product-summary-head strong,.h5-shell .h5-customer-summary-head strong{color:#14231f;font-size:14px;line-height:1.25}.h5-shell .h5-product-summary-head small{color:#74847f;font-size:11px;margin-top:2px}.h5-shell .h5-customer-summary-head small{color:#74847f;font-size:11px}.h5-shell .h5-product-summary-head>span{background:#edf7f2;border:1px solid #d2eadf;border-radius:999px;color:#1c624a;font-size:11px;max-width:76px;overflow:hidden;padding:3px 7px;text-overflow:ellipsis;white-space:nowrap}.h5-shell .h5-product-summary-grid{display:grid;gap:6px;grid-template-columns:repeat(3,minmax(0,1fr))}.h5-shell .h5-product-summary-grid>div{background:#f6faf8;border:1px solid #e3eeea;border-radius:7px;min-width:0;padding:6px 7px}.h5-shell .h5-product-summary-grid>div.wide{grid-column:span 3}.h5-shell .h5-product-summary-grid>div.document-card-actions{display:grid;gap:6px;grid-column:1 / -1;grid-template-columns:repeat(2,minmax(0,1fr))}.h5-shell .h5-product-summary-grid span{color:#71817c;display:block;font-size:10px;line-height:1.1}.h5-shell .h5-product-summary-grid b{color:#173f35;display:block;font-size:13px;line-height:1.2;margin-top:3px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}table{border-collapse:collapse;min-width:760px;width:100%}th,td{border-bottom:1px solid #edf2f0;padding:11px 10px;text-align:left;vertical-align:middle}.product-table{min-width:900px}.product-table th,.product-table td{padding:8px 7px;white-space:nowrap}.product-table th:first-child,.product-table td:first-child{width:168px}.product-table .product-cell b,.product-table .product-cell small{max-width:112px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}th{color:#657570;font-size:13px;font-weight:700}td small{color:#7a8a86;display:block;margin-top:3px}.pill{align-items:center;background:#e9f3ef;border-radius:999px;color:#1f6d52;display:inline-flex;font-size:12px;gap:4px;min-height:24px;padding:4px 9px}.danger-pill{background:#fee2e2;color:#b91c1c;font-weight:800}.warn-row{background:#fff7ed}.list{display:grid;gap:8px}.list-row{align-items:center;border:1px solid #edf2f0;border-radius:8px;display:flex;justify-content:space-between;padding:12px}.promotion-expired-row{background:#fff5f5;border-color:#fecaca;box-shadow:inset 3px 0 #ef4444}.disabled-row{background:#f8faf9;color:#7a8783}.list-row small{color:#6b7c78;display:block;margin-top:4px}.promotion-expired-row small{color:#b91c1c;font-weight:700}.row-actions{align-items:center;display:flex;gap:8px}.icon-btn{align-items:center;background:#edf4f1;border:0;border-radius:8px;color:#24564c;cursor:pointer;display:inline-flex;height:32px;justify-content:center;width:32px}.icon-btn.danger{background:#fee2e2;color:#b91c1c}.line-items{display:grid;gap:10px}.subform{background:#f8fbfa;border:1px solid #e3ece9;border-radius:8px;display:grid;gap:10px;overflow-x:auto;padding:10px}.subform-head{align-items:center;display:flex;gap:10px;justify-content:space-between}.subform .line-item{background:#fff;grid-template-columns:minmax(160px,1.4fr) minmax(86px,.5fr) minmax(110px,.7fr) 36px}.line-item{align-items:end;background:#f8fbfa;border:1px solid #e3ece9;border-radius:8px;display:grid;gap:10px;grid-template-columns:minmax(150px,1.25fr) minmax(160px,1.6fr) minmax(100px,.8fr) minmax(80px,.6fr) minmax(80px,.7fr) minmax(100px,.85fr) minmax(130px,1fr) 36px;padding:10px}.purchase-line-item{grid-template-columns:minmax(145px,1.2fr) minmax(155px,1.45fr) minmax(95px,.75fr) minmax(74px,.55fr) minmax(78px,.65fr) minmax(92px,.75fr) minmax(105px,.8fr) minmax(100px,.75fr) 36px}.subform .flash-promotion-line-item{grid-template-columns:minmax(122px,.85fr) minmax(136px,1fr) minmax(86px,.62fr) minmax(66px,.48fr) minmax(78px,.52fr) minmax(150px,1.05fr) 36px;min-width:760px}.subform .combo-promotion-line-item{grid-template-columns:minmax(122px,.95fr) minmax(136px,1.05fr) minmax(86px,.62fr) minmax(66px,.48fr) minmax(78px,.55fr) 36px;min-width:620px}.line-field{display:grid;gap:6px;min-width:0}.line-field-title{color:#526560;font-size:12px;font-weight:700;line-height:1.2}.line-field .suggest-field{min-width:0}.line-hint{color:#0f8a5f;font-size:12px;font-weight:700;line-height:1.2}.promotion-submit-row{align-items:center;display:flex;flex-wrap:wrap;gap:10px}.promotion-submit-tip{align-items:center;background:#f0f7f4;border:1px solid #cfe5dc;border-radius:8px;color:#1f6f54;display:inline-flex;font-size:13px;font-weight:700;gap:7px;line-height:1.35;min-height:40px;padding:8px 12px}.promotion-submit-tip svg{flex:0 0 auto}.promotion-form-pair{display:grid;gap:12px;grid-template-columns:repeat(2,minmax(0,1fr))}.promotion-list-toolbar{align-items:center;display:flex;gap:12px;justify-content:space-between;margin:14px 0 10px}.list-summary{color:#64766f;font-size:13px;font-weight:700;line-height:1.4;text-align:right}.empty-list{background:#f8fbfa;border:1px dashed #cbdad5;border-radius:8px;color:#64766f;font-size:14px;padding:16px;text-align:center}.line-item input:disabled{background:#eef4f2;color:#566864}.document-actions{align-items:center;display:flex;gap:14px;justify-content:space-between}.document-action-buttons{display:flex;flex-wrap:wrap;gap:10px}.document-totals{align-items:center;color:#526560;display:flex;flex-wrap:wrap;gap:12px;justify-content:flex-end;margin-left:auto}.document-totals span{background:#eef8f3;border:1px solid #cce7db;border-radius:8px;min-height:38px;padding:8px 12px}.document-totals b{color:#14543f;font-size:16px;margin-left:6px}.line-remove{margin-bottom:4px}.scan-field{display:grid;gap:6px;grid-template-columns:1fr 36px}.suggest-field{position:relative}.suggest-field input{width:100%}.suggest-list{background:#fff;border:1px solid #cce7db;border-radius:8px;box-shadow:0 12px 28px #09161324;left:0;max-height:260px;overflow:auto;padding:4px;position:absolute;right:0;top:calc(100% + 4px);z-index:30}.suggest-option{align-items:flex-start;background:transparent;border:0;border-radius:6px;color:#18352d;display:flex;flex-direction:column;gap:2px;min-height:42px;padding:8px 10px;text-align:left;width:100%}.suggest-option:hover,.suggest-option.active{background:#eef8f3}.suggest-option span{font-weight:700}.suggest-option small{color:#64736e}.preview-box{background:#eef8f3;border:1px solid #cce7db;border-radius:8px;color:#14543f;padding:10px 12px}.modal-backdrop{align-items:center;background:#09161366;display:flex;justify-content:center;inset:0;padding:16px;position:fixed;z-index:20}.modal{background:#fff;border-radius:8px;box-shadow:0 20px 70px #0003;max-height:90vh;max-width:920px;overscroll-behavior:contain;overflow:auto;padding:16px;-webkit-overflow-scrolling:touch;width:100%}.product-modal{max-height:96vh;max-width:980px;min-height:min(760px,96vh)}.permission-modal{max-width:620px}.user-edit-modal,.password-modal{max-height:none;max-width:520px;overflow:visible}.user-edit-form,.password-form{display:grid;gap:10px;margin-bottom:12px}.user-edit-form .user-form-pair,.user-edit-form .field,.user-edit-form input,.user-edit-form select,.password-form .field,.password-form input{min-width:0}.user-edit-form .field:last-child{max-width:190px}.permission-user{background:#f8fbfa;border:1px solid #e3ece9;border-radius:8px;margin-bottom:12px;padding:10px 12px}.permission-user small{color:#6b7c78;display:block;margin-top:4px}.permission-grid{display:grid;gap:8px;grid-template-columns:repeat(2,minmax(0,1fr))}.permission-option{align-items:center;background:#f8fbfa;border:1px solid #e3ece9;border-radius:8px;cursor:pointer;display:flex;gap:8px;min-height:40px;padding:0 10px}.permission-option input{height:16px;width:16px}.modal-actions{display:flex;gap:8px;justify-content:flex-end;margin-top:14px}.detail-grid{background:#f8fbfa;border:1px solid #e3ece9;border-radius:8px;display:grid;gap:8px;grid-template-columns:repeat(2,minmax(0,1fr));margin-bottom:12px;padding:12px}.document-title{align-items:center;display:flex;gap:10px;justify-content:space-between;margin-bottom:12px}.document-total{font-size:18px;font-weight:800;padding:12px 0;text-align:right}.wide-btn{gap:6px;padding:0 10px;width:auto}.scanner-modal{max-width:480px}.scanner-video{aspect-ratio:4 / 3;background:#0f172a;border-radius:8px;object-fit:cover;width:100%}.login-page{align-items:center;background:#f4f7f6;display:flex;min-height:100vh;justify-content:center;padding:20px}.login-card{background:#fff;border:1px solid #dfe8e5;border-radius:8px;display:grid;gap:14px;max-width:390px;padding:22px;width:100%}.login-brand{color:#17202a;padding:0 0 8px}.h5-login-page .login-brand{align-items:center;display:flex;gap:10px}.h5-login-page .login-brand strong{font-size:21px;line-height:1.2}.error,.loading,.success{border-radius:8px;margin-bottom:12px;padding:12px}.error{background:#fff1f2;color:#9f1239}.loading{background:#eff6ff;color:#1d4ed8}.compact-loading{font-size:13px;padding:8px 10px}.success{background:#ecfdf5;color:#047857}.form-message{grid-column:1 / -1}@media(max-width:900px){.app-shell{display:block;padding-bottom:calc(78px + env(safe-area-inset-bottom))}.sidebar{height:auto;inset:auto 0 0;padding:8px;position:fixed;z-index:10}.h5-shell .sidebar,.brand{display:none}nav{display:flex;gap:4px;overflow-x:auto}.h5-shell nav{justify-content:space-around;overflow:hidden}nav button{flex:0 0 auto;min-height:48px;padding:0 10px}.h5-shell nav button{border-radius:10px;color:#5d6e69;flex:1 1 0;flex-direction:column;font-size:11px;gap:3px;min-width:0;padding:5px 2px}.h5-shell nav button:nth-child(n+6){display:none}.h5-shell nav button.active,.h5-shell nav button:hover{background:#e5f3ed;color:#176046}.h5-shell nav button span{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}main{padding:16px}.h5-shell main{padding:14px 12px}.topbar{align-items:flex-start}.h5-shell .topbar{align-items:center;background:#f4f7f6f5;gap:10px;margin:-14px -12px 12px;padding:12px;position:sticky;top:0;z-index:8}h1{font-size:24px}.h5-shell h1{font-size:21px;line-height:1.25}.h5-shell .mobile-menu-btn{display:inline-flex}.login-page{align-items:flex-start;justify-content:center;min-height:100svh;padding:calc(26px + env(safe-area-inset-top)) 14px calc(18px + env(safe-area-inset-bottom))}.login-card{margin-top:0;max-width:420px;padding:18px}.login-brand{justify-content:center;padding-bottom:10px}.mobile-menu-backdrop{background:#0916136b;display:flex;inset:0;padding:8px 10px calc(74px + env(safe-area-inset-bottom));position:fixed;z-index:40}.mobile-menu-panel{align-self:flex-end;background:#fff;border-radius:8px;box-shadow:0 18px 60px #0916133d;max-height:calc(100svh - 92px - env(safe-area-inset-bottom));overflow:auto;padding:12px;width:100%}.mobile-menu-head{align-items:center;display:flex;justify-content:space-between;margin-bottom:8px}.mobile-menu-grid{display:grid;gap:7px;grid-template-columns:repeat(3,minmax(0,1fr))}.mobile-menu-grid button{align-items:center;background:#f5f9f7;border:1px solid #dfe8e5;border-radius:8px;color:#25413a;display:grid;gap:5px;justify-items:center;min-height:56px;padding:6px 3px;touch-action:manipulation}.mobile-menu-grid button svg{height:17px;width:17px}.mobile-menu-grid button.active{background:#e5f3ed;border-color:#b9dccc;color:#176046;font-weight:800}.mobile-menu-grid span{font-size:11px;line-height:1.2}.cards,.form-grid,.inline-tools{grid-template-columns:1fr 1fr}.promotion-submit-tip{width:min(100%,680px)}.report-toolbar{align-items:stretch;flex-direction:column}.segmented,.date-range{flex-wrap:wrap}.report-section-head{align-items:stretch;flex-direction:column}.report-filter{grid-template-columns:minmax(0,1fr) minmax(120px,160px) auto}.line-item{grid-template-columns:1fr 1fr}.subform .flash-promotion-line-item{grid-template-columns:minmax(122px,.85fr) minmax(136px,1fr) minmax(86px,.62fr) minmax(66px,.48fr) minmax(78px,.52fr) minmax(150px,1.05fr) 36px}.subform .combo-promotion-line-item{grid-template-columns:minmax(122px,.95fr) minmax(136px,1.05fr) minmax(86px,.62fr) minmax(66px,.48fr) minmax(78px,.55fr) 36px}.document-actions{align-items:stretch;flex-direction:column}.document-action-buttons,.document-totals{width:100%}.document-totals{justify-content:flex-start}.list-tools{grid-template-columns:1fr 1fr}.list-tools input{grid-column:1 / -1}.document-flow-toolbar{grid-template-columns:1fr}.h5-shell .cards{gap:9px;grid-template-columns:repeat(2,minmax(0,1fr))}.product-search-tools{grid-template-columns:minmax(0,1fr) auto}.product-search-tools select,.partner-search-tools select{min-width:0}.partner-search-tools{grid-template-columns:minmax(0,1fr) auto}.line-remove{width:100%}}@media(max-width:560px){.cards,.form-grid,.inline-tools,.inline-input,.field-quick-create,.meta-quick-row,.permission-grid{grid-template-columns:1fr}.promotion-list-toolbar{align-items:stretch;flex-direction:column}.segmented,.date-range{display:grid;grid-template-columns:1fr}.report-filter,.report-filter.customer-filter,.flow-search{grid-template-columns:1fr}.date-range input{min-width:0;width:100%}.topbar{display:grid}.h5-shell .topbar{grid-template-columns:1fr}.top-actions{display:grid;grid-template-columns:1fr 1fr}.h5-shell .top-actions{gap:6px;grid-template-columns:.92fr 1.08fr 1.28fr .72fr}.h5-shell .top-actions .ghost,.h5-shell .top-actions .primary{font-size:12px;gap:4px;min-height:34px;padding:0 6px;white-space:nowrap}.h5-shell .mobile-menu-btn{grid-column:span 1;order:3}.h5-shell .refresh-btn{order:1}.install-btn{grid-column:1 / -1}.h5-shell .install-btn{display:none}.account-pill{justify-content:center;width:100%}.h5-shell .account-pill{font-size:12px;min-height:34px;overflow:hidden;order:3;padding:0 6px;text-overflow:ellipsis;white-space:nowrap}.h5-shell .account-pill{order:2}.h5-shell .logout-btn{order:4;padding:0 4px}.h5-shell .tab-strip{background:#fff;border-bottom:0;border-top:1px solid #dfe8e5;bottom:0;box-shadow:0 -10px 26px #0916131a;gap:7px;left:0;margin:0;padding:8px 8px calc(8px + env(safe-area-inset-bottom));position:fixed;right:0;z-index:10}.h5-shell .page-tab{border-radius:8px;max-width:148px;min-height:38px}.h5-shell .panel,.h5-shell .metric,.h5-shell .subform,.h5-shell .line-item,.h5-shell .list-row{border-radius:8px}.h5-shell .panel{padding:12px}.h5-shell .metric{min-height:82px;padding:10px}.h5-shell .metric strong{font-size:19px;margin-top:4px}.h5-shell .metric span{font-size:12px;margin-top:6px}.h5-shell .modal-backdrop{align-items:flex-end;padding:12px}.h5-shell .modal{border-radius:8px 8px 0 0;max-height:88vh}.h5-shell .user-edit-modal,.h5-shell .password-modal{max-height:calc(88vh - 24px);overflow:visible}.h5-shell .user-edit-form .user-form-pair,.h5-shell .password-form{grid-template-columns:1fr}.h5-shell .user-edit-form .field:last-child{max-width:none}.h5-shell .modal-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.product-modal{min-height:auto}.ghost,.primary{width:100%}.promotion-submit-row{align-items:stretch}.promotion-submit-tip{justify-content:flex-start;width:100%}.line-item{grid-template-columns:1fr}.subform .flash-promotion-line-item{grid-template-columns:minmax(122px,.85fr) minmax(136px,1fr) minmax(86px,.62fr) minmax(66px,.48fr) minmax(78px,.52fr) minmax(150px,1.05fr) 36px}.subform .combo-promotion-line-item{grid-template-columns:minmax(122px,.95fr) minmax(136px,1.05fr) minmax(86px,.62fr) minmax(66px,.48fr) minmax(78px,.55fr) 36px}.purchase-line-item{grid-template-columns:1fr}.document-action-buttons{display:grid}.list-tools,.detail-grid{grid-template-columns:1fr}}.h5-shell .purchase-doc-line-item,.h5-shell .sale-doc-line-item{align-items:end;background:#fff;border-color:#dce8e4;box-shadow:0 8px 22px #1c3d350f;gap:7px;grid-template-columns:repeat(6,minmax(0,1fr));padding:8px}.h5-shell .purchase-doc-line-item>.field,.h5-shell .sale-doc-line-item>.field{gap:4px;min-width:0}.h5-shell .purchase-doc-line-item>.field>span,.h5-shell .sale-doc-line-item>.field>span{font-size:11px;line-height:1.1}.h5-shell .purchase-doc-line-item input,.h5-shell .purchase-doc-line-item select,.h5-shell .sale-doc-line-item input,.h5-shell .sale-doc-line-item select{border-radius:7px;font-size:16px;height:38px;min-height:38px;padding:0 7px}.h5-shell .purchase-doc-line-item .scan-field,.h5-shell .sale-doc-line-item .scan-field{gap:5px}.h5-shell .purchase-doc-line-item .scan-field .icon-btn,.h5-shell .purchase-doc-line-item .line-remove,.h5-shell .sale-doc-line-item .scan-field .icon-btn,.h5-shell .sale-doc-line-item .line-remove{height:38px;min-height:38px;width:34px}.h5-shell .purchase-doc-line-item>.field:nth-of-type(1),.h5-shell .purchase-doc-line-item>.field:nth-of-type(2){grid-column:1 / -1}.h5-shell .purchase-doc-line-item>.field:nth-of-type(3){grid-column:span 3}.h5-shell .purchase-doc-line-item>.field:nth-of-type(4){grid-column:span 1}.h5-shell .purchase-doc-line-item>.field:nth-of-type(5){grid-column:span 2}.h5-shell .purchase-doc-line-item>.field:nth-of-type(6){grid-column:span 3}.h5-shell .purchase-doc-line-item>.field:nth-of-type(7){grid-column:span 2}.h5-shell .sale-doc-line-item>.field:nth-of-type(1),.h5-shell .sale-doc-line-item>.field:nth-of-type(2){grid-column:1 / -1}.h5-shell .sale-doc-line-item>.field:nth-of-type(3){grid-column:span 3}.h5-shell .sale-doc-line-item>.field:nth-of-type(4){grid-column:span 1}.h5-shell .sale-doc-line-item>.field:nth-of-type(5){grid-column:span 2}.h5-shell .sale-doc-line-item>.field:nth-of-type(6){grid-column:span 2}.h5-shell .sale-doc-line-item>.field:nth-of-type(7){grid-column:span 2}.h5-shell .sale-doc-line-item>.field:nth-of-type(8){grid-column:span 3}.h5-shell .sale-doc-line-item>.field:nth-of-type(9){grid-column:span 2}.h5-shell .sale-doc-line-item .line-hint{font-size:10px;line-height:1.15}.h5-shell .purchase-doc-line-item .line-remove,.h5-shell .sale-doc-line-item .line-remove{align-self:end;grid-column:span 1;justify-self:stretch}.h5-shell .purchase-doc-line-item+.purchase-doc-line-item,.h5-shell .sale-doc-line-item+.sale-doc-line-item{margin-top:2px}.h5-shell .product-form-triple{gap:7px;grid-template-columns:repeat(3,minmax(0,1fr))}.h5-shell .product-form-triple .field{gap:5px;min-width:0}.h5-shell .product-form-triple .field span{font-size:11px;line-height:16px;min-height:16px;white-space:nowrap}.h5-shell .product-form-triple input,.h5-shell .product-form-triple select{height:36px;min-height:36px;min-width:0;padding:0 7px}.h5-shell .product-meta-quick-row{gap:7px;grid-template-columns:repeat(2,minmax(0,1fr))}.h5-shell .product-meta-quick-row .meta-quick-create{gap:5px;min-width:0}.h5-shell .product-meta-quick-row .meta-quick-create>span{font-size:11px;line-height:16px;min-height:16px}.h5-shell .product-meta-quick-row .field-quick-create{gap:5px;grid-template-columns:minmax(0,1fr) auto}.h5-shell .product-meta-quick-row input,.h5-shell .product-meta-quick-row .ghost{height:36px;min-height:36px}.h5-shell .product-meta-quick-row .ghost{font-size:12px;padding:0 8px}.h5-shell .partner-form-pair{gap:7px;grid-template-columns:repeat(2,minmax(0,1fr))}.h5-shell .partner-form-pair .field{gap:5px;min-width:0}.h5-shell .partner-form-pair .field span{font-size:11px;line-height:16px;min-height:16px;white-space:nowrap}.h5-shell .partner-form-pair input,.h5-shell .partner-form-pair select{height:36px;min-height:36px;min-width:0;padding:0 7px}.h5-shell .user-form-pair{gap:7px;grid-template-columns:repeat(2,minmax(0,1fr))}.h5-shell .user-form-pair .field{gap:5px;min-width:0}.h5-shell .user-form-pair .field span{font-size:11px;line-height:16px;min-height:16px;white-space:nowrap}.h5-shell .user-form-pair input,.h5-shell .user-form-pair select{height:36px;min-height:36px;min-width:0;padding:0 7px}.h5-shell .user-list-row{align-items:stretch;display:grid;gap:8px;grid-template-columns:1fr}.h5-shell .user-list-row>div:first-child{align-items:center;display:flex;flex-wrap:wrap;gap:4px 8px;min-width:0}.h5-shell .user-list-row>div:first-child b,.h5-shell .user-list-row>div:first-child small{margin-top:0;min-width:0}.h5-shell .user-list-row>div:first-child b{font-size:14px}.h5-shell .user-list-row>div:first-child small{font-size:11px}.h5-shell .user-list-row .row-actions{display:grid;gap:6px;grid-template-columns:repeat(3,minmax(0,1fr))}.h5-shell .user-list-row .pill,.h5-shell .user-list-row .compact-btn{justify-content:center;min-height:32px;padding:0 6px;white-space:nowrap;width:100%}.h5-shell .user-list-row .pill{grid-column:1 / -1}.h5-shell .user-list-row .compact-btn{font-size:12px}.h5-shell .promotion-form-pair{align-items:end;gap:7px;grid-template-columns:repeat(2,minmax(0,1fr))}.h5-shell .promotion-form-pair .field{gap:5px;min-width:0}.h5-shell .promotion-form-pair .field span{line-height:16px;min-height:16px}.h5-shell .promotion-form-pair input,.h5-shell .promotion-form-pair select{height:36px;min-height:36px;min-width:0;padding:0 8px;width:100%}.h5-shell .promotion-line-item{align-items:end;background:#fff;border-color:#dce8e4;box-shadow:0 8px 22px #1c3d350f;gap:7px;grid-template-columns:repeat(6,minmax(0,1fr));min-width:0;padding:8px}.h5-shell .promotion-line-item .line-field{gap:4px;min-width:0}.h5-shell .promotion-line-item .line-field-title{font-size:11px;line-height:1.1}.h5-shell .promotion-line-item input,.h5-shell .promotion-line-item select{border-radius:7px;font-size:12px;height:34px;min-height:34px;padding:0 7px}.h5-shell .promotion-line-item>.line-field:nth-of-type(1),.h5-shell .promotion-line-item>.line-field:nth-of-type(2){grid-column:1 / -1}.h5-shell .promotion-line-item>.line-field:nth-of-type(3){grid-column:span 3}.h5-shell .promotion-line-item>.line-field:nth-of-type(4){grid-column:span 1}.h5-shell .promotion-line-item>.line-field:nth-of-type(5){grid-column:span 2}.h5-shell .flash-promotion-line-item>.line-field:nth-of-type(6){grid-column:span 3}.h5-shell .promotion-line-item>.icon-btn{align-self:end;grid-column:span 1;height:34px;min-height:34px;width:100%}.h5-shell .promotion-list-toolbar{align-items:stretch;display:grid;gap:7px;grid-template-columns:1fr}.h5-shell .promotion-list-toolbar .segmented{display:grid;gap:6px;grid-template-columns:repeat(2,minmax(0,1fr));width:100%}.h5-shell .promotion-list-toolbar .segmented button{font-size:12px;min-height:34px;padding:0 6px;white-space:nowrap}.h5-shell .promotion-list-toolbar .list-summary{text-align:left}.h5-shell .promotion-list-row{align-items:stretch;display:grid;gap:9px;grid-template-columns:1fr}.h5-shell .promotion-info{min-width:0;width:100%}.h5-shell .promotion-info b,.h5-shell .promotion-info small{display:block;overflow-wrap:anywhere}.h5-shell .promotion-row-actions{border-top:1px solid #e6efeb;display:grid;gap:6px;grid-template-columns:repeat(auto-fit,minmax(72px,1fr));padding-top:8px;width:100%}.h5-shell .promotion-row-actions .pill,.h5-shell .promotion-row-actions .ghost{justify-content:center;min-height:32px;padding:0 6px;white-space:nowrap;width:100%}.h5-shell .report-toolbar{align-items:stretch;display:grid;gap:8px;grid-template-columns:1fr}.h5-shell .report-toolbar .segmented{display:grid;gap:6px;grid-template-columns:repeat(5,minmax(0,1fr));width:100%}.h5-shell .report-toolbar .segmented button{font-size:12px;min-height:34px;padding:0 4px}.h5-shell .date-range{align-items:center;display:grid;gap:6px;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr)}.h5-shell .date-range input{min-width:0;padding:0 6px;width:100%}.h5-shell .report-tabbar{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));width:100%}.h5-shell .report-tabbar button{min-height:36px;padding:0 6px}.h5-shell .report-filter:not(.customer-filter){align-items:center;display:grid;gap:6px;grid-template-columns:minmax(0,1fr) minmax(82px,96px) minmax(58px,66px)}.h5-shell .report-filter:not(.customer-filter) select{min-width:0;padding:0 6px;width:100%}.h5-shell .report-filter:not(.customer-filter) .ghost{gap:4px;min-height:36px;padding:0 6px;width:100%}.h5-shell .report-filter.customer-filter{align-items:center;display:grid;gap:6px;grid-template-columns:minmax(0,1fr) minmax(58px,66px)}.h5-shell .report-filter.customer-filter .ghost{gap:4px;min-height:36px;padding:0 6px;width:100%}.h5-shell .inventory-search-tools{align-items:center;display:grid;gap:6px;grid-template-columns:minmax(0,1fr) minmax(82px,96px) minmax(58px,66px)}.h5-shell .inventory-search-tools .suggest-field{min-width:0}.h5-shell .inventory-search-tools select{min-width:0;padding:0 6px;width:100%}.h5-shell .inventory-search-tools .ghost{gap:4px;min-height:36px;padding:0 6px;width:100%}.h5-shell .h5-inventory-card-list .wide .ghost{min-height:34px;width:100%}.h5-shell .document-flow-toolbar{align-items:stretch;display:grid;gap:8px;grid-template-columns:1fr}.h5-shell .document-flow-toolbar .segmented{display:grid;gap:6px;grid-template-columns:repeat(4,minmax(0,1fr));width:100%}.h5-shell .document-flow-toolbar .segmented button{font-size:12px;min-height:34px;padding:0 4px;white-space:nowrap}.h5-shell .document-flow-toolbar .date-range{align-items:center;display:grid;gap:6px;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr)}.h5-shell .flow-search{align-items:center;display:grid;gap:6px;grid-template-columns:minmax(0,1fr) minmax(58px,66px)}.h5-shell .flow-search .primary{gap:4px;min-height:36px;padding:0 6px;white-space:nowrap;width:100%}.h5-shell .pagination-bar{align-items:stretch;display:grid;gap:7px;grid-template-columns:1fr}.h5-shell .pagination-summary,.h5-shell .pagination-controls{align-items:center;display:grid;gap:6px;width:100%}.h5-shell .pagination-summary{grid-template-columns:1fr}.h5-shell .pagination-controls{grid-template-columns:minmax(0,1fr) minmax(58px,66px) minmax(58px,66px)}.h5-shell .pagination-controls span,.h5-shell .period-line,.h5-shell .period-query{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.h5-shell .pagination-controls .ghost{font-size:12px;min-height:34px;padding:0 6px;white-space:nowrap;width:100%}.h5-shell .h5-document-card-list .document-card-actions .ghost{min-height:34px;width:100%}@media print{body{background:#fff}body *{visibility:hidden}.modal-backdrop,.modal-backdrop *{visibility:visible}.no-print{display:none!important}.modal-backdrop{background:#fff;display:block;inset:0 auto auto 0;padding:0;position:static}.modal.print-area{box-shadow:none;left:0;max-height:none;max-width:none;overflow:visible;padding:0;position:absolute;top:0;width:100%}.modal.print-area table{min-width:0}}
