/* Shared mobile and accessibility improvements for CreateSurveyApp screens. */
*, *::before, *::after { box-sizing: border-box; }
button, a, input, select, textarea { min-height: 42px; }
a:focus-visible, button:focus-visible, input:focus-visible, select:focus-visible, textarea:focus-visible { outline: 3px solid #1d6fa5; outline-offset: 2px; }
button:disabled, .disabled-action { cursor: not-allowed; opacity: .55; }
.sr-status { min-height: 1.4em; margin: 10px 0; color: #9b2c2c; font-weight: 600; }
.empty-state { padding: 32px 20px; text-align: center; border: 1px dashed #b9c9d8; border-radius: 10px; color: #536b82; background: #f8fafc; }
.empty-state h2 { margin: 0 0 8px; color: #17324d; font-size: 18px; }
.form-page-nav { display:flex; align-items:center; justify-content:space-between; gap:12px; margin:18px 0; }
.form-page-nav .page-count { color:#536b82; font-size:13px; font-weight:600; }
@media (max-width: 640px) {
  body { overflow-x: hidden; }
  .topbar, .top-nav, .header, .toolbar { flex-wrap: wrap; gap: 8px; }
  .topbar .form-picker, .topbar-spacer { flex: 1 1 100%; min-width: 0; }
  .main, .page, .shell, .content, .workspace { width: 100%; max-width: 100%; padding-left: 12px; padding-right: 12px; }
  .stat-row { grid-template-columns: 1fr !important; }
  .card-actions { display: grid !important; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; }
  .card-actions > * { width: 100%; text-align: center; }
  .table-wrap { overflow-x: auto; -webkit-overflow-scrolling: touch; }
  table { min-width: 640px; }
  .submission-toolbar { display: grid; grid-template-columns: 1fr auto; gap: 8px; }
  .submission-toolbar .search-box { min-width: 0; }
  .public-url-panel { overflow-wrap: anywhere; }
  .public-url-link { display: block; line-height: 1.4; }
  .form-actions, .builder-actions { flex-wrap: wrap; }
  .form-actions > *, .builder-actions > * { flex: 1 1 100%; }
}
