/* v0.3: fixed wording stays readable; authored paragraphs retain their own breaks. */
.copy-phrase{display:inline-block;max-width:100%;vertical-align:top;word-break:normal;overflow-wrap:normal;text-wrap:pretty}
.fixed-copy{word-break:normal;overflow-wrap:normal;text-wrap:pretty}
.status-word,.counts>span,.answer-buttons label,.report-table th{white-space:nowrap;overflow-wrap:normal;word-break:normal}
.counts{font-size:14px}.counts b{font-size:19px}
.schedule-modes{display:flex;flex-wrap:wrap;gap:8px}
.schedule-modes .btn{white-space:nowrap;word-break:normal;flex:1 0 auto;min-width:0}
.answer-buttons{display:flex;flex-wrap:wrap}.answer-buttons label{flex:1 0 auto;min-width:max-content}
.calendar-toolbar strong{white-space:nowrap;word-break:normal;overflow-wrap:normal}
.listing-filters{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:stretch;gap:10px}
.listing-filters>.tabs,.listing-filters>.search{grid-column:1/-1;min-width:0;width:100%}
.listing-filters>select{width:100%;min-width:0}
.listing-filters .search{margin:0}
.participation-entry{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin-bottom:20px}
.member-class-row,.saved-attendance{display:flex;align-items:center;justify-content:space-between;gap:12px;border-top:1px solid var(--line);padding:14px 0}
.member-class-row>div,.saved-attendance>div{min-width:0;overflow-wrap:anywhere}
.member-class-row>.btn,.saved-attendance>.btn{flex-shrink:0;white-space:nowrap}
.member-class-list{margin-top:16px}
.class-filter{display:grid;gap:7px;margin:16px 0 10px;max-width:360px}
.internal-summary{border-top:1px solid var(--line);padding-top:20px}
.classified-people{display:grid;gap:12px;margin-top:16px}
.classified-people>div{display:grid;grid-template-columns:5em minmax(0,1fr);gap:12px}
.attendance-row{grid-template-columns:minmax(0,1fr) minmax(110px,1fr);gap:10px}
.attendance-row>input[name=note],.attendance-controls{grid-column:1/-1}
.attendance-controls{display:flex;flex-wrap:nowrap;align-items:center;gap:12px;width:100%}
.attendance-controls .check{white-space:nowrap;gap:5px;flex:0 0 auto}
.attendance-controls>.btn{margin-left:auto;white-space:nowrap;min-width:64px;min-height:44px}
.attendance-row .attendance-save{grid-column:auto;justify-self:auto;width:auto}
.attendance-pending{margin-top:20px}.attendance-results{border-top:2px solid var(--line);padding-top:15px}
.attendance-results>h3{margin-bottom:12px}
.report-filters{display:flex;flex-wrap:wrap;gap:16px;align-items:end;margin-top:16px}
.report-filters>label{display:grid;gap:7px;min-width:180px;margin:0}
.report-table th,.report-table td{padding:12px 10px}.report-table td:nth-child(n+3){white-space:nowrap}
.choice-list{display:grid;gap:10px}.choice-list>.check{align-items:flex-start;padding:8px 0;gap:10px}
.choice-list>.check input{margin-top:5px}.choice-list span{min-width:0;overflow-wrap:anywhere}
.choice-list small,.survey-day small{display:block;font-size:13px;color:var(--muted)}
.survey-day{display:grid;grid-template-columns:minmax(0,1fr) 140px;align-items:center;gap:14px;padding:14px 0;border-top:1px solid var(--line)}
.survey-day>span{min-width:0;overflow-wrap:anywhere}.survey-day select{min-width:0;font-size:16px}
.plan-day{display:grid;gap:12px}.plan-day>label{display:grid;gap:6px}
.plan-day>legend{max-width:100%;overflow-wrap:anywhere}
.summary-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:15px}
.summary-grid article{background:var(--paper);border:1px solid var(--line);border-radius:10px;padding:15px;min-width:0}
.summary-grid strong{display:block;font-size:14px;text-wrap:pretty}.summary-grid b{font-size:24px;display:block;margin:8px 0}
.summary-grid p{font-size:14px;overflow-wrap:anywhere}
.day-summary,.group-person-list>article,.group-actuals>li{padding:12px 0;border-bottom:1px solid var(--line);overflow-wrap:anywhere}
.group-actuals{list-style:none;padding:0}.group-actuals>li>strong{display:block}.day-summary h4,.group-person-list h4{margin:0 0 10px}
.group-person-list{display:grid;gap:12px}.group-person-list p{font-size:14px}
@media(max-width:700px){
 .page-heading{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px 12px}
 .page-heading>div{display:contents}.page-heading .eyebrow{grid-column:1;grid-row:1}
 .page-heading h1{grid-column:1;grid-row:2;min-width:0;overflow-wrap:anywhere}
 .page-heading>div>p{grid-column:1/-1;grid-row:3;width:100%;margin:5px 0 0;font-size:14px}
 .page-heading>.btn{grid-column:2;grid-row:1/3;font-size:13px;padding:9px;white-space:nowrap;align-self:center}
 .calendar-toolbar{display:flex;gap:8px;flex-wrap:wrap}
 .calendar-toolbar strong{order:-1;flex-basis:100%;font-size:15px;text-align:center}
 .calendar-toolbar .btn{flex:1 1 auto}.schedule-modes .btn{font-size:14px;padding:10px}
 .answer-buttons{gap:7px}.answer-buttons label{padding:10px 5px;gap:5px;font-size:14px}
 .response-table,.response-table tbody{display:block;width:100%}.response-table thead{display:none}
 .response-table tr{display:grid;grid-template-columns:minmax(0,1fr) max-content;gap:8px;border-bottom:1px solid var(--line);padding:12px 0}
 .response-table td{display:block;border:0;padding:0;min-width:0;overflow-wrap:anywhere}
 .response-table td:nth-child(3){grid-column:1/-1}.response-table td:nth-child(3)>p{margin-top:4px}
 .attendance-controls{gap:8px}.attendance-controls .btn{padding:8px 12px}.attendance-row{grid-template-columns:minmax(0,1fr) minmax(100px,1fr)}
 .attendance-row>input[name=note]{grid-column:1/-1}.attendance-controls .check{font-size:14px}
 .survey-day{grid-template-columns:minmax(0,1fr);gap:8px}.survey-day select{width:100%}
 .summary-grid{grid-template-columns:minmax(0,1fr)}.report-filters>label{min-width:0;flex:1 1 145px}
 .report-table{min-width:570px}.member-class-row .btn{font-size:13px;padding:8px}
}
@media(max-width:360px){.schedule-modes{gap:4px}.schedule-modes .btn{padding:8px 7px}.page-heading>.btn{font-size:12px;padding:8px 6px}.attendance-controls{gap:5px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}
