/* Shared by Home, course dashboards, Library and folder headers. */
[data-apeul-page] {
  container: page / inline-size;
  max-width: var(--page-max-width, 1180px);
  margin-inline: auto;
  padding: 28px 32px 48px;
}
[data-apeul-page][data-selection-active="true"] { padding-bottom: 128px; }
[data-apeul-page-header] { margin-bottom: 24px; min-width: 0; }
[data-page-breadcrumb] { margin-bottom: 8px; font-size: 12px; line-height: 20px; }
[data-page-ancestors] { display: flex; flex-wrap: wrap; align-items: center; gap: 6px; min-width: 0; font-size: 12px; line-height: 20px; color: var(--muted-foreground); }
[data-page-ancestors] > span { display: inline-flex; min-width: 0; align-items: center; gap: 6px; }
[data-page-ancestors] a { display: inline-block; max-width: 30ch; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; color: var(--primary); border-radius: 4px; }
[data-page-ancestors] a:hover { text-decoration: underline; text-underline-offset: 3px; }
[data-page-ancestors] a[data-dropping="true"] { background: var(--primary-soft); outline: 1px solid var(--ring); }
[data-page-breadcrumb] a:focus-visible { outline: 2px solid var(--ring); outline-offset: 3px; }
[data-page-heading-row] { display: flex; flex-wrap: wrap; align-items: start; gap: 16px 24px; }
[data-page-heading] { flex: 1 1 240px; min-width: 0; }
[data-page-heading] h1 { font-size: 26px; font-weight: 600; letter-spacing: -.035em; line-height: 1.3; overflow-wrap: anywhere; white-space: normal; }
[data-page-heading] p { margin-top: 8px; font-size: 12px; line-height: 18px; color: var(--muted-foreground); }
[data-page-actions] { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; max-width: 100%; }
[data-apeul-page-header] > nav { margin-bottom: 0; }
[data-apeul-editable-title]:focus-visible { outline: 2px solid var(--ring); outline-offset: 4px; border-radius: 4px; }
[data-apeul-editable-title]:focus-visible svg { opacity: 1; }
[data-page-title-edit] { width: 100%; min-height: 34px; min-width: 0; display: flex; align-items: center; gap: 8px; }
[data-page-title-edit] input[data-apeul-field] { flex: 1; min-width: 0; height: auto; padding: 0 4px; font-size: 26px; line-height: 1.3; font-weight: 600; letter-spacing: -.035em; }
[data-page-empty] { display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 12px; min-height: 180px; padding: 32px 24px; border-radius: var(--desktop-surface-radius, 10px); background: var(--canvas, var(--muted)); text-align: center; }
[data-page-empty] > svg { width: 24px; height: 24px; color: var(--muted-foreground); }
[data-page-empty] h2 { font-size: 14px; line-height: 20px; font-weight: 600; }
[data-page-empty] p { max-width: 55ch; font-size: 13px; line-height: 20px; color: var(--muted-foreground); }
@media (max-width: 1050px) { [data-apeul-page] { padding: 20px; } }
@container page (max-width: 580px) {
  [data-page-heading] { flex-basis: 100%; }
  [data-page-actions] { width: 100%; }
}
