/* GoldAI Strategy Builder v1 — uses the site theme variables, so every theme (incl. light) works */
#page-strategy-builder{--sb-green:var(--green,#22c55e);--sb-red:var(--red,#ef4444);--sb-amber:#eab308}
#sbRoot{max-width:760px;margin:0 auto}
#sbRoot .pos{color:var(--sb-green)} #sbRoot .neg{color:var(--sb-red)}
.sb-muted{color:var(--text-muted);font-size:.82rem;line-height:1.5;margin:6px 0}
.sb-center{text-align:center}
.sb-banner{margin:0 0 14px;padding:11px 14px;border-radius:12px;border:1px solid rgba(var(--accent-rgb),.35);background:rgba(var(--accent-rgb),.08);color:var(--text);font-size:.86rem;line-height:1.55}
.sb-banner.warn{border-color:rgba(234,179,8,.45);background:rgba(234,179,8,.08)}
.sb-link{background:none;border:0;padding:0;color:var(--gold);font:inherit;font-weight:700;cursor:pointer;text-decoration:underline}
.sb-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;width:auto;min-height:44px;padding:10px 18px;border-radius:12px;border:1px solid transparent;font:inherit;font-weight:700;font-size:.9rem;cursor:pointer;transition:.15s;color:var(--text);background:transparent}
.sb-btn.gold{background:linear-gradient(135deg,var(--gold),var(--gold-dark));color:var(--on-accent);box-shadow:0 6px 18px rgba(var(--accent-rgb),.25)}
.sb-btn.outline{border-color:rgba(var(--accent-rgb),.4);background:rgba(var(--accent-rgb),.05)}
.sb-btn.outline:hover{border-color:var(--gold)}
.sb-btn.ghost{color:var(--text-muted)}
.sb-btn.sm{min-height:38px;padding:7px 13px;font-size:.82rem;border-radius:10px}
.sb-btn[disabled]{opacity:.45;cursor:not-allowed;box-shadow:none}
.sb-actions{display:flex;justify-content:center;gap:8px;flex-wrap:wrap;margin:4px 0 10px}
.sb-tabs{display:flex;gap:6px;justify-content:center;margin:0 0 16px;flex-wrap:wrap}
.sb-tab{min-height:40px;padding:8px 16px;border-radius:999px;border:1px solid var(--border);background:transparent;color:var(--text-muted);font:inherit;font-weight:700;font-size:.85rem;cursor:pointer}
.sb-tab.on{color:var(--on-accent);background:linear-gradient(135deg,var(--gold),var(--gold-dark));border-color:transparent}
.sb-chips{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 12px}
.sb-chip{min-height:36px;padding:6px 13px;border-radius:999px;border:1px solid var(--border);background:transparent;color:var(--text-muted);font:inherit;font-size:.8rem;font-weight:600;cursor:pointer}
.sb-chip.on,.sb-chip:hover{color:var(--text);border-color:var(--gold);background:rgba(var(--accent-rgb),.12)}
.sb-empty{padding:26px 16px;text-align:center;color:var(--text-muted);border:1px dashed var(--border);border-radius:16px;margin:10px 0 18px;line-height:1.6}
.sb-empty b{color:var(--text)}
.sb-h3{margin:22px 0 10px;font-size:1rem;color:var(--text)}
.sb-h3 small,.sb-sec h3 small{font-weight:500;color:var(--text-muted);font-size:.78rem;margin-left:6px}
.sb-templates{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:10px}
.sb-tpl{display:flex;flex-direction:column;gap:6px;padding:14px;border:1px solid var(--border);border-radius:16px;background:var(--bg-card)}
.sb-tpl b{color:var(--text)} .sb-tpl p{margin:0;font-size:.8rem;color:var(--text-muted);line-height:1.5;flex:1}
.sb-tpl .sb-btn{align-self:flex-start;margin-top:4px}
.sb-tags{display:block;font-size:.74rem;color:var(--text-muted);margin-top:2px}
.sb-card{padding:14px 16px;margin-bottom:12px;border:1px solid var(--border);border-radius:18px;background:var(--bg-card)}
.sb-card.is-on{border-color:rgba(var(--accent-rgb),.55);box-shadow:0 0 0 1px rgba(var(--accent-rgb),.15)}
.sb-card-top{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}
.sb-card-top b{color:var(--text);font-size:1rem}
.sb-status{margin:8px 0;font-size:.8rem;color:var(--text-muted);line-height:1.5}
.sb-status.warn{color:var(--sb-amber)}
.sb-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;margin:8px 0 10px}
.sb-stats span{padding:8px 4px;border-radius:12px;background:rgba(var(--accent-rgb),.06);text-align:center;font-size:.68rem;color:var(--text-muted)}
.sb-stats b{display:block;font-size:.95rem;color:var(--text);font-variant-numeric:tabular-nums;margin-bottom:2px}
.sb-card-btns{display:flex;gap:6px;flex-wrap:wrap}
.sb-switch{position:relative;flex:0 0 52px;width:52px;height:30px;cursor:pointer}
.sb-switch input{position:absolute;opacity:0;width:100%;height:100%;margin:0;cursor:pointer;z-index:1}
.sb-switch span{position:absolute;inset:0;border-radius:999px;background:rgba(var(--tint-rgb,255,255,255),.12);border:1px solid var(--border);transition:.2s}
.sb-switch span:after{content:"";position:absolute;top:3px;left:3px;width:22px;height:22px;border-radius:50%;background:var(--text-muted);transition:.2s}
.sb-switch input:checked+span{background:linear-gradient(135deg,var(--gold),var(--gold-dark));border-color:transparent}
.sb-switch input:checked+span:after{left:25px;background:var(--on-accent)}
.sb-sig{padding:12px 14px;margin-bottom:10px;border:1px solid var(--border);border-radius:16px;background:var(--bg-card)}
.sb-sig-top{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.sb-sig-top .sb-tags{display:inline;margin:0;flex:1}
.sb-dir{padding:3px 9px;border-radius:8px;font-size:.72rem;font-weight:800;letter-spacing:.04em}
.sb-dir.buy{background:rgba(34,197,94,.15);color:var(--sb-green)} .sb-dir.sell{background:rgba(239,68,68,.15);color:var(--sb-red)}
.sb-state{font-size:.75rem;font-weight:700;color:var(--text-muted)}
.sb-levels{display:flex;flex-wrap:wrap;gap:6px 14px;margin:8px 0 4px;font-size:.82rem;color:var(--text-muted)}
.sb-levels b{color:var(--text);font-variant-numeric:tabular-nums}
.sb-levels small{color:var(--gold)}
.sb-disc{font-size:.74rem;color:var(--text-muted);line-height:1.5;margin:12px 0}
.sb-help{padding:16px 18px;border:1px solid var(--border);border-radius:18px;background:var(--bg-card);line-height:1.6;font-size:.88rem;color:var(--text-muted)}
.sb-help h3{color:var(--text);font-size:.95rem;margin:14px 0 6px} .sb-help h3:first-child{margin-top:0}
.sb-help b,.sb-help i{color:var(--text)} .sb-help ol{padding-left:20px;margin:0}
/* editor */
.sb-editbar{position:sticky;top:64px;z-index:5;display:flex;gap:8px;align-items:center;padding:8px 0;margin-bottom:6px;background:var(--bg)}
.sb-name{flex:1;min-width:0;min-height:44px;padding:8px 12px;border-radius:12px;border:1px solid var(--border);background:var(--bg-card);color:var(--text);font:inherit;font-weight:700;font-size:1rem}
.sb-sec{padding:16px;margin-bottom:12px;border:1px solid var(--border);border-radius:18px;background:var(--bg-card)}
.sb-sec h3{margin:0 0 10px;font-size:.98rem;color:var(--text)}
.sb-lbl{display:block;margin:12px 0 6px;font-size:.78rem;font-weight:700;color:var(--text-muted);letter-spacing:.02em}
.sb-lbl small{font-weight:500}
.sb-hint{margin:6px 0 0;font-size:.76rem;color:var(--text-muted);line-height:1.5}
.sb-pills{display:flex;gap:6px;flex-wrap:wrap}
.sb-pill{min-height:38px;padding:6px 14px;border-radius:10px;border:1px solid var(--border);background:transparent;color:var(--text-muted);font:inherit;font-size:.84rem;font-weight:700;cursor:pointer}
.sb-pill.on{color:var(--text);border-color:var(--gold);background:rgba(var(--accent-rgb),.16)}
#sbRoot select,#sbModal select,#sbRoot input[type=number],#sbModal input[type=number],.sb-search{min-height:40px;padding:6px 10px;border-radius:10px;border:1px solid var(--border);background:var(--bg);color:var(--text);font:inherit;font-size:.85rem;max-width:100%}
.sb-wide{width:100%}
.sb-step{padding:12px;margin-bottom:10px;border:1px solid rgba(var(--accent-rgb),.25);border-radius:14px;background:rgba(var(--accent-rgb),.04)}
.sb-step-head{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:8px;font-size:.84rem;color:var(--text-muted)}
.sb-step-head b{color:var(--text)}
.sb-within{display:inline-flex;align-items:center;gap:6px;flex-wrap:wrap}
.sb-logic{margin-left:auto}
.sb-cond{display:flex;align-items:center;gap:8px;margin-bottom:6px;padding:6px 6px 6px 10px;border:1px solid var(--border);border-radius:12px;background:var(--bg-card)}
.sb-cond-txt{flex:1;min-width:0;min-height:36px;text-align:left;background:none;border:0;color:var(--text);font:inherit;font-size:.84rem;line-height:1.4;cursor:pointer;padding:4px 0}
.sb-dots{display:inline-flex;align-items:center;gap:3px;flex:0 0 auto}
.sb-dots small{font-size:.62rem;color:var(--text-muted);font-weight:700}
.sb-dot{display:inline-block;width:10px;height:10px;border-radius:50%;margin-right:3px}
.sb-dot.on{background:var(--sb-green);box-shadow:0 0 8px rgba(34,197,94,.6)} .sb-dot.off{background:var(--sb-red);opacity:.75} .sb-dot.idle{background:var(--border)}
.sb-x{flex:0 0 auto;width:34px;height:34px;border-radius:10px;border:0;background:transparent;color:var(--text-muted);font-size:.9rem;cursor:pointer}
.sb-x:hover{color:var(--sb-red);background:rgba(239,68,68,.1)}
.sb-add{width:100%;min-height:40px;margin-top:2px;border-radius:12px;border:1px dashed rgba(var(--accent-rgb),.45);background:transparent;color:var(--gold);font:inherit;font-weight:700;font-size:.84rem;cursor:pointer}
.sb-stepstate{display:flex;flex-direction:column;gap:2px;margin-top:6px;font-size:.76rem;color:var(--text-muted)}
.sb-grid3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.sb-grid3 label{display:flex;flex-direction:column;gap:5px;font-size:.76rem;color:var(--text-muted)}
.sb-summary p{margin:0 0 6px;font-size:.85rem;color:var(--text);line-height:1.55}
.sb-errors,.sb-warns{margin:10px 0 0;padding:10px 12px 10px 28px;border-radius:12px;font-size:.8rem;line-height:1.5}
.sb-errors{border:1px solid rgba(239,68,68,.4);background:rgba(239,68,68,.07);color:var(--text)}
.sb-warns{border:1px solid rgba(234,179,8,.4);background:rgba(234,179,8,.07);color:var(--text)}
.sb-live-head{display:flex;justify-content:space-between;align-items:center;gap:10px}
.sb-live-head h3{margin:0}
.sb-fire{margin-top:8px;padding:12px;border-radius:12px;border:1px solid rgba(34,197,94,.45);background:rgba(34,197,94,.08);color:var(--text)}
.sb-fire small{color:var(--text-muted)}
.sb-nofire{margin:8px 0 0;font-size:.85rem;color:var(--text-muted)}
.sb-footer{position:sticky;bottom:calc(72px + env(safe-area-inset-bottom,0px));z-index:6;display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap;padding:10px 12px;margin:6px 0 20px;border:1px solid var(--border);border-radius:16px;background:var(--nav-bg,var(--bg-card));backdrop-filter:blur(10px)}
.sb-footer .sb-muted{flex:1;margin:0;min-width:140px}
/* modal */
.sb-modal{position:fixed;inset:0;z-index:2000;display:none;align-items:flex-end;justify-content:center;background:rgba(0,0,0,.55)}
.sb-modal.show{display:flex}
.sb-sheet{width:100%;max-width:640px;max-height:88vh;overflow:auto;padding:16px 16px calc(20px + env(safe-area-inset-bottom,0px));border-radius:20px 20px 0 0;border:1px solid var(--border);background:var(--bg-card);color:var(--text)}
@media (min-width:700px){.sb-modal{align-items:center}.sb-sheet{border-radius:20px}}
.sb-sheet-head{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:8px}
.sb-sheet-head b{font-size:1.02rem}
.sb-search{width:100%;margin:4px 0 10px}
.sb-blocks{display:flex;flex-direction:column;gap:6px}
.sb-block{display:flex;flex-direction:column;gap:2px;text-align:left;min-height:52px;padding:10px 12px;border-radius:12px;border:1px solid var(--border);background:transparent;color:var(--text);font:inherit;cursor:pointer}
.sb-block:hover{border-color:var(--gold);background:rgba(var(--accent-rgb),.08)}
.sb-block span{font-size:.78rem;color:var(--text-muted);line-height:1.4}
.sb-operand{display:flex;flex-wrap:wrap;gap:8px;align-items:flex-end;padding:10px;border-radius:12px;border:1px solid var(--border)}
.sb-operand label{display:flex;flex-direction:column;gap:4px;font-size:.72rem;color:var(--text-muted)}
.sb-operand input{width:96px}
.sb-check{display:flex;gap:8px;align-items:flex-start;margin:14px 0 6px;font-size:.84rem;color:var(--text-muted);line-height:1.4}
.sb-check input{margin-top:3px}
.sb-preview{margin:10px 0 4px;padding:10px 12px;border-radius:12px;background:rgba(var(--accent-rgb),.08);font-size:.85rem;color:var(--text)}
.sb-warn{font-size:.78rem;color:var(--sb-amber);line-height:1.5}
.sb-sheet-btns{display:flex;justify-content:flex-end;gap:8px;margin-top:14px}
body.sb-lock{overflow:hidden}
@media (max-width:560px){
  .sb-grid3{grid-template-columns:1fr}
  .sb-stats{grid-template-columns:repeat(2,minmax(0,1fr))}
  .sb-logic{margin-left:0}
  .sb-editbar{top:56px}
}
/* v2: easy mode, wizard, story, chart */
.sb-modebar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:0 0 12px}
.sb-seg{display:inline-flex;padding:3px;border-radius:12px;border:1px solid var(--border);background:var(--bg-card)}
.sb-seg button{min-height:36px;padding:6px 16px;border:0;border-radius:9px;background:transparent;color:var(--text-muted);font:inherit;font-weight:700;font-size:.84rem;cursor:pointer}
.sb-seg button.on{background:linear-gradient(135deg,var(--gold),var(--gold-dark));color:var(--on-accent)}
.sb-story-sec{border-color:rgba(var(--accent-rgb),.45)}
.sb-story-lead{margin:0 0 8px;font-size:.92rem;color:var(--text);line-height:1.5}
.sb-story{margin:0 0 8px;padding-left:22px;display:flex;flex-direction:column;gap:8px}
.sb-story li{font-size:.88rem;line-height:1.9;color:var(--text-muted)}
.sb-story i,.sb-story-line i{font-style:normal;color:var(--text-muted);font-size:.8rem}
.sb-story-line{margin:8px 0 0;font-size:.86rem;line-height:1.9;color:var(--text)}
.sb-then{font-size:.74rem;font-weight:800;letter-spacing:.03em;text-transform:uppercase;color:var(--gold)}
.sb-chiplink{display:inline;padding:4px 10px;margin:2px 0;border-radius:999px;border:1px solid rgba(var(--accent-rgb),.45);background:rgba(var(--accent-rgb),.1);color:var(--text);font:inherit;font-size:.82rem;font-weight:600;line-height:1.5;cursor:pointer;text-align:left}
.sb-chiplink:hover{border-color:var(--gold)}
.sb-chiplink.empty{border-style:dashed;color:var(--gold);background:transparent}
.sb-tagx{font-size:.74rem;color:var(--gold);font-weight:700}
.sb-ok{margin:0;font-size:.85rem;color:var(--sb-green)}
.sb-chartbox{margin-top:10px;border:1px solid var(--border);border-radius:14px;padding:8px;background:rgba(var(--accent-rgb),.03)}
.sb-chart{display:block;width:100%;height:190px}
.sb-chart .w{stroke-width:1;vector-effect:non-scaling-stroke}
.sb-chart .w.u,.sb-chart .b.u{stroke:var(--sb-green);fill:var(--sb-green)} .sb-chart .w.d,.sb-chart .b.d{stroke:var(--sb-red);fill:var(--sb-red)}
.sb-chart .b{opacity:.85}
.sb-chart .m.buy{fill:#22c55e;stroke:#fff;stroke-width:.8} .sb-chart .m.sell{fill:#ef4444;stroke:#fff;stroke-width:.8}
.sb-chart-legend{display:flex;gap:14px;flex-wrap:wrap;margin-top:6px;font-size:.74rem;color:var(--text-muted)}
.sb-chart-legend i{display:inline-block;width:0;height:0;margin-right:5px;border-left:5px solid transparent;border-right:5px solid transparent;vertical-align:middle}
.sb-chart-legend i.buy{border-bottom:8px solid #22c55e} .sb-chart-legend i.sell{border-top:8px solid #ef4444}
.sb-often{margin:10px 0 0;padding:9px 12px;border-radius:12px;font-size:.82rem;line-height:1.5}
.sb-often.ok{border:1px solid rgba(34,197,94,.4);background:rgba(34,197,94,.07);color:var(--text)}
.sb-often.warn{border:1px solid rgba(234,179,8,.45);background:rgba(234,179,8,.08);color:var(--text)}
.sb-wiz{max-width:560px;margin:0 auto;padding:16px;border:1px solid var(--border);border-radius:20px;background:var(--bg-card)}
.sb-wiz-top{display:flex;align-items:center;justify-content:space-between;gap:10px}
.sb-wiz-dots{display:flex;gap:6px}
.sb-wiz-dots i{width:22px;height:5px;border-radius:9px;background:var(--border)}
.sb-wiz-dots i.done{background:rgba(var(--accent-rgb),.6)} .sb-wiz-dots i.on{background:var(--gold)}
.sb-wiz-q{margin:16px 0 12px;font-size:1.15rem;color:var(--text);text-align:center}
.sb-wiz-opts{display:flex;flex-direction:column;gap:8px}
.sb-wiz-opt{display:flex;flex-direction:column;gap:3px;min-height:58px;padding:12px 14px;border-radius:14px;border:1px solid var(--border);background:transparent;color:var(--text);font:inherit;text-align:left;cursor:pointer;transition:.15s}
.sb-wiz-opt b{font-size:.98rem} .sb-wiz-opt span{font-size:.8rem;color:var(--text-muted);line-height:1.45}
.sb-wiz-opt:hover,.sb-wiz-opt.on{border-color:var(--gold);background:rgba(var(--accent-rgb),.1)}
/* V28: AI helper */
.sb-ai-text{width:100%;margin:10px 0;padding:12px;border-radius:14px;border:1px solid var(--border);background:var(--bg);color:var(--text);font:inherit;font-size:.92rem;line-height:1.5;resize:vertical;min-height:130px}
.sb-ai-ex{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 12px}
.sb-ai-note{border-color:rgba(var(--accent-rgb),.55)}
.sb-ai-note ul{margin:4px 0 8px;padding-left:20px;font-size:.84rem;line-height:1.6;color:var(--text)}
.sb-ai-note .warnc{color:#eab308}
.sb-fine{font-size:.74rem}
/* V41: Test on past data */
.bt-sec .sb-btn.gold{margin-top:4px}
.bt-chips .sb-pill{display:inline-flex;flex-direction:column;align-items:center;line-height:1.2}
.bt-chips .sb-pill small{font-size:.66rem;font-weight:600;opacity:.8}
.bt-chips .sb-pill:disabled{opacity:.55;cursor:not-allowed}
.bt-range{margin:6px 0 0}
.bt-row{display:flex;flex-wrap:wrap;gap:10px 18px;align-items:center;margin:12px 0}
.bt-spread{display:inline-flex;gap:6px;align-items:center;font-size:.82rem;color:var(--text-muted)}
.bt-spread input{width:84px;min-height:34px;padding:4px 8px;border-radius:9px;border:1px solid var(--border);background:transparent;color:var(--text);font:inherit}
.bt-step{margin:10px 0 0}
.bt-plans{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:8px;margin-top:10px}
.bt-plans div{border:1px solid var(--border);border-radius:12px;padding:8px 10px;font-size:.8rem;display:flex;flex-direction:column;gap:2px}
.bt-plans span{color:var(--text-muted)}
.bt-res{margin-top:14px}
.bt-res.stale .bt-kpis,.bt-res.stale .sb-chartbox,.bt-res.stale .bt-list{opacity:.55}
.bt-kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(110px,1fr));gap:8px;margin:8px 0}
.bt-kpis div{border:1px solid var(--border);border-radius:12px;padding:9px 11px;display:flex;flex-direction:column;gap:3px}
.bt-kpis span{font-size:.72rem;color:var(--text-muted)}
.bt-kpis b{font-size:1.15rem}
.bt-tps{display:flex;flex-wrap:wrap;gap:6px 14px;font-size:.82rem;color:var(--text-muted);margin:4px 0 8px}
.bt-tps b{color:var(--text)}
.bt-eq{display:block;width:100%;height:150px}
.bt-eq .z{stroke:var(--border);stroke-dasharray:4 4;vector-effect:non-scaling-stroke}
.bt-eq .l{fill:none;stroke-width:2;vector-effect:non-scaling-stroke}
.bt-eq .l.up{stroke:var(--sb-green)} .bt-eq .l.down{stroke:var(--sb-red)}
.bt-eq .a.up{fill:rgba(34,197,94,.12)} .bt-eq .a.down{fill:rgba(239,68,68,.12)}
.bt-months{margin:10px 0;font-size:.82rem}
.bt-months summary{cursor:pointer;font-weight:700}
.bt-months table{width:100%;border-collapse:collapse;margin-top:6px}
.bt-months th,.bt-months td{padding:5px 6px;border-bottom:1px solid var(--border);text-align:right}
.bt-months th:first-child,.bt-months td:first-child{text-align:left}
.bt-h4{margin:14px 0 6px;font-size:.92rem}
.bt-h4 small{font-weight:500;color:var(--text-muted)}
.bt-list{display:flex;flex-direction:column;gap:6px}
.bt-tr{display:grid;grid-template-columns:auto 1fr auto auto auto;gap:8px;align-items:center;width:100%;padding:8px 10px;border:1px solid var(--border);border-radius:12px;background:transparent;color:var(--text);font:inherit;font-size:.8rem;text-align:left;cursor:pointer}
.bt-tr.on{border-color:var(--gold);background:rgba(var(--accent-rgb),.08)}
.bt-when{color:var(--text-muted)}
.bt-b{padding:2px 8px;border-radius:999px;font-size:.72rem;font-weight:700;white-space:nowrap}
.bt-b.tp{background:rgba(34,197,94,.15);color:var(--sb-green)} .bt-b.sl{background:rgba(239,68,68,.15);color:var(--sb-red)}
.bt-b.exp,.bt-b.open{background:rgba(234,179,8,.14);color:var(--sb-amber)}
.bt-r{min-width:58px;text-align:right}
.bt-detail{padding:4px 2px 8px}
.bt-lv{stroke-width:1;vector-effect:non-scaling-stroke;stroke-dasharray:5 4}
.bt-lv.en{stroke:var(--gold);stroke-dasharray:none} .bt-lv.sl{stroke:var(--sb-red)} .bt-lv.tp{stroke:var(--sb-green)}
.bt-lt{font-size:10px;font-weight:700} .bt-lt.en{fill:var(--gold)} .bt-lt.sl{fill:var(--sb-red)} .bt-lt.tp{fill:var(--sb-green)}
.bt-at{stroke:var(--text-muted);stroke-dasharray:2 3;vector-effect:non-scaling-stroke}
.bt-pager{display:flex;gap:10px;align-items:center;justify-content:center;margin-top:8px;font-size:.8rem}
.bt-note{margin-top:12px;font-size:.74rem;color:var(--text-muted);line-height:1.5}
@media (max-width:520px){.bt-tr{grid-template-columns:auto 1fr auto auto}.bt-tr>span:nth-child(3){display:none}}
.sb-mini{display:flex;flex-direction:column;gap:4px;font-size:.74rem;color:var(--text-muted)} .sb-mini input{min-height:34px;padding:4px 8px;border-radius:9px;border:1px solid var(--border);background:transparent;color:var(--text);font:inherit}
/* V42: three ways compared */
.bt-cmp{margin:12px 0;overflow-x:auto}
.bt-cmp table{width:100%;border-collapse:collapse;font-size:.78rem;min-width:520px}
.bt-cmp th,.bt-cmp td{padding:6px 6px;border-bottom:1px solid var(--border);text-align:right;white-space:nowrap}
.bt-cmp th:first-child,.bt-cmp td:first-child{text-align:left;white-space:normal}
.bt-cmp tr.mine td{background:rgba(var(--accent-rgb),.08);font-weight:700}
.bt-cmp small{font-weight:600;color:var(--text-muted)} .bt-cmp small.pos{color:var(--sb-green)}
.sb-tested{margin:6px 0 8px;font-size:.74rem;line-height:1.45;padding:6px 8px;border-radius:9px} .sb-tested.ok{background:rgba(34,197,94,.08);color:var(--text)} .sb-tested.bad{background:rgba(239,68,68,.08);color:var(--text-muted)}
/* V44: cancel conditions, entry, why-this-many-signals */
.sb-cancel{margin:10px 0 2px;padding:9px 10px;border:1px dashed rgba(239,68,68,.35);border-radius:12px;background:rgba(239,68,68,.04)}
.sb-cancel-head{font-size:.8rem;font-weight:700;color:var(--text-muted);margin-bottom:4px}
.sb-cancel .sb-check{font-size:.8rem}
.sb-add.sm{min-height:34px;font-size:.78rem;padding:5px 10px}
.bt-funnel table{width:100%;border-collapse:collapse;font-size:.8rem}
.bt-funnel th,.bt-funnel td{padding:6px;border-bottom:1px solid var(--border);text-align:right;vertical-align:top}
.bt-funnel th:first-child,.bt-funnel td:first-child{text-align:left}
.bt-funnel td small{color:var(--text-muted);font-weight:500}
.bt-funnel tr.mine td{background:rgba(var(--accent-rgb),.08);font-weight:700}
/* V45: tested wizard */
.sb-wiz-opt b{display:flex;align-items:center;justify-content:space-between;gap:8px}
.sb-wiz-ok,.sb-wiz-no{font-style:normal;font-size:.72rem;font-weight:700;padding:2px 8px;border-radius:999px;white-space:nowrap}
.sb-wiz-ok{color:var(--sb-green);background:rgba(34,197,94,.1)} .sb-wiz-no{color:var(--text-muted);background:rgba(127,127,127,.12)}
.sb-wiz-opt.weak{opacity:.72}
/* V48 easier builder: 3-step guide, one-tap test, rules folded in Easy mode */
.sb-howto{display:flex;gap:8px;list-style:none;counter-reset:h;padding:0;margin:0 0 12px;flex-wrap:wrap}
.sb-howto li{flex:1 1 140px;counter-increment:h;padding:10px 12px;border:1px solid var(--border);border-radius:14px;background:var(--bg-card);font-size:.85rem;color:var(--text-muted)}
.sb-howto li::before{content:counter(h);display:inline-grid;place-items:center;width:20px;height:20px;margin-right:6px;border-radius:50%;background:var(--gold,#d4af6a);color:#1a1205;font-weight:700;font-size:.75rem}
.sb-howto b{color:var(--text)}
.sb-tpl .sb-card-btns{display:flex;gap:8px;flex-wrap:wrap;margin-top:8px}
.sb-rules-toggle{width:100%;margin:4px 0 12px}
/* V49 GoldAI tested strategies (results only, rules private) */
.sb-house{margin:18px 0 8px}
.sb-house .sb-hper{margin-top:-4px}
.sb-hport{border-color:var(--gold,#d4af6a)}
.sb-hstats{grid-template-columns:repeat(4,1fr)}
@media (max-width:420px){.sb-hstats{grid-template-columns:repeat(2,1fr)}}
.sb-hchart{width:100%;height:110px;display:block;margin:8px 0 2px}
.sb-hchart rect.up{fill:#22c55e}.sb-hchart rect.down{fill:#ef4444}.sb-hchart .axis{stroke:var(--border);stroke-width:1}
.sb-hlist{display:flex;flex-direction:column;gap:6px;margin:8px 0 4px}
.sb-hrow{display:flex;flex-wrap:wrap;justify-content:space-between;gap:4px 10px;padding:9px 12px;border:1px solid var(--border);border-radius:12px;background:var(--bg-card);font-size:.85rem}
.sb-hrow span{color:var(--text-muted)}
/* V50 last-12-weeks strip */
.sb-weeks{display:flex;align-items:flex-end;gap:4px;height:40px;margin:10px 0 2px}
.sb-weeks span{flex:1;display:flex;align-items:flex-end;justify-content:center;height:100%}
.sb-weeks i{display:block;width:100%;border-radius:3px 3px 0 0}
.sb-weeks .up i{background:#22c55e}.sb-weeks .down i{background:#ef4444}.sb-weeks .flat i{background:var(--border)}
/* V57 house strategy list: passed & live on top, archived folded away */
#sbRoot .sb-pass{display:inline-block;margin-left:6px;padding:1px 8px;border-radius:999px;font-size:.7rem;font-weight:700;vertical-align:middle;border:1px solid var(--border,#2b2345);color:var(--text-muted)}
#sbRoot .sb-pass.ok{color:var(--sb-green,#22c55e);border-color:rgba(34,197,94,.45);background:rgba(34,197,94,.1)}
#sbRoot .sb-pass.bad{color:var(--sb-red,#ef4444);border-color:rgba(239,68,68,.45);background:rgba(239,68,68,.1)}
#sbRoot .sb-archive{margin:18px 0;border:1px dashed var(--border,#2b2345);border-radius:14px;padding:10px 12px}
#sbRoot .sb-archive>summary{cursor:pointer;font-weight:700;color:var(--text-muted)}
#sbRoot .sb-archive>summary small{font-weight:500;margin-left:6px}
#sbRoot .sb-archive .sb-card{opacity:.75}

/* V58 locked (paid) view */
.sb-lock{position:relative;border-radius:18px;overflow:hidden;min-height:340px;border:1px solid var(--border)}
.sb-lock-demo{padding:18px;display:flex;flex-direction:column;gap:12px;filter:blur(5px);opacity:.7;pointer-events:none;user-select:none;-webkit-user-select:none}
.sb-lock-row{display:flex;justify-content:space-between;gap:10px;padding:14px;border-radius:14px;border:1px solid var(--border);background:var(--bg-card)}
.sb-lock-row span{color:var(--text-muted);font-size:.85rem}
.sb-lock-card{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;padding:20px;text-align:center;background:linear-gradient(180deg,rgba(0,0,0,.15),rgba(0,0,0,.5))}
.sb-lock-card b{font:800 1.2rem Sora,Inter,sans-serif;color:#fff}
.sb-lock-card p{margin:0;max-width:420px;font-size:.9rem;line-height:1.5;color:rgba(255,255,255,.88)}
.sb-lock-ico{width:52px;height:52px;border-radius:50%;display:grid;place-items:center;font-size:1.4rem;background:rgba(var(--accent-rgb,155,124,255),.25);border:1px solid var(--gold)}

/* ===================== V61 Builder 2.0 — one clean, professional system ===================== */
#sbRoot{max-width:880px}
.sb-ico{width:18px;height:18px;flex:0 0 auto}
.sb-btn .sb-ico{width:16px;height:16px}
.sb-btn{letter-spacing:.01em}
.sb-btn.gold{box-shadow:0 6px 16px rgba(var(--accent-rgb),.18)}
.sb-iconbtn{display:inline-grid;place-items:center;width:42px;height:42px;flex:0 0 42px;border-radius:12px;border:1px solid var(--border);background:transparent;color:var(--text-muted);cursor:pointer;transition:.15s}
.sb-iconbtn:hover{color:var(--text);border-color:rgba(var(--accent-rgb),.5)}
.sb-iconbtn.sm{width:36px;height:36px;flex-basis:36px;border-radius:10px}
.sb-iconbtn.danger:hover{color:var(--sb-red);border-color:rgba(239,68,68,.5)}
.sb-grow{flex:1}
.sb-topbar{display:grid;grid-template-columns:42px 1fr auto;align-items:center;gap:12px;margin:0 0 16px}
.sb-topbar h3{margin:0;font-size:1.1rem;color:var(--text);text-align:center}
.sb-topbar>span{min-width:42px;text-align:right}
.sb-panel{padding:18px;border:1px solid var(--border);border-radius:20px;background:var(--bg-card)}
.sb-lead{margin:0 0 14px;font-size:1rem;font-weight:700;color:var(--text);text-align:center}

/* home */
.sb-home-top{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;margin:0 0 14px}
.sb-home-act{display:flex;gap:8px;align-items:center}
.sb-seg2{display:inline-flex;padding:4px;border-radius:14px;border:1px solid var(--border);background:rgba(var(--tint-rgb,255,255,255),.03)}
.sb-seg2 button{display:inline-flex;align-items:center;gap:6px;min-height:36px;padding:6px 14px;border:0;border-radius:10px;background:transparent;color:var(--text-muted);font:inherit;font-weight:700;font-size:.86rem;cursor:pointer}
.sb-seg2 button.on{background:var(--bg-card);color:var(--text);box-shadow:0 1px 0 var(--border),0 4px 12px rgba(0,0,0,.18)}
.sb-seg2 em{font-style:normal;font-size:.7rem;min-width:18px;padding:1px 6px;border-radius:999px;background:rgba(var(--accent-rgb),.18);color:var(--gold)}
.sb-count{margin:0 0 10px;font-size:.78rem;color:var(--text-muted)}
.sb-skel{height:120px;border-radius:18px;margin-bottom:12px;background:linear-gradient(90deg,rgba(var(--tint-rgb,255,255,255),.03),rgba(var(--tint-rgb,255,255,255),.07),rgba(var(--tint-rgb,255,255,255),.03));background-size:200% 100%;animation:sbSk 1.3s infinite}
@keyframes sbSk{to{background-position:-200% 0}}
.sb-empty2{display:flex;flex-direction:column;align-items:center;gap:10px;padding:34px 20px;text-align:center;border:1px solid var(--border);border-radius:20px;background:var(--bg-card);margin:0 0 8px}
.sb-empty2 h3{margin:4px 0 0;color:var(--text);font-size:1.15rem}
.sb-empty2 p{margin:0;max-width:440px;color:var(--text-muted);font-size:.9rem;line-height:1.55}
.sb-empty-ico{width:54px;height:54px;border-radius:16px;display:grid;place-items:center;color:var(--gold);background:rgba(var(--accent-rgb),.12)}
.sb-empty-ico .sb-ico{width:26px;height:26px}
.sb-sechead{display:flex;align-items:baseline;justify-content:space-between;gap:10px;margin:26px 0 10px}
.sb-sechead h3{margin:0;font-size:1rem;color:var(--text)}
.sb-sechead .sb-link{text-decoration:none}

/* strategy card */
.sb-card{padding:16px;border-radius:18px}
.sb-card-btns{align-items:center}
.sb-card-btns .sb-btn{gap:6px}
.sb-pass{font-size:.68rem;font-weight:800;letter-spacing:.06em;padding:3px 8px;border-radius:7px;border:1px solid var(--border);color:var(--text-muted);vertical-align:middle}
.sb-pass.ok{color:var(--sb-green);border-color:rgba(34,197,94,.4);background:rgba(34,197,94,.08)}
.sb-pass.bad{color:var(--sb-red);border-color:rgba(239,68,68,.4);background:rgba(239,68,68,.08)}

/* tested strategy cards */
.sb-tpl-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:12px}
.sb-tpl2{display:flex;flex-direction:column;gap:10px;padding:16px;border:1px solid var(--border);border-radius:18px;background:var(--bg-card);transition:border-color .15s}
.sb-tpl2:hover{border-color:rgba(var(--accent-rgb),.45)}
.sb-tpl-head{display:flex;flex-direction:column;gap:2px}
.sb-tpl-head b{color:var(--text);font-size:.98rem}
.sb-mk{font-size:.74rem;font-weight:700;color:var(--gold);letter-spacing:.02em}
.sb-tpl2>p{margin:0;flex:1;font-size:.82rem;line-height:1.5;color:var(--text-muted);display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.sb-tpl-kpis{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}
.sb-tpl-kpis span{padding:8px 6px;border-radius:12px;background:rgba(var(--tint-rgb,255,255,255),.035);border:1px solid var(--border);text-align:center;font-size:.66rem;color:var(--text-muted);line-height:1.3}
.sb-tpl-kpis b{display:block;font-size:.95rem;color:var(--text);font-variant-numeric:tabular-nums}
.sb-tpl-more summary{cursor:pointer;font-size:.76rem;color:var(--text-muted);font-weight:600}
.sb-tpl-more p{margin:6px 0 0;font-size:.76rem;color:var(--text-muted);line-height:1.5}
.sb-tpl-foot{display:flex;align-items:center;justify-content:space-between;gap:8px}
.sb-badge-ok{display:inline-flex;align-items:center;gap:5px;font-size:.72rem;font-weight:700;color:var(--sb-green)}
.sb-badge-ok .sb-ico{width:14px;height:14px}

/* new strategy chooser */
.sb-choices{display:flex;flex-direction:column;gap:10px}
.sb-choice{display:flex;align-items:center;gap:14px;width:100%;padding:16px;border:1px solid var(--border);border-radius:16px;background:rgba(var(--tint-rgb,255,255,255),.02);color:var(--text);font:inherit;text-align:left;cursor:pointer;transition:.15s}
.sb-choice:hover{border-color:var(--gold);background:rgba(var(--accent-rgb),.06)}
.sb-choice-ico{flex:0 0 46px;height:46px;border-radius:14px;display:grid;place-items:center;color:var(--gold);background:rgba(var(--accent-rgb),.12)}
.sb-choice-ico .sb-ico{width:22px;height:22px}
.sb-choice-txt{flex:1;display:flex;flex-direction:column;gap:3px}
.sb-choice-txt b{font-size:.98rem}
.sb-choice-txt b em{font-style:normal;font-size:.62rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;padding:2px 7px;border-radius:6px;margin-left:6px;vertical-align:middle;color:var(--on-accent);background:linear-gradient(135deg,var(--gold),var(--gold-dark))}
.sb-choice-txt span{font-size:.82rem;color:var(--text-muted);line-height:1.45}
.sb-choice-go{color:var(--text-muted)}
.sb-callout{display:flex;align-items:center;gap:12px;width:100%;margin:0 0 14px;padding:12px 14px;border-radius:14px;border:1px dashed rgba(var(--accent-rgb),.45);background:rgba(var(--accent-rgb),.05);color:var(--text);font:inherit;font-size:.86rem;text-align:left;cursor:pointer}
.sb-callout span{flex:1;line-height:1.45}
.sb-callout>.sb-ico:first-child{color:var(--gold)}

/* guided builder */
.sb-progress{height:4px;border-radius:4px;background:rgba(var(--tint-rgb,255,255,255),.08);margin:-6px 0 16px;overflow:hidden}
.sb-progress i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--gold-dark),var(--gold));transition:width .3s}
.sb-guided .sb-lbl{margin-top:16px}
.sb-guided .sb-lbl small{font-weight:500;color:var(--text-muted)}
.sb-tiles{display:grid;gap:8px}
.sb-tiles.one{grid-template-columns:1fr}
.sb-tiles.two{grid-template-columns:repeat(2,minmax(0,1fr))}
.sb-tiles.three{grid-template-columns:repeat(3,minmax(0,1fr))}
.sb-tiles.four{grid-template-columns:repeat(4,minmax(0,1fr))}
.sb-tile{position:relative;display:flex;flex-direction:column;gap:3px;min-height:58px;padding:12px 34px 12px 12px;border:1px solid var(--border);border-radius:14px;background:rgba(var(--tint-rgb,255,255,255),.02);color:var(--text);font:inherit;text-align:left;cursor:pointer;transition:.15s}
.sb-tile b{font-size:.88rem}
.sb-tile span:not(.sb-tile-chk){font-size:.74rem;color:var(--text-muted);line-height:1.4}
.sb-tile:hover{border-color:rgba(var(--accent-rgb),.5)}
.sb-tile.on{border-color:var(--gold);background:rgba(var(--accent-rgb),.09);box-shadow:0 0 0 1px rgba(var(--accent-rgb),.35)}
.sb-tile-chk{position:absolute;top:10px;right:10px;width:18px;height:18px;border-radius:50%;border:1px solid var(--border);display:grid;place-items:center;color:transparent}
.sb-tile-chk .sb-ico{width:12px;height:12px}
.sb-tile.on .sb-tile-chk{background:var(--gold);border-color:var(--gold);color:var(--on-accent)}
.sb-gfoot{display:flex;justify-content:space-between;gap:10px;margin-top:20px;padding-top:14px;border-top:1px solid var(--border)}
.sb-gfoot .sb-btn{min-width:120px}
.sb-gname{margin-bottom:6px}
.sb-review{display:flex;gap:12px;align-items:flex-start;margin:12px 0;padding:14px;border-radius:14px;border:1px solid rgba(var(--accent-rgb),.3);background:rgba(var(--accent-rgb),.06)}
.sb-review p{margin:0;font-size:.9rem;line-height:1.6;color:var(--text)}
.sb-review-ico{flex:0 0 36px;height:36px;border-radius:10px;display:grid;place-items:center;color:var(--gold);background:rgba(var(--accent-rgb),.14)}

/* editor */
.sb-editbar{display:flex;gap:10px;align-items:center}
.sb-live-d>summary{cursor:pointer;font-weight:700;color:var(--text);list-style:none;display:flex;align-items:baseline;gap:8px}
.sb-live-d>summary::-webkit-details-marker{display:none}
.sb-live-d>summary::before{content:"+";display:inline-grid;place-items:center;width:20px;height:20px;border-radius:6px;border:1px solid var(--border);font-size:.8rem;color:var(--text-muted)}
.sb-live-d[open]>summary::before{content:"–"}
.sb-live-d>summary small{font-weight:500;color:var(--text-muted);font-size:.78rem}
.sb-live-d .sb-live-head h3{display:none}
.sb-ai-note h3 .sb-ico,.sb-wiz-note h3 .sb-ico{vertical-align:-3px;margin-right:6px;color:var(--gold)}
.sb-wiz-ok .sb-ico{width:12px;height:12px;vertical-align:-2px}
.sb-help{border:0;padding:0;background:none}

/* test result */
.bt-kpis.bt-kpis4{grid-template-columns:repeat(4,minmax(0,1fr))}
.bt-kpis.bt-kpis4 b{font-size:1.25rem}
.bt-minor{display:flex;flex-wrap:wrap;gap:6px;margin:8px 0 10px}
.bt-minor span{padding:5px 10px;border-radius:999px;border:1px solid var(--border);font-size:.74rem;color:var(--text-muted)}
.bt-minor b{color:var(--text);font-variant-numeric:tabular-nums}
.sb-often.bad{border-color:rgba(239,68,68,.4);background:rgba(239,68,68,.07)}
.bt-mtable{width:100%;border-collapse:collapse;font-size:.8rem}
.bt-mtable th,.bt-mtable td{padding:6px 8px;border-bottom:1px solid var(--border);text-align:left}

@media (max-width:640px){
  .sb-panel{padding:14px}
  .sb-tiles.three,.sb-tiles.four{grid-template-columns:repeat(2,minmax(0,1fr))}
  .sb-tiles.two{grid-template-columns:1fr}
  .sb-home-top{flex-direction:column;align-items:stretch}
  .sb-home-act{justify-content:space-between}
  .sb-home-act .sb-btn{flex:1}
  .sb-seg2{display:flex}
  .sb-seg2 button{flex:1;justify-content:center}
  .bt-kpis.bt-kpis4{grid-template-columns:repeat(2,minmax(0,1fr))}
}
.sb-ok .sb-ico{width:15px;height:15px;vertical-align:-3px;margin-right:6px;color:var(--sb-green)}
.sb-gname{display:block;width:100%;box-sizing:border-box;min-height:46px;padding:10px 12px;border-radius:12px;border:1px solid var(--border);background:var(--bg,#0a0804);color:var(--text);font:inherit;font-weight:700;font-size:.95rem}
.sb-gname:focus{outline:none;border-color:var(--gold)}
.sb-live-d>summary{display:block}
.sb-live-d>summary::before{margin-right:8px;vertical-align:1px}
.sb-live-d>summary small{display:inline-block;margin-left:4px}
.bt-sigs summary small{font-weight:500;color:var(--text-muted);margin-left:6px}
.bt-sigs .bt-list{margin-top:10px}
.sb-live-d>summary{display:block}
.sb-live-d>summary::before{margin-right:8px;vertical-align:1px}
.sb-live-d>summary small{display:inline-block;margin-left:4px}
.bt-sigs summary small{font-weight:500;color:var(--text-muted);margin-left:6px}
.bt-sigs .bt-list{margin-top:10px}
