/* Idlus 2.0 — La Maîtrise (js/maitrise.js) : ciel par classe, Bestiaire, classement */
.mt-page{padding-bottom:14px}
.mt-page>.phead{flex-wrap:wrap;gap:8px}
.mt-heroes{display:flex;gap:6px;overflow-x:auto;padding:10px 14px 4px;scrollbar-width:thin}
.mt-hb{flex:none;display:flex;align-items:center;gap:7px;padding:5px 10px 5px 6px;border-radius:12px;border:2px solid var(--line);background:var(--panel2);color:inherit;font:inherit;cursor:pointer;text-align:left}
.mt-hb img{width:28px;height:28px;filter:drop-shadow(0 0 6px var(--cc))}
.mt-hb>span{display:grid;line-height:1.15}.mt-hb b{font-size:13px}
.mt-hb.off{opacity:.62}
.mt-hb[aria-pressed="true"]{border-color:var(--gold);box-shadow:0 0 0 2px color-mix(in srgb,var(--gold) 35%,transparent)}
.mt-head{display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding:8px 14px}
.mt-head>img{width:46px;height:46px;filter:drop-shadow(0 0 10px var(--cc))}
.mt-head h2{margin:0;font-size:22px}
.mt-chips{display:flex;gap:6px;flex-wrap:wrap;margin-top:3px}
.mt-chip{font-size:12px;font-weight:900;padding:1px 9px;border-radius:999px;background:var(--panel3);border:1px solid var(--line)}
.mt-other{margin-left:auto;min-width:0}
.mt-other summary{cursor:pointer;font-weight:800;font-size:13px;color:var(--muted,inherit)}
.mt-cls{display:grid;grid-template-columns:repeat(10,32px);gap:4px;margin-top:6px}
.mt-cls button{width:32px;height:32px;padding:2px;border-radius:9px;border:2px solid transparent;background:var(--panel2);cursor:pointer}
.mt-cls button img{width:100%;height:100%}
.mt-cls button[aria-pressed="true"]{border-color:var(--gold)}
.mt-grid{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:12px;padding:4px 14px 0}
@media (max-width:900px){.mt-grid{grid-template-columns:minmax(0,1fr)}.mt-other{margin-left:0}.mt-cls{grid-template-columns:repeat(auto-fill,32px)}}
.mt-cv{position:relative;border:2px solid var(--frame);border-radius:14px;overflow:hidden;height:min(72vh,700px);touch-action:none;cursor:grab;isolation:isolate;background:radial-gradient(ellipse at 50% 50%,color-mix(in srgb,var(--cc) 28%,#14112a) 0,#0e0d1f 50%,#07070f 100%)}
.mt-cv canvas{position:relative;z-index:2;display:block;width:100%;height:100%}
.mt-bg{position:absolute;inset:0;z-index:1;pointer-events:none;overflow:hidden}
.mt-bg i{position:absolute;width:2px;height:2px;border-radius:50%;background:#fff;animation:mtTw 3s ease-in-out infinite alternate}
.mt-bg b{position:absolute;width:220px;height:220px;border-radius:50%;filter:blur(40px);opacity:.18;background:var(--cc);animation:mtDrift 18s ease-in-out infinite alternate}
.mt-bg b:nth-of-type(1){left:12%;top:18%}.mt-bg b:nth-of-type(2){left:46%;top:58%;animation-delay:-6s}.mt-bg b:nth-of-type(3){left:74%;top:22%;animation-delay:-12s}
@keyframes mtTw{from{opacity:.12}to{opacity:.9}}
@keyframes mtDrift{from{transform:translate(-20px,-10px)}to{transform:translate(30px,20px)}}
@media (prefers-reduced-motion:reduce){.mt-bg i,.mt-bg b{animation:none}}
.mt-hint{position:absolute;left:10px;top:10px;z-index:3;font-size:12px;font-weight:800;color:#efe9df;background:rgba(10,10,20,.7);padding:3px 10px;border-radius:999px;pointer-events:none}
.mt-zoom{position:absolute;right:10px;bottom:10px;z-index:3;display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}
.mt-side{display:grid;gap:10px;align-content:start;min-width:0}
.mt-card{background:var(--panel2);border:1px solid var(--line);border-radius:12px;padding:10px 12px;display:grid;gap:6px;min-width:0}
.mt-card h3{margin:0;font-size:15px}
.mt-card input{font:inherit;padding:5px 9px;border-radius:9px;border:2px solid var(--frame);background:var(--panel);color:inherit;min-width:0}
.mt-pts{display:flex;align-items:baseline;gap:8px;flex-wrap:wrap}.mt-pts b{font-size:26px;color:var(--gold)}
.mt-row{display:flex;gap:6px;flex-wrap:wrap;align-items:center}
.mt-tot{display:grid;gap:3px;font-size:13px;max-height:220px;overflow:auto}
.mt-tot div,.mt-cmp div,.mt-sum{display:flex;justify-content:space-between;gap:8px}
.mt-tot b{color:var(--gold)}
.mt-cl{color:var(--good,#7cc35b);font-weight:800}.mt-kl{color:#e8925a;font-weight:800}
.mt-sum{border-top:1px solid var(--line);padding-top:4px;font-weight:800}
.mt-ty{font-size:11px;font-weight:900;letter-spacing:.1em;text-transform:uppercase}
.mt-cmp{display:grid;gap:5px;border-top:1px solid var(--line);padding-top:8px;font-size:13px}
.mt-cmp .up{color:#5aa83a}.mt-cmp .dn{color:#d0574a}
.mt-share{display:grid;gap:6px}.mt-share code{font-size:11px;word-break:break-all;background:var(--panel);padding:6px;border-radius:8px;max-height:60px;overflow:auto}
.mt-joys{display:flex;gap:5px;flex-wrap:wrap}
.mt-jw{font-size:12px;font-weight:800;padding:2px 8px;border-radius:999px;border:1px solid color-mix(in srgb,var(--jc) 60%,transparent);color:var(--jc);background:color-mix(in srgb,var(--jc) 12%,transparent)}
.mt-jw.on{background:var(--jc);color:#160f05}
.mt-joyset{display:flex;gap:5px;flex-wrap:wrap;align-items:center}
.mt-line{display:grid;grid-template-columns:auto 1fr auto;gap:8px;align-items:center;margin-top:6px}
.mt-line .uico{width:18px;height:18px;vertical-align:-4px}
/* Bestiaire */
.bt-head{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:10px;padding:10px 14px}
.mt-page>.mt-row{padding:0 14px 8px}
.bt-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(290px,1fr));gap:8px;padding:0 14px}
.bt-row{display:flex;gap:10px;align-items:center;background:var(--panel2);border:1px solid var(--line);border-radius:12px;padding:8px 10px;min-width:0}
.bt-row.day{border-color:var(--gold);box-shadow:0 0 0 2px color-mix(in srgb,var(--gold) 30%,transparent)}
.bt-row.max{background:color-mix(in srgb,var(--gold) 14%,var(--panel2))}
.bt-pic{flex:none;width:46px;height:46px;display:grid;place-items:center}.bt-pic img{max-width:46px;max-height:46px}
.bt-mid{flex:1;min-width:0;display:grid;gap:3px}
.bt-top,.bt-sub{display:flex;justify-content:space-between;gap:6px}
.bt-tier{font-weight:900;color:var(--gold)}
.bt-rew{display:flex;gap:4px}.bt-rew span{font-size:10.5px;font-weight:900;padding:0 6px;border-radius:999px;border:1px solid var(--line);opacity:.55}
.bt-rew span.on{opacity:1;background:var(--gold);color:#1a1206;border-color:var(--gold)}
.bt-dayin{display:flex;gap:10px;align-items:center}.bt-dayin div{display:grid}
.mt-rank{display:grid;gap:6px;padding:0 14px 10px}
.mt-rk{display:flex;gap:10px;align-items:center;flex-wrap:wrap;background:var(--panel2);border:1px solid var(--line);border-radius:12px;padding:8px 12px}
.mt-rk img{width:28px;height:28px;filter:drop-shadow(0 0 6px var(--cc))}
.mt-page>.mt-sum{margin:0 14px}
.mt-page>.note{padding:10px 14px 0}
/* Scène : aura des clés de voûte */
.ent.hero .mt-aura{position:absolute;left:50%;bottom:0;width:150%;height:150px;transform:translateX(-50%);pointer-events:none;z-index:0;animation:mtAura 2.4s ease-in-out infinite alternate}
.ent.hero .mt-aura::before{content:"";position:absolute;left:8%;right:8%;bottom:-6px;height:34px;border-radius:50%;border:3px solid var(--mt);background:radial-gradient(ellipse,color-mix(in srgb,var(--mt) 75%,transparent) 0,transparent 72%);box-shadow:0 0 22px 6px color-mix(in srgb,var(--mt) 60%,transparent)}
.ent.hero .mt-aura::after{content:"";position:absolute;left:22%;right:22%;bottom:8px;top:0;background:linear-gradient(to top,color-mix(in srgb,var(--mt) 45%,transparent),transparent);filter:blur(6px);border-radius:40% 40% 0 0}
@keyframes mtAura{from{opacity:.6}to{opacity:1}}
@media (prefers-reduced-motion:reduce){.ent.hero .mt-aura{animation:none}}
@media (max-width:640px){.mt-head{display:grid;grid-template-columns:34px 1fr;gap:4px 10px;padding:6px 14px}.mt-head>img{width:34px;height:34px}.mt-head h2{font-size:19px}.mt-other{grid-column:1/-1}.mt-cv{height:62vh}}
.mt-rk.me{border-color:var(--gold);box-shadow:0 0 0 2px color-mix(in srgb,var(--gold) 30%,transparent)}
.mt-page>.mt-card{margin:0 14px 10px}
.mt-page>.mt-card .mt-row button[aria-pressed="true"]{border-color:var(--gold)}
.orn.btorn{object-fit:contain;filter:drop-shadow(0 0 6px rgba(242,193,78,.7))}
/* 2.0.1 : bulle de l'étoile sur l'arbre */
.mt-tip{position:absolute;z-index:4;width:min(260px,calc(100% - 16px));display:flex;flex-direction:column;gap:3px;padding:9px 12px;border-radius:12px;background:rgba(12,11,26,.94);border:1px solid rgba(200,210,255,.28);box-shadow:0 8px 24px rgba(0,0,0,.5);color:#efe9df;font-size:13px;line-height:1.35;pointer-events:none}
.mt-tip .mt-ty{font-size:10.5px;font-weight:800;text-transform:uppercase;letter-spacing:.06em}
.mt-tip b{font-size:14.5px;color:#fff}
.mt-tip em{font-style:normal;font-size:11.5px;font-weight:800;color:#f0c35a}
.mt-gain{display:flex;flex-direction:column;gap:1px;margin-top:3px;padding-top:5px;border-top:1px solid rgba(200,210,255,.18)}
.mt-gain i{font-style:normal;font-size:11px;color:#b9b4d6}
.mt-gain div{display:flex;justify-content:space-between;gap:10px}.mt-gain div b{font-size:13px;color:#9ff08a}
/* 2.0.6 : Maîtrise sur la fiche du héros */
.mts{display:flex;flex-direction:column;gap:5px;margin-top:8px;padding:10px 12px;border-radius:12px;background:color-mix(in srgb,var(--cc,#7cc35b) 10%,transparent);border:1px solid color-mix(in srgb,var(--cc,#7cc35b) 35%,transparent)}
.mts-h{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.mts-h .btn{margin-left:auto}.mts-left{color:var(--gold2,#f0c35a)}
.mts-l{display:flex;flex-wrap:wrap;gap:5px}
.mts-b,.mts-k{font-size:12px;padding:2px 8px;border-radius:999px;background:rgba(0,0,0,.18);white-space:nowrap}.mts-b b{color:var(--good,#7cc35b)}
.mts-k{font-weight:800;color:#e8925a}.mts-k.cl{color:var(--good,#7cc35b)}
/* 2.1 : brouillon (5A, 6A), objectif (12A), Porte ouverte (1A), arbre d'un joueur (15A), recherche (7A), récap (20A), clés en combat (19A) */
.mt-draft{position:absolute;right:10px;top:10px;z-index:4;width:min(300px,calc(100% - 20px));display:flex;flex-direction:column;gap:6px;padding:10px 12px;border-radius:12px;background:rgba(12,11,26,.94);border:1px dashed #f0c35a;color:#efe9df;font-size:13px;box-shadow:0 8px 24px rgba(0,0,0,.5)}
.mt-draft .mt-row{justify-content:space-between}.mt-dprof{display:flex;gap:5px;flex-wrap:wrap}.mt-dprof .btn[aria-pressed="true"]{border-color:#f0c35a;color:#f0c35a}
.mt-obj,.mt-peek{position:absolute;left:10px;top:10px;z-index:3;max-width:calc(100% - 20px);display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:6px 10px;border-radius:12px;background:rgba(12,11,26,.9);border:1px solid rgba(240,195,90,.6);color:#efe9df;font-size:12.5px}
.mt-peek{border-color:rgba(159,231,255,.7);right:10px;justify-content:space-between}
.mt-draft~.mt-obj{display:none}
.mt-ban{position:absolute;left:50%;top:18%;transform:translateX(-50%);z-index:5;padding:12px 20px;border-radius:14px;text-align:center;background:rgba(10,24,34,.92);border:1px solid #9fe7ff;color:#dff6ff;font-size:14px;box-shadow:0 0 30px rgba(159,231,255,.45);animation:mtBan .6s ease-out;pointer-events:none;max-width:calc(100% - 30px)}
.mt-ban b{font-family:Kavoon,Georgia,serif;font-weight:400;font-size:19px;color:#fff}
@keyframes mtBan{from{opacity:0;transform:translate(-50%,-10px)}to{opacity:1;transform:translate(-50%,0)}}
.mt-tip .mt-pop{font-size:11.5px;color:#c8cdf5}.mt-tip em.mt-cut{color:#ff9b9b}
.mt-near{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:4px}
.mt-rec p{margin:0 0 6px;font-size:13px;line-height:1.4}.mt-rec .mt-kl b{color:#ffb27b}.mt-rec .mt-cl b{color:var(--cc,#e2f5ae)}
.mt-all{margin-top:6px}.mt-all summary{cursor:pointer;font-size:12px;font-weight:800;color:var(--muted,#9a98b8)}.mt-all>div{display:flex;justify-content:space-between;gap:8px;font-size:12.5px}
.mt-ksb{display:inline-block;margin-left:4px;padding:0 5px;border-radius:999px;background:rgba(255,159,90,.2);color:#ffb27b;font-size:10.5px;font-weight:900;line-height:16px;cursor:help}
.mt-rk .btn{margin-left:6px}
@media (prefers-reduced-motion:reduce){.mt-ban{animation:none}}
.mt-tot .mt-rec{display:block}
