.school-branch-card{flex-direction:column;min-width:0;display:flex}.school-branch-heading h2{margin-bottom:12px}.school-timezone{color:var(--text-secondary);margin:12px 0 16px;font-size:12px}.school-venue-list{margin:0 0 18px;padding:0;list-style:none}.school-venue-list li{border-top:1px solid var(--border-subtle);padding:16px 0}.school-venue-title{justify-content:space-between;align-items:flex-start;gap:12px;font-size:13px;display:flex}.school-venue-title strong{overflow-wrap:anywhere}.school-venue-title>span{color:var(--text-secondary);flex-shrink:0;font-size:11px}.school-venue-list p{color:var(--text-secondary);overflow-wrap:anywhere;margin:9px 0 12px;font-size:12px;line-height:1.6}.school-no-venues{color:var(--text-secondary);margin:0 0 20px;font-size:12px}.school-add-venue{align-self:flex-start;margin-top:auto}@media (width<=767px){.school-settings-grid{grid-template-columns:1fr}}.people-tabs{white-space:nowrap;gap:8px;max-width:100%;padding:3px 0 10px;display:flex;overflow-x:auto}.people-tabs button{border:1px solid var(--border-subtle);background:var(--surface-base);color:var(--text-secondary);font:inherit;cursor:pointer;border-radius:10px;flex-shrink:0;padding:10px 16px;font-weight:600}.people-tabs button.selected{background:var(--brand-50);border-color:var(--brand-100);color:var(--text-primary)}.people-tabs button:focus-visible,.people-name:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px}.people-name{color:var(--text-primary);text-align:left;font:inherit;cursor:pointer;text-underline-offset:3px;background:0 0;border:0;padding:0;font-weight:650;-webkit-text-decoration:underline #0000;text-decoration:underline #0000}.people-name:hover{text-decoration-color:currentColor}.people-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-bottom:18px;display:flex}.people-toolbar .people-tabs{padding-bottom:0}.people-empty-row td{text-align:center;color:var(--text-secondary);padding:28px!important}.live-dialog:has(.people-profile){width:min(1000px,100vw - 32px);max-width:1000px}.people-profile{min-width:0}.people-profile-summary{border-bottom:1px solid var(--border-subtle);justify-content:space-between;align-items:center;gap:20px;margin-bottom:18px;padding-bottom:16px;display:flex}.people-profile h3{margin:22px 0 12px;font-size:16px}.people-profile .people-tabs{margin:10px 0 8px}.people-detail-list{margin:0;padding:0;list-style:none}.people-detail-list li{border-bottom:1px solid var(--border-subtle);justify-content:space-between;align-items:flex-start;gap:20px;padding:14px 0;display:flex}.people-detail-list small,.people-profile-summary small{color:var(--text-secondary);margin-top:4px;font-size:13px;line-height:1.5;display:block}.people-contact{overflow-wrap:anywhere;flex-direction:column;gap:5px;display:flex}.people-contact a,.people-coach a{color:var(--brand-700)}.people-coach,.people-progress{border:1px solid var(--border-subtle);border-radius:12px;margin-bottom:12px;padding:16px}.people-coach p,.people-progress p{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.55}.people-progress small{color:var(--text-secondary)}.people-progress h3{margin:8px 0}.people-progress dl{flex-wrap:wrap;gap:24px;display:flex}.people-progress dl div{gap:8px;display:flex}.people-progress dd{margin:0;font-weight:600}.people-balance{margin:18px 0;font-size:20px;font-weight:650}.people-permissions{gap:12px;display:grid}.people-permission{align-items:flex-start;gap:10px;font-size:14px;display:flex}.people-permission input{flex-shrink:0;margin-top:3px}.people-permission small{color:var(--text-secondary);margin-top:3px;line-height:1.5;display:block}.people-form-group{border-top:1px solid var(--border-subtle);padding:16px 0}.people-form-group legend{padding:0 0 8px;font-weight:650}.people-staff-form fieldset{border-bottom:0;border-left:0;border-right:0;margin:18px 0 0}.people-staff-form textarea{resize:vertical;min-height:110px}.people-actions{flex-wrap:wrap;gap:12px;display:flex}.people-context{color:var(--text-secondary);margin:0 0 18px;font-size:13px}.people-access-state{background:var(--surface-subtle);border-radius:6px;padding:4px 8px;font-size:13px;display:inline-block}@media (width<=600px){.live-dialog:has(.people-profile){width:calc(100vw - 20px);max-height:calc(100dvh - 24px);padding:18px}.people-profile-summary{flex-direction:column;align-items:flex-start;gap:8px}.people-detail-list li{flex-direction:column;gap:6px}.people-toolbar{gap:10px}.people-toolbar .search-field{width:100%;max-width:none}.people-profile .live-table{min-width:520px}.people-profile .people-tabs button{padding:10px 12px}}.people-toolbar-controls{justify-content:flex-end;align-items:center;gap:18px;min-width:0;margin-left:auto;display:flex}.people-toolbar-controls .search-field{margin-left:0}.people-archive{white-space:nowrap;min-height:40px}.group-coach-options{gap:16px}.group-coach-options label{min-height:26px;line-height:1.5}.group-coach-options input{flex:none}@media (width<=600px){.people-toolbar-controls{gap:12px;width:100%}.people-toolbar-controls .search-field{flex:1;width:auto;min-width:120px}.people-toolbar-controls .people-archive{gap:6px;font-size:11px}.people-toolbar-controls .search-field input{min-width:0}.people-toolbar-controls .people-archive input{width:16px;height:16px}}.filterbar--calendar{flex-wrap:nowrap}.filterbar--calendar .date-control{flex:none}.filterbar--calendar .schedule-group-tags{scrollbar-width:thin;flex:1 1 0;gap:6px;min-width:0;margin:0;padding:3px}.schedule-group-tags button{flex-shrink:0;min-height:44px}.schedule-group-picker{min-width:0;display:none;position:relative}.schedule-group-trigger{background:var(--surface-base);max-width:100%;min-height:44px;color:var(--text-primary);border:1px solid var(--border-subtle);text-align:left;border-radius:8px;align-items:center;gap:8px;padding:0 12px;font-size:12px;display:flex}.schedule-group-trigger>span{text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.schedule-group-trigger>svg{color:var(--text-secondary)}.schedule-group-trigger>svg:last-child{transform:rotate(90deg)}.schedule-group-options{z-index:75;background:var(--surface-base);border:1px solid var(--border-subtle);border-radius:12px;gap:3px;width:max-content;min-width:100%;max-width:calc(100vw - 28px);max-height:min(340px,50dvh);padding:5px;display:grid;position:absolute;top:calc(100% + 8px);left:0;overflow-y:auto;box-shadow:0 10px 30px #1720291f}.schedule-group-options button{min-height:44px;color:var(--text-primary);text-align:left;background:0 0;border:0;border-radius:8px;justify-content:space-between;align-items:center;gap:16px;padding:10px 12px;font-size:12px;display:flex}.schedule-group-options button>span{align-items:center;gap:8px;display:flex}.schedule-group-options button[aria-selected=true]{background:var(--brand-50);font-weight:600}.schedule-group-options button:hover{background:var(--surface-subtle)}@media (width<=767px){.filterbar--calendar{flex-wrap:wrap}.filterbar--calendar .schedule-group-tags{display:none}.schedule-group-picker{flex:100%;display:block}.schedule-group-trigger{width:100%}.filterbar--calendar .date-control{flex:100%;min-width:0}.filterbar--calendar .date-control strong{text-align:center;flex:1}}.finance-intro{color:var(--text-secondary);max-width:800px;margin:0 0 20px;font-size:13px;line-height:1.6}.finance-toolbar,.finance-section-tools{flex-wrap:wrap;align-items:end;gap:14px;margin:18px 0;display:flex}.finance-toolbar .field,.finance-section-tools .field{flex:1;min-width:180px;max-width:290px;margin:0}.finance-toolbar .finance-search{flex:2;min-width:240px;max-width:400px}.finance-summary{color:var(--text-secondary);border-top:1px solid var(--border-subtle);flex-wrap:wrap;align-items:center;gap:22px;padding:15px 0;font-size:12px;display:flex}.finance-summary strong{color:var(--text-primary);font-variant-numeric:tabular-nums;font-size:14px}.finance-debt,.finance-summary .finance-debt{color:var(--danger-fg);font-weight:600}.finance-tabs{white-space:nowrap;border-bottom:1px solid var(--border-subtle);gap:6px;max-width:100%;margin:0 0 22px;padding:0 0 10px;display:flex;overflow-x:auto}.finance-tabs button{color:var(--text-secondary);background:0 0;border:0;border-radius:8px;align-items:center;gap:8px;min-height:42px;padding:11px 14px;font-size:13px;display:flex}.finance-tabs button.selected{background:var(--brand-50);color:var(--brand-700);font-weight:600}.finance-tabs button span{background:var(--surface-subtle);color:var(--text-secondary);border-radius:4px;padding:2px 5px;font-size:11px}.finance-panel{min-width:0}.finance-table{min-width:710px}.finance-table .finance-numeric{text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums}.finance-table .finance-person{text-align:left;padding:0;font-weight:600}.finance-table td>div+div,.finance-allocation+.finance-allocation{margin-top:12px}.finance-table td{line-height:1.5}.finance-table th{white-space:nowrap}.finance-table .live-actions{flex-wrap:nowrap}.coach-profile-bio{white-space:pre-wrap;font-size:14px;line-height:1.7}.coach-profile-details{font-size:13px;line-height:1.6}.coach-profile-details dt{margin-top:18px;font-weight:600}.coach-profile-details dd{color:var(--text-secondary);margin:6px 0}@media (width<=600px){.finance-toolbar,.finance-section-tools{gap:10px}.finance-toolbar .field,.finance-section-tools .field{min-width:140px;max-width:none}.finance-toolbar .finance-search{flex-basis:100%;min-width:0}.finance-summary{gap:12px 18px}.finance-tabs button{padding:10px 12px}.finance-table th,.finance-table td{padding:13px}.finance-section-tools>.secondary{margin-left:auto}}.live-app .topbar{gap:16px}.live-app .topbar-controls{gap:18px;min-width:0}.live-app .workspace-context{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.branch-context{min-width:0;color:var(--text-primary);align-items:center;gap:8px;font-size:12px;display:flex}.branch-context>svg{color:var(--text-secondary);flex:none}.branch-context>span{text-overflow:ellipsis;white-space:nowrap;max-width:180px;font-weight:550;overflow:hidden}.account-popover-root{flex:none;position:relative}.account-trigger{color:var(--text-primary);cursor:pointer;background:0 0;border:0;align-items:center;gap:9px;padding:4px;font-size:12px;font-weight:550;display:flex}.account-trigger .avatar{background:var(--surface-hover);width:34px;height:34px;color:var(--text-secondary);font-size:11px}.account-popover{background:var(--surface-base);border:1px solid var(--border-subtle);z-index:70;border-radius:12px;width:260px;max-width:calc(100vw - 32px);padding:6px;position:absolute;top:calc(100% + 10px);right:0;box-shadow:0 12px 32px #17221c1f}.account-popover-identity{border-bottom:1px solid var(--border-subtle);overflow-wrap:anywhere;gap:6px;margin-bottom:4px;padding:12px 10px;display:grid}.account-popover-identity small{color:var(--text-secondary);font-size:11px}.account-popover button{text-align:left;width:100%;color:var(--text-primary);cursor:pointer;background:0 0;border:0;border-radius:7px;align-items:center;gap:9px;padding:12px 10px;font-size:12px;display:flex}.account-popover button:hover{background:var(--surface-hover)}.account-popover .account-logout{border-top:1px solid var(--border-subtle);color:var(--danger-fg);border-radius:0;margin-top:4px}.live-settings-nav{margin-top:14px}.live-settings-nav>.nav-item{width:100%}.live-settings-nav .nav-chevron{margin-left:auto;transform:rotate(90deg)}.live-settings-nav .nav-chevron.is-open{transform:rotate(-90deg)}.live-settings-links{padding:3px 0 2px 16px}.live-settings-links .nav-item{min-height:39px;padding-block:9px;font-size:12px}.live-settings-links .nav-item svg{width:17px;height:17px}.section-description{color:var(--text-secondary);max-width:820px;margin:-4px 0 20px;font-size:13px;line-height:1.7}.theme-example{flex-wrap:wrap;align-items:center;gap:14px;padding:20px 0;display:flex}.live-branch-empty{padding-block:30px}@media (width<=767px){.live-app .topbar{flex-wrap:wrap;gap:8px;min-height:70px;padding-block:12px}.live-app .topbar-controls{gap:8px;margin-left:auto}.live-app .workspace-context{display:none}.branch-context{gap:3px;font-size:11px}.branch-trigger>span,.branch-context>span{max-width:140px}.account-trigger{gap:5px}.account-trigger>span:not(.avatar){text-overflow:ellipsis;max-width:70px;overflow:hidden}.account-trigger .avatar{width:30px;height:30px}.live-settings-nav{margin-top:7px}.live-settings-links{padding-left:12px}.live-app .mobile-brand .brand{font-size:20px}.section-description{font-size:12px;line-height:1.6}}@media (width<=389px){.branch-trigger>span,.branch-context>span{max-width:106px}.account-trigger>span:not(.avatar){display:none}.live-app .topbar-controls{gap:4px}}.branch-picker{flex:none;position:relative}.branch-trigger{max-width:220px;min-height:40px;font:inherit;color:var(--text-primary);cursor:pointer;background:0 0;border:0;border-radius:8px;align-items:center;gap:8px;padding:4px 8px;font-weight:550;display:flex}.branch-trigger>svg{color:var(--text-secondary);flex:none}.branch-trigger>span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.branch-trigger:hover,.branch-trigger[aria-expanded=true]{background:var(--surface-hover)}.branch-options{z-index:75;border:1px solid var(--border-subtle);background:var(--surface-base);border-radius:12px;gap:3px;width:max-content;min-width:220px;max-width:min(320px,100vw - 28px);max-height:min(340px,100dvh - 120px);padding:6px;display:grid;position:absolute;top:calc(100% + 8px);right:0;overflow:auto;box-shadow:0 12px 32px #17221c1f}.branch-options button{width:100%;min-height:40px;color:var(--text-primary);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:7px;justify-content:space-between;align-items:center;gap:16px;padding:10px 12px;display:flex}.branch-options button span{overflow-wrap:anywhere;white-space:normal;min-width:0}.branch-options button svg{color:var(--brand-700);flex:none}.branch-options button:hover,.branch-options button:focus-visible{background:var(--surface-hover)}.branch-options button[aria-selected=true]{background:var(--brand-50);font-weight:600}@media (width<=767px){.branch-trigger{gap:5px;max-width:155px;padding-inline:5px;font-size:11px}.branch-options{min-width:200px;font-size:12px}.branch-options button{min-height:44px}}@font-face{font-family:Inter;src:url(/fonts/InterVariable.woff2)format("woff2");font-weight:100 900;font-style:normal;font-display:swap}:root{color:#202629;font-synthesis:none;text-rendering:optimizelegibility;--surface-canvas:#f5f7f8;--surface-base:#fff;--surface-subtle:#f1f4f5;--surface-hover:#edf1f2;--text-primary:#202629;--text-secondary:#59656b;--text-muted:#657178;--border-subtle:#e4e9ec;--border-control:#87959e;--focus-ring:#146c43;--brand-50:#edf9df;--brand-100:#e0f4c2;--brand-500:#1f9d55;--brand-600:#157a40;--brand-700:#0e5a2e;--accent:#c5f94b;--success-bg:#dcf6e6;--success-fg:#0d6335;--warning-bg:#fff1c7;--warning-fg:#7a4b00;--danger-bg:#ffe1df;--danger-fg:#a12622;--info-bg:#def;--info-fg:#075a9f;--neutral-bg:#e8ece9;--neutral-fg:#435047;--logo-accent:#c5f94b;--sidebar-bg:#202629;--sidebar-text:#c9d0d4;background:#f5f7f8;font-family:Inter,Arial,sans-serif}*{box-sizing:border-box}body{min-width:320px;min-height:100vh;margin:0}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed}:is(a,button,input,select,textarea,[tabindex]):focus-visible{outline:2px solid var(--focus-ring);outline-offset:3px}button:focus-visible{z-index:3;position:relative}button svg{flex-shrink:0}button{transition:background-color .14s,border-color .14s,color .14s}[hidden]{display:none!important}#root{min-height:100vh}h1,h2,h3,p{margin-top:0}h1,h2,h3{color:var(--text-primary)}svg{vertical-align:middle;flex-shrink:0}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.skip-link{z-index:100;background:var(--accent);color:var(--text-primary);padding:15px;position:fixed;top:-80px;left:250px}.skip-link:focus{top:12px}.muted{color:var(--text-secondary)}.eyebrow{color:var(--text-secondary);letter-spacing:.08em;text-transform:uppercase;font-size:11px;font-weight:600;display:block}.brand{color:var(--text-primary);flex-shrink:0;align-items:center;line-height:0;display:inline-flex}.brand-logo{width:148px;height:auto;display:block;overflow:visible}.brand-logo-accent{fill:var(--logo-accent)}.brand--compact .brand-logo{width:31px}.app-shell{min-height:100vh}.sidebar{background:var(--sidebar-bg);width:224px;color:var(--sidebar-text);z-index:8;flex-direction:column;padding:29px 16px 15px;display:flex;position:fixed;inset:0 auto 0 0}.sidebar>.brand{color:#fff;margin-bottom:40px;padding:0 9px}.sidebar-section-label{letter-spacing:.09em;text-transform:uppercase;color:#a2adb4;margin-bottom:14px;padding:0 13px;font-size:10px}.sidebar nav{gap:5px;display:grid}.nav-item{text-align:left;width:100%;color:var(--sidebar-text);background:0 0;border:0;border-radius:9px;align-items:center;gap:13px;min-height:46px;padding:0 13px;font-size:13px;display:flex}.nav-item:hover:not(:disabled){color:#fff;background:#31393e}.nav-item--active,.nav-item--active:hover:not(:disabled){background:var(--accent);color:#1b2427;font-weight:600}.nav-item:disabled{color:#96a2aa}.nav-badge{background:#00000014;border-radius:6px;place-items:center;width:21px;height:21px;margin-left:auto;font-size:11px;display:grid}.nav-separator{background:#3b454b;height:1px;margin:14px 12px}.sidebar-footer{margin-top:auto;padding-top:40px}.school-identity{border-top:1px solid #3b454b;align-items:center;gap:10px;margin-top:13px;padding:18px 7px;display:flex}.school-identity strong,.sidebar-user strong{color:#edf1f3;font-size:11px;font-weight:550;display:block}.school-identity small,.sidebar-user small{color:#aeb8be;margin-top:5px;font-size:10px;display:block}.school-avatar{background:#333d43;border-radius:9px;place-items:center;width:32px;height:32px;display:grid}.sidebar-user{border-top:1px solid #3b454b;align-items:center;gap:10px;padding:17px 7px 3px;display:flex}.sidebar-user .avatar{color:#e4f1e2;background:#48534e;border:2px solid #65726a}.workspace{max-width:1860px;margin-left:224px;padding:0 28px 20px}.topbar{border-bottom:1px solid var(--border-subtle);justify-content:space-between;align-items:center;gap:12px;height:78px;margin-bottom:20px;display:flex}.workspace-context{align-items:center;gap:11px;font-size:12px;font-weight:550;display:flex}.context-dot{background:var(--brand-700);border-radius:50%;width:7px;height:7px}.context-separator{color:#9ba5aa;margin:0 2px}.topbar-controls{align-items:center;gap:14px;display:flex}.mode-picker{color:var(--text-secondary);align-items:center;gap:9px;font-size:11px;display:flex}.mode-picker select{background:var(--surface-base);border:1px solid var(--border-subtle);max-width:185px;min-height:36px;color:var(--text-primary);appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%23202629' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-position:right 12px center;background-repeat:no-repeat;background-size:16px 16px;border-radius:8px;padding:0 34px 0 12px;font-size:12px}.mobile-brand{display:none}.avatar{color:#43555c;background:#e8eef0;border-radius:50%;flex:none;place-items:center;width:34px;height:34px;font-size:11px;font-weight:600;display:inline-grid}.button-icon{width:36px;min-height:36px;color:var(--text-secondary);background:0 0;border:0;border-radius:8px;justify-content:center;align-items:center;padding:0;display:inline-flex}.button-icon:hover,.button-icon.is-active{color:var(--text-primary);background:var(--surface-subtle)}.demo-notice{color:var(--text-secondary);align-items:center;gap:10px;margin:0 0 27px;font-size:11px;line-height:1.6;display:flex}.demo-label{color:#48565e;white-space:nowrap;background:#e7ecef;border-radius:5px;padding:3px 7px;font-weight:600}.theme-settings{background:var(--surface-base);border:1px solid var(--border-subtle);border-radius:12px;justify-content:space-between;align-items:center;gap:20px;margin-bottom:16px;padding:17px 20px;display:flex}.theme-settings strong{font-size:14px}.theme-settings p{color:var(--text-secondary);margin:5px 0 0;font-size:12px}.theme-settings .field{min-width:200px}.page-heading{justify-content:space-between;align-items:center;gap:20px;margin-bottom:23px;display:flex}.breadcrumb{color:var(--text-secondary);margin-bottom:8px;font-size:11px;line-height:1.5}.breadcrumb span{color:#89949b;margin:0 6px}.page-heading h1{letter-spacing:-.95px;margin:0;font-size:28px;font-weight:700;line-height:1.25}.heading-actions{align-items:center;gap:12px;display:flex}.page-date{color:var(--text-secondary);font-size:12px}.primary,.secondary,.primary-dark,.text-button{white-space:nowrap;border-radius:8px;justify-content:center;align-items:center;gap:9px;min-height:40px;padding:0 14px;font-size:12px;font-weight:550;display:inline-flex}.primary{background:var(--accent);color:#202629;border:1px solid #0000}.primary:hover:not(:disabled){filter:brightness(.96)}.primary-dark{color:#fff;background:#202629;border:1px solid #202629}.primary-dark:hover{background:#384247}.secondary{background:var(--surface-base);border:1px solid var(--border-subtle);color:var(--text-primary)}.secondary:hover:not(:disabled){background:var(--surface-hover);border-color:var(--border-control)}.primary:disabled,.secondary:disabled{opacity:.5}.text-button{min-height:32px;color:var(--brand-700);background:0 0;border:0;padding:0}.segmented{background:#e9edf0;border-radius:9px;gap:3px;padding:3px;display:flex}.segmented button{min-height:33px;color:var(--text-secondary);background:0 0;border:0;border-radius:7px;justify-content:center;align-items:center;gap:7px;padding:0 13px;font-size:11px;display:flex}.segmented .selected{color:#fff;background:#202629;box-shadow:0 1px 3px #17212b12}.filterbar{flex-wrap:wrap;align-items:center;gap:11px;margin-bottom:20px;display:flex}.filter-select{background:var(--surface-base);border:1px solid var(--border-subtle);min-height:38px;color:var(--text-secondary);border-radius:8px;align-items:center;gap:8px;padding:0 11px;display:flex}.filter-select select{color:var(--text-primary);background:0 0;border:0;max-width:185px;font-size:12px}.date-control{border:1px solid var(--border-subtle);background:var(--surface-base);border-radius:8px;align-items:center;display:flex}.date-control>span{text-align:center;text-transform:capitalize;min-width:131px;font-size:12px;font-weight:500}.search-field{background:var(--surface-base);color:var(--text-secondary);border:1px solid var(--border-subtle);border-radius:8px;align-items:center;gap:7px;min-height:38px;margin-left:auto;padding:0 10px;display:flex}.search-field input{width:150px;color:var(--text-primary);background:0 0;border:0;min-width:0;font-size:11px}.search-field input::placeholder{color:var(--text-secondary)}.search-field .button-icon{width:23px;min-height:28px}.group-tabs{gap:8px;margin-bottom:26px;padding:3px 0;display:flex;overflow-x:auto}.group-tabs button{white-space:nowrap;border:1px solid var(--border-subtle);min-height:37px;color:var(--text-secondary);background:var(--surface-base);border-radius:8px;align-items:center;gap:8px;padding:0 12px;font-size:12px;display:flex}.group-tabs .selected{background:var(--brand-50);border-color:var(--brand-100);color:var(--text-primary);font-weight:600}.tab-count{color:var(--text-secondary);font-size:10px}.group-dot{background:var(--brand-500);border-radius:50%;width:6px;height:6px;display:inline-block}.group-dot--blue{background:#3870be}.group-dot--orange{background:#cc783e}.group-dot--violet{background:#8a63c0}.journal-meta{justify-content:space-between;gap:15px;margin-bottom:11px;font-size:11px;display:flex}.journal-meta strong{margin-right:6px;font-size:12px;font-weight:600}.journal-scroll{border:1px solid var(--border-subtle);background:var(--surface-base);border-radius:12px;max-width:100%;overflow:auto}.journal-table{border-spacing:0;border-collapse:separate;width:100%;min-width:1050px;font-size:11px}.journal-table caption{text-align:left}.journal-table th,.journal-table td{text-align:center;vertical-align:middle;border-bottom:1px solid var(--border-subtle);border-right:1px solid #f0f3f4;height:62px;padding:0}.journal-table thead th{height:68px;color:var(--text-primary);background:#fbfcfd;min-width:47px;font-weight:600}.journal-table thead th>span{margin-bottom:3px;font-size:12px;display:block}.journal-table th>small{color:var(--text-secondary);font-size:10px;font-weight:400;display:block}.journal-table th>em{margin-top:3px;font-size:8px;font-style:normal;font-weight:500;display:block}.journal-table tbody tr:last-child>*{border-bottom:0}.journal-table tbody tr:hover>*{background:#f9fbfb}.journal-table .student-col{text-align:left;z-index:2;width:207px;min-width:207px;box-shadow:1px 0 0 var(--border-subtle);background:#fff;padding:0 15px;position:sticky;left:0}.journal-table thead .student-col{background:#fbfcfd}.journal-table tbody .student-col{white-space:nowrap;font-size:11px;font-weight:500}.student-col .avatar{width:31px;height:31px;margin-right:10px;font-size:10px}.total-col{font-variant-numeric:tabular-nums;width:45px;min-width:45px}.journal-table .total-col:last-child{width:67px;min-width:67px}.journal-table .today-col{background:var(--brand-50)}.journal-table .cancelled-col{color:var(--warning-fg)}.journal-table th.cancelled-col{background:#fffaf0}.cell-button{width:100%;height:100%;min-height:44px;color:inherit;background:0 0;border:0;justify-content:center;align-items:center;padding:0;display:flex}.cell-button:hover{background:var(--brand-100)}.cell-button.is-selected{background:var(--brand-100);box-shadow:inset 0 0 0 1.5px var(--brand-700);border-radius:7px}.mark{border-radius:50%;flex:none;justify-content:center;align-items:center;width:18px;height:18px;font-size:17px;line-height:1;display:inline-flex}.mark--present{background:var(--success-fg);color:#fff}.mark--absent{color:#943522;background:#ffddd4}.mark--unmarked{background:0 0;border:1px solid #82929b}.mark--cancelled{color:var(--warning-fg);font-size:15px}.mark--future{color:#b7c1c7;font-size:24px}.journal-legend{flex-wrap:wrap;align-items:center;gap:20px;margin:18px 2px 25px;display:flex}.journal-legend>span{color:var(--text-secondary);align-items:center;gap:7px;font-size:10px;display:flex}.journal-legend .mark{width:16px;height:16px}.cell-detail{background:var(--surface-base);border:1px solid var(--border-subtle);border-radius:12px;justify-content:space-between;align-items:center;gap:17px;padding:17px 20px;display:flex}.cell-detail>div{min-width:0}.cell-detail strong{font-size:11px;font-weight:550;display:block}.cell-detail small{color:var(--text-secondary);margin-bottom:6px;font-size:10px;line-height:1.5;display:block}.detail-person{align-items:center;gap:11px;display:flex}.detail-person .avatar{width:39px;height:39px;font-size:12px}.detail-person strong{margin-bottom:4px;font-size:13px}.detail-person small{margin-bottom:0}.cell-detail .detail-mark{align-items:center;gap:7px;display:flex}.cell-detail .mark{width:14px;height:14px}.calendar-all{color:var(--text-secondary);align-items:center;gap:6px;font-size:11px;display:flex}.calendar-all input{accent-color:var(--brand-700)}.calendar-layout{grid-template-columns:minmax(0,1fr) 233px;gap:15px;display:grid}.calendar-scroll{background:var(--surface-base);border:1px solid var(--border-subtle);border-radius:12px;overflow:auto}.week-calendar{min-width:720px}.week-heading{border-bottom:1px solid var(--border-subtle);grid-template-columns:44px repeat(5,minmax(0,1fr));display:grid}.week-day{text-align:center;justify-content:center;align-items:center;gap:7px;padding:12px;display:flex}.week-day small{color:var(--text-secondary);text-transform:capitalize;font-size:11px}.week-day strong{font-size:13px;font-weight:600}.week-day.is-today{background:var(--brand-50)}.week-day.is-today strong{background:var(--accent);color:var(--text-primary);border-radius:7px;padding:6px}.week-body{grid-template-columns:44px repeat(5,minmax(0,1fr));height:475px;display:grid}.time-gutter{padding-top:1px}.time-gutter span{height:93px;color:var(--text-secondary);text-align:center;padding:9px 2px 0;font-size:9px;display:block}.week-column{border-left:1px solid var(--border-subtle);background:repeating-linear-gradient(#0000 0 92px,#e9edef 92px 93px);position:relative}.calendar-event{border:1px solid #0000;border-left:3px solid var(--event-border,#4177b9);text-align:left;color:var(--text-primary);border-radius:7px;flex-direction:column;align-items:flex-start;gap:5px;padding:9px 6px;font-size:10px;display:flex;position:absolute;left:5px;right:5px;overflow:hidden}.calendar-event strong{font-size:11px}.calendar-event>span{font-size:9px}.calendar-event .event-time{font-size:9px;font-weight:500}.calendar-event em{background:#fff9;border-radius:4px;padding:3px 5px;font-size:8px;font-style:normal;font-weight:600}.calendar-event.is-selected{box-shadow:0 0 0 1.5px var(--brand-700)}.group-color--blue{--event-border:#4379bf;color:#244d83;background:#eaf2ff}.group-color--orange{--event-border:#d6854d;color:#82471d;background:#fff0e4}.group-color--violet{--event-border:#9271cf;color:#6c45a3;background:#f0eafe}.session-inspector{background:var(--surface-base);border:1px solid var(--border-subtle);border-radius:12px;align-self:start;padding:20px 16px}.session-inspector h2{letter-spacing:-.4px;margin:11px 0 7px;font-size:18px}.inspector-time{color:var(--text-secondary);font-size:12px}.status{white-space:nowrap;border-radius:6px;align-items:center;padding:4px 8px;font-size:10px;font-weight:550;display:inline-flex}.status--success{color:var(--success-fg);background:var(--success-bg)}.status--warning{color:var(--warning-fg);background:var(--warning-bg)}.status--danger{color:var(--danger-fg);background:var(--danger-bg)}.status--info{color:var(--info-fg);background:var(--info-bg)}.status--neutral{color:var(--neutral-fg);background:var(--neutral-bg)}.session-inspector dl{border-top:1px solid var(--border-subtle);margin-top:22px;padding:15px 0 0}.session-inspector dl div{margin:0 0 17px}.session-inspector dt{color:var(--text-secondary);align-items:center;gap:7px;font-size:10px;display:flex}.session-inspector dd{margin:5px 0 0 24px;font-size:12px;font-weight:500}.session-inspector .primary-dark{width:100%;margin:4px 0 15px}.inspector-note{margin:0;font-size:10px;line-height:1.7}.directory{border:1px solid var(--border-subtle);background:var(--surface-base);border-radius:12px;overflow:hidden}.directory-head,.directory-row{grid-template-columns:1.2fr 1fr 1.2fr;align-items:center;gap:15px;width:100%;padding:16px 20px;display:grid}.directory-head{background:var(--surface-subtle);color:var(--text-secondary);font-size:11px}.directory-row{border:0;border-bottom:1px solid var(--border-subtle);background:var(--surface-base);text-align:left;min-height:64px;font-size:11px}.directory-row:hover{background:var(--surface-hover)}.directory-row>span{align-items:center;gap:10px;display:flex}.directory-row>span:last-child{color:var(--text-secondary);justify-content:space-between}.directory-row strong{font-weight:500}.groups-directory{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;display:grid}.group-summary{border:1px solid var(--border-subtle);background:var(--surface-base);border-radius:12px;padding:22px}.group-summary-icon{border-radius:12px;place-items:center;width:45px;height:45px;margin-bottom:22px;display:grid}.group-summary h2{margin-bottom:7px;font-size:20px}.group-summary p{color:var(--text-secondary);font-size:11px}.group-summary dl{border-top:1px solid var(--border-subtle);margin-top:20px;padding:17px 0}.group-summary dl div{justify-content:space-between;gap:14px;margin-bottom:14px;font-size:11px;display:flex}.group-summary dt{color:var(--text-secondary)}.group-summary dd{margin:0}.group-summary .secondary{width:100%}.mobile-nav{display:none}.empty-state{text-align:center;background:var(--surface-base);border:1px dashed var(--border-subtle);border-radius:12px;padding:55px 20px}.empty-state>svg{color:var(--text-secondary);margin-bottom:15px}.empty-state h2{margin:0 0 8px;font-size:17px}.empty-state p{color:var(--text-secondary);font-size:12px;line-height:1.6}.local-notice{background:var(--success-bg);color:var(--success-fg);border-radius:8px;align-items:center;gap:8px;margin:0 0 15px;padding:8px 12px;font-size:12px;display:flex}.local-notice .button-icon{margin-left:auto}.field{color:var(--text-secondary);gap:7px;font-size:12px;display:grid}.field input,.field select{border:1px solid var(--border-control);background:var(--surface-base);width:100%;color:var(--text-primary);border-radius:8px;min-height:42px;padding:10px 12px}.field strong{color:var(--text-primary);padding:10px 0;font-size:14px;font-weight:550}.form-dialog{border:1px solid var(--border-subtle);background:var(--surface-base);color:var(--text-primary);border-radius:16px;width:min(480px,100% - 24px);padding:24px;box-shadow:0 16px 60px #17242c30}.form-dialog::backdrop{background:#14212870}.form-dialog header{justify-content:space-between;align-items:center;gap:15px;display:flex}.form-dialog h2{margin:7px 0 12px;font-size:21px}.form-dialog form{gap:18px;margin-top:20px;display:grid}.dialog-note{color:var(--text-secondary);margin:0;font-size:12px;line-height:1.7}.form-dialog footer{justify-content:flex-end;gap:8px;margin-top:6px;display:flex}.form-columns{grid-template-columns:1fr 1fr;gap:12px;display:grid}.form-error{color:var(--danger-fg);margin:0;font-size:12px}.state{max-width:560px;margin:12vh auto;padding:32px}.state>.brand{color:var(--text-primary);margin-bottom:25px}.state h1{font-size:26px}.state--error{border:1px solid var(--danger-fg);background:#fff;border-radius:15px}.skeleton{background:#e1e7e8;border-radius:8px;height:40px;margin-top:20px;animation:1.4s infinite pulse}.skeleton--short{width:65%}@keyframes pulse{50%{opacity:.5}}@media (width>=1600px){.workspace{padding-left:40px;padding-right:40px}.journal-table th,.journal-table td{height:68px}.journal-table .student-col{width:245px;min-width:245px}.journal-table tbody .student-col{font-size:12px}.journal-table .student-col .avatar{width:35px;height:35px}}@media (width<=1200px){.workspace{padding-left:20px;padding-right:20px}.filterbar{gap:8px}.search-field{margin-left:0}.heading-actions{gap:8px}.page-heading h1{font-size:25px}.calendar-layout{grid-template-columns:minmax(0,1fr)}.session-inspector{flex-wrap:wrap;align-items:center;gap:12px 20px;display:flex}.session-inspector .eyebrow{width:100%}.session-inspector h2,.session-inspector p,.session-inspector dl{margin:0}.session-inspector dl{border:0;gap:20px;width:100%;padding:0;display:flex}.session-inspector dl div{margin:0}.session-inspector .primary-dark{width:auto;margin:0}.session-inspector .inspector-note{flex:1}}@media (width<=900px){.sidebar{display:none}.workspace{margin-left:0;padding:0 20px 100px}.topbar{height:74px}.workspace-context{display:none}.mobile-brand{display:block}.mobile-brand .brand-logo{width:110px}.mobile-nav{z-index:10;border-top:1px solid var(--border-subtle);background:var(--surface-base);padding:8px 12px max(8px,env(safe-area-inset-bottom));grid-template-columns:repeat(4,1fr);display:grid;position:fixed;bottom:0;left:0;right:0}.mobile-nav button{min-height:48px;color:var(--text-secondary);background:0 0;border:0;border-radius:9px;flex-direction:column;justify-content:center;align-items:center;gap:5px;font-size:10px;display:flex}.mobile-nav button.selected{background:var(--brand-50);color:var(--brand-700)}.groups-directory{grid-template-columns:repeat(2,minmax(0,1fr))}.group-summary:last-child{grid-column:1/-1}.topbar-avatar{display:none}}@media (width<=560px){.workspace{padding:0 14px 95px}.topbar{height:67px;margin-bottom:15px}.topbar-controls{gap:3px}.mode-picker>span{display:none}.mode-picker select{max-width:143px;min-height:38px;font-size:11px}.brand{gap:8px}.mobile-brand .brand-logo{width:110px}.theme-toggle{width:33px}.demo-notice{align-items:flex-start;gap:7px;margin-bottom:23px;font-size:10px}.page-heading{flex-wrap:wrap;align-items:flex-start;gap:17px;margin-bottom:20px}.page-heading h1{font-size:25px}.heading-actions{justify-content:space-between;gap:7px;width:100%}.segmented button{gap:5px;min-height:37px;padding:0 8px;font-size:10px}.primary,.secondary,.primary-dark{min-height:44px;padding:0 11px;font-size:11px}.breadcrumb{font-size:10px}.filterbar{gap:8px}.filter-select{flex:1;min-height:42px;padding:0 8px}.filter-select select{width:100%;max-width:128px;font-size:11px}.date-control{flex:1;min-height:42px}.date-control>span{width:100%;min-width:130px;font-size:11px}.date-control .button-icon{min-height:40px}.search-field{flex:1;min-height:42px;padding:0 8px}.search-field input{width:100%;font-size:11px}.group-tabs{margin-bottom:18px;margin-right:-14px;padding-right:14px}.group-tabs button{gap:6px;min-height:42px;padding:0 10px;font-size:11px}.tab-count{display:none}.journal-meta{flex-direction:column;gap:5px;margin-bottom:10px}.journal-meta .muted{font-size:10px}.journal-table{min-width:940px}.journal-table .student-col{width:160px;min-width:160px;padding:0 9px}.journal-table tbody .student-col{font-size:10px}.student-col .avatar{width:25px;height:25px;margin-right:6px;font-size:9px}.journal-table td,.journal-table th{height:59px}.journal-table thead th{min-width:44px}.journal-legend{gap:12px 15px;margin:15px 0 19px}.journal-legend>span{gap:5px;font-size:9px}.cell-detail{flex-wrap:wrap;gap:18px;padding:15px}.cell-detail .detail-person{width:100%}.cell-detail>div:not(.detail-person){flex:1}.cell-detail .secondary{width:100%}.calendar-layout{gap:12px}.week-calendar{min-width:650px}.calendar-all{min-height:35px}.session-inspector{padding:18px}.session-inspector dl{flex-wrap:wrap;gap:16px}.session-inspector .inspector-note{flex-basis:100%}.session-inspector .primary-dark{width:100%}.groups-directory{grid-template-columns:1fr}.group-summary:last-child{grid-column:auto}.directory-head{display:none}.directory-row{grid-template-columns:1fr auto;gap:6px;padding:14px}.directory-row>span:last-child{grid-column:1/-1;margin-left:44px;font-size:10px}.directory-row>span:nth-child(2){font-size:10px}.directory-row strong{font-size:11px}.theme-settings{flex-direction:column;align-items:flex-start;gap:13px;padding:15px}.theme-settings .field{width:100%}.form-dialog{padding:20px}.page-date{margin-top:7px;font-size:11px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:1ms!important;animation-duration:1ms!important}}.topbar{height:68px;margin-bottom:16px}.demo-notice,.page-heading{margin-bottom:20px}.filterbar{margin-bottom:16px}.group-tabs{margin-bottom:18px}.journal-table th,.journal-table td{height:54px}.journal-table thead th{height:62px}.journal-table .student-col{width:225px;min-width:225px}.journal-table tbody .student-col,.journal-table .total-col{font-size:12px}.journal-legend{margin-top:16px;margin-bottom:18px}.cell-detail{padding:15px 18px}.cell-detail strong{font-size:12px}.journal-scroll-hint{display:none}@media (width<=560px){.topbar{height:67px;margin-bottom:15px}.demo-notice{margin-bottom:23px}.journal-table .student-col{width:185px;min-width:185px}.journal-table tbody .student-col{font-size:12px}.journal-table .student-col .avatar{width:26px;height:26px}.journal-table th,.journal-table td{height:59px}.journal-scroll-hint{color:var(--text-secondary);align-items:center;gap:6px;margin:8px 0 0;font-size:11px;display:flex}.coach-student__identity strong{font-size:15px}.coach-parent-reply{font-size:12px}.coach-attendance-button,.parent-child-tab strong{font-size:14px}.parent-reply-button{font-size:15px}}.primary-dark:disabled{opacity:.5;cursor:not-allowed}@media (width<=560px){.filter-select{flex:calc(50% - 4px);min-width:calc(50% - 4px)}.date-control,.search-field{flex:150px}.coach-session{padding:17px}.coach-session h2{margin:14px 0 10px;font-size:23px}.coach-session__branch{margin:8px 0 12px;font-size:12px}.coach-session__stats{padding-top:12px}.coach-session__stats strong{font-size:22px}.coach-session__stats span{margin-top:3px}}.filterbar--journal{scrollbar-width:thin;flex-wrap:nowrap;margin-left:-3px;margin-right:-3px;padding:4px 3px;overflow-x:auto}.filterbar--journal>*{flex-shrink:0}.filterbar--journal .group-tabs--inline{flex:none;gap:6px;margin:0;padding:0;overflow:visible}.filterbar--journal .group-tabs--inline button{min-height:38px}.filterbar--journal .filter-select,.filterbar--journal .date-control,.filterbar--journal .search-field{flex:none}@media (width<=560px){.filterbar--journal .filter-select{flex:none;min-width:112px}.filterbar--journal .date-control{flex:none;min-width:190px}.filterbar--journal .search-field{flex:0 0 180px}.filterbar--journal .group-tabs--inline{margin:0;padding:0}.filterbar--journal .group-tabs--inline button{min-height:44px}}.coach-layout,.parent-layout{width:100%;min-width:0}.coach-layout{grid-template-columns:minmax(240px,310px) minmax(0,1fr);align-items:start;gap:24px;display:grid}.coach-session,.coach-attendance,.parent-next-training,.parent-subscription,.parent-announcement{background:var(--surface-base);border:1px solid var(--border-subtle);border-radius:18px;min-width:0}.coach-session{padding:24px;position:sticky;top:24px}.coach-session__heading,.parent-card-heading{justify-content:space-between;align-items:center;gap:12px;display:flex}.coach-session__heading{flex-wrap:wrap}.coach-session h2{letter-spacing:-.7px;margin:24px 0 18px;font-size:26px;line-height:1.2}.coach-session__details{color:var(--text-primary);gap:12px;font-size:14px;display:grid}.coach-session__details span,.parent-location{align-items:center;gap:8px;display:flex}.coach-session__details svg,.parent-location svg,.coach-fact-note svg{width:18px;height:18px;color:var(--text-secondary);flex-shrink:0}.coach-session__branch{color:var(--text-secondary);margin:12px 0 22px;font-size:13px}.coach-session__stats{border-top:1px solid var(--border-subtle);grid-template-columns:1fr 1fr;gap:20px 16px;padding-top:20px;display:grid}.coach-session__stats strong{letter-spacing:-1px;font-size:28px;line-height:1.15;display:block}.coach-session__stats span{color:var(--text-secondary);margin-top:5px;font-size:12px;display:block}.coach-attendance__header{border-bottom:1px solid var(--border-subtle);justify-content:space-between;align-items:center;gap:16px;padding:24px;display:flex}.coach-attendance__header h2{letter-spacing:-.35px;margin:0 0 6px;font-size:19px}.coach-attendance__header p{color:var(--text-secondary);margin:0;font-size:13px}.coach-attendance__header .secondary{white-space:nowrap}.coach-attendance__header button svg,.coach-save-bar button svg{width:18px;height:18px}.coach-student{border-bottom:1px solid var(--border-subtle);justify-content:space-between;align-items:center;gap:18px;padding:20px 24px;display:flex}.coach-student__identity{flex:1;align-items:center;gap:12px;min-width:0;display:flex}.coach-student__identity>div{min-width:0}.coach-student__identity strong{overflow-wrap:anywhere;font-size:14px;line-height:1.5;display:block}.coach-student__avatar{background:var(--surface-subtle);width:40px;height:40px;color:var(--text-secondary);border-radius:13px;flex-shrink:0;font-size:12px}.coach-parent-reply{color:var(--text-primary);margin-top:3px;font-size:12px;line-height:1.45;display:block}.coach-parent-reply>span{color:var(--text-secondary)}.coach-student__fact{display:none}.coach-attendance-actions{flex-shrink:0;align-items:center;gap:6px;display:flex}.coach-attendance-button{background:var(--surface-base);border:1px solid var(--border-control);min-height:44px;color:var(--text-secondary);border-radius:9px;justify-content:center;align-items:center;gap:6px;padding:0 13px;font-size:12px;font-weight:650;display:inline-flex}.coach-attendance-button svg{width:15px;height:15px}.coach-attendance-button--present.is-selected{background:var(--success-bg);color:var(--success-fg);border-color:var(--success-fg)}.coach-attendance-button--absent.is-selected{background:var(--danger-bg);color:var(--danger-fg);border-color:var(--danger-fg)}.coach-reset{background:var(--surface-base);border-color:var(--border-subtle);min-width:44px;min-height:44px}.coach-reset svg{width:16px;height:16px}.coach-reset:disabled{opacity:.35;cursor:default}.coach-fact-note{color:var(--text-secondary);background:var(--surface-subtle);gap:9px;margin:0;padding:16px 24px;font-size:12px;line-height:1.6;display:flex}.coach-save-bar{border-top:1px solid var(--border-subtle);background:var(--surface-base);border-radius:0 0 18px 18px;justify-content:space-between;align-items:center;gap:20px;padding:20px 24px;display:flex}.coach-save-bar strong,.coach-save-bar span{display:block}.coach-save-bar strong{font-size:13px}.coach-save-bar span{color:var(--text-secondary);margin-top:5px;font-size:11px}.coach-save-bar .primary{white-space:nowrap;min-height:46px}.parent-child-tabs{gap:12px;margin-bottom:24px;display:flex}.parent-child-tab{border:1px solid var(--border-subtle);background:var(--surface-base);text-align:left;min-width:180px;min-height:76px;color:var(--text-primary);border-radius:13px;align-items:center;gap:12px;padding:16px;display:flex}.parent-child-tab.is-selected{border-color:var(--text-primary);box-shadow:inset 0 0 0 1px var(--text-primary)}.parent-child-tab>span:nth-child(2){flex:1;min-width:0}.parent-child-tab strong{font-size:14px;display:block}.parent-child-tab small{color:var(--text-secondary);margin-top:5px;font-size:12px;display:block}.parent-child-tab>svg{width:16px;height:16px;color:var(--text-primary);flex-shrink:0}.parent-child-avatar{background:var(--surface-subtle);width:38px;height:38px;color:var(--text-secondary);border-radius:12px;flex-shrink:0}.parent-child-tab.is-selected .parent-child-avatar{background:var(--accent);color:var(--text-primary)}.parent-content-grid{grid-template-columns:minmax(0,1.4fr) minmax(250px,1fr);align-items:start;gap:24px;display:grid}.parent-next-training{padding:28px}.parent-card-heading>svg{width:20px;height:20px;color:var(--text-secondary);flex-shrink:0}.parent-training-time{margin-top:28px}.parent-training-time>span{color:var(--text-secondary);font-size:14px;font-weight:550}.parent-training-time h2{letter-spacing:-2px;margin:5px 0 22px;font-size:46px;line-height:1.12}.parent-next-training>h3{letter-spacing:-.3px;margin:0 0 12px;font-size:18px}.parent-location{color:var(--text-secondary);flex-wrap:wrap;column-gap:7px;margin:0 0 28px;font-size:13px;line-height:1.6}.parent-location>span{font-size:12px}.parent-reply-box{border-top:1px solid var(--border-subtle);padding-top:24px}.parent-reply-heading strong{font-size:15px;display:block}.parent-reply-heading span{color:var(--text-secondary);margin-top:6px;font-size:12px;display:block}.parent-reply-actions{gap:10px;margin-top:16px;display:flex}.parent-reply-button{border:1px solid var(--border-control);min-height:48px;color:var(--text-primary);background:var(--surface-base);border-radius:10px;flex:1;justify-content:center;align-items:center;gap:8px;font-size:14px;font-weight:650;display:flex}.parent-reply-button>svg{width:18px;height:18px}.parent-reply-button--going.is-selected{background:var(--success-bg);color:var(--success-fg);border-color:var(--success-fg)}.parent-reply-button--absent.is-selected{background:var(--danger-bg);color:var(--danger-fg);border-color:var(--danger-fg)}.parent-reply-state{color:var(--text-secondary);flex-wrap:wrap;align-items:center;gap:10px;min-height:44px;margin:12px 0 0;font-size:12px;line-height:1.5;display:flex}.parent-reply-state .text-button{min-height:44px;padding:0 8px}.parent-disclaimer{color:var(--text-secondary);margin:12px 0 0;font-size:11px;line-height:1.6}.parent-secondary-cards{gap:20px;display:grid}.parent-subscription,.parent-announcement{padding:24px}.parent-subscription h3{letter-spacing:-.5px;margin:24px 0 14px;font-size:21px;line-height:1.4}.parent-subscription p{color:var(--text-secondary);margin:18px 0 0;font-size:12px;line-height:1.6}.parent-announcement>p{margin:20px 0;font-size:14px;line-height:1.75}.parent-announcement__source{color:var(--text-secondary);font-size:12px}@media (width<=1200px){.coach-layout{grid-template-columns:minmax(220px,260px) minmax(0,1fr);gap:18px}.coach-student{display:block}.coach-attendance-actions{margin-top:14px;margin-left:52px}.coach-student__fact{color:var(--text-secondary);white-space:nowrap;margin-left:auto;font-size:11px;display:block}.coach-student--present .coach-student__fact{color:var(--success-fg)}.coach-student--absent .coach-student__fact{color:var(--danger-fg)}}@media (width<=900px){.coach-layout{grid-template-columns:1fr}.coach-session{position:static}.coach-session h2{margin-top:20px}.coach-session__stats{grid-template-columns:repeat(4,1fr)}.coach-session__details{flex-wrap:wrap;gap:12px 22px;display:flex}.parent-content-grid{grid-template-columns:minmax(0,1fr)}.parent-secondary-cards{grid-template-columns:1fr 1fr}}@media (width<=560px){.coach-layout{gap:16px}.coach-session{border-radius:15px;padding:20px}.coach-session h2{margin:20px 0 16px;font-size:24px}.coach-session__stats{gap:12px}.coach-session__stats strong{font-size:24px}.coach-session__stats span{font-size:10px;line-height:1.5}.coach-attendance{border-radius:15px}.coach-attendance__header{align-items:flex-start;gap:10px;padding:20px 16px}.coach-attendance__header h2{font-size:16px}.coach-attendance__header p{max-width:150px;font-size:11px;line-height:1.5}.coach-attendance__header .secondary{min-height:44px;padding:0 10px;font-size:11px}.coach-student{padding:18px 16px}.coach-student__identity{gap:10px}.coach-student__identity strong{font-size:14px}.coach-student__fact{display:none}.coach-parent-reply{font-size:11px}.coach-attendance-actions{gap:8px;margin-left:50px}.coach-attendance-button{flex:1;min-height:46px;padding:0 10px;font-size:12px}.coach-reset{min-height:46px}.coach-fact-note{padding:16px;font-size:11px}.coach-save-bar{z-index:3;border-radius:0 0 15px 15px;flex-wrap:wrap;gap:10px;padding:14px 16px;position:sticky;bottom:78px;box-shadow:0 -6px 18px #0000000d}.coach-save-bar>div{justify-content:space-between;align-items:center;gap:8px;width:100%;display:flex}.coach-save-bar span{text-align:right;margin:0;font-size:10px}.coach-save-bar .primary{width:100%;min-height:48px}.parent-child-tabs{gap:10px;margin-bottom:18px}.parent-child-tab{flex:1;gap:8px;min-width:0;min-height:70px;padding:13px 10px}.parent-child-tab strong{font-size:13px}.parent-child-tab small{font-size:10px}.parent-child-tab>svg{display:none}.parent-child-avatar{border-radius:10px;width:32px;height:32px;font-size:12px}.parent-next-training{border-radius:15px;padding:22px 20px}.parent-training-time{margin-top:22px}.parent-training-time h2{letter-spacing:-1.6px;margin-bottom:20px;font-size:42px}.parent-next-training>h3{font-size:17px}.parent-location{margin-bottom:22px}.parent-content-grid{gap:16px}.parent-secondary-cards{grid-template-columns:1fr;gap:16px}.parent-subscription,.parent-announcement{border-radius:15px;padding:22px 20px}.parent-subscription h3{margin-top:20px;font-size:20px}.parent-reply-box{padding-top:20px}.parent-reply-button{font-size:13px}.parent-reply-state{font-size:11px}.parent-card-heading .eyebrow{font-size:10px}}@media (prefers-reduced-motion:no-preference){.coach-attendance-button,.parent-reply-button,.parent-child-tab{transition:background-color .15s,border-color .15s,color .15s}}@media (width<=560px){.coach-session{padding:17px}.coach-session h2{margin:14px 0 10px;font-size:23px}.coach-session__branch{margin:8px 0 12px;font-size:12px}.coach-session__stats{padding-top:12px}.coach-session__stats strong{font-size:22px}.coach-session__stats span{margin-top:3px}.coach-student__identity strong{font-size:15px}.coach-parent-reply{font-size:12px}.coach-attendance-button,.parent-child-tab strong{font-size:14px}.parent-reply-button{font-size:15px}}.live-auth{place-items:center;min-height:100vh;padding:30px 20px;display:grid}.live-auth-card{background:var(--surface-base);border:1px solid var(--border-subtle);border-radius:16px;width:min(440px,100%);padding:32px}.live-auth-card>.brand{color:var(--text-primary);margin-bottom:28px}.live-auth-card h1{letter-spacing:-.8px;margin-bottom:8px;font-size:25px}.live-auth-card form{gap:17px;margin-top:25px;display:grid}.live-auth-card footer .primary{width:100%;margin-top:6px}.live-auth-links{text-align:left;gap:3px;margin-top:24px;display:grid}.live-auth-links .text-button{white-space:normal;justify-content:flex-start}.live-auth-card p{font-size:13px;line-height:1.6}.live-role-label{color:var(--text-secondary);font-size:12px}.live-error{background:var(--danger-bg);border-radius:9px;justify-content:space-between;align-items:center;gap:15px;margin-bottom:18px;padding:14px;display:flex}.live-loading{color:var(--text-secondary);padding:30px 0;font-size:13px}.live-empty{text-align:center;background:var(--surface-base);border:1px dashed var(--border-control);border-radius:12px;flex-direction:column;align-items:center;gap:12px;padding:45px 20px;display:flex}.live-empty svg{color:var(--text-secondary)}.live-empty p{max-width:450px;color:var(--text-secondary);margin:0;font-size:13px;line-height:1.7}.live-card-grid{grid-template-columns:repeat(auto-fit,minmax(min(300px,100%),1fr));gap:16px;display:grid}.live-card{background:var(--surface-base);border:1px solid var(--border-subtle);border-radius:12px;min-width:0;padding:22px}.live-card h2{letter-spacing:-.5px;margin:8px 0 14px;font-size:20px}.live-card p{color:var(--text-secondary);overflow-wrap:anywhere;font-size:13px;line-height:1.7}.live-card-title{align-items:center;gap:10px;display:flex}.live-card-title h2{margin:0 0 8px}.live-group-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px;display:inline-block}.live-actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.live-subtitle{margin:30px 0 15px;font-size:19px}.live-table-wrap{border:1px solid var(--border-subtle);background:var(--surface-base);border-radius:12px;max-width:100%;overflow:auto}.live-table{border-collapse:separate;border-spacing:0;width:100%;min-width:600px;font-size:12px}.live-table th{text-align:left;background:var(--surface-subtle);color:var(--text-secondary);font-size:11px;font-weight:600}.live-table th,.live-table td{border-bottom:1px solid var(--border-subtle);vertical-align:middle;padding:16px}.live-table tbody tr:last-child td{border-bottom:0}.live-table tbody tr:hover{background:var(--surface-hover)}.live-table td strong{font-weight:550}.live-table small{color:var(--text-secondary);margin-top:6px;font-size:11px;display:block}.live-tag{background:var(--neutral-bg);border-radius:5px;margin:2px;padding:4px 7px;font-size:10px;display:inline-block}.live-plain-list{padding:0;font-size:13px;list-style:none}.live-plain-list li{border-bottom:1px solid var(--border-subtle);justify-content:space-between;gap:12px;padding:12px 0;display:flex}.live-plain-list span{color:var(--text-secondary)}.live-checks{border:1px solid var(--border-subtle);border-radius:8px;gap:12px;padding:14px;font-size:12px;display:grid}.live-checks legend{color:var(--text-secondary)}.live-checks label,.live-check{align-items:center;gap:9px;font-size:12px;display:flex}.live-checks input,.live-check input{accent-color:var(--brand-700);width:16px;height:16px}.live-dialog{width:min(650px,100% - 24px);max-height:calc(100dvh - 32px);overflow:auto}.live-dialog textarea,.live-auth textarea{border:1px solid var(--border-control);resize:vertical;background:var(--surface-base);width:100%;color:var(--text-primary);border-radius:8px;padding:12px;font-size:12px;line-height:1.6}.live-dialog h3{margin-top:10px;font-size:16px}.journal-summary{justify-content:space-between;gap:12px;margin:12px 0;font-size:12px;display:flex}.journal-summary span{color:var(--text-secondary)}.live-journal .live-table{min-width:650px}.live-journal th,.live-journal td{text-align:center;border-right:1px solid var(--border-subtle);min-width:58px;height:58px;padding:0}.live-journal th:first-child,.live-journal td:first-child{z-index:1;text-align:left;background:var(--surface-base);min-width:180px;max-width:220px;box-shadow:1px 0 var(--border-subtle);padding:15px;position:sticky;left:0}.live-journal th:first-child{background:var(--surface-subtle)}.live-today{background:var(--brand-50)!important}.live-date-button{width:100%;height:100%;color:var(--text-primary);background:0 0;border:0;padding:10px 8px;font-size:13px;font-weight:600}.live-date-button small{font-size:9px;font-weight:400}.live-mark{width:27px;height:27px;color:var(--text-secondary);background:0 0;border:0;border-radius:50%;place-items:center;font-size:20px;display:inline-grid}.live-mark--present{background:var(--success-fg);color:#fff}.live-mark--absent{background:var(--danger-bg);color:var(--danger-fg)}.live-mark--excused{background:var(--warning-bg);color:var(--warning-fg);font-size:11px}.live-mark--excluded{background:var(--neutral-bg);font-size:15px}.live-mark--cancelled{color:var(--warning-fg)}.live-calendar{background:var(--surface-base);border:1px solid var(--border-subtle);border-radius:12px;grid-template-columns:repeat(7,minmax(130px,1fr));display:grid;overflow:auto}.live-calendar-day{border-right:1px solid var(--border-subtle);min-height:420px;padding:12px}.live-calendar-day:last-child{border-right:0}.live-calendar-day h2{text-align:center;text-transform:capitalize;margin:2px 0 22px;font-size:13px}.live-session{text-align:left;border:0;border-left:3px solid var(--brand-500);background:var(--info-bg);width:100%;color:var(--text-primary);border-radius:7px;flex-direction:column;align-items:flex-start;gap:7px;margin-bottom:12px;padding:14px 10px;font-size:11px;display:flex}.live-session strong{font-size:11px}.live-session span{font-size:13px;font-weight:600}.live-session small{font-size:10px}.live-session:hover{filter:brightness(.97)}.live-session--cancelled{background:var(--neutral-bg);opacity:.8}.date-control>strong{text-transform:capitalize;text-align:center;min-width:140px;padding:0 10px;font-size:12px}.live-template-link{margin-top:18px}.live-template{border-bottom:1px solid var(--border-subtle);padding:17px 0;font-size:12px}.live-template p{color:var(--text-secondary);margin:8px 0}.live-session-meta{gap:8px;margin-bottom:22px;font-size:12px;display:grid}.live-session-meta span{color:var(--text-secondary)}.live-attendance-list{gap:10px;display:grid}.live-attendance-row{border-bottom:1px solid var(--border-subtle);gap:13px;padding:15px 0;font-size:13px;display:grid}.live-attendance-row small{color:var(--text-secondary);margin-top:7px;font-size:11px;line-height:1.7;display:block}.live-fact-options{flex-wrap:wrap;gap:6px;display:flex}.live-fact-options button{background:var(--surface-base);border:1px solid var(--border-control);min-height:40px;color:var(--text-secondary);border-radius:7px;padding:0 12px;font-size:12px}.live-fact-options button.selected{border-color:var(--brand-700);background:var(--brand-50);color:var(--brand-700);font-weight:600}.live-fact-options button:disabled{opacity:.6}.live-savebar{background:var(--surface-base);border-top:1px solid var(--border-subtle);z-index:2;margin-top:12px;padding:15px 0;position:sticky;bottom:-24px}.live-edit-section{border-top:1px solid var(--border-subtle);margin-top:22px;padding-top:15px}.live-demo-return{background:var(--warning-bg);color:var(--warning-fg);z-index:20;justify-content:flex-end;align-items:center;gap:20px;padding:8px 22px;font-size:12px;display:flex;position:sticky;top:0}.live-mobile-menu{display:none}@media (width<=900px){.live-app .live-mobile-nav{grid-template-columns:repeat(4,1fr)}.live-mobile-menu{z-index:15;border:1px solid var(--border-control);background:var(--surface-base);border-radius:14px;padding:15px;display:block;position:fixed;bottom:80px;left:14px;right:14px;box-shadow:0 10px 45px #20262925}.live-mobile-menu nav{gap:5px;display:grid}.live-mobile-menu .nav-item{color:var(--text-primary)}.live-mobile-menu .nav-item:hover{background:var(--surface-subtle)}.live-role-label{display:none}}@media (width<=560px){.live-auth{padding:16px}.live-auth-card{padding:24px}.live-app .page-heading>.live-actions{width:100%}.live-app .live-actions>.primary{flex:1}.live-card,.live-dialog{padding:18px}.journal-summary{flex-direction:column;font-size:11px}.live-journal th:first-child,.live-journal td:first-child{min-width:150px;padding:12px}.live-journal td:first-child{font-size:11px}.live-calendar{grid-template-columns:repeat(7,160px)}.live-calendar-day{min-height:360px}.live-fact-options button{min-height:44px;padding:0 10px}.live-demo-return{gap:8px;padding:8px;font-size:10px}.live-demo-return .secondary{font-size:10px}.live-savebar{bottom:-18px}.form-columns,.field,.field input,.field select{min-width:0}}.live-section-heading{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin:28px 0 14px;display:flex}.live-section-heading h2{margin:0;font-size:19px}.live-fineprint{margin-top:15px;font-size:12px;line-height:1.7}.live-inline-card{margin-bottom:10px;font-size:13px}.live-prose{white-space:pre-wrap}.live-report-grid{margin:18px 0}.live-card>.field{margin:15px 0}.live-card textarea{border:1px solid var(--border-control);background:var(--surface-base);width:100%;color:var(--text-primary);resize:vertical;border-radius:8px;padding:12px;font-size:12px}.sidebar{overflow-y:auto}.sidebar .nav-item{min-height:39px}.sidebar-footer{padding-top:20px}.live-tag-action{min-height:26px;margin-left:7px;font-size:9px}.live-family-history{min-width:100%;font-size:11px}.live-family-history th,.live-family-history td{padding:13px 10px}.live-dialog>.muted,.live-dialog .live-savebar+.muted{font-size:12px;line-height:1.7}.live-app .skip-link{max-width:calc(100vw - 32px);left:16px}.live-school-contact{background:var(--surface-base);border:1px solid var(--border-subtle);border-radius:10px;flex-wrap:wrap;align-items:center;gap:10px 20px;margin-bottom:20px;padding:14px;font-size:12px;display:flex}.live-school-contact a{overflow-wrap:anywhere;white-space:normal}.live-app .field select,.live-app .filter-select select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%2359656B' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-position:right 12px center;background-repeat:no-repeat;background-size:16px 16px;padding-right:38px}.live-app .filter-select select{background-position:right 4px center;min-height:36px;padding-right:28px}
