/* Load after account.css when mounting the educational-order library. */
.educational-library,
.educational-report-view {
  display: grid;
  gap: 17px;
  color: var(--account-ink, #edf2e7);
}
.educational-library *,
.educational-report-view * { box-sizing: border-box; }
.educational-library button,
.educational-report-view button { font: inherit; }
.educational-library a:focus-visible,
.educational-library button:focus-visible,
.educational-report-view a:focus-visible,
.educational-report-view button:focus-visible {
  outline: 2px solid var(--account-sage, #c6dba9);
  outline-offset: 4px;
}
.educational-library-head,
.education-report-hero,
.education-report-section {
  border: 1px solid rgba(213, 234, 190, .15);
  border-radius: 21px;
  background: rgba(20, 49, 36, .79);
  box-shadow: 0 19px 55px rgba(0, 0, 0, .12);
}
.educational-library-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 24px;
  padding: 31px 33px;
  background: linear-gradient(125deg, rgba(171, 201, 152, .15), rgba(28, 64, 45, .72));
}
.education-kicker,
.education-day,
.education-order-state {
  margin: 0;
  color: var(--account-sage, #c6dba9);
  font-size: 8px;
  font-weight: 600;
  letter-spacing: 1.05px;
}
.educational-library-head h2,
.education-report-hero h1 {
  margin: 9px 0 10px;
  font-family: var(--heading, system-ui), system-ui, sans-serif;
  font-weight: 500;
  letter-spacing: -1.5px;
  line-height: 1.12;
}
.educational-library-head h2 { font-size: clamp(29px, 4vw, 43px); }
.education-intro,
.education-report-intro {
  max-width: 690px;
  margin: 0;
  color: #b8c7b1;
  font-size: 11px;
  line-height: 1.8;
}
.education-note,
.education-status,
.education-empty,
.education-scope-note {
  margin: 0;
  border: 1px solid rgba(198, 219, 169, .22);
  border-radius: 14px;
  padding: 14px 16px;
  color: #c2d1ba;
  background: rgba(198, 219, 169, .07);
  font-size: 10px;
  line-height: 1.75;
}
.education-status.is-error { color: var(--account-danger, #f0b9ad); border-color: rgba(240, 185, 173, .3); }
.education-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 11px; }
.edu-action {
  display: inline-flex;
  min-height: 38px;
  align-items: center;
  justify-content: center;
  border: 1px solid transparent;
  border-radius: 9px;
  padding: 9px 13px;
  cursor: pointer;
  font-size: 10px;
  line-height: 1;
  text-decoration: none;
  transition: background .18s ease, border-color .18s ease, color .18s ease;
}
.edu-action:disabled { cursor: progress; opacity: .62; }
.edu-action-primary { color: #173421; background: var(--account-sage, #c6dba9); }
.edu-action-primary:hover:not(:disabled) { background: #d7e7c0; }
.edu-action-secondary { color: var(--account-sage, #c6dba9); border-color: rgba(198, 219, 169, .4); background: rgba(198, 219, 169, .05); }
.edu-action-secondary:hover:not(:disabled) { background: rgba(198, 219, 169, .15); }
.education-empty { display: grid; justify-items: start; gap: 10px; min-height: 164px; align-content: center; }
.education-empty h3 { margin: 0; font-family: var(--serif, Georgia), Georgia, serif; font-size: 25px; font-weight: 400; }
.education-empty p { max-width: 570px; margin: 0; color: #b8c7b1; font-size: 11px; line-height: 1.75; }
.education-order-list { display: grid; border-top: 1px solid rgba(213, 234, 190, .15); }
.education-order-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 20px;
  padding: 20px 3px;
  border-bottom: 1px solid rgba(213, 234, 190, .15);
}
.education-order-meta h3 { margin: 6px 0 4px; color: #e1e9d8; font-size: 15px; font-weight: 500; }
.education-order-meta > p:last-child { max-width: 570px; margin: 0; color: #aebda7; font-size: 10px; line-height: 1.7; }
.education-order-action { display: grid; justify-items: end; gap: 7px; min-width: 138px; }
.education-row-status { max-width: 230px; min-height: 13px; margin: 0; color: #c7dbb7; font-size: 9px; line-height: 1.5; text-align: right; }
.education-row-status.is-error { color: var(--account-danger, #f0b9ad); }
.education-lock-label {
  color: #9eae98;
  font-size: 9px;
  letter-spacing: .4px;
}
.education-order-row.is-paid .education-order-state { color: #d5ebae; }
.education-order-row.is-revoked .education-order-state { color: #e8b6ab; }
.education-order-row.is-unknown .education-order-state { color: #d9c78f; }
.education-report-hero {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 30px;
  padding: 36px 39px;
  background: linear-gradient(125deg, rgba(171, 201, 152, .16), rgba(28, 64, 45, .72));
}
.education-report-hero h1 { max-width: 720px; font-size: clamp(34px, 4.6vw, 54px); }
.education-generated { margin: 15px 0 0; color: #9fb394; font-size: 9px; }
.education-report-actions { flex: none; justify-content: flex-end; }
.education-scope-note { color: #d6e1cd; background: rgba(198, 219, 169, .1); }
.education-report-section { padding: 29px 31px; }
.education-section-head {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 28px;
  margin-bottom: 22px;
}
.education-section-head h2 { margin: 0; font-size: 27px; font-weight: 500; letter-spacing: -1px; }
.education-section-head p { max-width: 385px; margin: 0; color: #adbea6; font-size: 10px; line-height: 1.72; }
.education-profile-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; margin: 0; }
.education-labeled-text { min-width: 0; padding: 13px 14px; border: 1px solid rgba(202, 222, 182, .17); border-radius: 11px; background: rgba(198, 219, 169, .045); }
.education-labeled-text dt { color: #9eb58f; font-size: 8px; letter-spacing: .55px; text-transform: uppercase; }
.education-labeled-text dd { margin: 7px 0 0; color: #dce5d4; font-size: 10px; line-height: 1.6; }
.education-meal-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 13px; }
.education-meal-card,
.education-activity-card,
.education-herb-card {
  min-width: 0;
  border: 1px solid rgba(202, 222, 182, .18);
  border-radius: 14px;
  padding: 19px;
  background: rgba(198, 219, 169, .045);
  break-inside: avoid;
}
.education-menu { display: grid; gap: 8px; margin: 14px 0 0; }
.education-menu .education-labeled-text { padding: 0; border: 0; background: transparent; }
.education-menu .education-labeled-text dd { color: #d9e3d0; font-size: 11px; }
.education-recipe { margin-top: 17px; padding-top: 15px; border-top: 1px solid rgba(202, 222, 182, .16); }
.education-recipe h4 { margin: 0 0 12px; color: #e5ecdd; font-size: 12px; font-weight: 500; }
.education-recipe h5 { margin: 13px 0 6px; color: #9db48d; font-size: 8px; letter-spacing: .8px; text-transform: uppercase; }
.education-list { margin: 0; padding-left: 17px; color: #b7c7af; font-size: 10px; line-height: 1.65; }
.education-list li + li { margin-top: 5px; }
.education-tip { margin: 16px 0 0; padding-top: 13px; border-top: 1px solid rgba(202, 222, 182, .16); color: #9fb491; font-size: 9px; line-height: 1.7; }
.education-empty-copy { margin: 0; color: #acbca5; font-size: 10px; line-height: 1.7; }
.education-activity-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; }
.education-activity-card h3,
.education-herb-card h3,
.education-shopping-card h3 { margin: 11px 0 6px; color: #e2ead9; font-size: 15px; font-weight: 500; }
.education-duration { margin: 0 0 12px; color: var(--account-sage, #c6dba9); font-size: 9px; }
.education-herb-grid,
.education-shopping-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; }
.education-herb-card h3 { font-family: var(--serif, Georgia), Georgia, serif; font-size: 24px; font-weight: 400; }
.education-herb-card p { margin: 0; color: #bdcdb4; font-size: 10px; line-height: 1.7; }
.education-herb-card .education-herb-caution { margin-top: 13px; padding-top: 12px; border-top
: 1px solid rgba(202, 222, 182, .16); color: #9daf96; font-size: 9px; }
.education-shopping-card { min-width: 0; padding: 17px 3px 5px; border-top: 1px solid rgba(202, 222, 182, .21); break-inside: avoid; }
.education-shopping-card h3 { margin-top: 0; color: var(--account-sage, #c6dba9); font-size: 13px; }
.education-prose { max-width: 820px; margin: 0; color: #bdcdb4; font-size: 11px; line-height: 1.8; }
.education-source-list { display: grid; gap: 9px; margin: 0; padding-left: 18px; color: #c5d7b9; font-size: 10px; line-height: 1.6; }
.education-source-list a { color: var(--account-sage, #c6dba9); text-decoration: underline; text-underline-offset: 3px; }

@media (max-width: 920px) {
  .education-profile-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .education-activity-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .education-herb-grid,
  .education-shopping-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 650px) {
  .educational-library-head,
  .education-report-hero,
  .education-report-section { padding: 25px 21px; border-radius: 17px; }
  .educational-library-head,
  .education-report-hero,
  .education-section-head { display: grid; gap: 14px; }
  .education-report-actions { justify-content: flex-start; }
  .education-order-row { grid-template-columns: 1fr; gap: 13px; padding: 18px 0; }
  .education-order-action { justify-items: start; min-width: 0; }
  .education-row-status { text-align: left; }
  .education-profile-grid,
  .education-meal-grid,
  .education-activity-grid,
  .education-herb-grid,
  .education-shopping-grid { grid-template-columns: 1fr; }
  .education-section-head h2 { font-size: 24px; }
  .education-section-head p { max-width: none; }
  .education-actions { align-items: stretch; }
  .edu-action { flex: 1 1 auto; }
}
@media print {
  @page { margin: 14mm; }
  .educational-library { display: none !important; }
  .educational-report-view { display: block; color: #173624; }
  .education-report-hero,
  .education-report-section,
  .education-scope-note {
    margin: 0 0 14px;
    border: 1px solid #b5c4ae;
    border-radius: 0;
    background: #fff;
    box-shadow: none;
  }
  .education-report-hero,
  .education-report-section { padding: 15px 17px; }
  .education-report-actions { display: none !important; }
  .education-kicker,
  .education-day,
  .education-order-state,
  .education-duration,
  .education-shopping-card h3 { color: #365533 !important; }
  .education-report-hero h1,
  .education-section-head h2,
  .education-meal-card h3,
  .education-activity-card h3,
  .education-herb-card h3,
  .education-shopping-card h3 { color: #173624 !important; }
  .education-intro,
  .education-report-intro,
  .education-generated,
  .education-section-head p,
  .education-labeled-text dd,
  .education-list,
  .education-tip,
  .education-herb-card p,
  .education-prose,
  .education-source-list { color: #344332 !important; }
  .education-meal-card,
  .education-activity-card,
  .education-herb-card { border-color: #cad5c4; background: #fff; }
  .education-meal-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .education-activity-grid,
  .education-herb-grid,
  .education-shopping-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .education-source-list a { color: #365533 !important; }
}
