:root{--primary:#6366f1;--primary-hover:#4f46e5;--bg-dark:#0f172a;--bg-card:#1e293bb3;--text-main:#f8fafc;--text-muted:#94a3b8;--accent:#10b981;--danger:#ef4444;--warning:#f59e0b;--glass:#ffffff0d;--glass-border:#ffffff1a;--sidebar-width:260px;--font-sans:"Inter", system-ui, -apple-system, sans-serif}*{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-sans);background-color:var(--bg-dark);color:var(--text-main);-webkit-font-smoothing:antialiased;overflow-x:hidden}#root{min-height:100vh;display:flex}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:var(--bg-dark)}::-webkit-scrollbar-thumb{background:var(--glass-border);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.animate-fade-in{animation:.3s ease-out forwards fadeIn}.glass-effect{background:var(--bg-card);-webkit-backdrop-filter:blur(12px);border:1px solid var(--glass-border);border-radius:16px}.app-container{width:100%;display:flex}.main-content{flex:1;max-width:1400px;margin:0 auto;padding:32px}.sidebar{width:var(--sidebar-width);border-right:1px solid var(--glass-border);background:#0f172a;flex-direction:column;height:100vh;padding:24px 16px;display:flex;position:sticky;top:0}.logo-container{align-items:center;gap:12px;margin-bottom:40px;padding:0 12px;display:flex}.logo-icon{background:linear-gradient(135deg, var(--primary), var(--accent));border-radius:8px;justify-content:center;align-items:center;width:32px;height:32px;font-size:14px;font-weight:700;display:flex}.logo-text{letter-spacing:-.5px;font-size:18px;font-weight:700}.nav-menu{flex-direction:column;flex:1;gap:4px;display:flex}.nav-item{color:var(--text-muted);cursor:pointer;text-align:left;background:0 0;border:none;border-radius:10px;align-items:center;gap:12px;width:100%;padding:12px;font-size:14px;font-weight:500;transition:all .2s;display:flex}.nav-item:hover{background:var(--glass);color:var(--text-main)}.nav-item.active{background:var(--primary);color:#fff;box-shadow:0 4px 12px #6366f14d}.sidebar-footer{border-top:1px solid var(--glass-border);margin-top:auto;padding-top:16px}.nav-item.logout:hover{color:var(--danger);background:#ef44441a}.search-container{gap:16px;margin-bottom:32px;display:flex}.search-box{flex:1;align-items:center;gap:12px;height:52px;padding:0 16px;display:flex}.search-input{color:#fff;background:0 0;border:none;outline:none;flex:1;font-size:15px}.search-input::placeholder,.search-icon{color:var(--text-muted)}.search-button{background:var(--primary);color:#fff;cursor:pointer;border:none;border-radius:8px;padding:8px 20px;font-weight:600;transition:background .2s}.search-button:hover{background:var(--primary-hover)}.filter-button{height:52px;color:var(--text-main);border:1px solid var(--glass-border);cursor:pointer;align-items:center;gap:8px;padding:0 20px;font-weight:500;display:flex}.table-container{border-radius:16px;width:100%;overflow-x:auto}.user-table{border-collapse:collapse;text-align:left;width:100%}.user-table th{color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;border-bottom:1px solid var(--glass-border);padding:16px 24px;font-size:13px;font-weight:600}.user-table td{border-bottom:1px solid var(--glass-border);cursor:pointer;padding:16px 24px;transition:background .2s}.user-table tr:hover td{background:#ffffff05}.user-info{align-items:center;gap:12px;display:flex}.avatar{background:var(--glass);width:40px;height:40px;color:var(--primary);border:1px solid var(--glass-border);border-radius:10px;justify-content:center;align-items:center;font-weight:700;display:flex;overflow:hidden}.avatar img{object-fit:cover;width:100%;height:100%}.user-details{flex-direction:column;display:flex}.user-name{font-size:15px;font-weight:600}.user-id{color:var(--text-muted);font-size:12px}.contact-info,.date-info{flex-direction:column;gap:4px;display:flex}.contact-item{color:var(--text-main);align-items:center;gap:8px;font-size:14px;display:flex}.contact-item span,.date-info span{font-size:14px}.status-badge{text-transform:capitalize;border-radius:6px;padding:4px 10px;font-size:12px;font-weight:600}.status-badge.free{color:#94a3b8;background:#94a3b81a}.status-badge.premium{color:#10b981;background:#10b9811a}.action-btn{color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:4px;padding:4px;transition:all .2s}.action-btn:hover{background:var(--glass);color:#fff}.loading-state,.empty-state{text-align:center;color:var(--text-muted);flex-direction:column;align-items:center;gap:16px;padding:60px;display:flex}.spinner{border:3px solid var(--glass-border);border-top-color:var(--primary);border-radius:50%;width:32px;height:32px;animation:1s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.details-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1000;background:#0006;justify-content:flex-end;display:flex;position:fixed;inset:0}.details-panel{border-left:1px solid var(--glass-border);background:#0f172a;border-radius:0;flex-direction:column;width:100%;max-width:500px;height:100%;padding:32px;display:flex;box-shadow:-10px 0 30px #00000080}.details-header{justify-content:space-between;align-items:flex-start;margin-bottom:32px;display:flex}.header-user{align-items:center;gap:16px;display:flex}.large-avatar{background:var(--glass);width:64px;height:64px;color:var(--primary);border:1px solid var(--glass-border);border-radius:16px;justify-content:center;align-items:center;font-size:24px;font-weight:700;display:flex;overflow:hidden}.large-avatar img{object-fit:cover;width:100%;height:100%}.header-info h2{margin-bottom:4px;font-size:20px}.header-info p{color:var(--text-muted);font-size:14px}.env-switcher{margin-bottom:24px;padding:0 12px}.section-label{color:var(--text-muted);letter-spacing:.1em;margin-bottom:12px;font-size:11px;font-weight:700}.switcher-buttons{background:#0003;border-radius:10px;gap:4px;padding:4px;display:flex}.switch-btn{color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:6px;flex:1;justify-content:center;align-items:center;gap:8px;padding:8px;font-size:13px;font-weight:600;transition:all .2s;display:flex}.switch-btn:hover{color:var(--text-main)}.switch-btn.active.dev{color:#818cf8;background:#6366f126;box-shadow:0 2px 4px #0000001a}.switch-btn.active.prod{color:#34d399;background:#10b98126;box-shadow:0 2px 4px #0000001a}.env-badge{vertical-align:middle;letter-spacing:.05em;border-radius:4px;margin-left:12px;padding:2px 8px;font-size:10px;font-weight:800}.env-badge.dev{color:#818cf8;background:#6366f133;border:1px solid #6366f14d}.env-badge.prod{color:#34d399;background:#10b98133;border:1px solid #10b9814d}.setup-guide.error{background:#ef44440d;border-color:#ef44444d}.icon-error{color:var(--danger)}.logout-btn-top{border:1px solid var(--glass-border);color:var(--text-muted);cursor:pointer;background:0 0;border-radius:8px;padding:8px 16px;font-size:14px;transition:all .2s}.logout-btn-top:hover{color:var(--danger);background:#ef44441a;border-color:#ef444433}.login-env-toggle{border:1px solid var(--glass-border);background:#0003;border-radius:12px;gap:4px;margin-top:24px;padding:4px;display:flex}.login-env-btn{color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:8px;flex:1;justify-content:center;align-items:center;gap:10px;padding:10px;font-size:14px;font-weight:600;transition:all .2s;display:flex}.login-env-btn:hover{color:var(--text-main);background:#ffffff0d}.login-env-btn.active.dev{color:#818cf8;background:#6366f126}.login-env-btn.active.prod{color:#34d399;background:#10b98126}.close-btn{color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:50%;padding:8px;transition:all .2s}.close-btn:hover{background:var(--glass);color:#fff}.details-content{flex:1;padding-right:8px;overflow-y:auto}.info-grid{grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:32px;display:grid}.info-card{flex-direction:column;gap:12px;padding:16px;display:flex}.card-header{color:var(--text-muted);align-items:center;gap:8px;font-size:13px;font-weight:600;display:flex}.card-body{flex-direction:column;gap:8px;display:flex}.stat-val{font-size:24px;font-weight:700}.stat-label{color:var(--text-muted);font-size:12px}.badge{border-radius:6px;padding:4px 10px;font-size:12px;font-weight:600;display:inline-block}.upgrade-btn{background:var(--glass);border:1px solid var(--glass-border);color:#fff;cursor:pointer;border-radius:6px;padding:6px;font-size:12px;transition:all .2s}.upgrade-btn:hover{background:var(--primary);border-color:var(--primary)}.tasks-section{flex-direction:column;gap:16px;display:flex}.section-title{align-items:center;gap:12px;display:flex}.count-pill{background:var(--glass);color:var(--text-muted);border-radius:10px;padding:2px 8px;font-size:12px}.task-list{flex-direction:column;gap:12px;display:flex}.task-item{flex-direction:column;gap:12px;padding:16px;display:flex}.task-main{align-items:flex-start;gap:12px;display:flex}.task-text p{margin-bottom:6px;font-size:14px;font-weight:500}.task-text p.completed{color:var(--text-muted);text-decoration:line-through}.task-meta{align-items:center;gap:12px;display:flex}.meta-item{color:var(--text-muted);align-items:center;gap:4px;font-size:12px;display:flex}.priority-pill{text-transform:uppercase;border-radius:4px;padding:2px 8px;font-size:10px;font-weight:700}.priority-pill.high{color:var(--danger);background:#ef44441a}.priority-pill.medium{color:var(--warning);background:#f59e0b1a}.priority-pill.low{color:var(--accent);background:#10b9811a}.subtasks-preview,.comments-preview{color:var(--text-muted);align-items:center;gap:6px;margin-left:30px;font-size:11px;display:flex}.icon-blue{color:var(--primary)}.icon-green{color:var(--accent)}.icon-muted{color:var(--text-muted)}.spinner-small{border:2px solid var(--glass-border);border-top-color:var(--primary);border-radius:50%;width:20px;height:20px;animation:1s linear infinite spin}.page-header{justify-content:space-between;align-items:flex-end;margin-bottom:40px;display:flex}.page-title{letter-spacing:-1px;margin-bottom:4px;font-size:32px;font-weight:800}.page-subtitle{color:var(--text-muted);font-size:16px}.refresh-btn{background:var(--glass);border:1px solid var(--glass-border);color:#fff;cursor:pointer;border-radius:10px;padding:10px 20px;font-weight:600;transition:all .2s}.refresh-btn:hover{background:var(--primary);border-color:var(--primary)}.stats-grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:24px;margin-bottom:32px;display:grid}.stat-card{align-items:center;gap:20px;padding:24px;display:flex}.stat-icon-wrapper{border-radius:14px;justify-content:center;align-items:center;width:52px;height:52px;display:flex}.stat-icon-wrapper.blue{color:var(--primary);background:#6366f11a}.stat-icon-wrapper.green{color:var(--accent);background:#10b9811a}.stat-info{flex-direction:column;display:flex}.stat-label{color:var(--text-muted);font-size:13px;font-weight:500}.stat-value{font-size:24px;font-weight:700}.placeholder-view{text-align:center;color:var(--text-muted);flex-direction:column;gap:16px;padding:80px;display:flex}.login-page{background:radial-gradient(circle at 100% 0,#6366f126,#0000),radial-gradient(circle at 0 100%,#10b9811a,#0000),#0f172a;justify-content:center;align-items:center;width:100vw;height:100vh;display:flex}.login-card{text-align:center;width:100%;max-width:420px;padding:48px}.login-header{margin-bottom:32px}.logo-icon.large{width:64px;height:64px;margin:0 auto 24px;font-size:24px}.login-header h1{letter-spacing:-1px;margin-bottom:8px;font-size:28px;font-weight:800}.login-header p{color:var(--text-muted);font-size:16px}.login-form{text-align:left;flex-direction:column;gap:24px;display:flex}.error-message{color:#ef4444;background:#ef44441a;border:1px solid #ef444433;border-radius:8px;align-items:center;gap:10px;padding:12px;font-size:14px;display:flex}.input-group{flex-direction:column;gap:8px;display:flex}.input-group label{color:var(--text-muted);font-size:13px;font-weight:600}.input-wrapper{align-items:center;display:flex;position:relative}.input-icon{color:var(--text-muted);position:absolute;left:14px}.input-wrapper input{background:var(--glass);border:1px solid var(--glass-border);color:#fff;border-radius:10px;outline:none;width:100%;height:48px;padding:0 16px 0 44px;font-size:15px;transition:all .2s}.input-wrapper input:focus{border-color:var(--primary);background:#ffffff14}.login-btn{background:var(--primary);color:#fff;cursor:pointer;border:none;border-radius:12px;justify-content:center;align-items:center;height:52px;margin-top:8px;font-size:16px;font-weight:700;transition:all .2s;display:flex}.login-btn:hover{background:var(--primary-hover);transform:translateY(-1px);box-shadow:0 4px 15px #6366f166}.login-btn:disabled{opacity:.7;cursor:not-allowed;transform:none}.login-footer{color:var(--text-muted);margin-top:32px;font-size:12px}.loading-screen{width:100vw;height:100vh;color:var(--text-muted);background:#0f172a;flex-direction:column;justify-content:center;align-items:center;gap:20px;display:flex}.header-actions{gap:12px;display:flex}.logout-btn-top{color:#ef4444;cursor:pointer;background:#ef44441a;border:1px solid #ef444433;border-radius:10px;padding:10px 20px;font-weight:600;transition:all .2s}.logout-btn-top:hover{color:#fff;background:#ef4444}.sections-container{margin-bottom:32px}.sections-list{flex-wrap:wrap;gap:10px;margin-top:12px;display:flex}.section-chip{color:var(--text-main);border-radius:20px;padding:6px 14px;font-size:13px;font-weight:500}.demo-notice{border-left:4px solid var(--primary);background:#6366f10d;align-items:flex-start;gap:20px;margin-bottom:32px;padding:24px;display:flex}.notice-icon{color:var(--primary);padding-top:2px}.notice-content h3{margin-bottom:8px;font-size:16px}.notice-content p{color:var(--text-muted);margin-bottom:16px;font-size:14px}.notice-steps{gap:20px;display:flex}.step{color:var(--text-main);background:var(--glass);border-radius:6px;padding:4px 12px;font-size:12px;font-weight:600}.notice-link{color:var(--primary);border-radius:8px;align-items:center;gap:8px;margin-left:auto;padding:8px 16px;font-size:14px;font-weight:600;text-decoration:none;transition:all .2s;display:flex}.notice-link:hover{background:#6366f11a}.setup-guide{border-left:4px solid var(--warning);background:#f59e0b0d;margin-bottom:32px;padding:32px}.guide-header{gap:16px;margin-bottom:24px;display:flex}.icon-warning{color:var(--warning)}.guide-steps{grid-template-columns:1fr 1fr;gap:32px;margin-bottom:24px;display:grid}.guide-step h4{color:var(--text-main);margin-bottom:8px;font-size:15px}.guide-step p{color:var(--text-muted);font-size:13px;line-height:1.5}.sql-box{color:#10b981;border:1px solid var(--glass-border);background:#000;border-radius:8px;margin-top:12px;padding:16px;font-family:monospace;font-size:11px;overflow-x:auto}.empty-search{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:16px;margin-top:24px;padding:64px;display:flex}.empty-search h3{color:var(--text-main);font-size:20px}.empty-search p{color:var(--text-muted);max-width:300px}.demo-tip{margin-top:8px;font-size:13px;font-style:italic;color:var(--primary)!important}.task-header-row{justify-content:space-between;align-items:center;margin-bottom:4px;display:flex}.section-label{color:#a855f7;text-transform:uppercase;background:#a855f71a;border-radius:4px;padding:2px 8px;font-size:10px;font-weight:600}.detail-nested-list{border-top:1px solid var(--glass-border);flex-direction:column;gap:8px;margin-top:12px;padding-top:12px;display:flex}.nested-title{color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;margin-bottom:4px;font-size:11px;font-weight:700}.nested-item{color:var(--text-main);align-items:center;gap:8px;font-size:13px;display:flex}.nested-item span.completed{color:var(--text-muted);text-decoration:line-through}.comment-item{background:#ffffff05;border-radius:8px;gap:10px;padding:8px;display:flex}.comment-text{color:var(--text-main);font-size:12px;line-height:1.4}.comment-date{color:var(--text-muted);margin-top:2px;font-size:10px;display:block}.task-status{padding-top:2px}.no-tasks{text-align:center;color:var(--text-muted);padding:40px;font-style:italic}.grouped-tasks-container{flex-direction:column;gap:32px;display:flex}.task-group{flex-direction:column;gap:16px;display:flex}.group-header{border-bottom:1px solid var(--glass-border);align-items:center;gap:10px;padding-bottom:8px;display:flex}.group-header h4{color:var(--text-main);text-transform:uppercase;letter-spacing:.05em;font-size:14px;font-weight:700}.icon-purple{color:#a855f7}.icon-orange{color:#f59e0b}.debug-bar{color:var(--text-muted);border:1px solid var(--glass-border);background:#0000004d;border-radius:8px;gap:16px;margin-bottom:24px;padding:8px 16px;font-size:11px;display:flex}.error-text{color:var(--danger);align-items:center;gap:4px;display:flex}.category-group{border:1px solid var(--glass-border);background:#ffffff05;border-radius:12px;flex-direction:column;gap:20px;padding:20px;display:flex}.category-header{color:var(--text-main);border-bottom:2px solid var(--primary);align-items:center;gap:12px;width:fit-content;padding-bottom:12px;display:flex}.category-header h3{text-transform:uppercase;letter-spacing:.1em;font-size:16px;font-weight:800}.category-content{flex-direction:column;gap:24px;display:flex}.date-small{color:var(--text-main);font-size:18px!important}.no-tasks-mini{color:var(--text-muted);text-align:center;background:#ffffff03;border-radius:8px;padding:12px;font-size:13px;font-style:italic}.details-tabs{border:1px solid var(--glass-border);background:#0003;border-radius:12px;gap:4px;margin-bottom:24px;padding:4px;display:flex}.tab-btn{color:var(--text-muted);cursor:pointer;white-space:nowrap;background:0 0;border:none;border-radius:8px;flex:1;justify-content:center;align-items:center;gap:6px;padding:10px;font-size:13px;font-weight:600;transition:all .2s;display:flex}.tab-btn:hover{color:var(--text-main);background:#ffffff0d}.tab-btn.active{color:#818cf8;background:#6366f126;border:1px solid #6366f133}.tab-content-container{flex-direction:column;gap:20px;display:flex}.tab-section-title{color:var(--text-main);text-transform:uppercase;letter-spacing:.05em;border-left:3px solid var(--primary);margin-bottom:16px;padding-left:10px;font-size:16px;font-weight:800}.no-data-card{text-align:center;color:var(--text-muted);flex-direction:column;justify-content:center;align-items:center;gap:16px;padding:48px 24px;font-size:14px;display:flex}.completed-timeline,.focus-timeline{flex-direction:column;gap:12px;display:flex}.completed-task-card,.focus-session-card{justify-content:space-between;align-items:center;gap:16px;padding:16px;transition:transform .2s,background .2s;display:flex}.completed-task-card:hover,.focus-session-card:hover{background:#ffffff05;border-color:#6366f133;transform:translate(4px)}.completed-card-left,.focus-card-left{align-items:center;gap:12px;display:flex}.completed-info-text h4{color:var(--text-muted);margin-bottom:4px;font-size:14px;font-weight:600;text-decoration:line-through}.completed-metadata,.focus-duration-text{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.section-badge-pill{color:#818cf8;text-transform:uppercase;letter-spacing:.02em;background:#6366f11f;border-radius:4px;padding:2px 6px;font-size:9px;font-weight:700}.priority-badge{text-transform:uppercase;letter-spacing:.02em;border-radius:4px;padding:2px 6px;font-size:9px;font-weight:800}.priority-badge.high{color:#f87171;background:#ef44441f}.priority-badge.medium{color:#fbbf24;background:#f59e0b1f}.priority-badge.low{color:#34d399;background:#10b9811f}.repeat-badge{color:var(--text-muted);font-size:10px;font-weight:500}.completed-card-right,.focus-date{color:var(--text-muted);white-space:nowrap;align-items:center;gap:6px;font-size:11px;display:flex}.habits-tab{flex-direction:column;display:flex}.habits-grid{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:16px;display:grid}.habit-card-admin{flex-direction:column;gap:16px;padding:16px;transition:transform .2s,border-color .2s;display:flex}.habit-card-admin:hover{border-color:#6366f14d;transform:translateY(-2px)}.habit-card-header{align-items:center;gap:12px;display:flex;position:relative}.habit-emoji-bg{border:1px solid var(--glass-border);background:#ffffff0a;border-radius:10px;justify-content:center;align-items:center;width:36px;height:36px;font-size:18px;display:flex}.habit-title-wrapper{flex-direction:column;max-width:calc(100% - 80px);display:flex}.habit-title-wrapper h4{color:var(--text-main);white-space:nowrap;text-overflow:ellipsis;margin-bottom:2px;font-size:14px;font-weight:700;overflow:hidden}.habit-subtitle{color:var(--text-muted);letter-spacing:.05em;font-size:9px;font-weight:800}.status-badge-mini{text-transform:uppercase;border-radius:4px;padding:2px 6px;font-size:8px;font-weight:800;position:absolute;top:0;right:0}.status-badge-mini.active{color:#34d399;background:#10b9811f;border:1px solid #10b98133}.status-badge-mini.inactive{color:#94a3b8;background:#94a3b81a}.habit-card-details{border-top:1px solid var(--glass-border);grid-template-columns:repeat(3,1fr);gap:8px;padding-top:12px;display:grid}.detail-stat{text-align:center;flex-direction:column;gap:2px;display:flex}.detail-stat .stat-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.02em;font-size:9px;font-weight:600}.detail-stat .stat-val-mini{color:var(--text-main);font-size:11px;font-weight:700}.color-orange{color:#f97316!important}.focus-info-text h4{color:var(--text-main);margin-bottom:2px;font-size:14px;font-weight:700}.focus-duration-text{color:var(--text-muted);align-items:center;gap:6px;font-size:12px;display:flex}.dot-divider{color:#ffffff26}.focus-card-right{align-items:center;gap:16px;display:flex}.focus-pct-badge{text-align:center;background:#ffffff05;border:1px solid;border-radius:6px;min-width:44px;padding:4px 8px;font-size:11px;font-weight:800}.shared-icon-badge{opacity:.8;vertical-align:middle;margin-left:6px;display:inline-block;transform:translateY(-1px)}.mfa-modal-overlay{-webkit-backdrop-filter:blur(8px);z-index:1000;background:#0f172abf;justify-content:center;align-items:center;width:100vw;height:100vh;display:flex;position:fixed;top:0;left:0}.mfa-modal-content{border-radius:20px;width:100%;max-width:480px;overflow:hidden;box-shadow:0 20px 40px #0006,0 0 50px #6366f10d;background:#1e293bd9!important;border:1px solid #ffffff26!important}.mfa-modal-header{border-bottom:1px solid #ffffff14;justify-content:space-between;align-items:center;padding:20px 24px;display:flex}.mfa-header-title{align-items:center;gap:12px;display:flex}.mfa-header-title h3{color:var(--text-main);letter-spacing:-.3px;font-size:18px;font-weight:700}.mfa-close-btn{color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:6px;justify-content:center;align-items:center;padding:4px;transition:all .2s;display:flex}.mfa-close-btn:hover{color:var(--text-main);background:#ffffff0d}.mfa-modal-body{padding:24px}.mfa-status-card{text-align:center;flex-direction:column;align-items:center;padding:12px 0;display:flex}.mfa-status-icon-wrapper{border-radius:50%;justify-content:center;align-items:center;width:80px;height:80px;margin-bottom:20px;display:flex}.mfa-status-icon-wrapper.success{background:#10b9811a;border:1px solid #10b98133;box-shadow:0 0 30px #10b98126}.mfa-status-icon-wrapper.warning{background:#f59e0b1a;border:1px solid #f59e0b33;box-shadow:0 0 30px #f59e0b26}.mfa-status-card h4{color:var(--text-main);margin-bottom:10px;font-size:20px;font-weight:700}.mfa-status-card p{color:var(--text-muted);max-width:380px;margin-bottom:24px;font-size:14px;line-height:1.6}.mfa-factor-details{background:#0f172a66;border:1px solid #ffffff0d;border-radius:12px;flex-direction:column;align-items:flex-start;gap:10px;width:100%;margin-bottom:28px;padding:16px;display:flex}.mfa-factor-details span{color:var(--text-muted);font-size:13px}.mfa-factor-details strong{color:var(--text-main)}.mfa-btn{cursor:pointer;border:none;border-radius:10px;justify-content:center;align-items:center;gap:10px;width:100%;height:48px;font-size:15px;font-weight:600;transition:all .2s ease-in-out;display:flex}.mfa-btn.enable-btn{background:var(--primary);color:#fff;box-shadow:0 4px 12px #6366f14d}.mfa-btn.enable-btn:hover:not(:disabled){background:var(--primary-hover);transform:translateY(-1px);box-shadow:0 6px 16px #6366f166}.mfa-btn.disable-btn{color:var(--danger);background:#ef44441a;border:1px solid #ef444433}.mfa-btn.disable-btn:hover:not(:disabled){background:#ef444433;transform:translateY(-1px)}.mfa-btn:disabled,.mfa-btn-secondary:disabled{opacity:.5;cursor:not-allowed;transform:none!important}.mfa-step-start p{color:var(--text-muted);text-align:center;margin-bottom:20px;font-size:14px;line-height:1.6}.mfa-benefits-list{text-align:left;background:#0f172a66;border:1px solid #ffffff0d;border-radius:12px;flex-direction:column;gap:12px;margin-bottom:28px;padding:16px;display:flex}.benefit-item{color:var(--text-muted);align-items:flex-start;font-size:13px;line-height:1.5;display:flex}.mfa-instructions{align-items:flex-start;gap:12px;margin-bottom:16px;display:flex}.instruction-step{background:var(--primary);color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:24px;height:24px;font-size:12px;font-weight:700;display:flex}.mfa-instructions p{color:var(--text-main);font-size:14px;font-weight:500;line-height:1.5}.mfa-qr-container{background:#fff;border-radius:16px;justify-content:center;align-items:center;width:180px;height:180px;margin:0 auto 24px;padding:16px;display:flex;box-shadow:0 10px 25px #0003}.mfa-qr-code{object-fit:contain;width:100%;height:100%}.mfa-qr-placeholder{justify-content:center;align-items:center;width:100%;height:100%;display:flex}.mfa-secret-box{background:#0f172a80;border:1px solid #ffffff0d;border-radius:10px;margin-bottom:24px;padding:12px 14px}.mfa-secret-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px;margin-bottom:6px;font-size:11px}.mfa-secret-key-wrapper{justify-content:space-between;align-items:center;gap:12px;display:flex}.mfa-secret-text{color:var(--text-main);letter-spacing:1px;word-break:break-all;font-family:monospace;font-size:14px;font-weight:600}.mfa-copy-btn{color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:4px;padding:4px;transition:all .2s}.mfa-copy-btn:hover{color:var(--text-main);background:#ffffff14}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.animate-pulse{animation:2s cubic-bezier(.4,0,.6,1) infinite pulse}@keyframes scaleUp{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.animate-scale-up{animation:.2s ease-out forwards scaleUp}.logo-icon.large.mfa-shield{background:#10b9811a;border:1px solid #10b98133;box-shadow:0 0 30px #10b98126}.login-btn.verify-btn{background:var(--accent);box-shadow:0 4px 12px #10b9814d}.login-btn.verify-btn:hover:not(:disabled){background:#0d9488;box-shadow:0 6px 16px #10b98166}.cancel-mfa-btn{width:100%;height:48px;color:var(--text-muted);cursor:pointer;background:0 0;border:1px solid #ffffff14;border-radius:10px;justify-content:center;align-items:center;gap:8px;margin-top:12px;font-size:14px;font-weight:500;transition:all .2s;display:flex}.cancel-mfa-btn:hover:not(:disabled){color:var(--text-main);background:#ffffff08}.otp-input-group{justify-content:center;gap:10px;margin:8px 0;display:flex}.otp-digit{border:2px solid var(--glass-border);color:#fff;text-align:center;caret-color:#0000;background:#0f172a99;border-radius:12px;outline:none;width:52px;height:60px;font-size:24px;font-weight:700;transition:border-color .2s,background .2s,transform .1s,box-shadow .2s}.otp-digit:focus{border-color:var(--primary);background:#6366f114;transform:scale(1.05);box-shadow:0 0 0 3px #6366f126}.otp-digit.filled{background:#6366f10f;border-color:#6366f180}.otp-digit.error{animation:.4s ease-in-out shake;background:#ef44440f!important;border-color:#ef444499!important;box-shadow:0 0 0 3px #ef44441a!important}.otp-digit:disabled{opacity:.5;cursor:not-allowed}@keyframes shake{0%,to{transform:translate(0)}20%{transform:translate(-4px)}40%{transform:translate(4px)}60%{transform:translate(-3px)}80%{transform:translate(3px)}}.mfa-verifying-indicator{color:var(--text-muted);justify-content:center;align-items:center;gap:10px;padding:4px 0;font-size:14px;display:flex}.security-header{margin-bottom:32px}.security-status-banner{border-radius:16px;align-items:center;gap:20px;margin-bottom:28px;padding:24px 28px;display:flex}.security-status-banner.status-secure{background:#10b9810d!important;border-color:#10b9814d!important}.security-status-banner.status-warning{background:#f59e0b0d!important;border-color:#f59e0b4d!important}.security-status-icon{flex-shrink:0}.security-status-text{flex:1}.security-status-text h3{margin-bottom:6px;font-size:17px;font-weight:700}.security-status-text p{color:var(--text-muted);font-size:13px;line-height:1.5}.security-status-badge{flex-shrink:0}.sec-badge{border-radius:20px;padding:6px 14px;font-size:12px;font-weight:700}.sec-badge.secure{color:#10b981;background:#10b98126;border:1px solid #10b9814d}.sec-badge.at-risk{color:#f59e0b;background:#f59e0b26;border:1px solid #f59e0b4d}.security-card{overflow:hidden}.security-card-header{border-bottom:1px solid var(--glass-border);align-items:center;gap:12px;padding:20px 28px;display:flex}.security-card-header h2{font-size:16px;font-weight:700}.mfa-enrolled-view{padding:28px}.enrolled-check-row{color:#10b981;align-items:center;gap:10px;margin-bottom:24px;font-size:14px;font-weight:600;display:flex}.factor-info-grid{border:1px solid var(--glass-border);background:#0f172a66;border-radius:12px;grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:32px;padding:20px;display:grid}.factor-info-item{flex-direction:column;gap:6px;display:flex}.factor-info-label{text-transform:uppercase;letter-spacing:.1em;color:var(--text-muted);font-size:11px;font-weight:600}.factor-info-value{font-size:14px;font-weight:600}.security-danger-zone{background:#ef444408;border:1px solid #ef444433;border-radius:12px;padding:20px}.security-danger-zone h4{color:var(--danger);text-transform:uppercase;letter-spacing:.08em;margin-bottom:8px;font-size:13px;font-weight:700}.security-danger-zone p{color:var(--text-muted);margin-bottom:16px;font-size:13px;line-height:1.6}.disable-mfa-btn{color:var(--danger);cursor:pointer;background:#ef44441a;border:1px solid #ef444433;border-radius:8px;align-items:center;gap:8px;padding:10px 20px;font-size:14px;font-weight:600;transition:all .2s;display:inline-flex}.disable-mfa-btn:hover{background:#ef44442e;transform:translateY(-1px)}.mfa-start-view,.mfa-qr-view,.mfa-success-view{text-align:center;flex-direction:column;align-items:center;padding:32px 28px;display:flex}.mfa-qr-view{text-align:left;align-items:flex-start}.mfa-intro-icon-wrap{border-radius:50%;justify-content:center;align-items:center;width:88px;height:88px;margin-bottom:24px;display:flex}.mfa-intro-icon-wrap.warning{background:#f59e0b1a;border:1px solid #f59e0b33}.mfa-intro-icon-wrap.success{background:#10b9811a;border:1px solid #10b98133;animation:2s ease-in-out infinite pulse-glow}@keyframes pulse-glow{0%,to{box-shadow:0 0 20px #10b98126}50%{box-shadow:0 0 40px #10b9814d}}.mfa-start-view h3,.mfa-success-view h3{margin-bottom:12px;font-size:22px;font-weight:700}.mfa-start-view p,.mfa-success-view p{color:var(--text-muted);max-width:420px;margin-bottom:28px;font-size:14px;line-height:1.6}.mfa-features{border:1px solid var(--glass-border);text-align:left;background:#0f172a66;border-radius:12px;flex-direction:column;gap:12px;width:100%;max-width:380px;margin-bottom:28px;padding:16px 20px;display:flex}.mfa-feature-item{color:var(--text-muted);align-items:flex-start;gap:10px;font-size:13px;display:flex}.feature-dot{background:var(--primary);border-radius:50%;flex-shrink:0;width:6px;height:6px;margin-top:5px}.enable-mfa-btn{background:var(--primary);color:#fff;cursor:pointer;border:none;border-radius:12px;justify-content:center;align-items:center;gap:10px;height:48px;padding:0 28px;font-size:15px;font-weight:600;transition:all .2s;display:inline-flex;box-shadow:0 4px 12px #6366f14d}.enable-mfa-btn:hover:not(:disabled){background:var(--primary-hover);transform:translateY(-1px);box-shadow:0 6px 16px #6366f166}.enable-mfa-btn:disabled{opacity:.5;cursor:not-allowed;transform:none}.enroll-step-row{align-items:flex-start;gap:12px;width:100%;margin-bottom:20px;display:flex}.enroll-step-num{background:var(--primary);color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:26px;height:26px;font-size:12px;font-weight:700;display:flex}.enroll-step-row p{margin:2px 0 0;font-size:14px;font-weight:500;line-height:1.5}.qr-wrapper{justify-content:center;width:100%;margin-bottom:24px;display:flex}.qr-image{background:#fff;border-radius:16px;width:200px;height:200px;padding:12px;box-shadow:0 10px 30px #0000004d}.qr-loading{border:1px solid var(--glass-border);background:#0f172a66;border-radius:16px;justify-content:center;align-items:center;width:200px;height:200px;display:flex}.secret-box{background:#0f172a80;border:1px solid #ffffff0f;border-radius:10px;width:100%;margin-bottom:24px;padding:14px 16px}.secret-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px;margin-bottom:8px;font-size:11px}.secret-key-row{justify-content:space-between;align-items:center;gap:12px;display:flex}.secret-key-row code{word-break:break-all;letter-spacing:1px;font-family:monospace;font-size:13px;font-weight:600}.copy-secret-btn{color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:4px;flex-shrink:0;padding:4px;transition:all .2s}.copy-secret-btn:hover{color:#fff;background:#ffffff14}.sec-error{color:var(--danger);background:#ef44441a;border:1px solid #ef444433;border-radius:8px;align-items:center;gap:8px;width:100%;margin-bottom:16px;padding:10px 14px;font-size:13px;animation:.2s ease-out fadeIn;display:flex}.verify-loading-row{color:var(--text-muted);align-items:center;gap:10px;margin-top:12px;font-size:13px;display:flex}.enroll-action-row{justify-content:flex-end;gap:12px;width:100%;margin-top:24px;display:flex}.back-btn{border:1px solid var(--glass-border);color:var(--text-muted);cursor:pointer;background:#ffffff0d;border-radius:10px;padding:10px 24px;font-size:14px;font-weight:500;transition:all .2s}.back-btn:hover:not(:disabled){color:var(--text-main);background:#ffffff14}.back-btn:disabled{opacity:.5;cursor:not-allowed}.confirm-modal-overlay{-webkit-backdrop-filter:blur(8px);z-index:2000;background:#0f172acc;justify-content:center;align-items:center;width:100vw;height:100vh;display:flex;position:fixed;top:0;left:0}.confirm-modal-content{border-radius:20px;width:100%;max-width:440px;overflow:hidden;box-shadow:0 24px 48px #00000080;background:#1e293bf2!important;border:1px solid #ffffff1f!important}.confirm-modal-header{border-bottom:1px solid #ffffff0f;justify-content:space-between;align-items:center;padding:20px 24px;display:flex}.confirm-modal-title{align-items:center;gap:12px;display:flex}.confirm-modal-title h3{font-size:16px;font-weight:700}.confirm-modal-body{padding:24px}.confirm-warning-box{background:#ef444414;border:1px solid #ef444426;border-radius:10px;gap:12px;margin-bottom:24px;padding:16px;display:flex}.confirm-warning-box p{color:var(--text-muted);font-size:13px;line-height:1.6}.verify-instruction{color:var(--text-muted);margin-bottom:20px;font-size:14px;line-height:1.6}.confirm-modal-actions{justify-content:flex-end;gap:12px;margin-top:24px;display:flex}.confirm-cancel-btn{border:1px solid var(--glass-border);color:var(--text-muted);cursor:pointer;background:#ffffff0d;border-radius:10px;padding:10px 20px;font-size:14px;font-weight:500;transition:all .2s}.confirm-cancel-btn:hover:not(:disabled){color:#fff;background:#ffffff14}.confirm-proceed-btn{color:#f59e0b;cursor:pointer;background:#f59e0b26;border:1px solid #f59e0b4d;border-radius:10px;padding:10px 20px;font-size:14px;font-weight:600;transition:all .2s}.confirm-proceed-btn:hover{background:#f59e0b40;transform:translateY(-1px)}.confirm-danger-btn{background:var(--danger);color:#fff;cursor:pointer;border:none;border-radius:10px;align-items:center;gap:8px;padding:10px 20px;font-size:14px;font-weight:600;transition:all .2s;display:inline-flex}.confirm-danger-btn:hover:not(:disabled){background:#dc2626;transform:translateY(-1px);box-shadow:0 4px 12px #ef44444d}.confirm-danger-btn:disabled{opacity:.5;cursor:not-allowed;transform:none}.nav-badge-dot{background:#f59e0b;border-radius:50%;flex-shrink:0;width:8px;height:8px;margin-left:auto}.sidebar-mfa-status{border-radius:8px;align-items:center;gap:8px;margin-bottom:8px;padding:8px 12px;font-size:12px;font-weight:600;display:flex}.sidebar-mfa-status.secured{color:#10b981;background:#10b98114}.sidebar-mfa-status.unsecured{color:#f59e0b;background:#f59e0b14}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}.animate-bounce{animation:1s ease-in-out 3 bounce}
