:root{--ink:#17383e;--muted:#657676;--line:#dce5df;--paper:#f5f7f2;--green:#b8ee84;--white:#fff}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif;font-size:calc(16px * var(--text-scale));line-height:1.6}a{color:inherit;text-underline-offset:4px}button,input,textarea{font:inherit}button,.button{border:0;border-radius:10px;background:var(--ink);color:white;padding:12px 20px;font-weight:700;cursor:pointer;text-decoration:none;display:inline-block}button:disabled{opacity:.5;cursor:default}button:hover:not(:disabled){filter:brightness(1.1)}:focus-visible{outline:3px solid #4b917e;outline-offset:4px}input,textarea{width:100%;border:1px solid #bdcbc4;border-radius:9px;padding:12px 14px;background:#fff;color:var(--ink)}input[type=checkbox]{width:auto;accent-color:#17383e}label{display:block;font-weight:700;font-size:calc(14px * var(--text-scale));margin:14px 0 6px}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(calc(28px * var(--text-scale)),calc(3vw * var(--text-scale)),calc(40px * var(--text-scale)));line-height:1.18;letter-spacing:-1.5px;margin-bottom:14px}h2{font-size:calc(21px * var(--text-scale));line-height:1.3;letter-spacing:-.4px;margin-bottom:8px}h3{font-size:calc(18px * var(--text-scale))}p{margin-bottom:15px}.sitehead,.sitefoot{max-width:1240px;margin:auto;padding:25px 30px;display:flex;align-items:center;justify-content:space-between;gap:20px}.sitehead{border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;font-size:calc(28px * var(--text-scale));letter-spacing:-1.4px;font-weight:800;text-decoration:none}.brand>span:not(.brandmark){color:#497c5b}.brand small{font-size:calc(23px * var(--text-scale));font-weight:400}.brandmark{width:39px;height:39px;line-height:39px;text-align:center;background:var(--ink);color:var(--green);border-radius:12px;margin-right:10px;font-size:calc(25px * var(--text-scale));letter-spacing:-2px}.headnote{font-size:calc(13px * var(--text-scale));color:var(--muted)}.pagegrid{max-width:1240px;padding:20px 30px 35px;margin:auto;display:grid;grid-template-columns:180px minmax(0,728px) 180px;gap:24px;align-items:start;justify-content:center}.maincontent{grid-column:2;grid-row:2;min-width:0;padding:12px 0}.eyebrow{font-size:calc(10px * var(--text-scale));letter-spacing:2px;font-weight:700;margin-bottom:18px;display:flex;align-items:center;gap:8px}.statusdot{display:inline-block;width:7px;height:7px;background:#5b9769;border-radius:50%}.intro{font-size:calc(16px * var(--text-scale));color:var(--muted);max-width:540px;margin-bottom:26px}.ipcard{background:var(--ink);color:#fff;padding:28px 30px;border-radius:18px;position:relative;overflow:hidden}.cardtop{display:flex;align-items:center;justify-content:space-between;gap:10px;color:#d6e4de;font-size:calc(14px * var(--text-scale))}.pill{border:1px solid #5a7475;border-radius:100px;padding:2px 11px;font-size:calc(11px * var(--text-scale))}.ipnumber{font-size:clamp(calc(26px * var(--text-scale)),calc(4.2vw * var(--text-scale)),calc(53px * var(--text-scale)));font-weight:700;letter-spacing:-1.5px;line-height:1.25;margin:20px 0 23px;overflow-wrap:anywhere;font-variant-numeric:tabular-nums}.primary{background:var(--green);color:var(--ink)}.primary span{margin-left:25px}.cardhint{font-size:calc(12px * var(--text-scale));color:#bed0ca;margin:20px 0 0}.hostcard{display:flex;align-items:center;justify-content:space-between;gap:18px;border:1px solid var(--line);border-radius:12px;background:#fff;margin-top:12px;padding:17px 22px}.smalllabel{font-size:calc(10px * var(--text-scale));letter-spacing:1.7px;color:var(--muted)}.hostcard p{margin:3px 0 0;overflow-wrap:anywhere;font-size:calc(14px * var(--text-scale))}.hostcard>div{min-width:0}.subtle{background:#edf3ec;color:var(--ink);font-size:calc(12px * var(--text-scale));padding:8px 12px}.lookup{padding-top:32px;margin-top:8px}.sectionhead{display:flex;gap:14px;align-items:start}.sectionhead p{font-size:calc(13px * var(--text-scale));color:var(--muted)}.numbermark{font-size:calc(12px * var(--text-scale));border:1px solid #cad7cd;border-radius:50%;min-width:33px;line-height:31px;text-align:center}.inputrow{display:flex;gap:10px}.inputrow input{min-width:0}.inputrow button{white-space:nowrap}.help{font-size:calc(12px * var(--text-scale));color:var(--muted);margin:10px 0}.explain{margin-top:30px;padding-top:25px;border-top:1px solid var(--line)}.explain h2{font-size:calc(17px * var(--text-scale))}.explain p{font-size:calc(13px * var(--text-scale));color:var(--muted)}.quiet{font-weight:700;color:#4f7453!important}.spot{min-width:0}.spotlabel{font-size:calc(9px * var(--text-scale));text-transform:uppercase;letter-spacing:1.6px;color:#7a8780;display:block;margin:0 0 7px}.spot img{max-width:100%;height:auto;width:100%;display:block;border-radius:8px}.spot a{display:block}.above{grid-column:2;grid-row:1}.left{grid-column:1;grid-row:2;padding-top:145px}.right{grid-column:3;grid-row:2;padding-top:145px}.below{grid-column:2;grid-row:3}.sitefoot{border-top:1px solid var(--line);font-size:calc(12px * var(--text-scale));color:var(--muted)}nav{display:flex;gap:18px}#toast{position:fixed;bottom:24px;left:50%;transform:translateX(-50%);background:#17383e;color:#fff;padding:10px 20px;border-radius:10px;opacity:0;pointer-events:none;transition:opacity .2s;max-width:95%;z-index:20}#toast.visible{opacity:1}dl{display:grid;grid-template-columns:1fr 1.3fr;font-size:calc(14px * var(--text-scale))}dt,dd{margin:0;padding:8px 0;border-bottom:1px solid var(--line);overflow-wrap:anywhere}dt{font-weight:700}details{font-size:calc(13px * var(--text-scale));background:white;border:1px solid var(--line);border-radius:9px;padding:12px}summary{cursor:pointer}pre{white-space:pre-wrap;overflow-wrap:anywhere;max-height:420px;overflow:auto;font-size:calc(12px * var(--text-scale))}.textpage,.adminwrap{max-width:1000px;margin:40px auto;padding:0 25px}.textpage{max-width:760px}.textpage h1{margin-top:25px}.textpage h2{margin-top:28px}.adminbar{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-bottom:24px;flex-wrap:wrap}.adminbar h1{margin:0}.box{background:#fff;border:1px solid var(--line);padding:25px;border-radius:14px;margin-bottom:22px}.loginbox{max-width:500px;margin:50px auto}.box button{margin-top:18px}.message{padding:13px 17px;border-radius:9px;background:#e3f1d8;border:1px solid #c3d6b6;margin-bottom:20px}.error{background:#fff0ea;border-color:#dba78c;color:#74321e}.fields{display:grid;grid-template-columns:1fr 1fr;gap:20px}.panelpreview{max-width:100%;max-height:160px;object-fit:contain;object-position:left;display:block;margin:16px 0}.hint{font-size:calc(13px * var(--text-scale));color:var(--muted)}.adminwrap .spotlabel{margin-top:5px}.check{display:flex;gap:9px;align-items:center}.compact{margin:0}.danger{background:#8a4233}.textpage li{margin-bottom:9px}@media(min-width:1400px){.pagegrid{gap:30px}}@media(max-width:1050px){.pagegrid{grid-template-columns:140px minmax(0,1fr) 140px;gap:18px;padding:20px}.sitehead,.sitefoot{padding:20px}.ipcard{padding:25px}.headnote{font-size:calc(12px * var(--text-scale))}}@media(max-width:820px){.pagegrid{max-width:728px;grid-template-columns:1fr 1fr;gap:18px}.maincontent{grid-column:1/-1;grid-row:2}.above{grid-column:1/-1;grid-row:1}.below{grid-column:1/-1;grid-row:3}.left{grid-column:1;grid-row:4;padding-top:0}.right{grid-column:2;grid-row:4;padding-top:0}.spot.left img,.spot.right img{width:auto;max-height:350px;max-width:100%;margin:auto}.spot.left a,.spot.right a{display:flex;justify-content:center}.headnote{display:none}.ipnumber{font-size:clamp(calc(26px * var(--text-scale)),calc(8vw * var(--text-scale)),calc(53px * var(--text-scale)))}.fields{grid-template-columns:1fr;gap:0}}@media(max-width:430px){.pagegrid{padding:16px}.ipcard{padding:22px}.hostcard{padding:15px}.inputrow{flex-direction:column}.inputrow button{width:100%}.sitefoot{flex-wrap:wrap}.cardtop{font-size:calc(12px * var(--text-scale))}.adminwrap{padding:0 15px}.box{padding:18px}h1{letter-spacing:-1px}}

.positionnav{flex-wrap:wrap;margin:20px 0}.positionnav a{padding:8px 15px;background:#e3ebdf;border-radius:9px}.itemcard,.newitem{margin:14px 0}.itemcard summary,.newitem summary{padding:6px 0}.deleteform{margin-top:22px;border-top:1px solid var(--line);padding-top:10px}.box[id]{scroll-margin-top:20px}

.mobile-inline{display:none}.mobilefields{margin:18px 0;padding:15px;border:1px solid var(--line);border-radius:9px}.mobilefields legend{font-weight:bold}.compactspot{padding:13px 17px;background:#e4eedf;border:1px solid #c9d9bf;border-radius:10px}.compactspot a{display:flex;align-items:center;justify-content:space-between;gap:12px;text-decoration:none;font-size:calc(14px * var(--text-scale))}.compactspot a span{white-space:nowrap;font-weight:bold}.mobile-inline img{width:100%;max-width:640px;max-height:130px;object-fit:contain;margin:auto}.installbox{padding:18px;background:white;border:1px solid var(--line);border-radius:12px;margin:25px 0}.installbox p{font-size:calc(13px * var(--text-scale))}.installbox button{margin-right:12px}.installbox [hidden]{display:none!important}@media(max-width:820px){.pagegrid>.left,.pagegrid>.right{display:none!important}.mobile-inline{display:block;margin:18px 0}.pagegrid{display:block}.above{margin-bottom:20px}.below{margin-top:20px}.maincontent{padding:0}}

:root{--text-scale:1;color-scheme:light}html[data-text-size="90"]{--text-scale:.9}html[data-text-size="110"]{--text-scale:1.1}html[data-text-size="125"]{--text-scale:1.25}html[data-text-size="140"]{--text-scale:1.4}html[data-text-size="160"]{--text-scale:1.6}
[hidden]{display:none!important}.sitehead{flex-wrap:wrap}.headnote{margin:0;flex:1;text-align:center;display:block;font-weight:600}.viewtools{display:flex;align-items:center;gap:5px;flex-wrap:wrap}.iconbutton{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;min-width:44px;padding:10px;background:transparent;color:var(--ink);border:1px solid var(--line);border-radius:10px}.iconbutton svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.iconbutton:hover:not(:disabled){background:#e2ebdd}.viewtools output{min-width:44px;text-align:center;font-size:12px;font-variant-numeric:tabular-nums}.sunicon{display:none}html[data-theme="dark"] .sunicon{display:block}html[data-theme="dark"] .moonicon{display:none}
html[data-theme="dark"]{color-scheme:dark;--ink:#e2eee9;--muted:#aabfb7;--line:#354b45;--paper:#0e191d;--white:#18272b;--green:#b8ee84}
html[data-theme="dark"] .brand>span:not(.brandmark){color:#b8ee84}html[data-theme="dark"] .brandmark{background:#21484d;color:#b8ee84}html[data-theme="dark"] button,html[data-theme="dark"] .button{background:#b8ee84;color:#17383e}html[data-theme="dark"] .iconbutton{background:transparent;color:#e2eee9}html[data-theme="dark"] .iconbutton:hover:not(:disabled){background:#2a4142}html[data-theme="dark"] .ipcard{background:#16373e;color:#fff}html[data-theme="dark"] .hostcard,html[data-theme="dark"] .box,html[data-theme="dark"] details,html[data-theme="dark"] .installbox{background:#18272b}html[data-theme="dark"] input,html[data-theme="dark"] textarea{background:#102126;color:#e2eee9;border-color:#4b645c}html[data-theme="dark"] input::placeholder,html[data-theme="dark"] textarea::placeholder{color:#9caea9}html[data-theme="dark"] .subtle,html[data-theme="dark"] .positionnav a{background:#294340;color:#dfebdf}html[data-theme="dark"] .compactspot{background:#243c32;border-color:#48634a}html[data-theme="dark"] .quiet{color:#b8ee84!important}html[data-theme="dark"] .smalllabel,html[data-theme="dark"] .spotlabel{color:#aabfb7}html[data-theme="dark"] .message{background:#29472f;border-color:#506947;color:#e3f4db}html[data-theme="dark"] .error{background:#492b25;border-color:#936350;color:#ffe2d3}html[data-theme="dark"] .danger{background:#a54636;color:#fff}html[data-theme="dark"] #toast{background:#b8ee84;color:#17383e}html[data-theme="dark"] input[type=checkbox]{accent-color:#b8ee84}html[data-theme="dark"] :focus-visible{outline-color:#b8ee84}
h1,h2,h3,.intro,.sectionhead,.hostcard,.textpage,.adminwrap{overflow-wrap:anywhere}.sitefoot nav{flex-wrap:wrap}.inputrow{flex-wrap:wrap}.inputrow input{flex:1 1 180px}.inputrow button{flex:0 1 auto}.cardtop{flex-wrap:wrap}.brand{flex-shrink:0}
@media(max-width:1050px){.headnote{flex-basis:100%;order:3;text-align:left}.viewtools{margin-left:auto}.sitehead{gap:12px}.sitehead .headnote{display:block}}
@media(max-width:430px){.sitehead{padding:16px}.viewtools{gap:3px}.sitehead .brand{font-size:24px}.brand small{font-size:20px}.sitehead .headnote{font-size:calc(13px * var(--text-scale))}.viewtools{flex-basis:100%;justify-content:flex-end}.headnote{order:2}.viewtools{order:3}.hostcard{flex-wrap:wrap}.compactspot a{flex-wrap:wrap}.sitefoot nav{gap:10px}}

.before-faq{margin:26px 0 18px}.faq{margin-top:20px;padding:0;border-radius:12px}.faq>summary{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:14px;padding:18px;cursor:pointer}.faq>summary::-webkit-details-marker{display:none}.faq>summary h2{margin:0;font-size:calc(18px * var(--text-scale))}.faq>summary svg{width:22px;height:22px;flex-shrink:0;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;transition:transform .15s}.faq[open]>summary svg{transform:rotate(180deg)}.faqcontent{padding:0 18px 5px}.faqcontent h3{font-size:calc(16px * var(--text-scale));margin-top:18px}.faqcontent p{font-size:calc(14px * var(--text-scale));color:var(--muted)}@media(prefers-reduced-motion:reduce){.faq>summary svg{transition:none}}

/* Beheerbeveiliging */
.formtrap{position:absolute;left:-10000px;top:auto;width:1px;height:1px;overflow:hidden}
#auth-qr svg{max-width:100%;height:auto;background:#fff;margin:12px 0}
.authsecret{display:block;overflow-wrap:anywhere;font-size:1rem;margin:12px 0}
.recoverycodes{font-size:1rem;line-height:1.8;white-space:pre-wrap}
.securitytable{overflow-x:auto}.securitytable table{width:100%;border-collapse:collapse}.securitytable th,.securitytable td{text-align:left;padding:12px;border-bottom:1px solid var(--line,#ddd);vertical-align:top}.securitytable td{overflow-wrap:anywhere}.securitytable button{white-space:nowrap}
