.yhc-matchboard{max-width:1280px;margin:0 auto;padding:1.5rem}.yhc-mb-header{margin-bottom:1.25rem}.yhc-mb-header h1{margin-bottom:.4rem}.yhc-mb-filters,.yhc-mb-form{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;margin:1rem 0 1.5rem}.yhc-mb-filters label,.yhc-mb-form label{display:grid;gap:.35rem;font-weight:600}.yhc-mb-filters select,.yhc-mb-form input:not([type="hidden"]):not([type="checkbox"]):not([type="radio"]),.yhc-mb-form select:not([multiple]),.yhc-mb-dialog input:not([type="hidden"]):not([type="checkbox"]):not([type="radio"]),.yhc-mb-dialog select:not([multiple]){width:100%;box-sizing:border-box;height:var(--yhc-directory-control-height,46px);min-height:var(--yhc-directory-control-height,46px);max-height:var(--yhc-directory-control-height,46px);margin:0;padding:.55rem .65rem;border:1px solid #b8c0cc;border-radius:7px;background:#fff;color:inherit;font:inherit;line-height:1.2;vertical-align:middle}.yhc-mb-form textarea,.yhc-mb-dialog textarea{width:100%;box-sizing:border-box;margin:0;padding:.6rem .7rem;border:1px solid #b8c0cc;border-radius:7px;background:#fff;color:inherit;font:inherit}.yhc-mb-form textarea,.yhc-mb-dialog textarea{min-height:8rem;resize:vertical}.yhc-mb-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.yhc-mb-card,.yhc-mb-dashboard-card,.yhc-mb-submit{border:1px solid #d8dce2;border-radius:12px;padding:1rem;background:#fff;box-shadow:0 1px 2px rgba(0,0,0,.04)}.yhc-mb-card h2{margin:.4rem 0 .8rem;font-size:1.25rem}.yhc-mb-card__type{font-size:.8rem;font-weight:800;text-transform:uppercase;letter-spacing:.045em;opacity:.8}.yhc-mb-details{margin:1rem 0;display:grid;gap:.55rem}.yhc-mb-details div{display:grid;grid-template-columns:minmax(7rem,.8fr) 1.5fr;gap:.75rem}.yhc-mb-details dt{font-weight:700}.yhc-mb-details dd{margin:0}.yhc-mb-notes{white-space:normal}.yhc-mb-actions{display:flex;gap:.5rem;flex-wrap:wrap}.yhc-mb-submit{margin-top:2rem}.yhc-mb-form fieldset{grid-column:1/-1;border:1px solid #d8dce2;border-radius:8px;padding:1rem;margin:0;min-width:0}.yhc-mb-form legend{font-weight:700;padding:0 .25rem}.yhc-mb-check-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.45rem .8rem;max-height:18rem;overflow:auto;padding:.1rem}.yhc-mb-check-grid label{display:flex;align-items:flex-start;gap:.45rem;font-weight:400}.yhc-mb-check-grid input{width:auto;min-height:0;margin-top:.2rem}.yhc-mb-form__privacy,.yhc-mb-price-note{grid-column:1/-1;padding:.75rem .9rem;border-radius:7px;background:#f4f7fa}.yhc-mb-form__privacy{border-left:4px solid currentColor}.yhc-mb-price-note{margin:0}.yhc-mb-dialog[hidden]{display:none}.yhc-mb-dialog{position:fixed;inset:0;z-index:99999;background:rgba(0,0,0,.58);display:grid;place-items:center;padding:1rem}.yhc-mb-dialog__panel{position:relative;width:min(36rem,100%);max-height:90vh;overflow:auto;background:#fff;border-radius:12px;padding:1.25rem;box-shadow:0 20px 60px rgba(0,0,0,.3)}.yhc-mb-dialog__panel form{display:grid;gap:.9rem}.yhc-mb-dialog__panel label{display:grid;gap:.35rem;font-weight:600}.yhc-mb-dialog__close{position:absolute;right:.55rem;top:.35rem;border:0;background:transparent;font-size:2rem;line-height:1;min-width:44px;min-height:44px;cursor:pointer}.yhc-mb-hp{position:absolute!important;left:-99999px!important}.yhc-mb-notice{padding:.75rem 1rem;border:1px solid #ccd5df;border-radius:8px;margin:1rem 0;background:#f7fafc}.yhc-mb-dashboard-card{margin:1rem 0}.yhc-mb-dashboard-card details{margin:1rem 0}.yhc-mb-dashboard-card .yhc-mb-form{background:#f8fafc;padding:1rem;border-radius:8px}.yhc-mb-expiry{font-size:.92rem}.yhc-empty{padding:1rem 0}.yhc-button{display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box;height:var(--yhc-directory-control-height,46px);min-height:var(--yhc-directory-control-height,46px);max-height:var(--yhc-directory-control-height,46px);margin:0;padding:.55rem .9rem;border:1px solid currentColor;border-radius:7px;text-decoration:none;cursor:pointer;font:inherit;font-weight:700;line-height:1.2}.yhc-button--secondary{background:#fff}.yhc-mb-filters .yhc-button{align-self:end}.yhc-mb-card[hidden],[data-state-id][hidden]{display:none!important}
@media(max-width:900px){.yhc-mb-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.yhc-mb-filters,.yhc-mb-form{grid-template-columns:repeat(2,minmax(0,1fr))}.yhc-mb-check-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.yhc-matchboard{padding:1rem}.yhc-mb-grid,.yhc-mb-filters,.yhc-mb-form,.yhc-mb-check-grid{display:block}.yhc-mb-card,.yhc-mb-filters>*,.yhc-mb-form>*,.yhc-mb-check-grid>*{margin-bottom:.85rem}.yhc-mb-details div{grid-template-columns:1fr;gap:.1rem}.yhc-mb-actions{display:grid}.yhc-mb-actions>*{width:100%}.yhc-mb-dialog{padding:.5rem}.yhc-mb-dialog__panel{max-height:96vh;padding:1rem}.yhc-mb-form fieldset{padding:.8rem}}

.yhc-mb-preference-note{margin:.75rem 0 1rem;color:#526274;font-size:.95rem}

.yhc-mb-linked-event{margin:.65rem 0;font-weight:700}.yhc-mb-card__type{line-height:1.35}.yhc-mb-submit h2{scroll-margin-top:120px}

.yhc-mb-field-help{margin:.2rem 0 .75rem;color:#526274;font-size:.92rem}

/* v1.1.1 compact position selector + state-dependent metros */
.yhc-mb-position-picker{position:relative;align-self:end}
.yhc-mb-position-picker>summary{list-style:none;display:flex;align-items:center;box-sizing:border-box;height:var(--yhc-directory-control-height,46px);min-height:var(--yhc-directory-control-height,46px);max-height:var(--yhc-directory-control-height,46px);margin:0;padding:.55rem .65rem;border:1px solid #b8c0cc;border-radius:7px;background:#fff;font-weight:600;line-height:1.2;cursor:pointer}
.yhc-mb-position-picker>summary::-webkit-details-marker{display:none}
.yhc-mb-position-picker>summary:after{content:"▾";margin-left:auto;font-size:.8rem;opacity:.65}
.yhc-mb-position-picker[open]>summary:after{content:"▴"}
.yhc-mb-position-picker__menu{position:absolute;z-index:40;top:calc(100% + .25rem);left:0;right:0;display:grid;gap:.35rem;padding:.55rem;border:1px solid #b8c0cc;border-radius:7px;background:#fff;box-shadow:0 8px 24px rgba(0,0,0,.12)}
.yhc-mb-position-picker__menu label{display:flex!important;align-items:center;gap:.5rem;font-weight:500!important;margin:0!important}
.yhc-mb-position-picker__menu input[type=checkbox]{width:16px!important;height:16px!important;min-height:0!important;margin:0!important;padding:0!important;flex:0 0 16px}
[data-yhc-mb-metro-fieldset][hidden],[data-yhc-mb-public-metro-filter][hidden]{display:none!important}
@media(max-width:600px){.yhc-mb-position-picker__menu{position:static;margin-top:.25rem;box-shadow:none}}


/* v1.1.2 — YHC SITEWIDE SINGLE-LINE CONTROL CONTRACT
   YHC already defines 46px as the platform control height. Matchboard must not
   invent a separate geometry. Exact height/min/max prevents Safari native select
   controls from rendering shorter than adjacent text/number/date inputs. */
.yhc-matchboard{--yhc-mb-control-height:var(--yhc-directory-control-height,46px)}
.yhc-mb-filters label,.yhc-mb-form label,.yhc-mb-dialog__panel label{min-width:0;margin:0}
.yhc-mb-filters select,
.yhc-mb-form input:not([type="hidden"]):not([type="checkbox"]):not([type="radio"]),
.yhc-mb-form select:not([multiple]),
.yhc-mb-dialog input:not([type="hidden"]):not([type="checkbox"]):not([type="radio"]),
.yhc-mb-dialog select:not([multiple]),
.yhc-mb-position-picker>summary,
.yhc-mb-filters .yhc-button,
.yhc-mb-form .yhc-button,
.yhc-mb-dialog .yhc-button{
  box-sizing:border-box;
  height:var(--yhc-mb-control-height);
  min-height:var(--yhc-mb-control-height);
  max-height:var(--yhc-mb-control-height);
  margin:0;
  line-height:1.2;
  vertical-align:middle;
}
.yhc-mb-filters select,
.yhc-mb-form input:not([type="hidden"]):not([type="checkbox"]):not([type="radio"]),
.yhc-mb-form select:not([multiple]),
.yhc-mb-dialog input:not([type="hidden"]):not([type="checkbox"]):not([type="radio"]),
.yhc-mb-dialog select:not([multiple]),
.yhc-mb-position-picker>summary{padding:.55rem .65rem}
.yhc-mb-form textarea,.yhc-mb-dialog textarea{height:auto;max-height:none;min-height:8rem}
.yhc-mb-position-picker__menu input[type="checkbox"]{width:16px!important;height:16px!important;min-height:16px!important;max-height:16px!important}

/* v1.1.5 — compact above-the-fold layout + explicit location scope */
.yhc-matchboard-page .site-main.yhc-section{padding-top:1.15rem}
.yhc-matchboard-page .site-main article>h1{margin:0 0 .65rem;font-size:clamp(2rem,3vw,2.55rem);line-height:1.08}
.yhc-matchboard{padding:.15rem 0 1.25rem}
.yhc-mb-scopebar{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin:0 0 .7rem;padding:.45rem .7rem;border:1px solid #d8e1e8;border-radius:8px;background:#f7fafc;color:#526274;font-size:.95rem}
.yhc-mb-scopebar strong{color:inherit}
.yhc-mb-scopebar a{font-weight:700;white-space:nowrap}
.yhc-mb-filters{margin:.55rem 0 .85rem;gap:.75rem}
.yhc-mb-grid{gap:.8rem}
.yhc-mb-submit{margin-top:1rem;padding:.9rem}
.yhc-mb-submit>h2{margin:0 0 .65rem;font-size:clamp(1.65rem,2.5vw,2rem)}
.yhc-mb-form{margin:.65rem 0 1rem;gap:.75rem}
.yhc-empty{margin:.15rem 0 .7rem;padding:.65rem .8rem}
.yhc-mb-notice{margin:.35rem 0 .7rem}
@media(max-width:600px){.yhc-matchboard-page .site-main.yhc-section{padding-top:.8rem}.yhc-matchboard-page .site-main article>h1{margin-bottom:.5rem}.yhc-mb-scopebar{align-items:flex-start;flex-direction:column}.yhc-mb-scopebar a{white-space:normal}}

/* v1.1.6 — conditional-field visibility contract.
   Form layout rules must never override the HTML hidden attribute. */
.yhc-mb-form [hidden]{display:none!important}


/* v1.1.13 — compact decision-only public Matchboard cards */
.yhc-mb-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:.65rem}
.yhc-mb-card{padding:.68rem .72rem;border-radius:9px;box-shadow:none;font-size:.82rem;line-height:1.25;min-width:0}
.yhc-mb-card__type{font-size:.68rem;line-height:1.15;letter-spacing:.04em}
.yhc-mb-card h2{margin:.2rem 0 .45rem;font-size:1rem;line-height:1.18}
.yhc-mb-details{margin:.4rem 0 .55rem;gap:.28rem}
.yhc-mb-details div{grid-template-columns:minmax(5.7rem,.78fr) 1.35fr;gap:.42rem}
.yhc-mb-details dt{font-size:.78rem}.yhc-mb-details dd{font-size:.8rem;overflow-wrap:anywhere}
.yhc-mb-notes{margin:.42rem 0 .5rem;font-size:.78rem;line-height:1.28;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.yhc-mb-linked-event{margin:.42rem 0;font-size:.78rem}
.yhc-mb-actions{gap:.3rem;margin-top:.15rem}
.yhc-mb-card .yhc-mb-actions .yhc-button{
  height:34px!important;min-height:34px!important;max-height:34px!important;
  padding:.3rem .52rem!important;border-radius:6px;font-size:.74rem!important;line-height:1!important
}
@media(max-width:1100px){.yhc-mb-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:850px){.yhc-mb-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.yhc-mb-grid{display:grid;grid-template-columns:1fr}.yhc-mb-card{padding:.72rem}.yhc-mb-details div{grid-template-columns:minmax(6rem,.7fr) 1.3fr;gap:.45rem}}


/* v1.1.15 — denser Matchboard cards with hover/focus expansion */
.yhc-mb-card{padding:.54rem .58rem;font-size:.78rem;line-height:1.2;transition:box-shadow .16s ease,transform .16s ease}
.yhc-mb-card:focus{outline:2px solid currentColor;outline-offset:2px}
.yhc-mb-card h2{margin:.16rem 0 .34rem;font-size:.95rem;line-height:1.14}
.yhc-mb-card__type{font-size:.64rem;line-height:1.1}
.yhc-mb-details{margin:.3rem 0 .38rem;gap:.18rem}
.yhc-mb-details div{grid-template-columns:minmax(5.15rem,.72fr) 1.4fr;gap:.32rem}
.yhc-mb-details dt{font-size:.73rem}.yhc-mb-details dd{font-size:.76rem}
.yhc-mb-card__secondary,.yhc-mb-notes--secondary{max-height:0;opacity:0;overflow:hidden;margin:0;transition:max-height .18s ease,opacity .15s ease,margin .15s ease}
.yhc-mb-card:hover .yhc-mb-card__secondary,.yhc-mb-card:focus .yhc-mb-card__secondary,.yhc-mb-card:focus-within .yhc-mb-card__secondary,.yhc-mb-card:hover .yhc-mb-notes--secondary,.yhc-mb-card:focus .yhc-mb-notes--secondary,.yhc-mb-card:focus-within .yhc-mb-notes--secondary{max-height:18rem;opacity:1;margin-top:.28rem}
.yhc-mb-details--secondary{margin:0; padding-top:.2rem; border-top:1px solid #edf0f3}
.yhc-mb-linked-event{margin:.28rem 0;font-size:.73rem}
.yhc-mb-actions{gap:.25rem;margin-top:.1rem}
.yhc-mb-card .yhc-mb-actions .yhc-button{height:31px!important;min-height:31px!important;max-height:31px!important;padding:.24rem .44rem!important;font-size:.7rem!important}
@media(hover:hover){.yhc-mb-card:hover{box-shadow:0 5px 16px rgba(0,0,0,.09);transform:translateY(-1px)}}
@media(max-width:600px){.yhc-mb-card{font-size:.8rem}.yhc-mb-card__secondary,.yhc-mb-notes--secondary{max-height:none;opacity:1;overflow:visible;margin-top:.28rem}.yhc-mb-details--secondary{padding-top:.25rem}}


/* v1.1.16 — combined post-type filter + single-row desktop filter bar */
.yhc-mb-filters{
  grid-template-columns:repeat(auto-fit,minmax(145px,1fr));
  column-gap:.55rem;
  row-gap:.45rem;
  align-items:end;
}
.yhc-mb-filters label{gap:.22rem;font-size:.9rem}
.yhc-mb-filters label>span{line-height:1.1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.yhc-mb-filters select{padding-left:.5rem;padding-right:.5rem;font-size:.94rem}
.yhc-mb-filters .yhc-button{width:auto;justify-self:start;padding-left:.7rem;padding-right:.7rem}
@media(min-width:901px){
  .yhc-mb-filters{display:flex;flex-wrap:nowrap;gap:.55rem}
  .yhc-mb-filters>label{flex:1 1 0;min-width:0}
  .yhc-mb-filters>[data-yhc-mb-public-metro-filter][hidden]{display:none!important}
  .yhc-mb-filters .yhc-button{flex:0 0 auto}
}
@media(max-width:900px){.yhc-mb-filters{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.yhc-mb-filters{display:block}.yhc-mb-filters label>span{white-space:normal}}


/* v1.1.17 — owner delete control on My Matchboard */
.yhc-mb-delete-form{margin-top:.7rem}
.yhc-mb-delete-form .yhc-button--danger{background:#fff;border-color:#b42318;color:#b42318}
.yhc-mb-delete-form .yhc-button--danger:hover,.yhc-mb-delete-form .yhc-button--danger:focus{background:#fff5f4}

/* v1.1.24: keep the public Matchboard focused on browsing; posting lives on its own page. */
.yhc-mb-post-action{display:flex;justify-content:flex-end;margin:0 0 14px}
.yhc-mb-post-page .yhc-mb-submit{margin-top:0}
@media (max-width:700px){.yhc-mb-post-action{justify-content:stretch}.yhc-mb-post-action .yhc-button{width:100%;text-align:center}}


/* v1.1.26 — highlight the actual Matchboard post-type title, not the team name. */
.yhc-mb-card__type{
  display:flex;
  align-items:center;
  box-sizing:border-box;
  width:100%;
  height:2.9rem;
  margin:0 0 .34rem;
  padding:.34rem .46rem;
  border:1px solid #c8d4e1;
  border-left:4px solid #173f67;
  border-radius:6px;
  background:#f5f8fb;
  color:#173f67;
  font-size:.76rem;
  font-weight:900;
  line-height:1.12;
  letter-spacing:.025em;
  opacity:1;
}

/* Team name remains exactly in the compact v1.1.24 treatment. */
.yhc-mb-card h2{
  margin:.16rem 0 .34rem;
  padding:0;
  border:0;
  border-radius:0;
  background:transparent;
  color:inherit;
  font-size:.95rem;
  font-weight:inherit;
  line-height:1.14;
  letter-spacing:normal;
}

@media(max-width:600px){
  .yhc-mb-card__type{
    height:auto;
    min-height:2.9rem;
    font-size:.78rem;
    padding:.38rem .48rem;
  }
}


/* v1.1.27 — increase team-name prominence only; post-type title treatment is unchanged. */
.yhc-mb-card h2{
  font-size:1.1rem;
  font-weight:800;
}

/* v1.1.28 — prevent a small number of meaningful public filters from stretching across the full desktop row.
   Visible filters may share available space, but each control is capped at 300px.
   This keeps a lone Position selector compact while preserving the existing 46px control height,
   one-row behavior when several filters are available, and full-width mobile controls. */
@media(min-width:901px){
  .yhc-mb-filters>label{
    flex:1 1 170px;
    min-width:145px;
    max-width:300px;
  }
}


/* v1.1.29 — Clear Filters visibility/alignment fix.
   The button is rendered with the HTML hidden attribute until a real filter is active.
   Explicitly honor that attribute despite the shared .yhc-button display rule, then keep
   the visible secondary action labeled and pinned to the far right of the desktop filter row. */
.yhc-mb-filters [data-yhc-mb-clear][hidden]{
  display:none!important;
}
.yhc-mb-filters [data-yhc-mb-clear]{
  color:#173f6b;
  border-color:#b8c0cc;
  background:#fff;
}
@media(min-width:901px){
  .yhc-mb-filters [data-yhc-mb-clear]{
    flex:0 0 auto;
    margin-left:auto;
    align-self:flex-end;
  }
}
