/* HomeworkOS · 侧栏可折叠（仅竖屏/窄屏；横屏宽窗隐藏折叠钮） */
.sidebar {
  position: relative;
  flex-shrink: 0;
  transition: width 0.2s ease, min-width 0.2s ease, padding 0.2s ease;
}

/* 小折叠钮：贴在侧栏靠工作区一侧顶部，默认低调，避免挡住「最近布置」中部内容 */
.sidebar-collapse-btn {
  position: absolute;
  top: 10px;
  transform: none;
  z-index: 40;
  width: 18px;
  height: 32px;
  padding: 0;
  margin: 0;
  border: 1px solid rgba(255, 255, 255, 0.1);
  border-radius: 6px;
  background: rgba(37, 43, 56, 0.92);
  color: #8a97ad;
  font-size: 12px;
  line-height: 1;
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  opacity: 0.45;
  transition: opacity 0.15s ease, background 0.15s ease, color 0.15s ease, border-color 0.15s ease;
  box-shadow: 0 1px 4px rgba(0, 0, 0, 0.2);
  user-select: none;
}
.sidebar-collapse-btn:hover,
.sidebar-collapse-btn:focus-visible {
  opacity: 1;
  color: #e8ecf4;
  background: #2b3241;
  border-color: rgba(var(--accent-rgb, 91, 141, 239), 0.35);
  outline: none;
}
.sidebar-collapse-btn:focus-visible {
  box-shadow: 0 0 0 2px rgba(var(--accent-rgb, 91, 141, 239), 0.35);
}

/* 左栏钮靠右缘；右栏钮靠左缘 */
.left-sidebar > .sidebar-collapse-btn {
  right: 4px;
  left: auto;
}
.right-sidebar > .sidebar-collapse-btn {
  left: 4px;
  right: auto;
}

/*
 * 横屏/宽屏：完全隐藏折叠钮，侧栏始终展开。
 * JS 会给 .main / html 打上 layout-wide / hos-layout-wide。
 */
.main.layout-wide > .sidebar > .sidebar-collapse-btn,
html.hos-layout-wide .sidebar-collapse-btn {
  display: none !important;
  pointer-events: none !important;
}

/* 折叠态：窄轨 + 只露按钮（仅紧凑布局会出现） */
.sidebar.is-collapsed {
  width: 32px !important;
  min-width: 32px !important;
  max-width: 32px !important;
  padding: 8px 0 !important;
  overflow: hidden !important;
}
.sidebar.is-collapsed > :not(.sidebar-collapse-btn) {
  display: none !important;
}
.sidebar.is-collapsed > .sidebar-collapse-btn {
  position: absolute;
  top: 50%;
  left: 50%;
  right: auto;
  transform: translate(-50%, -50%);
  width: 22px;
  height: 40px;
  opacity: 0.8;
  display: inline-flex !important;
}

/* 悬停主区域时侧栏钮略亮，方便发现（仅紧凑布局） */
.main.layout-compact:hover .sidebar:not(.is-collapsed) > .sidebar-collapse-btn {
  opacity: 0.72;
}
