:root {
  --sky-primary: #176b51;
  --sky-primary-hover: #0f5a43;
  --sky-border: #dce6df;
  --bs-font-sans-serif: system-ui, sans-serif;
  --bs-body-font-family: var(--bs-font-sans-serif);
  --bs-body-font-size: 0.9375rem;
  --bs-body-line-height: 1.5;
  --bs-body-color: #212529;
  --bs-body-bg: #ffffff;
  --bs-secondary-color: #61766a;
  --bs-tertiary-bg: #ffffff;
  --bs-border-color: var(--sky-border);
  --bs-border-radius: 0.375rem;
  --bs-link-color: var(--sky-primary);
  --bs-link-color-rgb: 23, 107, 81;
  --bs-link-hover-color: var(--sky-primary-hover);
  --bs-link-hover-color-rgb: 15, 90, 67;
}
.btn-primary {
  --bs-btn-bg: var(--sky-primary);
  --bs-btn-border-color: var(--sky-primary);
  --bs-btn-hover-bg: var(--sky-primary-hover);
  --bs-btn-hover-border-color: var(--sky-primary-hover);
  --bs-btn-active-bg: var(--sky-primary-hover);
  --bs-btn-active-border-color: var(--sky-primary-hover);
  --bs-btn-disabled-bg: var(--sky-primary);
  --bs-btn-disabled-border-color: var(--sky-primary);
  --bs-btn-focus-shadow-rgb: 23, 107, 81;
}
.btn { min-height: 40px; white-space: normal; }
.form-control, .form-select { min-height: 40px; font-size: inherit; }
.form-control:focus, .form-select:focus { border-color: var(--sky-primary); box-shadow: 0 0 0 2px rgb(23 107 81 / 15%); }
a:focus-visible, button:focus-visible, summary:focus-visible { outline: 2px solid var(--sky-primary); outline-offset: 3px; }
h1 { font-size: 1.5rem; line-height: 1.25; }
h2 { font-size: 1.125rem; line-height: 1.35; }
pre { white-space: pre-wrap; overflow-wrap: anywhere; font-size: 0.8125rem; }
.response-details { margin-top: 16px; }
.response-details summary { cursor: pointer; font-weight: 500; }
.confirmation-dialog { width: min(480px, calc(100vw - 32px)); max-height: calc(100vh - 32px); padding: 0; border: 1px solid var(--bs-border-color); border-radius: var(--bs-border-radius); }
.confirmation-dialog::backdrop { background: rgb(0 0 0 / 32%); }
.confirmation-dialog .modal-content { border: 0; }
@media (max-width: 600px) { .btn, .form-control, .form-select { min-height: 44px; } }
@media (prefers-reduced-motion: reduce) { .btn, .form-control, .form-select, .nav-link { transition: none; } }
