.clp-public{font-family:Arial,sans-serif;color:#182b40;max-width:720px;margin:24px auto;padding:24px;border:1px solid #d3dce5;border-radius:12px;background:white;box-sizing:border-box}.clp-public *{box-sizing:border-box}
.clp-public h2{font-size:26px;color:#174977;margin:0 0 14px}.clp-public h3{font-size:19px;color:#174977}.clp-public p{line-height:1.5}
.clp-public label{display:block;font-weight:600;margin:14px 0 6px}.clp-public input{display:block;width:100%;max-width:100%;padding:11px;margin-top:6px;border:1px solid #98aabd;border-radius:5px;font:16px Arial;background:#fff;color:#182b40;height:auto;min-height:44px}
.clp-public input[type=date]{max-width:260px}.clp-public button{border:1px solid #174977;border-radius:5px;background:#174977;color:white;padding:11px 16px;font:16px Arial;cursor:pointer;min-height:44px}.clp-public button:disabled{opacity:.6;cursor:wait}
#clp-public-times{display:flex;gap:8px;flex-wrap:wrap;margin:18px 0}.clp-public .clp-time-choice{background:#eff5fc;color:#174977}.clp-public .clp-time-choice[aria-pressed=true]{background:#174977;color:white}
.clp-public-contact{display:grid;grid-template-columns:1fr 1fr;gap:15px}.clp-public-check{display:flex;gap:12px;align-items:end;margin:16px 0}.clp-public-check input{max-width:120px}.clp-public-check button{background:white;color:#174977}
.clp-public-note{font-size:13px;color:#526579}.clp-public-trap{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}
.clp-public [hidden]{display:none!important}#clp-public-result{padding:20px;background:#e7f2e9;border-left:4px solid #35764c;white-space:pre-line;line-height:1.6}.clp-public button:focus-visible,.clp-public input:focus-visible{outline:3px solid #76a9df;outline-offset:2px}
@media(max-width:520px){.clp-public{padding:16px}.clp-public-contact{grid-template-columns:1fr;gap:0}}

/* Override theme/code-block typography without affecting the rest of the site. */
.clp-public,.clp-public p,.clp-public label,.clp-public div{font-family:Arial,sans-serif!important;font-size:16px!important;line-height:1.5!important;letter-spacing:normal!important;white-space:normal}
.clp-public h2{font-family:Arial,sans-serif!important;font-size:26px!important;line-height:1.25!important}
.clp-public h3{font-family:Arial,sans-serif!important;font-size:19px!important}
.clp-public .clp-public-note{font-size:14px!important}
.clp-public #clp-public-result{white-space:pre-line}

.clp-public #clp-calendar{max-width:420px;margin:16px 0 22px;border:1px solid #cbd5e1;border-radius:12px;padding:12px;background:#fff}
.clp-public .clp-calendar-nav{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}
.clp-public .clp-calendar-nav strong{text-transform:capitalize}
.clp-public .clp-calendar-week,.clp-public #clp-calendar-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px;text-align:center}
.clp-public #clp-calendar button{min-width:0;margin:0;float:none;font-size:16px!important;line-height:1.2!important;padding:10px 2px;min-height:40px}
.clp-public #clp-calendar-days button{width:100%;background:#eef4ff;color:#234575;border:1px solid #b9cce8;border-radius:6px}
.clp-public #clp-calendar-days .clp-day-unavailable{text-decoration:line-through!important;background:#f1f2f4;color:#777;border-color:#e3e5e8;opacity:1;cursor:not-allowed}
.clp-public #clp-calendar-days button[aria-pressed=true]:not(:disabled){background:#284c7d;color:#fff;border-color:#284c7d}
.clp-public #clp-calendar-days button:focus-visible{outline:3px solid #325fbe;outline-offset:2px}
.clp-public #clp-calendar-days button[aria-current=date]{font-weight:bold}
.clp-public #clp-calendar .clp-calendar-legend,.clp-public #clp-calendar-status{font-size:13px!important;margin:10px 0 0}
.clp-public #clp-calendar-retry[hidden]{display:none!important}

.clp-public #clp-calendar .clp-calendar-nav button{width:40px;flex:0 0 40px}

.clp-cancel{border-top:1px solid #d9e2ed;margin-top:28px;padding-top:20px}.clp-cancel [hidden]{display:none!important}.clp-cancel-confirm{display:flex!important;align-items:center;gap:10px;margin:18px 0}.clp-cancel-confirm input{width:auto!important;min-height:20px;height:20px;margin:0;flex-shrink:0}.clp-cancel form{margin-top:16px}.clp-cancel input[name="reference"]{text-transform:uppercase}
