.pct-tree { display:flex; flex-direction:column; gap:14px; width:100%; }
.pct-section-title {
  display:flex; align-items:center; gap:8px; margin:3px 0 8px;
  font-size:11px; font-weight:800; color:#64748b; text-transform:uppercase;
}
.pct-section-title::before, .pct-section-title::after {
  content:""; flex:1; height:1px; background:#e2e8f0;
}
.pct-list, .pct-children { display:flex; flex-direction:column; gap:6px; }
.pct-row { display:flex; align-items:stretch; gap:5px; min-width:0; }
.pct-label {
  flex:1; min-width:0; padding:10px 12px; border:1.5px solid #d1d5db;
  border-radius:9px; background:#fff; color:#374151;
  font-family:inherit; font-size:13px; font-weight:700;
  text-align:left; cursor:pointer; overflow-wrap:anywhere;
}
.pct-name { flex:1; min-width:0; }
.pct-label:hover, .pct-expand:hover, .pct-pick:hover { border-color:#16a34a; }
.pct-label.selected { border-color:#16a34a; color:#166534; background:#f0fdf4; }
.pct-label.selected::before { content:"✓ "; }
.pct-hot > .pct-label { background:#fffbeb; border-color:#fcd34d; }
.pct-hot > .pct-label.selected { background:#fef3c7; border-color:#f59e0b; }
.pct-expand, .pct-pick, .pct-hot-toggle {
  flex:none; border:1.5px solid #d1d5db; border-radius:9px;
  background:#f8fafc; color:#475569; cursor:pointer;
}
.pct-expand { width:40px; font-size:18px; }
.pct-pick { padding:0 8px; font-size:11px; font-weight:700; }
.pct-hot-toggle { width:30px; font-size:18px; }
.pct-count { color:#9ca3af; margin-left:5px; font-size:11px; }
.pct-children {
  margin:2px 0 2px 14px; padding-left:9px; border-left:2px solid #dcfce7;
}
@media (max-width:700px) {
  .pct-row { gap:4px; }
  .pct-label { padding:10px 8px; font-size:12px; }
  .pct-pick { padding:0 6px; }
  .pct-expand { width:36px; }
  .pct-children { margin-left:7px; padding-left:7px; }
}