*{box-sizing:border-box;padding:0;margin:0}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.skip-to-main{position:absolute;top:-40px;left:0;background:#1a1a1a;color:#fff;padding:8px;text-decoration:none;z-index:100}.skip-to-main:focus{top:0}body,html{max-width:100vw;overflow-x:hidden;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif,Arial Hebrew,David,Guttman Yad,Miriam,New Peninim;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;direction:rtl}body{background:#f5f7fa;min-height:100vh}.app-wrapper,body{padding:0;position:relative}.site-header{background:#fff;border-bottom:2px solid rgba(0,0,0,.08);box-shadow:0 2px 12px rgba(0,0,0,.06);position:-webkit-sticky;position:sticky;top:0;z-index:1000}.header-inner{max-width:1200px;margin:0 auto;padding:16px 24px;display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap}.header-logo-link{text-decoration:none;color:inherit}.header-title{margin:0;font-size:1.75rem;font-weight:800;color:#1a1a1a;letter-spacing:-.02em}.header-logo-link:hover .header-title{color:#333}.header-logo-img{display:block;height:72px;width:auto;object-fit:contain}.header-nav{display:flex;align-items:center;gap:8px}.nav-link{display:inline-block;padding:10px 20px;font-size:1rem;font-weight:600;color:#1a1a1a;text-decoration:none;border-radius:10px;transition:all .25s ease}.nav-link:hover{background:#f0f0f0;color:#1a1a1a}.nav-link-active{background:#1a1a1a;color:#fff}.nav-link-active:hover{background:#333;color:#fff}@media (max-width:768px){.header-inner{padding:14px 20px;flex-direction:column;align-items:stretch}.header-title{font-size:1.5rem;text-align:center}.header-nav{justify-content:center;gap:6px}.nav-link{padding:10px 16px;font-size:.95rem}}@media (max-width:480px){.header-inner{padding:12px 16px}.header-title{font-size:1.35rem}.nav-link{padding:8px 14px;font-size:.9rem}}@media (max-width:768px){body{padding:15px}.app-wrapper{padding:0}}@media (max-width:480px){body{padding:10px}}.container{max-width:1200px;margin:20px auto;background:#fff;border-radius:12px;padding:40px;box-shadow:0 2px 12px rgba(0,0,0,.08);animation:slideUp .6s cubic-bezier(.16,1,.3,1);position:relative;z-index:1;display:flex;flex-direction:column;max-height:calc(100vh - 126px);overflow-y:auto;overflow-x:hidden}.container.home-page,.container.practice-page,.container.sc-container{max-height:none;overflow:visible}.home-intro{text-align:center;font-size:1.25rem;color:#555;margin-bottom:48px;line-height:1.7}.home-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));grid-gap:28px;gap:28px}.home-card{display:block;background:#fafafa;border:2px solid #e8e8e8;border-radius:18px;padding:32px;text-decoration:none;color:inherit;transition:all .3s ease}.home-card:hover{border-color:#1a1a1a;box-shadow:0 12px 32px rgba(0,0,0,.1);transform:translateY(-4px)}.home-card h2,.home-card h3{margin-bottom:14px;font-size:1.5rem;color:#1a1a1a}.home-about{margin-top:2.5rem;padding-top:2rem;border-top:1px solid #e8e8e8;width:100%}.home-about h2{font-size:1.25rem;font-weight:700;color:#1a1a1a;margin-bottom:.75rem}.home-about h3{font-size:1.05rem;font-weight:600;color:#333;margin-top:1rem;margin-bottom:.35rem}.home-about p{color:#555;font-size:.95rem;line-height:1.65;margin-bottom:0}.home-about p+h3{margin-top:1.25rem}.pwa-banner{margin-top:1.5rem;padding:14px 44px 14px 16px;background:#1a1a1a;color:#fff;border-radius:14px;position:relative;display:flex;flex-wrap:wrap;align-items:center;gap:10px}@media (min-width:769px){.pwa-banner{display:none}}.pwa-banner-install{padding:10px 18px;background:#fff;color:#1a1a1a;border:none;border-radius:10px;font-size:.95rem;font-weight:700;cursor:pointer;transition:transform .2s,box-shadow .2s}.pwa-banner-install:hover{transform:translateY(-1px);box-shadow:0 4px 12px rgba(0,0,0,.15)}.pwa-banner-install:active{transform:none}.pwa-banner-dismiss{position:absolute;top:50%;inset-inline-start:12px;transform:translateY(-50%);width:28px;height:28px;padding:0;background:hsla(0,0%,100%,.2);color:#fff;border:none;border-radius:50%;font-size:1.25rem;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .2s}.pwa-banner-dismiss:hover{background:hsla(0,0%,100%,.35)}.pwa-banner-ios-help{width:100%;margin-top:8px;padding:12px;background:hsla(0,0%,100%,.1);border-radius:10px;font-size:.9rem;line-height:1.5}.pwa-banner-ios-help p{margin:0 0 8px;font-weight:600}.pwa-banner-ios-help ol{margin:0;-webkit-padding-start:20px;padding-inline-start:20px}.pwa-banner-ios-help li{margin-bottom:4px}.home-card p{color:#555;line-height:1.65;margin-bottom:20px}.home-card-link{display:inline-block;font-weight:700;color:#1a1a1a;font-size:1rem;transition:color .2s}.home-card:hover .home-card-link{color:#333}.practice-page{max-height:none}.practice-intro{text-align:center;font-size:1.2rem;color:#555;margin-bottom:40px;line-height:1.6}.practice-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));grid-gap:24px;gap:24px;margin-bottom:40px}.practice-card{background:#fafafa;border:2px solid #e8e8e8;border-radius:16px;padding:28px;position:relative;transition:all .3s ease}.practice-card:hover{border-color:#1a1a1a;box-shadow:0 8px 24px rgba(0,0,0,.08)}.practice-card h2{margin-bottom:12px;font-size:1.4rem}.practice-card p{color:#555;line-height:1.6;margin-bottom:20px}.practice-card.coming-soon{opacity:.9}.practice-badge{display:inline-block;padding:6px 14px;background:#e0e0e0;color:#555;border-radius:8px;font-size:.9rem;font-weight:600}.practice-footer{text-align:center;padding-top:24px;border-top:1px solid #eee}.back-link{color:#1a1a1a;text-decoration:none;font-weight:600;transition:color .2s}.back-link:hover{color:#333}@media (max-width:768px){.container.home-page,.container.practice-page,.container.sc-container{max-height:none;overflow:visible}.home-cards{grid-template-columns:1fr;gap:20px}.home-card{padding:24px}.home-about{margin-top:2rem;padding-top:1.5rem}.container{padding:25px;border-radius:12px;margin:0;max-height:calc(100vh - 140px)}.container.home-page,.container.practice-page,.container.sc-container{max-height:none;overflow:visible}}@media (max-width:480px){.container{padding:20px;border-radius:12px;max-height:calc(100vh - 140px)}.container.home-page,.container.practice-page,.container.sc-container{max-height:none;overflow:visible}}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}h1{color:#333;margin-bottom:30px;text-align:center;font-size:2.5rem;color:#1a1a1a;font-weight:700;letter-spacing:-.01em;flex-shrink:0}@media (max-width:768px){h1{font-size:2rem;margin-bottom:30px}}@media (max-width:480px){h1{font-size:1.5rem;margin-bottom:20px}}h2{color:#1a1a1a;margin-bottom:25px;font-size:1.8rem}h2,h3{font-weight:700}h3{color:#444;margin-bottom:20px;font-size:1.4rem;letter-spacing:-.01em}.input-section{margin-bottom:30px}.input-group{display:flex;gap:10px;margin-bottom:20px}input[type=text]{flex:1 1;padding:12px 16px;border:2px solid #e0e0e0;border-radius:8px;font-size:16px;transition:border-color .3s}input[type=text]:focus{outline:none;border-color:#1a1a1a}button{padding:14px 28px;background:#1a1a1a;color:#fff;border:none;border-radius:12px;font-size:16px;font-weight:600;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);box-shadow:0 2px 8px rgba(0,0,0,.2);position:relative;overflow:hidden}button:focus-visible{outline:3px solid #4a90e2;outline-offset:2px}button:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,hsla(0,0%,100%,.3),transparent);transition:left .5s}button:hover:before{left:100%}button:hover{background:#333;transform:translateY(-3px);box-shadow:0 4px 12px rgba(0,0,0,.3)}button:active{transform:translateY(-1px);box-shadow:0 4px 15px rgba(102,126,234,.4)}button:disabled{background:#ccc;cursor:not-allowed;transform:none}.words-list-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:25px;flex-wrap:wrap;gap:15px;padding:0 5px}.search-input{padding:14px 20px;border:2px solid #e0e0e0;border-radius:30px;font-size:15px;width:100%;max-width:350px;transition:all .3s cubic-bezier(.4,0,.2,1);background:linear-gradient(135deg,#fff,#f8f9fa);box-shadow:0 2px 8px rgba(0,0,0,.05)}.search-input:focus{outline:none;border-color:#1a1a1a;box-shadow:0 0 0 3px rgba(26,26,26,.1),0 2px 8px rgba(0,0,0,.1);transform:scale(1.01);background:#fff}.search-input:focus-visible,input[type=number]:focus-visible{outline:3px solid #4a90e2;outline-offset:2px}.main-content-wrapper{display:flex;flex-direction:column;flex:1 1;min-height:0;overflow:hidden}.words-list-container{flex:1 1;overflow-y:auto;padding:20px;margin-bottom:25px;border:1px solid #e0e0e0;border-radius:12px;background:#fafafa;min-height:0}@media (max-width:768px){.words-list-container{margin-bottom:15px}}.words-list-container::-webkit-scrollbar{width:10px}.words-list-container::-webkit-scrollbar-track{background:#f0f0f0;border-radius:10px}.words-list-container::-webkit-scrollbar-thumb{background:#1a1a1a;border-radius:10px;box-shadow:inset 0 0 5px rgba(0,0,0,.2)}.words-list-container::-webkit-scrollbar-thumb:hover{background:#333}.words-list-show-more{display:flex;justify-content:center;padding:16px 0;margin-top:8px}.show-more-btn{padding:12px 24px;font-size:15px;background:#1a1a1a;color:#fff;border:none;border-radius:24px;cursor:pointer;transition:background .2s,transform .2s}.show-more-btn:hover{background:#333;transform:translateY(-2px)}.show-more-btn:active{transform:translateY(0)}.words-list{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:30px}.word-tag{background:#f0f0f0;padding:8px 16px;border-radius:20px;gap:8px;font-size:14px}.word-tag,.word-tag button{display:flex;align-items:center}.word-tag button{background:#f44;padding:4px 8px;font-size:12px;border-radius:50%;width:24px;height:24px;justify-content:center}.word-tag button:hover{background:#c00}.take-test-btn{width:100%;padding:18px 32px;font-size:20px;margin-top:auto;background:#1a1a1a;font-weight:700;letter-spacing:.5px;box-shadow:0 4px 12px rgba(0,0,0,.2);flex-shrink:0}.take-test-wrapper{display:flex;justify-content:center;margin-top:auto;flex-shrink:0;padding-top:20px}.take-test-btn:hover{box-shadow:0 6px 20px rgba(0,0,0,.3);transform:translateY(-4px);background:#333}@media (max-width:768px){.take-test-btn{padding:16px 24px;font-size:18px}}@media (max-width:480px){.take-test-btn{padding:14px 20px;font-size:16px}}.exam-section{text-align:center;display:flex;flex-direction:column;padding:0 10px}.progress-bar-container{width:100%;height:6px;background:#e0e0e0;border-radius:10px;margin-bottom:20px;overflow:hidden;flex-shrink:0}.progress-bar{height:100%;width:var(--progress-width,0);background:#1a1a1a;border-radius:10px;transition:width .3s ease}.question-number{color:#1a1a1a;font-size:1.1rem;margin-bottom:15px;font-weight:600;flex-shrink:0}.question-word{font-size:3rem;font-weight:800;color:#1a1a1a;margin:40px 0;min-height:80px;padding:30px;background:linear-gradient(135deg,#fff,#f8f9ff);border-radius:20px;box-shadow:0 8px 25px rgba(0,0,0,.1),0 0 0 1px rgba(102,126,234,.1);border:3px solid #e8edff;animation:fadeIn .5s cubic-bezier(.16,1,.3,1);letter-spacing:-.02em;text-align:center;position:relative;overflow:hidden;direction:ltr;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}@media (max-width:768px){.question-word{font-size:2rem;padding:15px;margin:15px 0}}@media (max-width:480px){.question-word{font-size:1.5rem;padding:12px;margin:12px 0}}@keyframes fadeIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.answer-input{width:100%;max-width:400px;margin:0 auto 20px;padding:16px;font-size:18px;text-align:center;border:3px solid #e0e0e0;border-radius:12px}.answer-input.correct{border-color:#4caf50;background-color:#e8f5e9}.answer-input.incorrect{border-color:#f44336;background-color:#ffebee}.feedback{margin:25px 0;padding:18px 28px;border-radius:10px;font-size:17px;font-weight:600;animation:fadeIn .3s ease;text-align:center;flex-shrink:0}@keyframes scaleIn{0%{opacity:0;transform:scale(.8) rotate(-5deg)}50%{transform:scale(1.05) rotate(2deg)}to{opacity:1;transform:scale(1) rotate(0deg)}}.feedback.correct{background-color:#4caf50;color:#fff}.feedback.incorrect{background-color:#f44336;color:#fff}.next-btn{padding:16px 36px;flex-shrink:0;background:#1a1a1a;color:#fff;border:none;border-radius:10px;font-size:18px;font-weight:600;cursor:pointer;transition:all .2s ease;box-shadow:0 2px 8px rgba(0,0,0,.2);width:100%;max-width:400px;margin:0 auto}.next-btn:hover{background:#333;box-shadow:0 4px 12px rgba(0,0,0,.3);transform:translateY(-2px)}@media (max-width:768px){.next-btn{padding:12px 24px;font-size:16px}}.container:has(.summary-section){max-height:none;overflow:visible}.summary-section{margin-top:0;display:flex;flex-direction:column;padding-bottom:20px;overflow:visible}.summary-stats{display:grid;grid-template-columns:repeat(2,1fr);grid-gap:20px;gap:20px;margin-bottom:30px}.stat-card{background:linear-gradient(135deg,#fff,#f8f9ff);padding:30px;border-radius:20px;text-align:center;box-shadow:0 8px 25px rgba(0,0,0,.1),0 0 0 1px rgba(102,126,234,.1);transition:all .4s cubic-bezier(.4,0,.2,1);border:2px solid #e8edff;position:relative;overflow:hidden}.stat-card:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:#1a1a1a;transform:scaleX(0);transition:transform .4s}.stat-card:hover{transform:translateY(-8px) scale(1.03);box-shadow:0 15px 40px rgba(102,126,234,.25)}.stat-card:hover:before{transform:scaleX(1)}.stat-number{font-size:3rem;font-weight:800;color:#1a1a1a;letter-spacing:-.02em}.stat-number-correct{color:#4caf50}.stat-number-incorrect{color:#f44336}.stat-label{color:#666;margin-top:10px;font-weight:600;font-size:.95rem;letter-spacing:.3px}.words-summary{margin-top:30px;margin-bottom:20px;overflow:visible}.word-summary-item{display:flex;justify-content:space-between;align-items:center;padding:20px;margin-bottom:12px;border-radius:14px;background:linear-gradient(135deg,#fff,#f8f9fa);box-shadow:0 2px 8px rgba(0,0,0,.08);transition:all .3s cubic-bezier(.4,0,.2,1);border:2px solid transparent}.word-summary-item:hover{transform:translateX(-5px);box-shadow:0 6px 20px rgba(0,0,0,.12)}.word-summary-item.correct{border-right:5px solid #4caf50;background:linear-gradient(135deg,#e8f5e9,#fff)}.word-summary-item.incorrect{border-right:5px solid #f44336;background:linear-gradient(135deg,#ffebee,#fff)}.word-info{flex:1 1}.word-text{font-weight:700;font-size:1.1rem;color:#333}.word-answer{color:#666;margin-top:4px}.word-status{font-weight:700;padding:6px 12px;border-radius:6px}.word-status.correct{background:#4caf50;color:#fff}.word-status.incorrect{background:#f44336;color:#fff}.restart-btn{margin-top:30px;width:100%;padding:16px;font-size:18px;flex-shrink:0}.empty-state{text-align:center;color:#666;padding:50px 40px;font-size:1.2rem;background:linear-gradient(135deg,#f8f9fa,#fff);border-radius:20px;border:3px dashed #e0e0e0;box-shadow:0 4px 15px rgba(0,0,0,.05);transition:all .3s}.empty-state:hover{border-color:#1a1a1a;background:#f5f5f5;transform:scale(1.02)}.pdf-upload-section{margin-bottom:30px;text-align:center}.file-upload-label{display:inline-block;cursor:pointer}.file-upload-button{display:inline-block;padding:14px 28px;background:#1a1a1a;color:#fff;border-radius:8px;font-size:16px;font-weight:600;transition:background .3s,transform .2s}.file-upload-button:hover{background:#333;transform:translateY(-2px)}.file-upload-label input:disabled+.file-upload-button{background:#ccc;cursor:not-allowed;transform:none}.error-message{margin-top:10px;padding:12px 16px;background:#ffebee;color:#c62828;border-radius:8px;font-size:14px;border-left:4px solid #f44336;animation:slideIn .3s ease}.error-message:has-text("✅"){background:#e8f5e9;color:#2e7d32;border-left-color:#4caf50}@keyframes slideIn{0%{opacity:0;transform:translateX(-10px)}to{opacity:1;transform:translateX(0)}}.divider{text-align:center;margin:30px 0;position:relative}.divider:after,.divider:before{content:"";position:absolute;top:50%;width:45%;height:1px;background:#e0e0e0}.divider:before{left:0}.divider:after{right:0}.divider span{background:#fff;padding:0 15px;color:#999;font-weight:600}.word-pair-input{display:flex;gap:10px;align-items:center;margin-bottom:20px}.word-pair-input input{flex:1 1}.arrow{font-size:24px;color:#1a1a1a;font-weight:700}.word-pair-tag{background:#fff;padding:14px 18px;border-radius:10px;display:flex;align-items:center;gap:12px;font-size:15px;margin-bottom:8px;border:1px solid #e0e0e0;transition:all .2s ease;box-shadow:0 1px 3px rgba(0,0,0,.05);position:relative;overflow:visible;cursor:pointer;direction:ltr}.word-tooltip{position:absolute;bottom:-50px;right:50%;transform:translateX(50%);background:#1a1a1a;color:#fff;padding:8px 16px;border-radius:8px;font-size:14px;font-weight:600;white-space:nowrap;z-index:1000;box-shadow:0 4px 15px rgba(0,0,0,.3);pointer-events:none;animation:tooltipFadeIn .3s ease}@keyframes tooltipFadeIn{0%{opacity:0;transform:translateX(50%) translateY(-10px)}to{opacity:1;transform:translateX(50%) translateY(0)}}@media (max-width:768px){.word-pair-tag{padding:12px 16px;font-size:14px}.word-tooltip{font-size:12px;padding:6px 12px;bottom:-45px}}.word-pair-tag:hover{box-shadow:0 2px 8px rgba(0,0,0,.1);border-color:#1a1a1a;background:#f5f5f5}.pair-english{font-weight:700;color:#1a1a1a;font-size:15px;letter-spacing:.2px;direction:ltr;text-align:left;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.pair-separator{color:#1a1a1a;font-weight:800;font-size:18px;margin:0 5px}.pair-hebrew{color:#444;font-weight:600;font-size:15px}.word-pair-tag.correct-word{background:linear-gradient(135deg,#e8f5e9,#c8e6c9);border-color:#4caf50}.word-pair-tag.correct-word .pair-english,.word-pair-tag.correct-word .pair-hebrew{color:#2e7d32}.correct-indicator{color:#4caf50;font-weight:800;font-size:22px;margin-right:auto;animation:checkmarkPulse 2s ease-in-out infinite}@keyframes checkmarkPulse{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.2);opacity:.8}}.word-pair-tag button{background:#f44;padding:4px 8px;font-size:12px;border-radius:50%;width:24px;height:24px;display:flex;align-items:center;justify-content:center;margin-left:auto}.word-pair-tag button:hover{background:#c00}.question-type{color:#666;font-size:1rem;font-weight:600;margin-bottom:20px;flex-shrink:0}.multiple-choice-options{display:flex;flex-direction:column;gap:12px;margin:25px 0;max-width:100%;padding:0 5px}@media (max-width:768px){.multiple-choice-options{gap:8px;margin:15px 0;padding:0 5px}}.option-button{display:flex;align-items:center;padding:18px 22px;background:#fff;border:1px solid #e0e0e0;border-radius:10px;font-size:16px;cursor:pointer;transition:all .2s ease;text-align:right;width:100%;color:#333;box-shadow:0 1px 3px rgba(0,0,0,.08);flex-shrink:0}.option-button:hover:not(:disabled){background:#f8f9fa;border-color:#1a1a1a;box-shadow:0 2px 6px rgba(0,0,0,.1)}.option-button.selected{background:#f0f0f0;border-color:#1a1a1a;font-weight:600;color:#333;box-shadow:0 2px 8px rgba(0,0,0,.15)}.option-button.correct-option{background:#c8e6c9;border-color:#388e3c;color:#1b5e20;font-weight:600}.option-button.incorrect-option{background:#ffcdd2;border-color:#d32f2f;color:#b71c1c}.option-button:disabled{cursor:not-allowed}.option-letter{font-weight:700;color:#1a1a1a;margin-right:12px;min-width:30px;font-size:20px}.option-button.correct-option .option-letter{color:#388e3c}.option-button.incorrect-option .option-letter{color:#d32f2f}.option-text{flex:1 1}.checkmark{color:#388e3c}.checkmark,.crossmark{margin-left:auto;font-size:24px;font-weight:700}.crossmark{color:#d32f2f}.submit-answer-btn{padding:16px 36px;font-size:18px;flex-shrink:0;background:#1a1a1a;color:#fff;border:none;border-radius:10px;font-weight:600;cursor:pointer;transition:all .2s ease;box-shadow:0 2px 8px rgba(0,0,0,.2);width:100%;max-width:400px;margin:0 auto}.submit-answer-btn:hover:not(:disabled){background:#333;box-shadow:0 4px 12px rgba(0,0,0,.3);transform:translateY(-2px)}.submit-answer-btn:disabled{background:#ccc;cursor:not-allowed;transform:none;box-shadow:none}.next-button-wrapper,.submit-button-wrapper{flex-shrink:0;margin-top:auto;padding-top:25px}@media (max-width:768px){.submit-answer-btn{padding:12px 24px;font-size:16px}.next-button-wrapper,.submit-button-wrapper{padding-top:15px}}.category-selection{text-align:center;padding:0 10px}.category-buttons{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));grid-gap:20px;gap:20px;margin:30px 0;max-width:100%}@media (max-width:1024px){.category-buttons{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:18px}}@media (max-width:768px){.category-selection{padding:0 5px}.category-buttons{grid-template-columns:repeat(2,1fr);gap:15px;margin:20px 0}}@media (max-width:480px){.category-buttons{grid-template-columns:1fr;gap:12px;margin:15px 0}}.category-item{display:flex;flex-direction:column;gap:10px}.category-btn{padding:28px 24px;background:linear-gradient(135deg,#fff,#f8f9fa);border:3px solid #e0e0e0;border-radius:18px;cursor:pointer;transition:all .4s cubic-bezier(.4,0,.2,1);text-align:center;box-shadow:0 4px 12px rgba(0,0,0,.08);position:relative;overflow:hidden;width:100%;min-width:0}@media (max-width:768px){.category-btn{padding:24px 20px}}@media (max-width:480px){.category-btn{padding:20px 16px;border-radius:14px}}.category-btn:after{content:"";position:absolute;top:50%;left:50%;width:0;height:0;border-radius:50%;background:rgba(102,126,234,.1);transform:translate(-50%,-50%);transition:width .6s,height .6s}.category-btn:hover:after{width:300px;height:300px}.category-btn:hover:not(:disabled){transform:translateY(-8px) scale(1.03);box-shadow:0 8px 20px rgba(0,0,0,.15);border-color:#1a1a1a;background:#f5f5f5}.category-btn.selected{background:#1a1a1a;border-color:#1a1a1a;color:#fff;box-shadow:0 8px 25px rgba(0,0,0,.3);transform:scale(1.05)}.category-btn.selected .category-count,.category-btn.selected .category-name{color:#fff}.category-btn:disabled{opacity:.5;cursor:not-allowed;transform:none}.category-name{font-size:1.4rem;font-weight:800;color:#333;margin-bottom:10px;letter-spacing:.3px}@media (max-width:768px){.category-name{font-size:1.2rem}}@media (max-width:480px){.category-name{font-size:1.1rem}}.category-count{font-size:1rem;color:#666;font-weight:600}.category-upload-label{display:inline-block;cursor:pointer;width:100%}.category-upload-btn{display:block;width:100%;padding:10px;background:#f0f0f0;border:2px dashed #ccc;border-radius:8px;text-align:center;font-size:.9rem;color:#666;transition:all .3s}.category-upload-btn:hover{background:#e0e0e0;border-color:#1a1a1a;color:#1a1a1a}.category-upload-label input:disabled+.category-upload-btn{background:#ccc;cursor:not-allowed;opacity:.6}.question-count-selection{margin:30px 0;padding:20px;background:#f8f9fa;border-radius:12px}.category-question-count-input{margin:0 10px;padding:8px;font-size:16px;width:80px;border-radius:8px;border:2px solid #e0e0e0}.input-hidden{display:none}.file-upload-button:disabled{background:#ccc;cursor:not-allowed}.file-upload-button:not(:disabled){margin-top:20px}.question-count-selection label{display:flex;align-items:center;justify-content:center;font-size:1.1rem;font-weight:600;color:#333;flex-wrap:wrap;gap:10px}.question-count-hint{font-weight:500;color:#666;font-size:.95rem}.category-actions{display:flex;gap:15px;justify-content:center;margin-top:20px;flex-wrap:wrap}.category-actions .take-test-btn{flex:1 1;min-width:150px;max-width:300px}.category-actions .cancel-btn{background:#666}@media (max-width:480px){.question-count-selection{padding:15px;margin:20px 0}.question-count-selection label{font-size:1rem;flex-direction:column}.category-actions{flex-direction:column;gap:12px}.category-actions .take-test-btn{width:100%;max-width:100%}}.summary-percentage{margin:40px 0;padding:35px;background:linear-gradient(135deg,#e3f2fd,#bbdefb 50%,#90caf9);background-size:200% 200%;border-radius:24px;text-align:center;box-shadow:0 10px 30px rgba(33,150,243,.2);border:2px solid rgba(33,150,243,.2);animation:percentageBg 8s ease infinite;position:relative;overflow:hidden}.summary-percentage:before{content:"";position:absolute;top:-50%;left:-50%;width:200%;height:200%;background:radial-gradient(circle,hsla(0,0%,100%,.3) 0,transparent 70%);animation:rotate 10s linear infinite;z-index:0;pointer-events:none}@keyframes percentageBg{0%,to{background-position:0 50%}50%{background-position:100% 50%}}@keyframes rotate{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.summary-percentage h3{margin-bottom:20px;color:#1976d2;position:relative;z-index:1}.percentage-display{font-size:1.2rem;color:#333;position:relative;z-index:1}.percentage-bar{width:100%;height:40px;background:linear-gradient(135deg,#e0e0e0,#f0f0f0);border-radius:20px;margin:25px 0;z-index:1;box-shadow:inset 0 2px 10px rgba(0,0,0,.1);border:2px solid #e0e0e0}.percentage-bar,.percentage-fill{overflow:hidden;position:relative}.percentage-fill{height:100%;width:var(--percentage-width,0);background:linear-gradient(90deg,#4caf50,#66bb6a 50%,#81c784);background-size:200% 100%;border-radius:18px;transition:width .8s cubic-bezier(.4,0,.2,1);display:flex;align-items:center;justify-content:center;color:#fff;font-weight:700;font-size:16px;animation:progressFill 3s ease infinite;box-shadow:0 2px 10px rgba(76,175,80,.4)}.percentage-fill:after{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,hsla(0,0%,100%,.3),transparent);animation:fillShine 2s infinite}@keyframes progressFill{0%,to{background-position:0 50%}50%{background-position:100% 50%}}@keyframes fillShine{0%{left:-100%}to{left:100%}}.percentage-text{font-size:2.5rem;font-weight:800;background:linear-gradient(135deg,#4caf50,#66bb6a);-webkit-background-clip:text;-webkit-text-fill-color:transparent;position:relative;z-index:1;background-clip:text;margin-top:15px;letter-spacing:-.02em}.ad-corner{display:none}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.sc-container{max-width:720px;margin:0 auto;padding:32px 24px}.sc-container h1{margin-bottom:8px;font-size:1.875rem;font-weight:800;color:#1a1a1a;letter-spacing:-.02em}.sc-page-title{text-align:right}.sc-container h2.sc-section-title{margin-bottom:12px;font-size:1.35rem;font-weight:700;color:#333;text-align:right}.sc-intro,.sc-loading{margin-bottom:24px;color:#555;font-size:1.05rem}.sc-intro{line-height:1.6;max-width:560px}.sc-options{flex-wrap:wrap;gap:20px 28px;margin-bottom:24px;padding:24px;background:#fff;border:2px solid #e8eaed;border-radius:14px;box-shadow:0 2px 8px rgba(0,0,0,.04)}.sc-option-group,.sc-options{display:flex;align-items:center}.sc-option-group{gap:10px}.sc-option-group label{-webkit-margin-end:0;margin-inline-end:0;font-weight:600;color:#333}.sc-select{padding:10px 14px;font-size:1rem;border:2px solid #e0e0e0;border-radius:10px;background:#fff;cursor:pointer;min-width:140px;transition:border-color .2s,box-shadow .2s}.sc-select:hover{border-color:#bbb}.sc-select:focus{outline:none;border-color:#1a1a1a;box-shadow:0 0 0 3px rgba(26,26,26,.12)}.sc-checkbox-label{display:inline-flex;align-items:center;gap:10px;cursor:pointer;font-weight:500;color:#333}.sc-checkbox-label input{width:20px;height:20px;cursor:pointer;accent-color:#1a1a1a}.sc-count{margin-bottom:24px;color:#555;font-size:1rem}.sc-btn-start{padding:14px 28px;font-size:1.1rem}.sc-btn{padding:12px 22px;font-size:1rem;font-weight:600;border-radius:10px;cursor:pointer;border:2px solid transparent;transition:background .2s,border-color .2s,transform .1s}.sc-btn:focus{outline:none;box-shadow:0 0 0 3px rgba(26,26,26,.2)}.sc-btn:disabled{opacity:.5;cursor:not-allowed}.sc-btn-primary{background:#1a1a1a;color:#fff;border-color:#1a1a1a}.sc-btn-primary:hover:not(:disabled){background:#333;border-color:#333}.sc-btn-secondary{background:#fff;color:#1a1a1a;border-color:#ccc}.sc-btn-secondary:hover:not(:disabled){background:#f5f5f5;border-color:#aaa}.sc-question-view{margin-bottom:28px}.sc-question-header{margin-bottom:16px}.sc-question-counter{display:block;font-size:.95rem;font-weight:600;color:#555;margin-bottom:10px}.sc-progress-bar{height:8px;background:#e8eaed;border-radius:8px;overflow:hidden}.sc-progress-fill{height:100%;width:var(--sc-progress-width,0);background:linear-gradient(90deg,#1a1a1a,#333);border-radius:8px;transition:width .35s ease}.sc-sentence-wrapper{padding:22px 24px;background:#fff;border:2px solid #e8eaed;border-radius:14px;margin-bottom:12px;box-shadow:0 2px 8px rgba(0,0,0,.04)}.sc-sentence{font-size:1.2rem;line-height:1.65;color:#1a1a1a;text-align:right}.sc-choice-list{border:none;padding:0;margin:0 0 24px}.sc-choice-list legend{padding:0}.sc-option{display:flex;align-items:center;gap:14px;padding:16px 20px;margin-bottom:12px;background:#fff;border:2px solid #e8eaed;border-radius:12px;cursor:pointer;transition:border-color .2s,background .2s,box-shadow .2s;text-align:right}.sc-option:last-child{margin-bottom:0}.sc-option:hover{border-color:#bbb;box-shadow:0 2px 6px rgba(0,0,0,.05)}.sc-option:has(input:focus){outline:none;border-color:#1a1a1a;box-shadow:0 0 0 3px rgba(26,26,26,.12)}.sc-option input{width:22px;height:22px;cursor:pointer;flex-shrink:0;accent-color:#1a1a1a}.sc-option-label{font-weight:700;min-width:28px;color:#333;font-size:1.05rem}.sc-option-text{flex:1 1;line-height:1.5}.sc-option-correct{border-color:#2e7d32;background:#e8f5e9;box-shadow:0 2px 6px rgba(46,125,50,.12)}.sc-option-wrong{border-color:#c62828;background:#ffebee;box-shadow:0 2px 6px rgba(198,40,40,.1)}.sc-feedback{margin-bottom:28px;padding:20px 24px;background:#fff;border-radius:14px;border:2px solid #e8eaed;box-shadow:0 2px 8px rgba(0,0,0,.04)}.sc-feedback-result{font-size:1.25rem;font-weight:700;margin-bottom:0}.sc-feedback-correct{color:#2e7d32}.sc-feedback-incorrect{color:#c62828}.sc-feedback-explanation{margin-top:14px;padding-top:14px;border-top:1px solid #eee}.sc-feedback-explanation-label{font-weight:600;margin-bottom:6px;color:#333;font-size:.95rem}.sc-feedback-explanation-text{color:#444;line-height:1.6;font-size:1rem}.sc-controls{display:flex;flex-wrap:wrap;gap:14px;align-items:center;padding-top:8px}.sc-controls .sc-btn{flex-shrink:0}.sc-controls .sc-btn-primary{order:-1}.sc-summary{margin-bottom:28px;padding:24px 28px;background:#fff;border:2px solid #e8eaed;border-radius:14px;box-shadow:0 2px 8px rgba(0,0,0,.04)}.sc-summary-score{font-size:1.35rem;font-weight:700;color:#1a1a1a;margin:0}.sc-summary-actions{display:flex;flex-wrap:wrap;gap:14px}.sc-review-intro{margin-bottom:24px;color:#555;font-size:1.05rem;line-height:1.5}.sc-review-list{margin-bottom:28px}.sc-review-item{padding:20px 24px;margin-bottom:16px;background:#fff;border:2px solid #e8eaed;border-radius:14px;box-shadow:0 2px 6px rgba(0,0,0,.04);text-align:right}.sc-review-item:last-child{margin-bottom:0}.sc-review-question-num{font-size:.9rem;font-weight:600;color:#555;margin-bottom:10px}.sc-review-sentence{font-size:1.1rem;margin-bottom:10px;color:#1a1a1a;line-height:1.55}.sc-review-correct-answer,.sc-review-your-answer{margin-bottom:6px;color:#333;font-size:1rem}.sc-review-wrong{color:#c62828;font-weight:600}.sc-review-explanation{margin-top:10px;padding-top:10px;border-top:1px solid #eee;color:#555;font-size:.98rem;line-height:1.6}@media (max-width:640px){.sc-container{padding:20px 16px}.sc-container h1{font-size:1.5rem}.sc-options{gap:16px}.sc-options,.sc-sentence-wrapper{padding:18px 16px}.sc-sentence{font-size:1.1rem}.sc-option{padding:14px 16px}.sc-feedback{padding:16px 18px}.sc-controls{gap:10px}.sc-controls .sc-btn{padding:10px 16px;font-size:.95rem}.sc-summary{padding:20px 18px}.sc-summary-score{font-size:1.2rem}.sc-review-item{padding:16px 18px}}