:root{font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:14px;color-scheme:light;--app:#f3efe7;--paper:#fffcf5;--text:#303442;--muted:#787669;--line:#ded8cc;--accent:#4385f5;--hour:76px}
*{box-sizing:border-box}body{margin:0;height:100dvh;overflow:hidden;background:var(--app);color:var(--text)}button,input,select{font:inherit}button{cursor:pointer;color:var(--text);background:#fffdf8;border:1px solid var(--line);border-radius:7px;padding:7px 10px;font-size:12px;font-weight:600;transition:background .15s,box-shadow .15s}button:hover{background:#fff;box-shadow:0 2px 7px #54412715}button:disabled{opacity:.35;cursor:default;box-shadow:none}button:focus-visible,input:focus-visible,select:focus-visible,.calendar-shell:focus-visible{outline:2px solid var(--accent);outline-offset:2px}input,select{background:#fffefb;color:var(--text);border:1px solid #d5cfc3;border-radius:6px;padding:9px;min-height:36px;width:100%}label{font-size:12px;font-weight:600;color:#656052}label input,label select{margin-top:6px}input::placeholder{color:#9c9689}input:disabled{background:#f0ece4;color:#8c887e}a{color:#2864bd}.primary{background:var(--accent);border-color:var(--accent);color:#fff}.primary:hover{background:#3574df}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}[hidden]{display:none!important}
.appbar{height:48px;padding:0 24px;display:flex;align-items:center;gap:10px}.brand-mark{height:29px;width:29px;background:#4385f5;border-radius:9px;color:white;font-weight:850;font-size:22px;display:flex;align-items:center;justify-content:center;box-shadow:0 2px 3px #245aaf20}.brand-mark span{color:#cce1ff}.brand strong{font-size:16px;letter-spacing:-.5px}.brand strong span{font-weight:450}.brand small{display:block;font-size:8px;letter-spacing:2px;color:#898374;margin-top:2px}.season{font-size:10px;margin-left:12px;color:#847d70}.appbar-actions{margin-left:auto;display:flex;gap:8px;align-items:center}.appbar-actions button{background:transparent;border-color:transparent;font-size:11px}.appbar-actions button:hover{background:#fff9}.appbar-actions #save-status{font-size:10px;color:#8a8274;margin-right:10px}#full{font-size:21px;padding:3px 7px}
.workspace{height:calc(100dvh - 48px);display:flex;flex-direction:column;gap:10px;padding:4px 24px 24px;min-height:0}.library{flex:0 0 58px;display:flex;gap:18px;align-items:center;padding:4px 12px;background:#e9e3d8;border:1px solid #dfd7c8;border-radius:10px;box-shadow:inset 0 2px 3px #6a573708;overflow:hidden}.tray-label{flex:0 0 137px}.tray-label h1{font-size:14px;margin:0;letter-spacing:-.3px}.tray-label h1 span{margin-left:5px;padding:2px 5px;background:#ddd4c5;border-radius:4px;font-size:10px;color:#7c6f5d}.tray-label .eyebrow,.tray-label small{display:none}.tray-scroll{flex:1;min-width:0;height:49px;display:flex;align-items:center;gap:16px;padding:2px;overflow-x:auto;overflow-y:hidden;scrollbar-width:thin;scrollbar-color:#b7aa95 transparent}.blank-deck{display:flex;gap:8px;flex-shrink:0}.blank-card{height:39px;width:91px;padding:4px;display:flex;gap:4px;align-items:center;justify-content:center;background:#fffcf5;border:1px dashed #b9af9f;box-shadow:0 2px 0 #d8cebd}.blank-card>span{font-size:20px;color:#4385f5}.blank-card strong{font-size:11px}.blank-postit{background:#fff0b8;border-color:#c9b165;transform:rotate(2deg)}.blank-postit>span{color:#a57b18}#tray-empty{font-size:11px;white-space:nowrap;color:#8c806c}#card-tray{display:flex;gap:12px;height:43px;flex-shrink:0}#card-tray:empty{display:none}.draft-wrap{position:relative;flex:0 0 160px;width:160px}.draft-card{height:41px;width:100%;padding:3px 8px;text-align:left;background:#e3eeff;border:1px solid #a2bced;border-top:3px solid #4385f5;border-radius:4px;box-shadow:0 2px 0 #bdcde7;cursor:grab;touch-action:none}.draft-card:hover{background:#f0f5ff}.draft-card strong{display:block;white-space:nowrap;padding-right:14px;font-size:13px;line-height:14px;color:#234573}.draft-name{display:block;font-size:10px;font-weight:450;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:14px;color:#63718a}.draft-meta{display:none}.draft-card.selected{outline:2px solid #4385f5;outline-offset:2px}.delete-draft{position:absolute;right:2px;top:3px;z-index:2;border:0;background:transparent;padding:0 3px;font-size:16px;color:#5e7594}.draft-card.postit{background:#ffedb0;border-color:#dcc679;border-top-color:#f6c445;color:#594717;transform:rotate(-1deg);box-shadow:0 2px 0 #d0b970}.draft-card.postit strong,.draft-card.postit .draft-name,.draft-wrap:has(.postit) .delete-draft{color:#6b5621}.library.tray-drop{outline:2px solid #4385f5;outline-offset:-2px;background:#dce9ff}
.board-workspace{display:flex;flex-direction:column;flex:1;min-height:0;min-width:0;gap:9px}.board-topbar{display:flex;gap:14px;align-items:center;min-height:32px}.board-heading{flex:0 0 auto;margin-right:8px}.board-heading .eyebrow{display:none}.board-topbar h2{font-size:19px;letter-spacing:-.65px;margin:0;white-space:nowrap}.segmented{display:flex;gap:2px;align-items:center;padding:2px;background:#e8e2d7;border-radius:8px}.segmented button{padding:6px 9px;font-size:11px;background:transparent;border-color:transparent;color:#877c6b}.segmented button[aria-pressed=true]{background:#fffdf8;color:#3c3d44;box-shadow:0 1px 4px #75634b15}.day-picker select{min-height:31px;margin:0;width:111px;font-size:11px;padding:5px 7px;background:#fffcf5}.board-actions{display:flex;align-items:center;gap:6px;margin-left:auto}.board-actions button{font-size:11px;white-space:nowrap;min-height:31px}.range-label{display:flex;gap:5px;align-items:center;font-size:10px;font-weight:450;margin-right:5px}.range-label select{width:82px;margin:0;padding:5px 6px;min-height:31px;font-size:11px;background:#fffcf5}#time-lock{background:#e7effe;border-color:#c6d6f0;color:#365c95;min-width:105px}#time-lock[aria-pressed=true]{background:#fff0c6;border-color:#e4c472;color:#7b5915}#board-fit[aria-pressed=true]{background:#fffdf8;border-color:#d4cbbb;color:#665e52}
.stage{flex:1;min-height:0;display:flex;flex-direction:column;padding:0 11px;background:#fffdf9;border:1px solid #d1c7b7;border-radius:15px;box-shadow:0 5px 0 #dfd6c7,0 12px 25px #7b624221,inset 0 0 0 4px #f8f3ea;overflow:hidden}.stage-caption{height:32px;flex:0 0 32px;padding:4px 3px;display:flex;gap:12px;align-items:center;justify-content:space-between}.room-filters{display:flex;gap:5px;min-width:0;align-items:center}.room-button{display:flex;gap:5px;align-items:center;background:transparent;border:1px solid transparent;padding:3px 5px;font-size:10px;font-weight:550;white-space:nowrap;color:#71695e}.room-button:hover{background:#f4eee5;box-shadow:none}.room-button[aria-pressed=false]{opacity:.35}.room-dot{height:7px;width:7px;display:block;border-radius:2px;background:var(--color)}.legend{display:flex;gap:9px;color:#8a8174;font-size:9px;white-space:nowrap}.legend span{display:flex;align-items:center;gap:4px}.legend i{width:7px;height:7px;border-radius:2px;background:#fff}.legend .free-dot{background:var(--paper);border:1px solid #c7bcaa}.legend .amber{background:#d9c79b}.legend .red{background:#b54648}.legend .postit-dot{background:#fff0a3;border:1px dashed #bba242}
.calendar-shell{flex:1;min-height:0;overflow:auto;overscroll-behavior:contain;position:relative;background:var(--paper);border:1px solid #cfc5b5;border-radius:2px;scrollbar-width:thin;scrollbar-color:#b3a791 #f1eade}.fit-board .calendar-shell{overflow:hidden}#calendar{display:grid;grid-template-columns:44px var(--tracks);grid-template-rows:24px 24px auto;width:100%;min-width:0;isolation:isolate}.single-day #calendar{grid-template-rows:0 26px auto}.day-head{position:sticky;top:0;z-index:8;display:flex;align-items:center;justify-content:center;min-width:0;overflow:hidden;background:#f1eadd;color:#625a4c;font-size:11px;font-weight:750;border-left:2px solid #c9bcaa;border-bottom:1px solid #dfd4c4}.time-head{left:0;z-index:12;font-size:9px;border-left:0;background:#f5efe3;color:#857a68}.single-day .day-head:not(.time-head){visibility:hidden;overflow:hidden}.room-head{position:sticky;top:24px;z-index:7;display:flex;align-items:center;justify-content:center;min-width:0;overflow:hidden;padding:2px;background:#fffaf0;border-left:1px solid #e7dfd3;border-bottom:3px solid var(--color);color:#756954;font-size:10px;font-weight:700;white-space:nowrap}.single-day .room-head{top:0}.room-head[data-room=unassigned]{color:#9e907c}.room-head[data-room=hoofd]{border-left:2px solid #c9bcaa}.time-column{position:sticky;left:0;z-index:5;background:#f8f2e7;border-right:1px solid #cebfaa;overflow:hidden}.time-label{position:absolute;right:12px;transform:translateY(-6px);font-size:9px;font-variant-numeric:tabular-nums;color:#847764}.ruler-tick{position:absolute;right:0;width:4px;border-top:1px solid #b6a78e;pointer-events:none}.ruler-tick.half{width:7px}.ruler-tick.whole{width:10px;border-color:#8a795f}.room-lane{position:relative;background:var(--paper);border-left:1px solid #eee8de}.room-lane.day-start{border-left:2px solid #c9bcaa}.unassigned-lane{background:#f0ebe2;border-left:1px dashed #d7cdbd}.hour-line{position:absolute;left:0;right:0;border-top:1px solid #ded3c330;pointer-events:none}.unassigned-lane .hour-line{border-color:#d5cbb82b}.availability{position:absolute;left:0;right:0}.availability.uncertain{background:repeating-linear-gradient(135deg,#f2e8ce 0 7px,#d6c49a55 7px 8px)}
.lesson{position:absolute;z-index:2;background:var(--bg);color:#18233a;border:1px solid #0000000e;border-radius:0;margin:0;padding:0 1px;min-width:0;overflow:hidden;cursor:grab;touch-action:none;text-align:center;display:flex;flex-direction:row;align-items:center;justify-content:center;gap:0;container-type:inline-size;box-shadow:none}.lesson:hover{background:var(--bg);filter:brightness(1.06);border-color:#18233a75;box-shadow:none;z-index:3}.lesson-code{display:block;white-space:nowrap;flex-shrink:0;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:14px;font-weight:800;letter-spacing:-.4px;line-height:1;font-variant-numeric:tabular-nums}.lesson time,.lesson .level{display:none}.lesson.conflict{border:1px solid #9f213d;box-shadow:inset 0 0 0 1px #9f213d}.lesson.dragging{filter:brightness(.85)}.lesson.postit{background:#fff0a3ed;color:#69551f;border:1px dashed #aa8830;z-index:4}.lesson.postit:hover{background:#fff4bd}.lesson:focus-visible{outline-offset:-2px}.drop-preview{position:absolute;left:0;right:0;background:#4385f545;outline:2px solid #2563c9;outline-offset:-2px;pointer-events:none;z-index:6}.drop-target{box-shadow:inset 0 0 0 2px #4385f5!important}.drag-ghost{position:fixed;z-index:100;pointer-events:none;background:#fffdf7f5;border:1px solid #4385f5;border-radius:7px;padding:10px 14px;box-shadow:0 8px 25px #524a3c33;color:#275ba6;font-size:12px;max-width:280px}.is-placing .calendar-shell{outline:2px solid #4385f5;outline-offset:1px}.is-placing .room-lane{cursor:crosshair}.empty-board{grid-column:1/-1;padding:24px;font-size:13px;color:#897d6a}.stage-bottom{min-height:25px;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:5px 4px;color:#8c8170;font-size:10px}.stage-bottom #count{margin-left:auto;margin-right:18px}.board-status{display:none}
.eyebrow{font-size:10px;letter-spacing:1.4px;font-weight:750;color:#ad9677}dialog{width:470px;max-width:calc(100vw - 30px);max-height:calc(100dvh - 30px);overflow:auto;border:1px solid #d5c7b2;border-radius:15px;padding:24px;background:#fffcf5;color:var(--text);box-shadow:0 25px 80px #59493144}dialog::backdrop{background:#655c4970;backdrop-filter:blur(4px)}.dialog-top{display:flex;justify-content:space-between;align-items:center}.dialog-top button{border:none;background:transparent;font-size:23px;padding:0 5px;color:#8b7a62}dialog h2{font-size:23px;line-height:1.25;margin:12px 0 9px}dialog h3{font-size:16px;margin:22px 0 6px}dialog p{font-size:13px;line-height:1.65;color:#7a7061}.form-pair{display:grid;grid-template-columns:1fr 1fr;gap:10px}#card-form{display:grid;gap:14px}.create-card{width:100%;min-height:40px;margin-top:4px}.create-card span{font-size:18px;margin-right:4px}#lesson-form .form-pair{margin-top:20px;grid-template-columns:1fr 1.5fr}#detail-code{font-size:30px;font-weight:850;color:#3574df;margin-top:15px}.subtle,#lesson-lock-hint{font-size:11px;color:#968773}#conflict-detail{color:#b03a51;font-size:12px;line-height:1.5}.dialog-actions{display:flex;justify-content:flex-end;flex-wrap:wrap;gap:8px;margin-top:22px}#return-card,#confirm-card{margin-right:auto}#toast{position:fixed;left:50%;bottom:25px;transform:translateX(-50%);z-index:120;max-width:calc(100vw - 30px);display:none;padding:12px 18px;border:1px solid #b8cdee;border-radius:9px;background:#edf4ff;color:#305787;font-size:12px;box-shadow:0 8px 30px #353e5325}
@media(max-width:1100px){.appbar{padding:0 16px}.workspace{padding:4px 16px 20px;gap:8px}.season,#save-status{display:none}.board-topbar{gap:7px}.board-heading{margin-right:0}.board-topbar h2{font-size:17px}.board-actions #undo span{display:none}.segmented button{padding:6px 7px}.range-label{font-size:0;gap:0;margin-right:0}.board-actions button{padding:7px}.day-picker select{width:96px}.board-actions{gap:4px}#time-lock{min-width:98px}.tray-label{flex-basis:130px}.room-button{padding:3px;font-size:9px}.stage-caption{gap:5px}.legend{gap:6px;font-size:8px}}
@media(max-width:760px){.appbar{height:42px;padding:0 12px}.brand small{display:none}.appbar-actions{gap:0}.appbar-actions #print,.appbar-actions #info span{display:none}.workspace{height:calc(100dvh - 42px);padding:3px 9px 14px;gap:7px}.library{flex-basis:52px;padding:3px 8px;gap:8px}.tray-label{flex-basis:87px}.tray-label h1{font-size:12px}.tray-scroll{height:43px;gap:10px}.blank-card{height:34px;width:72px;min-width:72px}.blank-deck{gap:5px}.board-topbar{flex-wrap:wrap;gap:5px}.board-heading{flex:1}.board-topbar h2{font-size:16px}.segmented{margin-left:auto}.day-picker select{width:95px}.board-actions{width:100%;justify-content:flex-end}.range-label{margin-right:auto;font-size:10px;gap:5px}.board-workspace{gap:6px}.stage{padding:0 5px;border-radius:11px}.stage-caption{height:42px;flex:0 0 42px;flex-wrap:wrap;align-content:center;gap:2px}.room-filters{width:100%;gap:3px}.room-button{flex:1;justify-content:center;padding:1px 0;font-size:8px}.room-dot{width:5px;height:5px}.legend{margin-left:auto;font-size:8px}.stage-bottom{font-size:8px;gap:4px;min-height:22px}.stage-bottom #count{margin-right:0}.stage-bottom>span:last-child{display:none}#calendar{grid-template-columns:35px var(--tracks)}.time-label{font-size:8px}.day-head{font-size:9px}.room-head{font-size:9px}}
@media print{@page{size:A3 landscape;margin:8mm}body{height:auto;overflow:visible;background:white}.appbar,.library,.board-topbar,.room-filters,.stage-bottom,#toast{display:none!important}.workspace,.board-workspace,.stage{height:auto;display:block;overflow:visible;padding:0;box-shadow:none;border:0;background:white}.calendar-shell,.fit-board .calendar-shell{overflow:visible}.stage-caption{height:25px}#calendar{--hour:40px!important;min-width:0!important}.day-head,.room-head,.time-column{position:relative;top:auto}*{-webkit-print-color-adjust:exact;print-color-adjust:exact}}
/* Independent day boards: start slots, not a shared calendar axis. */
#planning-board{display:none}.planning-mode .library,.planning-mode .calendar-shell,.planning-mode #board-fit,.planning-mode .range-label{display:none}.planning-mode #planning-board{display:grid;grid-template-columns:repeat(var(--plan-days),minmax(0,1fr));gap:9px;flex:1;min-height:0;padding:3px 1px 5px}.planning-mode .workspace{padding-top:14px}.planning-mode .board-workspace{gap:14px}.planning-mode .stage{padding:0 14px;border-radius:16px}.planning-mode .stage-caption{height:40px;flex-basis:40px}.planning-mode .legend{display:none}.planning-mode .stage-caption:after{content:'★ Voorkeursuur   + Bruikbaar   · Minder geschikt';font-size:10px;color:#97845f;white-space:pre}.plan-day{min-width:0;min-height:0;display:flex;flex-direction:column;background:#f8f3e9;border:1px solid #dfd3c0;border-radius:9px;overflow:hidden;box-shadow:0 2px 0 #d5c8b722}.plan-day-title{height:40px;flex:0 0 40px;padding:9px 7px;display:flex;align-items:center;justify-content:space-between;background:#efe5d3;border-bottom:1px solid #dfd3bf}.plan-day-title h3{font-size:12px;margin:0;letter-spacing:-.2px}.plan-day-title>span{font-size:9px;border-radius:4px;padding:2px 4px;background:#fff8;color:#958269}.plan-room-heads,.plan-row{display:grid;grid-template-columns:28px repeat(var(--plan-rooms),minmax(0,1fr));gap:3px}.plan-room-heads{height:29px;align-items:center;padding:0 4px;flex-shrink:0}.plan-room-heads span{font-size:9px;text-align:center;border-bottom:3px solid var(--color);padding:4px 0;color:#89775d}.plan-room-heads span:first-child{font-size:7px;border:0}.plan-day-grid{display:grid;grid-template-rows:repeat(var(--plan-rows),minmax(0,1fr));gap:4px;flex:1;min-height:0;padding:2px 4px 5px}.plan-row{min-height:0}.plan-time{font-size:8px;display:flex;align-items:center;justify-content:flex-start;color:#8a7963;font-variant-numeric:tabular-nums}.plan-cell{min-height:0;min-width:0;display:flex;gap:1px}.plan-cell>button{flex:1;min-width:0;min-height:0;width:100%;padding:0;border-radius:2px}.plan-slot{border:1px dashed #d6c8ad;background:#fffcf5;box-shadow:inset 0 0 0 2px #fff8;color:#ae9a74}.plan-slot.preferred{background:#fff5d5;border-color:#d9b45c;color:#b3933d}.plan-slot.less{background:#f3eee5;border-color:#e1d8ca;color:#c6bba7}.plan-slot.less .slot-mark{font-size:0}.plan-slot.less .slot-mark:after{content:'·';font-size:13px}.plan-slot:hover{border-color:#aa823d;background:#fff3c8}.slot-mark{font-size:11px}.plan-busy{border:0;background:repeating-linear-gradient(135deg,#e8e2d8,#e8e2d8 3px,#eee9e0 3px,#eee9e0 6px);color:#b6a993;cursor:help}.plan-lesson{background:var(--bg);color:#18233a;border:1px solid #0001;cursor:grab;touch-action:none;overflow:hidden;display:flex;align-items:center;justify-content:center}.plan-lesson:hover{background:var(--bg);filter:brightness(1.06);box-shadow:0 0 0 1px #30344266}.plan-code{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;white-space:nowrap;letter-spacing:-.5px;line-height:1}.plan-postit{background:#ffeda7;border:1px dashed #a58e44}.plan-conflict{outline:1px solid #b8404e;outline-offset:-1px}.plan-more{border:0;border-top:1px solid #e4d9c7;border-radius:0;height:25px;flex:0 0 25px;background:#f3ecdf;font-size:9px;color:#a08c6d}.plan-slot.slot-match{outline:2px solid #4385f5;outline-offset:-2px;background:#edf4ff;color:#4385f5}.plan-slot.slot-no-match{opacity:.32}.plan-drop{outline:2px solid #2963ca!important;background:#d2e4ff!important}.planning-mode .stage-bottom{min-height:31px}.planning-mode .board-actions{gap:7px}#open-lessons{background:#4385f5;color:white;border-color:#4385f5}#unplaced-count{display:inline-block;border-radius:4px;padding:0 4px;background:#ffffff30}#planner-drawer{position:fixed;right:0;top:0;bottom:0;width:310px;z-index:40;display:flex;flex-direction:column;background:#fffcf5;border-left:1px solid #d1c3ab;box-shadow:-12px 0 35px #66502e22}#planner-drawer header{display:flex;justify-content:space-between;align-items:center;padding:18px 16px 13px;background:#eee4d2}#planner-drawer header h2{font-size:20px;margin:4px 0 0}#planner-drawer header button{font-size:24px;background:transparent;border:0;padding:0 4px}#planner-drawer nav{display:flex;gap:5px;padding:10px 12px;border-bottom:1px solid #eee4d3}#planner-drawer nav button{flex:1;font-size:11px}#planner-drawer nav [aria-pressed=true]{background:#e4eeff;color:#285da9;border-color:#adcaef}#planner-drawer section{padding:12px;overflow:auto;min-height:0;flex:1}#planner-drawer p{font-size:12px;line-height:1.6;color:#8d7e65;margin:0 0 12px}#planner-drawer h3{font-size:12px;margin:18px 0 9px}.drawer-create{display:flex;gap:6px;margin-top:9px}.drawer-create button{flex:1;font-size:11px}.planner-pool-card{display:grid;grid-template-columns:49px 1fr;gap:3px 7px;align-items:center;text-align:left;background:white;width:100%;margin-bottom:7px;padding:10px 8px;cursor:grab;touch-action:none;border-radius:6px}.planner-pool-card strong{font-size:15px;color:#3b659c;grid-row:span 2;overflow-wrap:anywhere}.pool-name{font-size:11px;line-height:1.3}.planner-pool-card small{font-size:9px;font-weight:450;color:#9b8b74}.planner-pool-card.selected{border-color:#4385f5;background:#edf4ff;outline:1px solid #4385f5}.drawer-empty{padding:12px;background:#f5eee2;border-radius:6px}#planner-drawer details{margin-top:20px}#planner-drawer summary{font-size:12px;cursor:pointer;margin-bottom:12px;color:#8c7c64}#slot-form{display:grid;gap:12px}#slot-form+.subtle{font-size:10px;margin-top:14px}.saved-slot{display:block;width:100%;font-size:10px;text-align:left;margin-bottom:6px}.plan-dragging #open-lessons{outline:3px solid #abcafb;outline-offset:2px}
@media(max-width:1100px){.planning-mode #planning-board{gap:5px}.planning-mode .stage{padding:0 8px}.plan-day-title{padding:8px 4px}.plan-day-title h3{font-size:10px}.plan-row,.plan-room-heads{grid-template-columns:25px repeat(var(--plan-rooms),minmax(0,1fr));gap:2px}.plan-time{font-size:7px}.plan-day-grid{padding:2px;gap:3px}.plan-room-heads{padding:0 2px}.planning-mode .stage-caption:after{font-size:8px}.planning-mode .board-topbar{flex-wrap:wrap}.planning-mode .board-actions{gap:4px}.planning-mode .day-picker select{width:100px}}
@media(max-width:760px){.planning-mode .workspace{padding-top:6px}.planning-mode .board-workspace{gap:7px}.planning-mode .stage-caption{height:35px;flex-basis:35px}.planning-mode .stage-caption:after{font-size:7px}.planning-mode #planning-board{gap:3px}.plan-day-title h3{font-size:8px}.plan-day-title>span{display:none}.plan-day-title{height:28px;flex-basis:28px}.plan-row,.plan-room-heads{grid-template-columns:20px repeat(var(--plan-rooms),minmax(0,1fr));gap:1px}.plan-time{font-size:6px}.plan-room-heads span{font-size:7px}.slot-mark{font-size:7px}.plan-more{font-size:7px}.plan-day-grid{gap:2px}.planning-mode .board-actions button{font-size:10px;padding:5px}.planning-mode .stage-bottom{font-size:8px}#planner-drawer{width:min(310px,90vw)}}
@media print{#planner-drawer,#open-slots,#open-lessons,#planner-mode{display:none!important}.planning-mode #planning-board{height:650px}.planning-mode .stage{display:flex;height:700px}.plan-more{display:none}}

.planning-mode .room-button[data-room="unassigned"]{display:none}.plan-dragging #planner-drawer{transform:translateX(100%);pointer-events:none}
/* Dance-school studio: the same schedule, viewed as rooms at a chosen moment. */
#locations [data-location=all],#planner-drawer nav,#drawer-slots{display:none!important}#studio-view{width:120px;font-size:12px}.school-mode .stage-caption,.school-mode .day-picker{display:none}.school-mode #planning-board{display:flex!important;flex-direction:column;gap:12px;padding:20px 8px 8px}.school-mode .stage{background:#faf8f2}.school-mode .stage-bottom{border-top:1px solid #e5ddcf;font-size:10px}.school-heading{display:flex;justify-content:space-between;align-items:center;gap:12px}.school-heading h2{font-size:24px;letter-spacing:-.8px;margin:3px 0;color:#34372f}.school-heading .eyebrow{font-size:9px;color:#9c947f}.school-controls{display:flex;align-items:center;gap:14px}.school-controls select{width:130px;font-size:11px}.selected-moment{font-size:24px;font-variant-numeric:tabular-nums;background:#fff;border:1px solid #e1dbcf;padding:7px 16px;border-radius:10px}.dance-floors{display:grid;grid-template-columns:repeat(var(--floors),minmax(0,1fr));gap:20px;flex:1;min-height:140px}.dance-room{display:flex;flex-direction:column;min-height:0;min-width:0}.floor-heading{display:flex;align-items:center;gap:9px;margin-bottom:9px}.floor-heading h3{font-size:14px;margin:0}.floor-heading small{margin-left:auto;color:#8c8677;font-size:10px}.room-symbol{font-size:18px;color:var(--room-color)}.wood-floor{position:relative;flex:1;min-height:100px;display:flex;align-items:center;justify-content:center;gap:10px;padding:22px;background:repeating-linear-gradient(0deg,transparent 0 27px,#aa814b25 28px,#fffa 29px),repeating-linear-gradient(90deg,#e8caa2 0 88px,#e3c094 89px,#edcfab 90px 178px);border:7px solid #e7ddca;border-bottom:10px solid #d4c5ac;box-shadow:inset 0 4px 12px #986e3330,0 5px 0 #dfd5c4,0 10px 20px #78654312;border-radius:4px;overflow:hidden}.wood-floor:after{content:'';position:absolute;bottom:12px;left:20px;right:20px;height:4px;background:#ac875554;border:1px solid #fff5;pointer-events:none}.floor-mirror{position:absolute;top:0;left:12%;right:12%;height:10px;background:linear-gradient(120deg,#b1c7c5,#f6ffff,#c4d7d1);border:1px solid #9eb5b155}.floor-watermark{position:absolute;left:0;right:0;top:45%;text-align:center;font-size:32px;letter-spacing:9px;color:#90683413;font-weight:900;pointer-events:none}.floor-drop{position:relative;border:1px dashed #9a795875;background:#fff9e7b0;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:14px;min-height:95px;max-width:100%;border-radius:10px;color:#886c49;gap:5px;z-index:1}.floor-plus{font-size:28px;font-weight:400}.floor-drop strong{font-size:12px}.floor-drop small{font-size:10px;font-weight:400;max-width:210px}.floor-fit{border:2px solid #4385f5;background:#f0f6ffe6;color:#3563b0}.floor-unfit{opacity:.65}.floor-lesson{position:relative;z-index:2;background:var(--bg);color:#172842;border:1px solid #fff8;border-radius:4px;box-shadow:0 5px 0 #0002,0 8px 16px #64482020;padding:14px;max-width:210px;display:flex;flex-direction:column;gap:5px;align-items:center;cursor:grab;touch-action:none}.floor-lesson:hover{background:var(--bg);filter:brightness(1.05)}.floor-lesson strong{font-size:28px;overflow-wrap:anywhere}.floor-lesson span{font-size:12px}.floor-lesson small{font-size:10px;max-width:150px;font-weight:450}.floor-postit{background:#ffeda7!important;border:1px dashed #a58e44}.floor-program{margin-top:13px;display:flex;flex-wrap:wrap;gap:4px;align-content:flex-start;max-height:92px;overflow:auto;min-height:50px}.floor-program>.eyebrow{width:100%;font-size:8px;letter-spacing:1px;margin-bottom:2px;color:#a59980}.floor-program p{font-size:11px;color:#a0927a}.program-lesson{display:flex;align-items:center;gap:6px;background:#fffdf9;border:1px solid #e6dfd2;padding:5px 7px;font-size:10px;cursor:grab;touch-action:none;border-radius:5px}.program-lesson time,.program-lesson small{font-size:9px;color:#a29885}.program-lesson.active{border-color:var(--room-color);box-shadow:inset 0 -2px var(--room-color)}.studio-timeline{flex-shrink:0;border-top:1px solid #e4ddce;padding-top:10px}.timeline-caption{display:flex;justify-content:space-between;align-items:center;margin-bottom:9px;gap:8px}.timeline-caption strong{font-size:11px}.timeline-caption>span{font-size:9px;color:#a09277}.studio-ruler{height:49px;display:grid;grid-template-columns:repeat(57,minmax(0,1fr));padding:0 15px 0 0;gap:1px}.time-tick{position:relative;padding:0;height:24px;min-width:0;border:0;border-radius:2px;background:#e7e0d2;box-shadow:inset 0 -6px #ffffff80}.time-tick:after{content:'';position:absolute;bottom:-4px;left:50%;height:5px;width:1px;background:#b9ae9b}.time-tick span{position:absolute;top:32px;left:0;font-size:9px;font-weight:500;color:#8f826a}.time-tick.preferred{background:#ffc957}.time-tick.usable{background:#9ec6ed}.time-tick.less{background:#d0b9c2}.time-tick.current{outline:2px solid #303c54;outline-offset:2px;z-index:2}.time-tick.current:before{content:'';position:absolute;top:-7px;left:50%;transform:translateX(-50%);border-top:5px solid #303c54;border-left:4px solid transparent;border-right:4px solid transparent}.studio-week{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:7px;flex-shrink:0}.studio-week button{display:flex;align-items:center;justify-content:center;gap:9px;padding:9px 4px;background:#eee8dc;border:1px solid transparent;border-radius:8px}.studio-week button strong{font-size:12px}.studio-week button small{font-size:9px;color:#9e927e;font-weight:400}.studio-week button.selected{background:#fff;border:1px solid #4385f580;box-shadow:0 2px 0 #4385f533}.hours-editor{background:#fff;border:1px solid #e1d9c8;border-radius:9px;padding:10px 14px;flex-shrink:0}.hours-editor strong{font-size:12px}.hours-editor p{font-size:10px;color:#9c8a6a;margin:3px 0 7px}.hours-editor form{display:flex;align-items:flex-end;gap:9px}.hours-editor label{font-size:9px;gap:3px}.hours-editor input,.hours-editor select{padding:6px;font-size:11px}.hours-editor button{font-size:11px;padding:7px 10px}.reset-hours{font-size:9px!important;padding:3px!important;border:0;background:transparent;color:#aa806a;margin-top:5px}.pool-wrap{position:relative}.pool-wrap .planner-pool-card{padding-right:24px}.pool-remove{position:absolute;right:2px;top:2px;padding:2px 5px;background:transparent;border:0;color:#ac9e89}.course-summary{display:grid;grid-template-columns:45px 1fr 25px;gap:3px 8px;padding:10px 0;border-bottom:1px solid #eee6d8}.course-summary>strong{grid-row:span 2;font-size:13px;color:#4671a5;align-self:center;overflow-wrap:anywhere}.course-summary>span{font-size:10px;line-height:1.4}.course-summary>small{grid-column:2;font-size:9px;color:#9b8b70}.course-add{grid-column:3;grid-row:1 / 3;padding:3px;align-self:center;border:0;background:#e7effa;color:#4385f5}.studio-week-mode .stage-caption:after{content:'Voorkeuren per doelgroep · aanpasbaar via Geschikte uren'}.school-mode #room-buttons{display:none}#create-dialog{max-height:95dvh;overflow:auto}#planner-drawer{width:320px}.school-mode .board-heading h2{font-size:18px}.school-mode .board-heading .eyebrow{display:none}
@media(max-width:900px){.dance-floors{gap:10px}.wood-floor{padding:12px;border-width:4px}.floor-lesson strong{font-size:20px}.floor-heading h3{font-size:12px}.floor-heading small{font-size:8px}.studio-week button{gap:4px}.timeline-caption>span{font-size:8px}.school-mode #planning-board{padding:10px 0 3px}.school-heading h2{font-size:20px}.floor-program{max-height:65px}.board-actions{flex-wrap:wrap}.school-mode .board-topbar{gap:5px}.school-mode .board-actions button{padding:6px}}
@media print{#planning-board,#planner-drawer,#studio-view,#open-lessons,#open-slots{display:none!important}.calendar-shell{display:block!important}.stage-caption{display:flex!important}}
.planning-mode.school-mode .stage-caption{display:none}.school-mode .dance-floors:has(.dance-room:only-child){grid-template-columns:minmax(0,700px);justify-content:center}.school-mode .dance-room:only-child{width:100%}.time-tick.preferred:after{background:#be932d}.time-tick.usable:after{background:#5994c6}.time-tick.less:after{background:#af8293}
.day-floor{align-items:flex-start;padding:22px 13px 17px;overflow:auto;scrollbar-width:thin}.floor-day-plan{display:flex;flex-direction:column;gap:9px;width:100%;position:relative;z-index:1}.day-lesson{display:grid;grid-template-columns:auto 1fr;gap:3px 12px;max-width:none;width:100%;padding:12px 14px;text-align:left;align-items:center;box-shadow:0 3px 0 #0002,0 4px 10px #64482012}.day-lesson strong{grid-row:span 2;font-size:23px;min-width:45px}.day-lesson span{font-size:12px;font-weight:650;text-align:right}.day-lesson small{font-size:10px;max-width:none;justify-self:end;text-align:right;line-height:1.4}.day-free{display:grid;grid-template-columns:21px 1fr;gap:3px 6px;align-items:center;width:100%;padding:9px 12px;background:#fffaf0b8;border:1px dashed #ab8d6670;border-radius:4px;text-align:left;color:#8a7456}.day-free .free-symbol{grid-row:span 2;font-size:22px;font-weight:400}.day-free strong{font-size:11px}.day-free small{font-size:9px;font-weight:450}.day-free.floor-fit{border:2px solid #4385f5;background:#eff6fff0;color:#3563b0}.day-free.floor-unfit{opacity:.6}.day-floor:after{display:none}.planner-pool-card,.floor-lesson,.program-lesson{user-select:none}.school-mode .selected-moment{font-size:20px}.school-mode .selected-moment:before{content:'START ';font-size:9px;letter-spacing:1px;color:#a18e71;margin-right:5px}
.school-mode:has(#planner-drawer:not([hidden])) .workspace{padding-right:340px}.school-mode #planner-drawer{top:48px}.floor-day-plan{max-height:100%;height:100%;display:grid;grid-template-rows:repeat(var(--items),minmax(0,1fr));align-content:start;gap:8px}.floor-day-plan>button{max-height:80px;min-height:0;overflow:hidden}.day-floor{overflow:hidden}.day-lesson strong{font-size:clamp(14px,1.6vw,23px)}.time-tick.time-no-fit{opacity:.25}.plan-slot.unrated{background:#fffcf5;border-color:#ded4c1;color:#c1b49c}@media(max-height:780px){.floor-day-plan{gap:5px}.day-lesson{padding:5px 9px}.day-lesson small{font-size:8px}.day-lesson span{font-size:10px}.day-free{padding:4px 8px}.day-free small{font-size:8px}.school-mode #planning-board{gap:9px;padding-top:10px}.school-heading h2{font-size:20px}.wood-floor{padding-top:16px;padding-bottom:10px}}@media(max-width:1100px){.school-mode:has(#planner-drawer:not([hidden])) .workspace{padding-right:24px}.day-lesson{grid-template-columns:1fr}.day-lesson strong{grid-row:auto}.day-lesson small{display:none}.day-lesson span{font-size:10px;text-align:left}.day-free strong{font-size:10px}}
/* Week planning keeps every day visible beside the course drawer. */
.studio-week-mode:has(#planner-drawer:not([hidden])) .workspace{padding-right:290px}.studio-week-mode #planner-drawer{width:270px;top:48px}.studio-week-mode .day-picker{display:none}.studio-week-mode .stage{padding:0 8px}.studio-week-mode #planning-board{gap:6px}.studio-week-mode .stage-caption:after{display:none}.studio-week-mode .stage-caption{gap:10px}.studio-week-mode #week-placement-time{display:flex;align-items:center;gap:5px;font-size:10px;white-space:nowrap}.studio-week-mode #week-start{width:87px;min-height:28px;font-size:11px;padding:3px 6px;margin:0}.studio-week-mode .room-filters{margin-left:auto}.studio-week-mode .plan-day-title{padding:8px 4px}.studio-week-mode .plan-day-title h3{font-size:11px}.studio-week-mode .plan-room-heads,.studio-week-mode .plan-row{grid-template-columns:27px repeat(var(--plan-rooms),minmax(0,1fr));gap:2px}.studio-week-mode .plan-day-grid{padding:2px 3px 5px}.studio-week-mode .plan-time{font-size:8px}.studio-week-mode .board-actions{gap:5px}.studio-week-mode .board-topbar{flex-wrap:wrap;gap:7px}.studio-week-mode .board-heading h2{font-size:18px}.studio-week-mode #studio-view{width:145px}.studio-week-mode .stage-bottom #board-scale{display:none}.studio-week-mode .stage-bottom{font-size:9px}.studio-week-mode .course-summary{grid-template-columns:36px 1fr 23px;gap:3px 5px}.studio-week-mode .planner-pool-card{grid-template-columns:46px 1fr}.studio-week-mode .pool-name{font-size:10px}

body:not(.studio-week-mode) #week-placement-time{display:none}

/* A lesson spans every occupied start row, with one label and one drag target. */
.plan-cell{position:relative}.plan-cell>.plan-lesson{position:absolute;top:0;z-index:3;border-radius:0;border:0;border-bottom:1px solid #fff9;justify-content:center}.plan-cell.lesson-continuation{background:transparent}.plan-lesson .plan-code{pointer-events:none}.plan-cell>.plan-lesson:hover{z-index:4;box-shadow:inset 0 0 0 1px #30344288}.plan-cell>.plan-postit{border:1px dashed #a58e44;background:#ffeda7}.plan-cell>.plan-conflict{outline:2px solid #b8404e;outline-offset:-2px}
.plan-row .plan-time{align-items:flex-start;line-height:10px;padding-top:1px}
#lesson-dialog{width:580px;max-width:calc(100vw - 30px);max-height:94dvh;overflow:auto;padding:22px}#lesson-dialog .editor-heading{display:flex;gap:15px;align-items:center;margin:9px 0}#lesson-dialog #detail-code{font-size:26px;margin:0;min-width:55px}#lesson-dialog h2{font-size:19px;margin:0}#lesson-dialog #lesson-time{font-size:11px;margin:4px 0;color:#94846d}.editor-fields{display:grid;grid-template-columns:1fr 1fr;gap:10px 14px}.editor-wide{grid-column:1 / -1}.editor-times{display:grid;grid-template-columns:1fr 1fr 1fr;gap:12px;margin-top:14px;padding:12px;background:#f0eadf;border-radius:8px}.editor-fields input,.editor-fields select,.editor-times input{font-size:12px;min-height:34px;padding:7px}.editor-fields textarea{font:inherit;font-size:12px;width:100%;border:1px solid #d5cfc3;background:#fffefb;border-radius:6px;padding:8px;margin-top:6px;resize:vertical}.editor-check{display:flex;align-items:center;gap:8px;margin-top:12px;font-size:11px}.editor-check input{width:auto;min-height:0;margin:0}#editor-error{font-size:12px;color:#a5353c;line-height:1.4;margin:10px 0}#editor-error:empty{display:none}#lesson-dialog .subtle{font-size:10px;line-height:1.5}#lesson-dialog .dialog-actions{flex-wrap:wrap;gap:7px;margin-top:14px}#lesson-dialog .dialog-actions button{font-size:11px}#lesson-dialog #conflict-detail{font-size:11px;line-height:1.5;color:#a5353c}
/* Reservations stay recognizable across every board and the lesson drawer. */
.week-context{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:7px 10px;margin-bottom:5px;background:#fffaf1;border:1px solid #e4dccd;border-radius:9px;font-size:10px;flex-shrink:0}.week-context label{display:flex;align-items:center;gap:6px;margin:0;font-size:10px}.week-context input{width:132px;padding:4px 6px;min-height:28px;font-size:11px}.week-context button{font-size:10px;padding:6px 9px}.week-context button[aria-pressed=true]{background:#4385f5;color:white;border-color:#4385f5}#week-context-label{color:#736950}.special-legend{margin-left:auto;color:#b45300;font-weight:700}.special-legend b{color:#007f83;margin-left:10px}.drawer-create{flex-wrap:wrap}.drawer-create button{flex:1 0 42%}#drawer-new-event{background:#ffe5be;color:#944500}#drawer-new-private{background:#c5f7ef;color:#006b6c}
.card-once{--bg:#FFAB32!important;background:#FFAB32!important;color:#432800!important;box-shadow:inset 0 0 0 2px #ef8700!important}.card-private{--bg:#35D6C3!important;background:#35D6C3!important;color:#064940!important;box-shadow:inset 0 0 0 2px #009d91!important}.card-once,.card-private{position:relative}.plan-lesson.card-once,.plan-lesson.card-private,.lesson.card-once,.lesson.card-private{position:absolute}.card-once:after,.card-private:after{content:attr(data-badge);position:absolute;right:2px;bottom:1px;font-size:8px;line-height:1;opacity:.8;pointer-events:none}.kind-note{color:#746144!important;font-size:9px;grid-column:2}.course-summary>strong{cursor:pointer}.editor-fields [hidden],#create-recurrence [hidden]{display:none!important}
@media print{.week-context{border:0}.week-context button,.week-context label{display:none}.card-once,.card-private{print-color-adjust:exact;-webkit-print-color-adjust:exact}}
.week-nav{display:flex;gap:3px}.week-nav button{padding:5px 9px}#week-context-label{font-weight:700;color:#4e5863}.week-context{gap:7px}.week-context .special-legend{font-size:9px}#season-dialog{width:min(960px,96vw);max-height:94dvh;overflow:auto}#season-months{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.season-month{padding:10px;background:#fffaf1;border:1px solid #eee4d4;border-radius:8px}.season-month h3{font-size:12px;margin:0 0 8px;text-transform:capitalize}.month-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:3px}.month-grid button{position:relative;padding:5px 0;min-width:0;border:0;background:transparent;font-size:10px}.month-grid .weekday{text-align:center;font-size:9px;color:#958773}.month-grid .selected-week{background:#dceaff}.month-grid .is-today{outline:1px solid #4385f5}.month-grid .has-event:after,.month-grid .has-private:before{content:'';position:absolute;width:5px;height:5px;background:#FFAB32;bottom:1px;left:50%;border-radius:50%}.month-grid .has-private:before{background:#14b9a6;left:30%}@media(max-width:750px){#season-months{grid-template-columns:repeat(2,minmax(0,1fr))}}@media print{.week-nav,#base-week,#open-season{display:none!important}}
/* The board, rather than the toolbar, carries the week identity. */
.stage-caption,.studio-week-mode .stage-caption{display:grid!important;grid-template-columns:minmax(95px,1fr) minmax(260px,2fr) minmax(95px,1fr);align-items:center;gap:8px;min-height:65px;margin-bottom:4px}.board-identity{text-align:center;grid-column:2;grid-row:1;min-width:0}.board-identity h2{font-size:clamp(15px,1.55vw,22px);line-height:1.25;margin:3px 0;color:#263b55;font-weight:800}.board-identity p{margin:3px 0;font-size:11px;color:#746953;font-weight:500}.stage-caption #week-placement-time{grid-column:1;grid-row:1}.stage-caption #room-buttons{grid-column:3;grid-row:1;justify-content:flex-end;flex-wrap:wrap;margin:0}.stage-caption .legend{grid-column:1 / -1;justify-content:center}.stage-caption:after{display:none!important}.planning-mode.school-mode .stage-caption{display:grid!important}.school-mode .stage-caption #week-placement-time{visibility:hidden}#week-context-label{display:none}.week-context{justify-content:center}.week-context .special-legend{margin-left:6px}.plan-lesson{display:flex;flex-direction:column;justify-content:center;align-items:center;gap:3px}.lesson-number{display:block!important;font-size:10px;font-weight:600;line-height:1.1;white-space:nowrap;letter-spacing:0;text-transform:none}.plan-lesson .plan-code{flex:none}.planner-pool-card .lesson-number{grid-column:2;color:#6c5c45}.lesson .lesson-number{font-size:9px!important}.day-lesson .lesson-number{font-size:12px}.course-summary .lesson-number{font-size:9px}#series-editor{padding:10px;border:1px solid #e0d7c5;border-radius:8px;margin:10px 0;background:#fffaf0}#series-editor summary{font-weight:700;cursor:pointer;font-size:12px}#series-editor p{font-size:11px;line-height:1.4}#series-editor label{margin-top:7px}#series-preview{color:#305c91;font-weight:600}@media(max-width:800px){.stage-caption,.studio-week-mode .stage-caption{grid-template-columns:90px 1fr 90px}.board-identity h2{font-size:15px}.board-identity p{font-size:10px}}
#training-editor{margin:10px 0;padding:10px;border:1px solid #d8d0bd;background:#fffaf0;border-radius:8px}#training-editor[hidden]{display:none}#training-editor summary{font-weight:700;font-size:12px;cursor:pointer}#training-editor p{font-size:11px;line-height:1.5}#training-dates{max-height:215px;overflow:auto;border:1px solid #e9dfcc;border-radius:5px}.training-date-row{display:flex;flex-direction:row;align-items:center;gap:8px;padding:7px;margin:0;border-bottom:1px solid #eee5d7;font-size:11px}.training-date-row input{width:16px;height:16px;min-height:0;padding:0;margin:0;flex-shrink:0}.training-current{background:#e3efff;font-weight:700}
#planner-drawer>nav{display:flex!important;gap:5px;margin:0 14px 10px;padding:4px;background:#ede6d9;border-radius:8px}#planner-drawer>nav button{flex:1;padding:8px 4px;font-size:12px;border:0;border-radius:5px;background:transparent}#planner-drawer>nav button[aria-pressed=true]{background:#fff;color:#315e9b;box-shadow:0 1px 3px #0001}#planner-drawer>nav [hidden],#drawer-events[hidden],#drawer-lessons[hidden],#event-times[hidden],#week-events[hidden]{display:none!important}#drawer-events{padding:0 16px;overflow:auto}#drawer-events>p{font-size:11px;color:#8c7c64;line-height:1.5}#new-school-event{width:100%;margin-bottom:14px;font-size:12px}.school-event-list-row{padding:10px 0;border-bottom:1px solid #e8decd}.school-event-list-row>small{font-size:10px;color:#8e7955}.school-event-chip{display:flex;flex-direction:column;gap:3px;width:100%;text-align:left;white-space:normal;padding:7px;border-radius:5px;border:1px solid transparent;margin-top:4px}.school-event-chip strong{font-size:11px;overflow-wrap:anywhere}.school-event-chip small{font-size:9px;font-weight:400}.own-event{background:#ffbb4f;color:#513305;border-color:#ec990f}.external-event{background:#f2efe7;color:#7b7468;border-color:#dcd5c7}.event-jump{font-size:10px;padding:4px 0;border:0;background:transparent;color:#396ea7}#week-events{display:grid;grid-template-columns:repeat(var(--event-days),minmax(0,1fr));gap:6px;flex-shrink:0;max-height:150px;overflow:auto;padding:3px 0 8px}.event-day{min-width:0}.event-day-title{font-size:9px;color:#85765e}.event-day .school-event-chip strong{font-size:10px}#school-event-dialog{width:600px;max-height:94dvh;overflow:auto}#school-event-form{display:grid;gap:10px}#school-event-form h2{margin:0}#school-event-form textarea{width:100%;box-sizing:border-box}#event-room-options{border:1px solid #e5dac6;border-radius:7px;padding:10px}#event-room-options legend{font-weight:700;font-size:12px}#event-room-options p,#event-conflicts{font-size:11px;line-height:1.5}#event-conflicts{color:#b55a28}#event-error{color:#b33142;font-size:12px}#event-room-options .editor-check{margin:5px 0;font-size:11px}@media print{#week-events{max-height:none;overflow:visible}.school-event-chip{print-color-adjust:exact;-webkit-print-color-adjust:exact}}
#chosen-dates-editor{margin:10px 0;padding:10px;border:1px solid #ddd2ba;background:#fffaf0;border-radius:8px}#chosen-dates-editor[hidden]{display:none}#chosen-dates-editor h3{font-size:13px;margin:0 0 6px}#chosen-dates-editor p{font-size:11px;line-height:1.5}#chosen-dates-list{max-height:230px;overflow:auto}#chosen-dates-summary{font-weight:700;color:#345b87}
