.vl-public,.vl-admin{--vl-ink:#202736;--vl-muted:#616873;--vl-accent:#9f2940;--vl-bg:#f6f3ee;--vl-line:#dddfe3;color:var(--vl-ink);font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;line-height:1.5}.vl-public *,.vl-admin *{box-sizing:border-box}.vl-public{max-width:780px;margin:32px auto;background:#fff;border:1px solid var(--vl-line);border-radius:18px;overflow:hidden;box-shadow:0 14px 45px #2027360b}.vl-public h2{font-size:clamp(28px,5vw,42px);line-height:1.15;margin:12px 0 18px;color:inherit}.vl-hero{padding:36px;background:var(--vl-bg);border-bottom:4px solid var(--vl-accent)}.vl-eyebrow{letter-spacing:.12em;font-size:11px;font-weight:800}.vl-tag{display:inline-block;background:white;border:1px solid #e3dcd3;border-radius:30px;padding:6px 12px;font-size:12px}.vl-form{padding:30px 36px}.vl-public label,.vl-admin label{display:flex;flex-direction:column;gap:7px;font-weight:600;font-size:14px;margin-bottom:16px}.vl-cols{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 20px}.vl-public input,.vl-public select,.vl-public textarea,.vl-admin input:not([type=checkbox]),.vl-admin select,.vl-admin textarea{width:100%;max-width:100%;padding:11px 12px;border:1px solid #aeb4bd;border-radius:7px;background:white;color:var(--vl-ink);font:inherit;min-height:42px}.vl-public input:focus,.vl-public select:focus,.vl-public textarea:focus,.vl-admin :focus-visible{outline:3px solid #9f294045;outline-offset:2px}.vl-public button,.vl-admin button,.vl-admin .vl-button{display:inline-block;background:var(--vl-accent);border:1px solid var(--vl-accent);color:white;border-radius:7px;padding:10px 16px;cursor:pointer;text-decoration:none;font:600 14px system-ui}.vl-public button:disabled,.vl-admin button:disabled{opacity:.6;cursor:wait}.vl-total{background:var(--vl-bg);padding:10px 16px;border-radius:8px;margin:0 0 16px;display:flex;flex-direction:column}.vl-total strong{font-size:24px}.vl-total small,.vl-muted{color:var(--vl-muted);font-size:12px}.vl-public [data-error],.vl-error{color:#a51c2c;font-weight:600}.vl-trap{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.vl-success{padding:42px;background:var(--vl-bg)}.vl-admin{max-width:1500px;padding:18px 12px}.vl-admin h1{font-size:28px;margin:0}.vl-admin h2{margin-top:0}.vl-admin .vl-head,.vl-toolbar{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin-bottom:18px}.vl-admin nav{display:flex;gap:8px;flex-wrap:wrap;margin:22px 0}.vl-admin nav button,.vl-admin button.secondary,.vl-admin .vl-button.secondary{background:white;color:var(--vl-ink);border-color:var(--vl-line)}.vl-admin nav button.active{background:var(--vl-ink);color:white}.vl-card{background:white;border:1px solid var(--vl-line);border-radius:10px;padding:22px;margin-bottom:20px}.vl-admin .vl-stats{display:flex;gap:12px;flex-wrap:wrap;margin:16px 0}.vl-stat{background:var(--vl-bg);border-radius:8px;padding:12px 18px;min-width:125px}.vl-stat strong{display:block;font-size:22px}.vl-scroll{overflow:auto}.vl-admin table{width:100%;border-collapse:collapse;font-size:13px}.vl-admin th,.vl-admin td{padding:11px 8px;border-bottom:1px solid var(--vl-line);text-align:left;vertical-align:top}.vl-admin th{background:#f6f7f8;white-space:nowrap}.vl-admin td button{padding:6px 9px;font-size:12px;margin:2px}.vl-admin td select{min-width:120px;padding:5px}.vl-admin .vl-check{flex-direction:row;align-items:center}.vl-admin .vl-check input{margin:0}.vl-admin .vl-toolbar label{margin:0;min-width:220px;flex:1}.vl-notice{padding:12px 16px;background:#eff7f1;border-left:4px solid #348750;margin-bottom:15px}.vl-notice.error{background:#fff0f0;border-color:#a51c2c}.vl-badge{font-size:11px;padding:3px 7px;background:#f1f1f1;border-radius:20px;white-space:nowrap}.vl-grid{display:grid;gap:12px;min-width:500px;padding:18px;background:var(--vl-bg);border-radius:8px}.vl-cell{display:flex;align-items:center;justify-content:center;min-height:115px;border:1px dashed #dad5cf;padding:8px}.vl-table-shape{display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;background:#fff;border:2px solid #9f2940;width:100%;max-width:145px;min-height:85px;padding:8px;font-size:12px;overflow-wrap:anywhere}.vl-table-shape.round{border-radius:50%;width:100px;height:100px}.vl-table-shape.square{width:100px;height:100px}.vl-table-shape.rectangle.vertical{width:80px;min-height:115px}.vl-table-shape.disabled{opacity:.4;border-style:dashed}.vl-admin .vl-editor{background:#fcfbf9;border:1px solid var(--vl-line);padding:20px;border-radius:8px;margin:20px 0}.vl-admin .vl-edit-tables input{min-width:70px}.vl-admin .vl-edit-tables input[name=name]{min-width:130px}.vl-admin .vl-edit-tables select{min-width:120px}.vl-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.vl-admin .vl-danger{color:#a51c2c!important;border-color:#e1b6bd!important;background:white!important}.vl-admin .vl-muted{max-width:900px}.vl-admin .vl-full{grid-column:1/-1}@media(max-width:650px){.vl-cols{grid-template-columns:1fr}.vl-form,.vl-hero,.vl-success{padding:24px}.vl-admin{padding:10px 0}.vl-card{padding:14px}.vl-grid{gap:6px}.vl-admin h1{font-size:24px}}

.vl-pdf-actions{display:inline-flex;gap:6px;align-items:center;flex-wrap:wrap;margin:3px 8px 3px 0}

.vl-admin .vl-pdf-dialog{width:94vw;max-width:1400px;height:90vh;max-height:94vh;padding:16px;border:1px solid #aeb4bd;border-radius:12px;background:#fff;color:var(--vl-ink)}.vl-pdf-dialog::backdrop{background:#17202bcc}.vl-pdf-header{display:flex;align-items:center;gap:12px;margin-bottom:12px}.vl-pdf-header strong{flex:1}.vl-pdf-dialog iframe{display:block;width:100%;height:calc(100% - 110px);border:1px solid #ddd}.vl-pdf-dialog .vl-muted{font-size:12px;margin:10px 0}@media(max-width:650px){.vl-pdf-header{flex-wrap:wrap}.vl-pdf-header strong{flex-basis:100%}}

.vl-play-description{white-space:pre-line}

.vl-admin .vl-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin:24px 0}.vl-admin .vl-summary-group{border:1px solid #d6d0c8;border-radius:10px;background:#fff;padding:20px;min-width:0}.vl-admin .vl-summary-group h2{margin:0 0 7px;font-size:17px;line-height:1.3}.vl-admin .vl-summary-note{font-size:12px;color:#616873;min-height:36px;margin:0 0 16px}.vl-admin .vl-summary-group dl{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:0}.vl-admin .vl-summary-item{border:1px solid #e2ddd5;border-radius:7px;background:#f8f6f2;padding:13px;min-width:0}.vl-admin .vl-summary-item dt{font-size:12px;line-height:1.4;min-height:34px;color:#555}.vl-admin .vl-summary-item dd{margin:7px 0 0;font-size:clamp(17px,1.7vw,25px);font-weight:700;line-height:1.2;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.vl-admin .vl-summary-total{background:#edf4ef;border-color:#b8d0bf}.vl-admin .vl-summary-group:last-child dl{grid-template-columns:1fr}.vl-admin .vl-summary-group:last-child .vl-summary-item{display:flex;align-items:center;justify-content:space-between;gap:14px}.vl-admin .vl-summary-group:last-child dt{min-height:0}.vl-admin .vl-summary-group:last-child dd{margin:0;text-align:right}@media(max-width:1100px){.vl-admin .vl-summary{grid-template-columns:1fr}.vl-admin .vl-summary-group dl{grid-template-columns:repeat(4,minmax(0,1fr))}.vl-admin .vl-summary-note{min-height:0}}@media(max-width:600px){.vl-admin .vl-summary-group dl{grid-template-columns:repeat(2,minmax(0,1fr))}.vl-admin .vl-summary-group{padding:15px}}
/* Synthèse plus compacte pour laisser davantage de place aux réservations. */
.vl-admin .vl-summary{gap:12px;margin:16px 0}
.vl-admin .vl-summary-group{padding:13px}
.vl-admin .vl-summary-group h2{font-size:15px;margin-bottom:5px}
.vl-admin .vl-summary-note{font-size:11px;min-height:0;margin-bottom:10px;line-height:1.35}
.vl-admin .vl-summary-group dl{gap:7px}
.vl-admin .vl-summary-item{padding:8px 10px}
.vl-admin .vl-summary-item dt{font-size:11px;min-height:0;line-height:1.3}
.vl-admin .vl-summary-item dd{margin-top:4px;font-size:20px;line-height:1.2}
.vl-admin .vl-summary-group:last-child .vl-summary-item{padding:8px 10px}
@media(min-width:1500px){.vl-admin .vl-summary-group dl{grid-template-columns:repeat(4,minmax(0,1fr))}.vl-admin .vl-summary-group:last-child dl{grid-template-columns:repeat(3,minmax(0,1fr))}.vl-admin .vl-summary-group:last-child .vl-summary-item{display:block}.vl-admin .vl-summary-group:last-child dd{text-align:left;margin-top:4px}.vl-admin .vl-summary-item dd{font-size:18px;overflow-wrap:normal}.vl-admin .vl-summary{grid-template-columns:1fr 1.25fr 1fr}}
@media(max-width:1100px){.vl-admin .vl-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.vl-admin .vl-summary-group dl{grid-template-columns:repeat(2,minmax(0,1fr))}.vl-admin .vl-summary-group:last-child{grid-column:1/-1}.vl-admin .vl-summary-group:last-child dl{grid-template-columns:repeat(3,minmax(0,1fr))}.vl-admin .vl-summary-group:last-child .vl-summary-item{display:block}.vl-admin .vl-summary-group:last-child dd{text-align:left;margin-top:4px}}
@media(max-width:600px){.vl-admin .vl-summary{grid-template-columns:1fr}.vl-admin .vl-summary-group:last-child dl{grid-template-columns:1fr}.vl-admin .vl-summary-group:last-child .vl-summary-item{display:flex}.vl-admin .vl-summary-group:last-child dd{margin:0;text-align:right}}

/* Balance the five attendance counters against three payment totals. */
@media(min-width:1101px){.vl-admin .vl-summary{grid-template-columns:1.2fr 1fr 1.2fr}}
.vl-admin .vl-summary-group:first-child dl{grid-template-columns:repeat(2,minmax(0,1fr))}
.vl-admin .vl-summary-group:first-child .vl-summary-item:nth-child(3){grid-column:1/-1}
.vl-admin .vl-summary-group:nth-child(2) dl{grid-template-columns:1fr}
.vl-admin .vl-summary-group:nth-child(2) .vl-summary-item{display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap}
.vl-admin .vl-summary-group:nth-child(2) dd{margin:0 0 0 auto;text-align:right;white-space:nowrap;overflow-wrap:normal;font-size:18px}
