:root{font-family:"SF Pro Display","Segoe UI",ui-sans-serif,system-ui,sans-serif;--mono:ui-monospace,"SFMono-Regular",Consolas,monospace;color:var(--tg-theme-text-color,#eff6fc);background:var(--tg-theme-bg-color,#0b1017)}*{box-sizing:border-box}body{margin:0;background:radial-gradient(520px 260px at 105% -10%,#12375088,transparent 66%),var(--tg-theme-bg-color,#0b1017)}header{display:flex;justify-content:space-between;gap:12px;padding:16px 17px 14px;border-bottom:1px solid #ffffff14;background:#10192380;backdrop-filter:blur(14px)}header strong{font-size:15px;letter-spacing:.02em}header span,small,#notice{font-size:11px;color:var(--tg-theme-hint-color,#9aaabb);line-height:1.55}main{padding:15px;max-width:620px;margin:auto}button,input,select{font:inherit;border-radius:10px}button{padding:9px 11px;border:1px solid #34485c;background:#14202d;color:inherit;font-size:12px;font-weight:700;transition:.16s ease}button:active{transform:scale(.98)}button.primary{color:#edfff6;background:linear-gradient(135deg,#206a4a,#2c805a);border-color:#46a878;box-shadow:0 8px 16px #07512e35}.summary{position:relative;display:grid;grid-template-columns:1fr 1fr auto;gap:8px;padding:13px;overflow:hidden;border:1px solid #2f4356;border-radius:14px;background:linear-gradient(135deg,#142938,#111d29);box-shadow:inset 0 1px #ffffff12,0 12px 26px #0003}.summary:after{content:"";position:absolute;right:-34px;top:-48px;width:130px;height:130px;border:1px solid #5db6d42b;border-radius:50%;box-shadow:0 0 0 18px #61c8e408}.summary div{position:relative;z-index:1;display:grid;gap:4px}.summary strong{font-family:var(--mono);font-size:18px;color:#effaff}.summary button{z-index:1;background:#173045c0}.toolbar{display:flex;gap:7px;margin:15px 0 9px}.toolbar .primary{margin-left:auto}.filter{border-color:transparent;background:transparent;color:#91a4b5}.filter.active,.choice.selected,.chip.selected{color:#def5ff;background:linear-gradient(135deg,#174665,#1a5c7c);border-color:#3e98c9;box-shadow:inset 0 1px #a9e9ff22}.card{position:relative;overflow:hidden;padding:12px;border:1px solid #2a3a4b;border-radius:13px;margin:9px 0;background:linear-gradient(120deg,#121c27,#101721);box-shadow:inset 0 1px #ffffff08}.card:before{content:"";position:absolute;left:0;top:11px;bottom:11px;width:2px;background:#55687c}.card:has(.running):before{background:#38ce87;box-shadow:0 0 10px #38ce8780}.card .top{display:flex;gap:7px;align-items:center}.card strong{font-family:var(--mono);font-size:16px;font-weight:500}.status,.position{font-family:var(--mono);font-size:9px;font-weight:500;letter-spacing:.04em;padding:4px 6px;border-radius:20px}.running,.long{background:#123e2a;color:#79f2b1;border:1px solid #286d4d}.stopped,.flat{background:#273341;color:#c0cedb;border:1px solid #3a4c5e}.short{background:#4b2730;color:#ffb0bb;border:1px solid #803e4b}.meta{font-family:var(--mono);font-size:10px;color:#91a2b2;margin:8px 0 11px}.actions{display:flex;gap:7px}.actions button:last-child{margin-left:auto;background:#18394e;border-color:#32718e;color:#dcf5ff}.pairing{margin-top:24px;border:1px solid #2b3c4e;border-radius:12px;padding:12px;background:#0e1721}.pairing summary{font-weight:750;cursor:pointer}label{display:grid;gap:6px;margin:11px 0;color:#b1c2d2;font-size:11px;font-weight:700;letter-spacing:.03em}input,select{width:100%;padding:10px;border:1px solid #304356;background:#0c131c;color:inherit;outline:0}input:focus,select:focus{border-color:#4caedf;box-shadow:0 0 0 3px #2898d02d}fieldset{border:0;border-top:1px solid #2b3c4d;padding:13px 0 0;margin:13px 0}fieldset:first-of-type{border-top:0;padding-top:0}legend{font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.08em;color:#a0b5c7;margin-bottom:9px}.choice,.chip{margin:0 6px 7px 0;background:#13202c;border-color:#2d4154}.chips{display:flex;flex-wrap:wrap}.two{display:grid;grid-template-columns:1fr 115px;gap:8px}details{margin:15px 0;border:1px solid #2a3d4f;border-radius:11px;padding:10px 11px;background:#0d1721}details summary{color:#bacddd;font-size:11px;font-weight:750;cursor:pointer}.topline{display:flex;gap:11px;align-items:center;margin-bottom:13px}.topline>button{padding:6px 9px;background:#101923;color:#b4cadc}#form>button{width:100%;margin-top:10px;padding:10px}

/* Strategy runtime cards: current signal, previous signal, and cadence-aware heartbeat. */
#strategies{display:grid;gap:11px}.card{margin:0;padding:14px;background:linear-gradient(135deg,#111d29 0%,#111925 100%);border-color:#2d4256;box-shadow:0 10px 24px #0000002a,inset 0 1px #ffffff0c}.card:before{top:13px;bottom:13px;width:3px;background:#63778c}.card-healthy:before{background:#35d98b;box-shadow:0 0 14px #35d98b90}.card-warning:before,.card-stale:before{background:#f3ae4b;box-shadow:0 0 14px #f3ae4b70}.card-error:before{background:#f05b70;box-shadow:0 0 14px #f05b7080}.card-starting:before{background:#4bb8ef;box-shadow:0 0 14px #4bb8ef80}.card-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.identity{display:flex;align-items:baseline;gap:8px;min-width:0}.identity strong{font-family:var(--mono);font-size:20px;font-weight:600;letter-spacing:-.04em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.strategy-id{font-family:var(--mono);font-size:11px;color:#8fa8bd;border-left:1px solid #3a4b5b;padding-left:8px}.health{display:inline-flex;align-items:center;gap:5px;flex:none;border:1px solid #33485b;border-radius:999px;padding:5px 8px;font-size:10px;font-weight:800;letter-spacing:.035em}.health i{width:6px;height:6px;border-radius:50%;background:currentColor;box-shadow:0 0 8px currentColor}.health-healthy{color:#6cf2ac;background:#123d2a;border-color:#276e4c}.health-warning,.health-stale{color:#ffca77;background:#493719;border-color:#7b5a27}.health-error{color:#ff9cab;background:#4b2730;border-color:#80404b}.health-starting{color:#8adaff;background:#17394d;border-color:#337192}.health-off{color:#b4c0cc;background:#25313e;border-color:#3c4e61}.card .meta{font-family:var(--mono);font-size:11px;color:#9aabbc;margin:10px 0 12px}.card .meta b{font-weight:600;color:#dceaf6}.runtime-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.runtime-grid>div{display:grid;gap:4px;padding:9px 10px;border:1px solid #24394d;border-radius:10px;background:#0c1520}.runtime-grid span{font-size:9px;font-weight:750;letter-spacing:.08em;color:#71879c;text-transform:uppercase}.runtime-grid b{font-family:var(--mono);font-size:13px;letter-spacing:.035em}.signal{width:max-content;border-radius:6px;padding:3px 5px}.signal.long{color:#73f0ad;background:#123d2a}.signal.short{color:#ffabb6;background:#48252d}.signal.flat{color:#c3d0dc;background:#263340}.signal.\2014{color:#8497aa;background:#1a2633}.heartbeat{grid-column:1 / -1}.heartbeat b{color:#e6f3fd}.heartbeat small{font-family:var(--mono);font-size:10px;color:#8098ac}.runtime-note{margin:9px 0 0;padding:8px 10px;border-radius:8px;font-size:11px;line-height:1.45}.warning-note{background:#402f17;color:#ffd38f;border:1px solid #6f5228}.error-note{background:#48242d;color:#ffb1bc;border:1px solid #7e3d49}.card .actions{margin-top:12px}.card .actions button{padding:8px 10px;font-size:12px}.card .actions button:first-child{background:#142130;color:#bed4e6}.card .actions button:last-child{min-width:72px}.card .actions button:last-child:not(:has(+ *)){background:#174358;border-color:#3283aa;color:#def7ff}.card.card-healthy .actions button:last-child{background:#174358;border-color:#3283aa;color:#def7ff}.card.card-healthy .actions button:last-child:hover{background:#215c78}.card.card-healthy .actions button:last-child{font-weight:800}
