:root{font-family:PingFang SC,Microsoft YaHei,sans-serif;color:#222;background:#f5f5f5;line-height:1.5;font-weight:400;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;--border: #dcdfe6;--panel: #ffffff;--text-soft: #666;--primary: #1677ff;--success: #2e8b57;--danger: #d4380d}*{box-sizing:border-box}body{margin:0;min-width:320px;background:#f5f5f5;color:#222}button,input,select{font:inherit}html{-webkit-text-size-adjust:100%}button{cursor:pointer}h1,h2,p{margin:0}.auth-layout,.profile-layout{min-height:100vh}.auth-layout{display:flex;align-items:center;justify-content:center;padding:24px}.auth-card,.panel{background:var(--panel);border:1px solid var(--border);border-radius:8px}.auth-card{width:100%;max-width:420px;padding:24px}.form-grid{display:grid;gap:16px;margin-top:20px}.form-grid label{display:grid;gap:8px}.remember-check{display:flex!important;align-items:center;gap:10px}.remember-check input{width:18px;min-height:18px;height:18px;padding:0}.remember-check span{font-size:14px;font-weight:500}.form-grid span,dt{font-size:14px;font-weight:600}input,select{width:100%;min-height:44px;padding:10px 12px;border:1px solid var(--border);border-radius:6px;background:#fff;color:#222;font-size:16px}input:focus{outline:none;border-color:var(--primary)}select:focus{outline:none;border-color:var(--primary)}.primary-button,.ghost-button{border:0;border-radius:6px;min-height:44px;padding:10px 16px;font-size:14px}.primary-button{background:var(--primary);color:#fff}.ghost-button{background:#f0f0f0;color:#222}.primary-button:disabled,.ghost-button:disabled{opacity:.6;cursor:not-allowed}.profile-layout{max-width:1440px;margin:0 auto;padding:10px 20px 20px;padding-bottom:max(24px,env(safe-area-inset-bottom))}.header-actions{display:flex;align-items:center;justify-content:flex-end;gap:6px;flex-shrink:0}.header-action-button{min-height:30px;padding:4px 10px;font-size:12px;line-height:1;border:1px solid #d9d9d9;background:#fff}.profile-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:16px}.panel{padding:18px;min-width:0}.panel-head{margin-bottom:12px}.panel-head-row{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.panel-head p{color:var(--text-soft)}.date-picker-field{cursor:pointer}.report-meta-grid label>span{font-size:10px;font-weight:600}.compact-text-input,.report-meta-grid input[type=text]{min-height:30px;height:30px;padding:4px 8px;font-size:10px;line-height:22px;border-radius:4px;border:1px solid var(--border);background:#fff;box-sizing:border-box}.date-picker-field-compact,.search-field-compact{position:relative}.date-picker-shell{position:relative;display:flex;align-items:center;min-height:30px;width:100%;padding:4px 8px;border:1px solid var(--border);border-radius:4px;background:#fff;box-shadow:none}.date-picker-shell strong{font-size:10px;font-weight:600;color:#222}.calendar-popover{position:absolute;top:calc(100% + 6px);left:0;z-index:30;width:min(360px,calc(100vw - 28px));min-width:300px;padding:12px;border:1px solid #dfe6ee;border-radius:12px;background:#fff;box-shadow:0 18px 42px #0f172a2e}.calendar-toolbar{display:flex;align-items:center;justify-content:space-between;margin-bottom:6px}.calendar-toolbar strong{font-size:14px;font-weight:700;color:#1f2329}.calendar-nav-button,.calendar-action-button{min-height:32px;padding:0 12px;border:1px solid #d9dfe7;border-radius:8px;background:#fff;color:#1f2329;font-size:12px}.calendar-weekdays,.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px}.calendar-weekdays{margin-bottom:4px}.calendar-weekdays span{text-align:center;font-size:11px;color:#8a94a6}.calendar-cell{min-height:38px;padding:0;border:1px solid transparent;border-radius:8px;background:#f8fafc;color:#1f2329;font-size:13px}.calendar-cell.is-muted{color:#b8c0cc;background:#fbfcfd}.calendar-cell.is-selected{background:#1677ff;color:#fff}.calendar-cell.is-today:not(.is-selected){border-color:#1677ff;color:#1677ff;background:#eef5ff}.calendar-actions{display:flex;justify-content:space-between;gap:6px;margin-top:8px}.calendar-actions .calendar-action-button{flex:1}.calendar-actions .calendar-action-button.ghost{background:#f5f7fa}.settlement-summary{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:8px 10px;border:1px solid #f0f0f0;border-radius:4px;background:#fafafa}.settlement-summary div{display:grid;gap:4px}.settlement-summary strong{font-size:12px}.settlement-summary span{color:var(--text-soft);font-size:10px}.settlement-summary b{font-size:16px;color:#222}.settlement-summary.settled{background:#f6ffed;border-color:#b7eb8f}.settlement-summary.settled b,.settlement-summary.settled strong{color:var(--success)}.info-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.info-grid div{display:grid;gap:6px}dt{color:var(--text-soft)}dd{margin:0}.status-pill{display:inline-block;padding:4px 10px;border-radius:999px;background:#f0f0f0;color:#444;font-size:12px}.status-pill.bound{background:#e8f7ee;color:var(--success)}.product-input-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.report-panel{overflow:hidden;position:relative;padding-top:10px}.report-title-block{display:grid;gap:2px}.report-title-block h2{font-size:14px;line-height:1.15}.report-wechat-code{display:inline-block;margin-left:6px;font-size:10px;font-weight:500;color:var(--text-soft);vertical-align:middle}.report-title-block p{font-size:10px;color:var(--text-soft)}.report-head-row{align-items:center;position:relative;padding-top:14px}.report-head-actions{position:absolute;top:-4px;right:0;flex-wrap:wrap;width:auto;gap:6px}.report-meta-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;align-items:end}.mobile-report-table{border:1px solid var(--border);border-radius:4px;overflow:hidden;background:#fff}.report-tab-bar{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0;padding:4px;background:#f5f8fc;border-bottom:1px solid #e7edf5}.report-tab-button{display:grid;gap:2px;justify-items:center;min-height:34px;padding:4px 6px;border:0;border-radius:4px;background:transparent;color:#6a7687;font-size:11px;font-weight:700}.report-tab-button strong{font-size:10px;color:inherit}.report-tab-button.active{background:linear-gradient(180deg,#1792ff,#0c7df2);color:#fff;box-shadow:none}.report-review-banner{padding:5px 6px;border-top:1px solid #ececec;background:#fff8e6;color:#8a5a00;font-size:9px}.report-review-banner-pending{background:#eef7ff;color:#1768a8}.reported-toolbar{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:4px 6px;border-top:1px solid #ececec;background:#f8fbff;color:#4c6482;font-size:9px}.reported-toolbar-button,.report-date-action-button,.report-row-delete-button{min-height:24px;padding:0 10px;border:1px solid #d9dfe7;border-radius:4px;background:#fff;color:#1f2329;font-size:11px;font-weight:700}.report-category-row{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:4px 6px;border-top:1px solid #ececec;background:#f8fbff}.report-date-row{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:4px 6px;border-top:1px solid #ececec;background:#eef5ff}.report-date-row strong{font-size:11px;font-weight:700}.report-date-row span{color:#4c6482;font-size:11px;font-weight:700}.report-date-actions{display:flex;align-items:center;gap:6px}.calendar-popover-static{position:static;width:100%;min-width:0;margin-top:8px;box-shadow:none}.report-date-editor-modal{width:min(420px,calc(100vw - 20px))}.report-date-editor-body{display:grid;gap:10px}.report-date-editor-summary{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:6px 8px;border-radius:6px;background:#f5f9ff;color:#4c6482;font-size:11px;font-weight:700}.report-date-editor-summary strong{color:#1768a8;font-size:11px}.report-date-editor-calendar{margin-top:0;padding:0;overflow:hidden}.report-date-confirm-modal{width:min(360px,calc(100vw - 24px))}.report-date-confirm-content{display:grid;gap:12px}.report-date-confirm-content p{font-size:12px;font-weight:700;color:#1768a8}.report-date-confirm-button,.reported-toolbar-button,.report-row-delete-button,.report-date-trigger-button{min-height:26px;padding:3px 8px;border:1px solid #1677ff;border-radius:4px;background:#1677ff;color:#fff;font-size:11px;font-weight:700}.report-date-confirm-button.ghost,.reported-toolbar-button.ghost,.report-row-delete-button.ghost,.report-date-trigger-button.ghost{background:#fff;color:#1677ff}.report-category-row strong{font-size:10px}.report-category-row span{color:var(--text-soft);font-size:8px}.report-grid-table{border-top:1px solid #ececec}.report-grid-head,.report-grid-row{display:grid;grid-template-columns:34px minmax(0,1fr) 46px 52px 46px;align-items:center;column-gap:8px}.report-grid-head{padding:4px 6px;background:#f8f8f8;color:#4b5563;font-size:10px;font-weight:700;border-bottom:1px solid #ececec}.report-grid-row{padding:4px 6px;border-bottom:1px solid #ececec;font-size:10px;line-height:1.2}.pending-report-grid-row{min-height:44px;padding-top:10px;padding-bottom:10px}.report-grid-table .grid-seq{text-align:center;white-space:nowrap}.grid-seq-selectable{display:flex;align-items:center;justify-content:center;gap:3px}.grid-seq-selectable input{width:12px;height:12px;min-height:12px;margin:0}.report-grid-table .grid-name{min-width:0;word-break:break-all}.report-grid-table .grid-price,.report-grid-table .grid-subtotal{text-align:right;white-space:nowrap;font-weight:600}.grid-subtotal-actions{display:grid;justify-items:end;gap:2px}.report-grid-table .grid-price{color:#e02020}.report-grid-table .grid-qty{display:flex;justify-content:center}.report-qty-editor,.report-qty-static{display:grid;justify-items:center;gap:2px}.report-qty-editor input{min-height:22px;padding:1px 2px;text-align:center;border:1px solid #d9dfe7;border-radius:0;font-size:12px;line-height:1.2;font-weight:500;color:#1d4f91;background:#fff;-moz-appearance:none;appearance:none;-webkit-appearance:none}.report-qty-static strong{font-size:10px;color:#1768a8}.mobile-report-total{display:grid;gap:2px;padding:6px 8px;background:#eaf5ff;color:#1780ff;font-size:11px;font-weight:800;border-top:1px solid #d8ebff}.report-empty-state{padding:8px 6px;text-align:center;color:var(--text-soft);font-size:10px;border-top:1px solid #ececec}.report-actions{display:grid;grid-template-columns:minmax(0,1fr);gap:8px}.report-actions .ghost-button,.report-actions .primary-button{min-height:32px;border-radius:4px;font-size:12px}.report-actions .ghost-button{border:1px solid #d9d9d9;background:#fff}.report-actions .primary-button{background:linear-gradient(180deg,#1792ff,#0c7df2)}.report-submit-button{width:100%}.password-modal-mask{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;display:flex;align-items:flex-start;justify-content:flex-end;padding:88px 24px 24px;background:#0000002e}.password-modal{width:min(420px,100%);padding:20px;border:1px solid var(--border);border-radius:10px;background:#fff;box-shadow:0 18px 48px #00000024}.password-modal-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.product-input-card{display:grid;gap:10px;padding:18px;border-radius:8px;background:#fafafa;border:1px solid var(--border)}.product-input-card strong{font-size:16px}.inline-subtotal{font-size:14px;color:var(--text-soft)}.form-error,.form-success,.form-warning{font-size:14px}.form-error{color:var(--danger)}.form-success{color:var(--success)}.form-warning{color:#b26a00}@media (max-width: 900px){.auth-layout,.profile-layout{max-width:none;padding:8px 12px 12px}.auth-card,.panel{padding:14px}.profile-grid{grid-template-columns:1fr}.header-actions{width:auto;justify-content:flex-end}.panel-head-row,.report-head-row{flex-direction:column;align-items:stretch}.header-actions .header-action-button,.form-grid .primary-button{width:auto}.report-head-actions{position:absolute;top:-4px;right:0;width:auto;justify-content:flex-end}.info-grid{grid-template-columns:1fr}.product-input-card{padding:14px}.product-input-grid{grid-template-columns:1fr}.report-meta-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.report-meta-grid input[type=text]{min-height:30px;height:30px;padding:4px 8px;font-size:16px;line-height:22px}.date-picker-shell strong{font-size:16px;line-height:22px}.password-modal-mask{padding:76px 16px 16px;align-items:flex-start;justify-content:stretch}.password-modal{width:100%}}@media (max-width: 480px){.auth-layout,.profile-layout{padding:6px 10px 10px}.auth-card,.panel{border-radius:6px;padding:12px}.form-grid{gap:14px;margin-top:16px}.header-actions{gap:6px}.header-action-button{min-height:28px;padding:4px 8px;font-size:11px}.password-modal-mask{padding:68px 12px 12px}.password-modal{padding:14px;border-radius:8px}.product-input-grid{gap:12px}.report-tab-bar{padding:4px}.report-meta-grid label>span{font-size:10px}.compact-text-input,.date-picker-shell{min-height:30px;height:30px;padding:4px 8px}.compact-text-input,.report-meta-grid input[type=text],.date-picker-shell strong{font-size:16px;line-height:22px}.date-picker-shell small{font-size:8px}.calendar-popover{width:min(360px,calc(100vw - 20px));min-width:0;padding:10px}.calendar-cell{min-height:36px;font-size:12px}.report-tab-button{min-height:34px;padding:4px;font-size:10px}.report-wechat-code{margin-left:4px;font-size:10px}.report-tab-button strong{font-size:9px}.report-grid-head,.report-grid-row{grid-template-columns:30px minmax(0,1fr) 42px 50px 42px;column-gap:8px}.report-grid-head,.report-grid-row{padding:3px 5px;font-size:9px}.report-qty-editor input,.report-qty-static strong{font-size:12px}.report-qty-editor input{min-height:20px;padding:1px 2px;line-height:1.2}.mobile-report-total{padding:5px 6px;font-size:10px}.reported-toolbar-button,.report-date-action-button,.report-row-delete-button{min-height:24px;padding:0 8px;font-size:10px}.report-actions{gap:8px}.report-actions .ghost-button,.report-actions .primary-button{min-height:32px;border-radius:4px;font-size:12px}}
