.portal-layout{flex-direction:row;min-height:100vh;padding-top:130px;display:flex}.portal-sidebar{border-right:1px solid #ffffff1a;flex-direction:column;flex-shrink:0;width:250px;padding:2rem;display:flex}.portal-sidebar h2{color:var(--color-primary-light);margin-bottom:2rem;font-size:1.2rem}.portal-sidebar nav{flex-direction:column;gap:1rem;display:flex}.portal-sidebar>div{margin-top:auto;padding-top:2rem}.portal-main{flex:1;padding:2rem;overflow-x:hidden}.portal-grid-1-2{grid-template-columns:1fr 2fr;gap:2rem;display:grid}.portal-grid-1-3{grid-template-columns:1fr 3fr;gap:2rem;display:grid}.dashboard-grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1.25rem;display:grid}.portal-bento-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:.75rem;display:grid}.portal-bento-card{border-radius:var(--cp-radius-md,12px);border:1px solid var(--cp-hairline,#ffffff1f);background:var(--cp-surface-section,var(--cp-canvas,#ffffff08));color:inherit;gap:.25rem;padding:.75rem;text-decoration:none;transition:border-color .2s,transform .2s;display:grid}.portal-bento-card--link:hover{border-color:#b026ff73;transform:translateY(-2px)}.portal-bento-card--link:active{border-color:#b026ff8c;transform:scale(.97)}.portal-grouped-list{border-radius:var(--cp-radius-sm,10px);border:1px solid var(--cp-hairline-soft,#ffffff14);background:var(--cp-surface-raised,var(--cp-fill-soft,#ffffff05));flex-direction:column;display:flex;overflow:hidden}.portal-grouped-list-row{min-height:48px;color:var(--color-text);border-bottom:1px solid var(--cp-hairline-soft,#ffffff0f);-webkit-tap-highlight-color:transparent;justify-content:space-between;align-items:center;gap:.75rem;padding:.75rem 1rem;font-size:.95rem;font-weight:500;text-decoration:none;transition:background-color .15s,transform .1s;display:flex}.portal-grouped-list-row:last-child{border-bottom:none}.portal-grouped-list-row:active{background:#b026ff14;transform:scale(.99)}.portal-grouped-list-chevron{color:var(--color-text-muted);opacity:.7;font-size:.75rem}.portal-page-header-actions{flex-wrap:wrap;gap:.75rem;display:flex}.portal-toggle-row{cursor:pointer;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:.75rem;display:flex}.portal-toggle-row>span{flex:auto;min-width:0}.portal-athlete-list{display:grid}.portal-athlete-row{border-top:1px solid var(--cp-hairline-soft,#ffffff14);justify-content:space-between;align-items:center;gap:.75rem;padding:.5rem 0;display:flex}.portal-athlete-row:first-child{border-top:0;padding-top:.125rem}.portal-athlete-row>div{gap:.125rem;min-width:0;display:grid}.portal-athlete-row strong{color:var(--cp-ink,var(--color-text));font-size:.95rem;font-weight:650}.portal-toggle-input{appearance:none;cursor:pointer;background:#ffffff2e;border:none;border-radius:999px;flex-shrink:0;width:51px;height:31px;min-height:31px;margin:0;padding:0;transition:background-color .2s,box-shadow .2s;position:relative}.portal-toggle-input:after{content:"";background:#fff;border-radius:50%;width:27px;height:27px;transition:transform .2s;position:absolute;top:2px;left:2px;box-shadow:0 2px 6px #00000047}.portal-toggle-input:checked{background:var(--color-primary)}.portal-toggle-input:checked:after{transform:translate(20px)}.portal-toggle-input:focus-visible{outline:2px solid var(--color-primary-light);outline-offset:2px}html[data-theme=light] .portal-toggle-input{background:color-mix(in srgb, var(--color-primary) 18%, #d8d0e4);box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--color-primary) 35%, transparent)}html[data-theme=light] .portal-toggle-input:after{background:#fff;box-shadow:0 1px 3px #3c145a47}html[data-theme=light] .portal-toggle-input:checked{background:var(--color-primary);box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--color-primary) 70%, #4a0080)}html[data-theme=light] body.portal-app:not(.staff-portal-app) .portal-toggle-input{background:color-mix(in srgb, var(--cp-primary,var(--color-primary)) 18%, #d8d0e4);box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--cp-primary,var(--color-primary)) 35%, transparent)}html[data-theme=light] body.portal-app:not(.staff-portal-app) .portal-toggle-input:checked{background:var(--cp-primary,var(--color-primary))}body.portal-confirm-open{overflow:hidden}.portal-confirm-backdrop{z-index:1400;-webkit-backdrop-filter:blur(4px);background:#0000008c;position:fixed;inset:0}.portal-confirm-sheet{z-index:1401;padding:0 1rem calc(1rem + env(safe-area-inset-bottom));background:var(--cp-canvas,var(--sp-surface-raised,var(--color-bg-alt,#121212)));border-top:1px solid var(--cp-hairline,var(--sp-hairline,#b026ff40));color:var(--cp-ink,var(--sp-ink,var(--color-text)));border-radius:16px 16px 0 0;animation:.28s portal-sheet-in;position:fixed;bottom:0;left:0;right:0}.portal-confirm-title{color:var(--cp-ink,var(--sp-ink,var(--color-text)));margin:0;padding:0 .25rem .5rem;font-size:1.05rem;font-weight:600}.portal-confirm-message{color:var(--color-text-muted);margin:0 0 1rem;padding:0 .25rem;font-size:.95rem;line-height:1.45}.portal-confirm-actions{grid-template-columns:1fr 1fr;gap:.75rem;display:grid}.portal-confirm-btn{width:100%;min-height:48px}.portal-confirm-btn--danger{background:#dc2626}.portal-confirm-btn--danger:hover{background:#b91c1c}.portal-toolbar.portal-toolbar--stack{gap:.75rem;display:grid}.portal-toolbar-controls{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:.75rem 1rem;min-width:0;display:flex}.portal-toolbar-controls .portal-toolbar-filters{flex:14rem;min-width:0}.portal-toolbar-controls .portal-view-toggle{flex:none}.portal-toolbar-filters{gap:.5rem;min-width:0;display:grid}.portal-toolbar-label{letter-spacing:.06em;text-transform:uppercase;color:var(--color-text-muted);font-size:.75rem;font-weight:700}.portal-segmented-scroll{-webkit-overflow-scrolling:touch;scrollbar-width:none;gap:.5rem;padding-bottom:.125rem;display:flex;overflow-x:auto}.portal-segmented-scroll::-webkit-scrollbar{display:none}.portal-chip{border:1px solid var(--cp-hairline,#ffffff29);background:var(--cp-fill-soft,#ffffff0a);min-height:36px;color:var(--cp-ink,var(--color-text));font:inherit;cursor:pointer;-webkit-tap-highlight-color:transparent;border-radius:999px;flex-shrink:0;padding:.5rem 1rem;font-size:.85rem;font-weight:600;transition:background-color .15s,border-color .15s,transform .1s}.portal-chip.is-active{color:var(--color-primary-light);background:#b026ff2e;border-color:#b026ff8c}.portal-chip:active{transform:scale(.96)}.portal-view-toggle{background:var(--cp-surface-soft,#00000059);border:1px solid var(--cp-hairline-soft,#ffffff14);border-radius:10px;gap:.25rem;width:fit-content;padding:.25rem;display:inline-flex}.portal-view-toggle-btn{min-height:40px;color:var(--color-text-muted);font:inherit;cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:none;border-radius:8px;align-items:center;gap:.5rem;padding:.5rem .75rem;font-size:.85rem;font-weight:600;display:inline-flex}.portal-view-toggle-btn.is-active{background:var(--color-primary);color:#fff}.portal-calendar-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));align-items:start;gap:.75rem;display:grid}.parent-classes-page{gap:.75rem;display:grid}.parent-classes-page .parent-classes-toolbar.portal-toolbar{gap:.75rem;margin-bottom:0;padding:.75rem 1rem;display:grid}.parent-classes-page .portal-toolbar-controls{width:100%}.parent-classes-search{width:100%;min-width:0}.parent-classes-list-panel{min-width:0}.parent-classes-list{gap:.5rem;display:grid}.parent-classes-empty{text-align:center;color:var(--cp-muted,var(--color-text-muted));margin:0;padding:1.5rem 1rem;font-size:.9rem;font-style:italic}.parent-classes-empty--wide{grid-column:1/-1}.parent-class-day{border:1px solid var(--cp-hairline-soft);background:var(--cp-fill-soft);border-radius:12px;overflow:hidden}.parent-class-day-head{border-bottom:1px solid var(--cp-hairline-soft);background:var(--cp-fill-soft);color:var(--cp-ink,var(--color-text));letter-spacing:.03em;text-align:center;text-transform:uppercase;margin:0;padding:.5rem .75rem;font-size:.78rem;font-weight:700}.parent-class-day-body{gap:.5rem;padding:.5rem;display:grid}.portal-event-card.portal-list-row{display:block}.portal-event-card-body{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:.75rem;display:flex}.portal-event-card-actions{gap:.5rem;width:100%;max-width:280px;display:grid}.parent-events-page,.parent-lessons-page{gap:.75rem;display:grid}.parent-events-list,.parent-lessons-list{gap:.5rem;display:grid}.parent-lessons-list .portal-list-row,.parent-events-list .portal-list-row{align-items:flex-start}.parent-lessons-section-title{color:var(--cp-ink,var(--color-text));margin:0 0 .5rem;font-size:1rem}.parent-lessons-row,.parent-lessons-slot{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:.75rem;display:flex}.parent-lessons-slot-actions{gap:.5rem;min-width:min(100%,220px);display:grid}.parent-events-sessions{border:1px solid var(--cp-hairline-soft);background:var(--cp-fill-soft);border-radius:10px;gap:.5rem;margin:0;padding:.75rem;display:grid}.parent-events-sessions legend{color:var(--cp-ink,var(--color-text));padding:0 .25rem;font-size:.78rem;font-weight:800}.parent-events-session{color:var(--cp-ink,var(--color-text));cursor:pointer;align-items:center;gap:.5rem;font-size:.85rem;display:flex}@media (width>=640px){.portal-event-card-actions{width:auto;min-width:220px}}.portal-amount-chips{flex-wrap:wrap;overflow-x:visible}.portal-bento-label{letter-spacing:.04em;text-transform:uppercase;color:var(--color-text-muted);font-size:.8rem}.portal-bento-value{color:var(--cp-ink,var(--color-text));font-size:1.45rem;line-height:1.1}.portal-bento-value.is-accent{color:var(--color-primary-light)}.portal-bento-value.is-warn{color:#fbbf24}.portal-bento-hint{color:var(--color-text-muted);font-size:.85rem}.portal-quick-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;display:grid}.portal-announcement-list{gap:.75rem;display:grid}.portal-announcement-item{border-bottom:1px solid var(--cp-hairline-soft,#ffffff14);padding-bottom:.75rem}.portal-announcement-item:last-child{border-bottom:none;padding-bottom:0}.family-inbox-page{gap:.75rem;max-width:900px;display:grid}.family-inbox-toolbar{justify-content:space-between;align-items:center;gap:.75rem;margin-bottom:0;display:flex}.family-inbox-toolbar>span{color:var(--color-text-muted);font-size:.82rem;font-weight:700}.family-inbox-filters{flex-wrap:wrap;gap:.5rem;display:flex}.family-inbox-filters button{border:1px solid var(--cp-hairline-soft,#ffffff1c);background:var(--cp-fill-soft,#ffffff09);color:var(--cp-muted,var(--color-text-muted));cursor:pointer;font:inherit;border-radius:999px;padding:.5rem .75rem;font-size:.75rem;font-weight:700}.family-inbox-filters button.is-active{color:var(--cp-ink,var(--color-text));background:#b026ff29;border-color:#d88dff8c}.family-inbox-list{gap:.5rem;display:grid}.family-inbox-item{border:1px solid var(--cp-hairline-soft,#ffffff14);background:var(--cp-fill-soft,#ffffff06);color:var(--cp-ink,var(--color-text));border-radius:12px;overflow:hidden}.family-inbox-item.is-unread{background:#b026ff14;border-color:#d88dff59}.family-inbox-item>button{width:100%;color:inherit;cursor:pointer;text-align:left;background:0 0;border:0;grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:.75rem;padding:.75rem;display:grid}.family-inbox-icon{width:32px;height:32px;color:var(--color-primary-light);background:#b026ff26;border-radius:10px;place-items:center;font-size:.85rem;display:grid}.family-inbox-summary,.family-inbox-summary>span,.family-inbox-summary strong,.family-inbox-summary time{display:block}.family-inbox-summary>span{color:var(--color-primary-light);letter-spacing:.08em;text-transform:uppercase;font-size:.66rem;font-weight:800}.family-inbox-summary strong{margin:.125rem 0}.family-inbox-summary time{color:var(--color-text-muted);font-size:.72rem}.family-inbox-unread{background:var(--color-primary);color:#fff;border-radius:999px;padding:.25rem .5rem;font-size:.66rem;font-weight:800}.family-inbox-item>p{color:var(--color-text-muted);white-space:pre-wrap;margin:0;padding:0 .75rem .75rem 3.5rem;font-size:.9rem;line-height:1.5}.family-inbox-empty{border:1px dashed var(--cp-hairline,#ffffff1f);border-radius:12px;padding:1.5rem 1rem}.family-inbox-empty i{margin-bottom:.5rem;font-size:1.75rem}.family-inbox-empty h2{margin:0 0 .25rem;font-size:1.05rem}.family-inbox-empty p{margin:0;font-size:.88rem}@media (width<=600px){.family-inbox-toolbar{flex-direction:column;align-items:flex-start}.family-inbox-filters{flex-wrap:nowrap;width:100%;padding-bottom:.25rem;overflow-x:auto}.family-inbox-item>button{grid-template-columns:auto minmax(0,1fr) auto;gap:.75rem}.family-inbox-unread{grid-column:2;width:max-content}.family-inbox-item>p{padding-left:1rem}}.portal-toast-root{right:1rem;bottom:calc(5.5rem + env(safe-area-inset-bottom,0px));z-index:1200;pointer-events:none;gap:.75rem;max-width:min(360px,100vw - 2rem);display:grid;position:fixed}.portal-toast{border:1px solid var(--cp-hairline,var(--sp-hairline,#ffffff24));background:var(--cp-canvas,var(--sp-surface-raised,var(--color-bg-alt,#121212)));color:var(--cp-ink,var(--sp-ink,var(--color-text)));box-shadow:var(--cp-shadow-card,var(--sp-shadow-card,0 12px 30px #00000059));border-radius:10px;padding:.75rem 1rem;animation:.22s portal-toast-in}.portal-toast--success{border-color:#4ade8059}.portal-toast--error{border-color:#ff6b6b73}.portal-toast.is-leaving{opacity:0;transition:opacity .2s,transform .2s;transform:translateY(6px)}@keyframes portal-toast-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.portal-grid-halves{grid-template-columns:1fr 1fr;gap:1rem;display:grid}.portal-form-row{flex-wrap:wrap;gap:1rem;display:flex}.portal-form-row>*{flex:1;min-width:250px}.portal-nav-link{color:var(--cp-ink,var(--color-text));align-items:center;min-height:44px;padding:.25rem 0;text-decoration:none;display:flex}.portal-nav-link-muted{color:var(--color-text-muted)}.portal-sidebar-actions{margin-top:auto;padding-top:2rem}.portal-signout-btn{white-space:nowrap;min-height:44px;padding:.75rem 1rem;font-size:.9em}.portal-class-card{flex-flow:row;justify-content:space-between;align-items:center;gap:1rem;padding:.75rem;display:flex}.portal-class-card--compact{flex-flow:column wrap;align-items:stretch;gap:.5rem;padding:.5rem .75rem}.portal-class-card-body{flex:1;min-width:0}.portal-class-card-title{color:var(--cp-ink,var(--color-text));flex-wrap:wrap;align-items:center;gap:.5rem;margin:0 0 .25rem;font-size:1.05rem;display:flex}.portal-class-card--compact .portal-class-card-title{font-size:.95rem}.portal-class-card-type{background:var(--cp-fill-soft,color-mix(in srgb, var(--color-primary) 12%, transparent));color:var(--cp-ink,var(--color-text));border:1px solid var(--cp-hairline-soft);white-space:nowrap;border-radius:6px;padding:.125rem .5rem;font-size:.65rem;font-weight:650}.portal-class-card-meta{color:var(--cp-muted,var(--color-text-muted));flex-wrap:wrap;align-items:center;gap:.25rem .5rem;font-size:.85rem;line-height:1.35;display:flex}.portal-class-card-meta span{white-space:nowrap}.portal-class-card-meta span+span:before{content:"|";color:var(--cp-hairline,#555);margin-right:.5rem}.portal-class-card-closure{color:var(--color-text-muted);margin-top:.25rem;font-size:.8rem}.portal-class-card-coach{color:var(--cp-muted,var(--color-text-muted));align-items:center;gap:.5rem;margin-top:.5rem;font-size:.82rem;display:flex}.portal-class-card--compact .portal-class-card-coach{margin-top:.25rem;font-size:.75rem}.portal-class-card-coach-img{object-fit:cover;border:2px solid var(--color-primary-light);border-radius:50%;flex-shrink:0;width:clamp(36px,7vw,44px);height:clamp(36px,7vw,44px)}.portal-class-card--compact .portal-class-card-coach-img{width:34px;height:34px}.portal-class-card-coach strong{color:var(--cp-ink,var(--color-text))}.portal-enrollment-coach{align-items:center;gap:.75rem;margin-top:.75rem;display:flex}.portal-enrollment-coach-img{object-fit:cover;border:2px solid var(--color-primary-light);border-radius:50%;flex-shrink:0;width:clamp(52px,12vw,65px);height:clamp(52px,12vw,65px)}.portal-enrollment-coach-info{flex-direction:column;gap:.125rem;min-width:0;display:flex}.portal-enrollment-coach-label{color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.04em;font-size:.75rem}.portal-enrollment-coach-name{color:var(--color-text);font-size:clamp(.85rem,2vw,.95rem);font-weight:600}.portal-class-card-actions{flex-direction:row;flex-shrink:0;justify-content:flex-end;align-items:center;gap:.75rem;min-width:max-content;display:flex}.portal-class-card--compact .portal-class-card-actions{flex-direction:column;align-items:stretch;width:100%;min-width:0}.portal-class-card-spots{white-space:nowrap;font-size:.82rem;font-weight:650;line-height:1.2}.portal-class-card-spots.is-open{color:var(--color-success-soft,#4ade80)}.portal-class-card-spots.is-full{color:var(--color-danger-soft,#f87171)}.portal-class-card-spots.is-unverified{color:var(--color-muted,#94a3b8)}.portal-class-card-btn{white-space:nowrap;padding:.5rem 1rem;font-size:.9rem}.portal-class-card--compact .portal-class-card-btn{width:100%}.portal-modal-overlay{z-index:1300;padding:1rem;padding-bottom:calc(1rem + env(safe-area-inset-bottom));-webkit-backdrop-filter:blur(4px);background-color:#000000d1;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.portal-modal-overlay .portal-waiver-modal-panel{background:var(--cp-canvas,var(--sp-surface-panel,var(--color-bg-alt,#fff)));width:100%;max-width:800px;max-height:90vh;color:var(--cp-ink,var(--sp-ink,var(--color-text)));flex-direction:column;display:flex;overflow:hidden}.portal-waiver-modal-body{overscroll-behavior:contain;flex:1;min-height:0;padding:1rem;overflow-y:auto}.portal-waiver-modal-head{border-bottom:1px solid var(--cp-hairline-soft);justify-content:space-between;align-items:flex-start;gap:.75rem;padding:1rem;display:flex}.portal-waiver-modal-head h2{color:var(--cp-ink);margin:0 0 .25rem;font-size:1.15rem}.portal-waiver-modal-head p{color:var(--cp-muted);margin:0;font-size:.85rem}.portal-waiver-modal-head button{color:var(--cp-ink);cursor:pointer;background:0 0;border:none;padding:.125rem .25rem;font-size:1.4rem;line-height:1}.portal-waiver-modal-body .agreement-signer{max-width:none}.parent-forms-page,.parent-packet-page{gap:.75rem;display:grid}.parent-forms-section-title{color:var(--cp-ink,var(--color-text));margin:0 0 .5rem;font-size:1.05rem}.parent-forms-section-copy{margin:0 0 .75rem}.parent-forms-packet-cta{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;display:flex}.parent-forms-packet-cta h2{color:var(--cp-ink,var(--color-text));align-items:center;gap:.5rem;margin:0 0 .25rem;font-size:1.05rem;display:flex}.parent-forms-packet-cta h2 i{color:var(--cp-muted,var(--color-text-muted))}.parent-forms-alert{border:1px solid color-mix(in srgb, var(--color-danger-soft,#f33) 55%, transparent);background:color-mix(in srgb, var(--color-danger-soft,#f33) 12%, transparent);color:var(--color-danger-soft,#f33);border-radius:10px;align-items:flex-start;gap:.5rem;margin-bottom:.75rem;padding:.75rem;display:flex}.parent-forms-alert p{margin:0;font-size:.88rem;line-height:1.4}.parent-forms-alert a{color:inherit;font-weight:700}.parent-forms-empty{color:var(--color-text-muted);margin:0;font-size:.88rem;font-style:italic}.parent-forms-completed-title{color:var(--color-success-soft,#86efac);align-items:center;gap:.5rem;display:flex}.parent-forms-completed-title i{flex:none}.parent-forms-modal-pdf{margin-bottom:.75rem}.parent-forms-record{gap:.75rem;display:grid}.parent-forms-record-meta{gap:.5rem;margin:0;display:grid}.parent-forms-record-meta>div{gap:.125rem;display:grid}.parent-forms-record-meta dt{color:var(--cp-muted);letter-spacing:.04em;text-transform:uppercase;font-size:.72rem;font-weight:700}.parent-forms-record-meta dd{color:var(--cp-ink);margin:0;font-size:.9rem}.parent-forms-record-hash dd{word-break:break-all;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.78rem}.parent-forms-packet-meta{background:var(--cp-fill-soft);border:1px solid var(--cp-hairline-soft);color:var(--cp-ink);border-radius:10px;gap:.5rem;padding:.75rem;font-size:.88rem;display:grid}.parent-forms-record-actions{flex-wrap:wrap;justify-content:space-between;gap:.5rem;display:flex}.parent-packet-wizard{max-width:48rem}.parent-packet-wizard-head{justify-content:space-between;align-items:baseline;gap:.75rem;margin-bottom:.5rem;display:flex}.parent-packet-wizard-head h2{color:var(--cp-ink,var(--color-text));margin:0;font-size:1.05rem}.parent-packet-wizard-head span{color:var(--color-text-muted);white-space:nowrap;font-size:.85rem}.parent-packet-progress{background:var(--cp-hairline-soft);border-radius:999px;height:4px;margin-bottom:.75rem;overflow:hidden}.parent-packet-progress>div{border-radius:inherit;background:var(--color-primary);height:100%;transition:width .3s}.parent-packet-page .wizard-step{gap:.5rem;display:grid}.parent-packet-page .wizard-step h3{border-bottom:1px solid var(--cp-hairline-soft);color:var(--cp-ink,var(--color-text));margin:0;padding-bottom:.25rem;font-size:.95rem}.parent-packet-page .wizard-step .form-group{margin:0}.parent-packet-page .wizard-step .form-group label{margin-bottom:.25rem;font-size:.75rem}.parent-packet-readonly{opacity:.72}.parent-packet-initials{gap:.5rem;max-height:320px;padding-right:.25rem;display:grid;overflow-y:auto}.parent-packet-initial{border:1px solid var(--cp-hairline-soft);background:var(--cp-fill-soft);cursor:pointer;border-radius:8px;align-items:flex-start;gap:.5rem;padding:.5rem .75rem;display:flex}.parent-packet-initial input{flex:none;width:1.1rem;height:1.1rem;margin-top:.125rem}.parent-packet-initial span{color:var(--cp-ink,var(--color-text));font-size:.86rem;line-height:1.4}.parent-packet-signer{border-top:1px solid var(--cp-hairline-soft);margin-top:.25rem;padding-top:.75rem}.parent-packet-nav{flex-wrap:wrap;justify-content:space-between;gap:.5rem;margin-top:.25rem;display:flex}.parent-packet-nav--end{justify-content:flex-end}.parent-packet-success{text-align:center;justify-items:center;gap:.75rem;display:grid}.parent-packet-success>i{color:var(--color-primary-light);font-size:2.4rem}.parent-packet-warn{color:var(--color-warning);margin:0;font-size:.85rem}.parent-packet-actions{flex-wrap:wrap;justify-content:center;gap:.5rem;display:flex}html[data-theme=light] body.portal-app:not(.staff-portal-app) .parent-forms-completed-title{color:var(--color-success-soft,#15803d)}html[data-theme=light] body.portal-app:not(.staff-portal-app) .parent-packet-initial,html[data-theme=light] body.portal-app:not(.staff-portal-app) .parent-forms-packet-meta{border-color:var(--cp-hairline);background:#fff}body.portal-modal-open{overflow:hidden}.portal-tab-nav{display:none}.portal-tab-link{font-family:var(--font-body);color:var(--color-text-muted);cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:none;flex-direction:column;justify-content:center;align-items:center;gap:.25rem;min-width:56px;min-height:44px;padding:.25rem;font-size:.68rem;font-weight:600;text-decoration:none;display:flex}.portal-tab-link.active{color:var(--color-primary-light)}.portal-tab-link:active{opacity:.85;transform:scale(.92)}.portal-tab-icon{width:2.35rem;height:2.35rem;color:var(--color-text-muted);background:linear-gradient(155deg,#b026ff24,#500c7814);border-radius:11px;justify-content:center;align-items:center;font-size:1.15rem;transition:transform .18s,box-shadow .18s,color .18s,background .18s;display:inline-flex;box-shadow:inset 0 1px #ffffff24,0 2px 8px #00000073,0 0 0 1px #b026ff29}.portal-tab-link.active .portal-tab-icon{color:#fff;filter:drop-shadow(0 2px 4px #b026ff59);background:linear-gradient(155deg,#d66cff8c,#7a18b8a6);box-shadow:inset 0 1px #ffffff47,0 4px 14px #b026ff61,0 0 0 1px #e8a0ff59}.portal-tab-link:active .portal-tab-icon{transform:scale(.9)translateY(1px)}body.portal-app:not(.staff-portal-app){--portal-tab-bar-clearance:calc(52px + env(safe-area-inset-bottom,0px))}.portal-more-backdrop{top:0;left:0;right:0;bottom:var(--portal-tab-bar-clearance,52px);z-index:1101;-webkit-backdrop-filter:blur(4px);background:#0000008c;position:fixed}.portal-more-backdrop[hidden],.portal-more-menu[hidden]{pointer-events:none;display:none!important}body.portal-more-open{overflow:hidden}.portal-more-menu{z-index:1102;background:var(--cp-canvas,var(--sp-surface-panel,var(--color-bg-alt,#121212)));border:1px solid var(--cp-hairline,#b026ff40);box-shadow:var(--cp-shadow-card,0 12px 40px #00000073);-webkit-backdrop-filter:blur(20px);color:var(--cp-ink,var(--sp-ink,var(--color-text)));flex-direction:column;display:flex;position:fixed}.portal-more-menu[hidden]{display:none}.portal-more-sheet-head{touch-action:none;cursor:grab;flex:none;min-height:52px}.portal-more-sheet-handle{background:var(--cp-fill,#ffffff38);border-radius:999px;width:44px;height:5px;margin:.75rem auto .25rem}.portal-more-sheet-title-row{justify-content:space-between;align-items:center;gap:.75rem;padding:0 .75rem .5rem 1.25rem;display:flex}.portal-more-sheet-title{letter-spacing:.06em;text-transform:uppercase;color:var(--color-text-muted);margin:0;padding:0;font-size:.8rem;font-weight:700}.portal-more-close{border:1px solid var(--cp-hairline,#b026ff47);background:var(--cp-fill-soft,#b026ff14);width:44px;height:44px;color:var(--cp-ink,var(--color-text));cursor:pointer;-webkit-tap-highlight-color:transparent;border-radius:12px;flex:none;justify-content:center;align-items:center;margin:0;padding:0;font-size:1.15rem;display:inline-flex}.portal-more-close:active{background:var(--cp-fill-soft,#b026ff1f)}.portal-more-sheet-nav{-webkit-overflow-scrolling:touch;scrollbar-width:none;flex-direction:column;flex:auto;min-height:0;display:flex;overflow-y:auto}.portal-more-sheet-nav::-webkit-scrollbar{display:none}.portal-more-sheet-footer{border-top:1px solid var(--cp-hairline-soft,#ffffff14);flex:none;gap:.25rem;padding:.5rem .75rem .75rem;display:grid}.portal-more-theme-toggle{border-radius:14px;justify-content:flex-start;width:100%;min-height:48px;margin:0;padding:.75rem 1rem}.portal-more-theme-toggle .theme-toggle-label{font-family:var(--font-heading);text-transform:none;letter-spacing:-.01em;color:var(--cp-ink,var(--color-text));font-size:.95rem;font-weight:600;display:inline}.portal-more-link{text-align:left;width:100%;color:var(--cp-ink,var(--color-text));font:inherit;cursor:pointer;border:none;border-top:1px solid var(--cp-hairline-soft,#ffffff0f);-webkit-tap-highlight-color:transparent;background:0 0;align-items:center;min-height:48px;padding:1rem 1.25rem;text-decoration:none;transition:background-color .15s;display:flex}.portal-more-link:first-of-type{border-top:none}.portal-more-link.is-active{color:var(--color-primary-light);background:#b026ff1a}.portal-more-link:active{background:#b026ff24}.portal-more-signout{color:var(--color-danger-soft,#ff8f8f);border-top:none;border-radius:14px;margin-top:0}@media (width<=900px){body.portal-app{padding-bottom:calc(5.25rem + env(safe-area-inset-bottom));-webkit-overflow-scrolling:touch;overscroll-behavior-y:none;-webkit-tap-highlight-color:transparent}body.portal-app footer{display:none}.portal-layout{flex-direction:column;min-height:100dvh;padding-top:4.5rem}.portal-sidebar{display:none}.portal-grid-1-2,.portal-grid-1-3,.portal-grid-halves{grid-template-columns:1fr}.portal-bento-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem}.portal-bento-card{padding:1rem}.portal-bento-value{font-size:1.45rem}.portal-bento-hint{font-size:.72rem;line-height:1.35}.portal-quick-actions{grid-template-columns:1fr}.portal-main{padding:1rem var(--padding-x) 1.25rem;width:100%}.portal-form-row>*{flex-basis:100%;min-width:0}.dashboard-header h1,.portal-page-title{letter-spacing:-.03em;font-weight:700;line-height:1.12;font-size:1.85rem!important}.dashboard-header{margin-bottom:1.25rem!important}.portal-section-title{letter-spacing:-.025em;font-size:1.2rem;font-weight:700}.ui-flex-between{flex-wrap:wrap;gap:.75rem}.ui-grid-2{grid-template-columns:1fr}.ui-badge-btn{min-height:44px;padding:.5rem 1rem;font-size:.95rem}.billing-card-grid{grid-template-columns:1fr 1fr!important}.billing-card-grid>:last-child{grid-column:1/-1}.billing-table-desktop{display:none}.billing-invoice-list{background:color-mix(in srgb, var(--color-bg-card,#141018) 92%, transparent);border:1px solid #ffffff14;border-radius:18px;gap:0;display:grid;overflow:hidden;box-shadow:0 10px 28px #00000047}.portal-app .billing-list-item{border-bottom:1px solid #ffffff0f;padding:1rem}.portal-app .billing-list-item:active{background:#b026ff14}.portal-app .portal-panel-card{border-radius:20px;padding:1rem 1.25rem;box-shadow:0 14px 32px #00000047,inset 0 1px #ffffff0d}.portal-app .btn{letter-spacing:-.01em;border-radius:14px;min-height:48px;font-weight:600}.portal-app .btn:active{transform:scale(.97)}.portal-app input:not([type=checkbox]):not([type=radio]),.portal-app select,.portal-app textarea,.portal-app .ui-input-dark{border-radius:12px;min-height:48px;font-size:16px!important}.portal-modal-overlay .portal-waiver-modal-panel{margin-top:auto;box-shadow:0 -12px 48px #00000073;border-radius:22px 22px 0 0!important;max-height:92dvh!important}.portal-waiver-modal-body{padding:1rem;padding-bottom:calc(1rem + env(safe-area-inset-bottom))}.portal-modal-overlay.portal-waiver-modal-backdrop{align-items:flex-end!important;padding:0!important}.portal-class-card:not(.portal-class-card--compact){flex-flow:column wrap;align-items:stretch}.portal-class-card:not(.portal-class-card--compact) .portal-class-card-actions{flex-direction:row;justify-content:space-between;align-items:center;width:100%;min-width:0}.portal-class-card:not(.portal-class-card--compact) .portal-class-card-btn{width:auto}.portal-toolbar-controls{align-items:stretch}.portal-toolbar-controls .portal-view-toggle{width:100%}.portal-toolbar-controls .portal-view-toggle-btn{flex:1 1 0;justify-content:center}}.billing-invoice-list{display:none}@media (width<=900px){.billing-invoice-list{display:grid}}.portal-app .billing-list-item{box-shadow:none;background:0 0;border-bottom:1px solid #ffffff0f;border-radius:0;gap:4px;padding:12px 0;display:grid}.portal-app .billing-list-item:last-child{border-bottom:none}.portal-app .billing-list-item-head{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.portal-app .billing-list-item-meta{color:var(--color-text-muted);font-size:14px}.portal-app .billing-list-item-foot{justify-content:space-between;align-items:center;gap:12px;margin-top:4px;display:flex}.portal-app .billing-panel-stack{flex-direction:column;display:flex}.parent-billing-page{font-variant-numeric:tabular-nums;font-feature-settings:"tnum" 1;gap:16px;min-width:0;max-width:100%;display:grid}.parent-billing-top-grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));align-items:stretch;gap:16px;display:grid}body.portal-app:not(.staff-portal-app) .parent-billing-page>.portal-panel-card,body.portal-app:not(.staff-portal-app) .parent-billing-top-grid>.portal-panel-card{margin-bottom:0}body.portal-app:not(.staff-portal-app) .parent-billing-page>.portal-panel-card:not(.ui-notice--warn),body.portal-app:not(.staff-portal-app) .parent-billing-top-grid>.portal-panel-card{box-shadow:none;background:0 0;border:none;border-radius:0;padding:0}body.portal-app:not(.staff-portal-app) .parent-billing-page>*+*{--cp-seam:24px;margin-top:calc(var(--cp-seam) + var(--cp-zone-step,0px))}body.portal-app:not(.staff-portal-app) .parent-billing-page>.ui-zone-start{--cp-zone-step:16px}body.portal-app:not(.staff-portal-app) .portal-home>.ui-zone-start{margin-top:16px}body.portal-app:not(.staff-portal-app) .parent-billing-page>:has(.parent-billing-table)+*{--cp-seam:13px}body.portal-app:not(.staff-portal-app) .parent-billing-page>:has(.parent-billing-table tfoot)+*{--cp-seam:14px}body.portal-app:not(.staff-portal-app) .parent-billing-page>:has(.parent-billing-table-note)+*{--cp-seam:24px}body.portal-app:not(.staff-portal-app) .parent-billing-page{background:var(--cp-surface-section);border-radius:var(--cp-radius-md,14px);row-gap:0;padding:24px;line-height:20px}body.portal-app:not(.staff-portal-app) .parent-billing-page>.customer-portal-page-header{margin-bottom:0}body.portal-app:not(.staff-portal-app) .parent-billing-page .portal-brand-eyebrow{font-size:12px;font-family:var(--font-body);line-height:16px}.parent-billing-page .portal-page-subtitle,.parent-billing-page .ui-text-sm{font-size:14px}.invoice-detail-panel{border:1px solid var(--cp-hairline-soft,#ffffff14);background:var(--cp-fill-soft,#ffffff08);border-radius:8px;gap:12px;margin-top:12px;padding:12px;display:grid}.invoice-detail-balance{color:var(--sp-success,#37cf8a)}.invoice-detail-balance--open{color:var(--sp-danger,#f26d64)}.autopay-setup{gap:12px;display:grid}.autopay-setup-head{justify-content:space-between;align-items:center;gap:12px;display:flex}.autopay-setup-title{margin-bottom:4px;font-size:14px;display:block}.autopay-setup-toggle{cursor:pointer;border-radius:10px;flex-shrink:0;align-items:center;gap:8px;min-height:44px;padding:8px 12px;display:flex}body.portal-app:not(.staff-portal-app) .parent-billing-page .autopay-setup-toggle{padding-right:0}.autopay-setup-toggle input,.autopay-consent-option input{width:22px;height:22px;accent-color:var(--color-primary);margin:0}body.portal-app:not(.staff-portal-app) .autopay-setup-toggle input[type=checkbox],body.portal-app:not(.staff-portal-app) .autopay-consent-option input[type=checkbox]{appearance:none;background-color:var(--cp-surface-input,#0b0b0d);border:1px solid var(--cp-hairline,#ffffff1a);cursor:pointer;border-radius:4px}body.portal-app:not(.staff-portal-app) .autopay-setup-toggle input[type=checkbox]:checked,body.portal-app:not(.staff-portal-app) .autopay-consent-option input[type=checkbox]:checked{background-color:var(--cp-primary,var(--color-primary));border-color:var(--cp-primary,var(--color-primary));background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='none' stroke='%23fff' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round' d='M3.5 8.5l3 3 6-7'/%3E%3C/svg%3E");background-position:50%;background-repeat:no-repeat;background-size:14px 14px}.autopay-setup-toggle:focus-within,.autopay-consent-option:focus-within{outline:3px solid color-mix(in srgb, var(--color-primary) 45%, transparent);outline-offset:2px}.autopay-setup-toggle.is-busy{cursor:wait}.autopay-consent{border:1px solid var(--cp-hairline-soft);background:var(--cp-fill-soft);border-radius:8px;gap:.75rem;padding:.75rem;display:grid}.autopay-consent-option{cursor:pointer;border-radius:10px;grid-template-columns:auto 1fr;align-items:start;gap:.5rem;min-height:44px;padding:.5rem;display:grid}.autopay-consent-option-title{margin-bottom:.125rem;display:block}.autopay-status{border-radius:8px;padding:.5rem .75rem}.autopay-status--danger{color:var(--sp-danger,#f26d64);background:color-mix(in srgb, var(--sp-danger,#f26d64) 12%, transparent);border:1px solid color-mix(in srgb, var(--sp-danger,#f26d64) 35%, transparent)}.autopay-status--warn{color:var(--sp-warn,#d4a017);background:color-mix(in srgb, var(--sp-warn,#d4a017) 12%, transparent);border:1px solid color-mix(in srgb, var(--sp-warn,#d4a017) 35%, transparent)}.autopay-card-form{border:1px solid var(--cp-hairline,#ffffff1f);background:color-mix(in srgb, var(--cp-surface,#17131f) 94%, var(--color-primary) 6%);border-radius:16px;gap:.75rem;padding:1rem;display:grid;overflow:hidden}.autopay-card-container,.square-pay-card-container{width:100%;min-width:0;min-height:96px;overflow:visible}.autopay-card-container iframe,.square-pay-card-container iframe{max-width:100%;width:100%!important}.square-pay-panel{gap:1rem;min-width:0;display:grid}.square-pay-panel-head{justify-content:space-between;align-items:flex-start;gap:.75rem;padding-bottom:.25rem;display:flex}.square-pay-panel-head>div{gap:.125rem;min-width:0;display:grid}.square-pay-panel-title{color:var(--cp-ink,var(--color-text));margin:0;font-size:1rem;line-height:1.25;display:block}.square-pay-panel-total{color:var(--cp-ink,var(--color-text));flex:none;font-size:1.35rem;line-height:1}.square-pay-wallet:empty{display:none}.square-pay-wallet:not(:empty){min-height:48px}.square-apple-pay-button{cursor:pointer;-webkit-appearance:-apple-pay-button;-apple-pay-button-type:plain;-apple-pay-button-style:black;background:#000;border:0;border-radius:8px;width:100%;height:48px;min-height:48px;margin:0;padding:0;display:block}.square-apple-pay-button:disabled{cursor:not-allowed;opacity:.55}.square-apple-pay-button+.square-pay-wallet:not(:empty){margin-top:.75rem}.square-pay-card{border:1px solid var(--cp-hairline,#ffffff1f);background:color-mix(in srgb, var(--cp-surface,#17131f) 94%, var(--color-primary) 6%);border-radius:16px;gap:.75rem;min-width:0;padding:1rem;display:grid;overflow:hidden;box-shadow:0 14px 30px #0a06122e}.square-pay-card-heading{min-width:0;color:var(--cp-ink,var(--color-text));justify-content:space-between;align-items:center;gap:.75rem;display:flex}.square-pay-card-heading>span,.square-pay-card-heading>small{align-items:center;gap:.5rem;display:inline-flex}.square-pay-card-heading>span{min-width:0;font-weight:750}.square-pay-card-heading>small{color:var(--cp-muted,var(--color-text-muted));white-space:nowrap;flex:none;font-size:.72rem}.square-pay-card-submit{min-height:50px;font-size:1rem;font-weight:750}.square-pay-ach{border-top:1px solid var(--cp-hairline-soft);gap:.75rem;padding:1rem 0 0;display:grid}.square-pay-ach .btn,.autopay-card-form .btn{min-height:48px}.square-pay-ach-note{align-items:flex-start;gap:.5rem;line-height:1.45;display:flex}.square-pay-receipt{text-align:center;text-decoration:none}@media (width<=600px){.square-pay-panel{gap:.75rem}.square-pay-panel-head{align-items:center;padding:0 .125rem}.square-pay-panel-total{font-size:1.5rem}.square-pay-card,.autopay-card-form{border-radius:18px;gap:.75rem;margin-inline:-.25rem;padding:1rem .75rem;box-shadow:0 16px 34px #0a06123d}.square-pay-card-heading{flex-direction:column;align-items:flex-start;gap:.25rem}.square-pay-card-heading>span{font-size:1rem}.square-pay-card-heading>small{font-size:.75rem}.autopay-card-container,.square-pay-card-container{min-height:112px}.square-pay-card-submit,.square-pay-ach .btn,.autopay-card-form .btn,.square-apple-pay-button{border-radius:12px;min-height:52px;font-size:.98rem}.square-pay-ach{padding-top:1rem}}.parent-athlete-enrollment-price{color:var(--cp-ink,var(--color-text));font-size:.95rem;font-weight:700}.parent-billing-section-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:8px 12px;margin-bottom:12px;display:flex}.parent-billing-section-head h2,.parent-billing-section-head h3{color:var(--cp-ink,var(--color-text));margin:0;font-size:20px;line-height:28px}.parent-billing-gift .parent-billing-section-head{margin-bottom:8px}.parent-billing-inline-form{flex-wrap:wrap;gap:8px;min-width:0;max-width:100%;margin-bottom:8px;display:flex}.parent-billing-inline-form .ui-input-dark{flex:180px;min-width:0}.parent-billing-page .portal-stat-value{font-size:28px;font-family:var(--font-heading);color:var(--cp-ink,var(--color-text));margin:4px 0 12px;line-height:36px}.parent-billing-page .portal-stat-value.is-accent{color:var(--cp-ink,var(--color-text))}.parent-billing-page .portal-stat-label{color:var(--cp-ink,var(--color-text));margin:0;font-size:20px;font-weight:600;line-height:28px}.parent-billing-note{align-items:flex-start;gap:4px;margin:0 0 12px;font-size:14px;display:flex}.parent-billing-note i{flex:none;margin-top:2px}.parent-billing-note--credit{color:var(--color-success-soft,var(--color-success))}.parent-billing-note--open{color:var(--color-warning)}.parent-billing-note--muted{color:var(--color-text-muted);font-style:italic}.parent-billing-cta{text-align:center;text-decoration:none}.parent-billing-payment{flex-direction:column;gap:12px;display:flex}.parent-billing-payment>.parent-billing-section-head{margin-bottom:0}.parent-billing-page .parent-billing-cta,.parent-billing-page .autopay-card-action{margin-top:auto}.parent-billing-page .autopay-setup{flex-direction:column;flex:1;display:flex}.parent-billing-page .portal-saved-card{gap:12px;padding:12px}.parent-billing-page .portal-saved-card i{color:var(--cp-muted,var(--color-text-muted));font-size:28px}.parent-billing-page .portal-saved-card strong,.parent-billing-page .portal-saved-card span{display:block}.parent-billing-page .portal-saved-card strong{color:var(--cp-ink,var(--color-text));font-size:14px}.parent-billing-page .portal-saved-card span{color:var(--color-text-muted);font-size:12px}.parent-billing-page .portal-card-empty{padding:16px 8px 0}.parent-billing-page .portal-card-empty i{margin-bottom:8px;font-size:28px}.parent-billing-page .portal-card-empty p{margin:0;font-size:14px}.parent-billing-total{color:var(--cp-ink,var(--color-text));font-size:14px;line-height:20px}@media (width>=901px){.parent-billing-section-head .parent-billing-total{display:none}}.parent-billing-empty{color:var(--color-text-muted);margin:0;font-size:14px;font-style:italic}.parent-billing-table-note{color:var(--color-text-muted);margin:12px 0 0;font-size:14px}.parent-billing-row-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.parent-billing-table{text-align:left;border-collapse:collapse;width:100%}.parent-billing-table th,.parent-billing-table td{vertical-align:top;padding:10px 12px 10px 0}.parent-billing-table thead tr,.parent-billing-table tbody tr{border-bottom:1px solid var(--cp-hairline-soft,#ffffff0f)}.parent-billing-table tbody tr:last-child{border-bottom:1px solid var(--cp-hairline,#ffffff1a)}.parent-billing-table th{color:var(--color-text-muted);letter-spacing:.04em;text-transform:uppercase;font-size:12px;font-weight:700;line-height:20px}.parent-billing-table td{color:var(--cp-ink,var(--color-text));font-size:14px;line-height:20px}.parent-billing-table th.parent-billing-receipt-col,.parent-billing-table tfoot td{text-align:right}.parent-billing-table tfoot td:first-child{text-align:left;color:var(--cp-muted,var(--color-text-muted))}.parent-billing-table tfoot strong{color:var(--cp-ink,var(--color-text))}.parent-billing-row-reason{color:var(--color-danger-soft);margin-top:4px;font-size:12px;line-height:16px;display:block}.parent-billing-dash{color:var(--cp-muted,var(--color-text-muted));font-size:14px;line-height:20px}.parent-billing-table th.parent-billing-amount,.parent-billing-table td.parent-billing-amount,.parent-billing-table td.parent-billing-amount--charge,.parent-billing-table td.parent-billing-amount--credit{text-align:right}.parent-billing-table th.parent-billing-col-tight,.parent-billing-table td.parent-billing-col-tight{white-space:nowrap;width:1%}.parent-billing-table.parent-billing-table--tuition th,.parent-billing-table.parent-billing-table--tuition td{white-space:nowrap}.parent-billing-table-actions{text-align:right}.parent-billing-table-actions,.parent-billing-table-actions .parent-billing-row-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;display:flex}.parent-billing-link{color:var(--color-primary-light);font-size:14px;font-weight:700;text-decoration:none}.parent-billing-amount--charge{color:var(--color-danger-soft)}.parent-billing-amount--credit{color:var(--color-success-soft)}.parent-billing-page .billing-list-item{padding:8px 0}body.portal-app:not(.staff-portal-app) .parent-billing-page .staff-cms-status-chip{height:20px;padding:0 8px;font-size:12px;line-height:20px}body.portal-app:not(.staff-portal-app) .parent-billing-table td .staff-cms-status-chip{width:fit-content;display:block}html[data-theme=light] body.portal-app:not(.staff-portal-app) .parent-billing-page .portal-stat-value.is-accent{color:var(--color-primary)}html[data-theme=light] body.portal-app:not(.staff-portal-app) .parent-billing-page .portal-saved-card{border-color:var(--cp-hairline);background:#fff}html[data-theme=light] body.portal-app:not(.staff-portal-app) .billing-invoice-list{border-color:var(--cp-hairline-soft,#3c1e5a24);box-shadow:none;background:#f6f3fa}html[data-theme=light] body.portal-app:not(.staff-portal-app) .billing-list-item{border-bottom-color:var(--cp-hairline-soft,#3c1e5a24);color:var(--color-text)}html[data-theme=light] body.portal-app:not(.staff-portal-app) .billing-list-item:active{background:var(--cp-fill-soft,#5a00a80d)}@media (width>=1367px){body.portal-app:not(.staff-portal-app):not([data-customer-chrome=phone]):not([data-customer-chrome=tablet]) .portal-tab-nav,body.portal-app:not(.staff-portal-app):not([data-customer-chrome=phone]):not([data-customer-chrome=tablet]) .portal-more-menu,body.portal-app:not(.staff-portal-app):not([data-customer-chrome=phone]):not([data-customer-chrome=tablet]) .portal-more-backdrop{display:none!important}}.ui-container{max-width:900px;margin:0 auto}.ui-container-sm{max-width:400px;margin:0 auto}.ui-container-md{max-width:800px;margin:0 auto}.ui-container-lg{max-width:1200px;margin:0 auto}.ui-flex-between{justify-content:space-between;align-items:center;display:flex}.ui-flex-start{justify-content:flex-start;align-items:flex-start;display:flex}.ui-flex-wrap{flex-wrap:wrap;display:flex}.ui-grid-2{grid-template-columns:1fr 1fr;gap:1rem;display:grid}.ui-grid-auto{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;display:grid}.ui-grid-gap-1{gap:1rem;display:grid}.ui-p-1{padding:1rem}.ui-p-1-5{padding:1.5rem}.ui-p-2{padding:2rem}.ui-p-4{padding:4rem}.ui-m-0{margin:0}.ui-mb-0{margin-bottom:0}.ui-mb-05{margin-bottom:.5rem}.ui-mb-1{margin-bottom:1rem}.ui-mb-1-5{margin-bottom:1.5rem}.ui-mb-2{margin-bottom:2rem}.ui-mt-05{margin-top:.5rem}.ui-mt-1{margin-top:1rem}.ui-w-100{width:100%}.ui-text-right{text-align:right}.ui-h-fit{height:fit-content}.ui-text-muted{color:var(--color-text-muted)}.ui-text-sm{font-size:.85rem}.ui-text-danger{color:#f33}.ui-text-success{color:#3f3}.ui-border-b{border-bottom:1px solid #ffffff1a;padding-bottom:.5rem}.ui-btn-link{color:var(--color-primary-light);cursor:pointer;background:0 0;border:none;text-decoration:underline}.ui-card-sm{background:#0000004d;border-radius:8px;padding:1rem}.parent-athletes-page{gap:.75rem;display:grid}.parent-athletes-empty{padding:1.25rem 1rem}.parent-athletes-empty>i{color:var(--cp-muted,var(--color-text-muted));margin-bottom:.5rem;font-size:1.5rem;display:block}.parent-athletes-empty h3{margin:0 0 .25rem}.parent-athletes-empty p{margin:0 0 1rem;font-size:.9rem}.parent-athlete-profiles{gap:.75rem}.parent-athlete-profile.portal-panel-card{gap:.75rem;padding:.75rem;display:grid}.parent-athlete-switcher{display:none}.parent-athlete-switcher button{background:var(--cp-surface-raised,#ffffff06);border:1px solid var(--cp-hairline-soft,#ffffff14);color:var(--cp-ink,var(--color-text))}.parent-athlete-profile-hero{border-bottom:1px solid var(--cp-hairline-soft,#ffffff17);justify-content:space-between;align-items:center;gap:.75rem;margin-bottom:0;padding-bottom:.5rem;display:flex}.parent-athlete-profile-person{align-items:center;gap:.75rem;min-width:0;display:flex}.parent-athlete-avatar-wrap{flex:none;position:relative}.parent-athlete-avatar{border:1px solid var(--cp-hairline,#5a00a847);object-fit:cover;width:48px;height:48px;box-shadow:none;border-radius:50%}.parent-athlete-photo-button{border:2px solid var(--cp-surface-section,var(--cp-canvas,#17131e));background:var(--color-primary);color:#fff;cursor:pointer;border-radius:50%;place-items:center;width:28px;height:28px;padding:0;font-size:.68rem;display:grid;position:absolute;bottom:1px;right:-2px}.parent-athlete-identity{min-width:0}.parent-athlete-eyebrow{color:var(--cp-muted,var(--color-text-muted));letter-spacing:.08em;text-transform:uppercase;margin-bottom:.125rem;font-size:.68rem;font-weight:700;display:block}.parent-athlete-identity h2{font-family:var(--font-heading);font-size:clamp(1.1rem,2.4vw,1.35rem);line-height:1.15}.parent-athlete-meta{color:var(--color-text-muted);flex-wrap:wrap;gap:.25rem .75rem;margin-top:.25rem;font-size:.78rem;display:flex}.parent-athlete-profile-actions{flex-wrap:wrap;gap:.5rem;display:flex}.parent-athlete-profile-actions .btn{justify-content:center;align-items:center;gap:.25rem;display:inline-flex}.parent-athlete-stats{border:1px solid var(--cp-hairline-soft,#ffffff12);background:var(--cp-fill-soft,#ffffff06);border-radius:8px;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;margin:0;display:grid;overflow:hidden}.parent-athlete-stats>div{text-align:center;background:0 0;border:0;border-radius:0;min-width:0;padding:.5rem}.parent-athlete-stats>div+div{border-left:1px solid var(--cp-hairline-soft,#ffffff12)}.parent-athlete-stats span,.parent-athlete-stats strong{display:block}.parent-athlete-stats span{color:var(--color-text-muted);letter-spacing:.05em;text-transform:uppercase;margin-bottom:.125rem;font-size:.62rem;font-weight:700}.parent-athlete-stats strong{color:var(--cp-ink,var(--color-text));font-size:1rem}.parent-athlete-section{border:1px solid var(--cp-hairline-soft,#fff1);background:var(--cp-fill-soft,#ffffff05);border-radius:8px;margin:0;padding:.5rem .75rem}.parent-athlete-section-label{color:var(--cp-muted,var(--color-text-muted));letter-spacing:.04em;text-transform:uppercase;font-size:.72rem;font-weight:700;display:block}.parent-athlete-inline-form,.parent-athlete-section--family{gap:.75rem;display:grid}.parent-athlete-inline-actions{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.parent-athlete-inline-actions .btn.ui-badge-btn,.parent-athlete-inline-actions label.btn{cursor:pointer}.parent-athlete-medical{background:#ff64641a;border-left:3px solid #ff6464;border-radius:8px;padding:.75rem}.parent-athlete-medical strong{color:#ff8a8a;letter-spacing:.04em;text-transform:uppercase;margin-bottom:.125rem;font-size:.78rem;font-weight:800;display:block}.parent-athlete-medical span{color:var(--cp-ink,var(--color-text));font-size:.88rem;line-height:1.4}.parent-athlete-empty-note{color:var(--color-text-muted);margin:0;font-size:.88rem;font-style:italic}.parent-athlete-empty-note a{color:var(--color-primary-light);font-style:normal;text-decoration:none}.parent-athlete-section--document{border-left:3px solid var(--color-primary-light);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;display:flex}.parent-athlete-section--billing{border-left:3px solid #a448f5b8;gap:.75rem;display:grid}.parent-athlete-section--billing .parent-athlete-section-heading{margin-bottom:0}.parent-athlete-billing-values{grid-template-columns:repeat(2,minmax(0,1fr));gap:.5rem;display:grid}.parent-athlete-billing-values>div{border:1px solid var(--cp-hairline-soft,#ffffff12);background:var(--cp-fill-soft,#ffffff06);border-radius:10px;padding:.5rem .75rem}.parent-athlete-billing-values span,.parent-athlete-billing-values strong,.parent-athlete-billing-values small{display:block}.parent-athlete-billing-values span{color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.05em;font-size:.72rem;font-weight:700}.parent-athlete-billing-values strong{color:var(--cp-ink,var(--color-text));margin:.125rem 0;font-size:1.05rem}.parent-athlete-billing-values small,.parent-athlete-section--billing>p{color:var(--color-text-muted);font-size:.78rem}.parent-athlete-section--billing>p{margin:0;line-height:1.5}.parent-athlete-section--classes{border:0;padding:0}.parent-athlete-section-heading{justify-content:space-between;align-items:end;gap:.75rem;margin-bottom:.5rem;display:flex}.parent-athlete-section-heading span{color:var(--color-primary-light);letter-spacing:.08em;text-transform:uppercase;margin-bottom:.125rem;font-size:.62rem;font-weight:800;display:block}.parent-athlete-section-heading h3{margin:0;font-size:1.05rem}.parent-athlete-section-heading>a{color:var(--color-primary-light);font-size:.78rem;text-decoration:none}.parent-attendance-recovery{gap:.75rem;display:grid}.parent-attendance-recovery .parent-athlete-section-heading{margin-bottom:0}.parent-attendance-recovery .parent-athlete-section-heading>strong{color:var(--color-primary-light);font-size:.8rem}.parent-makeup-workspace,.parent-makeup-requests,.parent-makeup-list{gap:.5rem;display:grid}.parent-makeup-credit,.parent-makeup-request{background:#a448f512;border:1px solid #a448f53d;border-radius:12px;flex-wrap:wrap;align-items:center;gap:.75rem;padding:.75rem;display:flex}.parent-makeup-credit>span,.parent-makeup-request>span{flex:1;min-width:0}.parent-makeup-credit>.btn,.parent-makeup-request>button{margin-left:auto}.parent-makeup-credit i,.parent-makeup-request i{color:var(--color-primary-light)}.parent-makeup-credit span,.parent-makeup-credit strong,.parent-makeup-credit small,.parent-makeup-request span,.parent-makeup-request strong,.parent-makeup-request small{display:block}.parent-makeup-credit small,.parent-makeup-request small{color:var(--color-text-muted);margin-top:.125rem}.parent-makeup-request.is-approved{background:#37c47814;border-color:#37c47859}.parent-makeup-request.is-approved i{color:#55d890}.parent-makeup-decision{color:#f1c96c!important}.parent-makeup-booking-form{border-top:1px solid #a448f533;grid-template-columns:minmax(150px,.55fr) minmax(220px,1fr);gap:.75rem;width:100%;padding-top:.75rem;display:grid}.parent-makeup-booking-form label{color:var(--color-text-muted);gap:.25rem;font-size:.72rem;font-weight:750;display:grid}.parent-makeup-booking-form>p,.parent-makeup-booking-form>div,.parent-makeup-booking-form>[role=status],.parent-makeup-booking-form>[role=alert]{grid-column:1/-1}.parent-makeup-booking-form>p{color:var(--color-text-muted);margin:0;font-size:.78rem}.parent-makeup-booking-form>div{flex-wrap:wrap;gap:.5rem;display:flex}.parent-absence-history{border-top:1px solid #fff1;gap:.5rem;padding-top:.75rem;display:grid}.parent-absence-history>span{color:var(--color-text-muted);letter-spacing:.08em;text-transform:uppercase;font-size:.65rem;font-weight:800}.parent-absence-history>div{justify-content:space-between;gap:1rem;font-size:.82rem;display:flex}.parent-absence-history time{color:var(--color-text-muted)}.parent-enrollment-list{gap:.5rem;display:grid}.parent-enrollment-card{border:1px solid var(--cp-hairline-soft,#ffffff0f);background:var(--cp-fill-soft,#ffffff06);border-radius:10px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;padding:.75rem;display:flex}.athlete-summary-strip{background:var(--sp-surface-card);border:1px solid var(--sp-hairline);border-radius:var(--sp-radius-md);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.athlete-summary-stat{gap:.125rem;min-width:0;padding:.5rem .75rem;display:grid}.athlete-summary-stat strong{color:var(--sp-ink);font-size:1.05rem;font-weight:700;line-height:1.15}.athlete-summary-stat+.athlete-summary-stat{border-left:1px solid var(--sp-hairline)}.staff-portal-app .staff-tool-row,.staff-portal-app .staff-health-row{background:var(--sp-surface-soft,var(--sp-surface-card));border:1px solid var(--sp-hairline-soft);border-radius:var(--sp-radius-sm,8px);box-shadow:none;color:var(--sp-ink);gap:.5rem;padding:.75rem;display:grid}.staff-portal-app .staff-tool-row-main,.staff-portal-app .staff-health-row-main{justify-content:space-between;align-items:flex-start;gap:.75rem;display:flex}.staff-portal-app .staff-tool-row-main{align-items:center}.staff-portal-app .staff-tool-row-copy{align-items:flex-start;gap:.75rem;min-width:0;display:flex}.staff-portal-app .staff-tool-row-icon{border-radius:var(--sp-radius-sm);width:2rem;height:2rem;color:var(--sp-on-light);background:#a24dff24;flex-shrink:0;place-items:center;display:grid}.staff-portal-app .staff-tool-row-title{flex-wrap:wrap;align-items:center;gap:.5rem;margin-bottom:.125rem;display:flex}.staff-portal-app .staff-health-row-status{white-space:nowrap;flex-shrink:0;font-size:.78rem;font-weight:700}.staff-portal-app .staff-health-row--critical .staff-health-row-status{color:var(--sp-danger)}.staff-portal-app .staff-health-row--warning .staff-health-row-status{color:var(--sp-warn)}.staff-portal-app .staff-health-row--healthy .staff-health-row-status{color:var(--sp-success)}.staff-portal-app .staff-health-row-meta{flex-wrap:wrap;align-items:center;gap:.5rem .75rem;display:flex}.staff-portal-app .staff-athlete-mobile-list{display:none}.staff-portal-app .staff-athlete-profile-hero{justify-items:center;gap:.75rem;padding:.5rem 0 1.25rem;display:grid}.staff-portal-app .staff-athlete-profile-avatar{border:2px solid var(--sp-primary);color:#fff;width:86px;height:86px;font-family:var(--font-heading);letter-spacing:.04em;background:radial-gradient(circle at 30% 25%,#ffffff24,#0000 38%),linear-gradient(145deg,#872de2c7,#311256f5);border-radius:50%;place-items:center;font-size:1.5rem;font-weight:700;display:grid;overflow:hidden;box-shadow:0 0 0 5px #9440f517,0 18px 30px -20px #8d38f5e6}.staff-portal-app .staff-athlete-profile-avatar img{object-fit:cover;width:100%;height:100%;display:block}.staff-portal-app .staff-athlete-profile-status{color:var(--sp-muted);align-items:center;gap:.5rem;font-size:.75rem;display:inline-flex}.staff-portal-app .staff-athlete-profile-status i{background:var(--sp-primary);border-radius:50%;width:7px;height:7px;box-shadow:0 0 8px #994af4a6}.staff-portal-app .staff-athlete-profile-stats{grid-template-columns:repeat(3,minmax(0,1fr));gap:.5rem;margin-bottom:.75rem;display:grid}.staff-portal-app .staff-athlete-profile-stats>div{border:1px solid var(--sp-hairline-soft);background:var(--sp-surface-card);text-align:center;border-radius:14px;min-width:0;padding:.75rem .5rem}.staff-portal-app .staff-athlete-profile-stats span,.staff-portal-app .staff-athlete-profile-stats strong{display:block}.staff-portal-app .staff-athlete-profile-stats span{color:var(--sp-muted);letter-spacing:.05em;text-transform:uppercase;margin-bottom:.25rem;font-size:.62rem;font-weight:700}.staff-portal-app .staff-athlete-profile-stats strong{color:var(--sp-ink);font-size:1.05rem}.staff-portal-app .staff-class-roster{gap:1rem;display:grid}.staff-portal-app .staff-athlete-alert{color:var(--sp-danger);background:#ff526012;border:1px solid #ff637040;border-radius:14px;margin:.25rem 0;padding:.75rem}.staff-portal-app .staff-athlete-alert .sp-lbl{color:var(--sp-danger)}.staff-portal-app .staff-athlete-alert .sp-lbl i{margin-right:.25rem}@media (width<=560px){.athlete-summary-strip{grid-template-columns:repeat(3,minmax(0,1fr))}.athlete-summary-stat{text-align:center;padding:.75rem .5rem}.athlete-summary-stat+.athlete-summary-stat{border-left:1px solid var(--sp-hairline)}.athlete-summary-stat .ui-text-sm{font-size:.64rem;line-height:1.2}.parent-athlete-switcher{scrollbar-width:none;gap:.5rem;margin:0 -1rem 1rem;padding:.125rem 1rem .5rem;display:flex;overflow-x:auto}.parent-athlete-switcher::-webkit-scrollbar{display:none}.parent-athlete-switcher button{border:1px solid var(--cp-hairline-soft,#ffffff14);background:var(--cp-surface-raised,#ffffff06);min-width:128px;min-height:60px;color:var(--cp-ink,var(--color-text));text-align:left;font:inherit;border-radius:18px;flex:none;align-items:center;gap:.5rem;padding:.5rem .75rem;display:flex}.parent-athlete-switcher button.is-active{border-color:var(--cp-hairline,#5a00a859);background:var(--cp-fill-soft,#ffffff0f);box-shadow:none}.parent-athlete-switcher img{border:1px solid var(--cp-hairline-soft,#ffffff1f);object-fit:cover;border-radius:50%;width:36px;height:36px}.parent-athlete-switcher span,.parent-athlete-switcher strong,.parent-athlete-switcher small{display:block}.parent-athlete-switcher strong{font-size:.82rem}.parent-athlete-switcher small{color:var(--color-text-muted);margin-top:.125rem;font-size:.64rem}.parent-athlete-profile:not(.is-active){display:none}.parent-athlete-profile.portal-panel-card{border-radius:var(--cp-radius-md,12px);padding:.75rem}.parent-athlete-profile-hero{justify-items:center;gap:.75rem;padding:.125rem 0 .75rem;display:grid}.parent-athlete-profile-person{text-align:center;justify-items:center;gap:.5rem;display:grid}.parent-athlete-avatar{width:64px;height:64px;box-shadow:none}.parent-athlete-photo-button{width:28px;height:28px}.parent-athlete-meta{justify-content:center}.parent-athlete-profile-actions{grid-template-columns:repeat(3,minmax(0,1fr));gap:.5rem;width:100%;display:grid}.parent-athlete-profile-actions .btn{border-radius:14px;flex-direction:column;gap:.125rem;min-width:0;min-height:48px;padding:.5rem .25rem;font-size:.68rem}.parent-athlete-profile-actions .btn i{font-size:.86rem}.parent-athlete-stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:0;margin:0}.parent-athlete-stats>div{border-radius:0;padding:.5rem .25rem}.parent-athlete-stats>div+div{border-left:0}.parent-athlete-stats>div:nth-child(2n){border-left:1px solid var(--cp-hairline-soft,#ffffff12)}.parent-athlete-stats>div:nth-child(n+3){border-top:1px solid var(--cp-hairline-soft,#ffffff12)}.parent-athlete-section{border-radius:12px;padding:.75rem}.parent-athlete-profile.portal-panel-card{padding:.75rem}.parent-athlete-section--family .ui-flex-start{grid-template-columns:1fr;display:grid}.parent-athlete-section--family input{min-width:0!important}.parent-athlete-section--document{display:grid}.parent-athlete-billing-values{grid-template-columns:1fr}.parent-athlete-section-heading{align-items:center}.parent-makeup-credit,.parent-makeup-request{align-items:flex-start}.parent-makeup-credit>.btn,.parent-makeup-request>button{width:100%;margin-left:0}.parent-makeup-booking-form{grid-template-columns:minmax(0,1fr)}.parent-enrollment-card{background:linear-gradient(145deg,#ffffff05,#0000 55%),#ffffff06;border-radius:18px;display:grid}.parent-enrollment-card>div:last-child{border-top:1px solid #ffffff0f;padding-top:.75rem;justify-content:flex-start!important;gap:.75rem!important}.parent-enrollment-card>div:last-child>div:first-child{width:100%;text-align:left!important}}.ui-input-dark{border:1px solid var(--hairline-soft,#ffffff1a);background:var(--surface-subtle,#0003);width:100%;color:var(--color-text);border-radius:8px;padding:.75rem}.ui-badge-btn{padding:.25rem .75rem;font-size:.9rem}@media (width>=901px){.portal-sidebar.glass{border:none!important;border-right:1px solid #b026ff26!important;border-radius:0!important}}.navbar.portal-navbar,.navbar.portal-navbar.scrolled{-webkit-backdrop-filter:blur(20px)!important;background-color:#0a0a0ad9!important;border-bottom:1px solid #b026ff26!important}@media (width>=901px){.navbar.portal-navbar,.navbar.portal-navbar.scrolled{padding:.75rem 2rem!important}.navbar.portal-navbar .nav-container,.navbar.portal-navbar.scrolled .nav-container{width:100%!important;max-width:100%!important;margin:0!important}.navbar.portal-navbar .logo-img,.navbar.portal-navbar.scrolled .logo-img{height:48px!important}}@media (width<=900px){.navbar.portal-navbar,.navbar.portal-navbar.scrolled{padding:.75rem 1rem!important}.navbar.portal-navbar .logo-img,.navbar.portal-navbar.scrolled .logo-img{height:40px!important}}.staff-portal-app{--sp-surface-base:#242131;--sp-surface-panel:#111015;--sp-surface-card:#17141d;--sp-surface-raised:#211b2b;--sp-surface-input:#08070b;--sp-canvas:var(--sp-surface-card);--sp-ink:#ece9f1;--sp-body:#c8c2d2;--sp-muted:#9990a6;--sp-muted-soft:#a19aab;--sp-hairline:#ffffff14;--sp-hairline-strong:#ffffff29;--sp-hairline-soft:#ffffff0b;--sp-top-highlight:inset 0 1px 0 #ffffff0b;--sp-surface-soft:var(--sp-surface-base);--sp-surface-strong:#211b2b;--sp-primary:#7d00d8;--sp-accent:var(--sp-primary);--sp-primary-active:#9328e8;--sp-primary-soft:#cf9dff;--sp-primary-disabled:#7d00d861;--sp-on-primary:var(--color-white);--sp-on-light:#cf9dff;--sp-success:#37cf8a;--sp-warn:#e6ab3c;--sp-gold:#c4a35a;--sp-danger:#f26d64;--sp-radius-sm:8px;--sp-radius-md:14px;--sp-shadow-card:none;--sp-shadow-card-hover:none;--sp-font:var(--font-body);--sp-control-h:40px;--sp-control-h-sm:36px;--sp-control-pad-y:8px;--sp-control-pad-x:12px;--sp-control-font:14px;--sp-panel-pad:12px 16px;--sp-block-pad:12px;--sp-block-gap:8px;--sp-field-gap:12px;--sp-section-gap:16px;--sp-label-gap:4px;--sp-stack-gap:12px;--sp-field-min:280px;--sp-native-datetime-min:360px;--cp-canvas:var(--sp-surface-panel);--cp-ink:var(--sp-ink);--cp-muted:var(--sp-muted);--cp-hairline:var(--sp-hairline);--cp-hairline-soft:var(--sp-hairline-soft);--cp-fill-soft:#ffffff0a;--cp-fill:#ffffff24;--cp-surface-soft:var(--sp-surface-base);background:var(--sp-surface-base);color:var(--sp-ink);font-family:var(--sp-font)}body.portal-app.staff-portal-app{--staff-tab-bar-clearance:calc(52px + env(safe-area-inset-bottom,0px))}.staff-portal-app .record-picker{width:100%;position:relative}.staff-portal-app .record-picker-label{font-family:var(--font-heading);text-transform:uppercase;letter-spacing:.04em;color:var(--sp-muted-soft,var(--sp-muted));margin-bottom:var(--sp-label-gap,.25rem);margin-left:0;font-size:.72rem;font-weight:700;display:block}.staff-portal-app .record-picker-trigger{width:100%;padding:var(--sp-control-pad-y) var(--sp-control-pad-x);height:var(--sp-control-h);background:var(--sp-surface-input);border:1px solid var(--sp-hairline-soft);border-radius:var(--sp-radius-sm);color:var(--sp-ink);font:inherit;font-size:var(--sp-control-font);text-align:left;cursor:pointer;justify-content:space-between;align-items:center;gap:.75rem;transition:border-color .15s,box-shadow .15s;display:flex}.staff-portal-app .record-picker-trigger:hover,.staff-portal-app .record-picker-trigger[aria-expanded=true]{border-color:var(--sp-hairline-strong)}.staff-portal-app .record-picker-trigger[aria-expanded=true]{box-shadow:0 0 0 3px #a24dff2e}.staff-portal-app .record-picker-trigger-text{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.staff-portal-app .record-picker-trigger-meta{color:var(--sp-muted);font-size:12px}.staff-portal-app .record-picker-trigger i{color:var(--sp-muted);flex-shrink:0;transition:transform .15s}.staff-portal-app .record-picker-trigger[aria-expanded=true] i{color:var(--sp-on-light);transform:rotate(180deg)}.staff-portal-app .record-picker-panel{z-index:40;background:var(--sp-surface-raised);border:1px solid var(--sp-hairline-strong);border-radius:var(--sp-radius-md);box-shadow:var(--sp-shadow-card-hover);flex-direction:column;max-height:min(85vh,820px);display:flex;position:absolute;top:calc(100% + .5rem);left:0;right:0;overflow:hidden}.staff-portal-app .record-picker-search{border-bottom:1px solid var(--sp-hairline-soft);flex-shrink:0;align-items:center;gap:.5rem;padding:.75rem 1rem;display:flex}.staff-portal-app .record-picker-search i{color:var(--sp-muted)}.staff-portal-app .record-picker-search input{color:var(--sp-ink);font:inherit;background:0 0;border:none;outline:none;flex:1}.staff-portal-app .record-picker-search input::placeholder{color:var(--sp-muted-soft)}.staff-portal-app .record-picker-list{overscroll-behavior:contain;min-height:0;max-height:min(18rem,100dvh - 15rem);box-shadow:none;scrollbar-gutter:stable;background:0 0;border:none;padding:.5rem;overflow-y:auto}.staff-portal-app .record-picker-group-label{letter-spacing:.04em;text-transform:uppercase;color:var(--sp-on-light);background:var(--sp-surface-raised);z-index:1;padding:.5rem;font-size:.72rem;font-weight:700;position:sticky;top:0}.staff-portal-app .record-picker-option{border-radius:var(--sp-radius-sm);width:100%;min-height:44px;color:var(--sp-ink);text-align:left;font:inherit;cursor:pointer;background:0 0;border:none;flex-direction:column;justify-content:center;gap:.125rem;padding:.75rem;display:flex}.staff-portal-app .record-picker-option-name{font-weight:600}.staff-portal-app .record-picker-option-meta{color:var(--sp-muted);font-size:.8rem}.staff-portal-app .record-picker-option.is-highlighted{background:#a24dff29}.staff-portal-app .record-picker-option.is-selected{color:var(--sp-on-light);background:#a24dff38}.staff-portal-app .record-picker-option.is-selected .record-picker-option-meta{color:var(--sp-on-light);opacity:.8}.staff-portal-app .record-picker-empty{text-align:center;color:var(--sp-muted);padding:1.5rem 1rem;font-size:.9rem}@media (width<=640px){.staff-portal-app .record-picker-panel{max-height:min(85vh,820px)}}.staff-portal-app .staff-avatar{object-fit:cover;background:var(--sp-surface-raised);color:var(--sp-body);font-family:var(--font-heading);border:1px solid var(--sp-hairline);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-weight:700;display:inline-flex}.staff-portal-app .staff-avatar--md{width:40px;height:40px;font-size:14px}.staff-portal-app .staff-avatar--sm{width:30px;height:30px;font-size:12px}.staff-portal-app .staff-row-card{text-align:left;background:var(--sp-surface-card);border:1px solid var(--sp-hairline);border-radius:var(--sp-radius-md);width:100%;box-shadow:var(--sp-shadow-card);font:inherit;color:var(--sp-ink);cursor:default;padding:.75rem 1rem;transition:box-shadow .2s,border-color .2s;display:block}.staff-portal-app .staff-row-card--compact{border-radius:var(--sp-radius-sm,8px);box-shadow:none;background:var(--sp-surface-soft,var(--sp-surface-card));padding:.5rem .75rem}.staff-portal-app .staff-row-card--compact:hover{box-shadow:none}.staff-portal-app .staff-row-card--compact .staff-row-card-main{gap:.5rem}.staff-portal-app .staff-row-card--compact .staff-row-card-title{font-size:.9rem}.staff-portal-app .staff-row-card--compact .staff-row-card-subtitle{font-size:.78rem}.staff-portal-app .staff-row-card:hover{background:var(--sp-surface-raised);border-color:var(--sp-hairline-strong)}.staff-portal-app .staff-row-card--clickable{cursor:pointer}.staff-portal-app .staff-search-target>.staff-row-card,.staff-portal-app .staff-row-card.staff-search-target{border-color:var(--sp-primary);background:var(--brand-soft,#a24dff14)}.staff-portal-app .sp-table tbody tr.staff-search-target{background:var(--brand-soft,#a24dff14);box-shadow:inset 1px 0 0 var(--sp-primary)}.staff-portal-app .staff-row-card-main{flex-wrap:wrap;align-items:center;gap:.75rem;display:flex}.staff-portal-app .staff-row-card-avatar{flex-shrink:0;display:flex}.staff-portal-app .staff-row-card-body{flex:200px;min-width:0}.staff-portal-app .staff-row-card-title{color:var(--sp-ink);flex-wrap:wrap;align-items:center;gap:.5rem;font-size:1rem;font-weight:600;display:flex}.staff-portal-app .staff-row-card-subtitle{color:var(--sp-muted);margin-top:.25rem;font-size:.85rem}.staff-portal-app .staff-row-card-meta{color:var(--sp-muted);margin-top:.125rem;font-size:.8rem}.staff-portal-app .staff-row-card-actions{flex-wrap:wrap;flex-shrink:0;align-items:center;gap:.5rem;margin-left:auto;display:flex}.staff-portal-app .staff-toggle-btn{min-width:6.5rem}.staff-portal-app .staff-row-card-alert{border-left:3px solid var(--sp-danger);color:var(--sp-ink);background:#f26d6414;border-radius:4px;margin-top:.75rem;padding:.75rem;font-size:.85rem}.staff-portal-app .staff-row-card-alert--neutral{background:var(--sp-surface-raised);border-left:3px solid var(--sp-hairline-strong)}.staff-portal-app .staff-row-pill{color:var(--sp-on-light);background:#a24dff2e;border-radius:4px;padding:.125rem .5rem;font-size:.72rem;font-weight:600;display:inline-block}.staff-portal-app .staff-row-pill--danger{color:var(--sp-danger);background:#f26d641f}.staff-portal-app .staff-search-input{flex:260px;min-width:220px;position:relative}.staff-portal-app .staff-search-input>i{color:var(--sp-muted-soft);pointer-events:none;font-size:13px;position:absolute;top:50%;left:14px;transform:translateY(-50%)}.staff-portal-app .staff-search-input input{width:100%;min-height:var(--sp-control-h);font-size:var(--sp-control-font);padding:var(--sp-control-pad-y) 2.5rem var(--sp-control-pad-y) 2.25rem!important}.staff-portal-app .staff-search-input .staff-search-clear{z-index:1;min-width:2rem;min-height:2rem;color:var(--sp-muted-soft);cursor:pointer;background:0 0;border:none;place-items:center;padding:0;line-height:1;display:inline-grid;position:absolute;top:50%;right:6px;transform:translateY(-50%)}.staff-portal-app .staff-search-input .staff-search-clear i{pointer-events:none;color:inherit;font-size:.95rem;position:static;top:auto;left:auto;transform:none}.staff-portal-app .staff-search-input .staff-search-clear:hover{color:var(--sp-ink)}.staff-portal-app .staff-search-input input[type=search]::-webkit-search-cancel-button{appearance:none;display:none}.staff-portal-app .section-title,.staff-portal-app h1,.staff-portal-app h2,.staff-portal-app h3,.staff-portal-app h4,.staff-portal-app h5{font-family:var(--sp-font);color:var(--sp-ink);letter-spacing:-.02em;text-transform:none}.staff-portal-app .ui-text-muted{color:var(--sp-muted)}.staff-portal-app .ui-border-b{border-bottom:1px solid var(--sp-hairline-soft);margin-bottom:.5rem;padding-bottom:.5rem}.staff-portal-app .ui-card-sm,.staff-portal-app .glass-panel,.staff-portal-app .glass,.staff-portal-app .contact-form.ui-card-sm{background:var(--sp-surface-card);border:1px solid var(--sp-hairline);border-radius:var(--sp-radius-md);box-shadow:var(--sp-shadow-card);color:var(--sp-ink)}.staff-portal-app a.ui-card-sm:hover,.staff-portal-app button.ui-card-sm:hover,.staff-portal-app [role=button].ui-card-sm:hover,.staff-portal-app .ui-card-sm.ui-card-interactive:hover{background:var(--sp-surface-raised);border-color:var(--sp-hairline-strong)}.staff-portal-app .portal-panel-card{background:var(--sp-surface-card);border:1px solid var(--sp-hairline);box-shadow:var(--sp-shadow-card);color:var(--sp-ink);padding:var(--sp-panel-pad);margin-bottom:var(--sp-section-gap)}.staff-portal-app .ui-card-sm{padding:var(--sp-block-pad)}.staff-portal-app .form-group{gap:var(--sp-label-gap,.25rem);min-width:0;max-width:100%;margin:0 0 var(--sp-field-gap);flex-direction:column;display:flex}.staff-portal-app .form-group>label,.staff-portal-app .form-group>span:first-child{font-family:var(--font-heading);letter-spacing:.04em;text-transform:uppercase;color:var(--sp-muted-soft,var(--sp-muted));margin:0;font-size:.72rem;font-weight:700;display:block}.staff-portal-app .ui-grid-2,.staff-portal-app .ui-grid-auto,.staff-portal-app .ui-grid-gap-1{gap:var(--sp-field-gap)}.staff-portal-app .ui-mb-1{margin-bottom:var(--sp-block-gap)!important}.staff-portal-app .ui-mb-2{margin-bottom:var(--sp-section-gap)!important}.staff-portal-app .portal-section-title--muted{color:var(--sp-muted)}.staff-portal-app .ui-input-dark,.staff-portal-app input[type=text],.staff-portal-app input[type=email],.staff-portal-app input[type=password],.staff-portal-app input[type=number],.staff-portal-app input[type=date],.staff-portal-app input[type=datetime-local],.staff-portal-app input[type=time],.staff-portal-app input[type=url],.staff-portal-app input:not([type]),.staff-portal-app textarea,.staff-portal-app select{box-sizing:border-box;width:100%;min-width:0;max-width:100%;padding:var(--sp-control-pad-y) var(--sp-control-pad-x);min-height:var(--sp-control-h);border-radius:var(--sp-radius-sm);border:1px solid var(--sp-hairline-soft);background:var(--sp-surface-input);color:var(--sp-ink);font-family:var(--sp-font);font-size:var(--sp-control-font);transition:border-color .18s,box-shadow .18s}.staff-portal-app input[type=date],.staff-portal-app input[type=datetime-local],.staff-portal-app input[type=time],.staff-portal-app select{height:var(--sp-control-h)}.staff-portal-app input[type=date],.staff-portal-app input[type=datetime-local],.staff-portal-app input[type=month],.staff-portal-app input[type=week],.staff-portal-app input[type=time],.staff-portal-app input[type=number],body.portal-app:not(.staff-portal-app) input[type=date],body.portal-app:not(.staff-portal-app) input[type=datetime-local],body.portal-app:not(.staff-portal-app) input[type=month],body.portal-app:not(.staff-portal-app) input[type=week],body.portal-app:not(.staff-portal-app) input[type=time],body.portal-app:not(.staff-portal-app) input[type=number]{box-sizing:border-box;width:100%;min-width:0;max-width:100%;display:block}.staff-portal-app input[type=date],.staff-portal-app input[type=datetime-local],.staff-portal-app input[type=month],.staff-portal-app input[type=week],.staff-portal-app input[type=time],.staff-portal-app input[type=number],.staff-portal-app select,.staff-portal-app textarea{appearance:none}.staff-portal-app input[type=date]::-webkit-datetime-edit{min-width:0;max-width:100%;overflow:hidden}.staff-portal-app input[type=datetime-local]::-webkit-datetime-edit{min-width:0;max-width:100%;overflow:hidden}.staff-portal-app input[type=month]::-webkit-datetime-edit{min-width:0;max-width:100%;overflow:hidden}.staff-portal-app input[type=week]::-webkit-datetime-edit{min-width:0;max-width:100%;overflow:hidden}.staff-portal-app input[type=time]::-webkit-datetime-edit{min-width:0;max-width:100%;overflow:hidden}body.portal-app:not(.staff-portal-app) input[type=date]::-webkit-datetime-edit{min-width:0;max-width:100%;overflow:hidden}body.portal-app:not(.staff-portal-app) input[type=datetime-local]::-webkit-datetime-edit{min-width:0;max-width:100%;overflow:hidden}body.portal-app:not(.staff-portal-app) input[type=month]::-webkit-datetime-edit{min-width:0;max-width:100%;overflow:hidden}body.portal-app:not(.staff-portal-app) input[type=week]::-webkit-datetime-edit{min-width:0;max-width:100%;overflow:hidden}body.portal-app:not(.staff-portal-app) input[type=time]::-webkit-datetime-edit{min-width:0;max-width:100%;overflow:hidden}.staff-portal-app input[type=date]::-webkit-calendar-picker-indicator{display:none}.staff-portal-app input[type=datetime-local]::-webkit-calendar-picker-indicator{display:none}.staff-portal-app input[type=month]::-webkit-calendar-picker-indicator{display:none}.staff-portal-app input[type=week]::-webkit-calendar-picker-indicator{display:none}.staff-portal-app input[type=time]::-webkit-calendar-picker-indicator{display:none}.staff-portal-app input[type=number]::-webkit-outer-spin-button{appearance:none;margin:0}.staff-portal-app input[type=number]::-webkit-inner-spin-button{appearance:none;margin:0}.staff-portal-app .staff-ops-form-grid input[type=date],.staff-portal-app .staff-ops-form-grid input[type=datetime-local],.staff-portal-app .staff-ops-form-grid input[type=month],.staff-portal-app .staff-ops-form-grid input[type=week],.staff-portal-app .staff-ops-form-grid input[type=time],.staff-portal-app .staff-ops-form-grid input[type=number],.staff-portal-app .staff-cms-field-grid input[type=date],.staff-portal-app .staff-cms-field-grid input[type=datetime-local],.staff-portal-app .staff-cms-field-grid input[type=month],.staff-portal-app .staff-cms-field-grid input[type=week],.staff-portal-app .staff-cms-field-grid input[type=time],.staff-portal-app .staff-cms-field-grid input[type=number],.staff-portal-app .staff-fill-grid input[type=date],.staff-portal-app .staff-fill-grid input[type=datetime-local],.staff-portal-app .staff-fill-grid input[type=month],.staff-portal-app .staff-fill-grid input[type=week],.staff-portal-app .staff-fill-grid input[type=time],.staff-portal-app .staff-fill-grid input[type=number],.staff-portal-app .staff-cms-inline-form input[type=date],.staff-portal-app .staff-cms-inline-form input[type=datetime-local],.staff-portal-app .staff-cms-inline-form input[type=month],.staff-portal-app .staff-cms-inline-form input[type=week],.staff-portal-app .staff-cms-inline-form input[type=time],.staff-portal-app .staff-cms-inline-form input[type=number],.staff-portal-app .staff-attendance-controls input[type=date],.staff-portal-app .staff-attendance-controls input[type=datetime-local],.staff-portal-app .staff-attendance-controls select,.staff-portal-app .staff-attendance-report-filters input[type=date],.staff-portal-app .staff-attendance-report-filters select,.staff-portal-app .staff-payments-history__filters input[type=date],.staff-portal-app .staff-payments-history__filters select,.staff-portal-app .curriculum-assignment-form input,.staff-portal-app .curriculum-assignment-form select,.staff-portal-app .enrollment-create-form input[type=date],.staff-portal-app .enrollment-create-form select,.staff-portal-app .enrollment-change-form input[type=date],.staff-portal-app .enrollment-change-form select,.staff-portal-app .staff-audit-filters input[type=date],.staff-portal-app .staff-audit-filters select,.staff-portal-app .party-slot-admin-list input[type=time],.staff-portal-app .party-blackout-row input[type=date],.staff-portal-app .party-package-admin-fields input[type=number],.staff-portal-app .staff-ops-form-grid select,.staff-portal-app .staff-ops-form-grid textarea,.staff-portal-app .staff-cms-field-grid select,.staff-portal-app .staff-cms-field-grid textarea{box-sizing:border-box;width:100%;min-width:0;max-width:100%;display:block;overflow:hidden}.staff-portal-app .staff-ops-form-grid input[type=date]::-webkit-datetime-edit{min-width:0;max-width:100%;overflow:hidden}.staff-portal-app .staff-ops-form-grid input[type=datetime-local]::-webkit-datetime-edit{min-width:0;max-width:100%;overflow:hidden}.staff-portal-app .staff-ops-form-grid input[type=month]::-webkit-datetime-edit{min-width:0;max-width:100%;overflow:hidden}.staff-portal-app .staff-ops-form-grid input[type=week]::-webkit-datetime-edit{min-width:0;max-width:100%;overflow:hidden}.staff-portal-app .staff-ops-form-grid input[type=time]::-webkit-datetime-edit{min-width:0;max-width:100%;overflow:hidden}.staff-portal-app .staff-cms-field-grid input[type=date]::-webkit-datetime-edit{min-width:0;max-width:100%;overflow:hidden}.staff-portal-app .staff-cms-field-grid input[type=datetime-local]::-webkit-datetime-edit{min-width:0;max-width:100%;overflow:hidden}.staff-portal-app .staff-cms-field-grid input[type=month]::-webkit-datetime-edit{min-width:0;max-width:100%;overflow:hidden}.staff-portal-app .staff-cms-field-grid input[type=week]::-webkit-datetime-edit{min-width:0;max-width:100%;overflow:hidden}.staff-portal-app .staff-cms-field-grid input[type=time]::-webkit-datetime-edit{min-width:0;max-width:100%;overflow:hidden}.staff-portal-app .staff-fill-grid input[type=date]::-webkit-datetime-edit{min-width:0;max-width:100%;overflow:hidden}.staff-portal-app .staff-fill-grid input[type=datetime-local]::-webkit-datetime-edit{min-width:0;max-width:100%;overflow:hidden}.staff-portal-app .staff-fill-grid input[type=month]::-webkit-datetime-edit{min-width:0;max-width:100%;overflow:hidden}.staff-portal-app .staff-fill-grid input[type=week]::-webkit-datetime-edit{min-width:0;max-width:100%;overflow:hidden}.staff-portal-app .staff-fill-grid input[type=time]::-webkit-datetime-edit{min-width:0;max-width:100%;overflow:hidden}.staff-portal-app .staff-cms-inline-form input[type=date]::-webkit-datetime-edit{min-width:0;max-width:100%;overflow:hidden}.staff-portal-app .staff-cms-inline-form input[type=datetime-local]::-webkit-datetime-edit{min-width:0;max-width:100%;overflow:hidden}.staff-portal-app .staff-cms-inline-form input[type=month]::-webkit-datetime-edit{min-width:0;max-width:100%;overflow:hidden}.staff-portal-app .staff-cms-inline-form input[type=week]::-webkit-datetime-edit{min-width:0;max-width:100%;overflow:hidden}.staff-portal-app .staff-cms-inline-form input[type=time]::-webkit-datetime-edit{min-width:0;max-width:100%;overflow:hidden}.staff-portal-app .staff-attendance-controls input[type=date]::-webkit-datetime-edit{min-width:0;max-width:100%;overflow:hidden}.staff-portal-app .staff-attendance-report-filters input[type=date]::-webkit-datetime-edit{min-width:0;max-width:100%;overflow:hidden}.staff-portal-app .staff-payments-history__filters input[type=date]::-webkit-datetime-edit{min-width:0;max-width:100%;overflow:hidden}.staff-portal-app .enrollment-create-form input[type=date]::-webkit-datetime-edit{min-width:0;max-width:100%;overflow:hidden}.staff-portal-app .enrollment-change-form input[type=date]::-webkit-datetime-edit{min-width:0;max-width:100%;overflow:hidden}.staff-portal-app .staff-audit-filters input[type=date]::-webkit-datetime-edit{min-width:0;max-width:100%;overflow:hidden}.staff-portal-app .party-slot-admin-list input[type=time]::-webkit-datetime-edit{min-width:0;max-width:100%;overflow:hidden}.staff-portal-app .party-blackout-row input[type=date]::-webkit-datetime-edit{min-width:0;max-width:100%;overflow:hidden}.staff-portal-app .staff-ops-form-grid input[type=date]::-webkit-date-and-time-value{min-width:0;max-width:100%;overflow:hidden}.staff-portal-app .staff-ops-form-grid input[type=datetime-local]::-webkit-date-and-time-value{min-width:0;max-width:100%;overflow:hidden}.staff-portal-app .staff-ops-form-grid input[type=time]::-webkit-date-and-time-value{min-width:0;max-width:100%;overflow:hidden}.staff-portal-app .staff-cms-field-grid input[type=date]::-webkit-date-and-time-value{min-width:0;max-width:100%;overflow:hidden}.staff-portal-app .staff-cms-field-grid input[type=datetime-local]::-webkit-date-and-time-value{min-width:0;max-width:100%;overflow:hidden}.staff-portal-app .staff-cms-field-grid input[type=time]::-webkit-date-and-time-value{min-width:0;max-width:100%;overflow:hidden}.staff-portal-app .staff-attendance-controls input[type=date]::-webkit-date-and-time-value{min-width:0;max-width:100%;overflow:hidden}.staff-portal-app .party-slot-admin-list input[type=time]::-webkit-date-and-time-value{min-width:0;max-width:100%;overflow:hidden}.staff-portal-app .party-blackout-row input[type=date]::-webkit-date-and-time-value{min-width:0;max-width:100%;overflow:hidden}.staff-portal-app .staff-ops-form-grid input[type=date]::-webkit-datetime-edit-fields-wrapper{min-width:0;max-width:100%;overflow:hidden}.staff-portal-app .staff-ops-form-grid input[type=datetime-local]::-webkit-datetime-edit-fields-wrapper{min-width:0;max-width:100%;overflow:hidden}.staff-portal-app .staff-ops-form-grid input[type=time]::-webkit-datetime-edit-fields-wrapper{min-width:0;max-width:100%;overflow:hidden}.staff-portal-app .staff-attendance-controls input[type=date]::-webkit-datetime-edit-fields-wrapper{min-width:0;max-width:100%;overflow:hidden}.staff-portal-app .party-slot-admin-list input[type=time]::-webkit-datetime-edit-fields-wrapper{min-width:0;max-width:100%;overflow:hidden}.staff-portal-app .party-blackout-row input[type=date]::-webkit-datetime-edit-fields-wrapper{min-width:0;max-width:100%;overflow:hidden}.staff-portal-app .ui-input-dark:focus,.staff-portal-app input:focus,.staff-portal-app textarea:focus,.staff-portal-app select:focus{border:2px solid var(--sp-primary);outline:none;box-shadow:0 0 0 3px #a24dff26}.staff-portal-app label{color:var(--sp-ink);font-size:13px;font-weight:500}.staff-portal-app .btn{min-height:var(--sp-control-h);padding:var(--sp-control-pad-y) 1rem;font-size:var(--sp-control-font);text-transform:none;letter-spacing:.01em;font-weight:600}.staff-portal-app .btn-primary{color:var(--sp-on-primary);border-radius:var(--sp-radius-sm);font-weight:600;font-size:var(--sp-control-font);min-height:var(--sp-control-h);padding:var(--sp-control-pad-y) 16px;background-color:var(--sp-primary);background-image:none;border:1px solid #0000;transition:transform .22s cubic-bezier(.22,1,.36,1),box-shadow .28s,border-color .22s,background-color .22s;box-shadow:inset 0 1px #ffffff24}.staff-portal-app .btn-primary:hover{background-color:var(--sp-primary-active);transform:translateY(-1px);box-shadow:inset 0 1px #fff3}.staff-portal-app .btn-primary:active{transform:translateY(1px)scale(.985);box-shadow:inset 0 0 12px #00000047}.staff-portal-app .btn-primary:disabled{background:var(--sp-primary-disabled);color:var(--sp-on-primary);cursor:not-allowed;box-shadow:none;background-image:none;transform:none}.staff-portal-app .btn-outline,.staff-portal-app .btn-secondary{color:var(--sp-ink);border:1px solid var(--sp-hairline);border-radius:var(--sp-radius-sm);min-height:var(--sp-control-h);padding:var(--sp-control-pad-y) 1rem;background-color:var(--sp-surface-raised);box-shadow:none;background-image:none;font-weight:600;transition:transform .22s cubic-bezier(.22,1,.36,1),box-shadow .28s,border-color .22s,color .22s,background-color .22s}.staff-portal-app .btn-outline:hover,.staff-portal-app .btn-secondary:hover{color:var(--sp-ink);border-color:var(--sp-hairline-strong);background-color:color-mix(in srgb, #fff 5%, var(--sp-surface-raised));box-shadow:none;transform:translateY(-1px)}.staff-portal-app .btn-outline:active,.staff-portal-app .btn-secondary:active{transform:translateY(1px)scale(.985);box-shadow:inset 0 0 12px #0000003d}@media (prefers-reduced-motion:reduce){.staff-portal-app .btn-primary,.staff-portal-app .btn-secondary,.staff-portal-app .btn-outline{transition:background-color .15s,border-color .15s,color .15s,box-shadow .15s}.staff-portal-app .btn-primary:hover,.staff-portal-app .btn-primary:active,.staff-portal-app .btn-secondary:hover,.staff-portal-app .btn-secondary:active,.staff-portal-app .btn-outline:hover,.staff-portal-app .btn-outline:active{background-position:0 0,0 0;transform:none}}.staff-portal-app .ui-badge-btn{font-family:var(--font-body);text-transform:none;letter-spacing:.2px;min-height:var(--sp-control-h-sm);padding:.25rem .75rem;font-size:12.5px;font-weight:600}.portal-action-group{background:var(--sp-surface-raised,var(--cp-fill-soft,#ffffff09));border:1px solid var(--sp-hairline-soft,var(--cp-hairline-soft,#ffffff14));border-radius:10px;align-items:center;gap:.5rem;padding:.25rem;display:inline-flex}.portal-icon-action{border-radius:var(--sp-radius-sm,8px);width:2.45rem;height:2.45rem;color:var(--sp-muted);cursor:pointer;background:#ffffff0b;border:0;place-items:center;transition:background-color .2s,box-shadow .2s,color .2s;display:inline-grid}.portal-icon-action:hover{color:var(--sp-on-light);background:#a24dff24;box-shadow:inset 0 0 0 1px #a24dff47}.portal-icon-action--danger{color:var(--sp-danger)}.portal-icon-action--danger:hover{color:var(--sp-danger);background:#c23b321f;box-shadow:inset 0 0 0 1px #c23b3252}.staff-portal-app .ui-btn-link{color:var(--sp-on-light);font-weight:500;text-decoration:underline}.staff-portal-app .navbar.staff-portal-navbar,.staff-portal-app .navbar.staff-portal-navbar.scrolled{min-height:80px;background-color:var(--sp-surface-base)!important;border-bottom:1px solid var(--sp-hairline)!important;box-shadow:none!important;padding:12px 32px!important}.staff-portal-app .navbar.staff-portal-navbar .logo-img{height:48px!important;animation:none!important;transform:none!important}.staff-portal-topnav{align-items:center;gap:1.5rem;display:flex}.staff-portal-topnav-label{color:var(--sp-ink);font-size:16px;font-weight:600}.staff-portal-topnav-link{color:var(--sp-muted);font-size:14px;font-weight:500;text-decoration:none}.staff-portal-topnav-link:hover{color:var(--sp-on-light);text-decoration:underline}.staff-portal-main{background:var(--sp-surface-soft);min-height:100dvh;padding-top:80px}.staff-portal-shell{max-width:none;margin:0 auto;padding:32px 32px 64px}.staff-portal-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:.75rem 1rem;margin-bottom:.75rem;display:flex}.staff-portal-eyebrow{letter-spacing:.04em;text-transform:uppercase;color:var(--sp-muted);margin:0 0 2px;font-size:12px;font-weight:600}.staff-portal-title{font-family:var(--font-heading);letter-spacing:-.02em;color:var(--sp-ink);margin:0;font-size:1.35rem;font-weight:650;line-height:1.2}.staff-portal-header-link{font-size:14px}.staff-portal-header-actions{flex-wrap:wrap;align-items:center;gap:.75rem;display:flex}.staff-portal-access-label{color:var(--sp-on-light)}.staff-portal-search{flex:280px;align-items:center;max-width:420px;display:flex;position:relative}.staff-portal-search-glyph{color:var(--sp-muted-soft);pointer-events:none;font-size:13px;position:absolute;left:12px}.staff-portal-search input{min-height:var(--sp-control-h)!important;padding-left:36px!important;padding-right:48px!important}.staff-portal-search kbd{color:var(--sp-muted-soft);background:var(--sp-surface-raised);border:1px solid var(--sp-hairline-soft);pointer-events:none;border-radius:4px;padding:0 4px;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:11px;position:absolute;right:12px}.staff-portal-search-results{z-index:60;background:var(--sp-surface-raised);max-height:26rem;color:var(--sp-ink);border:1px solid var(--sp-hairline);box-shadow:var(--sp-shadow-card);border-radius:10px;padding:.25rem;position:absolute;top:calc(100% + 6px);left:0;right:0;overflow-y:auto}.staff-portal-search-empty{color:var(--sp-muted);padding:.5rem}.staff-portal-search-kind{text-transform:uppercase;letter-spacing:.06em;color:var(--sp-muted);margin:.25rem .5rem .125rem;font-size:.72rem}.staff-portal-search-option{text-align:left;cursor:pointer;width:100%;color:var(--sp-ink);font:inherit;background:0 0;border:none;border-radius:7px;align-items:center;gap:.5rem;padding:.5rem;display:flex}.staff-portal-search-option.is-active,.staff-portal-search-option:hover{background:color-mix(in srgb, var(--sp-primary) 12%, var(--sp-surface-card))}.staff-portal-search-option-icon{opacity:.65;width:1.1rem;color:var(--sp-muted);text-align:center;flex:0 0 1.1rem;font-size:.85rem;position:static;left:auto}.staff-portal-search-option-title{color:var(--sp-ink);font-weight:600}.staff-portal-search-option-sub{text-overflow:ellipsis;white-space:nowrap;color:var(--sp-muted);overflow:hidden}.staff-portal-layout{grid-template-columns:260px minmax(0,1fr);align-items:start;gap:24px;display:grid}.staff-sidebar{background:var(--sp-surface-panel);border:1px solid var(--sp-hairline);border-radius:var(--sp-radius-md);box-shadow:var(--sp-shadow-card);flex-direction:column;padding:20px 16px;display:flex;position:sticky;top:96px}.staff-sidebar-nav{scrollbar-gutter:stable;flex:auto;min-height:0;margin:0 -4px;padding:0 4px;overflow-y:auto}@media (width>=1367px){.staff-portal-shell{padding-top:20px;padding-left:300px}.staff-portal-layout{gap:0;min-height:0;display:block}.staff-sidebar{z-index:35;width:268px;height:auto;max-height:none;box-shadow:none;background:var(--sp-surface-panel);border:none;border-radius:0;align-self:auto;padding:92px 16px 16px;position:fixed;top:0;bottom:0;left:0;overflow:visible}.staff-sidebar:before{content:"";background:var(--sp-hairline);pointer-events:none;width:1px;position:absolute;top:0;bottom:0;right:0}.staff-portal-panel{min-height:calc(100dvh - 140px);overflow:visible}}.staff-nav-backdrop{display:none}.staff-portal-title-row{justify-content:space-between;align-items:center;gap:.75rem;min-width:0;display:flex}.staff-portal-title-row .staff-portal-title{min-width:0}.staff-portal-theme-toggle,.staff-nav-hamburger,.staff-portal-customer-chip,.staff-mobile-tabbar{display:none}.staff-sidebar-heading{border-bottom:1px solid var(--sp-hairline-soft);justify-content:space-between;align-items:center;gap:.75rem;margin-bottom:16px;padding-bottom:12px;display:flex}.staff-sidebar-eyebrow{letter-spacing:.04em;text-transform:uppercase;color:var(--sp-muted-soft);margin:0;padding:0 12px;font-size:12px;font-weight:700}.staff-sidebar-close{display:none}.staff-nav-group{border:1px solid var(--sp-hairline-soft);background:linear-gradient(180deg, color-mix(in srgb, var(--sp-surface-card) 88%, transparent), color-mix(in srgb, var(--sp-surface-card) 70%, transparent));border-radius:14px;margin:0 0 10px;padding:10px 8px 8px;box-shadow:inset 0 1px #ffffff0a}.staff-nav-group+.staff-nav-group{border-top:1px solid var(--sp-hairline-soft);margin-top:0;padding-top:10px}.staff-nav-group-header{border-bottom:1px solid var(--sp-hairline-soft);justify-content:space-between;align-items:center;gap:.5rem;margin:0 4px 8px;padding:0 4px 8px;display:flex}.staff-nav-group-label{letter-spacing:.12em;text-transform:uppercase;color:var(--sp-ink);opacity:.72;margin:0;padding:0;font-size:.68rem;font-weight:800}.staff-nav-group-count{background:color-mix(in srgb, var(--sp-primary) 12%, var(--sp-surface-raised));min-width:1.35rem;height:1.35rem;color:var(--sp-on-light);font-variant-numeric:tabular-nums;letter-spacing:0;border-radius:999px;place-items:center;padding:0 .25rem;font-size:.65rem;font-weight:750;display:inline-grid}.staff-nav-list{flex-direction:column;gap:3px;margin:0;padding:0;list-style:none;display:flex}.staff-nav-list>li{width:100%}.staff-nav-item{width:100%;color:var(--sp-body);font-family:var(--sp-font);letter-spacing:-.01em;text-align:left;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:11px;grid-template-columns:30px minmax(0,1fr);align-items:center;gap:10px;padding:8px;font-size:.86rem;font-weight:600;line-height:1.2;transition:background .18s,color .18s,border-color .18s,box-shadow .18s;display:grid}.staff-nav-item-icon{background:color-mix(in srgb, var(--sp-surface-raised) 80%, transparent);border:1px solid var(--sp-hairline-soft);width:30px;height:30px;color:var(--sp-muted);border-radius:9px;place-items:center;display:inline-grid}.staff-nav-item-icon i{opacity:1;text-align:center;width:auto;font-size:.8rem}.staff-nav-item-label{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.staff-nav-item:hover{background:color-mix(in srgb, var(--sp-primary) 8%, var(--sp-surface-panel));border-color:color-mix(in srgb, var(--sp-primary) 14%, transparent);color:var(--sp-ink);transform:none}.staff-nav-item:hover .staff-nav-item-icon{color:var(--sp-on-light);border-color:color-mix(in srgb, var(--sp-primary) 22%, transparent);background:color-mix(in srgb, var(--sp-primary) 10%, var(--sp-surface-raised))}.staff-nav-item.is-active{background:color-mix(in srgb, var(--sp-primary) 14%, var(--sp-surface-panel));border-color:color-mix(in srgb, var(--sp-primary) 28%, transparent);color:var(--sp-on-light);box-shadow:none;font-weight:700}.staff-nav-item.is-active .staff-nav-item-icon{color:#fff;background:var(--sp-primary);box-shadow:none;border-color:#0000}.staff-nav-item.is-active .staff-nav-item-label{color:var(--sp-on-light)}@keyframes staffPanelReveal{0%{transform:translateY(10px)}to{transform:translateY(0)}}.staff-portal-panel{background:var(--sp-surface-panel);border:1px solid var(--sp-hairline);border-radius:var(--sp-radius-md);padding:var(--sp-panel-pad);min-width:0;min-height:520px;box-shadow:var(--sp-shadow-card);transition:box-shadow .3s,border-color .3s;animation:.4s cubic-bezier(.16,1,.3,1) forwards staffPanelReveal}.staff-portal-app .sp-table-toolbar{flex-wrap:wrap;align-items:center;gap:.5rem;margin-bottom:1rem;display:flex}.staff-portal-app .sp-table-toolbar .sp-spacer{flex:1;min-width:1rem}.staff-portal-app .sp-toolbar-controls{flex-wrap:wrap;align-items:center;gap:.5rem;display:inline-flex}.staff-portal-app .density-toggle{box-sizing:border-box;height:var(--sp-control-h-sm);border:1px solid var(--sp-hairline);border-radius:calc(var(--sp-radius-sm) + 2px);background:var(--sp-surface-input);align-items:stretch;gap:.125rem;padding:.125rem;display:inline-flex}.staff-portal-app .density-toggle .btn{min-width:0;height:auto;min-height:0;box-shadow:none;background:0 0;border-color:#0000;justify-content:center;margin:0;padding-inline:.75rem}.staff-portal-app .density-toggle .btn.is-active,.staff-portal-app .density-toggle .btn[aria-pressed=true]{background:var(--sp-surface-raised);color:var(--sp-ink);border-color:var(--sp-hairline);box-shadow:none;font-weight:700}.staff-portal-app .sp-bulkbar{background:var(--brand-soft,#a24dff14);border:1px solid var(--sp-hairline);border-radius:var(--sp-radius-sm);flex-wrap:wrap;align-items:center;gap:.5rem;margin-bottom:.75rem;padding:.5rem .75rem;display:flex}.staff-portal-app .sp-table-wrap{border:1px solid var(--sp-hairline-soft);border-radius:var(--sp-radius-sm);min-height:240px;max-height:calc(100dvh - 320px);overflow:auto}.staff-portal-app .sp-table-wrap--scroll{min-height:0;max-height:20rem}.staff-portal-app .staff-cms-empty{border:1px dashed var(--sp-hairline-soft);border-radius:var(--sp-radius-md);text-align:center;box-shadow:none;background:0 0;padding:2rem 1.5rem}.staff-portal-app .staff-cms-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;display:flex}.staff-portal-app .staff-cms-inline-form{background:var(--sp-surface-raised);border:1px solid var(--sp-hairline-soft);border-radius:var(--sp-radius-sm);flex-wrap:wrap;align-items:flex-end;gap:.5rem;min-width:0;max-width:100%;margin-top:.25rem;padding:.75rem;display:flex}.staff-portal-app .staff-cms-inline-form>*{min-width:0;max-width:100%}.staff-portal-app .staff-cms-section-label{color:var(--sp-muted);margin:0 0 .5rem;font-size:.95rem;font-weight:600}.staff-portal-app .staff-stat-value--ok{color:var(--sp-success)}.staff-portal-app .staff-stat-value--warn{color:var(--sp-danger)}.staff-portal-app .staff-stat-value--muted{color:var(--sp-muted-soft)}.staff-portal-app .staff-stat-value--sm{font-size:1.05rem}.staff-portal-app .sp-table{border-collapse:separate;border-spacing:0;width:100%;font-size:13.5px}.staff-portal-app .sp-table thead th{z-index:2;background:var(--sp-surface-card);box-shadow:inset 0 -1px 0 var(--sp-hairline-soft);text-align:left;color:var(--sp-muted);white-space:nowrap;padding:0 12px;font-weight:600;position:sticky;top:0}.staff-portal-app .sp-table th.sp-th-sortable{cursor:pointer;user-select:none}.staff-portal-app .sp-table th.sp-th-sortable:hover{color:var(--sp-on-light)}.staff-portal-app .sp-table th .sp-sort-caret{opacity:.6;margin-left:4px;font-size:10px}.staff-portal-app .sp-table--compact tbody tr{height:40px}.staff-portal-app .sp-table--comfortable tbody tr{height:48px}.staff-portal-app .sp-table tbody td{border-bottom:1px solid var(--sp-hairline-soft);color:var(--sp-ink);vertical-align:middle;padding:0 12px}.staff-portal-app .sp-table tbody tr{cursor:pointer}.staff-portal-app .sp-table tbody tr:hover{background:var(--sp-surface-raised)}.staff-portal-app .sp-table tbody tr:focus-visible,.staff-portal-app .sp-table tbody tr:focus{outline:2px solid var(--sp-primary);outline-offset:-2px}.staff-portal-app .sp-table tbody tr.is-selected{background:var(--brand-soft,#a24dff0f)}.staff-portal-app .sp-table tbody tr.sp-table-detail-row,.staff-portal-app .sp-table tbody tr.sp-table-detail-row:hover{cursor:default;background:var(--sp-surface-raised)}.staff-portal-app .sp-table tbody tr.sp-table-detail-row td{padding:10px 12px}.staff-portal-app .sp-row-actions{opacity:0;justify-content:flex-end;gap:4px;transition:opacity .12s;display:flex}.staff-portal-app .sp-table tbody tr:hover .sp-row-actions,.staff-portal-app .sp-table tbody tr:focus-within .sp-row-actions{opacity:1}.staff-portal-app .sp-medical-flag{color:var(--sp-danger)}.staff-portal-app .sp-medical-flag--stack{align-items:flex-start;gap:.5rem;max-width:16rem;line-height:1.35;display:inline-flex}.staff-portal-app .sp-medical-flag--stack>i{flex-shrink:0;margin-top:.125rem}.staff-portal-app .sp-medical-flag--stack>span{gap:.25rem;min-width:0;display:grid}.staff-portal-app .sp-medical-flag__line{overflow-wrap:anywhere;display:block}.staff-portal-app .sp-chip{color:var(--sp-success);background:#37cf8a1a;border-radius:999px;margin:2px 4px 2px 0;padding:1px 8px;font-size:11.5px;font-weight:600;display:inline-block}.staff-portal-app .sp-db-console{border:1px solid var(--sp-hairline);background:var(--sp-surface-card);max-width:100%;box-shadow:var(--sp-shadow-card);border-radius:18px;flex-direction:column;gap:0;display:flex;position:relative;overflow:hidden}.staff-portal-app .sp-db-console .sp-table-toolbar{border-bottom:1px solid var(--sp-hairline-soft);background:color-mix(in srgb, var(--sp-surface-raised) 70%, transparent);margin:0;padding:.75rem}.staff-portal-app .sp-db-console__grid.sp-table-wrap{background:0 0;border:none;border-radius:0;min-height:280px;max-height:calc(100dvh - 280px);margin:0}.staff-portal-app .sp-db-console__table.sp-table{font-size:12.75px}.staff-portal-app .sp-db-console__table.sp-table thead th{letter-spacing:.06em;text-transform:uppercase;height:34px;color:var(--sp-muted);background:linear-gradient(180deg, color-mix(in srgb, var(--sp-surface-card) 92%, #2a1f38) 0%, var(--sp-surface-card) 100%);box-shadow:inset 0 -1px 0 var(--sp-hairline);padding:0 10px;font-size:10.5px;font-weight:650}.staff-portal-app .sp-db-console__table.sp-table--compact tbody tr{height:36px}.staff-portal-app .sp-db-console__table.sp-table tbody td{border-bottom-color:color-mix(in srgb, var(--sp-hairline-soft) 80%, transparent);padding:0 10px}.staff-portal-app .sp-db-console__table.sp-table tbody tr{transition:background-color .16s,box-shadow .16s}.staff-portal-app .sp-db-console__table.sp-table tbody td:first-child{transition:box-shadow .16s;box-shadow:inset 2px 0 #0000}.staff-portal-app .sp-db-console__table.sp-table tbody tr:hover{background:linear-gradient(90deg, #b026ff1a 0%, #b026ff0a 42%, transparent 100%), var(--sp-surface-raised)}.staff-portal-app .sp-db-console__table.sp-table tbody tr.staff-search-target{background:linear-gradient(90deg, #b026ff24 0%, #e8d5a30f 50%, transparent 100%), var(--sp-surface-raised)}.staff-portal-app .sp-db-console__table.sp-table tbody tr.staff-search-target td:first-child{box-shadow:inset 2px 0 0 var(--sp-primary)}.staff-portal-app .sp-db-console__table.sp-table tbody td strong{letter-spacing:.01em;color:var(--sp-on-light,var(--sp-ink));font-weight:650}.staff-portal-app .sp-db-console .sp-class-flow{font-family:inherit;font-size:inherit;letter-spacing:.01em;color:var(--sp-ink);white-space:normal;line-height:1.35;display:inline}.staff-portal-app .sp-db-console .sp-class-flow__name{color:var(--sp-on-light,var(--sp-ink));font-weight:600}.staff-portal-app .sp-db-console .sp-class-flow__sep{color:var(--sp-muted-soft);margin:0 .35em;font-weight:500;display:inline}.staff-portal-app .sp-db-console .sp-class-flow__meta{color:color-mix(in srgb, var(--sp-muted) 55%, var(--sp-on-light));font-weight:500}.staff-portal-app .sp-db-console .sp-row-actions .btn,.staff-portal-app .sp-db-console .sp-row-actions .portal-soft-action{min-height:var(--sp-control-h-sm);padding:.25rem .5rem;font-size:12px}html[data-theme=light] .staff-portal-app .sp-db-console{border-color:color-mix(in srgb, var(--sp-gold) 22%, #5a00a824);background:radial-gradient(ellipse 80% 55% at 12% -10%, #b026ff0f 0%, transparent 55%), radial-gradient(ellipse 50% 40% at 92% 0%, #9a7b3c14 0%, transparent 50%), linear-gradient(180deg, var(--sp-surface-card) 0%, var(--sp-surface-panel) 100%);box-shadow:0 16px 36px #2818401a,inset 0 1px #ffffff73,0 0 0 1px #7d00d80d}html[data-theme=light] .staff-portal-app .sp-db-console .sp-table-toolbar{border-bottom-color:color-mix(in srgb, var(--sp-gold) 18%, #5a00a81a);background:color-mix(in srgb, var(--sp-surface-card) 82%, transparent)}html[data-theme=light] .staff-portal-app .sp-db-console__table.sp-table thead th{color:#685c60;box-shadow:inset 0 -1px 0 color-mix(in srgb, var(--sp-gold) 55%, transparent), inset 0 -2px 0 #7d00d81f;background:linear-gradient(#faf8fc 0%,#f3f0f7 100%)}html[data-theme=light] .staff-portal-app .sp-db-console__table.sp-table tbody tr:hover{background:linear-gradient(90deg,#b026ff12 0%,#b026ff08 42%,#0000 100%),#f3f0f8}html[data-theme=light] .staff-portal-app .sp-db-console .sp-class-flow__name{color:#5a00a8}html[data-theme=light] .staff-portal-app .sp-db-console .sp-class-flow__sep{color:#928070}html[data-theme=light] .staff-portal-app .sp-db-console .sp-class-flow__meta{color:#5e3e7e}.staff-portal-app .sp-columns-menu{position:relative}.staff-portal-app .sp-columns-popover{z-index:5;background:var(--sp-surface-card);border:1px solid var(--sp-hairline);border-radius:var(--sp-radius-sm);box-shadow:var(--sp-shadow-card-hover);gap:6px;min-width:190px;padding:10px 12px;display:grid;position:absolute;top:calc(100% + 6px);right:0}.staff-portal-app .sp-columns-popover label{cursor:pointer;align-items:center;gap:8px;font-size:13px;font-weight:400;display:flex}body.sp-drawer-open{overflow:hidden}.staff-portal-app .sp-drawer-backdrop{z-index:40;-webkit-backdrop-filter:blur(2px);cursor:pointer;background:#08070b85;border:none;margin:0;padding:0;animation:.22s staff-dossier-backdrop-in;position:fixed;inset:0}.staff-portal-app .sp-drawer{z-index:41;background:var(--sp-surface-panel);border-left:1px solid var(--sp-hairline);flex-direction:column;width:min(34rem,100vw);animation:.38s cubic-bezier(.16,1,.3,1) staff-dossier-in;display:flex;position:fixed;top:0;bottom:0;right:0;box-shadow:-18px 0 48px #00000061,inset 1px 0 #ffffff0a}.staff-portal-app .sp-drawer:before{content:"";z-index:2;pointer-events:none;opacity:.9;background:linear-gradient(90deg,#0000 0%,#e8d5a326 12%,#e8d5a3bf 38%,#b026ffd9 52%,#e8d5a38c 68%,#0000 100%);height:2px;position:absolute;top:0;left:0;right:0}.staff-portal-app .sp-drawer-top{padding:max(.75rem, env(safe-area-inset-top)) 1rem .75rem;border-bottom:1px solid var(--sp-hairline-soft);background:color-mix(in srgb, var(--sp-surface-panel) 88%, transparent);-webkit-backdrop-filter:blur(18px)saturate(1.2);flex-shrink:0;justify-content:space-between;align-items:center;gap:.75rem;display:flex}.staff-portal-app .sp-drawer-close{min-height:44px;color:var(--sp-on-light);font:inherit;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:10px;align-items:center;gap:.5rem;padding:.25rem .5rem;font-weight:600;transition:background-color .2s,border-color .2s,transform .18s;display:inline-flex}.staff-portal-app .sp-drawer-close:hover,.staff-portal-app .staff-dossier-back:hover{background:color-mix(in srgb, var(--sp-primary) 10%, transparent);border-color:var(--sp-hairline-strong)}.staff-portal-app .sp-drawer-close:active{transform:scale(.97)}.staff-portal-app .sp-drawer-top-actions{flex-wrap:wrap;justify-content:flex-end;gap:.5rem;display:flex}.staff-portal-app .sp-drawer-hero{border-bottom:1px solid var(--sp-hairline-soft);background:radial-gradient(90% 140% at 0 0,#a24dff24,#0000 58%),radial-gradient(55% 90% at 100% 0,#e8d5a31a,#0000 52%);flex-shrink:0;padding:1rem 1.25rem .75rem;position:relative}.staff-portal-app .sp-drawer h4{font-family:var(--font-heading);letter-spacing:-.02em;color:var(--sp-ink);margin:0 0 .25rem;font-size:1.3rem;font-weight:700}.staff-portal-app .sp-drawer .sp-drawer-sub{color:var(--sp-muted);margin:0;font-size:.84rem}@media (prefers-reduced-motion:reduce){.staff-portal-app .sp-drawer,.staff-portal-app .sp-drawer-backdrop{animation:none}}.staff-portal-app .sp-drawer-body{-webkit-overflow-scrolling:touch;min-height:0;padding:.25rem 1.25rem max(1.25rem, env(safe-area-inset-bottom));flex:auto;overflow-y:auto}.staff-portal-app .sp-drawer-body .ui-card-sm,.staff-portal-app .sp-drawer-body .staff-cms-block{box-shadow:none;background:0 0;border:none;margin:0;padding:0}.staff-portal-app .sp-drawer-block{border-top:1px solid var(--sp-hairline-soft);padding:12px 0;font-size:13.5px}.staff-portal-app .sp-drawer-block .sp-lbl{text-transform:uppercase;letter-spacing:.06em;color:var(--sp-muted-soft);margin-bottom:6px;font-size:10.5px;font-weight:700}.staff-portal-app .sp-drawer-actions{flex-direction:column;gap:6px;margin-top:16px;display:flex}.staff-portal-app .staff-pipeline-section{min-width:0;max-width:100%;overflow:hidden}.staff-portal-app .staff-pipeline-board{contain:inline-size;-webkit-overflow-scrolling:touch;grid-auto-columns:minmax(210px,1fr);grid-auto-flow:column;align-items:start;gap:.75rem;width:100%;min-width:0;max-width:100%;margin-top:1rem;padding-bottom:.5rem;display:grid;overflow-x:auto}.staff-portal-app .staff-pipeline-col{background:var(--sp-surface-raised);border:1px solid var(--sp-hairline-soft);border-top:3px solid var(--sp-muted-soft);border-radius:var(--sp-radius-sm);min-width:210px}.staff-portal-app .staff-pipeline-col--new{border-top-color:var(--sp-primary)}.staff-portal-app .staff-pipeline-col--contacted{border-top-color:var(--sp-on-light)}.staff-portal-app .staff-pipeline-col--tour_scheduled{border-top-color:var(--sp-warn)}.staff-portal-app .staff-pipeline-col--enrolled{border-top-color:var(--sp-success)}.staff-portal-app .staff-pipeline-col--not_a_fit{border-top-color:var(--sp-muted-soft)}.staff-portal-app .staff-pipeline-col-head{border-bottom:1px solid var(--sp-hairline-soft);justify-content:space-between;align-items:center;padding:.5rem .75rem;display:flex}.staff-portal-app .staff-pipeline-col-title{letter-spacing:.05em;text-transform:uppercase;color:var(--sp-muted);font-size:.72rem;font-weight:700}.staff-portal-app .staff-pipeline-col-count{color:var(--sp-muted-soft);background:var(--sp-surface-strong);border-radius:999px;padding:1px 8px;font-size:.75rem;font-weight:700}.staff-portal-app .staff-pipeline-col-body{gap:.5rem;padding:.5rem;display:grid}.staff-portal-app .staff-pipeline-empty{text-align:center;margin:0;padding:.5rem 0}.staff-portal-app .staff-pipeline-card{background:var(--sp-surface-strong);border:1px solid var(--sp-hairline-soft);border-radius:var(--sp-radius-sm);box-shadow:var(--sp-shadow-card);padding:.5rem .75rem}.staff-portal-app .staff-pipeline-card-open{text-align:left;cursor:pointer;background:0 0;border:none;width:100%;padding:0;display:block}.staff-portal-app .staff-pipeline-card-name{color:var(--sp-ink);font-size:.9rem;font-weight:600;display:block}.staff-portal-app .staff-pipeline-card-open:hover .staff-pipeline-card-name{color:var(--sp-on-light)}.staff-portal-app .staff-pipeline-card-topic{color:var(--sp-muted);font-size:.78rem;display:block}.staff-portal-app .staff-pipeline-card-meta{margin:.25rem 0 .5rem;font-size:.72rem}.staff-portal-app .staff-pipeline-card-contact{gap:.25rem;margin:0 0 .5rem;display:flex}.staff-portal-app .staff-pipeline-card-contact a{border:1px solid var(--sp-hairline-soft);background:var(--sp-surface-raised);width:26px;height:26px;color:var(--sp-muted);border-radius:7px;justify-content:center;align-items:center;font-size:.72rem;transition:color .15s,border-color .15s;display:inline-flex}.staff-portal-app .staff-pipeline-card-contact a:hover{color:var(--sp-primary-soft,var(--sp-primary));border-color:var(--sp-primary)}.staff-portal-app .staff-pipeline-advance{width:100%}.staff-portal-app .staff-pipeline-stage-btns{flex-wrap:wrap;gap:.25rem;display:flex}.staff-portal-app .staff-ops-page-header{border-bottom:1px solid var(--sp-hairline-soft);justify-content:space-between;align-items:baseline;gap:12px;margin:0 0 8px;padding-bottom:8px;display:flex}.staff-portal-app .staff-preview-modal{width:100%;max-width:700px;max-height:90vh;padding:1rem;overflow-y:auto}.staff-portal-app .staff-preview-modal .staff-ops-page-header{align-items:center;margin-bottom:.75rem}.staff-portal-app .staff-preview-modal-close{color:var(--sp-ink);cursor:pointer;background:0 0;border:none;margin-left:auto;padding:.125rem .25rem;font-size:1.4rem;line-height:1}.staff-portal-app .staff-studio-section-header{align-items:center;margin-bottom:.75rem}.staff-portal-app .staff-cms>.staff-cms-block{box-shadow:none;border:none;border-top:1px solid var(--sp-hairline-soft);background:0 0;border-radius:0;padding:.75rem 0}.staff-portal-app .staff-cms>.staff-cms-block:first-of-type{border-top:none;padding-top:0}.staff-portal-app .staff-ops-page-header .staff-cms-actions{flex-shrink:0;margin-left:auto}.staff-portal-app .staff-ops-page-title{letter-spacing:-.02em;color:var(--sp-ink);margin:0;font-size:1.15rem;font-weight:650}.staff-portal-app .staff-ops-page-status{color:var(--sp-muted);margin:0;font-size:.78rem;font-weight:600}.staff-portal-app .staff-ops-form-card{box-sizing:border-box;border:1px solid var(--sp-hairline);border-radius:var(--sp-radius-md);background:var(--sp-surface-card);width:100%;min-width:0;max-width:100%;padding:.75rem;overflow:hidden}.staff-portal-app .staff-ops-form-card.ui-card-sm{max-width:100%;padding:.75rem}.staff-portal-app .staff-ops-form-card>h3{letter-spacing:-.02em;margin:0 0 .25rem;font-size:1.05rem;font-weight:650}.staff-portal-app .staff-ops-form-card>.ui-text-sm{max-width:40rem;margin:0 0 .5rem;line-height:1.35}.staff-portal-app .staff-insights{gap:.75rem;display:grid}.staff-portal-app .staff-insights-ask,.staff-portal-app .staff-insights-answer,.staff-portal-app .staff-insights-locked{max-width:48rem}.staff-portal-app .staff-insights-kicker{letter-spacing:.08em;text-transform:uppercase;color:var(--sp-muted-soft);margin:0 0 .25rem;font-size:.72rem;font-weight:700}.staff-portal-app .staff-insights-locked h4{letter-spacing:-.02em;color:var(--sp-ink);margin:0 0 .5rem;font-size:1.05rem;font-weight:650}.staff-portal-app .staff-insights-label{letter-spacing:.04em;text-transform:uppercase;color:var(--sp-muted);margin:0 0 .5rem;font-size:.78rem;font-weight:700;display:block}.staff-portal-app .staff-insights-row{align-items:stretch;gap:.5rem;display:flex}.staff-portal-app .staff-insights-input{min-width:0;min-height:var(--sp-control-h);border:1px solid var(--sp-hairline);border-radius:var(--sp-radius-md);background:var(--sp-surface);color:var(--sp-ink);font:inherit;flex:1;padding:.5rem .75rem}.staff-portal-app .staff-insights-input:focus{outline:2px solid color-mix(in srgb, var(--sp-accent) 45%, transparent);outline-offset:1px}.staff-portal-app .staff-insights-ranges{flex-wrap:wrap;gap:.5rem;margin:.75rem 0 .5rem;display:flex}.staff-portal-app .staff-insights-hint{margin:0;font-size:.78rem;line-height:1.4}.staff-portal-app .staff-insights-prompts{flex-wrap:wrap;gap:.5rem;max-width:48rem;display:flex}.staff-portal-app .staff-insights-asked{color:var(--sp-muted);margin:0 0 .25rem;font-size:.82rem}.staff-portal-app .staff-insights-headline{letter-spacing:.06em;text-transform:uppercase;color:var(--sp-muted-soft);margin:0;font-size:.78rem;font-weight:700}.staff-portal-app .staff-insights-value{letter-spacing:-.03em;color:var(--sp-ink);margin:.125rem 0 .25rem;font-size:2rem;font-weight:700;line-height:1.1}.staff-portal-app .staff-insights-caption,.staff-portal-app .staff-insights-empty{color:var(--sp-muted);margin:0 0 .75rem;font-size:.82rem}.staff-portal-app .staff-insights-breakdown{border-top:1px solid var(--sp-hairline-soft);margin:0 0 .75rem;padding:0;list-style:none}.staff-portal-app .staff-insights-breakdown li{border-bottom:1px solid var(--sp-hairline-soft);justify-content:space-between;gap:1rem;padding:.5rem 0;font-size:.88rem;display:flex}.staff-portal-app .staff-insights-breakdown strong{font-variant-numeric:tabular-nums}.staff-portal-app .staff-insights-history-title{letter-spacing:.06em;text-transform:uppercase;color:var(--sp-muted-soft);margin:0 0 .25rem;font-size:.78rem;font-weight:700}.staff-portal-app .staff-insights-history ul{margin:0;padding:0;list-style:none}.staff-portal-app .staff-insights-history button{font:inherit;color:var(--sp-on-light);cursor:pointer;background:0 0;border:0;padding:.25rem 0;font-size:.86rem;font-weight:600}@media (width<=640px){.staff-portal-app .staff-insights-row{flex-direction:column}}.staff-portal-app .staff-ops-check,.staff-portal-app .form-group>label.staff-ops-check{cursor:pointer;font-family:var(--sp-font);letter-spacing:normal;text-transform:none;color:var(--sp-ink);align-items:center;gap:.5rem;margin:0 0 .5rem;font-size:.9rem;font-weight:500;display:flex}.staff-portal-app .staff-ops-check input{width:1rem;height:1rem;accent-color:var(--sp-primary);flex-shrink:0;margin:0}.staff-portal-app .staff-ops-form-grid,.staff-portal-app .staff-ops-form-grid--3,.staff-portal-app .staff-cms-field-grid--2,.staff-portal-app .staff-fill-grid,.staff-portal-app .ui-grid-2{box-sizing:border-box;gap:var(--sp-field-gap);grid-template-columns:minmax(0,1fr);width:100%;max-width:100%;display:grid}.staff-portal-app .staff-ops-form-grid{margin-bottom:var(--sp-field-gap)}.staff-portal-app .staff-ops-form-grid>.form-group{min-width:0;max-width:100%;margin-bottom:0}.staff-portal-app .staff-ops-form-grid>.form-group--span-2,.staff-portal-app .staff-ops-form-grid>.form-group--span-3,.staff-portal-app .staff-ops-form-grid>.staff-ops-form-actions{grid-column:1/-1}.staff-portal-app .staff-ops-form-actions{flex-wrap:wrap;gap:.5rem;min-width:0;max-width:100%;margin-top:.125rem;display:flex}.staff-portal-app .staff-ops-form-actions .btn{max-width:100%}.staff-help-page{gap:.75rem;display:grid}.staff-help-support{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;display:flex}.staff-help-support h4{color:var(--sp-on-light,var(--sp-ink));font-size:.95rem}.staff-help-topic{border:1px solid var(--sp-hairline);border-radius:var(--sp-radius-md);background:var(--sp-surface-card);padding:.75rem}.staff-help-topic h4{color:var(--sp-on-light,var(--sp-ink))}.staff-help-section{margin-top:.75rem}.staff-help-section h5{color:var(--sp-on-light,var(--sp-ink));margin:0 0 .25rem;font-size:.85rem;font-weight:700}.staff-help-bullets{gap:.25rem;margin:.25rem 0 0;padding-left:1rem;display:grid}@media (width<=720px){.staff-portal-app .staff-ops-form-card,.staff-portal-app .staff-ops-form-card.ui-card-sm{max-width:100%}.staff-portal-app .staff-cms-inline-form{flex-direction:column;align-items:stretch}.staff-portal-app .staff-cms-inline-form>*,.staff-portal-app .staff-cms-inline-form .ui-input-dark,.staff-portal-app .staff-cms-inline-form .btn{width:100%;min-width:0;max-width:100%}}.staff-portal-app .staff-cal-page-header{justify-content:space-between;align-items:baseline;gap:.75rem;margin:0 0 .5rem;display:flex}.staff-portal-app .staff-cal-toolbar{flex-wrap:wrap;align-items:center;gap:.5rem;min-height:32px;margin-bottom:.5rem;display:flex}.staff-portal-app .staff-cal-toolbtn{appearance:none;font:inherit;color:var(--sp-muted);border:1px solid var(--sp-hairline);cursor:pointer;background:0 0;border-radius:6px;min-height:28px;padding:.25rem .5rem;font-size:.72rem;font-weight:600;line-height:1}.staff-portal-app .staff-cal-toolbtn:hover{color:var(--sp-ink);border-color:var(--sp-hairline-strong)}.staff-portal-app .staff-cal-toolbtn:disabled{opacity:.5;cursor:not-allowed}.staff-portal-app .staff-cal-closures{border-top:1px solid var(--sp-hairline-soft);margin-top:.75rem;padding-top:.5rem}.staff-portal-app .staff-cal-closures-bar{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.5rem .75rem;min-height:28px;display:grid}.staff-portal-app .staff-cal-closures-status{color:var(--sp-muted);margin:0;font-size:12px}.staff-portal-app .staff-cal-closures-status strong{color:var(--sp-ink);font-weight:650}.staff-portal-app .staff-cal-closure-form{justify-self:end}.staff-portal-app .staff-cal-closure-form[open]{grid-column:1/-1;justify-self:stretch}.staff-portal-app .staff-cal-closure-form>summary{cursor:pointer;color:var(--sp-muted);border:1px solid var(--sp-hairline);border-radius:6px;align-items:center;width:fit-content;min-height:28px;padding:.25rem .5rem;font-size:12px;font-weight:650;list-style:none;display:inline-flex}.staff-portal-app .staff-cal-closure-form>summary:hover{color:var(--sp-ink);border-color:var(--sp-hairline-strong)}.staff-portal-app .staff-cal-closure-form>summary::-webkit-details-marker{display:none}.staff-portal-app .staff-cal-closure-form[open]>summary{margin-bottom:.5rem}.staff-portal-app .staff-cal-closure-form>summary+p{margin:0 0 .75rem}.staff-portal-app .staff-cal-closures-list{gap:.25rem;margin-top:.5rem;display:grid}.staff-portal-app .staff-cal-closure-row{border-top:1px solid var(--sp-hairline-soft);flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:.75rem;padding:.25rem 0;font-size:12px;display:flex}.staff-portal-app .staff-cal-closure-row strong{color:var(--sp-ink);font-weight:600;display:block}.staff-portal-app .staff-cal-closure-row span{color:var(--sp-muted)}.staff-portal-app .staff-cal-closure-actions{flex-wrap:wrap;gap:.25rem;display:flex}.staff-portal-app .staff-cal-nav{gap:.25rem;display:flex}.staff-portal-app .staff-cal-range{color:var(--sp-muted);font-size:14px;font-weight:600}.staff-portal-app .staff-cal-weeks{gap:.25rem;display:flex}.staff-portal-app .staff-cal-legend{color:var(--sp-muted);gap:.75rem;margin-left:auto;font-size:12px;display:flex}.staff-portal-app .staff-cal-legend-item{align-items:center;gap:.25rem;display:inline-flex}.staff-portal-app .staff-cal-dot{border-radius:50%;width:7px;height:7px;display:inline-block}.staff-portal-app .staff-cal-dot--class{background:var(--sp-muted-soft)}.staff-portal-app .staff-cal-dot--event{background:var(--sp-warn)}.staff-portal-app .staff-cal-dot--lesson{background:var(--sp-success)}.staff-portal-app .staff-cal-weekdays{border-bottom:1px solid var(--sp-hairline-soft);grid-template-columns:repeat(7,minmax(0,1fr));gap:1px;margin-bottom:0;padding:.25rem 0;display:grid}.staff-portal-app .staff-cal-weekday{text-transform:uppercase;letter-spacing:.06em;color:var(--sp-muted);padding-left:.25rem;font-size:12px;font-weight:700}.staff-portal-app .staff-cal-grid{contain:inline-size;background:var(--sp-hairline);border:1px solid var(--sp-hairline-soft);border-radius:8px;grid-template-columns:repeat(7,minmax(0,1fr));gap:1px;display:grid;overflow:hidden}.staff-portal-app .staff-cal-day{background:var(--sp-surface-raised);border:none;border-radius:0;grid-template-rows:auto minmax(0,1fr);min-width:0;height:100%;min-height:0;padding:0;display:grid;overflow:hidden}.staff-portal-app .staff-cal-day.is-today{box-shadow:inset 0 0 0 1px var(--sp-hairline-strong)}.staff-portal-app .staff-cal-day.is-past .staff-cal-day-num{color:var(--sp-muted)}.staff-portal-app .staff-cal-day-head{border-bottom:1px solid var(--sp-hairline-soft);flex-shrink:0;justify-content:flex-end;align-items:baseline;gap:.25rem;padding:.125rem .25rem;display:flex}.staff-portal-app .staff-cal-cell-dow{text-transform:uppercase;letter-spacing:.06em;color:var(--sp-muted);margin-right:auto;font-size:12px;font-weight:700;display:none}.staff-portal-app .staff-cal-day-num{font-family:var(--font-heading);color:var(--sp-ink);font-size:14px;font-weight:700}.staff-portal-app .staff-cal-day-month{color:var(--sp-muted);text-transform:uppercase;letter-spacing:.04em;font-size:12px}.staff-portal-app .staff-cal-day-body{flex-direction:column;flex:1;gap:.25rem;padding:.25rem;display:flex;overflow-y:auto}.staff-portal-app .staff-cal-item{text-align:left;width:100%;font:inherit;cursor:pointer;background:color-mix(in srgb, var(--sp-surface-card) 92%, transparent);border:none;border-left:1px solid var(--sp-muted-soft);box-shadow:none;border-radius:4px;flex-direction:column;gap:0;padding:.125rem .25rem;transition:background-color .12s,border-color .12s;display:flex}.staff-portal-app .staff-cal-item:hover{background:var(--sp-surface-card);border-color:var(--sp-hairline-strong)}.staff-portal-app .staff-cal-item:active{opacity:.9}.staff-portal-app .staff-cal-item--event{border-left-color:var(--sp-warn)}.staff-portal-app .staff-cal-item--lesson{border-left-color:var(--sp-success)}.staff-portal-app .staff-cal-item--open{background:0 0;border-left-style:dashed}.staff-portal-app .staff-cal-item-time{color:color-mix(in srgb, var(--sp-muted) 70%, var(--sp-ink));text-transform:uppercase;letter-spacing:.02em;font-size:12px;font-weight:650;line-height:1.2}.staff-portal-app .staff-cal-flag{color:var(--sp-warn);text-transform:none;letter-spacing:0}.staff-portal-app .staff-cal-item--lesson .staff-cal-flag{color:var(--sp-success)}.staff-portal-app .staff-cal-item-title{color:var(--sp-ink);white-space:nowrap;text-overflow:ellipsis;font-size:12px;font-weight:600;line-height:1.25;overflow:hidden}.staff-portal-app .staff-cal-mobile{display:none}@media (width<=900px){.staff-portal-app .staff-cal-desktop{display:none!important}.staff-portal-app .staff-cal-mobile{display:block}.staff-portal-app .staff-cal-mobile-nav{grid-template-columns:44px minmax(0,1fr) 44px;align-items:center;gap:.75rem;margin-bottom:.75rem;display:grid}.staff-portal-app .staff-cal-mobile-nav>div{text-align:center;min-width:0}.staff-portal-app .staff-cal-mobile-nav strong,.staff-portal-app .staff-cal-mobile-kicker{display:block}.staff-portal-app .staff-cal-mobile-nav strong{color:var(--sp-ink);font-size:1rem}.staff-portal-app .staff-cal-mobile-kicker{color:var(--sp-primary-soft,var(--sp-primary));letter-spacing:.12em;text-transform:uppercase;margin-bottom:.125rem;font-size:.66rem;font-weight:800}.staff-portal-app .staff-cal-mobile-shift{border:1px solid var(--sp-hairline);background:var(--sp-surface-card);width:44px;height:44px;color:var(--sp-ink);border-radius:15px;box-shadow:0 8px 20px -16px #000000e6}.staff-portal-app .staff-cal-date-strip{grid-template-columns:repeat(7,minmax(0,1fr));gap:.25rem;margin:0 -.125rem 1.25rem;padding:.125rem;display:grid}.staff-portal-app .staff-cal-date{min-width:0;min-height:66px;color:var(--sp-muted);font:inherit;background:0 0;border:1px solid #0000;border-radius:17px;align-content:center;justify-items:center;gap:.125rem;padding:.5rem .125rem .25rem;display:grid}.staff-portal-app .staff-cal-date span{letter-spacing:.04em;text-transform:uppercase;font-size:.62rem;font-weight:700}.staff-portal-app .staff-cal-date strong{color:var(--sp-ink);font-size:1rem}.staff-portal-app .staff-cal-date i{background:0 0;border-radius:999px;width:4px;height:4px}.staff-portal-app .staff-cal-date i.has-events{background:var(--sp-primary)}.staff-portal-app .staff-cal-date.is-selected{color:#fff;background:linear-gradient(145deg,#8124def2,#51159af2);border-color:#ad4dff85;box-shadow:0 12px 25px -15px #9d4afff2}.staff-portal-app .staff-cal-date.is-selected strong{color:#fff}.staff-portal-app .staff-cal-date.is-selected i.has-events{background:#fff}.staff-portal-app .staff-cal-date.is-today:not(.is-selected){border-color:var(--sp-hairline-strong)}.staff-portal-app .staff-cal-agenda{padding:0}.staff-portal-app .staff-cal-agenda-head{justify-content:space-between;align-items:end;gap:.75rem;margin-bottom:.75rem;padding:0 .125rem;display:flex}.staff-portal-app .staff-cal-agenda-head span,.staff-portal-app .staff-cal-agenda-head strong{display:block}.staff-portal-app .staff-cal-agenda-head>div>span{color:var(--sp-muted);letter-spacing:.06em;text-transform:uppercase;font-size:.72rem;font-weight:700}.staff-portal-app .staff-cal-agenda-head>div>strong{color:var(--sp-ink);margin-top:.125rem;font-size:1.15rem}.staff-portal-app .staff-cal-agenda-count{color:var(--sp-muted);font-size:.76rem}.staff-portal-app .staff-cal-agenda-list{gap:.75rem;display:grid}.staff-portal-app .staff-cal-agenda-card{border:1px solid var(--sp-hairline-soft);background:linear-gradient(145deg, #ffffff06, transparent 55%), var(--sp-surface-card);width:100%;min-height:92px;color:var(--sp-ink);text-align:left;font:inherit;border-radius:20px;grid-template-columns:42px minmax(0,1fr) auto;align-items:center;gap:.75rem;padding:.75rem;display:grid;box-shadow:0 15px 30px -24px #000000f2,inset 0 1px #ffffff06}.staff-portal-app .staff-cal-agenda-icon{width:42px;height:42px;color:var(--sp-primary-soft,var(--sp-primary));background:#9b49ff1f;border-radius:14px;place-items:center;display:grid}.staff-portal-app .staff-cal-agenda-card--event .staff-cal-agenda-icon{color:var(--sp-warn);background:#f5b14e1f}.staff-portal-app .staff-cal-agenda-card--lesson .staff-cal-agenda-icon{color:var(--sp-success);background:#37cf8a1c}.staff-portal-app .staff-cal-agenda-copy{gap:.25rem;min-width:0;display:grid}.staff-portal-app .staff-cal-agenda-copy>strong{color:var(--sp-ink);text-overflow:ellipsis;white-space:nowrap;font-size:.95rem;overflow:hidden}.staff-portal-app .staff-cal-agenda-copy>span:last-child{color:var(--sp-muted);text-overflow:ellipsis;white-space:nowrap;font-size:.74rem;overflow:hidden}.staff-portal-app .staff-cal-agenda-type{color:var(--sp-primary-soft,var(--sp-primary));letter-spacing:.08em;text-transform:uppercase;font-size:.64rem;font-weight:800}.staff-portal-app .staff-cal-agenda-card--event .staff-cal-agenda-type{color:var(--sp-warn)}.staff-portal-app .staff-cal-agenda-card--lesson .staff-cal-agenda-type{color:var(--sp-success)}.staff-portal-app .staff-cal-agenda-type em{border:1px solid;border-radius:999px;margin-left:.5rem;padding:.125rem .25rem;font-size:.55rem;font-style:normal}.staff-portal-app .staff-cal-agenda-chevron{color:var(--sp-muted-soft);font-size:.72rem}.staff-portal-app .staff-cal-empty{border:1px dashed var(--sp-hairline);min-height:180px;color:var(--sp-muted);text-align:center;background:#ffffff04;border-radius:20px;align-content:center;place-items:center;gap:.25rem;padding:1.5rem;display:grid}.staff-portal-app .staff-cal-empty i{color:var(--sp-primary-soft,var(--sp-primary));margin-bottom:.25rem;font-size:1.6rem}.staff-portal-app .staff-cal-empty strong{color:var(--sp-ink)}.staff-portal-app .staff-cal-empty span{font-size:.8rem}.staff-portal-app .staff-cal-today{width:100%;min-height:44px;color:var(--sp-primary-soft,var(--sp-primary));font:inherit;background:0 0;border:0;margin-top:.75rem;font-size:.8rem;font-weight:700}.staff-portal-app .sp-table-wrap{max-height:calc(100dvh - 380px)}.staff-portal-app .sp-db-console{border-radius:16px}.staff-portal-app .sp-db-console__grid.sp-table-wrap{min-height:220px;max-height:calc(100dvh - 340px)}.staff-portal-app .staff-athlete-directory .sp-table-toolbar,.staff-portal-app .staff-athlete-desktop-table{display:none}.staff-portal-app .staff-athlete-mobile-list{gap:.75rem;display:grid}.staff-portal-app .staff-athlete-card{border:1px solid var(--sp-hairline-soft);background:linear-gradient(145deg, #ffffff06, transparent 55%), var(--sp-surface-card);width:100%;min-height:96px;color:var(--sp-ink);text-align:left;font:inherit;border-radius:20px;grid-template-columns:48px minmax(0,1fr) auto;align-items:center;gap:.75rem;padding:.75rem;display:grid;box-shadow:0 16px 30px -25px #000000f2,inset 0 1px #ffffff06}.staff-portal-app .staff-athlete-avatar{color:#fff;letter-spacing:.03em;background:linear-gradient(145deg,#842ed98c,#311254e6);border:1px solid #ae55ff8a;border-radius:50%;place-items:center;width:48px;height:48px;font-size:.8rem;font-weight:800;display:grid;overflow:hidden;box-shadow:0 0 0 4px #923aef0f}.staff-portal-app .staff-athlete-avatar img{object-fit:cover;width:100%;height:100%;display:block}.staff-portal-app .staff-athlete-card-copy{gap:.25rem;min-width:0;display:grid}.staff-portal-app .staff-athlete-card-name{align-items:center;gap:.5rem;min-width:0;display:flex}.staff-portal-app .staff-athlete-card-name strong{color:var(--sp-ink);text-overflow:ellipsis;white-space:nowrap;font-size:.94rem;overflow:hidden}.staff-portal-app .staff-athlete-card-name i{color:var(--sp-danger);flex:none;font-size:.72rem}.staff-portal-app .staff-athlete-card-meta,.staff-portal-app .staff-athlete-card-program{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.staff-portal-app .staff-athlete-card-meta{color:var(--sp-muted);font-size:.7rem}.staff-portal-app .staff-athlete-card-program{color:var(--sp-primary-soft,var(--sp-primary));font-size:.72rem;font-weight:650}.staff-portal-app .staff-athlete-card-trailing{color:var(--sp-muted);justify-items:end;gap:0;display:grid}.staff-portal-app .staff-athlete-card-trailing span{color:var(--sp-ink);font-size:1rem;font-weight:750}.staff-portal-app .staff-athlete-card-trailing small{margin-bottom:.25rem;font-size:.58rem}.staff-portal-app .staff-athlete-card-trailing i{color:var(--sp-muted-soft);font-size:.66rem}.staff-portal-app .staff-athlete-directory>.ui-flex-start{grid-template-columns:minmax(0,1fr) auto;align-items:stretch;display:grid}.staff-portal-app .staff-athlete-directory>.ui-flex-start input[type=search]{min-width:0!important}.staff-portal-app .sp-drawer{border-left:0;width:100vw}.staff-portal-app .sp-drawer h4{font-size:1.35rem}}.staff-portal-panel h3:not(.staff-ops-page-title){font-family:var(--font-heading);margin:0 0 .5rem;font-size:1.15rem;font-weight:650}.staff-portal-panel .ui-text-sm{font-size:14px;line-height:1.43}.staff-portal-footer{background:var(--sp-surface-base);border-top:1px solid var(--sp-hairline);padding:24px 0}.staff-portal-footer .social-links{display:none!important}.staff-cms{gap:var(--sp-section-gap,1.25rem);display:grid}.staff-cms-header{padding-bottom:var(--sp-block-gap,1rem);border-bottom:1px solid var(--sp-hairline-soft);flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:.75rem;display:flex}.staff-cms-eyebrow{letter-spacing:.06em;text-transform:uppercase;color:var(--sp-muted-soft);margin:0 0 .25rem;font-size:12px;font-weight:700}.staff-cms-title{font-family:var(--font-heading);color:var(--sp-ink);margin:0 0 .25rem;font-size:1.35rem;font-weight:600;line-height:1.2}.staff-cms-lead{max-width:36rem;margin:0;font-size:.9rem;line-height:1.45}.staff-cms-actions{flex-wrap:wrap;gap:.75rem;display:flex}.staff-cms-block{background:var(--sp-surface-card);border:1px solid var(--sp-hairline);border-radius:var(--sp-radius-md);padding:var(--sp-block-pad);box-shadow:var(--sp-shadow-card)}.staff-dash-panel{background:var(--sp-surface-card);border:1px solid var(--sp-hairline);border-radius:var(--sp-radius-md);padding:.75rem}.staff-dash-panel-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem;margin-bottom:.5rem;display:flex}.staff-dash-panel-title,.staff-dash-panel-head h4,.staff-dash-panel>h4{letter-spacing:.05em;text-transform:uppercase;color:var(--sp-on-light,var(--sp-ink));margin:0 0 .5rem;font-size:.78rem;font-weight:750}.staff-cms-block-head{margin-bottom:var(--sp-block-gap);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem;display:flex}.staff-cms-block-title{letter-spacing:.06em;text-transform:uppercase;color:var(--sp-on-light);margin:0 0 1rem;font-size:.8rem;font-weight:700}.staff-cms-block-head .staff-cms-block-title{margin-bottom:0}.staff-cms-field-grid{gap:var(--sp-field-gap);min-width:0;max-width:100%;display:grid}.staff-cms-field-grid>*{min-width:0;max-width:100%}.staff-cms-field-grid--2{grid-template-columns:minmax(0,1fr)}.staff-cms-file-drop{position:relative}.staff-cms-file-drop.is-over{outline:2px dashed var(--brand,#a24dff);outline-offset:2px;background:var(--brand-soft,#a24dff14)}.staff-cms-file-drop--zone{border:1px dashed var(--sp-hairline-strong,#ffffff47);border-radius:var(--sp-radius-sm,10px);cursor:pointer;flex-direction:column;align-items:flex-start;gap:.25rem;margin-top:.5rem;padding:.75rem 1rem;display:flex}.staff-cms-file-drop--zone[aria-disabled=true]{cursor:wait;opacity:.7}.staff-dashboard-grid{grid-template-columns:minmax(0,1fr);gap:12px;display:grid}.staff-stat-card{background:var(--sp-surface-card);border:1px solid var(--sp-hairline);border-radius:var(--sp-radius-md);box-shadow:var(--sp-shadow-card);flex-direction:column;gap:.25rem;padding:1rem;display:flex}.staff-stat-card--warn{border-color:#e74c3c66}.staff-stat-card--accent{border-color:var(--sp-primary)}.staff-stat-head{align-items:center;gap:.5rem;margin-bottom:.25rem;display:flex}.staff-stat-icon{border-radius:9px;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;font-size:.82rem;display:inline-flex}.staff-stat-icon--blue{color:#58a6ff;background:#58a6ff29}.staff-stat-icon--gold{color:#f5b544;background:#f5b54429}.staff-stat-icon--teal{color:#2dd4bf;background:#2dd4bf29}.staff-stat-icon--red{color:#ff8a8a;background:#ff5a5a29}.staff-stat-icon--purple{color:#d88dff;background:#a24dff2e}.staff-stat-icon--lime{color:#a3e635;background:#a3e63524}.staff-stat-label{letter-spacing:.06em;text-transform:uppercase;color:var(--sp-muted-soft);font-size:.72rem;font-weight:700}.staff-stat-value{font-family:var(--font-heading);color:var(--sp-ink);font-size:1.75rem;font-weight:700;line-height:1.1}.staff-priority-list{gap:.5rem;margin:0;padding:0;list-style:none;display:grid}.staff-priority-item{text-align:left;background:var(--sp-surface-raised);border:1px solid var(--sp-hairline-soft);border-radius:var(--sp-radius-sm);width:100%;color:var(--sp-ink);cursor:pointer;align-items:center;gap:.75rem;padding:.5rem .75rem;font-size:.9rem;display:flex}.staff-priority-item:hover{border-color:var(--sp-primary)}.staff-priority-icon{border-radius:8px;width:28px;height:28px;font-size:.72rem}.staff-priority-text{flex:auto;min-width:0}.staff-priority-action{color:var(--sp-muted);border:1px solid var(--sp-hairline-soft);white-space:nowrap;border-radius:7px;flex-shrink:0;padding:.25rem .5rem;font-size:.72rem;font-weight:700}.staff-priority-item:hover .staff-priority-action{color:var(--sp-primary-soft,var(--sp-primary));border-color:var(--sp-primary)}.staff-stat-card--btn{text-align:left;cursor:pointer;font:inherit;transition:border-color .18s,box-shadow .18s}.staff-stat-card--btn:hover{border-color:var(--sp-primary);background:var(--sp-surface-raised)}.staff-stat-delta{letter-spacing:.01em;align-self:flex-start;align-items:center;gap:.25rem;font-size:.72rem;font-weight:700;display:inline-flex}.staff-stat-delta--good,.staff-stat-delta--bad{border-radius:999px;padding:.125rem .5rem}.staff-stat-delta--good{color:var(--color-success-soft);background:#22c55e24}.staff-stat-delta--bad{color:var(--color-danger-soft);background:#ff5a5a24}.staff-stat-delta--flat{color:var(--sp-muted-soft);font-weight:600}.staff-dash-cols{grid-template-columns:1.4fr 1fr;gap:1rem;margin-top:1.25rem;display:grid}.staff-dash-cols--stretch{align-items:stretch}.staff-dash-cols--stretch>.staff-dash-panel,.staff-dash-cols--stretch>.staff-chart-card,.staff-dash-cols--stretch>.staff-dash-stack{height:100%;min-height:100%}.staff-dash-stack{flex-direction:column;align-self:stretch;gap:1rem;min-width:0;min-height:0;display:flex}.staff-dash-stack>.staff-chart-card,.staff-dash-stack>.staff-dash-panel{flex:none}.staff-dash-ops--solo{grid-template-columns:1fr}.staff-activity-panel--fill{flex-direction:column;flex:1 1 0;min-height:0;display:flex}.staff-activity-panel--fill .staff-dash-panel-title{flex:none}.staff-activity-panel--fill .staff-activity-scroller{flex:1 1 0;min-height:12rem;max-height:none}@media (width<=860px){.staff-dash-cols{grid-template-columns:1fr}.staff-activity-panel--fill .staff-activity-scroller{min-height:0;max-height:22rem}}.staff-dash-v2 .staff-dash-kpi-row{margin-top:.25rem}.staff-overview{border:1px solid var(--sp-hairline);border-radius:var(--sp-radius-md);background:var(--sp-surface-panel,var(--sp-surface-card));margin-top:1.25rem;overflow:hidden}.staff-overview-band{border-top:1px solid var(--sp-hairline-soft);padding:1rem}.staff-overview-band:first-child{border-top:none}.staff-overview-label{letter-spacing:.05em;text-transform:uppercase;color:var(--sp-on-light,var(--sp-ink));margin:0 0 .75rem;font-size:.78rem;font-weight:750}.staff-overview-grid{grid-template-columns:repeat(4,minmax(0,1fr));align-items:stretch;gap:.75rem;display:grid}.staff-overview-grid--4,.staff-overview-grid--5,.staff-overview-grid--3{grid-template-columns:repeat(4,minmax(0,1fr))}.staff-overview .staff-stat-card,.staff-overview .staff-week-chip,.staff-overview .staff-pulse-card{height:100%;min-height:7.25rem;box-shadow:none}.staff-overview .staff-week-chip{min-height:6.5rem}.staff-week-strip{grid-template-columns:repeat(5,minmax(0,1fr));gap:.75rem;margin-top:1rem;display:grid}.staff-week-chip{border:1px solid var(--sp-hairline);border-radius:var(--sp-radius-md);background:var(--sp-surface-card);box-shadow:var(--sp-shadow-card);color:inherit;text-align:left;cursor:pointer;flex-direction:column;align-items:flex-start;gap:.25rem;padding:.75rem 1rem;transition:border-color .15s,background .15s;display:flex}.staff-week-chip:hover{border-color:var(--sp-border-strong,var(--sp-hairline));background:var(--sp-surface-elevated,var(--sp-surface-card))}.staff-week-chip--live{border-color:color-mix(in srgb, var(--color-success-soft,#22c55e) 45%, var(--sp-hairline))}.staff-week-chip-label{letter-spacing:.04em;text-transform:uppercase;color:var(--sp-muted);font-size:.68rem;font-weight:700}.staff-week-chip-value{letter-spacing:-.02em;font-size:1.35rem;font-weight:750;line-height:1.1}.staff-week-chip-sub{color:var(--sp-muted);margin-left:.25rem;font-size:.85rem;font-weight:600}.staff-pulse-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem;margin-top:1rem;display:grid}.staff-pulse-card{border:1px solid var(--sp-hairline);border-radius:var(--sp-radius-md);background:var(--sp-surface-card);box-shadow:var(--sp-shadow-card);color:inherit;text-align:left;cursor:pointer;flex-direction:column;gap:.5rem;padding:1rem;display:flex}.staff-pulse-card:hover{border-color:var(--sp-border-strong,var(--sp-hairline))}.staff-pulse-card-title{letter-spacing:.05em;text-transform:uppercase;color:var(--sp-muted);font-size:.72rem;font-weight:750}.staff-pulse-rows{overscroll-behavior:contain;flex-direction:column;gap:.25rem;max-height:7.5rem;margin:0;padding:0;list-style:none;display:flex;overflow-y:auto}.staff-pulse-rows li{color:var(--sp-muted-soft,var(--sp-muted));justify-content:space-between;align-items:baseline;gap:.75rem;font-size:.88rem;display:flex}.staff-pulse-rows strong{color:var(--sp-text,inherit);font-variant-numeric:tabular-nums;font-size:1rem;font-weight:750}.staff-fill-list{flex-direction:column;gap:.75rem;margin:.25rem 0 0;padding:0;list-style:none;display:flex}.staff-fill-meta{justify-content:space-between;gap:.75rem;margin-bottom:.25rem;font-size:.86rem;display:flex}.staff-fill-name{font-weight:650}.staff-fill-count{font-variant-numeric:tabular-nums;white-space:nowrap}.staff-fill-track{background:var(--sp-surface-muted,color-mix(in srgb, var(--sp-hairline) 65%, transparent));border-radius:999px;height:6px;overflow:hidden}.staff-fill-bar{border-radius:inherit;background:linear-gradient(90deg, color-mix(in srgb, var(--color-gold,#c9a227) 70%, #555), var(--color-gold,#c9a227));height:100%;display:block}.staff-fill-bar--hot{background:linear-gradient(90deg, color-mix(in srgb, var(--color-danger-soft,#ff5a5a) 55%, #555), var(--color-danger-soft,#ff5a5a))}.staff-month-bars{grid-template-columns:repeat(6,minmax(0,1fr));align-items:end;gap:.5rem;min-height:11rem;margin-top:.75rem;display:grid}.staff-month-bar-col{flex-direction:column;align-items:center;gap:.25rem;min-width:0;height:100%;display:flex}.staff-month-bar-amt{font-variant-numeric:tabular-nums;white-space:nowrap;text-overflow:ellipsis;max-width:100%;font-size:.62rem;font-weight:650;overflow:hidden}.staff-month-bar-track{flex:1;align-items:flex-end;width:100%;max-width:2.25rem;min-height:6.5rem;display:flex}.staff-month-bar{background:linear-gradient(180deg, color-mix(in srgb, var(--color-gold,#c9a227) 85%, #fff), color-mix(in srgb, var(--color-gold,#c9a227) 35%, #2a2a2a));border-radius:4px 4px 2px 2px;width:100%;min-height:4px;display:block}.staff-month-bar-label{color:var(--sp-muted);text-transform:uppercase;letter-spacing:.03em;font-size:.7rem;font-weight:700}.staff-year-list{flex-direction:column;gap:.5rem;max-height:18rem;margin:.25rem 0 0;padding:0;list-style:none;display:flex;overflow:auto}.staff-year-row{min-width:0}.staff-finance-links{flex-wrap:wrap;gap:.5rem;display:flex}.staff-dash-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.staff-portal-app .staff-frontdesk-grid{grid-template-columns:minmax(0,1fr);gap:.75rem;display:grid}.staff-portal-app .staff-frontdesk-panel{border:1px solid var(--sp-hairline);border-radius:var(--sp-radius-md);background:var(--sp-surface-card);min-width:0;box-shadow:var(--sp-shadow-card);color:var(--sp-ink);padding:.75rem 1rem}.staff-portal-app .staff-frontdesk-panel-head{min-height:var(--sp-control-h-sm);justify-content:space-between;align-items:center;gap:.75rem;margin-bottom:.25rem;display:flex}.staff-portal-app .staff-frontdesk-title{letter-spacing:.08em;text-transform:uppercase;color:var(--sp-muted-soft);margin:0 0 .5rem;font-size:.72rem;font-weight:700}.staff-portal-app .staff-frontdesk-link{min-height:var(--sp-control-h-sm);font:inherit;color:var(--sp-on-light);cursor:pointer;background:0 0;border:0;padding:.25rem .125rem;font-size:.86rem;font-weight:600}.staff-portal-app .staff-frontdesk-rows,.staff-portal-app .staff-frontdesk-class-list{margin:0;padding:0;list-style:none}.staff-portal-app .staff-frontdesk-class-item{border-top:1px solid var(--sp-hairline-soft);flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.staff-portal-app .staff-frontdesk-class-list>li:first-child.staff-frontdesk-class-item{border-top:0}.staff-portal-app .staff-frontdesk-class-item .staff-frontdesk-class{border-top:0;flex:10rem;min-width:0}.staff-portal-app .staff-frontdesk-class-copy{align-items:center;gap:.75rem;width:100%;min-width:0;display:flex}.staff-portal-app .staff-frontdesk-mark{flex:none;justify-content:center;align-self:center;min-width:44px;min-height:44px;padding-inline:.75rem}.staff-portal-app .staff-frontdesk-row,.staff-portal-app .staff-frontdesk-class{width:100%;min-height:var(--sp-control-h);border:0;border-top:1px solid var(--sp-hairline-soft);font:inherit;text-align:left;color:var(--sp-ink);cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;justify-content:space-between;align-items:center;gap:.75rem;padding:.25rem 0;display:flex}.staff-portal-app .staff-frontdesk-rows>li:first-child .staff-frontdesk-row,.staff-portal-app .staff-frontdesk-class-list>li:first-child .staff-frontdesk-class{border-top:0}.staff-portal-app .staff-frontdesk-row span{color:var(--sp-muted);font-size:.9rem}.staff-portal-app .staff-frontdesk-row strong{font-variant-numeric:tabular-nums;color:var(--sp-ink);font-size:.98rem}.staff-portal-app .staff-frontdesk-class.is-warn .staff-frontdesk-class-meta{color:var(--sp-warn,var(--sp-danger));font-weight:600}.staff-portal-app .staff-frontdesk-class-time{font-variant-numeric:tabular-nums;color:var(--sp-muted);flex:0 0 4.5rem;font-size:.86rem;font-weight:600}.staff-portal-app .staff-frontdesk-class-main{flex-direction:column;flex:auto;gap:.125rem;min-width:0;display:flex}.staff-portal-app .staff-frontdesk-class-main strong{color:var(--sp-ink);white-space:nowrap;text-overflow:ellipsis;font-size:.92rem;font-weight:650;overflow:hidden}.staff-portal-app .staff-frontdesk-class-meta{color:var(--sp-muted);font-size:.78rem}.staff-portal-app .staff-frontdesk-class-seats{font-variant-numeric:tabular-nums;color:var(--sp-muted);flex:none;font-size:.84rem}.staff-portal-app .staff-frontdesk-empty,.staff-portal-app .staff-frontdesk-more{color:var(--sp-muted);margin:.25rem 0 0;font-size:.88rem}.staff-dash-customize-btn{min-height:var(--sp-control-h);flex-shrink:0}.staff-portal-app .sp-saved-views{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.staff-portal-app .sp-act-on-set{border:1px solid var(--sp-hairline);border-radius:var(--sp-radius-md);background:var(--sp-surface-card);box-shadow:var(--sp-shadow-card);color:var(--sp-ink);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem 1rem;margin:0 0 .75rem;padding:.75rem;display:flex}.staff-portal-app .sp-act-on-set-label{color:var(--sp-muted);font-size:.9rem}.staff-portal-app .sp-act-on-set-label strong{color:var(--sp-ink);font-variant-numeric:tabular-nums}.staff-portal-app .sp-act-on-set-actions{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.staff-portal-app .sp-act-on-set-actions .btn,.staff-portal-app .sp-act-on-set-actions .ui-input-dark{min-height:var(--sp-control-h)}.staff-portal-app .sp-select-col{text-align:center;width:2.5rem}@media (width<=960px){.staff-portal-app .staff-frontdesk-grid{grid-template-columns:minmax(0,1fr)}}@media (width<=640px){.staff-portal-app .staff-dash-header{flex-direction:column;align-items:stretch}.staff-portal-app .staff-dash-customize-btn{width:100%;min-height:48px}.staff-portal-app .staff-frontdesk-panel{padding:.75rem .75rem .5rem}.staff-portal-app .staff-frontdesk-title{color:var(--sp-muted);letter-spacing:.06em}.staff-portal-app .staff-frontdesk-row,.staff-portal-app .staff-frontdesk-class,.staff-portal-app .staff-frontdesk-link,.staff-portal-app .staff-frontdesk-mark{min-height:48px}.staff-portal-app .staff-frontdesk-row,.staff-portal-app .staff-frontdesk-class{border-top-color:var(--sp-hairline);border-radius:10px;margin:0 -.25rem;padding:.5rem .25rem;padding-inline:.5rem}.staff-portal-app .staff-frontdesk-rows>li:first-child .staff-frontdesk-row,.staff-portal-app .staff-frontdesk-class-list>li:first-child .staff-frontdesk-class{border-top:0}.staff-portal-app .staff-frontdesk-row:active,.staff-portal-app .staff-frontdesk-class:active{background:var(--sp-surface-raised)}.staff-portal-app .staff-frontdesk-row span{color:var(--sp-body);font-size:.95rem;font-weight:500}.staff-portal-app .staff-frontdesk-row strong{font-size:1.02rem;font-weight:700}.staff-portal-app .staff-frontdesk-class-time,.staff-portal-app .staff-frontdesk-class-meta,.staff-portal-app .staff-frontdesk-class-seats{color:var(--sp-body)}.staff-portal-app .staff-frontdesk-class-main strong{font-size:.98rem}.staff-portal-app .staff-row-card{border-color:var(--sp-hairline);padding:1rem}.staff-portal-app .staff-row-card-title{font-size:1.05rem}.staff-portal-app .staff-row-card-subtitle{color:var(--sp-body);font-size:.9rem}.staff-portal-app .staff-row-card-meta{color:var(--sp-muted);font-size:.84rem}.staff-portal-app .sp-act-on-set{flex-direction:column;align-items:stretch}.staff-portal-app .sp-act-on-set-actions{grid-template-columns:1fr 1fr;gap:.5rem;width:100%;display:grid}.staff-portal-app .sp-act-on-set-actions .btn,.staff-portal-app .sp-act-on-set-actions .ui-input-dark{width:100%;min-height:48px}.staff-portal-app .sp-act-on-set-actions .ui-input-dark{grid-column:1/-1}.staff-portal-app .sp-select-col{width:3rem}.staff-portal-app .sp-select-col input[type=checkbox]{width:1.35rem;height:1.35rem}}.staff-portal-app .staff-dash-customize{border:1px solid var(--sp-hairline);border-radius:var(--sp-radius-md);background:var(--sp-surface-card);width:100%;max-width:none;box-shadow:var(--sp-shadow-card);color:var(--sp-ink);box-sizing:border-box;gap:.5rem;margin:0 0 1rem;padding:.5rem .75rem;display:grid}.staff-dash-customize-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem 1rem;display:flex}.staff-dash-customize-copy{flex-wrap:wrap;align-items:baseline;gap:.25rem .75rem;min-width:0;display:flex}.staff-dash-customize-copy h4{letter-spacing:-.01em;font-size:.95rem;font-weight:650}.staff-dash-customize-head .btn{flex-shrink:0;min-height:2rem;padding:.25rem .75rem}.staff-dash-customize-list{flex-wrap:wrap;align-items:center;gap:.125rem;margin:0;padding:0;list-style:none;display:flex}.staff-dash-customize-item{white-space:nowrap;cursor:pointer;border-radius:999px;align-items:center;gap:.5rem;min-height:1.75rem;padding:.125rem .5rem .125rem .25rem;font-size:.86rem;line-height:1.2;display:inline-flex}.staff-dash-customize-item:hover{background:color-mix(in srgb, var(--sp-primary,var(--color-primary)) 8%, transparent)}.staff-dash-customize-item input{width:.95rem;height:.95rem;accent-color:var(--sp-primary,var(--color-primary));flex-shrink:0;margin:0}@media (width<=960px){.staff-week-strip,.staff-overview-grid--5,.staff-overview-grid--4,.staff-overview-grid--3{grid-template-columns:repeat(2,minmax(0,1fr))}.staff-pulse-grid{grid-template-columns:1fr}}@media (width<=560px){.staff-week-strip,.staff-overview-grid--5,.staff-overview-grid--4,.staff-overview-grid--3{grid-template-columns:1fr}.staff-month-bars{min-height:9rem}}.staff-chart-card{background:var(--sp-surface-card);border:1px solid var(--sp-hairline);border-radius:var(--sp-radius-md);box-shadow:none;padding:.75rem}.staff-chart-legend{color:var(--sp-muted);gap:1rem;font-size:.75rem;font-weight:600;display:flex}.staff-chart-legend>span{align-items:center;gap:.25rem;display:inline-flex}.staff-chart-total-sub{color:var(--sp-muted);font-size:.75rem;font-weight:600}.staff-chart-head{justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:.75rem;display:flex}.staff-chart-total{font-family:var(--font-heading);color:var(--sp-ink);margin-top:.125rem;font-size:1.5rem;font-weight:600}.staff-chart-svg{width:100%;height:150px;display:block}.staff-funnel{gap:.5rem;display:grid}.staff-funnel-row{grid-template-columns:92px 1fr auto;align-items:center;gap:.75rem;font-size:.85rem;display:grid}.staff-funnel-label{color:var(--sp-muted);font-weight:600}.staff-funnel-track{background:var(--sp-surface-raised);border-radius:6px;height:22px;overflow:hidden}.staff-funnel-bar{background:linear-gradient(90deg, var(--sp-primary), var(--sp-primary-active));border-radius:6px;min-width:2px;height:100%;transition:width .3s}.staff-funnel-bar--new{background:linear-gradient(90deg,#a24dff,#d88dff)}.staff-funnel-bar--contacted{background:linear-gradient(90deg,#7d5bd8,#a78bfa)}.staff-funnel-bar--tour_scheduled{background:linear-gradient(90deg,#3b82f6,#58a6ff)}.staff-funnel-bar--enrolled{background:linear-gradient(90deg,#16a34a,#22c55e)}.staff-funnel-count{font-variant-numeric:tabular-nums;color:var(--sp-ink);text-align:right;min-width:1.5rem;font-weight:700}.staff-funnel-foot{border-top:1px solid var(--sp-hairline-soft);color:var(--sp-muted);justify-content:space-between;gap:1rem;margin-top:.75rem;padding-top:.75rem;font-size:.85rem;display:flex}.staff-funnel-foot strong{color:var(--sp-on-light)}.staff-cms-card-body{align-items:flex-start;gap:1.25rem;display:flex}@media (width<=720px){.staff-cms-card-body{flex-direction:column}}.staff-cms-card-body .staff-cms-field-grid{flex:auto;min-width:0}.staff-cms-card-preview{border:1px solid var(--sp-hairline-soft);background:var(--sp-surface-raised);border-radius:12px;flex:0 0 280px;overflow:hidden}.staff-cms-card-preview img{object-fit:contain;width:100%;height:auto;max-height:440px;display:block}.staff-cms-card-preview-empty{height:165px;color:var(--sp-muted-soft);flex-direction:column;justify-content:center;align-items:center;gap:.25rem;font-size:.75rem;display:flex}@media (width<=720px){.staff-cms-card-preview{flex:auto;width:100%}.staff-cms-card-preview img{max-height:540px}.staff-cms-card-preview-empty{height:200px}}.staff-cms-card-preview-empty i{opacity:.7;font-size:1.1rem}.staff-cms-card-preview-empty--error{color:var(--color-danger-soft)}.staff-cms-card-preview-caption{border-top:1px solid var(--sp-hairline-soft);flex-direction:column;gap:.125rem;padding:.5rem .75rem;display:flex}.staff-cms-card-preview-caption strong{color:var(--sp-ink);text-overflow:ellipsis;white-space:nowrap;font-size:.82rem;overflow:hidden}.staff-cms-card-preview-caption span{color:var(--sp-muted);font-size:.72rem}.staff-cms-preview-link{margin-top:.25rem;font-size:.78rem;display:inline-block}.staff-studio{gap:.75rem;display:grid}.staff-studio-layout{grid-template-columns:210px 1fr;align-items:start;gap:1.25rem;display:grid}@media (width<=860px){.staff-studio-layout{grid-template-columns:1fr}}.staff-studio-nav{gap:.25rem;display:grid;position:sticky;top:1rem}@media (width<=860px){.staff-studio-nav{scroll-snap-type:x proximity;scrollbar-width:none;grid-auto-columns:max-content;grid-auto-flow:column;align-items:stretch;gap:.5rem;padding:.25rem 0 .5rem;position:static;overflow-x:auto}.staff-studio-nav::-webkit-scrollbar{display:none}.staff-studio-nav-item{scroll-snap-align:start;min-height:44px}}.staff-studio-nav-item{width:100%;color:var(--sp-muted);text-align:left;white-space:nowrap;cursor:pointer;background:0 0;border:none;border-radius:999px;grid-template-columns:16px minmax(0,1fr);align-items:center;gap:.5rem;padding:.5rem .75rem;font-size:.84rem;font-weight:600;transition:background .15s,color .15s;display:grid}.staff-studio-nav-item i{text-align:center;opacity:.8;width:16px;font-size:.8rem}.staff-studio-nav-item:hover{background:var(--sp-surface-raised);color:var(--sp-ink)}.staff-studio-nav-item.is-active{background:linear-gradient(135deg, var(--sp-primary), var(--sp-primary-active));color:#fff}.staff-studio-content{min-width:0}.staff-portal-app .staff-studio-content .staff-cms{gap:.75rem}.staff-portal-app .staff-studio-content .staff-cms-block{box-shadow:none;border:none;border-bottom:1px solid var(--sp-hairline-soft);background:0 0;border-radius:0;padding:.75rem 0}.staff-portal-app .staff-studio-content .staff-cms-block:last-child{border-bottom:none;padding-bottom:0}.staff-portal-app .staff-studio-content .staff-cms-block-title{margin-bottom:.5rem}.staff-portal-app .staff-studio-content .staff-ops-form-card{box-shadow:none}.staff-attendance{gap:1rem;display:grid}.staff-attendance-header{border-bottom:1px solid var(--sp-hairline-soft);padding-bottom:1rem}.staff-attendance-eyebrow{color:var(--sp-primary-soft);letter-spacing:.09em;text-transform:uppercase;margin-bottom:.25rem;font-size:.72rem;font-weight:800;display:block}.staff-attendance-header h3{color:var(--sp-ink);margin:0;font-size:1.35rem}.staff-attendance-header p{color:var(--sp-muted);margin:.25rem 0 0;font-size:.9rem}.staff-attendance-controls{background:var(--sp-surface-card);border:1px solid var(--sp-hairline);border-radius:var(--sp-radius-md);box-shadow:var(--sp-shadow-card);grid-template-columns:minmax(0,1fr);align-items:end;gap:1rem;padding:1rem;display:grid;overflow:hidden}.staff-attendance-controls>*,.staff-attendance-controls .form-group,.staff-attendance-controls .ui-input-dark{width:100%;min-width:0}.staff-attendance-controls .form-group{margin:0}.staff-attendance-controls--override{grid-template-columns:minmax(0,1fr)}.staff-attendance-lock{border:1px solid color-mix(in srgb, var(--sp-warning) 45%, transparent);border-radius:var(--sp-radius-sm);min-height:44px;color:var(--sp-warning);align-items:center;gap:.5rem;padding:.75rem;font-size:.8rem;font-weight:700;display:flex}.staff-attendance-summary{background:var(--sp-surface-raised);border:1px solid var(--sp-hairline-soft);border-radius:12px;grid-template-columns:minmax(0,1fr);display:grid;overflow:hidden}.staff-attendance-summary>div{text-align:center;justify-content:center;align-items:center;gap:.5rem;min-width:0;padding:.75rem;display:flex}.staff-attendance-summary>div+div{border-left:1px solid var(--sp-hairline-soft)}.staff-attendance-summary span{color:var(--sp-muted);font-size:.75rem;font-weight:700}.staff-attendance-summary strong{color:var(--sp-ink);font-size:1.05rem}.staff-attendance-report{gap:1rem;display:grid}.staff-attendance-report-intro{border:1px solid var(--sp-hairline);border-radius:var(--sp-radius-md);background:var(--sp-surface-card);box-shadow:var(--sp-shadow-card);justify-content:space-between;align-items:end;gap:1rem;padding:1rem;display:flex}.staff-attendance-report-intro h4,.staff-attendance-report-intro p{margin:0}.staff-attendance-report-intro h4{color:var(--sp-ink);font-size:1.1rem}.staff-attendance-report-intro p{color:var(--sp-muted);margin-top:.25rem;font-size:.86rem}.staff-attendance-report-filters{border:1px solid var(--sp-hairline);border-radius:var(--sp-radius-md);background:var(--sp-surface-card);grid-template-columns:minmax(0,1fr);align-items:end;gap:.75rem;padding:1rem;display:grid}.staff-attendance-report-filters .form-group{min-width:0;margin:0}.staff-attendance-report-filters .ui-input-dark{width:100%}.staff-attendance-report-row-filters{flex-wrap:wrap;gap:.75rem;display:flex}.staff-attendance-report-row-filters label{color:var(--sp-muted);flex:0 220px;gap:.25rem;font-size:.76rem;font-weight:700;display:grid}.staff-attendance-report-summary{border:1px solid var(--sp-hairline-soft);background:var(--sp-surface-raised);border-radius:12px;grid-template-columns:minmax(0,1fr);display:grid;overflow:hidden}.staff-attendance-report-summary>div{border-right:1px solid var(--sp-hairline-soft);text-align:center;justify-items:center;gap:.25rem;padding:.75rem .5rem;display:grid}.staff-attendance-report-summary>div:nth-child(4n){border-right:0}.staff-attendance-report-summary>div:nth-child(n+5){border-top:1px solid var(--sp-hairline-soft)}.staff-attendance-report-summary span{color:var(--sp-muted);font-size:.72rem;font-weight:700}.staff-attendance-report-summary strong{color:var(--sp-ink);font-size:1.15rem}@media (width>=1367px){.staff-portal-app .staff-attendance-report-summary>div:nth-child(4n){border-right:1px solid var(--sp-hairline-soft)}.staff-portal-app .staff-attendance-report-summary>div:nth-child(3n){border-right:0}.staff-portal-app .staff-attendance-report-summary>div:nth-child(n+4){border-top:1px solid var(--sp-hairline-soft)}.staff-portal-app .staff-attendance-report-summary>div:last-child:nth-child(3n+1){border-right:0;grid-column:1/-1}}.staff-attendance-report-table table{min-width:900px}.staff-attendance-report-table td{vertical-align:top}.staff-attendance-report-table td strong,.staff-attendance-report-table td small{display:block}.staff-attendance-report-table td small{max-width:260px;color:var(--sp-muted);margin-top:.25rem;line-height:1.35}.staff-attendance-sync{border:1px solid color-mix(in srgb, var(--sp-warning) 45%, var(--sp-hairline));background:color-mix(in srgb, var(--sp-warning) 8%, var(--sp-surface-raised));color:var(--sp-ink);border-radius:12px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:.75rem;padding:.75rem 1rem;display:grid}.staff-attendance-sync>i{color:var(--sp-warning);font-size:1.1rem}.staff-attendance-sync>div{gap:.125rem;min-width:0;display:grid}.staff-attendance-sync strong{font-size:.85rem}.staff-attendance-sync span{color:var(--sp-muted);font-size:.76rem}.staff-attendance-list{gap:.75rem;display:grid}.staff-attendance-empty{border:1px dashed var(--sp-hairline-strong);border-radius:var(--sp-radius-md);color:var(--sp-muted);text-align:center;padding:2rem 1rem}.staff-attendance-state{border:1px dashed var(--sp-hairline-strong);border-radius:var(--sp-radius-md);min-height:9rem;color:var(--sp-muted);text-align:center;justify-items:center;gap:.5rem;padding:1.5rem 1rem;display:grid}.staff-attendance-state>i{color:var(--sp-primary);font-size:1.35rem}.staff-attendance-state strong{color:var(--sp-ink)}.staff-attendance-state--error>i,.staff-attendance-save-error{color:var(--sp-danger)}.staff-attendance-state .btn{min-height:44px;margin-top:.25rem}.staff-attendance-actions{gap:.25rem;width:100%;display:grid}.staff-attendance-statuses{background:var(--sp-surface-raised);border:1px solid var(--sp-hairline-soft);border-radius:11px;grid-template-columns:minmax(0,1fr);gap:.25rem;width:100%;max-width:100%;padding:.25rem;display:grid;position:relative}.staff-attendance-status{min-width:0;min-height:40px;color:var(--sp-muted);font:inherit;cursor:pointer;touch-action:manipulation;background:0 0;border:0;border-radius:8px;justify-content:center;align-items:center;gap:.25rem;padding:.5rem;font-size:.78rem;font-weight:750;transition:color .15s,background .15s,transform .1s;display:inline-flex}.staff-attendance-status:active{transform:scale(.96)}.staff-attendance-status:disabled{cursor:default;opacity:.65}.staff-attendance-status--present.is-active{color:#fff;background:#1b744d}.staff-attendance-status--tardy.is-active{color:#fff;background:#a86f08}.staff-attendance-status--absent.is-active{color:#fff;background:#b9433d}.staff-attendance-saving{border-radius:inherit;background:color-mix(in srgb, var(--sp-surface-panel) 88%, transparent);color:var(--sp-ink);place-items:center;font-size:.8rem;font-weight:700;display:grid;position:absolute;inset:0}.staff-attendance-save-error{text-align:center;font-size:.75rem;font-weight:700}.staff-attendance-pending{color:var(--sp-warning);text-align:center;font-size:.75rem;font-weight:700}.staff-attendance-absence-details{border:1px solid color-mix(in srgb, var(--sp-danger) 28%, var(--sp-hairline));background:color-mix(in srgb, var(--sp-danger) 5%, var(--sp-surface-raised));border-radius:11px;grid-template-columns:minmax(160px,.8fr) minmax(220px,1.2fr);gap:.75rem;padding:.75rem;display:grid}.staff-attendance-absence-details .form-group{min-width:0;margin:0}.staff-attendance-eligibility{color:var(--sp-muted);grid-column:1/-1;font-size:.75rem;font-weight:650}.staff-attendance-current-state{border:1px solid var(--sp-hairline-strong);color:var(--sp-muted);letter-spacing:.04em;text-transform:uppercase;border-radius:999px;align-self:flex-end;padding:.25rem .5rem;font-size:.68rem;font-weight:800}.staff-attendance-current-state--expected{color:var(--sp-warning);border-color:color-mix(in srgb, var(--sp-warning) 45%, transparent);background:color-mix(in srgb, var(--sp-warning) 8%, transparent)}.staff-attendance-current-state--excused{color:var(--sp-success);border-color:color-mix(in srgb, var(--sp-success) 40%, transparent);background:color-mix(in srgb, var(--sp-success) 8%, transparent)}.staff-attendance-current-state--unexcused{color:var(--sp-danger);border-color:color-mix(in srgb, var(--sp-danger) 40%, transparent);background:color-mix(in srgb, var(--sp-danger) 7%, transparent)}.staff-attendance-rules{gap:1rem;display:grid}.staff-attendance-rules-intro{border:1px solid var(--sp-hairline);border-radius:var(--sp-radius-md);background:var(--sp-surface-card);justify-content:space-between;align-items:end;gap:1rem;padding:1rem;display:flex}.staff-attendance-rules-intro h4,.staff-attendance-rules-intro p{margin:0}.staff-attendance-rules-intro p{max-width:38rem;color:var(--sp-muted);font-size:.82rem}.staff-attendance-rules-list{gap:.75rem;display:grid}.staff-attendance-rule{border:1px solid var(--sp-hairline);border-radius:var(--sp-radius-sm);background:var(--sp-surface-card);grid-template-columns:minmax(220px,1.5fr) minmax(150px,.65fr) auto auto auto;align-items:center;gap:1rem;padding:1rem;display:grid}.staff-attendance-rule-copy{gap:.25rem;display:grid}.staff-attendance-rule-copy span,.staff-attendance-rule-copy small{color:var(--sp-muted)}.staff-attendance-rule-copy small{color:var(--sp-warning);font-weight:750}.staff-attendance-rule>label{color:var(--sp-muted);gap:.25rem;font-size:.72rem;font-weight:750;display:grid}.staff-attendance-rule-check{white-space:nowrap;grid-template-columns:auto 1fr;align-items:center}.staff-makeup-actions,.staff-makeup-editor{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.staff-makeup-requests{border:1px solid color-mix(in srgb, var(--sp-primary) 30%, var(--sp-hairline));border-radius:var(--sp-radius-sm);background:color-mix(in srgb, var(--sp-primary) 5%, var(--sp-surface-card));gap:.5rem;margin-bottom:.75rem;padding:.75rem;display:grid}.staff-makeup-requests h4{margin:.125rem 0 0}.staff-makeup-request,.staff-portal-app .staff-attendance-row{padding:.75rem}.staff-makeup-request>div:first-child{gap:.25rem;display:grid}.staff-makeup-request>div:first-child span{color:var(--sp-muted);font-size:.82rem}.staff-makeup-editor{grid-column:1/-1;width:100%}.staff-makeup-editor .ui-input-dark{flex:1;min-width:min(100%,220px)}.staff-makeup-editor--void label{width:100%;color:var(--sp-ink);font-size:.78rem;font-weight:700}.staff-clock-hero{background:var(--sp-surface-card);max-width:none;padding:1rem;position:relative;overflow:hidden}.staff-portal-app .staff-clock-hero{padding:.75rem 1rem}.staff-portal-app .staff-clock-live{margin-bottom:.75rem}.staff-portal-app .staff-clock-live-time{font-size:clamp(1.7rem,3.2vw,2.35rem)}.staff-portal-app .staff-clock-user{margin-bottom:.75rem}.staff-portal-app .staff-clock-btn{min-height:52px}.staff-portal-app .staff-clock-btn-icon{width:34px;height:34px}.staff-portal-app .staff-clock-totals{gap:.5rem;margin-top:.75rem}.staff-portal-app .staff-clock-section{margin-top:.75rem}.staff-clock-live{z-index:1;justify-items:start;margin-bottom:1.25rem;display:grid;position:relative}.staff-clock-live-eyebrow{color:var(--sp-muted);letter-spacing:.08em;text-transform:uppercase;font-size:.72rem;font-weight:700}.staff-clock-live-time{color:var(--sp-ink);font-family:var(--font-heading);letter-spacing:-.03em;margin-top:.125rem;font-size:clamp(1.85rem,5.5vw,2.6rem);font-weight:700;line-height:1}.staff-clock-live-date{color:var(--sp-muted);margin-top:.25rem;font-size:.86rem}.staff-clock-user{z-index:1;align-items:center;gap:1rem;margin-bottom:1rem;display:flex;position:relative}.staff-clock-avatar{object-fit:cover;border:1px solid var(--sp-hairline);border-radius:50%;flex-shrink:0;width:48px;height:48px}.staff-clock-avatar--initials{background:var(--sp-surface-soft,var(--sp-fill-soft,#ffffff0f));color:var(--sp-ink);font-family:var(--font-heading);justify-content:center;align-items:center;font-size:1.05rem;font-weight:700;display:inline-flex}.staff-clock-user-info{text-align:left;flex-direction:column;gap:.125rem;display:flex}.staff-clock-greeting{font-family:var(--font-heading);color:var(--sp-ink);font-size:1.15rem}.staff-clock-status{letter-spacing:.08em;font-size:.82rem;font-weight:800}.staff-clock-status--out{color:var(--color-danger-soft)}.staff-clock-status--in{color:var(--color-success-soft)}.staff-clock-session{z-index:1;color:var(--sp-muted);background:#37cf8a12;border:1px solid #37cf8a2e;border-radius:10px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:.5rem;margin:0 0 .75rem;padding:.75rem;font-size:.82rem;display:grid;position:relative}.staff-clock-session i,.staff-clock-session strong{color:var(--color-success-soft)}.staff-clock-btn{z-index:1;width:100%;min-height:66px;font-family:var(--font-heading);color:#fff;cursor:pointer;border:none;border-radius:12px;justify-content:center;align-items:center;gap:.75rem;padding:.75rem 1rem;transition:filter .15s,transform .1s;display:flex;position:relative}.staff-clock-btn:hover{filter:brightness(1.1)}.staff-clock-btn:active{transform:scale(.99)}.staff-clock-btn:disabled{opacity:.6;cursor:default}.staff-clock-btn--in{background:linear-gradient(135deg, var(--sp-primary), var(--sp-primary-active));box-shadow:0 4px 18px #a24dff59}.staff-clock-btn--out{background:linear-gradient(135deg,#c0392b,#e74c3c);box-shadow:0 4px 18px #e74c3c4d}.staff-clock-btn-icon{background:#ffffff2e;border-radius:50%;flex:none;place-items:center;width:42px;height:42px;display:inline-grid;box-shadow:inset 0 1px #ffffff38}.staff-clock-btn-copy{text-align:left;justify-items:start;gap:.125rem;display:grid}.staff-clock-btn-copy strong{letter-spacing:.03em;font-size:1.05rem;font-weight:800}.staff-clock-btn-copy small{font-family:var(--sp-font);letter-spacing:0;opacity:.78;font-size:.73rem;font-weight:600}.staff-clock-totals{background:var(--sp-surface-raised);border:1px solid var(--sp-hairline-soft);border-radius:12px;grid-template-columns:minmax(0,1fr);gap:.75rem;margin-top:1rem;padding:.75rem 1rem;display:grid}.staff-clock-totals>div{text-align:left;flex-direction:column;gap:.125rem;display:flex}.staff-clock-totals-label{letter-spacing:.06em;text-transform:uppercase;color:var(--sp-muted-soft);font-size:.72rem;font-weight:700}.staff-clock-totals-value{font-family:var(--font-heading);color:var(--sp-ink);font-size:1.3rem;font-weight:700}.staff-clock-section{margin-top:1rem}.staff-clock-shift-list{display:grid}.staff-clock-shift{border-bottom:1px solid var(--sp-hairline-soft);grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.75rem;min-height:44px;padding:.5rem 0;display:grid}.staff-clock-shift:last-child{border-bottom:0}.staff-clock-shift-main{min-width:0;color:var(--sp-ink);font-size:.86rem;line-height:1.35}.staff-clock-shift-hours{color:var(--sp-on-light);white-space:nowrap;font-size:.86rem}.staff-clock-help{color:var(--sp-muted);margin:.75rem 0 0;font-size:.82rem}.staff-portal-app .staff-hours-balance__rows{gap:.75rem;display:grid}.staff-portal-app .staff-hours-balance__meta{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.staff-portal-app .staff-hours-balance__name{font-weight:650}.staff-portal-app .staff-hours-balance__hours{font-variant-numeric:tabular-nums;margin-left:auto}.staff-portal-app .staff-hours-balance__chip{border-radius:999px;align-items:center;min-height:1.35rem;padding:.125rem .5rem;font-size:.7rem;font-weight:700;display:inline-flex}.staff-portal-app .staff-hours-balance__chip--over{background:color-mix(in srgb, var(--color-warning) 18%, transparent);color:var(--color-warning)}.staff-portal-app .staff-hours-balance__chip--under{background:color-mix(in srgb, var(--sp-primary) 16%, transparent);color:var(--color-primary-light)}.staff-portal-app .staff-hours-balance__chip--even{background:color-mix(in srgb, var(--sp-success) 16%, transparent);color:var(--sp-success)}.staff-portal-app .staff-hours-balance__chip--flex,.staff-portal-app .staff-hours-balance__chip--office{background:color-mix(in srgb, var(--sp-muted) 16%, transparent);color:var(--sp-muted)}.staff-portal-app .staff-hours-balance__track{background:color-mix(in srgb, var(--sp-muted) 14%, var(--sp-surface-raised));border-radius:999px;height:.55rem;margin-top:.25rem;position:relative;overflow:hidden}.staff-portal-app .staff-hours-balance__fill{border-radius:999px;height:100%;display:block}.staff-portal-app .staff-hours-balance__fill--over{background:var(--color-warning)}.staff-portal-app .staff-hours-balance__fill--under{background:var(--sp-primary)}.staff-portal-app .staff-hours-balance__fill--even{background:var(--sp-success)}.staff-portal-app .staff-hours-balance__fill--flex,.staff-portal-app .staff-hours-balance__fill--office{background:color-mix(in srgb, var(--sp-muted) 55%, transparent)}.staff-portal-app .staff-hours-balance__mean{background:var(--sp-ink);opacity:.45;width:2px;position:absolute;top:0;bottom:0}.staff-portal-app .staff-hours-balance__toggle{color:var(--sp-muted);align-items:center;gap:.5rem;margin-top:.25rem;font-size:.75rem;display:inline-flex}.staff-family-directory{gap:.75rem;min-width:0;display:grid}.staff-family-directory-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem 1rem;display:flex}.staff-family-directory-toolbar .staff-search-input,.staff-family-directory-toolbar>div{flex:16rem;min-width:0;max-width:28rem}.staff-family-directory-console{width:100%}.staff-family-directory-grid.sp-table-wrap{height:min(70vh,52rem);min-height:min(70vh,52rem);max-height:min(70vh,52rem)}.staff-family-directory-row{cursor:pointer}.staff-family-directory-row:focus-visible{outline:2px solid var(--sp-primary);outline-offset:-2px}.staff-family-directory-col-action{text-align:right;width:7.5rem}.staff-family-directory-open{opacity:0;color:var(--sp-on-light);letter-spacing:.02em;white-space:nowrap;font-size:11.5px;font-weight:600;transition:opacity .14s}.staff-family-directory-row:hover .staff-family-directory-open,.staff-family-directory-row:focus-visible .staff-family-directory-open,.staff-family-directory-row.is-active .staff-family-directory-open{opacity:1}.staff-family-directory-empty{margin:0;padding:1.5rem .25rem}.staff-family-directory-hint{margin:0}.staff-family-mobile-back{display:none}@media (width<=860px){.staff-family-directory-grid.sp-table-wrap{min-height:14rem;max-height:min(65vh,40rem)}.staff-family-directory-open{opacity:.85}.staff-family-mobile-back{justify-self:start;align-items:center;gap:.5rem;min-height:44px;display:inline-flex}}.staff-family-layout{grid-template-columns:280px 1fr;align-items:start;gap:1.25rem;display:grid}.staff-family-list{gap:.25rem;max-height:60vh;padding-right:.25rem;display:grid;overflow-y:auto}.staff-family-list-item{width:100%;color:var(--sp-ink);text-align:left;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:9px;flex-direction:column;align-items:flex-start;gap:.125rem;padding:.5rem .75rem;transition:background .15s,border-color .15s;display:flex}.staff-family-list-item:hover{background:var(--sp-surface-raised)}.staff-family-list-item.is-active{background:var(--sp-surface-raised);border-color:var(--sp-primary)}.staff-family-list-name{font-size:.88rem;font-weight:600}.staff-family-list-sub{font-size:.75rem}.staff-family-profile-col{gap:1rem;min-width:0;display:grid}.staff-family-empty{text-align:center;padding:2.5rem 1.5rem}.staff-family-header{align-items:center;gap:1rem;display:flex}.staff-family-avatar{background:linear-gradient(135deg, var(--sp-primary), var(--sp-primary-active));color:#fff;width:58px;height:58px;font-family:var(--font-heading);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:1.25rem;font-weight:700;display:inline-flex}.staff-family-header-info{gap:.25rem;min-width:0;display:grid}.staff-family-header-top{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.staff-family-name{font-family:var(--font-heading);color:var(--sp-ink);font-size:1.15rem}.staff-family-chip--due{color:var(--sp-danger);border-color:var(--sp-danger)}.staff-family-chip--ok{color:var(--sp-success);border-color:var(--sp-success)}.staff-family-chip--discount{color:var(--sp-primary-soft,var(--sp-primary));border-color:var(--sp-primary)}.staff-family-contact{flex-wrap:wrap;gap:.25rem 1rem;display:flex}.staff-family-contact i{opacity:.75;margin-right:.25rem}.staff-family-stats{grid-template-columns:minmax(0,1fr);gap:.75rem;display:grid}.staff-family-athletes{flex-wrap:wrap;gap:.5rem;display:flex}.staff-family-athlete{border:1px solid var(--sp-hairline-soft);background:var(--sp-surface-raised);color:var(--sp-ink);border-radius:999px;align-items:center;gap:.5rem;padding:.25rem .75rem .25rem .25rem;font-size:.85rem;display:inline-flex}.staff-family-athlete img,.staff-family-athlete-initial{object-fit:cover;border-radius:50%;width:24px;height:24px}.staff-family-athlete-initial{background:var(--sp-hairline-strong);color:var(--sp-on-light);justify-content:center;align-items:center;font-size:.7rem;font-weight:700;display:inline-flex}body.staff-dossier-open{overflow:hidden}.staff-portal-app .staff-dossier-backdrop{z-index:89;-webkit-backdrop-filter:blur(2px);cursor:pointer;background:#08070b85;border:none;margin:0;padding:0;animation:.22s staff-dossier-backdrop-in;position:fixed;inset:0}@keyframes staff-dossier-backdrop-in{0%{opacity:0}to{opacity:1}}.staff-portal-app .staff-dossier{top:var(--testing-banner-h,0px);z-index:90;background:var(--sp-surface-panel,var(--sp-surface-base));width:min(34rem,100vw);color:var(--sp-ink);border-left:1px solid var(--sp-hairline);flex-direction:column;animation:.38s cubic-bezier(.16,1,.3,1) staff-dossier-in;display:flex;position:fixed;bottom:0;right:0;box-shadow:-18px 0 48px #00000061,inset 1px 0 #ffffff0a}@keyframes staff-dossier-in{0%{opacity:.75;transform:translate(28px)}to{opacity:1;transform:translate(0)}}@media (prefers-reduced-motion:reduce){.staff-portal-app .staff-dossier,.staff-portal-app .staff-dossier-backdrop{animation:none}}@media (width<=720px){.staff-portal-app .staff-dossier{border-left:none;width:100vw}}.staff-portal-app .staff-dossier-top{padding:max(.75rem, env(safe-area-inset-top)) 1rem .75rem;background:color-mix(in srgb, var(--sp-surface-panel) 88%, transparent);-webkit-backdrop-filter:blur(18px)saturate(1.25);border-bottom:1px solid var(--sp-hairline-soft);justify-content:space-between;align-items:center;gap:.75rem;display:flex}.staff-portal-app .staff-dossier-back{min-height:44px;color:var(--sp-muted);font:inherit;cursor:pointer;background:0 0;border:none;border-radius:10px;align-items:center;gap:.5rem;padding:.25rem .5rem;font-size:12px;font-weight:600;display:inline-flex}.staff-portal-app .staff-dossier-back:active{transform:scale(.97)}.staff-portal-app .staff-dossier-top-actions{flex-wrap:wrap;justify-content:flex-end;gap:.5rem;display:flex}.staff-portal-app .staff-dossier-hero{border-bottom:1px solid var(--sp-hairline-soft);align-items:center;gap:1rem;padding:1.25rem 1.25rem 1rem;display:flex;position:relative}.staff-portal-app .staff-dossier-avatar{background:var(--sp-surface-raised);border:1px solid var(--sp-hairline);width:64px;height:64px;color:var(--sp-body);font-family:var(--font-heading);border-radius:20px;flex-shrink:0;justify-content:center;align-items:center;font-size:20px;font-weight:700;display:inline-flex}.staff-portal-app .staff-dossier-title{font-family:var(--font-heading);letter-spacing:-.03em;color:var(--sp-ink);margin:0;font-size:28px;font-weight:700;line-height:32px}.staff-portal-app .staff-dossier-sub{color:var(--sp-muted);margin:.25rem 0 0;font-size:14px}.staff-portal-app .staff-dossier-segments{-webkit-overflow-scrolling:touch;scrollbar-width:none;gap:.25rem;padding:.25rem 1rem .75rem;display:flex;overflow-x:auto}.staff-portal-app .staff-dossier-segments::-webkit-scrollbar{display:none}.staff-portal-app .staff-dossier-segment{border:1px solid var(--sp-hairline-soft);background:var(--sp-surface-card);min-height:40px;color:var(--sp-muted);font:inherit;cursor:pointer;border-radius:999px;flex:none;align-items:center;gap:.5rem;padding:.5rem .75rem;font-size:12px;font-weight:600;transition:background .18s,color .18s,border-color .18s;display:inline-flex}.staff-portal-app .staff-dossier-segment.is-active{background:var(--sp-surface-raised);border-color:var(--sp-hairline-strong);color:var(--sp-ink)}.staff-portal-app .staff-dossier-body{overscroll-behavior:contain;min-height:0;padding:0 1rem calc(1.5rem + env(safe-area-inset-bottom));flex:1;overflow-y:auto}.staff-portal-app .staff-dossier-section{gap:1rem;animation:.28s staff-dossier-section-in;display:grid}@keyframes staff-dossier-section-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){.staff-portal-app .staff-dossier-section{animation:none}}.staff-portal-app .staff-dossier-stats{grid-template-columns:minmax(0,1fr);gap:.75rem;display:grid}.staff-portal-app .staff-dossier-stat{background:var(--sp-surface-card);border:1px solid var(--sp-hairline-soft);border-radius:14px;gap:.25rem;padding:1rem;display:grid}.staff-portal-app .staff-dossier-stat.is-warn{border-color:color-mix(in srgb, var(--sp-danger) 45%, transparent)}.staff-portal-app .staff-dossier-stat-label{letter-spacing:.06em;text-transform:uppercase;color:var(--sp-muted-soft);font-size:12px;font-weight:700}.staff-portal-app .staff-dossier-stat strong{font-family:var(--font-heading);color:var(--sp-ink);font-size:28px;line-height:32px}.staff-portal-app .staff-dossier-stat-meta{color:var(--sp-muted);font-size:12px}.staff-portal-app .staff-dossier-group{padding:.125rem 0 .25rem}.staff-portal-app .staff-dossier-group-head{justify-content:space-between;align-items:baseline;gap:.75rem;margin-bottom:.5rem;display:flex}.staff-portal-app h3.staff-dossier-group-title{letter-spacing:.07em;text-transform:uppercase;color:var(--sp-muted);margin:0 0 .5rem;font-size:14px;font-weight:700}.staff-portal-app .staff-dossier-group-head .staff-dossier-group-title{margin-bottom:0}.staff-portal-app .staff-dossier-link-btn{color:var(--sp-muted);font:inherit;cursor:pointer;background:0 0;border:none;padding:.25rem;font-size:12px;font-weight:600}.staff-portal-app .staff-dossier-link-btn:hover{color:var(--sp-ink)}.staff-portal-app .staff-dossier-list{background:var(--sp-surface-card);border:1px solid var(--sp-hairline-soft);border-radius:16px;margin:0;padding:.125rem 0;list-style:none;overflow:hidden}.staff-portal-app .staff-dossier-row{border-top:1px solid var(--sp-hairline-soft);justify-content:space-between;align-items:center;gap:.75rem;min-height:52px;padding:.75rem 1rem;display:flex}.staff-portal-app .staff-dossier-row:first-child{border-top:none}.staff-portal-app .staff-dossier-row>div{gap:.125rem;min-width:0;font-size:14px;display:grid}.staff-portal-app .staff-dossier-row-label{color:var(--sp-muted);min-width:5.5rem;font-size:12px;font-weight:600}.staff-portal-app .staff-dossier-row-meta{color:var(--sp-muted);font-size:12px;display:block}.staff-portal-app .staff-dossier-row a,.staff-portal-app .staff-dossier-row-label+span{color:var(--sp-ink);font-size:14px}.staff-portal-app .staff-dossier-empty,.staff-portal-app .staff-dossier-hint{color:var(--sp-muted);margin:0;font-size:14px;line-height:1.45}.staff-portal-app .staff-dossier-group>.staff-dossier-hint{margin-bottom:.75rem}.staff-portal-app .staff-dossier-empty{padding:1rem}.staff-portal-app li.staff-dossier-empty{list-style:none}.staff-portal-app .staff-dossier-athlete-row{justify-content:flex-start}.staff-portal-app .staff-dossier-athlete-photo,.staff-portal-app .staff-dossier-athlete-initial{object-fit:cover;border-radius:12px;flex-shrink:0;width:36px;height:36px}.staff-portal-app .staff-dossier-athlete-initial{background:var(--sp-surface-raised);color:var(--sp-body);justify-content:center;align-items:center;font-size:12px;font-weight:700;display:inline-flex}.staff-portal-app .staff-dossier-athlete-name{flex:1;min-width:0;font-size:14px;font-weight:600}.staff-portal-app .staff-dossier-actions{flex-wrap:wrap;gap:.5rem;display:flex}.staff-portal-app .staff-dossier-danger{border-color:var(--sp-danger)!important;color:var(--sp-danger)!important}.staff-portal-app .staff-dossier-activity-row{justify-content:flex-start;align-items:flex-start}.staff-portal-app .staff-dossier-activity-dot{background:var(--sp-muted-soft);border-radius:50%;flex-shrink:0;width:9px;height:9px;margin-top:.5rem}.staff-portal-app .staff-dossier-activity-dot--payment{background:var(--sp-success)}.staff-portal-app .staff-dossier-activity-dot--enrollment{background:var(--sp-muted-soft)}.staff-portal-app .staff-dossier-activity-dot--audit{background:var(--sp-warn)}.staff-donut-row{flex-wrap:wrap;align-items:center;gap:1.25rem;display:flex}.staff-donut-svg{flex-shrink:0;width:132px;height:132px}.staff-donut-total{font-family:var(--font-heading);fill:var(--sp-ink);font-size:1rem;font-weight:700}.staff-donut-sub{fill:var(--sp-muted);font-size:.6rem}.staff-donut-legend{flex:200px;gap:.5rem;min-width:0;margin:0;padding:0;list-style:none;display:grid}.staff-donut-legend li{grid-template-columns:auto 1fr auto;align-items:center;gap:.5rem;font-size:.85rem;display:grid}.staff-donut-dot{border-radius:50%;flex-shrink:0;width:10px;height:10px}.staff-donut-name{color:var(--sp-muted);text-overflow:ellipsis;white-space:nowrap;font-weight:600;overflow:hidden}.staff-donut-amt{font-variant-numeric:tabular-nums;color:var(--sp-ink);white-space:nowrap;font-weight:700}.staff-event-list{gap:.25rem;margin:0;padding:0;list-style:none;display:grid}.staff-event-item{border-bottom:1px solid var(--sp-hairline-soft);align-items:center;gap:.75rem;padding:.5rem .25rem;display:flex}.staff-event-item:last-child{border-bottom:none}.staff-event-date{background:var(--sp-surface-raised);border:1px solid var(--sp-hairline-soft);border-radius:10px;flex-direction:column;flex-shrink:0;justify-content:center;align-items:center;width:46px;height:46px;display:flex}.staff-event-month{text-transform:uppercase;letter-spacing:.06em;color:var(--sp-primary-soft,var(--sp-primary));font-size:.6rem;font-weight:700}.staff-event-day{font-family:var(--font-heading);color:var(--sp-ink);font-size:1.05rem;font-weight:700;line-height:1}.staff-event-info{flex-direction:column;gap:.125rem;min-width:0;display:flex}.staff-event-name{color:var(--sp-ink);text-overflow:ellipsis;white-space:nowrap;font-weight:600;overflow:hidden}.staff-event-meta{font-size:.8rem}.staff-activity-scroller{overscroll-behavior:contain;min-height:0;padding-right:.125rem;overflow-y:auto}.staff-activity-list{gap:.125rem;margin:0;padding:0;list-style:none;display:grid}.staff-activity-scroller{overscroll-behavior:contain;max-height:23.2rem;padding-right:.125rem;overflow-y:auto}.staff-activity-panel--fill .staff-activity-scroller{max-height:none}@media (width<=860px){.staff-activity-panel--fill .staff-activity-scroller{max-height:22rem}}.staff-activity-scroller:focus-visible{outline:2px solid color-mix(in srgb, var(--sp-primary) 55%, transparent);outline-offset:2px}.staff-activity-item{border-bottom:1px solid var(--sp-hairline-soft);grid-template-columns:auto 1fr auto;align-items:center;gap:.75rem;padding:.5rem .25rem;font-size:.88rem;display:grid}.staff-activity-item:last-child{border-bottom:none}.staff-activity-icon{border-radius:50%;place-items:center;width:1.9rem;height:1.9rem;font-size:.75rem;display:inline-grid}.staff-activity-icon--payment{color:var(--sp-success);background:#37cf8a1f}.staff-activity-icon--enrollment{color:var(--sp-muted);background:#ffffff0f}.staff-activity-text{color:var(--sp-ink);text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.staff-activity-time{color:var(--sp-muted-soft);white-space:nowrap;font-size:.78rem}.staff-activity-foot{color:var(--sp-muted-soft);flex-wrap:wrap;align-items:baseline;gap:.5rem .75rem;margin:.75rem 0 0;font-size:.78rem;line-height:1.4;display:flex}.staff-activity-history{flex-wrap:wrap;gap:.75rem;margin-left:auto;display:inline-flex}@media (prefers-reduced-motion:reduce){.staff-funnel-bar{transition:none}}.staff-cms-class-list{gap:.75rem;margin-top:1rem;display:grid}.staff-cms-class-card{background:var(--sp-surface-raised);border:1px solid var(--sp-hairline-soft);border-radius:var(--sp-radius-sm);padding:1rem}.staff-cms-class-head{justify-content:space-between;align-items:center;gap:.75rem;margin-bottom:.75rem;display:flex}.staff-cms-class-label{letter-spacing:.05em;text-transform:uppercase;color:var(--sp-muted);font-size:.75rem;font-weight:700}.staff-cms-add-btn{min-height:44px;margin-top:1rem}.staff-cms-add-section{justify-self:start;min-height:44px}.staff-cms-tuition-list{gap:.75rem;display:grid}.staff-cms-tuition-row{grid-template-columns:minmax(0,1fr);align-items:end;gap:.75rem;display:grid}.staff-cms-tuition-field{margin:0}.staff-cms-tuition-remove{grid-column:1/-1;justify-self:start;margin-bottom:.125rem}.staff-cms-notes{border-top:1px solid var(--sp-hairline-soft);margin-top:1.25rem;padding-top:1.25rem}.staff-cms-stack{gap:.75rem;display:grid}.staff-cms-actions--inline{margin-top:1rem}.staff-cms-summary{flex-wrap:wrap;gap:.75rem 1.25rem;margin-bottom:1.25rem;display:flex}.staff-cms-summary-item{font-size:.9rem;font-weight:600}.staff-cms-summary-item--ok{color:var(--sp-success)}.staff-cms-summary-item--warn{color:var(--sp-warn)}.staff-cms-summary-item--error{color:var(--sp-danger)}.staff-cms-page-toggle{width:100%;color:inherit;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;align-items:center;gap:.75rem;padding:0;display:flex}.staff-cms-page-toggle-text{flex:1;min-width:0}.staff-cms-page-toggle-action{color:var(--sp-muted);font-size:.85rem}.staff-cms-page-body{border-top:1px solid var(--sp-hairline-soft);margin-top:1.25rem;padding-top:1.25rem}.staff-cms-status-dot{border-radius:50%;flex-shrink:0;width:.55rem;height:.55rem}.staff-cms-status-dot--ok{background:var(--sp-success)}.staff-cms-status-dot--warn{background:var(--sp-warn)}.staff-cms-status-dot--error{background:var(--sp-danger)}.staff-cms-status-chip,.portal-app .staff-cms-status-chip{border-radius:4px;padding:.25rem .5rem;font-size:.75rem;font-weight:700;line-height:1.2;display:inline-block}.staff-cms-status-chip--ok{color:var(--color-success-soft);background:color-mix(in srgb, var(--color-success) 14%, transparent)}.staff-cms-status-chip--warn{color:var(--color-warning-soft);background:color-mix(in srgb, var(--color-warning) 14%, transparent)}.staff-cms-status-chip--error{color:var(--color-danger-soft);background:color-mix(in srgb, var(--color-danger) 14%, transparent)}.staff-cms-counter{text-transform:none;letter-spacing:0;font-weight:600}.staff-cms-counter--ok{color:var(--sp-success)}.staff-cms-counter--warn{color:var(--sp-warn)}.staff-cms-counter--bad{color:var(--sp-danger)}.staff-cms-issue-list{gap:.25rem;margin:0 0 1rem;padding:0;list-style:none;display:grid}.staff-cms-issue{font-size:.85rem;line-height:1.4}.staff-cms-issue--error{color:var(--sp-danger)}.staff-cms-issue--warn{color:var(--sp-warn)}.staff-cms-issue--ok{color:var(--sp-success)}.staff-cms-google-preview{border-radius:var(--sp-radius-sm);background:#fff;margin-bottom:1rem;padding:.75rem 1rem}.staff-cms-google-preview-title{color:#1a0dab;font-size:1.05rem;line-height:1.2}.staff-cms-google-preview-url{color:#006621;margin-top:.125rem;font-size:.8rem}.staff-cms-google-preview-desc{color:#545454;margin-top:.25rem;font-size:.85rem}.staff-cms-cta-preview-wrap{flex-direction:column;display:flex}.staff-cms-cta-preview{border:1px dashed var(--sp-hairline-soft);border-radius:var(--sp-radius-sm);background:var(--sp-surface-raised);flex-wrap:wrap;justify-content:flex-start;align-items:center;gap:.5rem;min-height:2.75rem;padding:.75rem;display:flex}.staff-cms-cta-color{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.staff-cms-color-swatch{border:1px solid var(--sp-hairline);cursor:pointer;background:0 0;border-radius:8px;flex-shrink:0;width:44px;height:32px;padding:0}.staff-cms-color-swatch::-webkit-color-swatch-wrapper{padding:3px}.staff-cms-color-swatch::-webkit-color-swatch{border:none;border-radius:5px}.staff-cms-color-swatch::-moz-color-swatch{border:none;border-radius:5px}.staff-cms-cta-size{width:100%;accent-color:var(--sp-primary);cursor:pointer}.staff-cms-cta-size-scale{justify-content:space-between;margin-top:.25rem;display:flex}.staff-cms-save-btn{margin-top:.5rem}.staff-cms-help-list{color:var(--sp-muted);margin:.5rem 0 0;padding-left:1.25rem;font-size:.9rem;line-height:1.6}.staff-portal-app .staff-cms .form-group label{letter-spacing:.04em;text-transform:uppercase;color:var(--sp-muted-soft,var(--sp-muted));font-size:.72rem;font-weight:700}.staff-broadcast-history{gap:.5rem;display:grid}.staff-broadcast-history-item{border:1px solid var(--sp-hairline);background:var(--sp-surface-card);border-radius:10px;padding:.5rem .75rem}.staff-broadcast-history-head{justify-content:space-between;align-items:flex-start;gap:.75rem;margin-bottom:.25rem;display:flex}.staff-broadcast-history-head strong{color:var(--sp-ink);font-size:.92rem}.staff-broadcast-history-head span{white-space:nowrap;font-size:.78rem;font-weight:700}.staff-broadcast-history-body{white-space:pre-line;color:var(--sp-muted);margin-top:.25rem!important}.staff-broadcast-picker-toolbar{grid-template-columns:minmax(12rem,1fr) auto;align-items:center;gap:.75rem;display:grid}.staff-broadcast-picker-actions{gap:.5rem;display:flex}.staff-broadcast-picker-list{border:1px solid var(--sp-hairline-soft);border-radius:var(--sp-radius-sm);background:var(--sp-surface-raised)}.staff-broadcast-picker-list .sp-stretch__body{padding:.25rem}.staff-portal-app .sp-stretch{flex-direction:column;min-height:0;display:flex;overflow:hidden}.staff-portal-app .sp-stretch__body{-webkit-overflow-scrolling:touch;flex:auto;min-height:0;overflow-y:auto}.staff-portal-app .sp-stretch__handle{cursor:ns-resize;touch-action:none;user-select:none;border-top:1px solid color-mix(in srgb, var(--sp-hairline-soft) 85%, transparent);background:color-mix(in srgb, var(--sp-surface-card) 70%, transparent);flex:none;justify-content:center;align-items:center;height:16px;display:flex}.staff-portal-app .sp-stretch__handle:hover,.staff-portal-app .sp-stretch__handle:focus-visible{background:color-mix(in srgb, var(--sp-primary) 12%, var(--sp-surface-card));outline:none}.staff-portal-app .sp-stretch__grip{background:var(--sp-muted);border-radius:999px;width:2.25rem;height:3px}.staff-portal-app .staff-cms .form-group .staff-broadcast-recipient{border-radius:calc(var(--sp-radius-sm) - 2px);min-height:2.75rem;color:var(--sp-ink);letter-spacing:normal;text-transform:none;cursor:pointer;grid-template-columns:1.1rem minmax(0,1fr) auto;align-items:center;gap:.75rem;margin:0;padding:.5rem .75rem;font-size:.9rem;font-weight:500;line-height:1.3;display:grid}.staff-broadcast-recipient:hover{background:color-mix(in srgb, var(--sp-primary) 7%, transparent)}.staff-broadcast-recipient+.staff-broadcast-recipient{border-top:1px solid var(--sp-hairline-soft)}.staff-broadcast-recipient.is-disabled{cursor:not-allowed;opacity:.55}.staff-broadcast-recipient.is-disabled:hover{background:0 0}.staff-broadcast-recipient input[type=checkbox]{width:1.1rem;height:1.1rem;accent-color:var(--sp-primary);margin:0;padding:0}.staff-broadcast-recipient-status{white-space:nowrap}.staff-broadcast-picker-summary{min-height:1.25rem;display:block}@media (width<=600px){.staff-broadcast-picker-toolbar{grid-template-columns:minmax(0,1fr)}.staff-broadcast-picker-actions{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.staff-broadcast-picker-actions .btn{width:100%}.staff-portal-app .staff-cms .form-group .staff-broadcast-recipient{grid-template-columns:1.1rem minmax(0,1fr)}.staff-broadcast-recipient-status{white-space:normal;grid-column:2}}.staff-portal-app .portal-soft-action{border-radius:var(--sp-radius-sm);min-height:2.25rem;font:inherit;cursor:pointer;color:var(--sp-ink);background:#ffffff0b;border:0;justify-content:center;align-items:center;gap:.5rem;padding:.5rem .75rem;font-size:.85rem;font-weight:600;transition:background-color .2s,color .2s;display:inline-flex}.staff-portal-app .portal-soft-action--danger{color:var(--sp-danger);background:#c23b321a;box-shadow:inset 0 0 0 1px #c23b3238}.staff-portal-app .portal-soft-action--danger:hover{color:var(--sp-danger);background:#c23b3229}@media (width<=768px){.staff-cms-tuition-row{grid-template-columns:1fr}.staff-cms-tuition-remove{justify-self:start;margin-bottom:0}.staff-cms-actions{width:100%}.staff-cms-actions .btn{flex:1}}.staff-portal-footer p{color:var(--sp-muted);margin:0;font-size:13px}.staff-portal-footer a{text-decoration:underline;color:var(--sp-ink)!important}.staff-sidebar-footer{border-top:1px solid var(--sp-hairline-soft,#ffffff14);margin-top:auto;padding:16px 12px 0}.staff-sidebar-mobile-links{display:none}.staff-signout-btn{width:100%;min-height:44px;font-size:14px;color:var(--sp-ink)!important;border-color:#ffffff29!important}.staff-signout-btn:hover{background:#ffffff0b!important}.staff-portal-app .text-center.dashboard-card.glass{background:var(--sp-canvas);border:1px solid var(--sp-hairline);border-radius:var(--sp-radius-md);color:var(--sp-ink);box-shadow:var(--sp-shadow-card)}html.pwa-standalone,html.pwa-standalone body.staff-portal-app{width:100%;min-height:100%;overflow-x:clip}html.pwa-standalone body.staff-portal-app{background:var(--sp-surface-base);min-height:100dvh;padding-bottom:0}html.pwa-standalone body.staff-portal-app:before{content:"";height:env(safe-area-inset-top,0px);z-index:1200;pointer-events:none;background:var(--sp-surface-base);position:fixed;top:0;left:0;right:0}html.pwa-standalone body.staff-portal-app #page-content,html.pwa-standalone body.staff-portal-app .staff-portal-main,html.pwa-standalone body.staff-portal-app .staff-portal-shell,html.pwa-standalone body.staff-portal-app .staff-portal-layout,html.pwa-standalone body.staff-portal-app .staff-portal-panel,html.pwa-standalone body.staff-portal-app .staff-cms{width:100%;min-width:0;max-width:100%}html.pwa-standalone body.staff-portal-app .staff-portal-main{min-height:100dvh}html.pwa-standalone body.staff-portal-app .staff-portal-footer{display:none}body.staff-portal-app.staff-nav-open{touch-action:none;overflow:hidden}body.staff-portal-app.staff-nav-open .staff-sidebar{overscroll-behavior:contain;touch-action:pan-y}@media (width<=900px){.staff-portal-app .staff-pipeline-board{contain:none;scroll-snap-type:x proximity;display:flex}.staff-portal-app .staff-pipeline-col{scroll-snap-align:start;flex:0 0 min(82vw,280px);min-width:min(82vw,280px)}.staff-portal-app .navbar.staff-portal-navbar,.staff-portal-app .navbar.staff-portal-navbar.scrolled{display:none}.staff-portal-main{padding-top:env(safe-area-inset-top);min-width:0;max-width:100%;overflow-x:clip}.staff-portal-layout{grid-template-columns:1fr}.staff-sidebar{z-index:200;width:100dvw;max-width:none;max-height:min(86dvh,820px);padding:.5rem 14px max(14px, env(safe-area-inset-bottom));overscroll-behavior:contain;visibility:hidden;pointer-events:none;background:linear-gradient(180deg, color-mix(in srgb, var(--sp-primary) 10%, var(--sp-surface-panel)) 0%, color-mix(in srgb, var(--sp-surface-panel) 92%, transparent) 22%, color-mix(in srgb, var(--sp-surface-panel) 88%, transparent) 100%);box-shadow:0 -20px 56px #00000080, 0 -1px 0 color-mix(in srgb, var(--sp-primary) 35%, transparent), inset 0 1px 0 #ffffff1a;-webkit-backdrop-filter:blur(32px)saturate(1.5);border:none;border-radius:28px 28px 0 0;flex-direction:column;transition:transform .42s cubic-bezier(.22,1,.36,1),visibility 0s linear .42s;display:flex;position:fixed;inset:auto 0 0;overflow:hidden;transform:translateY(105%)}.staff-sidebar:after{content:"";background:linear-gradient(90deg, transparent, color-mix(in srgb, var(--sp-primary) 55%, transparent) 22%, #c4a35ab3 50%, color-mix(in srgb, var(--sp-primary) 45%, transparent) 78%, transparent);opacity:.95;pointer-events:none;border-radius:999px;height:2px;display:block;position:absolute;top:0;left:18%;right:18%}.staff-sidebar:before{content:"";background:color-mix(in srgb, var(--sp-muted) 55%, transparent);opacity:1;border-radius:999px;flex:none;width:40px;height:5px;margin:.125rem auto .5rem;display:block;position:static;inset:auto}.staff-sidebar.is-open{visibility:visible;pointer-events:auto;transition-delay:0s;transform:translateY(0)}.staff-sidebar-heading{z-index:2;border-bottom:1px solid var(--sp-hairline-soft);-webkit-backdrop-filter:none;background:0 0;flex:none;margin:0 0 .25rem;padding:.125rem .25rem .75rem;position:relative}.staff-sidebar-eyebrow{color:var(--sp-ink);letter-spacing:.06em;padding-left:.5rem;font-size:.82rem}.staff-sidebar-close{border:1px solid var(--sp-hairline);background:var(--sp-surface-raised);width:44px;height:44px;color:var(--sp-ink);cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent;border-radius:50%;flex:none;place-items:center;font-size:1rem;display:inline-grid}.staff-sidebar-nav{-webkit-overflow-scrolling:touch;overscroll-behavior:contain;flex:auto;min-height:0;padding-bottom:.25rem;overflow-y:auto}.staff-sidebar-footer{background:linear-gradient(180deg, transparent, color-mix(in srgb, var(--sp-surface-panel) 88%, transparent) 28%);flex:none;margin-top:0;padding-top:12px}.staff-nav-list{flex-direction:column;gap:4px;display:flex}.staff-nav-item{-webkit-tap-highlight-color:transparent;border-radius:14px;min-height:48px;padding-block:.75rem;transition:background .16s,color .16s,transform .16s}.staff-nav-item:active{transform:scale(.985)}.staff-nav-backdrop.is-open{z-index:190;-webkit-backdrop-filter:blur(8px)saturate(1.1);background:#140e2094;display:block;position:fixed;inset:0}.staff-portal-shell{padding:16px max(16px, env(safe-area-inset-right)) var(--staff-tab-bar-clearance) max(16px, env(safe-area-inset-left))}html.pwa-standalone body.staff-portal-app .staff-portal-shell{min-height:calc(100dvh - env(safe-area-inset-top));overflow-x:clip}.staff-portal-header{grid-template-columns:minmax(0,1fr);align-items:center;gap:10px;margin-bottom:16px;display:grid}.staff-portal-heading{grid-area:1/1;min-width:0}.staff-portal-eyebrow{display:none}.staff-portal-title{letter-spacing:-.02em;font-size:1.2rem;font-weight:650;line-height:1.15}.staff-cms-header-title,.staff-cms-block-title{letter-spacing:-.02em}.staff-portal-search{flex-basis:auto;grid-area:2/1;width:100%;max-width:none}.staff-portal-search input{min-height:var(--sp-control-h)!important;font-size:var(--sp-control-font)!important;padding-right:1rem!important}.staff-portal-search kbd,.staff-portal-header-actions{display:none}.staff-portal-panel{min-height:0;box-shadow:none;background:0 0;border:0;border-radius:0;padding:0;animation:none}.staff-portal-app .portal-panel-card,.staff-cms-header,.staff-chart-card,.staff-cms-block,.staff-stat-card{border-radius:20px;box-shadow:0 14px 32px #00000038,inset 0 1px #ffffff0b}.staff-portal-app .ui-grid-2{grid-template-columns:minmax(0,1fr)}.staff-portal-app .ui-container,.staff-portal-app .ui-container-sm,.staff-portal-app .ui-container-md,.staff-portal-app .ui-container-lg{width:100%;min-width:0}.staff-portal-app .staff-row-card{padding:.75rem}.staff-portal-app .staff-row-card-main{align-items:flex-start;gap:.75rem}.staff-portal-app .staff-row-card-body{flex-basis:0}.staff-portal-app .staff-row-card-actions{flex:1 0 100%;grid-template-columns:repeat(auto-fit,minmax(88px,1fr));align-items:stretch;width:100%;margin-left:0;display:grid}.staff-portal-app .staff-row-card-actions>*,.staff-portal-app .staff-row-card-actions .btn{width:100%;min-width:0}.staff-attendance-header{border:1px solid var(--sp-hairline);border-radius:var(--sp-radius-md);background:linear-gradient(145deg, var(--sp-surface-card), var(--sp-surface-panel));box-shadow:var(--sp-shadow-card);padding:16px}.staff-attendance-header h3{font-size:1.25rem}.staff-attendance-controls{grid-template-columns:minmax(0,1fr);gap:.75rem;padding:.75rem}.staff-attendance-absence-details{grid-template-columns:minmax(0,1fr)}.staff-attendance-eligibility{grid-column:1}.staff-makeup-editor>.btn,.staff-makeup-editor>.portal-soft-action{flex:120px}.staff-attendance-summary>div{flex-direction:column;gap:.125rem;padding:.75rem .25rem}.staff-attendance-summary{grid-template-columns:minmax(0,1fr)}.staff-attendance-summary>div:nth-child(4){border-left:0;border-top:1px solid var(--sp-hairline-soft)}.staff-attendance-summary>div:nth-child(n+5){border-top:1px solid var(--sp-hairline-soft)}.staff-attendance-summary strong{font-size:1.15rem}.staff-attendance-sync{grid-template-columns:auto minmax(0,1fr)}.staff-attendance-sync .btn{grid-column:1/-1;width:100%}.staff-attendance-rules-intro{flex-direction:column;align-items:start}.staff-attendance-rule{grid-template-columns:minmax(0,1fr)}.staff-attendance-rule-check{grid-template-columns:auto minmax(0,1fr)}.staff-attendance-row .staff-row-card-actions{margin-top:.125rem}.staff-attendance-statuses{grid-template-columns:minmax(0,1fr)}.staff-attendance-status{min-height:46px;padding-inline:.25rem}.staff-clock-hero{border-radius:var(--sp-radius-md,12px);background:var(--sp-surface-card);min-height:0;box-shadow:none;padding:1rem}.staff-clock-live{text-align:center;justify-items:center;margin-bottom:.75rem}.staff-clock-live-time{font-size:clamp(2.4rem,12vw,3.4rem)}.staff-clock-user{border:1px solid var(--sp-hairline-soft);background:var(--sp-surface-soft,#ffffff08);border-radius:10px;justify-content:center;margin-bottom:.75rem;padding:.5rem .75rem}.staff-clock-avatar{width:44px;height:44px}.staff-clock-session{border-radius:10px}.staff-clock-btn{border-radius:12px;min-height:64px}.staff-clock-btn-icon{width:40px;height:40px}.staff-clock-totals{z-index:1;background:var(--sp-surface-soft,#ffffff08);border-radius:10px;margin-top:.75rem;position:relative}.staff-clock-section{border-radius:var(--sp-radius-md,12px)}.staff-clock-shift{min-height:54px}.staff-cms{gap:1rem}.staff-cms-header{background:linear-gradient(145deg, var(--sp-surface-card), var(--sp-surface-panel));border:1px solid var(--sp-hairline);border-radius:var(--sp-radius-md);box-shadow:var(--sp-shadow-card);gap:0;padding:16px}.staff-cms-title{font-size:1.25rem}.staff-cms-lead{font-size:.85rem}.staff-dashboard-grid{grid-template-columns:minmax(0,1fr);gap:.5rem}.staff-stat-card{gap:.25rem;min-height:112px;padding:.75rem}.staff-stat-card--btn,.staff-priority-item{touch-action:manipulation}.staff-stat-card--btn:active,.staff-priority-item:active{transform:scale(.98)}.staff-stat-head{gap:.5rem;margin-bottom:.125rem}.staff-stat-icon{border-radius:8px;width:28px;height:28px;font-size:.75rem}.staff-stat-label{letter-spacing:.04em;font-size:.65rem;line-height:1.25}.staff-stat-value{font-size:1.5rem}.staff-stat-delta{font-size:.65rem;line-height:1.25}.staff-dash-cols{gap:1rem;margin-top:0}.staff-chart-card,.staff-cms-block{padding:1rem}.staff-chart-head{flex-wrap:wrap;gap:.75rem;margin-bottom:.75rem}.staff-chart-total{font-size:1.35rem}.staff-chart-svg{height:120px}.staff-donut-row{justify-content:center}.staff-donut-legend{flex-basis:100%}.staff-event-name,.staff-activity-text{white-space:normal}.staff-activity-item{grid-template-columns:auto minmax(0,1fr);grid-template-areas:"icon text""icon time";gap:.125rem .75rem;padding:.75rem .25rem}.staff-activity-icon{grid-area:icon}.staff-activity-text{grid-area:text;line-height:1.35}.staff-activity-time{grid-area:time}.staff-priority-item{min-height:48px}.staff-mobile-tabbar{z-index:180;width:100%;padding:0;padding-bottom:env(safe-area-inset-bottom);border:none;border-top:1px solid var(--sp-hairline);background:color-mix(in srgb, var(--sp-surface-panel) 90%, transparent);-webkit-backdrop-filter:blur(24px)saturate(1.3);box-shadow:none;border-radius:0;display:block;position:fixed;bottom:0;left:0;right:0}.staff-mobile-tabbar-items{grid-auto-columns:minmax(0,1fr);grid-auto-flow:column;gap:.125rem;min-height:52px;padding:0;display:grid}.staff-mobile-tab{min-width:0;min-height:52px;color:var(--sp-muted);font:inherit;letter-spacing:.01em;cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent;background:0 0;border:0;border-radius:10px;flex-direction:column;justify-content:center;align-items:center;gap:.25rem;padding:.25rem .125rem;font-size:.62rem;font-weight:650;line-height:1;display:flex;position:relative}.staff-mobile-tab i{width:28px;height:28px;color:inherit;border-radius:8px;place-items:center;font-size:.95rem;display:inline-grid}.staff-mobile-tab.is-active{color:var(--sp-ink);background:var(--sp-surface-soft,#ffffff0f)}.staff-mobile-tab.is-active i{color:var(--sp-primary,#a24dff);box-shadow:none;background:0 0;transform:none}.staff-mobile-tab:active{transform:scale(.97)}@media (prefers-reduced-motion:reduce){.staff-mobile-tab{transition:none}}.staff-portal-app{-webkit-overflow-scrolling:touch;overscroll-behavior-y:none;-webkit-tap-highlight-color:transparent;--sp-control-h:48px;--sp-control-h-sm:44px;--sp-control-pad-y:12px;--sp-control-pad-x:16px;--sp-control-font:16px;--sp-panel-pad:16px 16px;--sp-block-pad:16px;--sp-block-gap:12px;--sp-field-gap:12px;--sp-section-gap:16px;--sp-label-gap:4px}.staff-portal-app .btn{min-height:var(--sp-control-h);border-radius:14px;font-weight:600}.staff-portal-app .btn:active{transform:scale(.97)}.staff-sidebar-mobile-links{border-bottom:1px solid var(--sp-hairline-soft);gap:.25rem;margin-bottom:.75rem;padding-bottom:.75rem;display:grid}.staff-sidebar-theme-toggle{border-color:var(--sp-hairline);background:var(--sp-surface-raised);width:100%;min-height:48px;color:var(--sp-ink);border-radius:14px;justify-content:flex-start;margin:0 0 .25rem;padding:.75rem 1rem}.staff-sidebar-theme-toggle .theme-toggle-label{font-family:var(--font-heading);text-transform:none;letter-spacing:-.01em;color:var(--sp-ink);font-size:.95rem;font-weight:600;display:inline}.staff-sidebar-mobile-link{border-radius:var(--sp-radius-sm);min-height:44px;color:var(--sp-ink);grid-template-columns:18px minmax(0,1fr);align-items:center;gap:.75rem;padding:.5rem .75rem;font-size:.86rem;font-weight:600;display:grid}.staff-sidebar-mobile-link i{width:18px;color:var(--sp-muted);text-align:center}.staff-sidebar-mobile-link:active{background:var(--sp-surface-raised)}.staff-portal-footer{display:none}}@media (width>=600px) and (width<=900px){.staff-dashboard-grid{grid-template-columns:minmax(0,1fr)}}.marketing-app{--mk-canvas:#0a0a0a;--mk-ink:var(--color-text);--mk-muted:var(--color-text-muted);--mk-hairline:#a24dff33;--mk-hairline-soft:#ffffff0f;--mk-surface:#0a0a0a;--mk-radius-sm:8px;--mk-radius-md:14px;--mk-shadow-card:0 0 0 1px #a24dff1f, 0 4px 16px #00000073;--mk-shadow-hover:0 0 0 1px #a24dff47, 0 8px 24px #0000008c}.marketing-app h1,.marketing-app h2,.marketing-app h3,.marketing-app h4,.marketing-app h5,.marketing-app h6{text-transform:none;letter-spacing:-.02em;font-weight:600;line-height:1.25}.marketing-app .page-hero-title,.marketing-app .marketing-page-header-title{letter-spacing:-.03em;font-weight:700;line-height:1.1}.marketing-app .hero-title{letter-spacing:-.03em;filter:var(--brand-title-filter);text-shadow:none;font-weight:700;line-height:1.1}.marketing-app .hero-title-gradient-line{background:var(--brand-title-gradient-hero);-webkit-text-fill-color:transparent;color:#0000;background-clip:text;display:block}.marketing-app .page-hero-title,.marketing-app .marketing-page-header-title,.marketing-app .class-section-title{background:var(--brand-title-gradient);-webkit-text-fill-color:transparent;color:#0000;text-shadow:none;filter:var(--brand-title-filter);background-clip:text}.marketing-app .page-hero-title,.marketing-app .marketing-page-header-title{letter-spacing:-.02em;text-transform:none;font-weight:600}.marketing-app .marketing-page-header-title{margin:0 0 .75rem;font-size:clamp(1.75rem,4vw,2.25rem);line-height:1.2}.marketing-app .section-header h2{font-size:clamp(1.75rem,3.5vw,2.25rem);font-weight:600}.marketing-app .class-section-title{text-transform:none;letter-spacing:-.01em;filter:var(--brand-title-filter-soft);font-size:1.35rem;font-weight:600}.marketing-app .program-content h3,.marketing-app .mission-card h3,.marketing-app .class-card h4,.marketing-app .team-card h3,.marketing-app .event-card h3{text-shadow:none;font-weight:600}.marketing-app .btn{border-radius:var(--mk-radius-sm);font-family:var(--font-body);text-transform:none;letter-spacing:0;justify-content:center;align-items:center;min-height:48px;padding:12px 24px;font-size:16px;font-weight:500;transition:transform .22s cubic-bezier(.22,1,.36,1),box-shadow .28s,border-color .22s,color .22s,background-color .22s,background-position .55s cubic-bezier(.22,1,.36,1);display:inline-flex}.marketing-app .btn-primary{color:#fff;background-color:#7d00d8;background-image:linear-gradient(105deg,#0000 38%,#ffffff1a 44%,#e8d5a38c 50%,#fff6 53%,#d88dff47 58%,#0000 66%),linear-gradient(145deg,#d88dff 0%,#b026ff 42%,#7d00d8 100%);background-position:130% 0,0 0;background-repeat:no-repeat;background-size:240% 100%,100% 100%;border:1px solid #ffffff24;box-shadow:0 6px 18px #7d00d859,inset 0 1px #ffffff38}.marketing-app .btn-primary:hover{background-color:#7d00d8;background-position:-45% 0,0 0;transform:translateY(-3px);box-shadow:0 12px 30px #b026ff80,0 0 0 1px #e8d5a359,0 0 24px #b026ff59,inset 0 1px #ffffff59}.marketing-app .btn-primary:focus-visible{background-position:-45% 0,0 0;box-shadow:0 0 0 3px #e8d5a373,0 10px 26px #b026ff73}.marketing-app .btn-primary:active{background-position:40% 0,0 0;transform:translateY(1px)scale(.97);box-shadow:0 2px 10px #5a00a873,inset 0 0 18px #e8d5a347,inset 0 2px 6px #00000040}.marketing-app .btn-secondary{color:var(--color-text);backdrop-filter:none;background-color:#0000;background-image:linear-gradient(105deg,#0000 40%,#e8d5a347 50%,#d88dff38 54%,#0000 64%),linear-gradient(#b026ff0f,#0000 70%);background-position:130% 0,0 0;background-repeat:no-repeat;background-size:240% 100%,100% 100%;border:1px solid #ffffff38;box-shadow:inset 0 1px #ffffff0f}.marketing-app .btn-secondary:hover{color:#fff;background-position:-45% 0,0 0;border-color:#c975d6;transform:translateY(-2px);box-shadow:0 10px 24px #7d00d847,0 0 0 1px #e8d5a347,inset 0 0 20px #b026ff1f}.marketing-app .btn-secondary:focus-visible{border-color:#e8d5a3;box-shadow:0 0 0 3px #b026ff59}.marketing-app .btn-secondary:active{background-position:35% 0,0 0;transform:translateY(1px)scale(.98);box-shadow:inset 0 0 16px #b026ff2e}@media (prefers-reduced-motion:reduce){.marketing-app .btn,.marketing-app .btn-primary,.marketing-app .btn-secondary{transition:background-color .15s,border-color .15s,color .15s,box-shadow .15s}.marketing-app .btn-primary:hover,.marketing-app .btn-primary:focus-visible,.marketing-app .btn-primary:active,.marketing-app .btn-secondary:hover,.marketing-app .btn-secondary:focus-visible,.marketing-app .btn-secondary:active{background-position:0 0,0 0;transform:none}}.marketing-app .nav-links .btn{border-radius:var(--mk-radius-sm);min-height:44px;padding:10px 20px;font-size:14px}.marketing-app .navbar{padding:0 var(--padding-x);min-height:80px}.marketing-app .navbar .nav-container{gap:2rem;width:100%}.marketing-app .logo{flex-shrink:0;max-width:200px;margin-right:.5rem}.marketing-app .nav-links{flex-shrink:0;gap:1.75rem;margin-left:auto}.marketing-app .navbar.scrolled{padding:.75rem var(--padding-x);box-shadow:none;border-bottom:1px solid #a24dff26;-webkit-backdrop-filter:blur(20px)!important;background-color:#0a0a0ae0!important}.marketing-app .logo-img{object-fit:contain;filter:drop-shadow(0 0 10px #a24dff59);width:auto;max-width:100%;height:56px;transition:height var(--transition-base), filter var(--transition-base);animation:none;display:block;transform:none}.marketing-app .logo-img:hover{filter:drop-shadow(0 0 16px #a24dff8c);transform:none}.marketing-app .navbar.scrolled .logo-img{height:44px}.marketing-app .nav-link{font-family:var(--font-body);text-transform:none;letter-spacing:0;font-size:16px;font-weight:600}.marketing-app .nav-link:after{border-radius:1px;height:2px;bottom:-4px}.marketing-app .nav-link:hover{color:var(--sp-on-light)}.marketing-app .dropdown-menu{border-radius:var(--mk-radius-sm);border:1px solid var(--mk-hairline);box-shadow:var(--mk-shadow-card);background:#0a0a0af5;padding:8px 0}.marketing-app .dropdown-menu a{font-family:var(--font-body);text-transform:none;letter-spacing:0;padding:10px 16px;font-size:14px;font-weight:500}.marketing-app .dropdown-menu a:hover,.marketing-app .dropdown-menu a:focus-visible{color:var(--sp-on-light);background:#a24dff14;padding-left:16px}.marketing-app section{padding:4rem 0}.marketing-app .section-header{margin-bottom:2.5rem}.marketing-app .section-subtitle{margin-top:.5rem;font-size:1rem;line-height:1.5}.marketing-app .ethereal-lighting{opacity:.55}.marketing-app .glass,.marketing-app .glass-panel{background:var(--mk-surface);-webkit-backdrop-filter:none;border:1px solid var(--mk-hairline);border-radius:var(--mk-radius-md);box-shadow:var(--mk-shadow-card);padding:28px;transition:box-shadow .2s,border-color .2s}.marketing-app .glass:before,.marketing-app .glass:after{display:none}.marketing-app .glass:hover,.marketing-app .glass-panel:hover{box-shadow:var(--mk-shadow-hover);border-color:#a24dff59;transform:none}.marketing-app .staff-grid{grid-template-columns:repeat(auto-fit,minmax(320px,1fr))}.marketing-app .staff-card{border-radius:var(--mk-radius-sm);padding:0}.marketing-app .staff-card .staff-info{padding:1.25rem}.marketing-app .mission-card:hover{box-shadow:var(--mk-shadow-hover);transform:none}.marketing-app .class-card,.marketing-app .team-card,.marketing-app .event-card,.marketing-app .feature-card{border-radius:var(--mk-radius-md);border:1px solid var(--mk-hairline);background:var(--mk-canvas);box-shadow:var(--mk-shadow-card);transition:box-shadow .2s,border-color .2s}.marketing-app .class-card:hover,.marketing-app .team-card:hover,.marketing-app .event-card:hover,.marketing-app .feature-card:hover{box-shadow:var(--mk-shadow-hover);border-color:#a24dff59;transform:none}.marketing-app .class-card:hover .class-card-img img,.marketing-app .team-card:hover .team-card-img img,.marketing-app .event-card:hover .event-card-img img{transform:scale(1.04)}.marketing-app .program-card{border-radius:var(--mk-radius-md);border:1px solid var(--mk-hairline);box-shadow:var(--mk-shadow-card);transition:box-shadow .2s,border-color .2s}.marketing-app .program-card:hover{box-shadow:var(--mk-shadow-hover);border-color:#a24dff59;transform:none}.marketing-app .tag-chip{border-radius:var(--mk-radius-sm);letter-spacing:0;font-weight:500}.marketing-app .section-eyebrow{border-radius:var(--mk-radius-sm);letter-spacing:.04em;font-size:12px;font-weight:600}.marketing-app .hero-overlay{background:linear-gradient(#0505058c 0%,#05050566 45%,#050505eb 100%)}.marketing-app .hero-subtitle{color:var(--color-text-muted);margin-bottom:2rem;font-size:clamp(1rem,2vw,1.25rem);line-height:1.5}.marketing-app .hero-buttons{flex-wrap:wrap;gap:12px}.marketing-app .page-hero-scrim{background:linear-gradient(#05050540 0%,#05050573 55%,#050505b3 100%)}.marketing-app .page-hero-lead{max-width:640px;font-size:1rem;line-height:1.5}.marketing-app .page-header{background:radial-gradient(ellipse 90% 75% at 50% -8%, #d88dff42 0%, transparent 58%), linear-gradient(180deg, #5a00a81f 0%, #0000001f 45%, var(--color-bg) 100%);padding:8rem 0 3rem}.marketing-app footer{border-top:1px solid var(--mk-hairline-soft);padding:2.5rem var(--padding-x)}.marketing-app .social-btn{border-radius:var(--mk-radius-sm);border:1px solid var(--mk-hairline-soft);width:44px;height:44px;box-shadow:none;background:#ffffff08;font-size:1.25rem}.marketing-app .social-btn:hover{border-color:var(--mk-hairline);box-shadow:var(--mk-shadow-card);transform:none}.marketing-app .contact-form,.marketing-app .faq-item,.marketing-app .pricing-table{border-radius:var(--mk-radius-md);border:1px solid var(--mk-hairline)}.marketing-app .contact-form{padding:clamp(1.5rem,4vw,2.5rem)}.marketing-app input,.marketing-app textarea,.marketing-app select{border-radius:var(--mk-radius-sm);min-height:48px;font-size:16px}.marketing-app input:focus,.marketing-app textarea:focus,.marketing-app select:focus{border-color:var(--sp-primary);outline:none;box-shadow:0 0 0 3px #a24dff26}.marketing-app .elevated-emoji{filter:none;animation:none}.marketing-app .purple-text{background-size:100%;animation:none}@media (width<=900px){.marketing-app .navbar{padding:.75rem var(--padding-x);min-height:72px}.marketing-app .logo-img{height:48px}.marketing-app section{padding:3rem 0}.marketing-app .glass,.marketing-app .glass-panel{padding:20px}.marketing-app .page-hero-title{letter-spacing:-.02em;filter:none;overflow-wrap:break-word;text-wrap:balance;max-width:100%;font-size:clamp(1.65rem,7.2vw,2.75rem);line-height:1.15}.marketing-app .class-section-title{padding:0 .25rem;font-size:clamp(1.1rem,4.2vw,1.35rem)}.marketing-app .program-card{min-height:420px;padding:2.5rem 1.25rem}.marketing-app .program-content{padding:1.25rem}.marketing-app .content-section .container{overflow-x:clip}}body.portal-app{--cp-shadow-card:none}body.portal-app:not(.staff-portal-app){--cp-surface-canvas:#000;--cp-surface-pane:#0b0b0d;--cp-surface-section:#111114;--cp-surface-raised:#161619;--cp-surface-input:var(--cp-surface-pane);--cp-canvas:var(--cp-surface-pane);--cp-ink:var(--color-text);--cp-muted:var(--color-text-muted);--cp-hairline:#ffffff1a;--cp-hairline-soft:#ffffff0f;--cp-fill-soft:#ffffff09;--cp-fill:#ffffff1f;--cp-surface-soft:var(--cp-surface-canvas);--cp-primary:var(--color-primary);--cp-primary-active:var(--color-primary-dark);--cp-primary-disabled:#b026ff59;--cp-radius-sm:8px;--cp-radius-md:14px;--cp-shadow-hover:none;--cp-font:var(--font-body);--cp-control-h:48px;--cp-control-h-sm:40px;--cp-control-pad-y:12px;--cp-control-pad-x:12px;--cp-control-font:16px;--cp-panel-pad:24px;--cp-block-pad:16px;--cp-field-gap:12px;--cp-section-gap:16px;--cp-field-min:280px;background:var(--cp-surface-soft);color:var(--cp-ink);font-family:var(--cp-font)}@media (width>=1367px){body.portal-app:not(.staff-portal-app){--cp-control-h:40px;--cp-control-h-sm:32px;--cp-control-pad-y:8px;--cp-control-pad-x:12px;--cp-control-font:14px;--cp-panel-pad:16px;--cp-block-pad:12px;--cp-field-gap:8px;--cp-section-gap:16px}}body.portal-app:not(.staff-portal-app) .section-title,body.portal-app:not(.staff-portal-app) h1,body.portal-app:not(.staff-portal-app) h2,body.portal-app:not(.staff-portal-app) h3,body.portal-app:not(.staff-portal-app) h4,body.portal-app:not(.staff-portal-app) h5{font-family:var(--cp-font);text-transform:none;letter-spacing:-.02em;font-weight:600;line-height:1.25}body.portal-app:not(.staff-portal-app) .customer-portal-title{font-family:var(--font-heading);color:var(--cp-ink);font-size:28px;font-weight:600;line-height:1.2}body.portal-app:not(.staff-portal-app) .customer-portal-page-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:1rem;margin-bottom:24px;display:flex}body.portal-app:not(.staff-portal-app) .portal-home .customer-portal-page-header{border-bottom:1px solid var(--cp-hairline-soft);margin-bottom:1rem;padding-bottom:.75rem}body.portal-app:not(.staff-portal-app) .portal-brand-eyebrow,body.portal-app:not(.staff-portal-app) .portal-home-eyebrow{font-family:var(--font-heading,Outfit, sans-serif);letter-spacing:.12em;text-transform:uppercase;color:var(--cp-muted,var(--color-text-muted));margin:0 0 .25rem;font-size:.72rem;font-weight:700}body.portal-app:not(.staff-portal-app) .portal-home-tasks{width:100%;margin:0 0 .75rem;padding:0}body.portal-app:not(.staff-portal-app) .portal-home-actions-title{color:var(--cp-muted,var(--color-text-muted));letter-spacing:.1em;text-transform:uppercase;margin:0 0 .5rem;font-size:.72rem;font-weight:700;line-height:1.2}body.portal-app:not(.staff-portal-app) .portal-home-tasks-actions{grid-template-columns:repeat(4,minmax(0,1fr));gap:.75rem;width:100%;display:grid}body.portal-app:not(.staff-portal-app) .portal-home-tasks .portal-home-task-btn{justify-content:center;width:100%;min-height:44px}@media (width<=900px){body.portal-app:not(.staff-portal-app) .portal-home-tasks-actions{grid-template-columns:minmax(0,1fr)}body.portal-app:not(.staff-portal-app) .portal-home-kpis--priority{grid-template-columns:minmax(0,1fr);gap:.75rem;display:grid}body.portal-app:not(.staff-portal-app) .portal-home-kpis .portal-home-kpi--focus{border-color:var(--cp-hairline,#5a00a847);box-shadow:none}}@media (width<=640px){body.portal-app:not(.staff-portal-app) .portal-home-tasks{margin-bottom:1rem}}body.portal-app:not(.staff-portal-app) .portal-home-more{grid-template-columns:minmax(0,1fr);gap:.75rem;width:100%;display:grid}body.portal-app:not(.staff-portal-app) .portal-home-more>*{box-sizing:border-box;width:100%;min-width:0;max-width:100%;margin-bottom:0}body.portal-app:not(.staff-portal-app) .portal-home-more input:not([type=checkbox]):not([type=radio]),body.portal-app:not(.staff-portal-app) .portal-home-more .ui-input-dark{box-sizing:border-box;width:100%;min-width:0;max-width:100%}body.portal-app:not(.staff-portal-app) .portal-home-notifications{margin-top:0}body.portal-app:not(.staff-portal-app) .portal-home-notifications .form-group{min-width:0;margin-bottom:.5rem}body.portal-app:not(.staff-portal-app) .portal-home-notifications .portal-toggle-row{margin-bottom:.5rem}html[data-theme=light] body.portal-app:not(.staff-portal-app) .portal-brand-eyebrow,html[data-theme=light] body.portal-app:not(.staff-portal-app) .portal-home-eyebrow{color:var(--cp-muted,#6b6570)}body.portal-app:not(.staff-portal-app) .ui-text-muted{color:var(--cp-muted)}body.portal-app:not(.staff-portal-app) .ui-border-b{border-bottom:1px solid var(--cp-hairline-soft);padding-bottom:.75rem}body.portal-app:not(.staff-portal-app) .glass,body.portal-app:not(.staff-portal-app) .glass-panel,body.portal-app:not(.staff-portal-app) .dashboard-card.glass,body.portal-app:not(.staff-portal-app) .ui-card-sm,body.portal-app:not(.staff-portal-app) .contact-form.ui-card-sm{background:var(--cp-canvas);-webkit-backdrop-filter:blur(20px);border:1px solid var(--cp-hairline);border-radius:var(--cp-radius-md);color:var(--cp-ink);transition:box-shadow .3s,border-color .3s,transform .3s;box-shadow:0 8px 32px #0009,inset 0 0 10px #b026ff0d}body.portal-app:not(.staff-portal-app) .glass:before,body.portal-app:not(.staff-portal-app) .glass:after{display:none}body.portal-app:not(.staff-portal-app) .glass:hover,body.portal-app:not(.staff-portal-app) .glass-panel:hover,body.portal-app:not(.staff-portal-app) .dashboard-card.glass:hover{border-color:#b026ff59;transform:translateY(-2px);box-shadow:0 12px 40px #000c,inset 0 0 15px #b026ff1a}body.portal-app:not(.staff-portal-app) .btn{border-radius:var(--cp-radius-sm);font-family:var(--cp-font);font-weight:600;font-size:var(--cp-control-font);text-transform:none;letter-spacing:0;min-height:var(--cp-control-h);padding:var(--cp-control-pad-y) 1rem;box-sizing:border-box;justify-content:center;align-items:center;line-height:20px;transition:background-color .2s,border-color .2s,box-shadow .2s,transform .2s cubic-bezier(.175,.885,.32,1.275);display:inline-flex}body.portal-app:not(.staff-portal-app) .btn-primary{color:#fff;background-color:var(--cp-primary,#7d00d8);box-shadow:none;background-image:none;border:1px solid #ffffff24;transition:background-color .2s,border-color .2s}body.portal-app:not(.staff-portal-app) .btn-primary:hover{background-color:var(--color-primary-light);box-shadow:none}body.portal-app:not(.staff-portal-app) .btn-primary:active{background-color:var(--cp-primary-active,#7d00d8);box-shadow:none}body.portal-app:not(.staff-portal-app) .btn-outline,body.portal-app:not(.staff-portal-app) .btn-secondary{color:var(--cp-ink);border:1px solid var(--cp-hairline);backdrop-filter:none;background-color:var(--cp-surface-raised,transparent);box-shadow:none;background-image:none;transition:background-color .2s,border-color .2s,color .2s}body.portal-app:not(.staff-portal-app) .btn-outline:hover,body.portal-app:not(.staff-portal-app) .btn-secondary:hover{color:var(--cp-ink);border-color:var(--cp-hairline);background-color:var(--cp-fill);box-shadow:none}body.portal-app:not(.staff-portal-app) .btn-outline:active,body.portal-app:not(.staff-portal-app) .btn-secondary:active{background-color:var(--cp-fill);box-shadow:none}body.portal-app:not(.staff-portal-app) .btn-primary:disabled{background:var(--cp-primary-disabled);cursor:not-allowed;box-shadow:none;background-image:none;transform:none}@media (prefers-reduced-motion:reduce){body.portal-app:not(.staff-portal-app) .btn-primary,body.portal-app:not(.staff-portal-app) .btn-secondary,body.portal-app:not(.staff-portal-app) .btn-outline{transition:background-color .15s,border-color .15s,color .15s}}body.portal-app:not(.staff-portal-app) .ui-badge-btn{min-height:40px;padding:8px 16px;font-size:14px}body.portal-app:not(.staff-portal-app) .portal-soft-action{min-height:2.25rem;font:inherit;cursor:pointer;border:0;border-radius:8px;justify-content:center;align-items:center;gap:.5rem;padding:.5rem .75rem;font-size:.85rem;font-weight:700;transition:background-color .2s,box-shadow .2s,color .2s;display:inline-flex}body.portal-app:not(.staff-portal-app) .portal-soft-action--danger{color:#ffb1b1;background:#ff47571a;box-shadow:inset 0 0 0 1px #ff475738}body.portal-app:not(.staff-portal-app) .portal-soft-action--danger:hover{color:#ffe1e1;background:#ff475729;box-shadow:inset 0 0 0 1px #ff47575c}body.portal-app:not(.staff-portal-app) .pro-shop-status-banner{border:1px solid var(--cp-hairline-soft);border-radius:var(--cp-radius-sm);background:var(--cp-fill-soft);flex-wrap:wrap;align-items:baseline;gap:.25rem .75rem;padding:.75rem;display:flex}body.portal-app:not(.staff-portal-app) .gift-cert-buy-card{max-width:36rem}body.portal-app:not(.staff-portal-app) .pro-shop-status-banner strong{font-size:.9rem}body.portal-app:not(.staff-portal-app) .pro-shop-status-banner span{font-size:.85rem}body.portal-app:not(.staff-portal-app) .pro-shop-product-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr));align-items:stretch;gap:.75rem}body.portal-app:not(.staff-portal-app) .pro-shop-product-card{border-radius:var(--cp-radius-sm);height:100%;box-shadow:none;flex-direction:column;padding:0;display:flex;overflow:hidden}body.portal-app:not(.staff-portal-app) .pro-shop-product-media{background:var(--cp-surface-pane,var(--cp-surface-section));height:160px;position:relative;overflow:hidden}body.portal-app:not(.staff-portal-app) .pro-shop-product-image{object-fit:cover;width:100%;height:100%;display:block}body.portal-app:not(.staff-portal-app) .pro-shop-product-badge{border:1px solid var(--cp-hairline);border-radius:var(--cp-radius-sm);background:var(--cp-fill);max-width:calc(100% - 16px);color:var(--cp-ink);padding:.25rem .5rem;font-size:.7rem;font-weight:700;line-height:1.2;position:absolute;top:8px;left:8px}body.portal-app:not(.staff-portal-app) .pro-shop-product-body{flex-direction:column;flex-grow:1;gap:.25rem;padding:.75rem 1rem 1rem;display:flex}body.portal-app:not(.staff-portal-app) .pro-shop-product-title{color:var(--cp-ink);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0;font-size:.98rem;font-weight:650;line-height:1.25;display:-webkit-box;overflow:hidden}body.portal-app:not(.staff-portal-app) .pro-shop-cart-close,body.portal-app:not(.staff-portal-app) .pro-shop-qty-btn{background:var(--cp-fill-soft);border:1px solid var(--cp-hairline-soft);color:var(--cp-ink);cursor:pointer}body.portal-app:not(.staff-portal-app) .pro-shop-cart-close{background:0 0;border:none;padding:.125rem;font-size:1.5rem;line-height:1}body.portal-app:not(.staff-portal-app) .pro-shop-qty-btn{border-radius:6px;width:28px;height:28px;font-weight:700}body.portal-app:not(.staff-portal-app) .pro-shop-cart-line{background:var(--cp-fill-soft);border:1px solid var(--cp-hairline-soft);border-radius:var(--cp-radius-sm,8px);padding:.75rem}body.portal-app:not(.staff-portal-app) .pro-shop-cart-line-name,body.portal-app:not(.staff-portal-app) .pro-shop-subtotal{color:var(--cp-ink)}body.portal-app:not(.staff-portal-app) .pro-shop-product-description{color:var(--cp-muted);-webkit-line-clamp:2;-webkit-box-orient:vertical;flex:auto;min-height:2.7em;margin:0;font-size:.8rem;line-height:1.35;display:-webkit-box;overflow:hidden}body.portal-app:not(.staff-portal-app) .pro-shop-product-footer{flex-direction:column;align-items:stretch;gap:.5rem;margin-top:auto;padding-top:.5rem;display:flex}body.portal-app:not(.staff-portal-app) .pro-shop-product-price{color:var(--cp-ink);white-space:nowrap;font-size:1.05rem;font-weight:700;line-height:1}body.portal-app:not(.staff-portal-app) .commerce-add-btn{border-radius:var(--cp-radius-sm);background:var(--cp-primary);color:#fff;width:100%;min-height:34px;box-shadow:none;cursor:pointer;font-family:var(--cp-font);text-transform:none;white-space:nowrap;border:1px solid #0000;flex:none;justify-content:center;align-items:center;gap:.25rem;padding:0 .75rem;font-size:.78rem;font-weight:650;line-height:1;transition:background-color .15s;display:inline-flex}body.portal-app:not(.staff-portal-app) .commerce-add-btn:hover{background:var(--cp-primary-active)}body.portal-app:not(.staff-portal-app) .commerce-add-btn:disabled{opacity:.55;cursor:not-allowed}body.portal-app:not(.staff-portal-app) input:not([type=checkbox]):not([type=radio]),body.portal-app:not(.staff-portal-app) textarea,body.portal-app:not(.staff-portal-app) select,body.portal-app:not(.staff-portal-app) .ui-input-dark{box-sizing:border-box;width:100%;min-width:0;max-width:100%;padding:var(--cp-control-pad-y) var(--cp-control-pad-x);min-height:var(--cp-control-h);border-radius:var(--cp-radius-sm);border:1px solid var(--cp-hairline);background:var(--cp-surface-input,var(--cp-surface-soft));color:var(--cp-ink);font-family:var(--cp-font);font-size:var(--cp-control-font)}body.portal-app:not(.staff-portal-app) input[type=date],body.portal-app:not(.staff-portal-app) input[type=datetime-local],body.portal-app:not(.staff-portal-app) input[type=time],body.portal-app:not(.staff-portal-app) select{height:var(--cp-control-h)}body.portal-app:not(.staff-portal-app) .portal-panel-card{min-width:0;max-width:100%;padding:var(--cp-panel-pad);margin-bottom:var(--cp-section-gap)}body.portal-app:not(.staff-portal-app) .form-group{min-width:0;max-width:100%;margin-bottom:var(--cp-field-gap)}body.portal-app:not(.staff-portal-app) .portal-toggle-input{box-sizing:border-box;appearance:none;border:none;flex:0 0 51px;width:51px;max-width:51px;height:31px;min-height:31px;margin:0;padding:0}body.portal-app:not(.staff-portal-app) .portal-toggle-input:focus{box-shadow:none;border:none}body.portal-app:not(.staff-portal-app) input:not([type=checkbox]):not([type=radio]):focus,body.portal-app:not(.staff-portal-app) textarea:focus,body.portal-app:not(.staff-portal-app) select:focus{border:2px solid var(--cp-primary);outline:none;box-shadow:0 0 0 3px #b026ff26}body.portal-app:not(.staff-portal-app) label{font-size:14px;font-weight:500}body.portal-app:not(.staff-portal-app) .ui-card-sm{background:var(--cp-surface-raised,var(--cp-fill-soft,#ffffff08));border:1px solid var(--cp-hairline-soft);border-radius:var(--cp-radius-sm);padding:var(--cp-block-pad)}body.portal-app:not(.staff-portal-app) .navbar.customer-portal-navbar,body.portal-app:not(.staff-portal-app) .navbar.portal-navbar{min-height:80px;padding:.75rem 2rem!important}body.portal-app:not(.staff-portal-app) .navbar.portal-navbar,body.portal-app:not(.staff-portal-app) .navbar.portal-navbar.scrolled{border-bottom:1px solid var(--cp-hairline,#ffffff1a)!important}body.portal-app:not(.staff-portal-app) .navbar.customer-portal-navbar,body.portal-app:not(.staff-portal-app) .navbar.customer-portal-navbar.scrolled,body.portal-app:not(.staff-portal-app) .navbar.portal-navbar,body.portal-app:not(.staff-portal-app) .navbar.portal-navbar.scrolled{background:var(--cp-surface-canvas,#000)!important;-webkit-backdrop-filter:none!important}body.portal-app:not(.staff-portal-app) .navbar.customer-portal-navbar .logo-img,body.portal-app:not(.staff-portal-app) .navbar.portal-navbar .logo-img{filter:none;animation:none;transform:none;height:48px!important}.customer-portal-topnav{align-items:center;gap:1.5rem;display:flex}.customer-portal-topnav-label{color:var(--cp-ink,var(--color-text));font-size:14px;font-weight:600}.customer-portal-topnav-link{color:var(--cp-muted,var(--color-text-muted));font-size:14px;font-weight:500;text-decoration:none}.customer-portal-topnav-link:hover{color:var(--color-primary-light);text-decoration:underline}body.portal-app:not(.staff-portal-app) .theme-toggle-btn{border-color:var(--cp-hairline);background:var(--cp-surface-pane)}body.portal-app:not(.staff-portal-app) .theme-toggle-btn:hover{border-color:var(--cp-hairline)}.impersonation-banner{z-index:200;color:#ffd980;text-align:center;background:#3d2e00;border-bottom:1px solid #ffb020;flex-wrap:wrap;justify-content:center;align-items:center;gap:1rem;padding:.5rem 1rem;font-size:.9rem;display:flex;position:sticky;top:0}.impersonation-banner[hidden]{display:none}.impersonation-banner .btn{color:#ffd980;border-color:#ffb020;padding:.25rem .75rem;font-size:.8rem}body.has-impersonation-banner .customer-portal-shell{outline-offset:-2px;outline:2px solid #ffb020}.customer-portal-shell{max-width:1280px;margin:0 auto;padding:96px 24px 64px}.customer-portal-layout{background:var(--cp-surface-pane,var(--color-bg-alt));border:1px solid var(--cp-hairline,#ffffff1a);border-radius:var(--cp-radius-md,14px);min-height:calc(100dvh - 160px);box-shadow:var(--cp-shadow-card,none);grid-template-rows:minmax(0,1fr);grid-template-columns:260px minmax(0,1fr);align-items:stretch;gap:0;display:grid}.customer-sidebar{background:var(--cp-surface-pane,#0b0b0d);border:none;border-right:1px solid var(--cp-hairline,#ffffff1a);border-radius:var(--cp-radius-md,14px) 0 0 var(--cp-radius-md,14px);box-sizing:border-box;flex-direction:column;align-self:stretch;height:100%;min-height:100%;padding:20px 16px;display:flex;position:relative;top:auto}.customer-sidebar>nav{flex-direction:column;flex:auto;min-height:0;display:flex;overflow-y:auto}.customer-sidebar-eyebrow{letter-spacing:.04em;text-transform:uppercase;color:var(--cp-muted,var(--color-text-muted));margin:0 0 16px;padding:0 12px;font-size:12px;font-weight:700}.customer-nav-list{flex-direction:column;flex:1;gap:4px;margin:0;padding:0;list-style:none;display:flex}.customer-nav-list>li{width:100%}.customer-nav-item{box-sizing:border-box;border-radius:var(--cp-radius-sm,8px);width:100%;color:var(--cp-muted,var(--color-text-muted));font-family:var(--cp-font,var(--font-body));text-align:left;background:0 0;grid-template-columns:1.25rem minmax(0,1fr);align-items:center;column-gap:10px;padding:10px 12px;font-size:14px;font-weight:500;line-height:1.25;text-decoration:none;transition:background .2s,color .2s,transform .2s cubic-bezier(.175,.885,.32,1.275);display:grid}.customer-nav-item-icon{justify-self:stretch;place-items:center;width:1.25rem;min-width:0;max-width:1.25rem;height:1.25rem;display:grid}.customer-nav-item-icon i{text-align:center;opacity:.85;width:1em;min-width:0;font-size:14px;line-height:1}.customer-nav-item-label{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.customer-nav-item:hover{color:var(--color-primary-light);background:#b026ff14;transform:none}.customer-nav-item.is-active{color:var(--color-primary-light);box-shadow:none;background:#b026ff24;font-weight:600}.customer-nav-item-muted{color:var(--cp-muted,var(--color-text-muted))}.customer-nav-divider{background:var(--cp-hairline-soft,#ffffff0f);height:1px;margin:12px 0;list-style:none}.customer-sidebar-footer{border-top:1px solid var(--cp-hairline-soft,#ffffff0f);margin-top:auto;padding:16px 0 0}html[data-theme=light] body.portal-app:not(.staff-portal-app) .customer-portal-layout{background:var(--cp-surface-pane);border-color:var(--cp-hairline)}html[data-theme=light] body.portal-app:not(.staff-portal-app) .customer-sidebar{background:var(--cp-surface-pane);border-right-color:var(--cp-hairline)}html[data-theme=light] body.portal-app:not(.staff-portal-app) .customer-nav-item,html[data-theme=light] body.portal-app:not(.staff-portal-app) .customer-sidebar-eyebrow{color:var(--cp-muted)}html[data-theme=light] body.portal-app:not(.staff-portal-app) .customer-nav-item.is-active,html[data-theme=light] body.portal-app:not(.staff-portal-app) .customer-nav-item:hover{color:var(--cp-ink)}.customer-signout-btn{width:100%;min-height:44px;font-size:14px}@keyframes portalReveal{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.customer-portal-main{flex:1;align-self:stretch;min-width:0;min-height:0;animation:.4s cubic-bezier(.16,1,.3,1) forwards portalReveal;overflow-x:hidden;padding:24px!important}.portal-load-state{border:1px solid var(--sp-hairline,var(--cp-hairline,#ffffff1f));border-radius:var(--rz-radius-card,18px);background:var(--sp-surface-card,var(--cp-canvas,var(--color-bg-alt,#f7f5fa)));width:min(100%,36rem);min-height:16rem;color:var(--sp-ink,var(--cp-ink,var(--color-text)));text-align:center;justify-items:center;gap:.75rem;margin:clamp(1rem,8vh,5rem) auto;padding:clamp(1.5rem,6vw,3rem);display:grid}.portal-load-state>i{color:var(--sp-accent-soft,var(--color-primary-light));font-size:1.7rem}.portal-load-state h2,.portal-load-state p{margin:0}.portal-load-state p{max-width:30rem;color:var(--sp-muted,var(--cp-muted,var(--color-text-muted)))}html[data-theme=light] .portal-load-state p{color:#554d62}html[data-theme=light] .portal-confirm-sheet,html[data-theme=light] .portal-toast,html[data-theme=light] .portal-more-menu,html[data-theme=light] .portal-drawer,html[data-theme=light] .portal-modal-overlay .portal-waiver-modal-panel,html[data-theme=light] .portal-load-state{background:var(--cp-canvas,var(--sp-surface-panel,#fff));color:var(--cp-ink,var(--sp-ink,#201c2b))}html[data-theme=light] .portal-confirm-title,html[data-theme=light] .portal-more-link{color:var(--cp-ink,var(--sp-ink,#201c2b))}html[data-theme=light] .portal-confirm-message,html[data-theme=light] .portal-more-sheet-title{color:var(--cp-muted,var(--sp-muted,#5f586c))}html[data-theme=light] .portal-more-close{color:var(--cp-ink,var(--sp-ink,#201c2b));border-color:var(--cp-hairline,#3c1e5a33);background:var(--cp-fill-soft,#5a00a80f)}html[data-theme=light] .portal-more-sheet-handle{background:#0000002e}.portal-load-state-actions{flex-wrap:wrap;justify-content:center;gap:.75rem;margin-top:.75rem;display:flex}body.portal-app:not(.staff-portal-app) .ui-container,body.portal-app:not(.staff-portal-app) .ui-container-lg{max-width:100%;margin:0}body.portal-app:not(.staff-portal-app) .customer-portal-main>.ui-container,body.portal-app:not(.staff-portal-app) .customer-portal-main>.ui-container-lg,body.portal-app:not(.staff-portal-app) .customer-portal-main>.parent-billing-page,body.portal-app:not(.staff-portal-app) .customer-portal-main>.parent-classes-page,body.portal-app:not(.staff-portal-app) .customer-portal-main>.parent-athletes-page,body.portal-app:not(.staff-portal-app) .customer-portal-main>.portal-home{padding-top:0;padding-left:0;padding-right:0}@media (width>=1367px){body.portal-app:not(.staff-portal-app) .navbar.customer-portal-navbar,body.portal-app:not(.staff-portal-app) .navbar.customer-portal-navbar.scrolled,body.portal-app:not(.staff-portal-app) .navbar.portal-navbar,body.portal-app:not(.staff-portal-app) .navbar.portal-navbar.scrolled{padding-left:0!important;padding-right:0!important}body.portal-app:not(.staff-portal-app) .navbar.customer-portal-navbar .nav-container,body.portal-app:not(.staff-portal-app) .navbar.customer-portal-navbar.scrolled .nav-container,body.portal-app:not(.staff-portal-app) .navbar.portal-navbar .nav-container,body.portal-app:not(.staff-portal-app) .navbar.portal-navbar.scrolled .nav-container{box-sizing:border-box;padding:0 24px;width:100%!important;max-width:1280px!important;margin:0 auto!important}}body.portal-app:not(.staff-portal-app) .portal-class-card-title{font-size:1.15rem;font-weight:600}body.portal-app:not(.staff-portal-app) .portal-class-card-type{border-radius:var(--cp-radius-sm,8px);letter-spacing:.02em;color:var(--color-primary-light);background:#b026ff1f;font-size:11px;font-weight:600}body.portal-app:not(.staff-portal-app) .ethereal-lighting,body.portal-app:not(.staff-portal-app) footer{display:none}@media (width<=1366px),(height<=500px) and (width<=960px){body.portal-app:not(.staff-portal-app){padding-bottom:var(--portal-tab-bar-clearance)}body.portal-app:not(.staff-portal-app) footer{display:none}body.portal-app:not(.staff-portal-app) .portal-tab-nav{background:color-mix(in srgb, var(--cp-canvas) 88%, transparent);-webkit-backdrop-filter:blur(24px)saturate(1.3);border:none;border-top:1px solid var(--cp-hairline);width:100%;box-shadow:none;z-index:1103;padding:0;padding-bottom:env(safe-area-inset-bottom,0px);color:var(--cp-ink);border-radius:0;justify-content:space-around;align-items:stretch;gap:.125rem;display:flex;position:fixed;bottom:0;left:0;right:0;overflow:hidden}body.portal-app:not(.staff-portal-app) .portal-tab-link{letter-spacing:-.01em;max-width:none;color:var(--cp-muted);border-radius:10px;flex:1;gap:.125rem;min-height:52px;font-size:.62rem;font-weight:650}body.portal-app:not(.staff-portal-app) .portal-tab-link.active{background:var(--cp-fill-soft);color:var(--cp-ink)}body.portal-app:not(.staff-portal-app) .portal-tab-icon{width:20px;height:20px;box-shadow:none;filter:none;color:inherit;background:0 0;border-radius:8px;font-size:1rem}body.portal-app:not(.staff-portal-app) .portal-tab-link.active .portal-tab-icon{color:var(--color-primary);box-shadow:none;filter:none;background:0 0}body.portal-app:not(.staff-portal-app) .portal-more-menu{left:max(8px, env(safe-area-inset-left));right:max(8px, env(safe-area-inset-right));bottom:var(--portal-tab-bar-clearance,calc(52px + env(safe-area-inset-bottom,0px)));background:var(--cp-canvas);border:1px solid var(--cp-hairline);border-radius:18px;width:auto;max-height:min(72vh,560px);padding-bottom:0;animation:.38s cubic-bezier(.16,1,.3,1) portal-sheet-in;overflow:hidden;box-shadow:0 16px 40px #00000024}body.portal-app:not(.staff-portal-app) .portal-more-sheet-footer{padding-bottom:.75rem}@keyframes portal-sheet-in{0%{opacity:.6;transform:translateY(108%)}to{opacity:1;transform:translateY(0)}}.customer-portal-shell{padding:calc(72px + env(safe-area-inset-top)) 16px var(--cp-block-pad,16px)}.customer-portal-layout{min-height:0;max-height:none;box-shadow:none;background:0 0;border:none;border-radius:0;grid-template-rows:auto;grid-template-columns:1fr;overflow:visible}.customer-sidebar{display:none}.customer-portal-main{overscroll-behavior:auto;border-radius:0;overflow:visible;padding:0!important}.customer-portal-title{letter-spacing:-.035em!important;font-size:28px!important;font-weight:700!important;line-height:1.1!important}.customer-portal-page-header{align-items:flex-start;margin-bottom:18px}.portal-page-subtitle{display:none}body.portal-app:not(.staff-portal-app){font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,Segoe UI,Roboto,Inter,sans-serif}body.portal-app:not(.staff-portal-app) .customer-portal-topnav-link,body.portal-app:not(.staff-portal-app) .customer-portal-topnav-label{display:none}body.portal-app:not(.staff-portal-app) .customer-portal-topnav{gap:.25rem;margin-left:auto;display:flex}body.portal-app:not(.staff-portal-app) .portal-brand-eyebrow,body.portal-app:not(.staff-portal-app) .portal-home-eyebrow{display:none}body.portal-app:not(.staff-portal-app) .navbar.customer-portal-navbar,body.portal-app:not(.staff-portal-app) .navbar.portal-navbar{-webkit-backdrop-filter:blur(22px)saturate(1.3);border-bottom:1px solid var(--cp-hairline-soft,#ffffff0f);min-height:56px;padding:max(.5rem, env(safe-area-inset-top)) 1rem .5rem!important;background:color-mix(in srgb, var(--cp-canvas,#050508) 78%, transparent)!important}body.portal-app:not(.staff-portal-app) .navbar.customer-portal-navbar .logo-img,body.portal-app:not(.staff-portal-app) .navbar.portal-navbar .logo-img{height:36px!important}body.portal-app:not(.staff-portal-app) .portal-panel-card{padding:var(--cp-panel-pad);margin-bottom:var(--cp-section-gap)}body.portal-app:not(.staff-portal-app) .btn:active,body.portal-app:not(.staff-portal-app) .portal-bento-card--link:active{transform:scale(.97)}@media (prefers-reduced-motion:reduce){.portal-more-menu,.portal-tab-link,.staff-mobile-tab,.portal-app .btn,.staff-portal-app .btn{transition:none!important;animation:none!important}}body.portal-app:not(.staff-portal-app) .portal-grid-1-2,body.portal-app:not(.staff-portal-app) .portal-grid-1-3,body.portal-app:not(.staff-portal-app) .portal-grid-halves{grid-template-columns:1fr;gap:1rem}.customer-portal-topnav-label{display:none}.customer-portal-topnav{flex-wrap:wrap;justify-content:flex-end;gap:.75rem}}body.portal-app:not(.staff-portal-app)[data-customer-chrome=phone] .customer-sidebar,body.portal-app:not(.staff-portal-app)[data-customer-chrome=tablet] .customer-sidebar{display:none}body.portal-app:not(.staff-portal-app)[data-customer-chrome=phone] .customer-portal-layout,body.portal-app:not(.staff-portal-app)[data-customer-chrome=tablet] .customer-portal-layout{min-height:0;max-height:none;box-shadow:none;background:0 0;border:none;border-radius:0;grid-template-rows:auto;grid-template-columns:1fr;overflow:visible}body.portal-app:not(.staff-portal-app)[data-customer-chrome=phone] .portal-tab-nav,body.portal-app:not(.staff-portal-app)[data-customer-chrome=tablet] .portal-tab-nav{display:flex!important}body.portal-app:not(.staff-portal-app)[data-customer-chrome=desktop] .portal-tab-nav,body.portal-app:not(.staff-portal-app)[data-customer-chrome=desktop] .portal-more-menu,body.portal-app:not(.staff-portal-app)[data-customer-chrome=desktop] .portal-more-backdrop{display:none!important}@media (width<=1366px) and (display-mode:standalone),(height<=500px) and (width<=960px) and (display-mode:standalone){body.portal-app:not(.staff-portal-app) .navbar.customer-portal-navbar,body.portal-app:not(.staff-portal-app) .navbar.portal-navbar{min-height:0;padding:max(.25rem, env(safe-area-inset-top)) 1rem .25rem!important}body.portal-app:not(.staff-portal-app) .navbar.customer-portal-navbar .logo-img,body.portal-app:not(.staff-portal-app) .navbar.portal-navbar .logo-img{height:30px!important}.customer-portal-shell{padding-top:calc(52px + env(safe-area-inset-top))}}body.portal-app:not(.staff-portal-app) .portal-panel-card,body.portal-app:not(.staff-portal-app) .portal-home,body.portal-app:not(.staff-portal-app) .portal-home-tasks,body.portal-app:not(.staff-portal-app) .parent-billing-page,body.portal-app:not(.staff-portal-app) .parent-athletes-page,body.portal-app:not(.staff-portal-app) .parent-classes-page,body.portal-app:not(.staff-portal-app) .parent-athlete-profile,body.portal-app:not(.staff-portal-app) .family-skills-page,body.portal-app:not(.staff-portal-app) .gift-cert-buy-card,body.portal-app:not(.staff-portal-app) .contact-form,body.portal-app:not(.staff-portal-app) .customer-portal-main{container-type:inline-size}body.portal-app:not(.staff-portal-app) .ui-grid-2,body.portal-app:not(.staff-portal-app) .customer-fill-grid,body.portal-app:not(.staff-portal-app) .portal-bento-grid,body.portal-app:not(.staff-portal-app) .portal-home-kpis,body.portal-app:not(.staff-portal-app) .portal-home-tasks-actions,body.portal-app:not(.staff-portal-app) .parent-athlete-stats,body.portal-app:not(.staff-portal-app) .parent-athlete-billing-values,body.portal-app:not(.staff-portal-app) .parent-billing-top-grid,body.portal-app:not(.staff-portal-app) .portal-grid-halves,body.portal-app:not(.staff-portal-app) .portal-grid-1-2,body.portal-app:not(.staff-portal-app) .portal-grid-1-3,body.portal-app:not(.staff-portal-app) .portal-form-row,body.portal-app:not(.staff-portal-app) .pro-shop-product-grid,body.portal-app:not(.staff-portal-app) .family-skills-overview{box-sizing:border-box;gap:var(--cp-field-gap);grid-template-columns:minmax(0,1fr);width:100%;max-width:100%;display:grid}body.portal-app:not(.staff-portal-app) .form-group{gap:var(--cp-field-gap);display:grid}body.portal-app:not(.staff-portal-app) .ui-grid-2>.form-group--span-2,body.portal-app:not(.staff-portal-app) .customer-fill-grid>.form-group--span-2,body.portal-app:not(.staff-portal-app) .portal-form-row>.form-group--span-2,body.portal-app:not(.staff-portal-app) .contact-form>.btn,body.portal-app:not(.staff-portal-app) .gift-cert-buy-card .btn{grid-column:1/-1}@container (width>=574px){body.portal-app:not(.staff-portal-app) .ui-grid-2,body.portal-app:not(.staff-portal-app) .customer-fill-grid:not(.customer-fill-grid--3),body.portal-app:not(.staff-portal-app) .portal-bento-grid,body.portal-app:not(.staff-portal-app) .portal-home-kpis,body.portal-app:not(.staff-portal-app) .portal-home-tasks-actions,body.portal-app:not(.staff-portal-app) .parent-athlete-stats,body.portal-app:not(.staff-portal-app) .parent-athlete-billing-values,body.portal-app:not(.staff-portal-app) .parent-billing-top-grid,body.portal-app:not(.staff-portal-app) .portal-grid-halves,body.portal-app:not(.staff-portal-app) .portal-grid-1-2,body.portal-app:not(.staff-portal-app) .portal-grid-1-3,body.portal-app:not(.staff-portal-app) .portal-form-row,body.portal-app:not(.staff-portal-app) .pro-shop-product-grid{grid-template-columns:1fr 1fr}}@media (width>=1367px){@container (width>=868px){body.portal-app:not(.staff-portal-app) .customer-fill-grid--3,body.portal-app:not(.staff-portal-app) .family-skills-overview,body.portal-app:not(.staff-portal-app) .pro-shop-product-grid{grid-template-columns:1fr 1fr 1fr}}}@media (width>=768px) and (width<=1366px){body.portal-app:not(.staff-portal-app){--cp-control-h:44px}}@keyframes rebelPulseIn{0%{opacity:0;transform:translateY(8px)scale(.985)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes rebelEnergyTrace{0%{opacity:0;transform:translate(-110%)}30%{opacity:.75}to{opacity:0;transform:translate(210%)}}.skill-status-icon{background:color-mix(in srgb, currentColor 10%, transparent);width:2.25rem;height:2.25rem;color:var(--color-text-muted);border:1px solid;border-radius:50%;flex:none;place-items:center;display:inline-grid}.skill-status-icon--learning{color:var(--rz-violet-readable)}.skill-status-icon--developing{color:var(--color-info)}.skill-status-icon--consistent{color:var(--rz-success)}.skill-status-icon--mastered{color:var(--rz-competition-gold);box-shadow:0 0 0 3px color-mix(in srgb, var(--rz-competition-gold) 12%, transparent)}.skill-status-icon--not-assessed{color:var(--color-text-muted)}.staff-portal-app .skills-curriculum,.staff-portal-app .staff-skills-progress,.staff-portal-app .staff-roster-skills{min-width:0;color:var(--sp-ink)}.staff-portal-app .skills-curriculum h3,.staff-portal-app .skills-curriculum h4,.staff-portal-app .skills-curriculum h5,.staff-portal-app .staff-skills-progress h4{text-transform:none;letter-spacing:-.02em}.skills-curriculum-hero{justify-content:space-between;align-items:center;gap:var(--rz-space-6);border:1px solid var(--sp-hairline);border-radius:var(--rz-radius-feature);background:linear-gradient(108deg, #a24dff1f, transparent 42%), var(--sp-surface-panel);min-height:12rem;box-shadow:var(--sp-shadow-card);isolation:isolate;padding:clamp(1.5rem,3vw,2.5rem);display:flex;position:relative;overflow:hidden}.skills-curriculum-hero:after{content:"";z-index:-1;background:linear-gradient(90deg,#0000,#a24dff2e,#0000);width:34%;position:absolute;inset:-80% -12% -80% auto;transform:rotate(19deg)}.skills-curriculum-kicker,.curriculum-track-intro>div>span,.curriculum-level-card>header>div>span,.curriculum-category-head span,.curriculum-editor-head span,.curriculum-assignment-intro span,.curriculum-assignment-level-head span,.skill-report-panel>header>span,.staff-roster-skills-intro>div>span,.staff-skill-editor-head span,.staff-skill-level-head span{color:var(--sp-on-light);letter-spacing:.12em;text-transform:uppercase;font-size:.72rem;font-weight:750;line-height:1.2;display:block}.skills-curriculum-hero h3{margin:var(--rz-space-2) 0 var(--rz-space-3);font-size:clamp(1.8rem,4vw,3rem)}.skills-curriculum-hero p{max-width:42rem;color:var(--sp-body);margin:0;line-height:1.55}.skills-curriculum-mark{aspect-ratio:1;width:clamp(5rem,12vw,8rem);color:var(--sp-on-light);clip-path:polygon(19% 0,100% 0,81% 100%,0 100%);background:var(--sp-surface-raised);border:1px solid var(--sp-hairline-strong);flex:none;place-items:center;font-size:clamp(2rem,6vw,4rem);display:grid}.staff-skills-summary-strip{border:1px solid var(--sp-hairline);background:var(--sp-surface-card);color:var(--sp-muted);border-radius:10px;flex-wrap:wrap;gap:.25rem 1rem;margin:0 0 .75rem;padding:.5rem .75rem;font-size:.78rem;font-weight:650;display:flex}.staff-skills-summary-strip strong{color:var(--sp-ink);margin-left:.25rem;font-size:.95rem}.skills-curriculum-metrics,.staff-skills-summary,.skill-report-metrics{gap:var(--rz-space-3);display:grid}.skills-curriculum-metrics{margin:var(--rz-space-4) 0;grid-template-columns:repeat(3,minmax(0,1fr))}.skills-curriculum-metrics>div,.staff-skills-summary>div,.skill-report-metrics>div{border:1px solid var(--sp-hairline);background:var(--sp-surface-card);border-radius:10px;min-width:0;padding:.75rem}.skills-curriculum-metrics span,.staff-skills-summary span,.skill-report-metrics span{color:var(--sp-muted);font-size:.78rem;display:block}.skills-curriculum-metrics strong,.staff-skills-summary strong,.skill-report-metrics strong{margin-top:var(--rz-space-1);font-family:var(--font-heading);font-size:clamp(1.35rem,3vw,2rem);line-height:1;display:block}.skills-workspace-tabs,.staff-attendance-mode{gap:var(--rz-space-2);padding:var(--rz-space-2);border:1px solid var(--sp-hairline);border-radius:var(--rz-radius-card);background:color-mix(in srgb, var(--sp-surface-panel) 78%, transparent);-webkit-backdrop-filter:blur(18px)saturate(125%);box-shadow:var(--sp-top-highlight);display:grid}.skills-workspace-tabs{margin-bottom:var(--rz-space-5);grid-template-columns:repeat(3,minmax(0,1fr))}.skills-workspace-tabs button,.staff-attendance-mode button{min-width:0;min-height:var(--rz-tap-min);border-radius:var(--rz-radius-control);color:var(--sp-muted);font:inherit;cursor:pointer;transition:color var(--rz-pulse-fast) ease, background var(--rz-pulse-response) ease, transform var(--rz-pulse-spring);background:0 0;border:1px solid #0000;font-weight:700;position:relative;overflow:hidden}.skills-workspace-tabs button{justify-content:center;align-items:center;gap:var(--rz-space-2);display:flex}.skills-workspace-tabs button:active,.staff-attendance-mode button:active,.staff-skill-rating-options button:active{transform:scale(.975)}.skills-workspace-tabs button.is-active,.staff-attendance-mode button.is-active{color:var(--sp-ink);border-color:var(--sp-hairline-strong);background:var(--sp-surface-raised)}.skills-workspace-tabs button.is-active:after,.staff-attendance-mode button.is-active:after{content:"";background:var(--sp-primary);height:2px;box-shadow:0 0 10px var(--rz-pulse-trace);position:absolute;bottom:0;left:10%;right:10%;transform:skew(-28deg)}.curriculum-builder,.curriculum-assignments,.skill-reports,.curriculum-level-card,.curriculum-category,.skill-report-panel,.staff-skills-progress,.staff-skill-level,.family-skills-level{padding:0}.curriculum-builder,.curriculum-assignments,.skill-reports{animation:rebelPulseIn var(--rz-pulse-settle) both}.curriculum-toolbar,.curriculum-toolbar-actions,.curriculum-track-intro,.curriculum-level-card>header,.curriculum-category-head,.curriculum-skill,.curriculum-skill-actions,.curriculum-editor-head,.curriculum-assignment-level-head,.staff-roster-skills-intro,.staff-skill-editor-head,.staff-skill-level-head,.family-skill-row-title{align-items:center;display:flex}.curriculum-toolbar,.curriculum-track-intro,.curriculum-level-card>header,.curriculum-category-head,.curriculum-skill,.curriculum-editor-head,.curriculum-assignment-level-head,.staff-skill-editor-head,.staff-skill-level-head,.family-skill-row-title{justify-content:space-between}.curriculum-toolbar{gap:var(--rz-space-4);margin-bottom:var(--rz-space-4)}.curriculum-toolbar-actions{gap:var(--rz-space-2);min-width:min(100%,28rem)}.curriculum-toolbar-actions .staff-search-input{flex:1}.portal-segmented-scroll.curriculum-track-picker,.portal-segmented-scroll.staff-skills-tracks{gap:var(--rz-space-2);max-width:100%;padding:var(--rz-space-1);scrollbar-width:none;display:flex;overflow-x:auto}.portal-segmented-scroll.curriculum-track-picker::-webkit-scrollbar{display:none}.portal-segmented-scroll.staff-skills-tracks::-webkit-scrollbar{display:none}.portal-segmented-scroll.curriculum-track-picker button,.portal-segmented-scroll.staff-skills-tracks button{min-height:var(--rz-tap-min);padding:0 var(--rz-space-4);border:1px solid var(--sp-hairline);border-radius:var(--rz-radius-pill);background:var(--sp-surface-card);color:var(--sp-muted);font:inherit;cursor:pointer;flex:none;font-weight:700}.portal-segmented-scroll.curriculum-track-picker button.is-active,.portal-segmented-scroll.staff-skills-tracks button.is-active{border-color:var(--sp-primary);color:var(--sp-ink);box-shadow:inset 0 0 0 1px #a24dff3d}.curriculum-track-intro,.curriculum-assignment-intro,.curriculum-assignment-form,.curriculum-editor{margin-bottom:var(--rz-space-4);border:1px solid var(--sp-hairline);border-radius:var(--rz-radius-card);background:var(--sp-surface-card);padding:clamp(1rem,2.5vw,1.5rem)}.curriculum-track-intro{gap:var(--rz-space-4)}.curriculum-track-intro h4,.curriculum-level-card h4,.curriculum-assignment-intro h4,.staff-roster-skills-intro h4,.staff-skill-level-head h4{margin:var(--rz-space-1) 0}.curriculum-track-intro p,.curriculum-level-card p,.curriculum-assignment-intro p,.staff-roster-skills-intro p{color:var(--sp-muted);margin:0}.curriculum-editor{gap:var(--rz-space-4);border-color:var(--sp-hairline-strong);background:linear-gradient(118deg, #a24dff12, transparent 38%), var(--sp-surface-raised);animation:rebelPulseIn var(--rz-pulse-spring) both;grid-template-columns:minmax(0,1fr);display:grid}.curriculum-editor-head,.curriculum-editor>label:nth-of-type(2),.curriculum-editor .curriculum-check,.curriculum-editor>button{grid-column:1/-1}.curriculum-editor h4{margin:var(--rz-space-1) 0 0}.curriculum-editor-head>button,.curriculum-level-actions button,.curriculum-skill-actions button,.curriculum-skill-editor-close,.curriculum-assignment-level li button,.staff-skill-editor-close,.staff-athlete-skill-back{min-height:var(--rz-tap-min);color:var(--sp-on-light);font:inherit;cursor:pointer;background:0 0;border:0;font-weight:700}.curriculum-editor label,.curriculum-assignment-form label,.curriculum-assignment-form fieldset,.staff-skill-field{gap:var(--rz-space-2);min-width:0;display:grid}.curriculum-editor label>span,.curriculum-assignment-form label>span,.curriculum-assignment-form legend,.staff-skill-field>span{color:var(--sp-body);font-size:.8rem;font-weight:700}.curriculum-editor small,.staff-skill-field small{color:var(--sp-muted);font-weight:500}.curriculum-editor input,.curriculum-editor textarea,.curriculum-assignment-form select,.staff-skill-field textarea{width:100%;min-height:var(--rz-tap-min);border:1px solid var(--sp-hairline);border-radius:var(--rz-radius-control);background:var(--sp-surface-input);color:var(--sp-ink);font:inherit;outline:0;padding:.75rem 1rem}.curriculum-editor textarea,.staff-skill-field textarea{resize:vertical;min-height:6rem}.curriculum-editor input:focus,.curriculum-editor textarea:focus,.curriculum-assignment-form select:focus,.staff-skill-field textarea:focus{border-color:var(--sp-primary);box-shadow:0 0 0 3px #a24dff24}.curriculum-check,.staff-skill-publish{cursor:pointer;align-items:flex-start;gap:var(--rz-space-3)!important;display:flex!important}.curriculum-check input,.staff-skill-publish input{width:1.25rem;height:1.25rem;min-height:0;accent-color:var(--sp-primary);margin-top:.125rem}.curriculum-level-list,.curriculum-categories,.curriculum-skill-list,.curriculum-assignment-levels,.staff-skill-levels,.staff-skill-list,.staff-roster-skills-list{gap:var(--rz-space-3);display:grid}.curriculum-level-card,.curriculum-assignment-level,.staff-skill-level,.skill-report-panel{border:1px solid var(--sp-hairline);border-radius:var(--rz-radius-card);background:var(--sp-surface-panel);box-shadow:var(--sp-shadow-card);overflow:hidden}.curriculum-level-card>header{gap:var(--rz-space-4);padding:var(--rz-space-5);border-bottom:1px solid var(--sp-hairline-soft)}.curriculum-level-card>header>div:nth-child(2){flex:1;min-width:0}.curriculum-level-number{clip-path:polygon(14% 0,100% 0,86% 100%,0 100%);background:var(--sp-primary);width:3rem;height:3rem;color:var(--sp-on-primary);font-family:var(--font-heading);place-items:center;font-size:1.15rem;font-weight:800;display:grid;flex:none!important}.curriculum-level-actions{gap:var(--rz-space-2);flex-wrap:wrap;justify-content:flex-end;display:flex}.curriculum-level-actions button,.curriculum-skill-actions button{padding:0 var(--rz-space-3);border:1px solid var(--sp-hairline);border-radius:var(--rz-radius-control)}.curriculum-categories{padding:var(--rz-space-4)}.curriculum-category{border-left:2px solid var(--sp-primary);padding-left:var(--rz-space-4)}.curriculum-category-head{gap:var(--rz-space-3);margin-bottom:var(--rz-space-2)}.curriculum-category-head h5{margin:var(--rz-space-1) 0 0}.curriculum-category-head>strong,.curriculum-assignment-level-head>strong,.staff-skill-level-head>strong{color:var(--sp-muted);font-size:.78rem}.curriculum-skill{gap:var(--rz-space-4);min-width:0;padding:var(--rz-space-4);border:1px solid var(--sp-hairline-soft);border-radius:var(--rz-radius-control);background:var(--sp-surface-card)}.curriculum-skill.is-archived{opacity:.58}.curriculum-skill-copy{flex:1;min-width:0}.curriculum-skill-copy>div{align-items:center;gap:var(--rz-space-2);flex-wrap:wrap;display:flex}.curriculum-skill-copy p{margin:var(--rz-space-1) 0;color:var(--sp-muted)}.curriculum-private-chip{border:1px solid var(--sp-hairline-strong);border-radius:var(--rz-radius-pill);color:var(--sp-on-light);padding:.125rem .5rem;font-size:.68rem;font-weight:700}.curriculum-skill-actions{gap:var(--rz-space-1);flex:none}.curriculum-level-empty{padding:var(--rz-space-6);color:var(--sp-muted);text-align:center}.curriculum-assignment-form{align-items:end;gap:var(--rz-space-3);grid-template-columns:minmax(0,1fr);display:grid}.curriculum-assignment-form fieldset{border:0}.curriculum-scope-switch{gap:var(--rz-space-1);padding:var(--rz-space-1);border:1px solid var(--sp-hairline);border-radius:var(--rz-radius-control);background:var(--sp-surface-input);grid-template-columns:1fr 1fr;display:grid}.curriculum-scope-switch button{min-height:2.75rem;color:var(--sp-muted);font:inherit;cursor:pointer;background:0 0;border:0;border-radius:7px;font-weight:700}.curriculum-scope-switch button.is-active{background:var(--sp-surface-raised);color:var(--sp-ink)}.curriculum-assignment-browser{gap:var(--rz-space-4);display:grid}.curriculum-assignment-level{padding:var(--rz-space-4)}.curriculum-assignment-level-head{gap:var(--rz-space-3);margin-bottom:var(--rz-space-3)}.curriculum-assignment-level h5{margin:var(--rz-space-1) 0 0}.curriculum-assignment-level ul{gap:var(--rz-space-2);list-style:none;display:grid}.curriculum-assignment-level li{justify-content:space-between;align-items:center;gap:var(--rz-space-3);padding:var(--rz-space-3);border:1px solid var(--sp-hairline-soft);border-radius:var(--rz-radius-control);background:var(--sp-surface-card);display:flex}.curriculum-assignment-level li>span{align-items:center;gap:var(--rz-space-2);min-width:0;display:flex}.curriculum-assignment-level>p{color:var(--sp-muted);margin:0}.skill-report-metrics{margin-bottom:var(--rz-space-4);grid-template-columns:repeat(4,minmax(0,1fr))}.skill-report-metrics small{margin-top:var(--rz-space-2);color:var(--sp-muted-soft);display:block}.skill-report-grid{gap:var(--rz-space-4);grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);display:grid}.skill-report-panel>header{padding:var(--rz-space-5);border-bottom:1px solid var(--sp-hairline-soft)}.skill-report-panel>header h4{margin:var(--rz-space-1) 0 0}.skill-report-bars{gap:var(--rz-space-4);padding:var(--rz-space-5);display:grid}.skill-report-bar-row{align-items:center;gap:var(--rz-space-3);grid-template-columns:auto minmax(0,1fr);display:grid}.skill-report-bar-row>div>div{justify-content:space-between;gap:var(--rz-space-3);margin-bottom:var(--rz-space-2);display:flex}.skill-report-bar{border-radius:var(--rz-radius-pill);background:var(--sp-surface-input);height:.38rem;display:block;overflow:hidden}.skill-report-bar>span{border-radius:inherit;background:var(--sp-primary);height:100%;display:block}.skill-report-activity ol{list-style:none;display:grid}.skill-report-activity li{align-items:center;gap:var(--rz-space-3);padding:var(--rz-space-3) var(--rz-space-5);border-bottom:1px solid var(--sp-hairline-soft);grid-template-columns:auto minmax(0,1fr) auto;display:grid}.skill-report-activity li:last-child{border-bottom:0}.skill-report-activity li>div{min-width:0}.skill-report-activity li>div span{color:var(--sp-muted);text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.skill-report-activity time{color:var(--sp-muted);font-size:.78rem}.staff-skills-loading,.staff-skills-empty,.family-skills-loading{justify-items:center;gap:var(--rz-space-2);padding:clamp(2rem, 7vw, 4rem) var(--rz-space-5);color:var(--sp-muted,var(--color-text-muted));text-align:center;display:grid}.staff-skills-empty>i{color:var(--sp-on-light);font-size:2rem}.staff-attendance-mode{max-width:32rem;margin-bottom:var(--rz-space-4);grid-template-columns:repeat(2,minmax(0,1fr))}.staff-attendance-mode button{justify-content:center;align-items:center;gap:var(--rz-space-2);display:flex}.staff-roster-skills-intro{gap:var(--rz-space-4);margin-bottom:var(--rz-space-4);padding:var(--rz-space-5);border:1px solid var(--sp-hairline);border-radius:var(--rz-radius-card);background:linear-gradient(110deg, #a24dff14, transparent 42%), var(--sp-surface-card)}.staff-roster-skills-intro p{text-align:right;max-width:29rem}.staff-roster-skill-progress{border-radius:var(--rz-radius-pill);background:var(--sp-surface-input);width:min(12rem,28vw);height:.3rem;display:block;overflow:hidden}.staff-roster-skill-progress>span{border-radius:inherit;background:var(--sp-primary);height:100%;display:block}.staff-portal-app .staff-roster-skill-row .staff-row-card-main{flex-wrap:nowrap;align-items:center}.staff-portal-app .staff-roster-skill-row .staff-row-card-actions{flex:none;width:auto;margin-left:auto;display:flex}.staff-portal-app .staff-roster-skill-row .staff-row-card-actions>.staff-row-chevron{width:var(--rz-tap-min);min-width:var(--rz-tap-min);height:var(--rz-tap-min);color:var(--sp-on-light);place-items:center;display:grid}.staff-skills-summary{margin-bottom:var(--rz-space-4);grid-template-columns:repeat(3,minmax(0,1fr))}.staff-skills-tracks{margin-bottom:var(--rz-space-4)}.staff-skill-editor{gap:var(--rz-space-4);margin-bottom:var(--rz-space-4);padding:var(--rz-space-5);border:1px solid var(--sp-hairline-strong);border-radius:var(--rz-radius-card);background:linear-gradient(112deg, #a24dff1a, transparent 48%), var(--sp-surface-raised);animation:rebelPulseIn var(--rz-pulse-spring) both;display:grid;position:relative;overflow:hidden}.staff-skill-editor:after{content:"";pointer-events:none;background:linear-gradient(90deg,#0000,#cf9dff21,#0000);width:24%;animation:.72s ease-out .12s both rebelEnergyTrace;position:absolute;top:0;bottom:0;transform:translate(-110%)skew(-18deg)}.staff-skill-editor h4{margin:var(--rz-space-1) 0 0}.staff-skill-rating-options{gap:var(--rz-space-2);grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.staff-skill-rating-options .skill-status{justify-content:center;align-items:center;gap:var(--rz-space-2);min-height:3.2rem;padding:var(--rz-space-2);border:1px solid var(--sp-hairline);border-radius:var(--rz-radius-control);background:var(--sp-surface-card);color:var(--sp-muted);font:inherit;cursor:pointer;font-size:.78rem;font-weight:700;display:flex}.staff-skill-rating-options .skill-status.is-active{border-color:currentColor;box-shadow:inset 0 0 0 1px}.skill-status--learning{color:var(--rz-violet-readable)!important}.skill-status--developing{color:var(--color-info)!important}.skill-status--consistent{color:var(--rz-success)!important}.skill-status--mastered{color:var(--rz-competition-gold)!important}.staff-skill-publish>span{gap:.125rem;display:grid}.staff-skill-publish small{color:var(--sp-muted);line-height:1.4}.staff-skill-save{width:100%;min-height:3rem}.staff-skill-level>.staff-skill-level-head{gap:var(--rz-space-3);padding:var(--rz-space-4);border-bottom:1px solid var(--sp-hairline-soft)}.staff-skill-list{padding:var(--rz-space-3)}.staff-skill-row{border:1px solid var(--sp-hairline-soft);border-radius:var(--rz-radius-control);background:var(--sp-surface-card);overflow:hidden}.staff-skill-row-main{align-items:center;gap:var(--rz-space-3);width:100%;min-height:4.25rem;padding:var(--rz-space-3);color:var(--sp-ink);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;grid-template-columns:auto minmax(0,1fr) auto;display:grid}.staff-skill-row-main:hover{background:var(--sp-surface-raised)}.staff-skill-row-copy{min-width:0;display:grid}.staff-skill-row-copy small{color:var(--sp-muted)}.staff-skill-row-action{color:var(--sp-on-light);font-size:.78rem;font-weight:700}.staff-skill-details{border-top:1px solid var(--sp-hairline-soft);padding:0 var(--rz-space-4) var(--rz-space-4)}.staff-skill-details summary{min-height:var(--rz-tap-min);color:var(--sp-on-light);cursor:pointer;align-items:center;font-size:.78rem;font-weight:700;display:flex}.staff-skill-details>p{margin:0 0 var(--rz-space-3);color:var(--sp-body)}.staff-skill-coach-cue{gap:var(--rz-space-1);margin-bottom:var(--rz-space-3);padding:var(--rz-space-3);border-left:3px solid var(--sp-primary);background:var(--sp-surface-raised);display:grid}.staff-skill-coach-cue span{color:var(--sp-body)}.staff-skill-history{gap:var(--rz-space-2);margin:var(--rz-space-3) 0 0;padding:0;list-style:none;display:grid}.staff-skill-history li{padding:var(--rz-space-3);border:1px solid var(--sp-hairline-soft);border-radius:var(--rz-radius-control)}.staff-skill-history li>div{align-items:center;gap:var(--rz-space-2);flex-wrap:wrap;display:flex}.staff-skill-history li span,.staff-skill-history li em{color:var(--sp-muted);font-size:.75rem}.staff-skill-history li p{margin:var(--rz-space-2) 0 0;color:var(--sp-body)}.staff-skill-correction-reason textarea{border-color:color-mix(in srgb, var(--sp-warn) 55%, var(--sp-hairline))}.staff-skill-correction-note{padding-left:var(--rz-space-3);border-left:2px solid var(--sp-warn)}.staff-skill-correct-action{min-height:var(--rz-tap-min);margin-top:var(--rz-space-2);color:var(--sp-primary-strong);font:inherit;cursor:pointer;background:0 0;border:0;padding:0;font-size:.8rem;font-weight:800}.staff-skill-correct-action:hover,.staff-skill-correct-action:focus-visible{color:var(--sp-primary);text-decoration:underline}.staff-athlete-skills-entry{align-items:center;gap:var(--rz-space-3);width:100%;min-height:4.75rem;margin-top:var(--rz-space-4);padding:var(--rz-space-3);border:1px solid var(--sp-hairline-strong);border-radius:var(--rz-radius-card);background:var(--sp-surface-raised);color:var(--sp-ink);font:inherit;text-align:left;cursor:pointer;grid-template-columns:auto minmax(0,1fr) auto;display:grid}.staff-athlete-skills-entry-icon{clip-path:polygon(14% 0,100% 0,86% 100%,0 100%);background:var(--sp-primary);width:2.75rem;height:2.75rem;color:var(--sp-on-primary);place-items:center;display:grid}.staff-athlete-skills-entry>span:nth-child(2){min-width:0;display:grid}.staff-athlete-skills-entry small{color:var(--sp-muted)}.staff-athlete-skill-back{align-items:center;gap:var(--rz-space-2);margin-bottom:var(--rz-space-3);display:inline-flex}.skill-video-trigger{min-height:var(--rz-tap-min);align-items:center;gap:var(--rz-space-2);padding:0 var(--rz-space-3);border-radius:var(--rz-radius-control);color:var(--sp-on-light,var(--color-primary-light));font:inherit;cursor:pointer;background:0 0;border:1px solid;font-size:.78rem;font-weight:700;display:inline-flex}.skill-video-backdrop{z-index:12000;padding:max(1rem, env(safe-area-inset-top)) max(1rem, env(safe-area-inset-right)) max(1rem, env(safe-area-inset-bottom)) max(1rem, env(safe-area-inset-left));-webkit-backdrop-filter:blur(18px);background:#040307d1;place-items:center;display:grid;position:fixed;inset:0}.skill-video-dialog{border-radius:var(--rz-radius-feature);background:color-mix(in srgb, var(--rz-graphite-950) 92%, transparent);color:#f3f4f6;width:min(100%,52rem);animation:rebelPulseIn var(--rz-pulse-spring) both;border:1px solid #cf9dff52;overflow:hidden;box-shadow:0 30px 80px #000000a6}.skill-video-dialog-head{justify-content:space-between;align-items:center;gap:var(--rz-space-4);padding:var(--rz-space-4) var(--rz-space-5);display:flex}.skill-video-eyebrow{color:var(--rz-violet-readable);letter-spacing:.12em;text-transform:uppercase;font-size:.7rem;font-weight:750}.skill-video-dialog h2{margin:var(--rz-space-1) 0 0;color:#fff;text-transform:none;font-size:1.25rem}.skill-video-close{width:var(--rz-tap-min);height:var(--rz-tap-min);color:#fff;cursor:pointer;background:#ffffff0f;border:1px solid #ffffff24;border-radius:50%;flex:none;place-items:center;display:grid}.skill-video-frame{aspect-ratio:16/9;background:#000}.skill-video-frame iframe{border:0;width:100%;height:100%;display:block}.skill-video-caption{padding:var(--rz-space-3) var(--rz-space-5) var(--rz-space-5);color:#b7b0c0;margin:0;font-size:.8rem}.parent-skills-summary{align-items:center;gap:var(--rz-space-3);background:linear-gradient(112deg, #b026ff14, transparent 42%), var(--cp-canvas,var(--surface-subtle));min-height:0;box-shadow:var(--cp-shadow-card,0 8px 24px #00000038);color:var(--color-text);transition:transform var(--rz-pulse-spring), border-color var(--rz-pulse-response) ease;border:1px solid #b026ff47;border-radius:12px;grid-template-columns:auto minmax(0,1fr) auto;margin:0;padding:.75rem;display:grid;position:relative;overflow:hidden}.parent-skills-summary:hover,.parent-skills-summary:focus-visible{border-color:#b026ff94;transform:translateY(-1px)}.parent-skills-summary:focus-visible,.family-skills-track-picker button:focus-visible,.skill-video-trigger:focus-visible,.skill-video-close:focus-visible,.skills-workspace-tabs button:focus-visible,.staff-attendance-mode button:focus-visible,.staff-skill-row-main:focus-visible{outline:2px solid var(--color-primary-light);outline-offset:3px}.parent-skills-summary-icon{clip-path:polygon(14% 0,100% 0,86% 100%,0 100%);background:var(--rz-violet-control);color:#fff;place-items:center;width:3rem;height:3rem;font-size:1.15rem;display:grid}.parent-skills-summary-body{min-width:0;display:grid}.parent-skills-summary-kicker{color:var(--color-primary-light);letter-spacing:.11em;text-transform:uppercase;font-size:.7rem;font-weight:750}.parent-skills-summary-body>strong{font-size:1.05rem}.parent-skills-summary-body>small{color:var(--color-text-muted)}.parent-skills-progress,.family-skills-overview-progress{height:.4rem;margin:var(--rz-space-3) 0 var(--rz-space-2);border-radius:var(--rz-radius-pill);background:color-mix(in srgb, var(--color-text) 10%, transparent);display:block;overflow:hidden}.parent-skills-progress>span,.family-skills-overview-progress>span{border-radius:inherit;background:linear-gradient(90deg, var(--rz-violet-control), var(--rz-competition-gold));height:100%;display:block}.parent-skills-summary-meta{align-items:center;gap:var(--rz-space-3);color:var(--color-text-muted);flex-wrap:wrap;font-size:.76rem;display:flex}.parent-skills-summary-meta>span{align-items:center;gap:var(--rz-space-1);display:inline-flex}.parent-skills-summary-chevron{color:var(--color-primary-light)}.family-skills-page{width:min(100%,68rem);padding-bottom:calc(5.5rem + env(safe-area-inset-bottom));margin:0 auto}.family-skills-back{align-items:center;gap:var(--rz-space-2);min-height:2.25rem;color:var(--cp-ink,var(--color-text));margin-bottom:.5rem;font-size:.9rem;font-weight:650;display:inline-flex}.family-skills-page .customer-portal-page-header{align-items:center}.family-skills-avatar{aspect-ratio:1;border:1px solid var(--cp-hairline,var(--hairline-soft));background:var(--cp-fill-soft,var(--surface-subtle));width:3.25rem;color:var(--cp-ink,var(--color-text));font-family:var(--font-heading);border-radius:50%;flex:none;place-items:center;font-size:.95rem;font-weight:750;display:grid;overflow:hidden}.family-skills-avatar img{object-fit:cover;width:100%;height:100%}.family-skills-overview{border:1px solid var(--hairline-soft);border-radius:var(--rz-radius-card);background:var(--surface-subtle);box-shadow:none;grid-template-columns:repeat(3,minmax(0,1fr));gap:.5rem .75rem;margin-bottom:.75rem;padding:.75rem;display:grid}.family-skills-overview>div{min-width:0}.family-skills-overview>div span{color:var(--color-text-muted);letter-spacing:.02em;text-transform:uppercase;font-size:.7rem;font-weight:650;display:block}.family-skills-overview>div strong{font-family:var(--font-heading);color:var(--cp-ink,var(--color-text));margin-top:.125rem;font-size:1.25rem;font-weight:700;line-height:1.1;display:block}.family-skills-overview-progress{grid-column:1/-1;height:.3rem;margin:.125rem 0 0}.family-skills-track-picker{z-index:6;border:1px solid var(--hairline-soft);border-radius:var(--rz-radius-card);background:color-mix(in srgb, var(--color-bg) 78%, transparent);-webkit-backdrop-filter:blur(18px);scrollbar-width:none;gap:.25rem;margin-bottom:.75rem;padding:.25rem;display:flex;position:sticky;top:.5rem;overflow-x:auto}.family-skills-track-picker::-webkit-scrollbar{display:none}.family-skills-track-picker button{border-radius:var(--rz-radius-pill);min-height:2.25rem;color:var(--color-text-muted);font:inherit;background:0 0;border:1px solid #0000;flex:none;padding:0 .75rem;font-size:.85rem;font-weight:700}.family-skills-track-picker button.is-active{background:var(--surface-subtle);color:var(--color-text);border-color:#b026ff6b}.family-skills-levels{gap:.75rem;display:grid}.family-skills-level{border:1px solid var(--hairline-soft);border-radius:var(--rz-radius-card);background:var(--surface-subtle);box-shadow:none;overflow:hidden}.family-skills-level>header{border-bottom:1px solid var(--hairline-soft);justify-content:space-between;align-items:flex-start;gap:.75rem;padding:.75rem;display:flex}.family-skills-level>header span{color:var(--color-primary-light);letter-spacing:.1em;text-transform:uppercase;font-size:.68rem;font-weight:750}.family-skills-level>header h2{text-transform:none;margin:.125rem 0;font-size:1.05rem;font-weight:650}.family-skills-level>header p{color:var(--color-text-muted);margin:0;font-size:.82rem;line-height:1.35}.family-skills-level>header>strong{color:var(--rz-competition-gold);border:1px solid #e6ab3c5c;border-radius:999px;flex:none;padding:.25rem .5rem;font-size:.82rem}.family-skills-list{display:grid}.family-skill-row{border-bottom:1px solid var(--hairline-soft);grid-template-columns:auto minmax(0,1fr);gap:.75rem;padding:.75rem;display:grid}.family-skill-row:last-child{border-bottom:0}.family-skill-row>div{min-width:0}.family-skill-row .skill-status-icon{width:1.85rem;height:1.85rem;font-size:.8rem}.family-skill-row-title{gap:.5rem}.family-skill-row-title>strong{font-size:.95rem}.family-skill-row-title>span{color:var(--color-text-muted);flex:none;font-size:.72rem;font-weight:700}.family-skill-row p{color:var(--color-text-muted);margin:.25rem 0 0;font-size:.82rem;line-height:1.35}.family-skill-row blockquote{border-left:3px solid var(--color-primary);background:color-mix(in srgb, var(--color-primary) 7%, transparent);color:var(--color-text);margin:.5rem 0 0;padding:.5rem .75rem}.family-skill-row time{color:var(--color-text-muted);margin-top:.25rem;font-size:.72rem;display:block}.family-skill-row .skill-video-trigger{margin-top:.5rem}.family-skills-history{margin-top:1rem}.family-skills-history>footer{border-top:1px solid var(--hairline-soft);justify-content:center;padding:.75rem;display:flex}.family-skills-empty{text-align:center;justify-items:center;gap:.5rem;padding:clamp(1.5rem,6vw,3rem) 1rem;display:grid}.family-skills-empty>i{color:var(--cp-muted,var(--color-text-muted));font-size:1.75rem}.family-skills-empty h1,.family-skills-empty h2{text-transform:none;margin:0}.family-skills-empty p{max-width:34rem;color:var(--color-text-muted);margin:0}html[data-theme=light] .skill-status-icon--learning{color:#7d1fd1}html[data-theme=light] .skill-status-icon--developing{color:#1769aa}html[data-theme=light] .skill-status-icon--consistent{color:#147a45}html[data-theme=light] .skill-status-icon--mastered{color:#8a5a00}html[data-theme=light] .parent-skills-summary-kicker,html[data-theme=light] .family-skills-level>header span,html[data-theme=light] .family-skills-back{color:#7d1fd1}html[data-theme=light] .parent-skills-summary,html[data-theme=light] .family-skills-overview,html[data-theme=light] .family-skills-level{background-color:#fff}html[data-theme=light] .family-skills-track-picker{background:#ffffffd6}html[data-theme=light] .family-skills-level>header>strong{color:#8a5a00;border-color:#8a5a0059}@media (width<=900px){body.portal-app{font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,Segoe UI,Roboto,Inter,sans-serif}.curriculum-toolbar,.curriculum-track-intro,.staff-roster-skills-intro{flex-direction:column;align-items:stretch}.curriculum-toolbar-actions{width:100%;min-width:0}.curriculum-assignment-form{grid-template-columns:minmax(0,1fr)}.skill-report-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.skill-report-grid{grid-template-columns:1fr}.staff-roster-skills-intro p{text-align:left;max-width:none}}@media (width<=640px){.skills-curriculum-hero{min-height:0;padding:var(--rz-space-5)}.skills-curriculum-mark{width:4rem}.skills-curriculum-hero p{font-size:.88rem}.skills-curriculum-metrics{gap:var(--rz-space-2)}.skills-curriculum-metrics>div,.staff-skills-summary>div{padding:var(--rz-space-3)}.skills-workspace-tabs button{flex-direction:column;gap:.125rem;font-size:.7rem}.curriculum-toolbar-actions{grid-template-columns:minmax(0,1fr) auto;display:grid}.curriculum-toolbar-actions .staff-search-input{min-width:0}.curriculum-editor{grid-template-columns:1fr}.curriculum-editor>label,.curriculum-editor-head,.curriculum-editor>button{grid-column:1}.curriculum-level-card>header{padding:var(--rz-space-4);grid-template-columns:auto minmax(0,1fr);align-items:start;display:grid}.curriculum-level-actions{grid-column:1/-1;justify-content:stretch}.curriculum-level-actions button{flex:1}.curriculum-categories{padding:var(--rz-space-3)}.curriculum-category{padding-left:var(--rz-space-3)}.curriculum-skill{flex-direction:column;align-items:flex-start}.curriculum-skill-actions{width:100%}.curriculum-skill-actions button{flex:1}.curriculum-assignment-form{grid-template-columns:1fr}.curriculum-assignment-level li{align-items:flex-start}.skill-report-activity li{padding-inline:var(--rz-space-3)}.staff-skill-rating-options{grid-template-columns:repeat(2,minmax(0,1fr))}.staff-skill-editor{padding:var(--rz-space-4)}.staff-skill-row-main{grid-template-columns:auto minmax(0,1fr)}.staff-skill-row-action{grid-column:2}.staff-roster-skill-progress{width:min(10rem,32vw)}.family-skills-overview{padding:.75rem}.family-skills-overview>div span{min-height:0}.family-skills-level>header,.family-skill-row{padding:.75rem}.family-skill-row-title{align-items:flex-start;gap:var(--rz-space-1);flex-direction:column}.parent-skills-summary-meta{gap:var(--rz-space-2)}.skill-video-backdrop{padding-inline:0;align-items:end;padding-bottom:0}.skill-video-dialog{max-height:calc(100dvh - env(safe-area-inset-top));border-radius:var(--rz-radius-feature) var(--rz-radius-feature) 0 0}}@media (width<=380px){.skills-curriculum-mark{display:none}.skills-curriculum-metrics strong{font-size:1.25rem}.skills-workspace-tabs{gap:var(--rz-space-1);padding:var(--rz-space-1)}.curriculum-toolbar-actions{grid-template-columns:1fr}.skill-report-metrics{grid-template-columns:1fr 1fr}.parent-skills-summary{grid-template-columns:auto minmax(0,1fr)}.parent-skills-summary-chevron{display:none}.family-skills-avatar{width:3.75rem}}@media (width<=760px){.staff-attendance-report-intro{flex-direction:column;align-items:stretch}.staff-attendance-report-intro .btn{width:100%}.staff-attendance-report-filters{grid-template-columns:minmax(0,1fr)}.staff-attendance-report-filters .btn,.staff-attendance-report-row-filters label{flex-basis:100%;width:100%}.staff-attendance-report-summary{grid-template-columns:minmax(0,1fr)}.staff-attendance-report-summary>div,.staff-attendance-report-summary>div:nth-child(4n){border-right:1px solid var(--sp-hairline-soft)}.staff-attendance-report-summary>div:nth-child(2n){border-right:0}.staff-attendance-report-summary>div:nth-child(n+3){border-top:1px solid var(--sp-hairline-soft)}}@media (prefers-reduced-motion:reduce){.curriculum-builder,.curriculum-assignments,.skill-reports,.staff-skill-editor,.skill-video-dialog{animation:none!important}.staff-skill-editor:after{display:none}.skills-workspace-tabs button,.staff-attendance-mode button,.parent-skills-summary{transition-duration:1ms!important;transform:none!important}}.staff-portal-app{--sp-radius-sm:8px;--sp-radius-md:12px}.staff-portal-app .staff-ops-form-card,.staff-portal-app .staff-cms-block,.staff-portal-app .staff-cms-inline-form,.staff-portal-app .staff-family-statement,.staff-portal-app .staff-cms-card-body,.staff-portal-app .staff-transactions-workspace,.staff-portal-app .staff-cms,.staff-portal-app .staff-attendance,.staff-portal-app .staff-attendance-report,.staff-portal-app .staff-payments-history,.staff-portal-app .staff-dossier,.staff-portal-app .curriculum-assignment-form,.staff-portal-app .curriculum-editor,.staff-portal-app .staff-clock-hero,.staff-portal-app .staff-clock-section,.staff-portal-app .party-bookings-manager .portal-panel-card,.staff-portal-app .party-package-admin,.staff-portal-app .party-blackout-form,.staff-portal-app .enrollment-ops-panel,.staff-portal-app .enrollment-change-composer,.staff-portal-app .enrollment-policy-panel,.staff-portal-app .staff-audit-center,.staff-portal-app .staff-audit-filters{container-type:inline-size}.staff-portal-app .staff-ops-form-grid,.staff-portal-app .staff-ops-form-grid--3,.staff-portal-app .staff-cms-field-grid--2,.staff-portal-app .staff-fill-grid,.staff-portal-app .ui-grid-2,.staff-portal-app .staff-cms-inline-form,.staff-portal-app .staff-attendance-controls,.staff-portal-app .staff-attendance-controls--override,.staff-portal-app .staff-attendance-report-filters,.staff-portal-app .staff-attendance-summary,.staff-portal-app .staff-attendance-report-summary,.staff-portal-app .staff-attendance-statuses,.staff-portal-app .staff-cms-tuition-row,.staff-portal-app .curriculum-assignment-form,.staff-portal-app .curriculum-editor,.staff-portal-app .staff-payments-history__filters,.staff-portal-app .staff-clock-totals,.staff-portal-app .staff-family-stats,.staff-portal-app .staff-dossier-stats,.staff-portal-app .staff-dashboard-grid,.staff-portal-app .staff-family-statement .staff-dashboard-grid,.staff-portal-app .enrollment-create-form,.staff-portal-app .enrollment-change-form,.staff-portal-app .enrollment-policy-grid,.staff-portal-app .staff-audit-filters{box-sizing:border-box;gap:var(--sp-field-gap);grid-template-columns:minmax(0,1fr);width:100%;max-width:100%;display:grid}.staff-portal-app .staff-cms-inline-form>.ui-w-100,.staff-portal-app .staff-cms-inline-form>.staff-cms-field-grid,.staff-portal-app .staff-cms-inline-form>.btn,.staff-portal-app .staff-cms-inline-form>h5,.staff-portal-app .staff-cms-inline-form>p,.staff-portal-app .staff-attendance-report-filters>.btn,.staff-portal-app .staff-cms-tuition-remove,.staff-portal-app .staff-payments-history__search,.staff-portal-app .staff-payments-history__actions,.staff-portal-app .enrollment-create-form>button,.staff-portal-app .enrollment-change-form>button,.staff-portal-app .enrollment-change-form__reason,.staff-portal-app .staff-audit-filter-actions{grid-column:1/-1}@container (width>=572px){.staff-portal-app .staff-ops-form-grid:not(.staff-ops-form-grid--3),.staff-portal-app .staff-cms-field-grid--2,.staff-portal-app .staff-fill-grid,.staff-portal-app .ui-grid-2,.staff-portal-app .staff-cms-inline-form,.staff-portal-app .staff-attendance-controls:not(.staff-attendance-controls--override),.staff-portal-app .staff-attendance-report-filters,.staff-portal-app .staff-attendance-summary,.staff-portal-app .staff-attendance-report-summary,.staff-portal-app .staff-cms-tuition-row,.staff-portal-app .curriculum-assignment-form,.staff-portal-app .curriculum-editor,.staff-portal-app .staff-payments-history__filters,.staff-portal-app .staff-clock-totals,.staff-portal-app .staff-family-stats,.staff-portal-app .staff-dossier-stats,.staff-portal-app .staff-dashboard-grid,.staff-portal-app .staff-family-statement .staff-dashboard-grid,.staff-portal-app .party-bookings-manager .party-package-admin-fields,.staff-portal-app .party-bookings-manager .party-slot-admin-list>.staff-ops-form-grid,.staff-portal-app .party-bookings-manager .party-blackout-row,.staff-portal-app .enrollment-create-form,.staff-portal-app .enrollment-change-form,.staff-portal-app .enrollment-policy-grid,.staff-portal-app .staff-audit-filters{grid-template-columns:1fr 1fr}}@media (width<=1366px){.staff-portal-app .staff-ops-form-grid--3,.staff-portal-app .staff-attendance-controls--override{grid-template-columns:minmax(0,1fr)}.staff-portal-app .staff-ops-form-grid--3>.form-group--span-2,.staff-portal-app .staff-ops-form-grid--3>.form-group--span-3,.staff-portal-app .staff-ops-form-grid--3>.staff-ops-form-actions{grid-column:1/-1}}@media (width>=1367px){@container (width>=864px){.staff-portal-app .staff-attendance-controls--override,.staff-portal-app .staff-attendance-report-filters,.staff-portal-app .staff-attendance-summary,.staff-portal-app .staff-attendance-report-summary,.staff-portal-app .staff-attendance-statuses,.staff-portal-app .curriculum-assignment-form,.staff-portal-app .staff-payments-history__filters,.staff-portal-app .enrollment-create-form,.staff-portal-app .enrollment-change-form,.staff-portal-app .enrollment-policy-grid,.staff-portal-app .staff-audit-filters{grid-template-columns:1fr 1fr 1fr}}@container (width>=1104px){.staff-portal-app .staff-ops-form-grid--3{grid-template-columns:1fr 1fr 1fr}.staff-portal-app .staff-ops-form-grid--3>.form-group--span-2{grid-column:span 2}.staff-portal-app .staff-ops-form-grid--3>.form-group--span-3,.staff-portal-app .staff-ops-form-grid--3>.staff-ops-form-actions{grid-column:1/-1}}}.staff-portal-app .staff-ops-form-grid>*,.staff-portal-app .staff-cms-field-grid>*,.staff-portal-app .staff-fill-grid>*,.staff-portal-app .party-slot-admin-list>.staff-ops-form-grid>*,.staff-portal-app .party-blackout-row>*,.staff-portal-app .party-package-admin-fields>*{min-width:0;max-width:100%}.staff-portal-app .party-bookings-manager .party-package-admin-fields,.staff-portal-app .party-bookings-manager .party-slot-admin-list>.staff-ops-form-grid,.staff-portal-app .party-bookings-manager .party-blackout-row{box-sizing:border-box;gap:var(--sp-field-gap);grid-template-columns:minmax(0,1fr);width:100%;max-width:100%;display:grid}.staff-portal-app .party-bookings-manager .party-slot-admin-list>.staff-ops-form-grid{grid-template-areas:none}.staff-portal-app .party-bookings-manager .party-blackout-row>.staff-ops-form-actions,.staff-portal-app .party-bookings-manager .party-package-admin-fields>.staff-ops-form-actions{grid-column:1/-1}.staff-portal-app .staff-pct-suffix{align-items:center;gap:var(--sp-field-gap);grid-template-columns:minmax(0,1fr) auto;min-width:0;max-width:100%;display:grid}.staff-portal-app .staff-pct-suffix>.ui-input-dark{min-width:0;max-width:100%}@media (width>=768px) and (width<=1366px){.staff-portal-app{--sp-control-h:44px}}.staff-portal-app,.staff-portal-app button,.staff-portal-app input,.staff-portal-app select,.staff-portal-app textarea{font-family:var(--sp-font), var(--font-body), system-ui, sans-serif}.staff-portal-app .staff-ops-page-title{font-family:var(--font-heading), var(--sp-font), system-ui, sans-serif;letter-spacing:-.025em;font-weight:700}.staff-portal-app .staff-nav-display-controls{grid-template-columns:1fr 1fr;gap:.25rem;margin:0 0 .75rem;display:grid}.staff-portal-app .staff-nav-display-control{border:1px solid var(--sp-hairline-soft);border-radius:var(--sp-radius-sm);min-height:2rem;color:var(--sp-muted);font:inherit;cursor:pointer;background:0 0;justify-content:center;align-items:center;gap:.25rem;padding:.25rem .5rem;font-size:.68rem;font-weight:650;display:inline-flex}.staff-portal-app .staff-nav-display-control:hover{background:color-mix(in srgb, var(--sp-surface-raised) 72%, transparent);color:var(--sp-text)}.staff-portal-app .staff-nav-display-control:focus-visible{outline:3px solid color-mix(in srgb, var(--sp-primary-soft) 55%, transparent);outline-offset:1px}.staff-portal-app .staff-nav-group{box-shadow:none;background:0 0;border:0;border-radius:0;margin:0 0 .5rem;padding:0}.staff-portal-app .staff-nav-group+.staff-nav-group{border-top:0;margin-top:0;padding-top:0}.staff-portal-app .staff-nav-group-header{border:0;border-bottom:1px solid var(--sp-hairline-soft);border-radius:var(--sp-radius-sm);width:100%;min-height:2.25rem;color:inherit;font:inherit;text-align:left;cursor:pointer;background:0 0;margin:0;padding:.5rem}.staff-portal-app .staff-nav-group-header:hover{background:color-mix(in srgb, var(--sp-surface-raised) 72%, transparent)}.staff-portal-app .staff-nav-group-header:focus-visible{outline:3px solid color-mix(in srgb, var(--sp-primary-soft) 55%, transparent);outline-offset:1px}.staff-portal-app .staff-nav-group-meta{align-items:center;gap:.5rem;display:inline-flex}.staff-portal-app .staff-nav-group-chevron{color:var(--sp-muted);font-size:.65rem;transition:transform .15s}.staff-portal-app .staff-nav-group-header[aria-expanded=true] .staff-nav-group-chevron{transform:rotate(180deg)}.staff-portal-app .staff-nav-group-label{letter-spacing:.09em;color:var(--sp-muted);font-size:.7rem}.staff-portal-app .staff-nav-group-count{background:var(--sp-surface-raised);min-width:1.2rem;height:1.2rem;color:var(--sp-muted);font-size:.62rem}.staff-portal-app .staff-nav-list[hidden]{display:none}.staff-portal-app .staff-nav-item{border-radius:var(--sp-radius-sm);letter-spacing:0;grid-template-columns:2rem minmax(0,1fr);gap:.75rem;min-height:2.5rem;padding:.5rem;font-size:.875rem;font-weight:550}.staff-portal-app .staff-nav-item-icon{border-radius:var(--sp-radius-sm);background:0 0;width:2rem;height:2rem}.staff-portal-app .staff-nav-item.is-active{box-shadow:none}.staff-portal-app .staff-ops-page-header,.staff-portal-app .staff-cal-page-header{align-items:center;min-height:2.75rem;margin-bottom:16px;padding-bottom:8px}.staff-portal-app .staff-ops-page-status{font-size:.8125rem;font-weight:500}.staff-portal-app .ui-card-sm,.staff-portal-app .glass-panel,.staff-portal-app .glass,.staff-portal-app .portal-panel-card,.staff-portal-app .staff-ops-form-card,.staff-portal-app .staff-help-topic,.staff-portal-app .staff-dash-customize{border-radius:var(--sp-radius-md)}.staff-portal-app .form-group>label,.staff-portal-app .form-group>span:first-child,.staff-portal-app .record-picker-label{font-family:var(--font-heading), var(--sp-font), system-ui, sans-serif;letter-spacing:.07em;font-size:.6875rem;font-weight:700}.staff-portal-app input,.staff-portal-app select,.staff-portal-app textarea,.staff-portal-app .record-picker-trigger,.staff-portal-app .btn{border-radius:var(--sp-radius-sm)}.staff-portal-app input,.staff-portal-app select,.staff-portal-app .record-picker-trigger,.staff-portal-app .btn{min-height:var(--sp-control-h)}.staff-portal-app textarea{min-height:7rem}.staff-portal-app input:focus,.staff-portal-app select:focus,.staff-portal-app textarea:focus,.staff-portal-app .record-picker-trigger:focus-visible,.staff-portal-app .btn:focus-visible,.staff-portal-app .staff-nav-item:focus-visible{outline:3px solid color-mix(in srgb, var(--sp-primary-soft) 55%, transparent);outline-offset:1px}.staff-portal-app .btn{font-family:var(--sp-font), var(--font-body), system-ui, sans-serif;font-weight:650}.staff-portal-app .btn.ui-badge-btn{text-align:center;white-space:nowrap;justify-content:center;align-items:center;width:auto;max-width:100%;min-height:2rem;padding:.25rem .75rem;line-height:1.2;display:inline-flex}.staff-portal-app .sp-toolbar-controls .btn.ui-badge-btn,.staff-portal-app .enrollment-row-action.btn.ui-badge-btn{box-sizing:border-box;min-height:var(--sp-control-h-sm);height:var(--sp-control-h-sm);padding:0 .75rem}.staff-portal-app .density-toggle .btn.ui-badge-btn{height:100%;min-height:0}.staff-portal-app .sp-payment-actions{flex-wrap:wrap;justify-content:flex-start;align-items:center;gap:.25rem;width:max-content;max-width:100%;display:flex}.staff-portal-app .sp-table td .sp-payment-actions{margin:.25rem 0}.staff-portal-app .staff-row-card-actions .sp-payment-actions{justify-content:flex-end;width:100%}.staff-portal-app .staff-payments-history__lead{color:var(--sp-muted);margin:.25rem 0 0;font-size:.9rem;font-weight:500}.staff-portal-app .staff-payments-history__toolbar{margin-bottom:1rem}@media (width>=1367px){@container (width>=864px){.staff-portal-app .staff-payments-history .staff-dashboard-grid{grid-template-columns:1fr 1fr 1fr}}}.staff-portal-app .staff-payments-history__filters{align-items:end;gap:.75rem;display:grid}.staff-portal-app .staff-payments-history__search,.staff-portal-app .staff-payments-history__actions{grid-column:1/-1}.staff-portal-app .staff-payments-history__search-field{position:relative}.staff-portal-app .staff-payments-history__search-field i{color:var(--sp-muted);pointer-events:none;font-size:.85rem;position:absolute;top:50%;left:.85rem;transform:translateY(-50%)}.staff-portal-app .staff-payments-history__search-field input{padding-left:2.25rem}.staff-portal-app .staff-payments-history__actions{flex-wrap:wrap;gap:.5rem;display:flex}.staff-portal-app .staff-payments-history__table.sp-table-wrap{background:var(--sp-surface-card);border-radius:16px}.staff-portal-app .staff-payments-history__table .sp-table tbody tr{cursor:default}.staff-portal-app .staff-payments-history__ref{font-variant-numeric:tabular-nums;letter-spacing:.01em}.staff-portal-app .staff-payments-history__family,.staff-portal-app .staff-payments-history__method{align-items:center;gap:8px;min-width:0;display:inline-flex}.staff-portal-app .staff-payments-history__method-icon{background:var(--sp-surface-raised);width:24px;height:24px;color:var(--sp-body);border-radius:999px;justify-content:center;align-items:center;font-size:12px;font-weight:800;display:inline-flex}.staff-portal-app .staff-payments-history__method-icon--visa{color:#1a1f71;background:#e8ebff}.staff-portal-app .staff-payments-history__method-icon--mastercard{color:#eb001b;background:#ffe8e8}.staff-portal-app .staff-payments-history__method-icon--amex{color:#2e77bc;background:#e4f0fb}.staff-portal-app .staff-payments-history__method-icon--discover{color:#f76b1c;background:#fff0e6}.staff-portal-app .staff-payments-history__method-icon--apple_pay{color:#111;background:#ececec}.staff-portal-app .staff-payments-history__method-icon--google_pay{color:#4285f4;background:#e8f1fe}.staff-portal-app .staff-payments-history__method-icon--paypal{color:#003087;background:#e6eefc}.staff-portal-app .staff-payments-history__method-icon--venmo{color:#fff;background:#3d95ce}.staff-portal-app .staff-payments-history__method-icon--cashapp{color:#00d632;background:#e6fbeb}.staff-portal-app .staff-payments-history__method-icon--zelle{color:#6d1ed4;background:#f1e6ff}.staff-portal-app .staff-payments-history__method-icon--ach{color:#0f766e;background:#e6f7f4}.staff-portal-app .staff-payments-history__method-icon--cash{color:#166534;background:#e8f8ee}.staff-portal-app .staff-payments-history__method-icon--square{color:#111;background:#ececec}.staff-portal-app .staff-payments-history__method-icon--card{color:#334155;background:#e8eef6}.staff-portal-app .staff-payments-history__method-icon--other{color:#57534e;background:#f3efe8}.staff-portal-app .staff-payments-history__status{letter-spacing:.02em;text-transform:capitalize;border:1px solid #0000;border-radius:999px;align-items:center;gap:4px;min-height:24px;padding:0 8px;font-size:12px;font-weight:700;display:inline-flex}.staff-portal-app .staff-payments-history__status:before{content:"";background:currentColor;border-radius:999px;width:8px;height:8px}.staff-portal-app .staff-payments-history__status--ok{border-color:color-mix(in srgb, var(--sp-success) 35%, transparent);background:color-mix(in srgb, var(--sp-success) 12%, var(--sp-surface-raised));color:var(--sp-success)}.staff-portal-app .staff-payments-history__status--pending{border-color:color-mix(in srgb, var(--sp-warn) 35%, transparent);background:color-mix(in srgb, var(--sp-warn) 12%, var(--sp-surface-raised));color:var(--sp-warn)}.staff-portal-app .staff-payments-history__status--failed{border-color:color-mix(in srgb, var(--sp-danger) 35%, transparent);background:color-mix(in srgb, var(--sp-danger) 12%, var(--sp-surface-raised));color:var(--sp-danger)}.staff-portal-app .staff-payments-history__status--refunded{border-color:var(--sp-hairline);background:var(--sp-surface-raised);color:var(--sp-body)}.staff-portal-app .staff-payments-history__status--muted{border-color:var(--sp-hairline);background:var(--sp-surface-raised);color:var(--sp-muted)}.staff-portal-app .staff-payment-row-actions{align-items:center;gap:4px;display:inline-flex}.staff-portal-app .staff-payment-action{border:1px solid var(--sp-hairline);background:var(--sp-surface-raised);width:2rem;height:2rem;color:var(--sp-ink);border-radius:999px;justify-content:center;align-items:center;text-decoration:none;display:inline-flex}.staff-portal-app .staff-payment-action--view,.staff-portal-app .staff-payment-action--refund{background:var(--sp-surface-raised);color:var(--sp-body)}.staff-portal-app .staff-payments-history__footer{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;margin-top:1rem;display:flex}@media (width<=1100px){.staff-portal-app .staff-payments-history__search,.staff-portal-app .staff-payments-history__actions{grid-column:1/-1}}@media (width<=900px){.staff-portal-app{--sp-control-h:44px;--sp-label-gap:.5rem}.staff-portal-app .btn.ui-badge-btn{min-height:var(--sp-control-h-sm);padding:.5rem .75rem}.staff-portal-app .sp-toolbar-controls .btn.ui-badge-btn,.staff-portal-app .enrollment-row-action.btn.ui-badge-btn{min-height:var(--sp-control-h-sm);height:var(--sp-control-h-sm)}body.staff-portal-app .density-toggle{height:var(--sp-control-h);gap:0;padding:0}body.staff-portal-app .density-toggle .btn.ui-badge-btn{height:100%;min-height:0}.staff-portal-app .sp-payment-actions{flex-direction:column;align-items:stretch;width:100%}.staff-portal-app .sp-payment-actions .btn.ui-badge-btn{white-space:normal;width:100%}.staff-portal-app .staff-payment-action{width:var(--sp-control-h-sm);height:var(--sp-control-h-sm)}.staff-portal-app .staff-nav-group-header,.staff-portal-app .staff-nav-display-control{min-height:44px}.staff-portal-app .staff-mobile-tab{border-radius:var(--sp-radius-sm);min-height:52px;font-family:var(--sp-font), var(--font-body), system-ui, sans-serif;font-size:.7rem;font-weight:650}}.staff-portal-app .staff-athlete-directory,.staff-portal-app .staff-classes-directory,.staff-portal-app .staff-enrollments-directory{gap:1rem;display:grid}.staff-portal-app .staff-athlete-directory .staff-ops-page-header,.staff-portal-app .staff-classes-directory .staff-ops-page-header,.staff-portal-app .staff-enrollments-directory .staff-ops-page-header{margin-bottom:0}.staff-portal-app .athlete-summary-strip{border:1px solid var(--sp-hairline);border-radius:var(--sp-radius-md);background:var(--sp-surface-card);box-shadow:var(--sp-shadow-card);margin:0;overflow:hidden}.staff-portal-app .athlete-summary-stat{align-content:center;gap:.125rem;min-height:4.25rem;padding:.75rem 1rem;display:grid}.staff-portal-app .athlete-summary-stat+.athlete-summary-stat{border-left:1px solid var(--sp-hairline-soft)}.staff-portal-app .athlete-summary-stat strong{color:var(--sp-ink);font-size:1.2rem;font-weight:750}.staff-portal-app .staff-athlete-directory>.ui-flex-start{align-items:center;margin:0;gap:.75rem!important}.staff-portal-app .staff-athlete-directory>.ui-flex-start>.ui-input-dark,.staff-portal-app .staff-athlete-directory>.ui-flex-start>input,.staff-portal-app .staff-athlete-directory>.ui-flex-start>select{width:auto;margin:0;min-height:var(--sp-control-h)!important}.staff-portal-app .staff-athlete-directory>.ui-flex-start>input[type=search]{flex:20rem;min-width:min(100%,16rem)}.staff-portal-app .staff-athlete-directory .sp-db-console,.staff-portal-app .staff-classes-directory .sp-db-console,.staff-portal-app .staff-enrollments-directory .sp-db-console{border:1px solid var(--sp-hairline);border-radius:var(--sp-radius-md);background:var(--sp-surface-card);box-shadow:var(--sp-shadow-card);margin:0;overflow:hidden}.staff-portal-app .sp-db-console .sp-table-toolbar{border-bottom:1px solid var(--sp-hairline);background:var(--sp-surface-raised);flex-wrap:wrap;align-items:center;gap:.5rem;min-height:3.5rem;padding:.75rem;display:flex}.staff-portal-app .sp-db-console .sp-table-wrap{background:0 0;border:0;border-radius:0}.staff-portal-app .sp-db-console .sp-table{width:100%;font-size:.875rem}.staff-portal-app .sp-db-console .sp-table thead th{background:var(--sp-surface-panel);height:2.5rem;color:var(--sp-muted);font-family:var(--font-heading), var(--sp-font), system-ui, sans-serif;letter-spacing:.07em;text-transform:uppercase;padding:0 .75rem;font-size:.6875rem;font-weight:750}.staff-portal-app .sp-db-console .sp-table tbody td{min-height:2.75rem;color:var(--sp-body);border-bottom:1px solid var(--sp-hairline-soft);padding:.75rem}.staff-portal-app .sp-db-console .sp-table tbody tr:last-child td{border-bottom:0}.staff-portal-app .sp-chip{border:1px solid var(--sp-hairline);background:color-mix(in srgb, var(--sp-primary) 9%, var(--sp-surface-raised));min-height:1.55rem;color:var(--sp-on-light);border-radius:999px;align-items:center;padding:.125rem .5rem;font-size:.75rem;font-weight:650;line-height:1.2;display:inline-flex}.staff-portal-app .staff-attendance-mode,.staff-portal-app .skills-workspace-tabs,.staff-portal-app .portal-segmented-scroll,.staff-portal-app .curriculum-scope-switch{border:1px solid var(--sp-hairline);border-radius:var(--sp-radius-md);background:var(--sp-surface-card);box-shadow:none;-webkit-backdrop-filter:none;gap:.25rem;padding:.25rem}.staff-portal-app .staff-attendance-mode,.staff-portal-app .skills-workspace-tabs{flex-wrap:wrap;width:100%;max-width:none;margin:0 0 1rem;display:flex}.staff-portal-app .portal-segmented-scroll{flex-wrap:wrap;width:fit-content;max-width:100%;margin:0;display:flex}.staff-portal-app .curriculum-track-picker,.staff-portal-app .staff-skills-tracks{flex-wrap:nowrap;width:100%;overflow-x:auto}.staff-portal-app .curriculum-scope-switch{grid-template-columns:1fr 1fr;margin:0;display:grid}.staff-portal-app .staff-attendance-mode button,.staff-portal-app .skills-workspace-tabs button,.staff-portal-app .portal-chip,.staff-portal-app .curriculum-scope-switch button,.staff-portal-app .curriculum-track-picker button,.staff-portal-app .staff-skills-tracks button{border-radius:var(--sp-radius-sm);min-height:2.5rem;color:var(--sp-muted);white-space:nowrap;box-shadow:none;background:0 0;border:1px solid #0000;justify-content:center;align-items:center;gap:.5rem;padding:.25rem .75rem;font-size:12px;font-weight:650;line-height:1.2;display:inline-flex}.staff-portal-app .staff-attendance-mode button,.staff-portal-app .skills-workspace-tabs button{flex-direction:row;flex:7.5rem;min-width:7.5rem}.staff-portal-app .portal-chip{flex:auto;min-width:8rem}.staff-portal-app .curriculum-track-picker button,.staff-portal-app .staff-skills-tracks button{flex:none;min-width:0}.staff-portal-app .staff-attendance-mode button.is-active,.staff-portal-app .skills-workspace-tabs button.is-active,.staff-portal-app .portal-chip.is-active,.staff-portal-app .curriculum-scope-switch button.is-active,.staff-portal-app .curriculum-track-picker button.is-active,.staff-portal-app .staff-skills-tracks button.is-active{color:var(--sp-ink);border-color:var(--sp-hairline-strong);background:var(--sp-surface-raised);box-shadow:none}.staff-portal-app .staff-attendance-mode button.is-active:after,.staff-portal-app .skills-workspace-tabs button.is-active:after{content:none}.staff-portal-app .staff-enrollments-directory .staff-attendance-mode{width:min(100%,32rem);margin:0}.staff-portal-app .staff-enrollments-directory .enrollment-ops-panel,.staff-portal-app .staff-enrollments-directory .enrollment-change-composer,.staff-portal-app .staff-enrollments-directory .enrollment-request-queue,.staff-portal-app .staff-enrollments-directory .enrollment-policy-panel{border-radius:var(--sp-radius-md);box-shadow:var(--sp-shadow-card);background:var(--sp-surface-card);border:1px solid var(--sp-hairline);margin:0}@media (width<=700px){.staff-portal-app .athlete-summary-stat{text-align:center;min-height:3.75rem;padding-inline:.75rem}.staff-portal-app .staff-athlete-directory>.ui-flex-start{grid-template-columns:minmax(0,1fr) auto;display:grid}.staff-portal-app .staff-athlete-directory>.ui-flex-start>input[type=search]{grid-column:1/-1;width:100%}.staff-portal-app .sp-db-console .sp-table-wrap{overflow-x:auto}.staff-portal-app .sp-db-console .sp-table{min-width:42rem}}.staff-portal-app .staff-transactions-workspace{z-index:4;border:1px solid color-mix(in srgb, var(--sp-primary) 24%, var(--sp-hairline));border-radius:var(--sp-radius-md);background:color-mix(in srgb, var(--sp-surface-card) 96%, var(--sp-primary) 4%);box-shadow:var(--sp-shadow-card);gap:1rem;margin-bottom:1.5rem;padding:1rem;display:grid;position:relative}.staff-portal-app .staff-transactions-workspace__header,.staff-portal-app .staff-family-invite-panel__heading{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.staff-portal-app .staff-transactions-workspace .record-picker{width:100%;max-width:100%}.staff-portal-app .staff-transactions-workspace .record-picker-trigger{background:var(--sp-surface-card);min-height:3.15rem}.staff-portal-app .staff-family-invite-panel{width:100%;max-width:100%}.staff-portal-app .staff-family-statement .staff-dashboard-grid{gap:.75rem;width:100%;max-width:100%}.staff-portal-app .staff-family-statement .staff-stat-card{min-height:0;padding:.75rem}.staff-portal-app .staff-family-statement .staff-dashboard-grid .staff-stat-card{text-align:center;justify-content:center;align-items:center;min-width:0;padding:.75rem;overflow:hidden}.staff-portal-app .staff-family-statement .staff-dashboard-grid .staff-stat-label{width:100%;line-height:1.25}.staff-portal-app .staff-family-statement .staff-dashboard-grid .staff-stat-value{overflow-wrap:break-word;text-align:center;min-width:0;max-width:100%;font-size:clamp(1.15rem,2.6vw,1.45rem);line-height:1.15}.staff-portal-app .staff-family-statement .staff-dashboard-grid .staff-stat-value--sm{font-size:clamp(.92rem,2.1vw,1.08rem)}.staff-portal-app .staff-family-statement .staff-cms-field-grid>*{min-width:0}.staff-portal-app .staff-family-statement .staff-cms-inline-form .ui-input-dark{text-overflow:ellipsis;min-width:0;overflow:hidden}.staff-portal-app .staff-family-statement .staff-cms-inline-form .ui-input-dark::placeholder{font-size:.88em}.staff-portal-app .staff-family-statement .staff-cms-section-label{border-top:1px solid var(--sp-hairline-soft);margin-top:1.25rem;padding-top:1rem}.staff-portal-app .staff-family-statement>.staff-cms-row+.staff-cms-inline-form{margin-top:.75rem}body.sp-drawer-open{overscroll-behavior:none}.staff-portal-app .sp-drawer-backdrop{z-index:1100}.staff-portal-app .sp-drawer{z-index:1101;height:100dvh;max-height:100dvh}.staff-portal-app .sp-drawer-body{overscroll-behavior:contain;scrollbar-gutter:stable;-webkit-overflow-scrolling:touch;min-height:0}@media (width<=900px){.staff-portal-app .staff-family-statement .staff-dashboard-grid{grid-template-columns:minmax(0,1fr)}}@media (width<=600px){.staff-portal-app .staff-transactions-workspace{border-radius:var(--sp-radius-sm);padding:.75rem}.staff-portal-app .staff-transactions-workspace__header,.staff-portal-app .staff-family-invite-panel__heading{flex-direction:column;align-items:stretch;gap:.75rem}.staff-portal-app .staff-transactions-workspace__header .btn,.staff-portal-app .staff-family-invite-panel__heading .btn{justify-content:center;width:100%}.staff-portal-app .staff-family-statement .staff-dashboard-grid{gap:.5rem}.staff-portal-app .staff-family-statement .staff-stat-card{padding:.75rem}.staff-portal-app .staff-family-statement .staff-dashboard-grid .staff-stat-card{padding:.75rem .5rem}.staff-portal-app .sp-drawer{width:100%;max-width:none}.staff-portal-app .sp-drawer-top,.staff-portal-app .sp-drawer-hero,.staff-portal-app .sp-drawer-body{padding-left:1rem;padding-right:1rem}}body.portal-app:not(.staff-portal-app) .portal-home,body.portal-app:not(.staff-portal-app) .parent-athletes-page{grid-template-columns:minmax(0,1fr);gap:24px;line-height:20px;display:grid}body.portal-app:not(.staff-portal-app) .portal-home>*,body.portal-app:not(.staff-portal-app) .parent-athletes-page>*{min-width:0;margin-top:0;margin-bottom:0}body.portal-app:not(.staff-portal-app) .portal-home .customer-portal-page-header,body.portal-app:not(.staff-portal-app) .parent-athletes-page .customer-portal-page-header{border-bottom:1px solid var(--cp-hairline-soft);gap:16px;margin-bottom:0;padding-bottom:24px}body.portal-app:not(.staff-portal-app) .portal-home .portal-panel-card,body.portal-app:not(.staff-portal-app) .parent-athletes-page .portal-panel-card,body.portal-app:not(.staff-portal-app) .portal-home .portal-bento-card{background:var(--cp-surface-section);border:1px solid var(--cp-hairline);border-radius:var(--cp-radius-md,14px);box-shadow:none;color:var(--cp-ink)}body.portal-app:not(.staff-portal-app) .portal-home .portal-panel-card,body.portal-app:not(.staff-portal-app) .parent-athletes-page .portal-panel-card{margin-bottom:0;padding:24px}body.portal-app:not(.staff-portal-app) .portal-home .portal-grouped-list,body.portal-app:not(.staff-portal-app) .parent-athletes-page .parent-athlete-stats,body.portal-app:not(.staff-portal-app) .parent-athletes-page .parent-athlete-billing-values>div,body.portal-app:not(.staff-portal-app) .parent-athletes-page .parent-enrollment-card,body.portal-app:not(.staff-portal-app) .parent-athletes-page .parent-athlete-medical{background:var(--cp-surface-raised);border:1px solid var(--cp-hairline-soft);border-radius:var(--cp-radius-sm,8px);box-shadow:none}body.portal-app:not(.staff-portal-app) .portal-home .portal-brand-eyebrow,body.portal-app:not(.staff-portal-app) .portal-home .portal-home-actions-title,body.portal-app:not(.staff-portal-app) .portal-home .portal-bento-label,body.portal-app:not(.staff-portal-app) .parent-athletes-page .portal-brand-eyebrow,body.portal-app:not(.staff-portal-app) .parent-athletes-page .parent-athlete-section-label,body.portal-app:not(.staff-portal-app) .parent-athletes-page .parent-athlete-section-heading span,body.portal-app:not(.staff-portal-app) .parent-athletes-page .parent-athlete-stats span,body.portal-app:not(.staff-portal-app) .parent-athletes-page .parent-athlete-billing-values span,body.portal-app:not(.staff-portal-app) .parent-athletes-page .parent-athlete-medical strong,body.portal-app:not(.staff-portal-app) .parent-athletes-page .portal-enrollment-coach-label,body.portal-app:not(.staff-portal-app) .parent-athletes-page .parent-absence-history>span,body.portal-app:not(.staff-portal-app) .parent-athletes-page .parent-enrollment-attendance span,body.portal-app:not(.staff-portal-app) .parent-athletes-page .sp-chip,body.portal-app:not(.staff-portal-app) .parent-athletes-page .staff-cms-status-chip{font-family:var(--font-body);font-size:12px;line-height:16px}body.portal-app:not(.staff-portal-app) .portal-home,body.portal-app:not(.staff-portal-app) .portal-home p,body.portal-app:not(.staff-portal-app) .portal-home label,body.portal-app:not(.staff-portal-app) .portal-home small,body.portal-app:not(.staff-portal-app) .portal-home .portal-page-subtitle,body.portal-app:not(.staff-portal-app) .portal-home .ui-text-sm,body.portal-app:not(.staff-portal-app) .portal-home .portal-bento-hint,body.portal-app:not(.staff-portal-app) .portal-home .portal-athlete-row strong,body.portal-app:not(.staff-portal-app) .portal-home .portal-grouped-list-row,body.portal-app:not(.staff-portal-app) .parent-athletes-page,body.portal-app:not(.staff-portal-app) .parent-athletes-page p,body.portal-app:not(.staff-portal-app) .parent-athletes-page label,body.portal-app:not(.staff-portal-app) .parent-athletes-page small,body.portal-app:not(.staff-portal-app) .parent-athletes-page .portal-page-subtitle,body.portal-app:not(.staff-portal-app) .parent-athletes-page .ui-text-sm,body.portal-app:not(.staff-portal-app) .parent-athletes-page .parent-athlete-meta,body.portal-app:not(.staff-portal-app) .parent-athletes-page .parent-athlete-medical span,body.portal-app:not(.staff-portal-app) .parent-athletes-page .parent-athlete-empty-note,body.portal-app:not(.staff-portal-app) .parent-athletes-page .parent-athlete-billing-values small,body.portal-app:not(.staff-portal-app) .parent-athletes-page .parent-athlete-section--billing>p,body.portal-app:not(.staff-portal-app) .parent-athletes-page .parent-athlete-section-heading>a,body.portal-app:not(.staff-portal-app) .parent-athletes-page .parent-athlete-section-heading>strong,body.portal-app:not(.staff-portal-app) .parent-athletes-page .parent-athlete-enrollment-price,body.portal-app:not(.staff-portal-app) .parent-athletes-page .parent-enrollment-meta,body.portal-app:not(.staff-portal-app) .parent-athletes-page .parent-enrollment-attendance strong,body.portal-app:not(.staff-portal-app) .parent-athletes-page .portal-enrollment-coach-name{font-family:var(--font-body);font-size:14px;line-height:20px}body.portal-app:not(.staff-portal-app) .form-group>label{font-family:var(--font-body);margin-left:0;font-size:12px;line-height:16px}body.portal-app:not(.staff-portal-app) .portal-home .portal-section-title,body.portal-app:not(.staff-portal-app) .parent-athletes-page .portal-section-title,body.portal-app:not(.staff-portal-app) .parent-athletes-page h3.ui-mb-1,body.portal-app:not(.staff-portal-app) .parent-athletes-page .parent-athlete-identity h2,body.portal-app:not(.staff-portal-app) .parent-athletes-page .parent-athlete-section-heading h3,body.portal-app:not(.staff-portal-app) .parent-athletes-page .parent-athlete-stats strong,body.portal-app:not(.staff-portal-app) .parent-athletes-page .parent-athlete-billing-values strong,body.portal-app:not(.staff-portal-app) .parent-athletes-page .parent-enrollment-name{font-family:var(--font-body);letter-spacing:-.01em;color:var(--cp-ink);font-size:20px;font-weight:600;line-height:28px}body.portal-app:not(.staff-portal-app) .parent-athletes-page .parent-athlete-section-heading h3{color:var(--cp-muted);font-weight:500}body.portal-app:not(.staff-portal-app) .portal-home .portal-bento-value{font-family:var(--font-heading);color:var(--cp-ink);font-size:28px;font-weight:600;line-height:32px}body.portal-app:not(.staff-portal-app) .portal-home .portal-bento-value,body.portal-app:not(.staff-portal-app) .parent-athletes-page .parent-athlete-stats strong,body.portal-app:not(.staff-portal-app) .parent-athletes-page .parent-athlete-billing-values strong,body.portal-app:not(.staff-portal-app) .parent-athletes-page .parent-athlete-enrollment-price,body.portal-app:not(.staff-portal-app) .parent-athletes-page .parent-athlete-meta,body.portal-app:not(.staff-portal-app) .parent-athletes-page .parent-enrollment-attendance,body.portal-app:not(.staff-portal-app) .parent-athletes-page .parent-absence-history time{font-variant-numeric:tabular-nums;font-feature-settings:"tnum"}body.portal-app:not(.staff-portal-app) .portal-home .portal-bento-value.is-warn,body.portal-app:not(.staff-portal-app) .portal-home .portal-bento-value.is-accent,body.portal-app:not(.staff-portal-app) .parent-athletes-page .parent-athlete-section-heading>strong,body.portal-app:not(.staff-portal-app) .parent-athletes-page .parent-athlete-section-heading>a,body.portal-app:not(.staff-portal-app) .parent-athletes-page .parent-athlete-empty-note a,body.portal-app:not(.staff-portal-app) .parent-athletes-page .parent-enrollment-attendance strong{color:var(--cp-ink)}body.portal-app:not(.staff-portal-app) .parent-athletes-page .parent-athlete-section-heading span,body.portal-app:not(.staff-portal-app) .parent-athletes-page .parent-athlete-medical strong{color:var(--cp-muted)}body.portal-app:not(.staff-portal-app) .parent-athletes-page .btn-primary{color:var(--cp-ink);border:1px solid var(--cp-hairline);background-color:var(--cp-surface-raised)}body.portal-app:not(.staff-portal-app) .parent-athletes-page .btn-primary:hover{background-color:var(--cp-fill);border-color:var(--cp-hairline)}body.portal-app:not(.staff-portal-app) .parent-athletes-page .portal-page-header-actions .btn-primary{color:#fff;background-color:var(--cp-primary);border:1px solid #ffffff24}body.portal-app:not(.staff-portal-app) .parent-athletes-page .portal-page-header-actions .btn-primary:hover{background-color:var(--color-primary-light);border-color:#ffffff24}body.portal-app:not(.staff-portal-app) .portal-home .portal-bento-card--link:hover,body.portal-app:not(.staff-portal-app) .portal-home .portal-bento-card--link:active{border-color:var(--cp-hairline);transform:none}body.portal-app:not(.staff-portal-app) .portal-home .portal-toggle-input,body.portal-app:not(.staff-portal-app) .portal-home .portal-toggle-input:checked{border:1px solid var(--cp-hairline);background:var(--cp-surface-input);width:44px;max-width:44px;height:24px;min-height:24px;box-shadow:none;border-radius:999px;flex:0 0 44px}body.portal-app:not(.staff-portal-app) .portal-home .portal-toggle-input:checked{background:var(--cp-surface-raised)}body.portal-app:not(.staff-portal-app) .portal-home .portal-toggle-input:after{content:"";width:16px;height:16px;box-shadow:none;background:#55555e;border-radius:50%;transition:transform .2s,background-color .2s;position:absolute;top:3px;left:3px}body.portal-app:not(.staff-portal-app) .portal-home .portal-toggle-input:checked:after{background:var(--cp-ink);transform:translate(20px)}body.portal-app:not(.staff-portal-app) .portal-home .portal-home-tasks{margin:0}body.portal-app:not(.staff-portal-app) .portal-home .portal-home-actions-title{margin:0 0 12px}body.portal-app:not(.staff-portal-app) .portal-home .portal-home-tasks-actions,body.portal-app:not(.staff-portal-app) .portal-home .portal-bento-grid{gap:16px}body.portal-app:not(.staff-portal-app) .portal-home .portal-home-more{gap:24px}body.portal-app:not(.staff-portal-app) .portal-home .portal-bento-card{gap:4px;padding:16px}body.portal-app:not(.staff-portal-app) .portal-home .portal-home-tasks .portal-home-task-btn,body.portal-app:not(.staff-portal-app) .portal-home .ui-badge-btn{min-height:var(--cp-control-h);height:var(--cp-control-h)}body.portal-app:not(.staff-portal-app) .portal-home .ui-border-b{border-bottom:1px solid var(--cp-hairline-soft);margin-bottom:16px;padding-bottom:16px}body.portal-app:not(.staff-portal-app) .portal-home .ui-flex-between.ui-border-b,body.portal-app:not(.staff-portal-app) .portal-home .ui-flex-between.ui-flex-wrap{border-bottom:1px solid var(--cp-hairline-soft);gap:16px;margin-bottom:16px;padding-bottom:16px}body.portal-app:not(.staff-portal-app) .portal-home .portal-grouped-list-row{gap:16px;min-height:56px;padding:16px}body.portal-app:not(.staff-portal-app) .portal-home .portal-athlete-row{border-top:1px solid var(--cp-hairline-soft);gap:16px;padding:16px 0}body.portal-app:not(.staff-portal-app) .portal-home .portal-athlete-row:first-child{border-top-color:#0000;padding-top:16px}body.portal-app:not(.staff-portal-app) .portal-home .portal-athlete-row>div{gap:4px}body.portal-app:not(.staff-portal-app) .portal-home .portal-toggle-row{align-items:center;gap:16px;min-height:32px;margin:0}body.portal-app:not(.staff-portal-app) .portal-home .portal-home-notifications{gap:16px;display:grid}body.portal-app:not(.staff-portal-app) .portal-home .portal-home-notifications .form-group,body.portal-app:not(.staff-portal-app) .portal-home .portal-home-notifications .portal-toggle-row{margin:0}body.portal-app:not(.staff-portal-app) .portal-home .portal-home-notifications .btn{justify-self:start}body.portal-app:not(.staff-portal-app) .portal-home .portal-announcement-list{gap:16px}body.portal-app:not(.staff-portal-app) .portal-home .portal-announcement-item{padding-bottom:16px}body.portal-app:not(.staff-portal-app) .parent-athletes-page .parent-athlete-profiles{gap:24px;display:grid}body.portal-app:not(.staff-portal-app) .parent-athletes-page .parent-athlete-profile.portal-panel-card{gap:24px;padding:24px}body.portal-app:not(.staff-portal-app) .parent-athletes-page .parent-athlete-section{background:0 0;border:0;border-radius:0;margin:0;padding:0}body.portal-app:not(.staff-portal-app) .parent-athletes-page .parent-athlete-profile-hero{border-bottom:0;gap:16px;padding-bottom:0}body.portal-app:not(.staff-portal-app) .parent-athletes-page .parent-athlete-profile-person{gap:16px}body.portal-app:not(.staff-portal-app) .parent-athletes-page .parent-athlete-profile-actions{gap:8px}body.portal-app:not(.staff-portal-app) .parent-athletes-page .parent-athlete-meta{color:var(--cp-muted);gap:4px 16px;margin-top:4px}body.portal-app:not(.staff-portal-app) .parent-athletes-page .parent-athlete-credit-chip{margin-top:8px;display:inline-block}body.portal-app:not(.staff-portal-app) .parent-athletes-page .parent-athlete-avatar{border:1px solid var(--cp-hairline);width:40px;height:40px}body.portal-app:not(.staff-portal-app) .parent-athletes-page .parent-athlete-photo-button{border:1px solid var(--cp-hairline);background:var(--cp-surface-raised);width:20px;height:20px;color:var(--cp-ink);font-size:10px;bottom:-4px;right:-4px}body.portal-app:not(.staff-portal-app) .parent-athletes-page .portal-enrollment-coach-img{border:1px solid var(--cp-hairline);width:40px;height:40px}body.portal-app:not(.staff-portal-app) .parent-athletes-page .portal-enrollment-coach{gap:12px;margin-top:16px}body.portal-app:not(.staff-portal-app) .parent-athletes-page .portal-enrollment-coach-info{gap:0}body.portal-app:not(.staff-portal-app) .parent-athletes-page .parent-athlete-stats>div{text-align:left;background:0 0;border-left:1px solid #0000;padding:12px}body.portal-app:not(.staff-portal-app) .parent-athletes-page .parent-athlete-stats>div+div{border-left-color:var(--cp-hairline-soft)}body.portal-app:not(.staff-portal-app) .parent-athletes-page .parent-athlete-stats span{color:var(--cp-muted);margin-bottom:4px}body.portal-app:not(.staff-portal-app) .parent-athletes-page .parent-athlete-section-heading{gap:16px;margin-bottom:12px}body.portal-app:not(.staff-portal-app) .parent-athletes-page .parent-athlete-section-heading span{margin-bottom:4px}body.portal-app:not(.staff-portal-app) .parent-athletes-page .parent-attendance-recovery,body.portal-app:not(.staff-portal-app) .parent-athletes-page .parent-athlete-section--billing,body.portal-app:not(.staff-portal-app) .parent-athletes-page .parent-athlete-section--family,body.portal-app:not(.staff-portal-app) .parent-athletes-page .parent-athlete-inline-form{border-left:0;gap:12px;display:grid}body.portal-app:not(.staff-portal-app) .parent-athletes-page .parent-athlete-section--document{border-left:0;gap:16px}body.portal-app:not(.staff-portal-app) .parent-athletes-page .parent-athlete-inline-actions{gap:8px}body.portal-app:not(.staff-portal-app) .parent-athletes-page .parent-athlete-billing-values{gap:16px}body.portal-app:not(.staff-portal-app) .parent-athletes-page .parent-athlete-billing-values>div{gap:4px;padding:16px;display:grid}body.portal-app:not(.staff-portal-app) .parent-athletes-page .parent-athlete-billing-values strong{margin:0}body.portal-app:not(.staff-portal-app) .parent-athletes-page .parent-athlete-billing-values span,body.portal-app:not(.staff-portal-app) .parent-athletes-page .parent-athlete-billing-values small,body.portal-app:not(.staff-portal-app) .parent-athletes-page .parent-athlete-section--billing>p{color:var(--cp-muted)}body.portal-app:not(.staff-portal-app) .parent-athletes-page .parent-athlete-medical{border:1px solid color-mix(in srgb, var(--color-danger) 40%, transparent);gap:4px;padding:16px;display:grid}body.portal-app:not(.staff-portal-app) .parent-athletes-page .parent-athlete-empty-note{color:var(--cp-muted);font-style:normal}body.portal-app:not(.staff-portal-app) .parent-athletes-page .parent-enrollment-list{gap:12px}body.portal-app:not(.staff-portal-app) .parent-athletes-page .parent-enrollment-card{gap:16px;padding:16px}body.portal-app:not(.staff-portal-app) .parent-athletes-page .parent-enrollment-name{margin-bottom:4px;display:block}body.portal-app:not(.staff-portal-app) .parent-athletes-page .parent-enrollment-meta{color:var(--cp-muted);flex-wrap:wrap;gap:4px 16px;display:flex}body.portal-app:not(.staff-portal-app) .parent-athletes-page .parent-enrollment-meta i{font-size:12px}body.portal-app:not(.staff-portal-app) .parent-athletes-page .parent-enrollment-facts{flex-wrap:wrap;align-items:center;gap:16px;display:flex}body.portal-app:not(.staff-portal-app) .parent-athletes-page .parent-enrollment-attendance{text-align:right;gap:4px;display:grid}body.portal-app:not(.staff-portal-app) .parent-athletes-page .parent-enrollment-attendance span{color:var(--cp-muted)}body.portal-app:not(.staff-portal-app) .parent-athletes-page .sp-chip,body.portal-app:not(.staff-portal-app) .parent-athletes-page .staff-cms-status-chip{text-transform:uppercase;border-radius:4px;height:20px;padding:0 8px;font-weight:700;line-height:20px;display:inline-block}body.portal-app:not(.staff-portal-app) .parent-athletes-page .sp-chip{color:var(--cp-muted);background:var(--cp-surface-raised);border:1px solid var(--cp-hairline-soft);text-transform:none}body.portal-app:not(.staff-portal-app) .parent-athletes-page .parent-absence-history{gap:4px}body.portal-app:not(.staff-portal-app) .portal-home .portal-athlete-row strong{font-weight:600}body.portal-app:not(.staff-portal-app) .parent-athletes-page .parent-athlete-section-heading span,body.portal-app:not(.staff-portal-app) .parent-athletes-page .parent-athlete-medical strong,body.portal-app:not(.staff-portal-app) .parent-athletes-page .parent-athlete-stats span,body.portal-app:not(.staff-portal-app) .parent-athletes-page .parent-athlete-billing-values span,body.portal-app:not(.staff-portal-app) .parent-athletes-page .parent-athlete-section-label{letter-spacing:.06em;font-weight:700}body.portal-app:not(.staff-portal-app) .parent-athletes-page .parent-athlete-medical strong{margin:0}body.portal-app:not(.staff-portal-app) .parent-athletes-page .parent-athlete-section--family{gap:4px}body.portal-app:not(.staff-portal-app) .parent-athletes-page .parent-athlete-section--family>.ui-flex-start{margin-top:8px}body.portal-app:not(.staff-portal-app) .parent-athletes-page .parent-athlete-section--document>div{gap:4px;display:grid}body.portal-app:not(.staff-portal-app) .portal-brand-eyebrow,body.portal-app:not(.staff-portal-app) .portal-home-eyebrow{margin:0 0 4px}body.portal-app:not(.staff-portal-app) .btn{padding-left:16px;padding-right:16px}body.portal-app:not(.staff-portal-app) .parent-athletes-page .parent-athlete-profile-actions .btn{gap:8px}body.portal-app:not(.staff-portal-app) .parent-athletes-page .parent-makeup-workspace,body.portal-app:not(.staff-portal-app) .parent-athletes-page .parent-makeup-requests,body.portal-app:not(.staff-portal-app) .parent-athletes-page .parent-makeup-list{gap:12px}@media (width<=560px){body.portal-app:not(.staff-portal-app) .portal-home .portal-panel-card,body.portal-app:not(.staff-portal-app) .parent-athletes-page .portal-panel-card{padding:16px}body.portal-app:not(.staff-portal-app) .parent-athletes-page .parent-athlete-profile.portal-panel-card{gap:16px;padding:16px}.parent-athlete-switcher{flex-wrap:wrap;justify-content:flex-start;gap:8px;margin:0;padding:0;overflow-x:visible}.parent-athlete-switcher button{flex:0 auto;gap:8px;min-width:0;min-height:48px;padding:8px 12px}.parent-athlete-switcher img{flex:none;width:32px;height:32px}body.portal-app:not(.staff-portal-app) .portal-home .portal-athlete-list{border:1px solid var(--cp-hairline-soft);border-radius:var(--cp-radius-sm,8px);background:var(--cp-surface-raised);overflow:hidden}body.portal-app:not(.staff-portal-app) .portal-home .portal-athlete-row{border-top:1px solid var(--cp-hairline-soft);gap:12px;padding:12px 16px}body.portal-app:not(.staff-portal-app) .portal-home .portal-athlete-row:first-child{border-top-color:#0000;padding-top:12px}body.portal-app:not(.staff-portal-app) .parent-billing-page{background:0 0;border-radius:0;row-gap:12px;padding:0}body.portal-app:not(.staff-portal-app) .parent-billing-page>.portal-panel-card:not(.ui-notice--warn),body.portal-app:not(.staff-portal-app) .parent-billing-top-grid>.portal-panel-card{border:1px solid var(--cp-hairline);border-radius:var(--cp-radius-md,14px);background:var(--cp-surface-section);padding:16px}body.portal-app:not(.staff-portal-app) .parent-billing-page>.ui-notice--warn{padding:16px}body.portal-app:not(.staff-portal-app) .parent-billing-page>*+*,body.portal-app:not(.staff-portal-app) .parent-billing-page>:has(.parent-billing-table)+*,body.portal-app:not(.staff-portal-app) .parent-billing-page>:has(.parent-billing-table tfoot)+*,body.portal-app:not(.staff-portal-app) .parent-billing-page>:has(.parent-billing-table-note)+*{margin-top:0}body.portal-app:not(.staff-portal-app) .parent-billing-page>.customer-portal-page-header{background:0 0;border:0;padding:0}body.portal-app:not(.staff-portal-app) .parent-billing-top-grid{gap:12px}}@media (width<=900px){body.portal-app:not(.staff-portal-app) .ui-badge-btn{min-height:var(--cp-control-h)}body.portal-app:not(.staff-portal-app) .theme-toggle-btn{width:var(--cp-control-h);height:var(--cp-control-h)}.customer-portal-shell{padding-top:calc(80px + env(safe-area-inset-top))}}@media (width<=560px){body.portal-app:not(.staff-portal-app) .portal-home .portal-athlete-row>.btn{flex:none}body.portal-app:not(.staff-portal-app) .parent-athletes-page .parent-athlete-photo-button:before{content:"";position:absolute;inset:-14px}body.portal-app:not(.staff-portal-app) .parent-billing-page .billing-invoice-list{border:1px solid var(--cp-hairline-soft);border-radius:var(--cp-radius-sm,8px);background:var(--cp-surface-raised);box-shadow:none}body.portal-app:not(.staff-portal-app) .parent-billing-page .billing-list-item{padding:12px 16px}}.staff-portal-app .form-group input:not([type=checkbox]):not([type=radio]),.staff-portal-app .form-group select,.staff-portal-app .form-group textarea,.staff-portal-app input[type=search],.staff-portal-app input[type=tel]{width:100%;padding:var(--sp-control-pad-y) var(--sp-control-pad-x);min-height:var(--sp-control-h);border-radius:var(--sp-radius-sm);border:1px solid var(--sp-hairline-soft);background:var(--sp-surface-input);color:var(--sp-ink);font-family:var(--sp-font);font-size:var(--sp-control-font)}.staff-portal-app .form-group input[type=date],.staff-portal-app .form-group input[type=time],.staff-portal-app .form-group select,.staff-portal-app input[type=search]{height:var(--sp-control-h)}.staff-portal-app .form-group input:not([type=checkbox]):not([type=radio]):focus,.staff-portal-app .form-group select:focus,.staff-portal-app .form-group textarea:focus,.staff-portal-app input[type=search]:focus{background:var(--sp-surface-input);border:2px solid var(--sp-primary);outline:none;box-shadow:0 0 0 3px #a24dff26}.staff-portal-app .form-group>label{margin-bottom:0;margin-left:0}.staff-portal-app .staff-payments-history{padding:0}.staff-portal-app .staff-payments-history__filters{gap:12px}.staff-portal-app .staff-payments-history__search-field i{font-size:12px;left:12px}.staff-portal-app .form-group .staff-payments-history__search-field input.ui-input-dark{padding-left:36px}.staff-portal-app .staff-payments-history__lead{margin:4px 0 0}.staff-portal-app .sp-db-console{border:1px solid var(--sp-hairline);border-radius:var(--sp-radius-md);background:var(--sp-surface-card);box-shadow:var(--sp-shadow-card)}.staff-portal-app .sp-db-console .sp-table-toolbar{border-bottom:1px solid var(--sp-hairline);background:0 0;padding:8px 12px}.staff-portal-app .sp-db-console__table.sp-table thead th{letter-spacing:.04em;height:32px;color:var(--sp-muted);background:var(--sp-surface-raised);box-shadow:inset 0 -1px 0 var(--sp-hairline);padding:0 12px;font-size:12px}.staff-portal-app .sp-db-console .sp-table tbody td{min-height:0;color:var(--sp-body);padding:0 12px;font-size:14px}.staff-portal-app .sp-db-console .sp-table tbody tr,.staff-portal-app .sp-db-console__table.sp-table--compact tbody tr{height:40px}.staff-portal-app .sp-db-console__table.sp-table--comfortable tbody tr{height:48px}.staff-portal-app .sp-db-console .sp-table tbody tr:hover,.staff-portal-app .sp-db-console__table.sp-table tbody tr:hover{background:var(--sp-surface-raised)}.staff-portal-app .sp-db-console__table.sp-table tbody tr:hover td:first-child{box-shadow:inset 1px 0 0 var(--sp-primary)}.staff-portal-app .sp-db-console__table.sp-table tbody td strong,.staff-portal-app .sp-db-console .sp-class-flow__name{color:var(--sp-ink)}.staff-portal-app .sp-db-console .sp-class-flow__sep{color:var(--sp-muted-soft)}.staff-portal-app .sp-db-console .sp-class-flow__meta{color:var(--sp-muted)}.staff-portal-app .sp-chip{border:1px solid var(--sp-hairline);background:var(--sp-surface-raised);min-height:24px;color:var(--sp-body);margin:0 4px 0 0;padding:0 8px;font-size:12px;line-height:22px}.staff-portal-app .theme-toggle-btn{border-color:var(--sp-hairline)}.staff-portal-app .staff-portal-access-label{color:var(--sp-muted)}.staff-portal-app .density-toggle .btn.is-active,.staff-portal-app .density-toggle .btn[aria-pressed=true]{border-color:var(--sp-hairline)}.staff-portal-app .ui-badge-btn,.staff-portal-app .btn.ui-badge-btn{min-height:var(--sp-control-h-sm);padding:0 12px;font-size:12px}.staff-portal-app .sp-act-on-set-actions .btn,.staff-portal-app .sp-act-on-set-actions .ui-input-dark,.staff-portal-app .sp-saved-views .ui-input-dark,.staff-portal-app .sp-saved-views .btn{box-sizing:border-box;min-height:var(--sp-control-h-sm);height:var(--sp-control-h-sm);padding:0 12px}.staff-portal-app .density-toggle{height:var(--sp-control-h-sm);border-radius:var(--sp-radius-sm);gap:4px;padding:4px}.staff-portal-app .density-toggle .btn{height:100%;min-height:0;padding-inline:12px}.staff-portal-app .staff-portal-header{gap:12px 16px;margin-bottom:12px}.staff-portal-app .staff-portal-eyebrow{margin:0 0 4px}.staff-portal-app .staff-nav-group{margin-bottom:8px}.staff-portal-app .staff-nav-group-header{padding:8px}.staff-portal-app .staff-nav-group-meta{gap:8px}.staff-portal-app .staff-nav-group-count{padding:0 4px}.staff-portal-app .staff-nav-list{gap:4px}.staff-portal-app .staff-nav-item{gap:12px}.staff-portal-app .staff-nav-display-controls{gap:8px;margin:0 0 8px}.staff-portal-app .staff-nav-display-control{padding:4px 8px}.staff-portal-app .sp-act-on-set{gap:8px 16px;margin:0 0 12px;padding:8px 12px}.staff-portal-app .sp-act-on-set-actions,.staff-portal-app .sp-saved-views,.staff-portal-app .sp-table-toolbar,.staff-portal-app .sp-toolbar-controls{gap:8px}.staff-portal-app .athlete-summary-stat{gap:4px;padding:12px 16px}.staff-portal-app .staff-athlete-directory>.ui-flex-start{gap:12px!important}.staff-portal-app .staff-family-directory{gap:12px}.staff-portal-app .staff-family-directory-toolbar{gap:12px 16px}.staff-portal-app .staff-ops-page-title,.staff-portal-app .athlete-summary-stat strong{font-size:20px;line-height:28px}.staff-portal-app .staff-portal-title{font-family:var(--sp-font), var(--font-body), system-ui, sans-serif;letter-spacing:0;color:var(--sp-muted);font-size:14px;font-weight:600;line-height:20px}.staff-portal-app .staff-portal-topnav-label,.staff-portal-app .sp-act-on-set-label,.staff-portal-app .staff-payments-history__lead,.staff-portal-app .portal-card-empty .ui-m-0,.staff-portal-app .sp-table,.staff-portal-app .sp-db-console__table.sp-table,.staff-portal-app .portal-chip{font-size:14px}.staff-portal-app .staff-portal-access-label,.staff-portal-app .staff-ops-page-status,.staff-portal-app .staff-nav-group-label,.staff-portal-app .staff-nav-group-count,.staff-portal-app .staff-nav-display-control,.staff-portal-app .staff-nav-display-control span,.staff-portal-app .staff-stat-label,.staff-portal-app .staff-cal-toolbtn,.staff-portal-app .staff-family-directory-open,.staff-portal-app .staff-portal-search kbd,.staff-portal-app .sp-table thead th,.staff-portal-app .sp-sort-caret,.staff-portal-app .form-group>label{font-size:12px}.staff-portal-app .staff-stat-value{font-size:28px;line-height:32px}.staff-portal-app .staff-stat-value,.staff-portal-app .athlete-summary-stat strong,.staff-portal-app .sp-act-on-set-label,.staff-portal-app .staff-nav-group-count,.staff-portal-app .staff-ops-page-status,.staff-portal-app .sp-table td,.staff-portal-app .sp-table th{font-variant-numeric:tabular-nums;font-feature-settings:"tnum" 1}.staff-portal-app .staff-payments-history__amount{text-align:right;font-variant-numeric:tabular-nums;font-feature-settings:"tnum" 1}.staff-portal-app input[type=checkbox],.staff-portal-app input[type=radio]{width:16px;height:16px;min-height:0}.staff-portal-app .sp-select-col input[type=checkbox]{width:16px;height:16px}.staff-portal-app .staff-nav-item{padding:8px}.staff-portal-app .staff-nav-display-control{gap:8px}.staff-portal-app .staff-cal-toolbtn{min-height:var(--sp-control-h-sm);border-radius:var(--sp-radius-sm);padding:0 12px;font-size:12px}.staff-portal-app .portal-segmented-scroll{gap:8px}.staff-portal-app .portal-chip{min-height:var(--sp-control-h);gap:8px;padding:0 12px}.staff-portal-app .sp-table th .sp-sort-caret{margin-left:4px;font-size:12px}.staff-portal-app .sp-toolbar-controls .btn.ui-badge-btn,.staff-portal-app .enrollment-row-action.btn.ui-badge-btn{padding:0 12px}.staff-portal-app .staff-stat-card{gap:8px;padding:16px}.staff-portal-app .staff-stat-head{gap:8px;margin-bottom:4px}.staff-portal-app .portal-segmented-scroll{padding:4px}body.staff-portal-app .ethereal-lighting{display:none}.staff-portal-app .sp-page-stack,.staff-portal-app .staff-athlete-directory,.staff-portal-app .staff-family-directory,.staff-portal-app .staff-payments-history{align-content:start;gap:var(--sp-stack-gap);grid-template-columns:minmax(0,1fr);display:grid}.staff-portal-app .sp-page-stack>*,.staff-portal-app .staff-athlete-directory>*,.staff-portal-app .staff-family-directory>*,.staff-portal-app .staff-payments-history>*{margin-block:0!important}.staff-portal-app .sp-page-stack>.staff-ops-page-header,.staff-portal-app .staff-athlete-directory>.staff-ops-page-header,.staff-portal-app .staff-family-directory>.staff-ops-page-header,.staff-portal-app .staff-payments-history>.staff-ops-page-header,.staff-portal-app .ui-mb-0{margin-bottom:0!important}.staff-portal-app .density-toggle{background:var(--sp-surface-input)}.staff-portal-app .density-toggle .btn{color:var(--sp-muted);background:0 0}.staff-portal-app .density-toggle .btn.is-active,.staff-portal-app .density-toggle .btn[aria-pressed=true]{background:var(--sp-surface-raised);border-color:var(--sp-hairline);color:var(--sp-ink);font-weight:700}.staff-portal-app .sp-columns-menu>.btn,.staff-portal-app .sp-toolbar-controls>.btn{background-color:var(--sp-surface-raised);background-image:none}.staff-portal-app .staff-family-directory-col-money{text-align:right;white-space:nowrap;width:7.5rem}.staff-portal-app .staff-family-directory-col-location{white-space:nowrap;text-overflow:ellipsis;width:9rem;overflow:hidden}.staff-portal-app .staff-family-directory-col-phone,.staff-portal-app .staff-family-directory-col-aging{white-space:nowrap}.staff-portal-app .staff-family-directory-col-aging>.ui-text-muted{padding-inline:9px;display:inline-block}.staff-portal-app .staff-family-directory-col-name,.staff-portal-app .staff-family-directory-col-athletes{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.staff-portal-app .staff-family-directory-col-athletes{max-width:20rem}.staff-portal-app .staff-family-directory-col-name .sp-class-flow,.staff-portal-app .staff-family-directory-col-athletes .sp-class-flow{white-space:nowrap}.staff-portal-app .sp-chip--warn{border-color:color-mix(in srgb, var(--sp-warn) 35%, transparent);background:color-mix(in srgb, var(--sp-warn) 12%, var(--sp-surface-raised));color:var(--sp-warn)}.staff-portal-app .sp-chip--danger{border-color:color-mix(in srgb, var(--sp-danger) 35%, transparent);background:color-mix(in srgb, var(--sp-danger) 12%, var(--sp-surface-raised));color:var(--sp-danger)}.staff-portal-app input[type=checkbox]{appearance:none;box-sizing:border-box;background-color:var(--sp-surface-input);border:1px solid var(--sp-hairline);cursor:pointer;vertical-align:middle;border-radius:4px;width:16px;height:16px;min-height:0}.staff-portal-app input[type=checkbox]:checked{background-color:var(--sp-primary);border-color:var(--sp-primary);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='none' stroke='%23fff' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round' d='M3.5 8.5l3 3 6-7'/%3E%3C/svg%3E");background-position:50%;background-repeat:no-repeat;background-size:12px 12px}.staff-portal-app input[type=checkbox]:disabled{opacity:.45;cursor:not-allowed}.staff-portal-app input[type=checkbox]:focus-visible{outline:2px solid var(--sp-primary);outline-offset:2px}.staff-portal-app .sp-table th:has(>input[type=checkbox]),.staff-portal-app .sp-table td:has(>input[type=checkbox]),.staff-portal-app .sp-table th.sp-select-col,.staff-portal-app .sp-table td.sp-select-col{vertical-align:middle}.staff-portal-app .sp-table th>input[type=checkbox],.staff-portal-app .sp-table td>input[type=checkbox]{margin:0 auto;display:block}.staff-portal-app .sp-table thead th.staff-family-directory-col-money,.staff-portal-app .sp-table thead th.staff-payments-history__amount{text-align:right}.staff-portal-app .sp-table-wrap{border-color:var(--sp-hairline)}.staff-portal-app .navbar.staff-portal-navbar .logo-img,.staff-portal-app .navbar.staff-portal-navbar .logo-img:hover{filter:none}.staff-portal-app .btn:has(>i[class*=fa-]),.staff-portal-app .btn:has(>svg),.staff-portal-app .theme-toggle-btn:has(>i[class*=fa-]),.staff-portal-app .staff-nav-display-control:has(>i[class*=fa-]),.staff-portal-app .staff-attendance-mode>button:has(>i[class*=fa-]),.staff-portal-app .portal-segmented-scroll>button:has(>i[class*=fa-]){gap:8px}.staff-portal-app .sp-table thead th{height:32px;font-family:var(--font-heading), var(--sp-font), system-ui, sans-serif;letter-spacing:.04em;text-transform:uppercase;color:var(--sp-muted);background:var(--sp-surface-raised);box-shadow:inset 0 -1px 0 var(--sp-hairline);padding:0 12px;font-size:12px;font-weight:750}:where(body.staff-portal-app) section{padding-block:0}.staff-portal-app .sp-page-stack>.staff-ops-page-header:not(:first-child),.staff-portal-app .sp-page-stack>:has(>.staff-ops-page-header):not(:first-child){margin-block-start:12px!important}.staff-portal-app .sp-page-stack>.staff-ops-page-header~* .staff-ops-page-title,.staff-portal-app .staff-ops-form-card .staff-ops-page-title,.staff-portal-app .staff-ops-form-card>h3,.staff-portal-app .staff-transactions-workspace__header h4{letter-spacing:.01em;color:var(--sp-ink);font-size:14px;font-weight:750;line-height:20px}.staff-portal-app .staff-ops-form-card,.staff-portal-app .staff-ops-form-card.ui-card-sm,.staff-portal-app .staff-insights-ask,.staff-portal-app .staff-insights-answer,.staff-portal-app .staff-insights-locked,.staff-portal-app .staff-insights-prompts{max-width:none}.staff-portal-app .staff-ops-form-card,.staff-portal-app .staff-ops-form-card.ui-card-sm{padding:12px 16px}.staff-portal-app .staff-ops-form-card>.ui-text-sm{margin:0 0 12px}.staff-portal-app .staff-ops-form-actions{gap:8px;margin-top:0}.staff-portal-app .staff-ops-form-grid>.staff-ops-form-actions{margin-top:0}.staff-portal-panel h3:not(.staff-ops-page-title){margin:0 0 8px}.staff-portal-app .staff-ops-form-card>p.ui-m-0{font-size:14px}.staff-portal-app .staff-frontdesk-title,.staff-portal-app .staff-stat-delta,.staff-portal-app .staff-overview-label,.staff-portal-app .staff-dash-panel-title,.staff-portal-app .staff-dash-panel-head h4,.staff-portal-app .staff-dash-panel>h4,.staff-portal-app .staff-event-month,.staff-portal-app .staff-event-meta,.staff-portal-app .staff-chart-legend,.staff-portal-app .staff-chart-total-sub,.staff-portal-app .staff-activity-time,.staff-portal-app .staff-activity-foot,.staff-portal-app .staff-priority-icon,.staff-portal-app .staff-priority-action,.staff-portal-app .record-picker-label,.staff-portal-app .staff-insights-label,.staff-portal-app .staff-insights-hint,.staff-portal-app .staff-insights-kicker,.staff-portal-app .staff-insights-headline,.staff-portal-app .staff-insights-history-title{font-size:12px}.staff-portal-app .staff-frontdesk-link,.staff-portal-app .staff-frontdesk-row,.staff-portal-app .staff-frontdesk-class,.staff-portal-app .staff-frontdesk-empty,.staff-portal-app .staff-frontdesk-more,.staff-portal-app .staff-frontdesk-class-main,.staff-portal-app .staff-frontdesk-class-time,.staff-portal-app .staff-frontdesk-class-seats,.staff-portal-app .staff-activity-item,.staff-portal-app .staff-activity-text,.staff-portal-app .staff-priority-item,.staff-portal-app .staff-event-name,.staff-portal-app .staff-event-day,.staff-portal-app .ui-btn-link,.staff-portal-app .staff-insights-asked,.staff-portal-app .staff-insights-caption,.staff-portal-app .staff-insights-empty,.staff-portal-app .staff-insights-breakdown li,.staff-portal-app .staff-insights-history button{font-size:14px}.staff-portal-app .staff-insights-value{font-size:28px;line-height:32px}@media (width>=641px){.staff-portal-app .staff-chart-total{font-size:28px;line-height:32px}}.staff-portal-app .staff-frontdesk-row strong,.staff-portal-app .staff-frontdesk-row span{font-size:14px}.staff-portal-app .staff-dash-panel-title,.staff-portal-app .staff-dash-panel-head h4,.staff-portal-app .staff-dash-panel>h4,.staff-portal-app .staff-overview-label,.staff-portal-app .staff-event-month{color:var(--sp-muted)}.staff-portal-app .staff-frontdesk-link,.staff-portal-app .staff-insights-history button{color:var(--sp-body)}.staff-portal-app .staff-transactions-workspace{border-color:var(--sp-hairline);background:var(--sp-surface-card);gap:12px;margin-bottom:0;padding:16px}.staff-portal-app .staff-transactions-workspace .record-picker-trigger{min-height:var(--sp-control-h);height:var(--sp-control-h)}.staff-portal-app .staff-frontdesk{margin:0}.staff-portal-app .staff-frontdesk-grid{gap:12px}.staff-portal-app .staff-frontdesk-panel{padding:12px 16px}.staff-portal-app .staff-frontdesk-panel-head{gap:12px;margin-bottom:4px}.staff-portal-app .staff-frontdesk-title{margin:0 0 8px}.staff-portal-app .staff-frontdesk-panel-head .staff-frontdesk-title{margin-bottom:0}.staff-portal-app .staff-frontdesk-link{padding:0 8px}.staff-portal-app .staff-frontdesk-row,.staff-portal-app .staff-frontdesk-class{padding-block:8px}.staff-portal-app .staff-frontdesk-class-item{gap:8px}.staff-overview{margin-top:0}.staff-overview-band{padding:16px}.staff-overview-label{margin:0 0 12px}.staff-overview-grid{gap:12px}.staff-dash-panel{padding:12px 16px}.staff-dash-panel-head{gap:8px;margin-bottom:8px}.staff-dash-panel-title,.staff-dash-panel-head h4,.staff-dash-panel>h4{margin:0 0 8px}.staff-dash-panel-head h4{margin-bottom:0}.staff-portal-app .staff-dash-cols{margin-top:0}.staff-priority-list{gap:8px}.staff-priority-item{gap:12px;padding:8px 12px}.staff-stat-delta--good,.staff-stat-delta--bad{padding:4px 8px}@media (width>=641px){.staff-chart-card{padding:12px 16px}.staff-chart-head{gap:16px;margin-bottom:12px}}.staff-chart-card .staff-dash-panel-title{margin-bottom:4px}.staff-chart-total{margin-top:0}.staff-chart-legend{gap:16px}.staff-event-list{gap:4px}.staff-event-item{gap:12px;padding:8px 4px}.staff-event-info{gap:4px}@media (width>=641px){.staff-activity-item{gap:12px;padding:8px 4px}}.staff-activity-foot{gap:4px 12px;margin:12px 0 0}.staff-activity-history{gap:12px}.staff-portal-app .staff-insights-label{margin:0 0 8px}.staff-portal-app .staff-insights-row{gap:8px}.staff-portal-app .staff-insights-ranges{gap:8px;margin:12px 0 8px}.staff-portal-app .staff-insights-prompts{gap:8px}.staff-portal-app .staff-insights-prompts .portal-chip{min-width:0;min-height:var(--sp-control-h-sm);border-color:var(--sp-hairline);background:var(--sp-surface-raised);color:var(--sp-body);flex:none}.staff-portal-app .staff-insights-input{height:var(--sp-control-h);min-height:var(--sp-control-h);border-color:var(--sp-hairline-soft);background:var(--sp-surface-input);border-radius:var(--sp-radius-sm);padding:0 12px}.staff-portal-app .staff-insights-kicker,.staff-portal-app .staff-insights-asked{margin:0 0 4px}.staff-portal-app .staff-insights-locked h4{margin:0 0 4px;font-size:14px}.staff-portal-app .staff-insights-value{margin:4px 0}.staff-portal-app .staff-insights-caption,.staff-portal-app .staff-insights-empty,.staff-portal-app .staff-insights-breakdown{margin:0 0 12px}.staff-portal-app .staff-insights-breakdown li{gap:16px;padding:8px 0}.staff-portal-app .staff-insights-history-title{margin:0 0 4px}.staff-portal-app .staff-insights-history button{padding:4px 0}.staff-portal-app .sp-table td.sp-col-num,.staff-portal-app .sp-table th.sp-col-num{text-align:right;white-space:nowrap;width:7rem}.staff-overview{background:var(--sp-surface-card)}.staff-portal-app .ui-btn-link{color:var(--sp-body)}.staff-portal-app .ui-btn-link:hover{color:var(--sp-ink)}.staff-activity-scroller{padding-right:4px}.staff-activity-list{gap:4px}.staff-priority-action{padding:4px 8px}.staff-portal-app .staff-frontdesk-empty,.staff-portal-app .staff-frontdesk-more{margin:8px 0 0}.staff-portal-app .staff-frontdesk-class-main{gap:4px}.staff-donut-row{gap:16px}.staff-donut-legend{gap:8px}.staff-donut-legend li{gap:8px;font-size:14px}.staff-portal-app .staff-frontdesk-class-main strong{font-size:14px}.staff-portal-app .staff-frontdesk-class-meta{font-size:12px}.staff-portal-app .staff-chart-total,.staff-portal-app .staff-chart-total-sub,.staff-portal-app .staff-priority-text,.staff-portal-app .staff-frontdesk-row strong,.staff-portal-app .staff-donut-total,.staff-portal-app .staff-donut-amt,.staff-portal-app .staff-activity-text{font-variant-numeric:tabular-nums;font-feature-settings:"tnum" 1}.staff-overview .staff-stat-card{background:var(--sp-surface-raised)}.staff-chart-legend>span{gap:8px}.staff-portal-app .staff-transactions-workspace .record-picker-trigger{background:var(--sp-surface-input)}.staff-portal-app .staff-cal-toolbtn.is-active,.staff-portal-app .staff-cal-toolbtn[aria-pressed=true]{color:var(--sp-ink);border-color:var(--sp-hairline-strong);background:var(--sp-surface-raised)}.staff-portal-app .sp-table td.sp-col-tight,.staff-portal-app .sp-table th.sp-col-tight{white-space:nowrap;width:1%}.staff-portal-app .sp-table th.sp-col-medical,.staff-portal-app .sp-table td.sp-col-medical{width:17.5rem}.staff-portal-app .staff-overview-label,.staff-portal-app .staff-frontdesk-title,.staff-portal-app .staff-dash-panel-title,.staff-portal-app .staff-dash-panel-head h4,.staff-portal-app .staff-dash-panel>h4,.staff-portal-app .staff-insights-kicker,.staff-portal-app .staff-insights-headline,.staff-portal-app .staff-insights-history-title{font-family:var(--font-heading), var(--sp-font), system-ui, sans-serif;letter-spacing:.04em;text-transform:uppercase;color:var(--sp-muted);font-weight:750}.staff-portal-app .staff-dash-v2>.staff-overview{margin-block:12px!important}.staff-portal-app .staff-dash-cols:has(>:only-child){grid-template-columns:minmax(0,1fr)}.staff-activity-icon--lead{color:var(--sp-muted);background:#ffffff0f}.staff-portal-app .staff-insights-hint,.staff-portal-app .staff-ops-form-card>p.ui-m-0{max-width:40rem}.staff-portal-app .form-group>span:first-child,.staff-portal-app .enrollment-create-form>label>span:first-child,.staff-portal-app .enrollment-change-form>label>span:first-child,.staff-portal-app .enrollment-lifecycle-meta small{font-size:12px}.staff-portal-app .enrollment-ops-panel>div>h4,.staff-portal-app .enrollment-policy-panel>summary,.staff-portal-app .enrollment-change-composer__heading h4,.staff-portal-app .enrollment-request-queue h4,.staff-portal-app .staff-enrollments-list-heading{font-size:14px;font-weight:750;line-height:20px}.staff-portal-app .staff-enrollments-list-heading+.text-center.ui-text-muted{font-size:13px}.staff-portal-app .sp-table-wrap{background:var(--sp-surface-card);min-height:0}.staff-portal-app .staff-ops-form-card>.sp-table-wrap,.staff-portal-app .staff-ops-form-card>*>.sp-table-wrap{background:0 0;border:0;border-radius:0}.staff-portal-app .staff-stat-label,.staff-portal-app .staff-event-month,.staff-portal-app .staff-insights-label{font-family:var(--font-heading), var(--sp-font), system-ui, sans-serif;letter-spacing:.04em;font-weight:750}.staff-portal-app .staff-chart-total-sub,.staff-portal-app .staff-event-day{font-family:var(--sp-font), system-ui, sans-serif}.staff-portal-app .staff-ops-section-title{font-family:var(--font-heading), var(--sp-font), system-ui, sans-serif;letter-spacing:.01em;color:var(--sp-ink);margin:0 0 8px;font-size:14px;font-weight:750;line-height:20px}@media (width>=901px){.staff-portal-app .staff-dash-cols,.staff-portal-app .staff-dash-stack{gap:12px}}.staff-portal-app .staff-ops-form-grid,.staff-portal-app .staff-insights-row,.staff-portal-app .staff-transactions-workspace .record-picker{max-width:none}@media (width>=721px){.staff-portal-app .staff-ops-form-grid--3{grid-template-columns:1fr 1fr 1fr}.staff-portal-app .staff-ops-form-grid:not(.staff-ops-form-grid--3)>.form-group--span-2,.staff-portal-app .staff-ops-form-grid>.form-group--span-3{grid-column:1/-1}.staff-portal-app .staff-ops-form-grid--3>.form-group--span-2{grid-column:span 2}}.staff-portal-app .sp-table--shares th.sp-select-col,.staff-portal-app .sp-table--shares td.sp-select-col{width:4%}.staff-portal-app .sp-table--shares td.sp-col-num,.staff-portal-app .sp-table--shares th.sp-col-num{width:22%}.staff-portal-app .sp-table th.sp-col-w-30,.staff-portal-app .sp-table td.sp-col-w-30{width:30%}.staff-portal-app .sp-table th.sp-col-w-20,.staff-portal-app .sp-table td.sp-col-w-20{width:20%}.staff-portal-app .sp-table th.sp-col-w-25,.staff-portal-app .sp-table td.sp-col-w-25{width:25%}.staff-portal-app .sp-table th.sp-col-w-15,.staff-portal-app .sp-table td.sp-col-w-15{width:15%}.staff-portal-app .sp-cell-alert{color:var(--sp-danger);margin-left:8px;font-weight:600}.staff-portal-app .staff-frontdesk-row.is-danger strong{color:var(--sp-danger)}.staff-portal-app .staff-frontdesk-row.is-warn strong{color:var(--sp-warn)}.customer-portal-main{width:100%;max-width:1120px;margin-inline:auto}.customer-portal-main>.ui-container,.customer-portal-main>.ui-container-lg{max-width:none}.customer-portal-main .btn{box-shadow:none}.customer-portal-main .portal-next-step{border-inline-start:4px solid var(--color-primary-light)}.portal-results-heading,.portal-help-strip{justify-content:space-between;align-items:center;gap:1rem;display:flex}.portal-results-heading{color:var(--cp-muted,var(--color-text-muted));margin:1rem 0}.portal-results-heading p{margin:0}.portal-help-strip{border-top:1px solid var(--cp-hairline);margin-top:2rem;padding:1.5rem 0}.portal-help-strip strong,.portal-help-strip span{display:block}.portal-help-strip span{color:var(--cp-muted,var(--color-text-muted));margin-top:.25rem;font-size:.9rem}body.portal-app:not(.staff-portal-app) .portal-native-dialog{width:min(640px,100% - 2rem);max-height:calc(100dvh - 2rem);color:inherit;margin:auto;position:fixed;inset:0;overflow-y:auto}.portal-native-dialog:not([open]){display:none}.portal-native-dialog::backdrop{background:#000000b8}.portal-enrollment-details{border:1px solid var(--cp-hairline);border-radius:12px;gap:.75rem;margin:1.5rem 0;padding:1rem;display:grid}.portal-enrollment-details span{color:var(--cp-muted,var(--color-text-muted));font-size:.85rem;display:block}.portal-enrollment-details strong{margin-top:.25rem;font-weight:600;display:block}.portal-flow-notice{background:var(--cp-fill-soft);border-radius:12px;padding:1rem}.portal-registration-state{max-width:32rem;font-size:.9rem;line-height:1.5}@media (width<=600px){.portal-help-strip{flex-direction:column;align-items:flex-start}.portal-help-strip .btn{width:100%}}.portal-action-menu{flex:none;display:inline-flex}.portal-quiet-action,.portal-action-menu-trigger{border:1px solid var(--cp-hairline,var(--sp-hairline,#968ca540));min-height:44px;color:var(--cp-ink,var(--sp-ink,var(--color-text)));font:inherit;cursor:pointer;box-shadow:none;white-space:nowrap;background:0 0;border-radius:10px;justify-content:center;align-items:center;gap:.5rem;padding:.5rem .75rem;font-size:.8125rem;font-weight:500;line-height:1.25;display:inline-flex}.portal-quiet-action{color:var(--sp-on-light,#cfa4ef);border-color:#0000}.portal-action-menu-trigger:hover,.portal-quiet-action:hover{background:var(--sp-hover,#968ca51a)}.portal-action-menu-trigger:disabled,.portal-quiet-action:disabled{opacity:.5;cursor:not-allowed}.portal-action-menu-trigger:focus-visible,.portal-quiet-action:focus-visible,.portal-action-menu-panel :is(button,a):focus-visible{outline:2px solid var(--sp-on-light,#cfa4ef);outline-offset:2px}.portal-action-menu-panel{border:1px solid var(--cp-hairline,var(--sp-hairline,#968ca54d));background:var(--cp-canvas,var(--sp-surface-panel,var(--color-bg-alt,#19171f)));width:min(244px,100vw - 16px);max-height:calc(100dvh - 16px);color:var(--cp-ink,var(--sp-ink,var(--color-text)));border-radius:14px;margin:0;padding:.5rem;position:fixed;inset:auto;overflow-y:auto;box-shadow:0 12px 36px #0000003d}.portal-action-menu-panel:popover-open{gap:2px;display:grid}.portal-action-menu-panel :is(button,a){width:100%;min-width:0;height:auto;min-height:44px;color:inherit;box-shadow:none;font:inherit;text-align:left;white-space:normal;cursor:pointer;background:0 0;border:0;border-radius:8px;justify-content:flex-start;align-items:center;gap:.5rem;margin:0;padding:.75rem;font-size:.875rem;font-weight:500;line-height:1.35;text-decoration:none;display:flex}.portal-action-menu-panel :is(button,a):hover{background:var(--sp-hover,#968ca51f);transform:none}.portal-action-menu-panel button:disabled{opacity:.45;cursor:not-allowed}.portal-action-menu-panel hr{border:0;border-top:1px solid var(--cp-hairline,var(--sp-hairline,#968ca540));width:auto;margin:.25rem .5rem}.portal-action-menu-panel :is(.portal-action-danger,.portal-soft-action--danger,.staff-dossier-danger,.enrollment-row-action--danger){color:var(--sp-danger,#f28c85)}.portal-action-menu-panel>:not(hr):not(.portal-action-danger)+.portal-action-danger{border-top:1px solid var(--cp-hairline,var(--sp-hairline,#968ca540));border-top-left-radius:0;border-top-right-radius:0;margin-top:.25rem}html[data-theme=light] .portal-action-menu-panel .portal-action-danger{color:var(--color-danger-soft)}.staff-nav-hamburger{border:1px solid var(--sp-hairline);width:44px;min-width:44px;height:44px;min-height:44px;color:var(--sp-muted);cursor:pointer;touch-action:manipulation;background:0 0;border-radius:50%;flex:none;place-items:center;padding:0;font-size:1rem;display:none}.staff-nav-hamburger.is-open,.staff-nav-hamburger[aria-expanded=true]{color:var(--sp-accent)}.staff-portal-customer-chip{min-width:0;min-height:var(--sp-control-h);border:1px solid var(--sp-hairline);color:var(--sp-ink);white-space:nowrap;border-radius:999px;align-items:center;padding:0 .75rem;font-size:.82rem;font-weight:600;text-decoration:none;display:none}.staff-sidebar-grabber{touch-action:none;flex:none}.staff-portal-app .staff-frontdesk-mark{min-width:44px;min-height:44px}.staff-portal-app .staff-frontdesk-class-item{align-items:center;gap:var(--sp-field-gap);flex-wrap:wrap;display:flex}.staff-portal-app .staff-frontdesk-class-item .staff-frontdesk-class{min-width:0}.staff-portal-app .staff-frontdesk-grid{grid-template-columns:minmax(0,1fr)}.staff-portal-app .staff-frontdesk-panel-head{justify-content:flex-start}@media (width<=1366px){.staff-portal-app .navbar.staff-portal-navbar,.staff-portal-app .navbar.staff-portal-navbar.scrolled{display:none}.staff-portal-main{padding-top:env(safe-area-inset-top)}.staff-portal-layout{grid-template-columns:minmax(0,1fr);display:block}.staff-dashboard-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width>=901px) and (width<=1366px){.staff-sidebar{z-index:200;border:1px solid var(--sp-hairline);width:100%;max-height:min(86dvh,820px);padding:var(--sp-panel-pad);padding-bottom:max(1rem, env(safe-area-inset-bottom));visibility:hidden;pointer-events:none;background:var(--sp-surface-panel);color:var(--sp-ink);border-radius:28px 28px 0 0;flex-direction:column;display:flex;position:fixed;inset:auto 0 0;overflow:hidden;transform:translateY(105%)}.staff-sidebar.is-open{visibility:visible;pointer-events:auto;transform:translateY(0)}.staff-sidebar-close{border:1px solid var(--sp-hairline);width:44px;height:44px;color:var(--sp-ink);cursor:pointer;background:0 0;border-radius:50%;flex:none;place-items:center;display:inline-grid}.staff-sidebar-nav{flex:auto;min-height:0;overflow-y:auto}.staff-sidebar-footer{padding-bottom:max(.5rem, env(safe-area-inset-bottom));flex:none}.staff-nav-backdrop.is-open{z-index:190;background:color-mix(in srgb, var(--sp-ink) 35%, transparent);display:block;position:fixed;inset:0}}@media (width<=767px),(height<=500px) and (width<=960px){.staff-nav-hamburger,.staff-portal-customer-chip{display:none}}.staff-portal-shell[data-staff-chrome=phone] .staff-nav-hamburger,.staff-portal-shell[data-staff-chrome=desktop] .staff-nav-hamburger,.staff-portal-shell[data-staff-chrome=phone] .staff-portal-customer-chip,.staff-portal-shell[data-staff-chrome=desktop] .staff-portal-customer-chip{display:none}.staff-portal-shell[data-staff-chrome=tablet] .staff-nav-hamburger{display:inline-grid}.staff-portal-shell[data-staff-chrome=tablet] .staff-mobile-tabbar{display:none}@media (width>=768px) and (height>=501px) and (width<=1366px){.staff-mobile-tabbar{display:none}.staff-portal-shell{padding:var(--sp-panel-pad)}.staff-portal-header{align-items:center;column-gap:var(--sp-field-gap);margin-bottom:var(--sp-field-gap);grid-template-columns:44px minmax(0,auto) minmax(0,1fr) auto;grid-template-areas:"menu title search theme""menu chip search theme";row-gap:.25rem;display:grid}.staff-nav-hamburger{grid-area:menu;display:inline-grid}.staff-portal-heading{grid-area:title;min-width:0}.staff-portal-eyebrow{display:none}.staff-portal-title-row{justify-content:flex-start}.staff-portal-title-row .staff-portal-theme-toggle{display:none}.staff-portal-search{flex:auto;grid-area:search;width:auto;min-width:0;max-width:none}.staff-portal-theme-toggle{grid-area:theme;display:inline-grid}.staff-portal-customer-chip{grid-area:chip;justify-self:start;display:inline-flex}.staff-portal-header-actions{display:none}.staff-sidebar-mobile-links{border-bottom:1px solid var(--sp-hairline);gap:.25rem;margin-bottom:.75rem;padding-bottom:.75rem;display:grid}}@media (width>=1194px) and (height>=501px) and (width<=1366px){.staff-portal-header{grid-template-columns:44px auto minmax(0,1fr) auto auto;grid-template-areas:"menu title search chip theme"}.staff-portal-customer-chip{justify-self:end}}@media (width>=1025px) and (width<=1366px){.staff-portal-app .staff-frontdesk{container-type:inline-size}@container (width>=574px){.staff-portal-app .staff-frontdesk-grid{grid-template-columns:repeat(2,minmax(280px,1fr))}.staff-portal-app .staff-frontdesk-panel--floor{grid-column:1/-1}}}@media (width>=1367px){.staff-portal-app .staff-frontdesk{container-type:inline-size}@container (width>=872px){.staff-portal-app .staff-frontdesk-grid{grid-template-columns:repeat(3,minmax(280px,1fr))}}@container (width>=574px) and (width<=871px){.staff-portal-app .staff-frontdesk-grid{grid-template-columns:repeat(2,minmax(280px,1fr))}.staff-portal-app .staff-frontdesk-panel--floor{grid-column:1/-1}}.staff-nav-hamburger,.staff-portal-customer-chip{display:none}}body.portal-app:not(.staff-portal-app) .customer-portal-page-header .portal-page-subtitle{font-size:.9375rem;line-height:1.5;display:block}body.portal-app:not(.staff-portal-app) .portal-home #account-settings>summary{cursor:pointer;margin:0}body.portal-app:not(.staff-portal-app) .portal-home #account-settings[open]>summary{margin-bottom:1rem}.staff-portal-app .staff-editor{border:1px solid var(--sp-hairline);border-radius:var(--sp-radius-md);background:var(--sp-surface-card)}.staff-portal-app .staff-editor>summary{cursor:pointer;color:var(--sp-ink);padding:12px 16px;font-size:14px;font-weight:600;line-height:20px}.staff-portal-app .staff-editor>summary:focus-visible{outline:2px solid var(--sp-accent);outline-offset:2px}.staff-portal-app .staff-editor[open]>summary{border-bottom:1px solid var(--sp-hairline)}.staff-portal-app .staff-editor>.staff-ops-form-card{box-shadow:none;background:0 0;border:0;margin:0}.staff-portal-app .staff-attendance-statuses{grid-template-columns:repeat(3,minmax(0,1fr));gap:4px}.staff-portal-app .staff-attendance-status{min-height:44px;padding-inline:4px}.staff-portal-app .sp-page-stack>.staff-ops-page-header:first-child>.staff-ops-page-title{font-size:20px;font-weight:700;line-height:28px}.staff-portal-app .staff-studio-content .staff-ops-page-title,.staff-portal-app .staff-time-clock section h3{font-size:14px;font-weight:700;line-height:20px}.staff-portal-app .staff-help-topic-picker{display:none}@media (width<=767px){.staff-portal-app .staff-ops-page-header{flex-wrap:wrap;gap:8px}.staff-portal-app .staff-ops-page-header>.staff-ops-page-title{flex-shrink:0;max-width:100%}.staff-portal-app .staff-ops-page-header>.staff-ops-page-status{flex:160px}.staff-portal-app .staff-studio-section-header>.staff-cms-actions{flex:100%;width:100%;min-width:0;margin:0}.staff-portal-app .staff-studio-section-header .staff-cms-actions>.btn{flex:1 1 0;min-width:0}.staff-portal-app .staff-member-actions{grid-template-columns:repeat(2,minmax(0,1fr));width:100%;display:grid}.staff-portal-app .staff-member-actions>.btn{white-space:normal;min-width:0;min-height:44px}.staff-portal-app .staff-help-layout{grid-template-columns:minmax(0,1fr)}.staff-portal-app .staff-help-layout>.staff-family-list-col{display:none}.staff-portal-app .staff-help-topic-picker{display:block}.staff-portal-app .staff-help-layout>.staff-family-profile-col{width:100%;min-width:0;display:block}}.staff-portal-app .staff-member-actions{flex-wrap:wrap;align-items:center;gap:.25rem;width:auto;display:flex}.staff-portal-app .staff-member-role{max-width:100%}.staff-portal-app .staff-member-row{border-color:#0000;border-bottom-color:var(--sp-hairline);background:0 0;border-radius:0;padding:1rem .25rem}.staff-portal-app .staff-member-row .staff-row-card-title{align-items:flex-start;gap:.25rem}.staff-portal-app .staff-member-row .staff-member-role{border-color:var(--sp-hairline);background:0 0;min-height:36px;font-weight:400;display:block!important}.staff-portal-app .staff-add-staff{background:0 0;border:0}.staff-portal-app .staff-add-staff>summary{background:var(--sp-primary);width:fit-content;color:var(--sp-on-primary,white);border-radius:10px;min-height:44px;padding:.75rem 1rem;display:list-item}.staff-portal-app .staff-add-staff[open]>summary{margin-bottom:.75rem}@media (width<=640px){.staff-portal-app .staff-member-row .staff-row-card-main{align-items:flex-start}.staff-portal-app .staff-member-row .staff-row-card-actions{width:auto;margin-left:2.75rem}.staff-portal-app .staff-member-row .staff-member-role{min-height:44px}}
