@font-face{
  font-family:KrutiDev010;
  src:url('../../citadel/fonts/krutidev010.ttf') format('truetype');
  font-display:swap;
}

:root{
  --kdc-navy:#19243a;
  --kdc-purple:#4f329a;
  --kdc-purple-2:#6941c6;
  --kdc-pink:#d94f91;
  --kdc-green:#10b981;
  --kdc-red:#ef4444;
  --kdc-amber:#f59e0b;
  --kdc-border:#e7e3ef;
  --kdc-muted:#747490;
  --kdc-soft:#f7f4fb;
}

.kdc-page{
  min-height:calc(100vh - 180px);
  padding:28px 0 52px;
  background:
    radial-gradient(circle at 9% 7%,rgba(79,50,154,.10),transparent 27%),
    radial-gradient(circle at 91% 14%,rgba(217,79,145,.07),transparent 24%),
    #f9f8fb;
}

.kdc-container{max-width:1180px}

.kdc-top-nav{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  margin-bottom:14px;
}

.kdc-back,.kdc-arcade-tag{
  min-height:38px;
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:0 13px;
  border:1px solid var(--kdc-border);
  border-radius:999px;
  background:rgba(255,255,255,.92);
  font-size:11px;
  font-weight:850;
  text-decoration:none;
}
.kdc-back{color:var(--kdc-navy)}
.kdc-back:hover{color:var(--kdc-purple);border-color:rgba(79,50,154,.28)}
.kdc-arcade-tag{color:var(--kdc-purple)}
.kdc-live-dot{
  width:7px;height:7px;border-radius:50%;
  background:var(--kdc-pink);
  box-shadow:0 0 0 4px rgba(217,79,145,.12);
}

.kdc-card{
  overflow:hidden;
  border:1px solid var(--kdc-border);
  border-radius:28px;
  background:#fff;
  box-shadow:0 22px 65px rgba(25,36,58,.09);
}

.kdc-screen{padding:38px}

.kdc-setup-layout{
  display:grid;
  grid-template-columns:minmax(0,.88fr) minmax(520px,1.12fr);
  gap:46px;
  align-items:center;
}

.kdc-hero{padding:8px}

.kdc-badge{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:7px 12px;
  border:1px solid rgba(79,50,154,.14);
  border-radius:999px;
  background:#f8f5fd;
  color:var(--kdc-purple);
  font-size:10px;
  font-weight:900;
  letter-spacing:.07em;
}
.kdc-badge-dot{
  width:7px;height:7px;border-radius:50%;
  background:var(--kdc-pink);
  box-shadow:0 0 0 4px rgba(217,79,145,.12);
}

.kdc-hero h1{
  margin:18px 0 12px;
  color:var(--kdc-navy);
  font-size:clamp(38px,4.4vw,58px);
  line-height:1.02;
  font-weight:950;
  letter-spacing:-2px;
}
.kdc-hero h1 span{
  background:linear-gradient(95deg,var(--kdc-purple),var(--kdc-pink));
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent;
}

.kdc-lead{
  max-width:500px;
  margin:0;
  color:var(--kdc-muted);
  font-size:15px;
  line-height:1.72;
}

.kdc-benefits{
  display:flex;
  flex-wrap:wrap;
  gap:9px;
  margin-top:23px;
}
.kdc-benefits>div{
  min-width:116px;
  display:grid;
  grid-template-columns:31px auto;
  column-gap:9px;
  align-items:center;
  padding:9px 11px;
  border:1px solid var(--kdc-border);
  border-radius:13px;
  background:#fff;
}
.kdc-benefits>div>span{
  grid-row:1/3;
  width:31px;height:31px;
  display:grid;place-items:center;
  border-radius:9px;
  background:#f1edf9;
  color:var(--kdc-purple);
  font-size:11px;
}
.kdc-benefits b{color:var(--kdc-navy);font-size:11px;line-height:1.15}
.kdc-benefits small{color:#9995a5;font-size:9px;line-height:1.15}

.kdc-font-note{
  max-width:390px;
  display:flex;
  align-items:center;
  gap:11px;
  margin-top:16px;
  padding:12px 13px;
  border:1px solid #e7e0f3;
  border-radius:14px;
  background:#fbf9fe;
}
.kdc-note-icon{
  width:38px;height:38px;
  display:grid;place-items:center;
  flex:none;
  border-radius:11px;
  background:#eee8f8;
  color:var(--kdc-purple);
}
.kdc-font-note div{display:flex;flex-direction:column}
.kdc-font-note b{color:var(--kdc-navy);font-size:11px}
.kdc-font-note small{margin-top:2px;color:#8e899b;font-size:9px;line-height:1.45}

.kdc-setup-panel{
  padding:23px;
  border:1px solid var(--kdc-border);
  border-radius:22px;
  background:#fbfafe;
  box-shadow:inset 0 1px 0 #fff,0 10px 30px rgba(25,36,58,.04);
}

.kdc-panel-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:15px;
  margin-bottom:17px;
}
.kdc-panel-head small{
  display:block;
  margin-bottom:2px;
  color:var(--kdc-purple);
  font-size:9px;
  font-weight:900;
  letter-spacing:.09em;
}
.kdc-panel-head h2{
  margin:0;
  color:var(--kdc-navy);
  font-size:21px;
  font-weight:900;
  letter-spacing:-.45px;
}
.kdc-panel-icon{
  width:42px;height:42px;
  display:grid;place-items:center;
  border-radius:13px;
  background:linear-gradient(135deg,var(--kdc-navy),var(--kdc-purple));
  color:#fff;
  box-shadow:0 8px 18px rgba(79,50,154,.18);
}

.kdc-option-section{
  margin-bottom:13px;
  padding:14px;
  border:1px solid var(--kdc-border);
  border-radius:16px;
  background:#fff;
}
.kdc-section-label{
  display:flex;
  align-items:center;
  gap:6px;
  margin-bottom:9px;
  color:#5d5b70;
  font-size:10px;
  font-weight:900;
}

.kdc-mode-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:8px;
}

.kdc-choice{
  position:relative;
  display:flex;
  align-items:center;
  gap:9px;
  min-width:0;
  padding:9px 10px;
  border:1px solid var(--kdc-border);
  border-radius:12px;
  background:#fff;
  cursor:pointer;
  transition:.18s ease;
}
.kdc-choice:hover{transform:translateY(-1px);border-color:rgba(79,50,154,.28)}
.kdc-choice.active{
  border-color:var(--kdc-purple);
  background:#f7f4fd;
  box-shadow:0 0 0 2px rgba(79,50,154,.05);
}
.kdc-choice-wide{grid-column:1/-1}
.kdc-choice input,.kdc-diff input{position:absolute;opacity:0;pointer-events:none}
.kdc-choice-icon{
  width:31px;height:31px;
  display:grid;place-items:center;
  flex:none;
  border-radius:9px;
  background:#f1edf9;
  color:var(--kdc-purple);
  font-size:11px;
}
.kdc-choice>span:last-child{min-width:0}
.kdc-choice b{display:block;color:var(--kdc-navy);font-size:11px;line-height:1.2}
.kdc-choice small{display:block;margin-top:2px;color:#9692a4;font-size:9px;white-space:nowrap}

.kdc-difficulty-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:8px;
}
.kdc-diff{
  position:relative;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:7px;
  min-height:40px;
  margin:0;
  border:1px solid var(--kdc-border);
  border-radius:11px;
  background:#fff;
  cursor:pointer;
}
.kdc-diff.active{border-color:var(--kdc-purple);background:#f7f4fd}
.kdc-diff b{color:var(--kdc-navy);font-size:10px}
.kdc-diff-dot{width:8px;height:8px;border-radius:50%}
.kdc-diff-dot.easy{background:#10b981}
.kdc-diff-dot.medium{background:#f59e0b}
.kdc-diff-dot.hard{background:#ef4444}

.kdc-start-wrap{
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:8px;
}

.kdc-btn{
  min-height:48px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  padding:0 22px;
  border:0;
  border-radius:13px;
  background:linear-gradient(135deg,var(--kdc-purple),var(--kdc-purple-2));
  color:#fff!important;
  text-decoration:none!important;
  font-size:13px;
  font-weight:900;
  box-shadow:0 10px 22px rgba(79,50,154,.23);
  cursor:pointer;
  transition:.2s ease;
}
.kdc-start-wrap>.kdc-btn{width:100%}
.kdc-btn:hover{transform:translateY(-1px);box-shadow:0 13px 26px rgba(79,50,154,.29)}
.kdc-upgrade{background:linear-gradient(135deg,#d97706,#f59e0b)}
.kdc-access-note{margin:0;color:#c2414f;font-size:10px;font-weight:800}
.kdc-note{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:6px;
  margin:0;
  color:#9995a6;
  font-size:9.5px;
}

/* GAME */
#kdcGame{padding:28px}

.kdc-game-head{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:18px;
  margin-bottom:16px;
}
.kdc-game-head>div:first-child>span{
  color:var(--kdc-purple);
  font-size:9px;
  font-weight:900;
  letter-spacing:.1em;
}
.kdc-game-head h2{
  margin:2px 0 0;
  color:var(--kdc-navy);
  font-size:22px;
  font-weight:900;
  letter-spacing:-.4px;
}
.kdc-round-live{
  display:flex;
  align-items:center;
  gap:7px;
  padding:7px 10px;
  border:1px solid #dcefe8;
  border-radius:999px;
  background:#f2fbf7;
  color:#15835f;
  font-size:9px;
  font-weight:900;
}
.kdc-round-live span{
  width:7px;height:7px;border-radius:50%;
  background:#10b981;
  box-shadow:0 0 0 4px rgba(16,185,129,.12);
}

.kdc-hud{
  display:grid;
  grid-template-columns:repeat(6,1fr);
  gap:8px;
  margin-bottom:13px;
}
.kdc-hud div{
  padding:10px 8px;
  border:1px solid var(--kdc-border);
  border-radius:12px;
  background:#fff;
  text-align:center;
}
.kdc-hud small{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:4px;
  color:#9692a4;
  font-size:8px;
  font-weight:900;
}
.kdc-hud b{
  display:block;
  margin-top:2px;
  color:var(--kdc-navy);
  font-size:18px;
  font-weight:950;
}
.kdc-hud div:nth-child(1) small i{color:#f59e0b}
.kdc-hud div:nth-child(2) small i{color:#10b981}
.kdc-hud div:nth-child(3) small i{color:#ef4444}
.kdc-hud div:nth-child(4) small i{color:#10b981}
.kdc-hud div:nth-child(5) small i{color:#f97316}
.kdc-hud div:nth-child(6) small i{color:var(--kdc-purple)}

.kdc-stage-wrap{
  padding:9px;
  border:1px solid var(--kdc-border);
  border-radius:20px;
  background:#fbfafe;
}
.kdc-stage-top{
  display:flex;
  justify-content:space-between;
  gap:12px;
  padding:0 5px 8px;
  color:#9995a6;
  font-size:9px;
  font-weight:800;
}

.kdc-target{
  min-height:245px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  margin:0;
  padding:36px 20px;
  border:1px solid #ddd7ea;
  border-radius:15px;
  background:
    linear-gradient(rgba(79,50,154,.035) 1px,transparent 1px),
    linear-gradient(90deg,rgba(79,50,154,.035) 1px,transparent 1px),
    linear-gradient(180deg,#fdfcff,#f5f1fb);
  background-size:34px 34px,34px 34px,auto;
  text-align:center;
}
.kdc-target small{
  display:inline-flex;
  margin-bottom:12px;
  padding:5px 9px;
  border:1px solid var(--kdc-border);
  border-radius:999px;
  background:#fff;
  color:var(--kdc-purple);
  font-size:8px;
  font-weight:900;
  letter-spacing:.08em;
}
.kdc-target strong{
  display:block;
  color:var(--kdc-navy);
  font:normal clamp(38px,6vw,58px) KrutiDev010,serif;
  line-height:1.3;
}

#kdcForm{
  max-width:690px;
  display:flex;
  gap:9px;
  margin:14px auto 0;
}
.kdc-input-wrap{
  position:relative;
  display:flex;
  align-items:center;
  flex:1;
}
.kdc-input-wrap>i{
  position:absolute;
  left:15px;
  z-index:2;
  color:#aaa5b6;
  font-size:12px;
}
#kdcInput{
  width:100%;
  min-width:0;
  height:54px;
  padding:0 14px 0 42px;
  border:1.5px solid #ddd7e8;
  border-radius:13px;
  background:#fff;
  color:var(--kdc-navy);
  font:normal 28px KrutiDev010,serif;
  text-align:center;
  outline:none;
}
#kdcInput:focus{
  border-color:var(--kdc-purple);
  box-shadow:0 0 0 4px rgba(79,50,154,.08);
}

#kdcFeedback{
  min-height:24px;
  margin:10px 0 0;
  color:#747490;
  font-size:12px;
  font-weight:750;
  text-align:center;
}
#kdcFeedback.bad{color:#dc2626}

.kdc-results{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:10px;
  max-width:620px;
  margin:24px auto;
}
.kdc-results div{
  padding:12px;
  border:1px solid var(--kdc-border);
  border-radius:12px;
  background:#fff;
}
.kdc-results small{display:block;color:#747490;font-size:10px}
.kdc-results b{color:var(--kdc-navy);font-size:20px}

@media(max-width:991.98px){
  .kdc-setup-layout{grid-template-columns:1fr;gap:25px}
  .kdc-hero{text-align:center;padding:0}
  .kdc-lead{margin-left:auto;margin-right:auto}
  .kdc-benefits{justify-content:center}
  .kdc-font-note{margin-left:auto;margin-right:auto;text-align:left}
}

@media(max-width:767.98px){
  .kdc-screen{padding:26px 16px}
  .kdc-hud{grid-template-columns:repeat(3,1fr)}
}

@media(max-width:575.98px){
  .kdc-page{padding:16px 0 38px}
  .kdc-card{border-radius:20px}
  .kdc-hero h1{font-size:37px;letter-spacing:-1.35px}
  .kdc-lead{font-size:13.5px}
  .kdc-benefits>div{flex:1;min-width:0}
  .kdc-setup-panel{padding:15px;border-radius:18px}
  .kdc-mode-grid{grid-template-columns:1fr}
  .kdc-choice-wide{grid-column:auto}
  #kdcGame{padding:18px 12px 24px}
  .kdc-game-head h2{font-size:18px}
  .kdc-round-live{display:none}
  .kdc-stage-top span:last-child{display:none}
  .kdc-target{min-height:215px;padding:30px 12px}
  .kdc-target strong{font-size:clamp(36px,13vw,52px)}
  #kdcForm{flex-direction:column}
  #kdcForm>.kdc-btn{width:100%}
  .kdc-results{grid-template-columns:repeat(2,1fr)}
}
