.admin-portal{--admin-app-bg:#0b1220;--admin-subtle-bg:#0f172a;--admin-surface-base:#111827;--admin-surface-elevated:#141c2b;--admin-surface-strong:#1a2240;--admin-border-subtle:#ffffff0d;--admin-border-default:#ffffff14;--admin-border-strong:#ffffff1f;--admin-text-primary:#f8fafc;--admin-text-secondary:#94a3b8;--admin-text-tertiary:#64748b;--admin-text-muted:#475569;--admin-accent-primary:#4f46e5;--admin-accent-secondary:#06b6d4;--admin-accent-success:#10b981;--admin-accent-warning:#f59e0b;--admin-accent-danger:#ef4444;--admin-accent-info:#3b82f6;--admin-gradient-primary:linear-gradient(135deg, #4f46e5 0%, #7c3aed 100%);--admin-gradient-success:linear-gradient(135deg, #10b981 0%, #06b6d4 100%);--admin-gradient-danger:linear-gradient(135deg, #ef4444 0%, #f97316 100%);--admin-shadow-xs:0 1px 2px #00000029;--admin-shadow-sm:0 2px 4px #0003;--admin-shadow-md:0 4px 12px #0000003d;--admin-shadow-lg:0 8px 24px #00000047;--admin-shadow-xl:0 12px 32px #00000052;--admin-shadow-elevated:0 16px 48px #0000005c;--admin-focus-ring:0 0 0 3px #4f46e51a;--admin-focus-ring-color:#4f46e5;--admin-spacing-xs:4px;--admin-spacing-sm:8px;--admin-spacing-md:12px;--admin-spacing-lg:16px;--admin-spacing-xl:24px;--admin-spacing-2xl:32px;--admin-radius-sm:6px;--admin-radius-md:10px;--admin-radius-lg:14px;--admin-radius-xl:20px;--admin-radius-2xl:28px;--admin-font-family:-apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Inter", sans-serif;--admin-font-mono:"Fira Code", "Monaco", "Menlo", monospace;font-family:var(--admin-font-family);background:var(--admin-app-bg);color:var(--admin-text-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.admin-portal.admin-portal--light{--admin-app-bg:#f9fafb;--admin-subtle-bg:#f3f4f6;--admin-surface-base:#fff;--admin-surface-elevated:#fff;--admin-surface-strong:#f9fafb;--admin-border-subtle:#0000000a;--admin-border-default:#0000000f;--admin-border-strong:#00000014;--admin-text-primary:#0f172a;--admin-text-secondary:#475569;--admin-text-tertiary:#64748b;--admin-text-muted:#94a3b8}.admin-portal *{box-sizing:border-box}.admin-portal{min-height:100vh;overflow:hidden}.admin-portal .admin-surface{background:var(--admin-surface-base);border:1px solid var(--admin-border-default);border-radius:var(--admin-radius-lg)}.admin-portal .admin-surface-strong{background:var(--admin-surface-strong);border:1px solid var(--admin-border-strong);border-radius:var(--admin-radius-lg)}.admin-portal .admin-card{background:var(--admin-surface-elevated);border:1px solid var(--admin-border-default);border-radius:var(--admin-radius-lg);padding:var(--admin-spacing-lg);box-shadow:var(--admin-shadow-sm);transition:all .2s cubic-bezier(.4,0,.2,1)}.admin-portal .admin-card:hover{border-color:var(--admin-border-strong);box-shadow:var(--admin-shadow-md);transform:translateY(-1px)}.admin-portal .admin-stat-card{background:linear-gradient(135deg, var(--admin-surface-elevated) 0%, var(--admin-surface-strong) 100%);border:1px solid var(--admin-border-default);border-radius:var(--admin-radius-lg);padding:var(--admin-spacing-xl);transition:all .25s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden}.admin-portal .admin-stat-card:before{content:"";background:linear-gradient(90deg, transparent, var(--admin-border-strong), transparent);height:1px;position:absolute;top:0;left:0;right:0}.admin-portal .admin-stat-card:hover{border-color:var(--admin-border-strong);box-shadow:var(--admin-shadow-lg);transform:translateY(-4px)}.admin-portal .admin-stat-card-icon{border-radius:var(--admin-radius-lg);width:48px;height:48px;color:var(--admin-accent-primary);margin-bottom:var(--admin-spacing-md);background:#4f46e51f;justify-content:center;align-items:center;font-size:20px;display:flex}.admin-portal .admin-stat-card-icon.success{color:var(--admin-accent-success);background:#10b9811f}.admin-portal .admin-stat-card-icon.warning{color:var(--admin-accent-warning);background:#f59e0b1f}.admin-portal .admin-stat-card-icon.danger{color:var(--admin-accent-danger);background:#ef44441f}.admin-portal .admin-stat-value{color:var(--admin-text-primary);letter-spacing:-.02em;font-size:28px;font-weight:700;line-height:1.2}.admin-portal .admin-stat-label{color:var(--admin-text-secondary);text-transform:uppercase;letter-spacing:.05em;margin-top:var(--admin-spacing-sm);font-size:13px;font-weight:500}.admin-portal .admin-stat-trend{align-items:center;gap:var(--admin-spacing-xs);margin-top:var(--admin-spacing-md);padding:var(--admin-spacing-xs) var(--admin-spacing-md);border-radius:var(--admin-radius-sm);color:var(--admin-accent-success);background:#10b9811f;font-size:12px;font-weight:600;display:inline-flex}.admin-portal .admin-stat-trend.negative{color:var(--admin-accent-danger);background:#ef44441f}.admin-portal .admin-sidebar-shell{background:var(--admin-surface-base);border:1px solid var(--admin-border-default);border-radius:var(--admin-radius-xl);box-shadow:var(--admin-shadow-md);flex-direction:column;display:flex;position:relative;overflow:hidden}.admin-portal .admin-sidebar-shell:before{content:"";background:linear-gradient(90deg, transparent, var(--admin-border-strong), transparent);pointer-events:none;height:1px;position:absolute;top:0;left:0;right:0}.admin-portal .admin-nav-item{border-radius:var(--admin-radius-lg);padding:var(--admin-spacing-md) var(--admin-spacing-lg);color:var(--admin-text-secondary);cursor:pointer;align-items:center;gap:var(--admin-spacing-md);border:1px solid #0000;font-size:14px;font-weight:500;transition:all .2s cubic-bezier(.4,0,.2,1);display:flex;position:relative;overflow:hidden}.admin-portal .admin-nav-item:before{content:"";opacity:0;background:var(--admin-gradient-primary);border-radius:4px;width:2.5px;transition:opacity .2s;position:absolute;top:6px;bottom:6px;left:0}.admin-portal .admin-nav-item:hover{border-color:var(--admin-border-default);color:var(--admin-text-primary);background:#ffffff0d}.admin-portal .admin-nav-item.is-active{border-color:var(--admin-border-strong);color:var(--admin-accent-primary);background:#4f46e51f;font-weight:600}.admin-portal .admin-nav-item.is-active:before{opacity:1}.admin-portal .admin-topnav{background:var(--admin-surface-base);border-bottom:1px solid var(--admin-border-default);-webkit-backdrop-filter:blur(10px);z-index:40;padding:var(--admin-spacing-lg);position:sticky;top:0}.admin-portal .admin-button{background:var(--admin-surface-strong);border:1px solid var(--admin-border-default);border-radius:var(--admin-radius-lg);color:var(--admin-text-primary);padding:var(--admin-spacing-md) var(--admin-spacing-lg);cursor:pointer;align-items:center;gap:var(--admin-spacing-md);font-size:14px;font-weight:500;transition:all .2s cubic-bezier(.4,0,.2,1);display:inline-flex;position:relative;overflow:hidden}.admin-portal .admin-button:before{content:"";opacity:0;background:linear-gradient(#ffffff1a 0%,#0000 100%);transition:opacity .2s;position:absolute;inset:0}.admin-portal .admin-button:hover{background:var(--admin-surface-elevated);border-color:var(--admin-border-strong);box-shadow:var(--admin-shadow-md);transform:translateY(-2px)}.admin-portal .admin-button:active{transform:translateY(0)}.admin-portal .admin-button:focus-visible{box-shadow:var(--admin-focus-ring);outline:none}.admin-portal .admin-button.primary{background:var(--admin-gradient-primary);border-color:var(--admin-accent-primary);color:#fff;box-shadow:var(--admin-shadow-sm)}.admin-portal .admin-button.primary:hover{box-shadow:var(--admin-shadow-lg);transform:translateY(-3px)}.admin-portal .admin-button.success{border-color:var(--admin-accent-success);color:var(--admin-accent-success);background:#10b9811f}.admin-portal .admin-button.success:hover{background:#10b9812e;box-shadow:0 0 0 10px #10b98114}.admin-portal .admin-button.danger{border-color:var(--admin-accent-danger);color:var(--admin-accent-danger);background:#ef44441f}.admin-portal .admin-button.danger:hover{background:#ef44442e;box-shadow:0 0 0 10px #ef444414}.admin-portal .admin-table{border-collapse:collapse;background:var(--admin-surface-base);border:1px solid var(--admin-border-default);border-radius:var(--admin-radius-lg);width:100%;overflow:hidden}.admin-portal .admin-table thead{background:var(--admin-surface-strong);border-bottom:1px solid var(--admin-border-strong);z-index:10;position:sticky;top:0}.admin-portal .admin-table th{padding:var(--admin-spacing-lg);text-align:left;text-transform:uppercase;letter-spacing:.05em;color:var(--admin-text-secondary);border-right:1px solid var(--admin-border-default);font-size:12px;font-weight:600}.admin-portal .admin-table th:last-child{border-right:none}.admin-portal .admin-table td{padding:var(--admin-spacing-lg);border-bottom:1px solid var(--admin-border-subtle);border-right:1px solid var(--admin-border-subtle);color:var(--admin-text-primary);font-size:14px}.admin-portal .admin-table td:last-child{border-right:none}.admin-portal .admin-table tbody tr{background:var(--admin-surface-base);transition:all .2s}.admin-portal .admin-table tbody tr:hover{background:var(--admin-surface-elevated);box-shadow:inset 0 0 0 1px var(--admin-border-default)}.admin-portal .admin-table tbody tr:last-child td{border-bottom:none}.admin-portal .admin-status-pill{align-items:center;gap:var(--admin-spacing-xs);border-radius:var(--admin-radius-md);text-transform:uppercase;letter-spacing:.03em;width:fit-content;padding:4px 10px;font-size:12px;font-weight:600;display:inline-flex}.admin-portal .admin-status-pill.pending{color:var(--admin-accent-warning);background:#f59e0b1f;border:1px solid #f59e0b4d}.admin-portal .admin-status-pill.approved,.admin-portal .admin-status-pill.active{color:var(--admin-accent-success);background:#10b9811f;border:1px solid #10b9814d}.admin-portal .admin-status-pill.rejected{color:var(--admin-accent-danger);background:#ef44441f;border:1px solid #ef44444d}.admin-portal .admin-status-pill.suspended{color:var(--admin-accent-info);background:#3b82f61f;border:1px solid #3b82f64d}.admin-portal .admin-empty-state{padding:60px var(--admin-spacing-xl);text-align:center;flex-direction:column;justify-content:center;align-items:center;display:flex}.admin-portal .admin-empty-state-icon{margin-bottom:var(--admin-spacing-lg);opacity:.6;font-size:56px}.admin-portal .admin-empty-state-title{color:var(--admin-text-primary);margin-bottom:var(--admin-spacing-md);font-size:18px;font-weight:600}.admin-portal .admin-empty-state-description{color:var(--admin-text-secondary);margin-bottom:var(--admin-spacing-lg);max-width:360px;font-size:14px}.admin-portal .admin-toast-stack{top:var(--admin-spacing-lg);right:var(--admin-spacing-lg);z-index:80;gap:var(--admin-spacing-md);pointer-events:none;flex-direction:column;max-width:400px;display:flex;position:fixed}.admin-portal .admin-toast{background:var(--admin-surface-elevated);border:1px solid var(--admin-border-default);border-radius:var(--admin-radius-lg);padding:var(--admin-spacing-lg);box-shadow:var(--admin-shadow-lg);color:var(--admin-text-primary);pointer-events:auto;font-size:14px;font-weight:500;animation:.3s cubic-bezier(.16,1,.3,1) toast-enter}.admin-portal .admin-toast.success{border-left:3px solid var(--admin-accent-success);background:linear-gradient(90deg, #10b98114, var(--admin-surface-elevated))}.admin-portal .admin-toast.error{border-left:3px solid var(--admin-accent-danger);background:linear-gradient(90deg, #ef444414, var(--admin-surface-elevated))}@keyframes toast-enter{0%{opacity:0;transform:translate(384px)}to{opacity:1;transform:translate(0)}}.admin-portal .admin-input,.admin-portal .admin-select,.admin-portal .admin-textarea{background:var(--admin-surface-strong);border:1px solid var(--admin-border-default);border-radius:var(--admin-radius-lg);color:var(--admin-text-primary);padding:var(--admin-spacing-md) var(--admin-spacing-lg);font-family:var(--admin-font-family);font-size:14px;transition:all .2s cubic-bezier(.4,0,.2,1)}.admin-portal .admin-input::placeholder{color:var(--admin-text-muted)}.admin-portal .admin-input:hover,.admin-portal .admin-select:hover,.admin-portal .admin-textarea:hover{border-color:var(--admin-border-strong)}.admin-portal .admin-input:focus,.admin-portal .admin-select:focus,.admin-portal .admin-textarea:focus{border-color:var(--admin-accent-primary);box-shadow:var(--admin-focus-ring);outline:none}@keyframes fade-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes slide-in-right{0%{opacity:0;transform:translate(16px)}to{opacity:1;transform:translate(0)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes shake{0%,to{transform:translate(0)}10%,30%,50%,70%,90%{transform:translate(-4px)}20%,40%,60%,80%{transform:translate(4px)}}.admin-portal .animate-fade-in{animation:.3s cubic-bezier(.4,0,.2,1) fade-in}.admin-portal .animate-spin{animation:1s linear infinite spin}.admin-portal .animate-pulse{animation:2s cubic-bezier(.4,0,.6,1) infinite pulse}.admin-portal .flush{background:0 0;border:none;margin:0;padding:0}.admin-portal .text-ellipsis{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.admin-portal .text-nowrap{white-space:nowrap}@media (width<=1024px){.admin-portal .admin-stat-value{font-size:24px}.admin-portal .admin-table{font-size:13px}.admin-portal .admin-table th,.admin-portal .admin-table td{padding:var(--admin-spacing-md)}}@media (width<=768px){.admin-portal .admin-spacing-xl{--admin-spacing-xl:16px}.admin-portal .admin-stat-card{padding:var(--admin-spacing-lg)}.admin-portal .admin-stat-value{font-size:22px}}@media (prefers-reduced-motion:reduce){.admin-portal *,.admin-portal :before,.admin-portal :after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@media (prefers-color-scheme:light){.admin-portal{--admin-app-bg:#f9fafb}}
