/* Bloom Space Premium Version 17 - Customer Availability Calendar */
body.availability-v17{margin:0;background:#f7f8fc;color:#263657;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","Noto Sans JP",sans-serif}
.availability-shell-v17{max-width:980px;margin:auto;padding:38px 18px 80px}
.availability-card-v17{background:#fff;border:1px solid #e7eaf4;border-radius:26px;padding:clamp(24px,5vw,50px);box-shadow:0 16px 48px rgba(31,51,111,.07);margin-bottom:22px}
.availability-card-v17 h1,.availability-card-v17 h2{font-family:"Yu Mincho","Hiragino Mincho ProN",serif;font-weight:500;color:#243a82}
.availability-card-v17 h1{font-size:clamp(2rem,5vw,3.2rem)}
.availability-lead-v17{color:#687286;line-height:1.8}
.plan-tabs-v17{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:28px 0}
.plan-tabs-v17 a{text-decoration:none;text-align:center;padding:13px 10px;border:1px solid #dfe3ef;border-radius:999px;color:#465475;background:#fff;font-weight:700}
.plan-tabs-v17 a.active{background:#2d478f;color:#fff;border-color:#2d478f}
.legend-v17{display:flex;gap:16px;flex-wrap:wrap;font-size:.82rem;color:#667085;margin:15px 0 25px}
.legend-v17 .dot{margin-right:4px}.legend-v17 .open{color:#507d5a}.legend-v17 .partial{color:#a27624}.legend-v17 .full{color:#9a6262}
.month-nav-v17{display:grid;grid-template-columns:55px 1fr 55px;align-items:center;margin:20px 0}
.month-nav-v17 strong{text-align:center;font-size:1.35rem;color:#243a82}
.month-nav-v17 a{display:grid;place-items:center;width:44px;height:44px;border-radius:50%;text-decoration:none;background:#f4f6fb;color:#243a82;font-size:1.8rem}
.month-nav-v17 a:last-child{justify-self:end}
.weekday-v17,.calendar-grid-v17{display:grid;grid-template-columns:repeat(7,1fr);gap:8px}
.weekday-v17{font-size:.75rem;text-align:center;color:#8a93a5;margin-bottom:8px}
.day-v17{min-height:76px;border:1px solid #e3e7f0;border-radius:14px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-decoration:none;background:#fff;position:relative}
.day-v17 .num{position:absolute;left:9px;top:7px;font-size:.72rem;color:#6d7687}
.day-v17 strong{font-size:1.45rem}.day-v17.open strong{color:#4e815a}.day-v17.partial strong{color:#a87c2b}.day-v17.full{background:#f5f5f5}.day-v17.full strong{color:#b5b5b5}.day-v17.selected{outline:3px solid #c8d5ff}
.slot-grid-v17{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:22px}
.slot-grid-v17 a{display:flex;flex-wrap:wrap;align-items:baseline;gap:5px;padding:18px;border:1px solid #dfe4ef;border-radius:15px;text-decoration:none;color:#243a82;background:#fff}
.slot-grid-v17 a:hover{border-color:#9eb0e2}
.slot-grid-v17 strong{font-size:1.15rem}.slot-grid-v17 small{display:block;width:100%;margin-top:7px;color:#536aa8}
.slot-note-v17,.privacy-note-v17{font-size:.78rem;color:#778094;line-height:1.7}
.no-slots-v17{padding:22px;border-radius:14px;background:#f6f6f6;color:#777}
.privacy-note-v17{text-align:center;padding:10px 18px}
@media(max-width:700px){.availability-card-v17{border-radius:18px}.slot-grid-v17{grid-template-columns:1fr 1fr}.day-v17{min-height:60px}.plan-tabs-v17{grid-template-columns:1fr}}
@media(max-width:460px){.weekday-v17,.calendar-grid-v17{gap:4px}.day-v17{min-height:52px;border-radius:10px}.day-v17 strong{font-size:1.1rem}.day-v17 .num{left:6px;top:5px;font-size:.65rem}.slot-grid-v17{grid-template-columns:1fr}}
