.shell[data-v-726af765]{display:grid;grid-template-columns:var(--sidebar-w) 1fr;min-height:100vh;transition:grid-template-columns .25s ease}.shell.sidebar-collapsed[data-v-726af765]{grid-template-columns:64px 1fr}.sidebar[data-v-726af765]{background:var(--color-3);color:var(--color-4);display:flex;flex-direction:column;height:100vh;position:sticky;top:0;overflow:hidden}.sidebar-header[data-v-726af765]{display:flex;align-items:center;gap:.5rem;padding:1rem;border-bottom:1px solid rgba(255,255,255,.08);min-height:var(--topbar-h)}.sidebar-logo[data-v-726af765]{height:32px;width:32px;object-fit:contain;flex-shrink:0}.sidebar-title[data-v-726af765]{font-weight:700;font-size:1rem;color:var(--color-4);white-space:nowrap;flex:1}.collapse-btn[data-v-726af765]{margin-left:auto;background:var(--color-2);border:none;color:var(--color-4);width:32px;height:32px;border-radius:6px;font-size:.85rem;cursor:pointer;flex-shrink:0;transition:background .2s;display:flex;align-items:center;justify-content:center}.collapse-btn[data-v-726af765]:hover{background:var(--color-1)}.sidebar-nav[data-v-726af765]{flex:1;padding:1rem .75rem;display:flex;flex-direction:column;gap:.25rem}.nav-item[data-v-726af765]{display:flex;align-items:center;gap:.75rem;padding:.65rem .75rem;border-radius:var(--radius);color:#ffffffa6;font-weight:500;font-size:.9rem;text-decoration:none;transition:background .2s,color .2s;white-space:nowrap}.nav-item[data-v-726af765]:hover{background:#ffffff14;color:var(--color-4)}.nav-item.active[data-v-726af765]{background:var(--color-2);color:var(--color-4)}.nav-icon[data-v-726af765]{font-size:1.15rem;flex-shrink:0}.nav-label[data-v-726af765]{flex:1}.sidebar-user[data-v-726af765]{display:flex;align-items:center;gap:.5rem;padding:.75rem 1rem;border-top:1px solid rgba(255,255,255,.08)}.user-info[data-v-726af765]{flex:1;display:flex;flex-direction:column;overflow:hidden}.user-name[data-v-726af765]{font-size:.85rem;font-weight:600;color:var(--color-4);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.user-role[data-v-726af765]{font-size:.7rem;color:var(--color-1);font-weight:500}.logout-btn[data-v-726af765]{background:#ffffff14;border:none;color:var(--color-4);width:32px;height:32px;border-radius:6px;cursor:pointer;font-size:1rem;transition:background .2s;flex-shrink:0}.logout-btn[data-v-726af765]:hover{background:var(--danger)}.logout-btn-mini[data-v-726af765]{background:#ffffff14;border:none;color:var(--color-4);width:36px;height:36px;border-radius:6px;cursor:pointer;font-size:1rem;margin:.75rem auto;display:block;transition:background .2s}.logout-btn-mini[data-v-726af765]:hover{background:var(--danger)}.main-wrap[data-v-726af765]{display:flex;flex-direction:column;min-height:100vh;overflow:hidden}.topbar[data-v-726af765]{height:var(--topbar-h);background:var(--color-4);border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;padding:0 1.5rem;position:sticky;top:0;z-index:10;box-shadow:var(--shadow)}.topbar-left[data-v-726af765]{display:flex;align-items:center;gap:.5rem;font-weight:600;color:var(--color-2)}.breadcrumb-link[data-v-726af765]{color:var(--muted);font-weight:500;text-decoration:none;transition:color .2s}.breadcrumb-link[data-v-726af765]:hover,.breadcrumb-link.active[data-v-726af765]{color:var(--color-2)}.breadcrumb-sep[data-v-726af765]{color:var(--muted)}.breadcrumb-current[data-v-726af765]{color:var(--color-2);font-weight:600}.topbar-right[data-v-726af765]{display:flex;align-items:center;gap:.75rem}.topbar-email[data-v-726af765]{font-size:.8rem;font-weight:400;color:var(--muted)}.topbar-role-badge[data-v-726af765]{font-size:.65rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;background:var(--color-2);color:var(--color-4);padding:.2rem .6rem;border-radius:999px}.topbar-logout[data-v-726af765]{background:none;border:1px solid var(--border);color:var(--muted);padding:.35rem .75rem;border-radius:var(--radius);font-size:.8rem;font-weight:500;cursor:pointer;transition:border-color .2s,color .2s}.topbar-logout[data-v-726af765]:hover{border-color:var(--danger);color:var(--danger)}.content[data-v-726af765]{flex:1;padding:2rem 1.5rem;overflow-y:auto}.auth-shell[data-v-a5e05cf3]{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--color-3) 0%,var(--color-2) 100%);padding:1rem}.auth-card[data-v-a5e05cf3]{background:var(--color-4);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);padding:clamp(2rem,5vw,3rem);width:100%;max-width:420px}.auth-brand[data-v-a5e05cf3]{display:flex;align-items:center;gap:.75rem;margin-bottom:2rem}.auth-logo[data-v-a5e05cf3]{height:44px;width:auto;object-fit:contain}.auth-badge[data-v-a5e05cf3]{font-size:.65rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;background:var(--color-2);color:var(--color-4);padding:.2rem .5rem;border-radius:999px;margin-left:.25rem}*,:before,:after{box-sizing:border-box;padding:0;margin:0}html{line-height:1.5;-webkit-text-size-adjust:100%}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}table{border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;font-weight:inherit;line-height:inherit;color:inherit;margin:0;padding:0}button,[type=button],[type=reset],[type=submit]{-webkit-appearance:button;background-color:transparent;background-image:none;cursor:pointer}ol,ul,menu{list-style:none;margin:0;padding:0}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]{display:none}:root{font-family:Be Vietnam Pro,sans-serif;--color-1: #72acdd;--color-2: #003b79;--color-3: #052030;--color-4: #ffffff;--bg: #f0f4f8;--sidebar-w: 240px;--topbar-h: 64px;--success: #16a34a;--danger: #dc2626;--warning: #d97706;--muted: #64748b;--border: #e2e8f0;--input-bg: #f8fafc;--radius: 8px;--radius-lg: 16px;--shadow: 0 1px 4px rgba(0,0,0,.08);--shadow-md: 0 4px 12px rgba(0,0,0,.12)}body{background-color:var(--bg);color:var(--color-3);min-height:100vh}h1{font-size:clamp(1.5rem,3vw,2.2rem)}h2{font-size:clamp(1.2rem,2.5vw,1.8rem)}h3{font-size:clamp(1rem,2vw,1.3rem)}p{font-size:clamp(.85rem,1.8vw,1rem)}
