@import"https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap";:root{--bg-primary: #0f1117;--bg-secondary: #161924;--bg-card: #1c1f2e;--bg-card-hover: #222640;--bg-sidebar: #0c0e16;--bg-input: #1a1d2e;--border: #2a2d3e;--border-light: #363a4f;--text-primary: #e8e9ed;--text-secondary: #9ca0b0;--text-muted: #6b6f80;--blue: #3b82f6;--blue-dim: #2563eb;--green: #10b981;--red: #ef4444;--amber: #f59e0b;--purple: #8b5cf6;--radius: 10px;--radius-sm: 6px;--sidebar-width: 260px;--transition: .2s ease}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}body{font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;background:var(--bg-primary);color:var(--text-primary);line-height:1.6;-webkit-font-smoothing:antialiased}.admin-layout{display:flex;min-height:100vh}.admin-sidebar{width:var(--sidebar-width);background:var(--bg-sidebar);border-right:1px solid var(--border);display:flex;flex-direction:column;position:fixed;top:0;left:0;bottom:0;z-index:50}.admin-main{flex:1;margin-left:var(--sidebar-width);min-height:100vh;overflow-y:auto}.sidebar-header{padding:24px 20px;display:flex;align-items:center;gap:10px;border-bottom:1px solid var(--border)}.sidebar-title{font-size:1.1rem;font-weight:700;letter-spacing:-.01em}.sidebar-nav{flex:1;padding:12px 10px;display:flex;flex-direction:column;gap:2px}.nav-item{display:flex;align-items:center;gap:10px;padding:10px 14px;border-radius:var(--radius-sm);color:var(--text-secondary);text-decoration:none;font-size:.875rem;font-weight:500;transition:all var(--transition)}.nav-item:hover{background:#ffffff0d;color:var(--text-primary)}.nav-item.active{background:var(--blue);color:#fff;box-shadow:0 2px 8px #3b82f640}.sidebar-footer{padding:16px;border-top:1px solid var(--border)}.admin-info{display:flex;align-items:center;gap:10px;margin-bottom:12px}.admin-avatar{width:36px;height:36px;border-radius:50%;background:linear-gradient(135deg,var(--blue),var(--purple));display:flex;align-items:center;justify-content:center;font-weight:700;font-size:.85rem;color:#fff;flex-shrink:0}.admin-details{display:flex;flex-direction:column;overflow:hidden}.admin-name{font-size:.85rem;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.admin-email{font-size:.72rem;color:var(--text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.logout-btn{display:flex;align-items:center;gap:8px;padding:8px 14px;background:transparent;border:1px solid rgba(239,68,68,.3);border-radius:var(--radius-sm);color:var(--red);font-size:.8rem;font-weight:500;cursor:pointer;width:100%;transition:all var(--transition)}.logout-btn:hover{background:#ef44441a;border-color:var(--red)}.page{padding:28px 32px}.page-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:24px}.page-header h1{font-size:1.5rem;font-weight:700;display:flex;align-items:center;gap:8px;letter-spacing:-.02em}.card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:20px;margin-bottom:20px}.card-title{font-size:1.05rem;font-weight:600;margin-bottom:16px;color:var(--text-secondary)}.stats-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:16px;margin-bottom:24px}.stat-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:20px;display:flex;align-items:center;gap:16px;transition:all var(--transition)}.stat-card:hover{border-color:var(--border-light);transform:translateY(-1px)}.stat-icon{width:44px;height:44px;border-radius:10px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.stat-value{font-size:1.5rem;font-weight:700;letter-spacing:-.02em}.stat-label{font-size:.78rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;font-weight:500}.stat-info{display:flex;flex-direction:column;gap:2px}.table-wrap{overflow-x:auto}table{width:100%;border-collapse:collapse;font-size:.875rem}th{text-align:left;padding:10px 14px;font-size:.72rem;text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);font-weight:600;border-bottom:1px solid var(--border);white-space:nowrap}td{padding:12px 14px;border-bottom:1px solid var(--border);vertical-align:middle}tr:last-child td{border-bottom:none}tr:hover td{background:#ffffff05}.user-cell{display:flex;align-items:center;gap:10px}.avatar{width:34px;height:34px;border-radius:50%;background:var(--bg-card-hover);display:flex;align-items:center;justify-content:center;font-weight:700;font-size:.8rem;color:var(--blue);flex-shrink:0;border:1px solid var(--border)}.avatar-admin{background:linear-gradient(135deg,var(--purple),var(--blue));color:#fff;border:none}.user-name{font-weight:600;font-size:.875rem}.user-email{font-size:.75rem;color:var(--text-muted)}.user-id{font-size:.68rem;color:var(--text-muted);opacity:.6}.badge{display:inline-flex;align-items:center;gap:4px;padding:3px 10px;border-radius:20px;font-size:.72rem;font-weight:600;white-space:nowrap}.badge-green{background:#10b9811f;color:var(--green)}.badge-red{background:#ef44441f;color:var(--red)}.badge-blue{background:#3b82f61f;color:var(--blue)}.badge-purple{background:#8b5cf61f;color:var(--purple)}.badge-warning{background:#f59e0b1f;color:var(--amber)}.badge-gray{background:#9ca0b01a;color:var(--text-muted)}.btn{display:inline-flex;align-items:center;gap:6px;padding:8px 16px;border-radius:var(--radius-sm);font-size:.85rem;font-weight:500;border:none;cursor:pointer;transition:all var(--transition);white-space:nowrap;font-family:inherit}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:var(--blue);color:#fff}.btn-primary:hover:not(:disabled){background:var(--blue-dim)}.btn-success{background:#10b98126;color:var(--green);border:1px solid rgba(16,185,129,.3)}.btn-success:hover:not(:disabled){background:#10b98140}.btn-danger{background:#ef444426;color:var(--red);border:1px solid rgba(239,68,68,.3)}.btn-danger:hover:not(:disabled){background:#ef444440}.btn-warning{background:#f59e0b26;color:var(--amber);border:1px solid rgba(245,158,11,.3)}.btn-warning:hover:not(:disabled){background:#f59e0b40}.btn-outline{background:transparent;color:var(--text-secondary);border:1px solid var(--border)}.btn-outline:hover:not(:disabled){background:#ffffff0d;color:var(--text-primary)}.btn-sm{padding:5px 10px;font-size:.78rem}.action-group{display:flex;align-items:center;gap:6px}.extend-group{display:flex;align-items:center;gap:4px}.extend-input{width:52px;padding:4px 6px;background:var(--bg-input);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-primary);font-size:.78rem;text-align:center;font-family:inherit}.extend-input:focus{outline:none;border-color:var(--blue)}.login-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--bg-primary);background-image:radial-gradient(ellipse at 20% 50%,rgba(59,130,246,.06),transparent 60%),radial-gradient(ellipse at 80% 20%,rgba(139,92,246,.04),transparent 50%)}.login-card{width:100%;max-width:400px;background:var(--bg-card);border:1px solid var(--border);border-radius:16px;padding:40px 36px;box-shadow:0 8px 32px #0000004d}.login-header{text-align:center;margin-bottom:32px}.login-icon{width:56px;height:56px;margin:0 auto 16px;background:linear-gradient(135deg,var(--blue),var(--purple));border-radius:14px;display:flex;align-items:center;justify-content:center;color:#fff}.login-header h1{font-size:1.5rem;font-weight:700;letter-spacing:-.02em;margin-bottom:4px}.login-header p{color:var(--text-muted);font-size:.85rem}.login-form{display:flex;flex-direction:column;gap:18px}.login-error{padding:10px 14px;background:#ef44441a;border:1px solid rgba(239,68,68,.3);border-radius:var(--radius-sm);color:var(--red);font-size:.83rem;font-weight:500}.form-group{display:flex;flex-direction:column;gap:6px}.form-group label{font-size:.8rem;font-weight:600;color:var(--text-secondary);letter-spacing:.02em}.form-group input{padding:10px 14px;background:var(--bg-input);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-primary);font-size:.9rem;font-family:inherit;transition:border var(--transition)}.form-group input:focus{outline:none;border-color:var(--blue);box-shadow:0 0 0 3px #3b82f626}.form-group input::placeholder{color:var(--text-muted)}.login-submit{display:flex;align-items:center;justify-content:center;gap:8px;padding:12px;background:var(--blue);color:#fff;border:none;border-radius:var(--radius-sm);font-size:.9rem;font-weight:600;cursor:pointer;font-family:inherit;transition:all var(--transition);margin-top:4px}.login-submit:hover:not(:disabled){background:var(--blue-dim)}.login-submit:disabled{opacity:.6;cursor:not-allowed}.plans-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px}.plan-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:24px;transition:all var(--transition)}.plan-card:hover{border-color:var(--border-light)}.plan-inactive{opacity:.5}.plan-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.plan-header h3{font-size:1.15rem;font-weight:700}.plan-price{font-size:1.8rem;font-weight:800;letter-spacing:-.03em;margin-bottom:8px}.plan-period{font-size:.85rem;color:var(--text-muted);font-weight:400}.plan-desc{color:var(--text-secondary);font-size:.85rem;margin-bottom:16px}.create-form{margin-bottom:24px}.create-form h3{font-size:1.05rem;font-weight:600;margin-bottom:16px}.form-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:16px}.form-group-full{grid-column:1 / -1}.form-actions{display:flex;gap:8px}.log-details{font-size:.72rem;background:var(--bg-input);padding:3px 8px;border-radius:4px;color:var(--text-secondary);max-width:320px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:inline-block}.text-center{text-align:center}.text-muted{color:var(--text-muted)}.text-sm{font-size:.85rem}.text-xs{font-size:.75rem}.text-lg{font-size:1.1rem}.text-green{color:var(--green)}.text-red{color:var(--red)}.text-amber{color:var(--amber)}.font-bold{font-weight:700}.font-mono{font-family:JetBrains Mono,Fira Code,monospace}.whitespace-nowrap{white-space:nowrap}.inline{display:inline}.flex{display:flex}.gap-2{gap:8px}.gap-4{gap:16px}.items-center{align-items:center}.mr-2{margin-right:8px}.p-8{padding:32px}.stat-inline{display:flex;align-items:center;gap:8px}@keyframes spin{to{transform:rotate(360deg)}}.spin{animation:spin 1s linear infinite}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--border);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--border-light)}
