*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}html{font-size:13px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{font-family:var(--font-sans);color:var(--text-primary);background:var(--bg-main);line-height:1.5;min-height:100vh}#root{min-height:100vh}h1,h2,h3,h4,h5,h6{font-weight:500;color:var(--text-primary);line-height:1.3}h1{font-size:var(--text-3xl)}h2{font-size:var(--text-2xl)}h3{font-size:var(--text-xl)}h4{font-size:var(--text-lg)}p{color:var(--text-secondary)}a{color:var(--text-link);text-decoration:none;transition:color var(--transition-fast)}a:hover{color:var(--color-primary-dark);text-decoration:underline}code{font-family:var(--font-mono);font-size:.9em;background:var(--bg-input);padding:2px 6px;border-radius:var(--radius-sm)}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--bg-input)}::-webkit-scrollbar-thumb{background:var(--border-medium);border-radius:var(--radius-full)}::-webkit-scrollbar-thumb:hover{background:var(--border-dark)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--spacing-sm);padding:10px 20px;font-size:var(--text-base);font-weight:500;font-family:inherit;border:1px solid transparent;border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-base);white-space:nowrap;-webkit-user-select:none;user-select:none}.btn:disabled{opacity:.5;cursor:not-allowed}.btn i{font-size:.9em}.btn-primary{background:var(--color-primary);color:var(--text-inverse);border-color:var(--color-primary)}.btn-primary:hover:not(:disabled){background:var(--color-primary-dark);border-color:var(--color-primary-dark);box-shadow:var(--shadow-md)}.btn-secondary{background:var(--bg-surface);color:var(--text-primary);border-color:var(--border-medium)}.btn-secondary:hover:not(:disabled){background:var(--bg-surface-hover);border-color:var(--border-dark)}.btn-danger{background:var(--color-error);color:var(--text-inverse);border-color:var(--color-error)}.btn-danger:hover:not(:disabled){background:#e53e3e;border-color:#e53e3e;box-shadow:var(--shadow-md)}.btn-ghost{background:transparent;color:var(--text-secondary);border:none;padding:var(--spacing-sm) var(--spacing-md)}.btn-ghost:hover:not(:disabled){background:var(--bg-input);color:var(--text-primary)}.btn-icon{padding:var(--spacing-sm);background:transparent;border:none;color:var(--text-secondary);cursor:pointer;border-radius:var(--radius-md);transition:all var(--transition-fast)}.btn-icon:hover{background:var(--bg-input);color:var(--text-primary)}.btn-full{width:100%}.btn-sm{padding:6px 12px;font-size:var(--text-sm)}.btn-lg{padding:12px 24px;font-size:var(--text-lg)}.btn-loading{position:relative;color:transparent!important;pointer-events:none}.btn-loading:after{content:"";position:absolute;width:16px;height:16px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:spin .6s linear infinite;color:var(--text-inverse)}@keyframes spin{to{transform:rotate(360deg)}}.form-group{margin-bottom:var(--spacing-md)}.form-label{display:block;margin-bottom:var(--spacing-xs);font-size:var(--text-sm);font-weight:500;color:var(--text-secondary)}.form-input{width:100%;padding:10px 14px;font-size:var(--text-base);font-family:inherit;color:var(--text-primary);background:var(--bg-input);border:1px solid var(--border-light);border-radius:var(--radius-md);transition:all var(--transition-fast);outline:none}.form-input::placeholder{color:var(--text-tertiary)}.form-input:hover{border-color:var(--border-medium)}.form-input:focus{background:var(--bg-input-focus);border-color:var(--color-primary);box-shadow:0 0 0 3px var(--border-focus)}.form-input:disabled{background:var(--bg-surface-hover);color:var(--text-tertiary);cursor:not-allowed}.form-input.error{border-color:var(--color-error)}.form-input.error:focus{box-shadow:0 0 0 3px #f5656533}.form-input.success{border-color:var(--color-success)}.form-textarea{width:100%;padding:10px 14px;font-size:var(--text-base);font-family:inherit;color:var(--text-primary);background:var(--bg-input);border:1px solid var(--border-light);border-radius:var(--radius-md);transition:all var(--transition-fast);outline:none;resize:vertical;min-height:100px;line-height:1.5;box-sizing:border-box}.form-textarea::placeholder{color:var(--text-tertiary)}.form-textarea:hover{border-color:var(--border-medium)}.form-textarea:focus{background:var(--bg-input-focus);border-color:var(--color-primary);box-shadow:0 0 0 3px var(--border-focus)}.form-select{composes:form-input;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23718096' d='M6 8L1 3h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;padding-right:36px}.form-error{margin-top:var(--spacing-xs);font-size:var(--text-sm);color:var(--color-error)}.form-helper{margin-top:var(--spacing-xs);font-size:var(--text-sm);color:var(--text-tertiary)}.password-input-wrapper{position:relative}.password-input-wrapper .form-input{padding-right:40px}.password-toggle{position:absolute;right:10px;top:50%;transform:translateY(-50%);background:none;border:none;color:var(--color-primary);cursor:pointer;padding:4px;font-size:16px}.password-toggle:hover{color:var(--color-primary-dark)}.modal-backdrop{position:fixed;top:0;left:0;right:0;bottom:0;background:var(--bg-overlay);display:flex;align-items:center;justify-content:center;z-index:var(--z-modal);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);padding:var(--spacing-md)}.modal{background:var(--bg-surface);border-radius:var(--radius-xl);padding:var(--spacing-xl);width:100%;max-width:480px;max-height:90vh;overflow-y:auto;box-shadow:var(--shadow-xl);animation:modalSlideIn .2s ease-out}@keyframes modalSlideIn{0%{opacity:0;transform:translateY(-20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.modal-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--spacing-lg)}.modal-header h3{font-size:var(--text-xl);color:var(--text-primary);margin:0}.modal-close{background:none;border:none;color:var(--text-tertiary);cursor:pointer;padding:var(--spacing-sm);font-size:20px;border-radius:var(--radius-md);transition:all var(--transition-fast)}.modal-close:hover{background:var(--bg-input);color:var(--text-primary)}.modal-body{margin-bottom:var(--spacing-lg)}.modal-footer{display:flex;gap:var(--spacing-md);justify-content:flex-end;padding-top:var(--spacing-md);border-top:1px solid var(--border-light)}.modal-confirm{max-width:400px;text-align:center}.modal-confirm .modal-body p{margin-bottom:var(--spacing-sm)}.modal-confirm .modal-warning{background:var(--color-error-light);color:var(--color-error);padding:var(--spacing-md);border-radius:var(--radius-md);font-size:var(--text-sm);margin-top:var(--spacing-md)}.modal-success{text-align:center}.modal-success-icon{font-size:48px;color:var(--color-success);margin-bottom:var(--spacing-md)}.modal-lg{max-width:640px}.modal-sm{max-width:360px}.card{background:var(--bg-surface);border-radius:var(--radius-lg);padding:var(--spacing-lg);border:1px solid var(--border-light);transition:all var(--transition-base)}.card:hover{box-shadow:var(--shadow-lg);transform:translateY(-2px)}.project-card{composes:card;position:relative;cursor:pointer}.project-card-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:var(--spacing-md);padding-right:80px}.project-card-icon{font-size:20px;color:var(--color-primary);margin-right:var(--spacing-sm)}.project-card-title{font-size:var(--text-lg);font-weight:600;color:var(--text-primary);margin:0}.project-card-description{color:var(--text-secondary);font-size:var(--text-sm);margin-bottom:var(--spacing-md);min-height:40px;line-height:1.5}.project-card-footer{display:flex;justify-content:space-between;align-items:center}.project-card-date{font-size:var(--text-xs);color:var(--text-tertiary)}.project-card-date i{margin-right:4px}.project-card-actions{position:absolute;top:var(--spacing-md);right:var(--spacing-md);display:flex;gap:var(--spacing-xs)}.project-card-action{composes:btn-icon;padding:4px;font-size:14px}.project-card-action.is-favorite{color:var(--color-warning)}.project-card-action:hover{color:var(--color-primary)}.project-card-action.is-delete:hover{color:var(--color-error)}.status-badge{font-size:var(--text-xs);padding:4px 8px;border-radius:var(--radius-full);font-weight:500}.status-badge.pending{background:#a0aec033;color:var(--text-tertiary)}.status-badge.generating{background:#ed893633;color:var(--color-warning)}.status-badge.completed{background:#48bb7833;color:var(--color-success)}.status-badge.failed{background:#f5656533;color:var(--color-error)}.new-project-card{background:var(--bg-surface);border:2px dashed var(--border-light);border-radius:var(--radius-lg);padding:var(--spacing-xl);display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:200px;cursor:pointer;transition:all var(--transition-base)}.new-project-card:hover{border-color:var(--color-primary);background:var(--bg-surface-hover)}.new-project-card-icon{font-size:40px;color:var(--color-primary);margin-bottom:var(--spacing-md)}.new-project-card-title{font-size:var(--text-base);font-weight:600;color:var(--text-primary);margin:0 0 var(--spacing-xs)}.new-project-card-desc{font-size:var(--text-sm);color:var(--text-tertiary);text-align:center;margin:0}.stats-card{composes:card;padding:var(--spacing-lg)}.stats-card-label{font-size:var(--text-sm);color:var(--text-secondary);margin-bottom:var(--spacing-sm);display:flex;align-items:center;gap:var(--spacing-sm)}.stats-card-label i{color:var(--color-primary)}.stats-card-value{font-size:var(--text-2xl);font-weight:600;color:var(--text-primary)}.topbar{height:60px;background:var(--bg-surface);border-bottom:1px solid var(--border-light);display:flex;align-items:center;justify-content:space-between;padding:0 var(--spacing-lg);position:sticky;top:0;z-index:var(--z-sticky);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.topbar-title{font-size:var(--text-xl);font-weight:600;color:var(--color-primary)}.topbar-user{display:flex;align-items:center;gap:var(--spacing-md)}.topbar-user-info{display:flex;align-items:center;gap:var(--spacing-sm);background:transparent;border:none;color:var(--text-primary);cursor:pointer;padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--radius-md);transition:background var(--transition-fast)}.topbar-user-info:hover{background:var(--bg-input)}.topbar-user-avatar{width:32px;height:32px;border-radius:var(--radius-full);background:var(--color-primary);display:flex;align-items:center;justify-content:center;color:var(--text-inverse);font-size:var(--text-sm);font-weight:600}.topbar-user-name{font-weight:500;font-size:var(--text-base)}.topbar-user-role{font-size:var(--text-xs);color:var(--text-tertiary)}.topbar-logout{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);background:#f565651a;border:1px solid rgba(245,101,101,.3);border-radius:var(--radius-md);color:var(--color-error);cursor:pointer;font-size:var(--text-sm);transition:all var(--transition-fast)}.topbar-logout:hover{background:#f5656533}.sidebar{width:240px;background:var(--bg-surface);border-right:1px solid var(--border-light);height:calc(100vh - 60px);overflow-y:auto;padding:var(--spacing-md) 0}.sidebar-project{padding:0 var(--spacing-lg) var(--spacing-md);border-bottom:1px solid var(--border-light);margin-bottom:var(--spacing-md)}.sidebar-project-label{font-size:var(--text-xs);color:var(--text-tertiary);margin-bottom:4px}.sidebar-project-name{font-size:var(--text-base);font-weight:500;color:var(--text-primary)}.sidebar-menu{list-style:none;padding:0;margin:0}.sidebar-menu-item{display:flex;align-items:center;gap:var(--spacing-md);width:100%;padding:var(--spacing-md) var(--spacing-lg);background:transparent;border:none;color:var(--text-secondary);cursor:pointer;font-size:var(--text-base);text-align:left;transition:all var(--transition-fast)}.sidebar-menu-item:hover{background:var(--bg-input);color:var(--text-primary)}.sidebar-menu-item i{width:16px;text-align:center}.footer{position:fixed;bottom:0;left:0;right:0;text-align:center;padding:var(--spacing-md) var(--spacing-lg);background:#0009;color:var(--text-tertiary);font-size:var(--text-sm);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:var(--z-dropdown)}.footer a{color:var(--color-primary);text-decoration:none}.footer a:hover{text-decoration:underline}.contact-footer{position:fixed;bottom:0;left:0;right:0;text-align:center;padding:var(--spacing-md) var(--spacing-lg);background:#0a0a0acc;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-top:1px solid rgba(255,255,255,.05);color:var(--text-secondary);font-size:var(--text-sm);z-index:50}.contact-footer button{background:none;border:none;color:var(--color-primary);cursor:pointer;font-size:var(--text-sm);text-decoration:underline;padding:0}.main-layout{display:flex;flex:1;overflow:hidden}.main-content{flex:1;padding:var(--spacing-xl);overflow-y:auto;background:var(--bg-main)}.page-header{margin-bottom:var(--spacing-xl)}.page-header h2{display:flex;align-items:center;gap:var(--spacing-sm);margin:0 0 var(--spacing-xs)}.page-header h2 i{color:var(--color-primary)}.page-header p{margin:0;color:var(--text-secondary);font-size:var(--text-sm)}.grid{display:grid;gap:var(--spacing-lg)}.grid-projects{grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.empty-state{text-align:center;padding:var(--spacing-2xl) var(--spacing-lg);background:var(--bg-surface);border-radius:var(--radius-lg);border:1px solid var(--border-light)}.empty-state-icon{font-size:48px;margin-bottom:var(--spacing-md)}.empty-state h3{margin-bottom:var(--spacing-sm)}.empty-state p{margin-bottom:var(--spacing-lg)}.auth-container{min-height:100vh;position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--spacing-lg)}.auth-header{text-align:center;margin-bottom:var(--spacing-xl)}.auth-header h1{font-size:var(--text-3xl);font-weight:600;color:var(--color-primary);margin-bottom:var(--spacing-xs)}.auth-header p{color:var(--text-secondary);font-size:var(--text-base)}.auth-card{background:var(--bg-surface);border-radius:var(--radius-xl);padding:var(--spacing-xl);width:100%;max-width:400px;border:1px solid var(--border-light)}.auth-title{font-size:var(--text-xl);font-weight:600;color:var(--text-primary);margin-bottom:var(--spacing-md);text-align:center}.auth-error{color:var(--color-error);margin-bottom:var(--spacing-md);font-size:var(--text-sm);text-align:center;padding:var(--spacing-sm) var(--spacing-md);background:var(--color-error-light);border-radius:var(--radius-md)}.auth-links{text-align:center;margin-top:var(--spacing-md)}.auth-link{background:none;border:none;color:var(--text-tertiary);cursor:pointer;font-size:var(--text-sm);transition:color var(--transition-fast)}.auth-link:hover,.auth-link span{color:var(--color-primary)}.password-strength{margin-bottom:var(--spacing-md);font-size:var(--text-xs)}.password-strength-bar{height:4px;background:var(--bg-input);border-radius:var(--radius-full);margin-bottom:var(--spacing-sm);overflow:hidden}.password-strength-fill{height:100%;border-radius:var(--radius-full);transition:width var(--transition-base),background var(--transition-base)}.password-strength-requirements{list-style:none;padding:0;margin:0}.password-strength-requirements li{margin-bottom:2px;display:flex;align-items:center;gap:var(--spacing-xs)}.password-strength-requirements li.met{color:var(--color-success)}.password-strength-requirements li.unmet{color:var(--text-tertiary)}.admin-auth .auth-header h1{color:var(--color-secondary)}.admin-auth .auth-card{border-color:#764ba24d}.dashboard-view{padding:var(--spacing-xl)}.dashboard-header{margin-bottom:var(--spacing-xl)}.dashboard-header-top{display:flex;align-items:center;gap:var(--spacing-sm);margin-bottom:var(--spacing-xs)}.dashboard-header-icon{font-size:24px;color:var(--color-primary)}.dashboard-title{font-size:var(--text-2xl);font-weight:600;color:var(--text-primary);margin:0}.dashboard-description{font-size:var(--text-base);color:var(--text-secondary);margin:0;line-height:1.5}.dashboard-card{background:var(--bg-surface);border-radius:var(--radius-lg);padding:var(--spacing-lg);border:1px solid var(--border-light);box-shadow:var(--shadow-sm)}.kpis-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--spacing-lg);margin-bottom:var(--spacing-xl)}.kpi{background:var(--bg-surface);border-radius:var(--radius-lg);padding:var(--spacing-lg);border:1px solid var(--border-light);box-shadow:var(--shadow-sm);text-align:center;transition:all var(--transition-base)}.kpi:hover{box-shadow:var(--shadow-lg);transform:translateY(-2px)}.kpi-icon{font-size:32px;color:var(--color-primary);margin-bottom:var(--spacing-md)}.kpi-value{font-size:var(--text-2xl);font-weight:600;color:var(--text-primary);margin-bottom:var(--spacing-xs)}.kpi-label{font-size:var(--text-sm);color:var(--text-secondary)}.dashboard-empty{composes:dashboard-card;text-align:center;padding:var(--spacing-2xl)}.dashboard-empty-icon{font-size:48px;color:var(--border-dark);margin-bottom:var(--spacing-md)}.dashboard-empty h3{color:var(--text-secondary);margin-bottom:var(--spacing-sm)}.dashboard-empty p{color:var(--text-tertiary);font-size:var(--text-base);margin:0}.text-primary{color:var(--text-primary)}.text-secondary{color:var(--text-secondary)}.text-tertiary{color:var(--text-tertiary)}.text-inverse{color:var(--text-inverse)}.text-link{color:var(--text-link)}.text-success{color:var(--color-success)}.text-error{color:var(--color-error)}.text-warning{color:var(--color-warning)}.text-info{color:var(--color-info)}.text-left{text-align:left}.text-center{text-align:center}.text-right{text-align:right}.text-xs{font-size:var(--text-xs)}.text-sm{font-size:var(--text-sm)}.text-base{font-size:var(--text-base)}.text-lg{font-size:var(--text-lg)}.text-xl{font-size:var(--text-xl)}.font-normal{font-weight:400}.font-medium{font-weight:500}.font-semibold{font-weight:600}.font-bold{font-weight:700}.mt-xs{margin-top:var(--spacing-xs)}.mt-sm{margin-top:var(--spacing-sm)}.mt-md{margin-top:var(--spacing-md)}.mt-lg{margin-top:var(--spacing-lg)}.mb-xs{margin-bottom:var(--spacing-xs)}.mb-sm{margin-bottom:var(--spacing-sm)}.mb-md{margin-bottom:var(--spacing-md)}.mb-lg{margin-bottom:var(--spacing-lg)}.flex{display:flex}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-sm{gap:var(--spacing-sm)}.gap-md{gap:var(--spacing-md)}.gap-lg{gap:var(--spacing-lg)}.hidden{display:none}.visible{display:block}.cursor-pointer{cursor:pointer}.cursor-not-allowed{cursor:not-allowed}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.bg-surface{background:var(--bg-surface)}.bg-main{background:var(--bg-main)}.bg-input{background:var(--bg-input)}.border{border:1px solid var(--border-light)}.border-top{border-top:1px solid var(--border-light)}.border-bottom{border-bottom:1px solid var(--border-light)}.rounded-sm{border-radius:var(--radius-sm)}.rounded-md{border-radius:var(--radius-md)}.rounded-lg{border-radius:var(--radius-lg)}.rounded-xl{border-radius:var(--radius-xl)}.rounded-full{border-radius:var(--radius-full)}.shadow-sm{box-shadow:var(--shadow-sm)}.shadow-md{box-shadow:var(--shadow-md)}.shadow-lg{box-shadow:var(--shadow-lg)}.shadow-xl{box-shadow:var(--shadow-xl)}.transition{transition:all var(--transition-base)}.transition-fast{transition:all var(--transition-fast)}:root{--color-primary: #667eea;--color-primary-light: #8b9cf7;--color-primary-dark: #5568d8;--color-secondary: #764ba2;--color-secondary-light: #9b6bc5;--color-secondary-dark: #623d8a;--bg-main: #f0f2f8;--bg-surface: #ffffff;--bg-surface-hover: #f8f9fc;--bg-overlay: rgba(0, 0, 0, .4);--bg-input: #f5f7fa;--bg-input-focus: #ffffff;--text-primary: #2d3748;--text-secondary: #718096;--text-tertiary: #a0aec0;--text-inverse: #ffffff;--text-link: #667eea;--color-success: #48bb78;--color-success-light: #c6f6d5;--color-error: #f56565;--color-error-light: #fed7d7;--color-warning: #ed8936;--color-warning-light: #feebc8;--color-info: #4299e1;--color-info-light: #bee3f8;--border-light: #e2e8f0;--border-medium: #cbd5e0;--border-dark: #a0aec0;--border-focus: rgba(102, 126, 234, .4);--shadow-sm: 0 1px 2px rgba(0, 0, 0, .05);--shadow-md: 0 4px 6px rgba(0, 0, 0, .07);--shadow-lg: 0 10px 15px rgba(0, 0, 0, .1);--shadow-xl: 0 20px 25px rgba(0, 0, 0, .12);--radius-sm: 4px;--radius-md: 8px;--radius-lg: 12px;--radius-xl: 16px;--radius-full: 9999px;--spacing-xs: 4px;--spacing-sm: 8px;--spacing-md: 16px;--spacing-lg: 24px;--spacing-xl: 32px;--spacing-2xl: 48px;--font-sans: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--font-mono: "SF Mono", "Fira Code", "Fira Mono", "Roboto Mono", monospace;--text-xs: 11px;--text-sm: 12px;--text-base: 13px;--text-lg: 15px;--text-xl: 17px;--text-2xl: 20px;--text-3xl: 26px;--transition-fast: .15s ease;--transition-base: .2s ease;--transition-slow: .3s ease;--z-dropdown: 100;--z-sticky: 200;--z-overlay: 300;--z-modal: 400;--z-tooltip: 500}.admin-view{padding:var(--spacing-xl);position:relative}.admin-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-xl)}.admin-header-title{color:var(--text-primary);display:flex;align-items:center;gap:var(--spacing-md)}.admin-header-title i{color:var(--color-warning)}.admin-section{background:var(--bg-surface);border-radius:var(--radius-lg);padding:var(--spacing-lg);margin-bottom:var(--spacing-lg);box-shadow:var(--shadow-sm);border:1px solid var(--border-light)}.admin-section-title{color:var(--text-primary);margin-bottom:var(--spacing-md)}.admin-info-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--spacing-md)}.admin-info-item{display:flex;flex-direction:column;gap:var(--spacing-xs)}.admin-info-label{font-size:var(--text-sm);color:var(--text-secondary)}.admin-info-value{font-size:var(--text-lg);font-weight:600;color:var(--text-primary)}.admin-info-value-primary{color:var(--color-primary)}.admin-stats-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--spacing-lg);margin-bottom:var(--spacing-lg)}.admin-stat-card{background:var(--bg-surface);border-radius:var(--radius-lg);padding:var(--spacing-lg);box-shadow:var(--shadow-sm);border:1px solid var(--border-light)}.admin-stat-card-title{color:var(--text-primary);margin-bottom:var(--spacing-md)}.admin-stat-value{font-size:var(--text-3xl);font-weight:600;color:var(--color-primary)}.admin-stat-value-large{font-size:36px}.admin-stat-total{font-size:var(--text-lg);color:var(--text-secondary);margin-left:var(--spacing-sm)}.admin-progress{margin-top:var(--spacing-md)}.admin-progress-bar{height:8px;background-color:var(--border-light);border-radius:var(--radius-sm);overflow:hidden}.admin-progress-fill{height:100%;border-radius:var(--radius-sm);transition:width var(--transition-base)}.admin-progress-fill-success{background-color:var(--color-success)}.admin-progress-fill-warning{background-color:var(--color-warning)}.admin-progress-fill-danger{background-color:var(--color-error)}.admin-progress-labels{display:flex;justify-content:space-between;font-size:var(--text-xs);color:var(--text-secondary);margin-top:var(--spacing-xs)}.admin-list{display:flex;flex-direction:column;gap:var(--spacing-md)}.admin-list-item{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-md);background-color:var(--bg-surface-hover);border-radius:var(--radius-md)}.admin-list-item-info{display:flex;flex-direction:column;gap:var(--spacing-xs)}.admin-list-item-title{font-weight:600;color:var(--text-primary)}.admin-list-item-subtitle{font-size:var(--text-sm);color:var(--text-secondary)}.admin-badge{padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-full);font-size:var(--text-xs)}.admin-badge-success{background-color:var(--color-success-light);color:var(--color-success)}.admin-badge-danger{background-color:var(--color-error-light);color:var(--color-error)}.admin-badge-warning{background-color:var(--color-warning-light);color:var(--color-warning)}.admin-badge-info{background-color:#667eea1a;color:var(--color-primary)}.admin-uptime{font-size:var(--text-lg);color:var(--color-primary);font-weight:600;display:flex;align-items:center;gap:var(--spacing-sm)}.admin-loading{padding:var(--spacing-xl);display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:400px}.admin-loading-spinner{font-size:32px;color:var(--color-primary)}.admin-loading-text{margin-top:var(--spacing-md);color:var(--text-secondary);font-size:var(--text-base)}.admin-error{padding:var(--spacing-xl);text-align:center}.admin-error-icon{font-size:24px;color:var(--color-error)}.admin-error-text{margin-top:var(--spacing-md);color:var(--color-error)}.admin-refresh-overlay{position:absolute;top:0;left:0;right:0;bottom:0;background-color:var(--bg-overlay);display:flex;align-items:center;justify-content:center;z-index:10}.admin-refresh-box{background-color:var(--bg-surface);padding:var(--spacing-lg) var(--spacing-xl);border-radius:var(--radius-md);display:flex;flex-direction:column;align-items:center;gap:var(--spacing-md)}.admin-refresh-text{color:var(--text-primary);font-weight:500}.admin-cpu-info{font-size:var(--text-base);color:var(--text-secondary);margin-bottom:var(--spacing-sm)}.admin-cpu-cores{font-size:var(--text-sm);color:var(--text-secondary);margin-bottom:var(--spacing-sm)}.admin-cpu-cores strong{color:var(--text-primary)}.admin-cpu-load{font-size:var(--text-xs);color:var(--text-secondary);display:flex;justify-content:space-between;margin-bottom:var(--spacing-xs)}.admin-cpu-load-bar{height:6px;background-color:var(--border-light);border-radius:var(--radius-sm);overflow:hidden}.admin-disk-item{display:flex;flex-direction:column;gap:var(--spacing-xs)}.admin-disk-header{display:flex;justify-content:space-between;font-size:var(--text-sm);margin-bottom:var(--spacing-xs)}.admin-disk-name{color:var(--text-primary);font-weight:500}.admin-disk-usage{color:var(--text-secondary)}.admin-disk-bar{height:6px;background-color:var(--border-light);border-radius:var(--radius-sm);overflow:hidden}.admin-container-list{display:flex;flex-direction:column;gap:var(--spacing-md)}.admin-container-item{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-md);background-color:var(--bg-surface-hover);border-radius:var(--radius-md)}
