.border-glow{position:relative}.border-glow__border,.border-glow__halo{z-index:1;pointer-events:none;border-style:solid;position:absolute;inset:-1px}.border-glow__border{border-radius:inherit;border-width:1px}.border-glow__halo{border-radius:var(--border-glow-halo-radius,17px);border-width:2px}.mini-calendar{width:256px}.mini-calendar-weekdays,.mini-calendar-grid{grid-template-columns:repeat(7,minmax(0,1fr));display:grid}.mini-calendar-weekdays{margin-bottom:4px}.mini-calendar-grid{gap:2px}.mini-calendar-weekday,.mini-calendar-day{color:#27272a;min-width:0;height:31px;font:inherit;background:0 0;border:0;border-radius:7px;place-items:center;font-size:11px;display:grid}.mini-calendar-weekday{color:#a1a1aa;font-size:10px;font-weight:700}.mini-calendar-day{cursor:pointer;font-weight:600}.mini-calendar-day:disabled{color:#d4d4d8;cursor:not-allowed}.mini-calendar-day.is-today:not(.is-selected){color:#2563eb;background:#eff6ff;font-weight:800}.mini-calendar-day.is-selected{color:#1d4ed8;background:#eff6ff;font-weight:800}.mini-calendar-day:not(:disabled):hover{background:#dbeafe}.coach-availability-grid-scroll{overscroll-behavior:contain;background:#fff;border:1px solid #e5e7eb;border-radius:10px;max-height:min(66vh,540px);overflow:auto}.coach-availability-grid{-webkit-user-select:none;user-select:none;min-width:560px;display:grid}.coach-availability-grid-corner,.coach-availability-day-heading{z-index:3;background:#fff;border-bottom:1px solid #e2e8f0;justify-content:center;align-items:center;min-height:51px;display:flex;position:sticky;top:0}.coach-availability-grid-corner{z-index:4;color:#cbd5e1;font-size:10px;font-weight:700}.coach-availability-day-heading{border-left:2px solid var(--mantine-color-gray-3);flex-direction:column;gap:1px}.coach-availability-day-heading.is-today{background:#eff6ff}.coach-availability-day-heading.is-weekend:not(.is-today){background:#f8fafc}.coach-availability-day-heading.is-past{color:#a1a1aa;background:#f3f4f666}.coach-availability-day-number{color:#1e293b;font-size:18px;font-weight:900}.coach-availability-day-heading.is-today .coach-availability-day-number{color:#1d4ed8}.coach-availability-day-label{color:#94a3b8;font-size:10px;font-weight:700}.coach-availability-day-heading.is-today .coach-availability-day-label{color:#2563eb}.coach-availability-time-rail,.coach-availability-day-column{position:relative}.coach-availability-time-rail{background:#f8fafc4d}.coach-availability-time-rail>span{color:#94a3b8;font-size:10px;font-weight:600;position:absolute;right:8px}.coach-availability-day-column{border-left:2px solid var(--mantine-color-gray-3)}.coach-availability-day-column.is-past:after{content:"";z-index:2;pointer-events:none;background:#f3f4f666;position:absolute;inset:0}.coach-availability-cell{cursor:crosshair;touch-action:none;background:0 0;border:0;border-bottom:1px solid #f1f5f9;border-radius:0;width:100%;position:absolute;left:0}.coach-availability-cell:hover:not(:disabled){background:#eff6ff80}.coach-availability-cell.is-selected{z-index:1;background:#dbeafe80;border:0}.coach-availability-cell.is-past{cursor:not-allowed;background:#f3f4f666}@media (width<=36em){.coach-availability-grid{min-width:650px}.coach-availability-grid-scroll{max-height:min(48vh,360px)}}.coach-availability-modal-picker{flex:auto;min-height:0;padding-bottom:4px;display:flex}.coach-availability-modal-picker>.coach-availability-calendar{flex-direction:column;flex:auto;min-height:0;display:flex}.coach-availability-modal-picker .coach-availability-grid-scroll{flex:auto;min-height:0;max-height:none}.login-layout{grid-template-columns:minmax(0,1fr) minmax(350px,430px);align-items:center;gap:clamp(48px,7vw,104px);width:100%;max-width:1000px;margin:0 auto;padding:32px 0;display:grid}.login-intro{max-width:480px}.login-brand{color:#3182f6;letter-spacing:.16em;margin-bottom:28px;font-size:12px;font-weight:800;display:inline-block}.login-intro-title{color:#17171c;letter-spacing:-.045em;word-break:keep-all;max-width:480px;font-size:clamp(34px,4vw,46px);font-weight:800;line-height:1.25}.login-intro-description{color:#6b7684;word-break:keep-all;max-width:440px;margin-top:16px;font-size:15px;line-height:1.8}.login-form{border-left:1px solid #e5e8eb;width:100%;padding:20px 0 20px clamp(32px,5vw,64px)}.login-form-heading{margin-bottom:22px}.login-form-title{color:#17171c;letter-spacing:-.025em;font-size:24px;font-weight:800}.login-form-description{color:#6b7684;margin-top:8px;font-size:13px;line-height:1.6}.login-links{color:#a2a2a8;justify-content:center;align-items:center;gap:10px;margin-top:18px;font-size:13px;display:flex}.login-text-link{color:#3182f6;font-weight:600;text-decoration:none}.login-text-link:hover{text-underline-offset:3px;text-decoration:underline}.login-text-link:focus-visible{outline-offset:3px;border-radius:3px;outline:2px solid #3182f6}.login-legal{color:#77777c;text-align:center;margin-top:24px;font-size:12px;line-height:1.75}.login-legal a{color:#6b7684}@media (width<=48em){.login-layout{grid-template-columns:minmax(0,1fr);gap:26px;max-width:420px;padding:12px 0 0}.login-intro{max-width:none}.login-brand{margin-bottom:10px}.login-intro-title{font-size:26px;line-height:1.3}.login-intro-description{display:none}.login-form{border-left:0;padding:0}.login-form-heading{margin-bottom:18px}.login-form-title{font-size:23px}.login-legal{text-align:left;margin-top:22px}}
