.learning-layout {
  --sidebar-ease:cubic-bezier(.16,1,.3,1);
}
#sidebar-toggle { border-radius:8px; transition:background 150ms, color 150ms, right 280ms var(--sidebar-ease); }
#sidebar-toggle:active { scale:.98; }
.course-group summary,.course-group li button { transition:background-color 150ms; border-radius:8px; }
.course-group ol { overflow:hidden; }
.course-group .lesson-entry button { min-height:44px; }
.course-toggle { display:grid; place-items:center; flex-shrink:0; width:24px; height:28px; margin-left:auto; padding:0; border:0; border-radius:5px; background:transparent; color:var(--muted); cursor:pointer; }
.course-toggle:hover { background:#e0e3da; }
.course-toggle .course-chevron { margin:0; }
.course-group .course-toggle[aria-expanded=false] .course-chevron { transform:rotate(-45deg); }
.course-group .course-toggle[aria-expanded=true] .course-chevron { transform:rotate(45deg); }
.sidebar-collapsed .course-toggle { visibility:hidden; }
.course-group .course-chevron { padding:0; width:6px; height:6px; flex-shrink:0; transition:transform 240ms var(--sidebar-ease),opacity 180ms; }
@media(min-width:721px) {
  .learning-layout { grid-template-columns:224px minmax(0,1fr); transition:grid-template-columns 280ms var(--sidebar-ease); }
  .learning-layout.sidebar-collapsed { grid-template-columns:52px minmax(0,1fr); }
  .learning-sidebar,.sidebar-collapsed .learning-sidebar { padding:24px 6px; overflow-x:hidden; border-right:1px solid var(--line); background:var(--paper); }
  .workshop-contents { width:211px; }
  .directory-heading { height:20px; margin:0 38px 16px 10px; }
  #sidebar-toggle { top:18px; right:12px; z-index:1; }
  .sidebar-collapsed #sidebar-toggle { right:10px; }
  .course-group { margin-bottom:8px; }
  .course-group summary { padding:8px 5px; gap:10px; }
  .course-group summary>.sidebar-copy { flex:1; min-width:0; }
  .sidebar-copy,.directory-heading,.course-chevron { transition:opacity 180ms var(--sidebar-ease), translate 180ms var(--sidebar-ease); }
  .sidebar-collapsed .sidebar-copy,.sidebar-collapsed .directory-heading,.sidebar-collapsed .course-chevron { opacity:0; translate:-8px 0; pointer-events:none; }
  .sidebar-collapsed .course-group ol { display:none; }
  .sidebar-collapsed .course-group summary { width:40px; height:40px; min-height:40px; padding:5px; }
  .sidebar-collapsed .course-group summary:hover { background:transparent; }
  .subject-icon { transition:box-shadow 150ms,filter 150ms; }
  .sidebar-collapsed .course-group summary:hover .subject-icon { filter:brightness(.94); }
  .sidebar-collapsed .course-group.is-active-workshop .subject-icon { box-shadow:inset 0 0 0 1px var(--subject-ink); }
  .sidebar-collapsed .course-group:not(.is-active-workshop) .subject-icon { color:#858982; background:#e9ebe6; }
}
@media(max-width:720px) {
  [data-page=walkthroughs] .learning-sidebar { min-height:0; }
}
@media(prefers-reduced-motion:reduce) {
  .learning-layout,#sidebar-toggle,.course-group summary,.course-group li button,.sidebar-copy,.directory-heading,.course-chevron,.course-group ol { transition:none; }
}
