.app-container{min-height:100vh;display:flex;flex-direction:column;background:var(--bg-gradient)}.app-header{background:var(--primary-gradient);color:#fff;padding:var(--spacing-md) 0;box-shadow:var(--shadow-md);position:sticky;top:0;z-index:1002}.header-content{max-width:1200px;margin:0 auto;padding:0 var(--spacing-xl);display:flex;justify-content:space-between;align-items:center}.header-content h1{margin:0;font-size:1.5rem;font-weight:600}.user-info{display:flex;align-items:center;gap:var(--spacing-md)}.user-info span{font-weight:500;opacity:.95}.user-menu{position:relative}.user-avatar{width:42px;height:42px;border-radius:50%;background:#fff3;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:#fff;display:flex;align-items:center;justify-content:center;font-size:1.1rem;font-weight:600;cursor:pointer;transition:all var(--transition-normal);border:2px solid rgba(255,255,255,.4)}.user-avatar:hover{background:#ffffff4d;transform:scale(1.05);border-color:#fff9}.dropdown-menu{position:absolute;top:calc(100% + 12px);right:0;background:var(--bg-primary);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);min-width:200px;z-index:1001;overflow:hidden;animation:dropdownFadeIn .2s ease;border:1px solid var(--border-light)}@keyframes dropdownFadeIn{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.dropdown-item{display:flex;align-items:center;padding:var(--spacing-md) var(--spacing-lg);color:var(--text-primary);text-decoration:none;cursor:pointer;transition:all var(--transition-fast);border-bottom:1px solid var(--border-light);font-weight:500}.dropdown-item:last-child{border-bottom:none}.dropdown-item:hover{background:var(--bg-secondary);padding-left:calc(var(--spacing-lg) + 4px)}.dropdown-item.logout{color:var(--error-color)}.dropdown-item.logout:hover{background:var(--error-light)}.main-content{flex:1;display:flex;flex-direction:column}.app-logo{height:40px;cursor:pointer;transition:all var(--transition-normal);filter:drop-shadow(0 2px 4px rgba(0,0,0,.1))}.app-logo:hover{transform:scale(1.02)}.loading-fallback{display:flex;flex-direction:column;justify-content:center;align-items:center;min-height:50vh;gap:var(--spacing-md);color:var(--text-secondary);font-size:1.1rem}.loading-fallback .loading-spinner{width:40px;height:40px;border:3px solid var(--border-color);border-top-color:var(--primary-color);border-radius:50%;animation:spinLoader .8s linear infinite}@keyframes spinLoader{to{transform:rotate(360deg)}}@media(max-width:768px){.header-content{padding:0 var(--spacing-md)}.user-info span{display:none}}:root{--primary-color: #007bff;--primary-hover: #0056b3;--primary-dark: #004085;--primary-light: #e7f1ff;--primary-gradient: linear-gradient(135deg, #007bff, #0056b3);--secondary-color: #6c757d;--secondary-hover: #5a6268;--success-color: #28a745;--success-light: #d4edda;--success-dark: #155724;--error-color: #dc3545;--error-light: #f8d7da;--error-dark: #721c24;--warning-color: #ffc107;--warning-dark: #856404;--text-primary: #333333;--text-secondary: #666666;--text-muted: #999999;--border-color: #e0e0e0;--border-light: #f0f0f0;--bg-primary: #ffffff;--bg-secondary: #f8f9fa;--bg-tertiary: #f5f5f5;--bg-gradient: linear-gradient(135deg, #f5f7fa 0%, #e4e8ed 100%);--shadow-sm: 0 2px 4px rgba(0, 0, 0, .05);--shadow-md: 0 4px 12px rgba(0, 0, 0, .1);--shadow-lg: 0 8px 24px rgba(0, 0, 0, .12);--shadow-primary: 0 4px 15px rgba(0, 123, 255, .25);--radius-sm: 4px;--radius-md: 8px;--radius-lg: 12px;--radius-xl: 16px;--transition-fast: .15s ease;--transition-normal: .25s ease;--transition-slow: .35s ease;--spacing-xs: .25rem;--spacing-sm: .5rem;--spacing-md: 1rem;--spacing-lg: 1.5rem;--spacing-xl: 2rem}*,*:before,*:after{box-sizing:border-box}body{margin:0;padding:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Open Sans,Helvetica Neue,sans-serif;color:var(--text-primary);background-color:var(--bg-secondary);line-height:1.5;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}html{scroll-behavior:smooth}:focus-visible{outline:2px solid var(--primary-color);outline-offset:2px}button{font-family:inherit}h1,h2,h3,h4,h5,h6{text-rendering:optimizeLegibility}::selection{background:var(--primary-light);color:var(--primary-dark)}
