/* ── Теми. Кольори з xyz-next; кожна тема перевизначає лише ролі ── */
:root,[data-theme=light]{
--bg:#eef2f7;--bg-glow:#dbe7f4;--surface:#ffffff;--surface-2:#e8eef6;
--line:#d5dfeb;--line-strong:#c2d0e0;--text:#16232e;--text-2:#3f5568;--muted:#5d7189;
--accent:#2f6fd0;--accent-soft:rgba(47,111,208,.12);--cyan:#0f8f97;
--green:#0f8a5f;--green-bg:#dff3ea;--red:#c8342f;--red-bg:#fbe3e2;--red-line:#eebab7;
--amber:#a06b00;--amber-bg:#fdf0d6;--on-accent:#ffffff;
--panel-bg:linear-gradient(160deg,#ffffff,#f6f9fd);--topbar-bg:rgba(238,242,247,.86);
--focus-ring:rgba(47,111,208,.18);--shadow-tint:rgba(30,50,75,.10);color-scheme:light}

[data-theme=ivory]{
--bg:#f3ece0;--bg-glow:#e8dcc8;--surface:#fffcf6;--surface-2:#efe6d6;
--line:#e0d4bf;--line-strong:#cfc0a6;--text:#2e2822;--text-2:#5a4f42;--muted:#7a6d5c;
--accent:#3c6491;--accent-soft:rgba(60,100,145,.12);--cyan:#2f7d76;
--green:#3f7d54;--green-bg:#e4eedd;--red:#a8443a;--red-bg:#f6e2dd;--red-line:#e0bdb4;
--amber:#9a6b1f;--amber-bg:#f7ead0;--on-accent:#fffcf6;
--panel-bg:linear-gradient(160deg,#fffcf6,#f7f1e6);--topbar-bg:rgba(243,236,224,.88);
--focus-ring:rgba(60,100,145,.18);--shadow-tint:rgba(90,70,45,.10);color-scheme:light}

[data-theme=graphite]{
--bg:#15171a;--bg-glow:#22262b;--surface:#1b1e22;--surface-2:#2a2e34;
--line:#31363d;--line-strong:#3d434b;--text:#eceef1;--text-2:#c0c6cd;--muted:#949ba4;
--accent:#7aa2f7;--accent-soft:rgba(122,162,247,.16);--cyan:#4bc4bd;
--green:#5ad39a;--green-bg:#1d2f28;--red:#f0736f;--red-bg:#33201f;--red-line:#63393a;
--amber:#e8b45c;--amber-bg:#332a1a;--on-accent:#12141a;
--panel-bg:linear-gradient(160deg,#23272c,#1c1f24);--topbar-bg:rgba(21,23,26,.86);
--focus-ring:rgba(122,162,247,.18);--shadow-tint:rgba(0,0,0,.28);color-scheme:dark}

[data-theme=night]{
--bg:#07111b;--bg-glow:#0d2834;--surface:#091721;--surface-2:#102638;
--line:#1a3548;--line-strong:#254156;--text:#eef6ff;--text-2:#b5c7d5;--muted:#8ca5b8;
--accent:#6aa6ff;--accent-soft:rgba(106,166,255,.16);--cyan:#4ed6d1;
--green:#48e0a4;--green-bg:#0d2927;--red:#ff6677;--red-bg:#301827;--red-line:#673044;
--amber:#ffbf4a;--amber-bg:#3a2a14;--on-accent:#06121b;
--panel-bg:linear-gradient(145deg,rgba(15,35,51,.96),rgba(10,25,38,.96));--topbar-bg:rgba(7,17,27,.82);
--focus-ring:rgba(106,166,255,.16);--shadow-tint:rgba(0,0,0,.2);color-scheme:dark}

/* ── Основа ── */
*{box-sizing:border-box}
body{margin:0;min-height:100vh;padding:22px 20px 60px;background:radial-gradient(circle at 15% 0,var(--bg-glow) 0,transparent 36%),var(--bg);color:var(--text);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:14px}
a{color:var(--accent)}
code{font-size:12px;padding:1px 5px;border-radius:6px;background:var(--surface-2)}
.muted{color:var(--muted);font-weight:400}
.pos{color:var(--green)}
.neg{color:var(--red)}
.right{text-align:right}
.wrap{max-width:1060px;margin:0 auto}

/* ── Шапка ── */
header.bar{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:14px}
.brand{display:flex;align-items:center;gap:10px;font-size:16px;font-weight:800;min-width:0}
.brand .muted{font-size:13px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.logo{display:grid;place-items:center;width:34px;height:34px;border-radius:10px;background:linear-gradient(135deg,var(--cyan),var(--accent));color:var(--on-accent);font-size:16px;font-weight:800}
.top-actions{display:flex;align-items:center;gap:8px}
.top-actions form{margin:0}

/* ── Кнопки й поля ── */
button,.btn{font:inherit;font-size:13px;font-weight:700;border-radius:11px;padding:9px 14px;border:1px solid var(--line-strong);background:var(--surface);color:var(--text);cursor:pointer;text-decoration:none;display:inline-flex;align-items:center;gap:6px}
button:hover,.btn:hover{border-color:var(--accent)}
button:disabled{opacity:.55;cursor:not-allowed}
.primary{background:var(--accent);border-color:var(--accent);color:var(--on-accent)}
.danger{background:var(--red-bg);border-color:var(--red-line);color:var(--red)}
.small{padding:5px 10px;font-size:12px;border-radius:9px}
.theme-cycle{width:36px;height:36px;padding:0;justify-content:center;font-size:15px}
.theme-floating{position:fixed;right:18px;bottom:18px}
label{display:block;color:var(--text-2);font-size:13px;font-weight:600}
input,select,textarea{font:inherit;padding:10px 12px;border-radius:11px;border:1px solid var(--line-strong);background:var(--surface);color:var(--text)}
label input{width:100%;margin-top:6px}
input:focus,select:focus,textarea:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 4px var(--focus-ring)}
.check{display:flex;gap:10px;align-items:flex-start;font-weight:500;line-height:1.45}
.check input{width:auto;margin:2px 0 0}
.stack{display:grid;gap:14px}
.row{display:flex;flex-wrap:wrap;gap:10px;align-items:center}
.alert{padding:10px 12px;border-radius:10px;background:var(--red-bg);border:1px solid var(--red-line);color:var(--red);font-weight:600}
.notice{padding:10px 12px;border-radius:10px;background:var(--amber-bg);color:var(--amber);font-weight:600}

/* ── Головна: блок-герой і картки (розкладка xyz) ── */
.hero{background:linear-gradient(135deg,var(--accent-soft),transparent 55%),var(--panel-bg);border:1px solid var(--line);border-radius:24px;box-shadow:0 18px 50px var(--shadow-tint);padding:20px;margin-bottom:14px}
.hero h1{font-size:22px;margin:0 0 6px;font-weight:800;letter-spacing:-.4px}
.hero p{font-size:13px;color:var(--muted);margin:0;max-width:680px;line-height:1.5}
.hero .plan-line{margin-top:8px;color:var(--text-2);font-weight:600}
.kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:10px;margin-top:16px}
.kpi{background:var(--surface);border:1px solid var(--line);border-radius:16px;padding:12px 14px}
.kpi .l{font-size:10px;color:var(--muted);font-weight:800;text-transform:uppercase;letter-spacing:.6px}
.kpi .v{font-size:27px;font-weight:800;margin-top:6px;letter-spacing:-.5px}
.kpi .s{font-size:11px;color:var(--muted);margin-top:4px}
.pcard{background:var(--panel-bg);border:1px solid var(--line);border-radius:20px;box-shadow:0 18px 50px var(--shadow-tint);margin-bottom:14px;overflow:hidden}
.chead{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:15px 18px 10px;flex-wrap:wrap}
.chead h2{font-size:12px;margin:0;font-weight:800;text-transform:uppercase;letter-spacing:.5px;color:var(--text-2)}
.chead p{font-size:12px;color:var(--muted);margin:4px 0 0}
.cbody{padding:0 18px 18px}
.compose{padding:0 18px 12px;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px}
.soon{margin:0 18px 16px;font-size:12px;color:var(--muted)}
.empty{padding:6px 18px 18px;color:var(--muted)}

/* ── Таблиці, пігулки, перемикач ── */
.table-wrap{overflow-x:auto}
table{width:100%;border-collapse:collapse}
th{text-align:left;color:var(--muted);font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;padding:8px 10px;border-bottom:1px solid var(--line)}
td{padding:9px 10px;border-bottom:1px solid var(--line);white-space:nowrap;vertical-align:middle}
tbody tr:last-child td{border-bottom:0}
.pill{display:inline-block;padding:2px 9px;border-radius:999px;font-size:11px;font-weight:700;background:var(--surface-2);color:var(--muted)}
.pill.ok{background:var(--green-bg);color:var(--green)}
.pill.bad{background:var(--red-bg);color:var(--red)}
.pill.acc{background:var(--accent-soft);color:var(--accent)}
.switch{position:relative;display:inline-block;width:40px;height:23px;margin:0}
.switch input{position:absolute;opacity:0;width:0;height:0;margin:0}
.switch span{position:absolute;inset:0;border-radius:999px;background:var(--line-strong);transition:background .15s;cursor:pointer}
.switch span::after{content:"";position:absolute;top:3px;left:3px;width:17px;height:17px;border-radius:50%;background:var(--surface);transition:transform .15s}
.switch input:checked+span{background:var(--green)}
.switch input:checked+span::after{transform:translateX(17px)}
.switch input:focus-visible+span{box-shadow:0 0 0 4px var(--focus-ring)}

/* ── Адмінка ── */
.admin-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:14px}
.admin-grid .pcard{margin-bottom:0}
.key-box{margin-top:12px;padding:12px 14px;border-radius:12px;background:var(--green-bg);border:1px solid var(--line-strong)}
.key-box p{margin:0 0 8px}
.key-box code{display:block;padding:8px 10px;word-break:break-all;background:var(--surface)}
.qr{display:flex;gap:16px;align-items:center;flex-wrap:wrap;margin:12px 0}
.qr img{width:170px;height:170px;border-radius:10px;background:#fff;padding:6px}
.facts{display:grid;gap:8px}
.facts div{padding:9px 12px;border-radius:10px;background:var(--surface-2)}
.facts span{display:block;color:var(--muted);font-size:12px}

/* ── Вхід і реєстрація ── */
.auth-body{display:grid;place-items:center;padding:20px}
.auth-card{width:100%;max-width:400px;display:grid;gap:16px;padding:28px;border-radius:20px;background:var(--panel-bg);border:1px solid var(--line);box-shadow:0 24px 70px var(--shadow-tint)}
.auth-card h1{margin:0;font-size:20px}
.auth-card .switch-link{font-size:13px;color:var(--muted)}
.terms{white-space:pre-wrap;font-family:inherit;line-height:1.6;margin:0}

.toast{position:fixed;left:50%;bottom:24px;transform:translateX(-50%);z-index:30;padding:10px 16px;border-radius:12px;background:var(--surface);border:1px solid var(--line-strong);box-shadow:0 12px 40px var(--shadow-tint);font-weight:600}
.toast.bad{color:var(--red);border-color:var(--red-line)}

@media(max-width:700px){
body{padding:12px 12px 48px}
.hero{padding:15px;border-radius:18px}
.hero h1{font-size:19px}
.kpis{grid-template-columns:1fr 1fr;gap:8px}
.compose{grid-template-columns:1fr}
.brand .muted{max-width:160px}
}
[hidden]{display:none!important}

/* ── Список ботів ── */
.blist{padding:0 12px 12px;display:grid;gap:10px}
.bot{border:1px solid var(--line);border-radius:18px;padding:14px 15px;background:var(--surface);display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center;color:inherit;text-decoration:none;transition:box-shadow .15s,border-color .15s}
.bot:hover{border-color:var(--accent);box-shadow:0 10px 24px var(--shadow-tint)}
.btop{display:flex;flex-wrap:wrap;align-items:center;gap:7px}
.bname{font-size:16px;font-weight:800;letter-spacing:-.2px}
.bsub{display:flex;flex-wrap:wrap;gap:6px 16px;margin-top:8px;font-size:12px;color:var(--muted)}
.bsub b{color:var(--text);font-weight:650}
.pill.real{background:var(--amber-bg);color:var(--amber)}
.open-link{font-weight:800;color:var(--accent);white-space:nowrap}

/* ── Сторінка бота ── */
.hero-top{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;flex-wrap:wrap}
.hero .pills{display:flex;gap:6px;flex-wrap:wrap;margin-top:10px}
.icon-btn{padding:3px 9px;font-size:13px;border-radius:9px;margin-left:8px;vertical-align:middle}
.tabs{display:flex;gap:4px;margin:0 0 14px;padding:5px;border-radius:14px;background:var(--surface-2);width:max-content;max-width:100%;overflow-x:auto}
.tabs a{padding:8px 14px;border-radius:10px;font-weight:700;font-size:13px;color:var(--text-2);text-decoration:none;white-space:nowrap}
.tabs a.on{background:var(--surface);color:var(--text);box-shadow:0 2px 8px var(--shadow-tint)}
.checklist{display:grid;gap:8px}
.checklist>div{display:flex;gap:10px;align-items:center;padding:9px 12px;border-radius:10px;background:var(--surface-2)}
.checklist .mark{width:22px;height:22px;border-radius:50%;display:grid;place-items:center;font-size:12px;font-weight:800;background:var(--red-bg);color:var(--red);flex:0 0 auto}
.checklist .mark.ok{background:var(--green-bg);color:var(--green)}
.events td{white-space:normal}
.events td:first-child{white-space:nowrap;color:var(--muted);width:1%}
.danger-zone{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}

/* ── Пари ── */
.toolbar{display:flex;flex-wrap:wrap;gap:8px;align-items:center;padding:0 18px 12px}
.toolbar input{flex:1;min-width:160px;padding:8px 11px}
.toolbar select{padding:8px 11px}
.pairs{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:8px;padding:0 18px 18px}
.pair{justify-content:space-between;padding:8px 11px;border-radius:10px;font-size:12px;background:var(--surface);border:1px solid var(--line)}
.pair::after{content:"";width:9px;height:9px;border-radius:50%;background:var(--line-strong)}
.pair.on{border-color:var(--green);background:var(--green-bg);color:var(--green)}
.pair.on::after{background:var(--green)}
.pair.unlisted{border-style:dashed}

/* ── Налаштування: бічна навігація й секції ── */
.setlayout{display:grid;grid-template-columns:212px minmax(0,1fr);gap:14px;align-items:start}
.sidenav{position:sticky;top:12px;background:var(--panel-bg);border:1px solid var(--line);border-radius:18px;box-shadow:0 18px 50px var(--shadow-tint);padding:8px}
.sidetitle{font-size:10px;color:var(--muted);font-weight:800;text-transform:uppercase;letter-spacing:.6px;padding:7px 9px}
.navbtn{width:100%;border:0;background:transparent;border-radius:10px;padding:8px 9px;justify-content:flex-start;color:var(--text-2);font-size:12px}
.navbtn:hover{background:var(--surface-2)}
.navbtn.on{background:var(--accent);color:var(--on-accent)}
.nav-ico{width:22px;height:22px;border-radius:7px;background:var(--surface-2);display:grid;place-items:center;font-size:11px;flex:0 0 auto;color:var(--text-2)}
.navbtn.on .nav-ico{background:rgba(255,255,255,.22);color:var(--on-accent)}
.setmain{display:grid;gap:14px;min-width:0}
.setmain .pcard{margin-bottom:0;scroll-margin-top:14px}
.fgrid{display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));align-items:end}
.field{display:flex;flex-direction:column;gap:6px;min-width:0}
.field>span{font-size:12px;font-weight:650;color:var(--text-2)}
.field input,.field select,.field textarea{margin:0;width:100%}
.ui{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;border:1px solid var(--line-strong);border-radius:11px;background:var(--surface);overflow:hidden}
.ui:focus-within{border-color:var(--accent);box-shadow:0 0 0 4px var(--focus-ring)}
.ui input{border:0;border-radius:0;background:transparent;box-shadow:none!important;min-width:0}
.ui .u{padding:0 11px;font-size:12px;color:var(--muted);border-left:1px solid var(--line);align-self:stretch;display:flex;align-items:center;white-space:nowrap}
.chgrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:10px;margin-bottom:12px}
.choice{display:block;text-align:left;border:1px solid var(--line);border-radius:14px;padding:12px 13px;background:var(--surface);cursor:pointer;font-weight:400;color:var(--text)}
.choice:hover{border-color:var(--accent)}
.choice.on{border-color:var(--accent);background:var(--accent-soft);box-shadow:0 0 0 3px var(--focus-ring)}
.choice .ch-title{display:flex;align-items:center;gap:8px;font-size:13px;font-weight:750}
.choice .ch-title input{width:auto;margin:0}
.choice p{margin:5px 0 0;color:var(--muted);font-size:12px;line-height:1.45}
.tgl{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;border:1px solid var(--line);border-radius:12px;background:var(--surface);font-weight:400;cursor:pointer}
.tgl strong{display:block;font-size:13px;color:var(--text)}
.tgl small{display:block;margin-top:2px;font-size:12px;color:var(--muted)}
.levels{display:grid;gap:8px;margin-top:12px}
.level{display:grid;grid-template-columns:22px minmax(0,1fr) minmax(0,1fr) auto;gap:8px;align-items:end}
.level .n{font-weight:800;color:var(--muted);padding-bottom:11px}
.level>button{margin-bottom:4px}
textarea.secret{min-height:92px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px;resize:vertical}
.keystate{margin-top:12px;padding:12px 14px;border-radius:12px;background:var(--surface-2)}
.keystate.ok{background:var(--green-bg)}
.keystate.bad{background:var(--red-bg)}
.keystate ul{margin:6px 0 0;padding-left:18px;color:var(--amber)}
.savebar{position:fixed;left:50%;bottom:14px;transform:translate(-50%,160%);width:min(860px,calc(100% - 24px));z-index:40;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 13px;border-radius:16px;background:var(--panel-bg);border:1px solid var(--accent);box-shadow:0 18px 42px var(--shadow-tint);transition:transform .2s ease}
.savebar.on{transform:translate(-50%,0)}
@media(max-width:900px){
.setlayout{grid-template-columns:1fr}
.sidenav{top:6px;z-index:20;display:flex;gap:6px;overflow-x:auto}
.sidetitle,.nav-ico{display:none}
.navbtn{width:auto;flex:0 0 auto}
.bot{grid-template-columns:1fr}
.savebar #savebar-note{display:none}
}
.hero-actions{display:grid;justify-items:end;gap:6px;max-width:340px;text-align:right}
.hero-actions .muted{font-size:12px;line-height:1.4}
@media(max-width:700px){.hero-actions{justify-items:start;text-align:left}}
.subhead{font-size:12px;margin:18px 0 8px;font-weight:800;text-transform:uppercase;letter-spacing:.5px;color:var(--text-2)}

/* ── Огляд бота: розкладка xyz ── */
.hero-actions .row{justify-content:flex-end}
.sumgrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:12px;margin-bottom:14px}
.sumc{background:var(--surface);border:1px solid var(--line);border-radius:18px;padding:14px 15px;box-shadow:0 18px 50px var(--shadow-tint);min-width:0}
.sumc .k{font-size:10px;color:var(--muted);font-weight:800;text-transform:uppercase;letter-spacing:.6px}
.sumc .v{font-size:26px;font-weight:800;letter-spacing:-.5px;margin-top:6px;font-variant-numeric:tabular-nums;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.sumc .s{font-size:11px;color:var(--muted);margin-top:6px}
.sumc .s b{color:var(--text);font-weight:650}
.sumc .s b.pos{color:var(--green)}
.sumc .s b.neg{color:var(--red)}
.pscroll{overflow-x:auto;-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain}
.pager{display:flex;gap:10px;align-items:center;justify-content:flex-end;padding:10px 16px 12px;font-size:12px}
.phead{display:grid;grid-template-columns:auto 1fr auto;align-items:center;padding:14px 16px 12px;gap:10px}
.rbtn{width:36px;height:36px;border-radius:50%;padding:0;justify-content:center;font-size:14px}
.pcount{justify-self:center;font-size:16px;font-weight:800}
.PGRID{display:grid;grid-template-columns:minmax(190px,1fr) 78px 116px 118px 122px 118px 96px 78px}
.phdr{padding:8px 16px 9px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);color:var(--muted);font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.5px}
.phdr>div:not(:first-child){text-align:right}
.phdr>div[data-k]{cursor:pointer;user-select:none;white-space:nowrap}
.prow{align-items:stretch;border-bottom:1px solid var(--line);min-height:64px;position:relative;cursor:pointer}
.prow:hover{filter:saturate(1.2) brightness(.985)}
.pc{padding:9px 8px;display:flex;align-items:center;min-width:0}
.pc:first-child{padding-left:16px}
.pc:last-child{padding-right:16px}
.pc.n{justify-content:flex-end;text-align:right;font-variant-numeric:tabular-nums}
.pc .sub{font-size:10.5px;color:var(--muted);margin-top:2px}
.strip{position:absolute;left:0;top:0;bottom:0;width:4px}
.prow.L .strip{background:var(--green)}
.prow.S .strip{background:var(--red)}
.prow.L{background:linear-gradient(90deg,rgba(15,138,95,.16),rgba(15,138,95,.05) 32%,transparent 62%)}
.prow.S{background:linear-gradient(90deg,rgba(200,52,47,.16),rgba(200,52,47,.05) 32%,transparent 62%)}
.prow.A{background:linear-gradient(90deg,var(--accent-soft),transparent 68%)}
.prow.A .strip{background:var(--accent)}
.coin{width:32px;height:32px;border-radius:10px;background:var(--surface-2);display:grid;place-items:center;font-size:10px;font-weight:800;flex:0 0 auto;margin-right:9px;color:var(--text-2)}
.ppair{font-weight:800;font-size:13px;white-space:nowrap}
.ppair span{color:var(--muted);font-weight:600;margin-left:4px;font-size:11px}
.pmeta{font-size:10.5px;color:var(--muted);margin-top:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.xb{padding:3px 7px;border-radius:999px;background:var(--surface-2);color:var(--text-2);font-size:11px;font-weight:800}
.xb.up{background:var(--accent-soft);color:var(--accent)}
.big{font-weight:800;font-size:12.5px}
.pclose{background:var(--red-bg);border-color:var(--red-line);color:var(--red);font-size:11px;padding:6px 10px}
.pdet{display:none;background:var(--surface-2);border-bottom:1px solid var(--line);padding:12px 16px 14px}
.pdet.open{display:block}
.pdet-actions{display:flex;justify-content:flex-end;margin-top:10px}
.dgrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(110px,1fr));gap:8px}
.dbox{background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:9px 10px;min-width:0}
.dbox span{font-size:9.5px;color:var(--muted);display:block;text-transform:uppercase;letter-spacing:.4px}
.dbox b{font-size:12px;display:block;margin-top:4px;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}
.dbox .dsub{font-size:10px;color:var(--muted);margin-top:3px}
.dbox.act{background:var(--accent-soft);border-color:var(--accent)}
.dbox.act b{color:var(--accent)}
.dbox.wait{background:var(--amber-bg)}
.dbox.wait b{color:var(--amber)}
.sghead{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:15px 16px 10px;flex-wrap:wrap}
.sghead h2{margin:0;font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.5px;color:var(--text-2)}
.sghead p{font-size:12px;color:var(--muted);margin:4px 0 0}
.sgacts{display:flex;gap:7px;align-items:center;flex-wrap:wrap}
.fbtn{border-radius:11px;font-size:11px;padding:7px 10px;color:var(--text-2)}
.fbtn.on{background:var(--accent);border-color:var(--accent);color:var(--on-accent)}
.sgfilters{display:flex;gap:7px;padding:10px 16px 12px;align-items:center;flex-wrap:wrap;background:var(--surface-2);border-top:1px solid var(--line)}
.sgsearchw{position:relative;min-width:210px;flex:1;display:flex;align-items:center}
.sgsearchw::before{content:"🔎";position:absolute;left:11px;font-size:12px;opacity:.55;pointer-events:none}
.sgsearch{width:100%;padding:9px 12px 9px 32px;font-size:13px}
.chip2{border-radius:999px;padding:6px 10px;font-size:11px;color:var(--text-2)}
.chip2.on{background:var(--accent-soft);border-color:var(--accent);color:var(--accent)}
.SGRID{display:grid;grid-template-columns:86px minmax(110px,.7fr) 82px 104px minmax(200px,1.5fr)}
.sghdr{padding:8px 16px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);color:var(--muted);font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.5px}
.sghdr>div:nth-child(3),.sghdr>div:nth-child(4){text-align:center}
.sgrow{align-items:center;min-height:54px;border-bottom:1px solid var(--line);position:relative;cursor:pointer}
.sgrow:hover{filter:brightness(.985)}
.sgc{padding:8px 9px;font-size:12px;min-width:0}
.sgc:first-child{padding-left:16px}
.sgacc{position:absolute;left:0;top:9px;bottom:9px;width:3px;border-radius:0 3px 3px 0}
.sgrow[data-s=long] .sgacc{background:var(--green)}
.sgrow[data-s=short] .sgacc{background:var(--red)}
.sgtime{color:var(--muted);font-variant-numeric:tabular-nums;font-size:11px}
.sgpair{font-size:13px;font-weight:800}
.sgpair small{font-size:10px;color:var(--muted);font-weight:600;margin-left:3px}
.sgreason{color:var(--text-2);line-height:1.35;font-size:12px;display:flex;gap:7px;align-items:center}
.sgreason b{color:var(--text-2);font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.sgdet{display:none;background:var(--surface-2);border-bottom:1px solid var(--line);padding:11px 16px 13px}
.sgdet.open{display:block}
.pill.long,.pill.open{background:var(--green-bg);color:var(--green)}
.pill.short{background:var(--red-bg);color:var(--red)}
.pill.skip,.pill.off,.pill.other{background:var(--surface-2);color:var(--muted)}
.pill.limit{background:var(--amber-bg);color:var(--amber)}
.pill.cycle{background:var(--accent-soft);color:var(--accent)}
.tl{padding:2px 16px 10px}
.tlgroup{margin-top:10px}
.tlday{display:flex;align-items:center;gap:8px;padding:8px 0 7px;color:var(--text-2);font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.6px}
.tlday:after{content:"";height:1px;background:var(--line);flex:1}
.ev{display:grid;grid-template-columns:52px 30px 78px minmax(0,1fr);align-items:start;gap:10px;padding:9px 0;border-bottom:1px solid var(--line);cursor:pointer}
.ev:hover{filter:brightness(.985)}
.evt{font-size:11px;color:var(--muted);font-variant-numeric:tabular-nums;padding-top:5px}
.evi{width:28px;height:28px;border-radius:9px;display:grid;place-items:center;font-size:12px;font-weight:800}
.evtype{padding-top:3px}
.evtype span{display:inline-flex;padding:4px 7px;border-radius:999px;font-size:10px;font-weight:800}
.k-info,.k-params{background:var(--surface-2);color:var(--text-2)}
.k-open{background:var(--accent-soft);color:var(--accent)}
.k-add{background:var(--amber-bg);color:var(--amber)}
.k-close{background:var(--green-bg);color:var(--green)}
.k-error{background:var(--red-bg);color:var(--red)}
.k-epoch{background:rgba(128,87,216,.16);color:#8057d8}
.evmsg{min-width:0}
.evmsg .m{font-size:12.5px;line-height:1.45;color:var(--text);overflow-wrap:anywhere}
.evmsg .s{font-size:10.5px;color:var(--muted);margin-top:3px}
.evdet{display:none;margin:-1px 0 0 92px;padding:10px 12px 12px;border-left:2px solid var(--line);background:var(--surface-2);border-bottom:1px solid var(--line)}
.evdet.open{display:block}
.raw{margin-top:8px;background:var(--surface);border:1px solid var(--line);border-radius:11px;padding:9px 10px;font-size:11px;color:var(--text-2);line-height:1.45;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;overflow-wrap:anywhere}
.sgmob{display:none}
@media(min-width:821px){
.PGRID,.pdet{min-width:1080px}
.SGRID,.sgdet{min-width:820px}
.mcell,.sgmob{display:none!important}
.sgmeta{display:none}
}
@media(max-width:820px){
.hero-actions .row{justify-content:flex-start}
.sumgrid{grid-template-columns:1fr 1fr;gap:8px;margin-bottom:10px}
.sumc{border-radius:14px;padding:12px}
.sumc .v{font-size:20px}
.PGRID{grid-template-columns:minmax(0,1fr) 62px 104px}
.phdr{font-size:9px}
.phdr>div[data-k=x]{text-align:center}
.xcell{justify-content:center;padding-left:2px;padding-right:2px}
.dsk{display:none!important}
.prow{min-height:74px}
.coin{display:none}
.ppair{overflow:hidden;text-overflow:ellipsis}
.pmeta{white-space:normal}
.pc:first-child{padding-left:14px}
.pc:last-child{padding-right:14px}
.mcell .big{font-size:14px}
.SGRID{grid-template-columns:64px minmax(0,1fr) 118px}
.sghdr{display:none}
.sgc.dsk2{display:none}
.sgmob{display:block;text-align:right;padding:9px 14px 9px 4px}
.sgmob .mreason{font-size:10.5px;color:var(--muted);line-height:1.3;margin-top:4px}
.sgmeta{display:flex;gap:5px;margin-top:5px;flex-wrap:wrap}
.sgrow{min-height:70px}
.tl{padding:0 12px 10px}
.ev{grid-template-columns:46px 26px minmax(0,1fr);gap:8px}
.evtype{display:none}
.evdet{margin-left:0}
}

/* Сторінка бота на всю ширину Full HD: таблиці позицій і рішень розтягуються. */
.wrap.wide{max-width:1840px}
@media(min-width:821px){
.PGRID{grid-template-columns:minmax(220px,1.6fr) 78px minmax(112px,1fr) minmax(118px,1fr) minmax(122px,1fr) minmax(118px,1fr) minmax(96px,.8fr) 78px}
.SGRID{grid-template-columns:96px minmax(120px,.8fr) 90px 110px minmax(220px,3fr)}
}
@media(min-width:1400px){.sumgrid{grid-template-columns:repeat(6,minmax(0,1fr))}}

/* ── Статистика бота: розкладка xyz ── */
.rangebar{display:flex;gap:5px;padding:4px;background:var(--surface);width:max-content;max-width:100%;border:1px solid var(--line);border-radius:999px;box-shadow:0 10px 30px var(--shadow-tint);margin:0 0 14px}
.rb{border:0;background:transparent;color:var(--text-2);padding:7px 12px;border-radius:999px;font-size:12px}
.rb.on{background:var(--accent);color:var(--on-accent)}
.g2{display:grid;grid-template-columns:1.35fr .65fr;gap:14px;margin-bottom:14px}
.g2.half{grid-template-columns:1fr 1fr}
.g2 .pcard{margin-bottom:0}
.g2side{display:grid;gap:14px;align-content:start}
.sidecard{padding:16px}
.sidek{font-size:10px;color:var(--muted);font-weight:800;text-transform:uppercase;letter-spacing:.6px}
.sidev{font-size:28px;font-weight:800;margin:7px 0}
.chartbox{padding:0 16px 14px;color:var(--text-2)}
.chartlegend{font-size:12px;margin-top:6px}
.tablebox{padding:0 16px 14px}
.lsbar{height:9px;background:var(--surface-2);border-radius:999px;overflow:hidden;margin-top:4px}
.lsbar span{display:block;height:100%;background:var(--green)}
.drow{display:grid;grid-template-columns:78px 1fr 46px;gap:10px;align-items:center;padding:7px 0}
.drow span{font-size:12px;color:var(--muted)}
.drow b{font-size:12px;text-align:right}
.dbar{height:8px;background:var(--surface-2);border-radius:999px;overflow:hidden}
.dbar i{display:block;height:100%;border-radius:999px;background:linear-gradient(90deg,var(--accent),#8b69df)}
.heat{border-collapse:separate;border-spacing:2px;width:auto}
.heat th{font-size:10px;color:var(--muted);font-weight:500;padding:0;border:0;text-transform:none;letter-spacing:0;text-align:center}
.heat td{width:22px;height:20px;border-radius:4px;padding:0;border:0}
.heat td.hday{width:auto;font-size:11px;color:var(--muted);padding-right:8px;background:none}
.epochline{background:var(--accent-soft);border-radius:8px;font-size:12.5px;padding:7px 12px!important;white-space:normal!important}
.CGRID{display:grid;grid-template-columns:minmax(110px,1fr) 74px 60px minmax(170px,1.1fr) 92px minmax(120px,.9fr) 116px}
.chdr{padding:8px 16px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);color:var(--muted);font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.5px}
.chdr>div:not(:first-child){text-align:right}
.crow{align-items:center;min-height:50px;border-bottom:1px solid var(--line);position:relative}
.crow:hover{filter:brightness(.985)}
.cacc{position:absolute;left:0;top:8px;bottom:8px;width:3px;border-radius:0 3px 3px 0}
.crow[data-s=long] .cacc{background:var(--green)}
.crow[data-s=short] .cacc{background:var(--red)}
.cc{padding:8px 9px;font-size:12px;min-width:0}
.cc:first-child{padding-left:16px}
.cc:last-child{padding-right:16px}
.cc:not(:first-child){text-align:right;font-variant-numeric:tabular-nums}
.cpair{font-size:13px;font-weight:800}
.cpair small{font-size:10px;color:var(--muted);font-weight:600;margin-left:3px}
.csrc{display:inline-flex;padding:4px 8px;border-radius:999px;background:var(--surface-2);color:var(--text-2);font-size:10.5px;font-weight:800}
.cpnl{font-size:13px;font-weight:800}
.cprice{color:var(--text-2)}
.cprice i{color:var(--muted);font-style:normal;margin:0 4px}
.cep{grid-column:1/-1;background:var(--accent-soft);border-radius:8px;margin:4px 8px;padding:7px 10px;font-size:12px}
.tip{position:fixed;z-index:99;pointer-events:none;background:var(--surface);color:var(--text);border:1px solid var(--line-strong);border-radius:11px;padding:9px 11px;font-size:12px;box-shadow:0 8px 24px var(--shadow-tint)}
.botsw-wrap{position:relative}
#botsw{cursor:pointer;border-bottom:1.5px dashed var(--line-strong)}
#botsw:hover{border-bottom-color:var(--accent)}
#botsw .caret{font-size:12px}
#botdd{position:absolute;top:110%;left:0;z-index:96;min-width:260px;width:max-content;max-width:min(440px,92vw);background:var(--panel-bg);border:1px solid var(--line);border-radius:14px;box-shadow:0 18px 50px var(--shadow-tint);padding:6px;font-size:14px;font-weight:600;letter-spacing:0}
#botdd a{display:flex;gap:9px;align-items:center;padding:9px 12px;border-radius:10px;color:var(--text);text-decoration:none;white-space:nowrap}
#botdd a .nm{overflow:hidden;text-overflow:ellipsis}
#botdd a .muted{font-size:12px}
#botdd a:hover{background:var(--accent-soft)}
#botdd a.cur{background:var(--surface-2)}
#botdd .dot{width:8px;height:8px;border-radius:50%;flex:0 0 auto}
@media(min-width:821px){.CGRID{min-width:760px}}
@media(max-width:1000px){.g2,.g2.half{grid-template-columns:1fr}}
@media(max-width:820px){
.CGRID{grid-template-columns:minmax(0,1fr) 88px 96px}
.cc.chide,.chdr .chide{display:none}
.crow{min-height:56px}
}

/* ── Список ботів: метрики як у xyz ── */
a.bname{color:inherit;text-decoration:none}
a.bname:hover{color:var(--accent)}
.bmet{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-top:11px}
.met{background:var(--surface-2);border:1px solid var(--line);border-radius:13px;padding:9px 12px;min-width:0}
.met span{display:block;font-size:9px;color:var(--muted);font-weight:800;text-transform:uppercase;letter-spacing:.5px}
.met b{display:block;font-size:19px;font-weight:800;margin-top:4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.bacts{display:flex;gap:6px;align-items:center}
.bacts .open-link{margin-right:6px}
.tape{width:36px;height:36px;padding:0;border-radius:12px;display:grid;place-items:center;font-size:15px}
.tape.go{color:var(--green)}
.tape.danger{color:var(--red)}
@media(max-width:820px){.bmet{grid-template-columns:1fr 1fr}.bacts{justify-content:flex-start}}

/* ── Режими роботи бота ── */
.staterow{margin-top:8px;align-items:center}
.stateseg{display:inline-flex;flex-wrap:wrap;gap:2px;padding:3px;border:1px solid var(--line);border-radius:999px;background:var(--surface)}
.stateseg button{border:0;background:transparent;border-radius:999px;padding:6px 11px;font-size:12px;font-weight:700;color:var(--text-2);white-space:nowrap}
.stateseg button.on{background:var(--accent);color:var(--on-accent);opacity:1}
.stateseg button:disabled:not(.on){opacity:.45}
.tapes{display:inline-flex;gap:4px}
.tape.on{background:var(--accent);color:var(--on-accent);border-color:var(--accent);opacity:1}
.bacts{flex-wrap:wrap}
details.infodot{display:inline-block;vertical-align:middle}
details.infodot summary{list-style:none;cursor:pointer;width:22px;height:22px;border-radius:50%;border:1.5px solid var(--line-strong);display:grid;place-items:center;font:italic 700 12px/1 Georgia,"Times New Roman",serif;color:var(--text-2);user-select:none}
details.infodot summary::-webkit-details-marker{display:none}
details.infodot[open] summary,details.infodot summary:hover{border-color:var(--accent);color:var(--accent)}
.infopop{position:fixed;z-index:120;width:min(400px,calc(100vw - 32px));background:var(--panel-bg);border:1px solid var(--line);border-radius:14px;box-shadow:0 18px 50px var(--shadow-tint);padding:12px 14px;font-size:13px;font-weight:400;line-height:1.45;letter-spacing:0;text-transform:none;color:var(--text);text-align:left;white-space:normal}
.infopop .infohead{font-size:10px;color:var(--muted);font-weight:800;text-transform:uppercase;letter-spacing:.6px}
.infopop p{margin:8px 0 0}
/* перемикач режимів в один ряд: права колонка шапки ширша за примітку */
.hero-actions{max-width:none}
.hero-actions #state-note{max-width:360px}
.hero-actions .staterow{flex-wrap:nowrap;gap:8px;margin-top:2px}
.stateseg{flex-wrap:nowrap;align-items:center}
.stateseg button{line-height:1.2}
@media(max-width:700px){
.hero-actions,.hero-actions .staterow{max-width:100%}
.stateseg{overflow-x:auto;max-width:calc(100vw - 96px);scrollbar-width:none}
.stateseg::-webkit-scrollbar{display:none}
}

/* ── Ручна докупка ── */
.pdet-actions{gap:8px}
.padd{font-size:11px;padding:6px 10px}
.xb.man{margin-left:4px;background:var(--surface-2);color:var(--amber)}
.modal{position:fixed;inset:0;z-index:130;background:rgba(10,14,30,.45);display:grid;place-items:center;padding:16px}
.mcard{width:min(540px,100%);max-height:calc(100vh - 32px);overflow:auto;background:var(--panel-bg);border:1px solid var(--line);border-radius:18px;box-shadow:0 24px 60px var(--shadow-tint);padding:16px 18px}
.mhead{display:flex;align-items:center;justify-content:space-between;gap:10px}
.mhead h2{margin:0;font-size:17px}
.msub{font-size:12px;margin:4px 0 12px}
.mfield{display:grid;gap:5px;font-size:12px;color:var(--muted);font-weight:700}
.mfield input{font-size:16px;width:100%}
.mchips{display:flex;gap:6px;flex-wrap:wrap;margin:8px 0 12px}
.mgrid{grid-template-columns:repeat(2,minmax(0,1fr))}
.mwarn{margin-top:10px;padding:9px 11px;border-radius:11px;border:1px solid var(--line);background:var(--surface-2);font-size:12.5px;line-height:1.5}
.mcheck{display:flex;gap:8px;align-items:flex-start;margin-top:10px;font-size:12.5px;line-height:1.4}
.mactions{display:flex;justify-content:flex-end;gap:8px;margin-top:14px;flex-wrap:wrap}
/* закриті позиції — розміри як у xyz: дата вміщується в один рядок і на телефоні */
.chdr{font-size:8.5px}
.cc{font-size:10.5px}
.cpair{font-size:11.5px}
.cpair small{font-size:8.5px}
.csrc{font-size:8.5px}
.cpnl{font-size:11.5px}
.crow .cc:last-child{white-space:nowrap}

/* нотатка власника в шапці бота */
.botnote{font-size:12.5px;color:var(--text-2);margin:6px 0 0;display:flex;align-items:center;gap:6px;flex-wrap:wrap}
.botnote .icon-btn{font-size:12px;padding:2px 6px}
.noteedit{display:flex;gap:6px;margin-top:8px;flex-wrap:wrap;align-items:center}
.noteedit input{flex:1 1 320px;max-width:520px;font-size:13px}
#botdd a .nt{font-size:11px;overflow:hidden;text-overflow:ellipsis;max-width:180px}

/* пари: картки зверху й лічильник сигналів на плитці */
.pairs-sum{grid-template-columns:repeat(4,minmax(0,1fr))}
.pair{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;row-gap:3px;text-align:left}
.pair::after{grid-column:2;grid-row:1}
.pair .pt{grid-column:1;grid-row:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.pair .pn{grid-column:1/-1;grid-row:2;font-size:10px;font-weight:600;color:var(--muted)}
.pair.on .pn{color:var(--green)}
.pair.hot .pn{font-weight:800}
@media(max-width:820px){.pairs-sum{grid-template-columns:1fr 1fr}}
.pair .po{color:var(--amber);font-weight:800;margin-right:4px}

/* межі навантаження на маржу: вмикач + пороги під ним */
.mlim{position:relative;overflow:hidden;border:1px solid var(--line);border-radius:14px;background:var(--surface-2);padding:12px 12px 12px 15px;transition:background .15s,border-color .15s}
.mlim+.mlim{margin-top:10px}
.mlim::before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--line-strong);transition:background .15s}
.mlim.on{background:var(--surface);border-color:var(--line-strong)}
.mlim.on::before{background:var(--accent)}
.mlim .tgl{border:0;background:none;padding:0;border-radius:0}
.mlim .fgrid{margin-top:12px;padding-top:12px;border-top:1px solid var(--line)}

/* хвилі: блок у «Ризику» */
.wvtop{display:flex;align-items:center;gap:10px}
.wvtop .tgl{flex:1;min-width:0}
.wvset [data-show]>.levels:first-child{margin-top:12px;padding-top:12px;border-top:1px solid var(--line)}
.wvset #wavelevels{margin-top:8px}
.wvset #wavelevels:empty{display:none}
.wvfirst{justify-content:flex-end}
.wvfirst>span{padding-bottom:11px;font-weight:500;color:var(--muted)}

/* хвилі: статистика */
.wvgrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(340px,1fr));gap:14px;padding:0 16px 16px}
.wvside{border:1px solid var(--line);border-radius:14px;padding:12px;background:var(--surface);min-width:0}
.wvtitle{font-size:14px}
.wvnote{font-size:12px;color:var(--text-2);margin-top:8px}
.wvbar{height:6px;border-radius:999px;background:var(--surface-2);margin-top:6px;overflow:hidden}
.wvbar span{display:block;height:100%;background:var(--red);border-radius:999px}
.wvtbl{margin-top:10px;font-size:13px}
.wvtbl th{font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.5px;color:var(--muted);text-align:left;padding:6px 8px;border-bottom:1px solid var(--line)}
.wvtbl td{padding:8px;border-bottom:1px solid var(--line);font-variant-numeric:tabular-nums;white-space:nowrap}
.wvrow{cursor:pointer}
.wvrow:hover td{background:var(--surface-2)}
.wvrow td:first-child::before{content:"▸";display:inline-block;width:12px;color:var(--muted);transition:transform .15s}
.wvrow.open td:first-child::before{transform:rotate(90deg)}
.wvlast{font-size:10px;font-weight:700;color:var(--accent);background:var(--accent-soft);border-radius:999px;padding:1px 7px;margin-left:4px}
.wvout td{color:var(--muted)}
.wvsub td{background:var(--surface-2);white-space:normal}
.wvpairs{display:flex;flex-wrap:wrap;gap:6px}
.wvpair{font-size:12px;border:1px solid var(--line);border-radius:999px;padding:3px 9px;background:var(--surface)}
.wvpair.far{border-color:var(--amber);background:var(--amber-bg)}
.wvempty{padding:4px 0 8px}
@media(max-width:700px){.wvgrid{grid-template-columns:1fr;padding:0 10px 12px}.wvtbl .chide{display:none}}

/* ── xs: сторінка спотового бота ── */
.xs-toggle{display:flex;align-items:center;gap:10px;margin:16px 0 8px;font-weight:700}
.xs-toggle:first-child{margin-top:0}
.xs-help{font-size:12px;margin:8px 0 0}
.xs-grid td{vertical-align:middle}
.xs-grid input{min-width:90px}
