* { margin: 0; padding: 0; box-sizing: border-box; }

html, body {
  width: 100%; height: 100%;
  overflow: hidden;
  background: #111;
  font-family: 'Ubuntu', sans-serif;
  font-weight: 700;
}

#scene {
  position: fixed; inset: 0;
  display: block;
}

/* Ubuntu Bold, white fill, black outline — used everywhere in the HUD */
.hud-outline, .hud-outline * {
  color: #ffffff;
  font-family: 'Ubuntu', sans-serif;
  font-weight: 700;
  -webkit-text-stroke: 3px #000000;
  paint-order: stroke fill;
  text-shadow:
    -2px -2px 0 #000, 2px -2px 0 #000,
    -2px  2px 0 #000, 2px  2px 0 #000,
     0px  2.5px 0 #000, 0px -2.5px 0 #000,
     2.5px 0px 0 #000, -2.5px 0px 0 #000;
}

#inventory {
  position: fixed;
  left: 16px;
  bottom: 16px;
  display: flex;
  gap: 8px;
  z-index: 10;
}

.petal-slot {
  width: 56px;
  height: 56px;
  border-radius: 10px;
  background: rgba(20, 20, 20, 0.55);
  border: 3px solid #000;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 2px;
  position: relative;
}

.petal-slot .rarity-ring {
  position: absolute;
  inset: -3px;
  border-radius: 10px;
  border: 3px solid var(--rarity-color, #7EEF6D);
  pointer-events: none;
}

.petal-box {
  width: 12px;
  height: 24px;
  border: 1.5px solid rgba(0,0,0,0.6);
}

#healthbar {
  position: fixed;
  left: 16px;
  bottom: 82px;
  width: 220px;
  height: 18px;
  background: rgba(0,0,0,0.5);
  border: 3px solid #000;
  border-radius: 6px;
  overflow: hidden;
  z-index: 10;
}

#healthfill {
  height: 100%;
  width: 100%;
  background: #4caf50;
  transition: width 0.1s linear;
}

#status {
  position: fixed;
  top: 12px;
  left: 16px;
  font-size: 16px;
  z-index: 10;
}

#controls-hint {
  position: fixed;
  bottom: 16px;
  right: 16px;
  font-size: 13px;
  opacity: 0.9;
  z-index: 10;
}
