/* Manager layout and print support. Public cards reuse the active theme classes. */
:where(.boc-grid,.boc-panel,.boc-notice){--boc-accent:var(--wp--preset--color--apple-brown,#7a4e2a);--boc-surface:var(--wp--preset--color--white,#fff);--boc-soft:var(--wp--preset--color--juice-cream,#f7f4e9);--boc-border:color-mix(in srgb,currentColor 22%,transparent);--boc-radius:var(--bo-radius-small,.75rem);color:inherit;line-height:inherit}
:where(.boc-grid){display:grid;gap:1.25rem}
:where(.boc-card,.boc-panel){padding:clamp(1rem,3vw,1.75rem);margin:1rem 0;border:1px solid #ddd;border-color:var(--boc-border,#ddd);border-radius:var(--boc-radius,.75rem);background:var(--boc-surface,#fff)}
:where(.boc-form){display:grid;gap:1rem}
:where(.boc-form label,.boc-session-notes){display:grid;gap:.35rem}
:where(.boc-form input,.boc-form select,.boc-form textarea,.boc-session-form input,.boc-session-form select,.boc-session-form textarea,.boc-inline-form input){font:inherit;color:inherit;box-sizing:border-box;max-width:100%;padding:.65em;border:1px solid #aaa;border-color:var(--boc-border,#aaa);border-radius:.35em;background:var(--boc-surface,#fff)}
:where(.boc-form input,.boc-form select,.boc-form textarea,.boc-session-notes textarea){width:100%}
:where(.boc-form input[type=checkbox],.boc-form input[type=radio]){width:auto;justify-self:start}
:where(.boc-panel button,.boc-card button,.boc-btn){font:inherit;cursor:pointer;display:inline-block;width:auto;padding:.7em 1.2em;background:var(--boc-accent,#7a4e2a);color:var(--wp--preset--color--white,#fff);border:1px solid transparent;border-radius:var(--bo-radius-small,.5em);text-decoration:none}
:where(.boc-panel,.boc-card) :where(button,input,select,textarea,summary,a):focus-visible{outline:2px solid currentColor;outline-offset:3px}
:where(.boc-panel,.boc-card) :where(details){margin:1rem 0}
:where(.boc-panel,.boc-card) :where(summary){cursor:pointer;padding:.4rem 0}
:where(.boc-form fieldset){margin:0;padding:1rem;border:1px solid #ddd;border-color:var(--boc-border,#ddd);border-radius:var(--boc-radius,.75rem)}
:where(.boc-help,.boc-kicker){font-size:.9em}
:where(.boc-kicker){font-weight:600}
:where(.boc-notice){padding:1rem;margin:1rem 0;border:1px solid currentColor;border-radius:var(--boc-radius,.75rem)}
:where(.boc-success){background:var(--wp--preset--color--pale-apple,#f1f8ed)}
:where(.boc-error){background:#fff1ed}
:where(.boc-two){display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}
:where(.boc-table-wrap){overflow-x:auto}
:where(.boc-table){width:100%;border-collapse:collapse;font-size:.9em}
:where(.boc-table th,.boc-table td){border:1px solid #ddd;border-color:var(--boc-border,#ddd);padding:.5em;text-align:left;vertical-align:top}
:where(.boc-table th){background:var(--boc-soft,#f7f4e9)}
:where(.boc-small){max-width:6em}
:where(.boc-mini){max-width:4em}
:where(.boc-event-row,.boc-past-row){display:flex;justify-content:space-between;gap:1rem;padding:1rem 0;border-bottom:1px solid #ddd}
:where(.boc-event-row span,.boc-past-row span){display:block;font-size:.9em}
:where(.boc-event-actions,.boc-danger-zone,.boc-inline-form,.boc-session-totals){display:flex;flex-wrap:wrap;align-items:center;gap:.75rem}
:where(.boc-danger-zone,.boc-session-totals){margin:1rem 0;padding:1rem;background:var(--boc-soft,#f7f4e9);border-radius:var(--boc-radius,.75rem)}
:where(.boc-sign-line){display:block;margin-top:.5rem;white-space:nowrap;font-size:.8em}
:where(.boc-print-only){display:none}
@media(max-width:760px){:where(.boc-two){grid-template-columns:1fr}:where(.boc-event-row,.boc-past-row){display:block}}
@media print{
 @page{size:landscape;margin:12mm}
 body:has(.boc-manage-event) *{visibility:hidden!important}
 .boc-manage-event,.boc-manage-event *{visibility:visible!important}
 .boc-manage-event{position:absolute;left:0;top:0;width:100%;margin:0;padding:0;border:0;background:white;color:black}
 .boc-manage-event .boc-no-print,.boc-manage-event button,.boc-manage-event .boc-btn{display:none!important}
 .boc-manage-event .boc-print-only{display:block!important}
 .boc-manage-event .boc-table-wrap{overflow:visible}
 .boc-manage-event .boc-table{font-size:8.5pt}
 .boc-manage-event .boc-table th,.boc-manage-event .boc-table td{padding:2mm;border:1px solid black;color:black;background:white}
 .boc-manage-event input,.boc-manage-event select{border:0;padding:0;appearance:none;font-size:inherit;background:transparent;color:black}
 .boc-manage-event .boc-photo-consent-note{margin-top:5mm;border:1px solid black;padding:3mm;font-size:9pt}
}

/* Public list: structure and compact spacing only. bo-home-promo,
   bo-cj-confirmation, bo-native-form and WordPress button classes own appearance. */
.boc-events-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,31rem),1fr));gap:var(--wp--preset--spacing--40,1rem);align-items:start}
.boc-event-card{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.75rem 1rem;padding:var(--wp--preset--spacing--50,1.5rem);min-width:0;box-sizing:border-box}
.boc-event-copy{grid-column:1/-1;display:grid;gap:.4rem;min-width:0}
.boc-event-meta{font-size:.9em;overflow-wrap:anywhere}
.boc-event-card .boc-event-availability{align-self:center;margin:0}
.boc-event-booking{min-width:0;margin:0}
.boc-event-booking>summary{list-style:none;display:inline-block;height:auto;white-space:normal}
.boc-event-booking>summary::-webkit-details-marker{display:none}
.boc-event-booking[open]{grid-column:1/-1}
.boc-booking-body{padding-top:1rem}
.boc-booking-information{margin-bottom:1rem}
.boc-public-form{min-width:0}
.boc-public-form>label,.boc-public-form>fieldset{min-width:0}
:where(.boc-public-form input,.boc-public-form select,.boc-public-form textarea){font:inherit;max-width:100%}
.boc-public-form select{min-width:0}
@media(max-width:620px){.boc-event-card{grid-template-columns:minmax(0,1fr);padding:1rem}.boc-event-booking{grid-column:1/-1}.boc-public-form{grid-template-columns:minmax(0,1fr)}.boc-public-form .bo-course-form-wide{grid-column:1/-1}}
.boc-interest-panel{padding:var(--wp--preset--spacing--50,1.5rem)}.boc-interest-panel>p{margin-bottom:1rem}.boc-interest-experience{min-width:0}.boc-interest-experience textarea{width:100%;box-sizing:border-box}
/* Separate booking cards gently from the native POP cream panel. */
.bo-pop-events .boc-event-card{background:rgba(255,255,255,.94);border-color:rgba(122,78,42,.22);border-color:color-mix(in srgb,var(--wp--preset--color--apple-brown,#7a4e2a) 22%,transparent)}

/* Thumbnail layout; the active theme owns card corners via bo-booking-panel. */
.boc-event-intro{grid-column:1/-1;display:flex;align-items:flex-start;gap:1rem;min-width:0}.boc-event-intro .boc-event-copy{flex:1}.boc-event-thumbnail{width:96px;height:96px;object-fit:cover;border-radius:var(--bo-radius-small,12px);flex-shrink:0}.boc-image-preview{width:96px;height:96px;object-fit:cover}.boc-event-image-fields{min-width:0}.boc-event-image-fields input{max-width:100%}
@media(max-width:420px){.boc-event-thumbnail{width:72px;height:72px}.boc-event-intro{gap:.75rem}}
