@font-face{font-family:Outfit;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/outfit-latin-ext-400-normal-5tcqmc2S.woff2)format("woff2"),url(/assets/outfit-latin-ext-400-normal-DHm7mdGe.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Outfit;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/outfit-latin-400-normal-BGsTXAXT.woff2)format("woff2"),url(/assets/outfit-latin-400-normal-DMwTpYkH.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Outfit;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/outfit-latin-ext-600-normal-B85nYjL1.woff2)format("woff2"),url(/assets/outfit-latin-ext-600-normal-CWJcPgd7.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Outfit;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/outfit-latin-600-normal-B7SfZ07L.woff2)format("woff2"),url(/assets/outfit-latin-600-normal-BEfTtDA7.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Outfit;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/outfit-latin-ext-700-normal-CI4iH74K.woff2)format("woff2"),url(/assets/outfit-latin-ext-700-normal-fjS8-Gm7.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Outfit;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/outfit-latin-700-normal-Cu9v6i1X.woff2)format("woff2"),url(/assets/outfit-latin-700-normal-D4itBLBr.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Outfit;font-style:normal;font-display:swap;font-weight:800;src:url(/assets/outfit-latin-ext-800-normal-DRv2ic_2.woff2)format("woff2"),url(/assets/outfit-latin-ext-800-normal-DyhPHUt-.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Outfit;font-style:normal;font-display:swap;font-weight:800;src:url(/assets/outfit-latin-800-normal-CQna6-G7.woff2)format("woff2"),url(/assets/outfit-latin-800-normal-BRHLSPcU.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--paars:#82449a;--paars-dk:#4a2160;--paars-lt:#f1e6f5;--oranje:#e8541a;--oranje-lt:#fde9df;--geel:#e6e43a;--geel-lt:#faf9cf;--groen:#23806f;--groen-lt:#ddf2ec;--rood:#c62d2d;--rood-lt:#fbe3e3;--creme:#fff7ec;--inkt:#2a1238;--grijs:#75677f;--lijn:#ebdfd0;--wit:#fff;--r:18px;--schaduw:0 2px 0 #4a21600f, 0 8px 24px -12px #4a216040;color:var(--inkt);background:var(--creme);-webkit-font-smoothing:antialiased;font-family:Outfit,system-ui,sans-serif}*{box-sizing:border-box}body{background:var(--creme);min-height:100dvh;margin:0}h1,h2,h3,h4{margin:0;line-height:1.15}h1{letter-spacing:-.01em;font-size:1.75rem;font-weight:800}p{line-height:1.45}button{font:inherit;color:inherit;cursor:pointer}button:disabled{cursor:default}input,select,textarea{font:inherit;color:inherit}:focus-visible{outline:3px solid var(--oranje);outline-offset:2px}.sub{color:var(--grijs);font-size:.88rem}.app{max-width:760px;padding-bottom:calc(84px + env(safe-area-inset-bottom));margin:0 auto}.kopbalk{z-index:10;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--lijn);background:#fff7eceb;align-items:center;gap:10px;padding:12px 16px;display:flex;position:sticky;top:0}.kop-titel{color:var(--paars-dk);border-left:2px solid var(--lijn);padding-left:10px;font-weight:700}.demo-label{background:var(--geel);color:var(--inkt);text-transform:uppercase;letter-spacing:.08em;border-radius:99px;padding:3px 8px;font-size:.7rem;font-weight:800}.kop-ik{background:0 0;border:0;border-radius:50%;margin-left:auto;padding:0}main{padding:16px}.pagina{flex-direction:column;gap:12px;display:flex}.tabbalk{z-index:10;background:var(--wit);border-top:1px solid var(--lijn);padding:6px 8px calc(6px + env(safe-area-inset-bottom));justify-content:center;gap:4px;display:flex;position:fixed;bottom:0;left:0;right:0}.tabbalk button{max-width:140px;color:var(--grijs);background:0 0;border:0;border-radius:14px;flex-direction:column;flex:1;align-items:center;gap:2px;padding:7px 4px;font-size:.78rem;font-weight:600;display:flex}.tabbalk button.aan{color:var(--paars);background:var(--paars-lt)}.knop{border:2px solid #0000;border-radius:14px;justify-content:center;align-items:center;gap:8px;padding:12px 18px;font-size:1rem;font-weight:700;text-decoration:none;transition:transform 80ms,filter .15s;display:inline-flex}.knop:active:not(:disabled){transform:scale(.97)}.knop:disabled{opacity:.45}.knop-klein{border-radius:11px;padding:7px 12px;font-size:.88rem}.knop-primair{background:var(--paars);color:#fff}.knop-oranje{background:var(--oranje);color:#fff}.knop-licht{background:var(--wit);border-color:var(--lijn);color:var(--paars-dk)}.knop-gevaar{background:var(--wit);border-color:var(--rood-lt);color:var(--rood)}.knop-tekst{color:var(--paars);background:0 0;border:0;padding-left:4px;padding-right:4px;font-weight:700}.knop:hover:not(:disabled){filter:brightness(1.06)}.icoonknop{background:var(--wit);border:1px solid var(--lijn);width:40px;height:40px;color:var(--paars-dk);border-radius:12px;flex:none;place-items:center;display:grid}.knoppen{flex-wrap:wrap;justify-content:flex-end;gap:10px;margin-top:8px;display:flex}.avatar{color:#fff;border-radius:50%;flex:none;place-items:center;font-weight:800;line-height:1;display:inline-grid}.badge{white-space:nowrap;border-radius:99px;align-items:center;gap:4px;padding:3px 8px;font-size:.74rem;font-weight:700;display:inline-flex}.b-paars{background:var(--paars-lt);color:var(--paars-dk)}.b-oranje{background:var(--oranje-lt);color:#a63a0e}.b-geel{background:var(--geel-lt);color:#6b6900}.b-rood{background:var(--rood-lt);color:var(--rood)}.b-groen{background:var(--groen-lt);color:var(--groen)}.b-grijs{color:var(--grijs);background:#eee8f0}.kop{color:var(--paars-dk);margin-top:10px;font-size:1.05rem;font-weight:800}.titel-rij{justify-content:space-between;align-items:center;gap:10px;display:flex}.balk{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;display:flex}.info-blok{background:var(--paars-lt);border-radius:14px;margin:0;padding:12px 14px;font-size:.92rem}.avg-regel{color:var(--paars-dk);align-items:center;gap:6px;margin:0;font-size:.82rem;display:flex}.laden{border-radius:var(--r);background:linear-gradient(90deg, #fff 30%, var(--paars-lt) 50%, #fff 70%) 0 0/300% 100%;height:120px;animation:1.2s linear infinite laden}.laden-vol{border-radius:0;height:100dvh}@keyframes laden{to{background-position:-300% 0}}.leeg{background:var(--wit);border:2px dashed var(--lijn);border-radius:var(--r);text-align:center;flex-direction:column;align-items:center;gap:8px;padding:26px 18px;display:flex}.leeg p{color:var(--grijs);max-width:380px;margin:0}.leeg .knop{margin-top:8px}.toast{left:50%;bottom:calc(96px + env(safe-area-inset-bottom));z-index:50;background:var(--inkt);color:#fff;box-shadow:var(--schaduw);text-align:center;border-radius:14px;width:max-content;max-width:calc(100vw - 32px);padding:11px 18px;font-weight:600;animation:.2s ease-out op;position:fixed;transform:translate(-50%)}@keyframes op{0%{opacity:0;transform:translate(-50%,8px)}}.link-knop{color:var(--paars);background:0 0;border:0;align-self:center;align-items:center;gap:4px;padding:10px;font-weight:700;display:inline-flex}.veld{flex-direction:column;gap:6px;margin-bottom:12px;display:flex}.veld-label{color:var(--paars-dk);font-size:.88rem;font-weight:700}.veld-hint{color:var(--grijs);font-size:.8rem}.veld input,.veld select,.veld textarea,.zoek input,.zoek select{border:2px solid var(--lijn);background:var(--wit);border-radius:12px;width:100%;padding:11px 12px;font-size:1rem}.veld input:focus,.veld select:focus,.veld textarea:focus{border-color:var(--paars);outline:none}.rij2{grid-template-columns:1fr 1fr;gap:10px;display:grid}.kiezers{flex-wrap:wrap;gap:8px;display:flex}.sheet-inhoud>.kiezers{margin-bottom:16px}.kiezer{border:2px solid var(--lijn);background:var(--wit);border-radius:99px;align-items:center;gap:6px;padding:7px 13px;font-size:.92rem;font-weight:600;display:inline-flex}.kiezer.aan{background:var(--paars);border-color:var(--paars);color:#fff}.kiezer.groot{border-color:var(--paars);color:var(--paars-dk);padding:12px 18px;font-size:1rem}.stip{border-radius:50%;width:12px;height:12px}.kleur{border:3px solid var(--wit);width:36px;height:36px;box-shadow:0 0 0 2px var(--lijn);border-radius:50%}.kleur.aan{box-shadow:0 0 0 3px var(--inkt)}.schakel{cursor:pointer;align-items:center;gap:10px;margin-bottom:10px;font-size:.92rem;font-weight:600;display:flex}.schakel input{opacity:0;width:1px;height:1px;position:absolute}.schakel span{background:var(--lijn);border-radius:99px;flex:none;width:42px;height:24px;transition:background .15s;position:relative}.schakel span:after{content:"";background:#fff;border-radius:50%;width:18px;height:18px;transition:transform .15s;position:absolute;top:3px;left:3px;box-shadow:0 1px 3px #0003}.schakel input:checked+span{background:var(--oranje)}.schakel input:checked+span:after{transform:translate(18px)}.schakel input:focus-visible+span{outline:3px solid var(--paars);outline-offset:2px}.sheet-achter{z-index:40;background:#2a123873;justify-content:center;align-items:flex-end;animation:.15s vervaag;display:flex;position:fixed;inset:0}@keyframes vervaag{0%{opacity:0}}.sheet{background:var(--creme);border-radius:24px 24px 0 0;flex-direction:column;width:100%;max-width:620px;max-height:92dvh;animation:.22s cubic-bezier(.2,.9,.3,1) omhoog;display:flex}@keyframes omhoog{0%{opacity:.6;transform:translateY(40px)}}@media (width>=700px){.sheet-achter{align-items:center}.sheet{border-radius:24px}}.sheet-kop{border-top:6px solid var(--paars);border-radius:24px 24px 0 0;justify-content:space-between;align-items:center;gap:10px;padding:16px 18px 12px;display:flex}.sheet-kop h2{font-size:1.3rem;font-weight:800}.sheet-inhoud{padding:4px 18px calc(22px + env(safe-area-inset-bottom));overflow-y:auto}.welkom{background:var(--paars);color:#fff;border-radius:24px;padding:22px 20px;position:relative;overflow:hidden}.welkom .sub{color:#e9d7f0}.welkom h1{max-width:75%;margin:4px 0 6px}.welkom p{max-width:75%;margin:0}.seintje{text-align:left;background:var(--geel-lt);border:2px solid var(--geel);border-radius:var(--r);color:var(--inkt);align-items:center;gap:12px;padding:12px 14px;display:flex}.seintje>span{flex-direction:column;flex:1;display:flex}.sessie{background:var(--wit);border-radius:var(--r);box-shadow:var(--schaduw);border-left:8px solid var(--ak);position:relative;overflow:hidden}.sessie-hoofd{text-align:left;background:0 0;border:0;align-items:center;gap:14px;width:100%;padding:14px 14px 14px 12px;display:flex}.sessie-tijd{color:var(--ak);flex-direction:column;min-width:52px;font-size:1.05rem;font-weight:800;display:flex}.sessie-tijd small{color:var(--grijs);font-size:.8rem;font-weight:600}.sessie-info{flex-direction:column;flex:1;gap:4px;min-width:0;display:flex}.sessie-info b{font-size:1.08rem}.sessie-info .sub{align-items:center;gap:4px;display:inline-flex}.mijn{background:var(--oranje);color:#fff;vertical-align:2px;text-transform:uppercase;letter-spacing:.05em;border-radius:99px;margin-left:8px;padding:2px 7px;font-size:.68rem;font-style:normal}.sessie-beg{align-items:center;gap:2px;display:flex}.sessie-beg .sub{text-overflow:ellipsis;white-space:nowrap;margin-left:6px;overflow:hidden}.sessie-pijl{color:var(--grijs)}.sessie-bewerk{width:34px;height:34px;position:absolute;top:10px;right:44px}.week-nav{text-align:center;background:var(--wit);border-radius:var(--r);box-shadow:var(--schaduw);justify-content:space-between;align-items:center;padding:10px;display:flex}.dag{flex-direction:column;gap:8px;margin-top:6px;display:flex}.dag-kop{color:var(--grijs);align-items:center;gap:6px;font-size:.95rem;font-weight:600;display:flex}.dag-kop span{color:var(--paars-dk);text-transform:capitalize;font-weight:800}.dag-kop em{background:var(--geel);color:var(--inkt);border-radius:99px;padding:2px 8px;font-size:.72rem;font-style:normal;font-weight:800}.dag-leeg{margin:0 0 4px;padding-left:2px}.terug{color:var(--paars);background:0 0;border:0;align-self:flex-start;align-items:center;gap:4px;padding:4px 0;font-weight:700;display:inline-flex}.pl-kop{border-radius:24px;padding:18px 20px}.pl-kop .sub{color:inherit;opacity:.85}.pl-kop h1{margin:2px 0 10px;font-size:2rem}.pl-meta{flex-wrap:wrap;gap:6px 16px;font-size:.92rem;font-weight:600;display:flex}.pl-meta span{align-items:center;gap:5px;display:inline-flex}.pl-notitie{background:#ffffff2e;border-radius:12px;margin:10px 0 0;padding:8px 12px}.tellers{grid-template-columns:repeat(4,1fr);gap:8px;display:grid}.teller{background:var(--wit);text-align:center;color:var(--grijs);box-shadow:var(--schaduw);border-radius:14px;flex-direction:column;padding:10px 6px;font-size:.78rem;font-weight:600;display:flex}.teller b{font-size:1.5rem;line-height:1.1}.t-aan b{color:var(--groen)}.t-af b{color:var(--rood)}.t-gem b{color:var(--oranje)}.t-open b{color:var(--paars)}.let-op{background:var(--oranje-lt);color:#8a2e08;border-radius:14px;align-items:center;gap:8px;padding:10px 14px;font-size:.9rem;font-weight:600;display:flex}.pl-lijst,.kind-lijst,.team-lijst,.log{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.pl-kind{background:var(--wit);border-radius:var(--r);box-shadow:var(--schaduw);border-left:6px solid var(--lijn);grid-template-columns:1fr auto;align-items:center;gap:10px;padding:12px;display:grid}.pl-kind.st-aanwezig{border-left-color:var(--groen)}.pl-kind.st-afwezig{border-left-color:var(--rood)}.pl-kind.st-afgemeld{border-left-color:var(--oranje)}.pl-naam{text-align:left;background:0 0;border:0;flex-direction:column;gap:5px;min-width:0;padding:0;display:flex}.pl-naam b{font-size:1.05rem}.pl-badges{flex-wrap:wrap;align-items:center;gap:5px;display:flex}.seg{background:#f4eef6;border-radius:12px;gap:2px;padding:3px;display:inline-flex}.seg button{color:var(--grijs);text-transform:capitalize;background:0 0;border:0;border-radius:9px;align-items:center;gap:4px;padding:8px 10px;font-size:.8rem;font-weight:700;display:inline-flex}.seg button.aan{color:#fff}.seg .seg-aanwezig.aan{background:var(--groen)}.seg .seg-afwezig.aan{background:var(--rood)}.seg .seg-afgemeld.aan{background:var(--oranje)}.seg-keuze{flex-wrap:wrap;display:flex}.seg-keuze button{text-transform:none;flex:1;justify-content:center;padding:10px;font-size:.9rem}.seg-keuze button.aan{background:var(--paars)}.opgehaald,.ophaal-knop{grid-column:1/-1}.opgehaald{color:var(--groen);background:var(--groen-lt);border-radius:10px;align-items:center;gap:6px;padding:7px 10px;font-size:.88rem;font-weight:600;display:flex}.opgehaald .knop-tekst{color:var(--grijs);background:0 0;border:0;margin-left:auto;font-size:.82rem;font-weight:600}.ophaal-knop{justify-self:start}@media (width<=520px){.pl-kind{grid-template-columns:1fr}.seg:not(.seg-keuze){width:100%}.seg:not(.seg-keuze) button{flex:1;justify-content:center;padding:10px 4px}}.zoek{background:var(--wit);border:2px solid var(--lijn);color:var(--grijs);border-radius:14px;align-items:center;gap:8px;padding:4px 4px 4px 12px;display:flex}.zoek input{border:0;outline:none;flex:1;min-width:0;padding:9px 4px}.zoek select{background:#f4eef6;border:0;border-radius:10px;width:auto;padding:8px 10px;font-size:.9rem}.kind-lijst button,.team-lijst button{background:var(--wit);text-align:left;width:100%;box-shadow:var(--schaduw);border:0;border-radius:14px;justify-content:space-between;align-items:center;gap:10px;padding:12px 14px;display:flex}.kind-lijst button.inactief{opacity:.55}.kl-naam{flex-direction:column;flex:1;min-width:0;display:flex}.team-lijst button:disabled{cursor:default}.kind-detail{flex-direction:column;gap:10px;margin-bottom:8px;display:flex}.kd-rij{border-bottom:1px solid var(--lijn);justify-content:space-between;align-items:center;gap:12px;padding:8px 0;display:flex}.kd-rij span:first-child{color:var(--grijs)}.kd-rij b{text-align:right}.kd-blok{background:var(--wit);border-radius:14px;flex-direction:column;align-items:flex-start;gap:6px;padding:12px 14px;display:flex}.kd-blok h4{text-transform:uppercase;letter-spacing:.06em;color:var(--paars-dk);align-items:center;gap:6px;font-size:.85rem;display:flex}.kd-blok p{margin:0}.kd-rood{background:var(--rood-lt)}.kd-rood h4{color:var(--rood)}.vog-kaart{background:var(--wit);box-shadow:var(--schaduw);border-top:6px solid var(--oranje);border-radius:24px;flex-direction:column;gap:12px;padding:18px;display:flex}.vog-kop{color:var(--paars);align-items:center;gap:12px;display:flex}.vog-kop h2{color:var(--inkt);margin-bottom:4px;font-size:1.25rem}.vog-info{flex-direction:column;align-items:stretch;display:flex}.vog-info .knop{align-self:flex-start;margin-top:6px}.vog-upload{background:var(--creme);border-radius:16px;flex-direction:column;gap:4px;padding:14px;display:flex}.vog-upload .veld{margin:8px 0}.bestand-kies{border:2px dashed var(--paars);color:var(--paars-dk);cursor:pointer;background:var(--wit);text-overflow:ellipsis;border-radius:14px;align-items:center;gap:8px;padding:14px;font-weight:700;display:flex;overflow:hidden}.bestand-kies input{opacity:0;width:1px;height:1px;position:absolute}.bestand-kies:focus-within{outline:3px solid var(--oranje)}.uitklap{background:var(--wit);border-radius:var(--r);box-shadow:var(--schaduw);padding:12px 14px}.uitklap summary{cursor:pointer;color:var(--paars-dk);align-items:center;gap:8px;font-weight:700;display:flex}.log{gap:6px;margin-top:10px;font-size:.9rem}.privacy{background:var(--paars-lt);border-radius:var(--r);margin-top:10px;padding:16px}.privacy h3{color:var(--paars-dk);align-items:center;gap:6px;display:flex}.privacy ul{margin:10px 0;padding-left:20px;font-size:.92rem;line-height:1.5}.login{background:var(--paars-dk);place-items:center;min-height:100dvh;padding:20px;display:grid;position:relative;overflow:hidden}.login-kaart{background:var(--creme);border-radius:28px;flex-direction:column;gap:10px;width:100%;max-width:440px;padding:28px 22px;display:flex;position:relative;box-shadow:0 30px 60px -20px #00000080}.login-kaart svg{align-self:flex-start;max-width:100%}.login-kaart h1{margin-top:10px}.login-kaart form{flex-direction:column;gap:4px;margin-top:6px;display:flex}.login-keuze{flex-direction:column;gap:6px;display:flex}.login-keuze button{background:var(--wit);border:2px solid var(--lijn);text-align:left;border-radius:14px;align-items:center;gap:12px;padding:9px 12px;display:flex}.login-keuze button:hover{border-color:var(--paars)}.login-keuze button>span:not(.avatar){flex-direction:column;display:flex}.rol-coord .kop-titel{color:var(--oranje)}.school-filter{scrollbar-width:none;gap:6px;margin:0 -16px;padding:2px 16px 6px;display:flex;overflow-x:auto}.school-filter::-webkit-scrollbar{display:none}.school-filter button{border:2px solid var(--lijn);background:var(--wit);color:var(--paars-dk);white-space:nowrap;border-radius:99px;flex:none;padding:7px 14px;font-size:.88rem;font-weight:700}.school-filter button.aan{background:var(--paars-dk);border-color:var(--paars-dk);color:#fff}.school-kop{align-items:center;gap:6px;margin-bottom:8px;display:flex}.let-op-tekst{font-weight:700;color:var(--rood)!important}.tip{align-items:center;gap:6px;margin:0;display:flex}.team-rij{background:var(--wit);box-shadow:var(--schaduw);border-radius:14px;align-items:center;gap:10px;padding:12px 14px;display:flex}.team-rij .icoonknop{margin-left:auto}.tegels{grid-template-columns:repeat(4,1fr);gap:8px;display:grid}@media (width<=480px){.tegels{grid-template-columns:repeat(2,1fr)}}.tegel{background:var(--wit);text-align:left;color:var(--grijs);box-shadow:var(--schaduw);border:0;border-radius:16px;flex-direction:column;padding:12px 10px;font-size:.82rem;font-weight:600;display:flex}.tegel b{color:var(--paars-dk);font-size:1.8rem;line-height:1.1}.tegel-rood{background:var(--rood-lt)}.tegel-rood b{color:var(--rood)}.tegel-geel{background:var(--geel-lt)}.tegel-geel b{color:#6b6900}.aandacht{background:var(--wit);border-radius:var(--r);box-shadow:var(--schaduw);flex-direction:column;gap:6px;padding:4px 14px 12px;display:flex}.aandacht .knop{align-self:flex-start}.aandacht-rij{border:0;border-top:1px solid var(--lijn);text-align:left;background:0 0;align-items:center;gap:8px;padding:9px 0 3px;font-size:.9rem;display:flex}.vog-groep{border-top:1px solid var(--lijn);flex-direction:column;align-items:flex-start;gap:4px;padding-top:8px;font-size:.92rem;display:flex}.weektabel{flex-direction:column;gap:10px;display:flex}.wt-dag{background:var(--wit);border-radius:var(--r);box-shadow:var(--schaduw);padding:10px 12px}.wt-dag.dag-nu{box-shadow:0 0 0 3px var(--geel), var(--schaduw)}.wt-rij{border:0;border-top:1px solid var(--lijn);text-align:left;background:0 0;grid-template-columns:46px 12px 1fr auto;align-items:center;gap:8px;width:100%;margin-top:6px;padding:8px 0;display:grid}.wt-tijd{color:var(--paars-dk);font-size:.9rem;font-weight:800}.wt-naam{flex-direction:column;min-width:0;display:flex}.wt-beg{color:var(--grijs);text-align:right;max-width:130px;font-size:.82rem}.login-coord{background:#2a1238}.login-tabs{background:#f1e6f5;border-radius:14px;grid-template-columns:1fr 1fr;margin-top:14px;padding:4px;display:grid}.login-tabs button{color:var(--paars-dk);background:0 0;border:0;border-radius:11px;justify-content:center;align-items:center;gap:6px;padding:10px;font-weight:700;display:inline-flex}.login-tabs button.aan{background:var(--paars);color:#fff}.login-coord .login-tabs button.aan{background:var(--oranje)}.slot-melding{background:var(--paars-lt);color:var(--paars-dk);border-radius:14px;align-items:flex-start;gap:10px;padding:12px 14px;font-size:.9rem;font-weight:600;display:flex}.seg button:disabled{opacity:.55;cursor:not-allowed}.team-li{align-items:center;gap:8px;display:flex}.team-li>button,.team-li>.team-rij{flex:1;min-width:0}.team-li .bel{width:46px;height:46px;color:var(--oranje);border-radius:14px}.uren{color:var(--paars-dk);white-space:nowrap;font-size:.85rem;font-weight:800}.dossier-kop{grid-template-columns:1fr 1fr auto;align-items:stretch;gap:8px;margin-bottom:6px;display:grid}.dossier-kop .tegel b{font-size:1.3rem}.dossier-kop .knop{flex-direction:column;gap:2px;font-size:.85rem}.sheet-kopje{text-transform:uppercase;letter-spacing:.08em;color:var(--oranje);margin:18px 0 8px;font-size:.78rem}.gegevens-kaart{border-top-color:var(--paars)}.gegevens-kaart .knop{align-self:flex-end}.beschikbaar{background:var(--wit);border:2px solid var(--lijn);border-radius:14px;margin-bottom:12px;padding:6px 10px}.bs-rij{grid-template-columns:1fr 88px 88px;align-items:center;gap:6px;padding:4px 0;display:grid}.bs-rij+.bs-rij{border-top:1px solid var(--lijn)}.bs-kop span{color:var(--paars-dk);text-align:center;flex-direction:column;font-size:.8rem;font-weight:800;display:flex}.bs-kop small{color:var(--grijs);font-size:.7rem;font-weight:500}.bs-rij>span[role=rowheader]{font-size:.9rem;font-weight:600}.bs-rij button{border:2px solid var(--lijn);background:var(--creme);height:34px;color:var(--grijs);border-radius:10px;place-items:center;font-weight:700;display:grid}.bs-rij button.aan{background:var(--groen);border-color:var(--groen);color:#fff}.beschikbaar:not(.bewerkbaar) .bs-rij button{cursor:default}.stip-groen{background:var(--groen);width:9px;height:9px}.kiezer.niet-beschikbaar{color:var(--grijs);border-style:dashed}.kiezer small{color:var(--rood);font-size:.7rem;font-weight:600}.kiezer.aan small{color:#fff}.kopbalk{position:sticky}.menu-achter{z-index:30;position:fixed;inset:0}.kop-menu{z-index:31;background:var(--wit);border-radius:18px;flex-direction:column;min-width:250px;padding:8px;animation:.15s ease-out op2;display:flex;position:absolute;top:56px;right:12px;box-shadow:0 16px 40px -12px #2a123859}@keyframes op2{0%{opacity:0;transform:translateY(-6px)}}.km-wie{border-bottom:1px solid var(--lijn);align-items:center;gap:10px;margin-bottom:4px;padding:8px 8px 12px;display:flex}.km-wie>span:not(.avatar){flex-direction:column;display:flex}.kop-menu button{text-align:left;background:0 0;border:0;border-radius:12px;align-items:center;gap:10px;padding:11px 10px;font-weight:600;display:flex}.kop-menu button:hover{background:var(--paars-lt)}.kop-menu .km-uit{color:var(--rood)}.stap-label{background:var(--paars-lt);color:var(--paars-dk);border-radius:99px;align-self:flex-start;align-items:center;gap:6px;margin-top:10px;padding:5px 10px;font-size:.8rem;font-weight:700;display:inline-flex}.stappen{margin:4px 0;padding-left:20px;font-size:.93rem;line-height:1.5}.qr{background:var(--wit);border-radius:16px;align-items:center;gap:14px;padding:12px;display:flex}.qr img{background:#fff;border-radius:8px;flex:none}.qr code{color:var(--inkt);letter-spacing:.05em;word-break:break-all;font-size:.85rem;font-weight:700}.qr-demo{border:2px dashed var(--lijn);text-align:center;width:120px;height:120px;color:var(--grijs);border-radius:12px;flex-direction:column;flex:none;justify-content:center;align-items:center;gap:4px;font-size:.8rem;font-weight:700;display:flex}.code-veld{letter-spacing:.4em;text-align:center;font-weight:800;font-size:1.8rem!important}.demo-adressen{margin-top:6px;font-size:.88rem}.demo-adressen summary{cursor:pointer;color:var(--paars);font-weight:700}.demo-adressen .kiezer{padding:5px 10px;font-size:.8rem}.demo-adressen .sub{margin:6px 0}.tegels-3{grid-template-columns:repeat(3,1fr)!important}.tegel-groen{background:var(--groen-lt)}.tegel-groen b{color:var(--groen)}.maand{text-transform:capitalize;font-size:1.3rem}.uren-ingebed{flex-direction:column;gap:12px;display:flex}.uren-lijst{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.uren-lijst li{background:var(--wit);box-shadow:var(--schaduw);border-radius:14px;grid-template-columns:40px 10px 1fr auto;align-items:center;gap:10px;padding:10px 12px;display:grid}.uren-lijst li.st-afgemeld,.uren-lijst li.st-ziek{opacity:.7}.uren-lijst li.st-gepland{box-shadow:none;border:1px dashed var(--lijn);background:#fbf8fd}.ul-datum{color:var(--grijs);text-transform:uppercase;flex-direction:column;align-items:center;font-size:.72rem;font-weight:700;display:flex}.ul-datum b{color:var(--paars-dk);font-size:1.2rem;line-height:1}.ul-wat{flex-direction:column;min-width:0;display:flex}.ul-rechts{flex-direction:column;align-items:flex-end;gap:3px;display:flex}.ul-uren{font-size:.9rem;font-weight:800}.download-knop{align-self:flex-start}.knoppen.links{justify-content:flex-start;margin:4px 0 0}.afmeld-lijst,.afmeld-keuze{flex-direction:column;gap:6px;margin:0 0 8px;padding:0;list-style:none;display:flex}.afmeld-lijst li{background:var(--wit);border-radius:12px;align-items:center;gap:8px;padding:8px 10px;font-size:.9rem;display:flex}.afmeld-lijst .knop-tekst{color:var(--grijs);background:0 0;border:0;margin-left:auto;font-size:.82rem;font-weight:600}.afmeld-keuze label{background:var(--wit);border:2px solid var(--lijn);cursor:pointer;border-radius:14px;align-items:center;gap:12px;padding:10px 12px;display:flex}.afmeld-keuze input{width:20px;height:20px;accent-color:var(--oranje);flex:none}.afmeld-keuze label:has(input:checked){border-color:var(--oranje);background:var(--oranje-lt)}.afmeld-tabel{border-collapse:collapse;width:100%;font-size:.9rem}.afmeld-tabel th{text-align:left;color:var(--grijs);border-bottom:1px solid var(--lijn);padding:6px 4px;font-size:.75rem;font-weight:700}.afmeld-tabel td{border-bottom:1px solid var(--lijn);padding:8px 4px}.afmeld-tabel tr{cursor:pointer}.afmeld-tabel tr:hover td{background:var(--paars-lt)}.link-cel{color:var(--paars-dk);background:0 0;border:0;padding:0;font-weight:700}.alleen-lezen{background:var(--creme)!important;color:var(--grijs)!important}.beg-af{opacity:.55}.af-label{text-transform:uppercase;border-radius:99px;margin-left:4px;padding:1px 6px;font-size:.68rem;font-style:normal;font-weight:800}.af-ziek{background:var(--rood-lt);color:var(--rood)}.af-afgemeld{background:var(--oranje-lt);color:#a63a0e}.vervanging{background:var(--rood);color:#fff;border-radius:99px;align-self:flex-start;align-items:center;gap:4px;padding:3px 9px;font-size:.74rem;font-weight:800;display:inline-flex}.sessie-af{opacity:.65}.kiezer .af-chip{color:#fff;background:var(--rood);border-radius:99px;padding:1px 6px}.klas-blok{flex-direction:column;gap:6px;display:flex}.klas-kop{color:var(--paars-dk);border-left:4px solid var(--geel);align-items:baseline;gap:8px;margin:8px 0 2px;padding-left:10px;font-size:.95rem;font-weight:800;display:flex}.pl-klas{margin-top:6px;padding:0 0 0 10px;list-style:none;box-shadow:none!important;background:0 0!important}.kl-acts{flex-wrap:wrap;gap:4px 10px;display:flex}.kl-acts span{align-items:center;gap:4px;display:inline-flex}.kl-acts .stip{border-radius:50%;width:8px;height:8px;display:inline-block}.koppel-klas{margin-bottom:12px}.koppel-kop{border-left:4px solid var(--geel);align-items:center;gap:8px;margin-bottom:6px;padding-left:10px;display:flex}.koppel-kop b{color:var(--paars-dk)}.koppel-kop .knop-tekst{color:var(--paars);background:0 0;border:0;margin-left:auto;font-weight:700}.koppel-klas .afmeld-keuze{grid-template-columns:1fr 1fr;gap:6px;display:grid}.koppel-klas .afmeld-keuze label{padding:8px 10px}@media (width<=420px){.koppel-klas .afmeld-keuze{grid-template-columns:1fr}}.koppel-voet{bottom:calc(-22px - env(safe-area-inset-bottom));background:var(--creme);border-top:1px solid var(--lijn);padding:12px 0 calc(12px + env(safe-area-inset-bottom));justify-content:space-between;align-items:center;gap:10px;margin-top:6px;display:flex;position:sticky}.instructie{background:var(--geel);color:var(--inkt);border-radius:14px;align-items:center;gap:8px;margin:0;padding:10px 14px;font-size:.9rem;font-weight:800;display:flex}.mijn-klassen{font-size:.9rem}.mijn-indeling{background:var(--wit);border-radius:var(--r);box-shadow:var(--schaduw);border-left:8px solid var(--oranje);flex-direction:column;gap:8px;padding:14px 16px;display:flex}.mijn-indeling h2{color:var(--paars-dk);font-size:1.05rem}.mijn-indeling.is-af{opacity:.7}.klas-chips{flex-wrap:wrap;gap:6px;display:flex}.klas-chip{background:var(--paars-lt);color:var(--paars-dk);border-radius:10px;flex-direction:column;align-items:center;padding:4px 10px;font-size:.9rem;font-weight:800;line-height:1.15;display:inline-flex}.klas-chip small{color:var(--grijs);font-size:.62rem;font-weight:600}.klas-chip.tas{background:var(--geel-lt);color:#6b6900}.klas-chips.groot .klas-chip{padding:8px 14px;font-size:1.2rem}.taak-regel{color:var(--groen);align-items:center;gap:6px;margin:0;font-weight:700;display:flex}.indeling-lijst{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.indeling-lijst li{background:var(--wit);box-shadow:var(--schaduw);border-radius:14px;align-items:flex-start;gap:10px;padding:10px 12px;display:flex}.indeling-lijst li.is-af{opacity:.6}.indeling-lijst li.is-ik{box-shadow:0 0 0 3px var(--oranje), var(--schaduw)}.il-wie{flex-direction:column;gap:4px;min-width:0;display:flex}.indeling-form{margin-bottom:8px}.indeling-rij{background:var(--wit);border-radius:12px;grid-template-columns:90px 1fr auto;align-items:center;gap:6px 8px;margin-bottom:6px;padding:8px 10px;display:grid}.indeling-rij input{border:2px solid var(--lijn);border-radius:10px;width:100%;min-width:0;padding:8px 10px;font-size:.95rem}.indeling-rij .taak{grid-column:1/-1;padding:6px 10px;font-size:.85rem}.schakel.klein{gap:6px;margin:0;font-size:.85rem}.schakel.klein span{width:34px;height:20px}.schakel.klein span:after{width:14px;height:14px}.schakel.klein input:checked+span:after{transform:translate(14px)}.seg-weergave button{padding:7px 14px}.seg-weergave button.aan{background:var(--paars)}.weektabellen{flex-direction:column;gap:18px;display:flex}.wt-school{flex-direction:column;gap:8px;display:flex}.wt-titel{color:var(--inkt);align-items:baseline;gap:8px;margin-top:4px;font-size:.95rem;display:flex}.tabel-scroll{box-shadow:var(--schaduw);background:var(--wit);border-radius:14px;overflow-x:auto}.rooster-tabel{border-collapse:collapse;width:100%;font-size:.85rem}.rooster-tabel th,.rooster-tabel td{border:1px solid var(--lijn);text-align:left;vertical-align:top;padding:7px 8px}.rooster-tabel thead th{background:var(--paars-dk);color:#fff;text-transform:capitalize;white-space:nowrap;font-weight:700}.rooster-tabel tbody th{background:var(--oranje-lt);white-space:nowrap}.rooster-tabel tbody tr{cursor:pointer}.rooster-tabel tr.nieuwe-dag td{border-top:3px solid var(--paars-lt)}.rooster-tabel td:first-child{text-transform:capitalize;font-weight:700}.pauze-tabel td:first-child{text-transform:none}.rooster-tabel .cel-aan{color:#fff;white-space:nowrap;background:#2e7d32;font-weight:700}.rooster-tabel .cel-af{background:var(--rood-lt);white-space:nowrap}.rooster-tabel .leeg-cel{background:#eee8f0}.nowrap{white-space:nowrap}.wt-info{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:8px;font-size:.85rem;display:grid}.wt-info>div{background:var(--wit);border:2px solid var(--inkt);border-radius:10px;padding:8px 10px}.wt-instructie{text-transform:uppercase;color:var(--inkt);align-items:center;gap:6px;margin:0;font-size:.85rem;font-weight:900;display:flex}.dag-tijden{margin-bottom:8px}.dag-tijden summary{cursor:pointer;color:var(--paars);margin-bottom:8px;font-size:.9rem;font-weight:700}.dagtijd-rij{grid-template-columns:1fr 110px 110px;align-items:center;gap:8px;margin-bottom:6px;font-size:.9rem;font-weight:600;display:grid}.dagtijd-rij input{border:2px solid var(--lijn);border-radius:10px;width:100%;padding:7px 8px}.locatie-rij{background:var(--wit);border-radius:14px;margin-bottom:8px;padding:10px 12px 4px}.locatie-rij .knop-tekst{color:var(--rood);background:0 0;border:0;margin-bottom:8px;font-size:.82rem;font-weight:600}.rooster-tabel .cel-coord{color:#fff;white-space:nowrap;background:#29a8e0;font-weight:700}.klas-chip.coord{color:#0b6a94;background:#ddf1fb}.indeling-rij .schakel.aanspreek{color:#0b6a94;grid-column:1/-1}.week-nav.klein{box-shadow:none;border:2px solid var(--lijn);margin-bottom:10px;padding:6px}.afmeld-keuze label.bezet{border-style:dashed}.bezet-tekst{align-items:center;gap:4px;font-size:.75rem;display:flex;color:#a63a0e!important}.koppel-overig{box-shadow:none;border:2px dashed var(--lijn);margin-top:6px}.koppel-overig summary{margin-bottom:8px}.vog-gezien{background:var(--wit);border-radius:14px;flex-direction:column;gap:4px;margin-bottom:12px;padding:10px 12px;display:flex}.vog-gezien .knop{align-self:flex-start}@media (width>=1024px){.app{grid-template-rows:auto 1fr;grid-template-columns:230px minmax(0,1fr);max-width:1320px;min-height:100dvh;padding-bottom:0;display:grid}.kopbalk{grid-area:1/1/auto/-1;padding:14px 28px}.tabbalk{z-index:5;border-top:0;border-right:1px solid var(--lijn);background:0 0;flex-direction:column;grid-area:2/1;justify-content:flex-start;align-self:start;gap:4px;height:calc(100dvh - 64px);padding:20px 14px;position:sticky;inset:64px auto auto}.tabbalk button{flex-direction:row;flex:none;justify-content:flex-start;gap:12px;max-width:none;padding:12px 14px;font-size:.98rem}main{grid-area:2/2;min-width:0;padding:24px 36px 48px}.school-filter{flex-wrap:wrap;margin:0;padding-left:0;padding-right:0}.toast{bottom:28px}h1{font-size:2rem}.welkom{padding:28px 30px}.tegels{gap:12px}.tegel{padding:16px 14px}.kop-menu{right:28px}}@media (width>=1280px){.rooster-dagen{grid-template-columns:1fr 1fr;align-items:start;gap:12px 20px;display:grid}}.rooster-dagen>*,.sessie,.sessie-hoofd{min-width:0}.sessie-beg{min-width:0;overflow:hidden}
