*,:before,:after{box-sizing:border-box;margin:0;padding:0}:root{--bg:#f5f0e3;--text:#1f1534;--blue:#d1e5fc;--purple:#ebcfff;--plenair:#47004a;--r:18px}body{background:var(--bg);color:var(--text);flex-direction:column;align-items:center;min-height:100vh;padding:56px 20px 80px;font-family:Plus Jakarta Sans,sans-serif;display:flex}.logo-img{width:160px;height:auto;margin-bottom:20px}#passwordScreen{text-align:center;flex-direction:column;align-items:center;width:100%;max-width:400px;display:flex}#passwordScreen h1{letter-spacing:-.3px;white-space:nowrap;margin-bottom:6px;font-size:20px;font-weight:800}#passwordScreen .sub{opacity:.45;margin-bottom:36px;font-size:15px;font-weight:500}.pw-label{letter-spacing:.8px;text-transform:uppercase;opacity:.45;text-align:left;width:100%;margin-bottom:10px;font-size:12px;font-weight:700;display:block}.pw-error{color:#c0392b;min-height:18px;margin-top:10px;font-size:13px;font-weight:600}#appScreen{flex-direction:column;align-items:center;width:100%;max-width:500px;animation:.4s both fadeUp;display:flex}header{text-align:center;width:100%;margin-bottom:48px}h1{letter-spacing:-.3px;white-space:nowrap;margin-bottom:6px;font-size:20px;font-weight:800}.sub{opacity:.45;font-size:15px;font-weight:500}.search-wrap{width:100%}.field-label{letter-spacing:.8px;text-transform:uppercase;opacity:.45;margin-bottom:10px;font-size:12px;font-weight:700;display:block}.input-rel{position:relative}.action-btn{background:var(--text);width:100%;color:var(--bg);border-radius:var(--r);cursor:pointer;-webkit-tap-highlight-color:transparent;border:none;margin-top:14px;padding:18px 22px;font-family:Plus Jakarta Sans,sans-serif;font-size:16px;font-weight:700;transition:opacity .15s,transform .1s}.action-btn:active{opacity:.85;transform:scale(.98)}.action-btn:disabled{opacity:.3;cursor:default;transform:none}.route-section{width:100%;margin-top:44px;animation:.35s cubic-bezier(.22,.68,0,1.2) both fadeUp;display:block}@keyframes fadeUp{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}.greeting{letter-spacing:-.4px;margin-bottom:4px;font-size:26px;font-weight:800}.greeting-sub{opacity:.45;margin-bottom:28px;font-size:15px;font-weight:500}.card{border-radius:var(--r);align-items:flex-start;gap:20px;margin-bottom:12px;padding:24px 26px;display:flex}.card-plenair{background:var(--plenair);color:#f5f0e3}.card-propositie{background:var(--blue);color:var(--text)}.card-kernwaarde{background:var(--purple);color:var(--text)}.card-left{flex-direction:column;align-items:center;gap:6px;min-width:34px;padding-top:2px;display:flex}.round-dot{border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:30px;height:30px;font-size:13px;font-weight:800;display:flex}.card-plenair .round-dot{color:#f5f0e3;background:#f5f0e326}.card-propositie .round-dot,.card-kernwaarde .round-dot{color:var(--text);background:#1f15341a}.round-line{border-radius:2px;flex:1;width:2px;min-height:16px}.card-plenair .round-line{background:#f5f0e333}.card-propositie .round-line,.card-kernwaarde .round-line{background:#1f15341f}.card-body{flex:1}.card-eyebrow{letter-spacing:.9px;text-transform:uppercase;opacity:.45;margin-bottom:5px;font-size:11px;font-weight:700}.card-title{margin-bottom:10px;font-size:18px;font-weight:700;line-height:1.3}.card-ruimte{opacity:.65;margin-bottom:4px;font-size:13px;font-weight:600}.card-loper{opacity:.55;font-size:13px;font-weight:600}.card-uitleg{opacity:.7;margin-bottom:10px;font-size:13px;font-weight:500;line-height:1.6}.card-pauze{background:var(--text);color:#f5f0e3;border-radius:var(--r);align-items:center;gap:20px;margin-bottom:12px;padding:16px 26px;display:flex}.card-pauze .pauze-dot{background:#f5f0e31f;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:30px;height:30px;font-size:16px;display:flex}.card-pauze .card-eyebrow{opacity:.4;margin-bottom:2px}.card-pauze .card-title{margin-bottom:0;font-size:15px}footer{opacity:.25;margin-top:56px;font-size:13px;font-weight:500}.action-btn.secondary{color:var(--text);background:#fff;box-shadow:0 2px 16px #1f153412}.account-bar{opacity:.6;justify-content:space-between;align-items:center;gap:12px;width:100%;margin-bottom:24px;font-size:13px;font-weight:600;display:flex}.account-bar .logout-link{color:var(--text);opacity:.55;cursor:pointer;background:0 0;border:none;font-family:Plus Jakarta Sans,sans-serif;font-size:13px;font-weight:700;text-decoration:underline}.account-bar .logout-link:hover{opacity:.85}.notice-card{border-radius:var(--r);text-align:center;background:#fff;width:100%;padding:24px 26px;font-size:15px;font-weight:500;line-height:1.6;box-shadow:0 2px 16px #1f153412}.admin-panel{border-radius:var(--r);background:#fff;width:100%;margin-top:44px;padding:26px;box-shadow:0 2px 16px #1f153412}.admin-panel h2{margin-bottom:6px;font-size:16px;font-weight:800}.admin-panel .admin-hint{opacity:.55;margin-bottom:18px;font-size:13px;font-weight:500;line-height:1.5}.admin-panel input[type=file]{width:100%;margin-bottom:4px;font-family:Plus Jakarta Sans,sans-serif;font-size:14px}.upload-result{margin-top:16px;font-size:13px;font-weight:600;line-height:1.6}.upload-result.ok{color:#1f7a3d}.upload-result.error{color:#c0392b}.upload-errors{opacity:.7;max-height:160px;margin-top:10px;font-size:12px;font-weight:500;overflow-y:auto}.upload-errors li{margin-bottom:3px;list-style:none}.center-loading{opacity:.45;margin-top:40px;font-size:15px;font-weight:600}.account-bar-actions{align-items:center;gap:16px;display:flex}.admin-link{color:var(--plenair);opacity:.8;font-size:13px;font-weight:700;text-decoration:underline}.admin-link:hover{opacity:1}.stat-row{gap:14px;display:flex}.stat{background:var(--bg);border-radius:var(--r);text-align:center;flex:1;padding:18px 20px}.stat-num{letter-spacing:-.5px;font-size:28px;font-weight:800}.stat-label{letter-spacing:.4px;text-transform:uppercase;opacity:.5;margin-top:2px;font-size:12px;font-weight:600}.admin-table{border-collapse:collapse;width:100%;font-size:14px}.admin-table th{text-align:left;letter-spacing:.6px;text-transform:uppercase;opacity:.45;border-bottom:2px solid #1f15341a;padding:8px 10px;font-size:11px;font-weight:700}.admin-table td{border-bottom:1px solid #1f153412;padding:10px;font-weight:500}.admin-table .num{text-align:right;font-variant-numeric:tabular-nums}.admin-table tr:last-child td{border-bottom:none}
