.wl-school-calendar{padding:24px;border:1px solid #d6e3f2;border-radius:18px;background:#f4f9ff;max-width:560px;margin:24px 0}.wl-school-calendar-top{display:flex;align-items:center;justify-content:space-between;gap:12px}.wl-school-calendar-top h3{font-size:1.25rem!important;margin:0!important}.wl-school-calendar button{cursor:pointer;color:#071b50;border:1px solid #c5d7ec;background:white;border-radius:8px;min-width:44px;min-height:44px;font:inherit}.wl-school-calendar button:hover{background:#ddecff}.wl-school-calendar button:focus-visible{outline:3px solid #0066c9;outline-offset:3px}.wl-school-calendar button[aria-pressed=true]{background:#0b3874;color:white;border-color:#0b3874}.wl-school-calendar button:disabled{opacity:.45;cursor:default}.wl-school-weekdays,.wl-school-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px}.wl-school-weekdays{text-align:center;margin:18px 0 8px;font-size:.85rem;color:#425a7d}.wl-school-availability{font-size:.95rem;line-height:1.5;min-height:3em;color:#294367;margin:16px 0 8px}.wl-school-admin{max-width:1500px}.wl-school-admin-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:14px;margin-top:22px}.wl-school-admin-day{background:white;border:1px solid #cbd5e1;border-radius:10px;padding:16px;min-width:0}.wl-school-admin-day>h2{font-size:16px;margin:0 0 12px;color:#102951}.wl-school-assignment{padding:12px 0;border-top:2px solid #dce8f6;overflow-wrap:anywhere}.wl-school-assignment h3{font-size:17px;margin:6px 0}.wl-school-assignment select{display:block;width:100%;margin:5px 0 12px}.wl-school-assignment form label{display:block}.wl-school-assignment p{line-height:1.6}@media(max-width:540px){.wl-school-calendar{padding:16px 10px}.wl-school-weekdays,.wl-school-days{gap:3px}.wl-school-days button{min-width:0;min-height:44px;padding:0}.wl-school-calendar-top h3{font-size:1.1rem!important}}
.wl-school-month{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:5px;margin:20px 0;max-width:1000px}.wl-school-month>strong{text-align:center;padding:8px}.wl-school-month>span,.wl-school-month>a{display:block;min-height:64px;border-radius:6px;background:#fff;border:1px solid #ccd7e4;padding:10px;font-size:18px;color:#142c51}.wl-school-month>a{background:#e8f3ff;border-color:#8bb2dd;font-weight:700;text-decoration:none}.wl-school-month small{display:block;font-size:11px;font-weight:400;margin-top:7px}.wl-school-month a:focus-visible{outline:3px solid #0563b6;outline-offset:2px}@media(max-width:650px){.wl-school-month>span,.wl-school-month>a{padding:6px;min-height:46px;font-size:15px}.wl-school-month small{font-size:9px;overflow-wrap:anywhere}}
.wl-school-admin-grid{display:block}.wl-school-admin-day{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:18px;margin-bottom:20px}.wl-school-admin-day>h2{grid-column:1/-1}.wl-school-assignment{padding:14px;border:1px solid #d7e2ef;border-top:3px solid #7fa8d9;border-radius:8px;background:#fbfdff}.wl-school-admin-day>.description{grid-column:1/-1}@media(max-width:430px){.wl-school-admin-day{display:block}.wl-school-assignment{margin-top:14px}}

/* Day and time are one progressively enhanced booking choice. */
.wl-school-time-picker{margin-top:14px;padding-top:12px;border-top:1px solid var(--wl-theme-line,#c5d7ec);min-width:0}
.wlfv-ui .wl-school-time-picker h4{font-size:16px;line-height:1.4;margin:0 0 10px;color:var(--wl-theme-text,#10254c)}
.wl-school-time-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.wl-school-time-grid .wlfv-field{display:flex;flex-direction:column;gap:5px;min-width:0;grid-column:auto!important}
.wl-school-time-grid label{font-size:14px;font-weight:650;color:var(--wl-theme-text,#10254c)}
.wl-school-time-picker select,.wl-school-date-entry input{width:100%;min-width:0;min-height:44px;max-width:100%;padding:8px 10px;border:1px solid var(--wl-theme-line,#8da8cb);border-radius:6px;background:var(--wl-theme-surface,#fff);color:var(--wl-theme-text,#10254c);font:inherit;font-size:16px;box-sizing:border-box}
.wl-school-time-picker .wlfv-form-help{line-height:1.5;font-size:13px;color:var(--wl-theme-muted,#425a7d)}
.wl-school-date-entry{margin-top:5px}.wl-school-date-entry summary{cursor:pointer;min-height:32px;padding:5px 0;color:var(--wl-theme-link,#0066c9);font-size:13px}.wl-school-date-entry .wlfv-field{display:grid;gap:5px;padding:8px 0;grid-column:auto!important}
.wl-school-time-picker :is(select,input,summary):focus-visible,.wl-school-availability:focus{outline:3px solid var(--wl-theme-link,#0066c9);outline-offset:3px}
.wl-school-time-grid[hidden],.wlfv-form-subtitle[hidden]{display:none!important}
