.app-header[data-v-b3b4625c]{align-items:center;background:var(--color-bg-header);border-bottom:1px solid #e0e0e0;display:flex;flex-shrink:0;gap:8px;height:52px;justify-content:space-between;padding:0 16px}.header-logo[data-v-b3b4625c]{flex-shrink:0;flex:1}.btn-hamburger[data-v-b3b4625c]{align-items:center;background:none;border:none;border-radius:6px;color:var(--color-text-primary);cursor:pointer;display:none;flex-shrink:0;height:36px;justify-content:center;transition:background .15s;width:36px}.btn-hamburger[data-v-b3b4625c]:hover{background:#f0f4ff}@media(max-width:767px){.btn-hamburger[data-v-b3b4625c]{display:flex}.app-header[data-v-b3b4625c]{padding:0 12px}}.header-user[data-v-b3b4625c]{align-items:center;border-radius:6px;cursor:pointer;display:flex;flex-shrink:0;gap:10px;padding:4px 8px;position:relative;transition:background .15s}.header-user[data-v-b3b4625c]:hover{background:#f0f4ff}.user-name[data-v-b3b4625c]{color:var(--color-text-primary);font-size:var(--text-sm);font-weight:var(--font-semibold);letter-spacing:.3px}@media(max-width:480px){.user-name[data-v-b3b4625c]{display:none}}.user-menu[data-v-b3b4625c]{background:#fff;border:1px solid #d0d8e8;border-radius:8px;box-shadow:0 4px 16px #2b5ba81f;min-width:160px;overflow:hidden;position:absolute;right:0;top:calc(100% + 6px);z-index:200}.user-menu-item[data-v-b3b4625c]{align-items:center;background:none;border:none;cursor:pointer;display:flex;font-family:var(--font-primary);font-size:var(--text-sm);gap:8px;padding:10px 14px;text-align:left;transition:background .1s;width:100%}.user-menu-item[data-v-b3b4625c]:not(.user-menu-item--logout){color:var(--color-text-primary);text-decoration:none}.user-menu-item[data-v-b3b4625c]:not(.user-menu-item--logout):hover{background:#f0f4ff}.user-menu-item--admin[data-v-b3b4625c]{color:var(--color-primary);text-decoration:none}.user-menu-item--admin[data-v-b3b4625c]:hover{background:#f0f4ff}.user-menu-item--logout[data-v-b3b4625c]{color:#e53e3e}.user-menu-item--logout[data-v-b3b4625c]:hover{background:#fff5f5}.sidebar-root[data-v-cd3bbcbe]{flex-shrink:0;position:relative;width:320px}.sidebar-backdrop[data-v-cd3bbcbe]{background:#00000073;top:0;right:0;bottom:0;left:0;position:fixed;z-index:99}.fade-enter-active[data-v-cd3bbcbe],.fade-leave-active[data-v-cd3bbcbe]{transition:opacity .25s ease}.fade-enter-from[data-v-cd3bbcbe],.fade-leave-to[data-v-cd3bbcbe]{opacity:0}.sidebar[data-v-cd3bbcbe]{background:var(--color-bg-sidebar);display:flex;flex-direction:column;height:100%;overflow:hidden;width:100%}.sidebar-close-row[data-v-cd3bbcbe]{display:none;justify-content:flex-end;padding:8px 12px 0}.btn-close-sidebar[data-v-cd3bbcbe]{align-items:center;background:#ffffff1f;border:none;border-radius:6px;color:#fff;cursor:pointer;display:flex;height:32px;justify-content:center;transition:background .15s;width:32px}.btn-close-sidebar[data-v-cd3bbcbe]:hover{background:#ffffff38}.sidebar-nav[data-v-cd3bbcbe]{padding:16px 16px 12px}.btn-my-programs[data-v-cd3bbcbe]{background:var(--color-bg-sidebar-btn);border-radius:6px;color:var(--color-text-sidebar);display:block;font-size:var(--text-sm);font-weight:var(--font-bold);letter-spacing:.5px;padding:10px 0;text-align:center;text-decoration:none;transition:background .15s;width:100%}.btn-my-programs[data-v-cd3bbcbe]:hover{background:#3d6cb5}.programs-list[data-v-cd3bbcbe]{flex:1;overflow-y:auto;padding:8px 0}.program-item[data-v-cd3bbcbe]{align-items:flex-start;cursor:pointer;display:flex;gap:10px;padding:10px 16px;text-decoration:none;transition:background .1s}.program-item[data-v-cd3bbcbe]:hover{background:#ffffff14}.program-item--active[data-v-cd3bbcbe]{background:#ffffff1f}.program-icon[data-v-cd3bbcbe]{flex-shrink:0;margin-top:2px}.program-info[data-v-cd3bbcbe]{display:flex;flex-direction:column;gap:2px}.program-title[data-v-cd3bbcbe]{color:var(--color-text-sidebar);font-size:var(--text-base);font-weight:var(--font-semibold);line-height:var(--leading-tight)}.program-item--active .program-title[data-v-cd3bbcbe]{font-weight:var(--font-bold)}.program-completeness[data-v-cd3bbcbe]{color:#ffffffa6;font-size:var(--text-xs)}@media(max-width:767px){.sidebar-root[data-v-cd3bbcbe]{width:0}.sidebar-close-row[data-v-cd3bbcbe]{display:flex}.sidebar[data-v-cd3bbcbe]{bottom:0;box-shadow:4px 0 24px #0000004d;left:0;position:fixed;top:0;transform:translate(-100%);transition:transform .28s cubic-bezier(.4,0,.2,1);width:300px;z-index:100}.sidebar--open[data-v-cd3bbcbe]{transform:translate(0)}}.workspace-header[data-v-09dd5feb]{align-items:center;background:var(--color-bg-header);border-bottom:1px solid #e0e0e0;display:flex;flex-shrink:0;height:56px;padding:0 24px}.wh-title[data-v-09dd5feb]{color:var(--color-text-primary);flex:1;font-size:var(--text-xl);font-weight:var(--font-bold);letter-spacing:.5px;text-align:center;text-transform:uppercase}.wh-right[data-v-09dd5feb]{flex-shrink:0;width:120px}.app-layout[data-v-3f5bd553]{display:flex;flex-direction:column;font-family:var(--font-primary);height:100vh;overflow:hidden}.app-body[data-v-3f5bd553]{min-height:0}.app-body[data-v-3f5bd553],.workspace[data-v-3f5bd553]{display:flex;flex:1;overflow:hidden}.workspace[data-v-3f5bd553]{flex-direction:column;min-width:0}.workspace-canvas[data-v-3f5bd553]{background-color:var(--color-bg-page);background-position:50%;background-repeat:no-repeat;background-size:cover;flex:1;overflow-y:auto;padding:24px}
