:root{--red:#e31b23;--red2:#ff4650;--dark:#07080c;--panel:rgba(14,16,24,.86);--line:rgba(255,255,255,.12);--text:#f7f7fb;--muted:#a8adbd;--cyan:#58e6ff;--green:#48ff9b;--yellow:#ffd166}*{box-sizing:border-box}html,body,#app{width:100%;height:100%;margin:0;overflow:hidden;background:#05060a;color:var(--text);font-family:Inter,system-ui,Segoe UI,Arial,sans-serif}canvas{position:absolute;inset:0;width:100%;height:100%;display:block;touch-action:none;background:#05060a}button{font:inherit;color:inherit}.overlay{position:fixed;inset:0;display:none;place-items:center;background:radial-gradient(circle at 50% 40%,rgba(227,27,35,.16),rgba(0,0,0,.72) 55%,rgba(0,0,0,.88));backdrop-filter:blur(16px);z-index:30;padding:18px}.overlay.show{display:grid}.boot-card,.repair-card,.garage-card{width:min(960px,96vw);border:1px solid rgba(255,255,255,.16);background:linear-gradient(135deg,rgba(22,24,35,.92),rgba(7,8,12,.96));border-radius:30px;padding:28px;box-shadow:0 30px 90px rgba(0,0,0,.65),inset 0 1px 0 rgba(255,255,255,.12)}.boot-card{position:relative;overflow:hidden}.boot-card:before{content:"";position:absolute;inset:-60px;background:radial-gradient(circle at 20% 20%,rgba(88,230,255,.16),transparent 28%),radial-gradient(circle at 80% 10%,rgba(255,70,80,.28),transparent 30%),linear-gradient(120deg,transparent,rgba(255,255,255,.05),transparent);pointer-events:none}.boot-card>*{position:relative}.brandline{display:flex;gap:14px;align-items:center;color:white}.brandline .mark{width:42px;height:42px;border-radius:14px;background:linear-gradient(135deg,var(--red),#8d1018);display:grid;place-items:center;box-shadow:0 0 30px rgba(227,27,35,.45)}.brandline strong{display:block;font-size:16px}.brandline span{display:block;color:var(--muted);font-size:13px;margin-top:2px}h1{font-size:clamp(46px,8vw,104px);line-height:.86;margin:28px 0 16px;letter-spacing:-.07em}h1 span{color:var(--red2);text-shadow:0 0 30px rgba(227,27,35,.4)}.lead{font-size:clamp(16px,2vw,22px);color:#d8dbe6;max-width:780px;line-height:1.55}.small{color:var(--muted);font-size:13px}.mode-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:28px 0}.mode,.upgrade{text-align:left;border:1px solid var(--line);background:rgba(255,255,255,.055);border-radius:20px;padding:18px;cursor:pointer;transition:.2s transform,.2s border,.2s background}.mode:hover,.upgrade:hover{transform:translateY(-2px);border-color:rgba(255,255,255,.32);background:rgba(255,255,255,.09)}.mode.selected{border-color:rgba(255,70,80,.7);box-shadow:0 0 0 1px rgba(255,70,80,.3),0 0 35px rgba(227,27,35,.18)}.mode b,.upgrade b{display:block;font-size:18px}.mode span,.upgrade span{display:block;color:var(--muted);font-size:13px;margin-top:6px}.boot-actions{display:flex;gap:12px;flex-wrap:wrap}.primary,.ghost,#garageBtn,#pauseBtn{border:0;border-radius:16px;padding:14px 22px;cursor:pointer;font-weight:800}.primary{background:linear-gradient(135deg,var(--red2),var(--red));box-shadow:0 12px 35px rgba(227,27,35,.32)}.ghost,#garageBtn,#pauseBtn{background:rgba(255,255,255,.08);border:1px solid var(--line)}.hud{position:fixed;top:14px;left:14px;right:14px;z-index:10;display:flex;align-items:flex-start;justify-content:space-between;gap:12px;pointer-events:none}.hud-left,.hud-right{display:flex;gap:8px;pointer-events:auto}.hud-right button{padding:11px 14px;border-radius:14px}.pill,.hud-mid{background:rgba(5,6,10,.62);border:1px solid rgba(255,255,255,.12);backdrop-filter:blur(14px);border-radius:18px;box-shadow:0 15px 40px rgba(0,0,0,.25)}.pill{padding:10px 14px;min-width:74px}.pill span{display:block;font-size:11px;color:var(--muted);text-transform:uppercase;letter-spacing:.12em}.pill b{font-size:18px}.hud-mid{width:min(460px,42vw);padding:12px 16px;pointer-events:none}#missionTitle{font-weight:850;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.bar{height:8px;border-radius:100px;background:rgba(255,255,255,.12);margin-top:8px;overflow:hidden}.bar i{display:block;height:100%;width:100%;background:linear-gradient(90deg,var(--green),var(--yellow),var(--red2));transition:width .25s}.mission-panel{position:fixed;left:14px;bottom:18px;z-index:9;width:min(420px,calc(100vw - 28px));padding:16px;border-radius:22px;background:rgba(8,10,16,.68);border:1px solid rgba(255,255,255,.14);backdrop-filter:blur(14px)}.mission-head{display:flex;justify-content:space-between;gap:10px;margin-bottom:8px}.mission-head b{color:var(--cyan)}#missionText{color:#d5d8e6;margin:0;line-height:1.45}.badges{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}.badges span{font-size:12px;border:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.06);border-radius:999px;padding:6px 9px}.mobile-controls{position:fixed;right:18px;bottom:18px;z-index:12;display:flex;gap:12px;align-items:end}.joy{display:none;gap:6px;grid-template-rows:auto auto auto;place-items:center;touch-action:none}.joy div{display:flex;gap:6px}.joy button,.fix,.boost{border:1px solid rgba(255,255,255,.18);background:rgba(8,10,16,.65);backdrop-filter:blur(12px);border-radius:16px;min-width:54px;min-height:54px;font-weight:900;box-shadow:0 14px 35px rgba(0,0,0,.25)}.fix{display:none;background:linear-gradient(135deg,var(--red2),var(--red));min-width:86px}.boost{display:none;min-width:86px}.repair-card{max-height:92vh;overflow:auto}.repair-top{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:12px}.repair-top span{color:var(--cyan);font-weight:800;text-transform:uppercase;letter-spacing:.18em;font-size:12px}.repair-top h2{font-size:34px;margin:6px 0 0;letter-spacing:-.04em}.repair-top button{width:42px;height:42px;border-radius:14px;border:1px solid var(--line);background:rgba(255,255,255,.06);cursor:pointer;font-size:26px}#repairIntro,.lead2{color:#d6d9e5;line-height:1.5}#repairGame{margin:20px 0;min-height:220px}.repair-actions{display:flex;gap:10px;flex-wrap:wrap}.feedback{margin-top:14px;min-height:28px;font-weight:800}.choice-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.choice{border:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.055);border-radius:18px;padding:18px;cursor:pointer;text-align:left}.choice.active{border-color:var(--cyan);box-shadow:0 0 25px rgba(88,230,255,.18)}.wire-board{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.wire{height:88px;border-radius:18px;border:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.06);display:grid;place-items:center;font-size:34px;cursor:pointer;transition:.2s}.build-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.build-tile{height:92px;border-radius:18px;border:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.05);display:grid;place-items:center;text-align:center;cursor:pointer;padding:10px;font-weight:800}.build-tile.active{background:rgba(255,70,80,.16);border-color:rgba(255,70,80,.6)}.upgrade-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:18px 0}.upgrade em{display:inline-block;margin-top:12px;color:var(--yellow);font-style:normal;font-weight:900}.wallet{padding:14px;border-radius:16px;background:rgba(255,255,255,.06);border:1px solid var(--line);display:inline-block}#toast{position:fixed;top:92px;right:18px;z-index:40;display:flex;flex-direction:column;gap:10px}.toast{background:rgba(8,10,16,.86);border:1px solid rgba(255,255,255,.14);border-left:4px solid var(--red2);padding:13px 16px;border-radius:16px;box-shadow:0 18px 45px rgba(0,0,0,.35);animation:pop .22s ease}@keyframes pop{from{transform:translateY(-8px);opacity:0}to{transform:none;opacity:1}}@media(max-width:920px){.mode-grid,.upgrade-grid{grid-template-columns:1fr}.hud{top:8px;left:8px;right:8px;gap:8px}.hud-left{gap:5px}.pill{min-width:58px;padding:8px 9px}.pill b{font-size:15px}.hud-mid{position:fixed;top:72px;left:8px;right:8px;width:auto}.mission-panel{bottom:150px;left:8px;right:8px;width:auto}.joy{display:grid}.fix,.boost{display:block}.hud-right{flex-direction:column}}@media(max-width:560px){.boot-card,.repair-card,.garage-card{padding:20px;border-radius:24px}.choice-grid,.wire-board,.build-grid{grid-template-columns:1fr}#toast{left:12px;right:12px;top:116px}}

.social-links{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
  margin-top:14px;
}
.social-link{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:10px 13px;
  border-radius:14px;
  border:1px solid rgba(255,255,255,.14);
  background:rgba(255,255,255,.06);
  color:#fff;
  text-decoration:none;
  font-weight:800;
  line-height:1;
}
.social-link:hover{
  background:rgba(255,255,255,.10);
  border-color:rgba(255,255,255,.26);
}
.social-icon{
  width:18px;
  height:18px;
  display:inline-block;
}


/* Nette social iconen, alleen bedoeld voor footer en contactpagina */
.social-links{display:none!important;}
.social-icons{
  display:flex;
  align-items:center;
  gap:10px;
  flex-wrap:wrap;
  margin-top:14px;
}
.social-icon-btn{
  width:46px;
  height:46px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border-radius:15px;
  border:1px solid rgba(255,255,255,.14);
  background:rgba(255,255,255,.06);
  color:#fff;
  text-decoration:none;
  transition:.2s ease;
}
.social-icon-btn:hover{
  background:rgba(255,255,255,.11);
  transform:translateY(-1px);
}
.social-icon-btn span{
  position:absolute;
  width:1px;
  height:1px;
  overflow:hidden;
  clip:rect(0 0 0 0);
}
.social-svg{
  width:21px;
  height:21px;
  stroke:currentColor;
  fill:none;
  stroke-width:1.8;
}
.social-icon-btn[aria-label="Facebook"] .social-svg{
  fill:currentColor;
  stroke:none;
}
.footer-social-title{
  margin-top:18px;
  margin-bottom:0;
}


/* Zichtbare social iconen */
.vdk-social-icons{
  display:flex!important;
  align-items:center;
  gap:10px;
  flex-wrap:wrap;
  margin-top:14px;
}
.vdk-social-icon{
  width:46px;
  height:46px;
  display:inline-flex!important;
  align-items:center;
  justify-content:center;
  border-radius:15px;
  border:1px solid rgba(255,255,255,.18);
  background:rgba(255,255,255,.075);
  color:#fff!important;
  text-decoration:none;
  transition:.18s ease;
}
.vdk-social-icon:hover{
  transform:translateY(-1px);
  background:rgba(255,255,255,.13);
  border-color:rgba(255,255,255,.32);
}
.vdk-social-icon svg{
  width:22px;
  height:22px;
  display:block;
  stroke:currentColor;
  fill:none;
  stroke-width:1.9;
}
.vdk-social-icon[aria-label="Facebook"] svg{
  fill:currentColor;
  stroke:none;
}
.footer-social-title{
  margin-top:18px!important;
  margin-bottom:0!important;
}


/* Socials alleen naast copyright in footer */
.contactSocialBox{display:none!important;}
.footerGrid span:first-child{
  display:flex;
  align-items:center;
  gap:12px;
  flex-wrap:wrap;
}
.socialMini{
  display:inline-flex!important;
  align-items:center;
  gap:8px;
  margin-left:8px;
  vertical-align:middle;
}
.socialMini a{
  width:34px;
  height:34px;
  display:inline-flex!important;
  align-items:center;
  justify-content:center;
  border-radius:11px;
  border:1px solid rgba(255,255,255,.18);
  background:rgba(255,255,255,.07);
  color:#fff;
  text-decoration:none;
  transition:.18s ease;
}
.socialMini a:hover{
  background:rgba(255,255,255,.13);
  transform:translateY(-1px);
}
.socialMini svg{
  width:18px;
  height:18px;
  stroke:currentColor;
  fill:none;
  stroke-width:1.9;
}
.socialMini a[aria-label="Facebook"] svg{
  fill:currentColor;
  stroke:none;
}
@media(max-width:720px){
  .footerGrid span:first-child{justify-content:flex-start}
  .socialMini{margin-left:0}
}
