:root {
  --green: #0b7a34;
  --green-dark: #105a31;
  --green-light: #e9f6ee;
  --warm: #faf7f1;
  --warm-line: #efe6d8;
  --ink: #163226;
  --muted: #5d7067;
  --line: #dce9e1;
  --white: #ffffff;
  --soft: #f7fbf8;
  --shadow: 0 18px 42px rgba(16, 90, 49, 0.1);
  --carecheck-ready-font: "Quicksand", Arial, Helvetica, sans-serif;
}

* {
  box-sizing: border-box;
}

body {
  margin: 0;
  color: var(--ink);
  background: var(--white);
  font-family: var(--carecheck-ready-font);
  font-weight: 500;
  line-height: 1.6;
}

img {
  display: block;
  max-width: 100%;
}

a {
  color: inherit;
}

.site-header {
  position: sticky;
  top: 0;
  z-index: 10;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  padding: 18px clamp(20px, 5vw, 72px);
  background: rgba(255, 255, 255, 0.94);
  border-bottom: 1px solid var(--line);
  backdrop-filter: blur(12px);
}

.brand {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  min-width: max-content;
  text-decoration: none;
}

.brand-mark {
  display: grid;
  width: 42px;
  height: 42px;
  place-items: center;
  border-radius: 14px;
  color: var(--white);
  background: var(--green);
  font-weight: 800;
}

.brand strong,
.brand small {
  display: block;
  line-height: 1.1;
}

.brand small {
  color: var(--muted);
  font-size: 0.78rem;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}

.site-nav {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 4px;
  flex-wrap: wrap;
  max-width: 980px;
}

.site-nav a {
  padding: 8px 10px;
  border-radius: 999px;
  color: var(--muted);
  font-size: 0.82rem;
  font-weight: 700;
  text-decoration: none;
}

.site-nav a:hover,
.site-nav a[aria-current="page"] {
  color: var(--green-dark);
  background: var(--green-light);
}

.nav-toggle {
  display: none;
  width: 44px;
  height: 44px;
  border: 1px solid var(--line);
  border-radius: 12px;
  background: var(--white);
}

.nav-toggle span {
  display: block;
  width: 20px;
  height: 2px;
  margin: 4px auto;
  background: var(--ink);
}

.hero,
.page-hero,
.contact-layout,
.section,
.site-footer {
  width: min(1160px, calc(100% - 40px));
  margin-inline: auto;
}

.hero {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(340px, 0.85fr);
  gap: clamp(32px, 6vw, 72px);
  align-items: center;
  padding: clamp(56px, 8vw, 108px) 0 64px;
}

.hero h1,
.page-hero h1,
.contact-layout h1 {
  margin: 0;
  max-width: 820px;
  font-size: clamp(2.4rem, 6vw, 5rem);
  line-height: 1.02;
}

.hero-subheading,
.page-hero p,
.contact-layout p,
.section-heading p,
.split-section p {
  color: var(--muted);
  font-size: 1.08rem;
}

.hero-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 14px;
  margin-top: 30px;
}

.button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 46px;
  padding: 12px 18px;
  border: 1px solid transparent;
  border-radius: 999px;
  font-weight: 800;
  text-decoration: none;
}

.button-primary {
  color: var(--white);
  background: var(--green);
}

.button-primary:hover {
  background: var(--green-dark);
}

.button-secondary {
  color: var(--green-dark);
  border-color: var(--line);
  background: var(--white);
}

.hero-media img,
.page-hero img {
  width: 100%;
  border: 1px solid var(--line);
  border-radius: 28px;
  box-shadow: var(--shadow);
}

.eyebrow {
  margin: 0 0 14px;
  color: var(--green);
  font-size: 0.8rem;
  font-weight: 900;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}

.section {
  padding: 70px 0;
}

.section-soft {
  width: 100%;
  padding-inline: max(20px, calc((100vw - 1160px) / 2));
  background: var(--warm);
  border-block: 1px solid var(--warm-line);
}

.section-heading {
  max-width: 720px;
  margin-bottom: 32px;
}

.section h2,
.section-heading h2,
.split-section h2 {
  margin: 0;
  font-size: clamp(1.8rem, 4vw, 3rem);
  line-height: 1.12;
}

.feature-grid,
.product-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 20px;
}

.nav-card-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 16px;
}

.creator-grid,
.division-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 20px;
}

.product-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.concept-card {
  display: grid;
  align-content: start;
  gap: 10px;
}

.status-row {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-bottom: 6px;
}

.status-row span {
  display: inline-flex;
  align-items: center;
  min-height: 28px;
  padding: 6px 10px;
  border-radius: 999px;
  color: var(--green-dark);
  background: var(--green-light);
  font-size: 0.74rem;
  font-weight: 900;
}

.detail-stack {
  display: grid;
  gap: 18px;
}

.card,
.product-card,
.studio-card,
.division-card,
.detail-card,
.check-panel,
.contact-form,
.contact-note {
  border: 1px solid var(--line);
  border-radius: 24px;
  background: var(--white);
  box-shadow: 0 12px 26px rgba(16, 90, 49, 0.06);
}

.card,
.product-card,
.studio-card,
.detail-card {
  padding: 22px;
}

.detail-card {
  scroll-margin-top: 110px;
}

.studio-card {
  display: grid;
  align-content: start;
  min-height: 220px;
  background:
    linear-gradient(135deg, rgba(233, 246, 238, 0.9), rgba(255, 255, 255, 0.95)),
    var(--white);
}

.studio-card span {
  display: grid;
  width: 46px;
  height: 46px;
  place-items: center;
  margin-bottom: 24px;
  border-radius: 16px;
  color: var(--green-dark);
  background: var(--green-light);
  font-weight: 900;
}

.division-card {
  overflow: hidden;
  background: var(--white);
}

.division-card img {
  width: 100%;
  aspect-ratio: 16 / 9;
  object-fit: cover;
  border-bottom: 1px solid var(--line);
}

.division-card div {
  padding: 22px;
}

.card img {
  width: 100%;
  aspect-ratio: 16 / 10;
  object-fit: cover;
  margin-bottom: 20px;
  border-radius: 18px;
}

.card h2,
.card h3,
.product-card h2,
.studio-card h3,
.division-card h3,
.detail-card h2,
.check-panel h3 {
  margin: 0 0 10px;
  line-height: 1.2;
}

.card p,
.product-card p,
.studio-card p,
.division-card p,
.detail-card p {
  color: var(--muted);
}

.card a,
.product-card a,
.division-card a {
  color: var(--green-dark);
  font-weight: 800;
  text-decoration: none;
}

.page-cta {
  margin-top: 28px;
}

.page-summary {
  max-width: 720px;
}

.affiliate-disclosure {
  display: inline-flex;
  max-width: 720px;
  margin-top: 8px;
  padding: 12px 16px;
  border: 1px solid var(--warm-line);
  border-radius: 16px;
  color: var(--ink);
  background: var(--white);
  font-weight: 800;
}

.split-section {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(300px, 0.65fr);
  gap: 34px;
  align-items: center;
}

.check-panel {
  padding: 28px;
  background: var(--green-light);
}

.check-list {
  display: grid;
  gap: 12px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.check-list li {
  position: relative;
  padding-left: 28px;
}

.check-list li::before {
  position: absolute;
  left: 0;
  top: 3px;
  content: "";
  width: 9px;
  height: 16px;
  border: solid var(--green);
  border-width: 0 3px 3px 0;
  transform: rotate(45deg);
}

.page-hero {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(320px, 0.8fr);
  gap: 44px;
  align-items: center;
  padding: 72px 0 42px;
}

.contact-layout {
  display: grid;
  grid-template-columns: minmax(0, 0.85fr) minmax(320px, 1fr);
  gap: 44px;
  align-items: start;
  padding: 72px 0;
}

.contact-note,
.contact-form {
  padding: 26px;
}

.contact-note {
  margin-top: 26px;
  background: var(--green-light);
}

.contact-form {
  display: grid;
  gap: 16px;
}

.contact-form label {
  display: grid;
  gap: 7px;
  color: var(--ink);
  font-weight: 800;
}

.contact-form input,
.contact-form textarea,
.ready-labels-form input,
.ready-labels-form select {
  width: 100%;
  border: 1px solid var(--line);
  border-radius: 16px;
  padding: 12px 14px;
  color: var(--ink);
  font: inherit;
}

.contact-form textarea {
  resize: vertical;
}

.ready-labels-section {
  padding-top: 76px;
}

.ready-labels-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(320px, 0.68fr);
  gap: 24px;
  align-items: start;
}

.ready-labels-form,
.child-profile-card {
  border: 1px solid var(--line);
  border-radius: 24px;
  background: var(--white);
  box-shadow: 0 12px 26px rgba(16, 90, 49, 0.06);
}

.ready-labels-form {
  display: grid;
  gap: 18px;
  padding: 26px;
}

.ready-labels-form label,
.label-type-fieldset legend {
  color: var(--ink);
  font-weight: 800;
}

.ready-labels-form label {
  display: grid;
  gap: 7px;
}

.ready-labels-form input:focus,
.ready-labels-form select:focus {
  border-color: var(--green);
  box-shadow: 0 0 0 4px rgba(11, 122, 52, 0.12);
  outline: none;
}

.label-type-fieldset {
  margin: 0;
  padding: 0;
  border: 0;
}

.label-type-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
  margin-top: 10px;
}

.label-type-option {
  display: flex !important;
  grid-template-columns: none;
  align-items: center;
  gap: 8px !important;
  min-height: 44px;
  padding: 10px 12px;
  border: 1px solid var(--line);
  border-radius: 14px;
  background: var(--soft);
  color: var(--ink);
  font-weight: 800;
}

.label-type-option input {
  width: 18px;
  height: 18px;
  accent-color: var(--green);
}

.child-profile-card {
  position: sticky;
  top: 112px;
  overflow: hidden;
  padding: 24px;
}

.profile-photo-frame {
  display: grid;
  width: 100%;
  aspect-ratio: 4 / 3;
  place-items: center;
  margin-bottom: 22px;
  overflow: hidden;
  border: 1px dashed rgba(11, 122, 52, 0.45);
  border-radius: 20px;
  color: var(--green-dark);
  background: var(--green-light);
  font-weight: 900;
}

.profile-photo-frame img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.child-profile-card h3 {
  margin: 0 0 18px;
  color: var(--green-dark);
  font-size: 2rem;
  line-height: 1.1;
}

.child-profile-card dl {
  display: grid;
  gap: 12px;
  margin: 0;
}

.child-profile-card dl div {
  display: flex;
  justify-content: space-between;
  gap: 16px;
  padding-bottom: 12px;
  border-bottom: 1px solid var(--line);
}

.child-profile-card dt {
  color: var(--muted);
  font-size: 0.78rem;
  font-weight: 900;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.child-profile-card dd {
  margin: 0;
  color: var(--ink);
  font-weight: 900;
  text-align: right;
}

.profile-label-types {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 18px;
}

.profile-label-types span {
  display: inline-flex;
  align-items: center;
  min-height: 30px;
  padding: 6px 10px;
  border-radius: 999px;
  color: var(--green-dark);
  background: var(--green-light);
  font-size: 0.78rem;
  font-weight: 900;
}

.site-footer {
  display: grid;
  gap: 18px;
  padding: 34px 0;
  border-top: 1px solid var(--line);
}

.site-footer-main {
  display: flex;
  justify-content: space-between;
  gap: 24px;
  align-items: flex-start;
}

.site-footer p {
  margin: 6px 0 0;
  color: var(--muted);
}

.site-footer a {
  color: var(--green-dark);
  font-weight: 800;
  text-decoration: none;
}

.site-footer-links {
  display: flex;
  flex-wrap: wrap;
  gap: 10px 16px;
  justify-content: flex-end;
}

.site-footer-disclaimer,
.site-footer-trademark,
.site-footer-copyright {
  max-width: 980px;
  font-size: 0.88rem;
}

.site-footer-copyright {
  color: var(--ink) !important;
  font-weight: 700;
}

.development-banner,
.legal-card {
  width: min(1160px, calc(100% - 40px));
  margin: 26px auto 0;
  padding: clamp(22px, 4vw, 34px);
  border: 1px solid rgba(11, 122, 52, 0.18);
  border-radius: 24px;
  background: var(--soft);
  box-shadow: 0 14px 32px rgba(16, 90, 49, 0.07);
}

.development-banner h2,
.development-banner p,
.legal-card h2,
.legal-card h3,
.legal-card p {
  margin-top: 0;
}

.development-banner h2 {
  margin-bottom: 10px;
  color: var(--green-dark);
  font-size: clamp(1.45rem, 3vw, 2.15rem);
  line-height: 1.12;
}

.development-banner-disclaimer {
  margin-top: 14px !important;
  padding-top: 14px;
  border-top: 1px solid rgba(11, 122, 52, 0.16);
  color: var(--muted);
  font-size: 0.95rem;
}

.concept-status-card {
  display: grid;
  gap: 14px;
}

.concept-status-card .status-row {
  margin-bottom: 2px;
}

.concept-status-card h2,
.concept-status-card h3 {
  margin: 0;
}

.concept-status-card p {
  margin: 0;
}

.concept-disclaimer {
  padding-top: 14px;
  border-top: 1px solid rgba(11, 122, 52, 0.14);
  color: var(--muted);
  font-size: 0.93rem;
}

.legal-card {
  display: grid;
  gap: 20px;
  margin-bottom: 70px;
  background: var(--white);
}

.legal-card section {
  display: grid;
  gap: 8px;
}

.legal-card h2,
.legal-card h3 {
  color: var(--green-dark);
  line-height: 1.15;
}

.legal-card h2 {
  font-size: clamp(1.7rem, 3vw, 2.4rem);
}

.legal-card h3 {
  margin-bottom: 0;
  font-size: 1.1rem;
}

.legal-card p,
.legal-card li {
  color: var(--muted);
}

.legal-card ul {
  margin: 0;
  padding-left: 22px;
}

@media (max-width: 1100px) {
  .site-header {
    align-items: flex-start;
  }

  .nav-toggle {
    display: block;
  }

  .site-nav {
    position: absolute;
    inset: 78px 20px auto 20px;
    display: none;
    flex-direction: column;
    align-items: stretch;
    padding: 14px;
    border: 1px solid var(--line);
    border-radius: 18px;
    background: var(--white);
    box-shadow: var(--shadow);
  }

  .site-nav.is-open {
    display: flex;
  }

  .hero,
  .page-hero,
  .contact-layout,
  .split-section,
  .ready-labels-layout {
    grid-template-columns: 1fr;
  }

  .child-profile-card {
    position: static;
  }

  .feature-grid,
  .product-grid,
  .nav-card-grid,
  .creator-grid,
  .division-grid {
    grid-template-columns: 1fr;
  }

  .hero {
    padding-top: 48px;
  }
}

@media (max-width: 620px) {
  .hero,
  .page-hero,
  .contact-layout,
  .section,
  .site-footer {
    width: min(100% - 28px, 1160px);
  }

  .hero h1,
  .page-hero h1,
  .contact-layout h1 {
    font-size: 2.25rem;
  }

  .site-footer {
    gap: 20px;
  }

  .site-footer-main,
  .site-footer-links {
    flex-direction: column;
    align-items: flex-start;
    justify-content: flex-start;
  }

  .label-type-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .ready-labels-form,
  .child-profile-card {
    padding: 20px;
  }
}

.labels-app-body {
  min-height: 100vh;
  background: linear-gradient(180deg, #f6fbf8 0%, #ffffff 44%);
}

.labels-app-root {
  min-height: 100vh;
}

.labels-app-shell {
  width: min(1240px, calc(100% - 32px));
  margin-inline: auto;
  padding: 22px 0 48px;
}

.labels-app-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  margin-bottom: 22px;
  padding: 16px 18px;
  border: 1px solid var(--line);
  border-radius: 24px;
  background: rgba(255, 255, 255, 0.96);
  box-shadow: 0 12px 28px rgba(16, 90, 49, 0.08);
}

.labels-brand {
  display: inline-flex;
  align-items: center;
  gap: 12px;
}

.labels-brand-mark {
  display: grid;
  width: 42px;
  height: 42px;
  place-items: center;
  border-radius: 14px;
  color: var(--white);
  background: var(--green);
  font-weight: 900;
}

.labels-brand strong,
.labels-brand small {
  display: block;
  line-height: 1.1;
}

.labels-brand small {
  color: var(--muted);
  font-size: 0.78rem;
  font-weight: 900;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.print-button {
  min-height: 46px;
  padding: 12px 18px;
  border: 0;
  border-radius: 999px;
  color: var(--white);
  background: var(--green);
  font: inherit;
  font-weight: 900;
  cursor: pointer;
}

.print-button:hover {
  background: var(--green-dark);
}

.print-button:disabled {
  cursor: not-allowed;
  opacity: 0.55;
}

.labels-workspace {
  display: grid;
  grid-template-columns: minmax(300px, 420px) minmax(0, 1fr);
  gap: 22px;
  align-items: start;
}

.labels-app-shell .ready-labels-form,
.label-preview-panel {
  border: 1px solid var(--line);
  border-radius: 24px;
  background: var(--white);
  box-shadow: 0 12px 26px rgba(16, 90, 49, 0.06);
}

.labels-app-shell .ready-labels-form {
  position: sticky;
  top: 18px;
  gap: 16px;
  padding: 24px;
}

.labels-app-shell .ready-labels-form h1 {
  margin: 0;
  color: var(--green-dark);
  font-size: 2rem;
  line-height: 1.1;
}

.labels-app-shell .ready-labels-form input,
.labels-app-shell .ready-labels-form select {
  background: var(--white);
}

.labels-app-shell .ready-labels-form input[type="file"] {
  padding: 10px;
}

.photo-upload-preview {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 10px;
  border: 1px dashed rgba(11, 122, 52, 0.38);
  border-radius: 18px;
  background: var(--green-light);
  color: var(--green-dark);
  font-weight: 900;
}

.photo-preview-thumb,
.label-photo {
  display: grid;
  flex: 0 0 auto;
  place-items: center;
  overflow: hidden;
  color: var(--green-dark);
  background: #dff2e6;
  font-weight: 900;
}

.photo-preview-thumb {
  width: 58px;
  height: 58px;
  border-radius: 16px;
}

.photo-preview-thumb img,
.label-photo img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.labels-app-shell .label-type-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.labels-app-shell .label-type-option {
  background: #fbfdfc;
}

.label-preview-panel {
  padding: 24px;
}

.preview-panel-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  margin-bottom: 18px;
}

.preview-panel-header h2,
.preview-panel-header p {
  margin: 0;
}

.preview-panel-header h2 {
  color: var(--green-dark);
  font-size: 1.55rem;
  line-height: 1.15;
}

.preview-panel-header p {
  color: var(--muted);
  font-weight: 800;
}

.preview-panel-header > span {
  min-width: max-content;
  padding: 8px 12px;
  border-radius: 999px;
  color: var(--green-dark);
  background: var(--green-light);
  font-size: 0.82rem;
  font-weight: 900;
}

.label-sheet {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(260px, 1fr));
  gap: 14px;
  padding: 18px;
  border: 1px solid var(--line);
  border-radius: 20px;
  background: #f7fbf8;
}

.ready-label-preview {
  display: grid;
  grid-template-columns: 74px minmax(0, 1fr);
  gap: 12px;
  align-items: center;
  min-height: 132px;
  padding: 14px;
  border: 2px solid rgba(11, 122, 52, 0.24);
  border-radius: 12px;
  background: var(--white);
  break-inside: avoid;
}

.ready-label-preview[data-size="2x4"] {
  aspect-ratio: 2 / 1;
}

.ready-label-preview[data-size="3x5"] {
  aspect-ratio: 5 / 3;
}

.ready-label-preview[data-size="3x3.75 Avery 6874"] {
  aspect-ratio: 3.75 / 3;
}

.label-photo {
  width: 74px;
  height: 74px;
  border: 2px solid var(--green-light);
  border-radius: 18px;
  font-size: 1.2rem;
}

.label-copy {
  min-width: 0;
}

.label-type-name,
.label-classroom,
.label-size-note {
  margin: 0;
}

.label-type-name {
  color: var(--green);
  font-size: 0.76rem;
  font-weight: 900;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}

.label-copy h2 {
  margin: 3px 0;
  color: var(--ink);
  font-size: 1.5rem;
  line-height: 1.05;
  overflow-wrap: anywhere;
}

.label-classroom {
  color: var(--muted);
  font-weight: 900;
}

.label-size-note {
  margin-top: 6px;
  color: #789187;
  font-size: 0.72rem;
  font-weight: 800;
}

.empty-label-state {
  display: grid;
  min-height: 220px;
  place-items: center;
  color: var(--muted);
  font-weight: 900;
}

@media (max-width: 920px) {
  .labels-workspace {
    grid-template-columns: 1fr;
  }

  .labels-app-shell .ready-labels-form {
    position: static;
  }
}

@media (max-width: 560px) {
  .labels-app-shell {
    width: min(100% - 24px, 1240px);
    padding-top: 12px;
  }

  .labels-app-header,
  .preview-panel-header {
    align-items: stretch;
    flex-direction: column;
  }

  .print-button {
    width: 100%;
  }

  .labels-app-shell .label-type-grid {
    grid-template-columns: 1fr;
  }

  .label-preview-panel,
  .labels-app-shell .ready-labels-form {
    padding: 18px;
  }

  .label-sheet {
    grid-template-columns: 1fr;
    padding: 12px;
  }

  .ready-label-preview {
    grid-template-columns: 62px minmax(0, 1fr);
  }

  .label-photo {
    width: 62px;
    height: 62px;
  }

  .label-copy h2 {
    font-size: 1.25rem;
  }
}

@media print {
  @page {
    margin: 0.35in;
  }

  body {
    background: var(--white);
  }

  body * {
    visibility: hidden;
  }

  .label-preview-panel,
  .label-preview-panel * {
    visibility: visible;
  }

  .labels-app-shell,
  .labels-workspace,
  .label-preview-panel {
    display: block;
    width: auto;
    margin: 0;
    padding: 0;
    border: 0;
    box-shadow: none;
  }

  .labels-app-header,
  .ready-labels-form,
  .preview-panel-header {
    display: none;
  }

  .label-sheet {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 0.15in;
    padding: 0;
    border: 0;
    background: var(--white);
  }

  .ready-label-preview {
    page-break-inside: avoid;
    border-color: #0b7a34;
    box-shadow: none;
  }
}

.child-profile-app {
  width: min(1180px, calc(100% - 32px));
  margin-inline: auto;
  padding: 24px 0 48px;
}

.child-profile-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 22px;
  padding: 16px 18px;
  border: 1px solid var(--line);
  border-radius: 22px;
  background: rgba(255, 255, 255, 0.96);
  box-shadow: 0 12px 28px rgba(16, 90, 49, 0.08);
}

.child-profile-brand {
  display: inline-flex;
  align-items: center;
  gap: 12px;
}

.child-profile-brand-mark {
  display: grid;
  width: 42px;
  height: 42px;
  place-items: center;
  border-radius: 14px;
  color: var(--white);
  background: var(--green);
  font-weight: 900;
}

.child-profile-brand strong,
.child-profile-brand small {
  display: block;
  line-height: 1.1;
}

.child-profile-brand small {
  color: var(--muted);
  font-size: 0.78rem;
  font-weight: 900;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.child-profile-workspace {
  display: grid;
  grid-template-columns: minmax(300px, 430px) minmax(0, 1fr);
  gap: 24px;
  align-items: start;
}

.child-profile-form,
.child-profile-card {
  border: 1px solid var(--line);
  border-radius: 24px;
  background: var(--white);
  box-shadow: 0 12px 26px rgba(16, 90, 49, 0.06);
}

.child-profile-form {
  display: grid;
  gap: 16px;
  padding: 24px;
}

.child-profile-form h1 {
  margin: 0;
  color: var(--green-dark);
  font-size: 2rem;
  line-height: 1.1;
}

.child-profile-form label,
.child-label-fieldset legend {
  display: grid;
  gap: 7px;
  color: var(--ink);
  font-weight: 900;
}

.child-profile-form input,
.child-profile-form select {
  width: 100%;
  border: 1px solid var(--line);
  border-radius: 16px;
  padding: 12px 14px;
  color: var(--ink);
  background: var(--white);
  font: inherit;
}

.child-profile-form input[type="file"] {
  padding: 10px;
}

.child-profile-form input:focus,
.child-profile-form select:focus {
  border-color: var(--green);
  box-shadow: 0 0 0 4px rgba(11, 122, 52, 0.12);
  outline: none;
}

.child-photo-upload-preview {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 10px;
  border: 1px dashed rgba(11, 122, 52, 0.38);
  border-radius: 18px;
  background: var(--green-light);
  color: var(--green-dark);
  font-weight: 900;
}

.child-photo-thumb,
.child-profile-photo {
  display: grid;
  place-items: center;
  overflow: hidden;
  color: var(--green-dark);
  background: #dff2e6;
  font-weight: 900;
}

.child-photo-thumb {
  width: 58px;
  height: 58px;
  flex: 0 0 auto;
  border-radius: 16px;
}

.child-profile-photo {
  width: 100%;
  aspect-ratio: 4 / 3;
  margin-bottom: 22px;
  border: 1px dashed rgba(11, 122, 52, 0.38);
  border-radius: 22px;
  font-size: 2rem;
}

.child-photo-thumb img,
.child-profile-photo img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.child-label-fieldset {
  margin: 0;
  padding: 0;
  border: 0;
}

.child-label-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  margin-top: 10px;
}

.child-label-option {
  display: flex !important;
  align-items: center;
  gap: 9px !important;
  min-height: 44px;
  padding: 10px 12px;
  border: 1px solid var(--line);
  border-radius: 14px;
  background: #fbfdfc;
  color: var(--ink);
  font-weight: 900;
}

.child-label-option input {
  width: 18px;
  height: 18px;
  accent-color: var(--green);
}

.child-profile-card {
  position: static;
  overflow: hidden;
  padding: 26px;
}

.child-profile-eyebrow {
  margin: 0 0 8px;
  color: var(--green);
  font-size: 0.78rem;
  font-weight: 900;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}

.child-profile-card h2 {
  margin: 0 0 20px;
  color: var(--green-dark);
  font-size: clamp(2rem, 5vw, 3.15rem);
  line-height: 1;
  overflow-wrap: anywhere;
}

.child-profile-card dl {
  display: grid;
  gap: 12px;
  margin: 0;
}

.child-profile-card dl div {
  display: flex;
  justify-content: space-between;
  gap: 16px;
  padding-bottom: 12px;
  border-bottom: 1px solid var(--line);
}

.child-profile-card dt {
  color: var(--muted);
  font-size: 0.78rem;
  font-weight: 900;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.child-profile-card dd {
  margin: 0;
  color: var(--ink);
  font-weight: 900;
  text-align: right;
}

.child-profile-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 18px;
}

.child-profile-tags span {
  display: inline-flex;
  align-items: center;
  min-height: 32px;
  padding: 7px 11px;
  border-radius: 999px;
  color: var(--green-dark);
  background: var(--green-light);
  font-size: 0.82rem;
  font-weight: 900;
}

@media (max-width: 900px) {
  .child-profile-workspace {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 560px) {
  .child-profile-app {
    width: min(100% - 24px, 1180px);
    padding-top: 12px;
  }

  .child-profile-form,
  .child-profile-card {
    padding: 18px;
  }

  .child-label-grid {
    grid-template-columns: 1fr;
  }

  .child-profile-card dl div {
    display: grid;
    gap: 4px;
  }

  .child-profile-card dd {
    text-align: left;
  }
}

.ready-app {
  width: min(1240px, calc(100% - 32px));
  margin-inline: auto;
  padding: 24px 0 48px;
  --ready-label-font: var(--carecheck-ready-font);
  font-family: var(--carecheck-ready-font);
  font-weight: 500;
  overflow-x: hidden;
}

.ready-app h1,
.ready-app h2,
.ready-app h3,
.ready-brand strong,
.ready-brand-mark,
.ready-section-tabs a,
.ready-section-tabs button,
.ready-panel-heading > span,
.ready-checkbox-card,
.feeding-feature-heading > span,
.ready-print-button,
.classroom-label-card p,
.community-label-card h3,
.bottle-label-topline span,
.bottle-label-topline strong {
  font-weight: 700;
}

.ready-app small,
.ready-brand small,
.ready-panel-note,
.ready-photo-status,
.ready-child-card dt,
.ready-child-card dd,
.classroom-label-card small,
.community-label-note,
.bottle-label-preview p,
.bottle-label-preview small,
.parent-write-line span,
.parent-check-line strong,
.parent-weekday-row span {
  font-weight: 500;
}

.ready-header {
  display: grid;
  grid-template-columns: minmax(220px, 1fr) auto;
  gap: 18px;
  align-items: center;
  margin-bottom: 22px;
  padding: 16px 18px;
  border: 1px solid var(--line);
  border-radius: 22px;
  background: rgba(255, 255, 255, 0.96);
  box-shadow: 0 12px 28px rgba(16, 90, 49, 0.08);
}

.ready-brand {
  display: inline-flex;
  align-items: center;
  gap: 12px;
}

.ready-brand-mark {
  display: grid;
  width: 42px;
  height: 42px;
  place-items: center;
  border-radius: 14px;
  color: var(--white);
  background: var(--green);
  font-weight: 900;
}

.ready-brand strong,
.ready-brand small {
  display: block;
  line-height: 1.1;
}

.ready-brand small {
  color: var(--muted);
  font-size: 0.78rem;
  font-weight: 900;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.ready-section-tabs {
  display: inline-flex;
  gap: 8px;
  padding: 5px;
  border: 1px solid var(--line);
  border-radius: 10px;
  background: #f8faf9;
}

.ready-section-tabs button {
  min-height: 40px;
  padding: 9px 14px;
  border: 0;
  border-radius: 8px;
  color: var(--muted);
  background: transparent;
  font: inherit;
  font-weight: 900;
  cursor: pointer;
}

.ready-section-tabs a {
  display: inline-flex;
  min-height: 40px;
  align-items: center;
  padding: 9px 14px;
  border-radius: 999px;
  color: var(--muted);
  font-weight: 900;
  text-decoration: none;
}

.ready-section-tabs button.is-active {
  color: var(--white);
  background: var(--green);
}

.ready-product-panel[hidden] {
  display: none;
}

.ready-section-tabs a.is-active,
.ready-section-tabs a:hover {
  color: var(--white);
  background: var(--green);
}

.ready-workspace {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 14px;
  align-items: start;
}

.prototype-main-stack {
  display: grid;
  gap: 24px;
  min-width: 0;
}

.ready-profile-panel,
.ready-product-panel,
.feeding-field-card,
.classroom-label-card,
.bottle-label-preview {
  border: 1px solid var(--line);
  border-radius: 10px;
  background: var(--white);
  box-shadow: 0 8px 18px rgba(16, 90, 49, 0.05);
}

.ready-profile-panel,
.ready-product-panel {
  display: grid;
  gap: 16px;
  min-width: 0;
  padding: 24px;
}

.ready-profile-panel-compact {
  grid-template-columns: minmax(150px, 190px) minmax(0, 1fr);
  align-items: start;
  gap: 18px;
  padding: 18px;
}

.ready-profile-heading {
  display: grid;
  gap: 2px;
}

.ready-profile-fields {
  display: grid;
  grid-template-columns: repeat(4, minmax(190px, 1fr));
  align-items: start;
  gap: 14px;
}

.visually-hidden {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  white-space: nowrap !important;
  border: 0 !important;
}

.ready-profile-panel h1,
.ready-panel-heading h2 {
  margin: 0;
  color: var(--green-dark);
  line-height: 1.1;
}

.ready-profile-panel h1 {
  font-size: 1.05rem;
}

.ready-panel-heading h2 {
  font-size: clamp(1.75rem, 4vw, 2.65rem);
}

.classroom-label-card,
.bottle-label-preview,
.feeding-sheet-page,
.health-label-card,
.community-label-card,
.community-pdf-render-root,
.picture-label {
  font-family: var(--ready-label-font, var(--carecheck-ready-font));
}

.ready-profile-panel label,
.ready-product-panel label,
.ready-fieldset legend,
.feeding-field-card label {
  display: grid;
  gap: 7px;
  color: var(--ink);
  font-weight: 900;
}

.ready-profile-panel input,
.ready-product-panel input,
.ready-product-panel select,
.feeding-field-card input {
  width: 100%;
  max-width: 100%;
  min-width: 0;
  border: 1px solid var(--line);
  border-radius: 16px;
  padding: 12px 14px;
  color: var(--ink);
  background: var(--white);
  font: inherit;
}

.ready-profile-panel-compact label {
  gap: 7px;
  font-size: 0.88rem;
}

.ready-profile-panel-compact input,
.ready-profile-panel-compact select {
  min-height: 46px;
  border-radius: 14px;
  padding: 10px 12px;
  font-size: 0.96rem;
}

.ready-profile-panel input[type="file"] {
  padding: 10px;
}

.ready-profile-panel-compact input[type="file"] {
  padding: 9px;
}

.mobile-font-picker {
  display: none;
}

.ready-photo-field {
  display: grid;
  grid-column: span 2;
  grid-template-columns: minmax(0, 1fr) 118px;
  gap: 7px 12px !important;
  align-self: start;
  align-items: start;
}

.ready-photo-field input {
  min-width: 0;
}

.ready-profile-panel input:focus,
.ready-product-panel input:focus,
.ready-product-panel select:focus {
  border-color: var(--green);
  box-shadow: 0 0 0 4px rgba(11, 122, 52, 0.12);
  outline: none;
}

.ready-photo-status {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 10px;
  border: 1px dashed rgba(11, 122, 52, 0.38);
  border-radius: 18px;
  background: var(--green-light);
  color: var(--green-dark);
  font-weight: 900;
}

.ready-profile-panel-compact .ready-photo-status {
  gap: 8px;
  padding: 8px;
  border-radius: 12px;
  font-size: 0.78rem;
  line-height: 1.25;
}

.ready-photo-thumb,
.ready-child-photo,
.mini-label-photo,
.sheet-label-photo,
.bottle-label-photo {
  display: grid;
  place-items: center;
  overflow: hidden;
  color: var(--green-dark);
  background: #eef1ef;
  font-weight: 500;
}

.ready-photo-thumb {
  width: 58px;
  height: 58px;
  flex: 0 0 auto;
  border-radius: 8px;
}

.ready-profile-panel-compact .ready-photo-thumb {
  grid-column: 2;
  grid-row: 1 / span 2;
  width: 108px;
  height: 108px;
  margin-top: 0;
  border: 1px dashed rgba(11, 122, 52, 0.38);
  border-radius: 10px;
}

.ready-child-photo {
  width: 100%;
  aspect-ratio: 1;
  margin-bottom: 16px;
  border: 1px dashed rgba(11, 122, 52, 0.38);
  border-radius: 8px;
  font-size: 1.1rem;
}

.ready-photo-thumb img,
.ready-child-photo img,
.mini-label-photo img,
.sheet-label-photo img,
.bottle-label-photo img,
.community-label-photo img,
.community-basket-photo img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: center;
}

[data-child-photo] span {
  color: var(--muted);
  font-size: 0.72rem;
  font-weight: 500;
}

[data-child-photo].has-photo {
  background: var(--white);
}

.ready-child-card {
  padding: 18px;
  border: 1px solid var(--line);
  border-radius: 20px;
  background: #fbfdfc;
}

.ready-eyebrow {
  margin: 0 0 8px;
  color: var(--green);
  font-size: 0.76rem;
  font-weight: 900;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}

.ready-child-card h2 {
  margin: 0 0 16px;
  color: var(--green-dark);
  font-size: 2rem;
  line-height: 1;
  overflow-wrap: anywhere;
}

.ready-child-card dl,
.bottle-label-details {
  display: grid;
  gap: 10px;
  margin: 0;
}

.ready-child-card dl div,
.bottle-label-details div {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  padding-bottom: 10px;
  border-bottom: 1px solid var(--line);
}

.ready-child-card dt,
.bottle-label-details dt {
  color: var(--muted);
  font-size: 0.74rem;
  font-weight: 900;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.ready-child-card dd,
.bottle-label-details dd {
  margin: 0;
  color: var(--ink);
  font-weight: 900;
  text-align: right;
}

.ready-panel-heading {
  display: flex;
  justify-content: space-between;
  gap: 16px;
  align-items: flex-start;
}

.ready-panel-heading > span {
  min-width: max-content;
  padding: 8px 12px;
  border-radius: 999px;
  color: var(--green-dark);
  background: var(--green-light);
  font-size: 0.82rem;
  font-weight: 900;
}

.ready-panel-note {
  margin: 0;
  color: var(--muted);
  font-weight: 800;
}

.ready-fieldset {
  margin: 0;
  padding: 0;
  border: 0;
}

.ready-checkbox-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
  margin-top: 10px;
}

.ready-checkbox-card {
  display: flex !important;
  align-items: center;
  gap: 9px !important;
  min-height: 38px;
  padding: 8px 10px;
  border: 1px solid var(--line);
  border-radius: 10px;
  background: #fbfdfc;
  color: var(--ink);
  font-size: 0.92rem;
  font-weight: 900;
}

.classroom-output-select-control {
  display: grid;
  gap: 8px;
  max-width: 360px;
  color: var(--ink);
  font-weight: 900;
}

.classroom-output-select-control select {
  min-height: 44px;
}

.feeding-label-type-fieldset .ready-checkbox-grid {
  grid-template-columns: repeat(auto-fit, minmax(190px, max-content));
}

.feeding-label-type-fieldset .ready-checkbox-card {
  min-width: 190px;
  white-space: nowrap;
}

.ready-checkbox-card input,
.feeding-check-row input {
  width: 18px;
  height: 18px;
  accent-color: var(--green);
}

.custom-label-type-control {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
  margin-top: 12px;
}

.custom-label-option {
  display: grid;
  grid-template-columns: 24px minmax(0, 1fr);
  gap: 9px;
  align-items: center;
  min-width: 0;
  min-height: 38px;
  padding: 8px 10px;
  border: 1px solid var(--line);
  border-radius: 10px;
  background: #fbfdfc;
  color: var(--ink);
  font-size: 0.92rem;
  font-weight: 900;
}

.custom-label-type-control > input {
  min-height: 42px;
}

.custom-label-option > input {
  min-height: 28px;
  padding: 4px 8px;
  border-radius: 999px;
  font-size: 0.92rem;
  font-weight: 700;
}

.custom-label-checkbox {
  width: 100%;
  min-height: 38px;
}

.custom-label-toggle-only {
  display: grid;
  width: 24px;
  min-height: 24px;
  place-items: center;
}

.classroom-template-row {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
  align-items: end;
}

.classroom-template-select-control {
  grid-column: span 2;
  min-width: 0;
}

.classroom-photo-option {
  min-height: 44px;
  align-self: end;
}

.classroom-label-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(230px, 1fr));
  gap: 12px;
}

.classroom-label-group {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 14px;
  min-width: 0;
  padding: 18px;
  border: 1px solid var(--line);
  border-radius: 22px;
  background: #fbfdfc;
}

.classroom-label-group > *,
.ready-fieldset {
  min-width: 0;
}

.classroom-group-heading h3,
.classroom-label-group > div > h3 {
  margin: 0;
  color: var(--green-dark);
  font-size: 1.35rem;
  line-height: 1.15;
}

.classroom-print-options {
  display: grid;
  grid-template-columns: max-content minmax(0, 1fr);
  gap: 14px;
  align-items: stretch;
  padding: 14px 16px;
  border: 1px solid var(--line);
  border-radius: 10px;
  background: #f8fbf9;
}

.classroom-print-options h4 {
  display: grid;
  align-items: center;
  margin: 0;
  color: var(--green-dark);
  font-size: 1rem;
}

.classroom-print-options ul {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  margin: 0;
  padding: 0;
  list-style: none;
  color: var(--ink);
  font-weight: 700;
}

.classroom-print-options li {
  display: grid;
  gap: 4px;
  padding: 12px 14px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: var(--white);
}

.classroom-print-options span {
  color: var(--muted);
  font-size: 0.9rem;
  font-weight: 500;
  line-height: 1.35;
}

.classroom-label-card {
  display: grid;
  grid-template-columns: 92px minmax(0, 1fr);
  gap: 16px;
  align-items: center;
  min-height: 156px;
  padding: 16px;
}

.mini-label-photo {
  width: 76px;
  height: 76px;
  border-radius: 8px;
}

.classroom-label-card h3,
.classroom-label-card p,
.classroom-label-card small,
.bottle-label-preview h3,
.bottle-label-preview p {
  margin: 0;
}

.classroom-label-card h3 {
  color: var(--ink);
  font-size: 1.72rem;
  line-height: 1.05;
  max-width: 100%;
  overflow-wrap: normal;
  white-space: nowrap;
}

.classroom-label-card p {
  color: var(--muted);
  font-size: 1.02rem;
  font-weight: 900;
}

.classroom-label-card small {
  display: block;
  margin-top: 8px;
  color: #789187;
  font-size: 0.96rem;
  font-weight: 800;
}

.classroom-label-card small[hidden],
.sheet-label-copy small[hidden],
.bottle-label-preview small[hidden] {
  display: none;
}

#avery-labels.avery-template-medium .classroom-label-grid {
  grid-template-columns: repeat(auto-fit, minmax(270px, 1fr));
}

#avery-labels.avery-template-large .classroom-label-grid {
  grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));
}

#avery-labels.avery-template-medium .classroom-label-card {
  grid-template-columns: 1fr;
  gap: 10px;
  justify-items: center;
  min-height: 238px;
  padding: 18px;
  text-align: center;
}

#avery-labels.avery-template-large .classroom-label-card {
  grid-template-columns: 1fr;
  gap: 12px;
  justify-items: center;
  min-height: 286px;
  padding: 20px;
  text-align: center;
}

#avery-labels.avery-template-medium .mini-label-photo {
  width: 92px;
  height: 92px;
}

#avery-labels.avery-template-large .mini-label-photo {
  width: 158px;
  height: 158px;
}

#avery-labels.avery-template-medium .classroom-label-card > div:not(.mini-label-photo),
#avery-labels.avery-template-large .classroom-label-card > div:not(.mini-label-photo) {
  display: grid;
  justify-items: center;
  gap: 4px;
  width: 100%;
  min-width: 0;
}

#avery-labels.avery-template-medium .classroom-label-card h3,
#avery-labels.avery-template-large .classroom-label-card h3 {
  order: 1;
}

#avery-labels.avery-template-medium .classroom-label-card small,
#avery-labels.avery-template-large .classroom-label-card small {
  order: 2;
  margin-top: 0;
}

#avery-labels.avery-template-medium .classroom-label-card p,
#avery-labels.avery-template-large .classroom-label-card p {
  order: 3;
}

#avery-labels.avery-template-medium .classroom-label-card p {
  font-size: 1rem;
}

#avery-labels.avery-template-large .classroom-label-card p {
  font-size: 1rem;
}

#avery-labels.avery-template-medium .classroom-label-card h3 {
  font-size: 2.6rem;
}

#avery-labels.avery-template-large .classroom-label-card h3 {
  font-size: 3.5rem;
}

#avery-labels.avery-template-medium .classroom-label-card small {
  font-size: 1rem;
}

#avery-labels.avery-template-large .classroom-label-card small {
  font-size: 1rem;
}

.print-sheet-preview {
  display: grid;
  gap: 14px;
  min-width: 0;
  padding-top: 2px;
}

.print-sheet-heading {
  display: flex;
  justify-content: space-between;
  gap: 16px;
  align-items: flex-start;
}

.print-sheet-heading h3,
.print-sheet-heading p {
  margin: 0;
}

.print-sheet-heading h3 {
  color: var(--green-dark);
  font-size: 1.35rem;
  line-height: 1.15;
}

.print-sheet-actions {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 10px;
  align-items: center;
}

.print-sheet-actions > span {
  min-width: max-content;
  padding: 8px 12px;
  border-radius: 999px;
  color: var(--green-dark);
  background: var(--green-light);
  font-size: 0.82rem;
  font-weight: 700;
}

.pdf-render-status {
  flex-basis: 100%;
  margin: 0;
  color: var(--muted);
  font-size: 0.78rem;
  font-weight: 700;
  text-align: right;
}

.pdf-render-status.is-stale {
  color: #c62828;
}

.download-pdf-button {
  min-height: 38px;
  padding: 8px 14px;
  border: 0;
  border-radius: 999px;
  color: var(--white);
  background: var(--green);
  font: inherit;
  font-size: 0.86rem;
  font-weight: 700;
  cursor: pointer;
}

.download-pdf-button:hover {
  background: var(--green-dark);
}

.download-pdf-button:disabled {
  cursor: wait;
  opacity: 0.72;
}

.secondary-action {
  color: var(--green-dark);
  background: var(--green-light);
}

.secondary-action:hover {
  color: var(--white);
  background: var(--green-dark);
}

.bulk-upload-panel {
  display: grid;
  gap: 16px;
  scroll-margin-top: 24px;
}

.ready-profile-panel[hidden] {
  display: none !important;
}

.bulk-upload-layout {
  display: grid;
  grid-template-columns: minmax(0, 1.05fr) minmax(0, 0.95fr);
  gap: 16px;
}

.bulk-upload-card,
.bulk-preview-card {
  display: grid;
  gap: 16px;
  padding: 18px;
  border: 1px solid var(--line);
  border-radius: 24px;
  background: var(--white);
  box-shadow: 0 12px 26px rgba(16, 90, 49, 0.06);
}

.bulk-upload-card h3,
.bulk-preview-card h3 {
  margin: 0;
  color: var(--green-dark);
  font-size: clamp(1.2rem, 2vw, 1.55rem);
  line-height: 1.15;
}

.bulk-upload-header-card h2 {
  margin: 4px 0 0;
  color: var(--green-dark);
  font-size: clamp(1.85rem, 3vw, 2.4rem);
  line-height: 1.05;
}

.bulk-upload-header-card {
  grid-template-columns: minmax(220px, 0.85fr) minmax(260px, 1fr) minmax(300px, 1.25fr);
  align-items: start;
  gap: 18px;
}

.bulk-roster-format-fieldset {
  min-width: 0;
}

.bulk-roster-format-options {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  margin-top: 8px;
}

.bulk-font-control {
  min-width: 0;
}

.bulk-dropzone {
  display: grid !important;
  min-height: 74px;
  align-content: center;
  gap: 6px !important;
  padding: 10px 14px;
  border: 2px dashed rgba(11, 122, 52, 0.34);
  border-radius: 14px;
  color: var(--green-dark);
  background: var(--green-light);
  text-align: left;
  cursor: pointer;
}

.bulk-dropzone input {
  max-width: 100%;
  min-width: 0;
  border: 0;
  background: var(--white);
  font-size: 0.88rem;
}

.bulk-dropzone span {
  display: block;
  font-size: 0.92rem;
  font-weight: 700;
}

.bulk-dropzone small {
  color: var(--muted);
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  font-size: 0.78rem;
  font-weight: 500;
  white-space: nowrap;
}

.bulk-upload-header-card > .download-pdf-button {
  grid-column: 3;
  justify-self: start;
  align-self: end;
  white-space: normal;
}

.bulk-label-options {
  display: grid;
  grid-template-columns: 1fr;
  gap: 10px;
}

.bulk-output-groups {
  display: grid;
  gap: 18px;
}

.bulk-output-group {
  display: grid;
  gap: 10px;
}

.bulk-output-group h4 {
  margin: 0;
  color: var(--green-dark);
  font-size: 0.92rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.bulk-output-card {
  display: grid !important;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 4px 10px !important;
  align-items: start !important;
}

.bulk-output-card input {
  grid-row: 1 / span 2;
  margin-top: 3px;
}

.bulk-output-card span,
.bulk-output-card small {
  display: block;
  min-width: 0;
}

.bulk-output-card span {
  color: var(--ink);
  font-weight: 700;
  line-height: 1.15;
  white-space: nowrap;
}

.bulk-output-card small {
  color: var(--muted);
  font-size: 0.76rem;
  font-weight: 500;
  line-height: 1.25;
}

.bulk-custom-output-card {
  grid-template-columns: auto minmax(0, 1fr);
}

.bulk-output-card .bulk-custom-label-input {
  grid-column: 2;
  grid-row: auto;
  width: 100%;
  height: auto;
  min-width: 0;
  padding: 10px 12px;
  border: 1px solid var(--line);
  border-radius: 12px;
  color: var(--ink);
  font: inherit;
  font-size: 0.9rem;
}

.bulk-output-card .bulk-custom-label-input:focus {
  border-color: var(--green);
  box-shadow: 0 0 0 3px rgba(11, 122, 52, 0.12);
  outline: none;
}

.bulk-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

.bulk-upload-panel .download-pdf-button {
  white-space: nowrap;
}

.bulk-cell-preview-card {
  align-content: start;
}

.bulk-cell-preview-shell {
  display: grid;
  justify-items: center;
  min-width: 0;
  overflow: hidden;
  padding: 18px;
  border: 1px solid var(--line);
  border-radius: 18px;
  background: #fbfdfc;
}

.bulk-cell-preview {
  width: 315px;
  max-width: 100%;
  aspect-ratio: 2.625 / 1;
  min-height: 0;
}

.bulk-cell-preview h4 {
  font-size: 1.45rem;
}

.bulk-cell-preview small[hidden] {
  display: none;
}

.bulk-cell-preview p[hidden] {
  display: none;
}

.bulk-preview-heading {
  display: flex;
  justify-content: space-between;
  gap: 16px;
  align-items: flex-start;
}

.bulk-table-wrap {
  overflow-x: auto;
  border: 1px solid var(--line);
  border-radius: 18px;
}

.bulk-roster-table {
  width: 100%;
  border-collapse: collapse;
  min-width: 520px;
  background: var(--white);
}

.bulk-roster-table th,
.bulk-roster-table td {
  padding: 12px 14px;
  border-bottom: 1px solid var(--line);
  text-align: left;
  vertical-align: middle;
}

.bulk-roster-table th {
  color: var(--green-dark);
  background: var(--green-light);
  font-weight: 700;
}

.bulk-roster-table tr:last-child td {
  border-bottom: 0;
}

.bulk-roster-table input {
  width: 18px;
  height: 18px;
  accent-color: var(--green);
}

.bulk-empty-row td {
  color: var(--muted);
  text-align: center;
  font-weight: 500;
}

.bulk-pdf-render-root {
  position: fixed;
  left: -100000px;
  top: 0;
  z-index: -1;
  display: grid;
  gap: 24px;
  background: #ffffff;
  color: var(--ink);
  font-family: var(--ready-label-font, var(--carecheck-ready-font));
  pointer-events: none;
}

.bulk-pdf-page {
  box-sizing: border-box;
  display: grid;
  grid-template-columns: repeat(2, 288px);
  grid-template-rows: repeat(5, 132px);
  gap: 8px 12px;
  width: 612px;
  height: 792px;
  padding: 46px 12px;
  background: #ffffff;
  font-family: var(--ready-label-font, var(--carecheck-ready-font));
}

.bulk-pdf-slot {
  box-sizing: border-box;
  min-width: 0;
  min-height: 0;
}

.bulk-pdf-label {
  box-sizing: border-box;
  display: grid;
  grid-template-rows: minmax(24px, auto) auto 14px;
  justify-items: center;
  height: 100%;
  align-content: center;
  gap: 3px;
  padding: 14px 16px;
  border: 2px solid rgba(11, 122, 52, 0.55);
  border-radius: 14px;
  background: #ffffff;
  text-align: center;
}

.bulk-pdf-label p,
.bulk-pdf-label h4,
.bulk-pdf-label small {
  margin: 0;
  max-width: 100%;
  min-width: 0;
  overflow: visible;
  justify-self: center;
  text-align: center;
  white-space: nowrap;
}

.bulk-pdf-label p {
  color: var(--green);
  font-size: 14px;
  font-weight: 700;
  letter-spacing: 0.02em;
}

.bulk-pdf-label h4 {
  color: var(--ink);
  font-size: 29px;
  font-weight: 700;
  line-height: 1.05;
}

.bulk-pdf-label small {
  color: var(--muted);
  font-size: 11px;
  font-weight: 500;
}

.bulk-pdf-label small[hidden] {
  display: none;
}

.bulk-pdf-94200-page {
  grid-template-columns: repeat(3, 189px);
  grid-template-rows: repeat(10, 72px);
  gap: 0 9px;
  padding: 36px 13.5px;
}

.bulk-pdf-94200-page .bulk-pdf-slot {
  width: 189px;
  height: 72px;
}

.bulk-water-label {
  gap: 1px;
  padding: 7px 9px;
  border: 1.4px solid rgba(11, 122, 52, 0.5);
  border-radius: 8px;
}

.bulk-water-label h4 {
  color: var(--ink);
  font-size: 21px;
  line-height: 1.18;
  min-height: 25px;
  width: max-content;
  max-width: 100%;
}

.bulk-water-label p {
  color: var(--green);
  font-size: 13px;
  line-height: 1.05;
  min-height: 14px;
  width: max-content;
  max-width: 100%;
}

.bulk-water-label p[data-empty="true"] {
  visibility: hidden;
}

.feeding-sheet-preview {
  display: grid;
  gap: 16px;
  padding: 18px;
  border: 1px solid var(--line);
  border-radius: 24px;
  background: var(--white);
  box-shadow: 0 12px 26px rgba(16, 90, 49, 0.06);
}

.feeding-print-info {
  margin: 6px 0 0;
  color: var(--muted);
  font-size: 0.9rem;
  font-weight: 500;
}

.feeding-sheet-frame {
  max-width: 100%;
  overflow: auto;
  padding: 18px;
  border: 1px solid var(--line);
  border-radius: 18px;
  background: #f7fbf8;
}

.feeding-sheet-pdf-render-root {
  position: absolute;
  left: 0;
  top: 0;
  z-index: 0;
  display: grid;
  gap: 24px;
  padding-top: 24px;
  background: #ffffff;
  color: var(--ink);
  font-family: var(--ready-label-font, var(--carecheck-ready-font));
  opacity: 0;
  pointer-events: none;
}

.feeding-sheet-page {
  box-sizing: border-box;
  display: grid;
  align-content: start;
  justify-content: start;
  width: 612px;
  height: 792px;
  background: #ffffff;
  font-family: var(--ready-label-font, var(--carecheck-ready-font));
}

.feeding-sheet-61503 {
  grid-template-columns: repeat(2, 270px);
  grid-template-rows: repeat(5, 144px);
  gap: 0;
  padding: 36px;
}

.feeding-sheet-94069 {
  grid-template-columns: repeat(4, 144px);
  grid-template-rows: repeat(5, 144px);
  gap: 0;
  padding: 18px;
}

.feeding-sheet-label {
  box-sizing: border-box;
  display: grid;
  grid-template-rows: auto 1fr;
  gap: 8px;
  width: 100%;
  height: 100%;
  padding: 12px;
  border: 2px solid var(--green);
  border-radius: 16px;
  background: #ffffff;
  color: var(--ink);
  overflow: hidden;
}

.feeding-sheet-94069 .feeding-sheet-label {
  gap: 5px;
  padding: 8px;
  border-width: 1.5px;
  border-radius: 12px;
}

.feeding-sheet-61503 .feeding-formula-label,
.feeding-sheet-61503 .feeding-breastmilk-label {
  gap: 5px;
  padding: 8px;
  border-width: 1.5px;
  border-radius: 12px;
}

.feeding-sheet-label-header {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 10px;
  align-items: center;
  min-width: 0;
}

.feeding-sheet-label.has-photo .feeding-sheet-label-header {
  grid-template-columns: minmax(0, 1fr) 78px;
}

.feeding-sheet-94069 .feeding-sheet-label-header {
  gap: 6px;
}

.feeding-sheet-61503 .feeding-formula-label .feeding-sheet-label-header,
.feeding-sheet-61503 .feeding-breastmilk-label .feeding-sheet-label-header {
  gap: 6px;
}

.feeding-sheet-94069 .feeding-sheet-label.has-photo .feeding-sheet-label-header {
  grid-template-columns: minmax(0, 1fr) 42px;
}

.feeding-sheet-61503 .feeding-formula-label.has-photo .feeding-sheet-label-header {
  grid-template-columns: minmax(0, 1fr) 78px;
}

.feeding-sheet-label-photo {
  width: 78px;
  height: 78px;
  overflow: hidden;
  border: 1px solid rgba(11, 122, 52, 0.24);
  border-radius: 8px;
  background: var(--green-light);
}

.feeding-sheet-94069 .feeding-sheet-label-photo {
  width: 42px;
  height: 42px;
  border-radius: 8px;
}

.feeding-sheet-61503 .feeding-formula-label .feeding-sheet-label-photo,
.feeding-sheet-61503 .feeding-breastmilk-label .feeding-sheet-label-photo {
  width: 78px;
  height: 78px;
  border-radius: 8px;
}

.feeding-sheet-label-photo img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: center;
}

.feeding-sheet-label p,
.feeding-sheet-label h4,
.feeding-sheet-label small {
  margin: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.feeding-sheet-label p {
  color: var(--green);
  font-size: 15px;
  font-weight: 700;
  line-height: 1;
  text-transform: uppercase;
}

.feeding-sheet-94069 .feeding-sheet-label p {
  font-size: 11px;
}

.feeding-sheet-61503 .feeding-formula-label p,
.feeding-sheet-61503 .feeding-breastmilk-label p {
  font-size: 11px;
}

.feeding-breastmilk-label p {
  color: #b42323;
}

.feeding-sheet-label h4 {
  color: var(--ink);
  font-size: 28px;
  font-weight: 700;
  line-height: 1;
}

.feeding-sheet-label.has-no-photo h4.allow-name-wrap {
  display: -webkit-box;
  line-height: 1.02;
  overflow: hidden;
  text-align: center;
  white-space: normal;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}

.feeding-sheet-label small {
  display: block;
  margin-top: 3px;
  color: var(--muted);
  font-size: 11px;
  font-weight: 500;
  line-height: 1;
}

.feeding-sheet-label.has-photo h4 {
  font-size: 22px;
}

.feeding-sheet-label.has-photo small {
  font-size: 9px;
}

.feeding-sheet-94069 .feeding-sheet-label h4 {
  font-size: 20px;
}

.feeding-sheet-94069 .feeding-sheet-label.has-photo h4 {
  font-size: 18px;
}

.feeding-sheet-61503 .feeding-formula-label h4,
.feeding-sheet-61503 .feeding-breastmilk-label h4 {
  font-size: 20px;
}

.feeding-sheet-61503 .feeding-formula-label.has-photo h4 {
  font-size: 18px;
}

.feeding-sheet-94069 .feeding-sheet-label small {
  margin-top: 2px;
  font-size: 8px;
}

.feeding-sheet-61503 .feeding-formula-label small,
.feeding-sheet-61503 .feeding-breastmilk-label small {
  margin-top: 2px;
  font-size: 8px;
}

.feeding-sheet-fields {
  display: grid;
  align-content: space-between;
  gap: 5px;
  min-height: 0;
}

.feeding-breastmilk-label .feeding-sheet-fields {
  gap: 3px;
}

.feeding-sheet-94069 .feeding-sheet-fields {
  gap: 3px;
}

.feeding-sheet-94069 .feeding-breastmilk-label .feeding-sheet-fields {
  gap: 2px;
}

.feeding-sheet-61503 .feeding-formula-label .feeding-sheet-fields,
.feeding-sheet-61503 .feeding-breastmilk-label .feeding-sheet-fields {
  gap: 3px;
}

.feeding-sheet-field {
  display: grid;
  grid-template-columns: max-content minmax(42px, 1fr);
  gap: 8px;
  align-items: end;
  min-height: 22px;
}

.feeding-sheet-label.has-photo .feeding-sheet-field {
  grid-template-columns: max-content minmax(24px, 0.62fr);
}

.feeding-breastmilk-label .feeding-sheet-field {
  min-height: 17px;
}

.feeding-sheet-94069 .feeding-sheet-field {
  grid-template-columns: max-content minmax(24px, 1fr);
  gap: 5px;
  min-height: 14px;
}

.feeding-sheet-94069 .feeding-sheet-label.has-photo .feeding-sheet-field {
  grid-template-columns: max-content minmax(18px, 0.72fr);
}

.feeding-sheet-94069 .feeding-breastmilk-label .feeding-sheet-field {
  min-height: 11px;
}

.feeding-sheet-61503 .feeding-formula-label .feeding-sheet-field,
.feeding-sheet-61503 .feeding-breastmilk-label .feeding-sheet-field {
  grid-template-columns: max-content minmax(24px, 1fr);
  gap: 5px;
  min-height: 14px;
}

.feeding-sheet-61503 .feeding-formula-label.has-photo .feeding-sheet-field {
  grid-template-columns: max-content minmax(14px, 0.48fr);
  min-height: 11px;
}

.feeding-sheet-61503 .feeding-formula-label small {
  font-size: 9.5px;
}

.feeding-sheet-61503 .feeding-formula-label .feeding-sheet-fields {
  align-content: start;
  gap: 3px;
}

.feeding-sheet-61503 .feeding-formula-label .feeding-sheet-field {
  min-height: 14px;
}

.feeding-sheet-61503 .feeding-formula-label .feeding-sheet-field span,
.feeding-sheet-61503 .feeding-formula-label .feeding-sheet-weekdays span {
  font-size: 9.2px;
}

.feeding-sheet-61503 .feeding-formula-label .feeding-sheet-weekdays {
  gap: 3px;
  margin-top: 0;
}

.feeding-sheet-61503 .feeding-formula-label .feeding-sheet-weekdays i {
  width: 13px;
  height: 13px;
}

.feeding-sheet-61503 .feeding-formula-label.has-photo {
  gap: 3px;
}

.feeding-sheet-61503 .feeding-formula-label.has-photo .feeding-sheet-fields {
  align-content: start;
  gap: 2px;
  padding-top: 1px;
}

.feeding-sheet-61503 .feeding-formula-label.has-photo .feeding-sheet-check-grid,
.feeding-sheet-61503 .feeding-formula-label.has-photo .feeding-sheet-weekdays {
  gap: 2px;
}

.feeding-sheet-field span {
  color: var(--ink);
  font-size: 11px;
  font-weight: 700;
  line-height: 1;
}

.feeding-sheet-94069 .feeding-sheet-field span {
  font-size: 7.5px;
}

.feeding-sheet-94069 .feeding-breastmilk-label .feeding-sheet-field span {
  font-size: 6.8px;
}

.feeding-sheet-61503 .feeding-formula-label .feeding-sheet-field span,
.feeding-sheet-61503 .feeding-breastmilk-label .feeding-sheet-field span {
  font-size: 7.5px;
}

.feeding-sheet-field span::after {
  content: ":";
}

.feeding-sheet-field i {
  display: block;
  height: 1px;
  border-bottom: 2px solid rgba(35, 49, 40, 0.72);
}

.feeding-sheet-94069 .feeding-sheet-field i {
  border-bottom-width: 1.4px;
}

.feeding-sheet-61503 .feeding-formula-label .feeding-sheet-field i,
.feeding-sheet-61503 .feeding-breastmilk-label .feeding-sheet-field i {
  border-bottom-width: 1.4px;
}

.feeding-sheet-check-grid,
.feeding-sheet-weekdays {
  display: grid;
  gap: 5px;
}

.feeding-sheet-check-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.feeding-breastmilk-label .feeding-sheet-check-grid {
  gap: 4px;
}

.feeding-sheet-weekdays {
  grid-template-columns: repeat(5, minmax(0, 1fr));
}

.feeding-sheet-check-grid span,
.feeding-sheet-weekdays span {
  display: grid;
  align-items: center;
  color: var(--ink);
  font-size: 10px;
  font-weight: 700;
  line-height: 1;
}

.feeding-sheet-check-grid span {
  grid-template-columns: 13px minmax(0, 1fr);
  gap: 5px;
}

.feeding-sheet-weekdays span {
  justify-items: center;
  gap: 3px;
}

.feeding-sheet-check-grid i,
.feeding-sheet-weekdays i {
  display: block;
  width: 13px;
  height: 13px;
  border: 1.5px solid rgba(11, 122, 52, 0.72);
  border-radius: 4px;
  background: #ffffff;
}

.feeding-sheet-weekdays i {
  border-radius: 999px;
}

.feeding-sheet-check-grid strong,
.feeding-sheet-weekdays strong {
  min-width: 0;
  overflow: hidden;
  font: inherit;
  text-overflow: ellipsis;
}

.feeding-sheet-94069 .feeding-sheet-check-grid,
.feeding-sheet-94069 .feeding-sheet-weekdays {
  gap: 3px;
}

.feeding-sheet-94069 .feeding-breastmilk-label .feeding-sheet-check-grid {
  gap: 2px;
}

.feeding-sheet-61503 .feeding-formula-label .feeding-sheet-check-grid,
.feeding-sheet-61503 .feeding-formula-label .feeding-sheet-weekdays,
.feeding-sheet-61503 .feeding-breastmilk-label .feeding-sheet-check-grid,
.feeding-sheet-61503 .feeding-breastmilk-label .feeding-sheet-weekdays {
  gap: 3px;
}

.feeding-sheet-94069 .feeding-sheet-check-grid span,
.feeding-sheet-94069 .feeding-sheet-weekdays span {
  font-size: 7px;
}

.feeding-sheet-61503 .feeding-formula-label .feeding-sheet-check-grid span,
.feeding-sheet-61503 .feeding-formula-label .feeding-sheet-weekdays span,
.feeding-sheet-61503 .feeding-breastmilk-label .feeding-sheet-check-grid span,
.feeding-sheet-61503 .feeding-breastmilk-label .feeding-sheet-weekdays span {
  font-size: 7px;
}

.feeding-sheet-94069 .feeding-sheet-check-grid span {
  grid-template-columns: 10px minmax(0, 1fr);
  gap: 3px;
}

.feeding-sheet-61503 .feeding-formula-label .feeding-sheet-check-grid span,
.feeding-sheet-61503 .feeding-breastmilk-label .feeding-sheet-check-grid span {
  grid-template-columns: 10px minmax(0, 1fr);
  gap: 3px;
}

.feeding-sheet-94069 .feeding-sheet-check-grid i,
.feeding-sheet-94069 .feeding-sheet-weekdays i {
  width: 10px;
  height: 10px;
  border-width: 1.2px;
  border-radius: 3px;
}

.feeding-sheet-61503 .feeding-formula-label .feeding-sheet-check-grid i,
.feeding-sheet-61503 .feeding-formula-label .feeding-sheet-weekdays i,
.feeding-sheet-61503 .feeding-breastmilk-label .feeding-sheet-check-grid i,
.feeding-sheet-61503 .feeding-breastmilk-label .feeding-sheet-weekdays i {
  width: 10px;
  height: 10px;
  border-width: 1.2px;
  border-radius: 3px;
}

.feeding-sheet-94069 .feeding-sheet-weekdays i {
  border-radius: 999px;
}

.feeding-sheet-61503 .feeding-formula-label .feeding-sheet-weekdays i,
.feeding-sheet-61503 .feeding-breastmilk-label .feeding-sheet-weekdays i {
  border-radius: 999px;
}

.feeding-sheet-61503 .feeding-formula-label small {
  font-size: 9.8px;
}

.feeding-sheet-61503 .feeding-formula-label h4 {
  line-height: 1.1;
  overflow: visible;
  padding-bottom: 1px;
}

.feeding-sheet-61503 .feeding-formula-label .feeding-sheet-label-header > div {
  transform: translateY(-7px);
}

.feeding-sheet-61503 .feeding-formula-label .feeding-sheet-fields {
  align-content: start;
  gap: 4px;
}

.feeding-sheet-61503 .feeding-formula-label .feeding-sheet-field {
  min-height: 15px;
}

.feeding-sheet-61503 .feeding-formula-label .feeding-sheet-field span,
.feeding-sheet-61503 .feeding-formula-label .feeding-sheet-weekdays span {
  font-size: 9.4px;
}

.feeding-sheet-61503 .feeding-formula-label .feeding-sheet-weekdays {
  gap: 4px;
  margin-top: 1px;
}

.feeding-sheet-61503 .feeding-formula-label .feeding-sheet-weekdays i {
  width: 13px;
  height: 13px;
}

.feeding-sheet-61503 .feeding-formula-label.has-photo .feeding-sheet-fields {
  margin-top: -24px;
}

.feeding-sheet-61503 .feeding-formula-label.has-photo .feeding-sheet-field {
  grid-template-columns: max-content minmax(18px, 76px);
}

.feeding-sheet-61503 .feeding-formula-label.has-no-photo {
  transform: none;
}

.feeding-sheet-61503 .feeding-formula-label.has-no-photo .feeding-sheet-label-header > div,
.feeding-sheet-61503 .feeding-formula-label.has-no-photo .feeding-sheet-fields {
  transform: translateY(14px);
}

.feeding-sheet-61503 .feeding-formula-label.has-no-photo .feeding-sheet-fields {
  margin-top: 7px;
}

.feeding-sheet-61503 .feeding-breastmilk-label small {
  font-size: 9.8px;
}

.feeding-sheet-61503 .feeding-breastmilk-label .feeding-sheet-label-header > div {
  transform: translateY(-9px);
}

.feeding-sheet-61503 .feeding-breastmilk-label .feeding-sheet-label-photo {
  transform: translateY(6px);
}

.feeding-sheet-61503 .feeding-breastmilk-label .feeding-sheet-fields {
  align-content: start;
  gap: 5px;
}

.feeding-sheet-61503 .feeding-breastmilk-label .feeding-sheet-field {
  min-height: 14px;
}

.feeding-sheet-61503 .feeding-breastmilk-label .feeding-sheet-field span,
.feeding-sheet-61503 .feeding-breastmilk-label .feeding-sheet-check-grid span {
  font-size: 9.4px;
}

.feeding-sheet-61503 .feeding-breastmilk-label .feeding-sheet-check-grid {
  gap: 5px;
  margin-top: 2px;
}

.feeding-sheet-61503 .feeding-breastmilk-label .feeding-sheet-check-grid span {
  grid-template-columns: 13px minmax(0, 1fr);
  gap: 5px;
}

.feeding-sheet-61503 .feeding-breastmilk-label .feeding-sheet-check-grid i {
  width: 13px;
  height: 13px;
}

.feeding-sheet-61503 .feeding-breastmilk-label.has-no-photo .feeding-sheet-fields {
  gap: 2px;
  margin-top: 0;
}

.feeding-sheet-61503 .feeding-breastmilk-label.has-no-photo .feeding-sheet-label-header > div,
.feeding-sheet-61503 .feeding-breastmilk-label.has-no-photo .feeding-sheet-fields {
  transform: translateY(14px);
}

.feeding-sheet-61503 .feeding-breastmilk-label.has-no-photo h4 {
  line-height: 1.1;
  overflow: visible;
  padding-bottom: 1px;
}

.feeding-sheet-61503 .feeding-breastmilk-label.has-no-photo .feeding-sheet-field {
  min-height: 12px;
}

.feeding-sheet-61503 .feeding-breastmilk-label.has-no-photo .feeding-sheet-check-grid {
  margin-top: 0;
}

.feeding-sheet-61503 .feeding-formula-label.has-no-photo,
.feeding-sheet-61503 .feeding-breastmilk-label.has-no-photo {
  align-content: center;
  grid-template-rows: auto auto;
  overflow: hidden;
}

.feeding-sheet-61503 .feeding-formula-label.has-no-photo .feeding-sheet-label-header > div,
.feeding-sheet-61503 .feeding-formula-label.has-no-photo .feeding-sheet-fields,
.feeding-sheet-61503 .feeding-breastmilk-label.has-no-photo .feeding-sheet-label-header > div,
.feeding-sheet-61503 .feeding-breastmilk-label.has-no-photo .feeding-sheet-fields {
  transform: none;
}

.feeding-sheet-61503 .feeding-formula-label.has-no-photo {
  gap: 8px;
}

.feeding-sheet-61503 .feeding-breastmilk-label.has-no-photo {
  gap: 5px;
}

.feeding-sheet-61503 .feeding-formula-label,
.feeding-sheet-61503 .feeding-breastmilk-label {
  display: grid;
  align-content: stretch;
  gap: 0;
  grid-template-columns: minmax(0, 1fr);
  grid-template-rows: auto auto;
  overflow: hidden;
}

.feeding-sheet-61503 .feeding-formula-label.has-photo {
  column-gap: 8px;
  display: grid;
  grid-template-areas:
    "header photo"
    "fields photo";
  grid-template-columns: minmax(0, 1fr) 78px;
  grid-template-rows: 54px minmax(0, 1fr);
  row-gap: 6px;
}

.feeding-sheet-61503 .feeding-formula-label.has-no-photo,
.feeding-sheet-61503 .feeding-breastmilk-label.has-no-photo {
  align-content: center;
  grid-template-areas:
    "header"
    "fields";
  grid-template-columns: minmax(0, 1fr);
}

.feeding-sheet-61503 .feeding-formula-label.has-no-photo {
  row-gap: 9px;
}

.feeding-sheet-61503 .feeding-breastmilk-label.has-no-photo {
  row-gap: 5px;
}

.feeding-sheet-61503 .feeding-formula-label .feeding-sheet-label-header,
.feeding-sheet-61503 .feeding-breastmilk-label .feeding-sheet-label-header {
  grid-area: header;
  min-height: 0;
}

.feeding-sheet-61503 .feeding-formula-label.has-photo .feeding-sheet-label-header {
  display: contents;
}

.feeding-sheet-61503 .feeding-formula-label.has-photo .feeding-sheet-label-header > div {
  grid-area: header;
}

.feeding-sheet-61503 .feeding-formula-label .feeding-sheet-label-header > div,
.feeding-sheet-61503 .feeding-breastmilk-label .feeding-sheet-label-header > div,
.feeding-sheet-61503 .feeding-formula-label .feeding-sheet-fields,
.feeding-sheet-61503 .feeding-breastmilk-label .feeding-sheet-fields,
.feeding-sheet-61503 .feeding-formula-label .feeding-sheet-label-photo,
.feeding-sheet-61503 .feeding-breastmilk-label .feeding-sheet-label-photo {
  margin: 0;
  transform: none;
}

.feeding-sheet-61503 .feeding-formula-label .feeding-sheet-fields,
.feeding-sheet-61503 .feeding-breastmilk-label .feeding-sheet-fields {
  align-content: start;
  grid-area: fields;
  min-height: 0;
  padding: 0;
}

.feeding-sheet-61503 .feeding-formula-label.has-photo .feeding-sheet-fields {
  margin: 0;
}

.feeding-sheet-61503 .feeding-formula-label .feeding-sheet-label-photo,
.feeding-sheet-61503 .feeding-breastmilk-label .feeding-sheet-label-photo {
  align-self: start;
  grid-area: photo;
  justify-self: end;
}

.feeding-sheet-61503 .feeding-formula-label .feeding-sheet-field {
  min-height: 15px;
}

.feeding-sheet-61503 .feeding-breastmilk-label .feeding-sheet-field {
  min-height: 13px;
}

.feeding-sheet-61503 .feeding-formula-label .feeding-sheet-weekdays,
.feeding-sheet-61503 .feeding-breastmilk-label .feeding-sheet-check-grid {
  margin: 0;
}

.feeding-sheet-61503 .feeding-formula-label.has-photo {
  column-gap: 16px;
  grid-template-areas:
    "header photo"
    "fields photo";
  grid-template-columns: minmax(0, 156px) 78px;
  grid-template-rows: 54px minmax(0, 1fr);
  row-gap: 6px;
}

.feeding-sheet-61503 .feeding-formula-label.has-photo .feeding-sheet-label-header > div {
  max-width: 156px;
  min-width: 0;
  overflow: hidden;
  width: 156px;
}

.feeding-sheet-61503 .feeding-formula-label.has-photo h4 {
  max-width: 100%;
  overflow: hidden;
  padding-bottom: 1px;
  text-overflow: ellipsis;
}

.feeding-sheet-61503 .feeding-formula-label.has-photo .feeding-sheet-fields {
  grid-area: fields;
  max-width: 156px;
  width: 156px;
}

.feeding-sheet-61503 .feeding-formula-label.has-photo .feeding-sheet-label-photo {
  justify-self: end;
}

.feeding-sheet-61503 .breastmilk-61503-photo-layout {
  align-content: center;
  display: grid;
  grid-template-areas:
    "header"
    "fields";
  grid-template-columns: minmax(0, 1fr);
  grid-template-rows: auto auto;
  position: relative;
  row-gap: 5px;
}

.feeding-sheet-61503 .breastmilk-61503-photo-layout .feeding-sheet-label-header {
  align-content: center;
  display: grid;
  grid-area: header;
  min-height: 0;
  min-width: 0;
}

.feeding-sheet-61503 .breastmilk-61503-photo-layout .feeding-sheet-label-header > div {
  max-width: calc(100% - 76px);
  min-width: 0;
  overflow: visible;
  transform: none;
  width: calc(100% - 76px);
}

.feeding-sheet-61503 .breastmilk-61503-photo-layout .feeding-sheet-label-header p,
.feeding-sheet-61503 .breastmilk-61503-photo-layout .feeding-sheet-label-header h4,
.feeding-sheet-61503 .breastmilk-61503-photo-layout .feeding-sheet-label-header small {
  display: block;
  max-width: 100%;
  visibility: visible;
  width: auto !important;
}

.feeding-sheet-61503 .breastmilk-61503-photo-layout .feeding-sheet-label-header h4 {
  font-size: 38px;
  font-weight: 700;
  line-height: 1;
  overflow: visible;
  padding-bottom: 0;
  text-overflow: clip;
  white-space: nowrap !important;
}

.feeding-sheet-61503 .breastmilk-61503-photo-layout .feeding-sheet-label-header small {
  overflow: visible;
  text-overflow: clip;
  white-space: nowrap;
}

.feeding-sheet-61503 .breastmilk-61503-photo-layout .feeding-sheet-label-photo {
  align-self: start;
  width: 68px;
  height: 78px;
  justify-self: end;
  margin: 0;
  position: absolute;
  right: 10px;
  top: 10px;
  transform: none;
  z-index: auto;
}

.feeding-sheet-61503 .breastmilk-61503-photo-layout .feeding-sheet-fields {
  align-content: start;
  display: grid;
  gap: 2px;
  grid-area: fields;
  margin: 0;
  max-width: none;
  min-width: 0;
  padding: 0;
  width: auto;
}

.feeding-sheet-61503 .breastmilk-61503-photo-layout .feeding-sheet-field {
  min-height: 12px;
}

.feeding-sheet-61503 .breastmilk-61503-photo-layout .feeding-sheet-check-grid {
  grid-template-columns: max-content max-content;
  justify-content: start;
  gap: 12px;
  margin: 0;
}

.feeding-sheet-61503 .breastmilk-61503-photo-layout .feeding-sheet-check-grid span {
  grid-template-columns: 13px max-content;
}

.feeding-sheet-61503 .breastmilk-61503-photo-layout .feeding-sheet-fields > * {
  grid-area: auto;
}

.feeding-sheet-61503 .breastmilk-61503-photo-layout .feeding-field-ounces,
.feeding-sheet-61503 .breastmilk-61503-photo-layout .feeding-field-date {
  grid-template-columns: max-content minmax(18px, 54px);
}

.feeding-sheet-61503 .breastmilk-61503-photo-layout .feeding-field-date-pumped,
.feeding-sheet-61503 .breastmilk-61503-photo-layout .feeding-field-date-thawed {
  grid-template-columns: max-content minmax(36px, 1fr);
}

.welcome-pdf-render-root {
  position: fixed;
  left: -100000px;
  top: 0;
  z-index: -1;
  display: grid;
  gap: 24px;
  background: #ffffff;
  color: var(--ink);
  font-family: var(--ready-label-font, var(--carecheck-ready-font));
  pointer-events: none;
}

.fixed-pdf-render-root {
  position: fixed;
  left: -100000px;
  top: 0;
  z-index: -1;
  display: grid;
  gap: 24px;
  background: #ffffff;
  color: var(--ink);
  font-family: var(--ready-label-font, var(--carecheck-ready-font));
  pointer-events: none;
}

.health-preview-export-root {
  position: fixed;
  left: -100000px;
  top: 0;
  z-index: -1;
  display: block;
  background: #ffffff;
  color: var(--ink);
  font-family: var(--ready-label-font, var(--carecheck-ready-font));
  pointer-events: none;
}

.fixed-pdf-render-root .health-sheet-page {
  width: 612px;
  height: 792px;
  aspect-ratio: auto;
}

.fixed-preview-scale {
  position: relative;
  width: 612px;
  height: 792px;
  overflow: visible;
  background: #ffffff;
}

.fixed-print-page {
  position: relative;
  box-sizing: border-box;
  overflow: visible;
  background: #ffffff;
  color: var(--ink);
  font-family: var(--ready-label-font, var(--carecheck-ready-font));
}

.fixed-label-boundary {
  position: absolute;
  box-sizing: border-box;
  overflow: hidden;
  border: 1.2px solid rgba(11, 122, 52, 0.78);
  border-radius: 8px;
  background: #ffffff;
}

.fixed-safe-zone {
  position: absolute;
  z-index: 0;
  box-sizing: border-box;
  border: 1px dashed rgba(20, 120, 220, 0.7);
  background: rgba(20, 120, 220, 0.08);
  pointer-events: none;
}

.fixed-photo-box {
  position: absolute;
  z-index: 2;
  display: grid;
  place-items: center;
  box-sizing: border-box;
  overflow: hidden;
  border-radius: 8px;
  background: #eef4f0;
  color: var(--muted);
  font-size: clamp(18px, 18%, 34px);
  font-weight: 700;
}

.fixed-photo-box img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}

.fixed-community-oval-photo {
  border-radius: 50% 50% 0 0 / 100% 100% 0 0;
}

.fixed-feeding-title,
.fixed-feeding-name,
.fixed-feeding-dob,
.fixed-field-row,
.fixed-check-row,
.fixed-weekday-row,
.fixed-community-name,
.fixed-classroom-title,
.fixed-classroom-name,
.fixed-classroom-room {
  position: absolute;
  z-index: 1;
  box-sizing: border-box;
  margin: 0;
  overflow: visible;
  font-family: var(--ready-label-font, var(--carecheck-ready-font));
  letter-spacing: 0;
}

.fixed-feeding-title,
.fixed-classroom-title {
  color: var(--green-dark);
  font-weight: 700;
  line-height: 1;
  text-transform: none;
}

.fixed-feeding-name,
.fixed-community-name,
.fixed-classroom-name {
  color: var(--ink);
  font-weight: 700;
  line-height: 1.05;
  transform-origin: center center;
}

.fixed-feeding-dob,
.fixed-classroom-room {
  color: var(--muted);
  font-weight: 700;
  line-height: 1.1;
}

.fixed-field-row {
  display: grid;
  grid-template-columns: max-content minmax(20px, 1fr);
  align-items: end;
  gap: 4px;
  color: var(--ink);
  font-size: var(--fixed-field-size, 8px);
  font-weight: 700;
  line-height: 1;
}

.fixed-field-row span::after {
  content: ":";
}

.fixed-field-row i {
  display: block;
  height: 1px;
  border-bottom: 1.3px solid rgba(35, 49, 40, 0.72);
}

.fixed-check-row {
  display: flex;
  align-items: center;
  gap: 14px;
  color: var(--ink);
  font-size: var(--fixed-field-size, 8px);
  font-weight: 700;
}

.fixed-check-row span {
  display: inline-flex;
  align-items: center;
  gap: 4px;
}

/* html2canvas paints the breast-milk checkbox row above its positioned box.
   Correct only the detached PDF clone; the visible preview is already right. */
.feeding-pdf-capture-page .fixed-breastmilk-check-row {
  transform: translateY(4px);
}

.feeding-pdf-capture-page .fixed-breastmilk-check-row i {
  width: 9px;
  height: 9px;
}

.fixed-check-row i,
.fixed-weekday-row i {
  display: inline-block;
  box-sizing: border-box;
  width: 11px;
  height: 11px;
  border: 1.3px solid rgba(11, 122, 52, 0.76);
  border-radius: 3px;
  background: #ffffff;
}

.fixed-weekday-row {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  align-items: center;
  color: var(--ink);
  font-size: var(--fixed-field-size, 8px);
  font-weight: 700;
  text-align: center;
}

.fixed-weekday-row span {
  display: grid;
  justify-items: center;
  gap: 3px;
}

.fixed-weekday-row i {
  border-radius: 999px;
}

.fixed-community-label {
  border-color: rgba(118, 128, 121, 0.95);
  border-radius: 8px 8px 0 0;
}

.fixed-community-label.community-arch {
  overflow: visible;
  border: 0;
  border-radius: 0;
}

.fixed-community-arch-guide {
  position: absolute;
  inset: 0;
  z-index: 0;
  display: block;
  width: 100%;
  height: 100%;
  pointer-events: none;
}

.fixed-community-arch-guide path {
  fill: #ffffff;
  stroke: rgba(118, 128, 121, 0.95);
  stroke-width: 1.1;
  vector-effect: non-scaling-stroke;
}

.fixed-community-label.community-arch::after {
  display: none;
}

.fixed-community-label.community-oval {
  border-color: var(--green-dark);
  border-radius: 50%;
}

.fixed-community-name {
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  font-weight: 700;
}

.fixed-community-label.community-arch .fixed-community-name {
  align-items: flex-start;
}

.fixed-basket-name {
  font-size: 30px;
}

.fixed-classroom-label.is-empty {
  border-color: rgba(11, 122, 52, 0.18);
  background: #ffffff;
}

.fixed-classroom-label {
  border: 1px dashed rgba(11, 122, 52, 0.5);
}

.fixed-classroom-label.has-no-photo .fixed-classroom-title,
.fixed-classroom-label.has-no-photo .fixed-classroom-name,
.fixed-classroom-label.has-no-photo .fixed-classroom-room {
  display: grid;
  align-items: center;
  justify-items: center;
  text-align: center;
}

.fixed-classroom-label.has-no-photo .fixed-classroom-name {
  line-height: 1.02;
}

.fixed-classroom-label.has-photo .fixed-classroom-title,
.fixed-classroom-label.has-photo .fixed-classroom-name,
.fixed-classroom-label.has-photo .fixed-classroom-room {
  display: grid;
  align-items: center;
  justify-items: center;
  text-align: center;
}

.fixed-classroom-label.avery-94207-classroom.has-photo .fixed-classroom-title,
.fixed-classroom-label.avery-94207-classroom.has-photo .fixed-classroom-name,
.fixed-classroom-label.avery-94207-classroom.has-photo .fixed-classroom-room {
  justify-items: start;
  text-align: left;
}

.welcome-pdf-page {
  position: relative;
  box-sizing: border-box;
  display: grid;
  place-items: center;
  width: 612px;
  height: 792px;
  overflow: hidden;
  padding: 0;
  background: #ffffff;
  font-family: var(--ready-label-font, var(--carecheck-ready-font));
  text-align: center;
}

.welcome-template-sign {
  position: absolute;
  inset: 0;
  width: 612px;
  height: 792px;
  overflow: hidden;
  background:
    radial-gradient(circle at 14% 17%, rgba(160, 126, 82, 0.16) 0 58px, transparent 59px),
    radial-gradient(circle at 86% 18%, rgba(105, 133, 102, 0.16) 0 76px, transparent 77px),
    linear-gradient(180deg, #fbf8ef 0%, #f7f2e6 100%);
}

.welcome-template-sign::before {
  content: "Welcome";
  position: absolute;
  left: 66px;
  top: 76px;
  right: 66px;
  z-index: 2;
  color: #5f6f54;
  font-family: var(--ready-label-font, var(--carecheck-ready-font));
  font-size: 54px;
  font-weight: 800;
  line-height: 1;
  text-align: center;
}

.welcome-template-sign::after {
  content: "";
  position: absolute;
  left: 152px;
  top: 253px;
  z-index: 0;
  width: 291px;
  height: 290px;
  border: 14px solid #b8945f;
  border-radius: 20px;
  background: #ffffff;
  box-shadow:
    0 0 0 4px rgba(111, 81, 43, 0.18),
    inset 0 0 0 2px rgba(255, 255, 255, 0.6);
}

.welcome-template-sign.welcome-sign-theme-birthday {
  background:
    radial-gradient(circle at 18% 16%, rgba(194, 147, 87, 0.2) 0 54px, transparent 55px),
    radial-gradient(circle at 81% 22%, rgba(139, 166, 115, 0.2) 0 64px, transparent 65px),
    linear-gradient(180deg, #fff9ef 0%, #f6ead6 100%);
}

.welcome-template-sign.welcome-sign-theme-birthday::before {
  content: "Happy Birthday";
  color: #8a6838;
}

.welcome-template-sign.welcome-sign-theme-tour {
  background:
    radial-gradient(circle at 18% 16%, rgba(111, 142, 112, 0.18) 0 56px, transparent 57px),
    radial-gradient(circle at 83% 20%, rgba(170, 138, 92, 0.18) 0 72px, transparent 73px),
    linear-gradient(180deg, #f9fbf5 0%, #eef3e8 100%);
}

.welcome-template-sign.welcome-sign-theme-tour::before {
  content: "Welcome Tour";
  color: #4e6f55;
}

.welcome-template-image {
  display: block;
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 792px;
  object-fit: contain;
  opacity: 0;
}

.welcome-template-overlay {
  position: absolute;
  inset: 0;
  pointer-events: none;
}

.welcome-template-photo {
  position: absolute;
  left: 170px;
  top: 271px;
  z-index: 2;
  width: 255px;
  height: 254px;
  object-fit: cover;
  object-position: center;
}

.welcome-template-frame-blank {
  position: absolute;
  left: 170px;
  top: 271px;
  z-index: 2;
  width: 255px;
  height: 254px;
  background: #ffffff;
}

.welcome-template-text-cleaner {
  display: none;
}

.welcome-template-copy {
  position: absolute;
  left: 148px;
  top: 584px;
  z-index: 3;
  display: grid;
  box-sizing: border-box;
  width: 316px;
  min-height: 104px;
  min-width: 0;
  justify-items: center;
  align-content: center;
  gap: 8px;
  padding: 8px 16px;
  background: transparent;
}

.welcome-template-sign.has-no-photo .welcome-template-copy {
  left: 170px;
  top: 341px;
  width: 255px;
  min-height: 112px;
  padding: 8px;
}

.welcome-template-copy p {
  margin: 0;
}

.welcome-template-copy > p:first-child {
  max-width: 100%;
  color: #000000;
  font-family: var(--ready-label-font, var(--carecheck-ready-font));
  font-size: 32px;
  font-weight: 700;
  line-height: 1.05;
  white-space: normal;
  overflow-wrap: normal;
  word-break: normal;
}

.welcome-template-copy p:not(:first-child) {
  max-width: 100%;
  color: #000000;
  font-family: var(--ready-label-font, var(--carecheck-ready-font));
  font-size: 22px;
  font-weight: 400;
  line-height: 1.1;
  white-space: normal;
  overflow-wrap: normal;
  word-break: normal;
}

.printing-instructions {
  display: grid;
  gap: 12px;
  padding: 16px;
  border: 1px solid rgba(11, 122, 52, 0.2);
  border-radius: 16px;
  background: #f7fbf8;
}

.printing-instructions h4,
.printing-instructions h5,
.printing-instructions p,
.printing-instructions ol,
.printing-instructions ul {
  margin: 0;
}

.printing-instructions h4,
.printing-instructions h5 {
  color: var(--green-dark);
  font-weight: 700;
  line-height: 1.15;
}

.printing-instructions h4 {
  font-size: 1.1rem;
}

.printing-instructions h5 {
  margin-bottom: 8px;
  font-size: 0.9rem;
}

.printing-instructions-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
}

.printing-instructions ol,
.printing-instructions ul {
  display: grid;
  gap: 5px;
  padding-left: 20px;
  color: var(--ink);
  font-size: 0.88rem;
  font-weight: 500;
  line-height: 1.35;
}

.printing-instructions p {
  color: var(--muted);
  font-size: 0.86rem;
  font-weight: 500;
  line-height: 1.4;
}

.printing-instructions a {
  color: var(--green-dark);
  font-weight: 700;
  text-decoration-thickness: 2px;
  text-underline-offset: 3px;
}

.printing-instructions .template-reminder {
  padding-top: 10px;
  border-top: 1px solid var(--line);
  color: var(--green-dark);
}

.ready-page-footer {
  margin: 0;
  padding: 14px 16px;
  border: 1px solid rgba(11, 122, 52, 0.18);
  border-radius: 14px;
  color: var(--green-dark);
  background: #f7fbf8;
  font-size: 0.9rem;
  font-weight: 700;
  line-height: 1.35;
}

.print-sheet-frame {
  display: grid;
  gap: clamp(18px, 3vw, 30px);
  justify-items: center;
  padding: clamp(14px, 2.5vw, 24px);
  border: 1px solid var(--line);
  border-radius: 18px;
  background: linear-gradient(135deg, #f3f7f5 0 25%, transparent 25% 50%, #f3f7f5 50% 75%, transparent 75% 100%);
  background-size: 18px 18px;
}

.print-sheet-page {
  display: grid;
  width: min(100%, 520px);
  aspect-ratio: 8.5 / 11;
  border: 1px solid #d4dad7;
  background: var(--white);
  font-family: var(--ready-label-font, var(--carecheck-ready-font));
  box-shadow: 0 18px 36px rgba(16, 90, 49, 0.12);
  break-after: page;
  page-break-after: always;
}

.print-sheet-page:last-child {
  break-after: auto;
  page-break-after: auto;
}

.print-sheet-page.sheet-94207 {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  grid-template-rows: repeat(5, minmax(0, 1fr));
  gap: 2.2% 4.5%;
  padding: 5.2% 5.4%;
}

.print-sheet-page.sheet-6874 {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  grid-template-rows: repeat(3, minmax(0, 1fr));
  gap: 4% 5%;
  padding: 8.2% 6.5%;
}

.print-sheet-page.sheet-94256 {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  grid-template-rows: repeat(2, minmax(0, 1fr));
  width: min(100%, 680px);
  aspect-ratio: 11 / 8.5;
  gap: 4.7% 4.5%;
  padding: 6.5% 2.3%;
}

.sheet-label {
  display: grid;
  grid-template-columns: clamp(34px, 23%, 64px) minmax(0, 1fr);
  gap: clamp(5px, 1.5vw, 10px);
  align-items: center;
  min-width: 0;
  padding: clamp(7px, 1.8vw, 12px);
  border: 1px dashed rgba(11, 122, 52, 0.42);
  border-radius: 8px;
  background: var(--white);
  overflow: hidden;
}

.sheet-label-empty {
  border-color: rgba(91, 106, 98, 0.18);
  background: #fcfdfc;
}

.sheet-label-photo {
  width: 100%;
  aspect-ratio: 1;
  border: 1px solid var(--green-light);
  border-radius: 8px;
}

.sheet-label-copy {
  display: grid;
  gap: 1px;
  min-width: 0;
}

.sheet-label.has-no-photo {
  grid-template-columns: 1fr;
  align-content: center;
  justify-items: center;
  text-align: center;
}

.sheet-label.has-no-photo .sheet-label-copy {
  align-content: center;
  justify-items: center;
  width: 100%;
  height: 100%;
  max-width: 100%;
}

.sheet-label-copy p,
.sheet-label-copy h4,
.sheet-label-copy small {
  margin: 0;
}

.sheet-label-copy p {
  color: var(--green);
  font-size: clamp(0.54rem, 1.25vw, 0.76rem);
  font-weight: 700;
  letter-spacing: 0;
  text-transform: none;
}

.sheet-label-copy h4 {
  color: var(--ink);
  font-size: clamp(0.62rem, 1.8vw, 1.1rem);
  line-height: 1.05;
  max-width: 100%;
  overflow-wrap: normal;
  white-space: nowrap;
}

.sheet-label.has-no-photo .sheet-label-copy h4 {
  line-height: 1.02;
  text-align: center;
}

.classroom-label-card h3.allow-name-wrap,
.sheet-label-copy h4.allow-name-wrap {
  overflow-wrap: anywhere;
  white-space: normal;
}

.sheet-label-copy small {
  color: var(--muted);
  font-size: clamp(0.46rem, 1.1vw, 0.68rem);
  font-weight: 500;
  line-height: 1.15;
}

.sheet-94207 .sheet-label {
  grid-template-columns: clamp(62px, 36%, 98px) minmax(0, 1fr);
  gap: clamp(8px, 1.9vw, 13px);
  padding: clamp(8px, 2.1vw, 14px);
}

.sheet-94207 .sheet-label.has-no-photo {
  grid-template-columns: 1fr;
}

.sheet-94207 .sheet-label-copy {
  gap: 3px;
}

.sheet-94207 .sheet-label.has-photo .sheet-label-copy {
  align-content: center;
  justify-items: center;
  text-align: center;
}

.sheet-94207 .sheet-label.has-photo .sheet-label-copy > * {
  width: 100%;
  text-align: center;
}

.sheet-94207 .sheet-label.has-no-photo .sheet-label-copy {
  display: grid;
  grid-template-rows: minmax(0, 1fr) auto minmax(0, 1fr);
  gap: 5px;
  height: 100%;
  justify-content: stretch;
  justify-items: center;
  text-align: center;
}

.sheet-94207 .sheet-label.has-no-photo .sheet-label-copy > * {
  display: block;
  width: 100%;
  min-height: 0;
  text-align: center;
}

.sheet-94207 .sheet-label-copy p {
  font-size: clamp(0.68rem, 1.65vw, 0.98rem);
}

.sheet-94207 .sheet-label-copy h4 {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  min-height: 1.18em;
  font-size: clamp(1.18rem, 3.05vw, 1.82rem);
  text-align: center;
}

.sheet-94207 .sheet-label.has-no-photo .sheet-label-copy h4 {
  position: static;
  grid-row: 2;
  align-self: center;
  transform: none;
  font-size: clamp(1.25rem, 3.8vw, 2rem);
  line-height: 1.15;
  padding: 0;
}

.sheet-94207 .sheet-label.has-no-photo .sheet-label-copy p {
  position: static;
  grid-row: 1;
  align-self: end;
}

.sheet-94207 .sheet-label.has-no-photo .sheet-label-copy small {
  position: static;
  grid-row: 3;
  align-self: start;
}

/* The live preview is intentionally more compact than the full-size capture.
   PDF capture clones do not live inside .print-sheet-frame and retain the
   physical Avery photo dimensions. */
.print-sheet-frame .sheet-94207 .sheet-label.has-photo {
  grid-template-columns: clamp(48px, 29%, 76px) minmax(0, 1fr);
}

.print-sheet-frame .sheet-94207 .sheet-label-photo {
  width: 78%;
  justify-self: center;
}

.print-sheet-frame .sheet-6874 .sheet-label-photo {
  width: min(40%, 88px);
}

.sheet-94207 .sheet-label-copy small {
  font-size: clamp(0.52rem, 1.22vw, 0.74rem);
}

.sheet-94207 .sheet-label.has-no-photo .sheet-label-copy small {
  line-height: 1.2;
}

/* The detached classroom capture paints the centered grid row low. Keep the
   browser preview untouched and align the exported small-label name midpoint. */
.classroom-label-capture-page .sheet-94207 .sheet-label.has-no-photo .sheet-label-copy h4 {
  transform: translateY(-5px);
}

.sheet-6874 .sheet-label {
  grid-template-columns: 1fr;
  align-content: center;
  justify-items: center;
  gap: clamp(8px, 1.9vw, 13px);
  padding: clamp(9px, 2vw, 14px);
  text-align: center;
}

.sheet-6874 .sheet-label-photo {
  width: min(53%, 112px);
}

.sheet-6874 .sheet-label-copy {
  justify-items: center;
  gap: 4px;
  width: 100%;
  text-align: center;
}

.sheet-6874 .sheet-label.has-no-photo .sheet-label-copy {
  gap: 8px;
}

.sheet-6874 .sheet-label-copy p {
  order: 3;
  font-size: clamp(0.68rem, 1.7vw, 0.98rem);
}

.sheet-6874 .sheet-label-copy h4 {
  order: 1;
  line-height: 1.05;
  font-size: clamp(1.8rem, 5vw, 2.9rem);
  text-align: center;
}

.sheet-6874 .sheet-label.has-no-photo .sheet-label-copy h4 {
  font-size: clamp(1.9rem, 5.3vw, 3.1rem);
}

.sheet-6874 .sheet-label-copy small {
  order: 2;
  font-size: clamp(0.68rem, 1.7vw, 0.98rem);
}

.sheet-94256 .sheet-label {
  grid-template-columns: 1fr;
  align-content: center;
  justify-items: center;
  gap: clamp(10px, 2.2vw, 16px);
  padding: clamp(10px, 2vw, 13px);
  text-align: center;
}

.sheet-94256 .sheet-label-photo {
  width: min(43%, 156px);
}

.sheet-94256 .sheet-label-copy {
  justify-items: center;
  gap: 6px;
  width: 100%;
  text-align: center;
}

.sheet-94256 .sheet-label.has-no-photo .sheet-label-copy {
  gap: 10px;
}

.sheet-94256 .sheet-label-copy p {
  order: 3;
  font-size: clamp(0.82rem, 2.15vw, 1rem);
}

.sheet-94256 .sheet-label-copy h4 {
  order: 1;
  line-height: 1.05;
  font-size: clamp(2.2rem, 5.7vw, 3.7rem);
  text-align: center;
}

.sheet-94256 .sheet-label.has-no-photo .sheet-label-copy h4 {
  font-size: clamp(2.35rem, 6vw, 4rem);
}

.sheet-94256 .sheet-label-copy small {
  order: 2;
  font-size: clamp(0.8rem, 1.9vw, 1rem);
}

.health-controls-grid {
  display: grid;
  grid-template-columns: minmax(360px, 1fr) minmax(360px, 1fr);
  grid-template-areas:
    "template template"
    "medication allergies"
    "medication food";
  gap: 14px;
  align-items: stretch;
}

.health-control-card {
  display: grid;
  align-content: start;
  gap: 12px;
  padding: 16px;
  border: 1px solid var(--line);
  border-radius: 10px;
  background: #fbfdfc;
}

.health-template-card {
  grid-area: template;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  align-items: end;
  justify-content: start;
  gap: 10px;
}

.health-template-card h3 {
  display: none;
}

.health-template-card label {
  grid-column: span 2;
  min-width: 0;
}

.health-template-card .ready-checkbox-card {
  min-height: 40px;
  align-self: end;
}

.health-template-card .health-photo-option {
  grid-column: auto;
}

.health-allergy-card {
  grid-area: allergies;
}

.health-food-card {
  grid-area: food;
}

.health-medication-card {
  grid-area: medication;
}

.health-control-card h3,
.health-section-heading h3 {
  margin: 0;
  color: var(--green-dark);
  font-size: 1.12rem;
  line-height: 1.1;
}

.health-section-heading h3 span {
  display: inline;
  margin-left: 8px;
  color: var(--muted);
  font-size: 0.82rem;
  font-weight: 700;
}

.health-section-heading {
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 14px;
  min-height: 36px;
}

.health-section-heading label {
  max-width: 128px;
  font-size: 0.82rem;
}

.health-option-grid,
.health-custom-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 6px;
  align-content: start;
}

.health-option-grid .ready-checkbox-card {
  box-sizing: border-box;
  min-height: 44px;
  height: 44px;
  align-content: center;
  justify-content: flex-start;
  border-radius: 10px;
  padding: 7px 9px;
  text-align: left;
}

.health-option-grid .ready-checkbox-card,
.health-custom-row span,
.health-medication-row span {
  display: grid !important;
  grid-template-columns: 22px minmax(0, 1fr);
  justify-items: start;
  align-items: center;
  gap: 10px !important;
}

.health-custom-row {
  box-sizing: border-box;
  display: grid !important;
  grid-template-columns: 22px minmax(0, 1fr);
  gap: 8px !important;
  align-items: center;
  min-height: 44px;
  height: 44px;
  padding: 7px 9px;
  border: 1px solid var(--line);
  border-radius: 10px;
  background: var(--white);
  color: var(--ink);
  font-size: 0.92rem;
  font-weight: 900;
}

.health-custom-row span {
  display: grid !important;
  grid-template-columns: 22px;
  gap: 0 !important;
  justify-items: center;
  align-items: center;
  min-width: 0;
}

.health-custom-row span input {
  grid-column: 1;
}

.health-photo-option {
  max-width: 220px;
}

.health-custom-row input[type="text"] {
  width: 100%;
  height: 30px;
  min-height: 30px;
  padding: 5px 10px;
  font-size: 0.92rem;
  font-weight: 700;
}

.health-medication-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 6px;
}

.health-medication-row {
  display: grid !important;
  grid-template-columns: 1fr;
  gap: 6px !important;
  align-items: start;
  justify-items: stretch;
  min-height: 68px;
  padding: 7px 8px;
  border: 1px solid var(--line);
  border-radius: 10px;
  background: var(--white);
}

.health-medication-row span {
  width: 100%;
  text-align: left;
}

.health-medication-row input[type="date"],
.health-medication-row input[type="text"] {
  min-height: 30px;
  padding: 5px 8px;
  font-size: 0.78rem;
}

.health-expiration-label {
  display: none;
}

.health-antibiotic-row {
  grid-template-columns: 1fr;
}

@media (max-width: 900px) {
  .health-controls-grid {
    grid-template-columns: 1fr;
    grid-template-areas:
      "template"
      "medication"
      "allergies"
      "food";
  }

  .health-template-card {
    grid-template-columns: 1fr;
    align-items: stretch;
  }

  .health-medication-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .health-photo-option {
    max-width: none;
  }

  .health-antibiotic-row {
    grid-template-columns: 1fr;
  }
}

.health-sheet-preview {
  display: grid;
  gap: 16px;
  padding: 18px;
  border: 1px solid var(--line);
  border-radius: 10px;
  background: var(--white);
}

.health-sheet-frame {
  display: grid;
  justify-items: center;
  padding: clamp(14px, 2.5vw, 24px);
  border: 1px solid var(--line);
  border-radius: 18px;
  background: linear-gradient(135deg, #f3f7f5 0 25%, transparent 25% 50%, #f3f7f5 50% 75%, transparent 75% 100%);
  background-size: 18px 18px;
}

.health-sheet-pages {
  display: grid;
  gap: 24px;
  justify-items: center;
  width: 100%;
}

.health-sheet-page {
  width: min(100%, 560px);
  aspect-ratio: 8.5 / 11;
  background: var(--white);
}

.health-label {
  box-sizing: border-box;
  display: grid;
  grid-template-rows: minmax(0, auto) auto minmax(0, 1fr);
  align-content: start;
  gap: 3px;
  min-width: 0;
  padding: clamp(6px, 1.35vw, 10px);
  border: 1.2px solid rgba(11, 122, 52, 0.48);
  border-radius: 8px;
  background: var(--white);
  overflow: hidden;
}

.health-label.has-photo {
  grid-template-rows: auto auto auto;
  gap: 4px;
  align-content: start;
  justify-items: center;
  text-align: center;
}

.sheet-94207 .health-label.has-photo.has-many-items {
  grid-template-rows: auto auto auto;
  gap: 1px;
  padding: 5px 7px;
}

.sheet-94207 .health-label.has-photo {
  grid-template-rows: auto auto minmax(0, 1fr);
  gap: 2px;
  align-content: stretch;
  padding: 5px 7px;
}

.sheet-94207 .health-label.has-photo .health-label-profile {
  grid-template-columns: 38px minmax(0, 1fr);
  gap: 6px;
  align-items: center;
  justify-items: stretch;
  margin-bottom: 3px;
  text-align: left;
}

.sheet-94207 .health-label.has-photo .health-label-photo,
.sheet-94207 .health-label.has-photo.has-many-items .health-label-photo {
  width: 38px;
  margin: 0;
}

.sheet-94207 .health-label.has-photo .health-label-copy {
  justify-items: start;
  text-align: left;
}

.sheet-94207 .health-label.has-photo h4,
.sheet-94207 .health-label.has-photo small {
  text-align: left;
}

.sheet-94207 .health-label.has-photo h4 {
  max-height: 2.08em;
  line-height: 1.04;
  white-space: normal;
  overflow: hidden;
}

.sheet-94207 .health-label.has-photo .health-label-title {
  align-self: center;
}

.sheet-94207 .health-label.has-photo .health-label-list {
  align-content: start;
  line-height: 1.06;
}

.health-label-empty {
  border-color: rgba(91, 106, 98, 0.16);
  background: #fcfdfc;
}

.health-label-profile {
  display: grid;
  grid-template-columns: 1fr;
  gap: 1px;
  align-items: start;
  justify-items: center;
  text-align: center;
  min-width: 0;
}

.health-label.has-photo .health-label-profile {
  grid-template-columns: 1fr;
  gap: 2px;
  align-items: start;
  justify-content: center;
  justify-items: center;
  text-align: center;
  width: 100%;
}

.sheet-94207 .health-label.has-photo.has-many-items .health-label-profile {
  grid-template-columns: 38px minmax(0, 1fr);
  gap: 6px;
  align-items: center;
  justify-items: stretch;
  text-align: left;
}

.health-label.has-no-photo .health-label-profile {
  grid-template-columns: 1fr;
  justify-items: center;
  text-align: center;
}

.health-label-photo {
  width: clamp(38px, 24%, 64px);
  aspect-ratio: 1;
  margin-bottom: 0;
  border: 1px solid var(--green-light);
  border-radius: 8px;
  justify-self: center;
  overflow: hidden;
}

.health-label-photo img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}

.sheet-94207 .health-label.has-photo.has-many-items .health-label-photo {
  width: 38px;
  margin: 0;
}

.health-label-copy {
  display: grid;
  justify-items: center;
  gap: 1px;
  min-width: 0;
  width: 100%;
  text-align: center;
}

.health-label.has-photo .health-label-copy {
  justify-items: center;
  text-align: center;
  width: 100%;
  max-width: 100%;
}

.sheet-94207 .health-label.has-photo.has-many-items .health-label-copy {
  gap: 0;
}

.health-label.has-no-photo {
  align-content: center;
  grid-template-rows: auto auto auto;
  gap: 6px;
  justify-items: center;
  text-align: center;
}

.sheet-94207 .health-label.has-no-photo.has-many-items {
  gap: 1px;
  padding: 6px 8px;
}

.health-label.has-no-photo .health-label-copy {
  justify-items: center;
  width: 100%;
}

.health-label h4,
.health-label small,
.health-label p,
.health-label ul {
  margin: 0;
}

.health-label h4 {
  color: var(--ink);
  font-size: clamp(0.92rem, 2.15vw, 1.34rem);
  line-height: 1.08;
  white-space: nowrap;
}

.health-label.has-photo h4 {
  font-size: clamp(0.74rem, 1.55vw, 1rem);
}

.health-label.has-no-photo h4 {
  font-size: clamp(1.12rem, 3vw, 1.7rem);
  text-align: center;
}

.health-label small {
  color: var(--muted);
  font-size: clamp(0.44rem, 0.95vw, 0.66rem);
  font-weight: 700;
  line-height: 1.1;
}

.health-label.has-photo small {
  font-size: clamp(0.38rem, 0.82vw, 0.58rem);
  line-height: 1.02;
}

.sheet-94207 .health-label.has-photo.has-many-items small {
  font-size: clamp(0.34rem, 0.72vw, 0.48rem);
  line-height: 1.02;
}

.sheet-94207 .health-label.has-photo.has-many-items .health-label-title {
  font-size: clamp(0.44rem, 0.82vw, 0.56rem);
}

.sheet-94207 .health-label.has-no-photo.has-many-items .health-label-title {
  font-size: clamp(0.36rem, 0.72vw, 0.48rem);
}

.health-label-title {
  justify-self: center;
  width: auto;
  max-width: 100%;
  font-size: clamp(0.6rem, 1.2vw, 0.78rem);
  font-weight: 900;
  letter-spacing: 0.08em;
  line-height: 1.08;
  text-align: center;
  text-transform: uppercase;
}

.health-label.has-no-photo .health-label-title {
  font-size: clamp(0.72rem, 1.55vw, 1rem);
  text-align: center;
}

.health-accent-red {
  color: #b42318;
}

.health-accent-green {
  color: var(--green);
}

.health-accent-blue {
  color: #245c8a;
}

.health-label-list {
  box-sizing: border-box;
  display: grid;
  grid-template-columns: 1fr;
  align-content: center;
  justify-items: center;
  gap: 0;
  min-height: 0;
  width: auto;
  max-width: 100%;
  padding-left: 0;
  color: var(--ink);
  font-size: clamp(0.54rem, 1.06vw, 0.72rem);
  font-weight: 700;
  line-height: 1.16;
  list-style: none;
  text-align: center;
  overflow: hidden;
}

.health-label-list li {
  width: 100%;
  text-align: center;
}

.health-label.has-no-photo .health-label-list {
  justify-items: center;
  padding-left: 0;
  list-style-position: inside;
  text-align: center;
}

.sheet-94207 .health-label.has-photo.has-many-items .health-label-list {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  column-gap: 6px;
  row-gap: 0;
  line-height: 1.02;
  align-content: start;
}

.sheet-94207 .health-label.has-no-photo.has-many-items .health-label-list {
  width: 100%;
  gap: 0;
  font-size: clamp(0.48rem, 0.92vw, 0.62rem);
  line-height: 1.04;
}

.sheet-94207 .health-label.has-no-photo.has-many-items h4 {
  font-size: clamp(1.08rem, 2.65vw, 1.46rem);
  line-height: 1.04;
}

.sheet-94207 .health-label.has-no-photo.has-many-items small {
  font-size: clamp(0.4rem, 0.82vw, 0.54rem);
  line-height: 1.04;
}

.sheet-94207 .health-label-list li {
  text-align: center;
}

.health-label-list li {
  min-width: 0;
}

.sheet-6874 .health-label,
.sheet-94256 .health-label {
  gap: 4px;
  padding: clamp(9px, 1.55vw, 13px);
}

.sheet-6874 .health-label-profile,
.sheet-94256 .health-label-profile {
  grid-template-columns: 1fr;
  justify-items: center;
  align-items: start;
  text-align: center;
}

.sheet-6874 .health-label.has-photo .health-label-profile {
  grid-template-columns: 1fr;
  align-items: start;
  justify-content: center;
  justify-items: center;
  text-align: center;
}

.sheet-6874 .health-label.has-photo {
  gap: 1px;
  padding: 8px;
}

.sheet-94256 .health-label.has-photo .health-label-profile {
  grid-template-columns: 1fr;
  align-items: start;
  justify-content: center;
  justify-items: center;
  text-align: center;
}

.sheet-94256 .health-label.has-photo {
  gap: 3px;
  padding: 10px;
}

.sheet-6874 .health-label-photo {
  width: clamp(58px, 24%, 82px);
}

.sheet-94256 .health-label-photo {
  width: clamp(72px, 25%, 108px);
}

.sheet-94256 .health-label.has-photo .health-label-photo {
  width: 52px;
}

.sheet-6874 .health-label.has-photo .health-label-copy,
.sheet-94256 .health-label.has-photo .health-label-copy {
  justify-items: center;
  width: auto;
  max-width: 100%;
  text-align: center;
}

.sheet-6874 .health-label h4 {
  font-size: clamp(1.18rem, 2.7vw, 1.72rem);
}

.sheet-6874 .health-label.has-photo h4 {
  font-size: clamp(0.92rem, 1.95vw, 1.24rem);
}

.sheet-94256 .health-label h4 {
  font-size: clamp(1.36rem, 3vw, 2.1rem);
}

.sheet-94256 .health-label.has-photo h4 {
  font-size: clamp(1rem, 2.15vw, 1.48rem);
}

.sheet-94256 .health-label.has-photo h4 {
  font-size: clamp(0.9rem, 1.85vw, 1.22rem);
}

.sheet-6874 .health-label small {
  font-size: clamp(0.48rem, 1vw, 0.64rem);
}

.sheet-6874 .health-label.has-photo small {
  font-size: clamp(0.44rem, 0.9vw, 0.58rem);
}

.sheet-94256 .health-label small {
  font-size: clamp(0.5rem, 1.05vw, 0.68rem);
}

.sheet-94256 .health-label.has-photo small {
  font-size: clamp(0.46rem, 0.95vw, 0.62rem);
}

.sheet-94256 .health-label.has-photo small {
  font-size: clamp(0.42rem, 0.78vw, 0.54rem);
}

.sheet-6874 .health-label-title {
  font-size: clamp(0.68rem, 1.25vw, 0.86rem);
}

.sheet-94256 .health-label-title {
  font-size: clamp(0.74rem, 1.38vw, 0.98rem);
}

.sheet-6874 .health-label-list,
.sheet-94256 .health-label-list {
  width: auto;
  max-width: 100%;
  grid-template-columns: 1fr;
  justify-items: center;
  text-align: center;
  padding-left: 0;
  list-style-position: inside;
  font-size: clamp(0.72rem, 1.35vw, 0.92rem);
  line-height: 1.12;
}

.sheet-94256 .health-label-list {
  font-size: clamp(0.82rem, 1.55vw, 1.08rem);
}

.sheet-94256 .health-label.has-photo .health-label-list {
  width: 100%;
  font-size: clamp(0.92rem, 1.65vw, 1.15rem);
  line-height: 1.08;
}

.sheet-6874 .health-label.has-photo .health-label-list {
  width: 100%;
}

.community-checkbox-grid {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.community-export-actions {
  display: flex;
  justify-content: flex-start;
}

.community-label-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 20px;
  align-items: start;
}

.community-label-card {
  min-width: 0;
}

.community-preview-viewport {
  --preview-scale: 0.52;
  --preview-pad: 14px;
  --preview-pad-total: 28px;
  position: relative;
  width: calc((var(--preview-width) * var(--preview-scale)) + var(--preview-pad-total));
  height: calc((var(--preview-height) * var(--preview-scale)) + var(--preview-pad-total));
  max-width: 100%;
  margin-inline: auto;
  overflow: hidden;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #ffffff;
  box-shadow: 0 8px 18px rgba(35, 49, 40, 0.05);
}

.community-preview-viewport .fixed-print-page {
  position: absolute;
  left: var(--preview-pad);
  top: var(--preview-pad);
  transform: scale(var(--preview-scale)) translate(
    calc(var(--preview-offset-x, 0px) * -1),
    calc(var(--preview-offset-y, 0px) * -1)
  );
  transform-origin: top left;
}

.community-preview-viewport[data-community-preview="community-standard-cubby"] {
  --preview-scale: 0.5;
}

.community-preview-viewport[data-community-preview="community-compact-cubby"] {
  --preview-scale: 0.66;
}

/* The PDF rasterizer uses a lower text baseline for the arch labels. These
   offsets affect only the live previews and preserve the verified PDF layout. */
.community-preview-viewport[data-community-preview="community-standard-cubby"] .fixed-community-name {
  transform: translateY(34px);
}

.community-preview-viewport[data-community-preview="community-compact-cubby"] .fixed-community-name {
  transform: translateY(30px);
}

.community-preview-viewport[data-community-preview="community-infant-cubby"] {
  --preview-scale: 0.48;
}

.community-preview-viewport[data-community-preview="community-basket-label"] {
  --preview-scale: 0.68;
}

.picture-label-layout {
  display: grid;
  grid-template-columns: minmax(260px, 0.82fr) minmax(360px, 1.18fr);
  gap: clamp(18px, 3vw, 28px);
  align-items: start;
}

.picture-label-controls,
.picture-sheet-preview {
  display: grid;
  gap: 14px;
  min-width: 0;
}

.picture-label-controls {
  padding: 18px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #ffffff;
}

.picture-label-controls h3 {
  margin: 0;
  color: var(--ink);
}

.picture-label-controls label {
  display: grid;
  gap: 7px;
  color: var(--ink);
  font-weight: 800;
}

.picture-label-controls [hidden] {
  display: none !important;
}

.picture-label-controls select,
.picture-label-controls input[type="file"],
.picture-label-controls input[type="text"] {
  width: 100%;
}

.picture-upload-field span {
  color: var(--muted);
  font-size: 0.86rem;
  font-weight: 700;
}

.picture-label-items {
  display: none;
  gap: 10px;
  max-height: 470px;
  overflow: auto;
  padding-right: 2px;
}

.picture-label-text-row {
  grid-template-columns: 48px minmax(0, 1fr);
  align-items: center;
  padding: 8px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #f8fbf9;
}

.picture-label-text-row img {
  width: 48px;
  height: 48px;
  border-radius: 7px;
  object-fit: cover;
}

.picture-photo-position-control {
  position: absolute;
  right: 12px;
  bottom: 10px;
  z-index: 4;
  display: grid;
  grid-template-columns: minmax(0, 1fr) 24px;
  align-items: center;
  gap: 6px;
  width: min(44%, 210px);
  padding: 5px 8px;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.9);
  box-shadow: 0 4px 10px rgba(9, 37, 31, 0.14);
  opacity: 0.22;
  pointer-events: auto;
  transition: opacity 0.16s ease;
}

.picture-label-has-position-control:hover .picture-photo-position-control,
.picture-label-has-position-control:focus-within .picture-photo-position-control,
.picture-label-has-position-control:active .picture-photo-position-control {
  opacity: 1;
}

.picture-photo-position-control input {
  width: 100%;
  accent-color: var(--green);
}

.picture-photo-position-close {
  display: grid;
  width: 22px;
  height: 22px;
  min-width: 0;
  padding: 0;
  place-items: center;
  border: 0;
  border-radius: 999px;
  color: var(--white);
  background: var(--green);
  font-size: 0.72rem;
  font-weight: 900;
  line-height: 1;
  cursor: pointer;
}

.picture-sheet-frame {
  display: grid;
  justify-items: center;
  max-width: 100%;
  overflow-x: auto;
  padding: clamp(14px, 2.5vw, 24px);
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #f7fbf8;
}

.picture-sheet-pages {
  display: grid;
  justify-items: center;
  width: 100%;
}

.picture-sheet-page .picture-label {
  display: grid;
  position: relative;
  grid-template-columns: 1fr;
  grid-template-rows: minmax(0, 1fr) minmax(36px, auto);
  gap: clamp(7px, 1.6vw, 12px);
  align-items: stretch;
  justify-items: center;
  min-width: 0;
  padding: clamp(7px, 1.7vw, 12px);
  border: 1px dashed rgba(11, 122, 52, 0.42);
  border-radius: 8px;
  background: #ffffff;
  overflow: hidden;
  text-align: center;
}

.picture-sheet-page.picture-square35,
.picture-sheet-page.picture-long125x8,
.picture-sheet-page.picture-business-card,
.picture-sheet-page.picture-pocket-chart,
.picture-sheet-page.picture-full-page {
  grid-template-columns: repeat(var(--picture-cutout-columns), var(--picture-cutout-width));
  grid-template-rows: repeat(var(--picture-cutout-rows), var(--picture-cutout-height));
  justify-content: center;
  align-content: center;
  gap: var(--picture-cutout-gap-y) var(--picture-cutout-gap-x);
  width: min(100%, var(--picture-cutout-page-width));
  aspect-ratio: 8.5 / 11;
  padding: 0;
}

.picture-sheet-page.picture-square35 .picture-label,
.picture-sheet-page.picture-business-card .picture-label,
.picture-sheet-page.picture-pocket-chart .picture-label,
.picture-sheet-page.picture-full-page .picture-label {
  grid-template-columns: 1fr;
  grid-template-rows: minmax(0, 1fr) minmax(42px, auto);
  gap: 8px;
  padding: 14px;
  text-align: center;
}

.picture-sheet-page.picture-long125x8 .picture-label {
  grid-template-columns: 1fr 1fr;
  grid-template-rows: 1fr;
  gap: 14px;
  padding: 10px 16px;
}

.picture-sheet-page.picture-long125x8 .picture-label-photo img {
  object-fit: cover;
}

.picture-sheet-page.picture-business-card .picture-label {
  grid-template-rows: minmax(0, 1fr) minmax(32px, auto);
  padding: 10px;
}

.picture-sheet-page.picture-business-card .picture-label-photo {
  aspect-ratio: 1;
  height: auto;
  max-height: 104px;
}

.picture-sheet-page.picture-business-card .picture-label-photo img {
  object-fit: cover;
}

.picture-sheet-page.picture-pocket-chart .picture-label {
  grid-template-rows: minmax(0, 1fr) minmax(42px, auto);
}

.picture-label-empty {
  border-color: rgba(91, 106, 98, 0.16);
  background: #fcfdfc;
}

.picture-label-photo {
  position: relative;
  width: min(100%, 138px);
  height: 100%;
  min-height: 0;
  overflow: hidden;
  border: 1px solid var(--green-light);
  border-radius: 8px;
  background: #ffffff;
}

.picture-label-photo img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.picture-label-photo[data-drag-photo-position] {
  cursor: ns-resize;
  touch-action: none;
}

.picture-label p {
  align-self: center;
  box-sizing: border-box;
  width: 100%;
  height: 100%;
  margin: 0;
  min-width: 0;
  min-height: 0;
  color: var(--ink);
  font-family: var(--picture-font);
  font-size: var(--picture-font-size);
  font-weight: 700;
  line-height: 1.05;
  text-align: center;
  overflow: hidden;
  overflow-wrap: anywhere;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}

.picture-label p[contenteditable="true"] {
  cursor: text;
  outline: none;
}

.picture-label p[contenteditable="true"]:focus {
  border-radius: 4px;
  box-shadow: 0 0 0 2px rgba(11, 122, 52, 0.18);
}

.picture-label-cutout .picture-label-photo {
  width: min(100%, 184px);
  justify-self: center;
}

.picture-label-split .picture-label-photo {
  width: 100%;
  height: 100%;
}

.picture-sheet-page.picture-full-page .picture-label {
  padding: 36px;
}

.picture-sheet-page.picture-full-page-landscape {
  width: min(100%, 792px);
  aspect-ratio: 11 / 8.5;
  zoom: 1;
}

.picture-sheet-page.picture-full-page .picture-label-photo {
  width: min(100%, 560px);
}

.picture-sheet-page.picture-full-page .picture-label-photo img {
  object-fit: cover;
}

.picture-sheet-page.picture-full-page .picture-label p {
  font-size: min(var(--picture-font-size), 54px);
}

.sheet-6874 .picture-label,
.sheet-94256 .picture-label {
  grid-template-columns: 1fr;
  grid-template-rows: minmax(0, 1fr) minmax(42px, auto);
  align-content: center;
  justify-items: center;
  text-align: center;
}

.sheet-6874 .picture-label-photo {
  width: min(100%, 156px);
}

.sheet-94256 .picture-label-photo {
  width: min(100%, 210px);
}

.sheet-94256 .picture-label.picture-photo-orientation-portrait .picture-label-photo {
  width: min(44%, 150px);
  aspect-ratio: 3 / 4;
}

.sheet-94256 .picture-label.picture-photo-orientation-landscape .picture-label-photo {
  width: min(82%, 240px);
  aspect-ratio: 4 / 3;
}

.sheet-6874 .picture-label-photo img,
.sheet-94256 .picture-label-photo img {
  object-fit: contain;
}

.sheet-94256 .picture-label.picture-photo-orientation-portrait .picture-label-photo img,
.sheet-94256 .picture-label.picture-photo-orientation-landscape .picture-label-photo img {
  object-fit: cover;
}

.sheet-94207 .picture-label-photo {
  width: min(100%, 118px);
}

.sheet-94207 .picture-label {
  grid-template-columns: minmax(72px, 34%) minmax(0, 1fr);
  grid-template-rows: 1fr;
  align-items: center;
  justify-items: stretch;
  text-align: center;
}

.sheet-94207 .picture-label-photo {
  width: 100%;
  height: auto;
  aspect-ratio: 1;
  justify-self: center;
}

.sheet-94207 .picture-label p {
  align-self: center;
}

.picture-sheet-page.picture-pocket-chart {
  width: min(100%, 660px);
  aspect-ratio: 11 / 8.5;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  grid-template-rows: repeat(2, minmax(0, 1fr));
  gap: 18px;
  padding: 18px;
}

.community-label-card {
  display: grid;
  gap: 10px;
  align-content: start;
  justify-items: center;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}

.community-label-face {
  display: grid;
  position: relative;
  container-type: inline-size;
  grid-template-columns: var(--community-photo-size, clamp(48px, 9cqw, 58px)) minmax(0, 1fr);
  gap: var(--community-layout-gap, clamp(12px, 3.2cqw, 22px));
  align-items: center;
  width: 100%;
  max-width: min(100%, 640px);
  min-height: 104px;
  margin-inline: auto;
  padding: var(--community-safe-top, 14px) clamp(24px, 6cqw, 40px) var(--community-safe-bottom, 38px);
  border: 0;
  border-radius: 0;
  background: #ffffff;
  overflow: visible;
}

.community-label-face::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 0;
  background: no-repeat center / 100% 100%;
  background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 640 108' preserveAspectRatio='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M12 1 H628 Q639 1 639 14 V88 Q639 104 621 101 Q320 43 19 101 Q1 104 1 88 V14 Q1 1 12 1 Z' fill='white' stroke='%239aa29d' stroke-width='1'/%3E%3C/svg%3E");
}

.community-standard-label .community-label-face::before,
.community-compact-label .community-label-face::before,
.community-infant-label .community-label-face::before,
.community-pdf-arch::before {
  display: none;
}

.community-cut-guide-layer {
  position: absolute;
  inset: 0;
  pointer-events: none;
  z-index: 0;
}

.community-cut-guide-layer svg {
  display: block;
  width: 100%;
  height: 100%;
  overflow: visible;
}

.community-cut-guide-line {
  fill: #ffffff;
  stroke: #9aa29d;
  stroke-width: 1.2;
  vector-effect: non-scaling-stroke;
}

.community-cut-guide-line-green {
  stroke: #0b7a34;
  stroke-width: 2;
}

.community-label-copy,
.community-label-face h3 {
  min-width: 0;
  position: relative;
  z-index: 1;
}

.community-label-copy {
  display: grid;
  grid-column: 2;
  grid-row: 1;
  align-content: center;
  align-items: center;
  align-self: center;
  justify-items: center;
  justify-self: stretch;
  width: 100%;
  height: var(--community-content-height, 100%);
  max-height: 100%;
  overflow: visible;
  padding: var(--community-content-padding, 0);
  text-align: center;
}

.community-standard-label .community-label-face {
  --community-photo-size: clamp(70px, 13.2cqw, 88px);
  --community-content-height: 74px;
  --community-arch-center-x: 50%;
  --community-name-max-width: 74%;
  --community-layout-gap: clamp(16px, 3.2cqw, 24px);
  --community-safe-top: 10px;
  --community-safe-bottom: 40px;
  padding-left: clamp(10px, 2.2cqw, 16px);
  padding-right: clamp(28px, 6cqw, 42px);
  aspect-ratio: 6 / 1;
  max-width: min(100%, 640px);
}

.community-standard-label {
  grid-column: auto;
}

.community-compact-label .community-label-face {
  --community-photo-size: clamp(50px, 12.5cqw, 64px);
  --community-content-height: 60px;
  --community-arch-center-x: 50%;
  --community-name-max-width: 72%;
  --community-layout-gap: clamp(10px, 2.6cqw, 16px);
  --community-safe-top: 8px;
  --community-safe-bottom: 34px;
  padding-left: clamp(8px, 2.1cqw, 14px);
  padding-right: clamp(20px, 5cqw, 34px);
  aspect-ratio: 4.75 / 1;
  max-width: min(100%, 500px);
  min-height: 76px;
}

.community-infant-label .community-label-face {
  aspect-ratio: 0.74 / 1;
  max-width: min(100%, 260px);
  min-height: 330px;
  grid-template-columns: 1fr;
  grid-template-rows: auto auto;
  --community-photo-size: clamp(148px, 52cqw, 188px);
  --community-content-width: 86%;
  --community-content-height: auto;
  gap: clamp(12px, 4.4cqw, 20px);
  align-content: start;
  justify-items: center;
  padding: clamp(34px, 11cqw, 44px) clamp(22px, 8cqw, 30px);
  border: 0;
  border-radius: 999px;
}

.community-infant-label .community-label-face::before {
  background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 260 350' preserveAspectRatio='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cellipse cx='130' cy='175' rx='123' ry='168' fill='white' stroke='%230B7A34' stroke-width='2'/%3E%3C/svg%3E");
}

.community-label-photo {
  display: grid;
  width: var(--community-photo-size, 100%);
  height: auto;
  min-height: 0;
  aspect-ratio: 1;
  place-items: center;
  align-self: center;
  justify-self: start;
  overflow: hidden;
  border: 1px solid #d6ddd9;
  border-radius: 8px;
  color: #69766f;
  background: #eef1ef;
  font-weight: 900;
  font-size: clamp(0.68rem, 2.2cqw, 0.82rem);
  position: relative;
  z-index: 1;
}

.community-infant-label .community-label-photo {
  grid-row: 1;
  width: var(--community-photo-size, min(100%, 132px));
  transform: none;
}

.community-basket-photo {
  display: grid;
  width: 100%;
  aspect-ratio: 1;
  place-items: center;
  overflow: hidden;
  border: 2px solid var(--green-light);
  border-radius: 8px;
  color: var(--green-dark);
  background: var(--green-light);
  font-size: 1.25rem;
  font-weight: 900;
}

.community-label-card h3 {
  margin: 0;
  min-height: 0;
  box-sizing: border-box;
  width: 100%;
  max-width: 100%;
  padding: 1px 0 5px;
  display: block;
  justify-self: stretch;
  color: var(--ink);
  font-family: var(--ready-label-font, var(--carecheck-ready-font));
  border: 0;
  border-radius: 0;
  background: transparent;
  text-align: center;
  font-size: clamp(1.15rem, 7.6cqw, 2.35rem);
  line-height: 1.07;
  overflow: visible;
  overflow-wrap: normal;
  text-overflow: clip;
  text-wrap: nowrap;
  white-space: nowrap;
  hyphens: none;
}

.community-standard-label h3 {
  font-size: 36px;
  line-height: 1.02;
  overflow-wrap: normal;
  text-overflow: clip;
  text-wrap: wrap;
  white-space: normal;
}

.community-compact-label h3 {
  overflow: visible;
  font-size: 27px;
  line-height: 1.02;
  overflow-wrap: normal;
  text-overflow: clip;
  text-wrap: wrap;
  white-space: normal;
  hyphens: none;
}

.community-standard-label .community-label-copy,
.community-compact-label .community-label-copy {
  position: absolute;
  left: var(--community-arch-center-x, 50%);
  top: var(--community-safe-top, 10px);
  grid-column: 1 / -1;
  justify-self: auto;
  width: var(--community-name-max-width, 72%);
  height: var(--community-content-height, 100%);
  transform: translateX(-50%);
}

.community-infant-label h3 {
  width: 100%;
  min-height: 0;
  padding-bottom: 4px;
  text-align: center;
  font-size: clamp(1.34rem, 8.4cqw, 1.9rem);
  line-height: 1.08;
  overflow-wrap: normal;
  word-break: normal;
  writing-mode: horizontal-tb;
  text-wrap: wrap;
  white-space: normal;
}

.community-infant-label .community-label-copy {
  grid-column: 1;
  grid-row: 2;
  align-content: center;
  justify-items: center;
  justify-self: center;
  width: min(100%, var(--community-content-width, 72%));
  min-height: 86px;
  height: auto;
  overflow: visible;
  text-align: center;
  transform: none;
}

.community-infant-label .community-label-photo {
  justify-self: center;
}

.community-basket-label {
  grid-column: auto;
}

.community-basket-label .community-label-face {
  grid-template-columns: minmax(76px, 22%) minmax(0, 1fr);
  align-items: center;
  gap: clamp(14px, 3cqw, 22px);
  width: min(100%, 390px);
  max-width: 390px;
  aspect-ratio: 5 / 1.5;
  min-height: 0;
  padding: clamp(14px, 3.4cqw, 22px);
  border: 2px solid rgba(11, 122, 52, 0.34);
  border-left: 12px solid var(--green);
  border-radius: 8px;
  background: var(--white);
}

.community-basket-label .community-label-face h3 {
  grid-column: 2;
}

.community-basket-label .community-label-face::before {
  display: none;
}

.community-basket-label h3 {
  min-height: 0;
  border: 0;
  background: transparent;
  font-size: clamp(1.45rem, 7.2cqw, 2.75rem);
  white-space: nowrap;
  text-wrap: nowrap;
}

.community-pdf-render-root {
  position: fixed;
  left: -100000px;
  top: 0;
  z-index: -1;
  display: grid;
  gap: 24px;
  background: #ffffff;
  color: var(--ink);
  font-family: var(--ready-label-font, var(--carecheck-ready-font));
  pointer-events: none;
}

.community-pdf-page {
  position: relative;
  overflow: visible;
  background: #ffffff;
  font-family: var(--ready-label-font, var(--carecheck-ready-font));
}

.community-pdf-label {
  position: absolute;
  box-sizing: border-box;
  display: grid;
  align-items: center;
  justify-items: center;
  overflow: visible;
  background: #ffffff;
  color: var(--ink);
  font-family: var(--ready-label-font, var(--carecheck-ready-font));
}

.community-pdf-arch {
  grid-template-columns: 1fr;
  justify-items: stretch;
  align-content: center;
  padding: 14px 44px 58px 14px;
  border: 0;
  border-radius: 0;
}

.community-pdf-standard .community-pdf-arch {
  padding: 14px 44px 58px 14px;
}

.community-pdf-arch::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 0;
  background: no-repeat center / 100% 100%;
  background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 640 108' preserveAspectRatio='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M12 1 H628 Q639 1 639 14 V88 Q639 104 621 101 Q320 43 19 101 Q1 104 1 88 V14 Q1 1 12 1 Z' fill='white' stroke='%239aa29d' stroke-width='1'/%3E%3C/svg%3E");
}

.community-pdf-compact .community-pdf-arch {
  padding: 10px 32px 42px 12px;
}

.community-pdf-oval {
  grid-template-columns: 1fr;
  justify-items: center;
  align-content: start;
  padding: 34px 24px;
  border: 0;
  border-radius: 999px;
}

.community-pdf-photo {
  display: grid;
  width: 88px;
  height: 88px;
  place-items: center;
  justify-self: start;
  overflow: hidden;
  border: 1px solid #d6ddd9;
  border-radius: 8px;
  background: #eef1ef;
  color: #69766f;
  font-family: var(--ready-label-font, var(--carecheck-ready-font));
  font-size: 11px;
  font-weight: 700;
}

.community-pdf-compact .community-pdf-photo {
  width: 64px;
  height: 64px;
}

.community-pdf-oval .community-pdf-photo {
  width: 188px;
  height: 188px;
  justify-self: center;
  transform: none;
}

.community-pdf-photo img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: center;
}

.community-pdf-content {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  width: 100%;
  height: 100%;
  min-width: 0;
  max-width: 100%;
  max-height: 100%;
  align-content: center;
  align-items: center;
  justify-items: stretch;
  gap: 20px;
  padding: 6px;
  box-sizing: border-box;
  overflow: visible;
  text-align: center;
}

.community-pdf-standard .community-pdf-content,
.community-pdf-compact .community-pdf-content {
  position: relative;
}

.community-pdf-compact .community-pdf-content {
  gap: 14px;
  transform: none;
}

.community-pdf-oval .community-pdf-content {
  grid-template-columns: 1fr;
  width: min(100%, 86%);
  gap: 18px;
  justify-items: center;
  text-align: center;
}

.community-pdf-content strong,
.community-pdf-basket strong {
  display: block;
  width: 100%;
  overflow: visible;
  color: var(--ink);
  font-family: var(--ready-label-font, var(--carecheck-ready-font));
  font-weight: 700;
  line-height: 1.08;
  text-align: inherit;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.community-pdf-standard .community-pdf-content strong {
  position: absolute;
  left: 50%;
  top: 50%;
  grid-column: 1 / -1;
  justify-self: auto;
  align-self: center;
  width: 74%;
  font-size: 78px;
  line-height: 1.02;
  white-space: normal;
  text-overflow: clip;
  transform: translate(-50%, -50%);
}

.community-pdf-compact .community-pdf-content strong {
  position: absolute;
  left: 50%;
  top: 50%;
  grid-column: 1 / -1;
  justify-self: auto;
  align-self: center;
  width: 72%;
  font-size: 58px;
  line-height: 1.02;
  white-space: normal;
  text-overflow: clip;
  transform: translate(-50%, -50%);
}

.community-pdf-oval .community-pdf-content strong {
  font-size: 42px;
  max-height: 150px;
  line-height: 1.08;
  overflow-wrap: normal;
  word-break: normal;
  writing-mode: horizontal-tb;
  text-overflow: clip;
  white-space: normal;
}

.community-pdf-basket {
  grid-template-columns: auto minmax(0, 1fr);
  gap: 22px;
  padding: 12px 20px 12px 14px;
  border: 1.2px solid var(--green);
  border-radius: 8px;
}

.community-pdf-basket .community-pdf-photo {
  width: 58px;
  height: 58px;
}

.community-label-note {
  margin: 0;
  width: fit-content;
  max-width: 100%;
  padding: 5px 10px;
  border: 1px solid rgba(11, 122, 52, 0.16);
  border-radius: 999px;
  color: var(--green-dark);
  background: var(--green-light);
  font-size: 0.78rem;
  font-weight: 700;
  line-height: 1.15;
  text-align: center;
}

.ready-empty-state {
  display: grid;
  min-height: 160px;
  place-items: center;
  color: var(--muted);
  font-weight: 900;
}

.feeding-primary-stack,
.feeding-inputs {
  display: grid;
  gap: 14px;
}

.feeding-template-control {
  min-width: 0;
}

.feeding-setup-row {
  display: grid;
  grid-template-columns: 1fr;
  gap: 14px;
  align-items: start;
}

.feeding-template-photo-row {
  display: grid;
  grid-template-columns: minmax(260px, 560px) minmax(170px, 220px);
  gap: 14px;
  align-items: end;
}

.feeding-photo-option {
  min-height: 54px;
}

.feeding-label-type-fieldset {
  max-width: 760px;
}

.classroom-output-fieldset {
  display: grid;
  grid-template-columns: minmax(240px, 450px) minmax(220px, 360px);
  gap: 14px;
  align-items: end;
}

.classroom-logo-upload {
  display: grid;
  gap: 7px;
  color: var(--ink);
  font-weight: 800;
}

.welcome-template-logo {
  position: absolute;
  right: 34px;
  bottom: 28px;
  z-index: 4;
  width: 92px;
  height: 58px;
  object-fit: contain;
}

.feeding-inline-options {
  grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
  margin-top: 8px;
}

.feeding-feature-card {
  display: grid;
  gap: 16px;
  padding: 18px;
  border: 1px solid var(--line);
  border-radius: 24px;
  background: var(--white);
  box-shadow: 0 12px 26px rgba(16, 90, 49, 0.06);
}

.feeding-feature-card.is-selected {
  border-color: rgba(11, 122, 52, 0.42);
}

.feeding-feature-heading {
  display: flex;
  justify-content: space-between;
  gap: 16px;
  align-items: flex-start;
}

.feeding-feature-heading h3 {
  margin: 0;
  color: var(--green-dark);
  font-size: clamp(1.35rem, 3vw, 2rem);
  line-height: 1.15;
}

.feeding-feature-heading > span {
  min-width: max-content;
  padding: 8px 12px;
  border-radius: 999px;
  color: var(--green-dark);
  background: var(--green-light);
  font-size: 0.78rem;
  font-weight: 900;
}

.feeding-profile-summary {
  display: grid;
  grid-template-columns: 58px minmax(0, 1fr);
  gap: 12px;
  align-items: center;
  padding: 10px;
  border: 1px dashed rgba(11, 122, 52, 0.34);
  border-radius: 18px;
  background: var(--green-light);
}

.feeding-summary-photo {
  display: grid;
  width: 58px;
  height: 58px;
  place-items: center;
  overflow: hidden;
  border-radius: 16px;
  color: var(--green-dark);
  background: var(--white);
  font-weight: 900;
}

.feeding-summary-photo img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.feeding-profile-summary span,
.feeding-profile-summary small {
  display: block;
  color: var(--muted);
  font-weight: 900;
}

.feeding-profile-summary span {
  font-size: 0.72rem;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.feeding-profile-summary strong {
  display: block;
  color: var(--green-dark);
  font-size: 1.2rem;
  line-height: 1.1;
  overflow-wrap: anywhere;
}

.feeding-feature-layout {
  display: grid;
  grid-template-columns: 1fr;
  gap: 16px;
  align-items: start;
}

.feeding-select-button,
.ready-print-button {
  min-height: 44px;
  border: 0;
  border-radius: 999px;
  color: var(--green-dark);
  background: var(--green-light);
  font: inherit;
  font-weight: 900;
  cursor: pointer;
}

.feeding-select-button.is-active,
.ready-print-button {
  color: var(--white);
  background: var(--green);
}

.feeding-select-button:hover,
.ready-print-button:hover {
  background: var(--green-dark);
  color: var(--white);
}

.feeding-option-note {
  margin: 0;
  color: var(--muted);
  font-weight: 800;
}

.feeding-check-row {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}

.feeding-check-row label {
  display: flex !important;
  align-items: center;
  gap: 8px !important;
  min-height: 42px;
  padding: 9px 10px;
  border: 1px solid var(--line);
  border-radius: 14px;
  background: #fbfdfc;
}

.bottle-label-preview {
  box-sizing: border-box;
  container-type: inline-size;
  display: grid;
  grid-template-rows: auto auto 1fr;
  width: min(100%, 520px);
  max-width: 620px;
  padding: clamp(8px, 2.7cqw, 14px);
  border: 2px solid var(--green);
  border-radius: 16px;
  background: var(--white);
  box-shadow: 0 10px 18px rgba(16, 90, 49, 0.06);
}

.bottle-label-preview.bottle-template-94235 {
  width: min(100%, 390px);
  max-width: 390px;
  aspect-ratio: 2.625 / 2;
  padding: clamp(7px, 2.3cqw, 12px);
}

.bottle-label-preview.bottle-template-61503 {
  width: min(100%, 520px);
  max-width: 520px;
  aspect-ratio: 3.5 / 2;
  padding: clamp(8px, 2.25cqw, 18px);
}

.bottle-label-topline {
  display: block;
  margin-bottom: 6px;
}

.bottle-label-topline span {
  color: var(--green);
  font-size: 1.05rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.bottle-label-breastmilk .bottle-label-topline span {
  color: #c62828;
}

.bottle-label-formula .bottle-label-topline span {
  color: var(--green);
}

.bottle-label-main {
  display: grid;
  grid-template-columns: 72px minmax(0, 1fr);
  gap: 10px;
  align-items: center;
  margin-bottom: 10px;
  padding: 0;
  border-radius: 12px;
  background: var(--white);
}

.bottle-template-94235 .bottle-label-topline {
  margin-bottom: clamp(3px, 1cqw, 5px);
}

.bottle-template-94235 .bottle-label-topline span {
  font-size: clamp(1.14rem, 5.8cqw, 1.62rem);
  line-height: 1;
}

.bottle-template-61503 .bottle-label-topline span {
  font-size: clamp(1.14rem, 4.2cqw, 1.84rem);
  line-height: 1;
}

.bottle-template-94235 .bottle-label-main {
  grid-template-columns: 30cqw minmax(0, 1fr);
  gap: clamp(7px, 2.5cqw, 13px);
  margin-bottom: clamp(5px, 1.7cqw, 9px);
}

.bottle-template-61503 .bottle-label-main {
  grid-template-columns: 22cqw minmax(0, 1fr);
  gap: clamp(8px, 2.35cqw, 19px);
  margin-bottom: clamp(6px, 1.5cqw, 12px);
}

.bottle-label-photo {
  width: 72px;
  height: 72px;
  border: 2px solid var(--green-light);
  border-radius: 8px;
  background: var(--green-light);
}

.bottle-template-94235 .bottle-label-photo {
  width: 100%;
  height: auto;
  aspect-ratio: 1;
}

.bottle-template-61503 .bottle-label-photo {
  width: 100%;
  height: auto;
  aspect-ratio: 1;
}

.bottle-label-preview h3 {
  color: var(--green-dark);
  font-size: 1.35rem;
  line-height: 1.05;
  overflow-wrap: normal;
  text-wrap: balance;
}

.bottle-template-94235 h3 {
  font-size: clamp(1.74rem, 9.8cqw, 2.85rem);
  line-height: 0.98;
}

.bottle-template-61503 h3 {
  font-size: clamp(1.78rem, 7cqw, 3.18rem);
  line-height: 0.98;
}

.bottle-label-preview p {
  margin-top: clamp(3px, 0.9cqw, 6px);
  color: var(--muted);
  font-weight: 900;
}

.bottle-template-94235 p {
  font-size: clamp(0.72rem, 4.1cqw, 1.16rem);
  line-height: 1.05;
}

.bottle-template-61503 p {
  font-size: clamp(0.76rem, 3.25cqw, 1.26rem);
  line-height: 1.05;
}

.bottle-label-preview small {
  display: none;
  margin-top: 4px;
  color: #789187;
  font-weight: 800;
}

.bottle-parent-fields {
  display: grid;
  gap: 7px;
  height: 100%;
  align-content: space-between;
}

.bottle-template-94235 .bottle-parent-fields {
  gap: clamp(4px, 1.35cqw, 7px);
}

.bottle-template-61503 .bottle-parent-fields {
  gap: clamp(4px, 1.25cqw, 10px);
}

.parent-write-line {
  display: grid;
  grid-template-columns: max-content minmax(64px, 1fr);
  gap: 8px;
  align-items: end;
}

.bottle-template-94235 .parent-write-line {
  min-height: clamp(15px, 4.6cqw, 24px);
}

.bottle-template-61503 .parent-write-line {
  min-height: clamp(15px, 3.35cqw, 27px);
}

.parent-write-line span,
.parent-check-line strong {
  color: var(--ink);
  font-size: 0.8rem;
  font-weight: 900;
}

.bottle-template-94235 .parent-write-line span,
.bottle-template-94235 .parent-check-line strong {
  font-size: clamp(0.72rem, 3.9cqw, 1.02rem);
  line-height: 1;
}

.bottle-template-61503 .parent-write-line span,
.bottle-template-61503 .parent-check-line strong {
  font-size: clamp(0.76rem, 2.85cqw, 1.12rem);
  line-height: 1;
}

.parent-write-line span::after {
  content: ":";
}

.parent-write-line i {
  display: block;
  height: 1px;
  border-bottom: 2px solid rgba(11, 122, 52, 0.55);
}

.bottle-template-94235 .parent-write-line i {
  border-bottom-width: 2px;
}

.parent-check-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}

.bottle-template-94235 .parent-check-grid {
  gap: 10px;
}

.parent-check-line {
  display: flex;
  align-items: center;
  gap: 8px;
}

.parent-check-line span {
  width: 17px;
  height: 17px;
  border: 2px solid var(--green);
  border-radius: 4px;
  background: var(--white);
}

.bottle-template-94235 .parent-check-line span {
  width: clamp(13px, 3.85cqw, 20px);
  height: clamp(13px, 3.85cqw, 20px);
  border-radius: 4px;
}

.bottle-template-61503 .parent-check-line span {
  width: clamp(14px, 2.75cqw, 22px);
  height: clamp(14px, 2.75cqw, 22px);
}

.parent-weekday-row {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 7px;
}

.bottle-template-94235 .parent-weekday-row {
  gap: clamp(3px, 1cqw, 5px);
}

.parent-weekday-row span {
  display: grid;
  min-height: 28px;
  place-items: center;
  border: 2px solid rgba(11, 122, 52, 0.42);
  border-radius: 8px;
  color: var(--green-dark);
  background: var(--white);
  font-size: 0.78rem;
  font-weight: 900;
}

.bottle-template-94235 .parent-weekday-row span {
  min-height: clamp(18px, 6.15cqw, 32px);
  border-width: 2px;
  border-radius: 6px;
  font-size: clamp(0.68rem, 3.75cqw, 0.98rem);
}

.bottle-template-61503 .parent-weekday-row span {
  min-height: clamp(20px, 4.75cqw, 38px);
  font-size: clamp(0.72rem, 2.65cqw, 1.06rem);
}

.bottle-label-details {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px 14px;
}

.bottle-label-details div {
  display: grid;
  gap: 2px;
  padding-bottom: 8px;
}

.bottle-label-details dd {
  text-align: left;
}

.ready-app,
.ready-app input,
.ready-app select,
.ready-app button {
  font-family: var(--carecheck-ready-font);
  font-weight: 500;
}

.ready-app h1,
.ready-app h2,
.ready-app h3,
.ready-app .ready-brand strong,
.ready-app .ready-brand-mark,
.ready-app .ready-section-tabs a,
.ready-app .ready-section-tabs button,
.ready-app .ready-eyebrow,
.ready-app .ready-panel-heading > span,
.ready-app .ready-checkbox-card,
.ready-app .feeding-feature-heading > span,
.ready-app .ready-print-button,
.ready-app .classroom-label-card p,
.ready-app .bottle-label-topline span,
.ready-app .bottle-label-topline strong {
  font-weight: 700;
}

.ready-app .ready-brand small,
.ready-app .ready-panel-note,
.ready-app .ready-photo-status,
.ready-app .ready-child-card dt,
.ready-app .ready-child-card dd,
.ready-app .classroom-label-card small,
.ready-app .community-label-note,
.ready-app .bottle-label-preview p,
.ready-app .bottle-label-preview small,
.ready-app .parent-write-line span,
.ready-app .parent-check-line strong,
.ready-app .parent-weekday-row span {
  font-weight: 500;
}

@media (max-width: 1040px) {
  .ready-header,
  .ready-workspace,
  .feeding-feature-layout {
    grid-template-columns: 1fr;
  }

  .ready-profile-panel-compact {
    grid-template-columns: 1fr;
    align-items: stretch;
  }

  .ready-profile-fields {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .ready-section-tabs {
    width: 100%;
  }

  .ready-section-tabs button {
    flex: 1;
  }
}

@media (max-width: 720px) {
  html,
  body {
    max-width: 100%;
    overflow-x: hidden;
  }

  .ready-app {
    width: min(100% - 16px, 1240px);
    padding-top: 12px;
  }

  .ready-header {
    padding: 12px;
    border-radius: 16px;
  }

  .ready-brand {
    align-items: flex-start;
  }

  .ready-brand strong {
    font-size: 0.98rem;
  }

  .ready-profile-panel,
  .ready-product-panel {
    width: 100%;
    max-width: 100%;
    padding: 16px;
    overflow: hidden;
  }

  .ready-profile-panel-compact {
    padding: 12px;
  }

  .ready-profile-fields {
    gap: 12px;
  }

  .ready-profile-fields > label {
    min-width: 0;
  }

  .ready-profile-fields input,
  .ready-profile-fields select {
    display: block;
    box-sizing: border-box;
    width: 100%;
    min-width: 0;
    max-width: 100%;
  }

  #child-dob-input,
  #child-dob-input::-webkit-date-and-time-value {
    text-align: left;
    text-align-last: left;
  }

  #label-font-select {
    display: none;
  }

  .mobile-font-picker {
    display: flex;
    gap: 7px;
    max-width: 100%;
    overflow-x: auto;
    overflow-y: hidden;
    padding: 7px;
    border: 1px solid var(--line);
    border-radius: 14px;
    background: var(--soft);
  }

  .mobile-font-picker button {
    flex: 0 0 108px;
    min-width: 0;
    min-height: 38px;
    padding: 7px 8px;
    overflow: hidden;
    border: 1px solid var(--line);
    border-radius: 10px;
    color: var(--ink);
    background: var(--white);
    font-size: 0.86rem;
    font-weight: 700;
    text-overflow: ellipsis;
    white-space: nowrap;
  }

  .mobile-font-picker button.is-selected {
    border-color: var(--green);
    color: var(--green-dark);
    background: var(--green-light);
    box-shadow: inset 0 0 0 1px var(--green);
  }

  .ready-profile-panel-compact #child-dob-input {
    box-sizing: border-box;
    width: min(100%, 150px);
    min-width: 0;
    max-width: 150px;
    justify-self: start;
    padding-inline: 10px;
  }

  .ready-profile-panel-compact .ready-photo-field {
    grid-template-columns: 1fr;
  }

  .ready-profile-panel-compact .ready-photo-thumb {
    grid-column: auto;
    grid-row: auto;
    width: 92px;
    height: 92px;
  }

  .ready-checkbox-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .classroom-template-row,
  .health-template-card {
    grid-template-columns: 1fr;
  }

  .classroom-template-select-control,
  .health-template-card label,
  .health-template-card .health-photo-option {
    grid-column: auto;
  }

  .custom-label-type-control,
  .picture-label-layout,
  .feeding-setup-row {
    grid-template-columns: 1fr;
  }

  .classroom-print-options,
  .classroom-print-options ul {
    grid-template-columns: 1fr;
  }

  .ready-panel-heading,
  .print-sheet-heading,
  .bottle-label-topline,
  .feeding-feature-heading {
    align-items: stretch;
    flex-direction: column;
  }

  .print-sheet-heading,
  .picture-sheet-heading {
    gap: 10px;
  }

  .ready-panel-heading h2 {
    font-size: clamp(1.55rem, 9vw, 2.1rem);
  }

  .ready-panel-note {
    font-size: 0.96rem;
  }

  .print-sheet-actions {
    justify-content: flex-start;
    gap: 8px;
    width: 100%;
  }

  .picture-sheet-preview .print-sheet-actions {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .picture-sheet-preview .print-sheet-actions > span,
  .picture-sheet-preview .print-sheet-actions .download-pdf-button:last-child {
    grid-column: 1 / -1;
  }

  .download-pdf-button,
  .secondary-action {
    min-width: 0;
    width: 100%;
    padding-inline: 14px;
    white-space: normal;
  }

  .print-sheet-frame,
  .feeding-sheet-frame,
  .health-sheet-frame,
  .picture-sheet-frame {
    max-width: 100%;
    overflow-x: auto;
    padding: 10px;
    border-radius: 12px;
  }

  .feeding-sheet-frame,
  .health-sheet-frame,
  .picture-sheet-frame {
    justify-items: start;
  }

  .feeding-sheet-page,
  .health-sheet-pages,
  .picture-sheet-pages {
    width: calc(100% / 0.52);
    transform: none;
    zoom: 0.52;
  }

  .feeding-sheet-frame .fixed-preview-scale.feeding-sheet-61503 {
    zoom: 0.48;
  }

  .feeding-sheet-frame .fixed-preview-scale.feeding-sheet-94069 {
    zoom: 0.34;
  }

  .feeding-sheet-frame[data-feeding-template="94069"] {
    min-height: 325px;
  }

  .health-sheet-pages,
  .picture-sheet-pages {
    justify-items: start;
  }

  .feeding-sheet-frame {
    min-height: 470px;
  }

  .health-sheet-frame,
  .picture-sheet-frame {
    min-height: 500px;
  }

  .printing-instructions-grid {
    grid-template-columns: 1fr;
  }

  .health-controls-grid,
  .health-template-card {
    grid-template-columns: 1fr;
    grid-template-areas: none;
  }

  .health-template-card,
  .health-allergy-card,
  .health-food-card,
  .health-medication-card {
    grid-area: auto;
  }

  .health-section-heading {
    align-items: stretch;
    grid-template-columns: 1fr;
  }

  .health-section-heading label {
    justify-self: stretch;
  }

  .health-medication-row,
  .health-antibiotic-row {
    grid-template-columns: 1fr;
    align-items: stretch;
  }

  .health-medication-row span {
    min-width: 0;
    width: 100%;
    justify-content: flex-start;
  }

  .health-medication-row {
    min-height: 0;
    gap: 3px !important;
    padding: 6px;
  }

  .health-medication-row input[type="date"] {
    box-sizing: border-box;
    width: 100%;
    height: 34px;
    min-height: 34px;
    max-height: 34px;
    padding: 3px 7px;
    border-radius: 12px;
    font-size: 0.72rem;
    line-height: 1;
  }

  .health-expiration-label {
    display: block;
    margin: 1px 2px -1px;
    color: var(--muted);
    font-size: 0.66rem;
    font-weight: 700;
    line-height: 1;
  }

  .picture-label-controls,
  .picture-sheet-preview,
  .bulk-upload-card,
  .health-control-card {
    padding: 14px;
  }

  .picture-label-items {
    max-height: 320px;
  }

  .picture-label-text-row {
    grid-template-columns: 42px minmax(0, 1fr);
  }

  .picture-label-text-row img {
    width: 42px;
    height: 42px;
  }

  .bulk-upload-layout,
  .bulk-label-options,
  .bulk-roster-format-options {
    grid-template-columns: 1fr;
  }

  .bulk-upload-header-card {
    grid-template-columns: 1fr;
    gap: 14px;
  }

  .bulk-dropzone {
    grid-template-columns: 1fr;
    justify-items: start;
  }

  .bulk-upload-header-card > .download-pdf-button {
    grid-column: 1;
    justify-self: stretch;
  }

  .bulk-upload-header-card > *,
  .bulk-font-control,
  .bulk-font-control select {
    width: 100%;
    min-width: 0;
  }

  .bulk-output-card span {
    white-space: normal;
  }

  .bulk-upload-layout {
    gap: 14px;
  }

  .bulk-cell-preview-shell {
    overflow: auto;
  }

  .bulk-roster-table {
    min-width: 520px;
  }

  .bulk-actions {
    align-items: stretch;
    flex-direction: column;
  }
}

@media (max-width: 500px) {
  .ready-profile-panel-compact #child-dob-input {
    box-sizing: border-box;
    width: min(100%, 150px);
    min-width: 0;
    max-width: 150px;
    justify-self: start;
    padding-inline: 10px;
  }

  .print-sheet-frame[data-template="6874"] .sheet-6874 .sheet-label-copy p,
  .print-sheet-frame[data-template="6874"] .sheet-6874 .sheet-label-copy small {
    font-size: 8px;
  }

  .print-sheet-frame[data-template="94256"] .sheet-94256 .sheet-label-copy p,
  .print-sheet-frame[data-template="94256"] .sheet-94256 .sheet-label-copy small {
    font-size: 9px;
  }

  .print-sheet-frame[data-template="94256"] .sheet-94256 .sheet-label {
    gap: 3px;
    padding: 5px;
  }

  .print-sheet-frame[data-template="94256"] .sheet-94256 .sheet-label-copy,
  .print-sheet-frame[data-template="94256"] .sheet-94256 .sheet-label.has-no-photo .sheet-label-copy {
    gap: 3px;
  }

  .print-sheet-frame[data-template="94256"] .print-sheet-page.sheet-94256 {
    width: 82%;
  }

  .bulk-cell-preview-shell {
    padding: 12px;
  }

  .bulk-cell-preview {
    width: min(100%, 240px);
  }

  .bulk-cell-preview h4 {
    font-size: 1.1rem;
  }

  .ready-section-tabs,
  .feeding-check-row,
  .bottle-label-details,
  .ready-checkbox-grid,
  .ready-profile-fields {
    grid-template-columns: 1fr;
  }

  .community-basket-label .community-label-face {
    grid-template-columns: minmax(64px, 22%) minmax(0, 1fr);
    width: min(100%, 340px);
    aspect-ratio: 5 / 1.5;
  }

  .community-basket-photo {
    width: 72px;
    height: 72px;
    justify-self: center;
  }

  .ready-section-tabs {
    display: grid;
    border-radius: 22px;
  }

  .ready-section-tabs button {
    min-width: 0;
    padding: 10px 12px;
    white-space: normal;
  }

  .community-label-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
  }

  .community-preview-viewport {
    --preview-scale: 0.22;
    --preview-pad: 6px;
    --preview-pad-total: 12px;
    margin-inline: auto;
  }

  .community-preview-viewport[data-community-preview="community-standard-cubby"] {
    --preview-scale: 0.22;
  }

  .community-preview-viewport[data-community-preview="community-compact-cubby"] {
    --preview-scale: 0.28;
  }

  .community-preview-viewport[data-community-preview="community-infant-cubby"] {
    --preview-scale: 0.22;
  }

  .community-preview-viewport[data-community-preview="community-basket-label"] {
    --preview-scale: 0.3;
  }

  .community-label-note {
    width: 100%;
    border-radius: 10px;
    font-size: 0.7rem;
  }

  .classroom-label-card,
  .bottle-label-main {
    grid-template-columns: 66px minmax(0, 1fr);
  }

  .mini-label-photo,
  .bottle-label-photo {
    width: 66px;
    height: 66px;
  }

  .bottle-template-94235 .bottle-label-main {
    grid-template-columns: 92px minmax(0, 1fr);
  }

  .bottle-template-61503 .bottle-label-main {
    grid-template-columns: 104px minmax(0, 1fr);
  }

  .bottle-template-94235 .bottle-label-photo {
    width: 92px;
    height: 92px;
  }

  .bottle-template-61503 .bottle-label-photo {
    width: 104px;
    height: 104px;
  }

  #avery-labels.avery-template-medium .classroom-label-card,
  #avery-labels.avery-template-large .classroom-label-card {
    grid-template-columns: 1fr;
  }

  #avery-labels.avery-template-medium .mini-label-photo {
    width: 92px;
    height: 92px;
  }

  #avery-labels.avery-template-large .mini-label-photo {
    width: 118px;
    height: 118px;
  }

  .ready-child-card dl div {
    display: grid;
    gap: 4px;
  }

  .ready-child-card dd {
    text-align: left;
  }

  .picture-sheet-frame {
    min-height: 430px;
  }

  .picture-sheet-page.picture-pocket-chart,
  .picture-sheet-page.picture-full-page-landscape {
    width: 560px;
  }
}

@media (max-width: 720px) {
  .feeding-template-photo-row,
  .classroom-output-fieldset {
    grid-template-columns: 1fr;
  }

  .picture-sheet-pages {
    width: calc(100% / 0.62);
    transform: none;
    zoom: 0.62;
  }

  .picture-sheet-frame {
    min-height: 620px;
  }

  .bulk-roster-table {
    min-width: 0;
  }

  .bulk-roster-table thead {
    display: none;
  }

  .bulk-roster-table,
  .bulk-roster-table tbody,
  .bulk-roster-table tr,
  .bulk-roster-table td {
    display: block;
    width: 100%;
  }

  .bulk-roster-table tr {
    display: grid;
    grid-template-columns: 40px minmax(0, 1fr);
    padding: 10px;
    border-bottom: 1px solid var(--line);
  }

  .bulk-roster-table td {
    padding: 4px 6px;
    border: 0;
  }

  .bulk-roster-table td:first-child {
    grid-row: 1 / span 2;
  }

  .bulk-roster-table td:last-child {
    grid-column: 2;
    color: var(--muted);
    font-size: 0.85rem;
  }
}

@media (max-width: 500px) {
  .picture-labels-panel,
  .bulk-upload-panel {
    padding: 12px;
  }

  .picture-label-controls,
  .picture-sheet-preview,
  .bulk-upload-card {
    padding: 12px;
  }

  .picture-sheet-preview .print-sheet-actions {
    grid-template-columns: 1fr;
  }

  .picture-sheet-preview .print-sheet-actions > * {
    grid-column: 1;
  }

  .picture-sheet-pages {
    width: 680px;
    height: 380px;
    transform: scale(0.48);
    transform-origin: top left;
    zoom: 1;
  }

  .picture-sheet-frame[data-picture-template="94256"] {
    min-height: 290px;
  }

  .picture-sheet-frame[data-picture-template="94256"] .picture-sheet-pages {
    height: 230px;
    transform: scale(0.4);
  }

  .picture-sheet-frame[data-picture-template="fullPage"][data-picture-orientation="landscape"] {
    min-height: 235px;
  }

  .picture-sheet-frame[data-picture-template="fullPage"][data-picture-orientation="landscape"] .picture-sheet-pages {
    width: 792px;
    height: 196px;
    transform: scale(0.32);
  }

  .picture-sheet-frame[data-picture-template="fullPage"][data-picture-orientation="landscape"] .picture-sheet-page.picture-full-page-landscape {
    width: 792px;
    height: 612px;
    aspect-ratio: auto;
    zoom: 1;
  }

  .health-sheet-pages {
    width: calc(100% / 0.46);
    transform: none;
    zoom: 0.46;
  }

  .picture-sheet-frame {
    min-height: 430px;
    overflow-x: hidden;
  }

  .health-sheet-frame {
    min-height: 380px;
    overflow-x: hidden;
  }

  .bulk-dropzone input[type="file"] {
    width: 100%;
    font-size: 0.78rem;
  }
}

@media (max-width: 360px) {
  .picture-sheet-frame[data-picture-template="94256"] {
    min-height: 245px;
  }

  .picture-sheet-frame[data-picture-template="94256"] .picture-sheet-pages {
    height: 185px;
    transform: scale(0.32);
  }

  .picture-sheet-frame[data-picture-template="fullPage"][data-picture-orientation="landscape"] {
    min-height: 205px;
  }

  .picture-sheet-frame[data-picture-template="fullPage"][data-picture-orientation="landscape"] .picture-sheet-pages {
    width: 792px;
    height: 160px;
    transform: scale(0.26);
  }

  .picture-sheet-pages {
    width: 680px;
    height: 285px;
    transform: scale(0.36);
    transform-origin: top left;
    zoom: 1;
  }

  .health-sheet-pages {
    width: calc(100% / 0.35);
    zoom: 0.35;
  }

  .picture-sheet-frame {
    min-height: 320px;
  }

  .health-sheet-frame {
    min-height: 310px;
  }
}

@media print {
  @page {
    margin: 0.35in;
  }

  body {
    background: var(--white);
  }

  body * {
    visibility: hidden;
  }

  .feeding-feature-card.is-selected .bottle-label-preview,
  .feeding-feature-card.is-selected .bottle-label-preview *,
  .classroom-label-grid,
  .classroom-label-grid * {
    visibility: visible;
  }

  .ready-app,
  .ready-workspace,
  .ready-product-panel,
  .feeding-primary-stack,
  .feeding-feature-card.is-selected,
  .feeding-feature-layout {
    display: block;
    width: auto;
    margin: 0;
    padding: 0;
    border: 0;
    box-shadow: none;
  }

  .ready-header,
  .ready-profile-panel,
  .ready-panel-heading,
  .ready-panel-note,
  .ready-print-button,
  .feeding-profile-summary,
  .feeding-feature-heading,
  .feeding-select-button,
  .feeding-option-note,
  .feeding-feature-card:not(.is-selected) {
    display: none;
  }

  .feeding-feature-card.is-selected .bottle-label-preview {
    position: static;
    box-sizing: border-box;
    border: 2px solid #0b7a34;
    box-shadow: none;
  }

  .feeding-feature-card.is-selected .bottle-label-preview.bottle-template-94235 {
    width: 2.625in;
    height: 2in;
    padding: 0.08in;
  }

  .feeding-feature-card.is-selected .bottle-label-preview.bottle-template-61503 {
    width: 3.5in;
    height: 2in;
    padding: 0.1in;
  }
}
