/* Compact native popover, adapted from the site's existing cloud entry. */
body.home-view #main .home-search-row{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;width:min(100%,760px);margin:20px auto 0}
body.home-view #main .home-search-row .search{width:100%;max-width:none;margin:0}
body.home-view #main .cloud-entry{display:flex;align-items:center;justify-content:center;gap:8px;min-height:50px;padding:0 16px;border:1px solid #4166d8;border-radius:11px;background:#4166d8;color:#fff;font-family:inherit;font-weight:600;font-size:14px;line-height:1.4;cursor:pointer}
body.home-view #main .cloud-entry svg{width:21px;height:21px}
body.home-view #main .cloud-entry:hover{background:#3457bf}
.cloud-entry:focus-visible,#yunfei-cloud button:focus-visible,#yunfei-cloud a:focus-visible{outline:3px solid #94a9ef;outline-offset:2px}
#yunfei-cloud{box-sizing:border-box;position:fixed;inset:auto;left:12px;top:12px;margin:0;width:196px;max-width:calc(100vw - 24px);max-height:calc(100dvh - 24px);overflow:auto;padding:8px;border:1px solid #e0e6f0;border-radius:13px;background:#fff;color:#29374d;box-shadow:0 8px 26px #2438591a;text-align:left}
#yunfei-cloud::backdrop{background:transparent}
#yunfei-cloud .yc-action{display:flex;align-items:center;gap:10px;box-sizing:border-box;width:100%;min-height:44px;padding:10px 12px;border:0;border-radius:8px;background:#fff;color:#516078;font-family:inherit;font-weight:550;font-size:14px;line-height:22px;cursor:pointer;text-decoration:none}
#yunfei-cloud .yc-action svg{flex:0 0 auto;width:19px;height:19px}
#yunfei-cloud .yc-arrow{margin-left:auto;font-size:16px;line-height:20px}
#yunfei-cloud .yc-go{background:#edf2ff;color:#4166d8}
#yunfei-cloud .yc-go:hover{background:#e2eaff}
#yunfei-cloud .yc-tutorial{margin-top:4px}
#yunfei-cloud .yc-tutorial:hover{background:#f3f5f9}
#yunfei-cloud .yc-status{margin:8px 4px 3px;color:#6c7b91;font-size:11px;line-height:18px;overflow-wrap:anywhere}
#yunfei-cloud .yc-status:empty{display:none}
#yunfei-cloud .yc-tutorial[aria-expanded="true"] .yc-arrow{transform:rotate(90deg)}
#yc-platforms{display:grid;gap:2px;margin:5px 4px 2px;padding:6px 0 0;border-top:1px solid #edf0f6}
#yc-platforms[hidden]{display:none}
#yunfei-cloud .yc-platform{display:flex;align-items:center;gap:10px;box-sizing:border-box;width:100%;min-height:42px;padding:0 9px;border:0;border-radius:7px;background:transparent;color:#36455d;text-align:left;text-decoration:none;font:inherit;font-size:13px;line-height:20px}
#yunfei-cloud .yc-platform:hover{background:#f3f5fb}
#yunfei-cloud .yc-platform-pending{color:#788599;cursor:default}
#yunfei-cloud .yc-platform-pending:hover{background:transparent}
#yunfei-cloud .yc-pending-label{margin-left:auto;color:#9aa3b1;font-size:11px;white-space:nowrap}
#yunfei-cloud .yc-platform-icon{display:flex;align-items:center;justify-content:center;flex:0 0 20px;width:20px;height:20px}
#yunfei-cloud .yc-platform-icon svg,#yunfei-cloud .yc-platform-icon img{display:block;width:20px;height:20px;object-fit:contain}
@media(max-width:600px){body.home-view #main .home-search-row{grid-template-columns:1fr;gap:10px;margin-top:19px}body.home-view #main .cloud-entry{justify-self:end;min-height:42px;padding:0 14px;font-size:13px;border-radius:9px}}

/* Director is an expandable group containing launch and tutorial actions. */
#yunfei-cloud{width:216px}
#yunfei-cloud .yc-director-toggle{list-style:none;font-weight:600;color:#344766}
#yunfei-cloud .yc-director-toggle::-webkit-details-marker{display:none}
#yunfei-cloud .yc-director-toggle:hover,#yunfei-cloud .yc-director[open]>.yc-director-toggle{background:#f3f5f9}
#yunfei-cloud .yc-director-toggle:focus-visible{outline:3px solid #94a9ef;outline-offset:2px}
#yunfei-cloud .yc-director[open]>.yc-director-toggle .yc-arrow{transform:rotate(90deg)}
#yunfei-cloud .yc-director-content{margin:7px 0 2px 9px;padding-left:7px;border-left:1px solid #e5eaf3}

/* Tutorial types reuse the compact menu. */
#yunfei-cloud .yc-type-toggle{list-style:none;cursor:pointer}
#yunfei-cloud .yc-type-toggle::-webkit-details-marker{display:none}
#yunfei-cloud .yc-type-toggle:focus-visible{outline:3px solid #94a9ef;outline-offset:2px}
#yunfei-cloud .yc-tutorial-group[open]>.yc-type-toggle{background:#f3f5f9}
#yunfei-cloud .yc-tutorial-group[open]>.yc-type-toggle .yc-arrow{transform:rotate(90deg)}
#yunfei-cloud .yc-type-links{margin-top:3px}

#yunfei-cloud .yc-lessons{margin-top:4px}
#yunfei-cloud .yc-lesson-toggle{list-style:none;font-weight:600;color:#344766}
#yunfei-cloud .yc-lesson-toggle::-webkit-details-marker{display:none}
#yunfei-cloud .yc-lesson-toggle:hover,#yunfei-cloud .yc-lessons[open]>.yc-lesson-toggle{background:#edf2ff;color:#4166d8}
#yunfei-cloud .yc-lesson-toggle:focus-visible{outline:3px solid #94a9ef;outline-offset:2px}
#yunfei-cloud .yc-lessons[open]>.yc-lesson-toggle .yc-arrow{transform:rotate(90deg)}
#yunfei-cloud .yc-lesson-links{margin-top:3px}

/* Keep the first menu anchored; adapt its children to the available space. */
@media(min-width:601px){
  #yunfei-cloud{width:176px}
  #yunfei-cloud.yc-director-side{overflow:visible;padding:6px;border-radius:11px}
  #yunfei-cloud.yc-director-side .yc-director-toggle,#yunfei-cloud.yc-director-side .yc-lesson-toggle{min-height:38px;padding:8px 4px;gap:6px;font-size:12px;line-height:20px;white-space:nowrap}
  #yunfei-cloud.yc-director-side .yc-director-toggle svg,#yunfei-cloud.yc-director-side .yc-lesson-toggle svg{width:16px;height:16px}
  #yunfei-cloud.yc-director-side .yc-director-toggle .yc-arrow,#yunfei-cloud.yc-director-side .yc-lesson-toggle .yc-arrow{font-size:14px}
  #yunfei-cloud.yc-director-side .yc-director[open]>.yc-director-toggle{color:#4166d8;background:#edf2ff}
  #yunfei-cloud.yc-director-side .yc-director[open]>.yc-director-toggle .yc-arrow{transform:none}
  #yunfei-cloud.yc-director-side .yc-director-content{position:fixed;inset:auto;box-sizing:border-box;width:192px;max-height:calc(100dvh - 24px);margin:0;padding:8px;border:1px solid #e0e6f0;border-radius:13px;background:#fff;box-shadow:0 8px 26px #2438591a;overflow:auto}
  #yunfei-cloud.yc-director-side .yc-director-content .yc-action{padding-inline:8px;gap:7px;font-size:13px;white-space:nowrap}
  #yunfei-cloud.yc-director-side .yc-director-content .yc-platform{padding-inline:5px;gap:7px;white-space:nowrap}
  #yunfei-cloud.yc-types-side .yc-director-content{overflow:visible}
  #yunfei-cloud .yc-tutorial-group.yc-group-side[open]>.yc-type-toggle{color:#4166d8;background:#edf2ff}
  #yunfei-cloud .yc-tutorial-group.yc-group-side[open]>.yc-type-toggle .yc-arrow{transform:none}
  #yunfei-cloud .yc-tutorial-group.yc-group-side>.yc-type-links{position:fixed;inset:auto;box-sizing:border-box;width:180px;max-height:calc(100dvh - 24px);overflow:auto;margin:0;padding:7px;border:1px solid #e0e6f0;border-radius:12px;background:#fff;box-shadow:0 8px 26px #2438591a}
  #yunfei-cloud.yc-director-side .yc-lessons[open]>.yc-lesson-toggle .yc-arrow{transform:none}
  #yunfei-cloud.yc-director-side .yc-lesson-links{position:fixed;inset:auto;box-sizing:border-box;width:192px;max-height:calc(100dvh - 24px);overflow:auto;margin:0;padding:7px;border:1px solid #e0e6f0;border-radius:12px;background:#fff;box-shadow:0 8px 26px #2438591a}
  #yunfei-cloud.yc-director-side .yc-lesson-links .yc-platform{padding-inline:5px;gap:7px;white-space:nowrap}
}

/* Director tutorials share the existing video/article menu hierarchy. */
#yunfei-cloud .yc-lesson-links>.yc-tutorial-group+.yc-tutorial-group{margin-top:2px}
@media(min-width:601px){#yunfei-cloud.yc-types-side .yc-lesson-links{overflow:visible}}

/* Cloud tutorial types use a separate cascading panel, like Director tutorials. */
@media(min-width:601px){
  #yunfei-cloud.yc-cloud-tutorial-side .yc-director-content{overflow:visible}
  #yunfei-cloud.yc-cloud-tutorial-side .yc-tutorial[aria-expanded="true"]{color:#4166d8;background:#edf2ff}
  #yunfei-cloud.yc-cloud-tutorial-side .yc-tutorial[aria-expanded="true"] .yc-arrow{transform:none}
  #yunfei-cloud.yc-cloud-tutorial-side #yc-platforms{position:fixed;inset:auto;box-sizing:border-box;width:180px;max-height:calc(100dvh - 24px);overflow:auto;margin:0;padding:7px;border:1px solid #e0e6f0;border-radius:12px;background:#fff;box-shadow:0 8px 26px #2438591a}
  #yunfei-cloud.yc-cloud-platforms-side #yc-platforms{overflow:visible}
}

/* Compact desktop panels: keep labels readable and remove unused arrow spacing. */
@media(min-width:601px){
  #yunfei-cloud.yc-director-side .yc-director-content,#yunfei-cloud.yc-director-side .yc-lesson-links{width:136px;padding:6px}
  #yunfei-cloud.yc-director-side .yc-director-content .yc-action{padding-inline:6px;gap:6px}
  #yunfei-cloud.yc-director-side .yc-director-content .yc-platform,#yunfei-cloud.yc-director-side .yc-lesson-links .yc-platform{padding-inline:4px;gap:6px}
  #yunfei-cloud.yc-director-side .yc-platform .yc-arrow{font-size:14px}
  #yunfei-cloud.yc-cloud-tutorial-side #yc-platforms,#yunfei-cloud .yc-tutorial-group.yc-group-side>.yc-type-links{width:124px;padding:6px}
}
