/* Espace membres */
.mb-section{padding:clamp(2rem,5vw,3.5rem) 0 6rem;background:var(--sable-pale);min-height:50vh}
.mb-app{max-width:1100px;margin:0 auto}
.mb-loading,.mb-empty{text-align:center;color:var(--encre-pale);padding:3rem 1rem;font-size:1.05rem}
.mb-help{color:var(--encre-pale);font-size:.95rem;margin:.2rem 0 .9rem}

/* barre d'onglets */
.mb-top{display:flex;flex-wrap:wrap;gap:.8rem 1.2rem;justify-content:space-between;align-items:center;margin-bottom:1.6rem;position:sticky;top:64px;z-index:20;background:var(--sable-pale);padding:.6rem 0;border-bottom:1px solid rgba(22,18,14,.08)}
.mb-tabs{display:flex;gap:.5rem;flex-wrap:wrap}
.mb-tab{display:inline-flex;align-items:center;gap:.55rem;min-height:54px;padding:.6rem 1.2rem;border-radius:14px;font-weight:600;font-size:1.05rem;color:var(--encre-doux);text-decoration:none;background:#fff;border:2px solid transparent;box-shadow:0 1px 6px rgba(22,18,14,.08)}
.mb-tab:hover{border-color:var(--bleu-clair)}
.mb-tab.on{background:var(--bleu-nuit);color:#fff}
.mb-user{display:flex;gap:.5rem;flex-wrap:wrap}
.mb-tool{display:inline-flex;align-items:center;gap:.4rem;min-height:44px;padding:.4rem .9rem;border-radius:12px;border:2px solid var(--sable-sombre);background:#fff;color:var(--encre-doux);font:600 .92rem "Inter Tight",sans-serif;cursor:pointer;text-decoration:none}
.mb-tool:hover{border-color:var(--bleu);color:var(--bleu)}
@media(max-width:640px){
  .mb-top{top:56px}
  .mb-tab{flex:1;justify-content:center;padding:.5rem .6rem;font-size:.95rem;flex-direction:column;gap:.15rem;min-height:62px;text-align:center}
  .mb-user .mb-tool span{display:none}
}

/* chants */
.mb-tools{display:flex;flex-direction:column;gap:1rem;margin-bottom:1.4rem}
.mb-searchbox{display:flex;align-items:center;gap:.7rem;background:#fff;border:2px solid var(--sable-sombre);border-radius:16px;padding:0 1rem;min-height:58px;color:var(--encre-pale)}
.mb-searchbox:focus-within{border-color:var(--bleu)}
.mb-search{flex:1;border:none;background:none;font:500 1.1rem "Inter Tight",sans-serif;color:var(--encre);outline:none;min-height:54px;min-width:0}
.mb-chips{display:flex;flex-wrap:wrap;gap:.5rem}
.mb-chip{display:inline-flex;align-items:center;gap:.45rem;min-height:44px;padding:.35rem 1rem;border-radius:100px;border:2px solid var(--sable-sombre);background:#fff;font:600 .95rem "Inter Tight",sans-serif;color:var(--encre-doux);cursor:pointer}
.mb-chip i{font-style:normal;font-size:.78rem;background:var(--sable);border-radius:100px;padding:.05rem .5rem;color:var(--encre-pale)}
.mb-chip.on{background:var(--bleu-nuit);border-color:var(--bleu-nuit);color:#fff}
.mb-chip.on i{background:rgba(255,255,255,.2);color:#fff}
.mb-chip.static{cursor:default;min-height:0;padding:.15rem .8rem;font-size:.78rem;text-transform:uppercase;letter-spacing:.08em;background:var(--sable);border-color:transparent;color:var(--bleu-nuit);margin-bottom:.4rem}
.mb-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:1rem}
.mb-card{text-align:left;background:#fff;border:2px solid transparent;border-radius:18px;padding:1.15rem 1.2rem;display:flex;flex-direction:column;gap:.45rem;cursor:pointer;box-shadow:0 2px 12px rgba(22,18,14,.08);font:inherit;color:inherit;transition:transform .2s var(--ease),border-color .2s,box-shadow .2s;min-height:128px}
.mb-card:hover{border-color:var(--bleu-clair);transform:translateY(-3px);box-shadow:0 10px 28px rgba(23,51,63,.16)}
.mb-card.playing{border-color:var(--rouge)}
.mb-card b{font-family:Fraunces,serif;font-size:1.28rem;line-height:1.2;color:var(--bleu-nuit);font-weight:600}
.mb-card-lang{font-size:.72rem;letter-spacing:.1em;text-transform:uppercase;font-weight:700;color:var(--ocre)}
.mb-card-meta{display:flex;flex-wrap:wrap;gap:.4rem 1rem;margin-top:auto;font-size:.88rem;color:var(--encre-pale)}
.mb-card-meta span{display:inline-flex;align-items:center;gap:.25rem}

/* fiche chant */
.adi-modal.mb-songbox{width:min(760px,100%);padding:0;overflow:hidden;display:flex;flex-direction:column}
.mb-song-head{display:flex;justify-content:space-between;gap:1rem;align-items:flex-start;padding:1.4rem 1.6rem 1rem;background:var(--sable-pale);border-bottom:1px solid rgba(22,18,14,.08)}
.mb-song-head h2{font-family:Fraunces,serif;font-size:clamp(1.6rem,5vw,2.2rem);color:var(--bleu-nuit);line-height:1.15}
.mb-song-body{padding:1.2rem 1.6rem 1.8rem;overflow:auto}
.mb-block{margin-bottom:2rem}
.mb-block:last-child{margin-bottom:0}
.mb-block h3{display:flex;align-items:center;gap:.5rem;font-family:Fraunces,serif;font-size:1.35rem;color:var(--bleu-nuit);margin-bottom:.4rem}
.mb-voices{display:flex;flex-wrap:wrap;gap:.6rem;margin-bottom:1.1rem}
.mb-voice{min-height:54px;padding:.5rem 1.3rem;border-radius:14px;border:2px solid var(--sable-sombre);background:#fff;font:600 1.05rem "Inter Tight",sans-serif;cursor:pointer;color:var(--encre-doux)}
.mb-voice:hover{border-color:var(--bleu)}
.mb-voice.on{background:var(--rouge);border-color:var(--rouge);color:#fff}
.mb-transport{display:flex;align-items:center;gap:1rem;background:var(--sable-pale);border-radius:18px;padding:1rem 1.2rem}
.mb-bigplay{flex:none;width:72px;height:72px;border-radius:50%;border:none;background:var(--bleu-nuit);color:#fff;display:grid;place-items:center;cursor:pointer;box-shadow:0 6px 20px rgba(23,51,63,.35);transition:transform .15s}
.mb-bigplay:hover{transform:scale(1.05);background:var(--bleu)}
.mb-seekwrap{flex:1;min-width:0}
.mb-seek{width:100%;height:36px;accent-color:var(--rouge);cursor:pointer}
.mb-times{display:flex;justify-content:space-between}
.mb-time{font-variant-numeric:tabular-nums;color:var(--encre-pale);font-size:.92rem}
.mb-opts{display:flex;flex-wrap:wrap;gap:.8rem 1.2rem;align-items:center;margin-top:.9rem}
.mb-speed{min-height:44px;border-radius:12px;border:2px solid var(--sable-sombre);background:#fff;padding:.3rem .8rem;font:600 .95rem "Inter Tight",sans-serif;color:var(--encre-doux)}
.mb-loop{display:inline-flex;align-items:center;gap:.4rem;font-weight:600;color:var(--encre-doux);min-height:44px;cursor:pointer}
.mb-loop input{width:22px;height:22px;accent-color:var(--bleu)}

/* documents */
.mb-doclist{list-style:none;display:flex;flex-direction:column;gap:.7rem}
.mb-doc{display:grid;grid-template-columns:auto 1fr;gap:.4rem 1rem;align-items:center;background:#fff;border:1px solid rgba(22,18,14,.1);border-radius:16px;padding:.9rem 1.1rem}
.mb-song .mb-doc{background:var(--sable-pale)}
.mb-doc-ico{width:48px;height:48px;border-radius:12px;background:var(--bleu-nuit);color:var(--sable-pale);display:grid;place-items:center}
.mb-doc-main{min-width:0}
.mb-doc-main b{display:block;font-weight:600;font-size:1.05rem;color:var(--encre);overflow-wrap:anywhere}
.mb-doc-main small{color:var(--encre-pale);font-size:.86rem}
.mb-doc-act{grid-column:1 / -1;display:flex;flex-wrap:wrap;gap:.6rem;align-items:center}
.mb-doc-act .adi-btn{min-height:46px;padding:.4rem 1.1rem}
.mb-altlink{font-size:.88rem;color:var(--bleu);text-decoration:underline;padding:.4rem .2rem}
@media(min-width:700px){.mb-doc{grid-template-columns:auto 1fr auto}.mb-doc-act{grid-column:auto;justify-content:flex-end}}

/* lecteur mini */
.mb-mini{position:fixed;left:0;right:0;bottom:0;z-index:9000;background:var(--bleu-nuit);color:#fff;display:flex;align-items:center;gap:1rem;padding:.6rem 1rem calc(.6rem + env(safe-area-inset-bottom));box-shadow:0 -8px 30px rgba(0,0,0,.25)}
.mb-mini[hidden]{display:none}
.mb-mini-info{flex:1;min-width:0;cursor:pointer;display:flex;flex-direction:column}
.mb-mini-info b{font-family:Fraunces,serif;font-size:1.05rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.mb-mini-info span{font-size:.85rem;opacity:.75}
.mb-mini-play{width:50px;height:50px;border-radius:50%;border:none;background:var(--rouge);color:#fff;display:grid;place-items:center;cursor:pointer}
.mb-mini-bar{position:absolute;left:0;right:0;top:0;height:4px;background:rgba(255,255,255,.18)}
.mb-mini-bar i{display:block;height:100%;background:var(--rouge-clair);width:0}

/* visionneuse PDF */
.adi-modal-back:has(.mb-full){padding:0;place-items:stretch}
.adi-modal.mb-full{width:100%;max-width:none;height:100dvh;max-height:none;border-radius:0;padding:0;display:flex;flex-direction:column;background:#3b3b3b}
.mb-pdf-bar{display:flex;flex-wrap:wrap;gap:.6rem 1rem;align-items:center;justify-content:space-between;padding:.6rem .9rem;background:var(--bleu-nuit);color:#fff}
.mb-pdf-title{font-family:Fraunces,serif;font-size:1.1rem;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:60vw}
.mb-pdf-tools{display:flex;gap:.5rem;align-items:center;flex-wrap:wrap}
.mb-pdf-tools .mb-tool{min-height:46px;min-width:46px;justify-content:center;font-size:1.3rem}
.mb-pdf-tools .mb-tool span{font-size:.9rem}
.mb-pdf-pg{color:#fff;opacity:.8;font-size:.9rem}
.mb-pdf-view{flex:1;overflow:auto;padding:12px;background:#3b3b3b;-webkit-overflow-scrolling:touch}
.mb-pdf-pw{display:flex;justify-content:center;margin:0 auto 12px;width:max-content;min-width:100%}
.mb-pdf-page{background:#fff;box-shadow:0 4px 18px rgba(0,0,0,.45);max-width:none;display:block}
.mb-pdf-fail{color:#fff;text-align:center;padding:3rem 1rem}
.mb-pdf-fail p{margin-bottom:1rem;color:#fff}
.mb-pdf-view .mb-loading{color:#ddd}
.mb-imgbox{align-items:center;justify-content:center;background:#111;position:relative}
.mb-imgbox img{max-width:100%;max-height:100dvh;object-fit:contain;margin:auto}
.mb-imgbox .mb-tool{position:absolute;top:10px;right:10px;z-index:2}

/* agenda */
.mb-who-box{background:#fff;border-radius:18px;padding:1.1rem 1.3rem;margin-bottom:1.4rem;display:flex;flex-wrap:wrap;gap:.6rem 1rem;align-items:center;box-shadow:0 2px 12px rgba(22,18,14,.08)}
.mb-who-box label{font-weight:700;color:var(--bleu-nuit);font-size:1.05rem}
.mb-who{flex:1;min-width:230px;min-height:54px;font:600 1.05rem "Inter Tight",sans-serif;border-radius:12px;border:2px solid var(--sable-sombre);padding:.4rem .8rem;background:var(--sable-pale);color:var(--encre)}
.mb-events{display:flex;flex-direction:column;gap:1.1rem}
.mb-event{background:#fff;border-radius:20px;padding:1.3rem 1.4rem;box-shadow:0 2px 14px rgba(22,18,14,.09);border-left:6px solid var(--bleu)}
.mb-event.past{opacity:.7;border-left-color:var(--sable-sombre);box-shadow:none;border:1px solid rgba(22,18,14,.1)}
.mb-event-date{display:block;font-size:.85rem;letter-spacing:.1em;text-transform:uppercase;color:var(--ocre);font-weight:700}
.mb-event h3{font-family:Fraunces,serif;font-size:1.45rem;color:var(--bleu-nuit);line-height:1.2;margin:.15rem 0 .7rem}
.mb-infos{display:grid;grid-template-columns:auto 1fr;gap:.25rem 1rem;margin-bottom:1rem;font-size:.97rem}
.mb-infos dt{font-weight:700;color:var(--encre-pale)}
.mb-infos dd{color:var(--encre-doux)}
.mb-answer{display:grid;grid-template-columns:repeat(3,1fr);gap:.6rem;margin:.6rem 0 .9rem}
.mb-ans{min-height:62px;border-radius:16px;border:2px solid var(--sable-sombre);background:var(--sable-pale);display:flex;align-items:center;justify-content:center;gap:.4rem;font:700 1rem "Inter Tight",sans-serif;color:var(--encre-doux);cursor:pointer;transition:transform .12s}
.mb-ans:active{transform:scale(.97)}
.mb-ans.yes.on{background:var(--vert);border-color:var(--vert);color:#fff}
.mb-ans.maybe.on{background:var(--ocre);border-color:var(--ocre);color:#fff}
.mb-ans.no.on{background:var(--rouge);border-color:var(--rouge);color:#fff}
@media(max-width:480px){.mb-ans{flex-direction:column;gap:.1rem;font-size:.9rem}}
.mb-tally{display:flex;flex-wrap:wrap;gap:.4rem .8rem;font-size:.9rem;font-weight:600}
.mb-tally .yes{color:var(--vert)}.mb-tally .maybe{color:#9a6a1b}.mb-tally .no{color:var(--rouge)}.mb-tally .none{color:var(--encre-pale)}
.mb-who-list{margin-top:.7rem;font-size:.92rem}
.mb-who-list summary,.mb-past summary{cursor:pointer;color:var(--bleu);font-weight:600;min-height:40px;display:flex;align-items:center}
.mb-who-list p{margin:.35rem 0;color:var(--encre-doux)}
.mb-past{margin-top:1rem}
.mb-past .mb-event{margin-top:.8rem}
.mb-matrix-toggle{margin:1.6rem 0 1rem}
.mb-matrix{overflow:auto;background:#fff;border-radius:16px;box-shadow:0 2px 12px rgba(22,18,14,.08);max-height:75vh}
.mb-matrix table{border-collapse:separate;border-spacing:0;font-size:.92rem;width:100%}
.mb-matrix th,.mb-matrix td{padding:.5rem .7rem;border-bottom:1px solid rgba(22,18,14,.07);text-align:center;white-space:nowrap}
.mb-matrix th.sticky{position:sticky;left:0;background:#fff;text-align:left;z-index:2;font-weight:600;min-width:150px;border-right:1px solid rgba(22,18,14,.1)}
.mb-matrix thead th{position:sticky;top:0;background:var(--bleu-nuit);color:#fff;z-index:3;font-weight:600;vertical-align:bottom}
.mb-matrix thead th.sticky{z-index:4;background:var(--bleu-nuit)}
.mb-matrix thead th span{display:block;font-size:1rem}
.mb-matrix thead th small{display:block;font-weight:400;opacity:.8;max-width:120px;white-space:normal;line-height:1.2}
.mb-matrix tr.grp th{background:var(--sable);text-align:left;font-family:Fraunces,serif;color:var(--bleu-nuit);position:sticky;left:0}
.mb-matrix tr.me th.sticky,.mb-matrix tr.me td{background:#fff6dc}
.mb-matrix td.yes{color:var(--vert);font-weight:800}
.mb-matrix td.no{color:var(--rouge);font-weight:800}
.mb-matrix td.maybe{color:#9a6a1b;font-weight:800}
.mb-matrix tfoot th,.mb-matrix tfoot td{font-weight:800;background:var(--sable);position:sticky;bottom:0}

/* consignes d'un événement */
.mb-consignes{background:#fff6dc;border-left:5px solid var(--ocre);border-radius:14px;padding:1rem 1.2rem;margin:.2rem 0 1rem}
.mb-consignes h4{font-family:Fraunces,serif;font-size:1.15rem;color:var(--bleu-nuit);margin-bottom:.4rem}
.mb-consignes p{margin:.3rem 0;color:var(--encre-doux)}
.mb-cons-org{white-space:pre-line}
.mb-cons-songs{margin:.3rem 0 .3rem 1.2rem}
.mb-cons-songs li{margin:.15rem 0}
.mb-linkbtn{background:none;border:none;padding:.15rem 0;font:600 1rem "Inter Tight",sans-serif;color:var(--bleu);text-decoration:underline;cursor:pointer;min-height:36px;text-align:left}
