@charset "UTF-8";
/* CapClasse Aventure — styles. Identité Studio pastel ; tout est réglable depuis « Mon confort ». */
:root{--cca-size:1;--cca-ls:0em;--cca-ws:0em;--cca-lh:1.6;--cca-font:'Nunito','Trebuchet MS',system-ui,sans-serif}
body.cca{--bg1:#bfe9ff;--bg2:#fff8e1;--card:#fff;--ink:#2b2a5c;--soft:#e4eeff;--line:#2b2a5c;--ok:#12915a;--okbg:#d9f7e6;--bad:#c4304c;--badbg:#ffe3e8;--accent:#3d6df2;--sun:#ffc400;
  font-family:var(--cca-font);font-size:calc(18px*var(--cca-size));letter-spacing:var(--cca-ls);word-spacing:var(--cca-ws);line-height:var(--cca-lh);color:var(--ink)}
html[data-contrast=creme] body.kids.cca{--bg1:#fdf6e3;--bg2:#fdf6e3;--soft:#f4ead0;background:#fdf6e3}
html[data-contrast=jaune] body.kids.cca{--bg1:#fff7bf;--bg2:#fff7bf;--soft:#fff0a0;--ink:#1b2a49;background:#fff7bf}
html[data-contrast=bleu] body.kids.cca{--bg1:#e3f2fd;--bg2:#e3f2fd;--soft:#cfe6f9;--ink:#12263f;background:#e3f2fd}
html[data-contrast=fort] body.kids.cca{--bg1:#111;--bg2:#111;--card:#1b1b1b;--ink:#fff;--soft:#262626;--line:#fff;--ok:#7dffb0;--okbg:#0e3b22;--bad:#ff9aa9;--badbg:#4a1620;--accent:#ffd400;background:#111;color:#fff}
html[data-contrast=fort] body.cca .nav{background:#111;border-color:#fff;color:#fff}
body.cca h1,body.cca h2,body.cca h3{font-family:var(--cca-font);color:var(--ink);letter-spacing:var(--cca-ls)}
body.cca a{color:var(--accent)}
.cca-skip{position:absolute;left:-999px;top:0;background:#fff;color:#000;padding:8px 14px;z-index:999}.cca-skip:focus{left:8px;top:8px}
.cca-wrap{max-width:1080px;margin:0 auto;padding:18px 16px 40px}
.cca-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
body.cca :focus-visible{outline:4px solid #ff7a00;outline-offset:3px;border-radius:8px}
html[data-contrast=fort] body.cca :focus-visible{outline-color:#ffd400}
.cca-comfort-btn{font:inherit;cursor:pointer}
/* boutons */
.cca-btn{font:800 1em/1.2 var(--cca-font);display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:48px;padding:10px 20px;border-radius:14px;border:1.5px solid var(--line);background:var(--card);color:var(--ink);cursor:pointer;text-decoration:none;box-shadow:none;transition:transform .12s}
.cca-btn:hover:not(:disabled){transform:translateY(-2px)}.cca-btn:active:not(:disabled){transform:translateY(2px);box-shadow:none}
.cca-btn:disabled{opacity:.45;cursor:not-allowed}.cca-btn[hidden]{display:none}
.cca-btn-main{background:var(--sun);color:#2b2a5c}
html[data-contrast=fort] .cca-btn-main{background:#ffd400;color:#000}
.cca-actions{display:flex;flex-wrap:wrap;gap:12px;margin:14px 0 4px;align-items:center}
.cca-sub{opacity:.85;margin:.2em 0 1em}
/* hub */
.cca-hero{display:grid;grid-template-columns:1fr 240px;gap:20px;align-items:center;background:var(--card);border:1.5px solid var(--line);border-radius:14px;padding:22px 26px;box-shadow:none;margin-bottom:26px}
.cca-hero h1{font-size:clamp(30px,5vw,48px);margin:.1em 0}
.cca-me{font-weight:800;min-height:1.4em}
.cca-hero-art img{width:100%;height:auto;display:block;}
@keyframes advfloat{50%{transform:translateY(-8px)}}
.cca-worlds{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:20px;margin:12px 0 30px}
.cca-world{background:var(--card);border:1.5px solid var(--line);border-radius:14px;padding:16px;box-shadow:none}
.cca-world header{display:flex;gap:12px;align-items:center;margin-bottom:10px}
.cca-world h3{margin:0;font-size:1.3em}.cca-world p{margin:.1em 0 0;font-size:.9em;opacity:.85}
.cca-world-emoji{font-size:2.4em;background:var(--w);border-radius:14px;width:64px;height:64px;display:grid;place-items:center;border:1.5px solid var(--line);flex:none}
.cca-games{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.cca-game{display:grid;grid-template-columns:1fr auto;gap:2px 8px;padding:10px 14px;border:1.5px solid var(--line);border-radius:14px;background:var(--soft);color:var(--ink);text-decoration:none;min-height:56px}
.cca-game:hover{background:var(--sun);color:#2b2a5c}
.cca-game-t{font-weight:800}.cca-game-c{grid-column:1;font-size:.82em;opacity:.85}.cca-game-s{grid-row:1/3;grid-column:2;align-self:center;font-size:1.1em;white-space:nowrap}
.cca-missions{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:14px}
.cca-mission{display:flex;gap:12px;align-items:center;padding:14px 16px;border:1.5px solid var(--line);border-radius:14px;background:var(--card);color:var(--ink);text-decoration:none;box-shadow:none}
.cca-mission small{display:block;font-weight:400;opacity:.85}.cca-mission-e{font-size:2em}
.cca-mission.locked{opacity:.7;border-style:dashed}.cca-lock{margin-left:auto;font-size:.85em;white-space:nowrap}
.cca-daily,.cca-chest,.cca-note{background:var(--card);border:1.5px solid var(--line);border-radius:14px;padding:12px 18px;margin:16px 0}
.cca-note h2{margin-top:0}
/* page de jeu */
.cca-back{margin:0 0 10px}.cca-preview{background:#ffe08a;color:#000;padding:2px 10px;border-radius:10px;font-weight:800;margin-left:8px}
.cca-card{background:var(--card);border:1.5px solid var(--line);border-radius:14px;padding:20px 22px;box-shadow:none}
.cca-roundtop{display:flex;flex-wrap:wrap;gap:10px;align-items:center;justify-content:space-between;margin-bottom:10px}
.cca-gtitle{font-weight:800;font-size:1.05em}.cca-lv{font-weight:600;opacity:.8}
.cca-dots{display:flex;gap:7px;list-style:none;margin:0;padding:0}.cca-dots li{width:16px;height:16px;border-radius:50%;border:1.5px solid var(--line);background:var(--card)}
.cca-dots li.done{background:var(--ok)}.cca-dots li.now{background:var(--sun)}
.cca-pause{min-height:40px;padding:6px 14px;font-size:.9em}
.cca-prompt{font-size:1.2em;font-weight:700;margin:.4em 0 .8em;outline:none}
.cca-prompt .frac{font-size:1.1em}
.cca-box{margin:10px 0}
.cca-fb{min-height:1.6em;margin:12px 0;border-radius:14px;padding:0}.cca-fb p{margin:.3em 0}
.cca-fb.good{background:var(--okbg);padding:10px 14px;border:1.5px solid var(--ok)}.cca-fb.bad{background:var(--badbg);padding:10px 14px;border:1.5px solid var(--bad)}.cca-fb.soft{background:var(--soft);padding:10px 14px;border:1.5px dashed var(--line)}
.cca-fb-main{font-weight:800}.cca-fb-soft{font-style:italic}
.cca-hints{margin:8px 0;padding-left:1.2em;font-weight:600}
.cca-pauseov{position:absolute;inset:0;background:var(--card);border-radius:14px;display:grid;place-content:center;gap:10px;text-align:center;font-size:1.3em;z-index:5}
.cca-round{position:relative}
.cca-end h1{margin-top:0}.cca-stars{font-size:3em;margin:.1em 0}.cca-stars .off{opacity:.35}
.cca-badge-new{background:var(--soft);border:1.5px solid var(--line);border-radius:14px;padding:8px 12px;font-weight:800}
.cca-up{font-weight:800;color:var(--ok)}.cca-soft{font-style:italic}
.cca-plan{padding-left:1.3em}.cca-plan li{margin:.3em 0}
/* propositions */
.cca-choices{display:flex;flex-wrap:wrap;gap:12px;margin:10px 0}
.cca-opt{font:800 1.15em var(--cca-font);min-height:56px;min-width:84px;padding:10px 20px;border:1.5px solid var(--line);border-radius:14px;background:var(--card);color:var(--ink);cursor:pointer;box-shadow:none;letter-spacing:inherit}
.cca-opt:hover:not(:disabled){background:var(--sun);color:#2b2a5c}
.cca-opt.ok{background:var(--okbg);border-color:var(--ok);color:var(--ink)}.cca-opt.bad{background:var(--badbg);border-color:var(--bad);color:var(--ink);text-decoration:line-through;opacity:.8}
.cca-opt:disabled:not(.ok):not(.bad){opacity:.55}
.cca-mark{font-weight:900}
.cca-words .cca-opt{font-size:1.3em}.cca-big .cca-opt{font-size:1.4em;min-width:130px}
.cca-emojis .cca-opt .em,.em{font-size:1.9em}
.cca-word{font-weight:800}
html[data-syl="1"] .cca-word .s0{color:#c2185b}html[data-syl="1"] .cca-word .s1{color:#1565c0}
html[data-contrast=fort][data-syl="1"] .cca-word .s0{color:#ff8fb1}html[data-contrast=fort][data-syl="1"] .cca-word .s1{color:#8fd0ff}
.wd-clue{display:flex;gap:14px;align-items:center;margin:6px 0 12px}.wd-clue p{margin:0;font-weight:600}.wd-emoji{font-size:3em}.wd-img{border-radius:12px;border:1.5px solid var(--line)}
.my-blanks{font-family:monospace;letter-spacing:.2em}
.sn-son{font-size:1.4em;background:var(--sun);color:#2b2a5c;padding:0 10px;border-radius:10px}
/* tuiles */
.tl-slots{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin:8px 0 14px}
.tl-slot{min-width:64px;min-height:64px;padding:6px 12px;border:1.5px dashed var(--line);border-radius:14px;background:var(--soft);font:800 1.4em var(--cca-font);color:var(--ink);cursor:pointer}
.tl-slot.filled{border-style:solid;background:var(--card)}.tl-slot.good{background:var(--okbg);border-color:var(--ok)}.tl-slot.wrongpos{background:var(--badbg);border-color:var(--bad)}
.tl-eq{font:800 1.6em var(--cca-font)}
.tl-pool{display:flex;flex-wrap:wrap;gap:10px;min-height:70px;padding:10px;border:3px dotted var(--line);border-radius:14px;margin-bottom:6px}
.tl-tile{min-width:56px;min-height:56px;padding:6px 16px;border:1.5px solid var(--line);border-radius:14px;background:var(--sun);color:#2b2a5c;font:800 1.3em var(--cca-font);cursor:grab;box-shadow:none;touch-action:none;user-select:none}
.tl-tile.used{visibility:hidden}.tl-wagon{background:#c8e6ff}.tl-op{background:#e4d6ff}
.tl-slot.filled,.tl-slot{touch-action:none}
.cca-dragging{opacity:.35}.cca-ghost{cursor:grabbing;box-shadow:0 2px 8px rgba(23,32,58,.12)}.cca-over{outline:4px solid #ff7a00!important;background:#fff3b0!important;color:#2b2a5c}
/* syllabes */
.sy-word{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:0;margin:14px 0;font:800 2.6em var(--cca-font)}
.sy-l{padding:0 2px}.sy-cut{width:34px;min-height:64px;border:0;background:transparent;color:#9aa;font:800 .9em var(--cca-font);cursor:pointer;border-radius:8px;position:relative}
.sy-cut:hover{background:var(--soft)}.sy-cut.on{color:var(--accent);background:var(--soft);border:1.5px solid var(--accent)}.sy-cut.good{color:var(--ok);border-color:var(--ok)}.sy-cut.bad{color:var(--bad);border-color:var(--bad);text-decoration:line-through}
html[data-contrast=fort] .sy-cut{color:#999}
/* maths */
.frac{display:inline-flex;flex-direction:column;align-items:center;vertical-align:middle;line-height:1.1;margin:0 .2em;font-weight:800}
.frac .num,.frac .den{padding:0 .25em}.frac .bar{display:block;width:100%;height:3px;background:currentColor;border-radius:2px;margin:2px 0}
.cca-fracs .cca-opt{font-size:1.5em}
.fr-fig,.fm-fig{text-align:center}.fr-svg{max-width:420px;width:100%;height:auto}
.fr-part{fill:#fff;stroke:var(--line);stroke-width:3;cursor:pointer}.fr-part.on{fill:#ff8fb1}.fr-part:focus-visible{stroke:#ff7a00;stroke-width:5;outline:none}
html[data-contrast=fort] .fr-part{fill:#222}html[data-contrast=fort] .fr-part.on{fill:#ffd400}
.fr-count{text-align:center;font-weight:800}
.ln-wrap{position:relative;padding:8px 8px 44px}.ln-range{width:100%;height:44px;accent-color:#3d6df2}
.ln-ticks{position:relative;height:30px;margin:-4px 14px 0}.ln-ticks span{position:absolute;transform:translateX(-50%);font-size:.85em;font-weight:700;border-left:1.5px solid var(--line);padding-top:6px;padding-left:2px;line-height:1}
.ln-out{display:block;text-align:center;font-weight:800;font-size:1.2em}
.tr-path{display:flex;list-style:none;padding:0;margin:0 0 12px;gap:6px;justify-content:center}.tr-path li{width:44px;height:44px;border-radius:50%;border:1.5px solid var(--line);display:grid;place-items:center;background:var(--soft)}.tr-path .here{background:var(--sun)}
.mo-ticket{font-size:1.15em}.mo-tray{min-height:64px;display:flex;flex-wrap:wrap;gap:8px;padding:10px;border:1.5px dashed var(--line);border-radius:14px}.mo-sum{font-weight:800;font-size:1.2em}
.mo-pal{display:flex;flex-wrap:wrap;gap:10px;margin:8px 0}
.mo-den,.mo-chosen{min-width:70px;min-height:64px;padding:6px 12px;font:800 1em var(--cca-font);color:#2b2a5c;border:1.5px solid var(--line);cursor:pointer}
.mo-den.coin,.mo-chosen.coin{border-radius:50%;width:76px;height:76px;background:#ffd86b}.mo-den.bill,.mo-chosen.bill{border-radius:10px;background:#bff0c9;width:110px}
.fm-svg{width:100%;max-width:520px;height:auto;touch-action:manipulation}.fm-grid{stroke:#9bb;stroke-width:1}.fm-rect{fill:rgba(61,109,242,.35);stroke:#3d6df2;stroke-width:4}.fm-lb{font:800 15px sans-serif;fill:var(--ink)}
.fm-ctl{display:flex;flex-wrap:wrap;gap:18px;justify-content:center;margin:8px 0}.fm-stepper{display:flex;align-items:center;gap:8px;font-weight:800}.fm-step{min-width:48px;padding:6px}.fm-info{text-align:center;font-weight:700}
.pb-text{font-size:1.15em;font-weight:700}.pb-pic{display:flex;flex-wrap:wrap;gap:2px;font-size:1.5em;margin:6px 0}.pb-step{margin:12px 0;padding:10px 14px;border:1.5px solid var(--line);border-radius:14px;background:var(--soft)}.pb-step h3{margin:.1em 0 .4em;font-size:1.05em}
/* labyrinthe */
.lb-grid{display:grid;max-width:480px;margin:10px auto;border:1.5px solid var(--line);background:var(--card);touch-action:manipulation}.lb-cell{aspect-ratio:1;display:grid;place-items:center;font-size:1.5em;border:0 solid transparent;cursor:pointer}
.lb-cell.wt{border-top:1.5px solid var(--line)}.lb-cell.wr{border-right:1.5px solid var(--line)}.lb-cell.wb{border-bottom:1.5px solid var(--line)}.lb-cell.wl{border-left:1.5px solid var(--line)}
.lb-cell.here{background:var(--sun)}.lb-cell.path{background:#bdf0cf}
.lb-pad{display:grid;grid-template-columns:repeat(3,64px);grid-template-areas:". up ." "left down right";gap:6px;justify-content:center;margin:10px 0}.lb-0{grid-area:up}.lb-3{grid-area:left}.lb-2{grid-area:down}.lb-1{grid-area:right}.lb-btn{min-width:64px;padding:6px}
.lb-q{font-weight:800;font-size:1.1em}.lb-panel{margin:8px 0}
.lc-text{background:var(--soft);border:1.5px solid var(--line);border-radius:14px;padding:10px 16px;margin-bottom:8px}.lc-s{margin:.4em 0;font-size:1.1em}
/* concentration */
.mm-board{display:grid;gap:10px;max-width:560px;margin:10px auto}
.mm-card{aspect-ratio:1;min-height:64px;border:1.5px solid var(--line);border-radius:14px;background:var(--soft);font:800 1.6em var(--cca-font);color:var(--ink);cursor:pointer;display:grid;place-items:center;position:relative;box-shadow:none;padding:2px}
.mm-card.open{background:var(--card)}.mm-card.matched{background:var(--okbg);border-color:var(--ok)}.mm-card .em{font-size:1.4em}.mm-card .cca-mark{position:absolute;right:6px;top:2px;font-size:.6em}.mm-card .cca-word{font-size:.7em}
.mm-tries{text-align:center;font-weight:700}
.df-wrap,.md-wrap{display:flex;flex-wrap:wrap;gap:24px;justify-content:center}.df-wrap h3,.md-wrap h3{text-align:center;margin:.2em 0;font-size:1em}
.df-grid{display:grid;gap:6px}.df-cell{min-width:68px;min-height:68px;font-size:2em;border:1.5px solid var(--line);border-radius:14px;background:var(--card);cursor:pointer;color:var(--ink);position:relative}.df-cell:disabled{opacity:1;cursor:default}
.df-cell.found{background:var(--okbg);border-color:var(--ok)}.df-cell.no{background:var(--badbg);border-color:var(--bad)}.df-cell .cca-mark{position:absolute;right:4px;top:0;font-size:.5em}.df-count{text-align:center;font-weight:800}
.sq-stage{min-height:110px;display:grid;place-items:center;background:var(--soft);border:1.5px solid var(--line);border-radius:14px;margin:8px 0}.sq-big{font-size:4.5em}.sq-ph{opacity:.7;font-weight:700}
.sq-slots,.sq-pal{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;margin:10px 0}.sq-slot{min-width:62px;min-height:62px;display:grid;place-items:center;border:1.5px dashed var(--line);border-radius:14px;font-size:2em;position:relative}
.sq-slot.filled{border-style:solid;background:var(--card)}.sq-slot.good{background:var(--okbg);border-color:var(--ok)}.sq-slot.wrongpos{background:var(--badbg);border-color:var(--bad)}.sq-slot .cca-mark{position:absolute;right:4px;top:0;font-size:.4em}
.sq-p{min-width:64px;min-height:64px;font-size:2em;border:1.5px solid var(--line);border-radius:14px;background:var(--card);cursor:pointer;box-shadow:none}
.ob-scene{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;padding:14px;background:var(--soft);border:1.5px solid var(--line);border-radius:14px;margin:8px 0}.ob-item{font-size:2.6em;min-width:64px;text-align:center}
.ob-scene.cover .ob-item span{visibility:hidden}.ob-scene.cover{background:repeating-linear-gradient(45deg,var(--soft),var(--soft) 12px,var(--card) 12px,var(--card) 24px)}
.ob-qt{font-weight:800;font-size:1.15em}
.md-grid{display:grid;gap:4px;width:min(260px,70vw)}.md-cell,.mo-c{aspect-ratio:1;border:1.5px solid var(--line);border-radius:8px;background:var(--card);display:grid;place-items:center;font-size:1.3em;color:#fff;font-weight:900;text-shadow:0 0 2px #000;padding:0}.md-cell{cursor:pointer}.md-cell.bad{outline:4px solid var(--bad)}
.md-model.hid{visibility:hidden}.md-pal{display:flex;gap:12px;justify-content:center;margin:10px 0}.md-tool{width:60px;height:60px;border-radius:50%;border:1.5px solid var(--line);font-size:1.6em;color:#fff;font-weight:900;text-shadow:0 0 2px #000;cursor:pointer}.md-tool.sel{outline:5px solid #ff7a00;outline-offset:2px}
.su-strip{display:flex;flex-wrap:wrap;gap:10px;list-style:none;padding:0;justify-content:center;margin:10px 0}.su-strip li{min-width:64px;min-height:64px;display:grid;place-items:center;padding:6px 12px;font:800 1.6em var(--cca-font);border:1.5px solid var(--line);border-radius:14px;background:var(--card)}.su-strip .su-q{background:var(--sun);color:#2b2a5c}
.rg-bins{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px;margin:8px 0}
.rg-bin{min-height:160px;padding:10px;border:1.5px dashed var(--line);border-radius:14px;background:var(--soft);color:var(--ink);font:inherit;text-align:center;cursor:pointer;display:flex;flex-direction:column;align-items:center;gap:6px}
.rg-lab{font-weight:800;font-size:1.15em}.rg-list{list-style:none;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:6px;justify-content:center}.rg-list li{background:var(--okbg);border:2px solid var(--ok);border-radius:10px;padding:2px 10px;font-weight:700}
.rg-pool{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;margin:10px 0;touch-action:none}.rg-chip{min-height:52px;padding:6px 16px;font:800 1.15em var(--cca-font);border:1.5px solid var(--line);border-radius:14px;background:var(--sun);color:#2b2a5c;cursor:grab;touch-action:none;box-shadow:none}
.rg-chip[aria-pressed=true]{outline:5px solid #ff7a00}.rg-chip.shake{animation:advshake .4s}@keyframes advshake{25%{transform:translateX(-6px)}75%{transform:translateX(6px)}}
.cca-foot{text-align:center;opacity:.85;padding:20px 16px;font-size:.85em}
/* dialogue de confort */
.cca-overlay{position:fixed;inset:0;background:rgba(20,20,60,.55);display:grid;place-items:center;z-index:1000;padding:10px}
.cca-dialog{background:var(--card,#fff);color:var(--ink,#2b2a5c);border:1.5px solid var(--line,#2b2a5c);border-radius:14px;padding:20px 24px;max-width:560px;width:100%;max-height:92vh;overflow:auto;font-size:18px}
.cca-dialog fieldset{border:1.5px solid var(--line);border-radius:14px;margin:12px 0;padding:8px 14px}.cca-dialog legend{font-weight:800;padding:0 8px}
.cca-prow{display:grid;grid-template-columns:1fr 1.2fr;gap:8px;align-items:center;margin:8px 0}.cca-prow select,.cca-prow input[type=range]{width:100%;min-height:40px;font:inherit}
.cca-pcheck{grid-template-columns:auto 1fr}.cca-pcheck input{width:26px;height:26px}.cca-pcheck small{display:block;opacity:.8}
#cca-ruler{position:fixed;left:0;right:0;top:40%;height:2.6em;background:rgba(255,235,59,.3);border-top:2px solid rgba(0,0,0,.25);border-bottom:2px solid rgba(0,0,0,.25);pointer-events:none;z-index:900}
/* confort : animations et concentration */
html[data-noanim="1"] *,html[data-noanim="1"] *::before{animation:none!important;transition:none!important;scroll-behavior:auto!important}
@media (prefers-reduced-motion:reduce){body.cca *{animation:none!important;transition:none!important}}
html[data-focus="1"] .cca-deco,html[data-focus="1"] .cca-hero-art,html[data-focus="1"] .cca-world header p,html[data-focus="1"] .cca-daily,html[data-focus="1"] .cca-chest,html[data-focus="1"] .cca-note,html[data-focus="1"] .cca-sub,html[data-focus="1"] .cca-lv{display:none!important}
html[data-focus="1"] body.kids.cca{background:var(--bg1)}html[data-focus="1"] .cca-card,html[data-focus="1"] .cca-world,html[data-focus="1"] .cca-hero{box-shadow:none}
html[data-focus="1"] .cca-stars{font-size:1.6em}
/* petits écrans / tablettes */
@media (max-width:760px){.cca-hero{grid-template-columns:1fr}.cca-hero-art{display:none}.cca-wrap{padding:12px 10px 30px}.cca-card{padding:14px 12px;border-radius:14px}.cca-prow{grid-template-columns:1fr}.sy-word{font-size:2em}.sy-cut{width:28px}}
/* personnage, tableau de bord */
.cca-avatar{display:inline-grid;place-items:center;min-width:56px;height:56px;border-radius:50%;border:1.5px solid var(--line);font-size:1.7em;padding:0 8px;vertical-align:middle}
.cca-avprev{text-align:center;margin:8px 0}.cca-avprev .cca-avatar{font-size:3em;height:96px;min-width:96px}
.cca-avgrp{display:flex;flex-wrap:wrap;gap:8px}.cca-avopt{min-width:52px;min-height:52px;padding:4px 10px;font-size:1.4em}.cca-avopt[aria-checked=true]{background:var(--sun);color:#2b2a5c;outline:4px solid #ff7a00}
.db-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;margin:12px 0}.db-tile{background:var(--card);border:1.5px solid var(--line);border-radius:14px;padding:12px;text-align:center}.db-tile b{display:block;font-size:2em}
.db-table{width:100%;border-collapse:collapse;background:var(--card);border:1.5px solid var(--line);border-radius:14px;overflow:hidden}.db-table th,.db-table td{padding:8px 10px;border-bottom:2px solid var(--soft);text-align:left}.db-table th{background:var(--soft)}
.db-bar{display:flex;align-items:center;gap:10px;margin:6px 0}.db-bar .lab{flex:0 0 38%;font-weight:700}.db-bar .track{flex:1;height:18px;border:1.5px solid var(--line);border-radius:12px;background:var(--card);overflow:hidden}.db-bar .fill{display:block;height:100%;background:var(--ok)}.db-bar .fill.mid{background:#f0a500}.db-bar .fill.low{background:#e8845f}.db-bar .pct{flex:0 0 3.5em;font-weight:800;text-align:right}
.db-spark{display:flex;align-items:flex-end;gap:6px;height:120px;border-bottom:1.5px solid var(--line);padding:0 4px;margin:10px 0}.db-spark span{flex:1;background:var(--accent);border-radius:6px 6px 0 0;min-width:14px;position:relative}
.db-badges{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px;padding:0;list-style:none}.db-badges li{border:1.5px solid var(--line);border-radius:14px;padding:10px 14px;background:var(--card)}.db-badges li.off{opacity:.55;border-style:dashed}
.db-sec{margin:26px 0}.db-sec h2{margin-bottom:.3em}
.cca-tech{opacity:.75;margin:.5em 0}
