/* __V3D_TEMPLATE__ - template-based file; delete this line to prevent this file from being updated */

/* Reset and base styles */
* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
  -webkit-tap-highlight-color: rgba(0,0,0,0); /* Remove tap highlight on iOS */
}

body {
  margin: 0;
  overflow: hidden;
  font-family: 'Neo Sans Std', Helvetica, sans-serif; /* Set base font family */
}

/* Containers */
.v3d-container {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

/* Fullscreen button */
.fullscreen-button {
  position: absolute;
  top: 5px;
  right: 5px;
  width: 50px;
  height: 50px;
  cursor: pointer;
  background-size: 100% 100%;
  display: none;
  z-index: 1;
}
.fullscreen-open {
  background-image: url('media/fullscreen_open.svg');
}
.fullscreen-close {
  background-image: url('media/fullscreen_close.svg');
}

.v3d-annotation {
  background-image: url('./media/info.svg');
  background-color: white;
  color: white;
  border: none;
  width: 20px;
  height: 20px;
  min-width: 0px;
  font-size: 0px;
  padding: 0px;
  top: 0px;
  left: 0px;
  border-radius: 50%;
}

/* Controls container */
.controls {
  position: absolute;
  bottom: 1%;
  left: 50%;
  transform: translateX(-50%);
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  gap: 20px;
  font-weight: 700;
}

/* Shared styles for swatches, help-share, and oj containers */

.help-share,
.buttons {
  padding: 8px 12px;
  border-radius: 20px;
  background: #134a70;
  display: flex;
  gap: 10px;
  visibility: hidden;
  color: #FFFFFF;
  text-align: center;
  line-height: 20px;
  border: 0.2vw solid #134a70; /* Moved here from swatches-container2 */
  align-items: center; /* Ensure vertical alignment */
}

/* Button styles */
.btn {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 30px;
  height: 30px;
  border-radius: 50%;
  cursor: pointer;
  border: 0.1vw solid #FFFFFF;
  font-size: 23px;
  color: white;
  background-color: transparent; /* transparent, not #00000000 */
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  text-decoration: none; /* For <a> elements */
  position: relative; /* Needed for ::after tooltip positioning */
}

.btn:hover {
  border: 0.2vw solid #FFFFFF;
}

/* Font Awesome icon inside buttons */
.btn i {
  color: #FFFFFF;
  font-family: "Font Awesome 6 Free";
  font-weight: 900;
}

/* Tooltip on buttons */
.btn[title]:hover::after {
  content: attr(title);
  font-size: 15px;
  position: absolute;
  top: -40px;
  left: 50%;
  transform: translateX(-50%);
  cursor: pointer;
  padding: 4px 8px;
  border: 0.2vw solid #134a70;
  border-radius: 4px;
  color: #134a70;
  background: white;
  white-space: nowrap;
  z-index: 1000;
  pointer-events: none;
  
  font-weight: 700;  /* <-- Add this to match Help/Share boldness */
  font-family: 'Neo Sans Std', Helvetica, sans-serif; /* Ensure consistent font */
}


#help_div,
#battery_div,
#killswitch_div,
#vidlice_div,
#Ovladaci_tlacitko,
#klakson,
#stop,
#pojezd,
#help_div,
#display {
  display: none;
  font-family: 'Neo Sans Std', Helvetica, sans-serif;
  border-radius: 15px;
  border: 0.15vw solid #000000;
  background-color: rgb(238, 238, 238);
  position: absolute;
  left: 5px;
  top: 5px;
  /*transform: translate(-50%, -50%);*/
  width: 40vw;
  max-width: 20%;
  max-height: 80%;
  text-align: center;
  overflow-y: auto; /* Add scrolling if content too tall */
  padding: 20px;
}


/* Headings */
h1 {
  color: #000000;
  font-size: 1.0vw;
  font-weight: 700;
}

h2 {
  color: #000000;
  font-size: 0.8vw;
  font-weight: 700;
  padding: 0.5vw 0;
}


h3 {
  color: #000000;
  padding: 0.3vw 0;
  font-size: 0.7vw;
  font-weight: 700;
}

/* Rounded horizontal rule */
hr.rounded {
  border-top: 20px solid #134a70;
  border-radius: 5px;
}

/* Preloader wrapper */
#preloader-wrapper {
  position: fixed;
  width: 100vw;
  height: 100vh;
  background: white;
  display: flex;
  align-items: center;
  justify-content: center;
}

/* Help close button */
.help-close-button {
  display: block;
  margin: 0 auto;
  text-align: center;
}

/* General image styling */
.centered-img {
  width: 70%;
  display: block;
  margin: 40px auto 0; /* 40px top margin, center horizontally */
}
