/* Appel 2.0 — stijl van het goedgekeurde proefje (~/Downloads/proefje-voordeur.html).
   Letterlijk overgenomen van :root t/m .reeks i.nu; .stage/.label/.phone (proefje-frame) weggelaten. */
:root{--bg:#0f1420;--bg2:#141b2a;--surface:#1a2233;--surface2:#212c42;--ink:#eaf0f8;--sub:#8ea0bd;--line:#2a3550;
--accent:#5bb8ff;--accent-ink:#04223b;--accent-soft:#1e3a5a;--good:#4ade80;--warn:#ffcf5b;--radius:20px}
*{box-sizing:border-box}
body{margin:0;background:#070a12;color:var(--ink);font-family:"Atkinson Hyperlegible",system-ui,sans-serif;font-size:17px;line-height:1.4}
h1,h2,h3,.kop{font-family:"Bricolage Grotesque",sans-serif;margin:0}
.top{display:flex;justify-content:space-between;align-items:center;color:var(--sub);font-size:14px;margin-bottom:14px}
.top b{color:var(--ink)}
.hallo{font-size:30px;font-weight:800;line-height:1.1;letter-spacing:-.01em}
.hallo span{color:var(--accent)}
.sub{color:var(--sub);margin:6px 0 16px;font-size:16px}
.kaart{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:16px 16px 14px;margin-bottom:12px}
.nu{background:linear-gradient(160deg,#1e3a5a,#16304a);border-color:#2d5a8a}
.tag{display:inline-block;font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--accent);margin-bottom:8px}
.nu .titel{font-size:24px;font-weight:800;line-height:1.15}
.nu .meta{color:#bcd6f2;margin:6px 0 14px;font-size:15px}
.knop{display:block;width:100%;text-align:center;background:var(--accent);color:var(--accent-ink);font-family:"Bricolage Grotesque";font-weight:800;font-size:19px;padding:14px;border-radius:14px;border:0}
.knop.licht{background:var(--surface2);color:var(--ink);font-weight:700;font-size:16px;padding:12px}
.rij{display:flex;align-items:center;gap:12px;padding:12px 0;border-top:1px solid var(--line)}
.rij:first-of-type{border-top:0}
.vink{width:30px;height:30px;border-radius:50%;border:2px solid var(--sub);flex:none;display:grid;place-items:center;font-weight:800;color:var(--accent-ink)}
.vink.af{background:var(--good);border-color:var(--good)}
.rij .t{flex:1;font-size:17px}
.rij .t small{display:block;color:var(--sub);font-size:14px}
.rij .tijd{color:var(--sub);font-size:14px;white-space:nowrap}
.kop2{display:flex;justify-content:space-between;align-items:baseline;margin:4px 2px 8px}
.kop2 h2{font-size:19px;font-weight:800}
.kop2 .teller{color:var(--sub);font-size:14px}
.toets{display:flex;align-items:center;gap:12px;padding:10px 0;border-top:1px solid var(--line)}
.toets:first-of-type{border-top:0}
.toets .emo{font-size:22px;width:30px;text-align:center}
.toets .t{flex:1}
.toets .t b{display:block;font-size:16px}
.toets .t small{color:var(--sub);font-size:13px}
.balk{height:6px;background:var(--surface2);border-radius:4px;margin-top:6px;overflow:hidden}
.balk i{display:block;height:100%;background:var(--accent);border-radius:4px}
.dagen{font-family:"Bricolage Grotesque";font-weight:800;font-size:15px;color:var(--warn);white-space:nowrap}
.hero{background:linear-gradient(160deg,#1e3a5a,#12263d);border:1px solid #2d5a8a;border-radius:var(--radius);padding:18px 16px 16px;margin-bottom:12px}
.hero .tag{color:#9fd0ff}
.hero .groot{font-size:40px;font-weight:800;line-height:1;letter-spacing:-.02em}
.hero .groot small{font-size:18px;font-weight:700;color:#bcd6f2;letter-spacing:0;margin-left:6px}
.hero .wat{font-size:17px;margin:8px 0 12px;color:#e6f1fb}
.hero .plan{display:flex;gap:6px;margin:10px 0 4px}
.hero .plan i{flex:1;height:10px;border-radius:5px;background:#2a4a6e}
.hero .plan i.af{background:var(--good)}
.hero .plan i.nu{background:var(--accent)}
.hero .uitleg{color:#bcd6f2;font-size:14px}
.voet{display:flex;gap:10px;margin-top:14px}
.voet a{flex:1;text-align:center;background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:12px 8px;color:var(--ink);text-decoration:none;font-size:15px;font-weight:700}
.reeks{display:flex;align-items:center;gap:8px;color:var(--sub);font-size:14px;margin:2px 4px 12px}
.reeks i{width:12px;height:12px;border-radius:50%;background:var(--surface2);display:inline-block}
.reeks i.ja{background:var(--good)}
.reeks i.nu{border:2px solid var(--accent)}

/* --- toegevoegd voor het echte scherm (geen telefoon-frame meer) --- */
body{background:var(--bg);min-height:100vh}
.app{max-width:520px;margin:0 auto;padding:18px 16px 40px}
.ochtend .speler{display:flex;align-items:center;gap:12px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:12px 14px;margin-bottom:12px}
.ochtend .speler audio{width:100%}
.rooster{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 14px}
.rooster span{background:var(--surface2);border-radius:999px;padding:6px 12px;font-size:14px}
.toetsdag{background:rgba(255,207,91,.12);border:1px solid rgba(255,207,91,.45);border-radius:var(--radius);padding:14px 16px;margin-bottom:12px}
.toetsdag .knop{background:var(--warn);color:#2a1e00;margin-top:10px}
.rij .foto{display:block;font-size:12px;color:var(--sub);margin-top:2px}
.rij a.t{color:inherit;text-decoration:none}
.meer{color:var(--sub);font-size:14px;padding:8px 4px}
details summary{cursor:pointer;font-family:"Bricolage Grotesque";font-weight:800;font-size:19px;list-style:none;display:flex;justify-content:space-between}
.leeg{color:var(--sub);padding:10px 4px 14px}
@media (max-width:380px){.hallo{font-size:26px}.hero .groot{font-size:34px}}

/* kleine aanvullingen: geen driehoekje bij <details>, knop-links als knop, vinkje bedienbaar met toetsenbord */
details{margin-bottom:14px}
details summary::-webkit-details-marker{display:none}
details summary .teller{font-family:"Atkinson Hyperlegible",system-ui,sans-serif;font-weight:400;font-size:14px;color:var(--sub)}
details summary .teller::after{content:" ▾"}          /* zichtbaar dat het opengaat */
details[open] summary .teller::after{content:" ▴"}
a.knop{text-decoration:none;box-sizing:border-box}
.vink{cursor:pointer}
.vink:focus-visible{outline:3px solid var(--accent);outline-offset:2px}
.rij .t a.t{display:inline-block}
