.sidebar[data-v-f2205b5f]{width:260px;height:100vh;background:var(--bg-secondary);border-right:1px solid var(--border);position:fixed;left:0;top:0;display:flex;flex-direction:column;padding:20px;z-index:100}.logo[data-v-f2205b5f]{display:flex;align-items:center;gap:12px;padding:10px;font-size:18px;font-weight:700;margin-bottom:30px}.logo-icon[data-v-f2205b5f]{font-size:24px}.nav-menu[data-v-f2205b5f]{flex:1}.nav-item[data-v-f2205b5f]{display:flex;align-items:center;gap:12px;padding:14px 16px;color:var(--text-secondary);text-decoration:none;border-radius:10px;margin-bottom:8px;transition:all .2s}.nav-item[data-v-f2205b5f]:hover,.nav-item.router-link-active[data-v-f2205b5f]{background:var(--bg-hover);color:var(--text-primary)}.nav-item.router-link-active[data-v-f2205b5f]{background:var(--accent);color:#fff}.theme-toggle[data-v-f2205b5f]{width:44px;height:44px;border-radius:50%;border:none;background:var(--bg-card);cursor:pointer;font-size:20px;transition:transform .2s}.theme-toggle[data-v-f2205b5f]:hover{transform:scale(1.1)}@media (max-width: 768px){.sidebar[data-v-f2205b5f]{display:none}}.header[data-v-690007a3]{height:70px;background:var(--bg-secondary);border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;padding:0 24px;position:sticky;top:0;z-index:50}.page-title[data-v-690007a3]{font-size:24px;font-weight:600}.header-right[data-v-690007a3]{display:flex;align-items:center;gap:20px}.sync-btn[data-v-690007a3]{padding:8px 16px;background:var(--accent);color:#fff;border:none;border-radius:8px;cursor:pointer;font-weight:500;transition:all .2s}.sync-btn[data-v-690007a3]:hover:not(:disabled){background:#d63d56}.sync-btn[data-v-690007a3]:disabled{opacity:.6;cursor:not-allowed}.user-info[data-v-690007a3]{text-align:right}.user-name[data-v-690007a3]{display:block;font-weight:500}.user-role[data-v-690007a3]{font-size:12px;color:var(--text-secondary)}.logout-btn[data-v-690007a3]{padding:8px 16px;background:transparent;color:var(--text-secondary);border:1px solid var(--border);border-radius:8px;cursor:pointer;transition:all .2s}.logout-btn[data-v-690007a3]:hover{background:var(--danger);color:#fff;border-color:var(--danger)}@media (max-width: 768px){.header-right[data-v-690007a3]{gap:10px}.sync-btn[data-v-690007a3]{padding:6px 12px;font-size:12px}.user-info[data-v-690007a3]{display:none}}.app{min-height:100vh;display:flex;background:var(--bg-primary);color:var(--text-primary);transition:background .3s,color .3s}.main-content{flex:1;display:flex;flex-direction:column;margin-left:260px}.page-content{flex:1;padding:24px;overflow-y:auto}@media (max-width: 768px){.main-content{margin-left:0}}:root{--bg-primary: #1a1a2e;--bg-secondary: #16213e;--bg-card: #0f3460;--bg-hover: #1a4a7a;--text-primary: #e8e8e8;--text-secondary: #a0a0a0;--accent: #e94560;--accent-secondary: #0f9b0f;--success: #00d26a;--warning: #ffc107;--danger: #ff4757;--border: #2a2a4e}.light{--bg-primary: #f5f7fa;--bg-secondary: #ffffff;--bg-card: #ffffff;--bg-hover: #e8eef5;--text-primary: #1a1a2e;--text-secondary: #6b7280;--accent: #e94560;--border: #e5e7eb}*{margin:0;padding:0;box-sizing:border-box}body{font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;background:var(--bg-primary);color:var(--text-primary);line-height:1.6}.btn{padding:10px 20px;border:none;border-radius:8px;cursor:pointer;font-weight:500;transition:all .2s;font-size:14px}.btn-primary{background:var(--accent);color:#fff}.btn-primary:hover{background:#d63d56}.btn-primary:disabled{opacity:.6;cursor:not-allowed}.btn-secondary{background:var(--bg-card);color:var(--text-primary);border:1px solid var(--border)}.btn-secondary:hover{background:var(--bg-hover)}.btn-danger{background:var(--danger);color:#fff}.btn-sm{padding:6px 12px;font-size:12px}.card{background:var(--bg-card);border-radius:12px;padding:20px;border:1px solid var(--border)}.card h3{margin-bottom:16px;font-size:18px}.input{width:100%;padding:12px;border:1px solid var(--border);border-radius:8px;background:var(--bg-secondary);color:var(--text-primary);font-size:14px}.input:focus{outline:none;border-color:var(--accent)}select.input{cursor:pointer}.grid{display:grid;gap:20px}.grid-2{grid-template-columns:repeat(2,1fr)}.grid-3{grid-template-columns:repeat(3,1fr)}.grid-4{grid-template-columns:repeat(4,1fr)}@media (max-width: 1024px){.grid-4{grid-template-columns:repeat(2,1fr)}}@media (max-width: 768px){.grid-2,.grid-3,.grid-4{grid-template-columns:1fr}}.text-success{color:var(--success)}.text-warning{color:var(--warning)}.text-danger{color:var(--danger)}.data-table{width:100%;border-collapse:collapse;margin-top:16px}.data-table th,.data-table td{padding:12px;text-align:left;border-bottom:1px solid var(--border)}.data-table th{color:var(--text-secondary);font-weight:500;font-size:14px}.data-table tbody tr:hover{background:var(--bg-hover)}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:1000}.modal-content{background:var(--bg-card);padding:30px;border-radius:16px;width:100%;max-width:500px;max-height:90vh;overflow-y:auto}.modal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.modal-header h3{margin:0}.modal-close{background:none;border:none;font-size:24px;cursor:pointer;color:var(--text-secondary)}.form-group{margin-bottom:16px}.form-group label{display:block;margin-bottom:6px;font-size:14px;font-weight:500}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}.form-actions{display:flex;gap:12px;justify-content:flex-end;margin-top:24px}.mt-1{margin-top:8px}.mt-2{margin-top:16px}.mt-3{margin-top:24px}.mb-1{margin-bottom:8px}.mb-2{margin-bottom:16px}.mb-3{margin-bottom:24px}.flex{display:flex}.flex-between{justify-content:space-between}.flex-center{align-items:center}.gap-1{gap:8px}.gap-2{gap:16px}.spinner{width:40px;height:40px;border:4px solid var(--border);border-top-color:var(--accent);border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.loading-overlay{display:flex;align-items:center;justify-content:center;padding:40px}.empty-state{text-align:center;padding:40px;color:var(--text-secondary)}.empty-state-icon{font-size:48px;margin-bottom:16px}
