:root {
  color-scheme: dark;
  --bg: #06100d;
  --panel: #0d1c18;
  --panel-2: #11251f;
  --line: #27443b;
  --text: #f1f8f4;
  --muted: #94aaa2;
  --lime: #baff55;
  --cyan: #59e6cf;
  --yellow: #ffd15b;
  --red: #ff7e78;
  --shadow: 0 20px 70px rgba(0, 0, 0, .28);
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  min-height: 100vh;
  color: var(--text);
  background:
    radial-gradient(circle at 80% 0%, rgba(89, 230, 207, .12), transparent 30rem),
    linear-gradient(140deg, #040a08, var(--bg) 58%, #081813);
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}
body::before {
  content: "";
  position: fixed;
  inset: 0;
  pointer-events: none;
  opacity: .13;
  background-image: linear-gradient(rgba(255,255,255,.035) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,.035) 1px, transparent 1px);
  background-size: 42px 42px;
}
.shell { width: min(1480px, calc(100% - 40px)); margin: auto; padding: 48px 0 70px; }
.hero { display: flex; justify-content: space-between; align-items: flex-end; gap: 30px; margin-bottom: 28px; }
.eyebrow, .step-label { color: var(--cyan); font-size: .72rem; font-weight: 900; letter-spacing: .18em; margin: 0 0 8px; }
h1 { margin: 0; font-size: clamp(4rem, 10vw, 7rem); line-height: .84; letter-spacing: -.07em; }
.copyright { margin: 13px 0 0; color: rgba(213,231,224,.66); font-size: .7rem; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; }
.subtitle { margin: 20px 0 0; color: var(--muted); font-size: 1.05rem; }
.session-panel { display: flex; align-items: center; gap: 9px; flex-wrap: wrap; justify-content: flex-end; }
.ui-switches { display: inline-flex; align-items: center; gap: 7px; }
.ui-switch-group { display: inline-flex; align-items: center; gap: 4px; padding: 4px; border: 1px solid rgba(89,230,207,.28); border-radius: 999px; background: rgba(4,15,12,.72); box-shadow: 0 0 0 1px rgba(255,255,255,.025) inset; }
.ui-switch-button { min-width: 46px; height: 30px; padding: 7px 11px; border: 2px solid rgba(238,255,247,.18); border-radius: 999px; color: #fff; background: rgba(238,255,247,.08); font-size: .68rem; letter-spacing: .08em; text-transform: uppercase; font-weight: 1000; font-variant-numeric: tabular-nums; box-shadow: 0 0 0 1px rgba(0,0,0,.18) inset; text-shadow: 0 1px 2px rgba(0,0,0,.62); transition: transform .15s ease, border-color .15s ease, box-shadow .15s ease, filter .15s ease, opacity .15s ease; }
.ui-switch-button.active { transform: translateY(-1px); border-color: var(--cyan); box-shadow: 0 0 0 3px rgba(89,230,207,.54), 0 0 0 1px rgba(255,255,255,.24) inset, 0 8px 18px rgba(0,0,0,.32), 0 0 24px rgba(89,230,207,.5); }
.ui-switch-button:not(.active) { filter: saturate(.9) brightness(.92); opacity: .96; }
.ui-switch-button:not(.active):hover { border-color: rgba(255,255,255,.52); filter: saturate(1.05) brightness(1.08); opacity: 1; }
.ui-switch-button[data-language-option="de"] { background: linear-gradient(180deg, #050505 0 34%, #dd0000 34% 67%, #ffce00 67% 100%); background-clip: padding-box; }
.ui-switch-button[data-language-option="de"].active { border-color: var(--cyan); box-shadow: 0 0 0 3px rgba(89,230,207,.54), 0 0 0 1px rgba(255,255,255,.2) inset, 0 8px 18px rgba(0,0,0,.32), 0 0 24px rgba(89,230,207,.5); }
.ui-switch-button[data-language-option="en"] { background: linear-gradient(180deg, rgba(60,59,110,.95) 0 46%, transparent 46% 100%), repeating-linear-gradient(180deg, #b22234 0 3px, #fff 3px 6px); background-size: 44% 54%, 100% 100%; background-repeat: no-repeat, repeat; background-position: left top, center; color: #fff; }
.ui-switch-button[data-language-option="en"].active { border-color: var(--cyan); box-shadow: 0 0 0 3px rgba(89,230,207,.54), 0 0 0 1px rgba(255,255,255,.38) inset, 0 8px 18px rgba(0,0,0,.32), 0 0 24px rgba(89,230,207,.5); }
.ui-switch-button[data-currency-option] { display: inline-flex; align-items: center; justify-content: center; font-size: 1.05rem; line-height: 1; letter-spacing: 0; padding-top: 0; padding-bottom: 1px; }
.ui-switch-button[data-currency-option="EUR"] { background: linear-gradient(180deg, #174a9f, #0b2f6f); }
.ui-switch-button[data-currency-option="EUR"].active { border-color: var(--cyan); box-shadow: 0 0 0 3px rgba(89,230,207,.54), 0 0 0 1px rgba(255,216,77,.38) inset, 0 8px 18px rgba(0,0,0,.3), 0 0 24px rgba(89,230,207,.5); }
.ui-switch-button[data-currency-option="USD"] { background: linear-gradient(180deg, #1d8a50, #0d4a2b); }
.ui-switch-button[data-currency-option="USD"].active { border-color: var(--cyan); box-shadow: 0 0 0 3px rgba(89,230,207,.54), 0 0 0 1px rgba(98,240,160,.4) inset, 0 8px 18px rgba(0,0,0,.3), 0 0 24px rgba(89,230,207,.5); }
.mode-pill, .badge, .risk-light { border: 1px solid var(--line); border-radius: 999px; padding: 8px 12px; color: var(--muted); font-size: .76rem; background: rgba(13,28,24,.9); white-space: nowrap; }
.badge.yellow { color: var(--yellow); border-color: rgba(255,209,91,.45); background: rgba(255,209,91,.12); }
.mode-pill span { display: inline-block; width: 8px; height: 8px; margin-right: 7px; border-radius: 50%; background: var(--lime); box-shadow: 0 0 13px var(--lime); }
.mode-pill.readonly span { background: var(--yellow); box-shadow: 0 0 13px var(--yellow); }
.mode-pill.authenticated { color: var(--lime); border-color: rgba(186,255,85,.42); }
.session-button { padding: 9px 12px; border: 1px solid rgba(89,230,207,.35); border-radius: 999px; color: var(--cyan); background: rgba(89,230,207,.08); font-size: .72rem; letter-spacing: .08em; text-transform: uppercase; }
.helper { color: var(--muted); margin: 0; line-height: 1.55; }
.challenger-help { margin-top: 9px; padding-left: 10px; border-left: 3px solid rgba(255,209,91,.5); color: rgba(213,231,224,.78); }
.steps { display: grid; grid-template-columns: repeat(3, 1fr); gap: 10px; margin: 18px 0; }
.steps a { display: flex; align-items: center; gap: 12px; padding: 15px; color: var(--text); text-decoration: none; border: 1px solid var(--line); border-radius: 14px; background: rgba(13,28,24,.72); }
.steps b { display: grid; place-items: center; width: 34px; height: 34px; border-radius: 50%; color: #09251e; background: var(--cyan); }
.steps span { font-weight: 800; }
.steps small { display: block; color: var(--muted); font-size: .62rem; letter-spacing: .12em; margin-bottom: 2px; }
.seo-info { margin: 0 0 18px; padding: 14px 16px; border: 1px solid rgba(89,230,207,.22); border-left: 4px solid var(--cyan); border-radius: 10px; background: rgba(4,15,12,.48); }
.seo-info div { display: flex; flex-wrap: wrap; align-items: baseline; gap: 10px; margin-bottom: 7px; }
.seo-info span { color: var(--cyan); font-size: .62rem; font-weight: 900; letter-spacing: .14em; text-transform: uppercase; }
.seo-info strong { color: var(--text); font-size: .92rem; }
.seo-info p { margin: 0; color: var(--muted); font-size: .76rem; line-height: 1.5; }
.market-maturity-gauge { display: grid; grid-template-columns: minmax(230px, .9fr) 250px minmax(250px, .95fr); gap: 22px; align-items: center; margin: 0 0 18px; padding: 18px 20px; border: 1px solid rgba(89,230,207,.24); border-radius: 14px; background: linear-gradient(135deg, rgba(89,230,207,.065), rgba(3,14,11,.62)); box-shadow: 0 0 0 1px rgba(255,255,255,.018) inset; }
.market-maturity-copy > span { display: block; color: var(--cyan); font-size: 1.05rem; font-weight: 1000; letter-spacing: .08em; text-transform: uppercase; }
.market-maturity-copy > strong { display: block; margin-top: 5px; font-size: 1.35rem; letter-spacing: -.02em; }
.market-maturity-copy > strong.phase-wild { color: var(--red); text-shadow: 0 0 16px rgba(255,126,120,.2); }
.market-maturity-copy > strong.phase-early { color: var(--yellow); text-shadow: 0 0 16px rgba(255,209,91,.2); }
.market-maturity-copy > strong.phase-build { color: #d6ff5a; text-shadow: 0 0 16px rgba(214,255,90,.18); }
.market-maturity-copy > strong.phase-mature { color: var(--lime); text-shadow: 0 0 16px rgba(186,255,85,.2); }
.market-maturity-copy > small { display: block; margin-top: 6px; color: var(--muted); line-height: 1.45; }
.market-maturity-next-update { display: block; margin-top: 14px; color: var(--cyan); font-size: .78rem; font-style: normal; font-weight: 900; letter-spacing: .04em; text-transform: uppercase; }
.market-maturity-global-scores { display: grid; grid-template-columns: minmax(0, .95fr) minmax(190px, 1.05fr); gap: 8px; margin-top: 14px; }
.market-maturity-global-scores > div { min-height: 96px; padding: 11px 12px; border: 1px solid rgba(89,230,207,.22); border-radius: 10px; background: rgba(3,14,11,.38); }
.market-maturity-global-scores span { display: block; color: var(--cyan); font-size: .57rem; font-weight: 1000; letter-spacing: .08em; text-transform: uppercase; }
.market-maturity-global-scores strong { display: block; margin-top: 7px; color: var(--lime); font-size: 1.35rem; letter-spacing: 0; }
.market-maturity-global-scores small { margin-top: 6px; font-size: .64rem; line-height: 1.35; }
.market-maturity-dial { --market-maturity-score: 0; position: relative; justify-self: center; width: 230px; aspect-ratio: 1; border-radius: 50%; background: conic-gradient(from 225deg, var(--red) 0deg 67.5deg, var(--yellow) 67.5deg 135deg, #d6ff5a 135deg 202.5deg, var(--lime) 202.5deg 270deg, rgba(255,255,255,.055) 270deg 360deg); box-shadow: inset 0 0 0 14px rgba(3,14,11,.82), inset 0 0 40px rgba(0,0,0,.35), 0 0 30px rgba(89,230,207,.09); }
.market-maturity-dial::after { content: ""; position: absolute; inset: 38px; border-radius: 50%; background: #071411; box-shadow: inset 0 0 24px rgba(0,0,0,.42); }
.market-maturity-needle { position: absolute; z-index: 2; left: 50%; top: 50%; width: 4px; height: 74px; border-radius: 999px; background: #f4fff9; transform-origin: 50% 92%; transform: translate(-50%, -92%) rotate(calc(-135deg + var(--market-maturity-score) * 2.7deg)); box-shadow: 0 0 14px rgba(255,255,255,.4); }
.market-maturity-center { position: absolute; z-index: 3; left: 50%; top: 50%; width: 22px; height: 22px; border: 3px solid rgba(255,255,255,.86); border-radius: 50%; background: #071411; transform: translate(-50%, -50%); box-shadow: 0 0 16px rgba(89,230,207,.45); }
.market-maturity-dial b { position: absolute; z-index: 4; left: 50%; bottom: 43px; transform: translateX(-50%); color: var(--text); font-size: 1.25rem; }
.market-maturity-phases { display: grid; gap: 8px; color: var(--muted); font-size: .68rem; font-weight: 800; }
.market-maturity-phases span { display: grid; grid-template-columns: 10px minmax(0, 1fr) 60px; grid-template-rows: auto auto; column-gap: 9px; align-items: center; min-height: 62px; padding: 9px 10px; border: 1px solid rgba(255,255,255,.08); border-radius: 10px; background: rgba(3,14,11,.36); overflow: hidden; }
.market-maturity-phases span::before { content: ""; grid-row: 1 / span 2; width: 10px; height: 100%; border-radius: 999px; box-shadow: 0 0 14px currentColor; }
.market-maturity-phases strong { color: var(--text); font-size: .68rem; letter-spacing: .08em; text-transform: uppercase; }
.market-maturity-phases small { margin-top: 2px; color: var(--muted); line-height: 1.35; }
.market-maturity-phases svg { grid-column: 3; grid-row: 1 / span 2; width: 60px; height: 38px; opacity: .62; fill: none; stroke: currentColor; stroke-width: 2.4; stroke-linecap: round; stroke-linejoin: round; filter: drop-shadow(0 0 9px currentColor); }
.market-maturity-phases .phase-wild::before { color: var(--red); background: var(--red); }
.market-maturity-phases .phase-early::before { color: var(--yellow); background: var(--yellow); }
.market-maturity-phases .phase-build::before { color: #d6ff5a; background: #d6ff5a; }
.market-maturity-phases .phase-mature::before { color: var(--lime); background: var(--lime); }
.market-maturity-phases .phase-wild { color: var(--red); }
.market-maturity-phases .phase-early { color: var(--yellow); }
.market-maturity-phases .phase-build { color: #d6ff5a; }
.market-maturity-phases .phase-mature { color: var(--lime); }
.panel { margin-top: 18px; padding: 27px; border: 1px solid var(--line); border-radius: 22px; background: linear-gradient(145deg, rgba(17,37,31,.96), rgba(8,22,18,.96)); box-shadow: var(--shadow); }
.panel-heading { display: flex; justify-content: space-between; align-items: flex-start; gap: 20px; margin-bottom: 22px; }
h2, h3 { margin: 0; letter-spacing: -.025em; }
.panel-heading h2 { font-size: 1.65rem; margin-bottom: 7px; }
button { border: 0; border-radius: 11px; padding: 14px 18px; font: inherit; font-weight: 900; cursor: pointer; transition: transform .16s, filter .16s, opacity .16s; }
button:hover:not(:disabled) { transform: translateY(-1px); filter: brightness(1.06); }
button:disabled { cursor: not-allowed; opacity: .38; }
.primary { color: #102006; background: var(--lime); }
.finder > .primary { width: 100%; }
.stable-finder > .primary { width: 100%; }
.arbitrage-finder > .primary { width: 100%; }
.pool-action-card { margin-top: 10px; padding: 14px; border: 1px solid rgba(89,230,207,.2); border-radius: 14px; background: linear-gradient(135deg, rgba(89,230,207,.055), rgba(3,14,11,.48)); box-shadow: 0 0 0 1px rgba(255,255,255,.018) inset; }
.pool-action-bar { display: grid; grid-template-columns: minmax(220px, 1fr) auto; gap: 12px; align-items: stretch; }
.pool-action-bar .primary { width: 100%; }
.pool-filter-tabs { display: inline-flex; align-items: center; gap: 6px; padding: 5px; border: 1px solid var(--line); border-radius: 12px; background: rgba(4,15,12,.55); }
.pool-filter-tab { min-width: 92px; padding: 9px 11px; border: 1px solid transparent; border-radius: 8px; color: var(--muted); background: transparent; font-size: .68rem; letter-spacing: .06em; text-transform: uppercase; }
.pool-filter-tab.active { color: #102006; border-color: rgba(186,255,85,.5); background: var(--lime); box-shadow: 0 0 16px rgba(186,255,85,.18); }
.pool-action-card .status { margin: 12px 0 0; }
.auth-dialog { position: fixed; inset: 0; z-index: 100; display: grid; place-items: center; padding: 20px; background: rgba(2,8,6,.72); backdrop-filter: blur(7px); }
.auth-dialog.hidden { display: none; }
.auth-card { position: relative; width: min(380px, 100%); padding: 24px; border: 1px solid rgba(89,230,207,.28); border-radius: 14px; background: #0b1c17; box-shadow: 0 24px 90px rgba(0,0,0,.42); }
.visitor-card { position: relative; width: min(760px, 100%); max-height: min(760px, 92vh); overflow: auto; padding: 24px; border: 1px solid rgba(89,230,207,.28); border-radius: 14px; background: #0b1c17; box-shadow: 0 24px 90px rgba(0,0,0,.42); }
.auth-card h2 { margin-bottom: 8px; }
.visitor-card h2 { margin-bottom: 8px; }
.auth-card p { color: var(--muted); line-height: 1.45; }
.visitor-note { margin: 0 0 16px; color: var(--muted); line-height: 1.45; }
.auth-card label { display: block; margin: 15px 0 7px; color: var(--cyan); font-size: .68rem; font-weight: 900; letter-spacing: .12em; text-transform: uppercase; }
.auth-card input { width: 100%; padding: 12px; border: 1px solid var(--line); border-radius: 10px; color: var(--text); background: #071411; font: inherit; }
.auth-card .primary { width: 100%; margin-top: 13px; }
.auth-close { position: absolute; top: 10px; right: 10px; width: 34px; height: 34px; padding: 0; border: 1px solid var(--line); border-radius: 50%; color: var(--muted); background: rgba(255,255,255,.04); }
.auth-message { min-height: 1.3em; margin: 11px 0 0; color: var(--red); font-size: .82rem; }
.visitor-content { display: grid; gap: 16px; }
.visitor-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 10px; }
.visitor-grid > div { min-width: 0; padding: 13px; border: 1px solid var(--line); border-radius: 8px; background: rgba(4,15,12,.55); }
.visitor-grid span { display: block; color: var(--cyan); font-size: .62rem; font-weight: 900; letter-spacing: .08em; text-transform: uppercase; }
.visitor-grid strong { display: block; margin-top: 6px; color: var(--lime); font-size: 1.35rem; }
.visitor-grid small { display: block; margin-top: 5px; color: var(--muted); }
.visitor-chart { display: flex; align-items: flex-end; gap: 5px; height: 76px; padding: 12px; border: 1px solid var(--line); border-radius: 8px; background: rgba(4,15,12,.55); }
.visitor-chart span { flex: 1; min-width: 5px; border-radius: 999px 999px 2px 2px; background: linear-gradient(180deg, var(--lime), var(--cyan)); box-shadow: 0 0 12px rgba(89,230,207,.18); }
.visitor-lists { display: grid; grid-template-columns: repeat(3, 1fr); gap: 12px; }
.visitor-lists > div { padding: 13px; border: 1px solid var(--line); border-radius: 8px; background: rgba(4,15,12,.55); }
.visitor-lists h3 { margin-bottom: 10px; color: var(--cyan); font-size: .72rem; letter-spacing: .08em; text-transform: uppercase; }
.visitor-lists ul { display: grid; gap: 7px; margin: 0; padding: 0; list-style: none; }
.visitor-lists li { display: flex; justify-content: space-between; gap: 10px; color: var(--muted); font-size: .8rem; }
.visitor-lists b { color: var(--text); }
.readonly-note { color: var(--yellow); }
.search-progress { position: relative; margin-top: 14px; padding: 14px 14px 14px 70px; border: 1px solid rgba(255,209,91,.32); border-radius: 14px; background: linear-gradient(90deg, rgba(255,209,91,.13), rgba(7,20,17,.74)); box-shadow: 0 0 28px rgba(255,209,91,.10); }
.search-progress::before { content: ""; position: absolute; left: 18px; top: 50%; width: 34px; height: 34px; border: 4px solid rgba(255,209,91,.22); border-top-color: var(--yellow); border-radius: 50%; box-shadow: 0 0 16px rgba(255,209,91,.32); transform: translateY(-50%); }
.progress-copy { display: flex; justify-content: space-between; gap: 15px; margin-bottom: 9px; color: var(--muted); font-size: .75rem; }
.progress-copy span { color: var(--yellow); font-weight: 800; }
.progress-copy strong { color: var(--yellow); }
.progress-track { height: 9px; overflow: hidden; border-radius: 999px; background: #071411; border: 1px solid #26463d; }
.progress-fill { position: relative; width: 0; height: 100%; overflow: hidden; border-radius: inherit; background: linear-gradient(90deg, var(--yellow), var(--lime)); box-shadow: 0 0 14px rgba(255,209,91,.35); transition: width .25s ease; }
.search-progress.is-active .progress-fill { animation: progress-pulse 1.15s ease-in-out infinite; }
.search-progress.is-active { animation: analysis-card-pulse 1.15s ease-in-out infinite; }
.search-progress.is-active::before { animation: search-progress-spin .85s linear infinite; }
.search-progress.is-active .progress-fill::after {
  content: "";
  position: absolute;
  inset: 0;
  width: 45%;
  background: linear-gradient(90deg, transparent, rgba(255,255,255,.7), transparent);
  transform: translateX(-120%);
  animation: progress-sweep 1.25s linear infinite;
}
.search-progress.is-complete { border-color: rgba(186,255,85,.42); box-shadow: 0 0 22px rgba(186,255,85,.12); }
.search-progress.is-complete::before {
  border-color: var(--lime);
  background: radial-gradient(circle, rgba(186,255,85,.72) 0 35%, rgba(186,255,85,.22) 38% 55%, transparent 58%);
  box-shadow:
    0 0 10px rgba(186,255,85,.75),
    0 0 24px rgba(186,255,85,.46),
    inset 0 0 10px rgba(186,255,85,.35);
}
.search-progress.is-complete .progress-fill { box-shadow: 0 0 18px rgba(186,255,85,.55); }
.analysis-loading-badge { animation: analysis-badge-pulse 1s ease-in-out infinite; }
.analysis-loading-card { display: flex; align-items: center; gap: 18px; width: 100%; padding: 20px; border: 1px solid rgba(255,209,91,.38); border-radius: 14px; background: linear-gradient(90deg, rgba(255,209,91,.13), rgba(7,20,17,.74)); box-shadow: 0 0 32px rgba(255,209,91,.12); animation: analysis-card-pulse 1.15s ease-in-out infinite; }
.analysis-loading-card strong { display: block; color: var(--yellow); font-size: 1.05rem; }
.analysis-loading-card span:not(.analysis-loading-ring) { display: block; margin-top: 5px; color: var(--muted); line-height: 1.45; }
.analysis-loading-ring { flex: 0 0 auto; width: 42px; height: 42px; border: 4px solid rgba(255,209,91,.22); border-top-color: var(--yellow); border-radius: 50%; box-shadow: 0 0 18px rgba(255,209,91,.38); animation: analysis-spin .85s linear infinite; }
@keyframes analysis-spin { to { transform: rotate(360deg); } }
@keyframes search-progress-spin { to { transform: translateY(-50%) rotate(360deg); } }
@keyframes analysis-badge-pulse {
  0%, 100% { filter: brightness(.85); box-shadow: 0 0 0 rgba(255,209,91,0); }
  50% { filter: brightness(1.4); box-shadow: 0 0 22px rgba(255,209,91,.32); }
}
@keyframes analysis-card-pulse {
  0%, 100% { border-color: rgba(255,209,91,.28); }
  50% { border-color: rgba(255,209,91,.72); }
}
@keyframes progress-pulse {
  0%, 100% { filter: brightness(.86); }
  50% { filter: brightness(1.35); }
}
@keyframes progress-sweep {
  to { transform: translateX(330%); }
}
@media (prefers-reduced-motion: reduce) {
  .search-progress.is-active .progress-fill,
  .search-progress.is-active .progress-fill::after,
  .pool-loading-spinner { animation: none; }
}
.status { min-height: 1.3em; color: var(--muted); font-size: .82rem; margin: 12px 0 0; }
.pool-list { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 11px; margin-top: 20px; }
.pool-pagination { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-top: 14px; padding-top: 12px; border-top: 1px solid var(--line); }
.pool-pagination-pages { display: flex; align-items: center; gap: 10px; min-width: 0; }
.pool-pagination button { width: auto; padding: 8px 12px; color: var(--cyan); background: rgba(89,230,207,.1); border: 1px solid rgba(89,230,207,.25); font-size: .72rem; }
.pool-pagination button:disabled { cursor: default; opacity: .45; transform: none; }
.pool-pagination span { display: grid; gap: 2px; color: var(--muted); font-size: .72rem; text-align: center; }
.pool-pagination strong { color: var(--text); font-size: .78rem; }
.pool-pagination small { color: var(--muted); }
.pool-page-size { display: flex; align-items: center; gap: 8px; color: var(--muted); font-size: .72rem; white-space: nowrap; }
.pool-page-size select { width: auto; min-width: 78px; padding: 8px 10px; color: var(--text); background: rgba(4,15,12,.72); border: 1px solid var(--line); border-radius: 8px; font: inherit; font-weight: 800; }
.pool-card { position: relative; text-align: left; color: var(--text); background: rgba(4,15,12,.55); border: 1px solid var(--line); padding: 16px; }
.pool-card.loading { padding-bottom: 34px; }
.pool-card.locked, .pool-card.locked:disabled { cursor: wait; opacity: .78; filter: saturate(.8); }
.pool-card.locked:hover { transform: none; border-color: var(--line); background: rgba(4,15,12,.55); filter: saturate(.8); }
.pool-card:hover, .pool-card.selected { border-color: var(--cyan); background: rgba(24,55,46,.75); }
.pool-card small { display: block; color: var(--muted); margin-top: 7px; font-weight: 500; }
.pool-card-metrics { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 7px; margin-top: 12px; padding-top: 10px; border-top: 1px solid var(--line); }
.pool-card-metrics > span { min-width: 0; }
.pool-card-metrics small { margin: 0 0 4px; color: var(--cyan); font-size: .56rem; font-weight: 900; letter-spacing: .08em; text-transform: uppercase; }
.pool-card-metrics b { display: block; overflow-wrap: anywhere; font-size: .72rem; color: var(--text); }
.pool-card-status { margin-top: 10px; font-size: .68rem; }
.position-pool-grid .model-warning { color: var(--yellow); font-weight: 800; }
.risk-rating { font-weight: 900; }
.risk-rating.weak { color: var(--red); }
.risk-rating.medium { color: var(--yellow); }
.risk-rating.good { color: var(--lime); }
.risk-rating.neutral { color: var(--muted); }
.pool-card .card-top { display: flex; justify-content: space-between; gap: 8px; }
.pool-title { min-width: 0; }
.pool-title strong { display: block; overflow-wrap: anywhere; }
.pool-title small { overflow-wrap: anywhere; }
.pool-type-badge { display: inline-flex; width: fit-content; margin-top: 7px; padding: 3px 7px; border: 1px solid rgba(148,170,162,.25); border-radius: 999px; color: var(--muted); background: rgba(148,170,162,.08); font-size: .56rem; font-weight: 900; letter-spacing: .08em; text-transform: uppercase; }
.pool-type-badge.stable { color: var(--cyan); border-color: rgba(89,230,207,.38); background: rgba(89,230,207,.10); }
.pool-scores { display: grid; flex: 0 0 auto; gap: 7px; }
.score-sparkline { display: block; flex: 0 0 98px; width: 98px; height: 40px; align-self: center; padding: 2px; border: 1px solid rgba(89,230,207,.14); border-radius: 8px; background: rgba(3,14,11,.34); }
.score-sparkline.compact { flex-basis: 82px; width: 82px; height: 34px; }
.score-sparkline.large { position: relative; flex: 0 0 168px; width: 168px; height: 82px; padding: 6px 6px 17px; border-color: rgba(89,230,207,.22); background: linear-gradient(135deg, rgba(89,230,207,.06), rgba(3,14,11,.48)); }
.score-sparkline svg { display: block; width: 100%; height: 100%; overflow: visible; }
.score-sparkline-grid { fill: none; stroke: rgba(148,170,162,.18); stroke-width: 1; stroke-dasharray: 3 4; }
.score-sparkline-pool { fill: none; stroke: var(--lime); stroke-width: 2.2; stroke-linecap: round; stroke-linejoin: round; filter: drop-shadow(0 0 5px rgba(186,255,85,.35)); }
.score-sparkline-security { fill: none; stroke: var(--yellow); stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; filter: drop-shadow(0 0 5px rgba(255,209,91,.28)); }
.score-sparkline.large .score-sparkline-pool { stroke-width: 2.5; }
.score-sparkline.large .score-sparkline-security { stroke-width: 2.25; }
.score-sparkline-pool-dot { fill: var(--lime); }
.score-sparkline-security-dot { fill: var(--yellow); }
.score-sparkline-empty { fill: none; stroke: rgba(148,170,162,.28); stroke-width: 1.5; stroke-dasharray: 4 4; }
.score-sparkline-legend { position: absolute; left: 8px; right: 8px; bottom: 4px; display: flex; align-items: center; gap: 5px; color: var(--muted); font-size: .54rem; font-weight: 900; letter-spacing: .05em; text-transform: uppercase; }
.score-sparkline-legend i { display: inline-block; width: 13px; height: 2px; border-radius: 999px; }
.score-sparkline-legend .pool-line { background: var(--lime); box-shadow: 0 0 8px rgba(186,255,85,.45); }
.score-sparkline-legend .security-line { background: var(--yellow); box-shadow: 0 0 8px rgba(255,209,91,.35); }
.pool-score { flex: 0 0 auto; min-width: 72px; text-align: right; line-height: 1; }
.pool-score b { display: block; font-size: 1.15rem; }
.pool-score small { margin-top: 3px; font-size: .58rem; letter-spacing: .08em; text-transform: uppercase; white-space: nowrap; }
.security-score { padding-top: 7px; border-top: 1px solid var(--line); }
.pool-loading-spinner { position: absolute; right: 11px; bottom: 11px; width: 15px; height: 15px; border: 2px solid rgba(89,230,207,.24); border-top-color: var(--cyan); border-radius: 50%; animation: pool-spinner .8s linear infinite; box-shadow: 0 0 8px rgba(89,230,207,.18); }
@keyframes pool-spinner { to { transform: rotate(360deg); } }
.dot { width: 10px; height: 10px; border-radius: 50%; margin-top: 4px; flex: 0 0 auto; }
.dot.green, .risk-light.green { background-color: rgba(186,255,85,.12); color: var(--lime); border-color: rgba(186,255,85,.45); }
.dot.yellow, .risk-light.yellow { background-color: rgba(255,209,91,.12); color: var(--yellow); border-color: rgba(255,209,91,.45); }
.dot.red, .risk-light.red { background-color: rgba(255,126,120,.12); color: var(--red); border-color: rgba(255,126,120,.45); }
.dot.green { background: var(--lime); }.dot.yellow { background: var(--yellow); }.dot.red { background: var(--red); }
.empty-state { display: grid; gap: 5px; padding: 34px; text-align: center; border: 1px dashed var(--line); border-radius: 15px; color: var(--muted); }
.empty-state strong { color: var(--text); }
.hidden { display: none !important; }
.selected-title { display: flex; justify-content: space-between; align-items: center; margin-bottom: 15px; }
.selected-title small { color: var(--muted); font-size: .65rem; letter-spacing: .12em; }
.selected-title h3 { font-size: 2rem; margin-top: 4px; }
.table-card, .explanation, .scenario { border: 1px solid var(--line); border-radius: 14px; padding: 17px; background: rgba(3,14,11,.42); }
.table-card h3 { margin-bottom: 13px; }
.table-wrap { overflow-x: auto; }
table { width: 100%; border-collapse: collapse; min-width: 650px; }
th, td { padding: 13px 12px; text-align: left; border-bottom: 1px solid var(--line); vertical-align: top; }
th { color: var(--muted); font-size: .68rem; letter-spacing: .08em; text-transform: uppercase; }
td { font-size: .84rem; line-height: 1.45; }
td:nth-child(2) { color: var(--text); font-weight: 900; white-space: nowrap; }
td:nth-child(3) { color: var(--muted); }
tbody tr:last-child td { border-bottom: 0; }
.comparison-row { background: rgba(89,230,207,.055); }
.positive { color: var(--lime) !important; }
.medium { color: var(--yellow) !important; }
.negative { color: var(--red) !important; }
.comparison-note { color: var(--muted); font-size: .78rem; line-height: 1.5; margin: 13px 0 0; }
.comparison-note strong { color: var(--cyan); }
.explanation { margin-top: 10px; }
.explanation p, .scenario p { color: var(--muted); line-height: 1.5; }
.risk-details, .auction-details { margin-top: 10px; }
.risk-grid, .auction-slot { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; }
.risk-grid > div, .auction-slot > div { padding: 12px; border: 1px solid var(--line); border-radius: 9px; background: rgba(7,20,17,.65); min-width: 0; }
.risk-grid span, .auction-slot span { display: block; color: var(--muted); font-size: .62rem; letter-spacing: .08em; }
.risk-grid strong, .auction-slot strong { display: block; margin-top: 6px; overflow-wrap: anywhere; }
.risk-grid small { display: block; color: var(--muted); margin-top: 5px; font-size: .68rem; line-height: 1.35; }
.projection-range { min-height: 32px; margin: 8px 0 6px; }
.projection-track { position: relative; height: 8px; border-radius: 999px; background: rgba(255,255,255,.08); overflow: visible; }
.projection-negative, .projection-positive { position: absolute; top: 0; height: 100%; border-radius: 999px; }
.projection-negative { background: linear-gradient(90deg, rgba(255,126,120,.22), rgba(255,126,120,.82)); }
.projection-positive { background: linear-gradient(90deg, rgba(186,255,85,.82), rgba(186,255,85,.24)); }
.projection-zero { position: absolute; top: -3px; width: 1px; height: 14px; background: rgba(238,255,247,.72); }
.projection-marker { position: absolute; top: -4px; width: 8px; height: 16px; border-radius: 999px; transform: translateX(-50%); border: 1px solid rgba(238,255,247,.85); box-shadow: 0 0 10px currentColor; background: currentColor; }
.projection-labels { position: relative; display: flex; justify-content: space-between; gap: 8px; margin-top: 5px; font-size: .62rem; color: var(--muted); }
.projection-zero-label { position: absolute; transform: translateX(-50%); color: var(--cyan); font-weight: 900; }
.analysis-section { position: relative; border-left: 4px solid var(--line); }
.analysis-section h3 { display: flex; align-items: center; gap: 10px; margin-bottom: 14px; }
.analysis-section h3::before { content: ""; width: 9px; height: 9px; border-radius: 50%; background: currentColor; box-shadow: 0 0 14px currentColor; }
.analysis-section .risk-grid > div { background: rgba(7,20,17,.72); }
.analysis-section-yield { border-left-color: var(--lime); background: linear-gradient(90deg, rgba(186,255,85,.07), rgba(3,14,11,.38)); }
.analysis-section-yield h3 { color: var(--lime); }
.analysis-section-yield .risk-grid > div { border-color: rgba(186,255,85,.22); }
.analysis-section-activity { border-left-color: var(--cyan); background: linear-gradient(90deg, rgba(89,230,207,.07), rgba(3,14,11,.38)); }
.analysis-section-activity h3 { color: var(--cyan); }
.analysis-section-activity .risk-grid > div { border-color: rgba(89,230,207,.22); }
.analysis-section-risk { border-left-color: var(--red); background: linear-gradient(90deg, rgba(255,126,120,.07), rgba(3,14,11,.38)); }
.analysis-section-risk h3 { color: var(--red); }
.analysis-section-risk .risk-grid > div { border-color: rgba(255,126,120,.22); }
.analysis-section-trend { border-left-color: var(--yellow); background: linear-gradient(90deg, rgba(255,213,102,.07), rgba(3,14,11,.38)); }
.analysis-section-trend h3 { color: var(--yellow); }
.analysis-section-trend .risk-grid > div { border-color: rgba(255,213,102,.22); }
.auction-slot.inactive { display: flex; flex-direction: column; gap: 6px; padding: 14px; border: 1px solid var(--line); border-radius: 9px; color: var(--muted); }
.auction-slot.inactive strong { color: var(--text); margin: 0; }
.auction-slot.active { border-left: 3px solid var(--cyan); padding-left: 8px; }
.scenario { display: grid; grid-template-columns: 1fr 1fr 1fr; align-items: end; gap: 17px; margin-top: 10px; }
.scenario h3 { margin-bottom: 6px; }
.scenario-results { margin-top: 10px; }
.selected-trades { margin-top: 10px; }
.trades-heading { display: flex; align-items: flex-start; justify-content: space-between; gap: 15px; }
.trades-heading p { color: var(--muted); font-size: .76rem; margin: 6px 0 0; }
.trades-heading .text-button { width: auto; }
.tx-link { color: var(--cyan); text-decoration: none; }
.tx-link:hover { text-decoration: underline; }
label { display: grid; gap: 8px; color: var(--muted); font-size: .76rem; font-weight: 800; }
input, select { width: 100%; color: var(--text); background: #071411; border: 1px solid #2b4b42; border-radius: 10px; padding: 12px; font: inherit; outline: none; }
input:focus, select:focus { border-color: var(--cyan); box-shadow: 0 0 0 3px rgba(89,230,207,.1); }
.range-row { display: flex; align-items: center; gap: 10px; }
input[type="range"] { padding: 0; accent-color: var(--lime); }
output { min-width: 54px; color: var(--lime); text-align: right; }
.balance { text-align: right; }
.balance small { display: block; color: var(--muted); font-size: .65rem; letter-spacing: .12em; }
.balance strong { display: block; color: var(--lime); font-size: 1.5rem; margin-top: 4px; }
.analysis-badges { display: flex; align-items: center; justify-content: flex-end; flex-wrap: wrap; gap: 8px; }
.score-model-board { display: grid; gap: 8px; width: min(620px, 100%); padding: 10px 12px; border: 1px solid rgba(89,230,207,.25); border-radius: 14px; background: rgba(3,14,11,.5); box-shadow: inset 0 0 0 1px rgba(255,255,255,.02); }
.score-model-row { display: grid; grid-template-columns: 92px minmax(170px, 1fr) auto; gap: 7px 10px; align-items: center; }
.score-model-row + .score-model-row { padding-top: 8px; border-top: 1px solid var(--line); }
.score-model-name { color: var(--cyan); font-size: .64rem; font-weight: 900; letter-spacing: .1em; text-transform: uppercase; }
.score-model-version { min-width: 0; overflow: hidden; color: var(--text); font-size: .75rem; font-weight: 900; text-overflow: ellipsis; white-space: nowrap; }
.model-state { justify-self: end; border: 1px solid currentColor; border-radius: 999px; padding: 4px 8px; font-size: .62rem; font-weight: 900; letter-spacing: .08em; text-transform: uppercase; white-space: nowrap; }
.model-state.active { color: var(--lime); background: rgba(186,255,85,.1); }
.model-state.suspended { color: var(--red); background: rgba(255,126,120,.1); }
.model-state.pending { color: var(--muted); background: rgba(148,170,162,.08); }
.score-model-review { grid-column: 2 / -1; color: var(--muted); font-size: .7rem; line-height: 1.35; text-align: right; }
.model-ranking { grid-column: 1 / -1; display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 6px; min-height: 0; }
.model-rank-pill { display: inline-flex; align-items: center; gap: 5px; padding: 3px 7px; border: 1px solid rgba(89,230,207,.22); border-radius: 999px; color: var(--muted); background: rgba(4,18,15,.62); font-size: .66rem; font-weight: 800; }
.model-rank-pill b { color: var(--text); font-size: .68rem; }
.model-rank-pill.active { border-color: rgba(89,230,207,.52); color: var(--cyan); }
.model-rank-pill.leading b { color: var(--green); }
.model-rank-pill.unknown b { color: var(--muted); }
.model-tooltip { position: relative; cursor: help; }
.model-tooltip::after { content: attr(data-tooltip); position: absolute; right: 0; bottom: calc(100% + 8px); z-index: 30; width: min(310px, 80vw); padding: 9px 10px; border: 1px solid rgba(89,230,207,.38); border-radius: 8px; color: var(--text); background: rgba(2,12,10,.96); box-shadow: 0 14px 34px rgba(0,0,0,.45); font-size: .68rem; font-weight: 700; line-height: 1.35; letter-spacing: 0; text-align: left; text-transform: none; white-space: normal; opacity: 0; pointer-events: none; transform: translateY(3px); transition: opacity .14s ease, transform .14s ease; }
.model-tooltip::before { content: ""; position: absolute; right: 14px; bottom: calc(100% + 3px); z-index: 31; border: 5px solid transparent; border-top-color: rgba(89,230,207,.38); opacity: 0; pointer-events: none; transition: opacity .14s ease; }
.model-tooltip:hover::after,
.model-tooltip:focus-visible::after,
.model-tooltip:hover::before,
.model-tooltip:focus-visible::before { opacity: 1; transform: translateY(0); }
.model-preview-action { grid-column: 2 / -1; display: flex; align-items: center; justify-content: flex-end; flex-wrap: wrap; gap: 8px; }
.model-preview-button { display: inline-flex; align-items: center; gap: 7px; min-height: 30px; padding: 7px 11px; border: 1px solid rgba(89,230,207,.58); border-bottom-color: rgba(89,230,207,.82); border-radius: 8px; color: var(--cyan); background: linear-gradient(180deg, rgba(89,230,207,.18), rgba(89,230,207,.07)); box-shadow: 0 0 0 1px rgba(255,255,255,.035) inset, 0 8px 18px rgba(0,0,0,.22); font-size: .64rem; font-weight: 900; letter-spacing: .06em; text-transform: uppercase; }
.model-preview-button::before { content: "›"; display: grid; place-items: center; width: 16px; height: 16px; border-radius: 50%; color: #071411; background: var(--cyan); font-size: .9rem; line-height: 1; box-shadow: 0 0 10px rgba(89,230,207,.35); }
.model-preview-button:hover:not(:disabled) { color: #071411; background: var(--cyan); border-color: var(--cyan); }
.model-preview-button:hover:not(:disabled)::before { color: var(--cyan); background: #071411; }
.model-preview-button.reset { color: var(--yellow); border-color: rgba(255,209,91,.58); border-bottom-color: rgba(255,209,91,.82); background: linear-gradient(180deg, rgba(255,209,91,.2), rgba(255,209,91,.08)); }
.model-preview-button.reset::before { content: "↺"; color: #201705; background: var(--yellow); font-size: .75rem; }
.model-preview-note { color: var(--yellow); font-size: .64rem; font-weight: 900; letter-spacing: .06em; text-transform: uppercase; }
.model-preview-button { border-color: rgba(255,209,91,.62); border-bottom-color: rgba(255,209,91,.9); color: var(--yellow); background: linear-gradient(180deg, rgba(255,209,91,.22), rgba(255,209,91,.08)); box-shadow: 0 0 0 1px rgba(255,255,255,.035) inset, 0 8px 18px rgba(0,0,0,.22), 0 0 14px rgba(255,209,91,.08); }
.model-preview-button::before { content: ">"; color: #201705; background: var(--yellow); font-size: .82rem; box-shadow: 0 0 10px rgba(255,209,91,.35); }
.model-preview-button:hover:not(:disabled) { color: #201705; background: var(--yellow); border-color: var(--yellow); }
.model-preview-button:hover:not(:disabled)::before { color: var(--yellow); background: #201705; }
.model-preview-button.reset::before { content: "<"; }
.portfolio-summary { display: grid; grid-template-columns: repeat(2, minmax(178px, 1fr)); gap: 9px; width: min(650px, 100%); min-width: 430px; }
.portfolio-summary .balance { position: relative; min-height: 82px; padding: 11px 12px; border: 1px solid rgba(89,230,207,.22); border-radius: 10px; background: rgba(7,20,17,.58); box-shadow: inset 0 0 0 1px rgba(255,255,255,.018); }
.portfolio-summary .balance:nth-child(3) { grid-column: span 2; min-height: 88px; border-color: rgba(255,209,91,.32); background: linear-gradient(135deg, rgba(255,209,91,.08), rgba(7,20,17,.58)); }
.portfolio-summary .balance + .balance { padding-top: 11px; border-top: 1px solid rgba(89,230,207,.22); }
.portfolio-summary .balance small { display: flex; align-items: flex-start; justify-content: space-between; gap: 7px; min-height: 28px; line-height: 1.28; text-align: left; }
.portfolio-summary .balance small::before { content: ""; flex: 0 0 auto; width: 13px; height: 13px; border: 2px solid transparent; border-radius: 50%; opacity: 0; }
.portfolio-summary .balance strong { display: block; min-height: 31px; margin-top: 6px; font-variant-numeric: tabular-nums; white-space: nowrap; text-align: right; }
.portfolio-summary .balance strong.neutral { color: var(--muted); }
.portfolio-summary .balance strong.positive { color: var(--lime); }
.portfolio-summary .balance strong.negative { color: var(--red); }
.portfolio-summary .balance.refreshing small::before { border-color: rgba(89,230,207,.18); border-top-color: var(--cyan); box-shadow: 0 0 10px rgba(89,230,207,.26); opacity: 1; animation: refresh-spin .85s linear infinite; }
.demo-action-card { margin-top: 14px; padding: 14px; border: 1px solid rgba(89,230,207,.2); border-radius: 14px; background: linear-gradient(135deg, rgba(89,230,207,.055), rgba(3,14,11,.48)); box-shadow: 0 0 0 1px rgba(255,255,255,.018) inset; }
.demo-action-card .status { margin: 12px 0 0; }
.demo-action { display: grid; grid-template-columns: 1fr 1fr; align-items: end; gap: 12px; }
.demo-action > .primary { min-height: 43px; }
.investment-control { display: grid; gap: 8px; }
.investment-control > span { display: flex; align-items: flex-end; justify-content: space-between; gap: 10px; }
.investment-control > span > span { color: var(--cyan); font-size: .68rem; font-weight: 900; letter-spacing: .12em; text-transform: uppercase; }
.investment-control > span small { color: var(--muted); font-size: .68rem; font-weight: 800; text-align: right; }
.money-input { display: flex; align-items: center; min-height: 43px; border: 1px solid #2b4b42; border-radius: 10px; background: #071411; overflow: hidden; }
.money-input span { padding-left: 12px; color: var(--cyan); font-weight: 900; }
.money-input input { min-height: 43px; border: 0; }
.investment-presets { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 6px; }
.investment-presets button { min-height: 32px; padding: 7px 6px; border: 1px solid rgba(89,230,207,.28); border-radius: 8px; color: var(--cyan); background: rgba(89,230,207,.08); font-size: .66rem; font-weight: 900; white-space: nowrap; }
.investment-presets button:hover:not(:disabled) { color: #071411; background: var(--cyan); border-color: var(--cyan); }
.positions-heading { display: flex; justify-content: space-between; align-items: center; gap: 12px; margin-top: 26px; padding-top: 20px; border-top: 1px solid var(--line); }
.text-button { color: var(--muted); background: transparent; padding: 7px; font-size: .75rem; }
.positions { display: grid; gap: 9px; margin-top: 13px; }
.position { padding: 15px; border: 1px solid var(--line); border-radius: 12px; background: rgba(3,14,11,.42); }
.position-toggle { width: 100%; display: grid; grid-template-columns: minmax(180px, 1fr) 576px auto; gap: 16px; align-items: center; text-align: left; color: var(--text); background: transparent; padding: 0; }
.position-toggle i { color: var(--cyan); font-style: normal; font-size: .72rem; font-weight: 900; text-align: right; }
.position-stake { display: grid; grid-template-columns: 145px 225px 190px; align-items: stretch; gap: 8px; }
.position-metric-box { position: relative; min-width: 0; min-height: 55px; padding: 9px 11px; border: 1px solid var(--line); border-radius: 9px; background: rgba(7,20,17,.52); }
.position-duration-box strong { white-space: nowrap; font-variant-numeric: tabular-nums; letter-spacing: -.015em; }
.position-summary-box { min-width: 0; justify-self: stretch; }
.position-summary { padding-bottom: 1px; white-space: nowrap; font-size: 1.05rem; }
.position-summary.neutral { color: var(--muted); font-size: .82rem; }
.position-actions { margin-top: 10px; display: flex; justify-content: flex-end; }
.position span, .position small { display: block; color: var(--muted); font-size: .72rem; }
.position strong { display: block; margin-top: 4px; }
.position button { padding: 8px 10px; color: var(--red); background: rgba(255,126,120,.1); font-size: .72rem; }
.position .position-toggle { padding: 0; color: var(--text); background: transparent; font-size: inherit; }
.position-toggle strong { color: var(--text); }
.position-toggle span, .position-toggle small { color: var(--muted); }
.position-toggle:hover { background: transparent; }
.position-toggle i { justify-self: end; display: inline-flex; align-items: center; justify-content: center; min-height: 30px; padding: 7px 11px; border: 1px solid rgba(89,230,207,.48); border-bottom-color: rgba(89,230,207,.72); border-radius: 8px; color: var(--cyan); background: linear-gradient(180deg, rgba(89,230,207,.16), rgba(89,230,207,.06)); box-shadow: 0 0 0 1px rgba(255,255,255,.025) inset, 0 7px 16px rgba(0,0,0,.18); text-align: center; white-space: nowrap; }
.position-toggle:hover i { color: #071411; background: var(--cyan); border-color: var(--cyan); }
.position-details { display: none; }
.position.expanded .position-details {
  display: block;
  margin-top: 14px;
  padding: 14px;
  border: 1px solid rgba(171,210,199,.18);
  border-radius: 12px;
  background: rgba(150,164,160,.13);
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.025);
}
.scenario-hero { display: grid; grid-template-columns: 1fr auto; gap: 10px 24px; align-items: center; margin-top: 15px; min-height: 432px; padding: 18px; border: 1px solid; border-radius: 12px; }
.scenario-hero > div:first-child > strong { font-size: clamp(1.8rem, 5vw, 2.8rem); line-height: 1; margin-top: 7px; }
.scenario-hero > div:first-child > span { font-weight: 900; letter-spacing: .08em; }
.scenario-hero p { grid-column: 1 / -1; color: var(--muted); font-size: .72rem; line-height: 1.45; margin: 2px 0 0; }
.scenario-hero > div { position: relative; }
.scenario-rate { text-align: right; align-self: stretch; min-width: 190px; padding-left: 22px; border-left: 1px solid rgba(89,230,207,.22); }
.scenario-rate strong { font-size: 1.35rem; }
.scenario-rate strong.positive { color: var(--lime); }
.scenario-rate strong.negative { color: var(--red); }
.scenario-rate small { margin-top: 5px; }
.il-breakdown { grid-column: 1 / -1; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; }
.il-breakdown > div { position: relative; min-height: 132px; padding: 11px; border: 1px solid var(--line); border-radius: 9px; background: rgba(7,20,17,.55); }
.il-breakdown span { display: block; color: var(--muted); font-size: .66rem; letter-spacing: .08em; font-weight: 900; }
.il-breakdown strong { display: block; margin-top: 5px; font-size: 1rem; }
.il-breakdown small { display: block; color: var(--muted); margin-top: 4px; font-size: .68rem; }
.fee-net-card, .fee-annual-card { background: linear-gradient(135deg, rgba(89,230,207,.09), rgba(7,20,17,.62)); }
.fee-annual-card { min-height: 190px; }
.fee-annual-card strong { min-height: 1.25em; font-variant-numeric: tabular-nums; }
.fee-annual-card small[data-scenario-annual-detail] { min-height: 52px; }
.fee-annual-card small[data-scenario-annual-note] { min-height: 52px; margin-top: 8px; padding: 7px 8px; border: 1px solid transparent; border-radius: 8px; line-height: 1.35; }
.fee-annual-card small.annual-warning { display: block; border-color: rgba(255,210,87,.45); color: var(--yellow); background: rgba(255,210,87,.1); font-weight: 900; }
.graphic-card-fixed { min-height: 132px; }
.il-breakdown > div.fee-annual-card.graphic-card-fixed { min-height: 190px; }
.fee-net-meter { position: relative; display: block; height: 8px; min-height: 8px; margin: 9px 0 7px; overflow: hidden; border-radius: 999px; background: linear-gradient(90deg, rgba(255,126,120,.58) 0 49%, rgba(148,170,162,.35) 49% 51%, rgba(186,255,85,.62) 51% 100%); }
.fee-net-meter i { position: absolute; top: -4px; width: 4px; height: 16px; border-radius: 999px; background: #fff; box-shadow: 0 0 10px rgba(255,255,255,.75); transform: translateX(-50%); }
.fee-net-meter.positive i { background: var(--lime); }
.fee-net-meter.negative i { background: var(--red); }
.scenario-positive { border-color: rgba(186,255,85,.48); background: linear-gradient(110deg, rgba(186,255,85,.12), rgba(7,20,17,.4)); }
.scenario-positive > div:first-child strong { color: var(--lime); }
.scenario-negative { border-color: rgba(255,126,120,.48); background: linear-gradient(110deg, rgba(255,126,120,.12), rgba(7,20,17,.4)); }
.scenario-negative > div:first-child strong { color: var(--red); }
.scenario-pending { border-color: var(--line); background: rgba(7,20,17,.5); }
.live-hint { color: var(--muted); font-size: .72rem; margin: 7px 0 0; }
.live-dot { display: inline-block; width: 7px; height: 7px; border-radius: 50%; background: var(--lime); box-shadow: 0 0 9px var(--lime); margin-right: 5px; }
.position-live { margin-top: 15px; padding-top: 15px; border-top: 1px solid var(--line); }
.live-loading, .live-error { color: var(--muted); font-size: .8rem; padding: 8px 0; }
.live-loading.refreshing { display: inline-flex; align-items: center; gap: 8px; }
.live-loading.refreshing::before {
  content: "";
  flex: 0 0 auto;
  width: 13px;
  height: 13px;
  border: 2px solid rgba(89,230,207,.18);
  border-top-color: var(--cyan);
  border-radius: 50%;
  box-shadow: 0 0 10px rgba(89,230,207,.26);
  animation: refresh-spin .85s linear infinite;
}
.live-error { color: var(--red); }
.position-score.refreshing::after,
.position-score.active-loading::after,
.position.active-loading .position-score::after,
.position-pool-grid > div.refreshing::after,
.position-pool-grid > div.active-loading::after,
.position.active-loading .position-pool-grid > div::after,
.position-metric-box.refreshing::after,
.position-metric-box.active-loading::after,
.position.active-loading .position-summary-box::after,
.scenario-hero.refreshing::after,
.scenario-hero.active-loading::after,
.position.active-loading .scenario-hero::after,
.il-breakdown > div.refreshing::after,
.il-breakdown > div.active-loading::after,
.position.active-loading .il-breakdown > div::after,
.position-analysis-section.refreshing::after,
.position-analysis-section.active-loading::after,
.position.active-loading .position-analysis-section::after,
.position-chart-summary > div.refreshing::after,
.position-chart-summary > div.active-loading::after,
.position.active-loading .position-chart-summary > div::after,
.live-stats > div.refreshing::after,
.live-stats > div.active-loading::after,
.position.active-loading .live-stats > div::after {
  content: "";
  position: absolute;
  top: 8px;
  right: 8px;
  width: 13px;
  height: 13px;
  border: 2px solid rgba(89,230,207,.18);
  border-top-color: var(--cyan);
  border-radius: 50%;
  box-shadow: 0 0 10px rgba(89,230,207,.26);
  animation: refresh-spin .85s linear infinite;
}
.scenario-hero.refreshing::after { top: 22px; right: 22px; }
.scenario-hero.active-loading::after { top: 22px; right: 22px; }
.position.active-loading .scenario-hero::after { top: 22px; right: 22px; }
.position-price-chart.refreshing::after,
.position-price-chart.active-loading::after,
.position.active-loading .position-price-chart::after { display: none; }
.position-pool-grid > div.fit-pending::after,
.position.active-loading .position-pool-grid > div.fit-pending::after { display: none !important; }
@keyframes refresh-spin { to { transform: rotate(360deg); } }
.position-analysis-section { position: relative; margin: 15px 0; padding: 16px; border: 1px solid var(--line); border-left: 4px solid var(--line); border-radius: 12px; background: rgba(3,14,11,.46); }
.position-analysis-market { border-left-color: var(--lime); background: linear-gradient(90deg, rgba(186,255,85,.065), rgba(7,20,17,.5)); }
.position-analysis-chart { border-left-color: var(--yellow); }
.position-analysis-live { border-left-color: var(--cyan); background: linear-gradient(90deg, rgba(89,230,207,.065), rgba(7,20,17,.5)); }
.position-analysis-activity { border-left-color: var(--cyan); background: linear-gradient(90deg, rgba(89,230,207,.045), rgba(7,20,17,.5)); }
.position-pool-overview { margin-bottom: 15px; border-color: rgba(89,230,207,.26); }
.position-pool-heading { display: flex; align-items: center; justify-content: space-between; gap: 18px; padding-bottom: 14px; border-bottom: 1px solid var(--line); }
.position-pool-heading span { color: var(--cyan); font-size: .62rem; font-weight: 900; letter-spacing: .12em; }
.position-pool-heading strong { margin-top: 5px; font-size: 1rem; }
.position-pool-heading small { display: block; margin-top: 5px; color: var(--muted); font-size: .68rem; overflow-wrap: anywhere; }
.position-score-pair { display: flex; align-items: center; gap: 9px; flex: 0 0 auto; }
.position-score { position: relative; min-width: 88px; padding: 9px 11px; border: 1px solid currentColor; border-radius: 9px; text-align: center; background: rgba(3,14,11,.6); }
.position-score b { display: block; font-size: 1.35rem; line-height: 1; }
.position-score small { margin-top: 5px; color: currentColor; font-size: .56rem; font-weight: 900; letter-spacing: .07em; text-transform: uppercase; white-space: nowrap; }
.position-pool-groups { display: grid; grid-template-columns: 1fr 1fr; gap: 15px; margin-top: 14px; align-items: start; }
.position-pool-group { min-width: 0; padding: 13px; border: 1px solid var(--line); border-left: 4px solid var(--line); border-radius: 10px; background: rgba(3,14,11,.42); }
.position-pool-group-yield { border-left-color: var(--lime); background: linear-gradient(90deg, rgba(186,255,85,.07), rgba(3,14,11,.42)); }
.position-pool-group-risk { border-left-color: var(--red); background: linear-gradient(90deg, rgba(255,126,120,.07), rgba(3,14,11,.42)); }
.position-pool-group h4 { display: flex; align-items: center; gap: 8px; margin: 0 0 10px; color: var(--text); font-size: .72rem; letter-spacing: .08em; text-transform: uppercase; }
.position-pool-group h4::before { content: ""; width: 8px; height: 8px; border-radius: 50%; background: currentColor; box-shadow: 0 0 12px currentColor; }
.position-pool-group-yield h4 { color: var(--lime); }
.position-pool-group-risk h4 { color: var(--red); }
.position-pool-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 7px; }
.position-pool-grid > div { position: relative; min-width: 0; padding: 10px; border: 1px solid var(--line); border-radius: 9px; background: rgba(3,14,11,.55); }
.position-pool-group-yield .position-pool-grid > div { border-color: rgba(186,255,85,.18); }
.position-pool-group-risk .position-pool-grid > div { border-color: rgba(255,126,120,.18); }
.position-pool-grid span { color: var(--muted); font-size: .57rem; font-weight: 900; letter-spacing: .07em; }
.position-pool-grid strong { margin-top: 5px; font-size: .78rem; line-height: 1.35; overflow-wrap: anywhere; }
.position-pool-grid small { margin-top: 4px; font-size: .63rem; line-height: 1.35; }
.position-price-chart { min-height: 548px; margin: 15px 0; }
.position-price-chart.positive { border-color: rgba(186,255,85,.48); background: linear-gradient(135deg, rgba(186,255,85,.085), rgba(3,14,11,.5)); }
.position-price-chart.medium { border-color: rgba(255,209,91,.48); background: linear-gradient(135deg, rgba(255,209,91,.08), rgba(3,14,11,.5)); }
.position-price-chart.negative { border-color: rgba(255,126,120,.48); background: linear-gradient(135deg, rgba(255,126,120,.085), rgba(3,14,11,.5)); }
.position-chart-heading { display: flex; align-items: center; justify-content: space-between; gap: 16px; }
.position-chart-heading span, .position-chart-summary span { color: var(--cyan); font-size: .6rem; font-weight: 900; letter-spacing: .1em; }
.position-chart-heading strong { margin-top: 5px; font-size: .9rem; }
.position-chart-ranges { display: flex; gap: 5px; }
.position-chart-ranges { position: relative; }
.position-price-chart.refreshing .position-chart-ranges { padding-left: 24px; }
.position-price-chart.refreshing .position-chart-ranges::before {
  content: "";
  position: absolute;
  left: 0;
  top: 50%;
  width: 13px;
  height: 13px;
  border: 2px solid rgba(89,230,207,.18);
  border-top-color: var(--cyan);
  border-radius: 50%;
  box-shadow: 0 0 10px rgba(89,230,207,.26);
  transform: translateY(-50%);
  animation: chart-refresh-spin .85s linear infinite;
}
@keyframes chart-refresh-spin { to { transform: translateY(-50%) rotate(360deg); } }
.position-chart-ranges button { padding: 6px 9px; color: var(--muted); background: rgba(89,230,207,.06); border: 1px solid var(--line); font-size: .65rem; }
.position-chart-ranges button.active { color: #09251e; background: var(--cyan); border-color: var(--cyan); }
.position-chart-summary { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 8px; margin-top: 14px; }
.position-chart-summary > div { position: relative; min-height: 68px; padding: 9px; border: 1px solid var(--line); border-radius: 8px; background: rgba(7,20,17,.48); }
.position-chart-summary strong { margin-top: 5px; font-size: .85rem; }
.position-chart-legend { display: flex; gap: 16px; margin-top: 12px; color: var(--muted); font-size: .66rem; }
.position-chart-legend span::before { content: ""; display: inline-block; width: 18px; height: 2px; margin-right: 6px; vertical-align: middle; background: var(--cyan); }
.position-chart-legend .price-legend::before { background: linear-gradient(90deg, var(--lime) 0 42%, transparent 42% 50%, var(--red) 50% 62%, transparent 62% 70%, var(--red) 70% 82%, transparent 82%); }
.position-chart-legend .result-legend::before { height: 2px; background: linear-gradient(90deg, var(--lime) 0 48%, transparent 48% 54%, var(--red) 54% 66%, transparent 66% 74%, var(--red) 74% 86%, transparent 86%); }
.position-chart-empty { display: grid; place-items: center; min-height: 170px; color: var(--muted); font-size: .78rem; text-align: center; }
.position-price-svg { display: block; width: 100%; height: auto; min-height: 310px; margin-top: 6px; overflow: visible; }
.chart-grid { stroke: rgba(171,210,199,.22); stroke-width: 1; }
.chart-grid.faint { stroke-dasharray: 4 5; opacity: .65; }
.chart-line-halo { fill: none; stroke: rgba(3,14,11,.9); stroke-width: 5.5; stroke-linejoin: round; stroke-linecap: round; }
.chart-line { fill: none; stroke-width: 2.8; stroke-linejoin: round; stroke-linecap: round; }
.chart-line.positive { stroke: var(--lime); }
.chart-line.medium { stroke: var(--yellow); }
.chart-line.negative { stroke: var(--red); }
.chart-position-baseline { stroke: rgba(171,210,199,.28); stroke-width: 1; stroke-dasharray: 4 5; }
.chart-result-halo { fill: none; stroke: rgba(3,14,11,.78); stroke-width: 3.8; stroke-linejoin: round; stroke-linecap: round; }
.chart-result-line { fill: none; stroke-width: 1.6; stroke-linejoin: round; stroke-linecap: round; }
.chart-result-line.positive { stroke: #7dd3fc; stroke-dasharray: 8 5; }
.chart-result-line.negative { stroke: #f0abfc; stroke-dasharray: 8 5; }
.chart-result-dot { stroke: rgba(3,14,11,.95); stroke-width: 2.5; }
.chart-result-dot.positive { fill: #7dd3fc; }
.chart-result-dot.negative { fill: #f0abfc; }
.chart-result-dot.neutral { fill: var(--muted); }
.benchmark-summary strong.positive { color: #7dd3fc !important; }
.benchmark-summary strong.negative { color: #f0abfc !important; }
.benchmark-summary strong.neutral { color: var(--muted) !important; }
.chart-result-zero { stroke: rgba(255,213,102,.32); stroke-width: 1; stroke-dasharray: 3 5; }
.chart-result-label { font-size: 10px; }
.chart-result-label.positive { fill: var(--lime); }
.chart-result-label.negative { fill: var(--red); }
.chart-result-label.neutral { fill: var(--muted); }
.chart-zone-fill { stroke: none; }
.chart-zone-fill.positive { opacity: .96; }
.chart-zone-fill.negative { opacity: .96; }
.chart-hold-gap-fill { stroke: none; opacity: .42; }
.chart-hold-gap-fill.positive { fill: var(--lime); }
.chart-hold-gap-fill.negative { fill: var(--red); }
.chart-entry-line { stroke: var(--yellow); stroke-width: 1.3; stroke-dasharray: 5 4; }
.chart-entry-label { fill: var(--yellow); font-size: 10px; font-weight: 900; }
.chart-current-dot { stroke: rgba(3,14,11,.9); stroke-width: 2; }
.chart-current-dot.positive { fill: var(--lime); }
.chart-current-dot.medium { fill: var(--yellow); }
.chart-current-dot.negative { fill: var(--red); }
.chart-current-dot.neutral { fill: var(--muted); }
.chart-axis-label { fill: var(--muted); font-size: 10px; }
.chart-axis-label.positive { fill: var(--lime); }
.chart-axis-label.negative { fill: var(--red); }
.chart-axis-label.neutral { fill: var(--muted); }
.chart-axis-label.end { text-anchor: end; }
.position-chart-note { margin: 5px 0 0; color: var(--muted); font-size: .66rem; line-height: 1.45; }
.position-live-heading { margin: 17px 0 9px; }
.position-live-heading span { color: var(--cyan); font-size: .62rem; font-weight: 900; letter-spacing: .12em; }
.position-live-heading strong { margin-top: 5px; font-size: .9rem; }
.live-stats { display: grid; grid-template-columns: repeat(6, 1fr); gap: 8px; }
.live-stats > div { position: relative; padding: 11px; border: 1px solid var(--line); border-radius: 9px; background: rgba(7,20,17,.65); }
.live-stats strong { font-size: .9rem; }
.live-stats small { margin-top: 5px; }
.activity-summary { color: var(--muted); font-size: .78rem; line-height: 1.5; margin: 13px 0 7px; }
.activity-summary strong { color: var(--cyan); display: inline; }
.position-analysis-activity .activity-table { min-height: 555px; max-height: 555px; overflow: auto; scrollbar-gutter: stable; }
.activity-table table { min-width: 600px; }
.activity-table th, .activity-table td { padding: 9px; font-size: .72rem; }
.activity-table .trade-fee { color: var(--lime); font-weight: 900; white-space: nowrap; }
.activity-pagination { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-top: 10px; }
.activity-pagination button { width: auto; padding: 8px 12px; color: var(--cyan); background: rgba(89,230,207,.1); border: 1px solid rgba(89,230,207,.25); font-size: .72rem; }
.activity-pagination span { color: var(--muted); font-size: .72rem; text-align: center; }
.activity-pagination strong { display: inline; color: var(--text); }
.live-note { color: var(--muted); font-size: .7rem; line-height: 1.45; margin: 10px 0 0; }
.no-positions { color: var(--muted); text-align: center; padding: 20px; }
.arbitrage-simulator { margin-top: 28px; padding-top: 24px; border-top: 1px solid var(--line); }
.arbitrage-finder { margin-top: 30px; padding-top: 26px; border-top: 2px solid rgba(89,230,207,.24); }
.arbitrage-heading { display: flex; justify-content: space-between; align-items: flex-start; gap: 20px; }
.arbitrage-heading h3 { margin: 3px 0 5px; }
.arbitrage-heading p { margin: 0; color: var(--muted); max-width: 720px; }
.arbitrage-bank { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 8px; margin-top: 13px; }
.arbitrage-bank > div { min-height: 74px; padding: 12px; border: 1px solid var(--line); border-radius: 9px; background: rgba(3,14,11,.52); }
.arbitrage-bank span { display: block; color: var(--muted); font-size: .58rem; font-weight: 900; letter-spacing: .08em; }
.arbitrage-bank strong { display: block; margin-top: 8px; font-size: 1.05rem; }
.arbitrage-bot-log { position: relative; display: grid; grid-template-columns: auto minmax(0, 1fr) auto; gap: 4px 12px; align-items: center; margin-top: 9px; padding: 10px 12px 10px 38px; border: 1px solid rgba(89,230,207,.28); border-radius: 10px; background: linear-gradient(135deg, rgba(89,230,207,.07), rgba(3,14,11,.52)); min-height: 64px; }
.arbitrage-bot-log::before { content: ""; position: absolute; left: 13px; top: 50%; width: 12px; height: 12px; border: 2px solid rgba(89,230,207,.18); border-top-color: var(--cyan); border-radius: 50%; transform: translateY(-50%); box-shadow: 0 0 12px rgba(89,230,207,.35); }
.arbitrage-bot-log.running::before { animation: refresh-spin .85s linear infinite; }
.arbitrage-bot-log.success::before { border-color: var(--lime); background: var(--lime); box-shadow: 0 0 14px rgba(186,255,85,.6); }
.arbitrage-bot-log.paused::before { border-color: var(--yellow); box-shadow: 0 0 12px rgba(255,209,91,.45); }
.arbitrage-bot-log span { color: var(--cyan); font-size: .57rem; font-weight: 900; letter-spacing: .09em; text-transform: uppercase; }
.arbitrage-bot-log strong { min-width: 0; color: var(--text); font-size: .78rem; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.arbitrage-bot-log small { grid-column: 1 / 3; color: var(--muted); font-size: .64rem; line-height: 1.35; overflow-wrap: anywhere; }
.arbitrage-diagnostics { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 8px; }
.arbitrage-diagnostics span { padding: 5px 8px; border: 1px solid rgba(89,230,207,.2); border-radius: 999px; color: var(--muted); background: rgba(3,14,11,.38); font-size: .6rem; font-weight: 900; letter-spacing: .04em; }
.arbitrage-diagnostics .good { color: var(--lime); border-color: rgba(186,255,85,.32); background: rgba(186,255,85,.07); }
.arbitrage-diagnostics .bad { color: var(--red); border-color: rgba(255,126,120,.28); background: rgba(255,126,120,.06); }
.arbitrage-diagnostics .warn { color: var(--yellow); border-color: rgba(255,209,91,.28); background: rgba(255,209,91,.06); }
.arbitrage-diagnostic-detail { margin-top: 6px; padding: 8px 10px; border: 1px solid rgba(89,230,207,.16); border-radius: 8px; color: var(--muted); background: rgba(3,14,11,.34); font-size: .64rem; line-height: 1.4; }
.arbitrage-funding { display: grid; grid-template-columns: minmax(220px, 1fr) minmax(260px, 1fr) auto; gap: 10px; align-items: end; margin-top: 12px; }
.arbitrage-funding .primary { height: 100%; min-height: 45px; }
.arbitrage-toggle { grid-column: 3; grid-row: 1 / 3; justify-self: end; align-self: center; display: inline-flex; align-items: center; gap: 8px; min-height: 34px; padding: 4px 10px 4px 5px; border: 1px solid rgba(255,126,120,.36); border-radius: 999px; color: var(--red); background: rgba(255,126,120,.07); font-size: .58rem; font-weight: 1000; letter-spacing: .08em; text-transform: uppercase; cursor: pointer; user-select: none; }
.arbitrage-toggle input { appearance: none; position: relative; width: 42px; height: 24px; margin: 0; border: 1px solid rgba(255,126,120,.38); border-radius: 999px; background: rgba(255,126,120,.16); transition: background .16s ease, border-color .16s ease, box-shadow .16s ease; }
.arbitrage-toggle input::before { content: ""; position: absolute; top: 3px; left: 21px; width: 16px; height: 16px; border-radius: 50%; background: var(--red); box-shadow: 0 0 10px rgba(255,126,120,.42); transition: left .16s ease, background .16s ease, box-shadow .16s ease; }
.arbitrage-toggle input:checked { border-color: rgba(186,255,85,.52); background: rgba(186,255,85,.17); box-shadow: 0 0 14px rgba(186,255,85,.14); }
.arbitrage-toggle input:checked::before { left: 3px; background: var(--lime); box-shadow: 0 0 12px rgba(186,255,85,.56); }
.arbitrage-toggle:has(input:checked) { color: var(--lime); border-color: rgba(186,255,85,.42); background: rgba(186,255,85,.07); }
.arbitrage-slot-status { margin-top: 10px; padding: 10px 12px; border: 1px solid rgba(255,209,91,.28); border-radius: 9px; color: var(--muted); background: rgba(255,209,91,.06); font-size: .68rem; line-height: 1.45; }
.arbitrage-results { display: grid; gap: 11px; margin-top: 13px; }
.arbitrage-challengers { display: grid; grid-template-columns: repeat(3, 1fr); gap: 10px; margin-top: 13px; }
.arbitrage-challenger { min-width: 0; padding: 13px; border: 1px solid var(--line); border-radius: 10px; background: rgba(3,14,11,.48); }
.arbitrage-challenger.leading { border-color: rgba(186,255,85,.55); background: linear-gradient(135deg, rgba(186,255,85,.08), rgba(3,14,11,.52)); }
.arbitrage-challenger span { display: block; color: var(--cyan); font-size: .56rem; font-weight: 900; letter-spacing: .09em; text-transform: uppercase; }
.arbitrage-challenger strong { display: block; margin-top: 5px; font-size: 1rem; }
.arbitrage-challenger small { display: block; margin-top: 5px; color: var(--muted); font-size: .64rem; line-height: 1.35; }
.arbitrage-history { margin-top: 24px; }
.arbitrage-history-card { padding: 16px; border: 1px solid rgba(89,230,207,.2); border-radius: 12px; background: linear-gradient(135deg, rgba(89,230,207,.055), rgba(3,14,11,.48)); }
.arbitrage-history .positions-heading { margin-bottom: 11px; }
.arbitrage-history-card .positions-heading { margin-top: 0; padding-top: 0; border-top: 0; }
.arbitrage-history table { min-width: 940px; }
.arbitrage-card { padding: 16px; border: 1px solid var(--line); border-radius: 12px; background: rgba(3,14,11,.42); }
.arbitrage-card.opportunity { border-color: rgba(186,255,85,.5); background: linear-gradient(135deg, rgba(186,255,85,.08), rgba(3,14,11,.5)); }
.arbitrage-card.unavailable { border-color: rgba(255,126,120,.28); }
.arbitrage-card.loading { opacity: .72; }
.arbitrage-card > p { margin: 8px 0 0; color: var(--muted); font-size: .75rem; }
.arbitrage-card-heading { display: flex; justify-content: space-between; align-items: flex-start; gap: 14px; }
.arbitrage-card-heading span, .arbitrage-grid span { display: block; color: var(--cyan); font-size: .58rem; font-weight: 900; letter-spacing: .09em; }
.arbitrage-card-heading strong { display: block; margin-top: 4px; }
.arbitrage-card-heading small { display: block; margin-top: 4px; color: var(--muted); font-size: .65rem; }
.arbitrage-card-heading > b { padding: 7px 9px; border: 1px solid currentColor; border-radius: 8px; white-space: nowrap; font-size: .65rem; }
.arbitrage-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 8px; margin-top: 13px; }
.arbitrage-grid > div { min-width: 0; padding: 10px; border: 1px solid var(--line); border-radius: 9px; background: rgba(3,14,11,.5); }
.arbitrage-grid strong { display: block; margin-top: 5px; font-size: .77rem; line-height: 1.35; overflow-wrap: anywhere; }
.arbitrage-grid small { display: block; margin-top: 4px; color: var(--muted); font-size: .62rem; }
.arbitrage-size-diagnostics { margin-top: 9px; padding: 8px 10px; border: 1px solid rgba(89,230,207,.16); border-radius: 8px; color: var(--muted); background: rgba(3,14,11,.38); font-size: .64rem; line-height: 1.4; }
.arbitrage-note { margin: 12px 0 0; color: var(--muted); font-size: .67rem; line-height: 1.55; }
.arbitrage-pool-list { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 11px; margin-top: 18px; }
.arbitrage-search-card { position: relative; min-width: 0; padding: 16px; border: 1px solid var(--line); border-radius: 12px; background: rgba(3,14,11,.42); }
.arbitrage-search-card.opportunity { border-color: rgba(186,255,85,.5); background: linear-gradient(135deg, rgba(186,255,85,.08), rgba(3,14,11,.5)); }
.arbitrage-search-card.loading { padding-bottom: 34px; }
.arbitrage-search-card > p { margin: 10px 0 0; color: var(--muted); font-size: .72rem; }
.arbitrage-search-result { display: grid; grid-template-columns: 1fr 1fr; gap: 7px; margin-top: 12px; }
.arbitrage-search-result > div { min-width: 0; padding: 9px; border: 1px solid var(--line); border-radius: 8px; background: rgba(3,14,11,.5); }
.arbitrage-search-result span { display: block; color: var(--cyan); font-size: .56rem; font-weight: 900; letter-spacing: .08em; }
.arbitrage-search-result strong { display: block; margin-top: 5px; font-size: .8rem; overflow-wrap: anywhere; }
.arbitrage-search-result small { display: block; margin-top: 4px; color: var(--muted); font-size: .61rem; line-height: 1.35; }
footer { color: var(--muted); font-size: .76rem; line-height: 1.55; padding: 22px 5px 0; }
footer strong { color: var(--yellow); }
footer p { margin: 0; }
.legal-links { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 13px; }
.legal-links button { padding: 7px 10px; border: 1px solid rgba(89,230,207,.24); border-radius: 999px; color: var(--cyan); background: rgba(89,230,207,.08); font-size: .68rem; letter-spacing: .07em; text-transform: uppercase; }
.legal-card { position: relative; width: min(780px, 100%); max-height: min(780px, 92vh); overflow: auto; padding: 25px; border: 1px solid rgba(89,230,207,.28); border-radius: 14px; background: #0b1c17; box-shadow: 0 24px 90px rgba(0,0,0,.42); }
.legal-content { display: grid; gap: 12px; color: var(--muted); line-height: 1.58; }
.legal-content.hidden { display: none; }
.legal-content h2 { color: var(--text); }
.legal-content h3 { margin-top: 5px; color: var(--cyan); font-size: .78rem; letter-spacing: .08em; text-transform: uppercase; }
.legal-content[data-bilingual] h3 { margin-top: 14px; padding-top: 14px; border-top: 1px solid var(--line); }
.legal-content[data-bilingual] h2 + h3 { margin-top: 0; padding-top: 0; border-top: 0; }
.legal-content h4 { margin: 8px 0 0; color: var(--yellow); font-size: .72rem; letter-spacing: .06em; text-transform: uppercase; }
.legal-content p { margin: 0; }
.legal-content strong { color: var(--yellow); }

@media (min-width: 1280px) {
  .market-maturity-gauge { grid-template-columns: minmax(330px, 1fr) 260px minmax(360px, 1.05fr); gap: 28px; }
  .pool-list { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 13px; }
  .risk-grid, .auction-slot { grid-template-columns: repeat(4, minmax(0, 1fr)); }
  .analysis-section-yield .risk-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); }
  .analysis-section-risk .risk-grid { grid-template-columns: repeat(5, minmax(0, 1fr)); }
  .demo-action { grid-template-columns: minmax(0, .95fr) minmax(420px, 1.05fr); }
  .portfolio-summary { grid-template-columns: repeat(3, minmax(178px, 1fr)); width: min(960px, 100%); }
  .portfolio-summary .balance:nth-child(3) { grid-column: auto; }
  .position-toggle { grid-template-columns: minmax(220px, 1fr) minmax(640px, 1.25fr) auto; }
  .position-stake { grid-template-columns: 160px 260px 220px; }
  .position-pool-groups { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .live-stats { grid-template-columns: repeat(6, minmax(0, 1fr)); }
  .arbitrage-grid { grid-template-columns: repeat(6, minmax(0, 1fr)); }
  .arbitrage-pool-list { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}

@media (min-width: 1680px) {
  .shell { width: min(1600px, calc(100% - 56px)); }
  .pool-list { grid-template-columns: repeat(5, minmax(0, 1fr)); }
}

@media (max-width: 820px) {
  .market-maturity-gauge { grid-template-columns: 1fr; }
  .market-maturity-dial { justify-self: center; }
  .scenario { grid-template-columns: 1fr; }
  .risk-grid, .auction-slot { grid-template-columns: 1fr 1fr; }
  .position-pool-groups { grid-template-columns: 1fr; }
  .position-toggle { grid-template-columns: 1fr; }
  .position-toggle i { text-align: left; }
}
@media (max-width: 600px) {
  .shell { padding-top: 30px; }
  .hero, .panel-heading { flex-direction: column; align-items: flex-start; }
  .steps { grid-template-columns: 1fr; }
  .market-maturity-dial { width: min(230px, 78vw); }
  .pool-action-bar { grid-template-columns: 1fr; }
  .pool-action-bar { grid-template-columns: 1fr; }
  .pool-filter-tabs { width: 100%; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .pool-filter-tab { min-width: 0; padding-inline: 7px; }
  .pool-list, .demo-action { grid-template-columns: 1fr; }
  .pool-pagination { align-items: stretch; flex-direction: column; }
  .pool-pagination-pages { justify-content: space-between; }
  .pool-page-size { justify-content: space-between; }
  .position-stake { width: 100%; grid-template-columns: 1fr; gap: 8px; }
  .position-metric-box { min-height: 0; }
  .position-summary-box { min-width: 0; }
  .scenario-hero { grid-template-columns: 1fr; }
  .scenario-rate { text-align: left; min-width: 0; padding: 12px 0 0; border-left: 0; border-top: 1px solid rgba(89,230,207,.22); }
  .scenario-hero p { grid-column: auto; }
  .il-breakdown { grid-template-columns: 1fr; }
  .live-stats { grid-template-columns: 1fr 1fr; }
  .visitor-grid, .visitor-lists { grid-template-columns: 1fr; }
  .position-pool-heading { align-items: flex-start; flex-direction: column; }
  .position-score-pair { width: 100%; }
  .position-score { flex: 1; }
  .position-pool-grid { grid-template-columns: 1fr; }
  .position-chart-heading { align-items: flex-start; flex-direction: column; }
  .position-chart-summary { grid-template-columns: 1fr 1fr; }
  .risk-grid, .auction-slot { grid-template-columns: 1fr; }
  .balance { text-align: left; }
  .analysis-badges { justify-content: flex-start; }
  .score-model-board { width: 100%; }
  .score-model-row { grid-template-columns: 1fr; }
  .model-state { justify-self: start; }
  .score-model-review { grid-column: auto; text-align: left; }
  .model-ranking { grid-column: auto; justify-content: flex-start; }
  .model-preview-action { grid-column: auto; justify-content: flex-start; }
  .portfolio-summary { grid-template-columns: 1fr; min-width: 0; width: 100%; }
  .portfolio-summary .balance:nth-child(3) { grid-column: auto; }
  .positions-heading { align-items: flex-start; flex-direction: column; }
  .arbitrage-heading { flex-direction: column; }
  .arbitrage-bank { grid-template-columns: 1fr 1fr; }
  .arbitrage-bot-log { grid-template-columns: minmax(0, 1fr) auto; }
  .arbitrage-bot-log > span, .arbitrage-bot-log > strong, .arbitrage-bot-log > small { grid-column: 1; }
  .arbitrage-toggle { grid-column: 2; grid-row: 1 / 3; }
  .arbitrage-funding { grid-template-columns: 1fr; }
  .arbitrage-challengers { grid-template-columns: 1fr; }
  .arbitrage-grid { grid-template-columns: 1fr 1fr; }
  .arbitrage-pool-list { grid-template-columns: 1fr; }
}

@media (max-width: 560px) {
  .arbitrage-grid { grid-template-columns: 1fr; }
  .arbitrage-card-heading { flex-direction: column; }
}

@media (orientation: landscape) and (max-height: 560px) and (max-width: 940px) {
  html { font-size: 13px; }
  body { overflow-x: hidden; }
  .shell { width: min(1180px, calc(100% - 18px)); padding: 18px 0 34px; }
  .hero { flex-direction: row; align-items: flex-end; gap: 18px; margin-bottom: 16px; }
  h1 { font-size: clamp(3rem, 8vh, 4.7rem); letter-spacing: -.055em; }
  .subtitle { margin-top: 12px; font-size: .92rem; }
  .session-panel { justify-content: flex-end; }
  .steps { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; margin: 12px 0; }
  .steps a { padding: 10px; }
  .panel { margin-top: 12px; padding: 18px; border-radius: 16px; }
  .panel-heading { flex-direction: row; align-items: flex-start; gap: 16px; margin-bottom: 16px; }
  .pool-action-bar { grid-template-columns: minmax(180px, .9fr) minmax(300px, 1.1fr); }
  .pool-list { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 9px; }
  .pool-card { padding: 13px; }
  .pool-card-metrics { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 6px; }
  .scenario { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .risk-grid, .auction-slot { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .demo-action { grid-template-columns: minmax(0, 1fr) minmax(260px, .9fr); }
  .portfolio-summary { grid-template-columns: repeat(2, minmax(150px, 1fr)); min-width: 320px; width: min(600px, 100%); }
  .portfolio-summary .balance:nth-child(3) { grid-column: span 2; }
  .position-toggle { grid-template-columns: minmax(160px, 1fr) minmax(360px, 1.25fr) auto; gap: 10px; }
  .position-toggle i { text-align: right; }
  .position-stake { width: auto; grid-template-columns: 135px minmax(190px, 1fr) minmax(150px, .8fr); gap: 7px; }
  .position-pool-groups { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .position-pool-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .scenario-hero { grid-template-columns: minmax(0, 1fr) minmax(170px, auto); min-height: 0; padding: 15px; }
  .scenario-rate { text-align: right; min-width: 170px; padding: 0 0 0 18px; border-top: 0; border-left: 1px solid rgba(89,230,207,.22); }
  .scenario-hero p { grid-column: 1 / -1; }
  .il-breakdown { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .live-stats { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .position-chart-heading { flex-direction: row; align-items: center; }
  .position-chart-summary { grid-template-columns: repeat(4, minmax(0, 1fr)); }
  .position-analysis-activity .activity-table { min-height: 360px; max-height: 360px; }
  table { min-width: 560px; }
  .activity-table table { min-width: 540px; }
  .arbitrage-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .arbitrage-pool-list { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (orientation: landscape) and (max-height: 430px) and (max-width: 740px) {
  html { font-size: 11.5px; }
  .shell { width: calc(100% - 14px); padding-top: 14px; }
  .hero { align-items: flex-start; }
  h1 { font-size: 2.8rem; }
  .subtitle, .copyright { font-size: .68rem; }
  .session-panel { gap: 6px; }
  .ui-switch-group { padding: 3px; }
  .ui-switch-button { min-width: 42px; height: 28px; }
  .panel { padding: 14px; }
  .panel-heading { gap: 10px; margin-bottom: 12px; }
  .steps a { padding: 8px; gap: 8px; }
  .steps b { width: 28px; height: 28px; }
  .pool-action-bar { grid-template-columns: 1fr 1.25fr; gap: 8px; }
  .portfolio-summary { grid-template-columns: repeat(2, minmax(135px, 1fr)); min-width: 0; }
  .portfolio-summary .balance { min-height: 72px; padding: 9px; }
  .portfolio-summary .balance strong { min-height: 26px; font-size: 1.25rem; }
  .pool-list { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .pool-card { padding: 10px; }
  .risk-grid, .auction-slot, .il-breakdown, .live-stats { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .position-toggle { grid-template-columns: 1fr; }
  .position-toggle i { justify-self: start; }
  .position-stake { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .scenario-hero { padding: 12px; }
  .il-breakdown > div { min-height: 112px; padding: 9px; }
  .il-breakdown > div.fee-annual-card.graphic-card-fixed { min-height: 164px; }
  table, .activity-table table { min-width: 500px; }
}

@media (orientation: landscape) and (max-height: 390px) and (max-width: 700px) {
  html { font-size: 10.5px; }
  .shell { width: calc(100% - 10px); padding-top: 10px; }
  .hero { margin-bottom: 10px; gap: 10px; }
  h1 { font-size: 2.35rem; }
  .subtitle { margin-top: 7px; }
  .panel { padding: 10px; border-radius: 12px; }
  .pool-list { gap: 7px; }
  .risk-grid, .auction-slot, .position-chart-summary { gap: 6px; }
  .risk-grid > div, .auction-slot > div, .position-chart-summary > div { padding: 8px; }
  .scenario-hero { min-height: 0; }
  .position-analysis-section { padding: 11px; }
}
