/* Page containers */
.page { display: none; padding: 0 0.5em; }
.page h1 { font-size: 2em; line-height: 1em; margin-top: 1.1em; font-weight: bold; }
.page p  { font-size: 1.05em; line-height: 1.5em; margin-top: 0.5em; }

/* Loading overlay */
#loading {
  display: flex;
  position: fixed;
  z-index: 100;
  width: 100%;
  height: 100%;
  background-color: transparent; /* remove gray backdrop on initial load */
}
.centered {
  position: fixed;
  top: 50%;
  left: 50%;
  text-align: center;
  transform: translate(-50%, -50%);
}

/* Plot spacing */
#vad-preview .u-hz, #vad-plot .u-hz { padding-top: 10px; padding-bottom: 10px; }

/* Hide plot until first action (mic or run file) */
#vad-preview .uplot, #vad-plot .uplot { display: none; }
#vad-preview.show-plot .uplot, #vad-plot.show-plot .uplot { display: block; }

/* Controls layout */
#controls-container { display: flex; flex-direction: column; gap: 8px; }
#modes-row { display: flex; align-items: center; gap: 12px; flex-wrap: wrap; }
#actions-row { display: flex; align-items: center; gap: 12px; flex-wrap: wrap; }
.file-group { display: inline-flex; align-items: center; gap: 8px; white-space: nowrap; }

/* Mode radios: keep label background transparent; only color radio circle */
#modes-row label input[name="vad-mode"] + span {
  padding: 4px 25px;
  border-radius: 12px;
  line-height: 1.2;
  transition: opacity .15s ease;
  color: inherit;
  background: transparent;
}
#modes-row label input[type="radio"]:checked + span::before { border-color: #1565c0 !important; }
#modes-row label input[type="radio"]:checked + span::after { background-color: #1565c0 !important; border-color: #1565c0 !important; }
#modes-row label input[name="vad-mode"]:disabled + span { opacity: .5; }

#file-stats { font-size: 12px; color: #666; }

/* Minimal fallback styles if Materialize is missing */
.card {
  background: var(--card);
  color: var(--text);
  border: 1px solid var(--border);
  border-radius: 6px;
  box-shadow: 0 1px 3px var(--shadow);
}
.card .card-content { padding: 16px; }
.card .card-action { padding: 12px 16px; border-top: 1px solid var(--border); }
.btn, .btn-large {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 10px 16px;
  border-radius: 4px;
  border: none;
  cursor: pointer;
  background-color: var(--primary);
  color: var(--primary-text);
}
.material-icons { vertical-align: middle; }
