:root{
  --bg:#050b14;--panel:rgba(8,22,38,.76);--line:rgba(88,173,255,.16);
  --text:#eff7ff;--muted:#8198af;--blue:#23a6ff;--cyan:#64ddff;--good:#57e7a3;
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{
  margin:0;color:var(--text);font-family:Inter,ui-sans-serif,system-ui,-apple-system,sans-serif;
  background:
    radial-gradient(circle at 20% -10%,rgba(20,118,207,.22),transparent 33%),
    radial-gradient(circle at 100% 20%,rgba(0,206,255,.10),transparent 28%),var(--bg);
  min-height:100vh;overflow-x:hidden
}
body:before{content:"";position:fixed;inset:0;pointer-events:none;opacity:.18;background-image:
 linear-gradient(rgba(255,255,255,.018) 1px,transparent 1px),
 linear-gradient(90deg,rgba(255,255,255,.018) 1px,transparent 1px);background-size:34px 34px}
.orb{position:fixed;border-radius:999px;filter:blur(80px);opacity:.13;pointer-events:none}.orb-a{width:340px;height:340px;background:#008cff;left:-130px;top:30%}.orb-b{width:260px;height:260px;background:#2de2ff;right:-100px;top:55%}
.app-shell{width:min(1240px,92vw);margin:auto;padding:28px 0 80px;position:relative}
.topbar{display:flex;justify-content:space-between;align-items:center;padding:8px 0 24px}.brand-wrap{display:flex;align-items:center;gap:14px}
.brand-mark{height:44px;width:44px;display:grid;place-items:center;border-radius:14px;background:linear-gradient(135deg,#0c77dd,#25cbff);font-weight:900;box-shadow:0 0 35px rgba(35,166,255,.28)}
.eyebrow,.kicker,.mini-label{font-size:11px;letter-spacing:.19em;color:#55baff;font-weight:800}.brand-wrap h1{font-size:18px;margin:3px 0 0}.brand-wrap h1 span{color:#72ddff}
.engine-pill{display:flex;align-items:center;gap:9px;border:1px solid var(--line);background:rgba(6,20,34,.75);padding:9px 13px;border-radius:999px;font-size:12px;color:#b5c9db}.engine-pill i{height:8px;width:8px;background:var(--good);border-radius:50%;box-shadow:0 0 12px var(--good)}
.hero{display:grid;grid-template-columns:1.6fr .8fr;gap:28px;align-items:end;padding:54px 0 38px}.hero h2{font-size:clamp(34px,5vw,64px);line-height:1.02;letter-spacing:-.045em;margin:10px 0 18px;max-width:820px}.hero h2 span{color:#7f9db7;font-weight:600}.hero p{color:var(--muted);max-width:700px;line-height:1.65}
.hero-score{border-left:1px solid var(--line);padding:12px 0 12px 24px}.hero-score strong,.hero-score span{display:block}.hero-score strong{margin:9px 0 5px}.hero-score span{font-size:13px;color:var(--muted)}
.glass{background:linear-gradient(180deg,rgba(10,27,45,.84),rgba(7,18,31,.72));border:1px solid var(--line);box-shadow:0 24px 70px rgba(0,0,0,.23);backdrop-filter:blur(18px)}
.control-panel{border-radius:20px;padding:13px;display:grid;grid-template-columns:auto minmax(220px,1fr) auto auto;gap:11px;align-items:center}
.date-tabs{display:flex;gap:5px;background:#06111d;border-radius:13px;padding:4px}.tab{border:0;background:transparent;color:#6e869d;padding:11px 13px;border-radius:10px;font-size:11px;font-weight:800}.tab.active{color:#eaf6ff;background:#102b44}.tab:disabled{opacity:.42}
.search-box{height:46px;border:1px solid #163b59;border-radius:13px;display:flex;align-items:center;padding:0 13px;gap:8px;background:#071521}.search-box input,.target-box input{background:transparent;border:0;outline:0;color:#eef8ff;width:100%;font-size:14px}
.target-box{display:flex;align-items:center;gap:10px}.target-box label{font-size:9px;color:#6e8ca5;letter-spacing:.14em;font-weight:800}.target-box>div{display:flex;border:1px solid #163b59;border-radius:13px;height:46px;align-items:center;padding:0 9px;background:#071521}.target-box input{width:54px;text-align:center}.target-box b{color:#43637d}
.analyze-btn{height:46px;border:0;border-radius:13px;padding:0 20px;background:linear-gradient(135deg,#087fe2,#20bfff);color:white;font-weight:900;letter-spacing:.03em;cursor:pointer;box-shadow:0 10px 30px rgba(21,153,235,.24)}
.content-grid{display:grid;grid-template-columns:1fr 315px;gap:24px;margin-top:34px}.section-head{display:flex;justify-content:space-between;align-items:end;margin:0 0 13px}.section-head h3{font-size:24px;margin:5px 0 0}.selected-count{font-size:12px;color:#89a4bc}
.league-card{border:1px solid var(--line);background:rgba(7,19,31,.66);border-radius:18px;margin:12px 0;overflow:hidden}.league-title{display:flex;justify-content:space-between;align-items:center;padding:17px 18px;border-bottom:1px solid var(--line)}.league-title b{font-size:14px}.league-title small{color:#6d899f}
.match{display:grid;grid-template-columns:64px 36px 1fr auto;gap:12px;align-items:center;padding:16px 18px;border-bottom:1px solid rgba(88,173,255,.08);cursor:pointer;transition:.18s}.match:last-child{border-bottom:0}.match:hover{background:rgba(35,166,255,.045)}.time{color:#5ccaff;font-weight:900}.teams b{font-size:14px}.teams small{display:block;color:#68849b;margin-top:3px}.check{appearance:none;width:20px;height:20px;border:1px solid #285b80;border-radius:6px;background:#071623;position:relative}.check:checked{background:#129cf2;border-color:#129cf2}.check:checked:after{content:"✓";position:absolute;inset:-1px 0 0;display:grid;place-items:center;font-size:13px;font-weight:900}
.side{border-radius:20px;padding:18px;height:max-content;position:sticky;top:20px}.side-head{display:flex;align-items:center;gap:9px;padding-bottom:14px;border-bottom:1px solid var(--line)}.pulse{width:8px;height:8px;border-radius:50%;background:#37d6ff;box-shadow:0 0 18px #37d6ff}
.pipeline>div{display:grid;grid-template-columns:30px 1fr 20px;align-items:center;gap:9px;padding:15px 0;border-bottom:1px solid rgba(88,173,255,.08)}.pipeline>div>span{font-size:10px;color:#4aaef0}.pipeline p{margin:0}.pipeline b{font-size:12px}.pipeline small{display:block;color:#708ba1;margin-top:3px}.pipeline em{font-style:normal;color:#31506a}
.rule-card{margin-top:16px;border:1px solid rgba(87,231,163,.18);background:rgba(31,113,85,.08);border-radius:15px;padding:14px}.rule-card strong{display:block;color:#65eba9;font-size:22px;margin:6px 0}.rule-card p{font-size:12px;color:#7899a9;line-height:1.5;margin:0}
.result{margin-top:24px;border-radius:20px;padding:22px}.result h3{font-size:26px;margin:8px 0}.result .big{font-size:40px;font-weight:900;color:#64ddff}.result p{color:#8ba5bb}.hidden{display:none}
.loading{opacity:.65;pointer-events:none}
@media(max-width:950px){.control-panel{grid-template-columns:1fr 1fr}.content-grid{grid-template-columns:1fr}.side{position:relative;top:0}.hero{grid-template-columns:1fr}.hero-score{border-left:0;padding-left:0}.target-box{justify-content:flex-start}}
@media(max-width:620px){.app-shell{width:min(94vw,1240px)}.topbar{align-items:flex-start}.engine-pill{font-size:10px}.hero{padding-top:28px}.control-panel{grid-template-columns:1fr}.match{grid-template-columns:52px 30px 1fr}.match>span:last-child{display:none}.target-box{justify-content:space-between}.hero h2{font-size:38px}}

/* BUSINESS BET ANALYSIS UX */

body.loading{
  opacity:1;
  pointer-events:auto;
}

body.loading #analyzeBtn{
  opacity:.55;
  pointer-events:none;
}

.analysis-live{
  padding:4px;
}

.analysis-clock{
  font-size:34px;
  font-weight:900;
  color:#64ddff;
  margin:14px 0;
  font-variant-numeric:tabular-nums;
}

.analysis-progress{
  height:10px;
  overflow:hidden;
  border-radius:999px;
  background:rgba(255,255,255,.08);
  margin:18px 0;
}

.analysis-progress-bar{
  height:100%;
  width:42%;
  border-radius:999px;
  background:linear-gradient(
    90deg,
    #087fe2,
    #64ddff,
    #087fe2
  );
  animation:bb-analysis 1.5s linear infinite;
}

@keyframes bb-analysis{
  from{transform:translateX(-120%)}
  to{transform:translateX(300%)}
}

.analysis-status{
  display:flex;
  align-items:center;
  gap:12px;
  padding:14px 16px;
  border-radius:14px;
  border:1px solid rgba(100,221,255,.18);
  background:rgba(8,127,226,.08);
}

.analysis-spinner{
  width:18px;
  height:18px;
  border:2px solid rgba(100,221,255,.22);
  border-top-color:#64ddff;
  border-radius:50%;
  animation:bb-spin .8s linear infinite;
}

@keyframes bb-spin{
  to{transform:rotate(360deg)}
}

.analysis-steps{
  display:grid;
  grid-template-columns:repeat(5,1fr);
  gap:8px;
  margin-top:16px;
}

.analysis-steps span{
  text-align:center;
  padding:9px 6px;
  border-radius:10px;
  border:1px solid rgba(255,255,255,.07);
  color:#8ba5bb;
  font-size:11px;
}

