.health-page-head { gap: 14px; }
.health-page-actions { margin-left: 0; }
.project-tree-toggle { min-height: 42px; display: inline-flex; align-items: center; gap: 10px; margin-left: auto; padding: 8px 12px; border: 1px solid #dce5e1; border-radius: 12px; background: #fff; color: #627772; font-size: 16px; font-weight: 500; white-space: nowrap; transition: background .18s, border-color .18s, color .18s; }
.project-tree-toggle > svg { width: 20px; height: 20px; fill: none; stroke: currentColor; stroke-width: 1.5; stroke-linecap: round; stroke-linejoin: round; }
.project-tree-toggle:hover { border-color: #9cbeb2; background: #f2f7f4; }
.project-tree-toggle[aria-checked="true"] { color: #176d5b; border-color: #bdd9cd; background: #eaf4ee; }
.project-tree-switch { width: 34px; height: 20px; position: relative; flex: 0 0 auto; border-radius: 20px; background: #c0cdc7; transition: background .2s; }
.project-tree-switch::after { content: ''; position: absolute; top: 3px; left: 3px; width: 14px; height: 14px; border-radius: 50%; background: white; box-shadow: 0 1px 3px #123f3426; transition: transform .2s; }
.project-tree-toggle[aria-checked="true"] .project-tree-switch { background: #26836b; }
.project-tree-toggle[aria-checked="true"] .project-tree-switch::after { transform: translateX(14px); }
.project-tree-card { position: relative; min-width: 0; border-radius: 10px; background: white; box-shadow: 0 1px 2px #1e39391f; }
.project-tree-card > .project-card { padding-right: 44px; box-shadow: none; background: transparent; }
.project-tree-card > .project-card:hover { transform: none; background: #f8faf8; box-shadow: none; }
.project-tree-card .project-card-title { overflow-wrap: anywhere; }
.project-tree-disclosure { position: absolute; top: 8px; right: 5px; display: grid; place-items: center; width: 34px; height: 36px; padding: 0; border: 0; border-radius: 8px; color: #71867c; background: transparent; }
.project-tree-disclosure:hover { color: #176d5b; background: #eaf3ee; }
.project-tree-disclosure svg { width: 17px; height: 17px; fill: none; stroke: currentColor; stroke-width: 1.7; stroke-linecap: round; stroke-linejoin: round; transition: transform .18s; }
.project-tree-disclosure[aria-expanded="true"] svg { transform: rotate(90deg); }
.project-tree-content { padding: 1px 12px 12px 20px; }
.project-tree-content[hidden] { display: none; }
.project-tree-group { border-left: 1px solid #dbe5df; padding: 0 0 1px 12px; margin: 7px 0 12px; }
.project-tree-group:last-child { margin-bottom: 1px; }
.project-tree-group h3 { display: flex; align-items: center; gap: 7px; margin: 0 0 4px; color: #667b70; font-size: 13px; line-height: 24px; font-weight: 500; letter-spacing: 0; }
.project-tree-group h3 > span { color: #7c8d84; font-size: 12px; font-weight: 400; }
.project-tree-group ul { list-style: none; padding: 0; margin: 0; }
.project-tree-item { position: relative; display: flex; align-items: flex-start; gap: 9px; min-height: 34px; margin-left: -6px; padding: 6px; border-radius: 7px; color: #344f45; text-decoration: none; font-size: 16px; line-height: 1.45; transition: background .15s; }
.project-tree-item:hover { color: #176d5b; background: #eff5f1; }
.project-tree-item-title { min-width: 0; flex: 1; overflow-wrap: anywhere; }
.project-tree-state { flex: 0 0 auto; width: 14px; height: 14px; display: grid; place-items: center; margin-top: 4px; border: 1.5px solid #a7b9af; border-radius: 4px; color: #33866b; font-size: 11px; line-height: 1; font-weight: 700; }
.project-tree-state.state-in_progress { border-color: #76a99a; background: linear-gradient(90deg, #76a99a 50%, transparent 50%); }
.project-tree-state.state-done, .project-tree-state.state-completed { border-color: #cee1d4; background: #e7f2e9; }
.project-tree-state.is-treatment { border: 0; border-radius: 4px; background: #edf1f8; color: #6284b1; font-size: 17px; font-weight: 500; }
.project-tree-state.is-treatment.state-active { color: #398668; background: #e6f2ea; }
.project-tree-state.is-treatment.state-completed { color: #7a8c81; background: #edf1ed; font-size: 12px; }
.project-tree-item.is-complete { color: #7a897e; }
.project-tree-open { flex: 0 0 auto; width: 14px; height: 14px; margin-top: 4px; fill: none; stroke: currentColor; stroke-width: 1.4; opacity: 0; }
.project-tree-item:hover .project-tree-open, .project-tree-item:focus-visible .project-tree-open { opacity: .7; }
.project-tree-empty { margin: 6px 0 3px; color: #7a897e; font-size: 14px; line-height: 1.5; }
.project-tree-retry { padding: 0; border: 0; background: none; color: #176d5b; font: inherit; text-decoration: underline; }
.project-tree-toggle:focus-visible, .project-tree-disclosure:focus-visible, .project-tree-item:focus-visible { outline: 2px solid #26836b; outline-offset: 2px; }
@media (max-width: 900px) {
  .health-page-head { display: grid; grid-template-columns: 1fr auto; gap: 6px 10px; padding-bottom: 10px; }
  .health-page-actions { grid-column: 2; grid-row: 1; gap: 8px; }
  .project-tree-toggle { grid-column: 1 / -1; grid-row: 2; justify-content: flex-start; width: 100%; min-height: 40px; margin: 0; padding: 7px 11px; font-size: 14px; border-radius: 10px; }
  .project-tree-switch { margin-left: auto; }
  .project-tree-card { border-radius: 12px; }
  .project-tree-card > .project-card { border: 0; }
  .project-tree-disclosure { width: 40px; height: 44px; right: 2px; }
  .project-tree-content { padding-left: 18px; padding-right: 9px; }
  .project-tree-item { min-height: 40px; font-size: 15px; }
}
@media (prefers-reduced-motion: reduce) {
  .project-tree-toggle, .project-tree-switch, .project-tree-switch::after, .project-tree-disclosure svg, .project-tree-item { transition: none; }
}
