:root{--admin-bg:#F5F5F5;--admin-white:#FFF;--admin-gray-50:#FAFAFA;--admin-gray-100:#F5F5F5;--admin-gray-200:#E5E5E5;--admin-gray-300:#D4D4D4;--admin-gray-400:#A3A3A3;--admin-gray-500:#737373;--admin-gray-600:#525252;--admin-gray-700:#404040;--admin-gray-900:#171717;--admin-blue-50:#EFF6FF;--admin-blue-100:#DBEAFE;--admin-blue-500:#3B82F6;--admin-blue-600:#2563EB;--admin-blue-700:#1D4ED8;--admin-green-50:#ECFDF5;--admin-green-600:#059669;--admin-red-50:#FEF2F2;--admin-red-600:#DC2626;--admin-yellow-50:#FFFBEB;--admin-yellow-600:#D97706;--admin-sidebar-width:260px;--admin-radius:8px;--admin-transition:150ms ease}
*,*::before,*::after{margin:0;padding:0;box-sizing:border-box}
.admin-body{font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;font-size:14px;line-height:1.5;color:var(--admin-gray-900);background:var(--admin-bg);-webkit-font-smoothing:antialiased}
.admin-layout{display:flex;min-height:100vh}
.admin-sidebar{width:var(--admin-sidebar-width);background:var(--admin-white);border-right:1px solid var(--admin-gray-200);position:fixed;top:0;left:0;bottom:0;display:flex;flex-direction:column;z-index:100}
.admin-sidebar-header{padding:24px 20px;border-bottom:1px solid var(--admin-gray-200)}
.admin-sidebar-title{font-size:18px;font-weight:700;color:var(--admin-gray-900);letter-spacing:-0.025em}
.admin-sidebar-subtitle{font-size:12px;font-weight:500;color:var(--admin-gray-400);margin-top:2px}
.admin-nav{flex:1;padding:16px 12px;display:flex;flex-direction:column;gap:4px;overflow-y:auto}
.admin-nav-link{display:flex;align-items:center;gap:12px;padding:12px 16px;color:var(--admin-gray-600);text-decoration:none;font-size:14px;font-weight:500;border-radius:var(--admin-radius);transition:all var(--admin-transition)}
.admin-nav-link:hover{background:var(--admin-gray-100);color:var(--admin-gray-900)}
.admin-nav-link.active{background:var(--admin-blue-50);color:var(--admin-blue-600)}
.admin-nav-icon{width:20px;height:20px;flex-shrink:0}
.admin-sidebar-footer{padding:16px;border-top:1px solid var(--admin-gray-200)}
.admin-user-info{display:flex;align-items:center;gap:12px;padding:12px;background:var(--admin-gray-50);border-radius:var(--admin-radius);margin-bottom:12px}
.admin-user-avatar{width:40px;height:40px;background:var(--admin-blue-100);color:var(--admin-blue-600);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:16px;font-weight:600;flex-shrink:0}
.admin-user-details{flex:1;min-width:0}
.admin-user-name{font-size:14px;font-weight:600;color:var(--admin-gray-900);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.admin-user-email{font-size:12px;color:var(--admin-gray-500);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:1px}
.admin-main{flex:1;margin-left:var(--admin-sidebar-width);min-height:100vh;display:flex;flex-direction:column}
.admin-header{background:var(--admin-white);border-bottom:1px solid var(--admin-gray-200);padding:24px 32px;display:flex;align-items:center;justify-content:space-between}
.admin-page-title{font-size:24px;font-weight:700;color:var(--admin-gray-900);letter-spacing:-0.025em}
.admin-page-description{font-size:14px;color:var(--admin-gray-500);margin-top:4px}
.admin-content{flex:1;padding:32px;max-width:1400px}
.admin-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:10px 18px;font-size:14px;font-weight:500;border-radius:var(--admin-radius);border:none;cursor:pointer;text-decoration:none;transition:all var(--admin-transition);white-space:nowrap}
.admin-btn svg{width:18px;height:18px}
.admin-btn-primary{background:var(--admin-blue-600);color:white}
.admin-btn-primary:hover{background:var(--admin-blue-700)}
.admin-btn-secondary{background:var(--admin-white);color:var(--admin-gray-700);border:1px solid var(--admin-gray-300)}
.admin-btn-secondary:hover{background:var(--admin-gray-50);border-color:var(--admin-gray-400)}
.admin-btn-danger{background:var(--admin-red-50);color:var(--admin-red-600);border:1px solid transparent}
.admin-btn-danger:hover{background:var(--admin-red-600);color:white}
.admin-btn-sm{padding:8px 14px;font-size:13px}
.admin-btn-sm svg{width:16px;height:16px}
.admin-btn-icon{width:36px;height:36px;padding:0;display:inline-flex;align-items:center;justify-content:center;background:var(--admin-white);border:1px solid var(--admin-gray-200);border-radius:var(--admin-radius);color:var(--admin-gray-600);cursor:pointer;transition:all var(--admin-transition);text-decoration:none}
.admin-btn-icon:hover{background:var(--admin-gray-50);color:var(--admin-blue-600);border-color:var(--admin-blue-100)}
.admin-btn-icon.admin-btn-danger:hover{background:var(--admin-red-50);color:var(--admin-red-600);border-color:var(--admin-red-100)}
.admin-btn-icon svg{width:18px;height:18px}
.admin-card{background:var(--admin-white);border:1px solid var(--admin-gray-200);border-radius:var(--admin-radius)}
.admin-card-header{padding:20px 24px;border-bottom:1px solid var(--admin-gray-200);display:flex;align-items:center;justify-content:space-between}
.admin-card-title{font-size:16px;font-weight:600;color:var(--admin-gray-900)}
.admin-card-body{padding:24px}
.admin-card-footer{padding:16px 24px;border-top:1px solid var(--admin-gray-200);background:var(--admin-gray-50);display:flex;align-items:center;gap:12px;border-radius:0 0 var(--admin-radius) var(--admin-radius)}
.admin-stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:24px;margin-bottom:32px}
.admin-stat-card{background:var(--admin-white);border:1px solid var(--admin-gray-200);border-radius:var(--admin-radius);padding:24px;display:flex;flex-direction:column;align-items:center;text-align:center}
.admin-stat-icon{width:64px;height:64px;border-radius:12px;display:flex;align-items:center;justify-content:center;margin-bottom:16px}
.admin-stat-icon svg{width:32px;height:32px}
.admin-stat-label{font-size:13px;color:var(--admin-gray-500);margin-bottom:4px}
.admin-stat-value{font-size:32px;font-weight:700;color:var(--admin-gray-900);letter-spacing:-0.025em}
.admin-table-container{overflow-x:auto}
.admin-table{width:100%;border-collapse:collapse}
.admin-table th{text-align:left;padding:12px 16px;font-size:12px;font-weight:600;color:var(--admin-gray-500);text-transform:uppercase;letter-spacing:0.05em;background:var(--admin-gray-50);border-bottom:1px solid var(--admin-gray-200)}
.admin-table td{padding:16px;font-size:14px;color:var(--admin-gray-700);border-bottom:1px solid var(--admin-gray-100);vertical-align:middle}
.admin-table tr:hover td{background:var(--admin-gray-50)}
.admin-table tr:last-child td{border-bottom:none}
.admin-form-group{margin-bottom:20px}
.admin-form-label{display:block;font-size:14px;font-weight:500;color:var(--admin-gray-700);margin-bottom:6px}
.admin-form-input,.admin-form-select,.admin-form-textarea{width:100%;padding:10px 14px;font-size:14px;font-family:inherit;color:var(--admin-gray-900);background:var(--admin-white);border:1px solid var(--admin-gray-300);border-radius:var(--admin-radius);transition:all var(--admin-transition)}
.admin-form-input:focus,.admin-form-select:focus,.admin-form-textarea:focus{outline:none;border-color:var(--admin-blue-500);box-shadow:0 0 0 3px var(--admin-blue-50)}
.admin-form-input::placeholder,.admin-form-textarea::placeholder{color:var(--admin-gray-400)}
.admin-form-textarea{min-height:100px;resize:vertical}
.admin-form-hint{font-size:12px;color:var(--admin-gray-500);margin-top:4px}
.admin-form-checkbox,.admin-form-radio{display:flex;align-items:center;gap:8px;cursor:pointer}
.admin-form-checkbox input[type=checkbox],.admin-form-radio input[type=radio]{width:18px;height:18px;accent-color:var(--admin-blue-600)}
.admin-badge{display:inline-flex;align-items:center;padding:4px 10px;font-size:12px;font-weight:500;border-radius:100px;background:transparent}
.admin-badge-success{background:var(--admin-green-50);color:var(--admin-green-600)}
.admin-badge-warning{background:var(--admin-yellow-50);color:var(--admin-yellow-600)}
.admin-badge-danger{background:var(--admin-red-50);color:var(--admin-red-600)}
.admin-badge-secondary{background:var(--admin-gray-100);color:var(--admin-gray-600)}
.admin-badge-primary{background:var(--admin-blue-50);color:var(--admin-blue-600)}
.admin-action-buttons{display:flex;align-items:center;gap:8px}
.admin-alert{padding:16px;border-radius:var(--admin-radius);margin-bottom:24px;display:flex;align-items:flex-start;gap:12px}
.admin-alert svg{width:20px;height:20px;flex-shrink:0;margin-top:1px}
.admin-alert-danger{background:var(--admin-red-50);color:var(--admin-red-600);border:1px solid rgba(220,38,38,0.2)}
.admin-alert-success{background:var(--admin-green-50);color:var(--admin-green-600);border:1px solid rgba(5,150,105,0.2)}
.admin-alert-warning{background:var(--admin-yellow-50);color:var(--admin-yellow-600);border:1px solid rgba(217,119,6,0.2)}
.admin-error-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--admin-bg);padding:32px}
.admin-error-container{text-align:center;max-width:400px}
.admin-error-icon{width:80px;height:80px;margin:0 auto 24px;background:var(--admin-blue-50);border-radius:50%;display:flex;align-items:center;justify-content:center}
.admin-error-icon svg{width:40px;height:40px;color:var(--admin-blue-600)}
.admin-error-code{font-size:64px;font-weight:700;color:var(--admin-gray-900);line-height:1;margin-bottom:8px}
.admin-error-title{font-size:20px;font-weight:600;color:var(--admin-gray-900);margin-bottom:8px}
.admin-error-message{font-size:14px;color:var(--admin-gray-500);line-height:1.6;margin-bottom:32px}
.admin-error-actions{display:flex;gap:12px;justify-content:center;flex-wrap:wrap}
@media(max-width:1024px){.admin-sidebar{transform:translateX(-100%);transition:transform .3s ease}.admin-sidebar.open{transform:translateX(0)}.admin-main{margin-left:0}}
@media(max-width:640px){.admin-stats-grid{grid-template-columns:1fr}.admin-header{flex-direction:column;align-items:flex-start;gap:16px}.admin-content{padding:16px}}
