:root{
  --rak:#080D22;
  --panel:#111942;
  --panel2:#18225A;
  --garis:#2B3579;
  --tinta:#EAEEFF;
  --redup:#8D99D8;
  --oranye:#FF8A2B;
  --hijau:#2FD98A;
  --biru:#4AA8FF;
  --cokelat:#C08457;
  --bahaya:#FF4E67;
  --r:14px;
}
*{box-sizing:border-box}
[hidden]{display:none!important}
html,body{margin:0;padding:0}
body{
  background:
    radial-gradient(1100px 620px at 50% -10%, #1A2358 0%, transparent 62%),
    var(--rak);
  color:var(--tinta);
  font-family:"IBM Plex Sans",system-ui,-apple-system,Segoe UI,sans-serif;
  font-size:16px;line-height:1.55;
  min-height:100vh;
  padding:22px 16px 40px;
  -webkit-font-smoothing:antialiased;
}
h1,h2,h3{font-family:"Bricolage Grotesque","IBM Plex Sans",sans-serif;font-weight:800;margin:0}

.rak{position:relative;max-width:680px;margin:0 auto}
.baut{
  position:absolute;top:10px;width:9px;height:9px;border-radius:50%;
  background:#0A1030;box-shadow:inset 0 1px 0 #3C4A9A,0 0 0 1px #232D6B;
}
.baut:first-of-type{left:-4px}
.baut:last-of-type{right:-4px}
@media (max-width:720px){.baut{display:none}}

.layar{display:none}
.layar.aktif{display:block}

/* ---------- kepala ---------- */
.kepala{text-align:center;padding:10px 0 26px}
.pita{display:flex;gap:3px;height:7px;margin:0 auto 26px;max-width:340px;border-radius:99px;overflow:hidden}
.urat{flex:1;border-radius:99px}
.u1{background:linear-gradient(90deg,#fff 50%,var(--oranye) 50%)}
.u2{background:var(--oranye)}
.u3{background:linear-gradient(90deg,#fff 50%,var(--hijau) 50%)}
.u4{background:var(--biru)}
.u5{background:linear-gradient(90deg,#fff 50%,var(--biru) 50%)}
.u6{background:var(--hijau)}
.u7{background:linear-gradient(90deg,#fff 50%,var(--cokelat) 50%)}
.u8{background:var(--cokelat)}

.kepala h1{font-size:clamp(46px,13vw,78px);letter-spacing:-.045em;line-height:.92}
.kepala h1 span{display:block;color:var(--oranye)}
.tagline{color:var(--redup);max-width:34ch;margin:14px auto 0;font-size:15.5px}

/* ---------- panel ---------- */
.panel{
  background:linear-gradient(180deg,var(--panel) 0%,#0E1638 100%);
  border:1px solid var(--garis);border-radius:var(--r);
  padding:20px;margin-bottom:14px;
}
.panel.tutup{color:var(--redup);text-align:center}

.ronde-daftar{display:grid;gap:2px;margin-bottom:20px}
.ronde-item{display:flex;align-items:center;gap:14px;padding:10px 4px;border-bottom:1px solid rgba(43,53,121,.55)}
.ronde-item:last-child{border-bottom:0}
.ronde-item b{
  font-family:"Bricolage Grotesque",sans-serif;font-size:15px;width:26px;height:26px;flex:none;
  display:grid;place-items:center;border-radius:7px;background:var(--panel2);color:var(--oranye)
}
.ronde-item div{flex:1;min-width:0}
.ronde-item strong{display:block;font-weight:600;font-size:15px}
.ronde-item span{display:block;color:var(--redup);font-size:13px}
.ronde-item em{font-style:normal;color:var(--redup);font-size:13px}

.aturan{margin:0;padding-left:18px;color:var(--redup);font-size:14.5px}
.aturan li{margin-bottom:7px}
.aturan li:last-child{margin-bottom:0}

/* ---------- form ---------- */
.form label{display:block;font-size:13.5px;color:var(--redup);margin:0 0 7px}
.form input{
  width:100%;padding:13px 14px;margin-bottom:18px;font:inherit;color:var(--tinta);
  background:#0B1233;border:1px solid var(--garis);border-radius:10px;
}
.form input:focus,.chip:focus-visible,.tombol:focus-visible,.pilihan:focus-visible{
  outline:2px solid var(--oranye);outline-offset:2px
}
.form input::placeholder{color:#5D68A8}
.pilih-kelas{display:flex;flex-wrap:wrap;gap:7px;margin-bottom:16px}
.chip{
  font:inherit;font-size:13.5px;padding:7px 12px;color:var(--redup);cursor:pointer;
  background:#0B1233;border:1px solid var(--garis);border-radius:99px;
}
.chip[aria-pressed="true"]{background:var(--oranye);border-color:var(--oranye);color:#20130A;font-weight:600}

.tombol{
  display:block;width:100%;font:inherit;font-weight:600;font-size:16px;
  padding:15px;border-radius:11px;border:0;cursor:pointer;
}
.tombol.utama{background:var(--oranye);color:#1B1006}
.tombol.utama:active{transform:translateY(1px)}
.tombol.samar{background:transparent;color:var(--redup);border:1px solid var(--garis);margin-top:9px}
.tombol[disabled]{opacity:.5;cursor:not-allowed}
.pesan{min-height:20px;margin:0 0 10px;font-size:14px;color:var(--bahaya)}

/* ---------- arena ---------- */
.status{display:flex;justify-content:space-between;align-items:flex-end;gap:12px;margin-bottom:12px}
.label-ronde{font-family:"Bricolage Grotesque",sans-serif;font-weight:800;font-size:21px;display:block;letter-spacing:-.02em}
.sub-ronde{color:var(--redup);font-size:13px}
.status-kanan{display:flex;align-items:center;gap:12px}
.nyawa{display:flex;gap:5px}
.rj{width:15px;height:19px;border-radius:3px 3px 5px 5px;background:var(--hijau);position:relative}
.rj::after{content:"";position:absolute;left:4px;bottom:-4px;width:7px;height:5px;border-radius:0 0 2px 2px;background:inherit}
.rj.padam{background:#2C3568}
.skor{font-family:"Bricolage Grotesque",sans-serif;font-weight:800;font-size:24px;min-width:60px;text-align:right}

.jalur{display:flex;gap:4px;margin-bottom:14px}
.seg{flex:1;height:6px;border-radius:99px;background:#1A2154;overflow:hidden}
.seg i{display:block;height:100%;width:0;background:var(--oranye);border-radius:99px;transition:width .35s ease}
.seg.lunas i{width:100%;background:var(--hijau)}
.seg.kini i{background:var(--oranye)}

.waktu{position:relative;height:30px;border-radius:99px;background:#0C1234;border:1px solid var(--garis);overflow:hidden;margin-bottom:14px}
.waktu-isi{height:100%;width:100%;background:linear-gradient(90deg,var(--hijau),var(--biru));transition:width 1s linear}
.waktu.beku{opacity:.32}
.waktu.panas .waktu-isi{background:linear-gradient(90deg,var(--oranye),var(--bahaya))}
.waktu span{
  position:absolute;inset:0;display:grid;place-items:center;
  font-family:"Bricolage Grotesque",sans-serif;font-weight:800;font-size:14px;color:#06102E
}

.teks-soal{font-size:19px;line-height:1.45;margin:2px 0 18px;font-weight:500}
.opsi{display:grid;gap:9px}
.pilihan{
  display:flex;align-items:flex-start;gap:12px;width:100%;text-align:left;font:inherit;font-size:15.5px;
  padding:14px;color:var(--tinta);background:#0C1338;border:1px solid var(--garis);border-radius:11px;cursor:pointer;
}
.pilihan b{
  flex:none;width:24px;height:24px;display:grid;place-items:center;border-radius:6px;
  background:var(--panel2);color:var(--redup);font-family:"Bricolage Grotesque",sans-serif;font-size:13px
}
.pilihan.benar{border-color:var(--hijau);background:rgba(47,217,138,.13)}
.pilihan.benar b{background:var(--hijau);color:#042417}
.pilihan.keliru{border-color:var(--bahaya);background:rgba(255,78,103,.13)}
.pilihan.keliru b{background:var(--bahaya);color:#2C0710}
.opsi.kunci .pilihan{cursor:default}

.bahas{margin-top:16px;padding:13px 15px;border-left:3px solid var(--biru);background:#0C1338;border-radius:0 10px 10px 0;font-size:14.5px;color:var(--redup)}
.bahas strong{color:var(--tinta);display:block;margin-bottom:3px;font-weight:600}
#btn-lanjut{margin-top:16px}

/* ---------- jeda ---------- */
.jeda{text-align:center;padding:52px 20px}
.colok{display:flex;justify-content:center;gap:6px;margin-bottom:26px}
.colok span{width:12px;height:34px;border-radius:4px;background:#1D2760}
.colok span:nth-child(1){background:var(--oranye)}
.colok span:nth-child(2){background:var(--hijau)}
.colok span:nth-child(3){background:var(--biru)}
.colok span:nth-child(4){background:var(--cokelat)}
.jeda h2{font-size:clamp(28px,8vw,42px);letter-spacing:-.03em}
.jeda p{color:var(--redup);max-width:34ch;margin:12px auto 30px}

/* ---------- hasil ---------- */
.hasil{background:linear-gradient(180deg,var(--panel),#0E1638);border:1px solid var(--garis);border-radius:var(--r);padding:30px 22px;text-align:center;margin-bottom:14px}
.hasil h2{font-size:clamp(30px,9vw,46px);letter-spacing:-.035em;line-height:1}
.hasil .cap{color:var(--redup);margin:12px auto 24px;max-width:32ch}
.angka-besar{font-family:"Bricolage Grotesque",sans-serif;font-weight:800;font-size:66px;line-height:1;color:var(--oranye)}
.angka-label{color:var(--redup);font-size:13px;margin-bottom:22px}
.rinci{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--garis);border:1px solid var(--garis);border-radius:11px;overflow:hidden}
.rinci div{background:#0C1338;padding:13px 6px}
.rinci b{display:block;font-family:"Bricolage Grotesque",sans-serif;font-size:22px}
.rinci span{color:var(--redup);font-size:12px}
.gugur h2{color:var(--bahaya)}
.juara h2{color:var(--hijau)}

/* ---------- papan skor ---------- */
.judul-papan{font-size:32px;letter-spacing:-.03em;margin-bottom:6px}
.ringkas-papan{color:var(--redup);font-size:14px;margin-bottom:16px}
.tabel{border:1px solid var(--garis);border-radius:var(--r);overflow:hidden;margin-bottom:6px}
.baris{display:flex;align-items:center;gap:12px;padding:11px 14px;background:#0E1638;border-bottom:1px solid rgba(43,53,121,.6)}
.baris:last-child{border-bottom:0}
.baris .pos{font-family:"Bricolage Grotesque",sans-serif;font-weight:800;width:26px;color:var(--redup);flex:none}
.baris.podium .pos{color:var(--oranye)}
.baris .siapa{flex:1;min-width:0}
.baris .siapa b{display:block;font-weight:600;font-size:15px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.baris .siapa span{color:var(--redup);font-size:12.5px}
.baris .nilai{font-family:"Bricolage Grotesque",sans-serif;font-weight:800;font-size:18px}
.tanda{font-size:11px;padding:2px 7px;border-radius:99px;border:1px solid var(--garis);color:var(--redup)}
.tanda.main{color:var(--biru);border-color:var(--biru)}
.tanda.juara{color:var(--hijau);border-color:var(--hijau)}
.tanda.gugur{color:var(--bahaya);border-color:var(--bahaya)}
.baris.aku{background:#182156}

.kaki{text-align:center;color:#4E5896;font-size:12.5px;padding-top:20px}

.getar{animation:getar .32s ease}
@keyframes getar{
  25%{transform:translateX(-6px)}
  50%{transform:translateX(5px)}
  75%{transform:translateX(-3px)}
}
@media (prefers-reduced-motion:reduce){
  *{animation:none!important;transition:none!important}
}
