/* BFC Core: uses the theme's colour tokens, with fallbacks if another theme is active. */
.bfc-box{max-width:1140px;margin:1rem auto;padding:1.25rem;background:var(--wp--preset--color--surface,#fff);border:1px solid var(--wp--preset--color--line,#dfe5f0);border-radius:var(--bfc-radius,20px)}
.bfc-dash,.bfc-slot form{max-width:760px;margin-inline:auto}
.bfc-notice{padding:.75rem 1rem;border-radius:12px;font-weight:600;margin:0 0 1rem}
.bfc-notice--ok{background:#e7f6ee;color:#0a5b32;border:1px solid #9ad7b7}
.bfc-notice--error{background:#fdeaec;color:#8f0e1d;border:1px solid #f0a3ac}
.bfc-hp{position:absolute;left:-9999px;height:0;overflow:hidden}
.bfc-field{margin:0 0 1rem}.bfc-field label{display:block;font-weight:600;margin-bottom:.3rem}
.bfc-field input[type=text],.bfc-field input[type=tel],.bfc-field input[type=email],.bfc-field input[type=number],.bfc-field select,.bfc-field textarea{width:100%;min-height:48px;padding:.6rem .85rem;border:1.5px solid var(--wp--preset--color--line,#c9d3e6);border-radius:12px;font:inherit;background:var(--wp--preset--color--surface,#fff);color:inherit}
.bfc-btn{display:inline-flex;justify-content:center;align-items:center;min-height:48px;padding:.65rem 1.4rem;border:0;border-radius:999px;font-weight:700;cursor:pointer;text-decoration:none;font:inherit;font-weight:700}
.bfc-btn--blue{background:var(--wp--preset--color--blue,#0b3d91);color:#fff}.bfc-btn--red{background:var(--wp--preset--color--red,#d5122a);color:#fff}
.bfc-actions{display:flex;flex-wrap:wrap;gap:.75rem;margin:1.25rem 0}
.bfc-idcard{max-width:420px;margin:1rem 0;padding:1.25rem;border-radius:20px;color:#fff;background:linear-gradient(135deg,#06245c,#0b3d91 60%,#d5122a);box-shadow:0 18px 40px rgba(6,36,92,.25)}
.bfc-idcard__top{display:flex;justify-content:space-between;gap:1rem;font-size:.85rem;opacity:.9}.bfc-idcard__name{font-size:1.5rem;font-weight:800;margin:.9rem 0}
.bfc-idcard__dl{display:grid;grid-template-columns:1fr 1fr;gap:.6rem 1rem;margin:0}.bfc-idcard__dl dt{font-size:.7rem;text-transform:uppercase;letter-spacing:.06em;opacity:.75}.bfc-idcard__dl dd{margin:0;font-weight:700}
.bfc-tablewrap{overflow-x:auto}.bfc-table{width:100%;border-collapse:collapse}.bfc-table th,.bfc-table td{padding:.6rem;text-align:left;border-bottom:1px solid var(--wp--preset--color--line,#dfe5f0)}
.bfc-radios{border:0;padding:0;margin:0 0 1rem}.bfc-radios label{display:block;padding:.5rem 0}
.bfc-prod img{width:100%;height:auto;border-radius:12px}.bfc-price{font-weight:800;font-size:1.15rem}.bfc-qty{width:5rem;min-height:40px}
.bfc-danger{margin-top:2rem;padding:1rem;border:1px dashed #d5122a;border-radius:12px}.bfc-danger summary{cursor:pointer;font-weight:700;color:#8f0e1d}
.bfc-eventmeta{list-style:none;padding:1rem;margin:0 0 1.25rem;background:var(--wp--preset--color--surface,#f4f7fc);border-radius:12px}
