  :root{
    --navy:#0B2036;
    --blue:#1E5F9E;
    --sky:#4FA8E0;
    --ice:#EAF4FC;
    --ice-2:#F5FAFE;
    --white:#FFFFFF;
    --accent:#D7263D;
    --line: rgba(11,32,54,0.12);
    --mono: 'JetBrains Mono', ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
    --disp: 'Space Grotesk', 'Manrope', sans-serif;
    --body: 'Inter', -apple-system, BlinkMacSystemFont, sans-serif;
  }
  @font-face{font-family:'Space Grotesk';src:local('Space Grotesk');}
  *{box-sizing:border-box;}
  html,body{margin:0;padding:0;}
  body{
    font-family:var(--body);
    background:
      radial-gradient(1200px 600px at 15% -10%, rgba(79,168,224,0.16), transparent 60%),
      radial-gradient(900px 500px at 100% 0%, rgba(30,95,158,0.12), transparent 55%),
      var(--ice-2);
    color:var(--navy);
    min-height:100vh;
  }
  @import url('https://fonts.googleapis.com/css2?family=Space+Grotesk:wght@500;600;700&family=Inter:wght@400;500;600&family=JetBrains+Mono:wght@400;500&display=swap');

  .wrap{max-width:920px;margin:0 auto;padding:40px 20px 80px;}

  header.top{
    display:flex;align-items:center;gap:16px;
    padding-bottom:28px;margin-bottom:28px;
    border-bottom:1px solid var(--line);
  }
  header.top img{width:56px;height:56px;border-radius:14px;object-fit:cover;box-shadow:0 6px 18px rgba(11,32,54,0.18);}
  header.top .brandname{font-family:var(--disp);font-weight:700;font-size:1.15rem;letter-spacing:0.02em;color:var(--navy);line-height:1.1;}
  header.top .brandname span{color:var(--blue);}
  header.top .tag{font-size:0.78rem;color:var(--blue);text-transform:uppercase;letter-spacing:0.14em;font-weight:600;margin-top:2px;}

  h1.title{
    font-family:var(--disp);
    font-weight:700;
    font-size:clamp(1.7rem, 3.4vw, 2.5rem);
    line-height:1.15;
    margin:0 0 10px;
    color:var(--navy);
  }
  h1.title .hl{color:var(--blue);}
  p.lede{
    font-size:1.02rem;
    color:#3a5470;
    max-width:56ch;
    margin:0 0 34px;
    line-height:1.6;
  }

  .panel{
    background:var(--white);
    border:1px solid var(--line);
    border-radius:18px;
    padding:26px;
    margin-bottom:22px;
    box-shadow:0 2px 0 rgba(11,32,54,0.02);
  }
  .panel h2{
    font-family:var(--disp);
    font-size:0.95rem;
    text-transform:uppercase;
    letter-spacing:0.1em;
    color:var(--blue);
    margin:0 0 16px;
    display:flex;align-items:center;gap:8px;
  }
  .panel h2 .num{
    width:22px;height:22px;border-radius:50%;
    background:var(--ice);color:var(--blue);
    display:inline-flex;align-items:center;justify-content:center;
    font-size:0.75rem;font-weight:700;
  }

  /* Dropzone */
  .dropzone{
    border:2px dashed var(--sky);
    border-radius:14px;
    background:var(--ice);
    padding:38px 20px;
    text-align:center;
    cursor:pointer;
    transition:border-color .15s ease, background .15s ease, transform .1s ease;
  }
  .dropzone:hover{background:#e2f1fc;}
  .dropzone.drag{border-color:var(--blue);background:#dcedfb;transform:scale(1.005);}
  .dropzone .icon{
    width:52px;height:52px;margin:0 auto 14px;
    border-radius:12px;background:var(--white);
    display:flex;align-items:center;justify-content:center;
    box-shadow:0 4px 12px rgba(30,95,158,0.15);
  }
  .dropzone .icon svg{width:26px;height:26px;stroke:var(--blue);}
  .dropzone .main{font-weight:600;color:var(--navy);font-size:1.02rem;}
  .dropzone .sub{font-size:0.85rem;color:#5b7690;margin-top:4px;}
  .dropzone input{display:none;}
  .filepill{
    display:inline-flex;align-items:center;gap:10px;
    background:var(--ice);border:1px solid var(--sky);
    border-radius:999px;padding:8px 16px;margin-top:16px;
    font-family:var(--mono);font-size:0.85rem;color:var(--blue);
  }
  .filepill button{
    border:none;background:none;color:var(--accent);
    cursor:pointer;font-weight:700;font-size:0.9rem;
  }

  /* Options */
  .optrow{display:flex;gap:16px;flex-wrap:wrap;}
  .field{flex:1;min-width:180px;}
  .field label{
    display:block;font-size:0.78rem;font-weight:600;
    color:#4a6379;margin-bottom:6px;text-transform:uppercase;letter-spacing:0.06em;
  }
  select{
    width:100%;padding:11px 12px;border-radius:10px;
    border:1px solid var(--line);background:var(--ice-2);
    font-family:var(--body);font-size:0.95rem;color:var(--navy);
    appearance:none;
    background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='%231E5F9E'><path d='M5.5 7.5l4.5 4.5 4.5-4.5'/></svg>");
    background-repeat:no-repeat;background-position:right 12px center;background-size:14px;
    cursor:pointer;
  }
  select:focus{outline:2px solid var(--sky);outline-offset:1px;}
  .swapbtn{
    align-self:flex-end;margin-bottom:2px;
    width:40px;height:40px;border-radius:10px;
    border:1px solid var(--line);background:var(--ice-2);
    color:var(--blue);cursor:pointer;font-size:1rem;
    display:flex;align-items:center;justify-content:center;
  }
  .swapbtn:hover{background:var(--ice);}

  .note{
    font-size:0.85rem;color:#4a6379;background:var(--ice);
    border-left:3px solid var(--sky);padding:10px 14px;border-radius:8px;
    margin-top:16px;line-height:1.5;
  }
  .note b{color:var(--navy);}

  .renamerow{
    display:flex;align-items:center;gap:10px;margin-bottom:10px;
  }
  .renamerow input{
    flex:1;padding:10px 12px;border-radius:10px;
    border:1px solid var(--line);background:var(--ice-2);
    font-family:var(--mono);font-size:0.88rem;color:var(--navy);
  }
  .renamerow input:focus{outline:2px solid var(--sky);outline-offset:1px;}
  .renamerow .arrow{color:var(--sky);font-weight:700;flex:0 0 auto;}
  .renamerow .delrow{
    flex:0 0 auto;border:none;background:none;color:var(--accent);
    cursor:pointer;font-size:1.1rem;font-weight:700;padding:4px 8px;
  }
  .addrowbtn{
    border:1px dashed var(--sky);background:var(--ice);color:var(--blue);
    padding:9px 16px;border-radius:10px;font-family:var(--body);font-weight:600;
    font-size:0.88rem;cursor:pointer;margin-bottom:4px;
  }
  .addrowbtn:hover{background:#e2f1fc;}
  .checkrow{
    display:flex;align-items:center;gap:8px;font-size:0.9rem;color:var(--navy);
    font-weight:500;margin-bottom:16px;cursor:pointer;
  }
  .checkrow input{width:16px;height:16px;accent-color:var(--blue);}

  .startbtn{
    width:100%;margin-top:18px;
    padding:14px 20px;border:none;border-radius:12px;
    background:linear-gradient(135deg, var(--blue), var(--sky));
    color:white;font-family:var(--disp);font-weight:600;font-size:1rem;
    letter-spacing:0.02em;cursor:pointer;
    box-shadow:0 8px 20px rgba(30,95,158,0.28);
    transition:transform .1s ease, box-shadow .1s ease;
  }
  .startbtn:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 10px 24px rgba(30,95,158,0.34);}
  .startbtn:disabled{opacity:0.55;cursor:not-allowed;box-shadow:none;}

  /* Console */
  .console{
    background:var(--navy);
    border-radius:14px;
    padding:18px 18px;
    font-family:var(--mono);
    font-size:0.82rem;
    color:#bfe0f7;
    height:260px;
    overflow-y:auto;
    line-height:1.65;
    white-space:pre-wrap;
    word-break:break-word;
  }
  .console .l-ok{color:#8fd6a8;}
  .console .l-warn{color:#f0c56a;}
  .console .l-info{color:#7fc4ef;}
  .console .l-head{color:#ffffff;font-weight:600;}
  .console::-webkit-scrollbar{width:8px;}
  .console::-webkit-scrollbar-thumb{background:#1f4260;border-radius:8px;}

  .progresswrap{margin-top:14px;height:8px;background:var(--ice);border-radius:8px;overflow:hidden;}
  .progressbar{height:100%;width:0%;background:linear-gradient(90deg,var(--blue),var(--sky));transition:width .2s ease;}
  .progresslabel{font-size:0.8rem;color:#4a6379;margin-top:8px;font-family:var(--mono);}

  .downloadbox{display:none;text-align:center;}
  .downloadbox.show{display:block;}
  .downloadbtn{
    display:inline-flex;align-items:center;gap:10px;
    padding:14px 26px;border-radius:12px;
    background:var(--navy);color:white;text-decoration:none;
    font-family:var(--disp);font-weight:600;font-size:0.98rem;
    box-shadow:0 8px 20px rgba(11,32,54,0.25);
  }
  .downloadbtn:hover{background:#0e2c47;}

  footer{
    text-align:center;color:#7891a8;font-size:0.8rem;margin-top:40px;
  }
  footer .brand{color:var(--blue);font-weight:600;}

  .hidden{display:none;}

  /* ---------- Nav header (logo, Dashboard button, Discord button) ---------- */
  header.top{
    display:flex;align-items:center;flex-wrap:wrap;gap:14px 10px;
    position:relative;
  }
  header.top > a:first-child{min-width:0;flex:1 1 auto;}
  .navactions{
    display:flex;align-items:center;gap:10px;margin-left:auto;flex-wrap:wrap;
  }
  .dashboardnav{
    display:inline-flex;align-items:center;gap:7px;
    background:var(--navy);color:white;text-decoration:none;
    padding:9px 16px;border-radius:10px;font-weight:600;font-size:0.88rem;
    white-space:nowrap;
  }
  .dashboardnav:hover{background:#0e2c47;}
  .dashboardnav svg{flex:0 0 auto;}
  .discordnav{
    display:inline-flex;align-items:center;gap:8px;
    background:#5865F2;color:white;text-decoration:none;
    padding:9px 16px;border-radius:10px;font-weight:600;font-size:0.88rem;
    box-shadow:0 6px 16px rgba(88,101,242,0.35);
    white-space:nowrap;
  }
  .discordnav:hover{background:#4a55d6;}
  .discordicon-sm{width:17px;height:17px;display:inline-flex;color:white;flex:0 0 auto;}
  .discordicon-sm svg{width:100%;height:100%;display:block;}

  .mainnav{
    display:flex;gap:6px;flex-wrap:wrap;margin:2px 0 0;
  }
  .mainnav a{
    color:#4a6379;text-decoration:none;font-size:0.86rem;font-weight:600;
    padding:6px 12px;border-radius:8px;
  }
  .mainnav a:hover, .mainnav a.active{background:var(--ice);color:var(--blue);}

  @media (max-width: 640px){
    header.top{gap:12px;}
    header.top > a:first-child{flex-basis:100%;}
    .navactions{margin-left:0;width:100%;}
    .dashboardnav, .discordnav{flex:1 1 0;justify-content:center;}
  }
  @media (max-width: 380px){
    .dashboardnav span:not(svg), .discordnav span:not(.discordicon-sm){display:none;}
  }

  /* Hero */
  .hero{padding:6px 0 10px;}
  .herobtns{display:flex;gap:14px;flex-wrap:wrap;margin-bottom:30px;}
  .btn-primary{
    background:linear-gradient(135deg, var(--blue), var(--sky));
    color:white;text-decoration:none;font-family:var(--disp);font-weight:600;
    padding:13px 24px;border-radius:12px;font-size:0.95rem;
    box-shadow:0 8px 20px rgba(30,95,158,0.28);
  }
  .btn-discord{
    display:inline-flex;align-items:center;gap:9px;
    background:#5865F2;color:white;text-decoration:none;font-weight:600;
    padding:13px 22px;border-radius:12px;font-size:0.95rem;
    box-shadow:0 8px 20px rgba(88,101,242,0.3);
  }
  .btn-discord:hover{background:#4a55d6;}

  .previewbox{
    background:var(--white);border:1px solid var(--line);border-radius:16px;
    overflow:hidden;box-shadow:0 10px 30px rgba(11,32,54,0.08);margin-bottom:44px;
  }
  .previewbar{
    display:flex;align-items:center;gap:6px;padding:12px 16px;
    background:var(--ice);border-bottom:1px solid var(--line);
  }
  .previewbar span{width:10px;height:10px;border-radius:50%;background:#c7d8e6;}
  .previewlabel{
    margin-left:10px;font-family:var(--mono);font-size:0.78rem;color:#5b7690;
  }
  .previewbox .console{border-radius:0;}

  /* Section titles */
  .sectiontitle{
    font-family:var(--disp);font-weight:700;font-size:clamp(1.3rem,2.4vw,1.7rem);
    color:var(--navy);text-align:center;margin:0 0 8px;
  }
  .pricingsub{text-align:center;color:#4a6379;margin:0 0 30px;font-size:0.95rem;}

  /* Features */
  .features{padding:20px 0 10px;}
  .featuregrid{
    display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));
    gap:16px;margin-top:26px;
  }
  .featurecard{
    background:var(--white);border:1px solid var(--line);border-radius:14px;
    padding:20px;
  }
  .ficon{font-size:1.5rem;margin-bottom:10px;}
  .ftitle{font-family:var(--disp);font-weight:600;font-size:0.98rem;color:var(--navy);margin-bottom:6px;}
  .ftext{font-size:0.85rem;color:#4a6379;line-height:1.55;}
  .ftext code{background:var(--ice);padding:1px 5px;border-radius:5px;font-family:var(--mono);font-size:0.8em;}

  /* Pricing */
  .pricing{padding:30px 0 14px;}
  .pricegrid{
    display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));
    gap:20px;max-width:640px;margin:0 auto;
  }
  .pricecard{
    position:relative;background:var(--white);border:1px solid var(--line);
    border-radius:16px;padding:28px 24px;text-align:center;
  }
  .pricecard.highlight{
    border:2px solid var(--blue);
    box-shadow:0 14px 34px rgba(30,95,158,0.18);
  }
  .pbadge{
    position:absolute;top:-12px;left:50%;transform:translateX(-50%);
    background:var(--blue);color:white;font-size:0.72rem;font-weight:700;
    padding:4px 14px;border-radius:999px;letter-spacing:0.04em;text-transform:uppercase;
  }
  .ptier{font-family:var(--disp);font-weight:600;color:var(--blue);font-size:0.9rem;text-transform:uppercase;letter-spacing:0.08em;margin-bottom:10px;}
  .pamount{font-family:var(--disp);font-weight:700;font-size:2.2rem;color:var(--navy);margin-bottom:18px;}
  .pamount span{font-size:0.95rem;font-weight:500;color:#4a6379;margin-left:4px;}
  .pfeatures{list-style:none;padding:0;margin:0 0 24px;text-align:left;}
  .pfeatures li{
    font-size:0.88rem;color:#334a60;padding:7px 0 7px 26px;position:relative;
    border-bottom:1px solid var(--ice);
  }
  .pfeatures li:last-child{border-bottom:none;}
  .pfeatures li::before{content:'✓';position:absolute;left:0;color:var(--blue);font-weight:700;}
  .pbtn{
    display:inline-block;width:100%;padding:12px;border-radius:10px;
    background:var(--ice);color:var(--blue);text-decoration:none;font-weight:600;
    font-family:var(--disp);font-size:0.9rem;
  }
  .pbtn:hover{background:#dceefb;}
  .pbtn-solid{background:var(--navy);color:white;}
  .pbtn-solid:hover{background:#0e2c47;}

/* ---------- Auth / dashboard / admin additions ---------- */
.authbox{
  max-width:420px;margin:60px auto;text-align:center;
  background:var(--white);border:1px solid var(--line);border-radius:18px;
  padding:38px 30px;box-shadow:0 10px 30px rgba(11,32,54,0.08);
}
.authbox h1{font-family:var(--disp);font-size:1.4rem;color:var(--navy);margin:14px 0 8px;}
.authbox p{color:#4a6379;font-size:0.92rem;margin:0 0 24px;line-height:1.5;}
.discordbtn-lg{
  display:inline-flex;align-items:center;gap:10px;justify-content:center;
  background:#5865F2;color:white;text-decoration:none;font-weight:600;
  padding:14px 24px;border-radius:12px;font-size:0.98rem;width:100%;
  box-shadow:0 8px 20px rgba(88,101,242,0.3);
}
.discordbtn-lg:hover{background:#4a55d6;}
.discordbtn-lg svg{width:22px;height:16px;}

.userbar{
  display:flex;align-items:center;gap:12px;
  background:var(--white);border:1px solid var(--line);border-radius:14px;
  padding:14px 18px;margin-bottom:22px;flex-wrap:wrap;
}
.userbar img.avatar{width:38px;height:38px;border-radius:50%;}
.userbar .uname{font-weight:600;color:var(--navy);font-size:0.95rem;}
.userbar .licensebadge{
  font-size:0.75rem;font-weight:700;padding:4px 10px;border-radius:999px;
  text-transform:uppercase;letter-spacing:0.04em;
}
.licensebadge.active{background:#e5f6ec;color:#1c8a4c;}
.licensebadge.expired{background:#fdeaea;color:var(--accent);}
.userbar .spacer{flex:1;}
.userbar a.logout{color:#7891a8;text-decoration:none;font-size:0.85rem;font-weight:600;}
.userbar a.logout:hover{color:var(--accent);}

.redeemform{display:flex;gap:10px;flex-wrap:wrap;margin-top:6px;}
.redeemform input{
  flex:1;min-width:220px;padding:12px 14px;border-radius:10px;
  border:1px solid var(--line);background:var(--ice-2);
  font-family:var(--mono);font-size:0.95rem;letter-spacing:0.04em;
  text-transform:uppercase;color:var(--navy);
}
.redeemform button{
  padding:12px 22px;border:none;border-radius:10px;
  background:var(--blue);color:white;font-family:var(--disp);font-weight:600;
  cursor:pointer;font-size:0.92rem;
}
.redeemform button:hover{background:#184e83;}
.redeemmsg{margin-top:12px;font-size:0.88rem;font-weight:600;}
.redeemmsg.err{color:var(--accent);}
.redeemmsg.ok{color:#1c8a4c;}

.adminbox{max-width:1120px;margin:0 auto;}
.adminlogin{max-width:360px;margin:60px auto;}
.adminlogin input{
  width:100%;padding:12px 14px;border-radius:10px;border:1px solid var(--line);
  background:var(--ice-2);font-size:0.95rem;margin-bottom:14px;
}
.genform{display:flex;gap:10px;align-items:end;flex-wrap:wrap;margin-bottom:26px;}
.genform .field{flex:0 0 auto;}
.genform select, .genform input[type=number]{
  padding:11px 12px;border-radius:10px;border:1px solid var(--line);
  background:var(--ice-2);font-size:0.92rem;
}
.keytable{width:100%;border-collapse:collapse;font-size:0.82rem;}
.keytable th, .keytable td{
  text-align:left;padding:9px 10px;border-bottom:1px solid var(--line);
  font-family:var(--mono);
}
.keytable th{color:#4a6379;font-family:var(--body);font-weight:600;text-transform:uppercase;font-size:0.72rem;letter-spacing:0.05em;}
.pill-status{
  padding:2px 9px;border-radius:999px;font-size:0.72rem;font-weight:700;
  font-family:var(--body);text-transform:uppercase;
}
.pill-status.free{background:var(--ice);color:var(--blue);}
.pill-status.used{background:#eef1f5;color:#5b7690;}

/* ---------- Payment modal ---------- */
.paymodal-overlay{
  position:fixed;inset:0;background:rgba(11,32,54,0.55);
  display:flex;align-items:center;justify-content:center;
  padding:20px;z-index:100;opacity:0;pointer-events:none;transition:opacity .15s ease;
}
.paymodal-overlay.open{opacity:1;pointer-events:auto;}
.paymodal{
  background:var(--white);border-radius:18px;max-width:440px;width:100%;
  padding:28px 26px;position:relative;box-shadow:0 20px 50px rgba(11,32,54,0.35);
  max-height:88vh;overflow-y:auto;
}
.paymodal-close{
  position:absolute;top:14px;right:14px;border:none;background:var(--ice);
  color:#4a6379;width:30px;height:30px;border-radius:50%;cursor:pointer;font-size:1rem;
}
.paymodal-close:hover{background:#dceefb;}
.paymodal-head{text-align:center;margin-bottom:20px;}
.paymodal-plan{font-family:var(--disp);font-weight:700;color:var(--navy);font-size:1.1rem;}
.paymodal-price{color:var(--blue);font-weight:600;font-size:0.95rem;margin-top:2px;}
.paymodal-sub{text-align:center;color:#4a6379;font-size:0.88rem;margin:0 0 16px;}
.paymethods{display:grid;grid-template-columns:1fr 1fr;gap:10px;}
.paymethod{
  display:flex;align-items:center;gap:10px;justify-content:center;
  padding:14px 10px;border:1px solid var(--line);border-radius:12px;
  background:var(--ice-2);cursor:pointer;font-weight:600;font-size:0.88rem;color:var(--navy);
}
.paymethod:hover{background:var(--ice);border-color:var(--sky);}
.pm-icon{font-size:1.2rem;}
.paymodal-detail h3{font-family:var(--disp);color:var(--navy);margin:0 0 8px;}
.paymodal-detail p{color:#4a6379;font-size:0.88rem;line-height:1.5;margin:0 0 14px;}
.paymodal-back{
  border:none;background:none;color:var(--blue);font-weight:600;font-size:0.82rem;
  cursor:pointer;padding:0;margin-bottom:14px;
}
.paylink-btn{
  display:inline-block;background:var(--blue);color:white;text-decoration:none;
  padding:11px 20px;border-radius:10px;font-weight:600;font-size:0.9rem;
}
.paylink-btn:hover{background:#184e83;}
.paydetail-box{
  background:var(--ice);border-radius:10px;padding:14px 16px;font-size:0.88rem;
}
.paydetail-box div{display:flex;justify-content:space-between;gap:12px;padding:5px 0;border-bottom:1px solid rgba(11,32,54,0.06);}
.paydetail-box div:last-child{border-bottom:none;}
.paydetail-box span{color:#4a6379;}
.paydetail-box b{color:var(--navy);font-family:var(--mono);text-align:right;}
.paymodal-footer{
  margin-top:22px;padding-top:18px;border-top:1px solid var(--line);
}
.paymodal-footer p{font-size:0.82rem;color:#4a6379;margin:0 0 12px;line-height:1.5;}

/* ---------- Showcase (Discord bots / Minecraft servers) ---------- */
.showcase{padding:20px 0 10px;}
.showcasetabs{display:flex;justify-content:center;gap:10px;margin:20px 0 26px;}
.showcasetab{
  border:1px solid var(--line);background:var(--white);color:#4a6379;
  padding:9px 18px;border-radius:999px;font-weight:600;font-size:0.85rem;cursor:pointer;
}
.showcasetab.active{background:var(--blue);color:white;border-color:var(--blue);}
.showcasegrid{
  display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:16px;
}
.showcasecard{
  background:var(--white);border:1px solid var(--line);border-radius:14px;
  padding:20px;text-align:center;
}
.showcasecard .sc-icon{font-size:1.8rem;margin-bottom:10px;}
.showcasecard .sc-name{font-family:var(--disp);font-weight:600;color:var(--navy);margin-bottom:6px;}
.showcasecard .sc-desc{font-size:0.85rem;color:#4a6379;line-height:1.5;margin-bottom:12px;}
.showcasecard .sc-link{
  display:inline-block;font-size:0.82rem;font-weight:600;color:var(--blue);text-decoration:none;
}
.showcasecard .sc-link:hover{text-decoration:underline;}
.showcaseempty{text-align:center;color:#7891a8;font-size:0.9rem;padding:30px 0;}

/* ---------- Auth choice (Discord OR local account) ---------- */
.authchoice{max-width:400px;margin:50px auto;}
.authdivider{
  display:flex;align-items:center;gap:12px;color:#94a9bd;font-size:0.78rem;
  margin:20px 0;text-transform:uppercase;letter-spacing:0.05em;
}
.authdivider::before, .authdivider::after{content:'';flex:1;height:1px;background:var(--line);}
.authform label{display:block;font-size:0.78rem;font-weight:600;color:#4a6379;margin:0 0 6px;text-transform:uppercase;letter-spacing:0.05em;}
.authform input{
  width:100%;padding:11px 14px;border-radius:10px;border:1px solid var(--line);
  background:var(--ice-2);font-size:0.92rem;margin-bottom:14px;
}
.authform button{
  width:100%;padding:13px;border:none;border-radius:10px;background:var(--navy);
  color:white;font-family:var(--disp);font-weight:600;font-size:0.95rem;cursor:pointer;
}
.authform button:hover{background:#0e2c47;}
.authswitch{text-align:center;font-size:0.85rem;color:#4a6379;margin-top:16px;}
.authswitch a{color:var(--blue);font-weight:600;text-decoration:none;}
.autherror{
  background:#fdeaea;color:var(--accent);border-radius:8px;padding:10px 14px;
  font-size:0.85rem;margin-bottom:16px;
}

/* ---------- Admin: showcase manager ---------- */
.adminsection{margin-top:48px;padding-top:34px;border-top:1px solid var(--line);}
.adminintro{color:#4a6379;font-size:0.9rem;line-height:1.6;margin:0 0 20px;max-width:78ch;}
.admin-editor{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(280px,.75fr);gap:24px;align-items:start;}
.showcaseform.admin-entry-form{
  display:block;margin:0;background:var(--white);border:1px solid var(--line);
  border-radius:16px;padding:22px;
}
.admin-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;}
.admin-form-grid .field{min-width:0;}
.admin-form-grid .field-wide{grid-column:1/-1;}
.showcaseform label{display:block;font-size:0.76rem;font-weight:700;color:#4a6379;margin-bottom:6px;}
.showcaseform input:not([type=hidden]), .showcaseform select, .showcaseform textarea{
  width:100%;padding:11px 12px;border-radius:10px;border:1px solid var(--line);
  background:var(--ice-2);font:inherit;font-size:0.88rem;color:var(--navy);box-sizing:border-box;
}
.showcaseform textarea{resize:vertical;min-height:145px;line-height:1.55;}
.showcaseform input:focus, .showcaseform select:focus, .showcaseform textarea:focus{
  outline:2px solid rgba(31,95,151,.15);border-color:var(--blue);background:#fff;
}
.showcaseform small{display:block;color:#7891a8;font-size:0.72rem;margin-top:6px;line-height:1.4;}
.photo-upload-row{display:flex;gap:10px;align-items:center;flex-wrap:wrap;}
.photo-upload-row .photo-input{flex:1;min-width:220px;padding:8px !important;background:#fff !important;}
.photo-input::file-selector-button{
  border:0;border-radius:8px;background:var(--navy);color:#fff;padding:8px 11px;
  font-family:var(--disp);font-weight:600;cursor:pointer;margin-right:10px;
}
.secondarybtn{border:1px solid var(--line);border-radius:9px;background:#fff;color:var(--accent);padding:9px 12px;font-weight:700;cursor:pointer;}
.admin-submit{width:100%;margin-top:18px;}
.admin-preview-panel{position:sticky;top:20px;background:var(--ice-2);border:1px solid var(--line);border-radius:16px;padding:16px;}
.preview-heading{font-family:var(--disp);font-weight:700;color:var(--navy);font-size:.85rem;text-transform:uppercase;letter-spacing:.06em;margin:0 0 12px;}
.admin-card-preview{box-shadow:0 12px 28px rgba(11,32,54,.08);}
.admin-table-wrap{overflow-x:auto;margin-top:22px;border:1px solid var(--line);border-radius:12px;background:#fff;}
.showcaselist{width:100%;border-collapse:collapse;font-size:0.8rem;min-width:780px;}
.showcaselist th, .showcaselist td{text-align:left;padding:9px 10px;border-bottom:1px solid var(--line);vertical-align:top;}
.showcaselist tbody tr:last-child td{border-bottom:0;}
.showcaselist td:nth-child(3), .showcaselist td:nth-child(4){max-width:270px;white-space:pre-line;overflow-wrap:anywhere;}
.showcaselist th{color:#4a6379;text-transform:uppercase;font-size:0.68rem;letter-spacing:0.05em;background:var(--ice-2);}
.delbtn{border:none;background:none;color:var(--accent);cursor:pointer;font-weight:700;}
@media (max-width:900px){
  .admin-editor{grid-template-columns:1fr;}
  .admin-preview-panel{position:static;}
}
@media (max-width:620px){
  .admin-form-grid{grid-template-columns:1fr;}
  .admin-form-grid .field-wide{grid-column:auto;}
  .showcaseform.admin-entry-form{padding:16px;}
}

/* ---------- Home: product hub cards ---------- */
.producthub{padding:10px 0 20px;}
.productgrid{
  display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:18px;
}
.productcard{
  background:var(--white);border:1px solid var(--line);border-radius:16px;
  padding:26px 22px;text-decoration:none;display:block;
  transition:transform .12s ease, box-shadow .12s ease;
}
.productcard:hover{transform:translateY(-3px);box-shadow:0 14px 30px rgba(11,32,54,0.12);}
.productcard .pc-icon{font-size:1.9rem;margin-bottom:12px;}
.productcard .pc-title{font-family:var(--disp);font-weight:700;color:var(--navy);font-size:1.05rem;margin-bottom:6px;}
.productcard .pc-desc{font-size:0.87rem;color:#4a6379;line-height:1.55;margin-bottom:14px;}
.productcard .pc-arrow{font-size:0.85rem;font-weight:700;color:var(--blue);}

/* ---------- Product / checkout page (Rebrander) ---------- */
.productpage{
  display:grid;grid-template-columns:1.15fr 1fr;gap:28px;align-items:start;
  margin-top:10px;
}
@media (max-width: 860px){
  .productpage{grid-template-columns:1fr;}
}
.gallery-main{
  background:var(--navy);border-radius:16px;overflow:hidden;
  aspect-ratio:16/10;display:flex;align-items:center;justify-content:center;
  position:relative;
}
.gallery-main .console{height:100%;width:100%;border-radius:0;box-sizing:border-box;}
.gallery-thumbs{display:flex;gap:10px;margin-top:12px;}
.gallery-thumbs .thumb{
  flex:1;aspect-ratio:16/10;border-radius:10px;background:var(--ice);
  border:2px solid transparent;cursor:pointer;display:flex;align-items:center;
  justify-content:center;font-size:1.3rem;color:var(--blue);overflow:hidden;
}
.gallery-thumbs .thumb.active{border-color:var(--blue);}

.buypanel{
  background:var(--white);border:1px solid var(--line);border-radius:16px;
  padding:24px;position:sticky;top:20px;
}
.buypanel .bp-badge{
  display:inline-flex;align-items:center;gap:6px;background:#e5f6ec;color:#1c8a4c;
  font-size:0.72rem;font-weight:700;padding:4px 10px;border-radius:999px;
  text-transform:uppercase;letter-spacing:0.04em;margin-bottom:14px;
}
.buypanel .bp-badge::before{content:'●';font-size:0.6rem;}
.buypanel h1{font-family:var(--disp);font-weight:700;font-size:1.3rem;color:var(--navy);margin:0 0 2px;}
.buypanel .bp-sub{font-size:0.78rem;color:#7891a8;text-transform:uppercase;letter-spacing:0.08em;margin-bottom:18px;}
.buypanel .bp-from{font-size:0.78rem;color:#7891a8;margin-bottom:2px;}
.buypanel .bp-price{font-family:var(--disp);font-weight:700;font-size:1.8rem;color:var(--navy);margin-bottom:16px;}
.buypanel .bp-price span{font-size:0.9rem;font-weight:500;color:#4a6379;}
.bp-tags{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:20px;}
.bp-tags span{
  background:var(--ice);color:var(--blue);font-size:0.74rem;font-weight:600;
  padding:4px 10px;border-radius:999px;
}
.bp-label{font-size:0.72rem;color:#7891a8;text-transform:uppercase;letter-spacing:0.08em;margin:0 0 8px;}
.bp-plans{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:20px;}
.bp-plan{
  border:1px solid var(--line);border-radius:10px;padding:12px 8px;text-align:center;
  cursor:pointer;background:var(--ice-2);
}
.bp-plan.active{border-color:var(--blue);background:var(--ice);}
.bp-plan .bp-plan-name{font-size:0.78rem;color:#4a6379;font-weight:600;}
.bp-plan .bp-plan-price{font-family:var(--disp);font-weight:700;color:var(--navy);font-size:1.05rem;margin-top:2px;}
.bp-methods{display:flex;flex-direction:column;gap:8px;margin-bottom:14px;}
.bp-method{
  display:flex;align-items:center;gap:12px;border:1px solid var(--line);
  border-radius:10px;padding:12px 14px;cursor:pointer;background:var(--ice-2);
}
.bp-method.active{border-color:var(--blue);background:var(--ice);}
.bp-method .bpm-icon{font-size:1.15rem;flex:0 0 auto;}
.bp-method .bpm-text{flex:1;}
.bp-method .bpm-name{font-weight:600;color:var(--navy);font-size:0.9rem;}
.bp-method .bpm-sub{font-size:0.76rem;color:#7891a8;}
.bp-method .bpm-dot{
  width:18px;height:18px;border-radius:50%;border:2px solid var(--line);flex:0 0 auto;
}
.bp-method.active .bpm-dot{border-color:var(--blue);background:var(--blue);box-shadow:inset 0 0 0 3px white;}
.bp-discordnote{
  background:var(--ice);border-radius:10px;padding:14px 16px;font-size:0.85rem;
  color:#334a60;margin:14px 0;line-height:1.5;display:none;
}
.bp-discordnote.show{display:block;}
.bp-discordnote a{color:var(--blue);font-weight:600;}
.bp-gobtn{
  display:flex;align-items:center;justify-content:center;gap:9px;width:100%;
  padding:14px;border:none;border-radius:12px;background:#5865F2;color:white;
  font-family:var(--disp);font-weight:600;font-size:0.95rem;cursor:pointer;
  text-decoration:none;box-shadow:0 8px 20px rgba(88,101,242,0.3);
}
.bp-gobtn:hover{background:#4a55d6;}
.bp-gobtn svg{width:20px;height:20px;}

/* ---------- Listing pages (Minecraft servers / Discord bots / Partners) ---------- */
.listhero{padding:10px 0 6px;text-align:center;}
.listhero h1{font-family:var(--disp);font-weight:700;font-size:clamp(1.6rem,3vw,2.1rem);color:var(--navy);margin:0 0 10px;}
.listhero p{color:#4a6379;max-width:56ch;margin:0 auto;line-height:1.6;}
.listgrid{
  display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:20px;
  margin:34px 0 20px;
}
.itemcard{
  background:var(--white);border:1px solid var(--line);border-radius:16px;
  overflow:hidden;
}
.itemcard .ic-photo{
  aspect-ratio:16/9;background:var(--ice);display:flex;align-items:center;
  justify-content:center;font-size:2.2rem;color:var(--sky);overflow:hidden;
}
.itemcard .ic-photo img{width:100%;height:100%;object-fit:cover;}
.itemcard .ic-body{padding:18px 20px;}
.itemcard .ic-topline{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:6px;}
.itemcard .ic-topline .ic-title{margin-bottom:0;}
.itemcard .ic-title{font-family:var(--disp);font-weight:700;color:var(--navy);font-size:1.02rem;margin-bottom:6px;}
.itemcard .ic-desc{font-size:0.87rem;color:#4a6379;line-height:1.55;margin-bottom:12px;white-space:pre-line;overflow-wrap:anywhere;}
.itemcard .ic-price{flex:0 0 auto;background:var(--navy);color:#fff;border-radius:999px;padding:5px 10px;font-family:var(--disp);font-size:.78rem;font-weight:700;white-space:nowrap;}
.itemcard .ic-madeby{font-size:0.78rem;color:#7891a8;border-top:1px solid var(--line);padding-top:10px;margin-top:4px;}
.itemcard .ic-madeby b{color:var(--navy);}
.itemcard .ic-link{display:inline-block;margin-top:10px;font-size:0.82rem;font-weight:600;color:var(--blue);text-decoration:none;}
.itemcard .ic-link:hover{text-decoration:underline;}
.listempty{grid-column:1/-1;text-align:center;color:#7891a8;padding:40px 0;}

@media (max-width: 640px){
  .bp-plans{grid-template-columns:1fr;}
}

/* ---------- Seizoenthema's ---------- */
html.theme-spring{
  --blue:#2f7d68;--sky:#75bfa8;--ice:#edf9f3;--ice-2:#f7fcf9;--accent:#d95f8d;
}
html.theme-summer{
  --blue:#1479a7;--sky:#4dbfe7;--ice:#eaf9ff;--ice-2:#f7fdff;--accent:#ee9b22;
}
html.theme-autumn{
  --blue:#9a542d;--sky:#d78a4d;--ice:#fff3e7;--ice-2:#fffaf5;--accent:#b83b2f;
}
html.theme-winter{
  --blue:#486fa5;--sky:#86b9df;--ice:#edf6fd;--ice-2:#f8fbff;--accent:#7557b8;
}
html.theme-spring body{
  background:radial-gradient(900px 500px at 10% 0%,rgba(217,95,141,.14),transparent 58%),radial-gradient(1000px 560px at 100% 0%,rgba(117,191,168,.20),transparent 58%),var(--ice-2);
}
html.theme-summer body{
  background:radial-gradient(850px 470px at 12% -5%,rgba(255,200,66,.20),transparent 58%),radial-gradient(1000px 560px at 100% 0%,rgba(77,191,231,.20),transparent 58%),var(--ice-2);
}
html.theme-autumn body{
  background:radial-gradient(900px 500px at 10% 0%,rgba(215,138,77,.22),transparent 58%),radial-gradient(900px 520px at 100% 0%,rgba(184,59,47,.10),transparent 58%),var(--ice-2);
}
html.theme-winter body{
  background:radial-gradient(850px 500px at 15% -5%,rgba(134,185,223,.23),transparent 60%),radial-gradient(1000px 560px at 100% 0%,rgba(117,87,184,.10),transparent 58%),var(--ice-2);
}
html.theme-spring body::before,html.theme-summer body::before,html.theme-autumn body::before,html.theme-winter body::before{
  position:fixed;right:20px;bottom:14px;z-index:0;pointer-events:none;opacity:.16;font-size:76px;line-height:1;filter:saturate(.85);
}
html.theme-spring body::before{content:'🌷';}
html.theme-summer body::before{content:'☀️';}
html.theme-autumn body::before{content:'🍂';}
html.theme-winter body::before{content:'❄️';}
.wrap{position:relative;z-index:1;}

/* ---------- Meerdere prijsopties ---------- */
.itemcard .ic-prices{display:flex;flex-direction:column;align-items:flex-end;gap:6px;flex:0 0 auto;}
.itemcard .ic-price.lifetime{background:var(--blue);}

/* ---------- Admin: thema's en geschiedenis ---------- */
.theme-admin-form{display:flex;align-items:end;gap:14px;flex-wrap:wrap;background:var(--white);border:1px solid var(--line);border-radius:16px;padding:20px;}
.theme-admin-form .field{max-width:430px;}
.theme-admin-form select{width:100%;padding:11px 12px;border:1px solid var(--line);border-radius:10px;background:var(--ice-2);font:inherit;color:var(--navy);}
.theme-admin-form .startbtn{width:auto;margin:0;}
.theme-previews{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:16px;}
.theme-preview{min-height:92px;border-radius:14px;padding:16px;display:flex;flex-direction:column;justify-content:end;border:1px solid rgba(11,32,54,.10);}
.theme-preview b{font-family:var(--disp);font-size:.92rem;}
.theme-preview span{font-size:.74rem;margin-top:4px;opacity:.78;}
.theme-preview-spring{background:linear-gradient(145deg,#f8dce8,#dff4e9);color:#315c50;}
.theme-preview-summer{background:linear-gradient(145deg,#fff0a8,#d9f5ff);color:#155978;}
.theme-preview-autumn{background:linear-gradient(145deg,#ffd9ad,#f2b59d);color:#783d24;}
.theme-preview-winter{background:linear-gradient(145deg,#e4f3ff,#e7e1fa);color:#3f5f8c;}
.admin-section-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;}
.admin-section-heading form{margin:0;}
.dangerbtn{white-space:nowrap;}
.history-table{min-width:1120px;}
.history-table td{white-space:normal!important;max-width:260px;overflow-wrap:anywhere;}
.history-table small{color:#7891a8;}
.history-error{margin-top:6px;color:var(--accent);font-size:.72rem;line-height:1.35;max-width:220px;}

@media (max-width:800px){
  .theme-previews{grid-template-columns:repeat(2,minmax(0,1fr));}
  .admin-section-heading{display:block;}
  .admin-section-heading form{margin-top:12px;}
}
@media (max-width:480px){
  .theme-previews{grid-template-columns:1fr;}
  html.theme-spring body::before,html.theme-summer body::before,html.theme-autumn body::before,html.theme-winter body::before{font-size:52px;right:10px;bottom:10px;}
}
.pill-status.warning{background:#fff1cf;color:#8a5b00;}

/* ---------- Admin dashboard uitbreidingen ---------- */
.admin-page-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:18px;}
.admin-jumpnav{position:sticky;top:0;z-index:20;display:flex;gap:8px;flex-wrap:wrap;padding:10px;margin:0 0 22px;background:rgba(248,251,255,.94);backdrop-filter:blur(12px);border:1px solid var(--line);border-radius:14px;}
.admin-jumpnav a{padding:7px 10px;border-radius:8px;color:var(--navy);font-size:.78rem;font-weight:700;text-decoration:none;}
.admin-jumpnav a:hover{background:var(--ice);color:var(--blue);}
.admin-overview{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;scroll-margin-top:82px;}
.admin-stat{background:var(--white);border:1px solid var(--line);border-radius:15px;padding:16px;min-width:0;}
.admin-stat span{display:block;color:#7891a8;font-size:.7rem;text-transform:uppercase;letter-spacing:.06em;font-weight:700;}
.admin-stat b{display:block;color:var(--navy);font-family:var(--disp);font-size:1.75rem;line-height:1.1;margin:8px 0 5px;}
.admin-stat small{display:block;color:#4a6379;font-size:.72rem;line-height:1.35;}
.adminsection{scroll-margin-top:82px;}
.admin-settings-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;align-items:start;}
.settings-card{display:block!important;margin:0!important;background:var(--white);border:1px solid var(--line);border-radius:16px;padding:20px;}
.settings-card > label:not(.checkfield){margin-top:12px;}
.checkfield{display:flex!important;align-items:center;gap:8px;text-transform:none!important;letter-spacing:0!important;font-size:.82rem!important;color:var(--navy)!important;cursor:pointer;}
.checkfield input{width:auto!important;margin:0!important;accent-color:var(--blue);}
.option-row{display:flex;align-items:center;gap:20px;flex-wrap:wrap;}
.admin-table-tools{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin:14px 0 0;}
.admin-table-tools input,.admin-table-tools select{min-height:40px;border:1px solid var(--line);border-radius:10px;background:#fff;color:var(--navy);padding:9px 12px;font:inherit;font-size:.82rem;}
.admin-table-tools input{flex:1;min-width:240px;}
.admin-table-tools select{min-width:155px;}
.admin-thumb{width:52px;height:36px;object-fit:cover;border-radius:7px;border:1px solid var(--line);}
.admin-content-table{min-width:1050px;}
.admin-content-table td:nth-child(3),.admin-content-table td:nth-child(4){max-width:290px;}
.admin-actions-cell{min-width:190px;}
.admin-row-actions{display:flex;flex-wrap:wrap;gap:6px;align-items:center;}
.admin-row-actions form{margin:0;}
.compactbtn{display:inline-flex;align-items:center;justify-content:center;padding:6px 8px!important;font-size:.69rem!important;line-height:1.15;text-decoration:none;white-space:nowrap;}
.admin-row-actions .delbtn{border:1px solid #f1caca;background:#fff4f4;border-radius:8px;color:var(--accent);}
.featured-pill,.public-featured{display:inline-flex;align-items:center;gap:3px;background:#fff1cf;color:#8a5b00;border-radius:999px;padding:3px 7px;font-size:.65rem;font-weight:800;white-space:nowrap;}
.public-featured{margin-left:8px;vertical-align:2px;}
.pill-status.neutral{background:#edf2f6;color:#536a7e;}
.admin-heading-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap;}
.admin-heading-actions form{margin:0;}
.cancel-edit{display:block;text-align:center;color:var(--blue);font-weight:700;font-size:.82rem;margin-top:12px;text-decoration:none;}
.cancel-edit:hover{text-decoration:underline;}
.keytable code{font-size:.76rem;color:var(--navy);}
.keytable form,.showcaselist form{margin:0;}

/* ---------- Openbare aankondigingsbalk ---------- */
.site-announcement{position:relative;z-index:100;display:flex;align-items:center;justify-content:center;gap:16px;background:var(--navy);color:#fff;padding:10px 50px 10px 16px;box-shadow:0 3px 14px rgba(11,32,54,.18);}
.site-announcement-content{display:flex;align-items:center;justify-content:center;gap:14px;flex-wrap:wrap;text-align:center;font-size:.84rem;font-weight:600;}
.site-announcement-content a{display:inline-flex;color:#fff;background:rgba(255,255,255,.16);border:1px solid rgba(255,255,255,.28);padding:5px 10px;border-radius:999px;text-decoration:none;font-size:.76rem;}
.site-announcement-content a:hover{background:rgba(255,255,255,.24);}
.site-announcement-close{position:absolute;right:14px;top:50%;transform:translateY(-50%);border:0;background:none;color:#fff;font-size:1.4rem;line-height:1;cursor:pointer;opacity:.8;}
.site-announcement-close:hover{opacity:1;}

@media (max-width:1050px){.admin-overview{grid-template-columns:repeat(3,minmax(0,1fr));}}
@media (max-width:800px){.admin-settings-grid{grid-template-columns:1fr;}.admin-page-heading{display:block;}.admin-page-heading>a{display:inline-block;margin-top:8px;}.admin-jumpnav{position:static;}.admin-overview{grid-template-columns:repeat(2,minmax(0,1fr));}}
@media (max-width:520px){.admin-overview{grid-template-columns:1fr;}.admin-table-tools>*{width:100%;min-width:0!important;}.site-announcement{padding-left:12px;padding-right:42px;}.public-featured{display:flex;width:max-content;margin:6px 0 0;}}

/* ---------- Startpagina: item van de week en aankondigingen ---------- */
.home-weekly,.home-announcements{padding:24px 0 18px;}
.home-section-heading{text-align:center;max-width:680px;margin:0 auto 22px;}
.home-section-heading .sectiontitle{margin-top:5px;}
.home-section-heading p{margin:0;color:#4a6379;font-size:.92rem;line-height:1.55;}
.home-eyebrow{display:inline-flex;align-items:center;justify-content:center;background:var(--ice);color:var(--blue);border:1px solid var(--line);border-radius:999px;padding:5px 11px;font-size:.68rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em;}
.weekly-offer-card{display:grid;grid-template-columns:minmax(260px,.92fr) minmax(0,1.18fr);overflow:hidden;background:var(--white);border:1px solid var(--line);border-radius:22px;box-shadow:0 16px 42px rgba(11,32,54,.11);max-width:960px;margin:0 auto;}
.weekly-offer-media{position:relative;min-height:330px;background:linear-gradient(145deg,var(--ice),#d9eefb);display:flex;align-items:center;justify-content:center;overflow:hidden;}
.weekly-offer-media img{width:100%;height:100%;position:absolute;inset:0;object-fit:cover;}
.weekly-image-fallback{font-size:6rem;filter:drop-shadow(0 12px 16px rgba(11,32,54,.14));}
.weekly-discount-badge{position:absolute;left:18px;top:18px;z-index:2;background:var(--accent);color:#fff;border-radius:999px;padding:8px 13px;font-family:var(--disp);font-size:.78rem;font-weight:800;box-shadow:0 8px 18px rgba(213,49,45,.28);}
.weekly-offer-content{padding:30px;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;min-width:0;}
.weekly-category{display:inline-flex;background:var(--ice);color:var(--blue);border-radius:999px;padding:5px 10px;font-size:.68rem;font-weight:800;text-transform:uppercase;letter-spacing:.07em;}
.weekly-title{font-family:var(--disp);font-size:clamp(1.5rem,3vw,2.15rem);line-height:1.12;color:var(--navy);margin:12px 0 10px;overflow-wrap:anywhere;}
.weekly-description{color:#40596f;line-height:1.65;font-size:.92rem;white-space:pre-line;margin:0 0 10px;}
.weekly-madeby{margin:0;color:#7891a8;font-size:.78rem;font-weight:600;}
.weekly-prices{width:100%;display:grid;gap:8px;margin:20px 0 18px;}
.weekly-price-row{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:11px 13px;background:var(--ice-2);border:1px solid var(--line);border-radius:12px;}
.weekly-price-label{color:#4a6379;font-size:.77rem;font-weight:700;}
.weekly-price-values{display:flex;align-items:baseline;gap:9px;flex-wrap:wrap;justify-content:flex-end;}
.weekly-old-price{color:#8ca0b2;text-decoration:line-through;font-size:.82rem;}
.weekly-sale-price{color:var(--accent);font-family:var(--disp);font-size:1.24rem;}
.weekly-action{display:inline-flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--blue),var(--sky));color:#fff;text-decoration:none;border-radius:11px;padding:12px 18px;font-family:var(--disp);font-weight:700;box-shadow:0 8px 20px rgba(30,95,158,.22);}
.weekly-action:hover{transform:translateY(-1px);}
.weekly-discount-note{display:block;color:#7891a8;font-size:.68rem;line-height:1.45;margin-top:10px;}
.home-announcement-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px;}
.home-announcement-card{display:flex;gap:14px;background:var(--white);border:1px solid var(--line);border-radius:16px;padding:19px;box-shadow:0 8px 24px rgba(11,32,54,.06);}
.home-announcement-icon{width:42px;height:42px;border-radius:12px;background:var(--ice);display:flex;align-items:center;justify-content:center;font-size:1.25rem;flex:0 0 auto;}
.home-announcement-body{min-width:0;}
.home-announcement-body h3{font-family:var(--disp);font-size:1rem;color:var(--navy);margin:1px 0 7px;overflow-wrap:anywhere;}
.home-announcement-body p{font-size:.83rem;color:#4a6379;line-height:1.58;white-space:pre-line;margin:0;overflow-wrap:anywhere;}
.home-announcement-body a{display:inline-flex;margin-top:11px;color:var(--blue);font-size:.78rem;font-weight:800;text-decoration:none;}
.home-announcement-body a:hover{text-decoration:underline;}

/* ---------- Admin: startpagina beheren ---------- */
.homepage-admin-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:18px;align-items:start;margin-top:16px;}
.homepage-admin-grid .settings-card select,.homepage-admin-grid .settings-card textarea{width:100%;border:1px solid var(--line);border-radius:10px;background:var(--ice-2);color:var(--navy);padding:11px 12px;font:inherit;}
.homepage-admin-grid .settings-card textarea{resize:vertical;line-height:1.55;}
.weekly-admin-title{display:flex;align-items:center;gap:11px;margin-bottom:16px;}
.weekly-admin-title>span{width:42px;height:42px;border-radius:12px;background:var(--ice);display:flex;align-items:center;justify-content:center;font-size:1.25rem;flex:0 0 auto;}
.weekly-admin-title b{display:block;color:var(--navy);font-family:var(--disp);font-size:1rem;}
.weekly-admin-title small{display:block;color:#7891a8;font-size:.71rem;line-height:1.4;margin-top:2px;}
.weekly-admin-summary{margin-top:13px;background:var(--ice);border:1px solid var(--line);border-radius:10px;padding:11px 12px;color:#40596f;font-size:.8rem;line-height:1.45;}
.weekly-admin-summary small{color:#5f788e;}
.compact-grid{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:10px;}
.home-announcement-table{min-width:900px;}
.home-announcement-table td:nth-child(2){max-width:390px;white-space:normal;overflow-wrap:anywhere;}
.weekly-admin-pill{display:inline-flex;align-items:center;background:#ffe5e2;color:#b52f2a;border-radius:999px;padding:3px 7px;font-size:.65rem;font-weight:800;white-space:nowrap;}

@media (max-width:860px){
  .weekly-offer-card{grid-template-columns:1fr;}
  .weekly-offer-media{min-height:260px;}
  .homepage-admin-grid{grid-template-columns:1fr;}
}
@media (max-width:680px){
  .home-announcement-grid{grid-template-columns:1fr;}
  .weekly-offer-content{padding:23px 20px;}
  .weekly-price-row{align-items:flex-start;}
  .compact-grid{grid-template-columns:1fr;}
}
@media (max-width:420px){
  .weekly-price-row{display:block;}
  .weekly-price-values{justify-content:flex-start;margin-top:5px;}
}


/* ---------- Licenties per verkochte Discord-bot ---------- */
.bot-license-form{display:grid;grid-template-columns:minmax(240px,1.5fr) repeat(2,minmax(130px,.65fr)) repeat(3,minmax(180px,1fr));gap:12px;align-items:end;margin-bottom:18px;}
.bot-license-form .field{margin:0;}
.bot-license-form .startbtn{min-height:46px;align-self:end;}
.bot-license-created{margin-bottom:18px;}
.bot-key-console{height:auto;margin:10px 0;line-height:1.8;}
.bot-key-console code{font-size:14px;letter-spacing:1px;user-select:all;}
.license-security-note{display:grid;grid-template-columns:auto 1fr;gap:12px;align-items:start;margin:16px 0;padding:14px 16px;border:1px solid rgba(36,116,255,.22);border-radius:14px;background:rgba(36,116,255,.065);}
.license-security-note b{white-space:nowrap;color:var(--blue);}
.license-security-note span{line-height:1.55;color:var(--muted);}
.bot-license-table{min-width:1280px;}
.bot-license-table td{vertical-align:top;}
.bot-license-table code{font-size:12px;user-select:all;}
.bot-integration-help{margin-top:18px;border:1px solid var(--line);border-radius:14px;background:var(--panel);overflow:hidden;}
.bot-integration-help summary{cursor:pointer;padding:15px 18px;font-weight:800;}
.bot-integration-help>div{padding:0 18px 16px;color:var(--muted);line-height:1.6;}
.bot-integration-help p{margin:8px 0;}
.bot-license-error{margin-bottom:16px;}
@media(max-width:1200px){.bot-license-form{grid-template-columns:repeat(3,minmax(180px,1fr));}.bot-license-bot-field{grid-column:span 2;}}
@media(max-width:760px){.bot-license-form{grid-template-columns:1fr;}.bot-license-bot-field{grid-column:auto;}.license-security-note{grid-template-columns:1fr;}}

/* Dashboard bot downloads */
.dashboard-downloads{margin:28px 0 34px;padding:26px;border:1px solid rgba(99,102,241,.2);border-radius:24px;background:rgba(15,23,42,.72);box-shadow:0 18px 50px rgba(2,6,23,.2)}
.dashboard-section-title{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:20px}.dashboard-section-title h2{margin:3px 0 0;font-size:clamp(24px,3vw,34px)}.dashboard-section-title>span{font-size:13px;color:var(--muted);border:1px solid var(--border);padding:7px 11px;border-radius:999px}.dashboard-section-title .eyebrow{text-transform:uppercase;letter-spacing:.13em;font-size:11px;color:var(--blue);font-weight:800}
.bot-download-grid{display:grid;gap:16px}.bot-download-card{display:grid;grid-template-columns:92px 1fr;gap:18px;padding:18px;border:1px solid var(--border);border-radius:20px;background:rgba(255,255,255,.035)}.bot-download-icon{width:92px;height:92px;border-radius:18px;display:flex;align-items:center;justify-content:center;font-size:38px;background:linear-gradient(145deg,rgba(99,102,241,.18),rgba(59,130,246,.08));overflow:hidden}.bot-download-icon img{width:100%;height:100%;object-fit:cover}.bot-download-body h3{margin:0 0 7px;font-size:21px}.bot-download-body p{margin:12px 0;color:var(--muted);white-space:pre-line}.bot-download-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}.bot-download-heading>div{display:flex;align-items:center;flex-wrap:wrap;gap:9px}.bot-plan{padding:6px 10px;border-radius:999px;background:rgba(99,102,241,.14);font-size:12px;font-weight:800;white-space:nowrap}.bot-download-meta{display:flex;flex-wrap:wrap;gap:8px 16px;margin:13px 0 16px;font-size:12px;color:var(--muted)}.bot-download-meta code{font-size:11px}.bot-download-button{display:inline-flex!important;width:auto!important;margin:0!important;padding:11px 17px!important}.bot-download-unavailable{display:inline-block;padding:10px 13px;border-radius:12px;background:rgba(239,68,68,.09);color:#fca5a5;font-size:13px}.dashboard-tool-locked{margin:20px auto 32px;max-width:none}

/* Admin bot source packages */
.bot-package-field{border:1px dashed rgba(99,102,241,.38);border-radius:16px;padding:16px;background:rgba(99,102,241,.055)}.bot-package-upload{display:flex;align-items:center;gap:14px;flex-wrap:wrap}.bot-package-upload input[type=file]{max-width:100%}.bot-package-upload span{font-size:13px;color:var(--muted)}.bot-package-options{display:grid;grid-template-columns:minmax(220px,1fr) auto;align-items:end;gap:12px;margin-top:13px}.bot-package-options label:not(.checkfield){display:block;margin-bottom:6px}.bot-package-options .checkfield{margin-bottom:9px}.bot-package-field>small{display:block;margin-top:10px;line-height:1.55}

@media(max-width:720px){.dashboard-downloads{padding:18px}.bot-download-card{grid-template-columns:1fr}.bot-download-icon{width:70px;height:70px}.bot-download-heading{flex-direction:column}.bot-package-options{grid-template-columns:1fr}}

/* =========================================================
   V16 — gescheiden dashboard- en adminpagina's
   ========================================================= */
.dashboard-layout .wrap,.admin-layout .wrap{max-width:none;padding:0;margin:0;}
.dashboard-layout,.admin-layout{background:#071424;color:#eaf4fc;}
.dashboard-app,.admin-shell{min-height:100vh;display:grid;grid-template-columns:270px minmax(0,1fr);background:radial-gradient(900px 520px at 75% -10%,rgba(79,168,224,.14),transparent 60%),#071424;}
.dashboard-sidebar,.admin-sidebar{position:sticky;top:0;height:100vh;display:flex;flex-direction:column;padding:24px 18px;background:rgba(5,17,31,.96);border-right:1px solid rgba(148,180,211,.14);z-index:20;}
.dashboard-brand{display:flex;gap:12px;align-items:center;color:#fff;text-decoration:none;padding:8px 10px 24px;}
.dashboard-brand-mark{width:42px;height:42px;border-radius:13px;display:grid;place-items:center;background:linear-gradient(145deg,#4fa8e0,#1e5f9e);font-family:var(--disp);font-weight:800;box-shadow:0 10px 30px rgba(30,95,158,.3);}
.dashboard-brand>span:last-child{display:grid;gap:2px;}.dashboard-brand b{font-family:var(--disp);font-size:14px}.dashboard-brand small{font-size:11px;color:#89a5bf;text-transform:uppercase;letter-spacing:.1em}
.dashboard-menu,.admin-page-nav{display:grid;gap:6px;}
.dashboard-menu a,.admin-page-nav a{display:flex;align-items:center;gap:11px;min-height:44px;padding:10px 12px;border-radius:12px;color:#9fb5c9;text-decoration:none;font-weight:700;font-size:14px;transition:.18s ease;}
.dashboard-menu a:hover,.admin-page-nav a:hover{background:rgba(79,168,224,.08);color:#fff;transform:translateX(2px)}
.dashboard-menu a.active,.admin-page-nav a.active{color:#fff;background:linear-gradient(90deg,rgba(79,168,224,.22),rgba(30,95,158,.08));box-shadow:inset 3px 0 #4fa8e0;}
.dashboard-menu-icon,.admin-page-nav a>span{width:24px;text-align:center;font-size:16px}.dashboard-menu em{margin-left:auto;min-width:24px;padding:3px 7px;border-radius:999px;background:#1e5f9e;color:#fff;font-size:11px;font-style:normal;text-align:center}
.dashboard-sidebar-status{margin-top:auto;padding:16px 10px;display:grid;gap:8px;border-top:1px solid rgba(148,180,211,.12)}.dashboard-sidebar-status>small{color:#7390aa;text-transform:uppercase;letter-spacing:.1em;font-weight:800;font-size:10px}.dashboard-sidebar-status .licensebadge{white-space:normal;text-align:left;line-height:1.35}
.dashboard-sidebar-actions,.admin-sidebar-actions{display:flex;gap:10px;padding:12px 10px 0}.dashboard-sidebar-actions a,.admin-sidebar-actions a{color:#8eabc4;text-decoration:none;font-size:12px}.dashboard-sidebar-actions a:last-child,.admin-sidebar-actions a:last-child{margin-left:auto;color:#fca5a5}
.dashboard-main,.admin-main{min-width:0;padding:32px clamp(22px,4vw,58px) 70px;}
.dashboard-content-header,.admin-page-heading{display:flex;justify-content:space-between;align-items:center;gap:24px;margin:0 0 28px;padding-bottom:22px;border-bottom:1px solid rgba(148,180,211,.14)}
.dashboard-content-header h1,.admin-layout .sectiontitle{color:#fff;margin:3px 0 7px;font-size:clamp(28px,4vw,42px)}.dashboard-content-header p,.admin-layout .adminintro{margin:0;color:#8fa9c0;line-height:1.55}.dashboard-kicker{display:block;color:#4fa8e0;text-transform:uppercase;letter-spacing:.16em;font-size:10px;font-weight:900}
.dashboard-account-chip{display:flex;align-items:center;gap:11px;padding:9px 12px;border:1px solid rgba(148,180,211,.14);border-radius:16px;background:rgba(255,255,255,.035)}.dashboard-account-chip .avatar{width:38px;height:38px;border-radius:11px}.dashboard-account-chip>span{display:grid;gap:2px}.dashboard-account-chip b{font-size:13px;color:#fff}.dashboard-account-chip small{max-width:220px;overflow:hidden;text-overflow:ellipsis;color:#829db6;font-size:11px}
.dashboard-mobile-nav,.admin-mobile-nav{display:none;overflow:auto;gap:7px;margin:-8px 0 22px;padding-bottom:6px}.dashboard-mobile-nav a,.admin-mobile-nav a{white-space:nowrap;padding:9px 12px;border-radius:10px;background:rgba(255,255,255,.04);border:1px solid rgba(148,180,211,.12);color:#9fb5c9;text-decoration:none;font-size:12px;font-weight:800}.dashboard-mobile-nav a.active{color:#fff;background:rgba(79,168,224,.18)}
.dashboard-welcome-card{display:flex;align-items:center;justify-content:space-between;gap:26px;padding:30px;border-radius:24px;border:1px solid rgba(79,168,224,.25);background:linear-gradient(135deg,rgba(30,95,158,.23),rgba(255,255,255,.035));box-shadow:0 22px 65px rgba(0,0,0,.18)}.dashboard-welcome-card h2{margin:5px 0 8px;color:#fff;font-size:clamp(24px,3vw,34px)}.dashboard-welcome-card p{margin:0;color:#a8bfd2}.dashboard-welcome-card .startbtn{width:auto;margin:0;white-space:nowrap}
.dashboard-stat-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:22px 0}.dashboard-stat-card{display:grid;gap:6px;padding:20px;border:1px solid rgba(148,180,211,.14);border-radius:18px;background:rgba(255,255,255,.035);text-decoration:none;transition:.18s ease}.dashboard-stat-card:hover{transform:translateY(-3px);border-color:rgba(79,168,224,.35);background:rgba(79,168,224,.075)}.dashboard-stat-card span{color:#86a3bc;font-size:12px;font-weight:800}.dashboard-stat-card b{color:#fff;font-size:25px;font-family:var(--disp)}.dashboard-stat-card small{color:#7591a9;line-height:1.4}
.dashboard-quick-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.dashboard-quick-grid>a{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:13px;padding:18px;border:1px solid rgba(148,180,211,.14);border-radius:18px;background:rgba(255,255,255,.025);color:#fff;text-decoration:none}.dashboard-quick-grid>a>span{width:42px;height:42px;display:grid;place-items:center;border-radius:12px;background:rgba(79,168,224,.12);font-size:20px}.dashboard-quick-grid div{display:grid;gap:3px}.dashboard-quick-grid small{color:#7f9ab2}.dashboard-quick-grid em{font-style:normal;color:#4fa8e0;font-size:21px}
.dashboard-section,.dashboard-tool-intro{margin-top:25px;padding:26px;border:1px solid rgba(148,180,211,.14);border-radius:24px;background:rgba(255,255,255,.025)}.dashboard-section-heading{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:20px}.dashboard-section-heading h2,.dashboard-tool-intro h2{margin:4px 0 0;color:#fff;font-size:28px}.dashboard-section-heading>a{color:#75bde9;text-decoration:none;font-size:13px}.dashboard-tool-intro p{margin:7px 0 0;color:#8fa9c0}
.dashboard-product-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:17px}.dashboard-product-card{overflow:hidden;border-radius:20px;border:1px solid rgba(148,180,211,.14);background:rgba(255,255,255,.035)}.dashboard-product-image{height:180px;position:relative;display:grid;place-items:center;background:linear-gradient(145deg,rgba(79,168,224,.15),rgba(30,95,158,.03));font-size:48px;overflow:hidden}.dashboard-product-image img{width:100%;height:100%;object-fit:cover}.dashboard-product-image>b{position:absolute;left:13px;top:13px;padding:6px 9px;border-radius:999px;background:#1e5f9e;color:#fff;font-size:10px;text-transform:uppercase;letter-spacing:.08em}.dashboard-product-body{padding:19px}.dashboard-product-top{display:flex;justify-content:space-between;gap:14px;align-items:start}.dashboard-product-top h3{margin:0;color:#fff;font-size:20px}.dashboard-product-prices{display:grid;gap:4px;text-align:right;color:#77c4f1;font-weight:800;font-size:13px;white-space:nowrap}.dashboard-product-prices small{font-size:10px;color:#7896b0}.dashboard-product-body p{color:#91abc1;line-height:1.6;white-space:pre-line;display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden}.dashboard-product-meta{display:flex;gap:8px;flex-wrap:wrap;margin:14px 0}.dashboard-product-meta span{padding:5px 8px;border-radius:999px;background:rgba(148,180,211,.08);color:#829db5;font-size:10px;font-weight:800}.dashboard-product-button{display:inline-flex!important;width:auto!important;margin:0!important;padding:10px 14px!important}
.dashboard-empty{padding:42px 24px;border:1px dashed rgba(148,180,211,.23);border-radius:22px;text-align:center;background:rgba(255,255,255,.018)}.dashboard-empty.compact{margin:25px 0}.dashboard-empty-icon{font-size:36px}.dashboard-empty h2{color:#fff;margin:10px 0 7px}.dashboard-empty p{max-width:580px;margin:0 auto 18px;color:#8fa9c0;line-height:1.6}.dashboard-license-card{max-width:760px;margin:24px auto}.dashboard-license-card .redeemform{max-width:620px;margin:20px auto 0}.dashboard-text-link{display:inline-block;margin-top:15px;color:#75bde9;text-decoration:none;font-size:13px}
.dashboard-tool-page{margin-top:18px}.dashboard-tool-page .panel{color:var(--navy)}.dashboard-tool-page .panel h2{color:var(--blue)}.dashboard-tool-page .console{color:#d6e9f8}.dashboard-tool-page>.panel:first-child{margin-top:0}
.dashboard-layout .dashboard-downloads{margin:0 0 25px;background:rgba(255,255,255,.025);border-color:rgba(148,180,211,.14)}.dashboard-layout .dashboard-section-title h2,.dashboard-layout .bot-download-body h3{color:#fff}.dashboard-layout .bot-download-card{background:rgba(255,255,255,.025);border-color:rgba(148,180,211,.14)}

/* Admin losse pagina's */
.admin-main{padding-top:28px}.adminbox{max-width:none;margin:0;padding:0;background:transparent!important;border:0!important;box-shadow:none!important}.admin-page-heading{margin-bottom:20px}.admin-page-heading .secondarybtn{color:#c9dcec;border-color:rgba(148,180,211,.22);background:rgba(255,255,255,.035)}.admin-nav-label{margin:17px 12px 5px;color:#5f7b95;text-transform:uppercase;letter-spacing:.13em;font-size:9px;font-weight:900}.admin-sidebar-actions{margin-top:auto;border-top:1px solid rgba(148,180,211,.12)}
.adminbox>section,.adminbox>.adminsection{display:none}.adminbox[data-admin-page="overview"]>#overview,.adminbox[data-admin-page="licenses"]>#licenses,.adminbox[data-admin-page="bot-licenses"]>#bot-licenses,.adminbox[data-admin-page="server-licenses"]>#server-licenses,.adminbox[data-admin-page="users"]>#users,.adminbox[data-admin-page="settings"]>#settings,.adminbox[data-admin-page="homepage"]>#homepage,.adminbox[data-admin-page="rebrands"]>#rebrand-history,.adminbox[data-admin-page="minecraft"]>#showcase,.adminbox[data-admin-page="discord-bots"]>#showcase,.adminbox[data-admin-page="partners"]>#partners{display:block}
.admin-layout .admin-overview,.admin-layout .adminsection{margin:0;padding:24px;border:1px solid rgba(148,180,211,.14);border-radius:22px;background:rgba(255,255,255,.03);color:#eaf4fc}.admin-layout .admin-stat{background:rgba(255,255,255,.035);border-color:rgba(148,180,211,.13)}.admin-layout .admin-stat span,.admin-layout .admin-stat small{color:#839fb7}.admin-layout .admin-stat b{color:#fff}.admin-layout .adminsection h2{margin-top:0}.admin-layout .showcaseform,.admin-layout .settings-card,.admin-layout .genform,.admin-layout .admin-preview-panel,.admin-layout .license-security-note,.admin-layout .bot-integration-help{background:rgba(255,255,255,.035);border-color:rgba(148,180,211,.15);color:#eaf4fc}.admin-layout input,.admin-layout select,.admin-layout textarea{background:#0b1d31;color:#eaf4fc;border-color:rgba(148,180,211,.2)}.admin-layout input:disabled{opacity:.7}.admin-layout label,.admin-layout small,.admin-layout td,.admin-layout th{color:#9ab3c8}.admin-layout table{background:rgba(255,255,255,.02)}.admin-layout th{background:#0a1b2d}.admin-layout td{border-color:rgba(148,180,211,.1)}.admin-layout code{color:#93cff2}.admin-layout .note{background:rgba(79,168,224,.08);color:#b8d2e5;border-color:rgba(79,168,224,.2)}.admin-layout .admin-card-preview{background:#f5fafe;color:var(--navy)}
.adminlogin-v2{max-width:440px;margin:10vh auto;padding:36px;text-align:center}.adminlogin-v2 p{color:#5c7690;line-height:1.6}.adminlogin-v2>a{display:inline-block;margin-top:17px;color:var(--blue);text-decoration:none}.admin-login-mark{width:58px;height:58px;margin:0 auto 14px;display:grid;place-items:center;border-radius:17px;background:linear-gradient(145deg,#4fa8e0,#1e5f9e);color:#fff;font-weight:900;font-family:var(--disp)}

/* Algemene verfijningen */
button,a,input,select,textarea{transition:border-color .16s ease,background .16s ease,transform .16s ease,box-shadow .16s ease}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid rgba(79,168,224,.34);outline-offset:2px}.startbtn:hover,.secondarybtn:hover{transform:translateY(-1px)}.admin-table-wrap{border-radius:14px;overflow:auto}.autherror,.note{border-radius:13px}.itemcard{transition:transform .18s ease,box-shadow .18s ease}.itemcard:hover{transform:translateY(-3px);box-shadow:0 18px 45px rgba(11,32,54,.13)}

@media(max-width:1100px){.dashboard-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-product-grid{grid-template-columns:1fr}.dashboard-quick-grid{grid-template-columns:1fr}.admin-editor{grid-template-columns:1fr!important}.admin-preview-panel{position:static!important}}
@media(max-width:820px){.dashboard-app,.admin-shell{grid-template-columns:1fr}.dashboard-sidebar,.admin-sidebar{display:none}.dashboard-main,.admin-main{padding:22px 16px 55px}.dashboard-mobile-nav,.admin-mobile-nav{display:flex}.dashboard-content-header,.admin-page-heading{align-items:flex-start}.dashboard-account-chip{display:none}.dashboard-welcome-card{align-items:flex-start;flex-direction:column}.dashboard-stat-grid{grid-template-columns:1fr 1fr}.admin-layout .adminsection,.admin-layout .admin-overview{padding:17px}.admin-page-heading>.secondarybtn{display:none}}
@media(max-width:540px){.dashboard-stat-grid{grid-template-columns:1fr}.dashboard-content-header h1{font-size:29px}.dashboard-product-top{display:grid}.dashboard-product-prices{text-align:left}.dashboard-welcome-card{padding:22px}.dashboard-section,.dashboard-tool-intro{padding:18px}.dashboard-layout .dashboard-downloads{padding:17px}.admin-form-grid{grid-template-columns:1fr!important}}

.adminbox[data-admin-page="overview"]>#overview{display:grid;gap:18px}.admin-overview-links{grid-column:1/-1;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.admin-overview-links a{display:grid;gap:5px;padding:17px;border-radius:16px;border:1px solid rgba(148,180,211,.13);background:rgba(255,255,255,.025);color:#fff;text-decoration:none}.admin-overview-links a:hover{border-color:rgba(79,168,224,.35);transform:translateY(-2px)}.admin-overview-links span{font-size:24px}.admin-overview-links b{font-size:13px}.admin-overview-links small{color:#7895ae;line-height:1.4}@media(max-width:1100px){.admin-overview-links{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:540px){.admin-overview-links{grid-template-columns:1fr}}

/* ---------- Uniforme aankoopflow: product schuift links, betaalmenu opent rechts ---------- */
.checkoutnav{
  display:inline-flex;align-items:center;justify-content:center;padding:9px 15px;border-radius:10px;
  border:1px solid var(--line);background:var(--white);color:var(--navy);font-weight:700;font-size:.86rem;text-decoration:none;
}
.checkoutnav:hover{border-color:var(--blue);color:var(--blue)}
.ic-actions,.dashboard-product-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:13px}
.ic-actions .ic-link{margin-top:0}
.ic-buybtn,.bp-open-checkout,.dashboard-purchase-link{
  appearance:none;border:0;border-radius:11px;background:linear-gradient(135deg,var(--blue),#1e5f9e);color:#fff;
  padding:11px 17px;font:700 .86rem var(--disp);cursor:pointer;box-shadow:0 8px 18px rgba(30,95,158,.22)
}
.ic-buybtn:hover,.bp-open-checkout:hover,.dashboard-purchase-link:hover{transform:translateY(-1px);box-shadow:0 11px 24px rgba(30,95,158,.28)}
.ic-price-request{font-size:.78rem;font-weight:700;color:#607d94;padding:8px 0}
.bp-checkout-intro{display:grid;gap:5px;padding:14px;border-radius:12px;background:var(--ice);border:1px solid rgba(79,168,224,.22);margin:2px 0 14px}
.bp-checkout-intro b{font-size:.9rem;color:var(--navy)}
.bp-checkout-intro span{font-size:.78rem;color:#617d93;line-height:1.5}
.bp-open-checkout{width:100%;padding:14px 18px;font-size:.95rem}
.bp-private-step{display:block;margin-top:11px;color:#7891a8;line-height:1.5;text-align:center}
.dashboard-purchase-link{display:inline-flex;margin-top:4px}
.dashboard-product-actions .dashboard-product-button{border:0;cursor:pointer}

.itemcard,.dashboard-product-card,.buypanel,.dashboard-empty{
  transition:transform .32s cubic-bezier(.22,.8,.3,1),box-shadow .25s ease,opacity .25s ease;
}
.checkout-source-active{
  transform:translateX(-18px) scale(.985)!important;
  box-shadow:0 22px 56px rgba(11,32,54,.19)!important;
}
body.purchase-open{overflow:hidden}
.purchase-checkout{position:fixed;inset:0;z-index:5000;pointer-events:none;visibility:hidden}
.purchase-checkout.open{pointer-events:auto;visibility:visible}
.purchase-backdrop{position:absolute;inset:0;border:0;background:rgba(5,18,31,.52);opacity:0;transition:opacity .28s ease;cursor:default}
.purchase-checkout.open .purchase-backdrop{opacity:1}
.purchase-drawer{
  position:absolute;right:0;top:0;height:100%;width:min(520px,94vw);overflow:auto;background:#f8fbfd;
  box-shadow:-24px 0 70px rgba(5,18,31,.28);transform:translateX(105%);transition:transform .34s cubic-bezier(.22,.8,.3,1);
  padding:24px;color:var(--navy)
}
.purchase-checkout.open .purchase-drawer{transform:translateX(0)}
.purchase-drawer-head{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;padding-bottom:17px;border-bottom:1px solid var(--line)}
.purchase-drawer-head h2{font-family:var(--disp);font-size:1.45rem;margin:3px 0 0}
.purchase-eyebrow{font-size:.68rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--blue)}
.purchase-close{border:1px solid var(--line);background:#fff;color:var(--navy);width:39px;height:39px;border-radius:12px;font-size:25px;line-height:1;cursor:pointer}
.purchase-close:hover{border-color:var(--blue);color:var(--blue)}
.purchase-summary{display:grid;grid-template-columns:82px 1fr;gap:14px;align-items:center;margin:20px 0;padding:14px;border-radius:16px;background:#fff;border:1px solid var(--line)}
.purchase-summary-image{width:82px;height:76px;border-radius:12px;overflow:hidden;background:var(--ice);display:grid;place-items:center;font-size:29px}
.purchase-summary-image img{width:100%;height:100%;object-fit:cover}
.purchase-summary>div:last-child>span{font-size:.67rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em;color:var(--blue)}
.purchase-summary h3{font-family:var(--disp);font-size:1rem;margin:3px 0 4px;color:var(--navy)}
.purchase-summary p{font-size:.77rem;line-height:1.45;color:#60798f;margin:0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.purchase-step{margin:22px 0}
.purchase-step-title{display:flex;align-items:center;gap:10px;margin-bottom:11px}
.purchase-step-title>span{width:27px;height:27px;border-radius:9px;display:grid;place-items:center;background:var(--navy);color:#fff;font-size:.72rem;font-weight:900}
.purchase-step-title div{display:grid;gap:1px}
.purchase-step-title b{font-size:.85rem}
.purchase-step-title small{font-size:.7rem;color:#7891a8}
.purchase-plans{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
.purchase-plan{display:grid;gap:5px;text-align:left;padding:13px;border-radius:13px;background:#fff;border:1px solid var(--line);cursor:pointer;color:var(--navy)}
.purchase-plan:hover,.purchase-plan.active{border-color:var(--blue);background:var(--ice);box-shadow:0 8px 18px rgba(30,95,158,.08)}
.purchase-plan span{font-size:.72rem;color:#60798f;font-weight:700}
.purchase-plan b{font-family:var(--disp);font-size:.95rem}
.purchase-plan small{font-family:inherit;font-size:.68rem;color:#718ba1;margin-left:3px}
.purchase-methods{display:grid;gap:8px}
.purchase-method{display:grid;grid-template-columns:35px 1fr 19px;align-items:center;gap:10px;padding:12px 13px;border-radius:13px;background:#fff;border:1px solid var(--line);cursor:pointer;text-align:left;color:var(--navy)}
.purchase-method:hover,.purchase-method.active{border-color:var(--blue);background:var(--ice)}
.purchase-method-icon{font-size:19px}
.purchase-method>span:nth-child(2){display:grid;gap:2px}
.purchase-method b{font-size:.82rem}.purchase-method small{font-size:.68rem;color:#7891a8}
.purchase-method i{width:18px;height:18px;border:2px solid #bfd0dd;border-radius:50%}
.purchase-method.active i{border-color:var(--blue);background:var(--blue);box-shadow:inset 0 0 0 3px #fff}
.purchase-orderline{display:flex;align-items:flex-start;justify-content:space-between;gap:15px;border-top:1px solid var(--line);padding:16px 0 13px;font-size:.76rem;color:#718ba1}
.purchase-orderline b{color:var(--navy);text-align:right}
.purchase-continue{width:100%;border:0;border-radius:13px;padding:14px 18px;background:var(--navy);color:#fff;font:700 .9rem var(--disp);cursor:pointer}
.purchase-continue:hover:not(:disabled){background:#173c5c;transform:translateY(-1px)}
.purchase-continue:disabled{opacity:.42;cursor:not-allowed}
.purchase-handoff{margin-top:16px;padding:17px;border-radius:16px;background:#eef3ff;border:1px solid rgba(88,101,242,.22);display:grid;grid-template-columns:38px 1fr;gap:11px;align-items:start}
.purchase-handoff[hidden]{display:none}
.purchase-ready-icon{width:36px;height:36px;border-radius:12px;background:#e1f5e9;color:#18844a;display:grid;place-items:center;font-weight:900}
.purchase-handoff h3{font-family:var(--disp);font-size:1rem;margin:3px 0 5px}
.purchase-handoff p{grid-column:2;font-size:.78rem;line-height:1.55;color:#4d667d;margin:0}
.purchase-discord-button{grid-column:1/-1;display:flex;align-items:center;justify-content:center;margin-top:3px;padding:13px;border-radius:12px;background:#5865f2;color:#fff;text-decoration:none;font:700 .86rem var(--disp);box-shadow:0 8px 18px rgba(88,101,242,.22)}
.purchase-discord-button:hover{background:#4b56d5;transform:translateY(-1px)}

@media(max-width:720px){
  .purchase-drawer{width:100%;padding:18px 15px 28px}
  .checkout-source-active{transform:translateX(-7px) scale(.99)!important}
  .purchase-plans{grid-template-columns:1fr}
  .purchase-summary{grid-template-columns:68px 1fr}.purchase-summary-image{width:68px;height:68px}
}
@media(prefers-reduced-motion:reduce){
  .purchase-drawer,.purchase-backdrop,.itemcard,.dashboard-product-card,.buypanel,.dashboard-empty{transition:none!important}
  .checkout-source-active{transform:none!important}
}

/* ---------- Volledige lichte en donkere modus (versie 19) ---------- */
:root[data-color-mode="light"]{
  color-scheme:light;
  --mode-page:#f5f9fd;
  --mode-page-rgb:245,249,253;
  --mode-surface:#ffffff;
  --mode-surface-2:#eef5fb;
  --mode-surface-3:#f8fbfe;
  --mode-elevated:#ffffff;
  --mode-text:#0b2036;
  --mode-muted:#4f687f;
  --mode-soft:#7891a8;
  --mode-border:rgba(11,32,54,.13);
  --mode-shadow:0 18px 50px rgba(11,32,54,.10);
  --mode-sidebar:#ffffff;
  --mode-sidebar-text:#0b2036;
  --mode-sidebar-muted:#5f7890;
  --mode-input:#f8fbfe;
  --mode-bubble:#eaf4fc;
  --mode-bubble-text:#27445e;
  --mode-overlay:rgba(5,18,31,.48);
}
:root[data-color-mode="dark"]{
  color-scheme:dark;
  --mode-page:#06111d;
  --mode-page-rgb:6,17,29;
  --mode-surface:#0d1c2c;
  --mode-surface-2:#12283d;
  --mode-surface-3:#091725;
  --mode-elevated:#10243a;
  --mode-text:#edf6fd;
  --mode-muted:#a1b8cc;
  --mode-soft:#7895ae;
  --mode-border:rgba(157,190,219,.18);
  --mode-shadow:0 20px 58px rgba(0,0,0,.34);
  --mode-sidebar:#030c15;
  --mode-sidebar-text:#edf6fd;
  --mode-sidebar-muted:#8da8bf;
  --mode-input:#081827;
  --mode-bubble:#12283d;
  --mode-bubble-text:#c5d9e9;
  --mode-overlay:rgba(0,5,10,.72);
}

html[data-color-mode] body{
  color:var(--mode-text);
  background:
    radial-gradient(1100px 600px at 14% -10%,color-mix(in srgb,var(--sky) 18%,transparent),transparent 62%),
    radial-gradient(900px 520px at 100% 0%,color-mix(in srgb,var(--blue) 14%,transparent),transparent 58%),
    var(--mode-page)!important;
}
html[data-color-mode="dark"] body{
  background:
    radial-gradient(1100px 620px at 14% -10%,color-mix(in srgb,var(--sky) 13%,transparent),transparent 62%),
    radial-gradient(900px 520px at 100% 0%,color-mix(in srgb,var(--blue) 10%,transparent),transparent 58%),
    var(--mode-page)!important;
}
html[data-color-mode] body,
html[data-color-mode] input,
html[data-color-mode] select,
html[data-color-mode] textarea,
html[data-color-mode] button{color-scheme:inherit}

.color-mode-toggle{
  position:fixed;right:18px;bottom:18px;z-index:6500;
  display:inline-flex;align-items:center;justify-content:center;gap:8px;
  min-height:44px;padding:9px 14px;border:1px solid var(--mode-border);border-radius:999px;
  background:color-mix(in srgb,var(--mode-elevated) 92%,transparent);color:var(--mode-text);
  box-shadow:0 12px 34px rgba(0,0,0,.2);backdrop-filter:blur(15px);
  font:800 .78rem var(--body);cursor:pointer;
}
.color-mode-toggle:hover{transform:translateY(-2px);border-color:var(--sky);box-shadow:0 16px 38px rgba(0,0,0,.24)}
.color-mode-toggle-icon{font-size:1rem;line-height:1}.color-mode-toggle-label{line-height:1}
@media(max-width:560px){.color-mode-toggle{right:11px;bottom:11px;padding:10px;width:44px}.color-mode-toggle-label{display:none}}

/* Basissurfaces, formulieren en tekst */
html[data-color-mode] :is(.panel,.previewbox,.pricecard,.buypanel,.itemcard,.weekly-offer-card,.home-announcement-card,.theme-admin-form,.admin-stat,.settings-card,.showcaseform,.genform,.admin-preview-panel,.license-security-note,.bot-integration-help,.adminlogin-v2,.authbox,.dashboard-downloads,.bot-download-card){
  background:var(--mode-surface);border-color:var(--mode-border);color:var(--mode-text);box-shadow:var(--mode-shadow);
}
html[data-color-mode] :is(input,select,textarea,.renamerow input,.admin-table-tools input,.admin-table-tools select){
  background:var(--mode-input)!important;color:var(--mode-text)!important;border-color:var(--mode-border)!important;
}
html[data-color-mode] :is(input,textarea)::placeholder{color:var(--mode-soft);opacity:.85}
html[data-color-mode] :is(header.top .brandname,h1.title,.sectiontitle,.listhero h1,.weekly-title,.itemcard .ic-title,.itemcard .ic-madeby b,.buypanel h1,.buypanel .bp-price,.bp-plan .bp-plan-price,.bp-method .bpm-name,.home-announcement-body h3,.purchase-drawer-head h2,.purchase-summary h3,.purchase-step-title b,.purchase-plan b,.purchase-orderline b,.purchase-handoff h3){color:var(--mode-text)}
html[data-color-mode] :is(p.lede,.listhero p,.pricingsub,.home-section-heading p,.weekly-description,.weekly-madeby,.weekly-price-label,.itemcard .ic-desc,.itemcard .ic-madeby,.buypanel .bp-sub,.buypanel .bp-from,.buypanel .bp-price span,.bp-label,.bp-plan .bp-plan-name,.bp-method .bpm-sub,.home-announcement-body p,.progresslabel,.field label,.purchase-summary p,.purchase-step-title small,.purchase-plan span,.purchase-plan small,.purchase-method small,.purchase-orderline,.purchase-handoff p,.bp-private-step,.ic-price-request){color:var(--mode-muted)}
html[data-color-mode] :is(.panel,.itemcard,.weekly-offer-card,.home-announcement-card,.previewbox,.pricecard,.buypanel){box-shadow:var(--mode-shadow)}
html[data-color-mode] :is(.dropzone,.filepill,.addrowbtn,.note,.progresswrap,.previewbar,.gallery-thumbs .thumb,.bp-tags span,.bp-plan,.bp-method,.weekly-category,.home-eyebrow,.weekly-price-row,.home-announcement-icon,.bp-checkout-intro){background:var(--mode-surface-2);border-color:var(--mode-border);color:var(--mode-text)}
html[data-color-mode] :is(.dropzone:hover,.addrowbtn:hover,.swapbtn:hover,.bp-plan.active,.bp-method.active){background:color-mix(in srgb,var(--mode-surface-2) 70%,var(--sky) 12%)}
html[data-color-mode] .swapbtn{background:var(--mode-input);border-color:var(--mode-border)}
html[data-color-mode] .previewbar span{background:var(--mode-soft)}

/* Tekstballonnen, statussen en meldingen */
html[data-color-mode] :is(.note,.autherror,.bp-discordnote,.bp-checkout-intro,.purchase-handoff,.license-security-note,.bot-integration-help,.dashboard-empty,.dashboard-account-chip,.site-announcement-content a){
  background:var(--mode-bubble)!important;color:var(--mode-bubble-text)!important;border-color:var(--mode-border)!important;
}
html[data-color-mode] :is(.note b,.autherror b,.bp-checkout-intro b,.purchase-handoff h3,.dashboard-empty h2){color:var(--mode-text)!important}
html[data-color-mode] .autherror{border:1px solid color-mix(in srgb,var(--accent) 45%,var(--mode-border));}
html[data-color-mode] .site-announcement{background:var(--mode-elevated);color:var(--mode-text);border-bottom:1px solid var(--mode-border);box-shadow:0 4px 18px rgba(0,0,0,.16)}
html[data-color-mode] .site-announcement-content a{color:var(--mode-text)!important;text-decoration:none}
html[data-color-mode] .site-announcement-close{color:var(--mode-text)}

/* Console wordt ook echt licht of donker */
html[data-color-mode] .console{background:var(--mode-surface-3);color:var(--mode-text);border:1px solid var(--mode-border)}
html[data-color-mode="light"] .console .l-ok{color:#137a43}
html[data-color-mode="light"] .console .l-warn{color:#9a6500}
html[data-color-mode="light"] .console .l-info{color:#176d9f}
html[data-color-mode="light"] .console .l-head{color:#0b2036}
html[data-color-mode="light"] .console::-webkit-scrollbar-thumb{background:#b8cada}

/* Openbare navigatie en kaarten */
html[data-color-mode] .mainnav a{color:var(--mode-muted)}
html[data-color-mode] .mainnav a:hover,html[data-color-mode] .mainnav a.active{background:var(--mode-surface-2);color:var(--blue)}
html[data-color-mode] .checkoutnav{background:var(--mode-surface);color:var(--mode-text);border-color:var(--mode-border)}
html[data-color-mode] .weekly-offer-media{background:linear-gradient(145deg,var(--mode-surface-2),color-mix(in srgb,var(--sky) 20%,var(--mode-surface)))}
html[data-color-mode] .itemcard .ic-photo{background:var(--mode-surface-2)}
html[data-color-mode] .itemcard .ic-price{background:var(--blue);color:#fff}
html[data-color-mode] .bp-method.active .bpm-dot,html[data-color-mode] .purchase-method.active i{box-shadow:inset 0 0 0 3px var(--mode-surface)}

/* Checkoutvenster */
html[data-color-mode] .purchase-backdrop{background:var(--mode-overlay)}
html[data-color-mode] .purchase-drawer{background:var(--mode-page);color:var(--mode-text);box-shadow:-24px 0 70px rgba(0,0,0,.42)}
html[data-color-mode] :is(.purchase-close,.purchase-summary,.purchase-plan,.purchase-method){background:var(--mode-surface);color:var(--mode-text);border-color:var(--mode-border)}
html[data-color-mode] :is(.purchase-plan:hover,.purchase-plan.active,.purchase-method:hover,.purchase-method.active){background:var(--mode-surface-2)}
html[data-color-mode] .purchase-step-title>span{background:var(--blue);color:#fff}
html[data-color-mode] .purchase-continue{background:var(--blue);color:#fff}
html[data-color-mode] .purchase-ready-icon{background:color-mix(in srgb,#25a45c 18%,var(--mode-surface));color:#36b86b}

/* Dashboard en admin: beide modi zijn volledig consequent */
html[data-color-mode] :is(.dashboard-app,.admin-shell){background:var(--mode-page)!important;color:var(--mode-text)}
html[data-color-mode] :is(.dashboard-sidebar,.admin-sidebar){background:var(--mode-sidebar)!important;border-color:var(--mode-border)!important;color:var(--mode-sidebar-text)!important}
html[data-color-mode] :is(.dashboard-sidebar-brand b,.admin-sidebar-brand b,.dashboard-sidebar nav a.active,.admin-sidebar nav a.active){color:var(--mode-sidebar-text)!important}
html[data-color-mode] :is(.dashboard-sidebar-brand small,.admin-sidebar-brand small,.dashboard-sidebar nav a,.admin-sidebar nav a,.dashboard-sidebar-actions a,.admin-sidebar-actions a,.admin-nav-label){color:var(--mode-sidebar-muted)!important}
html[data-color-mode] :is(.dashboard-sidebar nav a:hover,.admin-sidebar nav a:hover,.dashboard-sidebar nav a.active,.admin-sidebar nav a.active){background:var(--mode-surface-2)!important;border-color:var(--mode-border)!important}
html[data-color-mode] :is(.dashboard-sidebar-status,.admin-sidebar-status){background:var(--mode-surface-2)!important;border-color:var(--mode-border)!important;color:var(--mode-sidebar-text)!important}
html[data-color-mode] :is(.dashboard-content-header,.admin-page-heading){border-color:var(--mode-border)}
html[data-color-mode] :is(.dashboard-content-header h1,.admin-layout .sectiontitle,.dashboard-welcome-card h2,.dashboard-stat-card b,.dashboard-quick-grid>a,.dashboard-section-heading h2,.dashboard-tool-intro h2,.dashboard-product-top h3,.dashboard-empty h2,.dashboard-layout .dashboard-section-title h2,.dashboard-layout .bot-download-body h3){color:var(--mode-text)!important}
html[data-color-mode] :is(.dashboard-content-header p,.admin-layout .adminintro,.dashboard-welcome-card p,.dashboard-stat-card span,.dashboard-stat-card small,.dashboard-quick-grid small,.dashboard-tool-intro p,.dashboard-product-body p,.dashboard-product-prices small,.dashboard-product-meta span,.dashboard-empty p){color:var(--mode-muted)!important}
html[data-color-mode] :is(.dashboard-account-chip,.dashboard-welcome-card,.dashboard-stat-card,.dashboard-quick-grid>a,.dashboard-section,.dashboard-tool-intro,.dashboard-product-card,.dashboard-empty,.dashboard-layout .dashboard-downloads,.dashboard-layout .bot-download-card,.admin-layout .admin-overview,.admin-layout .adminsection,.admin-layout .admin-stat,.admin-layout .showcaseform,.admin-layout .settings-card,.admin-layout .genform,.admin-layout .admin-preview-panel,.admin-layout .license-security-note,.admin-layout .bot-integration-help,.admin-overview-links a){
  background:var(--mode-surface)!important;border-color:var(--mode-border)!important;color:var(--mode-text)!important;
}
html[data-color-mode] .dashboard-welcome-card{background:linear-gradient(135deg,color-mix(in srgb,var(--blue) 18%,var(--mode-surface)),var(--mode-surface))!important;box-shadow:var(--mode-shadow)}
html[data-color-mode] .dashboard-product-image{background:linear-gradient(145deg,color-mix(in srgb,var(--sky) 16%,var(--mode-surface-2)),var(--mode-surface-2))}
html[data-color-mode] .dashboard-product-meta span{background:var(--mode-surface-2)}
html[data-color-mode] :is(.dashboard-mobile-nav a,.admin-mobile-nav a){background:var(--mode-surface);border-color:var(--mode-border);color:var(--mode-muted)}
html[data-color-mode] :is(.dashboard-mobile-nav a.active,.admin-mobile-nav a.active){background:var(--mode-surface-2);color:var(--mode-text)}
html[data-color-mode] .admin-page-heading .secondarybtn{color:var(--mode-text);border-color:var(--mode-border);background:var(--mode-surface)}
html[data-color-mode] .admin-overview-links a b{color:var(--mode-text)}
html[data-color-mode] .admin-overview-links a small{color:var(--mode-muted)}
html[data-color-mode] .admin-layout :is(label,small,td,th){color:var(--mode-muted)!important}
html[data-color-mode] .admin-layout .admin-stat b{color:var(--mode-text)!important}
html[data-color-mode] .admin-layout table{background:var(--mode-surface)!important;color:var(--mode-text)}
html[data-color-mode] .admin-layout th{background:var(--mode-surface-2)!important;color:var(--mode-text)!important}
html[data-color-mode] .admin-layout td{border-color:var(--mode-border)!important}
html[data-color-mode] .admin-layout code,html[data-color-mode] .keytable code{color:var(--sky)!important}
html[data-color-mode] .admin-layout .admin-card-preview{background:var(--mode-surface-3)!important;color:var(--mode-text)!important}
html[data-color-mode] .admin-table-wrap{border:1px solid var(--mode-border);background:var(--mode-surface)}
html[data-color-mode] .admin-row-actions .delbtn{background:color-mix(in srgb,var(--accent) 10%,var(--mode-surface));border-color:color-mix(in srgb,var(--accent) 34%,var(--mode-border))}
html[data-color-mode] .featured-pill,html[data-color-mode] .public-featured{background:color-mix(in srgb,#e7a900 18%,var(--mode-surface));color:color-mix(in srgb,#a66c00 82%,var(--mode-text))}
html[data-color-mode] .pill-status.neutral{background:var(--mode-surface-2);color:var(--mode-muted)}

/* Light mode maakt ook de voorheen vaste donkere layouts licht */
html[data-color-mode="light"] :is(.dashboard-sidebar,.admin-sidebar){box-shadow:8px 0 30px rgba(11,32,54,.06)}
html[data-color-mode="light"] :is(.dashboard-sidebar-actions,.admin-sidebar-actions){border-color:var(--mode-border)}
html[data-color-mode="light"] .admin-overview-links a:hover,
html[data-color-mode="light"] .dashboard-stat-card:hover,
html[data-color-mode="light"] .dashboard-quick-grid>a:hover{background:#eaf4fc!important}

/* Dark mode voor alle openbare onderdelen en previews */
html[data-color-mode="dark"] .theme-preview{border-color:var(--mode-border);box-shadow:inset 0 0 0 999px rgba(3,12,21,.16)}
html[data-color-mode="dark"] :is(.pricecard.highlight,.weekly-offer-card,.itemcard,.panel,.previewbox,.buypanel){box-shadow:0 20px 54px rgba(0,0,0,.30)}
html[data-color-mode="dark"] .dropzone .icon{background:var(--mode-elevated)}
html[data-color-mode="dark"] .purchase-discord-button,html[data-color-mode="dark"] .btn-discord{color:#fff}

@media(prefers-reduced-motion:reduce){.color-mode-toggle{transition:none!important}}

/* Extra dekking voor oudere kaarten en dialoogvensters */
html[data-color-mode] :is(.featurecard,.showcasecard,.productcard,.paymodal,.paydetail-box,.downloadbox,.dashboard-license-card){background:var(--mode-surface)!important;border-color:var(--mode-border)!important;color:var(--mode-text)!important;box-shadow:var(--mode-shadow)}
html[data-color-mode] :is(.featurecard h3,.showcasecard .sc-name,.productcard .pc-title,.paymodal-plan,.paymodal-detail h3,.paydetail-box b){color:var(--mode-text)!important}
html[data-color-mode] :is(.featurecard p,.showcasecard .sc-desc,.productcard .pc-desc,.paymodal-sub,.paymodal-detail p,.paydetail-box span,.paymodal-footer p,.bot-download-body p,.bot-download-meta){color:var(--mode-muted)!important}
html[data-color-mode] .paymodal-overlay{background:var(--mode-overlay)}
html[data-color-mode] :is(.paymodal-close,.paymodal-back){background:var(--mode-surface-2)!important;color:var(--mode-text)!important;border-color:var(--mode-border)!important}
html[data-color-mode] .paydetail-box div{border-color:var(--mode-border)}
html[data-color-mode] .redeemform input{background:var(--mode-input)!important;color:var(--mode-text)!important;border-color:var(--mode-border)!important}
html[data-color-mode] .bot-download-unavailable{background:color-mix(in srgb,var(--accent) 12%,var(--mode-surface));color:color-mix(in srgb,var(--accent) 72%,var(--mode-text));border:1px solid color-mix(in srgb,var(--accent) 30%,var(--mode-border))}
html[data-color-mode] .bot-download-icon{background:linear-gradient(145deg,color-mix(in srgb,#6366f1 18%,var(--mode-surface-2)),var(--mode-surface-2))}


/* ===== Version 20 public redesign ===== */
body{
  background:
    radial-gradient(1200px 520px at 0% 0%, rgba(43,127,255,0.10), transparent 55%),
    radial-gradient(900px 420px at 100% 0%, rgba(104,174,255,0.12), transparent 50%),
    linear-gradient(180deg,#f9fbff 0%,#f3f7fd 100%);
  color:#14233b;
}
.wrap.home-shell{max-width:1320px;padding:24px 24px 72px;}
.top-home{
  background:rgba(255,255,255,0.88);
  backdrop-filter: blur(18px);
  border:1px solid rgba(31,82,161,0.10);
  border-radius:22px;
  padding:18px 22px;
  margin-bottom:28px;
  box-shadow:0 18px 50px rgba(26,83,153,0.08);
}
header.top{border-bottom:none;}
header.top .brandname{font-size:1.45rem;letter-spacing:-0.03em;text-transform:none;}
header.top .tag{font-size:0.74rem;letter-spacing:0.11em;color:#4c85db;margin-top:3px;}
.mainnav{gap:10px;justify-content:center;flex:1 1 auto;}
.mainnav a{padding:10px 14px;border-radius:999px;font-size:0.93rem;color:#44617e;}
.mainnav a:hover,.mainnav a.active{background:#ebf3ff;color:#2167e8;}
.dashboardnav-blue{background:linear-gradient(135deg,#1e78ff,#4797ff);box-shadow:0 12px 24px rgba(30,120,255,0.24);}
.dashboardnav-blue:hover{background:linear-gradient(135deg,#196ce4,#3c8dff);}
.modern-hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,0.95fr);gap:32px;align-items:stretch;padding:16px 0 24px;}
.hero-copy{padding:18px 6px 10px;}
.hero-kicker{
  display:inline-flex;align-items:center;gap:10px;padding:10px 16px;border-radius:999px;
  background:#eef5ff;border:1px solid #d8e7ff;color:#2570ea;font-weight:700;font-size:0.78rem;
  text-transform:uppercase;letter-spacing:0.06em;margin-bottom:20px;
}
.hero-kicker::before{content:'';width:10px;height:10px;border-radius:50%;background:#3d86ff;box-shadow:0 0 0 6px rgba(61,134,255,0.12);}
h1.title{font-size:clamp(3rem,6vw,5.4rem);line-height:0.95;letter-spacing:-0.06em;max-width:10ch;margin-bottom:22px;}
h1.title .hl{color:#2b7fff;}
p.lede{font-size:1.14rem;max-width:58ch;color:#5d7088;margin-bottom:26px;}
.hero-actions,.herobtns{display:flex;gap:14px;flex-wrap:wrap;align-items:center;}
.btn-large{padding:16px 28px;border-radius:16px;font-size:1rem;display:inline-flex;align-items:center;justify-content:center;text-decoration:none;font-weight:700;}
.btn-primary{background:linear-gradient(135deg,#1d79ff,#4ba1ff);box-shadow:0 16px 28px rgba(41,117,248,0.22);}
.btn-secondary{background:#fff;border:1px solid #d7e5ff;color:#245fb4;box-shadow:0 10px 24px rgba(18,59,121,0.06);}
.hero-stats{display:flex;gap:18px;flex-wrap:wrap;margin-top:22px;}
.hero-stat{background:#fff;border:1px solid #e4eefb;border-radius:16px;padding:12px 16px;min-width:138px;box-shadow:0 10px 24px rgba(15,66,138,0.05);}
.hero-stat strong{display:block;font-size:1rem;color:#10233c;}
.hero-stat span{font-size:0.9rem;color:#69809d;}
.hero-panel,.section-panel{background:rgba(255,255,255,0.88);border:1px solid #dce8f9;border-radius:28px;box-shadow:0 20px 50px rgba(16,64,131,0.08);}
.overview-panel{padding:24px;display:flex;flex-direction:column;gap:18px;}
.overview-head{display:flex;justify-content:space-between;gap:18px;align-items:flex-start;flex-wrap:wrap;}
.overview-kicker{display:block;font-size:0.86rem;font-weight:700;color:#2c7bff;margin-bottom:6px;text-transform:uppercase;letter-spacing:0.06em;}
.overview-head h2{margin:0;font-size:1.7rem;font-family:var(--disp);letter-spacing:-0.03em;color:#162741;}
.overview-status{display:inline-flex;align-items:center;gap:10px;background:#f4faf5;border:1px solid #d8efdb;color:#3f7352;padding:11px 15px;border-radius:999px;font-weight:600;}
.overview-status span{width:10px;height:10px;border-radius:50%;background:#52ba71;}
.overview-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;}
.overview-card{background:#fff;border:1px solid #e4edf9;border-radius:20px;padding:20px;min-height:220px;box-shadow:0 12px 32px rgba(24,74,141,0.05);}
.overview-icon{font-size:1.65rem;margin-bottom:12px;}
.overview-card h3{margin:0 0 6px;font-size:1.18rem;color:#17304b;}
.overview-card strong{display:block;color:#2a8e42;font-size:1rem;margin-bottom:10px;}
.overview-card p{margin:0 0 14px;color:#62768f;line-height:1.6;}
.overview-card a{color:#2c7bff;text-decoration:none;font-weight:700;}
.overview-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;border:1px solid #e4edf9;border-radius:20px;background:#fff;padding:18px 10px;}
.overview-strip div{text-align:center;padding:6px 10px;border-right:1px solid #ebf1f9;}
.overview-strip div:last-child{border-right:none;}
.overview-strip strong{display:block;font-size:1.42rem;color:#122541;}
.overview-strip span{font-size:0.92rem;color:#6c839d;}
.modern-services{padding:10px 0 14px;}
.service-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:16px;}
.service-card{background:#fff;border:1px solid #dfeafa;border-radius:22px;padding:22px;text-decoration:none;color:inherit;box-shadow:0 14px 36px rgba(16,66,139,0.05);transition:transform .15s ease, box-shadow .15s ease, border-color .15s ease;}
.service-card:hover{transform:translateY(-3px);box-shadow:0 18px 42px rgba(26,82,161,0.10);border-color:#cfe1ff;}
.service-icon{font-size:2rem;margin-bottom:14px;}
.service-title{font-family:var(--disp);font-size:1.08rem;font-weight:700;color:#18314e;margin-bottom:8px;}
.service-desc{font-size:0.92rem;color:#647995;line-height:1.6;min-height:68px;}
.service-arrow{margin-top:14px;color:#2b7fff;font-weight:700;font-size:0.92rem;}
.home-announcements,.home-weekly{padding:12px 0 0;}
.section-panel{padding:24px;}
.home-section-heading{text-align:left;margin-bottom:20px;}
.home-section-heading.split-head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;}
.home-eyebrow{display:inline-block;font-size:0.8rem;font-weight:700;letter-spacing:0.08em;text-transform:uppercase;color:#2d7dff;margin-bottom:10px;}
.sectiontitle{text-align:left;margin-bottom:6px;letter-spacing:-0.04em;font-size:2rem;}
.home-section-heading p{margin:0;color:#6b819a;}
.ghost-link,.discount-pill{display:inline-flex;align-items:center;background:#edf4ff;color:#2878ff;border-radius:999px;padding:10px 16px;font-weight:700;white-space:nowrap;}
.discount-pill{background:#216dff;color:#fff;box-shadow:0 14px 28px rgba(33,109,255,0.22);}
.home-announcement-grid{display:grid;gap:12px;}
.home-announcement-card{display:flex;gap:16px;align-items:flex-start;background:#fff;border:1px solid #e2ebf8;border-radius:18px;padding:18px;box-shadow:0 10px 24px rgba(17,63,133,0.04);}
.home-announcement-icon{width:52px;height:52px;border-radius:16px;background:#eef5ff;color:#2878ff;display:flex;align-items:center;justify-content:center;font-size:1.35rem;flex:0 0 auto;}
.home-announcement-body h3{margin:0 0 8px;font-size:1.08rem;color:#16304b;}
.home-announcement-body p{margin:0;color:#627790;line-height:1.6;}
.home-announcement-body a{display:inline-block;margin-top:10px;color:#2878ff;text-decoration:none;font-weight:700;}
.weekly-offer-card{display:grid;grid-template-columns:300px 1fr;gap:26px;background:#fff;border:1px solid #dfeafa;border-radius:22px;padding:22px;box-shadow:0 16px 40px rgba(17,63,133,0.06);}
.weekly-offer-media{position:relative;display:flex;align-items:center;justify-content:center;background:linear-gradient(180deg,#f4f8ff,#eaf2ff);border-radius:20px;min-height:260px;overflow:hidden;}
.weekly-offer-media img{width:82%;max-width:240px;object-fit:contain;filter:drop-shadow(0 18px 32px rgba(24,74,141,0.16));}
.weekly-image-fallback{font-size:4rem;}
.weekly-discount-badge{position:absolute;top:16px;right:16px;background:#216dff;color:#fff;padding:10px 14px;border-radius:999px;font-weight:700;box-shadow:0 14px 28px rgba(33,109,255,0.24);}
.weekly-category{display:inline-flex;align-items:center;background:#eef5ff;color:#2878ff;border-radius:999px;padding:8px 14px;font-size:0.82rem;font-weight:700;text-transform:uppercase;letter-spacing:0.06em;}
.weekly-title{margin:14px 0 10px;font-family:var(--disp);font-size:2rem;letter-spacing:-0.04em;color:#142843;}
.weekly-description,.weekly-madeby{margin:0 0 12px;color:#627790;line-height:1.65;}
.weekly-prices{display:grid;gap:12px;margin:18px 0 18px;}
.weekly-price-row{display:flex;justify-content:space-between;align-items:center;gap:18px;padding:14px 16px;border-radius:16px;background:#f6f9ff;border:1px solid #e2ecfb;}
.weekly-price-label{color:#6d829c;font-weight:700;}
.weekly-price-values{display:flex;align-items:center;gap:12px;flex-wrap:wrap;justify-content:flex-end;}
.weekly-old-price{text-decoration:line-through;color:#93a4b9;}
.weekly-sale-price{font-size:1.3rem;color:#216dff;}
.weekly-action{display:inline-flex;align-items:center;justify-content:center;min-width:210px;padding:14px 22px;border-radius:14px;background:linear-gradient(135deg,#1d79ff,#4ba1ff);color:#fff;text-decoration:none;font-weight:700;box-shadow:0 14px 28px rgba(29,121,255,0.22);}
.weekly-discount-note{display:block;margin-top:12px;color:#6a819a;}
footer{margin-top:34px;font-size:0.88rem;}
.listgrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:18px;}
.itemcard{background:#fff;border:1px solid #e0ebf9;border-radius:22px;padding:18px;display:grid;grid-template-columns:110px 1fr;gap:18px;box-shadow:0 16px 34px rgba(18,62,130,0.05);}
.ic-photo{background:#eef5ff;border-radius:18px;display:flex;align-items:center;justify-content:center;min-height:110px;overflow:hidden;font-size:2rem;}
.ic-photo img{width:100%;height:100%;object-fit:cover;}
.ic-title{font-size:1.22rem;font-weight:700;color:#17304a;margin-bottom:8px;}
.ic-prices{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:10px;}
.ic-price{display:inline-flex;background:#eff5ff;color:#286edc;border-radius:999px;padding:7px 12px;font-weight:700;font-size:0.86rem;}
.ic-desc,.ic-madeby{color:#667b94;line-height:1.6;}
.ic-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:14px;}
.ic-buybtn,.weekly-action,.paylink-btn{cursor:pointer;}
.ic-buybtn{border:none;background:linear-gradient(135deg,#1d79ff,#4ba1ff);color:#fff;padding:12px 18px;border-radius:14px;font-weight:700;box-shadow:0 14px 24px rgba(29,121,255,0.18);}
.ic-link{display:inline-flex;align-items:center;color:#286edc;text-decoration:none;font-weight:700;}
.listhero{padding:4px 0 18px;}
.listhero h1{margin:0 0 10px;font-family:var(--disp);font-size:2.35rem;letter-spacing:-0.04em;color:#17304a;}
.listhero p{margin:0;color:#657b95;font-size:1rem;}
@media (max-width:1200px){
  .modern-hero{grid-template-columns:1fr;}
  .service-grid{grid-template-columns:repeat(3,minmax(0,1fr));}
}
@media (max-width:960px){
  .top-home{padding:18px;}
  .overview-grid,.overview-strip{grid-template-columns:repeat(2,minmax(0,1fr));}
  .service-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
  .weekly-offer-card{grid-template-columns:1fr;}
}
@media (max-width:720px){
  .wrap.home-shell{padding:18px 16px 56px;}
  .top-home{border-radius:18px;}
  .mainnav{order:3;width:100%;justify-content:flex-start;overflow:auto;padding-bottom:2px;}
  .modern-hero{gap:22px;}
  h1.title{font-size:clamp(2.4rem,15vw,4rem);max-width:none;}
  .overview-head,.home-section-heading.split-head{flex-direction:column;align-items:flex-start;}
  .overview-grid,.overview-strip,.service-grid{grid-template-columns:1fr;}
  .hero-stats{display:grid;grid-template-columns:1fr 1fr;gap:12px;}
  .itemcard{grid-template-columns:1fr;}
}
@media (max-width:480px){
  .hero-actions,.herobtns,.ic-actions{flex-direction:column;align-items:stretch;}
  .btn-large,.weekly-action,.ic-buybtn{width:100%;}
  .hero-stats{grid-template-columns:1fr;}
}
