:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light dark;color:#ffffffde;background-color:#242424;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{font-weight:500;color:#646cff;text-decoration:inherit}a:hover{color:#535bf2}body{margin:0;display:flex;place-items:center;min-width:320px;min-height:100vh}h1{font-size:3.2em;line-height:1.1}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#1a1a1a;cursor:pointer;transition:border-color .25s}button:hover{border-color:#646cff}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}@media (prefers-color-scheme: light){:root{color:#213547;background-color:#fff}a:hover{color:#747bff}button{background-color:#f9f9f9}}html{scroll-behavior:smooth}*{animation-duration:.3s!important;animation-timing-function:ease-out!important}#root{max-width:1280px;margin:0 auto;padding:2rem;text-align:center}.logo{height:6em;padding:1.5em;will-change:filter;transition:filter .3s}.logo:hover{filter:drop-shadow(0 0 2em #646cffaa)}.logo.react:hover{filter:drop-shadow(0 0 2em #61dafbaa)}@keyframes logo-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media (prefers-reduced-motion: no-preference){a:nth-of-type(2) .logo{animation:logo-spin infinite 20s linear}}.card{padding:2em}.read-the-docs{color:#888}:root{--primary-color: #14b8a6;--secondary-color: #0d9488;--background-color: #f0fdfa;--text-color: #0f172a;--card-bg: #ffffff;--accent-color: #a855f7}body{background-color:var(--background-color);color:var(--text-color);font-family:Inter,system-ui,-apple-system,sans-serif;margin:0;padding:0;min-height:100vh;display:flex;flex-direction:column}.home-container{flex:1;max-width:1400px;margin:0 auto;padding:2rem;padding-top:80px;padding-bottom:80px}.home-content{padding:2rem 1rem;text-align:center;animation:fadeIn 1s ease-out}@keyframes fadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.home-title{font-size:3rem;font-weight:700;color:var(--text-color);margin-bottom:1.5rem;line-height:1.2;animation:slideIn .8s ease-out;transition:opacity .3s ease,transform .3s ease}@keyframes slideIn{0%{transform:translate(-50px);opacity:0}to{transform:translate(0);opacity:1}}.home-description{font-size:1.25rem;color:#64748b;max-width:800px;margin:0 auto 3rem;line-height:1.6;animation:fadeInUp 1s ease-out .3s both;transition:opacity .3s ease,transform .3s ease}@keyframes fadeInUp{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}.home-title.hidden,.home-description.hidden{opacity:0;transform:translateY(-20px);pointer-events:none}.features-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2rem;margin-top:4rem}.feature-card{background:var(--card-bg);padding:2.5rem;border-radius:12px;box-shadow:0 4px 6px -1px #0000001a;transition:all .3s ease;border:1px solid #e2e8f0}.feature-card:hover{transform:translateY(-5px);box-shadow:0 10px 15px -3px #0000001a}.feature-icon{font-size:2.5rem;color:var(--primary-color);margin-bottom:1.5rem}.feature-title{font-size:1.5rem;font-weight:600;color:var(--text-color);margin-bottom:1rem}.feature-description{color:#64748b;line-height:1.6;font-size:1rem}.chapter-container{max-width:1000px;margin:2rem auto;padding:2rem;background:var(--card-bg);border-radius:12px;box-shadow:0 4px 6px -1px #0000001a;border:1px solid #e2e8f0;animation:scaleIn .5s ease-out}@keyframes scaleIn{0%{transform:scale(.95);opacity:0}to{transform:scale(1);opacity:1}}.chapter-title{font-size:2.5rem;font-weight:700;color:var(--text-color);margin-bottom:2rem;text-align:center;animation:fadeIn .6s ease-out}.chapter-content{line-height:1.8;color:var(--text-color);font-size:1.1rem;margin-top:2rem;animation:fadeInUp .8s ease-out}.upload-section{margin:2rem auto;max-width:600px;text-align:center;padding:2rem;background:var(--card-bg);border-radius:12px;animation:slideInUp .6s ease-out}@keyframes slideInUp{0%{transform:translateY(30px);opacity:0}to{transform:translateY(0);opacity:1}}.file-input{margin:1.5rem 0;padding:.8rem;border:2px solid #e2e8f0;border-radius:8px;width:100%;max-width:400px;font-size:1rem;transition:all .3s ease}.file-input:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 3px #2563eb1a}.upload-button{background-color:var(--primary-color);color:#fff;padding:1rem 2.5rem;border:none;border-radius:8px;cursor:pointer;font-size:1rem;font-weight:500;transition:all .3s ease;margin-top:1rem;position:relative;overflow:hidden}.upload-button:after{content:"";position:absolute;top:50%;left:50%;width:300%;height:300%;background:radial-gradient(circle,rgba(255,255,255,.3) 10%,transparent 10.01%);transform:translate(-50%,-50%) scale(0);transition:transform .5s ease}.upload-button:hover{background-color:var(--secondary-color);transform:translateY(-2px);box-shadow:0 5px 15px #0000001a}.upload-button:active:after{transform:translate(-50%,-50%) scale(1);opacity:0;transition:transform 0s,opacity .5s}.upload-button:disabled{background-color:#cbd5e1;cursor:not-allowed;transform:none;box-shadow:none}.loading-text{color:var(--primary-color);font-size:1.2rem;text-align:center;margin:2rem 0;display:flex;align-items:center;justify-content:center;gap:.5rem;animation:pulse 1.5s infinite}@keyframes pulse{0%{opacity:1}50%{opacity:.5}to{opacity:1}}.loading-text:after{content:"";width:1rem;height:1rem;border:2px solid var(--primary-color);border-top-color:transparent;border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.question-button{background-color:var(--accent-color);color:#fff;padding:1rem 2rem;border:none;border-radius:8px;cursor:pointer;font-size:1rem;font-weight:500;margin-top:2rem;transition:all .3s ease}.question-button:hover{background-color:#9333ea;transform:translateY(-2px)}.question-button:disabled{background-color:#cbd5e1;cursor:not-allowed;transform:none}.questions-section{margin-top:2rem;padding:2rem;background-color:var(--card-bg);border-radius:12px;box-shadow:0 4px 6px -1px #0000001a}.questions-title{font-size:1.5rem;font-weight:600;color:var(--text-color);margin-bottom:1.5rem}.questions-content{white-space:pre-wrap;word-wrap:break-word;color:var(--text-color);line-height:1.6;font-size:1rem}.toggle-summary-button{background-color:var(--primary-color);color:#fff;padding:.8rem 1.5rem;border:none;border-radius:6px;cursor:pointer;font-size:.9rem;font-weight:500;margin-top:1.5rem;transition:all .3s ease}.toggle-summary-button:hover{background-color:var(--secondary-color);transform:translateY(-2px)}.prompt-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background-color:#00000080;display:flex;justify-content:center;align-items:center;z-index:1000}.prompt-modal{background-color:var(--card-bg);padding:2rem;border-radius:12px;box-shadow:0 4px 6px -1px #0000001a;max-width:400px;width:90%;text-align:center}.prompt-modal h3{margin-bottom:1.5rem;color:var(--text-color)}.prompt-buttons{display:flex;gap:1rem;justify-content:center}.prompt-button{padding:.8rem 1.5rem;border:none;border-radius:8px;cursor:pointer;font-size:.9rem;font-weight:500;transition:all .3s ease}.yes-button{background-color:var(--primary-color);color:#fff}.yes-button:hover{background-color:var(--secondary-color)}.no-button{background-color:#e2e8f0;color:var(--text-color)}.no-button:hover{background-color:#cbd5e1}.quiz-section{margin-top:2rem;width:100%;max-width:1200px}.quiz-title{font-size:1.8rem;font-weight:600;color:var(--text-color);margin-bottom:1.5rem;text-align:center}.questions-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2rem;margin-bottom:2rem}.question-card{background-color:var(--card-bg);border-radius:12px;padding:1.5rem;box-shadow:0 2px 4px #0000001a;transition:transform .2s ease}.question-card:hover{transform:translateY(-2px)}.question-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.2rem}.question-number{font-weight:500;color:var(--primary-color)}.question-status{font-weight:500;padding:.3rem .6rem;border-radius:4px;font-size:.9rem}.question-status.correct{background-color:#dcfce7;color:#22c55e}.question-status.incorrect{background-color:#fee2e2;color:#ef4444}.question-text{font-size:1.1rem;color:var(--text-color);margin-bottom:1.5rem;line-height:1.6}.options-grid{display:grid;grid-template-columns:1fr;gap:.8rem}.option{display:flex;align-items:center;padding:1rem;border:2px solid #e2e8f0;border-radius:8px;cursor:pointer;transition:all .3s ease}.option:hover{border-color:var(--primary-color)}.option.correct{background-color:#dcfce7;border-color:#22c55e}.option.incorrect{background-color:#fee2e2;border-color:#ef4444}.option-letter{width:24px;height:24px;display:flex;align-items:center;justify-content:center;background-color:#e2e8f0;border-radius:50%;margin-right:1rem;font-weight:500}.option-text{flex:1}.results-card{background-color:var(--card-bg);border-radius:12px;padding:1.5rem;margin-top:2rem;box-shadow:0 2px 4px #0000001a}.results-card h4{font-size:1.2rem;font-weight:600;color:var(--text-color);margin-bottom:1.5rem;text-align:center}.results-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem}.result-item{padding:1rem;border-radius:8px;text-align:center}.result-item span{display:block}.result-item span:first-child{font-size:.9rem;color:#64748b;margin-bottom:.5rem}.result-item span:last-child{font-size:1.2rem;font-weight:600}.result-item.correct{background-color:#dcfce7;color:#22c55e}.result-item.incorrect{background-color:#fee2e2;color:#ef4444}.result-item.unanswered{background-color:#e2e8f0;color:#64748b}.debug-section{margin-top:2rem;padding:1rem;background-color:#f8fafc;border-radius:8px;font-family:monospace;font-size:.9rem;color:#666}.pagination-controls{display:flex;justify-content:center;gap:.5rem;margin:2rem 0}.pagination-button{padding:.5rem 1rem;border:1px solid #e2e8f0;border-radius:4px;background-color:#fff;cursor:pointer;transition:all .3s ease}.pagination-button:hover,.pagination-button.active{background-color:var(--primary-color);color:#fff;border-color:var(--primary-color)}.chapters-grid{display:flex;flex-direction:column;gap:1.5rem;margin-top:2rem;max-width:800px;margin-left:auto;margin-right:auto}.chapter-card{background:var(--card-bg);border-radius:12px;padding:1.5rem;box-shadow:0 4px 6px -1px #0000001a;border:1px solid #e2e8f0;animation:slideInUp .5s ease-out both;transition:transform .3s ease,box-shadow .3s ease}.chapter-card:hover{transform:translateY(-5px);box-shadow:0 6px 12px -1px #00000026}.chapter-number{font-size:1.2rem;font-weight:600;color:var(--primary-color);margin-bottom:.5rem}.chapter-name{font-size:1.1rem;font-weight:500;color:var(--text-color);margin-bottom:1rem}.chapter-summary{font-size:1rem;color:var(--text-color);line-height:1.6}@keyframes slideInUp{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}@media (max-width: 768px){.home-container{padding:1rem}.home-title{font-size:1.8rem;text-align:center}.home-description{font-size:.9rem;text-align:center;padding:0 1rem}.file-upload-section{padding:1rem}.upload-button{width:100%;margin-top:1rem}.questions-grid{grid-template-columns:1fr;gap:1rem}.question-card{padding:1rem}.question-text{font-size:.9rem}.options-grid{grid-template-columns:1fr}.option{padding:.8rem}.pagination-controls{flex-wrap:wrap;gap:.5rem}.pagination-button{padding:.5rem .8rem;font-size:.8rem}.results-card{padding:1rem}.results-grid{grid-template-columns:1fr;gap:1rem}.prompt-modal{padding:1.5rem}.prompt-buttons{flex-direction:column;gap:.8rem}.prompt-button{width:100%}.chapters-grid{grid-template-columns:1fr}.chapter-card{padding:1rem}.chapter-number{font-size:1.1rem}.chapter-name{font-size:1rem}.chapter-summary{font-size:.9rem}}@media (max-width: 480px){.home-title{font-size:1.5rem}.home-description{font-size:.8rem}.question-card{padding:.8rem}.question-text{font-size:.8rem}.option{padding:.6rem;font-size:.8rem}.results-card h4{font-size:1rem}.result-item{font-size:.8rem}}.navbar{position:fixed;top:0;left:0;width:100%;background-color:var(--primary-color);color:#fff;z-index:1000;padding:1rem 2rem;display:flex;justify-content:center;align-items:center;box-shadow:0 2px 10px #0000001a;transition:all .3s ease}.navbar.scrolled{padding:.8rem 2rem;background-color:#14b8a6f2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.navbar-content{width:100%;max-width:1400px;display:flex;justify-content:center;align-items:center;transition:all .3s ease}.navbar h1{margin:0;font-size:1.5rem;font-weight:600;text-align:center;position:relative;transition:all .3s ease}.navbar h1:after{content:"";position:absolute;bottom:-5px;left:50%;transform:translate(-50%);width:0;height:2px;background-color:#fff;transition:width .3s ease}.navbar h1:hover:after{width:100%}@keyframes navbarSlideIn{0%{transform:translateY(-100%);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes titleFadeIn{0%{opacity:0;transform:translate(-20px)}to{opacity:1;transform:translate(0)}}.navbar{animation:navbarSlideIn .8s cubic-bezier(.23,1,.32,1) forwards}.navbar h1{animation:titleFadeIn 1s ease-out .3s both}@media (max-width: 768px){.navbar{padding:.8rem 1rem}.navbar h1{font-size:1.3rem}.navbar.scrolled{padding:.6rem 1rem}}@media (max-width: 480px){.navbar{padding:.6rem 1rem}.navbar h1{font-size:1.1rem}.navbar.scrolled{padding:.5rem 1rem}}.footer{position:fixed;bottom:0;left:0;width:100%;background-color:var(--primary-color);color:#fff;padding:1rem 2rem;display:flex;justify-content:center;align-items:center;box-shadow:0 -2px 10px #0000001a}.footer p{margin:0;font-size:.9rem;text-align:center}.footer-links{display:flex;gap:1.5rem}.footer-links a{color:#fff;text-decoration:none;font-size:.9rem;transition:opacity .3s ease}.footer-links a:hover{opacity:.8}
