/* THE DESK v2 — Module D: BOTS (hub · create · detail). Owns bots.js + bots.css.
   Flat and dense, like the trade panel: navy surfaces, one brand gradient per
   screen (the primary CTA), mono for every number, 44px targets. */
.bt{--bt-vi:var(--neron);--bt-ly:var(--lyra);--bt-blue:#4FB3E8;--bt-warn:#FBBF24;--bt-grey:#C3CCDF;
  max-width:100vw;min-height:100%;padding-bottom:24px;color:var(--ink0)}
.bt .mono{font-family:var(--mono);font-variant-numeric:tabular-nums}
.bt .k{font:600 10px/1 var(--display);letter-spacing:.12em;text-transform:uppercase;color:var(--ink3)}
.bt .up{color:var(--up)}.bt .down{color:var(--down)}.bt .warn{color:var(--bt-warn)}.bt .vi{color:var(--acc-t)}
.bt .dim{color:var(--ink3)}.bt .muted{color:var(--ink2)}
.bt a{color:var(--acc-t)}
.bt-panel{background:var(--s1);border:1px solid var(--line);border-radius:var(--r3);overflow:hidden;min-width:0}
.bt-ph{display:flex;align-items:center;gap:10px;padding:11px 14px;border-bottom:1px solid var(--line);min-height:44px}
.bt-ph .k{flex:1 1 auto;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.bt-ph .tag{font:700 9.5px/1 var(--display);letter-spacing:.08em;text-transform:uppercase;padding:4px 8px;border-radius:var(--pill);border:1px solid var(--line-hot);color:var(--ink2);white-space:nowrap}
.bt-ph .tag.g{color:var(--up);border-color:rgba(74,222,128,.4)}.bt-ph .tag.n{color:var(--acc-t);border-color:var(--acc-line)}.bt-ph .tag.r{color:var(--down);border-color:rgba(248,113,113,.45)}
.bt-ph .sub{font:500 11px var(--mono);color:var(--ink3);white-space:nowrap}

/* ── tabs (mobile hub) ─────────────────────────────────────────────────── */
.bt-tabs{display:flex;border-bottom:1px solid var(--line);background:var(--s1);position:sticky;top:0;z-index:5}
.bt-tabs button{flex:1;min-height:46px;font:600 11.5px var(--display);letter-spacing:.12em;text-transform:uppercase;color:var(--ink3);border-bottom:2px solid transparent;transition:color var(--t1)}
.bt-tabs button[aria-selected="true"]{color:var(--ink0);border-bottom-color:var(--acc)}
.bt-tabs button b{font:inherit;color:var(--acc-t);margin-left:5px}

/* ── PnL header ────────────────────────────────────────────────────────── */
.bt-pnl{position:relative;overflow:hidden;margin:12px 14px 10px;padding:14px 16px;border:1px solid var(--line-hot);border-radius:var(--r3);
  background:linear-gradient(160deg,#11173A,#0B0F20 70%)}
.bt-pnl::after{content:'';position:absolute;right:-40px;top:-60px;width:180px;height:180px;border-radius:50%;background:radial-gradient(rgba(139,124,246,.28),transparent 65%);pointer-events:none}
.bt-pnl .big{font:600 30px/1.1 var(--mono);letter-spacing:-.02em;margin-top:3px;display:flex;align-items:baseline;gap:10px;flex-wrap:wrap}
.bt-pnl .big small{font-size:15px;font-weight:500}
.bt-pnl .row{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-top:12px}
.bt-pnl .row .v{font:500 13px var(--mono);margin-top:3px;white-space:nowrap}
.bt-pnl .row>div{min-width:0}
.bt-kpi{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;padding:12px 14px}
.bt-kpi>div{border:1px solid var(--line);border-radius:var(--r2);padding:11px 13px;background:var(--s2);min-width:0}
.bt-kpi .v{font:600 20px/1.15 var(--mono);letter-spacing:-.01em;margin-top:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.bt-kpi .s{font:500 11px var(--mono);color:var(--ink2);margin-top:3px;line-height:1.35}
.bt-kpi.five{grid-template-columns:repeat(5,1fr)}

/* ── bot cards (mobile) ─────────────────────────────────────────────────── */
.bt-list{display:flex;flex-direction:column;gap:8px;padding:0 14px}
.bt-card{display:block;width:100%;text-align:left;border:1px solid var(--line);border-radius:var(--r3);background:var(--s1);padding:12px 14px;color:var(--ink0);transition:border-color var(--t1),transform var(--t1)}
.bt-card:active{transform:scale(.995)}
.bt-card:hover{border-color:var(--line-hot)}
.bt-card.closed{opacity:.6}
.bt-card .hd{display:flex;align-items:center;gap:10px;min-width:0}
.bt-card .nm{min-width:0;flex:1}
.bt-card .name{font:600 14px/1.2 var(--display);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.bt-card .sub{font:500 11.5px var(--mono);color:var(--ink2);margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.bt-card .body{display:flex;align-items:center;gap:12px;margin-top:10px}
.bt-card .spark{flex:0 0 96px;width:96px;height:34px}
.bt-card .stats{flex:1;display:grid;grid-template-columns:1fr 1fr 1fr;gap:6px;min-width:0}
.bt-card .stats .v{font:500 13px var(--mono);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.bt-card .stats .k{margin-top:2px;font-size:9.5px;color:var(--ink4)}
.bt-tok{width:30px;height:30px;border-radius:50%;flex:0 0 30px;display:grid;place-items:center;font:700 11px var(--display);color:#fff;border:1px solid rgba(255,255,255,.12);background:var(--s3);overflow:hidden}
.bt-tok img{width:100%;height:100%;object-fit:cover}
.bt-tok.sm{width:26px;height:26px;flex-basis:26px;font-size:10px}
.bt-tok.xs{width:24px;height:24px;flex-basis:24px;font-size:9px}
.bt-st{margin-left:auto;font:700 10px/1 var(--display);letter-spacing:.1em;text-transform:uppercase;padding:5px 8px;border-radius:var(--pill);white-space:nowrap;display:inline-flex;align-items:center;gap:5px;flex:0 0 auto}
.bt-st .dot{width:6px;height:6px;border-radius:50%;background:currentColor}
.bt-st.run{color:var(--up);background:var(--up-bg)}.bt-st.out{color:var(--bt-warn);background:var(--gold-bg)}.bt-st.pau,.bt-st.closed{color:var(--ink2);background:rgba(126,135,166,.14)}.bt-st.pend{color:var(--acc-t);background:var(--acc-bg)}
@media (prefers-reduced-motion:no-preference){.bt-st.run .dot{animation:btpulse 2.2s ease-in-out infinite}@keyframes btpulse{0%,100%{opacity:1}50%{opacity:.4}}}
.bt-filters{display:flex;gap:6px;padding:10px 14px 8px;align-items:center}
.bt-filters button{min-height:32px;padding:0 12px;border-radius:var(--pill);border:1px solid var(--line);font:600 11px var(--display);letter-spacing:.08em;text-transform:uppercase;color:var(--ink3)}
.bt-filters button[aria-pressed="true"]{color:var(--ink0);border-color:var(--acc-line);background:var(--acc-bg)}
.bt-filters .sp{flex:1}
.bt-cta{margin:12px 14px 14px}
.bt-cta .btn{width:100%;font-family:var(--display);letter-spacing:.08em;text-transform:uppercase;font-size:13px;min-height:46px}

/* ── empty states ──────────────────────────────────────────────────────── */
.bt-empty{margin:10px 14px;padding:26px 18px;border:1px dashed var(--line-hot);border-radius:var(--r3);text-align:center;background:var(--s1)}
.bt-empty .ic{width:44px;height:44px;margin:0 auto 10px;border-radius:12px;display:grid;place-items:center;background:var(--acc-bg);color:var(--acc-t)}
.bt-empty .ic svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.bt-empty h3{font:600 15px var(--display);margin-bottom:5px}
.bt-empty p{font-size:12.5px;color:var(--ink2);line-height:1.45;max-width:34ch;margin:0 auto 12px}
.bt-empty .btn{min-height:42px}

/* ── gallery ───────────────────────────────────────────────────────────── */
.bt-gal{display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:0 14px}
.bt-g{position:relative;text-align:left;border:1px solid var(--line);border-radius:var(--r2);padding:11px 12px;background:var(--s1);color:var(--ink0);min-height:104px;display:flex;flex-direction:column;transition:border-color var(--t1),background var(--t1)}
.bt-g:hover,.bt-g[aria-current="true"]{border-color:var(--acc-line);background:rgba(139,124,246,.07)}
.bt-g .t{font:600 13px/1.2 var(--display);display:flex;align-items:center;gap:7px}
.bt-g .t i{width:8px;height:8px;border-radius:2px;display:inline-block;flex:0 0 8px}
.bt-g .p{font-size:11px;color:var(--ink2);margin-top:4px;line-height:1.35;flex:1}
.bt-g .b{font:700 9.5px var(--display);letter-spacing:.08em;text-transform:uppercase;color:var(--acc-t);margin-top:7px}
.bt-g.soon{opacity:.55;cursor:default}
.bt-g.soon .b{color:var(--ink3)}
.bt-g .soon-tag{margin-left:auto;font:700 8.5px var(--display);letter-spacing:.1em;text-transform:uppercase;color:var(--ink3);border:1px solid var(--line);border-radius:var(--pill);padding:3px 6px;flex:0 0 auto}
.bt-glist{padding:8px}
.bt-glist .bt-g{min-height:0;flex-direction:row;gap:10px;align-items:flex-start;border-color:transparent;background:transparent;padding:10px}
.bt-glist .bt-g .t i{margin-top:0}
.bt-glist .bt-g:hover{border-color:var(--line-hot);background:var(--s2)}
.bt-glist .bt-g .t{display:block}
.bt-glist .bt-g>i{width:10px;height:10px;border-radius:3px;margin-top:5px;flex:0 0 10px}
.bt-glist .bt-g .p{font-size:11.5px;margin-top:2px}
.bt-glist .bt-g .b{margin-top:4px}

/* ── leaderboard ───────────────────────────────────────────────────────── */
.bt-lb{margin:0 14px;border:1px solid var(--line);border-radius:var(--r3);background:var(--s1);overflow:hidden}
.bt-lb .rowl{display:flex;align-items:center;gap:10px;padding:9px 12px;border-top:1px solid var(--line);min-height:52px}
.bt-lb .rowl:first-child{border-top:0}
.bt-lb .rk{font:500 12px var(--mono);color:var(--ink4);width:16px;flex:0 0 16px}
.bt-lb .who{min-width:0;flex:1}
.bt-lb .who b{font:600 13px/1.2 var(--display);display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.bt-lb .who span{font:500 11px var(--mono);color:var(--ink2);display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.bt-lb .apr{text-align:right;font:600 13px var(--mono);flex:0 0 auto}
.bt-lb .apr span{display:block;font:600 9.5px var(--display);letter-spacing:.08em;color:var(--ink4);margin-top:2px}
.bt-copy{font:700 10px var(--display);letter-spacing:.1em;text-transform:uppercase;border:1px solid rgba(232,79,224,.55);color:var(--lyra);border-radius:var(--r1);padding:0 9px;min-height:32px;min-width:44px;flex:0 0 auto;transition:background var(--t1)}
.bt-copy:hover{background:var(--acc2-bg)}
.bt-lbwin{display:flex;gap:4px;margin-left:auto}
.bt-lbwin button{min-height:34px;min-width:44px;padding:0 9px;border-radius:var(--pill);font:700 10px var(--display);letter-spacing:.08em;color:var(--ink3);border:1px solid transparent}
.bt-lbwin button[aria-pressed="true"]{color:var(--ink0);border-color:var(--line-hot);background:var(--s3)}
.bt-note{padding:10px 14px 14px;font:500 11px/1.45 var(--mono);color:var(--ink3)}
.bt-sec{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:16px 14px 8px}
.bt-sec .k{flex:1}

/* ── desktop table ─────────────────────────────────────────────────────── */
.bt-trow{display:grid;grid-template-columns:1.6fr .8fr .7fr .9fr .9fr .9fr .7fr 90px .9fr;gap:10px;align-items:center;padding:10px 14px;border-top:1px solid var(--line);font:500 12.5px var(--mono);color:var(--ink0);text-align:left;width:100%;min-height:52px}
.bt-trow.hd{font:600 10px var(--display);letter-spacing:.1em;text-transform:uppercase;color:var(--ink3);border-top:0;min-height:38px;padding:8px 14px}
.bt-trow.closed{opacity:.55}
button.bt-trow:hover{background:var(--s2)}
.bt-trow .nm{display:flex;align-items:center;gap:8px;min-width:0;font:600 13px var(--display)}
.bt-trow .nm>div{min-width:0}
.bt-trow .nm span{display:block;font:400 11px var(--mono);color:var(--ink2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.bt-trow .nm b{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block;font-weight:600}
.bt-trow svg{width:90px;height:26px}

/* ── hub layout ────────────────────────────────────────────────────────── */
.bt-hub{display:block}
.bt-hub>section[hidden]{display:none}
.bt-hub .bt-panel{border:0;border-radius:0;background:transparent}
.bt-hub .bt-panel>.bt-ph{display:none}
.bt-hub .bt-kpi,.bt-hub .bt-tbl{display:none}
@media(min-width:961px){
  .bt-tabs{display:none}
  .bt-hub{display:grid;grid-template-columns:300px minmax(0,1fr) 380px;gap:14px;padding:14px 20px;align-items:start}
  .bt-hub>section[hidden]{display:block}
  .bt-hub .bt-panel{border:1px solid var(--line);border-radius:var(--r3);background:var(--s1)}
  .bt-hub .bt-panel>.bt-ph{display:flex}
  .bt-hub .bt-kpi,.bt-hub .bt-tbl{display:grid}
  .bt-hub .bt-tbl{display:block}
  .bt-hub .bt-pnl,.bt-hub .bt-list,.bt-hub .bt-cta.mob,.bt-hub .bt-gal,.bt-hub .bt-sec.mob{display:none}
  .bt-hub .bt-lb{margin:0;border:0;border-radius:0}
  .bt-hub .bt-filters{padding:8px 14px}
  .bt-hub .bt-empty{margin:14px}
}
@media(max-width:960px){.bt-glist{display:none}}
@media(max-width:1200px) and (min-width:961px){.bt-hub{grid-template-columns:260px minmax(0,1fr) 330px}.bt-trow{grid-template-columns:1.6fr .8fr .7fr .9fr .9fr .9fr .7fr .9fr}.bt-trow svg{display:none}}

/* ── create ────────────────────────────────────────────────────────────── */
.bt-top{display:flex;align-items:center;gap:10px;padding:10px 12px;border-bottom:1px solid var(--line);background:var(--s1);position:sticky;top:0;z-index:5;min-height:56px}
.bt-top .bk{width:44px;height:44px;display:grid;place-items:center;border-radius:var(--r2);color:var(--ink2);margin-left:-6px}
.bt-top .bk:hover{background:var(--s2);color:var(--ink0)}
.bt-top .tt{flex:1;min-width:0}
.bt-top .tt h1{font:600 15px/1.2 var(--display);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.bt-top .tt p{font:500 11px var(--mono);color:var(--ink2);margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.bt-top .acts{display:flex;gap:6px;flex:0 0 auto}
.bt-new{display:block}
.bt-form{padding:12px 14px 4px;display:flex;flex-direction:column;gap:12px;min-width:0}
.bt-f .lab{display:flex;justify-content:space-between;align-items:baseline;gap:8px;margin-bottom:6px}
.bt-f .lab .r{font:500 11.5px var(--mono);color:var(--ink2);text-transform:none;letter-spacing:0}
.bt-in{display:flex;align-items:center;gap:8px;height:50px;padding:0 14px;border-radius:var(--r2);background:var(--s0);border:1px solid var(--line-hot);transition:border-color var(--t1)}
.bt-in:focus-within{border-color:var(--acc-line)}
.bt-in input{flex:1;min-width:0;width:100%;background:none;border:0;outline:0;font:600 22px var(--mono);color:var(--ink0)}
.bt-in input::placeholder{color:var(--ink4)}
.bt-in .u{font:600 12px var(--display);color:var(--ink2);letter-spacing:.06em;white-space:nowrap}
.bt-in .mx{min-height:36px;padding:0 9px;border:1px solid var(--line-hot);border-radius:var(--r1);font:700 11px var(--display);background:var(--s3);color:var(--ink0)}
.bt-in.s{height:44px}.bt-in.s input{font-size:16px}
.bt-in .pre{font:600 10px var(--display);letter-spacing:.1em;color:var(--ink3);text-transform:uppercase}
.bt-in.bad{border-color:rgba(248,113,113,.6)}
.bt-two{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.bt-hint{font:500 11.5px/1.45 var(--mono);color:var(--ink2);margin-top:6px}
.bt-hint b{color:var(--ink0);font-weight:600}
.bt-chips{display:flex;gap:8px}
.bt-chips button{flex:1;min-height:40px;border:1px solid var(--line-hot);border-radius:var(--r2);font:500 13px var(--mono);background:var(--s0);color:var(--ink1);transition:border-color var(--t1),background var(--t1)}
.bt-chips button[aria-pressed="true"]{border-color:var(--acc-line);background:var(--acc-bg);color:var(--ink0)}
.bt-seg{display:flex;border:1px solid var(--line-hot);border-radius:var(--r2);overflow:hidden;background:var(--s0)}
.bt-seg button{flex:1;min-height:44px;font:700 11px var(--display);letter-spacing:.1em;text-transform:uppercase;color:var(--ink3);transition:background var(--t1),color var(--t1)}
.bt-seg button[aria-pressed="true"]{background:var(--s3);color:var(--ink0)}
.bt-seg button.auto[aria-pressed="true"]{color:var(--acc-t)}
.bt-tokbtn{display:flex;align-items:center;gap:10px;width:100%;min-height:52px;padding:0 12px;border:1px solid var(--line-hot);border-radius:var(--r2);background:var(--s0);color:var(--ink0);text-align:left}
.bt-tokbtn .nm{flex:1;min-width:0}
.bt-tokbtn .nm b{font:600 14px var(--display);display:block}
.bt-tokbtn .nm span{font:500 11px var(--mono);color:var(--ink2)}
.bt-tokbtn .px{font:600 13px var(--mono);white-space:nowrap}
.bt-tokbtn svg.i{color:var(--ink3)}
.bt-chk{display:flex;align-items:center;gap:10px;min-height:44px;font-size:13px;color:var(--ink1);cursor:pointer}
.bt-chk input{width:20px;height:20px;accent-color:var(--lyra)}
.bt-chk span small{display:block;font:500 11px var(--mono);color:var(--ink3)}

.bt-prev{margin:4px 14px 10px;border:1px solid var(--line-hot);border-radius:var(--r3);background:var(--s0);padding:12px 14px;min-width:0}
.bt-prev .t{font:500 12.5px var(--mono);color:var(--ink2);display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.bt-prev .t b{color:var(--ink0);font-weight:600}
.bt-prev .t .sp{flex:1}
.bt-chart{position:relative;height:300px;margin-top:8px;border:1px solid var(--line);border-radius:var(--r2);background:var(--s1);overflow:hidden}
.bt-chart .host{position:absolute;inset:0}
.bt-chart .msg[hidden]{display:none}
.bt-chart .msg{position:absolute;inset:0;display:grid;place-items:center;font:500 12px var(--mono);color:var(--ink3);text-align:center;padding:12px;pointer-events:none}
.bt-chart .cap{position:absolute;left:8px;font:500 10px var(--mono);pointer-events:none;padding:2px 5px;border-radius:4px;background:rgba(7,11,24,.7)}
.bt-chart .cap.top{top:6px}.bt-chart .cap.bot{bottom:30px}
.bt-legend{display:flex;gap:14px;flex-wrap:wrap;font:500 11px var(--mono);color:var(--ink2);padding:8px 2px 0}
.bt-legend i{display:inline-block;width:10px;height:2px;vertical-align:middle;margin-right:6px;border-radius:1px}
.bt-est{display:grid;grid-template-columns:1fr 1fr 1fr;gap:8px;margin-top:10px}
.bt-est>div{border:1px solid var(--line);border-radius:var(--r1);padding:8px 9px;background:var(--s1);min-width:0}
.bt-est .v{font:600 15px var(--mono);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.bt-est .k{margin-top:3px;font-size:9.5px;color:var(--ink4)}
.bt-est.six{grid-template-columns:repeat(3,1fr)}
.bt-fine{font:500 10.5px/1.45 var(--mono);color:var(--ink3);margin-top:8px}
.bt-warnbox{margin-top:10px;border:1px solid rgba(251,191,36,.35);background:rgba(251,191,36,.06);border-radius:var(--r2);padding:9px 12px;font-size:12px;line-height:1.45;color:#EBD9B0}
.bt-warnbox b{color:var(--bt-warn)}
.bt-warnbox button{color:var(--acc-t);font:600 12px var(--sans);margin-left:4px;min-height:28px}
.bt-reject{margin-top:10px;border:1px solid rgba(248,113,113,.45);background:var(--down-bg);border-radius:var(--r2);padding:10px 12px;font-size:12.5px;line-height:1.45;color:#FFC9C9}
.bt-reject b{color:var(--down);font-family:var(--display);letter-spacing:.06em;text-transform:uppercase;font-size:11px;display:block;margin-bottom:2px}
.bt-go{margin:6px 14px 8px}
.bt-go .btn{width:100%;min-height:50px;font:700 13px var(--display);letter-spacing:.08em;text-transform:uppercase}
.bt-go .btn.primary:disabled{background:var(--s3);color:var(--ink3);box-shadow:none;opacity:1}
.bt-foot{margin:0 14px 14px;font:500 11px/1.4 var(--mono);color:var(--ink3);text-align:center}
.bt-risk{margin:0 14px 12px;padding:10px 12px;border-left:2px solid var(--acc);background:var(--s1);border-radius:0 var(--r2) var(--r2) 0;font-size:12px;line-height:1.45;color:var(--ink1)}
.bt-risk .k{display:block;margin-bottom:4px;color:var(--acc-t)}
.bt-skel{height:14px;border-radius:6px;background:var(--s3);animation:btsk 1.2s ease-in-out infinite}
@keyframes btsk{0%,100%{opacity:.5}50%{opacity:1}}
@media(min-width:961px){
  .bt-new{display:grid;grid-template-columns:440px minmax(0,1fr);gap:0 20px;padding:0 20px 20px;align-items:start}
  .bt-new .bt-top{grid-column:1/-1;margin:0 -20px 6px;padding:10px 20px}
  .bt-new .bt-form{padding:10px 0 0}
  .bt-new .bt-side{position:sticky;top:66px;padding-top:10px}
  .bt-new .bt-prev{margin:0 0 10px}
  .bt-new .bt-chart{height:300px}
  .bt-new .bt-go{margin:6px 0 8px;grid-column:1}
  .bt-new .bt-foot{margin:0 0 14px;grid-column:1}
  .bt-new .bt-risk{margin:0 0 12px}
}

/* ── token picker sheet ─────────────────────────────────────────────────── */
.bt-pick .srch{display:flex;align-items:center;gap:8px;height:44px;padding:0 12px;border-radius:var(--r2);background:var(--s0);border:1px solid var(--line-hot)}
.bt-pick .srch input{flex:1;min-width:0;background:none;border:0;outline:0;font-size:16px;color:var(--ink0)}
.bt-pick .srch svg.i{color:var(--ink3)}
.bt-pick .rows{max-height:52vh;overflow:auto;margin:0 -16px;padding:0 8px}
.bt-pick .rw{display:flex;align-items:center;gap:10px;width:100%;min-height:52px;padding:6px 8px;border-radius:var(--r2);text-align:left;color:var(--ink0)}
.bt-pick .rw:hover{background:var(--s3)}
.bt-pick .rw .nm{flex:1;min-width:0}
.bt-pick .rw .nm b{font:600 13px var(--display);display:block}
.bt-pick .rw .nm span{font:500 11px var(--mono);color:var(--ink2);display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.bt-pick .rw .px{text-align:right;font:500 12px var(--mono)}
.bt-pick .rw .px span{display:block;font-size:10.5px;color:var(--ink3)}

/* ── detail ────────────────────────────────────────────────────────────── */
.bt-det{display:block}
.bt-det .bt-top .acts .btn{min-height:38px;padding:0 12px;font:700 11px var(--display);letter-spacing:.08em;text-transform:uppercase;border-radius:var(--r1)}
.bt-det .bt-top .btn.stop{background:var(--down-bg);color:var(--down);border:1px solid rgba(248,113,113,.45)}
.bt-det .bt-kpi{grid-template-columns:1fr 1fr}
.bt-det .bt-kpi.five>div:last-child{grid-column:1/-1}
@media(max-width:960px){.bt-det .bt-top .bt-st .rt{display:none}.bt-det .bt-top .tt p{display:none}.bt-det .bt-ph .sub{display:none}}
.bt-charts{display:grid;grid-template-columns:1fr;gap:12px;padding:0 14px 14px}
.bt-charts .bt-chart{margin-top:0;height:210px}
.bt-fills{margin:0 14px;border:1px solid var(--line);border-radius:var(--r3);overflow:hidden;background:var(--s1)}
.bt-fills .fr{display:grid;grid-template-columns:46px 44px 1fr 1fr 1fr 40px;gap:6px;padding:9px 12px;border-top:1px solid var(--line);font:500 11.5px var(--mono);align-items:center;min-height:40px}
.bt-fills .fr:first-child{border-top:0;font:600 10px var(--display);letter-spacing:.1em;text-transform:uppercase;color:var(--ink3)}
.bt-fills .fr .r{text-align:right}
.bt-fills .fr .sd{font-weight:700}
.bt-fills .fr a{color:var(--ink3)}
.bt-fills .fr .c2,.bt-fills .fr .c3{display:none}
.bt-fills .more{width:100%;min-height:40px;font:600 11px var(--display);letter-spacing:.1em;text-transform:uppercase;color:var(--acc-t);border-top:1px solid var(--line)}
.bt-side-stop{padding:14px}
.bt-kv{display:flex;justify-content:space-between;gap:10px;padding:8px 0;border-top:1px solid var(--line);font-size:12.5px}
.bt-kv:first-child{border-top:0}
.bt-kv .kk{color:var(--ink2)}.bt-kv .vv{font:500 12.5px var(--mono);text-align:right}
.bt-opt{display:block;width:100%;text-align:left;border:1px solid var(--line-hot);border-radius:var(--r2);padding:11px 13px;background:transparent;color:var(--ink0);margin-top:8px;transition:border-color var(--t1),background var(--t1)}
.bt-opt[aria-pressed="true"]{border-color:var(--lyra);background:var(--acc2-bg)}
.bt-opt .t{font:700 13px var(--display);display:flex;align-items:center;gap:8px}
.bt-opt .t::before{content:'';width:12px;height:12px;border-radius:50%;border:2px solid var(--ink3);box-sizing:border-box}
.bt-opt[aria-pressed="true"] .t::before{border-color:var(--lyra);background:var(--lyra);box-shadow:inset 0 0 0 2px var(--s1)}
.bt-opt p{font-size:11.5px;color:var(--ink2);margin-top:3px;line-height:1.4}
.bt-opt p b{color:var(--up)}
.bt-params{padding:4px 14px 12px;display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:8px}
.bt-params>div{border:1px solid var(--line);border-radius:var(--r1);padding:7px 9px;background:var(--s2);min-width:0}
.bt-params .v{font:600 13px var(--mono);margin-top:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.bt-det .bt-top .btn.add{background:var(--acc-bg);color:var(--ink0);border:1px solid var(--acc-line)}
.bt-det .bt-top .btn.add.legacy,.bt-mob-stop .btn.add.legacy{opacity:.55;cursor:not-allowed}
.bt-mob-stop .btn.add{background:var(--acc-bg);color:var(--ink0);border:1px solid var(--acc-line)}
.bt-topup .bt-prev{margin-top:10px;padding:10px 12px;border-radius:var(--r2);background:var(--s0);border:1px dashed var(--line-hot);font:500 12px/1.5 var(--mono);color:var(--ink1);word-break:break-word}
.bt-topup .bt-prev b{color:var(--ink0);font-weight:600}
.bt-topup .bt-chips button{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;line-height:1.1}
.bt-topup .bt-chips button small{font:500 10px var(--mono);color:var(--ink3);letter-spacing:0}
.bt-topup .bt-in .pre{font:600 12px var(--display);color:var(--ink2);letter-spacing:.06em;text-transform:uppercase}
.bt-fills .fr.topup .sd.add{color:var(--neron)}
.bt-mob-stop{margin:12px 14px}
.bt-mob-stop .btn{width:100%;min-height:46px;font:700 13px var(--display);letter-spacing:.08em;text-transform:uppercase}
@media(min-width:961px){
  .bt-det{display:grid;grid-template-columns:minmax(0,1fr) 380px;gap:14px;padding:0 20px 20px;align-items:start}
  .bt-det .bt-top{grid-column:1/-1;margin:0 -20px 0;padding:10px 20px}
  .bt-det .bt-main{border:1px solid var(--line);border-radius:var(--r3);background:var(--s1);overflow:hidden}
  .bt-det .bt-kpi{grid-template-columns:repeat(5,1fr)}
  .bt-det .bt-kpi.five>div:last-child{grid-column:auto}
  .bt-charts{grid-template-columns:1fr 1fr}
  .bt-charts .bt-chart{height:230px}
  .bt-fills{margin:0;border:0;border-radius:0;border-top:1px solid var(--line)}
  .bt-fills .fr{grid-template-columns:56px 56px 1fr 1fr 1fr 1fr 1fr 70px 50px}
  .bt-fills .fr .c2,.bt-fills .fr .c3{display:block}
  .bt-det .bt-aside{position:sticky;top:66px;display:flex;flex-direction:column;gap:14px}
  .bt-mob-stop{display:none}
  .bt-det .bt-risk{margin:0}
}
@media(max-width:960px){.bt-det .bt-aside .bt-panel.stoppanel{display:none}.bt-det .bt-risk{margin:12px 14px}}

/* ── nav badge (index.html link gets one) ───────────────────────────────── */
.nbadge{display:none;position:absolute;top:7px;left:calc(50% + 6px);min-width:16px;height:16px;padding:0 4px;border-radius:var(--pill);background:var(--lyra);color:#fff;font:700 9px/16px var(--mono);text-align:center;letter-spacing:0}
.nbadge.on{display:block}
#topbots{display:none;align-items:center;gap:6px;position:relative;min-height:34px;padding:0 12px;border-radius:var(--r2);border:1px solid var(--line);font:600 11px var(--display);letter-spacing:.12em;color:var(--ink2);white-space:nowrap;background:var(--s0);transition:color var(--t1),border-color var(--t1)}
#topbots svg.i{width:16px;height:16px}
#topbots:hover,#topbots[aria-current="page"]{color:var(--ink0);border-color:var(--acc-line)}
#topbots .nbadge{position:static;margin-left:2px}
@media(min-width:861px){#topbots{display:inline-flex}}
.hd-a.bot{font-size:17px}

/* patch-chart: bigger bot charts (Sorbas: too small on desktop) */
@media(min-width:1100px){.bt-chart{height:520px}.bt-charts{grid-template-columns:1fr 1.7fr}}
@media(min-width:1500px){.bt-chart{height:620px}}

/* patch-sl: STOP LOSS block (create) + adjust control (detail) */
.bt-slblk .bt-chips button{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;line-height:1.1}
.bt-slblk .bt-chips button small,.slc button small{font:500 10px var(--mono);color:var(--ink3);letter-spacing:0}
.bt-slblk .bt-in.slin{margin-top:8px}
.bt-slblk .bt-hint{margin-top:6px}
.bt-in .u.down{color:var(--down)}
.slc{display:flex;gap:6px}.slc button{flex:1;min-height:40px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;border:1px solid var(--line-hot);border-radius:var(--r2);font:500 12px var(--mono);background:var(--s0);color:var(--ink1)}
.slc button[aria-pressed="true"]{border-color:var(--acc-line);background:var(--acc-bg);color:var(--ink0)}
.slc button:disabled{opacity:.45}
.slpanel .tag.r{color:var(--down);border-color:var(--down)}
.bt-mob-stop{display:flex;gap:8px}.bt-mob-stop .btn{flex:1}

/* patch-zoom: hint under bot charts */
.bt-chart::after{content:"scroll · pinch · drag · dbl-click resets";position:absolute;right:64px;bottom:30px;font:500 9px var(--mono);color:var(--ink3);opacity:.55;pointer-events:none}
@media(max-width:600px){.bt-chart::after{content:"pinch · drag · double-tap resets"}}

/* patch-big: expandable grid chart on the bot detail */
.bt-expand{position:absolute;top:6px;right:64px;z-index:3;width:28px;height:28px;border-radius:6px;border:1px solid var(--line);background:rgba(7,11,24,.8);color:var(--ink2);font-size:15px;line-height:1;cursor:pointer;touch-action:manipulation}
.bt-expand:hover{color:var(--ink);border-color:var(--acc-t,#8B7CF6)}
.bt-charts.big{grid-template-columns:1fr !important}
.bt-charts.big>div:last-child{order:-1}
.bt-charts.big>div:last-child .bt-chart{height:72vh;min-height:420px}

/* copy-hide: the creator card on the copy page — stats only, never parameters */
.bt-copycard{border:1px solid var(--line);border-radius:var(--r2,9px);background:var(--s1);padding:10px 11px;margin-top:10px}
.bt-copycard .hd{display:flex;align-items:center;gap:8px;flex-wrap:wrap;min-width:0}
.bt-copycard .hd .tag{font:700 10px/1 var(--mono);letter-spacing:.08em;color:var(--lyra);border:1px solid var(--lyra);border-radius:4px;padding:4px 6px}
.bt-copycard .hd b{font-size:13.5px;color:var(--ink0);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.bt-copycard .hd .by{font:500 11.5px var(--mono);color:var(--ink2);margin-left:auto}
.bt-copycard .st{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:10px}
.bt-copycard .st>div{border:1px solid var(--line);border-radius:var(--r1);padding:7px 9px;background:var(--s0,transparent);min-width:0}
.bt-copycard .st .v{font:600 14px var(--mono);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.bt-copycard .st .k{margin-top:3px;font-size:9.5px;color:var(--ink4)}
.bt-copycard .note{display:flex;gap:8px;align-items:flex-start;margin-top:10px;font:500 11.5px/1.45 var(--mono);color:var(--ink2)}
.bt-copycard .note svg{flex:0 0 14px;width:14px;height:14px;margin-top:1px;color:var(--lyra)}
.bt-copycard .note b{color:var(--ink0);font-weight:600}

/* patch-createbtn: the gallery winks when CREATE BOT walks you to it */
.bt-pulse{animation:btpulse 1.5s ease 1}
@keyframes btpulse{0%,100%{box-shadow:none}25%,60%{box-shadow:0 0 0 2px var(--acc-t,#8B7CF6),0 0 24px rgba(139,124,246,.35)}}
@media (prefers-reduced-motion: reduce){.bt-pulse{animation:none;outline:2px solid var(--acc-t,#8B7CF6)}}
