.masso-wrap { max-width: 1100px; }
.masso-muted { color: #5f6b7a; font-size: .92em; }
.masso-sr { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); }
.masso-badge { --masso-c: #666; display: inline-flex; align-items: center; gap: .4em; padding: .1em .65em; border-radius: 999px; font-size: .82em; font-weight: 600;
  color: var(--masso-c); background: color-mix(in srgb, var(--masso-c) 12%, #fff); border: 1px solid color-mix(in srgb, var(--masso-c) 35%, #fff); white-space: nowrap; }
.masso-badge.masso-none { --masso-c: #8a5a00; background: #fdf3dc; border-color: #f1d9a4; }
.masso-btn { display: inline-block; border: 1px solid #1d4e89; background: #1d4e89; color: #fff; padding: .55em 1em; border-radius: 6px; font: inherit; font-weight: 600; cursor: pointer; }
.masso-btn-ghost { background: transparent; color: #1d4e89; }
.masso-notice { padding: .7em 1em; border-left: 4px solid #1d4e89; background: #f4f6f8; margin: 0 0 1em; border-radius: 4px; }
.masso-notice-success { border-color: #1e7b4f; background: #e6f4ec; }
.masso-notice-error { border-color: #a8322f; background: #fbeaea; }
.masso-prompt { border: 1px solid #f1d9a4; background: #fffaf0; border-radius: 6px; padding: 1em 1.2em; margin: 0 0 1.5em; }
.masso-prompt p { margin: 0 0 .8em; }
.masso-choice fieldset { border: 0; padding: 0; margin: 0 0 .8em; }
.masso-options { display: grid; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); gap: .7em; }
.masso-option { --masso-c: #666; display: flex; gap: .6em; align-items: flex-start; padding: .8em 1em; background: #fff; border: 1px solid #d9dee5; border-left: 4px solid var(--masso-c); border-radius: 6px; cursor: pointer; }
.masso-option:has(input:checked) { box-shadow: inset 0 0 0 2px var(--masso-c); }
.masso-option input { margin-top: .3em; }
.masso-option strong { display: block; }
.masso-option small { display: block; color: #5f6b7a; }
.masso-counts { display: flex; flex-wrap: wrap; gap: .6em; margin: 1em 0; }
.masso-count { --masso-c: #1d4e89; padding: .5em .9em; border: 1px solid #d9dee5; border-top: 3px solid var(--masso-c); border-radius: 6px; background: #fff; text-decoration: none; color: #1f2933; }
.masso-count strong { font-size: 1.2em; margin-right: .2em; }
.masso-count.is-active { box-shadow: inset 0 0 0 1px var(--masso-c); }
.masso-count-none { --masso-c: #8a5a00; }
.masso-search { display: flex; gap: .5em; margin: 0 0 1em; }
.masso-bulkbar { display: flex; flex-wrap: wrap; gap: .6em; align-items: center; margin: 0 0 .8em; }
.masso-table-wrap { overflow-x: auto; border: 1px solid #d9dee5; border-radius: 6px; background: #fff; }
.masso-table { width: 100%; border-collapse: collapse; }
.masso-table th, .masso-table td { padding: .55em .75em; border-bottom: 1px solid #e6e9ee; text-align: left; vertical-align: middle; }
.masso-table thead th { background: #f4f6f8; }
.masso-danger { color: #a8322f !important; }
.masso-inline { margin-right: 1.4em; }
.masso-steps li { margin-bottom: .5em; }
.masso-steps pre { background: #f4f6f8; padding: .5em .8em; display: inline-block; }

/* ---------- Mineurs ---------- */
.masso-notice-info { border-color: #1d4e89; background: #eef3fa; }
.masso-tag { display: inline-block; padding: .1em .6em; border-radius: 4px; font-size: .82em; background: #eef1f5; color: #3b4652; border: 1px solid #d9dee5; white-space: nowrap; }
.masso-tag-ok { background: #e6f4ec; border-color: #b9dfc8; color: #1e5e3c; }
.masso-tag-no { background: #fbeaea; border-color: #eab8b6; color: #8f2724; font-weight: 700; }
.masso-cotis-payee, .masso-cotis-exoneree { background: #e6f4ec; border-color: #b9dfc8; color: #1e5e3c; }
.masso-cotis-a_payer { background: #fdf3dc; border-color: #f1d9a4; color: #7a5200; }
.masso-cotis-attente { background: #eef3fa; border-color: #c4d4ea; color: #1d4e89; }
.masso-tags { display: flex; flex-wrap: wrap; gap: .4em; }
.masso-mm-cards { display: grid; grid-template-columns: repeat(auto-fill, minmax(300px, 1fr)); gap: 1em; margin: 0 0 1.2em; }
.masso-mm-card { background: #fff; border: 1px solid #d9dee5; border-radius: 8px; padding: 1em 1.2em; }
.masso-mm-card.is-muted { opacity: .8; background: #f7f8fa; }
.masso-mm-card h3 { margin: 0; }
.masso-mm-card header p { margin: .1em 0 .6em; }
.masso-actions { display: flex; flex-wrap: wrap; gap: .5em; align-items: center; margin: .8em 0 0; }
.masso-inline-form { display: inline; margin: 0; }
.masso-link { background: none; border: 0; padding: 0; color: #1d4e89; text-decoration: underline; cursor: pointer; font: inherit; }
.masso-details { margin-top: .8em; }
.masso-details summary { cursor: pointer; color: #1d4e89; }
.masso-form fieldset { border: 1px solid #e0e4ea; border-radius: 6px; padding: .8em 1em; margin: 0 0 1em; }
.masso-form legend { font-weight: 700; padding: 0 .3em; }
.masso-row { display: grid; grid-template-columns: repeat(auto-fit, minmax(180px, 1fr)); gap: .8em; }
.masso-field { display: block; margin: 0 0 .7em; }
.masso-field > span { display: block; font-weight: 600; margin-bottom: .2em; }
.masso-field input, .masso-field select, .masso-field textarea { width: 100%; max-width: 100%; box-sizing: border-box; }
.masso-choice { display: block; margin: .3em 0; }
.masso-multi { width: 100%; max-width: 560px; }
.masso-mm-grid { display: grid; grid-template-columns: minmax(0, 3fr) minmax(0, 2fr); gap: 1.5em; align-items: start; }
@media (max-width: 900px) { .masso-mm-grid { grid-template-columns: 1fr; } }
.masso-box { background: #fff; border: 1px solid #d9dee5; border-radius: 6px; padding: .8em 1em; margin: 0 0 1em; }
.masso-box h3 { margin-top: 0; }
.masso-list { margin: 0; padding-left: 1.1em; }
.masso-subnav { display: flex; gap: .4em; margin: 0 0 1em; border-bottom: 1px solid #d9dee5; }
.masso-subnav a { padding: .5em .9em; text-decoration: none; color: #1f2933; border: 1px solid transparent; border-bottom: 0; border-radius: 6px 6px 0 0; }
.masso-subnav a.is-active { border-color: #d9dee5; background: #fff; font-weight: 700; margin-bottom: -1px; }
.masso-activation { max-width: 560px; margin: 2em auto; padding: 0 1em; }

/* Bandeau « Pour qui ? » utilisé par les autres extensions */
.masso-pour { display: flex; flex-wrap: wrap; align-items: center; gap: .5em; padding: .7em 1em; margin: 0 0 1.2em; border: 1px solid #d9dee5; border-radius: 8px; background: #f7f9fc; }
.masso-pour.is-child { border-color: #e0a100; background: #fff8e6; }
.masso-pour-label { font-weight: 600; }
.masso-pour-chip { padding: .3em .9em; border-radius: 999px; border: 1px solid #c4ccd6; background: #fff; text-decoration: none; color: #1f2933; }
.masso-pour-chip.is-active { background: #1d4e89; border-color: #1d4e89; color: #fff; }
.masso-pour-chip small { opacity: .8; }
.masso-pour-note { flex-basis: 100%; margin: .3em 0 0; }
