:root{--background:#eef3ee;--foreground:#17211c;--panel:#fafcf9f0;--panel-solid:#fbfdf9;--line:#cfdccf;--line-strong:#bfcebf;--muted:#657269;--muted-strong:#4c5a51;--primary:#121c17;--primary-soft:#20955b;--danger:#b33a31;--danger-dark:#8f2b24;--success-bg:#def2e5;--success-border:#b7d7c1;--success-text:#1b6c3c;--warning-bg:#fff5cd;--warning-border:#eadca6;--warning-text:#6a5522;--error-bg:#fde3df;--error-border:#efb9b3;--error-text:#8a2d25;--shadow:0 18px 40px #1d302514;--shadow-strong:0 24px 70px #1d30252e}*{box-sizing:border-box;margin:0;padding:0}html{min-height:100%}html,body{max-width:100vw;overflow-x:hidden}body{background:linear-gradient(110deg, #cde5d6d1, #eef1eeeb 46%, #dee5e5d1), var(--background);color:var(--foreground);-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;min-height:100%;font-family:Arial,Helvetica,sans-serif}button,input,select{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.48}a{color:inherit;text-decoration:none}p{color:var(--muted);font-size:13px;font-weight:700;line-height:1.5}h1,h2,h3{color:#16211b;margin:0;line-height:1.15}h1{font-size:24px}h2{font-size:18px}h3{font-size:15px}.page{color:var(--foreground);max-width:1240px;min-height:100vh;margin:0 auto;padding:14px}.loginPage{place-items:center;min-height:100vh;padding:14px;display:grid}.topbar,.panel,.loginPanel,.credentialPanel,.notice,.modalPanel{background:var(--panel);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:8px}.topbar{justify-content:space-between;align-items:center;gap:20px;min-height:68px;margin-bottom:14px;padding:10px 14px 10px 16px;display:flex}.topbar>div:first-child{gap:3px;min-width:0;display:grid}.topbar h1{font-size:18px}.topbarActions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;display:flex}.topbarActions span{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;max-width:240px;font-size:12px;font-weight:800;overflow:hidden}.topbarCommandGroup{align-items:center;gap:6px;display:flex}.topbarCommandGroup .primaryButton,.topbarCommandGroup .dangerButton{white-space:nowrap;min-height:34px;padding:0 11px;font-size:11px}.eyebrow{color:var(--primary-soft);letter-spacing:.04em;text-transform:uppercase;margin:0 0 6px;font-size:11px;font-weight:800;line-height:1.2}.grid{grid-template-columns:1fr;align-items:start;gap:14px;display:grid}.grid>.panel{order:1}.grid>.stack{order:2;grid-template-columns:repeat(3,minmax(0,1fr));align-items:start;display:grid}.adminToolsHeader{grid-column:1/-1}.stack{gap:14px;display:grid}.panel{padding:16px}.panel>h2,.credentialPanel>h2,.loginPanel>h1{margin-bottom:6px}.loginPanel{gap:18px;width:min(100%,440px);padding:22px;display:grid}.loginPanel h1{font-size:22px}.form{gap:13px;margin-top:18px;display:grid}.formGrid{grid-template-columns:repeat(2,minmax(0,1fr));gap:13px;display:grid}.form label,.formGrid label{gap:6px;display:grid}.form span,.formGrid span{color:#66736b;letter-spacing:.03em;text-transform:uppercase;font-size:11px;font-weight:800}input,select{color:#16211b;background:#fff;border:1px solid #c7d5c7;border-radius:7px;outline:none;width:100%;height:38px;padding:0 11px;font-size:13px}input:focus,select:focus{border-color:#88b89c;box-shadow:0 0 0 3px #20955b1f}.primaryButton,.secondaryButton,.dangerButton{border:1px solid var(--line-strong);border-radius:7px;justify-content:center;align-items:center;min-height:38px;padding:0 14px;font-size:12px;font-weight:800;transition:background .14s,border-color .14s,color .14s,opacity .14s,transform .14s;display:inline-flex}.primaryButton{background:var(--primary);border-color:var(--primary);color:#fff}.secondaryButton{color:#15201a;background:#fbfdf9}.dangerButton{background:var(--danger);border-color:var(--danger);color:#fff}.primaryButton:hover:not(:disabled),.secondaryButton:hover:not(:disabled),.dangerButton:hover:not(:disabled){transform:translateY(-1px)}.primaryButton:hover:not(:disabled){background:#26332c}.secondaryButton:hover:not(:disabled){background:#f1f6ef;border-color:#95ad98}.dangerButton:hover:not(:disabled){background:var(--danger-dark)}.credentialPanel{background:linear-gradient(135deg,#def2e5f0,#fafcf9f0);margin-bottom:14px;padding:16px}.credentialGrid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:12px;display:grid}.tableWrap{scrollbar-color:#b8c6b8 transparent;scrollbar-width:thin;margin-top:14px;overflow-x:auto}table{border-collapse:collapse;width:100%;min-width:760px}th,td{text-align:left;vertical-align:top;border-bottom:1px solid #d8e3d7;padding:11px 12px}th{color:#66736b;letter-spacing:.03em;text-transform:uppercase;white-space:nowrap;font-size:11px;font-weight:800}td{color:#1d2a22;font-size:13px}td span{color:var(--muted)}tbody tr:hover{background:#f1f6efa3}code{border:1px solid var(--line);color:#1a2b20;overflow-wrap:anywhere;background:#f6f8f3;border-radius:7px;max-width:420px;padding:8px 9px;font-size:12px;display:block}.credentialCode{margin:8px 0}.botToolbar{justify-content:space-between;align-items:flex-end;gap:8px;margin-bottom:6px;display:flex}.botSearch{flex:1;gap:2px;min-width:220px;max-width:420px;display:grid}.botOwnerFilter,.botRuntimeFilter{gap:2px;min-width:180px;max-width:280px;display:grid}.botRuntimeFilter{min-width:150px;max-width:220px}.botSearch span,.botOwnerFilter span,.botRuntimeFilter span{color:#6a766e;letter-spacing:.04em;text-transform:uppercase;font-size:9px;font-weight:900;line-height:1}.botSearch input,.botOwnerFilter select,.botRuntimeFilter select{height:24px;min-height:24px;padding:0 8px;font-size:12px}.botSearchMeta{color:var(--muted);flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:6px;font-size:11px;font-weight:800;display:flex}.botSearchMeta .secondaryButton{min-height:24px;padding:0 8px;font-size:11px}.botTableWrap{border-top:1px solid #d8e3d7;padding-bottom:4px}.botTable{table-layout:fixed;min-width:940px}.botTableAdmin{min-width:940px}.botColName{width:180px}.botColStatus{width:70px}.botColRuntime{width:125px}.botColPnl,.botColLast,.botColActions{width:150px}.botTable th,.botTable td{padding:6px 8px}.botOwnerGroupRow td{background:#eef6ef;border-top:1px solid #d8e3d7;border-bottom:1px solid #d8e3d7;padding:5px 8px}.botOwnerGroupCell{color:#2e5c40;align-items:center;width:1200px;min-width:0;line-height:1.1;display:flex}.botOwnerGroupButton{color:inherit;cursor:pointer;text-align:left;background:0 0;border:0;align-items:center;gap:8px;width:100%;min-width:0;padding:0;display:flex}.botOwnerGroupButton:focus-visible{outline-offset:2px;border-radius:6px;outline:2px solid #85b894}.botOwnerGroupChevron{color:#27613d;flex:none;width:12px;font-size:12px;font-weight:900;line-height:1}.botOwnerGroupButton span:not(.botOwnerGroupChevron){text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:11px;font-weight:900;overflow:hidden}.botOwnerGroupButton strong{color:#27613d;background:#dcece0;border:1px solid #bdd4c1;border-radius:999px;flex:none;padding:3px 7px;font-size:10px;font-weight:900;line-height:1}.statisticsShell{gap:14px;display:grid}.statisticsToolbar,.statisticsSectionHeader{justify-content:space-between;align-items:center;gap:14px;display:flex}.statisticsToolbar h2,.statisticsSectionHeader h2{font-size:18px;line-height:1.2}.calendarActions{gap:8px;display:flex}.calendarActions button{min-width:40px}.botFilterPanel,.calendarPanel{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:14px}.botFilterGrid{grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:8px;margin-top:12px;display:grid}.botFilterItem{cursor:pointer;background:#f8fbf6;border:1px solid #d8e3d7;border-radius:8px;align-items:flex-start;gap:8px;min-width:0;padding:8px;display:flex}.botFilterItem input{margin-top:2px}.botFilterItem span{gap:2px;min-width:0;display:grid}.botFilterItem strong,.botFilterItem em{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.botFilterItem strong{color:#15201a;font-size:12px}.botFilterItem em{color:var(--muted);font-size:11px;font-style:normal;font-weight:800}.calendarPanel{overflow-x:auto}.calendarWeekdays,.calendarGrid{grid-template-columns:repeat(7,minmax(130px,1fr));min-width:910px;display:grid}.calendarWeekdays div{color:var(--muted);padding:0 8px 8px;font-size:11px;font-weight:900}.calendarGrid{border-top:1px solid #d8e3d7;border-left:1px solid #d8e3d7}.calendarDay{background:#fbfdf9;border-bottom:1px solid #d8e3d7;border-right:1px solid #d8e3d7;min-height:116px;padding:8px}.calendarDayMuted{background:#f1f6f0}.calendarDayNumber{color:#15201a;margin-bottom:8px;font-size:12px;font-weight:900}.calendarDayMuted .calendarDayNumber{color:#9aa79b}.calendarProfitList{gap:5px;display:grid}.calendarProfitRow{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:6px;display:grid}.calendarProfitRow span{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:11px;font-weight:800;overflow:hidden}.calendarProfitRow strong{border-radius:999px;padding:3px 7px;font-size:11px;font-weight:900}.calendarProfitPositive{color:#0f7a3d;background:#dff4e6}.calendarProfitNegative{color:#b42318;background:#ffe4e2}.calendarProfitNeutral{color:#59675c;background:#eef3ed}.tableHeaderWithTooltip{align-items:center;gap:6px;display:inline-flex;position:relative}.infoTooltip{display:inline-flex;position:relative}.infoTooltipButton{color:#27613d;cursor:help;background:#edf5ee;border:1px solid #bfd1c1;border-radius:999px;justify-content:center;align-items:center;width:18px;height:18px;padding:0;font-size:10px;font-weight:900;line-height:1;display:inline-flex}.infoTooltipBubble{color:#f7fbf6;opacity:0;pointer-events:none;text-transform:none;visibility:hidden;white-space:normal;z-index:20;background:#13241a;border:1px solid #ffffff1f;border-radius:8px;width:360px;max-width:min(380px,100vw - 48px);padding:10px 12px;font-size:12px;font-weight:700;line-height:1.5;transition:opacity .16s,transform .16s;position:absolute;top:calc(100% + 8px);left:50%;transform:translate(-50%)translateY(-4px);box-shadow:0 16px 42px #0d1e133d}.infoTooltip:hover .infoTooltipBubble,.infoTooltip:focus-within .infoTooltipBubble{opacity:1;visibility:visible;transform:translate(-50%)translateY(0)}.botTable td{overflow:hidden}.botTable strong{color:#15201a}.botTable td>span,.botTable td{overflow-wrap:break-word}.botIdentity{gap:2px;min-width:0;display:grid}.botNameLine{align-items:center;gap:6px;min-width:0;display:flex}.botIdentity strong{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:12.5px;line-height:1.15;overflow:hidden}.botIdentity>span{color:var(--muted);font-size:11px;font-weight:700;line-height:1.15}.keyTooltip{flex:none;display:inline-flex;position:relative}.keyTooltipButton{border:1px solid var(--line);color:#4f6156;cursor:help;letter-spacing:.02em;text-transform:uppercase;background:#f6f8f3;border-radius:999px;justify-content:center;align-items:center;height:17px;padding:0 6px;font-size:9px;font-weight:900;line-height:1;display:inline-flex}.keyTooltipBubble{color:#f7fbf6;opacity:0;overflow-wrap:anywhere;pointer-events:none;visibility:hidden;z-index:20;background:#13241a;border:1px solid #ffffff1f;border-radius:8px;width:320px;max-width:min(360px,100vw - 48px);padding:8px 10px;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:11px;font-weight:800;line-height:1.35;transition:opacity .16s,transform .16s;position:absolute;top:calc(100% + 8px);left:50%;transform:translate(-50%)translateY(-4px);box-shadow:0 16px 42px #0d1e133d}.keyTooltip:hover .keyTooltipBubble,.keyTooltip:focus-within .keyTooltipBubble{opacity:1;visibility:visible;transform:translate(-50%)translateY(0)}.botMetaList{gap:2px;min-width:0;margin-top:2px;display:grid}.botMetaRow{align-items:center;gap:6px;min-width:0;display:flex}.botMetaLabel{color:#6a766e;letter-spacing:.04em;text-transform:uppercase;flex:0 0 42px;font-size:9px;font-weight:900;line-height:1.1}.botMetaValue{color:#27352d;text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-size:11px;font-weight:800;line-height:1.15;overflow:hidden}.badgeStack{flex-direction:column;align-items:flex-start;gap:3px;display:flex}.tableActions{grid-template-columns:3fr 1fr;align-items:stretch;gap:4px;display:grid}.tableActions .secondaryButton{min-height:28px;padding:0 10px;font-size:11px}.tableActions .tableActionOrder{min-width:0}.tableActions .tableActionOrder:last-child{grid-column:1/-1}.tableActions .tableActionRotate{text-overflow:ellipsis;white-space:nowrap;padding:0 4px;font-size:10px;overflow:hidden}.directionRuntimeRow td{background:#f7faf6;border-bottom:1px solid #d8e3d7;padding:6px 8px 10px}.directionRuntimeGrid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.directionRuntimePanel{border:1px solid #d4dfd2;border-radius:8px;gap:8px;padding:9px;display:grid}.directionRuntimeBUY{background:#f2faf5;border-color:#b9dbc4}.directionRuntimeSELL{background:#fff7f4;border-color:#e3c4b9}.directionRuntimeHeader{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.directionRuntimeHeader>strong{font-size:13px}.directionFlag{border-radius:999px;padding:3px 7px;font-size:10px;font-weight:900}.directionFlagBE{color:#765500;background:#fff0bc}.directionFlagTrend{color:#5d2e91;background:#e9ddff}.directionRuntimeMetrics{grid-template-columns:repeat(4,minmax(0,1fr));gap:5px 12px;display:grid}.directionRuntimeMetrics span{color:var(--muted);gap:2px;font-size:10px;display:grid}.directionRuntimeMetrics strong{color:var(--text);font-size:12px}.directionRuntimeMetrics .metricPositive{color:#126332}.directionRuntimeMetrics .metricNegative{color:#9f2f28}.directionRuntimeMetrics .metricNeutral{color:#516058}.directionAddDca{justify-self:end;min-height:30px}.runtimeCell{gap:3px;min-width:150px;display:grid}.runtimeCell span{color:var(--muted);font-size:11px;font-weight:700;line-height:1.15}.runtimeStatePill{color:#183522;background:#eef6f0;border:1px solid #bdd8c2;border-radius:6px;justify-content:center;align-items:center;width:fit-content;min-height:20px;padding:2px 6px;font-size:11px;font-weight:900;line-height:1.1;display:inline-flex}.runtimeTopLine{white-space:nowrap;align-items:center;gap:6px;min-width:0;display:flex}.runtimeCell .runtimeMeta{color:#55655b;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.lastHeartbeatCell{gap:1px;min-width:0;line-height:1.15;display:grid}.lastHeartbeatTime,.latestTpLine{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.latestTpLine{color:#147c47;font-size:11px;font-weight:900}.autoMaInline,.metricRow{white-space:nowrap;flex-wrap:nowrap;justify-content:space-between;align-items:center;gap:4px;min-width:0;display:flex}.metricStack{gap:3px}.pnlPairRow{white-space:nowrap;flex-wrap:nowrap;align-items:center;gap:6px;min-width:0;display:flex}.compactMetricPair{white-space:nowrap;flex:1 1 0;align-items:center;gap:3px;min-width:0;display:inline-flex}.runtimeCell .metricPill{white-space:nowrap;border:1px solid #0000;border-radius:999px;justify-content:center;align-items:center;min-width:38px;min-height:19px;padding:2px 6px;font-size:10.5px;font-weight:900;line-height:1.1;display:inline-flex}.runtimeCell .metricPositive{color:#126332;background:#dff6e7;border-color:#95d8aa}.runtimeCell .metricNegative,.runtimeCell .metricDanger{color:#9f2f28;background:#fde4e2;border-color:#f0a5a1}.runtimeCell .metricNeutral{color:#516058;background:#eef1eb;border-color:#d2dcd0}.runtimeCell .metricInfo{color:#1e5f95;background:#e0f0ff;border-color:#9cc6ed}.badge{white-space:nowrap;border:1px solid #0000;border-radius:999px;align-items:center;min-height:19px;padding:2px 7px;font-size:10.5px;font-weight:800;line-height:1.1;display:inline-flex}.badgeActive{background:var(--success-bg);border-color:var(--success-border);color:var(--success-text)}.badgeConnected{color:#126332;background:#dff6e7;border-color:#91d8a7}.badgeWarning{color:#8c5b0d;background:#fff1d5;border-color:#efc66f}.badgeDanger{color:#9f2f28;background:#fde4e2;border-color:#f0a5a1}.badgeInactive{color:#536157;background:#eef1eb;border-color:#d2dcd0}.error,.success,.notice{border-radius:8px;margin:12px 0;padding:11px 14px;font-size:13px;font-weight:700}.error{background:var(--error-bg);border:1px solid var(--error-border);color:var(--error-text)}.success{background:var(--success-bg);border:1px solid var(--success-border);color:var(--success-text)}.notice{background:var(--warning-bg);border:1px solid var(--warning-border);color:var(--warning-text)}.actionPanel{max-width:620px;margin:0 auto}.bridgeStatusRow{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;margin-top:14px;display:flex}.commandGrid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:14px;display:grid}.commandGrid button{min-height:48px}.historyPanel{margin-top:14px}.modalOverlay{z-index:50;background:#121c1770;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.modalPanel{box-shadow:var(--shadow-strong);width:100%;max-width:640px;max-height:calc(100vh - 48px);padding:22px;overflow:auto}.ordersModalPanel{max-width:min(1180px,100vw - 48px)}.modalHeader{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.modalPanel>p:not(.eyebrow){margin-top:8px}.ordersTabs{align-items:center;gap:8px;margin-top:16px;display:flex}.orderDirectionFilters{align-items:center;gap:6px;margin-top:8px;display:flex}.ordersTab{border:1px solid var(--line-strong);color:#15201a;background:#fbfdf9;border-radius:7px;min-height:36px;padding:0 12px;font-size:12px;font-weight:800}.ordersTabActive{background:var(--primary);border-color:var(--primary);color:#fff}.ordersTableWrap{margin-top:14px}.ordersTable{table-layout:fixed;min-width:1140px}.ordersColTicket{width:110px}.ordersColType,.ordersColMagic{width:100px}.ordersColNumber{width:90px}.ordersColPnl{width:95px}.ordersColStatus{width:105px}.ordersColDate{width:170px}.ordersTable th,.ordersTable td{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.orderTypePill,.orderPnlValue{white-space:nowrap;border:1px solid #0000;border-radius:999px;justify-content:center;align-items:center;min-height:22px;padding:3px 8px;font-size:11px;font-weight:900;display:inline-flex}.orderTypeBuy{color:#126332;background:#dff6e7;border-color:#95d8aa}.orderTypeSell{color:#9f2f28;background:#fde4e2;border-color:#f0a5a1}.orderTypeNeutral{color:#516058;background:#eef1eb;border-color:#d2dcd0}.orderPnlValue.metricPositive{color:#126332;background:#dff6e7;border-color:#95d8aa}.orderPnlValue.metricNegative{color:#9f2f28;background:#fde4e2;border-color:#f0a5a1}.orderPnlValue.metricNeutral{color:#516058;background:#eef1eb;border-color:#d2dcd0}.emptyState{background:#f8fbf5;border:1px solid #d7e2d5;border-radius:8px;margin-top:14px;padding:14px}.modalSummary{margin-top:14px}.clientList{gap:10px;margin-top:16px;display:grid}.clientRow{background:#f8fbf5;border:1px solid #d7e2d5;border-radius:8px;gap:6px;padding:12px;display:grid}.clientRow span{color:var(--muted);font-size:12px;font-weight:700}.modalActions{justify-content:flex-end;gap:10px;margin-top:18px;display:flex}.loadingState{background:var(--panel-solid);color:#17211c;border:1px solid #d7e1d6;border-radius:8px;align-items:center;gap:10px;margin-top:12px;padding:9px 12px;font-size:13px;font-weight:800;display:inline-flex}.loadingState img{object-fit:contain;width:28px;height:28px}.loadingStateCentered{border-color:var(--line-strong);z-index:30;gap:14px;margin-top:0;padding:18px 22px;font-size:16px;position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 18px 44px #1d302524}.loadingStateCentered img{width:48px;height:48px}@media (max-width:920px){.page{padding:12px}.topbar,.topbarActions{flex-direction:column;align-items:flex-start}.grid,.grid>.stack,.formGrid,.credentialGrid,.commandGrid{grid-template-columns:1fr}.topbarActions{width:100%}.topbarCommandGroup{grid-template-columns:1fr;width:100%;display:grid}.topbarActions .secondaryButton,.topbarCommandGroup .primaryButton,.topbarCommandGroup .dangerButton{width:100%}.botToolbar,.botSearchMeta{flex-direction:column;align-items:stretch}.botSearch,.botOwnerFilter,.botRuntimeFilter{width:100%;min-width:0;max-width:none}.botSearchMeta .secondaryButton{width:100%}.directionRuntimeGrid,.directionRuntimeMetrics{grid-template-columns:1fr}}
