.tnb__calendar{max-width:620px;margin:0 auto;padding:18px;border:1px solid var(--line);background:#fff}.tnb__calendar-head{display:grid;grid-template-columns:44px 1fr 44px;align-items:center;margin-bottom:18px}.tnb__calendar-head strong{text-align:center;font:400 24px Georgia,serif}.tnb__calendar-head button{width:40px;height:40px;border:1px solid var(--line);background:#fff;color:var(--coral);font-size:28px;line-height:1;cursor:pointer}.tnb__calendar-head button:disabled{opacity:.25;cursor:not-allowed}.tnb__weekdays,.tnb__days{display:grid;grid-template-columns:repeat(7,1fr);gap:6px}.tnb__weekdays{margin-bottom:8px}.tnb__weekdays span{text-align:center;color:var(--muted);font-size:11px;font-weight:800;text-transform:uppercase}.tnb__day,.tnb__day-blank{aspect-ratio:1;min-width:0}.tnb__day{display:grid;place-items:center;border:1px solid #eadfd9;background:#fff;color:var(--ink);font-weight:700;cursor:pointer}.tnb__day.is-available:hover,.tnb__day.is-available:focus,.tnb__day.is-selected{border-color:var(--coral);background:var(--coral);color:#fff}.tnb__day.is-unavailable{border-color:#ece9e7;background:#eee;color:#aaa;text-decoration:line-through;cursor:not-allowed}.tnb__legend{display:flex;flex-wrap:wrap;gap:16px;margin-top:16px;color:var(--muted);font-size:11px}.tnb__legend span{display:flex;align-items:center;gap:6px}.tnb__legend i{width:12px;height:12px;border:1px solid var(--coral);background:#fff}.tnb__legend span:last-child i{border-color:#ddd;background:#eee}.tnb__day-choice{max-width:620px;margin:26px auto 0}.tnb__day-choice h4{margin:0 0 5px!important;color:var(--ink)!important;font:400 23px Georgia,serif!important}.tnb__day-choice p{margin:0;color:var(--muted);font-size:12px}.tnb__time.is-unavailable,.tnb__time:disabled{border-color:#e5e1df;background:#eee;color:#aaa;text-decoration:line-through;cursor:not-allowed}.tnb__time.is-unavailable:hover,.tnb__time.is-unavailable:focus{border-color:#e5e1df;background:#eee;color:#aaa}.tnb__times:empty{display:none}@media(max-width:650px){.tnb__calendar{padding:12px}.tnb__weekdays,.tnb__days{gap:3px}.tnb__calendar-head strong{font-size:20px}.tnb__day{font-size:13px}.tnb__legend{display:grid;gap:7px}}
