:root{--bp-mobile: 767px;--bp-tablet: 1023px;--bp-desktop: 1024px;--color-primary: #4F46E5;--color-primary-hover: #4338CA;--color-primary-light: #EEF2FF;--color-success: #10B981;--color-error: #EF4444;--color-warning: #F59E0B;--color-info: #3B82F6;--color-gray-50: #F9FAFB;--color-gray-100: #F3F4F6;--color-gray-200: #E5E7EB;--color-gray-300: #D1D5DB;--color-gray-400: #9CA3AF;--color-gray-500: #6B7280;--color-gray-600: #4B5563;--color-gray-700: #374151;--color-gray-800: #1F2937;--color-gray-900: #111827;--header-bg: #1a1a2e;--header-text: #ffffff;--header-border: transparent;--header-height: 56px;--header-height-desktop: 64px;--sidebar-bg: #1a1a2e;--sidebar-text: #ffffff;--sidebar-divider: rgba(255, 255, 255, .1);--sidebar-nav-active-bg: rgba(79, 70, 229, .3);--sidebar-nav-active-border: var(--color-primary);--sidebar-submenu-bg: rgba(0, 0, 0, .1);--sidebar-width: 260px;--sidebar-width-desktop: 260px;--sidebar-height-desktop: calc(100vh - var(--header-height-desktop));--dropdown-bg: rgba(255, 255, 255, .1);--dropdown-border: rgba(255, 255, 255, .2);--dropdown-text: #ffffff;--dropdown-option-bg: #1a1a2e;--dropdown-focus-border: var(--color-primary);--btn-logout-bg: rgba(255, 255, 255, .1);--btn-logout-border: rgba(255, 255, 255, .2);--btn-logout-hover-bg: rgba(255, 255, 255, .2);--bg-body: #F9FAFB;--bg-surface: #FFFFFF;--bg-surface-hover: #F3F4F6;--text-primary: #111827;--text-secondary: #6B7280;--text-muted: #9CA3AF;--border-color: #E5E7EB;--spacing-1: .25rem;--spacing-2: .5rem;--spacing-3: .75rem;--spacing-4: 1rem;--spacing-5: 1.25rem;--spacing-6: 1.5rem;--spacing-8: 2rem;--radius-sm: .25rem;--radius-md: .5rem;--radius-lg: .75rem;--radius-xl: 1rem;--shadow-sm: 0 1px 2px 0 rgb(0 0 0 / .05);--shadow-base: 0 1px 3px 0 rgb(0 0 0 / .1);--shadow-sidebar: 4px 0 24px rgba(0, 0, 0, .15);--transition-fast: .15s;--transition-base: .2s;--transition-slow: .3s}[data-theme=dark]{--bg-body: #111827;--bg-surface: #1F2937;--bg-surface-hover: #374151;--text-primary: #F9FAFB;--text-secondary: #D1D5DB;--text-muted: #9CA3AF;--border-color: #374151;--header-bg: #1a1a2e;--sidebar-bg: #1a1a2e}html,body{margin:0;padding:0;min-height:100vh}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background:var(--bg-body);color:var(--text-primary);line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}master-header{display:block;position:fixed;top:0;left:0;right:0;z-index:100}master-sidebar{display:block;position:fixed;top:0;left:0;z-index:90}@media (min-width: 1024px){master-sidebar{top:0}}.main-content{flex:1;overflow-x:auto;overflow-y:auto;height:calc(100vh - var(--header-height, 56px));transition:margin-left var(--transition-base);background:var(--bg-body)}@media (min-width: 1024px){.main-content{height:calc(100vh - var(--header-height-desktop, 64px))}}@media (max-width: 767px){.main-content{padding-left:0;margin-left:0}}@media (min-width: 768px) and (max-width: 1023px){.main-content{padding-left:0;margin-left:0}}@media (min-width: 1024px){.main-content{margin-left:260px}.main-content.sidebar-collapsed{margin-left:0}}.layout-container{display:flex;flex-direction:column;min-height:100vh}.layout-body{display:flex;flex-direction:column;flex:1}@media (min-width: 1024px){.layout-body{flex-direction:row}}.page-container{padding:var(--spacing-4);padding-bottom:calc(60px + var(--spacing-4));animation:fadeIn .2s ease-out}@media (min-width: 768px){.page-container{padding:var(--spacing-6);padding-bottom:var(--spacing-6)}}@keyframes fadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.main-content{margin-top:var(--header-height, 56px);transition:margin-left var(--transition-slow, .3s) ease;overflow-x:auto;overflow-y:auto}@media (min-width: 768px) and (max-width: 1023px){.main-content{margin-left:0}}@media (min-width: 1024px){.main-content{margin-top:var(--header-height-desktop, 64px);margin-left:var(--sidebar-width-desktop, 260px)}.main-content.sidebar-collapsed{margin-left:0}}.container{max-width:1200px;margin:0 auto;padding:0 var(--spacing-4)}@media (min-width: 768px){.container{padding:0 var(--spacing-6)}}.page-title{font-size:1.25rem;font-weight:600;color:var(--text-primary, #333);text-align:center;padding:1rem;margin:0;background:var(--card-bg, #f5f5f5);border-radius:8px}
