/* ================= SiberMagazin v3: efekt katmanı ================= */
:root[data-theme="dark"]{--bg:#060a13;--card:#0e1525;--text:#e7ecf5;--text2:#b9c3d6;--muted:#8792a8;--line:#1d2840;--soft:#121a2c;--soft2:#17213a;--shadow:0 1px 0 rgba(255,255,255,.04),0 8px 30px rgba(0,0,0,.35);--glass:rgba(10,15,28,.78)}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]){--bg:#060a13;--card:#0e1525;--text:#e7ecf5;--text2:#b9c3d6;--muted:#8792a8;--line:#1d2840;--soft:#121a2c;--soft2:#17213a;--shadow:0 1px 0 rgba(255,255,255,.04),0 8px 30px rgba(0,0,0,.35);--glass:rgba(10,15,28,.78)}}
body{transition:background .4s,color .4s}
.card,.box,.article,.pulse,.vcard,.value,.swatch{box-shadow:var(--shadow)}
:root[data-theme="dark"] .logo,:root[data-theme="dark"] .nav a{color:var(--text)}
:root[data-theme="dark"] .menu-btn span{background:var(--text)}
:root[data-theme="dark"] .t-big{color:var(--text)}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]) .logo,:root:not([data-theme="light"]) .nav a{color:var(--text)}:root:not([data-theme="light"]) .menu-btn span{background:var(--text)}}

/* cam başlık, kaydırınca küçülür */
.site-header{background:var(--glass);backdrop-filter:saturate(1.6) blur(14px);-webkit-backdrop-filter:saturate(1.6) blur(14px);transition:box-shadow .3s}
.site-header .wrap{transition:height .3s}
.scrolled .site-header .wrap{height:58px}
.scrolled .site-header{box-shadow:0 8px 30px rgba(11,22,48,.12)}
.logo img{transition:transform .5s cubic-bezier(.2,1.6,.4,1)}
.logo:hover img{transform:rotate(-8deg) scale(1.08)}
#readbar{position:absolute;left:0;right:0;bottom:-3px;height:3px;background:linear-gradient(90deg,var(--red),#ff6b81,var(--cyan));transform-origin:0 50%;transform:scaleX(0)}
.nav-track{display:inline-flex;align-items:center;gap:7px;background:var(--red);color:#fff!important;border-radius:999px!important;padding:7px 14px!important;box-shadow:0 4px 14px rgba(200,16,46,.35)}
.nav-track:hover{background:var(--red-d)!important}
.live-dot{width:8px;height:8px;border-radius:50%;background:#fff;box-shadow:0 0 0 0 rgba(255,255,255,.7);animation:livep 1.6s infinite;flex:none}
.cmd-head .live-dot{background:#ff3355}
@keyframes livep{70%{box-shadow:0 0 0 8px rgba(255,255,255,0)}100%{box-shadow:0 0 0 0 rgba(255,255,255,0)}}
.theme-btn{flex:none;width:40px;height:40px;border-radius:50%;border:1px solid var(--line);background:var(--card);color:var(--text);font-size:18px;cursor:pointer;display:grid;place-items:center;transition:transform .4s}
.theme-btn:hover{transform:rotate(25deg)}
.theme-btn .ico-moon{display:none}
:root[data-theme="dark"] .theme-btn .ico-moon{display:inline}:root[data-theme="dark"] .theme-btn .ico-sun{display:none}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]) .theme-btn .ico-moon{display:inline}:root:not([data-theme="light"]) .theme-btn .ico-sun{display:none}}

/* kaydırınca belirme */
.rv{opacity:0;transform:translateY(22px);transition:opacity .7s ease,transform .7s cubic-bezier(.2,.8,.2,1);transition-delay:calc(var(--i,0)*60ms)}
.rv.in{opacity:1;transform:none}

/* 3B eğilme + ışık */
.card,.ov-md,.ov-lg{transform:perspective(900px) rotateX(var(--rx,0)) rotateY(var(--ry,0));transition:transform .25s ease,box-shadow .25s,opacity .7s}
.card.rv:not(.in){transform:translateY(22px)}
.card{position:relative}
.card::after,.ov-md::before,.ov-lg::before{content:"";position:absolute;inset:0;pointer-events:none;z-index:2;opacity:0;transition:opacity .3s;background:radial-gradient(420px circle at var(--mx,50%) var(--my,50%),rgba(255,255,255,.18),transparent 45%)}
.card:hover::after,.ov-md:hover::before,.ov-lg:hover::before{opacity:1}
.card.in:hover{transform:perspective(900px) rotateX(var(--rx,0)) rotateY(var(--ry,0)) translateY(-4px)}
.thumb img{transition:transform .6s cubic-bezier(.2,.8,.2,1)}
.card:hover .thumb img{transform:scale(1.06)}

/* slider: Ken Burns + ilerleme */
.slide.on .ov img{animation:kb 9s ease-out both}
@keyframes kb{from{transform:scale(1.12) translate(1%,1%)}to{transform:scale(1)}}
.slide.on .ov-text>*{animation:up .7s cubic-bezier(.2,.8,.2,1) both}
.slide.on .ov-text h3{animation-delay:.1s}.slide.on .ov-text p{animation-delay:.2s}
@keyframes up{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}
.sl-prog{position:absolute;left:0;bottom:0;height:4px;width:100%;background:linear-gradient(90deg,var(--red),#ff6b81);transform-origin:0 50%;transform:scaleX(0);z-index:4}
.sl-prog.run{animation:prog 6s linear forwards}
@keyframes prog{to{transform:scaleX(1)}}

/* nabız */
.ekg{stroke-dasharray:200;stroke-dashoffset:200;animation:ekg 2.4s linear infinite}
@keyframes ekg{to{stroke-dashoffset:-200}}
.stat-cta{background:linear-gradient(135deg,var(--red),#ff4d6d);color:#fff;transition:filter .2s}
.stat-cta:hover{filter:brightness(1.1)}
.stat-cta b{color:#fff!important}.stat-cta span{color:#ffe3e8!important;font-weight:700}

/* komuta bandı: radar + üretici nabzı */
.command{position:relative;display:grid;grid-template-columns:1fr 1.15fr;gap:28px;background:radial-gradient(900px 400px at 15% 0%,#14244a,transparent 60%),#070c18;color:#e7ecf5;border-radius:18px;padding:30px;margin-bottom:34px;overflow:hidden;isolation:isolate}
.net-bg{position:absolute;inset:0;width:100%;height:100%;z-index:-1;opacity:.55}
.cmd-head{display:flex;align-items:center;gap:10px;margin-bottom:14px}
.cmd-head h2{margin:0;font-size:20px;font-weight:900;letter-spacing:-.01em}
.cmd-head p{margin:0 0 0 auto;font-size:12.5px;color:#8792a8}
.cmd-head a{margin-left:auto;font-size:13px;font-weight:700;color:#7dd3fc}
.radar{position:relative;aspect-ratio:1;max-width:420px;margin:0 auto;border-radius:50%;background:radial-gradient(circle,rgba(0,180,216,.12),rgba(0,180,216,.02) 70%);border:1px solid rgba(0,180,216,.35);box-shadow:0 0 60px rgba(0,180,216,.15) inset}
.r-ring{position:absolute;inset:16%;border-radius:50%;border:1px dashed rgba(0,180,216,.3)}
.r-ring.r2{inset:32%}.r-ring.r3{inset:44%;border-style:solid;border-color:rgba(0,180,216,.45)}
.r-cross{position:absolute;inset:0;border-radius:50%;background:linear-gradient(90deg,transparent calc(50% - .5px),rgba(0,180,216,.25) 50%,transparent calc(50% + .5px)),linear-gradient(0deg,transparent calc(50% - .5px),rgba(0,180,216,.25) 50%,transparent calc(50% + .5px))}
.r-sweep{position:absolute;inset:0;border-radius:50%;background:conic-gradient(from 0deg,rgba(0,212,255,.45),rgba(0,212,255,0) 22%,transparent);animation:spin 4s linear infinite}
@keyframes spin{to{transform:rotate(360deg)}}
.blip{position:absolute;width:12px;height:12px;margin:-6px 0 0 -6px;border-radius:50%;background:#7dd3fc;box-shadow:0 0 12px currentColor;color:#7dd3fc;z-index:2;animation:blip 4s linear infinite;animation-delay:var(--d)}
.blip::after{content:"";position:absolute;inset:-6px;border-radius:50%;border:2px solid currentColor;opacity:0;animation:ping 4s ease-out infinite;animation-delay:var(--d)}
.blip-kritik{background:#ff3355;color:#ff3355}.blip-yuksek{background:#ffb020;color:#ffb020}
@keyframes blip{0%,100%{opacity:.55}4%{opacity:1;transform:scale(1.5)}12%{transform:scale(1)}}
@keyframes ping{0%{opacity:.9;transform:scale(.6)}20%{opacity:0;transform:scale(2.2)}100%{opacity:0}}
.blip .tip{position:absolute;left:50%;bottom:calc(100% + 10px);transform:translateX(-50%) translateY(6px);width:230px;background:rgba(7,12,24,.96);border:1px solid rgba(0,180,216,.45);border-radius:10px;padding:9px 11px;font-size:12.5px;line-height:1.35;color:#e7ecf5;opacity:0;pointer-events:none;transition:.2s;z-index:5}
.blip .tip b{display:block;font-size:10.5px;letter-spacing:.08em;text-transform:uppercase;color:#7dd3fc;margin-bottom:3px}
.blip:hover,.blip:focus{z-index:6;animation:none;opacity:1;transform:scale(1.5)}
.blip:hover .tip,.blip:focus .tip{opacity:1;transform:translateX(-50%) translateY(0)}
.r-legend{display:flex;justify-content:center;gap:16px;margin-top:14px;font-size:12.5px;color:#8792a8}
.r-legend i{display:inline-block;width:9px;height:9px;border-radius:50%;margin-right:6px;background:#7dd3fc}
.r-legend i.blip-kritik{background:#ff3355}.r-legend i.blip-yuksek{background:#ffb020}
.vp{display:flex;flex-direction:column;gap:6px}
.vp-row{display:grid;grid-template-columns:150px 1fr 34px auto;align-items:center;gap:12px;padding:9px 12px;border-radius:10px;background:rgba(255,255,255,.035);border:1px solid rgba(255,255,255,.05);transition:background .2s,border-color .2s,transform .2s,opacity .7s}
.vp-row.in:hover{background:rgba(255,255,255,.08);border-color:var(--c);transform:translateX(4px)}
.vp-name{display:flex;align-items:center;gap:9px;font-weight:700;font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.vp-name i{width:10px;height:10px;border-radius:3px;background:var(--c);box-shadow:0 0 10px var(--c);flex:none}
.vp-bar{height:8px;border-radius:5px;background:rgba(255,255,255,.07);overflow:hidden}
.vp-bar span{display:block;height:100%;border-radius:5px;background:linear-gradient(90deg,var(--c),color-mix(in srgb,var(--c) 40%,#fff));transform-origin:0 50%;transform:scaleX(0);transition:transform 1.2s cubic-bezier(.2,.8,.2,1) .2s}
.vp-row.in .vp-bar span,.vp-row:not(.rv) .vp-bar span{transform:scaleX(1)}
.vp-n{font-weight:900;text-align:right}
.vp-flags{display:flex;gap:5px}
.vp-flags em{font-style:normal;font-size:11px;font-weight:800;padding:2px 7px;border-radius:5px;white-space:nowrap}
.f-k{background:rgba(255,51,85,.16);color:#ff6b81}.f-x{background:rgba(255,176,32,.15);color:#ffc35c}

/* rozetler */
.xpl{display:inline-block;margin-left:6px;background:#ffb020;color:#2b1a00;font-size:11px;font-weight:900;letter-spacing:.05em;padding:3px 8px;border-radius:4px}

/* takip merkezi */
.tk-hero,.v-hero{position:relative;overflow:hidden;isolation:isolate;border-radius:18px;padding:40px 44px;margin-bottom:22px;color:#fff;background:radial-gradient(800px 360px at 85% 0%,rgba(200,16,46,.55),transparent 60%),radial-gradient(700px 300px at 0% 100%,rgba(0,180,216,.35),transparent 60%),#070c18}
.tk-hero h1,.v-hero h1{margin:0 0 10px;font-size:clamp(28px,4vw,46px);font-weight:900;letter-spacing:-.03em;line-height:1.08}
.tk-hero p{max-width:720px;color:#c3cbe0;margin:0}
.tk-hero .eyebrow,.v-hero .eyebrow{color:#ff6b81}
.tk-vendors{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px;margin-bottom:16px}
.tv{position:relative;text-align:left;background:var(--card);border:1px solid var(--line);border-left:4px solid var(--c);border-radius:12px;padding:12px 14px;cursor:pointer;color:var(--text);font-family:inherit;transition:transform .2s,box-shadow .2s,background .2s;transform:perspective(700px) rotateX(var(--rx,0)) rotateY(var(--ry,0))}
.tv b{display:block;font-size:14.5px}.tv span{font-size:12.5px;color:var(--muted)}
.tv:hover{box-shadow:0 10px 26px rgba(11,22,48,.14)}
.tv.on{background:var(--c);border-color:var(--c);color:#fff;box-shadow:0 10px 28px color-mix(in srgb,var(--c) 45%,transparent)}
.tv.on span{color:rgba(255,255,255,.85)}
.tk-bar{position:sticky;top:76px;z-index:10;display:flex;flex-wrap:wrap;align-items:center;gap:10px;background:var(--glass);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid var(--line);border-radius:14px;padding:12px;margin-bottom:12px;box-shadow:var(--shadow)}
.tk-bar input[type=search]{flex:1 1 260px;min-width:0;border:1px solid var(--line);background:var(--card);color:var(--text);border-radius:10px;padding:10px 14px;font:inherit;font-size:14.5px}
.tk-bar input[type=search]:focus{outline:2px solid var(--cyan);outline-offset:1px}
.tk-bar select{border:1px solid var(--line);background:var(--card);color:var(--text);border-radius:10px;padding:9px 10px;font:inherit;font-size:14px}
.tk-chips{display:flex;gap:6px}
.tk-chips button{font:inherit;font-size:12.5px;font-weight:800;padding:7px 11px;border-radius:8px;cursor:pointer;margin:0;opacity:.65;transition:.15s;border:0}
.tk-chips button.on{opacity:1;box-shadow:inset 0 0 0 2px currentColor,0 0 0 3px color-mix(in srgb,currentColor 18%,transparent)}
.tk-tog{display:flex;align-items:center;gap:6px;font-size:13.5px;font-weight:600;cursor:pointer;color:var(--text2)}
.tk-tog input{accent-color:var(--red);width:16px;height:16px}
.tk-reset{font:inherit;font-size:13px;font-weight:700;background:none;border:0;color:var(--muted);cursor:pointer;text-decoration:underline}
.tk-meta{display:flex;flex-wrap:wrap;gap:12px;align-items:center;margin:6px 4px 12px;font-size:13.5px;color:var(--muted)}
#tk-count{font-weight:900;color:var(--text);font-size:15px}
.tk-list{display:flex;flex-direction:column;gap:8px}
.tr{display:grid;grid-template-columns:118px 1fr;gap:16px;align-items:start;background:var(--card);border:1px solid var(--line);border-radius:12px;padding:14px 16px;transition:transform .2s,border-color .2s,box-shadow .2s,opacity .5s}
.tr.in:hover,.tr:not(.rv):hover{transform:translateX(4px);border-color:var(--red);box-shadow:0 8px 24px rgba(11,22,48,.1)}
.tr time{font-size:12.5px;color:var(--muted);font-weight:600;padding-top:3px}
.tr-main{display:flex;flex-direction:column;gap:6px;min-width:0}
.tr-main b{font-size:16px;line-height:1.35}
.tr:hover b{color:var(--red)}
.tr-badges .sev,.tr-badges .xpl,.tr-badges .claim{margin-left:5px}
.tr-sub{display:flex;flex-wrap:wrap;gap:6px}
.tr-sub i{font-style:normal;font-size:12px;font-weight:700;color:var(--c);background:color-mix(in srgb,var(--c) 12%,transparent);padding:2px 8px;border-radius:999px}
.tr-sub code{font:600 11.5px ui-monospace,monospace;background:var(--soft2);color:var(--text2);padding:2px 7px;border-radius:5px}
.tk-empty{text-align:center;padding:50px;background:var(--card);border-radius:12px;border:1px dashed var(--line)}
.tk-empty b{display:block;font-size:18px}.tk-empty span{color:var(--muted)}
.tk-more{display:block;margin:18px auto 0;border:0;cursor:pointer;font-family:inherit}

/* üretici sayfası */
.v-hero{display:grid;grid-template-columns:auto 1fr auto;gap:28px;align-items:center;background:radial-gradient(700px 320px at 90% 0%,color-mix(in srgb,var(--c) 60%,transparent),transparent 65%),radial-gradient(600px 300px at 0% 100%,rgba(0,180,216,.25),transparent 60%),#070c18}
.v-mono{width:92px;height:92px;border-radius:24px;display:grid;place-items:center;font-size:36px;font-weight:900;background:var(--c);box-shadow:0 0 40px color-mix(in srgb,var(--c) 60%,transparent)}
.v-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:6px}
.btn-ghost{background:transparent;border:1px solid rgba(255,255,255,.4);color:#fff}
.btn-ghost:hover{background:rgba(255,255,255,.1)}
.v-stats{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}
.vs{background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.1);border-radius:12px;padding:12px 18px;min-width:110px}
.vs b{display:block;font-size:30px;font-weight:900;line-height:1}.vs span{font-size:12.5px;color:#aab4c8}
.vs.k b{color:#ff6b81}.vs.x b{color:#ffc35c}
.cve-table td{vertical-align:top}.cve-table td a{font-weight:700}.cve-table td a:hover{color:var(--red)}
.cve-table code{font:600 12.5px ui-monospace,monospace;white-space:nowrap}
.v-note{font-size:13px;margin-top:-12px}

@media (max-width:980px){.command{grid-template-columns:1fr}.v-hero{grid-template-columns:auto 1fr}.v-stats{grid-column:1/-1;grid-template-columns:repeat(4,1fr)}.tk-bar{top:70px}.theme-btn{margin-left:auto}}
@media (max-width:640px){
  .command{padding:20px 16px}.vp-row{grid-template-columns:1fr 34px}.vp-bar,.vp-flags{display:none}
  .tk-hero,.v-hero{padding:26px 20px}.v-hero{grid-template-columns:1fr}.v-mono{width:64px;height:64px;font-size:26px;border-radius:18px}.v-stats{grid-template-columns:repeat(2,1fr)}
  .tr{grid-template-columns:1fr;gap:6px}.tk-bar{position:static}
  .theme-btn{width:36px;height:36px}
}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important}.rv{opacity:1;transform:none}}

/* menü taşmasın */
.logo{flex:none}
.nav{min-width:0;overflow-x:auto;scrollbar-width:none;-webkit-mask-image:linear-gradient(90deg,#000 92%,transparent);mask-image:linear-gradient(90deg,#000 92%,transparent);padding-right:24px}
.nav::-webkit-scrollbar{display:none}
.nav a{flex:none}
@media (max-width:980px){.nav{overflow:visible;-webkit-mask-image:none;mask-image:none;padding-right:16px}}

/* CVE tablosu */
.cve-table{border-collapse:collapse;width:100%;font-size:14.5px;background:var(--card);border-radius:12px;overflow:hidden;box-shadow:var(--shadow)}
.cve-table th,.cve-table td{border-bottom:1px solid var(--line);padding:10px 12px;text-align:left}
.cve-table th{background:var(--navy);color:#fff;font-size:12.5px;letter-spacing:.04em;text-transform:uppercase}
.cve-table tr:hover td{background:var(--soft)}
@media (max-width:640px){.cve-table th:nth-child(4),.cve-table td:nth-child(4),.cve-table th:nth-child(5),.cve-table td:nth-child(5){display:none}.cve-table{font-size:13.5px}}
