*{margin:0;padding:0;box-sizing:border-box;user-select:none;-webkit-user-select:none;touch-action:none}
html,body{width:100%;height:100%;margin:0;padding:0;overflow:hidden}
body{background:#2a4a55;font-family:'Fredoka',system-ui,sans-serif;color:#fff;position:relative}
#c{display:block;position:fixed;inset:0;width:100%;height:100%;z-index:1}
#ui{position:fixed;inset:0;pointer-events:none;z-index:10}

#killsBox{
  position:absolute;top:14px;left:14px;
  background:rgba(255,249,232,.92);backdrop-filter:blur(12px);
  padding:9px 16px;border-radius:12px;border:2px solid #f5a623aa;color:#7a4a10;
  font-size:18px;font-weight:700;display:flex;align-items:center;gap:8px;
  font-family:'Fredoka',system-ui,sans-serif;letter-spacing:0.3px;
}

#lb{
  position:absolute;top:14px;right:14px;
  width:190px;font-size:13px;
  transform:rotate(1.5deg);
  transform-origin:top right;
}
#lb h3{
  font-size:12px;color:#a9590a;margin-bottom:8px;padding-left:4px;
  font-weight:700;letter-spacing:0.5px;
}
.lb-e{
  display:flex;justify-content:space-between;align-items:center;
  margin:5px 0;padding:7px 10px;border-radius:10px;
  background:rgba(255,249,232,.92);border:2px solid #f5a62366;
  font-family:'Fredoka',system-ui,sans-serif;font-weight:600;color:#7a4a10;
  box-shadow:0 2px 8px rgba(0,0,0,.12);
}
.lb-e.you,
.lb-e.rank1{
  background:rgba(255,249,232,.92);border:2px solid #f5a62366;
  color:#7a4a10;font-weight:600;
}
.lb-e .rank{opacity:.7;margin-right:5px;min-width:18px;font-size:12px}
.lb-e .crown{margin-right:4px;font-size:14px}

#hint{position:absolute;bottom:18px;left:50%;transform:translateX(-50%);background:rgba(255,249,232,.9);color:#7a4a10;padding:8px 16px;border-radius:20px;font-size:13px;border:2px solid #f5a62388;font-weight:600}
#boostBar{position:absolute;bottom:55px;left:50%;transform:translateX(-50%);width:120px;height:8px;background:rgba(255,255,255,.1);border-radius:4px;overflow:hidden}
#boostFill{height:100%;width:100%;background:linear-gradient(90deg,#22d3ee,#a78bfa);transition:width .1s;border-radius:4px}

#start{
  position:fixed;inset:0;pointer-events:auto;z-index:30;
  background:linear-gradient(180deg,#7ec8e3 0%,#a8e6a0 55%,#8fd16a 100%);
  display:flex;flex-direction:column;align-items:center;justify-content:center;
  overflow:hidden;padding:20px;text-align:center;
}
#start .title-wrap{position:relative;z-index:2;text-align:center;margin-bottom:8px}
#start h1{
  font-size:44px;font-weight:900;line-height:1.05;margin:0;
  color:#ffe566;
  text-shadow:3px 3px 0 #e85d20, -1px -1px 0 #fff, 4px 4px 0 rgba(0,0,0,0.12);
  letter-spacing:1px;
}
#start h1 span{display:block;font-size:28px;color:#fff;text-shadow:2px 2px 0 #e85d20}
#start .tagline{
  font-size:14px;color:#2d5a1e;font-weight:600;margin:8px 0 14px;
  text-shadow:0 1px 0 rgba(255,255,255,0.5);max-width:300px;line-height:1.4;
}
#start .name-card{
  background:#fff9e8;border:4px solid #f5a623;border-radius:20px;
  padding:14px 18px;box-shadow:0 6px 0 #d68a10;
  width:min(280px,90vw);box-sizing:border-box;position:relative;z-index:2;
  margin-bottom:18px;
}
#start .name-card label{
  display:block;font-size:12px;color:#a9590a;font-weight:800;
  text-align:center;margin-bottom:8px;letter-spacing:0.04em;
}
#nameInput{
  width:100%;height:42px;border-radius:12px;border:2px solid #f5a623aa;
  background:#fff;color:#7a4a10;padding:0 14px;font-size:15px;font-weight:700;
  outline:none;box-sizing:border-box;text-align:center;font-family:Fredoka,sans-serif;
}
#nameInput:focus{border-color:#e85d20;box-shadow:0 0 0 3px rgba(248,165,35,0.35)}
#playBtn{
  width:200px;height:56px;border:3px solid #fff8e0;border-radius:28px;
  background:linear-gradient(180deg,#ffd93d,#f5a623);color:#a9590a;
  font-weight:900;font-size:22px;letter-spacing:1px;cursor:pointer;
  box-shadow:0 6px 0 #d68a10;font-family:Fredoka,sans-serif;
  pointer-events:auto;transition:transform .12s;position:relative;z-index:2;
}
#playBtn:hover{transform:scale(1.06)}
#playBtn:active{transform:scale(0.97);box-shadow:0 3px 0 #d68a10}

#over{
  position:fixed;inset:0;pointer-events:auto;z-index:30;
  background:linear-gradient(180deg,#7ec8e3 0%,#a8e6a0 55%,#8fd16a 100%);
  display:flex;flex-direction:column;align-items:center;justify-content:center;
  overflow:hidden;padding:20px;text-align:center;
}
#over .over-title{
  font-size:44px;font-weight:900;line-height:1.05;margin:0 0 12px;
  color:#ffe566;
  text-shadow:3px 3px 0 #e85d20, -1px -1px 0 #fff, 4px 4px 0 rgba(0,0,0,0.12);
  letter-spacing:1px;
}
#over .tagline{
  font-size:14px;color:#2d5a1e;font-weight:600;margin:8px 0 14px;
  text-shadow:0 1px 0 rgba(255,255,255,0.5);
}
#againBtn{
  width:200px;height:56px;border:3px solid #fff8e0;border-radius:28px;
  background:linear-gradient(180deg,#ffd93d,#f5a623);color:#a9590a;
  font-weight:900;font-size:20px;letter-spacing:1px;cursor:pointer;
  box-shadow:0 6px 0 #d68a10;font-family:Fredoka,sans-serif;
  pointer-events:auto;transition:transform .12s;
}
#againBtn:hover{transform:scale(1.06)}
#againBtn:active{transform:scale(0.97);box-shadow:0 3px 0 #d68a10}
#final{
  font-size:22px;font-weight:700;margin:8px 0 22px;color:#2d5a1e;
  text-shadow:0 1px 0 rgba(255,255,255,0.5);
}
.hidden{display:none!important}
@keyframes bob{0%,100%{transform:translateY(0)}50%{transform:translateY(-10px)}}
