:root{color-scheme:light;--bg:#FFFFFF;--bg2:#F1F3F9;--paper:#FFFFFF;--ink:#121A33;--mute:#5B6684;--line:#DCE2EF;--gold:#E9A620;--gold-soft:#FFF1CC;--ember:#D9452B;--jade:#1FA85A;--jade-soft:#DDF5E6;--ice:#2C8FD6;--ice-soft:#DDEEFB;--violet:#7A4FD6;--coral:#E24B3F;--coral-soft:#FDE3E0;--radius:22px;--shadow:0 14px 34px rgba(0,0,0,.35)}@media(prefers-color-scheme:dark){:root:not([data-theme=light]){color-scheme:light}}:root[data-theme=dark]{color-scheme:light}*{box-sizing:border-box}html{scroll-padding-top:env(safe-area-inset-top,0px)}html,body{margin:0;height:100%}body{background:#15110c;color:var(--ink);font-family:Nunito,ui-rounded,system-ui,-apple-system,sans-serif;font-size:17px;line-height:1.45;padding-top:env(safe-area-inset-top,0px);padding-bottom:env(safe-area-inset-bottom,0px);min-height:100%}button{font:inherit;color:inherit;cursor:pointer;border:0;background:none}input{font:inherit;color:inherit}#pageBg{position:fixed;inset:0;z-index:-2;overflow:hidden;background:#15110c}#pageBg img{width:100%;height:100%;object-fit:cover;display:block;opacity:0;transition:opacity .4s ease}#pageBg img.loaded{opacity:1}#pageBg:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,#0a080680,#0a0806ad 45%,#0a0806db)}.top{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:16px 22px;max-width:900px;margin:0 auto;flex-wrap:wrap}.brand{display:flex;align-items:center;gap:10px;font-weight:900;font-size:20px;letter-spacing:-.01em}.brandIcon{width:30px;height:30px;border-radius:9px;object-fit:cover}.stats{display:flex;gap:8px;flex-wrap:wrap}.pill{display:flex;align-items:center;gap:7px;background:var(--paper);border:2px solid var(--line);border-radius:999px;padding:7px 13px;font-weight:800;font-size:14px}.pill.link{background:var(--bg2);cursor:pointer}.dashTop{display:flex;justify-content:flex-end;gap:8px;margin-bottom:10px}.pill.link{border:2px solid var(--line);background:var(--bg2)}main{max-width:900px;margin:0 auto;padding:6px 22px 60px}.hero{position:relative;overflow:hidden;border-radius:var(--radius);padding:24px;box-shadow:var(--shadow);aspect-ratio:2.4/1;display:flex;align-items:flex-end}.hero .heroBg{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;background:#12161f;z-index:0}.hero:after{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,#0000 30%,#000000b8)}.hero .content{position:relative;z-index:2;width:100%}.hero h1{margin:0 0 4px;font-size:clamp(1.2rem,4vw,1.6rem);line-height:1.15;color:#fff;text-shadow:0 2px 8px rgba(0,0,0,.5)}.hero .rank{font-size:15px;font-weight:900;color:var(--gold);margin:0 0 10px;text-shadow:0 2px 6px rgba(0,0,0,.5)}.beltbar{height:14px;border-radius:999px;background:#ffffff4d;overflow:hidden;margin:6px 0 4px}.beltbar i{display:block;height:100%;background:linear-gradient(90deg,var(--gold),var(--ember));border-radius:999px;transition:width .6s}.hero .next{margin:0;color:#ffffffd9;font-size:13.5px;text-shadow:0 1px 4px rgba(0,0,0,.5)}.mission{display:flex;align-items:center;justify-content:space-between;gap:16px;background:linear-gradient(90deg,#ffe4b3,#fff3d6);color:#1b1206;border:2px solid var(--gold);border-radius:var(--radius);padding:20px 24px;margin:18px 0;box-shadow:var(--shadow);text-align:left;flex-wrap:wrap}.mission.quiet{background:linear-gradient(90deg,#efeff6,#f7f7fb);border-color:var(--line);color:var(--ink)}.mission h2{margin:0 0 4px;font-size:20px}.mission p{margin:0;font-size:14px;opacity:.9}.mission .go{background:var(--gold);color:#1b1206;border-radius:999px;padding:12px 22px;font-weight:900;white-space:nowrap}.mission .go:disabled{opacity:.4}.section-title{font-size:14.5px;font-weight:800;color:#fff;text-shadow:0 2px 6px rgba(0,0,0,.5);margin:18px 0 10px}.result-card .section-title{color:var(--mute);text-shadow:none}.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:14px}.tile{--c:var(--gold);background:#fffffff2;border:2px solid rgba(255,255,255,.5);border-radius:var(--radius);padding:18px;text-align:left;display:flex;flex-direction:column;gap:6px;min-height:140px;position:relative;overflow:hidden;transition:transform .12s,border-color .12s;width:100%;box-shadow:var(--shadow)}.tile:before{content:"";position:absolute;left:0;top:0;bottom:0;width:6px;background:var(--c)}.tile:hover,.tile:focus-visible{transform:translateY(-3px);border-color:var(--c);outline:none}.tile .ico{font-size:30px}.tile h3{margin:4px 0 0;font-size:16.5px;color:var(--c)}.tile p{margin:0;color:var(--mute);font-size:13px}.tile .best{margin-top:auto;font-size:12.5px;font-weight:800;color:var(--ink)}.doneBadge{display:inline-block;font-size:11px;font-weight:800;color:var(--jade);background:var(--jade-soft);border-radius:999px;padding:2px 9px;margin-left:4px;vertical-align:middle}.foot{color:#ffffffbf;font-size:13.5px;text-align:center;margin-top:28px;text-shadow:0 1px 4px rgba(0,0,0,.5)}.result-card .foot{color:var(--mute);text-shadow:none}.back{color:#fff;font-weight:800;padding:8px 14px;border-radius:999px;background:#ffffff29;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border:1px solid rgba(255,255,255,.3)}.kids-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:16px;margin-top:18px}.kid-tile{position:relative;aspect-ratio:1/1;border-radius:var(--radius);overflow:hidden;border:3px solid rgba(255,255,255,.3);box-shadow:var(--shadow);padding:0;background:#15110c;transition:transform .12s,border-color .12s}.kid-tile:hover,.kid-tile:focus-visible{transform:translateY(-3px);border-color:var(--gold);outline:none}.kid-tile img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}.kid-tile:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,#0000 50%,#000000b8)}.kid-tile .name{position:absolute;left:14px;right:14px;bottom:12px;z-index:1;color:#fff;font-family:Barlow Condensed,sans-serif;font-weight:700;text-transform:uppercase;font-size:1.55rem;letter-spacing:.5px;text-shadow:0 2px 10px rgba(0,0,0,.6);text-align:left}.homeTitle{font-family:Barlow Condensed,sans-serif;font-weight:700;text-transform:uppercase;color:#fff;font-size:clamp(2.1rem,8vw,3.2rem);text-align:center;text-shadow:0 4px 20px rgba(0,0,0,.55);margin:18px 0 2px;letter-spacing:1px}.homeSub{text-align:center;color:#ffffffd9;margin:0 0 24px;font-size:1.02rem;text-shadow:0 2px 6px rgba(0,0,0,.5)}.kid-tile h3{margin:0 0 2px;font-size:18px}.kid-tile p{margin:0;color:var(--mute);font-size:13px}.childHero{display:flex;align-items:center;gap:18px;margin:18px 0 22px}.childHero img{width:84px;height:84px;border-radius:18px;object-fit:cover;flex-shrink:0;border:3px solid rgba(255,255,255,.3);box-shadow:var(--shadow)}.childHero h1{margin:0 0 2px;font-size:clamp(1.3rem,5vw,1.8rem);color:#fff;text-shadow:0 3px 14px rgba(0,0,0,.55)}.childHero .rank{font-size:15px;font-weight:900;color:var(--gold);margin:0 0 8px;text-shadow:0 2px 6px rgba(0,0,0,.55)}.childHero .beltbar{width:min(220px,60vw)}.childHero .next{margin:4px 0 0;color:#ffffffd9;font-size:13.5px;text-shadow:0 1px 4px rgba(0,0,0,.5)}.pin-card{max-width:360px;margin:30px auto 0;background:var(--paper);border:2px solid var(--line);border-radius:var(--radius);padding:30px 26px;box-shadow:var(--shadow);text-align:center}.pin-card .face{font-size:46px;margin-bottom:6px}.pin-card .face img{width:96px;height:96px;border-radius:50%;object-fit:cover;display:block;margin:0 auto;border:3px solid var(--line)}.pin-card h2{margin:0 0 18px;font-size:19px}.pin-dots{display:flex;justify-content:center;gap:12px;margin-bottom:18px}.pin-dots i{width:16px;height:16px;border-radius:50%;background:var(--bg2);border:2px solid var(--line);display:block}.pin-dots i.filled{background:var(--ink);border-color:var(--ink)}.pin-pad{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:8px}.pin-key{padding:16px 0;font-size:1.2rem;font-weight:800;border-radius:14px;background:var(--bg2);border:2px solid var(--line)}.pin-key:hover{border-color:var(--mute)}.pin-key.wide{grid-column:span 1}.pin-error{color:var(--coral);font-weight:800;font-size:13.5px;min-height:20px;margin-top:6px}.gamebar{display:flex;align-items:center;justify-content:space-between;margin:6px 0 14px;gap:12px;flex-wrap:wrap}.gamebar h2{margin:0;font-size:19px;color:#fff;text-shadow:0 2px 6px rgba(0,0,0,.5)}.dots{display:flex;gap:6px;flex-wrap:wrap}.dots i{width:13px;height:13px;border-radius:50%;background:#ffffff59;display:block}.counter{color:#ffffffd9;font-size:13.5px;font-weight:800;text-shadow:0 1px 4px rgba(0,0,0,.5)}.dots i.ok{background:var(--jade)}.dots i.ko{background:var(--coral)}.dots i.now{background:var(--gold)}.stage{background:var(--paper);border:2px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:30px 26px;min-height:320px;display:flex;flex-direction:column;justify-content:center;gap:18px}.chip{display:inline-block;font-size:12px;font-weight:800;padding:5px 13px;border-radius:999px;color:#fff;align-self:flex-start}.qtext{font-size:1.12rem;line-height:1.5;margin:0;font-weight:700}.options{display:grid;gap:10px}.opt{text-align:left;font-size:1rem;font-weight:700;padding:13px 16px;border-radius:14px;border:2px solid var(--line);background:var(--bg2);color:var(--ink);transition:border-color .15s ease,background .15s ease}.opt:hover:not(:disabled){border-color:var(--mute)}.opt:disabled{cursor:default}.opt.correct{background:var(--jade-soft);border-color:var(--jade)}.opt.wrong{background:var(--coral-soft);border-color:var(--coral)}.opt.dim{opacity:.5}.textrow{display:flex;gap:10px}.textrow input[type=text]{flex:1;min-width:0;font-size:1.05rem;font-weight:700;padding:13px 16px;border-radius:14px;border:2px solid var(--line);background:var(--bg2);color:var(--ink)}.textrow input[type=text]:focus{outline:2px solid var(--ice);outline-offset:1px}.btn{font-size:.95rem;font-weight:900;letter-spacing:.01em;padding:12px 24px;border-radius:999px;border:none;background:var(--gold);color:#1b1206}.btn:disabled{opacity:.35;cursor:not-allowed}.btn.secondary{background:var(--bg2);color:var(--ink)}.btn.ghost{background:transparent;border:2px solid var(--line);color:var(--ink)}.btn.adminBtn{border:2px solid var(--gold);padding:10px 22px}.feedback{margin-top:2px;padding:14px 16px;border-radius:14px;font-size:.93rem;line-height:1.5;display:none}.feedback.show{display:block}.feedback.good{background:var(--jade-soft);border:2px solid var(--jade)}.feedback.bad{background:var(--coral-soft);border:2px solid var(--coral)}.feedback b{display:block;margin-bottom:4px}.foot-row{display:flex;justify-content:flex-end;margin-top:4px}.flashcard{width:100%;min-height:150px;background:var(--bg2);border:2px solid var(--line);border-radius:16px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;padding:26px 22px;text-align:center}.flashFront{font-size:1.2rem;font-weight:800;margin:0}.flashBack{font-size:1.05rem;color:var(--ink);margin:0;display:none;padding-top:10px;border-top:2px dashed var(--line);width:100%}.flashBack.show{display:block}.ficheSection{margin:18px 0}.ficheSection h3{display:flex;align-items:center;gap:8px;font-size:1.05rem;margin:0 0 8px}.ficheSection ul{margin:0;padding-left:20px;line-height:1.65;font-size:14.5px;color:var(--ink)}.result-card{background:var(--paper);border:2px solid var(--line);border-radius:var(--radius);padding:30px 26px;box-shadow:var(--shadow);text-align:center}.note-wrap{margin:14px 0 6px}.note-num{font-size:3.2rem;font-weight:900;color:var(--gold);line-height:1}.note-den{font-size:1.2rem;font-weight:800;color:var(--mute)}.appreciation{font-size:1.05rem;font-weight:800;margin:4px 0 20px}.appreciation.great{color:var(--jade)}.appreciation.ok{color:var(--gold)}.appreciation.low{color:var(--coral)}.hbar{display:grid;grid-template-columns:150px 1fr 44px;align-items:center;gap:10px;font-size:13px;margin-bottom:9px;text-align:left}.hbar span:first-child{font-weight:800}.hbar .t{height:11px;border-radius:999px;background:var(--bg2);overflow:hidden}.hbar .t i{display:block;height:100%;border-radius:999px}.hbar b{text-align:right}.advice{text-align:left;background:var(--bg2);border:2px dashed var(--line);border-radius:16px;padding:16px 18px;margin:20px 0}.advice h3{margin:0 0 8px;font-size:14.5px}.advice ul{margin:0;padding-left:20px;line-height:1.7;font-size:13.5px}.review{text-align:left;margin-top:8px}.review-item{border-top:1px solid var(--line);padding:14px 2px}.review-item:first-child{border-top:none}.review-q{font-weight:800;margin-bottom:6px;font-size:14px}.review-your{color:var(--coral);font-size:13px;margin-bottom:2px;font-weight:700}.review-correct{color:var(--jade);font-size:13px;margin-bottom:6px;font-weight:700}.review-expl{font-size:13px;color:var(--mute)}.actions{display:flex;gap:10px;justify-content:center;flex-wrap:wrap;margin-top:22px}@media(max-width:480px){.hero{padding:18px}.stage,.result-card{padding:22px 18px}.mission{flex-direction:column;align-items:flex-start}}.googleBtn{width:100%;padding:14px 24px;font-size:1rem}.parentBanner{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;background:var(--gold-soft);border:2px solid var(--gold);border-radius:16px;padding:10px 14px;margin-bottom:12px;font-weight:800;font-size:14px;color:#1b1206}.parentTabs{display:flex;gap:8px;overflow-x:auto;padding:4px 2px 12px;margin-bottom:6px;scrollbar-width:thin}.parentTab{display:flex;align-items:center;gap:8px;flex-shrink:0;font:inherit;font-weight:800;font-size:14px;padding:7px 14px 7px 8px;border-radius:999px;border:2px solid rgba(255,255,255,.4);background:#ffffffd9;color:var(--ink)}.parentTab:first-child{padding-left:14px}.parentTab img{width:28px;height:28px;border-radius:50%;object-fit:cover}.parentTab.on{background:var(--gold);border-color:var(--gold);color:#1b1206}.parentDetail{background:var(--paper);border:2px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:20px;display:flex;flex-direction:column;gap:14px}.parentDetail .section-title{margin:6px 0 0;color:var(--ink);text-shadow:none}.parentDetail .parentHead{flex-wrap:wrap}.parentDetail .foot{color:var(--mute);text-shadow:none;margin:0}.kpiGrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px}.kpi{display:flex;flex-direction:column;gap:2px;background:var(--bg2);border-radius:14px;padding:12px 14px}.kpi b{font-size:1.5rem;font-weight:900;line-height:1.1}.kpi span{font-size:13px;font-weight:800}.kpi small{font-size:12px;color:var(--mute);font-weight:700}.chartCard{background:var(--bg2);border-radius:14px;padding:12px}.dayChart{display:block;width:100%;height:auto;max-width:520px}.dayBar{fill:var(--ice)}.dayCol:hover .dayBar{opacity:.8}.dayCol:hover rect{fill:#0000000a}.dayAxis{stroke:var(--line);stroke-width:1}.dayTick{font-size:11px;fill:var(--mute);font-weight:700;font-family:Nunito,system-ui,sans-serif}.tableWrap{overflow-x:auto;border:2px solid var(--line);border-radius:14px}.statTable{border-collapse:collapse;width:100%;font-size:13px;white-space:nowrap}.statTable th,.statTable td{padding:8px 10px;text-align:right;border-bottom:1px solid var(--line)}.statTable th[scope=row],.statTable thead th:first-child{text-align:left;white-space:normal;min-width:160px}.statTable thead th{background:var(--bg2);font-weight:900;font-size:12px;color:var(--mute)}.statTable tbody tr:last-child th,.statTable tbody tr:last-child td{border-bottom:none}.statTable td{font-variant-numeric:tabular-nums;font-weight:700}.parentGrid{display:flex;flex-direction:column;gap:12px}.parentCard{background:var(--paper);border:2px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:18px;display:flex;flex-direction:column;gap:12px}.parentHead{display:flex;align-items:center;gap:12px}.parentHead img{width:58px;height:58px;border-radius:14px;object-fit:cover;flex-shrink:0}.parentHead h3{margin:0;font-size:18px}.parentHead .grade{font-size:13px;color:var(--mute);font-weight:700}.parentHead p{margin:2px 0 0;font-size:13px;color:var(--mute)}.parentStats{display:flex;gap:8px;flex-wrap:wrap}.parentHist{list-style:none;margin:0;padding:0;font-size:13px;display:flex;flex-direction:column;gap:6px}.parentHist li{display:flex;flex-direction:column;border-top:1px solid var(--line);padding-top:6px}.parentHist li:first-child{border-top:none;padding-top:0}.parentHist li span{font-size:11.5px;color:var(--mute);font-weight:700}.parentHist li.empty{color:var(--mute)}.tile:disabled{opacity:.5;cursor:not-allowed;transform:none}.mastery{display:inline-flex;align-items:center;gap:7px;font-size:12px;font-weight:800;color:var(--mute)}.mastery .mbar{width:64px;height:8px;border-radius:999px;background:var(--line);overflow:hidden;display:inline-block}.mastery .mbar i{display:block;height:100%;border-radius:999px;background:var(--mute)}.mastery.good{color:var(--jade)}.mastery.good .mbar i{background:var(--jade)}.mastery.mid{color:#b07a0c}.mastery.mid .mbar i{background:var(--gold)}.mastery.weak{color:var(--coral)}.mastery.weak .mbar i{background:var(--coral)}.weakList{display:flex;flex-direction:column;gap:10px}.weakItem{--c:var(--gold);display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;background:#fffffff2;border-radius:18px;border-left:6px solid var(--c);padding:12px 14px;box-shadow:var(--shadow)}.weakText{display:flex;flex-direction:column;gap:3px;min-width:0}.weakText small{color:var(--mute);font-size:12.5px}.weakBtns{display:flex;gap:8px}.weakBtns .btn{padding:9px 16px;font-size:.88rem}.parentWeak{display:flex;flex-direction:column;gap:6px;font-size:13px;background:var(--bg2);border-radius:12px;padding:10px 12px}.parentWeak small{color:var(--mute)}.againNote{margin:0;font-size:13.5px;font-weight:800;color:var(--mute)}.matchGrid{display:flex;flex-direction:column;gap:8px}.matchRow{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:10px;font-weight:800}.matchRow select{font:inherit;font-weight:700;padding:10px 12px;border-radius:12px;border:2px solid var(--line);background:var(--bg2);color:var(--ink);min-width:0}.matchRow select.missing{border-color:var(--gold)}.matchRow select.ok{border-color:var(--jade);background:var(--jade-soft)}.matchRow select.ko{border-color:var(--coral);background:var(--coral-soft)}.hint{margin:-8px 0 0;font-size:13.5px;font-weight:800;color:var(--gold)}.hint:empty{display:none}.answerArea{font:inherit;font-size:1.02rem;font-weight:700;line-height:1.5;padding:12px 16px;border-radius:14px;resize:vertical;border:2px solid var(--line);background:var(--bg2);color:var(--ink);width:100%;box-sizing:border-box}.answerArea:focus{outline:2px solid var(--ice);outline-offset:1px}.vfChoice{grid-template-columns:1fr 1fr}.opt.picked{border-color:var(--ice);background:var(--paper);box-shadow:inset 0 0 0 1px var(--ice)}.selfCheck:empty{display:none}.selfCheck{display:flex;flex-direction:column;gap:8px;padding:14px 16px;border-radius:14px;background:var(--bg2);border:2px solid var(--line)}.selfCheck p{margin:0}.selfCheck blockquote{margin:0;padding:8px 12px;border-left:4px solid var(--jade);background:var(--paper);border-radius:8px}.orderList{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.orderItem{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:14px;border:2px solid var(--line);background:var(--bg2);font-weight:700}.orderItem .lbl{flex:1}.orderItem .grip{cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none;font-size:1.3rem;color:var(--mute);padding:4px 6px}.orderItem.dragging{border-color:var(--ice);box-shadow:var(--shadow)}.orderItem.ok{border-color:var(--jade);background:var(--jade-soft)}.orderItem.ko{border-color:var(--coral);background:var(--coral-soft)}.orderItem .mv{display:flex;gap:4px}.orderItem .mv button{font-size:.8rem;padding:6px 9px;border-radius:10px;border:2px solid var(--line);background:var(--paper);color:var(--ink)}.orderItem .mv button:disabled{opacity:.35}.orderAnswer{margin:8px 0 0;padding-left:22px}.clozeText{font-size:1.05rem;line-height:2.3;font-weight:600}.clozeText .gap{font:inherit;font-weight:800;padding:2px 8px;margin:0 2px;border-radius:10px;max-width:100%;border:2px solid var(--line);background:var(--bg2);color:var(--ink)}.clozeText .gap:focus{outline:2px solid var(--ice);outline-offset:1px}.clozeText .gap.missing{border-color:var(--gold)}.clozeText .gap.ok{border-color:var(--jade);background:var(--jade-soft)}.clozeText .gap.ko{border-color:var(--coral);background:var(--coral-soft)}.scrAnswer{min-height:52px;display:flex;flex-wrap:wrap;gap:8px;align-items:center;padding:10px;border-radius:14px;border:2px dashed var(--line);background:var(--paper)}.scrAnswer.ok{border:2px solid var(--jade);background:var(--jade-soft)}.scrAnswer.ko{border:2px solid var(--coral);background:var(--coral-soft)}.scrHint{color:var(--mute);font-weight:700;font-size:.92rem}.scrBank{display:flex;flex-wrap:wrap;gap:8px;min-height:10px}.scrWord{font:inherit;font-weight:800;padding:8px 13px;border-radius:12px;border:2px solid var(--line);background:var(--bg2);color:var(--ink)}.scrWord:disabled{cursor:default}.tip{margin:-6px 0 0;font-size:13.5px;color:var(--mute)}.wordBank{display:flex;flex-wrap:wrap;gap:8px}.bankWord{font:inherit;font-weight:800;padding:8px 14px;border-radius:12px;border:2px solid var(--line);background:var(--bg2);color:var(--ink);cursor:pointer}.bankWord.used{opacity:.35;cursor:default}.gap.active{border-color:var(--gold)!important}.gap[readonly]{cursor:pointer}.fixTap{font-size:1.1rem;line-height:2.1;font-weight:600}.fixWord{font:inherit;font-weight:700;padding:2px 6px;margin:0 -2px;border-radius:8px;border:2px solid transparent;background:none;color:inherit;cursor:pointer}.fixWord.on{border-color:var(--gold);background:var(--gold-soft)}.fixWord.changed{background:#e1ecfb}.fixWord.ok{background:var(--jade-soft);border-color:var(--jade)}.fixWord.no{background:#fff6e6;border:2px dashed #F2A33A}.fixWord:disabled{cursor:default}.fixAsk{margin:0 0 6px;font-size:14px;font-weight:800}.bankWord.keep{border-style:dashed}.labelInputs{display:flex;flex-direction:column;gap:8px}.labelRow{display:flex;align-items:center;gap:10px}.labelRow .labelNum{font-weight:900;min-width:2.2em}.labelRow .gap{flex:1;min-width:0;font:inherit;font-weight:800;padding:9px 12px;border-radius:12px;border:2px solid var(--line);background:var(--bg2);color:var(--ink)}.labelRow .gap:focus{outline:2px solid var(--ice);outline-offset:1px}.labelRow .gap.missing{border-color:var(--gold)}.labelRow .gap.ok{border-color:var(--jade);background:var(--jade-soft)}.labelRow .gap.ko{border-color:var(--coral);background:var(--coral-soft)}.textrow .unit{align-self:center;font-weight:800;color:var(--mute)}.textrow .btn{flex:none}.chainSteps{margin:0 0 6px;padding-left:1.6em;display:flex;flex-direction:column;gap:12px}.chainStep{font-weight:700}.chainStep .chainQ{display:block;margin-bottom:8px}.chainStep .chainRes{display:block;font-weight:800}.chainStep.ok .chainRes{color:var(--jade)}.chainStep.ko .chainRes{color:var(--coral)}.chainStep.ko .chainRes b{color:var(--ink)}.feedback .diff{display:block;margin-top:6px;font-weight:700}.feedback mark{background:var(--gold-soft);color:var(--coral);border-radius:4px;padding:0 3px;font-weight:900}.ficheFigure{margin:6px 0 12px;padding:12px;background:var(--bg2);border-radius:14px}.ficheFigure figcaption{font-size:12.5px;font-weight:800;color:var(--mute);margin-bottom:6px}.ficheVisual{display:block;width:100%;max-width:520px;height:auto}@media(max-width:480px){.matchRow{grid-template-columns:1fr;gap:4px}}.gradeHero{display:flex;align-items:center;gap:16px;background:var(--paper);border-radius:var(--radius);padding:16px 18px;margin:0 0 20px;box-shadow:var(--shadow)}.gradeHeroImg{flex-shrink:0;padding:0;border-radius:16px}.gradeHeroImg .gradeImg{width:96px;height:96px}.gradeHeroText{flex:1;min-width:0}.gradeHero .beltbar{background:var(--bg2)}.gradeHero .next,.xpSummary .next{margin:2px 0 0;color:var(--mute);font-size:13.5px}.levelLine{font-size:16px;color:var(--ink)}.levelLine b{color:var(--ember)}.gradeChips{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}.gradeChips .pill{font-size:13px;padding:5px 11px}.gradeImg{position:relative;width:100%;aspect-ratio:1;border-radius:14px;overflow:hidden;background:radial-gradient(circle at 50% 40%,#3a2a12,#14182e 75%);display:flex;align-items:center;justify-content:center}.gradeImg:before{content:attr(data-emblem);font-size:44px;filter:drop-shadow(0 0 12px rgba(233,166,32,.7))}.gradeImg img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.gradeImg.lockedImg{background:var(--bg2)}.gradeImg.lockedImg:before{content:none}.gradeImg.lockedImg span{font-size:28px;opacity:.5}.xpGain{display:inline-block;margin-left:10px;padding:2px 10px;border-radius:999px;background:var(--gold-soft);color:#8a5a00;font-size:14px;font-weight:900}.xpGain small{font-weight:800}.xpSummary{background:var(--gold-soft);border-radius:16px;padding:14px 16px;margin:0 0 18px;text-align:left}.xpSummary .beltbar{background:#fffc}.xpTotal{font-size:1.6rem;font-weight:900;color:#8a5a00}.xpTotal span{font-size:15px}.xpBonus{list-style:none;margin:6px 0 10px;padding:0;font-size:14px}.xpBonus li{display:flex;justify-content:space-between;gap:10px;padding:2px 0}.levelUp{position:fixed;inset:0;z-index:50;background:#0a0806c7;display:flex;align-items:center;justify-content:center;padding:16px;animation:fadeIn .3s ease}.levelUpCard{background:var(--paper);border-radius:var(--radius);padding:22px;max-width:380px;width:100%;text-align:center;box-shadow:var(--shadow);max-height:100%;overflow:auto}.levelUpCard h2{margin:0 0 12px;font-size:2rem;color:var(--ember)}.levelUpCard h3{margin:12px 0 4px}.levelUpCard p{margin:4px 0;color:var(--mute)}.levelUpKicker{font-weight:900;color:var(--gold)!important;text-transform:uppercase;letter-spacing:.04em;font-size:13px}.levelUpImg{animation:levelPop .6s ease}.levelUpRank b{color:var(--ink)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes levelPop{0%{transform:scale(.6);opacity:0}70%{transform:scale(1.05);opacity:1}to{transform:scale(1)}}.howTo{background:var(--paper);border-radius:16px;padding:12px 16px;margin:0 0 20px;font-size:15px}.howTo summary{font-weight:900;cursor:pointer}.howTo ul{margin:10px 0;padding-left:20px}.howTo li{margin:4px 0}.howTo p{margin:0;color:var(--mute)}.rankBlock{margin:0 0 20px}.rankHead{color:#fff;font-size:17px;margin:0 0 8px;text-shadow:0 2px 8px rgba(0,0,0,.6)}.rankHead small{color:#ffffffb3;font-size:13px;margin-left:4px}.rankBlock.locked .rankHead{opacity:.7}.galleryGrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:10px}.galleryItem{display:flex;flex-direction:column;gap:6px;background:var(--paper);border-radius:16px;padding:8px;text-align:left}.galleryItem.locked{opacity:.75}.galleryName{font-size:13.5px;font-weight:800;line-height:1.25}.galleryName b{color:var(--ember);margin-right:2px}.galleryItem small{font-size:12px;color:var(--mute);font-weight:700}@media(max-width:480px){.gradeHero{padding:12px;gap:12px}.gradeHeroImg .gradeImg{width:72px;height:72px}.galleryGrid{grid-template-columns:repeat(2,1fr)}}.parentGrid .parentCard{display:grid;grid-template-columns:minmax(220px,1fr) auto minmax(250px,1fr);align-items:center;gap:12px 18px}.parentGrid .parentBtns{grid-column:1 / -1;display:flex;gap:8px;flex-wrap:wrap}.parentLevel{display:flex;align-items:center;gap:12px;text-align:left;background:var(--bg2);border-radius:14px;padding:8px 12px 8px 8px}.parentLevel .gradeImg{width:64px;height:64px;flex-shrink:0;border-radius:12px}.parentLevel .gradeImg:before{font-size:28px}.parentLevel>span{display:flex;flex-direction:column;gap:2px;font-size:14px}.parentLevel b{color:var(--ember)}.parentLevel small{color:var(--mute);font-size:12.5px;font-weight:700}@media(max-width:760px){.parentGrid .parentCard{grid-template-columns:1fr}}.formCard{max-width:420px;text-align:left}.formCard h2{text-align:center}.stackForm{display:flex;flex-direction:column;gap:10px}.stackForm label{display:flex;flex-direction:column;gap:5px;font-weight:800;font-size:14px}.stackForm label small{font-weight:700;color:var(--mute)}.field{width:100%;font:inherit;font-weight:700;font-size:1rem;padding:11px 14px;border-radius:12px;border:2px solid var(--line);background:var(--bg2);color:var(--ink)}.field:focus{outline:2px solid var(--ice);outline-offset:1px}.codeField{letter-spacing:.18em;text-transform:uppercase;text-align:center;font-weight:900}.orSep{display:flex;align-items:center;gap:10px;margin:16px 0 12px;color:var(--mute);font-size:13px;font-weight:800}.orSep:before,.orSep:after{content:"";flex:1;height:2px;background:var(--line)}.linkBtn{font-weight:800;font-size:14px;color:var(--ice);text-decoration:underline;padding:4px;align-self:center}.linkBtn.danger{color:var(--coral)}.loginFoot{max-width:420px;margin:14px auto 0;text-align:center;color:#fffc;font-size:13px;text-shadow:0 1px 4px rgba(0,0,0,.5)}.formText{margin:0;color:var(--mute);font-size:14px}.formText.small{font-size:12.5px}.formGrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:14px;margin-top:6px}.formGrid .pin-card{margin:0;max-width:none}.profileGrid{display:flex;flex-wrap:wrap;justify-content:center;gap:16px;margin:14px 0 22px}.profileBtn{display:flex;flex-direction:column;align-items:center;gap:6px;width:136px;padding:14px 10px;border-radius:20px;background:#ffffffeb;border:2px solid var(--line);box-shadow:var(--shadow);transition:transform .15s}.profileBtn:hover,.profileBtn:focus-visible{transform:translateY(-3px);border-color:var(--gold);outline:none}.profileBtn img{width:96px;height:96px;border-radius:20px;object-fit:cover}.profileBtn b{font-size:16px}.profileBtn small{color:var(--mute);font-weight:700;font-size:12.5px;min-height:1em}.homeActions{justify-content:center;flex-wrap:wrap}.inlinePill{display:inline-flex;margin-left:6px}.panel{background:var(--paper);border:2px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:20px;margin:0 0 16px}.panel h2{margin:0 0 6px;font-size:20px}.section-sub{font-weight:900;font-size:13px;text-transform:uppercase;letter-spacing:.06em;color:var(--mute);margin:16px 0 8px}.rowItem{display:flex;align-items:center;gap:12px;padding:8px 0;border-top:1px solid var(--line)}.rowItem:first-of-type{border-top:none}.rowItem img{width:46px;height:46px;border-radius:12px;object-fit:cover;flex-shrink:0}.rowItem div{flex:1;min-width:0}.rowItem small{color:var(--mute);font-weight:700}.groupActions{justify-content:flex-start;flex-wrap:wrap;margin-top:10px;gap:8px}.groupCard{border:2px solid var(--line);border-radius:16px;padding:14px;margin:12px 0;background:var(--bg2)}.groupHead h3{margin:0 0 2px;font-size:17px}.groupHead small{display:block;color:var(--mute);font-weight:700;font-size:12.5px}.lessonList{list-style:none;margin:10px 0 0;padding:0;display:flex;flex-direction:column;gap:4px}.lessonList li{display:flex;align-items:center;justify-content:space-between;gap:10px;background:var(--paper);border-radius:10px;padding:7px 10px;font-weight:700;font-size:14px}.subForm{border:2px dashed var(--line);border-radius:16px;padding:14px}.fileBtn{position:relative;overflow:hidden;display:inline-flex;align-items:center}.fileBtn input{position:absolute;inset:0;opacity:0;cursor:pointer}.btn.danger{color:var(--coral);border-color:var(--coral-soft)}.notice{position:relative;border-radius:14px;padding:12px 40px 12px 14px;margin:0 0 14px;font-size:14px;font-weight:700;border:2px solid}.notice.ok{background:var(--jade-soft);border-color:var(--jade)}.notice.warn{background:var(--gold-soft);border-color:var(--gold);color:#1b1206}.notice.err{background:var(--coral-soft);border-color:var(--coral)}.notice ul{margin:6px 0 0;padding-left:20px;font-weight:600}.noticeClose{position:absolute;top:6px;right:10px;font-size:20px;font-weight:900;line-height:1}.codeShow{display:inline-block;font-size:1.3rem;letter-spacing:.15em;background:var(--paper);border-radius:8px;padding:2px 10px;margin:4px 0;-webkit-user-select:all;user-select:all}.genList{list-style:none;margin:10px 0 0;padding:0;display:flex;flex-direction:column;gap:6px}.gen{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;border-radius:12px;padding:8px 12px;font-size:14px;font-weight:600;border:2px solid}.gen small{display:block;color:var(--mute);font-weight:700}.gen details{margin-top:4px}.gen details ul{margin:4px 0 0;padding-left:20px}.gen.run{background:var(--ice-soft);border-color:var(--ice)}.gen.ok{background:var(--jade-soft);border-color:var(--jade)}.gen.err{background:var(--coral-soft);border-color:var(--coral)}.genBadge{display:inline-block;font-size:12px;font-weight:900;border:2px solid var(--ice);border-radius:999px;padding:1px 8px;margin-left:6px;vertical-align:middle}.genBadge.ok{border-color:var(--jade);background:var(--jade-soft)}.genCount{display:inline-block;font-size:12px;font-weight:900;background:var(--gold);color:#1b1206;border-radius:999px;padding:0 7px;margin-left:4px}.langSwitch{display:inline-flex;gap:4px}.langSwitch .pill{min-width:0;padding-left:10px;padding-right:10px}.langSwitch .pill.on{background:var(--gold);color:#1b1206;border-color:var(--gold)}.warnBadge{display:inline-block;font-size:12px;font-weight:900;background:var(--gold-soft);color:#1b1206;border:2px solid var(--gold);border-radius:999px;padding:1px 8px;margin-left:6px;vertical-align:middle}.childForm{max-width:560px;margin:10px auto 0}.checkRow{flex-direction:row!important;align-items:center;gap:8px!important}.groupCard .btn.secondary,.subForm .btn.secondary{background:var(--paper);border:2px solid var(--line)}.codeField::placeholder{letter-spacing:normal;text-transform:none;font-weight:700}.quietLink{font-size:12.5px;color:#ffffffbf;text-decoration:underline;align-self:center}.rememberRow{font-weight:800;font-size:14px;margin-top:4px}.adminList li{flex-wrap:wrap}.profileBtn:disabled{opacity:.5;cursor:not-allowed;transform:none}.avatarPick{border:0;margin:0;padding:0;min-width:0}.avatarPick legend{font-weight:800;font-size:14px;margin-bottom:6px;padding:0}.avatarGrid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.avatarChoice{border-radius:16px;border:3px solid transparent;padding:2px;background:var(--bg2);line-height:0}.avatarChoice img{width:100%;aspect-ratio:1;object-fit:cover;border-radius:12px}.avatarChoice:hover{border-color:var(--line)}.avatarChoice.on{border-color:var(--gold);box-shadow:0 0 0 3px var(--gold-soft)}.photoForm{max-width:620px;margin:10px auto 0}.photoThumbs{display:grid;grid-template-columns:repeat(auto-fill,minmax(84px,1fr));gap:8px}.photoThumbs:empty{display:none}.photoThumb{position:relative;aspect-ratio:3/4;border-radius:10px;overflow:hidden;border:2px solid var(--line);background:var(--paper)}.photoThumb img{width:100%;height:100%;object-fit:cover;display:block}.photoThumb span{position:absolute;left:4px;bottom:4px;background:#0009;color:#fff;font-size:12px;font-weight:900;border-radius:999px;padding:0 7px}.photoDel{position:absolute;top:3px;right:3px;width:24px;height:24px;border-radius:50%;background:#000000a6;color:#fff;font-size:16px;font-weight:900;line-height:1}.lessonActions{display:flex;flex-wrap:wrap;gap:4px 10px;justify-content:flex-end}.lessonList li{flex-wrap:wrap}.reportCount{color:var(--mute);font-weight:800}.reportBox{border:2px solid var(--gold);background:var(--gold-soft);color:#1b1206;border-radius:12px;padding:10px 12px;font-size:14px}.reportBox ul{margin:6px 0 0;padding-left:20px}.reasonPick{border:0;padding:0;margin:0;display:flex;flex-direction:column;gap:6px}.reasonPick legend{font-weight:800;font-size:14px;margin-bottom:4px}.brickFiche{margin-top:10px;padding:12px 14px;border-radius:14px;background:var(--bg2)}.brickTitle{margin:0 0 8px;font-weight:800;font-size:14px;color:var(--ink)}.brickHint{margin:0 0 10px;color:var(--mute);font-size:13.5px;font-weight:700}.brickStatus{min-height:1.2em;margin:8px 0 0;color:var(--mute);font-size:13.5px;font-weight:700}.brickNote{margin:8px 0 6px;font-weight:700}.sortCols{display:grid;grid-template-columns:repeat(auto-fit,minmax(110px,1fr));gap:10px}.sortCol{background:var(--paper);border:2px solid var(--c,var(--line));border-radius:12px;padding:8px 10px}.sortCol h4{margin:0 0 6px;font-size:14px;color:var(--c,var(--ink))}.sortCol ul{margin:0;padding-left:18px;font-size:14px;line-height:1.55}.sortBank{display:flex;flex-wrap:wrap;gap:8px;min-height:44px;margin-bottom:12px}.sortChip{font:inherit;font-weight:800;font-size:14.5px;padding:9px 14px;border-radius:12px;border:2px solid var(--line);background:var(--paper);color:var(--ink);cursor:grab;touch-action:none;user-select:none;-webkit-user-select:none}.sortChip.picked{border-color:var(--ice);background:var(--ice-soft);box-shadow:0 0 0 3px var(--ice-soft)}.sortChip.dragging{opacity:.35}.sortChip.ok{border-color:var(--jade);background:var(--jade-soft);cursor:default;pointer-events:none}.sortChip.ko{animation:shakeKo .5s;border-color:var(--coral);background:var(--coral-soft)}.dragGhost{position:fixed;z-index:60;pointer-events:none;margin:0;box-shadow:0 10px 24px #00000040;transform:rotate(-2deg)}.sortZones{display:grid;grid-template-columns:repeat(auto-fit,minmax(92px,1fr));gap:8px}.sortZone{font:inherit;text-align:left;display:flex;flex-direction:column;gap:8px;min-height:76px;padding:8px;border-radius:14px;border:2px dashed var(--c,var(--line));background:var(--paper);color:var(--ink);cursor:pointer}.sortZone.over{background:var(--bg2);border-style:solid}@media(hover:hover){.picking .sortZone:hover{background:var(--bg2);border-style:solid}}.sortZoneName{font-weight:900;font-size:14.5px;color:var(--c,var(--ink))}.sortPlaced{display:flex;flex-wrap:wrap;gap:6px}.sortPlaced .sortChip{font-size:12.5px;padding:4px 8px;border-radius:9px}@keyframes shakeKo{0%,to{transform:translate(0)}20%,60%{transform:translate(-6px)}40%,80%{transform:translate(6px)}}.placeBank{display:flex;flex-wrap:wrap;gap:8px;min-height:44px;margin-bottom:12px}.placeChip{font:inherit;font-weight:800;font-size:14.5px;padding:9px 14px;border-radius:12px;border:2px solid var(--line);background:var(--paper);color:var(--ink);cursor:grab;touch-action:none;user-select:none;-webkit-user-select:none}.placeChip.picked{border-color:var(--ice);background:var(--ice-soft);box-shadow:0 0 0 3px var(--ice-soft)}.placeChip.dragging{opacity:.35}.placeChip.ok{border-color:var(--jade);background:var(--jade-soft);cursor:default;pointer-events:none}.placeChip.ko{animation:shakeKo .5s;border-color:var(--coral);background:var(--coral-soft)}.placeTarget.over{background:var(--bg2);border-style:solid}.mmSlot .placeBody:empty:before,.flowSlot .placeBody:empty:before{content:"?";color:var(--mute);font-weight:900}.placeBody .placeChip{font-size:13px;padding:4px 10px;border-radius:9px}.mindmap{font-size:14.5px}.mmRoot{display:inline-block;padding:7px 14px;border-radius:12px;background:var(--c,var(--violet));color:#fff;font-weight:900}.mmBranch{list-style:none;padding-left:22px;border-left:3px solid var(--c,var(--line));margin:0 0 0 12px}.mmBranch>li{position:relative;margin:8px 0}.mmBranch>li:before{content:"";position:absolute;left:-22px;top:17px;width:18px;border-top:3px solid var(--c,var(--line))}.mmBranch .mmBranch{border-left-style:dashed}.mmNode,.mmSlot{display:inline-flex;align-items:center;min-height:34px;padding:5px 12px;border-radius:10px;border:2px solid var(--c,var(--line));background:var(--paper);color:var(--ink);font:inherit;font-weight:800}.mmSlot{border-style:dashed;min-width:90px;cursor:pointer}.mmSlot.filled{border-style:solid;padding:2px 4px}.mindmap details>summary{list-style:none;cursor:pointer;display:inline-flex;align-items:center;gap:6px}.mindmap details>summary::-webkit-details-marker{display:none}.mmCount{font-size:12px;font-weight:900;color:#fff;background:var(--c,var(--mute));border-radius:999px;padding:1px 7px}.mindmap details[open]>summary .mmCount{opacity:.45}.flowChain{display:flex;flex-wrap:wrap;align-items:center;gap:6px}.flowBlock{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;min-width:96px;min-height:58px;padding:8px 10px;border-radius:12px;border:2px solid var(--c,var(--line));background:var(--paper);color:var(--ink);font:inherit;text-align:center}.flowBlock b{font-size:14.5px}.flowDetail{font-size:12.5px;color:var(--mute);font-weight:700}.flowSlot{border-style:dashed;cursor:pointer}.flowArrow{display:flex;flex-direction:column;align-items:center;color:var(--c,var(--mute));font-weight:900;font-size:20px;line-height:1}.flowArrow small{font-size:11px;font-weight:800;color:var(--mute);max-width:90px;text-align:center;line-height:1.2}@media(max-width:560px){.flowChain{flex-direction:column;align-items:stretch}.flowHead{display:inline-block;transform:rotate(90deg)}}.revealNotes{margin:8px 0;padding-left:22px;font-size:14px;line-height:1.55}.revealNotes li.ok b{color:var(--jade)}.revealNotes li.ko b{color:var(--coral)}.revealBtns{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}.tlAxis{position:relative;margin:6px 0 4px 8px;border-left:4px solid color-mix(in srgb,var(--c,var(--gold)) 40%,transparent)}.tlEvent{position:absolute;left:-12px;right:0;display:flex;align-items:center;gap:10px;transform:translateY(-50%)}.tlDot{flex:none;width:20px;height:20px;border-radius:50%;background:var(--c,var(--gold));border:3px solid var(--paper)}.tlDate{flex:none;width:96px;font-weight:900;font-size:13.5px;color:var(--c,var(--ink));line-height:1.2}.tlItem{font-weight:800;font-size:14.5px;color:var(--ink)}details.tlItem>summary{cursor:pointer;text-decoration:underline dotted}details.tlItem[open]{position:relative;z-index:2;background:var(--paper);border:2px solid var(--c,var(--line));border-radius:10px;padding:4px 8px}details.tlItem p{margin:4px 0 0;font-weight:600;font-size:13.5px}.tlSlot{flex:1;min-width:0;min-height:44px;padding:4px 8px;border-radius:10px;border:2px dashed var(--c,var(--line));background:var(--paper);color:var(--ink);font:inherit;text-align:left;cursor:pointer}.tlSlot .placeBody:empty:before{content:"?";color:var(--mute);font-weight:900}.tlSlot.filled{border-style:solid}.tlNote{margin:4px 0 0;font-size:12.5px;color:var(--mute);font-weight:700}.listenBtn{border:none;background:none;cursor:pointer;font-size:1em;padding:0 4px;vertical-align:baseline}.placeChip,.placeTarget,.sortChip,.sortZone{-webkit-tap-highlight-color:transparent}.nlWrap{padding:34px 14px 30px}.nlTrack{position:relative;height:4px;background:var(--ink);border-radius:2px;touch-action:none;cursor:pointer}.nlTrack:focus-visible{outline:3px solid var(--ice);outline-offset:14px}.nlTrack:before{content:"";position:absolute;inset:-22px 0}.nlTick{position:absolute;top:-7px;width:2px;height:18px;background:var(--ink);transform:translate(-1px)}.nlMark{position:absolute;top:14px;transform:translate(-50%);font-size:13px;font-weight:800;color:var(--mute);white-space:nowrap}.nlPoint,.nlPin{position:absolute;top:-9px;width:22px;height:22px;margin-left:-11px;border-radius:50%;background:var(--c,var(--gold));border:3px solid var(--paper);box-shadow:0 1px 4px #0000004d;pointer-events:none}.nlPoint.ok{background:var(--jade)}.nlPoint.ko{background:var(--coral)}.nlPin{width:26px;height:26px;margin-left:-13px;top:-11px;background:var(--ice);transition:left .08s}.nlLabel{position:absolute;bottom:26px;left:50%;transform:translate(-50%);font-size:13px;font-weight:900;color:var(--ink);white-space:nowrap;background:var(--paper);padding:0 4px;border-radius:6px}.nlCtrls{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.nlCtrls .brickStatus{width:100%;margin:0}.frList{display:flex;flex-wrap:wrap;gap:14px}.frItem{margin:0;display:flex;flex-direction:column;align-items:center;gap:4px}.frItem figcaption{font-weight:800;font-size:14px}.frFigs{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.frFig.bar{width:240px;max-width:100%;height:auto}.frWork .frFig [data-p]{cursor:pointer}.frWork{margin:6px 0 10px}.frCtrls{display:grid;grid-template-columns:auto auto auto auto;gap:8px 10px;align-items:center;justify-content:start;margin:8px 0 12px}.frCtrls .btn{padding:6px 14px;min-width:44px}.frVal{min-width:24px;text-align:center;font-size:18px}.blScale{display:flex;flex-direction:column;align-items:center;margin:6px 0 8px}.blPans{display:flex;gap:18px;width:100%;max-width:440px;justify-content:space-between}.blPlate{flex:1;min-height:60px;display:flex;flex-wrap:wrap-reverse;align-content:flex-start;justify-content:center;gap:4px;padding:6px;border-bottom:5px solid var(--ink);border-radius:0 0 40% 40%/0 0 18px 18px;background:var(--bg2)}.blX{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:6px;background:var(--c,var(--jade));color:#fff;font-weight:900;font-style:italic}.blU{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:50%;background:var(--gold);color:#3a2a00;font-size:11px;font-weight:900}.blCount{align-self:center;font-size:14px;margin-left:2px}.blEmpty{color:var(--mute);font-weight:900;align-self:center}.blBeam{width:100%;max-width:440px;height:6px;background:var(--ink);border-radius:3px;margin-top:2px}.blFoot{width:0;height:0;border-left:16px solid transparent;border-right:16px solid transparent;border-bottom:22px solid var(--ink)}.blEq{margin:6px 0 0;font-weight:900;font-size:18px}.blSteps{margin:6px 0;padding-left:22px;font-size:14px;line-height:1.55}.blCtrls{display:flex;align-items:center;gap:8px;margin:6px 0}.blCtrls .btn{padding:6px 14px;min-width:44px}.blOps{display:flex;flex-wrap:wrap;gap:8px}.blOps .btn{font-size:14px;padding:8px 12px}.geoSvg{width:100%;max-width:360px;display:block;margin:4px auto;touch-action:none;user-select:none;-webkit-user-select:none}.geoGrid line{stroke:var(--line);stroke-width:.04}.geoPoly{fill-opacity:.18;stroke-width:.08;stroke-linejoin:round}.geoGhost{fill:none;stroke:var(--jade);stroke-width:.08;stroke-dasharray:.25 .18}.geoPt{cursor:grab;outline:none}.geoPt .geoHit{fill:transparent}.geoPt:focus-visible .geoHit{fill:var(--ice-soft);stroke:var(--ice);stroke-width:.06}.geoPt text{font-size:.55px;font-weight:900;fill:var(--ink);paint-order:stroke;stroke:var(--paper);stroke-width:.12}.geoMeasures,.geoGoals{list-style:none;margin:6px 0;padding:0;display:flex;flex-wrap:wrap;gap:6px 14px;font-weight:800;font-size:14px}.geoGoals{flex-direction:column;gap:4px;font-size:15px}.geoProperty{margin:0 0 6px;font-weight:700}.blEqTitle{margin:10px 0 0;font-size:15px}.slBox{margin:6px 0 10px}.slLabel{display:block;font-weight:800;font-size:14.5px}.slRange{display:block;width:100%;margin:10px 0 4px;accent-color:var(--ice);height:28px}.slGauge{position:relative;height:16px;border-radius:8px;background:var(--bg2);overflow:hidden}.slBand{position:absolute;top:0;bottom:0;opacity:.75;font-size:11px;line-height:16px;text-align:center}.slScale{position:relative;display:flex;justify-content:space-between;font-size:12px;font-weight:800;color:var(--mute);margin-top:2px;min-height:16px}.slTick{position:absolute;transform:translate(-50%)}.slState{margin:10px 0 0;font-size:17px;display:flex;align-items:center;gap:8px}.slIcon{font-size:28px}.slStates{list-style:none;padding:0;margin:8px 0 0;display:flex;flex-wrap:wrap;gap:6px 14px;font-size:14px}.slStates .slIcon{font-size:18px}.cirPalette{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:10px}.cirPart,.cirSlot{font:inherit;display:flex;flex-direction:column;align-items:center;gap:2px;padding:6px 8px;border-radius:12px;border:2px solid var(--line);background:var(--paper);color:var(--ink);cursor:pointer;touch-action:none;user-select:none;-webkit-user-select:none;-webkit-tap-highlight-color:transparent}.cirPart small,.cirSlot small{font-size:11.5px;font-weight:800}.cirPart.picked{border-color:var(--ice);background:var(--ice-soft);box-shadow:0 0 0 3px var(--ice-soft)}.cirPart.dragging{opacity:.35}.cirSym{width:42px;height:28px}.cirBoard{position:relative;display:flex;flex-direction:column;justify-content:space-between;gap:46px;padding:0 10px;margin:14px 0 6px}.cirBoard:before{content:"";position:absolute;inset:30px 26px;border:3px solid var(--mute);border-radius:10px}.cirBoard.closed:before{border-color:var(--jade)}.cirBoard.short:before{border-color:var(--coral)}.cirRow{position:relative;display:flex;justify-content:space-around;gap:6px}.cirSlot{min-width:70px;min-height:60px;justify-content:center;border-style:dashed}.cirSlot.full{border-style:solid}.cirSlot.over{background:var(--bg2)}.cirEmpty{font-size:22px;font-weight:900;color:var(--mute)}.cirSlot.lit{background:#fff6c2;border-color:var(--gold);box-shadow:0 0 18px 4px #e9a6208c}.cirSlot.lit .glow{fill:#ffe066}.cirSlot.spin .spin{transform-origin:21px 14px;animation:cirSpin 1s linear infinite}@keyframes cirSpin{to{transform:rotate(360deg)}}.cirStatus{font-weight:800;margin:6px 0 10px}.cirLegend{list-style:none;padding:0;margin:8px 0 0;display:flex;flex-wrap:wrap;gap:4px 14px;font-size:13px;font-weight:700}.cirLegend li{display:flex;align-items:center;gap:4px}.cirLegend .cirSym{width:34px;height:22px}.mapBox{overflow:auto;border:2px solid var(--line);border-radius:14px;background:#eaf3fb;-webkit-overflow-scrolling:touch}.mapSvg{display:block;width:100%;height:auto;touch-action:manipulation}.mapBox.zoomed .mapSvg{width:220%}.mapSea{fill:#cfe5f5}.mapBg{fill:#e4e4e0;stroke:#b9b9b2;stroke-width:.6}.mapFocusEdge{fill:none;stroke:#7a7f8e;stroke-width:2.4}.mapFocus{fill:#fbfaf4}.mapZone{fill:#f4efe1;stroke:#7a7f8e;stroke-width:.8;cursor:pointer;-webkit-tap-highlight-color:transparent}.mapZone.water{fill:#b7d6ee;stroke:#8fb3cf}.mapLine{fill:none;stroke:#5d93c4;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;cursor:pointer}.mapHit{fill:none;stroke:transparent;stroke-width:18px;vector-effect:non-scaling-stroke;cursor:pointer;-webkit-tap-highlight-color:transparent}.mapZone.target{fill:var(--c,var(--ice));fill-opacity:.55}.mapLine.target{stroke:var(--c,var(--ice));stroke-width:5}.mapZone.water.target{fill:#5b9bd5;fill-opacity:.85;stroke:#3f7cb5}.mapZone.hl{fill-opacity:1;stroke:var(--ink);stroke-width:2}.mapLine.hl{stroke-width:8}.mapZone.found{fill:var(--jade);fill-opacity:.8}.mapLine.found{stroke:var(--jade);stroke-width:7}.mapZone.shown{fill:var(--jade);fill-opacity:.45;stroke:var(--jade);stroke-width:2}.mapLine.shown{stroke:var(--jade);stroke-width:7;stroke-dasharray:10 6}.mapZone.wrong{fill:var(--coral);fill-opacity:.7}.mapLine.wrong{stroke:var(--coral);stroke-width:7}.mapTools{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:6px;flex-wrap:wrap}.mapTools .btn{padding:6px 12px;font-size:13px}.mapCredit{color:var(--mute);font-size:11.5px}.mapName{min-height:1.4em;margin:8px 0 4px;font-weight:900;font-size:17px}.mapChips{display:flex;flex-wrap:wrap;gap:6px}.mapChips .placeChip.hl{border-color:var(--c,var(--ice));background:var(--paper);box-shadow:0 0 0 3px var(--c,var(--ice))}@media all{.m-only{display:revert}.m-only[hidden]{display:none}body[data-shell]:not([data-shell=""]){--bg:#F6F0E2;--surface:#FFFCF5;--surface-line:#E8DCC4;--field-line:#E2D4BA;--group-bg:#F4ECDC;--ink:#1E2246;--ink-2:#4A4658;--muted:#615E6E;--amber-strong:#8A4B0B;--amber-number:#B5650F;--highlight-bg:#FFF1D6;--highlight-line:#F0CC8A;--tab-active-bg:#FBE6C2;--progress-track:#EADFC9;--shadow-nav:0 10px 24px rgba(80,60,20,.16);--banner-fade-mobile:linear-gradient(180deg,rgba(246,240,226,.85) 0%,rgba(246,240,226,0) 30%,rgba(246,240,226,.15) 60%,#F6F0E2 100%);--banner-fade-desktop:linear-gradient(90deg,rgba(246,240,226,.95) 0%,rgba(246,240,226,.7) 34%,rgba(246,240,226,0) 62%),linear-gradient(180deg,rgba(246,240,226,0) 50%,#F6F0E2 100%);--parch-bg:#F6F0E2;--parch-fg:#1E2246;--parch-muted:#5B5F7A;--card-bg:#FFFFFF;--card-bg-on-dark:#FFFCF5;--field-bg:#F8F2E6;--m-line:#E4DCCD;--action:#F2A33A;--action-strong:#F5B043;--action-ink:#2A1A08;--progress:linear-gradient(90deg,#E5713A,#F2A33A);--ok:#2E9E63;--ok-bg:#EEF9F2;--ok-bg-strong:#D9F5E3;--ok-ink:#0F3A22;--almost:#F2A33A;--almost-dark:#B86E00;--almost-bg:#FFF6E6;--almost-bg-strong:#FFE3B3;--almost-ink:#4A2A00;--info-bg:#E1ECFB;--info-ink:#12305E;--danger:#9A3412;--font-display:"Barlow Condensed","Arial Narrow",sans-serif;--font-body:"Nunito",system-ui,sans-serif;--r-btn:18px;--r-btn-sm:14px;--r-card:22px;--r-field:14px;--r-sheet:28px;--r-nav:24px;--h-btn:56px;--h-btn-sm:44px;--h-field:48px;--h-nav:66px;--shadow-card:0 6px 18px rgba(80,60,20,.08)}body[data-shell=forge]{background:var(--bg);color:var(--ink);position:relative;--hero-h:190px}body[data-shell=forge][data-view=login],body[data-shell=forge][data-view=verify],body[data-shell=forge][data-view=blocked],body[data-shell=forge][data-view=loading],body[data-shell=forge][data-view=welcome],body[data-shell=forge][data-view=home],body[data-shell=forge][data-view=code]{--hero-h:400px}body[data-shell=forge] #pageBg{position:absolute;inset:0 0 auto;height:var(--hero-h);z-index:0;background:var(--bg) url(/img/forge-claire-mobile.jpg) 50% 60% / cover no-repeat}body[data-shell=forge] #pageBg img{display:none}body[data-shell=forge] #pageBg:after{background:var(--banner-fade-mobile)}body[data-shell=forge][data-view=login] #pageBg:after,body[data-shell=forge][data-view=verify] #pageBg:after,body[data-shell=forge][data-view=blocked] #pageBg:after,body[data-shell=forge][data-view=loading] #pageBg:after,body[data-shell=forge][data-view=welcome] #pageBg:after,body[data-shell=forge][data-view=home] #pageBg:after,body[data-shell=forge][data-view=code] #pageBg:after{background:var(--banner-fade-mobile)}body[data-shell=forge] main{position:relative;z-index:1;max-width:none;padding:0 16px 120px;display:flex;flex-direction:column;gap:14px}body[data-shell=forge] main>.dashTop,body[data-shell=forge] main>.homeTitle,body[data-shell=forge] main>.back{display:none}body[data-view=loading] main>.homeSub,body[data-view=login] main>.homeSub,body[data-view=welcome] main>.homeSub,body[data-view=home] main>.homeSub,body[data-view=parent] main>.homeSub:has(+.parentGrid){display:none}body[data-view=parent] main>.homeSub{color:var(--muted);text-shadow:none}.mHead{display:flex;flex-direction:column;justify-content:space-between;min-height:calc(var(--hero-h) - 30px);margin:0 -16px;padding:14px 16px 12px}body[data-view=welcome] .mHead,body[data-view=home] .mHead,body[data-view=code] .mHead{min-height:0}.mHeadTop{display:flex;align-items:center;justify-content:space-between;gap:12px;position:relative;z-index:5}.mHeadTop .mIconBtn+.mBrand{margin-left:auto}.mTopRight{display:flex;align-items:center;gap:8px}.mHeadTop .mBrand+.mHome{margin-left:10px}.mFicheHead>div{flex:1;min-width:0}.mBrand{display:flex;align-items:center;gap:8px;font-family:var(--font-display);font-weight:700;font-size:17px;letter-spacing:2px;text-transform:uppercase;color:var(--ink);line-height:1}.mHeadTitle{padding:0 4px}.mHeadTitle h1,.mHeroTitle h1{font-family:var(--font-display);font-weight:700;font-size:36px;line-height:1;margin:0;color:var(--ink)}.mKicker{font-size:13px;font-weight:700;opacity:.85;margin-bottom:2px}.mIconBtn{width:44px;height:44px;border-radius:22px;display:flex;align-items:center;justify-content:center;flex-shrink:0;cursor:pointer;background:var(--surface);border:1px solid var(--field-line);color:var(--ink);list-style:none;box-shadow:var(--shadow-card)}.mIconBtn::-webkit-details-marker{display:none}.mIconBtn:focus-visible,body[data-shell=forge] .btn:focus-visible,.mNav button:focus-visible{outline:3px solid var(--amber-strong);outline-offset:2px}.mHero{position:relative;display:flex;flex-direction:column;justify-content:flex-end;min-height:300px;padding:14px 4px 6px;text-align:center}.mHeroLang{position:absolute;top:14px;right:0}.mHero h1{font-family:var(--font-display);font-weight:700;font-size:44px;line-height:1;text-transform:uppercase;letter-spacing:1px;margin:0;color:var(--ink);text-shadow:0 2px 18px rgba(246,240,226,.9)}.mHero p{margin:8px 0 0;font-size:15px;color:var(--muted)}.mHeroTitle{padding:150px 4px 4px}.mHeroTitle.center{text-align:center;padding-top:20px}.mHeroTitle.center h1{font-size:44px}.mHeroTitle p{margin:8px 0 0;font-size:15px;line-height:1.45;color:var(--muted)}body[data-view=home] .mHeroTitle.center{padding:24px 4px 12px}.mMenu{position:relative}.mMenu>summary{list-style:none}.mMenuPanel{position:absolute;right:0;top:52px;z-index:20;min-width:230px;padding:8px;border-radius:16px;background:var(--card-bg-on-dark);color:var(--parch-fg);box-shadow:var(--shadow-nav);display:flex;flex-direction:column;gap:2px}.mMenuItem{display:flex;align-items:center;min-height:44px;width:100%;padding:0 12px;border-radius:12px;text-align:left;font:700 15px var(--font-body);color:var(--parch-fg);cursor:pointer}.mMenuItem:hover,.mMenuItem:focus-visible{background:var(--field-bg);outline:none}.mMenuLang{padding:4px 8px 8px;border-bottom:1px solid var(--m-line);margin-bottom:4px}body[data-shell=forge] .langSwitch{display:inline-flex;gap:6px}body[data-shell=forge] .langSwitch .pill{min-width:44px;min-height:36px;justify-content:center;border-radius:999px;border:1px solid var(--field-line);background:var(--surface);color:var(--ink);font-weight:800}body[data-shell=forge] .langSwitch .pill.on{background:var(--action);border-color:var(--action);color:var(--action-ink)}body[data-shell=forge] .mMenuPanel .langSwitch .pill{background:var(--field-bg);color:var(--parch-fg);border-color:var(--m-line)}body[data-shell=forge] .mMenuPanel .langSwitch .pill.on{background:var(--action);border-color:var(--action);color:var(--action-ink)}.mNav{position:fixed;left:16px;right:16px;bottom:calc(16px + env(safe-area-inset-bottom,0px));z-index:30;height:var(--h-nav);border-radius:var(--r-nav);display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-items:center;background:var(--surface);border:1px solid var(--field-line);box-shadow:var(--shadow-nav)}.mNav button{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;height:100%;color:var(--muted);font:700 12px var(--font-body)}.mNav button.on{color:var(--amber-strong);font-weight:800}.mNav button:disabled{opacity:.35;cursor:default}.mNav .genCount{font-size:10px}body[data-shell=forge] .panel,body[data-shell=forge] .pin-card,body[data-shell=forge] .parentCard,body[data-shell=forge] .parentDetail{background:var(--card-bg-on-dark);color:var(--parch-fg);border:0;border-radius:var(--r-card);box-shadow:var(--shadow-card);padding:16px;margin:0;max-width:none;width:100%;text-align:left;display:flex;flex-direction:column;align-items:stretch;gap:12px}body[data-shell=forge] .panel h2,body[data-shell=forge] .pin-card h2{margin:0;font-size:19px;font-weight:800;line-height:1.25;color:var(--parch-fg)}body[data-shell=forge] .formText,body[data-shell=forge] .panel small,body[data-shell=forge] .pin-card small{color:var(--parch-muted)}body[data-shell=forge] .formText{margin:0;font-size:15px;line-height:1.45}body[data-shell=forge] .formText.small{font-size:13px}body[data-shell=forge] .section-sub{margin:6px 0 0;font-size:17px;font-weight:800;color:var(--parch-fg);text-transform:none;letter-spacing:0}body[data-shell=forge] .stackForm{display:flex;flex-direction:column;gap:12px}body[data-shell=forge] .formGrid{display:flex;flex-direction:column;gap:14px}body[data-shell=forge] label{font-size:14px;font-weight:800;color:var(--parch-fg)}body[data-shell=forge] .field{width:100%;min-height:var(--h-field);border-radius:var(--r-field);background:var(--field-bg);border:1px solid var(--m-line);font:600 16px var(--font-body);color:var(--parch-fg);padding:0 14px;margin-top:6px}body[data-shell=forge] textarea.field{padding:12px 14px;min-height:96px}body[data-shell=forge] .field:focus{outline:2px solid var(--action);outline-offset:1px}body[data-shell=forge] .checkRow{display:flex;align-items:center;gap:10px;min-height:44px;font-weight:700}body[data-shell=forge] .checkRow input{width:22px;height:22px;accent-color:var(--parch-fg);flex-shrink:0}body[data-shell=forge] .pin-error{color:var(--almost-dark);font-weight:700;font-size:14px;margin:0}body[data-shell=forge] .pin-error:empty{display:none}body[data-shell=forge] .foot{color:var(--muted);text-shadow:none;margin:4px 0 0;font-size:13px;text-align:left}body[data-shell=forge] .btn{min-height:var(--h-btn-sm);border-radius:var(--r-btn-sm);padding:0 18px;display:inline-flex;align-items:center;justify-content:center;gap:8px;background:var(--action);color:var(--action-ink);font:800 16px var(--font-body);border:0;box-shadow:none;text-decoration:none}body[data-shell=forge] .btn.secondary,body[data-shell=forge] .btn.ghost{background:#fff;color:var(--parch-fg);border:1px solid var(--m-line)}body[data-shell=forge] .btn.danger,body[data-shell=forge] .linkBtn.danger{color:var(--danger)}body[data-shell=forge] .btn:disabled{opacity:.45}body[data-shell=forge] .stackForm>.btn[type=submit],body[data-shell=forge] .stackForm>.btn:first-of-type{min-height:var(--h-btn);border-radius:var(--r-btn);font-size:18px}body[data-shell=forge] .linkBtn{color:#a35a00;font-weight:800;text-decoration:underline;min-height:44px;padding:0 4px}body[data-shell=forge] .actions,body[data-shell=forge] .groupActions{display:flex;flex-wrap:wrap;gap:10px;margin:0;justify-content:flex-start}body[data-shell=forge] .groupActions .btn{flex:1 1 auto}body[data-shell=forge] .notice{position:relative;margin:0;padding:14px 44px 14px 16px;border-radius:18px;font-size:14px;line-height:1.45;color:#2b2a33;background:var(--info-bg);border:1px solid #B9CDEB;text-shadow:none}body[data-shell=forge] .notice.ok{background:var(--ok-bg);border-color:var(--ok);color:var(--ok-ink)}body[data-shell=forge] .notice.warn,body[data-shell=forge] .notice.err{background:var(--almost-bg);border-color:#f2c27a;color:#4a3a20}body[data-shell=forge] .notice ul{margin:6px 0 0;padding-left:20px}body[data-shell=forge] .notice .noticeClose{position:absolute;top:6px;right:6px;width:36px;height:36px;font:800 20px var(--font-body);color:inherit}body[data-shell=forge] .notice b,body[data-shell=forge] .notice strong{font-weight:800}body[data-view=login] .loginFoot{text-align:center;font-size:13px}body[data-view=login] .googleBtn{width:100%;min-height:var(--h-btn);border-radius:var(--r-btn);font-size:17px}body[data-view=login] .orSep{color:var(--parch-muted);font-size:13px}body[data-view=login] .stackForm{display:grid;grid-template-columns:1fr 1fr}body[data-view=login] .stackForm>*{grid-column:1 / -1}body[data-view=login] .stackForm>.btn[type=submit]{background:var(--parch-fg);color:#fff}body[data-view=login] .stackForm>.btn.secondary,body[data-view=login] .stackForm>.linkBtn{grid-column:auto;min-height:44px;background:none;border:0;padding:0;color:#a35a00;font:800 14px var(--font-body);text-decoration:underline;justify-content:flex-start}body[data-view=login] .stackForm>.linkBtn{justify-content:flex-end;text-align:right;color:var(--parch-muted)}body[data-view=verify] .pin-card,body[data-view=welcome] .pin-card,body[data-view=welcome] .pin-card h2{text-align:left}body[data-view=verify] .pin-card h2,body[data-view=blocked] .pin-card h2,body[data-view=verify] .formText,body[data-view=blocked] .formText{text-align:center}body[data-view=verify] .stackForm>.btn.secondary{min-height:var(--h-btn-sm)}body[data-view=welcome] .pin-error{color:var(--amber-strong)}body[data-view=home] .profileGrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:0}body[data-view=home] .profileBtn{display:flex;flex-direction:column;align-items:center;gap:4px;padding:10px 10px 14px;border-radius:22px;min-height:44px;background:var(--surface);border:1px solid var(--surface-line);color:var(--ink);box-shadow:none}body[data-view=home] .profileBtn img{width:100%;aspect-ratio:1;height:auto;border-radius:16px;object-fit:cover;border:0;margin:0 0 4px}body[data-view=home] .profileBtn b{font:700 22px var(--font-display);color:var(--ink)}body[data-view=home] .profileBtn small{color:var(--muted);font-size:13px}body[data-view=home] .addProfile,body[data-view=home] .addFirst{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;border:2px dashed var(--action);background:var(--surface);color:var(--ink);border-radius:22px}body[data-view=home] .addFirst{width:100%;padding:28px 16px}body[data-view=home] .addFirst small{color:var(--muted);font-size:14px}body[data-view=home] .addFirst b,body[data-view=home] .addProfile b{font:800 17px var(--font-body)}body[data-view=home] .addIcon{display:flex;align-items:center;justify-content:center;width:78px;height:78px;border-radius:20px;border:2px dashed var(--action);color:var(--amber-strong)}.mSectionLabel{font-size:12px;font-weight:800;letter-spacing:1.2px;text-transform:uppercase;color:var(--amber-strong);margin:6px 0 -4px}body[data-view=home] .homeActions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}body[data-view=home] .homeActions .btn,body[data-view=home] .homeActions .btn.secondary{min-height:var(--h-btn-sm);justify-content:flex-start;text-align:left;font-size:14px;line-height:1.2;background:var(--surface);border:1px solid var(--surface-line);color:var(--ink);border-radius:var(--r-btn-sm);padding:8px 12px}body[data-view=home] .homeActions .btn:first-child{display:none}body[data-view=code] .pin-card{background:none;box-shadow:none;color:var(--ink);padding:0;align-items:center;text-align:center}body[data-view=code] .pin-card .face img{width:124px;height:124px;border-radius:26px;border:3px solid var(--action);object-fit:cover}body[data-view=code] .pin-card h2{font:700 32px var(--font-display);color:var(--ink)}body[data-view=code] .stackForm{width:100%}body[data-view=code] .codeField{text-align:center;font-size:28px;letter-spacing:14px;min-height:64px;background:var(--card-bg-on-dark)}body[data-view=code] .rememberRow{padding:12px 14px;border-radius:16px;background:var(--surface);border:1px solid var(--surface-line);color:var(--ink);text-align:left}body[data-view=code] .formText{color:var(--muted);text-align:left}body[data-view=code] .linkBtn{color:var(--amber-strong)}body[data-shell=forge] .rowItem{display:flex;align-items:center;gap:12px;padding:6px 0;color:var(--parch-fg)}body[data-shell=forge] .rowItem img{width:48px;height:48px;border-radius:12px;object-fit:cover}body[data-shell=forge] .rowItem>div{flex:1;min-width:0;line-height:1.3}body[data-shell=forge] .rowItem b{font-size:16px}body[data-shell=forge] .rowItem .btn{min-height:40px;padding:0 14px;font-size:14px}body[data-shell=forge] .groupCard{position:relative;background:var(--field-bg);border:0;border-radius:18px;padding:12px;margin:0;box-shadow:none;color:var(--parch-fg);display:flex;flex-direction:column;gap:10px}body[data-shell=forge] .groupHead{display:flex;flex-direction:row-reverse;align-items:flex-start;justify-content:space-between;gap:8px}body[data-shell=forge] .groupHead h3{margin:0;font-size:16px;font-weight:800}body[data-shell=forge] .groupHead small{display:block;font-size:12.5px;color:var(--parch-muted)}body[data-shell=forge] .groupCard>.groupActions{display:none}body[data-view=admin] .groupCard>.groupActions,body[data-view=classes] .groupCard>.groupActions{display:flex}body[data-shell=forge] .groupMenu .mIconBtn,body[data-shell=forge] .lessonMenu .mIconBtn{width:40px;height:40px;background:#fff;border:1px solid var(--m-line);color:var(--parch-fg)}body[data-shell=forge] .lessonList{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}body[data-shell=forge] .lessonList>li{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:8px 8px 8px 12px;border-radius:14px;background:#fff;box-shadow:0 1px 4px #1e22460f;font-size:15px;font-weight:700;color:var(--parch-fg);border:0}body[data-shell=forge] .lessonList>li>span:first-child{flex:1;min-width:0}body[data-shell=forge] .lessonList .lessonActions{display:none}body[data-shell=forge] .lessonMenu .mMenuPanel .linkBtn{display:flex;align-items:center;width:100%;min-height:44px;padding:0 12px;border-radius:12px;text-decoration:none;color:var(--parch-fg);text-align:left}body[data-shell=forge] .lessonMenu .mMenuPanel .linkBtn.danger{color:var(--danger)}body[data-shell=forge] .adminList>li{flex-wrap:wrap;font-weight:600;font-size:14px}body[data-shell=forge] .subForm{display:flex;flex-direction:column;gap:10px;padding:14px;border-radius:18px;background:var(--field-bg)}body[data-shell=forge] .warnBadge,body[data-shell=forge] .reportCount{display:inline-block;background:var(--almost-bg-strong);color:var(--almost-ink);border-radius:999px;padding:2px 8px;font-size:11.5px;font-weight:800}body[data-shell=forge] .genState,body[data-shell=forge] .gen{border-radius:14px}body[data-shell=forge] .childForm>h2,body[data-shell=forge] .photoForm>h2{display:none}body[data-shell=forge] .avatarPick{border:0;padding:0;margin:0}body[data-shell=forge] .avatarPick legend{font-size:14px;font-weight:800;margin-bottom:8px;padding:0}body[data-shell=forge] .avatarGrid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}body[data-shell=forge] .avatarChoice{padding:0;border-radius:14px;overflow:hidden;border:2px solid transparent;aspect-ratio:1}body[data-shell=forge] .avatarChoice img{width:100%;height:100%;object-fit:cover;display:block}body[data-shell=forge] .avatarChoice.on{border-color:var(--action);box-shadow:0 0 0 3px #f2a33a59}body[data-shell=forge] .reasonPick{border:0;padding:0;margin:0;display:flex;flex-direction:column;gap:8px}body[data-shell=forge] .reasonPick legend{font-size:16px;font-weight:800;margin-bottom:8px;padding:0}body[data-shell=forge] .reasonPick .checkRow{padding:0 14px;border-radius:14px;background:var(--field-bg);border:1px solid transparent}body[data-shell=forge] .reasonPick .checkRow:has(input:checked){border:2px solid var(--action);background:var(--almost-bg)}body[data-shell=forge] .photoThumbs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}body[data-shell=forge] .fileBtn{position:relative;overflow:hidden}body[data-shell=forge] .reportBox{padding:12px;border-radius:14px;background:var(--almost-bg);color:var(--almost-ink)}body[data-view=parent] .parentTabs{display:flex;gap:8px;overflow-x:auto;margin:0 -16px;padding:2px 16px 4px;scrollbar-width:none}body[data-view=parent] .parentTab{flex-shrink:0;display:inline-flex;align-items:center;gap:6px;min-height:40px;padding:0 14px 0 6px;border-radius:999px;background:var(--surface);border:1px solid var(--surface-line);color:var(--ink);font:800 14px var(--font-body)}body[data-view=parent] .parentTab:first-child{padding-left:14px}body[data-view=parent] .parentTab.on{background:var(--card-bg-on-dark);color:var(--parch-fg);border-color:var(--card-bg-on-dark)}body[data-view=parent] .parentTab img{width:30px;height:30px;border-radius:50%;object-fit:cover}body[data-view=parent] .parentGrid{display:flex;flex-direction:column;gap:14px}body[data-view=parent] .parentHead{display:flex;align-items:center;justify-content:flex-start;gap:12px;flex-wrap:wrap;text-align:left;position:relative}body[data-view=parent] .parentHead>div{flex:1;min-width:0}.mStatus{position:absolute;top:0;right:0;padding:3px 10px;border-radius:999px;font-size:12px;font-weight:800}.mStatus.on{background:var(--ok-bg-strong);color:var(--ok-ink)}.mStatus.todo{background:var(--field-bg);color:var(--parch-muted);border:1px solid var(--m-line)}body[data-view=parent] .parentHead img{width:56px;height:56px;border-radius:14px;object-fit:cover}body[data-view=parent] .parentHead h3{margin:0;font-size:18px;font-weight:800}body[data-view=parent] .parentHead p{margin:0;font-size:13px;color:var(--parch-muted)}body[data-view=parent] .parentHead .grade{font-size:13px;color:var(--parch-muted);font-weight:700}body[data-view=parent] .parentStats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}body[data-view=parent] .parentStats .pill{flex-direction:column;justify-content:center;gap:0;padding:8px 4px;border-radius:14px;background:var(--field-bg);border:0;font-size:12px;font-weight:700;color:var(--parch-muted);text-align:center;line-height:1.25;min-height:54px}body[data-view=parent] .parentLevel{display:flex;align-items:center;gap:12px;padding:10px;border-radius:16px;background:var(--field-bg);color:var(--parch-fg);text-align:left;width:100%}body[data-view=parent] .parentLevel .gradeImg,body[data-view=parent] .parentLevel img{width:48px;height:48px;border-radius:12px;flex-shrink:0}body[data-view=parent] .parentLevel span,body[data-view=parent] .parentLevel b{color:var(--parch-fg);font-weight:800;font-size:14px}body[data-view=parent] .parentLevel small{font-weight:600;display:block;color:var(--parch-muted);font-size:12.5px}body[data-view=parent] .parentBtns{display:grid;grid-template-columns:1fr 1fr;gap:10px}body[data-view=parent] .parentBtns .btn{font-size:15px;white-space:nowrap;padding:0 10px}body[data-view=parent] .parentBtns .btn:first-child{background:var(--parch-fg);color:#fff}body[data-view=parent] .parentDetail .parentHead .btn{margin-left:0!important}body[data-view=parent] .kpiGrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}body[data-view=parent] .kpi{display:flex;flex-direction:column;padding:12px;border-radius:16px;background:var(--field-bg);color:var(--parch-fg);border:0;box-shadow:none}body[data-view=parent] .kpi b{font:700 26px var(--font-display);line-height:1.05}body[data-view=parent] .kpi span,body[data-view=parent] .kpi small{font-size:12.5px;color:var(--parch-muted)}body[data-view=parent] .parentDetail .section-title{color:var(--parch-fg);text-shadow:none;font-size:17px;margin:6px 0 0}body[data-view=parent] .parentDetail .foot{color:var(--parch-muted)}body[data-view=parent] .chartCard{background:var(--field-bg);border-radius:16px;padding:10px;box-shadow:none}body[data-view=parent] .tableWrap{display:none}.mLessonStats{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}.mLessonStats li{display:flex;justify-content:space-between;gap:10px;padding:10px 12px;border-radius:14px;background:var(--field-bg);font-size:14px}.mLessonStats li span{color:var(--parch-muted);white-space:nowrap}body[data-view=parent] .parentHist{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}body[data-view=parent] .parentHist li{display:flex;flex-wrap:wrap;gap:4px 10px;padding:10px 12px;border-radius:14px;background:var(--field-bg);font-size:14px;color:var(--parch-fg)}body[data-view=parent] .parentHist li span{color:var(--parch-muted);font-size:12.5px}body[data-view=parent] .parentWeak>div{padding:10px 12px;border-radius:14px;background:var(--field-bg);color:var(--parch-fg);font-size:14px}body[data-shell] .mView{display:flex;flex-direction:column;gap:14px}body[data-view=dashboard] main>.dView,body[data-view=lesson] main>.dView{display:none}body[data-shell=forge][data-view=dashboard],body[data-shell=forge][data-view=lesson],body[data-shell=forge][data-view=gallery]{--hero-h:300px}body[data-shell=forge][data-view=result],body[data-shell=forge][data-view=study]{--hero-h:460px}.mHead.kid{min-height:200px}.mHead.kid:has(.mParentBanner){min-height:0;gap:14px}.mHead.kid:has(.mParentBanner)+.mKid{margin-top:0}.mParentBanner .btn{min-height:40px!important}.mParentBanner{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-top:10px;padding:10px 12px;border-radius:16px;background:var(--surface);box-shadow:var(--shadow-card);border:1px solid var(--surface-line);font-size:13.5px;color:var(--ink)}.mEyebrow{display:block;font-size:12.5px;font-weight:800;letter-spacing:1.6px;text-transform:uppercase;color:var(--amber-strong)}.mTitle{display:block;font-size:19px;font-weight:800;line-height:1.25}.mRow{display:flex;align-items:center;justify-content:space-between;gap:12px}.mH2{margin:10px 0 -2px;font-size:19px;font-weight:800;color:var(--ink)}.mEmpty{color:var(--muted);margin:0}.mGlass{display:flex;flex-direction:column;gap:12px;padding:18px;border-radius:var(--r-card);background:var(--surface);border:1px solid var(--surface-line);color:var(--ink);text-align:left;width:100%}.mGlass p{margin:2px 0 0;color:var(--muted);font-size:15px;line-height:1.4}.mGlass .btn{width:100%;min-height:var(--h-btn)!important;border-radius:var(--r-btn)!important;font-size:18px!important}.mGlass,.mLine,.mStat,.mTile,.mBars,.mMystery,body[data-shell=forge] .advice,body[data-shell=forge] .review-item,body[data-view=home] .profileBtn,body[data-view=gallery] .gradeHero,body[data-view=gallery] .howTo{box-shadow:var(--shadow-card)}.mBar{display:block;height:8px;border-radius:999px;background:var(--progress-track);overflow:hidden}.mBar i{display:block;height:100%;border-radius:inherit;background:var(--progress)}.mBar.ok i{background:var(--ok)}.mKid{display:flex;align-items:center;gap:14px;margin-top:-40px}.mKid img{width:84px;height:84px;border-radius:20px;border:3px solid var(--action);object-fit:cover;flex-shrink:0;background:var(--bg)}.mKid h1{font-family:var(--font-display);font-weight:700;font-size:38px;line-height:1;margin:0;color:var(--ink);overflow-wrap:anywhere}.mKid p{margin:4px 0 0;font-weight:800;color:var(--amber-strong);font-size:16px}.mLevel{flex-direction:row;align-items:center;gap:14px;cursor:pointer}.mLevel .gradeImg{width:84px;height:84px;flex-shrink:0;border-radius:14px}.mLevelText{flex:1;min-width:0;display:flex;flex-direction:column;gap:8px;font-weight:800;font-size:16px}.mLevelText small{font-weight:600;font-size:14px;color:var(--muted);line-height:1.35}.mStats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.mStat{display:flex;flex-direction:column;align-items:center;gap:2px;padding:12px 4px;border-radius:18px;background:var(--surface);border:1px solid var(--surface-line);color:var(--ink)}.mStat b{font-family:var(--font-display);font-weight:700;font-size:26px;line-height:1.1;color:var(--amber-number);white-space:nowrap}.mStat span{font-size:13px;font-weight:700;color:var(--muted)}.mHow,.mMission:not(.quiet),.mPriority{background:var(--highlight-bg);border-color:var(--highlight-line)}.mHow ol{margin:0;padding:0;list-style:none;counter-reset:how;display:flex;flex-direction:column;gap:12px}.mHow li{counter-increment:how;display:flex;align-items:center;gap:14px;font-size:15px;line-height:1.35}.mHow li:before{content:counter(how);flex:none;width:36px;height:36px;border-radius:18px;display:flex;align-items:center;justify-content:center;background:var(--highlight-line);color:var(--amber-strong);font-weight:800}.mChipOk{padding:6px 12px;border-radius:999px;background:var(--ok-bg-strong);color:var(--ok-ink);font-weight:800;font-size:13px;white-space:nowrap}.mList{display:flex;flex-direction:column;gap:10px}.mLine{display:flex;align-items:center;gap:10px;width:100%;padding:14px 16px;border-radius:20px;background:var(--surface);border:1px solid var(--surface-line);color:var(--ink);text-align:left;cursor:pointer}.mLine.wrap{cursor:default}.mLineText{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.mLineText b{font-size:16px;font-weight:800;line-height:1.3}.mLineText small{font-size:14px;color:var(--muted)}.mLine>.mBar{width:64px;flex:none}.mLine .btn.small{min-height:44px!important;padding:0 14px!important;flex:none}.mLine .btn.quiet{background:#fff;color:var(--ink);border:1px solid var(--field-line)}.mLine .doneBadge,.mLine .toCheck{font-size:11px}.mHead.lessonHead{min-height:calc(var(--hero-h) - 20px)}.mSubject{padding:7px 14px;border-radius:999px;background:var(--info-bg);color:var(--info-ink);font-weight:800;font-size:14px}.mLessonTitle{display:flex;align-items:flex-end;gap:12px}.mLessonTitle>div:first-child{flex:1;min-width:0}.mLessonTitle h1{font-family:var(--font-display);font-weight:700;font-size:38px;line-height:1;margin:0;color:var(--ink);overflow-wrap:anywhere}.mLessonTitle p{margin:6px 0 0;color:var(--muted);font-size:15px}.mRing{flex:none;width:76px;height:76px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:conic-gradient(var(--action) var(--p),var(--progress-track) 0)}.mRing span{width:60px;height:60px;border-radius:50%;background:var(--bg);display:flex;align-items:center;justify-content:center;font-weight:800;font-size:16px}.mNextIcon{flex:none;width:56px;height:56px;border-radius:16px;display:flex;align-items:center;justify-content:center;background:var(--highlight-bg);color:var(--amber-strong)}.mNext .mRow{justify-content:flex-start}.mTiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(0,1fr));grid-auto-flow:column;gap:8px}.mTile{display:flex;flex-direction:column;align-items:center;gap:8px;padding:16px 4px;border-radius:20px;background:var(--surface);border:1px solid var(--surface-line);color:var(--ink);font-weight:800;font-size:15px;cursor:pointer}.mTile svg{color:var(--amber-strong)}.mNote{margin:-4px 0 0;text-align:center;font-size:13.5px;color:var(--muted)}.mDone{display:flex;flex-direction:column;gap:14px;padding:18px;border-radius:var(--r-card);border:2px solid var(--ok);background:var(--ok-bg);margin-top:10px}.mDone p{margin:2px 0 0;color:var(--muted);font-size:14.5px}.mDone .mRow{justify-content:flex-start}.mDoneIcon{flex:none;width:48px;height:48px;border-radius:24px;display:flex;align-items:center;justify-content:center;background:var(--ok-bg-strong);color:var(--ok)}.mDone .btn{width:100%;min-height:var(--h-btn)!important;border-radius:var(--r-btn)!important;font-size:18px!important;background:#1d7a48!important;color:#fff!important}.mDone.on .btn{background:#fff!important;color:var(--ink)!important;border:1px solid var(--field-line)!important}body[data-shell=forge] .mView>.notice{margin:0}body[data-shell=parch]{background:var(--parch-bg);color:var(--parch-fg)}body[data-shell=parch] #pageBg{display:none}body[data-shell=parch] main{max-width:none;padding:14px 16px 120px;display:flex;flex-direction:column;gap:14px}body[data-shell=parch] main>.back,body[data-shell=parch] .gamebar{display:none}body[data-shell=parch] .btn{min-height:var(--h-btn);border-radius:var(--r-btn);padding:0 18px;display:inline-flex;align-items:center;justify-content:center;background:var(--parch-fg);color:#fff;font:800 18px var(--font-body);border:0;box-shadow:none}body[data-shell=parch] .btn.quiet,body[data-shell=parch] .btn.secondary,body[data-shell=parch] .btn.ghost{background:#fff;color:var(--parch-fg);border:1.5px solid var(--m-line)}body[data-shell=parch] .mIconBtn.light,.mIconBtn.light{background:#fff;border:0;color:var(--parch-fg);box-shadow:var(--shadow-card);width:52px;height:52px;border-radius:26px}body[data-shell=parch] .mEyebrow{color:#6b3fc2}body[data-shell=parch] .notice{margin:0;border-radius:18px}.mFicheHead{display:flex;align-items:flex-start;gap:14px;padding-top:8px}.mFicheHead h1{font-family:var(--font-display);font-weight:700;font-size:28px;line-height:1.05;margin:2px 0 0;color:var(--parch-fg);overflow-wrap:anywhere}.mTabs{display:flex;gap:8px;overflow-x:auto;margin:0 -16px;padding:2px 16px 4px;scrollbar-width:none}.mTabs::-webkit-scrollbar{display:none}.mTab{flex:none;min-height:44px;padding:0 16px;border-radius:999px;background:#fff;border:1.5px solid var(--m-line);color:var(--parch-muted);font:800 15px var(--font-body);white-space:nowrap;cursor:pointer}.mTab.on{background:var(--parch-fg);border-color:var(--parch-fg);color:#fff}body[data-view=fiche] .result-card{background:none;border:0;box-shadow:none;padding:0;display:flex;flex-direction:column;gap:14px}body[data-view=fiche] .result-card>.section-title,body[data-view=fiche] .ficheActions{display:none}body[data-view=fiche] .ficheSection{display:none;margin:0}body[data-view=fiche] .ficheSection.on{display:flex;flex-direction:column;gap:12px;padding:20px 18px;border-radius:var(--r-card);background:#fff;box-shadow:var(--shadow-card)}body[data-view=fiche] .ficheSection h3{font-size:22px;font-weight:800;margin:0;color:var(--parch-fg)!important}body[data-view=fiche] .ficheSection ul{padding-left:20px;font-size:16px;line-height:1.55;color:var(--parch-fg)}body[data-view=fiche] .ficheSection li{margin:0 0 6px}.mAdvice{margin:0;padding:14px 16px;border-radius:18px;background:#ece4fa;color:#2e2160;font-size:15px;line-height:1.45}.mTrain{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:var(--h-btn);padding:0 18px;border-radius:var(--r-btn);background:var(--ok-bg-strong);color:#1d6b40;font:800 16px var(--font-body);text-align:left;cursor:pointer}.mFicheNav{position:fixed;left:16px;right:16px;bottom:calc(16px + env(safe-area-inset-bottom,0px));z-index:30;display:flex!important;gap:10px}.mFicheNav .btn{flex:1 1 0;min-width:0;padding:0 12px!important;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:block!important;line-height:var(--h-btn)}.mFicheNav .next{flex-grow:1.6}.mFicheNav .prev[hidden]{display:none!important}.mCheck{margin-top:8px}.mStudyTop{display:flex!important;align-items:center;gap:14px;padding-top:8px}.mStudyTop .mBar{flex:1;height:10px;background:#ede5d8}.mCount{font-weight:800;color:var(--parch-muted);font-size:16px}body[data-view=study] .stage{background:none;border:0;box-shadow:none;padding:0;min-height:0;gap:14px;justify-content:flex-start}body[data-view=study] .stage .chip{font-size:15px;padding:8px 14px;background:#ece4fa!important;color:#3f2a8c}body[data-view=study] .againNote{margin:0;color:var(--almost-dark)}body[data-view=study] .flashcard{position:relative;min-height:min(56vh,460px);background:#fff;border:0;border-radius:28px;box-shadow:0 10px 30px #1e22461a;padding:56px 22px 22px;gap:18px;cursor:pointer}body[data-view=study] .flashcard.flipped{cursor:default}body[data-view=study] .flashcard>.mEyebrow{position:absolute;top:22px;left:22px;color:#a35a00}body[data-view=study] .flashFront{font-family:var(--font-display);font-weight:700;font-size:40px;line-height:1.05;color:var(--parch-fg);overflow-wrap:anywhere}body[data-view=study] .flashcard.flipped .flashFront{font:700 20px var(--font-body);color:var(--parch-muted)}body[data-view=study] .flashBack{border-top:2px dashed var(--m-line);padding-top:16px;font-family:var(--font-display);font-weight:700;font-size:36px;line-height:1.1;color:var(--parch-fg)}body[data-view=study] .flashcard:not(:has(.flashBack)) .flashFront{font-size:30px}body[data-view=study] .flashAsk{margin:0;font-weight:800;font-size:16px;color:#a35a00}body[data-view=study] .flashcard.cloze .flashFront,body[data-view=study] .flashcard.cloze .flashBack{font-size:28px;line-height:1.2}body[data-view=study] .flashcard.cloze.flipped .flashFront{display:none}body[data-view=study] .flashcard.cloze.flipped .flashBack{border-top:0;padding-top:0}.flashGap{display:inline-block;min-width:3.2em;border-bottom:3px solid #A35A00;color:#a35a00;text-align:center;line-height:1;margin:0 .1em}.flashcard mark{background:#ffe2a8;color:inherit;border-radius:6px;padding:0 .15em}body[data-view=study] .flashcard.flipOut{animation:flashOut .17s ease-in forwards}body[data-view=study] .flashcard.flipIn{animation:flashIn .22s ease-out}@keyframes flashOut{to{transform:perspective(1000px) rotateY(90deg)}}@keyframes flashIn{0%{transform:perspective(1000px) rotateY(-90deg)}to{transform:none}}@media(prefers-reduced-motion:reduce){body[data-view=study] .flashcard.flipOut,body[data-view=study] .flashcard.flipIn{animation:none}}body[data-view=study] .listenBtn{display:inline-flex;align-items:center;justify-content:center;width:56px;height:56px;border-radius:28px;background:var(--almost-bg-strong);margin-left:8px;vertical-align:middle;font-size:22px}.mFlipHint{position:absolute;bottom:18px;left:0;right:0;margin:0;display:flex!important;align-items:center;justify-content:center;gap:8px;color:var(--parch-muted);font-size:15px}.mHonest{margin:-2px 0 0;text-align:center;color:var(--parch-muted);font-size:14.5px}body[data-view=study] .stage>.btn,body[data-view=study] .stage>.actions{position:fixed;left:16px;right:16px;bottom:calc(16px + env(safe-area-inset-bottom,0px));z-index:30;margin:0}body[data-view=study] .stage>.actions{display:flex;flex-wrap:nowrap;gap:10px}body[data-view=study] .stage>.actions .btn{flex:1 1 0;min-width:0}body[data-shell=forge] .result-card{background:none;border:0;box-shadow:none;padding:0;color:var(--ink);display:flex;flex-direction:column;gap:14px;text-align:center}body[data-shell=forge] .result-card>.section-title,body[data-shell=forge] .result-card .dMain>.section-title{order:-2;margin:0;font-size:14px;font-weight:800;letter-spacing:1.8px;text-transform:uppercase;color:var(--amber-strong);text-shadow:none}body[data-shell=forge] .studyRecap{padding-top:120px}body[data-shell=forge] .studyRecap>.section-title{margin-bottom:220px}body[data-view=result] .mHead{min-height:0}body[data-view=result] .result-card{padding-top:210px}body[data-shell=forge] .note-wrap{margin:0;line-height:1}body[data-shell=forge] .note-num{font-family:var(--font-display);font-weight:700;font-size:108px;color:var(--amber-number);text-shadow:none}body[data-shell=forge] .note-den{font-family:var(--font-display);font-weight:700;font-size:48px;color:var(--ink)}.mRecapLabel{margin:-6px 0 0;font-weight:800;font-size:19px}body[data-shell=forge] .result-card>p,body[data-shell=forge] .result-card .dMain>p{margin:-6px 0 0!important;color:var(--muted)!important;font-size:15.5px;line-height:1.45}body[data-shell=forge] .appreciation{margin:-4px 0 0;font-size:20px;font-weight:800;color:var(--ink)!important}body[data-shell=forge] .xpSummary{margin:0;padding:18px;border-radius:var(--r-card);background:var(--highlight-bg);border:1px solid var(--highlight-line);color:var(--ink)}body[data-shell=forge] .xpTotal{font-family:var(--font-display);font-weight:700;font-size:40px;color:var(--amber-number);line-height:1.1}body[data-shell=forge] .xpTotal span{font-size:inherit}body[data-shell=forge] .xpBonus{font-size:15.5px;margin:4px 0 12px}body[data-shell=forge] .xpBonus li{padding:4px 0}body[data-shell=forge] .levelLine{color:var(--ink);font-weight:800;font-size:17px;margin-bottom:8px}body[data-shell=forge] .levelLine b{color:inherit}body[data-shell=forge] .beltbar{height:10px;background:var(--progress-track)!important}body[data-shell=forge] .beltbar i{background:var(--progress)}body[data-shell=forge] .xpSummary .next,body[data-shell=forge] .gradeHero .next{color:var(--muted);font-size:14.5px;margin-top:8px}body[data-shell=forge] .result-card .mH2{text-align:left;margin-top:8px}.mBars{padding:16px 18px;border-radius:var(--r-card);background:var(--surface);border:1px solid var(--surface-line);text-align:left}body[data-shell=forge] .hbar{grid-template-columns:1fr auto;gap:6px 10px;font-size:15.5px;margin-bottom:14px}body[data-shell=forge] .hbar:last-child{margin-bottom:0}body[data-shell=forge] .hbar .t{grid-column:1 / -1;grid-row:2;height:9px;background:var(--progress-track)}body[data-shell=forge] .hbar .t i{background:var(--action)!important}body[data-shell=forge] .hbar b{grid-row:1;grid-column:2;color:var(--amber-strong)}.mPriority{text-align:left}body[data-shell=forge] .hasPriority>.advice,body[data-shell=forge] .hasPriority .dSide>.advice{display:none}body[data-shell=forge] .advice{margin:0;padding:16px 18px;border-radius:var(--r-card);background:var(--surface);border:1px solid var(--surface-line);color:var(--ink)}body[data-shell=forge] .result-card>.section-title~.section-title,body[data-shell=forge] .result-card .dSide>.section-title{order:0;text-align:left!important;font-size:19px;letter-spacing:0;text-transform:none;color:var(--ink);margin-top:8px!important}body[data-shell=forge] .review{display:flex;flex-direction:column;gap:10px;margin:0}body[data-shell=forge] .review-item{border:1px solid var(--surface-line);border-radius:20px;background:var(--surface);padding:14px 16px}body[data-shell=forge] .review-q{font-size:15.5px;color:var(--ink)}body[data-shell=forge] .review-your{color:var(--amber-strong);font-size:14px}body[data-shell=forge] .review-correct{color:#1d6b40;font-size:14px}body[data-shell=forge] .review-expl{color:var(--muted);font-size:14px}body[data-shell=forge] .result-card .actions{display:flex;flex-direction:column;gap:10px;margin-top:6px}body[data-shell=forge] .result-card .actions .btn{width:100%;min-height:var(--h-btn);border-radius:var(--r-btn);font-size:18px}body[data-shell=forge] .result-card .actions .btn.ghost,body[data-shell=forge] .result-card .actions .btn.secondary{background:#fff;color:var(--ink);border:1px solid var(--field-line)}body[data-shell=forge] .studyRecap .actions{flex-direction:row-reverse}body[data-shell=forge] .studyRecap .actions .btn{flex:1 1 0;min-width:0}.levelUp{background:linear-gradient(#f6f0e273,#f6f0e273),url(/img/forge-claire-mobile.jpg) 50% 50% / cover no-repeat,#f6f0e2;padding:16px}.levelUpCard{background:radial-gradient(circle at 50% 40%,rgba(255,250,238,.95) 0%,rgba(255,241,214,.85) 45%,transparent 72%);box-shadow:none;color:#1e2246;padding:24px 0;max-width:420px}.levelUpCard h2{font-family:Barlow Condensed,Arial Narrow,sans-serif;font-weight:700;font-size:64px;line-height:1;color:#b5650f;margin:4px 0 18px}.levelUpCard h3{font-family:Barlow Condensed,Arial Narrow,sans-serif;font-weight:700;font-size:38px;line-height:1.05;color:#1e2246;margin:18px 0 4px}.levelUpCard p{color:#4a4658}.levelUpKicker{color:#8a4b0b!important;letter-spacing:1.8px}.levelUpImg{border:4px solid #F2A33A;border-radius:28px;box-shadow:0 0 50px #f2a33a59}.levelUpRank b{color:#1e2246}.levelUpCard .actions{display:flex;flex-wrap:nowrap;gap:10px;margin-top:22px}.levelUpCard .actions .btn{flex:1 1 0;min-width:0;min-height:56px;border-radius:18px;font:800 18px Nunito,system-ui,sans-serif;background:#f2a33a;color:#2a1a08;border:0;box-shadow:none}.levelUpCard .actions .btn.secondary{order:-1;background:#fff;color:#1e2246;border:1px solid #E2D4BA}body[data-view=gallery] main>.section-title,body[data-view=gallery] main>.parentBanner{display:none}body[data-view=gallery] .mHead{min-height:150px}body[data-view=gallery] .gradeHero{margin:0;padding:16px;gap:16px;border-radius:var(--r-card);background:var(--surface);border:1px solid var(--surface-line);box-shadow:none}body[data-view=gallery] .gradeHero>.gradeImg{width:100px;height:100px;flex:none;border:3px solid var(--action);border-radius:18px}body[data-view=gallery] .gradeHeroText .levelLine{margin-bottom:8px}body[data-view=gallery] .howTo{margin:0;padding:16px 18px;border-radius:var(--r-card);background:var(--surface);border:1px solid var(--surface-line);color:var(--ink);font-size:15px}body[data-view=gallery] .howTo summary{color:var(--amber-strong);font-size:17px}body[data-view=gallery] .howTo p{color:var(--muted)}body[data-view=gallery] .rankBlock{margin:6px 0 0}body[data-view=gallery] .rankHead{display:flex;align-items:baseline;gap:8px;font-size:19px;color:var(--ink);text-shadow:none;margin-bottom:12px}body[data-view=gallery] .rankHead small{margin-left:auto;color:var(--muted);font-size:14px}body[data-view=gallery] .rankBlock.locked~.rankBlock.locked,body[data-view=gallery] .rankBlock.locked .galleryGrid{display:none}.mMystery{display:flex!important;align-items:center;gap:14px;margin:0;padding:18px;border-radius:var(--r-card);background:var(--surface);border:1px solid var(--surface-line);color:var(--muted);font-size:15px;line-height:1.4}.mMystery span{flex:none;width:56px;height:56px;border-radius:18px;display:flex;align-items:center;justify-content:center;background:var(--highlight-bg);color:var(--amber-strong);font:800 26px var(--font-body)}body[data-view=gallery] .galleryName b{color:var(--action-strong)}body[data-shell=forge] .review-expl{display:none}body[data-shell=forge] .xpTotal{font-size:34px}body[data-view=gallery] .galleryGrid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}body[data-view=gallery] .galleryItem{position:relative;padding:0;overflow:hidden;border-radius:20px;background:var(--surface);border:1px solid var(--surface-line);color:var(--ink);aspect-ratio:.86}body[data-view=gallery] .galleryItem:not(.locked) .gradeImg{position:absolute;inset:0;height:100%;border-radius:0;aspect-ratio:auto}body[data-view=gallery] .galleryItem:not(.locked) .galleryName{position:absolute;left:0;right:0;bottom:0;padding:30px 12px 12px;background:linear-gradient(transparent,#0a0a1ed9);font-size:14.5px}body[data-view=gallery] .galleryItem:not(.locked) small{display:none}body[data-view=gallery] .galleryItem.locked{opacity:1;align-items:center;justify-content:center;text-align:center;padding:12px;background:repeating-linear-gradient(135deg,#1e22460a 0 14px,#1e224604 14px 28px)}body[data-view=gallery] .galleryItem.locked .gradeImg{background:none;width:auto;aspect-ratio:auto}body[data-view=gallery] .galleryItem.locked .galleryName b{color:inherit}body[data-view=gallery] .galleryItem.locked small{color:var(--muted);font-size:13.5px}.d-only{display:none!important}body[data-view=quiz] .stage{background:none;border:0;box-shadow:none;padding:0;min-height:0;gap:16px;justify-content:flex-start}body[data-view=quiz] .stage>.chip{display:none}body[data-view=quiz] #nextBtn{display:none!important}.mChipRow{display:flex!important;align-items:center;flex-wrap:wrap;gap:6px 12px;margin-top:-2px}.mChip{padding:6px 12px;border-radius:999px;font-weight:800;font-size:14px;color:var(--parch-fg);background:color-mix(in srgb,var(--c) 22%,#fff)}.mType{font-size:12.5px;font-weight:800;letter-spacing:1.4px;text-transform:uppercase;color:var(--parch-muted)}body[data-view=quiz] .qtext{font-size:22px;font-weight:800;line-height:1.3;color:var(--parch-fg)}body[data-shell=parch] .tip{margin:-8px 0 0;font-size:14px;color:var(--parch-muted)}body[data-view=quiz] .hint{margin:0;color:var(--almost-dark);font-size:14.5px}body[data-view=quiz] #validateBtn{position:fixed;left:16px;right:16px;bottom:calc(16px + env(safe-area-inset-bottom,0px));z-index:30;width:auto}body[data-view=quiz] #validateBtn:disabled{display:none}body[data-view=quiz]:has(#validateBtn:not(:disabled)) main:after{content:"";position:fixed;left:0;right:0;bottom:0;height:96px;z-index:25;pointer-events:none;background:linear-gradient(rgba(246,240,226,0),var(--parch-bg) 55%)}body[data-view=quiz] .foot-row{margin:0;justify-content:flex-start!important}body[data-view=quiz] .opt{min-height:56px;display:flex;align-items:center;gap:12px;padding:12px 14px;border-radius:18px;border:2px solid var(--m-line);background:#fff;color:var(--parch-fg);font:700 16px var(--font-body);text-align:left}body[data-view=quiz] .options:not(.vfChoice){counter-reset:opt}body[data-view=quiz] .options:not(.vfChoice) .opt:before{counter-increment:opt;content:counter(opt,upper-alpha);flex:none;width:30px;height:30px;border-radius:9px;display:flex;align-items:center;justify-content:center;background:var(--field-bg);font-size:13px;font-weight:800}body[data-view=quiz] .opt.correct{background:var(--ok-bg);border-color:var(--ok)}body[data-view=quiz] .opt.wrong{background:var(--almost-bg);border-color:var(--almost)}body[data-view=quiz] .vfChoice{display:grid;grid-template-columns:1fr 1fr;gap:10px}body[data-view=quiz] .vfChoice .opt{justify-content:center;font-size:18px}body[data-view=quiz] .vfChoice .opt.picked{border-color:var(--parch-fg);background:#eceaf6}body[data-view=quiz] .answerArea,body[data-view=quiz] .textrow input[type=text],body[data-view=quiz] .labelRow .gap{width:100%;min-height:52px;padding:12px 14px;border-radius:16px;border:2px solid var(--parch-fg);background:#fff;color:var(--parch-fg);font:600 16px var(--font-body)}body[data-view=quiz] .answerArea:focus,body[data-view=quiz] .textrow input[type=text]:focus,body[data-view=quiz] .gap:focus{outline:3px solid rgba(242,163,58,.45);outline-offset:1px}body[data-view=quiz] .answerArea:disabled,body[data-view=quiz] .textrow input:disabled{border-color:var(--m-line);background:var(--field-bg)}body[data-view=quiz] .textrow{align-items:center}body[data-view=quiz] .textrow .unit{color:var(--parch-fg);font-size:17px}body[data-view=quiz] #resetBtn{min-height:44px;font-size:15px}body[data-view=quiz] .selfCheck{border-radius:18px;background:#fff;border:2px solid var(--almost)}body[data-view=quiz] .selfCheck .actions{flex-wrap:nowrap}body[data-view=quiz] .selfCheck .btn{flex:1 1 0;min-width:0;font-size:16px}body[data-view=quiz] mark{background:var(--almost-bg-strong);color:var(--almost-ink);border-radius:4px;padding:0 2px}body[data-view=quiz] .clozeText{padding:18px;border-radius:var(--r-card);background:#fff;box-shadow:var(--shadow-card);font-size:18px;line-height:2.2;color:var(--parch-fg)}body[data-view=quiz] .clozeText .gap{font:700 17px var(--font-body);padding:4px 10px;border-radius:10px;border:2px solid var(--m-line);border-bottom-width:3px;background:var(--field-bg);color:var(--parch-fg);max-width:100%}body[data-view=quiz] .gap.active{border-color:var(--almost)!important;background:var(--almost-bg)!important}body[data-view=quiz] .gap.missing{border-color:var(--almost)!important}body[data-view=quiz] .gap.ok{border-color:var(--ok)!important;background:var(--ok-bg)!important}body[data-view=quiz] .gap.ko{border-color:var(--almost)!important;background:var(--almost-bg)!important;border-style:dashed!important}body[data-view=quiz] .gap[readonly]{cursor:pointer;caret-color:transparent}.wordBank{display:flex;flex-wrap:wrap;gap:10px}.bankWord{min-height:44px;padding:0 16px;border-radius:14px;border:2px solid var(--m-line);background:#fff;color:var(--parch-fg);font:800 16px var(--font-body);cursor:pointer}.bankWord.used{opacity:.35}body[data-view=quiz] .labelInputs{gap:10px}body[data-view=quiz] .labelRow .labelNum{color:var(--parch-fg)}body[data-view=quiz] .matchGrid{display:none}.mMatch{display:grid!important;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:10px}.mMatchCol{display:flex;flex-direction:column;gap:10px}.mPair{position:relative;flex:1;min-height:56px;padding:10px 12px;border-radius:16px;border:2px solid var(--m-line);background:#fff;color:var(--parch-fg);font:700 15px var(--font-body);text-align:left;cursor:pointer}.mPair.on{border-color:var(--parch-fg);background:#eceaf6}.mPair[data-n]:not([data-n=""]){border-color:var(--action);background:var(--almost-bg);padding-right:32px}.mPair[data-n]:not([data-n=""]):after{content:attr(data-n);position:absolute;top:6px;right:6px;width:22px;height:22px;border-radius:11px;display:flex;align-items:center;justify-content:center;background:var(--action);color:var(--action-ink);font-size:12px;font-weight:800}.mPair.ok{border-color:var(--ok)!important;background:var(--ok-bg)!important}.mPair.ok:after{background:var(--ok)!important;color:#fff!important}.mPair.no{border-color:var(--almost)!important;border-style:dashed!important;background:var(--almost-bg)!important}.mPair:disabled{cursor:default}body[data-view=quiz] .orderList{padding:0;margin:0;display:flex;flex-direction:column;gap:10px}body[data-view=quiz] .orderItem{min-height:56px;border-radius:18px;background:#fff;border:2px solid var(--m-line);color:var(--parch-fg);font-size:16px}body[data-view=quiz] .orderItem.dragging{border-color:var(--parch-fg)}body[data-view=quiz] .orderItem.ok{background:var(--ok-bg);border-color:var(--ok)}body[data-view=quiz] .orderItem.ko{background:var(--almost-bg);border-color:var(--almost);border-style:dashed}body[data-view=quiz] .orderItem .mv button{min-width:40px;min-height:40px;border-radius:12px}body[data-view=quiz] .scrAnswer{min-height:110px;align-content:flex-start;padding:14px;border-radius:var(--r-card);border:0;background:#fff;box-shadow:var(--shadow-card)}body[data-view=quiz] .scrAnswer.ok{background:var(--ok-bg)}body[data-view=quiz] .scrAnswer.ko{background:var(--almost-bg)}body[data-view=quiz] .scrBank{gap:10px}body[data-view=quiz] .scrWord{min-height:44px;padding:0 16px;border-radius:14px;border:2px solid var(--m-line);background:#fff;color:var(--parch-fg);font:800 16px var(--font-body)}body[data-view=quiz] .chainSteps{padding:0;list-style:none}body[data-view=quiz] .chainStep{padding:14px;border-radius:18px;background:#fff;border:2px solid var(--m-line);color:var(--parch-fg)}body[data-view=quiz] .chainStep.now{border-color:var(--parch-fg)}body[data-view=quiz] .chainStep.ok{background:var(--ok-bg);border-color:transparent}body[data-view=quiz] .chainStep.ok .chainRes{color:#1d6b40}body[data-view=quiz] .chainStep.ko{background:var(--almost-bg);border-color:transparent}body[data-view=quiz] .chainStep.ko .chainRes{color:var(--almost-ink)}body[data-view=quiz] .stage>.actions{flex-wrap:nowrap;gap:10px;margin:0}body[data-view=quiz] .stage>.actions .btn{flex:1 1 0;min-width:0}body[data-view=quiz] .stage>.actions .btn:first-child{background:var(--action);color:var(--action-ink);border:0}body[data-view=quiz] .feedback.show{position:fixed;left:0;right:0;bottom:0;z-index:40;margin:0;max-height:78vh;overflow:auto;padding:22px 18px calc(16px + env(safe-area-inset-bottom,0px));border:0;border-radius:28px 28px 0 0;box-shadow:0 0 0 100vmax #1e224647;animation:mSheetUp .25s ease}body[data-view=quiz] .feedback.good{background:var(--ok-bg);border-top:2px solid var(--ok)}body[data-view=quiz] .feedback.bad{background:var(--almost-bg);border-top:2px solid var(--almost)}@keyframes mSheetUp{0%{transform:translateY(100%)}to{transform:none}}.mSheet{display:flex!important;flex-direction:column;gap:12px;color:var(--parch-fg)}.mSheet:before{content:"";align-self:center;width:40px;height:4px;border-radius:2px;background:#1e22462e;margin:-10px 0 2px}.mSheetHead{display:flex;align-items:center;gap:12px}.mSheetIcon{flex:none;width:44px;height:44px;border-radius:22px;display:flex;align-items:center;justify-content:center}.good .mSheetIcon{background:var(--ok-bg-strong);color:var(--ok)}.bad .mSheetIcon{background:var(--almost-bg-strong);color:var(--almost-dark)}.mSheetTitles{flex:1;min-width:0;display:flex;flex-direction:column}.mSheetTitle{font-family:var(--font-display);font-weight:700;font-size:30px;line-height:1.05}.mSheetTitles small{font-size:13px;color:var(--parch-muted)}.mXp{flex:none;padding:5px 10px;border-radius:999px;background:var(--almost-bg-strong);color:var(--almost-ink);font-size:13px;font-weight:800}.mSheetText{font-size:15.5px;line-height:1.5}.mSheetText .diff{display:block;margin-top:6px}.mSheetText .orderAnswer{margin:6px 0 0;padding-left:20px}.mSheetActions{display:flex;gap:10px}.mSheetActions .btn{flex:1 1 0;min-width:0;padding:0 12px!important;font-size:16px!important;white-space:nowrap}.mSheetActions .btn:last-child{flex-grow:1.6}.mFicheSheet{position:fixed;inset:0;z-index:60;background:#1e224659;display:flex;align-items:flex-end}.mFicheSheetPanel{width:100%;max-height:85vh;overflow:auto;padding:16px 18px calc(20px + env(safe-area-inset-bottom,0px));border-radius:28px 28px 0 0;background:var(--parch-bg);color:var(--parch-fg);display:flex;flex-direction:column;gap:12px;animation:mSheetUp .25s ease}.mFicheSheetPanel h3{margin:0;font-size:22px;font-weight:800}.mFicheSheetPanel ul{margin:0;padding-left:20px;font-size:16px;line-height:1.55}.mFicheSheetPanel .mEyebrow{color:#6b3fc2}body[data-view=quiz] .mapZone.wrong{fill:var(--almost)!important}body[data-view=quiz] .mapLine.wrong{stroke:var(--almost)!important}body[data-view=quiz] .mapSkip{align-self:flex-start}body[data-view=quiz] .fixTap{padding:18px;border-radius:var(--r-card);background:#fff;box-shadow:var(--shadow-card);font-size:18px;line-height:2.1;color:var(--parch-fg)}body[data-view=quiz] .brickZone{display:flex;flex-direction:column;gap:12px}body[data-view=quiz] .brickHint{margin:0;font-size:14px;font-weight:600;color:var(--parch-muted)}body[data-view=quiz] .brickStatus{margin:0;font-size:15px;color:var(--parch-fg)}body[data-view=quiz] .sortChip,body[data-view=quiz] .placeChip{min-height:44px;padding:0 14px;border-radius:14px;border:2px solid var(--m-line);background:#fff;font:800 15px var(--font-body);color:var(--parch-fg)}body[data-view=quiz] .sortChip.picked,body[data-view=quiz] .placeChip.picked{border-color:var(--action);background:var(--almost-bg);box-shadow:0 0 0 3px var(--almost-bg-strong)}body[data-view=quiz] .sortChip.ko,body[data-view=quiz] .placeChip.ko{border-color:var(--almost);border-style:dashed;background:var(--almost-bg)}body[data-view=quiz] .sortChip.ok,body[data-view=quiz] .placeChip.ok{border-color:var(--ok);background:var(--ok-bg)}body[data-view=quiz] .sortZones{grid-template-columns:1fr;gap:10px}body[data-view=quiz] .sortZone{min-height:64px;padding:12px 14px;border-radius:18px;border:2px dashed #F2C27A;background:var(--almost-bg)}body[data-view=quiz] .sortZoneName{color:var(--parch-fg);font-size:16px}body[data-view=quiz] .placeTarget{border-color:#f2c27a!important;background:var(--almost-bg)}body[data-view=quiz] .flowArrow{color:var(--almost-dark)}body[data-view=quiz] .mindmap,body[data-view=quiz] .flowChain,body[data-view=quiz] .nlWrap,body[data-view=quiz] .cirBoardWrap,body[data-view=quiz] .revealBox{background:#fff;border-radius:var(--r-card);box-shadow:var(--shadow-card)}body[data-view=quiz] .mindmap,body[data-view=quiz] .flowChain{padding:14px}body[data-view=quiz] .revealNotes li.ko b{color:var(--almost-dark)}body[data-view=quiz] .nlPoint.ko{background:var(--almost)}body[data-view=quiz] .cirBoard.short:before{border-color:var(--almost)}body[data-view=quiz] .brickZone .btn:not(.ghost):not(.secondary):not(.quiet){min-height:var(--h-btn);border-radius:var(--r-btn);background:var(--parch-fg);color:#fff;font:800 17px var(--font-body)}body[data-view=quiz] .brickZone .btn.ghost,body[data-view=quiz] .brickZone .btn.secondary{min-height:44px;border-radius:14px;background:#fff;color:var(--parch-fg);border:1.5px solid var(--m-line);font-weight:800}body[data-view=fiche] .brickFiche{margin:6px 0 0;padding:16px 0 0;border-radius:0;background:none;border-top:1.5px solid var(--m-line)}body[data-view=fiche] .brickTitle{font-size:17px;line-height:1.3;color:var(--parch-fg);margin:0 0 10px}body[data-view=fiche] .brickHint,body[data-view=fiche] .brickNote{color:var(--parch-muted);font-size:14px}body[data-view=fiche] .sortCols{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}body[data-view=fiche] .sortCol{border:0;border-radius:18px;padding:12px;background:#e1ecfb}body[data-view=fiche] .sortCol:nth-child(4n+2){background:#ddf3e6}body[data-view=fiche] .sortCol:nth-child(4n+3){background:#ffe9c7}body[data-view=fiche] .sortCol:nth-child(4n+4){background:#ece4fa}body[data-view=fiche] .sortCol h4{color:var(--parch-fg);font-size:16px;margin:0 0 8px}body[data-view=fiche] .sortCol ul{list-style:none;padding:0;display:flex;flex-wrap:wrap;gap:6px}body[data-view=fiche] .sortCol li{padding:6px 10px;border-radius:12px;background:#fff;font-weight:700;font-size:14px;line-height:1.3}body[data-view=fiche] .sortCols:has(.sortCol:nth-child(3):last-child) .sortCol:last-child{grid-column:1 / -1}body[data-view=fiche] .flowBlock{border-color:var(--almost);border-radius:16px}body[data-view=fiche] .flowArrow{color:var(--almost-dark)}.mTrainAct{margin-top:12px}.legalFoot{display:flex;flex-wrap:wrap;justify-content:center;gap:0 18px;margin:6px 0 0;padding:0 4px;font-size:13px}.legalFoot a{display:inline-flex;align-items:center;min-height:44px;color:inherit;text-decoration:underline;text-underline-offset:3px}body[data-shell=forge] main>.legalFoot a{color:var(--muted)}.legalPage{position:fixed;inset:0;z-index:70;overflow:auto;padding:14px 16px 40px;background:#f6f0e2;color:#1e2246;font-family:Nunito,system-ui,sans-serif}.legalPage .mEyebrow{color:#6b3fc2}.legalPage .legalHead h1{color:#1e2246}.legalBody{max-width:760px;margin:16px auto 0;padding:20px 18px;border-radius:22px;background:#fff;box-shadow:0 2px 12px #1e224614;font-size:16px;line-height:1.6;overflow-wrap:anywhere}.legalBody h2{margin:18px 0 6px;font-size:19px;font-weight:800;line-height:1.3}.legalBody h2:first-child{margin-top:0}.legalBody p,.legalBody ul{margin:0 0 12px}.legalPending{color:#5b5f7a;font-style:italic}.legalPage .legalFoot{max-width:760px;margin:16px auto 0;color:#5b5f7a}.tutoBody{max-width:860px}.tutoDevices{display:flex;flex-wrap:wrap;gap:8px;margin:4px 0 18px}.tutoDevices .pill{min-height:44px;padding:0 14px;font-size:14px!important;border-radius:999px;border:1px solid #E4DCCD;background:#fffcf5;color:#1e2246;font:800 15px Nunito,system-ui,sans-serif;cursor:pointer}.tutoDevices .pill.on{background:#f2a93b;border-color:#f2a93b;color:#1e2246}.tutoSteps{list-style:none;margin:0 0 20px;padding:0;display:flex;flex-direction:column;gap:22px}.tutoStep{display:flex;flex-direction:column;gap:12px;padding-top:18px;border-top:1px solid #EFE6D3}.tutoStep:first-child{border-top:0;padding-top:0}.tutoText{display:grid;grid-template-columns:36px minmax(0,1fr);gap:12px;align-items:start}.tutoText h2{margin:4px 0 6px}.tutoText p:last-child,.tutoText ul:last-child{margin-bottom:0}.tutoNum{width:36px;height:36px;border-radius:50%;background:#f2a93b;color:#1e2246;display:grid;place-items:center;font:700 20px Barlow Condensed,Arial Narrow,sans-serif}.tutoShots{display:flex;justify-content:center}.tutoShot{display:block;border-radius:18px;overflow:hidden;border:1px solid #E4DCCD;box-shadow:0 4px 14px #1e22461a;background:#f6f0e2}.tutoShot img{display:block;width:100%;height:auto}.tutoShot.mobile{width:min(280px,100%)}.tutoShot.desktop{width:100%;border-radius:12px;display:none}.tutoPage.tutoDesk .tutoShot.desktop{display:block}.tutoPage.tutoDesk .tutoShot.mobile{display:none}.tutoShot:focus-visible{outline:3px solid #6B3FC2;outline-offset:3px}.tutoCta{display:flex;margin:8px auto 0}.tutoNext{margin:4px 0 12px;font-weight:800}.tutoNext a{color:#8a5a10;text-underline-offset:3px}.photoForm .tutoHelp{align-self:flex-start;color:#8a5a10;font-weight:800}.tutoGrid{max-width:860px;margin:16px auto 0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.tutoCard{display:flex;flex-direction:column;gap:6px;padding:18px 16px;border-radius:20px;background:#fffcf5;border:1px solid #E4DCCD;box-shadow:0 2px 12px #1e224614;color:#1e2246;text-decoration:none;min-width:0}.tutoCard b{font-size:17px;line-height:1.3}.tutoCard span:last-child{color:#5b5f7a;font-size:14px;line-height:1.45}.tutoCardIcon{width:46px;height:46px;border-radius:14px;background:#fbe7c2;display:grid;place-items:center;font-size:24px}.tutoCard:hover{border-color:#f2a93b}.tutoCard:focus-visible{outline:3px solid #6B3FC2;outline-offset:3px}@media(max-width:359px){.tutoGrid{grid-template-columns:1fr}}}@media all{body[data-shell=landing]{background:var(--bg);color:var(--ink)}body[data-shell=landing] #pageBg{display:none}body[data-shell=landing] main{max-width:none;padding:0 0 40px}.landTop{position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 16px;padding-top:calc(10px + env(safe-area-inset-top,0px));margin-top:calc(-1*env(safe-area-inset-top,0px));background:#f6f0e2f0;border-bottom:1px solid var(--surface-line);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}.landTop .mBrand{font-size:14px;letter-spacing:1px;min-width:0;line-height:1.05}.landTop .mBrand svg{flex:none}.landTopRight{display:flex;align-items:center;gap:8px;flex:none}.landTopRight .langSwitch .pill{min-height:34px;padding:0 9px;font-size:13px;background:var(--surface);border:1px solid var(--field-line);color:var(--ink-2)}.landTopRight .langSwitch .pill.on{background:var(--action);border-color:var(--action);color:var(--action-ink)}.landLogin{min-height:40px;padding:0 14px;border-radius:999px;background:var(--ink);color:#fff;font:800 14px var(--font-body);white-space:nowrap}.landHero{max-width:1120px;margin:0 auto;padding:16px 16px 8px;display:flex;flex-direction:column;gap:18px}.landMedia{position:relative;aspect-ratio:16/9;border-radius:20px;overflow:hidden;background:var(--surface);border:1px solid var(--surface-line);box-shadow:var(--shadow-card)}.landMedia img,.landMedia video{display:block;width:100%;height:100%;object-fit:cover}.landMedia.hasVideo{aspect-ratio:1/1;width:100%;max-width:520px;margin:0 auto;background:#f3e6c8}.landMedia video{cursor:pointer}.landPlay{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);min-height:52px;padding:0 22px;border-radius:999px;border:0;background:var(--action);color:var(--action-ink);font:800 17px var(--font-body);box-shadow:0 8px 20px #b5650f4d}.landPlay[hidden]{display:none}.landPitch h1{font-family:var(--font-display);font-weight:700;font-size:34px;line-height:1.05;margin:0;color:var(--ink)}.landSub{margin:10px 0 0;font-size:17px;color:var(--ink-2)}.landInvite{margin:14px 0 0;padding:10px 14px;border-radius:14px;background:var(--highlight-bg);border:1px solid var(--highlight-line);color:var(--amber-strong);font-weight:700}.landInvite.warn{background:var(--surface);border-color:var(--field-line);color:var(--ink-2);font-weight:600}.landCta{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;min-height:56px;margin-top:16px;padding:10px 20px;border-radius:16px;background:var(--action);color:var(--action-ink);font:800 18px/1.2 var(--font-body);text-align:center;box-shadow:0 8px 20px #b5650f38}.landCta svg{flex:none}.landAlready{margin:10px 0 0;text-align:center;color:var(--muted);font-size:15px}.landAlready .linkBtn{color:var(--amber-strong);font-weight:800;text-decoration:underline;padding:6px 2px}.landSection{max-width:1120px;margin:0 auto;padding:22px 16px 4px}.landSection h2{font-family:var(--font-display);font-weight:700;font-size:26px;text-transform:uppercase;letter-spacing:1px;margin:0 0 12px;color:var(--ink)}.landSteps,.landTrust{list-style:none;margin:0;padding:0;display:grid;gap:10px}.landStep,.landTrust li{display:flex;gap:14px;align-items:flex-start;padding:14px;border-radius:18px;background:var(--surface);border:1px solid var(--surface-line);box-shadow:var(--shadow-card)}.landStepIcon,.landTrustIcon{flex:none;display:grid;place-items:center;width:52px;height:52px;border-radius:16px;background:var(--highlight-bg);font-size:28px}.landStep h3,.landTrust h3{margin:2px 0 4px;font-size:17px;line-height:1.25;color:var(--ink)}.landStep p,.landTrust p{margin:0;font-size:15px;color:var(--ink-2)}.landStepNum{display:inline-grid;place-items:center;width:22px;height:22px;margin-right:8px;border-radius:50%;background:var(--ink);color:#fff;font-size:12px;vertical-align:2px}.landEnd{padding-top:6px}body[data-shell=landing] .legalFoot{max-width:1120px;margin:22px auto 0;padding:0 16px}.mHeroLang.loginBack{left:0;display:flex;align-items:center;justify-content:space-between}body[data-view=login] .mHero p{align-self:center;color:var(--ink-2);font-weight:600;background:#f6f0e2db;border-radius:12px;padding:6px 12px}.loginInvite{margin:0 0 12px;padding:10px 12px;border-radius:12px;background:var(--highlight-bg);border:1px solid var(--highlight-line);color:var(--amber-strong);font-weight:700;font-size:15px}.codeLink{word-break:break-all;font-weight:700}}@media all{.modList .modRow{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:8px}.modRow>div{flex:1 1 260px;min-width:0}.modRow small{display:block;color:var(--muted);margin-top:2px}.modActions{display:flex;flex-wrap:wrap;gap:4px 14px;align-items:center}.modReasons{margin:6px 0 0;padding-left:18px;font-size:14px;color:var(--ink-2)}.modList .modReasons li{display:list-item;padding:1px 0;margin:0;background:none;border:0;box-shadow:none;min-height:0}.linkBtn.adminAct{color:var(--amber-strong);font-weight:800}.linkBtn.adminAct.danger{color:#b3261e}}@media all{.discList{list-style:none;margin:10px 0 14px;padding:0;display:grid;gap:8px}.discMsg{padding:10px 12px;border-radius:14px;background:var(--surface);border:1px solid var(--surface-line)}.discMsg.mine{background:var(--highlight-bg);border-color:var(--highlight-line)}.discHead{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 8px}.discHead small{color:var(--muted)}.discHead .discDel{margin-left:auto;font-size:13px}.discMsg p{margin:4px 0 0;white-space:pre-wrap;overflow-wrap:anywhere;color:var(--ink)}.discBadge{display:inline-block;padding:1px 8px;border-radius:999px;background:var(--tab-active-bg);color:var(--amber-strong);font-size:12px;font-weight:800}.discForm textarea,#fbText{min-height:90px;resize:vertical;font:inherit}.fbText{margin:6px 0 0;white-space:pre-wrap;overflow-wrap:anywhere}.landFree{display:flex;gap:16px;align-items:center;padding:18px 20px;border-radius:var(--r-card);background:var(--highlight-bg);border:2px solid var(--action);box-shadow:var(--shadow-card)}.landFree>span{flex:none;display:grid;place-items:center;width:60px;height:60px;border-radius:18px;background:var(--action);font-size:32px}.landFree h2{margin:0 0 4px;text-transform:none;letter-spacing:0;font:700 28px/1.1 var(--font-display);color:var(--ink)}.landFree p{margin:0;font-size:16px;line-height:1.45;color:var(--ink)}.landBeta{margin:0;padding:14px 16px;border-radius:16px;background:var(--highlight-bg);border:1px solid var(--highlight-line);color:var(--ink-2);font-size:15px;line-height:1.45}}@media all{.mNav.mNav4{grid-template-columns:repeat(4,minmax(0,1fr))}.mNav .mNavCreate{color:var(--amber-strong);font-weight:800}.mNavCam{display:grid;place-items:center;width:34px;height:34px;border-radius:12px;background:var(--action);color:var(--action-ink)}.mNavCam svg{width:20px;height:20px}.mNav .mNavCreate span:last-child{font-size:11px;line-height:1.1;text-align:center}.createBtn{display:flex;align-items:center;gap:14px;width:100%;margin:0 0 16px;padding:16px 18px;border:0;border-radius:var(--r-card);cursor:pointer;background:var(--action);color:var(--action-ink);text-align:left;font:inherit;box-shadow:var(--shadow-card);position:relative;z-index:1}.createBtn:hover{background:var(--action-strong)}.createBtn:focus-visible{outline:3px solid var(--amber-strong);outline-offset:2px}.createBtn svg{width:30px;height:30px;flex:none}.createBtn>span{display:flex;flex-direction:column;gap:2px}.createBtn b{font-size:19px;font-weight:800}.createBtn small{font-size:14px;line-height:1.35;color:var(--action-ink)}.homeCreate{margin:18px 0 6px}.createStep{display:inline-block;margin:0 0 8px;padding:3px 10px;border-radius:999px;background:var(--tab-active-bg);color:var(--amber-strong);font-size:13px;font-weight:800}.targetList{display:flex;flex-direction:column;gap:10px;margin:12px 0}.targetCard{display:flex;align-items:center;gap:14px;width:100%;min-height:72px;padding:12px 14px;border-radius:18px;cursor:pointer;text-align:left;font:inherit;background:var(--card-bg);border:1px solid var(--surface-line);color:var(--ink);box-shadow:var(--shadow-card)}.targetCard:hover{border-color:var(--action)}.targetCard:focus-visible{outline:3px solid var(--amber-strong);outline-offset:2px}.targetCard>span:nth-child(2){flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.targetCard b{font-size:18px}.targetCard small,.targetBanner small{color:var(--muted);font-size:13px}.targetCard>svg{color:var(--amber-strong);flex:none}.targetAvatars{display:flex;flex:none;font-size:30px}.targetAvatars img{width:44px;height:44px;border-radius:12px;object-fit:cover;border:2px solid var(--surface)}.targetAvatars img+img{margin-left:-14px}.targetBanner{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin:4px 0 6px;padding:14px;border-radius:18px;background:var(--highlight-bg);border:2px solid var(--highlight-line);color:var(--ink)}.targetBanner>div{flex:1;min-width:160px;display:flex;flex-direction:column;gap:2px}.targetBanner b{font-size:19px}.targetRecall{margin:4px 0 0;font-weight:800;color:var(--ink)}}@media all{body[data-shell=forge] .btn.dangerBtn{background:#9a3412;color:#fff;border-color:#9a3412}body[data-shell=forge] .btn.dangerBtn:disabled{opacity:.6}.deleteList{margin:0;padding-left:20px;color:var(--ink);line-height:1.5}.landBye{background:var(--ok-bg);border:1px solid var(--ok);color:var(--ok-ink)}}@media all{.stars{display:flex;gap:6px;justify-content:center;margin:6px 0 0}.star{width:52px;height:52px;border:0;background:none;cursor:pointer;font-size:42px;line-height:1;color:#d9cdb5;padding:0}.star.on{color:#c77a0a}.star:focus-visible{outline:3px solid var(--amber-strong);outline-offset:2px;border-radius:12px}.starsHint{text-align:center;margin:0;font-weight:800;color:var(--ink);min-height:1.4em}.starsInline{color:var(--amber-strong);letter-spacing:1px}.doubtCall{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-top:8px;padding:8px 10px;border-radius:12px;background:#fbe7c2;color:var(--ink)}.doubtDone{display:block;margin-top:6px;color:#1d7a48;font-weight:700}.dqPanel{display:flex;flex-direction:column;gap:12px}.dqSteps{list-style:none;display:flex;gap:6px;margin:0;padding:0}.dqSteps li{flex:1;height:6px;border-radius:999px;background:#efe6d3}.dqSteps li.done{background:#e8a33b}.dqSteps li.on{background:#6b3fc2}.dqKicker{margin:4px 0 0;font-size:13px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:#6b3fc2}.dqQ{margin:0;font-size:20px;line-height:1.35}.dqOpts{display:flex;flex-direction:column;gap:8px}.dqOpt{display:flex;align-items:center;gap:12px;min-height:52px;padding:10px 14px;border-radius:14px;border:2px solid #E4DCCD;background:#fffcf5;cursor:pointer;font-weight:700}.dqOpt input{position:absolute;opacity:0;pointer-events:none}.dqOpt small{font-weight:600;color:var(--muted)}.dqOpt.on{border-color:#6b3fc2;background:#f1ebfb}.dqOpt:focus-within{outline:3px solid #6B3FC2;outline-offset:2px}.dqNum{flex:0 0 28px;height:28px;border-radius:8px;display:grid;place-items:center;background:#efe6d3;font-weight:800;font-size:14px}.dqOpt.on .dqNum{background:#6b3fc2;color:#fff}.dqOther{margin:-2px 0 2px 40px;width:calc(100% - 40px)}.dqSummary{list-style:none;margin:0;padding:0;display:flex;flex-direction:column}.dqSummary li{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:4px 12px;padding:10px 0;border-top:1px solid #EFE6D3}.dqSummary li:first-child{border-top:0}.dqSummary li span{color:var(--muted);font-size:14px;grid-column:1}.dqSummary li b{grid-column:1;overflow-wrap:anywhere}.dqSummary li .linkBtn{grid-column:2;grid-row:1 / span 2;align-self:center}.gStars{display:inline-block;font-size:20px;letter-spacing:2px;line-height:1;background:linear-gradient(90deg,#E8A33B var(--p),#D9CFBC var(--p));-webkit-background-clip:text;background-clip:text;color:transparent}.gStars.small{font-size:14px;letter-spacing:1px;vertical-align:-1px}.gSummary{display:grid;grid-template-columns:auto minmax(0,1fr);gap:18px 24px;align-items:center}.gAvg{display:flex;flex-direction:column;align-items:center;gap:4px;min-width:96px}.gAvg b{font-size:44px;line-height:1;font-weight:800;color:var(--ink)}.gAvg small{color:var(--muted)}.gBars{display:flex;flex-direction:column;gap:4px;min-width:0;max-width:560px}.gBarRow{display:grid;grid-template-columns:14px minmax(0,1fr) 28px;gap:8px;align-items:center;width:100%;padding:3px 6px;border-radius:8px;border:0;background:none;font:inherit;color:var(--ink);text-align:left}button.gBarRow{cursor:pointer}button.gBarRow:hover,.gBarRow.on{background:#fbe7c2}.gBarN{font-weight:800;font-size:13px}.gBarC{font-size:13px;color:var(--muted);text-align:right;font-variant-numeric:tabular-nums}.gBar{height:10px;border-radius:999px;background:#efe6d3;overflow:hidden}.gBar span{display:block;height:100%;border-radius:999px;background:#e8a33b}.gTools{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:12px;margin-bottom:12px}.gChips{display:flex;flex-wrap:wrap;gap:6px}.gChips .pill{min-height:36px;padding:0 12px;border-radius:999px;border:1px solid #E4DCCD;background:#fffcf5;color:var(--ink);font:800 13px Nunito,system-ui,sans-serif;cursor:pointer}.gChips .pill.on{background:#f2a93b;border-color:#f2a93b}.gSort{display:flex;flex-direction:column;gap:4px;font-size:13px;font-weight:800}.gSort .field{min-height:38px;padding:0 10px}.gList{list-style:none;margin:0;padding:0;display:flex;flex-direction:column}.gReview{padding:14px 0;border-top:1px solid #EFE6D3}.gReview:first-child{border-top:0;padding-top:4px}.gHead{display:grid;grid-template-columns:40px minmax(0,1fr) auto;gap:10px;align-items:center}.gHead b{display:block}.gHead small{color:var(--muted);font-size:13px}.gInitial{width:40px;height:40px;border-radius:50%;background:#6b3fc2;color:#fff;display:grid;place-items:center;font-weight:800;font-size:17px}.gReview .fbText{margin:8px 0 0 50px}.gReview .formText.small{margin:6px 0 0 50px}@media(max-width:380px){.gSummary{grid-template-columns:1fr}}}@media all{.parentLock{display:grid;place-items:center;font-size:44px}.parentCodeCard .linkBtn{display:block;margin:6px auto 0}.homeTip{margin:14px 0 0;text-align:center}.parentCodePanel .stackForm{margin-top:8px}}@media all{.photoPick{display:flex;flex-wrap:wrap;gap:10px}.photoPick .btn{flex:1 1 180px}}.flagBtn{display:inline-flex;align-items:center;gap:6px;align-self:flex-start;margin:6px 0 0;padding:6px 12px;border-radius:999px;border:1px solid var(--m-line,#E4D9BF);background:var(--surface,#FFFCF5);color:var(--muted,#565a78);font:700 14px var(--font-body);cursor:pointer}.flagBtn:disabled{cursor:default;opacity:.85;color:#1d7a48}body[data-view=study] .stage>.flagBtn{align-self:center}.flagSheet .mFicheSheetPanel{display:flex;flex-direction:column;gap:12px}.flagChoices{display:flex;flex-direction:column;gap:10px}.flagChoice{text-align:left;padding:14px 16px;border-radius:16px;border:2px solid var(--m-line,#E4D9BF);background:var(--surface,#FFFCF5);color:var(--ink,#1E2246);font:800 17px var(--font-body);cursor:pointer}.flagChoice.on{border-color:#a35a00;background:#fff1d6}.flagNote{display:flex;flex-direction:column;gap:6px;font-weight:700;font-size:15px}.flagSheet .actions{display:flex;gap:10px;justify-content:flex-end;flex-wrap:wrap}.flagNotice{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px}.flagCard{display:flex;flex-direction:column;gap:8px}.flagHead{display:flex;justify-content:space-between;gap:10px;color:var(--muted,#565a78)}.flagHead b{color:var(--ink,#1E2246);font-size:17px}.flagWhere{margin:0;color:var(--muted,#565a78);font-size:14.5px}.flagText{margin:0;padding:10px 14px;border-left:4px solid #A35A00;background:#fff7e8;border-radius:0 12px 12px 0;font-weight:700}.flagReason{display:inline-block;padding:3px 10px;border-radius:999px;background:#ece4fa;color:#3f2a8c;font-weight:800;font-size:14px}.flagReason.err{background:#fde3e1;color:#9b1c14}.flagChildNote{margin:0;font-style:italic}.flagCard .actions{display:flex;flex-wrap:wrap;gap:8px}.genBadge.flag{background:#fff1d6;color:#8a5a10}.offlineBar{position:relative;z-index:5;margin:calc(8px + env(safe-area-inset-top,0px)) 16px 0;padding:7px 14px;border-radius:14px;background:#1e2246;color:#fffcf5;font:700 13.5px/1.35 var(--font-body);text-align:center}.fixCat{display:flex;flex-direction:column;gap:8px}.fixCat h3{margin:0 0 2px;font-size:18px}.fixItem{display:flex;flex-direction:column;gap:2px;text-align:left;padding:10px 14px;border-radius:14px;border:1px solid var(--m-line,#E4D9BF);background:var(--surface,#FFFCF5);color:var(--ink,#1E2246);font:600 15px/1.4 var(--font-body);cursor:pointer}.fixItem small{color:#8a5a10;font-weight:800;font-size:12.5px;text-transform:uppercase;letter-spacing:.04em}.fixItem:hover,.fixItem:focus-visible{border-color:#a35a00}.fixTarget{padding:10px 14px;border-left:4px solid #A35A00;background:#fff7e8;border-radius:0 12px 12px 0}.fixTarget small{display:block;color:#8a5a10;font-weight:800;margin-bottom:4px}.fixTarget ul{margin:6px 0 0;padding-left:20px}.fixDiff{display:flex;flex-direction:column;gap:2px;margin-top:4px;font-size:14px}@media(max-width:768px){.dk,.dTop{display:none!important}}.dCols,.dMain,.dSide,.dSec,.dPrompt{display:contents}@media(min-width:769px){:root{--container:1120px;--gutter-desk:40px;--gap-desk:20px;--gap-compact:14px;--topbar-h:72px;--banner-h:220px;--banner-h-compact:112px}.mk{display:none!important}.dTop{position:fixed;top:0;left:0;right:0;z-index:50;height:var(--topbar-h);padding:0 32px;display:flex;align-items:center;gap:24px;background:#fffcf5f0;border-bottom:1px solid #E8DCC4;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);color:#1e2246;font-family:Nunito,system-ui,sans-serif}.dTop[hidden]{display:none}body[data-top=access] .dTop{background:none;border:0;backdrop-filter:none;-webkit-backdrop-filter:none;position:absolute}.dBrand{display:flex;align-items:center;gap:10px;min-height:44px;padding:0;background:none;border:0;font-family:Barlow Condensed,Arial Narrow,sans-serif;font-weight:700;font-size:19px;letter-spacing:2px;text-transform:uppercase;color:#1e2246;white-space:nowrap;cursor:pointer}span.dBrand{cursor:default}.dTabs{flex:1;display:flex;justify-content:center;gap:6px;min-width:0}.dTab{display:flex;align-items:center;gap:8px;height:44px;padding:0 16px;border-radius:999px;background:none;border:0;color:#4a4658;font:700 15px Nunito,system-ui,sans-serif;white-space:nowrap;cursor:pointer}.dTab:hover{background:#f4ecdc;color:#1e2246}.dTab.on{background:#fbe6c2;color:#8a4b0b;font-weight:800}.dTab:disabled{opacity:.4;cursor:default;background:none}.dTab svg{width:20px;height:20px}.dTab .genCount{font-size:11px}.dCreate{display:flex;align-items:center;gap:8px;height:44px;padding:0 18px;margin-left:8px;border-radius:999px;border:0;cursor:pointer;background:var(--action);color:var(--action-ink);font:800 15px var(--font-body);white-space:nowrap}.dCreate:hover,.dCreate.on{background:var(--action-strong)}.dCreate:focus-visible{outline:3px solid var(--amber-strong);outline-offset:2px}.dCreate svg{width:20px;height:20px}.dRight{display:flex;align-items:center;gap:10px;margin-left:auto}.dTabs+.dRight{margin-left:0}.dWho{font-size:14px;font-weight:700;color:#615e6e;max-width:260px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dSoft{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:0 14px;border-radius:12px;background:#fff;border:1px solid #E2D4BA;color:#1e2246;font:700 14px Nunito,system-ui,sans-serif;white-space:nowrap;cursor:pointer}.dTop .mIconBtn{border-radius:12px}.dTop .langSwitch{display:inline-flex;gap:6px}.dTop .langSwitch .pill{min-width:44px;min-height:36px;justify-content:center;border-radius:999px;border:1px solid #E2D4BA;background:#fff;color:#1e2246;font-weight:800;font-size:13px}.dTop .langSwitch .pill.on{background:#f2a33a;border-color:#f2a33a;color:#2a1a08}.dTop .mMenuPanel .langSwitch .pill{background:var(--field-bg,#F7F2E9);color:#1e2246;border-color:#e4dccd}.dTop .mMenuPanel .langSwitch .pill.on{background:#f2a33a;border-color:#f2a33a;color:#2a1a08}.dTop button:focus-visible,.dTop summary:focus-visible{outline:3px solid #8A4B0B;outline-offset:2px}body[data-top] .mHeadTop,body[data-top] .mNav{display:none!important}body[data-top=nav] main{padding-top:var(--topbar-h)!important}body[data-shell] main{max-width:var(--container);margin:0 auto;padding-left:var(--gutter-desk);padding-right:var(--gutter-desk);padding-bottom:56px;gap:var(--gap-desk)}body[data-shell=forge]{--hero-h:calc(var(--topbar-h) + var(--banner-h))}body[data-shell=forge] #pageBg{background:var(--bg) url(/img/forge-claire.jpg) 70% 58% / cover no-repeat}body[data-shell=forge] #pageBg:after{background:var(--banner-fade-desktop)!important}body[data-top=nav] .mHead{min-height:var(--banner-h);margin:0;padding:0 0 28px;justify-content:flex-end;gap:12px}body[data-top=nav] .mHeadTitle{padding:0}body[data-top=nav] .mHeadTitle h1{font-size:56px}body[data-top=nav] .mKicker{font-size:14px;margin-bottom:6px}body[data-view=lesson],body[data-view=gallery],body[data-view=parent],body[data-view=reportForm],body[data-view=childFlags]{--banner-h:var(--banner-h-compact)}body[data-top=access] #pageBg{position:fixed;inset:0;height:auto;background:var(--bg) url(/img/forge-claire.jpg) 62% 50% / cover no-repeat}body[data-top=access] #pageBg:after{background:linear-gradient(90deg,#f6f0e2f2,#f6f0e2cc 38%,#f6f0e233 70%,#f6f0e273)!important}body[data-top=access] main{position:relative;max-width:1200px;min-height:100vh;padding:96px 56px 56px;display:flex;flex-direction:column;align-items:flex-end;justify-content:center;gap:16px}body[data-top=access] main>*{width:440px!important;max-width:100%!important}body[data-top=access] .mHero,body[data-top=access] .mHeroTitle{position:absolute;left:56px;top:50%;transform:translateY(-50%);width:calc(100% - 616px);min-height:0;padding:0;text-align:left;pointer-events:none}body[data-top=access] .mHero h1,body[data-top=access] .mHeroTitle h1,body[data-top=access] .mHeroTitle.center h1{font-size:72px;line-height:.98;text-align:left}body[data-top=access] .mHeroTitle h1{text-transform:none}body[data-top=access] .mHero p,body[data-top=access] .mHeroTitle p{font-size:18px;max-width:520px}body[data-top=access] .mHeroLang,body[data-top=access] .mHead{display:none}body[data-view=code] main{align-items:center}body[data-top=access] .profileGrid{grid-template-columns:repeat(2,minmax(0,1fr))}body[data-top=access] .profileBtn{padding:14px 14px 16px}body[data-top=access] .profileBtn img{width:100%;max-width:150px}body[data-top=access] main>.loginFoot,body[data-top=access] main>.foot{text-align:center}body[data-top=nav] main>.notice,body[data-top=nav] main>#installPanel{margin:0}@media(min-width:1024px){.dCols{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr);gap:var(--gap-desk);align-items:start}.dMain,.dSide{display:flex;flex-direction:column;gap:var(--gap-desk);min-width:0}.dMain{grid-column:1;grid-row:1}.dSide{grid-column:2;grid-row:1}body[data-view=family] .dMain>.panel:has(.groupCard){display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}body[data-view=family] .dMain>.panel:has(.groupCard)>:not(.groupCard){grid-column:1 / -1}body[data-view=family] .formGrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}body[data-view=family] .formGrid>:only-child{grid-column:1 / -1}body[data-view=classes] main,body[data-view=admin] main{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}body[data-view=classes] main>:not(.panel),body[data-view=admin] main>:not(.panel){grid-column:1 / -1}body[data-view=parent] .parentGrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--gap-desk);align-items:start}body[data-view=parent] .parentDetail{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 24px;padding:20px 24px}body[data-view=parent] .parentDetail>:not(.dSec){grid-column:1 / -1}body[data-view=parent] .parentDetail .dSec{display:flex;flex-direction:column;gap:10px;min-width:0}body[data-view=parent] .kpiGrid{grid-template-columns:repeat(4,minmax(0,1fr))}}body[data-view=childForm] main>.panel,body[data-view=photoForm] main>.panel,body[data-view=reportForm] main>.panel,body[data-view=childFlags] main>.panel,body[data-view=childForm] main>form,body[data-view=photoForm] main>form,body[data-view=reportForm] main>form{max-width:720px}body[data-view=dashboard] .mHead.kid{min-height:0;padding:0}body[data-view=dashboard] .mHead.kid:not(:has(.mParentBanner)){display:none}body[data-view=dashboard] .mKid{min-height:var(--banner-h);margin:0;padding:0 0 24px;align-items:flex-end;gap:24px}body[data-view=dashboard] .mHead.kid:has(.mParentBanner)+.mKid{min-height:0}body[data-view=dashboard] .mKid img{width:130px;height:130px;border-radius:26px;box-shadow:0 0 40px #f2a33a59}body[data-view=dashboard] .mKid h1{font-size:56px}body[data-view=dashboard] .mKid>div{padding-bottom:12px}.dCols.dHalf{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}@media(min-width:1024px){body[data-view=dashboard] .mLevel{flex-direction:column;align-items:stretch;padding:16px}body[data-view=dashboard] .mLevel .gradeImg{width:100%;height:auto;aspect-ratio:1;border-radius:18px;border:3px solid rgba(242,163,58,.6)}body[data-view=dashboard] .mMission{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:6px 20px}body[data-view=dashboard] .mMission>.mRow{grid-column:1}body[data-view=dashboard] .mMission>div:not(.mRow){grid-column:1}body[data-view=dashboard] .mMission>.btn{grid-column:2;grid-row:1 / span 2;width:auto;min-width:170px;padding:0 28px}.mLessons{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.mLessons .mLine{flex-direction:column;align-items:stretch;justify-content:space-between;gap:14px;min-height:130px}.mLessons .mLine>.mBar{width:100%}}body[data-view=lesson] .mHead.lessonHead{min-height:var(--banner-h);gap:8px;padding-top:24px}body[data-view=lesson] .mLessonTitle{justify-content:flex-start;align-items:center;gap:20px}body[data-view=lesson] .mLessonTitle>div:first-child{flex:0 1 auto}body[data-view=lesson] .mLessonTitle h1{font-size:40px}body[data-view=lesson] .mDone{margin-top:0}body[data-view=lesson] .dSide>.mH2:first-child,body[data-view=dashboard] .dMain>.mH2:first-child{margin-top:0}body[data-view=lesson] .mList{gap:8px}body[data-view=lesson] .mList .mLine{padding:12px 16px}body[data-view=lesson] main{gap:var(--gap-compact)}body[data-view=gallery] .mHead{min-height:var(--banner-h)}body[data-view=gallery] .mHeadTitle h1{font-size:40px}body[data-view=gallery] main{gap:var(--gap-compact)}body[data-view=gallery] .galleryGrid{grid-template-columns:repeat(5,minmax(0,1fr))}body[data-view=gallery] .gradeHero>.gradeImg{width:72px;height:72px}body[data-view=result] .mHead{display:none}body[data-view=result] .result-card{padding-top:120px}@media(min-width:1024px){body[data-view=result] .result-card .dCols{align-items:start}body[data-view=result] .result-card .dMain,body[data-view=result] .result-card .dSide{gap:14px}body[data-view=result] .result-card .dSide{text-align:left}}body[data-shell=forge][data-view=study] #pageBg,body[data-shell=forge][data-view=result] #pageBg{position:fixed;inset:0;height:auto}body[data-shell=forge][data-view=study] #pageBg:after,body[data-view=result] #pageBg:after{background:#f6f0e273!important}body[data-shell=forge] .studyRecap{max-width:620px;width:100%;margin:0 auto;padding-top:48px}body[data-shell=forge] .studyRecap>.section-title{margin-bottom:0}.levelUpCard{max-width:620px}.levelUpImg{width:300px;height:300px;display:block;margin-left:auto;margin-right:auto}body[data-shell=parch] main{padding-top:calc(var(--topbar-h) + 32px);padding-bottom:140px}.mStudyTop,.mFicheHead{position:fixed;top:0;left:0;right:0;z-index:50;height:var(--topbar-h);margin:0;padding:0 32px!important;gap:20px;background:#fff;border-bottom:1px solid var(--m-line);align-items:center!important}body[data-shell=parch] .mStudyTop .mIconBtn.light,body[data-shell=parch] .mFicheHead .mIconBtn.light{width:auto;height:44px;border-radius:12px;padding:0 16px;gap:8px;border:1px solid var(--m-line);box-shadow:none;font:800 15px var(--font-body)}.dBarTitle{display:flex!important;flex-direction:column;gap:2px;min-width:220px;max-width:340px}.dBarTitle>span{font-size:12px;font-weight:800;letter-spacing:1.2px;text-transform:uppercase;color:#a35a00;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dBarTitle b{font-size:16px;font-weight:800;color:var(--parch-fg);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mStudyTop .mBar{flex:1 1 auto;max-width:420px}.mStudyTop .mHome{margin-left:auto}.mFicheHead>div{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.mFicheHead .mEyebrow{font-size:12px;letter-spacing:1.2px;color:#a35a00}.mFicheHead h1{font:800 16px var(--font-body)!important;margin:0!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dBrandLight{display:flex!important;align-items:center;gap:10px;font-family:var(--font-display);font-weight:700;font-size:19px;letter-spacing:2px;text-transform:uppercase;color:var(--parch-fg);white-space:nowrap}body[data-view=quiz] #validateBtn,body[data-view=study] .stage>.btn,body[data-view=study] .stage>.actions,.mFicheNav{left:auto!important;right:max(40px,calc((100vw - var(--container)) / 2 + var(--gutter-desk)))!important;bottom:16px!important}body[data-view=quiz] #validateBtn,body[data-view=study] .stage>.btn{width:auto;min-width:220px;padding:0 28px}body[data-view=study] .stage>.actions .btn,.mFicheNav .btn{flex:0 0 auto!important;min-width:220px;padding:0 28px!important}.mFicheNav .prev{min-width:200px}body[data-view=quiz]:has(#validateBtn:not(:disabled)) main:after,body[data-shell=parch][data-view=study] main:after,body[data-view=fiche] main:after{content:"";position:fixed;left:0;right:0;bottom:0;height:88px;z-index:25;pointer-events:none;background:#fff;border-top:1px solid var(--m-line)}body[data-view=fiche]:has(.mFicheNav .prev[hidden]):has(.mFicheNav .next:empty) main:after{display:none}body[data-view=quiz] .feedback.show{left:max(40px,calc(50% - 390px));right:max(40px,calc(50% - 390px));padding:20px 32px 28px}.mSheetActions{justify-content:flex-end}.mSheetActions .btn{flex:0 0 auto!important;min-width:200px}.mFicheSheet{align-items:center;justify-content:center}.mFicheSheetPanel{max-width:780px;border-radius:28px;max-height:80vh}@media(min-width:1024px){body[data-view=quiz] .stage,body[data-view=study] .stage{display:grid;grid-template-columns:var(--exo-prompt-w,340px) minmax(0,680px);column-gap:48px;row-gap:0;align-items:start}body[data-view=quiz] .stage>*,body[data-view=study] .stage>*{grid-column:2;margin-bottom:16px}body[data-view=quiz] .stage>.dPrompt{display:flex;flex-direction:column;gap:12px;grid-column:1;grid-row:1 / span 40;margin:0}body[data-view=quiz] .qtext{font-size:28px;line-height:1.2;margin:0}body[data-view=study] .stage>.chip{grid-column:1;grid-row:1 / span 40;justify-self:start}body[data-view=quiz] .stage>.feedback,body[data-view=quiz] .stage>.foot-row,body[data-view=quiz] .stage>.hint:empty{margin:0}body[data-view=study] .flashcard{min-height:420px}.mFlipHint{position:absolute}body[data-view=fiche] main{display:grid;grid-template-columns:240px minmax(0,760px);column-gap:40px;row-gap:18px;align-items:start;justify-content:center}body[data-view=fiche] main>*{grid-column:2}body[data-view=fiche] .mTabs{grid-column:1;grid-row:1 / span 8;flex-direction:column;overflow:visible;margin:0;padding:0;gap:6px;position:sticky;top:calc(var(--topbar-h) + 24px)}body[data-view=fiche] .mTabs:before{content:attr(aria-label);font-size:12px;font-weight:800;letter-spacing:1.2px;text-transform:uppercase;color:#6b3fc2;margin-bottom:6px}body[data-view=fiche] .mTab{min-height:44px;border-radius:12px;text-align:left;white-space:normal;padding:8px 14px}body[data-view=fiche] .brickFiche{max-width:880px}}}@media(min-width:769px)and (max-width:1023px){:root{--container:768px;--gutter-desk:24px}.dTop{padding:0 24px;gap:12px}.dTab{padding:0 12px}.dTab>span{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.dWho,.dSoft>span{display:none}body[data-top=access] main{align-items:center;padding:96px 24px 56px}body[data-top=access] .mHero,body[data-top=access] .mHeroTitle{position:static;transform:none;width:440px!important;text-align:left}body[data-top=access] .mHero h1,body[data-top=access] .mHeroTitle h1,body[data-top=access] .mHeroTitle.center h1{font-size:56px}}@media(min-width:1024px)and (max-width:1279px){:root{--gutter-desk:24px}.dWho{display:none}}@media(min-width:769px){.legalPage{padding:calc(var(--topbar-h) + 32px) 40px 48px}.legalPage .mFicheHead .mIconBtn.light{width:auto;height:44px;border-radius:12px;padding:0 16px;gap:8px;border:1px solid #E4DCCD;box-shadow:none;font:800 15px Nunito,system-ui,sans-serif}.legalBody{padding:28px 32px}.dqPanel{max-width:760px;margin-left:auto;margin-right:auto;width:100%}.tutoPage:not(.tutoDesk) .tutoStep{display:grid;grid-template-columns:minmax(0,1fr) 260px;gap:28px;align-items:start}}@media(min-width:769px){.landTop{padding:12px 32px}.landTop .mBrand{font-size:17px}.landHero{flex-direction:row-reverse;align-items:center;gap:40px;padding:40px 32px 16px}.landMedia{flex:1 1 55%}.landMedia.hasVideo{flex:0 1 46%;margin:0}.landPitch{flex:1 1 45%}.landPitch h1{font-size:46px}.landCta{width:auto;justify-content:flex-start;display:inline-flex}.landAlready{text-align:left}.landSection{padding:32px 32px 4px}.landSteps,.landTrust{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.landStep{flex-direction:column}.landEnd{text-align:center}body[data-shell=landing] .legalFoot{padding:0 32px}}@media(min-width:1024px){.landSteps{grid-template-columns:repeat(4,minmax(0,1fr))}.landPitch h1{font-size:54px}}@media(min-width:769px){.offlineBar{position:fixed;left:24px;bottom:24px;margin:0;max-width:360px;z-index:60;text-align:left;box-shadow:0 6px 18px #1e224640}}@media(min-width:769px){body[data-view=study] .stage>.flagBtn{justify-self:center;align-self:center;width:auto}}
