.learning-section { margin-block: 1.5rem; min-width: 0; }
.learning-table { width: 100%; border-collapse: collapse; table-layout: fixed; }
.learning-table th { color: var(--muted); font-size: .8rem; text-align: left; }
.learning-table th, .learning-table td { padding: 1rem; border-bottom: 1px solid var(--line); vertical-align: top; overflow-wrap: anywhere; }
.learning-table td:first-child, .learning-table th:first-child { padding-left: 0; }
.learning-table h3 { margin: 0 0 .6rem; }
.learning-table p { margin: .55rem 0; }
.learning-stars { display: flex; gap: .12rem; font-size: 2rem; line-height: 1.2; color: var(--warning); }
.learning-star { position: relative; display: inline-block; }
.learning-star > span { position: absolute; inset: 0 auto 0 0; overflow: hidden; white-space: nowrap; color: var(--warning); }
.learning-average { margin: .5rem 0; }
.learning-challenge { margin-block: .4rem; padding: .85rem; border-radius: 10px; background: rgba(104,240,208,.07); border-left: 3px solid #68f0d0; overflow-wrap: anywhere; }
.learning-challenge p { margin: .35rem 0; }
.learning-challenge-completed { background: rgba(139,226,139,.09); border-color: var(--success); }
.learning-challenge-cancelled, .learning-challenge-expired { background: rgba(174,181,199,.07); border-color: var(--muted); color: var(--muted); }
.learning-challenge form { margin-top: .65rem; }
.learning-config-child { margin-block: 2rem; }
.learning-config-card { margin-block: 1rem; padding: 1.25rem; border: 1px solid var(--line); border-radius: 16px; background: var(--panel); min-width: 0; }
.learning-config-card h3 { margin: 0 0 .6rem; overflow-wrap: anywhere; }
.learning-config-card details { margin-block: .85rem; }
.learning-config-card summary { cursor: pointer; font-weight: 600; padding-block: .4rem; }
.learning-config-form { display: grid; gap: 1rem; padding-top: .85rem; }
.learning-rule-columns { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 1rem; }
.learning-rule-columns fieldset { min-width: 0; border: 1px solid var(--line); border-radius: 10px; padding: 1rem; }
.learning-config-form label { display: flex; gap: .6rem; align-items: center; flex-wrap: wrap; margin-block: .5rem; }
.learning-config-form input[type=number] { width: 7rem; }
.learning-config-form input, .learning-config-form select { max-width: 100%; min-width: 0; }
.learning-config-form button { justify-self: start; }
.learning-explanation { font-size: .85rem; margin-bottom: 0; }
.learning-waiting { padding-block: 1rem; }
@media (max-width: 800px) {
  .learning-rule-columns { grid-template-columns: 1fr; }
  .learning-config-card { padding: 1rem; }
  .learning-config-form label { align-items: flex-start; }
}
@media (max-width: 640px) {
  .learning-table, .learning-table tbody, .learning-table tr, .learning-table td { display: block; width: 100%; }
  .learning-table thead { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); }
  .learning-table tr { border-top: 1px solid var(--line); padding-block: 1rem; }
  .learning-table td { padding: .4rem 0; border: 0; }
  .learning-table td > p:first-child { margin-top: 0; }
}