:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#0b0b0b;--surface-1:#151515;--surface-2:#1e1e1e;--surface-3:#262626;--text:#fff;--text-2:#d0d0d0;--text-3:#a3a3a3;--border:#ffffff1a;--border-strong:#fff3;--orange:#ff6a00;--orange-hover:#ff8124;--orange-soft:#ff6a0024;--orange-line:#ff6a0073;--green:#22c55e;--green-soft:#22c55e24;--red:#ff5a4f;--red-soft:#ff5a4f1f;--blue:#5aa9ff;--blue-soft:#5aa9ff24;--discord:#aab3ff;--ink:#0b0b0b;--radius:16px;--radius-sm:12px;--gap:20px;--ease:cubic-bezier(.4, 0, .2, 1);--bottom-nav-h:0px}*{box-sizing:border-box}html{-webkit-tap-highlight-color:transparent;-webkit-text-size-adjust:100%}body{background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;margin:0;font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;font-size:16px;line-height:1.5}a{color:inherit}img{max-width:100%;display:block}button,input,select,textarea{font:inherit}::selection{background:var(--orange);color:var(--ink)}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}:focus{outline:none}:focus-visible{outline:3px solid var(--orange);outline-offset:2px;border-radius:6px}*{scrollbar-width:thin;scrollbar-color:var(--border-strong) transparent}code{color:var(--text-2);font-family:ui-monospace,Cascadia Code,monospace;font-size:.92em}@keyframes fadeIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}@keyframes pulse{0%,to{box-shadow:0 0 #22c55e8c}50%{box-shadow:0 0 0 5px #22c55e00}}@keyframes sheetUp{0%{transform:translateY(100%)}to{transform:none}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.001ms!important;animation-duration:.001ms!important}}.page{max-width:1240px;margin:0 auto;padding:28px 28px 48px}.page-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:12px 20px;margin-bottom:20px;display:flex}.page-title{letter-spacing:-.02em;margin:0;font-size:clamp(26px,3.2vw,32px);font-weight:800;line-height:1.15}.page-intro{color:var(--text-2);max-width:62ch;margin:6px 0 0;font-size:17px}.page-header-actions{flex-wrap:wrap;gap:8px;display:flex}.grid{gap:var(--gap);align-items:start;display:grid}.grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-sidebar{grid-template-columns:minmax(280px,1fr) minmax(0,2fr)}.grid-sidebar-right{grid-template-columns:minmax(0,2fr) minmax(280px,1fr)}.grid-cal{grid-template-columns:minmax(0,2.1fr) minmax(300px,1fr)}.stack{gap:var(--gap);flex-direction:column;min-width:0;display:flex}.stack-sm{flex-direction:column;gap:10px;display:flex}.section-gap{margin-top:var(--gap)}.center-shell{background:radial-gradient(circle at 50% 0%, #ff6a001f, transparent 60%), var(--bg);flex-direction:column;justify-content:center;align-items:center;gap:16px;min-height:100dvh;padding:24px 16px;display:flex}.center-shell .card{font-size:17px}.center-shell .btn-primary{width:100%}.site-credit{text-align:center;color:var(--text-3);padding:0 20px 28px;font-size:13px}.site-credit a{color:var(--text-2);text-decoration:none}.site-credit a:hover{color:var(--orange);text-decoration:underline}.center-shell .site-credit{padding:0}.logo-img{height:auto;margin:0 auto;display:block}.topbar{z-index:30;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--border);background:#151515eb;align-items:center;gap:20px;padding:10px 28px;display:flex;position:sticky;top:0}.brand{flex-shrink:0}.brand img{width:auto;max-width:none;height:30px}.nav-top{flex:1;gap:4px;display:flex}.nav-item{min-height:44px;color:var(--text-2);white-space:nowrap;transition:background .15s var(--ease), color .15s var(--ease);border-radius:999px;align-items:center;gap:8px;padding:8px 14px;font-size:15px;font-weight:600;text-decoration:none;display:inline-flex;position:relative}.nav-item:hover{background:var(--surface-3);color:var(--text)}.nav-item.active{background:var(--orange);color:var(--ink)}.nav-icon{display:inline-flex;position:relative}.nav-count{background:var(--red);color:#fff;border:2px solid var(--surface-1);border-radius:999px;justify-content:center;align-items:center;min-width:19px;height:19px;padding:0 5px;font-size:11px;font-weight:800;display:inline-flex;position:absolute;top:-7px;right:-9px}.nav-bottom{display:none}.topbar-right{align-items:center;gap:12px;margin-left:auto;display:flex}.user-chip{align-items:center;gap:10px;min-width:0;display:flex}.avatar{object-fit:cover;background:var(--surface-2);border-radius:50%;flex-shrink:0;width:36px;height:36px}.avatar-fallback{color:var(--orange);background:var(--orange-soft);border:1px solid var(--orange-line);justify-content:center;align-items:center;font-weight:800;display:flex}.user-text{flex-direction:column;min-width:0;line-height:1.25;display:flex}.user-name{text-overflow:ellipsis;white-space:nowrap;max-width:180px;font-size:14px;font-weight:700;overflow:hidden}.user-rank{color:var(--text-3);font-size:13px}.btn-logout{gap:6px}.badge{color:var(--text-3);background:var(--surface-2);border:1px solid var(--border);white-space:nowrap;border-radius:999px;align-items:center;gap:7px;padding:5px 11px;font-size:13px;font-weight:600;display:inline-flex}.badge-dot{background:currentColor;border-radius:50%;width:8px;height:8px}.badge.live{color:var(--green);border-color:#22c55e59}.badge.live .badge-dot{animation:1.8s ease-in-out infinite pulse}.page-tabs{background:var(--surface-1);border:1px solid var(--border);scrollbar-width:none;border-radius:999px;gap:6px;width:fit-content;max-width:100%;margin:-4px 0 20px;padding:4px;display:flex;overflow-x:auto}.page-tab{min-height:42px;color:var(--text-2);white-space:nowrap;transition:background .15s var(--ease), color .15s var(--ease);border-radius:999px;align-items:center;gap:8px;padding:8px 18px;font-size:15px;font-weight:600;text-decoration:none;display:inline-flex}.page-tab:hover{color:var(--text);background:var(--surface-3)}.page-tab.active{background:var(--orange);color:var(--ink)}.tab-count{background:var(--red);color:#fff;border-radius:999px;justify-content:center;align-items:center;min-width:22px;height:22px;padding:0 6px;font-size:12px;font-weight:800;display:inline-flex}.page-tab.active .tab-count{background:var(--ink);color:var(--orange)}.card{background:var(--surface-1);border:1px solid var(--border);border-radius:var(--radius);min-width:0;animation:fadeIn .3s var(--ease) both;padding:22px}.card-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;margin-bottom:14px;display:flex}.card-head .card-title{margin:0}.card-title{letter-spacing:-.01em;align-items:center;gap:10px;margin:0 0 14px;font-size:19px;font-weight:700;display:flex}.card-intro{margin:-6px 0 16px}.muted{color:var(--text-3);margin:4px 0 0;font-size:15px}.text-strong{color:var(--text)}.footnote{margin-top:18px;font-size:14px}.count-badge{background:var(--orange-soft);min-width:26px;height:26px;color:var(--orange);border-radius:999px;justify-content:center;align-items:center;padding:0 8px;font-size:14px;font-weight:800;display:inline-flex}.count-badge.green{background:var(--green-soft);color:var(--green)}.pill-tag{background:var(--surface-2);border:1px solid var(--border-strong);color:var(--text-2);white-space:nowrap;border-radius:999px;align-items:center;gap:6px;padding:5px 12px;font-size:14px;font-weight:700;display:inline-flex}.pill-tag.small{padding:2px 9px;font-size:12.5px}.pill-tag.accent{background:var(--orange-soft);border-color:var(--orange-line);color:var(--orange)}.pill-tag.outline{border-color:var(--orange);color:var(--orange);background:0 0}.pill-tag.green{background:var(--green-soft);color:var(--green);border-color:#22c55e66}.pill-tag.absent{background:var(--blue-soft);color:var(--blue);border-color:#5aa9ff66}.pill-tag.dim{color:var(--text-3)}.empty-state{text-align:center;color:var(--text-3);border:1px dashed var(--border-strong);border-radius:var(--radius-sm);background:var(--surface-2);margin:0;padding:22px 16px;font-size:15px}.link-more,.subtle-link{color:var(--orange);margin-top:12px;font-size:15px;font-weight:600;text-decoration:none;display:inline-block}.link-more:hover,.subtle-link:hover{text-decoration:underline}.btn-primary,.btn-secondary,.btn-ghost,.btn-danger,.btn-success{cursor:pointer;white-space:nowrap;min-height:48px;transition:background .15s var(--ease), border-color .15s var(--ease), color .15s var(--ease), transform .1s var(--ease);border:1px solid #0000;border-radius:999px;justify-content:center;align-items:center;gap:8px;padding:10px 22px;font-size:16px;font-weight:700;text-decoration:none;display:inline-flex}.btn-primary:active,.btn-secondary:active,.btn-danger:active,.btn-success:active{transform:scale(.98)}.btn-primary{background:var(--orange);color:var(--ink)}.btn-primary:hover{background:var(--orange-hover)}.btn-secondary{background:var(--orange-soft);border-color:var(--orange-line);color:var(--orange)}.btn-secondary:hover{background:#ff6a003d}.btn-ghost{border-color:var(--border-strong);color:var(--text-2);background:0 0}.btn-ghost:hover{background:var(--surface-3);color:var(--text)}.btn-ghost.danger{color:var(--red);border-color:#ff5a4f73}.btn-ghost.danger:hover{background:var(--red-soft)}.btn-danger{background:var(--red);color:#fff}.btn-danger:hover{background:#ff7068}.btn-success{background:var(--green);color:var(--ink)}.btn-success:hover{background:#3ed673}.btn-sm{min-height:42px;padding:8px 16px;font-size:15px}.btn-block{width:100%}.btn-icon{border:1px solid var(--border-strong);width:44px;height:44px;color:var(--text-2);cursor:pointer;background:0 0;border-radius:50%;justify-content:center;align-items:center;display:inline-flex}.btn-icon:hover{background:var(--surface-3);color:var(--text)}button:disabled{opacity:.55;cursor:not-allowed;transform:none!important}.button-row{flex-wrap:wrap;gap:10px;margin-top:14px;display:flex}.form{flex-direction:column;gap:16px;display:flex}.field{border:none;flex-direction:column;gap:7px;min-width:0;margin:0;padding:0;display:flex}.field>span,.field>legend{color:var(--text-2);padding:0;font-size:15px;font-weight:600}.field input,.field select,.field textarea,.select-compact select,.search-field input{width:100%;min-height:50px;color:var(--text);background:var(--surface-2);border:1px solid var(--border-strong);border-radius:var(--radius-sm);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;transition:border-color .15s var(--ease);padding:12px 14px;font-size:16px}.field textarea{resize:vertical;min-height:80px}.field input:focus-visible,.field select:focus-visible,.field textarea:focus-visible,.select-compact select:focus-visible,.search-field input:focus-visible{border-color:var(--orange);box-shadow:0 0 0 3px var(--orange-soft);outline:none}.field-row{grid-template-columns:1fr 1fr;gap:12px;display:grid}.select-compact select{border-radius:999px;width:auto;min-height:42px;padding:8px 36px 8px 14px;font-size:15px;font-weight:600}.search-field{align-items:center;display:flex;position:relative}.search-field svg{color:var(--text-3);pointer-events:none;position:absolute;left:14px}.search-field input{padding-left:44px}.form-message{margin:0;font-size:15px;font-weight:600}.form-message.ok{color:var(--green)}.form-message.error{color:var(--red)}.choice-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.choice{border-radius:var(--radius-sm);border:2px solid var(--border-strong);background:var(--surface-2);min-height:50px;color:var(--text-2);cursor:pointer;text-align:left;padding:10px 12px;font-size:15px;font-weight:700}.choice:hover{border-color:var(--soort,var(--orange))}.choice.active{border-color:var(--soort,var(--orange));background:color-mix(in srgb, var(--soort,var(--orange)) 18%, var(--surface-2));color:var(--text)}.clock-card{text-align:center;border-width:2px;flex-direction:column;align-items:center;gap:6px;padding:32px 24px;display:flex}.clock-card.on{background:linear-gradient(180deg, #22c55e14, var(--surface-1) 60%);border-color:#22c55e80}.clock-status{color:var(--text-2);align-items:center;gap:10px;margin:0;font-size:18px;font-weight:700;display:inline-flex}.clock-card.on .clock-status{color:var(--green)}.status-dot{background:var(--text-3);border-radius:50%;flex-shrink:0;width:12px;height:12px}.clock-card.on .status-dot,.status-dot.on{background:var(--green);animation:1.8s ease-in-out infinite pulse}.clock-timer{letter-spacing:-.02em;font-variant-numeric:tabular-nums;margin:8px 0 0;font-size:clamp(48px,8vw,68px);font-weight:800;line-height:1}.clock-card:not(.on) .clock-timer{color:var(--text-3)}.btn-clock{background:var(--green);width:100%;max-width:420px;min-height:68px;color:var(--ink);cursor:pointer;transition:transform .1s var(--ease), background .15s var(--ease);border:none;border-radius:999px;margin-top:18px;font-size:22px;font-weight:800;box-shadow:0 10px 30px #22c55e40}.btn-clock:hover{background:#3ed673}.btn-clock:active{transform:scale(.98)}.btn-clock.stop{background:var(--red);color:#fff;box-shadow:0 10px 30px #ff5a4f40}.btn-clock.stop:hover{background:#ff7068}.clock-card .form-message{margin-top:10px}.stat-card{flex-direction:column;align-items:flex-start;gap:6px;display:flex}.stat-label{text-transform:uppercase;letter-spacing:.05em;color:var(--text-3);margin:0;font-size:14px;font-weight:700}.big-number{font-variant-numeric:tabular-nums;margin:0;font-size:clamp(36px,5vw,46px);font-weight:800;line-height:1.05}.next-step-line{color:var(--text-2);flex-wrap:wrap;align-items:center;gap:10px;margin:0;font-size:18px;display:flex}.next-step-line strong{color:var(--orange)}.next-step-line .arrow{color:var(--text-3)}.tile-grid{grid-template-columns:repeat(auto-fill,minmax(290px,1fr));gap:12px;margin:0;padding:0;list-style:none;display:grid}.tile{border-radius:var(--radius-sm);background:var(--surface-2);border:1px solid var(--border);flex-direction:column;gap:4px;min-width:0;padding:16px;display:flex}.tile-accent,.tile.status-open{border-left:4px solid var(--orange)}.tile.status-ingepland{border-left:4px solid var(--blue)}.tile.status-afgerond{border-left:4px solid var(--green)}.tile.status-afgewezen{opacity:.7}.tile-head{justify-content:space-between;align-items:center;gap:8px;margin-bottom:6px;display:flex}.tile-date{color:var(--text-3);font-size:13px}.tile-title{overflow-wrap:anywhere;font-size:17px;font-weight:700}.tile-sub{color:var(--text-3);font-size:14px;font-weight:500}.tile-line{color:var(--text-2);font-size:15px}.tile-note{color:var(--text-3);overflow-wrap:anywhere;font-size:14px;font-style:italic}.tile .button-row{margin-top:10px}.status-pill{border:1px solid var(--border-strong);color:var(--text-2);white-space:nowrap;border-radius:999px;padding:3px 11px;font-size:13px;font-weight:700;display:inline-flex}.status-pill.open{color:var(--orange);border-color:var(--orange-line);background:var(--orange-soft)}.status-pill.ingepland{color:var(--blue);background:var(--blue-soft);border-color:#5aa9ff73}.status-pill.afgerond{color:var(--green);background:var(--green-soft);border-color:#22c55e73}.status-pill.afgewezen{color:var(--text-3)}.contact-links{flex-wrap:wrap;gap:6px;margin-top:8px;display:flex}.contact-chip{min-height:36px;color:var(--discord);cursor:pointer;white-space:nowrap;background:#5865f224;border:1px solid #5865f280;border-radius:999px;align-items:center;padding:6px 12px;font-size:14px;font-weight:600;text-decoration:none;display:inline-flex}.contact-chip:hover{background:#5865f242}.person-list,.manage-list,.hours-list,.checklist{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.person-list li,.manage-list li{border-radius:var(--radius-sm);background:var(--surface-2);border:1px solid var(--border);align-items:center;gap:12px;padding:12px 14px;display:flex}.person-list .legend-dot{align-self:flex-start;margin-top:8px}.person-main{flex-direction:column;flex:1;gap:1px;min-width:0;display:flex}.person-name{overflow-wrap:anywhere;align-items:center;gap:8px;font-size:16px;font-weight:700;display:flex}.person-sub{color:var(--text-3);font-size:14px}.person-sub.warn{color:#f5b041}.person-value{font-variant-numeric:tabular-nums;white-space:nowrap;font-size:16px;font-weight:800}.person-value.green{color:var(--green)}.manage-list{margin-top:14px}.manage-list li{flex-wrap:wrap}.manage-list li.confirming{background:var(--red-soft);border-color:#ff5a4f99}.confirm-box{color:var(--red);flex-direction:column;align-items:flex-end;gap:2px;font-weight:700;display:flex}.confirm-box .button-row{margin-top:6px}.calc-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.calc-tile{text-align:left;min-height:64px;color:var(--text);background:var(--surface-2);border:2px solid var(--border);border-radius:var(--radius-sm);cursor:pointer;transition:border-color .15s var(--ease), background .15s var(--ease);align-items:center;gap:12px;padding:12px 14px;display:flex}.calc-tile:hover{border-color:var(--border-strong)}.calc-tile.aan{border-color:var(--orange);background:var(--orange-soft)}.calc-check{border:2px solid var(--border-strong);width:26px;height:26px;color:var(--ink);border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.calc-tile.aan .calc-check{background:var(--orange);border-color:var(--orange)}.calc-main{flex-direction:column;flex:1;min-width:0;display:flex}.calc-name{font-size:17px;font-weight:800}.calc-desc{color:var(--text-3);overflow-wrap:anywhere;font-size:13px}.calc-price{font-variant-numeric:tabular-nums;flex-shrink:0;font-weight:800}@media (max-width:699px){.calc-grid{grid-template-columns:minmax(0,1fr)}}.calc-summary{position:sticky;top:80px}.calc-regels{flex-direction:column;gap:6px;margin:0 0 4px;padding:0;list-style:none;display:flex}.calc-regels li{font-variant-numeric:tabular-nums;justify-content:space-between;gap:12px;display:flex}.aanneem-naam{grid-template-columns:2fr 1fr}.verjaardag-row{grid-template-columns:1fr 2fr 1.3fr}.manage-actions{margin-top:0}.manage-edit{border-top:1px solid var(--border);flex-direction:column;flex-basis:100%;gap:10px;padding-top:12px;display:flex}.manage-edit-row{flex-wrap:wrap;align-items:flex-end;gap:10px;display:flex}.manage-edit-row .field{flex:220px}.hours-list li{border-radius:var(--radius-sm);background:var(--surface-2);border:1px solid var(--border);align-items:flex-start;gap:12px;padding:12px 14px;display:flex}.hours-pos{background:var(--surface-3);width:30px;height:30px;color:var(--text-2);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:14px;font-weight:800;display:inline-flex}.hours-list li:first-child .hours-pos{background:var(--orange);color:var(--ink)}.hours-main{flex:1;min-width:0}.hours-top{justify-content:space-between;gap:12px;display:flex}.hours-name{text-overflow:ellipsis;white-space:nowrap;font-size:16px;font-weight:700;overflow:hidden}.hours-value{font-variant-numeric:tabular-nums;white-space:nowrap;font-size:16px;font-weight:800}.hours-meta{flex-wrap:wrap;gap:6px;margin:4px 0 8px;display:flex}.meter{background:var(--surface-3);border-radius:999px;height:8px;display:block;overflow:hidden}.meter>span{background:linear-gradient(90deg, #c50, var(--orange));height:100%;transition:width .4s var(--ease);border-radius:999px;display:block}.change-list{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.change-list li{border-radius:var(--radius-sm);background:var(--surface-2);border:1px solid var(--border);border-left:4px solid var(--change,var(--border-strong));align-items:center;gap:12px;padding:12px 14px;display:flex}.change-badge{text-align:center;min-width:118px;color:var(--change);background:color-mix(in srgb, var(--change) 15%, transparent);border-radius:999px;flex-shrink:0;padding:4px 10px;font-size:13px;font-weight:800}.change-date{color:var(--text-3);white-space:nowrap;font-size:13px}.change-promotie{--change:var(--green)}.change-degradatie{--change:#f5b041}.change-nieuw{--change:var(--blue)}.change-uit{--change:var(--red)}.change-neutraal{--change:var(--text-3)}.file-button{cursor:pointer;position:relative}.file-button input{opacity:0;cursor:pointer;position:absolute;inset:0}.file-button:focus-within{outline:3px solid var(--orange);outline-offset:2px}.import-preview{border-radius:var(--radius-sm);background:var(--surface-2);border:1px solid var(--border);flex-direction:column;gap:10px;padding:14px;display:flex}.import-group{border-left:4px solid var(--change);background:var(--surface-1);border-radius:8px;padding:8px 12px}.import-group summary{cursor:pointer;flex-wrap:wrap;align-items:center;gap:10px;min-height:36px;font-size:15px;font-weight:600;display:flex}.import-group ul{flex-direction:column;gap:3px;margin:8px 0 4px;padding-left:18px;font-size:15px;display:flex}.check-row{color:var(--red);cursor:pointer;align-items:flex-start;gap:10px;margin-top:10px;font-size:15px;font-weight:600;display:flex}.check-row input{width:20px;height:20px;accent-color:var(--red);flex-shrink:0;margin-top:1px}.warn-text{color:#f5b041;overflow-wrap:anywhere}.sheet-toolbar{flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:14px;display:flex}.sheet-toolbar .search-field{flex:1;min-width:180px}.uren-sheet th.num,.uren-sheet td.num{text-align:right;width:130px}.uren-sheet td{vertical-align:middle}.sheet-naam{font-size:15px;font-weight:700}.uren-sheet input{text-align:right;font-variant-numeric:tabular-nums;width:100%;min-height:44px;color:var(--text);background:var(--surface-2);border:1px solid var(--border-strong);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;border-radius:8px;padding:8px 12px;font-size:16px}.uren-sheet input:focus-visible{border-color:var(--orange);box-shadow:0 0 0 3px var(--orange-soft);outline:none}.uren-sheet input.invalid{border-color:var(--red);box-shadow:0 0 0 3px var(--red-soft)}.uren-sheet tr.row-changed td:first-child{box-shadow:inset 3px 0 0 var(--orange)}.sheet-actions{bottom:var(--bottom-nav-h);background:linear-gradient(180deg, transparent, var(--surface-1) 40%);flex-wrap:wrap;align-items:center;gap:14px;margin-top:16px;padding:12px 0 4px;display:flex;position:sticky}.facts{flex-direction:column;gap:10px;margin:14px 0 16px;display:flex}.facts div{flex-direction:column;display:flex}.facts dt{text-transform:uppercase;letter-spacing:.04em;color:var(--text-3);font-size:13px;font-weight:700}.facts dd{margin:0;font-size:16px}.path-card{margin-bottom:var(--gap)}.path-strip{flex-wrap:wrap;gap:8px 0;margin:0;padding:0;list-style:none;display:flex}.path-strip li{align-items:center;display:inline-flex}.path-strip li+li:before{content:"→";color:var(--text-3);margin:0 6px}.path-strip .step{color:var(--text-2);background:var(--surface-2);border:1px solid var(--border);white-space:nowrap;border-radius:999px;padding:6px 12px;font-size:14px;font-weight:600}.path-strip li.current .step{background:var(--orange);border-color:var(--orange);color:var(--ink);font-weight:800}.path-strip li.next .step{border-color:var(--orange);color:var(--orange)}.rank-grid{grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:14px;display:grid}.rank-card{border-radius:var(--radius);background:var(--surface-1);border:1px solid var(--border);flex-direction:column;gap:10px;min-width:0;padding:18px;display:flex}.rank-card.mine{border:2px solid var(--orange)}.rank-card.next{border:2px dashed var(--orange-line)}.rank-card-head{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.rank-name{margin:0;font-size:19px;font-weight:800}.rank-sub{color:var(--text-3);margin:2px 0 0;font-size:14px}.rank-free{text-align:right;white-space:nowrap;flex-direction:column;align-items:flex-end;display:flex}.rank-free strong{font-size:20px;font-weight:800}.rank-free strong.free{color:var(--green)}.rank-free strong.full{color:var(--text-3)}.rank-free span{color:var(--text-3);font-size:13px}.rank-tags{flex-wrap:wrap;gap:6px;display:flex}.rank-training,.rank-members{color:var(--text-2);margin:0;font-size:14px}.callsigns{flex-wrap:wrap;gap:6px;display:flex}.callsign{border:1px solid var(--border);font-variant-numeric:tabular-nums;border-radius:8px;align-items:center;gap:6px;padding:4px 9px;font-size:13px;display:inline-flex}.callsign b{font-weight:800}.callsign.free{color:var(--green);background:var(--green-soft);border-color:#22c55e59}.callsign.taken{color:var(--text-3);background:var(--surface-2)}.callsign-name{text-overflow:ellipsis;white-space:nowrap;max-width:120px;color:var(--text-2);overflow:hidden}.checklist li{border-radius:var(--radius-sm);background:var(--surface-2);border:1px solid var(--border);align-items:center;gap:12px;padding:11px 14px;display:flex}.check-icon{border:2px solid var(--border-strong);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:28px;height:28px;display:inline-flex}.check-body{flex-direction:column;flex:1;min-width:0;display:flex}.check-name{font-size:15px;font-weight:700}.check-rank{color:var(--text-3);font-size:13px}.check-status{color:var(--text-3);text-align:right;font-size:13px;font-weight:700}.check-behaald .check-icon{background:var(--green);border-color:var(--green);color:var(--ink)}.check-behaald .check-status{color:var(--green)}.check-beschikbaar .check-icon{border-color:var(--orange)}.check-beschikbaar .check-status,.check-open .check-status{color:var(--orange)}.check-ingepland .check-status{color:var(--blue)}.check-nvt{opacity:.55}.table-scroll{-webkit-overflow-scrolling:touch;border-radius:var(--radius-sm);border:1px solid var(--border);overflow-x:auto}.data-table{border-collapse:collapse;font-variant-numeric:tabular-nums;width:100%}.data-table th{text-transform:uppercase;letter-spacing:.04em;color:var(--text-3);background:var(--surface-2);border-bottom:1px solid var(--border);text-align:left;padding:10px;font-size:12.5px;font-weight:700}.data-table td{border-bottom:1px solid var(--border);vertical-align:middle;padding:10px;font-size:15px}.data-table tr:last-child td{border-bottom:none}.data-table.matrix{min-width:680px}.data-table.matrix th,.data-table.matrix td{text-align:center}.data-table.matrix th:first-child,.data-table.matrix td:first-child{z-index:1;text-align:left;white-space:nowrap;background:var(--surface-1);box-shadow:1px 0 0 var(--border);position:sticky;left:0}.data-table.matrix th:first-child{background:var(--surface-2)}.matrix-head{white-space:nowrap;font-size:12px}.matrix-toggle{border:2px solid var(--border-strong);width:40px;height:40px;color:var(--ink);cursor:pointer;background:0 0;border-radius:10px;font-size:18px;font-weight:900}.matrix-toggle:hover{border-color:var(--green)}.matrix-toggle.on{background:var(--green);border-color:var(--green)}.cell-note{color:var(--text-3);margin-top:2px;font-size:13px}.soort-vakantie{--soort:#5aa9ff}.soort-ziek{--soort:#ff5a4f}.soort-persoonlijk{--soort:#b18cff}.soort-overig{--soort:#a3a3a3}.cal-card{padding:20px}.cal-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;display:flex}.cal-title{color:var(--text-3);margin:0;font-size:clamp(24px,3.5vw,30px);font-weight:400}.cal-title span{color:var(--text);text-transform:capitalize;font-weight:800}.cal-nav{align-items:center;gap:6px;display:flex}.cal-hint{color:var(--text-2);margin:6px 0 12px;font-size:15px}.cal-grid{border:1px solid var(--border);border-radius:var(--radius-sm);-webkit-user-select:none;user-select:none;overflow:hidden}.cal-weekdays{background:var(--surface-2);grid-template-columns:repeat(7,minmax(0,1fr));display:grid}.cal-weekdays span{text-transform:uppercase;color:var(--text-3);text-align:right;padding:8px 10px;font-size:13px;font-weight:700}.cal-week{border-top:1px solid var(--border);position:relative}.cal-days{grid-template-columns:repeat(7,minmax(0,1fr));display:grid;position:absolute;inset:0}.cal-day{border:none;border-left:1px solid var(--border);color:var(--text);cursor:pointer;background:0 0;justify-content:flex-end;align-items:flex-start;padding:6px;display:flex}.cal-day:first-child{border-left:none}.cal-day:hover{background:var(--surface-2)}.cal-day.other{background:#ffffff05}.cal-day.other .cal-daynum{color:var(--text-3);opacity:.6}.cal-day.selected{background:#ff6a0033}.cal-daynum{font-variant-numeric:tabular-nums;border-radius:999px;justify-content:center;align-items:center;min-width:28px;height:28px;padding:0 4px;font-size:15px;font-weight:600;display:inline-flex}.cal-day.today .cal-daynum{background:var(--orange);color:var(--ink);font-weight:800}.cal-events{pointer-events:none;grid-template-columns:repeat(7,minmax(0,1fr));grid-auto-rows:22px;align-content:start;row-gap:3px;min-height:104px;padding:38px 0 8px;display:grid;position:relative}.cal-event{pointer-events:auto;border:none;border-left:3px solid var(--soort);background:color-mix(in srgb, var(--soort) 26%, transparent);min-width:0;color:var(--text);text-align:left;white-space:nowrap;text-overflow:ellipsis;cursor:pointer;border-radius:5px;margin:0 3px;padding:0 6px;font-size:12.5px;font-weight:700;overflow:hidden}.cal-event:hover{background:color-mix(in srgb, var(--soort) 40%, transparent)}.cal-event.before{border-left:none;border-top-left-radius:0;border-bottom-left-radius:0;margin-left:0}.cal-event.after{border-top-right-radius:0;border-bottom-right-radius:0;margin-right:0}.cal-more{color:var(--text-3);padding:0 6px;font-size:12px;font-weight:700}.cal-footer{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:14px;margin-top:14px;display:flex}.cal-legend{flex-wrap:wrap;gap:8px 16px;display:flex}.legend-item{color:var(--text-2);align-items:center;gap:7px;font-size:14px;display:inline-flex}.legend-dot{background:var(--soort,var(--orange));border-radius:50%;flex-shrink:0;width:11px;height:11px}.detail-card{border-left:5px solid var(--soort)}.detail-line{margin:0 0 8px;font-size:17px}.detail-card .btn-danger{margin-top:14px}.soort-tag{border-color:var(--soort);color:var(--text)}.sheet-backdrop{display:none}@media (min-width:1024px) and (max-width:1439px){.topbar-right .user-text{display:none}.nav-top .nav-item{gap:6px;padding:8px 10px}}@media (min-width:1024px) and (max-width:1279px){.nav-top .nav-label{clip:rect(0, 0, 0, 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.nav-top .nav-item{padding:8px 12px}}@media (max-width:1023px){:root{--bottom-nav-h:68px}.page{padding:24px 20px 16px}.site-credit{padding-bottom:calc(var(--bottom-nav-h) + 20px + env(safe-area-inset-bottom))}.center-shell .site-credit{padding-bottom:0}.topbar{gap:14px;padding:10px 20px}.nav-top{display:none}.nav-bottom{z-index:40;height:calc(var(--bottom-nav-h) + env(safe-area-inset-bottom));padding-bottom:env(safe-area-inset-bottom);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-top:1px solid var(--border);background:#151515f7;grid-template-columns:repeat(7,minmax(0,1fr));display:grid;position:fixed;bottom:0;left:0;right:0}.nav-bottom .nav-item{min-height:0;color:var(--text-3);border-radius:0;flex-direction:column;justify-content:center;gap:3px;padding:6px 1px;font-size:12px;font-weight:700}.nav-bottom .nav-item:hover{color:var(--text);background:0 0}.nav-bottom .nav-item.active{color:var(--orange);background:0 0}.nav-bottom .nav-item.active .nav-icon{background:var(--orange-soft);border-radius:999px;padding:2px 10px}.nav-bottom .nav-count{border-color:#151515f7}.grid-cal{grid-template-columns:minmax(0,1fr)}.sheet-backdrop{z-index:60;background:#0009;display:block;position:fixed;inset:0}.sheet{z-index:61;max-height:88dvh;padding:22px 20px calc(22px + env(safe-area-inset-bottom));animation:sheetUp .25s var(--ease) both;border-radius:20px 20px 0 0;position:fixed;bottom:0;left:0;right:0;overflow-y:auto;box-shadow:0 -20px 50px #00000080}.sheet.detail-card{border-left:1px solid var(--border);border-top:5px solid var(--soort)}}@media (min-width:700px) and (max-width:1023px){.sheet{width:min(560px,100%);animation:none;left:50%;right:auto;transform:translate(-50%)}.grid-sidebar,.grid-sidebar-right{grid-template-columns:minmax(0,1fr)}.grid-cal>aside{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.grid-cal>aside>.sheet,.grid-cal>aside>.sheet-backdrop{grid-column:1/-1}}@media (max-width:699px){:root{--gap:14px}.page{padding:18px 14px calc(var(--bottom-nav-h) + 28px + env(safe-area-inset-bottom))}.page-header{margin-bottom:14px}.page-intro{font-size:16px}.topbar{gap:10px;padding:8px 14px}.brand img{height:26px}.nav-bottom .nav-item{font-size:12px}.user-text,.btn-logout .btn-logout-text{display:none}.btn-logout{width:44px;min-height:44px;padding:0}.badge{padding:5px 8px;font-size:12px}.grid-2,.grid-sidebar,.grid-sidebar-right{grid-template-columns:minmax(0,1fr)}.card{padding:18px 16px}.card-title{font-size:18px}.clock-card{padding:24px 16px}.btn-clock{max-width:none}.page-tabs{border-radius:14px;width:100%}.page-tab{border-radius:10px;flex:1 0 auto;justify-content:center;padding:8px 14px}.field-row,.tile-grid,.rank-grid{grid-template-columns:minmax(0,1fr)}.rank-card{gap:8px;padding:14px}.callsign{padding:4px 8px}.callsign-name{display:none}.path-strip .step{padding:4px 9px;font-size:13px}.button-row>*{flex:auto}.manage-list li{flex-direction:column;align-items:stretch}.change-list li{flex-wrap:wrap}.change-badge{min-width:0}.change-date{width:100%}.confirm-box{align-items:stretch}.cal-card{padding:14px 10px}.cal-header{padding:0 4px}.cal-hint{padding:0 4px;font-size:14px}.cal-weekdays span{text-align:center;padding:6px 4px;font-size:11px}.cal-day{justify-content:center;padding:4px 2px}.cal-daynum{min-width:26px;height:26px;font-size:14px}.cal-events{grid-auto-rows:14px;row-gap:2px;min-height:78px;padding-top:34px}.cal-event{background:var(--soort);border-left-width:0;border-radius:4px;margin:0 1px;padding:0;font-size:0}.cal-more{padding:0 2px;font-size:10px}.cal-footer .btn-primary{width:100%}}
