.bbar-legal-gate,.bbar-legal-optional,.bbar-legal-consents{box-sizing:border-box;margin:16px 0;padding:18px;border:1px solid #dbe5f2;border-radius:16px;background:#fff;box-shadow:0 10px 28px rgba(20,45,80,.06)}
.bbar-legal-gate h2,.bbar-legal-optional h3,.bbar-legal-consents h3{margin-top:0;color:#12233f}
.bbar-legal-form{display:grid;gap:12px}.bbar-legal-registration,.bbar-legal-inline,.bbar-legal-gate-fields,.bbar-legal-optional-fields{display:grid;gap:10px;margin:10px 0}
.bbar-legal-requirement{padding:12px 13px;border:1px solid #dce6f3;border-radius:12px;background:#f8fbff}.bbar-legal-requirement.is-required{border-left:4px solid #3157e8}.bbar-legal-requirement.is-notice{border-left:4px solid #55a8d9}
.bbar-legal-requirement label{display:flex;align-items:flex-start;gap:9px;font-weight:600;line-height:1.45}.bbar-legal-requirement input[type=checkbox]{margin-top:3px}.bbar-legal-document{margin-top:8px}.bbar-legal-document summary{cursor:pointer;color:#3157e8;font-weight:700;font-size:.95rem}.bbar-legal-document__content{margin-top:8px;padding:12px;border-radius:10px;background:#fff;border:1px solid #e2e8f0;max-height:320px;overflow:auto}
.bbar-legal-optional{background:#f7fbff}.bbar-legal-consent-card{margin-top:12px;padding:14px;border:1px solid #e0e7ef;border-radius:12px;background:#fafcff}.bbar-legal-consent-card form{margin-top:10px}
@media(max-width:640px){.bbar-legal-gate,.bbar-legal-optional,.bbar-legal-consents{padding:14px;border-radius:12px}.bbar-legal-requirement{padding:11px 12px}}

.bbar-legal-participant-fields [data-bbar-legal-participant][hidden] { display: none !important; }

.bbar-legal-validation{margin:0 0 12px;padding:11px 13px;border:1px solid #f3b6b6;border-radius:10px;background:#fff2f2;color:#8f2020;font-weight:650;line-height:1.45}.bbar-legal-validation[hidden]{display:none!important}.bbar-legal-requirement.is-invalid{border-color:#d64545;background:#fff8f8}.bbar-legal-requirement.is-invalid input[type=checkbox]{outline:3px solid rgba(214,69,69,.2);outline-offset:2px}

/* BB-UX-CUSTOMER-01 — Account Center visual authority */
.bbar-legal-gate,.bbar-legal-optional,.bbar-legal-consents{
    border-color:#e4e8ef;
    border-radius:16px;
    background:#fff;
    color:#172033;
    box-shadow:0 8px 28px rgba(15,23,42,.055)
}
.bbar-legal-gate h2,.bbar-legal-optional h3,.bbar-legal-consents h3{color:#172033}
.bbar-legal-requirement{border-color:#e4e8ef;background:#f8fafc}
.bbar-legal-requirement.is-required{border-left-color:#175cd3}
.bbar-legal-requirement.is-notice{border-left-color:#84adff}
.bbar-legal-requirement input[type=checkbox]{accent-color:#175cd3}
.bbar-legal-document summary{color:#175cd3}
.bbar-legal-document__content{border-color:#e4e8ef;background:#fff}
.bbar-legal-optional{background:#f8fbff}
.bbar-legal-consent-card{border-color:#e4e8ef;background:#f8fafc}
.bbar-account-center-surface .bbar-account-delegated .bbar-legal-gate,
.bbar-account-center-surface .bbar-account-delegated .bbar-legal-optional,
.bbar-account-center-surface .bbar-account-delegated .bbar-legal-consents{margin-top:0}

/* BB-LEGAL-VJ-01 — compact, version-aware legal acceptance UX */
.bbar-legal-heading{display:flex;flex-direction:column;gap:3px;margin:0 0 4px}
.bbar-legal-heading strong{font-size:1rem;color:#12233f}
.bbar-legal-heading span{font-size:.88rem;line-height:1.45;color:#64748b}
.bbar-legal-requirement__meta{display:flex;flex-wrap:wrap;gap:8px;margin:8px 0 0 29px}
.bbar-legal-links{display:inline-flex;flex-wrap:wrap;gap:8px;align-items:center}
.bbar-legal-links a{display:inline-flex;align-items:center;min-height:32px;padding:5px 9px;border:1px solid #cbdaf0;border-radius:999px;background:#fff;color:#175cd3;text-decoration:none;font-size:.86rem;font-weight:700;line-height:1.2}
.bbar-legal-links a:hover,.bbar-legal-links a:focus{border-color:#175cd3;background:#f4f8ff}
.bbar-legal-version{font-weight:600;color:#64748b}
.bbar-legal-satisfied{display:flex;flex-wrap:wrap;align-items:center;gap:7px 10px;padding:10px 12px;border:1px solid #b7e4ca;border-radius:12px;background:#f2fbf6;color:#1f5135;font-size:.9rem;line-height:1.4}
.bbar-legal-satisfied__check{display:inline-grid;place-items:center;width:22px;height:22px;border-radius:50%;background:#d9f4e4;color:#08783f;font-weight:900}
.bbar-legal-satisfied .bbar-legal-links{margin-left:auto}
.bbar-legal-satisfied .bbar-legal-links a{border-color:#b7e4ca;color:#08783f;background:#fff}
@media(max-width:640px){
    .bbar-legal-requirement__meta{margin-left:0}
    .bbar-legal-satisfied{align-items:flex-start}
    .bbar-legal-satisfied .bbar-legal-links{width:100%;margin-left:29px}
}

/* Parent legal evidence — immutable personalized PDF card */
.bbar-parent-evidence-card{position:relative;display:grid;gap:14px;margin:14px 0;padding:16px;border:1px solid #d9e4f2;border-radius:16px;background:linear-gradient(145deg,#fff 0%,#f7faff 100%);box-shadow:0 12px 30px rgba(15,35,64,.08);overflow:hidden}
.bbar-parent-evidence-card::before{content:"";position:absolute;inset:0 auto 0 0;width:4px;background:#175cd3}
.bbar-parent-evidence-card--accepted{border-color:#cce7d8;background:linear-gradient(145deg,#fff 0%,#f4fbf7 100%)}
.bbar-parent-evidence-card--accepted::before{background:#08783f}
.bbar-parent-evidence-card__header{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:12px;align-items:center}
.bbar-parent-evidence-card__file{display:grid;place-items:center;width:44px;height:44px;border-radius:12px;background:#eaf2ff;color:#175cd3;font-size:.72rem;font-weight:900;letter-spacing:.08em;box-shadow:inset 0 0 0 1px rgba(23,92,211,.08)}
.bbar-parent-evidence-card--accepted .bbar-parent-evidence-card__file{background:#e8f7ee;color:#08783f}
.bbar-parent-evidence-card__copy{display:grid;gap:2px;min-width:0}
.bbar-parent-evidence-card__eyebrow{color:#175cd3;font-size:.72rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
.bbar-parent-evidence-card--accepted .bbar-parent-evidence-card__eyebrow{color:#08783f}
.bbar-parent-evidence-card__title{overflow:hidden;color:#172033;font-size:1rem;line-height:1.3;text-overflow:ellipsis}
.bbar-parent-evidence-card__meta{color:#667085;font-size:.84rem}
.bbar-parent-evidence-card__status{align-self:start;padding:5px 9px;border-radius:999px;background:#eef4ff;color:#175cd3;font-size:.75rem;font-weight:800;white-space:nowrap}
.bbar-parent-evidence-card--accepted .bbar-parent-evidence-card__status{background:#e8f7ee;color:#08783f}
.bbar-parent-evidence-card__action{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:46px;padding:10px 13px;border:1px solid #c8d8ef;border-radius:12px;background:#fff;color:#174ea6;text-decoration:none;font-weight:800;box-shadow:0 4px 12px rgba(23,92,211,.06);transition:border-color .16s ease,box-shadow .16s ease,transform .16s ease,background .16s ease}
.bbar-parent-evidence-card__action:hover,.bbar-parent-evidence-card__action:focus-visible{border-color:#175cd3;background:#f8fbff;box-shadow:0 8px 18px rgba(23,92,211,.12);transform:translateY(-1px)}
.bbar-parent-evidence-card__action:focus-visible{outline:3px solid rgba(23,92,211,.18);outline-offset:2px}
.bbar-parent-evidence-card__arrow{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:#eef4ff;color:#175cd3;font-size:1rem;flex:0 0 auto}
.bbar-parent-evidence-card--accepted .bbar-parent-evidence-card__action{border-color:#c4e2d1;color:#08783f}
.bbar-parent-evidence-card--accepted .bbar-parent-evidence-card__action:hover,.bbar-parent-evidence-card--accepted .bbar-parent-evidence-card__action:focus-visible{border-color:#08783f;background:#f7fcf9;box-shadow:0 8px 18px rgba(8,120,63,.1)}
.bbar-parent-evidence-card--accepted .bbar-parent-evidence-card__arrow{background:#e8f7ee;color:#08783f}
.bbar-parent-evidence-card__hint{margin:0;color:#667085;font-size:.82rem;line-height:1.45}
@media(max-width:640px){.bbar-parent-evidence-card{padding:14px;border-radius:14px}.bbar-parent-evidence-card__header{grid-template-columns:auto minmax(0,1fr)}.bbar-parent-evidence-card__status{grid-column:2;justify-self:start;margin-top:2px}.bbar-parent-evidence-card__action{min-height:44px}.bbar-parent-evidence-card__title{white-space:normal}}

/* Optional marketing consent on the participant profile and booking forms. */
.bbar-marketing-consent-card{padding:20px;border-color:#d8e5f3;border-radius:16px;background:linear-gradient(145deg,#fff,#f4f8ff);box-shadow:0 12px 28px rgba(21,55,99,.07)}
.bbar-marketing-consent-card__header{display:flex;justify-content:space-between;align-items:flex-start;flex-wrap:wrap;gap:12px}
.bbar-marketing-consent-card__header h4{margin:4px 0 0;color:#152b4b;font-size:1.06rem}
.bbar-marketing-consent-card__eyebrow{color:#175cd3;font-size:.72rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
.bbar-legal-consent-card__context{display:block;margin-bottom:5px;color:#53657f;font-size:.72rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase}
.bbar-marketing-consent-card__badges{display:flex;align-items:center;flex-wrap:wrap;gap:7px}
.bbar-marketing-consent-card__version,.bbar-marketing-consent-card__status{display:inline-flex;align-items:center;min-height:28px;padding:4px 9px;border-radius:999px;font-size:.78rem;font-weight:800;line-height:1.2}
.bbar-marketing-consent-card__version{background:#e8f0fc;color:#1751a4}
.bbar-marketing-consent-card__status.is-pending{background:#fff0d4;color:#8c5700}
.bbar-marketing-consent-card__status.is-granted{background:#e2f5e9;color:#08783f}
.bbar-marketing-consent-card__status.is-declined{background:#edf1f5;color:#475467}
.bbar-marketing-consent-card__hint{margin:12px 0 0;color:#53657f;font-size:.88rem;line-height:1.5}
.bbar-marketing-consent-card__actions{display:flex;align-items:center;flex-wrap:wrap;gap:10px;margin-top:14px}
.bbar-marketing-consent-card__actions form{margin:0}
.bbar-marketing-consent-card__actions .bbar-ui-button--secondary{border:1px solid #b9cbe4;background:#fff;color:#1751a4}
.bbar-marketing-consent-prompt{border-color:#d8e5f3;background:linear-gradient(145deg,#fff,#f4f8ff)}
.bbar-marketing-consent-prompt__choice{display:flex;align-items:center;gap:9px;margin:8px 0;padding:10px 12px;border:1px solid #dce5f2;border-radius:10px;background:#fff;cursor:pointer}
.bbar-marketing-consent-prompt__choice:focus-within{outline:2px solid #175cd3;outline-offset:2px}
.bbar-marketing-consent-prompt__choice input{accent-color:#175cd3}
@media(max-width:640px){.bbar-marketing-consent-card{padding:15px}.bbar-marketing-consent-card__actions form,.bbar-marketing-consent-card__actions button{width:100%}}
