:root{--brand-50: #eef2ff;--brand-100: #e0e7ff;--brand-200: #c7d2fe;--brand-300: #a5b4fc;--brand-400: #818cf8;--brand-500: #6366f1;--brand-600: #4f46e5;--brand-700: #4338ca;--brand-800: #3730a3;--brand-900: #312e81;--accent-500: #3b82f6;--accent-600: #2563eb;--accent-700: #1d4ed8;--slate-50: #f8fafc;--slate-100: #f1f5f9;--slate-200: #e2e8f0;--slate-300: #cbd5e1;--slate-400: #94a3b8;--slate-500: #64748b;--slate-600: #475569;--slate-700: #334155;--slate-800: #1e293b;--slate-900: #0f172a;--slate-950: #020617;--success-50: #f0fdf4;--success-100: #dcfce7;--success-500: #22c55e;--success-600: #16a34a;--success-700: #15803d;--warning-50: #fefce8;--warning-100: #fef9c3;--warning-500: #eab308;--warning-700: #a16207;--warning-800: #854d0e;--danger-50: #fef2f2;--danger-100: #fee2e2;--danger-500: #ef4444;--danger-600: #dc2626;--danger-700: #b91c1c;--danger-800: #991b1b;--info-50: #eff6ff;--info-100: #dbeafe;--info-700: #1d4ed8;--surface-page: #f6f7fb;--surface-card: #ffffff;--surface-muted: #f8fafc;--border-subtle: #e5e7eb;--border-default: #e2e8f0;--border-strong: #cbd5e1;--text-primary: #0f172a;--text-secondary: #475569;--text-tertiary: #64748b;--text-inverse: #ffffff;--radius-xs: 4px;--radius-sm: 6px;--radius: 8px;--radius-md: 10px;--radius-lg: 12px;--radius-xl: 16px;--radius-2xl: 20px;--radius-pill: 999px;--shadow-xs: 0 1px 2px rgba(15, 23, 42, .04);--shadow-sm: 0 1px 3px rgba(15, 23, 42, .06), 0 1px 2px rgba(15, 23, 42, .04);--shadow-md: 0 4px 14px rgba(15, 23, 42, .06), 0 1px 2px rgba(15, 23, 42, .04);--shadow-lg: 0 12px 32px rgba(15, 23, 42, .08), 0 2px 6px rgba(15, 23, 42, .04);--shadow-xl: 0 24px 48px rgba(15, 23, 42, .12);--shadow-inset: inset 0 0 0 1px rgba(15, 23, 42, .04);--ring: 0 0 0 3px rgba(79, 70, 229, .22);--ring-danger: 0 0 0 3px rgba(220, 38, 38, .22);--ease-out: cubic-bezier(.2, .8, .2, 1);--dur-fast: .12s;--dur: .18s;color-scheme:light}*,*:before,*:after{box-sizing:border-box}html,body{margin:0;padding:0}html{scrollbar-gutter:stable;overflow-y:scroll}body{min-height:100vh;font-family:Inter,ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-feature-settings:"cv02","cv03","cv04","cv11";-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color:var(--text-primary);background:var(--surface-page);line-height:1.55}*{scrollbar-width:thin;scrollbar-color:var(--slate-300) transparent}*::-webkit-scrollbar{width:10px;height:10px}*::-webkit-scrollbar-track{background:transparent}*::-webkit-scrollbar-thumb{background:var(--slate-300);border-radius:var(--radius-pill);border:2px solid transparent;background-clip:content-box}*::-webkit-scrollbar-thumb:hover{background:var(--slate-400);background-clip:content-box}.admin-sidebar,.cache-value{scrollbar-color:rgba(255,255,255,.2) transparent}.admin-sidebar::-webkit-scrollbar-thumb,.cache-value::-webkit-scrollbar-thumb{background:#ffffff2e;background-clip:content-box}h1,h2,h3,h4{color:var(--text-primary);letter-spacing:-.01em;margin:0}h1{font-size:1.75rem;font-weight:700;letter-spacing:-.02em}h2{font-size:1.15rem;font-weight:600}h3{font-size:1rem;font-weight:600}p{margin:0}a{color:var(--brand-600);text-decoration:none;transition:color var(--dur) var(--ease-out)}a:hover{color:var(--brand-700)}code{font-family:JetBrains Mono,Fira Code,ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.85em;background:var(--slate-100);color:var(--slate-800);padding:.1em .35em;border-radius:var(--radius-xs)}::selection{background:var(--brand-200);color:var(--brand-900)}:focus-visible{outline:none;box-shadow:var(--ring);border-radius:var(--radius-sm)}.app{min-height:100vh}.loading{display:flex;align-items:center;justify-content:center;min-height:60vh;color:var(--text-tertiary);gap:.75rem;font-weight:500}.loading:before{content:"";width:18px;height:18px;border:2px solid var(--brand-200);border-top-color:var(--brand-600);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.landing{min-height:100vh;background:radial-gradient(1200px 600px at 90% -10%,rgba(99,102,241,.18),transparent 60%),radial-gradient(900px 500px at -10% 110%,rgba(59,130,246,.14),transparent 60%),linear-gradient(180deg,#fff,#f6f7fb);display:flex;flex-direction:column}.landing-nav{display:flex;justify-content:space-between;align-items:center;padding:1.25rem 2rem;max-width:1200px;width:100%;margin:0 auto}.landing-hero{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:3rem 2rem 4rem;max-width:1200px;margin:0 auto;width:100%}.landing-badge{display:inline-flex;align-items:center;gap:.5rem;padding:.35rem .8rem;border-radius:var(--radius-pill);background:#6366f11a;border:1px solid rgba(99,102,241,.2);color:var(--brand-700);font-size:.8rem;font-weight:500;margin-bottom:1.75rem}.landing-badge .dot{width:6px;height:6px;border-radius:50%;background:var(--brand-500);box-shadow:0 0 0 3px #6366f140}.landing h1{font-size:clamp(2rem,4vw,3.25rem);font-weight:700;letter-spacing:-.03em;max-width:780px;line-height:1.1;margin-bottom:1.25rem}.landing h1 .accent{background:linear-gradient(135deg,var(--brand-600) 0%,var(--accent-500) 100%);-webkit-background-clip:text;background-clip:text;color:transparent}.landing .lede{max-width:640px;color:var(--text-secondary);font-size:1.1rem;margin-bottom:2.25rem}.landing-actions{display:flex;gap:.75rem;flex-wrap:wrap;justify-content:center;margin-bottom:3.5rem}.landing-features{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1rem;width:100%;max-width:960px;margin-top:1rem}.landing-feature{background:var(--surface-card);border:1px solid var(--border-default);border-radius:var(--radius-lg);padding:1.25rem 1.25rem 1.5rem;text-align:left;box-shadow:var(--shadow-sm);transition:transform var(--dur) var(--ease-out),box-shadow var(--dur) var(--ease-out)}.landing-feature:hover{transform:translateY(-2px);box-shadow:var(--shadow-md)}.landing-feature .icon{width:36px;height:36px;display:inline-flex;align-items:center;justify-content:center;border-radius:var(--radius);background:linear-gradient(135deg,var(--brand-500),var(--accent-500));color:#fff;margin-bottom:.75rem}.landing-feature h3{margin-bottom:.25rem}.landing-feature p{color:var(--text-tertiary);font-size:.9rem;line-height:1.5}.brand-mark{display:inline-flex;align-items:center;gap:.55rem;font-weight:700;color:var(--text-primary);letter-spacing:-.01em;font-size:1.05rem}.brand-logo{width:30px;height:30px;border-radius:8px;background:linear-gradient(135deg,var(--brand-600) 0%,var(--accent-500) 100%);color:#fff;display:inline-flex;align-items:center;justify-content:center;box-shadow:0 4px 12px #4f46e559}.auth-shell{min-height:100vh;display:grid;grid-template-columns:1fr}@media(min-width:900px){.auth-shell{grid-template-columns:1.1fr 1fr}}.auth-brand{display:none;position:relative;padding:3rem;color:#fff;background:radial-gradient(600px 400px at 20% 20%,rgba(255,255,255,.12),transparent 60%),radial-gradient(500px 400px at 90% 90%,rgba(255,255,255,.08),transparent 60%),linear-gradient(135deg,var(--brand-700) 0%,var(--slate-900) 100%);overflow:hidden}@media(min-width:900px){.auth-brand{display:flex;flex-direction:column;justify-content:space-between}}.auth-brand .brand-mark{color:#fff}.auth-brand .brand-logo{background:#ffffff26;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);box-shadow:inset 0 0 0 1px #fff3}.auth-brand-pitch h2{font-size:1.85rem;color:#fff;letter-spacing:-.02em;line-height:1.2;margin-bottom:.75rem;font-weight:600}.auth-brand-pitch p{color:#ffffffbf;max-width:420px;line-height:1.6}.auth-brand-list{list-style:none;padding:0;margin:1.5rem 0 0;display:flex;flex-direction:column;gap:.65rem}.auth-brand-list li{display:flex;align-items:center;gap:.6rem;color:#ffffffd9;font-size:.95rem}.auth-brand-list li svg{color:var(--brand-300);flex-shrink:0}.auth-panel{display:flex;align-items:center;justify-content:center;padding:2.5rem 1.5rem;background:var(--surface-page)}.auth-card{width:100%;max-width:420px;background:var(--surface-card);border:1px solid var(--border-default);border-radius:var(--radius-xl);padding:2rem;box-shadow:var(--shadow-md)}.auth-card h1{font-size:1.5rem;margin-bottom:.35rem}.auth-card .subtitle{margin-bottom:1.75rem}.auth-card form{gap:1.1rem}.footer-link{margin-top:1.5rem;text-align:center;color:var(--text-tertiary);font-size:.9rem}.footer-link a{font-weight:600}form{display:flex;flex-direction:column;gap:1rem}label{display:flex;flex-direction:column;gap:.4rem;font-size:.875rem;font-weight:500;color:var(--text-secondary)}input,select,textarea{padding:.65rem .85rem;border:1px solid var(--border-strong);border-radius:var(--radius);font-size:.95rem;font-family:inherit;color:var(--text-primary);background:var(--surface-card);transition:border-color var(--dur) var(--ease-out),box-shadow var(--dur) var(--ease-out)}input::placeholder,textarea::placeholder{color:var(--slate-400)}input:hover,select:hover,textarea:hover{border-color:var(--slate-400)}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--brand-500);box-shadow:var(--ring)}.field-hint{display:block;margin-top:.4rem;font-size:.825rem;font-weight:400;color:var(--text-tertiary);line-height:1.5}button,.button{--btn-bg: var(--brand-600);--btn-bg-hover: var(--brand-700);--btn-fg: #ffffff;--btn-border: transparent;--btn-shadow: 0 1px 2px rgba(15, 23, 42, .12);display:inline-flex;align-items:center;justify-content:center;gap:.4rem;padding:.625rem 1rem;border:1px solid var(--btn-border);border-radius:var(--radius);background:var(--btn-bg);color:var(--btn-fg);font-family:inherit;font-size:.9rem;font-weight:600;line-height:1.2;cursor:pointer;text-decoration:none;box-shadow:var(--btn-shadow);transition:background-color var(--dur) var(--ease-out),color var(--dur) var(--ease-out),border-color var(--dur) var(--ease-out),transform var(--dur-fast) var(--ease-out),box-shadow var(--dur) var(--ease-out);white-space:nowrap}button:hover:not(:disabled),.button:hover{background:var(--btn-bg-hover)}button:active:not(:disabled),.button:active{transform:translateY(1px)}button:disabled,.button:disabled{opacity:.55;cursor:not-allowed;transform:none}button.secondary,.button.secondary,.secondary{--btn-bg: var(--surface-card);--btn-bg-hover: var(--slate-100);--btn-fg: var(--text-primary);--btn-border: var(--border-strong)}button.ghost,.button.ghost{--btn-bg: transparent;--btn-bg-hover: var(--slate-100);--btn-fg: var(--text-secondary);--btn-border: transparent;--btn-shadow: none}button.danger,.button.danger{--btn-bg: var(--danger-600);--btn-bg-hover: var(--danger-700);--btn-fg: #ffffff}button.small,.button.small{padding:.4rem .7rem;font-size:.8rem}.link-button{color:var(--brand-600);text-decoration:none;font-weight:600;font-size:.9rem;padding:.4rem .6rem;border-radius:var(--radius);transition:background var(--dur) var(--ease-out),color var(--dur) var(--ease-out);display:inline-flex;align-items:center;gap:.35rem}.link-button:hover{background:var(--brand-50);color:var(--brand-700)}.card{background:var(--surface-card);border:1px solid var(--border-default);border-radius:var(--radius-lg);padding:1.5rem;box-shadow:var(--shadow-sm);transition:box-shadow var(--dur) var(--ease-out)}.card:hover{box-shadow:var(--shadow-md)}.card h2{margin-bottom:.25rem}.card>.subtitle{margin-bottom:1rem}.subtitle{color:var(--text-tertiary);font-size:.9rem;margin:0}.page-header{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1.5rem;flex-wrap:wrap}.page-header h1{margin-bottom:.25rem}.page-header-actions{display:flex;gap:.5rem;flex-wrap:wrap}.topbar{position:sticky;top:0;z-index:20;background:#ffffffd9;backdrop-filter:saturate(180%) blur(10px);-webkit-backdrop-filter:saturate(180%) blur(10px);border-bottom:1px solid var(--border-default)}.topbar-inner{max-width:1200px;margin:0 auto;padding:.85rem 2rem;display:flex;align-items:center;justify-content:space-between;gap:1rem}.topbar-nav{display:flex;align-items:center;gap:.25rem}.topbar-nav a{color:var(--text-secondary);padding:.5rem .85rem;border-radius:var(--radius);font-weight:500;font-size:.9rem;transition:background var(--dur) var(--ease-out),color var(--dur) var(--ease-out)}.topbar-nav a:hover,.topbar-nav a.active{background:var(--slate-100);color:var(--text-primary)}.topbar-actions{display:flex;align-items:center;gap:.75rem}.user-chip{display:inline-flex;align-items:center;gap:.55rem;padding:.35rem .35rem .35rem .75rem;border:1px solid var(--border-default);border-radius:var(--radius-pill);background:var(--surface-muted);color:var(--text-secondary);font-size:.85rem;font-weight:500}.avatar{width:28px;height:28px;border-radius:50%;background:linear-gradient(135deg,var(--brand-500),var(--accent-500));color:#fff;font-size:.75rem;font-weight:700;display:inline-flex;align-items:center;justify-content:center;text-transform:uppercase;letter-spacing:.02em}.dashboard{max-width:1200px;margin:0 auto;padding:2rem}.dashboard-header{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:2rem;flex-wrap:wrap;gap:1rem}.dashboard-header h1{margin-bottom:.35rem}.dashboard-header p{color:var(--text-tertiary);font-size:.95rem}.header-actions{display:flex;gap:.5rem;align-items:center;flex-wrap:wrap}.dashboard-grid{display:grid;gap:1.5rem}@media(min-width:900px){.dashboard-grid{grid-template-columns:1fr 1.2fr}}.wallet-card{background:linear-gradient(135deg,var(--slate-900) 0%,var(--brand-800) 100%);color:#fff;border:none;position:relative;overflow:hidden;display:flex;flex-direction:column}.wallet-card:before{content:"";position:absolute;top:-60px;right:-60px;width:220px;height:220px;border-radius:50%;background:radial-gradient(closest-side,rgba(99,102,241,.35),transparent);pointer-events:none}.wallet-card h2{color:#ffffffbf;font-weight:500;font-size:.9rem;text-transform:uppercase;letter-spacing:.08em;margin-bottom:.5rem}.wallet-card .subtitle{color:#ffffffa6}.wallet-balance{font-size:clamp(2.25rem,5vw,3rem);font-weight:700;letter-spacing:-.02em;margin:.25rem 0 .5rem;color:#fff;line-height:1.1}.wallet-metrics{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:1.25rem;position:relative}.wallet-metric{display:flex;flex-direction:column;gap:.15rem;padding:.6rem .9rem;border-radius:var(--radius);background:#ffffff14;border:1px solid rgba(255,255,255,.1);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);min-width:130px}.wallet-metric .label{color:#ffffffa6;font-size:.72rem;text-transform:uppercase;letter-spacing:.06em;font-weight:500}.wallet-metric .value{color:#fff;font-size:1.05rem;font-weight:600;font-variant-numeric:tabular-nums}.wallet-actions{display:flex;gap:.5rem;margin-top:auto;padding-top:1.5rem;position:relative;flex-wrap:wrap}.wallet-card .button.on-dark{--btn-bg: rgba(255, 255, 255, .95);--btn-bg-hover: #ffffff;--btn-fg: var(--slate-900)}.wallet-card .button.on-dark-ghost{--btn-bg: rgba(255, 255, 255, .1);--btn-bg-hover: rgba(255, 255, 255, .18);--btn-fg: white;--btn-border: rgba(255, 255, 255, .2);--btn-shadow: none}.dash-section{display:flex;align-items:baseline;justify-content:space-between;gap:.75rem;margin:0 0 .85rem}.dash-section h2{font-size:1.05rem}.dash-section .subtitle{margin:0}.skeleton{display:block;border-radius:var(--radius-sm);background:linear-gradient(100deg,var(--slate-200) 30%,var(--slate-100) 50%,var(--slate-200) 70%);background-size:200% 100%;animation:shimmer 1.3s ease-in-out infinite}.skeleton.on-dark{background:linear-gradient(100deg,#ffffff1f 30%,#ffffff38,#ffffff1f 70%);background-size:200% 100%}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.payment-setup{margin-bottom:1rem}.checkout-wrapper{margin-top:1.5rem;padding-top:1.5rem;border-top:1px solid var(--border-default)}.checkout-form{margin-top:1rem}table{width:100%;border-collapse:separate;border-spacing:0;font-size:.875rem}thead th{text-align:left;padding:.7rem 1rem;background:var(--surface-muted);border-bottom:1px solid var(--border-default);color:var(--text-tertiary);font-size:.72rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;white-space:nowrap;position:sticky;top:0;z-index:1}tbody td{padding:.7rem 1rem;border-bottom:1px solid var(--border-subtle);color:var(--text-secondary);vertical-align:middle;font-variant-numeric:tabular-nums}tbody td strong{color:var(--text-primary);font-weight:600}tbody tr{transition:background var(--dur-fast) var(--ease-out)}tbody tr:nth-child(2n){background:color-mix(in srgb,var(--surface-muted) 55%,transparent)}tbody tr:hover{background:var(--brand-50)}tbody tr:last-child td{border-bottom:none}th.num,td.num{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}th.actions,td.actions{text-align:right;white-space:nowrap;width:1%}td .truncate{display:inline-block;max-width:240px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;vertical-align:bottom}td .cell-sub{display:block;color:var(--text-tertiary);font-size:.8rem;margin-top:.1rem}.card>table,.card>.table-scroll>table{margin-top:.5rem}.table-card{background:var(--surface-card);border:1px solid var(--border-default);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);overflow:hidden}.table-card .table-scroll{border:none;border-radius:0}.table-card table{font-size:.875rem}.table-card thead th{background:var(--surface-muted)}.table-toolbar{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.85rem 1rem;border-bottom:1px solid var(--border-default);background:var(--surface-card);flex-wrap:wrap}.table-toolbar h2,.table-toolbar h3{font-size:.95rem;margin:0}.table-count,.count-badge{display:inline-flex;align-items:center;gap:.35rem;font-size:.75rem;font-weight:600;color:var(--text-tertiary);background:var(--slate-100);border:1px solid var(--border-default);padding:.15rem .55rem;border-radius:var(--radius-pill);line-height:1.5}.page-title-row{display:flex;align-items:center;gap:.65rem}.page-title-row .count-badge{position:relative;top:1px}.table-card{--grid-radius: var(--radius-lg)}.table-card thead th{background:var(--surface-card);border-bottom:2px solid var(--border-default);padding-top:.85rem;padding-bottom:.85rem;color:var(--slate-500)}.table-card tbody td{padding:.8rem 1rem;color:var(--text-secondary)}.table-card tbody td:first-child{color:var(--text-primary)}.table-card tbody tr:nth-child(2n){background:transparent}.table-card tbody tr:hover{background:var(--slate-50)}.table-card tbody tr:not(:last-child) td{border-bottom:1px solid var(--border-subtle)}.table-card code{background:var(--surface-muted);border:1px solid var(--border-subtle);color:var(--slate-700)}.table-card.compact table{font-size:.8125rem}.table-card.compact thead th{padding:.5rem .75rem}.table-card.compact tbody td{padding:.4rem .75rem}.table-card.compact .status{padding:.1rem .4rem;font-size:.68rem}.table-card.compact button.small{padding:.25rem .55rem;font-size:.75rem}.table-card.compact .table-empty{padding:1.75rem 1rem}.table-empty{color:var(--text-tertiary);text-align:center;padding:3rem 1rem;font-size:.9rem}.table-empty .table-empty-icon{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:50%;background:var(--slate-100);color:var(--slate-400);margin-bottom:.75rem}.status{display:inline-flex;align-items:center;gap:.35rem;padding:.2rem .55rem;border-radius:var(--radius-pill);font-size:.72rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;border:1px solid transparent;line-height:1.4}.status:before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor;opacity:.65}.status-succeeded,.status-active,.status-credit{background:var(--success-50);color:var(--success-700);border-color:#16a34a33}.status-pending,.status-processing,.status-hold{background:var(--warning-50);color:var(--warning-800);border-color:#eab30840}.status-failed,.status-canceled,.status-past_due,.status-debit,.status-capture{background:var(--danger-50);color:var(--danger-800);border-color:#dc262633}.status-refunded,.status-partially_refunded,.status-release{background:var(--info-50);color:var(--info-700);border-color:#1d4ed833}.error{display:flex;align-items:flex-start;gap:.5rem;padding:.7rem .9rem;background:var(--danger-50);border:1px solid var(--danger-100);color:var(--danger-800);border-radius:var(--radius);font-size:.9rem;margin:0}.error:before{content:"!";flex-shrink:0;width:18px;height:18px;border-radius:50%;background:var(--danger-600);color:#fff;font-weight:700;font-size:.75rem;display:inline-flex;align-items:center;justify-content:center}.success{display:flex;align-items:flex-start;gap:.5rem;padding:.7rem .9rem;background:var(--success-50);border:1px solid var(--success-100);color:var(--success-700);border-radius:var(--radius);font-size:.9rem;margin:0}.success:before{content:"✓";flex-shrink:0;width:18px;height:18px;border-radius:50%;background:var(--success-600);color:#fff;font-weight:700;font-size:.75rem;display:inline-flex;align-items:center;justify-content:center}.empty{color:var(--text-tertiary);text-align:center;padding:2rem 1rem;border:1px dashed var(--border-default);border-radius:var(--radius);background:var(--surface-muted);font-size:.9rem}.admin-layout{display:grid;grid-template-columns:260px 1fr;min-height:100vh;background:var(--surface-page)}@media(max-width:900px){.admin-layout{grid-template-columns:1fr}}.admin-sidebar{background:var(--slate-950);color:var(--slate-300);padding:1.5rem 1rem;display:flex;flex-direction:column;position:sticky;top:0;height:100vh;overflow-y:auto;border-right:1px solid rgba(255,255,255,.05)}.admin-sidebar-brand{display:flex;align-items:center;gap:.65rem;padding:0 .5rem 1.25rem;border-bottom:1px solid rgba(255,255,255,.08);color:#fff;font-weight:700;font-size:1.05rem;letter-spacing:-.01em}.admin-sidebar-brand .brand-logo{width:32px;height:32px}.admin-sidebar-user{margin:1rem .5rem 1.25rem;padding:.65rem .75rem;border-radius:var(--radius);background:#ffffff0a;display:flex;align-items:center;gap:.6rem;color:#ffffffd9;font-size:.85rem;overflow:hidden}.admin-sidebar-user .avatar{width:32px;height:32px;flex-shrink:0}.admin-sidebar-user .name{color:#fff;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.admin-sidebar-user .role{color:#ffffff8c;font-size:.75rem;text-transform:uppercase;letter-spacing:.05em}.admin-sidebar nav{display:flex;flex-direction:column;gap:.15rem;flex:1}.admin-nav-group{padding:.85rem .75rem .25rem;color:#ffffff73;font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.08em}.admin-sidebar nav a{display:flex;align-items:center;gap:.65rem;color:#ffffffb3;text-decoration:none;padding:.55rem .75rem;border-radius:var(--radius);font-size:.9rem;font-weight:500;transition:background var(--dur) var(--ease-out),color var(--dur) var(--ease-out)}.admin-sidebar nav a svg{flex-shrink:0;color:#ffffff8c;transition:color var(--dur) var(--ease-out)}.admin-sidebar nav a:hover{background:#ffffff0f;color:#fff}.admin-sidebar nav a:hover svg{color:#ffffffe6}.admin-sidebar nav a.active{background:linear-gradient(135deg,#6366f140,#3b82f626);color:#fff;box-shadow:inset 0 0 0 1px #ffffff14}.admin-sidebar nav a.active svg{color:var(--brand-300)}.admin-sidebar-footer{margin-top:1rem;padding-top:1rem;border-top:1px solid rgba(255,255,255,.08);display:flex;flex-direction:column;gap:.35rem}.admin-sidebar-footer a{color:#ffffffa6;font-size:.85rem;padding:.5rem .75rem;border-radius:var(--radius);transition:background var(--dur) var(--ease-out),color var(--dur) var(--ease-out);display:flex;align-items:center;gap:.5rem}.admin-sidebar-footer a:hover{background:#ffffff0f;color:#fff}.admin-sidebar-footer button{--btn-bg: rgba(255, 255, 255, .06);--btn-bg-hover: rgba(255, 255, 255, .12);--btn-fg: white;--btn-border: rgba(255, 255, 255, .1);--btn-shadow: none;justify-content:flex-start;padding:.5rem .75rem;font-weight:500}.admin-content{padding:2rem 2.5rem;min-width:0}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;margin-top:0}.stat-card{background:var(--surface-card);border:1px solid var(--border-default);padding:1.25rem;border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);display:flex;flex-direction:column;gap:.5rem;transition:transform var(--dur) var(--ease-out),box-shadow var(--dur) var(--ease-out);position:relative;overflow:hidden}.stat-card:hover{transform:translateY(-1px);box-shadow:var(--shadow-md)}.stat-card .stat-icon{position:absolute;top:1rem;right:1rem;width:32px;height:32px;border-radius:var(--radius);background:var(--brand-50);color:var(--brand-600);display:inline-flex;align-items:center;justify-content:center}.stat-card .stat-label{color:var(--text-tertiary);font-size:.8rem;font-weight:500;text-transform:uppercase;letter-spacing:.05em}.stat-card .stat-value{font-size:1.75rem;font-weight:700;color:var(--text-primary);letter-spacing:-.02em;line-height:1.1}.stat-card .stat-hint{color:var(--text-tertiary);font-size:.8rem}.inline-form{display:flex;flex-wrap:wrap;gap:.65rem;margin:1rem 0 1.25rem;align-items:flex-end}.inline-form input,.inline-form select{flex:1;min-width:180px}.stacked-form{display:flex;flex-direction:column;gap:1rem;max-width:520px;margin:1rem 0 1.5rem;padding:1.25rem;background:var(--surface-card);border:1px solid var(--border-default);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm)}.stacked-form button{align-self:flex-start}.tab-bar{display:inline-flex;gap:.25rem;padding:.25rem;background:var(--slate-100);border-radius:var(--radius-md);margin:1rem 0 1.25rem}.tab-bar button{--btn-bg: transparent;--btn-bg-hover: rgba(15, 23, 42, .05);--btn-fg: var(--text-secondary);--btn-border: transparent;--btn-shadow: none;padding:.45rem .9rem;font-size:.85rem}.tab-bar button.active{--btn-bg: var(--surface-card);--btn-fg: var(--text-primary);--btn-shadow: var(--shadow-sm)}.data-explorer-grid{display:grid;grid-template-columns:280px 1fr;gap:1.25rem;align-items:start}@media(max-width:900px){.data-explorer-grid{grid-template-columns:1fr}}.data-explorer-sidebar,.data-explorer-panel{background:var(--surface-card);border:1px solid var(--border-default);border-radius:var(--radius-lg);padding:1rem;box-shadow:var(--shadow-sm)}.data-explorer-sidebar h2{font-size:.95rem;margin-bottom:.75rem}.data-explorer-panel{min-height:360px}.table-link{--btn-bg: var(--surface-muted);--btn-bg-hover: var(--slate-100);--btn-fg: var(--text-primary);--btn-border: transparent;--btn-shadow: none;display:flex;justify-content:space-between;align-items:center;width:100%;margin-bottom:.25rem;padding:.55rem .75rem;border:1px solid transparent;border-radius:var(--radius);font-weight:500;font-size:.875rem;text-align:left}.table-link.active{--btn-bg: var(--brand-50);--btn-fg: var(--brand-700);--btn-border: var(--brand-200)}.badge{font-size:.72rem;font-weight:600;background:var(--slate-200);color:var(--slate-700);padding:.15rem .5rem;border-radius:var(--radius-pill)}.table-link.active .badge{background:var(--brand-100);color:var(--brand-800)}.table-scroll{overflow:auto;max-width:100%;border:1px solid var(--border-default);border-radius:var(--radius)}.table-scroll table{min-width:100%}.table-scroll thead th{position:sticky;top:0;z-index:1}.table-scroll code{font-size:.8rem;white-space:pre-wrap;word-break:break-word;background:transparent;padding:0}.panel-header{margin-bottom:.75rem}.panel-header h2{font-size:1.1rem}.pager{display:flex;align-items:center;gap:1rem;margin-top:1rem;justify-content:flex-end;color:var(--text-tertiary);font-size:.85rem}.cache-key-list{margin-top:.75rem;max-height:420px;overflow:auto}.cache-status{display:inline-flex;align-items:center;gap:.4rem;font-size:.85rem;margin:.35rem 0 .75rem}.cache-status:before{content:"";width:8px;height:8px;border-radius:50%}.cache-status.ok{color:var(--success-700)}.cache-status.ok:before{background:var(--success-500);box-shadow:0 0 0 3px #22c55e33}.cache-status.error{color:var(--danger-700)}.cache-status.error:before{background:var(--danger-500);box-shadow:0 0 0 3px #ef444433}.cache-value{background:var(--slate-950);color:#e2e8f0;padding:1rem;border-radius:var(--radius);overflow:auto;max-height:480px;font-size:.85rem;border:1px solid rgba(255,255,255,.05);font-family:JetBrains Mono,ui-monospace,SFMono-Regular,Menlo,monospace}.key-reveal{background:linear-gradient(135deg,#fef9c3,#fef3c7);border:1px solid #fde047;padding:1rem 1.15rem;border-radius:var(--radius);margin:1rem 0 1.25rem;display:flex;flex-direction:column;gap:.5rem;color:var(--warning-800)}.key-reveal code{display:block;padding:.65rem .75rem;background:#0000000d;border-radius:var(--radius-sm);word-break:break-all;font-size:.85rem;color:var(--slate-900)}.plans-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1rem}.plan-card{border:1px solid var(--border-default);border-radius:var(--radius-lg);padding:1.25rem;background:var(--surface-card);box-shadow:var(--shadow-xs);transition:transform var(--dur) var(--ease-out),box-shadow var(--dur) var(--ease-out),border-color var(--dur) var(--ease-out);display:flex;flex-direction:column;gap:.5rem}.plan-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-md);border-color:var(--brand-300)}.plan-card h3{font-size:1.1rem;margin-bottom:.15rem}.plan-price{font-size:1.5rem;font-weight:700;color:var(--text-primary);letter-spacing:-.02em}.plan-price .interval{color:var(--text-tertiary);font-size:.9rem;font-weight:400;margin-left:.15rem}.plan-card button{margin-top:.5rem}.section-title{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin:1.75rem 0 .75rem}.section-title h2{margin:0}.spacer{flex:1}@media(prefers-reduced-motion:reduce){*,*:before,*:after{transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}}
