/* EDMS 공통 사이드바의 단일 원본. 격리 CSS 번들에 중복 정의하지 않습니다. */
:is(.app-shell .content, .teams-garam-content) .edms-common-sidebar { display:flex;flex-direction:column;height:calc(100vh - 150px);min-height:560px;overflow:hidden;border:1px solid var(--border);border-radius:1rem; }
:is(.app-shell .content, .teams-garam-content) .edms-common-body { flex:1;min-height:0;overflow:auto;margin-bottom:.5rem; }
:is(.app-shell .content, .teams-garam-content) .edms-common-body .edms-tree-tabs { display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.25rem;margin:.6rem 0 .75rem;padding:.25rem;background:var(--surface-2);border-radius:10px; }
:is(.app-shell .content, .teams-garam-content) .edms-common-body button { display:flex;width:100%;align-items:center;border:0;background:transparent;color:var(--muted);text-align:left; }
:is(.app-shell .content, .teams-garam-content) .edms-common-body .edms-tree-tabs button { justify-content:center;padding:.45rem .2rem;border-radius:9px;font-weight:700; }
:is(.app-shell .content, .teams-garam-content) .edms-common-body button.active { background:var(--navigation-selection-background);color:var(--navigation-selection-foreground);font-weight:700; }
:is(.app-shell .content, .teams-garam-content) .edms-common-body button:hover:not(.active) { background:var(--surface-hover);color:var(--text); }
:is(.app-shell .content, .teams-garam-content) .edms-common-body .tree-node-row { display:flex;align-items:center;padding-left:var(--tree-depth); }
:is(.app-shell .content, .teams-garam-content) .edms-common-body .tree-node-row .tree-item { flex:1;min-width:0; }
:is(.app-shell .content, .teams-garam-content) .edms-common-body .tree-node-toggle { display:grid;width:28px;flex:0 0 28px;place-items:center;padding:.35rem 0;color:var(--muted); }
:is(.app-shell .content, .teams-garam-content) .edms-common-body .tree-node-spacer { width:28px;flex:0 0 28px; }
:is(.app-shell .content, .teams-garam-content) .edms-common-body .tree-item span { min-width:0;overflow-wrap:anywhere; }
:is(.app-shell .content, .teams-garam-content) .edms-document-link,:is(.app-shell .content, .teams-garam-content) .edms-common-actions a,:is(.app-shell .content, .teams-garam-content) .edms-common-actions button { display:flex;align-items:center;width:100%;border:0;background:transparent;text-align:left; }
:is(.app-shell .content, .teams-garam-content) .edms-document-link:hover,:is(.app-shell .content, .teams-garam-content) .edms-common-actions a:hover,:is(.app-shell .content, .teams-garam-content) .edms-common-actions button:hover { background:var(--surface-hover);color:var(--text); }
:is(.app-shell .content, .teams-garam-content) .edms-common-actions { display:flex;flex-direction:column;gap:2px;padding-top:12px;border-top:1px solid var(--border); }
:is(.app-shell .content, .teams-garam-content) .edms-common-actions i,:is(.app-shell .content, .teams-garam-content) .edms-document-link i { width:18px;flex:0 0 18px;text-align:center; }
:is(.app-shell .content, .teams-garam-content) .edms-common-actions .admin { color:var(--accent-light);font-weight:700; }

/* 접힘 상태는 부모 선택자 대신 컴포넌트 자신의 Collapsed 값으로 반영합니다. */
@media (min-width:901px) {
:is(.app-shell .content, .teams-garam-content) .edms-common-sidebar.is-collapsed > .module-sidebar-header { display:flex !important;justify-content:center !important;padding-inline:0 !important; }
:is(.app-shell .content, .teams-garam-content) .edms-common-sidebar.is-collapsed > .module-sidebar-header > div,:is(.app-shell .content, .teams-garam-content) .edms-common-sidebar.is-collapsed > .edms-common-body,:is(.app-shell .content, .teams-garam-content) .edms-common-sidebar.is-collapsed > .edms-common-actions { display:none !important; }
}
@media (max-width:900px) {
:is(.app-shell .content, .teams-garam-content) .edms-common-sidebar { height:auto;min-height:0;max-height:360px;overflow:auto; }
}
