/* Load after the form styles so both date pickers share the same geometry. */
.ww-pub-table .ww-date-calendar,.wwb .wwb-calendar{margin:14px 0;padding:14px;border:1px solid #b8b8b4;border-radius:6px;background:#fff;font-family:"Crimson Text",Georgia,serif;color:#49483f;line-height:1.55}
.ww-pub-table .ww-date-head,.wwb .wwb-calendar-head{display:flex;align-items:center;justify-content:space-between;margin:0 0 14px;gap:8px}
.ww-pub-table .ww-date-head strong,.wwb .wwb-calendar-head strong{font:600 16px/1.4 "Crimson Text",Georgia,serif;text-align:center}
.ww-pub-table .ww-date-head button,.wwb .wwb-calendar-head button{display:flex;align-items:center;justify-content:center;flex:0 0 36px;width:36px;min-height:40px;margin:0;padding:0;background:#fff;color:#49483f;border:1px solid #b8b8b4;border-radius:3px;font:24px/1 "Crimson Text",Georgia,serif;letter-spacing:0;text-transform:none;transform:none}
.ww-pub-table .ww-date-weekdays,.ww-pub-table .ww-date-days,.wwb .wwb-weekdays,.wwb .wwb-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px;text-align:center}
.ww-pub-table .ww-date-weekdays,.wwb .wwb-weekdays{font-size:12px;color:#75786e;margin:0 0 8px}
.ww-pub-table .ww-date-days button,.wwb .wwb-days button{display:flex;flex-direction:column;align-items:center;justify-content:center;width:100%;min-height:58px;margin:0;padding:4px 1px;font:15px/1.3 "Crimson Text",Georgia,serif;letter-spacing:0;text-transform:none;border-radius:4px;box-shadow:none;transform:none}
.ww-pub-table .ww-date-calendar .ww-pub-hint,.wwb .wwb-calendar .wwb-calendar-note{font:12px/1.5 "Crimson Text",Georgia,serif;color:#75786e;margin:12px 0 0}
.ww-date-status:empty{display:none}
.ww-date-status{padding:12px;background:#fff2ef;color:#8a3027;border-left:3px solid #aa4439}
.ww-table-picker [hidden]{display:none!important}
.ww-pub-table [data-date-toggle]{background:#fff;color:#292b29;border:1px solid #b8b8b4;text-align:left}
.ww-pub-table .ww-date-days button.is-unavailable,.wwb .wwb-days button.is-unavailable{background:#ededed;color:#777;border:1px solid #d3d3d3;opacity:1;cursor:not-allowed}
.ww-pub-table .ww-date-days button.is-bookable,.wwb .wwb-days button.is-bookable{background:#e0edd9;color:#254b24;border:1px solid #86a780}
.ww-pub-table .ww-date-days button.is-full,.wwb .wwb-days button.is-full{background:#f9ddda;color:#852d26;border:1px solid #ca847c}
.ww-pub-table .ww-date-days button.is-bookable:hover,.wwb .wwb-days button.is-bookable:hover{background:#c8dfbe}
.ww-pub-table .ww-date-days button.is-full:hover,.wwb .wwb-days button.is-full:hover{background:#f1c2bd}
.ww-pub-table .ww-date-days button[aria-pressed=true],.wwb .wwb-days button[aria-pressed=true]{outline:2px solid #254b24!important;outline-offset:1px;font-weight:700}
.ww-pub-table .ww-date-days button.is-today,.wwb .wwb-days button.is-today{font-weight:700;text-decoration:none;background:#e9e5d9}
.wwb .wwb-days button:focus-visible,.ww-pub-table .ww-date-days button:focus-visible{outline:2px solid #292b29!important;outline-offset:2px}
.wwb .wwb-days button small,.ww-pub-table .ww-date-days button small{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding:0;margin:0;font:9px/1.3 Arial,sans-serif;letter-spacing:0!important;text-transform:none}
@media(max-width:520px){.ww-pub-table .ww-date-calendar,.wwb .wwb-calendar{padding:8px}.ww-pub-table .ww-date-days button,.wwb .wwb-days button{min-height:54px}}
/* A visible inset ring preserves date colours and does not move the grid. */
@media(hover:hover){.ww-pub-table .ww-date-days button:not(:disabled):hover,.wwb .wwb-days button:not(:disabled):hover,.ww-self-service .ww-calendar-days button:not(:disabled):hover{box-shadow:inset 0 0 0 2px currentColor;filter:brightness(.94);transform:none}}
