/* Schedule pages share the encyclopedia's colors and typography. */
.schedule-clock{margin:24px 0 14px;font-size:12px;color:var(--muted);display:flex;flex-wrap:wrap;gap:8px 20px}.schedule-clock time{color:var(--text);font-variant-numeric:tabular-nums}
.schedule-summary{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:24px}.schedule-summary>div,.admin-next{padding:24px 26px;background:var(--surface);border:1px solid var(--line);border-radius:14px}.schedule-summary>div:first-child{border-color:#6f8558;background:#1d2a20}.schedule-summary span,.admin-next>span{font-size:11px;color:var(--muted);display:block;letter-spacing:.05em}.schedule-summary strong{font-size:26px;margin:10px 0;display:block;color:var(--green)}.schedule-summary p,.admin-next p{color:var(--muted);font-size:12px;line-height:1.8}
.schedule-controls{display:flex;align-items:end;gap:16px;flex-wrap:wrap;margin:24px 0 18px}.schedule-controls label{font-size:11px;color:var(--muted);display:flex;flex-direction:column;gap:8px}.schedule-controls select{min-width:200px;min-height:44px}.schedule-controls button{min-height:44px;background:#233122;color:var(--green);border:1px solid #526b3e;border-radius:6px;padding:10px 16px;cursor:pointer;font:inherit;font-size:12px}.schedule-controls button:hover{background:#2c4029}.schedule-controls>p{font-size:11px;color:var(--muted);margin-left:auto;padding-bottom:12px}.schedule-controls :focus-visible,.schedule-jumps a:focus-visible{outline:2px solid var(--green);outline-offset:4px}
.schedule-jumps{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:20px}.schedule-jumps a{display:flex;align-items:center;min-height:44px;padding:10px 17px;border:1px solid var(--line);border-radius:6px;font-size:12px;color:var(--muted)}.schedule-jumps a:hover{border-color:var(--green);color:var(--green)}
.schedule-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.schedule-hour{background:var(--surface);border:1px solid var(--line);border-radius:12px;overflow:hidden;min-width:0;scroll-margin-top:24px}.schedule-hour h2{display:flex;align-items:baseline;gap:9px;font-size:23px;font-weight:650;padding:17px 18px 13px;border-bottom:1px solid var(--line);font-variant-numeric:tabular-nums}.schedule-hour h2 small{font-size:11px;font-weight:400;color:var(--muted)}.schedule-hour table{width:100%;border-collapse:collapse;text-align:left;table-layout:fixed}.schedule-hour th,.schedule-hour td{padding:12px 13px;font-size:12px;vertical-align:middle}.schedule-hour thead th{font-size:9px;font-weight:400;color:var(--muted);padding-bottom:6px}.schedule-hour th:first-child{width:44%;white-space:nowrap}.schedule-hour tbody th{font-variant-numeric:tabular-nums;font-weight:500;font-size:12px}.schedule-hour tbody tr+tr{border-top:1px solid #ffffff08}.schedule-hour .form-badge{font-size:11px;gap:7px;white-space:normal}.schedule-row-state{display:block;font-size:9px;color:var(--green);margin-top:4px}.schedule-row-state:empty{display:none}.schedule-hour .is-scheduled-now{background:#c5f57b12;box-shadow:inset 3px 0 var(--green)}
.schedule-related{display:flex;gap:12px 24px;flex-wrap:wrap;margin:28px 0 24px}.schedule-related a{font-size:12px;color:var(--green);padding:8px 0;min-height:36px}.schedule-related a:hover{text-decoration:underline}.schedule-footnote{font-size:11px;color:var(--muted);line-height:1.8;margin-top:8px}
.admin-next{border-color:#6f8558;background:#1d2a20;margin-bottom:24px}.admin-next strong{display:block;color:var(--green);font-size:32px;line-height:1.5;margin:10px 0;font-variant-numeric:tabular-nums}.admin-week-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-top:28px}.admin-day{background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:23px 20px}.admin-day-top{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.admin-day h2{font-size:17px}.admin-slot-status{font-size:9px;color:var(--green)}.admin-start{margin:19px 0 15px}.admin-start time{display:block;font-size:42px;font-weight:650;letter-spacing:-.03em;font-variant-numeric:tabular-nums;color:#f3d876}.admin-start>span{display:block;font-size:9px;letter-spacing:.15em;color:var(--muted);margin-top:5px}.admin-date,.admin-sunday-note{font-size:11px;line-height:1.8;color:var(--muted)}.admin-date:empty{display:none}.admin-sunday-note{margin-top:12px;border-top:1px solid var(--line);padding-top:12px}.admin-day.is-scheduled-now{border-color:var(--green)}.admin-special{margin:24px 0}.admin-special h2{font-size:20px}.admin-special article{padding:18px;background:var(--surface);margin-top:12px}
[data-schedule-page] [hidden]{display:none!important}
@media(max-width:1100px){.schedule-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-week-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.schedule-grid{grid-template-columns:1fr;gap:14px}.schedule-summary{grid-template-columns:1fr;gap:10px}.schedule-summary>div,.admin-next{padding:19px}.schedule-summary strong{font-size:23px;margin:7px 0}.schedule-summary p{font-size:11px}.schedule-controls{gap:12px}.schedule-controls label{flex:1;min-width:150px}.schedule-controls select{min-width:0;width:100%}.schedule-controls button{font-size:11px;padding:10px 12px}.schedule-controls>p{width:100%;padding:0}.schedule-jumps{gap:7px}.schedule-jumps a{flex:1;justify-content:center;padding:10px 8px;font-size:11px}.schedule-hour h2{padding:16px 18px 12px}.schedule-hour th,.schedule-hour td{padding:13px 18px}.schedule-hour tbody th{font-size:13px}.schedule-hour .form-badge{font-size:12px}.admin-next strong{font-size:23px}.admin-week-grid{gap:10px}.admin-day{padding:18px 14px}.admin-day h2{font-size:14px}.admin-start time{font-size:36px}.admin-date,.admin-sunday-note{font-size:10px}.schedule-related{flex-direction:column;gap:2px}.schedule-related a{min-height:44px;padding:13px 0}.schedule-footnote{font-size:10px}}
@media(max-width:360px){.schedule-controls button{width:100%}.admin-start time{font-size:30px}.admin-day{padding:16px 10px}.admin-next strong{font-size:20px}}
