@import"https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap";*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}:root{--primary: #4F46E5;--primary-dark: #3730A3;--primary-mid: #6366F1;--primary-light: #EEF2FF;--primary-glow: rgba(79, 70, 229, .28);--primary-glow-lg: rgba(79, 70, 229, .14);--success: #10B981;--success-dark: #059669;--success-light: #D1FAE5;--warning: #F59E0B;--warning-dark: #D97706;--warning-light: #FEF3C7;--danger: #EF4444;--danger-dark: #DC2626;--danger-light: #FEE2E2;--info: #3B82F6;--info-dark: #2563EB;--info-light: #DBEAFE;--purple: #8B5CF6;--purple-dark: #7C3AED;--purple-light: #EDE9FE;--background: #F0F4FF;--surface: #FFFFFF;--surface-2: #F8FAFF;--surface-hover: #F1F5FF;--border: #E2E8F4;--border-strong: #C7D2E8;--text-primary: #0F172A;--text-secondary: #475569;--text-muted: #94A3B8;--text-disabled: #CBD5E1;--sb-bg: #0F172A;--sb-bg-2: #1E293B;--sb-text: #94A3B8;--sb-text-active: #FFFFFF;--sb-hover: rgba(255, 255, 255, .06);--sb-active-bg: rgba(79, 70, 229, .18);--sb-border: rgba(255, 255, 255, .07);--sb-section: rgba(148, 163, 184, .5);--sidebar-width: 242px;--header-height: 64px;--radius-xs: 4px;--radius-sm: 8px;--radius: 12px;--radius-lg: 16px;--radius-xl: 20px;--radius-2xl: 28px;--radius-pill: 999px;--shadow-xs: 0 1px 2px rgba(15,23,42,.05);--shadow-sm: 0 2px 6px rgba(15,23,42,.07), 0 1px 2px rgba(15,23,42,.04);--shadow: 0 4px 16px rgba(15,23,42,.09), 0 2px 6px rgba(15,23,42,.05);--shadow-lg: 0 10px 40px rgba(15,23,42,.12), 0 4px 12px rgba(15,23,42,.06);--shadow-xl: 0 20px 64px rgba(15,23,42,.16), 0 8px 20px rgba(15,23,42,.08);--shadow-primary: 0 4px 20px rgba(79, 70, 229, .32);--shadow-success: 0 4px 16px rgba(16, 185, 129, .3);--shadow-danger: 0 4px 16px rgba(239, 68, 68, .3);--shadow-warning: 0 4px 16px rgba(245, 158, 11, .3);--shadow-info: 0 4px 16px rgba(59, 130, 246, .28);--ease: cubic-bezier(.4, 0, .2, 1);--trans: all .22s cubic-bezier(.4, 0, .2, 1);--trans-fast: all .15s ease}html{scroll-behavior:smooth}body{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;background:var(--background);color:var(--text-primary);font-size:14px;line-height:1.55;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{text-decoration:none;color:inherit}.app-container{display:flex;height:100vh;width:100vw;overflow:hidden}.sidebar{width:var(--sidebar-width);background:var(--sb-bg);display:flex;flex-direction:column;flex-shrink:0;z-index:100;transition:left .28s var(--ease);position:relative;overflow:hidden}.sidebar:after{content:"";position:absolute;right:0;top:0;bottom:0;width:1px;background:linear-gradient(to bottom,transparent,rgba(79,70,229,.6),transparent);opacity:.5}.sidebar-header{padding:22px 16px 18px;border-bottom:1px solid var(--sb-border);display:flex;flex-direction:column;align-items:center;text-align:center;flex-shrink:0}.sidebar-header img{width:52px;height:52px;object-fit:contain;margin-bottom:10px;filter:drop-shadow(0 0 8px rgba(79,70,229,.55))}.sidebar-header h1{font-size:14px;font-weight:800;color:#fff;letter-spacing:.6px;text-transform:uppercase}.sidebar-header p{font-size:11px;color:var(--sb-section);margin-top:3px;letter-spacing:.3px}.sidebar-nav{flex:1;padding:10px;overflow-y:auto;scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.08) transparent}.sidebar-nav::-webkit-scrollbar{width:3px}.sidebar-nav::-webkit-scrollbar-thumb{background:#ffffff1a;border-radius:4px}.nav-section-label{font-size:9.5px;font-weight:700;color:var(--sb-section);text-transform:uppercase;letter-spacing:1px;padding:14px 12px 5px}.nav-item{display:flex;align-items:center;gap:10px;padding:10px 12px;margin-bottom:1px;border-radius:var(--radius-sm);color:var(--sb-text);font-size:13.5px;font-weight:500;transition:var(--trans-fast);cursor:pointer;position:relative;overflow:hidden}.nav-item:before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--primary-mid);border-radius:0 3px 3px 0;opacity:0;transition:opacity .18s}.nav-item:hover{background:var(--sb-hover);color:#e2e8f4}.nav-item.active{background:var(--sb-active-bg);color:var(--sb-text-active);font-weight:600}.nav-item.active:before{opacity:1}.nav-item svg{width:17px;height:17px;flex-shrink:0;opacity:.75}.nav-item.active svg{opacity:1;color:var(--primary-mid)}.nav-item span{flex:1}.nav-submenu{padding-left:8px;border-left:1px solid rgba(255,255,255,.1);margin-left:21px;margin-top:1px}.nav-submenu .nav-item{font-size:12.5px;padding:8px 10px}.sidebar-footer{padding:12px 12px 16px;border-top:1px solid var(--sb-border);flex-shrink:0}.user-info{display:flex;align-items:center;gap:10px;padding:10px 11px;border-radius:var(--radius);margin-bottom:10px;background:#ffffff0a;border:1px solid var(--sb-border)}.user-avatar{width:36px;height:36px;border-radius:50%;background:linear-gradient(135deg,var(--primary),var(--purple));color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:14px;flex-shrink:0;box-shadow:0 0 0 2px #6366f159}.user-avatar img{width:36px;height:36px;border-radius:50%;object-fit:cover}.user-details{flex:1;min-width:0}.user-name{font-size:13px;font-weight:600;color:#e2e8f0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.user-role{font-size:11px;color:var(--sb-section);text-transform:capitalize;margin-top:1px}.sidebar-actions{display:flex;gap:7px}.sb-action-btn{flex:1;display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:8px 10px;border-radius:var(--radius-sm);font-size:12px;font-weight:600;cursor:pointer;transition:var(--trans-fast);border:1px solid;font-family:inherit;text-decoration:none;white-space:nowrap}.sb-action-profile{background:#ffffff0d;border-color:#ffffff1a;color:#94a3b8d9}.sb-action-profile:hover{background:#ffffff1a;border-color:#fff3;color:#fff}.sb-action-logout{background:#ef444414;border-color:#ef444438;color:#fca5a5}.sb-action-logout:hover{background:#ef44442e;border-color:#ef444466;color:#fee2e2}.btn-secondary{flex:1;padding:7px 10px;border-radius:var(--radius-sm);font-size:12px;font-weight:500;cursor:pointer;transition:var(--trans-fast);border:1px solid rgba(255,255,255,.12);background:#ffffff0f;color:var(--sb-text);font-family:inherit}.btn-secondary:hover{background:#ffffff1a;color:#fff}.btn-danger{flex:1;padding:7px 10px;border-radius:var(--radius-sm);font-size:12px;font-weight:500;cursor:pointer;transition:var(--trans-fast);border:1px solid rgba(239,68,68,.3);background:#ef44441a;color:#fca5a5;font-family:inherit}.btn-danger:hover{background:#ef444438;color:#fee2e2}.main-content{flex:1;display:flex;flex-direction:column;overflow:hidden;min-width:0;background:var(--background)}.header{background:var(--surface);border-bottom:1px solid var(--border);padding:0 26px;height:var(--header-height);display:flex;align-items:center;justify-content:space-between;flex-shrink:0;box-shadow:0 1px #0f172a0a,0 2px 8px #0f172a0a;z-index:50}.header-left{display:flex;align-items:center;gap:14px}.header-page-title{font-size:17px;font-weight:700;color:var(--text-primary);letter-spacing:-.2px}.header-page-subtitle{font-size:11.5px;color:var(--text-muted);margin-top:1px}.header-right{display:flex;align-items:center;gap:14px}.header-avatar{width:38px;height:38px;border-radius:50%;background:linear-gradient(135deg,var(--primary),var(--purple));color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:14px;cursor:pointer;flex-shrink:0;box-shadow:0 0 0 3px var(--primary-light),var(--shadow-primary);transition:var(--trans)}.header-avatar:hover{transform:scale(1.06)}.header-avatar img{width:38px;height:38px;border-radius:50%;object-fit:cover}.header-user-info{text-align:right}.header-user-name{font-size:13.5px;font-weight:600;color:var(--text-primary)}.header-user-role{font-size:11px;color:var(--text-muted);text-transform:capitalize}.mobile-menu-btn{display:none;border:none;background:transparent;cursor:pointer;padding:6px;border-radius:var(--radius-sm);color:var(--text-secondary);transition:var(--trans-fast)}.mobile-menu-btn:hover{background:var(--background);color:var(--text-primary)}.content{flex:1;overflow-y:auto;padding:26px;scrollbar-width:thin;scrollbar-color:var(--border-strong) transparent}.content::-webkit-scrollbar{width:5px}.content::-webkit-scrollbar-thumb{background:var(--border-strong);border-radius:4px}.page-header{margin-bottom:24px}.page-title{font-size:23px;font-weight:800;color:var(--text-primary);letter-spacing:-.3px}.page-subtitle{font-size:13px;color:var(--text-secondary);margin-top:3px}.card{background:var(--surface);border-radius:var(--radius-lg);border:1px solid var(--border);box-shadow:var(--shadow-sm);padding:22px;transition:box-shadow .22s var(--ease)}.card:hover{box-shadow:var(--shadow)}.card-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:18px;padding-bottom:14px;border-bottom:1px solid var(--border)}.card-title{font-size:15px;font-weight:700;color:var(--text-primary);letter-spacing:-.1px}.card-subtitle{font-size:12px;color:var(--text-muted);margin-top:2px}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px;margin-bottom:26px}.stat-card{background:var(--surface);border-radius:var(--radius-lg);border:1px solid var(--border);box-shadow:var(--shadow-sm);padding:20px;display:flex;align-items:center;gap:16px;position:relative;overflow:hidden;transition:var(--trans)}.stat-card:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--_start, var(--primary)),var(--_end, var(--purple)));border-radius:var(--radius-lg) var(--radius-lg) 0 0}.stat-card:hover{box-shadow:var(--shadow);transform:translateY(-2px)}.stat-icon{width:48px;height:48px;border-radius:var(--radius);display:flex;align-items:center;justify-content:center;font-size:22px;flex-shrink:0}.stat-icon.blue{background:var(--info-light);--_start: #3B82F6;--_end: #60A5FA}.stat-icon.green{background:var(--success-light);--_start: #10B981;--_end: #34D399}.stat-icon.yellow{background:var(--warning-light);--_start: #F59E0B;--_end: #FBBF24}.stat-icon.red{background:var(--danger-light);--_start: #EF4444;--_end: #F87171}.stat-icon.purple{background:var(--purple-light);--_start: #8B5CF6;--_end: #A78BFA}.stat-icon.indigo{background:var(--primary-light);--_start: #4F46E5;--_end: #818CF8}.stat-info{flex:1;min-width:0}.stat-label{font-size:11.5px;color:var(--text-muted);font-weight:600;text-transform:uppercase;letter-spacing:.5px;margin-bottom:4px}.stat-value{font-size:24px;font-weight:800;color:var(--text-primary);line-height:1.15;letter-spacing:-.5px}.stat-change{font-size:12px;margin-top:3px;font-weight:500}.stat-change.up{color:var(--success)}.stat-change.down{color:var(--danger)}.stat-badge{display:inline-block;padding:3px 10px;border-radius:var(--radius-sm);font-size:11.5px;font-weight:600}.stat-badge.green{background:var(--success-light);color:#065f46}.stat-badge.blue{background:var(--info-light);color:#1e40af}.stat-badge.yellow{background:var(--warning-light);color:#92400e}.stat-badge.purple{background:var(--purple-light);color:#5b21b6}.table-container{overflow-x:auto;border-radius:var(--radius-lg);border:1px solid var(--border);background:var(--surface);box-shadow:var(--shadow-sm)}.table-header{padding:16px 20px;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:10px}table{width:100%;border-collapse:collapse}thead tr{background:linear-gradient(to right,#F8FAFF,var(--surface-2));border-bottom:1.5px solid var(--border)}th{padding:11px 16px;text-align:left;font-size:10.5px;font-weight:700;color:var(--text-muted);text-transform:uppercase;letter-spacing:.6px;white-space:nowrap}td{padding:13px 16px;font-size:13.5px;color:var(--text-primary);border-bottom:1px solid var(--border);vertical-align:middle}tr:last-child td{border-bottom:none}tbody tr{transition:background .12s ease}tbody tr:hover{background:var(--surface-hover)}.badge{display:inline-flex;align-items:center;gap:5px;padding:3px 10px;border-radius:var(--radius-pill);font-size:11.5px;font-weight:600;letter-spacing:.2px;white-space:nowrap}.badge-success,.badge-green{background:var(--success-light);color:#065f46}.badge-warning,.badge-yellow{background:var(--warning-light);color:#92400e}.badge-danger,.badge-red{background:var(--danger-light);color:#991b1b}.badge-info,.badge-blue{background:var(--info-light);color:#1e40af}.badge-secondary,.badge-gray{background:#f1f5f9;color:#475569}.badge-primary{background:var(--primary-light);color:var(--primary-dark)}.badge-purple{background:var(--purple-light);color:#5b21b6}.btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;padding:9px 20px;border-radius:var(--radius);font-size:13.5px;font-weight:600;cursor:pointer;transition:var(--trans);border:none;text-decoration:none;white-space:nowrap;font-family:inherit;letter-spacing:.1px;position:relative;overflow:hidden}.btn:active{transform:scale(.97)!important}.btn-primary{background:linear-gradient(135deg,#4f46e5,#7c3aed);color:#fff;box-shadow:0 4px 14px #4f46e559}.btn-primary:hover{box-shadow:0 6px 22px #4f46e580;transform:translateY(-1px)}.btn-outline{background:transparent;color:var(--primary);border:1.5px solid var(--primary)}.btn-outline:hover{background:var(--primary-light);box-shadow:0 0 0 3px var(--primary-glow-lg)}.btn-ghost{background:var(--surface);color:var(--text-secondary);border:1px solid var(--border);box-shadow:var(--shadow-xs)}.btn-ghost:hover{background:var(--surface-hover);color:var(--text-primary);border-color:var(--border-strong)}.btn-success{background:linear-gradient(135deg,#10b981,#059669);color:#fff;box-shadow:0 4px 14px #10b98152}.btn-success:hover{box-shadow:0 6px 20px #10b9817a;transform:translateY(-1px)}.btn-error,.btn-danger-filled{background:linear-gradient(135deg,#ef4444,#dc2626);color:#fff;box-shadow:0 4px 14px #ef444452}.btn-error:hover,.btn-danger-filled:hover{box-shadow:0 6px 20px #ef44447a;transform:translateY(-1px)}.btn-warning{background:linear-gradient(135deg,#f59e0b,#d97706);color:#fff;box-shadow:0 4px 14px #f59e0b52}.btn-warning:hover{box-shadow:0 6px 20px #f59e0b7a;transform:translateY(-1px)}.btn-info{background:linear-gradient(135deg,#3b82f6,#2563eb);color:#fff;box-shadow:var(--shadow-info)}.btn-info:hover{box-shadow:0 6px 20px #3b82f67a;transform:translateY(-1px)}.btn-sm{padding:6px 14px;font-size:12px;border-radius:var(--radius-sm)}.btn-lg{padding:12px 28px;font-size:15px}.btn-xl{padding:14px 36px;font-size:16px;border-radius:var(--radius-lg)}.page-tabs{display:flex;gap:2px;margin-bottom:20px;border-bottom:1px solid var(--border)}.page-tab{padding:10px 18px;font-size:13.5px;font-weight:600;border:none;border-bottom:2.5px solid transparent;background:none;color:var(--text-muted);cursor:pointer;font-family:inherit;transition:var(--trans-fast);white-space:nowrap;margin-bottom:-1px}.page-tab:hover{color:var(--text-primary)}.page-tab.active{color:var(--primary);border-bottom-color:var(--primary)}.btn-invite{background:linear-gradient(135deg,#4f46e5,#7c3aed);color:#fff;padding:11px 26px;font-size:14px;font-weight:700;border-radius:var(--radius);box-shadow:0 4px 18px #4f46e566,0 0 #6366f100;letter-spacing:.2px;transition:var(--trans);position:relative;overflow:hidden}.btn-invite:before{content:"";position:absolute;inset:0;background:linear-gradient(135deg,rgba(255,255,255,.12) 0%,transparent 60%);opacity:0;transition:opacity .25s}.btn-invite:hover{transform:translateY(-2px);box-shadow:0 8px 28px #4f46e58c,0 0 0 4px #6366f126}.btn-invite:hover:before{opacity:1}.btn-invite:active{transform:scale(.97)}.btn-invite-icon{font-size:15px;display:inline-flex;align-items:center}.btn-tbl{padding:5px 11px;font-size:11.5px;font-weight:600;border-radius:var(--radius-sm);border:1px solid;cursor:pointer;font-family:inherit;transition:var(--trans-fast);white-space:nowrap;letter-spacing:.1px}.btn-tbl-view{background:#6366f112;color:#6366f1;border-color:#6366f140}.btn-tbl-view:hover{background:#6366f124;border-color:#6366f173}.btn-tbl-edit{background:#3b82f612;color:#3b82f6;border-color:#3b82f640}.btn-tbl-edit:hover{background:#3b82f624;border-color:#3b82f673}.btn-tbl-role{background:#8b5cf612;color:#8b5cf6;border-color:#8b5cf640}.btn-tbl-role:hover{background:#8b5cf624;border-color:#8b5cf673}.btn-tbl-deactivate{background:#f59e0b12;color:#d97706;border-color:#f59e0b4d}.btn-tbl-deactivate:hover{background:#f59e0b24;border-color:#f59e0b80}.btn-tbl-activate{background:#10b98112;color:#059669;border-color:#10b98147}.btn-tbl-activate:hover{background:#10b98124;border-color:#10b98180}.btn-tbl-delete{background:#ef444412;color:#ef4444;border-color:#ef444440}.btn-tbl-delete:hover{background:#ef444424;border-color:#ef444473}.btn:disabled,.btn[disabled]{opacity:.5;cursor:not-allowed;transform:none!important;box-shadow:none!important}.btn-icon{width:36px;height:36px;padding:0;border-radius:var(--radius-sm);display:inline-flex;align-items:center;justify-content:center}.btn-icon.btn-sm{width:30px;height:30px}.button{display:inline-flex;align-items:center;gap:6px;padding:9px 18px;border-radius:var(--radius);font-size:13.5px;font-weight:600;cursor:pointer;transition:var(--trans);border:1px solid var(--border);background:var(--surface);color:var(--text-primary);font-family:inherit}.submit{background:linear-gradient(135deg,var(--primary),var(--purple));color:#fff;border:none;box-shadow:var(--shadow-primary)}.submit:hover{box-shadow:0 6px 20px #4f46e57a;transform:translateY(-1px)}.filters{display:flex;gap:7px;flex-wrap:wrap;margin-bottom:18px}.filter-btn{padding:6px 16px;border-radius:var(--radius-pill);border:1.5px solid var(--border);background:var(--surface);color:var(--text-secondary);font-size:13px;font-weight:500;cursor:pointer;transition:var(--trans);text-transform:capitalize;font-family:inherit;line-height:1.4;box-shadow:var(--shadow-xs)}.filter-btn:hover{border-color:var(--primary);color:var(--primary);background:var(--primary-light);box-shadow:0 0 0 3px var(--primary-glow-lg)}.filter-btn.active{background:linear-gradient(135deg,var(--primary),var(--primary-mid));border-color:transparent;color:#fff;box-shadow:0 3px 10px #4f46e54d}.form-group{margin-bottom:18px}.form-label{display:block;font-size:12.5px;font-weight:600;color:var(--text-secondary);margin-bottom:6px;letter-spacing:.1px}.form-control{width:100%;padding:10px 14px;border:1.5px solid var(--border);border-radius:var(--radius);font-size:14px;color:var(--text-primary);background:var(--surface);transition:var(--trans);outline:none;font-family:inherit;box-shadow:var(--shadow-xs)}.form-control:hover:not(:focus):not(:disabled){border-color:var(--border-strong)}.form-control:focus{border-color:var(--primary);box-shadow:0 0 0 3px #4f46e51f,var(--shadow-xs);background:#fafbff}.form-control:disabled{background:var(--surface-2);color:var(--text-muted);cursor:not-allowed}select.form-control{appearance:none;cursor:pointer}textarea.form-control{resize:vertical;min-height:80px}.form-hint{font-size:12px;color:var(--text-muted);margin-top:5px}.form-error{font-size:12px;color:var(--danger);margin-top:5px;font-weight:500}.alert{padding:13px 16px;border-radius:var(--radius);display:flex;align-items:flex-start;gap:12px;font-size:13.5px;font-weight:500;border-left:4px solid;box-shadow:var(--shadow-xs);margin-bottom:14px}.alert-icon{font-size:18px;flex-shrink:0;margin-top:1px}.alert-content{flex:1}.alert-title{font-weight:700;margin-bottom:2px;font-size:14px}.alert-desc{font-size:13px;opacity:.85}.alert-success{background:linear-gradient(to right,#F0FDF6,var(--surface));color:#166534;border-color:var(--success)}.alert-warning{background:linear-gradient(to right,#FFFBEB,var(--surface));color:#92400e;border-color:var(--warning)}.alert-danger,.alert-error{background:linear-gradient(to right,#FEF2F2,var(--surface));color:#991b1b;border-color:var(--danger)}.alert-info{background:linear-gradient(to right,#EFF6FF,var(--surface));color:#1e40af;border-color:var(--info)}.notice{padding:10px 16px;border-radius:var(--radius);font-size:13px;font-weight:500;margin-bottom:14px;display:flex;align-items:center;gap:10px}.notice-success{background:var(--success-light);color:#166534}.notice-warning{background:var(--warning-light);color:#92400e}.notice-danger{background:var(--danger-light);color:#991b1b}.notice-info{background:var(--info-light);color:#1e40af}.modal-overlay{position:fixed;inset:0;background:#0a0f1e94;display:flex;align-items:center;justify-content:center;z-index:1000;padding:16px;backdrop-filter:blur(7px);-webkit-backdrop-filter:blur(7px);animation:overlayIn .2s ease}@keyframes overlayIn{0%{opacity:0}to{opacity:1}}.modal{background:var(--surface);border-radius:var(--radius-xl);box-shadow:var(--shadow-xl),0 0 0 1px #ffffff80 inset;width:100%;max-width:536px;max-height:92vh;overflow-y:auto;animation:modalIn .26s cubic-bezier(.34,1.56,.64,1)}@keyframes modalIn{0%{opacity:0;transform:scale(.95) translateY(12px)}to{opacity:1;transform:scale(1) translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes popIn{0%{opacity:0;transform:scale(.88) translateY(16px)}to{opacity:1;transform:scale(1) translateY(0)}}.modal-sm{max-width:400px}.modal-lg{max-width:680px}.modal-xl{max-width:860px}.modal-danger{border-top:4px solid var(--danger)}.modal-warning{border-top:4px solid var(--warning)}.modal-success{border-top:4px solid var(--success)}.modal-info{border-top:4px solid var(--info)}.modal-header{padding:22px 24px 16px;border-bottom:1px solid var(--border);display:flex;align-items:center;gap:12px}.modal-header-icon{width:40px;height:40px;border-radius:var(--radius);display:flex;align-items:center;justify-content:center;font-size:20px;flex-shrink:0}.modal-header-icon.danger{background:var(--danger-light)}.modal-header-icon.warning{background:var(--warning-light)}.modal-header-icon.success{background:var(--success-light)}.modal-header-icon.info{background:var(--info-light)}.modal-header-icon.primary{background:var(--primary-light)}.modal-header-text{flex:1}.modal-title{font-size:16px;font-weight:800;color:var(--text-primary);letter-spacing:-.2px}.modal-subtitle{font-size:12.5px;color:var(--text-muted);margin-top:2px}.modal-close{width:32px;height:32px;border:1px solid var(--border);background:var(--surface-2);border-radius:var(--radius-sm);cursor:pointer;display:flex;align-items:center;justify-content:center;color:var(--text-muted);font-size:18px;transition:var(--trans-fast);flex-shrink:0;margin-left:auto;font-family:inherit}.modal-close:hover{background:var(--danger-light);color:var(--danger);border-color:#fecaca}.modal-body{padding:22px 24px}.modal-footer{padding:16px 24px;border-top:1px solid var(--border);display:flex;justify-content:flex-end;gap:10px;background:var(--surface-2);border-radius:0 0 var(--radius-xl) var(--radius-xl)}.confirm-dialog{max-width:420px}.confirm-dialog .modal-body{padding:30px 24px;display:flex;flex-direction:column;align-items:center;gap:12px;text-align:center}.confirm-icon{width:66px;height:66px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:30px}.confirm-icon.danger{background:var(--danger-light)}.confirm-icon.warning{background:var(--warning-light)}.confirm-icon.success{background:var(--success-light)}.confirm-icon.info{background:var(--info-light)}.confirm-title{font-size:18px;font-weight:800;color:var(--text-primary);letter-spacing:-.2px}.confirm-message{font-size:13.5px;color:var(--text-secondary);line-height:1.65;max-width:340px}.confirm-footer{display:flex;gap:10px;justify-content:center;padding:0 24px 24px}.spinner{width:36px;height:36px;border:3px solid var(--border);border-top-color:var(--primary);border-radius:50%;animation:spin .75s linear infinite}.spinner-sm{width:18px;height:18px;border-width:2px}.spinner-lg{width:52px;height:52px;border-width:4px}@keyframes spin{to{transform:rotate(360deg)}}.loading-container{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:56px 24px;gap:14px;color:var(--text-muted);font-size:13px}.loading{display:flex;align-items:center;justify-content:center;padding:40px}.empty-state{text-align:center;padding:56px 24px;color:var(--text-muted)}.empty-state-icon{font-size:52px;margin-bottom:14px;opacity:.4}.empty-state-title{font-size:16px;font-weight:700;color:var(--text-secondary);margin-bottom:6px}.empty-state-desc{font-size:13.5px}.empty-state svg{width:64px;height:64px;color:var(--border-strong);margin:0 auto 16px;display:block}.empty-state p{font-size:14px;color:var(--text-muted)}.profile-container{max-width:900px}.profile-hero{background:var(--sb-bg);border-radius:var(--radius-xl);border:1px solid var(--sb-border);box-shadow:var(--shadow-lg);overflow:hidden;margin-bottom:0;position:relative}.profile-hero-bg{position:absolute;width:380px;height:380px;background:radial-gradient(circle,rgba(79,70,229,.22) 0%,transparent 65%);top:-120px;right:-80px;pointer-events:none}.profile-hero-body{display:flex;align-items:center;gap:22px;padding:28px 28px 24px;position:relative;z-index:1}.profile-hero-avatar{width:80px;height:80px;border-radius:50%;background:linear-gradient(135deg,var(--primary),var(--purple));color:#fff;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:32px;flex-shrink:0;box-shadow:0 0 0 4px #6366f159,0 6px 24px #4f46e573}.profile-hero-avatar img{width:100%;height:100%;border-radius:50%;object-fit:cover}.profile-hero-info{flex:1;min-width:0}.profile-hero-name{font-size:22px;font-weight:800;color:#fff;letter-spacing:-.3px;margin-bottom:3px}.profile-hero-email{font-size:13.5px;color:#94a3b8d9;margin-bottom:10px}.profile-hero-badges{display:flex;gap:7px;flex-wrap:wrap}.profile-hero-badge{display:inline-flex;align-items:center;gap:5px;padding:4px 12px;border-radius:var(--radius-pill);font-size:12px;font-weight:600;letter-spacing:.1px}.profile-hero-badge.badge-role{background:#4f46e540;color:#a5b4fc;border:1px solid rgba(99,102,241,.3)}.profile-hero-badge.badge-type{background:#8b5cf633;color:#c4b5fd;border:1px solid rgba(139,92,246,.3)}.profile-hero-badge.badge-auth{background:#10b98126;color:#6ee7b7;border:1px solid rgba(16,185,129,.25)}.profile-logout-btn{display:inline-flex;align-items:center;gap:7px;padding:9px 18px;border-radius:var(--radius);border:1px solid rgba(239,68,68,.35);background:#ef44441a;color:#fca5a5;font-size:13px;font-weight:600;cursor:pointer;font-family:inherit;transition:var(--trans-fast);flex-shrink:0}.profile-logout-btn:hover{background:#ef444438;border-color:#ef44448c;color:#fee2e2}.profile-hero-tabs{display:flex;gap:0;padding:0 20px;border-top:1px solid var(--sb-border);overflow-x:auto;scrollbar-width:none;position:relative;z-index:1}.profile-hero-tabs::-webkit-scrollbar{display:none}.profile-hero-tab{display:inline-flex;align-items:center;gap:7px;padding:13px 18px;border:none;border-bottom:2.5px solid transparent;font-size:13px;font-weight:500;color:#94a3b8b3;background:none;cursor:pointer;font-family:inherit;transition:var(--trans-fast);white-space:nowrap}.profile-hero-tab:hover{color:#ffffffbf}.profile-hero-tab.active{color:#a5b4fc;border-bottom-color:var(--primary-mid);font-weight:600}.profile-content-card{background:var(--surface);border:1px solid var(--border);border-top:none;border-radius:0 0 var(--radius-xl) var(--radius-xl);box-shadow:var(--shadow-sm)}.profile-content{padding:28px}.profile-header,.profile-tabs{display:none}.profile-form{display:flex;flex-direction:column;gap:16px}.profile-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.profile-form-group{display:flex;flex-direction:column}.profile-form-group.full-width{grid-column:span 2}.profile-label{font-size:12.5px;font-weight:600;color:var(--text-secondary);margin-bottom:5px}.profile-input{padding:9px 12px;border:1.5px solid var(--border);border-radius:var(--radius-sm);font-size:13.5px;color:var(--text-primary);background:var(--surface);outline:none;transition:var(--trans);font-family:inherit;box-shadow:var(--shadow-xs)}.profile-input:hover:not(:focus):not(:disabled){border-color:var(--border-strong)}.profile-input:focus{border-color:var(--primary);box-shadow:0 0 0 3px #4f46e51a}.profile-input:disabled{background:var(--surface-2);color:var(--text-muted);cursor:not-allowed}.profile-input-help{font-size:11.5px;color:var(--text-muted);margin-top:4px}.profile-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:10px}.profile-btn{padding:9px 22px;border:none;border-radius:var(--radius);font-size:13px;font-weight:600;cursor:pointer;transition:var(--trans);display:flex;align-items:center;gap:6px;font-family:inherit}.profile-btn-primary{background:linear-gradient(135deg,var(--primary),var(--purple));color:#fff;box-shadow:var(--shadow-primary)}.profile-btn-primary:hover{box-shadow:0 6px 20px #4f46e573;transform:translateY(-1px)}.profile-btn-primary:disabled{opacity:.5;cursor:not-allowed;transform:none;box-shadow:none}.profile-alert{padding:11px 14px;border-radius:var(--radius-sm);margin-bottom:14px;font-size:13px;font-weight:500;border-left:4px solid;display:flex;align-items:center;gap:8px}.profile-alert.error{background:var(--danger-light);border-color:var(--danger);color:#991b1b}.profile-alert.success{background:var(--success-light);border-color:var(--success);color:#166534}.profile-loading{display:flex;align-items:center;justify-content:center;min-height:200px}.profile-loading-spinner{width:32px;height:32px;border:2px solid var(--border);border-top-color:var(--primary);border-radius:50%;animation:spin .8s linear infinite}.profile-loading-text{margin-left:10px;font-size:13px;color:var(--text-muted)}.profile-password-section{max-width:400px;margin:0 auto}.profile-password-card{background:linear-gradient(135deg,#F8FAFF,var(--surface));border-radius:var(--radius-lg);padding:32px 24px;text-align:center;border:1px solid var(--border);box-shadow:var(--shadow-sm)}.profile-password-icon{font-size:36px;margin-bottom:12px}.profile-password-title{font-size:18px;font-weight:800;color:var(--text-primary);margin-bottom:8px}.profile-password-desc{color:var(--text-secondary);font-size:13.5px;margin-bottom:24px;line-height:1.6}.profile-section-header{margin-bottom:18px}.profile-section-title{font-size:17px;font-weight:700;color:var(--text-primary);margin-bottom:4px}.profile-section-desc{font-size:13px;color:var(--text-muted)}.notification-preferences-container{display:flex;flex-direction:column;gap:12px}.notification-option{background:var(--surface);border:1.5px solid var(--border);border-radius:var(--radius);padding:16px;transition:var(--trans);box-shadow:var(--shadow-xs)}.notification-option:hover:not(.disabled){border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-glow-lg),var(--shadow-sm)}.notification-option.disabled{opacity:.55;background:var(--surface-2)}.notification-option-header{display:flex;gap:12px;align-items:flex-start}.notification-option-icon{font-size:24px;flex-shrink:0}.notification-option-content{flex:1}.notification-option-label{display:flex;align-items:center;gap:8px;cursor:pointer;margin-bottom:4px}.notification-checkbox{width:16px;height:16px;cursor:pointer;accent-color:var(--primary)}.notification-title{font-size:14.5px;font-weight:600;color:var(--text-primary)}.notification-description{color:var(--text-secondary);font-size:13px;padding-left:24px;line-height:1.5}.notification-warning{color:var(--warning-dark);font-size:13px;margin:6px 0 0 24px;font-weight:500}.notification-info-box{background:var(--surface-2);border-radius:var(--radius);padding:16px;display:flex;gap:12px;border:1px solid var(--border)}.notification-info-icon{font-size:20px;flex-shrink:0}.notification-info-content{flex:1}.notification-info-content strong{display:block;margin-bottom:6px;color:var(--text-primary);font-size:13.5px}.notification-info-content ul{margin:0;padding-left:18px;color:var(--text-secondary);font-size:13px}.notification-info-content li{margin-bottom:3px}.notification-error{color:var(--danger);font-size:12.5px;text-align:center;margin-top:6px;font-weight:500}.onboarding-container{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#0f172a,#1e1b4b,#0f172a);padding:24px;position:relative;overflow:hidden}.onboarding-container:before{content:"";position:absolute;width:500px;height:500px;background:radial-gradient(circle,rgba(79,70,229,.22) 0%,transparent 65%);top:-120px;left:-120px;pointer-events:none}.onboarding-container:after{content:"";position:absolute;width:400px;height:400px;background:radial-gradient(circle,rgba(139,92,246,.16) 0%,transparent 65%);bottom:-80px;right:-80px;pointer-events:none}.onboarding-card{background:#ffffff0a;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.12);border-radius:var(--radius-2xl);box-shadow:0 24px 80px #00000080,0 0 0 1px #ffffff0f inset;padding:40px;width:100%;max-width:440px;position:relative;z-index:1;animation:modalIn .3s var(--ease)}.onboarding-header{text-align:center;margin-bottom:32px}.onboarding-header h1{font-size:22px;font-weight:800;color:#fff;margin:0 0 6px;letter-spacing:-.3px}.onboarding-header p{font-size:14px;color:#ffffff73;margin:0}.onboarding-step .form-label{color:#ffffffa6}.onboarding-step .form-control{background:#ffffff12;border-color:#ffffff1f;color:#fff}.onboarding-step .form-control::placeholder{color:#ffffff47}.onboarding-step .form-control:focus{background:#ffffff1a;border-color:var(--primary-mid);box-shadow:0 0 0 3px #6366f140}.onboarding-step .btn-primary{width:100%;padding:12px;font-size:15px;font-weight:700;letter-spacing:.2px;background:linear-gradient(135deg,#4f46e5,#7c3aed);box-shadow:0 6px 24px #4f46e573}.onboarding-error{background:#ef44441f;border:1px solid rgba(239,68,68,.35);border-radius:var(--radius);padding:10px 14px;color:#fca5a5;font-size:13px;margin-bottom:16px;display:flex;align-items:center;gap:8px}.onboarding-success{background:#10b9811f;border:1px solid rgba(16,185,129,.35);border-radius:var(--radius);padding:10px 14px;color:#6ee7b7;font-size:13px;margin-bottom:16px;display:flex;align-items:center;gap:8px}.onboarding-loading{display:flex;align-items:center;justify-content:center;gap:10px;color:#ffffff73;font-size:14px;padding:20px 0}.onboarding-progress{margin-bottom:28px}.progress-steps{display:flex;align-items:center;justify-content:center;gap:8px;margin-bottom:10px}.step-number{width:30px;height:30px;border-radius:50%;border:2px solid rgba(255,255,255,.15);background:#ffffff0d;color:#fff6;font-size:12px;font-weight:700;display:flex;align-items:center;justify-content:center}.step-number.active{border-color:var(--primary-mid);background:#4f46e54d;color:#fff}.step-number.completed{border-color:var(--success);background:#10b98140;color:#6ee7b7}.step-label{font-size:11.5px;color:#fff6;text-align:center;margin-top:4px}.step-description{font-size:13px;color:#fff6;text-align:center;margin-top:4px}.progress-bar{width:100%;height:3px;background:#ffffff1a;border-radius:var(--radius-pill);overflow:hidden;margin-top:8px}.progress-bar-fill{height:100%;background:linear-gradient(90deg,var(--primary),var(--purple));border-radius:var(--radius-pill);transition:width .35s var(--ease)}.authenticator-section{margin:20px 0}.authenticator-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:16px}.auth-method-container{background:var(--sb-bg);border-radius:var(--radius-xl);padding:24px;border:1px solid var(--sb-border);display:flex;flex-direction:column;gap:0}.auth-method-header{display:flex;align-items:center;gap:14px;padding-bottom:18px;margin-bottom:18px;border-bottom:1px solid var(--sb-border)}.auth-method-icon{width:42px;height:42px;background:linear-gradient(135deg,#4f46e540,#8b5cf633);border:1px solid rgba(99,102,241,.25);border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;font-size:20px;flex-shrink:0}.auth-method-title{font-size:15px;font-weight:700;color:#fff;margin:0}.auth-method-subtitle{font-size:12.5px;color:var(--sb-text);margin:2px 0 0}.auth-methods-list{display:flex;flex-direction:column;gap:10px}.auth-method-option{position:relative;overflow:hidden;border:1.5px solid var(--sb-border);border-radius:var(--radius);padding:14px 16px;cursor:pointer;transition:var(--trans);background:#ffffff06}.auth-method-option:before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:transparent;transition:var(--trans-fast)}.auth-method-option:hover{border-color:#6366f159;background:#4f46e50f}.auth-method-option.selected{border-color:var(--primary-mid);background:#4f46e51a}.auth-method-option.selected:before{background:var(--primary-mid)}.auth-method-option.disabled{opacity:.45;cursor:not-allowed}.auth-method-content{display:flex;align-items:flex-start;gap:13px}.auth-method-emoji{font-size:24px;flex-shrink:0;line-height:1;margin-top:3px}.auth-method-details{flex:1;min-width:0}.auth-method-header-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:3px}.auth-method-name{font-size:14px;font-weight:700;color:#ffffffeb;margin:0}.auth-method-description{font-size:12px;color:#94a3b8b3;margin:0 0 10px}.auth-method-phone{font-size:11.5px;color:#94a3b899;margin:-6px 0 8px}.auth-method-status{margin-left:auto;flex-shrink:0;display:inline-flex;align-items:center;padding:2px 9px;border-radius:var(--radius-pill);font-size:10.5px;font-weight:600}.auth-method-status.active{background:#10b98126;color:#6ee7b7;border:1px solid rgba(16,185,129,.25)}.auth-method-status.selected{background:#4f46e538;color:#a5b4fc;border:1px solid rgba(99,102,241,.3)}.auth-method-status.unavailable{background:#ffffff0d;color:#94a3b873;border:1px solid rgba(255,255,255,.08)}.auth-method-pros-cons{display:flex;flex-direction:column;gap:7px}.auth-method-pros{font-size:11px;font-weight:700;color:#6ee7b7;text-transform:uppercase;letter-spacing:.4px;margin:0 0 3px}.auth-method-cons{font-size:11px;font-weight:700;color:#fcd34d;text-transform:uppercase;letter-spacing:.4px;margin:0 0 3px}.auth-method-list{list-style:none;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:4px}.auth-method-list-item{display:inline-flex;align-items:center;gap:3px;font-size:11px;color:#94a3b8b3;background:#ffffff0a;border-radius:var(--radius-pill);padding:2px 9px;border:1px solid rgba(255,255,255,.07)}.auth-method-list-bullet{display:none}.auth-method-test-section{margin-top:10px}.auth-method-test-btn{display:inline-flex;align-items:center;gap:6px;padding:6px 14px;border-radius:var(--radius);background:#3b82f61f;color:#93c5fd;border:1px solid rgba(59,130,246,.22);font-size:12px;font-weight:600;cursor:pointer;font-family:inherit;transition:var(--trans-fast)}.auth-method-test-btn:hover{background:#3b82f638}.auth-method-radio{width:18px;height:18px;border-radius:50%;border:2px solid rgba(255,255,255,.22);flex-shrink:0;margin-top:3px;display:flex;align-items:center;justify-content:center;transition:var(--trans-fast);background:transparent}.auth-method-radio.selected{border-color:var(--primary-mid)}.auth-method-radio.disabled{border-color:#ffffff1a}.auth-method-radio-dot{width:9px;height:9px;border-radius:50%;background:var(--primary-mid)}.auth-method-save-section{margin-top:14px}.auth-method-save-btn{width:100%;display:flex;align-items:center;justify-content:center;gap:8px;padding:12px;border-radius:var(--radius);background:linear-gradient(135deg,var(--primary),var(--purple));color:#fff;font-size:13.5px;font-weight:600;border:none;cursor:pointer;font-family:inherit;box-shadow:var(--shadow-primary);transition:var(--trans-fast)}.auth-method-save-btn:hover{opacity:.9;transform:translateY(-1px)}.auth-method-save-btn:disabled{opacity:.6;cursor:not-allowed;transform:none}.auth-method-info{margin-top:14px;padding:13px 16px;background:#ffffff06;border-radius:var(--radius);border:1px solid var(--sb-border)}.auth-method-info h4{font-size:11px;font-weight:700;color:#94a3b88c;text-transform:uppercase;letter-spacing:.7px;margin-bottom:8px}.auth-method-info ol{padding-left:18px;display:flex;flex-direction:column;gap:4px}.auth-method-info li{font-size:12.5px;color:#94a3b8a6}.auth-method-info strong{color:#a5b4fc}.google-auth-container{display:flex;flex-direction:column;gap:16px}.google-auth-header{display:flex;align-items:center;justify-content:space-between;gap:14px;padding-bottom:14px;border-bottom:1px solid var(--border)}.google-auth-header-info{display:flex;align-items:center;gap:12px}.google-auth-icon{width:44px;height:44px;background:linear-gradient(135deg,#4f46e51a,#8b5cf61a);border:1px solid rgba(99,102,241,.18);border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;font-size:22px}.google-auth-title{font-size:17px;font-weight:700;color:var(--text-primary);margin:0}.google-auth-subtitle{font-size:12.5px;color:var(--text-muted);margin:3px 0 0}.google-auth-status{display:inline-flex;align-items:center;gap:5px;padding:5px 14px;border-radius:var(--radius-pill);font-size:12.5px;font-weight:600;flex-shrink:0}.google-auth-status.enabled{background:#10b9811a;color:var(--success);border:1px solid rgba(16,185,129,.2)}.google-auth-status.disabled{background:#ef444414;color:var(--danger);border:1px solid rgba(239,68,68,.18)}.google-auth-info-box{border-radius:var(--radius);padding:14px 16px;border-left:3px solid transparent}.google-auth-info-box.info{background:#3b82f60f;border-left-color:var(--info)}.google-auth-info-box.success{background:#10b9810f;border-left-color:var(--success)}.google-auth-info-box.warning{background:#f59e0b0f;border-left-color:var(--warning)}.google-auth-info-box.danger{background:#ef44440f;border-left-color:var(--danger)}.google-auth-info-title{font-size:13px;font-weight:700;color:var(--text-secondary);margin:0 0 6px}.google-auth-info-list{font-size:13px;color:var(--text-muted);line-height:1.6;padding-left:0;list-style:none;display:flex;flex-direction:column;gap:3px;margin:0}.google-auth-qr-container{display:flex;flex-direction:column;align-items:center;gap:10px}.google-auth-qr-code{padding:10px;background:#fff;border-radius:var(--radius);display:inline-block;box-shadow:var(--shadow-sm)}.google-auth-qr-code img{display:block;width:180px;height:180px}.google-auth-qr-text{font-size:12.5px;color:var(--text-muted);text-align:center}.google-auth-manual-key{display:flex;flex-direction:column;gap:6px}.google-auth-manual-key h4{font-size:13px;font-weight:600;color:var(--text-secondary);margin:0}.google-auth-key-display{background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-sm);padding:10px 14px;display:flex;align-items:center}.google-auth-key-code{font-family:monospace;font-size:15px;font-weight:700;color:var(--primary);letter-spacing:2px;-webkit-user-select:all;user-select:all}.google-auth-key-help{font-size:12px;color:var(--text-muted);margin:0}.google-auth-verify{display:flex;gap:10px}.google-auth-code-input{flex:1;padding:11px 14px;border:1.5px solid var(--border);border-radius:var(--radius);font-size:22px;font-weight:700;text-align:center;letter-spacing:8px;font-family:monospace;color:var(--text-primary);background:var(--surface);transition:var(--trans-fast)}.google-auth-code-input:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-glow);outline:none}.google-auth-verify-btn{padding:11px 22px;background:linear-gradient(135deg,var(--primary),var(--purple));color:#fff;border:none;border-radius:var(--radius);font-size:14px;font-weight:600;cursor:pointer;font-family:inherit;transition:var(--trans-fast);white-space:nowrap}.google-auth-verify-btn:disabled{opacity:.5;cursor:not-allowed}.google-auth-cancel{background:none;border:none;color:var(--text-muted);font-size:13px;cursor:pointer;font-family:inherit;padding:4px 0;transition:var(--trans-fast);text-align:left}.google-auth-cancel:hover{color:var(--text-secondary)}.google-auth-done-btn{width:100%;padding:13px;background:linear-gradient(135deg,var(--success),#059669);color:#fff;border:none;border-radius:var(--radius);font-size:14px;font-weight:700;cursor:pointer;font-family:inherit;box-shadow:0 4px 14px #10b98147}.google-auth-backup-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(115px,1fr));gap:7px;margin:10px 0}.google-auth-backup-code{font-family:monospace;font-size:13px;font-weight:700;padding:7px 10px;background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-sm);text-align:center;color:var(--text-primary);-webkit-user-select:all;user-select:all}.google-auth-backup-actions{display:flex;gap:10px;margin-top:6px}.google-auth-backup-btn{flex:1;display:flex;align-items:center;justify-content:center;gap:7px;padding:9px 14px;border-radius:var(--radius);font-size:13px;font-weight:600;cursor:pointer;font-family:inherit;transition:var(--trans-fast);border:1px solid}.google-auth-backup-btn.copy{background:#3b82f612;border-color:#3b82f633;color:var(--info)}.google-auth-backup-btn.copy:hover{background:#3b82f624}.google-auth-backup-btn.download{background:#10b98112;border-color:#10b98133;color:var(--success)}.google-auth-backup-btn.download:hover{background:#10b98124}.auth-method-note{font-size:12px;color:#ffffff6b;background:#ffffff0a;border-radius:var(--radius-sm);padding:8px 12px;margin-top:12px;border-left:3px solid var(--primary-mid)}.confirm-overlay{position:fixed;inset:0;z-index:9999;background:#0000008c;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;animation:fadeIn .15s ease}.confirm-dialog{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-xl);box-shadow:0 24px 60px #00000047,0 0 0 1px #ffffff0a;padding:32px 28px 24px;width:100%;max-width:400px;margin:16px;display:flex;flex-direction:column;align-items:center;gap:10px;animation:popIn .2s var(--ease)}.confirm-icon-wrap{width:56px;height:56px;background:#f59e0b1a;border:1.5px solid rgba(245,158,11,.25);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:24px;margin-bottom:4px}.confirm-title{font-size:17px;font-weight:800;color:var(--text-primary);margin:0;text-align:center}.confirm-body{font-size:13.5px;color:var(--text-muted);text-align:center;line-height:1.6;margin:0 0 8px}.confirm-actions{display:flex;gap:10px;width:100%}.confirm-btn-cancel{flex:1;padding:11px;border:1.5px solid var(--border);background:transparent;color:var(--text-secondary);border-radius:var(--radius);font-size:13.5px;font-weight:600;cursor:pointer;font-family:inherit;transition:var(--trans-fast)}.confirm-btn-cancel:hover{background:var(--surface-2);border-color:var(--text-muted)}.confirm-btn-danger{flex:1;padding:11px;background:#ef44441f;border:1.5px solid rgba(239,68,68,.35);color:#f87171;border-radius:var(--radius);font-size:13.5px;font-weight:700;cursor:pointer;font-family:inherit;transition:var(--trans-fast)}.confirm-btn-danger:hover{background:#ef444438;border-color:#ef44448c;color:#fca5a5}.confirm-btn-danger:disabled{opacity:.55;cursor:not-allowed}.picture-upload-container{display:flex;flex-direction:column;gap:1.5rem}.picture-upload-center{text-align:center}.picture-avatar-container{position:relative;display:inline-block}.picture-avatar{width:100px;height:100px;margin:0 auto;background:linear-gradient(135deg,var(--primary),var(--purple));border-radius:50%;display:flex;align-items:center;justify-content:center;overflow:hidden;border:4px solid var(--primary-light);box-shadow:var(--shadow-primary),0 0 0 2px var(--primary-glow-lg)}.picture-avatar img{width:100%;height:100%;object-fit:cover}.picture-avatar-initial{font-size:2.5rem;font-weight:800;color:#fff}.picture-upload-overlay{position:absolute;inset:0;background:#00000085;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;text-align:center}.picture-upload-btn{position:absolute;bottom:0;right:0;background:linear-gradient(135deg,var(--primary),var(--purple));color:#fff;border-radius:50%;padding:.45rem;box-shadow:var(--shadow-primary);transition:var(--trans);border:none;cursor:pointer}.picture-upload-btn:hover{transform:scale(1.12)}.picture-upload-btn svg{width:1.1rem;height:1.1rem}.picture-actions{display:flex;justify-content:center;gap:12px}.picture-guidelines{background:var(--surface-2);border-radius:var(--radius);padding:14px;border:1px solid var(--border)}.picture-guidelines h4{font-weight:600;color:var(--text-secondary);margin-bottom:6px;font-size:13px}.picture-guidelines ul{font-size:12.5px;color:var(--text-muted);display:flex;flex-direction:column;gap:3px;padding-left:16px}.picture-preview-info{background:var(--info-light);border:1px solid var(--info);border-radius:var(--radius-sm);padding:10px 14px;text-align:center;color:var(--info-dark);font-size:13px}.divider{height:1px;background:var(--border);margin:20px 0}.divider-v{width:1px;background:var(--border);align-self:stretch}.text-primary-color{color:var(--primary)}.text-success{color:var(--success)}.text-warning{color:var(--warning)}.text-danger{color:var(--danger)}.text-muted{color:var(--text-muted)!important}.text-bold{font-weight:700}.flex{display:flex}.flex-center{display:flex;align-items:center;justify-content:center}.flex-between{display:flex;align-items:center;justify-content:space-between}.flex-gap-sm{gap:8px}.flex-gap{gap:12px}.flex-gap-lg{gap:20px}.truncate{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}@media(max-width:768px){.sidebar{position:fixed;left:calc(-1 * var(--sidebar-width) - 24px);top:0;bottom:0;transition:left .28s var(--ease);box-shadow:4px 0 24px #00000059}.sidebar.open{left:0}.mobile-menu-btn{display:flex!important}.header-user-info{display:none}.stats-grid{grid-template-columns:1fr 1fr}.content{padding:16px}.profile-form-grid{grid-template-columns:1fr}.profile-form-group.full-width{grid-column:span 1}.modal{margin:8px;border-radius:var(--radius-lg)}.modal-footer{flex-wrap:wrap}.modal-footer .btn{flex:1}}@media(max-width:480px){.stats-grid{grid-template-columns:1fr}.page-title{font-size:20px}.filters{gap:5px}.filter-btn{padding:5px 12px;font-size:12px}.onboarding-card{padding:28px 22px}}.toast-stack{position:fixed;bottom:28px;right:24px;z-index:99999;display:flex;flex-direction:column-reverse;gap:10px;pointer-events:none;max-width:420px;width:calc(100vw - 48px)}.toast-item{display:flex;align-items:flex-start;gap:12px;padding:14px 16px;border-radius:var(--radius);border:1px solid transparent;background:var(--surface-raised, #1e293b);box-shadow:0 8px 32px #00000059,0 2px 8px #0003;pointer-events:all;animation:toastIn .28s var(--ease, cubic-bezier(.16,1,.3,1)) both;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}.toast-item.toast-leaving{animation:toastOut .28s var(--ease, cubic-bezier(.16,1,.3,1)) both}.toast-success{border-color:#22c55e4d;background:#102a14eb}.toast-success .toast-icon{color:#4ade80}.toast-error{border-color:#ef444459;background:#2a0e0eed}.toast-error .toast-icon{color:#f87171}.toast-warning{border-color:#f59e0b4d;background:#2a1e00eb}.toast-warning .toast-icon{color:#fbbf24}.toast-info{border-color:#6366f14d;background:#141432eb}.toast-info .toast-icon{color:#818cf8}.toast-icon{flex-shrink:0;margin-top:1px}.toast-msg{flex:1;font-size:13.5px;font-weight:500;color:var(--text-primary, #f1f5f9);line-height:1.5;word-break:break-word}.toast-close{flex-shrink:0;background:none;border:none;cursor:pointer;color:var(--text-muted, #94a3b8);padding:0;display:flex;align-items:center;margin-top:2px;opacity:.6;transition:opacity .15s}.toast-close:hover{opacity:1}@keyframes toastIn{0%{opacity:0;transform:translate(100%) scale(.92)}to{opacity:1;transform:translate(0) scale(1)}}@keyframes toastOut{0%{opacity:1;transform:translate(0) scale(1)}to{opacity:0;transform:translate(80%) scale(.9)}}.confirm-icon-danger{background:#ef44441a;border-color:#ef44444d}.confirm-icon-warning{background:#f59e0b1a;border-color:#f59e0b4d}.confirm-icon-info{background:#6366f11a;border-color:#6366f14d}.confirm-btn-warning{flex:1;padding:11px;background:#f59e0b1f;border:1.5px solid rgba(245,158,11,.35);color:#fbbf24;border-radius:var(--radius);font-size:13.5px;font-weight:700;cursor:pointer;transition:background .15s}.confirm-btn-warning:hover{background:#f59e0b38}.confirm-btn-info{flex:1;padding:11px;background:#6366f11f;border:1.5px solid rgba(99,102,241,.35);color:#818cf8;border-radius:var(--radius);font-size:13.5px;font-weight:700;cursor:pointer;transition:background .15s}.confirm-btn-info:hover{background:#6366f138}.confirm-btn-danger{cursor:pointer;transition:background .15s}.confirm-btn-danger:hover{background:#ef444438}.confirm-btn-cancel{cursor:pointer;transition:background .15s}.confirm-btn-cancel:hover{background:#ffffff0f}.confirm-input-wrap{width:100%;display:flex;flex-direction:column;gap:6px;margin-top:4px}.confirm-input-label{font-size:12.5px;color:var(--text-muted);font-weight:500}.confirm-input{width:100%;padding:10px 12px;background:var(--surface-raised, rgba(255,255,255,.05));border:1.5px solid var(--border);border-radius:var(--radius);color:var(--text-primary);font-size:14px;font-weight:600;letter-spacing:.05em;outline:none;transition:border-color .15s;box-sizing:border-box}.confirm-input:focus{border-color:var(--primary)}.confirm-input::placeholder{color:var(--text-muted);font-weight:400;letter-spacing:0}.profile-card{background:var(--sb-bg-2);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);overflow:hidden}.profile-header{background:linear-gradient(135deg,#2563eb,#9333ea);padding:2rem 1.5rem}.profile-header-content{display:flex;align-items:center;gap:1rem}.profile-avatar{width:5rem;height:5rem;background:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;overflow:hidden;flex-shrink:0}.profile-avatar img{width:100%;height:100%;object-fit:cover}.profile-avatar-initial{font-size:1.5rem;font-weight:700;color:#4b5563}.profile-info h1{font-size:1.875rem;font-weight:700;color:var(--sb-text-active);margin:0}.profile-email{color:#bfdbfe;margin:.25rem 0 .5rem;font-size:.875rem}.profile-badges{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.profile-badge{padding:.25rem .75rem;border-radius:var(--radius-pill);font-size:.875rem;font-weight:500}.profile-badge.role{background:#3b82f64d;color:#bfdbfe}.profile-badge.auth{background:#10b9814d;color:#a7f3d0}.profile-tabs{border-bottom:1px solid rgba(255,255,255,.08)}.profile-tabs-nav{display:flex;gap:2rem;padding:0 1.5rem}.profile-tab{padding:1rem .5rem;border-bottom:2px solid transparent;font-weight:500;font-size:.875rem;background:none;border-left:none;border-right:none;border-top:none;color:var(--sb-text);cursor:pointer;transition:var(--trans)}.profile-tab:hover{color:#d1d5db;border-bottom-color:#fff3}.profile-tab.active{border-bottom-color:var(--primary-mid);color:#818cf8}.profile-tab-icon{margin-right:.5rem}.change-password-success{text-align:center;padding:1.5rem 0}.change-password-success-icon{font-size:2.25rem;margin-bottom:.75rem}.change-password-success-title{font-size:1.125rem;font-weight:600;color:var(--sb-text-active);margin-bottom:.25rem}.change-password-success-text{font-size:.875rem;color:var(--sb-text)}.change-password-form{display:flex;flex-direction:column;gap:1rem}.change-password-field{display:flex;flex-direction:column}.change-password-label{display:block;font-size:.875rem;font-weight:500;color:#d1d5db;margin-bottom:.375rem}.change-password-input{width:100%;padding:.625rem .875rem;font-size:.875rem;border:1px solid var(--sb-border);border-radius:var(--radius-sm);background:#ffffff0f;color:var(--sb-text-active);transition:var(--trans)}.change-password-input:focus{outline:none;border-color:var(--primary-mid);box-shadow:0 0 0 3px var(--primary-glow)}.change-password-input:disabled{background:#ffffff08;opacity:.6}.change-password-actions{display:flex;gap:.75rem;padding-top:.5rem}.change-password-cancel{flex:1;padding:.625rem 1rem;font-size:.875rem;font-weight:500;color:var(--sb-text);background:#ffffff0f;border:1px solid var(--sb-border);border-radius:var(--radius-sm);cursor:pointer;transition:var(--trans-fast)}.change-password-cancel:hover{background:#ffffff1a}.change-password-submit{flex:1;padding:.625rem 1rem;font-size:.875rem;font-weight:600;color:#fff;background:var(--primary);border:none;border-radius:var(--radius-sm);cursor:pointer;transition:var(--trans-fast)}.change-password-submit:hover{background:var(--primary-dark);box-shadow:var(--shadow-primary)}.change-password-submit:disabled{opacity:.5;cursor:not-allowed}@media(max-width:768px){.profile-header{padding:1.5rem 1rem}.profile-tabs-nav{padding:0 1rem;gap:1rem}}#root{width:100%;min-height:100vh}.onboarding-container{min-height:100vh;background:linear-gradient(135deg,#667eea,#764ba2);display:flex;align-items:center;justify-content:center;padding:20px}.onboarding-card{background:#fff;border-radius:16px;box-shadow:0 20px 60px #0000004d;max-width:700px;width:100%;padding:40px}.onboarding-header{text-align:center;margin-bottom:40px}.onboarding-header h1{font-size:28px;color:#1f2937;margin-bottom:30px;font-weight:700}.onboarding-progress{margin:30px 0}.progress-steps{display:flex;justify-content:space-between;margin-bottom:20px}.progress-step{flex:1;text-align:center;position:relative}.progress-step .step-number{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:50%;background:#e5e7eb;color:#9ca3af;font-weight:600;font-size:16px;margin-bottom:8px;transition:all .3s ease}.progress-step.active .step-number{background:#667eea;color:#fff;box-shadow:0 4px 12px #667eea66}.progress-step.completed .step-number{background:#10b981;color:#fff}.progress-step.completed .step-number:after{content:"✓"}.progress-step .step-label{display:block;font-size:12px;color:#6b7280;font-weight:500}.progress-step.active .step-label{color:#667eea;font-weight:600}.progress-bar{width:100%;height:6px;background:#e5e7eb;border-radius:3px;overflow:hidden}.progress-bar-fill{height:100%;background:linear-gradient(90deg,#667eea,#764ba2);transition:width .5s ease}.onboarding-step{animation:fadeIn .3s ease}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.onboarding-step h2{font-size:24px;color:#1f2937;margin-bottom:10px;font-weight:700}.step-description{color:#6b7280;margin-bottom:30px;font-size:15px}.form-group{margin-bottom:24px}.form-group label{display:block;font-size:14px;font-weight:600;color:#374151;margin-bottom:8px}.form-group input,.form-group textarea{width:100%;padding:12px 16px;border:2px solid #e5e7eb;border-radius:8px;font-size:15px;transition:all .3s ease;font-family:inherit}.form-group input:focus,.form-group textarea:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.form-group small{display:block;margin-top:6px;font-size:13px;color:#6b7280}.btn-primary,.btn-secondary{width:100%;padding:14px 24px;border:none;border-radius:8px;font-size:16px;font-weight:600;cursor:pointer;transition:all .3s ease;margin-top:10px}.btn-primary{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.btn-primary:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 20px #667eea66}.btn-primary:disabled{opacity:.6;cursor:not-allowed}.btn-secondary{background:#fff;color:#667eea;border:2px solid #667eea}.btn-secondary:hover:not(:disabled){background:#f3f4f6}.btn-large{padding:16px 32px;font-size:18px;margin-top:20px}.onboarding-error{background:#fee2e2;border:1px solid #fca5a5;color:#991b1b;padding:12px 16px;border-radius:8px;margin-bottom:20px;font-size:14px}.onboarding-success{background:#d1fae5;border:1px solid #6ee7b7;color:#065f46;padding:12px 16px;border-radius:8px;margin-bottom:20px;font-size:14px}.onboarding-loading{text-align:center;padding:60px 20px;font-size:18px;color:#fff}.authenticator-section{margin-top:20px}.authenticator-actions{margin-top:30px;text-align:center}.auth-methods{display:flex;flex-direction:column;gap:16px;margin:30px 0}.auth-method-card{display:flex;align-items:center;padding:20px;border:2px solid #e5e7eb;border-radius:12px;cursor:pointer;transition:all .3s ease;background:#fff}.auth-method-card:hover:not(.disabled){border-color:#667eea;transform:translateY(-2px);box-shadow:0 4px 12px #667eea33}.auth-method-card.selected{border-color:#667eea;background:#f3f4ff;box-shadow:0 4px 12px #667eea33}.auth-method-card.disabled{opacity:.5;cursor:not-allowed;background:#f9fafb}.auth-method-icon{font-size:36px;margin-right:20px;flex-shrink:0}.auth-method-content{flex:1}.auth-method-content h3{font-size:16px;font-weight:600;color:#1f2937;margin:0 0 6px}.auth-method-content p{font-size:14px;color:#6b7280;margin:0}.auth-method-note{display:block;margin-top:6px;font-size:12px;color:#ef4444;font-style:italic}.auth-method-radio{flex-shrink:0}.auth-method-radio input[type=radio]{width:20px;height:20px;cursor:pointer}@media(max-width:768px){.onboarding-card{padding:30px 20px}.onboarding-header h1{font-size:24px}.progress-step .step-label{font-size:10px}.progress-step .step-number{width:32px;height:32px;font-size:14px}.onboarding-step h2{font-size:20px}}.opening-balance-manager{padding:1.5rem;max-width:1400px;margin:0 auto}.admin-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem;gap:1rem}.spinner{width:40px;height:40px;border:4px solid #f3f4f6;border-top:4px solid #3b82f6;border-radius:50%;animation:spin 1s linear infinite}.spinner-small{width:16px;height:16px;border:2px solid #ffffff;border-top:2px solid transparent;border-radius:50%;animation:spin .8s linear infinite;display:inline-block}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.admin-section-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:2rem;flex-wrap:wrap;gap:1rem}.admin-section-title{font-size:1.5rem;font-weight:600;color:#1f2937;margin:0 0 .5rem}.admin-section-desc{color:#6b7280;font-size:.875rem;margin:0}.admin-btn{display:inline-flex;align-items:center;gap:.5rem;padding:.625rem 1.25rem;border-radius:.5rem;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s;border:none;outline:none}.admin-btn-primary{background-color:#3b82f6;color:#fff}.admin-btn-primary:hover:not(:disabled){background-color:#2563eb}.admin-btn-primary:disabled{background-color:#93c5fd;cursor:not-allowed}.admin-btn-secondary{background-color:#f3f4f6;color:#374151}.admin-btn-secondary:hover:not(:disabled){background-color:#e5e7eb}.admin-btn-close{background:none;border:none;font-size:1.5rem;color:#6b7280;cursor:pointer;padding:.25rem;line-height:1}.admin-btn-close:hover{color:#1f2937}.admin-alert{padding:1rem;border-radius:.5rem;margin-bottom:1.5rem;display:flex;align-items:center;gap:.5rem}.admin-alert-error{background-color:#fee2e2;color:#991b1b;border:1px solid #fecaca}.admin-alert-success{background-color:#d1fae5;color:#065f46;border:1px solid #6ee7b7}.admin-card{background:#fff;border-radius:.75rem;box-shadow:0 1px 3px #0000001a;overflow:hidden;margin-bottom:1.5rem}.admin-card-header{padding:1.25rem 1.5rem;border-bottom:1px solid #e5e7eb;display:flex;justify-content:space-between;align-items:center}.admin-card-header h4{margin:0;font-size:1.125rem;font-weight:600;color:#1f2937}.admin-form{padding:1.5rem}.admin-form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1.5rem}.admin-form-group{display:flex;flex-direction:column;gap:.5rem}.admin-form-group-full{grid-column:1 / -1}.admin-label{font-size:.875rem;font-weight:500;color:#374151}.required{color:#ef4444;margin-left:.25rem}.admin-input,.admin-textarea{padding:.625rem .75rem;border:1px solid #d1d5db;border-radius:.5rem;font-size:.875rem;transition:all .2s;outline:none}.admin-input:focus,.admin-textarea:focus{border-color:#3b82f6;ring:2px;ring-color:rgba(59,130,246,.1)}.admin-input:disabled{background-color:#f9fafb;color:#6b7280;cursor:not-allowed}.admin-textarea{resize:vertical;font-family:inherit}.admin-help-text{font-size:.75rem;color:#6b7280}.admin-form-actions{display:flex;justify-content:flex-end;gap:1rem;margin-top:1.5rem;padding-top:1.5rem;border-top:1px solid #e5e7eb}.admin-empty-state{text-align:center;padding:3rem 1.5rem}.admin-empty-icon{font-size:3rem;margin-bottom:1rem}.admin-empty-state h3{font-size:1.125rem;font-weight:600;color:#1f2937;margin:0 0 .5rem}.admin-empty-state p{color:#6b7280;margin:0}.admin-table-container{overflow-x:auto}.admin-table{width:100%;border-collapse:collapse;font-size:.875rem}.admin-table thead{background-color:#f9fafb}.admin-table th{padding:.75rem 1rem;text-align:left;font-weight:600;color:#374151;border-bottom:1px solid #e5e7eb}.admin-table td{padding:1rem;border-bottom:1px solid #f3f4f6}.admin-table tbody tr:hover{background-color:#f9fafb}.transaction-id{font-family:Monaco,Courier New,monospace;font-size:.75rem;background-color:#f3f4f6;padding:.25rem .5rem;border-radius:.25rem;color:#374151}.account-cell{display:flex;flex-direction:column;gap:.25rem}.account-cell strong{color:#1f2937}.account-cell small{color:#6b7280;font-size:.75rem;text-transform:capitalize}.amount-cell{font-weight:600;color:#059669;text-align:right}.description-cell{display:flex;flex-direction:column;gap:.25rem}.description-cell small{color:#6b7280;font-size:.75rem}.user-cell{display:flex;flex-direction:column;gap:.25rem}.user-cell strong{color:#1f2937}.user-cell small{color:#6b7280;font-size:.75rem}.status-badge{display:inline-block;padding:.25rem .75rem;border-radius:9999px;font-size:.75rem;font-weight:500;text-transform:capitalize}.status-completed{background-color:#d1fae5;color:#065f46}.status-pending{background-color:#fef3c7;color:#92400e}.status-reversed{background-color:#fee2e2;color:#991b1b}.action-buttons{display:flex;gap:.5rem}.admin-btn-icon{background:none;border:none;font-size:1.25rem;cursor:pointer;padding:.25rem .5rem;border-radius:.25rem;transition:all .2s}.admin-btn-icon:hover:not(:disabled){background-color:#f3f4f6}.admin-btn-icon:disabled{opacity:.5;cursor:not-allowed}.admin-btn-danger:hover:not(:disabled){background-color:#fee2e2}.admin-info-card{background:#eff6ff;border:1px solid #bfdbfe;border-radius:.75rem;padding:1.5rem;margin-top:1.5rem}.admin-info-card h4{margin:0 0 1rem;font-size:1rem;font-weight:600;color:#1e40af}.admin-info-card ul{margin:0;padding-left:1.5rem;color:#1e40af}.admin-info-card li{margin-bottom:.5rem}.admin-info-card li:last-child{margin-bottom:0}@media(max-width:768px){.admin-section-header{flex-direction:column}.admin-form-grid{grid-template-columns:1fr}.admin-table{font-size:.75rem}.admin-table th,.admin-table td{padding:.5rem}}.documentation-page{padding:24px;max-width:100%;background:#f9fafb;min-height:100vh}.documentation-header{margin-bottom:24px}.documentation-header h1{font-size:32px;font-weight:700;color:#111827;margin:0 0 8px}.documentation-header>p{color:#6b7280;margin:0 0 24px}.search-bar{display:flex;gap:12px;max-width:800px;margin-bottom:20px}.search-input-wrapper{position:relative;flex:1}.search-icon{position:absolute;left:12px;top:50%;transform:translateY(-50%);width:20px;height:20px;color:#9ca3af}.search-input{width:100%;padding:12px 40px 12px 44px;border:1px solid #d1d5db;border-radius:8px;font-size:15px;transition:all .2s}.search-input:focus{outline:none;border-color:#6366f1;box-shadow:0 0 0 3px #6366f11a}.clear-search{position:absolute;right:8px;top:50%;transform:translateY(-50%);background:transparent;border:none;padding:4px;cursor:pointer;color:#6b7280;display:flex;align-items:center;justify-content:center;border-radius:4px}.clear-search:hover{background:#f3f4f6}.clear-search svg{width:16px;height:16px}.search-button{padding:12px 24px;background:#6366f1;color:#fff;border:none;border-radius:8px;font-weight:500;cursor:pointer;transition:background .2s;white-space:nowrap}.search-button:hover:not(:disabled){background:#4f46e5}.search-button:disabled{background:#d1d5db;cursor:not-allowed}.search-results{background:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:20px;margin-top:16px;max-width:800px}.search-results h3{font-size:18px;font-weight:600;margin:0 0 16px;color:#111827}.search-result-item{padding:16px;border:1px solid #e5e7eb;border-radius:6px;margin-bottom:12px;cursor:pointer;transition:all .2s}.search-result-item:hover{border-color:#6366f1;background:#f9fafb}.search-result-item h4{font-size:16px;font-weight:600;margin:0 0 8px;color:#111827}.result-matches{font-size:13px;color:#6b7280;margin:0 0 8px}.result-snippet{background:#f9fafb;padding:8px 12px;border-radius:4px;margin-top:8px;font-size:13px}.line-number{color:#6366f1;font-weight:500;margin-right:8px}.result-snippet code{color:#374151;font-family:Monaco,Courier New,monospace;white-space:pre-wrap;word-break:break-word}.documentation-content{display:grid;grid-template-columns:320px 1fr;gap:24px;align-items:start}.documentation-sidebar{background:#fff;border:1px solid #e5e7eb;border-radius:12px;padding:20px;position:sticky;top:24px;max-height:calc(100vh - 48px);overflow-y:auto}.category-filter{margin-bottom:20px}.category-filter label{display:block;font-size:13px;font-weight:500;color:#6b7280;margin-bottom:8px}.category-select{width:100%;padding:8px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:14px;background:#fff;cursor:pointer}.doc-stats{display:flex;gap:12px;margin-bottom:20px;padding-bottom:20px;border-bottom:1px solid #e5e7eb}.stat-item{flex:1;text-align:center}.stat-label{display:block;font-size:12px;color:#6b7280;margin-bottom:4px}.stat-value{display:block;font-size:20px;font-weight:700;color:#6366f1}.doc-nav{display:flex;flex-direction:column;gap:20px}.doc-category{border-bottom:1px solid #e5e7eb;padding-bottom:12px}.doc-category:last-child{border-bottom:none;padding-bottom:0}.category-title{font-size:13px;font-weight:600;color:#6b7280;text-transform:uppercase;letter-spacing:.05em;margin:0 0 12px}.doc-nav-item{display:flex;align-items:flex-start;gap:10px;padding:10px;border-radius:6px;cursor:pointer;transition:all .2s;margin-bottom:4px}.doc-nav-item:hover{background:#f9fafb}.doc-nav-item.active{background:#eef2ff;border-left:3px solid #6366f1;padding-left:7px}.doc-icon{width:18px;height:18px;color:#9ca3af;flex-shrink:0;margin-top:2px}.doc-nav-item.active .doc-icon{color:#6366f1}.doc-nav-info{flex:1;min-width:0}.doc-nav-title{font-size:14px;font-weight:500;color:#111827;margin-bottom:2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.doc-nav-meta{font-size:11px;color:#6b7280}.documentation-viewer{background:#fff;border:1px solid #e5e7eb;border-radius:12px;padding:32px;min-height:600px}.doc-header h1{font-size:36px;font-weight:700;color:#111827;margin:0 0 16px;line-height:1.2}.doc-meta{display:flex;flex-wrap:wrap;gap:16px;padding:16px 0;border-bottom:2px solid #e5e7eb;margin-bottom:32px}.meta-item{display:flex;align-items:center;gap:6px;font-size:13px;color:#6b7280}.meta-item svg{width:16px;height:16px}.markdown-content{line-height:1.7;color:#374151}.markdown-content h1{font-size:32px;font-weight:700;margin:40px 0 20px;color:#111827;padding-bottom:12px;border-bottom:2px solid #e5e7eb}.markdown-content h2{font-size:26px;font-weight:600;margin:32px 0 16px;color:#111827}.markdown-content h3{font-size:20px;font-weight:600;margin:24px 0 12px;color:#374151}.markdown-content h4{font-size:18px;font-weight:600;margin:20px 0 10px;color:#374151}.markdown-content p{margin:0 0 16px}.markdown-content ul,.markdown-content ol{margin:0 0 16px;padding-left:24px}.markdown-content li{margin-bottom:8px}.markdown-content a{color:#6366f1;text-decoration:none;border-bottom:1px solid transparent;transition:border-color .2s}.markdown-content a:hover{border-bottom-color:#6366f1}.markdown-content code.inline-code{background:#f3f4f6;padding:2px 6px;border-radius:3px;font-size:.9em;font-family:Monaco,Courier New,monospace;color:#dc2626}.markdown-content pre{background:#1f2937;padding:16px;border-radius:8px;overflow-x:auto;margin:16px 0}.markdown-content pre code{background:transparent;padding:0;color:#f3f4f6;font-family:Monaco,Courier New,monospace;font-size:14px;line-height:1.5}.markdown-content blockquote{border-left:4px solid #6366f1;padding:12px 16px;margin:16px 0;background:#f9fafb;color:#4b5563;font-style:italic}.markdown-content table{width:100%;border-collapse:collapse;margin:16px 0;font-size:14px}.markdown-content th{background:#f9fafb;padding:12px;text-align:left;font-weight:600;border:1px solid #e5e7eb;color:#111827}.markdown-content td{padding:12px;border:1px solid #e5e7eb}.markdown-content tr:nth-child(2n){background:#f9fafb}.markdown-content img{max-width:100%;height:auto;border-radius:8px;margin:16px 0}.markdown-content hr{border:none;border-top:2px solid #e5e7eb;margin:32px 0}.no-doc-selected{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:400px;color:#9ca3af;text-align:center}.no-doc-selected svg{width:64px;height:64px;margin-bottom:16px;opacity:.5}.no-doc-selected h2{font-size:24px;font-weight:600;color:#6b7280;margin:0 0 8px}.no-doc-selected p{font-size:16px;color:#9ca3af}.loading{text-align:center;padding:32px;color:#6b7280}@media(max-width:1024px){.documentation-content{grid-template-columns:1fr}.documentation-sidebar{position:static;max-height:none}}@media(max-width:640px){.documentation-page{padding:16px}.documentation-viewer{padding:20px}.doc-header h1{font-size:28px}.search-bar{flex-direction:column}.doc-meta{flex-direction:column;gap:8px}}
