
/* Layout: asphalt app shell — top bar + chapter rail (desktop) / stacked views (phone); road-sign colours as semantic accents */
:root{
  --asphalt:#F3F5FC; --panel:#FFFFFF; --panel2:#EEF1FB; --line:#DCE1F2; --yel-t:#9A6500; --cyan-t:#0B7A92; --grn-t:#1E7A43;
  --paper:#1B2142; --mute:#5E6688; --sun:#F2622A; --pink:#E0306F; --cyan:#0E93AE; --yel:#FFC72C; --red:#D7263D; --grn:#2FA35A; --blue:#2F6FD0;
  --display:"Outfit","Poppins",system-ui,sans-serif; --body:"Poppins",system-ui,sans-serif;
  --ur:"Noto Nastaliq Urdu","Noto Sans Arabic",serif; --pa:"Noto Sans Gurmukhi","Poppins",sans-serif; --hi:"Noto Sans Devanagari","Poppins",sans-serif; --ar:"Amiri","Noto Naskh Arabic",serif;
  color-scheme:light;
}
*{box-sizing:border-box}
[hidden]{display:none!important}
html,body{min-height:100%}
html{background-color:#F3F5FC;background-image:radial-gradient(60% 35% at 100% 10%,rgba(255,199,44,.16),transparent 70%),radial-gradient(55% 35% at 0% 45%,rgba(59,180,242,.10),transparent 70%),radial-gradient(60% 30% at 100% 85%,rgba(255,122,69,.08),transparent 70%),linear-gradient(180deg,#F7F8FD 0%,#EEF2FB 50%,#F5F3FC 100%)}
body{background:transparent;color:var(--paper);font-family:var(--body);font-size:15px;line-height:1.5;margin:0}
button{font:inherit;color:inherit;cursor:pointer}
button:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid var(--yel);outline-offset:2px}
.wrap{padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px))}
.nat{font-size:1.05em}
.nat[lang=ur]{font-family:var(--ur);line-height:2.1;font-size:1.02em}
.nat[lang=pa]{font-family:var(--pa)}
.nat[lang=hi]{font-family:var(--hi);line-height:1.6}
.nat[lang=ar]{font-family:var(--ar);font-size:1.15em;line-height:1.7}
.nat{color:#17652F}
[dir=rtl].nat{text-align:right}
/* top bar */
body::before{content:"";position:fixed;inset:0 0 auto;height:env(safe-area-inset-top,0px);z-index:10;background:var(--asphalt)}
.top{position:sticky;top:env(safe-area-inset-top,0px);z-index:5;background:var(--asphalt);border-bottom:1px solid var(--line)}
.top-in{display:flex;align-items:center;gap:12px;padding-block:10px;flex-wrap:wrap}
.brand{background:none;border:0;padding:0;color:inherit;display:flex;align-items:center;gap:8px;font-family:var(--display);font-weight:800;font-size:20px;letter-spacing:.02em}
.brand .b{background:var(--yel);color:#14171C;border-radius:6px;padding:0 8px;transform:rotate(-5deg);display:inline-block}
.brand small{font-family:var(--body);font-weight:500;font-size:11px;color:var(--mute);letter-spacing:.12em;text-transform:uppercase}
.sp{flex:1}
.langs{display:flex;gap:4px;flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none}.langs::-webkit-scrollbar{display:none}
.lg{white-space:nowrap;flex:none;border:1px solid var(--line);background:transparent;border-radius:20px;padding:3px 11px;font-size:13px}
.lg[aria-pressed=true]{background:var(--yel);color:#14171C;border-color:var(--yel);font-weight:600}
.who{font-size:13px;color:var(--mute);display:flex;gap:8px;align-items:center}
.ghost{background:transparent;border:1px solid var(--line);border-radius:8px;padding:4px 10px;font-size:13px}
.proto{background:#F8F6F1;color:var(--yel);font-size:12px;text-align:center;padding:4px 0}
/* login */
.login{max-width:980px;margin:0 auto;padding-block:36px;display:grid;grid-template-columns:1.1fr 1fr;gap:28px;align-items:start}
.hero h1{font-family:var(--display);font-weight:800;font-size:clamp(40px,7vw,72px);line-height:.95;margin:0;text-wrap:balance}
.hero h1 .b{background:var(--yel);color:#14171C;border-radius:10px;padding:0 14px;display:inline-block;transform:rotate(-5deg);margin-left:6px}
.hero p{color:var(--mute);max-width:46ch}
.road{height:10px;margin:22px 0;background:repeating-linear-gradient(90deg,var(--yel) 0 40px,transparent 40px 70px);opacity:.8;border-radius:3px}
.facts{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.fact{border-left:3px solid var(--yel);background:var(--panel);padding:8px 12px;border-radius:0 8px 8px 0}
.fact b{font-family:var(--display);font-size:26px;color:var(--yel-t);display:block;line-height:1.1}
.fact span{font-size:12px;color:var(--mute);text-transform:uppercase;letter-spacing:.08em}
.box{background:var(--panel);border:1px solid var(--line);border-radius:14px;padding:20px}
.tabs{display:flex;gap:6px;margin-bottom:14px}
.tab{flex:1;background:var(--panel2);border:0;border-radius:8px;padding:8px}
.tab[aria-selected=true]{background:var(--yel);color:#14171C;font-weight:600}
label{display:block;font-size:12px;color:var(--mute);margin:10px 0 4px;letter-spacing:.04em}
input,select{width:100%;background:var(--asphalt);border:1px solid var(--line);color:var(--paper);border-radius:8px;padding:10px;font:inherit}
.btn{background:var(--yel);color:#14171C;border:0;border-radius:10px;padding:11px 16px;font-weight:600;width:100%;margin-top:14px}
.btn.alt{background:var(--panel2);color:var(--paper)}
.err{color:#A90414;font-size:13px;min-height:20px;margin-top:8px}
.demo{font-size:12px;color:var(--mute);margin-top:12px;border-top:1px dashed var(--line);padding-top:10px}
.demo code{color:var(--yel-t);user-select:all}
/* app */
.app{display:grid;grid-template-columns:270px 1fr;gap:20px;padding-block:18px;max-width:1240px;margin:0 auto}
.rail{position:sticky;top:76px;align-self:start;max-height:calc(100vh - 100px);overflow:auto;padding-right:4px}
.rail h3{font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--mute);margin:14px 4px 6px}
.ri{display:grid;grid-template-columns:30px 1fr auto;gap:8px;align-items:center;width:100%;text-align:left;background:transparent;border:0;border-radius:8px;padding:6px 6px;font-size:13px}
.ri:hover{background:var(--panel)}
.ri[aria-current=true]{background:var(--panel2)}
.num{width:28px;height:28px;border-radius:7px;display:grid;place-items:center;font-family:var(--display);font-weight:800;font-size:13px;background:var(--panel2);font-variant-numeric:tabular-nums}
.ri .done{font-size:11px;color:var(--grn-t);font-variant-numeric:tabular-nums}
.mainc{min-width:0}
.special{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:6px}
.sbtn{background:var(--yel);color:#14171C;border:0;border-radius:10px;padding:10px;font-weight:600;font-size:13px}
.sbtn.red{background:var(--red);color:#fff}
/* dashboard */
.hello{display:flex;gap:16px;align-items:center;flex-wrap:wrap;margin-bottom:16px}
.hello h2{font-family:var(--display);font-size:28px;margin:0}
.meter{flex:1;min-width:200px}
.bar{height:10px;background:var(--panel2);border-radius:6px;overflow:hidden}
.bar i{display:block;height:100%;background:linear-gradient(90deg,var(--yel),var(--grn))}
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:12px}
.tile{background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:12px;text-align:left;display:flex;flex-direction:column;gap:8px}
.tile:hover{border-color:var(--yel)}
.tile .sg{display:flex;gap:6px;height:42px}
.tile .sg span{width:42px;height:42px;display:block}
.tile .sg svg{width:100%;height:100%}
.tile b{font-size:14px;line-height:1.3}
.tile small{color:var(--mute);font-size:12px}
/* chapter */
.ch-head{display:flex;gap:16px;align-items:center;background:var(--panel);border-radius:14px;padding:16px;border-bottom:3px dashed var(--yel);margin-bottom:12px}
.ch-head .big{font-family:var(--display);font-weight:800;font-size:44px;background:var(--yel);color:#14171C;border-radius:12px;width:72px;height:72px;display:grid;place-items:center;flex:none}
.ch-head h2{margin:0;font-family:var(--display);font-size:24px;line-height:1.15;text-wrap:balance}
.ctabs{display:flex;gap:6px;overflow-x:auto;margin-bottom:14px;padding-bottom:2px}
.ct{background:var(--panel);border:1px solid var(--line);border-radius:20px;padding:6px 14px;white-space:nowrap;font-size:13px}
.ct[aria-selected=true]{background:var(--yel);border-color:var(--yel);color:#14171C;font-weight:600}
.tb{display:grid;grid-template-columns:1fr 1fr;border:1px solid var(--line);border-radius:12px;overflow:hidden;margin-bottom:10px}
.tb>div{padding:12px 14px;min-width:0}
.tb>div+div{background:var(--panel);border-left:2px dashed #E4E0D2}
.tb h4{margin:0 0 4px;color:var(--yel-t);font-size:15px}
.trap{border:2px solid var(--red);border-radius:12px;padding:12px 14px;background:#F7F4F4;margin-top:12px}
.trap b{color:#A90414;letter-spacing:.1em;font-size:12px}
.cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:12px}
.card{background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:12px;display:grid;grid-template-columns:84px 1fr;gap:10px;align-items:start}
.card .pic{background:#FFFFFF;border-radius:10px;padding:6px;aspect-ratio:1;max-width:100%;display:grid;place-items:center}
.card .pic svg{width:100%;height:100%}
.card b{font-size:14px;line-height:1.25;display:block}
.pron{display:inline-block;background:var(--panel2);border-radius:6px;padding:0 8px;margin:4px 0;font-size:13px;color:var(--paper)}
.card .m{grid-column:1/-1;border-top:1px dashed var(--line);padding-top:6px}
.video{aspect-ratio:16/9;max-width:100%;border-radius:14px;background:radial-gradient(ellipse at 50% 80%,rgba(255,199,44,.18),transparent 60%),linear-gradient(#F5F5F6,#F7F8F9);display:grid;place-items:center;border:1px solid var(--line);position:relative;overflow:hidden}
.video .play{width:76px;height:76px;border-radius:50%;background:var(--yel);display:grid;place-items:center}
.video .play::after{content:"";border-left:24px solid #D8DBDE;border-top:15px solid transparent;border-bottom:15px solid transparent;margin-left:6px}
.video .cap{position:absolute;left:16px;right:16px;bottom:12px;font-size:13px;color:var(--mute);display:flex;justify-content:space-between;gap:8px;flex-wrap:wrap}
.vlist{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:8px;margin-top:12px}
.vl{background:var(--panel);border:1px solid var(--line);border-radius:10px;padding:8px 10px;font-size:13px;text-align:left}
.vl[aria-pressed=true]{border-color:var(--yel)}
/* quiz */
.q{background:var(--panel);border:1px solid var(--line);border-radius:14px;padding:18px;max-width:760px}
.q .meta{display:flex;justify-content:space-between;color:var(--mute);font-size:13px;margin-bottom:8px;font-variant-numeric:tabular-nums}
.q .it{font-size:18px;font-weight:500;line-height:1.4}
.vf{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:14px}
.vf button{border:2px solid var(--line);background:var(--asphalt);border-radius:12px;padding:12px;font-family:var(--display);font-weight:800;font-size:20px}
.vf button.ok{border-color:var(--grn);background:#F3F7F4}
.vf button.ko{border-color:var(--red);background:#F7F2F3}
.fb{margin-top:12px;padding:10px 12px;border-radius:10px;background:var(--panel2)}
.fb.ok{border-left:4px solid var(--grn)} .fb.ko{border-left:4px solid var(--red)}
.hint{margin-top:10px;font-size:13px}
.row{display:flex;gap:10px;flex-wrap:wrap;margin-top:12px}
.row .btn{width:auto;margin:0}
.timer{font-family:var(--display);font-size:22px;color:var(--yel-t);font-variant-numeric:tabular-nums}
.dots{display:flex;flex-wrap:wrap;gap:4px;margin:8px 0}
.dots i{width:14px;height:14px;border-radius:3px;background:var(--panel2)}
.dots i.a{background:var(--blue)} .dots i.ok{background:var(--grn)} .dots i.ko{background:var(--red)}
.result{font-family:var(--display);font-size:34px;margin:6px 0}
table{width:100%;border-collapse:collapse;font-size:14px}
th,td{padding:7px 8px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}
th{color:var(--mute);font-weight:500;font-size:12px;letter-spacing:.06em;text-transform:uppercase}
.tw{overflow-x:auto}
.pill{display:inline-block;border-radius:20px;padding:1px 9px;font-size:12px}
.pill.on{background:#E3F2E8;color:#17652F}.pill.off{background:var(--panel2);color:var(--mute)}
.mono{font-family:ui-monospace,Menlo,monospace;letter-spacing:.06em;color:var(--yel-t)}
.two{display:grid;grid-template-columns:1fr 1.4fr;gap:14px}
.tb.one{grid-template-columns:1fr}
.learn{background:var(--panel);border-radius:12px;padding:12px 16px;margin-bottom:12px}
.learn ul{margin:6px 0 0;padding-left:18px}.learn li{margin:2px 0}
.learn li{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap}.learn li .nat{color:#17652F}
.sh{margin:18px 0 8px;font-size:16px}
.fam{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:10px}
.fam>div{background:var(--panel);border-radius:12px;padding:10px;text-align:center;display:flex;flex-direction:column;align-items:center;gap:4px;font-size:13px}
.fi{display:block;width:56px;height:56px;background:#FFFFFF;border-radius:10px;padding:4px}
.fi svg{width:100%;height:100%}
.spec{border:2px solid var(--yel);border-radius:12px;margin-top:14px;overflow:hidden}
.spec-h{background:var(--yel);color:#14171C;padding:6px 14px;display:flex;justify-content:space-between;gap:10px}
.spec-h .nat{color:#14171C}
.spec-g{display:grid;grid-template-columns:1fr 1fr}
.spec-g>div{padding:12px 14px;min-width:0}.spec-g>div+div{border-left:1px dashed var(--line)}
.spec-t{display:flex;gap:10px;align-items:center}
.spec ul{margin:8px 0 0;padding-left:18px;font-size:14px}
.kw{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:8px}
.kw>div{background:var(--panel);border-radius:10px;padding:8px 10px}
.memo{background:#F8F6F3;border:1px solid #E4E0D2;border-radius:12px;padding:12px 14px;margin-top:14px}
.memo .mm{display:flex;gap:8px;margin-top:8px}.memo .mm span{width:56px;height:56px;background:#FFFFFF;border-radius:10px;padding:4px}
.memo .mm svg{width:100%;height:100%}
.extra{display:flex;flex-direction:column;gap:2px;margin-top:10px;padding-bottom:6px;border-bottom:1px solid var(--line)}
.vh{font-family:var(--display);font-size:26px;margin:0 0 10px}
.filters{display:grid;grid-template-columns:1fr 240px;gap:8px}
.filters input:only-child{grid-column:1/-1}
.cnt{color:var(--mute);font-size:13px;margin:8px 0}
.chn{display:block;color:var(--mute);font-size:12px;margin-top:4px}
.flash{background:var(--panel);border-radius:16px;padding:20px;display:grid;grid-template-columns:minmax(0,260px) 1fr;gap:20px;align-items:center;max-width:760px}
.fpic{background:#FFFFFF;border-radius:14px;padding:14px;aspect-ratio:1;max-width:100%}
.fpic svg{width:100%;height:100%}
.fback b{font-size:22px;display:block}
.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}
.stats>div{background:var(--panel);border-radius:12px;padding:12px;text-align:center}
.stats b{display:block;font-family:var(--display);font-size:30px;color:var(--yel-t)}
.journey,.idx{padding-left:22px}.journey li,.idx li{margin:4px 0}
.idx li .nat{display:block;font-size:.95em}
@media (max-width:860px){.spec-g,.flash{grid-template-columns:1fr}.spec-g>div+div{border-left:0;border-top:1px dashed var(--line)}.stats{grid-template-columns:repeat(2,1fr)}.filters{grid-template-columns:1fr}.rail .extra{flex-direction:row;flex-wrap:wrap}.rail .extra .ri{width:auto;grid-template-columns:auto auto}.rail .extra .ri span:last-child{display:none}}
@media (max-width:860px){
  .login{grid-template-columns:1fr}
  .app{grid-template-columns:1fr}
  .rail{position:static;max-height:none}
  .rail .list{display:none}
  .tb{grid-template-columns:1fr}.tb>div+div{border-left:0;border-top:2px dashed #E4E0D2}
  .two{grid-template-columns:1fr}
}
@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}

.player{width:100%;max-width:960px;aspect-ratio:16/9;background:#FBFBFB;border-radius:14px;display:block}
.vmiss{aspect-ratio:16/9;max-width:960px;border-radius:14px;background:var(--panel);display:grid;place-items:center;align-content:center;gap:12px;color:var(--mute)}
.err.ok{color:#17652F}
.ghost.sm{font-size:12px;padding:2px 8px;margin:2px}
.act{white-space:nowrap}
.cl{max-height:360px;overflow:auto}
.rowb{display:flex;gap:12px;align-items:center;justify-content:space-between;flex-wrap:wrap;margin-bottom:8px}
.rowb input{max-width:340px}

.land{max-width:980px;margin:0 auto;padding-block:10px 40px;display:flex;flex-direction:column;gap:14px}
.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}
.steps div{background:var(--panel);border-radius:12px;padding:14px;display:flex;gap:10px;align-items:flex-start}
.steps b{font-family:var(--display);font-size:26px;color:var(--yel-t);line-height:1}
.feat{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.feat div{background:var(--panel);border-left:3px solid var(--yel);border-radius:0 12px 12px 0;padding:12px 14px;display:flex;flex-direction:column;gap:4px}
.feat span,.steps span{color:var(--mute);font-size:14px}
.foot{border-top:1px solid var(--line);color:var(--mute);font-size:13px;padding-block:16px;margin-top:20px}
.foot-in{max-width:1240px;margin:0 auto;display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap}
@media (max-width:860px){.steps,.feat{grid-template-columns:1fr 1fr}}
@media (max-width:520px){.steps,.feat{grid-template-columns:1fr}}

/* ===== v2: homepage, esame, statistiche, app ===== */
.loading{padding:40px 0;color:var(--mute)}
.mute{color:var(--mute)}.small{font-size:13px}.center{text-align:center}
a{color:var(--yel-t)}
.lnk{background:none;border:0;padding:0;color:var(--yel-t);text-decoration:underline;text-underline-offset:3px;font:inherit;cursor:pointer}
.nav{display:flex;gap:18px;margin-left:18px}
.nav a{color:var(--paper);text-decoration:none;font-size:14px;opacity:.85}.nav a:hover{opacity:1;color:var(--yel-t)}
.cta{display:inline-flex;align-items:center;justify-content:center;gap:8px;background:var(--yel);color:#14171C;border:0;border-radius:12px;padding:13px 20px;font-weight:600;font-size:15px;text-decoration:none;box-shadow:0 6px 18px rgba(255,199,44,.18);transition:transform .15s}
.cta:hover{transform:translateY(-1px)}
.cta.sm{padding:6px 14px;font-size:13px;border-radius:9px;box-shadow:none}
.cta.ghostc{background:transparent;color:var(--paper);border:1.5px solid var(--line);box-shadow:none}
.cta.ghostc:hover{border-color:var(--yel)}
.cta.red{background:var(--red);color:#fff;box-shadow:none}
.cta.wide{width:100%;margin-top:16px}
.cta:disabled{opacity:.6}
/* hero */
.hero2{max-width:1180px;margin:0 auto;padding:48px 0 28px;display:grid;grid-template-columns:1.15fr .85fr;gap:40px;align-items:center}
.eyebrow{display:inline-block;font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--yel-t);border:1px solid #E4E0D2;border-radius:20px;padding:4px 12px;margin-bottom:16px}
.hero2 h1{font-family:var(--display);font-weight:800;font-size:clamp(36px,5.4vw,64px);line-height:1.02;margin:0;text-wrap:balance;letter-spacing:-.01em}
.hero2 h1 .hl{background:var(--yel);color:#14171C;border-radius:12px;padding:0 12px;display:inline-block;transform:rotate(-2deg)}
.h1n{font-size:24px;margin:14px 0 0;text-align:left}
.lead{color:#383F49;font-size:17px;max-width:54ch;margin:16px 0 22px}
.cta-row{display:flex;gap:10px;flex-wrap:wrap}
.have{color:var(--mute);font-size:14px;margin:14px 0 0}
.trust{list-style:none;padding:0;margin:26px 0 0;display:flex;gap:22px;flex-wrap:wrap;color:var(--mute);font-size:13px}
.trust b{display:block;font-family:var(--display);font-size:28px;color:var(--paper);line-height:1.1}
.hero-vis{position:relative;min-height:440px;display:grid;place-items:center}
.phone{width:270px;background:#F8F8F9;border:10px solid #D9DBDE;border-radius:38px;padding:16px 14px 18px;box-shadow:0 30px 80px rgba(24,32,96,0.193),0 0 0 1px #3A414B;transform:rotate(3deg);position:relative;z-index:2}
.ph-top{display:flex;justify-content:space-between;font-size:11px;color:var(--mute);margin-bottom:10px}.ph-top b{color:var(--yel-t);font-family:var(--display);font-size:15px}
.ph-grid{display:grid;grid-template-columns:repeat(10,1fr);gap:3px;margin-bottom:12px}
.ph-grid i{aspect-ratio:1;border-radius:3px;background:var(--panel2)}.ph-grid i.f{background:#F1F3EE}.ph-grid i.c{outline:2px solid var(--yel)}
.ph-q{background:var(--panel);border-radius:14px;padding:12px;font-size:13px;line-height:1.4;min-height:150px}
.ph-img{width:74px;height:74px;background:#FFFFFF;border-radius:10px;padding:5px;float:left;margin:0 10px 6px 0}.ph-img svg{width:100%;height:100%}
.ph-vf{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:10px}
.ph-vf span{border:2px solid var(--line);border-radius:10px;text-align:center;padding:8px;font-family:var(--display);font-weight:800}
.ph-vf span:first-child{border-color:var(--grn);background:#F3F7F4}
.float{position:absolute;width:92px;height:92px;background:#FFFFFF;border-radius:18px;padding:8px;box-shadow:0 14px 30px rgba(24,32,96,0.14);z-index:1}
.float svg{width:100%;height:100%}
.float.f0{top:12px;left:4%;transform:rotate(-10deg)}.float.f1{bottom:30px;left:0;transform:rotate(8deg);z-index:3}.float.f2{top:60px;right:2%;transform:rotate(12deg)}
@media (prefers-reduced-motion:no-preference){.float{animation:bob 6s ease-in-out infinite}.float.f1{animation-delay:-2s}.float.f2{animation-delay:-4s}
 @keyframes bob{50%{translate:0 -8px}}}
.road2{max-width:1180px;margin:10px auto 0;height:8px;background:repeating-linear-gradient(90deg,var(--yel) 0 46px,transparent 46px 80px);opacity:.75;border-radius:3px}
/* sezioni */
.sec{max-width:1180px;margin:0 auto;padding:56px 0 8px;scroll-margin-top:80px}
.sec h2{font-family:var(--display);font-size:clamp(26px,3.4vw,38px);margin:0 0 6px;letter-spacing:-.01em}
.sub2{color:var(--mute);margin:0 0 22px;max-width:70ch}
.split{display:grid;grid-template-columns:1.2fr .8fr;gap:36px;align-items:start}
.lgrid{display:grid;grid-template-columns:repeat(7,1fr);gap:10px}
.lcard{background:var(--panel);border:1.5px solid var(--line);border-radius:16px;padding:16px 12px;display:flex;flex-direction:column;align-items:center;gap:6px;text-align:center}
.lcard b{font-size:20px}.lcard b[lang=ur]{font-family:var(--ur);font-weight:600}.lcard b[lang=ar]{font-family:var(--ar)}.lcard b[lang=pa]{font-family:var(--pa)}.lcard b[lang=hi],.lcard span[lang=hi]{font-family:var(--hi)}
.lcard span{color:#17652F;font-size:14px}.lcard span[lang=ur]{font-family:var(--ur)}.lcard span[lang=ar]{font-family:var(--ar);font-size:16px}.lcard span[lang=pa]{font-family:var(--pa)}
.lcard small{color:var(--mute);font-size:11px}
.lcard[aria-pressed=true]{border-color:var(--yel);background:#F8F6F3}
.feat2{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.feat2>div{background:linear-gradient(180deg,var(--panel),#F5F5F7);border:1px solid var(--line);border-radius:16px;padding:20px}
.feat2 .ic{font-size:26px;display:block;margin-bottom:8px}.feat2 b{font-size:17px}.feat2 p{color:var(--mute);margin:6px 0 0;font-size:14px}
.prog{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:8px}
.pc{display:grid;grid-template-columns:30px 1fr auto;gap:10px;align-items:center;background:var(--panel);border:1px solid var(--line);border-radius:10px;padding:8px 10px;text-align:left;font-size:13px}
.pc small{color:var(--mute);font-size:11px}.pc.free{border-color:var(--grn)}.pc.free small{color:#17652F;font-weight:600}
.steps2{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;counter-reset:s}
.steps2>div{background:var(--panel);border-radius:16px;padding:18px;border-top:4px solid var(--yel)}
.steps2 b{font-family:var(--display);font-size:34px;color:var(--yel-t);display:block;line-height:1}.steps2 span{color:#383F49;font-size:14px}
.plans{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px;align-items:stretch}
.plan{position:relative;background:var(--panel);border:1.5px solid var(--line);border-radius:20px;padding:24px 20px;display:flex;flex-direction:column;gap:4px;text-align:left}
.plan.best{border-color:var(--yel);background:linear-gradient(180deg,#F8F6F3,var(--panel) 60%);box-shadow:0 18px 40px rgba(24,32,96,0.122)}
.plan .tag{position:absolute;top:-12px;left:20px;background:var(--yel);color:#14171C;font-size:12px;font-weight:600;border-radius:20px;padding:2px 10px}
.pm{font-size:15px;color:var(--mute);font-weight:500}.pp{font-family:var(--display);font-weight:800;font-size:40px;line-height:1.1}
.plan small{color:var(--mute)}.plan ul{list-style:none;padding:0;margin:14px 0 18px;display:flex;flex-direction:column;gap:6px;font-size:14px;flex:1}
.plan li::before{content:"✓ ";color:var(--grn-t);font-weight:700}
.plans.mini{grid-template-columns:repeat(auto-fit,minmax(130px,1fr));margin:12px 0 16px}.plans.mini .plan{padding:14px;align-items:flex-start;cursor:pointer}
.plans.mini .pp{font-size:28px}.plan.sel{border-color:var(--yel);background:#F8F6F3}
.note2{color:var(--mute);font-size:14px;margin-top:16px}
.appvis{display:grid;place-items:center;gap:10px;padding:20px}
.appvis .ico{width:132px;height:132px;border-radius:30px;background:var(--asphalt);border:1px solid var(--line);display:grid;place-items:center;align-content:center;font-family:var(--display);font-weight:800;font-size:22px;box-shadow:0 20px 50px rgba(24,32,96,0.175)}
.appvis .ico b{background:var(--yel);color:#14171C;border-radius:10px;padding:0 14px;font-size:42px;transform:rotate(-6deg);display:inline-block;margin-top:2px}
.appvis span{color:var(--mute);font-size:14px}
.ios{color:var(--mute);font-size:14px}.appok{color:#17652F;font-weight:600}
.btn.inst{width:auto;padding:12px 20px}
.faq{display:flex;flex-direction:column;gap:8px;max-width:860px}
.faq details{background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:14px 18px}
.faq summary{cursor:pointer;font-weight:600;list-style:none;display:flex;justify-content:space-between;gap:12px}
.faq summary::after{content:"+";color:var(--yel-t);font-size:20px;line-height:1}.faq details[open] summary::after{content:"–"}
.faq p{color:#383F49;margin:10px 0 0}
.contact{display:grid;grid-template-columns:1fr 1fr;gap:24px;padding-bottom:30px}
.cbox{background:var(--panel);border-radius:16px;padding:20px}.cbox ul{margin:8px 0 0;padding-left:18px;color:#383F49}
/* login / acquisto */
.login2,.buy{max-width:520px;margin:0 auto;padding:36px 0}
.buy.center{text-align:center}.back{margin-bottom:12px}
.okbox .big-ok{width:64px;height:64px;border-radius:50%;background:var(--grn);color:#fff;font-size:34px;display:grid;place-items:center;margin:0 auto 10px}
.spin{width:36px;height:36px;border:4px solid var(--panel2);border-top-color:var(--yel);border-radius:50%;margin:10px auto;animation:sp 1s linear infinite}@keyframes sp{to{transform:rotate(360deg)}}
/* capitolo gratuito */
.freebar{max-width:1240px;margin:16px auto 0;background:#F3F7F4;border:1px solid #D4E3D9;border-radius:14px;padding:12px 16px;display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}
.freebar .row{margin:0}.freewrap{max-width:1000px;margin:16px auto 30px}
/* dashboard */
.dash{display:grid;grid-template-columns:2fr 1fr 1fr;gap:12px}
.dcard{background:var(--panel);border:1px solid var(--line);border-radius:16px;padding:16px;text-align:left;min-width:0}
.dcard h2{font-family:var(--display);font-size:28px;margin:0 0 4px}
.dcard .bar{margin:10px 0 6px}
.goal,.streak{display:flex;gap:12px;align-items:center}.goal b,.streak b{font-family:var(--display);font-size:26px;display:block;line-height:1.1}.goal small,.streak small{color:var(--mute);font-size:12px}
.ring{width:64px;height:64px;flex:none}.fire{font-size:40px}
.dcard.next{grid-column:span 1;position:relative;padding-right:40px}.dcard.next b{display:block;margin:4px 0}.dcard.next .go{position:absolute;right:16px;top:50%;transform:translateY(-50%);font-size:22px;color:var(--yel-t)}
.dcard.next:hover,.dcard.act:hover{border-color:var(--yel)}
.dcard.act b{display:block;font-size:16px}.dcard.act small{color:var(--mute)}
.dcard.act.red{background:linear-gradient(135deg,#F6EDEE,#F7F4F4);border-color:#E4D2D5}
.warnbar{background:#F8F6F1;border:1px solid #E4E0D2;color:#FFE59A;border-radius:12px;padding:10px 14px;margin-top:12px}
.tile.ok{border-color:#D4E3D9}
.chnav{display:flex;justify-content:space-between;margin-top:20px}
.qbody{display:flex;gap:14px;align-items:flex-start}
.qimg{width:110px;height:110px;flex:none;background:#FFFFFF;border-radius:12px;padding:6px}.qimg svg{width:100%;height:100%}
.q .qimg{margin-bottom:8px}
/* scheda d'esame */
.exam{max-width:980px}
.exbar{display:flex;align-items:center;gap:14px;background:#F8F8F9;border:1px solid var(--line);border-radius:14px;padding:10px 14px}
.exl{flex:1;font-weight:600;font-size:14px;color:var(--mute);letter-spacing:.04em}
.timer.low{color:#A90414}
.exgrid{display:grid;grid-template-columns:repeat(15,1fr);gap:5px;margin:12px 0}
.exgrid button{aspect-ratio:1;border:1px solid var(--line);background:var(--panel);border-radius:7px;font-size:12px;font-variant-numeric:tabular-nums;padding:0}
.exgrid button.f{background:#EEF0F3;border-color:#D5DBE1}
.exgrid button[aria-current=true]{outline:2px solid var(--yel);outline-offset:1px}
.exq{display:grid;grid-template-columns:auto 200px 1fr;grid-template-areas:"n fig txt" "vf vf vf";gap:14px 18px;background:var(--panel);border:1px solid var(--line);border-radius:16px;padding:18px;align-items:start}
.exn{grid-area:n;font-family:var(--display);font-weight:800;font-size:30px;color:var(--yel-t);min-width:38px}
.exfig{grid-area:fig;background:#FFFFFF;border-radius:12px;aspect-ratio:1;padding:10px;display:grid;place-items:center}.exfig svg{width:100%;height:100%}
.exfig .nofig{color:#4F565F;font-size:12px}
.extxt{grid-area:txt}.extxt .it{font-size:19px;line-height:1.45;font-weight:500}
.exvf{grid-area:vf;display:grid;grid-template-columns:1fr 1fr;gap:12px}
.exvf button{border:2px solid var(--line);background:var(--asphalt);border-radius:14px;padding:14px;font-family:var(--display);font-weight:800;font-size:24px}
.exvf button[aria-pressed=true]{background:var(--blue);border-color:#7FA8EC;color:#fff}
.exnav{justify-content:space-between;align-items:center}.exnav .btn{width:auto}
.tgl{display:flex;align-items:center;gap:6px;margin:0;font-size:13px}.tgl input{width:auto}
.askbox{background:#F7F4F4;border:1.5px solid var(--red);border-radius:14px;padding:14px;margin-top:12px}.askbox p{margin:0 0 6px}
.ex3{grid-template-columns:repeat(3,1fr);margin:14px 0}
.exintro{max-width:620px}
.corr{display:flex;flex-direction:column;gap:8px;max-width:980px}
.cr{display:grid;grid-template-columns:34px 64px 1fr auto;gap:12px;align-items:center;background:var(--panel);border:1px solid var(--line);border-left:4px solid var(--grn);border-radius:12px;padding:10px 12px}
.cr.ko{border-left-color:var(--red);background:#F7F5F5}
.crn{font-family:var(--display);font-weight:800;color:var(--mute)}
.crf{width:64px;height:64px}.crf svg{width:100%;height:100%;background:#FFFFFF;border-radius:8px;padding:3px}
.cra{display:flex;flex-direction:column;gap:2px;font-size:13px;text-align:right;white-space:nowrap}
/* statistiche */
.bars{width:100%;height:160px;margin-top:10px}
.hbars{display:flex;flex-direction:column;gap:6px;margin-top:10px}
.hb{display:grid;grid-template-columns:1fr 34%;grid-template-areas:"t t" "bar n";gap:2px 8px;background:none;border:0;text-align:left;padding:4px 0}
.hb span{grid-area:t;font-size:13px}.hb i{grid-area:bar;display:block;height:8px;border-radius:4px;background:var(--red);align-self:center;min-width:6px}.hb b{grid-area:n;font-size:12px;color:var(--mute)}
.hb{grid-template-columns:1fr auto}
.cal{display:grid;grid-template-columns:repeat(14,1fr);gap:5px;margin:12px 0 8px;max-width:520px}
.cal i{aspect-ratio:1;border-radius:4px;background:var(--panel2)}.cal i.l1{background:#ECF2EE}.cal i.l2{background:#2FA35A}.cal i.l3{background:#7FE0A0}
/* navigazione mobile */
.bnav{display:none}
.wa{color:#17652F;text-decoration:none;display:inline-block}
@media (max-width:1100px){.nav{display:none}}
@media (max-width:980px){
  .hero2{grid-template-columns:1fr;padding-top:28px}.hero-vis{min-height:380px}
  .split,.contact{grid-template-columns:1fr}
  .lgrid{grid-template-columns:repeat(3,1fr)}.feat2{grid-template-columns:1fr 1fr}.steps2{grid-template-columns:1fr 1fr}
  .dash{grid-template-columns:1fr 1fr}.hello2{grid-column:1/-1}
}
@media (max-width:860px){
  .top-in{gap:8px}.langs{order:9;width:100%}
  .brand small{display:none}
  .uname .un{display:none}
  body.has-bnav .rail-w{display:none}
  body.has-bnav main{padding-bottom:84px}
  .bnav{display:grid;grid-template-columns:repeat(5,1fr);position:fixed;left:0;right:0;bottom:0;z-index:8;background:rgba(246,247,248,1);backdrop-filter:blur(8px);border-top:1px solid var(--line);padding:6px 4px calc(6px + env(safe-area-inset-bottom,0px))}
  .bnav button{background:none;border:0;display:flex;flex-direction:column;align-items:center;gap:1px;padding:4px 0;color:var(--mute);min-width:0}
  .bnav span{font-size:20px;line-height:1.1}.bnav small{font-size:10px;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .bnav button[aria-current=true]{color:var(--yel-t)}
  .exgrid{grid-template-columns:repeat(10,1fr)}
  .exq{grid-template-columns:1fr;grid-template-areas:"n" "fig" "txt" "vf";padding:14px}
  .exfig{width:min(220px,70%);justify-self:center}
  .exn{font-size:22px}
  .cr{grid-template-columns:28px 48px 1fr;}.cr .cra{grid-column:2/-1;flex-direction:row;gap:14px;text-align:left}
  .crf{width:48px;height:48px}
  .qbody{flex-direction:column}
  .foot{padding-bottom:90px}
}
@media (max-width:560px){
  .lgrid{grid-template-columns:1fr 1fr}.feat2,.steps2{grid-template-columns:1fr}
  .dash{grid-template-columns:1fr}
  .phone{width:240px}.float{width:70px;height:70px}
  .trust{gap:16px}.trust b{font-size:22px}
  .who .ghost{padding:4px 8px}
  .ex3{grid-template-columns:repeat(3,1fr)}.ex3 b{font-size:22px}
  .cta-row .cta{flex:1 1 100%}
}
.exq.noimg{grid-template-columns:auto 1fr;grid-template-areas:"n txt" "vf vf"}
@media (max-width:860px){.exq.noimg{grid-template-areas:"n" "txt" "vf";grid-template-columns:1fr}.exl{font-size:12px}}
@media (max-width:560px){.grid{grid-template-columns:1fr 1fr;gap:8px}.tile{padding:10px}.tile .sg{height:32px}.tile .sg span{width:32px;height:32px}.tile b{font-size:13px}.tile .nat{font-size:.9em}}
.tw td .mono{white-space:nowrap}
.books{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:12px;margin:12px 0}
.book{display:grid;grid-template-columns:96px 1fr;gap:14px;background:var(--panel);border:1px solid var(--line);border-radius:14px;padding:12px;align-items:center}
.book.mine{border-color:var(--yel)}
.book img{width:96px;height:auto;border-radius:6px;box-shadow:0 8px 20px rgba(24,32,96,0.14);max-width:100%}
.book b{display:block;font-size:16px}.book span{display:block;color:#17652F;margin:2px 0 6px}.book span[lang=ur]{font-family:var(--ur)}.book span[lang=pa]{font-family:var(--pa)}.book span[lang=ar]{font-family:var(--ar)}
.book .row{margin-top:8px}.book .ghost{text-decoration:none;color:var(--paper);display:inline-flex;align-items:center;padding:6px 12px}
.dcard.bookc{display:flex;gap:12px;align-items:center}.dcard.bookc img{width:46px;height:auto;border-radius:4px;flex:none}
.bookshow{position:relative;height:330px}
.bk{position:absolute;width:180px;height:auto;border-radius:6px;box-shadow:0 18px 40px rgba(24,32,96,0.175);max-width:100%;top:20px}
.bk.b0{left:0;transform:rotate(-10deg)}.bk.b1{left:12%;transform:rotate(-5deg)}.bk.b2{left:24%;transform:rotate(0)}.bk.b3{left:36%;transform:rotate(5deg)}.bk.b4{left:48%;transform:rotate(10deg)}
.bk.top{z-index:2;top:0}
#libro .row .ghost[lang=ur]{font-family:var(--ur)}#libro .row .ghost[lang=pa]{font-family:var(--pa)}#libro .row .ghost[lang=ar]{font-family:var(--ar)}
@media (max-width:560px){.bookshow{height:240px}.bk{width:120px}}
.mqlist{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:8px;margin-top:14px}
.mqc{display:grid;grid-template-columns:30px 1fr auto;gap:10px;align-items:center;background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:10px 12px;text-align:left}
.mqc:hover{border-color:var(--yel)}.mqt{display:flex;flex-direction:column;gap:3px;min-width:0}.mqt b{font-size:14px}.mqt small{color:var(--mute);font-size:12px}
.mbar{display:block;height:6px;background:var(--panel2);border-radius:4px;overflow:hidden}.mbar i{display:block;height:100%;background:var(--grn)}
.mqn{font-size:12px;color:var(--mute);font-variant-numeric:tabular-nums}
.subs{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:8px}
.subb{display:grid;grid-template-columns:52px 1fr;gap:10px;align-items:center;background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:8px;text-align:left}
.subb:hover{border-color:var(--yel)}.subb img{width:52px;height:52px;object-fit:contain;background:#FFFFFF;border-radius:8px;padding:3px}
.subb b{font-size:13px;display:block}.subb small{color:var(--mute);font-size:12px}
.nofig2{width:52px;height:52px;border-radius:8px;background:var(--panel2);display:grid;place-items:center;font-family:var(--display);color:var(--mute)}
.qimg img,.exfig img,.crf img{width:100%;height:100%;object-fit:contain}
.crf img{background:#FFFFFF;border-radius:8px;padding:3px}
.tfig{display:inline-block;width:44px;height:44px;vertical-align:middle;margin-right:8px;background:#FFFFFF;border-radius:6px;padding:2px}.tfig img,.tfig svg{width:100%;height:100%;object-fit:contain}
.bar.mb{margin:8px 0}
.mqlink{display:flex;flex-wrap:wrap;gap:6px;align-items:baseline;width:100%;max-width:760px;text-align:left;background:#F3F7F4;border:1px solid #D4E3D9;border-radius:12px;padding:10px 14px;margin-bottom:12px}
.mqlink span{color:#17652F;font-size:13px}
.vh.small2{font-size:18px;color:var(--mute)}
.subs2{display:flex;flex-direction:column;gap:8px;max-width:980px}
.msub{display:grid;grid-template-columns:56px 1fr auto;gap:12px;align-items:start;background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:10px}
.msub img{width:56px;height:56px;object-fit:contain;background:#FFFFFF;border-radius:8px;padding:3px}
.msubt{min-width:0}.msubt b{display:block}.msubt small{color:var(--mute);font-size:12px}
.msub details,.apbox{margin-top:6px}.msub summary,.apbox summary{cursor:pointer;color:var(--yel-t);font-size:13px}
.msub details p,.apbox p{margin:6px 0;color:#333943;font-size:14px;line-height:1.55}
.apbox{background:var(--panel);border:1px solid #E4E0D2;border-radius:12px;padding:10px 14px;max-width:760px;margin-bottom:12px}
@media (max-width:560px){.msub{grid-template-columns:44px 1fr}.msub img{width:44px;height:44px}.msub .cta{grid-column:1/-1}}

/* ===== v3: tramonto sulla strada, scena 3D ===== */
.top{background:rgba(241,241,248,0.97);backdrop-filter:blur(14px) saturate(1.4);-webkit-backdrop-filter:blur(14px) saturate(1.4);border-bottom-color:rgba(24,32,96,0.044)}
body::before{background:#F1F1F8}
.cta{background:linear-gradient(180deg,#FFD54F,#FFB300);box-shadow:0 1px 0 rgba(24,32,96,0.33) inset,0 -3px 0 rgba(24,32,96,0.063) inset,0 10px 24px rgba(255,170,0,.35)}
.cta:hover{transform:translateY(-2px);box-shadow:0 1px 0 rgba(24,32,96,0.33) inset,0 -3px 0 rgba(24,32,96,0.063) inset,0 16px 30px rgba(255,170,0,.45)}
.cta:active{transform:translateY(1px)}
.cta.ghostc{background:rgba(24,32,96,0.033);border-color:rgba(24,32,96,0.154);backdrop-filter:blur(6px)}
.lg[aria-pressed=true],.tab[aria-selected=true]{background:var(--yel)}

/* hero */
.hero3{--mx:0;--my:0;--hz:56%;--vx:64%;position:relative;margin-inline:calc(-1*max(16px,env(safe-area-inset-left,0px)));min-height:min(860px,calc(100svh - 60px));display:flex;align-items:center;overflow:hidden;isolation:isolate}
.scene{position:absolute;inset:0;z-index:-1;perspective:700px;perspective-origin:var(--vx) var(--hz);overflow:hidden;background:#A8C79A}
.sky{position:absolute;inset:0 0 calc(100% - var(--hz)) 0;background:linear-gradient(180deg,#DCEBFA 0%,#E8F2FC 40%,#FDF1DF 78%,#FFE2C2 100%)}
.sun{position:absolute;left:calc(var(--vx) - 170px);bottom:-120px;width:340px;height:340px;border-radius:50%;background:radial-gradient(circle at 50% 40%,#FFF1B8,#FFC94A 38%,#FF7A45 70%);box-shadow:0 0 120px 40px rgba(255,170,90,.35),0 0 260px 120px rgba(255,199,44,.18);
 -webkit-mask:linear-gradient(180deg,#000 52%,transparent 52% 57%,#000 57% 66%,transparent 66% 70%,#000 70% 77%,transparent 77% 80%,#000 80%);mask:linear-gradient(180deg,#000 52%,transparent 52% 57%,#000 57% 66%,transparent 66% 70%,#000 70% 77%,transparent 77% 80%,#000 80%);translate:calc(var(--mx)*-18px) 0}
.alps{position:absolute;left:-2%;right:-2%;bottom:-1px;width:104%;height:42%;translate:calc(var(--mx)*-10px) 0}
.alps .m1{fill:#C9DCEB;opacity:.9}.alps .m2{fill:#B5CFB0}
.world{position:absolute;inset:0;transform-style:preserve-3d;transform:rotateY(calc(var(--mx)*-3deg))}
.track{position:absolute;left:var(--vx);top:var(--hz);width:3200px;height:6000px;margin:-6000px 0 0 -1600px;transform-origin:50% 100%;transform-style:preserve-3d;
 background:url(road_tile.svg) 0 0/3200px 1200px repeat-y;transform:translateY(170px) translateZ(250px) rotateX(90deg)}
@media (prefers-reduced-motion:no-preference){.track{animation:drive3 5.5s linear infinite}
 @keyframes drive3{from{transform:translateY(170px) translateZ(250px) rotateX(90deg) translateY(0)}to{transform:translateY(170px) translateZ(250px) rotateX(90deg) translateY(1200px)}}}
.blk{position:absolute;left:0;width:3200px;height:1200px;transform-style:preserve-3d}
.sg{position:absolute;width:120px;height:310px;margin:-310px 0 0 -60px;transform-origin:50% 100%;transform:rotateX(-90deg);display:flex;flex-direction:column;align-items:center}
.sg .pl{width:120px;height:120px;filter:drop-shadow(0 4px 8px rgba(0,0,0,.4))}.sg .pl svg{width:100%;height:100%;display:block}
.sg i{display:block;width:10px;flex:1;background:linear-gradient(90deg,#7E83A8,#E6E8F5,#7E83A8);border-radius:4px}
.sg.tl{height:360px;margin-top:-360px}
.tlb{width:58px;height:150px;background:#F6F7F8;border-radius:12px;display:flex;flex-direction:column;justify-content:space-around;align-items:center;box-shadow:0 0 0 4px #2A2F38}
.tlb b{width:38px;height:38px;border-radius:50%;background:#F1F2F3}
.tlb b.r{background:#FF2D3D;box-shadow:0 0 22px 6px rgba(255,45,61,.7)}
@media (prefers-reduced-motion:no-preference){
 .tlb b.r{animation:tlr 6s steps(1) infinite}.tlb b.y{animation:tly 6s steps(1) infinite}.tlb b.g{animation:tlg 6s steps(1) infinite}
 @keyframes tlr{0%{background:#FF2D3D;box-shadow:0 0 22px 6px rgba(255,45,61,.7)}45%,100%{background:#2A2F38;box-shadow:none}}
 @keyframes tlg{0%{background:#2A2F38;box-shadow:none}45%{background:#2BE07A;box-shadow:0 0 22px 6px rgba(43,224,122,.7)}85%,100%{background:#2A2F38;box-shadow:none}}
 @keyframes tly{0%{background:#2A2F38;box-shadow:none}85%{background:#FFC72C;box-shadow:0 0 22px 6px rgba(255,199,44,.7)}}}
/* auto realistiche: sagome in piedi nella scena 3D */
.car{position:absolute;left:0;width:440px;height:125px;margin:-125px 0 0 -220px;transform-origin:50% 100%;transform:translateX(900px) rotateX(-90deg)}
.car .cs{width:100%;height:100%;display:block}
.car.gx .cs{transform:scaleX(-1)}
.car .wh{transform-box:fill-box;transform-origin:center}
.carf{position:absolute;left:1450px;top:0;width:230px;height:109px;margin:-109px 0 0 -115px;transform-origin:50% 100%;transform:translateY(600px) rotateX(-90deg)}
.carf .cf{width:100%;height:100%;display:block;overflow:visible}
@media (prefers-reduced-motion:no-preference){
 .car.gx{animation:carx 7s linear infinite}.car.gxr{animation:carxr 8s linear infinite}
 @keyframes carx{from{transform:translateX(150px) rotateX(-90deg)}to{transform:translateX(3050px) rotateX(-90deg)}}
 @keyframes carxr{from{transform:translateX(3050px) rotateX(-90deg)}to{transform:translateX(150px) rotateX(-90deg)}}
 .car .wh{animation:spin .5s linear infinite}.car.gxr .wh{animation-direction:reverse}
 @keyframes spin{to{transform:rotate(-360deg)}}
 .carf{animation:onc 3.2s linear infinite}
 @keyframes onc{from{transform:translateY(-200px) rotateX(-90deg)}to{transform:translateY(1250px) rotateX(-90deg)}}}
.hero-in{position:relative;max-width:1180px;width:100%;margin:0 auto;padding:56px max(16px,env(safe-area-inset-left,0px)) 80px;display:grid;grid-template-columns:1.1fr .9fr;gap:30px;align-items:center}
.hero-txt{position:relative}
.hero-txt::before{content:"";position:absolute;inset:-80px -120px -80px -200px;z-index:-1;background:radial-gradient(closest-side,rgba(241,241,248,1) 40%,rgba(241,241,248,0.75) 70%,transparent);pointer-events:none}
.hero3 h1{font-family:var(--display);font-weight:800;font-size:clamp(38px,5.6vw,70px);line-height:1.1;margin:0;text-wrap:balance;letter-spacing:-.015em;text-shadow:0 4px 30px rgba(24,32,96,0.21)}
.hero3 h1 .hl{background:linear-gradient(180deg,#FFD54F,#FFB300);color:#14171C;border-radius:14px;padding:0 14px;display:inline-block;transform:rotate(-2deg);text-shadow:none;
 box-shadow:0 2px 0 #FFE88A inset,0 -6px 0 rgba(24,32,96,0.063) inset,3px 4px 0 #B8780A,6px 8px 0 #7A4A05,0 18px 34px rgba(24,32,96,0.158);margin:.04em 0 .14em}
.hero3 .eyebrow{background:rgba(24,32,96,0.044);border-color:rgba(255,213,79,.45);backdrop-filter:blur(6px);text-transform:none;letter-spacing:.02em;font-size:13px}
.hero3 .lead{color:#2A3157}
.hero3 .trust b{color:#1B2142;text-shadow:none}
.hero3 .h1n{text-shadow:0 2px 12px rgba(24,32,96,0.28)}
.hero3 .hero-vis{position:relative;min-height:470px;perspective:1100px;display:grid;place-items:center}
.phone3d{transform-style:preserve-3d;transform:rotateY(calc(-18deg + var(--mx)*16deg)) rotateX(calc(8deg - var(--my)*12deg));transition:transform .25s ease-out}
.phone3d .phone{transform:none;background:#F3F3F9;border-color:#2B3290;
 box-shadow:1px 1px 0 #262C84,2px 2px 0 #232980,3px 3px 0 #20267A,4px 4px 0 #1D2374,5px 5px 0 #1A206E,6px 6px 0 #171D68,7px 7px 0 #141A62,8px 8px 0 #11175C,30px 40px 70px rgba(24,32,96,0.227),0 0 0 1px #4A55C8}
.phone3d .ph-q,.phone3d .ph-grid i{background:#EAEBF4}.phone3d .ph-grid i.f{background:#E9F2EE}
.stop3d{position:absolute;top:-6px;right:2%;width:150px;height:150px;transform-style:preserve-3d;z-index:3;transform:translate3d(calc(var(--mx)*-30px),calc(var(--my)*-20px),60px) rotateY(-24deg) rotateX(10deg)}
.stop3d i,.stop3d .back{position:absolute;inset:0;clip-path:polygon(29.3% 0,70.7% 0,100% 29.3%,100% 70.7%,70.7% 100%,29.3% 100%,0 70.7%,0 29.3%);background:#E7E8F2;transform:translateZ(calc(var(--z)*-1px))}
.stop3d i:nth-child(odd){background:#B9BCD3}
.stop3d .back{background:linear-gradient(135deg,#C9CCE0,#8D91B0);transform:translateZ(-12px) rotateY(180deg)}
.stop3d .face{position:absolute;inset:0;transform:translateZ(1px)}.stop3d .face svg{width:100%;height:100%;display:block}
.tri3d{position:absolute;bottom:18px;left:0;width:120px;height:110px;z-index:3;transform:translate3d(calc(var(--mx)*24px),calc(var(--my)*16px),40px) rotateY(22deg) rotateX(-6deg);filter:drop-shadow(6px 8px 0 #A9ACC7) drop-shadow(0 20px 26px rgba(5,4,30,.55))}
.tri3d .face svg{width:100%;height:100%}
@media (prefers-reduced-motion:no-preference){
 .stop3d{animation:spin3 9s ease-in-out infinite}@keyframes spin3{0%,100%{rotate:y -10deg}50%{rotate:y 32deg}}
 .tri3d{animation:float3 7s ease-in-out infinite}@keyframes float3{50%{translate:0 -12px}}}

/* sezioni: superfici in vetro con profondità */
.sec{padding-top:72px}
.sec h2{font-size:clamp(28px,3.8vw,44px)}
.feat2>div,.lcard,.plan,.steps2>div,.faq details,.cbox,.pc,.dcard,.box{background:linear-gradient(160deg,rgba(24,32,96,0.05),rgba(24,32,96,0.014));border:1px solid rgba(24,32,96,0.066);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}
[data-tilt]{--rx:0deg;--ry:0deg;--gx:50%;--gy:50%;transform:perspective(900px) rotateX(var(--rx)) rotateY(var(--ry));transition:transform .35s cubic-bezier(.2,.7,.2,1),box-shadow .35s;transform-style:preserve-3d;position:relative}
[data-tilt].tilting{transition:transform .08s linear;box-shadow:0 26px 50px rgba(24,32,96,0.193)}
[data-tilt]::after{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;background:radial-gradient(400px circle at var(--gx) var(--gy),rgba(24,32,96,0.088),transparent 45%);opacity:0;transition:opacity .3s}
[data-tilt].tilting::after{opacity:1}
.feat2>div{padding:24px 22px 22px}
.feat2 .ic{width:58px;height:58px;border-radius:16px;display:grid;place-items:center;font-size:28px;margin-bottom:14px;transform:translateZ(30px);
 background:linear-gradient(145deg,#3A46C8,#1E2694);box-shadow:0 1px 0 rgba(24,32,96,0.193) inset,0 -4px 0 rgba(24,32,96,0.087) inset,0 12px 22px rgba(24,32,96,0.175)}
.feat2>div:nth-child(3n+2) .ic{background:linear-gradient(145deg,#FF5E9B,#C21E62)}
.feat2>div:nth-child(3n) .ic{background:linear-gradient(145deg,#FFB24F,#E5602A)}
.feat2 b,.feat2 p{transform:translateZ(14px);display:block}
.lcard{padding:20px 12px}.lcard b{transform:translateZ(24px)}
.lcard[aria-pressed=true]{border-color:var(--yel);background:linear-gradient(160deg,rgba(255,199,44,.28),rgba(255,122,69,.08));box-shadow:0 0 0 1px var(--yel),0 18px 40px rgba(255,150,40,.22)}
.pc .num{width:30px;height:30px;border-radius:9px;display:grid;place-items:center;font-family:var(--display);font-weight:800;background:linear-gradient(145deg,#3A46C8,#1E2694);box-shadow:0 -3px 0 rgba(24,32,96,0.087) inset,0 4px 10px rgba(24,32,96,0.14)}
.pc.free .num{background:linear-gradient(145deg,#1F8A47,#126B35)}
.pc:hover{border-color:rgba(255,213,79,.6)}
.steps2>div{border-top:0;box-shadow:0 -4px 0 var(--yel) inset}
.steps2 b{width:56px;height:56px;border-radius:50%;display:grid;place-items:center;color:#14171C;font-size:28px;margin-bottom:12px;background:radial-gradient(circle at 35% 30%,#FFF0A8,#FFC72C 45%,#D88A00);box-shadow:0 -4px 0 rgba(24,32,96,0.07) inset,0 10px 20px rgba(255,170,0,.3)}
.plan{padding:28px 22px}
.plan.best{border-color:var(--yel);background:linear-gradient(165deg,rgba(255,199,44,.24),rgba(255,62,138,.10) 55%,rgba(24,32,96,0.017));box-shadow:0 30px 60px rgba(24,32,96,0.193),0 0 0 1px var(--yel),0 0 60px rgba(255,140,60,.18);transform:perspective(900px) translateZ(24px) rotateX(var(--rx)) rotateY(var(--ry))}
.pp{background:linear-gradient(180deg,#2A3270,#1B2142);-webkit-background-clip:text;background-clip:text;color:transparent;font-size:46px}
.plan.best .pp{background:linear-gradient(180deg,#D99A00,#9A6500);-webkit-background-clip:text;background-clip:text}

/* libri 3D */
.shelf{position:relative;height:380px;perspective:1400px;display:flex;justify-content:center;align-items:center}
.book3d{--w:190px;--h:268px;--d:34px;position:absolute;width:var(--w);height:var(--h);transform-style:preserve-3d;transition:transform .6s cubic-bezier(.2,.7,.2,1)}
.book3d>div{position:absolute;backface-visibility:hidden}
.book3d .bf{inset:0;transform:translateZ(calc(var(--d)/2));border-radius:2px 6px 6px 2px;overflow:hidden;box-shadow:inset 4px 0 6px rgba(24,32,96,0.087)}
.book3d .bf img{width:100%;height:100%;object-fit:cover;display:block}
.book3d .bsp{width:var(--d);height:var(--h);left:calc(50% - var(--d)/2);transform:rotateY(-90deg) translateZ(calc(var(--w)/2));background:linear-gradient(90deg,#F2F2F8,#2A2F7A 40%,#F2F2F8)}
.book3d .bpg{width:var(--d);height:calc(var(--h) - 8px);top:4px;left:calc(50% - var(--d)/2);transform:rotateY(90deg) translateZ(calc(var(--w)/2 - 3px));background:repeating-linear-gradient(90deg,#F5F3EA 0 2px,#DCD8C8 2px 3px)}
.book3d .bbk{inset:0;transform:rotateY(180deg) translateZ(calc(var(--d)/2));background:#ECEDF6}
.book3d.k0{transform:translate3d(-150px,10px,-120px) rotateY(38deg) rotateZ(-4deg)}
.book3d.k1{transform:translate3d(150px,10px,-120px) rotateY(-38deg) rotateZ(4deg)}
.book3d.k2{transform:translate3d(0,0,40px) rotateY(-22deg) rotateX(6deg);filter:drop-shadow(0 40px 40px rgba(5,4,30,.6))}
.shelf:hover .book3d.k2{transform:translate3d(0,-10px,90px) rotateY(-8deg) rotateX(4deg)}
.shelf:hover .book3d.k0{transform:translate3d(-180px,10px,-140px) rotateY(48deg) rotateZ(-6deg)}
.shelf:hover .book3d.k1{transform:translate3d(180px,10px,-140px) rotateY(-48deg) rotateZ(6deg)}
/* icona app 3D */
.ico3d{perspective:800px}
.ico3d .ico{background:linear-gradient(160deg,#1E2694,#F1F1F8);border:0;transform:rotateY(-24deg) rotateX(16deg);
 box-shadow:1px 1px 0 #2A33A6,2px 2px 0 #2730A0,3px 3px 0 #242C99,4px 4px 0 #212892,5px 5px 0 #1E258B,6px 6px 0 #1B2184,7px 7px 0 #181E7C,8px 8px 0 #151A74,30px 36px 60px rgba(24,32,96,0.227),0 1px 0 rgba(24,32,96,0.138) inset}
@media (prefers-reduced-motion:no-preference){.ico3d .ico{animation:ico 8s ease-in-out infinite}@keyframes ico{50%{transform:rotateY(18deg) rotateX(10deg)}}}
.brand .b{box-shadow:2px 3px 0 #B8780A,0 6px 12px rgba(24,32,96,0.122)}
.foot{border-top:1px solid rgba(24,32,96,0.044)}

@media (max-width:900px){
 .hero3{min-height:auto}
 .hero-in{grid-template-columns:1fr;padding-top:36px;padding-bottom:40px}
 .hero3 .hero-vis{min-height:400px}
 .scene{perspective:560px}
 .hero3{--hz:64%;--vx:50%}
}
@media (max-width:560px){
 .hero3 .hero-vis{min-height:360px}.phone3d .phone{width:220px}.stop3d{width:100px;height:100px;right:0}.tri3d{width:84px;height:78px}
 .shelf{height:300px}.book3d{--w:140px;--h:198px;--d:26px}.book3d.k0{transform:translate3d(-95px,10px,-120px) rotateY(38deg)}.book3d.k1{transform:translate3d(95px,10px,-120px) rotateY(-38deg)}
 .sun{width:220px;height:220px;bottom:-80px;left:55%}
}

/* ===== voce e dizionario ===== */
.w{cursor:pointer;border-radius:4px;transition:background .15s}
@media (hover:hover){.w:hover{background:rgba(255,213,79,.18);box-shadow:0 1px 0 rgba(255,213,79,.7)}}
.w.sel{background:var(--yel);color:#14171C}
.qtools{display:flex;align-items:center;gap:10px;margin-top:10px;flex-wrap:wrap}
.qtools .tip{font-size:12px;color:var(--mute)}
.say{display:inline-flex;align-items:center;gap:6px;background:linear-gradient(145deg,#3A46C8,#1E2694);color:#fff;border:0;border-radius:999px;padding:6px 14px 6px 10px;font-size:13px;font-weight:600;box-shadow:0 -2px 0 rgba(24,32,96,0.087) inset,0 6px 14px rgba(24,32,96,0.14)}
.say.on{background:linear-gradient(145deg,#FF5E9B,#C21E62)}
@media (prefers-reduced-motion:no-preference){.say.on svg{animation:pulse 1s ease-in-out infinite}@keyframes pulse{50%{transform:scale(1.18)}}}
.say.mini{padding:5px;border-radius:50%}.say.mini span{display:none}
#wpop{position:fixed;z-index:60;min-width:150px;max-width:min(320px,calc(100vw - 16px));background:#F6F4FF;color:#14171C;border-radius:14px;padding:10px 14px;box-shadow:0 18px 40px rgba(24,32,96,0.193),0 0 0 1px rgba(24,32,96,0.22)}
#wpop .wp-h{display:flex;align-items:center;justify-content:space-between;gap:10px}
#wpop .wp-h b{font-size:16px}
#wpop .wp-t{font-size:17px;margin-top:4px;color:#1E2694}
#wpop .wp-t.nat{color:#1E2694}
#wpop .wp-t[lang=ur]{font-family:var(--ur);line-height:2}
#wpop .wp-t[lang=ar]{font-family:var(--ar)}
#wpop .wp-t[lang=pa]{font-family:var(--pa)}
#wpop .wp-t[lang=hi]{font-family:var(--hi)}
#wpop small{color:#484A66}
#toast{position:fixed;left:50%;bottom:calc(84px + env(safe-area-inset-bottom,0px));transform:translate(-50%,20px);opacity:0;pointer-events:none;z-index:70;background:#F6F4FF;color:#14171C;border-radius:12px;padding:10px 16px;max-width:min(520px,calc(100vw - 32px));font-size:14px;box-shadow:0 18px 40px rgba(24,32,96,0.193);transition:opacity .25s,transform .25s}
#toast.on{opacity:1;transform:translate(-50%,0)}

/* ===== pronto per l'esame ===== */
.dcard.ready{grid-column:1/-1;display:grid;grid-template-columns:220px 1fr;gap:20px;align-items:center;background:linear-gradient(135deg,rgba(255,62,138,.16),rgba(59,227,242,.08) 60%,rgba(24,32,96,0.017))}
.dcard.ready.yes{background:linear-gradient(135deg,rgba(56,210,122,.22),rgba(255,199,44,.10) 60%,rgba(24,32,96,0.017));border-color:rgba(127,224,160,.5)}
.rg{display:flex;flex-direction:column;align-items:center;text-align:center;gap:2px}
.rg b{font-family:var(--display);font-size:20px}.rg small{color:var(--mute);font-size:12px}
.gauge{width:190px;height:auto}
.rp{display:flex;flex-direction:column;gap:9px}
.rp>div{display:grid;grid-template-columns:190px 1fr auto;gap:10px;align-items:center;font-size:13px}
.rp small{color:var(--mute);font-size:12px;white-space:nowrap}
.rp .mbar{display:block;height:8px;border-radius:6px;background:rgba(24,32,96,0.055);overflow:hidden}.rp .mbar i{display:block;height:100%;border-radius:6px;background:linear-gradient(90deg,#FF3E8A,#FFC72C 60%,#38D27A)}
.tip2{margin:4px 0 0;font-size:14px;color:#1D1D91}
.dcard.ready .row{margin-top:4px;align-items:center;gap:10px;flex-wrap:wrap}
@media (max-width:760px){.dcard.ready{grid-template-columns:1fr}.rp>div{grid-template-columns:1fr auto}.rp>div .mbar{grid-column:1/-1;order:3}}
/* attestato */
.cert{background:#fff;color:#14171C;border-radius:8px;margin:16px 0;padding:14px;box-shadow:0 30px 60px rgba(5,4,30,.5);aspect-ratio:1.414;max-width:1000px}
.cert-in{height:100%;border:3px solid #1E2694;outline:1px solid #FFC72C;outline-offset:-10px;border-radius:4px;padding:5% 7%;display:flex;flex-direction:column;align-items:center;text-align:center;justify-content:space-between;background:radial-gradient(60% 60% at 50% 0%,rgba(255,199,44,.12),transparent),#fff}
.cert-brand{font-family:var(--display);font-weight:800;font-size:22px;color:#1E2694;display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:center}
.cert-brand .b{background:#FFC72C;color:#14171C;border-radius:6px;padding:0 8px;transform:rotate(-5deg);display:inline-block}
.cert-brand small{font-family:var(--body);font-weight:500;font-size:12px;color:#6B6F99;width:100%}
.cert-k{font-size:14px;letter-spacing:.1em;color:#C21E62;margin:0;font-weight:600}
.cert h1{font-family:var(--display);font-size:clamp(28px,5vw,48px);margin:0;color:#14171C}
.cert-t{max-width:60ch;margin:0;font-size:15px}
.cert-s{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;width:100%}
.cert-s div{border:1px solid #DADCF2;border-radius:10px;padding:8px}.cert-s b{display:block;font-family:var(--display);font-size:22px;color:#1E2694}.cert-s span{font-size:11px;color:#555a80}
.cert-f{display:flex;justify-content:space-between;align-items:flex-end;width:100%;font-size:13px}
.cert-f .sig{display:flex;flex-direction:column;align-items:center;gap:4px}.cert-f .sig i{display:block;width:200px;border-bottom:1px solid #14171C;height:34px}
.cert-n{font-size:10.5px;color:#6B6F99;margin:0}
@media print{
 @page{size:A4 landscape;margin:8mm}
 html,body{background:#fff!important}
 body.certp .cert,body.certp .cert *{-webkit-print-color-adjust:exact;print-color-adjust:exact}
 body.certp .top,body.certp .rail-w,body.certp .bnav,body.certp .foot,body.certp .noprint{display:none!important}
 body.certp .app{display:block;padding:0}body.certp .cert{box-shadow:none;margin:0;max-width:none;width:100%;aspect-ratio:auto;height:186mm;padding:0}
}
.psrow{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}@media (max-width:700px){.psrow{grid-template-columns:1fr}}

/* telefono animato */
.ph-q{transition:opacity .3s}
.ph-q.in{animation:phin .45s ease-out}@keyframes phin{from{opacity:0;transform:translateX(14px)}to{opacity:1;transform:none}}
.ph-q p{margin:0}
.ph-vf span{transition:background .2s,border-color .2s,transform .15s}
.phone3d .ph-vf span:first-child{border-color:var(--line);background:transparent}
.phone3d .ph-vf span.tap{transform:scale(.94)}
.phone3d .ph-vf span.ok{background:#1F8A47;border-color:#38D27A;color:#fff;box-shadow:0 0 18px rgba(56,210,122,.55)}
.phone3d .ph-vf span.ko{background:#8E1B2B;border-color:#FF4D6A;color:#fff;box-shadow:0 0 18px rgba(255,77,106,.5)}
.phone3d .ph-grid i{transition:background .3s}
.fgt{margin:10px 0 0;text-align:right;font-size:14px}
.regnote{background:rgba(56,210,122,.12);border:1px solid rgba(56,210,122,.4);border-radius:10px;padding:10px 12px;font-size:14px;margin:0 0 6px}
.freebar.fu{max-width:1000px}
.tile.lk{opacity:.6;position:relative}.tile.lk::after{content:"🔒";position:absolute;top:8px;right:10px;font-size:16px}
.vsec{display:grid;grid-template-columns:.8fr 1.2fr;gap:32px;align-items:center}
.promo{perspective:1200px}
.promo video{width:100%;aspect-ratio:16/9;border-radius:18px;background:#F1F1F8;display:block;transform:rotateY(-8deg) rotateX(3deg);box-shadow:1px 1px 0 #2A33A6,3px 3px 0 #242C99,5px 5px 0 #1E258B,7px 7px 0 #181E7C,30px 40px 70px rgba(24,32,96,0.21),0 0 0 2px rgba(255,199,44,.5);transition:transform .5s}
.promo video:hover,.promo video:focus{transform:none}
@media (max-width:900px){.vsec{grid-template-columns:1fr}.promo video{transform:none}}

/* ===== gioco: guida e rispondi ===== */
.gameroot{position:relative;height:min(76vh,640px);min-height:420px;border-radius:18px;overflow:hidden;box-shadow:0 30px 60px rgba(5,4,30,.55),0 0 0 2px rgba(255,199,44,.5)}
.gm{position:absolute;inset:0;touch-action:none;user-select:none;-webkit-user-select:none}
.gm canvas{width:100%;height:100%;display:block;background:#141046}
.gm.hit{animation:shake .4s}@keyframes shake{25%{transform:translateX(-8px)}50%{transform:translateX(8px)}75%{transform:translateX(-4px)}}
.gm-hud{position:absolute;left:0;right:0;top:0;display:flex;justify-content:space-between;align-items:flex-start;padding:12px 14px;pointer-events:none;gap:10px}
.gm-l,.gm-r{display:flex;gap:10px;align-items:center;background:rgba(12,17,64,.7);border-radius:14px;padding:6px 12px;backdrop-filter:blur(6px)}
.gm-lives{color:#FF4D6A;font-size:20px;letter-spacing:2px}.gm-score{font-family:var(--display);font-size:18px}
.gm-lim{width:40px;height:40px;display:block}.gm-lim svg{width:100%;height:100%}
.gm-spd{display:flex;flex-direction:column;align-items:center;line-height:1}.gm-spd b{font-family:var(--display);font-size:28px}.gm-spd small{font-size:11px;color:var(--mute)}
.gm-spd.over b{color:#FF4D6A}
.gm-c{flex:1;display:flex;justify-content:center}
.gm-msg{opacity:0;transition:opacity .3s;background:rgba(12,17,64,.85);border:1px solid rgba(255,199,44,.6);border-radius:12px;padding:8px 14px;font-weight:600;font-size:15px;text-align:center;max-width:460px}
.gm-msg.on{opacity:1}.gm-msg.bad{border-color:#FF4D6A;background:rgba(120,15,35,.85)}
.gm-bar{position:absolute;left:14px;right:14px;top:70px;height:6px;border-radius:4px;background:rgba(255,255,255,.15)}.gm-bar i{display:block;height:100%;border-radius:4px;background:linear-gradient(90deg,#FFC72C,#38D27A)}
.gm-ctl{position:absolute;left:0;right:0;bottom:0;display:flex;justify-content:space-between;padding:12px;gap:10px;pointer-events:none}
.gm-ctl button{pointer-events:auto;border:0;border-radius:16px;font-weight:700;color:#fff;min-width:64px;height:64px;font-size:22px;background:rgba(12,17,64,.86);box-shadow:0 0 0 2px rgba(255,255,255,.25) inset;backdrop-filter:blur(6px)}
.gm-ctl .gm-gas{background:rgba(30,122,69,.8);font-size:15px;margin-left:auto}.gm-ctl .gm-brake{background:rgba(142,27,43,.8);font-size:15px;margin-left:auto}
.gm-ctl .gm-left{order:0}.gm-ctl .gm-brake{order:2}.gm-ctl .gm-gas{order:3;margin-left:0}.gm-ctl .gm-right{order:1}
.gm-ctl button.on{transform:scale(.94);filter:brightness(1.3)}
@media (hover:hover) and (pointer:fine){.gm-ctl{opacity:.75}}
.gm-ov{position:absolute;inset:0;display:none;place-items:center;background:rgba(8,10,40,.55);backdrop-filter:blur(3px);padding:14px}
.gm-ov.on{display:grid}
.gq{width:min(640px,100%);max-height:100%;overflow:auto;background:linear-gradient(160deg,#1E2694,#EBECF5);border:1px solid rgba(24,32,96,0.099);border-radius:20px;padding:18px 20px;box-shadow:0 30px 60px rgba(24,32,96,0.175)}
.gq-h{display:flex;justify-content:space-between;color:var(--mute);font-size:13px}.gq-h span:last-child{color:#A9041F;letter-spacing:2px}
.gq-b{display:flex;gap:14px;align-items:flex-start;margin:12px 0}.gq-img{width:110px;height:110px;flex:none;background:#FFFFFF;border-radius:14px;padding:8px}.gq-img svg{width:100%;height:100%}
.gq-it{font-size:19px;font-weight:600;margin:0;line-height:1.4}.gq-n{color:#17652F;margin:8px 0 0}.gq-n[lang=ur]{font-family:var(--ur);line-height:2}.gq-n[lang=pa]{font-family:var(--pa)}.gq-n[lang=ar]{font-family:var(--ar);font-size:1.1em}.gq-n[lang=hi]{font-family:var(--hi)}
.gq-vf{display:grid;grid-template-columns:1fr 1fr;gap:12px}.gq-vf button{border:0;border-radius:14px;padding:16px;font:800 20px var(--display);color:#fff;background:#1F8A47;box-shadow:0 -4px 0 rgba(24,32,96,0.087) inset}.gq-vf button+button{background:#B3192B}
.gq-fb{border-radius:14px;padding:12px 14px;margin-top:4px}.gq-fb.ok{background:rgba(56,210,122,.18);border:1px solid #38D27A}.gq-fb.ko{background:rgba(255,77,106,.16);border:1px solid #FF4D6A}
.gq-fb p{margin:8px 0 0;color:#1D1D91}.gq-fb p[lang=ur]{font-family:var(--ur);line-height:2}.gq-fb p[lang=pa]{font-family:var(--pa)}.gq-fb p[lang=ar]{font-family:var(--ar)}.gq-fb p[lang=hi]{font-family:var(--hi)}
.gq-go{display:flex;justify-content:center;margin-top:14px}.gq-c{border:0;border-radius:14px;padding:14px 26px;font:700 17px var(--body);color:#14171C;background:linear-gradient(180deg,#FFD54F,#FFB300);box-shadow:0 -3px 0 rgba(24,32,96,0.063) inset}
.gi h2{font-family:var(--display);font-size:30px;margin:0 0 8px}.gi ul{padding-left:4px;list-style:none;display:flex;flex-direction:column;gap:6px;font-size:15px}
.gs{font-size:40px;letter-spacing:6px;color:rgba(255,255,255,.2)}.gs .on{color:#FFC72C;text-shadow:0 0 18px rgba(255,199,44,.6)}
.gr{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:10px 0}.gr div{background:rgba(24,32,96,0.039);border-radius:12px;padding:10px;text-align:center}.gr b{display:block;font-family:var(--display);font-size:26px}.gr small{color:var(--mute)}
.dcard.act.game{background:linear-gradient(135deg,rgba(255,199,44,.22),rgba(255,62,138,.12));border-color:rgba(255,199,44,.5)}
@media (max-width:560px){.gameroot{height:calc(100svh - 190px);border-radius:12px;margin:0 -8px}.gq-img{width:80px;height:80px}.gq-it{font-size:16px}}
.credits{flex-basis:100%;opacity:.55;font-size:11px}

.mqin{margin-top:26px;padding-top:6px;border-top:1px dashed rgba(24,32,96,0.099)}.mqin.lockd{opacity:.8}
.mqall{margin:12px 0 16px}.mqall .row{flex-wrap:wrap;gap:8px}
/* segnali più grandi */
.qimg{width:150px;height:150px}
@media (min-width:901px){.exq{grid-template-columns:auto 260px 1fr}}
.sg{width:170px;height:360px;margin:-360px 0 0 -85px}.sg .pl{width:170px;height:170px}.sg i{width:12px}
.post .plate{width:120px;height:120px}
.card{grid-template-columns:120px 1fr}
@media (max-width:560px){.qimg{width:110px;height:110px}.card{grid-template-columns:96px 1fr}}
.trapx{margin-top:12px;padding-top:10px;border-top:1px dashed rgba(24,32,96,0.138)}
.trapx h4{margin:10px 0 6px;font-family:var(--display);font-size:16px;color:#7A5600}.trapx p{margin:0 0 6px;line-height:1.55}
.tex{display:grid;grid-template-columns:auto 1fr;gap:10px;align-items:start;background:rgba(251,251,251,0.43);border-radius:12px;padding:10px 12px;margin-top:8px}
.tex b{display:block;font-weight:600}.tex p{color:#1D1D91;font-size:14px;margin:4px 0 0}
.fals{background:#8E1B2B;color:#fff;border-radius:8px;padding:2px 8px;font-size:12px;font-weight:700}

/* gioco v2: dove guidi, situazione, regola, controlli prima di partire */
.gm-ov{touch-action:pan-y;overflow:auto;-webkit-overflow-scrolling:touch}
.gm-ov .gq{touch-action:pan-y;margin:auto}
.gm-where{position:absolute;left:14px;top:84px;display:flex;gap:10px;align-items:center;background:rgba(12,17,64,.72);border:1px solid rgba(255,255,255,.16);border-radius:14px;padding:6px 12px 6px 8px;pointer-events:none;backdrop-filter:blur(6px);max-width:calc(100% - 28px)}
.gm-where .gm-wi{font-size:24px}.gm-where b{display:block;font-family:var(--display);font-size:16px;line-height:1.15}.gm-where small{display:block;color:var(--mute);font-size:12px}
.gm-zone{position:absolute;left:50%;top:132px;transform:translate(-50%,-12px);opacity:0;transition:opacity .4s,transform .4s;pointer-events:none;display:flex;gap:12px;align-items:flex-start;width:min(480px,calc(100% - 28px));background:linear-gradient(160deg,rgba(30,38,148,.94),rgba(20,27,102,.94));border:1px solid rgba(255,199,44,.55);border-radius:16px;padding:12px 16px;box-shadow:0 16px 40px rgba(0,0,0,.45)}
.gm-zone.on{opacity:1;transform:translate(-50%,0)}
.gm-zone>span{font-size:34px;line-height:1}.gm-zone b{display:block;font-family:var(--display);font-size:22px}.gm-zone small{color:#FFC72C;font-weight:600}.gm-zone p{margin:4px 0 0;font-size:14px;color:#E2E2FA}
.gq-tag{display:inline-block;margin-top:8px;border-radius:999px;padding:4px 12px;font-size:13px;font-weight:700}
.gq-tag.b{background:rgba(255,199,44,.18);color:#7A5600;border:1px solid rgba(255,199,44,.5)}.gq-tag.m{background:rgba(120,170,255,.16);color:#0438A9;border:1px solid rgba(120,170,255,.45)}
.gq-ctx{display:flex;gap:10px;align-items:flex-start;margin-top:10px;background:rgba(24,32,96,0.039);border-radius:12px;padding:8px 12px;font-size:14px;color:#1D1D91;line-height:1.45}.gq-ctx>span{font-size:22px}
.gq-fig{width:150px;height:auto;padding:4px}.gq-fig img{width:100%;height:auto;display:block;border-radius:8px}
.gq-ap{margin-top:10px;background:rgba(251,251,251,0.43);border-radius:10px;padding:8px 12px}.gq-ap b{color:#7A5600}.gq-ap p{margin:6px 0 0}
.gq-vf{position:sticky;bottom:-18px;padding:10px 0 4px;background:linear-gradient(180deg,rgba(235,236,245,0.25),#EBECF5 30%)}
.gm-chk{display:grid;gap:10px;margin:12px 0}
.gm-chk button{display:flex;align-items:center;gap:12px;text-align:left;border:1px solid rgba(255,255,255,.2);background:rgba(255,255,255,.06);color:#fff;border-radius:14px;padding:12px 14px;font:600 16px var(--body)}
.gm-chk button span{font-size:24px}.gm-chk button em{margin-left:auto;font-style:normal;opacity:0;color:#38D27A;font-size:22px}
.gm-chk button.on{border-color:#38D27A;background:rgba(56,210,122,.15)}.gm-chk button.on em{opacity:1}
.gq-c:disabled{opacity:.45;filter:grayscale(1)}
@media (max-width:560px){.gm-where{top:80px;padding:4px 10px 4px 6px}.gm-where b{font-size:14px}.gm-zone{top:124px}.gm-zone p{font-size:13px}.gq{padding:14px}.gq-fig{width:96px}.gq-ctx{font-size:13px}}
/* patente a punti nel gioco */
.gm-pat{position:relative;display:flex;flex-direction:column;min-width:118px;border-radius:12px;overflow:visible;background:linear-gradient(135deg,#F7C9D6,#F3B2C4 55%,#E99AB1);color:#3A1430;box-shadow:0 6px 18px rgba(0,0,0,.35);border:1px solid rgba(255,255,255,.6)}
.gm-pat-h{display:flex;gap:6px;align-items:center;font:800 11px var(--display);letter-spacing:.08em;padding:5px 10px;background:rgba(31,79,168,.9);color:#fff;border-radius:11px 11px 0 0}
.gm-pat-b{display:flex;align-items:baseline;gap:5px;padding:2px 10px 6px}.gm-pat-b b{font:800 30px var(--display);line-height:1}.gm-pat-b small{font-weight:700;font-size:12px}
.gm-pat.low .gm-pat-b b{color:#B0102A}
.gm-dp{position:absolute;right:-8px;top:-10px;font:800 20px var(--display);font-style:normal;padding:2px 9px;border-radius:999px;opacity:0;transform:translateY(6px);transition:opacity .25s,transform .25s;color:#fff}
.gm-dp.on{opacity:1;transform:none}.gm-dp.up{background:#1E9E55}.gm-dp.down{background:#D7203F}
.gq-pts{color:#A9042F!important;letter-spacing:0!important;font-weight:700}
.gv{margin:10px 0;text-align:left}.gv h4{margin:0 0 6px;font-size:15px}
.gv-r{display:flex;justify-content:space-between;gap:10px;padding:6px 10px;border-radius:8px;margin-bottom:4px;font-size:14px}.gv-r small{color:var(--mute)}
.gv-r.ko{background:rgba(255,77,106,.14)}.gv-r.ko b{color:#A90420}.gv-r.ok{background:rgba(56,210,122,.12)}.gv-r.ok b{color:#238B4F}
.gm-where{top:92px}.gm-zone{top:142px}
@media (max-width:560px){.gm-pat{min-width:92px}.gm-pat-b b{font-size:24px}.gm-where{top:86px}.gm-zone{top:132px}}
.gm-fs{position:absolute;right:14px;top:92px;width:44px;height:44px;border-radius:12px;border:0;background:rgba(12,17,64,.72);color:#fff;font-size:22px;box-shadow:0 0 0 1px rgba(255,255,255,.2) inset}
.gameroot.full{position:fixed;inset:0;height:100dvh!important;width:100vw;margin:0!important;border-radius:0!important;z-index:300}
html.gm-lock,html.gm-lock body{overflow:hidden}
@media (max-width:560px){.gm-fs{top:86px;width:40px;height:40px}.gm-ov{padding:8px}}
.gm-fine{position:absolute;left:50%;bottom:110px;transform:translate(-50%,16px);opacity:0;transition:opacity .3s,transform .3s;pointer-events:none;width:min(440px,calc(100% - 24px));background:linear-gradient(160deg,#FFF4F6,#FFE1E7);color:#3A0F1C;border:2px solid #D7203F;border-radius:16px;padding:10px 14px;box-shadow:0 18px 40px rgba(0,0,0,.45);text-align:center}
.gm-fine.on{opacity:1;transform:translate(-50%,0)}
.gf-h{font:800 12px var(--display);letter-spacing:.06em;color:#B0102A;text-transform:uppercase}.gm-fine b{display:block;font-size:17px;margin:4px 0}
.gf-a{font-size:13px;color:#6A3A48}.gf-p{font:800 24px var(--display);color:#941A2E;margin-top:2px}.gf-p small{display:block;font:600 12px var(--body);color:#6A3A48}
.gm-neo{display:flex;gap:10px;align-items:flex-start;background:rgba(255,199,44,.12);border:1px solid rgba(255,199,44,.45);border-radius:12px;padding:10px 12px;margin:10px 0;font-size:14px;cursor:pointer}.gm-neo input{width:20px;height:20px;margin-top:2px;accent-color:#FFC72C}
@media (max-width:560px){.gm-c{position:absolute;left:10px;right:10px;top:136px}.gm-msg{font-size:13px;padding:6px 10px}.gm-zone{top:182px}.gm-fine{bottom:96px}}

/* admin: pagamento online e prezzi */
.paysteps{padding-left:20px;display:grid;gap:12px;margin:12px 0;line-height:1.55}.paysteps code{background:rgba(24,32,96,0.044);padding:1px 6px;border-radius:6px}
.payin{display:flex;gap:8px;margin-top:6px;flex-wrap:wrap}.payin input{flex:1;min-width:220px;margin:0}
.paybox select,.paybox td input[type=number]{margin:0}
.payin .btn{width:auto;margin:0}

/* il mio account */
button.uname{background:none;border:0;color:inherit;font:inherit;cursor:pointer;text-decoration:underline dotted;text-underline-offset:4px;padding:0}
.acct{max-width:620px;margin:0 auto;display:grid;gap:14px;padding:10px 0 40px}.acct .box{display:grid;gap:6px}.acct label{margin-top:6px}
.acct .dz{border-color:rgba(255,77,106,.5)!important}.dzb{background:#B0102A!important;color:#fff!important}

/* app dei negozi: niente acquisti dentro l'app */
html.instore .storehide,html.instore [data-buy],html.instore #fuplans .plans{display:none!important}
html.store-ios .iosHide{display:none!important}
button.uname .ui{margin-right:4px;text-decoration:none;display:inline-block}
@media (max-width:700px){button.uname{font-size:20px;text-decoration:none}}
/* spiegazione della domanda, ripasso intelligente, piano di studio */
.exq{margin-top:8px;padding:8px 12px;border-radius:10px;background:rgba(251,251,251,0.43);line-height:1.5}.exq b{color:#7A5600;margin-right:6px}
.srsc.hot{border-color:rgba(255,199,44,.7)!important;box-shadow:0 0 0 2px rgba(255,199,44,.25) inset}
.dcard.plan{grid-column:1/-1;display:grid;gap:10px;text-align:left}
.plh{display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap;align-items:center}.plh b{font-family:var(--display);font-size:19px}
.pld{display:flex;gap:8px;align-items:center;font-size:13px;color:var(--mute)}.pld input{margin:0;width:auto;padding:6px 10px}
.plt{margin:0;color:#1D1D91}.plgoal{display:flex;gap:10px;align-items:center}.plgoal .ring{width:46px;height:46px}
.pll{list-style:none;padding:0;margin:0;display:grid;gap:8px}.pll li{display:flex;gap:8px;align-items:stretch}
.plck{flex:none;width:36px;border-radius:10px;border:2px solid rgba(24,32,96,0.165);background:transparent;color:#238B4F;font-size:18px;font-weight:800}
.pll li.ok .plck{border-color:#38D27A;background:rgba(56,210,122,.15)}
.plgo{flex:1;display:flex;gap:10px;align-items:center;text-align:left;border:1px solid rgba(24,32,96,0.077);background:rgba(24,32,96,0.028);color:inherit;border-radius:12px;padding:10px 12px;font:inherit}
.plgo em{font-style:normal;flex:1}.plgo i{font-style:normal;color:var(--mute)}.pll li.ok .plgo em{text-decoration:line-through;opacity:.6}
.pll li::before{content:none!important;display:none!important}.plck{height:36px;align-self:center}
/* classifica del gioco e luci */
.glbw{margin-top:16px}.lb{display:grid;grid-template-columns:1fr 1fr;gap:14px}.lbt{background:linear-gradient(160deg,rgba(24,32,96,0.05),rgba(24,32,96,0.014));border:1px solid rgba(24,32,96,0.066);border-radius:14px;padding:14px 16px}
.lbt h4,.gq-lb h4{margin:0 0 8px;font-family:var(--display)}.lbt ol,.gq-lb ol{list-style:none;padding:0;margin:0;display:grid;gap:6px}
.lbt li,.gq-lb li{display:flex;gap:10px;align-items:center;padding:6px 10px;border-radius:10px;background:rgba(24,32,96,0.028)}.lbt li span:last-child,.gq-lb li em{margin-left:auto;color:var(--mute);font-size:13px;font-style:normal}
.lbt li.me,.gq-lb li.me{background:rgba(255,199,44,.16);border:1px solid rgba(255,199,44,.5)}.lbn,.gq-lb li>span{font-family:var(--display);color:#7A5600;width:20px}
.lbnote{font-size:13px;margin-top:8px}.gq-lb{margin:10px 0;text-align:left}
.gm-ctl .gm-lights{font-size:22px;order:1;margin-left:0}.gm-ctl .gm-lights.lit{background:rgba(255,213,79,.9);box-shadow:0 0 18px rgba(255,213,79,.8)}
@media (max-width:700px){.lb{grid-template-columns:1fr}}
.gm-ctl .gm-left{order:0}.gm-ctl .gm-right{order:1}.gm-ctl .gm-lights{order:2}.gm-ctl .gm-brake{order:3}.gm-ctl .gm-gas{order:4}
/* gioco v3: comandi in tre gruppi, frecce, navigatore, spie, manovre */
.gm-ctl{display:flex;justify-content:space-between;align-items:flex-end;gap:8px}
.gm-ctl>div{display:flex;gap:8px;align-items:flex-end}
.gm-ctl .gm-g2{flex-wrap:wrap;justify-content:center;max-width:300px;gap:6px}
.gm-ctl .gm-g2 button{min-width:46px;height:46px;font-size:20px;border-radius:12px;order:0;margin:0}
.gm-ctl .gm-g1 button,.gm-ctl .gm-g3 button{order:0;margin:0}
.gm-ctl button.lit{background:rgba(43,224,122,.85);box-shadow:0 0 16px rgba(43,224,122,.7)}
.gm-ctl .gm-haz.lit{background:rgba(255,77,46,.9);box-shadow:0 0 16px rgba(255,77,46,.7)}
.gm-ctl .gm-lights.lit{background:rgba(255,213,79,.9);box-shadow:0 0 18px rgba(255,213,79,.8)}
.gm-ctl .gm-gear{display:none;font:800 18px var(--display)}
.gm .gm-ctl .gm-gear.lit{background:rgba(255,255,255,.9);color:#14171C}
.man .gm-ctl .gm-g2>button{display:none}
.man .gm-ctl .gm-g2>.gm-gear{display:block;min-width:64px;height:64px}
.gm-ind{display:flex;gap:4px;font-size:16px;color:rgba(255,255,255,.2)}
.gm-ind.l .l,.gm-ind.r .r{color:#2BE07A;text-shadow:0 0 10px #2BE07A}
.gm-nav{position:absolute;left:50%;top:84px;transform:translateX(-50%);display:none;align-items:center;gap:10px;max-width:min(460px,calc(100% - 140px));background:#0B7A3B;border:2px solid #fff;color:#fff;border-radius:12px;padding:6px 12px;font-weight:700;font-size:15px;box-shadow:0 8px 20px rgba(0,0,0,.35);pointer-events:none}
.gm-nav.on{display:flex}
.gm-nvi{font-size:26px;line-height:1}
.gm-spie{position:absolute;right:14px;top:142px;display:flex;flex-direction:column;gap:6px;pointer-events:none}
.gm-spie span{width:44px;height:44px;display:block;animation:spia 1s steps(2) infinite;filter:drop-shadow(0 0 8px rgba(255,60,40,.7))}
.gm-spie svg{width:100%;height:100%}
@keyframes spia{50%{opacity:.45}}
.cockpit .gm-spie{display:none}
.gm-hb{position:absolute;left:50%;bottom:96px;transform:translateX(-50%);display:none;border:0;border-radius:14px;padding:12px 18px;background:#C8102E;color:#fff;font-weight:800;font-size:16px;box-shadow:0 8px 24px rgba(0,0,0,.4)}
.gm-hb.on{display:block}
.gm-exb{position:absolute;left:14px;top:136px;display:none;background:rgba(12,17,64,.8);border:1px solid rgba(255,199,44,.6);border-radius:10px;padding:4px 10px;font-weight:700;font-size:13px;pointer-events:none}
.gm-exb.on{display:block}
.gm-exb.bad{border-color:#FF4D6A;color:#FFB3C0}
.gm-mh{position:absolute;left:12px;top:84px;max-width:min(380px,calc(100% - 24px));display:none}
.man .gm-mh{display:block}
.man .gm-where,.man .gm-nav,.man .gm-bar,.man .gm-spie,.man .gm-exb,.man .gm-ind{display:none}
.mh-b{background:rgba(241,241,248,1);border:1px solid rgba(255,199,44,.55);border-radius:14px;padding:10px 12px;font-size:13px;line-height:1.4;box-shadow:0 10px 30px rgba(24,32,96,0.14)}
.mh-b>b{font-family:var(--display);font-size:15px}
.mh-b ol{margin:6px 0;padding-left:18px}
.mh-b p{margin:4px 0;color:#1D1D91}
.mh-r{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-top:6px}
.mh-x{margin-left:auto;border:1px solid rgba(24,32,96,0.22);background:transparent;color:#292929;border-radius:8px;padding:4px 10px;font-size:12px}
.gm-opt{margin:10px 0}
.gm-seg{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:6px}
.gm-seg button{border:1px solid rgba(255,255,255,.25);background:rgba(255,255,255,.06);color:#fff;border-radius:12px;padding:8px 10px;text-align:left}
.gm-seg button b{display:block;font-size:14px}
.gm-seg button small{display:block;color:var(--mute);font-size:12px;margin-top:2px}
.gm-seg button.on{border-color:#FFC72C;background:rgba(255,199,44,.16);box-shadow:0 0 0 1px #FFC72C inset}
.gm-key{display:flex;flex-wrap:wrap;gap:8px 12px;align-items:center;margin:8px 0;padding:10px;border-radius:12px;background:#07090D}
.gm-start{border:0;border-radius:10px;padding:10px 14px;background:#FFC72C;color:#14171C;font-weight:800}
.gm-start.ok{background:#1E7A45;color:#fff}
.gm-dash{display:flex;gap:6px}
.gm-dash span{width:30px;height:30px;opacity:.12;transition:opacity .2s}
.gm-dash span.on{opacity:1}
.gm-dash svg{width:100%;height:100%}
.gm-keyt{flex-basis:100%;font-size:12px}
.gm-err{color:#FF8A95;font-weight:700;margin-right:auto}
.gq-tag.e{background:rgba(255,199,44,.18);color:#7A5600}
.gex.ok{border-color:#2BE07A}.gex.ko{border-color:#FF4D6A}
.gexr b{font-size:20px;font-family:var(--display)}
.gex.ok .gexr b{color:#19944F}.gex.ko .gexr b{color:#A90414}
@media (max-width:700px){
 .gm-ctl{padding:8px;gap:6px}
 .gm-ctl .gm-g1 button,.gm-ctl .gm-g3 button{min-width:58px;height:58px}
 .gm-ctl .gm-g2{max-width:156px}
 .gm-ctl .gm-g2 button{min-width:44px;height:40px;font-size:18px}
 .gm-nav{top:118px;font-size:13px;max-width:calc(100% - 24px)}
 .gm-spie{top:170px}.gm-spie span{width:36px;height:36px}
 .gm-exb{top:164px}
 .gm-seg{grid-template-columns:1fr}
 .gm-mh{top:70px}.mh-b{font-size:12px;padding:8px 10px}.mh-b ol{margin:4px 0}
}
.gv-im{width:44px;height:44px;object-fit:contain;background:#FFFFFF;border-radius:6px;margin-right:8px;flex:none}
@media (max-width:700px){.gm-ctl .gm-g2{width:150px;max-width:150px}.gm-ctl .gm-g2 button{flex:0 0 44px;min-width:44px;padding:0}}
.gm-packs{display:none;grid-template-columns:repeat(2,1fr);gap:6px;margin-top:8px}
.gm-packs.on{display:grid}
.gm-packs button{display:flex;gap:8px;align-items:center;text-align:left;border:1px solid rgba(255,255,255,.22);background:rgba(255,255,255,.05);color:#fff;border-radius:10px;padding:7px 10px;font-size:13px}
.gm-packs button span{font-size:18px}
.gm-packs button.on{border-color:#FFC72C;background:rgba(255,199,44,.16)}
.gm-snd{position:absolute;right:14px;top:142px;width:44px;height:44px;border-radius:12px;border:0;background:rgba(12,17,64,.72);color:#fff;font-size:20px;box-shadow:0 0 0 1px rgba(255,255,255,.2) inset}
.gm-spie{top:196px}
.gm-tel{position:absolute;left:50%;bottom:110px;transform:translateX(-50%);display:none;width:min(420px,calc(100% - 24px));background:rgba(12,17,64,.95);border:2px solid #2BE07A;border-radius:16px;padding:10px 12px;box-shadow:0 12px 30px rgba(0,0,0,.5);animation:tel .5s ease-in-out infinite alternate}
.gm-tel.on{display:block}
@keyframes tel{to{box-shadow:0 0 0 4px rgba(43,224,122,.35),0 12px 30px rgba(0,0,0,.5)}}
.tl-h{font-size:16px;margin-bottom:8px}
.tl-b{display:grid;gap:6px}
.tl-b button{border:0;border-radius:10px;padding:9px 10px;text-align:left;font-weight:700;color:#292929;background:rgba(24,32,96,0.066)}
.gq-go .gq-c.alt{background:rgba(24,32,96,0.077);color:#292929;margin-right:8px}
@media (max-width:700px){.gm-snd{top:170px;width:40px;height:40px}.gm-spie{top:218px}.gm-packs{grid-template-columns:1fr}.gm-tel{bottom:150px}}
@media (min-width:701px){.gm-ctl .gm-g2{max-width:420px;flex-wrap:nowrap}}
.gtr{display:block;font-size:.82em;font-weight:500;opacity:.88;margin-top:2px;line-height:1.35}.gtr[dir=rtl]{text-align:right}.gm-msg .gtr{color:#FFE29A}.gm-nav .gtr{color:#E6FFE9}
.gsuf{display:block;font-size:.85em;margin-top:2px}
.gtr[lang=ur],.gtr[lang=ar]{font-size:.95em;line-height:1.75}
.gtr[lang=pa],.gtr[lang=hi]{font-size:.9em}
.gm>canvas{position:absolute;inset:0;width:100%;height:100%}
.gm .gm-bg,.gm .gm-3d{display:none}
.g3d .gm .gm-bg,.g3d .gm .gm-3d{display:block}
.g3d .gm .gm-fx{background:transparent}
.g3d .gm .gm-3d{background:transparent}
.gm{color:#F4F2FF}
.gm .gq,.gm .gm-ov{color:var(--paper)}
.gm-hud,.gm-where,.gm-zone,.gm-nav,.gm-msg,.gm-fine,.gm-exb,.gm-ctl,.gm-spie,.mh-b,.gm-tel{--mute:#B9C0E8;--paper:#F4F2FF}
.gm .gq{background:linear-gradient(160deg,#FFFFFF,#EEF1FB);color:var(--paper)}
.gm .gm-ov{background:rgba(24,32,96,.28)}

/* ---- contrasto più forte: testi scuri e ben leggibili, schede bianche separate dallo sfondo ---- */
:root{--asphalt:#E9EDF5;--panel:#FFFFFF;--panel2:#F1F3F9;--line:#BEC6DD;--paper:#0B1030;--mute:#353C5C;--yel-t:#7A4C00;--cyan-t:#055566;--grn-t:#12602F}
html{background-color:#E9EDF5;background-image:linear-gradient(180deg,#EEF1F8 0%,#E5E9F3 100%)}
body{color:var(--paper)}
.top{background:rgba(255,255,255,.97);border-bottom:1px solid #CDD4E7}
.feat2>div,.lcard,.plan,.steps2>div,.faq details,.cbox,.pc,.dcard,.box,.lbt{background:#FFFFFF;border:1px solid #C6CDE3;box-shadow:0 1px 2px rgba(11,16,48,.07),0 6px 18px rgba(11,16,48,.07);backdrop-filter:none;-webkit-backdrop-filter:none}
.dcard.ready{background:#FFFFFF;border-left:6px solid var(--pink)}
.dcard.ready.yes{background:#FFFFFF;border-left:6px solid var(--grn)}
.plan.best{background:#FFFBEA;border-color:var(--yel)}
.pc .num,.feat2 .ic{color:#FFFFFF}
.nat,.learn li .nat,.lcard span,.book span,.mqlink span,.gq-n{color:#17652F}
.credits{color:#353C5C;opacity:.85}
[data-tilt]:not(.tilting){transform:none;transform-style:flat}
.dcard.ready .rp .row{display:flex;grid-template-columns:none}
.rp .row small{white-space:normal}
.rp .mbar{background:rgba(11,16,48,.11)}

/* ---- testi piccoli un po' più grandi ---- */
.brand small{font-size:12.5px}
.proto{font-size:13px}
.fact span{font-size:13px}
label{font-size:13px}
.demo{font-size:13px}
.rail h3{font-size:12.5px}
.ri .done{font-size:12.5px}
.tile small{font-size:13px}
.trap b{font-size:13px}
th{font-size:13px}
.pill{font-size:13px}
.chn{font-size:13px}
.ghost.sm{font-size:13px}
.eyebrow{font-size:13px}
.ph-top{font-size:12.5px}
.lcard small{font-size:12.5px}
.pc small{font-size:12.5px}
.plan .tag{font-size:13px}
.goal small,.streak small{font-size:13px}
.exgrid button{font-size:13px}
.exfig .nofig{font-size:13px}
.hb b{font-size:13px}
.bnav small{font-size:12.5px}
.exl{font-size:13px}
.mqt small{font-size:13px}
.mqn{font-size:13px}
.subb small{font-size:13px}
.msubt small{font-size:13px}
.qtools .tip{font-size:13px}
.rg small{font-size:13px}
.rp small{font-size:13px}
.gm-spd small{font-size:12.5px}
.credits{font-size:12.5px}
.fals{font-size:13px}
.gm-where small{font-size:13px}
.gm-pat-b small{font-size:13px}
.mh-x{font-size:13px}
.gm-seg button small{font-size:13px}
.gm-keyt{font-size:13px}
.mh-b{font-size:13px}

/* ---- colori ancora più scuri per le scritte colorate ---- */
:root{--paper:#080C26;--mute:#2A3050;--yel-t:#5C3A00;--grn-t:#0E5226;--cyan-t:#044A59}
.nat,.learn li .nat,.lcard span,.book span,.mqlink span,.gq-n,.h1n{color:#0E5226}
.nat[lang=ur]{font-size:1.12em;line-height:2.15}
.nat[lang=ar]{font-size:1.18em}
h4,.trapx h4,.gq-ap b,.exq b,.lbn,.gq-lb li>span{color:#5C3A00}
a,.lnk{color:#5C3A00}
.eyebrow{color:#5C3A00}
.credits{color:#2A3050;opacity:1}
.sbtn.red,.btn.red{background:#B4162B}
.bnav small{color:#2A3050;font-weight:600}
.bnav button,.bnav a{color:#2A3050}
.nav a{opacity:1}
.steps2 b,.pc .num{text-shadow:0 1px 1px rgba(0,0,0,.25)}
/* gioco: pulsanti e scritte sopra la strada più pieni */
@media (hover:hover) and (pointer:fine){.gm-ctl{opacity:1}}
.gm-gas{background:#1D7A45!important}
.gm-brake{background:#A3192C!important}
.gm-where small,.gm-spd small,.gm-zone small{color:#E3E7FA}

/* ---- urdu e arabo nelle scritte dell'interfaccia: carattere Naskh, chiaro anche piccolo ---- */
:root{--body:"Poppins","Noto Naskh Arabic","Noto Sans Gurmukhi","Noto Sans Devanagari",system-ui,sans-serif;--display:"Outfit","Poppins","Noto Naskh Arabic","Noto Sans Gurmukhi","Noto Sans Devanagari",system-ui,sans-serif}
.rtlx{font-family:"Noto Naskh Arabic","Poppins",system-ui,sans-serif;font-size:1.12em;line-height:1.55;font-weight:600}
.nat[lang=ur]{font-size:max(1.12em,16px)}
.gtr[lang=ur],.gtr[lang=ar]{font-family:"Noto Naskh Arabic","Poppins",sans-serif;font-size:.95em;opacity:1}
.gtr{opacity:1}
.nat:lang(ur){font-size:max(1.12em,17px);font-weight:600}
.nat:lang(ar){font-size:max(1.15em,17px);font-weight:600}
html body .rtlx{font-size:max(1.12em,15px)}
html body .gtr.rtlx{font-size:max(1em,15.5px)}
html body .bnav small.rtlx{font-size:13.5px}
/* ---- gioco: scelte e controlli dentro la scheda chiara con testo scuro ---- */
.gm .gq .gm-seg button,.gm .gq .gm-packs button,.gm .gq .gm-chk button{color:#0B1030;background:#FFFFFF;border:1px solid #C3CAE0;box-shadow:0 1px 2px rgba(11,16,48,.06)}
.gm .gq .gm-seg button small,.gm .gq .gm-packs button small{color:#2A3050}
.gm .gq .gm-seg button b{color:#0B1030}
.gm .gq .gm-seg button.on,.gm .gq .gm-packs button.on{background:#FFF1C4;border-color:#E0A800;box-shadow:0 0 0 2px #FFC72C inset}
.gm .gq .gm-chk button .gtr,.gm .gq .gm-seg button .gtr,.gm .gq .gm-packs button .gtr{color:#0E5226}
.gm .gq .gm-chk button.ok,.gm .gq .gm-chk button.on,.gm .gq .gm-chk button.done{background:#DFF3E7;border-color:#2FA35A;color:#0B1030}
.gm .gq .gm-chk button em{color:#12602F}
.gm .gq .gm-key{color:#F4F2FF;--mute:#D6DBF5;--paper:#F4F2FF}
.gm .gq .gm-key .gm-keyt,.gm .gq .gm-key .gtr{color:#D6DBF5}
.gm .gq .gm-key .gm-start .gtr,.gm .gq .gm-key button .gtr{color:#FFFFFF}
.gm-start.ok{background:#17663A}
.gq-vf button{background:#17763C}

/* ---- menu a tendina delle lingue ---- */
.langs{position:relative;display:block;overflow:visible;flex:none;width:auto!important;order:0!important}
.lsel-b{display:inline-flex;align-items:center;gap:6px;border:1px solid #BEC6DD;background:#FFFFFF;color:var(--paper);border-radius:999px;padding:6px 12px;font-weight:600;font-size:14px;white-space:nowrap;box-shadow:0 1px 2px rgba(11,16,48,.06)}
.lsel-b i{font-style:normal;font-size:11px;transition:transform .2s}
.langs.open .lsel-b i{transform:rotate(180deg)}
.lsel-m{display:none;position:absolute;right:0;top:calc(100% + 6px);z-index:60;min-width:220px;background:#FFFFFF;border:1px solid #C6CDE3;border-radius:14px;padding:6px;box-shadow:0 14px 34px rgba(11,16,48,.18)}
.langs.open .lsel-m{display:block}
.lsel-m .lg{display:flex;width:100%;justify-content:space-between;align-items:center;gap:12px;border:0;border-radius:10px;background:transparent;padding:9px 12px;text-align:left;font-size:15px;color:var(--paper)}
.lsel-m .lg b{font-weight:600}
.lsel-m .lg small{color:var(--mute);font-size:12.5px}
.lsel-m .lg:hover{background:#F1F3F9}
.lsel-m .lg[aria-pressed=true]{background:#FFF1C4;font-weight:700}
.lsel-m .lg:disabled{opacity:.45}
/* ---- prova gratuita del gioco ---- */
.cta.gamec{background:linear-gradient(180deg,#2E9B5C,#1C7A45);color:#fff;box-shadow:0 8px 20px rgba(28,122,69,.3)}
.trialbar{max-width:1240px;margin:16px auto 0;background:#FFFFFF;border:1px solid #C6CDE3;border-left:6px solid #1C7A45;border-radius:14px;padding:12px 16px;display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;color:var(--paper)}
.trialwrap{max-width:1240px;margin:0 auto;padding:10px 16px 40px}
.gm-trial{position:absolute;left:50%;top:14px;transform:translateX(-50%);z-index:6;background:rgba(12,17,64,.9);color:#fff;border-radius:999px;padding:6px 14px;font-size:15px;box-shadow:0 0 0 2px rgba(255,255,255,.25) inset;pointer-events:none;white-space:nowrap}
.gm-trial small{color:#E3E7FA;font-size:12.5px}
.gm-trial .gtr{display:inline;margin-left:6px}
.gm-trial.low{background:#B4162B}
.gpromo{display:grid;grid-template-columns:1.2fr 1fr;gap:24px;align-items:center;background:#FFFFFF;border:1px solid #C6CDE3;border-radius:20px;padding:24px;max-width:1180px;margin-left:auto;margin-right:auto}
.gp-l{margin:10px 0 16px;padding-left:20px;color:var(--paper)}
.gp-l li{margin:4px 0}
.gp-i{height:200px;border-radius:16px;overflow:hidden;background:linear-gradient(180deg,#8FC8F0 0 45%,#7DBB6B 45%);position:relative}
.gp-road{position:absolute;left:50%;bottom:0;width:70%;height:55%;transform:translateX(-50%) perspective(300px) rotateX(35deg);background:repeating-linear-gradient(180deg,#5A5F68 0 30px,#5A5F68 30px 60px),#5A5F68;border-radius:6px}
.gp-road::after{content:"";position:absolute;left:50%;top:0;bottom:0;width:6px;transform:translateX(-50%);background:repeating-linear-gradient(180deg,#fff 0 18px,transparent 18px 36px);animation:gpline 1s linear infinite}
@keyframes gpline{to{background-position:0 36px}}
.gp-car{position:absolute;left:50%;bottom:8px;transform:translateX(-50%);font-size:44px;z-index:2}
.gp-sign{position:absolute;right:-8px;top:-34px;background:#C8102E;color:#fff;font:800 13px var(--display);padding:12px 8px;clip-path:polygon(30% 0,70% 0,100% 30%,100% 70%,70% 100%,30% 100%,0 70%,0 30%)}
@media (max-width:760px){.gpromo{grid-template-columns:1fr}.gp-i{height:150px}}
@media (max-width:640px){.gm-trial{top:auto;bottom:188px;left:12px;transform:none;font-size:14px;padding:5px 11px}.gm-trial .gtr{display:none}}
.lsel-h{font-size:12px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--mute);padding:8px 10px 4px}
.lsel-main{display:grid;grid-template-columns:1fr 1fr;gap:6px;padding:0 4px 6px;border-bottom:1px solid #DCE1F2;margin-bottom:4px}
.lmain{border:1px solid #C6CDE3;background:#FFFFFF;border-radius:10px;padding:8px 6px;font-weight:600;font-size:14px;color:var(--paper)}
.lmain[aria-pressed=true]{background:#FFC72C;border-color:#E0A800;color:#14171C}
.lsel-m{min-width:250px}
.seo-static{color:var(--mute);font-size:15px;max-width:820px;margin:10px 0 30px}.seo-static h1{font-size:22px;line-height:1.3;color:var(--ink)}.seo-links a{margin:0 2px}
