/* 원본 project-nav의 색상·버튼을 유지하며 계층 들여쓰기와 별도 접기 버튼만 배치한다. */
.project-nav .project-hierarchy-tree,
.project-nav .project-hierarchy-tree ul { list-style:none; padding:0; margin:0; }
.project-nav .project-hierarchy-tree ul { margin-left:14px; border-left:1px solid var(--line,#e1e5ed); padding-left:5px; }
.project-nav .project-hierarchy-row { display:flex; align-items:center; min-width:0; }
.project-nav .project-hierarchy-select { flex:1; min-width:0; }
.project-nav .project-hierarchy-toggle { flex:0 0 24px; width:24px; padding:6px 2px; justify-content:center; }
.project-nav .project-hierarchy-label { min-width:0; overflow-wrap:anywhere; text-align:left; }
.project-nav .project-hierarchy-badge { font-size:9px; white-space:nowrap; margin-left:auto; opacity:.7; }
.project-nav .project-hierarchy-count { margin-left:auto; }
.project-hierarchy-editor form > button { margin-right:8px; }
.project-hierarchy-tree [hidden] { display:none; }
.project-hierarchy-scope { display:inline-flex; align-items:center; gap:5px; font-size:11px; white-space:nowrap; }
.project-hierarchy-scope input { accent-color:var(--purple); }
.project-hierarchy-scope[hidden], #projectParentField[hidden] { display:none; }
#projectParentField small { display:block; margin-top:6px; line-height:1.6; }
/* 사이드바 너비 안에서 탐색 조작만 배치하고 모든 프로젝트·선택/접기 버튼은 유지한다. */
.project-nav .project-navigation-controls{display:flex;gap:5px;flex-wrap:wrap;align-items:center;margin:8px 0}
.project-nav .project-navigation-controls label{width:100%;font-size:10px;color:var(--muted)}
.project-nav .project-navigation-controls input{width:100%;min-width:0;border:1px solid var(--line);border-radius:6px;padding:7px;background:var(--surface,#fff);color:var(--ink);font:inherit}
/* 브라우저 기본 검정 테두리를 제거하고 검색·선택·지우기를 공통 입력 규격으로 맞춘다. */
.project-nav .project-navigation-controls input,.project-nav .project-navigation-controls select,.project-nav .project-navigation-controls button{min-height:36px;border:1px solid var(--line,#e8ebf0);border-radius:6px;background:var(--surface,#fff);color:var(--ink,#202838);font:inherit;font-size:12px;line-height:1.4}
.project-nav .project-navigation-controls input,.project-nav .project-navigation-controls select{padding:8px 10px}
.project-nav .project-navigation-controls select{max-width:100%;min-width:0;width:auto;appearance:none;padding-right:30px;background-image:linear-gradient(45deg,transparent 50%,var(--muted,#8991a1) 50%),linear-gradient(135deg,var(--muted,#8991a1) 50%,transparent 50%);background-position:calc(100% - 15px) center,calc(100% - 11px) center;background-size:4px 4px;background-repeat:no-repeat}
.project-nav .project-navigation-controls input:focus-visible,.project-nav .project-navigation-controls select:focus-visible,.project-nav .project-navigation-controls button:focus-visible{outline:2px solid var(--purple,#7162df);outline-offset:2px}
.project-nav .project-navigation-controls button:hover:not(:disabled){background:#f3f1ff;border-color:#d6cff8;color:var(--purple,#7162df)}
.project-nav .project-navigation-controls :disabled{opacity:.55;cursor:not-allowed}
.project-nav .project-navigation-controls button,.project-nav .project-navigation-pagination button{width:auto;padding:5px 7px;font-size:10px;justify-content:center}
.project-nav .project-navigation-pagination{display:flex;gap:3px;flex-wrap:wrap;align-items:center;margin-top:6px}
.project-nav .project-navigation-pagination [aria-current=page]{background:var(--purple);color:#fff}
.project-nav .project-navigation-count{font-size:10px;color:var(--muted);line-height:1.5;margin:6px 0}
@media(max-width:720px){.project-nav .project-navigation-controls input,.project-nav .project-navigation-controls button,.project-nav .project-navigation-controls select,.project-nav .project-navigation-pagination button{min-height:44px}}

/* 프로젝트를 주로 탐색하는 데스크톱에서는 본문 시작점도 같은 폭으로 이동한다.
 * 숨김 메뉴·모바일 서랍은 기존 상태 규칙을 유지하며 프로젝트 트리만 따로 스크롤한다. */
@media(min-width:721px){
 .sidebar{width:320px;padding:24px 18px}
 .main{margin-left:320px}
 .sidebar-hidden .main{margin-left:0}
 .sidebar .brand{padding-bottom:6px}
 .sidebar .workspace{margin-top:18px}
 .sidebar .sidebar-foot{padding-top:18px}
 .sidebar .tip{display:none}
}
@media(min-width:721px) and (max-width:1100px){
 .sidebar{width:292px;padding-right:12px;padding-left:12px}
 .main{margin-left:292px}
 .sidebar-hidden .main{margin-left:0}
}
.sidebar .brand-version{padding-left:12px;font-size:11px;font-weight:600;color:var(--muted);letter-spacing:.4px}
.project-nav .project-hierarchy-tree{max-height:clamp(220px,38vh,520px);overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable}
.project-nav .project-hierarchy-tree ul{max-height:none;overflow:visible}
.project-nav .project-hierarchy-select{min-height:40px;gap:8px;padding:9px 8px;font-size:12px}
.project-nav .project-hierarchy-label{line-height:1.6;word-break:keep-all;overflow-wrap:anywhere}
.project-nav .project-navigation-controls{display:grid;grid-template-columns:minmax(0,1fr) auto}
.project-nav .project-navigation-controls input{grid-column:1 / -1}
.project-nav .project-navigation-controls select{width:100%;min-height:36px}
.project-nav .project-navigation-controls button{grid-column:2;grid-row:2;min-height:36px;padding:8px 10px;font-size:12px}
#projectNavigationStatus{font-size:10px;line-height:1.6;white-space:nowrap;margin:8px 0}
#projectNavigationStatus.project-navigation-empty,#projectNavigationStatus[role=alert]{white-space:normal}
@media(max-width:720px){
 .sidebar-mobile-open .sidebar{width:min(320px,calc(100vw - 44px));padding:22px 14px}
 .project-nav .project-navigation-controls button,.project-nav .project-navigation-controls select{min-height:44px}
 .project-nav .project-hierarchy-tree{max-height:40vh}
}

/* 탐색 영역이 상단을 차지하더라도 기본 메뉴의 행 높이는 과도하게 벌어지지 않게 한다. */
.sidebar .workspace{margin-bottom:10px}
.sidebar .nav{margin-top:0}
.sidebar .nav>button{padding:9px 12px;min-height:36px}
.sidebar .sidebar-group{flex-shrink:0}
