/* Teacher white/violet edition: use the existing teacher palette and shared geometry. */
.follow-card{border:1px solid var(--teacher-line);border-radius:var(--ds-radius-sm);padding:14px;margin:10px 0;background:var(--teacher-panel);color:var(--teacher-ink)}
.follow-card p{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.65;margin:9px 0}
.follow-card small,.follow-muted{color:var(--teacher-muted);line-height:1.7}
.follow-card button,.follow-toolbar button,.follow-form button{padding:9px 12px;border:1px solid var(--teacher-line);border-radius:8px;background:var(--teacher-panel);color:var(--teacher-violet);cursor:pointer}
.follow-actions,.follow-toolbar{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}
.follow-form{display:grid;gap:12px}.follow-form label{display:grid;gap:6px;font-size:13px}
.follow-form textarea,.follow-form input,.follow-form select{box-sizing:border-box;width:100%;font:inherit;color:var(--teacher-ink);background:var(--teacher-panel);border:1px solid var(--teacher-line);padding:11px;border-radius:8px}
.follow-form textarea{min-height:110px}.follow-form .primary{background:var(--teacher-violet);color:var(--teacher-panel)}
.follow-form fieldset{border:1px solid var(--teacher-line);border-radius:8px}.follow-form fieldset label{display:flex;align-items:center;margin:8px 0}.follow-form input[type=checkbox]{width:auto}
.follow-badge{font-size:11px;color:var(--teacher-violet);background:var(--teacher-violet-soft);padding:3px 7px;border-radius:8px}
.follow-receipt{display:inline-block;margin-left:6px;font-size:10px;color:var(--teacher-muted)}.follow-receipt.unread{color:var(--teacher-violet);font-weight:600}
.follow-sheet{max-height:85dvh;overflow-y:auto}.follow-sheet h2{margin-bottom:16px}.follow-form button:disabled{opacity:.5;cursor:wait}
/* Primary records screen; keep the existing teacher palette. */
#schedulePage[hidden],#recordsPage[hidden]{display:none!important}
.records-page{position:relative;z-index:1;max-width:900px;margin:auto;padding:24px 18px 8px;height:calc(100dvh - 92px - env(safe-area-inset-top) - env(safe-area-inset-bottom));display:grid;grid-template-rows:auto auto minmax(0,1fr);gap:16px;color:var(--teacher-ink)}
.records-heading h1{font-size:28px;font-weight:600;margin:8px 0;outline:none}
.records-heading>p:last-child{font-size:13px;line-height:1.6;color:var(--teacher-muted);margin:0}
.records-tabs{margin:0;flex-wrap:nowrap;gap:6px;overflow-x:auto;padding-bottom:4px}
.records-tabs button{font:inherit;font-size:12px;white-space:nowrap;flex-shrink:0}
.records-tabs button.active{color:var(--teacher-violet);background:var(--teacher-violet-soft);border-color:var(--teacher-violet)}
.records-content{min-height:0;overflow-y:auto;overscroll-behavior-y:contain;padding:0 2px 24px;scrollbar-width:thin}
.records-content .note-card:first-child,.records-content .follow-card:first-child{margin-top:0}
.records-content [data-more]{display:block;width:100%;padding:12px;border:1px solid var(--teacher-line);border-radius:var(--ds-radius-sm);background:var(--teacher-panel);color:var(--teacher-violet);font:inherit}
@media(max-width:560px){.records-page{padding:18px 14px 0;gap:14px}.records-heading h1{font-size:26px}.records-tabs button{padding:9px 10px}}
