  body { font-family: system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,sans-serif; margin: 2rem; }
  .controls { display:flex; gap:.75rem; margin-bottom:1rem; flex-wrap:wrap; }
  input[type="search"] { padding:.5rem .75rem; font-size:1rem; width:min(420px,100%); }
  table { width:100%; border-collapse: collapse; }
  th, td { padding:.55rem .6rem; border-bottom:1px solid #e5e7eb; vertical-align:top; }
  th { position: sticky; top:0; background:#fff; cursor: pointer; text-align:left; }
  td.sortkey, th.sortkey { display:none; }
  #backTop { position:fixed; right:1rem; bottom:1rem; padding:.6rem .9rem; border:1px solid #e5e7eb; border-radius:999px; background:#fff; box-shadow:0 4px 14px rgba(0,0,0,.08); font-weight:600; }
/* Base font sizing: 1rem scales everywhere */
html { font-size: 16px; }
html.font-lg { font-size: 18px; } /* bump everything ~12.5% */

/* Keep the controls tidy */
.controls { display:flex; gap:.75rem; margin-bottom:1rem; flex-wrap:wrap; }

/* Toggle button look */
#fontToggle {
  padding:.5rem .75rem;
  border:1px solid #e5e7eb;
  border-radius:10px;
  background:#fff;
  font-weight:600;
  line-height:1;
}
#fontToggle[aria-pressed="true"] { background:#f3f4f6; }
/* Optional: slight background on hover for Artist cells */
#shows tbody tr td:nth-child(3):hover { background: #fafafa; }
/* Subtle floating row delete button */
#rowDeleteBtn {
  position: absolute;
  z-index: 1000;
  display: none;
  padding: 0 .4rem;
  font-size: .7rem;          /* smaller font */
  line-height: 1.2;
  border: 1px solid #e5e7eb;
  border-radius: 6px;
  background: #fafafa;
  color: #991b1b;            /* dark red text */
  opacity: 0.7;
  box-shadow: 0 2px 6px rgba(0,0,0,.06);
  cursor: pointer;
  user-select: none;
  transition: background .15s, opacity .15s;
}
#rowDeleteBtn:hover {
  background: #fee2e2;
  opacity: 1;
}
#addRowForm label { display:flex; flex-direction:column; font-size:.9rem; }
#addRowForm input { padding:.35rem .5rem; min-width:14ch; }
#toggleAddForm { padding:.45rem .7rem; border:1px solid #e5e7eb; border-radius:8px; background:#fff;
}
/* Inline row delete button (inside Venue cell) */
.rowDelBtn {
  visibility: hidden;
  display: inline-block;
  margin-left: .5rem;
  padding: 0 .35rem;
  font-size: .72rem;
  line-height: 1.3;
  border: 1px solid #e5e7eb;
  border-radius: 6px;
  background: #fafafa;
  color: #991b1b;
  opacity: .8;
  cursor: pointer;
  user-select: none;
}
#shows tbody tr:hover .rowDelBtn { visibility: visible; }
.rowDelBtn:hover { background:#fee2e2; opacity: 1; }

/* Undo toast */
#undoToast {
  position: fixed;
  left: 50%;
  bottom: 1rem;
  transform: translateX(-50%);
  background: #111827;
  color: #fff;
  padding: .5rem .75rem;
  border-radius: 999px;
  box-shadow: 0 6px 18px rgba(0,0,0,.2);
  display: none;
  gap: .5rem;
  align-items: center;
  font-size: .9rem;
  z-index: 2000;
}
#undoToast button {
  border: 1px solid #374151;
  background: #1f2937;
  color: #fff;
  border-radius: 999px;
  padding: .25rem .6rem;
  cursor: pointer;
}
#undoToast button:hover { background:#374151; }