.app-header[data-v-9abf686f]{position:fixed;top:0;left:0;right:0;height:60px;background:#fff;box-shadow:0 2px 4px #0000001a;z-index:1000}.header-content[data-v-9abf686f]{max-width:1200px;margin:0 auto;height:100%;display:flex;align-items:center;justify-content:space-between;padding:0 20px}.logo[data-v-9abf686f]{display:flex;align-items:center;gap:8px}.logo-icon[data-v-9abf686f]{font-size:24px}.logo-text[data-v-9abf686f]{font-size:18px;font-weight:700;color:#333}.nav-menu[data-v-9abf686f]{display:flex;gap:8px}.nav-item[data-v-9abf686f]{display:flex;align-items:center;gap:4px;padding:8px 16px;border-radius:8px;text-decoration:none;color:#666;transition:all .3s}.nav-item[data-v-9abf686f]:hover{background:#f0f0f0;color:#333}.nav-item.active[data-v-9abf686f]{background:#4caf50;color:#fff}.nav-item .icon[data-v-9abf686f]{font-size:16px}.user-info[data-v-9abf686f]{display:flex;align-items:center;gap:12px}.member-name[data-v-9abf686f]{font-weight:500}.admin-badge[data-v-9abf686f]{background:#ff9800;color:#fff;padding:2px 8px;border-radius:4px;font-size:12px}.logout-btn[data-v-9abf686f]{padding:6px 12px;border:1px solid #ddd;background:#fff;border-radius:4px;cursor:pointer;transition:all .3s}.logout-btn[data-v-9abf686f]:hover{background:#f5f5f5}@media (max-width: 768px){.nav-item span[data-v-9abf686f]:not(.icon){display:none}.logo-text[data-v-9abf686f]{display:none}}.app-footer[data-v-a17ed668]{position:fixed;bottom:0;left:0;right:0;height:40px;background:#fff;border-top:1px solid #e0e0e0;display:flex;align-items:center;justify-content:center;z-index:1000}.footer-content[data-v-a17ed668]{font-size:12px;color:#999;display:flex;align-items:center;gap:8px}.divider[data-v-a17ed668]{color:#ddd}.network-status[data-v-5cef6278]{position:fixed;bottom:20px;left:50%;transform:translate(-50%);padding:10px 20px;border-radius:8px;display:flex;align-items:center;gap:8px;font-size:14px;z-index:2000;animation:slideUp-5cef6278 .3s ease}.network-status.offline[data-v-5cef6278]{background:#fff3e0;color:#e65100;border:1px solid #FFB74D}@keyframes slideUp-5cef6278{0%{opacity:0;transform:translate(-50%) translateY(20px)}to{opacity:1;transform:translate(-50%) translateY(0)}}#app{min-height:100vh;display:flex;flex-direction:column}main{flex:1;padding:20px;max-width:1200px;margin:0 auto;width:100%}main.with-header{padding-top:80px;padding-bottom:60px}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;background-color:#f5f5f5;color:#333}*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;background-color:#f5f5f5;color:#333;line-height:1.6}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:10px 20px;border:none;border-radius:8px;font-size:14px;cursor:pointer;transition:all .3s}.btn-primary{background:#4caf50;color:#fff}.btn-primary:hover{background:#45a049}.btn-secondary{background:#f5f5f5;color:#666}.btn-secondary:hover{background:#e0e0e0}.btn-danger{background:#f44336;color:#fff}.btn-danger:hover{background:#d32f2f}.form-group{margin-bottom:16px}.form-group label{display:block;margin-bottom:6px;font-size:14px;color:#666}.form-group input,.form-group select,.form-group textarea{width:100%;padding:12px;border:1px solid #ddd;border-radius:8px;font-size:14px;transition:border-color .3s}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:#4caf50}.card{background:#fff;border-radius:12px;padding:20px;box-shadow:0 2px 8px #00000014}.table{width:100%;border-collapse:collapse}.table th,.table td{padding:12px;text-align:left;border-bottom:1px solid #eee}.table th{font-weight:500;color:#666;background:#f9f9f9}.table tr:hover{background:#f5f5f5}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:3000}.modal-content{background:#fff;border-radius:16px;padding:24px;max-width:500px;width:90%;max-height:90vh;overflow-y:auto}.modal-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px}.modal-header h3{font-size:18px}.modal-close{background:none;border:none;font-size:24px;cursor:pointer;color:#999}.loading{display:inline-block;width:20px;height:20px;border:2px solid #f3f3f3;border-top:2px solid #4CAF50;border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media (max-width: 768px){.card,.modal-content{padding:16px}}
