*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--bg-base: #080b14;--bg-surface: #0f1629;--bg-card: rgba(255, 255, 255, .04);--bg-card-hover: rgba(255, 255, 255, .07);--border: rgba(255, 255, 255, .08);--border-hover: rgba(255, 255, 255, .16);--accent-primary: #6c63ff;--accent-primary-glow: rgba(108, 99, 255, .4);--accent-secondary: #00d4b0;--accent-secondary-glow: rgba(0, 212, 176, .35);--accent-danger: #ff5b5b;--accent-warning: #f59e0b;--accent-success: #10b981;--text-primary: #f1f5f9;--text-secondary: #94a3b8;--text-muted: #475569;--gradient-brand: linear-gradient(135deg, #7b74ff 0%, #6c63ff 100%);--gradient-card: linear-gradient(135deg, rgba(108, 99, 255, .1) 0%, rgba(108, 99, 255, .03) 100%);--gradient-danger: linear-gradient(135deg, #ff5b5b, #e02020);--gradient-success: linear-gradient(135deg, #10b981, #059669);--radius-sm: 8px;--radius-md: 12px;--radius-lg: 16px;--radius-xl: 24px;--shadow-glow: 0 0 40px rgba(108, 99, 255, .15);--shadow-card: 0 4px 24px rgba(0,0,0,.4);--font: "Inter", -apple-system, BlinkMacSystemFont, sans-serif;--sidebar-width: 240px;--header-height: 64px}[data-theme=light]{--bg-base: #f4f6fb;--bg-surface: #ffffff;--bg-card: #ffffff;--bg-card-hover: #f8fafc;--border: #e2e8f0;--border-hover: #cbd5e1;--accent-primary: #6c63ff;--accent-primary-glow: rgba(108, 99, 255, .2);--accent-secondary: #0d9488;--accent-secondary-glow: rgba(13, 148, 136, .2);--accent-danger: #ef4444;--accent-warning: #d97706;--accent-success: #10b981;--text-primary: #0f172a;--text-secondary: #475569;--text-muted: #64748b;--gradient-brand: linear-gradient(135deg, #7b74ff 0%, #6c63ff 100%);--gradient-card: linear-gradient(180deg, #ffffff 0%, #f8fafc 100%);--gradient-danger: linear-gradient(135deg, #ef4444, #dc2626);--gradient-success: linear-gradient(135deg, #10b981, #059669);--shadow-glow: 0 4px 20px rgba(108, 99, 255, .08);--shadow-card: 0 4px 16px rgba(15, 23, 42, .06)}[data-theme=light] ::-webkit-scrollbar-thumb{background:#00000026}[data-theme=light] ::-webkit-scrollbar-thumb:hover{background:#00000040}[data-theme=light] .form-input,[data-theme=light] .form-select,[data-theme=light] .form-textarea{background:#f8fafc;border-color:#cbd5e1}[data-theme=light] .form-select{color-scheme:light}[data-theme=light] thead tr{background:#f8fafc}[data-theme=light] td{border-bottom-color:#f1f5f9}[data-theme=light] tbody tr:hover{background:#f8fafc}[data-theme=light] .modal-backdrop{background:#0f172a66}[data-theme=light] .modal{box-shadow:0 20px 25px -5px #0000001a,0 8px 10px -6px #0000001a}html{scroll-behavior:smooth}body{font-family:var(--font);background:var(--bg-base);color:var(--text-primary);min-height:100vh;line-height:1.6;-webkit-font-smoothing:antialiased}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#ffffff1f;border-radius:3px}::-webkit-scrollbar-thumb:hover{background:#fff3}.app-layout{display:flex;min-height:100vh}.sidebar{width:var(--sidebar-width);background:var(--bg-surface);border-right:1px solid var(--border);display:flex;flex-direction:column;position:fixed;top:0;left:0;height:100vh;z-index:100;transition:transform .3s ease}.sidebar-logo{min-height:var(--header-height);padding:.875rem 1.25rem .625rem;border-bottom:none;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:.35rem;box-sizing:border-box}.sidebar-logo-img{height:24px;max-height:26px;max-width:195px;width:auto;object-fit:contain;object-position:left center;display:block}.sidebar-logo-title{font-size:.65rem;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);line-height:1.2}.logo-icon{width:36px;height:36px;background:var(--gradient-brand);border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:1.1rem;box-shadow:0 0 20px var(--accent-primary-glow)}.logo-text{font-size:.95rem;font-weight:700;letter-spacing:-.02em;line-height:1.2}.logo-sub{font-size:.725rem;color:var(--text-muted);font-weight:500;margin-top:.1rem}.sidebar-nav{flex:1;padding:1rem 0;overflow-y:auto}.nav-section-label{font-size:.65rem;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);padding:.75rem 1.25rem .25rem}.nav-item{display:flex;align-items:center;gap:.75rem;padding:.625rem 1.25rem;color:var(--text-secondary);text-decoration:none;font-size:.875rem;font-weight:500;border-radius:0;transition:all .15s ease;cursor:pointer;border:none;background:none;width:100%;text-align:left;border-left:2px solid transparent}.nav-item:hover{color:var(--text-primary);background:var(--bg-card)}[data-theme=light] .nav-item:hover{color:var(--accent-primary)}[data-theme=light] .nav-item:hover .nav-icon{color:var(--accent-primary);opacity:1}.nav-item.active{color:var(--accent-primary);background:#6c63ff1a;border-left-color:var(--accent-primary)}.nav-item .nav-icon{width:16px;height:16px;flex-shrink:0;opacity:.8}.sidebar-user-block{display:flex;align-items:flex-start;gap:.75rem;padding:.375rem 1.25rem .125rem;width:100%;text-align:left;background:transparent;border:none;cursor:pointer;outline:none;border-radius:0;box-sizing:border-box}.sidebar-user-block:hover{background:transparent}.sidebar-user-email-row{display:flex;align-items:center;gap:.35rem;margin-top:2px;color:var(--text-muted);transition:color .15s ease}.sidebar-user-signout-icon{width:12px;height:12px;flex-shrink:0;color:var(--text-muted);transition:color .15s ease}.sidebar-user-email{font-size:.7rem;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--text-muted);transition:color .15s ease}.sidebar-user-block:hover .sidebar-user-email-row,.sidebar-user-block:hover .sidebar-user-signout-icon,.sidebar-user-block:hover .sidebar-user-email{color:var(--accent-primary)!important}.main-content{margin-left:var(--sidebar-width);flex:1;display:flex;flex-direction:column;min-height:100vh}.topbar{height:var(--header-height);display:flex;align-items:center;justify-content:space-between;padding:0 2rem;background:var(--bg-base);border-bottom:none;position:sticky;top:0;z-index:50}.topbar-header-group{display:flex;flex-direction:column;justify-content:center;transform:translateY(5px);gap:.15rem}.topbar-page-title{font-size:.95rem;font-weight:700;letter-spacing:-.02em;color:var(--text-primary);line-height:1.2;margin:0}.topbar-page-subtitle{font-size:.725rem;color:var(--text-muted);font-weight:500;margin:0}.topbar-right{display:flex;align-items:center;gap:1rem}.page-content{padding:1.25rem 2rem 2rem;flex:1}.page-actions-bar{display:flex;align-items:center;justify-content:flex-end;gap:.75rem;margin-bottom:1.25rem}.card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-lg);padding:1.5rem;transition:all .2s ease}.card:hover{border-color:var(--border-hover)}.card-gradient{background:var(--gradient-card);border:1px solid rgba(108,99,255,.15)}.card-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.25rem}.card-title{font-size:1rem;font-weight:600}.card-subtitle{font-size:.8rem;color:var(--text-secondary);margin-top:.15rem}.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1.25rem;margin-bottom:1.25rem}@media (max-width: 1024px){.stats-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width: 640px){.stats-grid{grid-template-columns:1fr}}.stat-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-lg);padding:1.25rem 1.5rem;position:relative;overflow:hidden;transition:all .2s ease}.stat-card:before{content:"";position:absolute;top:0;left:0;right:0;height:2px;background:var(--stat-stripe, var(--accent-primary))}.stat-card.stat-card-success:before{background:var(--accent-success)}.stat-value{font-size:2rem;font-weight:800;letter-spacing:-.04em;margin-bottom:.25rem}.stat-label{font-size:.8rem;color:var(--text-secondary);font-weight:500}.stat-change{font-size:.75rem;margin-top:.5rem;color:var(--accent-success)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;height:38px;box-sizing:border-box;padding:0 1.125rem;border-radius:var(--radius-sm);font-size:.875rem;font-weight:600;border:none;cursor:pointer;text-decoration:none;transition:all .2s ease;white-space:nowrap}.btn:disabled{opacity:.38!important;cursor:not-allowed!important;pointer-events:none!important;transform:none!important;box-shadow:none!important}.btn-primary{background:#6c63ff1f;color:var(--accent-primary);border:1px solid var(--accent-primary);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);transition:all .2s cubic-bezier(.4,0,.2,1)}.btn-primary:hover{background:var(--accent-primary);color:#fff;border-color:var(--accent-primary);box-shadow:0 4px 20px #6c63ff73;transform:translateY(-1px)}.btn-primary:active{transform:translateY(0);background:#5b52e0;border-color:#5b52e0;color:#fff;box-shadow:0 2px 8px #6c63ff4d}.btn-ghost{background:var(--bg-card);color:var(--text-secondary);border:1px solid var(--border)}.btn-ghost:hover{background:var(--bg-card-hover);color:var(--text-primary);border-color:var(--border-hover)}.btn-static:hover,.btn-static:active{transform:none!important;box-shadow:none!important}.btn-static.btn-primary:hover,.btn-static.btn-primary:active{background:#6c63ff1f!important;color:var(--accent-primary)!important;border-color:var(--accent-primary)!important}.btn-static.btn-ghost:hover,.btn-static.btn-ghost:active{background:var(--bg-card)!important;color:var(--text-secondary)!important;border-color:var(--border)!important}.btn-danger{background:#e840401f;color:#ff5b5b;border:1px solid rgba(232,64,64,.45);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);transition:all .2s cubic-bezier(.4,0,.2,1)}.btn-danger:hover{background:#e84040;color:#fff;border-color:#e84040;box-shadow:0 4px 18px #e8404073;transform:translateY(-1px)}.btn-danger:active{transform:translateY(0);background:#d03535;border-color:#d03535}.btn-success{background:#10b9811f;color:#10b981;border:1px solid rgba(16,185,129,.45);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);transition:all .2s cubic-bezier(.4,0,.2,1)}.btn-success:hover{background:#10b981;color:#fff;border-color:#10b981;box-shadow:0 4px 18px #10b98173;transform:translateY(-1px)}.btn-success:active{transform:translateY(0);background:#0e9f6e;border-color:#0e9f6e}.btn-sm{padding:.375rem .75rem;font-size:.8rem}.btn-circle,.table-actions .btn-sm{width:32px;height:32px;min-width:32px;max-width:32px;padding:0!important;border-radius:50%!important;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.btn-circle:hover,.table-actions .btn-sm:hover{transform:translateY(-1px) scale(1.06)}.btn-circle:active,.table-actions .btn-sm:active{transform:translateY(0) scale(.96)}.btn-circle:disabled,.table-actions .btn-sm:disabled{transform:none!important;box-shadow:none!important}.table-actions{display:flex;gap:.45rem;justify-content:flex-end;align-items:center}.badge{display:inline-flex;align-items:center;gap:.25rem;padding:.2rem .625rem;border-radius:2rem;font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em}.badge-success{background:#10b98126;color:#10b981;border:1px solid rgba(16,185,129,.2)}.badge-warning{background:#f59e0b26;color:#f59e0b;border:1px solid rgba(245,158,11,.2)}.badge-danger{background:#ef444426;color:#ef4444;border:1px solid rgba(239,68,68,.2)}.badge-primary{background:#6c63ff26;color:var(--accent-primary);border:1px solid rgba(108,99,255,.2)}.badge-secondary,.badge-muted,.badge-lost{background:#e2e8f0;color:#0f172a;border:1px solid #cbd5e1}[data-theme=dark] .badge-secondary,[data-theme=dark] .badge-muted,[data-theme=dark] .badge-lost{background:#ffffff1f;color:#f1f5f9;border:1px solid rgba(255,255,255,.2)}.table-container{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-lg);overflow-x:auto;max-width:100%}.table-container:has(.sticky-table-header){border:none;background:transparent}.table-container:has(.sticky-table-header) table{background:transparent}.table-container:has(.sticky-table-header) tbody td{background:var(--bg-card)}.table-container:has(.sticky-table-header) tbody tr:hover td{background:#ffffff06}[data-theme=light] .table-container:has(.sticky-table-header) tbody tr:hover td{background:#f8fafc}table{width:100%;border-collapse:separate;border-spacing:0}.table-container>table,.table-wrapper>table{border-top-left-radius:calc(var(--radius-lg) - 1px);border-top-right-radius:calc(var(--radius-lg) - 1px)}.table-header{display:flex;align-items:center;justify-content:space-between;padding:1.25rem 1.5rem;border-bottom:1px solid var(--border)}thead tr{background:#ffffff05}th{text-align:left;padding:.875rem 1.25rem;font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.07em;color:var(--text-muted);border-bottom:1px solid var(--border)}.table-container thead tr:first-child th:first-child,.table-wrapper thead tr:first-child th:first-child{border-top-left-radius:calc(var(--radius-lg) - 1px)}.table-container thead tr:first-child th:last-child,.table-wrapper thead tr:first-child th:last-child{border-top-right-radius:calc(var(--radius-lg) - 1px)}.sticky-table-header{position:sticky;top:calc(var(--header-height) + 78px);z-index:30}.sticky-table-header th{position:sticky;top:calc(var(--header-height) + 78px);z-index:30;background:var(--bg-surface);border-top:1px solid var(--border);border-bottom:1px solid var(--border)}.sticky-table-header th:first-child{border-left:1px solid var(--border);border-top-left-radius:calc(var(--radius-lg) - 1px);background-clip:padding-box}.sticky-table-header th:last-child{border-right:1px solid var(--border);border-top-right-radius:calc(var(--radius-lg) - 1px);background-clip:padding-box}[data-theme=light] .sticky-table-header th{background:#f8fafc}.sticky-table-header-kpi,.sticky-table-header-kpi th{top:calc(var(--header-height) + 243px)}.sticky-table-header-business-tx,.sticky-table-header-business-tx th{top:calc(var(--header-height) + 198px)}td{padding:1rem 1.25rem;font-size:.875rem;border-bottom:1px solid rgba(255,255,255,.04);vertical-align:middle}.table-container:has(.sticky-table-header) tbody td:first-child{border-left:1px solid var(--border)}.table-container:has(.sticky-table-header) tbody td:last-child{border-right:1px solid var(--border)}.table-container tbody tr:last-child td:first-child,.table-wrapper tbody tr:last-child td:first-child{border-bottom-left-radius:calc(var(--radius-lg) - 1px)}.table-container tbody tr:last-child td:last-child,.table-wrapper tbody tr:last-child td:last-child{border-bottom-right-radius:calc(var(--radius-lg) - 1px)}.table-container:has(.sticky-table-header) tbody tr:last-child td:first-child{border-bottom-left-radius:var(--radius-lg)}.table-container:has(.sticky-table-header) tbody tr:last-child td:last-child{border-bottom-right-radius:var(--radius-lg)}tbody tr{transition:background .15s ease}tbody tr:last-child td{border-bottom:none}.table-container:has(.sticky-table-header) tbody tr:last-child td{border-bottom:1px solid var(--border)}.form-group{margin-bottom:1.25rem}.form-label{display:block;font-size:.8rem;font-weight:600;color:var(--text-secondary);margin-bottom:.5rem}.form-input,.form-select{width:100%;height:38px;background:#ffffff0a;border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-primary);padding:0 .875rem;font-size:.875rem;font-family:var(--font);transition:all .15s ease;outline:none;box-sizing:border-box}.form-textarea{width:100%;background:#ffffff0a;border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-primary);padding:.75rem 1rem;font-size:.875rem;font-family:var(--font);transition:all .15s ease;outline:none;box-sizing:border-box;resize:vertical;min-height:80px}.form-input:focus,.form-select:focus,.form-textarea:focus{border-color:var(--accent-primary);background:#6c63ff0f;box-shadow:0 0 0 3px #6c63ff1f}.form-select option{background:var(--bg-surface);color:var(--text-primary)}.form-select{color-scheme:dark;cursor:pointer;-webkit-appearance:auto;-moz-appearance:auto;appearance:auto}input[type=date],input[type=datetime-local],input[type=time]{color-scheme:dark}[data-theme=light] input[type=date],[data-theme=light] input[type=datetime-local],[data-theme=light] input[type=time]{color-scheme:light}.form-checkbox{-moz-appearance:none;appearance:none;-webkit-appearance:none;width:18px;height:18px;border:1.5px solid var(--border-hover, rgba(255, 255, 255, .25));border-radius:5px;background:#ffffff0d;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;position:relative;transition:all .2s cubic-bezier(.4,0,.2,1);outline:none;flex-shrink:0;vertical-align:middle}.form-checkbox:hover{border-color:var(--accent-primary);background:#6c63ff1f}.form-checkbox:checked{background:var(--accent-primary);border-color:var(--accent-primary);box-shadow:0 0 10px #6c63ff59}.form-checkbox:checked:after{content:"";width:4px;height:8px;border:solid #ffffff;border-width:0 2px 2px 0;transform:rotate(45deg) translate(-1px,-1px);position:absolute}.form-checkbox:focus-visible{box-shadow:0 0 0 3px #6c63ff40}[data-theme=light] .form-checkbox{background:#fff;border-color:#cbd5e1}[data-theme=light] .form-checkbox:checked{background:var(--accent-primary);border-color:var(--accent-primary)}.form-textarea{resize:vertical;min-height:80px}input[type=number]::-webkit-outer-spin-button,input[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}input[type=number]{-moz-appearance:textfield}.form-grid-2{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.form-grid-3{display:grid;grid-template-columns:1fr 1fr 1fr;gap:1rem}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#0009;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:200;display:flex;align-items:center;justify-content:center;padding:1rem;animation:fadeIn .15s ease}.modal{background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-xl);padding:2rem;width:100%;max-width:560px;max-height:90vh;overflow-y:auto;animation:slideUp .2s ease}.modal-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.5rem}.modal-title{font-size:1.1rem;font-weight:700}.modal-close{background:none;border:none;color:var(--text-muted);cursor:pointer;padding:.25rem}.modal-close:hover{color:var(--text-primary)}.modal-footer{display:flex;align-items:center;justify-content:flex-end;gap:.75rem;margin-top:1.5rem}.toggle{position:relative;display:inline-block;width:40px;height:22px}.toggle input{opacity:0;width:0;height:0}.toggle-slider{position:absolute;cursor:pointer;top:0;right:0;bottom:0;left:0;background:#ffffff1a;border-radius:22px;transition:.3s}.toggle-slider:before{content:"";position:absolute;width:16px;height:16px;left:3px;bottom:3px;background:#fff;border-radius:50%;transition:.3s}.toggle input:checked+.toggle-slider{background:var(--accent-primary)}.toggle input:checked+.toggle-slider:before{transform:translate(18px)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.skeleton{background:linear-gradient(90deg,#ffffff0a 25%,#ffffff14,#ffffff0a 75%);background-size:200% 100%;animation:shimmer 1.5s infinite;border-radius:var(--radius-sm)}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.divider{height:1px;background:var(--border);margin:1.5rem 0}.text-success{color:var(--accent-success)}.text-danger{color:var(--accent-danger)}.text-muted{color:var(--text-muted)}.text-secondary{color:var(--text-secondary)}.font-mono{font-family:JetBrains Mono,monospace}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:4rem 2rem;color:var(--text-muted);width:100%;margin:0 auto}.empty-state-icon{display:flex;align-items:center;justify-content:center;font-size:3rem;margin:0 auto 1rem;opacity:.85;text-align:center;width:100%}.empty-state-icon>span,.empty-state-icon>svg{display:inline-flex;align-items:center;justify-content:center;margin:0 auto}.empty-state h3{font-size:1.05rem;color:var(--text-primary);margin-bottom:.5rem;text-align:center}.empty-state p{font-size:.875rem;color:var(--text-secondary);text-align:center;max-width:480px;margin:0 auto}.wave-dot{width:8px;height:8px;border-radius:50%;display:inline-block;margin-right:.375rem}.wave-dot-offered{background:var(--accent-warning);box-shadow:0 0 6px var(--accent-warning);animation:pulse 2s infinite}.wave-dot-purchased{background:var(--accent-success)}.wave-dot-expired,.wave-dot-skipped{background:var(--text-muted)}@media (max-width: 768px){.sidebar{transform:translate(-100%)}.sidebar.open{transform:translate(0)}.main-content{margin-left:0}.stats-grid{grid-template-columns:1fr 1fr}.form-grid-2,.form-grid-3{grid-template-columns:1fr}}.auth-root{min-height:100vh;display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden;font-family:Inter,system-ui,sans-serif;transition:background .4s ease}.auth-light{background:#f8faff;color:#1e293b}.auth-dark{background:#080b14;color:#f1f5f9}.auth-header-controls{position:fixed;top:1.25rem;right:1.25rem;z-index:100}.auth-card{position:relative;z-index:10;width:100%;max-width:420px;padding:2.25rem 2rem;border-radius:1.25rem;display:flex;flex-direction:column;gap:1.125rem;transition:background .4s,box-shadow .4s}.auth-light .auth-card{background:#ffffffd9;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.7);box-shadow:0 24px 60px #6366f11f,0 4px 16px #00000014}.auth-dark .auth-card{background:#0f1629b8;-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px);border:1px solid rgba(255,255,255,.08);box-shadow:0 24px 60px #00000080,0 0 60px #6c63ff1f}.auth-logo-row{display:flex;align-items:center;justify-content:center;margin-bottom:1.5rem}.auth-logo-img{height:24px;max-height:26px;max-width:195px;width:auto;object-fit:contain;display:block}.auth-title{font-size:1.5rem;font-weight:700;letter-spacing:-.03em;line-height:1.2;margin:0}.auth-subtitle{font-size:.875rem;margin:-.5rem 0 0}.auth-light .auth-subtitle{color:#64748b}.auth-dark .auth-subtitle{color:#94a3b8}.auth-form{display:flex;flex-direction:column;gap:1rem}.auth-field{display:flex;flex-direction:column;gap:.375rem}.auth-label-row{display:flex;justify-content:space-between;align-items:baseline}.auth-label{font-size:.8125rem;font-weight:500}.auth-light .auth-label{color:#374151}.auth-dark .auth-label{color:#cbd5e1}.auth-input-wrapper{position:relative}.auth-input{width:100%;padding:.65rem .875rem;border-radius:.625rem;font-size:.875rem;outline:none;transition:border-color .2s,box-shadow .2s}.auth-light .auth-input{background:#ffffffe6;border:1.5px solid #e2e8f0;color:#1e293b}.auth-dark .auth-input{background:#ffffff0d;border:1.5px solid rgba(255,255,255,.1);color:#f1f5f9}.auth-light .auth-input::placeholder{color:#94a3b8}.auth-dark .auth-input::placeholder{color:#475569}.auth-light .auth-input:focus{border-color:#6366f1;box-shadow:0 0 0 3px #6366f126}.auth-dark .auth-input:focus{border-color:#6c63ff;box-shadow:0 0 0 3px #6c63ff33}.auth-input:read-only,.auth-input:disabled{cursor:not-allowed;opacity:.85}.auth-light .auth-input:read-only,.auth-light .auth-input:disabled{background:#f1f5f9;border-color:#e2e8f0;color:#64748b}.auth-dark .auth-input:read-only,.auth-dark .auth-input:disabled{background:#ffffff08;border-color:#ffffff14;color:#94a3b8}.auth-light .auth-input:read-only:focus,.auth-dark .auth-input:read-only:focus{border-color:inherit;box-shadow:none}.auth-input-icon-right{padding-right:2.5rem}.auth-input-icon-left{padding-left:2.5rem}.auth-eye-btn{position:absolute;right:.75rem;top:50%;transform:translateY(-50%);background:none;border:none;cursor:pointer;padding:.25rem;border-radius:.25rem;display:flex;align-items:center}.auth-light .auth-eye-btn{color:#94a3b8}.auth-dark .auth-eye-btn{color:#475569}.auth-eye-btn:hover{color:#6366f1}.auth-input-left-icon{position:absolute;left:.75rem;top:50%;transform:translateY(-50%);pointer-events:none}.auth-light .auth-input-left-icon{color:#94a3b8}.auth-dark .auth-input-left-icon{color:#475569}.auth-btn-primary{width:100%;padding:.7rem 1rem;border-radius:.625rem;border:none;cursor:pointer;font-size:.9rem;font-weight:600;display:flex;align-items:center;justify-content:center;gap:.5rem;background:linear-gradient(135deg,#7b74ff,#6c63ff);color:#fff;transition:opacity .2s,transform .15s,box-shadow .2s;box-shadow:0 4px 14px #6c63ff66}.auth-btn-primary:hover:not(:disabled){opacity:.92;transform:translateY(-1px);box-shadow:0 6px 20px #6c63ff80}.auth-btn-primary:disabled{opacity:.55;cursor:not-allowed}.auth-btn-google{width:100%;padding:.65rem 1rem;border-radius:.625rem;cursor:pointer;font-size:.875rem;font-weight:500;display:flex;align-items:center;justify-content:center;gap:.5rem;transition:background .2s,transform .15s,opacity .2s}.auth-light .auth-btn-google{background:#fff;border:1.5px solid #e2e8f0;color:#374151;box-shadow:0 1px 4px #00000012}.auth-dark .auth-btn-google{background:#ffffff12;border:1.5px solid rgba(255,255,255,.1);color:#e2e8f0}.auth-btn-google:hover:not(:disabled){transform:translateY(-1px)}.auth-btn-google:disabled{opacity:.45;cursor:not-allowed;filter:grayscale(.9);transform:none!important;box-shadow:none!important}.auth-light .auth-btn-google:disabled{background:#f1f5f9;border-color:#e2e8f0;color:#94a3b8}.auth-dark .auth-btn-google:disabled{background:#ffffff08;border-color:#ffffff0f;color:#64748b}.auth-btn-spinner{display:inline-block;width:16px;height:16px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .7s linear infinite}.auth-spinner{display:inline-block;width:40px;height:40px;border:3px solid rgba(108,99,255,.2);border-top-color:#6c63ff;border-radius:50%;animation:spin .7s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.spin{animation:spin .6s linear infinite}.auth-divider{display:flex;align-items:center;gap:.75rem;font-size:.8rem}.auth-divider:before,.auth-divider:after{content:"";flex:1;height:1px}.auth-light .auth-divider:before,.auth-light .auth-divider:after{background:#e2e8f0}.auth-dark .auth-divider:before,.auth-dark .auth-divider:after{background:#ffffff1a}.auth-light .auth-divider{color:#94a3b8}.auth-dark .auth-divider{color:#475569}.auth-link{color:#6366f1;text-decoration:none;font-weight:500;transition:opacity .15s}.auth-link:hover{opacity:.8;text-decoration:underline}.auth-forgot-link{font-size:.8rem}.auth-back-link{display:inline-flex;align-items:center;gap:.375rem;font-size:.875rem}.auth-footer-text{font-size:.8125rem;text-align:center}.auth-light .auth-footer-text,.auth-dark .auth-footer-text{color:#64748b}.auth-error-banner{display:flex;align-items:center;gap:.5rem;padding:.65rem .875rem;border-radius:.625rem;font-size:.8125rem;font-weight:500;background:#ef44441f;border:1px solid rgba(239,68,68,.25);color:#ef4444}.auth-success-banner{display:flex;align-items:flex-start;gap:.5rem;padding:.75rem .875rem;border-radius:.625rem;font-size:.8125rem;background:#10b9811a;border:1px solid rgba(16,185,129,.25);color:#10b981}.auth-reset-url-box{margin-top:.5rem}.auth-reset-url-label{font-weight:600;margin-bottom:.25rem;color:currentColor}.users-toolbar{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:1rem;flex-wrap:wrap}.users-search-group{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.users-action-group{display:flex;align-items:center;gap:.5rem}.users-toast{position:fixed;top:1.25rem;right:1.25rem;z-index:9999;display:flex;align-items:center;gap:.5rem;padding:.65rem 1rem;border-radius:.625rem;font-size:.875rem;font-weight:500;animation:slideInRight .3s ease;box-shadow:0 8px 24px #0000004d}.users-toast-success{background:#064e3b;color:#10b981;border:1px solid rgba(16,185,129,.3)}.users-toast-error{background:#450a0a;color:#ef4444;border:1px solid rgba(239,68,68,.3)}@keyframes slideInRight{0%{opacity:0;transform:translate(24px)}to{opacity:1;transform:translate(0)}}.user-cell{display:flex;align-items:center;gap:.625rem}.user-name{font-weight:500;font-size:.875rem;display:flex;align-items:center;gap:.375rem}.user-email{font-size:.75rem;color:var(--text-muted)}.google-badge{font-size:.65rem;font-weight:700;background:#4285f4;color:#fff;padding:.1rem .35rem;border-radius:.25rem;letter-spacing:.05em}.role-badge{font-size:.7rem;font-weight:600;color:#fff;padding:.2rem .55rem;border-radius:9999px;text-transform:capitalize;white-space:nowrap}.status-badge{font-size:.75rem;font-weight:600;padding:.2rem .55rem;border-radius:9999px}.status-active{background:#10b98126;color:#10b981}.status-suspended{background:#ef44441f;color:#ef4444}.verified-badge{display:inline-flex;align-items:center;gap:.25rem;font-size:.75rem;color:#10b981}.unverified-badge{display:inline-flex;align-items:center;gap:.25rem;font-size:.75rem;color:#f59e0b}.table-row-muted{opacity:.55}.table-date{font-size:.8rem;color:var(--text-muted)}.btn-icon-warn{color:#f59e0b!important}.btn-icon-success{color:#10b981!important}.pagination-row{display:flex;align-items:center;justify-content:space-between;padding:.75rem 0;gap:.75rem;flex-wrap:wrap}.pagination-info{font-size:.8rem;color:var(--text-muted)}.pagination-controls{display:flex;align-items:center;gap:.5rem}.pagination-page{font-size:.8rem;color:var(--text-secondary)}.btn-sm{padding:.35rem .65rem!important;font-size:.8rem!important}.modal-wide{max-width:700px!important}.modal-two-col{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem}.modal-col{display:flex;flex-direction:column;gap:.75rem}.modal-section-title{font-size:.8rem;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.06em;display:flex;align-items:center;gap:.375rem;padding-bottom:.5rem;border-bottom:1px solid var(--border);margin-bottom:.25rem}.form-field-row{flex-direction:row!important;align-items:center;justify-content:space-between}.form-label-optional{font-weight:400;color:var(--text-muted);font-size:.75rem}.form-hint{font-size:.8rem;color:var(--text-muted)}.form-select-sm{padding:.35rem .5rem!important;font-size:.8rem!important}.membership-global-notice{font-size:.8125rem;color:#6366f1;background:#6366f11a;border:1px solid rgba(99,102,241,.2);border-radius:.5rem;padding:.65rem .75rem}.membership-empty{font-size:.8125rem;color:var(--text-muted);font-style:italic}.membership-row{display:flex;align-items:center;justify-content:space-between;padding:.5rem .625rem;border-radius:.5rem;background:#ffffff08;border:1px solid var(--border)}.membership-info{display:flex;align-items:center;gap:.5rem}.membership-biz{font-size:.8125rem;font-weight:500}.membership-role-badge{font-size:.7rem;font-weight:600;background:#6366f126;color:#818cf8;padding:.15rem .45rem;border-radius:9999px}.membership-add-row{display:flex;gap:.5rem;align-items:center;margin-top:.5rem}[data-tooltip]{position:relative}[data-tooltip]:hover{z-index:200!important}tr:has([data-tooltip]:hover),td:has([data-tooltip]:hover){position:relative;z-index:190}.stat-card:has([data-tooltip]){overflow:visible}[data-tooltip]:before,[data-tooltip]:after{position:absolute;opacity:0;visibility:hidden;pointer-events:none;-webkit-user-select:none;user-select:none;transition:opacity .18s cubic-bezier(.16,1,.3,1),transform .18s cubic-bezier(.16,1,.3,1);z-index:210!important}[data-tooltip=""]:before,[data-tooltip=""]:after,[data-tooltip=undefined]:before,[data-tooltip=undefined]:after{display:none!important}[data-tooltip]:after{content:attr(data-tooltip);bottom:calc(100% + 7px);left:50%;transform:translate(-50%) translateY(4px);background:#0f1629!important;color:#f1f5f9!important;border:1px solid rgba(255,255,255,.18)!important;padding:.35rem .65rem!important;border-radius:8px!important;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif!important;font-size:.72rem!important;font-weight:400!important;line-height:1.35!important;width:max-content!important;max-width:min(340px,85vw)!important;white-space:pre-line!important;text-align:left!important;letter-spacing:normal!important;text-transform:none!important;box-shadow:0 16px 36px -4px #0009,0 4px 14px -2px #0000004d!important;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px)}[data-theme=light] [data-tooltip]:after{background:#fff!important;color:#0f172a!important;border:1px solid #cbd5e1!important;box-shadow:0 12px 28px -4px #0f172a24,0 4px 10px -2px #0f172a0f!important}[data-tooltip]:before{content:"";bottom:calc(100% + 2px);left:50%;transform:translate(-50%) translateY(4px);border-width:5px 5px 0 5px;border-style:solid;border-color:rgba(255,255,255,.18) transparent transparent transparent!important}[data-theme=light] [data-tooltip]:before{border-color:#cbd5e1 transparent transparent transparent!important}[data-tooltip]:hover:before,[data-tooltip]:hover:after{opacity:1;visibility:visible;transform:translate(-50%) translateY(0)}[data-tooltip-pos=left]:after{bottom:auto;top:50%;left:auto;right:calc(100% + 7px);transform:translateY(-50%) translate(4px)}[data-tooltip-pos=left]:before{bottom:auto;top:50%;left:auto;right:calc(100% + 2px);transform:translateY(-50%) translate(4px);border-width:5px 0 5px 5px;border-color:transparent transparent transparent rgba(255,255,255,.18)!important}[data-theme=light] [data-tooltip-pos=left]:before{border-color:transparent transparent transparent #cbd5e1!important}[data-tooltip-pos=left]:hover:before,[data-tooltip-pos=left]:hover:after{transform:translateY(-50%) translate(0)}[data-tooltip-pos=bottom]:after{bottom:auto;top:calc(100% + 7px);transform:translate(-50%) translateY(-4px)}[data-tooltip-pos=bottom]:before{bottom:auto;top:calc(100% + 2px);transform:translate(-50%) translateY(-4px);border-width:0 5px 5px 5px;border-color:transparent transparent rgba(255,255,255,.18) transparent!important}[data-theme=light] [data-tooltip-pos=bottom]:before{border-color:transparent transparent #cbd5e1 transparent!important}[data-tooltip-pos=bottom]:hover:before,[data-tooltip-pos=bottom]:hover:after{transform:translate(-50%) translateY(0)}[data-tooltip-pos=right]:after{bottom:auto;top:50%;left:calc(100% + 7px);transform:translateY(-50%) translate(-4px)}[data-tooltip-pos=right]:before{bottom:auto;top:50%;left:calc(100% + 2px);transform:translateY(-50%) translate(-4px);border-width:5px 5px 5px 0;border-color:transparent rgba(255,255,255,.18) transparent transparent!important}[data-theme=light] [data-tooltip-pos=right]:before{border-color:transparent #cbd5e1 transparent transparent!important}[data-tooltip-pos=right]:hover:before,[data-tooltip-pos=right]:hover:after{transform:translateY(-50%) translate(0)}.chart-tooltip{background:#0f1629f0;color:#f8fafc;border:1px solid rgba(255,255,255,.14);border-radius:8px;padding:.4rem .65rem;box-shadow:0 10px 25px -3px #00000080,0 4px 6px -2px #0000004d;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}[data-theme=light] .chart-tooltip{background:#fffffff5;color:#0f172a;border-color:#cbd5e1;box-shadow:0 10px 25px -4px #0f172a1f,0 4px 6px -2px #0f172a0d}.business-popover-anchor{position:relative;display:inline-flex}.business-popover-dropdown{position:absolute;bottom:calc(100% + 8px);left:50%;transform:translate(-50%) translateY(4px);opacity:0;visibility:hidden;pointer-events:none;transition:opacity .18s cubic-bezier(.16,1,.3,1),transform .18s cubic-bezier(.16,1,.3,1);z-index:1000;background:var(--bg-surface, #0f1629);border:1px solid var(--border-hover, rgba(255, 255, 255, .18));border-radius:10px;padding:.75rem .85rem;min-width:320px;max-width:540px;width:max-content;box-shadow:0 16px 36px -4px #00000080,0 4px 14px -2px #0000004d;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);text-align:left;cursor:default}[data-theme=light] .business-popover-dropdown{background:#fff;border-color:#cbd5e1;box-shadow:0 16px 36px -4px #0f172a26,0 4px 14px -2px #0f172a14}.business-popover-dropdown:after{content:"";position:absolute;top:100%;left:50%;transform:translate(-50%);border-width:6px 6px 0 6px;border-style:solid;border-color:var(--border-hover, rgba(255, 255, 255, .18)) transparent transparent transparent}[data-theme=light] .business-popover-dropdown:after{border-color:#cbd5e1 transparent transparent transparent}.business-popover-anchor:hover .business-popover-dropdown{opacity:1;visibility:visible;pointer-events:auto;transform:translate(-50%) translateY(0)}.business-popover-header{display:flex;align-items:center;gap:.45rem;font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);margin-bottom:.5rem;padding-bottom:.4rem;border-bottom:1px solid var(--border)}.business-popover-list{display:flex;flex-direction:column;gap:.35rem;max-height:280px;overflow-y:auto}.business-popover-item{display:flex;align-items:center;gap:.45rem;background:var(--bg-card-hover, rgba(255, 255, 255, .06));border:1px solid var(--border, rgba(255, 255, 255, .12));border-radius:5px;padding:.3rem .6rem;font-size:.72rem;font-weight:500;color:var(--text-primary);line-height:1.35}[data-theme=light] .business-popover-item{background:#f8fafc;border-color:#e2e8f0}.business-popover-name{white-space:normal;word-break:break-word}
