.app-container{display:flex;min-height:100vh}.sidebar{width:240px;background:#2d3748;color:#fff;display:flex;flex-direction:column}.sidebar-header{padding:20px;border-bottom:1px solid #4a5568}.logo{font-size:18px;font-weight:700}.sidebar-nav ul{list-style:none;padding:10px 0}.sidebar-nav li{margin-bottom:4px}.sidebar-nav li a{display:block;padding:12px 20px;color:#e2e8f0;text-decoration:none;font-size:14px}.sidebar-nav li a:hover{background:#4a5568}.sidebar-nav li.active a{background:#409eff;color:#fff}.sidebar-footer{margin-top:auto;padding:20px}.logout-btn{width:100%;padding:10px;background:#dc2626;color:#fff;border:none;border-radius:6px;cursor:pointer}.main-content{flex:1;display:flex;flex-direction:column;background:#f7fafc}.top-bar{display:flex;justify-content:space-between;align-items:center;padding:16px 24px;background:#fff;box-shadow:0 2px 4px #0000000d}.top-bar-left h2{font-size:18px;color:#2d3748}.user-info{display:flex;align-items:center;gap:12px}.role-tag{background:#409eff;color:#fff;padding:4px 10px;border-radius:12px;font-size:12px}.content-area{flex:1;padding:24px;overflow-y:auto}.page-title{font-size:20px;font-weight:700;color:#2d3748;margin-bottom:20px}.card{background:#fff;border-radius:8px;padding:20px;box-shadow:0 2px 4px #0000000d;margin-bottom:20px}.btn{padding:8px 16px;border:none;border-radius:6px;cursor:pointer;font-size:14px;transition:background .2s}.btn-primary{background:#409eff;color:#fff}.btn-primary:hover{background:#337ecc}.btn-success{background:#67c23a;color:#fff}.btn-success:hover{background:#529b2e}.btn-danger{background:#f56c6c;color:#fff}.btn-danger:hover{background:#e45656}.btn-secondary{background:#e2e8f0;color:#4a5568}.btn-secondary:hover{background:#cbd5e0}.form-group{margin-bottom:16px}.form-label{display:block;margin-bottom:6px;font-size:14px;color:#4a5568}.form-input,.form-select,.form-textarea{width:100%;padding:10px;border:1px solid #e2e8f0;border-radius:6px;font-size:14px}.form-input:focus,.form-select:focus,.form-textarea:focus{outline:none;border-color:#409eff}.table{width:100%;border-collapse:collapse;font-size:14px}.table th,.table td{padding:12px;text-align:left;border-bottom:1px solid #e2e8f0}.table th{background:#f7fafc;font-weight:600;color:#4a5568}.table tr:hover{background:#f7fafc}.status-badge{padding:4px 10px;border-radius:12px;font-size:12px}.status-success{background:#e8f5e9;color:#67c23a}.status-pending{background:#fff7e6;color:#e6a23c}.status-reject{background:#fef0f0;color:#f56c6c}.status-cancel{background:#f5f5f5;color:#999}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.modal-content{background:#fff;border-radius:8px;padding:24px;width:90%;max-width:500px;max-height:80vh;overflow-y:auto}.modal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.modal-title{font-size:18px;font-weight:700}.modal-close{background:none;border:none;font-size:24px;cursor:pointer;color:#999}.pagination{display:flex;justify-content:center;align-items:center;gap:8px;margin-top:20px}.pagination button{padding:8px 12px;border:1px solid #e2e8f0;background:#fff;border-radius:4px;cursor:pointer}.pagination button.active{background:#409eff;color:#fff;border-color:#409eff}.pagination button:disabled{opacity:.5;cursor:not-allowed}.search-box{padding:8px 12px;border:1px solid #e2e8f0;border-radius:4px;font-size:14px;margin-right:12px}.filter-row{display:flex;align-items:center;gap:16px;margin-bottom:20px;flex-wrap:wrap}.chart-container{height:300px;position:relative}.login-container[data-v-b76d868d]{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#667eea,#764ba2)}.login-box[data-v-b76d868d]{background:#fff;border-radius:16px;padding:40px;width:90%;max-width:450px;box-shadow:0 20px 60px #0003}.logo-area[data-v-b76d868d]{text-align:center;margin-bottom:32px}.logo-icon[data-v-b76d868d]{font-size:64px;margin-bottom:16px}.logo-area h1[data-v-b76d868d]{font-size:24px;color:#2d3748;margin-bottom:8px}.logo-area p[data-v-b76d868d]{font-size:14px;color:#718096}.btn-block[data-v-b76d868d]{width:100%;padding:12px;font-size:16px}.error-message[data-v-b76d868d]{color:#dc2626;font-size:14px;text-align:center;margin-top:16px}.default-accounts[data-v-b76d868d]{margin-top:32px;padding-top:24px;border-top:1px solid #e2e8f0}.default-accounts h3[data-v-b76d868d]{font-size:14px;color:#718096;margin-bottom:16px}.account-list[data-v-b76d868d]{display:flex;flex-direction:column;gap:12px}.account-item[data-v-b76d868d]{background:#f7fafc;padding:12px;border-radius:8px}.account-label[data-v-b76d868d]{display:block;font-size:12px;color:#4a5568;margin-bottom:4px}.account-info[data-v-b76d868d]{display:block;font-size:13px;color:#2d3748}.stats-grid[data-v-e4f05e37]{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px;margin-bottom:24px}.stat-card[data-v-e4f05e37]{background:#fff;border-radius:8px;padding:20px;display:flex;align-items:center;box-shadow:0 2px 4px #0000000d}.stat-icon[data-v-e4f05e37]{font-size:36px;margin-right:16px}.stat-content[data-v-e4f05e37]{flex:1}.stat-value[data-v-e4f05e37]{font-size:28px;font-weight:700;color:#2d3748}.stat-label[data-v-e4f05e37]{font-size:14px;color:#718096}.card-header[data-v-e4f05e37]{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.card-header h3[data-v-e4f05e37]{margin:0;font-size:16px}.empty-text[data-v-e4f05e37]{text-align:center;padding:40px;color:#999}.btn-sm[data-v-99fff765]{padding:4px 10px;font-size:12px;margin-right:8px}.empty-text[data-v-99fff765]{text-align:center;padding:40px;color:#999}.import-label[data-v-99fff765]{position:relative;overflow:hidden;cursor:pointer}.import-input[data-v-99fff765]{position:absolute;top:0;left:0;width:100%;height:100%;opacity:0;cursor:pointer}.btn-sm[data-v-b3ea4c56]{padding:4px 10px;font-size:12px;margin-right:8px}.empty-text[data-v-b3ea4c56]{text-align:center;padding:40px;color:#999}.rule-fields[data-v-712d2135]{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:20px;margin-bottom:24px}.rule-item[data-v-712d2135]{display:flex;flex-direction:column}.rule-desc[data-v-712d2135]{font-size:12px;color:#999;margin-top:4px}.rule-list[data-v-712d2135]{list-style:none;padding:0}.rule-list li[data-v-712d2135]{padding:10px 0;border-bottom:1px solid #f0f0f0;color:#666}.rule-list li[data-v-712d2135]:last-child{border-bottom:none}.filter-row[data-v-3ded8ff1]{margin-bottom:16px;display:flex;gap:12px}.card[data-v-3ded8ff1]{background:#fff;border-radius:8px;box-shadow:0 1px 3px #0000001a;overflow:hidden}.table[data-v-3ded8ff1]{width:100%;border-collapse:collapse}.table th[data-v-3ded8ff1],.table td[data-v-3ded8ff1]{padding:12px;text-align:left;border-bottom:1px solid #eee}.table th[data-v-3ded8ff1]{background:#f8f9fa}.btn-sm[data-v-3ded8ff1]{padding:4px 10px;font-size:12px;margin-right:6px}.empty-text[data-v-3ded8ff1]{padding:40px;text-align:center;color:#999}.modal-overlay[data-v-3ded8ff1]{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:999}.modal-content[data-v-3ded8ff1]{background:#fff;width:500px;max-width:90%;padding:20px;border-radius:8px}.modal-header[data-v-3ded8ff1]{display:flex;justify-content:space-between;margin-bottom:12px;font-weight:700}.modal-close[data-v-3ded8ff1]{background:none;border:none;font-size:18px;cursor:pointer}.form-group[data-v-3ded8ff1]{margin-bottom:16px}.form-label[data-v-3ded8ff1]{display:block;margin-bottom:6px}.form-textarea[data-v-3ded8ff1]{width:100%;padding:8px;border:1px solid #ddd;border-radius:4px;box-sizing:border-box}.btn-sm[data-v-2a56c0e7]{padding:4px 10px;font-size:12px;margin-right:8px}.empty-text[data-v-2a56c0e7]{text-align:center;padding:40px;color:#999}.import-label[data-v-2a56c0e7]{position:relative;overflow:hidden;cursor:pointer}.import-input[data-v-2a56c0e7]{position:absolute;top:0;left:0;width:100%;height:100%;opacity:0;cursor:pointer}.chart-container[data-v-9f0e95fb]{height:300px;position:relative}.empty-text[data-v-1e6c27a8]{text-align:center;padding:40px;color:#999}
