:root{--gradient-primary: linear-gradient(135deg, #667eea 0%, #764ba2 100%);--gradient-success: linear-gradient(135deg, #11998e 0%, #38ef7d 100%);--gradient-warning: linear-gradient(135deg, #f093fb 0%, #f5576c 100%);--gradient-info: linear-gradient(135deg, #4facfe 0%, #00f2fe 100%);--gradient-danger: linear-gradient(135deg, #fa709a 0%, #fee140 100%);--gradient-trainer: linear-gradient(135deg, #f093fb 0%, #f5576c 100%);--gradient-coach: linear-gradient(135deg, #4facfe 0%, #00f2fe 100%);--gradient-helper: linear-gradient(135deg, #43e97b 0%, #38f9d7 100%);--gradient-admin: linear-gradient(135deg, #fa709a 0%, #fee140 100%);--gradient-exam: linear-gradient(135deg, #30cfd0 0%, #330867 100%);--gradient-background-hero: linear-gradient(135deg, #667eea 0%, #764ba2 100%);--gradient-background-page: linear-gradient(180deg, #f5f7fa 0%, #c3cfe2 100%);--gradient-background-card: linear-gradient(135deg, #ffffff 0%, #f0f4f8 100%);--color-text-primary: #1a202c;--color-text-secondary: #4a5568;--color-text-muted: #718096;--color-background: #ffffff;--color-background-alt: #f7fafc;--color-border: #e2e8f0;--glass-background: rgba(255, 255, 255, .7);--glass-border: rgba(255, 255, 255, .3);--glass-blur: blur(12px);--shadow-sm: 0 2px 4px rgba(0, 0, 0, .05);--shadow-md: 0 4px 6px rgba(0, 0, 0, .07), 0 2px 4px rgba(0, 0, 0, .05);--shadow-lg: 0 10px 15px rgba(0, 0, 0, .1), 0 4px 6px rgba(0, 0, 0, .05);--shadow-xl: 0 20px 25px rgba(0, 0, 0, .15), 0 10px 10px rgba(0, 0, 0, .04);--transition-fast: .15s ease;--transition-base: .3s ease;--transition-slow: .5s ease;--space-xs: .25rem;--space-sm: .5rem;--space-md: 1rem;--space-lg: 1.5rem;--space-xl: 2rem;--space-2xl: 3rem;--radius-sm: .25rem;--radius-md: .5rem;--radius-lg: 1rem;--radius-xl: 1.5rem;--radius-full: 9999px;--radius-button: 25px}[data-theme=dark]{--gradient-primary: linear-gradient(135deg, #2d3561 0%, #3a2459 100%);--gradient-success: linear-gradient(135deg, #064f48 0%, #1a7a3d 100%);--gradient-warning: linear-gradient(135deg, #6b2553 0%, #7a2437 100%);--gradient-info: linear-gradient(135deg, #1e4d6f 0%, #00677a 100%);--gradient-danger: linear-gradient(135deg, #7a364d 0%, #8a6520 100%);--gradient-trainer: linear-gradient(135deg, #6b2553 0%, #7a2437 100%);--gradient-coach: linear-gradient(135deg, #1e4d6f 0%, #00677a 100%);--gradient-helper: linear-gradient(135deg, #1a6b3e 0%, #1a6b6b 100%);--gradient-admin: linear-gradient(135deg, #7a364d 0%, #8a6520 100%);--gradient-exam: linear-gradient(135deg, #145e60 0%, #1a0f33 100%);--gradient-background-hero: linear-gradient(135deg, #1a202c 0%, #2d3748 100%);--gradient-background-page: linear-gradient(180deg, #0f1419 0%, #1a202c 100%);--gradient-background-card: linear-gradient(135deg, #1a202c 0%, #2d3748 100%);--color-text-primary: #f7fafc;--color-text-secondary: #e2e8f0;--color-text-muted: #a0aec0;--color-background: #1a202c;--color-background-alt: #2d3748;--color-border: #4a5568;--glass-background: rgba(26, 32, 44, .7);--glass-border: rgba(255, 255, 255, .1);--glass-blur: blur(12px);--shadow-sm: 0 2px 4px rgba(0, 0, 0, .3);--shadow-md: 0 4px 6px rgba(0, 0, 0, .4), 0 2px 4px rgba(0, 0, 0, .3);--shadow-lg: 0 10px 15px rgba(0, 0, 0, .5), 0 4px 6px rgba(0, 0, 0, .3);--shadow-xl: 0 20px 25px rgba(0, 0, 0, .6), 0 10px 10px rgba(0, 0, 0, .4)}.btn-gradient{background:var(--gradient-primary);color:#fff;border:none;padding:var(--space-sm) var(--space-lg);border-radius:var(--radius-full);font-weight:600;cursor:pointer;transition:all var(--transition-base);box-shadow:var(--shadow-md)}.btn-gradient:hover{transform:translateY(-2px);box-shadow:var(--shadow-lg);filter:brightness(1.1)}.btn-gradient:active{transform:translateY(0);box-shadow:var(--shadow-sm)}.card-glass{background:var(--glass-background);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);border:1px solid var(--glass-border);border-radius:var(--radius-lg);padding:var(--space-lg);box-shadow:var(--shadow-md);transition:all var(--transition-base)}.card-glass:hover{transform:translateY(-4px);box-shadow:var(--shadow-xl)}.gradient-background{background:var(--gradient-background-hero);background-size:200% 200%;animation:gradientShift 15s ease infinite}@keyframes gradientShift{0%{background-position:0% 50%}50%{background-position:100% 50%}to{background-position:0% 50%}}.badge-core{display:inline-flex;align-items:center;gap:var(--space-xs);padding:var(--space-xs) var(--space-sm);border-radius:var(--radius-full);font-size:.75rem;font-weight:600;text-transform:uppercase;color:#fff;box-shadow:var(--shadow-sm)}.badge-trainer{background:var(--gradient-trainer)}.badge-coach{background:var(--gradient-coach)}.badge-helper{background:var(--gradient-helper)}.badge-admin{background:var(--gradient-admin)}.badge-exam{background:var(--gradient-exam)}.gradient-text{background:var(--gradient-primary);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;font-weight:700}.input-glass{background:var(--glass-background);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);border:1px solid var(--glass-border);border-radius:var(--radius-md);padding:var(--space-sm) var(--space-md);color:var(--color-text-primary);font-size:1rem;transition:all var(--transition-base)}.input-glass:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.input-glass::placeholder{color:var(--color-text-muted)}.page-container{min-height:100vh;background:var(--gradient-background-page)}.page-content{max-width:1200px;margin:0 auto;padding:var(--space-xl)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}*:focus-visible{outline:2px solid #667eea;outline-offset:2px}@media (max-width: 768px){:root{--space-xl: 1.5rem;--space-2xl: 2rem}.page-content{padding:var(--space-md)}}.animate-fade-in{animation:fadeIn .5s ease forwards}.animate-slide-in{animation:slideIn .3s ease forwards}@font-face{font-family:Visby Round;src:url(/fonts/visby/VisbyThin.woff) format("woff");font-weight:100;font-style:normal;font-display:swap}@font-face{font-family:Visby Round;src:url(/fonts/visby/VisbyThin%20Italic.woff) format("woff");font-weight:100;font-style:italic;font-display:swap}@font-face{font-family:Visby Round;src:url(/fonts/visby/VisbyLight.woff) format("woff");font-weight:300;font-style:normal;font-display:swap}@font-face{font-family:Visby Round;src:url(/fonts/visby/VisbyLight%20Italic.woff) format("woff");font-weight:300;font-style:italic;font-display:swap}@font-face{font-family:Visby Round;src:url(/fonts/visby/VisbyRegular.woff) format("woff");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Visby Round;src:url(/fonts/visby/VisbyItalic.woff) format("woff");font-weight:400;font-style:italic;font-display:swap}@font-face{font-family:Visby Round;src:url(/fonts/visby/VisbyMedium.woff) format("woff");font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:Visby Round;src:url(/fonts/visby/VisbyMedium%20Italic.woff) format("woff");font-weight:500;font-style:italic;font-display:swap}@font-face{font-family:Visby Round;src:url(/fonts/visby/VisbySemibold.woff) format("woff");font-weight:600;font-style:normal;font-display:swap}@font-face{font-family:Visby Round;src:url(/fonts/visby/VisbySemibold%20Italic.woff) format("woff");font-weight:600;font-style:italic;font-display:swap}@font-face{font-family:Visby Round;src:url(/fonts/visby/VisbyBold.woff) format("woff");font-weight:700;font-style:normal;font-display:swap}@font-face{font-family:Visby Round;src:url(/fonts/visby/VisbyBold%20Italic.woff) format("woff");font-weight:700;font-style:italic;font-display:swap}@font-face{font-family:Visby Round;src:url(/fonts/visby/VisbyExtrabold.woff) format("woff");font-weight:800;font-style:normal;font-display:swap}@font-face{font-family:Visby Round;src:url(/fonts/visby/VisbyExtrabold%20Italic.woff) format("woff");font-weight:800;font-style:italic;font-display:swap}@font-face{font-family:Visby Round;src:url(/fonts/visby/VisbyHeavy.woff) format("woff");font-weight:900;font-style:normal;font-display:swap}@font-face{font-family:Visby Round;src:url(/fonts/visby/VisbyHeavy%20Italic.woff) format("woff");font-weight:900;font-style:italic;font-display:swap}*{margin:0;padding:0;box-sizing:border-box}:root{--font-primary: "Visby Round", "Nunito", "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif;--bg-primary: #fafbfc;--bg-secondary: #f0f4f8;--bg-tertiary: #e8edf5;--text-primary: #1a1a2e;--text-secondary: #4a5568;--text-tertiary: #718096;--border-color: #d1d9e0;--shadow-color: rgba(0, 0, 0, .08);--primary-color: #4285f4;--primary-hover: #3367d6;--secondary-color: #9c27b0;--accent-color: #00bcd4;--success-color: #4caf50;--warning-color: #ff9800;--error-color: #dc3545;--gradient-primary: linear-gradient(135deg, #4285f4 0%, #9c27b0 50%, #00bcd4 100%);--gradient-primary-simple: linear-gradient(135deg, #4285f4 0%, #9c27b0 100%);--gradient-accent: linear-gradient(135deg, #00bcd4 0%, #4285f4 100%);--gradient-glow-blue: 0 0 20px rgba(66, 133, 244, .4), 0 0 40px rgba(156, 39, 176, .3);--gradient-glow-blue-strong: 0 0 30px rgba(66, 133, 244, .6), 0 0 60px rgba(156, 39, 176, .5);--neon-blue: rgba(66, 133, 244, .6);--neon-purple: rgba(156, 39, 176, .6);--neon-cyan: rgba(0, 188, 212, .6);--neon-glow: 0 0 10px var(--neon-blue), 0 0 20px var(--neon-blue), 0 0 30px var(--neon-blue);--neon-glow-purple: 0 0 10px var(--neon-purple), 0 0 20px var(--neon-purple), 0 0 30px var(--neon-purple);--glass-bg: rgba(255, 255, 255, .1);--glass-border: 1px solid rgba(255, 255, 255, .2);--glass-blur: blur(10px);--glass-shadow: 0 8px 32px rgba(0, 0, 0, .1);--transition-base: all .3s ease;--transition-smooth: all .4s cubic-bezier(.4, 0, .2, 1)}[data-theme=dark]{--bg-primary: #1e1e2e;--bg-secondary: #252538;--bg-tertiary: #2d2d42;--text-primary: #f5f5f5;--text-secondary: #b8b8c8;--text-tertiary: #9c9caf;--border-color: #3a3a4d;--shadow-color: rgba(0, 0, 0, .5);--primary-color: #5a9af5;--primary-hover: #4285f4;--shadow-color: rgba(0, 0, 0, .7)}body{font-family:var(--font-primary);font-weight:400;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:var(--bg-primary);color:var(--text-primary);transition:background-color .3s ease,color .3s ease}*{scrollbar-width:none;-ms-overflow-style:none}*::-webkit-scrollbar{display:none}h1{font-weight:800;font-size:2.25rem;line-height:1.2}h2{font-weight:700;font-size:1.875rem;line-height:1.25}h3{font-weight:600;font-size:1.5rem;line-height:1.3}h4{font-weight:600;font-size:1.25rem;line-height:1.35}h5{font-weight:500;font-size:1.125rem;line-height:1.4}h6{font-weight:500;font-size:1rem;line-height:1.45}p{font-weight:400;line-height:1.6}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}#root{width:100%;min-height:100vh}.app{min-height:100vh;display:flex;flex-direction:column;background-color:var(--bg-primary);padding-top:60px;padding-bottom:100px}.app>*:not(.app-footer):not(.main-navbar){flex:1}.container{max-width:1200px;margin:0 auto;padding:0 1rem;color:var(--text-primary)}.btn{padding:.875rem 1.75rem;border-radius:24px;text-decoration:none;font-weight:700;font-family:Visby Round,sans-serif;transition:all .3s cubic-bezier(.4,0,.2,1);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;border:none;font-size:1rem;position:relative;overflow:hidden;box-shadow:0 4px 12px #00000026}.btn:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);transition:left .6s ease}.btn:hover:not(:disabled):before{left:100%}.btn-primary{background:var(--gradient-primary-simple);color:#fff;box-shadow:var(--gradient-glow-blue);animation:buttonNeonGlow 3s ease-in-out infinite}.btn-primary:hover:not(:disabled){transform:translateY(-3px) scale(1.05);box-shadow:var(--gradient-glow-blue-strong);filter:brightness(1.1)}@keyframes buttonNeonGlow{0%,to{box-shadow:0 4px 20px #4285f466,0 0 30px #9c27b04d}50%{box-shadow:0 4px 25px #4285f499,0 0 40px #9c27b080}}.btn-secondary{background:linear-gradient(135deg,#9c27b0,#4285f4);color:#fff;box-shadow:0 4px 16px #9c27b059}.btn-secondary:hover:not(:disabled){transform:translateY(-3px);box-shadow:0 8px 24px #9c27b080;filter:brightness(1.1)}.btn-soft{background:var(--bg-secondary);color:var(--text-primary);border:2px solid var(--border-color);box-shadow:0 2px 8px #00000014}.btn-soft:hover:not(:disabled){background:var(--bg-tertiary);border-color:var(--primary-color);transform:translateY(-2px);box-shadow:0 6px 16px #0000001f}.btn-ghost{background:transparent;color:var(--text-primary);border:2px solid transparent;box-shadow:none}.btn-ghost:hover:not(:disabled){background:var(--bg-secondary);border-color:var(--border-color);box-shadow:0 2px 8px #00000014}.btn:active:not(:disabled){transform:translateY(-1px) scale(.98);box-shadow:0 2px 8px #4285f44d}.btn:disabled{opacity:.5;cursor:not-allowed;transform:none;filter:none}.card{background:linear-gradient(135deg,#4285f40d,#9c27b00d,#00bcd40d);border-radius:24px;padding:2rem;box-shadow:0 8px 32px #00000014,0 0 20px #4285f41a;margin-bottom:2rem;border:2px solid transparent;background-image:linear-gradient(var(--bg-primary),var(--bg-primary)) padding-box,linear-gradient(135deg,#4285f433,#9c27b033) border-box;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transition:var(--transition-smooth);position:relative;overflow:hidden}.card:before{content:"";position:absolute;top:-50%;left:-50%;width:200%;height:200%;background:radial-gradient(circle,rgba(66,133,244,.1) 0%,transparent 70%);opacity:0;transition:opacity .4s ease}.card:hover:before{opacity:1}.card:hover{transform:translateY(-4px) scale(1.01);box-shadow:0 12px 40px #4285f44d,0 0 40px #9c27b033,inset 0 0 30px #4285f41a;background-image:linear-gradient(var(--bg-primary),var(--bg-primary)) padding-box,linear-gradient(135deg,#4285f466,#9c27b066) border-box}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes slideIn{0%{transform:translate(-100%)}to{transform:translate(0)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.fade-in{animation:fadeIn .5s ease-out}.slide-in{animation:slideIn .3s ease-out}.pulse{animation:pulse 2s infinite}@media (max-width: 768px){.container{padding:0 .5rem}.btn{padding:.5rem 1rem;font-size:.9rem}.card{padding:1rem}}.welcome-page{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000d9;display:flex;align-items:center;justify-content:center;z-index:10000;padding:20px;animation:fadeIn .3s ease-in}.welcome-container{background:linear-gradient(135deg,#1a1a2e,#16213e);border-radius:24px;max-width:900px;width:100%;max-height:90vh;overflow-y:auto;box-shadow:0 25px 50px -12px #00000080;border:1px solid rgba(255,255,255,.1);animation:slideUp .4s ease-out;display:flex;flex-direction:column}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.welcome-header{padding:40px 40px 20px;border-bottom:1px solid rgba(255,255,255,.1);text-align:center}.popup-header h1{color:#fff;font-size:2rem;margin-bottom:10px;font-weight:700}.step-indicator{display:inline-block;padding:6px 16px;background:#6366f133;color:#818cf8;border-radius:20px;font-size:.875rem;font-weight:600}.guide-header p{color:#ffffffb3;font-size:1rem;margin-top:10px}.welcome-content{padding:40px;flex:1;overflow-y:auto}.welcome-intro h2{color:#fff;font-size:1.75rem;margin-bottom:16px;text-align:center}.intro-text{color:#fffc;font-size:1.125rem;text-align:center;margin-bottom:40px;line-height:1.6}.platform-highlights{display:grid;grid-template-columns:repeat(2,1fr);gap:24px}.highlight-item{background:#ffffff0d;padding:24px;border-radius:16px;border:1px solid rgba(255,255,255,.1);transition:all .3s ease}.highlight-item:hover{background:#ffffff14;transform:translateY(-4px);box-shadow:0 12px 24px -8px #6366f14d}.highlight-item .icon{font-size:2.5rem;display:block;margin-bottom:12px}.highlight-item h3{color:#fff;font-size:1.125rem;margin-bottom:8px;font-weight:600}.highlight-item p{color:#ffffffb3;font-size:.875rem;line-height:1.5;margin:0}.exam-explanation h2{color:#fff;font-size:1.5rem;margin-bottom:12px;text-align:center}.explanation-text{color:#fffc;font-size:1rem;text-align:center;margin-bottom:32px;line-height:1.6}.exam-details{display:grid;grid-template-columns:repeat(2,1fr);gap:20px;margin-bottom:32px}.detail-card{background:#6366f11a;padding:20px;border-radius:12px;border:1px solid rgba(99,102,241,.3);display:flex;align-items:flex-start;gap:16px}.detail-icon{font-size:2rem;line-height:1;flex-shrink:0}.detail-content h3{color:#fff;font-size:1rem;margin-bottom:4px;font-weight:600}.detail-content p{color:#ffffffb3;font-size:.875rem;margin:0}.exam-tips{background:#22c55e1a;padding:24px;border-radius:12px;border:1px solid rgba(34,197,94,.3)}.exam-tips h3{color:#4ade80;font-size:1.125rem;margin-bottom:16px;font-weight:600}.exam-tips ul{list-style:none;padding:0;margin:0}.exam-tips li{color:#ffffffe6;font-size:.9375rem;padding:8px 0;line-height:1.5}.guide-content{padding:32px 40px}.guide-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}.guide-card{background:#ffffff0d;padding:20px;border-radius:12px;border:1px solid rgba(255,255,255,.1);transition:all .2s ease}.guide-card:hover{background:#ffffff14;border-color:#6366f180}.guide-icon{font-size:2rem;display:block;margin-bottom:12px}.guide-card h3{color:#fff;font-size:1rem;margin-bottom:8px;font-weight:600}.guide-card p{color:#ffffffb3;font-size:.875rem;line-height:1.5;margin:0}.welcome-footer{padding:24px 40px;border-top:1px solid rgba(255,255,255,.1);display:flex;justify-content:space-between;align-items:center;gap:16px}.footer-left,.footer-right{display:flex;gap:12px;align-items:center}.btn-primary,.btn-secondary,.btn-text{padding:12px 24px;border-radius:8px;font-size:.9375rem;font-weight:600;cursor:pointer;transition:all .2s ease;border:none;outline:none}.btn-primary{background:linear-gradient(135deg,#6366f1,#8b5cf6);color:#fff;box-shadow:0 4px 12px #6366f166}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 6px 16px #6366f180}.btn-primary.btn-large{padding:16px 32px;font-size:1.0625rem}.btn-secondary{background:#ffffff1a;color:#fff;border:1px solid rgba(255,255,255,.2)}.btn-secondary:hover{background:#ffffff26;border-color:#ffffff4d}.btn-text{background:transparent;color:#fff9;padding:12px 16px}.btn-text:hover{color:#ffffffe6;background:#ffffff0d}@media (max-width: 768px){.welcome-container{max-width:100%;max-height:100vh;border-radius:0;margin:0}.welcome-header{padding:24px 20px 16px}.popup-header h1{font-size:1.5rem}.welcome-content{padding:24px 20px}.platform-highlights,.exam-details,.guide-grid{grid-template-columns:1fr;gap:16px}.welcome-footer{padding:16px 20px;flex-direction:column;gap:12px}.footer-left,.footer-right{width:100%;justify-content:stretch}.btn-primary,.btn-secondary{flex:1}}.welcome-popup::-webkit-scrollbar{width:8px}.welcome-popup::-webkit-scrollbar-track{background:#ffffff0d;border-radius:4px}.welcome-popup::-webkit-scrollbar-thumb{background:#6366f180;border-radius:4px}.welcome-popup::-webkit-scrollbar-thumb:hover{background:#6366f1b3}.exam-results-container{max-width:900px;margin:2rem auto;padding:1rem}.exam-results-header{text-align:center;margin-bottom:2rem;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.exam-results-header h1{margin:0 0 1.5rem;font-size:2rem}.score-summary{display:flex;justify-content:center;align-items:center;gap:3rem;flex-wrap:wrap}.score-circle{width:150px;height:150px;border-radius:50%;background:#fff3;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);display:flex;flex-direction:column;align-items:center;justify-content:center;border:4px solid rgba(255,255,255,.3)}.score-number{font-size:3rem;font-weight:700;line-height:1}.score-label{font-size:.9rem;opacity:.9;margin-top:.5rem}.score-details{display:flex;flex-direction:column;gap:1rem}.score-stat{display:flex;align-items:center;gap:.5rem;font-size:1.1rem}.score-stat.correct .stat-icon{color:#4ade80;font-size:1.5rem}.score-stat.incorrect .stat-icon{color:#f87171;font-size:1.5rem}.stat-value{font-weight:700;font-size:1.3rem}.results-questions-list{display:flex;flex-direction:column;gap:1.5rem;margin-bottom:2rem}.result-question{border-left:4px solid transparent;transition:all .3s ease}.result-question.correct{border-left-color:#4ade80;background:linear-gradient(to right,rgba(74,222,128,.05),transparent)}.result-question.incorrect{border-left-color:#f87171;background:linear-gradient(to right,rgba(248,113,113,.05),transparent)}.question-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem;padding-bottom:.75rem;border-bottom:1px solid rgba(0,0,0,.1)}.question-number{font-weight:600;color:#666}.result-badge{padding:.25rem .75rem;border-radius:20px;font-size:.85rem;font-weight:600}.result-badge.correct{background:#4ade80;color:#fff}.result-badge.incorrect{background:#f87171;color:#fff}.question-text{font-size:1.1rem;margin-bottom:1rem;line-height:1.6}.question-metadata{display:flex;gap:.5rem;margin-bottom:1rem;flex-wrap:wrap}.badge{padding:.25rem .5rem;border-radius:4px;font-size:.75rem;font-weight:500}.badge-methodology{background:#e0e7ff;color:#4338ca}.badge-difficulty{background:#fef3c7;color:#92400e}.badge-type{background:#dbeafe;color:#1e40af}.answers-review{display:flex;flex-direction:column;gap:.75rem;margin-top:1rem}.answer-option{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;border-radius:8px;border:2px solid #e5e7eb;background:#fff;transition:all .2s ease}.answer-option.correct-answer{background:#f0fdf4;border-color:#4ade80}.answer-option.wrong-answer{background:#fef2f2;border-color:#f87171}.option-letter{font-weight:700;font-size:1rem;min-width:24px;color:#6b7280}.answer-option.correct-answer .option-letter{color:#22c55e}.answer-option.wrong-answer .option-letter{color:#ef4444}.option-icon{font-size:1.2rem;font-weight:700;min-width:24px}.answer-option.correct-answer .option-icon{color:#22c55e}.answer-option.wrong-answer .option-icon{color:#ef4444}.option-text{flex:1}.your-choice{font-size:.75rem;color:#ef4444;font-style:italic}.should-be{font-size:.75rem;color:#22c55e;font-style:italic;font-weight:500}.question-explanation{margin-top:1rem;padding:1rem;background:#f9fafb;border-left:3px solid #3b82f6;border-radius:4px}.question-explanation strong{color:#3b82f6;display:block;margin-bottom:.5rem}.question-explanation p{margin:0;color:#4b5563;line-height:1.6}.results-footer{text-align:center;padding:2rem 0}.results-footer button{min-width:250px}@media (max-width: 768px){.exam-results-container{padding:.5rem}.score-summary{gap:1.5rem}.score-circle{width:120px;height:120px}.score-number{font-size:2.5rem}.question-header{flex-direction:column;align-items:flex-start;gap:.5rem}.answer-option{padding:.6rem .8rem}}.initial-exam-container{max-width:1080px;margin:2.5rem auto 4rem;padding:0 1.25rem 4rem}.initial-exam-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100vh;gap:1rem}.exam-header{margin-bottom:2.5rem}.exam-title{text-align:center;margin-bottom:1rem}.exam-title h1{margin:0 0 .5rem;font-size:clamp(1.8rem,3vw,2.4rem);color:var(--text-strong)}.exam-title p{margin:0;color:var(--text-muted);font-size:1rem}.exam-progress{max-width:660px;margin:0 auto}.progress-bar{height:8px;background:#0f172a14;border-radius:10px;overflow:hidden;margin-bottom:.5rem}.progress-fill{height:100%;background:linear-gradient(90deg,#3b82f6,#8b5cf6);transition:width .3s ease;border-radius:10px;box-shadow:0 0 10px #3b82f659}.progress-text{text-align:center;font-size:.9rem;color:var(--text-muted);font-weight:500}.progress-warning{margin-top:.6rem;text-align:center;font-size:.85rem;color:#b45309;background:#fbbf242e;border:1px solid rgba(251,191,36,.35);padding:.6rem .9rem;border-radius:12px}.question-overview{margin-top:1.6rem;background:#fffffff0;border-radius:16px;box-shadow:0 12px 32px #0f172a14;padding:1.2rem 1.4rem}.question-overview h3{margin:0 0 1rem;font-size:1.05rem;color:var(--text-strong)}.question-overview__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(42px,1fr));gap:.65rem}.question-overview__item{height:44px;border-radius:10px;border:1px solid rgba(59,130,246,.35);background:#3b82f614;color:var(--text-strong);font-weight:600;font-size:.95rem;display:flex;align-items:center;justify-content:center;transition:all .2s ease;cursor:pointer}.question-overview__item.pending{border-color:#facc1573;background:#facc152e}.question-overview__item.answered{border-color:#22c55e8c;background:#22c55e29}.question-overview__item:hover{transform:translateY(-2px);box-shadow:0 8px 20px #0f172a1f}.questions-wrapper{display:grid;gap:1.75rem;margin-top:1.75rem}.question-card{border-radius:20px;padding:clamp(1.2rem,1.6vw,1.8rem);background:#ffffffeb;box-shadow:0 16px 40px #0f172a14;border:1px solid rgba(15,23,42,.03);scroll-margin-top:96px;animation:fadeIn .3s ease-in}.question-metadata{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center;margin-bottom:1.25rem}.badge{padding:.3rem .85rem;border-radius:999px;font-size:.72rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase}.badge-number{background:#3b82f62e;color:var(--text-strong)}.badge-methodology{background:#5e3aff24;color:var(--text-strong)}.badge-difficulty{background:#22c55e29;color:var(--text-strong)}.badge-type{background:#3b82f61f;color:var(--text-strong)}.question-text h2{font-size:1.2rem;margin:0 0 .35rem;color:var(--text-muted);font-weight:600}.question-text p{font-size:clamp(1.05rem,1.6vw,1.18rem);line-height:1.7;color:var(--text);margin:0;white-space:pre-line}.answers-options{margin-top:1.6rem;display:flex;flex-direction:column;gap:.8rem}.answer-option{display:flex;align-items:center;gap:.9rem;padding:.95rem 1.2rem;border:2px solid rgba(15,23,42,.08);border-radius:14px;background:#fffffff2;cursor:pointer;transition:all .2s ease;color:var(--text);position:relative}.answer-option:hover{border-color:#3b82f6;background:#3b82f61f;transform:translate(4px)}.answer-option.selected{border-color:#3b82f6;background:linear-gradient(135deg,#3b82f629,#3b82f638);box-shadow:0 8px 24px #3b82f629}.answer-option input{position:absolute;opacity:0;pointer-events:none}.option-letter{width:32px;height:32px;border-radius:50%;background:#3b82f62e;color:#1d4ed8;font-weight:700;display:flex;align-items:center;justify-content:center}.answer-option.selected .option-letter{background:#3b82f6;color:#fff}.option-text{flex:1;font-size:1rem;line-height:1.5}.selected-icon{color:#3b82f6;font-size:1.4rem;font-weight:700}.answer-freeform{display:flex;flex-direction:column;gap:.75rem}.answer-freeform textarea{min-height:160px;resize:vertical;pointer-events:auto;cursor:text;line-height:1.55;background:#fffffffa;color:var(--text);border:1px solid rgba(15,23,42,.08);border-radius:12px;padding:1rem 1.1rem;font-family:inherit;font-size:1rem;transition:border-color .2s ease,box-shadow .2s ease;position:relative;z-index:2}.answer-freeform textarea:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f62e}.answer-freeform__helper{display:flex;justify-content:space-between;align-items:center;font-size:.85rem;color:var(--text-muted)}.answer-missing{padding:1rem;border-radius:12px;background:#ffc00029;border:1px solid rgba(255,192,0,.35);color:var(--text-strong);font-size:.95rem}.exam-actions{margin-top:3rem;display:flex;justify-content:space-between;gap:.9rem}.exam-actions .btn{min-width:220px}.exam-error-banner{margin:1.5rem 0 0;padding:1rem 1.25rem;border-radius:14px;border:1px solid rgba(239,68,68,.35);background:#ef44441f;display:flex;flex-direction:column;gap:.35rem;color:var(--text-strong);font-size:.95rem}html[data-theme=dark] .exam-error-banner{border-color:#f8717180;background:#f8717142;color:var(--text-inv)}.initial-exam-error{max-width:520px;margin:3rem auto}.initial-exam-error h2{margin-bottom:.75rem}@keyframes fadeIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@keyframes scaleIn{0%{transform:scale(.8);opacity:0}to{transform:scale(1);opacity:1}}html[data-theme=dark] .progress-bar{background:#ffffff1f}html[data-theme=dark] .progress-fill{box-shadow:0 0 12px #3b82f66b}html[data-theme=dark] .progress-warning{color:#fde68a;background:#facc151f;border-color:#facc1561}html[data-theme=dark] .question-overview,html[data-theme=dark] .question-card{background:#141620c7;box-shadow:0 16px 40px #00000059}html[data-theme=dark] .question-overview__item.pending{border-color:#facc1566;background:#facc152e;color:var(--text-inv)}html[data-theme=dark] .question-overview__item.answered{border-color:#22c55e8c;background:#22c55e38;color:var(--text-inv)}html[data-theme=dark] .answer-option{border-color:#ffffff1f;background:#181c24bf;color:var(--text)}html[data-theme=dark] .answer-option:hover{background:#5e3aff2e}html[data-theme=dark] .answer-option.selected{background:linear-gradient(135deg,#5e3aff52,#5e3aff66);border-color:#5e3affbf}html[data-theme=dark] .option-letter{background:#5e3aff38;color:var(--text-inv)}html[data-theme=dark] .answer-freeform__helper{color:var(--text-inv-muted)}html[data-theme=dark] .answer-freeform textarea{background:#181c24d9;border-color:#ffffff29;color:var(--text-inv)}html[data-theme=dark] .answer-missing{background:#ffc10738;border-color:#ffc10773;color:var(--text-inv)}html[data-theme=dark] .exam-actions .btn{box-shadow:0 6px 20px #00000059}@media (max-width: 1024px){.initial-exam-container{padding:0 1rem 3rem}.exam-actions{flex-direction:column}.exam-actions .btn{width:100%}}@media (max-width: 768px){.initial-exam-container{padding:0 .75rem 3rem}.question-overview__grid{grid-template-columns:repeat(auto-fit,minmax(36px,1fr))}.question-card{padding:1.05rem}.answers-options{gap:.65rem}.answer-option{padding:.75rem 1rem}.exam-actions{margin-top:2rem}}.score-final-container{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:2rem;background:linear-gradient(135deg,#667eea,#764ba2)}.score-final-card{max-width:700px;width:100%;text-align:center;background:#fff;padding:3rem}.score-final-header h1{margin:0 0 .5rem;font-size:2.5rem;color:#1f2937}.score-final-header p{margin:0 0 2rem;color:#6b7280;font-size:1.1rem}.score-circle-large{width:200px;height:200px;margin:0 auto 3rem;border-radius:50%;background:linear-gradient(135deg,#667eea,#764ba2);display:flex;flex-direction:column;align-items:center;justify-content:center;box-shadow:0 20px 40px #667eea4d;animation:scaleIn .5s ease-out}.score-circle-large .score-number{font-size:4rem;font-weight:700;color:#fff;line-height:1}.score-circle-large .score-label{font-size:1rem;color:#ffffffe6;margin-top:.5rem}.configuration-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1.5rem;margin-bottom:2rem}.config-item{display:flex;align-items:center;gap:1rem;padding:1.5rem;background:linear-gradient(135deg,#f3f4f6,#e5e7eb);border-radius:12px;transition:transform .2s ease}.config-item:hover{transform:translateY(-4px)}.config-icon{font-size:3rem;line-height:1}.config-info{flex:1;text-align:left}.config-label{font-size:.85rem;color:#6b7280;margin-bottom:.25rem}.config-value{font-size:1.5rem;font-weight:700;color:#1f2937}.next-steps-box{background:#f0f9ff;border:2px solid #3b82f6;border-radius:12px;padding:1.5rem;margin-bottom:2rem;text-align:left}.next-steps-box h3{margin:0 0 1rem;color:#1e40af}.next-steps-box ul{margin:0;padding-left:1.5rem}.next-steps-box li{margin-bottom:.75rem;color:#1f2937;line-height:1.6}.score-final-actions{margin-top:2rem}.score-final-actions button{min-width:300px;font-size:1.2rem;padding:1rem 2rem}@media (max-width: 768px){.score-final-card{padding:2rem 1.5rem}.score-circle-large{width:160px;height:160px}.score-circle-large .score-number{font-size:3rem}.configuration-grid{grid-template-columns:1fr}.score-final-actions button{min-width:100%}}:root{--breakpoint-xs: 375px;--breakpoint-sm: 640px;--breakpoint-md: 768px;--breakpoint-lg: 1024px;--breakpoint-xl: 1280px;--breakpoint-2xl: 1536px}*{-webkit-tap-highlight-color:rgba(94,58,255,.3);-webkit-touch-callout:none}html{-webkit-text-size-adjust:100%}body{overflow-x:hidden;scroll-behavior:smooth}.btn,.btn-circle,.input,button,a,select{min-height:44px;min-width:44px;touch-action:manipulation;-webkit-user-select:none;user-select:none}textarea{min-height:44px;min-width:44px;touch-action:manipulation;user-select:text;-webkit-user-select:text}.input,input,textarea{user-select:text;-webkit-user-select:text}@media (max-width: 768px){h1{font-size:28px!important}h2{font-size:22px!important}h3{font-size:18px!important}p,div{font-size:14px}.card{padding:16px!important;border-radius:12px!important}.btn{padding:14px 20px!important;font-size:15px!important;min-height:48px!important}.btn-circle{width:48px!important;height:48px!important;min-width:48px!important;min-height:48px!important}.input,input,textarea,select{padding:14px 16px!important;font-size:16px!important;min-height:48px!important}.grid-responsive{grid-template-columns:1fr!important}.gap-responsive{gap:12px!important}.sidebar-left,.sidebar-right{width:100vw!important;max-width:100vw!important}header{padding:12px 16px!important}main>div{padding:16px!important}.modal,.panel{width:100vw!important;height:100vh!important;max-width:100vw!important;border-radius:0!important}.text-sm-mobile{font-size:14px!important}.hide-mobile{display:none!important}.show-mobile{display:block!important}}@media (min-width: 768px) and (max-width: 1024px){.grid-responsive{grid-template-columns:repeat(2,1fr)!important}.sidebar-left.open{width:300px!important}.sidebar-right.open{width:340px!important}.card{padding:20px!important}}@media (min-width: 1024px){.hide-desktop{display:none!important}.show-desktop{display:block!important}}@media (max-width: 768px) and (orientation: landscape){.vh-100{height:auto!important;min-height:100vh!important}header{padding:8px 12px!important}.logo-responsive{width:200px!important;height:200px!important}}@supports (padding: env(safe-area-inset-top)){body{padding-top:env(safe-area-inset-top);padding-bottom:env(safe-area-inset-bottom);padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right)}.sidebar-left,.sidebar-right{padding-top:max(env(safe-area-inset-top),16px)}}@media (hover: none) and (pointer: coarse){.btn,.btn-circle,a{min-width:48px;min-height:48px}.hover-lift:hover{transform:none!important}.btn:active{transform:scale(.95)!important;transition:transform .05s!important}}@media (prefers-contrast: high){.btn{border:2px solid currentColor}.card{border:1px solid rgba(255,255,255,.3)}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}@media print{.sidebar-left,.sidebar-right,header,.btn,.float,.notification-panel{display:none!important}.card{break-inside:avoid;page-break-inside:avoid}body{background:#fff!important;color:#000!important}}.flex-wrap-mobile{flex-wrap:nowrap}@media (max-width: 768px){.flex-wrap-mobile{flex-wrap:wrap}}.stack-mobile{display:flex}@media (max-width: 768px){.stack-mobile{flex-direction:column}}.full-width-mobile{width:auto}@media (max-width: 768px){.full-width-mobile{width:100%}}@keyframes ripple{0%{transform:scale(0);opacity:.6}to{transform:scale(2);opacity:0}}.ripple-effect{position:relative;overflow:hidden}.magnetic-hover{transition:transform .2s cubic-bezier(.4,0,.2,1);will-change:transform}.tilt-card{transform-style:preserve-3d;transition:transform .3s cubic-bezier(.4,0,.2,1)}.tilt-card:hover{transform:perspective(1000px) rotateX(2deg) rotateY(2deg) translateZ(10px)}@keyframes glow-pulse{0%,to{box-shadow:0 0 20px #5e3aff66}50%{box-shadow:0 0 40px #5e3affcc}}.glow-primary{animation:glow-pulse 2s ease-in-out infinite}.glow-on-hover:hover{box-shadow:0 0 30px currentColor;transition:box-shadow .3s ease}.parallax-slow{transform:translateY(calc(var(--scroll-y, 0) * -.1px));transition:transform .1s ease-out}.parallax-medium{transform:translateY(calc(var(--scroll-y, 0) * -.2px));transition:transform .1s ease-out}.parallax-fast{transform:translateY(calc(var(--scroll-y, 0) * -.3px));transition:transform .1s ease-out}.reveal-on-scroll{opacity:0;transform:translateY(30px);transition:opacity .6s ease,transform .6s ease}.reveal-on-scroll.revealed{opacity:1;transform:translateY(0)}.stagger-container>*{animation:fade-in-up .5s ease backwards}.stagger-container>*:nth-child(1){animation-delay:.05s}.stagger-container>*:nth-child(2){animation-delay:.1s}.stagger-container>*:nth-child(3){animation-delay:.15s}.stagger-container>*:nth-child(4){animation-delay:.2s}.stagger-container>*:nth-child(5){animation-delay:.25s}.stagger-container>*:nth-child(6){animation-delay:.3s}.stagger-container>*:nth-child(7){animation-delay:.35s}.stagger-container>*:nth-child(8){animation-delay:.4s}@keyframes badge-pop{0%{transform:scale(0) rotate(0);opacity:0}50%{transform:scale(1.2) rotate(180deg)}to{transform:scale(1) rotate(360deg);opacity:1}}.badge-unlock{animation:badge-pop .6s cubic-bezier(.68,-.55,.265,1.55)}@keyframes progress-indeterminate{0%{transform:translate(-100%)}to{transform:translate(400%)}}.progress-indeterminate:before{content:"";position:absolute;top:0;left:0;width:25%;height:100%;background:var(--gradient-primary);animation:progress-indeterminate 1.5s cubic-bezier(.4,0,.6,1) infinite}.flip-card{perspective:1000px}.flip-card-inner{position:relative;width:100%;height:100%;transition:transform .6s;transform-style:preserve-3d}.flip-card.flipped .flip-card-inner{transform:rotateY(180deg)}.flip-card-front,.flip-card-back{position:absolute;width:100%;height:100%;backface-visibility:hidden}.flip-card-back{transform:rotateY(180deg)}@keyframes number-roll{0%{transform:translateY(-100%);opacity:0}to{transform:translateY(0);opacity:1}}.number-counter{animation:number-roll .6s cubic-bezier(.68,-.55,.265,1.55)}.scroll-snap-container{scroll-snap-type:y mandatory;scroll-behavior:smooth;overflow-y:scroll}.scroll-snap-item{scroll-snap-align:start;scroll-snap-stop:always}.glass{background:#ffffff0d;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.1)}html[data-theme=light] .glass{background:#ffffffb3;border:1px solid rgba(0,0,0,.1)}@keyframes typing{0%{width:0}to{width:100%}}@keyframes blink-caret{0%,to{border-color:transparent}50%{border-color:currentColor}}.typewriter{overflow:hidden;border-right:2px solid currentColor;white-space:nowrap;animation:typing 3s steps(40) 1s 1 normal both,blink-caret .75s step-end infinite}@keyframes skeleton-pulse{0%,to{opacity:1}50%{opacity:.5}}.skeleton-pulse{animation:skeleton-pulse 2s cubic-bezier(.4,0,.6,1) infinite}.input:focus,.btn:focus-visible{outline:none;box-shadow:0 0 0 3px #5e3aff4d}@keyframes checkmark-draw{0%{stroke-dashoffset:50}to{stroke-dashoffset:0}}.checkmark-animation{stroke-dasharray:50;animation:checkmark-draw .6s ease-in-out forwards}
