* { box-sizing: border-box; }
* { scrollbar-color: #64748b #101820; scrollbar-width: thin; }
*::-webkit-scrollbar { width: 12px; height: 12px; }
*::-webkit-scrollbar-track { background: #101820; }
*::-webkit-scrollbar-thumb { border: 2px solid #101820; border-radius: 999px; background: #64748b; }
*::-webkit-scrollbar-thumb:hover { background: #93a4b8; }
body { margin: 0; padding: 6px 18px 0px 18px; background: #0b0f12; color: #f4f7fb; font-family: Arial, Helvetica, sans-serif; }
body::after { content: "[CS26] Robô Trader - Copyright 2016-2026"; display: block; text-align: center; margin: 28px 0 8px; color: #7d8b9a; font-size: 12px; }
body:has(.inline-copyright)::after { display: none; }
a { color: inherit; }
.topbar { display: flex; justify-content: space-between; gap: 18px; align-items: flex-start; margin-bottom: 20px; }
.activity-unread { color: #fdba74; font-size: 1.28em; font-weight: 900; }
.activity-user-select { display: inline-flex; align-items: center; }
.activity-user-select label { display: inline-flex; align-items: center; gap: 6px; font-size: 12px; font-weight: 800; white-space: nowrap; }
.activity-user-select select { min-height: 30px; max-width: 130px; }
.topbar > div { min-width: 0; flex: 1 1 auto; }
.topbar:has(.remote-status-panel.visible) > div { flex: 0 1 520px; max-width: min(100%, 520px); }
h1 { margin: 0 0 6px; font-size: 30px; }
.topbar h1 { margin-bottom: 0; }
.title-row { display: flex; gap: 10px; align-items: flex-start; flex-wrap: wrap; }
.title-row h1 { margin-bottom: 0; min-width: 0; max-width: min(100%, 980px); line-height: 1.08; }
.title-row .button.small { margin-top: 0; flex: 0 0 auto; align-self: center; }
.title-refresh { color: inherit; text-decoration: none; cursor: pointer; display: inline; overflow-wrap: anywhere; }
.title-refresh:hover { color: inherit; text-decoration: none; }
h2 { margin: 0 0 14px; font-size: 20px; }
p { margin: 0; color: #cbd5df; font-size: 14px; }
.topbar > div > p { overflow-wrap: anywhere; line-height: 1.12; }
.topbar:has(.remote-status-panel.visible) > div > p { max-width: 420px; }
.meta-line { margin-top: 6px; color: #7d8b9a; font-size: 13px; }
.actions { display: flex; gap: 8px; flex-wrap: wrap; justify-content: flex-end; flex: 0 0 auto; max-width: 700px; }
.button { display: inline-flex; align-items: center; justify-content: center; min-height: 34px; padding: 7px 12px; border: 1px solid #334155; border-radius: 7px; background: #172331; color: #fff; font-family: inherit; font-size: 14px; line-height: 1.2; font-weight: 700; text-decoration: none; cursor: pointer; }
.button.danger { border-color: #7f1d1d; background: #3a1217; }
.button.danger:hover { background: #5f1b24; }
.button.small { min-height: 32px; padding: 6px 14px; font-size: 14px; }
.topbar .actions .button.small { min-height: 38px; padding: 12px 5px; font-size: 14px; }
.top-back-button { display: none !important; }
.button.icon-button { width: 38px; min-width: 38px; padding: 6px 0; }
.button.iconized-button { position: relative; width: 34px; min-width: 34px; padding: 6px 0; font-size: 0; }
.topbar .actions .button.iconized-button, .button.iconized-button.lang-button { width: 42px; min-width: 42px; min-height: 38px; }
.button.iconized-button .rank-icon { width: 22px; height: 22px; }
.topbar .actions .button.iconized-button .rank-icon { width: 28px; height: 28px; }
.button.iconized-button.lang-button .flag { width: 22px; height: 22px; }
.button-label-popover { position: fixed; z-index: 3000; top: 0; left: 0; display: none; width: max-content; min-width: 0; max-width: 220px; transform: none; padding: 7px 9px; border: 1px solid #36506b; border-radius: 7px; background: #0f1720; box-shadow: 0 12px 24px rgba(0, 0, 0, 0.35); color: #fff; font-size: 13px; line-height: 1.15; font-weight: 700; white-space: nowrap; pointer-events: none; }
.button-label-popover.visible { display: block; }
.rank-icon-home { width: 28px; height: 28px; -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M1.5 11.2 12 2.4l10.5 8.8M4.6 9.7v11.7h14.8V9.7M8.3 21.4v-7.9h7.4v7.9' fill='none' stroke='black' stroke-width='3.1' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E"); mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M1.5 11.2 12 2.4l10.5 8.8M4.6 9.7v11.7h14.8V9.7M8.3 21.4v-7.9h7.4v7.9' fill='none' stroke='black' stroke-width='3.1' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E"); }
.rank-icon-back { -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M5 4v16M19 12H7M12 7l-5 5 5 5' fill='none' stroke='black' stroke-width='2.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E"); mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M5 4v16M19 12H7M12 7l-5 5 5 5' fill='none' stroke='black' stroke-width='2.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E"); }
.rank-icon-forward { -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M19 4v16M5 12h12M12 7l5 5-5 5' fill='none' stroke='black' stroke-width='2.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E"); mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M19 4v16M5 12h12M12 7l5 5-5 5' fill='none' stroke='black' stroke-width='2.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E"); }
.rank-icon-open { -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M15.5 15.5 21 21M10.5 17a6.5 6.5 0 1 1 0-13 6.5 6.5 0 0 1 0 13Z' fill='none' stroke='black' stroke-width='2.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E"); mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M15.5 15.5 21 21M10.5 17a6.5 6.5 0 1 1 0-13 6.5 6.5 0 0 1 0 13Z' fill='none' stroke='black' stroke-width='2.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E"); }
.rank-icon-user { -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 12a4 4 0 1 0 0-8 4 4 0 0 0 0 8ZM4 21c1.4-4.2 4.1-6.4 8-6.4s6.6 2.2 8 6.4' fill='none' stroke='black' stroke-width='2.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E"); mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 12a4 4 0 1 0 0-8 4 4 0 0 0 0 8ZM4 21c1.4-4.2 4.1-6.4 8-6.4s6.6 2.2 8 6.4' fill='none' stroke='black' stroke-width='2.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E"); }
.rank-icon-ranking { -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M5 20V9h4v11M10 20V4h4v16M15 20v-7h4v7M3 20h18' fill='none' stroke='black' stroke-width='2.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E"); mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M5 20V9h4v11M10 20V4h4v16M15 20v-7h4v7M3 20h18' fill='none' stroke='black' stroke-width='2.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E"); }
.rank-icon-create { -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 5v14M5 12h14' fill='none' stroke='black' stroke-width='3.2' stroke-linecap='round'/%3E%3C/svg%3E"); mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 5v14M5 12h14' fill='none' stroke='black' stroke-width='3.2' stroke-linecap='round'/%3E%3C/svg%3E"); }
.rank-icon-compare { -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M5 6h14M5 12h14M5 18h14M8 4v4M16 10v4M11 16v4' fill='none' stroke='black' stroke-width='2.6' stroke-linecap='round'/%3E%3C/svg%3E"); mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M5 6h14M5 12h14M5 18h14M8 4v4M16 10v4M11 16v4' fill='none' stroke='black' stroke-width='2.6' stroke-linecap='round'/%3E%3C/svg%3E"); }
.rank-icon-compare-performance { -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M3 18 8 12l4 3 7-9M4 21h16' fill='none' stroke='black' stroke-width='2.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E"); mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M3 18 8 12l4 3 7-9M4 21h16' fill='none' stroke='black' stroke-width='2.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E"); }
.rank-icon-compare-simultaneous { -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M4 8h12M12 4l4 4-4 4M20 16H8M12 12l-4 4 4 4' fill='none' stroke='black' stroke-width='2.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E"); mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M4 8h12M12 4l4 4-4 4M20 16H8M12 12l-4 4 4 4' fill='none' stroke='black' stroke-width='2.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E"); }
.rank-icon-compare-params, .rank-icon-params { -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M5 7h14M5 12h14M5 17h14M9 5v4M15 10v4M11 15v4' fill='none' stroke='black' stroke-width='2.8' stroke-linecap='round'/%3E%3C/svg%3E"); mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M5 7h14M5 12h14M5 17h14M9 5v4M15 10v4M11 15v4' fill='none' stroke='black' stroke-width='2.8' stroke-linecap='round'/%3E%3C/svg%3E"); }
.rank-icon-show-params { -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M7 4v16M12 4v16M17 4v16M5 9h4M10 15h4M15 11h4' fill='none' stroke='black' stroke-width='2.45' stroke-linecap='round'/%3E%3Ccircle cx='7' cy='9' r='2' fill='none' stroke='black' stroke-width='2.45'/%3E%3Ccircle cx='12' cy='15' r='2' fill='none' stroke='black' stroke-width='2.45'/%3E%3Ccircle cx='17' cy='11' r='2' fill='none' stroke='black' stroke-width='2.45'/%3E%3C/svg%3E"); mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M7 4v16M12 4v16M17 4v16M5 9h4M10 15h4M15 11h4' fill='none' stroke='black' stroke-width='2.45' stroke-linecap='round'/%3E%3Ccircle cx='7' cy='9' r='2' fill='none' stroke='black' stroke-width='2.45'/%3E%3Ccircle cx='12' cy='15' r='2' fill='none' stroke='black' stroke-width='2.45'/%3E%3Ccircle cx='17' cy='11' r='2' fill='none' stroke='black' stroke-width='2.45'/%3E%3C/svg%3E"); }
.rank-icon-refine-optimization { -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M4 5h16l-6 7v5l-4 2v-7L4 5ZM16 4l4-2M18 8l4 1M17 12l3 3' fill='none' stroke='black' stroke-width='2.45' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E"); mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M4 5h16l-6 7v5l-4 2v-7L4 5ZM16 4l4-2M18 8l4 1M17 12l3 3' fill='none' stroke='black' stroke-width='2.45' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E"); }
.rank-icon-compare-selected { -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M4 5h6v6H4V5ZM14 5h6v6h-6V5ZM4 15h6v6H4v-6ZM14 15h6v6h-6v-6ZM5.5 8l1.5 1.5L9 7M15.5 18l1.5 1.5L19 17' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E"); mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M4 5h6v6H4V5ZM14 5h6v6h-6V5ZM4 15h6v6H4v-6ZM14 15h6v6h-6v-6ZM5.5 8l1.5 1.5L9 7M15.5 18l1.5 1.5L19 17' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E"); }
.rank-icon-compare-official { -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 3 20 6v6c0 4.5-3 7.7-8 9-5-1.3-8-4.5-8-9V6l8-3ZM8 12l2.5 2.5L16 9' fill='none' stroke='black' stroke-width='2.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E"); mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 3 20 6v6c0 4.5-3 7.7-8 9-5-1.3-8-4.5-8-9V6l8-3ZM8 12l2.5 2.5L16 9' fill='none' stroke='black' stroke-width='2.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E"); }
.rank-icon-compare-top { -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 3l2.5 5 5.5.8-4 3.9.9 5.5-4.9-2.6-4.9 2.6.9-5.5-4-3.9 5.5-.8L12 3ZM4 21h16' fill='none' stroke='black' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E"); mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 3l2.5 5 5.5.8-4 3.9.9 5.5-4.9-2.6-4.9 2.6.9-5.5-4-3.9 5.5-.8L12 3ZM4 21h16' fill='none' stroke='black' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E"); }
.rank-icon-compare-curves { -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M3 18c4-8 7-8 10 0 2.5-5 5-7 8-6M3 8c4 4 7 4 10 0 2.5 4 5 5 8 3' fill='none' stroke='black' stroke-width='2.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E"); mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M3 18c4-8 7-8 10 0 2.5-5 5-7 8-6M3 8c4 4 7 4 10 0 2.5 4 5 5 8 3' fill='none' stroke='black' stroke-width='2.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E"); }
.rank-icon-clear { -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M4 5h11l-4.5 5.2v6.3L7.5 18v-7.8L4 5ZM15.5 13.5l4 4M19.5 13.5l-4 4' fill='none' stroke='black' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E"); mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M4 5h11l-4.5 5.2v6.3L7.5 18v-7.8L4 5ZM15.5 13.5l4 4M19.5 13.5l-4 4' fill='none' stroke='black' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E"); }
.rank-icon-read-all { -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M4 5h10M4 10h10M4 15h6M15 16l2.5 2.5L22 13' fill='none' stroke='black' stroke-width='2.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E"); mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M4 5h10M4 10h10M4 15h6M15 16l2.5 2.5L22 13' fill='none' stroke='black' stroke-width='2.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E"); }
.rank-icon-first { -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M5 5v14M19 6l-7 6 7 6M12 6l-7 6 7 6' fill='none' stroke='black' stroke-width='2.7' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E"); mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M5 5v14M19 6l-7 6 7 6M12 6l-7 6 7 6' fill='none' stroke='black' stroke-width='2.7' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E"); }
.rank-icon-previous { -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M15 6l-7 6 7 6' fill='none' stroke='black' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E"); mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M15 6l-7 6 7 6' fill='none' stroke='black' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E"); }
.rank-icon-next { -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M9 6l7 6-7 6' fill='none' stroke='black' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E"); mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M9 6l7 6-7 6' fill='none' stroke='black' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E"); }
.rank-icon-last { -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M19 5v14M5 6l7 6-7 6M12 6l7 6-7 6' fill='none' stroke='black' stroke-width='2.7' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E"); mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M19 5v14M5 6l7 6-7 6M12 6l7 6-7 6' fill='none' stroke='black' stroke-width='2.7' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E"); }
.button.counted-button { display: inline-flex; flex-direction: column; gap: 1px; line-height: 1; }
.button.counted-button .button-count { display: block; font-size: 18px; line-height: 1; font-weight: 700; }
.button.counted-button .button-count.activity-unread { font-size: 20px; }
.button.counted-button .button-label { font-size: 13px; font-weight: 700; }
.button.disabled { opacity: 0.42; cursor: default; color: #9aa9b8; background: #111820; }
.rank-icon { display: inline-block; width: 24px; height: 24px; color: #fff; background: currentColor; -webkit-mask-position: center; mask-position: center; -webkit-mask-repeat: no-repeat; mask-repeat: no-repeat; -webkit-mask-size: contain; mask-size: contain; }
.rank-icon-chart { -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M3 20 8 7l5 6 8-11' fill='none' stroke='black' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E"); mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M3 20 8 7l5 6 8-11' fill='none' stroke='black' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E"); }
.rank-icon-opt { -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M11 2.8h2l.9 2.5 2.5 1.1 2.4-1.1 1.4 1.4-1.1 2.4 1.1 2.5 2.5.9v2l-2.5.9-1.1 2.5 1.1 2.4-1.4 1.4-2.4-1.1-2.5 1.1-.9 2.5h-2l-.9-2.5-2.5-1.1-2.4 1.1-1.4-1.4 1.1-2.4-1.1-2.5-2.5-.9v-2l2.5-.9 1.1-2.5-1.1-2.4 1.4-1.4 2.4 1.1 2.5-1.1.9-2.5Z' fill='none' stroke='black' stroke-width='2.35' stroke-linejoin='round'/%3E%3C/svg%3E"); mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M11 2.8h2l.9 2.5 2.5 1.1 2.4-1.1 1.4 1.4-1.1 2.4 1.1 2.5 2.5.9v2l-2.5.9-1.1 2.5 1.1 2.4-1.4 1.4-2.4-1.1-2.5 1.1-.9 2.5h-2l-.9-2.5-2.5-1.1-2.4 1.1-1.4-1.4 1.1-2.4-1.1-2.5-2.5-.9v-2l2.5-.9 1.1-2.5-1.1-2.4 1.4-1.4 2.4 1.1 2.5-1.1.9-2.5Z' fill='none' stroke='black' stroke-width='2.35' stroke-linejoin='round'/%3E%3C/svg%3E"); }
.rank-icon-remote-run { -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M8 17H6.8a4.8 4.8 0 0 1-.5-9.6A6.5 6.5 0 0 1 18.7 9 4 4 0 0 1 18 17h-2M10 8l6 4-6 4V8Z' fill='none' stroke='black' stroke-width='2.45' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E"); mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M8 17H6.8a4.8 4.8 0 0 1-.5-9.6A6.5 6.5 0 0 1 18.7 9 4 4 0 0 1 18 17h-2M10 8l6 4-6 4V8Z' fill='none' stroke='black' stroke-width='2.45' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E"); }

.remote-status-panel { display: none; flex: 0 1 360px; max-width: 360px; min-width: 300px; margin: 8px 0 0 auto; padding: 7px 8px; border: 1px solid #29405f; border-radius: 7px; background: #101923; color: #dbeafe; }
.remote-status-panel.visible { display: block; }
.remote-status-list { display: grid; gap: 7px; }
.remote-status-item { display: grid; grid-template-columns: minmax(0, 1fr) minmax(72px, 102px) 32px; align-items: center; gap: 6px; }
.remote-status-main { min-width: 0; display: grid; gap: 1px; font-size: 12px; }
.remote-status-main strong { min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-size: 12px; color: #93c5fd; }
.remote-status-main span { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.remote-status-item .button.small { width: 32px; min-width: 32px; padding: 6px 0; }
.remote-status-item .button.small .rank-icon { width: 18px; height: 18px; }
.remote-status-progress { width: 100%; height: 8px; border-radius: 999px; overflow: hidden; background: #1f2937; border: 1px solid #334155; }
.remote-status-progress span { display: block; width: 0; height: 100%; background: #38bdf8; transition: width .2s ease; }
@media (max-width: 760px) {
  .remote-status-panel { width: 100%; max-width: none; min-width: 0; margin: 8px 0 0; }
  .remote-status-item { grid-template-columns: minmax(0, 1fr) 88px 32px; gap: 7px; }
}
.rank-icon-real { width: 23px; height: 23px; -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M4 12a8 8 0 0 1 13.7-5.7L20 8.6M20 12a8 8 0 0 1-13.7 5.7L4 15.4' fill='none' stroke='black' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M20 4v4.6h-4.6M4 20v-4.6h4.6M12 8v5l3.5 2' fill='none' stroke='black' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E"); mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M4 12a8 8 0 0 1 13.7-5.7L20 8.6M20 12a8 8 0 0 1-13.7 5.7L4 15.4' fill='none' stroke='black' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M20 4v4.6h-4.6M4 20v-4.6h4.6M12 8v5l3.5 2' fill='none' stroke='black' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E"); }
.rank-icon-tree { -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Ccircle cx='12' cy='5' r='3' fill='none' stroke='black' stroke-width='2.4'/%3E%3Ccircle cx='6' cy='18' r='3' fill='none' stroke='black' stroke-width='2.4'/%3E%3Crect x='15' y='15' width='6' height='6' fill='none' stroke='black' stroke-width='2.4' rx='1'/%3E%3Cpath d='M12 8v4H6v3M12 12h6v3' fill='none' stroke='black' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E"); mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Ccircle cx='12' cy='5' r='3' fill='none' stroke='black' stroke-width='2.4'/%3E%3Ccircle cx='6' cy='18' r='3' fill='none' stroke='black' stroke-width='2.4'/%3E%3Crect x='15' y='15' width='6' height='6' fill='none' stroke='black' stroke-width='2.4' rx='1'/%3E%3Cpath d='M12 8v4H6v3M12 12h6v3' fill='none' stroke='black' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E"); }
.rank-icon-single { -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 3v11M7 10l5 5 5-5M5 18v3h14v-3' fill='none' stroke='black' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E"); mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 3v11M7 10l5 5 5-5M5 18v3h14v-3' fill='none' stroke='black' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E"); }
.rank-icon-multi { -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M3 21c0-7 2-13 8-16 4-2 8-2 10-1-.5 7-4 14-10 16-3 1-6 .5-8 1ZM5 19c4-5 8-8 13-11M6 12c2.2.8 4.4.8 6.5.1' fill='none' stroke='black' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E"); mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M3 21c0-7 2-13 8-16 4-2 8-2 10-1-.5 7-4 14-10 16-3 1-6 .5-8 1ZM5 19c4-5 8-8 13-11M6 12c2.2.8 4.4.8 6.5.1' fill='none' stroke='black' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E"); }
.rank-icon-migrate { -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cellipse cx='7' cy='7' rx='3.4' ry='1.9' fill='none' stroke='black' stroke-width='1.9'/%3E%3Cpath d='M3.6 7v4.2c0 1 1.5 1.9 3.4 1.9s3.4-.9 3.4-1.9V7M3.6 11.2v4.2c0 1 1.5 1.9 3.4 1.9s3.4-.9 3.4-1.9' fill='none' stroke='black' stroke-width='1.9' stroke-linecap='round'/%3E%3Cellipse cx='17' cy='15' rx='3.4' ry='1.9' fill='none' stroke='black' stroke-width='1.9'/%3E%3Cpath d='M13.6 15v4.2c0 1 1.5 1.9 3.4 1.9s3.4-.9 3.4-1.9V15' fill='none' stroke='black' stroke-width='1.9' stroke-linecap='round'/%3E%3Cpath d='M12 4.5c4.5 0 8 3 8 7.2M20 11.7l-2.3-2M20 11.7l1.6-2.6' fill='none' stroke='black' stroke-width='2.45' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E"); mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cellipse cx='7' cy='7' rx='3.4' ry='1.9' fill='none' stroke='black' stroke-width='1.9'/%3E%3Cpath d='M3.6 7v4.2c0 1 1.5 1.9 3.4 1.9s3.4-.9 3.4-1.9V7M3.6 11.2v4.2c0 1 1.5 1.9 3.4 1.9s3.4-.9 3.4-1.9' fill='none' stroke='black' stroke-width='1.9' stroke-linecap='round'/%3E%3Cellipse cx='17' cy='15' rx='3.4' ry='1.9' fill='none' stroke='black' stroke-width='1.9'/%3E%3Cpath d='M13.6 15v4.2c0 1 1.5 1.9 3.4 1.9s3.4-.9 3.4-1.9V15' fill='none' stroke='black' stroke-width='1.9' stroke-linecap='round'/%3E%3Cpath d='M12 4.5c4.5 0 8 3 8 7.2M20 11.7l-2.3-2M20 11.7l1.6-2.6' fill='none' stroke='black' stroke-width='2.45' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E"); }
.rank-icon-delete { -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M5 7h14M9 7V4h6v3M7 7l1 14h8l1-14M10 11v6M14 11v6' fill='none' stroke='black' stroke-width='2.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E"); mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M5 7h14M9 7V4h6v3M7 7l1 14h8l1-14M10 11v6M14 11v6' fill='none' stroke='black' stroke-width='2.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E"); }
.rank-icon-save { -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M5 3h12l2 2v16H5V3ZM8 3v6h8V3M8 21v-7h8v7' fill='none' stroke='black' stroke-width='2.4' stroke-linejoin='round'/%3E%3C/svg%3E"); mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M5 3h12l2 2v16H5V3ZM8 3v6h8V3M8 21v-7h8v7' fill='none' stroke='black' stroke-width='2.4' stroke-linejoin='round'/%3E%3C/svg%3E"); }
.rank-icon-browser { -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Crect x='3' y='5' width='18' height='13' rx='1.8' fill='none' stroke='black' stroke-width='2.4'/%3E%3Cpath d='M3 9h18M8 21h8M12 18v3' fill='none' stroke='black' stroke-width='2.4' stroke-linecap='round'/%3E%3Ccircle cx='6' cy='7' r='.7' fill='black'/%3E%3Ccircle cx='8.5' cy='7' r='.7' fill='black'/%3E%3C/svg%3E"); mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Crect x='3' y='5' width='18' height='13' rx='1.8' fill='none' stroke='black' stroke-width='2.4'/%3E%3Cpath d='M3 9h18M8 21h8M12 18v3' fill='none' stroke='black' stroke-width='2.4' stroke-linecap='round'/%3E%3Ccircle cx='6' cy='7' r='.7' fill='black'/%3E%3Ccircle cx='8.5' cy='7' r='.7' fill='black'/%3E%3C/svg%3E"); }
.rank-icon-phone { -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Crect x='7' y='2.8' width='10' height='18.4' rx='2.2' fill='none' stroke='black' stroke-width='2.5'/%3E%3Cpath d='M10.5 6h3M11 18h2' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round'/%3E%3C/svg%3E"); mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Crect x='7' y='2.8' width='10' height='18.4' rx='2.2' fill='none' stroke='black' stroke-width='2.5'/%3E%3Cpath d='M10.5 6h3M11 18h2' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round'/%3E%3C/svg%3E"); }
.flag { display: inline-grid; place-items: center; width: 18px; height: 18px; border-radius: 999px; overflow: hidden; background-size: cover; background-position: center; box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.18); }
.flag-us { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 60 60'%3E%3CclipPath id='c'%3E%3Ccircle cx='30' cy='30' r='30'/%3E%3C/clipPath%3E%3Cg clip-path='url(%23c)'%3E%3Cpath fill='%23fff' d='M0 0h60v60H0z'/%3E%3Cpath fill='%23b22234' d='M0 0h60v4.62H0zm0 9.23h60v4.62H0zm0 9.23h60v4.62H0zm0 9.23h60v4.62H0zm0 9.23h60v4.62H0zm0 9.23h60v4.62H0zm0 9.23h60V60H0z'/%3E%3Cpath fill='%233c3b6e' d='M0 0h28v32.3H0z'/%3E%3Cg fill='%23fff'%3E%3Ccircle cx='5' cy='5' r='1.25'/%3E%3Ccircle cx='14' cy='5' r='1.25'/%3E%3Ccircle cx='23' cy='5' r='1.25'/%3E%3Ccircle cx='9.5' cy='11' r='1.25'/%3E%3Ccircle cx='18.5' cy='11' r='1.25'/%3E%3Ccircle cx='5' cy='17' r='1.25'/%3E%3Ccircle cx='14' cy='17' r='1.25'/%3E%3Ccircle cx='23' cy='17' r='1.25'/%3E%3Ccircle cx='9.5' cy='23' r='1.25'/%3E%3Ccircle cx='18.5' cy='23' r='1.25'/%3E%3Ccircle cx='5' cy='29' r='1.25'/%3E%3Ccircle cx='14' cy='29' r='1.25'/%3E%3Ccircle cx='23' cy='29' r='1.25'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E"); }
.flag-br { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 60 60'%3E%3CclipPath id='c'%3E%3Ccircle cx='30' cy='30' r='30'/%3E%3C/clipPath%3E%3Cg clip-path='url(%23c)'%3E%3Cpath fill='%23009639' d='M0 0h60v60H0z'/%3E%3Cpath fill='%23ffdf00' d='M30 10 53 30 30 50 7 30z'/%3E%3Ccircle cx='30' cy='30' r='12' fill='%23002776'/%3E%3Cpath fill='none' stroke='%23fff' stroke-width='3' d='M17 27c8-3 18-2 27 4'/%3E%3C/g%3E%3C/svg%3E"); }
.layout-button { display: none; }
.layout-toggle-enabled .layout-button { display: inline-flex; }
.lang-button { gap: 6px; }
.filterbar { display: flex; gap: 4px; flex-wrap: wrap; align-items: center; }
.filterbar input, .filterbar select { min-height: 35px; border: 1px solid #334155; border-radius: 7px; background: #101820; color: #fff; padding: 8px 6px; }
.form-grid { display: grid; gap: 12px; max-width: 760px; }
.form-grid label { display: grid; gap: 6px; color: #adc2d7; font-weight: 700; }
.form-grid input, .form-grid select, .form-grid textarea { width: 100%; min-height: 40px; border: 1px solid #334155; border-radius: 7px; background: #101820; color: #fff; padding: 8px 10px; font: inherit; }
.form-grid textarea { min-height: 120px; resize: vertical; }
.confirmation-panel { margin-top: 32px; box-shadow: 0 18px 46px rgba(0, 0, 0, 0.34); }
.confirmation-panel .actions { max-width: none; justify-content: flex-start; }
.candidate-panel { width: min(100%, 860px); margin-left: auto; margin-right: auto; }
.candidate-form { max-width: none; }
.migration-panel { width: min(100%, 520px); margin-left: auto; margin-right: auto; }
.migration-panel h2 { text-align: center; }
.migration-panel .note { text-align: center; line-height: 1.45; }
.migration-form { justify-items: center; max-width: none; }
.migration-form label { width: min(100%, 180px); text-align: center; }
.migration-form .actions { width: 100%; justify-content: center; }
.migration-form .button { width: auto; min-width: 104px; }
.ranking-filterbar { display: grid; grid-template-columns: minmax(0, 1fr) auto; justify-content: space-between; align-items: flex-start; }
.filter-left { display: flex; gap: 3px; flex-wrap: wrap; align-items: center; min-width: 750px; align-content: flex-start; }
.ranking-filterbar .filter-left select { width: auto; min-width: 30px; max-width: 220px; field-sizing: content; padding: 8px 2px 8px 4px; font-size: 12px; }
.filter-left select.filter-select-ready { max-width: min(var(--filter-select-open-width), 220px); }
.filter-left select.filter-select-ready:focus, .filter-left select.filter-select-ready.filter-select-open { width: min(var(--filter-select-open-width), 220px); }
.tree-filterbar .filter-left select[name="setup"], .tree-filterbar .filter-left select.tree-compare-select, .tree-filterbar .filter-left select[name="setup"].filter-select-ready, .tree-filterbar .filter-left select.tree-compare-select.filter-select-ready, .tree-filterbar .filter-left select[name="setup"].filter-select-ready:focus, .tree-filterbar .filter-left select.tree-compare-select.filter-select-ready:focus, .tree-filterbar .filter-left select[name="setup"].filter-select-open, .tree-filterbar .filter-left select.tree-compare-select.filter-select-open { width: 68px; min-width: 68px; max-width: 68px; }
.broker-field { display: grid; grid-template-columns: minmax(160px, 180px) 96px; gap: 8px; align-items: center; justify-content: end; margin-left: auto; }
.broker-field input { width: 96px; text-align: right; justify-self: end; }
.broker-note { min-height: 34px; display: flex; flex-direction: column; justify-content: center; margin: 0; text-align: right; line-height: 1.15; align-self: center; }
.broker-note a { text-decoration: underline; }
.broker-note a:hover { text-decoration: underline; }
.inline-form { display: inline-flex; justify-content: center; align-items: center; }
.inline-form select { min-height: 32px; border: 1px solid #334155 !important; border-radius: 7px; background: #101820 !important; color: #fff !important; box-shadow: inset 0 0 0 1000px #101820; padding: 6px 28px 6px 8px; appearance: none; -webkit-appearance: none; color-scheme: dark; }
.inline-form input { min-height: 32px; max-width: 180px; border: 1px solid #334155; border-radius: 7px; background: #101820; color: #fff; padding: 6px 8px; }
.inline-form select:hover, .inline-form select:active, .inline-form select:focus { outline: 2px solid #2563eb; outline-offset: 1px; background: #101820 !important; color: #fff !important; box-shadow: inset 0 0 0 1000px #101820; }
.inline-form option, .inline-form option:checked { background: #101820 !important; color: #fff !important; }
.review-menu { position: relative; width: 88px; }
.review-menu summary { display: flex; align-items: center; justify-content: center; height: 37px; min-height: 37px; padding: 8px 8px; border: 1px solid #334155; border-radius: 7px; background: #101820; color: #fff; cursor: pointer; list-style: none; white-space: nowrap; box-sizing: border-box; }
.review-menu summary::-webkit-details-marker { display: none; }
.review-menu[open] summary { outline: 2px solid var(--mark-border, #2563eb); outline-offset: 1px; }
.review-menu div { position: absolute; z-index: 20; top: 36px; left: 0; min-width: 112px; padding: 4px; border: 1px solid #334155; border-radius: 7px; background: #101820; box-shadow: 0 12px 24px rgba(0, 0, 0, 0.35); }
.review-option { display: block; width: 100%; padding: 5px 7px; border: 1px solid transparent; border-radius: 5px; background: transparent; color: #fff; text-align: left; cursor: pointer; }
.setup-mark-form { position: relative; display: inline-block; }
.setup-mark-form.with-shared-marks .review-menu summary { padding-bottom: 14px; }
.shared-mark-chips { position: absolute; z-index: 3; left: 5px; right: 5px; bottom: 4px; display: flex; gap: 2px; }
.shared-mark-chip { position: relative; flex: 1 1 0; min-width: 7px; height: 7px; padding: 0; border: 1px solid var(--mark-border); border-radius: 4px; background: var(--mark-border); opacity: 0.56; cursor: pointer; }
.shared-mark-chip:hover, .shared-mark-chip:focus-visible { z-index: 181; opacity: 1; outline: 1px solid #e5f0ff; outline-offset: 1px; }
.shared-mark-popover { position: absolute; left: 50%; top: calc(100% + 7px); z-index: 180; display: none; min-width: 118px; transform: translateX(-50%); padding: 7px 8px; border: 1px solid #36506b; border-radius: 7px; background: #0f1720; box-shadow: 0 12px 28px rgba(0, 0, 0, 0.4); color: #dbeafe; text-align: center; pointer-events: none; }
.shared-mark-popover.floating-popover { position: fixed; left: 0; top: 0; z-index: 2200; transform: none; }
.shared-mark-popover.floating-popover.floating-visible { display: block; }
.shared-mark-popover b { display: block; margin-bottom: 5px; color: #fff; font-size: 12px; line-height: 1.1; }
.shared-mark-popover-status { display: block; padding: 5px 7px; border: 1px solid var(--mark-border); border-radius: 5px; background: var(--mark-bg); color: var(--mark-text); font-size: 11px; font-weight: 900; line-height: 1; }
.shared-mark-chip:hover .shared-mark-popover:not(.floating-popover), .shared-mark-chip:focus-visible .shared-mark-popover:not(.floating-popover) { display: block; }
.review-status-none { --mark-bg: #101820; --mark-border: #334155; --mark-text: #fff; }
.review-status-aprovado { --mark-bg: #17380f; --mark-border: #8cff00; --mark-text: #f7fee7; }
.review-status-favorito { --mark-bg: rgba(22, 163, 74, 0.24); --mark-border: #16a34a; --mark-text: #dcfce7; }
.review-status-observar { --mark-bg: rgba(202, 138, 4, 0.24); --mark-border: #ca8a04; --mark-text: #fef3c7; }
.review-status-revisar { --mark-bg: rgba(234, 88, 12, 0.24); --mark-border: #ea580c; --mark-text: #ffedd5; }
.review-status-descartado { --mark-bg: rgba(220, 38, 38, 0.24); --mark-border: #dc2626; --mark-text: #fee2e2; }
.review-menu summary[class*="review-status-"], .review-option[class*="review-status-"] { border-color: var(--mark-border); background: var(--mark-bg); color: var(--mark-text); }
.inline-form select.review-filter-select[class*="review-status-"] { border-color: var(--mark-border) !important; background: var(--mark-bg) !important; color: var(--mark-text) !important; box-shadow: inset 0 0 0 1000px var(--mark-bg); }
.inline-form select.review-filter-select option[class*="review-status-"] { background: var(--mark-bg) !important; color: var(--mark-text) !important; }
.review-option:hover, .review-option.active { box-shadow: inset 0 0 0 999px rgba(255, 255, 255, 0.08); }
.panel { border: 1px solid #27313b; border-radius: 8px; background: #151a1f; padding: 20px; margin-bottom: 20px; overflow-x: visible; }
.warning-panel { border-color: #8a5a22; background: rgba(255, 189, 102, 0.08); }
.compact-chart { padding-bottom: 14px; }
.archived-chart-placeholder { min-height: 260px; border: 1px solid #2d3a45; border-radius: 7px; background: #10161c; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 14px; color: #adc2d7; text-align: center; }
.archived-chart-placeholder.performance { position: relative; min-height: 360px; overflow: hidden; }
.archived-chart-placeholder.performance::before { content: ""; position: absolute; inset: 24px; border: 1px solid rgba(148, 163, 184, 0.18); border-radius: 6px; background: linear-gradient(to top, rgba(148, 163, 184, 0.12) 1px, transparent 1px) 0 0 / 100% 25%, linear-gradient(135deg, transparent 0 18%, rgba(54, 163, 255, 0.18) 18% 19%, transparent 19% 37%, rgba(54, 163, 255, 0.28) 37% 38%, transparent 38% 58%, rgba(21, 201, 95, 0.22) 58% 59%, transparent 59% 100%); opacity: 0.5; filter: grayscale(1); }
.archived-chart-placeholder.performance > * { position: relative; z-index: 1; }
.archived-chart-placeholder strong { display: block; margin-bottom: 5px; color: #e5f0ff; font-size: 16px; }
.archived-chart-placeholder span { display: block; max-width: 360px; font-size: 13px; line-height: 1.35; }
.panel-title { display: flex; justify-content: space-between; gap: 12px; align-items: center; margin-bottom: 12px; }
.panel-title h2 { margin-bottom: 0; }
.performance-cut-select { min-height: 38px; min-width: 82px; border: 1px solid #334155; border-radius: 7px; background: #101820; color: #fff; padding: 8px 26px 8px 9px; font: inherit; color-scheme: dark; }
.performance-cut-select:focus { outline: 2px solid #2563eb; outline-offset: 1px; }
.panel-heading-row { display: inline-flex; align-items: center; gap: 10px; flex-wrap: wrap; min-width: 0; }
.panel-title .heading-actions { justify-content: flex-start; max-width: none; }
.compare-subtitle + p { display: none; }
.compare-actions { display: inline-flex; gap: 8px; align-items: center; }
.panel-title .pass-actions { flex: 1 1 auto; max-width: none; }
.panel-title .pass-actions .button { white-space: nowrap; }
.pass-detail-actions { align-items: center; flex-wrap: nowrap; }
.pass-detail-actions .inline-form { display: inline-flex; margin: 0; }
.pass-detail-actions .review-menu { width: 100px; }
.pass-detail-actions .review-menu summary { display: inline-flex; width: 100%; align-items: center; justify-content: center; }
.pass-detail-actions .button.icon-button { width: 42px; min-width: 42px; min-height: 36px; padding: 0; }
.chart-title-row { display: flex; justify-content: space-between; gap: 14px; align-items: flex-start; margin-bottom: 14px; }
.chart-title-row h2 { margin-bottom: 0; }
.chart-metrics { display: flex; justify-content: flex-end; gap: 8px; flex-wrap: wrap; }
.chart-metric { min-width: 126px; padding: 7px 9px; border: 1px solid #2d3a45; border-radius: 7px; background: #171d23; text-align: left; }
.chart-metric span { display: block; margin-bottom: 3px; color: #adc2d7; font-size: 11px; line-height: 1.2; }
.chart-metric strong { display: block; color: #fff; font-size: 15px; line-height: 1.15; }
.top-pagination { display: inline-flex; gap: 8px; align-items: center; margin-left: auto; }
.top-pagination .button-label-popover, .pagination-footer .button-label-popover { display: none !important; }
.pagination-footer { display: flex; justify-content: space-between; gap: 12px; align-items: center; margin-top: 14px; }
.pagination-footer .inline-copyright { flex: 1 1 auto; text-align: center; color: #7d8b9a; font-size: 12px; }
.chart-subtitle { margin-top: 20px; }
.chart-subtitle.first { margin-top: 0; }
.summary-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(130px, 1fr)); gap: 10px; margin-bottom: 16px; }
.summary-grid div { border: 1px solid #2d3a45; border-radius: 7px; background: #171d23; padding: 10px 12px; }
.summary-grid span { display: block; margin-bottom: 6px; color: #adc2d7; font-size: 12px; }
.summary-grid strong { display: block; font-size: 16px; overflow-wrap: anywhere; }
.tester-summary-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(330px, 1fr)); gap: 14px; }
.tester-summary-card { border: 1px solid #2d3a45; border-radius: 8px; background: #11171d; overflow: hidden; }
.tester-summary-card h3 { margin: 0; padding: 10px 12px; background: #20262d; color: #dbeafe; font-size: 15px; }
.tester-summary-card table { font-size: 13px; }
.tester-summary-card th { position: static; width: 62%; background: transparent; color: #cbd5df; text-align: left; }
.tester-summary-card td { width: 38%; }
.stats-grid { display: flex; flex-wrap: nowrap; align-items: stretch; gap: 12px; width: 100%; margin-bottom: 20px; overflow: hidden; }
.license-toolbar { margin-bottom: 14px; }
.license-filterbar { display: none; margin-bottom: 16px; flex-wrap: nowrap; overflow-x: auto; }
.license-filterbar input, .license-filterbar select { width: 82px; min-width: 82px; }
.license-filterbar select[name="client"] { width: 150px; min-width: 150px; }
.license-filterbar select[name="broker"] { width: 68px; min-width: 68px; }
.license-filterbar select[name="expiration"] { width: 108px; min-width: 108px; }
.license-filterbar select[name="commission"] { width: 58px; min-width: 58px; }
.license-filterbar select[name="top"] { width: 68px; min-width: 68px; }
.license-filterbar select[name="challenge"], .license-filterbar select[name="update_setup"], .license-filterbar select[name="create_setup"] { width: 74px; min-width: 74px; }
.license-user-filterbar { margin-bottom: 10px; }
.license-user-filterbar select[name="user_id"], .license-user-filterbar select[name="client"] { width: 150px; min-width: 150px; }
.license-user-filterbar input[name="user_name"] { width: 220px; min-width: 220px; }
.license-user-filterbar select { width: 86px; min-width: 86px; }
.license-compact-filterbar select { width: auto; min-width: 30px; max-width: 220px; field-sizing: content; padding: 8px 2px 8px 4px; transition: width 120ms ease; font-size: 12px; }
.license-user-filterbar.license-compact-filterbar select[name="user_id"], .license-user-filterbar.license-compact-filterbar select[name="client"], .license-filterbar.license-compact-filterbar select[name="client"] { width: auto; min-width: 54px; }
.license-compact-filterbar select.filter-select-ready { max-width: min(var(--filter-select-open-width), 220px); }
.license-user-filterbar.license-compact-filterbar select.filter-select-ready[name="user_id"], .license-user-filterbar.license-compact-filterbar select.filter-select-ready[name="client"], .license-filterbar.license-compact-filterbar select.filter-select-ready[name="client"] { width: var(--filter-select-width); min-width: 54px; }
.license-compact-filterbar select.filter-select-ready:focus, .license-compact-filterbar select.filter-select-ready.filter-select-open { width: min(var(--filter-select-open-width), 220px); }
.license-user-form { display: none; }
.license-table-actions { display: flex; justify-content: space-between; gap: 12px; align-items: center; margin-bottom: 14px; }
.license-grid { grid-template-columns: repeat(auto-fit, minmax(170px, 1fr)); align-items: stretch; }
.license-grid .stat:first-child { grid-column: span 2; }
.split { display: grid; grid-template-columns: repeat(2, minmax(280px, 1fr)); gap: 20px; margin-bottom: 20px; }
.stat { flex: 0.72 1 92px; min-width: 0; border: 1px solid #2d3a45; border-radius: 8px; background: #171d23; padding: 16px 10px; min-height: 86px; overflow: hidden; }
.stats-grid .stat:first-child { flex: 0.86 1 150px; }
.stats-grid .stat:last-child { flex: 0 0 224px; min-width: 224px; }
.stat span { display: block; margin-bottom: 10px; color: #adc2d7; font-size: 14px; white-space: nowrap; }
.stat strong { font-size: 22px; overflow-wrap: normal; }
.stat strong.stat-lines { display: block; font-size: 14px; line-height: 1.45; }
.stat.ontester-stat { flex: 0.95 1 176px; min-width: 0; }
.stat.ontester-stat + .stat { flex: 0.75 1 104px; }
.compare-stats .stat { flex: 1 1 135px; padding: 16px 12px; min-height: 130px; }
.compare-stats .stat.period-summary-stat { flex: 0 1 135px; }
.compare-stats .stat.setup-summary-stat { flex: 0 1 145px; }
.compare-stats .stat > span { margin-bottom: 0; color: #fff; font-size: 16px; }
.compare-stats .stat span { margin-bottom: 0; color: #fff; }
.compare-stats .stat strong.stat-lines { color: #fff; font-size: 16px; font-weight: 900; line-height: 1.7; }
.compare-stats .stat.ontester-stat { flex: 1.2 1 205px; }
.compare-stats .stat.compare-score-stat { flex: 0 0 350px; min-width: 350px; }
.compare-stats .stat.compare-score-stat strong.stat-lines { display: grid; gap: 3px; }
.compare-stats .score-value { width: 118px; min-height: 21px; height: 21px; padding: 0 10px; color: #fff; font-size: 16px; justify-content: center; align-items: center; line-height: 1; }
.compare-stats .score-value.score-grade-1, .compare-stats .score-value.score-grade-2, .compare-stats .score-value.score-grade-3, .compare-stats .score-value.score-grade-4, .compare-stats .score-value.score-grade-5 { color: #fff; }
.compare-stats .compare-risk-score-title { display: flex; align-items: center; gap: 6px; }
.compare-stats .compare-risk-score-title b { font-weight: 400; }
.compare-stats .compare-risk-score-line { display: block; line-height: 1; }
.compare-stats .compare-risk-score-values { display: flex; align-items: center; gap: 6px; }
.compare-stats .compare-risk-score-values .daily-risk-cell { width: 190px; min-height: 21px; height: 21px; margin: 0; padding: 0 8px; font-size: 16px; }
.compare-stats .compare-risk-score-values .daily-risk-cell span { color: inherit; font-size: inherit; line-height: 1; }
.compare-score-label { color: #fff; font-size: 16px; font-weight: 900; }
.stat em { display: block; margin-top: 8px; color: #dbeafe; font-size: 16px; font-style: normal; font-weight: 700; overflow-wrap: anywhere; }
.stat input { width: 100%; min-height: 38px; border: 1px solid #334155; border-radius: 6px; background: #101820; color: #fff; padding: 7px 9px; font: inherit; box-sizing: border-box; }
.stat input[readonly] { color: #adc2d7; background: #11171d; border-color: #27313b; cursor: default; }
.table-wrap { overflow-x: auto; }
.license-table input[type="text"] { width: 100%; min-width: 86px; min-height: 32px; border: 1px solid #334155; border-radius: 5px; background: #101820; color: #fff; padding: 5px 7px; font: inherit; }
.license-table input[type="date"] { width: 100%; min-width: 128px; min-height: 32px; border: 1px solid #334155; border-radius: 5px; background: #101820; color: #fff; padding: 5px 7px; font: inherit; color-scheme: dark; }
.license-user-picker { position: relative; width: 100%; min-width: 130px; }
.license-user-picker summary { display: flex; align-items: center; width: 100%; height: 32px; min-height: 32px; padding: 5px 24px 5px 7px; border: 1px solid #334155; border-radius: 5px; background: #101820; color: #fff; font: inherit; list-style: none; cursor: pointer; }
.license-user-picker summary::-webkit-details-marker { display: none; }
.license-user-picker summary::after { content: ""; position: absolute; right: 8px; top: 13px; border-left: 4px solid transparent; border-right: 4px solid transparent; border-top: 5px solid #adc2d7; pointer-events: none; }
.license-user-picker summary span { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.license-user-picker[open] summary { outline: 2px solid #2563eb; outline-offset: 1px; }
.license-user-picker-menu { position: absolute; z-index: 250; top: 36px; left: 0; display: grid; gap: 2px; min-width: 180px; max-height: min(70vh, 520px); overflow: auto; padding: 5px; border: 1px solid #334155; border-radius: 7px; background: #101820; box-shadow: 0 12px 24px rgba(0, 0, 0, 0.35); text-align: left; }
.license-user-picker-menu.license-user-picker-floating { position: fixed; z-index: 1000; }
.license-user-picker-menu label { display: flex; align-items: center; gap: 7px; min-height: 27px; padding: 4px 6px; border-radius: 5px; color: #fff; white-space: nowrap; cursor: pointer; }
.license-user-picker-menu label:hover { background: rgba(255, 255, 255, 0.08); }
.license-user-picker-menu input { margin: 0; }
.license-table input[name="client"] { min-width: 150px; }
.license-table input[name="broker"] { min-width: 70px; }
.license-table input[name="expiration"] { min-width: 104px; }
.license-table input[name="commission"] { min-width: 72px; }
.license-table .icon-button { margin: 0 auto; }
.license-action-cell { display: inline-flex; align-items: center; justify-content: center; gap: 6px; min-width: 150px; white-space: nowrap; }
.license-action-cell .button { flex: 0 0 auto; margin: 0; }
table { width: 100%; border-collapse: collapse; font-size: 14px; }
th, td { border-bottom: 1px solid #2a333d; padding: 7px 4px; text-align: center; vertical-align: middle; }
.license-table th { padding: 7px 4px; }
.license-table th .button.icon-button { width: 34px; min-width: 34px; min-height: 30px; padding-top: 0; padding-bottom: 0; }
thead { position: sticky; top: 0; z-index: 120; }
th { background: #20262d; color: #dbeafe; position: sticky; top: 0; z-index: 121; }
tbody td { position: relative; z-index: 0; }
tbody tr { position: relative; z-index: 0; }
tbody tr:hover { z-index: 70; }
tbody tr.codex-row-openable { cursor: pointer; }
tbody tr.codex-row-openable:not(.selected-setup):not(.selected-backtest):not(.selected-pass):not(.selected-optimization-run):hover td { background: color-mix(in srgb, #60a5fa 7%, #121a22); }
tbody tr:has(.shared-mark-chip:hover), tbody tr:has(.shared-mark-chip:focus-visible) { z-index: 150; }
tbody td:has(.shared-mark-chip:hover), tbody td:has(.shared-mark-chip:focus-visible) { z-index: 150; overflow: visible; }
tbody tr:has(.review-menu[open]) { z-index: 130; }
tbody td:has(.review-menu[open]) { z-index: 130; overflow: visible; }
.codex-refresh-updated { position: relative; animation: codexRefreshPulse 4.6s ease-out 1 forwards; border-radius: 6px; z-index: 1; }
@keyframes codexRefreshPulse { 0% { background-color: rgba(251,146,60,.38); box-shadow: 0 0 0 2px rgba(251,146,60,.92), 0 0 0 6px rgba(251,146,60,.18); } 78% { background-color: rgba(251,146,60,.12); box-shadow: 0 0 0 2px rgba(251,146,60,.58), 0 0 0 5px rgba(251,146,60,.10); } 100% { background-color: transparent; box-shadow: 0 0 0 0 rgba(251,146,60,0); } }
.review-menu[open] { z-index: 130; }
th a, .sort-label { white-space: nowrap; }
.sort-label { display: inline-flex; align-items: center; gap: 3px; }
tr.warning-row td { background: rgba(255, 189, 102, 0.08); }
tr.consolidated-row td { background: rgba(96, 165, 250, 0.08); }
tr.consolidated-row strong { letter-spacing: 0; }
tr.license-saved-row td { animation: codexRefreshPulse 1.8s ease-out 1; background: rgba(251, 146, 60, 0.12); }
tr.subrow td { color: #adc2d7; background: #11171d; padding-top: 8px; padding-bottom: 8px; white-space: normal; }
.details-grid { display: grid; grid-template-columns: 150px 150px 130px minmax(260px, 1fr) minmax(260px, 1.3fr); gap: 10px; align-items: start; }
.details-grid span { display: block; margin-bottom: 4px; color: #7f98ad; font-size: 11px; text-transform: uppercase; }
.details-grid strong { display: block; color: #cbd5df; font-size: 13px; font-weight: 600; line-height: 1.35; }
.setup-detail-popover { min-width: 0; max-width: min(660px, calc(100vw - 48px)); }
.setup-detail-popover .details-grid { grid-template-columns: auto; gap: 5px; }
.setup-detail-popover .details-grid .wide { grid-column: 1 / -1; }
.setup-detail-popover .details-grid strong { max-width: 260px; }
.optimized-param-grid { display: flex; justify-content: center; gap: 34px; flex-wrap: wrap; }
.optimized-param-grid span { display: block; min-width: 120px; text-align: center; }
.optimized-param-grid b { display: block; margin-bottom: 3px; color: #7f98ad; font-size: 11px; line-height: 1.2; }
.optimized-param-grid em { display: block; color: #cbd5df; font-size: 13px; font-style: normal; font-weight: 600; line-height: 1.25; }
.info-popover .badge { display: inline-flex; }
.num { text-align: right; font-variant-numeric: tabular-nums; white-space: nowrap; }
.version-col { min-width: 76px; padding-left: 8px; padding-right: 8px; text-align: center; font-variant-numeric: tabular-nums; white-space: nowrap; }
.passes-col { min-width: 52px; padding-left: 8px; padding-right: 8px; text-align: center; font-variant-numeric: tabular-nums; white-space: nowrap; }
.ranking-table th:nth-child(3), .ranking-table td:nth-child(3) { text-align: center; }
.center { text-align: center; }
.params { max-width: 560px; white-space: normal; font-family: Consolas, monospace; color: #cbd5df; }
.params-grid { display: flex; flex-wrap: wrap; gap: 4px 8px; max-width: 620px; max-height: 74px; overflow: auto; }
.params-grid span { display: inline-block; max-width: 260px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.params-grid b { color: #9fc2e8; font-weight: 700; }
.row-actions { width: 1%; min-width: 0; text-align: center; white-space: nowrap; }
.ranking-table .row-actions { width: 21%; min-width: 310px; padding-left: 10px; padding-right: 10px; }
.ranking-table th:nth-last-child(2), .ranking-table td:nth-last-child(2) { width: 10%; min-width: 110px; }
.ranking-table th:nth-last-child(1), .ranking-table td:nth-last-child(1) { width: 13%; min-width: 170px; }
.ranking-table .score-value { width: 158px; }
.backtests-table .row-actions { width: 10%; min-width: 116px; padding-left: 6px; padding-right: 6px; }
.optimizations-table .row-actions, .optimization-passes-table .row-actions { width: 9%; min-width: 104px; padding-left: 6px; padding-right: 6px; }
.backtests-table th:nth-last-child(2), .backtests-table td:nth-last-child(2), .optimizations-table th:nth-last-child(2), .optimizations-table td:nth-last-child(2), .optimization-passes-table th:nth-last-child(2), .optimization-passes-table td:nth-last-child(2) { width: 10%; min-width: 110px; }
.backtests-table th:nth-last-child(1), .backtests-table td:nth-last-child(1), .optimizations-table th:nth-last-child(1), .optimizations-table td:nth-last-child(1), .optimization-passes-table th:nth-last-child(1), .optimization-passes-table td:nth-last-child(1) { width: 13%; min-width: 170px; }
.backtests-table .score-value, .optimizations-table .score-value, .optimization-passes-table .score-value { width: 158px; }
.backtests-table th:nth-child(3), .backtests-table td:nth-child(3), .optimization-passes-table th:nth-child(2), .optimization-passes-table td:nth-child(2), .optimization-passes-table th:nth-child(3), .optimization-passes-table td:nth-child(3) { text-align: center; }
.optimization-passes-table th:nth-child(4), .optimization-passes-table th:nth-child(5), .optimization-passes-table th:nth-child(6), .optimization-passes-table th:nth-child(7), .optimization-passes-table th:nth-child(8), .optimization-passes-table th:nth-child(9), .optimization-passes-table th:nth-child(10), .optimization-passes-table th:nth-child(11) { text-align: right; }
.row-actions .button { height: 38px; min-height: 38px; padding-top: 0; padding-bottom: 0; margin-right: 2px; }
.ranking-table .row-actions .button.icon-button { height: 38px; min-height: 38px; padding-top: 0; padding-bottom: 0; }
.row-actions .info-hover, .row-actions .inline-form, .row-actions .button { vertical-align: middle; }
.ranking-colors-head { width: 1%; white-space: nowrap; }
.ranking-color-cell { display: inline-flex; align-items: center; justify-content: center; gap: 2px; min-width: 16px; max-width: 70px; min-height: 28px; white-space: nowrap; }
.ranking-select-cell { display: inline-flex; align-items: center; justify-content: center; min-width: 26px; min-height: 26px; padding: 3px; border: 1px solid var(--setup-color, #334155); border-radius: 999px; background: color-mix(in srgb, var(--setup-color, #172331) 18%, #101820); }
.ranking-select-cell input[type="checkbox"] { margin: 0; }
.ranking-color-chip { width: 9px; min-width: 9px; height: 18px; min-height: 18px; padding: 0; border: 1px solid color-mix(in srgb, var(--setup-color) 70%, #dbeafe); border-radius: 4px; background: var(--setup-color); cursor: pointer; }
.ranking-color-chip + .ranking-color-chip { margin-left: 1px; }
.ranking-table tr.selected-setup td, .backtests-table tr.selected-backtest td, .optimization-passes-table tr.selected-pass td { background: color-mix(in srgb, var(--setup-color, #60a5fa) 15%, #121a22); }
.optimization-group-cell { min-width: 118px; white-space: nowrap; }
.optimization-group-wrap { display: inline-flex; align-items: center; justify-content: center; gap: 4px; }
.optimization-group-color { width: 9px; min-width: 9px; height: 24px; min-height: 24px; border: 1px solid color-mix(in srgb, var(--setup-color, #334155) 70%, #dbeafe); border-radius: 4px; background: var(--setup-color, #334155); }
.optimization-group-select { display: inline-flex; align-items: center; gap: 6px; min-height: 30px; padding: 3px 7px; border: 1px solid var(--setup-color, #334155); border-radius: 999px; background: color-mix(in srgb, var(--setup-color, #172331) 16%, #101820); }
.optimization-group-select.manual { border-color: var(--manual-color, #334155); background: color-mix(in srgb, var(--manual-color, #172331) 16%, #101820); }
.optimization-group-select input[type="checkbox"] { margin: 0; }
.optimization-group-select input[type="checkbox"]:disabled + .optimization-group-chip { opacity: 0.86; }
.optimization-group-chip { display: inline-flex; align-items: center; justify-content: center; min-width: 74px; min-height: 20px; padding: 2px 7px; border-radius: 999px; background: var(--setup-color, #334155); color: #081018; font-size: 11px; font-weight: 900; line-height: 1; }
.optimization-group-select.manual .optimization-group-chip { background: var(--manual-color, #334155); }
.optimization-group-empty { color: #5d6b78; }
.optimization-role-label { display: block; color: #e5f5ff; font-weight: 900; line-height: 1.1; }
.optimization-role-title { display: block; color: #dbeafe; font-weight: 700; line-height: 1.1; }
.optimization-category { display: inline-grid; justify-items: center; gap: 5px; min-width: 110px; }
.optimization-category-pill { display: inline-flex; align-items: center; justify-content: center; min-width: 110px; min-height: 18px; padding: 1px 7px; border: 1px solid #334155; border-radius: 999px; background: #132235; color: #e0f2fe; font-size: 13px; font-weight: 900; line-height: 1; }
.optimization-category-pill.normal { border-color: #38506b; background: rgba(30, 41, 59, 0.86); }
.optimization-category-pill.backward { border-color: #1d4ed8; background: rgba(29, 78, 216, 0.34); }
.optimization-category-pill.forward { border-color: #0f766e; background: rgba(15, 118, 110, 0.34); }
.optimization-category-pill.consolidated { border-color: #a16207; background: rgba(161, 98, 7, 0.34); }
.optimization-category-pill.backtest-derived-pill { color: #ffbd66; border-color: #8a5a22; background: rgba(255, 189, 102, 0.10); }
.optimization-category-pill.backtest-derived-pill, .optimizations-table .optimization-category-pill.normal, .optimization-passes-table .optimization-category-pill.normal { min-height: 24px; padding: 2px 8px; }
.optimization-category-desc { color: #cfe7ff; font-size: 12px; font-weight: 800; line-height: 1.05; }
.optimization-note-wrap { position: relative; display: inline-flex; justify-content: center; width: 110px; min-height: 14px; }
.optimization-note-wrap:focus-within { z-index: 90; }
.optimization-note-input { width: 110px; min-height: 14px; max-height: 28px; border: 1px solid #334155; border-radius: 7px; background: #101820; color: #e5f5ff; padding: 1px 7px; font: inherit; font-size: 12px; font-weight: 700; line-height: 13px; text-align: center; resize: none; overflow: hidden; box-sizing: border-box; }
.optimization-note-input:focus { width: 220px; min-height: 72px; max-height: 120px; position: absolute; left: 50%; top: 0; transform: translateX(-50%); z-index: 100; border-radius: 7px; outline: 2px solid rgba(96, 165, 250, 0.36); overflow: auto; text-align: left; }
.optimization-note-input.saving { border-color: #a16207; }
.optimization-note-input.saved { border-color: #0f766e; }
.optimization-note-input.error { border-color: #b91c1c; }
.optimization-note-popover { position: absolute; left: 50%; top: calc(100% + 7px); z-index: 40; display: none; width: max-content; min-width: 220px; max-width: min(360px, calc(100vw - 48px)); transform: translateX(-50%); padding: 10px 12px; border: 1px solid #36506b; border-radius: 8px; background: #0f1720; box-shadow: 0 14px 36px rgba(0, 0, 0, 0.42); color: #dbeafe; font-size: 13px; font-weight: 700; line-height: 1.35; text-align: left; white-space: pre-line; pointer-events: none; }
.optimization-note-wrap:hover .optimization-note-popover:not(:empty) { display: block; }
.optimization-note-wrap:focus-within .optimization-note-popover, .optimization-note-wrap:focus-within:hover .optimization-note-popover:not(:empty) { display: none; }
.optimizations-table tr.selected-optimization-run td { background: color-mix(in srgb, var(--manual-color, #60a5fa) 15%, #121a22); }
.backtest-derived-type { display: inline-grid; justify-items: center; gap: 3px; min-width: 110px; overflow: visible; }
.backtests-table tr:has(.optimization-note-input:focus) { position: relative; z-index: 80; }
.backtests-table td:has(.optimization-note-input:focus) { position: relative; z-index: 90; overflow: visible; }
.backtests-table td:focus-within { position: relative; z-index: 90; overflow: visible; }
.backtests-table .backtest-derived-type:focus-within { position: relative; z-index: 100; }
.hide-consolidated-ui .selection-col { display: none; }
.hide-consolidated-ui tr.optimization-consolidated-row { display: none; }
.hide-consolidated-ui .selection-compare-form { display: none; }
.optimization-passes-table tr.no-curve td { color: #7f8c99; }
.optimization-passes-table tr.no-curve .num, .optimization-passes-table tr.no-curve a { color: #9aa9b8; }
.optimization-passes-table tr.no-curve .score-value { opacity: 0.55; }
.curve-policy-popover { min-width: 430px; max-width: min(620px, calc(100vw - 48px)); }
.operation-cell { max-width: 210px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.backtests-table .operation-cell { max-width: 150px; white-space: normal; line-height: 1.15; }
.optimizations-table .category-cell, .optimizations-table .operation-cell { max-width: 190px; white-space: normal; line-height: 1.15; }
.optimizations-table .category-cell { overflow: visible; }
.optimizations-table tr:has(.optimization-note-input:focus) { position: relative; z-index: 80; }
.optimizations-table .category-cell:has(.optimization-note-input:focus) { position: relative; z-index: 70; }
.optimizations-table .category-cell .category-text { display: inline-grid; justify-items: center; gap: 3px; position: relative; overflow: visible; }
.ranking-table tr:has(.optimization-note-input:focus) { position: relative; z-index: 80; }
.ranking-table td:has(.optimization-note-input:focus) { position: relative; z-index: 90; overflow: visible; }
.ranking-asset-cell { display: inline-flex; flex-direction: column; align-items: center; justify-content: center; gap: 3px; position: relative; overflow: visible; }
.ranking-asset-symbol { display: inline-flex; align-items: center; justify-content: center; min-width: 110px; min-height: 24px; padding: 2px 8px; border: 1px solid #334155; border-radius: 999px; background: #132235; color: #f8fbff; font-size: inherit; font-weight: 900; line-height: 1; box-sizing: border-box; }
.operation-date, .operation-time { display: block; white-space: nowrap; }
.operation-text { display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; overflow-wrap: anywhere; }
.category-text { display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; overflow-wrap: anywhere; }
.period-cell span { display: block; white-space: nowrap; }
.summary-grid strong.period-cell, .stat strong.period-cell { color: #fff; font-size: 22px; font-weight: 900; line-height: 1.35; }
.summary-grid strong.period-cell span, .stat strong.period-cell span { color: #fff; font-size: 22px; font-weight: 900; line-height: 1.35; }
.period-summary-stat strong.period-cell, .period-summary-stat strong.period-cell span { font-size: 18px; line-height: 0.8; }
.realtime-created-stat strong.period-cell, .realtime-created-stat strong.period-cell span { font-size: 20px; line-height: 0.8; }
.score-value { display: inline-flex; align-items: center; justify-content: center; box-sizing: border-box; width: 170px; min-height: 38px; padding: 0 12px; border: 1px solid #334155; border-radius: 999px; background: #132235; color: #e0f2fe; font-size: 24px; font-weight: 900; line-height: 1; text-align: center; font-variant-numeric: tabular-nums; white-space: nowrap; }
.score-grade-1 { border-color: #7f1d1d; background: rgba(127, 29, 29, 0.38); color: #fee2e2; }
.score-grade-2 { border-color: #9a3412; background: rgba(154, 52, 18, 0.34); color: #ffedd5; }
.score-grade-3 { border-color: #a16207; background: rgba(161, 98, 7, 0.32); color: #fef3c7; }
.score-grade-4 { border-color: #15803d; background: rgba(21, 128, 61, 0.30); color: #dcfce7; }
.score-grade-5 { border-color: #16a34a; background: rgba(22, 163, 74, 0.36); color: #f0fdf4; }
.score-grade-empty { opacity: 0.7; }
.center .info-hover { justify-content: center; min-width: 96px; }
.info-hover { position: relative; display: inline-flex; align-items: center; justify-content: center; }
.info-popover { position: absolute; left: 50%; top: calc(100% + 8px); z-index: 80; display: none; width: max-content; min-width: 300px; max-width: min(560px, calc(100vw - 48px)); transform: translateX(-50%); padding: 10px 12px; border: 1px solid #36506b; border-radius: 8px; background: #0f1720; box-shadow: 0 14px 36px rgba(0, 0, 0, 0.42); color: #dbeafe; text-align: left; white-space: normal; }
th .info-popover { top: auto; bottom: calc(100% + 8px); }
.mobile-priority-table .row-actions .info-popover { top: auto; bottom: calc(100% + 8px); }
.info-hover:hover .info-popover, .info-hover:focus-within .info-popover { display: grid; gap: 5px; }
.info-popover b { justify-self: start; display: inline-flex; min-height: 28px; align-items: center; padding: 0 10px; border: 1px solid #334155; border-radius: 7px; background: #132235; color: #fff; font-size: 17px; line-height: 1; }
.info-popover.centered-title-popover b { justify-self: center; text-align: center; }
.info-popover.simple-label-popover { min-width: 0; padding: 10px 12px; }
.info-popover.simple-label-popover span { color: #dbeafe; font-size: 14px; white-space: nowrap; }
.compare-actions .info-popover b { justify-self: center; text-align: center; }
.info-popover strong { display: block; color: #fff; font-size: 14px; line-height: 1.3; }
.info-popover span { display: block; margin: 0; color: #b9d7f5; font-size: 13px; line-height: 1.35; }
.info-popover em { display: block; color: #cbd5df; font-size: 12px; font-style: normal; line-height: 1.35; }
.release-changelog-version { color: #dbeafe; text-decoration: underline; text-underline-offset: 2px; }
.ranking-table td.version-col:hover, .ranking-table td.version-col:focus-within { position: relative; z-index: 160; overflow: visible; }
.ranking-table td.version-col:hover .release-changelog-popover:not(.release-changelog-floating), .ranking-table td.version-col:focus-within .release-changelog-popover:not(.release-changelog-floating), .release-changelog-hover.release-changelog-open .release-changelog-popover:not(.release-changelog-floating), .release-changelog-popover.release-changelog-open { display: grid; gap: 5px; }
.release-changelog-hover { width: 100%; min-height: 30px; padding: 7px 14px; margin: -7px -14px; box-sizing: border-box; }
.release-changelog-hover .release-changelog-popover { top: 100%; min-width: 360px; max-width: min(620px, calc(100vw - 48px)); max-height: min(640px, calc(100vh - 96px)); overflow: auto; }
.release-changelog-hover .release-changelog-popover::before { content: ""; position: absolute; left: 0; right: 0; top: -32px; height: 32px; }
.release-changelog-popover.release-changelog-floating { position: fixed; left: 0; top: 0; z-index: 2300; min-width: 360px; max-width: min(620px, calc(100vw - 48px)); max-height: min(640px, calc(100vh - 96px)); overflow: auto; transform: none; pointer-events: auto; }
.release-changelog-popover.release-changelog-floating::before { content: ""; position: absolute; left: 0; right: 0; top: -36px; height: 36px; }
.release-changelog-popover.release-changelog-floating.release-changelog-above::before { top: auto; bottom: -36px; }
.release-changelog-group { display: grid; gap: 6px; padding-top: 4px; border-top: 1px solid #263646; }
.release-changelog-group:first-of-type { border-top: 0; }
.release-changelog-item { display: grid; gap: 3px; padding: 3px 0 5px; }
.release-changelog-item a { justify-self: start; color: #93c5fd; font-size: 12px; font-weight: 700; text-decoration: underline; text-underline-offset: 2px; }
.release-changelog-title { color: #fff; font-weight: 700; }
.identity-popover { min-width: 0; width: max-content; max-width: min(1120px, calc(100vw - 32px)); overflow-x: visible; }
.setup-detail-popover { min-width: 0; max-width: min(1120px, calc(100vw - 32px)); overflow-x: visible; }
.popover-compact-head { display: flex; align-items: flex-start; justify-content: space-between; gap: 18px; }
.popover-compact-head span { text-align: right; }
.popover-compact-head small { display: block; margin-bottom: 3px; color: #7f98ad; font-size: 11px; font-weight: 500; line-height: 1; text-transform: uppercase; }
.popover-compact-head strong { font-size: 14px; }
.setup-detail-popover .ranking-setup-popover-head, .identity-popover .ranking-setup-popover-head { display: grid; grid-template-columns: max-content max-content max-content; align-items: center; justify-content: space-between; gap: 10px; }
.setup-detail-popover .ranking-setup-popover-head > b, .identity-popover .ranking-setup-popover-head > b { display: inline-flex; flex-direction: column; align-items: flex-start; gap: 2px; min-height: 28px; padding: 4px 8px; border: 1px solid #334155; border-radius: 7px; background: #132235; color: #fff; font-size: 24px; line-height: 1; }
.setup-detail-popover .ranking-setup-popover-id, .identity-popover .ranking-setup-popover-id { color: #fff; font-size: inherit; }
.setup-detail-popover .ranking-setup-popover-details { display: grid; grid-template-columns: repeat(2, max-content); gap: 6px; }
.setup-detail-popover .ranking-setup-popover-details, .identity-popover .ranking-setup-popover-details { color: #b9d7f5 !important; font-size: 12px; font-weight: 800; line-height: 1; white-space: nowrap; }
.setup-detail-popover .ranking-setup-popover-details strong { color: inherit; font-size: inherit; line-height: inherit; }
.setup-detail-popover .ranking-setup-popover-context, .identity-popover .ranking-setup-popover-context, .tree-card-popover .tree-card-popover-context { display: grid; grid-template-columns: max-content; justify-content: center; gap: 3px; color: #b9d7f5; }
.setup-detail-popover .ranking-setup-popover-context > span, .identity-popover .ranking-setup-popover-context > span { display: grid; gap: 2px; text-align: center; }
.setup-detail-popover .ranking-setup-popover-context small, .identity-popover .ranking-setup-popover-context small, .tree-card-popover .tree-card-popover-context small { display: none; }
.setup-detail-popover .ranking-setup-popover-context strong, .identity-popover .ranking-setup-popover-context strong, .tree-card-popover .tree-card-popover-context strong { color: #fff; font-size: 14px; line-height: 1.15; white-space: nowrap; }
.setup-detail-popover .ranking-setup-popover-context > span:first-child, .identity-popover .ranking-setup-popover-context > span:first-child, .tree-card-popover .tree-card-popover-context > span:first-child { order: 2; }
.setup-detail-popover .ranking-setup-popover-context > span:last-child, .identity-popover .ranking-setup-popover-context > span:last-child, .tree-card-popover .tree-card-popover-context > span:last-child { order: 1; }
.setup-detail-popover .ranking-setup-popover-metrics, .identity-popover .ranking-setup-popover-metrics { display: grid; grid-template-columns: 160px; align-items: center; justify-content: flex-end; gap: 6px; margin-left: auto; }
.setup-detail-popover .ranking-setup-popover-metrics .daily-risk-cell, .identity-popover .ranking-setup-popover-metrics .daily-risk-cell { width: 160px; min-width: 160px; min-height: 26px; margin: 0; padding: 0 8px; font-size: 18px; }
.setup-detail-popover .ranking-setup-popover-metrics .daily-risk-cell span, .identity-popover .ranking-setup-popover-metrics .daily-risk-cell span { font-size: inherit; line-height: 1; }
.setup-detail-popover .identity-diff-table { width: 100%; min-width: 0; table-layout: auto; }
.setup-detail-popover .identity-diff-table th, .setup-detail-popover .identity-diff-table td { white-space: nowrap; }
.setup-detail-popover > strong, .tree-card-popover > strong { inline-size: 100%; min-width: 0; contain: inline-size; overflow-wrap: break-word; }
.setup-detail-popover .identity-diff-table th:not(:first-child), .setup-detail-popover .identity-diff-table td:not(:first-child) { width: 1%; }
.setup-detail-popover .ranking-setup-popover-metrics .score-value, .identity-popover .ranking-setup-popover-metrics .score-value { display: inline-flex; align-items: center; justify-content: center; width: 160px; min-height: 26px; margin: 0; padding: 3px 8px 0; font-size: 18px; line-height: 1; }
.identity-diff-table { width: max-content; min-width: 100%; margin: 2px 0 4px; border-collapse: collapse; font-size: 12px; }
.identity-diff-table th, .identity-diff-table td { position: static; padding: 4px 6px; border: 1px solid #2a333d; background: #101820; color: #dbeafe; text-align: left; vertical-align: top; white-space: normal; }
.identity-diff-table th { background: #20262d; color: #fff; font-size: 11px; text-transform: uppercase; }
.identity-diff-table td:first-child { color: #b9d7f5; font-weight: 700; white-space: nowrap; }
.identity-diff-table th:not(:first-child), .identity-diff-table td:not(:first-child) { width: 1%; padding-left: 4px; padding-right: 4px; white-space: nowrap; }
.identity-diff-table tr.identity-diff-version td { background: #172235; color: #fff; font-weight: 700; }
.refine-summary { display: flex; flex-wrap: wrap; gap: 8px; margin: 12px 0; }
.refine-summary span, .refine-metrics span { display: inline-flex; align-items: center; gap: 5px; min-height: 28px; padding: 4px 9px; border: 1px solid #334155; border-radius: 7px; background: #101820; color: #dbeafe; font-weight: 800; }
.refine-options { display: grid; gap: 10px; margin: 12px 0; }
.refine-option { padding: 12px; border: 1px solid #334155; border-radius: 8px; background: #101820; }
.refine-option.weak { border-color: #8a5a22; }
.refine-option h3 { margin: 0 0 5px; font-size: 18px; }
.refine-option p { margin: 4px 0 8px; }
.refine-metrics { display: flex; flex-wrap: wrap; gap: 7px; margin: 8px 0; }
.refine-table { margin-top: 8px; }
.ranking-backtest-hover { min-width: 0; }
.ranking-backtest-popover { min-width: 500px; max-width: min(580px, calc(100vw - 48px)); }
.ranking-preview-head { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.ranking-preview-metrics { display: flex; align-items: center; justify-content: flex-end; gap: 8px; margin-left: auto; }
.ranking-preview-head .score-value { width: 142px; min-height: 30px; padding: 0 10px; font-size: 19px; }
.ranking-preview-subhead { display: flex; align-items: flex-start; justify-content: space-between; gap: 12px; }
.ranking-preview-subhead span { text-align: right; white-space: nowrap; }
.info-popover .ranking-preview-head .score-grade-1, .curve-preview-popover .ranking-preview-head .score-grade-1 { color: #fee2e2; }
.info-popover .ranking-preview-head .score-grade-2, .curve-preview-popover .ranking-preview-head .score-grade-2 { color: #ffedd5; }
.info-popover .ranking-preview-head .score-grade-3, .curve-preview-popover .ranking-preview-head .score-grade-3 { color: #fef3c7; }
.info-popover .ranking-preview-head .score-grade-4, .curve-preview-popover .ranking-preview-head .score-grade-4 { color: #dcfce7; }
.info-popover .ranking-preview-head .score-grade-5, .curve-preview-popover .ranking-preview-head .score-grade-5 { color: #f0fdf4; }
.info-popover .ranking-preview-head .score-grade-empty, .curve-preview-popover .ranking-preview-head .score-grade-empty { color: #e0f2fe; }
.ranking-preview-chart { display: block; width: 100%; height: 160px; margin: 6px 0; border: 1px solid #2a333d; border-radius: 8px; background: #0f1419; }
.ranking-preview-chart polyline { fill: none; stroke-width: 3; stroke-linecap: round; stroke-linejoin: round; }
.ranking-preview-balance { stroke: #60a5fa; }
.ranking-preview-equity { stroke: #22c55e; opacity: 0.85; }
.ranking-preview-profit { stroke: #60a5fa; }
.ranking-preview-real-dd { stroke: #22c55e; opacity: 0.85; }
.daily-risk-cell { display: inline-flex; align-items: center; justify-content: center; box-sizing: border-box; width: 190px; min-height: 38px; margin: 0 auto; padding: 0 12px; border: 1px solid #334155; border-radius: 8px; background: #132235; color: #e0f2fe; font-size: 24px; font-weight: 900; line-height: 1; text-align: center; font-variant-numeric: tabular-nums; white-space: nowrap; }
.daily-risk-cell span { color: inherit; }
.daily-risk-cell .daily-risk-score { margin-left: 5px; font-size: inherit; line-height: 1; }
.daily-risk-cell.score-grade-1 { border-color: #7f1d1d; background: rgba(127, 29, 29, 0.38); color: #fee2e2; }
.daily-risk-cell.score-grade-2 { border-color: #9a3412; background: rgba(154, 52, 18, 0.34); color: #ffedd5; }
.daily-risk-cell.score-grade-3 { border-color: #a16207; background: rgba(161, 98, 7, 0.32); color: #fef3c7; }
.daily-risk-cell.score-grade-4 { border-color: #15803d; background: rgba(21, 128, 61, 0.30); color: #dcfce7; }
.daily-risk-cell.score-grade-5 { border-color: #16a34a; background: rgba(22, 163, 74, 0.36); color: #f0fdf4; }
.ranking-preview-tree { display: block; width: 100%; height: 220px; margin: 6px 0; border: 1px solid #2a333d; border-radius: 8px; background: #0f1419; }
.ranking-preview-tree-line { fill: none; stroke: #6f91b4; stroke-width: 1.6; stroke-linecap: round; }
.ranking-preview-tree-line.muted { stroke: #5b6774; stroke-dasharray: 4 4; }
.ranking-preview-tree-node { fill: #101820; stroke: #334155; stroke-width: 2; }
.ranking-preview-tree-node.active { fill: #172331; stroke: #bfdbfe; stroke-width: 3; }
.ranking-preview-tree-node.muted { fill: #121820; stroke: #526171; stroke-dasharray: 4 4; opacity: 0.85; }
.ranking-preview-tree-text { fill: #dbeafe; font-size: 10px; font-weight: 800; text-anchor: middle; dominant-baseline: middle; }
.ranking-preview-tree-text.label-left { text-anchor: start; }
.ranking-preview-tree-text.muted { fill: #9aa8b8; font-size: 9px; }
.ranking-preview-tree-score-box { fill: rgba(161, 98, 7, 0.32); stroke: #a16207; stroke-width: 1; }
.ranking-preview-tree-score-box.score-grade-1 { fill: rgba(127, 29, 29, 0.38); stroke: #7f1d1d; }
.ranking-preview-tree-score-box.score-grade-2 { fill: rgba(154, 52, 18, 0.34); stroke: #9a3412; }
.ranking-preview-tree-score-box.score-grade-3 { fill: rgba(161, 98, 7, 0.32); stroke: #a16207; }
.ranking-preview-tree-score-box.score-grade-4 { fill: rgba(21, 128, 61, 0.30); stroke: #15803d; }
.ranking-preview-tree-score-box.score-grade-5 { fill: rgba(22, 163, 74, 0.36); stroke: #16a34a; }
.ranking-preview-tree-score { fill: #fef3c7; font-size: 8px; font-weight: 900; text-anchor: middle; dominant-baseline: middle; }
.ranking-preview-tree-score.score-grade-1 { fill: #fee2e2; }
.ranking-preview-tree-score.score-grade-2 { fill: #ffedd5; }
.ranking-preview-tree-score.score-grade-3 { fill: #fef3c7; }
.ranking-preview-tree-score.score-grade-4 { fill: #dcfce7; }
.ranking-preview-tree-score.score-grade-5 { fill: #f0fdf4; }
.ranking-preview-tree-more { fill: #b9d7f5; font-size: 12px; text-anchor: middle; }
.stat .info-hover { display: inline-flex; }
.stat strong.score-value { display: inline-flex; margin: 0; font-size: 24px; text-align: center; }
.stat-risk-score-stack { display: grid; gap: 6px; align-items: center; justify-items: center; }
.stat-risk-score-stack .daily-risk-cell { align-items: center; justify-content: center; width: 190px; min-height: 38px; margin: 0; padding: 0 12px; font-size: 24px; line-height: 1; }
.stat .stat-risk-score-stack .score-value { display: inline-flex; align-items: center; justify-content: center; box-sizing: border-box; width: 170px; min-height: 38px; margin: 0; padding: 0 12px; font-size: 24px; font-weight: 900; line-height: 1; text-align: center; font-variant-numeric: tabular-nums; white-space: nowrap; }
.stat-risk-score-stack .daily-risk-cell span { margin: 0; color: inherit; font-size: inherit; line-height: 1; }
.stat-risk-score-stack .daily-risk-cell .daily-risk-score { margin-left: 5px; font-size: inherit; }
.stat > .info-hover { display: flex; justify-content: flex-start; }
.stat .info-popover span { margin: 0; color: #b9d7f5; font-size: 13px; }
.codex-tooltip { position: fixed; z-index: 2000; display: none; width: max-content; min-width: 0; max-width: min(380px, calc(100vw - 48px)); padding: 10px 12px; border: 1px solid #36506b; border-radius: 8px; background: #0f1720; box-shadow: 0 14px 36px rgba(0, 0, 0, 0.42); color: #dbeafe; font-size: 13px; line-height: 1.35; text-align: left; white-space: pre-line; pointer-events: none; }
.codex-tooltip.visible { display: block; }
.codex-tooltip-series { margin-bottom: 2px; color: #dbeafe; font-size: 13px; font-weight: 700; }
.codex-tooltip-primary { margin-bottom: 5px; color: #fff; font-size: 15px; font-weight: 800; }
.curve-preview-popover { position: fixed; z-index: 2100; display: none; width: 520px; max-width: min(580px, calc(100vw - 48px)); padding: 12px 14px; border: 1px solid #36506b; border-radius: 8px; background: #0f1720; box-shadow: 0 14px 36px rgba(0, 0, 0, 0.42); color: #dbeafe; pointer-events: none; }
.curve-preview-popover.visible { display: grid; gap: 7px; }
.curve-preview-popover b { justify-self: start; display: inline-flex; min-height: 28px; align-items: center; padding: 0 10px; border: 1px solid #334155; border-radius: 7px; background: #132235; color: #fff; font-size: 17px; line-height: 1; }
.curve-preview-popover .ranking-preview-head .score-value { width: 142px; min-height: 30px; padding: 0 10px; font-size: 19px; }
.curve-preview-popover .ranking-preview-head .daily-risk-cell { width: auto; min-width: 128px; min-height: 30px; margin: 0; padding: 0 10px; font-size: 19px; }
.curve-preview-popover strong { display: block; color: #fff; font-size: 14px; line-height: 1.3; }
.curve-preview-popover span { display: block; color: #b9d7f5; font-size: 13px; line-height: 1.35; }
.curve-preview-popover .ranking-preview-subhead span { margin-left: auto; }
.curve-preview-popover canvas { display: block; width: 100%; height: 190px; margin: 6px 0; border: 1px solid #2a333d; border-radius: 8px; background: #0f1419; }
.curve-preview-status { color: #cbd5df; font-size: 12px; font-style: normal; line-height: 1.35; }
.compare-select { min-height: 32px; min-width: 84px; border: 1px solid #334155; border-radius: 7px; background: #101820; color: #fff; padding: 6px 8px; }
.compare-table td { font-family: Consolas, monospace; white-space: pre-wrap; }
.compare-table.compare-parameter-table { table-layout: fixed; font-size: 12px; }
.compare-parameter-table th, .compare-parameter-table td { padding: 4px 6px; border: 1px solid #2a333d; background: #101820; line-height: 1.2; }
.compare-parameter-table th { background: #20262d; }
.compare-parameter-table th:first-child, .compare-parameter-table .compare-parameter-field { width: 32%; text-align: left; }
.compare-parameter-table .compare-parameter-field { color: #b9d7f5; font-family: inherit; font-weight: 700; }
.compare-parameter-table .compare-parameter-value { color: #fff; text-align: left; }
.compare-summary-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, var(--compare-card-min, 520px)), 1fr)); gap: 14px; margin-top: 6px; }
.compare-summary-card { border: 1px solid #2d3a45; border-radius: 8px; background: #11171d; overflow: hidden; }
.compare-summary-card h3 { display: grid; grid-template-columns: minmax(180px, 0.8fr) minmax(0, 1.6fr); gap: 12px; margin: 0; padding: 10px 12px; background: #20262d; color: #dbeafe; font-size: 15px; }
.compare-summary-columns { display: grid; grid-template-columns: repeat(var(--compare-columns, 2), minmax(84px, 1fr)); gap: 8px; min-width: 0; }
.compare-summary-columns span { text-align: right; }
.compare-summary-rows { display: grid; }
.compare-summary-row { display: grid; grid-template-columns: minmax(180px, 0.8fr) minmax(0, 1.6fr); gap: 12px; align-items: stretch; padding: 9px 12px; border-top: 1px solid #22303a; }
.compare-summary-row:first-child { border-top: 0; }
.compare-summary-metric { align-self: center; color: #dbeafe; font-size: 13px; font-weight: 700; line-height: 1.25; }
.compare-summary-values { display: grid; grid-template-columns: repeat(var(--compare-columns, 2), minmax(84px, 1fr)); gap: 8px; min-width: 0; }
.compare-summary-value { min-width: 0; color: #fff; font-size: 14px; font-variant-numeric: tabular-nums; font-weight: 700; line-height: 1.2; overflow-wrap: anywhere; text-align: right; }
.bf-compare-table td { vertical-align: middle; }
.bf-compare-table .operation-cell { max-width: 360px; }
.bf-robust-row td { background: rgba(22, 163, 74, 0.10); }
.mobile-columns-toggle { display: none; }
.backtests-table.backtests-operational-collapsed .operational-metric-col, .optimizations-table.backtests-operational-collapsed .operational-metric-col, .ranking-table.backtests-operational-collapsed .ranking-detail-col, .optimization-passes-table.backtests-operational-collapsed .pass-metric-col { display: none !important; }
.backtests-table .backtest-type-head, .optimizations-table .optimization-category-head, .ranking-table .ranking-asset-head, .optimization-passes-table .pass-type-head { white-space: nowrap; }
.backtests-table .operational-columns-toggle, .optimizations-table .operational-columns-toggle, .ranking-table .operational-columns-toggle, .optimization-passes-table .operational-columns-toggle { display: inline-flex; width: 28px; min-width: 28px; height: 28px; min-height: 28px; padding: 0; justify-content: center; font-size: 18px; font-weight: 900; line-height: 1; margin-left: 8px; vertical-align: middle; }
.manual-consolidated-table.backtests-operational-collapsed th:nth-child(3), .manual-consolidated-table.backtests-operational-collapsed td:nth-child(3) { width: 16%; }
.manual-consolidated-table.backtests-operational-collapsed .row-actions { width: 20%; min-width: 250px; padding-left: 4px; padding-right: 10px; }
.manual-consolidated-table.backtests-operational-collapsed .row-actions .button, .manual-consolidated-table.backtests-operational-collapsed .row-actions .inline-form { margin-right: 7px; }
.backtests-table .backtest-official-pill { min-width: 110px; min-height: 38px; padding-top: 4px; padding-bottom: 4px; font-size: 13px; }
.metric-line { display: flex; align-items: center; gap: 8px; line-height: 1.45; white-space: nowrap; }
.metric-line i { display: inline-block; width: 10px; height: 3px; border-radius: 999px; flex: 0 0 auto; }
.compare-stats .metric-line { gap: 11px; color: #fff; font-size: 16px; font-weight: 900; }
.compare-stats .metric-line i { position: relative; top: -3px; right: 2px; width: 12px; height: 5px; }
.compare-stats .compare-score-line { display: grid; grid-template-columns: 12px auto auto; align-items: center; column-gap: 0; line-height: 1; }
.compare-stats .compare-score-line i { top: 0; }
.compare-consolidated-note { margin: -10px 0 18px; color: #adc2d7; }
.note { margin-top: 2px; font-size: 14px; }
.warn { color: #ffbd66; }
.modal-backdrop { position: fixed; inset: 0; z-index: 3000; display: none; align-items: center; justify-content: center; padding: 20px; background: rgba(0, 0, 0, 0.62); }
.modal-backdrop.visible { display: flex; }
.modal-alert { width: min(100%, 430px); border: 1px solid #36506b; border-radius: 8px; background: #11171d; box-shadow: 0 18px 46px rgba(0, 0, 0, 0.52); padding: 18px; }
.modal-alert-wide { width: min(100%, 620px); }
.modal-alert h2 { margin-bottom: 8px; font-size: 20px; }
.modal-alert p { color: #dbeafe; font-size: 15px; line-height: 1.4; }
.modal-alert .actions { max-width: none; justify-content: flex-end; margin-top: 16px; }
.modal-alert .form-grid { max-width: none; margin-top: 14px; }
.confirmation-dialog { width: min(100%, 560px); border: 1px solid #36506b; border-radius: 8px; background: #11171d; box-shadow: 0 18px 46px rgba(0, 0, 0, 0.52); padding: 18px; }
.confirmation-dialog h2 { margin-bottom: 8px; font-size: 20px; }
.confirmation-dialog p { color: #dbeafe; font-size: 15px; line-height: 1.4; }
.confirmation-dialog .dialog-actions { display: flex; justify-content: flex-end; gap: 8px; margin-top: 16px; }
.remote-run-dialog { width: min(96vw, 860px); max-height: 96vh; overflow: auto; }
.remote-run-form { display: grid; gap: 12px; }
.remote-run-form [hidden] { display: none !important; }
.remote-run-dialog .refine-options { max-height: none; overflow: visible; padding-right: 0; }
.remote-refine-option label { display: flex; align-items: center; gap: 8px; color: #fff; font-weight: 800; }
.remote-refine-option input[type="radio"] { width: 16px; height: 16px; accent-color: #2563eb; }
.remote-manual-fields { max-height: 430px; overflow-y: auto; overflow-x: hidden; }
.remote-manual-fields input[type="checkbox"] { width: 16px; height: 16px; accent-color: #2563eb; }
.remote-fields-table { width: 100%; table-layout: fixed; }
.remote-fields-table th:first-child, .remote-fields-table td:first-child { width: 44px; }
.remote-fields-table th:nth-child(2), .remote-fields-table td:nth-child(2) { width: 32%; }
.remote-field-number { width: 100%; min-width: 0; min-height: 30px; border: 1px solid #334155; border-radius: 6px; background: #101820; color: #fff; padding: 4px 6px; font: inherit; color-scheme: dark; box-sizing: border-box; }
.remote-fields-table .remote-field-group th { background: rgba(75, 118, 171, 0.18); color: #dceaff; text-align: left; }
.remote-fields-table .remote-field-group label { display: inline-flex; align-items: center; gap: 8px; }
.remote-combo-total { margin: 8px 0 0; color: #d9e6f7; }
.field-grid { display: grid; gap: 10px; }
.remote-run-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.field-block { display: grid; gap: 5px; color: #adc2d7; font-weight: 700; }
.field-block span { font-size: 13px; }
.field-block input, .field-block select { width: 100%; min-height: 36px; border: 1px solid #334155; border-radius: 7px; background: #101820; color: #fff; padding: 7px 9px; font: inherit; color-scheme: dark; box-sizing: border-box; }
.field-block input:focus, .field-block select:focus { outline: 2px solid #2563eb; outline-offset: 1px; }
.remote-date-control { position: relative; display: block; }
.remote-date-control::after { content: ""; position: absolute; right: 14px; top: 50%; width: 18px; height: 18px; transform: translateY(-50%); background: #fff; pointer-events: none; -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M7 2v4M17 2v4M3.5 9h17M5 4h14a2 2 0 0 1 2 2v13a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V6a2 2 0 0 1 2-2Z' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E"); mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M7 2v4M17 2v4M3.5 9h17M5 4h14a2 2 0 0 1 2 2v13a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V6a2 2 0 0 1 2-2Z' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E"); }
.remote-date-control [data-remote-date-text] { padding-right: 42px; font-size: 16px; font-weight: 800; }
.remote-date-button { position: absolute; inset: 0 0 0 auto; width: 46px; min-height: 100%; border: 0; background: transparent; cursor: pointer; }
.remote-period-row { display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: end; gap: 10px; }
.remote-period-fields { min-width: 0; }
.remote-date-shift { display: flex; align-items: end; justify-content: center; gap: 10px; height: 36px; }
.remote-date-shift .button { min-width: 58px; min-height: 36px; font-size: 28px; line-height: 1; }
.remote-calendar { position: fixed; z-index: 3200; width: 224px; padding: 10px; border: 1px solid #3b5570; border-radius: 8px; background: #111820; box-shadow: 0 16px 36px rgba(0, 0, 0, 0.45); color: #fff; }
.remote-calendar-head { display: flex; align-items: center; justify-content: space-between; gap: 10px; margin-bottom: 8px; }
.remote-calendar-head strong { font-size: 13px; text-transform: capitalize; }
.remote-calendar-head button { width: 30px; height: 28px; border: 1px solid #334155; border-radius: 6px; background: #172332; color: #fff; font-size: 18px; line-height: 1; cursor: pointer; }
.remote-calendar-week, .remote-calendar-days { display: grid; grid-template-columns: repeat(7, 1fr); gap: 4px; text-align: center; }
.remote-calendar-week span { color: #adc2d7; font-size: 12px; font-weight: 800; }
.remote-calendar-days button { min-width: 0; min-height: 28px; border: 0; border-radius: 5px; background: transparent; color: #fff; font: inherit; cursor: pointer; }
.remote-calendar-days button.muted { color: #7d8b9a; }
.remote-calendar-days button.active, .remote-calendar-days button:hover { background: #93c5fd; color: #082032; }
.field-check { display: flex; align-items: center; gap: 8px; align-self: end; min-height: 36px; color: #dbeafe; font-weight: 700; }
.field-check input { width: 16px; height: 16px; accent-color: #2563eb; }
.page-confirmation-modal { background: rgba(0, 0, 0, 0.34); }
.history-expired-page { min-height: calc(100vh - 36px); display: grid; place-items: center; }
.history-expired-panel { width: min(100%, 520px); border: 1px solid #36506b; border-radius: 8px; background: #11171d; box-shadow: 0 18px 46px rgba(0, 0, 0, 0.52); padding: 22px; }
.history-expired-panel h1 { margin-bottom: 8px; font-size: 26px; }
.history-expired-panel p { color: #dbeafe; font-size: 16px; line-height: 1.45; }
.history-expired-panel .actions { max-width: none; justify-content: flex-start; margin-top: 18px; }
.badge { display: inline-flex; align-items: center; justify-content: center; min-height: 24px; padding: 3px 8px; border-radius: 999px; border: 1px solid #334155; font-size: 12px; font-weight: 700; white-space: nowrap; }
.badge.muted { color: #7d8b9a; background: #101820; opacity: 0.75; }
.badge.ok { color: #bbf7d0; border-color: #276749; background: rgba(57, 174, 96, 0.12); }
.badge.warn { color: #ffbd66; border-color: #8a5a22; background: rgba(255, 189, 102, 0.10); }
.badge.optimization-group-flag { min-height: 18px; padding: 2px 7px; line-height: 1; font-size: 11px; vertical-align: middle; margin-left: 6px; }
.optimization-group-setup { display: inline-flex; align-items: center; justify-content: center; min-width: 38px; min-height: 20px; padding: 1px 7px; border-radius: 999px; border: 1px solid #276749; color: #bbf7d0; background: rgba(57, 174, 96, 0.12); font-weight: 700; line-height: 1; box-sizing: border-box; }
.optimizations-table .setup-cell { width: 58px; min-width: 58px; max-width: 58px; padding-left: 4px; padding-right: 4px; text-align: center; }
.optimizations-table td.setup-cell > .info-hover { width: 100%; min-width: 0; }
canvas { display: block; width: 100%; background: #0f1419; border: 1px solid #2a333d; border-radius: 8px; }
canvas:hover { cursor: crosshair; }
.legend-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(260px, 1fr)); gap: 8px; margin-top: 14px; color: #cbd5df; }
.legend-grid strong { display: inline-block; min-width: 58px; color: #fff; }
.tree-workflow { display: grid; justify-items: center; gap: 38px; padding: 12px 0; overflow-x: auto; }
.tree-level { position: relative; display: flex; justify-content: center; gap: 22px; min-width: 100%; }
.tree-level::before { content: ""; position: absolute; top: -38px; left: 50%; width: 1px; height: 38px; background: #425163; }
.tree-level:first-child::before { display: none; }
.tree-root, .tree-root ul { display: flex; justify-content: center; gap: 24px; margin: 0; padding: 0; list-style: none; }
.tree-root ul { position: relative; padding-top: 34px; }
.tree-root ul::before { content: ""; position: absolute; top: 16px; left: 50%; width: calc(100% - 260px); min-width: 0; height: 1px; transform: translateX(-50%); background: #425163; }
.tree-root ul.single-child::before { display: none; }
.tree-root li { position: relative; display: grid; justify-items: center; gap: 0; }
.tree-root li::before { content: ""; position: absolute; top: -18px; left: 50%; width: 1px; height: 18px; background: #425163; }
.tree-root > li::before { display: none; }
.tree-card { position: relative; display: grid; align-content: start; gap: 8px; width: max-content; min-width: 260px; max-width: min(330px, calc(100vw - 120px)); padding: 14px 18px; border: 1px solid #2a333d; border-radius: 8px; background: #101820; }
.tree-card::before { content: ""; position: absolute; top: -20px; left: 50%; width: 1px; height: 20px; background: #425163; }
.tree-card.has-children::after { content: ""; position: absolute; left: 50%; bottom: -18px; width: 1px; height: 18px; background: #425163; }
.tree-level:first-child .tree-card::before { display: none; }
.tree-root > li > .tree-card::before { display: none; }
.tree-card.active { border-color: #60a5fa; background: #172331; }
.tree-card-top { display: flex; align-items: center; gap: 10px; }
.tree-card-id { justify-self: start; display: inline-flex; min-height: 34px; align-items: center; padding: 0 12px; border: 1px solid #334155; border-radius: 7px; background: #132235; color: #fff; font-weight: 800; text-decoration: none; }
.tree-card-id span, .tree-card-id strong { color: inherit; }
.tree-card-score.score-value { justify-self: start; width: 126px; min-height: 26px; padding: 0 8px; font-size: 15px; }
.tree-card strong { font-size: 16px; line-height: 1.25; }
.tree-card-label { max-width: 290px; white-space: pre-line; overflow-wrap: anywhere; }
.tree-card span { color: #adc2d7; }
.tree-card-popover { position: absolute; left: 50%; top: calc(100% + 8px); z-index: 20; display: none; width: max-content; min-width: 280px; max-width: min(1120px, calc(100vw - 32px)); overflow-x: visible; transform: translateX(-50%); padding: 12px 14px; border: 1px solid #36506b; border-radius: 8px; background: #0f1720; box-shadow: 0 14px 36px rgba(0, 0, 0, 0.42); color: #dbeafe; text-align: left; white-space: normal; }
.tree-card:hover .tree-card-popover, .tree-card:focus-within .tree-card-popover { display: grid; gap: 7px; }
.info-popover.floating-popover, .tree-card-popover.floating-popover { position: fixed; left: 0; top: 0; z-index: 2000; display: none; max-height: calc(100vh - 24px); overflow-y: auto; transform: none; pointer-events: none; }
.info-popover.floating-popover.floating-visible, .tree-card-popover.floating-popover.floating-visible { display: grid; gap: 7px; }
.tree-card-popover-head { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; align-items: center; gap: 10px; width: 100%; }
.tree-card-popover .tree-card-metrics { display: grid; grid-template-columns: 160px; align-items: center; justify-content: flex-end; gap: 6px; margin-left: auto; }
.tree-card-popover .tree-card-popover-context { gap: 3px; }
.tree-card-popover .tree-card-popover-context span { display: grid; gap: 0; text-align: center; }
.tree-card-popover .tree-card-popover-context strong { color: #fff; font-size: 14px; line-height: 1.15; white-space: nowrap; }
.tree-card-popover b { justify-self: start; display: inline-flex; flex-direction: column; align-items: flex-start; gap: 2px; min-height: 28px; padding: 4px 8px; border: 1px solid #334155; border-radius: 7px; background: #132235; color: #fff; font-size: 24px; line-height: 1; }
.tree-card-popover b .tree-card-popover-setup-id { display: block; color: #fff; font-size: inherit; }
.tree-card-popover b .tree-card-popover-setup-details { display: grid; grid-template-columns: repeat(2, max-content); gap: 6px; }
.tree-card-popover b .tree-card-popover-setup-details strong { color: #b9d7f5; font-size: 12px; line-height: 1; white-space: nowrap; }
.tree-card-popover strong { display: block; color: #fff; font-size: 14px; line-height: 1.3; }
.tree-card-popover span { display: block; color: #b9d7f5; font-size: 13px; line-height: 1.3; }
.tree-card-popover em { display: block; color: #cbd5df; font-size: 12px; font-style: normal; line-height: 1.35; }
.tree-workflow.compact { display: grid; width: 100%; gap: 8px; padding: 8px 0; overflow: hidden; }
.tree-scroll { position: relative; order: 1; width: 100%; max-width: 100%; min-width: 0; min-height: 0; max-height: min(760px, calc(100vh - 220px)); overflow: hidden; scrollbar-gutter: stable both-edges; }
.tree-scroll.tree-scroll-fallback { overflow: auto; }
.tree-expand-footer { order: 2; display: grid; width: 100%; box-sizing: border-box; grid-template-columns: 1fr auto 1fr; align-items: center; justify-self: stretch; min-height: 34px; padding: 0 8px; }
.tree-expand-footer-top { order: 0; }
.tree-expand-controls { display: flex; gap: 8px; }
.tree-expand-controls-right { justify-self: end; }
.tree-expand-control { display: inline-flex; width: 32px; height: 32px; align-items: center; justify-content: center; border: 1px solid #5b8dbd; border-radius: 4px; background: #132235; color: #dbeafe; font-size: 22px; font-weight: 900; line-height: 1; text-decoration: none; }
.tree-expand-control:hover { border-color: #bfdbfe; background: #1d344d; color: #fff; }
.tree-expand-control.is-disabled { border-color: #334155; background: #111922; color: #526171; pointer-events: none; }
.tree-workflow.compact .tree-links { position: absolute; inset: 0; z-index: 1; overflow: visible; pointer-events: none; }
.tree-workflow.compact .tree-root { zoom: var(--tree-zoom, 0.78); }
.tree-workflow.compact .tree-root, .tree-workflow.compact .tree-root ul { gap: 10px; justify-content: center; }
.tree-workflow.compact .tree-root.layout-absolute { position: relative; z-index: 2; display: block; margin: 0; }
.tree-workflow.compact .tree-root.layout-absolute li.tree-boundary-marker { position: absolute; z-index: 3; top: 50%; display: inline-flex; align-items: center; justify-content: center; min-width: calc(58px / var(--tree-zoom, 1)); min-height: calc(28px / var(--tree-zoom, 1)); padding: 0; border: 2px dashed #526171; border-radius: 7px; background: #111922; color: #dbeafe; line-height: 1; transform: translateY(-50%); }
.tree-workflow.compact .tree-boundary-control { display: inline-flex; width: calc(29px / var(--tree-zoom, 1)); height: calc(28px / var(--tree-zoom, 1)); align-items: center; justify-content: center; color: #dbeafe; font-size: calc(22px / var(--tree-zoom, 1)); font-weight: 900; line-height: 1; text-decoration: none; cursor: pointer; }
.tree-workflow.compact .tree-boundary-control + .tree-boundary-control { border-left: 1px solid #334155; }
.tree-workflow.compact .tree-boundary-control:hover { background: #1d344d; color: #fff; }
.tree-workflow.compact .tree-boundary-control.is-disabled { color: #526171; cursor: default; pointer-events: none; }
.tree-workflow.compact .tree-boundary-marker::after { content: ""; position: absolute; top: 50%; width: var(--tree-marker-line-width, 36px); border-top: 2px dashed #6f91b4; }
.tree-workflow.compact .tree-boundary-marker-left { left: 8px; }
.tree-workflow.compact .tree-boundary-marker-left::after { left: 100%; }
.tree-workflow.compact .tree-boundary-marker-right { right: 8px; }
.tree-workflow.compact .tree-boundary-marker-right::after { right: 100%; }
.tree-workflow.compact .tree-root.layout-absolute ul, .tree-workflow.compact .tree-root.layout-absolute li { position: static; display: block; padding: 0; margin: 0; }
.tree-workflow.compact .tree-root.layout-absolute .tree-card { position: absolute; }
.tree-workflow.compact .tree-root ul { padding-top: 24px; }
.tree-workflow.compact .tree-root ul::before, .tree-workflow.compact .tree-root ul.single-child::before, .tree-workflow.compact .tree-root li::before, .tree-workflow.compact .tree-card::before, .tree-workflow.compact .tree-card::after { display: none; }
.tree-workflow.compact .tree-card { display: block; width: auto; min-width: 0; max-width: none; min-height: 0; padding: 0; border: 0; border-radius: 0; background: transparent; }
.tree-workflow.compact .tree-card.active { background: transparent; }
.tree-workflow.compact .tree-card > strong, .tree-workflow.compact .tree-card > span { display: none; }
.tree-workflow.compact .tree-card > .tree-card-label, .tree-workflow.compact .tree-card > span:not(.tree-card-popover) { display: none; }
.tree-workflow.compact .tree-card > .tree-card-top { position: relative; display: inline-flex; align-items: stretch; justify-content: center; gap: 7px; padding: 5px 7px; border: 1px solid #334155; border-radius: 7px; background: #132235; }
.tree-workflow.compact .tree-card-popover strong, .tree-workflow.compact .tree-card-popover span { display: block; }
.tree-workflow.compact .tree-card.active .tree-card-top { border-width: 3px; border-color: #bfdbfe; background: #172331; box-shadow: 0 0 0 3px rgba(96, 165, 250, 0.28), 0 0 18px rgba(96, 165, 250, 0.32); }
.tree-workflow.compact .tree-card-id { display: inline-flex; flex-direction: column; align-items: center; justify-content: center; min-width: 54px; min-height: 42px; padding: 0 2px; border: 0; background: transparent; border-radius: 0; line-height: 1.05; white-space: nowrap; }
.tree-workflow.compact .tree-card-id span { color: #b9d7f5; font-size: 11px; font-weight: 800; line-height: 1; }
.tree-workflow.compact .tree-card-id strong { color: #fff; font-size: 18px; font-weight: 900; line-height: 1.08; }
.tree-workflow.compact .tree-card-id small { color: #fff; font-size: 11px; font-weight: 800; line-height: 1.15; }
.tree-card-compact-metrics { display: inline-grid; gap: 2px; align-items: center; justify-items: end; }
.tree-workflow.compact .tree-card-top .daily-risk-cell { width: 87px; min-width: 87px; min-height: 20px; margin: 0; padding: 0 6px; border-radius: 6px; font-size: 10px; white-space: nowrap; }
.tree-workflow.compact .tree-card-top .daily-risk-cell span { display: inline; color: inherit; font-size: inherit; line-height: 1; }
.tree-workflow.compact .tree-card > .tree-card-top .tree-card-score.score-value { display: inline-flex; width: 87px; min-width: 87px; min-height: 20px; margin-top: 0; padding: 0 6px; font-size: 10px; border-radius: 999px; }
.tree-workflow.compact .tree-card-expand { position: absolute; left: calc(100% + 10px); top: 50%; display: inline-flex; width: 40px; height: 40px; align-items: center; justify-content: center; transform: translateY(-50%); border: 1px solid #5b8dbd; border-radius: 4px; background: #132235; color: #dbeafe; font-size: 24px; font-weight: 900; line-height: 1; text-decoration: none; }
.tree-workflow.compact .tree-card-expand { display: none; }
.tree-workflow.compact .tree-card-expand-parent { right: calc(100% + 10px); left: auto; }
.tree-workflow.compact .tree-card-expand:hover { border-color: #bfdbfe; background: #1d344d; color: #fff; }
.tree-card-popover .tree-card-score.score-value { width: 160px; min-height: 26px; margin-left: 0; padding: 3px 8px 0; font-size: 18px; line-height: 1; }
.tree-card-popover .daily-risk-cell { width: 160px; min-width: 160px; min-height: 26px; margin: 0; padding: 0 8px; font-size: 18px; }
.tree-card-popover .daily-risk-cell span { display: inline; color: inherit; font-size: inherit; line-height: 1; }
.tree-card-popover { width: max-content; min-width: 520px; max-width: min(1120px, calc(100vw - 32px)); }
.tree-card-popover .tree-card-popover-setup-context { display: grid; grid-template-columns: repeat(2, max-content); justify-content: start; gap: 16px; }
.tree-card-popover .tree-card-popover-setup-context span { display: grid; gap: 2px; }
.tree-card-popover .tree-card-popover-setup-context small { color: #7f98ad; font-size: 11px; font-weight: 500; line-height: 1; text-transform: uppercase; }
.tree-card-popover .tree-card-popover-setup-context strong { color: #fff; font-size: 14px; line-height: 1.15; white-space: nowrap; }
.tree-card-popover .tree-card-popover-setup-context { display: none; }
.tree-card-popover .identity-diff-table { width: max-content; min-width: 100%; table-layout: auto; }
.tree-card-popover .identity-diff-table th, .tree-card-popover .identity-diff-table td { white-space: nowrap; }
.tree-card-popover .identity-diff-table th:not(:first-child), .tree-card-popover .identity-diff-table td:not(:first-child) { width: 1%; }
@media (max-width: 1600px) {
  .tree-workflow.compact .tree-root { zoom: var(--tree-zoom, 0.62); }
}
@media (max-width: 900px) {
  body { padding: 12px; }
  .topbar { display: block; }
  .actions { justify-content: flex-start; margin-top: 12px; }
  .split { grid-template-columns: 1fr; }
  h1 { font-size: 24px; line-height: 1.12; overflow-wrap: anywhere; }
  h2 { font-size: 18px; line-height: 1.2; }
  p { font-size: 14px; line-height: 1.45; }
  .panel { padding: 14px; overflow-x: auto; }
  .panel-title, .chart-title-row, .pagination-footer, .license-table-actions { display: grid; grid-template-columns: 1fr; align-items: stretch; }
  .filterbar, .filter-left, .ranking-filterbar, .broker-field { display: grid; grid-template-columns: 1fr; align-items: stretch; }
  .filterbar input, .filterbar select, .filterbar .button, .filter-left input, .filter-left select, .filter-left .button, .broker-field input { width: 100%; min-width: 0; }
  .filter-left select, .license-compact-filterbar select { visibility: visible; }
  .broker-field { margin-left: 0; }
  .broker-note { min-height: 0; text-align: left; align-items: flex-start; }
  .stats-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); overflow: visible; }
  .stats-grid .stat:first-child, .stats-grid .stat:last-child, .stat, .stat.ontester-stat, .stat.ontester-stat + .stat { flex: none; min-width: 0; }
  .license-grid .stat:first-child { grid-column: auto; }
  .summary-grid, .tester-summary-grid, .compare-summary-grid { grid-template-columns: 1fr; }
  .compare-summary-card h3, .compare-summary-row { grid-template-columns: 1fr; }
  .tester-summary-card { min-width: 0; }
  .chart-metrics { justify-content: flex-start; }
  .chart-metric { min-width: min(100%, 126px); }
  .table-wrap { margin: 0 -14px; padding: 0 14px; }
  table { min-width: max-content; font-size: 13px; }
  th, td { padding: 9px 7px; }
  th { top: 0; }
  .row-actions { min-width: 0; white-space: normal; }
  .row-actions .button, .inline-form, .inline-form select, .review-menu { width: 100%; margin: 3px 0; }
  .mobile-priority-table .row-actions .button, .mobile-priority-table .inline-form .button { width: auto; min-width: 30px; height: 38px; min-height: 38px; margin: 2px; }
  .mobile-priority-table .inline-form, .mobile-priority-table .review-menu { width: auto; min-width: 30px; margin: 2px; }
  .details-grid { grid-template-columns: 1fr; }
  .optimized-param-grid { justify-content: flex-start; gap: 10px; }
  .optimized-param-grid span { min-width: min(100%, 150px); text-align: left; }
  .params-grid span { max-width: 100%; }
  .score-value { width: 132px; min-height: 34px; font-size: 19px; }
  .compare-stats .score-value { width: 104px; min-height: 22px; height: 22px; font-size: 15px; }
  .compare-score-label { font-size: 15px; }
  .compare-stats .compare-score-line { grid-template-columns: 12px auto auto; }
  .info-popover, .ranking-backtest-popover, .curve-preview-popover, .tree-card-popover { min-width: 0; max-width: calc(100vw - 24px); }
  .identity-popover { min-width: 0; }
  .identity-diff-table { font-size: 11px; }
  .identity-diff-table th, .identity-diff-table td { padding: 6px; }
  .ranking-preview-head { display: grid; grid-template-columns: 1fr; }
  .ranking-preview-subhead { display: grid; grid-template-columns: 1fr; }
  .ranking-preview-subhead span { text-align: left; }
  .ranking-preview-head .score-value, .curve-preview-popover .ranking-preview-head .score-value { width: 132px; }
  canvas, .ranking-preview-chart, .ranking-preview-tree, .curve-preview-popover canvas { min-height: 220px; }
  .legend-grid { grid-template-columns: 1fr; }
  .tree-workflow { justify-items: start; }
  .tree-card { min-width: 220px; max-width: calc(100vw - 64px); }
}
@media (max-width: 520px) {
  body { padding: 8px; }
  h1 { font-size: 22px; }
  .topbar { margin-bottom: 14px; }
  .button { width: 100%; min-height: 38px; padding: 8px 10px; font-size: 14px; }
  .button.small { min-height: 32px; font-size: 12px; }
  .actions, .title-row { display: grid; grid-template-columns: 1fr; gap: 8px; }
  .mobile-columns-toggle { display: inline-flex; width: auto; margin: 0 0 10px; }
  .mobile-priority-table:not(.mobile-columns-expanded) th, .mobile-priority-table:not(.mobile-columns-expanded) td { display: none; }
  .mobile-priority-table:not(.mobile-columns-expanded) { width: 100%; min-width: 100%; table-layout: fixed; }
  .mobile-priority-table:not(.mobile-columns-expanded) tr.subrow td { display: table-cell; }
  .ranking-table:not(.mobile-columns-expanded) th:nth-child(1), .ranking-table:not(.mobile-columns-expanded) td:nth-child(1), .ranking-table:not(.mobile-columns-expanded) th:nth-child(2), .ranking-table:not(.mobile-columns-expanded) td:nth-child(2), .ranking-table:not(.mobile-columns-expanded) th:nth-last-child(2), .ranking-table:not(.mobile-columns-expanded) td:nth-last-child(2), .ranking-table:not(.mobile-columns-expanded) th:nth-last-child(1), .ranking-table:not(.mobile-columns-expanded) td:nth-last-child(1) { display: table-cell; }
  .backtests-table:not(.mobile-columns-expanded):not(.compact-setup-table) th:nth-child(1), .backtests-table:not(.mobile-columns-expanded):not(.compact-setup-table) td:nth-child(1), .backtests-table:not(.mobile-columns-expanded):not(.compact-setup-table) th:nth-child(2), .backtests-table:not(.mobile-columns-expanded):not(.compact-setup-table) td:nth-child(2), .backtests-table:not(.mobile-columns-expanded):not(.compact-setup-table) th:nth-child(7), .backtests-table:not(.mobile-columns-expanded):not(.compact-setup-table) td:nth-child(7), .backtests-table:not(.mobile-columns-expanded):not(.compact-setup-table) th:nth-child(8), .backtests-table:not(.mobile-columns-expanded):not(.compact-setup-table) td:nth-child(8), .backtests-table:not(.mobile-columns-expanded):not(.compact-setup-table) th:nth-child(9), .backtests-table:not(.mobile-columns-expanded):not(.compact-setup-table) td:nth-child(9), .backtests-table:not(.mobile-columns-expanded):not(.compact-setup-table) th:nth-child(13), .backtests-table:not(.mobile-columns-expanded):not(.compact-setup-table) td:nth-child(13), .backtests-table:not(.mobile-columns-expanded):not(.compact-setup-table) th:nth-child(14), .backtests-table:not(.mobile-columns-expanded):not(.compact-setup-table) td:nth-child(14) { display: table-cell; }
  .backtests-table.compact-setup-table:not(.mobile-columns-expanded) th:nth-child(1), .backtests-table.compact-setup-table:not(.mobile-columns-expanded) td:nth-child(1), .backtests-table.compact-setup-table:not(.mobile-columns-expanded) th:nth-child(2), .backtests-table.compact-setup-table:not(.mobile-columns-expanded) td:nth-child(2), .backtests-table.compact-setup-table:not(.mobile-columns-expanded) th:nth-child(5), .backtests-table.compact-setup-table:not(.mobile-columns-expanded) td:nth-child(5), .backtests-table.compact-setup-table:not(.mobile-columns-expanded) th:nth-child(6), .backtests-table.compact-setup-table:not(.mobile-columns-expanded) td:nth-child(6), .backtests-table.compact-setup-table:not(.mobile-columns-expanded) th:nth-child(7), .backtests-table.compact-setup-table:not(.mobile-columns-expanded) td:nth-child(7), .backtests-table.compact-setup-table:not(.mobile-columns-expanded) th:nth-child(11), .backtests-table.compact-setup-table:not(.mobile-columns-expanded) td:nth-child(11), .backtests-table.compact-setup-table:not(.mobile-columns-expanded) th:nth-child(12), .backtests-table.compact-setup-table:not(.mobile-columns-expanded) td:nth-child(12) { display: table-cell; }
  .optimizations-table:not(.mobile-columns-expanded):not(.compact-setup-table) th:nth-child(1), .optimizations-table:not(.mobile-columns-expanded):not(.compact-setup-table) td:nth-child(1), .optimizations-table:not(.mobile-columns-expanded):not(.compact-setup-table) th:nth-child(2), .optimizations-table:not(.mobile-columns-expanded):not(.compact-setup-table) td:nth-child(2), .optimizations-table:not(.mobile-columns-expanded):not(.compact-setup-table) th:nth-child(3), .optimizations-table:not(.mobile-columns-expanded):not(.compact-setup-table) td:nth-child(3), .optimizations-table:not(.mobile-columns-expanded):not(.compact-setup-table) th:nth-child(8), .optimizations-table:not(.mobile-columns-expanded):not(.compact-setup-table) td:nth-child(8), .optimizations-table:not(.mobile-columns-expanded):not(.compact-setup-table) th:nth-child(9), .optimizations-table:not(.mobile-columns-expanded):not(.compact-setup-table) td:nth-child(9), .optimizations-table:not(.mobile-columns-expanded):not(.compact-setup-table) th:nth-child(10), .optimizations-table:not(.mobile-columns-expanded):not(.compact-setup-table) td:nth-child(10), .optimizations-table:not(.mobile-columns-expanded):not(.compact-setup-table) th:nth-child(12), .optimizations-table:not(.mobile-columns-expanded):not(.compact-setup-table) td:nth-child(12), .optimizations-table:not(.mobile-columns-expanded):not(.compact-setup-table) th:nth-child(13), .optimizations-table:not(.mobile-columns-expanded):not(.compact-setup-table) td:nth-child(13) { display: table-cell; }
  .optimizations-table.compact-setup-table:not(.mobile-columns-expanded) th:nth-child(1), .optimizations-table.compact-setup-table:not(.mobile-columns-expanded) td:nth-child(1), .optimizations-table.compact-setup-table:not(.mobile-columns-expanded) th:nth-child(2), .optimizations-table.compact-setup-table:not(.mobile-columns-expanded) td:nth-child(2), .optimizations-table.compact-setup-table:not(.mobile-columns-expanded) th:nth-child(3), .optimizations-table.compact-setup-table:not(.mobile-columns-expanded) td:nth-child(3), .optimizations-table.compact-setup-table:not(.mobile-columns-expanded) th:nth-child(6), .optimizations-table.compact-setup-table:not(.mobile-columns-expanded) td:nth-child(6), .optimizations-table.compact-setup-table:not(.mobile-columns-expanded) th:nth-child(7), .optimizations-table.compact-setup-table:not(.mobile-columns-expanded) td:nth-child(7), .optimizations-table.compact-setup-table:not(.mobile-columns-expanded) th:nth-child(8), .optimizations-table.compact-setup-table:not(.mobile-columns-expanded) td:nth-child(8), .optimizations-table.compact-setup-table:not(.mobile-columns-expanded) th:nth-child(10), .optimizations-table.compact-setup-table:not(.mobile-columns-expanded) td:nth-child(10), .optimizations-table.compact-setup-table:not(.mobile-columns-expanded) th:nth-child(11), .optimizations-table.compact-setup-table:not(.mobile-columns-expanded) td:nth-child(11) { display: table-cell; }
  .optimization-passes-table:not(.mobile-columns-expanded) th:nth-child(1), .optimization-passes-table:not(.mobile-columns-expanded) td:nth-child(1), .optimization-passes-table:not(.mobile-columns-expanded) th:nth-child(2), .optimization-passes-table:not(.mobile-columns-expanded) td:nth-child(2), .optimization-passes-table:not(.mobile-columns-expanded) th:nth-child(3), .optimization-passes-table:not(.mobile-columns-expanded) td:nth-child(3), .optimization-passes-table:not(.mobile-columns-expanded) th:nth-child(4), .optimization-passes-table:not(.mobile-columns-expanded) td:nth-child(4), .optimization-passes-table:not(.mobile-columns-expanded) th:nth-child(5), .optimization-passes-table:not(.mobile-columns-expanded) td:nth-child(5), .optimization-passes-table:not(.mobile-columns-expanded) th:nth-child(6), .optimization-passes-table:not(.mobile-columns-expanded) td:nth-child(6), .optimization-passes-table:not(.mobile-columns-expanded) th:nth-child(13), .optimization-passes-table:not(.mobile-columns-expanded) td:nth-child(13), .optimization-passes-table:not(.mobile-columns-expanded) th:nth-child(16), .optimization-passes-table:not(.mobile-columns-expanded) td:nth-child(16) { display: table-cell; }
  .backtests-table:not(.mobile-columns-expanded) th:nth-last-child(1), .backtests-table:not(.mobile-columns-expanded) td:nth-last-child(1), .optimizations-table:not(.mobile-columns-expanded) th:nth-last-child(1), .optimizations-table:not(.mobile-columns-expanded) td:nth-last-child(1), .optimization-passes-table:not(.mobile-columns-expanded) th:nth-last-child(1), .optimization-passes-table:not(.mobile-columns-expanded) td:nth-last-child(1) { display: none; }
  .mobile-priority-table.mobile-columns-expanded { min-width: max-content; }
  .mobile-priority-table .row-actions { min-width: 0; }
  .mobile-priority-table .row-actions .button, .mobile-priority-table .inline-form .button { width: auto; min-width: 30px; height: 38px; min-height: 38px; margin: 2px; padding-left: 8px; padding-right: 8px; }
  .mobile-priority-table .inline-form, .mobile-priority-table .review-menu { width: auto; min-width: 30px; margin: 2px; padding-left: 8px; padding-right: 8px; }
  .ranking-table .row-actions { width: 96px; max-width: 96px; }
  .ranking-table .row-actions .button { width: 38px; min-width: 38px; height: 38px; min-height: 38px; padding: 0; }
  .ranking-table .button.counted-button .button-count { font-size: 10px; }
  .ranking-table:not(.mobile-columns-expanded) th:nth-child(1), .ranking-table:not(.mobile-columns-expanded) td:nth-child(1) { width: 18px; }
  .ranking-table:not(.mobile-columns-expanded) th:nth-child(2), .ranking-table:not(.mobile-columns-expanded) td:nth-child(2) { width: 34px; }
  .ranking-table:not(.mobile-columns-expanded) th:nth-last-child(2), .ranking-table:not(.mobile-columns-expanded) td:nth-last-child(2) { width: 96px; }
  .ranking-table:not(.mobile-columns-expanded) th:nth-last-child(1), .ranking-table:not(.mobile-columns-expanded) td:nth-last-child(1) { width: 82px; }
  .ranking-table .score-value { width: 70px; min-height: 24px; padding: 0 3px; font-size: 11px; }
  .ranking-table:not(.mobile-columns-expanded) th, .ranking-table:not(.mobile-columns-expanded) td { display: none !important; }
  .ranking-table:not(.mobile-columns-expanded) th:nth-child(1), .ranking-table:not(.mobile-columns-expanded) td:nth-child(1), .ranking-table:not(.mobile-columns-expanded) th:nth-child(2), .ranking-table:not(.mobile-columns-expanded) td:nth-child(2), .ranking-table:not(.mobile-columns-expanded) th:nth-last-child(2), .ranking-table:not(.mobile-columns-expanded) td:nth-last-child(2), .ranking-table:not(.mobile-columns-expanded) th:nth-last-child(1), .ranking-table:not(.mobile-columns-expanded) td:nth-last-child(1) { display: table-cell !important; }
  .ranking-table:not(.mobile-columns-expanded) th:nth-last-child(1) a { font-size: 0; }
  .ranking-table:not(.mobile-columns-expanded) th:nth-last-child(1) a::after { content: "Score"; font-size: 12px; }
  .ranking-table:not(.mobile-columns-expanded), .ranking-table:not(.mobile-columns-expanded) thead, .ranking-table:not(.mobile-columns-expanded) tbody { display: block; width: 100%; min-width: 0; }
  .ranking-table:not(.mobile-columns-expanded) tr { display: grid; grid-template-columns: 18px 34px 96px 86px; justify-content: start; column-gap: 12px; align-items: center; width: 100%; }
  .ranking-table:not(.mobile-columns-expanded) th, .ranking-table:not(.mobile-columns-expanded) td { min-width: 0; }
  .mobile-priority-table .review-menu summary { min-width: 62px; padding-left: 8px; padding-right: 8px; }
  .mobile-priority-table .score-value { width: 104px; min-height: 28px; padding: 0 7px; font-size: 15px; }
  .panel { padding: 12px; margin-bottom: 14px; }
  .panel-title, .chart-title-row, .pagination-footer { gap: 8px; }
  .stats-grid { grid-template-columns: 1fr; gap: 8px; }
  .stat { min-height: 0; padding: 12px 10px; }
  .stat span { margin-bottom: 6px; font-size: 12px; }
  .stat strong, .summary-grid strong.period-cell, .stat strong.period-cell, .summary-grid strong.period-cell span, .stat strong.period-cell span { font-size: 18px; }
  .summary-grid div { padding: 9px 10px; }
  .table-wrap { margin: 0 -12px; padding: 0 12px; }
  table { font-size: 12px; }
  th, td { padding: 8px 6px; }
  .operation-cell, .params { max-width: 220px; }
  .review-menu div { position: fixed; left: 8px; right: 8px; top: auto; min-width: 0; }
  .codex-tooltip { max-width: calc(100vw - 24px); }
  .curve-preview-popover { width: calc(100vw - 24px); padding: 10px; }
  canvas, .ranking-preview-chart, .ranking-preview-tree, .curve-preview-popover canvas { min-height: 190px; }
}
