/* Unterrichtsdokumentation und Darstellung auf sehr schmalen Bildschirmen */
@media (max-width:680px){
  .cardHead{flex-wrap:wrap}
  .cardHead>select{max-width:100%;min-width:0}
}
@media (max-width:380px){
  .shell{padding:9px}
  .panel,.morningCard,.card{min-width:0}
  .panel{padding:10px}
  .grid{grid-template-columns:minmax(0,1fr)}
  .cardHead{display:flex;flex-direction:column;align-items:stretch;gap:10px}
  .cardHead>div,.needHead>*,.traffic>div{min-width:0}
  .cardActions,.lessonActions{width:100%;min-width:0;display:flex;flex-wrap:wrap;justify-content:flex-start;gap:6px}
  .cardActions .btn,.needHead .btn,.lessonActions .btn{
    max-width:100%;min-width:0;white-space:normal;overflow-wrap:anywhere;line-height:1.25
  }
  .needHead{flex-wrap:wrap;align-items:stretch}
  .needTag{max-width:100%;min-width:0;flex-wrap:wrap;overflow-wrap:anywhere}
  .needForm{grid-template-columns:minmax(0,1fr)}
  .row{grid-template-columns:52px minmax(0,1fr);gap:5px}
  .row select,.row input,.row button,.assignmentDetails input{min-width:0;max-width:100%;width:100%}
  .assignmentDetails{min-width:0}
  .actions{min-width:0;flex-wrap:wrap}
  .actions>input{min-width:0;max-width:100%}
  .traffic{grid-template-columns:48px minmax(0,1fr);gap:8px}
  .trafficLight{width:46px;height:46px;font-size:19px}
  /* Kopf der Einsatzzeiten: Buttons behalten ihre Textbreite (nowrap) und rutschen in die nächste Zeile. */
  .presenceHeader .cardActions button{flex:1 1 auto;min-width:auto}
}
.lessonSummary{display:flex;gap:8px;flex-wrap:wrap;margin:15px 0}
.lessonRows{display:grid;gap:9px}
.lessonRow{display:flex;gap:12px;align-items:center;justify-content:space-between;border:1px solid var(--line);border-radius:14px;padding:12px;background:#fdfcf8;min-width:0}
.lessonRow>div{min-width:0}
.lessonRow strong{display:block;overflow-wrap:anywhere}
.lessonRow .sub{display:block;margin-top:4px;overflow-wrap:anywhere}
.lessonActions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end;align-items:center}
.lessonEditor,.lessonHistory,.lessonOld{margin-top:18px;padding:16px;border:1px solid var(--line);border-radius:16px;background:white}
.lessonEditor h3,.lessonHistory h3,.lessonOld h3{margin-bottom:8px}
.lessonForm{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:14px}
.lessonForm label{display:grid;gap:5px;font-size:12px;font-weight:800;min-width:0}
.lessonForm input,.lessonForm textarea{width:100%;min-width:0}
.lessonForm .full,.lessonForm .lessonActions{grid-column:1/-1}
.lessonForm fieldset{display:contents}
.lessonDocs h2,.lessonDocs h3,.lessonHistory{overflow-wrap:anywhere}
.lessonHistory dd{margin:4px 0 12px;white-space:pre-wrap}
.lessonDocs .btn{max-width:100%;white-space:normal;overflow-wrap:anywhere}
.lessonHistory p{padding:8px 0;border-bottom:1px solid var(--line);font-size:13px}
@media (max-width:600px){
  .lessonDocs .cardHead{flex-direction:column;align-items:stretch}
  .lessonDocs .cardHead>div{min-width:0}
  .lessonDocs .cardActions{justify-content:flex-start}
  .lessonRow{flex-direction:column;align-items:stretch}
  .lessonRow .lessonActions{justify-content:flex-start}
  .lessonForm{grid-template-columns:minmax(0,1fr)}
  .lessonEditor,.lessonHistory,.lessonOld{padding:12px}
}
