/* SchoolDay v227. */

/* --- The body map, traced from the school's reference diagram -----------
   The figures are line art, so the outline path is FILLED with fill-rule
   evenodd rather than stroked: the trace captured the ink itself, and the
   holes in that ink are what make it read as lines. */
.body-map-canvas-v213 .body-fill-v227 { fill: #fff; }
.body-map-canvas-v213 .body-outline-v227 { fill: #1b2836; fill-rule: evenodd; }
.body-map-canvas-v213 .body-mark-v227 {
  fill: none;
  stroke: #d72828;
  stroke-width: 14;
  stroke-linecap: round;
  stroke-linejoin: round;
  opacity: .78;
}
.body-map-canvas-v213 .body-label-v227 {
  font-family: inherit;
  font-size: 26px;
  font-weight: 600;
  fill: #1b2836;
}
/* The new map is wider than it is tall, unlike the old square one, so it needs
   its own width rather than the 620px cap the v214 rule sets. */
.body-map-canvas-v213 svg { max-width: 760px !important; }
.body-map-preview-v213 .body-fill-v227 { fill: #fff; }
.body-map-preview-v213 .body-outline-v227 { fill: #1b2836; fill-rule: evenodd; }
.body-map-preview-v213 .body-mark-v227 {
  fill: none; stroke: #d72828; stroke-width: 14;
  stroke-linecap: round; stroke-linejoin: round; opacity: .78;
}
.body-map-preview-v213 .body-label-v227 { font-family: inherit; font-size: 26px; font-weight: 600; fill: #1b2836; }

/* --- Subject cards: Edit, Copy and Archive side by side ----------------- */
.subject-card-actions-v219 { flex-direction: row !important; flex-wrap: wrap; align-items: flex-start; }
@media (max-width: 900px) {
  .subject-card-v219 { grid-template-areas: "title" "grades" "milestones" "actions" !important; grid-template-columns: 1fr !important; }
  .subject-card-actions-v219 { flex-direction: row !important; }
}

/* --- Manage Users: permissions grouped like the sidebar ----------------- */
.permission-group-v227 { margin-bottom: .9rem; }
.permission-group-v227 > h5 {
  margin: 0 0 .35rem;
  font-size: .78rem;
  text-transform: uppercase;
  letter-spacing: .04em;
  color: #64748b;
  border-bottom: 1px solid #e2e8f0;
  padding-bottom: .2rem;
}

/* --- Register: per-pupil actions ---------------------------------------- */
.register-actions-v227 {
  display: flex;
  flex-wrap: wrap;
  gap: .3rem;
  margin-top: .35rem;
}
.register-action-v227 {
  padding: .26rem .5rem !important;
  font-size: .72rem !important;
  min-height: 0 !important;
}
.register-action-panel-v227 { width: min(1000px, 96vw); }
.register-action-body-v227 { min-height: 12rem; }
/* The borrowed panel arrives with the workspace's own hidden state and
   spacing; inside the sub-window it is the only thing on screen. */
.register-action-body-v227 > .pupil-panel-v213 { display: block !important; padding: 0; }
.register-action-body-v227 > .pupil-panel-v213.hidden { display: block !important; }
body.register-action-open-v227 { overflow: hidden; }
@media (max-width: 640px) {
  .register-actions-v227 { gap: .25rem; }
  .register-action-v227 { flex: 1 1 auto; }
}

/* The traced map is wider than it is tall, unlike the old square one, so the
   27rem minimum the v213 rule sets leaves a band of empty box beneath it. */
.body-map-canvas-v213 { min-height: 0 !important; }
.body-map-canvas-v213 svg { margin: 0 auto; }
