/* Studio OS — small custom layer over Pico.css */
.narrow { max-width: 34rem; margin: 0 auto; }
.right { text-align: right; }
.brand { text-decoration: none; }

.admin-nav { padding-top: 0; }
.admin-nav ul { flex-wrap: wrap; }
.admin-nav a { font-size: 0.85rem; padding: 0.2rem 0.5rem; }

.flash {
  padding: 0.6rem 1rem;
  border-left: 5px solid var(--pico-primary, #4f7cac);
  background: var(--pico-card-background-color, #fff);
  margin-bottom: 1rem;
}
.flash.error { border-left-color: #c0392b; }

.class-row { padding: 0.6rem 1rem; margin-bottom: 0.5rem; }
.class-row .grid { align-items: center; margin: 0; }
.class-row.cancelled { opacity: 0.5; }
.day-header { margin: 1.2rem 0 0.4rem; }

.inline-form { display: inline; margin: 0; }
.inline-form button, button.slim, a[role="button"].slim {
  padding: 0.15rem 0.6rem; font-size: 0.85rem; width: auto; margin: 0;
}
.slim-select { display: inline-block; width: auto; padding: 0.15rem 1.4rem 0.15rem 0.4rem; font-size: 0.85rem; margin: 0; }
.slim-row { margin: 0.25rem 0; }

.waiver-box {
  max-height: 16rem; overflow-y: auto; padding: 0.5rem 1rem;
  border: 1px solid var(--pico-muted-border-color, #ccc); border-radius: 6px;
  font-size: 0.9rem; margin-bottom: 0.6rem;
}
.filters select { margin-bottom: 0.3rem; }

@media (max-width: 640px) {
  .class-row .grid { grid-template-columns: 1fr; }
  .right { text-align: left; }
}
