.simple-app .attendance-register{background:var(--app-canvas);--color-white:var(--app-canvas);border:0;border-radius:0;min-height:0}.simple-app .attendance-register header,.simple-app .attendance-register footer{border-color:var(--app-divider);background:0 0;padding-inline:0}.simple-app .attendance-register header{border-bottom:.5px solid var(--app-divider)}.simple-app .attendance-register footer{border-top:.5px solid var(--app-divider)}.simple-app .attendance-register .attendance-status-head{width:320px}.simple-app .attendance-register .attendance-student .avatar{background:var(--app-surface);color:var(--app-muted);border:0}.simple-app .attendance-options{flex-wrap:wrap;gap:4px;display:inline-flex}.simple-app .attendance-chip.is-present,.simple-app .attendance-option.is-present[aria-pressed=true]{color:var(--status-present);background:color-mix(in srgb, var(--status-present) 12%, var(--app-canvas))}.simple-app .attendance-chip.is-absent,.simple-app .attendance-option.is-absent[aria-pressed=true]{color:var(--status-absent);background:color-mix(in srgb, var(--status-absent) 12%, var(--app-canvas))}.simple-app .attendance-chip.is-late,.simple-app .attendance-option.is-late[aria-pressed=true]{color:var(--status-late);background:color-mix(in srgb, var(--status-late) 12%, var(--app-canvas))}.simple-app .attendance-chip.is-excused,.simple-app .attendance-option.is-excused[aria-pressed=true]{color:var(--status-excused);background:color-mix(in srgb, var(--status-excused) 12%, var(--app-canvas))}.simple-app .attendance-chip.is-present:hover,.simple-app .attendance-option.is-present[aria-pressed=true]:hover{background:color-mix(in srgb, var(--status-present) 20%, var(--app-canvas))}.simple-app .attendance-chip.is-absent:hover,.simple-app .attendance-option.is-absent[aria-pressed=true]:hover{background:color-mix(in srgb, var(--status-absent) 20%, var(--app-canvas))}.simple-app .attendance-chip.is-late:hover,.simple-app .attendance-option.is-late[aria-pressed=true]:hover{background:color-mix(in srgb, var(--status-late) 20%, var(--app-canvas))}.simple-app .attendance-chip.is-excused:hover,.simple-app .attendance-option.is-excused[aria-pressed=true]:hover{background:color-mix(in srgb, var(--status-excused) 20%, var(--app-canvas))}.simple-app .attendance-dot.is-present{background:var(--status-present)}.simple-app .attendance-dot.is-absent{background:var(--status-absent)}.simple-app .attendance-dot.is-late{background:var(--status-late)}.simple-app .attendance-dot.is-excused{background:var(--status-excused)}@media (max-width:760px){.simple-app .attendance-register .rb-data-table{table-layout:fixed}.simple-app .attendance-student>div{min-width:0}.simple-app .attendance-register .attendance-status-head{width:50%}.simple-app .attendance-options{grid-template-columns:1fr 1fr;width:100%;display:grid}.simple-app .attendance-option{height:32px}}
.simple-app .progress-table{background:var(--app-canvas);--color-white:var(--app-canvas);border:0;border-radius:0;min-height:0}.simple-app .progress-table .avatar{background:var(--app-surface);color:var(--app-muted);border:0}
.people-group-head h2,.calendar-group-head h2{margin:0;font-size:14px;font-weight:500}.people-row+.people-row,.calendar-row+.calendar-row{border-top:1px solid var(--app-divider)}.people-row:hover,.calendar-row:hover{background:var(--app-row-hover)}.people-row-body,.calendar-row-body{overflow-wrap:anywhere;flex:1 1 0;min-width:0}.people-row-body h3,.calendar-row-body h3{margin:0;font-size:13px;font-weight:500}.people-row-side,.calendar-row-side{flex-shrink:0;align-items:center;gap:12px;display:flex}.people-row-spacer,.calendar-row-spacer{flex-shrink:0;width:30px}.people-badge-dot,.calendar-badge-dot{background:currentColor;border-radius:999px;flex-shrink:0;width:6px;height:6px}
.people-page{gap:var(--app-space-5);display:grid}.people-group{background:var(--app-canvas);overflow:hidden}.people-group-head,.people-group-foot{padding:var(--app-space-3) var(--app-space-2);justify-content:space-between;align-items:center;gap:12px;display:flex}.people-group-head{border-bottom:1px solid var(--app-divider)}.people-group-foot{border-top:1px solid var(--app-divider)}.people-group-head p,.people-group-foot p,.people-group-empty,.people-invite-hint,.people-role{color:var(--app-muted);margin:0;font-size:13px}.people-group-head p{margin-top:2px}.people-group-body{flex-direction:column;gap:0;padding:0;display:flex}.people-group-empty{padding:14px 12px;line-height:1.6}.people-invite{padding:var(--app-space-3) var(--app-space-2);border-bottom:1px solid var(--app-divider);justify-content:space-between;align-items:center;gap:12px;display:flex}.people-invite-title{margin:0;font-size:13px;font-weight:500}.people-invite-hint{margin-top:2px}.people-rows{flex-direction:column;gap:0;margin:0;padding:0;list-style:none;display:flex}.people-row{min-height:56px;padding:var(--app-space-2);flex-wrap:wrap;align-items:center;gap:10px 12px;display:flex}.people-avatar{background:var(--app-surface);width:32px;height:32px;color:var(--app-muted);border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;font-size:12px;font-weight:500;display:flex}.people-row-body p{color:var(--app-muted);margin:1px 0 0;font-size:12px;line-height:1.5}.people-row-body .people-row-error{color:var(--app-danger)}.people-status{flex-shrink:0;min-width:112px;display:flex}.people-role{width:108px;min-height:var(--app-control-height);align-items:center;padding:0 4px;display:flex}.people-badge{border:1px solid var(--app-line);text-transform:capitalize;white-space:nowrap;border-radius:20px;align-items:center;gap:6px;padding:3px 8px;font-size:12px;display:inline-flex}.people-badge.is-muted{color:var(--app-muted)}.people-flash,.people-alert{border:1px solid var(--app-line);overflow-wrap:anywhere;border-radius:10px;margin:0;padding:10px 12px;font-size:13px}.people-alert{color:var(--app-danger);background:var(--app-danger-soft);border-color:#0000;flex-wrap:wrap;align-items:center;gap:8px;display:flex}.people-alert>span{flex:1;min-width:160px}.people-link{align-items:center;gap:12px;display:flex}.people-link .simple-field{flex:1;min-width:0;margin:0}.people-checklist{border:1px solid var(--app-line);border-radius:6px;gap:10px;padding:12px;font-size:13px;display:grid}.people-checklist legend{padding:0 4px;font-weight:500}.people-checklist p{color:var(--app-muted);margin:0}.people-checklist-scroll{gap:10px;max-height:180px;display:grid;overflow-y:auto}.people-checklist label{align-items:center;gap:8px;display:flex}.people-checklist label span{color:var(--app-muted);margin-left:auto;font-size:12px}.people-checklist input[type=checkbox]{accent-color:var(--app-action)}.people-checklist-row{gap:6px;display:grid}.people-checklist input[type=search],.people-checklist input[type=text]{width:100%;min-height:var(--app-control-height);font:inherit;color:var(--app-ink);background:var(--app-canvas);border:1px solid var(--app-line);border-radius:var(--app-radius-control);padding:5px 10px;font-size:13px}@media (max-width:640px){.people-row-side{order:10;justify-content:space-between;width:100%}.people-status{min-width:0}.people-role{width:auto;min-height:0}.people-invite{flex-direction:column;align-items:stretch}.people-group-head{align-items:flex-start}.people-link{flex-direction:column;align-items:stretch}}
.family-list{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px;margin:0;padding:0;list-style:none;display:grid}.family-card{border:1px solid var(--app-line);background:var(--app-sidebar);width:100%;color:inherit;font:inherit;text-align:center;cursor:pointer;border-radius:14px;flex-direction:column;gap:4px;padding:4px;transition:background-color .15s ease-out,border-color .15s ease-out;display:flex}.family-card:hover{background:var(--app-hover)}.family-card:focus-visible{outline:2px solid var(--app-accent);outline-offset:2px}.family-card-panel,.family-card-stat{border:1px solid var(--app-line);background:var(--app-canvas);border-radius:10px;flex-direction:column;align-items:center;min-width:0;display:flex}.family-card-panel{flex:1;padding:24px 16px}.family-card-avatar{background:var(--app-surface);width:56px;height:56px;color:var(--app-ink);border-radius:999px;justify-content:center;align-items:center;font-size:13px;font-weight:500;display:flex}.family-card-panel strong{text-overflow:ellipsis;white-space:nowrap;width:100%;margin-top:12px;font-size:13px;font-weight:500;overflow:hidden}.family-card-subtitle{width:100%;color:var(--app-muted);text-overflow:ellipsis;white-space:nowrap;margin-top:2px;font-size:12px;overflow:hidden}.family-card-stats{grid-template-columns:repeat(3,minmax(0,1fr));gap:4px;display:grid}.family-card-stat{justify-content:center;padding:10px 8px}.family-card-stat-value{font-variant-numeric:tabular-nums;overflow-wrap:anywhere;width:100%;font-size:13px;font-weight:500;line-height:1.35;display:block}.family-card-stat-label{width:100%;color:var(--app-muted);margin-top:2px;font-size:11px;line-height:1.4}.family-card-action{background:var(--app-accent);width:100%;height:36px;color:var(--app-accent-text);border-radius:10px;justify-content:center;align-items:center;gap:6px;font-size:13px;font-weight:500;display:inline-flex}.family-card:hover .family-card-action{background:color-mix(in oklab, var(--app-accent) 90%, transparent)}@media (prefers-reduced-motion:reduce){.family-card{transition:none}}
.calendar-page{gap:var(--app-space-6);display:grid}.calendar-group{background:var(--app-canvas)}.calendar-group-head{padding:var(--app-space-3) var(--app-space-2);border-bottom:1px solid var(--app-divider);justify-content:space-between;align-items:center;gap:12px;display:flex}.calendar-group-head p,.calendar-group-empty,.calendar-caption,.calendar-row-body p,.calendar-row-date small{color:var(--app-muted);margin:0;font-size:12px;line-height:1.5}.calendar-group-head p{margin-top:2px}.calendar-group-empty{padding:14px 12px;font-size:13px}.calendar-caption{padding:var(--app-space-3) var(--app-space-2) 0}.calendar-toolbar{padding:var(--app-space-2);border-bottom:1px solid var(--app-divider);flex-wrap:wrap;gap:8px;display:flex}.calendar-toolbar .rb-select{min-width:150px}.simple-app .calendar-toolbar select{min-height:var(--app-control-height);height:var(--app-control-height)}.simple-app .calendar-weekdays-field{border:0;gap:7px;min-width:0;margin:0;padding:0;display:grid}.simple-app .calendar-weekdays-field legend{color:var(--app-muted);margin-bottom:7px;padding:0;font-size:12px;font-weight:500}.calendar-month-label{color:var(--app-muted);padding:var(--app-space-3) var(--app-space-2) var(--app-space-1);margin:0;font-size:12px;font-weight:500}.calendar-rows{flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.calendar-row{min-height:56px;padding:var(--app-space-2);flex-wrap:wrap;align-items:center;gap:8px 12px;display:flex}.calendar-row.is-current{box-shadow:inset 3px 0 0 var(--app-accent)}.calendar-row-mark{background:var(--app-surface);width:32px;height:32px;color:var(--app-muted);border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.calendar-row-mark.is-closure{color:var(--app-danger);background:var(--app-danger-soft)}.calendar-row-mark.is-session{color:var(--app-success);background:var(--app-success-soft)}.calendar-row-mark.is-event{color:var(--app-accent);background:var(--app-accent-soft)}.calendar-row-date{font-variant-numeric:tabular-nums;flex-direction:column;flex-shrink:0;width:168px;font-size:13px;display:flex}.calendar-row-date strong{font-weight:500}.calendar-row-body p{margin-top:1px}.calendar-row-note{color:var(--app-ink)}.calendar-badge{border:1px solid var(--app-line);white-space:nowrap;color:var(--app-muted);border-radius:20px;align-items:center;gap:6px;padding:3px 8px;font-size:12px;display:inline-flex}.calendar-badge.is-closure{color:var(--app-danger)}.calendar-badge.is-session,.calendar-badge.is-current{color:var(--app-success)}.calendar-badge.is-event{color:var(--app-accent)}.calendar-weekdays{flex-wrap:wrap;gap:6px;display:flex}.calendar-weekday{min-height:var(--app-control-height);border:1px solid var(--app-line);border-radius:var(--app-radius-control);cursor:pointer;align-items:center;gap:6px;padding:0 10px;font-size:13px;display:inline-flex}.calendar-weekday:has(input:checked){border-color:var(--app-accent);background:var(--app-accent-soft)}.calendar-weekday:has(input:focus-visible){outline:2px solid var(--app-accent);outline-offset:2px}.simple-app .calendar-weekday input{width:14px;height:14px;min-height:0;accent-color:var(--app-accent);margin:0;padding:0}.attendance-schedule{align-items:center;gap:6px;display:inline-flex}.attendance-schedule.is-closed{color:var(--app-danger)}.attendance-closed{border-radius:var(--app-radius-control);height:28px;color:var(--app-muted);background:var(--app-surface);align-items:center;gap:6px;padding:0 8px;font-size:13px;display:inline-flex}@media (max-width:760px){.calendar-row-date{flex-direction:row;order:2;align-items:baseline;gap:8px;width:100%}.calendar-row-body{flex-basis:100%;order:3}.calendar-row-side{margin-left:auto}.calendar-toolbar .rb-select{flex:140px;min-width:0}}
.today-page,.today-primary,.today-secondary{gap:var(--app-space-6);min-width:0;display:grid}.today-setup-progress{align-items:center;gap:var(--app-space-3);padding:var(--app-space-3) var(--app-space-2);display:flex}.today-setup-progress p{color:var(--app-muted);font-variant-numeric:tabular-nums;white-space:nowrap;margin:0;font-size:12px}.today-setup-track{height:var(--app-space-1);background:var(--app-line);border-radius:var(--app-radius-control);flex:1;min-width:0;overflow:hidden}.today-setup-track>div{background:var(--app-accent);height:100%}.today-setup-status{color:var(--app-muted);flex-shrink:0;display:inline-flex}.today-setup-status.is-complete{color:var(--app-success)}.today-setup-row .calendar-row-body{flex-basis:150px}.today-datebar{justify-content:space-between;align-items:center;gap:var(--app-space-4);flex-wrap:wrap;display:flex}.today-date{align-items:center;gap:var(--app-space-2);margin:0;font-size:14px;font-weight:500;display:flex}.today-date svg{flex-shrink:0}.today-caption{margin:var(--app-space-1) 0 0;color:var(--app-muted);font-size:12px}.today-columns{align-items:start;gap:var(--app-space-6);grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);display:grid}.today-upcoming{min-width:0}.today-page .calendar-group-head>svg{color:var(--app-muted);flex-shrink:0}.today-page .calendar-row{padding-block:var(--app-space-4)}.today-page .calendar-row-body{order:0}.today-session .calendar-row-body{flex-basis:160px}.today-event .calendar-row-body>h3{margin-top:var(--app-space-1)}.today-actions{padding:var(--app-space-3) var(--app-space-2);flex-wrap:wrap;display:flex}.today-complete{align-items:center;gap:var(--app-space-2);display:flex}.today-complete svg{color:var(--app-success);flex-shrink:0}@media (max-width:1100px){.today-columns{grid-template-columns:minmax(0,1fr)}}@media (max-width:480px){.today-page .calendar-row-body{flex-basis:100%}.today-session .calendar-row-mark{display:none}}
.workflow-toolbar{align-items:center;gap:var(--app-space-2);margin-bottom:var(--app-space-4);flex-wrap:wrap;display:flex}.workflow-label{color:var(--app-muted);margin:var(--app-space-2) 0;font-size:12px}.workspace-search-results{max-height:50dvh;overflow:auto}.simple-app .workspace-search-result{width:100%;height:auto;min-height:var(--app-table-row-height);white-space:normal;text-align:left;padding:var(--app-space-2);justify-content:flex-start}.workspace-search-result>span,.workflow-inbox-row>span:first-of-type{flex:1;min-width:0}.workspace-search-result strong,.workspace-search-result small,.workflow-inbox-row strong,.workflow-inbox-row small{overflow-wrap:anywhere;display:block}.workspace-search-result small,.workflow-inbox-row small{color:var(--app-muted);font-size:12px}.simple-app .workspace-search-result[aria-selected=true],.simple-app .workflow-inbox-row[aria-pressed=true]{background:var(--app-line)}.workflow-inbox-panes{border-top:1px solid var(--app-line);grid-template-columns:minmax(240px,2fr) minmax(0,3fr);min-height:440px;display:grid}.workflow-inbox-list{border-right:1px solid var(--app-line)}.simple-app .workflow-inbox-row{justify-content:flex-start;gap:var(--app-space-3);width:100%;height:auto;min-height:64px;padding:var(--app-space-3);text-align:left;white-space:normal;border-bottom:1px solid var(--app-line);border-radius:0}.workflow-unread{background:var(--app-accent);border-radius:50%;flex-shrink:0;width:6px;height:6px}.workflow-inbox-detail{padding:var(--app-space-5);min-width:0}.workflow-inbox-detail h2{overflow-wrap:anywhere;font-size:16px;font-weight:500}.workflow-message{white-space:pre-wrap;overflow-wrap:anywhere;margin:var(--app-space-4) 0;line-height:1.7}.simple-app .workflow-inbox-back{display:none}.simple-app .workspace-search-trigger{margin:0 var(--app-space-2) var(--app-space-2);justify-content:flex-start}.workflow-section{margin-top:var(--app-space-5)}@media (max-width:700px){.workflow-inbox-panes{grid-template-columns:minmax(0,1fr);min-height:320px}.workflow-inbox-list{border-right:0}.workflow-inbox-detail,.has-selection .workflow-inbox-list{display:none}.has-selection .workflow-inbox-detail{padding:var(--app-space-4) 0;display:block}.simple-app .workflow-inbox-back{display:inline-flex}}
.simple-app .audit-log{--color-white:var(--app-canvas)}.simple-app .audit-toolbar{min-height:48px;padding-block:var(--app-space-2);border-bottom:1px solid var(--app-divider)}.simple-app .audit-panel+.audit-panel{border-top:1px solid var(--app-divider)}.simple-app .audit-panel>button{padding-inline:var(--app-space-2)}.simple-app .audit-panel>button:hover{background:var(--app-row-hover)}.simple-app .audit-log [role=tablist]{background:0 0;border-color:#0000}.simple-app .audit-log [role=tab][aria-selected=true]{background:var(--app-hover);color:var(--app-ink)}.simple-app .audit-log .rb-select select{height:32px}.simple-app .audit-dot.is-success{background:var(--app-success)}.simple-app .audit-dot.is-warning{background:var(--app-warning)}.simple-app .audit-dot.is-danger{background:var(--app-danger)}.simple-app .audit-log pre{max-height:320px;margin:0;overflow:auto}@media (max-width:760px){.simple-app .audit-log time{font-size:11px}}
.profile-card{border:1px solid var(--app-line);background:var(--app-sidebar);border-radius:14px;grid-template-columns:minmax(0,1fr);gap:4px;margin:16px 0 28px;padding:4px;display:grid}.profile-panel{border:1px solid var(--app-line);background:var(--app-canvas);border-radius:10px;min-width:0}.profile-identity{padding:20px}.profile-identity-row{align-items:flex-start;gap:12px;display:flex}.profile-avatar{background:var(--app-surface);width:48px;height:48px;color:var(--app-ink);border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;font-size:13px;font-weight:500;display:flex}.profile-identity-text{flex:1;min-width:0}.profile-identity-text h1{letter-spacing:-.012em;overflow-wrap:anywhere;margin:0;font-size:20px;font-weight:510}.simple-app .profile-name-button{max-width:100%;color:inherit;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:4px;align-items:center;gap:8px;padding:0;display:inline-flex}.profile-name-button svg{color:var(--app-muted);flex-shrink:0}.profile-name-button:hover svg{color:var(--app-ink)}.profile-subtitle{color:var(--app-muted);margin:2px 0 0;font-size:13px}.profile-detail{color:var(--app-muted);overflow-wrap:anywhere;align-items:center;gap:6px;margin:6px 0 0;font-size:12px;display:flex}.profile-rename{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.profile-rename input{min-width:0;height:var(--app-control-height);font:inherit;color:var(--app-ink);background:var(--app-canvas);border:1px solid var(--app-line);border-radius:var(--app-radius-control);flex:200px;padding:0 10px;font-size:15px}.profile-rename input[aria-invalid=true]{border-color:var(--app-danger)}.profile-rename-error{color:var(--app-danger);flex-basis:100%;margin:0;font-size:12px}.profile-tags{flex-wrap:wrap;gap:6px;margin:16px 0 0;padding:0;list-style:none;display:flex}.profile-tags li{background:var(--app-surface);height:20px;color:var(--app-muted);border-radius:6px;align-items:center;padding:0 6px;font-size:11px;font-weight:500;display:inline-flex}.profile-metrics{grid-template-columns:repeat(2,minmax(0,1fr));gap:4px;margin:0;display:grid}.profile-metric{padding:12px 16px}.profile-metric dt{color:var(--app-muted);align-items:center;gap:8px;font-size:12px;display:flex}.profile-metric dt svg{flex-shrink:0}.profile-metric dt span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.profile-metric dd{margin:8px 0 0}.profile-metric dd strong{font-variant-numeric:tabular-nums;letter-spacing:-.015em;font-size:20px;font-weight:500;display:block}.profile-metric dd small{color:var(--app-muted);margin-top:4px;font-size:12px;display:block}.profile-actions{align-items:center;gap:8px;padding:12px;display:flex}.simple-app .profile-primary{flex:1;height:36px}.simple-app .profile-actions .row-actions-trigger{border:1px solid var(--app-line);background:var(--app-canvas);width:36px;height:36px;min-height:36px}.simple-app .profile-actions .row-actions-trigger:hover,.simple-app .profile-actions .row-actions-trigger[aria-expanded=true]{background:var(--app-hover)}@media (min-width:900px){.profile-metrics{grid-template-columns:repeat(4,minmax(0,1fr))}.profile-actions{justify-content:flex-end}.simple-app .profile-primary{flex:none;min-width:220px}}
.simple-app .program-list{--color-white:var(--app-canvas);background:var(--app-canvas)}.simple-app .program-toolbar{min-height:48px;padding-block:var(--app-space-2);border-bottom:1px solid var(--app-divider)}.simple-app .program-count{margin-left:auto}.simple-app .program-columns,.simple-app .program-row{padding-inline:var(--app-space-2)}.simple-app .program-rows{max-height:calc(100dvh - 280px)}.simple-app .program-row+.program-row{border-top:1px solid var(--app-divider)}.simple-app .program-row:hover{background:var(--app-row-hover)}.simple-app .program-list .rb-empty{margin-block:var(--app-space-4) var(--app-space-5)}.simple-app .program-sessions{gap:var(--app-space-2);border:0;min-width:0;margin:0;padding:0;display:grid}.simple-app .program-sessions legend{color:var(--app-muted);margin-bottom:7px;padding:0;font-size:12px;font-weight:500}.simple-app .program-sessions .simple-field-help{margin:0 0 4px}.simple-app .program-session-list{gap:var(--app-space-2);margin:0;padding:0;list-style:none;display:grid}.simple-app .program-session{gap:var(--app-space-2);grid-template-columns:minmax(0,1.4fr) minmax(0,1fr) minmax(0,1fr) 32px;align-items:center;display:grid}.simple-app .program-session :is(.rb-select select,.rb-time input){height:var(--app-field-height)}@media (max-width:480px){.simple-app .program-session{grid-template-columns:minmax(0,1fr) minmax(0,1fr) 32px}.simple-app .program-session>.rb-select:first-child{grid-column:1/-1}}
.rb-inline-row{background:var(--app-sidebar);border-radius:10px;grid-template-columns:minmax(0,1fr);align-items:center;gap:6px;padding:10px 12px;transition:background-color .15s ease-out;display:grid}.rb-inline-row+.rb-inline-row{margin-top:6px}.rb-inline-row:not(.is-editing){cursor:pointer}.rb-inline-row:not(.is-editing):hover{background:var(--app-hover)}.rb-inline-label{color:var(--app-ink);align-items:center;gap:8px;font-size:13px;font-weight:500;display:flex}.rb-inline-label svg{color:var(--app-muted);flex-shrink:0}.rb-inline-value{min-width:0;color:var(--app-ink);align-items:center;gap:8px;font-size:13px;display:flex}.rb-inline-value>span{overflow-wrap:anywhere;min-width:0}.rb-inline-value .is-placeholder{color:var(--app-muted)}.rb-inline-value svg{color:var(--app-muted);flex-shrink:0;margin-left:auto}.rb-inline-form{flex-wrap:wrap;align-items:center;gap:8px;min-width:0;display:flex}.rb-inline-form input{min-width:0;height:var(--app-control-height);font:inherit;color:var(--app-ink);background:var(--app-canvas);border:1px solid var(--app-line);border-radius:var(--app-radius-control);flex:160px;padding:0 10px;font-size:13px;transition:border-color .15s ease-out}.rb-inline-form input:hover{border-color:var(--app-muted)}.rb-inline-form input[aria-invalid=true]{border-color:var(--app-danger)}.simple-app .rb-inline-icon{border-radius:var(--app-radius-control);background:var(--app-surface);width:28px;height:28px;color:var(--app-muted);padding:0}.simple-app .rb-inline-icon:hover{background:var(--app-hover);color:var(--app-ink)}.rb-inline-status,.rb-inline-error{color:var(--app-muted);flex-basis:100%;font-size:12px}.rb-inline-error{color:var(--app-danger)}.rb-inline-row.is-saving{opacity:.7}@media (min-width:640px){.rb-inline-row{grid-template-columns:minmax(0,120px) minmax(0,1fr);gap:16px}}@media (prefers-reduced-motion:reduce){.rb-inline-row,.rb-inline-form input{transition:none}}
.school-calendar{min-width:0}.school-cal-toolbar,.school-cal-navigation,.school-cal-controls,.school-cal-filters,.school-cal-meta,.school-cal-legend{align-items:center;gap:var(--app-space-2);flex-wrap:wrap;display:flex}.school-cal-toolbar{justify-content:space-between;gap:var(--app-space-4)}.school-cal-navigation{flex:240px}.school-cal-navigation h2{flex:1;min-width:160px;margin:0;font-size:16px;font-weight:500}.school-cal-controls{justify-content:flex-end}.school-cal-filters{margin-top:var(--app-space-2)}.school-cal-meta{color:var(--app-muted);padding-block:var(--app-space-2);justify-content:space-between;gap:var(--app-space-3);font-size:12px}.school-cal-legend{gap:var(--app-space-3)}.school-cal-legend>span{align-items:center;gap:var(--app-space-1);display:inline-flex}.school-cal-legend i,.school-cal-dots i{background:var(--app-accent);border-radius:50%;flex-shrink:0;width:5px;height:5px}.school-cal-legend .is-session,.school-cal-dots .is-session{background:var(--app-success)}.school-cal-legend .is-event,.school-cal-dots .is-event{background:var(--app-warning)}.school-cal-legend .is-closure,.school-cal-dots .is-closure{background:var(--app-danger)}.school-cal-notice,.school-cal-hint{color:var(--app-muted);padding-block:var(--app-space-3);margin:0;font-size:12px;line-height:1.5}.school-cal-notice{padding:var(--app-space-3);margin-bottom:var(--app-space-3);background:var(--app-surface);border-radius:var(--app-radius-control)}.school-cal-month{border-top:1px solid var(--app-line);border-left:1px solid var(--app-line);grid-template-columns:repeat(7,minmax(0,1fr));display:grid}.school-cal-weekday{text-align:center;padding:var(--app-space-2);color:var(--app-muted);border-bottom:1px solid var(--app-line);border-right:1px solid var(--app-line);font-size:12px}.school-cal-cell{min-height:var(--app-calendar-cell-height);border-right:1px solid var(--app-line);border-bottom:1px solid var(--app-line);min-width:0;padding:var(--app-space-1)}.school-cal-cell.is-outside{background:var(--app-surface)}.school-calendar .school-cal-date{width:var(--app-calendar-date-size);height:var(--app-calendar-date-size);min-height:var(--app-calendar-date-size);margin-bottom:var(--app-space-1);font-variant-numeric:tabular-nums;padding:0;display:flex;position:relative}.school-calendar .is-today>.school-cal-date,.school-calendar .school-cal-day-head.is-today strong{background:var(--app-accent);color:var(--app-accent-text);border-radius:var(--app-radius-control)}.school-cal-cell-events{gap:0;display:grid}.school-calendar .school-cal-event{width:100%;min-width:0;height:auto;padding:var(--app-space-1);text-align:left;border-radius:var(--app-radius-control);border:1px solid #0000;border-left:2px solid var(--app-accent);background:var(--app-accent-soft);color:var(--app-ink);font-size:12px;font-weight:400;line-height:1.35;display:block;overflow:hidden}.school-calendar .school-cal-event.is-session{border-left-color:var(--app-success);background:var(--app-success-soft)}.school-calendar .school-cal-event.is-event{border-left-color:var(--app-warning);background:var(--app-warning-soft)}.school-calendar .school-cal-event.is-closure,.school-calendar .school-cal-event.is-cancelled{border-left-color:var(--app-danger);background:var(--app-danger-soft)}.school-calendar .school-cal-event:hover{border-color:var(--app-muted)}.school-calendar .school-cal-event:not(.is-timed){align-items:center;gap:var(--app-space-1);padding:var(--app-space-1);background:0 0;border:0;border-radius:0;display:flex}.school-calendar .school-cal-event:not(.is-timed):hover{background:var(--app-hover)}.school-cal-event-marker{background:var(--app-accent);border-radius:50%;flex:0 0 5px;width:5px;height:5px}.is-session>.school-cal-event-marker{background:var(--app-success)}.is-event>.school-cal-event-marker{background:var(--app-warning)}.is-closure>.school-cal-event-marker,.is-cancelled>.school-cal-event-marker{background:var(--app-danger)}.is-holiday>.school-cal-event-marker,.school-cal-legend .is-holiday,.school-cal-dots .is-holiday{background:var(--app-muted)}.school-cal-event:not(.is-timed) .school-cal-event-title{flex:1;min-width:0}.school-cal-event-clock{color:var(--app-muted);font-variant-numeric:tabular-nums;flex-shrink:0}.school-cal-event-title{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.school-cal-event-time{margin-top:var(--app-space-1);font-variant-numeric:tabular-nums;text-overflow:ellipsis;white-space:nowrap;font-size:12px;display:block;overflow:hidden}.school-calendar .school-cal-more{padding-inline:var(--app-space-1);justify-content:flex-start;font-size:12px}.school-calendar .school-cal-mobile-count{display:none}.school-cal-dots{justify-content:center;gap:2px;display:flex}.school-cal-year{gap:var(--app-space-5);grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.school-cal-year-month{min-width:0}.school-calendar .school-cal-month-title{padding-left:var(--app-space-1);margin-bottom:var(--app-space-2);font-weight:500}.school-cal-month.is-mini{border:0;gap:2px}.is-mini .school-cal-weekday{padding:var(--app-space-1) 0;border:0}.is-mini .school-cal-cell{border:0;min-height:0;padding:0}.school-calendar .is-mini .school-cal-date{width:100%;height:var(--app-field-height);padding-bottom:var(--app-space-1);margin:0;font-size:12px}.is-mini .school-cal-dots{position:absolute;bottom:3px}.school-calendar .is-today .school-cal-dots i{outline:1px solid var(--app-accent-text)}.school-cal-time-scroll{max-height:min(var(--app-calendar-time-height), max(320px, calc(100dvh - 270px)));border:1px solid var(--app-line);border-radius:var(--app-radius-control);overflow:auto}.school-cal-time-scroll:focus-visible{outline:2px solid var(--app-focus-color);outline-offset:2px}.school-cal-time-scroll.is-week .school-cal-time-grid{min-width:900px}.school-cal-time-head,.school-cal-all-day,.school-cal-hours{grid-template-columns:56px repeat(var(--calendar-days), minmax(0, 1fr));display:grid}.school-cal-time-head{z-index:2;background:var(--app-canvas);border-bottom:1px solid var(--app-line);position:sticky;top:0}.school-cal-axis-label{color:var(--app-muted);padding:var(--app-space-3) var(--app-space-2);text-align:right;font-size:12px}.school-calendar .school-cal-day-head{height:auto;padding:var(--app-space-2);gap:var(--app-space-2);border-left:1px solid var(--app-line);color:var(--app-muted);border-radius:0}.school-cal-day-head strong{color:var(--app-ink);width:var(--app-control-height);height:var(--app-control-height);justify-content:center;align-items:center;font-weight:500;display:inline-flex}.school-cal-all-day{border-bottom:1px solid var(--app-line);min-height:44px}.school-cal-all-day-cell{border-left:1px solid var(--app-line);padding:var(--app-space-1);gap:var(--app-space-1);flex-direction:column;display:flex}.school-cal-time-axis,.school-cal-time-column{min-width:0;position:relative}.school-cal-time-column{border-left:1px solid var(--app-line)}.school-cal-time-axis>span{right:var(--app-space-2);color:var(--app-muted);font-variant-numeric:tabular-nums;font-size:12px;position:absolute}.school-cal-hour-rule{border-top:1px solid var(--app-divider);pointer-events:none;width:100%;position:absolute}.school-calendar .school-cal-event.is-timed{min-height:0;padding:var(--app-space-1);white-space:normal;flex-direction:column;justify-content:flex-start;align-items:stretch;gap:0;line-height:1.4;display:flex;position:absolute}.school-cal-detail-value{color:var(--app-ink);overflow-wrap:anywhere;white-space:pre-wrap;margin:0;font-size:13px;line-height:1.5}@media (max-width:1250px){.school-cal-year{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width:1000px){.school-cal-year{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:600px){.school-cal-controls{justify-content:flex-start}.school-cal-navigation h2{font-size:16px}.school-cal-filters>.rb-select{flex:140px}.school-cal-cell{min-height:64px;padding:2px}.school-cal-weekday{padding-inline:0}.school-cal-cell-events{display:none}.school-calendar .school-cal-date{margin-inline:auto}.school-calendar .school-cal-mobile-count{gap:var(--app-space-1);flex-direction:column;width:100%;padding:0;font-size:12px;display:flex}.school-cal-year{grid-template-columns:minmax(0,1fr)}}.school-cal-week{grid-column:1/-1;grid-template-columns:repeat(7,minmax(0,1fr));display:grid;position:relative}.school-cal-week .school-cal-cell-events{padding-top:calc(var(--closure-lanes) * var(--app-control-height))}.school-cal-span-grid{top:calc(var(--app-calendar-date-size) + var(--app-space-2));grid-template-columns:repeat(7,minmax(0,1fr));grid-auto-rows:var(--app-control-height);pointer-events:none;display:grid;position:absolute;inset-inline:0}.school-calendar .school-cal-closure-span{pointer-events:auto;margin:0 var(--app-space-1) var(--app-space-1);background:var(--app-danger-soft);min-width:0;height:auto;color:var(--app-danger);border:0;justify-content:flex-start;overflow:hidden}.school-cal-closure-span span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.school-cal-closure-span.continues-before{border-start-start-radius:0;border-end-start-radius:0}.school-cal-closure-span.continues-after{border-start-end-radius:0;border-end-end-radius:0}.school-cal-mobile-agenda{display:none}.school-cal-layer-list,.school-cal-quick-actions{gap:var(--app-space-2);display:grid}.school-cal-layer-list .rb-button{justify-content:flex-start}@media (max-width:600px){.school-cal-span-grid{display:none}.school-cal-week .school-cal-cell-events{padding-top:0}.school-cal-mobile-agenda{margin-top:var(--app-space-4);padding-top:var(--app-space-4);border-top:1px solid var(--app-line);display:block}.school-cal-agenda-heading{justify-content:space-between;align-items:center;gap:var(--app-space-2);margin-bottom:var(--app-space-3);display:flex}.school-cal-agenda-heading h3{margin:0;font-size:14px;font-weight:500}.school-cal-cell.is-selected:not(.is-today)>.school-cal-date{box-shadow:inset 0 0 0 1px var(--app-accent)}.school-calendar .school-cal-mobile-agenda .school-cal-event{min-height:var(--app-field-height)}}.school-cal-layer-group{margin:0 0 var(--app-space-4);border:0;min-width:0;padding:0}.school-cal-layer-group legend{color:var(--app-muted);margin-bottom:var(--app-space-2);padding:0;font-size:13px}.school-cal-all-day{position:relative}.school-cal-all-day-cell{padding-top:calc(var(--app-space-1) + var(--closure-lanes,0) * var(--app-control-height))}.school-cal-span-grid.school-cal-week-spans{top:var(--app-space-1);display:grid;left:56px;right:0}.school-cal-cell-events .school-cal-event:not(.is-timed){padding-block:2px}
