.jv-root [hidden]{display:none !important;}
/* V-JARVIS · Maç Araştırma Merkezi (public/jarvis.js). A self-contained dark control-room panel: it keeps its own
   navy/cyan palette whatever site theme is chosen, so the core animation always sits on its intended background. */
.jv-root{
  --jv-bg:#030915; --jv-panel:rgba(9,22,44,0.78); --jv-panel-2:rgba(14,32,62,0.72); --jv-line:rgba(56,189,248,0.18); --jv-line-2:rgba(56,189,248,0.32);
  --jv-ink:#e6f6ff; --jv-dim:#9fb7cc; --jv-faint:#6b8299; --jv-cyan:#38e1ff; --jv-blue:#3b82f6; --jv-amber:#f5b041; --jv-red:#fb7185; --jv-green:#34d399;
  background:radial-gradient(120% 80% at 50% 0%, #0a1b38 0%, var(--jv-bg) 60%); color:var(--jv-ink);
  border:1px solid var(--jv-line); border-radius:14px; padding:14px; font-family:'Barlow',system-ui,sans-serif; font-size:13.5px; line-height:1.45;
  display:flex; flex-direction:column; gap:12px; min-width:0; overflow:hidden;
}
.jv-root *{box-sizing:border-box;}
.jv-root button{font-family:inherit;}
.jv-root a{color:var(--jv-cyan);}
.jv-h{font-family:'Barlow Condensed',sans-serif; letter-spacing:0.06em; text-transform:uppercase; font-weight:700; color:var(--jv-cyan); font-size:12px;}

/* top: picker + identity + actions */
.jv-top{display:flex; flex-direction:column; gap:10px; background:var(--jv-panel); border:1px solid var(--jv-line); border-radius:12px; padding:12px;}
.jv-pickers{display:grid; grid-template-columns:150px minmax(0,1fr) minmax(0,1.4fr); gap:8px;}
.jv-pickers label{display:flex; flex-direction:column; gap:3px; font-size:11px; color:var(--jv-faint); font-weight:700; text-transform:uppercase; letter-spacing:0.04em; min-width:0;}
.jv-pickers input,.jv-pickers select,.jv-hist select{background:#081428; color:var(--jv-ink); border:1px solid var(--jv-line-2); border-radius:8px; padding:7px 8px; font-size:13px; min-width:0; width:100%;}
.jv-id{display:flex; align-items:center; gap:12px; flex-wrap:wrap; justify-content:space-between;}
.jv-teams{display:flex; align-items:center; gap:10px; min-width:0; flex:1 1 320px;}
.jv-team{display:flex; align-items:center; gap:8px; min-width:0; font-weight:700; font-size:15px;}
.jv-team span{overflow:hidden; text-overflow:ellipsis; white-space:nowrap;}
.jv-team.away{justify-content:flex-end; text-align:right;}
.jv-crest{width:30px; height:30px; flex:none; border-radius:8px; background:#0b1c36; display:grid; place-items:center; overflow:hidden; font-size:11px; color:var(--jv-dim); font-weight:800;}
.jv-crest img{width:100%; height:100%; object-fit:contain;}
.jv-vs{color:var(--jv-faint); font-weight:800; font-size:12px;}
.jv-meta{display:flex; gap:6px; flex-wrap:wrap; align-items:center; font-size:12px; color:var(--jv-dim);}
.jv-chip{display:inline-flex; align-items:center; gap:4px; padding:2px 8px; border-radius:999px; border:1px solid var(--jv-line-2); background:rgba(56,189,248,0.08); font-size:11.5px; font-weight:700; color:var(--jv-dim); white-space:nowrap;}
.jv-chip.live{color:#fda4af; border-color:rgba(251,113,133,0.5); background:rgba(251,113,133,0.1);}
.jv-chip.ok{color:var(--jv-green); border-color:rgba(52,211,153,0.45); background:rgba(52,211,153,0.08);}
.jv-chip.warn{color:var(--jv-amber); border-color:rgba(245,176,65,0.5); background:rgba(245,176,65,0.1);}
.jv-chip.err{color:var(--jv-red); border-color:rgba(251,113,133,0.5); background:rgba(251,113,133,0.1);}
.jv-actions{display:flex; gap:8px; flex-wrap:wrap; align-items:center;}
.jv-btn{border:1px solid var(--jv-line-2); background:rgba(56,189,248,0.08); color:var(--jv-ink); padding:8px 14px; border-radius:9px; font-weight:700; font-size:13px; cursor:pointer; transition:background .2s, border-color .2s, opacity .2s;}
.jv-btn:hover:not(:disabled){background:rgba(56,189,248,0.16); border-color:var(--jv-cyan);}
.jv-btn:disabled{opacity:.45; cursor:not-allowed;}
.jv-btn.primary{background:linear-gradient(180deg,#0ea5e9,#2563eb); border-color:#38bdf8; color:#fff; box-shadow:0 0 18px rgba(56,189,248,0.35);}
.jv-btn.primary:hover:not(:disabled){background:linear-gradient(180deg,#22b8f5,#3b74f0);}
.jv-btn.danger{border-color:rgba(251,113,133,0.5); color:#fecdd3; background:rgba(251,113,133,0.08);}
.jv-btn.ghost{background:transparent;}
.jv-hist{display:flex; align-items:center; gap:6px; font-size:12px; color:var(--jv-faint); min-width:0;}
.jv-hist select{width:auto; max-width:100%;}
.jv-banner{border:1px solid rgba(245,176,65,0.45); background:rgba(245,176,65,0.08); color:#fde7c2; border-radius:10px; padding:8px 10px; font-size:12.5px;}
.jv-banner.err{border-color:rgba(251,113,133,0.5); background:rgba(251,113,133,0.08); color:#fecdd3;}

/* stage: core + side panel */
.jv-stage{display:grid; grid-template-columns:minmax(0,1.55fr) minmax(280px,1fr); gap:12px; min-width:0;}
.jv-core{position:relative; height:min(56vh,500px); min-height:300px; border-radius:12px; overflow:hidden; border:1px solid var(--jv-line); background:#02060f; transition:height .9s cubic-bezier(.2,.7,.2,1);}
.jv-root.jv-has-report .jv-core{height:260px; min-height:220px;}
.jv-root.jv-modal .jv-core{height:360px;}
.jv-root.jv-modal.jv-has-report .jv-core{height:300px;}
.jv-core canvas{position:absolute; inset:0; width:100%; height:100%; display:block;}
.jv-brand{position:absolute; inset:0; display:flex; flex-direction:column; align-items:center; justify-content:center; pointer-events:none; text-align:center;}
.jv-brand b{font-family:'Barlow Condensed',sans-serif; font-weight:800; letter-spacing:0.16em; padding-left:0.16em; font-size:clamp(14px,calc(var(--jv-r,160px)*0.135),30px); line-height:1; color:#eafcff; text-shadow:0 0 14px rgba(56,225,255,0.55),0 0 2px rgba(0,0,0,0.9);}
.jv-brand small{margin-top:3px; font-size:clamp(7px,calc(var(--jv-r,160px)*0.043),10.5px); letter-spacing:0.14em; color:rgba(190,235,255,0.75); text-transform:uppercase; font-weight:700; text-shadow:0 0 6px rgba(0,0,0,0.9);}
.jv-state{position:absolute; left:0; right:0; bottom:10px; display:flex; justify-content:center; pointer-events:none;}
.jv-state span{background:rgba(2,8,20,0.72); border:1px solid var(--jv-line-2); color:var(--jv-ink); border-radius:999px; padding:4px 12px; font-size:12px; font-weight:700; letter-spacing:0.02em; max-width:92%; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; transition:color .6s, border-color .6s;}
.jv-core[data-visual="partial"] .jv-state span{color:var(--jv-amber); border-color:rgba(245,176,65,0.6);}
.jv-core[data-visual="error"] .jv-state span{color:var(--jv-red); border-color:rgba(251,113,133,0.6);}
.jv-core[data-visual="done"] .jv-state span{color:var(--jv-green); border-color:rgba(52,211,153,0.5);}
.jv-fallback{position:absolute; inset:0; display:none; place-items:center;}
.jv-core.no-canvas .jv-fallback{display:grid;}
.jv-fallback i{position:absolute; border-radius:50%; border:2px solid rgba(56,225,255,0.35);}
.jv-fallback i:nth-child(1){width:46%; aspect-ratio:1;} .jv-fallback i:nth-child(2){width:64%; aspect-ratio:1; border-style:dashed;} .jv-fallback i:nth-child(3){width:30%; aspect-ratio:1; border-width:6px; box-shadow:0 0 30px rgba(56,225,255,0.35);}

.jv-side{display:flex; flex-direction:column; gap:10px; min-width:0;}
.jv-root.jv-has-report .jv-side{max-height:none;}
.jv-root.jv-has-report .jv-steps{max-height:118px;}
.jv-root.jv-has-report .jv-finds{max-height:150px;}
.jv-panel{background:var(--jv-panel); border:1px solid var(--jv-line); border-radius:12px; padding:10px 12px; min-width:0;}
.jv-steps{list-style:none; margin:6px 0 0; padding:0; display:flex; flex-direction:column; gap:5px; overflow-y:auto; max-height:300px; overscroll-behavior:contain;}
.jv-steps li{display:grid; grid-template-columns:16px 1fr auto; gap:6px; font-size:12.5px; color:var(--jv-dim); align-items:start; animation:jvIn .35s ease both;}
.jv-steps li .ic{width:14px; height:14px; border-radius:50%; margin-top:2px; border:2px solid var(--jv-cyan); opacity:.8;}
.jv-steps li.ok .ic{background:var(--jv-green); border-color:var(--jv-green);}
.jv-steps li.warn .ic{background:var(--jv-amber); border-color:var(--jv-amber);}
.jv-steps li.error .ic{background:var(--jv-red); border-color:var(--jv-red);}
.jv-steps li.ok{color:var(--jv-ink);}
.jv-steps li time{color:var(--jv-faint); font-size:11px; font-variant-numeric:tabular-nums;}
.jv-steps li.now .ic{animation:jvBlink 1.4s ease-in-out infinite;}
.jv-finds{display:flex; flex-direction:column; gap:6px; margin-top:6px; overflow-y:auto; max-height:220px;}
.jv-empty{color:var(--jv-faint); font-size:12.5px;}
@keyframes jvIn{from{opacity:0; transform:translateY(4px);} to{opacity:1; transform:none;}}
@keyframes jvBlink{50%{opacity:.25;}}

/* report */
.jv-report{display:flex; flex-direction:column; gap:10px; min-width:0;}
.jv-rhead{display:flex; justify-content:space-between; gap:10px; flex-wrap:wrap; align-items:flex-start;}
.jv-headline{font-family:'Barlow Condensed',sans-serif; font-size:21px; font-weight:700; color:#f2fbff; line-height:1.2;}
.jv-sec{background:var(--jv-panel); border:1px solid var(--jv-line); border-radius:12px; padding:12px 14px; min-width:0; animation:jvIn .4s ease both;}
.jv-sec > summary{cursor:pointer; list-style:none; display:flex; align-items:center; gap:8px; font-weight:800; font-size:14px; color:#dff4ff;}
.jv-sec > summary::-webkit-details-marker{display:none;}
.jv-sec > summary .k{display:inline-grid; place-items:center; width:22px; height:22px; border-radius:6px; background:rgba(56,189,248,0.14); color:var(--jv-cyan); font-size:12px; flex:none;}
.jv-sec > summary .n{margin-left:auto; color:var(--jv-faint); font-weight:700; font-size:11.5px;}
.jv-items{list-style:none; margin:8px 0 0; padding:0; display:flex; flex-direction:column; gap:7px;}
.jv-item{display:flex; flex-direction:column; gap:4px; padding:7px 9px; border-radius:9px; background:var(--jv-panel-2); border-left:3px solid var(--jv-blue);}
.jv-item.k-DOGRULANMIS{border-left-color:var(--jv-green);}
.jv-item.k-KAYNAKLI{border-left-color:var(--jv-cyan);}
.jv-item.k-MODEL{border-left-color:#a78bfa;}
.jv-item.k-YORUM{border-left-color:#94a3b8;}
.jv-item.k-EKSIK{border-left-color:var(--jv-amber);}
.jv-item .t{color:var(--jv-ink); font-size:13.5px;}
.jv-item .m{display:flex; flex-wrap:wrap; gap:5px; align-items:center;}
.jv-kind{font-size:10.5px; font-weight:800; letter-spacing:0.04em; text-transform:uppercase; padding:1px 7px; border-radius:999px; background:rgba(148,163,184,0.12); color:var(--jv-dim);}
.jv-kind.k-DOGRULANMIS{color:var(--jv-green); background:rgba(52,211,153,0.1);}
.jv-kind.k-KAYNAKLI{color:var(--jv-cyan); background:rgba(56,225,255,0.1);}
.jv-kind.k-MODEL{color:#c4b5fd; background:rgba(167,139,250,0.12);}
.jv-kind.k-EKSIK{color:var(--jv-amber); background:rgba(245,176,65,0.12);}
.jv-src{font-size:11.5px; font-weight:700; text-decoration:none; padding:1px 6px; border-radius:6px; border:1px solid var(--jv-line-2); color:var(--jv-cyan) !important;}
.jv-ref{font-size:11.5px; padding:1px 6px; border-radius:6px; background:rgba(167,139,250,0.1); color:#d6ccff; cursor:help;}
.jv-flag{font-size:11px; padding:1px 6px; border-radius:6px; background:rgba(245,176,65,0.12); color:var(--jv-amber); font-weight:700;}
.jv-tbl{width:100%; border-collapse:collapse; font-size:12.5px; margin-top:8px; font-variant-numeric:tabular-nums;}
.jv-tbl th,.jv-tbl td{padding:6px 7px; border-bottom:1px solid rgba(56,189,248,0.1); text-align:left; vertical-align:top;}
.jv-tbl th{color:var(--jv-faint); font-size:11px; text-transform:uppercase; letter-spacing:0.04em; font-weight:800;}
.jv-tblwrap{overflow-x:auto; max-width:100%;}
.jv-note{font-size:12px; color:var(--jv-faint); margin-top:6px;}
.jv-caveat{font-size:12px; color:#cfe9ff; background:rgba(59,130,246,0.1); border:1px solid rgba(59,130,246,0.3); border-radius:8px; padding:7px 9px; margin-top:8px;}
.jv-legend{display:flex; flex-wrap:wrap; gap:6px; font-size:11.5px; color:var(--jv-faint); align-items:center;}
.jv-grid2{display:grid; grid-template-columns:1fr 1fr; gap:10px;}

/* chat */
.jv-chat{display:flex; flex-direction:column; gap:8px;}
.jv-msgs{display:flex; flex-direction:column; gap:8px;}
.jv-msg{padding:8px 10px; border-radius:10px; max-width:92%; font-size:13.5px;}
.jv-msg.user{align-self:flex-end; background:rgba(37,99,235,0.25); border:1px solid rgba(59,130,246,0.4);}
.jv-msg.assistant{align-self:flex-start; background:var(--jv-panel-2); border:1px solid var(--jv-line);}
.jv-ask{display:flex; gap:8px;}
.jv-ask input{flex:1; min-width:0; background:#081428; color:var(--jv-ink); border:1px solid var(--jv-line-2); border-radius:9px; padding:9px 10px; font-size:13.5px;}
.jv-sugg{display:flex; flex-wrap:wrap; gap:6px;}
.jv-sugg button{background:transparent; border:1px dashed var(--jv-line-2); color:var(--jv-dim); border-radius:999px; padding:4px 10px; font-size:12px; cursor:pointer;}
.jv-sugg button:hover{color:var(--jv-ink); border-color:var(--jv-cyan);}

/* fullscreen overlay */
#jvOverlay{position:fixed; inset:0; z-index:1200; background:rgba(1,4,12,0.92); backdrop-filter:blur(4px); overflow-y:auto; padding:16px; display:none;}
#jvOverlay.open{display:block;}
#jvOverlay .jv-ov-inner{max-width:1360px; margin:0 auto; position:relative;}
#jvOverlay .jv-ov-close{position:sticky; top:0; margin-left:auto; display:flex; justify-content:flex-end; z-index:2; margin-bottom:8px;}
.modal.jv-wide{max-width:min(1240px,96vw);}

@media (max-width: 900px){
  .jv-stage{grid-template-columns:1fr;}
  .jv-side{max-height:none;}
  .jv-core{height:min(62vw,420px); min-height:260px;}
  .jv-root.jv-has-report .jv-core{height:200px; min-height:180px;}
  .jv-pickers{grid-template-columns:1fr 1fr;}
  .jv-pickers label:last-child{grid-column:1 / -1;}
  .jv-grid2{grid-template-columns:1fr;}
}
@media (max-width: 520px){
  .jv-root{padding:10px; font-size:13px; border-radius:10px;}
  #jvOverlay{padding:8px;}
  .jv-team{font-size:14px;}
  .jv-crest{width:26px; height:26px;}
  .jv-actions .jv-btn{flex:1 1 auto;}
  .jv-headline{font-size:18px;}
}
@media (prefers-reduced-motion: reduce){
  .jv-core,.jv-steps li,.jv-sec{transition:none !important; animation:none !important;}
  .jv-steps li.now .ic{animation:none;}
}
.jv-core.jv-tight .jv-brand small{display:none;}

/* V-JARVIS görüşü and karne */
.jv-root .jv-verdict { margin: 12px 0; padding: 12px 14px; border-radius: 12px; border: 1px solid rgba(240, 180, 80, .45); background: rgba(240, 180, 80, .08); }
.jv-root .jv-verdict.c-YUKSEK { border-color: rgba(52, 211, 153, .55); background: rgba(52, 211, 153, .08); }
.jv-root .jv-verdict.c-DUSUK, .jv-root .jv-verdict.none { border-color: rgba(148, 163, 184, .4); background: rgba(148, 163, 184, .06); }
.jv-root .jv-verdict .v { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; margin: 6px 0; }
.jv-root .jv-verdict .v b { font-size: 1.15rem; color: #fff; }
.jv-root .jv-verdict .v > span:not(.jv-chip) { color: #9fb6d0; }
.jv-root .jv-chip.ok { color: #34d399; border-color: rgba(52, 211, 153, .5); }
.jv-root .jv-tbl td.ok { color: #34d399; font-weight: 700; }
.jv-root .jv-tbl td.err { color: #f87171; font-weight: 700; }
.jv-root .jv-record { margin-top: 12px; }
.jv-root .jv-verdict .v > span.play:not(.jv-chip) { color: #fbbf24; font-weight: 700; font-size: 1rem; }
.jv-root .jv-verdict.c-YUKSEK .v > span.play:not(.jv-chip) { color: #34d399; }
.jv-root .jv-verdict.c-DUSUK .v > span.play:not(.jv-chip), .jv-root .jv-verdict.none .v > span.play:not(.jv-chip) { color: #9fb6d0; }
.jv-root .jv-verdict .v b { font-size: 1.6rem; letter-spacing: .02em; }
.jv-root .jv-verdict .concl { color: #e6f1ff; margin: 4px 0 8px; line-height: 1.45; }
.jv-root .jv-find-result { border-left-color: #fbbf24 !important; }
