/* Accessible navigation disclosures and restrained movement. */
.workspace-menu { position:relative; flex-shrink:0; }
.workspace-menu summary { display:inline-flex; align-items:center; gap:6px; min-height:42px; padding:0; color:var(--ink); font-size:13px; font-weight:700; line-height:1.4; cursor:pointer; list-style:none; }
.workspace-menu summary::-webkit-details-marker { display:none; }
.workspace-menu summary svg { width:14px; height:14px; transition:transform .18s ease; }
.workspace-menu[open] summary svg { transform:rotate(180deg); }
.workspace-menu[open] summary,.workspace-menu.is-active summary { color:var(--primary); }
.workspace-menu-panel { position:absolute; top:calc(100% + 12px); left:0; z-index:65; display:grid; width:250px; padding:9px; border:1px solid var(--line); border-radius:9px; background:var(--paper); box-shadow:0 14px 38px #11133b14; }
.site-nav .workspace-menu-panel a { justify-content:flex-start; min-height:43px; padding:10px 12px; border-radius:6px; color:var(--ink); font-size:14px; font-weight:550; }
.site-nav .workspace-menu-panel a svg { width:17px; height:17px; color:var(--primary); }
.site-nav .workspace-menu-panel a:hover,.site-nav .workspace-menu-panel a.active { color:var(--primary); background:var(--pale); }
.site-nav .workspace-menu-panel a:after { display:none; }
.site-nav .workspace-menu summary:focus-visible { outline:3px solid var(--primary); outline-offset:4px; border-radius:3px; }
.site-nav { gap:20px; }
.edu-video { min-width:0; }
.edu-video-surface { min-height:200px; aspect-ratio:16/9; overflow:hidden; background:#171b32; border-radius:9px; }
.edu-video-surface iframe { display:block; width:100%; height:100%; min-height:200px; border:0; }
.edu-video-surface .video-placeholder { min-height:200px; }
.edu-video-surface>.video-placeholder { height:100%; }
.edu-video-status.notice { margin:12px 0 7px; }
.edu-video-progress.notice { font-size:12px; line-height:1.7; color:var(--muted); margin:7px 0 15px; }
.edu-video-links { display:flex; flex-wrap:wrap; gap:10px; margin:15px 0 20px; }
#video-frame:not(.video-frame) { margin:22px 0 12px; }
#edu-cursor-books { position:fixed; inset:0; pointer-events:none; z-index:80; opacity:0; transition:opacity .18s ease; }
#edu-cursor-books.is-visible { opacity:1; }
#edu-cursor-books.is-resting { opacity:0; transition:opacity .45s ease; }
.edu-cursor-book { position:absolute; top:0; left:0; display:block; width:22px; height:19px; color:var(--primary); transform-origin:center; will-change:transform; }
.edu-cursor-book svg { display:block; width:100%; height:100%; overflow:visible; stroke:currentColor; stroke-width:1.35; stroke-linecap:round; stroke-linejoin:round; }
.edu-cursor-book .book-paper { fill:var(--paper); }
@media(hover:hover) and (pointer:fine) {
  .button,.program-card,.course-card,.topic-card,.skill-path-card { transition:transform .18s ease,background .16s,border-color .16s,box-shadow .16s; }
  .button:hover:not(:disabled) { transform:translateY(-1px); }
  .program-card:hover,.course-card:hover,.topic-card:hover { transform:translateY(-2px); }
}
@media(max-width:1250px) { .site-nav { gap:15px; } .workspace-menu summary { font-size:12px; } }
@media(max-width:1050px) { .workspace-menu summary { font-size:13px; } }
@media(max-width:760px) {
  .workspace-menu { width:100%; grid-column:1/-1; }
  .workspace-menu summary { width:100%; min-height:44px; padding:10px 12px; justify-content:space-between; font-size:14px; border-radius:6px; }
  .workspace-menu[open] summary { background:var(--pale); }
  .workspace-menu-panel { position:static; width:100%; margin:5px 0 8px; padding:5px 8px; box-shadow:none; background:var(--surface-soft); }
  .site-nav .workspace-menu-panel a { padding-left:15px; min-height:44px; }
  .edu-video-links>.button { flex:1 1 170px; }
}
@media(max-width:560px) {
  .edu-video-surface { aspect-ratio:auto; min-height:240px; }
  .edu-video-surface:has(iframe) { height:215px; min-height:215px; }
  .edu-video-surface .video-placeholder { min-height:240px; padding:25px 20px; }
  .edu-video-surface .video-placeholder h3 { font-size:20px; }
  .edu-video-surface .video-placeholder p { font-size:12px; }
}
@media(prefers-reduced-motion:reduce),(hover:none),(pointer:coarse) { #edu-cursor-books { display:none!important; } }
@media(prefers-reduced-motion:reduce) {
  .button,.program-card,.course-card,.topic-card,.skill-path-card,.workspace-menu summary svg { transition:none!important; }
  .button:hover,.program-card:hover,.course-card:hover,.topic-card:hover { transform:none!important; }
}
@media print { #edu-cursor-books,.workspace-menu,.edu-video-links { display:none!important; } }
