@import url(https://fonts.googleapis.com/css2?family=Nunito:wght@400;600;700;800;900&display=swap);:root{--duo-green:#58cc02;--duo-green-hover:#4caf00;--duo-green-light:#89e219;--duo-green-dark:#3fa000;--duo-blue:#1cb0f6;--duo-blue-hover:#1899d6;--duo-blue-light:#4fc3f7;--duo-blue-dark:#0d8bc9;--duo-red:#ff4b4b;--duo-red-hover:#ea2b2b;--duo-red-light:#ff6b6b;--duo-red-dark:#d82828;--duo-yellow:#ffc800;--duo-yellow-hover:#fa0;--duo-yellow-light:#ffd54f;--duo-yellow-dark:#f4a000;--duo-purple:#ce82ff;--duo-purple-hover:#b85cff;--duo-purple-light:#e0a7ff;--duo-purple-dark:#a63cff;--primary-gradient:linear-gradient(135deg,#0077be,#003f7f);--primary-light:#0077be;--primary-dark:#003f7f;--secondary-gradient:linear-gradient(135deg,#f093fb,#f5576c);--secondary-light:#f093fb;--secondary-dark:#f5576c;--success-gradient:linear-gradient(135deg,#4facfe,#00f2fe);--success-color:#10b981;--error-gradient:linear-gradient(180deg,#ff4b4b,#ea2b2b);--error-color:#ff4b4b;--warning-gradient:linear-gradient(135deg,#ffd89b,#19547b);--warning-color:#f59e0b;--premium-gradient:linear-gradient(180deg,#ce82ff,#a63cff);--premium-color:#ce82ff;--info-gradient:linear-gradient(135deg,#a8edea,#fed6e3);--level-very-easy:#10b981;--level-easy:#3b82f6;--level-normal:#8b5cf6;--level-hard:#f59e0b;--level-very-hard:#ef4444;--bg-gradient:#fff;--bg-color:#fff;--card-bg:#fff;--text-primary:#2d3748;--text-secondary:#718096;--text-light:#a0aec0;--shadow-sm:0 2px 4px #00000014;--shadow-md:0 4px 8px #0000001f;--shadow-lg:0 8px 16px #00000026;--shadow-xl:0 12px 24px #0000002e;--radius-sm:12px;--radius-md:16px;--radius-lg:20px;--radius-xl:24px;--radius-full:9999px;--transition-fast:0.15s ease;--transition-normal:0.3s ease;--transition-slow:0.6s ease;--xp-gold:gold;--streak-fire:#ff6b00;--achievement-bronze:#cd7f32;--achievement-silver:silver;--achievement-gold:gold}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#fff;background:var(--bg-color);background-attachment:fixed;color:#2d3748;color:var(--text-primary);font-family:Nunito,Noto Sans KR,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;margin:0}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.container{padding:20px}.card{background:var(--card-bg);border-radius:20px;border-radius:var(--radius-lg);padding:24px;transition:all .3s ease}.card:hover{border-color:#0077be;border-color:var(--primary-light);box-shadow:0 4px 12px #00000014;transform:translateY(-2px)}.btn{border-radius:16px;border-radius:var(--radius-md);box-shadow:0 4px 0 #00000026;font-size:16px;font-weight:700;gap:8px;letter-spacing:.5px;padding:14px 28px;text-transform:uppercase;transition:all .15s ease;transition:all var(--transition-fast)}.btn:active{box-shadow:0 2px 0 #00000026;transform:translateY(2px)}.btn-primary{background:#58cc02;background:var(--duo-green);border-bottom:4px solid #3fa000;border-bottom:4px solid var(--duo-green-dark)}.btn-primary:hover{background:#4caf00;background:var(--duo-green-hover);box-shadow:0 5px 0 #00000026;transform:translateY(-1px)}.btn-primary:active{border-bottom:2px solid #3fa000;border-bottom:2px solid var(--duo-green-dark);box-shadow:0 2px 0 #00000026;transform:translateY(2px)}.btn-secondary{background:#e5e5e5;border-bottom:4px solid #afafaf;color:#2d3748;color:var(--text-primary)}.btn-secondary:hover{background:#d7d7d7;box-shadow:0 5px 0 #00000026;transform:translateY(-1px)}.btn-secondary:active{border-bottom:2px solid #afafaf;box-shadow:0 2px 0 #00000026;transform:translateY(2px)}.btn-danger{background:#ff4b4b;background:var(--duo-red);border-bottom:4px solid #d82828;border-bottom:4px solid var(--duo-red-dark)}.btn-danger:hover{background:#ea2b2b;background:var(--duo-red-hover);box-shadow:0 5px 0 #00000026;transform:translateY(-1px)}.btn-danger:active{border-bottom:2px solid #d82828;border-bottom:2px solid var(--duo-red-dark);box-shadow:0 2px 0 #00000026;transform:translateY(2px)}.form-group{margin-bottom:20px}.form-label{color:#333;font-weight:500;margin-bottom:8px}.form-input{border:2px solid #e9ecef;border-radius:8px;font-size:16px;padding:12px 16px;transition:border-color .2s ease}.page-header{align-items:center;border-bottom:2px solid #e9ecef;display:flex;justify-content:space-between;margin-bottom:30px;padding-bottom:20px}.page-header h1{color:#2d3748;margin:0}.books-grid,.students-grid{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));margin-top:24px}.difficulty-buttons{display:flex;flex-wrap:nowrap;gap:8px;justify-content:space-between;margin-top:10px}.difficulty-buttons .btn{background-color:#f8f9fa!important;border:1px solid #dee2e6!important;color:#333!important;flex:1 1;font-size:13px;font-weight:500;min-width:60px;overflow:visible;padding:10px 8px;text-overflow:clip;white-space:nowrap}.delete-button{border-top:1px solid #e9ecef;margin-top:20px;padding-top:20px;text-align:right}.btn-delete-small{align-items:center;background:#f8f9fa;border:1px solid #e9ecef;border-radius:8px;color:#dc3545;display:inline-flex;font-size:16px;gap:6px;justify-content:center;padding:12px 16px;transition:all .2s ease}.btn-delete-small:hover{background:#dc3545;border-color:#dc3545;box-shadow:0 4px 12px #dc354566;color:#fff;transform:translateY(-2px)}.btn-group{gap:10px;margin-top:10px}.student-info{margin-bottom:20px}.student-actions{gap:10px;justify-content:space-between}.student-actions .btn{flex:1 1;max-width:48%;min-width:120px;overflow:hidden;text-align:center;text-overflow:ellipsis;white-space:nowrap}.student-actions .btn-delete-small{flex:0 0 auto;max-width:50%;min-width:80px}.quiz-selector{background:#fff;border:2px solid #0077be;border-radius:12px;box-shadow:0 8px 32px #00000026;left:0;margin-top:10px;padding:20px;position:absolute;right:0;top:100%;z-index:10}.quiz-selector h4{color:#2d3748;font-size:18px;margin:0 0 15px}.book-quiz-options{border-bottom:1px solid #e9ecef;margin-bottom:20px;padding-bottom:15px}.book-quiz-options:last-of-type{border-bottom:none}.book-quiz-options h5{color:#495057;font-size:16px;margin:0 0 10px}.difficulty-options{display:flex;flex-wrap:wrap;gap:8px}.quiz-difficulty{font-size:14px;padding:8px 16px}.no-books{color:#718096;font-style:italic;margin:10px 0}.empty-state{color:#718096;padding:60px 20px}.empty-icon{font-size:64px;margin-bottom:20px}.empty-state h3{margin-bottom:10px}.loading-center{gap:20px;min-height:50vh}.quiz-header{margin-bottom:30px}.progress-bar{background:#e9ecef}.progress-fill{background:linear-gradient(135deg,#0077be,#003f7f)}.progress-text{color:#718096}.quiz-history-list{display:flex;flex-direction:column;gap:16px}.quiz-history-item{align-items:center;background:#fff;border:2px solid #e9ecef;border-radius:12px;display:flex;justify-content:space-between;padding:20px;transition:all .2s ease}.quiz-history-item:hover{border-color:#0077be;box-shadow:0 4px 12px #667eea1a;transform:translateY(-2px)}.quiz-info{flex:1 1}.quiz-info .book-title{color:#2d3748;font-size:18px;font-weight:600;margin:0 0 8px}.quiz-details{align-items:center;display:flex;gap:12px}.difficulty-badge{background:#f7fafc;color:#4a5568;font-size:12px;font-weight:500;padding:4px 8px}.quiz-date{color:#718096;font-size:14px}.quiz-score{margin:0 20px}.score-circle{border:3px solid;flex-direction:column;font-weight:600;height:70px;width:70px}.score-circle.excellent{background:#f0fff4;border-color:#38a169;color:#38a169}.score-circle.good{background:ivory;border-color:#d69e2e;color:#d69e2e}.score-circle.needs-improvement{background:#fff5f5;border-color:#e53e3e;color:#e53e3e}.score-text{font-size:16px;line-height:1}.score-detail{font-size:10px;opacity:.8}.quiz-actions{align-items:center}.status-badge{border-radius:16px;font-size:12px;font-weight:500;padding:6px 12px}.status-badge.incomplete{background:#fed7d7;color:#c53030}@media (max-width:768px){.quiz-history-item{align-items:flex-start;flex-direction:column;gap:16px}.quiz-score{align-self:center;margin:0}.quiz-actions{align-self:stretch}.quiz-actions .btn{width:100%}}.question-card{margin:0 auto;max-width:800px}.question-type-badge{display:inline-block;font-size:14px;margin-bottom:20px;padding:8px 16px}.question-text{font-size:24px;line-height:1.4;margin-bottom:30px}.option-label{background:#f8f9fa;border-radius:12px;display:block;margin-bottom:12px;padding:16px 20px}.option-label:hover{background:#f0f4ff;border-color:#0077be}.option-label input[type=radio]:checked+.option-text{color:#0077be;font-weight:600}.results-header{margin-bottom:40px;text-align:center}.score-card{margin:0 auto 30px;max-width:400px}.guest-info{padding:20px;text-align:center}.guest-info p{color:#495057;margin-bottom:15px}.analysis-features{margin-top:20px;text-align:left}.analysis-features h4{color:#2d3748;margin-bottom:10px}.analysis-features ul{list-style:none;padding:0}.analysis-features li{color:#495057;padding:5px 0}.guest-analysis-notice{background:#fff3cd;border:1px solid #ffeaa7;border-radius:8px;margin-bottom:20px;padding:12px;text-align:center}.guest-analysis-notice p{color:#856404;font-size:14px;margin:0}.guest-upgrade-notice{background:#f8f9fa;border:1px solid #e9ecef;border-radius:8px;margin-top:20px;padding:20px}.guest-upgrade-notice h4{color:#2d3748;margin-bottom:10px}.guest-upgrade-notice p{color:#495057;margin-bottom:10px}.guest-upgrade-notice ul{list-style:none;margin:0;padding:0}.guest-upgrade-notice li{color:#495057;padding:5px 0}.quiz-section{margin-top:0;padding-top:2px}.book-header{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:10px}.book-header h3{flex:1 1;margin:0}.toggle-description-btn{align-items:center;background:#6c757d;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:16px;font-weight:700;height:30px;justify-content:center;transition:background-color .2s;width:30px}.toggle-description-btn:hover{background:#5a6268}.quiz-section h4{color:#2d3748;margin-bottom:15px}.info-section{margin-top:30px}.info-section ul{list-style:none;padding:0}.info-section li{border-bottom:1px solid #f8f9fa;color:#495057;padding:0}.info-section li:last-child{border-bottom:none}.score-circle{height:200px;margin:0 auto 20px;position:relative;width:200px}.score-circle,.score-inner{align-items:center;border-radius:50%;display:flex;justify-content:center}.score-inner{background:#fff;box-shadow:0 4px 20px #0000001a;flex-direction:column;height:160px;width:160px}.score-emoji{font-size:32px;margin-bottom:8px}.score-text{align-items:baseline;display:flex;gap:4px}.score-number{color:#2d3748;font-size:36px;font-weight:700}.score-total{color:#718096;font-size:18px}.score-percentage{color:#0077be;font-size:14px;font-weight:600}.personality-card{margin:0 auto 30px;max-width:600px}.mbti-result{background:#f8f9fa;border-radius:12px;justify-content:space-between;margin-bottom:30px;padding:20px}.mbti-result,.mbti-type{align-items:center;display:flex}.mbti-type{gap:12px}.mbti-character{font-size:32px}.mbti-text{color:#0077be;font-size:24px;font-weight:700}.confidence-score{background:#0077be;border-radius:20px;color:#fff;font-size:14px;font-weight:500;padding:8px 16px}.analysis-sections{grid-gap:20px;display:grid;gap:20px}.analysis-section{background:#f8f9fa;border-left:4px solid #0077be;border-radius:12px;padding:20px}.analysis-section h4{color:#2d3748;font-size:18px;margin:0 0 12px}.analysis-section p{color:#4a5568;line-height:1.6;margin:0}.actions-card{margin:0 auto;max-width:500px;text-align:center}.action-buttons{display:flex;flex-wrap:wrap;gap:12px;justify-content:center}@media (max-width:768px){.container{padding:16px}.card{padding:20px}.page-header{flex-direction:column;gap:16px;text-align:center}.books-grid,.students-grid{grid-template-columns:1fr}.btn-group{flex-direction:column}.student-actions{flex-direction:row;gap:8px}.student-actions .btn{flex:1 1;font-size:14px;max-width:48%;min-width:100px;padding:10px 8px}.student-actions .btn-delete-small{flex:0 0 auto;font-size:14px;max-width:48%;min-width:80px;padding:10px 8px}.mbti-result{gap:16px;text-align:center}.action-buttons,.mbti-result{flex-direction:column}.difficulty-buttons{flex-wrap:nowrap;gap:4px;justify-content:space-between}.difficulty-buttons .btn{background-color:#f8f9fa!important;border:1px solid #dee2e6!important;color:#333!important;flex:1 1;font-size:13px;line-height:1.2;min-width:0;overflow:visible;padding:10px 6px;text-overflow:clip;white-space:nowrap}.toggle-description-btn{font-size:14px;height:28px;width:28px}}.btn-large{font-weight:600}.book-item.more-coming{align-items:center;background:linear-gradient(135deg,#f8f9fa,#e9ecef);border:2px dashed #6c757d;color:#6c757d;display:flex;flex-direction:column;justify-content:center;min-height:120px;transition:all .3s ease}.book-item.more-coming:hover{border-color:#495057;color:#495057;transform:translateY(-2px)}.more-coming-icon{font-size:24px;margin-bottom:8px}.more-coming-text{font-weight:500;line-height:1.4}.tab-container{margin:0 auto;max-width:800px}.tab-buttons{border-bottom:2px solid #e9ecef;display:flex;gap:8px;margin-bottom:24px}.tab-btn{background:none;border:none;border-bottom:3px solid #0000;color:#6c757d;cursor:pointer;font-size:16px;font-weight:500;padding:12px 24px;transition:all .3s ease;white-space:nowrap}.tab-btn.active,.tab-btn:hover{background-color:#f8f9fa;color:#007bff}.tab-btn.active{border-bottom-color:#007bff}.alert{align-items:center;border-radius:8px;display:flex;font-weight:500;gap:12px;margin-bottom:24px;padding:16px 20px}.alert-icon{flex-shrink:0;font-size:18px}.alert-error{background-color:#f8d7da;border:1px solid #f5c2c7;color:#842029}.alert-success{background-color:#d1e7dd;border:1px solid #badbcc;color:#0f5132}.form-help{color:#6c757d;display:block;font-size:14px;margin-top:4px}.form-actions{display:flex;flex-wrap:wrap;gap:12px;justify-content:flex-start}@media (max-width:768px){.tab-buttons{flex-direction:column;gap:0}.tab-btn{border-bottom:1px solid #e9ecef;border-radius:0;padding:16px 20px;text-align:left}.tab-btn.active{background-color:#007bff;color:#fff}.form-actions{flex-direction:column}.form-actions .btn{width:100%}}.toggle-switch{display:inline-block;flex-shrink:0;height:28px;position:relative;width:50px}.toggle-switch input{height:0;opacity:0;position:absolute;width:0}.toggle-slider{background-color:#cbd5e0;border-radius:28px;bottom:0;cursor:pointer;left:0;position:absolute;right:0;top:0;transition:background-color .22s ease,box-shadow .22s ease}.toggle-slider:before{background-color:#fff;border-radius:50%;box-shadow:0 2px 4px #0003;content:"";height:22px;left:3px;position:absolute;top:3px;transition:transform .22s ease;width:22px}.toggle-switch input:checked+.toggle-slider{background-color:#0077be}.toggle-switch input:focus-visible+.toggle-slider{box-shadow:0 0 0 3px #0077be4d}.toggle-switch input:checked+.toggle-slider:before{transform:translateX(22px)}.header{-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);background:#fffffff2;border-bottom:1px solid #fff3;box-shadow:0 4px 20px #00000014;position:-webkit-sticky;position:sticky;top:0;z-index:1000}.header-content{align-items:center;display:flex;justify-content:space-between;margin:0 auto;max-width:1200px;padding:1rem;position:relative}.logo{border-radius:8px;color:#2d3748;font-size:1.4rem;font-weight:700;padding:.5rem;text-decoration:none;transition:all .3s ease}.logo:active{background:#677eea1a;transform:scale(.98)}.logo-text{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#0077be,#003f7f);-webkit-background-clip:text;background-clip:text}.header-right{align-items:center;display:flex;gap:0}.auth-buttons,.desktop-nav,.language-selector,.user-dropdown-container{display:none}.mobile-lang-toggle-container{align-items:center;display:flex;position:relative}.mobile-lang-toggle-btn{align-items:center;background:none;border:none;border-radius:8px;cursor:pointer;display:flex;flex-direction:column;height:48px;justify-content:center;margin-right:0;padding:.9rem .25rem .75rem;transition:all .3s ease;width:48px}.mobile-lang-toggle-btn .lang-globe{font-size:1.5rem;line-height:1;opacity:.8}.mobile-lang-toggle-btn:active{background:#677eea1a;transform:scale(.95)}.mobile-lang-dropdown{animation:dropdownSlide .2s ease;background:#fff;border:2px solid #e2e8f0;border-radius:12px;box-shadow:0 8px 30px #00000026;min-width:140px;overflow:hidden;position:absolute;right:0;top:calc(100% + 8px);z-index:1000}.mobile-lang-dropdown button{align-items:center;background:none;border:none;color:#4a5568;cursor:pointer;display:flex;font-size:.875rem;font-weight:500;gap:.5rem;min-height:48px;padding:.75rem 1rem;text-align:left;transition:all .3s ease;white-space:nowrap;width:100%}.mobile-lang-dropdown button:active{background:#677eea1a;color:#0077be}.mobile-lang-dropdown button.active{background:#0077be26;color:#0077be;font-weight:600}.mobile-menu-container{position:relative}.hamburger-button{align-items:center;background:none;border:none;border-radius:8px;cursor:pointer;display:flex;flex-direction:column;gap:4px;justify-content:center;min-height:48px;min-width:48px;padding:.75rem;transition:all .3s ease}.hamburger-button:active{background:#677eea1a;transform:scale(.95)}.hamburger-line{background:#4a5568;border-radius:2px;height:3px;transform-origin:center;transition:all .3s ease;width:22px}.hamburger-line.open:first-child{transform:rotate(45deg) translate(6px,6px)}.hamburger-line.open:nth-child(2){opacity:0;transform:scaleX(0)}.hamburger-line.open:nth-child(3){transform:rotate(-45deg) translate(6px,-6px)}.mobile-menu{animation:fadeIn .3s ease;background:#00000080;bottom:0;left:0;position:fixed;right:0;top:0;z-index:9999}.mobile-menu-content{animation:slideInRight .3s ease;background:#fff;box-shadow:-4px 0 20px #00000026;display:flex;flex-direction:column;height:100vh;overflow-y:auto;position:absolute;right:0;top:0;width:280px}@keyframes slideInRight{0%{opacity:0;transform:translateX(100%)}to{opacity:1;transform:translateX(0)}}.mobile-nav{border-bottom:1px solid #e2e8f0;flex:1 1;padding:2rem 1.5rem 1rem}.mobile-nav .nav-link{align-items:center;border-radius:12px;color:#4a5568;display:block;display:flex;font-size:1rem;font-weight:600;justify-content:center;margin-bottom:.5rem;min-height:48px;padding:1rem;text-align:center;text-decoration:none;transition:all .3s ease}.mobile-nav .nav-link:active{background:#677eea1a;color:#0077be;transform:scale(.98)}.mobile-nav .nav-link.active{background:linear-gradient(135deg,#0077be,#003f7f);box-shadow:0 4px 15px #677eea4d;color:#fff}.mobile-user-section{background:#f7fafc;border-top:1px solid #e2e8f0;padding:1.5rem}.mobile-user-info{display:flex;flex-direction:column;gap:1rem}.mobile-user-header{align-items:center;background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000000d;display:flex;gap:1rem;padding:1rem}.mobile-user-icon{align-items:center;background:linear-gradient(135deg,#0077be,#003f7f);border-radius:50%;display:flex;flex-shrink:0;font-size:1.5rem;height:40px;justify-content:center;width:40px}.mobile-user-name{color:#2d3748;flex:1 1;font-size:1rem;font-weight:600}.mobile-menu-button{background:#fff;border:2px solid #e2e8f0;border-radius:12px;color:#4a5568;cursor:pointer;font-size:.95rem;font-weight:600;min-height:48px;padding:1rem;transition:all .3s ease;width:100%}.mobile-menu-button:active{background:#677eea1a;border-color:#0077be;color:#0077be;transform:scale(.98)}.mobile-menu-button.logout{background:#fed7d7;border-color:#feb2b2;color:#c53030}.mobile-menu-button.logout:active{background:#fca5a5;border-color:#f56565}.mobile-auth-buttons{display:flex;flex-direction:column;gap:1rem;padding:1.5rem}.mobile-btn{align-items:center;border-radius:12px;display:block;display:flex;font-weight:600;justify-content:center;min-height:48px;padding:1rem;text-align:center;text-decoration:none;transition:all .3s ease}.mobile-btn-primary{background:linear-gradient(135deg,#0077be,#003f7f);box-shadow:0 4px 15px #677eea4d;color:#fff}.mobile-btn-primary:active{box-shadow:0 6px 20px #677eea66;transform:scale(.98)}.mobile-btn-secondary{background:#fff;border:2px solid #e2e8f0;color:#4a5568}.mobile-btn-secondary:active{background:#677eea1a;border-color:#0077be;color:#0077be;transform:scale(.98)}@media (min-width:768px){.header-content{padding:1rem 1.5rem}.logo{font-size:1.6rem}.desktop-nav{align-items:center;display:flex;gap:2rem}.nav-link{border-radius:8px;color:#4a5568;font-size:.95rem;font-weight:600;padding:.75rem 1rem;position:relative;text-decoration:none;transition:all .3s ease}.nav-link:hover{background:#677eea1a;color:#0077be}.nav-link.active{background:#677eea26;color:#0077be}.nav-link.active:after{background:linear-gradient(90deg,#0077be,#003f7f);border-radius:1px;bottom:-4px;content:"";height:2px;left:50%;position:absolute;transform:translateX(-50%);width:80%}.user-dropdown-container{display:block;position:relative}.user-button{align-items:center;background:#fff;border:2px solid #e2e8f0;border-radius:12px;color:#4a5568;cursor:pointer;display:flex;font-weight:600;gap:.75rem;padding:.75rem 1rem;transition:all .3s ease}.user-button:hover{background:#677eea0d;border-color:#0077be;color:#0077be}.user-icon{font-size:1.2rem}.dropdown-arrow{font-size:.8rem;transition:transform .3s ease}.dropdown-arrow.open{transform:rotate(180deg)}.user-dropdown{animation:dropdownSlide .2s ease;background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 8px 30px #00000026;margin-top:.5rem;min-width:200px;overflow:hidden;position:absolute;right:0;top:100%;z-index:1000}@keyframes dropdownSlide{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.dropdown-item{border-bottom:1px solid #f7fafc;color:#4a5568;display:block;font-weight:500;padding:1rem 1.25rem;text-decoration:none;transition:all .3s ease}.dropdown-item:hover{background:#677eea1a;color:#0077be}.dropdown-item:last-child{border-bottom:none}.dropdown-item.logout{color:#e53e3e}.dropdown-item.logout:hover{background:#fed7d7;color:#c53030}.language-selector{display:block;position:relative}.language-button{align-items:center;background:#fff;border:2px solid #e2e8f0;border-radius:12px;color:#4a5568;cursor:pointer;display:flex;font-weight:500;gap:.5rem;padding:.75rem;transition:all .3s ease}.language-button:hover{background:#677eea0d;border-color:#0077be}.language-dropdown{animation:dropdownSlide .2s ease;background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 8px 30px #00000026;margin-top:.5rem;min-width:150px;overflow:hidden;position:absolute;right:0;top:100%;z-index:1000}.language-option{align-items:center;background:none;border:none;color:#4a5568;cursor:pointer;display:flex;font-weight:500;gap:.75rem;padding:.75rem 1rem;text-align:left;transition:all .3s ease;width:100%}.language-option:hover{background:#677eea1a;color:#0077be}.language-option.active{background:#677eea26;color:#0077be;font-weight:600}.flag{font-size:1.1rem}.auth-buttons{align-items:center;display:flex;gap:1rem}.auth-link{border-radius:12px;font-size:.95rem;font-weight:600;padding:.75rem 1.5rem;text-decoration:none;transition:all .3s ease}.auth-link.login{background:#fff;border:2px solid #e2e8f0;color:#4a5568}.auth-link.login:hover{background:#677eea0d;border-color:#0077be;color:#0077be}.auth-link.register{background:linear-gradient(135deg,#0077be,#003f7f);box-shadow:0 4px 15px #677eea4d;color:#fff}.auth-link.register:hover{box-shadow:0 6px 20px #677eea66;transform:translateY(-2px)}.mobile-lang-toggle-btn,.mobile-menu-container{display:none}}@media (min-width:1024px){.header-content{padding:1rem 2rem}.logo{font-size:1.8rem}.desktop-nav{gap:2.5rem}.nav-link{font-size:1rem;padding:.875rem 1.25rem}}@media (prefers-contrast:high){.header{border-bottom:2px solid #2d3748}.language-button,.mobile-menu-button,.nav-link,.user-button{border:2px solid #2d3748}}@media (hover:none) and (pointer:coarse){.auth-link:hover,.language-button:hover,.nav-link:hover,.user-button:hover{box-shadow:none;transform:none}.auth-link.register:hover{transform:none}}@media (prefers-color-scheme:dark){.header{background:#1a202cf2;border-bottom-color:#ffffff1a}.logo{color:#f7fafc}.mobile-menu-content{background:#2d3748}.mobile-nav .nav-link{color:#e2e8f0}.mobile-user-section{background:#1a202c}.mobile-user-header{background:#4a5568}.mobile-lang-toggle-btn,.mobile-user-name{color:#e2e8f0}.mobile-lang-toggle-btn .lang-globe{opacity:.7}.lang-toggle-btn{color:#e2e8f0}.lang-toggle-btn .lang-globe{opacity:.7}.mobile-lang-dropdown{background:#4a5568;border-color:#2d3748}.mobile-lang-dropdown button{color:#e2e8f0}.lang-dropdown button.active,.mobile-lang-dropdown button.active{background:#0077be4d;color:#60a5fa;font-weight:600}}.desktop-user-menu{display:none}@media (min-width:768px){.desktop-user-menu,.user-section{align-items:center;display:flex}.user-section{gap:.75rem}.user-profile{position:relative}.user-profile-btn{align-items:center;background:#fff;border:1px solid #e5e7eb;border-radius:12px;box-shadow:0 1px 3px #0000001a;cursor:pointer;display:flex;gap:.75rem;min-height:44px;padding:.5rem .75rem;transition:all .2s ease}.user-profile-btn:hover{border-color:#d1d5db;box-shadow:0 4px 6px #0000000d;transform:translateY(-1px)}.user-avatar{align-items:center;background:linear-gradient(135deg,#0077be,#003f7f);border-radius:50%;display:flex;flex-shrink:0;font-size:14px;height:32px;justify-content:center;width:32px}.user-info{align-items:flex-start;display:flex;flex-direction:column;min-width:0}.user-name{color:#111827;font-size:.875rem;font-weight:600;line-height:1.2;max-width:120px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-type{color:#6b7280;font-size:.75rem;font-weight:500;line-height:1}.chevron-icon{color:#9ca3af;flex-shrink:0;transition:transform .2s ease}.chevron-icon.open{transform:rotate(180deg)}.user-dropdown-menu{animation:dropdownAppear .2s ease;background:#fff;border:1px solid #e5e7eb;border-radius:12px;box-shadow:0 10px 25px #0000001a;min-width:200px;overflow:hidden;position:absolute;right:0;top:calc(100% + 8px);z-index:1000}@keyframes dropdownAppear{0%{opacity:0;transform:translateY(-8px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.dropdown-item{align-items:center;background:none;border:none;color:#374151;cursor:pointer;display:flex;font-size:.875rem;font-weight:500;gap:.75rem;padding:.75rem 1rem;text-align:left;transition:all .15s ease;width:100%}.dropdown-item:hover{background:#f9fafb;color:#111827}.dropdown-item.logout-item{color:#dc2626}.dropdown-item.logout-item:hover{background:#fef2f2;color:#b91c1c}.item-icon{align-items:center;display:flex;font-size:1rem;justify-content:center;width:20px}.dropdown-divider{background:#e5e7eb;height:1px;margin:.25rem 0}.lang-toggle-container{align-items:center;display:flex;position:relative}.lang-toggle-btn{align-items:center;background:none;border:none;border-radius:8px;cursor:pointer;display:flex;flex-direction:column;height:44px;justify-content:center;padding:.75rem;transition:all .2s ease;width:48px}.lang-toggle-btn .lang-globe{font-size:1.3rem;line-height:1;opacity:.8}.lang-toggle-btn:hover{background:#677eea1a;transform:translateY(-1px)}.lang-dropdown{animation:dropdownAppear .2s ease;background:#fff;border:1px solid #e5e7eb;border-radius:12px;box-shadow:0 10px 25px #0000001a;overflow:hidden;position:absolute;right:0;top:calc(100% + 8px);z-index:1000}.lang-dropdown button{align-items:center;background:none;border:none;color:#374151;cursor:pointer;display:flex;font-size:.875rem;font-weight:500;gap:.5rem;padding:.75rem 1rem;text-align:left;transition:all .15s ease;white-space:nowrap;width:100%}.lang-dropdown button:hover{background:#f9fafb;color:#111827}.lang-dropdown button.active{background:#0077be26;color:#0077be;font-weight:600}.auth-section{gap:.75rem}.auth-btn,.auth-section{align-items:center;display:flex}.auth-btn{border:1px solid #0000;border-radius:10px;font-size:.875rem;font-weight:600;justify-content:center;min-height:44px;padding:.625rem 1.25rem;text-decoration:none;transition:all .2s ease}.login-btn{background:#fff;border-color:#e5e7eb;box-shadow:0 1px 3px #0000001a;color:#374151}.login-btn:hover{border-color:#d1d5db;box-shadow:0 4px 6px #0000000d;transform:translateY(-1px)}.register-btn{background:linear-gradient(135deg,#0077be,#003f7f);box-shadow:0 4px 14px #667eea4d;color:#fff}.register-btn:hover{box-shadow:0 6px 20px #667eea66;transform:translateY(-1px)}}.auth-buttons,.language-selector,.user-dropdown-container{display:none!important}.gamification-stats{align-items:center;display:flex;gap:8px;margin-right:12px}.stat-badge{align-items:center;border-radius:16px;box-shadow:0 4px 0 #00000026;cursor:pointer;display:flex;font-size:.9rem;font-weight:700;gap:6px;padding:8px 12px;position:relative;transition:all .2s ease}.stat-badge:hover{box-shadow:0 6px 0 #00000026;transform:translateY(-2px)}.stat-badge:active{box-shadow:0 3px 0 #00000026;transform:translateY(1px)}.xp-badge{background:linear-gradient(180deg,gold,orange);border-bottom:4px solid #d4af37;color:#3c3c3c}.streak-badge{background:linear-gradient(180deg,#ff6b00,#ff4500);border-bottom:4px solid #cc3700;color:#fff}.stat-icon{font-size:1.2rem;line-height:1}.stat-value{font-weight:800}.stat-label{letter-spacing:.5px}.stat-level{background:#0000001a;border-radius:8px;font-size:.75rem;margin-left:4px;opacity:.9;padding:2px 6px}@media (max-width:768px){.gamification-stats{gap:6px;margin-right:8px}.stat-badge{font-size:.8rem;gap:4px;padding:6px 10px}.stat-icon{font-size:1rem}.stat-value{font-size:.9rem}.stat-label{display:none}.stat-level{font-size:.7rem;padding:2px 4px}}.custom-alert-overlay{align-items:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#00000080;bottom:0;display:flex;justify-content:center;left:0;opacity:0;position:fixed;right:0;top:0;transition:all .3s ease;visibility:hidden;z-index:10000}.custom-alert-overlay.visible{opacity:1;visibility:visible}.custom-alert{background:#fff;border:1px solid #fff3;border-radius:16px;box-shadow:0 20px 60px #0003;max-height:80vh;max-width:400px;overflow:hidden;transform:scale(.8) translateY(20px);transition:all .3s cubic-bezier(.34,1.56,.64,1);width:90%}.custom-alert.show{transform:scale(1) translateY(0)}.custom-alert.success{border-left:5px solid #10b981}.custom-alert.error{border-left:5px solid #ef4444}.custom-alert.warning{border-left:5px solid #f59e0b}.custom-alert.info{border-left:5px solid #3b82f6}.alert-header{align-items:center;border-bottom:1px solid #f3f4f6;display:flex;justify-content:space-between;padding:20px 24px 16px}.alert-icon{animation:bounce .6s ease;font-size:24px}.alert-close{align-items:center;background:none;border:none;border-radius:50%;color:#9ca3af;cursor:pointer;display:flex;font-size:24px;height:32px;justify-content:center;padding:4px;transition:all .2s ease;width:32px}.alert-close:hover{background:#f3f4f6;color:#4b5563;transform:scale(1.1)}.alert-content{padding:16px 24px 20px}.alert-title{color:#1f2937;font-size:18px;font-weight:600;margin:0 0 8px}.alert-message{color:#4b5563;font-size:16px;line-height:1.6;margin:0;white-space:pre-wrap}.alert-actions{border-top:1px solid #f3f4f6;display:flex;gap:12px;justify-content:flex-end;padding:16px 24px 24px}.alert-actions .btn{border-radius:8px;font-size:14px;font-weight:500;min-width:80px;padding:10px 20px;transition:all .2s ease}.custom-alert.success .alert-icon{filter:drop-shadow(0 0 8px rgba(16,185,129,.3))}.custom-alert.error .alert-icon{filter:drop-shadow(0 0 8px rgba(239,68,68,.3))}.custom-alert.warning .alert-icon{filter:drop-shadow(0 0 8px rgba(245,158,11,.3))}.custom-alert.info .alert-icon{filter:drop-shadow(0 0 8px rgba(59,130,246,.3))}@media (max-width:768px){.custom-alert{margin:20px;max-width:95%}.alert-header{padding:16px 20px 12px}.alert-content{padding:12px 20px 16px}.alert-title{font-size:16px}.alert-message{font-size:14px}.alert-actions{flex-direction:column;padding:12px 20px 20px}.alert-actions .btn{width:100%}}.footer{background-color:#f8f9fa;border-top:1px solid #e9ecef;margin-top:auto;padding:40px 0 20px}.footer-content{margin:0 auto;max-width:1200px;padding:0 20px}.footer-links{display:flex;flex-wrap:wrap;gap:40px;justify-content:center;margin-bottom:30px}.footer-links a{border-radius:6px;color:#6c757d;font-size:14px;font-weight:500;padding:8px 16px;text-decoration:none;transition:color .2s ease;transition:all .2s ease}.footer-links a:hover{background-color:#f8f9fa;color:#007bff;text-decoration:none}.footer-bottom{border-top:1px solid #e9ecef;padding-top:20px;text-align:center}.footer-bottom p{align-items:center;color:#6c757d;display:flex;font-size:.9em;gap:8px;justify-content:center;margin:0}.logo-img{vertical-align:middle}@media (max-width:768px){.footer{padding:30px 0 15px}.footer-content{padding:0 15px}.footer-links{gap:20px;justify-content:center}.footer-links a{font-size:13px;padding:6px 12px}.footer-bottom p{font-size:.85em;gap:6px}}.hero,.home-page{min-height:auto}.hero{align-items:center;display:flex;gap:60px;margin-bottom:0;padding:60px 0}.hero-content{flex:1 1}.hero-title{color:#2d3748;font-size:48px;font-weight:800;line-height:1.2;margin-bottom:24px}.hero-title .title{display:block;margin-bottom:10px}.hero-title .title-brand{color:#2d3748}.hero-title .title-desc{color:#a0aec0;font-size:.75em;font-weight:600}.hero-title .title-accent{color:#718096;font-weight:800}.highlight{-webkit-text-fill-color:#0000;animation:shimmer 3s ease-in-out infinite;background:linear-gradient(135deg,#90cdf4,#63b3ed);-webkit-background-clip:text;background-clip:text;font-size:.75em;font-weight:600}.hero-description{color:#718096;font-size:20px;line-height:1.6;margin-bottom:40px}.hero-buttons{display:flex;gap:20px}.btn-large{font-size:22px;padding:18px 48px}.play-btn{font-size:28px!important;padding:12px 54px!important}.hero-illustration{align-items:center;display:flex;flex:1 1;justify-content:center;position:relative}.floating-books{height:300px;position:relative;width:300px}.book{animation:float 6s ease-in-out infinite;font-size:48px;position:absolute}.book-1{animation-delay:0s;left:20%;top:20%}.book-2{animation-delay:1s;right:20%;top:10%}.book-3{animation-delay:2s;bottom:30%;left:10%}.book-4{animation-delay:3s;bottom:20%;right:10%}.book-5{animation-delay:4s;left:45%;top:40%}.available-books{margin-bottom:30px}.books-showcase{display:flex;flex-wrap:wrap;gap:28px;justify-content:center;margin-top:48px}.book-item{cursor:pointer;display:flex;flex-direction:column;height:280px;max-width:320px;min-width:280px;overflow:visible;position:relative;text-align:center;text-decoration:none;transition:all var(--transition-normal)}.book-item:hover{box-shadow:var(--shadow-xl);transform:translateY(-12px) scale(1.02)}.book-item:active{transform:translateY(-8px) scale(1.01)}.book-title{font-size:16px;font-weight:700;margin-bottom:4px;text-align:center}.book-subtitle{color:#4a5568;font-size:13px;text-align:center}.available-books .book-item:active .book-info,.available-books .book-item:focus .book-info,.available-books .book-item:hover .book-info{opacity:1;transform:translateY(0)}@media (hover:none) and (pointer:coarse){.available-books .book-item:active .book-info{opacity:1;transform:translateY(0)}}.language-badge{background:var(--primary-gradient);border-radius:var(--radius-full);box-shadow:var(--shadow-sm);color:#fff;font-size:12px;line-height:1;padding:6px 12px;position:absolute;right:4px;top:4px;transition:all var(--transition-normal);z-index:15}.book-item:hover .language-badge{background:var(--secondary-gradient);box-shadow:var(--shadow-md);transform:scale(1.1)}.book-cover{align-items:center;border-radius:var(--radius-md);box-shadow:var(--shadow-md);display:flex;flex:1 1;justify-content:center;margin-bottom:6px;min-height:180px;min-width:160px;overflow:hidden;position:relative;transition:all var(--transition-normal);width:160px}.book-item:hover .book-cover{box-shadow:var(--shadow-lg)}.book-cover img{border-radius:6px;max-height:100%;max-width:100%;object-fit:cover}.book-cover-placeholder{color:#667eea80;font-size:14px;font-weight:500;text-align:center}.book-item:hover .book-cover:before{background:#0000004d;border-radius:8px;bottom:0;content:"";left:0;position:absolute;right:0;top:0;z-index:1}.book-item:hover .book-cover-placeholder{color:#fffc}.available-books .book-info{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:linear-gradient(0deg,#000c,#0006);border-radius:0 0 6px 6px;bottom:0;color:#fff;left:0;opacity:0;padding:12px 8px;position:absolute;right:0;text-align:center;transform:translateY(100%);transition:all .3s ease;z-index:10}.available-books .book-title{font-size:14px;font-weight:600;margin-bottom:2px;text-shadow:0 1px 2px #000c}.available-books .book-subtitle{color:#ffffffe6;font-size:12px;opacity:1;text-shadow:0 1px 2px #000c}.available-books .book-info .more-coming-text{color:#fff;font-size:14px;font-weight:600;line-height:1.3;text-align:center;text-shadow:0 1px 2px #000c}.book-info{background:#ffffffe6;border-radius:8px;box-sizing:border-box;margin-top:6px;text-align:center;width:100%}.more-coming .book-cover{align-items:center;background:#0000;border:none;display:flex;justify-content:center;overflow:hidden;position:relative}.more-coming-icon{color:#667eea99;font-size:48px;font-weight:700;transition:all .3s ease}.more-coming:hover .more-coming-icon{color:#ffffffe6;transform:scale(1.1)}.more-coming-text{color:#718096;font-size:14px;font-weight:600;line-height:1.3;text-align:center;transition:color .3s ease}.more-coming:hover .more-coming-text{color:#ffffffe6}.book-cover.little-prince{background-image:url(https://prodimage.images-bn.com/pimages/9798765532645_p0_v1_s1200x630.jpg)}.book-cover.little-prince,.book-cover.old-man-sea{background-repeat:no-repeat;background-size:100% 100%}.book-cover.old-man-sea{background-image:url(https://m.media-amazon.com/images/I/61ykXyGLK5L.jpg)}.book-cover.frankenstein{background-image:url(https://m.media-amazon.com/images/I/710p9SUfZtL._UF1000,1000_QL80_.jpg)}.book-cover.frankenstein,.book-cover.great-gatsby{background-repeat:no-repeat;background-size:100% 100%}.book-cover.great-gatsby{background-image:url(https://m.media-amazon.com/images/I/81QuEGw8VPL.jpg)}.book-cover.peter-pan{background-image:url(https://m.media-amazon.com/images/I/A1Y40KXiL6L._UF1000,1000_QL80_.jpg);background-repeat:no-repeat;background-size:100% 100%}.book-cover.alice-in-wonderland{background-image:url(https://www.gutenberg.org/cache/epub/11/images/cover.jpg);background-repeat:no-repeat;background-size:100% 100%}.book-cover.around-the-world{background-image:url(https://www.gutenberg.org/cache/epub/103/images/cover.jpg)}.book-cover.around-the-world,.book-cover.jungle-book{background-repeat:no-repeat;background-size:100% 100%}.book-cover.jungle-book{background-image:url(https://m.media-amazon.com/images/I/71-YH+USyAL._SY385_.jpg)}.book-cover.young-werther{background-image:url(https://m.media-amazon.com/images/I/818akfw22tL._SL1500_.jpg)}.book-cover.invisible-man,.book-cover.young-werther{background-repeat:no-repeat;background-size:100% 100%}.book-cover.invisible-man{background-image:url(https://www.gutenberg.org/cache/epub/5230/images/cover.jpg)}.book-cover.alchemist{background-image:url(https://m.media-amazon.com/images/I/71+2-t7M35L._SL1500_.jpg);background-repeat:no-repeat;background-size:100% 100%}.features,.section-title{margin-bottom:30px}.section-title{color:#2d3748;font-size:36px;font-weight:700;text-align:center}.features-container{display:flex;justify-content:center}.feature-card-unified{background:#fff;border:1px solid #e5e7eb;border-radius:var(--radius-xl);box-shadow:0 2px 8px #00000014;max-width:800px;overflow:hidden;padding:40px;position:relative;transition:all var(--transition-normal);width:100%}.feature-card-unified:before{background:var(--primary-gradient);content:"";height:3px;left:0;position:absolute;right:0;top:0}.feature-card-unified:hover{border-color:var(--primary-light);box-shadow:0 8px 24px #0000001f;transform:translateY(-4px)}.feature-item{margin-bottom:32px;text-align:center}.feature-item:last-child{margin-bottom:0}.features-grid{grid-gap:32px;gap:32px;grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.feature-card{border:1px solid #e2e8f0;border-radius:16px;box-shadow:0 4px 20px #00000014;padding:32px;transition:transform .3s ease,box-shadow .3s ease}.feature-card:hover{box-shadow:0 8px 40px #0000001f;transform:translateY(-8px)}.feature-icon{animation:pulse 2s infinite,rotate 10s linear infinite;filter:drop-shadow(0 4px 12px rgba(102,126,234,.3));font-size:64px;margin-bottom:24px}.feature-item h3{color:#2d3748;font-size:24px;font-weight:600;margin-bottom:16px}.feature-item p{color:#718096;font-size:16px;line-height:1.6}.feature-card h3{font-size:24px;margin-bottom:16px}.feature-card p{line-height:1.6}.how-it-works{background:#f8f9fa;border:1px solid #e5e7eb;border-radius:var(--radius-xl);box-shadow:0 2px 8px #0000000f;margin-bottom:80px;margin-left:auto;margin-right:auto;max-width:100%;overflow:hidden;padding:40px 30px;position:relative;text-align:center}.how-it-works:before{background:var(--primary-gradient);content:"";height:3px;left:0;position:absolute;right:0;top:0}.how-it-works .section-title{-webkit-text-fill-color:#0000;animation:shimmer 3s ease-in-out infinite;background:var(--primary-gradient);-webkit-background-clip:text;background-clip:text;margin-bottom:16px}.how-it-works>p{color:#4a5568;font-size:16px;font-weight:500;line-height:1.5;margin-bottom:32px;margin-left:auto;margin-right:auto;max-width:500px;position:relative}.how-it-works>p:after{display:block;font-size:24px;margin-top:16px;opacity:.8}.steps{align-items:flex-start;display:flex;flex-wrap:wrap;gap:32px;justify-content:center}.step{align-items:center;background:#fff;border:1px solid #e5e7eb;border-radius:var(--radius-lg);box-shadow:0 2px 8px #00000014;display:flex;gap:16px;max-width:300px;padding:10px 16px;position:relative;transition:all var(--transition-normal)}.step:hover{border-color:var(--primary-light);box-shadow:0 8px 24px #0000001f;transform:translateY(-4px)}.step:not(:last-child):after{color:#0077be;content:"→";font-size:24px;font-weight:700;position:absolute;right:-32px;text-shadow:0 2px 4px #667eea4d;top:50%;transform:translateY(-50%);z-index:10}.step-number{align-items:center;background:var(--primary-gradient);border-radius:var(--radius-full);box-shadow:var(--shadow-md);color:#fff;display:flex;flex-shrink:0;font-size:20px;font-weight:700;height:50px;justify-content:center;overflow:hidden;position:relative;transition:all var(--transition-normal);width:50px}.step-number:before{background:var(--secondary-gradient);border-radius:var(--radius-full);content:"";inset:-3px;opacity:0;position:absolute;transition:opacity var(--transition-normal);z-index:-1}.step:hover .step-number:before{opacity:1}.step:hover .step-number{box-shadow:var(--shadow-lg);transform:scale(1.15) rotate(5deg)}.step h3{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#2d3748,#4a5568);-webkit-background-clip:text;background-clip:text;color:#2d3748;font-size:16px;font-weight:700}.step h3,.step p{margin:0;text-align:left}.step p{color:#718096;font-size:14px;line-height:1.5}.cta{background:var(--primary-gradient);border-radius:var(--radius-xl);box-shadow:var(--shadow-xl);color:#fff;margin-bottom:40px;overflow:hidden;padding:80px 40px;position:relative;text-align:center}.cta:before{animation:rotate 20s linear infinite;background:radial-gradient(circle,#ffffff1a 0,#0000 70%);content:"";height:200%;position:absolute;right:-50%;top:-50%;width:200%}.cta-main-title{color:#fff;font-size:48px;font-weight:700;letter-spacing:1px;margin-bottom:16px}.cta-subtitle{color:#ffffffe6;font-size:28px;font-weight:600;line-height:1.3;margin-bottom:32px}.cta-description-en{color:#ffffffe6;font-size:18px;line-height:1.6;margin-bottom:20px}.cta-description-ko{color:#fffffff2;font-size:18px;font-weight:500;line-height:1.6;margin-bottom:48px}.cta-buttons{display:flex;flex-wrap:wrap;gap:20px;justify-content:center}.btn-quest{align-items:center;background:#fffffff2;color:#0077be;display:flex;font-weight:600;gap:8px;transition:all .3s ease}.btn-quest:hover{background:#fff;box-shadow:0 8px 30px #ffffff4d;color:#0077be;transform:translateY(-3px)}.btn-trial{background:#0000;border:2px solid #fffc;color:#fff;font-weight:600;transition:all .3s ease}.btn-trial:hover{background:#ffffff1a;border-color:#fff;box-shadow:0 8px 30px #fff3;color:#fff;transform:translateY(-3px)}.btn-icon{font-size:18px}@media (max-width:1024px){.hero{flex-direction:column;gap:40px;text-align:center}.hero-title{font-size:40px}.how-it-works{padding:32px 20px}.how-it-works>p{font-size:15px}.steps{align-items:center;flex-direction:column;gap:24px}.step{max-width:400px;width:100%}.step:not(:last-child):after{bottom:-24px;content:"↓";font-size:28px;left:50%;right:auto;top:auto;transform:translateX(-50%)}}@media (max-width:375px){.hero-title .title-desc{font-size:.72em;letter-spacing:-.2px}}@media (max-width:768px){.hero{margin-bottom:0;margin-top:0;min-height:auto;padding:0}.hero-title{font-size:24px}.hero-description{font-size:18px}.hero-buttons{align-items:center;flex-direction:row;flex-wrap:wrap;justify-content:center}.btn-large{font-size:20px;padding:16px 40px}.floating-books{height:200px;width:200px}.book{font-size:32px}.section-title{font-size:28px}.how-it-works{border-radius:16px;margin-bottom:50px;margin-left:0;margin-right:0;padding:24px 16px}.how-it-works>p{font-size:14px;margin-bottom:24px}.how-it-works>p:after{font-size:18px;margin-top:10px}.step{gap:12px;margin:0 auto;max-width:none;padding:8px 12px;width:calc(100% - 24px)}.step-number{font-size:16px;height:40px;width:40px}.step h3{font-size:14px}.step p{font-size:12px}.step:not(:last-child):after{bottom:-20px;font-size:24px}.features-grid{grid-template-columns:1fr}.feature-card-unified{margin:0 16px;padding:32px 24px}.feature-item{margin-bottom:28px}.feature-item h3{font-size:22px}.feature-item p{font-size:15px}.cta{padding:60px 20px}.cta-main-title{font-size:36px;margin-bottom:12px}.cta-subtitle{font-size:22px;margin-bottom:24px}.cta-description-en{font-size:16px;margin-bottom:16px}.cta-description-ko{font-size:16px;margin-bottom:36px}.cta-buttons{align-items:center;flex-direction:column;gap:16px}.btn-quest,.btn-trial{max-width:280px;width:100%}.books-showcase{gap:8px;justify-content:flex-start;margin-top:32px}.book-item{height:250px;max-width:calc(50% - 4px);min-width:150px;overflow:visible;padding:8px 4px;width:calc(50% - 4px)}.book-cover{margin-bottom:6px;min-height:180px}.book-title{color:#2d3748;font-size:14px;font-weight:700;margin-bottom:3px;text-align:center}.book-subtitle{color:#4a5568;font-size:12px;text-align:center}.language-badge{font-size:11px;padding:3px 6px;right:3px;top:3px}.book-info{background:#ffffffe6;border-radius:8px;box-sizing:border-box;margin:4px 0;padding:4px;text-align:center;width:100%}.nexpa-map{background:#f8f9fa;padding:32px 0 0}.nexpa-map-content{margin:0 auto;max-width:100%;padding:0 16px}.nexpa-map-title{color:#2d3748;font-size:28px;font-weight:700;letter-spacing:2px;margin-bottom:32px;text-align:center}.nexpa-map-images{display:flex;flex-direction:column;gap:16px;margin-bottom:32px;padding-bottom:32px}.map-image-container{display:flex;justify-content:center;padding:0 8px}.nexpa-map-image{border-radius:12px;box-shadow:0 4px 12px #0000001a;height:auto;max-width:350px;transition:transform .3s ease;width:100%}.nexpa-map-image:hover{transform:translateY(-2px)}.nexpa-branding{background:#2d3748;color:#fff;margin:0 -16px;padding:24px 16px}.nexpa-logo-section{margin:0 auto;max-width:400px;text-align:center}.nexpa-brand-title{font-size:24px;font-weight:700;letter-spacing:1px;margin-bottom:8px}.nexpa-brand-subtitle{color:#a0aec0;font-size:14px;line-height:1.4;margin-bottom:4px}.nexpa-brand-subtitle-ko{color:#718096;font-size:13px;line-height:1.4;margin-bottom:16px}.nexpa-brand-footer{border-top:1px solid #4a5568;padding-top:8px}.nexpa-brand-link{color:#63b3ed;cursor:pointer;font-size:14px;text-decoration:underline}}@media (min-width:769px){.nexpa-map{margin-top:80px;padding:64px 0 0}.nexpa-map-content{max-width:1200px;padding:0 32px}.nexpa-map-title{font-size:48px;letter-spacing:3px;margin-bottom:48px}.nexpa-map-images{gap:32px;margin-bottom:48px}.map-image-container{padding:0 16px}.nexpa-map-image{border-radius:16px;box-shadow:0 8px 24px #00000026;max-width:600px}.nexpa-branding{margin:0 -32px;padding:48px 32px}.nexpa-logo-section{max-width:600px}.nexpa-brand-title{font-size:36px;letter-spacing:2px;margin-bottom:12px}.nexpa-brand-subtitle{font-size:18px;margin-bottom:6px}.nexpa-brand-subtitle-ko{font-size:16px;margin-bottom:24px}.nexpa-brand-footer{padding-top:16px}.nexpa-brand-link{font-size:16px}}.about-page{background:#f5f7fa;color:#2d3748;padding:10px 0}.about-container{margin:0 auto;max-width:700px;padding:10px 20px;position:relative;text-align:center}.about-header{margin-bottom:15px}.about-content,.description{text-align:left}.about-content{margin-bottom:15px}.content-section p{color:#4a5568;font-size:16px;line-height:1.6;margin:0}.about-cta{margin-top:15px;padding:15px 20px;position:relative;text-align:center}@media (max-width:768px){.about-container{padding:10px 16px}.content-grid{gap:10px;grid-template-columns:1fr}.main-title{font-size:28px}.description{font-size:16px}.content-section h3{font-size:18px}.content-section li,.content-section p{font-size:15px}.about-cta{padding:10px 20px}.cta-text{font-size:16px}}@media (max-width:480px){.about-container{padding:8px 12px}.content-grid{gap:8px}.main-title{font-size:24px}.description{font-size:15px}.content-section h3{font-size:16px}.content-section li,.content-section p{font-size:14px}.about-cta{padding:8px 16px}.cta-text{font-size:15px}}.container{background:#f8f9fa;min-height:100vh}.page-header{background:#fff;border:1px solid #e5e7eb;border-radius:var(--radius-xl);box-shadow:0 2px 8px #0000000f;margin-bottom:2rem;overflow:hidden;padding:1.5rem;position:relative}.page-header:before{background:var(--primary-gradient);content:"";height:3px;left:0;position:absolute;right:0;top:0}.page-header h1{-webkit-text-fill-color:#0000;animation:shimmer 3s ease-in-out infinite;background:var(--primary-gradient);-webkit-background-clip:text;background-clip:text;color:var(--text-primary);font-size:1.8rem;font-weight:700;margin:0 0 .5rem}.page-header p{color:#718096;font-size:1rem;line-height:1.5;margin:0 0 1.5rem}.btn{font-size:.95rem;gap:.5rem;min-height:48px;overflow:hidden;padding:1rem 1.5rem;position:relative;transition:all .3s ease}.btn:active{transform:scale(.98)}.btn-primary{background:var(--primary-gradient);box-shadow:var(--shadow-md);overflow:hidden;position:relative}.btn-primary:before{background:linear-gradient(90deg,#0000,#ffffff4d,#0000);content:"";height:100%;left:-100%;position:absolute;top:0;transition:left .5s;width:100%}.btn-primary:active:before{left:100%}.btn-primary:active{box-shadow:var(--shadow-lg);transform:scale(.98)}.btn-secondary{border:2px solid #e2e8f0;color:#4a5568}.btn-secondary:active{background:#677eea1a;border-color:#0077be;color:#0077be}.btn-outline{background:#0000;border:2px solid #0077be;color:#0077be}.btn-outline:active{background:#0077be;color:#fff}.btn.generating{opacity:.7}.btn.generating:active{transform:none}.mini-spinner{border:2px solid #0000;border-top-color:currentcolor;margin-left:.5rem}.features{margin-bottom:2rem}.features-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:1fr}.feature-card{background:#fff;border:1px solid #e5e7eb;border-radius:var(--radius-lg);box-shadow:0 2px 8px #0000000f;padding:1.5rem;text-align:center;transition:all var(--transition-normal)}.feature-card:active{border-color:var(--primary-light);box-shadow:0 4px 12px #0000001a;transform:scale(.98)}.feature-card h3{color:#2d3748;font-size:1.2rem;font-weight:600;margin:0 0 .5rem}.feature-card p{color:#718096;font-size:.9rem;line-height:1.4;margin:0}.card{border-radius:var(--radius-xl);box-shadow:0 2px 8px #0000000f;overflow:hidden;position:relative;transition:all var(--transition-normal)}.card:before{background:var(--primary-gradient);content:"";height:3px;left:0;position:absolute;right:0;top:0}.card:active{border-color:var(--primary-light);box-shadow:0 4px 12px #0000001a;transform:scale(.99)}.form-group{margin-bottom:1.5rem}.form-label{color:#2d3748;font-size:.95rem}.form-input{background:#fff;border:2px solid #e2e8f0;box-sizing:border-box;color:#2d3748;font-size:1rem;min-height:48px;padding:1rem;transition:all .3s ease}.form-input:focus{border-color:#0077be;box-shadow:0 0 0 3px #677eea1a}.form-textarea{font-family:inherit}.character-count{font-size:.85rem;margin-top:.5rem}.character-count span{color:#718096}.character-count span.warning{color:#ed8936;font-weight:600}.character-count span.over-limit{color:#e53e3e;font-weight:600}.limit-message{color:#718096}.limit-message,.warning-message{display:block;font-size:.8rem;margin-top:.25rem}.warning-message{color:#ed8936;font-weight:600}.card h3{color:#2d3748;font-size:1.3rem;line-height:1.3;margin:0 0 .5rem}.card h4{color:#718096;font-size:1rem;font-weight:500;margin:0 0 1rem}.card p{color:#4a5568;font-size:.95rem;line-height:1.5;margin:0 0 1.5rem}.book-quality-info{background:#f7fafc;border-left:4px solid #0077be;border-radius:12px;margin-bottom:1.5rem;padding:1rem}.book-quality-info h4{color:#2d3748;font-size:1rem;font-weight:600;margin:0 0 .75rem}.book-quality-info ul{color:#4a5568;font-size:.9rem;line-height:1.5;margin:0;padding-left:1.25rem}.book-quality-info li{margin-bottom:.5rem}.difficulty-buttons h4{color:#2d3748;font-size:1.1rem;font-weight:600;margin:0 0 1rem;text-align:center}.btn-group{grid-gap:.75rem;display:grid;gap:.75rem;grid-template-columns:1fr 1fr;margin-bottom:1rem}.btn-group .btn{font-size:.9rem;padding:.875rem 1rem;position:relative}.test-generation{border-top:1px solid #e2e8f0;padding-top:1.5rem}.test-generation h4{color:#2d3748;font-size:1.1rem;font-weight:600;margin:0 0 1rem;text-align:center}.test-btn{margin-bottom:.75rem;width:100%}.delete-button{border-top:1px solid #e2e8f0;padding-top:1.5rem;text-align:center}.btn-delete-small{background:#fed7d7;border:2px solid #feb2b2;border-radius:12px;color:#c53030;cursor:pointer;font-size:.9rem;font-weight:600;min-height:48px;padding:.75rem 1.5rem;transition:all .3s ease}.btn-delete-small:active{background:#fca5a5;border-color:#f56565;transform:scale(.98)}.modal-overlay{animation:fadeIn .3s ease;z-index:9999}.modal-content{animation:slideUp .3s ease;background:#fff;border-radius:20px;box-shadow:0 20px 40px #0003;max-width:500px;overflow-y:auto;width:100%}.modal-header{border-bottom:1px solid #e2e8f0}.modal-header h3{font-size:1.3rem;font-weight:600}.modal-close{color:#a0aec0;min-height:40px;min-width:40px}.modal-close:active{background:#677eea1a;color:#0077be;transform:scale(.95)}.modal-footer{border-top:1px solid #e2e8f0;text-align:center}.test-result-section{margin-bottom:1.5rem}.test-result-section h4{color:#2d3748;font-size:1.1rem;font-weight:600;margin:0 0 1rem}.test-result-section p{color:#4a5568;line-height:1.5;margin:0 0 .5rem}.sample-question{background:#f7fafc;border-left:4px solid #0077be;border-radius:12px;margin-bottom:1rem;padding:1rem}.sample-question h5{color:#2d3748;font-size:1rem;font-weight:600;margin:0 0 .75rem}.options{gap:.5rem}.options div{background:#fff;border:1px solid #e2e8f0;border-radius:8px;color:#4a5568;font-size:.9rem;padding:.75rem}.loading-overlay{-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#ffffffe6;z-index:9999}.loading-message{color:#4a5568;font-size:1.1rem;font-weight:600;margin-bottom:1rem}.generating-details{color:#718096;font-size:.9rem;line-height:1.5;max-width:300px;text-align:center}.generating-item{background:#677eea1a;color:#0077be;display:inline-block;font-size:.8rem;font-weight:500;margin:.25rem;padding:.5rem 1rem}@media (min-width:768px){.container{padding:1.5rem}.page-header h1{font-size:2.2rem}.page-header p{font-size:1.1rem}.features-grid{gap:1.5rem;grid-template-columns:1fr 1fr}.books-grid{gap:2rem;grid-template-columns:repeat(2,1fr)}.btn-group{grid-template-columns:repeat(4,1fr)}.test-generation .btn-group{grid-template-columns:repeat(3,1fr)}.modal-content{max-width:600px}}@media (min-width:1024px){.container{padding:2rem}.page-header h1{font-size:2.5rem}.books-grid,.features-grid{grid-template-columns:repeat(3,1fr)}.card:hover,.feature-card:hover{border-color:#0077be;box-shadow:0 12px 35px #00000026;transform:translateY(-3px)}.btn:hover{transform:translateY(-2px)}.btn-primary:hover{box-shadow:0 6px 20px #677eea66}}@media (prefers-contrast:high){.btn,.card,.feature-card,.form-input{border:2px solid #2d3748}}@media (hover:none) and (pointer:coarse){.btn:hover,.card:hover,.feature-card:hover{box-shadow:0 6px 20px #00000014;transform:none}}.quiz-container{background:linear-gradient(135deg,#f5f7fa,#c3cfe2);font-size:16px;min-height:100vh;padding:1rem;width:100%}.book-title-container{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffffe6;border:1px solid #fff3;border-radius:16px;box-shadow:0 4px 20px #1f268726;margin:0 auto 1.5rem;max-width:800px;padding:1rem 1.5rem;text-align:center}.current-book-title{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#1e3a8a,#3b82f6);-webkit-background-clip:text;background-clip:text;color:#1e3a8a;font-size:1.3rem;font-weight:700;line-height:1.3;margin:0}.quiz-header{-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);background:#fffffff2;border:1px solid #ffffff2e;border-radius:20px;box-shadow:0 8px 32px #1f268733;margin:0 auto 1.5rem;max-width:800px;padding:1.5rem}.progress-bar{background-color:#e2e8f0;border-radius:6px;box-shadow:inset 0 2px 4px #0000001a;height:12px;margin-bottom:1.5rem;width:100%}.progress-fill{background:linear-gradient(90deg,#0077be,#003f7f);border-radius:6px;box-shadow:0 0 10px #0077be80;transition:width .6s ease}.quiz-meta{align-items:center;display:flex;flex-direction:row;justify-content:space-between;text-align:center}.quiz-meta .difficulty-badge{margin-left:10px}.progress-text{color:#2d3748;font-size:.8rem;font-weight:700;order:1}.quiz-meta-badges{display:flex;flex-wrap:wrap;gap:1rem;justify-content:center;order:2}.difficulty-badge{border-radius:25px;box-shadow:0 4px 15px #0000001a;font-size:.9rem;font-weight:700;padding:.75rem 1.25rem;white-space:nowrap}.difficulty-easy{background:#0077be;border-bottom:3px solid #003f7f;color:#fff}.difficulty-normal{background:#ffc800;border-bottom:3px solid #f4a000;color:#fff}.difficulty-hard{background:#ff4b4b;border-bottom:3px solid #ea2b2b;color:#fff}.difficulty-demo{background:#1cb0f6;border-bottom:3px solid #1899d6;color:#fff}.timer{background:linear-gradient(135deg,#f7fafc,#edf2f7);border:2px solid #e2e8f0;border-radius:25px;box-shadow:0 4px 15px #0000001a;color:#2d3748;font-size:1rem;font-weight:700;padding:.75rem 1.25rem}.question-card{background:#fff;border:3px solid #0000;border-radius:24px;box-shadow:0 12px 40px #00000026;margin-bottom:2rem;padding:2rem 1.5rem}.question-card:before{background:linear-gradient(90deg,#0077be,#003f7f);content:"";height:6px;left:0;position:absolute;right:0;top:0}.question-header{border-bottom:2px solid #f7fafc;display:flex;flex-direction:column;gap:1rem;text-align:center}.question-type-badge{align-self:center;background:linear-gradient(135deg,#0077be,#003f7f);border-radius:25px;box-shadow:0 6px 20px #677eea66;font-size:1rem;font-weight:700;letter-spacing:.5px;padding:.75rem 1.5rem;text-transform:uppercase}.question-text{background:#677eea0d;border-radius:16px;font-size:1.4rem;font-weight:600;line-height:1.7;margin-bottom:2.5rem;padding:1rem;text-align:center}.hints-section{background:linear-gradient(135deg,#f0f4ff,#e0e9ff);border:2px solid #8b9cff;border-radius:12px;box-shadow:0 4px 12px #8b9cff2e;margin:1rem 0;padding:.7rem .7rem .5rem}.hints-header h4{color:#1e3a8a;font-size:1.1rem;font-weight:700;letter-spacing:.5px;margin:0 0 .7rem;text-align:center;text-transform:uppercase}.hints-buttons{flex-direction:row;gap:.5rem;margin-bottom:1rem}.hint-button,.hints-buttons{align-items:center;display:flex;justify-content:center}.hint-button{background:#fff;border:2px solid #0077be;border-radius:8px;box-shadow:0 2px 6px #677eea1f;color:#1e3a8a;cursor:pointer;font-size:.9rem;font-weight:700;min-height:36px;min-width:50px;padding:.5rem .8rem;transition:all .3s ease}.hints-content-area{display:flex;flex-direction:column;gap:.8rem;margin-top:.5rem}.hint-button:active{background:#0077be;box-shadow:0 6px 20px #677eea66;color:#fff;transform:scale(.98)}.hint-button:disabled{cursor:not-allowed;opacity:.6;transform:none}.hint-content{align-items:center;animation:slideDown .4s ease;background:#fff;border:1.5px solid #0077be;border-radius:10px;box-shadow:0 2px 8px #677eea1f;color:#1e3a8a;display:flex;font-size:.95rem;font-weight:500;gap:.5rem;line-height:1.4;padding:.8rem 1rem;width:100%}.hint-label{color:#0077be;flex-shrink:0;font-weight:700;margin-right:.3rem}.hint-text{flex:1 1}.hint-icon{font-size:1.1em;margin-right:.5rem}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.options{display:flex;flex-direction:column;gap:1rem;margin-bottom:2rem}.option{align-items:center;background:#fff;border:3px solid #e2e8f0;border-radius:16px;box-shadow:0 4px 15px #00000014;color:#4a5568;cursor:pointer;display:flex;font-size:1.1rem;font-weight:600;min-height:64px;overflow:hidden;padding:1.5rem;position:relative;text-align:left}.option,.option:before{transition:all .3s ease}.option:before{background:#0000;bottom:0;content:"";left:0;position:absolute;top:0;width:6px}.option:active{box-shadow:0 6px 20px #0000001f;transform:scale(.98)}.option.selected{background:#0077be1a;border-color:#0077be;box-shadow:0 8px 25px #0077be4d;color:#0077be;transform:scale(1.02)}.option.selected:before{background:#0077be}.option.correct{animation:correctPulse .6s ease;background:#58cc021a;border-color:#58cc02;color:#3c3c3c}.option.correct:before{background:#58cc02}@keyframes correctPulse{0%{transform:scale(1)}25%{box-shadow:0 0 40px #58cc02cc;transform:scale(1.1)}50%{transform:scale(.98)}75%{box-shadow:0 0 30px #58cc0299;transform:scale(1.05)}to{transform:scale(1)}}.option.correct:after{animation:sparkle 1s ease infinite;content:"✨";font-size:2rem;position:absolute;right:20px;top:50%;transform:translateY(-50%)}@keyframes sparkle{0%,to{opacity:1;transform:translateY(-50%) scale(1)}50%{opacity:.5;transform:translateY(-50%) scale(1.2)}}.option.incorrect{animation:incorrectShake .6s ease;background:#ff4b4b1a;border-color:#ff4b4b;color:#3c3c3c}.option.incorrect:before{background:#ff4b4b}.option.incorrect:after{animation:fadeIn .3s ease;content:"❌";font-size:1.5rem;position:absolute;right:20px;top:50%;transform:translateY(-50%)}@keyframes incorrectShake{0%,to{transform:translateX(0)}10%,30%,50%,70%,90%{transform:translateX(-10px)}20%,40%,60%,80%{transform:translateX(10px)}}.answer-buttons{display:flex;flex-direction:column;gap:1rem;margin-top:2rem}.next-question,.submit-answer{align-items:center;border:none;border-radius:16px;cursor:pointer;display:flex;font-size:1.1rem;font-weight:700;gap:.75rem;justify-content:center;letter-spacing:.5px;min-height:56px;padding:1.25rem 2rem;text-transform:uppercase;transition:all .3s ease}.submit-answer{background:#0077be;border-bottom:4px solid #003f7f;border-radius:var(--radius-md);box-shadow:0 4px 0 #00000026;color:#fff}.submit-answer:active{border-bottom:2px solid #003f7f;box-shadow:0 2px 0 #00000026;transform:translateY(2px)}.submit-answer:disabled{background:#afafaf;border-bottom:4px solid #777;cursor:not-allowed;opacity:.5;transform:none}.next-question{background:#0077be;border-bottom:4px solid #003f7f;border-radius:var(--radius-md);box-shadow:0 4px 0 #00000026;color:#fff}.next-question:active{border-bottom:2px solid #003f7f;box-shadow:0 2px 0 #00000026;transform:translateY(2px)}.question-stats{display:flex;flex-direction:row;gap:2rem;justify-content:center;margin:1rem 0}.stat-item{align-items:center;display:flex;flex-direction:column;gap:2px}.stat-label{color:#a0aec0;font-size:.75rem;font-weight:600;letter-spacing:.4px;text-transform:uppercase}.stat-value{color:#4a5568;font-size:1rem;font-weight:700}.feedback-section{animation:fadeInUp .5s ease;border-radius:20px;box-shadow:0 8px 25px #0000001a;margin-top:2rem;padding:2rem;text-align:center}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.feedback-section.correct{animation:celebrationBounce .8s ease;background:#d7ffb8;border:4px solid #58cc02;border-radius:var(--radius-lg);color:#3c3c3c;overflow:hidden;position:relative}@keyframes celebrationBounce{0%{opacity:0;transform:scale(.8)}50%{transform:scale(1.05)}to{opacity:1;transform:scale(1)}}.feedback-section.correct:before{animation:float 2s ease-in-out infinite;content:"🎉";font-size:3rem;left:20px;position:absolute;top:10px}.feedback-section.correct:after{animation:float 2s ease-in-out infinite reverse;content:"🎉";font-size:3rem;position:absolute;right:20px;top:10px}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.feedback-section.correct h3{animation:textPulse 1s ease infinite;color:#58cc02;font-size:2.5rem}@keyframes textPulse{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}.feedback-section.incorrect{animation:errorAppear .6s ease;background:#ffd6d6;border:4px solid #ff4b4b;border-radius:var(--radius-lg);color:#3c3c3c}@keyframes errorAppear{0%{opacity:0;transform:scale(.9)}20%,40%,60%,80%{transform:translateX(-5px)}30%,50%,70%,90%{transform:translateX(5px)}to{opacity:1;transform:scale(1)}}.feedback-section.incorrect h3{color:#ff4b4b;font-size:2rem}.feedback-section h3{font-size:1.5rem;font-weight:700;letter-spacing:.5px;margin:0 0 1rem;text-transform:uppercase}.feedback-section p{font-size:1.1rem;font-weight:600;line-height:1.5;margin:0}.essay-input{background:#fff;border:3px solid #e2e8f0;border-radius:16px;box-sizing:border-box;color:#2d3748;font-family:inherit;font-size:1.1rem;line-height:1.6;margin-bottom:1rem;min-height:150px;padding:1.5rem;resize:vertical;transition:all .3s ease;width:100%}.essay-input:focus{border-color:#0077be;box-shadow:0 0 0 4px #677eea33;outline:none}.essay-input::placeholder{color:#a0aec0;font-style:italic}.character-count{color:#718096;font-size:.9rem;font-weight:600;margin-bottom:1rem;text-align:right}.quiz-complete{animation:quizCompleteAppear 1s ease;background:#fff;border-radius:24px;box-shadow:0 12px 40px #00000026;margin-bottom:2rem;overflow:hidden;padding:3rem 2rem;position:relative;text-align:center}@keyframes quizCompleteAppear{0%{opacity:0;transform:scale(.8) translateY(50px)}50%{transform:scale(1.05)}to{opacity:1;transform:scale(1) translateY(0)}}.quiz-complete:before{animation:rotate 3s linear infinite;content:"🎊";font-size:4rem;left:20px;position:absolute;top:20px}.quiz-complete:after{animation:bounce 2s ease-in-out infinite;content:"🏆";font-size:4rem;position:absolute;right:20px;top:20px}@keyframes rotate{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.quiz-complete h2{animation:textBounce 1s ease infinite;color:#0077be;font-size:2.5rem;font-weight:900;margin:0 0 1rem}@keyframes textBounce{0%,to{transform:scale(1)}50%{transform:scale(1.08)}}.score-display{animation:scoreReveal 1.2s ease;color:#0077be;font-size:4rem;font-weight:900;margin:1.5rem 0;text-shadow:0 4px 8px #0077be66}@keyframes scoreReveal{0%{opacity:0;transform:scale(0)}50%{transform:scale(1.2)}to{opacity:1;transform:scale(1)}}.quiz-actions{display:flex;flex-direction:column;gap:1rem;margin-top:2rem}.quiz-actions button{border:none;border-radius:16px;cursor:pointer;font-size:1.1rem;font-weight:700;min-height:56px;padding:1.25rem 2rem;transition:all .3s ease}.primary-action{background:linear-gradient(135deg,#0077be,#003f7f);box-shadow:0 6px 20px #677eea66;color:#fff}.primary-action:active{box-shadow:0 8px 25px #677eea80;transform:scale(.98)}.secondary-action{background:#fff;border:3px solid #e2e8f0;box-shadow:0 4px 15px #00000014;color:#4a5568}.secondary-action:active{background:#677eea1a;border-color:#0077be;color:#0077be;transform:scale(.98)}.quiz-loading{align-items:center;display:flex;flex-direction:column;justify-content:center;min-height:60vh;padding:2rem;text-align:center}.loading-spinner{animation:spin 1.2s linear infinite;border:4px solid #e2e8f0;margin-bottom:2rem}.loading-text{color:#4a5568;font-size:1.3rem;font-weight:600;margin-bottom:1rem}.loading-subtitle{color:#718096;font-size:1rem;line-height:1.6}.quiz-error{background:#fff;border-radius:24px;box-shadow:0 12px 40px #00000026;margin-bottom:2rem;padding:3rem 2rem;text-align:center}.quiz-error h2{color:#e53e3e;font-size:1.5rem;margin-bottom:1rem}.quiz-error p{color:#718096;line-height:1.6;margin-bottom:2rem}@media (min-width:768px){.quiz-container{margin:0 auto;max-width:900px;padding:2rem}.quiz-header{padding:2rem}.book-title-container{margin-bottom:1.5rem;padding:1.25rem 2rem}.current-book-title{font-size:1.5rem}.quiz-meta{align-items:center;flex-direction:row;justify-content:space-between;text-align:left}.quiz-meta-badges{justify-content:flex-end}.question-card{padding:2.5rem}.question-header{align-items:center;flex-direction:row;justify-content:space-between;text-align:left}.question-text{font-size:1.5rem;text-align:left}.hints-buttons{flex-direction:row;gap:1rem;justify-content:center;margin-bottom:1.2rem}.hint-button{min-width:60px;padding:.6rem 1rem}.options{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:1fr 1fr}.answer-buttons{flex-direction:row;justify-content:center}.answer-buttons button{flex:0 0 auto;min-width:200px}.quiz-actions{flex-direction:row;justify-content:center}.quiz-actions button{flex:0 0 auto;min-width:200px}}@media (min-width:1024px){.quiz-container{max-width:1000px;padding:2.5rem}.book-title-container{margin-bottom:2rem;padding:1.5rem 2.5rem}.current-book-title{font-size:1.7rem}.question-text{font-size:1.6rem}.option{font-size:1.2rem}.option:hover{box-shadow:0 8px 25px #00000026;transform:translateY(-2px)}.hint-button:hover{box-shadow:0 6px 20px #ed89364d}.hint-button:hover,.next-question:hover,.primary-action:hover,.secondary-action:hover,.submit-answer:hover{transform:translateY(-2px)}.secondary-action:hover{box-shadow:0 6px 20px #0000001f}}@media (prefers-contrast:high){.hint-button,.option,.question-card{border:3px solid #2d3748}}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}@media (hover:none) and (pointer:coarse){.hint-button:hover,.next-question:hover,.option:hover,.primary-action:hover,.secondary-action:hover,.submit-answer:hover{box-shadow:0 6px 20px #00000014;transform:none}}.essay-input:focus,.hint-button:focus,.next-question:focus,.option:focus,.submit-answer:focus{outline:3px solid #0077be;outline-offset:2px}@media (prefers-color-scheme:dark){.quiz-container{background:linear-gradient(135deg,#1a202c,#2d3748)}.question-card,.quiz-complete,.quiz-error,.quiz-header{background:#2d3748;color:#f7fafc}.question-text{color:#f7fafc}}.container{margin:0 auto;max-width:1200px;padding:1rem}.admin-header{border-bottom:1px solid #e5e7eb;flex-direction:column;gap:1rem;margin-bottom:1.5rem;padding-bottom:1rem;text-align:center}.admin-header h1{color:#111827;font-size:1.75rem;font-weight:700}.admin-actions{flex-direction:column;gap:.75rem;width:100%}.admin-actions .btn{font-size:.875rem;font-weight:600;min-height:48px;padding:.875rem 1.5rem}.admin-tabs{background:#f8fafc;border:1px solid #e5e7eb;border-radius:16px;flex-direction:column;gap:.75rem;margin-bottom:1.5rem;padding:1rem}.tab-button{align-items:center;background:#fff;border:1px solid #d1d5db;border-radius:12px;box-shadow:0 1px 3px #0000001a;color:#374151;display:flex;font-size:.875rem;font-weight:600;justify-content:center;min-height:48px;padding:1rem;text-align:center;width:100%}.tab-button:active,.tab-button:hover{background:#f3f4f6;border-color:#9ca3af;transform:translateY(-1px)}.tab-button.active{background:linear-gradient(135deg,#0077be,#003f7f);border-color:#0077be;box-shadow:0 4px 14px #667eea4d;color:#fff}.card{background:#fff;border:1px solid #e5e7eb;border-radius:16px;box-shadow:0 1px 3px #0000001a;padding:1.5rem}.card h3{color:#111827;font-size:1.25rem;font-weight:600;margin:0 0 1rem}.form-input,.form-select{background:#fff;border:1px solid #d1d5db;border-radius:12px;box-shadow:0 1px 3px #0000001a;box-sizing:border-box;font-size:1rem;padding:.875rem 1rem;transition:all .2s ease;width:100%}.form-input:focus,.form-select:focus{border-color:#0077be;box-shadow:0 0 0 3px #667eea1a;outline:none;transform:translateY(-1px)}.btn{align-items:center;border:none;border-radius:12px;cursor:pointer;display:inline-flex;font-size:.875rem;font-weight:600;justify-content:center;min-height:44px;padding:.75rem 1.5rem;text-decoration:none;transition:all .2s ease}.btn-primary{background:linear-gradient(135deg,#0077be,#003f7f);box-shadow:0 4px 14px #667eea4d;color:#fff}.btn-primary:active,.btn-primary:hover{box-shadow:0 6px 20px #667eea66;transform:translateY(-1px)}.btn-secondary{background:#fff;border:1px solid #d1d5db;box-shadow:0 1px 3px #0000001a;color:#374151}.btn-secondary:active,.btn-secondary:hover{background:#f9fafb;border-color:#9ca3af;transform:translateY(-1px)}.btn-sm{min-height:36px;padding:.5rem 1rem}@media (min-width:768px){.container{padding:1.5rem}.admin-header{align-items:center;flex-direction:row;justify-content:space-between;text-align:left}.admin-header h1{font-size:2rem}.admin-actions{flex-direction:row;max-width:300px;width:auto}.admin-tabs{flex-direction:row;flex-wrap:wrap;justify-content:center}.tab-button{flex:1 1;max-width:200px;min-width:140px}.card{padding:2rem}}@media (min-width:1024px){.container{padding:2rem}.admin-header h1{font-size:2.25rem}.admin-tabs{flex-wrap:nowrap}}.books-management{width:100%}.page-header{-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);background:#ffffffe6;border-radius:20px;box-shadow:0 8px 32px #1f268733;margin-bottom:0;padding:.5rem}.page-header h2{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#0077be,#003f7f);-webkit-background-clip:text;background-clip:text;color:#2d3748;font-size:1.8rem;font-weight:700;margin:0 0 .5rem}.page-description{color:#718096;font-size:1rem;line-height:1.5;margin:0}.books-grid{grid-gap:1.5rem;gap:1.5rem;grid-template-columns:1fr}.book-header{border-bottom:2px solid #f7fafc}.book-header h3{color:#2d3748;font-size:1.3rem;font-weight:600;line-height:1.3;margin:0 0 .5rem}.book-header p{color:#718096;font-size:1rem;margin:0}.book-info{background:#f7fafc;border-left:4px solid #0077be;border-radius:12px;padding:4px}.book-info p{color:#4a5568;font-size:.9rem;line-height:1.4;margin:0 0 .5rem}.book-info p:last-child{margin-bottom:0}.admin-actions{margin-top:1.5rem}.admin-actions h4{color:#2d3748;font-size:1.1rem;font-weight:600;margin:0 0 1rem}.admin-actions .btn-group{display:flex;flex-direction:column;gap:.8rem;margin-bottom:1rem}.admin-actions .btn{border:none;border-radius:12px;cursor:pointer;font-size:.95rem;font-weight:500;padding:1rem;text-align:center;transition:all .3s ease;width:100%}.admin-actions .btn:hover{box-shadow:0 8px 25px #00000026;transform:translateY(-2px)}.admin-actions .btn:disabled{cursor:not-allowed;opacity:.6;transform:none}.admin-actions .btn.btn-info{background:linear-gradient(135deg,#4299e1,#3182ce);color:#fff}.admin-actions .btn.btn-warning{background:linear-gradient(135deg,#ed8936,#dd6b20);color:#fff}.admin-actions .btn.btn-secondary{background:linear-gradient(135deg,#718096,#4a5568);color:#fff}.admin-info{background:#edf2f7;border-left:4px solid #48bb78;border-radius:12px;margin-top:1rem;padding:1rem}.admin-info .info-text{color:#4a5568;font-size:.9rem;line-height:1.4;margin:0}.empty-state{background:#ffffffe6;border-radius:20px;box-shadow:0 8px 32px #1f268733;padding:3rem 1rem}.empty-state h3{color:#2d3748;font-size:1.3rem;font-weight:600;margin:0 0 .5rem}.empty-state p{color:#718096;font-size:1rem;margin:0}@media (min-width:768px){.books-grid{grid-template-columns:repeat(auto-fit,minmax(400px,1fr))}.admin-actions .btn-group{flex-direction:row;gap:1rem}.admin-actions .btn{flex:1 1;width:auto}}@media (min-width:1024px){.books-grid{grid-template-columns:repeat(auto-fit,minmax(450px,1fr))}}.loading-center{padding:2rem;text-align:center}.loading-spinner{border:4px solid #f3f4f6;border-top-color:#0077be;height:40px;width:40px}.loading-spinner.large{border-width:5px;height:60px;margin-bottom:2rem;width:60px}.question-bank-loading{margin:0 auto;max-width:500px}.question-bank-loading h3{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#0077be,#003f7f);-webkit-background-clip:text;background-clip:text;color:#2d3748;font-size:1.5rem;font-weight:700;margin:0 0 1rem}.question-bank-loading>p{color:#718096;font-size:1.1rem;line-height:1.5;margin:0 0 2rem}.loading-steps{background:#667eea0d;border:1px solid #667eea1a;border-radius:16px;display:flex;flex-direction:column;gap:.75rem;margin:2rem 0;padding:1.5rem}.loading-steps .step{align-items:center;animation:stepPulse 3s ease-in-out infinite;background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000000d;color:#4a5568;display:flex;font-size:.95rem;font-weight:500;justify-content:center;padding:.75rem 1rem}.loading-steps .step:first-child{animation-delay:0s}.loading-steps .step:nth-child(2){animation-delay:.5s}.loading-steps .step:nth-child(3){animation-delay:1s}.loading-steps .step:nth-child(4){animation-delay:1.5s}@keyframes stepPulse{0%,70%,to{opacity:.7;transform:scale(1)}35%{opacity:1;transform:scale(1.02)}}.question-bank-loading small{color:#a0aec0;display:block;font-size:.9rem;font-style:italic;margin-top:1.5rem}@media (max-width:768px){.question-bank-loading{max-width:100%;padding:0 1rem}.question-bank-loading h3{font-size:1.3rem}.loading-steps{gap:.5rem;padding:1rem}.loading-steps .step{font-size:.9rem;padding:.6rem .8rem}}.modal-overlay{background:#0009;overflow-y:auto}.modal{animation:modalSlideIn .3s ease;box-shadow:0 20px 60px #0000004d;max-width:600px}@keyframes modalSlideIn{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.book-form-modal{max-width:700px}.modal-header{border-bottom:1px solid #e5e7eb}.modal-header h3{color:#111827;font-size:1.5rem;font-weight:700}.modal-close{border-radius:8px;color:#6b7280;font-size:1.75rem;line-height:1;min-height:auto;padding:.25rem .5rem;transition:all .2s}.modal-close:hover{background:#f3f4f6;color:#111827}.modal-content{display:flex;flex-direction:column;max-height:90vh;padding:0}.modal-actions{border-top:1px solid #e5e7eb;gap:.75rem;margin-top:1.5rem;padding-top:1.5rem}.modal-actions .btn{border-radius:12px;flex:1 1;font-size:.875rem;font-weight:600;min-height:48px;padding:.875rem 1.5rem}.form-group{margin-bottom:1.25rem}.form-label{color:#374151;display:block;font-size:.875rem;font-weight:600;margin-bottom:.5rem}.form-input{border:2px solid #e5e7eb;border-radius:12px;font-family:inherit;font-size:.875rem;padding:.75rem 1rem;resize:vertical;transition:all .2s;width:100%}.form-input:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a;outline:none}.form-input::placeholder{color:#9ca3af}.form-input[type=textarea]{min-height:100px}.modal-body{max-height:60vh;overflow-y:auto;padding:1.5rem}.modal-body .form-group{margin-bottom:1.25rem}.modal-body .form-group label{color:#374151;display:block;font-size:.875rem;font-weight:600;margin-bottom:.5rem}.modal-body .form-control{border:1px solid #d1d5db;border-radius:8px;font-size:.875rem;padding:.75rem;transition:border-color .2s,box-shadow .2s;width:100%}.modal-body .form-control:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a;outline:none}.modal-footer{background:#f9fafb;border-radius:0 0 12px 12px;border-top:1px solid #e5e7eb;display:flex;gap:.75rem;padding:1rem 1.5rem}.modal-footer .btn{border-radius:8px;flex:1 1;font-weight:600;padding:.75rem 1.5rem;transition:all .2s}.modal-footer .btn:disabled{cursor:not-allowed;opacity:.5}@media (min-width:768px){.modal{max-height:85vh}.modal-actions .btn,.modal-footer .btn{flex:initial;min-width:120px}}.lang-settings-card{overflow:hidden;padding:0}.lang-current-section{align-items:center;background:#f0f6ff;display:flex;justify-content:space-between;padding:20px 24px}.lang-current-info{align-items:center;display:flex;gap:12px}.lang-current-flag{font-size:2rem;line-height:1}.lang-current-label{color:#718096;font-size:.75rem;margin-bottom:2px}.lang-current-name{color:#2d3748;font-size:1.1rem;font-weight:700}.lang-current-hint{background:#0077be1a;border-radius:20px;color:#0077be;font-size:.78rem;padding:4px 10px;white-space:nowrap}.lang-divider{background:#e2e8f0;height:1px}.lang-bilingual-section{display:flex;flex-direction:column;gap:24px;padding:24px}.lang-bilingual-header{align-items:flex-start;display:flex;gap:16px;justify-content:space-between}.lang-bilingual-title-group{align-items:flex-start;display:flex;gap:12px}.lang-bilingual-icon{flex-shrink:0;font-size:1.6rem;line-height:1;margin-top:2px}.lang-bilingual-title{color:#2d3748;font-size:1.05rem;font-weight:700;margin-bottom:4px}.lang-bilingual-desc{color:#718096;font-size:.85rem;line-height:1.5}.lang-secondary-section{display:flex;flex-direction:column;gap:10px}.lang-secondary-label{color:#4a5568;font-size:.88rem;font-weight:600}.lang-secondary-hint{color:#a0aec0;font-weight:400}.lang-btn-grid{grid-gap:10px;display:grid;gap:10px;grid-template-columns:repeat(2,1fr)}.lang-btn{align-items:center;background:#fff;border:2px solid #e2e8f0;border-radius:12px;color:#4a5568;cursor:pointer;display:flex;font-size:.95rem;font-weight:600;gap:8px;padding:12px 14px;position:relative;transition:all .2s ease}.lang-btn:hover:not(.lang-btn--disabled){background:#0077be0d;border-color:#0077be;color:#0077be}.lang-btn--active{background:#0077be;border-color:#0077be;color:#fff}.lang-btn--active:hover{background:#003f7f!important;border-color:#003f7f!important;color:#fff!important}.lang-btn--disabled{background:#f7f7f7;cursor:not-allowed;opacity:.45}.lang-btn-flag{font-size:1.3rem;line-height:1}.lang-btn-name{flex:1 1;text-align:left}.lang-btn-tag{background:#e2e8f0;border-radius:10px;color:#718096;font-size:.68rem;font-weight:700;padding:2px 6px}.lang-preview{border-radius:12px;padding:16px 18px;transition:all .3s ease}.lang-preview--on{background:#0077be0f;border:1.5px solid #0077be40}.lang-preview--off{background:#f8f9fa;border:1.5px dashed #cbd5e0}.lang-preview-label{color:#718096;font-size:.78rem;font-weight:700;letter-spacing:.5px;margin-bottom:10px;text-transform:uppercase}.lang-preview--on .lang-preview-label{color:#0077be}.lang-preview-items{display:flex;flex-direction:column;gap:8px}.lang-preview-item{align-items:center;color:#2d3748;display:flex;flex-wrap:wrap;font-size:.95rem;font-weight:600;gap:6px}.lang-preview-icon{font-size:1rem}.lang-preview-secondary{color:#718096;font-size:.85rem;font-weight:400}.lang-preview-trans{color:#0077be;font-weight:600}@media (max-width:480px){.lang-current-section{align-items:flex-start;flex-direction:column;gap:8px}.lang-bilingual-header{flex-direction:row}.lang-preview-item{align-items:flex-start;flex-direction:column}}.question-management{margin:0 auto;max-width:1200px;padding:1rem}.filters-card{background:#f8fafc;border:1px solid #e2e8f0;border-radius:16px;margin-bottom:1.5rem;padding:1rem}.filters-grid{gap:1rem;margin-bottom:1.5rem}.filter-group,.filters-grid{display:flex;flex-direction:column}.filter-group{gap:.5rem}.filter-group label{color:#374151;font-size:.875rem;font-weight:600;margin-left:.25rem}.filter-group input,.filter-group select{-webkit-appearance:none;appearance:none;background:#fff;border:1px solid #d1d5db;border-radius:12px;box-shadow:0 1px 3px #0000001a;box-sizing:border-box;font-size:1rem;max-width:100%;padding:.875rem 1rem;transition:all .2s ease;width:100%}.filter-group input:focus,.filter-group select:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;outline:none;transform:translateY(-1px)}.filter-group select{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3E%3Cpath stroke='%236b7280' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='m6 8 4 4 4-4'/%3E%3C/svg%3E");background-position:right .75rem center;background-repeat:no-repeat;background-size:1.5em 1.5em;padding-right:2.5rem}.filter-actions{display:flex;flex-direction:column;gap:.75rem;margin-top:1rem}.filter-actions .btn{border:none;border-radius:12px;cursor:pointer;font-size:1rem;font-weight:600;min-height:48px;padding:.875rem 1.5rem;transition:all .2s ease;width:100%}.filter-actions .btn-primary{background:linear-gradient(135deg,#667eea,#764ba2);box-shadow:0 4px 14px #667eea4d;color:#fff}.filter-actions .btn-primary:active,.filter-actions .btn-primary:hover{box-shadow:0 6px 20px #667eea66;transform:translateY(-1px)}.filter-actions .btn-secondary{background:#fff;border:1px solid #d1d5db;box-shadow:0 1px 3px #0000001a;color:#374151}.filter-actions .btn-secondary:active,.filter-actions .btn-secondary:hover{background:#f9fafb;border-color:#9ca3af;transform:translateY(-1px)}@media (min-width:768px){.filters-card,.question-management{padding:1.5rem}.filters-grid{grid-gap:1.25rem;display:grid;gap:1.25rem;grid-template-columns:1fr 1fr}.filter-actions{flex-direction:row;justify-content:center;margin:1.5rem auto 0;max-width:400px}.filter-actions .btn{flex:1 1;max-width:180px}}@media (min-width:1024px){.question-management{padding:2rem}.filters-grid{gap:1.5rem;grid-template-columns:repeat(3,1fr)}.filter-group input,.filter-group select{max-width:300px}}.statistics-card{background:linear-gradient(135deg,#667eea,#764ba2);border:none;color:#fff;margin-bottom:2rem}.statistics-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:1.5rem}.statistics-header h3{color:#fff;margin:0}.statistics-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.stat-card{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff1a;border-radius:8px;padding:1rem}.stat-card h4{font-size:1rem;margin:0 0 1rem;opacity:.9}.stat-details{display:flex;gap:1rem;justify-content:space-around}.stat-number{display:block;font-size:1.5rem;margin-bottom:.25rem}.stat-label{display:block;font-size:.8rem;opacity:.8}.bulk-actions-card{background:linear-gradient(135deg,#fef5e7,#fed7d7);border:2px solid #f6ad55;margin-bottom:2rem}.bulk-actions{display:flex;flex-wrap:wrap;gap:1rem;justify-content:center}.questions-card{background:#fff}.questions-header{border-bottom:2px solid #f7fafc;padding-bottom:1rem}.select-all{align-items:center;color:#4a5568;cursor:pointer;display:flex;font-weight:600;gap:.5rem}.select-all input{transform:scale(1.2)}.questions-list{display:flex;flex-direction:column;gap:1rem}.question-item{grid-gap:1rem;align-items:start;background:#fff;border:2px solid #e2e8f0;border-radius:12px;display:grid;gap:1rem;grid-template-columns:auto 1fr auto;padding:1.5rem;transition:all .3s ease}.question-item:hover{border-color:#667eea;box-shadow:0 4px 12px #0000001a;transform:translateY(-2px)}.question-select input{cursor:pointer;transform:scale(1.3)}.question-info{display:flex;flex-direction:column;gap:.75rem}.question-meta{align-items:center;display:flex;flex-wrap:wrap;gap:.75rem}.book-title{background:#e2e8f0;color:#2d3748}.book-title,.difficulty-badge,.status-badge{border-radius:12px;font-size:.8rem;font-weight:600;padding:.25rem .75rem}.status-badge.active{background:#c6f6d5;color:#22543d}.status-badge.inactive{background:#fed7d7;color:#c53030}.review-badge{border-radius:12px;font-size:.8rem;font-weight:600;padding:.25rem .75rem}.review-badge.reviewed{background:#bee3f8;color:#1a365d}.review-badge.pending{background:#fef5e7;color:#c05621}.language-badge{background:#e9d5ff;border-radius:12px;color:#6b21a8;font-size:.8rem;font-weight:600;padding:.25rem .75rem}.question-text{color:#2d3748;font-size:1rem;font-weight:500}.correct-answer{color:#48bb78;font-size:.9rem;font-weight:600}.question-date{color:#718096;font-size:.8rem}.question-actions{display:flex;flex-direction:column;gap:.5rem}.btn-sm{font-size:.8rem;min-width:40px;padding:.5rem .75rem}.btn-sm,.modal-overlay{align-items:center;display:flex;justify-content:center}.modal-overlay{background:#000000b3;bottom:0;left:0;min-height:100vh;min-height:100dvh;padding:1rem;position:fixed;right:0;top:0;z-index:1000}.modal{background:#fff;border-radius:16px;box-shadow:0 20px 40px #0000004d;max-height:90vh;max-width:700px;overflow-y:auto;width:100%}.question-edit-modal{max-width:800px}.modal-header{align-items:center;border-bottom:2px solid #f7fafc;display:flex;justify-content:space-between;padding:1.5rem}.modal-header h3{color:#2d3748;margin:0}.modal-close{background:none;border:none;border-radius:50%;color:#718096;cursor:pointer;font-size:1.5rem;padding:.5rem;transition:all .3s ease}.modal-close:hover{background:#f7fafc;color:#4a5568}.modal-content{padding:1.5rem}.form-row{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:1fr 1fr}.form-group{margin-bottom:1rem}.form-group label{color:#4a5568;display:block;font-weight:600;margin-bottom:.5rem}.form-group input[type=checkbox]{margin-right:.5rem;transform:scale(1.2)}.modal-actions{border-top:2px solid #f7fafc;display:flex;gap:1rem;justify-content:flex-end;padding:1.5rem}.btn-success{background:#48bb78}.btn-success:hover{background:#38a169;box-shadow:0 4px 12px #48bb7866;transform:translateY(-2px)}.btn-warning{background:#ed8936}.btn-warning:hover{background:#dd6b20;box-shadow:0 4px 12px #ed893666;transform:translateY(-2px)}.btn-info{background:#4299e1;border:none;color:#fff}.btn-info:hover{background:#3182ce;box-shadow:0 4px 12px #4299e166;transform:translateY(-2px)}@media (max-width:768px){.filters-grid{grid-template-columns:1fr}.filter-actions{align-items:stretch;flex-direction:column}.statistics-grid{grid-template-columns:1fr}.stat-details{justify-content:space-between}.bulk-actions{flex-direction:column;justify-content:stretch}.questions-header{align-items:stretch;flex-direction:column;gap:1rem}.question-item{gap:1rem;grid-template-columns:auto 1fr;grid-template-rows:auto auto}.question-actions{flex-direction:row;grid-column:1/-1;justify-content:center}.question-meta{justify-content:center;text-align:center}.form-row{grid-template-columns:1fr}.modal-actions{flex-direction:column}}@media (max-width:480px){.question-management{padding:.5rem}.modal{margin:.5rem;max-width:calc(100% - 1rem)}.modal-actions,.modal-content,.modal-header,.question-item{padding:1rem}.question-meta{flex-direction:column;gap:.5rem}}.statistics-modal{max-height:90vh;max-width:800px;width:95vw}.statistics-modal .modal-header{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:16px 16px 0 0;color:#fff}.statistics-modal .modal-header h3{color:#fff}.statistics-modal .modal-close{background:#fff3;color:#fff}.statistics-modal .modal-close:hover{background:#ffffff4d}.statistics-modal .statistics-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));margin-bottom:1rem}.statistics-modal .stat-card{-webkit-backdrop-filter:none;backdrop-filter:none;background:linear-gradient(135deg,#f8fafc,#e2e8f0);border:2px solid #e2e8f0;border-radius:12px;padding:1.5rem}.statistics-modal .stat-card h4{color:#2d3748;font-size:1.1rem;font-weight:600;margin:0 0 1rem;opacity:1;text-align:center}.statistics-modal .stat-details{display:flex;gap:.5rem;justify-content:space-around}.statistics-modal .stat-item{flex:1 1;text-align:center}.statistics-modal .stat-number{color:#667eea;display:block;font-size:1.8rem;font-weight:700;margin-bottom:.25rem}.statistics-modal .stat-label{color:#4a5568;display:block;font-size:.85rem;font-weight:500;opacity:1}.stat-summary{background:linear-gradient(135deg,#fef5e7,#fed7aa);border:2px solid #f6ad55;border-radius:12px;grid-column:1/-1;padding:1.5rem;text-align:center}.stat-summary h4{color:#c05621;font-size:1.1rem;margin:0 0 .5rem}.stat-summary p{color:#744210;font-size:1rem;margin:0}@media (max-width:768px){.modal-overlay{align-items:center;display:flex;height:100vh;height:100dvh;justify-content:center;left:0;overflow:hidden;padding:.5rem;position:fixed;top:0;width:100vw}.modal{margin:auto;max-height:95vh;max-height:95dvh;position:relative;transform:translateZ(0)}.modal,.statistics-modal{max-width:95vw;width:100%}.statistics-modal .statistics-grid{gap:1rem;grid-template-columns:1fr}.statistics-modal .stat-details{gap:.25rem}.statistics-modal .stat-number{font-size:1.5rem}.statistics-modal .stat-label{font-size:.75rem}.stat-summary{padding:1rem}}.pagination{border-top:2px solid #e5e7eb;display:flex;flex-direction:column;gap:1rem;margin-top:1rem;padding:1.5rem 1rem}.pagination-info{color:#6b7280;font-size:.875rem;font-weight:500;text-align:center}.pagination-controls{align-items:center;gap:.5rem}.page-numbers,.pagination-controls{display:flex;flex-wrap:wrap;justify-content:center}.page-numbers{gap:.25rem}.pagination-controls .btn-sm{font-size:.875rem;min-width:auto;padding:.5rem .75rem;white-space:nowrap}.page-numbers .btn-sm{min-width:2.5rem;padding:.5rem}.questions-header{justify-content:space-between;margin-bottom:1.5rem}.questions-header,.questions-header-actions{align-items:center;display:flex;flex-wrap:wrap;gap:1rem}.page-size-select{background:#fff;border:1px solid #d1d5db;border-radius:8px;cursor:pointer;font-size:.875rem;padding:.5rem .75rem;transition:all .2s ease}.page-size-select:hover{border-color:#9ca3af}.page-size-select:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;outline:none}@media (max-width:768px){.pagination{padding:1rem .5rem}.pagination-controls{gap:.25rem}.pagination-controls .btn-sm{font-size:.75rem;padding:.5rem}.page-numbers .btn-sm{min-width:2rem;padding:.5rem .25rem}.questions-header{align-items:flex-start;flex-direction:column}.questions-header-actions{justify-content:space-between;width:100%}.page-size-select{flex:1 1;max-width:120px}}.reviewer-page{background:#f5f7fa;color:#2d3748;padding:10px 0}.reviewer-container{margin:0 auto;max-width:600px;padding:10px 20px;position:relative;text-align:center}.reviewer-header{margin-bottom:15px}.main-title{color:#1e40af;font-size:36px;font-weight:700;letter-spacing:1px;margin:0 0 6px}.sub-title{color:#2d3748;font-size:32px;font-weight:700;line-height:1.2;margin:0 0 10px}.description{color:#4a5568;font-size:18px;font-weight:400;line-height:1.6;margin:0 0 15px}.reviewer-content{margin-bottom:15px;text-align:left}.content-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:1fr 1fr;margin-bottom:10px}.content-section{margin-bottom:0}.content-section.single{margin-top:6px}.content-section h3{align-items:center;color:#2d3748;display:flex;font-size:20px;font-weight:600;margin:0 0 6px}.check-icon{color:#4ade80;font-size:22px;font-weight:700;margin-right:12px}.content-section ul{list-style:none;margin:0;padding:0}.content-section li{color:#4a5568;font-size:16px;line-height:1.6;margin-bottom:3px;padding-left:20px;position:relative}.content-section li:before{color:#4ade80;content:"•";font-size:18px;left:0;position:absolute;top:0}.content-section li:last-child{margin-bottom:0}.reviewer-cta{margin-top:30px;padding:30px 20px;position:relative;text-align:center}.cta-content{position:relative;z-index:1}.cta-text{color:#4a5568;font-size:18px;font-weight:500;line-height:1.6;margin:0}@media (max-width:768px){.reviewer-container{padding:20px 16px}.content-grid{gap:20px;grid-template-columns:1fr}.main-title{font-size:28px}.sub-title{font-size:24px}.description{font-size:16px}.content-section h3{font-size:18px}.content-section li{font-size:15px}.reviewer-cta{padding:20px}.cta-text{font-size:16px}}@media (max-width:480px){.reviewer-container{padding:16px 12px}.content-grid{gap:16px}.main-title{font-size:24px}.sub-title{font-size:20px}.description{font-size:15px}.content-section h3{font-size:16px}.content-section li{font-size:14px}.reviewer-cta{padding:16px}.cta-text{font-size:15px}}.rankings-page{background:#f8f9fa;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;min-height:100vh;padding:2rem 1rem}.rankings-header{background:var(--primary-gradient);border-radius:var(--radius-xl);box-shadow:0 4px 16px #0000001a;color:#fff;margin-bottom:2rem;padding:2rem;text-align:center}.rankings-header h1{font-size:2.5rem;font-weight:700;margin-bottom:.5rem;text-shadow:2px 2px 4px #0000004d}.rankings-header p{font-size:1.1rem;margin:0;opacity:.9}.summary-stats{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:2rem}.stat-card{border-radius:var(--radius-lg);box-shadow:0 2px 8px #0000000f;gap:1rem;padding:1.5rem;transition:all var(--transition-normal)}.stat-card:hover{border-color:var(--primary-light);box-shadow:0 8px 24px #0000001a;transform:translateY(-2px)}.stat-icon{align-items:center;background:var(--secondary-gradient);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);color:#fff;display:flex;font-size:2rem;height:60px;justify-content:center;width:60px}.stat-content{flex:1 1}.stat-number{color:#2d3748;font-size:1.8rem;line-height:1}.stat-label{color:#718096;font-size:.9rem;margin-top:.25rem}.ranking-tabs{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:1.5rem}.ranking-tab{align-items:center;background:#fff;border:1px solid #e5e7eb;border-radius:var(--radius-md);cursor:pointer;display:flex;gap:.75rem;padding:1rem;text-align:left;transition:all var(--transition-normal)}.ranking-tab:hover{border-color:var(--primary-light);box-shadow:0 4px 12px #00000014;transform:translateY(-2px)}.ranking-tab.active{background:var(--secondary-gradient);box-shadow:var(--shadow-md);color:#fff;overflow:hidden;position:relative}.ranking-tab.active:before{animation:shimmer 2s infinite;background:linear-gradient(90deg,#0000,#ffffff4d,#0000);content:"";height:100%;left:-100%;position:absolute;top:0;width:100%}.tab-icon{font-size:1.5rem}.tab-content{flex:1 1}.tab-name{font-size:1rem;font-weight:600;line-height:1.2}.tab-description{font-size:.8rem;margin-top:.25rem;opacity:.8}.period-filter{display:flex;flex-wrap:wrap;gap:.5rem;justify-content:center;margin-bottom:2rem}.period-btn{background:#ffffffe6;border:none;border-radius:25px;color:#4a5568;cursor:pointer;font-weight:500;padding:.5rem 1.5rem;transition:all .3s ease}.period-btn:hover{background:#fff;transform:translateY(-1px)}.period-btn.active{background:var(--secondary-gradient);box-shadow:var(--shadow-md);color:#fff}.rankings-container{background:#fff;border:1px solid #e5e7eb;border-radius:var(--radius-xl);box-shadow:0 2px 8px #0000000f;padding:2rem}.ranking-header h2{align-items:center;color:#2d3748;display:flex;font-size:1.5rem;font-weight:700;gap:.5rem;margin-bottom:1.5rem}.period-label{color:#718096;font-size:.9rem;font-weight:400}.empty-rankings,.loading-container{color:#718096;padding:3rem 1rem;text-align:center}.loading-spinner{animation:spin 2s linear infinite;font-size:3rem;margin-bottom:1rem}.empty-icon{font-size:4rem;margin-bottom:1rem}.empty-rankings h3{color:#4a5568;font-size:1.5rem;font-weight:600;margin-bottom:.5rem}.rankings-list{display:flex;flex-direction:column;gap:.75rem}.ranking-item{align-items:center;background:#fff;border:1px solid #e5e7eb;border-radius:var(--radius-md);display:flex;justify-content:space-between;padding:1rem 1.5rem;transition:all var(--transition-normal)}.ranking-item:hover{border-color:var(--primary-light);box-shadow:0 4px 12px #00000014;transform:translateX(4px)}.ranking-item.top-three{background:linear-gradient(135deg,#fffbeb,#fef3c7);border:2px solid #fbbf24;box-shadow:0 4px 12px #fbbf2433;overflow:hidden;position:relative}.ranking-item.top-three:before{background:linear-gradient(90deg,#fbbf24,#f59e0b);content:"";height:3px;left:0;position:absolute;right:0;top:0}.rank-info{align-items:center;display:flex;gap:1rem}.rank-number{font-size:1.5rem;font-weight:700;min-width:60px;text-align:center}.user-info{display:flex;flex-direction:column}.user-name{color:#2d3748;font-size:1.1rem;font-weight:600;line-height:1.2}.user-grade{background:#7180961a;border-radius:12px;color:#718096;font-size:.85rem;margin-top:.25rem;padding:.2rem .6rem;width:-webkit-fit-content;width:fit-content}.stats-info{align-items:center;display:flex;gap:2rem}.primary-stat{min-width:80px;text-align:center}.primary-stat .stat-value{color:#2d3748;display:block;font-size:1.5rem;font-weight:700;line-height:1}.primary-stat .stat-label{color:#718096;font-size:.8rem;margin-top:.25rem}.secondary-stats{display:flex;gap:1.5rem}.stat-item{min-width:50px;text-align:center}.stat-item .stat-value{color:#4a5568;display:block;font-size:1rem;font-weight:600;line-height:1}.stat-item .stat-label{color:#a0aec0;font-size:.75rem;margin-top:.2rem}@media (max-width:768px){.rankings-page{padding:1rem .5rem}.rankings-header h1{font-size:2rem}.summary-stats{gap:.75rem;grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.stat-card{flex-direction:column;gap:.5rem;padding:1rem;text-align:center}.stat-icon{font-size:1.5rem;height:50px;width:50px}.ranking-tabs{gap:.75rem;grid-template-columns:1fr}.ranking-tab{padding:.75rem}.rankings-container{padding:1rem}.ranking-item{align-items:flex-start;flex-direction:column;gap:1rem;padding:1rem}.stats-info{gap:1rem;justify-content:space-between;width:100%}.secondary-stats{gap:1rem}.period-filter{gap:.25rem}.period-btn{font-size:.9rem;padding:.4rem 1rem}}.dashboard-page{background:#f7f7f7;min-height:100vh;padding:2rem 1rem}.dashboard-container{margin:0 auto;max-width:1200px}.dashboard-title{color:#3c3c3c;font-size:2.5rem;font-weight:900;margin-bottom:2rem;text-align:center}.stats-grid{grid-gap:1.5rem;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));margin-bottom:3rem}.stat-card{align-items:center;border-bottom:5px solid #0000;border-radius:20px;box-shadow:0 4px 0 #0000001a;display:flex;gap:1.5rem;padding:2rem;transition:all .2s ease}.stat-card:hover{box-shadow:0 8px 0 #0000001a;transform:translateY(-4px)}.stat-card .stat-icon{font-size:3rem;line-height:1}.stat-card .stat-content{flex:1 1}.stat-card .stat-value{font-size:2.5rem;font-weight:900;line-height:1;margin-bottom:.5rem}.stat-card .stat-label{color:#777;font-size:1rem;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.stat-card .stat-sublabel{color:#afafaf;font-size:.9rem;margin-top:.25rem}.stat-card .stat-level{color:#58cc02;font-size:.9rem;font-weight:700;margin-top:.5rem}.xp-card{border-bottom-color:gold}.xp-card .stat-value{color:orange}.streak-card{border-bottom-color:#ff6b00}.streak-card .stat-value{color:#ff4500}.questions-card{border-bottom-color:#58cc02}.questions-card .stat-value{color:#4caf00}.accuracy-card{border-bottom-color:#1cb0f6}.accuracy-card .stat-value{color:#1899d6}.dashboard-section{background:#fff;border-radius:20px;box-shadow:0 4px 0 #0000001a;margin-bottom:2rem;padding:2rem}.section-title{color:#3c3c3c;margin-bottom:1.5rem}.section-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:1.5rem}.heatmap-container{overflow-x:auto;padding:1rem 0}.heatmap-grid{grid-gap:4px;display:grid;gap:4px;grid-template-columns:repeat(90,14px);justify-content:start}.heatmap-cell{background:#e0e0e0;border-radius:3px;cursor:pointer;height:14px;transition:all .2s ease;width:14px}.heatmap-cell:hover{box-shadow:0 2px 8px #0003;transform:scale(1.2)}.heatmap-cell.intensity-0{background:#eee}.heatmap-cell.intensity-1{background:#c6f6d5}.heatmap-cell.intensity-2{background:#9ae6b4}.heatmap-cell.intensity-3{background:#68d391}.heatmap-cell.intensity-4{background:#48bb78}.period-selector{background:#f0f0f0;border-radius:12px;display:flex;gap:.5rem;padding:4px}.period-selector button{background:#0000;border:none;border-radius:8px;color:#777;cursor:pointer;font-size:.9rem;font-weight:700;padding:.5rem 1rem;transition:all .2s ease}.period-selector button:hover{background:#e0e0e0}.period-selector button.active{background:#58cc02;box-shadow:0 2px 0 #00000026;color:#fff}.progress-chart{padding:1rem 0}.chart-legend{display:flex;flex-wrap:wrap;gap:1.5rem;margin-bottom:1.5rem}.legend-item{align-items:center;color:#777;display:flex;font-size:.9rem;font-weight:600;gap:.5rem}.legend-color{border-radius:4px;height:20px;width:20px}.legend-color.xp-color{background:linear-gradient(180deg,gold,orange)}.legend-color.questions-color{background:linear-gradient(180deg,#58cc02,#4caf00)}.legend-color.accuracy-color{background:linear-gradient(180deg,#1cb0f6,#1899d6)}.chart-bars{align-items:flex-end;border-bottom:2px solid #e0e0e0;display:flex;gap:1rem;height:300px;padding:1rem}.chart-bar-group{align-items:center;display:flex;flex:1 1;flex-direction:column;gap:.5rem}.bar-container{align-items:flex-end;height:250px;width:100%}.bar,.bar-container{display:flex;justify-content:center}.bar{align-items:flex-start;border-radius:8px 8px 0 0;min-height:10px;padding-top:.5rem;position:relative;transition:all .3s ease;width:80%}.bar:hover{opacity:.8;transform:scaleY(1.05)}.bar.xp-bar{background:linear-gradient(180deg,gold,orange)}.bar.questions-bar{background:linear-gradient(180deg,#58cc02,#4caf00)}.bar-value{color:#fff;font-size:.8rem;font-weight:700;text-shadow:0 1px 2px #0000004d}.bar-label{color:#777;font-size:.8rem;font-weight:600;text-align:center}.no-data{color:#afafaf;font-size:1.2rem;padding:3rem;text-align:center}.level-progress-container{background:linear-gradient(135deg,#f0f9ff,#e0f2fe);border-radius:16px;padding:2rem}.level-info{align-items:center;display:flex;justify-content:space-between;margin-bottom:1rem}.current-level,.next-level{color:#1cb0f6;font-size:1.5rem;font-weight:800}.next-level{color:#afafaf}.progress-bar-large{background:#e0e0e0;border-radius:20px;box-shadow:inset 0 2px 4px #0000001a;height:40px;margin-bottom:1rem;overflow:hidden;width:100%}.progress-fill-large{background:linear-gradient(90deg,#58cc02,#4caf00);border-radius:20px;box-shadow:0 0 20px #58cc0280;height:100%;transition:width .6s ease}.progress-text-large{color:#3c3c3c;font-size:1.2rem;font-weight:700;text-align:center}.progress-text-large .percentage{color:#58cc02;margin-left:.5rem}@media (max-width:768px){.dashboard-page{padding:1rem .5rem}.dashboard-title{font-size:2rem}.stats-grid{gap:1rem;grid-template-columns:1fr}.stat-card{padding:1.5rem}.stat-card .stat-icon{font-size:2.5rem}.stat-card .stat-value{font-size:2rem}.dashboard-section{padding:1.5rem}.section-title{font-size:1.5rem}.section-header{align-items:flex-start;flex-direction:column;gap:1rem}.heatmap-grid{gap:3px;grid-template-columns:repeat(90,12px)}.heatmap-cell{height:12px;width:12px}.chart-bars{gap:.5rem;height:200px}.bar-container{height:150px}.level-progress-container{padding:1.5rem}.current-level,.next-level{font-size:1.2rem}.progress-bar-large{height:30px}.progress-text-large{font-size:1rem}}.loading-center{gap:1.5rem}.loading-spinner{border:4px solid #e0e0e0;border-top-color:#58cc02;height:60px;width:60px}.certificates-page{background:linear-gradient(135deg,#f5f7fa,#e8edf3);min-height:100vh;padding:2rem 1rem}.certificates-container{margin:0 auto;max-width:1200px}.page-header{margin-bottom:2.5rem}.page-header,.page-title{text-align:center;width:100%}.page-title{align-items:center;color:#333;display:flex;font-size:2.5rem;font-weight:800;gap:.5rem;justify-content:center;margin-bottom:.5rem}.title-icon{animation:bounce 2s infinite;font-size:3rem}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.page-subtitle{color:#666;font-size:1.1rem;text-align:center;width:100%}.cert-stats-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:2.5rem}.cert-stat-card{align-items:center;background:#fff;border-radius:16px;box-shadow:0 4px 6px #0000001a,0 1px 3px #00000014;cursor:pointer;display:flex;gap:1rem;padding:1.5rem;transition:all .3s ease}.cert-stat-card:hover{box-shadow:0 8px 12px #00000026,0 2px 4px #0000001a;transform:translateY(-4px)}.cert-stat-card .stat-icon{font-size:2.5rem;transition:transform .3s ease}.cert-stat-card:hover .stat-icon{transform:scale(1.2) rotate(5deg)}.cert-stat-card .stat-content{flex:1 1}.cert-stat-card .stat-value{color:#333;font-size:2rem;font-weight:800;line-height:1;margin-bottom:.3rem}.cert-stat-card .stat-label{color:#666;font-size:.9rem;font-weight:600;line-height:1.4;text-align:center;white-space:normal;word-break:keep-all}.total-card{border-top:4px solid var(--duo-blue)}.book-card{border-top:4px solid var(--duo-green)}.aggregate-card{border-top:4px solid var(--duo-purple)}.level-card{border-top:4px solid var(--duo-yellow)}.filter-tabs{display:flex;flex-wrap:wrap;gap:1rem;margin-bottom:2rem}.filter-tab{align-items:center;background:#fff;border:3px solid #0000;border-radius:12px;box-shadow:0 2px 4px #0000001a;color:#666;cursor:pointer;display:flex;flex:1 1;font-size:1rem;font-weight:700;gap:.5rem;justify-content:center;min-width:150px;padding:1rem 1.5rem;transition:all .3s ease}.filter-tab .tab-icon{font-size:1.5rem}.filter-tab:hover{box-shadow:0 4px 8px #00000026;transform:translateY(-2px)}.filter-tab.active{background:var(--primary-gradient);border-color:var(--duo-green-dark);box-shadow:0 4px 8px #58cc024d,0 2px 4px #58cc0233;color:#fff}.certificates-grid{grid-gap:2rem;display:grid;gap:2rem;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));margin-top:2rem}.certificate-card{background:#fff;border-radius:16px;box-shadow:0 4px 6px #0000001a,0 1px 3px #00000014;cursor:pointer;overflow:hidden;position:relative;transition:all .3s cubic-bezier(.4,0,.2,1)}.certificate-card:hover{box-shadow:0 12px 24px #0003,0 4px 8px #0000001a;transform:translateY(-8px)}.certificate-card:hover .cert-card-overlay{opacity:1}.cert-card-header{align-items:center;background:linear-gradient(135deg,#f5f7fa,#e8edf3);border-top:4px solid var(--duo-blue);display:flex;justify-content:space-between;padding:1rem 1.5rem}.cert-type-badge{align-items:center;border-radius:20px;color:#fff;display:inline-flex;font-size:.85rem;font-weight:700;gap:.3rem;padding:.5rem 1rem}.cert-serial{color:#666;font-family:Courier New,monospace;font-size:.8rem;font-weight:600}.cert-card-body{padding:1.5rem}.cert-title{-webkit-line-clamp:2;-webkit-box-orient:vertical;color:#333;display:-webkit-box;font-size:1.3rem;font-weight:800;line-height:1.4;margin-bottom:1.5rem;min-height:3rem;overflow:hidden}.cert-scores{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(3,1fr);margin-bottom:1.5rem}.score-item{align-items:center;background:#f5f7fa;border-radius:12px;display:flex;flex-direction:column;padding:.8rem;text-align:center;transition:all .3s ease}.score-item:hover{background:#e8edf3;transform:scale(1.05)}.score-icon{font-size:1.8rem;margin-bottom:.5rem}.score-label{color:#666;font-size:.75rem;font-weight:600;letter-spacing:.5px;margin-bottom:.3rem;text-transform:uppercase}.score-value{color:#333;font-size:1.2rem;font-weight:800}.ap-grade-badge{align-items:center;border:2px solid;border-radius:12px;display:flex;font-size:.95rem;font-weight:700;gap:.5rem;justify-content:center;margin-bottom:1rem;padding:.8rem 1.2rem;text-align:center}.cert-card-footer{align-items:center;border-top:2px solid #f0f0f0;display:flex;font-size:.85rem;justify-content:space-between;padding-top:1rem}.cert-date{color:#666;font-weight:600}.cert-status{align-items:center;display:flex;font-weight:700;gap:.3rem}.cert-card-overlay{align-items:center;background:linear-gradient(135deg,#58cc02f2,#3aba00f2);bottom:0;display:flex;justify-content:center;left:0;opacity:0;pointer-events:none;position:absolute;right:0;top:0;transition:opacity .3s ease}.overlay-content{color:#fff;text-align:center}.view-details-text{display:block;font-size:1.3rem;font-weight:800;margin-bottom:.5rem}.arrow-icon{animation:moveRight 1s infinite;display:inline-block;font-size:2rem}@keyframes moveRight{0%,to{transform:translateX(0)}50%{transform:translateX(10px)}}.empty-icon{font-size:5rem;margin-bottom:1.5rem;opacity:.5}.empty-state h3{margin-bottom:1rem}.empty-state p{color:#666;font-size:1.1rem;margin-bottom:2rem}.empty-state .btn{font-size:1.1rem;padding:1rem 2rem}@media (max-width:768px){.certificates-page{background:#fff;padding:1rem}.certificates-container{padding:0}.page-header{margin-bottom:1.5rem}.page-title{font-size:1.8rem}.title-icon{font-size:2rem}.page-subtitle{font-size:.95rem}.cert-stats-grid{gap:.8rem;grid-template-columns:repeat(2,1fr)}.cert-stat-card{flex-direction:column;padding:1rem;text-align:center}.cert-stat-card .stat-icon{font-size:2rem;margin-bottom:.5rem}.cert-stat-card .stat-value{font-size:1.5rem}.cert-stat-card .stat-label{font-size:.7rem;line-height:1.4;max-width:100%;overflow-wrap:break-word;text-align:center;white-space:normal;word-break:keep-all}.filter-tabs{-webkit-overflow-scrolling:touch;flex-wrap:nowrap;gap:.5rem;overflow-x:auto;scrollbar-width:none}.filter-tabs::-webkit-scrollbar{display:none}.filter-tab{font-size:.85rem;line-height:1.4;min-width:auto;padding:.8rem .6rem;text-align:center;white-space:normal;word-break:keep-all}.filter-tab .tab-icon{font-size:1.2rem}.certificates-grid{gap:1.5rem;grid-template-columns:1fr}.certificate-card{border-radius:12px}.cert-card-header{flex-wrap:wrap;padding:1rem}.cert-type-badge{font-size:.75rem;padding:.4rem .8rem}.cert-serial{font-size:.7rem}.cert-card-body{padding:1rem}.cert-title{font-size:1.1rem;line-height:1.4;min-height:auto;overflow-wrap:break-word;word-break:keep-all}.cert-scores{gap:.5rem;grid-template-columns:repeat(3,1fr)}.score-item{padding:.6rem .4rem}.score-icon{font-size:1.5rem;margin-bottom:.3rem}.score-label{font-size:.65rem;line-height:1.3;word-break:keep-all}.score-value{font-size:1rem}.ap-grade-badge{font-size:.85rem;padding:.6rem 1rem}.cert-card-footer{font-size:.75rem;padding-top:.8rem}.empty-state{padding:2rem 1rem}.empty-icon{font-size:4rem}.empty-state h3{font-size:1.5rem}.empty-state p{font-size:1rem}}.certificate-detail-page{background:linear-gradient(135deg,#f5f7fa,#e8edf3);min-height:100vh;padding:2rem 1rem}.certificate-detail-container{margin:0 auto;max-width:900px}.back-button{align-items:center;background:#fff;border:none;border-radius:12px;box-shadow:0 2px 4px #0000001a;color:#666;cursor:pointer;display:inline-flex;font-size:1rem;font-weight:700;gap:.5rem;margin-bottom:2rem;padding:.8rem 1.5rem;transition:all .3s ease}.back-button:hover{box-shadow:0 4px 8px #00000026;color:var(--duo-green);transform:translateY(-2px)}.cert-detail-header{background:#fff;border-radius:20px;border-top:6px solid var(--duo-blue);box-shadow:0 8px 16px #0000001a,0 2px 4px #0000000f;margin-bottom:2rem;overflow:hidden;padding:2.5rem;position:relative}.cert-detail-header:before{content:"🏆";font-size:8rem;opacity:.05;position:absolute;right:20px;top:20px;transform:rotate(15deg)}.cert-header-top{align-items:center;display:flex;flex-wrap:wrap;gap:1rem;justify-content:space-between;margin-bottom:1.5rem}.cert-type-badge-large{align-items:center;border-radius:25px;color:#fff;display:inline-flex;font-size:1rem;font-weight:800;gap:.5rem;letter-spacing:.5px;padding:.8rem 1.5rem;text-transform:uppercase}.cert-status-large{align-items:center;display:flex;font-size:1rem;font-weight:700;gap:.3rem}.cert-detail-title{color:#333;font-size:2rem;font-weight:800;line-height:1.3;margin-bottom:1rem}.cert-serial-large{color:#666;font-size:1rem;font-weight:600;margin-bottom:.5rem}.cert-serial-large span{color:#333;font-family:Courier New,monospace;font-weight:700}.cert-issue-date{color:#666;font-size:1rem;font-weight:600}.cert-scores-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));margin-bottom:2rem}.score-card{background:#fff;border-radius:16px;box-shadow:0 4px 8px #0000001a,0 1px 3px #0000000f;cursor:default;padding:2rem;text-align:center;transition:all .3s ease}.score-card:hover{box-shadow:0 8px 16px #00000026,0 2px 6px #0000001a;transform:translateY(-4px)}.score-card-icon{font-size:3rem;margin-bottom:1rem}.score-card-label{color:#666;font-size:.9rem;font-weight:600;letter-spacing:.5px;line-height:1.3;margin-bottom:.5rem;text-align:center;text-transform:uppercase;word-break:keep-all}.score-card-value{color:#333;font-size:2.5rem;font-weight:800;margin-bottom:.5rem}.score-card-grade{font-size:1rem;font-weight:700;margin-top:.5rem}.showcase-section{background:#fff;border-radius:20px;box-shadow:0 4px 8px #0000001a,0 1px 3px #0000000f;margin-bottom:2rem;padding:2.5rem}.section-title{align-items:center;color:#333;display:flex;font-size:1.8rem;font-weight:800;gap:.5rem;margin-bottom:.5rem}.section-icon{font-size:2rem}.section-subtitle{color:#666;font-size:1rem;margin-bottom:2rem}.showcase-grid{display:flex;flex-direction:column;gap:1.5rem}.showcase-card{background:linear-gradient(135deg,#f5f7fa,#e8edf3);border-left:4px solid var(--duo-green);border-radius:16px;padding:1.5rem;transition:all .3s ease}.showcase-card:hover{box-shadow:0 4px 12px #58cc0233;transform:translateX(8px)}.showcase-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:1rem}.showcase-number{color:var(--duo-green);font-size:1.2rem;font-weight:800}.showcase-level{border-radius:12px;color:#fff;font-size:.85rem;font-weight:700;padding:.3rem .8rem}.showcase-question{background:#fff;border-radius:12px;color:#333;font-size:1rem;line-height:1.6;margin-bottom:1rem;padding:1rem}.showcase-question strong{color:var(--duo-blue);margin-right:.5rem}.showcase-answer{background:#fff;border-radius:12px;color:#333;font-size:1rem;line-height:1.6;margin-bottom:.5rem;padding:1rem}.showcase-answer strong{color:var(--duo-green);margin-right:.5rem}.showcase-score{color:#666;font-size:.9rem;margin-top:.5rem;text-align:right}.showcase-score strong{color:var(--duo-green);font-size:1.1rem}.action-buttons{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:2rem}.btn-action{align-items:center;border:none;border-radius:16px;box-shadow:0 4px 0 #0003,0 2px 8px #0000001a;color:#fff;cursor:pointer;display:flex;font-size:1.1rem;font-weight:800;gap:.5rem;justify-content:center;padding:1.2rem 2rem;transition:all .3s ease}.btn-action:hover{box-shadow:0 6px 0 #0003,0 4px 12px #00000026;transform:translateY(-2px)}.btn-action:active{box-shadow:0 2px 0 #0003,0 1px 4px #0000001a;transform:translateY(2px)}.btn-download{background:linear-gradient(135deg,#58cc02,#3aba00)}.btn-verify{background:linear-gradient(135deg,#1cb0f6,#0d8bd7)}.btn-qr{background:linear-gradient(135deg,#ce82ff,#b066d8)}.verification-section{background:#fff;border-radius:20px;box-shadow:0 4px 8px #0000001a,0 1px 3px #0000000f;margin-bottom:2rem;padding:2rem}.verify-title{align-items:center;color:#333;display:flex;font-size:1.5rem;font-weight:800;gap:.5rem;margin-bottom:.5rem}.verify-icon{font-size:1.8rem}.verify-subtitle{color:#666;font-size:.95rem;margin-bottom:1.5rem}.verify-link-box{align-items:center;background:linear-gradient(135deg,#f5f7fa,#e8edf3);border:2px solid var(--duo-blue);border-radius:12px;display:flex;flex-wrap:wrap;gap:1rem;padding:1rem}.verify-link-box code{color:#333;flex:1 1;font-family:Courier New,monospace;font-size:.9rem;min-width:200px;word-break:break-all}.copy-btn{background:var(--duo-blue);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:.9rem;font-weight:700;padding:.6rem 1.2rem;transition:all .3s ease;white-space:nowrap}.copy-btn:hover{background:#0d8bd7;transform:scale(1.05)}.cert-meta{grid-gap:1rem;background:#fff;border-radius:16px;box-shadow:0 2px 4px #00000014;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));padding:1.5rem}.meta-item{display:flex;flex-direction:column;gap:.3rem}.meta-label{color:#666;font-size:.85rem;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.meta-value{color:#333;font-family:Courier New,monospace;font-size:1rem;font-weight:700}.qr-modal-overlay{align-items:center;animation:fadeIn .3s ease;background:#000000b3;bottom:0;display:flex;justify-content:center;left:0;padding:1rem;position:fixed;right:0;top:0;z-index:10000}.qr-modal-content{animation:slideUp .3s ease;background:#fff;border-radius:24px;box-shadow:0 12px 24px #0000004d;max-width:400px;padding:2.5rem;position:relative;text-align:center;width:100%}@keyframes slideUp{0%{opacity:0;transform:translateY(50px)}to{opacity:1;transform:translateY(0)}}.qr-close-btn{align-items:center;background:#f0f0f0;border:none;border-radius:50%;cursor:pointer;display:flex;font-size:1.5rem;height:36px;justify-content:center;position:absolute;right:1rem;top:1rem;transition:all .3s ease;width:36px}.qr-close-btn:hover{background:#e0e0e0;transform:rotate(90deg)}.qr-modal-content h3{color:#333;font-size:1.8rem;font-weight:800;margin-bottom:.5rem}.qr-subtitle{color:#666;font-size:.95rem;margin-bottom:2rem}.qr-code-image{border:4px solid #f0f0f0;border-radius:16px;height:300px;margin:0 auto 2rem;width:300px}.loading-center{align-items:center;display:flex;flex-direction:column;gap:1rem;justify-content:center;min-height:60vh}.loading-spinner{border-top:4px solid var(--duo-green)}.empty-state{background:#fff;border-radius:16px;box-shadow:0 4px 6px #0000001a;padding:4rem 2rem;text-align:center}.empty-state h3{color:#333;font-size:1.8rem;font-weight:800;margin-bottom:1.5rem}@media (max-width:768px){.certificate-detail-page{background:#fff;padding:1rem}.certificate-detail-container{padding:0}.back-button{font-size:.9rem;margin-bottom:1rem;padding:.6rem 1.2rem}.cert-detail-header{border-radius:12px;padding:1.5rem}.cert-header-top{align-items:flex-start;flex-direction:column;gap:.8rem}.cert-type-badge-large{font-size:.85rem;padding:.6rem 1.2rem}.cert-detail-title{font-size:1.3rem;line-height:1.4;overflow-wrap:break-word;word-break:keep-all}.cert-issue-date,.cert-serial-large{font-size:.9rem}.cert-scores-grid{gap:1rem;grid-template-columns:1fr}.score-card{padding:1.5rem}.score-card-icon{font-size:2.5rem}.score-card-value{font-size:2rem}.action-buttons{gap:1rem;grid-template-columns:1fr}.btn-action{font-size:1rem;padding:1rem 1.5rem}.showcase-section{border-radius:12px;padding:1.5rem}.section-title{font-size:1.5rem}.section-subtitle{font-size:.9rem}.showcase-card{padding:1rem}.showcase-answer,.showcase-question{font-size:.95rem;padding:.8rem}.verification-section{border-radius:12px;padding:1.5rem}.verify-title{font-size:1.3rem}.verify-link-box{align-items:stretch;flex-direction:column;padding:.8rem}.verify-link-box code{font-size:.8rem;margin-bottom:.5rem}.copy-btn{padding:.8rem 1rem;width:100%}.cert-meta{gap:.8rem;grid-template-columns:1fr;padding:1rem}.qr-modal-content{margin:0 1rem;padding:1.5rem}.qr-modal-content h3{font-size:1.5rem}.qr-code-image{height:auto;max-width:250px;width:100%}}.App{display:flex;flex-direction:column;min-height:100vh}main{flex:1 1;padding-top:80px}@keyframes fadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.fade-in{animation:fadeIn .5s ease-out}.loading-spinner{border:4px solid #f3f3f3;border-radius:50%;border-top-color:#007bff;height:50px;width:50px}.loading-spinner,.mini-spinner{animation:spin 1s linear infinite}.mini-spinner{border:2px solid #f3f3f3;border-radius:50%;border-top-color:#007bff;display:inline-block;height:16px;margin-right:8px;vertical-align:middle;width:16px}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.toast{animation:slideIn .3s ease-out;background:#28a745;border-radius:8px;box-shadow:0 4px 12px #00000026;color:#fff;padding:16px 24px;position:fixed;right:20px;top:20px;z-index:1000}.toast.error{background:#dc3545}.toast.warning{background:#ffc107;color:#212529}@keyframes slideIn{0%{opacity:0;transform:translateX(100%)}to{opacity:1;transform:translateX(0)}}.book-quality-info{background-color:#f8f9fa;border-radius:4px;font-size:.9em;margin:10px 0;padding:10px}.loading-overlay{align-items:center;background-color:#000c;bottom:0;color:#fff;display:flex;flex-direction:column;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.loading-overlay p{font-size:1.1em;margin-top:20px}.loading-message{margin-top:30px;text-align:center}.loading-message h3{color:#fff;font-size:1.5em;margin:0 0 15px}.loading-message p{color:#e9ecef;font-size:1.1em;margin:10px 0}.generating-details{-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background-color:#ffffff1a;border-radius:8px;margin-top:20px;padding:15px}.generating-item{align-items:center;animation:pulse 2s infinite;background-color:#ffffff26;border-radius:20px;color:#fff;display:flex;font-size:.95em;justify-content:center;margin:8px 0;padding:8px 15px}@keyframes pulse{0%,to{opacity:1}50%{opacity:.7}}.btn.generating{background-color:#e9ecef;color:#6c757d;cursor:not-allowed;overflow:hidden;position:relative}.btn.generating:after{animation:shimmer 1.5s infinite;background:linear-gradient(90deg,#0000,#fff6,#0000);content:"";height:100%;left:-100%;position:absolute;top:0;width:100%}@keyframes shimmer{0%{left:-100%}to{left:100%}}.btn:disabled{cursor:not-allowed;opacity:.6}.btn:disabled:hover{background-color:inherit;transform:none}.btn-group{display:flex;flex-wrap:wrap;gap:8px}.btn-group .btn{flex:1 1;min-width:100px}.character-count{align-items:center;display:flex;font-size:.9em;justify-content:space-between;margin-top:5px}.character-count span:first-child{color:#666;font-weight:500}.character-count .warning{color:#ff9800;font-weight:600}.character-count .over-limit{color:#f44336;font-weight:600}.limit-message{background-color:#ffebee;color:#f44336}.limit-message,.warning-message{border-radius:4px;font-size:.85em;margin-left:10px;padding:4px 8px}.warning-message{background-color:#fff3e0;color:#ff9800}@media (max-width:600px){main{padding-top:0}.btn-group{flex-direction:column}.btn-group .btn{width:100%}.character-count{align-items:flex-start;flex-direction:column}.limit-message,.warning-message{margin-left:0;margin-top:5px}}.feedback-section{background-color:#f8f9fa;border-left:4px solid #007bff;border-radius:8px;margin-top:20px;padding:20px}.feedback-header{border-radius:6px;margin-bottom:20px;padding:15px;text-align:center}.feedback-header.correct{background-color:#d4edda;border:1px solid #c3e6cb;color:#155724}.feedback-header.incorrect{background-color:#f8d7da;border:1px solid #f5c6cb;color:#721c24}.feedback-header h3{font-size:1.5em;font-weight:700;margin:0}.answer-details{background-color:#fff;border:1px solid #dee2e6;border-radius:6px;margin-bottom:20px;padding:15px}.answer-details p{font-size:1.1em;margin:8px 0}.additional-info,.explanation,.hint{background-color:#fff;border:1px solid #dee2e6;border-radius:6px;margin-bottom:20px;padding:15px}.additional-info h4,.explanation h4,.hint h4{color:#495057;font-size:1.1em;font-weight:600;margin:0 0 10px}.additional-info p,.explanation p,.hint p{color:#495057;line-height:1.6;margin:0}.explanation{border-left:4px solid #28a745}.hint{border-left:4px solid #ffc107}.additional-info{border-left:4px solid #17a2b8}.quiz-header{margin-bottom:0}.progress-bar{background-color:#e9ecef;border-radius:4px;height:8px;margin-bottom:10px;overflow:hidden}.progress-fill{background-color:#007bff;height:100%;transition:width .3s ease}.progress-text{color:#6c757d;font-weight:500;margin:0;text-align:center}.question-card{overflow:hidden;position:relative}.question-type-badge{background-color:#007bff;border-radius:20px;color:#fff;font-size:.85em;font-weight:500;padding:6px 12px;position:absolute;right:15px;top:15px}.question-text{color:#333;font-size:1.2em;line-height:1.5;margin:20px 0 30px}.options{margin-bottom:30px}.option-label{align-items:center;background-color:#fff;border:2px solid #e9ecef;border-radius:8px;cursor:pointer;display:flex;margin-bottom:10px;padding:12px 15px;transition:all .2s ease}.option-label:hover{background-color:#f8f9fa;border-color:#007bff}.option-label input[type=radio]{margin-right:12px;transform:scale(1.2)}.option-text{color:#495057;flex:1 1;font-size:1.1em}.essay-input{margin-bottom:30px}.form-textarea{font-size:1.1em;line-height:1.5;min-height:120px;resize:vertical}.quiz-actions{margin-top:30px;text-align:center}.quiz-actions .btn{border-radius:8px;font-size:1.1em;font-weight:500;padding:12px 30px;transition:all .2s ease}.quiz-actions .btn:hover{box-shadow:0 4px 12px #1e40af4d;transform:translateY(-2px)}.btn,.btn-primary,.btn-secondary,button{text-decoration:none!important}.login-container{align-items:center;display:flex;justify-content:center;min-height:calc(100vh - 160px);padding:20px}.login-card{max-width:400px;padding:40px;text-align:center;width:100%}.login-card h2{color:#1e40af;font-size:1.8em;margin-bottom:10px}.login-card p{color:#666;margin-bottom:30px}.error-message{background:#fee;border:1px solid #fed7d7;border-radius:8px;color:#c53030;margin-bottom:20px;padding:12px}.login-links{margin-top:30px;text-align:center}.login-links p{color:#666;margin-bottom:10px}.btn-link{background:none;border:none;color:#1e40af;cursor:pointer;font-size:inherit;text-decoration:underline}.btn-link:hover{color:#1e3a8a}.admin-header{align-items:center;border-bottom:2px solid #e5e7eb;display:flex;justify-content:space-between;margin-bottom:30px;padding-bottom:20px}.admin-header h1{color:#1e40af;margin:0}.admin-actions{display:flex;gap:10px}.admin-tabs{border-bottom:1px solid #e5e7eb;display:flex;gap:5px;margin-bottom:30px}.tab-button{background:none;border:none;border-bottom:3px solid #0000;color:#666;cursor:pointer;font-weight:500;padding:12px 20px;transition:all .2s ease}.tab-button.active,.tab-button:hover{background:#f8fafc;color:#1e40af}.tab-button.active{border-bottom-color:#1e40af}.stats-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:30px}.stat-card{background:#fff;border:1px solid #e5e7eb;border-radius:12px;box-shadow:0 2px 10px #0000001a;padding:20px;text-align:center}.stat-card h3{color:#666;font-size:14px;font-weight:500;margin:0 0 10px}.stat-number{color:#1e40af;font-size:2.5em;font-weight:700;margin:0}.students-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.student-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:15px}.btn-sm{border-radius:6px;font-size:12px;padding:6px 12px}.btn-success{background:#10b981;border:none;color:#fff}.btn-success:hover{background:#059669}.btn-warning{background:#f59e0b;border:none;color:#fff}.btn-warning:hover{background:#d97706}.btn-danger{background:#ef4444;border:none;color:#fff}.btn-danger:hover{background:#dc2626}.status-active{color:#10b981;font-weight:500}.status-inactive{color:#ef4444;font-weight:500}.sessions-list{grid-gap:15px;display:grid;gap:15px}.session-item{background:#f8fafc;border:1px solid #e5e7eb;border-radius:8px;padding:15px}.session-item p{font-size:14px;margin:5px 0}.books-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(250px,1fr))}.book-actions{margin-top:15px}@media (max-width:768px){.login-card{padding:30px 20px}.admin-header{flex-direction:column;gap:15px;text-align:center}.admin-tabs{overflow-x:auto;white-space:nowrap}.tab-button{min-width:-webkit-max-content;min-width:max-content}.stats-grid{grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.books-grid,.students-grid{grid-template-columns:1fr}.student-actions{justify-content:center}}
/*# sourceMappingURL=main.d0a39d1e.css.map*/