@import "https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&display=swap";*,:before,:after{box-sizing:border-box;margin:0;padding:0}:root{--purple-primary:#6c3fc5;--purple-light:#8b5cf6;--purple-bg:#f0eeff;--purple-badge:#ede9fe;--bg-main:#f4f3fc;--bg-card:#fff;--bg-option:#f8f7ff;--text-primary:#1a1033;--text-secondary:#6b7280;--text-muted:#9ca3af;--border:#e5e7eb;--border-selected:#6c3fc5;--correct:#22c55e;--incorrect:#ef4444;--font:"Inter", system-ui, -apple-system, sans-serif}html,body,#root{height:100%}body{font-family:var(--font);background:var(--bg-main);color:var(--text-primary);-webkit-font-smoothing:antialiased}.lm-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1000;background:#0a061e8c;justify-content:center;align-items:center;animation:.18s lmFadeIn;display:flex;position:fixed;inset:0}.lm-modal{background:var(--bg-card);border-radius:20px;width:100%;max-width:420px;padding:2rem 2rem 2.25rem;animation:.22s cubic-bezier(.34,1.4,.64,1) lmSlideUp;box-shadow:0 20px 60px #6c3fc533,0 4px 16px #0000001a}.lm-header{justify-content:space-between;align-items:center;margin-bottom:1.5rem;display:flex}.lm-logo{color:var(--purple-primary);font-size:1.05rem;font-weight:800}.lm-close{color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:6px;padding:.3rem .5rem;font-size:.95rem;line-height:1;transition:color .15s,background .15s}.lm-close:hover{color:var(--text-primary);background:var(--bg-option)}.lm-title{color:var(--text-primary);letter-spacing:-.4px;margin-bottom:.35rem;font-size:1.5rem;font-weight:800}.lm-subtitle{color:var(--text-secondary);margin-bottom:1.75rem;font-size:.875rem}.lm-form{flex-direction:column;gap:1.1rem;display:flex}.lm-field{flex-direction:column;gap:.4rem;display:flex}.lm-label{color:var(--text-secondary);letter-spacing:.02em;font-size:.8rem;font-weight:600}.lm-input{background:var(--bg-option);border:1.5px solid var(--border);font-family:var(--font);color:var(--text-primary);border-radius:10px;outline:none;padding:.75rem 1rem;font-size:.93rem;transition:border-color .18s,box-shadow .18s}.lm-input::placeholder{color:var(--text-muted)}.lm-input:focus{border-color:var(--purple-primary);box-shadow:0 0 0 3px #6c3fc51f}.lm-input.error{border-color:var(--incorrect);background:#fff5f5;box-shadow:0 0 0 3px #ef44441a}.lm-error{color:var(--incorrect);margin-top:-.15rem;font-size:.75rem;font-weight:500}.lm-submit{background:var(--purple-primary);color:#fff;width:100%;font-family:var(--font);cursor:pointer;border:none;border-radius:10px;margin-top:.4rem;padding:.85rem;font-size:1rem;font-weight:700;transition:background .18s,transform .1s,box-shadow .18s;box-shadow:0 4px 14px #6c3fc559}.lm-submit:hover{background:#5a2fa8;transform:translateY(-1px);box-shadow:0 6px 20px #6c3fc573}.lm-submit:active{transform:translateY(0)}@keyframes lmFadeIn{0%{opacity:0}to{opacity:1}}@keyframes lmSlideUp{0%{opacity:0;transform:translateY(20px)scale(.97)}to{opacity:1;transform:translateY(0)scale(1)}}.lp-page{background:var(--bg-main);flex-direction:column;min-height:100vh;display:flex;overflow:hidden}.lp-nav{background:var(--bg-main);justify-content:space-between;align-items:center;height:64px;padding:0 2.5rem;display:flex}.lp-logo{color:var(--purple-primary);letter-spacing:-.3px;font-size:1.15rem;font-weight:800}.lp-login-btn{background:var(--purple-primary);color:#fff;font-family:var(--font);cursor:pointer;border:none;border-radius:10px;padding:.55rem 1.4rem;font-size:.88rem;font-weight:600;transition:background .18s,transform .1s,box-shadow .18s;box-shadow:0 3px 10px #6c3fc547}.lp-login-btn:hover{background:#5a2fa8;transform:translateY(-1px);box-shadow:0 5px 16px #6c3fc561}.lp-hero{flex:1;grid-template-columns:1fr 1fr;align-items:center;gap:2rem;width:100%;max-width:1200px;margin:0 auto;padding:2.5rem 3rem 3rem;display:grid}.lp-left{flex-direction:column;gap:1.25rem;display:flex}.lp-headline{color:var(--text-primary);letter-spacing:-1px;font-size:clamp(2rem,4vw,2.9rem);font-weight:900;line-height:1.15}.lp-headline-accent{color:var(--purple-primary)}.lp-subtext{color:var(--text-secondary);max-width:400px;font-size:.95rem;line-height:1.7}.lp-form{background:var(--bg-card);border:1.5px solid var(--purple-primary);border-radius:16px;flex-direction:column;gap:.75rem;max-width:400px;padding:1.25rem 1.4rem 1.4rem;display:flex;box-shadow:0 4px 20px #6c3fc51a}.lp-form-label{color:var(--text-secondary);letter-spacing:.02em;align-items:center;gap:.5rem;font-size:.82rem;font-weight:700;display:flex}.lp-form-icon{font-size:1rem}.lp-input{background:var(--bg-option);border:1.5px solid var(--border);width:100%;font-family:var(--font);color:var(--text-primary);border-radius:10px;outline:none;padding:.75rem 1rem;font-size:.93rem;transition:border-color .18s,box-shadow .18s}.lp-input::placeholder{color:var(--text-muted)}.lp-input:focus{border-color:var(--purple-primary);box-shadow:0 0 0 3px #6c3fc51f}.lp-launch-btn{background:var(--purple-primary);color:#fff;width:100%;font-family:var(--font);cursor:pointer;letter-spacing:.01em;border:none;border-radius:10px;padding:.85rem;font-size:1rem;font-weight:700;transition:background .18s,transform .1s,box-shadow .18s;box-shadow:0 4px 16px #6c3fc559}.lp-launch-btn:hover{background:#5a2fa8;transform:translateY(-1px);box-shadow:0 6px 20px #6c3fc573}.lp-launch-btn:active{transform:translateY(0)}.lp-right{position:relative}.lp-image-frame{border-radius:20px;position:relative;overflow:hidden;box-shadow:0 8px 40px #6c3fc52e,0 2px 8px #0000001f}.lp-hero-img{object-fit:cover;width:100%;height:460px;display:block}.lp-status-badge{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffffeb;border-radius:14px;align-items:flex-start;gap:.75rem;max-width:260px;padding:.85rem 1.1rem;animation:.6s cubic-bezier(.34,1.56,.64,1) .3s both slideUp;display:flex;position:absolute;bottom:1.5rem;left:1.5rem;box-shadow:0 4px 20px #00000026}.lp-status-dot{background:linear-gradient(135deg,#a78bfa,#6c3fc5);border-radius:10px;justify-content:center;align-items:center;width:36px;min-width:36px;height:36px;font-size:1.1rem;display:flex;position:relative}.lp-status-dot:after{content:"✦";color:#fff;font-size:1rem}.lp-status-text{flex-direction:column;gap:.15rem;display:flex}.lp-status-eyebrow{text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);font-size:.62rem;font-weight:700}.lp-status-title{color:var(--text-primary);font-size:.85rem;font-weight:700}.lp-status-desc{color:var(--text-secondary);font-size:.75rem;font-style:italic;line-height:1.4}@keyframes shake{0%,to{transform:translate(0)}20%{transform:translate(-6px)}40%{transform:translate(6px)}60%{transform:translate(-4px)}80%{transform:translate(4px)}}.lp-input.shake{border-color:var(--incorrect);animation:.45s shake;box-shadow:0 0 0 3px #ef44441f}@keyframes slideUp{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@media (width<=768px){.lp-hero{grid-template-columns:1fr;padding:1.5rem}.lp-right{order:-1}.lp-hero-img{height:260px}.lp-nav{padding:1rem 1.5rem}.lp-form{max-width:100%}}.qp-page{background:var(--bg-main);flex-direction:column;min-height:100vh;display:flex}.qp-header{background:var(--bg-card);border-bottom:1px solid var(--border);align-items:center;height:64px;padding:0 2.5rem;display:flex}.qp-logo{color:var(--purple-primary);letter-spacing:-.3px;font-size:1.15rem;font-weight:800}.qp-title-section{text-align:center;padding:1.75rem 2rem .5rem}.qp-title-eyebrow{letter-spacing:.1em;color:var(--text-muted);text-transform:uppercase;margin-bottom:.5rem;font-size:.72rem;font-weight:700}.qp-title-heading{color:var(--purple-primary);letter-spacing:-.5px;font-size:1.9rem;font-weight:800;line-height:1.2}.qp-main{flex:1;grid-template-columns:1fr 280px;align-items:start;gap:1.5rem;width:100%;max-width:1080px;margin:0 auto;padding:2rem 2.5rem;display:grid}.qp-card{background:var(--bg-card);border-radius:16px;padding:2rem 2rem 1.5rem;box-shadow:0 1px 3px #0000000f,0 4px 16px #6c3fc50f}.qp-question-badge{background:var(--purple-badge);color:var(--purple-primary);letter-spacing:.08em;text-transform:uppercase;border-radius:999px;margin-bottom:1.25rem;padding:.3rem .8rem;font-size:.72rem;font-weight:700;display:inline-block}.qp-question-text{color:var(--text-primary);margin-bottom:1.75rem;font-size:1.25rem;font-weight:600;line-height:1.55}.qp-options{flex-direction:column;gap:.75rem;margin-bottom:1.5rem;display:flex}.qp-options.locked{pointer-events:none;cursor:default}.qp-option{background:var(--bg-option);border:1.5px solid var(--border);cursor:pointer;text-align:left;font-family:var(--font);border-radius:12px;align-items:center;gap:1rem;padding:1rem 1.25rem;transition:border-color .18s,background .18s,box-shadow .18s;display:flex}.qp-option:hover{border-color:var(--purple-light);background:#faf8ff;box-shadow:0 2px 8px #6c3fc51a}.qp-option.selected{border-color:var(--purple-primary);background:#f3eeff;box-shadow:0 2px 12px #6c3fc526}.qp-option.reveal-correct{border-color:var(--correct);background:#f0fdf4;transition:background .15s,border-color .15s;box-shadow:0 2px 12px #22c55e26}.qp-option.reveal-wrong{border-color:var(--incorrect);background:#fef2f2;transition:background .15s,border-color .15s;box-shadow:0 2px 12px #ef444426}.qp-option-label{background:var(--bg-card);border:1.5px solid var(--border);min-width:32px;height:32px;color:var(--text-secondary);border-radius:8px;justify-content:center;align-items:center;font-size:.8rem;font-weight:700;transition:background .18s,color .18s,border-color .18s;display:flex}.qp-option-label.selected{background:var(--purple-primary);border-color:var(--purple-primary);color:#fff}.qp-option-label.reveal-correct{background:var(--correct);border-color:var(--correct);color:#fff}.qp-option-label.reveal-wrong{background:var(--incorrect);border-color:var(--incorrect);color:#fff}.qp-option-text{color:var(--text-primary);font-size:.95rem;font-weight:500;line-height:1.45}.qp-hint-box{opacity:0;color:#92400e;background:#fffbeb;border:1px solid #0000;border-radius:10px;max-height:0;margin-bottom:0;padding:0 1.1rem;font-size:.88rem;transition:max-height .3s,opacity .25s,margin-bottom .3s,padding .3s;overflow:hidden}.qp-hint-box.open{opacity:1;border-color:#fde68a;max-height:120px;margin-bottom:1.25rem;padding:.85rem 1.1rem}.qp-card-footer{border-top:1px solid var(--border);justify-content:space-between;align-items:center;padding-top:1.25rem;display:flex}.qp-hint-btn{cursor:pointer;font-family:var(--font);color:var(--text-secondary);background:0 0;border:none;border-radius:8px;align-items:center;gap:.45rem;padding:.4rem .6rem;font-size:.88rem;font-weight:500;transition:color .15s,background .15s;display:flex}.qp-hint-btn:hover{color:var(--purple-primary);background:var(--purple-badge)}.qp-confirm-btn{background:var(--purple-primary);color:#fff;font-family:var(--font);cursor:pointer;border:none;border-radius:10px;padding:.75rem 1.75rem;font-size:.95rem;font-weight:600;transition:background .18s,transform .1s,box-shadow .18s;box-shadow:0 3px 12px #6c3fc54d}.qp-confirm-btn:hover:not(.disabled){background:#5a2fa8;transform:translateY(-1px);box-shadow:0 5px 18px #6c3fc566}.qp-confirm-btn:active:not(.disabled){transform:translateY(0)}.qp-confirm-btn.disabled{cursor:not-allowed;box-shadow:none;background:#c4b5e8}.qp-sidebar{background:var(--bg-card);border-radius:16px;padding:1.5rem;position:sticky;top:1.5rem;box-shadow:0 1px 3px #0000000f,0 4px 16px #6c3fc50f}.qp-sidebar-title{color:var(--purple-primary);letter-spacing:.02em;margin-bottom:1.25rem;font-size:.85rem;font-weight:700}.qp-sidebar-stats{gap:1rem;margin-bottom:1.25rem;display:flex}.qp-sidebar-stat{flex-direction:column;gap:.2rem;display:flex}.qp-sidebar-stat-value{color:var(--text-primary);font-size:2rem;font-weight:800;line-height:1}.qp-sidebar-stat-total{color:var(--text-muted);font-size:1rem;font-weight:500}.qp-score{color:var(--purple-primary)!important}.qp-sidebar-stat-label{text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);font-size:.68rem;font-weight:600}.qp-progress-bar-track{background:#e9e4f5;border-radius:999px;height:8px;margin-bottom:.75rem;overflow:hidden}.qp-progress-bar-fill{background:linear-gradient(90deg, var(--purple-primary), var(--purple-light));border-radius:999px;height:100%;transition:width .4s cubic-bezier(.4,0,.2,1)}.qp-sidebar-footer{color:var(--text-muted);font-size:.75rem}.qp-results-wrapper{background:var(--bg-main);justify-content:center;align-items:center;min-height:100vh;padding:2rem;display:flex}.qp-results-card{background:var(--bg-card);text-align:center;border-radius:20px;width:100%;max-width:640px;padding:2.5rem 2rem;box-shadow:0 4px 24px #6c3fc51a}.qp-results-emoji{margin-bottom:1rem;font-size:3.5rem;animation:.4s cubic-bezier(.34,1.56,.64,1) popIn}.qp-results-title{color:var(--text-primary);margin-bottom:.4rem;font-size:2rem;font-weight:800}.qp-results-subtitle{color:var(--text-secondary);margin-bottom:2rem;font-size:.95rem}.qp-results-stats{background:var(--bg-option);border-radius:14px;justify-content:center;align-items:center;gap:1.5rem;margin-bottom:1.75rem;padding:1.5rem;display:flex}.qp-stat{flex-direction:column;align-items:center;gap:.3rem;display:flex}.qp-stat--divider{background:var(--border);width:1px;height:40px}.qp-stat-number{font-size:2rem;font-weight:800;line-height:1}.qp-stat--correct .qp-stat-number{color:var(--correct)}.qp-stat--incorrect .qp-stat-number{color:var(--incorrect)}.qp-stat--pct .qp-stat-number{color:var(--purple-primary)}.qp-stat-label{text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);font-size:.7rem;font-weight:600}.qp-results-breakdown{text-align:left;flex-direction:column;gap:.6rem;margin-bottom:2rem;display:flex}.qp-breakdown-row{border-radius:10px;align-items:flex-start;gap:.65rem;padding:.7rem .9rem;font-size:.88rem;display:flex}.qp-breakdown-row.correct{color:#15803d;background:#f0fdf4}.qp-breakdown-row.incorrect{color:#b91c1c;background:#fef2f2}.qp-breakdown-indicator{min-width:1rem;margin-top:1px;font-weight:700}.qp-breakdown-text{flex:1;font-weight:500;line-height:1.4}.qp-breakdown-answer{opacity:.8;white-space:nowrap;font-style:italic}.qp-results-actions{gap:.75rem;display:flex}.qp-retry-btn{background:var(--purple-primary);color:#fff;font-family:var(--font);cursor:pointer;border:none;border-radius:12px;flex:1;padding:.9rem;font-size:1rem;font-weight:700;transition:background .18s,transform .1s,box-shadow .18s;box-shadow:0 4px 16px #6c3fc559}.qp-retry-btn:hover{background:#5a2fa8;transform:translateY(-1px);box-shadow:0 6px 20px #6c3fc573}.qp-retry-btn:active{transform:translateY(0)}.qp-exit-btn{color:var(--text-secondary);border:1.5px solid var(--border);font-family:var(--font);cursor:pointer;background:0 0;border-radius:12px;flex:1;padding:.85rem;font-size:1rem;font-weight:600;transition:border-color .18s,color .18s,background .18s}.qp-exit-btn:hover{border-color:var(--purple-primary);color:var(--purple-primary);background:var(--purple-badge)}.qp-center{flex-direction:column;justify-content:center;align-items:center;gap:1rem;min-height:100vh;display:flex}.qp-spinner{border:3px solid var(--purple-badge);border-top-color:var(--purple-primary);border-radius:50%;width:40px;height:40px;animation:.7s linear infinite spin}.qp-loading-text{color:var(--text-secondary);font-size:.95rem}.qp-error{color:var(--incorrect);font-size:.95rem;font-weight:500}@keyframes fadeIn{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}@keyframes popIn{0%{opacity:0;transform:scale(.6)}to{opacity:1;transform:scale(1)}}@keyframes spin{to{transform:rotate(360deg)}}@media (width<=720px){.qp-main{grid-template-columns:1fr;padding:1.25rem}.qp-sidebar{order:-1;position:static}.qp-header{padding:1rem 1.25rem}.qp-results-card{padding:2rem 1.25rem}}.qnf-page{background:var(--bg-main);min-height:100vh;font-family:var(--font);flex-direction:column;display:flex;position:relative;overflow:hidden}.qnf-header{background:var(--bg-main);z-index:10;align-items:center;height:64px;padding:0 2.5rem;display:flex}.qnf-logo{color:var(--purple-primary);letter-spacing:-.3px;cursor:pointer;font-size:1.15rem;font-weight:800}.qnf-content-wrapper{z-index:10;flex:1;justify-content:center;align-items:center;padding:2rem;display:flex}.qnf-content{text-align:center;flex-direction:column;align-items:center;max-width:520px;display:flex}.qnf-icon-container{margin-bottom:2.25rem;position:relative}.qnf-main-icon{background:#fff;border-radius:28px;justify-content:center;align-items:center;width:130px;height:130px;display:flex;box-shadow:0 10px 40px #0000000a}.qnf-badge-icon{background:#fff;border-radius:12px;justify-content:center;align-items:center;width:40px;height:40px;display:flex;position:absolute;bottom:-4px;right:-8px;box-shadow:0 4px 16px #00000014}.qnf-title{color:var(--text-primary);letter-spacing:-.03em;margin-bottom:.85rem;font-size:3.2rem;font-weight:800}.qnf-subtitle{color:var(--text-secondary);margin-bottom:2.5rem;padding:0 1rem;font-size:1.15rem;line-height:1.6}.qnf-actions{justify-content:center;width:100%;margin-bottom:3.5rem;display:flex}.qnf-btn-primary,.qnf-btn-secondary{cursor:pointer;border-radius:12px;padding:1.1rem 2.5rem;font-family:inherit;font-size:1.05rem;font-weight:600;transition:all .2s}.qnf-btn-primary{background:var(--purple-primary);color:#fff;border:none;box-shadow:0 4px 14px #6c3fc540}.qnf-btn-primary:hover{background:var(--purple-light);transform:translateY(-1px)}.qnf-btn-secondary{background:var(--bg-card);color:var(--text-primary);border:1px solid var(--border);box-shadow:0 2px 8px #00000008}.qnf-btn-secondary:hover{background:var(--bg-option);border-color:var(--purple-primary);color:var(--purple-primary);transform:translateY(-1px)}@media (width<=720px){.qnf-header{padding:1rem 1.5rem}.qnf-title{font-size:2.2rem}.qnf-actions{flex-direction:column}}.dm-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1000;background:#0a061e8c;justify-content:center;align-items:center;animation:.18s dmFadeIn;display:flex;position:fixed;inset:0}.dm-modal{background:var(--bg-card);border-radius:16px;width:100%;max-width:400px;padding:1.5rem 1.5rem 1.75rem;animation:.22s cubic-bezier(.34,1.4,.64,1) dmSlideUp;box-shadow:0 20px 60px #00000026,0 4px 16px #0000001a}.dm-header{justify-content:space-between;align-items:center;margin-bottom:1rem;display:flex}.dm-title{color:var(--text-primary);letter-spacing:-.3px;margin:0;font-size:1.25rem;font-weight:800}.dm-close{color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:6px;padding:.3rem .5rem;font-size:1rem;line-height:1;transition:color .15s,background .15s}.dm-close:hover{color:var(--text-primary);background:var(--bg-option)}.dm-text{color:var(--text-secondary);margin-top:0;margin-bottom:1.5rem;font-size:.95rem;line-height:1.5}.dm-text strong{color:var(--text-primary)}.dm-actions{justify-content:flex-end;gap:.75rem;display:flex}.dm-cancel-btn{color:var(--text-secondary);border:1.5px solid var(--border);font-family:var(--font);cursor:pointer;background:0 0;border-radius:8px;padding:.65rem 1.2rem;font-size:.9rem;font-weight:600;transition:all .15s}.dm-cancel-btn:hover{border-color:var(--text-primary);color:var(--text-primary);background:var(--bg-option)}.dm-delete-btn{background:var(--incorrect);color:#fff;font-family:var(--font);cursor:pointer;border:none;border-radius:8px;padding:.65rem 1.2rem;font-size:.9rem;font-weight:600;transition:all .15s;box-shadow:0 4px 12px #ef444440}.dm-delete-btn:hover{background:#dc2626;transform:translateY(-1px);box-shadow:0 6px 16px #ef444459}.dm-delete-btn:active{transform:translateY(0)}@keyframes dmFadeIn{0%{opacity:0}to{opacity:1}}@keyframes dmSlideUp{0%{opacity:0;transform:translateY(20px)scale(.97)}to{opacity:1;transform:translateY(0)scale(1)}}.db-page{background:var(--bg-main);flex-direction:column;min-height:100vh;display:flex}.db-header{background:var(--bg-main);border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;height:64px;padding:0 2.5rem;display:flex}.db-logo{color:var(--purple-primary);font-size:1.1rem;font-weight:800}.db-header-right{align-items:center;gap:1.25rem;display:flex}.db-manage-btn{background:var(--purple-primary);color:#fff;font-family:var(--font);cursor:pointer;border:none;border-radius:10px;align-items:center;gap:.5rem;padding:.55rem 1.2rem;font-size:.875rem;font-weight:600;transition:background .18s,transform .15s,box-shadow .18s;display:flex;box-shadow:0 2px 12px #6c3fc540}.db-manage-btn:hover{background:#5a34a8;transform:translateY(-1px);box-shadow:0 4px 18px #6c3fc559}.db-manage-btn:active{transform:translateY(0)}.db-profile-wrapper{position:relative}.db-avatar{background:var(--purple-primary);color:#fff;cursor:pointer;-webkit-user-select:none;user-select:none;border:none;border-radius:10px;justify-content:center;align-items:center;width:36px;height:36px;font-size:.78rem;font-weight:700;transition:background .15s;display:flex}.db-avatar:hover{background:#5a34a8}.db-profile-menu{background:var(--bg-card);border:1px solid var(--border);z-index:50;border-radius:10px;flex-direction:column;min-width:140px;padding:.5rem;animation:.15s dbMenuFade;display:flex;position:absolute;top:calc(100% + .5rem);right:0;box-shadow:0 10px 30px #0000001f}.db-profile-menu button{text-align:left;width:100%;font-family:var(--font);color:var(--text-primary);cursor:pointer;background:0 0;border:none;border-radius:6px;align-items:center;gap:.5rem;padding:.65rem .85rem;font-size:.85rem;font-weight:600;transition:background .15s;display:flex}.db-profile-menu .db-profile-logout{color:var(--incorrect)}.db-profile-menu .db-profile-logout:hover{background:#fef2f2}.db-main{flex-direction:column;flex:1;gap:1.75rem;width:100%;max-width:1100px;margin:0 auto;padding:2.5rem 2.5rem 3rem;display:flex}.db-title{color:var(--text-primary);letter-spacing:-.5px;margin-bottom:.5rem;font-size:2rem;font-weight:900}.db-subtitle{color:var(--text-secondary);max-width:560px;font-size:.9rem;line-height:1.65}.db-stats-card{background:var(--bg-card);border:1px solid var(--border);border-radius:14px;flex-direction:column;gap:.4rem;padding:1.25rem 1.75rem 1.5rem;display:flex}.db-stats-eyebrow{text-transform:uppercase;letter-spacing:.1em;color:var(--text-muted);font-size:.68rem;font-weight:700}.db-stats-count{align-items:baseline;gap:.6rem;display:flex}.db-stats-number{color:var(--purple-primary);font-size:2.8rem;font-weight:900;line-height:1}.db-stats-label{color:var(--text-secondary);font-size:.95rem;font-weight:500}.db-filter-wrap{align-self:flex-end;width:100%;max-width:320px;position:relative}.db-filter-icon{color:#9ca3af;pointer-events:none;position:absolute;top:50%;left:1rem;transform:translateY(-50%)}.db-filter-input{border:1px solid var(--border);background:var(--bg-card);width:100%;font-family:var(--font);color:var(--text-primary);box-sizing:border-box;border-radius:8px;outline:none;padding:.65rem 1rem .65rem 2.25rem;font-size:.85rem;transition:border-color .18s,box-shadow .18s}.db-filter-input::placeholder{color:var(--text-muted)}.db-filter-input:focus{border-color:var(--purple-primary);background:#fff;box-shadow:0 0 0 3px #6c3fc51a}.db-table-wrapper{background:var(--bg-card);border:1px solid var(--border);border-radius:14px}.db-table thead th:first-child{border-top-left-radius:14px}.db-table thead th:last-child{border-top-right-radius:14px}.db-table{border-collapse:collapse;width:100%;font-size:.9rem}.db-table thead tr{border-bottom:1px solid var(--border);background:#f8f7ff}.db-table th{text-align:left;text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);white-space:nowrap;padding:.85rem 1.25rem;font-size:.68rem;font-weight:700}.db-table tbody tr{border-bottom:1px solid var(--border);transition:background .15s}.db-table tbody tr:last-child{border-bottom:none}.db-table tbody tr:hover{background:#faf9ff}.db-table td{color:var(--text-primary);vertical-align:middle;padding:1.1rem 1.25rem}.db-quiz-name{color:var(--text-primary);margin-bottom:.2rem;font-weight:600}.db-quiz-course{text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);font-size:.75rem;font-weight:600}.db-date{color:var(--text-primary);margin-bottom:.15rem}.db-time{color:var(--text-muted);font-size:.75rem;font-weight:500}.db-actions-cell{text-align:center;position:relative}.db-action-dots{cursor:pointer;color:var(--text-secondary);background:0 0;border:none;border-radius:6px;padding:.2rem .6rem;font-size:1.25rem;font-weight:700;line-height:1;transition:background .15s,color .15s}.db-action-dots:hover{background:var(--bg-option);color:var(--text-primary)}.db-action-menu{background:var(--bg-card);border:1px solid var(--border);z-index:10;border-radius:10px;flex-direction:column;min-width:140px;padding:.5rem;animation:.15s dbMenuFade;display:flex;position:absolute;top:calc(100% - .5rem);right:1.5rem;box-shadow:0 10px 30px #0000001f}.db-action-menu button{text-align:left;width:100%;font-family:var(--font);color:var(--text-primary);cursor:pointer;background:0 0;border:none;border-radius:6px;padding:.65rem .85rem;font-size:.85rem;font-weight:600;transition:background .15s}.db-action-menu button:hover{background:var(--bg-option)}.db-action-menu .db-menu-delete{color:var(--incorrect);border-top:1px solid var(--border);border-radius:0 0 6px 6px;margin-top:.25rem}.db-action-menu .db-menu-delete:hover{background:#fef2f2}@keyframes dbMenuFade{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.db-pagination{border-top:1px solid var(--border);color:var(--text-secondary);justify-content:space-between;align-items:center;padding:.9rem 1.25rem;font-size:.83rem;display:flex}.db-pagination-controls{align-items:center;gap:.35rem;display:flex}.db-pg-btn{border:1px solid var(--border);background:var(--bg-card);font-family:var(--font);color:var(--text-secondary);cursor:pointer;border-radius:8px;padding:.4rem .8rem;font-size:.83rem;font-weight:500;transition:border-color .15s,color .15s,background .15s}.db-pg-btn:hover:not(:disabled){border-color:var(--purple-primary);color:var(--purple-primary)}.db-pg-btn:disabled{opacity:.4;cursor:not-allowed}.db-pg-num.active{background:var(--purple-primary);border-color:var(--purple-primary);color:#fff}@media (width<=768px){.db-main{padding:1.5rem}.db-header{padding:0 1.25rem}.db-table-wrapper{overflow-x:auto}}.um-page{background:var(--bg-main);min-height:100vh;font-family:var(--font);flex-direction:column;display:flex}.um-header{background:var(--bg-main);border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;height:64px;padding:0 2.5rem;display:flex}.um-logo{color:var(--purple-primary);cursor:pointer;-webkit-user-select:none;user-select:none;font-size:1.1rem;font-weight:800}.um-header-right{align-items:center;gap:1.25rem;display:flex}.um-add-btn{background:var(--purple-primary);color:#fff;font-family:var(--font);cursor:pointer;border:none;border-radius:10px;align-items:center;gap:.5rem;padding:.55rem 1.2rem;font-size:.875rem;font-weight:600;transition:background .18s,transform .15s,box-shadow .18s;display:flex;box-shadow:0 2px 12px #6c3fc540}.um-add-btn:hover{background:#5a34a8;transform:translateY(-1px);box-shadow:0 4px 18px #6c3fc559}.um-add-btn:active{transform:translateY(0)}.um-profile-wrapper{position:relative}.um-avatar{background:var(--purple-primary);color:#fff;cursor:pointer;-webkit-user-select:none;user-select:none;border:none;border-radius:10px;justify-content:center;align-items:center;width:36px;height:36px;font-size:.78rem;font-weight:700;transition:background .15s;display:flex}.um-avatar:hover{background:#5a34a8}.um-profile-menu{background:var(--bg-card);border:1px solid var(--border);z-index:50;border-radius:10px;flex-direction:column;min-width:140px;padding:.5rem;animation:.15s umMenuFade;display:flex;position:absolute;top:calc(100% + .5rem);right:0;box-shadow:0 10px 30px #0000001f}.um-profile-menu button{text-align:left;width:100%;font-family:var(--font);color:var(--text-primary);cursor:pointer;background:0 0;border:none;border-radius:6px;align-items:center;gap:.5rem;padding:.65rem .85rem;font-size:.85rem;font-weight:600;transition:background .15s;display:flex}.um-profile-menu .um-profile-logout{color:var(--incorrect)}.um-profile-menu .um-profile-logout:hover{background:#fef2f2}@keyframes umMenuFade{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.um-main{flex-direction:column;flex:1;gap:1.5rem;width:100%;max-width:1150px;margin:0 auto;padding:2.5rem 2.5rem 3rem;display:flex}.um-heading{flex-direction:column;display:flex}.um-title{color:var(--text-primary);letter-spacing:-1px;margin:0;font-size:2.5rem;font-weight:900;line-height:1.15}.um-title span{color:var(--purple-primary);font-style:italic}.um-card{background:var(--bg-card);border:1px solid var(--border);border-radius:16px;overflow:hidden}.um-search-wrap{padding:1.25rem 1.5rem 1rem;position:relative}.um-search-icon{color:var(--text-muted);pointer-events:none;position:absolute;top:50%;left:2.1rem;transform:translateY(-50%)}.um-search{border:1.5px solid var(--border);width:100%;max-width:320px;font-family:var(--font);color:var(--text-primary);box-sizing:border-box;background:#f9f8ff;border-radius:10px;outline:none;padding:.65rem 1rem .65rem 2.5rem;font-size:.88rem;transition:border-color .18s,box-shadow .18s}.um-search::placeholder{color:var(--text-muted)}.um-search:focus{border-color:var(--purple-primary);background:#fff;box-shadow:0 0 0 3px #6c3fc51a}.um-col-header,.um-row{grid-template-columns:48px 1fr 340px 180px 100px;align-items:center;padding:0 1.5rem;display:grid}.um-col-header{border-top:1px solid var(--border);border-bottom:1px solid var(--border);background:#f8f7ff;padding-top:.7rem;padding-bottom:.7rem}.um-col-header span{text-transform:uppercase;letter-spacing:.09em;color:var(--text-muted);font-size:.67rem;font-weight:700}.um-col-actions{text-align:right}.um-rows{flex-direction:column;display:flex}.um-row{border-bottom:1px solid var(--border);padding-top:.95rem;padding-bottom:.95rem;transition:background .15s}.um-row:last-child{border-bottom:none}.um-row:hover{background:#faf9ff}.um-row--blocked{background:#fffbf5}.um-row--blocked:hover{background:#fff7ed}.um-sn{color:var(--text-muted);font-size:.82rem;font-weight:500}.um-user-info{align-items:center;gap:.75rem;min-width:0;display:flex}.um-user-avatar{-webkit-user-select:none;user-select:none;letter-spacing:.02em;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:38px;height:38px;font-size:.75rem;font-weight:700;display:flex}.um-user-text{flex-direction:column;gap:.35rem;min-width:0;display:flex}.um-user-name{color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;font-size:.92rem;font-weight:600;line-height:1;overflow:hidden}.um-blocked-badge{letter-spacing:.06em;text-transform:uppercase;color:#b45309;background:#fff1e0;border:1px solid #fcd38d;border-radius:6px;align-items:center;width:fit-content;padding:.15rem .45rem;font-size:.62rem;font-weight:800;line-height:1;display:inline-flex}.um-apikey-cell{align-items:center;gap:.5rem;display:flex}.um-email-text{color:var(--text-secondary);white-space:nowrap;text-overflow:ellipsis;max-width:280px;font-size:.88rem;font-weight:500;overflow:hidden}.um-created{color:var(--text-secondary);font-size:.875rem}.um-actions{justify-content:flex-end;align-items:center;gap:.45rem;display:flex}.um-icon-btn{border:1px solid var(--border);background:var(--bg-card);width:32px;height:32px;color:var(--text-muted);cursor:pointer;border-radius:8px;justify-content:center;align-items:center;transition:background .15s,color .15s,border-color .15s,transform .12s;display:flex}.um-icon-btn:hover{transform:scale(1.08)}.um-icon-btn:active{transform:scale(.93)}.um-icon-btn--inline{border-radius:6px;width:28px;height:28px}.um-icon-btn--inline:hover{color:var(--purple-primary);background:#f3f0ff;border-color:#d0c4f5;transform:scale(1.08)}.um-icon-btn--copied{color:#16a34a!important;background:#f0fdf4!important;border-color:#bbf7d0!important}.um-icon-btn--block:hover{color:#dc2626;background:#fff1f2;border-color:#fca5a5}.um-icon-btn--unblock{color:#16a34a;background:#f0fdf4;border-color:#bbf7d0}.um-icon-btn--unblock:hover{color:#15803d;background:#dcfce7;border-color:#86efac}.um-icon-btn--delete:hover{color:var(--incorrect);background:#fef2f2;border-color:#fecaca}.um-empty{text-align:center;color:var(--text-muted);padding:2.5rem;font-size:.9rem}.um-pagination{border-top:1px solid var(--border);color:var(--text-secondary);justify-content:space-between;align-items:center;padding:.9rem 1.5rem;font-size:.83rem;display:flex}.um-pagination-info strong{color:var(--text-primary);font-weight:600}.um-pagination-controls{align-items:center;gap:.35rem;display:flex}.um-pg-btn{border:1px solid var(--border);background:var(--bg-card);min-width:34px;height:34px;font-family:var(--font);color:var(--text-secondary);cursor:pointer;border-radius:8px;justify-content:center;align-items:center;padding:0 .55rem;font-size:.83rem;font-weight:500;transition:border-color .15s,color .15s,background .15s;display:flex}.um-pg-btn:hover:not(:disabled){border-color:var(--purple-primary);color:var(--purple-primary)}.um-pg-btn:disabled{opacity:.4;cursor:not-allowed}.um-pg-num.active{background:var(--purple-primary);border-color:var(--purple-primary);color:#fff;font-weight:700}.um-pg-arrow{color:var(--text-muted)}.um-modal-backdrop{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:100;background:#0a081873;justify-content:center;align-items:center;animation:.18s umFadeIn;display:flex;position:fixed;inset:0}@keyframes umFadeIn{0%{opacity:0}to{opacity:1}}.um-modal{border:1px solid var(--border);background:#fff;border-radius:20px;flex-direction:column;gap:1rem;width:100%;max-width:440px;padding:2rem 2rem 1.75rem;animation:.2s umSlideUp;display:flex;box-shadow:0 20px 60px #0000002e}@keyframes umSlideUp{0%{opacity:0;transform:translateY(16px)scale(.97)}to{opacity:1;transform:translateY(0)scale(1)}}.um-modal-icon{border-radius:14px;justify-content:center;align-items:center;width:52px;height:52px;display:flex}.um-modal-icon--danger{color:#dc2626;background:#fef2f2}.um-modal-icon--warning{color:#b45309;background:#fff7ed}.um-modal-icon--success{color:#16a34a;background:#f0fdf4}.um-modal-title{color:var(--text-primary);letter-spacing:-.3px;margin:0 0 1.5rem;font-size:1.2rem;font-weight:800}.um-modal-body{color:var(--text-secondary);margin:0;font-size:.9rem;line-height:1.65}.um-modal-body strong{color:var(--text-primary);font-weight:600}.um-modal-actions{justify-content:flex-end;align-items:center;gap:.75rem;margin-top:.5rem;display:flex}.um-modal-btn{font-family:var(--font);cursor:pointer;border:none;border-radius:10px;padding:.6rem 1.3rem;font-size:.875rem;font-weight:600;transition:background .15s,transform .12s,box-shadow .15s}.um-modal-btn:active{transform:scale(.96)}.um-modal-btn--ghost{background:var(--bg-main);color:var(--text-secondary);border:1px solid var(--border)}.um-modal-btn--ghost:hover{color:var(--purple-primary);background:#f0eeff;border-color:#c8b8f5}.um-modal-btn--danger{color:#fff;background:#dc2626;box-shadow:0 2px 10px #dc262647}.um-modal-btn--danger:hover{background:#b91c1c;box-shadow:0 4px 16px #dc262666}.um-modal-btn--success{color:#fff;background:#16a34a;box-shadow:0 2px 10px #16a34a47}.um-modal-btn--success:hover{background:#15803d;box-shadow:0 4px 16px #16a34a66}.um-modal-btn--primary{background:var(--purple-primary);color:#fff;box-shadow:0 2px 10px #6c3fc547}.um-modal-btn--primary:hover:not(:disabled){background:#5a34a8;box-shadow:0 4px 16px #6c3fc566}.um-modal-btn--primary:disabled{opacity:.6;cursor:not-allowed;box-shadow:none}.um-error-alert{color:#dc2626;background:#fef2f2;border:1px solid #fecaca;border-radius:8px;margin-top:.25rem;margin-bottom:1rem;padding:.75rem 1rem;font-size:.85rem;font-weight:600}.um-add-form{flex-direction:column;display:flex}.um-mb-4{margin-bottom:1.25rem}.um-input-group{flex-direction:column;gap:.45rem;margin-bottom:1.5rem;display:flex}.um-input-group label{color:var(--text-primary);font-size:.825rem;font-weight:700}.um-input-group input{border:1.5px solid var(--border);font-family:var(--font);color:var(--text-primary);background:#fcfbff;border-radius:10px;outline:none;padding:.75rem 1rem;font-size:.95rem;transition:border-color .15s,box-shadow .15s}.um-input-group input:focus{border-color:var(--purple-primary);background:#fff;box-shadow:0 0 0 3px #6c3fc51a}.um-add-success{text-align:center;flex-direction:column;align-items:center;display:flex}.um-add-success .um-modal-icon--large{border-radius:50%;width:64px;height:64px;margin-bottom:1rem}.um-apikey-box{background:#f8f7ff;border:1px dashed #c8b8f5;border-radius:10px;flex-direction:column;align-items:center;gap:.8rem;width:100%;margin:1.25rem 0;padding:1.25rem;display:flex}.um-apikey-box code{font-family:var(--font-mono,monospace);color:var(--purple-primary);word-break:break-all;font-size:1.1rem;font-weight:800}.um-copy-key-btn{border:1px solid var(--border);font-family:var(--font);color:var(--text-secondary);cursor:pointer;background:#fff;border-radius:8px;padding:.4rem 1rem;font-size:.8rem;font-weight:600;transition:all .15s}.um-copy-key-btn:hover{border-color:var(--purple-primary);color:var(--purple-primary)}.um-copy-key-btn.copied{color:#16a34a;background:#f0fdf4;border-color:#16a34a}.um-modal-actions--center{justify-content:center;width:100%}@media (width<=900px){.um-col-header,.um-row{grid-template-columns:36px 1fr 220px 110px 90px}}@media (width<=768px){.um-main{padding:1.5rem}.um-header{padding:0 1.25rem}.um-title{font-size:1.75rem}.um-col-header,.um-row{grid-template-columns:36px 1fr 180px 90px}.um-col-created,.um-created{display:none}}
