/* ============================================================
   CONTROL PANEL (khusus superadmin) — riwayat posisi, audit, chart.
   v2: tampilan dirapikan, font tidak bold, warna kolom mengikuti panel AUTOBOT.
   ============================================================ */
.side-link[hidden]{display:none !important;}

/* Warna teks dilembutkan (sama seperti panel posisi AUTOBOT) */
.cp-wrap, .cp-modal{
  --text-1:#B3BAC6; --text-2:#868F9D; --text-3:#606875;
  --buy:#52BF8A; --sell:#DB6B7B;
  --cp-entry:#D98E4C; --cp-blue:#6FA3E8; --cp-violet:#A590E6;
}
/* Semua teks tidak bold (judul pun ringan) */
.cp-wrap *, .cp-modal *{font-weight:400 !important;}
.cp-wrap h1, .cp-wrap h2, .cp-modal h3{font-weight:500 !important;}

.cp-wrap{padding:22px clamp(14px,2.5vw,32px) 40px; display:flex; flex-direction:column; gap:14px; min-width:0;}
.cp-head{display:flex; align-items:flex-end; justify-content:space-between; gap:14px; flex-wrap:wrap;}
.cp-head h1{font-size:26px; letter-spacing:-.01em; color:#D3D9E3;}
.cp-head p{margin-top:4px; font-size:12.5px; color:var(--text-3); max-width:78ch; line-height:1.5;}

/* ---- tombol ---- */
.cp-btn{padding:7px 13px; border-radius:9px; border:1px solid var(--border); background:var(--panel); color:var(--text-2); font:inherit; font-size:12px; cursor:pointer; white-space:nowrap; transition:border-color .15s,color .15s;}
.cp-btn:hover{border-color:var(--accent); color:var(--text-1);}
.cp-btn.primary{background:var(--accent-dim); border-color:var(--accent); color:#BBD2FA;}
.cp-btn.primary:hover{filter:brightness(1.15);}
.cp-btn.ghost{background:transparent;}
.cp-btn:disabled{opacity:.5; cursor:progress;}
.cp-btn:focus-visible, .cp-seg button:focus-visible, .cp-row-btn:focus-visible, .cp-filters :is(input,select):focus-visible{outline:2px solid var(--accent); outline-offset:2px;}

/* ---- filter: satu baris rapi, label kecil berwarna oranye seperti form AUTOBOT ---- */
.cp-filters{display:grid; grid-template-columns:repeat(auto-fit,minmax(128px,1fr)); gap:10px 12px; align-items:end; padding:12px 14px; border-radius:var(--radius-m); background:var(--panel); border:1px solid var(--border-soft);}
.cp-filters label{display:flex; flex-direction:column; gap:5px; font-size:10.5px; color:var(--warn); letter-spacing:.02em; min-width:0;}
.cp-filters :is(input,select){width:100%; padding:7px 9px; border-radius:8px; border:1px solid var(--border-soft); background:var(--panel-2); color:var(--text-1); font:inherit; font-size:12px; min-width:0; color-scheme:dark;}
.cp-filters :is(input,select)::placeholder{color:var(--text-3);}
.cp-filters .cp-btn{justify-self:start;}

/* ---- panel ---- */
.cp-panel{padding:16px 18px 18px; border-radius:var(--radius-m); background:var(--panel); border:1px solid var(--border-soft); min-width:0;}
.cp-panel h2{font-size:14px; color:#C5CCD8; display:flex; align-items:baseline; gap:10px; padding-left:10px; border-left:2px solid var(--warn);}
.cp-count{font-size:11.5px; color:var(--text-3);}
.cp-hint{margin-top:8px; font-size:11.5px; color:var(--text-3); max-width:90ch; line-height:1.5;}
.cp-hint b{color:var(--text-2);}

/* ---- kartu ringkasan: aksen warna di sisi kiri tiap kartu ---- */
.cp-cards{display:grid; grid-template-columns:repeat(auto-fit,minmax(138px,1fr)); gap:10px; margin-top:14px;}
.cp-card{padding:11px 13px 10px; border-radius:10px; background:var(--panel-2); border:1px solid var(--border-soft); border-left:2px solid var(--tone,var(--border)); min-width:0;}
.cp-card .l{font-size:10.5px; color:var(--text-3); letter-spacing:.02em;}
.cp-card .v{margin-top:7px; font-size:19px; line-height:1.15; font-variant-numeric:tabular-nums; color:var(--text-1); overflow:hidden; text-overflow:ellipsis; white-space:nowrap;}
.cp-card .s{margin-top:5px; font-size:10.5px; color:var(--text-3); white-space:nowrap; overflow:hidden; text-overflow:ellipsis;}
.cp-tone-blue{--tone:var(--cp-blue);} .cp-tone-up{--tone:var(--buy);} .cp-tone-down{--tone:var(--sell);}
.cp-tone-warn{--tone:var(--warn);} .cp-tone-entry{--tone:var(--cp-entry);} .cp-tone-violet{--tone:var(--cp-violet);}
.cp-up{color:var(--buy) !important;} .cp-down{color:var(--sell) !important;} .cp-warn{color:var(--warn) !important;}
.cp-entry{color:var(--cp-entry) !important;} .cp-blue{color:var(--cp-blue) !important;} .cp-violet{color:var(--cp-violet) !important;}
.cp-mute{color:var(--text-3) !important;}

/* ---- rincian per ---- */
.cp-breakdown-head{display:flex; align-items:center; justify-content:space-between; gap:10px; flex-wrap:wrap; margin-top:18px; font-size:11.5px; color:var(--text-3);}
.cp-seg{display:flex; flex-wrap:wrap; padding:3px; border-radius:10px; background:var(--panel-2); border:1px solid var(--border-soft);}
.cp-seg button{padding:5px 12px; border:0; border-radius:8px; background:transparent; color:var(--text-2); font:inherit; font-size:11.5px; cursor:pointer;}
.cp-seg button.active{background:var(--accent-dim); color:#D3D9E3;}

/* ---- tabel: padat, Inter 400, kolom rata tengah seperti AUTOBOT ---- */
.cp-tablewrap{margin-top:10px; overflow:auto; border:1px solid var(--border-soft); border-radius:10px;}
.cp-hist-wrap{max-height:min(640px,72vh);}
.cp-table{width:100%; border-collapse:collapse; font-size:11.5px; min-width:560px;}
.cp-table th{padding:8px 10px; text-align:center; font-size:10px; letter-spacing:.04em; text-transform:uppercase; color:var(--text-3); border-bottom:1px solid var(--border); white-space:nowrap; background:var(--panel-2); position:sticky; top:0; z-index:2;}
.cp-table td{padding:6px 10px; text-align:center; color:var(--text-1); font-family:var(--font-ui); font-variant-numeric:tabular-nums; font-feature-settings:"tnum" 1,"cv11" 1; border-bottom:1px solid var(--border-soft); white-space:nowrap; line-height:1.3;}
.cp-table th:first-child, .cp-table td:first-child{text-align:left;}
.cp-table tbody tr:last-child td{border-bottom:0;}
.cp-table tbody tr:hover td{background:rgba(91,155,255,.05);}
.cp-hist{min-width:1120px;}
.cp-hist tbody tr{cursor:pointer;}
.cp-hist td.t, .cp-hist th.t{text-align:center;}
.cp-hist td:first-child, .cp-hist th:first-child{text-align:left;}
.cp-empty{padding:22px 12px; text-align:center !important; color:var(--text-3); font-family:inherit !important;}

/* warna kolom — padanan panel AUTOBOT: Entry oranye, TP hijau, SL merah, fee merah */
.cp-table .c-entry{color:var(--cp-entry);}
.cp-table .c-tp{color:var(--buy);}
.cp-table .c-sl{color:var(--sell);}
.cp-table .c-fee{color:var(--sell);}
.cp-table .c-user{color:var(--cp-blue);}
.cp-table .c-coin{color:#C5CCD8;}
.cp-table .c-time, .cp-table .c-dur{color:var(--text-3);}
.cp-table .c-ok{color:var(--buy);} .cp-table .c-bad{color:var(--sell);}
.cp-table td.c-tick{font-size:13px; font-weight:700;}
.cp-table .c-hit::after{content:" \2713"; font-size:9.5px; color:var(--buy);}
.cp-table td.c-tp.dim{opacity:.55;}
.cp-table td.cp-up{color:var(--buy) !important;} .cp-table td.cp-down{color:var(--sell) !important;}

/* ---- pil/badge ---- */
.cp-badge{display:inline-block; padding:1px 8px; border-radius:999px; font-size:10.5px; font-family:inherit; background:var(--neutral-dim); color:var(--text-2);}
.cp-badge.virtual{background:rgba(37,99,235,.18); color:#7FB0F5;}
.cp-badge.real{background:rgba(220,38,38,.18); color:#F08A8A;}
.cp-badge.win{background:var(--buy-dim); color:var(--buy);}
.cp-badge.loss{background:var(--sell-dim); color:var(--sell);}
.cp-badge.open{background:var(--accent-dim); color:var(--accent);}
.cp-side{display:inline-block; padding:1px 7px; border-radius:5px; font-size:10px; letter-spacing:.02em;}
.cp-side.long{background:var(--buy-dim); color:var(--buy);}
.cp-side.short{background:var(--sell-dim); color:var(--sell);}
.cp-row-btn{padding:3px 10px; border-radius:7px; border:1px solid var(--border); background:transparent; color:var(--text-2); font:inherit; font-size:10.5px; cursor:pointer;}
.cp-row-btn:hover{border-color:var(--accent); color:var(--accent);}

.cp-pager{display:flex; align-items:center; justify-content:flex-end; gap:10px; margin-top:12px; font-size:11.5px; color:var(--text-3);}

.cp-dl{display:flex; flex-wrap:wrap; align-items:center; gap:14px; margin-top:12px;}
.cp-check{display:flex; align-items:center; gap:8px; font-size:12px; color:var(--text-2); cursor:pointer;}
.cp-dl-status{font-size:11.5px; color:var(--text-3);}
.cp-dl-status.err{color:var(--sell);}

/* ---- Modal chart ---- */
.cp-modal{position:fixed; inset:0; z-index:9000; display:flex; align-items:center; justify-content:center; padding:clamp(8px,2vw,24px); background:rgba(4,6,12,.72); backdrop-filter:blur(3px);}
.cp-modal[hidden]{display:none;}
.cp-modal-card{width:min(1120px,100%); max-height:100%; overflow:auto; padding:16px 18px 18px; border-radius:var(--radius-m); background:var(--panel); border:1px solid var(--border); box-shadow:0 24px 80px rgba(0,0,0,.5);}
.cp-modal-head{display:flex; align-items:flex-start; justify-content:space-between; gap:12px; flex-wrap:wrap;}
.cp-modal-head h3{font-size:17px; font-weight:700; color:var(--text-1);}
.cp-modal-sub{margin-top:4px; font-size:12px; color:var(--text-2);}
.cp-modal-tools{display:flex; align-items:center; gap:8px; flex-wrap:wrap;}
.cp-legend{display:flex; flex-wrap:wrap; gap:8px; margin:12px 0 8px;}
.cp-legend span{display:inline-flex; align-items:center; gap:6px; padding:4px 9px; border-radius:999px; background:var(--panel-2); border:1px solid var(--border-soft); font-size:11.5px; color:var(--text-1); font-family:var(--font-num);}
.cp-legend i{width:10px; height:3px; border-radius:2px; display:inline-block;}
.cp-chart{height:min(460px,56vh); min-height:280px; border-radius:10px; border:1px solid var(--border-soft); background:var(--bg-raised); overflow:hidden; position:relative;}
.cp-modal-msg{min-height:18px; margin-top:8px; font-size:12px; color:var(--text-2);}
.cp-modal-msg.err{color:var(--sell);}
.cp-facts{display:grid; grid-template-columns:repeat(auto-fill,minmax(150px,1fr)); gap:8px; margin-top:6px;}
.cp-facts div{padding:9px 11px; border-radius:9px; background:var(--panel-2); border:1px solid var(--border-soft); font-size:11.5px; color:var(--text-2); min-width:0;}
.cp-facts b{display:block; margin-top:4px; font-size:14px; font-family:var(--font-num); color:var(--text-1); overflow:hidden; text-overflow:ellipsis;}

@media (max-width:640px){
  .cp-head h1{font-size:22px;}
  .cp-filters{grid-template-columns:repeat(2,minmax(0,1fr));}
  .cp-cards{grid-template-columns:repeat(2,minmax(0,1fr));}
  .cp-chart{height:50vh;}
}

/* penyesuaian kecil */
.cp-row-btn{min-height:0; line-height:1.3;}
.cp-card .s{white-space:normal;}

/* Rincian per (Strategi / Coin / dst): tinggi dibatasi + scroll seperti Riwayat posisi */
.cp-group-wrap{max-height:min(420px,55vh);}
.cp-group{table-layout:fixed; min-width:760px;}
.cp-group th:not(:first-child), .cp-group td:not(:first-child){width:84px;}
.cp-group td.c-key{overflow:hidden; text-overflow:ellipsis; max-width:0;}

/* ---- Peringkat terbaik / terburuk ---- */
.cp-rank{margin-top:12px;}
.cp-rank[hidden]{display:none;}
.cp-rank-bar{display:flex; flex-wrap:wrap; align-items:center; gap:8px; margin-bottom:8px; font-size:11px; color:var(--text-3);}
.cp-rank-bar select{padding:3px 8px; border-radius:7px; border:1px solid var(--border-soft); background:var(--panel-2); color:var(--text-1); font:inherit; font-size:11.5px; color-scheme:dark;}
.cp-rank-grid{display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px;}
.cp-rank-box{padding:10px 12px; border-radius:10px; background:var(--panel-2); border:1px solid var(--border-soft); border-left:2px solid var(--buy); min-width:0;}
.cp-rank-box.worst{border-left-color:var(--sell);}
.cp-rank-title{font-size:11.5px; margin-bottom:6px; color:var(--buy);}
.cp-rank-box.worst .cp-rank-title{color:var(--sell);}
.cp-rank-row{display:grid; grid-template-columns:18px minmax(0,1fr) 62px 52px 76px 62px; gap:8px; align-items:center; padding:5px 0; border-top:1px solid var(--border-soft); font-size:11.5px; font-variant-numeric:tabular-nums;}
.cp-rank-row .n{color:var(--text-3);}
.cp-rank-row .k{color:#C5CCD8; overflow:hidden; text-overflow:ellipsis; white-space:nowrap;}
.cp-rank-row .m{color:var(--text-3); text-align:right; font-size:10.5px;}
.cp-rank-row .w, .cp-rank-row .p{text-align:right;}
.cp-rank-empty{padding:8px 0; font-size:11.5px; color:var(--text-3);}
@media (max-width:900px){ .cp-rank-grid{grid-template-columns:minmax(0,1fr);} }

/* ---- Reset all data + riwayat unduhan ---- */
.cp-tools{display:flex; align-items:center; gap:8px; flex-wrap:wrap;}
.cp-btn.danger{border-color:rgba(241,73,91,.55); color:var(--sell);}
.cp-btn.danger:hover{border-color:var(--sell); color:#fff; background:rgba(241,73,91,.18);}
.cp-btn.danger.solid{background:var(--sell); border-color:var(--sell); color:#fff;}
.cp-btn.danger.solid:hover{filter:brightness(1.1);}
.cp-btn.danger.solid:disabled{opacity:.35; cursor:not-allowed; filter:none;}
.cp-reset-card{width:min(620px,100%);}
.cp-reset-steps{margin:14px 0 6px; padding-left:20px; display:grid; gap:14px; font-size:12.5px; color:var(--text-1);}
.cp-reset-steps li::marker{color:var(--text-3);}
.cp-hint-inline{font-size:11px; color:var(--text-3);}
.cp-reset-steps code{padding:1px 6px; border-radius:5px; background:var(--panel-2); border:1px solid var(--border-soft); color:var(--sell);}
#cpResetConfirm{padding:7px 11px; width:140px; border-radius:9px; border:1px solid var(--border); background:var(--panel-2); color:var(--text-1); font:inherit; font-size:13px; letter-spacing:.08em;}
#cpResetConfirm:focus-visible{outline:2px solid var(--sell); outline-offset:2px;}
.cp-dl-status.ok{color:var(--buy);}
.cp-ex-wrap{max-height:340px; overflow:auto; margin-top:10px;}
.cp-ex{min-width:760px;}
.cp-ex td.c-file{font-family:var(--font-num); color:var(--text-1);}
.cp-ex .cp-badge.full{background:var(--buy-dim); color:var(--buy);}
.cp-ex .cp-badge.part{background:var(--panel-2); color:var(--text-3);}

/* ---- Bot farm ---- */
.cp-farm-form{margin-top:12px; display:flex; flex-direction:column; gap:10px;}
.cp-farm-row{display:flex; gap:12px; align-items:flex-start;}
.cp-farm-lbl{flex:0 0 74px; padding-top:5px; font-size:10.5px; color:var(--warn);}
.cp-chips{display:flex; flex-wrap:wrap; gap:6px;}
.cp-chip{display:inline-flex; align-items:center; gap:6px; padding:4px 10px; border-radius:999px; border:1px solid var(--border-soft); background:var(--panel-2); color:var(--text-2); font-size:11.5px; cursor:pointer;}
.cp-chip:has(input:checked){border-color:var(--accent); color:#D3D9E3; background:var(--accent-dim);}
.cp-chip input{accent-color:var(--accent); margin:0;}
.cp-farm-nums{display:grid; grid-template-columns:repeat(auto-fit,minmax(150px,1fr)); gap:10px 12px;}
.cp-farm-nums label{display:flex; flex-direction:column; gap:5px; font-size:10.5px; color:var(--warn);}
.cp-farm-nums input{width:100%; padding:7px 9px; border-radius:8px; border:1px solid var(--border-soft); background:var(--panel-2); color:var(--text-1); font:inherit; font-size:12px;}
.cp-farm{min-width:980px;}
.cp-farm td:nth-child(3){text-align:left;}
@media (max-width:640px){ .cp-farm-row{flex-direction:column; gap:6px;} }

/* ---- Tab Control Panel ---- */
.cp-tabs{display:flex; gap:4px; border-bottom:1px solid var(--border-soft);}
.cp-tab{padding:9px 16px; margin-bottom:-1px; border:0; border-bottom:2px solid transparent; background:transparent; color:var(--text-2); font:inherit; font-size:13px; cursor:pointer; white-space:nowrap;}
.cp-tab:hover{color:var(--text-1);}
.cp-tab.active{color:#D3D9E3; border-bottom-color:var(--accent);}
.cp-tab:focus-visible{outline:2px solid var(--accent); outline-offset:-2px; border-radius:6px;}
.cp-tab-count{margin-left:4px; font-size:10.5px; color:var(--text-3);}
.cp-tabpane{display:flex; flex-direction:column; gap:14px; min-width:0;}
.cp-tabpane[hidden]{display:none;}


/* ---- Bot farm: angka live (TP1-3), tombol Open, popup coin running ---- */
.cp-live{font-size:11px; color:var(--text-3); font-weight:400; display:inline-flex; align-items:center; gap:6px;}
.cp-live::before{content:""; width:6px; height:6px; border-radius:50%; background:var(--text-3);}
.cp-live.on{color:var(--buy);} .cp-live.on::before{background:var(--buy); animation:cp-pulse 1s ease-in-out infinite;}
.cp-live.err{color:var(--sell);} .cp-live.err::before{background:var(--sell);}
@keyframes cp-pulse{50%{opacity:.25;}}
.cp-open-btn{min-width:30px; padding:2px 10px; border-radius:999px; border:1px solid var(--border); background:var(--accent-dim); color:#BBD2FA; font:inherit; font-size:11.5px; cursor:pointer; font-variant-numeric:tabular-nums; transition:border-color .15s,background .15s;}
.cp-open-btn:hover{border-color:var(--accent); background:rgba(91,155,255,.22);}
.cp-open-btn:focus-visible{outline:2px solid var(--accent); outline-offset:2px;}
.cp-open-zero{color:var(--text-3);}
.cp-farm td.tp{font-variant-numeric:tabular-nums; color:var(--text-2); min-width:62px;}
.cp-farm td.tp.near{color:var(--cp-entry);}
.cp-farm td.tp.hit{color:var(--buy);}
.cp-farm td.tp.nil{color:var(--text-3);}
.cp-farm td.tp.tick-up{animation:cp-tick-up .9s ease-out;}
.cp-farm td.tp.tick-down{animation:cp-tick-down .9s ease-out;}
@keyframes cp-tick-up{0%{background:rgba(82,191,138,.28);} 100%{background:transparent;}}
@keyframes cp-tick-down{0%{background:rgba(219,107,123,.26);} 100%{background:transparent;}}
.cp-open{min-width:1020px;}
.cp-open tbody tr{cursor:pointer;}
.cp-open td.tpc{line-height:1.25; padding-top:5px; padding-bottom:5px;}
.cp-open td.tpc small{display:block; font-size:10px; color:var(--text-3);}
.cp-open td.tpc.hit{opacity:.6;} .cp-open td.tpc.hit small{color:var(--buy);}
.cp-open td.tpc.reach small{color:var(--buy);}
@media (prefers-reduced-motion:reduce){ .cp-live.on::before, .cp-farm td.tp.tick-up, .cp-farm td.tp.tick-down{animation:none;} }

/* ---- Tab Dashboard live ---- */
.cp-dash-head{display:flex; align-items:center; justify-content:space-between; gap:12px; flex-wrap:wrap;}
.cp-dash-cards{grid-template-columns:repeat(auto-fit,minmax(168px,1fr));}
.cp-dash-cards .v{transition:color .2s;}
.cp-dash-cards .v.flash-up{animation:cp-flash-up .8s ease-out;} .cp-dash-cards .v.flash-down{animation:cp-flash-down .8s ease-out;}
@keyframes cp-flash-up{0%{text-shadow:0 0 14px rgba(82,191,138,.9);} 100%{text-shadow:none;}}
@keyframes cp-flash-down{0%{text-shadow:0 0 14px rgba(219,107,123,.9);} 100%{text-shadow:none;}}
.cp-livechart-wrap{position:relative; margin-top:10px; border:1px solid var(--border-soft); border-radius:10px; background:var(--panel-2); overflow:hidden;}
.cp-livechart{display:block; width:100%; height:280px;}
.cp-livetip{position:absolute; top:8px; pointer-events:none; padding:6px 9px; border-radius:8px; background:rgba(8,11,18,.92); border:1px solid var(--border); font-size:11px; line-height:1.55; color:var(--text-1); white-space:nowrap; z-index:3;}
.cp-dash-legend{display:flex; flex-wrap:wrap; gap:6px 16px; margin-top:8px; font-size:11.5px; color:var(--text-2);}
.cp-dash-legend button{display:inline-flex; align-items:center; gap:6px; padding:2px 4px; border:0; background:transparent; color:inherit; font:inherit; cursor:pointer;}
.cp-dash-legend button i{width:14px; height:3px; border-radius:2px; background:var(--c);}
.cp-dash-legend button.off{opacity:.4;} .cp-dash-legend button b{font-weight:400; font-variant-numeric:tabular-nums;}
.cp-dash-tools{display:flex; gap:8px; flex-wrap:wrap;}
.cp-dash-tools :is(input,select){padding:6px 9px; border-radius:8px; border:1px solid var(--border-soft); background:var(--panel-2); color:var(--text-1); font:inherit; font-size:12px; color-scheme:dark;}
.cp-dash td.u{color:var(--cp-blue); text-align:left;}
.cp-dash{min-width:1240px;}
.cp-tab .cp-live{margin-left:6px; font-size:0;} .cp-tab .cp-live::before{margin:0;}
@media (prefers-reduced-motion:reduce){ .cp-dash-cards .v.flash-up, .cp-dash-cards .v.flash-down{animation:none;} }

/* ---- Winrate Per Strategy & Compact Layout Analitik + Bot Farm ---- */
.cp-sec-head{display:flex; align-items:flex-start; justify-content:space-between; gap:12px; flex-wrap:wrap;}
.cp-subnote{margin-top:4px; font-size:11.5px; color:var(--text-3); line-height:1.4;}
.cp-subnote b{color:var(--text-2);}
.cp-filters-compact{grid-template-columns:repeat(auto-fit,minmax(115px,1fr)); gap:8px 10px; padding:10px 14px;}
.cp-filter-act{display:flex; align-items:flex-end; justify-content:flex-end;}
.cp-cards-kpi{grid-template-columns:repeat(auto-fit,minmax(175px,1fr)); gap:10px; margin-top:12px;}
.cp-card-bar{height:4px; border-radius:999px; background:rgba(219,107,123,.25); overflow:hidden; margin-top:6px;}
.cp-card-bar > i{display:block; height:100%; background:var(--buy); border-radius:999px;}
.cp-wr-cell{display:inline-flex; align-items:center; gap:7px;}
.cp-wr-mini{width:38px; height:4px; border-radius:999px; background:rgba(219,107,123,.25); overflow:hidden; display:inline-block; vertical-align:middle;}
.cp-wr-mini > i{display:block; height:100%; background:var(--buy); border-radius:999px;}
.cp-sw-bar{display:flex; flex-wrap:wrap; align-items:center; gap:8px; margin:0; font-size:11px; color:var(--text-3);}
.cp-sw-bar select{padding:4px 8px; border-radius:7px; border:1px solid var(--border-soft); background:var(--panel-2); color:var(--text-1); font:inherit; font-size:11.5px; color-scheme:dark;}
.cp-sw-note{flex-basis:100%; font-size:10.5px;}
@media (min-width:900px){ .cp-sw-note{flex-basis:auto;} }
.cp-sw-wrap{max-height:min(480px,62vh);}
.cp-sw{min-width:980px;}
.cp-sw th, .cp-sw td{padding:7px 10px;}
.cp-sw th.r, .cp-sw td.r{text-align:right;}
.cp-sw td.c-key{color:#D3D9E3; max-width:190px; overflow:hidden; text-overflow:ellipsis;}
.cp-sw-n{color:var(--text-3); font-size:10.5px;}
.cp-pill{display:inline-block; min-width:46px; padding:1px 9px; border-radius:999px; font-size:11px; line-height:1.5; background:var(--neutral-dim,rgba(134,143,157,.14)); color:var(--text-2);}
.cp-pill.up{background:rgba(82,191,138,.14); color:var(--buy);}
.cp-pill.down{background:rgba(219,107,123,.14); color:var(--sell);}
.cp-pill.warn{background:rgba(217,142,76,.16); color:var(--cp-entry);}
.cp-dl-inline{margin-top:0; gap:10px;}

/* ---- Bot Farm Ringkas & Modern ---- */
.cp-farm-top-actions{display:flex; align-items:center; gap:10px; flex-wrap:wrap;}
.cp-farm-msg{font-size:11.5px; color:var(--buy);}
.cp-farm-kpis{grid-template-columns:repeat(auto-fit,minmax(170px,1fr)); margin-top:12px;}
.cp-farm-drawer{margin-top:12px; border:1px solid var(--border-soft); border-radius:10px; background:var(--panel-2); overflow:hidden;}
.cp-farm-summary{display:flex; align-items:center; justify-content:space-between; gap:12px; padding:9px 14px; cursor:pointer; user-select:none; list-style:none; font-size:12px; color:#D3D9E3; background:rgba(91,155,255,.06); transition:background .15s;}
.cp-farm-summary::-webkit-details-marker{display:none;}
.cp-farm-summary:hover{background:rgba(91,155,255,.11);}
.cp-farm-sum-title{display:inline-flex; align-items:center; gap:8px; color:#BBD2FA;}
.cp-farm-drawer[open] .cp-farm-summary{border-bottom:1px solid var(--border-soft);}
.cp-farm-sum-plan{font-size:11px; color:var(--text-3);}
.cp-farm-drawer .cp-farm-form{margin:0; padding:12px 14px; background:var(--panel);}
.cp-farm-grid{display:grid; grid-template-columns:minmax(260px,1fr) minmax(320px,1.4fr); gap:14px; align-items:start;}
.cp-farm-col-left{display:flex; flex-direction:column; gap:10px;}
.cp-farm-col-right{display:flex; flex-direction:column; gap:6px;}
.cp-farm-block{display:flex; flex-direction:column; gap:6px;}
.cp-farm-lbl-row{display:flex; align-items:center; justify-content:space-between; gap:8px;}
.cp-farm-lbl-row .cp-farm-lbl{padding:0; flex:initial;}
.cp-farm-mini-btns{display:inline-flex; align-items:center; gap:6px; font-size:10.5px; color:var(--text-3);}
.cp-link-btn{border:0; background:transparent; color:var(--cp-blue); font:inherit; font-size:10.5px; padding:0; cursor:pointer;}
.cp-link-btn:hover{text-decoration:underline;}
.cp-chips-dense{gap:5px;}
.cp-chips-dense .cp-chip{padding:3px 9px; font-size:11px;}
.cp-farm-drawer .cp-farm-nums{grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px 10px;}
.cp-farm-foot{display:flex; align-items:center; justify-content:space-between; gap:12px; flex-wrap:wrap; margin-top:4px; padding-top:10px; border-top:1px solid var(--border-soft);}
.cp-farm-toolbar{display:flex; align-items:center; justify-content:space-between; gap:10px; flex-wrap:wrap; margin-top:12px;}
.cp-farm-tools-right{display:flex; align-items:center; gap:8px; flex-wrap:wrap;}
.cp-farm-tools-right :is(input,select){padding:5px 9px; border-radius:8px; border:1px solid var(--border-soft); background:var(--panel-2); color:var(--text-1); font:inherit; font-size:11.5px; color-scheme:dark;}
.cp-farm-tools-right input{width:170px;}
.cp-farm-tablewrap{max-height:min(560px,68vh); margin-top:8px;}
@media (max-width:860px){
  .cp-farm-grid{grid-template-columns:minmax(0,1fr);}
}

/* ===== Kontras tombol/tab Control Panel: tiap tombol punya warna transparan sendiri, teks terang (kontras dgn background gelap) ===== */
.cp-tabs{gap:6px; padding-bottom:0;}
.cp-tab{border-radius:8px 8px 0 0; font-weight:600; border-bottom-width:3px;}
.cp-tab:nth-child(1){color:#7FE3B4; background:rgba(61,220,151,.10);}
.cp-tab:nth-child(2){color:#9DBEFF; background:rgba(91,155,255,.10);}
.cp-tab:nth-child(3){color:#FFCB7A; background:rgba(255,170,60,.10);}
.cp-tab:nth-child(1):hover{background:rgba(61,220,151,.18); color:#B6F5D8;}
.cp-tab:nth-child(2):hover{background:rgba(91,155,255,.18); color:#C6D9FF;}
.cp-tab:nth-child(3):hover{background:rgba(255,170,60,.18); color:#FFE0AE;}
.cp-tab:nth-child(1).active{background:rgba(61,220,151,.26); color:#E9FFF5; border-bottom-color:#3DDC97;}
.cp-tab:nth-child(2).active{background:rgba(91,155,255,.28); color:#F0F5FF; border-bottom-color:#5B9BFF;}
.cp-tab:nth-child(3).active{background:rgba(255,170,60,.28); color:#FFF6E6; border-bottom-color:#FFAA3C;}
.cp-tab .cp-tab-count{color:inherit; opacity:.75;}

.cp-seg{gap:4px;}
.cp-seg button{font-weight:600; border:1px solid transparent;}
.cp-seg button:nth-child(6n+1){color:#9DBEFF; background:rgba(91,155,255,.10);}
.cp-seg button:nth-child(6n+2){color:#C9B3FF; background:rgba(160,120,255,.10);}
.cp-seg button:nth-child(6n+3){color:#7FE3B4; background:rgba(61,220,151,.10);}
.cp-seg button:nth-child(6n+4){color:#FFCB7A; background:rgba(255,170,60,.10);}
.cp-seg button:nth-child(6n+5){color:#FF9DAA; background:rgba(255,92,108,.10);}
.cp-seg button:nth-child(6n+6){color:#7FDDE8; background:rgba(60,200,220,.10);}
.cp-seg button:hover{filter:brightness(1.25);}
.cp-seg button:nth-child(6n+1).active{background:rgba(91,155,255,.34); border-color:rgba(91,155,255,.7); color:#F0F5FF;}
.cp-seg button:nth-child(6n+2).active{background:rgba(160,120,255,.34); border-color:rgba(160,120,255,.7); color:#F6F0FF;}
.cp-seg button:nth-child(6n+3).active{background:rgba(61,220,151,.32); border-color:rgba(61,220,151,.7); color:#EAFFF5;}
.cp-seg button:nth-child(6n+4).active{background:rgba(255,170,60,.32); border-color:rgba(255,170,60,.7); color:#FFF6E6;}
.cp-seg button:nth-child(6n+5).active{background:rgba(255,92,108,.32); border-color:rgba(255,92,108,.7); color:#FFEFF1;}
.cp-seg button:nth-child(6n+6).active{background:rgba(60,200,220,.32); border-color:rgba(60,200,220,.7); color:#EAFBFD;}

.cp-farm-summary{background:rgba(255,170,60,.14); border:1px solid rgba(255,170,60,.45); border-radius:10px; color:#FFF2DC;}
.cp-farm-summary:hover{background:rgba(255,170,60,.24);}
.cp-farm-sum-title{color:#FFD58A; font-weight:700; font-size:13px;}
.cp-farm-sum-plan{color:#FFE2B0;}

/* ===== Animasi zoom: tab/tombol terpilih membesar (zoom in), kembali normal (zoom out) saat pindah ke tab lain ===== */
.cp-tab, .cp-seg button{
  transform:scale(1); transform-origin:center bottom; position:relative;
  transition:transform .28s cubic-bezier(.34,1.56,.64,1), background-color .22s ease, color .22s ease, border-color .22s ease, box-shadow .22s ease, filter .15s ease;
  will-change:transform;
}
.cp-seg button{transform-origin:center center;}
.cp-tab.active{transform:scale(1.1); z-index:2; box-shadow:0 -2px 14px rgba(255,255,255,.06);}
.cp-seg button.active{transform:scale(1.12); z-index:2; box-shadow:0 2px 12px rgba(0,0,0,.35);}
.cp-tabs{padding-top:6px;}
.cp-seg{padding:4px 5px;}
@media (prefers-reduced-motion: reduce){
  .cp-tab, .cp-seg button{transition:none;}
}

/* Kartu ringkasan di atas, tab "Rincian per" di bawah kartu */
.cp-group-bar{display:flex; align-items:center; gap:10px; flex-wrap:wrap; margin-top:12px;}
.cp-group-lbl{font-size:11.5px; color:var(--text-3);}

/* Kotak filter (Mode/Hasil/Strategi/Pengguna/Coin/Dari/Sampai) disembunyikan; elemen tetap ada agar skrip tidak error, filter = "Semua". */
#cpFilters{display:none !important;}
