:root{--bg:#f3f3f3;--bg-elevated:#fff;--bg-soft:#ececec;--border:#0f172a1a;--border-strong:#0f172a2e;--text:#1f2937;--text-muted:#5f6b7a;--text-inverse:#fff;--accent:#6ee7b7;--accent-dim:#6ee7b726;--accent-strong:#34d399;--danger:#f87171;--success:#4ade80;--cat-grammar:#60a5fa;--cat-vocabulary:#4ade80;--cat-conjugation:#c084fc;--cat-orthographe:#fb923c;--cat-texts:#2dd4bf;--cat-speaking:#ffea00;--navbar-bg:#050f50;--navbar-bg-hover:#11357a;--navbar-text:#fff;--navbar-muted:#ffffffc7;--navbar-border:#ffffff1a;--dark-blue:#071b76;--navbar-hb:60px;--navbar-h:50px;--navbar-total:110px;--sidebar-w:268px;--radius:22px;--radius-sm:8px;--shadow:0 12px 40px #00000059;--font-sans:"DM Sans", system-ui, sans-serif;--font-display:"Fraunces", Georgia, serif;--content-max:720px}@media (max-width:768px){:root{--navbar-h:40px;--navbar-hb:40px;--navbar-total:80px}}
html,body,#root{height:100%;overflow:hidden}.app-shell{background:var(--bg);background-image:radial-gradient(900px 500px at 85% -5%,#60a5fa0f,#0000);flex-direction:column;height:100vh;display:flex;overflow:hidden}.app-shell__body{flex:1;width:100%;min-height:0;display:flex;overflow:hidden}.app-shell__main{flex-direction:column;flex:1;min-width:0;min-height:0;padding:0;display:flex;overflow:hidden auto}.app-shell__main-inner{flex-direction:column;flex:1 0 auto;width:100%;max-width:960px;margin:0 auto;padding:clamp(1.25rem,2vw,2rem) clamp(1rem,2vw,1.75rem) 0;display:flex}.footer{border-top:1px solid var(--border);background:0 0;flex-shrink:0;width:100%;margin-top:3rem;padding:2.5rem 0 0;position:relative}@media (min-width:1200px){.app-shell__main-inner{max-width:960px;margin:0 auto 0 clamp(1.5rem,3vw,4rem)}}.mobile-topbar{display:none}.sidebar-toggle{color:#fff;cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;padding:.25rem .45rem;font-size:1.35rem;display:none}.sidebar-wrapper{width:var(--sidebar-w);flex-shrink:0;height:100%;min-height:0}.sidebar-overlay{display:none}@media (max-width:900px){.app-shell__body{display:block;position:relative;overflow-y:auto}.mobile-topbar{background:var(--navbar-bg);justify-content:flex-start;padding:.5rem .85rem 0;display:flex}.sidebar-toggle{display:inline-flex}.sidebar-wrapper{z-index:2500;pointer-events:none;width:min(320px,86vw);height:100vh;transition:transform .25s;position:fixed;top:0;left:0;transform:translate(-100%)}.sidebar-wrapper.open{pointer-events:auto;transform:translate(0)}.sidebar-overlay{z-index:2400;background:#0f172a59;border:none;display:block;position:fixed;inset:0}.app-shell__main{width:100%;padding:1rem .65rem calc(6rem + env(safe-area-inset-bottom))}.app-shell__main-inner{max-width:100%;margin:0}}@media (max-width:768px){.app-shell{box-sizing:border-box;height:100dvh;padding-top:var(--navbar-total)}}.main-layout,.dashboard-layout{flex-direction:column;min-height:100vh;display:flex}.main-layout__content{flex:1;width:100%;max-width:960px;margin:0 auto;padding:2rem 1.25rem 3rem}.dashboard-layout__body{flex:1;display:flex}.dashboard-layout__main{flex:1;padding:1.5rem 1.25rem 2.5rem;overflow:auto}.page{max-width:var(--content-max)}.page-header{margin-bottom:1.75rem}.page-header__eyebrow{text-transform:uppercase;letter-spacing:.06em;margin:0 0 .35rem;font-size:.8rem;font-weight:600}.page-header__title{font-family:var(--font-display);letter-spacing:-.02em;margin:0 0 .5rem;font-size:clamp(1.5rem,2.5vw,1.85rem);font-weight:400;line-height:1.2}.page-header__desc{color:var(--text-muted);margin:0;font-size:1rem;line-height:1.65}.hero{padding:.5rem 0 2rem}.hero__eyebrow{color:var(--accent);letter-spacing:.08em;text-transform:uppercase;margin:0 0 .75rem;font-size:.75rem;font-weight:600}.hero__title{font-family:var(--font-display);margin:0 0 1rem;font-size:clamp(1.85rem,4vw,2.45rem);line-height:1.15}.hero__lead{color:var(--text-muted);max-width:42ch;margin:0 0 1.5rem;line-height:1.65}.hero__actions{flex-wrap:wrap;gap:.75rem;display:flex}.section{margin-top:2.25rem}.section__title{font-family:var(--font-display);margin:0 0 .35rem;font-size:1.3rem}.section__subtitle{color:var(--text-muted);margin:0 0 1.25rem;line-height:1.6}.split-section{grid-template-columns:1fr 1fr;align-items:start;gap:1.5rem;display:grid}@media (max-width:800px){.split-section{grid-template-columns:1fr}}.pricing-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;display:grid}.pricing-grid--single{max-width:360px}.breadcrumb{color:var(--text-muted);margin-bottom:1rem;font-size:.875rem}.breadcrumb a{color:var(--accent)}.lesson-hero{margin-bottom:2rem}.lesson-hero__eyebrow{text-transform:uppercase;letter-spacing:.06em;margin:0 0 .35rem;font-size:.8rem;font-weight:600}.lesson-hero__title{font-family:var(--font-display);margin:0 0 .75rem;font-size:clamp(1.45rem,2.5vw,1.85rem);line-height:1.2}.lesson-hero__objective{color:var(--text-muted);margin:0;line-height:1.65}.lesson-section{margin-bottom:2rem}.lesson-section__heading{font-family:var(--font-display);border-bottom:1px solid var(--border);margin:0 0 .75rem;padding-bottom:.35rem;font-size:1.15rem}.prose p{color:var(--text-muted);margin:0 0 .85rem;line-height:1.7}.prose p:last-child{margin-bottom:0}.example-list,.link-list,.lesson-grid{margin:0;padding:0;list-style:none}.example-list{flex-direction:column;gap:.75rem;display:flex}.link-list{flex-direction:column;gap:.5rem;display:flex}.link-list__link{border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--bg-elevated);border-left-width:4px;justify-content:space-between;align-items:center;padding:.75rem 1rem;transition:border-color .15s,background .15s;display:flex}.link-list__link:hover{background:var(--bg-soft)}.link-list__label{font-weight:600}.link-list__hint{color:var(--text-muted);font-size:.8rem}.lesson-grid{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:1rem;display:grid}.check-list{color:var(--text-muted);margin:.75rem 0 0;padding-left:1.1rem;line-height:1.55}.check-list li{margin-bottom:.35rem}.lesson-not-found{justify-content:center;align-items:center;min-height:min(60vh,480px);padding:1rem 0;display:flex}.lesson-not-found__card{border-radius:var(--radius);border:1px solid var(--border);background:var(--bg-soft);text-align:center;max-width:420px;padding:1.75rem 1.5rem}.lesson-not-found__eyebrow{text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);margin:0 0 .5rem;font-size:.75rem;font-weight:600}.lesson-not-found__title{font-family:var(--font-display);margin:0 0 .65rem;font-size:1.35rem}.lesson-not-found__text{color:var(--text-muted);margin:0 0 1.25rem;font-size:.95rem;line-height:1.6}.lesson-not-found__actions{flex-wrap:wrap;justify-content:center;gap:.6rem;display:flex}.lesson-meta{margin:0 0 .75rem}.lesson-meta__badge{background:var(--accent-dim);color:var(--accent);border-radius:999px;padding:.2rem .55rem;font-size:.78rem;font-weight:600;display:inline-block}
.btn{cursor:pointer;white-space:nowrap;border:1px solid #0000;border-radius:999px;justify-content:center;align-items:center;gap:.35rem;margin-bottom:.5rem;padding:.55rem 1.1rem;font-family:inherit;font-size:clamp(.75rem,1vw,.95rem);font-weight:600;transition:background .15s,color .15s,border-color .15s;display:inline-flex}.btn--primary{background:var(--accent);color:var(--text-inverse);margin-top:10px}.space{text-align:center;border:1px solid var(--accent);color:var(--accent);background:#acff2f4c;border-radius:10px;margin-top:10px;padding:6px}.btn--primary:hover{background:var(--accent-strong);color:var(--text-inverse)}.btn--secondary{color:#fff;background:#ffa704;margin-top:10px}.btn--secondary:hover{border-color:var(--accent);color:#fff;background:#c68203}.btn--ghost{color:var(--text);background:#81fe8997}.btn--ghost:hover{border-color:var(--accent);color:var(--text);background:#bbffc097}.btn--small{margin-top:.5rem;padding:.35rem .75rem;font-size:.8rem}.btn--lg{padding:.65rem 1.35rem;font-size:.95rem}.card{border-radius:var(--radius);border:1px solid var(--border);background:var(--bg-elevated)}.card--soft{padding:1.25rem 1.35rem}.card--elevated{padding:1.5rem}.card__title{font-family:var(--font-display);margin:0 0 .5rem;font-size:1.1rem}h1,h2,h3,p,span{word-break:keep-all}.copy-year{text-align:center;color:#fff;background-color:#05056e;border:1px solid #6ee7b759;border-radius:20px;width:100%;margin-top:70px;padding:10px}@media (max-width:480px){.btn{gap:.5rem;width:100%;padding:.7rem 1.2rem;font-size:.95rem}.btn--small{padding:.5rem 1rem;font-size:.85rem}.btn--lg{padding:.75rem .8rem;font-size:.8rem}.card--soft{padding:1rem}.card--elevated{padding:1.1rem}.card__title{font-size:1.2rem}h1,h2,h3,p,span{word-break:normal;overflow-wrap:break-word}.copy-year{border-radius:15px;margin-top:40px;padding:15px 10px;font-size:.9rem}.space{padding:12px 8px;font-size:.9rem}}.margin-bottom{margin-bottom:20px}
header.navbar{z-index:2000;height:calc(var(--navbar-h) + var(--navbar-hb));-webkit-backdrop-filter:blur(14px);background:#071351d9;border-bottom:1px solid #ffffff1a;flex-flow:column;flex-shrink:0;align-items:stretch;margin:0;padding:0;display:flex;position:sticky;top:0;box-shadow:0 8px 28px #0f172a2e}.navbar__top{height:var(--navbar-h);-webkit-backdrop-filter:blur(14px);background:#071b80c7;border-bottom:1px solid #ffffff14;grid-template-columns:1fr auto 1fr;align-items:center;padding:.2rem 1rem;display:grid}.navbar__top-nav{justify-content:center;gap:2rem;display:flex}.navbar__top-link{color:var(--navbar-text);border-radius:999px;padding:.3rem .7rem;font-size:.85rem;font-weight:600;text-decoration:none;transition:background .2s,color .2s}.navbar__top-link:hover{background:#ffffff14}.navbar__top-link--active,.navbar__top-link.active{color:var(--accent,#facc15);background:#ffffff14}.navbar__top-link--active{color:#fff;background:#18ce6426}.navbar__bottom{height:var(--navbar-hb);min-height:var(--navbar-hb);-webkit-backdrop-filter:blur(14px);background:#030d5bb9;grid-template-columns:260px 1fr 360px;align-items:center;padding:0 1.4rem;display:grid}.navbar__brand{font-size:1.3rem;font-family:var(--font-sans);color:var(--navbar-text);letter-spacing:-.02em;flex-shrink:0;justify-self:start;padding-left:.2rem;font-weight:700;text-decoration:none}.navbar__brand:hover{filter:brightness(1.05);transform:translateY(-1px)}.navbar__center-actions{justify-self:center;align-items:center;gap:1.15rem;height:100%;display:flex}.navbar__actions{justify-self:end;align-items:center;gap:1rem;display:flex}.navbar__feature-link{color:#fff;cursor:pointer;background:0 0;border:none;border-radius:999px;justify-content:center;align-items:center;min-width:74px;height:42px;padding:0 .95rem;font-size:.95rem;font-weight:700;text-decoration:none;transition:background .18s,transform .18s,color .18s;display:inline-flex}.navbar__feature-link:hover,.navbar__feature-link--active,.navbar__feature-link.active{color:var(--accent,#facc15);background:#ffffff14;border-radius:999px}.navbar__feature-link--button{min-width:54px;padding:0}.navbar__feature-icon{object-fit:contain;pointer-events:none;display:block}.navbar__feature-icon--speaking{width:34px;height:34px}.navbar__feature-icon--ai{filter:drop-shadow(0 0 10px #34d3998c);width:30px;height:30px}.nav-ai-wrapper{align-items:center;display:inline-flex;position:relative}.nav-ai-panel{z-index:3000;position:absolute;top:calc(100% + 14px);left:50%;transform:translate(-50%)}.nav-ai-button{cursor:pointer;background:0 0;border:none;place-items:center;width:44px;height:44px;padding:0;display:grid}.nav-ai-button:hover{transform:translateY(-1px)}.navbar__ai-icon-crop{place-items:center;width:36px;height:36px;display:grid;position:relative;overflow:hidden}.navbar__ai-icon-crop:before{content:"";opacity:0;background:radial-gradient(circle,#34d39940,#0000 70%);transition:opacity .25s;position:absolute;inset:0}.nav-ai-button:hover .navbar__ai-icon-crop:before{opacity:1}.nav-ai-logo,.nav-ai-text{font-weight:900}.nav-ai-logo{color:#fff;border-radius:50%;place-items:center;width:34px;height:34px;display:inline-grid}.nav-ai-logo-img,.navbar__icon-img--ai{object-fit:contain;width:34px;height:34px;display:block}.navbar__icon-link{place-items:center;width:64px;height:64px;display:grid;transform:translateY(-1px)}.navbar__icon-img{object-fit:contain;display:block}.navbar__icon-img--speaking{width:36px;height:36px}.nav-speaking-logo-img{object-fit:contain;width:50px;height:50px;display:block}.nav-speaking-logo-img:hover{transform:scale(1.08)}.navbar__demo-btn,.navbar__tutor-btn{border-radius:20px;justify-content:center;align-items:center;padding:.5rem 1.1rem;font-size:.8rem;font-weight:600;text-decoration:none;transition:transform .12s,box-shadow .15s,filter .15s,color .15s;display:inline-flex}.navbar__demo-btn{border:1px solid var(--border-strong);color:#1f2937;background:gold;box-shadow:0 2px 12px #34d39959}.navbar__demo-btn:hover{border-color:var(--accent);color:#fff;filter:brightness(1.05);transform:translateY(-1px);box-shadow:0 4px 16px #34d39973}.navbar__tutor-btn{background:linear-gradient(145deg, var(--accent-strong), #22c55e);color:#052e1f;box-shadow:0 2px 12px #34d39959}.navbar__tutor-btn:hover{color:#fff;filter:brightness(1.05);transform:translateY(-1px);box-shadow:0 4px 16px #34d39973}.FGlogo{object-fit:contain;cursor:pointer;width:38px;height:38px;margin-left:0}.sidebar{width:var(--sidebar-w);border-right:1px solid var(--border);background:#e1eed7;flex-direction:column;height:100%;padding:1rem .85rem;display:flex;overflow:hidden}.sidebar__fixed-header{z-index:30;background:#e1eed7;flex-direction:column;flex-shrink:0;gap:.5rem;margin-bottom:.8rem;display:flex}.sidebar__topics{scrollbar-gutter:stable;scrollbar-width:thin;scrollbar-color:transparent transparent;flex-direction:column;flex:1;gap:.2rem;min-height:0;padding-right:.15rem;display:flex;position:relative;overflow:hidden auto}.sidebar:hover .sidebar__topics,.sidebar:focus-within .sidebar__topics{scrollbar-color:#1f293747 transparent}.sidebar__topics::-webkit-scrollbar{width:6px}.sidebar__topics::-webkit-scrollbar-thumb{background:#0003;border-radius:10px}.sidebar:not(:hover):not(:focus-within) .sidebar__topics::-webkit-scrollbar-thumb{background:0 0}.sidebar-group{border-radius:var(--radius-sm);flex-shrink:0;overflow:visible}.sidebar-group__row{text-align:center;background:linear-gradient(180deg, color-mix(in srgb, var(--topic-accent) 20%, white), color-mix(in srgb, var(--topic-accent) 10%, white));border:1px solid color-mix(in srgb, var(--topic-accent) 30%, var(--border));z-index:22;height:var(--sidebar-group-row-h,48px);-webkit-backdrop-filter:blur(8px);border-radius:12px;align-items:center;gap:0;display:flex;position:sticky;top:0;overflow:hidden}.sidebar-level-header{top:var(--sidebar-group-row-h,48px);z-index:18;background:linear-gradient(180deg, color-mix(in srgb, var(--topic-accent) 16%, white), color-mix(in srgb, var(--topic-accent) 8%, white));-webkit-backdrop-filter:blur(8px);text-transform:uppercase;color:#253041;border:1px solid color-mix(in srgb, var(--topic-accent) 22%, var(--border));border-radius:10px;margin:.35rem 0 .2rem .15rem;padding:8px 14px;font-size:.72rem;font-weight:800;position:sticky;box-shadow:0 4px 12px #0f172a0d}.sidebar-lessons__link{width:100%;color:var(--text-muted);border-left:2px solid #0000;border-radius:6px;align-items:center;gap:6px;padding:.4rem .55rem .4rem 1.35rem;font-size:.82rem;line-height:1.35;transition:color .12s,background .12s,border-color .12s;display:flex;overflow:hidden}.sidebar-lessons__link:hover{color:var(--text);background:#ffffff0a}.sidebar-lessons__link.is-active{color:var(--text);background:color-mix(in srgb, var(--topic-accent) 12%, transparent);border-left-color:var(--topic-accent)}.sidebar-lesson-preview{z-index:3400;pointer-events:none;max-width:min(280px,100vw - 24px);position:fixed;transform:translateY(-50%)}.sidebar-lesson-preview__bubble{border:1px solid #0f172a14;border-left:4px solid var(--lesson-preview-accent,var(--accent));color:#111827;background:linear-gradient(#fff,#f6f7fb);border-radius:18px;gap:.28rem;padding:.85rem .95rem;display:grid;position:relative;box-shadow:0 16px 32px #0f172a29}.sidebar-lesson-preview__label{text-transform:uppercase;letter-spacing:.08em;color:color-mix(in srgb, var(--lesson-preview-accent,var(--accent)) 55%, #334155);font-size:.64rem;font-weight:800}.sidebar-lesson-preview__text{white-space:normal;overflow-wrap:anywhere;font-size:.94rem;font-weight:600;line-height:1.35}.sidebar-lesson-preview[data-side=right] .sidebar-lesson-preview__bubble:before,.sidebar-lesson-preview[data-side=right] .sidebar-lesson-preview__bubble:after,.sidebar-lesson-preview[data-side=left] .sidebar-lesson-preview__bubble:before,.sidebar-lesson-preview[data-side=left] .sidebar-lesson-preview__bubble:after{content:"";pointer-events:none;position:absolute;top:50%;transform:translateY(-50%)}.sidebar-lesson-preview[data-side=right] .sidebar-lesson-preview__bubble:before{border-top:9px solid #0000;border-bottom:9px solid #0000;border-right:10px solid #0f172a14;left:-10px}.sidebar-lesson-preview[data-side=right] .sidebar-lesson-preview__bubble:after{border-top:8px solid #0000;border-bottom:8px solid #0000;border-right:9px solid #fff;left:-8px}.sidebar-lesson-preview[data-side=left] .sidebar-lesson-preview__bubble:before{border-top:9px solid #0000;border-bottom:9px solid #0000;border-left:10px solid #0f172a14;right:-10px}.sidebar-lesson-preview[data-side=left] .sidebar-lesson-preview__bubble:after{border-top:8px solid #0000;border-bottom:8px solid #0000;border-left:9px solid #fff;right:-8px}.sidebar-group__content{padding-top:.15rem}.lesson-number{opacity:.6;flex-shrink:0;font-weight:600}.lesson-text{white-space:nowrap;text-overflow:ellipsis;flex:1;overflow:hidden}.sidebar-group{border-radius:var(--radius-sm);flex-shrink:0}.sidebar-group__cat{color:#243041;border-radius:0;flex:1;align-items:center;gap:.5rem;min-width:0;padding:.62rem .65rem;font-size:.95rem;font-weight:700;transition:background .12s,color .12s;display:flex}.sidebar-group__cat:hover{color:#111827;background:color-mix(in srgb, var(--topic-accent) 18%, white)}.sidebar-group__cat.is-active{color:#111827;background:color-mix(in srgb, var(--topic-accent) 26%, white)}.sidebar-group__dot{background:var(--topic-accent);width:9px;height:9px;box-shadow:0 0 0 2px color-mix(in srgb, var(--topic-accent) 35%, transparent);border-radius:50%;flex-shrink:0}.sidebar-group__label{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.sidebar-group__toggle{border:none;border-left:1px solid color-mix(in srgb, var(--topic-accent) 30%, var(--border));background:color-mix(in srgb, var(--topic-accent) 18%, white);color:#5b6472;cursor:pointer;flex-shrink:0;justify-content:center;align-items:center;width:3rem;transition:background .12s,color .12s;display:flex}.sidebar-group__toggle:hover{color:var(--text);background:#ffffff0a}.sidebar__chevron{opacity:.85;transition:transform .2s;display:block}.sidebar-group__toggle.is-open .sidebar__chevron{transform:rotate(180deg)}.sidebar-lessons{flex-direction:column;gap:.15rem;margin:.35rem 0 .5rem;padding:0 0 0 .25rem;list-style:none;display:flex}@media (hover:none),(pointer:coarse){.sidebar-lesson-preview{display:none}}.navbar__auth-section{margin-left:auto;position:relative}.navbar__user-profile{border-left:1px solid #fff3;align-items:center;gap:12px;margin-left:15px;padding-left:15px;display:flex}.navbar__profile-btn{cursor:pointer;background:0 0;border:none;align-items:center;gap:10px;display:flex}.navbar__profile-avatar{object-fit:cover;border:2px solid #facc15;border-radius:50%;width:42px;height:42px}.navbar__profile-info{flex-direction:column;align-items:flex-start;line-height:1.1;display:flex}.navbar__profile-name{color:#fff;font-size:.9rem;font-weight:600}.navbar__user-name{color:#fff;font-size:.9rem;font-weight:500}.navbar__profile-card{top:calc(var(--navbar-h) + var(--navbar-hb) + 8px);z-index:2999;background:#0b2a63;border-radius:20px;width:min(340px,90vw);max-width:340px;padding:20px;animation:.2s forwards profileFadeDesktop;position:absolute;right:0;box-shadow:0 8px 32px #0000004d}.navbar__profile-card-top{text-align:center;margin-bottom:16px}.navbar__profile-large-avatar{border:3px solid var(--success,#10b981);object-fit:cover;border-radius:50%;width:80px;height:80px;margin-bottom:10px}.navbar__profile-card h3{color:#fff;word-break:break-word;margin-bottom:4px;font-size:1.1rem;font-weight:600}.navbar__profile-card p{color:#c8d7e7;word-break:break-all;padding:0 8px;font-size:.85rem}.navbar__profile-actions{flex-direction:column;gap:8px;display:flex}.navbar__profile-action,.navbar__logout-btn{color:#fff;text-align:center;cursor:pointer;background:#08345d;border:none;border-radius:12px;width:100%;padding:12px 14px;font-size:.9rem;font-weight:500;text-decoration:none;transition:background .2s,transform .15s;display:block}.navbar__profile-action:active,.navbar__logout-btn:active{transform:scale(.97)}.navbar__profile-action:hover,.navbar__logout-btn:hover{background:#0d467d}.navbar__login-link{color:#040e3d;background:var(--success,#10b981);cursor:pointer;border:none;border-radius:999px;align-items:center;margin-right:10px;padding:10px 22px;font-size:.8rem;font-weight:600;text-decoration:none;transition:background .25s,transform .25s;display:inline-flex}.navbar__login-link:hover{color:#f4f4f5;background:var(--success,#047e56);transform:translateY(-1px)!important}.navbar__profile-role strong{border-radius:8px;margin-top:.2rem;padding:.3rem .6rem;font-size:.72rem}.role-badge-free{color:#10b981!important;background-color:#fff!important;border:1px solid #10b981!important;box-shadow:0 4px 12px #1deda840!important}.role-badge-premium{color:#5c4500;background:linear-gradient(145deg,#fff3a3,#ffe066);border-color:#facc15;box-shadow:0 6px 18px #facc1559}.app-shell__floating-sidebar-btn,.navbar__mobile-menu-trigger,.navbar__mobile-menu-card{display:none}@media (max-width:768px){.hide-on-mobile{display:none!important}header.navbar{height:var(--navbar-total);min-height:var(--navbar-total);z-index:3000;position:fixed;inset:0 0 auto}.navbar__top{height:40px;min-height:40px;padding:0 .65rem;justify-content:space-between!important;align-items:center!important;width:100%!important;display:flex!important}.sidebar-toggle{width:34px;height:34px;padding:0;font-size:1.35rem;display:inline-flex}.FGlogo{width:34px;height:34px}.FGlogo img{object-fit:contain;width:100%;height:100%}.navbar__top-nav{display:none}.navbar__top-link{padding:.25rem .55rem;font-size:.76rem}.navbar__bottom{grid-template-columns:auto 1fr auto;align-items:center;gap:.5rem;height:40px;min-height:40px;padding:0 .65rem;display:grid}.navbar__brand{white-space:nowrap;padding-left:0;font-size:.95rem}.navbar__center-actions{justify-self:center;align-items:center;gap:.5rem;height:auto;display:flex}.navbar__feature-link{white-space:nowrap;min-width:auto;height:30px;padding:0 .45rem;font-size:.72rem}.navbar__feature-link--button{gap:20px;width:24px;min-width:24px;padding:0}.navbar__feature-icon--speaking,.navbar__feature-icon--ai{width:30px;height:30px}.navbar__actions{justify-self:end;align-items:center;gap:.35rem;display:flex}.navbar__demo-btn,.navbar__tutor-btn{white-space:nowrap;border-radius:999px;min-width:auto;height:28px;padding:0 .55rem;font-size:.7rem}.sidebar-wrapper{top:calc(var(--navbar-h) + var(--navbar-hb));height:auto;max-height:calc(100dvh - var(--navbar-h) - var(--navbar-hb));z-index:2500;overscroll-behavior:contain;pointer-events:none;width:300px;max-width:76vw;transition:transform .25s;position:fixed;bottom:0;left:0;overflow:hidden;transform:translate(-100%)}.sidebar-wrapper.open{pointer-events:auto;transform:translate(0)}.sidebar{border-right:1px solid var(--border);background:#e1eed7;width:100%;height:100%;min-height:0;padding:.75rem .65rem;box-shadow:4px 0 18px #0f172a2e}.sidebar__topics{padding-bottom:calc(1rem + env(safe-area-inset-bottom));scroll-padding-bottom:calc(1rem + env(safe-area-inset-bottom));overscroll-behavior-y:contain;-webkit-overflow-scrolling:touch}.sidebar__header{margin-bottom:.65rem;padding:.5rem .65rem}.sidebar__title{font-size:.85rem}.sidebar-group__cat{padding:.52rem .55rem;font-size:.86rem}.sidebar-group__toggle{width:2.4rem}.sidebar-overlay{top:calc(var(--navbar-h) + var(--navbar-hb));z-index:2400;background:#0f172a59;border:none;position:fixed;bottom:0;left:0;right:0}.navbar__auth-section{justify-content:flex-end!important;width:auto!important;margin-left:auto!important;display:flex!important}.navbar__user-profile{border-left:none;gap:8px;margin-left:0;padding-left:0}.navbar__profile-avatar{width:32px;height:32px}.navbar__profile-info{align-items:center}.navbar__profile-name{font-size:.8rem}.navbar__profile-role{border-radius:999px;margin-top:.15rem;padding:.25rem .45rem;font-size:.65rem}.navbar__profile-card{top:calc(var(--navbar-h) + var(--navbar-hb) + 8px);width:min(320px,94vw);margin:0 auto;animation:.2s forwards profileFadeMobile;position:fixed;left:50%;right:auto;transform:translate(-50%)}.navbar__login-link{width:auto!important;height:auto!important;min-width:unset!important;white-space:nowrap!important;border-radius:999px!important;justify-content:center!important;align-items:center!important;margin:0!important;padding:6px 16px!important;font-size:.75rem!important;display:inline-flex!important}.app-shell__floating-sidebar-btn{box-sizing:border-box;top:calc(var(--navbar-h) + var(--navbar-hb) - 2px);-webkit-backdrop-filter:blur(8px);z-index:1000;cursor:pointer;background:#0713517e;border:1px solid #fff;border-radius:999px;flex-direction:column;justify-content:center;align-items:flex-start;gap:4px;width:38px;height:38px;padding-left:10px;display:flex;position:fixed;left:0}.app-shell__floating-sidebar-btn span{background:#fff;border-radius:2px;width:18px;height:2px;transition:width .2s}.app-shell__floating-sidebar-btn span:last-child{width:12px}.navbar__mobile-menu-trigger{cursor:pointer;background:0 0;border:none;border-radius:6px;flex-direction:column;justify-content:center;align-items:center;gap:3px;width:32px;height:32px;margin-left:4px;padding:0;display:flex}.navbar__mobile-menu-trigger span{background:#fff;border-radius:2px;width:16px;height:2px}.navbar__mobile-menu-card{top:calc(var(--navbar-h) + var(--navbar-hb) + 8px);z-index:3000;background:#0b2a63;border-radius:16px;flex-direction:column;gap:14px;width:min(240px,90vw);padding:20px;animation:.2s forwards profileFadeDesktop;display:flex;position:absolute;right:12px;box-shadow:0 12px 30px #0006}.navbar__mobile-menu-card a{color:#fff;font-size:.95rem;font-weight:500;text-decoration:none;transition:color .15s}.navbar__mobile-menu-card a:hover{color:var(--accent,#facc15)}.navbar__menu-divider{background:#ffffff26;height:1px;margin:2px 0}}@media (max-width:430px){.navbar__top{padding:0 .45rem;gap:8px!important}.sidebar-toggle{width:30px;height:30px;font-size:1.25rem}.FGlogo{width:30px;height:30px}.navbar__top-link{padding:.22rem .42rem;font-size:.7rem}.navbar__profile-btn{padding:.25rem .45rem;font-size:.75rem}.navbar__bottom{gap:.4rem;padding:0 .45rem}.navbar__brand{font-size:.8rem}.navbar__center-actions{gap:.4rem}.navbar__feature-link{height:28px;padding:0 .33rem;font-size:.6rem}.navbar__feature-link--button{width:28px;min-width:28px}.navbar__demo-btn,.navbar__tutor-btn{height:28px;padding:0 .28rem;font-size:.6rem}.sidebar-wrapper{width:245px;top:calc(var(--navbar-h) + var(--navbar-hb));height:auto;max-height:calc(100dvh - var(--navbar-h) - var(--navbar-hb));bottom:0}.sidebar-overlay{top:calc(var(--navbar-h) + var(--navbar-hb))}.app-shell__floating-sidebar-btn{top:calc(var(--navbar-h) + var(--navbar-hb) - 2px);width:34px;height:34px;padding-left:8px;left:0}.navbar__profile-info{display:none}.navbar__user-profile{gap:6px}.navbar__login-link{padding:6px 12px!important;font-size:.7rem!important}.navbar__auth-section{justify-content:flex-end;width:100%;display:flex}.navbar__profile-card{top:calc(var(--navbar-h) + var(--navbar-hb) + 8px)}}@media (max-width:375px){.navbar__profile-card{border-radius:16px;width:92vw;padding:16px}.navbar__profile-large-avatar{border-width:2px;width:64px;height:64px}.navbar__profile-card h3{font-size:1rem}.navbar__profile-card p{font-size:.8rem}.navbar__profile-action,.navbar__logout-btn{border-radius:12px;padding:12px;font-size:.85rem}.navbar__profile-card{top:calc(var(--navbar-h) + var(--navbar-hb) + 8px)}}@keyframes profileFadeDesktop{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}@keyframes profileFadeMobile{0%{opacity:0;transform:translate(-50%)translateY(-8px)}to{opacity:1;transform:translate(-50%)translateY(0)}}
.lesson-card{border-radius:var(--radius);border:1px solid var(--border);background:var(--bg-elevated);border-left:4px solid var(--lesson-accent,var(--accent));flex-direction:column;gap:.5rem;height:100%;padding:1.1rem 1.15rem;transition:box-shadow .15s,border-color .15s;display:flex}.lesson-card:hover{border-color:color-mix(in srgb, var(--lesson-accent,var(--accent)) 50%, var(--border));box-shadow:var(--shadow)}.lesson-card__title{font-family:var(--font-display);margin:0;font-size:1.05rem}.lesson-card__title a{color:var(--text)}.lesson-card__title a:hover{color:var(--accent)}.lesson-card__summary{color:var(--text-muted);flex:1;margin:0;font-size:.9rem}.lesson-card__cta{color:var(--lesson-accent,var(--accent));font-size:.85rem;font-weight:600}.carousel{margin:0 -1.25rem;padding:.25rem 1.25rem .5rem;overflow:hidden}.carousel__track{scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;gap:1rem;padding-bottom:.5rem;display:flex;overflow-x:auto}.carousel__card{scroll-snap-align:start;border-radius:var(--radius);border:1px solid var(--border);background:linear-gradient(145deg, color-mix(in srgb, var(--carousel-accent) 22%, var(--bg-elevated)), var(--bg-elevated));flex-direction:column;flex:0 0 min(280px,85vw);gap:.35rem;min-height:140px;padding:1.15rem 1.2rem;transition:transform .15s,border-color .15s;display:flex}.carousel__card:hover{border-color:color-mix(in srgb, var(--carousel-accent) 55%, var(--border));transform:translateY(-2px)}.carousel__badge{text-transform:uppercase;letter-spacing:.06em;background:color-mix(in srgb, var(--carousel-accent) 35%, transparent);color:var(--text);border-radius:999px;align-self:flex-start;padding:.2rem .5rem;font-size:.7rem;font-weight:700}.carousel__title{font-family:var(--font-display);font-size:1.1rem;font-weight:700}.carousel__desc{color:var(--text-muted);font-size:.85rem;line-height:1.45}.lesson-content-block{margin-bottom:1.4rem}.lesson-content-block__title{font-size:1.1rem;font-family:var(--font-sans);color:var(--page-accent);margin:0 0 .55rem}.lesson-table-wrap{margin-top:.75rem;overflow-x:auto}.lesson-table{border-collapse:collapse;background:var(--bg-elevated);border:1px solid var(--border);width:100%}.lesson-table th,.lesson-table td{border:1px solid var(--border);text-align:left;vertical-align:top;padding:.7rem .8rem}.lesson-table-cell{position:relative}.lesson-table th{background:color-mix(in srgb, var(--page-accent) 14%, var(--bg-soft));font-weight:700}.lesson-content-paragraph>p:first-child{margin-top:0}.lesson-content-paragraph>p:last-child{margin-bottom:0}.lesson-content-paragraph{color:var(--text-muted);margin-bottom:.85rem;line-height:1.7}.lesson-content-paragraph p{margin:0 0 .85rem}.lesson-content-paragraph p:last-child{margin-bottom:0}.example-list{margin:0;padding:0;list-style:none}.example-row{border-bottom:1px solid var(--border);grid-template-columns:2.25rem 1fr;align-items:start;gap:.85rem;padding:1.15rem 0;display:grid}.example-row+.example-row{border-top:none}.example-row:last-child{border-bottom:none}.example-list>.example-row:first-child{border-top:1px solid var(--border);padding-top:.85rem}.example-row__number{font-family:var(--font-display);color:var(--accent-strong);letter-spacing:.02em;padding-top:.1rem;font-size:.95rem;font-weight:700;line-height:1.5}.example-row__body{min-width:0}.example-row__fr-line{flex-wrap:wrap;align-items:baseline;gap:.6rem;display:flex}.example-row__fr{color:var(--text);font-size:1.02rem;font-weight:600;line-height:1.45}.example-row__note{color:var(--text-muted);margin:.4rem 0 0;font-size:.84rem;font-style:italic;line-height:1.55}.example-audio{flex-shrink:0;align-items:center;gap:.25rem;display:inline-flex;transform:translateY(2px)}.example-audio__btn{width:30px;height:30px;color:var(--dark-blue);cursor:pointer;background:0 0;border:none;border-radius:8px;justify-content:center;align-items:center;padding:0;transition:background .15s,color .15s;display:inline-flex}.example-audio__btn:hover{background:var(--bg-soft);color:var(--text)}.example-audio__btn:focus-visible{outline:2px solid var(--accent-strong);outline-offset:2px}.example-audio__btn.is-playing{background:var(--accent-dim);color:var(--accent-strong)}@media (max-width:520px){.example-row{grid-template-columns:1fr;gap:.35rem}.example-row__number{font-size:.8rem}}.lesson-outcomes{background:linear-gradient(160deg, color-mix(in srgb, var(--accent) 8%, var(--bg-elevated)), var(--bg-elevated));border:1px solid color-mix(in srgb, var(--accent) 35%, var(--border));border-radius:18px;margin:1.5rem 0 2rem;padding:1.25rem 1.35rem}.lesson-outcomes__title{font-family:var(--font-display);color:var(--text);margin:0 0 .85rem;font-size:1.15rem}.lesson-outcomes__list{gap:.55rem;margin:0;padding:0;list-style:none;display:grid}.lesson-outcomes__item{color:var(--text);align-items:flex-start;gap:.65rem;font-size:.95rem;line-height:1.55;display:flex}.lesson-outcomes__check{background:var(--accent-strong);color:#052e1f;border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;width:20px;height:20px;margin-top:.15rem;font-size:.7rem;font-weight:900;display:inline-flex}.lesson-mistakes{border:1px solid color-mix(in srgb, var(--danger) 28%, var(--border));background:#fff7f7;border-radius:18px;margin:2rem 0;padding:1.35rem 1.4rem .5rem}.lesson-mistakes__head{margin-bottom:1rem}.lesson-mistakes__eyebrow{color:var(--danger);letter-spacing:.09em;text-transform:uppercase;margin-bottom:.25rem;font-size:.72rem;font-weight:800;display:block}.lesson-mistakes__title{font-family:var(--font-display);color:var(--text);margin:0;font-size:1.15rem}.lesson-mistakes__list{margin:0;padding:0;list-style:none}.lesson-mistakes__item{border-top:1px solid color-mix(in srgb, var(--danger) 15%, var(--border));padding:.95rem 0}.lesson-mistakes__item:first-child{border-top:none;padding-top:0}.lesson-mistakes__row{align-items:flex-start;gap:.6rem;margin-bottom:.4rem;display:flex}.lesson-mistakes__badge{color:#fff;border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;width:18px;height:18px;margin-top:.2rem;display:inline-flex}.lesson-mistakes__badge--wrong{background:var(--danger)}.lesson-mistakes__badge--right{background:var(--success)}.lesson-mistakes__text{font-size:.95rem;line-height:1.5}.lesson-mistakes__text--wrong{color:var(--text);text-decoration:line-through;-webkit-text-decoration-color:color-mix(in srgb, var(--danger) 60%, transparent);text-decoration-color:color-mix(in srgb, var(--danger) 60%, transparent)}.lesson-mistakes__text--right{color:var(--text);font-weight:600}.lesson-mistakes__why{color:var(--text-muted);margin:.35rem 0 0 1.55rem;font-size:.86rem;line-height:1.55}.lesson-related{margin-top:2.5rem}.lesson-related__grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:.75rem;margin:0;padding:0;list-style:none;display:grid}.lesson-related__card{border-radius:var(--radius);background:var(--bg-elevated);border:1px solid var(--border);border-left:4px solid var(--card-accent,var(--accent));color:inherit;flex-direction:column;gap:.4rem;min-height:100%;padding:1rem 1.1rem;text-decoration:none;transition:border-color .15s,box-shadow .15s,transform .12s;display:flex}.lesson-related__card:hover{border-color:color-mix(in srgb, var(--card-accent,var(--accent)) 40%, var(--border));transform:translateY(-2px);box-shadow:0 10px 28px #0f172a14}.lesson-related__cat{letter-spacing:.08em;text-transform:uppercase;color:var(--card-accent,var(--accent-strong));font-size:.68rem;font-weight:800}.lesson-related__title{font-family:var(--font-display);color:var(--text);font-size:1rem;font-weight:700;line-height:1.3}.lesson-related__reason{color:var(--text-muted);margin-top:.15rem;font-size:.82rem;line-height:1.45}.lesson-prevnext{border-top:1px solid var(--border);grid-template-columns:1fr 1fr;gap:.75rem;margin-top:2.25rem;padding-top:1.5rem;display:grid}.lesson-prevnext__spacer{display:block}.lesson-prevnext__link{border:1px solid var(--border);background:var(--bg-elevated);color:inherit;border-radius:14px;flex-direction:column;gap:.25rem;padding:.95rem 1.15rem;text-decoration:none;transition:border-color .15s,box-shadow .15s;display:flex}.lesson-prevnext__link:hover{border-color:color-mix(in srgb, var(--accent) 40%, var(--border));box-shadow:0 8px 22px #0f172a0f}.lesson-prevnext__link--next{text-align:right}.lesson-prevnext__label{letter-spacing:.06em;text-transform:uppercase;color:var(--accent-strong);font-size:.72rem;font-weight:800}.lesson-prevnext__title{font-family:var(--font-display);color:var(--text);font-size:.95rem;font-weight:700;line-height:1.3}.lesson-page-loading{place-items:center;min-height:55vh;display:grid}.lesson-page-loading__content{border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-elevated);color:var(--text-muted);align-items:center;gap:.75rem;padding:1rem 1.25rem;font-weight:600;display:flex}.lesson-page-loading__spinner{border:2px solid var(--border-strong);border-top-color:var(--accent);border-radius:50%;width:1.25rem;height:1.25rem;animation:.7s linear infinite lessonPageSpinner}@keyframes lessonPageSpinner{to{transform:rotate(360deg)}}@media (max-width:560px){.lesson-prevnext{grid-template-columns:1fr}.lesson-prevnext__link--next{text-align:left}}
.exercise-list{flex-direction:column;gap:1.5rem;margin-top:1rem;display:flex}.exercise-block{border-radius:var(--radius);border:1px solid var(--border);background:var(--bg-soft);padding:1.15rem 1.2rem;box-shadow:0 1px #ffffff0a}.exercise-block__label{text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);margin:0 0 .85rem;font-size:.72rem;font-weight:600}.exercise__prompt{margin:0 0 .85rem;font-weight:500;line-height:1.55}.exercise__choices{flex-direction:column;gap:.45rem;display:flex}.choice{border-radius:var(--radius-sm);cursor:pointer;border:1px solid var(--border);background:var(--bg-elevated);align-items:flex-start;gap:.55rem;padding:.55rem .65rem;transition:border-color .15s,background .15s;display:flex}.choice:hover:not(.choice--correct):not(.choice--wrong){border-color:var(--border-strong)}.choice input{margin-top:.2rem}.choice--correct{border-color:color-mix(in srgb, var(--success) 55%, var(--border));background:color-mix(in srgb, var(--success) 10%, var(--bg-elevated))}.choice--wrong{border-color:color-mix(in srgb, var(--danger) 50%, var(--border));background:color-mix(in srgb, var(--danger) 8%, var(--bg-elevated))}.exercise__input{border-radius:var(--radius-sm);border:1px solid var(--border-strong);background:var(--bg);width:100%;max-width:400px;color:var(--text);padding:.55rem .7rem;font-family:inherit;font-size:1rem}.exercise__input:disabled{opacity:.85}.exercise__textarea{border-radius:var(--radius-sm);border:1px solid var(--border-strong);background:var(--bg);width:100%;color:var(--text);resize:vertical;min-height:120px;padding:.7rem .85rem;font-family:inherit;line-height:1.5}.exercise__textarea:focus,.exercise__input:focus{border-color:color-mix(in srgb, var(--accent) 45%, var(--border-strong));box-shadow:0 0 0 3px var(--accent-dim);outline:none}.exercise__passage{border-left:3px solid color-mix(in srgb, var(--accent) 70%, transparent);background:var(--bg-elevated);border-radius:0 var(--radius-sm) var(--radius-sm) 0;color:var(--text-muted);margin:0 0 1rem;padding:.85rem 1rem;font-size:.95rem;line-height:1.6}.exercise__actions{margin-top:.85rem}.exercise__submit{min-width:8.5rem}.exercise-result{border-radius:var(--radius-sm);border:1px solid var(--border);margin-top:1rem;padding:.85rem 1rem}.exercise-result--ok{background:color-mix(in srgb, var(--success) 9%, var(--bg-elevated));border-color:color-mix(in srgb, var(--success) 35%, var(--border))}.exercise-result--no{background:color-mix(in srgb, var(--danger) 7%, var(--bg-elevated));border-color:color-mix(in srgb, var(--danger) 30%, var(--border))}.exercise-result--loading{background:color-mix(in srgb, var(--accent) 7%, var(--bg-elevated));border-color:color-mix(in srgb, var(--accent) 30%, var(--border));align-items:center;gap:.65rem;display:flex}.exercise-result--loading .exercise-result__title{color:var(--text);margin:0}.exercise-result__spinner{border:2px solid color-mix(in srgb, var(--accent) 25%, transparent);border-top-color:var(--accent);border-radius:50%;flex:none;width:1.1rem;height:1.1rem;animation:.7s linear infinite exerciseSpinner}@keyframes exerciseSpinner{to{transform:rotate(360deg)}}.exercise-result__title{margin:0 0 .5rem;font-size:.95rem;font-weight:700}.exercise-result--ok .exercise-result__title{color:var(--success)}.exercise-result--no .exercise-result__title{color:var(--danger)}.exercise-explanation{color:var(--text-muted);margin:0;font-size:.9rem;line-height:1.55}.exercise-correction{margin:0 0 .5rem;font-size:.9rem}.exercise-correction__label{color:var(--text-muted);font-weight:500}.exercise-correction__value{color:var(--text);font-weight:600}.exercise__meta{margin:.45rem 0 0}.exercise-ai-placeholder{border-radius:var(--radius-sm);border:1px dashed var(--border-strong);background:color-mix(in srgb, var(--accent) 6%, transparent);align-items:flex-start;gap:.65rem;margin-top:.85rem;padding:.75rem .9rem;display:flex}.exercise-ai-placeholder__icon{opacity:.7;flex-shrink:0;font-size:1rem;line-height:1.4}.exercise-ai-placeholder__text{color:var(--text-muted);margin:0;font-size:.88rem;line-height:1.5}.exercise--speaking{flex-direction:column;gap:1rem;display:flex}.speaking-exercise__head{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.speaking-exercise__eyebrow{letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted);margin:0 0 .25rem;font-size:.72rem;font-weight:700}.speaking-exercise__title{font-family:var(--font-display);margin:0;font-size:1.25rem}.speaking-exercise__timer{background:color-mix(in srgb, var(--accent) 14%, var(--bg-elevated));color:var(--text-muted);border-radius:999px;flex-shrink:0;padding:.25rem .55rem;font-size:.78rem;font-weight:700}.speaking-exercise__audio{width:min(100%,34rem)}.speaking-exercise__recorder{border:1px dashed var(--border-strong);border-radius:var(--radius-sm);background:var(--bg-elevated);align-items:center;gap:.85rem;padding:.9rem 1rem;display:flex}.speaking-exercise__record-dot{background:var(--danger);width:.85rem;height:.85rem;box-shadow:0 0 0 .35rem color-mix(in srgb, var(--danger) 12%, transparent);border-radius:999px}.speaking-exercise__recorder-title{margin:0 0 .15rem;font-weight:700}.speaking-exercise__recorder-text,.speaking-exercise__hint{color:var(--text-muted);margin:0;font-size:.9rem;line-height:1.5}.speaking-check{border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-elevated);align-items:center;gap:1rem;padding:1rem;display:flex}.speaking-check__mic{background:var(--accent);color:#fff;cursor:pointer;width:5.5rem;height:5.5rem;box-shadow:0 .35rem 0 color-mix(in srgb, var(--accent) 65%, #000);border:none;border-radius:999px;font-weight:800}.speaking-check__mic:disabled{cursor:not-allowed;opacity:.75}.exercise--speaking-listening .speaking-check__mic{background:var(--danger);box-shadow:0 .35rem 0 color-mix(in srgb, var(--danger) 65%, #000)}.exercise--speaking-correct .speaking-check{border-color:color-mix(in srgb, var(--success) 45%, var(--border));background:color-mix(in srgb, var(--success) 10%, var(--bg-elevated))}.exercise--speaking-retry .speaking-check{border-color:color-mix(in srgb, var(--danger) 38%, var(--border));background:color-mix(in srgb, var(--danger) 8%, var(--bg-elevated))}.speaking-check__body{min-width:0}.speaking-check__title{margin:0 0 .25rem;font-size:1.15rem;font-weight:800}.exercise--speaking-correct .speaking-check__title{color:var(--success)}.exercise--speaking-retry .speaking-check__title{color:var(--danger)}.speaking-check__text{color:var(--text-muted);margin:0;line-height:1.5}.speaking-feedback-list{color:var(--text-muted);margin:0;padding-left:1.25rem;line-height:1.5}@media (max-width:560px){.speaking-check{flex-direction:column;align-items:stretch}.speaking-check__mic{border-radius:var(--radius-sm);width:100%;height:3.5rem}}.exercise__audio-btn{color:#fff;cursor:pointer;z-index:2;background-color:#071b80e0;border:none;border-bottom:5px solid #071351d9;border-radius:16px;flex-shrink:0;justify-content:center;align-items:center;width:55px;height:55px;transition:all .1s;display:flex;position:relative}.audio-icon{width:32px;height:32px}@media (max-width:480px){.exercise__audio-btn{border-bottom-width:4px;border-radius:12px;width:50px;height:50px}.audio-icon{width:24px;height:24px}@keyframes sonar{0%{opacity:.6;transform:scale(1)}to{opacity:0;transform:scale(1.5)}}}.exercise__audio-btn:active{border-bottom-width:0;transform:translateY(4px)}.sonar-wave{border-radius:inherit;z-index:-1;opacity:0;pointer-events:none;background-color:#1c2ef6;position:absolute;inset:0}.is-animating .sonar-wave{animation:1.5s ease-out infinite sonar}.is-animating .delay-1{animation-delay:.75s}@keyframes sonar{0%{opacity:.6;transform:scale(1)}to{opacity:0;transform:scale(1.8)}}.exercise__prompt{color:var(--level-test-ink,var(--text));margin:0 0 .85rem;font-size:1rem;font-weight:500;line-height:1.55}.exercise__prompt>p:first-child{margin-top:0}.exercise__prompt>p:last-child{margin-bottom:0}.exercise__prompt p{margin:0 0 .75rem}.exercise__blanks{gap:.75rem;margin-top:.25rem;display:grid}.exercise__blank-field{gap:.3rem;display:grid}.exercise__blank-label{letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted);font-size:.72rem;font-weight:700}.exercise__input--blank{width:100%;max-width:320px}.exercise__input--blank.is-correct{border-color:color-mix(in srgb, var(--success) 55%, var(--border));background:color-mix(in srgb, var(--success) 8%, var(--bg-elevated))}.exercise__input--blank.is-wrong{border-color:color-mix(in srgb, var(--danger) 55%, var(--border));background:color-mix(in srgb, var(--danger) 6%, var(--bg-elevated))}.exercise--fill .exercise__blanks .exercise__blank-field:only-child .exercise__blank-label{display:none}
.exercise-promotion{isolation:isolate;border:1px solid color-mix(in srgb, var(--dark-blue) 18%, var(--border));border-radius:var(--radius);background:radial-gradient(circle at 90% 0,#6ee7b747,#0000 38%),linear-gradient(135deg,#fff 0%,#f4fbf8 100%);grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:1rem;padding:1.15rem 1.2rem;display:grid;position:relative;overflow:hidden;box-shadow:0 12px 30px #071b7614}.exercise-promotion:after{z-index:-1;content:"";border:1.5rem solid #071b760a;border-radius:999px;width:10rem;height:10rem;position:absolute;bottom:-4rem;right:-2.5rem}.exercise-promotion--tutor{background:radial-gradient(circle at 90% 0,#ffea0033,#0000 36%),linear-gradient(135deg,#fff 0%,#f8f8ff 100%)}.exercise-promotion__icon{background:var(--dark-blue);color:#fff;border-radius:1rem;place-items:center;width:3.25rem;height:3.25rem;display:grid;box-shadow:0 .35rem #050f5038}.exercise-promotion--tutor .exercise-promotion__icon{background:#087f6a;box-shadow:0 .35rem #087f6a33}.exercise-promotion__copy{min-width:0}.exercise-promotion__eyebrow{color:#23449b;letter-spacing:.09em;text-transform:uppercase;margin:0 0 .15rem;font-size:.68rem;font-weight:800;line-height:1.35}.exercise-promotion__title{color:var(--text);font-family:var(--font-display);margin:0;font-size:clamp(1.12rem,2vw,1.35rem);line-height:1.25}.exercise-promotion__description{max-width:38rem;color:var(--text-muted);margin:.35rem 0 0;font-size:.9rem;line-height:1.5}.exercise-promotion__cta{background:var(--dark-blue);color:#fff;text-align:center;border-radius:.8rem;justify-content:center;align-items:center;gap:.45rem;min-height:2.75rem;padding:.65rem .85rem;font-size:.82rem;font-weight:800;line-height:1.2;transition:box-shadow .16s,transform .16s;display:inline-flex}.exercise-promotion__cta:hover{color:#fff;transform:translateY(-1px);box-shadow:0 .5rem 1.2rem #071b7633}.exercise-promotion__cta:focus-visible{outline:3px solid color-mix(in srgb, var(--accent-strong) 65%, #fff);outline-offset:3px}@media (max-width:680px){.exercise-promotion{grid-template-columns:auto minmax(0,1fr);gap:.8rem;padding:1rem}.exercise-promotion__icon{border-radius:.85rem;width:2.8rem;height:2.8rem}.exercise-promotion__cta{grid-column:1/-1;width:100%}}@media (prefers-reduced-motion:reduce){.exercise-promotion__cta{transition:none}}.lesson-floating-promotion{color:#fff;background:radial-gradient(circle at 100% 0,#6ee7b72b,#0000 42%),#07135c;border:1px solid #6ee7b74d;border-radius:1.1rem;width:100%;margin:1.5rem auto 0;padding:1.1rem;position:relative;overflow:hidden;box-shadow:0 14px 35px #07135c47}.lesson-floating-promotion__close{z-index:2;color:#ffffffc2;cursor:pointer;background:0 0;border:0;border-radius:999px;place-items:center;width:2rem;height:2rem;padding:0;display:grid;position:absolute;top:.55rem;right:.55rem}.lesson-floating-promotion__mobile-link{display:none}.lesson-floating-promotion__close:hover,.lesson-floating-promotion__close:focus-visible{color:#fff;outline:2px solid var(--accent);background:#ffffff1f}.lesson-floating-promotion__icon{width:2.65rem;height:2.65rem;color:var(--accent);background:#6ee7b724;border-radius:.8rem;place-items:center;margin-bottom:.8rem;display:grid}.lesson-floating-promotion__eyebrow{color:var(--accent);letter-spacing:.13em;text-transform:uppercase;margin:0;padding-right:2rem;font-size:.66rem;font-weight:800;line-height:1.3}.lesson-floating-promotion__title{color:#fff;font-family:var(--font-display);margin:.4rem 1.5rem 0 0;font-size:1.16rem;line-height:1.22}.lesson-floating-promotion__description{color:#fffc;margin:.55rem 0 0;font-size:.78rem;line-height:1.55}.lesson-floating-promotion__cta{background:var(--accent);color:#052e1f;border-radius:999px;justify-content:center;align-items:center;gap:.4rem;min-height:2.4rem;margin-top:.9rem;padding:.55rem .8rem;font-size:.75rem;font-weight:800;display:inline-flex}.lesson-floating-promotion__cta:hover{background:var(--accent-strong);color:#052e1f}.lesson-floating-promotion__cta:focus-visible{outline-offset:3px;outline:2px solid #fff}@media (min-width:1200px){.lesson-floating-promotion{z-index:2300;width:17rem;max-width:calc(100vw - 7.5rem);margin:0;position:fixed;bottom:1.5rem;right:6rem}}@media (max-width:768px){.lesson-floating-promotion{right:4.25rem;bottom:calc(.75rem + env(safe-area-inset-bottom));z-index:2300;width:auto;max-width:none;box-shadow:none;background:#07135c;border-color:#6ee7b757;border-radius:.78rem;margin:0;padding:.68rem 2.25rem .7rem .8rem;display:block;position:fixed;left:.75rem}.lesson-floating-promotion__icon{display:none}.lesson-floating-promotion__mobile-link{z-index:1;border-radius:inherit;display:block;position:absolute;inset:0}.lesson-floating-promotion__mobile-link:focus-visible{outline:3px solid var(--accent);outline-offset:2px}.lesson-floating-promotion__eyebrow{pointer-events:none;padding-right:0;font-size:.58rem}.lesson-floating-promotion__title{font-family:var(--font-sans);pointer-events:none;margin:.12rem 0 0;font-size:.82rem;line-height:1.25}.lesson-floating-promotion__description{display:none}.lesson-floating-promotion__close{width:1.8rem;height:1.8rem;top:50%;right:.45rem;transform:translateY(-50%)}.lesson-floating-promotion__cta{display:none}}
.feedback-prompt{border:1px solid color-mix(in srgb, var(--dark-blue) 16%, var(--border));background:linear-gradient(135deg,#fff,#f3fbf8);border-radius:1.1rem;width:min(100%,42rem);margin:1.5rem auto 2rem;padding:1rem 1.1rem;box-shadow:0 10px 28px #071b7612}.feedback-prompt__copy{text-align:center}.feedback-prompt__eyebrow{color:#247a67;letter-spacing:.09em;text-transform:uppercase;margin:0;font-size:.66rem;font-weight:800}.feedback-prompt__title{color:var(--text);font-family:var(--font-display);margin:.25rem 0 0;font-size:1.08rem;line-height:1.3}.feedback-prompt__actions{justify-content:center;align-items:center;gap:1rem;margin-top:.8rem;display:flex}.feedback-prompt__choices{gap:.4rem;display:flex}.feedback-prompt__choice{border:1px solid var(--border);cursor:pointer;background:#fff;border-radius:.85rem;place-items:center;width:2.65rem;height:2.65rem;padding:0;font-size:1.35rem;transition:border-color .15s,transform .15s,background .15s;display:grid}.feedback-prompt__choice:hover:not(:disabled),.feedback-prompt__choice:focus-visible{border-color:var(--accent-strong);background:var(--accent-dim);outline:none;transform:translateY(-2px)}.feedback-prompt__choice.is-selected{background:#ccfbf1;border-color:#0f766e;box-shadow:0 0 0 3px #0f766e1f}.feedback-prompt__choice:disabled{cursor:default;opacity:.55}.feedback-prompt__choice.is-selected:disabled{opacity:1}.feedback-prompt__link{color:var(--dark-blue);text-underline-offset:.25rem;font-size:.82rem;font-weight:800;-webkit-text-decoration:underline dotted;text-decoration:underline dotted}.feedback-prompt__link:hover,.feedback-prompt__link:focus-visible{color:#0f766e;outline:none}.feedback-prompt__status{min-height:1.25rem;color:var(--text-muted);text-align:center;margin-top:.45rem;font-size:.76rem;line-height:1.4}.feedback-prompt--compact{margin:1rem auto .25rem;padding:.8rem 1rem}@media (max-width:520px){.feedback-prompt{padding:.85rem}.feedback-prompt__actions{flex-direction:column;gap:.65rem}.feedback-prompt__choice{width:2.8rem;height:2.8rem}}@media (prefers-reduced-motion:reduce){.feedback-prompt__choice{transition:none}}
.tutor-form{background:var(--bg-soft);width:100%;max-width:100%;box-shadow:var(--shadow);box-sizing:border-box;border:1px solid #6ee7b759;border-radius:20px;margin:0 auto;padding:clamp(1.35rem,4vw,3rem)}.tutor-form__title{font-family:var(--font-display);margin:0 0 1rem;font-size:clamp(1.15rem,4vw,1.35rem)}.tutor-form__success{color:var(--success);margin:0}.tutor-form__error{color:var(--danger);margin:0 0 1rem;font-size:.9rem}.tutor-form__submit{width:100%;margin-top:.25rem}.field{flex-direction:column;gap:.35rem;min-width:0;margin-bottom:1rem;display:flex}.field__label{color:var(--text-muted);font-size:.8rem;font-weight:600}.field__input,.field__textarea{box-sizing:border-box;border-radius:var(--radius-sm);border:1px solid var(--border-strong);background:var(--bg);width:100%;min-width:0;color:var(--text);padding:.65rem .75rem;font-family:inherit;font-size:1rem}.field__textarea{resize:vertical;min-height:110px}.field__input:focus,.field__textarea:focus{outline:2px solid var(--accent-dim);border-color:var(--accent)}.field__phone{box-sizing:border-box;border-radius:var(--radius-sm);border:1px solid var(--border-strong);background:var(--bg);width:100%;min-width:0;padding:.55rem .75rem}.field__phone:focus-within{outline:2px solid var(--accent-dim);border-color:var(--accent)}.field__phone .PhoneInputCountry{margin-right:.6rem}.field__phone .PhoneInputInput{min-width:0;color:var(--text);background:0 0;border:none;outline:none;font-family:inherit;font-size:1rem}.field__phone .PhoneInputCountrySelect{cursor:pointer}.field__input{text-overflow:ellipsis;overflow:hidden}select.field__input{appearance:auto;white-space:nowrap}@media (max-width:560px){.tutor-form{width:100%;max-width:100%;overflow:hidden}select.field__input{width:100%;max-width:100%;font-size:.9rem}.field{margin-bottom:.85rem}.field__input,.field__textarea,.field__phone{box-sizing:border-box;width:100%;max-width:100%;padding:.6rem .65rem;font-size:.95rem}.field__textarea{min-height:95px}}.phone-row{grid-template-columns:105px 1fr;gap:.45rem;min-width:0;display:grid}.country-picker__button{border:1px solid var(--border-strong);width:100%;min-height:39px;color:var(--text);font:inherit;cursor:pointer;background:#f8fafc;border-radius:10px;justify-content:space-between;align-items:center;gap:.3rem;padding:0 .55rem;font-size:.88rem;display:flex}.country-picker__overlay{z-index:5000;-webkit-backdrop-filter:blur(10px);background:#07145f61;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.country-picker__card{background:#fff;border:1px solid #0d6e47fc;border-radius:20px;flex-direction:column;width:min(410px,94vw);max-height:min(600px,80vh);animation:.3s cubic-bezier(.175,.885,.32,1.275) popIn;display:flex;overflow:hidden;box-shadow:0 24px 60px #0f172a47}.country-picker__header{color:#fff;background:#11357a;justify-content:space-between;align-items:center;padding:.85rem 1rem;display:flex}.country-picker__header p{color:#ffffffbf;margin:.2rem 0 0;font-size:.78rem}.country-picker__close{color:#fff;cursor:pointer;background:#ffffff1f;border:none;border-radius:999px;width:32px;height:32px;font-size:1.2rem}.country-picker__list{padding:.45rem;overflow-y:auto}.country-picker__option{text-align:left;width:100%;font:inherit;cursor:pointer;background:0 0;border:none;border-radius:10px;justify-content:space-between;gap:1rem;padding:.65rem .7rem;display:flex}.country-picker__option:hover,.country-picker__option--active{background:var(--accent-dim)}.country-picker__option-code{color:#0f766e}@media (max-width:560px){.tutor-form{max-width:100%;padding:1rem}.phone-row{grid-template-columns:95px 1fr}.field__input,.field__textarea,.country-picker__button{font-size:.88rem}}.pricing-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));align-items:stretch;gap:1rem;display:grid}.pricing-card{border-radius:var(--radius);border:1px solid var(--border);background:var(--bg-elevated);padding:1.25rem 1.2rem;position:relative;box-shadow:0 12px 28px #0f172a14}.pricing-card--highlight{border-color:color-mix(in srgb, var(--accent) 45%, var(--border));background:linear-gradient(145deg,#fff,#f0fff8);box-shadow:0 16px 34px #34d39929}.pricing-card__badge{text-transform:uppercase;letter-spacing:.06em;background:var(--accent-dim);color:#0f766e;border-radius:999px;padding:.25rem .55rem;font-size:.68rem;font-weight:700;position:absolute;top:.8rem;right:.8rem}.pricing-card__title{margin:0 0 .55rem;font-size:1.05rem;font-weight:800}.pricing-card__price{margin:0 0 .8rem}.pricing-card__amount{font-family:var(--font-display);font-size:1.75rem;font-weight:700}.pricing-card__detail{color:var(--text-muted);font-size:.92rem}.pricing-card__features{color:var(--text-muted);margin:.8rem 0 0;padding-left:1.1rem;font-size:.9rem;line-height:1.55}.select-cards{grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:.5rem;display:grid}.select-card{border:1px solid var(--border-strong);color:var(--text);text-align:center;cursor:pointer;background:#f8fafc;border-radius:12px;padding:.6rem .65rem;font-size:.85rem;transition:all .15s}.select-card:hover{background:var(--bg-soft)}.select-card--active{background:var(--accent-dim);border-color:var(--accent);color:#0f766e;font-weight:600}.select-card--recommended{color:#8a6d00;background:linear-gradient(145deg,#fffbe6,#fff7cc);border:1px solid #ffd70099;position:relative}.select-card--recommended:before{content:"";pointer-events:none;border-radius:12px;position:absolute;inset:-1px;box-shadow:0 0 10px #ffd70059}.select-card--recommended.select-card--active{color:#5c4500;background:linear-gradient(145deg,#fff3a3,#ffe066);border-color:#facc15;box-shadow:0 6px 18px #facc1559}.select-card--recommended:after{content:"Recommended";color:#5c4500;background:#facc15;border-radius:999px;padding:2px 6px;font-size:.6rem;font-weight:700;position:absolute;top:-8px;right:8px}.level-suggestion{color:var(--text-muted);background:#6ee7b724;border:1px solid #6ee7b759;border-radius:14px;margin-top:.6rem;margin-bottom:.6rem;padding:.75rem .85rem;font-size:.86rem}.level-suggestion p{margin:0 0 .45rem}.level-suggestion__link{color:#0f766e;font-weight:700;font-family:var(--font-sans);text-decoration:none}.level-suggestion__link:hover{-webkit-text-decoration:none;text-decoration:none}.country-picker__flag{flex-shrink:0;align-items:center;width:22px;height:16px;display:inline-flex}.country-picker__flag svg{width:100%;height:100%}.country-picker__option .country-picker__flag{margin-right:8px}.field__hint{color:var(--text-muted);margin-top:.25rem;margin-bottom:.35rem;font-size:.78rem;line-height:1.4;display:block}.field__subfield{gap:.35rem;margin-top:.75rem;display:grid}.field__label--sub{color:var(--text-muted);font-size:.82rem}.field__select{border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--bg-elevated);width:100%;color:var(--text);font:inherit;cursor:pointer;padding:.6rem .85rem;font-size:.95rem}.field__select:focus{border-color:var(--accent-strong);box-shadow:0 0 0 3px color-mix(in srgb, var(--accent) 22%, transparent);outline:none}
.page--home{max-width:960px}.home-hero{width:100%;padding:1.5rem 0 3rem}.home-hero__card{background:#07135c;border-radius:30px;grid-template-columns:.92fr 1.08fr;width:100%;min-height:clamp(420px,68vh,620px);max-height:none;display:grid;overflow:hidden;box-shadow:0 22px 55px #07135c38}.home-hero__copy{z-index:3;color:#fff;background:linear-gradient(90deg,#07135c 0% 78%,#07135cad 100%);flex-direction:column;justify-content:center;padding:clamp(1.5rem,4vh,3rem);display:flex;position:relative}.home-hero__eyebrow{color:var(--accent-strong);letter-spacing:.1em;text-transform:uppercase;margin:0 0 .8rem;font-weight:700}.home-hero__title{color:#fff;max-width:560px;font-family:var(--font-display);letter-spacing:-.04em;margin:0;font-size:clamp(2.1rem,5.6vh,4.3rem);line-height:.98}.home-hero__lead{color:#ffffffd6;max-width:560px;margin:clamp(.8rem,2vh,1.2rem) 0 0;font-size:clamp(.95rem,2vh,1.12rem);line-height:1.65}.home-hero__mobile-copy{display:none}.home-hero__actions{flex-wrap:wrap;gap:.8rem;margin-top:clamp(1rem,3vh,1.6rem);display:flex}.home-hero__demo-btn{color:#fff;background-color:#ffffff56;border-color:#ffffff59}.home-hero__demo-btn:hover{color:var(--accent-strong);border-color:var(--accent-strong)}.home-hero__images{height:100%;min-height:0;position:relative;overflow:hidden}.home-hero__images:after{content:"";z-index:2;background:linear-gradient(90deg,#07135c8c,#07135c14);position:absolute;inset:0}.home-hero__images img{object-fit:cover;opacity:0;width:100%;height:100%;min-height:0;animation:12s ease-in-out infinite homeHeroFade;display:block;position:absolute;inset:0;transform:scale(1.04)}@keyframes homeHeroFade{0%{opacity:0;transform:scale(1.04)}8%{opacity:1}33%{opacity:1}45%{opacity:0;transform:scale(1.12)}to{opacity:0}}@media (max-width:900px){.home-hero{padding:.5rem 0 1.25rem}.home-hero__card{background:linear-gradient(145deg,#07135c 0%,#102b7f 58%,#0f766e 130%);min-height:0;max-height:none;display:block}.home-hero__images{display:none}.home-hero__copy{text-align:center;background:0 0;justify-content:center;align-items:center;padding:clamp(1.5rem,6vw,2rem) clamp(1rem,5vw,1.5rem);display:flex}.home-hero__title{max-width:100%;font-size:2.4rem}.home-hero__lead{color:#ffffffe0;max-width:100%;font-size:.98rem}.home-hero__desktop-copy{display:none}.home-hero__mobile-copy{display:inline}.home-hero__actions{justify-content:center;width:100%}.home-hero__actions .btn{width:100%;max-width:340px}.home-hero__ghost{display:none!important}}@media (max-width:600px){.home-hero__card{border-radius:20px}.home-hero__title{font-size:clamp(1.85rem,8vw,2.15rem)}.home-hero__lead{line-height:1.55}.home-hero__actions{gap:.65rem}}.home-categories{margin-top:clamp(2.5rem,6vw,3.5rem)}.home-section-head{margin-bottom:1.35rem}.home-section-head__title{font-family:var(--font-display);margin:0 0 .4rem;font-size:1.35rem;font-weight:700}.home-section-head__desc{color:var(--text-muted);max-width:42ch;margin:0;line-height:1.55}.home-category-grid{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:.85rem;margin:0;padding:0;list-style:none;display:grid}.home-category-card{border-radius:var(--radius);border:1px solid var(--border);background:var(--bg-elevated);border-left:4px solid var(--cat-accent,var(--accent));flex-direction:column;align-items:flex-start;gap:.4rem;min-height:100%;padding:1.1rem 1.15rem;transition:border-color .15s,box-shadow .15s,transform .12s;display:flex}.home-category-card:hover{border-color:color-mix(in srgb, var(--cat-accent,var(--accent)) 40%, var(--border));box-shadow:var(--shadow);transform:translateY(-2px)}.home-category-card__dot{background:var(--cat-accent,var(--accent));width:10px;height:10px;box-shadow:0 0 0 3px color-mix(in srgb, var(--cat-accent,var(--accent)) 28%, transparent);border-radius:50%}.home-category-card__title{font-family:var(--font-display);margin:0;font-size:1.05rem;font-weight:700}.home-category-card__desc{color:var(--text-muted);flex:1;font-size:.88rem;line-height:1.45}.home-category-card__cta{color:var(--cat-accent,var(--accent));margin-top:.25rem;font-size:.82rem;font-weight:600}.home-tutor-promo{border:1px solid var(--border);background:linear-gradient(135deg, color-mix(in srgb, var(--navbar-bg) 8%, #07135c), #08409b);border-radius:30px;margin-top:clamp(2.75rem,7vw,4rem);padding:clamp(1.5rem,4vw,2.25rem);overflow:hidden}.home-tutor-promo__inner{grid-template-columns:minmax(280px,1fr) minmax(280px,430px);align-items:center;gap:2rem;display:grid}.home-tutor-promo__copy{z-index:2;position:relative}.home-tutor-promo__title{font-family:var(--font-display);color:#fff;margin:0 0 .5rem;font-size:clamp(2.1rem,5.6vh,4.3rem)}.home-tutor-promo__text{color:var(--text-inverse);max-width:42ch;margin:0 0 .85rem;line-height:1.6}.home-tutor-promo__bullets{color:var(--text-inverse);margin:0 0 1.15rem;padding-left:1.2rem;line-height:1.55}.home-tutor-promo__bullets li{margin-bottom:.35rem}.home-tutor-promo__panel{min-height:320px;position:relative}.home-learning-guide{border:1px solid var(--border);background:radial-gradient(circle at 100% 0%, color-mix(in srgb, var(--accent) 13%, transparent), transparent 32rem), var(--bg-elevated);border-radius:28px;margin-top:clamp(2.75rem,7vw,4.5rem);padding:clamp(1.35rem,4vw,2.5rem)}.home-learning-guide__intro{max-width:64ch}.home-learning-guide__eyebrow{color:var(--accent);letter-spacing:.09em;text-transform:uppercase;margin:0 0 .5rem;font-size:.78rem;font-weight:800}.home-learning-guide h2{font-family:var(--font-display);margin:0;font-size:clamp(1.7rem,4vw,2.5rem);line-height:1.05}.home-learning-guide__intro>p:last-child{color:var(--text-muted);margin:.8rem 0 0;line-height:1.65}.home-learning-guide__steps{grid-template-columns:repeat(3,minmax(0,1fr));gap:.9rem;margin-top:1.6rem;display:grid}.home-learning-step{border:1px solid var(--border);background:color-mix(in srgb, var(--bg) 45%, var(--bg-elevated));border-radius:18px;flex-direction:column;min-height:100%;padding:1.15rem;display:flex}.home-learning-step__number{color:var(--accent);letter-spacing:.08em;font-size:.76rem;font-weight:900}.home-learning-step h3,.home-learning-guide__footer h3{font-family:var(--font-display);margin:.55rem 0 0;font-size:1.15rem}.home-learning-step p{color:var(--text-muted);margin:.55rem 0 1rem;font-size:.93rem;line-height:1.55}.home-learning-step a{color:var(--accent);margin-top:auto;font-size:.9rem;font-weight:750}.home-learning-guide__footer{border-top:1px solid var(--border);justify-content:space-between;align-items:center;gap:1.5rem;margin-top:1.5rem;padding-top:1.5rem;display:flex}.home-learning-guide__footer h3{margin-top:0}.home-learning-guide__footer p{max-width:64ch;color:var(--text-muted);margin:.45rem 0 0;line-height:1.55}@media (max-width:760px){.home-learning-guide__steps{grid-template-columns:1fr}.home-learning-guide__footer{flex-direction:column;align-items:flex-start}}@media (max-width:700px){.home-hero__photo{width:min(100%,280px);height:220px}.home-tutor-promo__image{min-height:220px}}.home-tutor-promo__image{overflow:hidden;border-radius:20px!important}.image-carousel{border-radius:inherit;width:100%;height:100%;min-height:260px;position:relative;overflow:hidden}.image-carousel img{object-fit:cover;opacity:0;width:100%;height:100%;animation-name:imageCarouselFade;animation-timing-function:ease-in-out;animation-iteration-count:infinite;position:absolute;inset:0;transform:scale(1.04)}@keyframes imageCarouselFade{0%{opacity:0;transform:scale(1.04)}8%{opacity:1}33%{opacity:1}45%{opacity:0;transform:scale(1.12)}to{opacity:0}}@media (max-width:700px){.image-carousel{min-height:220px}}.page--tutor{max-width:880px}.tutor-page-header{margin-bottom:2rem}.tutor-page-header__title{font-family:var(--font-display);margin:0 0 .5rem;font-size:clamp(1.5rem,3vw,1.85rem)}.tutor-page-header__desc{color:var(--text-muted);max-width:52ch;margin:0;line-height:1.6}.tutor-demo-spotlight{border-radius:var(--radius);border:2px solid color-mix(in srgb, var(--accent) 45%, var(--border));background:linear-gradient(145deg, color-mix(in srgb, var(--accent) 14%, var(--bg-elevated)), var(--bg-soft));grid-template-columns:1fr minmax(200px,260px);gap:1.25rem;margin-bottom:2.5rem;padding:clamp(1.35rem,3vw,2rem);display:grid;box-shadow:0 8px 32px #0003}@media (max-width:700px){.tutor-demo-spotlight{grid-template-columns:1fr}}.tutor-demo-spotlight__badge{text-transform:uppercase;letter-spacing:.08em;background:color-mix(in srgb, var(--accent) 28%, transparent);color:var(--accent);border-radius:999px;margin-bottom:.65rem;padding:.25rem .55rem;font-size:.68rem;font-weight:700;display:inline-block}.tutor-demo-spotlight__title{font-family:var(--font-display);margin:0 0 .5rem;font-size:1.5rem}.tutor-demo-spotlight__lead{color:var(--text-muted);margin:0 0 .85rem;line-height:1.6}.tutor-demo-spotlight__list{color:var(--text-muted);margin:0;padding-left:1.15rem;line-height:1.55}.tutor-demo-spotlight__list li{margin-bottom:.35rem}.tutor-demo-spotlight__aside{border-radius:var(--radius-sm);background:var(--bg-elevated);border:1px solid var(--border);align-items:center;padding:1rem;display:flex}.tutor-demo-spotlight__aside-text{color:var(--text-muted);margin:0;font-size:.9rem;line-height:1.5}.tutor-pricing-block{margin-bottom:2.25rem}.tutor-section-head{margin-bottom:1rem}.tutor-section-head__title{font-family:var(--font-display);margin:0 0 .25rem;font-size:1.2rem}.tutor-section-head__desc{color:var(--text-muted);margin:0;font-size:.92rem}.tutor-pricing-grid{gap:1rem;display:grid}.tutor-pricing-grid--three{grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.tutor-pricing-grid--exam{grid-template-columns:minmax(280px,420px)}.tutor-booking-section{border-top:1px solid var(--border);margin-top:.5rem;padding-top:2rem}.tutor-booking-section__intro{margin-bottom:1.25rem}.tutor-booking-section__title{font-family:var(--font-display);margin:0 0 .4rem;font-size:1.25rem}.tutor-booking-section__desc{color:var(--text-muted);max-width:52ch;margin:0;font-size:.92rem;line-height:1.55}.home-search-shell{z-index:80;max-width:760px;margin:2rem auto;padding:0 .75rem;position:sticky;top:0}.home-search-backdrop{z-index:10;-webkit-backdrop-filter:blur(7px);background:#0f172a2e;position:fixed;inset:0}.home-search{z-index:30;width:100%;position:relative}.home-search--open{transform:none}.home-search__bar{-webkit-backdrop-filter:blur(16px);background:#ffffff94;border:1px solid #ffffff6b;border-radius:999px;align-items:center;gap:.75rem;height:56px;padding:0 1.05rem;transition:background .2s,box-shadow .2s,border-color .2s;display:flex;box-shadow:0 12px 30px #0f172a21,inset 0 1px #ffffff8c}.home-search__bar:focus-within{background:#ffffffc2;border-color:#6ee7b7a6;box-shadow:0 16px 38px #0f172a2e,0 0 0 3px #6ee7b72e}.home-search__icon{color:#0f172a73;font-size:1.8rem;line-height:1}.home-search__input{min-width:0;color:var(--text);font:inherit;background:0 0;border:none;outline:none;flex:1;font-size:1rem}.home-search__input::placeholder{color:#1f29378c}.home-search__clear{width:30px;height:30px;color:var(--text-muted);cursor:pointer;background:#ecececc7;border:none;border-radius:999px;font-size:1.2rem}.home-search__panel{-webkit-backdrop-filter:blur(18px);background:#ffffffd1;border:1px solid #ffffff73;border-radius:24px;max-height:min(420px,55vh);padding:.75rem;position:absolute;top:calc(100% + .5rem);left:.75rem;right:.75rem;overflow:hidden;box-shadow:0 24px 60px #0f172a38,inset 0 1px #ffffff8c}.home-search__hint{color:var(--text-muted);margin:0 0 .55rem;padding:0 .45rem;font-size:.82rem}.home-search__results{overscroll-behavior:contain;gap:.35rem;max-height:min(330px,45vh);display:grid;overflow-y:auto}.home-search__result{color:var(--text);background:0 0;border-radius:16px;grid-template-columns:32px 1fr auto;align-items:center;gap:.7rem;padding:.75rem;text-decoration:none;display:grid}.home-search__result:hover{background:#6ee7b729}.home-search__result-icon{color:#0f766e;background:#6ee7b729;border-radius:999px;place-items:center;width:28px;height:28px;font-weight:800;display:grid}.home-search__result-text strong{font-size:.95rem;display:block}.home-search__result-text small{color:var(--text-muted);margin-top:.15rem;font-size:.82rem;line-height:1.35;display:block}.home-search__result em{color:#0f766e;background:#6ee7b72e;border-radius:999px;padding:.25rem .45rem;font-size:.72rem;font-style:normal;font-weight:800}.home-search__empty{color:var(--text-muted);margin:0;padding:.85rem}@media (max-width:560px){.home-search-shell{z-index:300;margin:.75rem 0;padding:0 .65rem;position:sticky;top:0}.home-search__bar{background:#ffffffa3;gap:.55rem;height:50px;padding:0 .85rem}.home-search__icon{font-size:1.25rem}.home-search__input{font-size:.92rem}.home-search__panel{border-radius:20px;max-height:min(390px,58vh);left:.65rem;right:.65rem}.home-search__results{max-height:min(300px,46vh)}.home-search__result{grid-template-columns:28px 1fr;gap:.55rem;padding:.65rem}.home-search__result-icon{width:28px;height:28px}.home-search__result em{grid-column:2;justify-self:start}}button.home-search__result{width:100%;font:inherit;cursor:pointer;text-align:left;border:none}@media (max-width:430px){.home-hero__card{border-radius:20px!important;min-height:0!important}.home-hero__copy{text-align:center!important;justify-content:center!important;align-items:center!important;padding:1.5rem 1rem!important}.home-hero__title{max-width:100%!important;font-size:1.75rem!important}.home-hero__lead{padding:0!important;font-size:.9rem!important}.home-hero__actions{flex-direction:column!important;gap:10px!important;width:100%!important}.home-hero__actions .btn{width:100%!important;max-width:none!important;padding:.75rem 1rem!important}.home-category-grid{grid-template-columns:1fr!important;gap:.65rem!important}.home-category-card{padding:1rem!important}.home-category-card__title{font-size:.95rem!important}.home-category-card__desc{font-size:.82rem!important}.home-tutor-promo{border-radius:20px!important;padding:1.25rem 1rem!important}.home-tutor-promo__title{font-size:1.6rem!important}.home-tutor-promo__text,.home-tutor-promo__bullets{font-size:.9rem!important}.home-search-shell{margin:1rem auto .5rem!important}.home-search__panel{max-height:65vh!important;padding:.5rem!important}.home-search__result{gap:.5rem!important;padding:.5rem!important}.home-search__result-text strong{font-size:.85rem!important}.home-search__result-text small{font-size:.75rem!important}}@media (max-width:820px){.home-tutor-promo{background:0 0!important;border:none!important;border-radius:0!important;padding:1rem 0!important}.home-tutor-promo__inner{background:#07135c;border-radius:24px;min-height:450px;position:relative;overflow:hidden;grid-template-rows:1fr!important;grid-template-columns:1fr!important;gap:0!important}.home-tutor-promo__copy,.home-tutor-promo__panel{grid-area:1/1/-1/-1!important}.home-tutor-promo__panel{z-index:1!important;min-height:100%!important;margin-top:0!important}.home-tutor-promo__image{border-radius:24px!important;width:100%!important;height:100%!important;position:absolute!important;inset:0!important}.home-tutor-promo__image .image-carousel{border-radius:24px!important;height:100%!important;min-height:100%!important;position:absolute!important;inset:0!important}.home-tutor-promo__image img{object-fit:cover!important;width:100%!important;height:100%!important;position:absolute!important;inset:0!important}.home-tutor-promo__panel:after{content:"";z-index:2;pointer-events:none;background:linear-gradient(#07135c4d 0%,#07135cd9 100%);position:absolute;inset:0}.home-tutor-promo__copy{z-index:3!important;text-align:center!important;background:0 0!important;flex-direction:column!important;justify-content:flex-end!important;align-items:center!important;padding:2rem 1.5rem!important;display:flex!important}.home-tutor-promo__title{text-shadow:0 2px 8px #0000004d!important;font-size:2rem!important}.home-tutor-promo__text,.home-tutor-promo__bullets{color:#ffffffe6!important;text-shadow:0 1px 4px #0003!important;max-width:100%!important}}@media (max-width:560px){.home-tutor-promo__inner{border-radius:20px;min-height:420px}.home-tutor-promo__image,.home-tutor-promo__image .image-carousel{border-radius:20px!important}.home-tutor-promo__copy{padding:1.5rem 1rem!important}.home-tutor-promo__title{font-size:1.6rem!important}.home-tutor-promo__panel-note{max-width:85%!important;padding:.8rem!important;font-size:.85rem!important}.home-tutor-promo__bullets{padding-left:1rem!important;font-size:.85rem!important}}@media (max-width:430px){.home-tutor-promo__inner{border-radius:18px;min-height:380px}.home-tutor-promo__image,.home-tutor-promo__image .image-carousel{border-radius:18px!important}.home-tutor-promo__copy{padding:1.25rem .9rem!important}.home-tutor-promo__title{font-size:1.4rem!important}.home-tutor-promo__text{font-size:.85rem!important}.home-tutor-promo__panel-note{max-width:90%!important;bottom:.5rem!important;right:.5rem!important}}.home-features{background:var(--dark-blue);border-radius:24px;max-width:1000px;margin:2rem auto;padding:2rem;position:relative}.feature-carousel{justify-content:center;width:100%;display:flex}.feature-carousel__wrapper{width:100%;max-width:calc((100vh - var(--navbar-h) - var(--navbar-hb) - 8rem) * (16 / 9));position:relative}.feature-carousel__viewport{aspect-ratio:16/9;max-height:calc(100vh - var(--navbar-h) - var(--navbar-hb) - 8rem);background:#000;border-radius:16px;width:100%;overflow:hidden;box-shadow:0 10px 30px #0006}.feature-carousel__track{height:100%;display:flex}.feature-carousel__slide{justify-content:center;align-items:center;min-width:100%;height:100%;display:flex}.feature-carousel__link{width:100%;height:100%;color:inherit;cursor:pointer;display:block;overflow:hidden}.feature-carousel__link:focus-visible{outline:4px solid var(--accent);outline-offset:-4px}.feature-carousel__link .feature-carousel__media{transition:transform .18s,filter .18s}.feature-carousel__link:hover .feature-carousel__media{filter:brightness(1.04);transform:scale(1.01)}.feature-carousel__media{object-fit:cover;width:100%;height:100%}@media (prefers-reduced-motion:reduce){.feature-carousel__link .feature-carousel__media{transition:none}}.feature-carousel__btn{color:#0d1240;cursor:pointer;z-index:10;background:#fff;border:none;border-radius:50%;justify-content:center;align-items:center;width:56px;height:56px;transition:background .2s,transform .2s;display:flex;position:absolute;top:50%;transform:translateY(-50%);box-shadow:0 4px 15px #0003}.feature-carousel__btn:hover{background:#f1f1f1;transform:translateY(-50%)scale(1.05)}.feature-carousel__btn--prev{left:-28px}.feature-carousel__btn--next{right:-28px}@media (max-width:768px){.home-features{border-radius:16px;margin:1.5rem auto;padding:1.5rem 1rem}.feature-carousel__wrapper{max-width:calc((100vh - var(--navbar-h) - var(--navbar-hb) - 4.5rem) * (16 / 9))}.feature-carousel__viewport{max-height:calc(100vh - var(--navbar-h) - var(--navbar-hb) - 4.5rem)}.feature-carousel__btn--prev{left:-22px}.feature-carousel__btn--next{right:-22px}.feature-carousel__btn{width:44px;height:44px}}.pricing-card--clickable{text-align:left;width:100%;font:inherit;color:inherit;cursor:pointer;transition:transform .15s,box-shadow .15s,border-color .15s;display:block}.pricing-card--clickable:hover,.pricing-card--clickable:focus-visible{border-color:var(--accent);outline:none;transform:translateY(-2px);box-shadow:0 12px 32px #0f172a24}.pricing-card__cta{letter-spacing:.02em;color:var(--accent-strong,#34d399);margin-top:.85rem;font-size:.82rem;font-weight:700;display:inline-block}.home-search__noscript-links{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg-elevated);color:var(--text-muted);margin:0 0 .75rem;padding:.75rem 1rem;font-size:.85rem}.home-search__noscript-links p{margin:0 0 .35rem;font-weight:700}.home-search__noscript-links ul{flex-wrap:wrap;gap:.35rem .75rem;margin:0;padding:0;list-style:none;display:flex}.home-search__noscript-links a{color:var(--accent-strong)}
.cookie-consent{z-index:2600;width:100%;padding:1.15rem clamp(1rem,4vw,3rem);padding-bottom:calc(1.15rem + env(safe-area-inset-bottom));border-top:3px solid color-mix(in srgb, var(--accent) 70%, #07135c);background:color-mix(in srgb, var(--bg-elevated) 96%, #07135c);flex-flow:wrap;justify-content:center;align-items:center;gap:1.25rem;animation:.35s ease-out cookieConsentSlideUp;display:flex;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -16px 45px #07135c47}.cookie-consent__close{width:2rem;height:2rem;color:var(--text-muted);cursor:pointer;background:0 0;border:0;border-radius:50%;place-items:center;padding:0;display:grid;position:absolute;top:.55rem;right:.75rem}.cookie-consent__close:hover{background:color-mix(in srgb, var(--text) 8%, transparent);color:var(--text)}.cookie-consent__close:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.cookie-consent__close svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-width:2px;width:1.25rem;height:1.25rem}.cookie-consent__eyebrow{color:var(--accent);letter-spacing:.08em;text-transform:uppercase;margin:0 0 .15rem;font-size:.68rem;font-weight:800}.cookie-consent h2{font-family:var(--font-display);margin:0;font-size:1rem}.cookie-consent p:not(.cookie-consent__eyebrow){color:var(--text-muted);max-width:720px;margin:.2rem 0 0;font-size:.82rem;line-height:1.4}.cookie-consent__policy-link{color:var(--accent);text-underline-offset:3px;margin-top:.35rem;font-size:.78rem;font-weight:700;text-decoration:underline;display:inline-block}.cookie-consent__policy-link:hover{color:var(--accent-strong)}.cookie-consent__actions{flex-shrink:0;align-items:center;gap:.6rem;display:flex}.cookie-consent__actions .btn{white-space:nowrap;min-height:2.5rem;padding:.55rem 1.15rem;font-size:.82rem}.cookie-consent>div:first-of-type{flex:420px;min-width:0}@keyframes cookieConsentSlideUp{0%{opacity:0;transform:translateY(100%)}to{opacity:1;transform:translateY(0)}}@media (max-width:640px){.cookie-consent{padding:.75rem 1rem calc(.75rem + env(safe-area-inset-bottom));flex-direction:column;align-items:stretch;gap:.65rem}.cookie-consent>div:first-of-type{flex:0 auto}.cookie-consent p:not(.cookie-consent__eyebrow){font-size:.78rem;line-height:1.3}.cookie-consent__policy-link{margin-top:.2rem}.cookie-consent__actions{justify-content:stretch;gap:.45rem}.cookie-consent__actions .btn{flex:1;min-height:2.25rem;padding:.45rem .75rem}}
.exercise-ai-feedback{background:var(--bg);color:var(--text-muted);border:1px solid #c2c2c2;border-color:var(--success);border-radius:14px;margin-top:1rem;padding:1rem}.ai-status{text-transform:uppercase;border-radius:999px;width:fit-content;margin-bottom:.7rem;padding:.3rem .7rem;font-size:.78rem;font-weight:800}.ai-status--correct{color:#166534;background:#dcfce7}.ai-status--needs_improvement{color:#92400e;background:#fef3c7}.ai-correction,.ai-practice{margin:.65rem 0}.ai-feedback-list{margin:.6rem 0;padding-left:1.2rem}.ai-feedback-list li{margin-bottom:.35rem}
.nav-ai-wrapper{align-items:center;display:inline-flex;position:relative}.nav-ai-panel-floating{right:20px;top:calc(var(--navbar-h) + var(--navbar-hb) + 12px);z-index:5500;max-width:calc(100vw - 16px);max-height:calc(100dvh - 16px);position:fixed}.nav-ai-resize-handle{z-index:3;color:#0f3d3a;cursor:ew-resize;touch-action:none;background:#fff;border:1px solid #0f3d3a40;border-radius:999px;place-items:center;width:28px;height:48px;padding:0;display:grid;position:absolute;top:50%;left:-13px;transform:translateY(-50%);box-shadow:0 5px 14px #0f172a2e}.nav-ai-resize-handle svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:20px;height:20px}.nav-ai-resize-handle:hover,.nav-ai-resize-handle:focus-visible{color:#fff;background:#0f766e;outline:3px solid #0f766e33}.nav-ai-panel-floating[data-size=compact] .nav-ai-resize-handle{display:none}body.is-resizing-ai-chat,body.is-resizing-ai-chat *{cursor:ew-resize!important;-webkit-user-select:none!important;user-select:none!important}.nav-ai-panel-floating.is-dragged{top:auto;right:auto}.nav-ai-panel-floating:not(.is-dragged) .frenchgeni-ai-card{height:min(620px, calc(100vh - (var(--navbar-h) + var(--navbar-hb) + 24px)));height:min(620px, calc(100dvh - (var(--navbar-h) + var(--navbar-hb) + 24px)))}.nav-ai-panel-floating.is-hidden{opacity:0;pointer-events:none;visibility:hidden}.nav-ai-panel-floating[data-size=compact] .frenchgeni-ai-card{width:min(320px,90vw);height:min(430px,100dvh - 24px);animation:.2s ai-card-fade}.nav-ai-floating-launcher{font-family:var(--font-display);z-index:5500;background:var(--dark-blue);color:#fff;letter-spacing:.02em;cursor:pointer;border:none;border-radius:50%;place-items:center;width:62px;height:62px;font-size:1.25rem;font-weight:900;line-height:1;animation:.2s ai-card-fade;display:grid;position:fixed;bottom:60px;right:20px}.nav-ai-floating-launcher__label{display:block;transform:translateY(-1px)}.nav-ai-floating-launcher:hover{filter:brightness(1.05);color:var(--success);transform:translateY(-1px);box-shadow:0 12px 24px #16a34a59}.frenchgeni-ai-card{width:min(var(--ai-card-width,390px), calc(100vw - 16px));color:#0f172a;background:linear-gradient(145deg,#bfffe6,#f8ffff);border:1px solid #0f766e38;border-radius:22px;flex-direction:column;height:min(620px,100dvh - 24px);padding:.9rem;animation:.2s ai-card-fade;display:flex;overflow:hidden;box-shadow:0 22px 45px #0f172a29;container-type:inline-size}@keyframes ai-card-fade{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.frenchgeni-ai-card__heading{align-items:center;gap:.6rem;min-width:0;display:flex}.tooltip-right,.tooltip-bottom{position:relative}[data-tooltip]:after{content:attr(data-tooltip);background-color:var(--bg-soft);color:#000;white-space:nowrap;opacity:0;pointer-events:none;visibility:hidden;z-index:100;border-radius:12px;padding:.4rem .8rem;font-family:inherit;font-size:.78rem;font-weight:500;transition:opacity .15s,transform .15s;position:absolute;box-shadow:0 4px 12px #00000014}[data-tooltip]:before{content:"";opacity:0;pointer-events:none;visibility:hidden;z-index:100;border:6px solid #0000;transition:opacity .15s,transform .15s;position:absolute}[data-tooltip]:hover:after,[data-tooltip]:hover:before{opacity:1;visibility:visible}.tooltip-right:after{top:50%;left:calc(100% + 10px);transform:translateY(-50%)translate(-5px)}.tooltip-right:before{border-right-color:#e5e7eb;top:50%;left:calc(100% + 4px);transform:translateY(-50%)}.tooltip-right:hover:after{transform:translateY(-50%)translate(0)}.tooltip-bottom:after{top:calc(100% + 10px);left:50%;transform:translate(-50%)translateY(-5px)}.tooltip-bottom:before{border-bottom-color:#e5e7eb;top:calc(100% + 4px);left:50%;transform:translate(-50%)}.tooltip-bottom:hover:after{transform:translate(-50%)translateY(0)}.frenchgeni-ai-card__orb{background:radial-gradient(circle at 35% 30%,#22d3ee,#14b8a6 45%,#ca8a04);border-radius:50%;flex:0 0 35px;width:35px;height:35px;transition:all .2s;display:block}.nav-ai-panel-floating[data-size=compact] .frenchgeni-ai-card__title{color:#0f172a;margin:0;font-size:1.25rem;font-weight:700}.nav-ai-panel-floating[data-size=compact] .frenchgeni-ai-card__orb-large{flex:0 0 70px;width:70px;height:70px}.nav-ai-panel-floating[data-size=compact] .frenchgeni-ai-card__subtitle{color:#64748b;margin:.4rem 0 0;font-size:.88rem;font-style:italic}.frenchgeni-ai-card__actions{align-items:center;gap:.4rem;display:inline-flex}.nav-ai-panel-floating .frenchgeni-ai-card__chip{color:#0b3d39;cursor:pointer;background:linear-gradient(145deg,#ecfeff,#d1fae5);border:1px solid #14b8a659;border-radius:999px;padding:.35rem .8rem;font-size:.74rem;font-weight:800;transition:transform .15s,box-shadow .15s,filter .15s;box-shadow:0 5px 14px #14b8a62e}.frenchgeni-ai-card__chip:hover:not(:disabled){filter:brightness(1.03);transform:translateY(-1px);box-shadow:0 8px 18px #14b8a63d}.frenchgeni-ai-card__chip--new-chat{margin-top:.15rem}.frenchgeni-ai-card__icon-btn{color:#0f172a;cursor:pointer;background:#e2f9f6;border:none;border-radius:50%;place-items:center;width:30px;height:30px;font-size:.9rem;font-weight:800;transition:transform .15s,filter .15s,box-shadow .15s;display:grid}.frenchgeni-ai-card__icon-btn:hover:not(:disabled){transform:translateY(-1px)}.frenchgeni-ai-card__icon-btn--accent{color:#0b3d39;background:linear-gradient(145deg,#d9fbf5,#c4f1f9);box-shadow:0 6px 14px #0f766e33}.frenchgeni-ai-card__icon-btn--danger{color:#991b1b;background:linear-gradient(145deg,#fee2e2,#fecaca);box-shadow:0 6px 14px #b91c1c33}.frenchgeni-ai-card__chip:disabled,.frenchgeni-ai-card__icon-btn:disabled{opacity:.55;cursor:not-allowed}.frenchgeni-ai-card__messages{scrollbar-width:none;flex-direction:column;flex:1;gap:.75rem;width:100%;min-width:0;padding:.75rem .2rem;display:flex;overflow:hidden auto}.frenchgeni-ai-card__messages::-webkit-scrollbar{display:none}.frenchgeni-ai-card__empty{color:#64748b;text-align:center;background:#ffffff94;border:1px solid #64748b2e;border-radius:20px;margin:auto 0;padding:1rem;font-size:.9rem}.frenchgeni-ai-card .chat-bubble{overflow-wrap:anywhere;word-break:break-word;border-radius:18px;min-width:0;max-width:88%;padding:.82rem .95rem;font-size:.92rem;line-height:1.55}.frenchgeni-ai-card .chat-bubble--ai:has(.formatted-table-wrap){width:88%}.frenchgeni-ai-card .chat-bubble .formatted-table-wrap,.frenchgeni-ai-card .chat-bubble .formatted-list,.frenchgeni-ai-card .chat-bubble .formatted-quote{min-width:0;max-width:100%}.frenchgeni-ai-card .chat-bubble__line{margin:0}.frenchgeni-ai-card .chat-bubble__line+.chat-bubble__line{margin-top:.45rem}.frenchgeni-ai-card .chat-bubble--user{color:#fff;background:#0f766e;border-bottom-right-radius:6px;align-self:flex-end}.frenchgeni-ai-card .chat-bubble--ai{color:#0f172a;background:#ffffffd1;border-bottom-left-radius:6px;align-self:flex-start}.frenchgeni-ai-card__error{color:#b91c1c;margin:0;font-size:.88rem}.frenchgeni-ai-card__composer{flex-shrink:0;align-items:flex-end;gap:8px;display:flex}.frenchgeni-ai-card__input{resize:none;background:var(--bg-elevated);min-height:44px;max-height:120px;font:inherit;color:inherit;border:1px solid #64748b38;border-radius:20px;flex:1;padding:.8rem 1rem;overflow-y:hidden}.frenchgeni-ai-card__input:focus{border-color:#14b8a6;outline:none;box-shadow:0 0 0 3px #14b8a62e}.frenchgeni-ai-card__button{color:#fff;cursor:pointer;background:#0f766e;border:none;border-radius:50%;flex-shrink:0;place-items:center;width:35px;height:35px;margin-bottom:6px;font-weight:900;display:grid}.frenchgeni-ai-card__button:hover:not(:disabled){background:#0c5e5a}.frenchgeni-ai-card__button:disabled{opacity:.45;cursor:not-allowed}@media (max-width:768px){.nav-ai-panel-floating{right:10px;top:calc(var(--navbar-h) + var(--navbar-hb) + 8px);max-height:calc(100dvh - 16px)}.nav-ai-floating-launcher{right:10px;bottom:calc(16px + env(safe-area-inset-bottom));width:58px;height:58px}.frenchgeni-ai-card{width:min(95vw,390px);height:min(78dvh,100dvh - 20px);padding:.8rem;padding-bottom:calc(1rem + env(safe-area-inset-bottom));border-radius:18px}.nav-ai-panel-floating:not(.is-dragged) .frenchgeni-ai-card{height:min(78vh, calc(100vh - (var(--navbar-h) + var(--navbar-hb) + 16px)));height:min(78dvh, calc(100dvh - (var(--navbar-h) + var(--navbar-hb) + 16px)))}.nav-ai-panel-floating[data-size=compact] .frenchgeni-ai-card{width:min(88vw,320px);height:min(62dvh,100dvh - 20px)}.frenchgeni-ai-card__header{cursor:move}}.frenchgeni-ai-card__header{--ai-control-size:clamp(28px, 8cqi, 40px);grid-template-columns:var(--ai-control-size) minmax(0, 1fr) auto;cursor:move;-webkit-user-select:none;user-select:none;touch-action:none;flex-shrink:0;align-items:center;gap:clamp(.3rem,2cqi,.7rem);min-height:clamp(52px,16cqi,72px);padding:clamp(.5rem,4cqi,1rem);display:grid;position:relative}.frenchgeni-ai-card__header-title{color:#0f3d3a;text-align:center;text-overflow:ellipsis;white-space:nowrap;pointer-events:none;min-width:0;font-size:clamp(.84rem,4cqi,1.05rem);font-weight:900;line-height:1.1;overflow:hidden}.frenchgeni-ai-card__mobile-grabber,.frenchgeni-ai-card__mobile-back-icon{display:none}.frenchgeni-ai-card__edit-btn{width:var(--ai-control-size);height:var(--ai-control-size);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;padding:0;transition:transform .15s;display:flex}.frenchgeni-ai-card__header-spacer{width:var(--ai-control-size);height:var(--ai-control-size)}.frenchgeni-ai-card__edit-btn:hover{transform:scale(1.05)}.frenchgeni-ai-card__window-controls{background:#34d399;border:1px solid #064e3b29;border-radius:999px;align-items:center;gap:clamp(2px,1cqi,5px);padding:clamp(2px,1.2cqi,5px);display:flex}.frenchgeni-ai-card__window-controls button{width:var(--ai-control-size);height:var(--ai-control-size);color:#073f39;cursor:pointer;opacity:1;background:#ffffff2e;border:none;border-radius:50%;justify-content:center;align-items:center;padding:0;transition:color .15s,background .15s,transform .15s;display:flex}.frenchgeni-ai-card__window-controls button:hover{color:#064e3b;background:#ffffffb8;transform:translateY(-1px)}.frenchgeni-ai-card__window-controls button:focus-visible{background:#fff;outline:3px solid #0f766e47}.frenchgeni-ai-card__window-controls .ai-control--close:hover,.frenchgeni-ai-card__window-controls .ai-control--close:focus-visible{color:#991b1b;background:#fee2e2}.frenchgeni-ai-card__window-controls .ai-control svg{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;width:clamp(16px,5cqi,22px);height:clamp(16px,5cqi,22px)}.frenchgeni-ai-card__window-controls button:disabled{opacity:.35;cursor:default}.custom-icon{object-fit:contain;width:24px;height:24px}.custom-icon-small{object-fit:contain;width:14px;height:14px}.frenchgeni-ai-card__empty-state{text-align:center;flex-direction:column;justify-content:center;align-items:center;height:70%;padding:1rem;display:flex}.frenchgeni-ai-card__orb-large{background:radial-gradient(circle at 35% 30%,#22d3ee,#14b8a6 45%,#ca8a04);border-radius:50%;flex:0 0 85px;width:85px;height:85px;transition:all .2s;display:block}.frenchgeni-ai-card__title{color:#0f172a;margin:0;font-size:1.4rem;font-weight:700}.frenchgeni-ai-card__subtitle{color:#64748b;margin:.5rem 0 0;font-size:1rem;font-style:italic}@media (max-width:768px){.nav-ai-panel-floating{width:100dvw;max-width:none;max-height:none;inset:0!important}.nav-ai-panel-floating .frenchgeni-ai-card,.nav-ai-panel-floating:not(.is-dragged) .frenchgeni-ai-card,.nav-ai-panel-floating[data-size=compact] .frenchgeni-ai-card{width:100dvw;max-width:none;height:100dvh;max-height:none;padding:.75rem;padding-top:env(safe-area-inset-top);padding-bottom:calc(.7rem + env(safe-area-inset-bottom));box-shadow:none;border:0;border-radius:0}.frenchgeni-ai-card__header{--ai-control-size:30px;cursor:default;min-height:58px;padding:.85rem .35rem .55rem;display:flex}.frenchgeni-ai-card__mobile-grabber{background:#0f3d3a4d;border-radius:999px;width:38px;height:4px;display:block;position:absolute;top:4px;left:50%;transform:translate(-50%)}.frenchgeni-ai-card__header-title{max-width:124px;font-size:.96rem;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.frenchgeni-ai-card__window-controls{gap:.3rem;padding:.3rem .4rem}.frenchgeni-ai-card__window-controls button{width:30px;height:30px}.frenchgeni-ai-card__window-controls .ai-control--compact,.nav-ai-resize-handle{display:none!important}.frenchgeni-ai-card [data-tooltip]:before,.frenchgeni-ai-card [data-tooltip]:after{display:none}.frenchgeni-ai-card__messages{overscroll-behavior:contain;gap:.65rem;padding:.75rem .15rem 1rem}.frenchgeni-ai-card .chat-bubble{border-radius:17px;max-width:90%;padding:.75rem .85rem;font-size:1rem;line-height:1.5}.frenchgeni-ai-card .chat-bubble--ai:has(.formatted-table-wrap){width:100%;max-width:100%}.frenchgeni-ai-card__composer{background:#f8ffffdb;border-top:1px solid #0f766e24;gap:.55rem;padding-top:.7rem}.frenchgeni-ai-card__input{border-radius:18px;min-height:48px;padding:.78rem .95rem;font-size:16px;line-height:1.4}.frenchgeni-ai-card__button{width:44px;height:44px;margin-bottom:2px}.frenchgeni-ai-card__empty-state{height:100%;padding-bottom:15vh}.nav-ai-floating-launcher{place-items:center;display:grid}}
.page--level-test{--level-test-blue:#102786;--level-test-mint:#35d8ad;--level-test-ink:var(--text);--level-test-soft:var(--bg-elevated);width:100%;max-width:none}.page--level-test .level-test-hero{max-width:920px;margin-bottom:1.5rem}.level-test-shell{border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-soft);width:min(920px,100% - 2rem);margin:0 auto 3rem;padding:clamp(1.15rem,2.5vw,1.5rem);box-shadow:0 1px #ffffff0a}.level-test-session-layout{grid-template-columns:minmax(0,920px) 10.5rem;align-items:start;gap:1rem;width:min(1100px,100% - 2rem);margin:0 auto 3rem;display:grid}.level-test-session-layout .level-test-shell--session{width:100%;box-shadow:none;background:0 0;border:0;border-radius:0;margin:0;padding:0}.level-test-intro{text-align:center}.level-test-intro>p{max-width:690px;color:var(--text-muted);margin:1.4rem auto;line-height:1.7}.level-test-intro .level-test-preview-note{color:#7a4d00;margin:.8rem auto 0;font-size:.82rem;font-weight:750}.level-test-intro__facts{flex-wrap:wrap;justify-content:center;gap:.65rem;display:flex}.level-test-intro__facts span{background:var(--level-test-soft);color:var(--level-test-blue);border-radius:999px;padding:.55rem .85rem;font-size:.86rem;font-weight:700}.level-test-progress{margin-bottom:1rem;padding-inline:.15rem}.level-test-progress__meta{color:var(--text-muted);justify-content:space-between;gap:1rem;margin-bottom:.55rem;font-size:.88rem;font-weight:700;display:flex}.level-test-timer{border:1px solid var(--border);background:var(--bg-elevated);min-width:5.4rem;color:var(--dark-blue);font-variant-numeric:tabular-nums;border-radius:999px;justify-content:center;align-items:center;gap:.3rem;margin-left:auto;padding:.28rem .55rem;display:inline-flex}.level-test-timer__icon{flex:none;width:1rem;height:1rem}.level-test-timer.is-warning{color:#8a5105;background:#fff8eb;border-color:#e5bd71}.level-test-timer.is-critical{border-color:color-mix(in srgb, var(--danger) 55%, var(--border));background:color-mix(in srgb, var(--danger) 10%, var(--bg-elevated));color:#a3293b;animation:1s ease-in-out infinite level-test-timer-pulse}@keyframes level-test-timer-pulse{50%{transform:scale(1.04)}}.level-test-progress__track{background:#e5e7eb;border-radius:999px;height:14px;margin-bottom:0;overflow:hidden}.level-test-progress__track span{border-radius:inherit;background:var(--dark-blue);height:100%;transition:width .26s;display:block}.level-test-progress--complete{margin-bottom:1.4rem}.level-test-progress--complete .level-test-progress__track span{background:var(--success)}.level-test-question__prompt{color:var(--level-test-ink);margin:0 0 .85rem;font-size:1rem;font-weight:500;line-height:1.55}.level-test-question__stimulus{border-left-color:color-mix(in srgb, var(--accent) 70%, transparent);border-radius:0 var(--radius-sm) var(--radius-sm) 0;background:var(--bg-elevated);color:var(--text-muted);margin:0 0 1rem;padding:.85rem 1rem;font-size:.95rem;font-style:normal;line-height:1.75}.level-test-question__stimulus.is-read-aloud{border-left-color:color-mix(in srgb, var(--accent) 70%, transparent);background:var(--bg-elevated);color:var(--level-test-ink);text-align:center;font-size:clamp(1.25rem,4vw,1.8rem)}.level-test-options{gap:.75rem;display:grid}.level-test-option{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg-elevated);color:var(--level-test-ink);cursor:pointer;align-items:flex-start;gap:.55rem;padding:.55rem .65rem;transition:border-color .16s,background .16s,transform .16s;display:flex}.level-test-option:hover{border-color:var(--border-strong);transform:none}.level-test-option.is-selected{border-color:color-mix(in srgb, var(--accent-strong) 65%, var(--border));background:color-mix(in srgb, var(--accent) 12%, var(--bg-elevated))}.level-test-option input{width:1.15rem;height:1.15rem;accent-color:var(--level-test-blue);margin-top:.15rem}.level-test-option span{line-height:1.5}.level-test-question__input{width:100%}.level-test-writing__count{color:var(--text-muted);text-align:right;margin:.55rem 0 0;font-size:.88rem}.level-test-audio{color:var(--text-muted);background:0 0;align-items:center;gap:.8rem;margin:0 0 1.35rem;padding:.3rem 0 .6rem .3rem;font-size:.84rem;font-weight:700;display:flex}.level-test-audio audio{display:none}.level-test-audio__button{padding:0}.level-test-audio__button:disabled{cursor:not-allowed;opacity:.58}.level-test-audio__status{line-height:1.35;display:grid}.level-test-audio__status strong{color:var(--text);font-size:.92rem}.level-test-recorder{border:1px dashed var(--border-strong);border-radius:var(--radius-sm);background:var(--bg-elevated);text-align:center;padding:1rem}.level-test-recorder__status{color:#24584a;justify-content:center;align-items:center;gap:.55rem;min-height:2rem;font-weight:850;display:flex}.level-test-recorder__status.is-recording{color:#b42318}.level-test-recorder__pulse{background:#ef4444;border-radius:50%;width:.7rem;height:.7rem;animation:1.25s infinite level-test-pulse;box-shadow:0 0 #ef444473}@keyframes level-test-pulse{70%{box-shadow:0 0 0 9px #ef444400}to{box-shadow:0 0 #ef444400}}.level-test-recorder__actions{flex-wrap:wrap;justify-content:center;align-items:center;gap:1rem;margin-top:1rem;display:flex}.level-test-recorder .action-mic-card.level-test-recorder__mic{background:var(--dark-blue);width:66px;height:66px;padding:0;box-shadow:0 5px #041044;border-radius:18px!important}.level-test-recorder .action-mic-card.level-test-recorder__mic.is-listening{width:140px;transform:translateY(3px);box-shadow:0 2px #041044;border-radius:33px!important}.level-test-recorder .action-mic-card.level-test-recorder__mic:disabled{cursor:default;opacity:.82}.level-test-recorder .action-mic-icon{color:#fff;width:34px;height:34px}.level-test-recorder .live-wave__bar{background:#fff}.level-test-question-map{border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-soft);padding:.9rem;position:sticky;top:1rem;box-shadow:0 1px #ffffff0a}.level-test-question-map__heading{color:var(--text);justify-content:space-between;align-items:baseline;gap:.5rem;margin-bottom:.75rem;font-size:.82rem;display:flex}.level-test-question-map__heading span{color:var(--text-muted);font-weight:800}.level-test-question-map ol{grid-template-columns:repeat(3,minmax(0,1fr));gap:.4rem;margin:0;padding:0;list-style:none;display:grid}.level-test-question-map button{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg-elevated);width:100%;min-height:2.15rem;color:var(--text-muted);font:inherit;cursor:pointer;place-items:center;padding:0;font-size:.78rem;font-weight:800;display:grid}.level-test-question-map button:hover:not(:disabled){border-color:var(--border-strong)}.level-test-question-map button.is-answered{border-color:color-mix(in srgb, var(--success) 55%, var(--border));background:color-mix(in srgb, var(--success) 12%, var(--bg-elevated));color:#16634d}.level-test-question-map button.is-skipped{color:#8a5105;background:#fff8eb;border-color:#e5bd71}.level-test-question-map button.is-current{outline:3px solid color-mix(in srgb, var(--dark-blue) 22%, transparent);border-color:var(--dark-blue);color:var(--dark-blue)}.level-test-question-map button:disabled{cursor:not-allowed;opacity:.7}.level-test-question-map__legend{color:var(--text-muted);gap:.25rem;margin-top:.75rem;font-size:.67rem;display:grid}.level-test-question-map__legend span{align-items:center;gap:.35rem;display:flex}.level-test-question-map__legend i{background:var(--success);border-radius:50%;width:.55rem;height:.55rem}.level-test-question-map__legend i.is-skipped{background:#e5a82d}.level-test-recorder__note,.level-test-recorder__privacy{color:var(--text-muted);margin:.8rem 0 0;font-size:.83rem}.level-test-recorder__note{color:#a15c00}.level-test-navigation,.level-test-review__actions{justify-content:space-between;align-items:center;gap:.75rem;margin-top:2rem;display:flex}.level-test-skip,.level-test-exit{color:var(--text-muted);text-underline-offset:3px;cursor:pointer;background:0 0;border:0;font-weight:750;text-decoration:underline}.level-test-skip:disabled,.level-test-exit:disabled{cursor:not-allowed;opacity:.5}.level-test-exit{margin:1.25rem auto 0;display:block}.level-test-review h2,.level-test-prepared h2{color:var(--level-test-ink);margin-top:0}.level-test-timeout-notice{border-radius:var(--radius-sm);color:#714807;background:#fff8eb;border:1px solid #e5bd71;padding:.75rem .9rem}.level-test-review__grid{grid-template-columns:repeat(8,minmax(0,1fr));gap:.55rem;margin-top:1.4rem;display:grid}.level-test-review__item{min-height:58px;color:var(--level-test-ink);cursor:pointer;background:#f8f9fc;border:1px solid #d8dce8;border-radius:12px;place-items:center;gap:.15rem;font-weight:850;display:grid}.level-test-review__item span{text-transform:uppercase;font-size:.58rem;font-weight:700}.level-test-review__item.is-answered{color:#16634d;background:#ecfdf7;border-color:#7bd6bc}.level-test-review__item.is-skipped{color:#8a5105;background:#fff8eb;border-color:#f2c98d}.level-test-prepared{text-align:center}.level-test-prepared__icon{color:#15803d;background:#dcfce7;border-radius:50%;place-items:center;width:72px;height:72px;margin:0 auto 1rem;font-size:2rem;font-weight:900;display:grid}.level-test-prepared__note{max-width:620px;color:var(--text-muted);margin:1rem auto 1.5rem;line-height:1.65}.level-test-results{gap:1.25rem;display:grid}.level-test-results__headline{align-items:center;gap:1.25rem;display:flex}.level-test-results__headline h2,.level-test-results__headline p{margin:.2rem 0}.level-test-results__level{color:#fff;background:linear-gradient(145deg,#102780,#22b99a);border-radius:50%;flex:0 0 6.5rem;place-items:center;width:6.5rem;height:6.5rem;font-size:2rem;font-weight:900;display:grid;box-shadow:0 12px 30px #10278033}.level-test-results__eyebrow{color:#214293;letter-spacing:.09em;font-size:.78rem;font-weight:900}.level-test-results__notice{color:#664b09;background:#fff8df;border:1px solid #e1b44d;border-radius:.8rem;padding:.9rem 1rem}.level-test-results__raw,.level-test-skill-results{grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem;display:grid}.level-test-results__raw span,.level-test-skill-results>div{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg-elevated);text-transform:capitalize;gap:.2rem;padding:.9rem;display:grid}.level-test-results__raw strong,.level-test-skill-results strong{color:#102780;font-size:1.25rem}.level-test-results__policy,.level-test-results__calibration{color:#526078;margin:0}.level-test-results__calibration{font-size:.88rem}.level-test-gates{gap:.65rem;display:grid}.level-test-gate{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg-elevated);border-left:5px solid #9aa6bc;overflow:hidden}.level-test-gate.is-passed{border-left-color:#15956f}.level-test-gate.is-failed{border-left-color:#d04b58}.level-test-gate.is-pending{border-left-color:#d6a327}.level-test-gate summary{cursor:pointer;text-transform:capitalize;justify-content:space-between;align-items:center;padding:.85rem 1rem;display:flex}.level-test-gate summary span{color:#102780;font-size:1.1rem;font-weight:900}.level-test-gate ul{gap:.45rem;margin:0;padding:0 1rem 1rem;list-style:none;display:grid}.level-test-gate li{color:#526078;justify-content:space-between;gap:1rem;font-size:.92rem;display:flex}.level-test-gate li.is-failed{color:#a3293b}.level-test-gate li.is-pending{color:#7c5c09}.level-test-productive-results{grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;display:grid}.level-test-productive-result{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg-elevated);padding:.8rem .9rem}.level-test-productive-result summary{cursor:pointer;text-transform:capitalize;justify-content:space-between;gap:1rem;display:flex}.level-test-productive-result p{color:#526078;margin:.7rem 0 0;font-size:.9rem}.level-test-productive-result dl{gap:.25rem;margin:.75rem 0 0;display:grid}.level-test-productive-result dl div{justify-content:space-between;gap:1rem;display:flex}.level-test-productive-result dt{text-transform:capitalize}.level-test-productive-result dd{margin:0;font-weight:800}@media (max-width:640px){.level-test-results__headline{align-items:flex-start}.level-test-results__level{flex-basis:4.75rem;width:4.75rem;height:4.75rem;font-size:1.5rem}.level-test-results__raw,.level-test-skill-results{grid-template-columns:1fr 1fr}.level-test-productive-results{grid-template-columns:1fr}.level-test-gate li{gap:.15rem;display:grid}}@media (max-width:700px){.page--level-test .level-test-hero{margin-bottom:.75rem}.level-test-shell{border-radius:20px;width:calc(100% - 1rem);margin-bottom:1.5rem;padding:1rem}.level-test-session-layout{flex-direction:column;width:calc(100% - 1rem);margin-bottom:1.5rem;display:flex}.level-test-session-layout .level-test-shell--session{order:2}.level-test-question-map{border-radius:var(--radius-sm);order:1;width:100%;padding:.75rem;position:static}.level-test-question-map ol{scroll-snap-type:x proximity;scrollbar-width:thin;gap:.4rem;padding:.1rem 0 .35rem;display:flex;overflow-x:auto}.level-test-question-map li{scroll-snap-align:center;flex:0 0 2.35rem}.level-test-question-map__legend{display:none}.level-test-progress__meta{grid-template-columns:1fr auto;display:grid}.level-test-progress__meta>span:nth-child(2){grid-area:2/1}.level-test-timer{grid-area:1/2/span 2;align-self:center}.level-test-intro__facts{display:grid}.level-test-question__stimulus{padding:1rem}.level-test-audio{text-align:left;flex-direction:row;align-items:center}.level-test-navigation{grid-template-columns:1fr .75fr 1fr;display:grid}.level-test-navigation .btn{width:100%;padding-inline:.6rem}.level-test-review__grid{grid-template-columns:repeat(4,minmax(0,1fr))}.level-test-review__actions{flex-direction:column-reverse;align-items:stretch}.level-test-review__actions .btn{width:100%}}.page--level-test-active{min-height:calc(100dvh - 56px)}.page--level-test-active .level-test-navigation{margin-top:1rem}.page--level-test-active .level-test-question-map{top:1rem}@media (prefers-reduced-motion:reduce){.level-test-progress__track span,.level-test-option,.level-test-recorder__pulse,.level-test-recorder .action-mic-card.level-test-recorder__mic,.level-test-timer.is-critical{transition:none;animation:none}}
.about-page{width:100%;color:var(--text);gap:clamp(1rem,2.5vw,1.5rem);display:grid}.about-hero-card{background:#07135c;border-radius:28px;grid-template-columns:.9fr 1.1fr;width:min(100%,1180px);min-height:clamp(420px,68vh,620px);margin:0 auto;display:grid;overflow:hidden;box-shadow:0 22px 55px #07135c38}.about-hero-card__text{z-index:3;color:#fff;background:linear-gradient(90deg,#07135c 0% 78%,#07135cad 100%);flex-direction:column;justify-content:center;padding:clamp(1.5rem,4vh,3rem);display:flex;position:relative}.about-label{color:var(--accent-strong);letter-spacing:.09em;text-transform:uppercase;margin:0 0 .65rem;font-size:.78rem;font-weight:800}.about-hero-card__text h1,.about-section-heading h2,.about-tutoring h2,.about-youtube h2,.about-contact-card h2{font-family:var(--font-display);margin:0;line-height:1.05}.about-hero-card__text h1{max-width:530px;font-size:clamp(2.35rem,5.8vh,4.5rem)}.about-hero-card__text>p:not(.about-label){color:#ffffffe0;max-width:520px;margin:clamp(.8rem,2vh,1.1rem) 0 0;font-size:clamp(1rem,2vh,1.15rem);line-height:1.65}.about-hero-card__buttons{flex-wrap:wrap;gap:.8rem;margin-top:clamp(1rem,3vh,1.5rem);display:flex}.about-video-btn{color:#fff;background:#ffffff14;border:1px solid #ffffff59;border-radius:999px;justify-content:center;align-items:center;padding:.65rem 1.1rem;font-weight:700;text-decoration:none;transition:border-color .2s,color .2s,background .2s;display:inline-flex}.about-video-btn:hover,.about-video-btn:focus-visible{border-color:var(--accent-strong);color:#fff;background:#ffffff24}.about-hero-card__images{min-height:0;position:relative;overflow:hidden}.about-hero-card__images:after{content:"";background:linear-gradient(90deg,#07135c94,#07135c0f);position:absolute;inset:0}.about-hero-card__images img{object-fit:cover;width:100%;height:100%;display:block}.about-story,.about-tutoring,.about-youtube,.about-contact-card{border-radius:28px;padding:clamp(1.5rem,4vw,2.5rem)}.about-story{border:1px solid var(--border);background:var(--bg-elevated);grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:clamp(1.5rem,5vw,4rem);display:grid}.about-section-heading h2,.about-tutoring h2,.about-youtube h2,.about-contact-card h2{font-size:clamp(1.65rem,3.5vw,2.45rem)}.about-story__copy{color:var(--text-muted);gap:1rem;line-height:1.7;display:grid}.about-story__copy p,.about-tutoring p:not(.about-label),.about-youtube p:not(.about-label),.about-contact-card p:not(.about-label){margin:0}.about-principles{padding:clamp(1.5rem,3vw,2.5rem) 0}.about-section-heading--center{text-align:center;max-width:680px;margin:0 auto 1.35rem}.about-principles__grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;margin:0;padding:0;list-style:none;display:grid}.about-principle{min-height:100%;padding:1.3rem}.about-principle h3{font-family:var(--font-display);margin:0;font-size:1.15rem}.about-principle p{color:var(--text-muted);margin:.65rem 0 0;font-size:.93rem;line-height:1.6}.about-tutoring,.about-contact-card{color:#fff;justify-content:space-between;align-items:center;gap:2rem;display:flex;box-shadow:0 18px 45px #07135c29}.about-tutoring{background:linear-gradient(135deg,#07135c,#0b2a63 60%,#0f766e)}.about-tutoring>div,.about-contact-card>div{max-width:720px}.about-tutoring p:not(.about-label),.about-contact-card p:not(.about-label){color:#ffffffd6;margin-top:.8rem;line-height:1.7}.about-youtube{border:1px solid color-mix(in srgb, red 35%, var(--border));background:color-mix(in srgb, red 5%, var(--bg-elevated));justify-content:space-between;align-items:center;gap:1.5rem;display:flex}.about-youtube>div{max-width:650px}.about-youtube p:not(.about-label){color:var(--text-muted);margin-top:.75rem;line-height:1.6}.about-youtube__link{color:#fff;background:red;border-radius:999px;flex:none;align-items:center;gap:.55rem;padding:.75rem 1rem;font-weight:800;text-decoration:none;display:inline-flex}.about-youtube__link:hover,.about-youtube__link:focus-visible{color:#fff;background:#c00}.about-youtube__link svg{fill:currentColor;width:1.35rem;height:1.35rem}.about-contact-card{background:linear-gradient(135deg,#07135c,#0b2a63 55%,#0f766e)}.about-page .feedback-prompt{margin:0}@media (max-width:900px){.about-hero-card{grid-template-rows:1fr;grid-template-columns:1fr;min-height:clamp(460px,72svh,560px)}.about-hero-card__text,.about-hero-card__images{grid-area:1/1/-1/-1}.about-hero-card__text{z-index:2;text-align:center;background:linear-gradient(#07135c2e 0%,#07135c 92%);justify-content:flex-end;align-items:center;padding:clamp(1.5rem,6vw,2.25rem)}.about-hero-card__images:after{background:linear-gradient(#07135c33,#07135cdb)}.about-story,.about-principles__grid{grid-template-columns:1fr}.about-story{gap:1.25rem}}@media (max-width:640px){.about-hero-card,.about-story,.about-tutoring,.about-youtube,.about-contact-card{border-radius:20px}.about-hero-card{min-height:0}.about-hero-card__text{padding:2rem 1.15rem}.about-hero-card__text h1{font-size:clamp(2rem,10vw,2.5rem)}.about-hero-card__buttons,.about-tutoring,.about-youtube,.about-contact-card{flex-direction:column;align-items:stretch}.about-hero-card__buttons .btn,.about-video-btn,.about-tutoring .btn,.about-youtube__link,.about-contact-card .btn{width:100%}.about-youtube__link{justify-content:center}}
