.practice-form{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;align-items:end}
.practice-note{grid-column:span 2}
.repeat-box{grid-column:span 2;display:grid;grid-template-columns:1fr 1fr;align-items:end;gap:12px;padding:14px;background:#f0f3ed;border:1px solid var(--line);border-radius:12px}
.repeat-box .checkbox{height:auto;align-self:center}
.repeat-box small{grid-column:1/-1;color:var(--muted)}
.edit-options{grid-column:span 2;padding:14px;background:#f0f3ed;border:1px solid var(--line);border-radius:12px}.edit-options .checkbox{height:auto}.edit-options small{display:block;color:var(--muted);margin-top:8px}
@media(max-width:850px){.practice-form{grid-template-columns:1fr 1fr}.practice-note,.repeat-box{grid-column:span 2}}
@media(max-width:560px){.practice-form{grid-template-columns:1fr}.practice-note,.repeat-box,.edit-options{grid-column:span 1}.repeat-box{grid-template-columns:1fr}}
.participant-form{grid-template-columns:repeat(4,1fr)}.account-options{display:flex;gap:16px;align-items:center}.badge.admin{background:#e7def8;color:#5d358e}
.form-actions,.row-actions{display:flex;align-items:center;gap:10px}
.secondary{background:#e5e9e3;color:var(--ink)}
@media(max-width:850px){.participant-form{grid-template-columns:1fr 1fr}.participant-form .form-actions{grid-column:1/-1}}
@media(max-width:560px){.participant-form{grid-template-columns:1fr}.participant-form .form-actions{grid-column:auto}}
.term-information{margin:-12px 0 38px;padding:28px 32px;background:var(--card);border:1px solid var(--line);border-left:5px solid var(--green);border-radius:var(--radius)}
.term-information div{font-size:17px;line-height:1.75;margin-top:14px}.term-information strong{color:var(--green)}
.term-form{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;align-items:end}.term-info-field{grid-column:1/-1}.term-info-field textarea{width:100%;resize:vertical;border:1px solid #cbd0c9;background:#fff;border-radius:10px;padding:12px;margin-top:7px;color:var(--ink);font:inherit;line-height:1.5}.term-actions{display:flex;justify-content:space-between;gap:12px;margin-top:auto}.term-actions a{color:var(--green);font-size:13px;font-weight:800}
@media(max-width:850px){.term-form{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.term-form{grid-template-columns:1fr}.term-information{padding:22px}}
.signed-in{color:var(--muted);font-size:12px;font-weight:700}.account-options .checkbox{height:auto}
@media(max-width:560px){.signed-in{display:none}.account-options{align-items:flex-start;flex-direction:column;gap:4px}}
.profile-card{max-width:720px;background:var(--card);border:1px solid var(--line);border-radius:24px;padding:42px;margin:70px auto}.profile-card h1{font-size:clamp(40px,6vw,64px);line-height:.96;letter-spacing:-.055em;margin:16px 0}.profile-card>p{color:var(--muted);margin-bottom:30px}.profile-form{display:grid;grid-template-columns:1fr 1fr;gap:20px}.profile-form .button{grid-column:1/-1}.contact-details{display:block}.contact-details small{display:block;color:var(--muted);margin-top:4px}
@media(max-width:560px){.profile-card{padding:26px;margin:35px auto}.profile-form{grid-template-columns:1fr}.profile-form .button{grid-column:auto}}
.field-help{display:block;color:var(--muted);font-weight:500;line-height:1.35;margin-top:6px}.rent-breakdown{font-size:13px;line-height:1.55;margin-top:-4px}.practice-form input[readonly],.term-form input[readonly]{background:#edf0eb;color:#596159;cursor:not-allowed}
input:not([type="checkbox"]):not([type="radio"]),select{height:46px;min-height:46px}
.practice-form>label,.term-form>label,.participant-form>label,.profile-form>label,.form-grid>label{align-self:end}
.practice-form,.term-form,.participant-form,.profile-form,.form-grid{align-items:end}
.profile-form .button,.form-actions{min-height:46px}
.badge.maybe{background:#fff1cb;color:#8a5d0d}.password-notice{display:flex;flex-direction:column;gap:4px;background:#fff1cb;color:#714b08;border:1px solid #e8c878;border-radius:12px;padding:16px;margin:0 0 26px}.password-notice span{font-size:14px}
.badge.guest,.guest-label{background:#dcecf8;color:#245b7d}.guest-label{font-size:9px;font-weight:850;font-style:normal;text-transform:uppercase;letter-spacing:.06em;padding:3px 6px;border-radius:99px;vertical-align:middle}
.guest-card{display:grid;grid-template-columns:.7fr 1.3fr;gap:40px;margin:24px 0;padding:30px 34px;background:#eef6fb;border:1px solid #c8ddea;border-radius:var(--radius)}.guest-card h2{font-size:28px;letter-spacing:-.035em;margin:8px 0}.guest-card p{color:var(--muted);line-height:1.5}.guest-form{display:grid;grid-template-columns:1fr 1fr;gap:14px;align-items:end}.guest-form label:first-of-type{grid-column:1/-1}.guest-form .button{height:46px}
@media(max-width:700px){.guest-card{grid-template-columns:1fr}.guest-form{grid-template-columns:1fr}.guest-form label:first-of-type{grid-column:auto}}
.attendance-status{display:grid;grid-template-columns:1.4fr .6fr 1fr;align-items:center;gap:24px;margin:-12px 0 28px;padding:24px 28px;border:1px solid var(--line);border-radius:var(--radius);background:var(--card)}.attendance-status.open{border-left:5px solid var(--green)}.attendance-status.closed{border-left:5px solid var(--amber)}.attendance-status.cancelled{border-left:5px solid var(--red);background:#fff8f7}.attendance-status>div{display:flex;flex-direction:column;gap:5px}.attendance-status>div>span:not(.eyebrow){font-size:12px;color:var(--muted)}.attendance-status>div>strong{font-size:20px}.status-numbers b{font-size:32px;line-height:1;color:var(--green)}.hero-cancelled{display:inline-block;margin-left:10px;padding:4px 8px;border-radius:99px;background:#f8dedb;color:#913126;font-size:11px;font-weight:850;text-transform:uppercase}.table-subline{display:block;color:var(--muted);margin-top:4px;font-weight:500}
@media(max-width:700px){.attendance-status{grid-template-columns:1fr 1fr}.attendance-status>div:first-child{grid-column:1/-1}}
