@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.fixed{position:fixed}.sticky{position:sticky}.start{inset-inline-start:var(--spacing)}.end{inset-inline-end:var(--spacing)}.block{display:block}.grid{display:grid}.hidden{display:none}.inline{display:inline}.table{display:table}.grow{flex-grow:1}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.\[jamie-daily-follow-up\:2026-07-25\]{jamie-daily-follow-up:2026-7-25}.\[jamie-daily-follow-up\:2026-07-26\]{jamie-daily-follow-up:2026-7-26}.\[jamie-workflow\:closed\]{jamie-workflow:closed}.\[jamie-workflow\:collecting_payment\]{jamie-workflow:collecting payment}.\[jamie-workflow\:enrolment_payment\]{jamie-workflow:enrolment payment}.\[jamie-workflow\:pending\]{jamie-workflow:pending}.\[jamie-workflow\:signed\]{jamie-workflow:signed}.\[jamie-workflow\:trial_arranged\]{jamie-workflow:trial arranged}.\[jamie-workflow\:waiting_for_parent\]{jamie-workflow:waiting for parent}}:root{--ink:#11131a;--pink:#ec008c;--pink-soft:#ffe4f3;--blue:#2da7df;--blue-soft:#e3f5fc;--mint:#c8f3df;--term-1:#63d6a2;--term-2:#58bde9;--term-3:#ff8a3d;--term-4:#ff91c8;--no-class:#ff5a63;--today:#7557e8;--cream:#fffaf2;--yellow:#ffd63d;--white:#fff;--muted:#62656f;--line:#191c24}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--cream);color:var(--ink);font-family:var(--font-geist), Arial, Helvetica, sans-serif;margin:0}button,input,select,a{font:inherit}button,a{color:inherit}.site-header{z-index:40;border-bottom:2px solid var(--ink);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffffff5;align-items:center;gap:36px;height:82px;padding:0 max(28px,50vw - 620px);display:flex;position:sticky;top:0}.brand{align-items:center;gap:13px;min-width:260px;text-decoration:none;display:flex}.brand img{object-fit:contain;width:58px;height:52px}.brand span{text-transform:uppercase;letter-spacing:-.02em;font-size:18px;font-weight:950}.nav{flex:1;align-items:center;gap:28px;display:flex}.nav a,.nav button{cursor:pointer;background:0 0;border:0;border-bottom:4px solid #0000;padding:28px 0 22px;font-weight:850;text-decoration:none}.nav a:hover,.nav button:hover,.nav a:focus-visible,.nav button:focus-visible{border-color:var(--pink);outline:0}.header-actions{align-items:center;gap:10px;display:flex}.device-note{background:var(--blue-soft);color:#075c82;white-space:nowrap;border-radius:999px;padding:8px 12px;font-size:14px;font-weight:850}.menu-button{border:2px solid var(--ink);background:#fff;border-radius:10px;padding:9px 12px;font-weight:900;display:none}.page-shell{width:min(1240px,100% - 48px);margin:0 auto;padding:52px 0 34px}.intro{margin-bottom:22px}.eyebrow{color:var(--pink);text-transform:uppercase;letter-spacing:.13em;margin:0 0 10px;font-size:15px;font-weight:950}.intro h1{letter-spacing:-.06em;margin:0;font-size:clamp(46px,5vw,72px);font-weight:950;line-height:.95}.intro-copy{color:#454751;max-width:760px;margin:16px 0 0;font-size:18px;line-height:1.5}.card{border:2px solid var(--line);background:#fff;border-radius:22px;box-shadow:0 9px 24px #11131a14}.tag{text-transform:uppercase;letter-spacing:.08em;border-radius:999px;align-items:center;width:fit-content;padding:7px 12px;font-size:13px;font-weight:950;display:inline-flex}.tag-blue{background:var(--blue);color:#07151d}.tag-pink{background:var(--pink);color:#fff}.tag-mint{background:var(--mint);color:#07543d}.child-switcher{justify-content:space-between;align-items:center;gap:16px;margin-bottom:12px;display:flex}.child-tabs{gap:8px;padding:2px;display:flex;overflow-x:auto}.child-tabs button,.small-outline{border:2px solid var(--ink);white-space:nowrap;cursor:pointer;background:#fff;border-radius:999px;padding:10px 15px;font-weight:900}.child-tabs button.active{background:var(--ink);color:#fff}.small-outline{border-radius:11px}.profile-card{background:linear-gradient(110deg, #fff 56%, var(--blue-soft));margin-bottom:18px;padding:26px 30px}.profile-card.editing{background:linear-gradient(120deg,#fff 58%,#eefaff)}.profile-card:not(.editing){border-radius:16px;margin-bottom:14px;padding:14px 18px;box-shadow:0 5px 14px #11131a0f}.profile-summary{justify-content:space-between;align-items:center;gap:26px;display:flex}.profile-card:not(.editing) .profile-summary{gap:16px}.profile-summary h2{letter-spacing:-.045em;margin:10px 0 5px;font-size:34px}.profile-card:not(.editing) .profile-summary h2{letter-spacing:-.035em;margin:0 10px 0 0;font-size:24px;display:inline}.profile-summary p{color:var(--muted);margin:0;font-weight:750}.profile-card:not(.editing) .profile-summary p{font-size:14px;display:inline}.profile-card:not(.editing) .profile-summary .tag{vertical-align:2px;margin-right:10px;padding:5px 9px;font-size:11px}.session-summary{flex-wrap:wrap;gap:8px;margin-top:14px;display:flex}.profile-card:not(.editing) .session-summary{gap:6px;margin:7px 0 0;display:inline-flex}.session-summary span{background:#ffffffd1;border:1.5px solid #87cce9;border-radius:10px;padding:8px 10px;font-size:15px;font-weight:800}.profile-card:not(.editing) .session-summary span{border-radius:8px;padding:5px 8px;font-size:13px}.change-details{border:2px solid var(--ink);cursor:pointer;background:#fff;border-radius:11px;flex:none;padding:12px 16px;font-weight:900}.profile-card:not(.editing) .change-details{padding:9px 12px;font-size:14px}.profile-form-heading{justify-content:space-between;gap:22px;display:flex}.profile-form-heading h2{letter-spacing:-.04em;margin:11px 0 7px;font-size:31px}.profile-form-heading p{max-width:760px;color:var(--muted);margin:0;line-height:1.5}.text-button{color:#075c82;cursor:pointer;background:0 0;border:0;font-weight:900}.profile-fields{grid-template-columns:1.2fr .8fr .7fr;gap:14px;margin-top:22px;display:grid}.profile-fields label,.session-row label{gap:7px;display:grid}.profile-fields label>span,.session-row label>span{text-transform:uppercase;letter-spacing:.055em;font-size:13px;font-weight:900}.profile-fields small{color:var(--muted);text-transform:none;letter-spacing:0;font-weight:700}input,select{width:100%;min-height:46px;color:var(--ink);background:#fff;border:1.8px solid #aeb1ba;border-radius:10px;padding:10px 12px}input:focus,select:focus{border-color:#087eb6;outline:3px solid #2da7df3b}.sessions-editor{border-top:1px solid #b7dceb;margin-top:20px;padding-top:20px}.sessions-title{justify-content:space-between;align-items:baseline;gap:18px;margin-bottom:12px;display:flex}.sessions-title strong{font-size:18px}.sessions-title span{color:var(--muted);font-size:14px}.session-row{background:#ffffffd1;border:1.5px solid #b8dce9;border-radius:14px;grid-template-columns:38px .8fr .8fr 1.25fr auto;align-items:end;gap:12px;margin-bottom:10px;padding:14px;display:grid}.session-number{background:var(--ink);color:#fff;border-radius:50%;place-items:center;width:34px;height:34px;margin-bottom:6px;font-weight:950;display:grid}.remove-session,.add-session,.delete-button{color:#a90054;cursor:pointer;background:0 0;border:0;font-weight:900}.remove-session{margin-bottom:12px}.add-session{color:#075c82;padding:8px 0}.profile-actions{justify-content:flex-end;align-items:center;gap:18px;margin-top:18px;display:flex}.primary-button{border:2px solid var(--ink);background:var(--pink);color:#fff;box-shadow:4px 4px 0 var(--ink);cursor:pointer;border-radius:12px;padding:14px 22px;font-weight:950}.primary-button:hover{box-shadow:2px 2px 0 var(--ink);transform:translate(2px,2px)}.parent-summary{grid-template-columns:repeat(3,1fr);gap:14px;margin-bottom:24px;display:grid}.parent-summary article{border:2px solid var(--ink);min-height:138px;box-shadow:4px 4px 0 var(--ink);border-radius:18px;padding:22px 24px}.parent-summary span{text-transform:uppercase;letter-spacing:.08em;font-size:13px;font-weight:950;display:block}.parent-summary strong{margin:11px 0 7px;font-size:23px;line-height:1.1;display:block}.parent-summary small{color:#5e6169;font-size:14px;line-height:1.4;display:block}.next-class-status{background:linear-gradient(145deg,#dff5ff,#f5fcff)}.next-class-status span{color:#176b91}.closure-status{background:linear-gradient(145deg,#fff1a8,#fffbea)}.closure-status span{color:#846900}.action-status{background:linear-gradient(145deg,#ffe0f2,#fff7fb)}.action-status span{color:#b10065}.action-status a{background:var(--pink);color:#fff;border-radius:9px;margin-top:3px;padding:9px 12px;font-size:14px;font-weight:950;text-decoration:none;display:inline-block}.section-heading-row{justify-content:space-between;align-items:flex-end;gap:18px;display:flex}.section-heading-row h2{letter-spacing:-.045em;margin:11px 0 5px;font-size:34px}.section-heading-row p{color:var(--muted);margin:0;line-height:1.45}.action-centre{border:2px solid var(--ink);box-shadow:5px 5px 0 var(--pink);background:#fff7fb;border-radius:20px;margin:28px 0;padding:26px}.action-list{gap:11px;margin-top:18px;display:grid}.action-item{background:#fff;border:1.5px solid #d7a4c5;border-radius:14px;justify-content:space-between;align-items:center;gap:20px;padding:17px 18px;display:flex}.action-item>div:first-child>span{color:#b10065;text-transform:uppercase;letter-spacing:.07em;font-size:12px;font-weight:950}.action-item strong{margin-top:4px;font-size:18px;display:block}.action-item p{color:var(--muted);margin:5px 0 0;font-size:14px}.action-buttons{flex:none;gap:8px;display:flex}.action-buttons a,.action-buttons button{border:2px solid var(--ink);cursor:pointer;border-radius:9px;padding:9px 12px;font-weight:900;text-decoration:none}.action-buttons a{background:var(--pink);color:#fff}.action-buttons button{background:#fff}.closure-action{background:#fffdf2;border-color:#e3c64c}.closure-action>div:first-child>span{color:#7b6500}.completed-actions{color:var(--muted);margin-top:12px}.completed-actions summary{cursor:pointer;font-weight:850}.completed-actions>div{border-bottom:1px solid #e4d3dd;justify-content:space-between;max-width:420px;padding:8px 0;display:flex}.completed-actions button{color:#075c82;cursor:pointer;background:0 0;border:0;font-weight:900}.upcoming-section{margin-bottom:28px;padding:28px}.upcoming-list{grid-template-columns:1fr 1fr;gap:12px;margin-top:20px;display:grid}.upcoming-row{background:#f7fcff;border:1.5px solid #b8dfea;border-radius:15px;grid-template-columns:72px 1fr;align-items:center;gap:14px;min-height:96px;padding:14px;display:grid}.no-class-row{background:#fff4f4;border-color:#ef9b9f}.upcoming-date{background:var(--ink);color:#fff;border-radius:12px;justify-items:center;min-height:67px;padding:7px;display:grid}.upcoming-date span{letter-spacing:.08em;font-size:11px;font-weight:950}.upcoming-date strong{font-size:27px;line-height:1}.upcoming-date small{font-size:11px;font-weight:850}.upcoming-copy>span{color:#176b91;text-transform:uppercase;letter-spacing:.07em;font-size:12px;font-weight:950}.no-class-row .upcoming-copy>span{color:#b32028}.upcoming-copy strong{margin:5px 0 3px;font-size:18px;display:block}.upcoming-copy small{color:var(--muted);font-size:14px}.empty-state,.no-events{text-align:center;color:var(--muted);border:1.5px dashed #aaa;border-radius:14px;place-items:center;gap:5px;padding:32px;display:grid}.empty-state strong,.no-events strong{color:var(--ink);font-size:18px}.event-recommendations{border:2px solid var(--ink);box-shadow:6px 6px 0 var(--pink);background:linear-gradient(145deg,#fff 35%,#fff3fa);border-radius:22px;margin:30px 0;padding:28px}.announcement-kicker{background:var(--ink);color:#fff;text-transform:uppercase;letter-spacing:.07em;border-radius:999px;align-items:center;gap:8px;padding:8px 12px;font-size:13px;font-weight:950;display:inline-flex}.announcement-kicker span{color:var(--pink)}.events-heading{justify-content:space-between;align-items:end;gap:30px;margin:18px 0;display:flex}.events-heading h2{letter-spacing:-.045em;max-width:680px;margin:0;font-size:36px}.events-heading p{max-width:360px;color:var(--muted);margin:0;line-height:1.5}.event-grid{grid-template-columns:1fr 1fr;gap:16px;display:grid}.featured-event{padding:24px;overflow:hidden}.featured-event-top{grid-template-columns:84px 1fr;align-items:center;gap:16px;display:grid}.quick-event-date{border:2px solid var(--ink);background:var(--yellow);height:92px;box-shadow:4px 4px 0 var(--ink);border-radius:16px;align-content:center;justify-items:center;display:grid}.quick-event-date span{letter-spacing:.09em;font-size:12px;font-weight:950}.quick-event-date strong{font-size:37px;line-height:1}.event-type{color:#9f005b;text-transform:uppercase;letter-spacing:.07em;font-size:12px;font-weight:950}.featured-event h3{letter-spacing:-.03em;margin:6px 0 2px;font-size:27px;line-height:1.05}.event-name{color:var(--muted);font-weight:850}.age-recommendation{margin:20px 0 12px;font-size:17px;display:block}.event-benefits{margin:0;padding-left:20px}.event-benefits li{margin:7px 0;line-height:1.4}.event-more{border-top:1px solid #ddd;margin:17px 0;padding-top:12px}.event-more summary{cursor:pointer;color:#075c82;font-weight:900}.event-more p{color:var(--muted);line-height:1.55}.event-deadline{background:#fff3c4;border-radius:10px;justify-content:space-between;gap:12px;margin:12px 0;padding:11px 13px;display:flex}.event-deadline b{font-weight:950}.status-closed{color:#555;background:#eee}.status-closing-soon{color:#a21c24;background:#ffe3e5}.outline-button,.closed-button{border:2px solid var(--ink);cursor:pointer;background:#fff;border-radius:11px;justify-content:center;align-items:center;gap:6px;width:100%;min-height:48px;padding:12px 16px;font-weight:950;text-decoration:none;display:inline-flex}.closed-button{color:#666;cursor:default;background:#eee}.smart-calendar{margin-top:28px;padding:28px}.calendar-title-row{justify-content:space-between;align-items:flex-end;gap:18px;display:flex}.calendar-title-row h2{letter-spacing:-.045em;margin:10px 0 5px;font-size:35px}.calendar-title-row p{color:var(--muted);margin:0}.calendar-title-row select{width:auto}.google-calendar-toolbar{justify-content:space-between;align-items:center;gap:18px;margin:24px 0 16px;display:flex}.month-navigation{align-items:center;gap:8px;display:flex}.month-navigation button{cursor:pointer;background:#fff;border:1.5px solid #aaa;border-radius:9px;width:42px;height:42px;font-size:22px}.month-navigation button:disabled{opacity:.35;cursor:default}.month-navigation .today-button{width:auto;padding:0 13px;font-size:14px;font-weight:900}.month-navigation h3{margin:0 0 0 8px;font-size:24px}.lesson-view-heading{gap:2px;display:grid}.lesson-view-heading span{color:var(--muted);text-transform:uppercase;letter-spacing:.07em;font-size:13px;font-weight:900}.lesson-view-heading strong{font-size:24px}.view-toggle,.term-toggle{background:#f2f2f2;border:1.5px solid #aaa;border-radius:10px;padding:3px;display:inline-flex}.view-toggle button,.term-toggle button{cursor:pointer;background:0 0;border:0;border-radius:7px;padding:9px 13px;font-weight:850}.view-toggle button.active,.term-toggle button.active{background:#fff;box-shadow:0 2px 5px #0000001f}.term-toggle{margin-bottom:14px}.calendar-key{flex-wrap:wrap;gap:8px 14px;margin-bottom:12px;display:flex}.calendar-key span{color:var(--muted);align-items:center;gap:6px;font-size:13px;font-weight:800;display:inline-flex}.calendar-key i{border:1px solid var(--ink);border-radius:3px;width:12px;height:12px}.key-term-1{background:var(--term-1)}.key-term-2{background:var(--term-2)}.key-term-3{background:var(--term-3)}.key-term-4{background:var(--term-4)}.key-no-class{background:var(--no-class)}.key-event{background:var(--yellow)}.key-today{background:var(--today);border-radius:50%!important}.google-month{background:#ddd;border:1px solid #c8c8c8;border-radius:14px;grid-template-columns:repeat(7,minmax(0,1fr));gap:1px;display:grid;overflow:hidden}.google-weekday{text-align:center;background:#f4f4f4;padding:10px 4px;font-size:13px;font-weight:900}.google-day-cell{background:#fff;min-height:112px;padding:8px}.empty-cell{background:#f8f8f8}.selected-class-day{background:#fbfeff}.day-number{border-radius:50%;place-items:center;width:30px;height:30px;margin-bottom:5px;font-size:14px;font-weight:850;display:grid}.today-number{background:var(--today);color:#fff}.calendar-event{border-left:5px solid var(--ink);border-radius:7px;margin-top:5px;padding:5px 7px;font-size:12px;font-weight:850;text-decoration:none;display:block}.term-1{background:var(--term-1)}.term-2{background:var(--term-2)}.term-3{background:var(--term-3)}.term-4{background:var(--term-4)}.no-class-event{background:var(--no-class);color:#fff}.recommended-event{background:var(--yellow);color:var(--ink)}.mobile-marker{display:none}.swipe-hint{text-align:center;color:var(--muted);margin:9px 0 0;font-size:13px;display:none}.lesson-list-summary{background:#f5fafb;border:1px solid #c9e2e8;border-radius:14px;grid-template-columns:150px 150px 1fr;align-items:center;gap:12px;padding:16px;display:grid}.lesson-list-summary>div{border-right:1px solid #c7d8dc;padding-right:12px}.lesson-list-summary span{color:var(--muted);text-transform:uppercase;letter-spacing:.06em;font-size:12px;font-weight:900;display:block}.lesson-list-summary strong{font-size:27px;display:block}.lesson-list-summary p{text-align:right;margin:0;font-weight:850}.calendar-download{border:2px solid var(--ink);cursor:pointer;background:#fff;border-radius:10px;margin:12px 0 12px auto;padding:11px 15px;font-weight:900;display:block}.schedule-view{gap:8px;display:grid}.schedule-row{background:#fff;border:1px solid #ddd;border-radius:13px;grid-template-columns:72px 1fr;gap:12px;padding:11px;display:grid}.schedule-date{background:var(--ink);color:#fff;border-radius:10px;grid-template-columns:1fr auto;align-items:center;padding:8px;display:grid}.schedule-date>div{justify-items:center;display:grid}.schedule-date span{font-size:10px;font-weight:950}.schedule-date strong{font-size:23px;line-height:1}.schedule-date small{writing-mode:vertical-rl;font-size:10px;font-weight:850;transform:rotate(180deg)}.schedule-details{align-items:stretch;display:flex}.schedule-item{border-radius:10px;justify-content:space-between;align-items:center;gap:12px;width:100%;padding:12px 14px;display:flex}.schedule-item span{font-weight:850}.schedule-item strong{text-align:right}.holiday-item{color:#9e1d24;background:#ffe7e8}.relevance-note{color:var(--muted);margin:17px 0 0;font-size:14px;line-height:1.45}.relevance-note a{color:#075c82;font-weight:900}.quick-actions{grid-template-columns:1fr 1fr;gap:16px;margin-top:28px;display:grid}.quick-action{padding:24px}.quick-action h2{margin:15px 0 8px;font-size:28px}.quick-action p{color:var(--muted);margin:0 0 18px;line-height:1.5}.quick-action .outline-button{width:fit-content}footer{color:var(--muted);justify-content:center;align-items:center;gap:10px;padding:34px 0 8px;display:flex}footer img{object-fit:contain;width:44px;height:40px}.modal-backdrop{z-index:80;background:#11131ab8;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.modal{border:2px solid var(--ink);width:min(760px,100%);max-height:90vh;box-shadow:8px 8px 0 var(--ink);background:#fff;border-radius:22px;padding:30px;position:relative;overflow-y:auto}.modal h2{letter-spacing:-.045em;margin:13px 0 20px;font-size:38px}.close-button{cursor:pointer;background:0 0;border:0;width:40px;height:40px;font-size:30px;position:absolute;top:14px;right:16px}.policy-list{gap:10px;display:grid}.policy-list>div{border:1px solid #ddd;border-radius:12px;grid-template-columns:36px 1fr;gap:12px;padding:14px;display:grid}.policy-list>div>span{background:var(--blue);border-radius:50%;place-items:center;width:34px;height:34px;font-weight:950;display:grid}.policy-list strong{font-size:17px}.policy-list ul{color:var(--muted);margin:8px 0 0;padding-left:18px;line-height:1.45}.source-link{color:#075c82;margin-top:16px;font-weight:900;display:inline-block}.full-button{width:100%;margin-top:20px}.modal-fee-grid{grid-template-columns:1fr 1fr;gap:16px;display:grid}.modal-fee-grid h3{margin:0 0 9px;font-size:20px}.modal-fee-grid h3 small{color:var(--muted);font-size:14px}.fees-table{border:2px solid var(--ink);border-radius:12px;overflow:hidden}.fees-table div{border-bottom:1px solid #ddd;justify-content:space-between;gap:14px;padding:12px;display:flex}.fees-table div:last-child{border-bottom:0}.fees-table span{color:#51545c}.fees-table strong{white-space:nowrap}.policy-note{border:2px solid var(--ink);background:var(--yellow);border-radius:12px;margin-top:18px;padding:15px}.policy-note p{margin:6px 0 0;line-height:1.45}.dashboard-absence{background:#f3fbff;border:1.5px solid #b8dce9;border-radius:14px;justify-content:space-between;align-items:center;gap:20px;margin:18px 0 28px;padding:16px 18px;display:flex}.dashboard-absence>div{gap:3px;display:grid}.dashboard-absence strong{font-size:16px}.dashboard-absence span{color:var(--muted);font-size:14px}.dashboard-absence button{border:2px solid var(--ink);cursor:pointer;background:#fff;border-radius:10px;flex:none;padding:10px 14px;font-weight:900}.absence-section{background:linear-gradient(125deg, white 48%, var(--blue-soft));grid-template-columns:1fr auto;align-items:center;gap:28px;margin-top:28px;padding:27px 29px;display:grid}.absence-copy h2{letter-spacing:-.035em;margin:13px 0 8px;font-size:31px}.absence-copy p{max-width:760px;color:var(--muted);margin:0;line-height:1.5}.absence-copy ul{color:#555861;margin:12px 0 0;padding-left:20px;line-height:1.5}.absence-section>.primary-button{min-width:235px}.absence-form{gap:14px;display:grid}.absence-form label{gap:7px;font-size:14px;font-weight:900;display:grid}.absence-form label small{color:var(--muted);font-weight:700}.absence-form textarea{resize:vertical;width:100%;font:inherit;border:1.8px solid #aeb1ba;border-radius:10px;padding:11px 12px}.absence-form textarea:focus{border-color:#087eb6;outline:3px solid #2da7df3b}.form-reminder{background:#fff8ce;border:1.5px solid #dfbe35;border-radius:11px;gap:3px;padding:13px 15px;display:grid}.form-reminder span{color:var(--muted);font-size:14px}.absence-ready p{color:var(--muted);line-height:1.5}.message-preview{white-space:pre-wrap;background:#f3fbff;border:1.5px solid #b8dce9;border-radius:12px;padding:17px;line-height:1.5}.absence-ready .outline-button{margin-top:10px}.edit-absence{margin:16px auto 0;display:block}@media (max-width:900px){.absence-section{grid-template-columns:1fr}.absence-section>.primary-button{width:fit-content}}@media (max-width:600px){.dashboard-absence{flex-direction:column;align-items:stretch}.dashboard-absence button{width:100%}.absence-section{padding:21px}.absence-section>.primary-button{width:100%}.absence-copy h2{font-size:28px}}.admin-shell{color:#20202a;max-width:1180px;margin:0 auto;padding:48px 24px 80px}.admin-header{justify-content:space-between;align-items:flex-start;gap:24px;margin-bottom:28px;display:flex}.admin-header h1{margin:6px 0 14px;font-size:clamp(2.2rem,5vw,4.2rem);line-height:1}.admin-header p{color:#646373;max-width:700px;font-size:1.05rem;line-height:1.6}.admin-eyebrow,.admin-label{letter-spacing:.13em;text-transform:uppercase;color:#a12c73;font-size:.78rem;font-weight:800}.shadow-badge{color:#8b205f;white-space:nowrap;background:#fff0f8;border-radius:999px;padding:9px 14px;font-weight:800;display:inline-flex}.admin-summary{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:18px;display:grid}.admin-summary article,.admin-panel{background:#fff;border:1px solid #ece8ee;border-radius:22px;box-shadow:0 12px 32px #281c290f}.admin-summary article{flex-direction:column;gap:5px;padding:20px;display:flex}.admin-summary strong{font-size:2rem}.admin-summary span{color:#6c6870}.admin-grid{grid-template-columns:1fr 1fr;gap:18px;display:grid}.admin-panel{padding:24px}.admin-panel-heading{justify-content:space-between;align-items:center;gap:20px;margin-bottom:18px;display:flex}.admin-panel h2{margin:4px 0 0;font-size:1.45rem}.admin-action{color:#8b205f;cursor:pointer;pointer-events:auto;background:#fff0f8;border:1px solid #8b205f;border-radius:999px;justify-content:center;align-items:center;padding:10px 15px;font-weight:800;text-decoration:none;display:inline-flex}.admin-action:hover,.admin-action:focus-visible{color:#fff;background:#8b205f;outline:none}.admin-list{flex-direction:column;display:flex}.admin-list-row,.admin-class-row{border-top:1px solid #f0edf0;justify-content:space-between;align-items:center;gap:18px;padding:16px 0;display:flex}.admin-list-row:first-child,.admin-class-row:first-child{border-top:0}.admin-list-row>div:first-child,.admin-class-row>div:first-child{flex-direction:column;gap:5px;display:flex}.admin-class-details{min-width:0}.booking-line{border-radius:10px;margin-top:4px;padding:7px 10px;font-weight:700;line-height:1.35;display:block}.admin-class-row .booking-line-upcoming{color:#236344;background:#eef8f2}.admin-class-row .booking-line-past{color:#746d76;background:#f5f2f5;font-weight:600}.admin-list-row span,.admin-class-row span{color:#77717a;font-size:.9rem}.admin-status{white-space:nowrap;background:#f5f2f5;border-radius:999px;padding:7px 10px;font-weight:700;color:#5f5961!important}.capacity{text-align:right;flex-direction:column;gap:3px;display:flex}.capacity strong{font-size:1.15rem}.admin-next{margin-top:18px}.admin-next ol{color:#56515a;gap:10px;margin:18px 0 0;padding-left:22px;line-height:1.5;display:grid}.admin-notice{border-radius:14px;margin:0 0 18px;padding:14px 16px;font-weight:700}.admin-notice-success{color:#17613b;background:#e8f8ef}.admin-notice-error{color:#9b1c1c;background:#fff0f0}@media (max-width:800px){.admin-header{flex-direction:column}.admin-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-grid{grid-template-columns:1fr}}@media (max-width:480px){.admin-shell{padding:32px 16px 64px}.admin-summary{grid-template-columns:1fr}.admin-panel-heading,.admin-list-row,.admin-class-row{flex-direction:column;align-items:flex-start}.capacity{text-align:left}.shadow-badge{align-self:flex-start}}.admin-action-primary{color:#fff;background:#8b205f;border-color:#8b205f}.admin-action-primary:hover,.admin-action-primary:focus-visible{background:#681645}.admin-action-muted{color:#625c64;background:#fff;border-color:#d8d2d9}.admin-review-shell{max-width:760px}.admin-back{color:#7b235d;margin-bottom:24px;font-weight:800;text-decoration:none;display:inline-flex}.admin-review-progress{color:#6c6870;margin:0 0 18px;font-weight:700}.admin-review-card{padding:30px}.admin-review-name{margin:4px 0 22px;font-size:clamp(1.8rem,5vw,2.7rem)}.admin-review-facts{gap:14px;margin:0 0 26px;display:grid}.admin-review-facts>div{background:#f8f5f8;border-radius:14px;padding:14px 16px}.admin-review-facts dt{color:#77717a;text-transform:uppercase;letter-spacing:.08em;margin-bottom:5px;font-size:.82rem;font-weight:800}.admin-review-facts dd{margin:0;font-weight:700;line-height:1.45}.admin-review-form{border-top:1px solid #eee9ee;gap:10px;padding-top:22px;display:grid}.admin-review-form label{font-weight:800}.admin-review-form input[type=date]{width:100%;max-width:320px;font:inherit;color:#27222a;border:1px solid #cfc7d0;border-radius:12px;padding:12px 14px}.admin-review-help{color:#706a72;margin:0 0 6px;line-height:1.5}.admin-review-actions{flex-wrap:wrap;gap:10px;margin-top:8px;display:flex}.admin-review-secondary{border-top:1px solid #eee9ee;justify-content:space-between;align-items:center;gap:16px;margin-top:22px;padding-top:22px;display:flex}.admin-review-complete{text-align:center;padding:48px 28px}.admin-review-complete h2{margin:0 0 10px;font-size:2rem}.admin-review-complete p{color:#6c6870;margin:0 0 22px}@media (max-width:480px){.admin-review-secondary{flex-direction:column;align-items:flex-start}.admin-review-card{padding:22px}.admin-review-actions{flex-direction:column;align-items:stretch}.admin-review-actions .admin-action{width:100%}}.data-review-shell{max-width:1040px}.review-last-import{font-weight:700;color:#77717a!important;font-size:.9rem!important}.review-overview{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:18px;display:grid}.review-overview article{background:#fff;border:1px solid #ece8ee;border-radius:18px;flex-direction:column;gap:5px;padding:20px;display:flex;box-shadow:0 12px 32px #281c290f}.review-overview strong{font-size:1.8rem}.review-overview span{color:#6c6870}.data-review-section{margin-top:18px}.data-review-section:first-of-type{margin-top:0}.data-review-heading{align-items:flex-start}.admin-section-copy{color:#706a72;max-width:720px;margin:6px 0 0;line-height:1.5}.admin-import-actions{flex-wrap:wrap;gap:10px;margin-top:14px;display:flex}.admin-import-actions form{margin:0}@media (max-width:640px){.admin-import-actions,.admin-import-actions form,.admin-import-actions button{width:100%}}.review-count{border-radius:999px;justify-content:center;align-items:center;min-width:42px;height:42px;padding:0 12px;font-weight:900;display:inline-flex}.review-count-attention{color:#9b1c1c;background:#fff0f0}.review-count-clear{color:#17613b;background:#e8f8ef}.review-empty{color:#286044;background:#f2f8f4;border-radius:13px;margin:0;padding:15px 16px;font-weight:700}.review-row>div:first-child{min-width:0}.review-row>div:first-child span{line-height:1.45}.review-status-info{background:#eef4ff;color:#315d9a!important}.review-status-away{background:#fff3df;color:#8a5415!important}.review-disclosure{border-top:1px solid #f0edf0}.review-disclosure:first-child{border-top:0}.review-disclosure summary{cursor:pointer;border-top:0;list-style:none}.review-disclosure summary::-webkit-details-marker{display:none}.review-disclosure summary:focus-visible{outline-offset:3px;border-radius:12px;outline:3px solid #8b205f40}.review-action{background:#fff0f8;color:#8b205f!important}.review-disclosure summary:hover .review-action{background:#8b205f;color:#fff!important}.review-action-close,.review-disclosure[open] .review-action-open{display:none}.review-disclosure[open] .review-action-close{display:inline}.review-detail{background:#faf7fa;border-radius:14px;gap:10px;margin:0 0 16px;padding:16px;display:grid}.review-detail>p{color:#6c6870;margin:0 0 2px;line-height:1.45}.review-record{background:#fff;border:1px solid #e8e1e8;border-radius:12px;flex-direction:column;gap:5px;padding:13px 14px;display:flex}.review-record span{color:#5f5961;font-size:.92rem;line-height:1.45}.review-record small{color:#8a838b;overflow-wrap:anywhere}.review-record-current{background:#f5fbf7;border-color:#cce5d6}.review-move-detail{grid-template-columns:1fr 1fr}@media (max-width:800px){.review-overview{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:480px){.review-overview{grid-template-columns:1fr}.data-review-heading{flex-direction:row;align-items:flex-start}.review-row{align-items:flex-start}.review-disclosure summary.review-row{flex-direction:row}.review-action{align-self:flex-start}}@media (max-width:600px){.review-move-detail{grid-template-columns:1fr}}.students-shell{max-width:1260px}.student-summary{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:18px;display:grid}.student-summary article{background:#fff;border:1px solid #ece8ee;border-radius:18px;flex-direction:column;gap:5px;padding:20px;display:flex;box-shadow:0 12px 32px #281c290f}.student-summary strong{font-size:1.8rem}.student-summary span{color:#6c6870}.student-directory-panel{padding:0;overflow:hidden}.student-directory-heading{justify-content:space-between;align-items:center;gap:16px;padding:24px 24px 18px;display:flex}.student-directory-heading h2{margin:4px 0 0}.student-clear{color:#8b205f;font:inherit;cursor:pointer;background:0 0;border:0;font-weight:800}.student-filters{border-bottom:1px solid #eee9ee;grid-template-columns:2fr repeat(5,minmax(120px,1fr));gap:10px;padding:0 24px 22px;display:grid}.student-filters label{flex-direction:column;gap:6px;min-width:0;display:flex}.student-filters label>span{letter-spacing:.06em;text-transform:uppercase;color:#77717a;font-size:.76rem;font-weight:800}.student-filters input,.student-filters select{color:#28232a;width:100%;min-height:44px;font:inherit;background:#fff;border:1px solid #d5cfd6;border-radius:11px;padding:10px 11px}.student-filters input:focus,.student-filters select:focus{border-color:#8b205f;outline:3px solid #8b205f21}.student-table-wrap{overflow-x:auto}.student-table{border-collapse:collapse;text-align:left;width:100%}.student-table th{color:#77717a;letter-spacing:.07em;text-transform:uppercase;background:#faf7fa;padding:13px 18px;font-size:.76rem}.student-table td{vertical-align:top;border-top:1px solid #f0edf0;padding:17px 18px}.student-table td:first-child{width:20%}.student-table td:nth-child(2){width:29%}.student-table td:nth-child(3){width:17%}.student-table td:last-child{width:34%}.student-table td,.student-class{line-height:1.4}.student-table td>strong,.student-table td>a,.student-table td>span,.student-table td>small,.student-class strong,.student-class span{display:block}.student-table td>a{color:#7b235d;overflow-wrap:anywhere;width:fit-content;text-decoration:none}.student-table td>a:hover{text-decoration:underline}.student-table td>small,.student-class span{color:#77717a;margin-top:4px;font-size:.82rem}.student-class+.student-class{border-top:1px dashed #e4dfe5;margin-top:11px;padding-top:11px}.student-status{border-radius:999px;width:fit-content;margin-top:7px;padding:5px 8px;font-size:.75rem;font-weight:800;display:inline-flex!important}.student-status-permanent{color:#17613b;background:#e8f8ef}.student-status-trial{color:#315d9a;background:#eef4ff}.student-status-tentative{color:#8a5415;background:#fff3df}.student-status-needs_class{color:#9b1c1c;background:#fff0f0}.student-warning{font-weight:700;color:#9b1c1c!important}.student-muted{color:#89828b;margin-top:4px;font-size:.86rem}.student-no-results{margin:24px}.student-table td[data-label=Parent\ contact] strong{margin-bottom:3px}@media (max-width:1050px){.student-filters{grid-template-columns:repeat(3,minmax(0,1fr))}.student-search{grid-column:span 2}}@media (max-width:760px){.student-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.student-directory-heading{align-items:flex-start}.student-filters{grid-template-columns:1fr 1fr}.student-search{grid-column:1/-1}.student-table,.student-table tbody,.student-table tr,.student-table td{display:block}.student-table thead{display:none}.student-table tr{border-top:1px solid #eee9ee;padding:8px 18px}.student-table td,.student-table td:first-child,.student-table td:nth-child(2),.student-table td:nth-child(3),.student-table td:last-child{border:0;width:100%;padding:10px 0}.student-table td:before{content:attr(data-label);color:#77717a;letter-spacing:.07em;text-transform:uppercase;margin-bottom:5px;font-size:.72rem;font-weight:800;display:block}.student-table td:first-child:before{display:none}}@media (max-width:480px){.student-summary{grid-template-columns:1fr 1fr}.student-summary article{padding:16px}.student-summary strong{font-size:1.5rem}.student-directory-heading{padding:20px 18px 16px}.student-filters{grid-template-columns:1fr;padding:0 18px 20px}.student-search{grid-column:auto}.student-clear{padding:0}.student-table tr{padding-left:18px;padding-right:18px}}.student-profile-link{flex-direction:column;gap:3px;width:fit-content;display:flex;color:#27222a!important;text-decoration:none!important}.student-profile-link>span{color:#8b205f;font-size:.78rem;font-weight:800}.student-profile-link:hover>strong,.student-profile-link:focus-visible>strong{text-decoration:underline}.student-profile-link:focus-visible{outline-offset:4px;border-radius:6px;outline:3px solid #8b205f2e}.student-profile-shell{max-width:1080px}.profile-header{justify-content:space-between;align-items:flex-start;gap:24px;margin-bottom:24px;display:flex}.profile-header h1{margin:6px 0 12px;font-size:clamp(2.2rem,6vw,4rem);line-height:1.05}.profile-warning{color:#8c2525;background:#fff5f5;border:1px solid #f0c7c7;border-radius:14px;justify-content:space-between;align-items:center;gap:18px;margin-bottom:18px;padding:15px 18px;display:flex}.profile-warning span{text-align:right;font-weight:700}.profile-grid{grid-template-columns:1.35fr .8fr 1fr;gap:18px;display:grid}.profile-card{min-width:0}.profile-card>.admin-label{margin:0 0 14px}.profile-class+.profile-class{border-top:1px dashed #e4dfe5;margin-top:16px;padding-top:16px}.profile-class h2,.profile-empty h2{margin:0 0 7px;font-size:1.35rem;line-height:1.3}.profile-class p,.profile-empty p{color:#706a72;margin:0;line-height:1.5}.profile-facts{gap:14px;margin:0;display:grid}.profile-facts>div{min-width:0}.profile-facts dt{color:#77717a;letter-spacing:.06em;text-transform:uppercase;margin-bottom:4px;font-size:.76rem;font-weight:800}.profile-facts dd{overflow-wrap:anywhere;margin:0;font-weight:750;line-height:1.45}.profile-facts a{color:#7b235d;text-decoration:none}.profile-facts a:hover{text-decoration:underline}.profile-contact-source{color:#77717a;margin-top:4px;font-size:.78rem;font-weight:500;display:block}.profile-activity-panel,.profile-history{margin-top:18px}.profile-count{color:#315d9a;background:#eef4ff;border-radius:999px;justify-content:center;align-items:center;min-width:42px;height:42px;padding:0 12px;font-weight:900;display:inline-flex}.profile-activity-list{flex-direction:column;display:flex}.profile-activity{border-top:1px solid #f0edf0;padding:16px 0}.profile-activity:first-child{border-top:0}.profile-activity>div{grid-template-columns:auto 1fr;align-items:center;gap:4px 12px;display:grid}.profile-activity-type{color:#315d9a;background:#eef4ff;border-radius:999px;grid-row:1/4;align-self:start;padding:6px 9px;font-size:.75rem;font-weight:850;display:inline-flex}.profile-activity-away{color:#8a5415;background:#fff3df}.profile-activity strong{line-height:1.35}.profile-activity div>span:not(.profile-activity-type),.profile-activity small{color:#706a72;grid-column:2;line-height:1.45}.profile-activity small{font-size:.82rem}.profile-history{padding:0;overflow:hidden}.profile-history>summary{cursor:pointer;justify-content:space-between;align-items:center;gap:18px;padding:24px;list-style:none;display:flex}.profile-history>summary::-webkit-details-marker{display:none}.profile-history>summary h2{margin:4px 0 0}.profile-history>.profile-activity-list{border-top:1px solid #eee9ee;padding:0 24px 8px}.profile-history[open] .admin-action{color:#fff;background:#8b205f}.profile-baseline-note{color:#817a83;margin:18px 4px 0;font-size:.86rem;line-height:1.5}@media (max-width:900px){.profile-grid{grid-template-columns:1fr 1fr}.profile-class-card{grid-column:1/-1}}@media (max-width:600px){.profile-header{flex-direction:column}.profile-grid{grid-template-columns:1fr}.profile-class-card{grid-column:auto}.profile-warning{flex-direction:column;align-items:flex-start}.profile-warning span{text-align:left}.profile-history>summary{flex-direction:column;align-items:flex-start}.profile-activity>div{grid-template-columns:1fr}.profile-activity-type{grid-row:auto;width:fit-content}.profile-activity div>span:not(.profile-activity-type),.profile-activity small{grid-column:auto}}.profile-identity{align-items:center;gap:22px;min-width:0;display:flex}.profile-title{min-width:0}.student-photo-editor{align-items:center;gap:14px;display:flex}.student-photo-frame{background:linear-gradient(145deg,#fff0f8,#eee9f7);border:3px solid #fff;border-radius:24px;flex:0 0 132px;place-items:center;width:132px;height:132px;display:grid;position:relative;overflow:hidden;box-shadow:0 10px 28px #3f233b24}.student-photo-frame>img{object-fit:cover;width:100%;height:100%}.student-photo-frame>span:not(.student-photo-saving){color:#8b205f;font-size:3rem;font-weight:900}.student-photo-saving{color:#fff;text-align:center;background:#20202ad1;border-radius:9px;padding:6px 8px;font-size:.75rem;font-weight:800;display:block;position:absolute;inset:auto 8px 8px}.student-photo-controls{flex-direction:column;align-items:flex-start;gap:7px;max-width:175px;display:flex}.student-photo-input{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.student-photo-button{width:100%;padding:10px 13px;font-size:.86rem}.student-photo-button:disabled,.student-photo-remove:disabled{cursor:wait;opacity:.62}.student-photo-remove{color:#8b205f;font:inherit;cursor:pointer;background:0 0;border:0;padding:0;font-size:.8rem;font-weight:800}.student-photo-controls small{color:#77717a;font-size:.74rem;line-height:1.35}.student-photo-success,.student-photo-error{font-size:.78rem;font-weight:800;line-height:1.3}.student-photo-success{color:#17613b}.student-photo-error{color:#9b1c1c}@media (max-width:760px){.profile-header{gap:14px}.profile-identity{flex-direction:column;align-items:flex-start;width:100%}.student-photo-editor{background:#fff;border:1px solid #ece8ee;border-radius:20px;width:100%;padding:14px;box-shadow:0 10px 26px #281c290f}.student-photo-frame{flex-basis:124px;width:124px;height:124px}.student-photo-controls{flex:1;max-width:none}.student-photo-button{width:auto;min-height:46px}.profile-title h1{overflow-wrap:anywhere}}@media (max-width:420px){.student-photo-editor{flex-direction:column;align-items:stretch}.student-photo-frame{aspect-ratio:4/3;flex-basis:auto;width:100%;height:auto}.student-photo-controls,.student-photo-button{width:100%}}.coach-classes-shell,.coach-roster-shell{max-width:1120px}.coach-class-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;display:grid}.coach-class-card{color:#28232a;background:#fff;border:1px solid #ece8ee;border-radius:20px;justify-content:space-between;align-items:center;gap:18px;min-width:0;padding:22px;text-decoration:none;transition:transform .16s,box-shadow .16s,border-color .16s;display:flex;box-shadow:0 12px 32px #281c290f}.coach-class-card:hover,.coach-class-card:focus-visible{border-color:#cfa2bd;outline:none;transform:translateY(-2px);box-shadow:0 16px 38px #40223b1f}.coach-class-card h2{margin:5px 0 4px;font-size:1.7rem}.coach-class-card p{color:#5e5760;margin:0 0 5px;font-weight:750}.coach-class-card>div:first-child>span:last-child{color:#817a83;font-size:.88rem}.coach-class-day{color:#8b205f;letter-spacing:.08em;text-transform:uppercase;font-size:.76rem;font-weight:900}.coach-class-count{color:#8b205f;background:#fff0f8;border-radius:18px;flex-direction:column;flex:0 0 68px;justify-content:center;align-items:center;width:68px;height:68px;display:flex}.coach-class-count strong{font-size:1.5rem;line-height:1}.coach-class-count span{margin-top:4px;font-size:.72rem;font-weight:800}.coach-roster-header{justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:15px;display:flex}.coach-roster-header h1{margin:6px 0 7px;font-size:clamp(2.2rem,6vw,3.8rem);line-height:1.05}.coach-roster-header p:last-child{color:#6c6870;margin:0;font-size:1.05rem}.coach-date-form{flex-direction:column;gap:7px;min-width:290px;display:flex}.coach-date-form>label{color:#77717a;letter-spacing:.07em;text-transform:uppercase;font-size:.76rem;font-weight:850}.coach-date-form>div{display:flex}.coach-date-form input{color:#28232a;min-width:0;font:inherit;background:#fff;border:1px solid #cfc7d0;border-right:0;border-radius:12px 0 0 12px;flex:1;padding:11px 12px}.coach-date-form button{color:#fff;font:inherit;cursor:pointer;background:#8b205f;border:0;border-radius:0 12px 12px 0;padding:0 16px;font-weight:850}.coach-lesson-date{color:#6c6870;margin:0 0 16px}.coach-roster-summary{grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;margin-bottom:18px;display:grid}.coach-roster-summary article{background:#fff;border:1px solid #ece8ee;border-radius:16px;flex-direction:column;gap:4px;padding:16px 18px;display:flex;box-shadow:0 8px 22px #281c290b}.coach-roster-summary strong{font-size:1.55rem}.coach-roster-summary span{color:#706a72;font-size:.85rem}.coach-roster-list{gap:14px;display:grid}.coach-student-card{background:#fff;border:1px solid #ece8ee;border-radius:20px;grid-template-columns:132px 1fr;min-width:0;display:grid;overflow:hidden;box-shadow:0 10px 28px #281c290e}.coach-student-away{background:#fffaf2;border-color:#eed8b5}.coach-student-photo{background:linear-gradient(145deg,#fff0f8,#eee9f7);place-items:center;min-height:154px;text-decoration:none;display:grid;overflow:hidden}.coach-student-photo img{object-fit:cover;width:100%;height:100%}.coach-student-photo span{color:#8b205f;font-size:2.8rem;font-weight:900}.coach-student-body{min-width:0;padding:18px 20px}.coach-student-heading{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.coach-student-heading h3{margin:6px 0 0;font-size:1.35rem}.coach-student-heading h3 a{color:#28232a;text-decoration:none}.coach-student-heading h3 a:hover{text-decoration:underline}.coach-profile-link{color:#8b205f;white-space:nowrap;font-size:.82rem;font-weight:850;text-decoration:none}.coach-roster-status{border-radius:999px;padding:5px 8px;font-size:.72rem;font-weight:850;display:inline-flex}.coach-roster-regular{color:#17613b;background:#e8f8ef}.coach-roster-makeup{color:#315d9a;background:#eef4ff}.coach-roster-trial{color:#6642a0;background:#f1edff}.coach-roster-away{color:#8a5415;background:#fff0d9}.coach-student-detail{color:#77717a;margin:8px 0 13px;font-size:.88rem}.coach-summary-preview{background:#faf7fa;border-radius:13px;padding:12px 14px}.coach-summary-preview strong{letter-spacing:.06em;text-transform:uppercase;color:#77717a;font-size:.75rem}.coach-summary-preview p{color:#4f4951;margin:5px 0 0;line-height:1.45}.coach-summary-editor{margin-top:18px}.coach-summary-editor h2{margin:4px 0 0}.coach-summary-editor textarea{color:#28232a;width:100%;font:inherit;resize:vertical;background:#fff;border:1px solid #cfc7d0;border-radius:14px;margin-top:18px;padding:14px;line-height:1.5}.coach-summary-editor textarea:focus{border-color:#8b205f;outline:3px solid #8b205f21}.coach-summary-actions{justify-content:space-between;align-items:center;gap:16px;margin-top:10px;display:flex}.coach-summary-actions>span{color:#817a83;font-size:.8rem}.coach-summary-actions button:disabled{cursor:not-allowed;opacity:.55}.coach-summary-success,.coach-summary-error{margin:10px 0 0;font-size:.86rem;font-weight:800}.coach-summary-success{color:#17613b}.coach-summary-error{color:#9b1c1c}@media (max-width:900px){.coach-class-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.coach-roster-summary{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width:650px){.coach-class-grid{grid-template-columns:1fr}.coach-roster-header{flex-direction:column;align-items:stretch}.coach-date-form{min-width:0}.coach-roster-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.coach-student-card{grid-template-columns:96px 1fr}.coach-student-photo{min-height:132px}.coach-student-heading{gap:8px}.coach-profile-link{display:none}}@media (max-width:430px){.coach-student-card{grid-template-columns:1fr}.coach-student-photo{height:180px}.coach-student-body{padding:16px}.coach-roster-summary article{padding:14px}.coach-summary-actions{flex-direction:column;align-items:stretch}.coach-summary-actions .admin-action{width:100%}}n.coach-day-filter{gap:8px;margin:0 0 12px;padding:2px 1px 4px;display:flex;overflow-x:auto}.coach-day-filter a{color:#625c64;background:#fff;border:1px solid #d9d2da;border-radius:999px;justify-content:center;align-items:center;min-width:58px;padding:10px 13px;font-weight:850;text-decoration:none;display:inline-flex}.coach-day-filter a:hover,.coach-day-filter a:focus-visible{color:#8b205f;border-color:#8b205f;outline:none}.coach-day-filter a.active{color:#fff;background:#8b205f;border-color:#8b205f}.coach-class-result-count{color:#77717a;margin:0 0 14px;font-size:.9rem;font-weight:750}n .coach-capacity-notice,.coach-capacity-list-alert{border:1px solid;border-radius:16px;justify-content:space-between;align-items:center;gap:18px;margin:0 0 18px;padding:16px 18px;display:flex}.coach-capacity-notice>div,.coach-capacity-list-alert{min-width:0}.coach-capacity-notice strong,.coach-capacity-notice span,.coach-capacity-list-alert strong,.coach-capacity-list-alert span{display:block}.coach-capacity-notice span,.coach-capacity-list-alert span{margin-top:4px;font-size:.88rem}.coach-capacity-available{color:#236344;background:#f2faf5;border-color:#cce5d6}.coach-capacity-full{color:#80501a;background:#fff8eb;border-color:#ecd2a8}.coach-capacity-over,.coach-capacity-list-alert{color:#941f1f;background:#fff1f1;border-color:#efb9b9}.coach-capacity-badge{color:#fff;text-transform:uppercase;letter-spacing:.05em;background:#941f1f;border-radius:999px;flex:none;padding:7px 10px;font-weight:900;margin:0!important;font-size:.75rem!important}.coach-summary-over{color:#941f1f;background:#fff5f5!important;border-color:#efb9b9!important}.coach-capacity-list-alert{flex-direction:column;align-items:flex-start;gap:0}.coach-class-card-over{background:#fff7f7;border:2px solid #d94a4a}.coach-class-card-over:hover,.coach-class-card-over:focus-visible{border-color:#b51f1f}.coach-class-card-over .coach-class-count{color:#fff;background:#941f1f}.coach-class-card-full .coach-class-count{color:#80501a;background:#fff0d9}.coach-class-warning{color:#a12626;margin-top:10px;font-size:.82rem;display:block}.coach-class-count strong{font-size:1.3rem}.coach-capacity-reviewed{color:#236344;background:#f2faf5;border-color:#b9d8c6}.coach-capacity-badge-reviewed{background:#28764f}.coach-class-card-reviewed{background:#f7fcf9;border-color:#b9d8c6}.coach-class-card-reviewed .coach-class-count{color:#236344;background:#e2f3e9}.coach-class-reviewed-label{color:#28764f;margin-top:10px;font-size:.82rem;display:block}@media (max-width:480px){.coach-capacity-notice{flex-direction:column;align-items:flex-start}.coach-capacity-badge{align-self:flex-start}}@media (max-width:900px){.coach-class-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.coach-roster-summary{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width:650px){.coach-class-grid{grid-template-columns:1fr}.coach-roster-header{flex-direction:column;align-items:stretch}.coach-date-form{min-width:0}.coach-roster-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.coach-student-card{grid-template-columns:96px 1fr}.coach-student-photo{min-height:132px}.coach-student-heading{gap:8px}.coach-profile-link{display:none}}@media (max-width:430px){.coach-student-card{grid-template-columns:1fr}.coach-student-photo{height:180px}.coach-student-body{padding:16px}.coach-roster-summary article{padding:14px}.coach-summary-actions{flex-direction:column;align-items:stretch}.coach-summary-actions .admin-action{width:100%}}.coach-class-grid{align-items:start}.coach-class-card{padding:0;display:block;overflow:hidden}.coach-class-card-main{color:#28232a;justify-content:space-between;align-items:center;gap:18px;padding:22px;text-decoration:none;display:flex}.coach-class-card-main:focus-visible{outline-offset:-3px;outline:3px solid #8b205f33}.coach-class-card-main>div:first-child>span:last-child{color:#817a83;font-size:.88rem}.coach-outlet-filter{align-items:center;gap:8px;margin:0 0 14px;padding:2px 1px 4px;display:flex;overflow-x:auto}.coach-outlet-filter>span{color:#77717a;text-transform:uppercase;letter-spacing:.06em;margin-right:2px;font-size:.78rem;font-weight:850}.coach-outlet-filter a{color:#625c64;white-space:nowrap;background:#fff;border:1px solid #d9d2da;border-radius:11px;justify-content:center;align-items:center;padding:9px 13px;font-size:.88rem;font-weight:800;text-decoration:none;display:inline-flex}.coach-outlet-filter a:hover,.coach-outlet-filter a:focus-visible{color:#8b205f;border-color:#8b205f;outline:none}.coach-outlet-filter a.active{color:#8b205f;background:#fff0f8;border-color:#8b205f}.coach-class-students{border-top:1px solid #eee8ee}.coach-class-students summary{color:#7b235d;cursor:pointer;justify-content:space-between;align-items:center;gap:10px;padding:13px 18px;font-size:.86rem;font-weight:850;list-style:none;display:flex}.coach-class-students summary::-webkit-details-marker{display:none}.coach-class-students summary:focus-visible{outline-offset:-3px;outline:3px solid #8b205f2e}.coach-class-students summary span:last-child{font-size:1.1rem;transition:transform .15s}.coach-class-students[open] summary span:last-child{transform:rotate(180deg)}.coach-class-students ul{margin:0;padding:0 18px 14px;list-style:none}.coach-class-students li{border-top:1px solid #f1edf1;justify-content:space-between;align-items:baseline;gap:12px;padding:9px 0;display:flex}.coach-class-students li a{color:#39323a;overflow-wrap:anywhere;min-width:0;font-weight:750;text-decoration:none}.coach-class-students li a:hover{text-decoration:underline}.coach-class-students li span{color:#77717a;flex:none;font-size:.8rem}.coach-class-students>p{color:#77717a;margin:0;padding:2px 18px 16px;font-size:.84rem;font-weight:600}.ops-shell{width:min(1180px,100% - 28px);margin:0 auto;padding:24px 0 64px}.ops-hero{justify-content:space-between;align-items:flex-start;gap:18px;margin-bottom:14px;display:flex}.ops-hero h1{margin:3px 0 6px;font-size:clamp(2rem,5vw,3.2rem)}.ops-hero p{color:#657086;margin:0}.ops-back{color:#243047;background:#fff;border-radius:12px;flex:none;padding:10px 13px;text-decoration:none;box-shadow:0 5px 18px #18213314}.ops-summary{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:16px 0;display:grid}.ops-summary article{background:#fff;border:1px solid #e0e5ef;border-radius:16px;gap:3px;padding:14px;display:grid}.ops-summary article.has-warning{background:#fff8ed;border-color:#f2bf8d}.ops-summary strong{font-size:1.65rem}.ops-summary span{color:#6b7588;font-size:.82rem}.ops-tabs{z-index:20;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffffff7;border:1px solid #e0e5ef;border-radius:16px;grid-template-columns:repeat(4,1fr);gap:6px;margin:16px 0;padding:6px;display:grid;position:sticky;top:6px;box-shadow:0 8px 24px #18213314}.ops-tabs button{color:#465066;min-height:46px;font:inherit;cursor:pointer;background:0 0;border:0;border-radius:11px;justify-content:center;align-items:center;gap:6px;font-weight:850;display:flex}.ops-tabs button b{color:#657086;background:#eef1f6;border-radius:999px;min-width:22px;padding:3px 6px;font-size:.7rem}.ops-tabs button.is-active{color:#fff;background:#ee5c92}.ops-tabs button.is-active b{color:#fff;background:#fff3}.ops-panel{background:#fff;border:1px solid #e0e5ef;border-radius:20px;margin-top:14px;padding:18px;box-shadow:0 8px 28px #1821330f}.ops-heading{justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px;display:flex}.ops-heading h2{margin:2px 0 0;font-size:1.35rem}.ops-subcopy{color:#6a7487;margin:5px 0 0;font-size:.86rem}.ops-list{gap:8px;display:grid}.ops-row{background:#f7f9fc;border-radius:14px;grid-template-columns:110px minmax(0,1fr) auto;align-items:center;gap:14px;padding:13px;display:grid}.ops-row>div{gap:3px;display:grid}.ops-row span{color:#697489;font-size:.82rem}.ops-row>b{text-align:right;justify-self:end}.ops-date strong{font-size:.92rem}.ops-main strong{font-size:1rem}.ops-warning{color:#b64525}.ops-action-cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.ops-action-cards a{color:#243047;background:#f7f9fc;border:1px solid #e1e5ed;border-radius:15px;gap:5px;padding:16px;text-decoration:none;display:grid}.ops-action-cards strong{font-size:1.02rem}.ops-action-cards span{color:#687388;font-size:.84rem;line-height:1.4}.ops-payroll-cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.ops-payroll-cards article{background:#f8f9fc;border:1px solid #e1e5ed;border-radius:15px;padding:14px}.ops-payroll-cards header{justify-content:space-between;align-items:center;gap:10px;display:flex}.ops-payroll-cards header b{color:#b62962}.ops-payroll-cards article>div{flex-wrap:wrap;gap:7px;margin-top:10px;display:flex}.ops-payroll-cards span{color:#677186;background:#fff;border-radius:999px;padding:6px 8px;font-size:.76rem}.ops-footnote{color:#6a7487;margin:12px 0 0;font-size:.8rem;line-height:1.45}.ops-filters{background:#f8fafc;border:1px solid #e2e7ef;border-radius:16px;grid-template-columns:repeat(5,minmax(0,1fr)) auto;align-items:end;gap:9px;margin:4px 0 12px;padding:12px;display:grid}.ops-filters label{gap:5px;display:grid}.ops-filters label>span{color:#667186;font-size:.72rem;font-weight:850}.ops-filters select{color:#263147;width:100%;min-height:42px;font:inherit;background:#fff;border:1px solid #d5dce8;border-radius:10px;padding:8px 10px;font-size:.86rem}.ops-clear-filters{color:#526078;cursor:pointer;background:#edf1f7;border:0;border-radius:10px;min-height:42px;padding:8px 12px;font-weight:850}.ops-clear-filters:disabled{cursor:default;opacity:.45}.ops-filter-summary{color:#697489;align-items:baseline;gap:6px;margin:2px 0 10px;display:flex}.ops-filter-summary strong{color:#263147;font-size:1.3rem}.ops-week-calendar{grid-template-columns:repeat(7,minmax(145px,1fr));gap:8px;padding-bottom:6px;display:grid;overflow-x:auto}.ops-week-calendar.is-single-day{grid-template-columns:minmax(280px,520px)}.ops-day-column{background:#f7f9fc;border:1px solid #dfe5ee;border-radius:14px;min-width:0;overflow:hidden}.ops-day-column>header{background:#eef2f7;border-bottom:1px solid #e2e7ef;justify-content:space-between;align-items:center;gap:8px;padding:10px 11px;display:flex}.ops-day-column>header strong{font-size:.9rem}.ops-day-column>header span{color:#6d788c;font-size:.7rem}.ops-day-shifts{gap:7px;padding:8px;display:grid}.ops-shift-card{color:#223047;text-align:left;width:100%;font:inherit;cursor:pointer;background:#d9edf7;border:1px solid #0000;border-radius:11px;display:block;overflow:hidden;box-shadow:0 2px 7px #1f2b4112}.ops-shift-card:hover{transform:translateY(-1px);box-shadow:0 6px 14px #1f2b411f}.ops-shift-card.is-intermediate{background:#d9e0fb}.ops-shift-card.is-youth{background:#e4dcfb}.ops-shift-time{padding:7px 8px 4px}.ops-shift-time strong{font-size:.73rem}.ops-shift-body{gap:2px;padding:0 8px 8px;display:grid}.ops-shift-body>strong{font-size:.78rem;line-height:1.25}.ops-shift-body span{color:#546277;font-size:.7rem}.ops-shift-body b{color:#223047;margin-top:2px;font-size:.74rem}.ops-shift-card.is-unassigned .ops-shift-body b{color:#b14e18}.ops-day-empty{color:#8a93a3;text-align:center;margin:0;padding:18px 8px;font-size:.75rem}.ops-calendar-legend{flex-wrap:wrap;gap:10px;margin-top:11px;display:flex}.ops-calendar-legend span{color:#6b7588;align-items:center;gap:5px;font-size:.74rem;display:flex}.ops-calendar-legend i{background:#d9edf7;border-radius:3px;width:12px;height:12px}.ops-calendar-legend i.is-intermediate{background:#d9e0fb}.ops-calendar-legend i.is-youth{background:#e4dcfb}.ops-view-switch{align-items:center;gap:7px;margin:0 0 12px;display:flex}.ops-view-switch button{color:#4b586f;cursor:pointer;background:#fff;border:1px solid #dbe1eb;border-radius:10px;min-height:40px;padding:8px 14px;font-weight:850}.ops-view-switch button.is-active{color:#fff;background:#ee5c92;border-color:#ee5c92}.ops-view-switch input{min-height:40px;font:inherit;background:#fff;border:1px solid #dbe1eb;border-radius:10px;padding:7px 10px}.ops-month-calendar{overflow-x:auto}.ops-month-weekdays,.ops-month-grid{grid-template-columns:repeat(7,minmax(145px,1fr));min-width:1015px;display:grid}.ops-month-weekdays strong{color:#677287;text-align:center;padding:8px;font-size:.74rem}.ops-month-grid{border-top:1px solid #dfe5ee;border-left:1px solid #dfe5ee}.ops-month-day{background:#fbfcfe;border-bottom:1px solid #dfe5ee;border-right:1px solid #dfe5ee;min-height:150px;padding:7px}.ops-month-day.is-empty{background:#f3f5f8}.ops-month-day>header{margin-bottom:6px}.ops-month-day>header strong{font-size:.8rem}.ops-month-day>div{gap:5px;display:grid}.ops-shift-card.is-compact .ops-shift-time{padding:5px 6px 2px}.ops-shift-card.is-compact .ops-shift-body{padding:0 6px 6px}.ops-shift-card.is-compact .ops-shift-body span{display:none}.ops-shift-card.is-compact .ops-shift-body>strong,.ops-shift-card.is-compact .ops-shift-body b{font-size:.68rem}.ops-modal{z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0f172a8c;place-items:center;padding:18px;display:grid;position:fixed;inset:0}.ops-modal-card{background:#fff;border-radius:20px;width:min(560px,100%);max-height:min(88vh,760px);overflow:auto;box-shadow:0 30px 80px #0f172a4d}.ops-modal-card>header{border-bottom:1px solid #e5e9f0;justify-content:space-between;align-items:flex-start;gap:12px;padding:18px 20px;display:flex}.ops-modal-card h2{margin:3px 0 0}.ops-modal-card>header>button{color:#334155;cursor:pointer;background:#f0f3f7;border:0;border-radius:999px;width:38px;height:38px;font-size:1.5rem}.ops-modal-classes{gap:8px;padding:16px 20px;display:grid}.ops-modal-classes>p{color:#667186;text-transform:uppercase;margin:0;font-size:.78rem;font-weight:850}.ops-modal-classes article{background:#f6f8fb;border-radius:12px;gap:3px;padding:11px 12px;display:grid}.ops-modal-classes article span{color:#667186;font-size:.8rem}.ops-modal-form{grid-template-columns:1fr 1fr;gap:10px;padding:0 20px 16px;display:grid}.ops-modal-form label{gap:5px;display:grid}.ops-modal-form label:first-child{grid-column:1/-1}.ops-modal-form label>span{color:#667186;font-size:.74rem;font-weight:850}.ops-modal-form input{width:100%;min-height:44px;font:inherit;background:#fff;border:1px solid #d5dce8;border-radius:10px;padding:8px 10px}.ops-save-success,.ops-save-error{border-radius:10px;margin:0 20px 12px;padding:9px 11px;font-weight:750}.ops-save-success{color:#267047;background:#eaf8ef}.ops-save-error{color:#a12929;background:#fff0f0}.ops-modal-actions{border-top:1px solid #e8ebf1;justify-content:flex-end;gap:8px;padding:14px 20px 20px;display:flex}@media (max-width:1000px){.ops-filters{grid-template-columns:repeat(3,minmax(0,1fr))}.ops-clear-filters{width:100%}}@media (max-width:700px){.ops-shell{width:min(100% - 18px,1180px);padding-top:16px}.ops-hero{align-items:center}.ops-hero h1{font-size:1.9rem}.ops-hero p{font-size:.88rem}.ops-summary{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.ops-summary article{padding:12px}.ops-tabs{top:4px}.ops-tabs button{min-height:44px;padding:5px 2px;font-size:.74rem}.ops-tabs button b{display:none}.ops-panel{padding:13px}.ops-heading{align-items:flex-start}.ops-heading .admin-action{font-size:.75rem}.ops-row{grid-template-columns:82px minmax(0,1fr);gap:9px}.ops-row>b{text-align:left;grid-column:2;justify-self:start;font-size:.82rem}.ops-action-cards,.ops-payroll-cards{grid-template-columns:1fr}.ops-filters{grid-template-columns:1fr 1fr;padding:10px}.ops-week-calendar{grid-template-columns:1fr;overflow:visible}.ops-week-calendar:not(.is-single-day) .ops-day-column{display:none}.ops-week-calendar:not(.is-single-day) .ops-day-column:first-child{display:block}.ops-day-column>header{padding:12px}.ops-day-column>header strong{font-size:1rem}.ops-day-shifts{gap:8px;padding:9px}.ops-shift-card:not(.is-compact){grid-template-columns:92px minmax(0,1fr);display:grid}.ops-shift-time{align-items:center;padding:9px;display:flex}.ops-shift-time strong{font-size:.76rem}.ops-shift-body{padding:9px}.ops-shift-body>strong{font-size:.86rem}.ops-shift-body span,.ops-shift-body b{font-size:.76rem}.ops-month-weekdays,.ops-month-grid{grid-template-columns:repeat(7,minmax(120px,1fr));min-width:840px}.ops-month-day{min-height:130px}.ops-modal{place-items:end center;padding:10px}.ops-modal-card{border-radius:20px 20px 0 0;max-height:92vh}.ops-modal-form{grid-template-columns:1fr}.ops-modal-form label:first-child{grid-column:auto}}@media (max-width:460px){.ops-filters{grid-template-columns:1fr}.ops-clear-filters{width:100%}.ops-view-switch{flex-wrap:wrap}.ops-view-switch input{width:100%}}.ops-shift-body small{color:#667186;margin-top:2px;font-size:.65rem;font-weight:750}.ops-group-coaches{gap:8px;padding:16px 20px;display:grid}.ops-group-coaches>p{color:#667186;text-transform:uppercase;margin:0;font-size:.78rem;font-weight:850}.ops-group-coaches article{background:#f6f8fb;border-radius:12px;justify-content:space-between;align-items:center;gap:12px;padding:11px 12px;display:flex}.ops-group-coaches article>div{gap:3px;display:grid}.ops-group-coaches article span{color:#667186;font-size:.8rem}.ops-group-coaches article button{color:#fff;cursor:pointer;background:#ee5c92;border:0;border-radius:9px;min-height:38px;padding:7px 13px;font-weight:850}.ops-modal-card>header p:last-child{color:#667186;margin:5px 0 0;font-size:.86rem}@media (max-width:600px){.ops-group-coaches article{flex-direction:column;align-items:stretch}.ops-group-coaches article button{width:100%}}.ops-shift-card.is-outlet-bdm{background:#d8edf8;border-color:#b5d9eb}.ops-shift-card.is-outlet-oth{background:#e9ddfb;border-color:#d4c0f3}.ops-shift-card.is-outlet-other{background:#f3e5d7;border-color:#e6cdb7}.ops-shift-card.is-youth{background:#fde2ec;border-color:#f5bdd1}.ops-shift-card.is-unassigned{background:#fff0df;border-color:#ef9a38}.ops-calendar-legend i.is-outlet-bdm{background:#d8edf8;border:1px solid #b5d9eb}.ops-calendar-legend i.is-outlet-oth{background:#e9ddfb;border:1px solid #d4c0f3}.ops-calendar-legend i.is-youth{background:#fde2ec;border:1px solid #f5bdd1}.ops-calendar-legend i.is-unassigned{background:#fff0df;border:1px solid #ef9a38}.ops-calendar-legend span:has(.is-outlet-yoha){display:none}.coach-shell{color:#182133;background:#f7f8fc;max-width:760px;min-height:100vh;margin:0 auto;padding:24px 18px 80px}.coach-hero,.coach-dashboard-header{color:#fff;background:linear-gradient(135deg,#202a44,#364d86);border-radius:24px;padding:22px;box-shadow:0 12px 30px #202a4429}.coach-eyebrow{letter-spacing:.12em;text-transform:uppercase;margin:0 0 7px;font-size:.76rem;font-weight:800}.coach-hero h1,.coach-dashboard-header h1{margin:0;font-size:clamp(1.8rem,7vw,2.6rem);line-height:1.05}.coach-hero p,.coach-dashboard-header p{margin:10px 0 0;line-height:1.5}.coach-name-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:20px 0;display:grid}.coach-name-grid button,.coach-primary{color:#fff;background:#ee5c92;border:0;border-radius:16px;min-height:56px;font-size:1rem;font-weight:800;box-shadow:0 7px 16px #ee5c9238}.coach-relief-link,.coach-secondary{color:#27334e;background:#fff;border:2px solid #d8ddec;border-radius:16px;width:100%;min-height:50px;font-weight:800}.coach-dashboard-header{justify-content:space-between;align-items:center;gap:16px;display:flex}.coach-dashboard-header button{color:#fff;background:0 0;border:1px solid #ffffff8c;border-radius:999px;flex:none;padding:9px 12px;font-weight:700}.coach-weekly-link{color:#202a44;background:#fff;border:1px solid #dbe0ec;border-radius:17px;justify-content:space-between;align-items:center;gap:14px;margin:14px 0;padding:15px 17px;text-decoration:none;display:flex;box-shadow:0 6px 18px #232d460d}.coach-weekly-link>span:first-child{gap:3px;display:grid}.coach-weekly-link strong{font-size:1rem}.coach-weekly-link small{color:#667085;font-size:.82rem}.coach-weekly-link>span:last-child{font-size:1.35rem}.coach-relief-actions{margin:16px 0}.coach-relief-actions>button{color:#34405b;background:#fff;border:2px dashed #bcc5db;border-radius:15px;width:100%;padding:14px;font-weight:800}.coach-relief-actions>div{color:#624a0a;background:#fff0ca;border-radius:16px;gap:4px;padding:14px 16px;display:grid}.coach-relief-actions span{font-size:.88rem}.coach-relief-actions button{color:#624a0a;background:0 0;border:0;justify-self:start;margin-top:5px;text-decoration:underline}.coach-relief-panel{background:#fff;border:1px solid #dbe0ec;border-radius:20px;margin:18px 0;padding:18px;box-shadow:0 10px 24px #1e2a4617}.coach-relief-panel h2{margin:0 0 15px}.coach-relief-panel label{gap:7px;margin:12px 0;font-weight:750;display:grid}.coach-relief-panel input,.coach-relief-panel select{color:#182133;background:#fff;border:1px solid #bfc7d9;border-radius:12px;width:100%;min-height:50px;padding:10px 12px;font-size:16px}.coach-relief-scope{border:0;gap:10px;margin:16px 0;padding:0;display:grid}.coach-relief-scope legend{margin-bottom:9px;padding:0;font-weight:800}.coach-relief-panel .coach-relief-scope label{cursor:pointer;background:#f8f9fc;border:1px solid #d8ddec;border-radius:13px;align-items:flex-start;gap:11px;margin:0;padding:13px;display:flex}.coach-relief-panel .coach-relief-scope input[type=radio]{accent-color:#ee5c92;border:0;flex:none;width:20px;height:20px;min-height:0;margin:2px 0 0;padding:0}.coach-relief-scope span{gap:3px;min-width:0;display:grid}.coach-relief-scope strong,.coach-relief-scope small{display:block}.coach-relief-scope small{color:#687388;font-size:.82rem;font-weight:600;line-height:1.35}.coach-relief-summary{color:#34405b;background:#f0f4ff;border-radius:12px;margin:10px 0 14px;padding:11px 12px;line-height:1.45}.coach-relief-panel .coach-primary{width:100%;margin-top:8px}.coach-relief-panel .coach-secondary{margin-top:10px}.coach-primary:disabled{opacity:.45}.coach-class-section{margin-top:24px}.coach-class-section>h2{text-transform:capitalize;margin:0 0 10px;font-size:1.05rem}.coach-class-card{background:#fff;border:1px solid #dfe3ed;border-radius:20px;margin:12px 0;padding:17px;box-shadow:0 8px 22px #232d4612}.coach-class-current{background:#f5f9ff;border:2px solid #3b82f6}.coach-class-soon{background:#fffaf0;border:2px solid #f0a328}.coach-class-finished{background:#f0f2f6}.coach-class-top{justify-content:space-between;align-items:flex-start;gap:14px;display:flex}.coach-state{color:#47526a;text-transform:uppercase;background:#e9edf5;border-radius:999px;margin-bottom:6px;padding:5px 8px;font-size:.72rem;font-weight:850;display:inline-block}.coach-class-current .coach-state{color:#1d4ed8;background:#dbeafe}.coach-class-soon .coach-state{color:#8a5700;background:#ffedc2}.coach-class-top h3{margin:0;font-size:1.25rem}.coach-class-top p{color:#626d80;margin:5px 0 0}.coach-class-top>a{color:#fff;background:#27334e;border-radius:12px;flex:none;padding:10px 12px;font-weight:800;text-decoration:none}.coach-counts{flex-wrap:wrap;gap:7px;margin-top:14px;display:flex}.coach-counts span{background:#eef1f7;border-radius:999px;padding:6px 9px;font-size:.8rem;font-weight:700}.coach-photo-alert,.coach-report-alert,.coach-relief-badge{border-radius:14px;gap:8px;margin-top:14px;padding:13px;display:grid}.coach-photo-alert{color:#84254b;background:#ffe3ec}.coach-photo-alert p{margin:0;font-size:.84rem;line-height:1.4}.coach-photo-alert a{color:#84254b;background:#fff;border-radius:10px;padding:9px 10px;font-weight:800;text-decoration:none}.coach-report-alert{color:#654b08;background:#fff0ca}.coach-report-alert a{color:inherit;font-weight:800}.coach-report-submitted{color:#17613b;background:#e8f8ef}.coach-relief-badge{color:#4c2781;background:#e8defe}.coach-relief-badge span{font-size:.88rem;line-height:1.4}.coach-end-prompt{color:#fff;background:#182133;border-radius:19px;margin-top:26px;padding:17px;position:sticky;bottom:12px;box-shadow:0 14px 34px #18213347}.coach-end-prompt h2,.coach-end-prompt p{margin:4px 0}.coach-end-prompt strong{color:#ffc5da;margin-top:9px;display:block}.coach-end-links{gap:8px;margin-top:12px;display:grid}.coach-end-links a{color:#182133;background:#fff;border-radius:11px;padding:10px 12px;font-weight:800;text-decoration:none;display:block}.coach-empty{text-align:center;background:#fff;border:2px dashed #cbd2e0;border-radius:20px;margin-top:20px;padding:28px 20px}.coach-loading{text-align:center;padding:40px;font-weight:700}.coach-shift-complete{color:#17613b;background:#e8f8ef;border:1px solid #a9dfbd;border-radius:16px;flex-direction:column;align-items:flex-start;gap:8px;margin:16px 0;padding:16px 18px;display:flex}.coach-shift-complete strong{font-size:1.05rem}.coach-shift-complete span{line-height:1.45}.coach-roster-changes{color:#4c2781;background:#f2ecff;border:1px solid #d8c8f1;border-radius:16px;margin:16px 0;padding:16px 18px}.coach-roster-changes h2{margin:3px 0 9px;font-size:1.18rem}.coach-roster-changes p:not(.coach-eyebrow){margin:7px 0;line-height:1.45}.coach-weekly-header a{color:#fff;border:1px solid #ffffff8c;border-radius:999px;flex:none;padding:9px 12px;font-size:.86rem;font-weight:750;text-decoration:none}.coach-weekly-tools{background:#fff;border:1px solid #dbe0ec;border-radius:18px;gap:13px;margin:16px 0;padding:16px;display:grid;box-shadow:0 6px 18px #232d460d}.coach-weekly-scope{background:#eef1f7;border-radius:13px;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;padding:4px;display:grid}.coach-weekly-scope button{color:#586276;min-height:44px;font:inherit;background:0 0;border:0;border-radius:10px;font-weight:800}.coach-weekly-scope button.is-active{color:#fff;background:#27334e;box-shadow:0 3px 8px #232d4624}.coach-weekly-tools label{gap:7px;font-weight:800;display:grid}.coach-weekly-tools input{color:#182133;background:#fff;border:1px solid #bfc7d9;border-radius:12px;width:100%;min-height:50px;padding:11px 13px;font-size:16px}.coach-weekly-tools>p{color:#667085;margin:0;font-size:.86rem}.coach-weekly-tools>p strong{color:#27334e}.coach-weekly-day{margin-top:23px}.coach-weekly-day>h2{margin:0 0 9px;font-size:1.18rem}.coach-weekly-class{background:#fff;border:1px solid #dfe3ed;border-radius:18px;margin:10px 0;padding:16px;box-shadow:0 6px 17px #232d460e}.coach-weekly-class>header{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.coach-weekly-class h3{margin:0;font-size:1.05rem;line-height:1.35}.coach-weekly-class header p{color:#667085;margin:4px 0 0;font-size:.84rem;line-height:1.4}.coach-weekly-class>header>strong{color:#34405b;background:#e9edf5;border-radius:999px;justify-content:center;align-items:center;min-width:34px;height:34px;padding:0 8px;display:flex}.coach-weekly-students{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;margin-top:13px;display:grid}.coach-weekly-students>a,.coach-weekly-students>span{color:#27334e;overflow-wrap:anywhere;background:#f2f4f8;border-radius:11px;align-items:center;min-height:44px;padding:9px 10px;font-size:.9rem;font-weight:700;display:flex}.coach-weekly-students>a{touch-action:manipulation;justify-content:space-between;gap:8px;text-decoration:none}.coach-weekly-students>a b{color:#667085;flex:none;font-size:1.35rem;line-height:1}.coach-weekly-no-match{color:#7a8497;margin:13px 0 0;font-size:.88rem}.coach-notifications{margin:16px 0}.coach-notification-toggle{color:#182133;text-align:left;background:#fff;border:1px solid #dbe0ec;border-radius:17px;justify-content:space-between;align-items:center;gap:14px;width:100%;min-height:62px;padding:13px 16px;display:flex;box-shadow:0 6px 18px #232d460d}.coach-notification-toggle>span:first-child{gap:3px;display:grid}.coach-notification-toggle strong{font-size:1rem}.coach-notification-toggle small{color:#667085;font-size:.8rem}.coach-notification-toggle>span:last-child{font-size:1.45rem}.coach-notification-panel{background:#fff;border:1px solid #dbe0ec;border-radius:17px;gap:12px;margin-top:10px;padding:15px;display:grid}.coach-notification-panel>p{color:#586276;margin:0;font-size:.9rem;line-height:1.45}.coach-notification-panel article{background:#f8f9fc;border:1px solid #e1e5ee;border-radius:14px;gap:8px;padding:14px;display:grid}.coach-notification-panel article>div{justify-content:space-between;align-items:center;gap:10px;display:flex}.coach-notification-panel article>div>span{color:#586276;background:#e9edf4;border-radius:999px;padding:4px 8px;font-size:.73rem;font-weight:850}.coach-notification-panel article>div>span.is-on{color:#17613b;background:#dff6e8}.coach-notification-panel article p{color:#667085;margin:0;font-size:.83rem;line-height:1.4}.coach-notification-panel article button,.coach-notification-panel article a{color:#fff;min-height:46px;font:inherit;background:#27334e;border:0;border-radius:11px;justify-content:center;align-items:center;padding:9px 12px;font-weight:800;text-decoration:none;display:flex}.coach-notification-panel article button:disabled{opacity:.55}.coach-notification-setup{color:#8b5d14;padding:9px 0;font-size:.82rem;font-weight:750}.coach-notification-message{border-radius:10px;padding:10px 11px;font-weight:700;color:#334d86!important;background:#eef3ff!important}.coach-notification-note{color:#687388;line-height:1.4}@media (max-width:520px){.coach-name-grid{grid-template-columns:1fr}.coach-class-top{display:grid}.coach-class-top>a{text-align:center;width:100%}.coach-dashboard-header{align-items:center}.coach-dashboard-header button{max-width:105px}.coach-shell{padding-inline:13px}}.coach-shell{width:100%;padding-bottom:max(80px,calc(56px + env(safe-area-inset-bottom)))}.coach-name-grid button,.coach-primary,.coach-relief-link,.coach-secondary,.coach-class-top>a,.coach-photo-alert a,.coach-report-alert a,.coach-end-links a,.coach-dashboard-header button,.coach-relief-actions button,.coach-weekly-link,.coach-weekly-scope button{touch-action:manipulation}.coach-photo-alert a,.coach-report-alert a,.coach-end-links a{align-items:center;min-height:48px;display:flex}.coach-report-alert a{width:fit-content}.coach-end-prompt{bottom:max(10px,env(safe-area-inset-bottom))}@media (max-width:600px){.coach-shell{padding-top:max(13px,env(safe-area-inset-top));padding-inline:max(12px,env(safe-area-inset-left));padding-right:max(12px,env(safe-area-inset-right))}.coach-hero,.coach-dashboard-header{border-radius:20px;padding:18px}.coach-dashboard-header{grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:12px;display:grid}.coach-dashboard-header>div{min-width:0}.coach-dashboard-header h1{overflow-wrap:anywhere;font-size:clamp(1.8rem,10vw,2.35rem)}.coach-dashboard-header button{white-space:nowrap;max-width:none;min-height:44px;padding:9px 11px}.coach-weekly-header a{white-space:nowrap;min-height:44px}.coach-name-grid{gap:10px;margin-block:16px}.coach-name-grid button{min-height:58px;font-size:1.05rem}.coach-relief-panel{border-radius:18px;padding:16px}.coach-relief-panel input,.coach-relief-panel select{min-height:52px}.coach-relief-panel .coach-relief-scope label{min-height:58px}.coach-class-section{margin-top:20px}.coach-class-card{border-radius:18px;padding:15px}.coach-class-top{gap:12px;display:grid}.coach-class-top>a{justify-content:center;align-items:center;width:100%;min-height:50px;font-size:.95rem;display:flex}.coach-class-top h3{font-size:1.16rem;line-height:1.3}.coach-counts{margin-top:12px}.coach-counts span{padding:7px 9px}.coach-photo-alert,.coach-report-alert,.coach-relief-badge{padding:14px}.coach-photo-alert a{justify-content:space-between;width:100%;min-height:52px;padding:11px 12px}.coach-photo-alert a:after{content:"Open camera";opacity:.76;font-size:.72rem}.coach-report-alert a{text-align:center;background:#ffffffb8;border-radius:10px;justify-content:center;width:100%;min-height:50px;padding:10px 12px;text-decoration:none}.coach-end-prompt{border-radius:18px;padding:15px}.coach-end-links a{min-height:50px}.coach-empty{padding:23px 16px}.coach-weekly-students{grid-template-columns:1fr}}@media (max-width:360px){.coach-dashboard-header{grid-template-columns:1fr}.coach-dashboard-header button,.coach-weekly-header a{justify-self:start}.coach-class-card{padding:13px}}.coach-notification-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid!important}.coach-notification-actions>*{text-align:center;min-width:0;line-height:1.25;min-height:44px!important;padding:8px 10px!important;font-size:.82rem!important}.coach-notification-actions>:last-child:nth-child(odd){grid-column:1/-1}@media (max-width:600px){.coach-dashboard-header h1{font-size:clamp(1.75rem,8vw,2.1rem)}}@media (max-width:360px){.coach-notification-actions{grid-template-columns:1fr}.coach-notification-actions>:last-child:nth-child(odd){grid-column:auto}}.coach-page-links{justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px;display:flex}.coach-page-links .admin-back{margin:0}@media (max-width:520px){.coach-page-links{flex-direction:column;align-items:stretch}.coach-page-links .admin-action{text-align:center}}.coach-ops-shell{max-width:1200px}.coach-ops-grid{grid-template-columns:1fr;gap:18px;display:grid}.coach-ops-grid.is-planner-open{grid-template-columns:1.08fr .92fr}.coach-ops-panel h2,.coach-ops-section h2{margin:4px 0 16px}.coach-ops-section{margin-top:18px}.coach-planner-heading{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.coach-planner-heading>div{display:grid}.coach-planner-heading button{color:#5f5660;width:40px;height:40px;font:inherit;cursor:pointer;background:#fff;border:1px solid #e0d9e0;border-radius:50%;font-size:1.4rem}.coach-ops-form{grid-template-columns:1fr 1fr;gap:14px;display:grid}.coach-ops-form>label{gap:6px;font-weight:800;display:grid}.coach-ops-form>label small{color:#756d77;font-size:.76rem;font-weight:650;line-height:1.4}.coach-ops-form input,.coach-ops-form select,.coach-hours-heading input,.coach-weekly-table input,.coach-rate-card input{color:#28232a;width:100%;min-height:44px;font:inherit;background:#fff;border:1px solid #d5cfd6;border-radius:11px;padding:9px 11px}.coach-ops-form fieldset{border:1px solid #e5dfe6;border-radius:12px;grid-column:1/-1;gap:18px;margin:0;padding:12px;display:flex}.coach-ops-form fieldset label{align-items:center;gap:7px;font-weight:750;display:flex}.coach-ops-form fieldset input{width:18px;min-height:18px}.coach-ops-form .admin-action,.coach-ops-warning,.coach-ops-danger{grid-column:1/-1}.coach-ops-warning,.coach-ops-danger{border-radius:10px;margin:0;padding:11px 12px;font-weight:700}.coach-ops-warning{color:#815710;background:#fff7e5}.coach-ops-danger{color:#9b1c1c;background:#fff0f0}.coach-ops-list{display:grid}.coach-ops-list>div{border-top:1px solid #eee9ee;justify-content:space-between;align-items:center;gap:14px;padding:14px 0;display:flex}.coach-ops-list>div:first-child{border-top:0}.coach-ops-list>div>div{gap:4px;display:grid}.coach-ops-list span{color:#77717a;font-size:.88rem}.coach-ops-list button,.coach-rate-card button,.coach-weekly-table button{color:#8b205f;cursor:pointer;background:#fff0f8;border:0;border-radius:9px;padding:8px 10px;font-weight:800}.coach-rate-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.coach-rate-card{background:#faf8fa;border:1px solid #ece8ee;border-radius:15px;grid-template-columns:1fr 1fr;gap:10px;padding:15px;display:grid}.coach-rate-card>strong,.coach-rate-card>button{grid-column:1/-1}.coach-rate-card label{color:#6f6971;gap:5px;font-size:.78rem;font-weight:800;display:grid}.coach-weekly-table{grid-template-columns:1fr 1fr;gap:0 18px;display:grid}.coach-weekly-table>div{border-top:1px solid #eee9ee;grid-template-columns:minmax(0,1fr) 150px auto;align-items:center;gap:10px;padding:12px 0;display:grid}.coach-weekly-table>div>div{gap:3px;display:grid}.coach-weekly-table span{color:#77717a;font-size:.82rem}.coach-hours-heading{justify-content:space-between;align-items:center;gap:16px;display:flex}.coach-hours-heading input{max-width:180px}.coach-ops-note{color:#706a72;margin:-7px 0 17px;line-height:1.5}.coach-hours-table{display:grid}.coach-hours-table>div{border-top:1px solid #eee9ee;grid-template-columns:2fr repeat(3,1fr);gap:12px;padding:13px 10px;display:grid}.coach-hours-table .head{color:#77717a;text-transform:uppercase;background:#faf7fa;border:0;font-size:.75rem;font-weight:850}.coach-hours-table>div span:last-child{text-align:right}.coach-hours-table>div span:nth-child(2),.coach-hours-table>div span:nth-child(3){text-align:center}@media (max-width:900px){.coach-ops-grid,.coach-ops-grid.is-planner-open{grid-template-columns:1fr}.coach-rate-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.coach-weekly-table{grid-template-columns:1fr}}@media (max-width:600px){.coach-ops-form{grid-template-columns:1fr}.coach-ops-form>*{grid-column:1!important}.coach-ops-form fieldset{flex-direction:column;align-items:flex-start}.coach-rate-grid{grid-template-columns:1fr}.coach-weekly-table>div{grid-template-columns:1fr auto}.coach-weekly-table>div>div{grid-column:1/-1}.coach-hours-heading{flex-direction:column;align-items:flex-start}.coach-hours-table{overflow-x:auto}.coach-hours-table>div{min-width:560px}}.coach-shift-days{gap:18px;display:grid}.coach-shift-day{border-top:1px solid #eee9ee;grid-template-columns:96px minmax(0,1fr);gap:16px;padding-top:18px;display:grid}.coach-shift-day:first-child{border-top:0;padding-top:0}.coach-shift-day-heading{flex-direction:column;gap:3px;padding-top:3px;display:flex}.coach-shift-day-heading strong{font-size:1.05rem}.coach-shift-day-heading span{color:#77717a;font-size:.78rem;font-weight:750}.coach-shift-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.coach-shift-card{background:#fff;border:1px solid #e7e0e8;border-radius:16px;overflow:hidden}.coach-shift-card-heading{background:#faf7fa;justify-content:space-between;align-items:flex-start;gap:10px;padding:14px 15px;display:flex}.coach-shift-card-heading>div{gap:4px;display:grid}.coach-shift-card-heading span{color:#746d76;font-size:.78rem}.coach-shift-badge{white-space:nowrap;border-radius:999px;padding:5px 8px;font-weight:850;color:#25704c!important;background:#e9f6ef!important}.coach-shift-coach{border-top:1px solid #eee9ee;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:10px;padding:14px 15px;display:grid}.coach-shift-coach label{color:#655f67;gap:5px;font-size:.78rem;font-weight:850;display:grid}.coach-shift-coach input,.coach-shift-classes select{color:#28232a;width:100%;min-height:42px;font:inherit;background:#fff;border:1px solid #d5cfd6;border-radius:10px;padding:8px 10px}.coach-shift-coach button{color:#fff;cursor:pointer;background:#ee5c92;border:0;border-radius:10px;min-height:42px;padding:8px 12px;font-weight:850}.coach-shift-coach button:disabled{cursor:not-allowed;opacity:.45}.coach-shift-classes{padding:0 15px 7px;display:grid}.coach-shift-classes>div{border-top:1px solid #f0ebf0;grid-template-columns:minmax(0,1fr) minmax(145px,.8fr);align-items:center;gap:12px;padding:11px 0;display:grid}.coach-shift-classes>div>div{gap:3px;display:grid}.coach-shift-classes>div>div span,.coach-shift-only{color:#837c85;font-size:.76rem}.coach-shift-classes label{color:#77717a;gap:4px;font-size:.7rem;font-weight:800;display:grid}.coach-shift-classes select{min-height:36px;padding-block:5px;font-size:.78rem}@media (max-width:900px){.coach-shift-grid{grid-template-columns:1fr}}@media (max-width:600px){.coach-shift-day{grid-template-columns:1fr}.coach-shift-day-heading{flex-direction:row;justify-content:space-between;align-items:center}.coach-shift-coach,.coach-shift-classes>div{grid-template-columns:1fr}.coach-shift-only{display:none}}.coach-shift-coach{grid-template-columns:minmax(180px,1fr) minmax(190px,.8fr) auto}.coach-shift-time{grid-template-columns:1fr 1fr;gap:8px;display:grid}.coach-shift-time label{color:#655f67;gap:5px;font-size:.72rem;font-weight:850;display:grid}.coach-shift-time input{color:#28232a;width:100%;min-height:42px;font:inherit;background:#fff;border:1px solid #d5cfd6;border-radius:10px;padding:8px}.coach-class-actions{gap:6px!important;display:grid!important}.coach-class-actions button{color:#7c4667;cursor:pointer;background:#f5eff4;border:0;border-radius:8px;min-height:32px;padding:6px 8px;font-size:.72rem;font-weight:800}.coach-class-actions button:disabled{cursor:not-allowed;opacity:.45}@media (max-width:1100px){.coach-shift-coach{grid-template-columns:1fr auto}.coach-shift-time{grid-area:2/1/auto/-1}}@media (max-width:600px){.coach-shift-coach{grid-template-columns:1fr}.coach-shift-time{grid-area:auto}.coach-shift-coach>button{width:100%}}.coach-youth-shift{grid-column:1/-1}.coach-youth-coaches{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;padding:14px;display:grid}.coach-youth-coach-row{grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:8px;display:grid}.coach-youth-coach-row label{color:#6f6971;gap:5px;font-size:.78rem;font-weight:800;display:grid}.coach-youth-coach-row input{color:#28232a;width:100%;min-height:44px;font:inherit;background:#fff;border:1px solid #d5cfd6;border-radius:11px;padding:9px 11px}.coach-youth-coach-row button{color:#8b205f;cursor:pointer;background:#fff0f8;border:0;border-radius:9px;min-height:44px;padding:8px 12px;font-weight:800}.coach-youth-coach-row button:disabled{cursor:default;opacity:.45}.coach-youth-shift>.coach-ops-note{margin:0;padding:0 14px 14px}@media (max-width:760px){.coach-youth-coaches{grid-template-columns:1fr 1fr}}@media (max-width:520px){.coach-youth-coaches{grid-template-columns:1fr}.coach-youth-shift{grid-column:auto}}.coach-youth-date-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.coach-youth-date-card{background:#faf8fa;border:1px solid #e7e0e8;border-radius:16px;gap:12px;padding:15px;display:grid}.coach-youth-date-card>header{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.coach-youth-date-card>header>div{gap:4px;display:grid}.coach-youth-date-card>header span{color:#77717a;font-size:.8rem}.coach-youth-date-card>header em{color:#6f5d69;white-space:nowrap;background:#f1ebf0;border-radius:999px;padding:5px 8px;font-size:.72rem;font-style:normal;font-weight:800}.coach-youth-date-rows{gap:8px;display:grid}.coach-youth-date-rows>div{grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:8px;display:grid}.coach-youth-date-rows label{color:#655f67;gap:5px;font-size:.76rem;font-weight:850;display:grid}.coach-youth-date-rows input{color:#28232a;width:100%;min-height:44px;font:inherit;background:#fff;border:1px solid #d5cfd6;border-radius:11px;padding:9px 11px}.coach-youth-date-rows button,.coach-add-button{color:#7c4667;cursor:pointer;background:#f5eaf1;border:0;border-radius:10px;min-height:44px;padding:8px 11px;font-weight:800}.coach-add-button{background:#fff;border:1px dashed #d9bdcf;width:100%}.coach-youth-date-actions{flex-wrap:wrap;gap:8px;display:flex}.coach-youth-date-actions .admin-action{flex:1;justify-content:center;min-width:150px}.coach-youth-date-card .coach-ops-warning{grid-column:auto}@media (max-width:760px){.coach-youth-date-grid{grid-template-columns:1fr}}@media (max-width:480px){.coach-youth-date-card>header{flex-direction:column}.coach-youth-date-rows>div{grid-template-columns:1fr}.coach-youth-date-rows button{width:100%}.coach-youth-date-actions{display:grid}.coach-youth-date-actions .admin-action{width:100%}}.coach-youth-roster{background:#fff;border:1px solid #e8dfe6;border-radius:12px;margin:0 14px}.coach-youth-roster summary{cursor:pointer;justify-content:space-between;align-items:center;gap:12px;min-height:44px;padding:10px 12px;list-style:none;display:flex}.coach-youth-roster summary::-webkit-details-marker{display:none}.coach-youth-roster summary span{color:#7b747c;font-size:.76rem;font-weight:800}.coach-youth-roster[open] summary{border-bottom:1px solid #eee7ed}.coach-youth-roster>div{flex-wrap:wrap;gap:7px;padding:11px 12px;display:flex}.coach-youth-roster>div span{color:#5e5360;background:#f7f1f5;border-radius:999px;padding:6px 9px;font-size:.78rem;font-weight:700}.coach-youth-date-card>.coach-youth-roster{margin:0}.coach-dashboard-youth-roster{margin:0 0 12px}.coach-dashboard-youth-roster>div{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.coach-dashboard-youth-roster>div span{border-radius:9px}@media (max-width:480px){.coach-dashboard-youth-roster>div{grid-template-columns:1fr}.coach-youth-roster summary{flex-direction:column;align-items:flex-start;gap:2px}}.coach-request-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px!important;display:flex!important}.coach-relief-request-list{gap:12px;display:grid}.coach-relief-request-card{background:#fff;border:1px solid #e8e1e8;border-radius:15px;gap:12px;padding:15px;display:grid}.coach-relief-request-card>header{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.coach-relief-request-card>header>div{gap:4px;display:grid}.coach-relief-request-card>header span,.coach-relief-request-card>header small{color:#77717a}.coach-relief-request-card>header b{color:#7d3c62;white-space:nowrap;background:#f6edf3;border-radius:999px;padding:5px 9px;font-size:.75rem}.coach-relief-request-card button,.coach-request-actions button,.coach-applicant-list button{color:#8b205f;cursor:pointer;background:#fff0f8;border:0;border-radius:9px;min-height:40px;padding:8px 11px;font-weight:800}.coach-relief-request-card button:disabled{cursor:wait;opacity:.55}.coach-applicant-list{border-top:1px solid #eee9ee;display:grid}.coach-applicant-list>div{border-bottom:1px solid #f2edf1;justify-content:space-between;align-items:center;gap:12px;padding:10px 0;display:flex}.coach-applicant-list span{gap:3px;display:grid}.coach-applicant-list small{color:#77717a}.coach-applicant-actions{gap:8px;display:flex}.coach-applicant-actions .is-reject{color:#9d312c;background:#fff5f2}@media (max-width:600px){.coach-away-review .coach-ops-list>div,.coach-relief-request-card>header,.coach-applicant-list>div{flex-direction:column;align-items:stretch}.coach-request-actions,.coach-applicant-actions{display:grid!important}.coach-request-actions button,.coach-applicant-list button{width:100%}}.coach-schedule-shell{background:#fff;border:1px solid #e2e7ef;border-radius:22px;width:min(1180px,100% - 28px);margin:18px auto 64px;padding:18px;box-shadow:0 10px 30px #1e293b12}.coach-schedule-heading{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.coach-schedule-heading h2{margin:2px 0 4px;font-size:1.5rem}.coach-schedule-heading p{color:#697489;margin:0}.coach-webcal{color:#fff;background:#ee5c92;border-radius:12px;flex:none;padding:11px 14px;font-weight:850;text-decoration:none}.coach-schedule-switch{align-items:center;gap:7px;margin:16px 0;display:flex}.coach-schedule-switch button,.coach-schedule-switch input{min-height:42px;font:inherit;background:#fff;border:1px solid #d9e0ea;border-radius:11px;padding:8px 13px}.coach-schedule-switch button{cursor:pointer;font-weight:850}.coach-schedule-switch button.is-active{color:#fff;background:#ee5c92;border-color:#ee5c92}.coach-schedule-week{grid-template-columns:repeat(7,minmax(140px,1fr));gap:8px;display:grid;overflow-x:auto}.coach-schedule-week>section{background:#f8fafc;border:1px solid #e0e5ed;border-radius:14px;overflow:hidden}.coach-schedule-week>section>header{background:#eef2f7;justify-content:space-between;gap:8px;padding:10px;display:flex}.coach-schedule-week>section>header span{color:#6f7a8d;font-size:.75rem}.coach-schedule-week>section>div{gap:7px;padding:8px;display:grid}.coach-schedule-week>section>div>p{color:#929aaa;text-align:center;margin:0;padding:14px 4px;font-size:.78rem}.coach-schedule-card{background:#dceff8;border:1px solid #b9dceb;border-radius:11px;gap:3px;padding:10px;display:grid}.coach-schedule-card.is-oth{background:#eadffb;border-color:#d3c0f2}.coach-schedule-card.is-youth{background:#fde4ed;border-color:#f4bfd2}.coach-schedule-card strong{font-size:.82rem}.coach-schedule-card span{font-size:.8rem;font-weight:850}.coach-schedule-card small{color:#647086}.coach-schedule-month-wrap{touch-action:pan-y;overflow-x:auto}.coach-schedule-weekdays,.coach-schedule-month{grid-template-columns:repeat(7,minmax(145px,1fr));min-width:1015px;display:grid}.coach-schedule-weekdays strong{color:#697489;text-align:center;padding:8px;font-size:.78rem}.coach-schedule-month{border-top:1px solid #e0e5ed;border-left:1px solid #e0e5ed}.coach-schedule-month>section{background:#fbfcfe;border-bottom:1px solid #e0e5ed;border-right:1px solid #e0e5ed;min-height:145px;padding:7px}.coach-schedule-month>section.is-empty{background:#f3f5f8}.coach-schedule-month>section>header{margin-bottom:6px;font-size:.8rem;font-weight:850}.coach-schedule-month>section>div{gap:5px;display:grid}.coach-schedule-card.is-compact{padding:6px}.coach-schedule-card.is-compact strong,.coach-schedule-card.is-compact span{font-size:.68rem}.coach-schedule-card.is-compact small{display:none}.coach-schedule-swipe-note{color:#7a8495;text-align:center;margin:9px 0 0;font-size:.75rem;display:none}.coach-schedule-empty{color:#687388;text-align:center;background:#f7f9fc;border-radius:14px;padding:24px}.coach-webcal-note{color:#7a8495;margin:12px 0 0;font-size:.78rem}.coach-end-minimize{color:#fff;min-height:36px;font:inherit;cursor:pointer;background:#ffffff1f;border:1px solid #ffffff61;border-radius:999px;padding:7px 10px;font-size:.76rem;font-weight:850;position:absolute;top:12px;right:12px}.coach-end-prompt{position:sticky}.coach-end-prompt.is-minimized{justify-content:space-between;align-items:center;gap:12px;min-height:58px;padding:12px 14px;display:flex}.coach-end-prompt.is-minimized>:not(.coach-end-minimize):not(.coach-eyebrow):not(strong){display:none}.coach-end-prompt.is-minimized .coach-eyebrow{margin:0}.coach-end-prompt.is-minimized>strong{color:#ffc5da;white-space:nowrap;margin:0 112px 0 auto}.coach-end-prompt.is-minimized .coach-end-minimize{top:50%;transform:translateY(-50%)}@media (max-width:700px){.coach-schedule-shell{width:min(100% - 18px,1180px);padding:14px}.coach-schedule-heading{display:grid}.coach-webcal{text-align:center;width:100%}.coach-schedule-week{grid-template-columns:1fr;overflow:visible}.coach-schedule-week>section{display:block}.coach-schedule-month-wrap{margin-inline:-4px;overflow:hidden}.coach-schedule-weekdays,.coach-schedule-month{grid-template-columns:repeat(7,minmax(0,1fr));min-width:0}.coach-schedule-weekdays strong{padding:7px 1px;font-size:.67rem}.coach-schedule-month>section{min-height:94px;padding:3px}.coach-schedule-month>section>header{font-size:.7rem}.coach-schedule-card.is-compact{border-radius:7px;padding:4px}.coach-schedule-card.is-compact strong{font-size:.57rem}.coach-schedule-card.is-compact span{overflow-wrap:anywhere;font-size:.55rem;line-height:1.1}.coach-schedule-swipe-note{display:block}.coach-schedule-switch{flex-wrap:wrap}.coach-schedule-switch input{width:100%}.coach-end-prompt.is-minimized{min-height:64px;padding-right:12px}.coach-end-prompt.is-minimized>strong{margin-right:108px;font-size:.78rem}.coach-end-minimize{min-height:38px}}.coach-schedule-card{width:100%;color:inherit;text-align:left;font:inherit;cursor:pointer}.coach-urgent-shortcut{color:#542416;background:#fff4ed;border:1px solid #efb69f;border-radius:14px;margin:16px 0 4px;padding:13px 15px;scroll-margin-top:18px}.coach-urgent-shortcut>div{gap:4px;display:grid}.coach-urgent-shortcut span{color:#754a3c;font-size:.87rem;line-height:1.4}.coach-schedule-card:hover,.coach-schedule-card:focus-visible,.coach-schedule-card.is-selected{border-color:#66758f;outline:none;box-shadow:0 0 0 2px #66758f29}.coach-schedule-detail{background:#f8fafc;border:2px solid #d9e2ee;border-radius:18px;margin-top:16px;padding:16px}.coach-schedule-detail>header{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.coach-schedule-detail h3{margin:2px 0 4px;font-size:1.15rem}.coach-schedule-detail>header p{color:#667187;margin:0}.coach-schedule-detail>header>button{color:#334155;width:40px;height:40px;font:inherit;cursor:pointer;background:#fff;border:1px solid #d7dee9;border-radius:50%;flex:none;font-size:1.35rem}.coach-schedule-class-list{gap:9px;margin-top:14px;display:grid}.coach-replacement-action{background:#fff8fb;border:1px solid #f1c7d7;border-radius:14px;margin:14px 0;padding:14px}.coach-replacement-action p{color:#5f6878;margin:0 0 10px}.coach-replacement-action p.is-covered{color:#18724b;margin:0}.coach-replacement-action label{gap:7px;font-weight:800;display:grid}.coach-replacement-action textarea,.coach-replacement-action select{resize:vertical;min-height:78px;font:inherit;border:1px solid #d8dee8;border-radius:10px;padding:10px}.coach-replacement-action select{background:#fff;min-height:46px}.coach-replacement-warning{background:#fff0df;border-radius:10px;padding:11px;color:#795015!important}.coach-replacement-action button{min-height:42px;font:inherit;cursor:pointer;background:#fff;border:1px solid #d8dee8;border-radius:10px;padding:9px 13px;font-weight:850}.coach-replacement-action button:disabled{cursor:wait;opacity:.65}.coach-replacement-action .coach-cannot-make,.coach-replacement-buttons button:last-child{color:#fff;background:#d64574;border-color:#d64574}.coach-replacement-buttons{justify-content:flex-end;gap:8px;display:flex}.coach-replacement-message{font-weight:750;margin:10px 0 0!important}.coach-schedule-class-list>a{color:#1f2a44;background:#fff;border:1px solid #d9e1ec;border-radius:14px;justify-content:space-between;align-items:center;gap:14px;min-height:68px;padding:12px 14px;text-decoration:none;display:flex}.coach-schedule-class-list>a:hover,.coach-schedule-class-list>a:focus-visible{border-color:#ee5c92;outline:none;box-shadow:0 0 0 2px #ee5c921f}.coach-schedule-class-list span{gap:4px;display:grid}.coach-schedule-class-list small{color:#6d788c}.coach-schedule-class-list b{color:#b83268;white-space:nowrap;font-size:.83rem}.coach-schedule-class-list>p{color:#6d788c;background:#fff;border-radius:12px;margin:0;padding:14px}@media (max-width:700px){.coach-schedule-detail{padding:13px}.coach-schedule-class-list>a{align-items:flex-start}.coach-schedule-class-list b{white-space:normal;text-align:right}.coach-schedule-card.is-compact small{display:none}}.coach-relief-page{gap:16px;padding-bottom:64px;display:grid}.coach-back-link{color:#273a80;font-weight:850;text-decoration:none}.coach-relief-policy,.coach-relief-form,.coach-relief-list{background:#fff;border:1px solid #dfe5ee;border-radius:18px;padding:18px}.coach-relief-policy{background:#fff7fa;border-color:#f0cbd8}.coach-relief-policy p,.coach-relief-list p{color:#667187;margin:7px 0 0;line-height:1.5}.coach-relief-form{gap:14px;display:grid}.coach-relief-form h2,.coach-relief-list h2{margin:0}.coach-relief-form>label,.coach-away-date-list label{gap:6px;font-weight:800;display:grid}.coach-relief-form textarea,.coach-relief-form input,.coach-relief-form select{color:#253047;width:100%;min-height:46px;font:inherit;background:#fff;border:1px solid #cfd7e4;border-radius:11px;padding:10px 12px}.coach-relief-form textarea{resize:vertical;min-height:94px}.coach-away-date-list{gap:10px;display:grid}.coach-away-date-list>div{grid-template-columns:1fr auto;align-items:end;gap:8px;display:grid}.coach-away-date-list button,.coach-relief-list button{color:#92345f;background:#fff6fa;border:1px solid #e0a7bd;border-radius:10px;min-height:42px;padding:8px 12px;font-weight:800}.coach-relief-alert{color:#805716;background:#fff2e1;border-radius:11px;margin:0;padding:12px;font-weight:750}.coach-relief-list{gap:10px;display:grid}.coach-relief-list article{border-top:1px solid #edf0f4;justify-content:space-between;align-items:center;gap:12px;padding:12px 0;display:flex}.coach-relief-list article>div{gap:4px;display:grid}.coach-relief-list article span{color:#6d7789;font-size:.87rem}.coach-opportunity-grid{gap:12px;display:grid}.coach-opportunity-card{background:#fff;border:1px solid #dfe5ee;border-radius:16px;gap:12px;padding:16px;display:grid}.coach-opportunity-card header{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.coach-opportunity-card header>div{gap:4px;display:grid}.coach-opportunity-card header span{color:#687388}.coach-opportunity-badge{color:#a12f63;background:#fff0f5;border-radius:999px;padding:5px 9px;font-size:.75rem;font-weight:850}.coach-opportunity-card textarea{min-height:78px;font:inherit;border:1px solid #cfd7e4;border-radius:10px;padding:10px}.coach-opportunity-applied{color:#216c4c;background:#eaf8f0;border-radius:10px;padding:11px;font-weight:800}@media (max-width:600px){.coach-away-date-list>div{grid-template-columns:1fr}.coach-away-date-list button{width:100%}.coach-relief-list article,.coach-opportunity-card header{flex-direction:column;align-items:stretch}}.coach-planning-links{grid-template-columns:1fr 1fr;gap:12px;margin:14px 0;display:grid}.coach-planning-links>a{color:#22304d;background:#fff;border:1px solid #dce3ed;border-radius:15px;justify-content:space-between;align-items:center;gap:14px;min-height:76px;padding:14px 16px;text-decoration:none;display:flex}.coach-planning-links>a>span:first-child{gap:4px;display:grid}.coach-planning-links small{color:#697489}.coach-planning-links>a>span:last-child{font-size:1.25rem;font-weight:900}.coach-planning-links>a.is-urgent{color:#7f2e18;background:#fff4ed;border-color:#efb69f;grid-column:1/-1}.coach-planning-links>a.is-urgent small{color:#754a3c}.coach-relief-alert{color:#542416;background:#fff4ed;border:2px solid #e25a2a;border-radius:16px;justify-content:space-between;align-items:center;gap:16px;margin:14px 0;padding:16px 18px;text-decoration:none;display:flex}.coach-relief-alert span:first-child{gap:5px;display:grid}.coach-relief-alert small{color:#754a3c}.coach-relief-alert span:last-child{white-space:nowrap;font-weight:900}.coach-dashboard-relief{color:#542416;background:#fff4ed;border:2px solid #e25a2a;border-radius:18px;gap:12px;margin:14px 0;padding:18px;display:grid}.coach-dashboard-relief-heading{justify-content:space-between;align-items:center;gap:14px;display:flex}.coach-dashboard-relief-heading h2,.coach-dashboard-relief-heading p{margin:0}.coach-dashboard-relief-heading>a{color:#8a3219;font-weight:900;text-decoration:none}.coach-dashboard-relief-list{gap:8px;display:grid}.coach-dashboard-relief-list>a{color:#3b251f;background:#fff;border:1px solid #efb69f;border-radius:12px;justify-content:space-between;align-items:center;gap:14px;padding:13px 14px;text-decoration:none;display:flex}.coach-dashboard-relief-list>a>span{gap:4px;display:grid}.coach-dashboard-relief-list small{color:#754a3c}.coach-dashboard-relief-list b{color:#a23716;white-space:nowrap}.coach-dashboard-relief>p{color:#754a3c;margin:0;font-size:.88rem}.coach-dashboard-relief.is-empty{color:#26334f;background:#fff;border-color:#d7deea}.coach-dashboard-relief.is-empty .coach-dashboard-relief-heading>a{color:#314d91}.coach-dashboard-relief.is-empty>p{color:#697489}@media (max-width:600px){.coach-planning-links{grid-template-columns:1fr}.coach-relief-alert{flex-direction:column;align-items:flex-start}.coach-relief-alert span:last-child{white-space:normal}.coach-dashboard-relief-list>a{flex-direction:column;align-items:flex-start}.coach-dashboard-relief-list b{white-space:normal}}.coach-weekly-class-heading>a{color:inherit;touch-action:manipulation;justify-content:space-between;gap:12px;margin:-6px;padding:6px;text-decoration:none;display:flex}.coach-weekly-class-heading>a:focus-visible{outline-offset:2px;border-radius:13px;outline:3px solid #8fa7df}.coach-weekly-class-heading>a>span{flex:none;justify-items:end;gap:5px;display:grid}.coach-weekly-class-heading>a>span>strong{color:#34405b;background:#e9edf5;border-radius:999px;justify-content:center;align-items:center;min-width:34px;height:34px;padding:0 8px;display:flex}.coach-weekly-class-heading>a>span>b{color:#334d86;white-space:nowrap;font-size:.76rem}.lesson-record-shell{max-width:820px;padding-bottom:max(36px,env(safe-area-inset-bottom))}.lesson-record-back{color:#34405b;touch-action:manipulation;align-items:center;min-height:44px;margin-bottom:12px;font-weight:800;text-decoration:none;display:inline-flex}.lesson-record-hero{color:#fff;background:linear-gradient(135deg,#202a44,#364d86);border-radius:24px;padding:22px;box-shadow:0 12px 30px #202a4429}.lesson-record-hero h1{margin:0;font-size:clamp(1.65rem,6vw,2.35rem);line-height:1.1}.lesson-record-hero p:last-child{margin:9px 0 0}.lesson-record-intro{color:#596477;margin:18px 2px;line-height:1.55}.lesson-record-message{border-radius:14px;margin:16px 0;padding:14px 16px;font-weight:800}.lesson-record-success{color:#17613b;background:#e8f8ef}.lesson-record-error{color:#9b1c1c;background:#fff0f0}.lesson-class-report{background:#fff;border:1px solid #d8ddec;border-radius:20px;gap:16px;margin:18px 0;padding:18px;display:grid;box-shadow:0 8px 22px #232d4612}.lesson-class-report-heading h2{margin:3px 0 6px}.lesson-class-report-heading>p:last-child{color:#687388;margin:0}.lesson-level-group{border:0;margin:0;padding:0}.lesson-level-group legend{margin-bottom:9px;font-weight:850}.lesson-level-group label{cursor:pointer;background:#f8f9fc;border:1px solid #d8ddec;border-radius:13px;align-items:flex-start;gap:8px;min-height:62px;padding:11px;display:flex}.lesson-level-group input{accent-color:#ee5c92;flex:none;width:20px;height:20px;margin:1px 0 0}.lesson-level-group span{gap:2px;display:grid}.lesson-level-group small{color:#687388;font-size:.72rem}.lesson-class-text{color:#525d72;gap:7px;font-size:.86rem;font-weight:800;display:grid}.lesson-class-text>span{justify-content:space-between;gap:10px;display:flex}.lesson-class-text>span small,.lesson-class-text>small{color:#7a8497;font-weight:650}.lesson-class-text textarea{color:#182133;width:100%;font:inherit;resize:vertical;background:#fff;border:1px solid #c7cedd;border-radius:12px;padding:12px;font-size:16px;line-height:1.45}.lesson-dee-feedback{color:#852525;background:#fff3f3;border-radius:14px;padding:14px}.lesson-record-list{gap:16px;display:grid}.lesson-record-student{background:#fff;border:1px solid #dfe3ed;border-radius:20px;overflow:hidden;box-shadow:0 8px 22px #232d4612}.lesson-record-student>header{border-bottom:1px solid #edf0f5;align-items:center;gap:13px;padding:16px 18px;display:flex}.lesson-record-student h2{overflow-wrap:anywhere;margin:5px 0 0;font-size:1.25rem}.lesson-record-photo{color:#8b205f;background:linear-gradient(145deg,#fff0f8,#eee9f7);border-radius:16px;flex:0 0 68px;place-items:center;width:68px;height:68px;font-size:1.5rem;font-weight:900;display:grid;position:relative;overflow:hidden}.lesson-record-photo img{object-fit:cover;object-position:center 22%;width:100%;height:100%;display:block}.lesson-record-photo-button{cursor:zoom-in;touch-action:manipulation;border:0;padding:0}.lesson-record-photo-button:focus-visible{outline-offset:3px;outline:3px solid #3b82f6}.lesson-photo-hint{color:#fff;letter-spacing:.03em;background:#182133d1;border-radius:999px;padding:2px 5px;font-size:.58rem;font-weight:850;position:absolute;bottom:3px;right:3px}.lesson-attendance{border:0;border-bottom:1px solid #edf0f5;flex-wrap:wrap;gap:8px;margin:0;padding:15px 18px;display:flex}.lesson-attendance legend{letter-spacing:.07em;text-transform:uppercase;color:#687388;width:100%;margin-bottom:3px;font-size:.76rem;font-weight:850}.lesson-attendance label{cursor:pointer;touch-action:manipulation;background:#f8f9fc;border:1px solid #d8ddec;border-radius:999px;align-items:center;gap:7px;min-height:48px;padding:9px 13px;font-weight:750;display:flex}.lesson-attendance input{accent-color:#ee5c92;width:20px;height:20px;margin:0}.lesson-progress-grid{grid-template-columns:1fr 1fr;gap:12px;padding:16px 18px 18px;display:grid}.lesson-progress-grid section{background:#f7f8fc;border-radius:15px;padding:14px}.lesson-progress-grid h3{margin:0 0 12px}.lesson-progress-grid label{color:#525d72;gap:6px;margin-top:11px;font-size:.82rem;font-weight:800;display:grid}.lesson-progress-grid input,.lesson-progress-grid textarea{color:#182133;width:100%;font:inherit;background:#fff;border:1px solid #c7cedd;border-radius:11px;padding:11px;font-size:16px;line-height:1.4}.lesson-progress-grid textarea{resize:vertical;min-height:104px}.lesson-record-skipped{color:#687388;margin:0;padding:16px 18px 18px}.lesson-record-submit{bottom:max(6px,env(safe-area-inset-bottom));color:#fff;background:#182133;border-radius:18px;margin-top:20px;padding:14px;position:sticky;box-shadow:0 14px 34px #18213347}.lesson-record-submit button{color:#fff;touch-action:manipulation;background:#ee5c92;border:0;border-radius:13px;width:100%;min-height:54px;font-size:1rem;font-weight:850}.lesson-record-submit button:disabled{opacity:.6}.lesson-record-submit p{text-align:center;color:#d8deeb;margin:8px 0 0;font-size:.78rem}.lesson-photo-modal{z-index:1000;padding:max(16px,env(safe-area-inset-top)) max(16px,env(safe-area-inset-right)) max(16px,env(safe-area-inset-bottom)) max(16px,env(safe-area-inset-left));-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#0a0f1cdb;place-items:center;display:grid;position:fixed;inset:0}.lesson-photo-modal-card{background:#fff;border-radius:22px;gap:12px;width:min(92vw,620px);max-height:92vh;padding:14px;display:grid;box-shadow:0 24px 70px #0000006b}.lesson-photo-modal-header{color:#182133;justify-content:space-between;align-items:center;gap:12px;padding:2px 2px 0 6px;display:flex}.lesson-photo-modal-header strong{font-size:1.12rem}.lesson-photo-modal-header button{color:#182133;cursor:pointer;background:#eef1f7;border:0;border-radius:999px;place-items:center;width:42px;height:42px;font-size:1.8rem;line-height:1;display:grid}.lesson-photo-modal-card>img{object-fit:contain;background:#eef1f7;border-radius:15px;width:100%;max-height:calc(92vh - 130px);display:block}.lesson-photo-modal-close{color:#fff;touch-action:manipulation;background:#27334e;border:0;border-radius:13px;min-height:50px;font-size:1rem;font-weight:850}@media (max-width:600px){.lesson-progress-grid{grid-template-columns:1fr;padding:13px}.lesson-record-shell{padding-top:max(10px,env(safe-area-inset-top));padding-inline:max(12px,env(safe-area-inset-left));padding-right:max(12px,env(safe-area-inset-right))}.lesson-record-hero{border-radius:20px;padding:18px}.lesson-record-intro{margin-block:14px}.lesson-class-report{border-radius:18px;padding:15px}.lesson-level-group>div{grid-template-columns:1fr}.lesson-level-group label{min-height:54px}.lesson-record-list{gap:13px}.lesson-record-student{border-radius:18px}.lesson-record-student>header{align-items:flex-start;padding:14px}.lesson-record-photo{border-radius:17px;flex-basis:76px;width:76px;height:76px}.lesson-attendance{padding:13px 14px}.lesson-attendance label{flex:1;justify-content:center;min-width:112px}.lesson-record-submit{padding:12px}.lesson-progress-grid section{padding:13px}.lesson-photo-modal{padding:10px}.lesson-photo-modal-card{border-radius:18px;width:100%;padding:10px}.lesson-photo-modal-card>img{max-height:calc(100vh - 150px)}}.lesson-level-group>div{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;display:grid}.lesson-level-group label{cursor:pointer;touch-action:manipulation;background:0 0;border:0;min-height:50px;padding:0;display:block;position:relative}.lesson-level-group label:active,.lesson-attendance label:active,.lesson-all-present:active{transform:scale(.98)}.lesson-level-group input{opacity:0;pointer-events:none;position:absolute}.lesson-level-group span{text-align:center;background:#f8f9fc;border:1px solid #d8ddec;border-radius:13px;place-content:center;gap:0;min-height:50px;padding:8px 6px;transition:border-color .15s,background .15s,box-shadow .15s,transform 80ms;display:grid}.lesson-level-group input:checked+span{color:#fff;background:#ee5c92;border-color:#ee5c92;box-shadow:inset 0 0 0 1px #ee5c92}.lesson-level-group input:checked+span small{color:#fff}.lesson-level-group input:focus-visible+span{outline-offset:2px;outline:3px solid #3b82f6}.lesson-level-group small{color:#687388;font-size:.67rem;line-height:1.15}.lesson-attendance label{cursor:pointer;touch-action:manipulation;background:0 0;border:0;min-height:44px;padding:0;display:block;position:relative}.lesson-attendance input{opacity:0;pointer-events:none;position:absolute}.lesson-attendance label>span{background:#f8f9fc;border:1px solid #d8ddec;border-radius:999px;justify-content:center;align-items:center;min-height:44px;padding:8px 12px;font-weight:750;transition:border-color .15s,background .15s,box-shadow .15s,transform 80ms;display:flex}.lesson-attendance input:checked+span{color:#fff;background:#ee5c92;border-color:#ee5c92;box-shadow:inset 0 0 0 1px #ee5c92}.lesson-attendance input:focus-visible+span{outline-offset:2px;outline:3px solid #3b82f6}.lesson-class-report{gap:10px;margin:13px 0;padding:13px}.lesson-class-report-heading h2{margin-bottom:0;font-size:1.12rem}.lesson-level-group legend{margin-bottom:5px}.lesson-optional-details,.lesson-project-remarks{background:#f8f9fc;border:1px solid #d8ddec;border-radius:12px;overflow:hidden}.lesson-optional-details summary,.lesson-project-remarks summary{cursor:pointer;touch-action:manipulation;justify-content:space-between;align-items:center;gap:10px;min-height:44px;padding:9px 11px;font-weight:800;list-style:none;display:flex}.lesson-optional-details summary::-webkit-details-marker{display:none}.lesson-project-remarks summary::-webkit-details-marker{display:none}.lesson-optional-details summary:after,.lesson-project-remarks summary:after{content:"+";flex:none;font-size:1.25rem;line-height:1}.lesson-optional-details[open] summary:after,.lesson-project-remarks[open] summary:after{content:"−"}.lesson-optional-details summary small,.lesson-project-remarks summary small{color:#7a8497;margin-left:auto;font-size:.72rem;font-weight:700}.lesson-optional-details textarea,.lesson-project-remarks textarea{color:#182133;width:calc(100% - 20px);min-height:68px;font:inherit;resize:vertical;background:#fff;border:1px solid #c7cedd;border-radius:10px;margin:0 10px 10px;padding:9px 10px;font-size:16px;line-height:1.4;display:block}.lesson-optional-details>small{color:#7a8497;margin:-3px 11px 10px;font-size:.72rem;line-height:1.35;display:block}.lesson-dee-feedback{color:#852525;background:#fff3f3;padding:0}.lesson-dee-feedback textarea{border-color:#e8b6b6}.lesson-attendance-counts{flex-wrap:wrap;align-items:center;gap:6px 14px;display:flex}.lesson-all-present{color:#26344b;width:100%;min-height:48px;font:inherit;cursor:pointer;touch-action:manipulation;background:#f8f9fc;border:1px solid #d8ddec;border-radius:14px;justify-content:center;align-items:center;gap:8px;margin:2px 0 10px;padding:9px 14px;font-weight:850;transition:border-color .15s,background .15s,color .15s,transform 80ms;display:flex}.lesson-all-present span{font-size:1.05rem;line-height:1}.lesson-all-present.is-selected{color:#fff;background:#ee5c92;border-color:#ee5c92;box-shadow:inset 0 0 0 1px #ee5c92}.lesson-record-list{gap:10px}.lesson-record-student>header{padding:11px 13px}.lesson-record-photo{flex-basis:60px;width:60px;height:60px}.lesson-attendance{gap:7px;padding:9px 13px}.lesson-attendance label{flex:1;min-width:0}.lesson-progress-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:10px 12px 12px}.lesson-progress-grid section{min-width:0;padding:9px}.lesson-progress-grid h3{margin-bottom:6px;font-size:.95rem;line-height:1.2}.lesson-progress-grid label{gap:3px;margin-top:6px;font-size:.75rem}.lesson-progress-grid input{padding:8px 9px}.lesson-project-remarks{background:#fff;margin-top:7px}.lesson-project-remarks summary{min-height:38px;padding:7px 8px;font-size:.76rem}.lesson-project-remarks textarea{width:calc(100% - 14px);min-height:58px;margin:0 7px 7px;padding:8px}.lesson-record-submit{margin-top:12px;padding:9px}.lesson-record-submit button{min-height:48px}@media (max-width:600px){.lesson-record-intro{display:none}.lesson-class-report{gap:8px;padding:11px}.lesson-level-group>div{grid-template-columns:repeat(3,minmax(0,1fr));gap:5px}.lesson-level-group span{min-height:46px;padding:6px 3px}.lesson-level-group strong{font-size:.82rem}.lesson-level-group small{font-size:.58rem}.lesson-all-present{min-height:46px;margin-bottom:8px}.lesson-record-student>header{align-items:center;padding:9px 11px}.lesson-record-photo{flex-basis:60px;width:60px;height:60px}.lesson-record-student h2{font-size:1.08rem}.lesson-attendance{padding:8px 11px}.lesson-attendance label>span{min-height:42px;padding:6px 8px}.lesson-progress-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;padding:8px 10px 10px}.lesson-progress-grid section{padding:8px}.lesson-progress-grid h3{font-size:.86rem}.lesson-progress-grid input{padding:7px;font-size:15px}.lesson-project-remarks summary{font-size:.7rem}}.lesson-record-photo img{object-fit:contain;background:#eef2f7;width:100%;height:100%}.lesson-regular-class{color:#5f6b7d;margin:3px 0 0;font-size:.78rem;line-height:1.35}.lesson-trial-feedback{background:#f1fbfd;border:1px solid #8bcbd7;border-radius:14px;gap:10px;margin:0 12px 12px;padding:12px;display:grid}.lesson-trial-feedback h3{margin:0;font-size:1rem}.lesson-trial-feedback p{color:#526677;margin:3px 0 0;font-size:.78rem;line-height:1.4}.lesson-trial-notes,.lesson-level-review-reason{color:#26344b;gap:5px;font-size:.78rem;font-weight:800;display:grid}.lesson-trial-notes span,.lesson-level-review-reason span{justify-content:space-between;gap:8px;display:flex}.lesson-trial-notes small{color:#687388;font-weight:700}.lesson-trial-notes textarea,.lesson-level-review-reason textarea{color:#182133;width:100%;font:inherit;resize:vertical;background:#fff;border:1px solid #a9bfca;border-radius:10px;padding:9px 10px;font-size:16px;line-height:1.4}.lesson-level-review{border:0;gap:6px;padding:0;display:grid}.lesson-level-review legend{color:#26344b;margin-bottom:2px;font-size:.8rem;font-weight:850}.lesson-level-review legend small{color:#687388;margin-left:5px;font-weight:700}.lesson-level-review label{cursor:pointer;display:block;position:relative}.lesson-level-review input{opacity:0;pointer-events:none;position:absolute}.lesson-level-review label>span{color:#26344b;background:#fff;border:1px solid #bed0d8;border-radius:11px;align-items:center;min-height:42px;padding:8px 10px;font-size:.8rem;font-weight:780;display:flex}.lesson-level-review input:checked+span{background:#e1f6f6;border-color:#0f8b8d;box-shadow:inset 0 0 0 1px #0f8b8d}.lesson-level-review input:focus-visible+span{outline-offset:2px;outline:3px solid #3b82f6}.lesson-level-review-reason strong{color:#9b1c1c;font-size:.72rem}.lesson-photo-modal-card>img{object-fit:contain;background:#eef2f7;width:100%;height:auto;max-height:72vh}.lesson-record-away{background:#f8f9fc;border-color:#d7dce6}.lesson-away-notice{color:#566176;gap:4px;padding:15px 18px;display:grid}.lesson-away-notice strong{color:#34405b}.lesson-away-notice span{font-size:.88rem;line-height:1.45}.coach-outstanding{left:50%;bottom:max(12px,env(safe-area-inset-bottom));z-index:900;color:#5f3b00;background:#fff8e8;border:2px solid #ef9a38;border-radius:20px;gap:12px;width:min(720px,100vw - 24px);padding:16px;display:grid;position:fixed;transform:translate(-50%);box-shadow:0 18px 48px #3e2a0a40}.coach-outstanding h2,.coach-outstanding p{margin:0}.coach-outstanding h2{font-size:1.1rem}.coach-outstanding>div:first-child>p:last-child{margin-top:4px;font-size:.88rem}.coach-outstanding-links{gap:8px;max-height:34vh;display:grid;overflow:auto}.coach-outstanding-links a{color:#5b3700;background:#fff;border-radius:12px;gap:3px;min-height:54px;padding:11px 12px;text-decoration:none;transition:transform 80ms,opacity .15s,background .15s;display:grid;box-shadow:0 3px 10px #3e2a0a14}.coach-outstanding-links a:active{transform:scale(.985)}.coach-outstanding-links a.is-opening{opacity:.72;pointer-events:none;background:#fff0cb}.coach-outstanding-links strong{line-height:1.3}.coach-outstanding-links span{color:#75531c;font-size:.82rem}.coach-outstanding-heading{justify-content:space-between;align-items:flex-start;gap:14px;display:flex}.coach-outstanding-heading>div{min-width:0}.coach-outstanding-toggle{min-height:42px;color:inherit;font:inherit;touch-action:manipulation;background:#ffffffb8;border:1px solid #5f3b003d;border-radius:999px;flex:none;align-items:center;gap:6px;padding:8px 11px;font-size:.8rem;font-weight:850;display:inline-flex}.coach-outstanding.is-collapsed{z-index:auto;width:min(720px,100vw - 24px);margin:16px auto 0;padding-block:14px;position:relative;bottom:auto;left:auto;transform:none}.coach-outstanding.is-collapsed h2{margin-bottom:0;font-size:1rem}.coach-outstanding-links[hidden]{display:none}.coach-navigation-loading{z-index:1200;color:#182133;text-align:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#f7f8fceb;place-content:center;justify-items:center;gap:9px;padding:24px;display:grid;position:fixed;inset:0}.coach-navigation-loading strong{font-size:1.18rem}.coach-navigation-loading small{color:#687388}.coach-loading-spinner{border:4px solid #dfe4ee;border-top-color:#ee5c92;border-radius:50%;width:38px;height:38px;animation:.7s linear infinite coach-spin}@keyframes coach-spin{to{transform:rotate(360deg)}}.coach-route-loading{text-align:center;color:#182133;place-content:center;justify-items:center;gap:10px;min-height:70vh;padding:28px;display:grid}.coach-route-loading h1,.coach-route-loading p{margin:0}.coach-route-loading h1{font-size:1.35rem}.coach-route-loading p{color:#687388}@media (max-width:600px){.coach-outstanding{border-radius:17px;width:calc(100vw - 20px);padding:13px}.coach-outstanding-links{max-height:30vh}}@media (max-width:900px){.site-header{gap:12px;padding:0 20px}.brand{min-width:0;margin-right:auto}.brand span{font-size:15px}.device-note{display:none}.menu-button{display:block}.nav{border:2px solid var(--ink);box-shadow:5px 5px 0 var(--ink);background:#fff;border-radius:14px;flex-direction:column;align-items:stretch;gap:0;padding:10px 18px;display:none;position:absolute;top:72px;left:18px;right:18px}.nav.nav-open{display:flex}.nav a,.nav button{text-align:left;border-bottom:1px solid #ddd;padding:14px 0}.profile-fields{grid-template-columns:1fr 1fr}.profile-fields label:first-child{grid-column:1/-1}.session-row{grid-template-columns:36px 1fr 1fr}.session-row label:nth-of-type(3){grid-column:2/-1}.remove-session{grid-column:2/-1;justify-self:start}.parent-summary,.upcoming-list,.event-grid,.quick-actions{grid-template-columns:1fr}.events-heading{flex-direction:column;align-items:flex-start;gap:10px}}@media (max-width:600px){.site-header{height:68px}.brand img{width:46px;height:42px}.brand span{font-size:13px}.page-shell{width:min(100% - 28px,1240px);padding-top:34px}.intro h1{font-size:42px}.intro-copy{font-size:16px}.child-switcher{flex-direction:column;align-items:stretch}.small-outline{width:fit-content}.profile-card{padding:22px}.profile-summary,.profile-form-heading{flex-direction:column;align-items:flex-start}.profile-summary h2{font-size:29px}.change-details{width:100%}.profile-fields{grid-template-columns:1fr}.profile-fields label:first-child{grid-column:auto}.sessions-title{flex-direction:column;align-items:flex-start;gap:4px}.session-row{grid-template-columns:32px 1fr}.session-row label,.session-row label:nth-of-type(3),.remove-session{grid-column:2}.profile-actions{flex-direction:column-reverse;align-items:stretch}.primary-button{width:100%}.parent-summary article{min-height:0;padding:19px 20px}.parent-summary strong{font-size:21px}.action-centre,.event-recommendations{box-shadow:5px 5px 0 var(--pink);padding:21px}.action-item{flex-direction:column;align-items:flex-start}.action-buttons{width:100%}.action-buttons a,.action-buttons button{text-align:center;flex:1}.upcoming-section{padding:21px}.section-heading-row h2,.events-heading h2,.calendar-title-row h2{font-size:31px}.upcoming-list{grid-template-columns:1fr}.upcoming-row{grid-template-columns:68px 1fr}.featured-event{padding:21px}.featured-event-top{grid-template-columns:72px 1fr}.quick-event-date{height:82px}.featured-event h3{font-size:24px}.smart-calendar{padding:20px 14px}.calendar-title-row,.google-calendar-toolbar{flex-direction:column;align-items:flex-start}.month-navigation{width:100%}.month-navigation h3{margin-left:auto;font-size:20px}.view-toggle{width:100%}.view-toggle button{flex:1}.term-toggle{grid-template-columns:1fr 1fr;width:100%;display:grid}.google-weekday{padding:9px 1px;font-size:12px}.google-day-cell{text-align:center;min-height:72px;padding:4px 2px}.day-number{width:28px;height:28px;margin:0 auto 3px;font-size:13px}.calendar-event{border:1.5px solid var(--ink);border-left-width:1.5px;border-radius:5px;place-items:center;width:29px;height:21px;margin:2px 1px 0;padding:0;font-size:0;display:inline-grid}.desktop-marker{display:none}.mobile-marker{font-size:10px;font-weight:950;display:inline}.no-class-event .mobile-marker{color:#fff}.swipe-hint{display:block}.lesson-list-summary{grid-template-columns:1fr 1fr}.lesson-list-summary p{text-align:left;grid-column:1/-1}.calendar-download{width:100%}.schedule-row{grid-template-columns:64px 1fr;gap:9px}.schedule-item{flex-direction:column;align-items:flex-start;gap:4px}.schedule-item strong{text-align:left}.modal{padding:26px 20px}.modal h2{padding-right:28px;font-size:33px}.modal-fee-grid{grid-template-columns:1fr}footer{font-size:13px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition:none!important}}.login-shell{background:#f5f7fb;place-items:center;min-height:100vh;padding:24px;display:grid}.login-card{background:#fff;border:1px solid #dfe4ee;border-radius:20px;gap:18px;width:min(100%,440px);padding:32px;display:grid;box-shadow:0 18px 48px #1f2a441a}.login-card label{gap:7px;font-weight:700;display:grid}.login-card input{min-height:48px;font:inherit;border:1px solid #aeb8ca;border-radius:10px;padding:10px 12px}.login-card button{color:#fff;min-height:48px;font:inherit;cursor:pointer;background:#263b83;border:0;border-radius:10px;font-weight:800}.absence-choice{border:1px solid #d7deea;border-radius:12px;gap:9px;margin:0;padding:14px;display:grid}.absence-choice legend{color:#334057;padding:0 5px;font-weight:850}.absence-choice>label{grid-template-columns:auto 1fr;align-items:flex-start;gap:8px;display:flex}.absence-choice input[type=radio],.absence-choice input[type=checkbox],.absence-policy input[type=checkbox]{flex:none;width:20px;min-height:20px}.absence-choice .absence-upload{background:#f3f6fb;border-radius:9px;grid-template-columns:1fr;padding:10px;display:grid}.absence-choice>p{color:#5f697d;margin:3px 0 0;font-size:.9rem}.forfeit-warning{color:#91291f;background:#fff0ed;border:1px solid #e88478;border-radius:10px;gap:5px;padding:11px;display:grid}.forfeit-warning label{align-items:flex-start;gap:8px;margin-top:5px;display:flex}.absence-policy ul{margin:8px 0;padding-left:20px}.absence-policy label{align-items:flex-start;gap:8px;margin-top:8px;display:flex}.absence-lock-note{color:#596478;background:#f3f5f8;border-radius:9px;padding:10px}.absence-ready a.primary-button{justify-content:center;text-decoration:none;display:flex}.absence-mode-switch{gap:8px;margin-bottom:14px;display:flex}.absence-mode-switch button{font:inherit;cursor:pointer;background:#fff;border:1px solid #ccd4e1;border-radius:999px;padding:8px 11px;font-weight:800}.absence-mode-switch button.active{color:#165774;background:#edf8fd;border-color:#216c91}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}
