@import"https://fonts.googleapis.com/css2?family=DM+Sans:ital,opsz,wght@0,9..40,300;0,9..40,500;0,9..40,700&family=Outfit:wght@400;600;800&display=swap";:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light dark;color:#ffffffde;background-color:#242424;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{font-weight:500;color:#646cff;text-decoration:inherit}a:hover{color:#535bf2}body{margin:0;display:flex;place-items:center;min-width:320px;min-height:100vh}h1{font-size:3.2em;line-height:1.1}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#1a1a1a;cursor:pointer;transition:border-color .25s}button:hover{border-color:#646cff}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}@media(prefers-color-scheme:light){:root{color:#213547;background-color:#fff}a:hover{color:#747bff}button{background-color:#f9f9f9}}:root{--kleur-primair: #2B5EA7;--kleur-primair-donker: #1E4578;--kleur-primair-licht: #e8eff8;--kleur-accent: #F5D000;--kleur-accent-donker: #D4B300;--kleur-accent-licht: #fef9e0;--kleur-rood: #dc2626;--kleur-rood-licht: #fee2e2;--kleur-groen: #16a34a;--kleur-groen-licht: #dcfce7;--kleur-geel: #ca8a04;--kleur-geel-licht: #fef9c3;--kleur-grijs-50: #f9fafb;--kleur-grijs-100: #f3f4f6;--kleur-grijs-200: #e5e7eb;--kleur-grijs-300: #d1d5db;--kleur-grijs-400: #9ca3af;--kleur-grijs-500: #6b7280;--kleur-grijs-700: #374151;--kleur-grijs-900: #111827;--font-kop: "Outfit", sans-serif;--font-tekst: "DM Sans", sans-serif;--schaduw-sm: 0 1px 3px rgba(0,0,0,.08);--schaduw-md: 0 4px 12px rgba(0,0,0,.1);--schaduw-lg: 0 8px 30px rgba(0,0,0,.12);--radius-sm: 6px;--radius-md: 10px;--radius-lg: 16px}*{margin:0;padding:0;box-sizing:border-box}body{font-family:var(--font-tekst);background:var(--kleur-grijs-50);color:var(--kleur-grijs-900);line-height:1.6;-webkit-font-smoothing:antialiased}.laden-scherm{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100vh;gap:1rem;color:var(--kleur-grijs-500);background:var(--kleur-primair)}.laden-scherm .club-logo{width:100px;height:auto;animation:pulse 1.5s ease-in-out infinite}.laden-scherm p{color:#fff;font-family:var(--font-kop);font-weight:600}@keyframes pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.7;transform:scale(.95)}}.laden{text-align:center;padding:2rem;color:var(--kleur-grijs-400)}.auth-container{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:1.5rem;background:linear-gradient(135deg,var(--kleur-primair-donker) 0%,var(--kleur-primair) 60%,#3570bf 100%);position:relative;overflow:hidden}.auth-container:before{content:"";position:absolute;top:-50%;right:-20%;width:600px;height:600px;background:var(--kleur-accent);opacity:.07;border-radius:50%}.auth-container:after{content:"";position:absolute;bottom:-30%;left:-10%;width:400px;height:400px;background:var(--kleur-accent);opacity:.05;border-radius:50%}.auth-card{background:#fff;border-radius:var(--radius-lg);box-shadow:var(--schaduw-lg);padding:2.5rem;width:100%;max-width:440px;animation:slideUp .4s ease;position:relative;z-index:1;border-top:4px solid var(--kleur-accent)}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.auth-header{text-align:center;margin-bottom:2rem}.club-logo{width:80px;height:auto;margin-bottom:.5rem}.club-logo.groot{width:120px}.auth-header h1{font-family:var(--font-kop);font-size:2rem;font-weight:800;color:var(--kleur-primair);letter-spacing:2px}.subtitle{color:var(--kleur-grijs-400);font-size:.9rem;margin-top:.25rem}.auth-form h2{font-family:var(--font-kop);font-size:1.3rem;font-weight:600;margin-bottom:1.25rem;color:var(--kleur-grijs-900)}.form-uitleg{color:var(--kleur-grijs-500);font-size:.9rem;margin-bottom:1.25rem;margin-top:-.75rem}.form-groep{margin-bottom:1.15rem}.form-groep label{display:block;font-weight:500;font-size:.85rem;margin-bottom:.4rem;color:var(--kleur-grijs-700)}input[type=text],input[type=email],input[type=password],input[type=date],input[type=time],select,textarea{width:100%;padding:.7rem .85rem;border:1.5px solid var(--kleur-grijs-200);border-radius:var(--radius-sm);font-family:var(--font-tekst);font-size:.95rem;color:var(--kleur-grijs-900);transition:border-color .2s,box-shadow .2s;background:#fff}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--kleur-primair);box-shadow:0 0 0 3px var(--kleur-primair-licht)}.code-input{font-family:Courier New,monospace;font-size:1.1rem;letter-spacing:2px;text-align:center;text-transform:uppercase}.form-hint{display:block;font-size:.8rem;color:var(--kleur-grijs-400);margin-top:.3rem}.form-rij{display:grid;grid-template-columns:1fr 1fr 1fr;gap:.75rem}@media(max-width:600px){.form-rij{grid-template-columns:1fr}}.form-acties{display:flex;gap:.75rem;margin-top:.5rem}.form-acties .btn-secundair{flex:0 0 auto}.form-acties .btn-primair{flex:1}.btn-primair{width:100%;padding:.75rem 1.25rem;background:var(--kleur-primair);color:#fff;border:none;border-radius:var(--radius-sm);font-family:var(--font-kop);font-size:.95rem;font-weight:600;cursor:pointer;transition:background .2s,transform .1s}.btn-primair:hover:not(:disabled){background:var(--kleur-primair-donker)}.btn-primair:active:not(:disabled){transform:scale(.98)}.btn-primair:disabled{opacity:.6;cursor:not-allowed}.btn-secundair{padding:.75rem 1.25rem;background:var(--kleur-grijs-100);color:var(--kleur-grijs-700);border:none;border-radius:var(--radius-sm);font-family:var(--font-kop);font-size:.95rem;font-weight:600;cursor:pointer;transition:background .2s}.btn-secundair:hover{background:var(--kleur-grijs-200)}.btn-uitloggen{padding:.5rem 1rem;background:transparent;color:#ffffffb3;border:1.5px solid rgba(255,255,255,.3);border-radius:var(--radius-sm);font-size:.85rem;cursor:pointer;transition:all .2s}.btn-uitloggen:hover{background:#ffffff1a;border-color:#fff9;color:#fff}.btn-klein{padding:.35rem .6rem;border:none;border-radius:var(--radius-sm);font-size:.8rem;cursor:pointer;background:var(--kleur-grijs-100);transition:background .2s}.btn-klein:hover{background:var(--kleur-grijs-200)}.btn-klein.btn-groen{background:var(--kleur-groen-licht);color:var(--kleur-groen)}.btn-klein.btn-groen:hover{background:#bbf7d0}.btn-klein.btn-rood{background:var(--kleur-rood-licht);color:var(--kleur-rood)}.btn-klein.btn-rood:hover{background:#fecaca}.btn-klein.btn-waarschuwing{background:var(--kleur-accent-licht);color:var(--kleur-accent-donker)}.link-btn{background:none;border:none;color:var(--kleur-primair);cursor:pointer;font-weight:500;text-decoration:underline;font-size:inherit}.link-btn:hover{color:var(--kleur-primair-donker)}.rol-keuze,.type-keuze{display:grid;grid-template-columns:1fr 1fr;gap:.75rem}.rol-optie,.type-optie{display:flex;flex-direction:column;align-items:center;gap:.4rem;padding:1rem;border:2px solid var(--kleur-grijs-200);border-radius:var(--radius-md);background:#fff;cursor:pointer;font-family:var(--font-kop);font-weight:600;font-size:.9rem;color:var(--kleur-grijs-500);transition:all .2s}.rol-optie:hover,.type-optie:hover{border-color:var(--kleur-primair);color:var(--kleur-primair)}.rol-optie.actief,.type-optie.actief{border-color:var(--kleur-primair);background:var(--kleur-primair-licht);color:var(--kleur-primair)}.rol-icoon{font-size:1.5rem}.foutmelding{background:var(--kleur-rood-licht);color:var(--kleur-rood);padding:.75rem 1rem;border-radius:var(--radius-sm);font-size:.9rem;margin-bottom:1rem;border-left:3px solid var(--kleur-rood)}.succes-melding{background:var(--kleur-groen-licht);color:var(--kleur-groen);padding:.75rem 1rem;border-radius:var(--radius-sm);font-size:.9rem;margin-bottom:1rem;border-left:3px solid var(--kleur-groen)}.info-melding{background:var(--kleur-primair-licht);color:var(--kleur-primair);padding:.75rem 1rem;border-radius:var(--radius-sm);font-size:.9rem;margin-bottom:1rem;border-left:3px solid var(--kleur-primair)}.team-badge{background:var(--kleur-accent-licht);color:var(--kleur-accent-donker);padding:.6rem 1rem;border-radius:var(--radius-sm);font-weight:600;font-size:.9rem;margin-bottom:1.25rem;display:flex;align-items:center;gap:.5rem;border-left:3px solid var(--kleur-accent)}.auth-footer{text-align:center;margin-top:1.5rem;padding-top:1.25rem;border-top:1px solid var(--kleur-grijs-100);color:var(--kleur-grijs-500);font-size:.9rem}.dashboard{min-height:100vh;background:var(--kleur-grijs-50)}.dashboard-header{background:var(--kleur-primair);padding:.75rem 1.5rem;display:flex;align-items:center;justify-content:space-between;position:sticky;top:0;z-index:100;box-shadow:0 2px 8px #2b5ea74d}.header-links{display:flex;align-items:center;gap:.75rem}.header-logo{width:42px;height:auto}.header-links h1{font-family:var(--font-kop);font-size:1.3rem;font-weight:800;color:var(--kleur-accent);letter-spacing:1px;line-height:1.2}.team-label{font-size:.8rem;color:#fff9}.header-rechts{display:flex;align-items:center;gap:1rem}.gebruiker-info{display:flex;align-items:center;gap:.5rem;font-size:.9rem;font-weight:500;color:#fff}.rol-label{display:inline-block;font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px;padding:.15rem .5rem;border-radius:99px}.rol-label.rol-admin{background:var(--kleur-accent);color:var(--kleur-primair-donker)}.rol-label.rol-speler{background:#fff3;color:#fff}.rol-label.rol-ouder{background:#ffffff26;color:#ffffffe6}.dashboard-content{max-width:800px;margin:0 auto;padding:1.5rem}@media(max-width:600px){.dashboard-header{padding:.5rem 1rem}.gebruiker-info{display:none}.dashboard-content{padding:1rem}}.sectie-titel{font-family:var(--font-kop);font-size:1.25rem;font-weight:700;margin-bottom:1rem;color:var(--kleur-grijs-900)}.admin-panel{margin-bottom:2rem}.admin-tabs{display:flex;gap:.5rem;margin-bottom:1.25rem;overflow-x:auto;-webkit-overflow-scrolling:touch}.admin-tab{display:flex;align-items:center;gap:.4rem;padding:.5rem 1rem;border:1.5px solid var(--kleur-grijs-200);border-radius:var(--radius-sm);background:#fff;font-family:var(--font-kop);font-size:.85rem;font-weight:600;color:var(--kleur-grijs-500);cursor:pointer;white-space:nowrap;transition:all .2s}.admin-tab:hover{border-color:var(--kleur-primair);color:var(--kleur-primair)}.admin-tab.actief{background:var(--kleur-primair);border-color:var(--kleur-primair);color:#fff}.admin-tab-content{background:#fff;border-radius:var(--radius-md);padding:1.5rem;box-shadow:var(--schaduw-sm);border-top:3px solid var(--kleur-accent)}.inline-form{display:flex;gap:.75rem;margin-bottom:1.25rem}.inline-form input{flex:1}.inline-form .btn-primair{width:auto;white-space:nowrap}.teams-lijst{display:flex;flex-direction:column;gap:.75rem}.team-kaart{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.25rem;background:var(--kleur-grijs-50);border-radius:var(--radius-sm);border:1px solid var(--kleur-grijs-200);flex-wrap:wrap;gap:.75rem}.team-info h3{font-family:var(--font-kop);font-size:1rem;font-weight:700}.leden-count{font-size:.8rem;color:var(--kleur-grijs-400)}.team-code{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.code-label{font-size:.8rem;color:var(--kleur-grijs-400)}.code-waarde{background:var(--kleur-primair);color:var(--kleur-accent);padding:.3rem .7rem;border-radius:var(--radius-sm);font-size:.85rem;letter-spacing:1px;font-weight:600}.evenementen-sectie{margin-bottom:2rem}.evenementen-lijst{display:flex;flex-direction:column;gap:1rem}.leeg-state{text-align:center;padding:3rem 2rem;color:var(--kleur-grijs-400)}.leeg-icoon{font-size:3rem;display:block;margin-bottom:.5rem}.leeg-bericht{color:var(--kleur-grijs-400);text-align:center;padding:1.5rem}.aanmeld-kaart{background:#fff;border-radius:var(--radius-md);box-shadow:var(--schaduw-sm);overflow:hidden;border-left:4px solid var(--kleur-primair);transition:box-shadow .2s}.aanmeld-kaart:hover{box-shadow:var(--schaduw-md)}.aanmeld-kaart.type-wedstrijd{border-left-color:var(--kleur-accent)}.kaart-header{display:flex;gap:1rem;padding:1rem 1.25rem}.kaart-datum{display:flex;flex-direction:column;align-items:center;min-width:52px;padding:.5rem;background:var(--kleur-primair);border-radius:var(--radius-sm)}.dag-naam{font-size:.7rem;font-weight:600;text-transform:uppercase;color:#ffffffb3;letter-spacing:.5px}.dag-nummer{font-family:var(--font-kop);font-size:1.5rem;font-weight:800;color:var(--kleur-accent);line-height:1.1}.maand{font-size:.75rem;color:#ffffffb3;text-transform:lowercase}.kaart-info{flex:1;min-width:0}.kaart-type{font-family:var(--font-kop);font-weight:700;font-size:1rem}.tegenstander{font-weight:600;color:var(--kleur-primair);font-size:.95rem}.kaart-details{display:flex;gap:1rem;font-size:.85rem;color:var(--kleur-grijs-500);margin-top:.25rem;flex-wrap:wrap}.kaart-opmerking{font-size:.85rem;color:var(--kleur-grijs-500);font-style:italic;margin-top:.25rem}.aanmelding-tellingen{display:flex;gap:.5rem;padding:0 1.25rem}.telling{display:flex;align-items:center;gap:.3rem;font-size:.85rem;font-weight:600;padding:.25rem .6rem;border-radius:99px}.telling-groen{background:var(--kleur-groen-licht);color:var(--kleur-groen)}.telling-rood{background:var(--kleur-rood-licht);color:var(--kleur-rood)}.telling-geel{background:var(--kleur-geel-licht);color:var(--kleur-geel)}.telling-icoon{font-size:.75rem}.aanmelding-acties{display:flex;gap:.5rem;padding:.75rem 1.25rem}.btn-aanmelding{flex:1;padding:.6rem;border:2px solid var(--kleur-grijs-200);border-radius:var(--radius-sm);background:#fff;font-family:var(--font-kop);font-size:.85rem;font-weight:600;cursor:pointer;transition:all .2s;color:var(--kleur-grijs-500)}.btn-aanmelding:hover{border-color:var(--kleur-grijs-300)}.btn-groen.geselecteerd{background:var(--kleur-groen-licht);border-color:var(--kleur-groen);color:var(--kleur-groen)}.btn-rood.geselecteerd{background:var(--kleur-rood-licht);border-color:var(--kleur-rood);color:var(--kleur-rood)}.btn-geel.geselecteerd{background:var(--kleur-geel-licht);border-color:var(--kleur-geel);color:var(--kleur-geel)}.btn-detail-toggle{display:block;width:100%;padding:.6rem;background:none;border:none;border-top:1px solid var(--kleur-grijs-100);color:var(--kleur-grijs-400);font-size:.8rem;cursor:pointer;transition:color .2s}.btn-detail-toggle:hover{color:var(--kleur-primair)}.aanmelding-details{padding:.75rem 1.25rem 1rem;border-top:1px solid var(--kleur-grijs-100)}.detail-groep{margin-bottom:.75rem}.detail-groep:last-child{margin-bottom:0}.detail-groep h4{font-size:.85rem;font-weight:600;margin-bottom:.3rem}.detail-groep ul{list-style:none;padding-left:1.5rem}.detail-groep li{font-size:.85rem;color:var(--kleur-grijs-700);padding:.15rem 0}.detail-groep li:before{content:"·";margin-right:.5rem;color:var(--kleur-grijs-300)}.detail-opmerking{color:var(--kleur-grijs-400);font-style:italic}.leden-filters{display:flex;gap:.5rem;margin-bottom:1rem;flex-wrap:wrap}.filter-btn{padding:.4rem .85rem;border:1.5px solid var(--kleur-grijs-200);border-radius:99px;background:#fff;font-size:.85rem;font-weight:500;cursor:pointer;transition:all .2s;display:flex;align-items:center;gap:.4rem}.filter-btn:hover{border-color:var(--kleur-primair);color:var(--kleur-primair)}.filter-btn.actief{background:var(--kleur-primair);border-color:var(--kleur-primair);color:#fff}.filter-count{background:#0000001a;padding:.05rem .4rem;border-radius:99px;font-size:.75rem}.filter-btn.actief .filter-count{background:#ffffff40}.leden-tabel{overflow-x:auto}.leden-tabel table{width:100%;border-collapse:collapse;font-size:.9rem}.leden-tabel th{text-align:left;padding:.6rem .75rem;border-bottom:2px solid var(--kleur-primair);font-size:.8rem;font-weight:600;color:var(--kleur-primair);text-transform:uppercase;letter-spacing:.5px}.leden-tabel td{padding:.6rem .75rem;border-bottom:1px solid var(--kleur-grijs-100)}.rol-select{padding:.3rem .5rem;border-radius:var(--radius-sm);border:1px solid var(--kleur-grijs-200);font-size:.8rem;font-weight:600}.rol-select.rol-admin{color:var(--kleur-accent-donker)}.rol-select.rol-speler{color:var(--kleur-primair)}.rol-select.rol-ouder{color:#7c3aed}.koppelingen-sectie{margin-bottom:1.5rem}.koppelingen-sectie h3{font-family:var(--font-kop);font-size:1rem;font-weight:700;margin-bottom:.75rem}.koppeling-kaart{display:flex;align-items:center;justify-content:space-between;padding:.75rem 1rem;border-radius:var(--radius-sm);margin-bottom:.5rem;flex-wrap:wrap;gap:.5rem}.koppeling-kaart.in-afwachting{background:var(--kleur-accent-licht);border:1px solid var(--kleur-accent)}.koppeling-kaart.goedgekeurd{background:var(--kleur-groen-licht);border:1px solid #bbf7d0}.koppeling-info{display:flex;align-items:center;gap:.5rem;font-size:.9rem}.ouder-naam{font-weight:600;color:#7c3aed}.speler-naam{font-weight:600;color:var(--kleur-primair)}.koppeling-pijl{color:var(--kleur-grijs-300)}.koppeling-acties{display:flex;gap:.5rem}.koppeling-form{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.koppeling-form select{width:auto;min-width:160px}.koppeling-form .btn-primair{width:auto}.registratie-keuzes{display:flex;flex-direction:column;gap:.75rem}.keuze-kaart{display:flex;align-items:center;gap:1rem;padding:1.15rem 1.25rem;border:2px solid var(--kleur-grijs-200);border-radius:var(--radius-md);background:#fff;cursor:pointer;text-align:left;transition:all .2s;font-family:var(--font-tekst)}.keuze-admin:hover{border-color:var(--kleur-accent-donker);background:var(--kleur-accent-licht)}.keuze-icoon{font-size:1.8rem;flex-shrink:0}.keuze-titel{display:block;font-family:var(--font-kop);font-weight:700;font-size:.95rem;color:var(--kleur-grijs-900)}.keuze-uitleg{display:block;font-size:.8rem;color:var(--kleur-grijs-400);margin-top:.1rem}.evenement-form{max-width:100%}.evenement-form .btn-primair{margin-top:.5rem}@media(max-width:480px){.auth-card{padding:1.5rem}.aanmelding-acties,.inline-form{flex-direction:column}.koppeling-form{flex-direction:column;align-items:stretch}.koppeling-form select,.koppeling-form .btn-primair{width:100%}}.thuis-uit-badge{display:inline-block;font-size:.75rem;font-weight:600;padding:.15rem .5rem;border-radius:99px;margin-left:.5rem;vertical-align:middle}.reden-keuze{padding:.75rem 1.25rem;border-top:1px solid var(--kleur-grijs-100)}.reden-label{font-size:.85rem;font-weight:600;color:var(--kleur-grijs-700);margin-bottom:.5rem}.reden-opties{display:flex;flex-wrap:wrap;gap:.4rem;margin-bottom:.5rem}.reden-btn{padding:.45rem .75rem;border:1.5px solid var(--kleur-grijs-200);border-radius:var(--radius-sm);background:#fff;font-size:.8rem;font-weight:500;cursor:pointer;transition:all .2s}.reden-btn:hover{border-color:var(--kleur-rood);background:var(--kleur-rood-licht);color:var(--kleur-rood)}.btn-annuleer{display:block;width:100%;padding:.4rem;background:none;border:none;color:var(--kleur-grijs-400);font-size:.8rem;cursor:pointer}.btn-annuleer:hover{color:var(--kleur-grijs-700)}.detail-reden{color:var(--kleur-grijs-400);font-style:italic;font-size:.8rem}.rit-sectie{padding:.75rem 1.25rem;border-top:1px solid var(--kleur-grijs-100);background:var(--kleur-grijs-50)}.rit-actief{display:flex;align-items:center;justify-content:space-between;font-size:.85rem;font-weight:500;color:var(--kleur-groen)}.rit-aanbieden{font-size:.85rem;color:var(--kleur-grijs-700)}.rit-aanbieden>span{display:block;font-weight:600;margin-bottom:.4rem}.rit-form{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.rit-form label{display:flex;align-items:center;gap:.4rem;font-size:.85rem;color:var(--kleur-grijs-500)}.plekken-input{width:50px!important;padding:.3rem .4rem!important;text-align:center;font-size:.9rem!important}.rol-select.rol-coach{color:#1d4ed8}.rol-select.rol-trainer{color:#4338ca}.rol-select.rol-teammanager{color:var(--kleur-accent-donker)}.dashboard-nav{display:flex;gap:.15rem;background:var(--kleur-primair-donker);padding:.25rem .5rem;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;scroll-behavior:smooth}.dashboard-nav::-webkit-scrollbar{display:none}.nav-tab{display:flex;align-items:center;gap:.3rem;padding:.5rem .75rem;background:transparent;border:none;border-bottom:3px solid transparent;color:#fff9;font-family:var(--font-kop);font-size:.78rem;font-weight:600;cursor:pointer;transition:all .2s;white-space:nowrap;flex-shrink:0}.nav-tab:hover{color:#fff;background:#ffffff0d}.nav-tab.actief{color:var(--kleur-accent);border-bottom-color:var(--kleur-accent)}.nav-tab .nav-icon{font-size:.95rem}.nav-tab-live{color:#fff!important;background:var(--kleur-rood)!important;border-radius:var(--radius-sm);margin:.15rem .1rem;border-bottom:none!important;animation:pulse-live 2s infinite;font-size:.75rem;padding:.35rem .6rem}@keyframes pulse-live{0%,to{opacity:1}50%{opacity:.75}}.teamcode-banner{display:flex;align-items:center;justify-content:center;gap:.5rem;padding:.4rem .75rem;background:var(--kleur-accent-licht);border-bottom:1px solid var(--kleur-accent);font-size:.8rem;font-weight:500;flex-wrap:wrap}.sectie-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1rem;flex-wrap:wrap;gap:.5rem}.team-filter-select{padding:.35rem .6rem;border:1.5px solid var(--kleur-grijs-200);border-radius:var(--radius-sm);font-size:.8rem}.kaart-team{font-size:.75rem;color:var(--kleur-grijs-400)}.thuis-uit-badge{display:inline-block;font-size:.7rem;font-weight:600;padding:.1rem .4rem;border-radius:99px;margin-left:.4rem}.thuis-uit-badge.thuis{background:var(--kleur-primair-licht);color:var(--kleur-primair)}.thuis-uit-badge.uit{background:var(--kleur-accent-licht);color:var(--kleur-accent-donker)}.reden-keuze{padding:.5rem 0;width:100%}.reden-label{font-size:.75rem;font-weight:600;color:var(--kleur-grijs-700);margin-bottom:.35rem}.reden-opties{display:flex;flex-wrap:wrap;gap:.3rem;margin-bottom:.35rem}.reden-btn{padding:.3rem .5rem;border:1.5px solid var(--kleur-grijs-200);border-radius:var(--radius-sm);background:#fff;font-size:.7rem;cursor:pointer;transition:all .2s}.reden-btn:hover{border-color:var(--kleur-rood);background:var(--kleur-rood-licht)}.reden-btn.actief{border-color:var(--kleur-primair);background:var(--kleur-primair-licht);color:var(--kleur-primair);font-weight:600}.btn-annuleer{display:block;width:100%;padding:.25rem;background:none;border:none;color:var(--kleur-grijs-400);font-size:.7rem;cursor:pointer}.detail-reden{color:var(--kleur-grijs-400);font-style:italic;font-size:.75rem}.telling-blauw{background:var(--kleur-primair-licht);color:var(--kleur-primair)}.telling-grijs{background:var(--kleur-grijs-100);color:var(--kleur-grijs-700)}.telling-label{font-size:.65rem;opacity:.7;margin:0 .1rem}.telling-nummer{font-weight:700}.aanmeld-rij{padding:.5rem .75rem;border-top:1px solid var(--kleur-grijs-100);display:flex;align-items:center;flex-wrap:wrap;gap:.4rem}.aanmeld-rij-naam{flex:1;font-size:.8rem;font-weight:600;color:var(--kleur-grijs-700);min-width:100px}.aanmeld-rij-knoppen{display:flex;gap:.3rem;align-items:center}.btn-mini{padding:.25rem .5rem;border:1.5px solid var(--kleur-grijs-200);border-radius:var(--radius-sm);background:#fff;font-size:.75rem;cursor:pointer;transition:all .15s}.btn-sm{font-size:.8rem!important;padding:.35rem .7rem!important}.btn-mini.btn-groen:hover,.btn-mini.btn-groen.geselecteerd{border-color:var(--kleur-groen);background:#dcfce7}.btn-mini.btn-rood:hover,.btn-mini.btn-rood.geselecteerd{border-color:var(--kleur-rood);background:var(--kleur-rood-licht)}.btn-mini.btn-blauw{border-color:var(--kleur-primair);color:var(--kleur-primair)}.btn-mini.btn-grijs{border-color:var(--kleur-groen);color:var(--kleur-groen);background:#dcfce7}.rit-badge{font-size:.7rem;background:var(--kleur-grijs-100);color:var(--kleur-grijs-500);padding:.15rem .4rem;border-radius:99px;font-weight:600;border:1.5px solid var(--kleur-grijs-200);cursor:pointer;transition:all .15s}.rit-badge.actief{background:#dcfce7;color:var(--kleur-groen);border-color:var(--kleur-groen)}.ouder-aanmeldingen{border-top:2px solid var(--kleur-grijs-100)}.detail-kolommen{display:grid;grid-template-columns:1fr 1fr;gap:.75rem}.detail-kolom h4{font-size:.8rem;margin-bottom:.4rem}.detail-groep h5{font-size:.7rem;color:var(--kleur-grijs-500);font-weight:600;margin:.4rem 0 .2rem;text-transform:uppercase;letter-spacing:.5px}.rit-detail{grid-column:span 2;border-top:1px solid var(--kleur-grijs-100);padding-top:.5rem}.koppeling-melding{background:var(--kleur-accent-licht);border:1.5px solid var(--kleur-accent);border-radius:var(--radius-md);padding:.75rem;margin-bottom:.75rem}.koppeling-melding h3{font-size:.9rem;margin-bottom:.4rem}.rol-label.rol-coach{background:#dbeafe;color:#1d4ed8}.rol-label.rol-trainer{background:#e0e7ff;color:#4338ca}.rol-label.rol-teammanager{background:var(--kleur-accent-licht);color:var(--kleur-accent-donker)}.registratie-keuzes{display:flex;flex-direction:column;gap:.6rem}.keuze-kaart{display:flex;align-items:center;gap:.75rem;padding:.9rem 1rem;border:2px solid var(--kleur-grijs-200);border-radius:var(--radius-md);background:#fff;cursor:pointer;text-align:left;transition:all .2s;font-family:var(--font-tekst)}.keuze-kaart:hover{border-color:var(--kleur-primair);background:var(--kleur-primair-licht)}.keuze-icoon{font-size:1.5rem;flex-shrink:0}.keuze-titel{display:block;font-family:var(--font-kop);font-weight:700;font-size:.9rem}.keuze-uitleg{display:block;font-size:.75rem;color:var(--kleur-grijs-400)}.auth-extra{text-align:center;margin-top:.5rem}.auth-extra .link-btn{font-size:.8rem;color:var(--kleur-grijs-400)}.wachtwoord-wrapper{position:relative;display:flex;align-items:center}.wachtwoord-input{padding-right:2.5rem!important}.wachtwoord-toggle{position:absolute;right:.5rem;background:none;border:none;font-size:1rem;cursor:pointer;padding:.2rem;opacity:.5}.wachtwoord-toggle:hover{opacity:1}.avatar-sectie{display:flex;flex-direction:column;align-items:center;margin-bottom:1.25rem}.avatar-groot{width:80px;height:80px;border-radius:50%;overflow:hidden;position:relative;cursor:pointer;background:var(--kleur-primair-licht);display:flex;align-items:center;justify-content:center;border:3px solid var(--kleur-primair)}.avatar-groot img{width:100%;height:100%;object-fit:cover}.avatar-placeholder{font-family:var(--font-kop);font-size:2rem;font-weight:800;color:var(--kleur-primair)}.avatar-overlay{position:absolute;inset:0;background:#0006;display:flex;align-items:center;justify-content:center;font-size:1.2rem;opacity:0;transition:opacity .2s}.avatar-groot:hover .avatar-overlay{opacity:1}.avatar-hint{font-size:.75rem;color:var(--kleur-grijs-400);margin-top:.35rem}.avatar-klein{width:28px;height:28px;border-radius:50%;overflow:hidden;background:var(--kleur-accent);display:flex;align-items:center;justify-content:center;flex-shrink:0}.avatar-klein img{width:100%;height:100%;object-fit:cover}.avatar-klein span{font-family:var(--font-kop);font-size:.75rem;font-weight:800;color:var(--kleur-primair-donker)}.avatar-mini{width:24px;height:24px;border-radius:50%;overflow:hidden;background:var(--kleur-primair-licht);display:flex;align-items:center;justify-content:center;flex-shrink:0}.avatar-mini img{width:100%;height:100%;object-fit:cover}.avatar-mini span{font-family:var(--font-kop);font-size:.65rem;font-weight:700;color:var(--kleur-primair)}.header-profiel-btn{display:flex;align-items:center;gap:.4rem;background:#ffffff1a;border:none;border-radius:var(--radius-sm);padding:.3rem .5rem;cursor:pointer}.header-naam{color:#fff;font-size:.8rem;font-weight:500}.profiel-pagina{max-width:500px;margin:0 auto}.profiel-header{display:flex;align-items:center;gap:.75rem;margin-bottom:1rem}.profiel-form{background:#fff;padding:1rem;border-radius:var(--radius-md);box-shadow:var(--schaduw-sm)}.input-disabled{background:var(--kleur-grijs-100)!important;color:var(--kleur-grijs-500)!important;cursor:not-allowed}.danger-zone{margin-top:1.5rem;padding:1rem;border:1.5px solid var(--kleur-rood);border-radius:var(--radius-md);background:var(--kleur-rood-licht)}.danger-zone h3{font-size:.9rem;font-weight:700;color:var(--kleur-rood);margin-bottom:.4rem}.danger-zone p{font-size:.8rem;margin-bottom:.5rem}.btn-danger{padding:.5rem .75rem;background:var(--kleur-rood);color:#fff;border:none;border-radius:var(--radius-sm);font-weight:600;cursor:pointer;font-size:.8rem}.verjaardagen-lijst{display:flex;flex-direction:column;gap:.4rem}.verjaardag-kaart{display:flex;align-items:center;gap:.6rem;padding:.6rem .75rem;background:#fff;border-radius:var(--radius-md);box-shadow:var(--schaduw-sm);border-left:3px solid var(--kleur-grijs-200)}.verjaardag-kaart.vandaag{border-left-color:var(--kleur-accent);background:var(--kleur-accent-licht)}.verjaardag-kaart.binnenkort{border-left-color:var(--kleur-primair)}.verjaardag-info{flex:1;min-width:0}.verjaardag-naam{display:block;font-weight:600;font-size:.85rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.verjaardag-datum{display:block;font-size:.75rem;color:var(--kleur-grijs-400)}.verjaardag-countdown{text-align:right;font-size:.75rem;white-space:nowrap}.vandaag-badge{background:var(--kleur-accent);color:var(--kleur-primair-donker);padding:.15rem .4rem;border-radius:99px;font-weight:700;font-size:.7rem}.binnenkort-tekst{color:var(--kleur-primair);font-weight:600}.dagen-tekst{color:var(--kleur-grijs-400)}.formatie-toolbar{display:flex;gap:.4rem;margin-bottom:.5rem;flex-wrap:wrap}.formatie-select{padding:.35rem .6rem;border:1.5px solid var(--kleur-grijs-200);border-radius:var(--radius-sm);font-size:.8rem;font-weight:600}.number-swiper{display:flex;align-items:center;gap:.4rem;margin:.4rem 0;flex-wrap:wrap}.swiper-label{font-size:.75rem;font-weight:600;color:var(--kleur-grijs-700);min-width:55px}.swiper-controls{display:flex;align-items:center;background:var(--kleur-grijs-100);border-radius:var(--radius-md);overflow:hidden;border:1.5px solid var(--kleur-grijs-200)}.swiper-btn{width:36px;height:40px;background:#fff;border:none;font-size:1.1rem;font-weight:700;cursor:pointer;color:var(--kleur-primair);transition:background .15s}.swiper-btn:hover{background:var(--kleur-primair-licht)}.swiper-btn:active{background:var(--kleur-primair);color:#fff}.swiper-value{display:flex;align-items:center;gap:.1rem;padding:0 .5rem;min-width:40px;justify-content:center;touch-action:none;cursor:ns-resize;-webkit-user-select:none;user-select:none}.swiper-number{font-family:var(--font-kop);font-size:1.2rem;font-weight:800;color:var(--kleur-primair-donker)}.swiper-suffix{font-size:.75rem;color:var(--kleur-grijs-400)}.swiper-bevestig{display:flex;align-items:center;gap:.4rem;margin-top:.3rem;font-size:.75rem;background:var(--kleur-accent-licht);padding:.35rem .5rem;border-radius:var(--radius-sm);flex-wrap:wrap;width:100%}.vergrendeld-banner{display:flex;align-items:center;justify-content:space-between;gap:.5rem;padding:.6rem .75rem;background:var(--kleur-grijs-100);border-radius:var(--radius-md);margin-bottom:.75rem;font-size:.8rem;flex-wrap:wrap}.helft-instelling{margin-bottom:.5rem;padding-bottom:.5rem;border-bottom:1px solid var(--kleur-grijs-100)}.klok-correctie-swiper{margin-top:.4rem;padding-top:.4rem;border-top:1px solid var(--kleur-grijs-100)}.aanmeld-kaart.afgelast{opacity:.6}.afgelast-banner{background:var(--kleur-rood);color:#fff;text-align:center;padding:.3rem;font-weight:700;font-size:.8rem;border-radius:var(--radius-md) var(--radius-md) 0 0;margin:-.75rem -.75rem .5rem}.kaart-type-row{display:flex;align-items:center;justify-content:space-between}.kaart-acties-btn{font-size:1rem;padding:.1rem .4rem}.kaart-acties-menu{display:flex;gap:.35rem;padding:.4rem .75rem;border-top:1px solid var(--kleur-grijs-100);flex-wrap:wrap}.btn-waarschuwing{border-color:var(--kleur-accent)!important;color:var(--kleur-accent-donker)!important}.kaart-beschrijving{font-size:.8rem;color:var(--kleur-grijs-500);font-style:italic;margin-top:.2rem}.kaart-score{font-weight:700;font-size:.85rem;color:var(--kleur-primair)}.type-keuze-3{display:flex;gap:.25rem;flex-wrap:wrap}.rol-uitnodigingen{margin-top:.5rem;padding-top:.5rem;border-top:1px solid var(--kleur-grijs-100)}.rol-uitnodiging-header{display:flex;align-items:center;justify-content:space-between;gap:.35rem;margin-bottom:.35rem;flex-wrap:wrap}.rol-uitnodiging-knoppen{display:flex;gap:.2rem;flex-wrap:wrap}.rol-code-rij{display:flex;align-items:center;gap:.35rem;padding:.25rem 0;font-size:.8rem;flex-wrap:wrap}.rol-code-label{font-weight:600;font-size:.7rem;min-width:80px}.code-label{font-size:.7rem;font-weight:600;color:var(--kleur-grijs-500)}.auth-hint{font-size:.8rem;color:var(--kleur-grijs-400);margin-bottom:.75rem}.rol-badge{background:var(--kleur-primair-licht);color:var(--kleur-primair);padding:.4rem .6rem;border-radius:var(--radius-sm);font-size:.8rem;font-weight:600;margin-bottom:.5rem}.wedstrijd-info-banner{display:flex;align-items:center;gap:.5rem;padding:.5rem .75rem;background:#fff;border-radius:var(--radius-md);box-shadow:var(--schaduw-sm);margin-bottom:.75rem;flex-wrap:wrap;font-size:.85rem}.wedstrijd-teams{flex:1}.wedstrijd-datum{font-size:.75rem;color:var(--kleur-grijs-400)}.gast-badge-row{display:flex;align-items:center;gap:.15rem}.gast-verwijder{background:none;border:none;font-size:.6rem;color:var(--kleur-rood);cursor:pointer;padding:0;line-height:1}.einde-bevestig{margin-top:.75rem;padding:.75rem;background:var(--kleur-rood-licht);border:1.5px solid var(--kleur-rood);border-radius:var(--radius-md)}.einde-bevestig p{font-size:.85rem;font-weight:600;margin-bottom:.5rem}.einde-bevestig-knoppen{display:flex;gap:.4rem}.wedstrijd-knop-rij{padding:.4rem .75rem;border-top:1px solid var(--kleur-grijs-100)}.btn-wedstrijd{width:100%;padding:.45rem;background:var(--kleur-primair-licht);color:var(--kleur-primair);border:1.5px solid var(--kleur-primair);border-radius:var(--radius-sm);font-family:var(--font-kop);font-size:.8rem;font-weight:600;cursor:pointer}.btn-wedstrijd:hover{background:var(--kleur-primair);color:#fff}.wedstrijd-tabs{display:flex;background:var(--kleur-grijs-100);border-radius:var(--radius-md);padding:.15rem;margin-bottom:.75rem}.wedstrijd-tab{flex:1;padding:.5rem;background:transparent;border:none;border-radius:var(--radius-sm);font-family:var(--font-kop);font-size:.8rem;font-weight:600;cursor:pointer;color:var(--kleur-grijs-500)}.wedstrijd-tab.actief{background:#fff;color:var(--kleur-primair);box-shadow:var(--schaduw-sm)}.opstelling-toolbar{display:flex;align-items:center;gap:.75rem;margin-bottom:.75rem;flex-wrap:wrap}.opstelling-info{font-size:.8rem;color:var(--kleur-grijs-500);margin-bottom:.5rem}.veld-container{width:100%;max-width:360px;margin:0 auto .75rem}.veld{position:relative;width:100%;padding-bottom:140%;background:linear-gradient(180deg,#2d8a4e,#34a853 30%,#2d8a4e,#34a853 70%,#2d8a4e);border-radius:var(--radius-md);overflow:hidden;border:2px solid #1a6e35}.veld-middenlijn{position:absolute;top:50%;left:5%;right:5%;height:1px;background:#ffffff4d}.veld-middencirkel{position:absolute;top:50%;left:50%;width:18%;padding-bottom:18%;transform:translate(-50%,-50%);border:1px solid rgba(255,255,255,.3);border-radius:50%}.veld-doel-boven{position:absolute;top:0;left:35%;width:30%;height:5%;border:1px solid rgba(255,255,255,.3);border-top:none}.veld-doel-onder{position:absolute;bottom:0;left:35%;width:30%;height:5%;border:1px solid rgba(255,255,255,.3);border-bottom:none}.veld-16-boven{position:absolute;top:0;left:20%;width:60%;height:14%;border:1px solid rgba(255,255,255,.2);border-top:none}.veld-16-onder{position:absolute;bottom:0;left:20%;width:60%;height:14%;border:1px solid rgba(255,255,255,.2);border-bottom:none}.veld-positie{position:absolute;transform:translate(-50%,-50%);display:flex;flex-direction:column;align-items:center;gap:.1rem;cursor:pointer;z-index:2}.veld-positie.geselecteerd{z-index:10}.veld-positie.geselecteerd .speler-rondje{box-shadow:0 0 0 3px var(--kleur-accent),0 0 10px #ffd70080;transform:scale(1.15)}.speler-rondje{width:38px;height:38px;border-radius:50%;overflow:hidden;background:#fff;border:2px solid rgba(255,255,255,.8);display:flex;align-items:center;justify-content:center;transition:all .15s;box-shadow:0 2px 4px #0000004d}.speler-rondje img{width:100%;height:100%;object-fit:cover}.speler-rondje span{font-family:var(--font-kop);font-size:.75rem;font-weight:800;color:var(--kleur-primair)}.speler-rondje.leeg-rondje{background:#ffffff26;border:2px dashed rgba(255,255,255,.4)}.speler-rondje.leeg-rondje span{color:#ffffff80;font-size:.65rem}.speler-rondje.gast{border-color:var(--kleur-accent)}.speler-naam-veld{font-size:.6rem;color:#fff;font-weight:600;text-shadow:0 1px 2px rgba(0,0,0,.7);text-align:center;max-width:55px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.positie-hint{color:#fff6}.wisselbank{background:var(--kleur-grijs-50);border-radius:var(--radius-md);padding:.75rem;margin-bottom:.75rem}.wisselbank-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:.5rem}.wisselbank-titel{font-family:var(--font-kop);font-size:.85rem;font-weight:700}.wisselbank-lijst{display:flex;flex-wrap:wrap;gap:.5rem}.wissel-speler{display:flex;flex-direction:column;align-items:center;gap:.15rem;cursor:pointer;padding:.25rem;border-radius:var(--radius-sm);transition:all .15s;position:relative}.wissel-speler:hover{background:var(--kleur-grijs-200)}.wissel-speler.geselecteerd{background:var(--kleur-accent-licht);outline:2px solid var(--kleur-accent)}.speler-rondje.klein{width:32px;height:32px}.wissel-naam{font-size:.65rem;font-weight:600;color:var(--kleur-grijs-700);max-width:50px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-align:center}.gast-label{font-size:.5rem;background:var(--kleur-accent);color:var(--kleur-primair-donker);padding:.05rem .2rem;border-radius:99px;font-weight:700}.selectie-hint{text-align:center;padding:.4rem;font-size:.75rem;color:var(--kleur-primair);font-weight:500;background:var(--kleur-primair-licht);border-radius:var(--radius-sm);margin-bottom:.5rem}.opstelling-acties{text-align:center;margin-bottom:.75rem}.gast-form{display:flex;flex-direction:column;gap:.4rem;margin-bottom:.5rem}.gast-input{width:100%;padding:.5rem .75rem;border:1.5px solid var(--kleur-grijs-200);border-radius:var(--radius-sm);font-size:.85rem}.gast-form .btn-primair{width:100%}.scorebord{display:flex;align-items:center;justify-content:center;gap:.75rem;background:var(--kleur-primair-donker);color:#fff;padding:.75rem 1rem;border-radius:var(--radius-md);margin-bottom:.75rem}.score-team{text-align:center;flex:1;min-width:0}.score-naam{display:block;font-size:.7rem;font-weight:500;opacity:.8;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.score-nummer{display:block;font-family:var(--font-kop);font-size:1.8rem;font-weight:800}.score-midden{text-align:center;flex-shrink:0}.klok-display{font-family:monospace;font-size:1.3rem;font-weight:700;letter-spacing:1px}.status-label{font-size:.65rem;opacity:.7}.klok-bediening{background:#fff;padding:.75rem;border-radius:var(--radius-md);box-shadow:var(--schaduw-sm);margin-bottom:.75rem}.klok-knoppen{display:flex;gap:.35rem;flex-wrap:wrap}.btn-waarschuwing-btn{padding:.4rem .75rem;background:var(--kleur-accent);color:var(--kleur-primair-donker);border:none;border-radius:var(--radius-sm);font-weight:600;cursor:pointer;font-size:.8rem}.btn-rood-btn{padding:.4rem .75rem;background:var(--kleur-rood);color:#fff;border:none;border-radius:var(--radius-sm);font-weight:600;cursor:pointer;font-size:.8rem}.event-knoppen{display:flex;gap:.35rem;flex-wrap:wrap;margin-bottom:.75rem}.event-btn{padding:.4rem .6rem;border:1.5px solid var(--kleur-grijs-200);border-radius:var(--radius-sm);background:#fff;font-size:.8rem;font-weight:600;cursor:pointer}.event-btn.doelpunt:hover{border-color:var(--kleur-groen);background:#dcfce7}.event-btn.wissel:hover{border-color:var(--kleur-primair);background:var(--kleur-primair-licht)}.event-btn.kaart:hover{border-color:#eab308;background:#fefce8}.event-btn.kaart-rood:hover{border-color:var(--kleur-rood);background:var(--kleur-rood-licht)}.event-form{background:#fff;padding:.75rem;border-radius:var(--radius-md);box-shadow:var(--schaduw-sm);margin-bottom:.75rem;border:1.5px solid var(--kleur-primair-licht)}.event-form h4{font-size:.9rem;margin-bottom:.5rem}.tijdlijn{background:#fff;padding:.75rem;border-radius:var(--radius-md);box-shadow:var(--schaduw-sm)}.tijdlijn h3{font-size:.85rem;margin-bottom:.5rem}.tijdlijn-lijst{display:flex;flex-direction:column;gap:.25rem}.tijdlijn-item{display:flex;align-items:center;gap:.4rem;padding:.3rem .4rem;border-radius:var(--radius-sm);font-size:.8rem}.tijdlijn-item:hover{background:var(--kleur-grijs-50)}.tijdlijn-minuut{font-weight:700;color:var(--kleur-grijs-500);min-width:25px;font-family:monospace;font-size:.75rem}.tijdlijn-icoon{font-size:.9rem}.tijdlijn-tekst{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tijdlijn-del{opacity:.3}.tijdlijn-item:hover .tijdlijn-del{opacity:1}.team-acties{display:flex;gap:.3rem;margin-top:.4rem}.code-bewerk-rij{display:flex;gap:.4rem;align-items:center}.code-bewerk-rij .code-input{flex:1;font-family:monospace;font-size:.85rem}.modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:.75rem}.modal-content{background:#fff;border-radius:var(--radius-md);width:100%;max-width:440px;max-height:90vh;overflow-y:auto;box-shadow:0 20px 60px #0000004d}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:.75rem 1rem;border-bottom:1px solid var(--kleur-grijs-100)}.modal-header h3{font-size:1rem;font-weight:700}.modal-sluiten{background:none;border:none;font-size:1.1rem;cursor:pointer;color:var(--kleur-grijs-400)}.modal-form{padding:1rem}.modal-form .form-groep{margin-bottom:.6rem}.acties-cel{white-space:nowrap}.acties-cel .btn-klein{margin-left:.2rem}.sportlink-sync h3{margin-bottom:.5rem}.sync-uitleg{font-size:.8rem;color:var(--kleur-grijs-500);margin-bottom:.75rem;line-height:1.4}.sync-status{display:flex;align-items:center;gap:.5rem;margin-bottom:.75rem;padding:.5rem .75rem;background:var(--kleur-grijs-100);border-radius:var(--radius-sm)}.sync-label{font-size:.75rem;font-weight:600;color:var(--kleur-grijs-500)}.sync-tijd{font-size:.8rem;font-weight:600}.sync-resultaat{margin-top:.75rem}.sync-info{margin-top:1rem}.sync-info h4{font-size:.85rem;margin-bottom:.5rem}.sync-info-lijst{display:flex;flex-direction:column;gap:.5rem}.sync-info-item{display:flex;gap:.5rem;padding:.5rem;background:var(--kleur-grijs-50, #fafafa);border-radius:var(--radius-sm)}.sync-info-icoon{font-size:1.2rem;flex-shrink:0}.sync-info-item strong{font-size:.8rem;display:block}.sync-info-item p{font-size:.7rem;color:var(--kleur-grijs-500);margin:0}.admin-tabs{display:flex;gap:.15rem;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;background:var(--kleur-grijs-100);border-radius:var(--radius-md);padding:.2rem;margin-bottom:.75rem}.admin-tabs::-webkit-scrollbar{display:none}.admin-tab{display:flex;align-items:center;gap:.3rem;padding:.45rem .7rem;background:transparent;border:none;border-radius:var(--radius-sm);font-family:var(--font-kop);font-size:.8rem;font-weight:600;cursor:pointer;color:var(--kleur-grijs-500);white-space:nowrap;flex-shrink:0}.admin-tab.actief{background:#fff;color:var(--kleur-primair);box-shadow:var(--schaduw-sm)}.inline-form{display:flex;gap:.4rem;margin-bottom:.75rem;flex-wrap:wrap}.inline-form input{flex:1;min-width:120px}.leden-filters{display:flex;gap:.25rem;flex-wrap:wrap;margin-bottom:.75rem}.filter-btn{padding:.3rem .6rem;border:1.5px solid var(--kleur-grijs-200);border-radius:var(--radius-sm);background:#fff;font-size:.75rem;font-weight:600;cursor:pointer;white-space:nowrap}.filter-btn.actief{background:var(--kleur-primair);color:#fff;border-color:var(--kleur-primair)}.filter-count{margin-left:.2rem;font-size:.65rem;opacity:.7}.leden-tabel{overflow-x:auto;-webkit-overflow-scrolling:touch}.leden-tabel table{width:100%;border-collapse:collapse;font-size:.8rem}.leden-tabel th{text-align:left;padding:.4rem .5rem;border-bottom:2px solid var(--kleur-grijs-200);font-size:.7rem;color:var(--kleur-grijs-500);white-space:nowrap}.leden-tabel td{padding:.4rem .5rem;border-bottom:1px solid var(--kleur-grijs-100);white-space:nowrap}.naam-cel{font-weight:600}.teams-lijst{display:flex;flex-direction:column;gap:.5rem}.team-kaart{background:#fff;border-radius:var(--radius-md);padding:.75rem;box-shadow:var(--schaduw-sm)}.team-info{display:flex;align-items:center;justify-content:space-between;margin-bottom:.35rem}.team-info h3{font-size:.9rem}.leden-count{font-size:.75rem;color:var(--kleur-grijs-400)}.team-code{display:flex;align-items:center;gap:.35rem;flex-wrap:wrap}.code-waarde{background:var(--kleur-grijs-100);padding:.2rem .5rem;border-radius:var(--radius-sm);font-family:monospace;font-size:.8rem;letter-spacing:.5px}.team-logo-mini{width:20px;height:20px;object-fit:contain;vertical-align:middle}.tegenstander{display:flex;align-items:center;gap:.35rem;font-weight:600;font-size:.85rem;flex-wrap:wrap}.btn-primair-mini{background:var(--kleur-primair)!important;color:#fff!important;border-color:var(--kleur-primair)!important}.kaart-bewerk-form{padding:.5rem .75rem;border-top:1px solid var(--kleur-primair-licht);background:var(--kleur-primair-licht)}.form-groep-compact{margin-bottom:.4rem}.form-groep-compact label{display:block;font-size:.7rem;font-weight:600;color:var(--kleur-grijs-500);margin-bottom:.15rem}.form-groep-compact input,.form-groep-compact textarea{width:100%;padding:.35rem .5rem;border:1.5px solid var(--kleur-grijs-200);border-radius:var(--radius-sm);font-size:.8rem}.kaart-bewerk-acties{display:flex;gap:.3rem;justify-content:flex-end;margin-top:.35rem}.reeks-toggle{display:flex;align-items:center;gap:.5rem;cursor:pointer;font-size:.85rem;font-weight:600}.reeks-toggle input{width:18px;height:18px;accent-color:var(--kleur-primair)}.reeks-dagen{display:flex;gap:.25rem;flex-wrap:wrap}.dag-btn{width:40px;height:36px;border:1.5px solid var(--kleur-grijs-200);border-radius:var(--radius-sm);background:#fff;font-size:.75rem;font-weight:700;cursor:pointer;text-transform:capitalize;transition:all .15s}.dag-btn:hover{border-color:var(--kleur-primair)}.dag-btn.actief{background:var(--kleur-primair);color:#fff;border-color:var(--kleur-primair)}.reeks-voorbeeld{display:flex;align-items:center;gap:.5rem;padding:.5rem .75rem;background:var(--kleur-primair-licht);border-radius:var(--radius-sm);margin-bottom:.5rem;flex-wrap:wrap}.reeks-voorbeeld-label{font-weight:700;font-size:.8rem;color:var(--kleur-primair)}.reeks-voorbeeld-data{font-size:.75rem;color:var(--kleur-grijs-500)}.stand-selector-rij{margin-bottom:.5rem}.stand-select{width:100%;padding:.5rem .75rem;border:1.5px solid var(--kleur-grijs-200);border-radius:var(--radius-sm);font-size:.85rem;font-weight:600;background:#fff}.stand-toolbar{display:flex;gap:.5rem;align-items:center;margin-bottom:.75rem}.stand-select-poule{flex:1}.stand-details-btn{padding:.45rem .75rem;border:1.5px solid var(--kleur-grijs-200);border-radius:var(--radius-sm);background:#fff;font-size:.75rem;font-weight:600;cursor:pointer;white-space:nowrap;color:var(--kleur-grijs-500);transition:all .15s}.stand-details-btn.actief{background:var(--kleur-primair);color:#fff;border-color:var(--kleur-primair)}.stand-wrapper{border-radius:var(--radius-md);overflow:hidden;box-shadow:var(--schaduw-sm)}.stand-tabel{width:100%;border-collapse:collapse;background:#fff}.stand-tabel thead{background:var(--kleur-primair)}.stand-tabel th{padding:.5rem .35rem;color:#fff;font-size:.7rem;font-weight:700;text-align:center;white-space:nowrap}.stand-tabel th.st-team{text-align:left}.stand-tabel th.st-pos{width:30px}.stand-tabel th.st-logo{width:32px}.stand-tabel th.st-pnt{color:var(--kleur-accent)}.stand-tabel tbody tr{border-bottom:1px solid var(--kleur-grijs-100);transition:background .1s}.stand-tabel tbody tr:last-child{border-bottom:none}.stand-tabel td{padding:.55rem .35rem;text-align:center;font-size:.8rem}.stand-tabel td.st-pos{font-weight:700;color:var(--kleur-grijs-400);font-size:.75rem}.stand-tabel td.st-team{text-align:left;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:200px}.stand-tabel td.st-logo{padding:.3rem .2rem}.stand-tabel td.st-pnt{font-weight:800;color:var(--kleur-primair);font-family:var(--font-kop)}.st-logo-img{width:22px;height:22px;object-fit:contain;display:block;margin:0 auto}.st-eigen{background:var(--kleur-accent-licht)!important}.st-eigen td{font-weight:700!important}.st-eigen td.st-team{color:var(--kleur-primair-donker)}.team-kaart-acties{display:flex;align-items:center;gap:.3rem}.team-info h3{font-size:.9rem;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.admin-tabs{position:sticky;top:0;z-index:10}@media(max-width:600px){.dashboard-header{padding:.5rem .75rem}.dashboard-header h1{font-size:1rem}.header-naam{display:none}.header-logo{width:28px;height:28px}.dashboard-nav{padding:.2rem .25rem;position:sticky;top:0;z-index:20}.nav-tab{padding:.45rem .55rem;font-size:.7rem;gap:.2rem}.nav-tab .nav-icon{font-size:.85rem}.dashboard-content{padding:.5rem}.detail-kolommen{grid-template-columns:1fr}.aanmeld-rij{padding:.4rem .5rem}.scorebord{padding:.5rem .75rem;gap:.5rem}.score-nummer{font-size:1.5rem}.klok-display{font-size:1.1rem}.veld-container{max-width:100%}.speler-rondje{width:34px;height:34px}.speler-rondje.klein{width:28px;height:28px}.speler-naam-veld{font-size:.55rem;max-width:48px}.wissel-naam{font-size:.6rem;max-width:44px}.modal-content{max-width:100%;margin:.5rem}.form-rij{flex-direction:column;gap:0}.event-knoppen{gap:.25rem}.event-btn{padding:.35rem .5rem;font-size:.75rem}.klok-knoppen{gap:.25rem}.btn-sm{padding:.3rem .5rem!important;font-size:.75rem!important}.leden-tabel table{font-size:.7rem}.leden-tabel th,.leden-tabel td{padding:.3rem .25rem}.admin-tab{padding:.35rem .5rem;font-size:.7rem;gap:.2rem}.inline-form{flex-direction:column}.inline-form input{width:100%;min-width:0}.inline-form .btn-primair{width:100%}.team-kaart{padding:.6rem}.team-code{font-size:.7rem;gap:.25rem}.team-info{flex-wrap:wrap;gap:.25rem}.team-info h3{font-size:.85rem;flex:1}.team-kaart-acties{gap:.2rem}.leden-count{font-size:.65rem}.code-waarde{font-size:.7rem;padding:.15rem .35rem}.btn-klein{padding:.25rem .35rem;font-size:.75rem}.rol-uitnodiging-header{flex-direction:column;align-items:flex-start}.rol-uitnodiging-knoppen{width:100%}.rol-uitnodiging-knoppen .btn-klein{flex:1;text-align:center;font-size:.65rem}.rol-code-rij{font-size:.7rem}.rol-code-label{min-width:60px;font-size:.6rem}.stand-tabel th{padding:.4rem .2rem;font-size:.6rem}.stand-tabel td{padding:.45rem .2rem;font-size:.75rem}.stand-tabel td.st-team{max-width:120px;font-size:.7rem}.st-logo-img{width:18px;height:18px}.stand-toolbar{gap:.35rem}.stand-select{font-size:.8rem;padding:.4rem .5rem}.stand-details-btn{font-size:.7rem;padding:.4rem .6rem}.kaart-acties-menu{padding:.3rem .5rem;gap:.25rem}.kaart-bewerk-form{padding:.4rem .5rem}.tegenstander{font-size:.8rem}.team-logo-mini{width:16px;height:16px}.sectie-header{flex-direction:column;align-items:flex-start}.team-filter-select{width:100%}}@media(max-width:380px){.speler-rondje{width:30px;height:30px}.speler-rondje span{font-size:.65rem}.speler-naam-veld{font-size:.5rem;max-width:40px}.nav-tab{padding:.4rem .45rem;font-size:.65rem}.score-nummer{font-size:1.3rem}.admin-tab{font-size:.6rem;padding:.3rem .4rem}.stand-tabel td{font-size:.7rem}.stand-tabel td.st-team{max-width:90px}}
