:root {
  color-scheme: dark;
  --bg: #07110d;
  --bg-deep: #040907;
  --panel: #0c1913;
  --panel-2: #102119;
  --panel-3: #152a20;
  --line: rgba(216, 255, 224, .1);
  --line-strong: rgba(216, 255, 224, .18);
  --text: #f4f8f5;
  --muted: #8fa398;
  --lime: #b8ff3d;
  --lime-soft: rgba(184, 255, 61, .13);
  --cyan: #70f6d2;
  --red: #ff6b6b;
  --amber: #ffcf5a;
  --radius: 18px;
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; min-width: 320px; overflow-x: hidden; background: var(--bg-deep); color: var(--text); }
button, input { font: inherit; }
button { color: inherit; }
a { color: inherit; }

.topbar {
  position: sticky;
  top: 0;
  z-index: 30;
  min-height: 72px;
  display: grid;
  grid-template-columns: 240px 1fr auto;
  align-items: center;
  gap: 1.25rem;
  padding: 0 1.35rem;
  border-bottom: 1px solid var(--line);
  background: rgba(4, 9, 7, .92);
  backdrop-filter: blur(18px);
}

.brand { display: inline-flex; align-items: center; width: fit-content; text-decoration: none; }
.brand-logo { display: block; width: min(218px, 100%); height: auto; max-height: 54px; object-fit: contain; object-position: left center; }

.primary-nav { display: flex; min-width: 0; max-width: 100%; justify-content: flex-start; gap: .3rem; overflow-x: auto; scrollbar-width: none; }
.primary-nav::-webkit-scrollbar { display: none; }
.topbar > * { min-width: 0; }
.nav-button { position: relative; flex: 0 0 auto; min-height: 42px; padding: 0 .95rem; border: 0; border-radius: 10px; background: transparent; color: var(--muted); font-size: .9rem; font-weight: 700; white-space: nowrap; cursor: pointer; transition: .2s ease; }
.nav-button:hover { color: var(--text); background: rgba(255,255,255,.04); }
.nav-button.is-active { color: var(--text); background: var(--panel-2); }
.nav-button.is-active::after { content: ""; position: absolute; left: 28%; right: 28%; bottom: -15px; height: 2px; background: var(--lime); box-shadow: 0 0 12px rgba(184,255,61,.7); }
.scanner-nav-button { color: #d7fca0; }
.scanner-nav-button span { color: var(--lime); }
.competitions-nav-button { color: #b6ddff; }
.competitions-nav-button span { color: #70b9ff; font-size: .9rem; }
.sports-news-nav { color: #8fdcff; }
.sports-news-nav span { color: var(--cyan); }
.casino-nav-button { display: inline-flex; align-items: center; gap: .38rem; border: 1px solid rgba(255,207,90,.16); background: linear-gradient(135deg, rgba(255,207,90,.07), rgba(184,255,61,.025)); color: #cbbf9a; }
.casino-nav-button .casino-icon { color: var(--amber); font-size: .86rem; }
.casino-nav-button small { padding: .17rem .3rem; border-radius: 5px; background: rgba(255,207,90,.1); color: #d8c68e; font-size: .5rem; font-weight: 900; letter-spacing: .05em; }
.casino-nav-button:disabled { cursor: not-allowed; opacity: .72; }
.casino-nav-button:disabled:hover { background: linear-gradient(135deg, rgba(255,207,90,.07), rgba(184,255,61,.025)); color: #cbbf9a; }
.live-pulse { display: inline-block; width: 7px; height: 7px; margin-right: .35rem; border-radius: 50%; background: var(--red); box-shadow: 0 0 0 4px rgba(255,107,107,.1); }
.top-actions { display: flex; align-items: center; gap: .55rem; }
.alerts-button { position: relative; display: grid; place-items: center; width: 34px; height: 34px; border: 1px solid var(--line); border-radius: 10px; background: var(--panel); color: #c8d7cf; cursor: pointer; }
.alerts-button:hover { border-color: rgba(184,255,61,.35); color: var(--lime); }
.alerts-button b { position: absolute; top: -6px; right: -6px; display: grid; place-items: center; min-width: 18px; height: 18px; padding: 0 4px; border: 2px solid var(--bg-deep); border-radius: 999px; background: var(--lime); color: #17200b; font-size: .58rem; }
.operations-button { color: var(--cyan); }
.operations-button[hidden] { display: none; }
.install-app-button { border-color: rgba(184,255,61,.24); background: var(--lime-soft); color: var(--lime); }
.install-app-button[hidden] { display: none; }
.install-app-button span { font-size: 1.05rem; font-weight: 900; line-height: 1; }
.data-label, .age-label, .sync-label { display: inline-grid; place-items: center; min-height: 30px; padding: 0 .65rem; border-radius: 8px; font-size: .68rem; font-weight: 800; letter-spacing: .09em; }
.data-label { border: 1px solid var(--line-strong); color: var(--muted); }
.sync-label { border: 1px solid rgba(143,163,152,.18); background: rgba(143,163,152,.06); color: var(--muted); }
.sync-label.is-cloud { border-color: rgba(112,246,210,.28); background: rgba(112,246,210,.1); color: var(--cyan); }
.data-label.is-live, #providerState.is-live { border-color: rgba(112,246,210,.28); background: rgba(112,246,210,.1); color: var(--cyan); }
.data-label.is-setup, #providerState.is-setup { border-color: rgba(255,207,90,.24); background: rgba(255,207,90,.08); color: var(--amber); }
.data-label.is-error, #providerState.is-error { border-color: rgba(255,107,107,.25); background: rgba(255,107,107,.08); color: #ff9898; }
.age-label { background: var(--lime); color: #17200b; }

.connection-banner { display: flex; align-items: center; justify-content: center; gap: .5rem; min-height: 38px; padding: .55rem 1rem; border-bottom: 1px solid rgba(255,207,90,.2); background: #201a0c; color: #ffe29a; }
.connection-banner[hidden] { display: none; }
.connection-banner > span { width: 8px; height: 8px; border-radius: 50%; background: var(--amber); box-shadow: 0 0 0 4px rgba(255,207,90,.08); }
.connection-banner strong { font-size: .72rem; }
.connection-banner small { color: #c7b887; font-size: .67rem; }

.app-shell { display: grid; grid-template-columns: 230px minmax(0, 1fr) 300px; max-width: 1700px; min-height: calc(100vh - 72px); margin: 0 auto; }
.sports-panel, .insights-panel { padding: 1.35rem; background: var(--bg); }
.sports-panel { border-right: 1px solid var(--line); }
.insights-panel { border-left: 1px solid var(--line); }
.panel-heading, .card-heading { display: flex; align-items: center; justify-content: space-between; gap: .8rem; }
.panel-heading { margin-bottom: 1rem; color: #dfeae3; font-size: .8rem; font-weight: 800; letter-spacing: .09em; text-transform: uppercase; }
.icon-button { width: 30px; height: 30px; border: 1px solid var(--line); border-radius: 9px; background: transparent; color: var(--muted); cursor: pointer; }
.icon-button:hover { border-color: var(--line-strong); color: var(--lime); }
.sports-list { display: grid; gap: .32rem; }
.sport-item { display: grid; grid-template-columns: 28px 1fr auto; align-items: center; min-height: 46px; padding: 0 .72rem; border: 1px solid transparent; border-radius: 11px; background: transparent; color: var(--muted); text-align: left; cursor: pointer; }
.sport-item:hover { background: rgba(255,255,255,.035); color: var(--text); }
.sport-item.is-active { border-color: rgba(184,255,61,.16); background: var(--lime-soft); color: var(--text); }
.sport-item.is-active .sport-icon { color: var(--lime); }
.sport-item b { min-width: 25px; padding: .2rem .35rem; border-radius: 7px; background: rgba(255,255,255,.05); color: #a9bbb1; text-align: center; font-size: .72rem; }
.sport-icon { color: #b4c4bb; font-size: .92rem; }
.panel-separator { height: 1px; margin: 1.45rem 0; background: var(--line); }
.mini-title { margin: 0 0 .85rem; color: var(--muted); font-size: .72rem; font-weight: 800; letter-spacing: .1em; text-transform: uppercase; }
.quick-stats { margin: 0; }
.quick-stats div { display: flex; align-items: center; justify-content: space-between; padding: .55rem 0; border-bottom: 1px solid rgba(255,255,255,.04); }
.quick-stats dt { color: var(--muted); font-size: .82rem; }
.quick-stats dd { margin: 0; color: #e8f1eb; font-size: .88rem; font-weight: 800; }
.info-card { display: flex; gap: .65rem; margin-top: 1.4rem; padding: .9rem; border: 1px solid rgba(112,246,210,.13); border-radius: 13px; background: rgba(112,246,210,.045); }
.shield { flex: 0 0 auto; display: grid; place-items: center; width: 22px; height: 22px; border: 1px solid rgba(112,246,210,.35); border-radius: 50%; color: var(--cyan); font-size: .72rem; font-weight: 800; }
.info-card p { margin: 0; color: #9db4a8; font-size: .72rem; line-height: 1.55; }
.info-card strong { color: #d8f4e6; }
.wallet-pill { display:flex; align-items:baseline; gap:.28rem; min-height:40px; padding:0 .7rem; border:1px solid rgba(184,255,61,.28); border-radius:10px; background:rgba(184,255,61,.08); color:var(--text); cursor:pointer; }
.wallet-pill span { font-size:.64rem; font-weight:800; } .wallet-pill b { color:var(--lime); font-size:.9rem; } .wallet-pill small { color:var(--muted); font-size:.56rem; }
.analyst-summary { background:linear-gradient(145deg,rgba(184,255,61,.09),rgba(112,246,210,.035)); }
.analyst-summary p { margin:.75rem 0 .9rem; color:var(--muted); font-size:.7rem; line-height:1.5; }
.analyst-summary button,.analyst-submit { width:100%; min-height:40px; border:1px solid rgba(184,255,61,.28); border-radius:9px; background:var(--lime-soft); color:var(--lime); font-weight:850; cursor:pointer; }
.analyst-modal { width:min(100%,720px); } .wallet-modal { width:min(100%,620px); }
.subscription-modal{width:min(100%,960px)}
.subscription-access{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:.15rem .65rem;margin:.85rem 0;padding:.75rem .9rem;border:1px solid rgba(184,255,61,.24);border-radius:12px;background:rgba(184,255,61,.06)}.subscription-access span{font-size:.72rem;font-weight:900;letter-spacing:.06em;text-transform:uppercase;color:var(--lime)}.subscription-access strong{font-size:1rem}.subscription-access small{grid-column:1/-1;color:var(--muted)}
.billing-switch{display:flex;gap:.35rem;width:max-content;max-width:100%;margin:1rem 0;padding:.25rem;border:1px solid var(--line);border-radius:12px;background:rgba(255,255,255,.03)}
.billing-switch button{border:0;border-radius:9px;padding:.65rem .9rem;background:transparent;color:var(--muted);font-weight:800;cursor:pointer}.billing-switch button.is-active{background:var(--lime);color:#07110d}
.subscription-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem}.subscription-card{display:flex;flex-direction:column;min-height:330px;padding:1rem;border:1px solid var(--line);border-radius:16px;background:rgba(255,255,255,.025)}
.subscription-card.is-current{border-color:rgba(255,255,255,.22)}.subscription-card.is-pro{border-color:rgba(184,255,61,.5);box-shadow:inset 0 0 0 1px rgba(184,255,61,.08)}.subscription-status{font-size:.66rem;font-weight:900;letter-spacing:.08em;color:var(--lime)}
.subscription-card h3{margin:.55rem 0 .15rem;font-size:1.25rem}.subscription-price{font-size:2rem;color:var(--text)}.subscription-card>small{min-height:1.2rem;color:var(--muted)}.subscription-card ul{display:grid;gap:.6rem;margin:1rem 0 0;padding:0;list-style:none}.subscription-card li{position:relative;padding-left:1.15rem;color:var(--muted);line-height:1.45}.subscription-card li::before{content:"✓";position:absolute;left:0;color:var(--lime);font-weight:900}.subscription-notice{margin:1rem 0 0;padding:.8rem 1rem;border:1px solid rgba(245,184,70,.28);border-radius:12px;background:rgba(245,184,70,.07);color:var(--muted)}.subscription-notice strong{color:var(--text)}
.analyst-balance,.wallet-hero { display:flex; align-items:center; justify-content:space-between; gap:1rem; margin-bottom:1rem; padding:.9rem; border:1px solid rgba(184,255,61,.22); border-radius:12px; background:rgba(184,255,61,.06); }
.analyst-balance span,.wallet-hero span { color:var(--muted); font-size:.72rem; } .analyst-balance strong,.wallet-hero strong { color:var(--lime); }
.wallet-hero { display:grid; } .wallet-hero strong { font-size:1.7rem; } .wallet-hero small { color:var(--muted); font-size:.65rem; }
.analyst-field { display:grid; gap:.4rem; margin:.8rem 0; } .analyst-field>span { color:var(--muted); font-size:.68rem; font-weight:800; }
.analyst-field select,.analyst-field textarea { width:100%; padding:.7rem; border:1px solid var(--line); border-radius:9px; outline:0; background:#08110d; color:var(--text); font:inherit; font-size:.78rem; }
.analyst-plans { display:grid; grid-template-columns:repeat(3,1fr); gap:.5rem; margin:.8rem 0; }
.analyst-workspace-tabs { display:grid; grid-template-columns:repeat(3,1fr); gap:.3rem; margin-bottom:.8rem; padding:.25rem; border:1px solid var(--line); border-radius:10px; background:#08110d; }.analyst-workspace-tabs button { min-height:38px; border:0; border-radius:7px; background:transparent; color:var(--muted); font-size:.68rem; font-weight:800; cursor:pointer; }.analyst-workspace-tabs button.is-active { background:var(--panel-3); color:var(--lime); }
.analyst-multi-picker p { color:var(--muted); font-size:.68rem; line-height:1.5; }.analyst-multi-picker>div { display:grid; grid-template-columns:repeat(2,1fr); gap:.4rem; max-height:190px; overflow:auto; }.analyst-multi-option { display:flex; gap:.5rem; align-items:center; padding:.55rem; border:1px solid var(--line); border-radius:8px; color:#dce8e0; font-size:.68rem; cursor:pointer; }.analyst-multi-option:has(input:checked) { border-color:rgba(184,255,61,.4); background:var(--lime-soft); }.analyst-history { display:grid; gap:.45rem; max-height:330px; overflow:auto; }.analyst-history article { padding:.65rem; border:1px solid var(--line); border-radius:9px; background:#0a1510; }.analyst-history strong,.analyst-history small { display:block; }.analyst-history strong { font-size:.72rem; }.analyst-history small { margin:.2rem 0; color:var(--muted); font-size:.6rem; }.analyst-history p { margin:.45rem 0 0; color:#cbd9d0; font-size:.67rem; line-height:1.45; white-space:pre-line; }
.analyst-prompts { display:flex; flex-wrap:wrap; gap:.35rem; margin:-.35rem 0 .8rem; }.analyst-prompts button { padding:.35rem .5rem; border:1px solid var(--line); border-radius:20px; background:#0a1510; color:var(--muted); font-size:.62rem; cursor:pointer; }.analyst-prompts button:hover { color:var(--lime); border-color:rgba(184,255,61,.32); }
.analyst-plans button { display:grid; gap:.2rem; min-height:64px; padding:.6rem; border:1px solid var(--line); border-radius:10px; background:#0a1510; color:var(--text); text-align:left; cursor:pointer; }
.analyst-plans button.is-active { border-color:rgba(184,255,61,.45); background:var(--lime-soft); } .analyst-plans strong { font-size:.7rem; } .analyst-plans span { color:var(--lime); font-size:.62rem; }
.analyst-answer { margin-top:1rem; padding:1rem; border:1px solid rgba(112,246,210,.22); border-radius:12px; background:rgba(112,246,210,.05); color:#dce8e0; font-size:.78rem; line-height:1.65; white-space:pre-line; }
.analyst-answer>p { margin:1rem 0 0; white-space:pre-line; }.evidence-head { display:flex; align-items:center; justify-content:space-between; gap:1rem; padding-bottom:.7rem; border-bottom:1px solid var(--line); }.evidence-head div { display:grid; gap:.1rem; }.evidence-head span { color:var(--cyan); font-size:.62rem; font-weight:900; letter-spacing:.08em; text-transform:uppercase; }.evidence-head strong { font-size:.9rem; }.evidence-head>b { display:grid; place-items:center; width:62px; height:62px; border:2px solid var(--lime); border-radius:50%; color:var(--lime); font-size:.85rem; }.evidence-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:.4rem; margin:.7rem 0; }.evidence-grid>span { padding:.55rem; border:1px solid var(--line); border-radius:8px; background:rgba(0,0,0,.12); }.evidence-grid small,.evidence-grid strong { display:block; }.evidence-grid small { color:var(--muted); font-size:.56rem; }.evidence-grid strong { margin-top:.12rem; font-size:.68rem; }.evidence-flags { display:flex; flex-wrap:wrap; gap:.3rem; }.evidence-flags span { padding:.25rem .4rem; border:1px solid rgba(255,207,90,.18); border-radius:20px; background:rgba(255,207,90,.05); color:var(--amber); font-size:.58rem; }
.analyst-boundary,.wallet-rules p { color:var(--muted); font-size:.65rem; line-height:1.55; }
.wallet-modal h3 { margin:1rem 0 .6rem; font-size:.82rem; }.wallet-ledger { display:grid; gap:.45rem; max-height:270px; overflow:auto; }
.wallet-entry { display:flex; justify-content:space-between; gap:1rem; padding:.65rem; border:1px solid var(--line); border-radius:9px; background:#0a1510; }.wallet-entry div { display:grid; gap:.15rem; }.wallet-entry strong { font-size:.72rem; }.wallet-entry small { color:var(--muted); font-size:.6rem; }.wallet-entry b { color:var(--lime); }.wallet-entry b.debit { color:#ffb5a7; }
.wallet-rules { margin-top:1rem; padding:.8rem; border:1px solid rgba(255,207,90,.16); border-radius:10px; background:rgba(255,207,90,.035); }.wallet-rules strong { color:var(--amber); font-size:.72rem; }
.watchlist-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:.5rem;margin-bottom:.8rem}.watchlist-summary span{padding:.65rem;border:1px solid var(--line);border-radius:9px;background:#0a1510}.watchlist-summary small,.watchlist-summary strong{display:block}.watchlist-summary small{color:var(--muted);font-size:.58rem}.watchlist-summary strong{margin-top:.15rem;color:var(--lime)}.analyst-watchlist{display:grid;gap:.55rem}.watchlist-card{display:grid;grid-template-columns:1fr auto;gap:.6rem;padding:.75rem;border:1px solid var(--line);border-radius:10px;background:#0a1510}.watchlist-card h3{margin:0;font-size:.78rem}.watchlist-card p{margin:.2rem 0;color:var(--muted);font-size:.63rem}.watchlist-card button{grid-row:1/3;grid-column:2;min-width:92px;border:1px solid rgba(184,255,61,.25);border-radius:8px;background:var(--lime-soft);color:var(--lime);font-size:.64rem;font-weight:800;cursor:pointer}.watchlist-flags{display:flex;gap:.3rem;flex-wrap:wrap}.watchlist-flags span{padding:.2rem .35rem;border-radius:12px;background:rgba(112,246,210,.06);color:var(--cyan);font-size:.56rem}
@media (max-width:680px){.wallet-pill span,.wallet-pill small{display:none}.analyst-plans,.subscription-grid{grid-template-columns:1fr}.analyst-multi-picker>div{grid-template-columns:1fr}.analyst-workspace-tabs{grid-template-columns:1fr}.analyst-balance{align-items:flex-start;flex-direction:column}.evidence-grid{grid-template-columns:1fr 1fr}.wallet-pill{padding:0 .55rem}.billing-switch{width:100%}.billing-switch button{flex:1;padding:.6rem .45rem}.subscription-card{min-height:auto}}

.match-board { min-width: 0; padding: clamp(1rem, 2.5vw, 2.2rem); background: radial-gradient(circle at 50% -20%, rgba(184,255,61,.05), transparent 34rem), #09130f; }
.board-intro { display: flex; align-items: flex-end; justify-content: space-between; gap: 1rem; margin-bottom: 1.35rem; }
.eyebrow { margin: 0 0 .45rem; color: var(--lime); font-size: .68rem; font-weight: 900; letter-spacing: .14em; text-transform: uppercase; }
h1 { margin: 0; max-width: 680px; font-size: clamp(1.55rem, 3vw, 2.5rem); line-height: 1.08; letter-spacing: -.045em; }
.update-status { display: flex; align-items: center; gap: .65rem; padding: .68rem .8rem; border: 1px solid var(--line); border-radius: 12px; background: rgba(255,255,255,.02); }
.update-status > span { width: 8px; height: 8px; border-radius: 50%; background: var(--lime); box-shadow: 0 0 12px rgba(184,255,61,.8); }
.update-status div { display: grid; gap: .05rem; }
.update-status small { color: var(--muted); font-size: .62rem; }
.update-status strong { color: #dbe8df; font-size: .72rem; }

.sport-showcase { display: grid; grid-template-columns: 1.7fr 1fr 1fr; grid-template-rows: 150px auto; gap: .65rem; margin-bottom: 1rem; }
.sport-visual-card { position: relative; min-width: 0; overflow: hidden; padding: 0; border: 1px solid var(--line); border-radius: 16px; background: #08110d; cursor: pointer; text-align: left; isolation: isolate; }
.sport-visual-card img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; transition: transform .35s ease, filter .35s ease; }
.sport-visual-card:hover img, .sport-visual-card:focus-visible img { transform: scale(1.035); filter: saturate(1.12); }
.sport-visual-card:focus-visible { outline: 2px solid var(--lime); outline-offset: 2px; }
.sport-visual-shade { position: absolute; inset: 0; background: linear-gradient(180deg, rgba(2,7,5,.05) 15%, rgba(2,7,5,.9) 100%); z-index: 1; }
.sport-visual-content { position: absolute; z-index: 2; right: 0; bottom: 0; left: 0; display: grid; gap: .12rem; padding: .85rem; }
.sport-visual-content small { color: var(--lime); font-size: .55rem; font-weight: 900; letter-spacing: .11em; }
.sport-visual-content strong { color: #fff; font-size: 1.05rem; text-shadow: 0 2px 10px rgba(0,0,0,.65); }
.sport-visual-content em { color: #d8e4dc; font-size: .66rem; font-style: normal; }
.sport-visual-content em b { color: #fff; }
.sport-visual-card.is-active { border-color: var(--lime); box-shadow: 0 0 0 1px rgba(184,255,61,.18), 0 12px 32px rgba(0,0,0,.25); }
.sport-visual-all { grid-column: 1 / -1; display: flex; align-items: center; gap: .5rem; min-height: 42px; padding: 0 .8rem; border: 1px solid var(--line); border-radius: 12px; background: var(--panel); color: var(--muted); cursor: pointer; }
.sport-visual-all span { color: var(--lime); }
.sport-visual-all strong { font-size: .74rem; }
.sport-visual-all > b { margin-left: auto; color: var(--text); font-size: .7rem; }
.sport-visual-all.is-active { border-color: rgba(184,255,61,.38); background: var(--lime-soft); color: var(--lime); }

.sport-discovery { margin-top: 1.6rem; padding-top: 1.35rem; border-top: 1px solid var(--line); }
.section-heading { display: flex; align-items: end; justify-content: space-between; gap: 1rem; margin-bottom: .8rem; }
.section-heading h2 { margin: 0; font-size: clamp(1.05rem, 2vw, 1.35rem); letter-spacing: -.025em; }
.section-link { min-height: 38px; padding: 0 .75rem; border: 1px solid rgba(184,255,61,.3); border-radius: 9px; background: var(--lime-soft); color: var(--lime); font-size: .68rem; font-weight: 850; cursor: pointer; }
.sport-discovery-grid { display: grid; grid-template-columns: 1.35fr 1fr 1fr; gap: .65rem; }
.discovery-card { position: relative; min-height: 138px; overflow: hidden; padding: 0; border: 1px solid var(--line); border-radius: 14px; background: #08110d; text-align: left; cursor: pointer; isolation: isolate; }
.discovery-card img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; transition: transform .35s ease, filter .35s ease; }
.discovery-volleyball img { object-position: 16% center; }
.discovery-golf img { object-position: 62% center; }
.discovery-card::after { content: ""; position: absolute; inset: 0; z-index: 1; background: linear-gradient(180deg, rgba(2,7,5,.06), rgba(2,7,5,.9)); }
.discovery-card > span { position: absolute; right: 0; bottom: 0; left: 0; z-index: 2; display: grid; gap: .1rem; padding: .75rem; }
.discovery-card small { color: var(--lime); font-size: .52rem; font-weight: 900; letter-spacing: .12em; }
.discovery-card strong { color: #fff; font-size: .82rem; line-height: 1.25; }
.discovery-card em { color: #cbd9d0; font-size: .58rem; font-style: normal; }
.discovery-card:hover img, .discovery-card:focus-visible img { transform: scale(1.04); filter: saturate(1.12); }
.discovery-card:focus-visible { outline: 2px solid var(--lime); outline-offset: 2px; }

.major-event-list { display: grid; gap: .55rem; }
.major-events-origin { margin-bottom: .7rem; padding: .7rem .8rem; display: flex; align-items: center; flex-wrap: wrap; gap: .45rem; border: 1px solid rgba(184,255,61,.2); border-radius: 11px; background: rgba(184,255,61,.05); color: #cbd9d0; font-size: .6rem; }
.major-events-origin strong { color: var(--lime); }
.major-events-origin span::before { content: "→"; margin-right: .45rem; color: var(--cyan); }
.major-event-card { display: grid; grid-template-columns: 70px minmax(0,1fr) auto; align-items: center; gap: .75rem; padding: .8rem; border: 1px solid var(--line); border-radius: 12px; background: #0e1d16; }
.major-event-date { display: grid; place-items: center; min-height: 58px; padding: .35rem; border-radius: 10px; background: rgba(184,255,61,.08); color: var(--lime); text-align: center; }
.major-event-date strong { font-size: .76rem; }.major-event-date small { font-size: .52rem; font-weight: 850; }
.major-event-copy { display: grid; gap: .2rem; min-width: 0; }.major-event-copy strong { font-size: .76rem; }.major-event-copy small { color: var(--muted); font-size: .6rem; line-height: 1.4; }
.major-event-copy span { width: fit-content; padding: .18rem .38rem; border-radius: 99px; background: rgba(112,246,210,.07); color: var(--cyan); font-size: .52rem; font-weight: 800; }
.major-event-link { min-height: 36px; padding: 0 .62rem; border: 1px solid rgba(112,246,210,.24); border-radius: 8px; color: var(--cyan); font-size: .58rem; font-weight: 850; text-decoration: none; display: inline-flex; align-items: center; }
.major-event-trip { min-height: 38px; padding: 0 .7rem; border: 1px solid rgba(184,255,61,.38); border-radius: 8px; background: rgba(184,255,61,.1); color: var(--lime); font-size: .58rem; font-weight: 900; text-decoration: none; display: inline-flex; align-items: center; justify-content: center; }
.major-event-trip:hover, .major-event-trip:focus-visible { border-color: var(--lime); background: rgba(184,255,61,.16); outline: 0; }
.major-event-actions { display: grid; grid-template-columns: 1fr 1fr; gap: .35rem; min-width: 230px; }
.major-event-actions button { min-height: 36px; padding: 0 .55rem; border: 1px solid var(--line); border-radius: 8px; background: #08110d; color: #cbd9d0; font-size: .56rem; font-weight: 850; cursor: pointer; }
.major-event-actions button:hover, .major-event-actions button:focus-visible { border-color: rgba(184,255,61,.35); color: var(--lime); outline: 0; }
.major-event-actions .major-event-follow.is-active { border-color: rgba(184,255,61,.4); background: var(--lime-soft); color: var(--lime); }
.major-event-actions .major-event-trip, .major-event-actions .major-event-link { grid-column: 1 / -1; justify-content: center; }
.sports-information-band { display: grid; grid-template-columns: repeat(3, 1fr); gap: .7rem; margin: 1rem 0; }
.sports-information-band > div { display: flex; align-items: center; gap: .8rem; min-height: 88px; padding: .85rem 1rem; border: 1px solid var(--line); border-radius: 14px; background: linear-gradient(135deg, rgba(112,246,210,.055), rgba(184,255,61,.025)); }
.sports-information-band span { color: var(--lime); font-size: 1.25rem; font-weight: 950; letter-spacing: -.03em; }
.sports-information-band p { display: grid; gap: .14rem; margin: 0; }
.sports-information-band strong { color: #e5f0e9; font-size: .72rem; }
.sports-information-band small { color: var(--muted); font-size: .6rem; line-height: 1.35; }
.sport-discovery-secondary { margin-top: 1.1rem; }
.sport-discovery-secondary .section-heading > p { max-width: 290px; margin: 0; color: var(--muted); font-size: .68rem; line-height: 1.5; }
.sport-discovery-grid-secondary { grid-template-columns: 1.25fr 1fr 1fr; }
.sport-discovery-grid-secondary .discovery-card { min-height: 190px; }
.sport-discovery-grid-secondary .discovery-handball { min-height: 220px; }

.control-bar { display: flex; align-items: center; justify-content: space-between; gap: 1rem; margin-bottom: 1rem; padding: .55rem; border: 1px solid var(--line); border-radius: 14px; background: var(--panel); }
.date-tabs { display: flex; gap: .25rem; }
.date-tabs button { min-height: 38px; padding: 0 .85rem; border: 0; border-radius: 9px; background: transparent; color: var(--muted); font-size: .78rem; font-weight: 800; cursor: pointer; }
.date-tabs button:hover, .date-tabs button.is-active { background: var(--panel-3); color: var(--text); }
.date-tabs button.is-active { box-shadow: inset 0 -2px var(--lime); }
.search-box { display: flex; align-items: center; gap: .55rem; width: min(300px, 42%); min-height: 38px; padding: 0 .75rem; border: 1px solid var(--line); border-radius: 9px; background: #08110d; color: var(--muted); }
.search-box:focus-within { border-color: rgba(184,255,61,.4); box-shadow: 0 0 0 3px rgba(184,255,61,.06); }
.search-box input { width: 100%; border: 0; outline: 0; background: transparent; color: var(--text); font-size: .82rem; }
.search-box input::placeholder { color: #64766c; }

.analysis-toolbar { display: grid; grid-template-columns: minmax(155px, 1fr) minmax(155px, 1fr) auto auto; align-items: end; gap: .65rem; margin-bottom: 1rem; padding: .72rem; border: 1px solid var(--line); border-radius: 14px; background: rgba(12,25,19,.7); }
.filter-field { display: grid; gap: .35rem; }
.filter-field > span { color: var(--muted); font-size: .62rem; font-weight: 800; letter-spacing: .07em; text-transform: uppercase; }
.filter-field select { width: 100%; min-height: 40px; padding: 0 2rem 0 .7rem; border: 1px solid var(--line); border-radius: 9px; outline: 0; background: #08110d; color: #dce8e0; font-size: .76rem; cursor: pointer; }
.filter-field select:focus { border-color: rgba(184,255,61,.4); box-shadow: 0 0 0 3px rgba(184,255,61,.06); }
.value-toggle { min-height: 40px; padding: 0 .8rem; border: 1px solid var(--line); border-radius: 9px; background: #08110d; color: var(--muted); font-size: .74rem; font-weight: 800; white-space: nowrap; cursor: pointer; }
.value-toggle:hover, .value-toggle.is-active { border-color: rgba(184,255,61,.35); background: var(--lime-soft); color: var(--lime); }
.coverage-status { display: flex; align-items: center; gap: .55rem; min-height: 40px; padding: 0 .7rem; border-left: 1px solid var(--line); }
.coverage-status > span { width: 7px; height: 7px; border-radius: 50%; background: var(--cyan); box-shadow: 0 0 10px rgba(112,246,210,.65); }
.coverage-status div { display: grid; gap: .08rem; }
.coverage-status small { color: var(--muted); font-size: .58rem; }
.coverage-status strong { color: #dce8e0; font-size: .68rem; white-space: nowrap; }

.market-key { display: grid; grid-template-columns: minmax(260px, 1fr) repeat(3, minmax(72px, 104px)) 38px; gap: .5rem; padding: 0 .75rem .5rem; color: #64766c; font-size: .65rem; font-weight: 800; letter-spacing: .08em; text-align: center; text-transform: uppercase; }
.market-key span:first-child { text-align: left; }
.league-group { margin-bottom: 1rem; overflow: hidden; border: 1px solid var(--line); border-radius: var(--radius); background: var(--panel); }
.league-head { display: flex; align-items: center; justify-content: space-between; gap: 1rem; min-height: 46px; padding: 0 .9rem; border-bottom: 1px solid var(--line); background: rgba(255,255,255,.018); }
.league-title { display: flex; align-items: center; gap: .6rem; min-width: 0; }
.league-title .league-icon { color: var(--lime); }
.league-title div { display: grid; gap: .08rem; min-width: 0; }
.league-title strong { overflow: hidden; color: #e4eee8; font-size: .82rem; text-overflow: ellipsis; white-space: nowrap; }
.league-title small { color: var(--muted); font-size: .65rem; }
.league-head > span { color: var(--muted); font-size: .68rem; }
.match-row { display: grid; grid-template-columns: minmax(260px, 1fr) repeat(3, minmax(72px, 104px)) 38px; align-items: center; gap: .5rem; min-height: 82px; padding: .72rem; border-bottom: 1px solid rgba(255,255,255,.05); transition: background .18s ease; }
.match-row:last-child { border-bottom: 0; }
.match-row:hover { background: rgba(255,255,255,.018); }
.fixture { display: grid; grid-template-columns: 54px 1fr; align-items: center; gap: .7rem; min-width: 0; }
.kickoff { display: grid; justify-items: start; gap: .22rem; color: #cdd9d2; font-size: .76rem; font-weight: 800; }
.kickoff .live-tag { padding: .16rem .35rem; border-radius: 5px; background: rgba(255,107,107,.12); color: #ff8a8a; font-size: .59rem; letter-spacing: .05em; }
.kickoff .result-tag { color: var(--lime); font-size: .64rem; }
.kickoff .value-flag { padding: .16rem .32rem; border-radius: 5px; background: var(--lime-soft); color: var(--lime); font-size: .56rem; letter-spacing: .02em; }
.teams { display: grid; gap: .34rem; min-width: 0; }
.team { display: flex; align-items: center; justify-content: space-between; gap: .8rem; min-width: 0; }
.team span { overflow: hidden; color: #eaf1ed; font-size: .82rem; font-weight: 680; text-overflow: ellipsis; white-space: nowrap; }
.team b { color: var(--lime); font-size: .86rem; }
.odds-button { position: relative; min-height: 48px; padding: .4rem .5rem; border: 1px solid var(--line); border-radius: 10px; background: #0a1510; text-align: center; cursor: pointer; transition: .18s ease; }
.odds-button:hover, .odds-button:focus-visible { border-color: rgba(184,255,61,.42); background: var(--lime-soft); outline: none; transform: translateY(-1px); }
.odds-button small { display: block; margin-bottom: .12rem; color: var(--muted); font-size: .57rem; }
.odds-button strong { color: #eef7f1; font-size: .88rem; }
.odds-button.best::after { content: "BEST"; position: absolute; top: -6px; right: 4px; padding: .12rem .28rem; border-radius: 4px; background: var(--lime); color: #132007; font-size: .46rem; font-weight: 900; letter-spacing: .05em; }
.result-cell { grid-column: span 3; display: flex; justify-content: center; color: #d7e3dc; font-size: .8rem; }
.result-cell span { padding: .55rem .8rem; border: 1px solid var(--line); border-radius: 9px; background: #0a1510; }
.favorite-button { width: 36px; height: 36px; border: 0; border-radius: 10px; background: transparent; color: #607268; font-size: 1.15rem; cursor: pointer; }
.favorite-button:hover { background: rgba(255,255,255,.04); color: #d8e5dc; }
.favorite-button.is-favorite { color: var(--amber); }
.empty-state { padding: 4rem 1rem; border: 1px dashed var(--line-strong); border-radius: var(--radius); text-align: center; }
.empty-state > span { color: var(--lime); font-size: 2rem; }
.empty-state h2 { margin: .7rem 0 .35rem; font-size: 1.2rem; }
.empty-state p { margin: 0 0 1rem; color: var(--muted); font-size: .85rem; }
.empty-state button, .favorite-summary button { min-height: 38px; padding: 0 .85rem; border: 1px solid rgba(184,255,61,.28); border-radius: 9px; background: var(--lime-soft); color: var(--lime); font-weight: 800; cursor: pointer; }

.insights-panel { display: grid; align-content: start; gap: .85rem; }
.insight-card { padding: 1rem; border: 1px solid var(--line); border-radius: 15px; background: var(--panel); }
.accent-card { overflow: hidden; background: linear-gradient(145deg, rgba(184,255,61,.13), rgba(112,246,210,.035)); }
.card-heading span { color: #dce8e0; font-size: .78rem; font-weight: 800; }
.card-heading small { color: var(--muted); font-size: .58rem; letter-spacing: .06em; }
.pulse-number { display: block; margin-top: .8rem; color: var(--lime); font-size: 2.6rem; line-height: 1; letter-spacing: -.06em; }
.accent-card p { margin: .35rem 0 1rem; color: #a2b4a9; font-size: .72rem; line-height: 1.5; }
.sparkline { display: flex; align-items: end; gap: 5px; height: 38px; }
.sparkline i { flex: 1; height: 32%; border-radius: 3px 3px 1px 1px; background: linear-gradient(to top, rgba(184,255,61,.15), var(--lime)); opacity: .8; }
.sparkline i:nth-child(2) { height: 45%; } .sparkline i:nth-child(3) { height: 38%; } .sparkline i:nth-child(4) { height: 70%; } .sparkline i:nth-child(5) { height: 56%; } .sparkline i:nth-child(6) { height: 88%; } .sparkline i:nth-child(7) { height: 76%; }
.movement-list { display: grid; gap: .85rem; margin: 1rem 0 0; padding: 0; list-style: none; }
.movement-list li { display: flex; align-items: center; justify-content: space-between; gap: .7rem; }
.movement-list li div { display: grid; gap: .08rem; }
.movement-list strong { color: #dce8e0; font-size: .73rem; }
.movement-list small { color: var(--muted); font-size: .62rem; }
.move { padding: .28rem .4rem; border-radius: 6px; font-size: .62rem; font-weight: 800; }
.move.down { background: rgba(112,246,210,.08); color: var(--cyan); }
.move.up { background: rgba(255,107,107,.08); color: #ff9898; }
.favorite-summary p { min-height: 42px; margin: .75rem 0 .9rem; color: var(--muted); font-size: .72rem; line-height: 1.5; }
.favorite-summary button { width: 100%; }
.alert-summary p { min-height: 42px; margin: .75rem 0 .9rem; color: var(--muted); font-size: .72rem; line-height: 1.5; }
.alert-summary button { width: 100%; min-height: 38px; padding: 0 .85rem; border: 1px solid rgba(112,246,210,.22); border-radius: 9px; background: rgba(112,246,210,.06); color: var(--cyan); font-weight: 800; cursor: pointer; }
.provider-status-card { background: linear-gradient(145deg, rgba(112,246,210,.075), rgba(184,255,61,.025)); }
.provider-status-card .card-heading small { padding: .18rem .36rem; border: 1px solid currentColor; border-radius: 5px; font-weight: 900; }
.provider-status-card > p { margin: .75rem 0; color: var(--muted); font-size: .7rem; line-height: 1.5; }
.provider-metrics { display: grid; grid-template-columns: repeat(3, 1fr); gap: .45rem; margin-bottom: .7rem; }
.provider-metrics span { padding: .55rem; border: 1px solid var(--line); border-radius: 9px; background: rgba(0,0,0,.12); }
.provider-metrics small, .provider-metrics strong { display: block; }
.provider-metrics small { margin-bottom: .2rem; color: var(--muted); font-size: .56rem; }
.provider-metrics strong { color: #e6f0ea; font-size: .72rem; }
#scoreFeedStatus.is-live { color: var(--cyan); }
#scoreFeedStatus.is-error { color: #ff9898; }
.provider-status-card button { width: 100%; min-height: 40px; padding: 0 .65rem; border: 1px solid rgba(112,246,210,.25); border-radius: 9px; background: rgba(112,246,210,.07); color: var(--cyan); font-size: .66rem; font-weight: 850; cursor: pointer; }
.provider-status-card button:hover { border-color: rgba(112,246,210,.48); background: rgba(112,246,210,.11); }
.provider-status-card button:disabled { cursor: wait; opacity: .55; }
.freshness-card { background: linear-gradient(145deg, rgba(112,246,210,.06), rgba(255,207,90,.025)); }
.freshness-card .card-heading small { padding: .18rem .36rem; border: 1px solid currentColor; border-radius: 5px; font-weight: 900; }
.freshness-card .card-heading small.is-fresh { color: var(--cyan); }
.freshness-card .card-heading small.is-delayed { color: var(--amber); }
.freshness-card .card-heading small.is-stale { color: #ff9898; }
.freshness-card .card-heading small.is-unknown { color: var(--muted); }
.freshness-card > p { margin: .75rem 0; color: var(--muted); font-size: .7rem; line-height: 1.5; }
.freshness-metrics { display: grid; grid-template-columns: repeat(3, 1fr); gap: .45rem; }
.freshness-metrics > span { position: relative; padding: .55rem .45rem .5rem 1.05rem; border: 1px solid var(--line); border-radius: 9px; background: rgba(0,0,0,.12); }
.freshness-metrics small, .freshness-metrics strong { display: block; }
.freshness-metrics small { color: var(--muted); font-size: .52rem; white-space: nowrap; }
.freshness-metrics strong { margin-top: .2rem; color: #e6f0ea; font-size: .78rem; }
.freshness-dot { position: absolute; top: .68rem; left: .45rem; width: 6px; height: 6px; border-radius: 50%; background: var(--muted); box-shadow: 0 0 0 3px rgba(143,163,152,.08); }
.freshness-dot.is-fresh { background: var(--cyan); box-shadow: 0 0 0 3px rgba(112,246,210,.09); }
.freshness-dot.is-delayed { background: var(--amber); box-shadow: 0 0 0 3px rgba(255,207,90,.09); }
.freshness-dot.is-stale { background: #ff7878; box-shadow: 0 0 0 3px rgba(255,107,107,.09); }
.freshness-badge { display: inline-flex; align-items: center; width: max-content; max-width: 100%; margin-top: .08rem; padding: .13rem .34rem; border: 1px solid rgba(143,163,152,.18); border-radius: 999px; color: var(--muted); font-size: .52rem; font-weight: 850; line-height: 1.2; white-space: nowrap; }
.freshness-badge::before { content: ""; flex: 0 0 5px; width: 5px; height: 5px; margin-right: .28rem; border-radius: 50%; background: currentColor; }
.freshness-badge.is-fresh { border-color: rgba(112,246,210,.24); background: rgba(112,246,210,.06); color: var(--cyan); }
.freshness-badge.is-delayed { border-color: rgba(255,207,90,.24); background: rgba(255,207,90,.06); color: var(--amber); }
.freshness-badge.is-stale { border-color: rgba(255,107,107,.25); background: rgba(255,107,107,.06); color: #ff9898; }
.freshness-badge.is-unknown { color: var(--muted); }
.watch-radar-card { background: linear-gradient(145deg, rgba(184,255,61,.065), rgba(53,139,255,.025)); }
.watch-radar-card .card-heading small { color: var(--lime); }
.watch-radar-card > p { margin: .72rem 0; color: var(--muted); font-size: .68rem; line-height: 1.5; }
.watch-radar-list { display: grid; gap: .4rem; }
.watch-radar-list > small { color: var(--muted); font-size: .62rem; line-height: 1.45; }
.watch-radar-item { display: grid; grid-template-columns: 1fr auto; gap: .45rem; padding: .5rem .58rem; border: 1px solid var(--line); border-radius: 9px; background: rgba(0,0,0,.12); }
.watch-radar-item strong, .watch-radar-item small { display: block; }
.watch-radar-item strong { overflow: hidden; color: #e2ece6; font-size: .66rem; text-overflow: ellipsis; white-space: nowrap; }
.watch-radar-item small { margin-top: .15rem; color: var(--muted); font-size: .56rem; }
.watch-radar-item b { align-self: center; color: var(--lime); font-size: .68rem; }
.watch-radar-item b.is-down { color: #ff9898; }
.watch-shift-tag { padding: .15rem .32rem; border: 1px solid rgba(184,255,61,.24); border-radius: 5px; background: var(--lime-soft); color: var(--lime); font-size: .54rem; font-weight: 900; white-space: nowrap; }
.match-row.has-watch-change { background: linear-gradient(90deg, rgba(184,255,61,.045), transparent 42%); }
.explore-summary { overflow: hidden; background: linear-gradient(145deg, rgba(53,139,255,.13), rgba(112,246,210,.035)); }
.explore-badge { display: flex; align-items: baseline; gap: .22rem; color: #ddecff; font-style: normal; letter-spacing: -.025em; }
.explore-badge span { font-size: .72rem; font-weight: 900; }
.explore-badge b { color: #62a7ff; font-size: .72rem; }
.explore-badge em { margin-left: .28rem; padding: .15rem .3rem; border-radius: 5px; background: rgba(98,167,255,.12); color: #91c3ff; font-size: .5rem; font-style: normal; font-weight: 900; letter-spacing: .08em; }
.explore-summary h2 { margin: .75rem 0 .32rem; font-size: .95rem; letter-spacing: -.025em; }
.explore-summary p { margin: 0 0 .9rem; color: var(--muted); font-size: .7rem; line-height: 1.5; }
.explore-summary a { display: flex; align-items: center; justify-content: space-between; min-height: 38px; padding: 0 .75rem; border: 1px solid rgba(98,167,255,.25); border-radius: 9px; background: rgba(98,167,255,.08); color: #a9d0ff; font-size: .68rem; font-weight: 800; text-decoration: none; }
.explore-summary a:hover { border-color: rgba(98,167,255,.5); color: #ddecff; }
.responsible-card { display: flex; align-items: center; gap: .7rem; padding: .75rem; border: 1px solid rgba(255,207,90,.12); border-radius: 12px; background: rgba(255,207,90,.035); }
.responsible-card span { display: grid; place-items: center; flex: 0 0 32px; height: 32px; border-radius: 8px; background: var(--amber); color: #201806; font-size: .72rem; font-weight: 900; }
.responsible-card p { margin: 0; color: #ad9f7b; font-size: .65rem; line-height: 1.45; }

.site-footer { display: flex; align-items: flex-start; justify-content: space-between; gap: 2rem; padding: 1.6rem clamp(1rem, 3vw, 2.5rem); border-top: 1px solid var(--line); background: #040806; color: var(--muted); }
.site-footer > div { display: grid; gap: .25rem; }
.site-footer strong { color: #dce6df; font-size: .84rem; }
.site-footer span, .site-footer a { font-size: .68rem; line-height: 1.5; }
.footer-information { display: flex; flex-wrap: wrap; justify-content: center; gap: .35rem .9rem; max-width: 390px; }
.footer-information button { padding: .18rem 0; border: 0; border-bottom: 1px solid transparent; background: transparent; color: #9eafa4; font: inherit; font-size: .7rem; cursor: pointer; }
.footer-information button:hover, .footer-information button:focus-visible { border-bottom-color: var(--lime); color: var(--lime); outline: 0; }
.company-data { justify-items: end; text-align: right; }
.company-data a { color: var(--lime); text-decoration: none; }

.modal-backdrop { position: fixed; inset: 0; z-index: 50; display: grid; place-items: center; padding: 1rem; background: rgba(0,0,0,.76); backdrop-filter: blur(8px); }
.modal-backdrop[hidden] { display: none; }
.odds-modal { position: relative; width: min(100%, 760px); max-height: min(90vh, 820px); overflow: auto; padding: 1.35rem; border: 1px solid var(--line-strong); border-radius: 20px; background: #0b1812; box-shadow: 0 30px 100px rgba(0,0,0,.55); }
.modal-close { position: absolute; top: .8rem; right: .8rem; width: 36px; height: 36px; border: 1px solid var(--line); border-radius: 10px; background: #101f18; color: var(--muted); font-size: 1.3rem; cursor: pointer; }
.odds-modal h2 { margin: 0; padding-right: 2.8rem; font-size: 1.25rem; }
.modal-meta { margin: .45rem 0 1.2rem; color: var(--muted); font-size: .75rem; }
.match-kpis { display: grid; grid-template-columns: repeat(3, 1fr); gap: .55rem; margin-bottom: 1rem; }
.match-kpi { padding: .7rem; border: 1px solid var(--line); border-radius: 11px; background: #0e1d16; }
.match-kpi small { display: block; margin-bottom: .2rem; color: var(--muted); font-size: .6rem; }
.match-kpi strong { color: #edf5f0; font-size: .85rem; }
.match-kpi strong.lime { color: var(--lime); }
.match-tabs { display: grid; grid-template-columns: repeat(7, 1fr); gap: .25rem; margin-bottom: .9rem; padding: .28rem; border: 1px solid var(--line); border-radius: 11px; background: #08110d; }
.match-tabs button { min-height: 38px; border: 0; border-radius: 8px; background: transparent; color: var(--muted); font-size: .7rem; font-weight: 800; cursor: pointer; }
.match-tabs button:hover { color: var(--text); }
.match-tabs button.is-active { background: var(--panel-3); color: var(--lime); }
.modal-panel { min-height: 225px; }
.panel-intro { display: flex; align-items: center; justify-content: space-between; gap: 1rem; margin-bottom: .6rem; color: var(--muted); font-size: .68rem; }
.panel-intro strong { color: #dce8e0; }
.provider-head, .provider-row { display: grid; grid-template-columns: 1fr auto; align-items: center; gap: 1rem; }
.provider-head { padding: 0 .65rem .5rem; color: var(--muted); font-size: .62rem; font-weight: 800; letter-spacing: .06em; text-transform: uppercase; }
.provider-list { display: grid; gap: .45rem; }
.provider-row { min-height: 56px; padding: .65rem .8rem; border: 1px solid var(--line); border-radius: 11px; background: #0e1d16; }
.provider-row div { display: grid; gap: .15rem; }
.provider-row strong { font-size: .8rem; }
.provider-row small { color: var(--muted); font-size: .63rem; }
.provider-row > span { min-width: 65px; padding: .45rem .6rem; border-radius: 8px; background: var(--lime-soft); color: var(--lime); text-align: center; font-size: .9rem; font-weight: 900; }
.provider-row:first-child { border-color: rgba(184,255,61,.3); }
.provider-row:first-child > span::after { content: " BEST"; font-size: .46rem; vertical-align: middle; }
.probability-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: .5rem; margin-top: .8rem; }
.probability-title { margin-top: 1rem; }
.probability-card { padding: .65rem; border-radius: 10px; background: rgba(255,255,255,.025); text-align: center; }
.probability-card small { display: block; margin-bottom: .2rem; color: var(--muted); font-size: .58rem; }
.probability-card strong { color: #e8f2ec; font-size: .88rem; }
.intel-summary { display: grid; grid-template-columns: 1.35fr 1fr; gap: .55rem; margin-bottom: .65rem; }
.intel-summary > div { padding: .9rem; border: 1px solid rgba(184,255,61,.2); border-radius: 12px; background: linear-gradient(145deg, rgba(184,255,61,.075), rgba(112,246,210,.025)); }
.intel-summary span, .intel-summary small { display: block; color: var(--muted); font-size: .72rem; }
.intel-summary strong { display: block; margin: .28rem 0; color: #eff8f2; font-size: 1rem; }
.intel-summary .intel-score strong { color: var(--lime); font-size: 1.3rem; }
.intel-outcomes { display: grid; grid-template-columns: repeat(3, 1fr); gap: .45rem; margin-bottom: .65rem; }
.intel-outcome { position: relative; overflow: hidden; min-height: 82px; padding: .65rem; border: 1px solid var(--line); border-radius: 11px; background: #0e1d16; color: var(--text); text-align: left; cursor: pointer; }
.intel-outcome span, .intel-outcome small { display: block; color: var(--muted); font-size: .7rem; }
.intel-outcome strong { display: block; margin: .15rem 0; font-size: 1rem; }
.intel-outcome i { position: absolute; right: 0; bottom: 0; left: 0; width: var(--intel-width); height: 3px; background: var(--cyan); }
.intel-outcome.is-active { border-color: rgba(184,255,61,.45); background: var(--lime-soft); }
.intel-outcome.is-active i { background: var(--lime); }
.intel-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: .45rem; }
.intel-grid article { position: relative; overflow: hidden; padding: .72rem; border: 1px solid var(--line); border-radius: 10px; background: rgba(255,255,255,.02); }
.intel-grid span, .intel-grid small { display: block; color: var(--muted); font-size: .68rem; }
.intel-grid strong { display: block; margin: .25rem 0; color: #eaf4ed; font-size: .85rem; }
.intel-grid b { position: absolute; right: 0; bottom: 0; left: 0; width: var(--intel-meter); height: 3px; background: linear-gradient(90deg, var(--cyan), var(--lime)); }
.intel-explain { margin-top: .65rem; padding: .8rem; border: 1px solid var(--line); border-radius: 11px; background: #09140f; }
.intel-explain > strong { font-size: .78rem; }
.intel-explain ul { display: grid; gap: .35rem; margin: .55rem 0 0; padding-left: 1.1rem; color: #bdccc3; font-size: .72rem; line-height: 1.45; }
.intel-actions { display: grid; grid-template-columns: repeat(3, 1fr); gap: .4rem; margin-top: .65rem; }
.intel-actions button { min-height: 40px; padding: .4rem; border: 1px solid rgba(112,246,210,.22); border-radius: 9px; color: var(--cyan); background: rgba(112,246,210,.045); font: inherit; font-size: .7rem; font-weight: 800; cursor: pointer; }
.intel-note { margin: .6rem 0 0; color: var(--muted); font-size: .68rem; line-height: 1.45; }
.markets-grid { display: grid; gap: .55rem; }
.market-card { display: grid; grid-template-columns: 1fr repeat(2, minmax(68px, 90px)); align-items: center; gap: .5rem; padding: .72rem; border: 1px solid var(--line); border-radius: 11px; background: #0e1d16; }
.market-card > div { display: grid; gap: .16rem; }
.market-card strong { font-size: .77rem; }
.market-card small { color: var(--muted); font-size: .61rem; }
.market-price { padding: .48rem .4rem; border: 1px solid var(--line); border-radius: 8px; background: #09140f; text-align: center; }
.market-price small { display: block; }
.market-price b { color: var(--lime); font-size: .82rem; }
.market-price em { display: block; overflow: hidden; margin-top: .18rem; color: var(--muted); font-size: .52rem; font-style: normal; text-overflow: ellipsis; white-space: nowrap; }
.market-card.is-live { border-color: rgba(112,246,210,.18); }
.market-loader { display: grid; justify-items: center; gap: .5rem; padding: 2rem 1rem; border: 1px dashed rgba(112,246,210,.24); border-radius: 12px; color: var(--muted); text-align: center; }
.market-loader span { width: 26px; height: 26px; border: 3px solid rgba(112,246,210,.16); border-top-color: var(--cyan); border-radius: 50%; animation: market-spin .8s linear infinite; }
.market-loader strong { color: #dce8e0; font-size: .8rem; }
.market-loader small { max-width: 430px; font-size: .64rem; line-height: 1.5; }
.markets-budget-note { margin: .75rem 0 0; color: var(--muted); font-size: .61rem; line-height: 1.5; }
@keyframes market-spin { to { transform: rotate(360deg); } }
.movement-card { padding: .9rem; border: 1px solid var(--line); border-radius: 12px; background: #0e1d16; }
.movement-card svg { display: block; width: 100%; height: 150px; overflow: visible; }
.movement-legend { display: flex; justify-content: space-between; gap: .7rem; margin-top: .75rem; color: var(--muted); font-size: .61rem; }
.movement-legend span { display: flex; align-items: center; gap: .35rem; }
.movement-legend i { width: 8px; height: 8px; border-radius: 50%; background: var(--lime); }
.movement-legend span:last-child i { background: var(--cyan); }
.history-forming { display: grid; gap: .65rem; padding: 1.2rem; border: 1px solid rgba(184,255,61,.18); border-radius: 12px; background: linear-gradient(145deg, rgba(184,255,61,.06), rgba(112,246,210,.025)); }
.history-forming strong { color: #e7f1ea; font-size: .86rem; }
.history-forming p { margin: 0; color: var(--muted); font-size: .68rem; line-height: 1.55; }
.history-forming small { color: var(--cyan); font-size: .64rem; }
.history-progress { overflow: hidden; height: 6px; border-radius: 999px; background: rgba(255,255,255,.06); }
.history-progress i { display: block; height: 100%; border-radius: inherit; background: linear-gradient(90deg, var(--lime), var(--cyan)); }
.history-provider { margin-top: .65rem; padding-top: .65rem; border-top: 1px solid var(--line); color: var(--muted); font-size: .62rem; }
.history-provider strong { color: #dfeae3; }
.history-up { color: var(--lime) !important; }
.history-down { color: #ff9696 !important; }
.live-timeline { display: grid; gap: .5rem; }
.timeline-summary { display: grid; grid-template-columns: repeat(3, 1fr); gap: .45rem; margin-bottom: .7rem; }
.timeline-summary span { padding: .65rem; border: 1px solid var(--line); border-radius: 10px; background: rgba(255,255,255,.02); }
.timeline-summary small, .timeline-summary strong { display: block; }
.timeline-summary small { color: var(--muted); font-size: .61rem; }
.timeline-summary strong { margin-top: .2rem; color: #e8f2ec; font-size: .78rem; }
.timeline-summary strong.is-fresh { color: var(--cyan); }
.timeline-summary strong.is-delayed { color: var(--amber); }
.timeline-summary strong.is-stale { color: #ff9898; }
.timeline-stream { position: relative; display: grid; gap: .45rem; padding-left: 1.15rem; }
.timeline-stream::before { content: ""; position: absolute; top: .7rem; bottom: .7rem; left: .28rem; width: 1px; background: linear-gradient(var(--cyan), rgba(112,246,210,.08)); }
.timeline-event { position: relative; display: grid; grid-template-columns: 72px 1fr auto; align-items: center; gap: .65rem; min-height: 58px; padding: .62rem .7rem; border: 1px solid var(--line); border-radius: 10px; background: #0e1d16; }
.timeline-event::before { content: ""; position: absolute; left: -1.08rem; width: 7px; height: 7px; border: 2px solid #09140f; border-radius: 50%; background: var(--cyan); box-shadow: 0 0 0 2px rgba(112,246,210,.16); }
.timeline-event.is-alert::before { background: var(--amber); }
.timeline-event time { color: var(--muted); font-size: .61rem; font-weight: 800; }
.timeline-event div { display: grid; gap: .14rem; }
.timeline-event strong { color: #e4eee8; font-size: .75rem; }
.timeline-event small { color: var(--muted); font-size: .62rem; line-height: 1.4; }
.timeline-event b { color: var(--lime); font-size: .82rem; }
.timeline-event b.is-down { color: #ff9898; }
.timeline-note { margin: .65rem 0 0; color: var(--muted); font-size: .63rem; line-height: 1.5; }
.alert-form { display: grid; gap: .8rem; padding: .9rem; border: 1px solid var(--line); border-radius: 12px; background: #0e1d16; }
.alert-form-row { display: grid; grid-template-columns: 1fr 1fr; gap: .6rem; }
.alert-form label { display: grid; gap: .35rem; color: var(--muted); font-size: .65rem; }
.alert-form input, .alert-form select { min-height: 42px; padding: 0 .7rem; border: 1px solid var(--line); border-radius: 9px; outline: 0; background: #08110d; color: var(--text); }
.alert-form input:focus, .alert-form select:focus { border-color: rgba(184,255,61,.42); }
.alert-submit { min-height: 42px; border: 0; border-radius: 9px; background: var(--lime); color: #17200b; font-weight: 900; cursor: pointer; }
.alert-help { margin: 0; color: var(--muted); font-size: .65rem; line-height: 1.5; }
.explore-panel { display: grid; gap: .75rem; }
.explore-hero { position: relative; overflow: hidden; padding: 1rem; border: 1px solid rgba(98,167,255,.2); border-radius: 13px; background: linear-gradient(135deg, rgba(53,139,255,.16), rgba(112,246,210,.04)); }
.explore-hero::after { content: "365"; position: absolute; right: -.2rem; bottom: -1.25rem; color: rgba(157,201,255,.055); font-size: 5.8rem; font-weight: 950; letter-spacing: -.09em; }
.explore-hero .explore-badge { position: relative; z-index: 1; }
.explore-hero h3 { position: relative; z-index: 1; margin: .7rem 0 .3rem; font-size: 1.05rem; letter-spacing: -.03em; }
.explore-hero p { position: relative; z-index: 1; max-width: 440px; margin: 0; color: #a5b9ad; font-size: .7rem; line-height: 1.55; }
.trip-flow { display: grid; grid-template-columns: repeat(4, 1fr); gap: .5rem; }
.trip-step { min-width: 0; padding: .7rem; border: 1px solid var(--line); border-radius: 10px; background: #0e1d16; }
.trip-step > span { display: grid; place-items: center; width: 26px; height: 26px; margin-bottom: .55rem; border-radius: 8px; background: rgba(98,167,255,.1); color: #8fc2ff; font-size: .68rem; font-weight: 900; }
.trip-step strong { display: block; overflow: hidden; margin-bottom: .18rem; color: #e3ece7; font-size: .68rem; text-overflow: ellipsis; white-space: nowrap; }
.trip-step small { display: block; color: var(--muted); font-size: .58rem; line-height: 1.45; }
.explore-cta { display: flex; align-items: center; justify-content: space-between; min-height: 46px; padding: 0 .9rem; border: 1px solid rgba(98,167,255,.28); border-radius: 10px; background: #1e64bd; color: #fff; font-size: .73rem; font-weight: 900; text-decoration: none; }
.explore-cta:hover { background: #2875d6; }
.explore-disclaimer { margin: -.15rem 0 0; color: var(--muted); font-size: .58rem; line-height: 1.45; }
.alerts-list { display: grid; gap: .6rem; }
.alert-item { display: grid; grid-template-columns: 1fr auto; align-items: center; gap: 1rem; padding: .8rem; border: 1px solid var(--line); border-radius: 11px; background: #0e1d16; }
.alert-item.is-triggered { border-color: rgba(184,255,61,.34); background: linear-gradient(135deg, rgba(184,255,61,.11), rgba(112,246,210,.04)); }
.alert-item div { display: grid; gap: .18rem; }
.alert-item strong { font-size: .78rem; }
.alert-item small { color: var(--muted); font-size: .65rem; }
.alert-item button { width: 34px; height: 34px; border: 1px solid rgba(255,107,107,.2); border-radius: 9px; background: rgba(255,107,107,.06); color: #ff9696; cursor: pointer; }
.alert-status { width: fit-content; margin-top: .22rem; padding: .2rem .42rem; border-radius: 999px; background: rgba(143,163,152,.1); color: var(--muted); font-size: .62rem; font-weight: 850; }
.alert-status.is-triggered { background: var(--lime-soft); color: var(--lime); }
.notification-control { display: flex; align-items: center; justify-content: space-between; gap: .8rem; margin: -.25rem 0 1rem; padding: .75rem; border: 1px solid rgba(112,246,210,.18); border-radius: 11px; background: rgba(112,246,210,.045); }
.notification-control[hidden] { display: none; }
.notification-control > div { display: grid; gap: .18rem; }
.notification-control strong { font-size: .78rem; }
.notification-control small { color: var(--muted); font-size: .68rem; line-height: 1.4; }
.notification-control button { flex: 0 0 auto; min-height: 38px; padding: 0 .7rem; border: 1px solid rgba(112,246,210,.3); border-radius: 9px; background: rgba(112,246,210,.08); color: var(--cyan); font-size: .68rem; font-weight: 850; cursor: pointer; }
.notification-control button.is-enabled { border-color: rgba(184,255,61,.3); background: var(--lime-soft); color: var(--lime); }
.notification-control button:disabled { cursor: default; opacity: .65; }
.delivery-settings { display: grid; gap: .75rem; margin-bottom: 1rem; padding: .85rem; border: 1px solid rgba(98,167,255,.2); border-radius: 12px; background: linear-gradient(145deg, rgba(98,167,255,.07), rgba(112,246,210,.025)); }
.delivery-heading { display: flex; align-items: flex-start; justify-content: space-between; gap: .8rem; }
.delivery-heading > div:first-child { display: grid; gap: .2rem; }
.delivery-heading strong, .delivery-history > strong, .alerts-section-title strong { font-size: .76rem; }
.delivery-heading small, .alerts-section-title small { color: var(--muted); font-size: .62rem; line-height: 1.45; }
.delivery-providers { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: .3rem; }
.delivery-providers span { padding: .25rem .42rem; border-radius: 999px; background: rgba(143,163,152,.1); color: var(--muted); font-size: .55rem; font-weight: 850; white-space: nowrap; }
.delivery-providers span.is-ready { background: var(--lime-soft); color: var(--lime); }
.delivery-form fieldset { display: grid; grid-template-columns: 1fr 1fr; gap: .55rem; margin: 0; padding: 0; border: 0; }
.delivery-form fieldset:disabled { opacity: .55; }
.delivery-channel { display: grid; gap: .36rem; color: #dce8e0; font-size: .68rem; font-weight: 800; }
.delivery-channel > span { display: flex; align-items: center; gap: .4rem; }
.delivery-channel > input { min-width: 0; min-height: 40px; padding: 0 .65rem; border: 1px solid var(--line); border-radius: 9px; outline: 0; background: #08110d; color: var(--text); }
.delivery-channel > input:focus { border-color: rgba(98,167,255,.45); }
.delivery-consent { grid-column: 1 / -1; display: flex; align-items: flex-start; gap: .48rem; color: var(--muted); font-size: .6rem; line-height: 1.45; }
.delivery-consent input { margin-top: .12rem; }
.delivery-save { grid-column: 1 / -1; min-height: 40px; border: 1px solid rgba(98,167,255,.3); border-radius: 9px; background: #1e64bd; color: #fff; font-size: .68rem; font-weight: 900; cursor: pointer; }
.delivery-save:hover { background: #2875d6; }
.delivery-note { margin: 0; color: var(--muted); font-size: .57rem; line-height: 1.5; }
.delivery-history { display: grid; gap: .4rem; padding-top: .7rem; border-top: 1px solid var(--line); }
#deliveryHistory { display: grid; gap: .35rem; }
#deliveryHistory > small { color: var(--muted); font-size: .6rem; }
.delivery-history-item { display: grid; grid-template-columns: auto 1fr auto; align-items: center; gap: .5rem; color: var(--muted); font-size: .58rem; }
.delivery-history-item b { color: #dce8e0; font-size: .58rem; }
.delivery-history-item em { padding: .2rem .38rem; border-radius: 999px; background: rgba(143,163,152,.1); color: var(--muted); font-size: .52rem; font-style: normal; font-weight: 850; }
.delivery-history-item em.is-sent { background: var(--lime-soft); color: var(--lime); }
.delivery-history-item em.is-failed { background: rgba(255,107,107,.08); color: #ff9696; }
.alerts-section-title { display: flex; align-items: baseline; justify-content: space-between; gap: .8rem; margin: 1.1rem 0 .55rem; }
.operations-modal { width: min(100%, 720px); }
.operations-heading { display: flex; align-items: baseline; justify-content: space-between; gap: 1rem; margin: 1rem 0 .55rem; }
.operations-heading strong { font-size: .82rem; }
.operations-heading small { color: var(--muted); font-size: .68rem; }
.operations-status-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .55rem; }
.operations-loading { grid-column: 1 / -1; padding: 2rem 1rem; border: 1px dashed var(--line-strong); border-radius: 12px; color: var(--muted); text-align: center; font-size: .75rem; }
.operations-status { display: grid; grid-template-columns: auto 1fr; align-items: center; gap: .65rem; min-height: 64px; padding: .72rem; border: 1px solid var(--line); border-radius: 11px; background: #0e1d16; }
.operations-status i { width: 10px; height: 10px; border-radius: 50%; background: #60736a; box-shadow: 0 0 0 4px rgba(96,115,106,.09); }
.operations-status.is-ready i { background: var(--lime); box-shadow: 0 0 0 4px rgba(184,255,61,.08); }
.operations-status.is-waiting i { background: #f3bd64; box-shadow: 0 0 0 4px rgba(243,189,100,.08); }
.operations-status div { display: grid; gap: .16rem; }
.operations-status strong { font-size: .73rem; }
.operations-status small { color: var(--muted); font-size: .62rem; line-height: 1.4; }
.operations-metrics { display: grid; grid-template-columns: repeat(5, 1fr); gap: .45rem; }
.operations-metric { padding: .68rem .55rem; border: 1px solid var(--line); border-radius: 10px; background: #0e1d16; text-align: center; }
.operations-metric strong { display: block; color: #eaf4ed; font-size: 1.05rem; }
.operations-metric small { display: block; margin-top: .18rem; color: var(--muted); font-size: .58rem; line-height: 1.35; }
.operations-metric.is-warning strong { color: #f3bd64; }
.operations-metric.is-error strong { color: #ff9696; }
.operations-queue { display: flex; align-items: center; justify-content: space-between; gap: 1rem; margin-top: .8rem; padding: .75rem; border: 1px solid rgba(112,246,210,.17); border-radius: 11px; background: rgba(112,246,210,.035); }
.operations-queue > div { display: grid; gap: .18rem; }
.operations-queue strong { font-size: .75rem; }
.operations-queue small { color: var(--muted); font-size: .62rem; line-height: 1.4; }
.operations-queue button { flex: 0 0 auto; min-height: 38px; padding: 0 .7rem; border: 1px solid rgba(112,246,210,.3); border-radius: 9px; background: rgba(112,246,210,.08); color: var(--cyan); font-size: .65rem; font-weight: 850; cursor: pointer; }
.operations-queue button:disabled { cursor: default; opacity: .45; }
.operations-last { margin-top: .55rem; padding: .62rem .75rem; border-radius: 9px; background: rgba(255,255,255,.025); color: var(--muted); font-size: .62rem; line-height: 1.5; }
.operations-note { margin: .75rem 0 0; color: var(--muted); font-size: .58rem; line-height: 1.5; }
.scanner-modal { width: min(100%, 900px); }
.scanner-controls { display: grid; grid-template-columns: minmax(150px, 1fr) minmax(160px, 1fr) auto; align-items: end; gap: .55rem; margin-bottom: .75rem; padding: .72rem; border: 1px solid var(--line); border-radius: 12px; background: #08110d; }
.scanner-controls > label:not(.scanner-live-filter) { display: grid; gap: .35rem; }
.scanner-controls > label > span { color: var(--muted); font-size: .62rem; font-weight: 800; letter-spacing: .06em; text-transform: uppercase; }
.scanner-controls select { min-height: 40px; padding: 0 2rem 0 .7rem; border: 1px solid var(--line); border-radius: 9px; outline: 0; background: #0e1d16; color: #e4eee8; font-size: .72rem; }
.scanner-controls select:focus { border-color: rgba(184,255,61,.42); box-shadow: 0 0 0 3px rgba(184,255,61,.06); }
.scanner-live-filter { display: flex; align-items: center; gap: .55rem; min-height: 40px; padding: 0 .72rem; border: 1px solid var(--line); border-radius: 9px; background: #0e1d16; cursor: pointer; }
.scanner-live-filter input { accent-color: var(--lime); }
.scanner-live-filter > span { display: grid; gap: .05rem; letter-spacing: 0; text-transform: none; }
.scanner-live-filter strong { color: #e2ede6; font-size: .68rem; }
.scanner-live-filter small { color: var(--muted); font-size: .56rem; }
.scanner-summary { display: grid; grid-template-columns: repeat(4, 1fr); gap: .5rem; margin-bottom: .9rem; }
.scanner-summary > div { padding: .72rem; border: 1px solid rgba(184,255,61,.14); border-radius: 11px; background: linear-gradient(145deg, rgba(184,255,61,.07), rgba(112,246,210,.02)); }
.scanner-summary strong, .scanner-summary small { display: block; }
.scanner-summary strong { color: var(--lime); font-size: 1.05rem; }
.scanner-summary small { margin-top: .18rem; color: var(--muted); font-size: .6rem; line-height: 1.35; }
.scanner-heading { display: flex; align-items: center; justify-content: space-between; gap: 1rem; margin-bottom: .5rem; }
.scanner-heading strong { font-size: .78rem; }
.scanner-heading small { padding: .2rem .4rem; border-radius: 5px; background: rgba(112,246,210,.08); color: var(--cyan); font-size: .56rem; font-weight: 900; letter-spacing: .07em; }
.scanner-results { display: grid; gap: .45rem; }
.scanner-result { display: grid; grid-template-columns: 54px minmax(180px, 1fr) 104px 105px 170px; align-items: center; gap: .6rem; min-height: 74px; padding: .65rem; border: 1px solid var(--line); border-radius: 12px; background: #0e1d16; }
.scanner-result.is-medium { border-color: rgba(184,255,61,.2); }
.scanner-result.is-high { border-color: rgba(184,255,61,.36); background: linear-gradient(120deg, rgba(184,255,61,.08), #0e1d16 58%); }
.scanner-rank { display: grid; justify-items: center; gap: .22rem; }
.scanner-rank span { color: var(--lime); font-size: .9rem; font-weight: 900; }
.scanner-rank b { padding: .15rem .28rem; border-radius: 5px; background: rgba(255,255,255,.05); color: var(--muted); font-size: .5rem; letter-spacing: .04em; }
.scanner-fixture, .scanner-market, .scanner-edge { display: grid; gap: .18rem; min-width: 0; }
.scanner-fixture strong { overflow: hidden; font-size: .76rem; text-overflow: ellipsis; white-space: nowrap; }
.scanner-fixture small, .scanner-market small, .scanner-edge small { overflow: hidden; color: var(--muted); font-size: .58rem; text-overflow: ellipsis; white-space: nowrap; }
.scanner-market strong { color: #e7f0ea; font-size: .74rem; }
.scanner-edge strong { color: var(--lime); font-size: .88rem; }
.scanner-edge em { color: var(--muted); font-size: .54rem; font-style: normal; }
.scanner-actions { display: grid; grid-template-columns: 1fr 62px; gap: .35rem; }
.scanner-actions button { min-height: 36px; border: 1px solid rgba(112,246,210,.22); border-radius: 8px; background: rgba(112,246,210,.06); color: var(--cyan); font-size: .58rem; font-weight: 850; cursor: pointer; }
.scanner-actions button:last-child { border-color: rgba(184,255,61,.25); background: var(--lime-soft); color: var(--lime); }
.scanner-actions button:hover { border-color: currentColor; }
.scanner-empty { display: grid; justify-items: center; gap: .25rem; padding: 2rem 1rem; border: 1px dashed var(--line-strong); border-radius: 12px; text-align: center; }
.scanner-empty strong { font-size: .78rem; }
.scanner-empty small { color: var(--muted); font-size: .65rem; }
.scanner-disclaimer { margin: .8rem 0 0; padding: .7rem; border-left: 2px solid var(--amber); background: rgba(255,207,90,.035); color: #a99d7b; font-size: .6rem; line-height: 1.5; }
.scanner-disclaimer strong { color: #e1cc91; }
.live-command-nav { color: #ff9696; }
.sports-live-nav { color: var(--cyan); }
.sports-live-modal { width: min(100%, 900px); }
.sports-live-player { display: grid; min-height: 200px; overflow: hidden; aspect-ratio: 16 / 9; border: 1px solid rgba(112,246,210,.24); border-radius: 14px; background: #020604; }
.sports-live-player iframe { width: 100%; height: 100%; min-height: 200px; border: 0; }
.sports-live-status { display: flex; align-items: flex-start; gap: .65rem; margin-top: .75rem; padding: .75rem; border: 1px solid var(--line); border-radius: 12px; background: #0e1d16; }
.sports-live-status > span { color: var(--cyan); font-size: .72rem; line-height: 1.5; }
.sports-live-status p { display: grid; gap: .18rem; margin: 0; }
.sports-live-status strong { font-size: .78rem; }
.sports-live-status small { color: var(--muted); font-size: .67rem; line-height: 1.5; }
.sports-live-sources { display: grid; grid-template-columns: repeat(3, 1fr); gap: .55rem; margin-top: .75rem; }
.sports-live-sources a { display: grid; gap: .25rem; min-height: 112px; padding: .75rem; border: 1px solid var(--line); border-radius: 12px; background: rgba(255,255,255,.025); color: var(--text); text-decoration: none; }
.sports-live-sources a:hover, .sports-live-sources a:focus-visible { border-color: rgba(184,255,61,.4); outline: 0; }
.sports-live-sources strong { font-size: .8rem; }
.sports-live-sources small { color: var(--muted); font-size: .66rem; line-height: 1.45; }
.sports-live-sources span { align-self: end; color: var(--lime); font-size: .66rem; font-weight: 850; }
.sports-live-note { margin: .75rem 0 0; color: var(--muted); font-size: .62rem; line-height: 1.55; }
.live-command-modal { width: min(100%, 980px); }
.live-command-toolbar { display: grid; grid-template-columns: 1fr 1fr auto; align-items: end; gap: .55rem; }
.live-command-toolbar label { display: grid; gap: .32rem; color: var(--muted); font-size: .72rem; }
.live-command-toolbar select, .live-command-toolbar button { min-height: 42px; padding: 0 .7rem; border: 1px solid var(--line); border-radius: 9px; color: var(--text); background: #08110d; font: inherit; font-size: .75rem; }
.live-command-toolbar button { border-color: rgba(255,150,150,.3); color: #ffabab; font-weight: 800; cursor: pointer; }
.live-command-summary { display: grid; grid-template-columns: repeat(4, 1fr); gap: .45rem; margin: .75rem 0; }
.live-command-summary > div { padding: .7rem; border: 1px solid var(--line); border-radius: 10px; background: rgba(255,255,255,.025); }
.live-command-summary strong, .live-command-summary small { display: block; }
.live-command-summary strong { color: #ff9999; font-size: 1rem; }
.live-command-summary small { margin-top: .2rem; color: var(--muted); font-size: .7rem; }
.live-command-heading { display: flex; justify-content: space-between; gap: 1rem; margin-bottom: .5rem; }
.live-command-heading strong { font-size: .8rem; }
.live-command-heading small { color: var(--muted); font-size: .7rem; }
.live-command-list { display: grid; gap: .5rem; max-height: 430px; overflow: auto; }
.live-command-row { display: grid; grid-template-columns: 65px minmax(190px,1.5fr) minmax(120px,.8fr) 105px auto; align-items: center; gap: .6rem; padding: .72rem; border: 1px solid var(--line); border-radius: 12px; background: #0e1d16; }
.live-command-status { display: grid; justify-items: center; gap: .25rem; }
.live-command-status b { padding: .18rem .4rem; border-radius: 999px; color: #fff; background: #d84f5b; font-size: .65rem; }
.live-command-status strong { color: #ffb0b0; font-size: .75rem; }
.live-command-fixture small, .live-command-fixture span, .live-command-market small, .live-command-market span, .live-command-intensity small { display: block; color: var(--muted); font-size: .68rem; }
.live-command-fixture strong { display: block; margin: .2rem 0; font-size: .8rem; }
.live-command-fixture em { padding: .15rem .3rem; color: #fff; background: rgba(216,79,91,.18); font-style: normal; }
.live-command-market strong, .live-command-intensity strong { display: block; margin: .2rem 0; color: var(--lime); font-size: .8rem; }
.live-command-intensity i { display: block; overflow: hidden; height: 4px; border-radius: 999px; background: rgba(255,255,255,.07); }
.live-command-intensity i b { display: block; height: 100%; background: linear-gradient(90deg,#f4c45e,#ff6f79); }
.live-command-actions { display: grid; grid-template-columns: repeat(3, auto); gap: .3rem; }
.live-command-actions button { min-height: 34px; padding: 0 .5rem; border: 1px solid rgba(112,246,210,.2); border-radius: 8px; color: var(--cyan); background: transparent; font: inherit; font-size: .65rem; font-weight: 800; cursor: pointer; }
.live-command-actions button.is-added { border-color: rgba(184,255,61,.35); color: var(--lime); background: var(--lime-soft); }
.dashboard-nav-button { color: var(--lime); }
.dashboard-modal { width: min(100%, 930px); }
.dashboard-summary { display: grid; grid-template-columns: repeat(4,1fr); gap: .5rem; }
.dashboard-summary button { min-height: 94px; padding: .75rem; border: 1px solid var(--line); border-radius: 12px; color: var(--text); background: linear-gradient(145deg,rgba(184,255,61,.06),rgba(112,246,210,.02)); text-align: left; cursor: pointer; }
.dashboard-summary strong, .dashboard-summary small, .dashboard-summary span { display: block; }
.dashboard-summary strong { color: var(--lime); font-size: 1.35rem; }
.dashboard-summary small { margin-top: .15rem; color: #dfe9e2; font-size: .72rem; }
.dashboard-summary span { margin-top: .4rem; color: var(--muted); font-size: .65rem; }
.dashboard-grid { display: grid; grid-template-columns: 1.4fr 1fr; gap: .65rem; margin-top: .7rem; }
.dashboard-focus, .dashboard-side { padding: .75rem; border: 1px solid var(--line); border-radius: 12px; background: rgba(255,255,255,.018); }
.dashboard-heading { display: flex; justify-content: space-between; gap: .6rem; margin-bottom: .55rem; }
.dashboard-heading strong { font-size: .78rem; }
.dashboard-heading small { color: var(--muted); font-size: .68rem; }
#dashboardFocusList { display: grid; gap: .4rem; }
.dashboard-match { display: grid; grid-template-columns: minmax(0,1fr) auto; align-items: center; gap: .6rem; padding: .62rem; border: 1px solid var(--line); border-radius: 10px; background: #0e1d16; }
.dashboard-match small, .dashboard-match strong, .dashboard-match span { display: block; }
.dashboard-match small { color: var(--muted); font-size: .66rem; }
.dashboard-match strong { margin: .2rem 0; font-size: .76rem; }
.dashboard-match em { color: var(--lime); font-style: normal; }
.dashboard-match span { display: flex; flex-wrap: wrap; gap: .22rem; }
.dashboard-match span b { padding: .12rem .28rem; border-radius: 999px; color: var(--cyan); background: rgba(112,246,210,.08); font-size: .52rem; }
.dashboard-match > button { min-height: 34px; padding: 0 .55rem; border: 1px solid rgba(184,255,61,.25); border-radius: 8px; color: var(--lime); background: transparent; font: inherit; font-size: .65rem; font-weight: 800; cursor: pointer; }
.dashboard-actions { display: grid; grid-template-columns: 1fr 1fr; gap: .4rem; }
.dashboard-actions button { display: grid; grid-template-columns: 28px 1fr; align-items: center; gap: .45rem; min-height: 58px; padding: .5rem; border: 1px solid var(--line); border-radius: 9px; color: var(--text); background: #0e1d16; text-align: left; cursor: pointer; }
.dashboard-actions i { color: var(--lime); font-size: 1rem; font-style: normal; text-align: center; }
.dashboard-actions strong, .dashboard-actions small { display: block; }
.dashboard-actions strong { font-size: .68rem; }
.dashboard-actions small { margin-top: .12rem; color: var(--muted); font-size: .58rem; }
.dashboard-health { display: grid; gap: .35rem; margin-top: .55rem; }
.dashboard-health > div { display: flex; justify-content: space-between; gap: .6rem; padding: .5rem .55rem; border-radius: 8px; background: rgba(255,255,255,.025); font-size: .65rem; }
.dashboard-health span { color: var(--muted); }
.dashboard-health strong { color: #dfeae3; text-align: right; }
.dashboard-empty { padding: 1rem; border: 1px dashed var(--line); border-radius: 9px; color: var(--muted); font-size: .7rem; line-height: 1.5; }
.dashboard-note { margin: .7rem 0 0; color: var(--muted); font-size: .66rem; }
.compare-lab-nav { color: var(--cyan); }
.compare-lab-modal { width: min(100%, 1040px); }
.compare-lab-picker { display: flex; gap: .4rem; overflow-x: auto; padding-bottom: .45rem; scrollbar-width: thin; }
.compare-lab-picker button { flex: 0 0 auto; min-height: 38px; padding: .35rem .55rem; border: 1px solid var(--line); border-radius: 9px; color: var(--muted); background: #0e1d16; font: inherit; font-size: .67rem; cursor: pointer; }
.compare-lab-picker button span { margin-right: .3rem; color: var(--cyan); }
.compare-lab-picker button small { margin-left: .4rem; color: #ff9999; }
.compare-lab-picker button.is-active { border-color: rgba(112,246,210,.45); color: #eef7f1; background: rgba(112,246,210,.08); }
.compare-lab-summary { display: grid; grid-template-columns: repeat(4,1fr); gap: .45rem; margin: .65rem 0; }
.compare-lab-summary > div { padding: .65rem; border: 1px solid var(--line); border-radius: 10px; background: rgba(255,255,255,.025); }
.compare-lab-summary small, .compare-lab-summary strong, .compare-lab-summary span { display: block; }
.compare-lab-summary small { color: var(--muted); font-size: .66rem; }
.compare-lab-summary strong { margin-top: .2rem; color: var(--cyan); font-size: .92rem; }
.compare-lab-summary span { margin-top: .25rem; color: var(--muted); font-size: .58rem; line-height: 1.35; }
.compare-lab-summary .is-high strong { color: #ff9292; }
.compare-lab-summary .is-medium strong { color: #f4c45e; }
.compare-lab-summary .is-low strong { color: var(--lime); }
.compare-lab-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: .55rem; }
.compare-lab-card { position: relative; padding: .8rem; border: 1px solid var(--line); border-radius: 12px; background: #0e1d16; }
.compare-lab-card > small { color: var(--muted); font-size: .64rem; }
.compare-lab-card h3 { margin: .3rem 2rem .6rem 0; font-size: .82rem; line-height: 1.35; }
.compare-lab-remove { position: absolute; top: .55rem; right: .55rem; width: 28px; height: 28px; border: 1px solid var(--line); border-radius: 7px; color: var(--muted); background: transparent; cursor: pointer; }
.compare-lab-choice { padding: .65rem; border-radius: 9px; background: rgba(184,255,61,.055); }
.compare-lab-choice span, .compare-lab-choice small, .compare-lab-choice strong { display: block; }
.compare-lab-choice span, .compare-lab-choice small { color: var(--muted); font-size: .64rem; }
.compare-lab-choice strong { margin: .22rem 0; color: var(--lime); font-size: .9rem; }
.compare-lab-card dl { display: grid; grid-template-columns: 1fr 1fr; gap: .35rem; margin: .55rem 0; }
.compare-lab-card dl div { padding: .45rem; border-radius: 8px; background: rgba(255,255,255,.025); }
.compare-lab-card dt { color: var(--muted); font-size: .6rem; }
.compare-lab-card dd { margin: .15rem 0 0; font-size: .72rem; font-weight: 800; }
.compare-lab-open { width: 100%; min-height: 36px; border: 1px solid rgba(112,246,210,.25); border-radius: 8px; color: var(--cyan); background: transparent; font: inherit; font-size: .66rem; font-weight: 800; cursor: pointer; }
.compare-lab-actions { display: flex; justify-content: flex-end; gap: .45rem; margin-top: .65rem; }
.compare-lab-actions button { min-height: 40px; padding: 0 .75rem; border: 1px solid var(--line); border-radius: 9px; color: var(--muted); background: transparent; font: inherit; font-size: .7rem; font-weight: 800; cursor: pointer; }
.compare-lab-actions button.is-primary { border-color: rgba(184,255,61,.4); color: #07110d; background: var(--lime); }
.heatmap-nav { color: #f4c45e; }
.signal-nav { color: #70f6d2; }
.provider-nav { color: #b6ddff; }
.consensus-nav { color: #d9c6ff; }
.integrity-nav { color: #ff9696; }
.integrity-modal { width: min(100%, 1040px); }.integrity-toolbar{display:grid;grid-template-columns:1fr 1fr auto;align-items:end;gap:.45rem}.integrity-toolbar label{display:grid;gap:.3rem;color:var(--muted);font-size:.68rem}.integrity-toolbar select,.integrity-toolbar button{min-height:40px;padding:0 .68rem;border:1px solid var(--line);border-radius:9px;background:#08110d;color:var(--text);font:inherit;font-size:.7rem}.integrity-toolbar button{color:#ff9696;cursor:pointer}.integrity-summary{display:grid;grid-template-columns:repeat(5,1fr);gap:.4rem;margin:.72rem 0}.integrity-summary div{padding:.62rem;border:1px solid var(--line);border-radius:10px;background:rgba(255,107,107,.03)}.integrity-summary strong,.integrity-summary small{display:block}.integrity-summary strong{color:#ff9696;font-size:.95rem}.integrity-summary small{margin-top:.18rem;color:var(--muted);font-size:.6rem}.integrity-legend{display:flex;gap:.8rem;margin-bottom:.48rem;color:var(--muted);font-size:.62rem}.integrity-legend span{display:flex;align-items:center;gap:.28rem}.integrity-legend i{width:9px;height:9px;border-radius:3px}.integrity-legend .is-clear{background:#2e9b82}.integrity-legend .is-review{background:#d49b3e}.integrity-legend .is-risk{background:#d8515d}.integrity-list{display:grid;gap:.48rem;max-height:470px;overflow:auto}.integrity-card{display:grid;grid-template-columns:58px minmax(175px,1fr) minmax(280px,1.5fr) auto;align-items:center;gap:.62rem;padding:.68rem;border:1px solid var(--line);border-radius:12px;background:#0e1d16}.integrity-card.is-risk{border-color:rgba(216,81,93,.42)}.integrity-card.is-review{border-color:rgba(212,155,62,.34)}.integrity-score{display:grid;place-items:center;min-height:54px;border-radius:10px;background:rgba(46,155,130,.1);color:#70f6d2}.integrity-card.is-review .integrity-score{background:rgba(212,155,62,.12);color:#f4c45e}.integrity-card.is-risk .integrity-score{background:rgba(216,81,93,.14);color:#ff9696}.integrity-score strong{font-size:1rem}.integrity-score small{font-size:.52rem;font-weight:900}.integrity-main small,.integrity-main strong,.integrity-main span{display:block}.integrity-main small,.integrity-main span{color:var(--muted);font-size:.6rem}.integrity-main strong{margin:.18rem 0;font-size:.74rem}.integrity-flags{display:flex;flex-wrap:wrap;gap:.3rem}.integrity-flags>span{min-width:120px;padding:.38rem .45rem;border-radius:8px;background:rgba(255,255,255,.035)}.integrity-flags b,.integrity-flags small{display:block}.integrity-flags b{font-size:.61rem}.integrity-flags small{margin-top:.12rem;color:var(--muted);font-size:.55rem}.integrity-card>button{min-height:34px;padding:0 .55rem;border:1px solid rgba(255,150,150,.25);border-radius:8px;background:rgba(255,107,107,.05);color:#ff9696;font:inherit;font-size:.61rem;font-weight:800;cursor:pointer}
.consensus-modal { width: min(100%, 1020px); }
.consensus-toolbar { display: grid; grid-template-columns: 1fr 1fr auto; align-items: end; gap: .45rem; }.consensus-toolbar label{display:grid;gap:.3rem;color:var(--muted);font-size:.68rem}.consensus-toolbar select,.consensus-toolbar button{min-height:40px;padding:0 .68rem;border:1px solid var(--line);border-radius:9px;background:#08110d;color:var(--text);font:inherit;font-size:.7rem}.consensus-toolbar button{color:#d9c6ff;cursor:pointer}
.consensus-summary{display:grid;grid-template-columns:repeat(5,1fr);gap:.4rem;margin:.75rem 0}.consensus-summary div{padding:.62rem;border:1px solid var(--line);border-radius:10px;background:rgba(217,198,255,.035)}.consensus-summary strong,.consensus-summary small{display:block}.consensus-summary strong{color:#d9c6ff;font-size:.95rem}.consensus-summary small{margin-top:.18rem;color:var(--muted);font-size:.6rem}
.consensus-list{display:grid;gap:.5rem;max-height:470px;overflow:auto}.consensus-card{display:grid;grid-template-columns:minmax(190px,1fr) minmax(330px,1.5fr) auto;align-items:center;gap:.7rem;padding:.72rem;border:1px solid var(--line);border-radius:12px;background:#0e1d16}.consensus-card.is-divided{border-color:rgba(255,107,107,.35)}.consensus-card.is-aligned{border-color:rgba(112,246,210,.28)}.consensus-fixture small,.consensus-fixture strong,.consensus-fixture span{display:block}.consensus-fixture small,.consensus-fixture span{color:var(--muted);font-size:.61rem}.consensus-fixture strong{margin:.18rem 0;font-size:.75rem}.consensus-markets{display:grid;grid-template-columns:repeat(3,1fr);gap:.38rem}.consensus-markets>div{padding:.45rem;border-radius:8px;background:rgba(255,255,255,.025)}.consensus-markets small,.consensus-markets strong,.consensus-markets span{display:block;font-size:.58rem}.consensus-markets small,.consensus-markets span{color:var(--muted)}.consensus-markets strong{margin:.18rem 0;color:#d9c6ff}.consensus-markets i{display:block;height:4px;margin-top:.28rem;border-radius:99px;background:rgba(255,255,255,.08);overflow:hidden}.consensus-markets em{display:block;height:100%;background:linear-gradient(90deg,#d9c6ff,#70f6d2)}.consensus-card>button{min-height:34px;padding:0 .6rem;border:1px solid rgba(217,198,255,.28);border-radius:8px;background:rgba(217,198,255,.06);color:#d9c6ff;font:inherit;font-size:.62rem;font-weight:800;cursor:pointer}
.provider-modal { width: min(100%, 940px); }
.provider-toolbar { display: flex; align-items: end; gap: .5rem; }
.provider-toolbar label { display: grid; flex: 1; gap: .3rem; color: var(--muted); font-size: .68rem; }
.provider-toolbar select, .provider-toolbar button { min-height: 40px; padding: 0 .7rem; border: 1px solid var(--line); border-radius: 9px; background: #08110d; color: var(--text); font: inherit; font-size: .7rem; }
.provider-toolbar button { color: #70b9ff; cursor: pointer; }
.provider-summary { display: grid; grid-template-columns: repeat(4,1fr); gap: .45rem; margin: .75rem 0; }
.provider-summary div { padding: .65rem; border: 1px solid var(--line); border-radius: 10px; background: rgba(112,185,255,.035); }.provider-summary strong,.provider-summary small{display:block}.provider-summary strong{color:#70b9ff;font-size:1rem}.provider-summary small{margin-top:.18rem;color:var(--muted);font-size:.63rem}
.provider-table-head,.provider-row{display:grid;grid-template-columns:1.6fr 1fr .65fr .65fr .65fr;align-items:center;gap:.5rem}.provider-table-head{padding:.45rem .7rem;color:var(--muted);font-size:.6rem;text-transform:uppercase;letter-spacing:.05em}.provider-list{display:grid;gap:.38rem;max-height:450px;overflow:auto}.provider-row{padding:.65rem .7rem;border:1px solid var(--line);border-radius:11px;background:#0e1d16;font-size:.7rem}.provider-name{display:flex;align-items:center;gap:.55rem}.provider-name>b{display:grid;place-items:center;width:28px;height:28px;border-radius:8px;background:rgba(112,185,255,.08);color:#70b9ff}.provider-name strong,.provider-name small{display:block}.provider-name small{margin-top:.12rem;color:var(--muted);font-size:.58rem}.provider-rating strong{display:block;color:#dcecff}.provider-rating i{display:block;height:4px;margin-top:.25rem;border-radius:99px;background:rgba(255,255,255,.08);overflow:hidden}.provider-rating em{display:block;height:100%;background:linear-gradient(90deg,#70b9ff,#70f6d2)}.provider-row>span{color:#c8d7cf;font-weight:800}.provider-row>span.is-fresh{color:var(--lime)}
.signal-modal { width: min(100%, 980px); }
.signal-toolbar { display: grid; grid-template-columns: 1fr 1fr auto; align-items: end; gap: .45rem; }
.signal-toolbar label { display: grid; gap: .3rem; color: var(--muted); font-size: .68rem; }
.signal-toolbar select, .signal-toolbar button { min-height: 40px; padding: 0 .65rem; border: 1px solid var(--line); border-radius: 9px; color: var(--text); background: #08110d; font: inherit; font-size: .7rem; }
.signal-toolbar button { color: var(--cyan); cursor: pointer; }
.signal-summary { display: grid; grid-template-columns: repeat(4,1fr); gap: .45rem; margin: .75rem 0; }
.signal-summary div { padding: .65rem; border: 1px solid var(--line); border-radius: 10px; background: rgba(255,255,255,.025); }
.signal-summary strong, .signal-summary small { display: block; }
.signal-summary strong { color: var(--cyan); font-size: 1rem; }.signal-summary small { margin-top: .18rem; color: var(--muted); font-size: .63rem; }
.signal-feed { display: grid; gap: .5rem; max-height: 470px; overflow: auto; }
.signal-card { display: grid; grid-template-columns: 60px 1fr auto; align-items: center; gap: .7rem; padding: .7rem; border: 1px solid var(--line); border-radius: 12px; background: #0e1d16; }
.signal-card.is-strong { border-color: rgba(244,196,94,.32); }.signal-card.is-critical { border-color: rgba(255,107,107,.4); background: linear-gradient(135deg,rgba(255,107,107,.09),rgba(14,29,22,.95)); }
.signal-score { display: grid; place-items: center; min-height: 54px; border-radius: 10px; background: rgba(112,246,210,.08); color: var(--cyan); }
.signal-score strong { font-size: 1rem; }.signal-score small { font-size: .52rem; font-weight: 900; }
.signal-main small, .signal-main strong, .signal-main span { display: block; }.signal-main small, .signal-main span { color: var(--muted); font-size: .62rem; }.signal-main strong { margin: .18rem 0; font-size: .76rem; }.signal-main p { margin: .28rem 0 0; color: #c8d7cf; font-size: .62rem; }
.signal-actions { display: grid; gap: .32rem; }.signal-actions button { min-height: 32px; padding: 0 .55rem; border: 1px solid rgba(112,246,210,.25); border-radius: 8px; background: rgba(112,246,210,.05); color: var(--cyan); font: inherit; font-size: .61rem; font-weight: 800; cursor: pointer; }
.heatmap-modal { width: min(100%, 1050px); }
.heatmap-toolbar { display: grid; grid-template-columns: repeat(3,1fr) auto; align-items: end; gap: .45rem; }
.heatmap-toolbar label { display: grid; gap: .3rem; color: var(--muted); font-size: .68rem; }
.heatmap-toolbar select, .heatmap-toolbar button { min-height: 40px; padding: 0 .65rem; border: 1px solid var(--line); border-radius: 9px; color: var(--text); background: #08110d; font: inherit; font-size: .7rem; }
.heatmap-toolbar button { color: #f4c45e; cursor: pointer; }
.heatmap-summary { display: grid; grid-template-columns: repeat(5,1fr); gap: .4rem; margin: .65rem 0; }
.heatmap-summary div { padding: .6rem; border: 1px solid var(--line); border-radius: 9px; background: rgba(255,255,255,.025); }
.heatmap-summary strong, .heatmap-summary small { display: block; }
.heatmap-summary strong { color: #f4c45e; font-size: .9rem; }
.heatmap-summary small { margin-top: .18rem; color: var(--muted); font-size: .63rem; }
.heatmap-legend { display: flex; align-items: center; gap: .7rem; margin-bottom: .45rem; color: var(--muted); font-size: .64rem; }
.heatmap-legend span { display: flex; align-items: center; gap: .25rem; }
.heatmap-legend i { width: 10px; height: 10px; border-radius: 3px; }
.heatmap-legend .is-calm { background: #2e9b82; }.heatmap-legend .is-warm { background: #d49b3e; }.heatmap-legend .is-hot { background: #d8515d; }
.heatmap-legend small { margin-left: auto; }
.heatmap-board { display: grid; gap: .45rem; max-height: 440px; overflow: auto; }
.heatmap-row { display: grid; grid-template-columns: minmax(190px,1.5fr) minmax(240px,1fr) auto; align-items: center; gap: .55rem; padding: .65rem; border: 1px solid var(--line); border-radius: 11px; background: #0e1d16; }
.heatmap-fixture small, .heatmap-fixture strong, .heatmap-fixture span { display: block; }
.heatmap-fixture small, .heatmap-fixture span { color: var(--muted); font-size: .64rem; }
.heatmap-fixture strong { margin: .2rem 0; font-size: .76rem; }
.heatmap-cells { display: grid; grid-template-columns: repeat(3,1fr); gap: .3rem; }
.heatmap-cells button { position: relative; overflow: hidden; min-height: 60px; padding: .38rem; border: 1px solid transparent; border-radius: 8px; color: #fff; text-align: left; cursor: pointer; }
.heatmap-cells button.is-calm { background: rgba(46,155,130,.18); border-color: rgba(46,155,130,.35); }.heatmap-cells button.is-warm { background: rgba(212,155,62,.2); border-color: rgba(212,155,62,.4); }.heatmap-cells button.is-hot { background: rgba(216,81,93,.22); border-color: rgba(216,81,93,.45); }
.heatmap-cells small, .heatmap-cells strong, .heatmap-cells span { position: relative; z-index: 1; display: block; }
.heatmap-cells small, .heatmap-cells span { font-size: .58rem; }.heatmap-cells strong { margin: .1rem 0; font-size: .76rem; }.heatmap-cells span { color: rgba(255,255,255,.7); }
.heatmap-cells i { position: absolute; right: 0; bottom: 0; width: 4px; background: currentColor; opacity: .45; }
.heatmap-na { display: grid; place-items: center; min-height: 60px; border-radius: 8px; background: rgba(255,255,255,.025); color: var(--muted); }
.heatmap-open { min-height: 36px; padding: 0 .55rem; border: 1px solid rgba(244,196,94,.28); border-radius: 8px; color: #f4c45e; background: transparent; font: inherit; font-size: .65rem; font-weight: 800; cursor: pointer; }
.competitions-modal { width: min(100%, 880px); }
.coverage-tabs { display: grid; grid-template-columns: repeat(3, 1fr); gap: .4rem; padding: .3rem; margin: .9rem 0; border: 1px solid var(--line); border-radius: 12px; background: rgba(0,0,0,.16); }
.coverage-tabs button { min-height: 40px; border: 0; border-radius: 9px; color: var(--muted); background: transparent; font: inherit; font-size: .78rem; font-weight: 800; cursor: pointer; }
.coverage-tabs button.is-active { color: #07120d; background: var(--accent); box-shadow: 0 6px 18px rgba(112,246,210,.15); }
.team-tools { display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: end; gap: .55rem; margin-bottom: .85rem; }
.team-tools[hidden] { display: none; }
.team-search { display: grid; gap: .35rem; }
.team-search span { color: var(--muted); font-size: .68rem; font-weight: 800; letter-spacing: .06em; text-transform: uppercase; }
.team-search input { width: 100%; min-height: 44px; padding: 0 .8rem; border: 1px solid var(--line); border-radius: 10px; color: var(--text); background: #09140f; font: inherit; font-size: .86rem; }
.favorite-teams-toggle { min-height: 44px; padding: 0 .85rem; border: 1px solid var(--line); border-radius: 10px; color: #d3dfd8; background: #0e1d16; font: inherit; font-size: .72rem; font-weight: 800; cursor: pointer; }
.favorite-teams-toggle.is-active { border-color: #f4c45e; color: #f4c45e; background: rgba(244,196,94,.08); }
.teams-nav-button b { min-width: 18px; padding: .08rem .3rem; border-radius: 999px; color: #07120d; background: #f4c45e; font-size: .62rem; }
.competition-summary { display: grid; grid-template-columns: repeat(4, 1fr); gap: .55rem; margin-bottom: 1rem; }
.competition-summary > div { padding: .78rem; border: 1px solid var(--line); border-radius: 11px; background: linear-gradient(145deg, rgba(98,167,255,.08), rgba(112,246,210,.025)); }
.competition-summary strong { display: block; color: #edf5f0; font-size: 1.08rem; }
.competition-summary small { display: block; margin-top: .22rem; color: var(--muted); font-size: .62rem; line-height: 1.35; }
.competition-heading { display: flex; align-items: baseline; justify-content: space-between; gap: 1rem; margin: .9rem 0 .55rem; }
.competition-heading strong { font-size: .8rem; }
.competition-heading small { color: var(--cyan); font-size: .58rem; font-weight: 850; letter-spacing: .06em; }
.competition-list { display: grid; grid-template-columns: 1fr 1fr; gap: .55rem; }
.competition-item { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; align-items: center; gap: .7rem; min-height: 76px; padding: .72rem; border: 1px solid var(--line); border-radius: 12px; background: #0e1d16; }
.team-item { align-items: start; }
.team-form { display: grid; gap: .2rem; margin-top: .42rem; color: #bacac1; font-size: .65rem; line-height: 1.4; }
.team-form b { color: #e7f2eb; }
.team-alert-controls { display: flex; flex-wrap: wrap; gap: .28rem; margin-top: .5rem; }
.team-alert-controls button { min-height: 28px; padding: .2rem .48rem; border: 1px solid var(--line); border-radius: 999px; color: var(--muted); background: transparent; font: inherit; font-size: .6rem; font-weight: 800; cursor: pointer; }
.team-alert-controls button.is-active { border-color: rgba(112,246,210,.42); color: var(--cyan); background: rgba(112,246,210,.08); }
.team-alerts-list { display: grid; grid-template-columns: 1fr 1fr; gap: .45rem; margin-bottom: 1rem; }
.team-alert-summary { display: grid; grid-template-columns: 30px 1fr; align-items: center; gap: .5rem; padding: .62rem; border: 1px solid var(--line); border-radius: 10px; background: rgba(255,255,255,.02); }
.team-alert-summary > span { display: grid; place-items: center; width: 30px; height: 30px; border-radius: 8px; background: rgba(112,246,210,.08); }
.team-alert-summary strong, .team-alert-summary small { display: block; }
.team-alert-summary strong { font-size: .74rem; }
.team-alert-summary small { margin-top: .14rem; color: var(--muted); font-size: .61rem; }
.calendar-tools { display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: end; gap: .55rem; margin-bottom: .85rem; }
.calendar-tools[hidden] { display: none; }
.calendar-tools label { display: grid; gap: .35rem; }
.calendar-tools label span { color: var(--muted); font-size: .68rem; font-weight: 800; letter-spacing: .06em; text-transform: uppercase; }
.calendar-tools select, .calendar-tools button { min-height: 44px; padding: 0 .8rem; border: 1px solid var(--line); border-radius: 10px; color: var(--text); background: #09140f; font: inherit; font-size: .76rem; }
.calendar-tools button { cursor: pointer; font-weight: 800; }
.calendar-tools button.is-active { border-color: #f4c45e; color: #f4c45e; background: rgba(244,196,94,.08); }
.calendar-day { grid-column: 1 / -1; display: grid; gap: .45rem; }
.calendar-day-title { display: flex; align-items: center; justify-content: space-between; padding: .4rem .15rem; text-transform: capitalize; }
.calendar-day-title strong { font-size: .82rem; }
.calendar-day-title small { color: var(--muted); font-size: .64rem; }
.calendar-match { display: grid; grid-template-columns: auto minmax(0, 1fr) auto auto; align-items: center; gap: .65rem; padding: .7rem; border: 1px solid var(--line); border-radius: 11px; background: #0e1d16; }
.calendar-match > div > strong, .calendar-match > div > small { display: block; }
.calendar-match > div > strong { font-size: .78rem; }
.calendar-match > div > small { margin-top: .18rem; color: var(--muted); font-size: .63rem; }
.calendar-status { padding: .25rem .4rem; border-radius: 999px; color: var(--muted); background: rgba(255,255,255,.04); font-size: .55rem; font-weight: 900; }
.calendar-status.live { color: #ff8585; background: rgba(255,92,92,.09); }
.calendar-actions { display: flex; gap: .3rem; }
.calendar-actions button { min-height: 34px; padding: 0 .55rem; border: 1px solid var(--line); border-radius: 8px; color: #dce8e1; background: transparent; font: inherit; font-size: .62rem; font-weight: 800; cursor: pointer; }
.coupon-button b { background: #f4c45e; color: #07120d; }
.recommendations-nav-button { border-color: rgba(244,196,94,.42); color: #f4c45e; background: rgba(244,196,94,.08); }
.recommendations-board { scroll-margin-top: 92px; margin: 1rem 0; padding: 1rem; border: 1px solid rgba(244,196,94,.3); border-radius: 16px; background: linear-gradient(145deg, rgba(244,196,94,.07), rgba(112,246,210,.025) 55%, rgba(0,0,0,.08)); box-shadow: inset 0 1px rgba(255,255,255,.03); }
.recommendations-heading { display: flex; align-items: flex-start; justify-content: space-between; gap: 1rem; }
.recommendations-heading h2 { margin: .1rem 0 .28rem; color: #f3f8f5; font-size: clamp(1.15rem, 2.2vw, 1.65rem); line-height: 1.15; }
.recommendations-heading > div:first-child > p:last-child { max-width: 720px; margin: 0; color: var(--muted); font-size: .72rem; line-height: 1.5; }
.recommendations-state { display: flex; align-items: center; gap: .42rem; flex: 0 0 auto; padding: .45rem .58rem; border: 1px solid var(--line); border-radius: 999px; color: var(--muted); background: rgba(0,0,0,.16); font-size: .58rem; }
.recommendations-state span { width: 7px; height: 7px; border-radius: 50%; background: #87958d; }
.recommendations-state.is-live { color: var(--cyan); border-color: rgba(112,246,210,.26); }
.recommendations-state.is-live span { background: var(--cyan); box-shadow: 0 0 0 4px rgba(112,246,210,.09); }
.recommendations-summary { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: .45rem; margin: .85rem 0; }
.recommendations-summary > div { padding: .55rem .65rem; border: 1px solid var(--line); border-radius: 10px; background: rgba(0,0,0,.13); }
.recommendations-summary strong, .recommendations-summary small { display: block; }
.recommendations-summary strong { color: #f4c45e; font-size: .88rem; }
.recommendations-summary small { margin-top: .15rem; color: var(--muted); font-size: .58rem; }
.recommendations-table-wrap { overflow: hidden; border: 1px solid var(--line); border-radius: 12px; background: rgba(4,13,9,.28); }
.recommendations-table-head, .recommendation-row { display: grid; grid-template-columns: 64px minmax(190px,1.55fr) minmax(165px,1.15fr) 78px 112px 108px; align-items: center; gap: .55rem; }
.recommendations-table-head { min-height: 34px; padding: 0 .65rem; color: #8fa097; border-bottom: 1px solid var(--line); background: rgba(255,255,255,.025); font-size: .56rem; font-weight: 900; text-transform: uppercase; letter-spacing: .06em; }
.recommendation-row { min-height: 74px; padding: .55rem .65rem; border-bottom: 1px solid var(--line); }
.recommendation-row:last-child { border-bottom: 0; }
.recommendation-row.is-live { box-shadow: inset 3px 0 #ff6b6b; }
.recommendation-time strong, .recommendation-time small, .recommendation-pick small, .recommendation-pick strong, .recommendation-pick em, .recommendation-odd small, .recommendation-odd strong, .recommendation-coverage strong, .recommendation-coverage small { display: block; }
.recommendation-time strong { font-size: .72rem; }
.recommendation-time small { margin-top: .2rem; color: #ff8585; font-size: .56rem; font-weight: 900; }
.recommendation-match { padding: 0; border: 0; color: #edf5f0; background: transparent; text-align: left; font: inherit; cursor: pointer; }
.recommendation-match strong { display: block; font-size: .73rem; line-height: 1.35; }
.recommendation-match small { display: block; margin-top: .18rem; overflow: hidden; color: var(--muted); font-size: .56rem; text-overflow: ellipsis; white-space: nowrap; }
.recommendation-pick small { color: var(--muted); font-size: .54rem; }
.recommendation-pick strong { margin-top: .12rem; color: #f4c45e; font-size: .76rem; }
.recommendation-pick em { margin-top: .16rem; color: #9fb0a7; font-size: .54rem; font-style: normal; }
.recommendation-odd strong { margin-top: .14rem; color: var(--cyan); font-size: .9rem; }
.recommendation-odd small, .recommendation-coverage small { color: var(--muted); font-size: .54rem; }
.recommendation-coverage strong { color: #dfeae4; font-size: .68rem; }
.recommendation-coverage small { margin-top: .2rem; }
.recommendation-add { min-height: 36px; padding: 0 .55rem; border: 1px solid rgba(244,196,94,.4); border-radius: 8px; color: #f4c45e; background: rgba(244,196,94,.06); font: inherit; font-size: .6rem; font-weight: 900; cursor: pointer; }
.recommendation-add.is-added { color: #09130f; background: #f4c45e; }
.recommendations-empty { padding: 1rem; }
.recommendations-empty strong, .recommendations-empty small { display: block; }
.recommendations-empty strong { font-size: .76rem; }
.recommendations-empty small { margin-top: .3rem; color: var(--muted); font-size: .62rem; }
.recommendations-note { margin: .7rem 0 0; color: var(--muted); font-size: .61rem; line-height: 1.5; }
.recommendations-note strong { color: #f4c45e; }
.coupon-nav-button { border-color: rgba(244,196,94,.3); color: #f4c45e; background: rgba(244,196,94,.07); }
.coupon-nav-button b { min-width: 18px; padding: .08rem .3rem; border-radius: 999px; color: #07120d; background: #f4c45e; font-size: .62rem; }
.coupon-dock { position: fixed; right: 1rem; bottom: 1rem; z-index: 30; display: flex; align-items: center; gap: .45rem; min-height: 48px; padding: 0 .85rem; border: 1px solid rgba(244,196,94,.55); border-radius: 999px; color: #09130f; background: #f4c45e; box-shadow: 0 12px 32px rgba(0,0,0,.38); font: inherit; cursor: pointer; }
.coupon-dock strong { font-size: .76rem; }
.coupon-dock b { display: grid; place-items: center; min-width: 22px; height: 22px; padding: 0 .25rem; border-radius: 999px; color: #f4c45e; background: #09130f; font-size: .65rem; }
.add-to-coupon { width: 100%; min-height: 44px; margin-top: 1rem; border: 1px solid rgba(244,196,94,.45); border-radius: 10px; color: #f4c45e; background: rgba(244,196,94,.08); font: inherit; font-size: .75rem; font-weight: 900; cursor: pointer; }
.coupon-modal { width: min(100%, 680px); }
.coupon-health { display: grid; grid-template-columns: repeat(3, 1fr); gap: .45rem; margin: .8rem 0 .5rem; }
.coupon-health > div { padding: .62rem; border: 1px solid var(--line); border-radius: 10px; background: rgba(255,255,255,.02); }
.coupon-health strong, .coupon-health small { display: block; }
.coupon-health strong { font-size: .85rem; }
.coupon-health small { margin-top: .18rem; color: var(--muted); font-size: .58rem; }
.coupon-health .is-ready strong { color: var(--cyan); }
.coupon-health .is-warning strong { color: #f4c45e; }
.coupon-health .is-error strong { color: #ff8585; }
.coupon-recheck { width: 100%; min-height: 38px; border: 1px solid rgba(112,246,210,.25); border-radius: 9px; color: var(--cyan); background: rgba(112,246,210,.05); font: inherit; font-size: .68rem; font-weight: 800; cursor: pointer; }
.coupon-type { display: grid; grid-template-columns: 1fr 1fr; gap: .4rem; padding: .3rem; margin: .9rem 0; border: 1px solid var(--line); border-radius: 11px; background: rgba(0,0,0,.15); }
.coupon-type button { min-height: 38px; border: 0; border-radius: 8px; color: var(--muted); background: transparent; font: inherit; font-size: .72rem; font-weight: 800; }
.coupon-type button.is-active { color: #07120d; background: #f4c45e; }
.coupon-list { display: grid; gap: .45rem; max-height: 320px; overflow: auto; }
.coupon-empty { padding: 1rem; border: 1px dashed rgba(244,196,94,.3); border-radius: 12px; background: rgba(244,196,94,.035); }
.coupon-empty > strong { display: block; color: #f4c45e; font-size: .86rem; }
.coupon-empty ol { display: grid; gap: .5rem; margin: .8rem 0; padding: 0; list-style: none; }
.coupon-empty li { display: flex; align-items: center; gap: .55rem; color: #c7d5cd; font-size: .72rem; }
.coupon-empty li b { display: grid; place-items: center; width: 24px; height: 24px; border-radius: 50%; color: #09130f; background: #f4c45e; font-size: .65rem; }
.coupon-empty > button, .coupon-draft-actions button { min-height: 38px; padding: 0 .7rem; border: 1px solid rgba(244,196,94,.4); border-radius: 8px; color: #f4c45e; background: transparent; font: inherit; font-size: .68rem; font-weight: 800; cursor: pointer; }
.coupon-item { display: grid; grid-template-columns: minmax(0,1fr) auto; gap: .6rem; padding: .7rem; border: 1px solid var(--line); border-radius: 11px; background: #0e1d16; }
.coupon-item small, .coupon-item strong, .coupon-item span { display: block; }
.coupon-item small { color: var(--muted); font-size: .59rem; }
.coupon-item strong { margin-top: .2rem; font-size: .78rem; }
.coupon-item span { margin-top: .35rem; color: #bdccc3; font-size: .68rem; }
.coupon-item span b { color: #f4c45e; }
.coupon-item > button { width: 30px; height: 30px; border: 1px solid var(--line); border-radius: 8px; color: var(--muted); background: transparent; cursor: pointer; }
.coupon-item.is-live { border-color: rgba(255,92,92,.3); }
.coupon-item.is-unavailable { opacity: .68; border-color: rgba(255,92,92,.32); }
.coupon-item s { margin-left: .25rem; color: var(--muted); }
.coupon-item em { margin-left: .25rem; font-style: normal; font-weight: 900; }
.coupon-item em.up { color: var(--cyan); }
.coupon-item em.down { color: #ff8585; }
.coupon-calculator { display: grid; grid-template-columns: 1fr 1fr 1fr; gap: .5rem; margin-top: .8rem; }
.coupon-calculator > div, .coupon-calculator > label { padding: .68rem; border: 1px solid var(--line); border-radius: 10px; background: rgba(255,255,255,.02); }
.coupon-calculator small, .coupon-calculator label > span { display: block; margin-bottom: .3rem; color: var(--muted); font-size: .6rem; }
.coupon-calculator strong { color: #eef6f1; font-size: .96rem; }
.coupon-calculator label > div { display: flex; align-items: center; gap: .3rem; }
.coupon-calculator input { width: 100%; min-width: 0; border: 0; color: #eef6f1; background: transparent; font: inherit; font-size: .95rem; font-weight: 800; outline: 0; }
.coupon-calculator b { color: var(--muted); }
.coupon-transfer { width: 100%; min-height: 44px; margin-top: .7rem; border: 1px solid var(--line); border-radius: 10px; color: var(--muted); background: rgba(255,255,255,.025); font: inherit; font-size: .72rem; font-weight: 900; }
.coupon-draft-actions { display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: end; gap: .55rem; margin-top: .8rem; }
.coupon-draft-actions label span { display: block; margin-bottom: .3rem; color: var(--muted); font-size: .6rem; }
.coupon-draft-actions input { width: 100%; min-height: 38px; padding: 0 .65rem; border: 1px solid var(--line); border-radius: 8px; color: #eef6f1; background: rgba(255,255,255,.025); font: inherit; font-size: .7rem; outline: 0; }
.coupon-draft-actions input:focus { border-color: rgba(244,196,94,.55); }
.coupon-draft-status { display: block; margin-top: .38rem; color: var(--muted); font-size: .59rem; }
.coupon-archive-heading { display: flex; align-items: center; justify-content: space-between; gap: .7rem; margin-top: .9rem; }
.coupon-archive-heading strong { font-size: .75rem; }
.coupon-archive-heading small { color: var(--muted); font-size: .58rem; }
.coupon-draft-list { display: grid; gap: .42rem; max-height: 190px; margin-top: .5rem; overflow: auto; }
.coupon-draft-empty { margin: 0; padding: .7rem; border: 1px dashed var(--line); border-radius: 9px; color: var(--muted); font-size: .64rem; }
.coupon-draft-card { display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: center; gap: .6rem; padding: .62rem; border: 1px solid var(--line); border-radius: 10px; background: rgba(255,255,255,.02); }
.coupon-draft-card strong, .coupon-draft-card small { display: block; }
.coupon-draft-card strong { overflow: hidden; font-size: .7rem; text-overflow: ellipsis; white-space: nowrap; }
.coupon-draft-card small { margin-top: .25rem; color: var(--muted); font-size: .56rem; }
.coupon-draft-card > div:last-child { display: flex; gap: .35rem; }
.coupon-draft-card button { min-height: 32px; padding: 0 .5rem; border: 1px solid rgba(112,246,210,.25); border-radius: 7px; color: var(--cyan); background: transparent; font: inherit; font-size: .58rem; font-weight: 800; cursor: pointer; }
.coupon-draft-card button.is-danger { border-color: rgba(255,133,133,.25); color: #ff9999; }
.coupon-disclaimer { margin: .75rem 0 0; color: var(--muted); font-size: .64rem; line-height: 1.5; }
.coupon-disclaimer strong { color: #f4c45e; }
.team-actions { display: grid; gap: .35rem; }
.team-favorite { width: 100%; min-height: 32px; border: 1px solid var(--line); border-radius: 8px; color: var(--muted); background: transparent; font-size: 1rem; cursor: pointer; }
.team-favorite.is-active { border-color: #f4c45e; color: #f4c45e; background: rgba(244,196,94,.08); }
.competition-icon { display: grid; place-items: center; width: 38px; height: 38px; border-radius: 11px; background: rgba(98,167,255,.09); color: #88c5ff; font-size: 1rem; }
.competition-copy { display: grid; gap: .18rem; min-width: 0; }
.competition-copy strong { overflow: hidden; font-size: .76rem; text-overflow: ellipsis; white-space: nowrap; }
.competition-copy small { color: var(--muted); font-size: .59rem; line-height: 1.4; }
.competition-stats { display: flex; flex-wrap: wrap; gap: .25rem; margin-top: .22rem; }
.competition-stats span { padding: .18rem .35rem; border-radius: 999px; background: rgba(143,163,152,.09); color: #9caf9f; font-size: .52rem; font-weight: 800; }
.competition-stats span.is-live { background: rgba(255,107,107,.09); color: #ff9696; }
.competition-stats span.is-mapped { background: rgba(112,246,210,.08); color: var(--cyan); }
.competition-open { min-height: 38px; padding: 0 .58rem; border: 1px solid rgba(98,167,255,.25); border-radius: 9px; background: rgba(98,167,255,.075); color: #a8d2ff; font-size: .6rem; font-weight: 850; cursor: pointer; }
.competition-open:hover, .competition-open:focus-visible { border-color: #70b9ff; color: #d9ebff; outline: 0; }
.competition-note { margin: .8rem 0 0; color: var(--muted); font-size: .62rem; line-height: 1.5; }
.install-modal { width: min(100%, 520px); }
.install-guide { display: grid; gap: .65rem; margin: 1.1rem 0; }
.install-step { display: grid; grid-template-columns: 34px 1fr; align-items: center; gap: .75rem; min-height: 62px; padding: .72rem; border: 1px solid var(--line); border-radius: 12px; background: #0e1d16; }
.install-step b { display: grid; place-items: center; width: 34px; height: 34px; border-radius: 10px; background: var(--lime-soft); color: var(--lime); font-size: .82rem; }
.install-step div { display: grid; gap: .12rem; }
.install-step strong { font-size: .78rem; }
.install-step small { color: var(--muted); font-size: .68rem; line-height: 1.45; }
.install-primary { width: 100%; min-height: 44px; border: 0; border-radius: 11px; background: var(--lime); color: #17200b; font-size: .76rem; font-weight: 900; cursor: pointer; }
.install-note { margin: .8rem 0 0; color: var(--muted); font-size: .62rem; line-height: 1.5; text-align: center; }
.information-modal { width: min(100%, 760px); }
.sports-news-modal { width: min(100%, 850px); }
.sports-news-personal { display: grid; gap: .7rem; padding: .8rem; border: 1px solid rgba(112,246,210,.18); border-radius: 12px; background: rgba(112,246,210,.035); }
.sports-news-personal > div:first-child { display: flex; align-items: center; justify-content: space-between; gap: .7rem; }
.sports-news-personal strong { color: #e7f2eb; font-size: .78rem; }
.sports-news-personal small { color: var(--muted); font-size: .64rem; }
.sports-news-filters { display: flex; gap: .38rem; overflow-x: auto; scrollbar-width: none; }
.sports-news-filters button { flex: 0 0 auto; min-height: 34px; padding: 0 .65rem; border: 1px solid var(--line); border-radius: 999px; background: #09150f; color: var(--muted); font-size: .62rem; font-weight: 800; cursor: pointer; }
.sports-news-filters button.is-active { border-color: rgba(184,255,61,.38); background: var(--lime-soft); color: var(--lime); }
.sports-news-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: .65rem; margin: 1rem 0; }
.sports-news-grid article { position: relative; display: grid; align-content: start; gap: .42rem; min-height: 172px; padding: 1rem; border: 1px solid var(--line); border-radius: 14px; background: linear-gradient(145deg, #0e1d16, #09150f); transition: .18s ease; }
.sports-news-grid article:hover { transform: translateY(-2px); border-color: rgba(112,246,210,.45); box-shadow: 0 12px 30px rgba(0,0,0,.22); }
.sports-news-grid article[hidden] { display: none; }
.sports-news-grid article > button { position: absolute; top: .7rem; right: .7rem; width: 34px; height: 34px; border: 1px solid var(--line); border-radius: 9px; background: #09150f; color: var(--muted); font-size: 1rem; cursor: pointer; }
.sports-news-grid article > button.is-active { border-color: rgba(184,255,61,.35); color: var(--lime); }
.sports-news-grid span { color: var(--cyan); font-size: .58rem; font-weight: 900; letter-spacing: .08em; }
.sports-news-grid strong { color: #edf6f0; font-size: 1rem; }
.sports-news-grid small { color: var(--muted); font-size: .7rem; line-height: 1.5; }
.sports-news-grid a { align-self: end; margin-top: auto; color: var(--lime); font-size: .66rem; font-weight: 850; text-decoration: none; }
.sports-news-grid a:hover, .sports-news-grid a:focus-visible { color: #e0ffab; outline: 0; }
.sports-news-empty { margin: -.35rem 0 1rem; padding: 1.2rem; border: 1px dashed var(--line); border-radius: 12px; color: var(--muted); font-size: .7rem; line-height: 1.5; text-align: center; }
.sports-news-note { margin: 0; padding: .8rem; border-left: 3px solid var(--cyan); border-radius: 0 10px 10px 0; background: rgba(112,246,210,.045); color: var(--muted); font-size: .68rem; line-height: 1.55; }
.sports-news-note strong { color: #dceae1; }
.information-tabs { display: grid; grid-template-columns: repeat(4, 1fr); gap: .42rem; margin-bottom: 1rem; }
.information-tabs button { min-height: 42px; padding: .42rem .5rem; border: 1px solid var(--line); border-radius: 9px; background: #0e1d16; color: var(--muted); font-size: .67rem; font-weight: 800; cursor: pointer; }
.information-tabs button:hover, .information-tabs button:focus-visible { border-color: rgba(184,255,61,.35); color: #e5f0e9; outline: 0; }
.information-tabs button.is-active { border-color: rgba(184,255,61,.32); background: var(--lime-soft); color: var(--lime); }
.information-copy { min-height: 330px; padding: 1.15rem; border: 1px solid var(--line); border-radius: 14px; background: linear-gradient(145deg, #0e1d16, #0a1610); }
.information-copy[hidden] { display: none; }
.information-kicker { display: inline-flex; margin-bottom: .55rem; color: var(--cyan); font-size: .68rem; font-weight: 850; letter-spacing: .06em; text-transform: uppercase; }
.information-copy h3 { margin: 0 0 .8rem; color: #edf6f0; font-size: 1.08rem; line-height: 1.3; }
.information-copy p { margin: 0 0 .9rem; color: #bac8c0; font-size: .88rem; line-height: 1.7; }
.information-copy ul { display: grid; gap: .68rem; margin: 0; padding-left: 1.2rem; color: #bac8c0; font-size: .84rem; line-height: 1.6; }
.information-copy li::marker { color: var(--lime); }
.information-copy strong { color: #e4eee8; }
.information-copy a { color: var(--cyan); }
.information-callout { display: grid; gap: .3rem; margin: 1rem 0; padding: .85rem; border-left: 3px solid var(--amber); border-radius: 0 10px 10px 0; background: rgba(255,207,90,.045); }
.information-callout strong { font-size: .82rem; line-height: 1.5; }
.information-callout span { color: #ad9f7b; font-size: .76rem; line-height: 1.55; }
.information-links { display: grid; grid-template-columns: 1fr 1fr; gap: .55rem; }
.information-links a { display: flex; align-items: center; justify-content: space-between; gap: .6rem; min-height: 46px; padding: .65rem .75rem; border: 1px solid rgba(112,246,210,.2); border-radius: 10px; background: rgba(112,246,210,.045); color: var(--cyan); font-size: .72rem; font-weight: 800; line-height: 1.35; text-decoration: none; }
.information-links a:hover, .information-links a:focus-visible { border-color: rgba(112,246,210,.5); outline: 0; }
.information-owner { margin: .8rem 0 0; color: #7f9287; font-size: .64rem; line-height: 1.5; text-align: center; }
.alerts-empty { padding: 2.4rem 1rem; border: 1px dashed var(--line-strong); border-radius: 12px; color: var(--muted); text-align: center; font-size: .76rem; line-height: 1.6; }
.modal-note { display: flex; gap: .6rem; margin-top: 1rem; padding: .8rem; border-radius: 10px; background: rgba(255,255,255,.025); }
.modal-note span { color: var(--lime); font-weight: 900; }
.modal-note p { margin: 0; color: var(--muted); font-size: .68rem; line-height: 1.5; }
.toast { position: fixed; right: 1.2rem; bottom: 1.2rem; z-index: 70; max-width: min(360px, calc(100vw - 2rem)); padding: .85rem 1rem; border: 1px solid rgba(184,255,61,.28); border-radius: 11px; background: #13231a; color: #e7f2eb; box-shadow: 0 16px 50px rgba(0,0,0,.45); font-size: .76rem; font-weight: 700; }
.toast[hidden] { display: none; }

@media (max-width: 1180px) {
  .app-shell { grid-template-columns: 210px minmax(0, 1fr); }
  .insights-panel { grid-column: 1 / -1; grid-template-columns: repeat(4, minmax(0, 1fr)); border-top: 1px solid var(--line); border-left: 0; }
  .responsible-card { grid-column: 1 / -1; }
}

@media (max-width: 860px) {
  .topbar { grid-template-columns: minmax(0, 1fr) auto; min-height: 64px; gap: .45rem; padding-left: .8rem; padding-right: .8rem; }
  .brand-logo { width: min(168px, 100%); max-height: 46px; }
  .top-actions { gap: .3rem; }
  .wallet-pill { min-width: 34px; min-height: 34px; padding: 0 .5rem; justify-content: center; }
  .wallet-pill span, .wallet-pill small { display: none; }
  .age-label, .sync-label { min-height: 28px; padding: 0 .5rem; font-size: .6rem; }
  .primary-nav { grid-column: 1 / -1; order: 3; justify-content: flex-start; overflow-x: auto; margin: 0 -1.35rem; padding: 0 1.35rem .55rem; scrollbar-width: none; }
  .nav-button { white-space: nowrap; }
  .nav-button.is-active::after { bottom: -5px; }
  .data-label { display: none; }
  .sync-label { min-height: 27px; padding: 0 .5rem; font-size: .58rem; }
  .app-shell { display: block; }
  .sports-panel { padding: .7rem 1rem; border-right: 0; border-bottom: 1px solid var(--line); }
  .sports-panel .panel-heading, .sports-panel .panel-separator, .sports-panel .mini-title, .sports-panel .quick-stats, .sports-panel .info-card { display: none; }
  .sports-list { display: flex; gap: .5rem; overflow-x: auto; scrollbar-width: none; }
  .sport-item { grid-template-columns: auto auto; min-height: 38px; padding: 0 .72rem; white-space: nowrap; }
  .sport-item b { display: none; }
  .match-board { padding: 1.1rem 1rem 1.5rem; }
  .board-intro { align-items: flex-start; }
  .update-status { display: none; }
  .insights-panel { grid-template-columns: 1fr 1fr; padding: 1rem; border-left: 0; }
  .accent-card { grid-column: 1 / -1; }
  .responsible-card { grid-column: 1 / -1; }
  .site-footer { display: grid; }
  .footer-information { justify-content: flex-start; max-width: none; }
  .company-data { justify-items: start; text-align: left; }
  .scanner-result { grid-template-columns: 48px minmax(150px, 1fr) 100px 100px; }
  .scanner-actions { grid-column: 2 / -1; }
  .sports-news-grid { grid-template-columns: repeat(2, 1fr); }
  .sports-information-band { grid-template-columns: 1fr; }
  .recommendations-table-wrap { overflow-x: auto; }
  .recommendations-table-head, .recommendation-row { min-width: 760px; }
}

@media (max-width: 640px) {
  .topbar { padding: .65rem .7rem 0; }
  .brand-logo { width: min(152px, 100%); max-height: 42px; }
  .sync-label { display: none; }
  .age-label { min-height: 27px; }
  .primary-nav { margin: 0 -.7rem; padding-left: .7rem; padding-right: .7rem; }
  .nav-button { min-height: 38px; padding: 0 .72rem; font-size: .8rem; }
  .board-intro { margin-bottom: 1rem; }
  .sport-showcase { grid-template-columns: 1.45fr 1fr; grid-template-rows: 132px 108px auto; gap: .5rem; }
  .sport-visual-football { grid-row: span 2; }
  .sport-visual-card:nth-child(3) { grid-column: 2; }
  .sport-visual-content { padding: .62rem; }
  .sport-visual-content strong { font-size: .9rem; }
  .sport-visual-content small { font-size: .48rem; }
  .sport-visual-content em { font-size: .58rem; }
  .section-heading { align-items: flex-start; flex-direction: column; }
  .sport-discovery-grid { grid-template-columns: 1fr 1fr; }
  .discovery-athletics { grid-column: 1 / -1; min-height: 154px; }
  .discovery-card { min-height: 120px; }
  .major-event-card { grid-template-columns: 58px 1fr; }
  .major-event-actions { grid-column: 1 / -1; min-width: 0; }
  .major-events-origin { align-items: flex-start; flex-direction: column; }
  .sports-news-grid { grid-template-columns: 1fr; }
  .sports-news-grid article { min-height: 145px; }
  .sport-discovery-grid-secondary { grid-template-columns: 1fr 1fr; }
  .sport-discovery-grid-secondary .discovery-handball { grid-column: 1 / -1; min-height: 180px; }
  h1 { font-size: 1.62rem; }
  .control-bar { display: grid; }
  .analysis-toolbar { grid-template-columns: 1fr 1fr; }
  .recommendations-board { margin: .8rem 0; padding: .75rem; }
  .recommendations-heading { flex-direction: column; }
  .recommendations-state { align-self: flex-start; }
  .recommendations-summary { grid-template-columns: repeat(3, 1fr); }
  .recommendations-table-head { display: none; }
  .recommendations-list { display: grid; gap: .55rem; padding: .55rem; }
  .recommendation-row { min-width: 0; min-height: 0; grid-template-columns: 48px minmax(0,1fr) 72px; gap: .55rem; padding: .65rem; border: 1px solid var(--line); border-radius: 10px; }
  .recommendation-match { min-width: 0; }
  .recommendation-pick { grid-column: 2 / -1; padding-top: .45rem; border-top: 1px solid var(--line); }
  .recommendation-odd { grid-column: 1; }
  .recommendation-coverage { grid-column: 2; }
  .recommendation-add { grid-column: 3; }
  .coverage-status { border-left: 0; }
  .date-tabs { display: grid; grid-template-columns: repeat(3, 1fr); }
  .search-box { width: 100%; }
  .market-key { grid-template-columns: minmax(148px, 1fr) repeat(3, 56px) 32px; gap: .3rem; padding-left: .45rem; padding-right: .45rem; }
  .match-row { grid-template-columns: minmax(148px, 1fr) repeat(3, 56px) 32px; gap: .3rem; min-height: 90px; padding: .55rem .4rem; }
  .fixture { grid-template-columns: 42px 1fr; gap: .35rem; }
  .kickoff { font-size: .68rem; }
  .team span { font-size: .72rem; }
  .odds-button { min-height: 44px; padding: .3rem .18rem; }
  .odds-button small { font-size: .5rem; }
  .odds-button strong { font-size: .76rem; }
  .odds-button.best::after { display: none; }
  .favorite-button { width: 30px; }
  .league-head { padding: 0 .65rem; }
  .league-head > span { display: none; }
  .result-cell { justify-content: stretch; }
  .result-cell span { width: 100%; text-align: center; }
  .insights-panel { grid-template-columns: 1fr; }
  .accent-card, .responsible-card { grid-column: auto; }
  .match-tabs { grid-template-columns: repeat(2, 1fr); }
  .match-kpis { grid-template-columns: 1fr; }
  .match-tabs { display: flex; overflow-x: auto; }
  .match-tabs button { flex: 0 0 auto; padding: 0 .75rem; }
  .timeline-summary { grid-template-columns: 1fr; }
  .timeline-event { grid-template-columns: 58px 1fr; }
  .timeline-event > b { grid-column: 2; }
  .intel-summary, .intel-grid { grid-template-columns: 1fr 1fr; }
  .intel-actions { grid-template-columns: 1fr; }
  .market-card { grid-template-columns: 1fr 62px 62px; }
  .alert-form-row { grid-template-columns: 1fr; }
  .notification-control { align-items: stretch; flex-direction: column; }
  .notification-control button { width: 100%; }
  .delivery-heading { flex-direction: column; }
  .delivery-providers { justify-content: flex-start; }
  .delivery-form fieldset { grid-template-columns: 1fr; }
  .delivery-consent, .delivery-save { grid-column: auto; }
  .alerts-section-title { align-items: flex-start; flex-direction: column; gap: .2rem; }
  .operations-status-grid { grid-template-columns: 1fr; }
  .operations-metrics { grid-template-columns: repeat(2, 1fr); }
  .operations-queue { align-items: stretch; flex-direction: column; }
  .operations-queue button { width: 100%; }
  .scanner-controls { grid-template-columns: 1fr; }
  .live-command-toolbar { grid-template-columns: 1fr; }
  .live-command-summary { grid-template-columns: 1fr 1fr; }
  .live-command-row { grid-template-columns: 50px minmax(0,1fr); }
  .live-command-market, .live-command-intensity, .live-command-actions { grid-column: 1 / -1; }
  .live-command-actions { grid-template-columns: repeat(3,1fr); }
  .sports-live-sources { grid-template-columns: 1fr; }
  .sports-live-sources a { min-height: 94px; }
  .dashboard-summary { grid-template-columns: 1fr 1fr; }
  .dashboard-grid { grid-template-columns: 1fr; }
  .compare-lab-summary { grid-template-columns: 1fr 1fr; }
  .compare-lab-grid { grid-template-columns: 1fr; }
  .compare-lab-actions { align-items: stretch; flex-direction: column; }
  .heatmap-toolbar { grid-template-columns: 1fr 1fr; }
  .heatmap-summary { grid-template-columns: 1fr 1fr; }
  .heatmap-row { grid-template-columns: 1fr; }
  .heatmap-open { width: 100%; }
  .signal-toolbar { grid-template-columns: 1fr 1fr; }
  .signal-toolbar button { grid-column: 1 / -1; }
  .signal-summary { grid-template-columns: 1fr 1fr; }
  .signal-card { grid-template-columns: 50px 1fr; }
  .signal-actions { grid-column: 1 / -1; grid-template-columns: 1fr 1fr; }
  .provider-summary { grid-template-columns: 1fr 1fr; }
  .provider-table-head { display: none; }
  .provider-row { grid-template-columns: 1.5fr 1fr; }
  .provider-row > span { text-align: right; }
  .provider-row > span::before { color: var(--muted); font-weight: 500; }
  .provider-row > span:nth-child(3)::before { content: "Κάλυψη · "; }.provider-row > span:nth-child(4)::before { content: "Best · "; }.provider-row > span:nth-child(5)::before { content: "Φρεσκάδα · "; }
  .consensus-toolbar { grid-template-columns: 1fr 1fr; }.consensus-toolbar button{grid-column:1/-1}
  .consensus-summary { grid-template-columns: 1fr 1fr; }
  .consensus-card { grid-template-columns: 1fr; }
  .consensus-card > button { width: 100%; }
  .integrity-toolbar { grid-template-columns: 1fr 1fr; }.integrity-toolbar button{grid-column:1/-1}
  .integrity-summary { grid-template-columns: 1fr 1fr; }
  .integrity-card { grid-template-columns: 50px 1fr; }
  .integrity-flags,.integrity-card>button { grid-column: 1 / -1; }
  .integrity-card>button { width: 100%; }
  .competition-summary { grid-template-columns: 1fr 1fr; }
  .team-tools { grid-template-columns: 1fr; }
  .team-alerts-list { grid-template-columns: 1fr; }
  .calendar-tools { grid-template-columns: 1fr; }
  .calendar-match { grid-template-columns: auto minmax(0, 1fr) auto; }
  .calendar-actions { grid-column: 1 / -1; }
  .calendar-actions button { flex: 1; }
  .coupon-calculator { grid-template-columns: 1fr 1fr; }
  .coupon-health { grid-template-columns: 1fr 1fr 1fr; }
  .coupon-calculator label { grid-column: 1 / -1; }
  .coupon-dock { right: .75rem; bottom: calc(.75rem + env(safe-area-inset-bottom)); }
  .coupon-draft-actions { grid-template-columns: 1fr; align-items: stretch; }
  .coupon-draft-card { grid-template-columns: 1fr; }
  .coupon-draft-card > div:last-child button { flex: 1; }
  .competition-list { grid-template-columns: 1fr; }
  .competition-item { grid-template-columns: auto minmax(0, 1fr); }
  .team-actions { grid-column: 1 / -1; grid-template-columns: 44px 1fr; }
  .competition-item > .competition-open { grid-column: 1 / -1; }
  .competition-open { width: 100%; }
  .scanner-summary { grid-template-columns: 1fr 1fr; }
  .scanner-result { grid-template-columns: 42px minmax(0, 1fr); gap: .5rem; }
  .scanner-market, .scanner-edge { padding: .5rem; border-radius: 8px; background: rgba(255,255,255,.025); }
  .scanner-market { grid-column: 1; }
  .scanner-edge { grid-column: 2; }
  .scanner-actions { grid-column: 1 / -1; grid-template-columns: 1fr 1fr; }
  .scanner-actions button { min-height: 40px; }
  .trip-flow { grid-template-columns: 1fr 1fr; }
  .provider-metrics { grid-template-columns: 1fr 1fr 1fr; }
  .information-tabs { grid-template-columns: 1fr 1fr; }
  .information-copy { min-height: 0; padding: .9rem; }
  .information-copy h3 { font-size: 1rem; }
  .information-copy p, .information-copy ul { font-size: .8rem; }
  .information-links { grid-template-columns: 1fr; }
  .connection-banner { align-items: flex-start; flex-wrap: wrap; justify-content: flex-start; }
  .connection-banner small { flex-basis: calc(100% - 16px); margin-left: 16px; }
}

@media (max-width: 380px) {
  .age-label { display: none; }
  .top-actions { gap: .4rem; }
  .brand-logo { width: 154px; }
}

@media (display-mode: standalone) {
  body { padding-bottom: env(safe-area-inset-bottom); }
  .topbar { padding-top: env(safe-area-inset-top); }
}

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { scroll-behavior: auto !important; transition: none !important; }
}
