.app-layout[data-v-77837e0e]{background:var(--bg-gray);min-height:100vh;display:flex}.sidebar[data-v-77837e0e]{background:var(--bg-white);z-index:100;flex-direction:column;width:240px;min-height:100vh;display:flex;position:fixed;top:0;bottom:0;left:0;box-shadow:2px 0 12px #0000000d}.sidebar-logo[data-v-77837e0e]{border-bottom:1px solid var(--border-color);align-items:center;gap:10px;padding:24px 20px 20px;display:flex}.logo-icon[data-v-77837e0e]{background:var(--gradient-primary);color:#fff;border-radius:12px;justify-content:center;align-items:center;width:40px;height:40px;font-size:22px;display:flex}.logo-text[data-v-77837e0e]{color:var(--text-dark);letter-spacing:2px;font-size:20px;font-weight:700}.nav-list[data-v-77837e0e]{flex:1;padding:8px 0;overflow-y:auto}.nav-item[data-v-77837e0e]{border-radius:var(--border-radius-sm);height:50px;color:var(--text-secondary);align-items:center;gap:10px;margin:4px 10px;padding:0 20px;font-size:14px;font-weight:500;text-decoration:none;transition:all .25s;display:flex}.nav-item[data-v-77837e0e]:hover{background:var(--bg-warm);color:var(--primary)}.nav-item.active[data-v-77837e0e]{background:var(--bg-warm);color:var(--primary);font-weight:600}.nav-icon[data-v-77837e0e]{text-align:center;width:24px;font-size:20px}.sidebar-footer[data-v-77837e0e]{border-top:1px solid var(--border-color);padding:16px}.logout-btn[data-v-77837e0e]{border:1px solid var(--border-color);background:var(--bg-white);width:100%;color:var(--danger);cursor:pointer;border-radius:8px;padding:10px;font-size:14px;transition:all .2s}.logout-btn[data-v-77837e0e]:hover{background:#ff6b350f}.main-wrapper[data-v-77837e0e]{flex-direction:column;flex:1;min-height:100vh;margin-left:240px;display:flex}.top-header[data-v-77837e0e]{background:var(--bg-white);z-index:50;justify-content:space-between;align-items:center;height:64px;padding:0 28px;display:flex;position:sticky;top:0;box-shadow:0 1px 8px #0000000a}.header-left[data-v-77837e0e]{align-items:center;display:flex}.header-right[data-v-77837e0e]{align-items:center;gap:16px;display:flex}.user-info[data-v-77837e0e]{align-items:center;gap:10px;display:flex}.user-avatar[data-v-77837e0e]{background:var(--gradient-primary);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:36px;height:36px;font-size:16px;font-weight:700;display:flex}.user-name[data-v-77837e0e]{color:var(--text-dark);font-size:14px;font-weight:600}.role-badge[data-v-77837e0e]{border-radius:12px;padding:2px 10px;font-size:12px;font-weight:600}.role-badge.parent[data-v-77837e0e]{color:var(--primary);background:#ff6b351f}.role-badge.child[data-v-77837e0e]{color:var(--info);background:#0984e31a}.role-badge.admin[data-v-77837e0e]{color:#6366f1;background:#6366f11f}.theme-toggle[data-v-77837e0e]{background:var(--bg-warm);cursor:pointer;border:none;border-radius:8px;justify-content:center;align-items:center;width:36px;height:36px;font-size:18px;transition:all .2s;display:flex}.theme-toggle[data-v-77837e0e]:hover{background:var(--bg-gray)}.icon-btn[data-v-77837e0e]{background:var(--bg-warm);cursor:pointer;border:none;border-radius:8px;justify-content:center;align-items:center;width:36px;height:36px;font-size:18px;transition:all .2s;display:flex}.icon-btn[data-v-77837e0e]:hover{background:var(--bg-gray)}.notif-bell[data-v-77837e0e]{background:var(--bg-warm);cursor:pointer;border:none;border-radius:10px;justify-content:center;align-items:center;width:40px;height:40px;font-size:18px;transition:all .2s;display:flex;position:relative}.notif-bell[data-v-77837e0e]:hover{background:var(--bg-gray)}.bell-icon[data-v-77837e0e]{font-size:20px}.bell-badge[data-v-77837e0e]{color:#fff;background:#e74c3c;border-radius:8px;justify-content:center;align-items:center;min-width:16px;height:16px;padding:0 4px;font-size:10px;font-weight:700;animation:2s infinite bell-bounce-77837e0e;display:flex;position:absolute;top:2px;right:2px}@keyframes bell-bounce-77837e0e{0%,to{transform:scale(1)}50%{transform:scale(1.2)}}.main-content[data-v-77837e0e]{background:var(--bg-gray);flex:1;padding:24px 28px}.modal-overlay[data-v-77837e0e]{z-index:1000;background:#00000080;justify-content:center;align-items:center;display:flex;position:fixed;top:0;bottom:0;left:0;right:0}.modal[data-v-77837e0e]{background:var(--bg-white);width:320px;box-shadow:var(--shadow-lg);border-radius:12px;padding:24px}.modal-title[data-v-77837e0e]{text-align:center;margin-bottom:16px;font-size:18px;font-weight:600}.modal-content[data-v-77837e0e]{color:var(--text-secondary);text-align:center;margin-bottom:24px;font-size:15px}.modal-actions[data-v-77837e0e]{gap:12px;display:flex}.modal-btn[data-v-77837e0e]{cursor:pointer;border:none;border-radius:8px;flex:1;padding:10px;font-size:14px}.modal-btn.cancel[data-v-77837e0e]{background:var(--bg-gray);color:var(--text-secondary)}.modal-btn.cancel[data-v-77837e0e]:hover{background:var(--border-color)}.modal-btn.confirm[data-v-77837e0e]{background:var(--primary);color:#fff}.modal-btn.confirm[data-v-77837e0e]:hover{background:var(--primary-dark)}.form-group[data-v-77837e0e]{margin-bottom:16px}.form-group label[data-v-77837e0e]{color:var(--text-secondary);margin-bottom:6px;font-size:13px;font-weight:600;display:block}.form-group input[data-v-77837e0e]{border:1px solid var(--border-color);background:var(--bg-white);width:100%;color:var(--text-dark);box-sizing:border-box;border-radius:8px;outline:none;padding:10px 12px;font-size:14px;transition:border-color .2s}.form-group input[data-v-77837e0e]:focus{border-color:var(--primary)}.pwd-msg[data-v-77837e0e]{text-align:center;color:#e74c3c;background:#e74c3c1a;border-radius:6px;padding:8px;font-size:13px}.pwd-msg.success[data-v-77837e0e]{color:#27ae60;background:#27ae601a}.socket-status-bar[data-v-952a8f20]{color:#fff;text-align:center;z-index:9999;background:#e6a23c;padding:8px;font-size:14px;position:fixed;bottom:0;left:0;right:0}html,body{margin:0;padding:0}.app-wrapper{min-height:100vh}[data-theme=dark] body{background-color:var(--bg-gray);color:var(--text-dark)}:root{--primary:#ff6b35;--primary-light:#ff8c5a;--primary-dark:#e55a2b;--secondary:#f7931e;--accent:#ffb627;--bg-warm:#fff8f0;--bg-white:#fff;--bg-gray:#f5f7fa;--bg-dark:#1a1a2e;--bg-dark-secondary:#16213e;--text-dark:#2d3436;--text-secondary:#636e72;--border-color:#e8e8e8;--text-white:#fff;--text-dark-primary:#e8e8e8;--text-dark-secondary:#a0a0a0;--success:#00b894;--danger:#ff6b6b;--info:#0984e3;--warning:#fdcb6e;--border-radius:16px;--border-radius-sm:10px;--shadow:0 4px 20px #0000000f;--shadow-lg:0 8px 32px #0000001a;--gradient-primary:linear-gradient(135deg, #ff6b35, #f7931e);--gradient-warm:linear-gradient(135deg, #ff6b35, #ffb627);--gradient-bg:linear-gradient(180deg, #fff8f0 0%, #fff 100%);--font-family:"Noto Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--status-pending-bg:#fff3e0;--status-pending-text:#e65100;--status-warning-bg:#fff8e1;--status-warning-border:#ffecb3;--input-bg:#fafbfc;--card-hover-bg:#667eea05;--scrollbar-thumb:#ddd;--code-bg:#f5f5f5}[data-theme=dark]{--bg-warm:#1a1a2e;--bg-white:#16213e;--bg-gray:#0f0f23;--text-dark:#e8e8e8;--text-secondary:#a0a0a0;--border-color:#2d3748;--shadow:0 4px 20px #0000004d;--shadow-lg:0 8px 32px #0006;--gradient-bg:linear-gradient(180deg, #1a1a2e 0%, #16213e 100%);--status-pending-bg:#3d2b1f;--status-pending-text:#ffb74d;--status-warning-bg:#3d3415;--status-warning-border:#5d4e2a;--input-bg:#1a1a2e;--card-hover-bg:#ff6b350a;--scrollbar-thumb:#444;--code-bg:#1e1e3a}[data-theme=dark] .section,[data-theme=dark] .user-card,[data-theme=dark] .table-wrap,[data-theme=dark] .activity-list,[data-theme=dark] .password-form,[data-theme=dark] .quick-actions,[data-theme=dark] .action-card,[data-theme=dark] .stat-card,[data-theme=dark] .empty-hint,[data-theme=dark] .form-content,[data-theme=dark] .modal,[data-theme=dark] [style*="background: white"],[data-theme=dark] [style*=background\:white],[data-theme=dark] [style*="background-color: white"],[data-theme=dark] [style*=background-color\:white]{background:var(--bg-white)!important}[data-theme=dark] ::-webkit-scrollbar-thumb{background:var(--scrollbar-thumb)}[data-theme=dark] .status-badge.pending,[data-theme=dark] .activity-status.pending,[data-theme=dark] .cat-orange{background:var(--status-pending-bg)!important;color:var(--status-pending-text)!important}[data-theme=dark] .tip-bar{background:var(--status-warning-bg)!important;border-color:var(--status-warning-border)!important;color:var(--text-dark)!important}[data-theme=dark] input[type=text],[data-theme=dark] input[type=password],[data-theme=dark] input[type=number],[data-theme=dark] textarea,[data-theme=dark] .form-input{background-color:var(--input-bg)!important;color:var(--text-dark)!important}[data-theme=dark] input::placeholder,[data-theme=dark] textarea::placeholder{color:var(--text-secondary)!important}[data-theme=dark] pre,[data-theme=dark] code{background-color:var(--code-bg)!important;color:var(--text-dark)!important}[data-theme=dark] tr:hover td{background-color:var(--card-hover-bg)!important}[data-theme=dark] hr{border-color:var(--border-color)!important}[data-theme=dark] ::selection{color:#fff;background:#ff6b354d}[data-theme=dark] .btn-edit:hover{background:#4caf5026!important}[data-theme=dark] .btn-delete:hover{background:#f4433626!important}[data-theme=dark] .cat-blue{color:#64b5f6!important;background:#1a3a5c!important}[data-theme=dark] .cat-green{color:#81c784!important;background:#1b3d2e!important}[data-theme=dark] .cat-purple{color:#ce93d8!important;background:#2d1f3d!important}[data-theme=dark] .dialog-card,[data-theme=dark] .form-content,[data-theme=dark] .detail-card,[data-theme=dark] .search-box,[data-theme=dark] .filter-select{background:var(--bg-white)!important}[data-theme=dark] .tip-bar,[data-theme=dark] .hint-bar{background:var(--status-warning-bg)!important;border-color:var(--status-warning-border)!important;color:var(--text-dark)!important}[data-theme=dark] .empty-state{color:var(--text-secondary)}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html,body{width:100%;height:100%;font-family:var(--font-family);color:var(--text-dark);background:var(--gradient-bg);-webkit-font-smoothing:antialiased;font-size:14px}#app{width:100%;min-height:100vh}a{color:inherit;text-decoration:none}img{max-width:100%}button{cursor:pointer;font:inherit;background:0 0;border:none}input,textarea{font:inherit;border:none;outline:none}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-thumb{background:var(--scrollbar-thumb,#ddd);border-radius:3px}@media (max-width:768px){.hide-mobile{display:none!important}.show-mobile{display:block!important}}@media (min-width:769px){.hide-pc{display:none!important}.show-pc{display:block!important}}
