:root{--bg:#f5f5f7;--surface:#fff;--surface-2:#fbfbfd;--text:#1d1d1f;--muted:#6e6e73;--line:#0000001a;--blue:#0071e3;--blue-hover:#0077ed;--blue-soft:#edf6ff;--green:#248a3d;--green-soft:#eef8f0;--orange:#a05a00;--orange-soft:#fff7e8;--red:#d70015;--red-soft:#fff1f2;--radius:22px}*{box-sizing:border-box}html{background:var(--bg)}body{min-height:100vh;color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased;margin:0;font-family:-apple-system,BlinkMacSystemFont,SF Pro Display,SF Pro Text,PingFang SC,Microsoft YaHei,sans-serif;font-size:17px;line-height:1.5}button,input,select,textarea{font:inherit}button{color:inherit}button,summary{-webkit-tap-highlight-color:transparent}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline-offset:2px;outline:3px solid #0071e347}.topbar{z-index:30;border-bottom:1px solid var(--line);-webkit-backdrop-filter:saturate(180%)blur(20px);background:#fafafcd1;justify-content:space-between;align-items:center;gap:18px;min-height:64px;padding:10px max(22px,50vw - 590px);display:flex;position:sticky;top:0}.wordmark{cursor:pointer;text-align:left;background:0 0;border:0;padding:0}.wordmark span,.wordmark small{display:block}.wordmark span{letter-spacing:-.25px;font-size:18px;font-weight:680}.wordmark small{color:var(--muted);margin-top:1px;font-size:12px;font-weight:500}.topActions{align-items:center;gap:10px;display:flex}.cornerButton{border:1px solid var(--line);cursor:pointer;min-height:38px;color:var(--text);background:#ffffffb8;border-radius:999px;padding:0 13px;font-size:14px;font-weight:600}.cornerButton:hover{background:var(--surface);border-color:#0000002e}.textButton{min-height:40px;color:var(--blue);cursor:pointer;background:0 0;border:0;border-radius:999px;padding:0 12px;font-size:15px;font-weight:600}.textButton:hover{background:#0071e312}.pageShell{width:min(1180px,100% - 40px);margin:0 auto;padding:64px 0 96px}.narrowPage{width:min(600px,100% - 40px)}.narrowSetup{width:min(720px,100% - 40px)}.landing{padding-top:92px}.intro{max-width:830px}.kicker,.pageHeading>p{color:var(--blue);letter-spacing:.01em;margin:0 0 14px;font-size:15px;font-weight:650}.intro h1{letter-spacing:-.055em;margin:0;font-size:clamp(44px,6.5vw,76px);font-weight:690;line-height:1.05}.introText{max-width:680px;color:var(--muted);letter-spacing:-.015em;margin:26px 0 0;font-size:21px;line-height:1.6}.entryGrid{grid-template-columns:1fr 1fr;gap:14px;margin-top:62px;display:grid}.entryCard{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);text-align:left;cursor:pointer;grid-template-columns:auto 1fr auto;align-items:center;gap:18px;min-height:128px;padding:24px 26px;transition:transform .18s,border-color .18s,box-shadow .18s;display:grid}.entryCard:hover{border-color:#0000002b;transform:translateY(-2px);box-shadow:0 12px 34px #0000000e}.entryIndex{width:40px;height:40px;color:var(--muted);background:var(--bg);border-radius:50%;place-items:center;font-size:13px;font-weight:650;display:grid}.entryCard strong,.entryCard small{display:block}.entryCard strong{letter-spacing:-.02em;margin-bottom:6px;font-size:21px;font-weight:650}.entryCard small{color:var(--muted);font-size:15px}.entryCard b{color:var(--blue);font-size:32px;font-weight:300}.facts{border-top:1px solid var(--line);border-bottom:1px solid var(--line);grid-template-columns:repeat(3,1fr);margin-top:52px;padding:28px 0;display:grid}.facts>div{border-left:1px solid var(--line);padding:0 26px}.facts>div:first-child{border-left:0;padding-left:0}.facts strong,.facts span{display:block}.facts strong{letter-spacing:-.025em;font-size:27px;font-weight:650}.facts strong small{font-size:16px}.facts span{color:var(--muted);margin-top:4px;font-size:14px}.demoHelp{color:var(--muted);margin-top:22px;font-size:14px}.demoHelp summary{cursor:pointer;width:fit-content;color:var(--blue);font-weight:600}.demoHelp div{border:1px solid var(--line);background:#ffffff9e;border-radius:14px;margin-top:12px;padding:14px 16px}.demoHelp p{margin:3px 0}.pageHeading{max-width:810px;margin-bottom:38px}.pageHeading h1{letter-spacing:-.045em;margin:0;font-size:clamp(36px,5vw,54px);font-weight:680;line-height:1.08}.pageHeading>div{color:var(--muted);margin-top:18px;font-size:19px;line-height:1.6}.pageHeading>div p{margin:0}.loginCard{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);gap:18px;padding:30px;display:grid}label{gap:8px;min-width:0;display:grid}label>span,.adminToolbar>div>span{color:var(--muted);font-size:14px;font-weight:600}input,select{width:100%;min-height:50px;color:var(--text);background:var(--surface);border:1px solid #00000029;border-radius:13px;outline:none;padding:0 14px}input[type=date]{min-width:0;max-width:100%;display:block}textarea{width:100%;color:var(--text);background:var(--surface);resize:vertical;border:1px solid #00000029;border-radius:13px;outline:none;padding:12px 14px}input:focus,select:focus,textarea:focus{border-color:var(--blue);box-shadow:0 0 0 4px #0071e31f}.primaryButton,.secondaryButton,.dangerButton,.selectedButton{cursor:pointer;white-space:nowrap;border:0;border-radius:999px;min-height:48px;padding:0 20px;font-weight:650}.primaryButton{color:#fff;background:var(--blue)}.primaryButton:hover{background:var(--blue-hover)}.secondaryButton{color:var(--blue);background:var(--blue-soft)}.secondaryButton:hover{background:#e1f0ff}.dangerButton{color:var(--red);background:var(--red-soft)}.selectedButton{color:var(--green);background:var(--green-soft)}button:disabled{cursor:not-allowed;opacity:.52}.formNote{color:var(--muted);text-align:center;margin:0;font-size:14px}.clubGrid{grid-template-columns:repeat(3,1fr);gap:14px;display:grid}.clubCard{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);flex-direction:column;min-height:320px;padding:25px;display:flex}.clubCard.selected{border-color:#248a3d73;box-shadow:inset 0 0 0 1px #248a3d1f}.clubMeta{color:var(--muted);justify-content:space-between;gap:10px;font-size:13px;display:flex}.clubCard h2{letter-spacing:-.025em;margin:28px 0 8px;font-size:24px;line-height:1.2}.clubCard>p{color:var(--muted);margin:0;font-size:15px}.capacity{border-top:1px solid var(--line);justify-content:space-between;align-items:end;margin:auto 0 20px;padding-top:24px;display:flex}.capacity span{color:var(--muted);font-size:14px}.capacity strong{font-size:30px;font-weight:650}.capacity small{color:var(--muted);font-size:15px;font-weight:500}.inlineNotice,.privateReminder{border:1px solid var(--line);background:var(--surface);border-radius:15px;margin-bottom:22px;padding:16px 18px}.inlineNotice{color:var(--orange);background:var(--orange-soft)}.identityRow{color:var(--muted);justify-content:flex-end;align-items:center;gap:8px;margin-bottom:18px;font-size:15px;display:flex}.identityRow>span{color:var(--text);font-weight:600}.controlPanel{border:1px solid var(--line);background:var(--surface);border-radius:18px;grid-template-columns:1.5fr 1fr auto;align-items:end;gap:14px;padding:20px;display:grid}.compactControls{grid-template-columns:minmax(220px,360px) auto;justify-content:start}.privateReminder{color:var(--orange);background:var(--orange-soft);gap:14px;margin-top:18px;font-size:15px;display:flex}.privateReminder span{color:#704a18}.listHeader{justify-content:space-between;align-items:end;gap:20px;margin:38px 0 16px;display:flex}.listHeader h2{letter-spacing:-.025em;margin:0 0 4px;font-size:27px}.listHeader p{color:var(--muted);margin:0;font-size:15px}.savedTag{color:var(--green);background:var(--green-soft);border-radius:999px;padding:7px 11px;font-size:13px;font-weight:650}.studentGrid{grid-template-columns:1fr 1fr;gap:10px;display:grid}.rosterGroup+.rosterGroup{margin-top:26px}.rosterGroupTitle{justify-content:space-between;align-items:baseline;gap:12px;margin:0 2px 10px;display:flex}.rosterGroupTitle h3{letter-spacing:-.015em;margin:0;font-size:18px}.rosterGroupTitle span{color:var(--muted);font-size:13px}.leaveRoster{background:#fff7e68c;border:1px solid #a05a0033;border-radius:20px;padding:16px}.studentRow{border:1px solid var(--line);background:var(--surface);text-align:left;cursor:pointer;border-radius:16px;justify-content:space-between;align-items:center;gap:16px;width:100%;min-height:78px;padding:14px 16px;display:flex}.studentRow:hover{border-color:#0071e359}.studentRow strong,.studentRow small{display:block}.studentRow strong{margin-bottom:4px;font-size:18px;font-weight:620}.studentRow small{color:var(--muted);font-size:13px}.rowState{flex:none;justify-items:end;gap:5px;display:grid}.rowState b{color:var(--muted);background:var(--bg);border-radius:999px;padding:7px 11px;font-size:13px;font-weight:650}.rowState em{color:var(--muted);font-size:11px;font-style:normal;font-weight:500}.studentRow.leave{background:var(--orange-soft);border-color:#a05a003d}.studentRow.leave .rowState b{color:var(--orange);background:#ffedc8}.studentRow.pendingLeave{background:var(--blue-soft);border-color:#0071e359;box-shadow:inset 0 0 0 1px #0071e314}.studentRow.pendingLeave .rowState b{color:var(--blue);background:#dceeff}.studentRow.absent{background:var(--red-soft);border-color:#d7001538}.studentRow.absent .rowState b{color:var(--red);background:#ffe0e3}.studentRow.incidentResolved{background:var(--green-soft);border-color:#248a3d33}.studentRow.incidentResolved .rowState b{color:var(--green);background:#dff2e3}.studentRow.left{color:var(--muted);background:#e9e9ed;border-color:#0000}.studentRow.left strong{color:#77777c}.studentRow.left .rowState b{color:var(--muted);background:#ffffffb3}.studentRow:disabled{opacity:1;cursor:default}.emptyState{color:var(--muted);text-align:center;grid-column:1/-1;padding:38px 20px}.sessionPanel{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);margin-top:34px;padding:28px}.sessionTitle{justify-content:space-between;align-items:start;gap:20px;display:flex}.sessionTitle p{color:var(--muted);margin:0 0 6px;font-size:14px}.sessionTitle h2{letter-spacing:-.025em;margin:0;font-size:24px}.sessionTitle>strong{color:var(--blue);font-size:27px;font-weight:650}.sessionFields{border-top:1px solid var(--line);grid-template-columns:1fr 1fr;gap:16px;margin-top:26px;padding-top:24px;display:grid}.switchLabel{align-self:end;align-items:center;gap:10px;min-height:50px;display:flex}.switchLabel input{width:20px;min-height:20px;accent-color:var(--blue)}.switchLabel span{color:var(--text);font-size:16px}.wideField{grid-column:1/-1}.submitButton{width:100%;margin-top:24px}.compactSession{max-width:760px}.sessionNote{margin-top:24px}.incidentPanel{background:var(--surface);border:1px solid #d700152e;border-radius:20px;margin-top:24px;padding:22px;box-shadow:0 10px 30px #5000080a}.incidentHeading{justify-content:space-between;align-items:center;gap:16px;display:flex}.incidentHeading .kicker{color:var(--red);margin:0 0 2px}.incidentHeading h2{letter-spacing:-.025em;margin:0;font-size:25px}.incidentHeading>strong{min-width:42px;color:var(--red);background:var(--red-soft);text-align:center;border-radius:999px;padding:7px 11px;font-size:14px}.incidentHint{color:var(--muted);margin:8px 0 18px;font-size:14px}.incidentList{gap:10px;display:grid}.incidentList article{background:var(--red-soft);border:1px solid #d7001529;border-radius:15px;grid-template-columns:minmax(220px,1fr) minmax(180px,auto) auto;align-items:center;gap:16px;padding:15px 16px;display:grid}.incidentList article.resolved{background:var(--green-soft);border-color:#248a3d29}.incidentList article>div:first-child{gap:2px;display:grid}.incidentList article>div:first-child strong{font-size:18px}.incidentList article span,.incidentList article small{color:var(--muted);font-size:12px}.incidentContacts,.incidentResult{gap:3px;display:grid}.incidentContacts a{color:var(--blue);font-size:13px;text-decoration:none}.incidentResult b{color:var(--green);font-size:14px}.incidentActions{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.incidentActions button{min-height:38px;padding:0 13px;font-size:13px}.adminIncidents{margin-bottom:14px}.adminPage{padding-top:50px}.segmented{background:#0000000e;border-radius:999px;gap:4px;width:fit-content;margin-bottom:28px;padding:4px;display:flex}.segmented button{min-height:40px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:999px;padding:0 17px;font-weight:600}.segmented button.active{color:var(--text);background:var(--surface);box-shadow:0 1px 4px #0000001a}.adminToolbar{border:1px solid var(--line);background:var(--surface);border-radius:18px;grid-template-columns:minmax(220px,1fr) auto;align-items:end;gap:18px;padding:20px;display:grid}.adminToolbar>div{gap:8px;display:grid}.statsToolbar{grid-template-columns:1fr 1fr 1fr 1fr auto}.statsActions{grid-template-columns:1fr 1fr;align-items:end}.metricGrid{grid-template-columns:repeat(3,1fr);gap:12px;margin:20px 0;display:grid}.overviewMetrics{grid-template-columns:repeat(4,1fr)}.metricGrid>div{border:1px solid var(--line);background:var(--surface);border-radius:18px;padding:22px}.metricGrid strong,.metricGrid span{display:block}.metricGrid strong{letter-spacing:-.035em;font-size:32px}.metricGrid strong small{color:var(--muted);font-size:17px;font-weight:500}.metricGrid span{color:var(--muted);margin-top:6px;font-size:14px}.tableCard{border:1px solid var(--line);background:var(--surface);border-radius:18px;overflow:hidden}.tableHeader,.tableRow{align-items:center;gap:16px;padding:14px 18px;display:grid}.tableHeader{color:var(--muted);background:var(--surface-2);font-size:13px;font-weight:650}.tableRow{border-top:1px solid var(--line);min-height:57px;font-size:15px}.tableRow strong{font-weight:620}.five{grid-template-columns:1.7fr 1fr 1.2fr .8fr .7fr}.four{grid-template-columns:1.7fr 1fr 1fr 1fr}.three{grid-template-columns:1.6fr 1fr .7fr}.successText{color:var(--green);font-weight:600}.mutedText{color:var(--muted)}.dataGuide{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);margin:20px 0;padding:28px}.dataGuide h2{letter-spacing:-.025em;margin:0 0 22px;font-size:24px}.dataGuide ol{counter-reset:data;gap:12px;margin:0;padding:0;list-style:none;display:grid}.dataGuide li{border-top:1px solid var(--line);counter-increment:data;grid-template-columns:150px 1fr;gap:18px;padding:14px 0;display:grid}.dataGuide li strong:before{content:"0" counter(data) "  ";color:var(--muted);font-size:13px}.dataGuide li span,.dataGuide>p{color:var(--muted)}.dataGuide>p{margin:20px 0 0;font-size:14px}.compact{margin-top:20px}.singleMetric{grid-template-columns:minmax(240px,1fr);max-width:380px}.historyCard{border:1px solid var(--line);background:var(--surface);border-radius:18px;margin-top:20px;overflow:hidden}.sectionTitle{border-bottom:1px solid var(--line);justify-content:space-between;align-items:baseline;gap:18px;padding:20px 22px;display:flex}.sectionTitle h2{letter-spacing:-.02em;margin:0;font-size:21px}.sectionTitle span{color:var(--muted);font-size:13px}.historyList{padding:4px 22px}.historyList>div{border-top:1px solid var(--line);grid-template-columns:68px 1fr auto;align-items:start;gap:16px;padding:14px 0;display:grid}.historyList>div:first-child{border-top:0}.historyList time{color:var(--muted);font-variant-numeric:tabular-nums;font-size:14px}.historyList p{gap:3px;margin:0;font-size:15px;display:grid}.historyList p small{color:var(--muted);font-size:13px}.historyList strong{margin-right:8px;font-weight:650}.historyEntry.undone p>span{color:var(--muted);text-decoration:line-through}.undoMeta{text-decoration:none}.undoButton{min-height:32px;color:var(--blue);background:var(--blue-soft);cursor:pointer;border:0;border-radius:999px;padding:0 12px;font-size:13px;font-weight:650}.managerTabs{margin-top:6px}.managerFilters{border:1px solid var(--line);background:var(--surface);border-radius:18px;grid-template-columns:1.4fr 1fr 1.2fr;gap:12px;margin-bottom:16px;padding:18px;display:grid}.managerFilters.singleFilter{grid-template-columns:minmax(260px,520px)}.managerLayout{grid-template-columns:minmax(340px,.9fr) minmax(460px,1.1fr);align-items:start;gap:16px;display:grid}.managerList,.editorCard,.exportCard{border:1px solid var(--line);background:var(--surface);border-radius:20px;overflow:hidden}.managerList{max-height:720px;overflow-y:auto}.managerList .sectionTitle{z-index:2;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#fbfbfdf0;position:sticky;top:0}.managerRow{border:0;border-top:1px solid var(--line);text-align:left;cursor:pointer;background:0 0;justify-content:space-between;align-items:center;gap:16px;width:100%;min-height:68px;padding:12px 18px;display:flex}.managerRow:hover,.managerRow.selected{background:var(--blue-soft)}.managerRow strong,.managerRow small{display:block}.managerRow strong{margin-bottom:3px;font-size:16px;font-weight:640}.managerRow small,.managerRow>span:last-child{color:var(--muted);font-size:12px}.managerRow>span:last-child{text-align:right;max-width:180px}.editorCard{min-height:300px}.editorFields{grid-template-columns:1fr 1fr;gap:15px;padding:22px;display:grid}.checkboxRow{align-items:center;gap:10px;min-height:46px;display:flex}.checkboxRow input{width:20px;min-height:20px;accent-color:var(--blue)}.checkboxRow span{color:var(--text);font-size:15px}.editorSave{width:calc(100% - 44px);margin:0 22px 22px}.editorEmpty{min-height:300px;color:var(--muted);text-align:center;place-items:center;padding:30px;display:grid}.membershipHistory{border-top:1px solid var(--line);margin:0 22px 22px;padding-top:20px}.membershipHistory h3{margin:0 0 10px;font-size:16px}.membershipHistory p{border-top:1px solid var(--line);grid-template-columns:1fr auto;gap:3px 12px;margin:0;padding:11px 0;display:grid}.membershipHistory p:first-of-type{border-top:0}.membershipHistory p strong{font-size:14px}.membershipHistory p span,.membershipHistory p small{color:var(--muted);font-size:12px}.membershipHistory p small{grid-column:1/-1}.exportCard{padding:28px}.exportCard h2{letter-spacing:-.025em;margin:0;font-size:26px}.exportCard>div>p{color:var(--muted);margin:8px 0 0}.exportFields{grid-template-columns:1fr 1fr;gap:14px;margin-top:24px;display:grid}.exportActions{gap:10px;margin-top:18px;display:flex}.exportCard>.formNote{text-align:left;margin-top:18px}.simpleLanding{width:min(760px,100% - 40px);padding-top:120px}.simpleIntro h1{font-size:clamp(48px,8vw,76px)}.simpleLanding .entryGrid{margin-top:44px}.simpleLanding .entryCard{grid-template-columns:1fr auto;min-height:148px}.simpleLanding .entryCard strong{font-size:25px}.listActions{justify-content:flex-end;align-items:center;gap:10px;display:flex}.periodTabs{margin:-12px 0 20px}.periodTabs button{gap:2px;display:grid}.periodTabs button small,.periodTime{color:var(--muted);font-size:11px;font-weight:500}.periodTabs button.active small{color:inherit;opacity:.72}.periodTime{letter-spacing:.02em;margin-top:5px;display:block}.offlineNotice{color:var(--red);background:var(--red-soft);border:1px solid #d7001533;border-radius:14px;margin-bottom:18px;padding:14px 16px;font-size:14px}.floatingSave{z-index:45;right:max(18px,50vw - 590px);bottom:max(18px, env(safe-area-inset-bottom));min-height:54px;padding:0 24px;position:fixed;box-shadow:0 12px 30px #004ba042}.pageChanges{margin-top:28px}.markNote{text-overflow:ellipsis;white-space:nowrap;max-width:210px;overflow:hidden;color:var(--orange)!important}.modalBackdrop{z-index:70;-webkit-backdrop-filter:blur(10px);background:#00000047;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.modalCard{background:#fffffff5;border:1px solid #fff9;border-radius:24px;width:min(520px,100%);max-height:min(760px,100vh - 40px);padding:28px;overflow-y:auto;box-shadow:0 24px 80px #00000038}.modalCard h2{letter-spacing:-.035em;margin:0;font-size:32px}.modalCard>div:first-child>p:last-child{color:var(--muted);margin:8px 0 22px}.modalActions{justify-content:flex-end;gap:9px;margin-top:22px;display:flex}.batchLeaveCard{width:min(680px,100%)}.commonNoteRow{border-bottom:1px solid var(--line);grid-template-columns:1fr auto;align-items:end;gap:10px;padding-bottom:18px;display:grid}.batchLeaveList{max-height:min(380px,44vh);overflow-y:auto}.batchLeaveList label{border-bottom:1px solid var(--line);grid-template-columns:180px 1fr;align-items:center;gap:12px;padding:10px 2px}.batchLeaveList label>span{color:var(--text);font-size:16px}.batchLeaveList label small{color:var(--muted);margin-top:2px;font-size:12px;font-weight:500;display:block}.contactList{gap:10px;display:grid}.contactList>div{background:var(--bg);border-radius:14px;gap:5px;padding:14px 16px;display:grid}.contactList span{color:var(--muted);justify-content:space-between;gap:18px;font-size:14px;display:flex}.contactList a{color:var(--blue);font-weight:650;text-decoration:none}.contactList em{font-style:normal}.tableRow strong small{color:var(--muted);font-size:12px;font-weight:500}.resetCard,.reminderCard{border:1px solid var(--line);background:var(--surface);border-radius:18px;grid-template-columns:1fr minmax(240px,340px) auto;align-items:end;gap:16px;margin-top:14px;padding:18px 20px;display:grid}.attendanceControlCard{background:var(--surface);border:1px solid #0071e32e;border-radius:18px;grid-template-columns:minmax(250px,1fr) minmax(300px,.9fr);align-items:end;gap:16px 22px;margin-top:14px;padding:20px;display:grid}.attendanceControlCard p{color:var(--muted);margin:5px 0 0;font-size:13px}.controlSelectors{grid-template-columns:1.6fr 1fr;gap:10px;display:grid}.controlActions{flex-wrap:wrap;grid-column:1/-1;gap:8px;display:flex}.controlState{grid-column:1/-1}.resetCard{border-color:#d700151f}.reminderCard{border-color:#f59e0b38}.resetCard strong,.reminderCard strong{font-size:16px}.resetCard p,.reminderCard p{color:var(--muted);margin:5px 0 0;font-size:13px}.toast{z-index:60;color:#fff;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);text-align:center;background:#1d1d1feb;border-radius:999px;max-width:min(560px,100% - 32px);padding:12px 18px;font-size:15px;position:fixed;bottom:28px;left:50%;transform:translate(-50%);box-shadow:0 12px 34px #0003}@media (max-width:860px){.clubGrid{grid-template-columns:1fr 1fr}.five{grid-template-columns:1.5fr 1fr 1fr .8fr .7fr;min-width:760px}.tableCard{overflow-x:auto}.managerLayout{grid-template-columns:1fr}.managerList{max-height:520px}}@media (max-width:680px){body{font-size:16px}.topbar{min-height:60px;padding:8px 15px}.wordmark small{display:none}.pageShell,.narrowPage,.narrowSetup{width:min(100% - 28px,1180px);padding:42px 0 72px}.landing{padding-top:58px}.simpleLanding{padding-top:82px}.intro h1{font-size:44px}.introText{margin-top:20px;font-size:18px}.entryGrid,.clubGrid,.studentGrid,.metricGrid,.overviewMetrics{grid-template-columns:1fr}.entryGrid{margin-top:42px}.entryCard{min-height:108px;padding:20px}.entryCard strong{font-size:19px}.facts{grid-template-columns:1fr;gap:0}.facts>div,.facts>div:first-child{border:0;border-top:1px solid var(--line);padding:14px 0}.facts>div:first-child{border-top:0}.pageHeading{margin-bottom:28px}.pageHeading h1{font-size:38px}.pageHeading>div{font-size:17px}.loginCard,.sessionPanel,.dataGuide{padding:22px}.clubCard{min-height:280px}.controlPanel,.adminToolbar,.statsToolbar,.resetCard,.reminderCard,.attendanceControlCard{grid-template-columns:1fr}.controlSelectors{grid-template-columns:1fr 1fr}.controlActions,.controlState{grid-column:auto}.managerFilters,.managerFilters.singleFilter,.editorFields,.exportFields{grid-template-columns:1fr}.privateReminder{gap:4px;display:grid}.listHeader{align-items:start}.listActions{justify-items:end;display:grid}.studentRow{min-height:74px}.incidentList article{grid-template-columns:1fr}.incidentActions{justify-content:stretch}.incidentActions button{flex:1}.sessionTitle{display:grid}.sessionFields{grid-template-columns:1fr}.wideField{grid-column:auto}.segmented{width:100%}.segmented button{flex:1;padding:0 8px}.tableHeader,.tableRow{min-width:620px}.three{min-width:520px}.dataGuide li{grid-template-columns:1fr;gap:4px}.cornerButton{min-height:36px;padding:0 10px;font-size:13px}.topActions{gap:5px}.rowState em{text-align:right;max-width:120px}.managerRow{padding:12px 14px}.exportActions{display:grid}.floatingSave{right:14px;bottom:max(14px, env(safe-area-inset-bottom));min-height:50px;padding:0 19px}.toast{bottom:76px}.modalBackdrop{align-items:end;padding:12px}.modalCard{border-radius:24px;width:100%;max-height:calc(100vh - 24px);padding:22px}.modalActions{grid-template-columns:1fr;display:grid}.modalActions button{width:100%}.commonNoteRow,.batchLeaveList label{grid-template-columns:1fr}.commonNoteRow button{width:100%}.historyList>div{grid-template-columns:58px 1fr auto;gap:10px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important}}
