/* Smart AI Desk (tradelocker.html). Uses the site colour tokens so light and dark both work. */
.tlp{padding:18px 0 0}
.tlp-shell{position:relative;border:1px solid var(--line);border-radius:22px;padding:12px 0 10px;overflow:hidden;
  background:radial-gradient(900px 260px at 8% -20%,color-mix(in srgb,var(--gold) 16%,transparent),transparent 60%),radial-gradient(700px 240px at 100% 120%,color-mix(in srgb,var(--lime) 12%,transparent),transparent 60%),var(--ink2)}
.tlp-nav{display:flex;align-items:center;gap:10px;padding:0 14px 10px}
.tlp-chips{display:flex;gap:6px;overflow-x:auto;scrollbar-width:none;flex:1;min-width:0}
.tlp-chips::-webkit-scrollbar{display:none}
.tlp-chips button{flex:none;border:1px solid var(--line);background:transparent;color:var(--muted);border-radius:999px;padding:6px 13px;font:600 12.5px var(--body);cursor:pointer;white-space:nowrap;transition:.2s}
.tlp-chips button:hover{color:var(--chalk)}
.tlp-chips button.on{background:var(--gold);border-color:var(--gold);color:#1a1200}
.tlp-arrows{display:flex;gap:6px;flex:none}
.tlp-arrows button{width:34px;height:34px;border-radius:50%;border:1px solid var(--line);background:var(--panel);color:var(--chalk);display:grid;place-items:center;cursor:pointer;transition:.2s}
.tlp-arrows button.r svg{transform:rotate(180deg)}
.tlp-arrows button:hover:not(:disabled){background:var(--gold);border-color:var(--gold);color:#1a1200}
.tlp-arrows button:disabled{opacity:.3;cursor:default}

.tlp-track{display:flex;gap:14px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;overscroll-behavior-x:contain;padding:4px 14px 6px;scroll-padding:0 14px;cursor:grab;
  -webkit-mask-image:linear-gradient(90deg,#000 calc(100% - 38px),transparent);mask-image:linear-gradient(90deg,#000 calc(100% - 38px),transparent);position:relative}
.tlp-track::-webkit-scrollbar{display:none}
.tlp-track.drag{scroll-snap-type:none;cursor:grabbing;user-select:none}
.tlp-track:focus-visible{outline-offset:-3px}
.tlp-s{flex:0 0 min(88%,400px);scroll-snap-align:start;min-height:318px;border:1px solid var(--line);border-radius:18px;padding:16px;background:linear-gradient(165deg,var(--panel),var(--panel2));position:relative;display:flex;flex-direction:column;gap:10px;
  opacity:.72;transform:scale(.985);transition:opacity .35s,transform .35s,border-color .35s,box-shadow .35s}
.tlp-s.now{opacity:1;transform:none;border-color:color-mix(in srgb,var(--gold) 55%,var(--line));box-shadow:0 10px 34px color-mix(in srgb,var(--gold) 14%,transparent)}
.tlp-s:not(.now){cursor:pointer}
.tlp-h{display:flex;justify-content:space-between;align-items:center;gap:8px}
.tlp-k{display:inline-flex;align-items:center;gap:7px;font:700 13.5px var(--body);color:var(--gold2);letter-spacing:.01em}
.tlp-tag{font:600 11.5px var(--mono);color:var(--muted);border:1px solid var(--line);border-radius:999px;padding:3px 10px;max-width:60%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.tlp-tag.on{color:var(--lime);border-color:var(--lime)}
.tlp-fine{font-size:11.5px;color:var(--muted);margin:auto 0 0;line-height:1.4}
.tlp-row{display:flex;gap:8px;flex-wrap:wrap}
.tlp-btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;border:1px solid var(--line);background:transparent;color:var(--chalk);border-radius:999px;padding:9px 16px;font:700 13.5px var(--body);cursor:pointer;transition:.2s;text-decoration:none}
.tlp-btn.gold{background:var(--gold);border-color:var(--gold);color:#1a1200}
.tlp-btn.tg{background:#229ed9;border-color:#229ed9;color:#fff}
.tlp-btn:hover:not(:disabled){transform:translateY(-1px)}
.tlp-btn:disabled{opacity:.42;cursor:not-allowed}
.tlp-pill{font:800 11px var(--mono);font-style:normal;border-radius:6px;padding:2px 7px;color:#fff;background:var(--muted)}
.tlp-pill.buy{background:#2f9e44}.tlp-pill.sell{background:var(--coral)}.tlp-pill.wait{background:var(--muted)}
.buy{color:var(--lime)}.sell{color:var(--coral)}

/* cover */
.tlp-cover{flex-basis:min(88%,380px);overflow:hidden;justify-content:flex-end;border-color:color-mix(in srgb,var(--gold) 40%,var(--line));background:linear-gradient(160deg,var(--ink),var(--panel2))}
.tlp-orb{position:absolute;inset:0;width:100%;height:100%;display:block}
.tlp-cv{position:relative;display:flex;flex-direction:column;gap:12px;pointer-events:none}
.tlp-eyebrow{font:800 11px var(--mono);letter-spacing:.12em;color:var(--gold2);display:inline-flex;align-items:center;gap:8px}
.tlp-dot{width:8px;height:8px;border-radius:50%;background:var(--lime);box-shadow:0 0 0 0 var(--lime);animation:tlp-ping 1.8s infinite}
.tlp-cv h2{font-size:clamp(26px,5vw,32px);line-height:1.08;margin:0}
.tlp-live{margin:0;font-size:13.5px;color:var(--muted);display:flex;gap:8px;align-items:center;flex-wrap:wrap;min-height:24px}
.tlp-live b{color:var(--chalk)}
.tlp-hint{display:inline-flex;align-items:center;gap:10px;font:700 13px var(--body);color:var(--gold2)}
.tlp-chevs{display:inline-flex}
.tlp-chevs i{width:8px;height:8px;border-left:2.5px solid currentColor;border-bottom:2.5px solid currentColor;transform:rotate(45deg);margin-left:-3px;opacity:.25;animation:tlp-ch 1.4s infinite}
.tlp-chevs i:nth-child(2){animation-delay:.18s}.tlp-chevs i:nth-child(3){animation-delay:.36s}
@keyframes tlp-ch{0%,100%{opacity:.2;transform:translateX(0) rotate(45deg)}50%{opacity:1;transform:translateX(-5px) rotate(45deg)}}
@keyframes tlp-ping{70%{box-shadow:0 0 0 9px transparent}100%{box-shadow:0 0 0 0 transparent}}

/* radar */
.tlp-rd{display:grid;grid-template-columns:150px 1fr;gap:12px;align-items:center}
.tlp-gauge{text-align:center}
.tlp-gauge svg{width:100%;display:block}
.tlp-gauge path{fill:none;stroke-width:13;stroke-linecap:round}
.g-sell{stroke:var(--coral)}.g-wait{stroke:var(--gold);opacity:.8}.g-buy{stroke:var(--lime)}
.tlp-needle{transform-origin:100px 104px;transition:transform .9s cubic-bezier(.3,1.45,.5,1);animation:tlp-sway 5s ease-in-out infinite}
.tlp-needle line{stroke:var(--chalk);stroke-width:4;stroke-linecap:round}
.tlp-needle circle{fill:var(--chalk)}
@keyframes tlp-sway{50%{translate:2px 0}}
.tlp-dir{display:block;font:800 22px var(--mono);margin-top:-4px;letter-spacing:.04em}
.tlp-dir.buy{color:var(--lime)}.tlp-dir.sell{color:var(--coral)}.tlp-dir.wait{color:var(--muted)}
.tlp-sub{display:block;font-size:11.5px;color:var(--muted);line-height:1.35;margin-top:2px}
.tlp-voters{list-style:none;margin:0;padding:0;display:grid;gap:7px}
.tlp-voters li{display:grid;grid-template-columns:86px 1fr;gap:8px;align-items:center;font:600 12.5px var(--body)}
.tlp-voters small{display:block;font:500 10.5px var(--body);color:var(--muted)}
.tlp-voters .bar{position:relative;height:8px;border-radius:99px;background:var(--panel2);border:1px solid var(--line);overflow:hidden;display:block}
.tlp-voters .bar:after{content:"";position:absolute;left:50%;top:0;bottom:0;width:1px;background:var(--muted);opacity:.5}
.tlp-voters .bar i{position:absolute;top:0;bottom:0;border-radius:99px;transition:width .7s}
.tlp-voters .bar i.u{background:var(--lime)}.tlp-voters .bar i.d{background:var(--coral)}
.tlp-lv{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
.tlp-lv div{background:var(--panel2);border:1px solid var(--line);border-radius:12px;padding:8px 10px;min-width:0}
.tlp-lv small{display:block;font-size:10.5px;color:var(--muted)}
.tlp-lv b{font:700 14px var(--mono)}
.tlp-lv .tlp-wait{grid-column:1/-1;background:transparent;border-style:dashed;font-size:12.5px;color:var(--muted)}
.tlp-wait{color:var(--muted);font-size:13px}

/* bots */
.tlp-bot{display:grid;grid-template-columns:116px 1fr;gap:14px;animation:tlp-in .5s}
@keyframes tlp-in{from{opacity:0;transform:translateX(14px)}to{opacity:1;transform:none}}
.tlp-art{display:block;border-radius:14px;overflow:hidden;border:1px solid var(--line);aspect-ratio:3/4;background:var(--panel2);position:relative}
.tlp-art img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .6s}
.tlp-art:hover img{transform:scale(1.06)}
.tlp-bd{min-width:0;display:flex;flex-direction:column;gap:6px}
.tlp-bd h3{font-size:19px;margin:0;overflow:hidden;text-overflow:ellipsis}
.tlp-style{margin:0;color:var(--muted);font-size:13px}
.tlp-meta{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.tlp-meta small{color:var(--muted);font-size:12px}
.tlp-meta em{font:600 11px var(--body);font-style:normal;border:1px solid var(--line);border-radius:999px;padding:2px 8px;color:var(--muted);text-transform:capitalize}
.tlp-risk{display:inline-flex;gap:3px}
.tlp-risk i{width:14px;height:6px;border-radius:3px;background:var(--line)}
.tlp-risk.r1 i:nth-child(-n+1){background:var(--lime)}.tlp-risk.r2 i:nth-child(-n+2){background:var(--gold)}.tlp-risk.r3 i{background:var(--coral)}
.tlp-price{margin:0;font:700 13.5px var(--mono);color:var(--gold2)}
.tlp-bd .tlp-row{margin-top:auto}
.tlp-bd .tlp-btn{padding:8px 13px;font-size:12.5px}
.tlp-thumbs{display:flex;gap:6px;overflow-x:auto;scrollbar-width:none;margin-top:auto;padding:2px}
.tlp-thumbs::-webkit-scrollbar{display:none}
.tlp-thumbs button{flex:none;width:34px;height:34px;border-radius:50%;border:2px solid var(--line);padding:0;overflow:hidden;background:var(--panel2);cursor:pointer;opacity:.6;transition:.2s}
.tlp-thumbs button.on{border-color:var(--gold);opacity:1;transform:scale(1.12)}
.tlp-thumbs img{width:100%;height:100%;object-fit:cover;display:block}

/* matchmaker */
.tlp-q{display:grid;gap:5px}
.tlp-q>span{font:600 12px var(--body);color:var(--muted)}
.tlp-seg{display:grid;grid-template-columns:repeat(3,1fr);gap:4px;background:var(--panel2);border:1px solid var(--line);border-radius:999px;padding:3px}
.tlp-seg button{border:0;background:transparent;color:var(--chalk);font:600 12.5px var(--body);padding:7px 4px;border-radius:999px;cursor:pointer;transition:.2s}
.tlp-seg button.on{background:var(--gold);color:#1a1200}
.tlp-pick{margin-top:auto;display:grid;gap:8px}
.tlp-top{display:grid;grid-template-columns:46px 1fr auto;gap:12px;align-items:center;border:1px solid var(--gold);border-radius:14px;padding:8px 12px 8px 8px;background:color-mix(in srgb,var(--gold) 10%,transparent);animation:tlp-in .4s}
.tlp-top img{width:46px;height:46px;border-radius:10px;object-fit:cover}
.tlp-top span{min-width:0}
.tlp-top small{display:block;font:700 10.5px var(--mono);color:var(--gold2);letter-spacing:.08em;text-transform:uppercase}
.tlp-top b{display:block;font-size:15px;line-height:1.2}
.tlp-top em{display:block;font-style:normal;font-size:12px;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.tlp-top strong{font:800 20px var(--mono);color:var(--lime)}
.tlp-alt{display:flex;gap:6px;flex-wrap:wrap}
.tlp-alt a{border:1px solid var(--line);border-radius:999px;padding:5px 12px;font:600 12.5px var(--body)}
.tlp-alt small{color:var(--muted);font-family:var(--mono)}

/* feed */
.tlp-feed{list-style:none;margin:0;padding:0;display:grid;gap:6px;max-height:170px;overflow-y:auto;overscroll-behavior:contain}
.tlp-feed li{display:grid;grid-template-columns:auto 1fr auto;gap:10px;align-items:center;padding:7px 10px;border:1px solid var(--line);border-radius:12px;background:var(--panel2);font-size:13px}
.tlp-feed small{color:var(--muted);font-family:var(--mono);font-size:11px}
.tlp-feed time{font:600 11.5px var(--mono);color:var(--muted)}
.tlp-feed .tlp-empty{display:block;border-style:dashed;background:transparent;color:var(--muted);line-height:1.45}

/* pulse */
.tlp-verdict{border-radius:14px;padding:10px 14px;display:flex;align-items:baseline;gap:10px;flex-wrap:wrap;border:1px solid}
.tlp-verdict b{font:800 17px var(--mono);letter-spacing:.05em}
.tlp-verdict span{font-size:13px}
.tlp-verdict.go{color:var(--lime);background:color-mix(in srgb,var(--lime) 12%,transparent)}
.tlp-verdict.warn{color:var(--gold2);background:color-mix(in srgb,var(--gold) 12%,transparent)}
.tlp-verdict.stop{color:var(--coral);background:color-mix(in srgb,var(--coral) 12%,transparent)}
.tlp-verdict span{color:var(--chalk)}
.tlp-sess{position:relative;height:30px;margin-top:2px;border-radius:10px;background:var(--panel2);border:1px solid var(--line);overflow:hidden}
.tlp-bar{position:absolute;height:8px;border-radius:99px;opacity:.9}
.tlp-bar.asia{left:0;width:37.5%;top:3px;background:#7c8cf8}
.tlp-bar.lon{left:29.2%;width:37.5%;top:11px;background:var(--gold)}
.tlp-bar.ny{left:50%;width:37.5%;top:19px;background:var(--lime)}
.tlp-sess i{position:absolute;top:-2px;bottom:-2px;width:2px;background:var(--coral);box-shadow:0 0 8px var(--coral);transition:left 1s}
.tlp-ticks{display:flex;justify-content:space-between;font:500 10px var(--mono);color:var(--muted);margin:-4px 2px 0}
.tlp-chk{list-style:none;margin:0;padding:0;display:grid;gap:6px}
.tlp-chk li{display:grid;grid-template-columns:12px 80px 1fr;gap:8px;align-items:center;font-size:13px}
.tlp-chk span{color:var(--muted)}
.tlp-chk b{font:600 12.5px var(--mono);text-align:right}
.tlp-chk .d{width:9px;height:9px;border-radius:50%;background:var(--muted)}
.tlp-chk .d.good{background:var(--lime)}.tlp-chk .d.ok{background:var(--muted)}.tlp-chk .d.warn{background:var(--gold)}.tlp-chk .d.bad{background:var(--coral)}

.tlp-prog{height:3px;margin:8px 14px 0;border-radius:3px;background:var(--line);overflow:hidden}
.tlp-prog i{display:block;height:100%;width:0;background:linear-gradient(90deg,var(--gold),var(--lime));border-radius:3px;transition:width .25s}

@media(max-width:560px){
  .tlp{padding-top:12px}.tlp-s{min-height:0;padding:14px;gap:8px}.tlp-shell{border-radius:18px}.tlp-nav{padding-bottom:8px}
  .tlp-arrows{display:none}
  .tlp-rd{grid-template-columns:104px 1fr;gap:10px}.tlp-dir{font-size:19px}.tlp-voters li{grid-template-columns:66px 1fr}.tlp-voters small{display:none}
  .tlp-bot{grid-template-columns:100px 1fr}
}
@media(prefers-reduced-motion:reduce){.tlp *{animation:none!important;transition:none!important}}
