*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
:root{
  --bg:#F9F6F0;--text:#1E293B;--soft:#64748B;--mute:#94A3B8;
  --indigo:#6366F1;--il:#818CF8;--ip:#EEF2FF;--id:#4F46E5;
  --white:#fff;--border:#E2E8F0;--bs:#F1F5F9;
  --sh:0 1px 3px rgba(0,0,0,.06),0 4px 16px rgba(0,0,0,.06);
  --sh2:0 8px 32px rgba(0,0,0,.12);
  --r:16px;--rs:10px;
}
html{scroll-behavior:smooth}
body{background:var(--bg);font-family:'Inter',sans-serif;color:var(--text);min-height:100vh}
.app{max-width:480px;margin:0 auto;min-height:100vh}

/* ── UTILS ── */
.btn-p{display:flex;align-items:center;justify-content:center;gap:8px;background:var(--indigo);color:#fff;border:none;cursor:pointer;padding:14px 28px;border-radius:var(--rs);font-family:'Inter',sans-serif;font-size:15px;font-weight:600;transition:all .2s;width:100%}
.btn-p:hover{background:var(--id);transform:translateY(-1px);box-shadow:0 4px 20px rgba(99,102,241,.4)}
.btn-g{background:none;border:1.5px solid var(--border);cursor:pointer;padding:12px 20px;border-radius:var(--rs);font-family:'Inter',sans-serif;font-size:14px;font-weight:500;color:var(--soft);transition:all .2s;width:100%}
.btn-g:hover{border-color:var(--indigo);color:var(--indigo)}
input[type=email],input[type=password],input[type=text]{width:100%;padding:12px 16px;border-radius:var(--rs);border:1.5px solid var(--border);background:#fff;font-family:'Inter',sans-serif;font-size:15px;color:var(--text);outline:none;transition:border-color .2s}
input:focus{border-color:var(--indigo);box-shadow:0 0 0 3px rgba(99,102,241,.12)}
label{font-size:13px;font-weight:600;color:var(--text);display:block;margin-bottom:6px}
.fg{margin-bottom:16px}
.lnk{background:none;border:none;cursor:pointer;color:var(--indigo);font-size:14px;font-weight:600;font-family:'Inter',sans-serif}

/* ── LANDING ── */
.landing{background:var(--bg);min-height:100vh;overflow-x:hidden}

/* NAV LANDING */
.lnav{display:flex;align-items:center;justify-content:space-between;padding:18px 24px;position:sticky;top:0;z-index:100;background:rgba(249,246,240,.92);backdrop-filter:blur(16px);border-bottom:1px solid rgba(226,232,240,.6)}
.lnav-logo{display:flex;align-items:center;gap:2px;cursor:pointer;text-decoration:none}
.lnav-mark{display:none}
.logo-text{font-family:'Lora',serif;font-size:20px;font-weight:700;color:var(--text);letter-spacing:0.5px}
.logo-text .lt{color:var(--indigo);font-size:24px}
.lnav-t{display:none}
.lnav-btns{display:flex;gap:10px;align-items:center}
.lnav-in{background:none;border:none;cursor:pointer;font-size:14px;font-weight:500;color:var(--soft);font-family:'Inter',sans-serif;padding:8px 14px;border-radius:8px;transition:all .18s}
.lnav-in:hover{color:var(--text);background:var(--bs)}
.lnav-reg{background:var(--indigo);color:#fff;border:none;cursor:pointer;font-size:14px;font-weight:600;font-family:'Inter',sans-serif;padding:9px 18px;border-radius:8px;transition:all .2s}
.lnav-reg:hover{background:var(--id)}

/* HERO */
.hero-sec{padding:64px 24px 48px;text-align:center;position:relative;overflow:hidden}
.hero-blob{position:absolute;top:-80px;left:50%;transform:translateX(-50%);width:500px;height:400px;background:radial-gradient(ellipse,rgba(99,102,241,.12) 0%,transparent 70%);pointer-events:none;z-index:0}
.hero-badge{display:inline-flex;align-items:center;gap:6px;background:var(--ip);color:var(--indigo);border-radius:20px;padding:6px 14px;font-size:12px;font-weight:700;letter-spacing:.3px;margin-bottom:24px;border:1px solid rgba(99,102,241,.2);position:relative;z-index:1}
.hero-h{font-family:'Lora',serif;font-size:36px;line-height:1.2;font-weight:700;color:var(--text);margin-bottom:18px;position:relative;z-index:1}
.hero-h em{font-style:italic;color:var(--indigo)}
.hero-sub{font-size:16px;color:var(--soft);line-height:1.7;margin-bottom:36px;position:relative;z-index:1;max-width:360px;margin-left:auto;margin-right:auto}
.hero-btns{display:flex;flex-direction:column;gap:12px;max-width:320px;margin:0 auto 48px;position:relative;z-index:1}
.hero-btns .btn-p{font-size:16px;padding:16px}
.hero-trust{display:flex;align-items:center;justify-content:center;gap:20px;position:relative;z-index:1}
.hero-trust-item{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--mute);font-weight:500}
.hero-kpis{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;max-width:760px;margin:28px auto 0;position:relative;z-index:1}
.hero-kpi{background:rgba(255,255,255,.76);border:1px solid rgba(226,232,240,.85);border-radius:18px;padding:16px 14px;box-shadow:0 10px 28px rgba(15,23,42,.05)}
.hero-kpi-n{font-family:'Lora',serif;font-size:28px;font-weight:700;color:var(--text);line-height:1}
.hero-kpi-l{font-size:12px;color:var(--soft);line-height:1.5;margin-top:6px}
.landing-lead{font-size:15px;color:var(--soft);line-height:1.7;max-width:720px;margin:0 auto 24px}

/* DEMO INTERACTIVA */
.demo-sec{padding:0 24px 56px;position:relative;z-index:1}
.demo-card{background:#fff;border-radius:20px;box-shadow:var(--sh2);border:1px solid var(--border);overflow:hidden}
.demo-header{padding:16px 20px;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between}
.demo-libro{font-family:'Lora',serif;font-size:14px;font-weight:700;color:var(--text)}
.demo-lang{display:flex;align-items:center;gap:6px;background:var(--ip);border-radius:8px;padding:5px 10px;font-size:12px;font-weight:700;color:var(--indigo)}
.demo-slider-wrap{padding:14px 20px;background:var(--bs);border-bottom:1px solid var(--border)}
.demo-slider-lbl{display:flex;justify-content:space-between;font-size:11px;color:var(--mute);font-weight:500;margin-bottom:8px}
.demo-slider{width:100%;-webkit-appearance:none;appearance:none;height:5px;border-radius:3px;outline:none;cursor:pointer}
.demo-slider::-webkit-slider-thumb{-webkit-appearance:none;width:18px;height:18px;border-radius:50%;background:var(--indigo);cursor:pointer;border:3px solid #fff;box-shadow:0 1px 6px rgba(99,102,241,.4)}
.demo-txt{padding:20px;font-family:'Lora',serif;font-size:16px;line-height:1.9;color:var(--text);min-height:120px}
.demo-actions{display:flex;flex-direction:column;gap:10px;padding:0 20px 20px}
.demo-pal{color:var(--indigo);font-weight:600;background:var(--ip);border-radius:3px;padding:0 3px;cursor:help;position:relative}
.demo-pal:hover::after{content:attr(data-orig);position:absolute;bottom:calc(100% + 6px);left:50%;transform:translateX(-50%);background:var(--text);color:#fff;border-radius:7px;padding:5px 10px;font-size:11px;white-space:nowrap;font-family:'Inter',sans-serif;z-index:10}

/* FEATURES */
.feat-sec{padding:40px 24px 56px}
.feat-label{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:1px;color:var(--indigo);margin-bottom:12px}
.feat-h{font-family:'Lora',serif;font-size:26px;font-weight:700;color:var(--text);margin-bottom:32px;line-height:1.3}
.feat-list{display:flex;flex-direction:column;gap:20px}
.feat-item{display:flex;gap:16px;align-items:flex-start}
.feat-ico{width:42px;height:42px;border-radius:12px;background:var(--ip);display:flex;align-items:center;justify-content:center;flex-shrink:0;font-size:18px;font-weight:800;color:var(--indigo)}
.feat-body h3{font-size:15px;font-weight:700;color:var(--text);margin-bottom:4px}
.feat-body p{font-size:13px;color:var(--soft);line-height:1.6}

/* SCIENCE */
.sci-sec{padding:40px 24px 56px;background:#fff;margin:0;border-top:1px solid var(--border);border-bottom:1px solid var(--border)}
.sci-quote{font-family:'Lora',serif;font-size:18px;font-style:italic;color:var(--text);line-height:1.7;margin-bottom:20px;padding-left:16px;border-left:3px solid var(--indigo)}
.sci-author{font-size:13px;color:var(--mute);font-weight:500}
.proof-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:14px;margin-top:22px}
.proof-card{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.12);border-radius:18px;padding:18px}
.proof-card.light{background:#fff;border-color:var(--border);box-shadow:var(--sh)}
.proof-t{font-size:14px;font-weight:800;color:#fff;margin-bottom:6px}
.proof-card.light .proof-t{color:var(--text)}
.proof-s{font-size:13px;line-height:1.6;color:rgba(255,255,255,.74)}
.proof-card.light .proof-s{color:var(--soft)}

.pricing-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:20px;max-width:760px;margin:0 auto}
.pricing-card{background:#fff;border:1.5px solid var(--border);border-radius:22px;padding:24px;text-align:left;box-shadow:var(--sh)}
.pricing-card-premium{background:linear-gradient(155deg,#1E1B4B 0%,#312E81 100%);border-color:#4338CA;box-shadow:0 18px 36px rgba(49,46,129,.22)}
.pricing-kicker,.pricing-chip{font-size:11px;font-weight:800;letter-spacing:.7px;text-transform:uppercase;color:var(--mute);margin-bottom:8px}
.pricing-chip{color:#C7D2FE}
.pricing-price{font-family:'Lora',serif;font-size:40px;font-weight:700;color:var(--text);line-height:1}
.pricing-card-premium .pricing-price{color:#fff}
.pricing-note{font-size:13px;color:var(--soft);margin:8px 0 18px}
.pricing-card-premium .pricing-note{color:rgba(255,255,255,.72)}
.pricing-list{list-style:none;display:flex;flex-direction:column;gap:8px;margin:0 0 20px;padding:0}
.pricing-list li{font-size:13px;color:var(--soft);line-height:1.5;padding-left:18px;position:relative}
.pricing-card-premium .pricing-list li{color:rgba(255,255,255,.84)}
.pricing-list li::before{content:'✓';position:absolute;left:0;top:0;color:var(--indigo);font-weight:800}
.pricing-card-premium .pricing-list li::before{color:#C7D2FE}

/* FAQ */
.faq-sec{padding:40px 24px 56px}
.faq-item{border-bottom:1px solid var(--border);padding:18px 0;cursor:pointer}
.faq-item:first-child{border-top:1px solid var(--border)}
.faq-q{display:flex;justify-content:space-between;align-items:center;gap:12px}
.faq-q{width:100%;background:none;border:none;cursor:pointer;padding:0;text-align:left;font-family:inherit}
.faq-qt{font-size:15px;font-weight:600;color:var(--text);line-height:1.4}
.faq-ico{font-size:18px;color:var(--mute);flex-shrink:0;transition:transform .25s}
.faq-ico.open{transform:rotate(45deg);color:var(--indigo)}
.faq-a{font-size:14px;color:var(--soft);line-height:1.7;margin-top:12px;display:none}
.faq-a.open{display:block}

/* CTA FINAL */
.cta-sec{padding:48px 24px;text-align:center;background:linear-gradient(160deg,#1E293B 0%,#0F172A 100%);margin-top:0}
.cta-h{font-family:'Lora',serif;font-size:28px;font-weight:700;color:#fff;margin-bottom:14px;line-height:1.3}
.cta-sub{font-size:15px;color:rgba(255,255,255,.65);margin-bottom:32px;line-height:1.6}
.cta-sec .btn-p{max-width:320px;margin:0 auto;font-size:16px;padding:16px}
.cta-trust{display:flex;align-items:center;justify-content:center;gap:16px;margin-top:20px}
.cta-trust-item{font-size:12px;color:rgba(255,255,255,.4)}

/* FOOTER */
.lfoot{padding:24px;text-align:center;font-size:12px;color:var(--mute)}

/* ── AUTH ── */
.auth{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:32px 24px;background:var(--bg)}
.auth-logo{display:flex;align-items:center;gap:6px;margin-bottom:40px;cursor:pointer}
.auth-lm{display:none}
.auth-lt{display:none}
.auth-logo .logo-text{font-size:26px}
.auth-logo .logo-text .lt{font-size:32px}
.auth-card{width:100%;max-width:380px;background:#fff;border-radius:var(--r);padding:32px;box-shadow:var(--sh);border:1px solid var(--border)}
.auth-title{font-family:'Lora',serif;font-size:22px;font-weight:700;margin-bottom:6px}
.auth-sub{font-size:14px;color:var(--soft);margin-bottom:28px;line-height:1.5}
.auth-foot{text-align:center;margin-top:20px;font-size:14px;color:var(--soft)}
.auth-err{background:#FEF2F2;color:#DC2626;border-radius:6px;padding:10px 14px;font-size:13px;margin-bottom:16px;border:1px solid #FECACA}

/* SELECTOR IDIOMA EN REGISTRO */
.lang-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin-bottom:24px}
.lang-opt{display:flex;align-items:center;gap:10px;padding:12px 14px;border-radius:var(--rs);border:2px solid var(--border);cursor:pointer;transition:all .18s;background:var(--bg)}
.lang-opt:hover{border-color:var(--il)}
.lang-opt.on{border-color:var(--indigo);background:var(--ip)}
.lang-flag{width:28px;height:28px;border-radius:50%;overflow:hidden;flex-shrink:0}
.lang-name{font-size:13px;font-weight:600;color:var(--soft)}
.lang-opt.on .lang-name{color:var(--indigo)}

/* ── HEADER APP ── */
.hdr{position:sticky;top:0;z-index:100;display:flex;align-items:center;justify-content:space-between;padding:14px 20px;background:rgba(249,246,240,.94);backdrop-filter:blur(16px);border-bottom:1px solid var(--border)}
.logo{display:flex;align-items:center;gap:9px;cursor:pointer}
.logo-m{display:none}
.logo-t{display:none}
.logo-text{font-family:'Lora',serif;font-size:19px;font-weight:700;color:var(--text);letter-spacing:0.5px;line-height:1}
.logo-text .lt{color:var(--indigo);font-size:23px}
.nav{display:flex;gap:2px}
.np{border:none;background:transparent;cursor:pointer;padding:7px 12px;border-radius:8px;font-family:'Inter',sans-serif;font-size:13px;font-weight:500;color:var(--soft);transition:all .18s}
.np.on{background:var(--ip);color:var(--indigo);font-weight:600}
.np:hover:not(.on){background:var(--bs);color:var(--text)}
.av{width:34px;height:34px;border-radius:50%;background:var(--indigo);border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;color:#fff;font-size:13px;font-weight:700;flex-shrink:0}
.pm-wrap{position:absolute;top:60px;right:16px;z-index:200;background:#fff;border-radius:var(--rs);border:1px solid var(--border);box-shadow:var(--sh2);min-width:200px;overflow:hidden}
.pm-hdr{padding:14px 16px;border-bottom:1px solid var(--bs)}
.pm-name{font-size:14px;font-weight:700}.pm-email{font-size:12px;color:var(--mute)}
.pm-item{display:flex;align-items:center;gap:10px;padding:12px 16px;font-size:14px;color:var(--text);cursor:pointer;border:none;background:none;width:100%;text-align:left;font-family:'Inter',sans-serif;font-weight:500;transition:background .15s}
.pm-item:hover{background:var(--bs)}.pm-item.danger{color:#DC2626}

/* ── RACHA ── */
.racha{display:flex;align-items:center;gap:14px;background:#fff;border:1px solid var(--border);border-radius:var(--r);padding:14px 18px;margin:16px 20px 0;box-shadow:var(--sh)}
.racha-ic{font-size:28px;line-height:1}
.racha-inf{flex:1}
.racha-top{display:flex;align-items:baseline;gap:5px;margin-bottom:6px}
.racha-n{font-size:22px;font-weight:700;color:var(--text)}
.racha-lb{font-size:13px;color:var(--soft);font-weight:500}
.rb-bg{height:5px;background:var(--border);border-radius:3px;overflow:hidden;margin-bottom:4px}
.rb-fill{height:100%;background:linear-gradient(90deg,var(--il),var(--indigo));border-radius:3px;transition:width .5s}
.racha-mt{font-size:11px;color:var(--mute)}

/* ── INICIO ── */
.imain{padding-bottom:48px}
.hero-app{padding:28px 20px 20px}
.hero-app-t{font-family:'Lora',serif;font-size:28px;line-height:1.25;font-weight:700;margin-bottom:10px}
.hero-app-s{font-size:14px;color:var(--soft);line-height:1.7}

/* IDIOMA ACTIVO BADGE */
.idioma-activo{display:flex;align-items:center;gap:12px;background:#fff;border-radius:var(--rs);padding:14px 16px;border:1.5px solid var(--indigo);box-shadow:0 0 0 3px rgba(99,102,241,.08)}
.ia-flag{width:36px;height:36px;border-radius:50%;overflow:hidden;flex-shrink:0}
.ia-info{flex:1}
.ia-label{font-size:11px;text-transform:uppercase;letter-spacing:.5px;color:var(--mute);font-weight:600;display:block;margin-bottom:2px}
.ia-name{font-size:16px;font-weight:700;color:var(--text)}
.ia-change{font-size:12px;color:var(--indigo);font-weight:600;background:none;border:none;cursor:pointer;font-family:'Inter',sans-serif}

/* SECCIÓN */
.sec{padding:24px 20px 0}
.sec-hdr{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px}
.sec-t{font-size:12px;font-weight:700;color:var(--text);text-transform:uppercase;letter-spacing:.6px}
.ver-t{background:none;border:none;cursor:pointer;font-size:13px;color:var(--indigo);font-weight:600;font-family:'Inter',sans-serif}

/* PROGRESO INMERSIÓN INFO */
.imm-info{background:var(--ip);border-radius:var(--rs);padding:14px 16px;border:1px solid rgba(99,102,241,.15)}
.imm-info-t{font-size:13px;font-weight:600;color:var(--indigo);margin-bottom:4px}
.imm-info-s{font-size:12px;color:var(--soft);line-height:1.5}

/* LIBROS */
.lb-scroll{display:flex;gap:14px;padding:4px 20px 24px;overflow-x:auto;scrollbar-width:none}
.lb-scroll::-webkit-scrollbar{display:none}
.lb-card{flex:0 0 148px;border-radius:var(--r);background:#fff;box-shadow:var(--sh);overflow:hidden;cursor:pointer;transition:all .2s;border:1px solid var(--border)}
.lb-card:hover{transform:translateY(-3px);box-shadow:var(--sh2)}
.lb-cov{height:100px;display:flex;align-items:center;justify-content:center;font-size:40px;position:relative}
.lb-cov.grimm{background:linear-gradient(135deg,#e0e7ff,#c7d2fe)}
.lb-cov.andersen{background:linear-gradient(135deg,#dbeafe,#bfdbfe)}
.lb-cov.perrault{background:linear-gradient(135deg,#fee2e2,#fecaca)}
.lb-cov.esopo{background:linear-gradient(135deg,#fef3c7,#fde68a)}
.lb-cov.mito{background:linear-gradient(135deg,#cffafe,#a5f3fc)}
.lb-cov.clasicos{background:linear-gradient(135deg,#dcfce7,#bbf7d0)}
.lb-cov.wilde{background:linear-gradient(135deg,#fce7f3,#fbcfe8)}
.premium-book-cover.grimm,.premium-book-cover.grimm{background:linear-gradient(135deg,#e0e7ff,#c7d2fe)}
.premium-book-cover.andersen{background:linear-gradient(135deg,#dbeafe,#bfdbfe)}
.premium-book-cover.perrault{background:linear-gradient(135deg,#fee2e2,#fecaca)}
.premium-book-cover.esopo{background:linear-gradient(135deg,#fef3c7,#fde68a)}
.premium-book-cover.mito{background:linear-gradient(135deg,#cffafe,#a5f3fc)}
.premium-book-cover.clasicos{background:linear-gradient(135deg,#dcfce7,#bbf7d0)}
.premium-book-cover.wilde{background:linear-gradient(135deg,#fce7f3,#fbcfe8)}
.lb-prem{position:absolute;top:8px;right:8px;background:var(--indigo);color:#fff;font-size:9px;font-weight:700;padding:2px 7px;border-radius:4px;letter-spacing:.5px}
.lb-inf{padding:10px 12px 12px}
.lb-cat{font-size:10px;text-transform:uppercase;letter-spacing:.7px;color:var(--indigo);font-weight:700;display:block;margin-bottom:3px}
.lb-tit{font-size:13px;font-weight:700;color:var(--text);line-height:1.3;font-family:'Lora',serif;display:block;margin-bottom:2px}
.lb-aut{font-size:11px;color:var(--mute);display:block}
.lb-prog{height:3px;background:var(--border);border-radius:2px;margin-top:8px;overflow:hidden}
.lb-prog-fill{height:100%;background:var(--indigo);border-radius:2px}

/* BIBLIOTECA */
.pmain{padding:20px 20px 48px}
.ptit{font-family:'Lora',serif;font-size:26px;font-weight:700;margin-bottom:20px}
/* ── BIBLIOTECA — Grid de portadas ── */
.lb-list{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}
/* Tarjeta-portada vertical */
.lb-row{display:flex;flex-direction:column;background:#fff;border-radius:12px;
  cursor:pointer;box-shadow:0 2px 8px rgba(0,0,0,.07);
  border:1px solid rgba(226,232,240,.7);
  transition:box-shadow .2s,transform .2s;overflow:hidden;padding:0}
.lb-row:hover{transform:translateY(-4px);box-shadow:0 12px 32px rgba(0,0,0,.14)}
.lb-row.blk{opacity:.55}
/* Portada: zona de color con emoji */
.lb-rc{width:100%;aspect-ratio:3/4;display:flex;align-items:center;justify-content:center;
  font-size:52px;position:relative;flex-shrink:0;background:linear-gradient(135deg,#f8fafc,#eef2ff)}
.lb-rc.grimm{background:linear-gradient(160deg,#e0e7ff 0%,#c7d2fe 100%)}
.lb-rc.andersen{background:linear-gradient(160deg,#dbeafe 0%,#bfdbfe 100%)}
.lb-rc.perrault{background:linear-gradient(160deg,#fee2e2 0%,#fecaca 100%)}
.lb-rc.esopo{background:linear-gradient(160deg,#fef3c7 0%,#fde68a 100%)}
.lb-rc.mito{background:linear-gradient(160deg,#cffafe 0%,#a5f3fc 100%)}
.lb-rc.clasicos{background:linear-gradient(160deg,#dcfce7 0%,#bbf7d0 100%)}
.lb-rc.wilde{background:linear-gradient(160deg,#fce7f3 0%,#fbcfe8 100%)}
.lo{position:absolute;inset:0;background:rgba(15,23,42,.35);
  display:flex;align-items:center;justify-content:center;font-size:20px}
/* Info debajo de la portada */
.lb-ri{padding:10px 12px 12px;flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}
.badge-pr{background:var(--indigo);color:#fff;font-size:9px;font-weight:700;
  padding:3px 7px;border-radius:6px;letter-spacing:.5px;white-space:nowrap;align-self:flex-start}

/* ── LECTOR — Experiencia "Santuario" ── */
.lec-wrap{display:flex;flex-direction:column;min-height:100vh;background:#F9F6F0;overflow-y:auto;height:100vh}
@keyframes spin{to{transform:rotate(360deg)}}
.lec-hdr{display:flex;align-items:center;justify-content:space-between;padding:14px 16px;background:#fff;border-bottom:1px solid var(--border);position:sticky;top:0;z-index:100}
.btn-v{background:none;border:none;cursor:pointer;font-size:14px;font-weight:600;color:var(--indigo);font-family:'Inter',sans-serif;padding:4px 0}
.lec-th{font-size:14px;font-weight:600;color:var(--text);font-family:'Lora',serif;max-width:160px;text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.lec-badge{display:flex;align-items:center;gap:5px;background:var(--ip);border-radius:20px;padding:5px 10px;font-size:12px;font-weight:700;color:var(--indigo)}
.prog-wrap{height:3px;background:var(--border);position:sticky;top:57px;z-index:99;flex-shrink:0}
.prog-fill{height:100%;background:linear-gradient(90deg,var(--il),var(--indigo));transition:width .2s}
.imm-strip{background:#fff;border-bottom:1px solid var(--bs);padding:10px 16px;display:flex;align-items:center;gap:12px}
.imm-strip-l{font-size:11px;color:var(--mute);white-space:nowrap}
.imm-strip-v{display:none}
.imm-strip-bar{flex:1;height:4px;background:var(--border);border-radius:2px;margin:0 12px;overflow:hidden}
.imm-strip-fill{height:100%;background:linear-gradient(90deg,var(--il),var(--indigo));border-radius:2px;transition:width .5s}
.lec-main{padding:40px 24px 80px;flex:1}
.lec-main-inner{max-width:680px;margin:0 auto}
.cap-t{font-family:'Lora',serif;font-size:21px;font-weight:700;margin-bottom:6px}
.cap-lb{font-size:13px;color:var(--mute);margin-bottom:24px}
.sep{height:2px;background:linear-gradient(90deg,var(--indigo),transparent);border-radius:1px;margin-bottom:28px;width:60px}
.txt{font-family:'Lora',serif;font-size:18px;line-height:2;color:var(--text)}
.par{margin-bottom:1.8em}
/* Palabras mágicas — elegantes y sutiles */
.pal-n{color:#4F46E5;font-weight:500;cursor:pointer;
  text-decoration:underline;text-decoration-style:dashed;
  text-decoration-thickness:1px;text-underline-offset:4px;
  text-decoration-color:rgba(129,140,248,.5);
  border-bottom:none;position:relative;
  transition:color .15s,background .15s,text-decoration-color .15s}
.pal-n:hover{color:#3730A3;background:rgba(238,242,255,.7);border-radius:3px;
  text-decoration-color:rgba(99,102,241,.8)}
.tt{display:none;position:absolute;bottom:calc(100% + 8px);left:50%;transform:translateX(-50%);background:var(--text);color:#fff;border-radius:9px;padding:7px 12px;font-size:12px;white-space:nowrap;z-index:300;box-shadow:0 4px 16px rgba(0,0,0,.2);font-family:'Inter',sans-serif;pointer-events:none;align-items:center;gap:6px}
.tt::after{content:'';position:absolute;top:100%;left:50%;transform:translateX(-50%);border:5px solid transparent;border-top-color:var(--text)}
.pal-n:hover .tt{display:flex}
.to{color:rgba(255,255,255,.6);font-size:11px}.ta{color:var(--il)}.tn{font-weight:600}
.frase-idioma{color:var(--indigo);font-weight:500;cursor:pointer;background:var(--ip);border-radius:6px;padding:2px 4px;margin:-2px -4px;position:relative;transition:background .15s}
.frase-idioma:hover{background:#e0e7ff}
.tt-frase{display:none;position:absolute;top:calc(100% + 8px);left:0;right:0;background:var(--text);color:#fff;border-radius:9px;padding:10px 14px;font-size:13px;z-index:300;box-shadow:0 4px 16px rgba(0,0,0,.25);font-family:'Inter',sans-serif;pointer-events:none;font-weight:400;line-height:1.5;white-space:normal}
.tt-frase .ta{color:var(--il);font-weight:700;font-size:11px;text-transform:uppercase;margin-right:4px}
.tt-frase::before{content:'';position:absolute;bottom:100%;left:20px;border:5px solid transparent;border-bottom-color:var(--text)}
.frase-idioma:hover .tt-frase{display:block}
.to{color:rgba(255,255,255,.5);text-decoration:line-through;font-size:11px}
.ta{color:var(--il);font-size:11px}
.tn{color:#fff}
.leyenda{margin-top:36px;padding:14px 16px;background:var(--ip);border-radius:var(--rs);font-size:13px;color:var(--soft);line-height:1.6}

/* CAP NAV */
.cap-nav{display:flex;gap:10px;margin-top:36px}

/* MODAL CAMBIO IDIOMA */
.modal-bg{position:fixed;inset:0;background:rgba(15,23,42,.5);z-index:500;display:flex;align-items:flex-end;justify-content:center}
.modal{background:#fff;border-radius:20px 20px 0 0;padding:28px 24px 40px;width:100%;max-width:480px;max-height:90vh;overflow-y:auto}
.modal-t{font-family:'Lora',serif;font-size:20px;font-weight:700;margin-bottom:8px}
.modal-s{font-size:14px;color:var(--soft);margin-bottom:24px;line-height:1.5}

.preview-banner{background:linear-gradient(145deg,#eef2ff,#ffffff);border:1px solid rgba(99,102,241,.18);border-radius:18px;padding:18px 18px 16px;margin-bottom:22px;box-shadow:0 10px 24px rgba(99,102,241,.08)}
.preview-banner-k{font-size:11px;text-transform:uppercase;letter-spacing:.7px;font-weight:800;color:var(--indigo);margin-bottom:6px}
.preview-banner-t{font-size:20px;font-weight:800;color:var(--text);font-family:'Lora',serif;margin-bottom:6px}
.preview-banner-s{font-size:14px;color:var(--soft);line-height:1.6}
.preview-actions{display:flex;flex-direction:column;gap:10px;margin-top:18px}

.premium-main{max-width:960px!important}
.premium-hero{background:linear-gradient(145deg,#f8faff 0%,#eef2ff 55%,#ffffff 100%);border:1px solid rgba(99,102,241,.14);border-radius:24px;padding:26px;box-shadow:0 20px 40px rgba(15,23,42,.06);margin-top:10px;margin-bottom:18px}
.premium-kicker{font-size:11px;text-transform:uppercase;letter-spacing:.75px;font-weight:800;color:var(--indigo);margin-bottom:8px}
.premium-title{font-family:'Lora',serif;font-size:38px;font-weight:700;line-height:1.1;color:var(--text);margin-bottom:12px}
.premium-sub{font-size:15px;color:var(--soft);line-height:1.7;max-width:760px}
.premium-book{display:flex;align-items:center;gap:14px;background:#fff;border:1px solid var(--border);border-radius:18px;padding:14px;margin-top:18px;max-width:520px}
.premium-book-cover{width:74px;aspect-ratio:3/4;border-radius:14px;display:flex;align-items:center;justify-content:center;font-size:34px;flex-shrink:0;box-shadow:var(--sh)}
.premium-book-t{font-size:16px;font-weight:800;color:var(--text);margin-bottom:4px}
.premium-book-s{font-size:13px;color:var(--soft)}
.premium-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:18px}
.premium-card{background:#fff;border:1px solid var(--border);border-radius:22px;padding:22px;box-shadow:var(--sh)}
.premium-card-pro{background:linear-gradient(155deg,#1E1B4B 0%,#312E81 100%);border-color:#4338CA;box-shadow:0 18px 36px rgba(49,46,129,.22)}
.premium-card-k{font-size:11px;text-transform:uppercase;letter-spacing:.7px;font-weight:800;color:var(--mute);margin-bottom:8px}
.premium-card-pro .premium-card-k{color:#C7D2FE}
.premium-card-t{font-family:'Lora',serif;font-size:34px;font-weight:700;color:var(--text);line-height:1.1;margin-bottom:16px}
.premium-card-pro .premium-card-t{color:#fff}
.premium-card-pro .pricing-list li{color:rgba(255,255,255,.84)}
.premium-card-pro .pricing-list li::before{color:#C7D2FE}
.premium-actions{display:flex;flex-direction:column;gap:10px;margin-top:18px}

/* ── ACCESIBILIDAD LECTOR ── */
.lec-wrap.font-md .txt{font-size:18px}
.lec-wrap.font-lg .txt{font-size:22px}
.lec-wrap.font-xl .txt{font-size:26px}
.lec-wrap.dyslexic .txt,
.lec-wrap.dyslexic .cap-t,
.lec-wrap.dyslexic .cap-lb,
.lec-wrap.dyslexic .leyenda{font-family:'OpenDyslexic','Comic Sans MS','Trebuchet MS',sans-serif!important}
.lec-wrap.dyslexic .txt{line-height:2.2;letter-spacing:.06em;word-spacing:.2em}
.lec-wrap.dyslexic .pal-n,.lec-wrap.dyslexic .frase-idioma{font-family:'OpenDyslexic','Comic Sans MS','Trebuchet MS',sans-serif!important}
.acc-bar{display:flex;align-items:center;gap:8px;padding:10px 16px;background:rgba(249,246,240,.95);border-bottom:1px solid var(--border)}
.acc-btn{background:rgba(0,0,0,.05);border:none;border-radius:999px;padding:6px 14px;cursor:pointer;
  font-family:'Inter',sans-serif;font-size:13px;font-weight:600;color:#475569;
  transition:background .15s,color .15s}
.acc-btn:hover{background:rgba(238,242,255,.9);color:#4338CA}
.acc-btn.on{background:#EEF2FF;color:#4338CA;box-shadow:inset 0 0 0 1.5px rgba(99,102,241,.3)}
.acc-sep{width:1px;height:22px;background:var(--border);margin:0 2px}

/* ── ESTADÍSTICAS ── */
.stats-hero{background:linear-gradient(135deg,var(--indigo),var(--id));border-radius:var(--r);padding:24px;margin-bottom:20px;color:#fff}
.stats-level{display:flex;align-items:center;gap:16px;margin-bottom:16px}
.stats-rank-ico{width:56px;height:56px;background:rgba(255,255,255,.2);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:26px;flex-shrink:0}
.stats-rank-info{}
.stats-rank-n{font-size:13px;font-weight:600;opacity:.8;margin-bottom:2px}
.stats-rank-t{font-family:'Lora',serif;font-size:20px;font-weight:700}
.stats-xp-bar{height:8px;background:rgba(255,255,255,.25);border-radius:4px;overflow:hidden;margin-bottom:6px}
.stats-xp-fill{height:100%;background:#fff;border-radius:4px;transition:width .6s}
.stats-xp-txt{font-size:12px;opacity:.8}

.stats-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:20px}
.stat-card{background:#fff;border-radius:var(--rs);padding:16px;box-shadow:var(--sh);border:1px solid var(--border);text-align:center}
.stat-card-n{font-size:28px;font-weight:800;color:var(--indigo);font-family:'Lora',serif;line-height:1}
.stat-card-l{font-size:12px;color:var(--soft);margin-top:4px;font-weight:500}

/* PERFIL / DESAFÍO */
.challenge-hero{background:radial-gradient(circle at top right,rgba(255,255,255,.95),rgba(255,255,255,.55) 22%,transparent 22%),linear-gradient(145deg,#eef2ff 0%,#dde7ff 45%,#e9ecff 100%);border:1px solid rgba(99,102,241,.18);border-radius:22px;padding:24px;margin-bottom:18px;box-shadow:0 18px 40px rgba(99,102,241,.12)}
.challenge-hero-top{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:12px}
.challenge-kicker{font-size:11px;text-transform:uppercase;letter-spacing:.7px;font-weight:700;color:var(--indigo);margin-bottom:6px}
.challenge-big{font-family:'Lora',serif;font-size:34px;font-weight:700;color:var(--text);line-height:1.05}
.challenge-pill{background:rgba(255,255,255,.92);color:var(--indigo);font-size:12px;font-weight:800;border-radius:999px;padding:10px 14px;box-shadow:0 10px 24px rgba(99,102,241,.15)}
.challenge-sub{font-size:14px;color:var(--soft);line-height:1.7}
.profile-card,.profile-section{background:linear-gradient(180deg,#ffffff 0%,#fcfcff 100%);border-radius:22px;padding:22px;margin-bottom:16px;box-shadow:0 14px 34px rgba(15,23,42,.06);border:1px solid rgba(226,232,240,.9)}
.profile-head{display:flex;align-items:center;gap:14px}
.profile-avatar{width:58px;height:58px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--indigo),var(--id));color:#fff;font-size:22px;font-weight:800;flex-shrink:0;box-shadow:0 10px 24px rgba(99,102,241,.28)}
.profile-name{font-size:18px;font-weight:800;color:var(--text)}
.profile-email{font-size:13px;color:var(--soft);margin-top:2px}
.profile-meta{font-size:12px;color:var(--mute);margin-top:6px}
.profile-section-t{font-size:12px;font-weight:800;letter-spacing:.7px;text-transform:uppercase;color:var(--soft);margin-bottom:14px}
.setting-row{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 0;border-top:1px solid var(--bs)}
.setting-row:first-of-type{border-top:none;padding-top:0}
.setting-label{font-size:14px;font-weight:700;color:var(--text);margin-bottom:3px}
.setting-help{font-size:12px;color:var(--soft);line-height:1.5}
.setting-pills{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}
.setting-pill{padding:10px 13px;border-radius:999px;border:1.5px solid var(--border);background:#fff;cursor:pointer;font-size:12px;font-weight:700;color:var(--soft);font-family:'Inter',sans-serif;box-shadow:0 2px 8px rgba(15,23,42,.04)}
.setting-pill.on{background:var(--ip);border-color:var(--indigo);color:var(--indigo);box-shadow:0 8px 20px rgba(99,102,241,.15)}
.toggle{width:58px;height:34px;border:none;border-radius:999px;background:#D6DAE6;position:relative;cursor:pointer;transition:background .2s;flex-shrink:0}
.toggle.on{background:var(--indigo)}
.toggle-knob{position:absolute;top:4px;left:4px;width:26px;height:26px;border-radius:50%;background:#fff;box-shadow:0 2px 8px rgba(0,0,0,.16);transition:transform .2s}
.toggle.on .toggle-knob{transform:translateX(24px)}
.profile-link-btn{width:100%;display:flex;align-items:center;justify-content:space-between;padding:15px 16px;border-radius:14px;border:1.5px solid var(--border);background:#fff;cursor:pointer;font-size:14px;font-weight:700;color:var(--text);font-family:'Inter',sans-serif;margin-top:10px;box-shadow:0 3px 12px rgba(15,23,42,.04)}
.profile-link-btn:hover{border-color:var(--indigo);background:var(--ip)}
.profile-link-btn.danger{color:#DC2626;border-color:#FECACA}
.profile-link-btn.danger:hover{background:#FEF2F2;border-color:#FCA5A5}

.legal-hero,.legal-card{background:#fff;border-radius:22px;padding:22px;margin-bottom:16px;box-shadow:0 14px 34px rgba(15,23,42,.06);border:1px solid rgba(226,232,240,.9)}
.legal-kicker{font-size:12px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--indigo);margin-bottom:10px}
.legal-title{font-family:'Lora',serif;font-size:30px;line-height:1.18;color:var(--text);max-width:760px;margin-bottom:10px}
.legal-copy,.legal-card-copy{font-size:14px;line-height:1.7;color:#677287}
.legal-card-title{font-size:16px;font-weight:800;color:var(--text);margin-bottom:10px}
.legal-list{display:flex;flex-direction:column;gap:10px;margin-top:14px}
.legal-list-item{border:1px solid var(--border);border-radius:14px;padding:12px 14px;display:flex;flex-direction:column;gap:6px}
.legal-list-item-soft{display:flex;flex-direction:row;justify-content:space-between;gap:12px;flex-wrap:wrap;border-style:dashed}
.legal-list-top{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap}
.legal-list-book{font-size:14px;font-weight:800;color:var(--text)}
.legal-list-author{font-size:12px;font-weight:700;color:var(--soft)}
.legal-list-link{font-size:13px}
.legal-list-note{font-size:12px;color:var(--soft)}

.ui-toast{position:fixed;right:22px;bottom:22px;z-index:1100;display:flex;gap:14px;align-items:flex-start;max-width:360px;padding:14px 16px;border-radius:18px;background:#fff;border:1px solid rgba(226,232,240,.9);box-shadow:0 24px 54px rgba(15,23,42,.16)}
.ui-toast.info{border-color:rgba(99,102,241,.18)}
.ui-toast.success{border-color:rgba(34,197,94,.22)}
.ui-toast.error{border-color:rgba(239,68,68,.22)}
.ui-toast-copy{display:flex;flex-direction:column;gap:3px}
.ui-toast-title{font-size:14px;font-weight:800;color:var(--text)}
.ui-toast-body{font-size:13px;line-height:1.6;color:#677287}
.ui-toast-close{background:none;border:none;color:var(--soft);font-size:22px;line-height:1;cursor:pointer;padding:0 2px}

.confirm-backdrop{position:fixed;inset:0;z-index:1200;background:rgba(15,23,42,.44);display:flex;align-items:center;justify-content:center;padding:20px}
.confirm-card{width:min(100%,460px);background:#fff;border-radius:24px;padding:24px;border:1px solid rgba(226,232,240,.9);box-shadow:0 28px 64px rgba(15,23,42,.22)}
.confirm-kicker{font-size:11px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:var(--indigo);margin-bottom:10px}
.confirm-title{font-family:'Lora',serif;font-size:28px;line-height:1.16;color:var(--text);margin-bottom:10px}
.confirm-body{font-size:15px;line-height:1.7;color:#677287;margin-bottom:18px}
.confirm-actions{display:flex;gap:10px;flex-wrap:wrap}
.confirm-actions .btn-p,.confirm-actions .btn-g{width:auto;min-width:160px;border-radius:999px}
.confirm-actions .btn-p.danger{background:#DC2626}
.confirm-actions .btn-p.danger:hover{background:#B91C1C}

:focus-visible{outline:3px solid rgba(99,102,241,.45);outline-offset:3px}
.btn-p:focus-visible,.btn-g:focus-visible,.faq-q:focus-visible,.profile-link-btn:focus-visible,.setting-pill:focus-visible,.toggle:focus-visible,.sidebar-item:focus-visible,.bib-chip:focus-visible,.filter-group-btn:focus-visible,.quiz-opt:focus-visible,.quiz-btn:focus-visible,.challenge-option:focus-visible,.challenge-value:focus-visible{outline:3px solid rgba(99,102,241,.4);outline-offset:3px}

.challenge-panel{background:#fff;border-radius:22px;padding:20px;margin-bottom:16px;box-shadow:var(--sh);border:1px solid var(--border)}
.challenge-panel-head{margin-bottom:16px}
.challenge-panel-title{font-size:16px;font-weight:800;color:var(--text);margin-bottom:4px}
.challenge-panel-copy{font-size:13px;line-height:1.6;color:var(--soft)}
.challenge-options{display:flex;flex-direction:column;gap:10px}
.challenge-option{border:1.5px solid var(--border);border-radius:14px;padding:14px 15px;cursor:pointer;background:var(--bg);transition:border-color .2s,background .2s,transform .2s}
.challenge-option:hover{transform:translateY(-1px);border-color:rgba(99,102,241,.42)}
.challenge-option.on{border-color:var(--indigo);background:var(--ip)}
.challenge-option-label{font-size:14px;font-weight:700;color:var(--text)}
.challenge-option-values{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}
.challenge-value{flex:1;min-width:52px;padding:8px 4px;border-radius:10px;border:1.5px solid var(--border);background:#fff;color:var(--text);cursor:pointer;font-size:14px;font-weight:700;font-family:'Inter',sans-serif}
.challenge-value.on{background:var(--indigo);border-color:var(--indigo);color:#fff}

/* BADGES */
.badges-sec{margin-bottom:20px}
.badges-cat{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;color:var(--soft);margin-bottom:10px}
.badges-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:16px}
.badge-card{background:#fff;border-radius:var(--rs);padding:12px 8px;text-align:center;border:1.5px solid var(--border);box-shadow:var(--sh);transition:all .2s}
.badge-card.unlocked{border-color:var(--indigo);background:var(--ip)}
.badge-card.locked{opacity:.45;filter:grayscale(1)}
.badge-ico{font-size:28px;margin-bottom:6px;display:block}
.badge-name{font-size:11px;font-weight:700;color:var(--text);line-height:1.3}
.badge-hint{font-size:10px;color:var(--soft);margin-top:3px;line-height:1.3}

/* ── PRÁCTICA ── */
.prac-hero{background:#fff;border-radius:var(--r);padding:20px;margin-bottom:16px;border:1px solid var(--border);box-shadow:var(--sh)}
.prac-modes{display:flex;flex-direction:column;gap:12px;margin-bottom:20px}
.prac-mode{background:#fff;border-radius:var(--r);padding:20px;border:1.5px solid var(--border);box-shadow:var(--sh);cursor:pointer;transition:all .2s;display:flex;align-items:center;gap:16px}
.prac-mode:hover{border-color:var(--indigo);transform:translateY(-1px);box-shadow:var(--sh2)}
.prac-mode-ico{font-size:32px;flex-shrink:0}
.prac-mode-info{flex:1}
.prac-mode-t{font-size:15px;font-weight:700;margin-bottom:3px}
.prac-mode-s{font-size:13px;color:var(--soft);line-height:1.4}
.prac-mode-badge{font-size:11px;font-weight:700;padding:3px 8px;border-radius:6px;background:var(--ip);color:var(--indigo);flex-shrink:0}

/* QUIZ */
.quiz-wrap{min-height:100vh;display:flex;flex-direction:column;background:var(--bg)}
.quiz-hdr{padding:16px;background:#fff;border-bottom:1px solid var(--border);display:flex;align-items:center;gap:12px}
.quiz-prog{flex:1;height:8px;background:var(--border);border-radius:4px;overflow:hidden}
.quiz-prog-fill{height:100%;background:var(--indigo);border-radius:4px;transition:width .3s}
.quiz-lives{display:flex;gap:4px}
.quiz-life{font-size:18px;transition:transform .2s}
.quiz-life.lost{transform:scale(.7);opacity:.3}
.quiz-body{flex:1;padding:28px 20px;display:flex;flex-direction:column;gap:24px}
.quiz-q-type{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;color:var(--indigo)}
.quiz-q-word{font-size:32px;font-weight:800;font-family:'Lora',serif;color:var(--text);line-height:1.2}
.quiz-q-ctx{font-size:15px;color:var(--soft);line-height:1.6;background:#fff;border-radius:var(--rs);padding:14px 16px;border:1px solid var(--border)}
.quiz-q-ctx .blank{display:inline-block;min-width:80px;height:2px;background:var(--indigo);border-radius:1px;vertical-align:middle;margin:0 4px}
.quiz-opts{display:flex;flex-direction:column;gap:10px}
.quiz-opt{background:#fff;border:2px solid var(--border);border-radius:var(--rs);padding:14px 18px;cursor:pointer;font-size:15px;font-weight:500;text-align:left;font-family:'Inter',sans-serif;transition:all .15s;color:var(--text)}
.quiz-opt:hover{border-color:var(--indigo);background:var(--ip)}
.quiz-opt.correct{border-color:#22C55E;background:#F0FDF4;color:#15803D}
.quiz-opt.wrong{border-color:#EF4444;background:#FEF2F2;color:#B91C1C}
.quiz-opt.reveal{border-color:#22C55E;background:#F0FDF4;color:#15803D;opacity:.6}
.quiz-opt:disabled{cursor:default}
.quiz-write{width:100%;padding:14px 16px;border-radius:var(--rs);border:2px solid var(--border);font-size:16px;font-family:'Lora',serif;color:var(--text);background:#fff;outline:none;transition:border-color .15s}
.quiz-write:focus{border-color:var(--indigo)}
.quiz-write.correct{border-color:#22C55E;background:#F0FDF4}
.quiz-write.wrong{border-color:#EF4444;background:#FEF2F2}
.quiz-feedback{padding:16px 20px;border-radius:var(--rs);font-size:15px;font-weight:600;display:flex;align-items:center;gap:10px}
.quiz-feedback.ok{background:#F0FDF4;color:#15803D;border:1px solid #BBF7D0}
.quiz-feedback.ko{background:#FEF2F2;color:#B91C1C;border:1px solid #FECACA}
.quiz-next{margin-top:auto;padding:16px 20px}
.quiz-btn{width:100%;padding:14px;border-radius:var(--rs);background:var(--indigo);color:#fff;border:none;cursor:pointer;font-size:15px;font-weight:700;font-family:'Inter',sans-serif}

/* RESULT */
.quiz-result{padding:40px 24px;text-align:center;display:flex;flex-direction:column;align-items:center;gap:20px}
.quiz-result-ico{font-size:64px}
.quiz-result-t{font-family:'Lora',serif;font-size:26px;font-weight:700}
.quiz-result-s{font-size:15px;color:var(--soft);line-height:1.6}
.quiz-xp-earn{background:var(--ip);border-radius:var(--rs);padding:16px 24px;width:100%;display:flex;align-items:center;justify-content:center;gap:10px}
.quiz-xp-n{font-size:28px;font-weight:800;color:var(--indigo);font-family:'Lora',serif}
.quiz-xp-l{font-size:14px;color:var(--soft)}

/* WORD STARS */
.word-stars{display:flex;gap:3px;margin-top:4px}
.wstar{font-size:12px;transition:transform .2s}
.wstar.on{transform:scale(1.2)}

/* TOAST ACHIEVEMENT */
.ach-toast{position:fixed;top:24px;left:50%;transform:translateX(-50%);background:linear-gradient(135deg,var(--indigo),var(--id));color:#fff;border-radius:var(--r);padding:14px 20px;display:flex;align-items:center;gap:12px;box-shadow:0 8px 32px rgba(99,102,241,.4);z-index:999;animation:ach-in .4s cubic-bezier(.17,.67,.35,1.2);max-width:340px;width:90%}
.ach-toast-ico{font-size:28px;flex-shrink:0}
.ach-toast-t{font-weight:700;font-size:14px}
.ach-toast-s{font-size:12px;opacity:.85;margin-top:2px}
@keyframes ach-in{from{opacity:0;transform:translateX(-50%) translateY(-20px)}to{opacity:1;transform:translateX(-50%) translateY(0)}}

/* ══════════════════════════════════════════════════════════
   RESPONSIVE DESKTOP — sidebar layout ≥ 768px
   ══════════════════════════════════════════════════════════ */

/* Ocultar header top-bar en desktop */
@media(min-width:768px){
  /* En desktop no forzamos flex global en body, porque rompe landing/login
     y los deja encogidos hacia la izquierda. */
  body{min-height:100vh}
  .landing,.auth{width:100%}
  .hero-sec{padding:82px 24px 56px}
  .hero-h{font-size:54px;max-width:880px;margin-left:auto;margin-right:auto}
  .hero-sub{max-width:640px;font-size:18px}
  .landing-lead{font-size:16px}
  .hero-btns{max-width:420px}
  .hero-kpi-n{font-size:34px}

  /* SIDEBAR */
  .sidebar-desktop{
    width:240px;flex-shrink:0;background:#fff;
    border-right:1px solid var(--border);
    display:flex;flex-direction:column;
    position:fixed;top:0;left:0;bottom:0;z-index:200;
    overflow-y:auto;
  }
  .sidebar-logo{
    padding:24px 20px 20px;
    border-bottom:1px solid var(--border);
  }
  .sidebar-nav{
    padding:16px 12px;flex:1;display:flex;flex-direction:column;gap:4px;
  }
  .sidebar-item{
    display:flex;align-items:center;gap:12px;
    padding:11px 14px;border-radius:var(--rs);
    cursor:pointer;border:none;background:none;
    font-family:'Inter',sans-serif;font-size:14px;font-weight:500;
    color:var(--soft);width:100%;text-align:left;transition:all .15s;
  }
  .sidebar-item:hover{background:var(--bs);color:var(--text)}
  .sidebar-item.on{background:var(--ip);color:var(--indigo);font-weight:700}
  .sidebar-item-ico{font-size:18px;width:22px;text-align:center;flex-shrink:0}
  .sidebar-footer{
    padding:16px 12px;border-top:1px solid var(--border);
  }
  .sidebar-user{
    display:flex;align-items:center;gap:10px;padding:10px 12px;
    border-radius:var(--rs);cursor:pointer;position:relative;
    transition:background .15s;
    width:100%;border:none;background:#fff;font-family:'Inter',sans-serif;text-align:left;
  }
  .sidebar-user:hover{background:var(--bs)}
  .sidebar-avatar{
    width:36px;height:36px;border-radius:50%;
    background:var(--indigo);color:#fff;
    display:flex;align-items:center;justify-content:center;
    font-size:14px;font-weight:700;flex-shrink:0;
  }
  .sidebar-user-name{font-size:14px;font-weight:600;color:var(--text)}
  .sidebar-user-email{font-size:12px;color:var(--mute)}
  .sidebar-user-arrow{font-size:14px;color:var(--mute);flex-shrink:0}
  .sidebar-xp{
    margin-top:12px;padding:10px 12px;
    background:var(--ip);border-radius:var(--rs);
  }
  .sidebar-xp-rank{font-size:12px;font-weight:700;color:var(--indigo);margin-bottom:4px}
  .sidebar-xp-bar{height:4px;background:rgba(99,102,241,.2);border-radius:2px;overflow:hidden}
  .sidebar-xp-fill{height:100%;background:var(--indigo);border-radius:2px;transition:width .4s}
  .sidebar-xp-meta{font-size:11px;color:var(--soft);font-weight:700;margin-top:6px}

  /* APP CONTENT desplazado a la derecha del sidebar */
  .app{
    max-width:none;
    width:calc(100% - 240px);
    margin-left:240px;
    min-height:100vh;
  }

  /* Ocultar el header sticky mobile dentro del app */
  .hdr{display:none!important}

  /* Pantallas con contenido ancho — ocupan todo el espacio del app */
  .imain,.pmain,.stats-main,.prac-main{
    max-width:900px;margin:0 auto;padding:32px 40px 60px;
  }

  /* Grid de libros: 3 columnas en desktop */
  .lb-list{grid-template-columns:repeat(3,1fr);gap:20px}

  /* Libros carrusel: más tarjetas visibles */
  .lb-scroll{padding:4px 0 24px;gap:16px}
  .lb-card{flex:0 0 160px}

  /* Stats grid: 4 columnas */
  .stats-grid{grid-template-columns:repeat(4,1fr)}

  /* Badges: 4 columnas */
  .badges-grid{grid-template-columns:repeat(4,1fr)}

  /* Práctica: modos en fila */
  .prac-modes{flex-direction:row}
  .prac-mode{flex:1}

  /* Quiz: ocupa espacio tras sidebar, contenido centrado */
  .quiz-wrap{margin-left:240px;min-height:100vh;width:calc(100% - 240px);display:flex;flex-direction:column}
  .quiz-hdr,.quiz-body,.quiz-next,.quiz-result{max-width:640px;margin-left:auto;margin-right:auto;width:100%;padding-left:24px;padding-right:24px}

  /* Libro completado */
  .lc-content{margin-left:240px;width:calc(100% - 240px)}

  /* Inicio: hero más grande */
  .hero-app-t{font-size:36px}

  /* Racha: más padding */
  .racha{margin:24px 0 0}
  .sec{padding:28px 0 0}

  /* Lector: ocupa el espacio restante después del sidebar, columna central */
  .lec-wrap{
    margin-left:240px;
    width:calc(100% - 240px);
    min-height:100vh;
    display:flex;
    flex-direction:column;
  }
  .lec-main{
    width:100%;
    display:flex;
    justify-content:center;
    padding:48px 40px 80px;
  }
  .lec-main-inner{width:100%;max-width:720px;margin:0 auto}

  /* Modal centrado */
  .modal-bg{align-items:center}
  .modal{border-radius:var(--r);max-width:480px;padding:36px}
  .profile-head{align-items:center}
  .setting-row{gap:24px}
}

/* Tablet intermedio */
@media(min-width:768px) and (max-width:1024px){
  .sidebar-desktop{width:200px}
  .app{margin-left:200px;width:calc(100% - 200px)}
  .lec-wrap{margin-left:200px;width:calc(100% - 200px)}
  .quiz-wrap{margin-left:200px;width:calc(100% - 200px)}
  .stats-grid{grid-template-columns:repeat(2,1fr)}
  .badges-grid{grid-template-columns:repeat(3,1fr)}
}

/* Mobile: sidebar oculto, hdr visible */
@media(max-width:767px){
  .sidebar-desktop{display:none!important}
  .app{max-width:480px;margin:0 auto}
  .hdr{display:flex!important}
  .setting-row{flex-direction:column;align-items:flex-start}
  .hero-trust{flex-direction:column;gap:10px}
  .hero-kpis{grid-template-columns:1fr}
  .pricing-grid{grid-template-columns:1fr}
  .proof-grid{grid-template-columns:1fr}
  .premium-title{font-size:30px}
  .premium-book{align-items:flex-start}
  .setting-pills{justify-content:flex-start}
}

/* ── LIBRO COMPLETADO ── */
.libro-completado{
  display:flex;min-height:100vh;background:var(--bg);
}
.lc-content{
  flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;
  padding:40px 24px;text-align:center;
}
.lc-confetti{font-size:64px;margin-bottom:16px;animation:lc-bounce .6s ease-in-out}
@keyframes lc-bounce{0%,100%{transform:translateY(0)}50%{transform:translateY(-16px)}}
.lc-titulo{font-family:'Lora',serif;font-size:32px;font-weight:700;margin-bottom:8px;color:var(--text)}
.lc-sub{font-size:15px;color:var(--soft);line-height:1.6;margin-bottom:32px;max-width:320px}
.lc-stats{display:flex;gap:16px;margin-bottom:36px;flex-wrap:wrap;justify-content:center}
.lc-stat{background:#fff;border-radius:var(--r);padding:16px 24px;border:1px solid var(--border);box-shadow:var(--sh);text-align:center}
.lc-stat-n{font-size:28px;font-weight:800;color:var(--indigo);font-family:'Lora',serif}
.lc-stat-l{font-size:12px;color:var(--mute);margin-top:3px}
.lc-btns{display:flex;flex-direction:column;gap:10px;width:100%;max-width:320px}

/* ── BIBLIOTECA MEJORADA ── */
.bib-search-wrap{display:flex;align-items:center;gap:10px;margin-bottom:16px}
.bib-search-side{width:46px;height:46px;flex-shrink:0;display:flex;align-items:center;justify-content:center;border:1.5px solid var(--border);border-radius:14px;background:#fff;font-size:18px}
.bib-search{width:100%;padding:13px 16px;border:1.5px solid var(--border);border-radius:var(--rs);background:#fff;font-family:'Inter',sans-serif;font-size:15px;color:var(--text);outline:none;transition:border-color .2s,box-shadow .2s}
.bib-search:focus{border-color:var(--indigo);box-shadow:0 0 0 3px rgba(99,102,241,.1)}
.bib-search::placeholder{color:var(--mute)}

.bib-filters{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:20px;padding-bottom:16px;border-bottom:1px solid var(--border)}
.bib-chip{padding:6px 14px;border-radius:20px;font-size:12px;font-weight:600;cursor:pointer;border:1.5px solid var(--border);background:#fff;color:var(--soft);font-family:'Inter',sans-serif;transition:all .15s;white-space:nowrap}
.bib-chip:hover{border-color:var(--indigo);color:var(--indigo)}
.bib-chip.on{background:var(--indigo);color:#fff;border-color:var(--indigo)}

.bib-results-meta{font-size:12px;color:var(--mute);margin-bottom:12px;font-weight:500}

.lb-row-prog{height:3px;background:var(--border);border-radius:2px;margin-top:8px;overflow:hidden;width:100%}
.lb-row-prog-fill{height:100%;background:var(--indigo);border-radius:2px}

.bib-empty{text-align:center;padding:60px 20px;color:var(--soft)}
.bib-empty-ico{font-size:48px;margin-bottom:12px;opacity:.4}
.bib-empty-t{font-size:15px;font-weight:600;margin-bottom:6px}
.bib-empty-s{font-size:13px;line-height:1.5}

/* ── FILTROS AGRUPADOS BIBLIOTECA ── */
.bib-filter-groups{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:20px;padding-bottom:16px;border-bottom:1px solid var(--border)}
.bib-group{position:relative}
.bib-group-btn{display:flex;align-items:center;gap:6px;padding:7px 14px;border-radius:20px;font-size:12px;font-weight:600;cursor:pointer;border:1.5px solid var(--border);background:#fff;color:var(--soft);font-family:'Inter',sans-serif;transition:all .15s;white-space:nowrap}
.bib-group-btn:hover{border-color:var(--indigo);color:var(--indigo)}
.bib-group-btn.active{background:var(--indigo);color:#fff;border-color:var(--indigo)}
.bib-group-btn .arrow{font-size:9px;opacity:.6}
.bib-dropdown{position:absolute;top:calc(100% + 6px);left:0;background:#fff;border:1.5px solid var(--border);border-radius:var(--r);box-shadow:0 8px 24px rgba(0,0,0,.1);z-index:50;min-width:160px;overflow:hidden}
.bib-dropdown-item{padding:9px 16px;font-size:13px;cursor:pointer;color:var(--text);font-weight:500;transition:background .1s;white-space:nowrap;display:flex;align-items:center;justify-content:space-between;gap:10px}
.bib-dropdown-item:hover{background:var(--bs)}
.bib-dropdown-item.on{color:var(--indigo);font-weight:700;background:var(--ip)}
.bib-dropdown-item .check{font-size:11px}

/* ── QUIZ FALLO — 3 opciones ── */
.quiz-fail-opts{display:flex;flex-direction:column;gap:8px;margin-top:4px}
.quiz-fail-btn{padding:12px 16px;border-radius:var(--rs);border:1.5px solid var(--border);background:#fff;cursor:pointer;font-size:14px;font-weight:500;text-align:left;font-family:'Inter',sans-serif;color:var(--text);transition:all .15s;display:flex;align-items:center;gap:10px}
.quiz-fail-btn:hover{border-color:var(--indigo);background:var(--ip);color:var(--indigo)}
.quiz-fail-btn.retry{border-color:#F59E0B;color:#B45309}
.quiz-fail-btn.retry:hover{background:#FFFBEB;border-color:#F59E0B}
.quiz-fail-btn.hint{border-color:#8B5CF6;color:#6D28D9}
.quiz-fail-btn.hint:hover{background:#F5F3FF;border-color:#8B5CF6}
.quiz-hint-box{background:#F5F3FF;border:1px solid #DDD6FE;border-radius:var(--rs);padding:12px 16px;font-size:13px;color:#5B21B6;line-height:1.6}

/* === LANDING OVERRIDES 2026-03-24 === */
.landing{background:
  radial-gradient(circle at top left,rgba(99,102,241,.08),transparent 26%),
  radial-gradient(circle at 88% 14%,rgba(56,189,248,.08),transparent 22%),
  linear-gradient(180deg,#faf6ef 0%,#f7f1e8 38%,#fbf8f3 100%);
  min-height:100vh;overflow-x:hidden}
.section-wrap{max-width:1180px;margin:0 auto}
.lnav{background:rgba(250,246,239,.82);backdrop-filter:blur(18px);border-bottom:1px solid rgba(210,218,230,.55)}
.lnav-in{border-radius:999px}
.lnav-in:hover{background:rgba(255,255,255,.72)}
.lnav-reg{background:linear-gradient(135deg,var(--indigo),#7c7ff7);border-radius:999px;box-shadow:0 12px 26px rgba(99,102,241,.22);padding:10px 18px}
.lnav-reg:hover{background:linear-gradient(135deg,var(--id),#6366f1)}
.feat-label{font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:1.3px;color:var(--indigo);margin-bottom:14px}
.feat-h{font-family:'Lora',serif;font-size:38px;font-weight:700;color:var(--text);line-height:1.14;letter-spacing:-.02em;margin-bottom:18px}
.landing-lead{font-size:16px;color:#5d6678;line-height:1.78;max-width:700px;margin:0 auto}
.landing-lead-left{margin:0}

.hero-sec{padding:34px 24px 76px;position:relative;overflow:hidden;text-align:left}
.hero-aura{position:absolute;border-radius:999px;filter:blur(10px);pointer-events:none}
.hero-aura-left{width:460px;height:460px;background:radial-gradient(circle,rgba(99,102,241,.18) 0%,rgba(99,102,241,.06) 42%,transparent 72%);left:-140px;top:-120px}
.hero-aura-right{width:520px;height:520px;background:radial-gradient(circle,rgba(56,189,248,.16) 0%,rgba(56,189,248,.06) 40%,transparent 72%);right:-170px;top:10px}
.hero-shell{position:relative;display:grid;grid-template-columns:minmax(0,1.02fr) minmax(0,.98fr);gap:40px;align-items:center}
.hero-copy{position:relative;z-index:1;padding-top:24px}
.hero-badge{display:inline-flex;align-items:center;gap:8px;background:rgba(99,102,241,.1);color:var(--indigo);border-radius:999px;padding:8px 14px;font-size:11px;font-weight:800;letter-spacing:.05em;margin-bottom:22px;border:1px solid rgba(99,102,241,.18)}
.hero-h{font-family:'Lora',serif;font-size:68px;line-height:1.03;font-weight:700;color:var(--text);margin-bottom:20px;letter-spacing:-.045em;max-width:620px}
.hero-h em{font-style:italic;color:#5b5ef6}
.hero-sub{font-size:18px;color:#5d6678;line-height:1.74;max-width:560px;margin-bottom:28px;margin-left:0;margin-right:0}
.hero-btns{display:flex;gap:12px;flex-wrap:wrap;max-width:520px;margin:0 0 22px}
.hero-btns .btn-p,.hero-btns .btn-g{width:auto;min-width:200px;border-radius:999px}
.hero-btns .btn-p{padding:15px 26px;font-size:16px}
.hero-btns .btn-g{padding:13px 22px;background:rgba(255,255,255,.58);backdrop-filter:blur(8px);color:var(--text)}
.hero-proof{display:flex;gap:14px;flex-wrap:wrap;margin-bottom:28px}
.hero-proof span{font-size:12px;font-weight:700;color:#647089;background:rgba(255,255,255,.52);border:1px solid rgba(225,232,242,.8);padding:8px 12px;border-radius:999px}
.hero-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;max-width:560px}
.hero-stat{background:rgba(255,255,255,.72);backdrop-filter:blur(10px);border:1px solid rgba(222,229,239,.9);border-radius:20px;padding:16px 18px;box-shadow:0 18px 34px rgba(15,23,42,.06)}
.hero-stat-k{font-family:'Lora',serif;font-size:30px;line-height:1;font-weight:700;color:var(--text)}
.hero-stat-v{font-size:12px;color:#677287;line-height:1.55;margin-top:7px}
.hero-stage{position:relative;min-height:620px;display:flex;align-items:center;justify-content:center}
.hero-stage-card{position:relative;width:min(100%,520px);background:rgba(255,255,255,.9);border:1px solid rgba(222,229,239,.92);border-radius:28px;box-shadow:0 30px 70px rgba(15,23,42,.16);overflow:hidden;backdrop-filter:blur(14px)}
.hero-stage-top{display:flex;justify-content:space-between;gap:14px;padding:22px 24px 18px;border-bottom:1px solid rgba(226,232,240,.86);background:linear-gradient(180deg,rgba(255,255,255,.92),rgba(247,248,255,.82))}
.hero-stage-book{font-family:'Lora',serif;font-size:18px;font-weight:700;color:var(--text);margin-bottom:5px}
.hero-stage-meta{font-size:12px;color:#717b8e;line-height:1.55;max-width:270px}
.hero-stage-lang{display:flex;align-items:center;gap:8px;background:#eef0ff;border:1px solid rgba(99,102,241,.14);color:var(--indigo);padding:8px 12px;border-radius:999px;font-size:12px;font-weight:800;white-space:nowrap;height:max-content}
.hero-stage-track{position:relative;margin:18px 24px 0;height:8px;border-radius:999px;background:#e9edf5;overflow:visible}
.hero-stage-track-fill{height:100%;border-radius:999px;background:linear-gradient(90deg,#818cf8,#5b5ef6)}
.hero-stage-track-tag{position:absolute;right:0;top:-28px;font-size:11px;font-weight:800;color:var(--indigo);background:#eef0ff;border-radius:999px;padding:6px 10px;border:1px solid rgba(99,102,241,.12)}
.hero-stage-body{padding:28px 24px 26px;font-family:'Lora',serif;font-size:27px;line-height:1.82;color:#162031;min-height:268px;background:
  linear-gradient(180deg,rgba(255,255,255,.55),rgba(255,255,255,.96)),
  repeating-linear-gradient(180deg,transparent 0 42px,rgba(227,233,242,.24) 42px 43px)}
.hero-stage-foot{display:flex;gap:10px;flex-wrap:wrap;padding:0 24px 24px}
.hero-stage-pill{font-size:12px;font-weight:800;color:#fff;background:linear-gradient(135deg,#5b5ef6,#7c7ff7);padding:10px 12px;border-radius:999px;box-shadow:0 10px 24px rgba(99,102,241,.2)}
.hero-stage-pill.soft{background:#f0f3f9;color:#425067;box-shadow:none}
.hero-stage-note{position:absolute;max-width:180px;font-size:12px;line-height:1.55;font-weight:700;color:#425067;background:rgba(255,255,255,.82);border:1px solid rgba(225,232,242,.88);border-radius:18px;padding:12px 14px;box-shadow:0 18px 34px rgba(15,23,42,.08);backdrop-filter:blur(12px)}
.hero-stage-note-top{top:38px;left:-10px}
.hero-stage-note-bottom{right:-10px;bottom:56px}

.demo-sec{padding:0 24px 76px;position:relative}
.demo-wrap{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:34px;align-items:center}
.demo-copy{padding-right:10px}
.demo-points{display:grid;gap:14px;margin-top:26px}
.demo-point{background:rgba(255,255,255,.7);border:1px solid rgba(225,232,242,.86);border-radius:20px;padding:18px 18px 16px;box-shadow:0 14px 34px rgba(15,23,42,.05)}
.demo-point-t{font-size:15px;font-weight:800;color:var(--text);margin-bottom:6px}
.demo-point p{font-size:14px;color:#647089;line-height:1.62}
.demo-scene{position:relative;padding:22px 0}
.demo-card{background:rgba(255,255,255,.92);border-radius:28px;box-shadow:0 28px 64px rgba(15,23,42,.12);border:1px solid rgba(224,231,240,.95);overflow:hidden}
.demo-header{padding:18px 22px;border-bottom:1px solid rgba(225,232,242,.85);display:flex;align-items:center;justify-content:space-between;background:linear-gradient(180deg,rgba(255,255,255,.95),rgba(245,247,254,.92))}
.demo-libro{font-family:'Lora',serif;font-size:16px;font-weight:700;color:var(--text)}
.demo-lang{display:flex;align-items:center;gap:6px;background:#eef0ff;border-radius:999px;padding:7px 12px;font-size:12px;font-weight:800;color:var(--indigo);border:1px solid rgba(99,102,241,.12)}
.demo-slider-wrap{padding:16px 22px;background:#f4f6fb;border-bottom:1px solid rgba(225,232,242,.85)}
.demo-slider-lbl{display:flex;justify-content:space-between;font-size:11px;color:#6a768a;font-weight:700;margin-bottom:10px;text-transform:uppercase;letter-spacing:.04em}
.demo-slider{width:100%;-webkit-appearance:none;appearance:none;height:6px;border-radius:999px;outline:none;cursor:pointer}
.demo-slider::-webkit-slider-thumb{-webkit-appearance:none;width:18px;height:18px;border-radius:50%;background:var(--indigo);cursor:pointer;border:3px solid #fff;box-shadow:0 2px 10px rgba(99,102,241,.35)}
.demo-txt{padding:24px 22px 10px;font-family:'Lora',serif;font-size:22px;line-height:1.95;color:#182237;min-height:220px}
.demo-actions{display:flex;flex-wrap:wrap;gap:10px;padding:0 22px 22px}
.demo-actions .btn-p,.demo-actions .btn-g{width:auto;min-width:220px;border-radius:999px}
.demo-pal{color:#5b5ef6;font-weight:600;background:rgba(99,102,241,.1);border-radius:6px;padding:0 4px;cursor:help;position:relative}
.demo-pal:hover::after{content:attr(data-orig);position:absolute;bottom:calc(100% + 8px);left:50%;transform:translateX(-50%);background:#172133;color:#fff;border-radius:10px;padding:7px 10px;font-size:11px;white-space:nowrap;font-family:'Inter',sans-serif;z-index:10}
.demo-floating{position:absolute;max-width:210px;background:rgba(255,255,255,.82);border:1px solid rgba(225,232,242,.92);backdrop-filter:blur(12px);border-radius:18px;padding:12px 14px;font-size:12px;line-height:1.55;font-weight:700;color:#425067;box-shadow:0 18px 34px rgba(15,23,42,.08)}
.demo-floating-top{top:-4px;right:-18px}
.demo-floating-bottom{left:-6px;bottom:0}

.story-sec{padding:8px 24px 76px}
.story-head{max-width:760px;margin:0 auto 30px;text-align:center}
.story-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.story-step{background:linear-gradient(180deg,rgba(255,255,255,.94),rgba(255,255,255,.8));border:1px solid rgba(225,232,242,.9);border-radius:24px;padding:24px;box-shadow:0 18px 36px rgba(15,23,42,.06)}
.story-step-num{font-size:11px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:var(--indigo);margin-bottom:18px}
.story-step-t{font-family:'Lora',serif;font-size:26px;line-height:1.2;color:var(--text);margin-bottom:10px}
.story-step-s{font-size:14px;line-height:1.7;color:#647089}

.trust-sec{padding:0 24px 76px}
.trust-panel{background:linear-gradient(145deg,#161e34 0%,#233253 52%,#18233b 100%);border-radius:36px;padding:38px;box-shadow:0 30px 70px rgba(15,23,42,.18);overflow:hidden;position:relative}
.trust-panel::before{content:'';position:absolute;inset:auto -80px -100px auto;width:280px;height:280px;border-radius:999px;background:radial-gradient(circle,rgba(129,140,248,.24) 0%,transparent 70%)}
.trust-copy{max-width:720px;margin-bottom:26px;position:relative;z-index:1}
.trust-copy .feat-label{color:#c7d2fe}
.trust-copy .feat-h{color:#fff}
.trust-lead{font-size:18px;color:rgba(255,255,255,.72);line-height:1.8}
.trust-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;position:relative;z-index:1}
.trust-card{background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.12);border-radius:22px;padding:20px 18px 18px;backdrop-filter:blur(10px)}
.trust-card-t{font-size:15px;font-weight:800;color:#fff;margin-bottom:8px}
.trust-card-s{font-size:14px;line-height:1.65;color:rgba(255,255,255,.7)}

.pricing-sec{padding:0 24px 76px}
.pricing-head{max-width:760px;margin:0 auto 28px;text-align:center}
.pricing-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;max-width:980px;margin:0 auto}
.pricing-card{border-radius:30px;padding:30px;text-align:left;position:relative;overflow:hidden}
.pricing-card-soft{background:rgba(255,255,255,.86);border:1px solid rgba(225,232,242,.96);box-shadow:0 18px 36px rgba(15,23,42,.06)}
.pricing-card-premium{background:linear-gradient(145deg,#1b2552 0%,#2e3ea3 56%,#1f2550 100%);border:1px solid rgba(129,140,248,.28);box-shadow:0 24px 60px rgba(49,46,129,.28)}
.pricing-card-premium::before{content:'';position:absolute;right:-80px;top:-70px;width:240px;height:240px;border-radius:999px;background:radial-gradient(circle,rgba(199,210,254,.35) 0%,transparent 68%)}
.pricing-kicker,.pricing-chip{font-size:11px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:#7b8396;margin-bottom:10px}
.pricing-chip{color:#c7d2fe}
.pricing-title{font-family:'Lora',serif;font-size:42px;line-height:1.05;color:var(--text);margin-bottom:10px}
.pricing-card-premium .pricing-title{color:#fff}
.pricing-note{font-size:15px;color:#647089;line-height:1.7;margin-bottom:22px;max-width:360px}
.pricing-card-premium .pricing-note{color:rgba(255,255,255,.74)}
.pricing-list{list-style:none;display:flex;flex-direction:column;gap:10px;margin:0 0 24px;padding:0}
.pricing-list li{font-size:14px;color:#5d6678;line-height:1.55;padding-left:18px;position:relative}
.pricing-card-premium .pricing-list li{color:rgba(255,255,255,.86)}
.pricing-list li::before{content:'✓';position:absolute;left:0;top:0;color:var(--indigo);font-weight:800}
.pricing-card-premium .pricing-list li::before{color:#c7d2fe}

.faq-sec{padding:0 24px 76px}
.faq-wrap{max-width:900px}
.faq-head{text-align:center;margin-bottom:18px}
.faq-panel{background:rgba(255,255,255,.84);border:1px solid rgba(225,232,242,.95);border-radius:28px;padding:8px 28px;box-shadow:0 18px 36px rgba(15,23,42,.06)}
.faq-item{border-bottom:1px solid rgba(225,232,242,.78);padding:20px 0;cursor:pointer}
.faq-item:last-child{border-bottom:none}
.faq-q{display:flex;justify-content:space-between;align-items:center;gap:12px}
.faq-qt{font-size:17px;font-weight:600;color:var(--text);line-height:1.45}
.faq-ico{font-size:18px;color:#8d96a9;flex-shrink:0;transition:transform .25s}
.faq-ico.open{transform:rotate(45deg);color:var(--indigo)}
.faq-a{font-size:15px;color:#647089;line-height:1.78;margin-top:12px;display:none;max-width:760px}
.faq-a.open{display:block}

.cta-sec{padding:0 24px 58px;background:none;text-align:left}
.cta-panel{background:linear-gradient(145deg,#1b2239 0%,#0f172a 100%);border-radius:36px;padding:42px 34px;text-align:center;box-shadow:0 28px 64px rgba(15,23,42,.2);position:relative;overflow:hidden}
.cta-panel::before,.cta-panel::after{content:'';position:absolute;border-radius:999px;background:radial-gradient(circle,rgba(129,140,248,.22) 0%,transparent 68%)}
.cta-panel::before{width:260px;height:260px;left:-110px;bottom:-130px}
.cta-panel::after{width:220px;height:220px;right:-90px;top:-90px}
.cta-kicker{font-size:12px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:#c7d2fe;margin-bottom:14px;position:relative;z-index:1}
.cta-h{font-family:'Lora',serif;font-size:44px;font-weight:700;color:#fff;margin-bottom:16px;line-height:1.12;position:relative;z-index:1;max-width:780px;margin-left:auto;margin-right:auto}
.cta-sub{font-size:17px;color:rgba(255,255,255,.72);margin:0 auto 28px;line-height:1.7;max-width:640px;position:relative;z-index:1}
.cta-actions{display:flex;justify-content:center;gap:12px;flex-wrap:wrap;position:relative;z-index:1}
.cta-actions .btn-p,.cta-actions .btn-g{width:auto;min-width:220px;border-radius:999px}
.cta-actions .btn-g{background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.16);color:#eef2ff}
.lfoot{padding:0 24px 28px;text-align:center;font-size:12px;color:#7d8598}
.lfoot-copy{margin-bottom:10px}
.lfoot-links{display:flex;justify-content:center;gap:18px;flex-wrap:wrap}
.lfoot-link{font-size:12px;font-weight:600;color:#5d6678;text-decoration:none}
.lfoot-link:hover{color:var(--indigo)}

@media(max-width:1024px){
  .hero-shell,.demo-wrap,.story-grid,.trust-grid,.pricing-grid{grid-template-columns:1fr}
  .hero-stage{min-height:auto;margin-top:18px}
  .hero-stage-note-top{top:-10px;left:0}
  .hero-stage-note-bottom{right:0;bottom:-16px}
  .demo-copy{padding-right:0}
}

@media(max-width:767px){
  .lnav{padding:16px 16px}
  .lnav-btns{gap:8px}
  .lnav-in{padding:8px 10px}
  .lnav-reg{padding:9px 14px}
  .feat-h{font-size:31px}
  .hero-sec,.demo-sec,.story-sec,.trust-sec,.pricing-sec,.faq-sec,.cta-sec{padding-left:16px;padding-right:16px}
  .hero-h{font-size:46px}
  .hero-sub,.trust-lead,.cta-sub,.landing-lead{font-size:15px}
  .hero-btns{flex-direction:column;max-width:none}
  .hero-btns .btn-p,.hero-btns .btn-g,.demo-actions .btn-p,.demo-actions .btn-g,.cta-actions .btn-p,.cta-actions .btn-g{width:100%;min-width:0}
  .hero-stats{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
  .hero-stat{padding:12px 10px;border-radius:18px}
  .hero-stat-k{font-size:24px}
  .hero-stat-v{font-size:11px;line-height:1.4}
  .hero-proof{gap:10px}
  .hero-proof span{font-size:11px;padding:7px 10px}
  .hero-stage-card{border-radius:24px}
  .hero-stage-top{flex-direction:column;align-items:flex-start}
  .hero-stage-top{padding:16px 18px 14px}
  .hero-stage-book{font-size:16px}
  .hero-stage-meta{font-size:11px;max-width:none}
  .hero-stage-track{margin:14px 18px 0}
  .hero-stage-track-tag{position:static;display:inline-flex;margin-top:8px}
  .hero-stage-body{font-size:18px;line-height:1.65;min-height:0;padding:18px 18px 16px}
  .hero-stage-foot{padding:0 18px 18px;gap:8px}
  .hero-stage-pill{font-size:11px;padding:8px 10px}
  .hero-stage-note{display:none}
  .demo-card{border-radius:24px}
  .demo-header{padding:15px 16px}
  .demo-libro{font-size:14px}
  .demo-slider-wrap{padding:14px 16px}
  .demo-txt{font-size:17px;line-height:1.7;min-height:0;padding:18px 16px 8px}
  .demo-actions{flex-direction:column}
  .demo-floating{display:none}
  .story-step{padding:22px}
  .trust-panel{padding:28px 22px}
  .faq-panel{padding:4px 20px}
  .cta-panel{padding:34px 22px}
  .cta-h{font-size:33px}
  .lfoot-links{gap:12px}
}

/* === LANDING POLISH 2026-03-24 === */
.hero-h{font-size:58px;max-width:680px}
.hero-sub{font-size:17px;max-width:600px}
.hero-stage{min-height:560px}
.hero-stage-card{width:min(100%,560px)}
.hero-stage-top{padding:20px 22px 16px}
.hero-stage-book{font-size:17px}
.hero-stage-meta{font-size:11px;max-width:240px}
.hero-stage-body{font-size:22px;line-height:1.9;min-height:0;padding:26px 22px 22px}
.hero-stage-foot{padding:0 22px 22px}
.hero-stage-note{max-width:170px;font-size:11px;padding:11px 12px}
.hero-stage-note-top{top:54px;left:-24px}
.hero-stage-note-bottom{right:-22px;bottom:18px}

.demo-wrap{align-items:start}
.demo-copy .feat-h{font-size:32px;max-width:560px}
.demo-copy .landing-lead{font-size:16px;max-width:560px}
.demo-point{padding:16px 18px 14px}
.demo-point-t{font-size:14px}
.demo-point p{font-size:13px}
.demo-card{border-radius:26px}
.demo-header{padding:16px 20px}
.demo-libro{font-size:15px}
.demo-slider-wrap{padding:15px 20px}
.demo-txt{font-size:18px;line-height:1.9;min-height:0;padding:22px 20px 10px}
.demo-actions{padding:0 20px 20px}
.demo-floating{max-width:190px;font-size:11px;padding:10px 12px}
.demo-floating-top{top:-8px;right:-8px}
.demo-floating-bottom{left:12px;bottom:-12px}

.story-head .feat-h{font-size:34px;max-width:820px;margin-left:auto;margin-right:auto}
.story-head .landing-lead{font-size:15px;max-width:760px}
.story-grid{align-items:stretch}
.story-step{padding:22px;min-height:260px}
.story-step-t{font-size:24px}
.story-step-s{font-size:13px}

.trust-panel{padding:32px}
.trust-copy{max-width:780px}
.trust-copy .feat-h{font-size:32px;max-width:760px}
.trust-lead{font-size:16px;max-width:760px}
.trust-card{padding:18px 16px 16px}
.trust-card-t{font-size:14px}
.trust-card-s{font-size:13px}

.pricing-head .feat-h{font-size:34px}
.pricing-head .landing-lead{font-size:15px;max-width:800px}
.pricing-grid{max-width:1100px;align-items:stretch}
.pricing-card{padding:28px}
.pricing-title{font-size:34px}
.pricing-note{font-size:14px}
.pricing-list li{font-size:13px}

.faq-sec{padding-top:6px}
.faq-head .feat-h{font-size:34px}
.faq-panel{padding:6px 26px}
.faq-qt{font-size:15px}
.faq-a{font-size:14px;max-width:860px}

.cta-sec{padding-top:10px}
.cta-panel{padding:34px 30px}
.cta-h{font-size:34px;max-width:860px}
.cta-sub{font-size:16px;max-width:700px}
.cta-actions .btn-p,.cta-actions .btn-g{min-width:210px}

@media(max-width:1200px){
  .hero-h{font-size:52px}
  .hero-stage-note-top{left:0}
  .hero-stage-note-bottom{right:0}
}

@media(max-width:1024px){
  .hero-h{font-size:48px}
  .hero-stage{min-height:auto}
  .hero-stage-card{width:100%}
  .hero-stage-note-top,.hero-stage-note-bottom,
  .demo-floating-top,.demo-floating-bottom{
    position:static;
    max-width:none;
    margin-top:12px;
  }
  .story-step{min-height:0}
}

@media(max-width:767px){
  .hero-h{font-size:40px}
  .hero-sub{font-size:15px}
  .hero-stage-body{font-size:18px}
  .demo-copy .feat-h,
  .story-head .feat-h,
  .trust-copy .feat-h,
  .pricing-head .feat-h,
  .faq-head .feat-h,
  .cta-h{font-size:29px}
  .demo-copy .landing-lead,
  .story-head .landing-lead,
  .pricing-head .landing-lead,
  .trust-lead,
  .cta-sub{font-size:15px}
  .faq-panel{padding:4px 18px}
}

/* === WEEK 2 UX 2026-03-29 === */
.auth-eyebrow{font-size:11px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:var(--indigo);margin-bottom:12px}
.auth-note{margin-top:14px;padding:12px 14px;border-radius:14px;background:#f6f7fd;border:1px solid rgba(99,102,241,.12);font-size:12px;line-height:1.6;color:#677287}
.home-kicker{font-size:11px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:var(--indigo);margin-bottom:8px}
.home-focus{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(280px,.85fr);gap:18px;padding:0 20px 10px}
.home-focus-main{display:grid;gap:14px}
.home-focus-card{background:linear-gradient(145deg,#1f2947 0%,#293a69 58%,#202847 100%);border-radius:26px;padding:24px;box-shadow:0 22px 44px rgba(15,23,42,.16);color:#fff;position:relative;overflow:hidden}
.home-focus-card::after{content:'';position:absolute;right:-80px;top:-80px;width:240px;height:240px;border-radius:999px;background:radial-gradient(circle,rgba(199,210,254,.26) 0%,transparent 70%)}
.home-focus-top,.account-status-top{display:flex;justify-content:space-between;gap:16px;align-items:flex-start}
.home-focus-kicker,.home-side-kicker{font-size:11px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:#c7d2fe;margin-bottom:8px}
.home-focus-title{font-family:'Lora',serif;font-size:32px;line-height:1.08;color:#fff;margin:0 0 10px}
.home-focus-lang{display:flex;align-items:center;gap:8px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.14);padding:8px 12px;border-radius:999px;font-size:12px;font-weight:700;color:#eef2ff;white-space:nowrap}
.home-focus-sub{font-size:15px;line-height:1.75;color:rgba(255,255,255,.78);max-width:560px;margin-bottom:18px;position:relative;z-index:1}
.home-focus-actions{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:16px;position:relative;z-index:1}
.home-focus-actions .btn-p,.home-focus-actions .btn-g{width:auto;min-width:190px;border-radius:999px}
.home-focus-actions .btn-g{background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.16);color:#eef2ff}
.home-focus-meta{display:flex;gap:10px;flex-wrap:wrap;position:relative;z-index:1}
.home-focus-meta span,.account-status-meta span{font-size:12px;font-weight:700;color:#d8def0;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.08);padding:8px 10px;border-radius:999px}
.home-mini-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.home-mini-card,.home-side-card,.account-status-card{background:#fff;border:1px solid rgba(226,232,240,.9);border-radius:22px;padding:18px;box-shadow:0 14px 34px rgba(15,23,42,.06)}
.home-mini-k{font-size:11px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--indigo);margin-bottom:6px}
.home-mini-v{font-family:'Lora',serif;font-size:30px;line-height:1;color:var(--text);margin-bottom:8px}
.home-mini-s,.home-side-copy,.account-status-copy,.account-status-sub{font-size:13px;line-height:1.65;color:#677287}
.home-side-stack{display:grid;gap:14px}
.home-side-title,.account-status-title{font-family:'Lora',serif;font-size:24px;line-height:1.18;color:var(--text);margin-bottom:8px}
.home-side-card .btn-g{margin-top:14px}
.home-side-card.subtle{background:linear-gradient(180deg,#ffffff 0%,#fbfbff 100%)}
.account-status-badge{font-size:11px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;border-radius:999px;padding:8px 10px}
.account-status-badge.local{background:#fff7ed;color:#c2410c;border:1px solid #fdba74}
.account-status-badge.cloud{background:#ecfeff;color:#0f766e;border:1px solid #99f6e4}
.account-status-copy{margin:14px 0}

@media(min-width:768px){
  .auth-card{max-width:430px;padding:36px}
  .auth-title{font-size:26px}
  .auth-sub{font-size:15px;line-height:1.65}
}

@media(max-width:1024px){
  .home-focus{grid-template-columns:1fr;padding:0 20px 10px}
}

@media(max-width:767px){
  .home-focus{padding:0 20px 8px}
  .home-focus-title{font-size:28px}
  .home-focus-actions{flex-direction:column}
  .home-focus-actions .btn-p,.home-focus-actions .btn-g{width:100%;min-width:0}
  .home-mini-grid{grid-template-columns:1fr}
  .home-focus-top,.account-status-top{flex-direction:column}
  .home-focus-lang{width:max-content}
  .ui-toast{left:16px;right:16px;bottom:16px;max-width:none}
  .confirm-card{padding:22px 18px}
  .confirm-title{font-size:24px}
  .legal-title{font-size:24px}
  .setting-row{flex-direction:column;align-items:flex-start}
  .challenge-option-values{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}
}

/* === POLISH 2026-03-29 === */
.btn-p:focus-visible,.btn-g:focus-visible,.faq-q:focus-visible,.profile-link-btn:focus-visible,.setting-pill:focus-visible,.toggle:focus-visible,.sidebar-item:focus-visible,.bib-chip:focus-visible,.filter-group-btn:focus-visible,.quiz-opt:focus-visible,.quiz-btn:focus-visible,.challenge-option:focus-visible,.challenge-value:focus-visible,.challenge-mode-tab:focus-visible,.premium-settings-btn:focus-visible{outline:3px solid rgba(99,102,241,.4);outline-offset:3px}

.challenge-head{margin-bottom:16px}
.challenge-page-title{font-family:'Lora',serif;font-size:42px;line-height:1.08;font-weight:700;letter-spacing:-.03em;margin-bottom:10px}
.challenge-head-copy{font-size:16px;line-height:1.75;color:#677287;max-width:760px}
.challenge-hero{background:linear-gradient(145deg,#eef2ff 0%,#e8eeff 62%,#f8faff 100%);border:1px solid rgba(129,140,248,.22)}
.challenge-panel{padding:22px}
.challenge-panel-title{font-size:18px}
.challenge-panel-copy{font-size:14px}
.challenge-mode-tabs{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:18px}
.challenge-mode-tab{border:1.5px solid var(--border);background:#fff;color:var(--soft);border-radius:999px;padding:10px 16px;font-size:14px;font-weight:700;font-family:'Inter',sans-serif;cursor:pointer;transition:all .2s}
.challenge-mode-tab:hover{border-color:rgba(99,102,241,.4);color:var(--indigo)}
.challenge-mode-tab.on{background:var(--ip);border-color:var(--indigo);color:var(--indigo)}
.challenge-focus{display:grid;grid-template-columns:minmax(0,.95fr) minmax(320px,1.05fr);gap:18px;align-items:center;padding:18px;border-radius:18px;background:linear-gradient(180deg,#f8faff 0%,#f2f5ff 100%);border:1px solid rgba(129,140,248,.18)}
.challenge-focus-kicker{font-size:11px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--indigo);margin-bottom:8px}
.challenge-focus-title{font-family:'Lora',serif;font-size:28px;line-height:1.08;font-weight:700;color:var(--text);margin-bottom:10px;letter-spacing:-.03em}
.challenge-focus-text{font-size:14px;line-height:1.7;color:#677287}
.challenge-option-values-wide{margin-top:0;justify-content:flex-end}
.challenge-note{margin-top:14px;font-size:13px;line-height:1.6;color:var(--soft)}

.profile-section{background:#fff;border-radius:22px;padding:22px;margin-bottom:16px;box-shadow:var(--sh);border:1px solid rgba(226,232,240,.9)}
.profile-section-t{font-size:12px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:#64748b;margin-bottom:16px}
.setting-row{display:flex;justify-content:space-between;align-items:center;gap:18px;padding:16px 0;border-top:1px solid rgba(226,232,240,.7)}
.setting-row:first-of-type{border-top:none;padding-top:0}
.setting-label{font-size:15px;font-weight:800;color:var(--text);margin-bottom:4px}
.setting-help{font-size:13px;line-height:1.65;color:#677287;max-width:620px}
.setting-pills{display:flex;gap:10px;flex-wrap:wrap}
.setting-pill{border-radius:999px}
.premium-settings-card{display:flex;justify-content:space-between;gap:18px;align-items:center;padding:18px 20px;margin:6px 0 16px;border-radius:20px;background:linear-gradient(145deg,#1f2b52 0%,#334278 100%);box-shadow:0 18px 38px rgba(15,23,42,.16)}
.premium-settings-copy{max-width:620px}
.premium-settings-kicker{font-size:11px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:#c7d2fe;margin-bottom:8px}
.premium-settings-title{font-family:'Lora',serif;font-size:28px;line-height:1.12;color:#fff;margin-bottom:8px}
.premium-settings-text{font-size:14px;line-height:1.7;color:rgba(255,255,255,.75)}
.premium-settings-btn{width:auto;min-width:200px;border-radius:999px;box-shadow:none}
.profile-link-btn{display:flex;align-items:center;justify-content:space-between;width:100%;padding:18px 20px;border-radius:18px;border:1.5px solid var(--border);background:#fff;font-size:15px;font-weight:700;color:var(--text);cursor:pointer;transition:all .2s;font-family:'Inter',sans-serif}
.profile-link-btn:hover{border-color:rgba(99,102,241,.35);transform:translateY(-1px)}
.profile-link-btn.danger{color:#dc2626;border-color:rgba(248,113,113,.5);background:#fff}

@media(max-width:1024px){
  .challenge-focus{grid-template-columns:1fr}
  .challenge-option-values-wide{justify-content:flex-start}
  .premium-settings-card{flex-direction:column;align-items:flex-start}
  .premium-settings-btn{width:100%}
}

@media(max-width:767px){
  .challenge-head-copy{font-size:15px}
  .challenge-panel{padding:18px}
  .challenge-mode-tabs{display:grid;grid-template-columns:1fr;gap:10px}
  .challenge-mode-tab{width:100%;text-align:left}
  .challenge-focus{padding:16px}
  .challenge-page-title{font-size:34px}
  .challenge-focus-title{font-size:24px}
  .challenge-option-values-wide{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}
  .premium-settings-title{font-size:24px}
}
