/* The daily working diary has its own readable layout, without changing the
   existing teacher week grid. Touch controls remain reachable in both iPad orientations. */
.school-agenda-page{max-width:1440px;margin:0 auto;padding:20px 24px 32px;color:#edf3f5;min-width:0}
.school-agenda-page *, .school-agenda-page *::before,.school-agenda-page *::after{box-sizing:border-box}
.school-agenda-page button,.school-agenda-page input,.school-agenda-page select{font:inherit}
.school-agenda-page button{cursor:pointer;touch-action:manipulation}
.school-agenda-page button:focus-visible,.school-agenda-page input:focus-visible,.school-agenda-page select:focus-visible{outline:3px solid #c2e9ee;outline-offset:3px}
.school-agenda-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:0 0 17px}
.school-agenda-eyebrow{font-size:11px;letter-spacing:.16em;color:#b7c8ce;font-weight:650}
.school-agenda-heading h1{font-size:26px;letter-spacing:-.035em;line-height:1.2;margin:5px 0 0;font-weight:730;text-transform:capitalize}
.school-agenda-date-nav{display:flex;align-items:center;gap:5px;flex-wrap:wrap}
.school-agenda-date-nav button,.school-agenda-date-nav input{min-height:44px;padding:9px 12px;color:#e8f1f5;background:#22323b;border:1px solid #465a65;border-radius:6px}
.school-agenda-date-nav button:first-child,.school-agenda-date-nav button:nth-child(3){min-width:44px;font-size:24px;line-height:1}
.school-agenda-date-nav input{max-width:180px;min-width:0;color-scheme:dark}
.school-agenda-week{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:5px;border-bottom:1px solid #41515a;padding-bottom:14px;margin-bottom:12px}
.school-agenda-week button{position:relative;display:flex;align-items:center;justify-content:center;gap:10px;min-height:50px;border:1px solid transparent;border-radius:5px;background:transparent;color:#c8d5dc;padding:8px;font-size:14px;text-transform:capitalize}
.school-agenda-week button strong{font-size:20px;color:#f0f6f8}
.school-agenda-week button[aria-pressed=true]{background:#304750;border-color:#71949d;color:white}
.school-agenda-week button.is-today::after{position:absolute;bottom:4px;width:4px;height:4px;background:#f0c3cc;content:'';border-radius:50%}
.school-agenda-toolbar{display:flex;justify-content:flex-end;align-items:center;gap:12px;margin-bottom:14px}
.school-agenda-source{display:flex;align-items:center;gap:8px;font-size:13px;color:#c5d1d7}
.school-agenda-source select{color:#e9f0f3;background:#22333d;border:1px solid #50636e;border-radius:5px;min-height:40px;padding:7px 9px}
.school-agenda-location-tabs{display:none}
.school-agenda-pending,.school-agenda-holiday,.school-agenda-source-note{font-size:13px;line-height:1.5;margin:0 0 12px;color:#c4d1d8}
.school-agenda-pending{padding:10px 12px;background:#4d422c;border-left:3px solid #c9aa67;color:#f4e3bd;border-radius:0 4px 4px 0}
.school-agenda-holiday{padding:9px 12px;background:#352f3b;border-left:3px solid #b89bc0;color:#e5d6e8}
.school-agenda-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:24px}
.school-agenda-location{min-width:0;border-top:2px solid #829da7}
.school-agenda-location[data-location=ieper]{border-top-color:#7b9fc4}
.school-agenda-location-heading{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:12px 0}
.school-agenda-location h2,.school-agenda-external h2{font-size:20px;letter-spacing:-.02em;margin:0;font-weight:730}
body .school-agenda-add{min-height:44px;border:1px solid #658a94;background:#304b54;color:#f4fcff;border-radius:5px;padding:8px 13px;font-size:14px;font-weight:650}
.school-agenda-list{border-top:1px solid #3c4f59}
.school-agenda-row{--room-accent:#91afb8;position:relative;min-width:0;border-bottom:1px solid #3c4f59;background:#1c2c35}
body .school-agenda-row-open{display:grid;grid-template-columns:68px minmax(0,1fr) 16px;gap:12px;width:100%;border:0;border-left:3px solid var(--room-accent);border-radius:0;min-height:82px;text-align:left;background:transparent;color:#f0f5f7;padding:13px 13px 13px 12px;box-shadow:none}
.school-agenda-time{display:flex;flex-direction:column;gap:4px;align-items:flex-start;font-variant-numeric:tabular-nums;font-size:14px;line-height:1.3}
.school-agenda-time strong{font-size:15px;font-weight:650}
.school-agenda-time small{color:#c4d0d7;font-size:12px}
.school-agenda-row-content{min-width:0;display:flex;flex-direction:column;gap:5px}
.school-agenda-row-title{font-size:15px;line-height:1.35;font-weight:650;overflow-wrap:anywhere}
.school-agenda-row-meta{font-size:13px;line-height:1.4;color:#c0d0d8;overflow-wrap:anywhere}
.school-agenda-row-labels{display:flex;flex-wrap:wrap;gap:5px 9px;font-size:11px;line-height:1.4}
.school-agenda-kind{color:#c0d7dc}
.school-agenda-draft-label{color:#f0ce8d}
.school-agenda-cancelled-label{color:#efc2cd}
.school-agenda-row-reason{font-size:12px;color:#d2bcc4;line-height:1.4}
.school-agenda-now{color:#bcf0d9;font-size:11px}
.school-agenda-row-chevron{align-self:center;font-size:23px;color:#9eb5bf;line-height:1}
.school-agenda-row.is-cancelled{background:#262932}
.school-agenda-row.is-cancelled .school-agenda-row-title{text-decoration:line-through;text-decoration-color:#a78b99;color:#d1c4cc}
.school-agenda-row.is-cancelled .school-agenda-row-open{border-left-style:dashed;border-left-color:#ad8c9d}
.school-agenda-row.is-removed{background:#282c32}
.school-agenda-row.is-removed .school-agenda-row-title{color:#ccbec3}
.school-agenda-row.is-event,.school-agenda-row.is-legacy-event{--room-accent:#56d6e3;background:#193d47}
.school-agenda-row.is-event .school-agenda-row-open,.school-agenda-row.is-legacy-event .school-agenda-row-open{border-left-color:#56d6e3}
.school-agenda-row.is-event .school-agenda-kind,.school-agenda-row.is-legacy-event .school-agenda-kind{color:#8fe8f0}
.school-agenda-row.is-regular{--room-accent:#8ab2b8;background:#273941}
.school-agenda-row.is-external{--room-accent:#e1bd61;background:#34332b}
.school-agenda-row.is-external .school-agenda-kind{color:#e6cc85}
.school-agenda-row.is-reservation{--room-accent:#9caab0;background:repeating-linear-gradient(135deg,#ffffff04 0 1px,transparent 1px 8px),#2b353e}
.school-agenda-row.is-reservation .school-agenda-row-open{border-left-style:dashed;border-left-color:#9caab0}
body .school-agenda-restore{display:block;margin:0 15px 12px 95px;font-size:12px;color:#f1d2da;border:1px solid #75616d;border-radius:4px;background:#3a303b;min-height:40px;padding:7px 10px}
body .school-agenda-day-action{margin:12px 0 0;min-height:44px;border:1px solid #4a606b;border-radius:5px;padding:8px 12px;background:#22333d;color:#dce8ed;font-size:13px}
.school-agenda-empty{font-size:14px;color:#aebec7;padding:25px 12px;margin:0;border-top:1px solid #3c4f59}
.school-agenda-external{margin-top:28px;max-width:100%}
.school-agenda-external h2{font-size:17px;margin:0 0 12px;color:#e4cf90}
.school-agenda-external .school-agenda-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:24px}
.school-agenda-help{font-size:12px;color:#a7bac3;margin:20px 0 0;line-height:1.5}
.school-agenda-error{color:#efb9c5}
.school-agenda-removed-dialog{max-width:min(520px,calc(100vw - 28px));padding:24px;color:#f0f4f6;background:#213039;border:1px solid #617c87;border-radius:8px;line-height:1.5}
@media(hover:hover){.school-agenda-page button:hover{filter:brightness(1.14)}.school-agenda-row-open:hover{background:#ffffff07}}
@media(max-width:1050px){
 .school-agenda-page{padding:16px 18px 28px}
 .school-agenda-heading h1{font-size:23px}
 .school-agenda-date-nav input{max-width:152px}
 .school-agenda-columns{gap:18px}
 body .school-agenda-row-open{grid-template-columns:61px minmax(0,1fr) 12px;gap:9px;padding-left:10px;padding-right:9px}
 .school-agenda-row-title{font-size:14px}
 .school-agenda-row-meta{font-size:12px}
}
/* An 11-inch iPad in portrait gets one clear location; landscape keeps both. */
@media(max-width:900px){
 .school-agenda-heading{align-items:flex-start;flex-direction:column;gap:12px}
 .school-agenda-date-nav{width:100%}
 .school-agenda-date-nav input{margin-left:auto;max-width:200px}
 .school-agenda-toolbar{justify-content:space-between}
 .school-agenda-location-tabs{display:flex;gap:4px;padding:3px;border:1px solid #4c636e;border-radius:6px}
 .school-agenda-location-tabs button{min-height:40px;padding:7px 15px;border:0;border-radius:4px;background:transparent;color:#c0d0d7;font-size:14px;font-weight:650}
 .school-agenda-location-tabs button[aria-pressed=true]{background:#385762;color:#fff}
 .school-agenda-columns{grid-template-columns:1fr}
 .school-agenda-columns[data-location=kortrijk]>.school-agenda-location[data-location=ieper],.school-agenda-columns[data-location=ieper]>.school-agenda-location[data-location=kortrijk]{display:none}
 .school-agenda-external .school-agenda-list{grid-template-columns:1fr}
}
@media(max-width:480px){
 .school-agenda-page{padding:15px 10px 24px}
 .school-agenda-heading h1{font-size:22px}
 .school-agenda-date-nav button,.school-agenda-date-nav input{padding:8px}
 .school-agenda-date-nav input{max-width:145px;font-size:14px}
 .school-agenda-week{gap:2px}
 .school-agenda-week button{flex-direction:column;gap:3px;padding:7px 3px;font-size:12px}
 .school-agenda-week button strong{font-size:18px}
 .school-agenda-toolbar{align-items:stretch;gap:8px}
 .school-agenda-source>span{display:none}
 .school-agenda-source select{font-size:12px;min-width:0;max-width:156px;padding:7px 3px}
 .school-agenda-location-tabs button{padding:7px 10px;font-size:13px}
 .school-agenda-row-title{font-size:14px}
 .school-agenda-row-labels{font-size:11px}
 body .school-agenda-restore{margin-left:84px}
}
@media(prefers-reduced-motion:reduce){.school-agenda-page *{scroll-behavior:auto}}
@media print{.school-agenda-date-nav,.school-agenda-toolbar,.school-agenda-add,.school-agenda-day-action,.school-agenda-restore,.school-agenda-help{display:none!important}.school-agenda-columns{grid-template-columns:repeat(2,minmax(0,1fr))}.school-agenda-columns>.school-agenda-location{display:block!important}.school-agenda-page{padding:0}.school-agenda-row{break-inside:avoid;print-color-adjust:exact;-webkit-print-color-adjust:exact}}
