.card[data-v-608708cd]{background:#fff;border-radius:8px;padding:16px}.toolbar[data-v-608708cd]{display:flex;gap:10px;margin-bottom:12px}.editor[data-v-608708cd]{background:#f9fafb;border:1px solid #e5e7eb;padding:12px;border-radius:8px;margin-bottom:12px}.grid[data-v-608708cd]{display:grid;grid-template-columns:repeat(3,minmax(180px,1fr));gap:10px}.actions[data-v-608708cd]{margin-top:10px;display:flex;gap:8px}button[data-v-608708cd],input[data-v-608708cd],select[data-v-608708cd]{height:34px;padding:0 10px;border:1px solid #d1d5db;border-radius:6px;background:#fff}button[data-v-608708cd]{cursor:pointer}button.primary[data-v-608708cd]{background:#2563eb;color:#fff;border-color:#2563eb}table[data-v-608708cd]{width:100%;border-collapse:collapse}td[data-v-608708cd],th[data-v-608708cd]{border:1px solid #e5e7eb;padding:8px;font-size:13px;text-align:left}.card[data-v-28d5373c]{background:#fff;border-radius:8px;padding:16px}.grid[data-v-28d5373c]{display:grid;grid-template-columns:repeat(4,minmax(180px,1fr));gap:10px}.actions[data-v-28d5373c]{margin:10px 0 0}.toolbar[data-v-28d5373c]{display:flex;gap:10px;margin:12px 0}button[data-v-28d5373c],input[data-v-28d5373c],select[data-v-28d5373c]{height:34px;padding:0 10px;border:1px solid #d1d5db;border-radius:6px}button[data-v-28d5373c]{cursor:pointer;background:#fff}button.primary[data-v-28d5373c]{background:#2563eb;color:#fff;border-color:#2563eb}table[data-v-28d5373c]{margin-top:8px;width:100%;border-collapse:collapse}td[data-v-28d5373c],th[data-v-28d5373c]{border:1px solid #e5e7eb;padding:8px;font-size:13px;text-align:left}.card[data-v-67782b14]{background:#fff;border-radius:8px;padding:16px}.toolbar[data-v-67782b14]{display:flex;gap:10px;margin-bottom:12px}button[data-v-67782b14],select[data-v-67782b14]{height:34px;padding:0 10px;border:1px solid #d1d5db;border-radius:6px}button[data-v-67782b14]{cursor:pointer;background:#fff}button.primary[data-v-67782b14]{background:#2563eb;color:#fff;border-color:#2563eb}table[data-v-67782b14]{width:100%;border-collapse:collapse}td[data-v-67782b14],th[data-v-67782b14]{border:1px solid #e5e7eb;padding:8px;font-size:13px;text-align:left}.group-rent[data-v-67782b14]{background:#eff6ff;color:#1e3a8a}.group-all[data-v-67782b14]{background:#f0fdf4;color:#166534}.group-down[data-v-67782b14]{background:#fff7ed;color:#9a3412}.card[data-v-919b745a]{background:#fff;border-radius:8px;padding:16px}.toolbar[data-v-919b745a]{display:flex;gap:10px;margin-bottom:12px}button[data-v-919b745a],select[data-v-919b745a]{height:34px;padding:0 10px;border:1px solid #d1d5db;border-radius:6px}button[data-v-919b745a]{cursor:pointer;background:#fff}button.primary[data-v-919b745a]{background:#2563eb;color:#fff;border-color:#2563eb}table[data-v-919b745a]{width:100%;border-collapse:collapse}td[data-v-919b745a],th[data-v-919b745a]{border:1px solid #e5e7eb;padding:8px;font-size:13px;text-align:left}.group-rent[data-v-919b745a]{background:#eff6ff;color:#1e3a8a}.group-all[data-v-919b745a]{background:#f0fdf4;color:#166534}.group-down[data-v-919b745a]{background:#fff7ed;color:#9a3412}.danger[data-v-919b745a]{background:#fef2f2;color:#b91c1c;font-weight:600}.card[data-v-590e1df2]{background:#fff;border-radius:8px;padding:16px}.toolbar[data-v-590e1df2]{display:flex;gap:10px;margin-bottom:12px}button[data-v-590e1df2],select[data-v-590e1df2]{height:34px;padding:0 10px;border:1px solid #d1d5db;border-radius:6px}button[data-v-590e1df2]{cursor:pointer;background:#fff}button[data-v-590e1df2]:disabled{cursor:not-allowed;opacity:.5}table[data-v-590e1df2]{width:100%;border-collapse:collapse}td[data-v-590e1df2],th[data-v-590e1df2]{border:1px solid #e5e7eb;padding:8px;font-size:12px;text-align:left;vertical-align:top}pre[data-v-590e1df2]{margin:0;max-width:260px;max-height:120px;overflow:auto;white-space:pre-wrap;word-break:break-all}.pagination[data-v-590e1df2]{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:12px}.pagination-left[data-v-590e1df2],.pagination-right[data-v-590e1df2]{display:flex;align-items:center;gap:8px;font-size:12px;color:#374151}.login-wrap[data-v-61105fe7]{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(120deg,#eff6ff,#f8fafc)}.login-card[data-v-61105fe7]{width:360px;background:#fff;border:1px solid #e5e7eb;border-radius:12px;padding:24px;box-shadow:0 8px 24px rgba(0,0,0,.06)}h2[data-v-61105fe7]{margin:0;font-size:20px}.sub[data-v-61105fe7]{margin:8px 0 16px;color:#6b7280}button[data-v-61105fe7],input[data-v-61105fe7]{width:100%;height:38px;margin-bottom:12px;border-radius:8px;border:1px solid #d1d5db;padding:0 12px}button[data-v-61105fe7]{background:#2563eb;border-color:#2563eb;color:#fff;cursor:pointer}*{box-sizing:border-box}body{margin:0}.app-wrap{min-height:100vh;display:flex;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;color:#1f2937}.sidebar{width:220px;background:#111827;color:#fff;padding:16px 12px}.brand{display:flex;align-items:center;gap:8px;font-size:18px;font-weight:700;padding:12px;border-bottom:1px solid hsla(0,0%,100%,.12);margin-bottom:10px}.brand-logo{width:20px;height:20px;flex:0 0 20px}.menu-item{padding:10px 12px;border-radius:6px;margin-bottom:8px;cursor:pointer;background:transparent}.menu-item:hover{background:hsla(0,0%,100%,.12)}.menu-item.active{background:#2563eb}.main{flex:1;background:#f3f4f6}.main-header{height:64px;padding:0 20px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #e5e7eb;background:#fff}.main-header h2{margin:0;font-size:20px}.header-actions{display:flex;align-items:center;gap:10px}.change-pwd-btn,.logout-btn{height:34px;border:1px solid #d1d5db;background:#fff;border-radius:6px;padding:0 12px;cursor:pointer}.modal-mask{position:fixed;inset:0;background:rgba(0,0,0,.35);display:flex;align-items:center;justify-content:center;z-index:999}.modal-card{width:360px;background:#fff;border-radius:10px;padding:16px;display:flex;flex-direction:column;gap:8px}.modal-card h3{margin:0 0 6px}.modal-card input{height:34px;border:1px solid #d1d5db;border-radius:6px;padding:0 10px}.modal-actions{margin-top:10px;display:flex;justify-content:flex-end;gap:8px}.modal-actions button{height:34px;padding:0 12px;border-radius:6px;border:1px solid #d1d5db;background:#fff;cursor:pointer}.modal-actions .primary-btn{background:#2563eb;color:#fff;border-color:#2563eb}.main-body{padding:16px}