/* Component styles for classes used in index.html.
   Kept as plain CSS so no build step is needed (Tailwind utilities come from
   the Play CDN; these are the few reusable components on top). Brand tokens
   mirror ptc/design-system.md. */

:root {
  --ptc-blue: #184586;
  --ptc-blue-dark: #0E2F5C;
  --ptc-cyan: #04A3D7;
  --ptc-yellow: #D8DF20;
  --ptc-cream: #FCFBF5;
}

/* Text inputs / textareas */
.field {
  width: 100%;
  border: 2px solid rgba(24, 69, 134, 0.25);
  background: #fff;
  border-radius: 0.75rem;
  padding: 0.75rem 1rem;
  font-size: 1.0625rem;
  line-height: 1.5;
  color: var(--ptc-blue-dark);
}
.field::placeholder { color: rgba(14, 47, 92, 0.45); }
.field:focus {
  outline: none;
  border-color: var(--ptc-blue);
  box-shadow: 0 0 0 4px rgba(4, 163, 215, 0.25);
}

/* Big, easy-to-hit checkboxes (older / non-technical audience) */
.check {
  width: 1.5rem;
  height: 1.5rem;
  margin-top: 0.15rem;
  flex: 0 0 auto;
  accent-color: var(--ptc-blue);
  cursor: pointer;
}

/* Progress pills */
.progress-pill {
  display: inline-flex;
  align-items: center;
  gap: 0.4rem;
  padding: 0.35rem 0.75rem;
  border-radius: 9999px;
  color: var(--ptc-blue);
  transition: background-color 0.15s, color 0.15s;
}
.progress-pill .num {
  display: inline-grid;
  place-items: center;
  width: 1.5rem;
  height: 1.5rem;
  border-radius: 9999px;
  background: rgba(24, 69, 134, 0.12);
  font-size: 0.85rem;
}
.progress-pill[aria-current="step"] { color: #fff; background: var(--ptc-blue); }
.progress-pill[aria-current="step"] .num { background: var(--ptc-yellow); color: var(--ptc-blue-dark); }
.progress-pill:focus-visible { outline: 3px solid var(--ptc-cyan); outline-offset: 2px; }

/* Step sections clear the sticky progress bar when scrolled to */
.step { scroll-margin-top: 4.5rem; }

/* Argument option cards (rendered by app.js) */
.arg-option {
  display: flex;
  gap: 0.75rem;
  align-items: flex-start;
  border: 2px solid rgba(24, 69, 134, 0.2);
  border-radius: 0.75rem;
  padding: 0.85rem 1rem;
  background: #fff;
  cursor: pointer;
  transition: border-color 0.15s, background-color 0.15s;
}
.arg-option:hover { border-color: var(--ptc-blue); }
.arg-option:has(input:checked) {
  border-color: var(--ptc-blue);
  background: rgba(4, 163, 215, 0.06);
}
.arg-option:focus-within { box-shadow: 0 0 0 4px rgba(4, 163, 215, 0.25); }

/* Respect reduced motion */
@media (prefers-reduced-motion: reduce) {
  * { scroll-behavior: auto !important; transition: none !important; }
}
