/* nx-rail v2 · свита 96 px · разгъната 280 px · ред 56 px · цялата ширина е цел (spec nx2-17) */
.nx-rail2{display:flex;flex-direction:column;width:280px;flex:0 0 280px;background:var(--nx-surface-1);
  border-right:1px solid var(--nx-line);overflow:hidden;transition:width .18s,flex-basis .18s;touch-action:pan-y}
.nx-rail2.is-folded{width:96px;flex-basis:96px}
.nx-rail2__list{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:var(--nx-s2);display:flex;flex-direction:column;gap:2px}
.nx-rail2 svg{width:24px;height:24px;flex:0 0 24px}
.nx-rail2__row{display:flex;align-items:center;gap:var(--nx-s3);width:100%;min-height:56px;padding:0 var(--nx-s3);
  border:0;border-radius:28px;background:none;color:var(--nx-text);font-size:15px;text-align:left;position:relative;
  -webkit-user-select:none;user-select:none;-webkit-touch-callout:none}
.nx-rail2__row:active{background:var(--nx-surface-3)}
.nx-rail2__item.is-open>.nx-rail2__row{background:var(--nx-accent-bg);color:var(--nx-accent);font-weight:500}
.nx-rail2__icon{position:relative;display:flex}
.nx-rail2__badge{position:absolute;top:-6px;right:-10px;min-width:18px;height:18px;padding:0 5px;border-radius:9px;
  background:var(--nx-err);color:#fff;font-size:11px;font-style:normal;line-height:18px;text-align:center}
.nx-rail2__name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.nx-rail2__pinned{width:6px;height:6px;border-radius:3px;background:var(--nx-accent);margin-left:auto;flex:0 0 6px}
.nx-rail2__kids{display:none;margin:2px 0 var(--nx-s2) 27px;padding-left:16px;border-left:2px solid var(--nx-line-strong)}
.nx-rail2__item.is-open>.nx-rail2__kids{display:flex;flex-direction:column;gap:2px}
.nx-rail2__kid{display:flex;align-items:center;min-height:48px;padding:0 var(--nx-s3);border:0;border-radius:24px;background:none;
  color:var(--nx-text-2);font-size:14px;text-align:left;width:100%;text-decoration:none}
.nx-rail2__kid:active{background:var(--nx-surface-3)}
.nx-rail2__kid.is-act{color:var(--nx-text-3)}
.nx-rail2__kids.is-group>.nx-rail2__item>.nx-rail2__row{min-height:48px;font-size:14px}
.nx-rail2__item.is-drag{opacity:.7;box-shadow:var(--nx-shadow-2);border-radius:28px}
/* свитата форма: иконка + кратко име отдолу */
.nx-rail2.is-folded .nx-rail2__list{padding:var(--nx-s2) 4px}
.nx-rail2.is-folded .nx-rail2__row{flex-direction:column;justify-content:center;gap:4px;padding:6px 2px;min-height:64px;border-radius:16px;text-align:center}
.nx-rail2.is-folded .nx-rail2__name{font-size:12px;max-width:88px}
.nx-rail2.is-folded .nx-rail2__pinned{display:none}
.nx-rail2.is-folded .nx-rail2__item.is-open>.nx-rail2__row{background:var(--nx-accent-bg)}
/* долу: „вид“ и „закачен“ на един ред */
.nx-rail2__foot{flex:0 0 auto;display:flex;justify-content:space-around;gap:4px;padding:var(--nx-s2);border-top:1px solid var(--nx-line)}
.nx-rail2__foot button{width:48px;height:48px;border-radius:24px;border:0;background:none;color:var(--nx-text-2);display:flex;align-items:center;justify-content:center}
.nx-rail2__foot button.is-on{background:var(--nx-accent-bg);color:var(--nx-accent)}
/* телефон: разгънатата е слой със затъмнение */
.nx-rail2.is-over{position:fixed;left:0;bottom:0;z-index:55;width:280px;flex-basis:280px;box-shadow:var(--nx-shadow-2)}
.nx-rail2__scrim{position:fixed;inset:0;z-index:54;background:rgba(8,9,11,.32)}
  padding-top:env(safe-area-inset-top);padding-bottom:env(safe-area-inset-bottom)}
.nx-rail2__title{margin:var(--nx-s1) var(--nx-s3);font-size:12px;color:var(--nx-text-2)}
.nx-rail2__group{margin:var(--nx-s2) var(--nx-s3) 2px;font-size:10.5px;text-transform:uppercase;letter-spacing:.1em;color:var(--nx-text-3)}
.nx-rail2__row.is-result{min-height:48px;font-size:14px}
/* ==== по-тънък на телефон, имената не се режат (plan T125) ==== */
@media (max-width:599px){
  .nx-rail2:not(.is-folded){width:220px;flex-basis:220px}
  .nx-rail2.is-over{width:220px;flex-basis:220px}
}
.nx-rail2__name{white-space:normal;line-height:1.25;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.nx-rail2__row{min-height:56px;padding-top:4px;padding-bottom:4px}

/* свитият — без долния ред (plan T129 2) */
.nx-rail2.is-folded .nx-rail2__foot{display:none}
/* цялото дърво — следващият екран: екранът и rail-ът се плъзгат заедно (plan T129 3) */
.nx-under{transition:transform .25s ease}
body.is-tree .nx-under{transform:translateX(-100%)}
.nx-treepush{position:fixed;left:0;right:0;z-index:40;overflow-y:auto;background:var(--nx-surface-1);
  transform:translateX(100%);transition:transform .25s ease}
body.is-tree .nx-treepush{transform:none}
.nx-treepush .nx-rail2__list{display:block;columns:240px auto;column-gap:var(--nx-s4);padding:var(--nx-s3)}
.nx-treepush .nx-rail2__item{break-inside:avoid;margin-bottom:var(--nx-s2)}
.nx-treepush .nx-rail2__row{flex-direction:row;min-height:52px}
.nx-treepush .nx-rail2__kids{display:none}
.nx-treepush .nx-rail2__item.is-open>.nx-rail2__kids{display:flex;flex-direction:column}

/* ==== свит: под-редовете са вътре, в същите 96 px, с чертата (plan T134 1) ==== */
.nx-rail2.is-folded .nx-rail2__item.is-open>.nx-rail2__kids{display:flex;flex-direction:column;gap:2px;margin:2px 0 6px 10px;padding-left:6px}
.nx-rail2.is-folded .nx-rail2__kid{min-height:40px;padding:0 4px;font-size:11.5px;line-height:1.2;border-radius:12px;white-space:normal}
