@import url('https://fonts.googleapis.com/css2?family=Bebas+Neue&family=JetBrains+Mono:wght@400;600&family=Syne:wght@400;600;700&display=swap');

/* ── FULLSCREEN OVERRIDE ── */
body:has(#bukszpan-app) { background: #080b10 !important; }
body:has(#bukszpan-app) .entry-content,
body:has(#bukszpan-app) .post-content,
body:has(#bukszpan-app) .page-content,
body:has(#bukszpan-app) .wp-block-post-content,
body:has(#bukszpan-app) .entry-wrap,
body:has(#bukszpan-app) .content-wrap,
body:has(#bukszpan-app) article {
  max-width:100%!important;width:100%!important;padding:0!important;margin:0!important;
}
body:has(#bukszpan-app) .entry-title,
body:has(#bukszpan-app) .page-title,
body:has(#bukszpan-app) h1.entry-title { display:none!important; }
body:has(#bukszpan-app) #page,
body:has(#bukszpan-app) #content,
body:has(#bukszpan-app) #main,
body:has(#bukszpan-app) .site-main,
body:has(#bukszpan-app) .content-area {
  padding:0!important;margin:0!important;max-width:100%!important;
}

/* ── ROOT ── */
#bukszpan-app {
  --bg:#080b10;--bg2:#0e1420;--bg3:#141c2e;--card:#111827;
  --border:rgba(255,255,255,.07);--border2:rgba(255,255,255,.13);
  --green:#00e676;--green2:#00c853;--gdim:rgba(0,230,118,.12);--gglow:rgba(0,230,118,.05);
  --yellow:#ffd600;--red:#ff4444;--blue:#4c9fff;
  --text:#e8edf5;--text2:#8a9ab5;--text3:#4a5a78;
  --fh:'Bebas Neue',sans-serif;--fb:'Syne',sans-serif;--fm:'JetBrains Mono',monospace;
  background:var(--bg);color:var(--text);font-family:var(--fb);
  border-radius:12px;overflow:hidden;max-width:1200px;margin:0 auto;
}

/* ── TOP BAR ── */
.bk-topbar{display:flex;align-items:center;justify-content:space-between;padding:0 24px;height:54px;background:rgba(8,11,16,.98);border-bottom:1px solid var(--border2);}
.bk-logo{display:flex;align-items:center;gap:8px;font-family:var(--fh);font-size:24px;letter-spacing:3px;color:var(--green);}
.bk-dot{width:7px;height:7px;border-radius:50%;background:var(--green);animation:bk-pulse 2s infinite;}
.bk-date{font-family:var(--fm);font-size:11px;color:var(--text3);}
@keyframes bk-pulse{0%,100%{opacity:1;transform:scale(1)}50%{opacity:.4;transform:scale(.8)}}

/* ── BANNER ── */
.bk-banner{background:rgba(0,230,118,.05);border-bottom:1px solid rgba(0,230,118,.18);padding:7px 24px;font-family:var(--fm);font-size:11px;color:var(--text2);}

/* ── CALENDAR STRIP ── */
.bk-calendar{display:flex;align-items:center;gap:4px;padding:10px 16px;background:var(--bg2);border-bottom:1px solid var(--border2);overflow-x:auto;scrollbar-width:none;}
.bk-calendar::-webkit-scrollbar{display:none;}
.bk-cal-arrow{background:transparent;border:1px solid var(--border2);color:var(--text3);width:32px;height:52px;border-radius:6px;font-size:20px;cursor:pointer;transition:all .15s;flex-shrink:0;display:flex;align-items:center;justify-content:center;}
.bk-cal-arrow:hover{background:var(--bg3);color:var(--text);border-color:var(--border2);}
.bk-cal-days{display:flex;gap:3px;flex:1;justify-content:center;}
.bk-cal-day{display:flex;flex-direction:column;align-items:center;padding:6px 8px;min-width:48px;border:1px solid transparent;border-radius:8px;background:transparent;color:var(--text3);font-family:var(--fb);cursor:pointer;transition:all .15s;gap:1px;}
.bk-cal-day:hover{background:var(--bg3);color:var(--text);border-color:var(--border);}
.bk-cal-day.today .bk-cal-dnum{color:var(--green);font-weight:700;}
.bk-cal-day.today .bk-cal-dname{color:var(--green);}
.bk-cal-day.active{background:var(--gdim);border-color:rgba(0,230,118,.4);color:var(--green);}
.bk-cal-dname{font-family:var(--fm);font-size:9px;letter-spacing:1px;text-transform:uppercase;}
.bk-cal-dnum{font-family:var(--fh);font-size:20px;line-height:1;}
.bk-cal-dmon{font-family:var(--fm);font-size:9px;color:var(--text3);}

/* ── TABS ── */
.bk-tabs{display:flex;gap:2px;padding:8px 24px;overflow-x:auto;background:var(--bg2);border-bottom:1px solid var(--border);scrollbar-width:none;}
.bk-tabs::-webkit-scrollbar{display:none;}
.bk-tab{display:flex;align-items:center;gap:6px;padding:7px 14px;border:1px solid transparent;background:transparent;color:var(--text2);font-family:var(--fb);font-size:13px;font-weight:600;cursor:pointer;border-radius:6px;white-space:nowrap;transition:all .2s;}
.bk-tab:hover{background:var(--bg3);color:var(--text);}
.bk-tab.active{background:var(--gdim);color:var(--green);border-color:rgba(0,230,118,.3);}
.bk-tab-cnt{font-family:var(--fm);font-size:10px;background:rgba(255,255,255,.08);padding:2px 5px;border-radius:8px;}

/* ── MAIN LAYOUT ── */
.bk-main{display:grid;grid-template-columns:360px 1fr;min-height:500px;}

/* ── LIST PANEL ── */
.bk-list-panel{border-right:1px solid var(--border);overflow-y:auto;max-height:68vh;scrollbar-width:thin;scrollbar-color:var(--bg3) transparent;}
.bk-panel-head{padding:12px 18px 8px;display:flex;align-items:center;justify-content:space-between;position:sticky;top:0;background:var(--bg);border-bottom:1px solid var(--border);z-index:5;}
.bk-panel-title{font-family:var(--fh);font-size:16px;letter-spacing:2px;color:var(--text2);}
.bk-match-count{font-family:var(--fm);font-size:10px;color:var(--text3);background:var(--bg3);padding:3px 7px;border-radius:4px;}
.bk-loading{padding:20px;font-family:var(--fm);font-size:12px;color:var(--text3);text-align:center;}
.bk-no-matches{padding:30px 20px;font-family:var(--fm);font-size:12px;color:var(--text3);text-align:center;line-height:2;}

/* ── LEAGUE GROUP HEADER ── */
.bk-league-group{padding:8px 18px 4px;background:var(--bg2);border-bottom:1px solid var(--border);border-top:1px solid var(--border);}
.bk-league-header{font-family:var(--fm);font-size:10px;color:var(--text3);letter-spacing:2px;text-transform:uppercase;}

/* ── MATCH CARDS ── */
.bk-card{display:flex;align-items:center;padding:10px 14px;border-bottom:1px solid var(--border);cursor:pointer;transition:all .15s;position:relative;gap:8px;}
.bk-card:hover{background:var(--card);}
.bk-card.active{background:var(--gglow);border-left:3px solid var(--green);}
.bk-card-time{font-family:var(--fm);font-size:11px;color:var(--text3);min-width:38px;text-align:center;}
.bk-card-teams{flex:1;}
.bk-team-row{display:flex;align-items:center;gap:5px;margin:2px 0;}
.bk-team-flag{font-size:13px;width:18px;}
.bk-team-name{font-size:13px;font-weight:600;color:var(--text);}
.bk-card-odds{display:flex;flex-direction:column;gap:2px;min-width:44px;}
.bk-no-odds{color:var(--text3);font-family:var(--fm);font-size:11px;display:flex;align-items:center;justify-content:center;}
.bk-odd{font-family:var(--fm);font-size:10px;font-weight:600;padding:2px 5px;border-radius:3px;text-align:center;background:var(--bg3);color:var(--text2);display:flex;align-items:center;gap:3px;}
.bk-odd-lbl{font-size:8px;color:var(--text3);}
.bk-odd.best{background:var(--gdim);color:var(--green);}
.bk-tip{font-family:var(--fm);font-size:9px;font-weight:600;padding:2px 6px;border-radius:3px;letter-spacing:1px;margin-left:2px;}
.bk-tip-1{background:rgba(0,230,118,.15);color:var(--green);}
.bk-tip-x{background:rgba(255,214,0,.15);color:var(--yellow);}
.bk-tip-2{background:rgba(76,159,255,.15);color:var(--blue);}
.bk-live-badge{font-family:var(--fm);font-size:9px;color:var(--red);font-weight:600;letter-spacing:1px;animation:bk-pulse 1.2s infinite;}
.bk-score{font-family:var(--fh);font-size:15px;color:var(--text2);}

/* ── DETAIL PANEL ── */
.bk-detail-panel{overflow-y:auto;max-height:68vh;scrollbar-width:thin;scrollbar-color:var(--bg3) transparent;}
.bk-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;min-height:400px;gap:14px;color:var(--text3);}
.bk-empty-icon{font-size:44px;opacity:.3;}
.bk-empty-title{font-family:var(--fh);font-size:18px;letter-spacing:2px;}
.bk-empty-sub{font-family:var(--fm);font-size:11px;text-align:center;max-width:220px;line-height:1.7;}

/* ── MATCH HEADER ── */
.bk-mh{background:var(--bg2);padding:20px 28px 14px;border-bottom:1px solid var(--border2);}
.bk-meta{font-family:var(--fm);font-size:10px;color:var(--text3);letter-spacing:2px;margin-bottom:14px;}
.bk-teams-row{display:flex;align-items:center;gap:12px;margin-bottom:12px;}
.bk-tb{flex:1;}
.bk-tb.away{text-align:right;}
.bk-tbig{font-family:var(--fh);font-size:22px;letter-spacing:1px;display:flex;align-items:center;gap:8px;}
.bk-tb.away .bk-tbig{justify-content:flex-end;}
.bk-flag{font-size:20px;}
.bk-form-row{display:flex;gap:3px;margin-top:6px;}
.bk-tb.away .bk-form-row{justify-content:flex-end;}
.bk-fc{width:20px;height:20px;border-radius:3px;display:flex;align-items:center;justify-content:center;font-family:var(--fm);font-size:9px;font-weight:600;}
.bk-fw{background:rgba(0,230,118,.2);color:var(--green);}
.bk-fd{background:rgba(255,214,0,.2);color:var(--yellow);}
.bk-fl{background:rgba(255,68,68,.2);color:var(--red);}
.bk-vs{text-align:center;min-width:56px;}
.bk-vs-time{font-family:var(--fh);font-size:12px;color:var(--text3);letter-spacing:2px;}
.bk-vs-label{font-family:var(--fh);font-size:22px;color:var(--text3);}

/* ── ODDS ── */
.bk-odds-row{display:flex;gap:8px;padding:12px 28px;background:var(--bg3);border-bottom:1px solid var(--border);}
.bk-ob{flex:1;text-align:center;padding:10px 6px;border-radius:8px;border:1px solid var(--border);background:var(--card);transition:all .2s;}
.bk-ob.rec{border-color:rgba(0,230,118,.5);background:var(--gdim);}
.bk-ob.rec .bk-ov{color:var(--green);}
.bk-rec-lbl{font-family:var(--fm);font-size:9px;color:var(--green);letter-spacing:1px;margin-bottom:3px;}
.bk-ol{font-family:var(--fm);font-size:10px;color:var(--text3);letter-spacing:1px;margin-bottom:5px;}
.bk-ov{font-family:var(--fh);font-size:22px;color:var(--text);}
.bk-op{font-family:var(--fm);font-size:10px;color:var(--text3);margin-top:3px;}
.bk-no-odds-info{padding:12px 28px;font-family:var(--fm);font-size:11px;color:var(--text3);border-bottom:1px solid var(--border);}

/* ── SECTIONS ── */
.bk-section{padding:18px 28px;border-bottom:1px solid var(--border);}
.bk-section-lbl{font-family:var(--fh);font-size:12px;letter-spacing:3px;color:var(--text3);margin-bottom:12px;display:flex;align-items:center;gap:10px;}
.bk-section-lbl::after{content:'';flex:1;height:1px;background:var(--border);}
.bk-h2h{display:grid;grid-template-columns:1fr 1fr 1fr;gap:7px;margin-bottom:10px;}
.bk-hs{text-align:center;padding:9px;background:var(--bg2);border-radius:6px;border:1px solid var(--border);}
.bk-hn{font-family:var(--fh);font-size:22px;}
.bk-hn.g{color:var(--green);}
.bk-hn.y{color:var(--yellow);}
.bk-hn.r{color:var(--red);}
.bk-hl{font-family:var(--fm);font-size:9px;color:var(--text3);margin-top:3px;}
.bk-btts{font-family:var(--fm);font-size:11px;color:var(--text2);padding:6px 0;}
.bk-context{font-family:var(--fm);font-size:11px;color:var(--text2);padding:8px 0;line-height:1.7;border-top:1px solid var(--border);margin-top:8px;}
.bk-sources{display:flex;gap:6px;margin-top:10px;padding-top:10px;border-top:1px solid var(--border);flex-wrap:wrap;}
.bk-src{font-family:var(--fm);font-size:9px;padding:3px 8px;border-radius:4px;background:var(--bg3);color:var(--text3);border:1px solid var(--border);display:flex;align-items:center;gap:4px;}
.bk-src-dot{width:5px;height:5px;border-radius:50%;background:var(--green);}

/* ── AI SECTION ── */
.bk-ai-section{padding:18px 28px;}
.bk-ai-head{display:flex;align-items:center;gap:10px;margin-bottom:14px;}
.bk-ai-icon{width:34px;height:34px;border-radius:7px;background:var(--gdim);border:1px solid rgba(0,230,118,.3);display:flex;align-items:center;justify-content:center;font-family:var(--fh);font-size:14px;color:var(--green);}
.bk-ai-title{font-family:var(--fh);font-size:16px;letter-spacing:2px;}
.bk-ai-sub{font-family:var(--fm);font-size:10px;color:var(--text3);}
.bk-analyze-btn{width:100%;padding:14px;background:var(--green);color:#000;border:none;border-radius:8px;font-family:var(--fh);font-size:18px;letter-spacing:3px;cursor:pointer;transition:all .2s;display:flex;align-items:center;justify-content:center;gap:10px;}
.bk-analyze-btn:hover{background:var(--green2);transform:translateY(-1px);}
.bk-analyze-btn:disabled{background:var(--bg3);color:var(--text3);transform:none;cursor:not-allowed;}
.bk-spinner{width:16px;height:16px;border:2px solid rgba(0,0,0,.2);border-top-color:#000;border-radius:50%;animation:bk-spin .8s linear infinite;display:none;}
.bk-analyze-btn.loading .bk-spinner{display:block;}
@keyframes bk-spin{to{transform:rotate(360deg)}}
.bk-result{margin-top:16px;padding:16px;background:var(--bg2);border:1px solid var(--border2);border-radius:8px;font-size:14px;line-height:1.75;color:var(--text);display:none;}
.bk-result.vis{display:block;animation:bk-fi .3s ease;}
@keyframes bk-fi{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}
.bk-result h3{font-family:var(--fh);font-size:14px;letter-spacing:2px;color:var(--green);margin:12px 0 5px;}
.bk-result h3:first-child{margin-top:0;}
.bk-result p{margin-bottom:8px;color:var(--text2);}
.bk-result strong{color:var(--text);}
.bk-cached-badge{font-family:var(--fm);font-size:9px;color:var(--text3);background:var(--bg3);padding:2px 8px;border-radius:4px;margin-left:8px;letter-spacing:1px;}
.bk-error{color:#ff8a8a;font-family:var(--fm);font-size:12px;padding:12px;background:rgba(255,68,68,.08);border-radius:6px;border:1px solid rgba(255,68,68,.2);}

/* ── RESPONSIVE ── */
@media(max-width:768px){
  .bk-main{grid-template-columns:1fr;}
  .bk-list-panel{max-height:42vh;border-right:none;border-bottom:1px solid var(--border);}
  .bk-detail-panel{max-height:none;}
  .bk-cal-day{min-width:42px;padding:5px 5px;}
  .bk-cal-dnum{font-size:17px;}
  .bk-topbar{padding:0 14px;}
  .bk-odds-row{padding:10px 16px;}
  .bk-mh{padding:16px 16px 10px;}
  .bk-section,.bk-ai-section{padding:14px 16px;}
}

/* ── WELCOME MODAL ── */
#bk-welcome-overlay {
  position:fixed;inset:0;z-index:99999;
  background:rgba(8,11,16,.85);
  backdrop-filter:blur(4px);
  display:flex;align-items:center;justify-content:center;
  padding:16px;
  opacity:0;transition:opacity .3s ease;
  pointer-events:none;
}
#bk-welcome-overlay.bk-wm-visible {
  opacity:1;pointer-events:auto;
}
#bk-welcome-modal {
  background:#0e1420;
  border:1px solid rgba(0,230,118,.25);
  border-radius:16px;
  padding:36px 32px 28px;
  max-width:480px;width:100%;
  transform:translateY(20px);transition:transform .3s ease;
  box-shadow:0 0 60px rgba(0,230,118,.08);
}
#bk-welcome-overlay.bk-wm-visible #bk-welcome-modal {
  transform:translateY(0);
}
.bk-wm-logo {
  display:flex;align-items:center;gap:8px;
  font-family:'Bebas Neue',sans-serif;font-size:28px;letter-spacing:4px;
  color:#00e676;margin-bottom:6px;
}
.bk-wm-dot {
  width:8px;height:8px;border-radius:50%;background:#00e676;
  animation:bk-pulse 2s infinite;
}
.bk-wm-tagline {
  font-family:'Syne',sans-serif;font-size:13px;
  color:#4a5a78;letter-spacing:2px;text-transform:uppercase;
  margin-bottom:20px;
}
.bk-wm-divider {
  height:1px;background:rgba(255,255,255,.07);margin-bottom:20px;
}
.bk-wm-list {
  list-style:none;padding:0;margin:0 0 20px;
  display:flex;flex-direction:column;gap:12px;
}
.bk-wm-list li {
  display:flex;align-items:flex-start;gap:12px;
  font-family:'Syne',sans-serif;font-size:14px;
  color:#8a9ab5;line-height:1.5;
}
.bk-wm-icon {
  font-size:16px;flex-shrink:0;margin-top:1px;
}
.bk-wm-disclaimer {
  font-family:'JetBrains Mono',monospace;font-size:10px;
  color:#4a5a78;padding:10px 12px;
  background:rgba(255,214,0,.05);border:1px solid rgba(255,214,0,.12);
  border-radius:6px;margin-bottom:20px;line-height:1.6;
}
#bk-wm-start {
  width:100%;padding:14px;
  background:#00e676;color:#000;border:none;border-radius:8px;
  font-family:'Bebas Neue',sans-serif;font-size:20px;letter-spacing:3px;
  cursor:pointer;transition:all .2s;margin-bottom:10px;display:block;
}
#bk-wm-start:hover { background:#00c853;transform:translateY(-1px); }
#bk-wm-skip {
  width:100%;padding:8px;background:transparent;
  border:none;color:#4a5a78;
  font-family:'JetBrains Mono',monospace;font-size:11px;
  cursor:pointer;transition:color .2s;display:block;
}
#bk-wm-skip:hover { color:#8a9ab5; }
.bk-wm-terms {
  text-align:center;margin-top:12px;
  font-family:'JetBrains Mono',monospace;font-size:10px;color:#4a5a78;
}
.bk-wm-terms a { color:#4a5a78;text-decoration:underline; }
.bk-wm-terms a:hover { color:#8a9ab5; }
@media(max-width:480px){
  #bk-welcome-modal{padding:24px 18px 20px;}
  .bk-wm-logo{font-size:22px;}
}
