.rh-wrap{height:auto;min-height:100%;display:flex;flex-direction:column;gap:12px}
.rh-head{position:relative;overflow:hidden;border:1px solid rgba(177,77,255,.34);border-radius:14px;background:radial-gradient(circle at 18% 16%,rgba(95,215,240,.18),transparent 34%),linear-gradient(180deg,rgba(20,14,31,.92),rgba(8,9,16,.96));box-shadow:inset 0 0 0 1px rgba(255,255,255,.035);padding:14px 15px}
.rh-head:after{content:"";position:absolute;right:-42px;top:-48px;width:132px;height:132px;border-radius:50%;border:1px solid rgba(201,168,76,.22);box-shadow:0 0 34px rgba(201,168,76,.14),inset 0 0 24px rgba(95,215,240,.09);pointer-events:none}
.rh-head,.rh-stage,.rh-related,.rh-actions,.rh-bottom{flex:0 0 auto}
.rh-kicker,.rh-meta,.rh-count,.rh-depth span,.rh-related label{font-family:var(--mono);font-size:9.5px;letter-spacing:1.45px;text-transform:uppercase}
.rh-kicker{color:var(--cyan);font-weight:800;margin-bottom:7px}
.rh-title{margin:0;color:#fff;font-size:22px;line-height:1.12;letter-spacing:0;font-weight:850}
.rh-seed{margin:8px 0 0;color:rgba(255,255,255,.83);font-size:13.5px;line-height:1.48}
.rh-meta{display:flex;align-items:center;gap:7px;flex-wrap:wrap;margin-top:11px;color:var(--dim)}
.rh-chip{border:1px solid rgba(95,215,240,.26);background:rgba(95,215,240,.08);color:var(--cyan);border-radius:999px;padding:4px 8px;line-height:1}
.rh-chip.gold{border-color:rgba(201,168,76,.32);background:rgba(201,168,76,.09);color:var(--gold-bright)}
.rh-stage{position:relative;min-height:235px;max-height:min(38vh,360px);overflow:auto;border:1px solid var(--line);border-radius:14px;background:linear-gradient(180deg,rgba(255,255,255,.035),rgba(255,255,255,.015));padding:14px 12px 14px 22px}
.rh-stage:before{content:"";position:absolute;left:22px;top:24px;bottom:24px;width:1px;background:linear-gradient(180deg,rgba(95,215,240,.15),rgba(177,77,255,.62),rgba(201,168,76,.18));box-shadow:0 0 16px rgba(177,77,255,.25)}
.rh-node{position:relative;display:block;width:calc(100% - 18px);text-align:left;margin:0 0 10px 18px;border:1px solid rgba(255,255,255,.11);border-radius:12px;background:rgba(9,10,17,.68);padding:11px 12px;color:inherit;box-shadow:0 10px 28px rgba(0,0,0,.22);animation:rhRise .22s ease both}
button.rh-node{font:inherit;cursor:pointer}
button.rh-node:hover{border-color:rgba(95,215,240,.5);background:rgba(95,215,240,.07)}
.rh-node:before{content:"";position:absolute;left:-29px;top:15px;width:12px;height:12px;border-radius:50%;background:var(--cyan);box-shadow:0 0 16px rgba(95,215,240,.72)}
.rh-node.seed:before{background:var(--gold-bright);box-shadow:0 0 16px rgba(201,168,76,.72)}
.rh-node.locked{border-style:dashed;background:rgba(255,255,255,.025);color:var(--dim)}
.rh-node.locked:before{background:rgba(255,255,255,.2);box-shadow:none}
.rh-node.revealed:not(.open){padding:9px 12px;background:rgba(255,255,255,.035)}
.rh-node.revealed:not(.open):before{background:rgba(95,215,240,.5);box-shadow:0 0 10px rgba(95,215,240,.32)}
.rh-node.revealed:not(.open) h3{margin:0;color:rgba(255,255,255,.76);font-size:13.5px}
.rh-node.revealed:not(.open) p{display:none}
.rh-node.open{border-color:rgba(95,215,240,.42);background:rgba(95,215,240,.075)}
.rh-node h3{margin:0 0 5px;color:#fff;font-size:15px;line-height:1.22}
.rh-node h3 small{float:right;color:var(--dim);font-family:var(--mono);font-size:9px;letter-spacing:1px;text-transform:uppercase;font-weight:700}
.rh-node p{margin:0;color:rgba(255,255,255,.76);font-size:12.8px;line-height:1.5}
.rh-node.locked h3,.rh-node.locked p{color:var(--dim)}
.rh-empty{position:relative;margin-left:18px;border:1px dashed rgba(201,168,76,.24);border-radius:12px;background:rgba(201,168,76,.045);padding:18px 14px;color:var(--dim);font-size:13px;line-height:1.5}
.rh-actions{position:sticky;bottom:0;z-index:2;display:grid;grid-template-columns:1fr 1fr;gap:8px;padding-top:8px;background:linear-gradient(180deg,rgba(7,8,13,0),rgba(7,8,13,.94) 30%,rgba(7,8,13,.98))}
.rh-actions .btn,.rh-actions .rh-btn{justify-content:center}
.rh-btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;border:1px solid rgba(255,255,255,.16);border-radius:10px;background:rgba(255,255,255,.045);color:var(--dim);font-family:var(--mono);font-size:10.5px;letter-spacing:1.1px;text-transform:uppercase;font-weight:800;padding:10px 12px;cursor:pointer}
.rh-btn:hover{border-color:var(--cyan);color:#fff;background:rgba(95,215,240,.08)}
.rh-btn:disabled{opacity:.42;cursor:not-allowed}
.rh-bottom{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:center}
.rh-select{min-width:0;width:100%;border:1px solid var(--line);border-radius:10px;background:rgba(255,255,255,.05);color:var(--text);font-size:12px;padding:9px;outline:none}
.rh-select:focus{border-color:var(--cyan)}
.rh-count{color:var(--dim);white-space:nowrap}
.rh-related{display:none;border:1px solid rgba(201,168,76,.24);border-radius:12px;background:rgba(201,168,76,.055);padding:10px 11px}
.rh-related.show{display:block}
.rh-related label{display:block;color:var(--gold-bright);margin-bottom:7px}
.rh-related .rh-rel-list{display:flex;gap:6px;flex-wrap:wrap}
.rh-rel{border:1px solid rgba(201,168,76,.28);border-radius:999px;background:rgba(0,0,0,.14);color:rgba(255,255,255,.82);font-size:11.5px;padding:6px 8px;cursor:pointer}
.rh-rel:hover{border-color:var(--gold-bright);color:#fff}
@keyframes rhRise{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:560px){
  .rh-title{font-size:19px}
  .rh-stage{min-height:225px;max-height:300px}
  .rh-actions{grid-template-columns:1fr}
  .rh-bottom{grid-template-columns:1fr}
  .rh-count{white-space:normal}
}
