/* Limited to the OHGA date fields and their dialog; keeps the existing website design. */
.ohga-cf7-dates{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin:14px 0;color:#222;line-height:1.7;font-family:inherit}
.ohga-cf7-dates .ohga-cf7-choice{display:flex;flex-direction:column;gap:10px;min-width:0}
.ohga-cf7-choice strong{font-size:16px;font-weight:600}.ohga-cf7-choice small{font-size:14px;font-weight:500;margin-left:8px;color:#4f594f}
.ohga-cf7-dates button,.ohga-cf7-dialog button{box-sizing:border-box;min-height:44px;padding:12px 14px;border:1px solid #c9cec5;background:#fff;color:#222;font-family:inherit;font-size:16px;line-height:1.5;letter-spacing:normal;border-radius:3px;cursor:pointer;box-shadow:none;text-transform:none}
.ohga-cf7-dates [data-ohga-pick]{width:100%;text-align:left;white-space:normal;font-weight:500}
.ohga-cf7-dates [data-ohga-clear]{align-self:flex-start;min-height:44px;padding:3px 0;border:0;background:transparent;color:#4f594f;font-size:14px;text-decoration:underline}
.ohga-cf7-dates [hidden]{display:none!important}
.ohga-cf7-dates .ohga-cf7-note,.ohga-cf7-dates .ohga-cf7-error,.ohga-cf7-dates noscript{grid-column:1/-1;display:block;margin:0}
.ohga-cf7-note{font-size:14px;color:#4f594f;line-height:1.8}.ohga-cf7-error{font-size:14px;color:#9c352c;line-height:1.8}
.ohga-cf7-dates .ohga-cf7-error:empty{display:none}
.ohga-cf7-dialog{box-sizing:border-box;width:min(540px,calc(100% - 24px));max-height:90dvh;padding:24px;border:1px solid #dadcd6;border-radius:8px;color:#252c26;background:#fff;box-shadow:0 16px 80px #0003;font-family:system-ui,-apple-system,sans-serif;line-height:1.6;overscroll-behavior:contain}
.ohga-cf7-dialog::backdrop{background:#0006}.ohga-cf7-dialog:not([open]){display:none}
.ohga-cf7-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:20px}.ohga-cf7-head h2{font-family:inherit;font-size:20px;letter-spacing:normal;line-height:1.5;margin:0}.ohga-cf7-head button{font-size:24px;border:0;padding:0 12px}
.ohga-cf7-month{display:flex;align-items:center;justify-content:space-between;margin:16px 0}.ohga-cf7-month button{padding:2px 16px;font-size:24px}
.ohga-cf7-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:5px}.ohga-cf7-grid>span{text-align:center;padding:5px 0;color:#4f594f;font-size:14px}.ohga-cf7-grid button{padding:8px 0;min-width:0;border-color:#ddd;font-size:16px;min-height:44px}
.ohga-cf7-dialog h3{font-family:inherit;font-size:16px;line-height:1.5;margin:22px 0 12px;letter-spacing:normal}.ohga-cf7-times{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.ohga-cf7-times button{padding:10px 4px}
.ohga-cf7-dates button.is-selected,.ohga-cf7-dialog button.is-selected{background:#304835;color:#fff;border-color:#304835}.ohga-cf7-dialog button:disabled{background:#f6f6f3;color:#b1b4ae;cursor:default;border-color:transparent}
.ohga-cf7-dates button:focus-visible,.ohga-cf7-dialog button:focus-visible{outline:3px solid #6b835b;outline-offset:2px}
@media(max-width:600px){.ohga-cf7-dates{grid-template-columns:1fr;gap:18px}.ohga-cf7-dialog{padding:18px}.ohga-cf7-times{grid-template-columns:repeat(3,minmax(0,1fr))}}
/* The original CF7 form is styled only when it contains OHGA's date selector. */
.wpcf7 form.ohga-visit-form{font-family:system-ui,-apple-system,"Hiragino Sans","Noto Sans JP",sans-serif;font-size:16px;font-weight:500;line-height:1.8;color:#202722}
.wpcf7 form.ohga-visit-form p,.wpcf7 form.ohga-visit-form label,.wpcf7 form.ohga-visit-form legend{font-size:16px;line-height:1.8;color:#202722}
.wpcf7 form.ohga-visit-form label,.wpcf7 form.ohga-visit-form legend{font-weight:600}
.wpcf7 form.ohga-visit-form input:not([type=hidden]):not([type=checkbox]):not([type=radio]):not([type=submit]),.wpcf7 form.ohga-visit-form textarea,.wpcf7 form.ohga-visit-form select{font-family:inherit;font-size:16px;font-weight:500;line-height:1.6;color:#202722;background:#fff;border:1px solid #869286;border-radius:6px;padding:13px 14px;min-height:48px}
.wpcf7 form.ohga-visit-form input::placeholder,.wpcf7 form.ohga-visit-form textarea::placeholder{color:#626c63;opacity:1}
.wpcf7 form.ohga-visit-form input[type=submit],.wpcf7 form.ohga-visit-form button[type=submit]{font-size:17px;font-weight:600;min-height:50px;border-radius:6px}
.ohga-cf7-dates .ohga-cf7-choice{padding:18px;border:1px solid #d7dcd6;border-radius:6px;background:#fff}
.ohga-cf7-choice strong{font-size:17px;color:#202722}.ohga-cf7-choice small{font-size:14px;color:#4f594f}
.ohga-cf7-dates [data-ohga-pick]{font-size:16px;min-height:48px;border-radius:6px;border-color:#869286;font-weight:600}
.ohga-cf7-note{font-size:14px;color:#4f594f}.ohga-cf7-dialog{font-size:16px;font-weight:500;line-height:1.8;box-shadow:0 12px 40px #0003}
.ohga-cf7-dialog button{font-weight:600}.ohga-cf7-dialog h3{font-size:18px}.ohga-cf7-grid>span{font-size:14px;color:#4f594f}

/* Unavailable times remain visible without revealing the calendar or event details. */
.ohga-cf7-dialog .ohga-cf7-times button:disabled,
.ohga-cf7-dialog .ohga-cf7-times button:disabled:hover {
  background:#f0f0f0;color:#777;border:1px solid #dedede;
  opacity:1;cursor:not-allowed;box-shadow:none;
}
.ohga-cf7-dialog .ohga-cf7-times button small {display:block;font-size:12px;font-weight:500;line-height:1.5;margin-top:2px;color:inherit;}
.ohga-cf7-dialog .ohga-cf7-grid button.is-full {background:#f0f0f0;color:#777;border-color:#dedede;}
.ohga-cf7-dialog .ohga-cf7-grid button.is-full.is-selected {outline:2px solid #647064;outline-offset:-2px;}
.ohga-cf7-dialog .ohga-cf7-grid button.is-full small {display:block;font-size:12px;line-height:1;margin-top:2px;}
@media (forced-colors:active) {
  .ohga-cf7-dialog .ohga-cf7-times button:disabled {color:GrayText;border-color:GrayText;background:Canvas;}
}
