[hidden]{display:none!important}
.login-panel{max-width:520px;margin:2rem auto}
.login-panel form{display:grid;gap:1rem}
#notice:not(:empty){position:fixed;bottom:16px;left:50%;transform:translateX(-50%);background:#302c25;color:#fff;border-radius:12px;padding:14px 20px;max-width:calc(100vw - 24px);width:max-content;z-index:100;box-shadow:0 4px 20px #0003;white-space:pre-wrap}
.private-panel{border:2px solid #91572c;margin-top:1rem}
.private-panel dl{overflow-wrap:anywhere}
.word-card,.panel,.person-card{overflow-wrap:anywhere}
.connected-form{display:grid;gap:14px}
.connected-form[data-kind="attributes"] label{margin:0}
.connected-form.compact-form label{margin:0}
.check-label{display:flex;align-items:flex-start;gap:8px}
.check-label input{width:auto;flex-shrink:0}
.connected-form textarea{min-height:90px}
.history-entry{padding:1rem 0;border-bottom:1px solid #ddd}
.panel.history-entry{padding:24px}
.annotation{border-left:3px solid #d5c4a5;padding:8px 12px;margin:10px 0}
.utilities a{display:block;font-size:12px;line-height:1.8}
.person-card .card-actions{flex-wrap:wrap}
body.busy main{opacity:.75}

.avatar-unset{display:grid;place-items:center;flex-shrink:0;background:#eee8dd;color:#6b6254;border:1px dashed #b8ad9a;font-size:11px;border-radius:50%;width:64px;height:64px}
.operator-context{padding:12px 16px;background:#f3efe5;border-radius:10px}
.operator-context dt,.operator-catchcopy small,.context-label{font-size:11px;color:var(--muted)}
.operator-context dd{margin:4px 0 14px;white-space:pre-wrap}
.operator-attributes{margin-top:20px}
.profile-attributes{overflow-wrap:anywhere}
.profile-attributes dt{font-size:12px;color:var(--muted)}
.profile-attributes dd{margin:4px 0 16px;white-space:pre-wrap;overflow-wrap:anywhere}
.operator-catchcopy{white-space:pre-wrap}

.page-top{flex-wrap:wrap}

.attendance-extra{border:1px solid #d5c4a5;border-radius:10px;margin:0;padding:14px;display:grid;gap:14px;min-width:0}
.attendance-extra:disabled{opacity:.55}
.attendance-extra input{min-width:0;max-width:100%;box-sizing:border-box}
.attendance-note{white-space:pre-wrap}
.attendance-card{margin-top:16px}
.attendance-card .card-actions{display:flex;flex-wrap:wrap;gap:8px}

.year-end-responses{margin:16px 0}
.response-table{overflow-x:auto}
.response-table table{border-collapse:collapse;width:100%;min-width:560px}
.response-table th,.response-table td{border-bottom:1px solid #ddd;padding:10px 12px;text-align:left;vertical-align:top}
.response-table thead th{background:#f3efe5}
.response-table .response-note{white-space:pre-wrap}
