/* Askaci v50 — premium dark mobile redesign */
:root{
  --bg:#050713; --bg-2:#080B18; --surface:rgba(18,22,38,.82); --surface-2:rgba(28,34,56,.72);
  --glass:rgba(255,255,255,.065); --line:rgba(255,255,255,.10); --line-strong:rgba(255,255,255,.18);
  --text:#F7F8FF; --text-soft:#C2C7D6; --muted:#7F879B;
  --navy:#F7F8FF; --blue:#7B5CFF; --blue-strong:#5A3DF0; --blue-soft:rgba(123,92,255,.18); --blue-tint:rgba(123,92,255,.10);
  --gold:#FFD21E; --gold-2:#F5B700; --gold-soft:rgba(255,210,30,.16);
  --good:#35D399; --good-bg:rgba(53,211,153,.12); --warn:#FFD166; --warn-bg:rgba(255,209,102,.12); --bad:#FF5C7A; --bad-bg:rgba(255,92,122,.12);
  --r-xs:10px; --r-sm:16px; --r:20px; --r-lg:26px; --r-xl:32px; --pill:999px; --safe-b:env(safe-area-inset-bottom); --nav-h:82px;
  --shadow-sm:0 4px 14px rgba(0,0,0,.22); --shadow:0 18px 45px rgba(0,0,0,.32); --shadow-lg:0 30px 80px rgba(0,0,0,.48); --ring:0 0 0 4px rgba(255,210,30,.22);
  --primary:var(--blue); --border:var(--line); --card:var(--surface); --txt:var(--text); --mut:var(--muted); --cyan:var(--blue);
}
html{background:#050713!important;color-scheme:dark;}
body{margin:0!important;font-family:"Plus Jakarta Sans",ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif!important;color:var(--text)!important;background:radial-gradient(700px 420px at 78% -8%, rgba(123,92,255,.28), transparent 62%),radial-gradient(620px 380px at 4% 10%, rgba(255,210,30,.10), transparent 58%),radial-gradient(800px 540px at 50% 118%, rgba(40,80,255,.16), transparent 65%),linear-gradient(180deg,#050713 0%,#070A16 52%,#050713 100%)!important;background-attachment:fixed!important;min-height:100vh!important;padding-bottom:calc(var(--nav-h) + var(--safe-b) + 18px)!important;line-height:1.5;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;}
body::before{content:"";position:fixed;inset:0;pointer-events:none;background:linear-gradient(115deg, transparent 0%, rgba(255,255,255,.035) 38%, transparent 58%),radial-gradient(circle at 50% 0%, rgba(255,255,255,.06), transparent 42%);mix-blend-mode:screen;opacity:.65;z-index:-1;}
#app{width:min(640px,100%);margin:auto;padding:18px 16px 28px;box-sizing:border-box;}
h1,h2,h3,.section-title{color:var(--text)!important;letter-spacing:-.035em;font-weight:800;}
p,.muted,.fineprint,.page-head p,small{color:var(--text-soft);}
.brand-logo,.auth-logo,img[src*="askaci-logo"]{filter:brightness(0) invert(1) contrast(1.05);}
.nav{position:fixed!important;left:50%!important;right:auto!important;bottom:calc(10px + var(--safe-b))!important;top:auto!important;transform:translateX(-50%)!important;width:min(430px,calc(100% - 22px))!important;height:72px!important;display:grid!important;grid-template-columns:repeat(4,1fr)!important;gap:4px!important;padding:7px!important;border-radius:28px!important;z-index:999!important;background:rgba(10,13,24,.78)!important;border:1px solid rgba(255,255,255,.12)!important;box-shadow:0 20px 55px rgba(0,0,0,.48)!important;backdrop-filter:saturate(170%) blur(24px)!important;-webkit-backdrop-filter:saturate(170%) blur(24px)!important;box-sizing:border-box!important;}
.nav button{display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;gap:3px!important;border:0!important;border-radius:22px!important;background:transparent!important;color:rgba(255,255,255,.52)!important;font-size:11px!important;font-weight:800!important;padding:0!important;transition:transform .16s ease,color .16s ease,background .16s ease!important;min-width:0!important;}
.nav button.active{color:var(--gold)!important;background:linear-gradient(180deg,rgba(255,210,30,.16),rgba(255,210,30,.06))!important;}
.nav button.active .ic{filter:drop-shadow(0 0 10px rgba(255,210,30,.42));}
.nav .ic{font-size:21px!important;line-height:1!important;display:block!important;}
body.quiz-open .nav{display:none!important;}
.btn{display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:8px!important;min-height:46px!important;padding:12px 18px!important;border-radius:16px!important;font-weight:850!important;font-size:14px!important;color:var(--text)!important;background:rgba(255,255,255,.07)!important;border:1px solid var(--line)!important;box-shadow:var(--shadow-sm)!important;transition:transform .12s ease,box-shadow .16s ease,background .16s ease!important;}
.btn:active{transform:scale(.98)}.btn.primary{background:linear-gradient(180deg,var(--gold),var(--gold-2))!important;color:#101010!important;border-color:rgba(255,255,255,.22)!important;box-shadow:0 12px 30px rgba(255,210,30,.20)!important}.btn.wide{width:100%!important}.btn:disabled{opacity:.55!important}.card,.glass-panel,.glass-card,.stat-card,.feature,.quiz-type,.alpha-card,.phrase-new,.deck-new,.level-card,.plan-card,.billing-hero-card{background:rgba(255,255,255,.06)!important;border:1px solid var(--line)!important;border-radius:26px!important;box-shadow:var(--shadow)!important;color:var(--text)!important}.card b,.deck-new b,.quiz-type b,.alpha-card b,.phrase-new b,.level-card h2{color:var(--text)!important}.deck-new small,.quiz-type span,.level-card p,.phrase-new small,.phrase-new span{color:var(--text-soft)!important}input,select,textarea{background:rgba(255,255,255,.07)!important;color:var(--text)!important;border:1px solid var(--line)!important;border-radius:16px!important}input::placeholder,textarea::placeholder{color:rgba(255,255,255,.38)!important}.page-head{margin:4px 0 16px}.page-head h1{font-size:clamp(34px,9vw,48px);line-height:1.02}.page-head p{margin:8px 0 0;font-size:15px}.home-top{display:flex;align-items:center;justify-content:space-between;gap:14px;margin:6px 0 18px}.home-top .brand-logo{width:118px;height:auto;object-fit:contain}.home-avatar{width:42px;height:42px;display:grid;place-items:center;border-radius:16px;background:rgba(255,255,255,.08);color:var(--text);border:1px solid var(--line);font-weight:900;box-shadow:var(--shadow-sm)}.home-hero-card{position:relative;overflow:hidden;padding:22px;border-radius:32px;background:radial-gradient(420px 240px at 94% 8%, rgba(255,210,30,.12), transparent 62%),radial-gradient(360px 260px at 0% 100%, rgba(123,92,255,.24), transparent 64%),rgba(255,255,255,.055);border:1px solid rgba(255,255,255,.12);box-shadow:var(--shadow-lg)}.home-hero-card::after{content:"";position:absolute;inset:-1px;pointer-events:none;background:linear-gradient(115deg,transparent 15%,rgba(255,255,255,.08) 45%,transparent 68%);opacity:.5}.hello-line{margin:0 0 8px;color:var(--text);font-weight:900;font-size:22px}.home-hero-card h1{font-size:clamp(30px,8vw,44px);line-height:1.02;margin:0}.hero-sub{color:var(--text-soft);margin:8px 0 20px}.progress-focus{display:grid;grid-template-columns:112px 1fr;gap:18px;align-items:center;margin-top:10px}.progress-ring{--p:0;width:112px;height:112px;border-radius:50%;display:grid;place-items:center;background:radial-gradient(circle at center,#0B0E1B 0 58%,transparent 59%),conic-gradient(var(--blue) calc(var(--p) * 1%),rgba(255,255,255,.10) 0);box-shadow:inset 0 0 30px rgba(123,92,255,.16),0 10px 30px rgba(0,0,0,.28)}.progress-ring span{font-size:27px;font-weight:950;color:var(--text);letter-spacing:-.04em}.progress-copy strong{display:block;color:var(--text);font-size:20px;font-weight:950}.progress-copy small{display:block;color:var(--text-soft);margin-top:2px}.progress-copy em{display:block;color:var(--text-soft);font-style:normal;font-size:12px;text-align:right;margin-top:7px}.mini-progress{height:8px;overflow:hidden;border-radius:999px;background:rgba(255,255,255,.10);margin-top:12px}.mini-progress i{display:block;height:100%;border-radius:999px;background:linear-gradient(90deg,var(--blue),#9E8CFF)}.glass-card{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-top:14px;padding:16px}.glass-card b{display:block;color:var(--text)}.glass-card span{display:block;color:var(--text-soft);font-size:13px;margin-top:2px}.quick-actions{display:grid;grid-template-columns:1.1fr 1fr 1fr;gap:10px;margin:16px 0 22px}.action-card{min-height:104px;text-align:left;border-radius:24px;padding:15px;background:rgba(255,255,255,.065);border:1px solid var(--line);box-shadow:var(--shadow-sm);color:var(--text)}.action-card span{display:inline-grid;place-items:center;width:32px;height:32px;border-radius:12px;margin-bottom:10px;background:rgba(255,255,255,.08)}.action-card b{display:block;font-size:14px;color:var(--text)}.action-card small{display:block;color:var(--text-soft);font-size:11px;line-height:1.35;margin-top:3px}.primary-action{background:linear-gradient(180deg,rgba(255,210,30,.20),rgba(255,210,30,.07));border-color:rgba(255,210,30,.22)}.primary-action span{background:var(--gold);color:#111}.section-row{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:0 0 12px}.section-row h2{font-size:20px;margin:0}.section-row button{color:var(--gold);font-size:13px;font-weight:900;background:transparent;border:0}.recommended-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.lesson-tile{min-height:172px;text-align:left;padding:16px;border-radius:26px;color:#101426;background:linear-gradient(180deg,#DDEEFF,#C9DBF7);box-shadow:0 16px 34px rgba(0,0,0,.26);border:1px solid rgba(255,255,255,.30)}.lesson-tile:nth-child(2){background:linear-gradient(180deg,#E5F1FF,#CFDDF4)}.tile-emoji{display:block;font-size:34px;margin-bottom:14px}.lesson-tile small{display:block;color:rgba(16,20,38,.72)!important;font-weight:850;font-size:12px;margin-bottom:5px}.lesson-tile b{display:block;color:#101426!important;font-size:16px;line-height:1.18}.lesson-tile i{display:flex;gap:4px;margin-top:18px;font-style:normal}.lesson-tile i em{width:8px;height:8px;border-radius:50%;background:rgba(16,20,38,.18)}.lesson-tile i em:first-child{background:#4DB6AC}.stats-strip{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:16px}.stats-strip div{padding:14px 10px;text-align:center;border-radius:22px;background:rgba(255,255,255,.055);border:1px solid var(--line)}.stats-strip strong{display:block;color:var(--text);font-size:16px;font-weight:950}.stats-strip span{display:block;color:var(--text-soft);font-size:11px;margin-top:2px}.glass-panel,.course-hero{padding:18px;border-radius:28px;background:rgba(255,255,255,.06);border:1px solid var(--line);box-shadow:var(--shadow)}.eyebrow{display:inline-flex;color:var(--gold);font-size:11px;font-weight:950;letter-spacing:.14em;text-transform:uppercase;margin-bottom:8px}.course-hero{display:flex;align-items:center;justify-content:space-between;gap:14px;margin:16px 0}.course-hero h2{font-size:22px;margin:0}.course-hero p{color:var(--text-soft);margin:6px 0 0}.course-shortcuts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:16px 0 22px}.course-shortcuts button,.v50-mode-card{appearance:none;text-align:left;padding:16px;border-radius:24px;background:rgba(255,255,255,.06);border:1px solid var(--line);color:var(--text);box-shadow:var(--shadow-sm)}.course-shortcuts span,.v50-mode-card span{display:grid;place-items:center;width:38px;height:38px;border-radius:15px;background:rgba(123,92,255,.18);color:var(--text);margin-bottom:10px;font-size:20px;font-weight:950}.course-shortcuts b,.v50-mode-card b{display:block;color:var(--text);font-size:15px}.course-shortcuts small,.v50-mode-card small{display:block;color:var(--text-soft);font-size:12px;margin-top:2px}.v50-modes{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:0 0 18px}.v50-panel-title{display:flex;align-items:end;justify-content:space-between;margin:18px 0 10px}.v50-panel-title h2{margin:0;font-size:20px}.v50-panel-title small{color:var(--text-soft)}.deck-list{display:grid;gap:10px}.deck-new{border-radius:22px!important;padding:14px!important}.level-card{padding:16px!important;margin:14px 0!important}.level-head{align-items:flex-start!important}.level-code{color:var(--gold)!important;background:rgba(255,210,30,.13)!important;border:1px solid rgba(255,210,30,.20)!important}.filterbar{display:flex;gap:8px;overflow:auto;padding:0 0 8px}.chip{border-radius:999px;background:rgba(255,255,255,.06)!important;color:var(--text-soft)!important;border:1px solid var(--line)!important}.chip.on{background:rgba(255,210,30,.16)!important;color:var(--gold)!important;border-color:rgba(255,210,30,.25)!important}.phrase-list,.alphabet-grid,.grammar-list{display:grid;gap:10px}.alphabet-grid{grid-template-columns:repeat(auto-fit,minmax(82px,1fr))}.alpha-card{padding:14px}.alpha-card b{font-size:32px!important}.toolbar{display:flex;gap:10px;flex-wrap:wrap;margin:0 0 16px}.quiz-shell,.result{color:var(--text)!important}.question-card{background:rgba(255,255,255,.07)!important;border:1px solid var(--line)!important;color:var(--text)!important;border-radius:30px!important}.option{background:rgba(255,255,255,.07)!important;color:var(--text)!important;border:1px solid var(--line)!important}.option.right{background:var(--good-bg)!important;border-color:rgba(53,211,153,.45)!important}.option.wrong{background:var(--bad-bg)!important;border-color:rgba(255,92,122,.45)!important}.x{background:rgba(255,255,255,.09)!important;color:var(--text)!important;border:1px solid var(--line)!important}.dash-stat,.level-prog,.missed-item,.progression-card{background:rgba(255,255,255,.06)!important;border:1px solid var(--line)!important;color:var(--text)!important}.dash-stat strong,.level-prog-head,.missed-item b{color:var(--text)!important}@media(max-width:370px){.progress-focus{grid-template-columns:96px 1fr}.progress-ring{width:96px;height:96px}.quick-actions,.v50-modes{grid-template-columns:1fr}.course-hero{display:block}.course-hero .btn{margin-top:14px;width:100%}}@media(min-width:720px){#app{padding-top:28px}.nav{bottom:18px!important}}


/* ===== Askaci v50 — finition Revolut/iOS : sobriété, fluidité, densité maîtrisée ===== */
*{box-sizing:border-box;-webkit-tap-highlight-color:transparent;}
button{font-family:inherit;cursor:pointer;touch-action:manipulation;}
@media (hover:hover){button:hover{transform:translateY(-1px);} .nav button:hover{transform:none;background:rgba(255,255,255,.045)!important;} .lesson-tile:hover,.action-card:hover,.course-shortcuts button:hover,.v50-mode-card:hover{box-shadow:0 18px 42px rgba(0,0,0,.36),0 0 0 1px rgba(255,255,255,.08) inset;}}
@media (prefers-reduced-motion:no-preference){
  #app>section,#app>header,.home-hero-card,.course-hero,.card{animation:v50FadeUp .26s cubic-bezier(.2,.8,.2,1) both;}
  .progress-ring{animation:v50Pop .32s cubic-bezier(.2,.8,.2,1) both;}
  @keyframes v50FadeUp{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
  @keyframes v50Pop{from{opacity:.65;transform:scale(.96)}to{opacity:1;transform:scale(1)}}
}
body{overflow-x:hidden;}
#app{min-height:calc(100vh - var(--nav-h));}
.app-home,.courses-head,.page-head{position:relative;}
.app-home::before,.courses-head::before{content:"";position:absolute;right:-70px;top:-70px;width:180px;height:180px;border-radius:999px;background:rgba(255,210,30,.08);filter:blur(28px);pointer-events:none;}
.home-top{position:sticky;top:0;z-index:20;padding:4px 0 6px;background:linear-gradient(180deg,rgba(5,7,19,.96),rgba(5,7,19,.74) 65%,transparent);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);}
.home-avatar,.nav,.glass-card,.glass-panel,.course-hero,.action-card,.lesson-tile,.card,.course-shortcuts button,.v50-mode-card{will-change:transform;}
.home-hero-card{min-height:245px;display:flex;flex-direction:column;justify-content:space-between;}
.home-hero-card h1{max-width:9ch;}
.progress-focus{position:relative;z-index:1;}
.progress-ring{background:radial-gradient(circle at center,#080B18 0 57%,transparent 58%),conic-gradient(from 210deg,#7B5CFF calc(var(--p) * 1%),rgba(255,255,255,.12) 0)!important;}
.progress-ring::after{content:"";position:absolute;width:92px;height:92px;border-radius:50%;box-shadow:0 0 40px rgba(123,92,255,.18) inset;pointer-events:none;}
.quick-actions{align-items:stretch;}
.action-card{position:relative;overflow:hidden;}
.action-card::after{content:"";position:absolute;inset:0;background:linear-gradient(135deg,rgba(255,255,255,.08),transparent 42%);opacity:.55;pointer-events:none;}
.action-card>*{position:relative;z-index:1;}
.lesson-tile{position:relative;overflow:hidden;min-height:178px;}
.lesson-tile::after{content:"";position:absolute;right:-36px;top:-36px;width:100px;height:100px;border-radius:50%;background:rgba(255,255,255,.38);filter:blur(18px);pointer-events:none;}
.lesson-tile:active,.action-card:active,.course-shortcuts button:active,.v50-mode-card:active,.home-avatar:active{transform:scale(.985);}
.stats-strip div,.dash-stat{backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);}
.course-hero{background:radial-gradient(260px 160px at 100% 0%,rgba(255,210,30,.11),transparent 60%),rgba(255,255,255,.06)!important;}
.course-shortcuts button,.v50-mode-card{min-height:116px;}
.course-shortcuts span,.v50-mode-card span{background:linear-gradient(180deg,rgba(123,92,255,.23),rgba(123,92,255,.11));border:1px solid rgba(255,255,255,.08);}
.v50-section-switch{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;padding:6px;border-radius:22px;background:rgba(255,255,255,.055);border:1px solid var(--line);margin:0 0 16px;}
.v50-section-switch button{min-height:42px;border:0;border-radius:16px;background:transparent;color:var(--text-soft);font-weight:850;}
.v50-section-switch button.is-active{background:rgba(255,210,30,.16);color:var(--gold);}
.level-card{overflow:hidden;position:relative;}
.level-card::before{content:"";position:absolute;inset:0 0 auto 0;height:1px;background:linear-gradient(90deg,transparent,rgba(255,255,255,.22),transparent);}
.deck-new,.phrase-new,.alpha-card{transition:transform .16s ease, border-color .16s ease, background .16s ease;}
.deck-new:active,.phrase-new:active,.alpha-card:active{transform:scale(.99);}
.alpha-card em{display:block;margin-top:8px;color:var(--gold)!important;font-style:normal;font-size:11px;letter-spacing:.02em;}
.gram{border-radius:20px;background:rgba(255,255,255,.055);border:1px solid var(--line);padding:12px 14px;color:var(--text);}
.gram summary{font-weight:850;color:var(--text);}
.gram p{margin:8px 0 0;color:var(--text-soft);}
.result{padding-bottom:24px;}
.quiz-shell{min-height:calc(100vh - 28px);}
.question-card h1,.question-card h2,.question-card b{color:var(--text)!important;}
.option{min-height:54px;border-radius:18px!important;font-weight:800;}
.auth-screen #app{display:grid;place-items:center;min-height:100vh;padding-bottom:28px;}
.auth-screen .auth-card,.auth-screen .card,.auth-wrap,.login-card{max-width:430px;width:100%;background:rgba(255,255,255,.07)!important;border:1px solid rgba(255,255,255,.12)!important;box-shadow:var(--shadow-lg)!important;border-radius:30px!important;}
.auth-screen .brand-logo,.auth-screen img[src*="askaci-logo"]{max-width:142px;}
.plan-card{overflow:hidden;}
.plan-card.recommended,.plan-card.best{border-color:rgba(255,210,30,.32)!important;box-shadow:0 22px 54px rgba(255,210,30,.10),var(--shadow)!important;}
.nav{padding-bottom:max(7px,calc(7px + env(safe-area-inset-bottom)*0))!important;}
.nav button span:last-child{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%;}
body:not(.auth-screen) .nav{display:grid!important;} body.quiz-open .nav{display:none!important;}
@media(max-width:420px){#app{padding-left:14px;padding-right:14px}.home-hero-card{padding:20px}.recommended-grid{gap:10px}.lesson-tile{padding:15px}.nav{height:70px!important;border-radius:27px!important}.nav .ic{font-size:20px!important}}
@media(max-width:340px){.recommended-grid,.course-shortcuts{grid-template-columns:1fr}.stats-strip{grid-template-columns:1fr}.home-hero-card h1{max-width:none}.progress-focus{grid-template-columns:1fr}.progress-ring{margin:auto}.progress-copy em{text-align:left}}

/* v50.1 — nav always above lesson/cards, no click interception */
.nav{z-index:2147483000!important;isolation:isolate!important;pointer-events:auto!important;}
.nav *{pointer-events:auto!important;}
#app{position:relative;z-index:1;}
.onb-overlay,#notifOnb,#celebrate{z-index:2147483001!important;}

/* v50.2 — bottom bar pinned to the visual viewport on iOS/PWA/headless mobile */
.nav{top:calc(100dvh - 72px - var(--safe-b) - 10px)!important;bottom:auto!important;}
@supports not (height:100dvh){.nav{top:auto!important;bottom:calc(10px + var(--safe-b))!important;}}

/* ===== Askaci v52 — micro-interactions premium + logo fondu ===== */
:root{--v52-ease:cubic-bezier(.2,.8,.2,1);--v52-spring:cubic-bezier(.18,.89,.32,1.28);}
@media (prefers-reduced-motion:no-preference){
  html{scroll-behavior:smooth;}
  #app.v52-enter>*{animation:v52PageIn .34s var(--v52-ease) both;}
  .v52-stagger{animation:v52StaggerIn .38s var(--v52-ease) both;animation-delay:var(--v52-delay,0ms);}
  @keyframes v52PageIn{from{opacity:0;transform:translateY(8px) scale(.995);filter:blur(2px)}to{opacity:1;transform:none;filter:none}}
  @keyframes v52StaggerIn{from{opacity:0;transform:translateY(12px) scale(.985)}to{opacity:1;transform:none}}
  .nav button.active .ic{animation:v52NavPop .24s var(--v52-spring) both;}
  @keyframes v52NavPop{0%{transform:scale(.86)}70%{transform:scale(1.12)}100%{transform:scale(1)}}
  .progress-ring span{animation:v52NumberPulse .42s var(--v52-ease) both;}
  @keyframes v52NumberPulse{from{opacity:.4;transform:scale(.94)}to{opacity:1;transform:scale(1)}}
}
.brand-logo,
.auth-screen img[src*="askaci-logo"],
img[src*="askaci-logo-wide"]{
  filter:brightness(0) invert(1) contrast(1.06) saturate(.72)!important;
  opacity:.74;
  mix-blend-mode:screen;
  transition:opacity .22s ease, transform .22s ease, filter .22s ease;
}
.home-top .brand-logo{width:112px;opacity:.68;filter:brightness(0) invert(1) contrast(.96) saturate(.35)!important;}
.auth-screen img[src*="askaci-logo"]{opacity:.78;}
@media(hover:hover){.brand-logo:hover{opacity:.9;transform:translateY(-1px)}}
.home-top::after{content:"";position:absolute;left:0;right:0;bottom:0;height:1px;background:linear-gradient(90deg,transparent,rgba(255,255,255,.10),transparent);opacity:.75;}
.nav{transition:transform .24s var(--v52-ease),opacity .24s var(--v52-ease),background .22s ease,box-shadow .22s ease!important;}
body.v52-scroll-down .nav{transform:translateX(-50%) translateY(7px) scale(.985)!important;opacity:.92;}
.nav button{position:relative;overflow:hidden;transition:color .18s ease,background .18s ease,transform .18s var(--v52-ease)!important;}
.nav button::before{content:"";position:absolute;inset:7px;border-radius:18px;background:radial-gradient(circle at 50% 15%,rgba(255,210,30,.26),transparent 62%);opacity:0;transition:opacity .18s ease;}
.nav button.active::before{opacity:1;}
.nav button>*{position:relative;z-index:1;}
.btn,.action-card,.lesson-tile,.course-shortcuts button,.v50-mode-card,.deck-new,.phrase-new,.alpha-card,.home-avatar,.chip,.option{position:relative;overflow:hidden;transition:transform .18s var(--v52-ease),border-color .18s ease,background .18s ease,box-shadow .18s ease,opacity .18s ease!important;}
@media(hover:hover){
  .btn:hover,.action-card:hover,.course-shortcuts button:hover,.v50-mode-card:hover,.deck-new:hover,.phrase-new:hover,.alpha-card:hover,.option:hover{transform:translateY(-2px);}
  .lesson-tile:hover{transform:translateY(-3px) rotateX(.5deg);}
  .chip:hover{border-color:rgba(255,210,30,.24)!important;color:var(--text)!important;}
}
.v52-press{transform:scale(.975)!important;}
.v52-ripple{position:absolute;border-radius:50%;pointer-events:none;width:12px;height:12px;left:var(--x);top:var(--y);background:rgba(255,255,255,.34);transform:translate(-50%,-50%) scale(1);opacity:.52;animation:v52Ripple .52s ease-out forwards;z-index:3;}
@keyframes v52Ripple{to{transform:translate(-50%,-50%) scale(22);opacity:0}}
.primary-action .v52-ripple,.btn.primary .v52-ripple,.nav button.active .v52-ripple{background:rgba(255,210,30,.38);}
.home-hero-card{transition:transform .22s var(--v52-ease),box-shadow .22s ease;}
@media(hover:hover){.home-hero-card:hover{transform:translateY(-2px);box-shadow:0 34px 90px rgba(0,0,0,.54)!important;}}
.home-hero-card::before{content:"";position:absolute;inset:-2px;background:radial-gradient(260px 180px at var(--mx,80%) var(--my,20%),rgba(255,255,255,.11),transparent 58%);opacity:.58;pointer-events:none;transition:opacity .2s ease;}
.home-hero-card>*{position:relative;z-index:1;}
.progress-ring{position:relative;transition:filter .24s ease,transform .24s var(--v52-ease);}
.progress-ring.v52-pulse{filter:drop-shadow(0 0 18px rgba(123,92,255,.34));transform:scale(1.025);}
.mini-progress i{transition:width .7s var(--v52-ease);}
.lesson-tile i em{transition:transform .22s var(--v52-ease),background .22s ease;}
.lesson-tile:hover i em:nth-child(1){transform:translateY(-2px)}
.lesson-tile:hover i em:nth-child(2){transform:translateY(-2px);transition-delay:.03s}
.lesson-tile:hover i em:nth-child(3){transform:translateY(-2px);transition-delay:.06s}
.lesson-tile:hover i em:nth-child(4){transform:translateY(-2px);transition-delay:.09s}
.action-card span,.course-shortcuts span,.v50-mode-card span{transition:transform .22s var(--v52-spring),background .18s ease;}
.action-card:active span,.course-shortcuts button:active span,.v50-mode-card:active span{transform:scale(.9) rotate(-4deg);}
.deck-new::after,.phrase-new::after,.alpha-card::after{content:"";position:absolute;inset:0;background:linear-gradient(110deg,transparent 0%,rgba(255,255,255,.08) 42%,transparent 58%);transform:translateX(-120%);opacity:.0;pointer-events:none;}
@media(hover:hover){.deck-new:hover::after,.phrase-new:hover::after,.alpha-card:hover::after{animation:v52Sheen .68s ease;opacity:1;}}
@keyframes v52Sheen{to{transform:translateX(120%)}}
input,select,textarea{transition:border-color .18s ease,box-shadow .18s ease,background .18s ease!important;}
input:focus,select:focus,textarea:focus{outline:none!important;border-color:rgba(255,210,30,.36)!important;box-shadow:0 0 0 4px rgba(255,210,30,.10)!important;background:rgba(255,255,255,.095)!important;}
.quiz-shell .option{animation-duration:.24s!important;}
.option.right{box-shadow:0 0 0 1px rgba(53,211,153,.28) inset,0 12px 30px rgba(53,211,153,.08)!important;}
.option.wrong{box-shadow:0 0 0 1px rgba(255,92,122,.25) inset,0 12px 30px rgba(255,92,122,.08)!important;}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}.v52-ripple{display:none!important}}

/* ===== Askaci v52 — thème exact photo 1 + menus photo 2 ===== */
:root{
  --bg:#020714!important;
  --bg-2:#040B1C!important;
  --surface:rgba(9,15,30,.78)!important;
  --surface-2:rgba(13,20,38,.86)!important;
  --glass:rgba(255,255,255,.055)!important;
  --line:rgba(255,255,255,.10)!important;
  --line-strong:rgba(160,107,255,.46)!important;
  --text:#F7F8FF!important;
  --text-soft:#BBC3D7!important;
  --muted:#758098!important;
  --blue:#8B3DFF!important;
  --blue-strong:#7628F8!important;
  --blue-soft:rgba(139,61,255,.22)!important;
  --gold:#FFD51E!important;
  --primary:#8B3DFF!important;
  --card:rgba(10,17,33,.82)!important;
  --shadow:0 20px 50px rgba(0,0,0,.34)!important;
  --shadow-lg:0 38px 90px rgba(0,0,0,.52)!important;
}
html{background:#020714!important;overflow-x:hidden!important;}
body{
  width:100%;max-width:100%;overflow-x:hidden!important;
  color:var(--text)!important;
  background:
    radial-gradient(480px 360px at 84% 18%,rgba(119,60,255,.16),transparent 62%),
    radial-gradient(420px 320px at -12% 48%,rgba(47,72,255,.18),transparent 64%),
    radial-gradient(640px 420px at 52% 112%,rgba(95,45,255,.22),transparent 68%),
    linear-gradient(180deg,#020713 0%,#030918 48%,#020510 100%)!important;
  background-attachment:fixed!important;
  padding-bottom:calc(92px + var(--safe-b))!important;
}
body::before{
  background:
    linear-gradient(118deg,transparent 10%,rgba(255,255,255,.025) 45%,transparent 65%),
    radial-gradient(circle at 80% 15%,rgba(255,213,30,.04),transparent 30%)!important;
  opacity:.75!important;
}
#app{box-sizing:border-box!important;width:100%!important;max-width:430px!important;margin:0 auto!important;padding:18px clamp(18px,4.7vw,22px) 28px!important;overflow-x:hidden!important;}
*{box-sizing:border-box;}
button,input,select,textarea{font:inherit;}

/* logo plus fondu dans le fond, pas blanc agressif */
.brand-logo,.askaci-logo-v52,img[src*="askaci-logo-wide"]{
  filter:brightness(0) invert(1) contrast(.9) saturate(.25)!important;
  opacity:.76!important;
  mix-blend-mode:screen!important;
}
.home-top .brand-logo,.v52-brand{width:124px!important;opacity:.78!important;}

/* navigation photo 2 : minimal, sans gros conteneur visible */
.nav{
  position:fixed!important;left:50%!important;right:auto!important;
  top:calc(100dvh - 82px - var(--safe-b))!important;bottom:auto!important;
  transform:translateX(-50%)!important;
  width:min(430px,100%)!important;height:78px!important;
  padding:7px 20px calc(8px + var(--safe-b))!important;
  display:grid!important;grid-template-columns:repeat(4,1fr)!important;gap:4px!important;
  border:0!important;border-radius:0!important;
  background:linear-gradient(180deg,rgba(2,7,20,0),rgba(2,7,20,.84) 22%,rgba(2,7,20,.96) 100%)!important;
  box-shadow:none!important;backdrop-filter:blur(12px)!important;-webkit-backdrop-filter:blur(12px)!important;
  z-index:2147483000!important;
}
.nav button{height:64px!important;border-radius:18px!important;background:transparent!important;color:rgba(255,255,255,.72)!important;font-size:11px!important;font-weight:700!important;gap:5px!important;}
.nav .ic{font-size:22px!important;line-height:1!important;color:currentColor!important;display:grid!important;place-items:center!important;width:30px!important;height:30px!important;border-radius:12px!important;}
.nav button.active{color:#A33DFF!important;background:transparent!important;}
.nav button.active .ic{background:rgba(139,61,255,.18)!important;box-shadow:0 0 20px rgba(139,61,255,.38)!important;filter:none!important;}
.nav button::before{display:none!important;}
body.v52-scroll-down .nav{transform:translateX(-50%)!important;opacity:1!important;}
body.quiz-open .nav{display:none!important;}

/* home exact */
.v52-home{min-height:calc(100dvh - 108px);padding-top:2px;}
.v52-back{width:42px;height:42px;border-radius:16px;background:transparent!important;color:rgba(255,255,255,.86)!important;border:0!important;display:grid;place-items:center;font-size:31px;line-height:1;margin:0 0 6px -8px;}
.v52-home-logo{display:block;margin:0 0 20px;}
.v52-hello{font-size:23px;line-height:1.2;font-weight:800;letter-spacing:-.03em;margin:0 0 26px;color:#fff;min-height:32px;}
.v52-hello .latin{font-weight:600;font-style:italic;color:rgba(255,255,255,.86);}
.v52-cursor{display:inline-block;width:2px;height:1em;background:rgba(255,255,255,.86);vertical-align:-.12em;margin-left:2px;animation:v52Blink .78s steps(1,end) infinite;}
@keyframes v52Blink{50%{opacity:0}}
.v52-section-title{font-size:18px;font-weight:850;letter-spacing:-.02em;color:#F7F8FF;margin:0 0 24px;}
.v52-progress-layout{display:grid;grid-template-columns:122px 1fr;gap:18px;align-items:center;margin:0 0 34px;}
.v52-ring{--p:68;width:122px;height:122px;border-radius:50%;display:grid;place-items:center;background:radial-gradient(circle at center,#050A18 0 57%,transparent 58%),conic-gradient(#8D36FF calc(var(--p)*1%),rgba(64,70,101,.35) 0);box-shadow:0 18px 42px rgba(0,0,0,.35),inset 0 0 18px rgba(139,61,255,.08);position:relative;}
.v52-ring::after{content:"";position:absolute;inset:8px;border-radius:50%;border:1px solid rgba(255,255,255,.04);}
.v52-ring span{font-size:34px;font-weight:800;color:#fff;letter-spacing:-.06em;}
.v52-progress-copy strong{font-size:22px;line-height:1.1;font-weight:900;color:#fff;display:block;letter-spacing:-.035em;}
.v52-progress-copy small{display:block;color:rgba(255,255,255,.74);font-weight:600;margin-top:4px;font-size:13px;}
.v52-progress-copy p{margin:10px 0 12px;color:rgba(255,255,255,.36);font-size:14px;font-weight:650;}
.v52-mini-progress{height:9px;border-radius:999px;background:rgba(255,255,255,.10);overflow:hidden;}
.v52-mini-progress i{display:block;height:100%;width:68%;border-radius:999px;background:linear-gradient(90deg,#347CFF 0%,#8B36FF 100%);box-shadow:0 0 18px rgba(139,61,255,.35);}
.v52-progress-copy em{display:block;text-align:right;margin-top:8px;color:rgba(255,255,255,.70);font-style:normal;font-weight:750;font-size:12px;}
.v52-reco-head{font-size:25px;font-weight:850;letter-spacing:-.04em;color:#fff;margin:0 0 16px;}
.v52-recommended{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-bottom:22px;}
.v52-lesson-card{min-height:190px;border:0;border-radius:18px!important;padding:15px 14px!important;text-align:left;background:linear-gradient(180deg,#A9D9FF 0%,#D5ECFF 100%)!important;color:#0E1423!important;box-shadow:0 18px 35px rgba(0,0,0,.38), inset 0 1px 0 rgba(255,255,255,.62)!important;position:relative;overflow:hidden;}
.v52-lesson-card::before{content:"";position:absolute;inset:0;background:radial-gradient(120px 80px at 78% 12%,rgba(255,255,255,.48),transparent 56%);pointer-events:none;}
.v52-lesson-card>*{position:relative;z-index:1;}
.v52-lesson-visual{height:58px;display:flex;align-items:center;justify-content:space-between;margin-bottom:15px;}
.v52-lesson-emoji{font-size:38px;filter:drop-shadow(0 4px 6px rgba(0,0,0,.18));}
.v52-lesson-chip{font-size:10px;color:#315B84;font-weight:850;background:rgba(255,255,255,.28);border-radius:999px;padding:4px 7px;}
.v52-lesson-card small{display:block;color:#111827!important;font-weight:750;font-size:15px;margin-bottom:8px;}
.v52-lesson-card b{display:block;color:#050A14!important;font-weight:900;font-size:18px;line-height:1.12;letter-spacing:-.04em;}
.v52-dots{display:flex;gap:5px;margin-top:18px;}
.v52-dots i{width:8px;height:8px;border-radius:50%;background:rgba(13,40,72,.22);}
.v52-dots i:first-child{background:#B050E7;}
.v52-dots.green i:first-child{background:#2FAF9E;}
.v52-quick-row{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:16px;}
.v52-mini-action{min-height:80px;border-radius:20px!important;background:rgba(255,255,255,.055)!important;border:1px solid rgba(255,255,255,.08)!important;color:#fff!important;padding:12px 10px!important;text-align:left;}
.v52-mini-action span{display:block;font-size:18px;margin-bottom:7px;color:#A33DFF;}
.v52-mini-action b{display:block;font-size:13px;color:#fff;}

/* pages photo 2 */
.v52-page{min-height:calc(100dvh - 105px);padding-top:12px;}
.v52-titlebar{display:flex;align-items:center;gap:10px;margin:0 0 22px;}
.v52-titlebar h1{font-size:23px;font-weight:850;letter-spacing:-.035em;color:#fff;}
.v52-titlebar .v52-back{margin:0 4px 0 -8px;width:34px;height:34px;font-size:27px;}
.v52-panel,.v52-list,.v52-billing-card,.v52-premium-card{background:linear-gradient(180deg,rgba(255,255,255,.075),rgba(255,255,255,.038))!important;border:1px solid rgba(255,255,255,.09)!important;border-radius:18px!important;box-shadow:0 18px 48px rgba(0,0,0,.26)!important;}
.v52-feature-card{border-radius:18px!important;overflow:hidden;background:linear-gradient(180deg,rgba(139,61,255,.20),rgba(10,17,35,.92)),radial-gradient(300px 120px at 75% 0%,rgba(122,72,255,.45),transparent 60%)!important;border:1px solid rgba(139,61,255,.36)!important;padding:18px!important;margin-bottom:16px;min-height:124px;position:relative;}
.v52-feature-card::after{content:"⚑";position:absolute;right:28px;bottom:20px;color:#8B3DFF;font-size:44px;filter:drop-shadow(0 0 18px rgba(139,61,255,.5));}
.v52-feature-card h2{font-size:18px;color:#fff;margin:0 0 4px;}
.v52-feature-card p{color:rgba(255,255,255,.72);margin:0;font-size:13px;}
.v52-menu{display:grid;gap:0;border-radius:18px;overflow:hidden;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08);}
.v52-menu-item{width:100%;border:0!important;border-bottom:1px solid rgba(255,255,255,.07)!important;border-radius:0!important;background:rgba(255,255,255,.025)!important;color:#fff!important;padding:17px 14px!important;display:grid;grid-template-columns:38px 1fr 20px;gap:12px;align-items:center;text-align:left;min-height:72px;}
.v52-menu-item:last-child{border-bottom:0!important;}
.v52-menu-item.selected{outline:1px solid rgba(139,61,255,.70);outline-offset:-1px;background:rgba(139,61,255,.08)!important;border-radius:10px!important;margin:0;}
.v52-menu-icon{width:38px;height:38px;border-radius:13px;display:grid;place-items:center;border:1px solid rgba(139,61,255,.32);background:rgba(139,61,255,.13);color:#B67CFF;font-size:20px;font-weight:900;}
.v52-menu-item b{display:block;color:#fff;font-size:15px;font-weight:800;}
.v52-menu-item small{display:block;color:rgba(255,255,255,.52);font-size:12px;margin-top:2px;}
.v52-chevron{color:rgba(255,255,255,.74);font-size:22px;}
.v52-profile-top{text-align:center;margin:2px 0 24px;}
.v52-avatar{width:98px;height:98px;border-radius:50%;margin:0 auto 14px;display:grid;place-items:center;background:radial-gradient(circle at 50% 30%,#AD73FF 0 18%,#8736F9 19% 42%,#28115A 43% 100%);box-shadow:0 18px 50px rgba(139,61,255,.28);position:relative;}
.v52-avatar::before{content:"";width:42px;height:42px;border-radius:50%;background:#B777FF;position:absolute;top:20px;}
.v52-avatar::after{content:"";width:72px;height:36px;border-radius:40px 40px 20px 20px;background:#9D50FF;position:absolute;bottom:13px;}
.v52-edit{position:absolute;right:4px;bottom:6px;width:30px;height:30px;border-radius:50%;display:grid;place-items:center;background:#151B2B;border:1px solid rgba(255,255,255,.16);z-index:2;color:#fff;font-size:15px;}
.v52-profile-top h2{font-size:21px;color:#fff;margin:0 0 4px;font-weight:850;}
.v52-profile-top p{margin:0;color:rgba(255,255,255,.58);font-size:13px;}
.v52-billing-card{padding:18px;margin-bottom:18px;}
.v52-billing-row{display:flex;justify-content:space-between;align-items:end;gap:12px;margin-bottom:18px;}
.v52-billing-row span{color:rgba(255,255,255,.56);font-size:13px;display:block;margin-bottom:8px;}
.v52-billing-row strong{font-size:24px;color:#fff;letter-spacing:-.04em;}
.v52-price{font-size:14px;color:#fff;font-weight:750;}
.v52-purple-btn{width:100%;min-height:52px;border:0!important;border-radius:10px!important;background:linear-gradient(180deg,#9B3EFF,#7830EF)!important;color:#fff!important;font-weight:850!important;box-shadow:0 16px 32px rgba(139,61,255,.26)!important;}
.v52-history{margin-top:18px;padding:18px;border-radius:14px;background:rgba(255,255,255,.035);border:1px solid rgba(255,255,255,.06);}
.v52-history span{display:block;color:#fff;font-weight:750;margin-bottom:16px;}
.v52-access-input{width:100%;height:54px;border-radius:10px!important;border:1px solid rgba(139,61,255,.72)!important;background:rgba(255,255,255,.025)!important;color:#fff!important;padding:0 14px!important;font-size:18px;font-weight:750;box-shadow:0 0 0 3px rgba(139,61,255,.10)!important;}
.v52-success{text-align:center;margin:28px 0;}
.v52-check{width:58px;height:58px;border-radius:50%;display:grid;place-items:center;margin:0 auto 18px;background:rgba(23,132,98,.78);color:#fff;font-size:32px;box-shadow:0 14px 34px rgba(21,160,113,.20);}
.v52-success h2{font-size:23px;color:#fff;margin:0 0 8px;}
.v52-success p{color:rgba(255,255,255,.82);line-height:1.45;margin:0;font-size:17px;}
.v52-premium-card{padding:16px;border-color:rgba(139,61,255,.55)!important;}
.v52-premium-card h3{font-size:18px;color:#fff;margin:0 0 14px;}
.v52-premium-card ul{list-style:none;margin:0;padding:0;display:grid;gap:13px;}
.v52-premium-card li{color:rgba(255,255,255,.78);font-size:13px;display:flex;gap:10px;align-items:center;}
.v52-premium-card li::before{content:"✓";color:#92E461;font-weight:900;font-size:17px;}

/* uniformisation anciens boutons / sous-menus */
.card,.deck-new,.phrase-new,.alpha-card,.dash-stat,.level-card,.quiz-type,.feature,.stat-card{background:linear-gradient(180deg,rgba(255,255,255,.070),rgba(255,255,255,.035))!important;border:1px solid rgba(255,255,255,.09)!important;color:#fff!important;border-radius:18px!important;box-shadow:0 18px 42px rgba(0,0,0,.22)!important;}
.btn:not(.v52-purple-btn){border-radius:13px!important;background:rgba(255,255,255,.055)!important;border:1px solid rgba(255,255,255,.10)!important;color:#fff!important;}
.btn.primary:not(.v52-purple-btn){background:linear-gradient(180deg,#9B3EFF,#7830EF)!important;border:0!important;color:#fff!important;box-shadow:0 16px 32px rgba(139,61,255,.24)!important;}
input,select,textarea{background:rgba(255,255,255,.035)!important;border:1px solid rgba(255,255,255,.12)!important;color:#fff!important;border-radius:10px!important;}
input:focus,select:focus,textarea:focus{border-color:rgba(139,61,255,.72)!important;box-shadow:0 0 0 3px rgba(139,61,255,.14)!important;}

@media(max-width:380px){
  #app{padding-left:16px!important;padding-right:16px!important;}
  .v52-progress-layout{grid-template-columns:112px 1fr;gap:14px;}
  .v52-ring{width:112px;height:112px;}
  .v52-ring span{font-size:31px;}
  .v52-progress-copy strong{font-size:20px;}
  .v52-recommended{gap:9px;}
  .v52-lesson-card{min-height:184px;padding:14px 12px!important;}
  .v52-lesson-card b{font-size:17px;}
  .nav{padding-left:14px!important;padding-right:14px!important;}
}
@media(max-width:335px){
  .v52-progress-layout{grid-template-columns:1fr;text-align:left;}
  .v52-ring{margin:0;}
  .v52-recommended{grid-template-columns:1fr;}
  .v52-quick-row{grid-template-columns:1fr;}
}
