:root{--navy-diep: #0b2338;--navy: #1b365d;--navy-licht: #2c4a75;--rood: #e2231a;--geel: #f5c400;--wit: #f7f9fc;--grijs: #9fb0c4;color-scheme:dark}*{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;background:var(--navy-diep);color:var(--wit);font-family:Segoe UI,system-ui,-apple-system,sans-serif;touch-action:manipulation;-webkit-tap-highlight-color:transparent}#root{display:flex;flex-direction:column;max-width:480px;margin:0 auto;min-height:100vh;min-height:100dvh}button{font-family:inherit}.start-scherm{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:24px;padding:32px 24px;text-align:center}.start-logo{width:88px;height:88px;object-fit:contain}.start-scherm h1{font-size:1.7rem;margin:0;letter-spacing:.02em}.start-scherm .ondertitel{color:var(--grijs);margin:-12px 0 0;font-size:.95rem}.disclaimer{background:#ffffff0f;border:1px solid rgba(255,255,255,.12);border-radius:12px;padding:16px;font-size:.85rem;line-height:1.5;color:var(--grijs)}.disclaimer strong{color:var(--wit)}.knop-start{width:100%;padding:20px;font-size:1.3rem;font-weight:700;border:none;border-radius:16px;background:var(--geel);color:var(--navy-diep);letter-spacing:.02em;cursor:pointer}.knop-start:active{transform:scale(.98)}.hervat-melding{font-size:.85rem;color:var(--grijs)}.uitloggen-link{color:var(--grijs);font-size:.8rem;text-decoration:underline}.inlogformulier{width:100%;display:flex;flex-direction:column;gap:12px}.inlogformulier input{width:100%;padding:16px;border-radius:12px;border:1px solid rgba(255,255,255,.25);background:#ffffff14;color:var(--wit);font-size:1rem}.inlogfout{background:#e2231a2e;border:1px solid rgba(226,35,26,.5);border-radius:10px;padding:12px;font-size:.85rem;line-height:1.4}.kopbalk{display:flex;align-items:center;gap:12px;padding:10px 16px;background:var(--navy);flex-shrink:0}.kopbalk img{width:30px;height:30px;object-fit:contain}.kopbalk .tijd{font-variant-numeric:tabular-nums;font-size:1.3rem;font-weight:700;letter-spacing:.03em}.kopbalk .titel-blok{flex:1;line-height:1.1}.kopbalk .titel-blok .naam{font-weight:700;font-size:.95rem}.kopbalk .titel-blok .sub{font-size:.7rem;color:var(--grijs)}.icoonknop{background:none;border:none;color:var(--wit);font-size:1.3rem;padding:6px;cursor:pointer;line-height:1}.bel-112{display:flex;align-items:center;justify-content:center;gap:10px;background:var(--rood);color:var(--wit);text-decoration:none;font-weight:800;font-size:1.1rem;letter-spacing:.03em;padding:14px;flex-shrink:0}.bel-112:active{filter:brightness(.9)}.voortgang{display:flex;gap:6px;padding:10px 16px;flex-shrink:0}.voortgang button{flex:1;border:none;border-radius:8px;padding:10px 0;background:#ffffff14;color:var(--grijs);font-weight:700;cursor:pointer}.voortgang button.actief{background:var(--geel);color:var(--navy-diep)}.voortgang button.rood-actief{background:var(--rood);color:var(--wit)}.voortgang button.gehad{color:var(--wit)}.inhoud{flex:1;overflow-y:auto;padding:4px 16px 16px}.stapkaart{border-radius:16px;padding:20px;background:var(--navy)}.stapkaart.rood{background:var(--rood)}.stap-kop{display:flex;align-items:baseline;gap:14px;margin-bottom:4px}.stap-letter{font-size:3rem;font-weight:900;line-height:1;color:var(--geel);font-style:italic}.stapkaart.rood .stap-letter{color:var(--wit)}.stap-titels .titel-en{font-size:1.5rem;font-weight:800;text-transform:uppercase;letter-spacing:.01em;line-height:1.1}.stap-titels .titel-nl{font-size:.95rem;color:#ffffffd9;font-weight:600}.sectie{margin-top:18px}.sectie h3{margin:0 0 8px;font-size:.8rem;letter-spacing:.08em;color:var(--geel);text-transform:uppercase}.stapkaart.rood .sectie h3{color:var(--wit)}.sectie ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.vraagitem{display:flex;flex-direction:column;gap:8px;padding:12px;border-radius:10px;background:#ffffff14}.vraagtekst{font-size:1rem;line-height:1.35}.vraagtekst .referentie{color:var(--grijs);font-size:.9rem}.janeeknoppen{display:flex;gap:8px}.ja-nee-knop{flex:1;padding:10px 0;border-radius:8px;border:1px solid rgba(255,255,255,.25);background:transparent;color:var(--wit);font-weight:700;font-size:.95rem;cursor:pointer}.ja-nee-knop.gekozen{background:var(--geel);border-color:var(--geel);color:var(--navy-diep)}.ja-nee-knop.afwijkend{background:var(--rood);border-color:var(--rood);color:var(--wit)}.vervolgtekst{background:#e2231a2e;border:1px solid rgba(226,35,26,.5);border-radius:8px;padding:10px 12px;font-size:.9rem;line-height:1.4}.metinginvoer{display:flex;gap:8px}.metinginvoer input{width:90px;padding:10px;border-radius:8px;border:1px solid rgba(255,255,255,.25);background:#ffffff14;color:var(--wit);font-size:1rem}.metinginvoer button{flex:1;padding:10px;border-radius:8px;border:none;background:var(--geel);color:var(--navy-diep);font-weight:700;cursor:pointer}.tekstinvoer{display:flex;gap:8px}.tekstinvoer input{flex:1;min-width:0;padding:10px;border-radius:8px;border:1px solid rgba(255,255,255,.25);background:#ffffff14;color:var(--wit);font-size:1rem}.tekstinvoer button{flex-shrink:0;padding:10px 14px;border-radius:8px;border:none;background:var(--geel);color:var(--navy-diep);font-weight:700;cursor:pointer}.metinglijst{list-style:none;margin:10px 0 0;padding:0;display:flex;flex-direction:column;gap:6px;font-size:.9rem}.metinglijst li{display:flex;gap:10px}.metingtijd{color:var(--grijs);font-variant-numeric:tabular-nums;flex-shrink:0}.alarmblok{margin-top:18px;background:var(--rood);color:var(--wit);border-radius:12px;padding:14px;text-align:center;font-weight:800;font-size:1.15rem;letter-spacing:.02em}.keuzeknoppen{display:flex;flex-wrap:wrap;gap:8px}.keuzeknop{flex:1 1 calc(50% - 8px);padding:10px 6px;border-radius:8px;border:1px solid rgba(255,255,255,.25);background:transparent;color:var(--wit);font-weight:700;font-size:.9rem;cursor:pointer}.keuzeknop.gekozen{background:var(--geel);border-color:var(--geel);color:var(--navy-diep)}.keuzeknop.afwijkend{background:var(--rood);border-color:var(--rood);color:var(--wit)}.triagevraag{font-size:1.3rem;font-weight:700;line-height:1.3;margin-bottom:16px}.triageknoppen{display:flex;gap:12px}.triageknop{flex:1;padding:20px;font-size:1.2rem;font-weight:800;border-radius:14px;border:none;cursor:pointer}.triageknop.ja{background:var(--geel);color:var(--navy-diep)}.triageknop.nee{background:#ffffff1a;color:var(--wit);border:1px solid rgba(255,255,255,.3)}.triagetoelichting{margin-top:16px;color:var(--grijs);font-size:.85rem}.reanimatie-einde{margin-top:10px;width:100%;padding:12px;border-radius:10px;border:none;background:transparent;color:#ffffffb3;font-size:.8rem;text-decoration:underline;cursor:pointer}.reanimatiepunt{background:#ffffff26;border-radius:10px;padding:12px;margin-bottom:8px;font-size:1.05rem;font-weight:600;list-style:none}.lichaamskaart{display:flex;flex-direction:column;align-items:center;gap:12px}.lichaamskaart svg{width:140px;height:auto}.lichaamszone rect,.lichaamszone circle{fill:#ffffff26;stroke:#ffffff59;stroke-width:2;cursor:pointer}.lichaamszone rect.gemarkeerd,.lichaamszone circle.gemarkeerd{fill:var(--rood);stroke:var(--rood)}.lichaamslegenda{font-size:.9rem;text-align:center;line-height:1.4}.afsluitende-notitie{margin-top:18px;background:#ffffff1a;border:1px solid rgba(255,255,255,.25);border-radius:12px;padding:14px;font-size:.9rem;line-height:1.5}.herbeoordeel{margin-top:18px;width:100%;padding:12px;border-radius:10px;border:1px dashed rgba(255,255,255,.4);background:transparent;color:var(--wit);font-size:.85rem;cursor:pointer}.navbalk{display:flex;gap:10px;padding:12px 16px calc(12px + env(safe-area-inset-bottom));flex-shrink:0;background:var(--navy-diep)}.navbalk button{flex:1;padding:16px;border-radius:12px;border:none;font-size:1.05rem;font-weight:700;cursor:pointer}.navbalk .vorige{background:#ffffff1a;color:var(--wit)}.navbalk .volgende{background:var(--geel);color:var(--navy-diep)}.navbalk button:disabled{opacity:.35;cursor:default}.update-balk{position:fixed;left:50%;bottom:16px;transform:translate(-50%);max-width:440px;width:calc(100% - 32px);background:var(--geel);color:var(--navy-diep);border-radius:12px;padding:12px 16px;display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:.9rem;font-weight:600;z-index:50;box-shadow:0 4px 20px #0006}.update-balk button{border:none;background:var(--navy-diep);color:var(--wit);padding:8px 14px;border-radius:8px;font-weight:700;cursor:pointer;flex-shrink:0}
