/* A compact calendar surface shared by coaches, JT and families. */
.jt-hub-ui .jt-schedule.cal-premium{position:relative;isolation:isolate;padding:26px;border:1px solid #d7bd792a;border-radius:16px;background:radial-gradient(ellipse at 100% 0,#d7bd7907,transparent 55%),linear-gradient(145deg,#151515,#101011 65%);box-shadow:0 8px 32px #00000014,inset 0 1px 0 #ffffff04}
.jt-hub-ui .cal-premium .cal-heading-row{display:flex;align-items:center;gap:14px;margin:0 0 24px}.jt-hub-ui .cal-premium .cal-heading-row h2{font:500 32px/1.1 'Playfair Display',Georgia,serif;letter-spacing:-.035em}.jt-hub-ui .cal-premium .cal-timezone{display:flex;align-items:center;gap:8px;padding:6px 0;font:400 10px/1.4 Montserrat,sans-serif;letter-spacing:.025em;color:#a9a69d}.jt-hub-ui .cal-premium .cal-timezone i{font-style:normal;color:#b79d64}
.jt-hub-ui .cal-premium .cal-controls{display:grid;grid-template-columns:minmax(200px,340px) minmax(0,1fr);align-items:end;gap:24px}.jt-hub-ui .cal-premium .cal-coach-select{display:flex;align-items:end;flex-wrap:nowrap;gap:10px;margin:0}.jt-hub-ui .cal-premium .cal-coach-select label{flex:1;min-width:0;max-width:none;margin:0}.jt-hub-ui .cal-premium .cal-field-label{display:block;margin:0 0 9px;color:#aba69b;font:500 9px/1.3 Montserrat,sans-serif;letter-spacing:.16em;text-transform:uppercase}
.jt-hub-ui .jt-schedule.cal-premium .cal-coach-select select{appearance:none;-webkit-appearance:none;display:block;width:100%;height:48px;min-height:48px;margin:0;border:1px solid #e8d5a325;border-radius:9px;padding:0 36px 0 15px;background:#0b0b0d url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='%23c4af7f' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m7 10 5 5 5-5'/%3E%3C/svg%3E") no-repeat right 12px center;color:#e9e4d8;font:500 14px Montserrat,sans-serif;box-shadow:none;text-overflow:ellipsis;cursor:pointer}.jt-hub-ui .jt-schedule.cal-premium .cal-coach-select select:disabled{color:#9f9c94;opacity:1;cursor:wait}.jt-hub-ui .cal-premium [data-cal-mine]{min-height:48px;height:48px;padding:0 12px;border:1px solid #c8b27b28;border-radius:9px;background:#c8b27b08;white-space:nowrap;color:#d8c89d;font-weight:500;font-size:11px}
.jt-hub-ui .cal-premium .cal-toolbar{display:flex;flex-wrap:nowrap;align-items:center;gap:8px;min-width:0;max-width:460px;width:100%;margin:0;justify-self:end}.jt-hub-ui .cal-family.cal-premium .cal-toolbar{max-width:460px;margin:0}.jt-hub-ui .cal-premium .cal-date-group{display:grid;grid-template-columns:44px minmax(0,1fr) 44px;flex:1;min-width:0;height:48px;border:1px solid #e8d5a325;border-radius:9px;background:#0b0b0d;overflow:hidden}.jt-hub-ui .cal-premium .cal-toolbar .cal-step{grid-column:auto;grid-row:auto;display:grid;place-items:center;min-width:0;width:44px;height:46px;min-height:44px;padding:0;margin:0;border:0;border-radius:0;background:none;color:#c5b285;box-shadow:none}.jt-hub-ui .cal-premium .cal-toolbar .cal-step:hover{background:#d7bd7912;color:#eed99f}.jt-hub-ui .cal-premium .cal-toolbar .cal-step:focus-visible{outline-offset:-4px}
.jt-hub-ui .cal-premium .cal-toolbar .cal-date-picker{position:relative;display:grid;place-items:center;grid-column:auto;grid-row:auto;min-width:0;max-width:none;width:100%;height:46px;min-height:0;margin:0;padding:0;overflow:hidden;border:0;border-radius:0;cursor:pointer}.jt-hub-ui .cal-premium .cal-date-text{font:500 13px/1.4 Montserrat,sans-serif;color:#f1eadb;white-space:nowrap;pointer-events:none;font-variant-numeric:tabular-nums;letter-spacing:-.02em}
/* The native date input stays inside its own cell, including on iOS. */
.jt-hub-ui .cal-premium .cal-toolbar input[type=date]{position:absolute;inset:0;display:block;appearance:none;-webkit-appearance:none;min-width:0;min-inline-size:0;max-width:100%;width:100%;height:100%;min-height:0;padding:0;margin:0;border:0;border-radius:0;opacity:0;font-size:16px;cursor:pointer;box-sizing:border-box}.jt-hub-ui .cal-premium .cal-toolbar input[type=date]::-webkit-calendar-picker-indicator{position:absolute;inset:0;width:100%;height:100%;margin:0;padding:0;cursor:pointer}.jt-hub-ui .cal-premium .cal-date-picker:focus-within{outline:2px solid #d9be7c;outline-offset:-3px}
.jt-hub-ui .cal-premium .cal-toolbar .cal-today,.jt-hub-ui .cal-premium .cal-toolbar .cal-refresh{display:flex;align-items:center;justify-content:center;flex:0 0 auto;grid-column:auto;grid-row:auto;min-height:48px;height:48px;margin:0;padding:0;border-radius:9px;box-shadow:none;transform:none}.jt-hub-ui .cal-premium .cal-toolbar .cal-today{width:64px;border:1px solid #d7bd7940;background:#d7bd7912;color:#e4c988;font:600 12px Montserrat,sans-serif}.jt-hub-ui .cal-premium .cal-toolbar .cal-today:hover{background:#d7bd7923;border-color:#d7bd7970}.jt-hub-ui .cal-premium .cal-toolbar .cal-refresh{width:48px;border:1px solid #e8d5a31c;background:transparent;color:#bbad8d}.jt-hub-ui .cal-premium .cal-toolbar .cal-refresh::after{content:none}.jt-hub-ui .cal-premium .cal-toolbar .cal-refresh:hover{background:#ffffff05;color:#ead3a0}.jt-hub-ui .cal-premium .cal-toolbar svg{display:block;width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}.jt-hub-ui .cal-premium .cal-refresh:disabled{opacity:.65}
.jt-hub-ui .cal-premium .cal-status{display:flex;align-items:baseline;gap:9px;margin:18px 0 0;padding:0;border:0;border-radius:0;background:none;color:#a6a297;font:400 11px/1.75 Montserrat,sans-serif;overflow-wrap:anywhere}.jt-hub-ui .cal-premium .cal-status::before{content:'';flex:0 0 5px;width:5px;height:5px;margin-top:7px;align-self:flex-start;border-radius:50%;background:#bda66f;opacity:.8}.jt-hub-ui .cal-premium[data-state=loading] .cal-status{color:#bbb5a6}.jt-hub-ui .cal-premium[data-state=loading] .cal-status::before{animation:cal-breathe 1.7s ease-in-out infinite}.jt-hub-ui .cal-premium[data-state=loading] .cal-refresh svg{animation:cal-turn 1.5s linear infinite}.jt-hub-ui .cal-premium[data-state=error] .cal-status{color:#e4b99f}.jt-hub-ui .cal-premium[data-state=error] .cal-status::before{background:#e4b99f}.jt-hub-ui .cal-premium .cal-status:empty{display:none}
.jt-hub-ui .cal-premium .cal-loading-state{display:none;gap:14px;padding-top:22px;margin-top:22px;border-top:1px solid #ffffff0c}.jt-hub-ui .cal-premium .cal-loading-state>div{display:grid;grid-template-columns:44px minmax(0,1fr);gap:9px 16px;max-width:480px;padding:14px 0}.jt-hub-ui .cal-premium .cal-loading-state i{grid-row:1/3;display:block;width:44px;height:39px;border-radius:6px;background:#cdbb880a}.jt-hub-ui .cal-premium .cal-loading-state span{display:block;height:8px;width:55%;border-radius:10px;background:#e4d5b60b}.jt-hub-ui .cal-premium .cal-loading-state span:last-child{width:78%;background:#ffffff06}.jt-hub-ui .cal-premium[data-state=loading] .cal-loading-state{display:grid}.jt-hub-ui .cal-premium:not([data-state=ready]) :is(.cal-stats,.cal-grid){display:none}.jt-hub-ui .cal-premium[data-state=loading]:not([data-coaches-ready])>details{display:none}
.jt-hub-ui .cal-premium .cal-stats{display:flex;gap:20px;padding:20px 0;margin:20px 0 4px;border-top:1px solid #ffffff0c;border-bottom:1px solid #ffffff0c}.jt-hub-ui .cal-premium .cal-stats>div{display:flex;align-items:baseline;gap:9px;flex:0 1 auto;padding:0;border:0;background:none;min-width:0}.jt-hub-ui .cal-premium .cal-stats b{font:500 25px/1 Montserrat,sans-serif;letter-spacing:-.04em;color:#e7d6ab}.jt-hub-ui .cal-premium .cal-stats span{font-size:10px;color:#a9a59b;margin:0;line-height:1.5}.jt-hub-ui .cal-premium .cal-grid{gap:30px}.jt-hub-ui .cal-premium .cal-grid h3{font-size:19px;font-weight:500;margin:22px 0 12px}.jt-hub-ui .cal-premium .cal-row{border-bottom:1px solid #ffffff0a;padding:21px 0;gap:14px}.jt-hub-ui .cal-premium .cal-row:last-child{border-bottom:0}.jt-hub-ui .cal-premium .cal-row time{color:#cfba82;font-weight:500}.jt-hub-ui .cal-premium .cal-row p{line-height:1.75}.jt-hub-ui .cal-premium .cal-tag{border:0;border-radius:4px;background:#d7bd790b;color:#bcb092;padding:4px 7px;font-size:9px}.jt-hub-ui .cal-premium .cal-actions .cal-plan-link{border-radius:7px;background:#dac084;border-color:#dac084;color:#15130e;min-height:44px;padding:10px 14px;font-size:12px;gap:16px}.jt-hub-ui .cal-premium .cal-actions .cal-plan-link:hover{background:#ead3a0;border-color:#ead3a0}.jt-hub-ui .cal-premium .cal-day{border-color:#ffffff12;color:#bfb08b;font-weight:500}.jt-hub-ui .cal-premium .cal-empty{padding:16px 0;color:#a19d92;font-size:12px}.jt-hub-ui .cal-premium>details{border-color:#ffffff0d;margin-top:16px;padding-top:12px}.jt-hub-ui .cal-premium summary{font-size:12px;color:#bfb292}.jt-hub-ui .cal-premium .cal-review,.jt-hub-ui .cal-premium .cal-coach-access{border-radius:9px;border-color:#d7bd7925;background:#d7bd7905}
@media(max-width:850px){.jt-hub-ui .cal-premium .cal-controls{grid-template-columns:1fr;gap:14px}.jt-hub-ui .cal-premium .cal-toolbar{justify-self:start;max-width:none}.jt-hub-ui .cal-premium .cal-coach-select label{max-width:none}}
@media(max-width:700px){.jt-hub-ui .jt-schedule.cal-premium{padding:21px 16px;border-radius:14px}.jt-hub-ui .cal-premium .cal-heading-row{margin-bottom:22px}.jt-hub-ui .cal-premium .cal-heading-row h2{font-size:29px}.jt-hub-ui .cal-premium .cal-timezone{font-size:9px;gap:6px}.jt-hub-ui .cal-premium .cal-field-label{font-size:9px}.jt-hub-ui .jt-schedule.cal-premium .cal-coach-select select{font-size:16px;padding-left:13px}.jt-hub-ui .cal-premium .cal-toolbar{gap:6px}.jt-hub-ui .cal-premium .cal-toolbar .cal-today{width:54px;font-size:12px}.jt-hub-ui .cal-premium .cal-toolbar .cal-refresh{width:44px}.jt-hub-ui .cal-premium .cal-date-text{font-size:13px;letter-spacing:-.025em}.jt-hub-ui .cal-premium .cal-status{font-size:11px;margin-top:16px;line-height:1.8}.jt-hub-ui .cal-premium .cal-stats{gap:16px;margin-top:18px;padding:17px 0}.jt-hub-ui .cal-premium .cal-stats>div{gap:7px;flex:1}.jt-hub-ui .cal-premium .cal-stats b{font-size:23px}.jt-hub-ui .cal-premium .cal-stats span{font-size:10px}.jt-hub-ui .cal-premium .cal-grid{grid-template-columns:1fr;gap:0}.jt-hub-ui .cal-premium .cal-row{grid-template-columns:52px minmax(0,1fr);gap:12px}.jt-hub-ui .cal-premium .cal-loading-state{padding-top:14px;margin-top:18px;gap:8px}.jt-hub-ui .cal-premium .cal-loading-state>div{padding:10px 0}.jt-hub-ui .cal-premium .cal-actions{gap:4px 12px}}
@media(max-width:350px){.jt-hub-ui .cal-premium .cal-toolbar{display:grid;grid-template-columns:minmax(0,1fr) 44px;gap:8px}.jt-hub-ui .cal-premium .cal-date-group{grid-column:1/-1;width:100%}.jt-hub-ui .cal-premium .cal-toolbar .cal-today{width:auto;justify-self:start;padding:0 20px}.jt-hub-ui .cal-premium .cal-date-text{font-size:13px}.jt-hub-ui .cal-premium .cal-stats{gap:10px}.jt-hub-ui .cal-premium .cal-stats>div{flex-direction:column;gap:7px}}
@keyframes cal-breathe{50%{opacity:.3}}@keyframes cal-turn{to{transform:rotate(360deg)}}
@media(prefers-reduced-motion:reduce){.jt-hub-ui .cal-premium[data-state=loading] .cal-status::before,.jt-hub-ui .cal-premium[data-state=loading] .cal-refresh svg{animation:none}}
