/**
 * OnionZero — Endüstriyel Yazılım Koruma ve Lisanslama Sistemi
 *
 * @developer  HBY Software
 * @author     Hasan Berat Yıldız
 * @website    https://www.hby.biz
 * @package    OnionZero
 *
 * oz-site-runtime.css — /runtime sayfasına özel bileşenler (indirme
 * matrisi, kurulum adımları, sorun giderme). oz-site.css (foundation)
 * token'larını yeniden kullanır; sınıf öneki ozrt-. Sayfa görünümünden
 * <link> ile bağlanır (CSP style-src 'self' uyumlu). Hareket:
 * no-preference altında; hover/odak durumları reduced-motion'da kapanır.
 */

/* ---------- iki kolon ---------- */
.ozrt-grid-2{display:grid;gap:var(--s5);grid-template-columns:1fr 1fr}
.ozrt-grid-2>*{min-width:0} /* içteki <pre> grid'i şişirmesin */
.ozrt-h3{margin:0 0 var(--s4);font-size:18px}
.ozrt-mt{margin-top:var(--s4)}

/* ---------- numaralı adımlar (bağlantı çizgili) ---------- */
.ozrt-steps{counter-reset:ozrtStep;list-style:none;margin:var(--s5) 0 0;padding:0;display:grid;gap:var(--s4)}
.ozrt-step{position:relative;padding:var(--s5) var(--s5) var(--s5) 84px;background:var(--surface);
  border:1px solid var(--line);border-radius:var(--r2);box-shadow:var(--shadow-1);
  transition:border-color .25s var(--ease),box-shadow .25s var(--ease)}
.ozrt-step:hover{border-color:color-mix(in srgb,var(--cyan) 30%,var(--line2));box-shadow:var(--shadow-2)}
.ozrt-step::before{counter-increment:ozrtStep;content:counter(ozrtStep,decimal-leading-zero);
  position:absolute;left:var(--s5);top:var(--s5);width:44px;height:44px;border-radius:12px;
  background:linear-gradient(var(--surface2),var(--surface2)) padding-box,var(--grad) border-box;
  border:1px solid transparent;color:var(--text);
  display:flex;align-items:center;justify-content:center;font:700 14px/1 var(--mono)}
.ozrt-step:not(:last-child)::after{content:"";position:absolute;left:calc(var(--s5) + 21px);top:calc(var(--s5) + 46px);
  bottom:calc(-1 * var(--s4));width:1px;
  background:linear-gradient(180deg,color-mix(in srgb,var(--cyan) 50%,var(--line2)),transparent)}
.ozrt-step h3{margin:10px 0 var(--s2);font-size:17px}
.ozrt-step p{margin:0;color:var(--muted)}
.ozrt-step .ozrt-code{margin:var(--s3) 0 0}

/* ---------- dosya başlıklı kod bloğu ---------- */
.ozrt-code{margin:var(--s3) 0 0;background:var(--ink);border:1px solid var(--line);border-radius:var(--r1);
  overflow:hidden;box-shadow:var(--shadow-1)}
.ozrt-code-head{display:flex;align-items:center;gap:var(--s2);padding:8px var(--s4);
  border-bottom:1px solid var(--line);font:600 12px/1.6 var(--mono);color:var(--muted)}
.ozrt-code-head::before{content:"";flex:none;width:8px;height:8px;border-radius:50%;background:var(--teal);
  box-shadow:0 0 8px var(--glow-cyan)}
.ozrt-code pre{margin:0;padding:var(--s3) var(--s4);font:12.5px/1.7 var(--mono);color:var(--mint);
  white-space:pre-wrap;word-break:break-word;overflow-wrap:anywhere;max-width:100%}
.ozrt-code code{color:inherit;font-size:inherit;background:none;padding:0}

/* ---------- indirme matrisi (320px'te bile taşmaz) ---------- */
.ozrt-tablewrap{display:block;max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;
  border-radius:var(--r1);margin-top:var(--s4);scrollbar-width:thin; scrollbar-color:var(--line2) transparent}
.ozrt-table{min-width:680px;margin:0}
.ozrt-table th,.ozrt-table td{vertical-align:top}
.ozrt-table thead th{font:600 12px/1.4 var(--mono);letter-spacing:.04em;text-transform:uppercase;color:var(--muted)}
.ozrt-php{font:700 14px/1.4 var(--mono);color:var(--mint);white-space:nowrap}
.ozrt-none{color:var(--muted);opacity:.6}
.ozrt-cell{display:grid;gap:var(--s2);min-width:170px}
.ozrt-dl{font:600 12.5px/1.4 var(--mono);color:var(--mint);word-break:break-all;text-decoration:none;
  border-bottom:1px dashed color-mix(in srgb,var(--cyan) 45%,transparent)}
.ozrt-dl:hover{color:var(--text);border-bottom-style:solid}
.ozrt-sha{display:flex;align-items:center;gap:var(--s2);flex-wrap:wrap}
.ozrt-sha code{font:12px/1.4 var(--mono);color:var(--muted);overflow-wrap:anywhere;word-break:break-all;min-width:0}
.ozrt-copy{flex:none;cursor:pointer;font:600 11px/1 var(--ui);letter-spacing:.03em;color:var(--cyan);
  background:color-mix(in srgb,var(--cyan) 8%,var(--surface2));
  border:1px solid color-mix(in srgb,var(--cyan) 30%,var(--line));border-radius:999px;padding:5px 10px;
  transition:border-color .2s var(--ease),color .2s var(--ease),background .2s var(--ease)}
.ozrt-copy:hover{border-color:color-mix(in srgb,var(--cyan) 60%,var(--line2));color:var(--mint)}
.ozrt-copy:focus-visible{outline:2px solid var(--cyan);outline-offset:2px}
.ozrt-copy.ozrt-copied{color:var(--teal);border-color:color-mix(in srgb,var(--teal) 55%,var(--line));
  background:color-mix(in srgb,var(--teal) 10%,var(--surface2))}

/* ---------- legacy uçları notu ---------- */
.ozrt-legacy{margin-top:var(--s6);padding:var(--s5);background:var(--surface);border:1px solid var(--line);
  border-radius:var(--r2);box-shadow:var(--shadow-1)}
.ozrt-legacy h3{margin:0 0 var(--s2);font-size:16px}
.ozrt-legacy p{margin:0}
.ozrt-legacy-grid{display:grid;gap:var(--s4);grid-template-columns:1fr 1fr;margin-top:var(--s4)}

/* ---------- sorun giderme akordiyonu ---------- */
.ozrt-faq{display:grid;gap:var(--s3);margin-top:var(--s4)}
.ozrt-faq details{background:var(--surface);border:1px solid var(--line);border-radius:var(--r2);
  overflow:hidden;transition:border-color .25s var(--ease),box-shadow .25s var(--ease)}
.ozrt-faq details:hover{border-color:color-mix(in srgb,var(--cyan) 26%,var(--line2))}
.ozrt-faq details[open]{border-color:color-mix(in srgb,var(--cyan) 40%,var(--line2));box-shadow:var(--shadow-2)}
.ozrt-faq summary{list-style:none;cursor:pointer;display:flex;align-items:center;gap:var(--s3);
  padding:var(--s4) var(--s5);font:600 15px/1.45 var(--mono);color:var(--text);
  transition:color .2s var(--ease)}
.ozrt-faq summary::-webkit-details-marker{display:none}
.ozrt-faq summary::after{content:"";flex:none;margin-left:auto;width:10px;height:10px;
  border-right:2px solid var(--teal);border-bottom:2px solid var(--teal);
  transform:rotate(45deg);transition:transform .25s var(--ease)}
.ozrt-faq details[open] summary::after{transform:rotate(225deg)}
.ozrt-faq summary:hover{color:var(--mint)}
.ozrt-faq summary:focus-visible{outline:2px solid var(--cyan);outline-offset:-2px;border-radius:var(--r2)}
.ozrt-faq-a{padding:0 var(--s5) var(--s5);color:var(--muted)}
.ozrt-faq-a p{margin:0}

/* ---------- mobil (≤960px) ---------- */
@media (max-width:960px){
  .ozrt-grid-2,.ozrt-legacy-grid{grid-template-columns:1fr}
  .ozrt-step{padding:var(--s4) var(--s4) var(--s4) 70px}
  .ozrt-step::before{left:var(--s4);top:var(--s4);width:38px;height:38px}
  .ozrt-step:not(:last-child)::after{left:calc(var(--s4) + 18px);top:calc(var(--s4) + 40px)}
  .ozrt-faq summary{padding:var(--s4)}
  .ozrt-faq-a{padding:0 var(--s4) var(--s4)}
}
@media (max-width:560px){
  .ozrt-step{padding:var(--s4) var(--s4) var(--s4) 58px}
  .ozrt-step::before{width:32px;height:32px;left:var(--s3);top:var(--s4);border-radius:9px}
  .ozrt-step:not(:last-child)::after{left:calc(var(--s3) + 15px)}
  .ozrt-cell{min-width:0}
  .ozs-wrap{padding:0 var(--s4)}
}

/* ---------- hareket azaltma ---------- */
@media (prefers-reduced-motion:reduce){
  .ozrt-faq summary::after,.ozrt-faq details,.ozrt-step,.ozrt-copy{transition:none}
}
