:root {
  color-scheme: light dark;
  --zemin: #ffffff;
  --zemin-2: #f2f5f3;
  --metin: #17201b;
  --soluk: #4b5751;
  --sinir: #c9d3cd;
  --marka: #0b5f3a;
  --marka-metin: #0b5f3a;
  --on-marka: #ffffff;
  /* Ürün renkleri (2026-10-31): CAM yeşil (uygulama simgesi), CAD mavi (favicon-cad.svg), Alphacam Paketi amber.
     Kontrast: paket #8a4b00 beyazda 6.80, zemin-2'de 6.20; CAM #1a7a4c beyazda 5.34, zemin-2'de 4.88; CAD #1d4e89 beyazda 8.39, zemin-2'de 7.64. */
  --cam: #1a7a4c;
  --cam-metin: #1a7a4c;
  --on-cam: #ffffff;
  --cad: #1d4e89;
  --cad-metin: #1d4e89;
  --on-cad: #ffffff;
  --ap: #8a4b00;
  --ap-metin: #8a4b00;
  --on-ap: #ffffff;
  --odak: #b35900;
}
@media (prefers-color-scheme: dark) {
  :root {
    --zemin: #101513;
    --zemin-2: #18201c;
    --metin: #e8eeea;
    --soluk: #a7b4ad;
    --sinir: #34413a;
    --marka: #7fd6a8;
    --marka-metin: #7fd6a8;
    --on-marka: #0b1f15;
    /* koyu: CAM #7fe0a8 zeminde 11.5, üstünde #0b1f15 10.8; CAD #5cb8ff zeminde 8.6, üstünde #0c1a2c 8.1 */
    --cam: #7fe0a8;
    --cam-metin: #7fe0a8;
    --on-cam: #0b1f15;
    --cad: #5cb8ff;
    --cad-metin: #5cb8ff;
    --on-cad: #0c1a2c;
    /* koyu: paket #ffb454 zeminde 10.5, zemin-2'de 9.4, üstünde #2a1600 9.8 */
    --ap: #ffb454;
    --ap-metin: #ffb454;
    --on-ap: #2a1600;
    --odak: #f0b36e;
  }
}
*, *::before, *::after { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; }
body {
  margin: 0; background: var(--zemin); color: var(--metin);
  font: 16px/1.55 system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
}
img { max-width: 100%; height: auto; display: block; }
a { color: var(--marka-metin); text-underline-offset: 3px; }
:focus-visible { outline: 3px solid var(--odak); outline-offset: 2px; }
.atla { position: absolute; left: -999px; top: 0; background: var(--zemin); padding: 8px 12px; z-index: 10; }
.atla:focus { left: 16px; }
.kap { max-width: 1200px; margin: 0 auto; padding: 0 16px; }

/* Üst çubuk */
.ust { border-bottom: 1px solid var(--sinir); }
.ust .kap { display: flex; align-items: center; justify-content: space-between; gap: 12px; min-height: 56px; flex-wrap: wrap; }
.logo { display: inline-flex; align-items: center; gap: 8px; font-weight: 700; font-size: 1.1rem; color: var(--metin); text-decoration: none; }
.ust nav { display: flex; gap: 0 16px; flex-wrap: wrap; }
.ust nav a { color: var(--metin); padding: 10px 0; }
/* Üst menüde ürün hapları: CAM yeşil, CAD mavi (aynı biçim) */
.ust nav a.hap { align-self: center; padding: 6px 12px; margin: 4px 0; border: 2px solid var(--hap); border-radius: 999px; color: var(--hap-metin); font-weight: 700; text-decoration: none; }
.ust nav a.hap:hover { background: var(--hap); color: var(--on-hap); }
.hap--cam { --hap: var(--cam); --hap-metin: var(--cam-metin); --on-hap: var(--on-cam); }
.hap--ap { --hap: var(--ap); --hap-metin: var(--ap-metin); --on-hap: var(--on-ap); }
.hap--cad { --hap: var(--cad); --hap-metin: var(--cad-metin); --on-hap: var(--on-cad); }
.ust .diller { gap: 4px; }
.ust .diller a { padding: 10px 6px; font-size: .9em; }
.ust .diller a[aria-current] { font-weight: 700; text-decoration: none; }

/* Ana sayfa: üç ürün eşit kart (CAM · CAD · Alphacam Paketi), her biri kendi renginde; dar ekranda alt alta */
.urunler { list-style: none; margin: 24px 0; padding: 0; display: grid; gap: 16px; grid-template-columns: 1fr; }
@media (min-width: 900px) { .urunler { grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)); } }
.urun-kart {
  display: flex; flex-direction: column; gap: 14px; height: 100%; padding: 24px; min-width: 0;
  text-decoration: none; color: var(--metin); background: var(--zemin-2);
  border: 1px solid var(--sinir); border-top: 6px solid var(--k); border-radius: 14px;
}
.urun-kart--cam { --k: var(--cam); --k-metin: var(--cam-metin); }
.urun-kart--cad { --k: var(--cad); --k-metin: var(--cad-metin); }
.urun-kart--ap { --k: var(--ap); --k-metin: var(--ap-metin); }
.urun-kart h2 { margin: 0; font-size: clamp(1.6rem, 3vw, 2.1rem); line-height: 1.15; color: var(--k-metin); }
.urun-kart p { margin: 0; font-size: 1.05rem; color: var(--soluk); }
.urun-kart img { border-radius: 10px; border: 1px solid var(--sinir); width: 100%; height: auto; aspect-ratio: 16 / 10; object-fit: cover; margin-top: auto; background: var(--zemin); }
.urun-kart .git { font-weight: 700; text-decoration: underline; color: var(--k-metin); }
.urun-kart:hover .git { text-decoration-thickness: 3px; }
.urun-kart:hover { border-color: var(--k); border-top-color: var(--k); }
.rozet { display: inline-block; font-size: .8rem; font-weight: 600; padding: 2px 8px; border: 1px solid currentColor; border-radius: 999px; vertical-align: middle; }

/* Ürün sayfası */
.bas { padding: 32px 0 8px; }
.bas h1 { margin: 0 0 8px; font-size: clamp(2rem, 6vw, 3rem); line-height: 1.1; }
.bas p { margin: 0; color: var(--soluk); font-size: 1.1rem; }
.eylem { display: flex; flex-wrap: wrap; gap: 12px; margin: 20px 0 8px; }
.dugme {
  display: inline-flex; align-items: center; justify-content: center; min-height: 48px; padding: 10px 22px;
  border-radius: 10px; font-weight: 700; font-size: 1.05rem; text-decoration: none; border: 2px solid var(--vurgu);
}
.dugme--dolu { background: var(--vurgu); color: var(--on-vurgu); }
.dugme--bos { color: var(--vurgu-metin); background: transparent; }
.urun-ap { --vurgu: var(--marka); --vurgu-metin: var(--marka-metin); --on-vurgu: var(--on-marka); }
.urun-cam { --vurgu: var(--cam); --vurgu-metin: var(--cam-metin); --on-vurgu: var(--on-cam); }
/* Paket sayfası: .urun-ap'in marka yeşili yerine amber (bağlantı, kutu, düğmeler) */
.urun-paket { --marka: var(--ap); --marka-metin: var(--ap-metin); --on-marka: var(--on-ap); }
.urun-cad { --cam: var(--cad); --cam-metin: var(--cad-metin); --on-cam: var(--on-cad); --marka: var(--cad); --marka-metin: var(--cad-metin); --on-marka: var(--on-cad); }
.not { color: var(--soluk); font-size: .95rem; margin: 8px 0 0; }

/* Sekmeler — JS yokken tüm paneller alt alta görünür */
.sekmeler { margin: 28px 0 0; border-bottom: 1px solid var(--sinir); display: flex; gap: 4px; overflow-x: auto; }
.sekmeler a, .sekmeler button {
  font: inherit; font-weight: 600; color: var(--soluk); background: none; border: 0; border-bottom: 3px solid transparent;
  padding: 12px 14px; min-height: 44px; white-space: nowrap; cursor: pointer; text-decoration: none;
}
.sekmeler [aria-selected="true"], .sekmeler [aria-current="true"] { color: var(--metin); border-bottom-color: var(--vurgu); }
.panel { padding: 20px 0 8px; }
.panel > h2 { margin: 0 0 12px; font-size: 1.4rem; }
.js .panel > h2 { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); }
.panel ul { padding-left: 1.2em; }
.panel li { margin: 6px 0; }
.panel figure { margin: 16px 0; }
.panel figcaption { color: var(--soluk); font-size: .9rem; margin-top: 6px; }
.panel img { border-radius: 8px; border: 1px solid var(--sinir); }
.araclar { list-style: none; padding: 0 !important; display: grid; gap: 12px; }
.araclar li { border: 1px solid var(--sinir); border-radius: 10px; padding: 12px 14px; margin: 0; }
.araclar strong { display: block; }
.araclar span { color: var(--soluk); }
dl.sss dt { font-weight: 700; margin-top: 16px; }
dl.sss dd { margin: 4px 0 0; color: var(--metin); }

/* Video: tıklayınca yüklenir */
.videolar { display: grid; gap: 20px; grid-template-columns: 1fr; }
@media (min-width: 640px) { .videolar { grid-template-columns: 1fr 1fr; } }
.video { margin: 0; min-width: 0; }
.video a, .video iframe { display: block; position: relative; aspect-ratio: 16 / 9; width: 100%; border: 0; border-radius: 10px; overflow: hidden; background: #000; }
.video a img { width: 100%; height: 100%; object-fit: cover; border: 0; border-radius: 0; }
.video a::after {
  content: ""; position: absolute; left: 50%; top: 50%; width: 68px; height: 48px; transform: translate(-50%, -50%);
  border-radius: 12px; background: rgba(0, 0, 0, .75) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M8 5v14l11-7z' fill='%23fff'/%3E%3C/svg%3E") center / 30px no-repeat;
}
.video a:hover::after, .video a:focus-visible::after { background-color: #c00; }
.video figcaption { margin-top: 6px; font-weight: 600; }

/* Alt bilgi */
.alt { margin-top: 48px; border-top: 1px solid var(--sinir); background: var(--zemin-2); padding: 28px 0 96px; font-size: .95rem; }
.alt .kap { display: grid; gap: 20px; }
.alt p.kap { display: block; margin: 16px auto 0; padding: 0 16px; }
@media (min-width: 760px) { .alt .kap { grid-template-columns: 2fr 1fr 1fr 1fr; } }
.alt h2 { font-size: 1rem; margin: 0 0 8px; }
.alt p, .alt ul { margin: 0; padding: 0; list-style: none; color: var(--metin); }
.alt li { margin: 4px 0; }
.alt .kap > .tam { grid-column: 1 / -1; }
.alt ul.satir { display: flex; flex-wrap: wrap; gap: 4px 22px; }
.alt a { color: var(--metin); }
.ana .alt { margin-top: 0; }

/* WhatsApp */
.wa {
  position: fixed; right: 16px; bottom: 16px; z-index: 20; display: inline-flex; align-items: center; gap: 8px;
  min-height: 52px; min-width: 52px; padding: 0 18px 0 14px; border-radius: 999px;
  background: var(--marka); color: var(--on-marka); font-weight: 700; text-decoration: none; box-shadow: 0 4px 14px rgba(0, 0, 0, .25);
}
.wa svg { width: 26px; height: 26px; flex: none; }
@media (max-width: 420px) { .wa span { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); } .wa { padding: 0 13px; } }

.hata { padding: 64px 0; text-align: center; }
.hata h1 { font-size: 2.2rem; margin: 0 0 12px; }
.gizli { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }

/* İkincil sayfalar (deneme, araçlar, videolar, iletişim, hukuki) — ops/yeni-site-uret.mjs */
.metin { max-width: 860px; overflow-wrap: anywhere; }
.metin > h1 { margin: 32px 0 12px; font-size: clamp(1.8rem, 5vw, 2.4rem); line-height: 1.15; }
.metin h2 { margin: 32px 0 10px; font-size: 1.35rem; line-height: 1.25; }
.metin ul, .metin ol { padding-left: 1.3em; }
.metin li { margin: 6px 0; }
.metin address { font-style: normal; }
.metin table { width: 100%; min-width: 600px; border-collapse: collapse; font-size: .95rem; overflow-wrap: normal; }
.metin div:has(> table) { overflow-x: auto; }
.metin caption { text-align: left; font-weight: 600; padding: 6px 0; }
.metin th, .metin td { border: 1px solid var(--sinir); padding: 8px 10px; text-align: left; vertical-align: top; }
.metin th { background: var(--zemin-2); }
.icindekiler ul { list-style: none; padding: 0; display: flex; flex-wrap: wrap; gap: 8px 16px; }
.araclar a { font-weight: 600; }
.form { display: grid; gap: 16px; padding: 20px; border: 1px solid var(--sinir); border-radius: 12px; background: var(--zemin-2); }
@media (min-width: 640px) { .form { grid-template-columns: 1fr 1fr; } .form .alan--genis, .form .onay, .form button, .form > .ipucu { grid-column: 1 / -1; } }
.alan { min-width: 0; }
.alan label { display: block; font-weight: 600; margin-bottom: 4px; }
.alan input, .alan select, .alan textarea {
  width: 100%; min-height: 44px; padding: 8px 10px; font: inherit; color: var(--metin);
  background: var(--zemin); border: 1px solid var(--soluk); border-radius: 8px;
}
.alan[hidden] { display: none; }
.form fieldset { border: 0; padding: 0; margin: 0; display: grid; gap: 10px; min-width: 0; }
.form legend { font-weight: 700; padding: 0; margin-bottom: 8px; }
.onay { display: flex; gap: 10px; align-items: flex-start; }
.onay input { width: 22px; height: 22px; margin-top: 2px; flex: none; }
.form button { justify-self: start; cursor: pointer; font: inherit; font-weight: 700; }
.ipucu { margin: 4px 0 0; color: var(--soluk); font-size: .9rem; }
.bal { position: absolute; left: -9999px; width: 1px; height: 1px; overflow: hidden; }
.metin div:has(> a) { display: flex; flex-wrap: wrap; gap: 8px 20px; }
.hata-neden { border: 1px solid var(--sinir); border-radius: 8px; padding: 12px 16px; font-weight: 600; }
/* Alphacam rehberi (/alphacam/) */
.kirinti ol { list-style: none; padding: 0; margin: 20px 0 0; display: flex; flex-wrap: wrap; gap: 4px 0; font-size: .9rem; color: var(--soluk); }
.kirinti li + li::before { content: "/"; margin: 0 8px; }
.kutu { border: 1px solid var(--sinir); border-left: 4px solid var(--marka); border-radius: 8px; background: var(--zemin-2); padding: 12px 16px; margin: 20px 0; }
.kutu > :first-child { margin-top: 0; } .kutu > :last-child { margin-bottom: 0; }
.ekran { font-family: ui-monospace, SFMono-Regular, Consolas, monospace; font-size: .9em; background: var(--zemin-2); border: 1px solid var(--sinir); border-radius: 4px; padding: 0 4px; }
.metin h3 { margin: 24px 0 8px; font-size: 1.15rem; }
.metin details { border-bottom: 1px solid var(--sinir); padding: 10px 0; }
.metin summary { cursor: pointer; font-weight: 600; }
.rehber h3 { margin: 4px 0; font-size: 1.1rem; line-height: 1.3; }
.rehber p { margin: 4px 0 0; color: var(--soluk); }
.rehber span { font-size: .85rem; }
.araclar li.videolu { display: grid; gap: 12px; align-items: start; }
@media (min-width: 640px) { .araclar li.videolu { grid-template-columns: 1fr 240px; } }
.araclar li .video figcaption { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); }

/* "Her cihazda" bandı (ana sayfa + GMacros CAM; ops/yeni-site-uret.mjs CIHAZ_BANDI) */
.cihazlar { margin: 24px 0; padding: clamp(20px, 4vw, 36px); border-radius: 16px; background: var(--cam); color: var(--on-cam); }
.cihazlar h2 { margin: 0; font-size: clamp(1.7rem, 5.5vw, 2.8rem); line-height: 1.1; color: var(--on-cam); }
.cihazlar-alt { margin: 10px 0 20px; font-size: clamp(1.1rem, 2.6vw, 1.35rem); font-weight: 600; }
.cihazlar ul { list-style: none; margin: 0; padding: 0; display: grid; gap: 12px; grid-template-columns: repeat(auto-fit, minmax(min(100%, 150px), 1fr)); }
.cihazlar li {
  min-width: 0; display: flex; flex-direction: column; align-items: flex-start; gap: 6px; padding: 16px;
  border-radius: 12px; background: var(--zemin); color: var(--metin);
}
.cihaz-simge { color: var(--cam-metin); }
.cihaz-simge svg { display: block; width: 44px; height: 44px; }
.cihaz-ad { font-size: 1.3rem; font-weight: 800; color: var(--metin); }
.cihaz-durum { font-size: .9rem; font-weight: 700; padding: 2px 8px; border: 1px solid var(--soluk); border-radius: 999px; color: var(--metin); }
.cihaz-git { font-weight: 600; color: var(--cam-metin); padding: 4px 0; overflow-wrap: anywhere; }
.dis-simge { display: inline-block; vertical-align: -2px; }
.cihazlar ul.cihazlar-not { display: block; margin: 22px 0 0; padding: 0; list-style: none; }
.cihazlar .cihazlar-not li {
  display: block; position: relative; padding: 5px 0 5px 1.5em;
  border-radius: 0; background: none; color: var(--on-cam); font-size: 1.05rem; font-weight: 600;
}
.cihazlar .cihazlar-not li::before { content: "✓"; position: absolute; left: 0; font-weight: 800; }
.cihazlar .cihazlar-not li:first-child { font-size: clamp(1.15rem, 2.6vw, 1.4rem); }
.cihazlar .cihazlar-not strong { font-weight: 800; }
.cihazlar a:focus-visible { outline-color: var(--odak); }

/* Cihazlar arası akış (GMacros CAM; ops/yeni-site-uret.mjs akisBolumu) */
.akis { margin: 24px 0; padding: clamp(20px, 4vw, 36px); border: 1px solid var(--sinir); border-radius: 16px; background: var(--zemin-2); }
.akis h2 { margin: 0; font-size: clamp(1.5rem, 4.5vw, 2.2rem); line-height: 1.15; color: var(--cam-metin); }
.akis-alt { margin: 8px 0 16px; font-size: 1.1rem; color: var(--soluk); }
.akis-sema { display: block; width: 100%; max-width: 820px; height: auto; margin: 0 auto; color: var(--cam-metin); }
.akis ol { margin: 16px 0 0; padding: 0 0 0 1.4em; display: grid; gap: 12px 28px; grid-template-columns: repeat(auto-fit, minmax(min(100%, 190px), 1fr)); }
.akis li { min-width: 0; padding: 12px 14px; border-radius: 12px; background: var(--zemin); border: 1px solid var(--sinir); }
.akis li::marker { font-weight: 800; color: var(--cam-metin); }
.akis li strong { display: block; margin-bottom: 4px; }
.akis-not { margin: 14px 0 0; font-size: .95rem; color: var(--soluk); }

/* Müşteri yorumları (ana sayfa; ops/yeni-site-uret.mjs yorumBolumu) */
.yerli { margin: 24px 0; padding: clamp(20px, 4vw, 32px); border: 1px solid var(--sinir); border-left: 6px solid #e30a17; border-radius: 16px; background: var(--zemin-2); }
.yerli h2 { margin: 0 0 8px; font-size: clamp(1.5rem, 4.5vw, 2.2rem); line-height: 1.15; }
.yerli > p { margin: 0 0 16px; max-width: none; }
.yerli ul { list-style: none; margin: 0; padding: 0; display: grid; gap: 10px; grid-template-columns: 1fr; }
.yerli li { min-width: 0; padding: 14px 16px; border: 1px solid var(--sinir); border-radius: 12px; background: var(--zemin); }
.yorumlar { margin: 24px 0 40px; }
.yorumlar h2 { margin: 0 0 16px; font-size: clamp(1.5rem, 4.5vw, 2.2rem); line-height: 1.15; }
.yorumlar ul { list-style: none; margin: 0; padding: 0; display: grid; gap: 12px; grid-template-columns: 1fr; }
@media (min-width: 640px) { .yorumlar ul { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
.yorumlar li { min-width: 0; padding: 16px; border: 1px solid var(--sinir); border-radius: 12px; background: var(--zemin-2); }
.yorumlar figure { margin: 0; display: flex; flex-direction: column; gap: 10px; height: 100%; }
.yorumlar blockquote { margin: 0; flex: 1; }
.yorumlar blockquote p { margin: 0; }
.yorumlar figcaption { color: var(--soluk); font-size: .95rem; }
.yorumlar figcaption strong { color: var(--metin); }
.yorum-puan { margin: 0; font-weight: 700; color: var(--cam-metin); }
.yorum-not { margin: 12px 0 0; font-size: .95rem; color: var(--soluk); }

/* İletişim → Künye tablosu */
.kunye-tablo, .metin .kunye-tablo { width: 100%; min-width: 0; border-collapse: collapse; font-size: 1rem; }
.metin .kunye-tablo th { background: none; }
.kunye-tablo th, .kunye-tablo td { padding: 10px 12px; border-bottom: 1px solid var(--sinir); text-align: left; vertical-align: top; }
.kunye-tablo th { width: 34%; font-weight: 600; color: var(--soluk); background: none; }
@media (max-width: 560px) { .kunye-tablo th, .kunye-tablo td { display: block; width: auto; border: 0; padding: 2px 0; } .kunye-tablo td { padding-bottom: 12px; border-bottom: 1px solid var(--sinir); } }

/* Akış şeması hareketi: 8 sn döngü. Belge tabletten (x≈90) buluta (258) ve bilgisayara (405) gider. */
.akis-sema g { transform-box: fill-box; transform-origin: center; }
@media (prefers-reduced-motion: no-preference) {
  .akis-aygit { animation: akis-belir 8s ease-out infinite; }
  .akis-aygit.a2 { animation-delay: .6s; } .akis-aygit.a3 { animation-delay: 1.2s; } .akis-aygit.a4 { animation-delay: 1.8s; }
  .akis-ok path { stroke-dasharray: 60; animation: akis-ok 8s ease-in-out infinite; }
  .akis-ok.o3 path { stroke-dasharray: 5 5; animation-name: akis-kesik; }
  .akis-ok.o2 path { animation-delay: .6s; } .akis-ok.o3 path { animation-delay: 1.2s; }
  .akis-kalem { animation: akis-kalem 8s ease-in-out infinite; }
  .akis-cizim { stroke-dasharray: 180; animation: akis-ciz 8s ease-in-out infinite; }
  .akis-belge { animation: akis-belge 8s ease-in-out infinite; }
  .akis-grafik { stroke-dasharray: 80; animation: akis-grafik 8s ease-in-out infinite; }
  .akis-mil { animation: akis-mil 8s ease-in-out infinite; }
  .akis-kesim { stroke-dasharray: 80; animation: akis-kesim 8s linear infinite; }
}
@keyframes akis-belir { 0% { opacity: .25; transform: scale(.94); } 8%, 100% { opacity: 1; transform: none; } }
@keyframes akis-ok { 0%, 10% { stroke-dashoffset: 60; } 22%, 100% { stroke-dashoffset: 0; } }
@keyframes akis-kesik { 0%, 55% { opacity: 0; } 62%, 100% { opacity: 1; } }
@keyframes akis-ciz { 0% { stroke-dashoffset: 180; } 18%, 100% { stroke-dashoffset: 0; } }
@keyframes akis-kalem { 0% { transform: translate(-30px, 0); } 9% { transform: translate(-12px, -14px); } 18%, 100% { transform: none; } }
@keyframes akis-belge {
  0%, 18% { opacity: 0; transform: translate(-174px, 0); }
  22% { opacity: 1; transform: translate(-174px, 0); }
  34%, 42% { opacity: 1; transform: none; }
  54% { opacity: 1; transform: translate(160px, 0); }
  58%, 100% { opacity: 0; transform: translate(160px, 0); }
}
@keyframes akis-grafik { 0%, 54% { stroke-dashoffset: 80; } 64%, 100% { stroke-dashoffset: 0; } }
@keyframes akis-mil { 0%, 64% { transform: none; } 68% { transform: translate(-40px, 0); } 86% { transform: translate(40px, 0); } 96%, 100% { transform: none; } }
@keyframes akis-kesim { 0%, 68% { stroke-dashoffset: 80; } 86%, 100% { stroke-dashoffset: 0; } }
.kunye-alt { display: block; margin-top: 2px; font-size: .9rem; font-weight: 400; color: var(--soluk); }
.kunye-tablo th a { font-weight: 700; }
.iban { font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace; font-size: 1.02rem; white-space: nowrap; user-select: all; }
.kopyala { margin-left: 10px; min-height: 32px; padding: 2px 10px; border: 1px solid var(--sinir); border-radius: 8px; background: var(--zemin-2); color: var(--metin); font: inherit; font-size: .85rem; font-weight: 600; cursor: pointer; vertical-align: middle; }
.kopyala:hover { border-color: var(--cam-metin); }

/* GMacros CAD hareketli şeması (ops/yeni-site-uret.mjs CAD_SVG): 10 sn döngü; azaltılmış harekette son hali durağan. */
.cad-keskin, .cad-buda { opacity: 0; }
@media (prefers-reduced-motion: no-preference) {
  .cad-ciz { stroke-dasharray: 102; animation: cad-ciz 10s ease-in-out infinite; }
  .cad-imlec { animation: cad-imlec 10s ease-in-out infinite; }
  .cad-yakala { animation: cad-yakala 10s ease-out infinite; }
  .cad-buda { animation: cad-buda 10s ease-in-out infinite; }
  .cad-keskin { animation: cad-keskin 10s ease-in-out infinite; }
  .cad-yay { stroke-dasharray: 46; animation: cad-yay 10s ease-in-out infinite; }
  .cad-olcu { stroke-dasharray: 140; animation: cad-olcu 10s ease-in-out infinite; }
  .cad-olcu-yazi { animation: cad-olcu-yazi 10s ease-in-out infinite; }
  .cad-dxf { animation: cad-dxf 10s ease-out infinite; }
}
@keyframes cad-ciz { 0% { stroke-dashoffset: 102; } 14%, 100% { stroke-dashoffset: 0; } }
@keyframes cad-imlec { 0% { transform: translate(-80px, 62px); } 14%, 100% { transform: none; } }
@keyframes cad-yakala { 0%, 16% { opacity: 0; } 24%, 100% { opacity: 1; } }
@keyframes cad-buda { 0%, 32% { opacity: 1; } 40%, 100% { opacity: 0; } }
@keyframes cad-keskin { 0%, 40% { opacity: 1; } 48%, 100% { opacity: 0; } }
@keyframes cad-yay { 0%, 42% { stroke-dashoffset: 46; } 54%, 100% { stroke-dashoffset: 0; } }
@keyframes cad-olcu { 0%, 56% { stroke-dashoffset: 140; } 68%, 100% { stroke-dashoffset: 0; } }
@keyframes cad-olcu-yazi { 0%, 64% { opacity: 0; } 70%, 100% { opacity: 1; } }
@keyframes cad-dxf { 0%, 72% { opacity: 0; transform: translate(-24px, 0); } 82%, 100% { opacity: 1; transform: none; } }
.secim { border: 0; padding: 0; margin: 0; }
.secim legend { font-weight: 600; margin-bottom: 4px; padding: 0; }
.secim label { display: inline-flex; align-items: center; gap: 8px; min-height: 44px; margin-right: 24px; }
.secim input { width: 22px; height: 22px; min-height: 0; }

.komut { overflow-x: auto; background: var(--zemin-2); padding: 12px; border-radius: 6px; font-size: 13px; margin: 0; flex: 1; min-width: 0; }
.komut-kutu { display: flex; gap: 8px; align-items: flex-start; margin: 10px 0; }
.komut-kutu .kopyala { margin-left: 0; min-height: 44px; flex: none; }
