@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700;800&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{font-family:Manrope,'Segoe UI',sans-serif;color:#172b43;background:#f3f6fa;font-synthesis:none}*{box-sizing:border-box}body{margin:0}button,input,textarea,select{font:inherit}button{cursor:pointer}button:disabled{opacity:.5}a{color:inherit;text-decoration:none}[hidden]{display:none!important}.eyebrow{font-size:.72rem;font-weight:800;letter-spacing:.18em;color:#407fcb;margin:0 0 13px}.brand-mark{display:inline-grid;grid-template-columns:repeat(2,1fr);gap:3px;width:37px;height:37px;transform:rotate(-8deg);flex-shrink:0}.brand-mark i{border-radius:3px;background:#3996e7}.brand-mark i:nth-child(2){background:#ff5c9e}.brand-mark i:nth-child(3){background:#8f6cf1}.brand-mark i:nth-child(4){background:#ffbd3b}
/* TV WEERGAVE: alle maatvoering volgt de werkelijke viewport */
.display-body{background:#091b30;color:#f7fbff;overflow:hidden}.screen-shell{position:relative;width:100vw;height:100dvh;display:flex;flex-direction:column;padding:2.7vh 4vw 2vh;gap:2.3vh;overflow:hidden;background:radial-gradient(ellipse at 88% 0%,#17436a 0%,transparent 36%),linear-gradient(145deg,#0b2037,#071629 85%)}.screen-shell:before{content:'';position:absolute;inset:0;pointer-events:none;background-image:linear-gradient(rgba(255,255,255,.018) 1px,transparent 1px);background-size:100% 9vh}.screen-header,.screen-heading,.schedule-card,.screen-footer{position:relative;z-index:1}.screen-header{display:flex;justify-content:space-between;align-items:center;height:7.3vh;flex-shrink:0;border-bottom:1px solid #29425b;padding-bottom:2.1vh}.brand{display:flex;align-items:center;gap:1vw}.screen-header .brand-mark{width:clamp(28px,2.35vw,48px);height:clamp(28px,2.35vw,48px)}.brand-text{font-size:clamp(20px,1.9vw,38px);font-weight:800;letter-spacing:.09em}.brand-text em{font-size:.54em;font-style:normal;vertical-align:middle;color:#8baacb;letter-spacing:.11em;margin-left:.6vw}.header-right{display:flex;align-items:center;gap:3vw}.live-indicator{font-size:clamp(11px,.85vw,17px);font-weight:800;letter-spacing:.12em;color:#a2c0da;display:flex;align-items:center;gap:.75vw}.pulse,.online-dot{display:inline-block;width:10px;height:10px;border-radius:100%;background:#40d8ad;box-shadow:0 0 13px #40d8ad88}.clock-wrap{display:flex;flex-direction:column;text-align:right}.clock-wrap strong{font-size:clamp(24px,2.35vw,49px);letter-spacing:-.04em;line-height:1}.clock-wrap small{color:#a3bbd3;font-weight:600;font-size:clamp(10px,.85vw,16px);margin-top:.3vh;text-transform:capitalize}.screen-heading{display:flex;align-items:end;justify-content:space-between;flex-shrink:0;min-height:12vh}.screen-heading .eyebrow{font-size:clamp(10px,.84vw,17px);color:#63b7fb;margin-bottom:.6vh}.screen-heading h1{font-size:clamp(34px,3.35vw,78px);line-height:1.14;letter-spacing:-.052em;margin:0;font-weight:800}.screen-lead{font-size:clamp(13px,1.07vw,24px);color:#b2c5d9;margin:.8vh 0 0}.orientation-pill{border:1px solid #31516b;color:#b5cee3;background:#102c46;padding:.9vw 1.4vw;border-radius:999px;white-space:nowrap;font-size:clamp(10px,.83vw,18px);font-weight:600}.orientation-pill span{display:inline-flex;align-items:center;justify-content:center;background:#274e6e;border-radius:50%;width:1.25em;height:1.25em;margin-right:.5em}.schedule-card{background:#f9fbfe;color:#142940;min-height:0;flex:1;display:flex;flex-direction:column;border-radius:1.1vw;box-shadow:0 22px 65px #0003;overflow:hidden}.schedule-card-top{display:flex;align-items:center;justify-content:space-between;padding:2.3vh 2.4vw 1.8vh;flex-shrink:0}.section-kicker{font-size:clamp(10px,.73vw,15px);letter-spacing:.17em;color:#5585b7;font-weight:800}.schedule-card h2{font-size:clamp(20px,1.55vw,36px);letter-spacing:-.035em;margin:.4vh 0 0}.page-info{display:flex;align-items:center;gap:1.3vw;font-weight:800;font-size:clamp(10px,.8vw,16px);color:#637c97}.page-info span:last-child{background:#e6eef8;padding:.6vw .9vw;border-radius:5px;color:#345879;letter-spacing:.08em}.table-head,.session-row{display:grid;grid-template-columns:19% minmax(0,1fr) 22%;align-items:center}.table-head{padding:1.4vh 2.4vw;background:#ecf2f9;border-top:1px solid #e3eaf4;font-size:clamp(10px,.78vw,16px);font-weight:800;letter-spacing:.12em;color:#6482a0;flex-shrink:0}.session-list{flex:1;min-height:0;display:flex;flex-direction:column}.session-row{flex:1;min-height:0;padding:1vh 2.4vw;border-bottom:1px solid #e5edf5;column-gap:1vw}.session-row:nth-child(even){background:#f4f8fd}.row-time b{display:block;font-size:clamp(16px,1.5vw,34px);letter-spacing:-.055em}.row-time small,.row-title small,.row-room small{display:block;font-size:clamp(10px,.77vw,17px);margin-top:.25vh;color:#8aa0b5;font-weight:700}.row-title strong{font-size:clamp(14px,1.28vw,29px);letter-spacing:-.025em;line-height:1.15;display:block}.row-title small{font-size:clamp(9px,.7vw,15px);letter-spacing:.065em;text-transform:uppercase}.row-room{text-align:left}.row-room b{display:inline-block;padding:.5vh 1.25vw;border-radius:.45vw;background:#e5effb;color:#11549b;font-size:clamp(17px,1.55vw,36px);letter-spacing:-.045em;white-space:nowrap}.row-room small{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.session-row.is-changed{background:#fff4df;border-left:.35vw solid #f5a524;padding-left:2.05vw}.is-changed .row-title small,.is-changed .row-room small{color:#b87616}.is-changed .row-room b{background:#ffdda2;color:#855000}.is-cancelled .row-title strong{text-decoration:line-through;color:#8a98a6}.is-cancelled .row-room b{background:#ffe7ea;color:#ba3950}.empty-screen{margin:auto;color:#647c95;font-weight:700;font-size:1.6vw}.page-dots{height:2.7vh;display:flex;justify-content:center;align-items:center;gap:7px;flex-shrink:0}.page-dots span{width:7px;height:7px;border-radius:20px;background:#c8d6e5}.page-dots span.active{width:23px;background:#368de0}.screen-footer{display:flex;flex-direction:column;gap:1.2vh;flex-shrink:0}.notice{display:flex;align-items:center;gap:1.2vw;border:1px solid #295072;background:#112f4c;border-radius:.65vw;padding:1.2vh 1.4vw;min-height:7.2vh}.notice.urgent{background:#583f1c;border-color:#a7792a}.notice-icon{display:grid;place-items:center;flex-shrink:0;border-radius:50%;background:#277ac7;color:white;width:clamp(28px,2.2vw,46px);height:clamp(28px,2.2vw,46px);font-weight:800;font-size:1.3vw}.urgent .notice-icon{background:#e89d23}.notice strong{font-size:clamp(10px,.75vw,16px);color:#81c4ff;letter-spacing:.1em}.notice.urgent strong{color:#ffd18b}.notice p{font-size:clamp(12px,1vw,22px);margin:.25vh 0 0;color:#e9f4ff;font-weight:600}.footer-bottom{display:flex;justify-content:space-between;color:#7693af;font-size:clamp(9px,.68vw,15px);font-weight:600}.footer-bottom b{color:#b2c7db}.footer-dot{color:#46d9b2}
/* Portrait: eigen leesbare layout op smalle hoge schermen */
@media(orientation:portrait){.display-body .screen-shell{padding:3vh 5vw 2.4vh;gap:2.8vh}.display-body .screen-header{height:6vh}.display-body .screen-header .brand-mark{width:4vw;height:4vw;min-width:26px;min-height:26px}.display-body .brand-text{font-size:3vw}.display-body .brand-text em{display:block;font-size:1.35vw;margin:0}.display-body .live-indicator{font-size:1.35vw}.display-body .clock-wrap strong{font-size:4vw}.display-body .clock-wrap small{font-size:1.4vw}.display-body .screen-heading{display:block;min-height:13vh}.display-body .screen-heading .eyebrow{font-size:1.5vw}.display-body .screen-heading h1{font-size:6.5vw}.display-body .screen-lead{font-size:2.25vw;margin-top:1.2vh}.display-body .orientation-pill{display:none}.display-body .schedule-card{border-radius:1.8vw}.display-body .schedule-card-top{padding:2.5vh 3.2vw}.display-body .section-kicker{font-size:1.5vw}.display-body .schedule-card h2{font-size:3.15vw}.display-body .page-info{font-size:1.4vw}.display-body .table-head,.display-body .session-row{grid-template-columns:21% minmax(0,1fr) 23%}.display-body .table-head{padding:1.3vh 3.2vw;font-size:1.5vw}.display-body .session-row{padding:1.1vh 3.2vw}.display-body .session-row.is-changed{padding-left:2.85vw}.display-body .row-time b{font-size:2.8vw}.display-body .row-time small{font-size:1.45vw}.display-body .row-title strong{font-size:2.5vw}.display-body .row-title small{font-size:1.35vw}.display-body .row-room b{font-size:2.7vw;padding:.7vh 1.2vw}.display-body .row-room small{font-size:1.3vw}.display-body .page-dots{height:2vh}.display-body .notice{min-height:7.5vh;padding:1.5vh 2vw;gap:2vw}.display-body .notice-icon{width:4vw;height:4vw;font-size:2vw}.display-body .notice strong{font-size:1.4vw}.display-body .notice p{font-size:2.05vw}.display-body .footer-bottom{font-size:1.3vw;gap:2vw;flex-wrap:wrap}}
/* Voor preview via ?mode=portrait op desktop werkt de CSS met een gesimuleerde portrait viewport */
@media(max-width:800px){.display-body .orientation-pill{display:none}.display-body .screen-lead{font-size:2vw}.display-body .footer-bottom span:nth-child(2){display:none}}
/* ADMINISTRATIE */
.admin-body{background:#f4f7fb;color:#172c43;font-size:14px}.sidebar{position:fixed;width:245px;inset:0 auto 0 0;background:#0b2037;color:white;padding:28px 18px;display:flex;flex-direction:column;z-index:10}.sidebar-logo{display:flex;align-items:center;gap:13px;padding:4px 10px 46px;font-size:21px;font-weight:800;letter-spacing:.07em}.sidebar-logo span:last-child{display:flex;flex-direction:column}.sidebar-logo small{font-size:9px;letter-spacing:.14em;color:#80a4c5;margin-top:2px}.sidebar-label{font-size:10px;font-weight:800;color:#7096b8;letter-spacing:.15em;margin:0 10px 12px}.nav-link{display:flex;gap:14px;align-items:center;padding:15px 16px;border-radius:10px;color:#9cbbd4;margin:2px 0;font-weight:700}.nav-link.active,.nav-link:hover{background:#1d4265;color:white}.sidebar-bottom{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:auto;color:#bdd1e4;font-size:11px;padding:10px}.sidebar-bottom .text-button{width:100%;text-align:left;margin-top:12px}.online-dot{width:8px;height:8px}.text-button{border:0;background:transparent;color:#61adf0;font-weight:700;padding:5px 0}.admin-main{margin-left:245px;padding:40px 4.5vw 28px;max-width:1900px}.admin-top{display:flex;justify-content:space-between;gap:20px;align-items:center;margin-bottom:32px}.admin-top h1{font-size:31px;margin:0;letter-spacing:-.05em}.admin-top h1 span{color:#4475a8;font-weight:500}.admin-top p:not(.eyebrow){color:#758a9c;margin:9px 0 0}.header-actions{display:flex;gap:10px;align-items:center}.primary-btn,.outline-btn{border-radius:9px;padding:12px 17px;font-weight:800;border:1px solid #d3e0ed;white-space:nowrap;display:inline-flex;align-items:center;justify-content:center}.primary-btn{background:#277dd0;border-color:#277dd0;color:white;box-shadow:0 6px 15px #277dd025}.primary-btn:hover{background:#1567b5}.outline-btn{background:white;color:#345879}.outline-btn:hover{border-color:#91b6dc}.stats-row{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:25px}.stat-card,.admin-panel{background:white;border:1px solid #e3ebf3;box-shadow:0 6px 24px #142e4c07;border-radius:12px}.stat-card{padding:20px 24px}.stat-card span{font-size:10px;font-weight:800;letter-spacing:.1em;color:#869aae}.stat-card strong{display:block;font-size:33px;letter-spacing:-.055em;margin:7px 0}.stat-card strong.stat-time{font-size:28px}.stat-card small{font-size:12px;color:#8b9eaf}.admin-panel{margin-bottom:24px;overflow:hidden;scroll-margin-top:25px}.panel-head{padding:25px 27px;display:flex;justify-content:space-between;align-items:center;gap:20px;border-bottom:1px solid #edf1f6}.panel-head .eyebrow{margin-bottom:7px}.panel-head h2{margin:0;font-size:21px;letter-spacing:-.04em}.panel-tools{display:flex;gap:12px}.panel-tools input{width:255px}input:not([type=checkbox]),textarea,select{border:1px solid #dce5ef;background:#fff;border-radius:8px;padding:12px 13px;color:#253d53;outline:none;min-width:0}input:focus,textarea:focus,select:focus{border-color:#418fe0;box-shadow:0 0 0 3px #418fe01a}.table-overflow{overflow-x:auto}.admin-table{width:100%;border-collapse:collapse;text-align:left}.admin-table th{background:#f7f9fc;color:#8a9bad;font-size:10px;letter-spacing:.11em;padding:16px 24px}.admin-table td{border-top:1px solid #eef2f6;padding:16px 24px;white-space:nowrap}.admin-table td:nth-child(2){white-space:normal;min-width:200px}.admin-table td strong{display:block;font-size:13px}.admin-table td small{display:block;font-size:11px;color:#98a7b7;margin-top:5px}.room-tag{background:#eaf3fc;color:#266cae;padding:7px 10px;border-radius:6px;font-size:13px}.status{border-radius:99px;padding:6px 10px;font-size:11px;font-weight:800;white-space:nowrap}.status-normal{background:#e6f7f0;color:#159666}.status-changed{background:#fff0d4;color:#b77809}.status-cancelled{background:#ffe9eb;color:#c03f56}.action-cell{display:flex;gap:7px;align-items:center}.action-btn{border:1px solid #dce6f0;background:white;border-radius:6px;color:#446681;font-weight:700;padding:8px 10px;font-size:11px}.move-btn{border-color:#f3cf91;background:#fff9ef;color:#a86b0b}.delete-btn{color:#b45660}.table-help{margin:0;padding:18px 27px;border-top:1px solid #edf1f6;color:#8094a7;font-size:12px}.empty-table{text-align:center;color:#8a9ba9;padding:35px!important}.settings-form{padding:27px;display:grid;gap:20px}.settings-form label,.edit-form label,.login-card label{font-size:12px;font-weight:800;color:#546c82;display:flex;flex-direction:column;gap:8px}.settings-form input:not([type=checkbox]){width:min(490px,100%)}.settings-form textarea{width:100%;resize:vertical}.check-label{flex-direction:row!important;align-items:center;font-weight:600!important;font-size:13px!important}.check-label input{accent-color:#277dd0;width:17px;height:17px}.small-tag{font-size:10px;letter-spacing:.1em;background:#eef6ff;color:#367cc5;padding:8px 10px;font-weight:800;border-radius:7px}.admin-footer{color:#9aaabb;font-size:12px;display:flex;gap:15px;align-items:center}.app-message{padding:13px 17px;background:#e7f6ef;color:#176e4b;border-radius:8px;margin-bottom:20px;font-weight:700}.app-message.error{background:#ffe8eb;color:#a43245}.login-view{min-height:100dvh;display:grid;place-items:center;background:radial-gradient(at 80% 10%,#1a4870,#071727)}.login-card{width:min(420px,92vw);padding:40px;background:white;border-radius:16px}.login-card .brand-mark{margin-bottom:28px}.login-card h1{font-size:35px;margin:0}.login-card p:not(.eyebrow){color:#72899d;line-height:1.7}.login-card form{display:grid;gap:17px;margin-top:25px}.login-card .primary-btn{margin-top:8px}.error-text{color:#bc374a!important}dialog{border:0;border-radius:16px;box-shadow:0 30px 100px #09203955;padding:0;width:min(570px,94vw);max-height:90vh;overflow-y:auto}dialog::backdrop{background:#081b30ac}.edit-form{padding:30px;display:grid;gap:17px}.modal-header{display:flex;justify-content:space-between;align-items:start;margin-bottom:7px}.modal-header h2{margin:0;font-size:25px}.close-btn{font-size:30px;line-height:1;border:0;background:transparent;color:#7890a4}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.modal-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:12px}
@media(max-width:1150px){.sidebar{width:200px}.admin-main{margin-left:200px;padding:30px 24px}.stats-row{grid-template-columns:repeat(2,1fr)}.admin-top{flex-direction:column;align-items:start}.panel-head{flex-direction:column;align-items:start}.panel-tools{width:100%}}@media(max-width:680px){.sidebar{position:static;width:auto;padding:12px;flex-direction:row;align-items:center;gap:8px}.sidebar-logo{padding:0;font-size:15px}.sidebar-logo .brand-mark{width:26px;height:26px}.sidebar-label,.sidebar-bottom{display:none}.nav-link{font-size:12px;padding:9px}.admin-main{margin:0;padding:20px 12px}.admin-top h1{font-size:26px}.header-actions{flex-wrap:wrap}.stats-row{gap:9px}.stat-card{padding:13px}.panel-head{padding:18px}.panel-tools{flex-wrap:wrap}.panel-tools input{width:100%}.admin-table td,.admin-table th{padding:12px 15px}.form-grid{grid-template-columns:1fr}}
/* v2: volledig scherm gevuld door het rooster; alleen een compacte rondebalk */
.display-body.schedule-only .screen-shell{padding:1.25vh 1.4vw;gap:1.1vh;background:#0a1d32}
.schedule-only .round-bar{height:7vh;min-height:0;display:flex;align-items:center;justify-content:space-between;gap:2vw;flex-shrink:0;color:#fff;padding:0 .9vw}
.schedule-only .round-current{min-width:0;display:flex;align-items:center;gap:1.5vw;font-size:clamp(15px,1.45vw,32px);font-weight:600;white-space:nowrap}
.schedule-only .round-current strong{font-size:clamp(23px,2.35vw,52px);letter-spacing:-.035em}
.schedule-only .round-current>span:last-child{color:#b2cbe0;overflow:hidden;text-overflow:ellipsis}
.schedule-only .round-clock{font-size:clamp(23px,2.5vw,56px);font-weight:800;letter-spacing:-.05em}
.schedule-only .live-dot{width:12px;height:12px;border-radius:100%;background:#3ad7a2;box-shadow:0 0 12px #3ad7a277;flex-shrink:0}
.schedule-only .schedule-card{border-radius:14px;min-height:0}
.schedule-only .table-head,.schedule-only .session-row{grid-template-columns:18% minmax(0,1fr) 24%;column-gap:1.5vw}
.schedule-only .table-head{padding:1.5vh 2vw;font-size:clamp(14px,1.1vw,24px)}
.schedule-only .session-row{padding:1.2vh 2vw;min-height:0;overflow:hidden}
.schedule-only .session-row>div{min-width:0;overflow:hidden}
.schedule-only .row-title strong{font-size:clamp(19px,1.85vw,42px);line-height:1.15;overflow-wrap:anywhere;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-clamp:2;overflow:hidden}
.schedule-only .row-title small{font-size:clamp(12px,1vw,22px);white-space:normal;overflow-wrap:anywhere}
.schedule-only .row-room b{font-size:clamp(18px,1.8vw,40px);white-space:normal;overflow-wrap:anywhere;max-width:100%;line-height:1.12}
.schedule-only .row-room small{font-size:clamp(12px,1vw,20px);overflow-wrap:anywhere}
.schedule-only .row-rounds{display:flex;flex-wrap:wrap;gap:.4vw;align-items:center}
.schedule-only .row-rounds b{min-width:2.65vw;height:2.65vw;display:grid;place-items:center;border-radius:.5vw;color:#134d83;background:#e4effc;font-size:clamp(17px,1.7vw,36px);font-weight:850}
.schedule-only .is-changed{padding-left:1.65vw;border-left:.35vw solid #efa623}
.schedule-only .is-cancelled{background:#fff0f0;border-left:.35vw solid #db3851;padding-left:1.65vw}
.schedule-only .is-cancelled .row-title strong{text-decoration:none;color:#802839}
.schedule-only .is-cancelled .row-title small{color:#bd2944;font-weight:900}
.schedule-only .is-cancelled .row-room b{background:#cb3851;color:white;font-size:clamp(13px,1.27vw,27px)}
.schedule-only .schedule-bottom{height:3.7vh;display:flex;align-items:center;justify-content:space-between;padding:0 2vw;background:#f1f6fd;color:#7791aa;gap:20px;flex-shrink:0}
.schedule-only .round-legend{font-size:clamp(10px,.77vw,17px);font-weight:800;letter-spacing:.06em;display:flex;align-items:center;gap:.4vw}
.schedule-only .round-legend b{color:#165388;background:#e0eaf6;border-radius:4px;padding:.2vh .5vw;font-size:1em}
.schedule-only .page-count{font-size:clamp(11px,.9vw,20px);font-weight:800}
.schedule-only .page-dots{height:auto;flex:1}
@media(orientation:portrait){
 .display-body.schedule-only .screen-shell{padding:1vh 2.2vw;gap:1vh}
 .schedule-only .round-bar{height:6vh}
 .schedule-only .round-current{font-size:2.1vw;gap:1.2vw;flex-wrap:wrap;white-space:normal}
 .schedule-only .round-current strong{font-size:3vw}
 .schedule-only .round-clock{font-size:3.8vw}
 .schedule-only .table-head,.schedule-only .session-row{grid-template-columns:21% minmax(0,1fr) 25%;column-gap:1.3vw}
 .schedule-only .table-head{font-size:1.75vw;padding:1.3vh 2vw}
 .schedule-only .session-row{padding:1.1vh 2vw}
 .schedule-only .row-title strong{font-size:3vw;-webkit-line-clamp:3;line-clamp:3}
 .schedule-only .row-title small{font-size:1.7vw}
 .schedule-only .row-room b{font-size:2.8vw}
 .schedule-only .is-cancelled .row-room b{font-size:1.7vw}
 .schedule-only .row-room small{font-size:1.5vw;white-space:normal}
 .schedule-only .row-rounds{gap:.5vw}
 .schedule-only .row-rounds b{min-width:3.7vw;height:3.7vw;font-size:2.35vw}
 .schedule-only .schedule-bottom{height:3vh}
 .schedule-only .round-legend{font-size:1.3vw}
}
.round-editor{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.round-editor>div{background:#f4f8fd;padding:14px;border-radius:9px;display:grid;gap:7px}
.round-editor strong{color:#254e77}
.round-editor input{width:100%}
.round-checks{display:flex;gap:12px;flex-wrap:wrap}
.round-checks label{flex-direction:row!important;align-items:center;border:1px solid #dce7f3;padding:12px;border-radius:8px;cursor:pointer}
.round-checks input{width:18px;height:18px;accent-color:#2279cb}
@media(max-width:850px){.round-editor{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* v3: opmerkingen op afstand leesbaar in de brede voorlichtingskolom */
.schedule-only .row-title .session-note{
 display:block;max-width:100%;width:fit-content;box-sizing:border-box;
 margin-top:.55vh;padding:.45vh .75vw;border-radius:.35vw;
 background:#d9eafe;color:#103f72;border-left:.28vw solid #1876c7;
 font-size:clamp(19px,1.43vw,32px);font-weight:800;line-height:1.15;
 letter-spacing:0;text-transform:none;overflow-wrap:anywhere;white-space:normal;
 display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-clamp:2;overflow:hidden;
}
.schedule-only .is-changed .row-title .session-note{background:#ffe5af;color:#714300;border-left-color:#cb820e}
@media(orientation:portrait){
 .schedule-only .row-title .session-note{font-size:clamp(20px,2.35vw,32px);padding:.45vh 1.1vw;margin-top:.5vh;border-left-width:.45vw;-webkit-line-clamp:3;line-clamp:3}
}

/* v4: categorie helder herkenbaar op de informatieschermen */
.schedule-only .row-title .session-category{
 display:block;width:fit-content;max-width:100%;margin-top:.35vh;
 background:#e3edf9;color:#153f6a;border:2px solid #c6d9ee;
 border-radius:.38vw;padding:.2vh .7vw;font-size:clamp(16px,1.2vw,27px);
 line-height:1.16;font-weight:850;overflow-wrap:anywhere;white-space:normal;
}
.schedule-only .is-changed .row-title .session-category{background:#fff0ce;border-color:#e4bc6d;color:#784b07}
.schedule-only .is-cancelled .row-title .session-category{background:#ffe4e9;border-color:#e6abb6;color:#8b2d43}
@media(orientation:portrait){
 .schedule-only .row-title .session-category{font-size:clamp(19px,2.4vw,30px);padding:.27vh .85vw;border-radius:.6vw}
}

/* v5: elke roosterregel blijft strikt binnen de eigen cel en eigen hoogte.
   Minder regels per scherm voorkomt stapeling van titel + categorie + opmerking. */
.schedule-only .session-list{min-height:0;overflow:hidden}
.schedule-only .session-row{min-width:0;min-height:0;max-width:100%;overflow:hidden}
.schedule-only .session-row > div{min-width:0;max-width:100%;min-height:0;overflow:hidden}
.schedule-only .row-title{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;min-width:0;min-height:0;max-height:100%;overflow:hidden;gap:.25vh}
.schedule-only .row-title strong{max-width:100%;margin:0;overflow:hidden;overflow-wrap:anywhere;word-break:normal;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-clamp:2}
.schedule-only .row-title small{max-width:100%;margin:0;flex-shrink:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.schedule-only .row-title .session-category{box-sizing:border-box;flex:0 1 auto;min-height:0;max-width:100%;width:fit-content;margin-top:0;overflow:hidden;overflow-wrap:anywhere;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-clamp:2}
.schedule-only .row-title .session-note{box-sizing:border-box;flex:0 1 auto;min-height:0;max-width:100%;width:fit-content;margin-top:0;overflow:hidden;overflow-wrap:anywhere;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-clamp:2}
.schedule-only .row-rounds,.schedule-only .row-room{max-height:100%;overflow:hidden}
.schedule-only .row-room b{max-width:100%;overflow-wrap:anywhere;white-space:normal}
@media(orientation:portrait){
 .schedule-only .row-title{gap:.35vh}
 .schedule-only .row-title strong{-webkit-line-clamp:3;line-clamp:3}
 .schedule-only .row-title .session-note{-webkit-line-clamp:2;line-clamp:2}
}

/* V6: origineel Kroew-logo uitsluitend in de beheeromgeving. */
.admin-body .sidebar-logo { display:flex; flex-direction:column; align-items:flex-start; gap:7px; padding:4px 10px 32px; min-width:0; letter-spacing:normal; }
.admin-body .admin-sidebar-logo { display:block; width:100%; max-width:190px; height:auto; object-fit:contain; }
.admin-body .sidebar-subtitle { display:block; font-size:10px; font-weight:800; letter-spacing:.16em; color:#a9c9e8; }
.admin-body .admin-login-logo { display:block; width:min(270px,100%); height:auto; object-fit:contain; margin:0 0 26px; }
@media(max-width:1150px){.admin-body .admin-sidebar-logo{max-width:150px}}
@media(max-width:680px){.admin-body .sidebar-logo{padding:0;gap:1px;max-width:116px;flex-shrink:0}.admin-body .admin-sidebar-logo{max-width:105px}.admin-body .sidebar-subtitle{font-size:7px;letter-spacing:.08em}}

/* v7: fullscreen berichten, ronde toggles en veilige Excel-preview */
.takeover[hidden]{display:none!important}.takeover{position:fixed;inset:0;z-index:9999;background:#0b2541;color:#fff;display:flex;align-items:center;justify-content:center;text-align:center;padding:5vw;box-sizing:border-box}.takeover-inner{width:100%;max-width:1700px}.takeover-kicker{font-weight:900;letter-spacing:.1em;font-size:clamp(25px,2.6vw,56px);color:#ffcf63;margin-bottom:5vh}.takeover-text{font-weight:850;font-size:clamp(43px,5vw,112px);line-height:1.22;overflow-wrap:anywhere;white-space:pre-wrap}.takeover-urgent{background:#862c18}.takeover-urgent .takeover-kicker{color:#ffe69e}@media(orientation:portrait){.takeover{padding:7vw}.takeover-text{font-size:clamp(45px,6.4vw,90px)}.takeover-kicker{font-size:3.8vw}}.round-toggle{display:flex!important;flex-direction:row!important;align-items:center;gap:8px!important}.round-toggle input{width:18px;height:18px}.import-dialog{width:min(850px,96vw)}.import-dialog .edit-form{gap:14px}.import-preview{max-height:270px;overflow:auto;background:#f4f8fd;border:1px solid #dce6f0;border-radius:9px;padding:10px;font-size:13px}.import-preview table{width:100%;border-collapse:collapse}.import-preview th,.import-preview td{padding:7px;text-align:left;border-bottom:1px solid #dce6f0}.import-dialog select,.import-dialog input[type=file]{max-width:100%;padding:10px;border:1px solid #dce6f0;border-radius:7px}.import-dialog #importFeedback{line-height:1.5;color:#385978;font-weight:700}.import-dialog button:disabled{opacity:.5;cursor:not-allowed}