@charset "UTF-8";
/* Calendar-only presentation. Keep tide.css and the shared data unchanged. */
.calendar-page.subpage-design .subpage-title h1+p{max-width:none}
.calendar-page.subpage-design .calendar-hero-layout{gap:24px}
.calendar-page.subpage-design .calendar-hero-layout>div:first-child{min-width:0}
.calendar-page.subpage-design .pdf-area{max-width:350px}
.calendar-page.subpage-design .pdf-area .button{white-space:normal}
.calendar-page.subpage-design .preview-notice{background:#fff5e2;border-color:#efdfba;border-radius:16px}
.calendar-page.subpage-design .month-nav button{min-height:52px;border-color:#bfdbe3;border-radius:14px;color:#124c70}
.calendar-page.subpage-design .month-nav button[aria-pressed=true]{background:#007cba;border-color:#007cba;color:#fff;box-shadow:0 3px 0 #124c7015}
.calendar-page.subpage-design .month-nav button:hover:not([aria-pressed=true]),
.calendar-page.subpage-design .month-step:hover:not(:disabled){background:#e9f8fb}
.calendar-page.subpage-design .calendar-toolbar{scroll-margin-top:calc(var(--header) + 24px)}
.calendar-page.subpage-design .calendar-toolbar h2{font-size:clamp(23px,2.25vw,32px);line-height:1.55}
.calendar-page.subpage-design .month-step{min-height:48px;border-color:#bfdbe3;color:#124c70}
.calendar-page.subpage-design .calendar-key{margin-bottom:20px}
.calendar-page.subpage-design .selected-panel{padding:24px 28px;border:1px solid #bfdbe3;border-radius:24px;box-shadow:0 5px 0 #124c700a;background:#fff;scroll-margin-top:calc(var(--header) + 24px)}
.calendar-page.subpage-design .selected-panel h2{font-size:20px;line-height:1.55}
.calendar-page.subpage-design .selected-panel .day-date{font-size:26px;line-height:1.55;margin-bottom:12px}
.calendar-page.subpage-design .selected-panel .day-info{display:flex;flex-direction:column;align-items:flex-start;gap:10px}
.calendar-page.subpage-design .selected-panel .day-time{font-size:30px;line-height:1.5}
.calendar-page.subpage-design .day-state{font-size:14px;line-height:1.6;font-weight:700}
.calendar-page.subpage-design .day-time{font-size:20px;line-height:1.5;font-variant-numeric:tabular-nums;letter-spacing:-.04em}
.calendar-page.subpage-design .day-tide,.calendar-page.subpage-design .day-note{color:#526c7a}
.calendar-page.subpage-design .state-open{background:#e9f8fb}
.calendar-page.subpage-design .state-closed{background:#f0f3f5}
.calendar-page.subpage-design .state-pending{background:#fff8e8}
.calendar-page.subpage-design .period-outside,.calendar-page.subpage-design .period-outside .day-card{background:#f4f6f8}
.calendar-page.subpage-design .day-card{min-width:0;min-height:148px;padding:12px 10px;gap:6px}
.calendar-page.subpage-design .day-date{line-height:1.55}
.calendar-page.subpage-design .day-card[aria-pressed=true]{box-shadow:inset 0 0 0 3px #007cba;background:#e1f3fa}
.calendar-page.subpage-design .day-card:hover:not([aria-pressed=true]){box-shadow:inset 0 0 0 2px #84c6d5}
.calendar-page.subpage-design #selected-content[data-state] .day-state{padding:5px 12px;border-radius:9px}
.calendar-page.subpage-design #selected-content[data-state=open] .day-state{background:#e9f8fb;color:#124c70}
.calendar-page.subpage-design #selected-content[data-state=closed] .day-state,
.calendar-page.subpage-design #selected-content[data-state=outside] .day-state{background:#f0f3f5;color:#52616c}
.calendar-page.subpage-design #selected-content[data-state=pending] .day-state{background:#fff5d5;color:#76551b}
.calendar-page.subpage-design .calendar-notes{padding:28px;border:1px solid #efdfba;border-radius:24px;background:#fff5e2;line-height:1.85}
.calendar-page.subpage-design .calendar-notes h2{font-size:24px;line-height:1.55}
.calendar-page.subpage-design .calendar-contact{margin-top:20px}
.calendar-page.subpage-design .calendar-contact a{display:inline-block;min-height:44px;padding-block:8px;color:#007cba;text-decoration:underline;text-underline-offset:4px;font-weight:700}
.calendar-page.subpage-design .selected-guides{margin-top:36px}
@media(min-width:769px) and (max-width:1100px){.calendar-page.subpage-design .day-time{font-size:16px}.calendar-page.subpage-design .day-card{padding:12px 7px}}
@media(max-width:768px){
 .calendar-page.subpage-design .pdf-area{max-width:none}
 .calendar-page.subpage-design .month-nav button{min-height:48px}
 .calendar-page.subpage-design .selected-panel{padding:20px;border-radius:21px}
 .calendar-page.subpage-design .selected-panel .day-date{font-size:24px}
 .calendar-page.subpage-design .day-card{min-height:44px;padding:12px 16px;gap:5px}
 .calendar-page.subpage-design .day-time{font-size:26px}
 .calendar-page.subpage-design .selected-panel .day-time{font-size:30px}
 .calendar-page.subpage-design .calendar-notes{padding:22px 18px;border-radius:21px}
}
@media(max-width:600px){
 .calendar-page.subpage-design .calendar-hero-layout{gap:22px}
 .calendar-page.subpage-design .selected-panel h2{font-size:18px}
 .calendar-page.subpage-design .calendar-toolbar{gap:8px}
 .calendar-page.subpage-design .month-step{padding-inline:12px}
 .calendar-page.subpage-design .calendar-notes h2{font-size:22px}
}

/* Compact day summaries; supporting information stays in the selected-day panel. */
.calendar-page.subpage-design .day-holiday{display:block;font-size:12px;line-height:1.5;font-weight:700;margin-top:2px}
.calendar-page.subpage-design .selected-panel .day-holiday{font-size:14px;margin-top:4px}
.calendar-page.subpage-design .day-card .day-info{gap:4px}
.calendar-page.subpage-design .month-nav{scroll-margin-top:calc(var(--header) + 24px)}
.calendar-page.subpage-design .calendar-return{display:flex;justify-content:center;margin-top:22px}
.calendar-page.subpage-design .calendar-return a{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:10px 22px;border:1px solid #bfdbe3;border-radius:999px;background:#e9f8fb;color:#007cba;font-size:14px;font-weight:700;text-decoration:none}
.calendar-page.subpage-design .calendar-return a:hover{background:#d9f0f6;border-color:#84c6d5}
@media(max-width:768px){.calendar-page.subpage-design .day-card .day-date{font-size:18px}.calendar-page.subpage-design .day-card .day-time{font-size:25px}.calendar-page.subpage-design .day-card .selected-tag{font-size:11px}}
