.theme-toggle{align-items:center;background-color:var(--border);border:1px solid var(--border);border-radius:34px;bottom:24px;box-shadow:var(--shadow);cursor:pointer;display:flex;height:34px;justify-content:space-between;outline:none;padding:4px;position:fixed;right:24px;transition:background-color .3s ease,border-color .3s ease;width:64px;z-index:1000}.theme-toggle:hover{border-color:var(--accent)}.theme-toggle:focus{outline:2px solid var(--accent);outline-offset:2px}.theme-toggle .icon{align-items:center;display:inline-flex;font-size:14px;height:24px;justify-content:center;line-height:1;pointer-events:none;width:24px;z-index:10}.theme-toggle .sun{filter:grayscale(100%);opacity:.5;transition:opacity .3s ease}.theme-toggle .moon{opacity:1;transition:opacity .3s ease}.theme-toggle.light .sun{filter:grayscale(0);opacity:1}.theme-toggle.light .moon{filter:grayscale(100%);opacity:.5}.toggle-thumb{background-color:var(--text);border-radius:50%;box-shadow:0 2px 4px #0003;height:26px;left:3px;position:absolute;top:3px;transition:transform .3s cubic-bezier(.4,0,.2,1),background-color .3s;width:26px;z-index:5}.theme-toggle.light .toggle-thumb{background-color:var(--accent);transform:translateX(30px)}@media (max-width:600px){.theme-toggle{bottom:16px;right:16px}}.login-page{align-items:center;display:flex;justify-content:center;min-height:100vh;overflow:hidden;padding:2rem;position:relative}.login-bg-grid{background-image:linear-gradient(#6c47ff0a 1px,#0000 0),linear-gradient(90deg,#6c47ff0a 1px,#0000 0);background-size:48px 48px;inset:0}.login-bg-glow,.login-bg-grid{pointer-events:none;position:fixed}.login-bg-glow{background:radial-gradient(circle,#6c47ff26 0,#0000 70%);border-radius:50%;height:600px;right:-200px;top:-200px;width:600px}.login-card{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:var(--bg-glass);border:1px solid var(--border);border-radius:16px;box-shadow:0 24px 64px #0009,0 0 0 1px #6c47ff1a;max-width:400px;padding:1.25rem 2rem;position:relative;width:100%;z-index:1}.login-logo{display:flex;justify-content:center;margin-bottom:.75rem}.login-logo-img{border-radius:10px;height:100px;object-fit:contain;width:100px}.login-divider{background:linear-gradient(90deg,#0000,var(--border),#0000);height:1px;margin-bottom:.9rem}.login-error{align-items:center;background:#ef44441a;border:1px solid #ef444440;border-radius:8px;color:#ef4444;display:flex;font-size:.85rem;gap:.5rem;margin-bottom:.9rem;padding:.65rem .9rem}.login-form{display:flex;flex-direction:column;gap:.85rem}.btn-spinner{height:16px;width:16px}.login-footer{color:#4b5563;font-size:.78rem;margin-top:.75rem;text-align:center}.login-logo-placeholder{align-items:center;background:#6c47ff1f;border:1px solid #6c47ff33;border-radius:10px;display:flex;height:100px;justify-content:center;width:100px}.login-logo-initials{color:#6c47ff;color:var(--brand-primary,#6c47ff);font-size:2.5rem;font-weight:700}.login-company-name{color:#e5e7eb;color:var(--text-primary,#e5e7eb);font-size:1rem;font-weight:600;margin:0 0 .25rem;text-align:center}.timer-wrapper{align-items:center;background:var(--bg-glass);border:1.5px solid var(--border);border-radius:999px;display:flex;gap:.75rem;padding:.6rem 1.2rem .6rem .6rem;position:relative;transition:all .3s}.timer-wrapper.warning{background:#f59e0b0d;border-color:#f59e0b80}.timer-wrapper.danger{animation:timerPulse 1s ease-in-out infinite;background:#ef444414;border-color:#ef444499}@keyframes timerPulse{0%,to{box-shadow:0 0 0 0 #ef44444d}50%{box-shadow:0 0 0 6px #ef444400}}.timer-ring{flex-shrink:0;height:44px;transform:rotate(-90deg);width:44px}.timer-ring-bg{fill:none;stroke:var(--border);stroke-width:3}.timer-ring-fill{fill:none;stroke:#6c47ff;stroke-width:3;stroke-linecap:round;transition:stroke-dashoffset 1s linear,stroke .3s}.timer-wrapper.warning .timer-ring-fill{stroke:#f59e0b}.timer-wrapper.danger .timer-ring-fill{stroke:#ef4444}.timer-display{display:flex;flex-direction:column;line-height:1}.timer-icon{display:none}.timer-digits{color:#e8e8f0;font-family:DM Mono,monospace;font-size:1.15rem;font-weight:500;letter-spacing:.05em}.timer-wrapper.warning .timer-digits{color:#f59e0b}.timer-wrapper.danger .timer-digits{color:#ef4444}.timer-label{color:#6b7280;font-size:.65rem;letter-spacing:.06em;margin-top:.2rem;text-transform:uppercase}.timer-wrapper.warning .timer-label{color:#f59e0bb3}.timer-wrapper.danger .timer-label{color:#ef4444b3}.qnav{background:var(--bg2);border:1px solid var(--border);border-radius:var(--radius);gap:1rem;padding:1.25rem}.qnav,.qnav-header{display:flex;flex-direction:column}.qnav-header{gap:.5rem}.qnav-header>span{color:var(--muted);font-size:.72rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase}.qnav-legend{display:flex;flex-wrap:wrap;gap:.5rem}.legend-item{align-items:center;color:var(--muted);display:flex;font-size:.68rem;gap:.3rem}.legend-item:before{border-radius:3px;content:"";height:10px;width:10px}.legend-item.answered:before{background:var(--green)}.legend-item.current:before{background:var(--accent)}.legend-item.unanswered:before{background:var(--bg3);border:1px solid var(--border)}.qnav-grid{grid-gap:.4rem;display:grid;gap:.4rem;grid-template-columns:repeat(5,1fr)}.qnav-btn{align-items:center;aspect-ratio:1;background:var(--bg3);border:1.5px solid var(--border);border-radius:6px;color:var(--muted);cursor:pointer;display:flex;font-family:DM Mono,monospace;font-size:.78rem;font-weight:600;justify-content:center;transition:all .15s}.qnav-btn:hover{border-color:var(--accent2);color:var(--text)}.qnav-btn.answered{background:#10b9811f;border-color:#10b98166;color:var(--green)}.qnav-btn.current{background:#6c47ff33;box-shadow:0 0 8px #6c47ff4d}.qnav-btn.answered.current,.qnav-btn.current{border-color:var(--accent);color:var(--accent2)}.qnav-btn.answered.current{background:#6c47ff40}.qnav-stats{grid-gap:.5rem;border-top:1px solid var(--border);display:grid;gap:.5rem;grid-template-columns:repeat(3,1fr);padding-top:.75rem}.stat{align-items:center;display:flex;flex-direction:column;gap:.15rem}.stat-val{color:var(--text);font-family:DM Mono,monospace;font-size:1.25rem;font-weight:500}.stat-lbl{color:var(--muted);font-size:.65rem;letter-spacing:.06em;text-transform:uppercase}.violation-alert{align-items:flex-start;animation:slideDown .3s cubic-bezier(.34,1.56,.64,1);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#f59e0b1f;border:1.5px solid #f59e0b66;border-radius:12px;box-shadow:0 8px 32px #0006;display:flex;gap:.75rem;left:50%;max-width:480px;min-width:320px;padding:1rem 1.25rem;position:fixed;top:1.5rem;transform:translateX(-50%);z-index:9999}.violation-alert.critical{animation:slideDown .3s cubic-bezier(.34,1.56,.64,1),shake .4s ease .3s;background:#ef444426;border-color:#ef444480}@keyframes slideDown{0%{opacity:0;transform:translateX(-50%) translateY(-20px)}to{opacity:1;transform:translateX(-50%) translateY(0)}}@keyframes shake{0%,to{transform:translateX(-50%)}20%{transform:translateX(calc(-50% - 8px))}40%{transform:translateX(calc(-50% + 8px))}60%{transform:translateX(calc(-50% - 4px))}80%{transform:translateX(calc(-50% + 4px))}}.va-icon{flex-shrink:0;font-size:1.4rem;margin-top:.1rem}.va-body{display:flex;flex:1 1;flex-direction:column;gap:.25rem}.va-body strong{color:#f59e0b;font-size:.92rem;font-weight:700}.violation-alert.critical .va-body strong{color:#ef4444}.va-body span{color:#9ca3af;font-size:.8rem;line-height:1.4}.va-close{background:none;border:none;color:#6b7280;cursor:pointer;flex-shrink:0;font-size:.9rem;padding:.1rem;transition:color .2s}.va-close:hover{color:#e8e8f0}.va-critical-note{color:#ef4444;font-size:.75rem;font-weight:700;margin-top:.1rem}.test-center{align-items:center;background:var(--bg);display:flex;justify-content:center;min-height:100vh;padding:2rem}.instructions-card{background:var(--bg2);border:1px solid var(--border);border-radius:16px;box-shadow:var(--shadow);max-width:680px;padding:2.5rem;width:100%}.inst-header{margin-bottom:2rem;text-align:center}.inst-logo{font-size:2.5rem;margin-bottom:.75rem}.inst-header h1{color:var(--text);font-family:"DM Serif Display",serif;font-size:2rem;margin-bottom:.4rem}.inst-header p{color:var(--muted);font-size:.9rem}.inst-meta{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(3,1fr);margin-bottom:2rem}.inst-meta-item{align-items:center;background:var(--bg3);border:1px solid var(--border);border-radius:10px;display:flex;gap:.75rem;padding:1rem}.meta-icon{font-size:1.5rem}.inst-meta-item div{display:flex;flex-direction:column}.inst-meta-item strong{color:var(--text);font-size:.95rem}.inst-meta-item span{color:var(--muted);font-size:.72rem;margin-top:.15rem}.inst-rules{display:flex;flex-direction:column;gap:.6rem;list-style:none;margin-bottom:1.75rem}.inst-rules li{align-items:flex-start;color:var(--text);display:flex;font-size:.88rem;gap:.75rem;line-height:1.5}.rule-num{align-items:center;background:#6c47ff33;border:1px solid #6c47ff66;border-radius:50%;color:var(--accent2);display:flex;flex-shrink:0;font-size:.68rem;font-weight:700;height:22px;justify-content:center;margin-top:.1rem;width:22px}.inst-acknowledge{display:flex;flex-direction:column;gap:1rem}.inst-warning{background:#f59e0b14;border:1px solid #f59e0b40;border-radius:8px;color:var(--text);font-size:.85rem;line-height:1.5;padding:.85rem 1rem}.inst-warning strong{color:var(--gold)}.error-box{align-items:center;background:var(--bg2);border:1px solid #ef44444d;border-radius:16px;display:flex;flex-direction:column;gap:1rem;max-width:400px;padding:2.5rem;text-align:center}.error-icon{font-size:3rem}.error-box h2{color:var(--text);font-size:1.4rem}.error-box p{color:var(--muted);font-size:.9rem}.test-layout{background:var(--bg);display:flex;flex-direction:column;min-height:100vh;user-select:none;-webkit-user-select:none}.test-header{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:var(--bg-glass);border-bottom:1px solid var(--border);gap:1rem;justify-content:space-between;padding:.75rem 1.5rem;position:sticky;top:0;z-index:100}.test-header,.th-left{align-items:center;display:flex}.th-left{gap:.75rem}.th-logo{align-items:center;background:linear-gradient(135deg,var(--accent),var(--accent2));border-radius:8px;color:#fff;display:flex;flex-shrink:0;font-size:.75rem;font-weight:900;height:38px;justify-content:center;letter-spacing:.05em;width:38px}.th-info{display:flex;flex-direction:column}.th-name{color:var(--text);font-size:.88rem;font-weight:700}.th-qcount{color:var(--muted);font-family:DM Mono,monospace;font-size:.72rem}.violation-badge span{background:var(--bg3);border:1px solid var(--border);border-radius:999px;color:var(--muted);font-size:.78rem;font-weight:600;padding:.3rem .75rem}.violation-badge span.warn{background:#f59e0b14;border-color:#f59e0b4d;color:var(--gold)}.violation-badge span.danger{background:#ef444414;border-color:#ef44444d;color:var(--red)}.th-right{align-items:center;display:flex;gap:.75rem}.test-body{grid-gap:1.5rem;display:grid;flex:1 1;gap:1.5rem;grid-template-columns:1fr 260px;margin:0 auto;max-width:1200px;padding:1.5rem;width:100%}.test-sidebar{align-self:start;display:flex;flex-direction:column;gap:1rem;position:sticky;top:80px}.sidebar-progress{background:var(--bg2);border:1px solid var(--border);border-radius:var(--radius);padding:1rem}.sp-label{color:var(--muted);display:flex;font-size:.72rem;font-weight:600;justify-content:space-between;letter-spacing:.08em;margin-bottom:.6rem;text-transform:uppercase}.sp-bar{background:var(--bg3);height:6px;overflow:hidden}.sp-bar,.sp-fill{border-radius:999px}.sp-fill{background:linear-gradient(90deg,var(--accent),var(--accent2));height:100%;transition:width .4s ease}.test-main{gap:1.25rem}.question-card,.test-main{display:flex;flex-direction:column}.question-card{background:var(--bg2);border:1px solid var(--border);border-radius:16px;gap:1.5rem;padding:2rem}.qcard-header{align-items:center;display:flex;flex-wrap:wrap;gap:.6rem}.qcard-num{background:#6c47ff1f;border-radius:999px;color:var(--accent2);font-size:.72rem;font-weight:800;letter-spacing:.1em;padding:.25rem .75rem;text-transform:uppercase}.qcard-text p{color:var(--text);font-size:1.15rem;font-weight:500;line-height:1.7}.qcard-options{display:flex;flex-direction:column;gap:.75rem}.option-btn{align-items:center;background:var(--bg3);border:1.5px solid var(--border);border-radius:10px;color:var(--text);cursor:pointer;display:flex;gap:1rem;padding:1rem 1.25rem;position:relative;text-align:left;transition:all .15s;width:100%}.option-btn:hover{background:#6c47ff0f;border-color:var(--accent2)}.option-btn.selected{background:#6c47ff26;border-color:var(--accent);box-shadow:0 0 0 1px #6c47ff4d}.opt-label{align-items:center;background:var(--bg2);border:1.5px solid var(--border);border-radius:50%;color:var(--muted);display:flex;flex-shrink:0;font-family:DM Mono,monospace;font-size:.8rem;font-weight:700;height:32px;justify-content:center;transition:all .15s;width:32px}.option-btn.selected .opt-label{background:var(--accent);border-color:var(--accent);color:#fff}.opt-text{flex:1 1;font-size:.95rem;line-height:1.5}.opt-check{color:var(--green);flex-shrink:0;font-size:1rem;font-weight:700}.clear-btn{align-self:flex-start}.qnav-buttons{align-items:center;display:flex;gap:1rem;justify-content:space-between;padding:1rem 0}.qnav-hint{color:var(--muted);font-family:DM Mono,monospace;font-size:.82rem}.modal-overlay{align-items:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#000000b3;display:flex;inset:0;justify-content:center;position:fixed;z-index:1000}.modal-box{background:var(--bg2);border:1px solid var(--border);border-radius:16px;box-shadow:var(--shadow);display:flex;flex-direction:column;gap:1rem;max-width:420px;padding:2rem;width:90%}.modal-box h3{color:var(--text);font-size:1.3rem}.modal-box p{color:var(--muted);font-size:.9rem;line-height:1.5}.modal-warn{color:var(--gold)!important}.modal-actions{display:flex;gap:.75rem;justify-content:flex-end;margin-top:.5rem}.result-card{align-items:center;background:var(--bg2);border:1px solid var(--border);border-radius:20px;box-shadow:var(--shadow);display:flex;flex-direction:column;gap:1.5rem;max-width:560px;padding:3rem 2.5rem;text-align:center;width:100%}.completion-icon{filter:drop-shadow(0 4px 12px rgba(16,185,129,.3));font-size:3.5rem;line-height:1}.result-title{color:var(--text);font-family:"DM Serif Display",serif;font-size:2rem;line-height:1.2;margin:0}.result-subtitle{color:var(--muted);font-size:.95rem;line-height:1.6;margin:0;max-width:420px}.completion-steps{border:1px solid var(--border);border-radius:12px;display:flex;flex-direction:column;gap:0;overflow:hidden;width:100%}.completion-step{align-items:flex-start;background:var(--bg3);border-bottom:1px solid var(--border);display:flex;gap:1rem;padding:1rem 1.25rem;text-align:left}.completion-step:last-child{border-bottom:none}.cs-icon{flex-shrink:0;font-size:1.4rem;margin-top:.1rem}.completion-step div{display:flex;flex-direction:column;gap:.2rem}.completion-step strong{color:var(--text);font-size:.88rem;font-weight:700}.completion-step span{color:var(--muted);font-size:.8rem;line-height:1.4}.result-note{background:#6c47ff0f;border:1px solid #6c47ff26;border-radius:8px;color:var(--muted);font-size:.8rem;line-height:1.5;padding:.75rem 1rem;width:100%}.th-center{flex-wrap:wrap;gap:.75rem;justify-content:center}.fs-status-pill,.th-center{align-items:center;display:flex}.fs-status-pill{background:var(--bg3);border:1px solid var(--border);border-radius:999px;font-size:.72rem;font-weight:600;gap:.45rem;padding:.3rem .75rem;transition:all .2s;white-space:nowrap}.fs-status-pill.fs-active{background:#10b98114;border-color:#10b98159;color:var(--green)}.fs-status-pill.fs-inactive{animation:pulse-red 1.5s ease-in-out infinite;background:#ef444414;border-color:#ef444459;color:var(--red)}.fs-status-pill.fs-inactive:hover{background:#ef444429}.fs-status-dot{border-radius:50%;flex-shrink:0;height:7px;width:7px}.fs-status-pill.fs-active .fs-status-dot{background:var(--green)}.fs-status-pill.fs-inactive .fs-status-dot{animation:pulse-dot 1.5s ease-in-out infinite;background:var(--red)}@keyframes pulse-red{0%,to{box-shadow:0 0 0 0 #ef444400}50%{box-shadow:0 0 0 4px #ef444433}}@keyframes pulse-dot{0%,to{opacity:1}50%{opacity:.3}}.fs-prompt-overlay{z-index:10000}.fs-prompt-box{align-items:center;border-color:#ef444466!important;text-align:center}.fs-prompt-icon{font-size:3rem;margin-bottom:.25rem}.fs-violation-count{background:var(--bg3);border:1px solid var(--border);border-radius:8px;font-size:.85rem;font-weight:600;padding:.6rem 1.2rem;text-align:center;width:100%}.fs-violation-count span{color:var(--muted)}.fs-violation-count span.warn{color:var(--gold)}.fs-violation-count span.danger{color:var(--red)}.sidebar-violations{background:var(--bg2);border:1px solid var(--border);border-radius:var(--radius);display:flex;flex-direction:column;gap:.6rem;padding:1rem}.sidebar-violations.warn{background:#f59e0b0a;border-color:#f59e0b4d}.sidebar-violations.danger{background:#ef44440f;border-color:#ef444459}.sv-header{color:var(--muted);display:flex;font-size:.72rem;font-weight:700;justify-content:space-between;letter-spacing:.08em;text-transform:uppercase}.sv-count{font-family:DM Mono,monospace}.sidebar-violations.warn .sv-count{color:var(--gold)}.sidebar-violations.danger .sv-count{color:var(--red)}.sv-bar{background:var(--bg3);height:6px;overflow:hidden}.sv-bar,.sv-fill{border-radius:999px}.sv-fill{background:linear-gradient(90deg,var(--gold),var(--red));height:100%;transition:width .4s ease}.sv-note{color:var(--muted);font-size:.72rem;line-height:1.4;margin:0}.sidebar-violations.danger .sv-note{color:var(--red);font-weight:600}.terminated-banner{background:#ef44441a;border:1px solid #ef444459;border-radius:10px;color:var(--red);font-size:.95rem;font-weight:800;letter-spacing:.1em;padding:.9rem;text-align:center;width:100%}.qcard-img-wrap{margin:.8rem 0 .4rem;text-align:center}.qcard-img{background:var(--bg2);border:1px solid var(--border);border-radius:10px;max-height:260px;max-width:100%;object-fit:contain}.opt-body{align-items:flex-start;display:flex;flex:1 1;flex-direction:column;gap:.35rem}.opt-img{background:var(--bg2);border:1px solid var(--border);border-radius:7px;max-height:110px;max-width:100%;object-fit:contain}@media (max-width:768px){.test-body{grid-template-columns:1fr}.test-sidebar{position:static}.inst-meta{grid-template-columns:1fr}.result-grid{grid-template-columns:repeat(2,1fr)}.th-center{flex-direction:column;gap:.4rem}.fs-status-pill{font-size:.68rem}}.results-actions{align-items:center;display:flex;gap:1rem;margin-bottom:1rem}.results-count{color:var(--muted);font-family:DM Mono,monospace;font-size:.82rem}.results-table-wrap{border:1px solid var(--border);border-radius:var(--radius);overflow-x:auto}.results-table{border-collapse:collapse;font-size:.88rem;width:100%}.results-table th{background:var(--bg3);color:var(--muted);font-size:.7rem;font-weight:700;letter-spacing:.08em;padding:.85rem 1rem;text-align:left;text-transform:uppercase;white-space:nowrap}.results-table td,.results-table th{border-bottom:1px solid var(--border)}.results-table td{color:var(--text);padding:.9rem 1rem;vertical-align:middle}.results-table tr:last-child td{border-bottom:none}.results-table tr:hover td{background:#6c47ff08}.candidate-cell{align-items:center;display:flex;gap:.75rem;min-width:180px}.candidate-avatar{align-items:center;background:linear-gradient(135deg,var(--accent),var(--accent2));border-radius:50%;color:#fff;display:flex;flex-shrink:0;font-size:.85rem;font-weight:700;height:36px;justify-content:center;width:36px}.cname{font-size:.88rem;font-weight:700}.cemail{color:var(--muted);font-size:.74rem}.cdept{color:var(--accent2);font-size:.7rem;margin-top:.1rem}.score-cell{display:flex;flex-direction:column;gap:.3rem}.score-pct{font-family:DM Mono,monospace;font-size:1rem;font-weight:500}.score-cell.passed .score-pct{color:var(--green)}.score-cell.failed .score-pct{color:var(--red)}.date-cell{color:var(--muted);font-family:DM Mono,monospace;font-size:.78rem;white-space:nowrap}.ap-modal{animation:modal-slide .2s ease;background:var(--bg2);border:1px solid var(--border);border-radius:14px;box-shadow:0 24px 60px #00000080;display:flex;flex-direction:column;height:min(88vh,860px);overflow:hidden;width:min(820px,96vw)}.ap-summary-bar{align-items:center;background:var(--bg3);border-bottom:1px solid var(--border);display:flex;flex-wrap:wrap;gap:1rem;padding:.9rem 1.5rem}.ap-summary-chip{align-items:center;background:var(--bg2);border:1px solid var(--border);border-radius:8px;color:var(--muted);display:flex;font-size:.78rem;gap:.4rem;padding:.35rem .75rem}.ap-modal-body{flex:1 1;overflow-y:auto;padding:1.25rem 1.5rem}.ap-questions-list{display:flex;flex-direction:column;gap:1rem}.ap-question-card{background:var(--bg3);border:1px solid var(--border);border-left-width:4px;border-radius:10px;padding:1rem 1.15rem}.ap-q-correct{border-left-color:#10b981;border-left-color:var(--green,#10b981)}.ap-q-wrong{border-left-color:#ef4444;border-left-color:var(--red,#ef4444)}.ap-q-skipped{border-left-color:#6b7280;border-left-color:var(--muted,#6b7280)}.ap-q-header{align-items:center;display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:.6rem}.ap-q-num{background:var(--bg2);border:1px solid var(--border);border-radius:5px;color:var(--muted);flex-shrink:0;font-family:DM Mono,monospace;font-size:.75rem;font-weight:700;padding:2px 8px}.ap-status-badge{border-radius:20px;font-size:.72rem;font-weight:700;letter-spacing:.03em;padding:2px 10px}.ap-q-correct .ap-status-badge{background:#10b98126;color:#10b981;color:var(--green,#10b981)}.ap-q-wrong .ap-status-badge{background:#ef444426;color:#ef4444;color:var(--red,#ef4444)}.ap-q-skipped .ap-status-badge{background:#6b728026;color:#6b7280;color:var(--muted,#6b7280)}.ap-q-text{color:var(--text);font-size:.88rem;line-height:1.5;margin:0 0 .85rem}.ap-options-grid{grid-gap:.5rem;display:grid;gap:.5rem;grid-template-columns:1fr 1fr}@media (max-width:540px){.ap-options-grid{grid-template-columns:1fr}}.ap-option{align-items:flex-start;background:var(--bg2);border:1px solid var(--border);border-radius:8px;color:var(--muted);display:flex;font-size:.83rem;gap:.55rem;padding:.55rem .75rem;position:relative}.ap-opt-correct-selected{background:#10b9811a;border-color:#10b98180;color:var(--text)}.ap-opt-correct{background:#10b9810f;border-color:#10b9814d;color:var(--text)}.ap-opt-wrong-selected{background:#ef44441a;border-color:#ef444480;color:var(--text)}.ap-opt-label{align-items:center;background:var(--bg3);border:1px solid var(--border);border-radius:4px;color:var(--text);display:flex;flex-shrink:0;font-family:DM Mono,monospace;font-size:.75rem;font-weight:700;height:20px;justify-content:center;width:20px}.ap-opt-correct .ap-opt-label,.ap-opt-correct-selected .ap-opt-label{background:#10b98133;border-color:#10b98166;color:#10b981;color:var(--green,#10b981)}.ap-opt-wrong-selected .ap-opt-label{background:#ef444433;border-color:#ef444466;color:#ef4444;color:var(--red,#ef4444)}.ap-opt-text{flex:1 1;line-height:1.4}.ap-opt-tag{align-self:flex-start;border-radius:10px;flex-shrink:0;font-size:.64rem;font-weight:700;margin-top:1px;padding:1px 7px;white-space:nowrap}.ap-tag-correct{background:#10b98133;color:#10b981;color:var(--green,#10b981)}.ap-tag-wrong{background:#ef444433;color:#ef4444;color:var(--red,#ef4444)}.ap-q-img-wrap{margin:.6rem 0 .8rem;text-align:center}.ap-q-img{background:var(--bg);border:1px solid var(--border);border-radius:8px;max-height:220px;max-width:100%;object-fit:contain}.ap-opt-body{display:flex;flex:1 1;flex-direction:column;gap:.35rem}.ap-opt-img{align-self:flex-start;background:var(--bg);border:1px solid var(--border);border-radius:6px;max-height:100px;max-width:100%;object-fit:contain}@media (max-width:768px){.results-table-wrap{-webkit-overflow-scrolling:touch;border-radius:10px;overflow-x:auto}.results-table{font-size:.78rem;min-width:600px}.results-table td,.results-table th{padding:.55rem .65rem}.results-actions{flex-wrap:wrap;gap:.6rem}}@media (max-width:480px){.results-table{font-size:.74rem}}.csv-format-card{background:var(--bg2);border:1px solid var(--border);border-radius:var(--radius);margin-bottom:1.5rem;padding:1.25rem}.csv-format-header{align-items:center;color:var(--text);display:flex;font-size:.85rem;font-weight:700;justify-content:space-between;margin-bottom:1rem}.csv-columns{display:flex;flex-direction:column;gap:.5rem}.csv-col-row{align-items:center;border-bottom:1px solid #ffffff0a;display:flex;font-size:.83rem;gap:.75rem;padding:.4rem 0}.csv-col-row:last-child{border-bottom:none}.csv-col-row code{background:#6c47ff1a;border-radius:4px;color:var(--accent2);font-family:DM Mono,monospace;font-size:.8rem;min-width:110px;padding:.15rem .5rem}.col-desc{color:var(--muted);flex:1 1}.csv-upload-area{border:2px dashed var(--border);border-radius:var(--radius);margin-bottom:1.25rem;transition:border-color .2s}.csv-upload-area:hover{border-color:var(--accent2)}.csv-drop-label{align-items:center;color:var(--muted);cursor:pointer;display:flex;flex-direction:column;font-size:.9rem;gap:.5rem;justify-content:center;padding:2.5rem;text-align:center}.csv-upload-icon{font-size:2.5rem}.csv-drop-label strong{color:var(--text);font-size:.95rem}.csv-file-selected{align-items:center;display:flex;gap:1rem;padding:.5rem;width:100%}.csv-file-icon{flex-shrink:0;font-size:2rem}.csv-file-selected>div{display:flex;flex:1 1;flex-direction:column;gap:.2rem;text-align:left}.csv-file-selected strong{color:var(--text);font-size:.9rem}.csv-file-selected span{color:var(--muted);font-size:.78rem}.csv-remove-btn{background:#ef44441a;border:1px solid #ef44444d;border-radius:6px;color:var(--red);cursor:pointer;flex-shrink:0;font-size:.82rem;padding:.3rem .7rem}.csv-remove-btn:hover{background:#ef444433}.bulk-result{background:var(--bg2);border:1px solid var(--border);border-radius:var(--radius);display:flex;flex-direction:column;gap:1rem;margin-top:1.5rem;padding:1.5rem}.bulk-result h3{color:var(--text);font-size:1rem;font-weight:700}.bulk-stats{grid-gap:.75rem;display:grid;gap:.75rem;grid-template-columns:repeat(3,1fr)}.bulk-stat{align-items:center;background:var(--bg3);border:1px solid var(--border);border-radius:8px;display:flex;flex-direction:column;gap:.25rem;padding:1rem}.bulk-stat.success{background:#10b9810f;border-color:#10b9814d}.bulk-stat.warn{background:#f59e0b0f;border-color:#f59e0b4d}.bs-val{color:var(--text);font-family:DM Mono,monospace;font-size:1.6rem;font-weight:500}.bulk-stat.success .bs-val{color:var(--green)}.bulk-stat.warn .bs-val{color:var(--gold)}.bs-lbl{color:var(--muted);font-size:.7rem;letter-spacing:.08em;text-transform:uppercase}.skipped-list{background:#ef44440f;border:1px solid #ef444433;border-radius:8px;display:flex;flex-direction:column;font-size:.83rem;gap:.5rem;padding:1rem}.skipped-list strong{color:var(--red)}.skipped-row{color:var(--muted)}.skipped-row code{color:var(--text);font-family:DM Mono,monospace;font-size:.8rem}.bulk-email-note{background:#6c47ff0f;border:1px solid #6c47ff26;border-radius:8px;color:var(--muted);font-size:.83rem;margin:0;padding:.75rem 1rem}.q-stats-row{display:flex;flex-wrap:wrap;gap:.6rem;margin-bottom:1.25rem}.q-stat-chip{align-items:center;background:var(--bg2);border:1px solid var(--border);border-radius:8px;color:var(--muted);display:flex;flex-direction:column;font-size:.7rem;gap:.15rem;letter-spacing:.06em;padding:.6rem 1rem;text-transform:uppercase}.q-stat-chip span{font-family:DM Mono,monospace;font-size:1.3rem;font-weight:500}.q-filters{gap:.75rem;margin-bottom:1rem}.q-filters,.qi-upload-row{align-items:center;display:flex;flex-wrap:wrap}.qi-upload-row{gap:.6rem;margin-top:.45rem}.qi-upload-btn{align-items:center;border:1px dashed var(--border);border-radius:6px;color:var(--muted);cursor:pointer;display:inline-flex;font-size:.78rem;gap:.3rem;padding:.3rem .7rem;transition:all .15s;-webkit-user-select:none;user-select:none;white-space:nowrap}.qi-upload-btn:hover{background:#6366f10f;border-color:var(--accent);color:var(--accent)}.qi-upload-btn-sm{font-size:.72rem;padding:.2rem .55rem}.qi-preview{align-items:center;display:inline-flex;position:relative}.qi-preview img{background:var(--bg);border:1px solid var(--border);border-radius:6px;height:60px;max-width:160px;object-fit:contain}.qi-preview-sm img{height:48px;max-width:120px}.qi-remove{background:#ef4444;background:var(--red,#ef4444);border:none;border-radius:50%;color:#fff;cursor:pointer;font-size:.6rem;height:18px;justify-content:center;line-height:1;padding:0;position:absolute;right:-6px;top:-6px;width:18px}.q-list-toolbar,.qi-remove{align-items:center;display:flex}.q-list-toolbar{flex-wrap:wrap;gap:1rem;margin-bottom:1rem}.cq-add-new-btn{align-items:center;display:flex;gap:.4rem;white-space:nowrap}.cq-container{gap:1.25rem}.cq-container,.cq-topbar{display:flex;flex-direction:column}.cq-topbar{gap:.4rem}.cq-breadcrumb{align-items:center;color:var(--muted);display:flex;font-size:.8rem;gap:.35rem}.cq-breadcrumb-link{background:none;border:none;color:var(--muted);cursor:pointer;font-size:.8rem;padding:0;transition:color .15s}.cq-breadcrumb-link:hover{color:var(--accent)}.cq-breadcrumb-cur{color:var(--text);font-weight:500}.cq-header-row{align-items:center;display:flex;gap:1rem;justify-content:space-between}.cq-title{color:var(--text);font-family:Manrope,sans-serif;font-size:1.6rem;font-weight:700;margin:0}.cq-header-actions{align-items:center;display:flex;gap:.6rem}.cq-draft-btn{padding:.5rem 1.1rem!important}.cq-draft-btn,.cq-publish-btn{border-radius:10px!important;font-size:.88rem!important}.cq-publish-btn{background:linear-gradient(135deg,#6366f1,#8b5cf6)!important;border:none!important;box-shadow:0 4px 14px #6366f147!important;padding:.5rem 1.3rem!important}.cq-layout{grid-gap:1.5rem;align-items:start;display:grid;gap:1.5rem;grid-template-columns:1fr 310px}.cq-left{display:flex;flex-direction:column;gap:1rem;min-width:0}.cq-toolbar{background:var(--surface);border:1px solid var(--border);border-radius:12px;gap:.15rem;padding:.5rem .75rem}.cq-tool-btn,.cq-toolbar{align-items:center;display:flex}.cq-tool-btn{background:#0000;border:none;border-radius:7px;color:var(--muted);cursor:pointer;flex-shrink:0;height:32px;justify-content:center;transition:background .15s,color .15s;width:32px}.cq-tool-btn:hover{background:var(--bg3);color:var(--text)}.cq-editor-card{background:var(--surface);border:1px solid var(--border);border-radius:14px;display:flex;flex-direction:column;gap:.85rem;padding:1.25rem 1.35rem}.cq-section-label{color:var(--muted);font-size:.7rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.cq-question-textarea{background:#0000;border:none;box-sizing:border-box;color:var(--text);font-family:inherit;font-size:.92rem;line-height:1.65;min-height:110px;outline:none;padding:0;resize:vertical;width:100%}.cq-question-textarea::placeholder{color:var(--muted);opacity:.55}.cq-q-img-row{align-items:center;display:flex;flex-wrap:wrap;gap:1rem}.cq-q-img-preview{display:inline-flex;position:relative}.cq-q-img-preview img{border:1px solid var(--border);border-radius:8px;max-height:120px;max-width:100%;object-fit:cover}.cq-img-remove{align-items:center;background:#0000008c;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:.68rem;height:20px;justify-content:center;position:absolute;right:4px;top:4px;width:20px}.cq-options-section{display:flex;flex-direction:column;gap:1rem}.cq-options-header{align-items:center;display:flex;justify-content:space-between}.cq-options-title{color:var(--text);font-size:.92rem;gap:.5rem}.cq-add-choice-btn,.cq-options-title{align-items:center;display:flex;font-weight:600}.cq-add-choice-btn{background:none;border:none;border-radius:8px;color:var(--accent);cursor:pointer;font-size:.82rem;gap:.35rem;padding:.35rem .65rem;transition:background .15s}.cq-add-choice-btn:hover{background:#6366f114}.cq-options-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:1fr 1fr}.cq-option-card{background:var(--surface);border:1.5px solid var(--border);border-radius:14px;display:flex;flex-direction:column;gap:.65rem;padding:1rem 1.1rem;transition:border-color .2s}.cq-option-card.cq-option-correct{background:rgba(99,102,241,.025);border-color:#6366f1}.cq-option-header{align-items:center;display:flex;justify-content:space-between}.cq-option-badge{align-items:center;border-radius:8px;color:#fff;display:flex;flex-shrink:0;font-size:.8rem;font-weight:700;height:26px;justify-content:center;width:26px}.cq-option-correct-toggle{align-items:center;cursor:pointer;display:flex;gap:.45rem;-webkit-user-select:none;user-select:none}.cq-correct-label{color:var(--muted);font-size:.66rem;font-weight:700;letter-spacing:.06em}.cq-correct-dot{background:#0000;border:2px solid var(--border);border-radius:50%;flex-shrink:0;height:18px;transition:background .15s,border-color .15s;width:18px}.cq-correct-dot-on{background:#6366f1;border-color:#6366f1;box-shadow:0 0 0 3px #6366f12e}.cq-option-textarea{background:var(--bg2);border:1px solid var(--border);border-radius:9px;box-sizing:border-box;color:var(--text);font-family:inherit;font-size:.85rem;line-height:1.5;min-height:70px;outline:none;padding:.6rem .75rem;resize:none;transition:border-color .15s;width:100%}.cq-option-textarea:focus{border-color:var(--accent)}.cq-option-textarea::placeholder{color:var(--muted);opacity:.55}.cq-add-img-label,.cq-img-change-label{align-items:center;color:var(--muted);cursor:pointer;display:flex;font-size:.78rem;gap:.35rem;transition:color .15s}.cq-add-img-label:hover,.cq-img-change-label:hover{color:var(--accent)}.cq-opt-img-wrap{display:flex;flex-direction:column;gap:.4rem}.cq-opt-img{border:1px solid var(--border);border-radius:8px;max-height:80px;max-width:100%;object-fit:cover}.cq-right{display:flex;flex-direction:column;gap:1rem;position:sticky;top:72px}.cq-meta-card,.cq-preview-card,.cq-status-card{background:var(--surface);border:1px solid var(--border);border-radius:14px;padding:1.2rem 1.25rem}.cq-meta-title{color:var(--muted);font-size:.7rem;font-weight:700;letter-spacing:.08em;margin-bottom:1.1rem;text-transform:uppercase}.cq-meta-field{display:flex;flex-direction:column;gap:.45rem;margin-bottom:1rem}.cq-meta-label{color:var(--text);font-size:.78rem;font-weight:600}.cq-select-wrap{position:relative}.cq-select-arrow{color:var(--muted);pointer-events:none;position:absolute;right:.75rem;top:50%;transform:translateY(-50%)}.cq-meta-input,.cq-meta-select{background:var(--surface);border:1.5px solid var(--border);border-radius:10px;box-shadow:0 1px 3px #0000000d;box-sizing:border-box;color:var(--text);font-family:inherit;font-size:.85rem;outline:none;padding:.55rem .8rem;transition:border-color .15s;width:100%}.cq-meta-select{appearance:none;-webkit-appearance:none;cursor:pointer;padding-right:2rem}.cq-meta-input:focus,.cq-meta-select:focus{border-color:#6366f1}.cq-difficulty-pills{grid-gap:.4rem;display:grid;gap:.4rem;grid-template-columns:repeat(3,1fr)}.cq-diff-pill{background:var(--surface);border:1.5px solid var(--border);border-radius:50px;box-shadow:0 1px 3px #0000000d;color:var(--muted);cursor:pointer;font-size:.82rem;font-weight:600;padding:.48rem .4rem;text-align:center;transition:all .18s}.cq-diff-pill:hover{border-color:var(--accent);color:var(--accent)}.cq-diff-pill-easy{background:var(--surface);border-color:#22c55e80;color:#16a34a}.cq-diff-pill-medium{background:#6366f1;border-color:#6366f1;box-shadow:0 4px 14px #6366f159;color:#fff}.cq-diff-pill-hard{background:var(--surface);border-color:#ef444480;color:#dc2626}.cq-meta-row-2{grid-gap:.75rem;display:grid;gap:.75rem;grid-template-columns:1fr 1fr;margin-bottom:1rem}.cq-tags-wrap{align-items:center;background:var(--surface);border:1.5px solid var(--border);border-radius:10px;box-shadow:0 1px 3px #0000000d;cursor:text;display:flex;flex-wrap:wrap;gap:.4rem;min-height:42px;padding:.5rem .75rem;transition:border-color .15s}.cq-tags-wrap:focus-within{border-color:#6366f1}.cq-tag{align-items:center;background:#6366f11a;border:1px solid #6366f138;border-radius:20px;color:#6366f1;display:flex;font-size:.72rem;font-weight:700;gap:.25rem;letter-spacing:.04em;padding:.18rem .65rem}.cq-tag-remove{background:none;border:none;color:inherit;cursor:pointer;font-size:.9rem;line-height:1;opacity:.65;padding:0;transition:opacity .15s}.cq-tag-remove:hover{opacity:1}.cq-tag-input{background:none;border:none;color:var(--text);flex:1 1;font-family:inherit;font-size:.82rem;min-width:50px;outline:none;padding:0}.cq-tag-input::placeholder{color:var(--muted);opacity:.55}.cq-preview-body{background:var(--bg2);border:1px solid var(--border);border-radius:10px;display:flex;flex-direction:column;min-height:140px;overflow:hidden}.cq-preview-placeholder{align-items:center;color:var(--muted);display:flex;flex:1 1;justify-content:center;min-height:140px;opacity:.5}.cq-preview-img{display:block;max-height:180px;object-fit:cover;width:100%}.cq-preview-text{color:var(--text);font-size:.82rem;line-height:1.55;margin:0;padding:.85rem}.cq-status-card{padding:1rem 1.25rem}.cq-status-row{align-items:center;display:flex;gap:.5rem;margin-bottom:.55rem}.cq-active-dot{background:#22c55e;border-radius:50%;box-shadow:0 0 0 3px #22c55e2e;flex-shrink:0;height:8px;width:8px}.cq-status-text{color:#22c55e;font-size:.82rem;font-weight:600}.cq-id-badge{color:var(--muted);font-family:DM Mono,monospace;font-size:.7rem;margin-left:auto}.cq-autosave-note{color:var(--muted);font-size:.73rem;line-height:1.45;margin:0}@media (max-width:960px){.cq-layout{grid-template-columns:1fr}.cq-right{position:static}}@media (max-width:640px){.cq-options-grid{grid-template-columns:1fr}.cq-meta-row-2{grid-template-columns:1fr 1fr}}.csv-drop-zone{align-items:center;background:var(--bg2);border:2px dashed var(--border);border-radius:14px;cursor:pointer;display:flex;flex-direction:column;gap:.6rem;justify-content:center;margin-top:1.5rem;padding:3.5rem 2rem;text-align:center;transition:border-color .18s,background .18s}.csv-drop-zone--over,.csv-drop-zone:hover{background:#6366f10d;border-color:var(--accent)}.csv-drop-icon{color:var(--muted);margin-bottom:.3rem;transition:color .18s}.csv-drop-zone--over .csv-drop-icon,.csv-drop-zone:hover .csv-drop-icon{color:var(--accent)}.csv-drop-title{color:var(--text);font-size:1rem;font-weight:600;margin:0}.csv-drop-sub{color:var(--muted);font-size:.85rem;margin:0}.csv-drop-link{color:var(--accent);cursor:pointer;text-decoration:underline}.csv-format-hint{background:var(--bg);border:1px solid var(--border);border-radius:8px;color:var(--muted);font-size:.78rem;line-height:1.65;margin-top:.8rem;max-width:520px;padding:.75rem 1.25rem}.csv-format-hint strong{color:var(--text)}.csv-preview-header{align-items:center;display:flex;gap:1rem;justify-content:space-between;margin:1.5rem 0 .85rem}.csv-preview-count{color:var(--text);font-size:.88rem;font-weight:600}.csv-preview-scroll{background:var(--bg2);border:1px solid var(--border);border-radius:10px;overflow-x:auto}.csv-preview-table{border-collapse:collapse;font-size:.8rem;width:100%}.csv-preview-table thead th{background:var(--bg);border-bottom:1px solid var(--border);color:var(--muted);font-size:.72rem;font-weight:600;letter-spacing:.05em;padding:.6rem .55rem;text-align:left;text-transform:uppercase;white-space:nowrap}.csv-preview-table tbody tr{border-bottom:1px solid var(--border);transition:background .12s}.csv-preview-table tbody tr:last-child{border-bottom:none}.csv-preview-table tbody tr:hover{background:var(--bg)}.csv-preview-table tbody tr.csv-row-invalid{background:#ef44440a}.csv-preview-table tbody tr.csv-row-invalid:hover{background:#ef444414}.csv-preview-table td{padding:.35rem .4rem;vertical-align:top}.csv-cell-num{color:var(--muted);font-family:DM Mono,monospace;font-size:.73rem;padding-top:.55rem!important;text-align:center;white-space:nowrap}.csv-cell-input{background:var(--bg);border:1px solid var(--border);border-radius:5px;box-sizing:border-box;color:var(--text);font-size:.8rem;padding:.32rem .45rem;transition:border-color .15s;width:100%}.csv-cell-input:focus{border-color:var(--accent);outline:none}.csv-cell-textarea{font-family:inherit;line-height:1.45;min-height:52px;resize:vertical}.csv-cell-num-input{text-align:center}.csv-cell-select{background:var(--bg);border:1px solid var(--border);border-radius:5px;color:var(--text);cursor:pointer;font-size:.8rem;padding:.32rem .35rem;width:100%}.csv-cell-select:focus{border-color:var(--accent);outline:none}.csv-row-del-btn{align-items:center;background:#0000;border:1px solid #0000;border-radius:5px;color:var(--muted);cursor:pointer;display:flex;height:26px;justify-content:center;margin-top:.15rem;transition:all .15s;width:26px}.csv-row-del-btn:hover{background:#ef44441a;border-color:#ef44444d;color:var(--red)}.csv-save-footer{align-items:center;border-top:1px solid var(--border);display:flex;gap:.75rem;justify-content:flex-end;margin-top:1.25rem;padding-top:1.25rem}.email-config-container label{color:var(--text);display:block;font-size:.85rem;font-weight:600;margin-bottom:.35rem}.email-config-container .input-field{border-radius:6px;box-shadow:0 1px 2px 0 #0000000d;font-family:Inter,sans-serif}.email-config-container .custom-scrollbar::-webkit-scrollbar{width:8px}.email-config-container .custom-scrollbar::-webkit-scrollbar-track{background:var(--bg3)}.email-config-container .custom-scrollbar::-webkit-scrollbar-thumb{background:var(--muted);border-radius:4px}.email-config-container .custom-scrollbar::-webkit-scrollbar-thumb:hover{background:var(--text)}.info-tooltip-wrapper{cursor:help;display:inline-flex;position:relative}.copy-toast{animation:toast-pop .18s ease;background:#10b981;background:var(--green,#10b981);border-radius:6px;bottom:calc(100% + 6px);box-shadow:0 2px 8px #10b98159;color:#fff;font-size:.72rem;font-weight:700;padding:3px 10px;pointer-events:none;white-space:nowrap;z-index:200}.copy-toast,.copy-toast:after{left:50%;position:absolute;transform:translateX(-50%)}.copy-toast:after{border:5px solid #0000;border-top:5px solid var(--green,#10b981);content:"";top:100%}@keyframes toast-pop{0%{opacity:0;transform:translateX(-50%) translateY(4px) scale(.9)}to{opacity:1;transform:translateX(-50%) translateY(0) scale(1)}}.ev-modal{animation:modal-slide .2s ease;background:var(--bg2);border:1px solid var(--border);border-radius:14px;box-shadow:0 24px 60px #00000073;overflow:hidden;width:min(540px,92vw)}.ev-modal-desc{color:var(--muted);font-size:.82rem;line-height:1.55;margin:0;padding:1rem 1.5rem 0}.ev-vars-list{display:flex;flex-direction:column;gap:0;padding:1rem 1.5rem}.ev-var-row{align-items:center;border-bottom:1px solid #ffffff0d;display:flex;gap:1rem;padding:.75rem 0}.ev-var-row:last-child{border-bottom:none}.ev-var-tag{background:#6c47ff1a;border:1px solid #6c47ff33;border-radius:6px;color:var(--accent2);font-family:DM Mono,monospace;font-size:.82rem;min-width:130px;padding:4px 10px;text-align:center;white-space:nowrap}.ev-var-info{display:flex;flex-direction:column;gap:.15rem}.ev-var-desc{color:var(--text);font-size:.85rem;font-weight:500}.ev-var-example{color:var(--muted);font-size:.75rem}.ev-var-example em{color:#10b981;color:var(--green,#10b981);font-family:DM Mono,monospace;font-style:normal}.ev-no-vars{align-items:center;color:var(--muted);display:flex;flex-direction:column;font-size:.85rem;gap:.25rem;justify-content:center;padding:2rem 1.5rem;text-align:center}.ev-no-vars code{background:#6c47ff1a;border-radius:4px;color:var(--accent2);font-family:DM Mono,monospace;padding:1px 6px}.ep-modal{animation:modal-slide .2s ease;background:var(--bg2);border:1px solid var(--border);border-radius:14px;box-shadow:0 24px 60px #00000080;display:flex;flex-direction:column;height:min(88vh,860px);overflow:hidden;width:min(900px,96vw)}.ep-modal-body{background:#fff;flex:1 1;overflow:auto;position:relative}@media (max-width:768px){.ev-modal{max-height:92vh;max-width:100%!important}.ep-modal,.ev-modal{border-radius:18px 18px 0 0;width:100%}.ep-modal{height:92vh;margin:0;max-width:100%}}.role-permissions-grid{border:1px solid var(--border);border-radius:10px;overflow:hidden}.rpg-header{grid-gap:0;background:var(--bg3);border-bottom:1px solid var(--border);color:var(--muted);display:grid;font-size:.75rem;font-weight:700;gap:0;grid-template-columns:1fr repeat(3,90px);letter-spacing:.04em;padding:.55rem 1rem;text-transform:uppercase}.rpg-checkbox,.rpg-header span:not(:first-child){align-items:center;display:flex;justify-content:center;text-align:center}.rpg-row{grid-gap:0;align-items:center;border-bottom:1px solid var(--border);display:grid;gap:0;grid-template-columns:1fr repeat(3,90px);padding:.6rem 1rem;transition:background .15s}.rpg-row:last-child{border-bottom:none}.rpg-row:hover{background:var(--bg2)}.rpg-module{color:var(--text);font-size:.84rem;font-weight:500}.rpg-checkbox input[type=checkbox]{accent-color:var(--accent);cursor:pointer;height:16px;width:16px}.rp-editor{grid-gap:1.5rem;align-items:start;display:grid;gap:1.5rem;grid-template-columns:260px 1fr}.rp-left{background:var(--surface);border:1px solid var(--border);border-radius:18px;display:flex;flex-direction:column;gap:0;padding:1.6rem 1.35rem 1.35rem;position:sticky;top:80px}.rp-name-input{border-radius:10px!important;font-size:.92rem!important;font-weight:500!important;text-align:center}.rp-avatar-wrap{margin-bottom:1.4rem}.rp-avatar,.rp-avatar-wrap{display:flex;justify-content:center}.rp-avatar{align-items:center;background:linear-gradient(135deg,#6366f1,#8b5cf6);border-radius:50%;box-shadow:0 6px 20px #6366f161;color:#fff;font-size:1.4rem;font-weight:700;height:72px;letter-spacing:.02em;width:72px}.rp-meta{background:var(--bg2);border:1px solid var(--border);border-radius:10px;display:flex;flex-direction:column;gap:.35rem;margin-bottom:1.25rem;padding:.75rem 1rem}.rp-meta-row{align-items:center;color:var(--muted);display:flex;font-size:.78rem;justify-content:space-between}.rp-meta-val{color:var(--text);font-family:DM Mono,monospace;font-size:.76rem;font-weight:500}.rp-presets-section{margin-bottom:1.5rem}.rp-presets-label{align-items:center;color:var(--muted);display:flex;font-size:.72rem;font-weight:700;letter-spacing:.05em;margin:0 0 .75rem;text-transform:uppercase}.rp-presets-grid{grid-gap:.5rem;display:grid;gap:.5rem;grid-template-columns:repeat(3,1fr)}.rp-preset-btn{align-items:center;background:var(--bg2);border:1.5px solid var(--border);border-radius:12px;cursor:pointer;display:flex;flex-direction:column;gap:.35rem;padding:.75rem .5rem .65rem;text-align:center;transition:border-color .15s,background .15s,box-shadow .15s;width:100%}.rp-preset-btn:hover{background:#6366f10d;border-color:#6366f1;box-shadow:0 2px 8px #6366f11f}.rp-preset-icon-wrap{align-items:center;display:flex;font-size:1.25rem;height:28px;justify-content:center;line-height:1}.rp-preset-name{color:var(--text);font-size:.8rem;font-weight:600;line-height:1.2}.rp-preset-sub{color:var(--muted);font-size:.68rem;line-height:1.2}.rp-left-actions{display:flex;flex-direction:column;gap:.55rem;margin-top:auto;padding-top:1.25rem}.rp-save-btn{background:linear-gradient(135deg,#6366f1,#8b5cf6)!important;border:none!important;border-radius:10px!important;box-shadow:0 4px 14px #6366f14d;font-size:.92rem!important;font-weight:600!important;justify-content:center;padding:.72rem 1rem!important;transition:opacity .15s,box-shadow .15s!important}.rp-save-btn:hover:not(:disabled){box-shadow:0 6px 20px #6366f166;opacity:.92}.rp-cancel-btn{border-radius:10px!important;font-size:.88rem!important;justify-content:center;padding:.7rem 1rem!important}.rp-right{display:flex;flex-direction:column;gap:1rem;min-width:0}.rp-right-toolbar{align-items:center;background:var(--surface);border:1px solid var(--border);border-radius:12px;display:flex;flex-wrap:wrap;gap:.75rem;padding:.75rem 1rem}.rp-search-wrap{flex:1 1;min-width:180px;position:relative}.rp-search-icon{color:var(--muted);left:.75rem;pointer-events:none;position:absolute;top:50%;transform:translateY(-50%)}.rp-search-input{background:var(--bg2);border:1px solid var(--border);border-radius:8px;color:var(--text);font-size:.85rem;outline:none;padding:.5rem .75rem .5rem 2.2rem;transition:border-color .15s;width:100%}.rp-search-input:focus{border-color:#6366f1}.rp-enabled-badge{background:#6366f11a;border:1px solid #6366f140;border-radius:20px;color:#6366f1;font-size:.78rem;font-weight:600;padding:.25rem .75rem;white-space:nowrap}.rp-modules-list{display:flex;flex-direction:column;gap:.85rem}.rp-mod-card{background:var(--surface);border:1px solid var(--border);border-radius:14px;overflow:hidden}.rp-mod-header{align-items:center;background:var(--bg2);cursor:pointer;display:flex;gap:.85rem;padding:1rem 1.1rem;transition:background .15s;-webkit-user-select:none;user-select:none}.rp-mod-header:hover{background:var(--bg3)}.rp-mod-icon-wrap{align-items:center;background:#6366f11a;border:1px solid #6366f133;border-radius:9px;color:#6366f1;display:flex;flex-shrink:0;height:36px;justify-content:center;width:36px}.rp-mod-name{color:var(--text);font-size:.9rem;font-weight:600}.rp-mod-desc{margin-top:.1rem}.rp-mod-count,.rp-mod-desc{color:var(--muted);font-size:.75rem}.rp-mod-count{background:var(--bg3);border:1px solid var(--border);border-radius:20px;flex-shrink:0;font-weight:600;padding:.2rem .55rem}.rp-count-partial{background:#f59e0b1f;border-color:#f59e0b4d;color:#d97706}.rp-count-full{background:#22c55e1f;border-color:#22c55e4d;color:#16a34a}.rp-chevron{color:var(--muted);flex-shrink:0;transition:transform .2s}.rp-chevron-collapsed{transform:rotate(180deg)}.rp-perms-grid{grid-gap:.65rem;display:grid;gap:.65rem;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));padding:1rem 1.1rem}.rp-perm-item{align-items:center;background:var(--bg2);border:1px solid var(--border);border-radius:10px;cursor:pointer;display:flex;gap:.5rem;justify-content:space-between;padding:.65rem .85rem;transition:border-color .15s,background .15s;-webkit-user-select:none;user-select:none}.rp-perm-item:hover{background:#6366f10a;border-color:#6366f1}.rp-perm-item.rp-perm-on{background:#6366f112;border-color:#6366f166}.rp-perm-icon{align-items:center;background:var(--bg3);border-radius:7px;color:var(--muted);display:flex;flex-shrink:0;height:28px;justify-content:center;width:28px}.rp-perm-item.rp-perm-on .rp-perm-icon{background:#6366f126;color:#6366f1}.rp-perm-label{color:var(--text);flex:1 1;font-size:.8rem;font-weight:500;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rp-toggle{flex-shrink:0;height:21px;position:relative;width:38px}.rp-toggle input{height:0;opacity:0;position:absolute;width:0}.rp-toggle-slider{background:#cbd5e1;border-radius:21px;inset:0;pointer-events:none;position:absolute;transition:background .2s}.rp-toggle-slider:before{background:#fff;border-radius:50%;box-shadow:0 1px 4px #0000002e;content:"";height:15px;left:3px;position:absolute;top:3px;transition:transform .2s;width:15px}.rp-toggle input:checked+.rp-toggle-slider{background:#6366f1}.rp-toggle input:checked+.rp-toggle-slider:before{transform:translateX(17px)}@media (max-width:860px){.rp-editor{grid-template-columns:1fr}.rp-left{position:static}}@media (max-width:768px){.rp-right-toolbar{align-items:stretch;flex-direction:column;gap:.65rem}.rp-right-toolbar>div:last-child{flex-wrap:wrap}.rp-perms-grid{grid-template-columns:1fr 1fr}}@media (max-width:480px){.rp-perms-grid{grid-template-columns:1fr}.rp-presets-grid{grid-template-columns:repeat(3,1fr)}}:root{--header-h:64px;--sidebar-width:260px;--sidebar-width-collapsed:72px}.admin-layout{background:var(--bg);display:grid;grid-template-areas:"header  header" "sidebar main";grid-template-columns:260px 1fr;grid-template-columns:var(--sidebar-width) 1fr;grid-template-rows:64px 1fr;grid-template-rows:var(--header-h) 1fr;height:100vh;overflow:hidden;transition:grid-template-columns .28s cubic-bezier(.4,0,.2,1)}.admin-layout.sidebar-collapsed{grid-template-columns:72px 1fr;grid-template-columns:var(--sidebar-width-collapsed) 1fr}.admin-header{align-items:center;background:var(--surface);border-bottom:1px solid var(--border);display:flex;gap:1rem;grid-area:header;height:64px;height:var(--header-h);justify-content:space-between;padding:0 1.5rem 0 1.25rem;position:sticky;top:0;z-index:150}.admin-header-left{align-items:center;display:flex;flex-shrink:0;gap:.85rem}.admin-brand{align-items:center;display:flex;gap:.75rem}.admin-brand-text{display:flex;flex-direction:column}.brand-name{color:var(--text);font-family:Manrope,sans-serif;font-size:.93rem;font-weight:700;letter-spacing:-.01em}.brand-name,.brand-sub{line-height:1.2;white-space:nowrap}.brand-sub{color:var(--muted);font-size:.68rem;margin-top:1px}.hdr-sidebar-toggle{align-items:center;background:#0000;border:none;border-radius:8px;color:var(--muted);cursor:pointer;display:flex;flex-shrink:0;height:34px;justify-content:center;transition:background .15s,color .15s;width:34px}.hdr-sidebar-toggle:hover{background:var(--bg3);color:var(--text)}.admin-header-right{align-items:center;display:flex;gap:.4rem;margin-left:auto}.hdr-icon-btn{align-items:center;background:#0000;border:none;border-radius:9px;color:var(--muted);cursor:pointer;display:flex;flex-shrink:0;height:36px;justify-content:center;transition:background .15s,color .15s;width:36px}.hdr-icon-btn:hover{background:var(--bg3);color:var(--text)}.hdr-theme-btn:hover{color:#6366f1}.hdr-divider{background:var(--border);flex-shrink:0;height:26px;margin:0 .5rem;opacity:.7;width:1px}.hdr-user{align-items:center;border-radius:10px;cursor:default;display:flex;gap:.65rem;padding:.35rem .55rem .35rem .7rem;transition:background .15s}.hdr-user:hover{background:var(--bg2)}.hdr-user-info{text-align:right}.hdr-user-name{color:var(--text);font-size:.83rem;font-weight:600;line-height:1.25;max-width:140px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.hdr-user-role{color:var(--muted);font-size:.68rem;line-height:1.25;margin-top:1px}.hdr-user-avatar{align-items:center;background:linear-gradient(135deg,#ef4444,#f97316);border-radius:50%;box-shadow:0 2px 6px #ef44444d;color:#fff;display:flex;flex-shrink:0;font-size:.83rem;font-weight:700;height:34px;justify-content:center;width:34px}.sidebar{background:var(--bg2);border-right:1px solid var(--border);display:flex;flex-direction:column;grid-area:sidebar;height:calc(100vh - 64px);height:calc(100vh - var(--header-h));overflow-x:hidden;overflow-y:auto;transition:width .28s cubic-bezier(.4,0,.2,1);width:260px;width:var(--sidebar-width)}.admin-layout.sidebar-collapsed .sidebar{width:72px;width:var(--sidebar-width-collapsed)}.sidebar__brand-icon{align-items:center;background:linear-gradient(135deg,#6c47ff,#a78bfa);border-radius:9px;box-shadow:0 2px 8px #6c47ff59;color:#fff;display:flex;flex-shrink:0;height:36px;justify-content:center;width:36px}.sidebar__nav{display:flex;flex:1 1;flex-direction:column;gap:.2rem;overflow-x:hidden;overflow-y:auto;padding:.75rem .75rem .5rem}.sidebar__nav-item{align-items:center;background:#0000;border:none;border-radius:9px;color:var(--muted);cursor:pointer;display:flex;flex-shrink:0;font-family:Manrope,sans-serif;font-size:.875rem;font-weight:600;gap:.7rem;overflow:hidden;padding:.62rem .85rem;text-align:left;transition:background .15s,color .15s;white-space:nowrap;width:100%}.sidebar__nav-item svg{flex-shrink:0;opacity:.7;transition:opacity .15s}.sidebar__nav-label{overflow:hidden;transition:opacity .18s,width .28s;white-space:nowrap}.sidebar__nav-item.active svg,.sidebar__nav-item:hover svg{opacity:1}.sidebar__nav-item:hover{background:var(--bg3);color:var(--text)}.sidebar__nav-item.active{background:#6c47ff24;color:var(--accent2)}.admin-layout.sidebar-collapsed .sidebar__nav{padding:.65rem .5rem .5rem}.admin-layout.sidebar-collapsed .sidebar__nav-item{gap:0;justify-content:center;padding:.7rem;position:relative}.admin-layout.sidebar-collapsed .sidebar__nav-label{opacity:0;width:0}.admin-layout.sidebar-collapsed .sidebar__nav-item:after{background:var(--bg3);border:1px solid var(--border);border-radius:7px;box-shadow:0 4px 14px #00000038;color:var(--text);content:attr(data-label);font-size:.8rem;font-weight:600;left:78px;left:calc(var(--sidebar-width-collapsed) + 6px);opacity:0;padding:.3rem .7rem;pointer-events:none;position:absolute;top:50%;transform:translateY(-50%);transition:opacity .15s;white-space:nowrap;z-index:300}.admin-layout.sidebar-collapsed .sidebar__nav-item:hover:after{opacity:1}.sidebar__bottom{border-top:1px solid var(--border);display:flex;flex-direction:column;flex-shrink:0;gap:.2rem;margin-top:auto;padding:.5rem .75rem .85rem}.sidebar__bottom-link{align-items:center;background:#0000;border:none;border-radius:9px;color:var(--muted);cursor:pointer;display:flex;flex-shrink:0;font-family:Manrope,sans-serif;font-size:.875rem;font-weight:500;gap:.7rem;overflow:hidden;padding:.62rem .85rem;text-align:left;transition:background .15s,color .15s;white-space:nowrap;width:100%}.sidebar__bottom-link svg{flex-shrink:0;opacity:.7;transition:opacity .15s}.sidebar__text{overflow:hidden;transition:opacity .18s,width .28s;white-space:nowrap}.sidebar__bottom-link:hover{background:var(--bg3);color:var(--text)}.sidebar__bottom-link:hover svg{opacity:1}.sidebar__bottom-link--logout,.sidebar__bottom-link--logout svg{color:#ef4444;opacity:1!important}.sidebar__bottom-link--logout:hover{background:#ef44441a;color:#ef4444}.admin-layout.sidebar-collapsed .sidebar__bottom{padding:.5rem .5rem .85rem}.admin-layout.sidebar-collapsed .sidebar__bottom-link{gap:0;justify-content:center;padding:.7rem;position:relative}.admin-layout.sidebar-collapsed .sidebar__text{opacity:0;width:0}.admin-layout.sidebar-collapsed .sidebar__bottom-link:after{background:var(--bg3);border:1px solid var(--border);border-radius:7px;box-shadow:0 4px 14px #00000038;color:var(--text);content:attr(data-label);font-size:.8rem;font-weight:600;left:78px;left:calc(var(--sidebar-width-collapsed) + 6px);opacity:0;padding:.3rem .7rem;pointer-events:none;position:absolute;top:50%;transform:translateY(-50%);transition:opacity .15s;white-space:nowrap;z-index:300}.admin-layout.sidebar-collapsed .sidebar__bottom-link:hover:after{opacity:1}.admin-main{display:flex;flex-direction:column;gap:1.5rem;grid-area:main;height:calc(100vh - 64px);height:calc(100vh - var(--header-h));overflow-x:hidden;overflow-y:auto;padding:2rem}.admin-topbar{align-items:center;display:flex;gap:.75rem;justify-content:space-between}.hamburger-btn{display:none}.admin-page-title{color:var(--text);font-family:"DM Serif Display",serif;font-size:1.8rem}.admin-user-chip{background:var(--bg3);border:1px solid var(--border);border-radius:999px;color:var(--muted);font-size:.85rem;padding:.4rem .9rem}.toast-stack{display:flex;flex-direction:column;gap:.6rem;max-width:420px;min-width:300px;pointer-events:none;position:fixed;right:1.25rem;top:1.25rem;z-index:9999}.toast-item{align-items:center;animation:toast-slide-in .25s cubic-bezier(.34,1.56,.64,1);border:1px solid #0000;border-radius:12px;box-shadow:0 8px 24px #00000059;display:flex;font-size:.85rem;font-weight:500;gap:.75rem;line-height:1.4;padding:.85rem 1rem;pointer-events:all}.toast-success{background:#0d2e1e;border-color:#10b98159;color:#6ee7b7}.toast-error{background:#2a0f0f;border-color:#ef444459;color:#fca5a5}.toast-icon-wrap{align-items:center;border-radius:50%;display:flex;flex-shrink:0;height:26px;justify-content:center;width:26px}.toast-success .toast-icon-wrap{background:#10b9812e;color:#10b981}.toast-error .toast-icon-wrap{background:#ef44442e;color:#ef4444}.toast-msg{flex:1 1}.toast-close{align-items:center;background:#0000;border:none;border-radius:6px;color:inherit;cursor:pointer;display:flex;flex-shrink:0;height:22px;justify-content:center;opacity:.5;padding:0;transition:opacity .15s;width:22px}.toast-close:hover{opacity:1}@keyframes toast-slide-in{0%{opacity:0;transform:translateX(60px) scale(.92)}to{opacity:1;transform:translateX(0) scale(1)}}.admin-loading{display:flex;justify-content:center;padding:4rem}.empty-state{align-items:center;color:var(--muted);display:flex;flex-direction:column;gap:1rem;padding:4rem;text-align:center}.empty-state span{font-size:3rem}.empty-state p{font-size:.9rem}.create-form-wrap{max-width:760px}.create-form{gap:1.75rem}.create-form,.form-section{display:flex;flex-direction:column}.form-section{background:var(--bg2);border:1px solid var(--border);border-radius:var(--radius);gap:1.25rem;padding:1.5rem}.form-section h3{border-bottom:1px solid var(--border);color:var(--accent2);font-size:.8rem;font-weight:700;letter-spacing:.1em;padding-bottom:.75rem;text-transform:uppercase}.form-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(2,1fr)}.form-actions{align-items:center;display:flex;gap:.75rem}@media (max-width:768px){.admin-layout{grid-template-areas:"header" "main";height:100vh}.admin-layout,.admin-layout.sidebar-collapsed{grid-template-columns:1fr}.sidebar{box-shadow:4px 0 24px #0000002e;height:calc(100vh - 64px);height:calc(100vh - var(--header-h));left:0;position:fixed;top:64px;top:var(--header-h);transform:translateX(-100%);transition:transform .28s cubic-bezier(.4,0,.2,1);width:260px!important;width:var(--sidebar-width)!important;z-index:200}.sidebar.sidebar--open{transform:translateX(0)}.admin-layout.sidebar-collapsed .sidebar__nav{padding:.75rem .75rem .5rem}.admin-layout.sidebar-collapsed .sidebar__nav-item{gap:.7rem;justify-content:flex-start;padding:.62rem .85rem}.admin-layout.sidebar-collapsed .sidebar__nav-label{opacity:1;width:auto}.admin-layout.sidebar-collapsed .sidebar__nav-item:after{display:none}.admin-layout.sidebar-collapsed .sidebar__bottom{padding:.5rem .75rem .85rem}.admin-layout.sidebar-collapsed .sidebar__bottom-link{gap:.7rem;justify-content:flex-start;padding:.62rem .85rem}.admin-layout.sidebar-collapsed .sidebar__text{opacity:1;width:auto}.admin-layout.sidebar-collapsed .sidebar__bottom-link:after{display:none}.sidebar-overlay{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#00000080;cursor:pointer;display:block;inset:0;position:fixed;z-index:199}.brand-sub,.hamburger-btn{display:none}.admin-main{gap:1rem;height:calc(100vh - 64px);height:calc(100vh - var(--header-h));padding:1rem}.section-toolbar{flex-wrap:wrap;gap:.6rem}.form-grid{grid-template-columns:1fr}.form-section{border-radius:12px;padding:1rem}.form-actions{flex-wrap:wrap}.ev-overlay{align-items:flex-end;padding:0}.form-section{max-width:100%!important}.hdr-icon-btn.hdr-messages,.hdr-icon-btn.hdr-notifications,.hdr-user-info{display:none}}@media (max-width:480px){.admin-main{padding:.75rem}.badge{font-size:.62rem}.btn-sm{font-size:.76rem;padding:.3rem .65rem}}.info-banner{align-items:flex-start;background:#6c47ff14;border:1px solid #6c47ff40;border-radius:10px;display:flex;font-size:.88rem;gap:1rem;margin-bottom:1.5rem;padding:1.1rem 1.25rem}.info-banner>span{flex-shrink:0;font-size:1.5rem}.info-banner strong{color:var(--accent2);display:block;font-size:.92rem;margin-bottom:.25rem}.info-banner p{color:var(--muted);line-height:1.5;margin:0}.btn-spinner{border:2px solid #ffffff4d;border-radius:50%;border-top-color:#fff;height:14px;margin-right:.25rem;vertical-align:middle;width:14px}.act-spinner,.btn-spinner{animation:spin .6s linear infinite;display:inline-block}.act-spinner{border:2px solid var(--border);border-radius:50%;border-top-color:var(--accent2);height:13px;width:13px}.action-btns{gap:.4rem}.act-btn,.action-btns{align-items:center;display:flex}.act-btn{background:var(--bg3);border:1px solid var(--border);border-radius:6px;color:var(--muted);cursor:pointer;font-size:.9rem;height:32px;justify-content:center;transition:all .15s;width:32px}.act-btn svg{stroke:currentColor}.act-btn:hover{color:var(--text);transform:translateY(-1px)}.act-btn:disabled{cursor:not-allowed;opacity:.5;transform:none}.act-btn.info{border-color:#6c47ff59;color:var(--accent2)}.act-btn.info:hover{background:#6c47ff26;color:var(--accent2)}.act-btn.warn{border-color:#f59e0b59;color:var(--gold)}.act-btn.warn:hover{background:#f59e0b1f;color:var(--gold)}.act-btn.danger{border-color:#ef444459;color:var(--red)}.act-btn.danger:hover{background:#ef44441f;color:var(--red)}.act-btn.success{border-color:#10b98159;color:var(--green)}.act-btn.success:hover{background:#10b9811f;color:var(--green)}textarea.input-field{line-height:1.5;min-height:80px;resize:vertical}.ev-overlay{align-items:center;animation:fade-in .15s ease;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#0000008c;display:flex;inset:0;justify-content:center;position:fixed;z-index:1000}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes modal-slide{0%{opacity:0;transform:translateY(-12px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}.ev-modal-header{align-items:center;background:var(--bg3);border-bottom:1px solid var(--border);display:flex;justify-content:space-between;padding:1.25rem 1.5rem}.ev-modal-title{color:var(--text);font-size:.95rem;font-weight:700;gap:.55rem}.ev-close-btn,.ev-modal-title{align-items:center;display:flex}.ev-close-btn{background:var(--bg2);border:1px solid var(--border);border-radius:6px;color:var(--muted);cursor:pointer;flex-shrink:0;height:28px;justify-content:center;transition:all .15s;width:28px}.ev-close-btn:hover{background:#ef44441f;border-color:#ef44444d;color:#ef4444;color:var(--red,#ef4444)}.ev-modal-footer{border-top:1px solid var(--border);display:flex;justify-content:flex-end;padding:1rem 1.5rem}.cp-card{max-width:420px}.cp-header{margin-bottom:1rem;text-align:center}.cp-lock-icon{align-items:center;background:#6c47ff1f;border:1px solid #6c47ff40;border-radius:14px;color:#6c47ff;color:var(--accent,#6c47ff);display:flex;height:56px;justify-content:center;margin:0 auto .85rem;width:56px}.cp-title{color:var(--text);font-size:1.35rem;font-weight:700;margin:0 0 .35rem}.cp-subtitle{color:var(--muted);font-size:.84rem;line-height:1.5;margin:0}.cp-input-wrap{align-items:center;display:flex;position:relative}.cp-input{padding-right:2.6rem!important}.cp-eye-btn{align-items:center;background:none;border:none;color:var(--muted);cursor:pointer;display:flex;padding:0;position:absolute;right:.65rem;transition:color .15s}.cp-eye-btn:hover{color:var(--text)}.cp-requirements{display:flex;flex-direction:column;gap:.3rem;margin-bottom:.1rem;margin-top:-.2rem}.cp-requirements span{align-items:center;display:flex;font-size:.78rem;gap:.4rem;transition:color .2s}.req-met{color:#22c55e;color:var(--green,#22c55e)}.req-unmet{color:#6b7280;color:var(--muted,#6b7280)}.cp-logout-link{background:none;border:none;color:#6c47ff;color:var(--accent,#6c47ff);cursor:pointer;font-size:inherit;padding:0;text-decoration:underline;text-underline-offset:2px}.cp-logout-link:hover{opacity:.8}*,:after,:before{box-sizing:border-box;margin:0;padding:0}:root{--bg:#06060f;--bg2:#0d0d1e;--bg3:#13132a;--border:#1e1e3f;--accent:#6c47ff;--accent2:#a78bfa;--gold:#f59e0b;--green:#10b981;--red:#ef4444;--text:#e8e8f0;--muted:#6b7280;--radius:12px;--shadow:0 8px 32px #00000080;--bg-glass:#0d0d1ee6;font-family:Manrope,sans-serif;font-size:16px;transition:background-color .3s ease,color .3s ease}[data-theme=light]{--bg:#f9fafb;--bg2:#fff;--bg3:#f3f4f6;--border:#e5e7eb;--accent:#6c47ff;--accent2:#8a5cf6;--gold:#d97706;--green:#059669;--red:#dc2626;--text:#111827;--muted:#4b5563;--shadow:0 8px 32px #00000014;--bg-glass:#ffffffe6}#root,body,html{-webkit-font-smoothing:antialiased;background:#06060f;background:var(--bg);color:#e8e8f0;color:var(--text);height:100%}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:#0d0d1e;background:var(--bg2)}::-webkit-scrollbar-thumb{background:#1e1e3f;background:var(--border);border-radius:3px}a{color:#a78bfa;color:var(--accent2);text-decoration:none}.flex,.flex-col{display:flex}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-1{gap:.5rem}.gap-2{gap:1rem}.gap-3{gap:1.5rem}.w-full{width:100%}.text-center{text-align:center}.btn{align-items:center;border:none;border-radius:8px;cursor:pointer;display:inline-flex;font-family:Manrope,sans-serif;font-size:.95rem;font-weight:700;gap:.5rem;justify-content:center;letter-spacing:.02em;padding:.75rem 1.75rem;transition:all .2s}.btn-primary{background:#6c47ff;background:var(--accent);box-shadow:0 0 20px #6c47ff66;color:#fff}.btn-primary:hover{background:#7c5aff;box-shadow:0 0 28px #6c47ff99;transform:translateY(-1px)}.btn-primary:disabled{background:#3a3a6a;box-shadow:none;cursor:not-allowed;transform:none}.btn-outline{background:#0000;border:1.5px solid #1e1e3f;border:1.5px solid var(--border);color:#a78bfa;color:var(--accent2)}.btn-outline:hover{background:#6c47ff14;border-color:#6c47ff;border-color:var(--accent)}.btn-danger{background:#ef4444;background:var(--red);color:#fff}.btn-danger:hover{background:#dc2626;transform:translateY(-1px)}.btn-sm{font-size:.85rem;padding:.5rem 1rem}.card{background:#0d0d1e;background:var(--bg2);border:1px solid #1e1e3f;border:1px solid var(--border);border-radius:12px;border-radius:var(--radius);padding:2rem}.input-group{display:flex;flex-direction:column;gap:.4rem}.input-group label{color:#6b7280;color:var(--muted);font-size:.8rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase}.input-field{background:#13132a;background:var(--bg3);border:1.5px solid #1e1e3f;border:1.5px solid var(--border);border-radius:8px;color:#e8e8f0;color:var(--text);font-family:Manrope,sans-serif;font-size:.95rem;padding:.8rem 1rem;transition:border-color .2s;width:100%}.input-field:focus{border-color:#6c47ff;border-color:var(--accent);outline:none}.input-field::placeholder{color:#6b7280;color:var(--muted)}.badge{align-items:center;border-radius:999px;display:inline-flex;font-size:.75rem;font-weight:700;letter-spacing:.05em;padding:.25rem .75rem}.badge-green{background:#10b98126;color:#10b981;color:var(--green)}.badge-red{background:#ef444426;color:#ef4444;color:var(--red)}.badge-gold{background:#f59e0b26;color:#f59e0b;color:var(--gold)}.badge-purple{background:#6c47ff26;color:#a78bfa;color:var(--accent2)}@keyframes spin{to{transform:rotate(1turn)}}.spinner{animation:spin .7s linear infinite;border:3px solid #1e1e3f;border-top-color:#6c47ff;border:3px solid var(--border);border-radius:50%;border-top-color:var(--accent);height:40px;width:40px}@keyframes fadeUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.fade-up{animation:fadeUp .4s ease both}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.pulse{animation:pulse 2s ease-in-out infinite}
/*# sourceMappingURL=main.051c4ad2.css.map*/