.vocabulary-practice-page{padding:80px 0 120px}.vocabulary-practice-page .container{max-width:1120px;margin:0 auto;padding:0 40px}.vocabulary-practice-page .content-wrapper{max-width:820px;margin:0 auto}.vocabulary-practice-page section{margin-bottom:64px;padding-top:32px;border-top:1px solid var(--color-border)}.vocabulary-practice-page section:first-child{border-top:none;padding-top:0}.vocabulary-practice-page h1{font-size:clamp(2.4rem,4vw,3rem);margin-top:0;margin-bottom:24px;line-height:1.2;font-weight:700}.vocabulary-practice-page h2{font-size:1.75rem;margin-top:0;margin-bottom:20px;line-height:1.3;font-weight:600;padding-top:8px;position:relative}.vocabulary-practice-page h2:before{content:"";position:absolute;top:0;left:0;width:40px;height:3px;background:var(--color-primary);border-radius:2px}.modes-section{margin-bottom:64px}.modes-section h2{margin-bottom:28px}.modes-grid{display:flex;flex-direction:column;gap:20px}.mode-card{display:block;padding:24px 28px;background:#fff;border:1px solid var(--color-border);border-radius:12px;box-shadow:0 2px 8px #0000000f;text-decoration:none;color:inherit;transition:box-shadow .2s ease,border-color .2s ease}.mode-card:hover{box-shadow:0 4px 16px #00000014;border-color:var(--color-primary)}.mode-card:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.mode-card-title{margin:0 0 8px;font-size:1.15rem;font-weight:600;color:var(--color-dark);line-height:1.3}.mode-card-desc{margin:0;font-size:.95rem;line-height:1.6;color:var(--color-muted)}@media(min-width:768px){.modes-grid{flex-direction:row;flex-wrap:wrap;gap:24px}.mode-card{flex:1 1 calc(50% - 12px);min-width:0}}@media(min-width:1024px){.modes-grid{flex-direction:row;flex-wrap:nowrap;gap:24px}.mode-card{flex:1 1 0;min-width:0}}.vocabulary-practice-page .how-it-works-section{margin-bottom:64px}.vocabulary-practice-page h3{font-size:1.2rem;margin-top:24px;margin-bottom:12px;font-weight:600}.how-it-works-intro{margin-bottom:28px}.how-it-works-steps{list-style:none;margin:0 0 32px;padding:0;display:flex;flex-direction:column;gap:16px}.how-it-works-step{display:flex;gap:20px;align-items:flex-start;padding:20px 24px;background:var(--color-light);border:1px solid var(--color-border);border-radius:12px;margin-bottom:0}.how-it-works-step .step-num{flex-shrink:0;width:36px;height:36px;display:flex;align-items:center;justify-content:center;background:var(--color-primary);color:#fff;font-size:1rem;font-weight:700;border-radius:50%}.how-it-works-step .step-content{flex:1;min-width:0}.how-it-works-step .step-title{display:block;font-size:1.05rem;font-weight:600;color:var(--color-dark);margin-bottom:6px}.how-it-works-step .step-desc{margin:0;font-size:.95rem;line-height:1.6;color:var(--color-muted)}.how-it-works-extras{padding:0 28px;background:var(--color-light);border:1px solid var(--color-border);border-radius:12px;margin-bottom:28px}.how-it-works-extras-title{margin:0 0 14px;font-size:1.1rem;font-weight:600;color:var(--color-dark)}.how-it-works-extras-list{margin:0;padding-left:22px;color:var(--color-muted);line-height:1.7}.how-it-works-extras-list li{margin-bottom:6px}.how-it-works-cta-wrap{margin:0;text-align:center}.how-it-works-cta-wrap .cta-button{text-decoration:none}.faq-section{margin-bottom:64px}.levels-intro{margin-bottom:24px}.levels-accordion{list-style:none;margin:0 0 24px;padding:0;border:1px solid var(--color-border);border-radius:12px;overflow:hidden}.levels-accordion .level-item{margin-bottom:0}.levels-accordion .level-item+.level-item .level-summary{border-top:1px solid var(--color-border)}.levels-accordion .level-summary{display:flex;align-items:center;gap:12px;width:100%;padding:18px 24px;font-size:1.05rem;font-weight:600;color:var(--color-dark);background:var(--color-light);border:none;cursor:pointer;text-align:left;user-select:none;transition:background-color .2s ease,box-shadow .2s ease;font-family:inherit}.levels-accordion .level-summary:hover{background:#296eb30f}.levels-accordion .level-summary:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.levels-accordion .level-summary-icon{flex-shrink:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;background:var(--color-primary);color:#fff;font-size:1.2rem;font-weight:700;line-height:1;border-radius:10px;transition:transform .25s ease,background-color .2s ease,box-shadow .2s ease;box-shadow:0 2px 8px #296eb340}.levels-accordion .level-summary:hover .level-summary-icon{box-shadow:0 4px 12px #296eb34d}.levels-accordion .level-summary-icon:before{content:"+"}.levels-accordion .level-item.is-open .level-summary-icon:before{content:"−"}.levels-accordion .level-question{font-weight:600;color:var(--color-dark)}.levels-accordion .level-content{display:grid;grid-template-rows:0fr;transition:grid-template-rows .35s ease-out;overflow:hidden}.levels-accordion .level-item.is-open .level-content{grid-template-rows:1fr}.levels-accordion .level-content-inner{overflow:hidden;min-height:0}.levels-accordion .level-content-pad{padding:16px 24px 20px 56px;background:var(--color-light);border-top:1px solid var(--color-border)}.levels-accordion .level-content-pad p{margin:0;line-height:1.7;color:var(--color-muted)}@media(max-width:640px){.levels-accordion .level-summary{padding:16px 18px;font-size:1rem}.levels-accordion .level-content-pad{padding:14px 18px 18px 44px}}.benefits-section{margin-bottom:64px}.benefits-section h2,.benefits-intro{margin-bottom:28px}.benefits-grid{display:grid;grid-template-columns:1fr;gap:20px}.benefit-card{padding:20px 22px;background:var(--color-light);border:1px solid var(--color-border);border-radius:12px;margin:0}.benefit-card-title{margin:0 0 8px;font-size:1.05rem;font-weight:600;color:var(--color-dark);line-height:1.3}.benefit-card-desc{margin:0;font-size:.95rem;line-height:1.6;color:var(--color-muted)}@media(min-width:768px){.benefits-grid{grid-template-columns:repeat(2,1fr);gap:22px}}.vocabulary-practice-page p{margin:20px 0;line-height:1.7}@media(max-width:640px){.vocabulary-practice-page{padding:40px 0 60px}.vocabulary-practice-page .container{padding:0 20px}.vocabulary-practice-page h2:before{width:30px;height:2px}}.interactive-demo-section{margin:48px 0;padding-top:32px;border-top:1px solid var(--color-border)}.interactive-demo-section-heading{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.interactive-demo-section .demo-badge{margin-bottom:5px;display:inline-block;padding:4px 10px;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:var(--color-primary);background:#296eb31f;border-radius:6px}.interactive-demo-intro{margin-bottom:0}.interactive-demo-panel{background:var(--color-light);padding:40px;border-radius:12px;border:1px solid var(--color-border);margin-top:24px}.demo-cta-wrap{margin-top:32px;margin-bottom:0;text-align:center}.demo-cta-wrap .demo-cta{text-decoration:none}.final-cta-section{margin-bottom:64px}.final-cta-headline{margin:0 0 16px;font-size:1.75rem;font-weight:700;color:var(--color-dark);line-height:1.3}.final-cta-intro{margin:0 0 28px;font-size:1.05rem;line-height:1.6;color:var(--color-muted)}.final-cta-buttons{display:flex;flex-wrap:wrap;gap:16px;align-items:center;margin:0}.final-cta-buttons .cta-button,.final-cta-buttons .ghost-button{text-decoration:none}.interactive-demo-panel.app-style{--app-bg: #1e3a5f;--app-text: #ffffff;--app-text-muted: rgba(255, 255, 255, .7);--app-button-bg: #ffffff;--app-button-text: #0f172a;--app-button-shadow: 0 2px 8px rgba(0, 0, 0, .15);background:var(--app-bg);border:none;border-radius:20px;padding:32px 40px 40px;color:var(--app-text)}.demo-mode-tabs{display:flex;gap:0;margin-bottom:32px;padding:4px;background:#ffffff1f;border-radius:12px;width:fit-content;margin-left:auto;margin-right:auto}.demo-mode-tab{padding:10px 18px;font-size:.95rem;font-weight:600;color:var(--app-text-muted);background:transparent;border:none;border-radius:10px;cursor:pointer;font-family:inherit;transition:color .2s ease,background .2s ease}.demo-mode-tab:hover{color:var(--app-text)}.demo-mode-tab[aria-selected=true]{background:var(--app-button-bg);color:var(--app-button-text)}.demo-mode-tab:focus-visible{outline:2px solid rgba(255,255,255,.8);outline-offset:2px}.demo-body{position:relative;min-height:280px}.demo-screen{display:none}.demo-screen.demo-screen-active{display:block}.demo-screen[hidden]{display:none!important}.demo-screen-title{margin:0 0 20px;font-size:.9rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:var(--app-text-muted);text-align:center}.demo-prompt-card{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;min-height:120px;margin-bottom:28px;padding:28px 32px;background:#ffffff1a;border-radius:16px;border:2px dashed rgba(255,255,255,.25)}.demo-prompt-text{font-size:clamp(2rem,5vw,3rem);font-weight:700;color:var(--app-text)}.demo-prompt-hint{font-size:1rem;color:var(--app-text-muted)}.demo-answers-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.demo-answer-btn{padding:14px 20px;background:var(--app-button-bg);color:var(--app-button-text);border:none;border-radius:12px;font-size:1rem;font-weight:600;box-shadow:var(--app-button-shadow);cursor:pointer;font-family:inherit;transition:transform .2s ease,box-shadow .2s ease}.demo-answer-btn:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0003}.demo-answer-btn:focus-visible{outline:2px solid rgba(255,255,255,.8);outline-offset:2px}.demo-answer-btn.correct{background:#10b981;color:#fff}.demo-answer-btn.incorrect{background:#ef4444;color:#fff}.demo-answer-btn:disabled,.demo-answer-btn.answered-dim{cursor:default}.demo-answer-btn:disabled:hover,.demo-answer-btn.answered-dim:hover{transform:none;box-shadow:var(--app-button-shadow)}.demo-answer-btn.answered-dim{opacity:.5;pointer-events:none}.demo-retry-wrap{margin-top:24px;text-align:center}.interactive-demo-panel.app-style .demo-retry-btn{padding:12px 24px;background:#fff3;color:var(--app-text);border:1px solid rgba(255,255,255,.4);border-radius:12px;font-size:1rem;font-weight:600;cursor:pointer;font-family:inherit;transition:background .2s ease,border-color .2s ease}.interactive-demo-panel.app-style .demo-retry-btn:hover{background:#ffffff4d;border-color:#fff9}.interactive-demo-panel.app-style .demo-retry-btn:focus-visible{outline:2px solid rgba(255,255,255,.8);outline-offset:2px}.demo-assemble-label{margin:0 0 12px;font-size:.9rem;color:var(--app-text-muted);text-align:center}.demo-assemble-slots{display:flex;justify-content:center;align-items:center;gap:8px;margin-bottom:24px;min-height:52px;position:relative;width:fit-content;margin-left:auto;margin-right:auto}.demo-slot{display:inline-flex;align-items:center;justify-content:center;width:48px;height:48px;background:#ffffff1a;border:2px dashed rgba(255,255,255,.3);border-radius:10px;font-size:1.5rem;font-weight:700;color:var(--app-text)}.demo-letter-tiles{display:flex;flex-wrap:wrap;justify-content:center;gap:10px}.demo-letter-tile{width:48px;height:48px;padding:0;background:var(--app-button-bg);color:var(--app-button-text);border:none;border-radius:12px;font-size:1.25rem;font-weight:700;box-shadow:var(--app-button-shadow);cursor:pointer;font-family:inherit;transition:transform .2s ease,box-shadow .2s ease}.demo-letter-tile:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0003}.demo-letter-tile:focus-visible{outline:2px solid rgba(255,255,255,.8);outline-offset:2px}.demo-letter-tile:disabled,.demo-letter-tile.tile-used{opacity:.5;cursor:default}.demo-letter-tile:disabled:hover,.demo-letter-tile.tile-used:hover{transform:none}.interactive-demo-panel.app-style .demo-assemble-slots .assemble-result-icon{position:absolute;left:100%;margin-left:12px;top:50%;transform:translateY(-50%);width:48px;height:48px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.5rem;font-weight:700}.interactive-demo-panel.app-style .demo-assemble-slots .result-icon-check{background:#10b981;color:#fff}.interactive-demo-panel.app-style .demo-assemble-slots .result-icon-cross{background:#ef4444;color:#fff}@media(max-width:640px){.demo-mode-tabs{flex-wrap:wrap}.demo-mode-tab{flex:1 1 auto}.demo-prompt-card{min-height:100px;padding:20px 24px}.demo-answers-grid{gap:10px}.demo-answer-btn{padding:12px 16px;font-size:.95rem}}
