/* ============================================================
   SosyalBot — tasarım sistemi
   Vitrin (açık, kurumsal) + Uygulama (açık/koyu tema)
   ============================================================ */
:root {
  --font: 'Inter', 'Segoe UI', system-ui, -apple-system, sans-serif;
  /* Kurumsal palet: lacivert zemin + tek mavi vurgu */
  --lacivert: #0f172a; --birincil: #2563eb; --birincil-koyu: #1d4ed8; --birincil-acik: #eff6ff;
  --mor: #4f46e5; --pembe: #2563eb; --turuncu: #ea580c; --mavi: #2563eb; --yesil: #059669; --sari: #d97706; --kirmizi: #dc2626; --cyan: #0891b2;
  --gradyan: linear-gradient(135deg, #2563eb 0%, #1d4ed8 100%);
  --gradyan-yumusak: #eff6ff;
  --radius: 12px; --radius-sm: 8px; --radius-lg: 16px;
  --golge: 0 1px 2px rgba(15,23,42,.05), 0 4px 16px -8px rgba(15,23,42,.12);
  --golge-lg: 0 20px 50px -20px rgba(15,23,42,.3);
  --gecis: .2s cubic-bezier(.4,0,.2,1);

  /* Açık tema (uygulama varsayılanı) */
  --arka: #f4f6fa; --yuzey: #ffffff; --yuzey-2: #f8fafc; --yuzey-3: #eef2f7; --kenar: #e2e8f0; --kenar-2: #cbd5e1;
  --metin: #0f172a; --metin-2: #475569; --metin-3: #94a3b8; --vurgu: var(--birincil); --vurgu-metin: #fff;
  --yan-arka: #0f172a; --yan-metin: #cbd5e1;
}
[data-tema="koyu"] {
  --arka: #0b0e17; --yuzey: #121629; --yuzey-2: #171b30; --yuzey-3: #1e2340; --kenar: #23294a; --kenar-2: #2f3660;
  --metin: #eef2ff; --metin-2: #a5b0d0; --metin-3: #6b7699;
  --golge: 0 1px 2px rgba(0,0,0,.4), 0 8px 24px -12px rgba(0,0,0,.6);
  --yan-arka: #080b16;
}
* { box-sizing: border-box; }
html { scroll-behavior: smooth; -webkit-text-size-adjust: 100%; }
body { margin: 0; font-family: var(--font); font-size: 15px; line-height: 1.55; color: var(--metin); background: var(--arka); -webkit-font-smoothing: antialiased; }
a { color: inherit; text-decoration: none; }
img { max-width: 100%; display: block; }
h1,h2,h3,h4 { margin: 0 0 .5em; line-height: 1.2; font-weight: 700; letter-spacing: -.02em; }
h1 { font-size: 2.2rem } h2 { font-size: 1.6rem } h3 { font-size: 1.15rem } h4 { font-size: 1rem }
p { margin: 0 0 1em; }
small, .kucuk { font-size: .82rem; color: var(--metin-2); }
.soluk { color: var(--metin-3); }
.ikon { vertical-align: -3px; flex: none; }
code, .kod { font-family: ui-monospace, SFMono-Regular, Menlo, monospace; font-size: .85em; background: var(--yuzey-3); padding: .1em .4em; border-radius: 5px; }
pre.kod { padding: 12px 14px; overflow: auto; white-space: pre-wrap; word-break: break-all; }
hr { border: 0; border-top: 1px solid var(--kenar); margin: 20px 0; }
.kap { width: min(1180px, 100% - 40px); margin-inline: auto; }
.satir { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; }
.satir-arasi { justify-content: space-between; }
.sag { margin-left: auto; }
.merkez { text-align: center; }
.mt-0{margin-top:0}.mt-1{margin-top:8px}.mt-2{margin-top:16px}.mt-3{margin-top:24px}.mt-4{margin-top:40px}
.mb-0{margin-bottom:0}.mb-1{margin-bottom:8px}.mb-2{margin-bottom:16px}.mb-3{margin-bottom:24px}
.gizli { display: none !important; }
.gradyan-metin { color: var(--birincil); }

/* ---------- Butonlar ---------- */
.btn { display: inline-flex; align-items: center; justify-content: center; gap: 8px; padding: 10px 18px; border-radius: 11px; border: 1px solid transparent; font: inherit; font-weight: 600; font-size: .92rem; cursor: pointer; transition: transform var(--gecis), box-shadow var(--gecis), background var(--gecis), border-color var(--gecis), opacity var(--gecis); white-space: nowrap; line-height: 1.2; }
.btn:active { transform: translateY(1px) scale(.99); }
.btn:disabled { opacity: .55; cursor: not-allowed; }
.btn-birincil { background: var(--gradyan); color: #fff; box-shadow: 0 8px 20px -8px rgba(37,99,235,.45); }
.btn-birincil:hover { transform: translateY(-1px); box-shadow: 0 12px 28px -8px rgba(37,99,235,.5); }
.btn-ikincil { background: var(--yuzey); color: var(--metin); border-color: var(--kenar-2); }
.btn-ikincil:hover { border-color: var(--vurgu); color: var(--vurgu); }
.btn-hayalet { background: transparent; color: var(--metin-2); }
.btn-hayalet:hover { background: var(--yuzey-3); color: var(--metin); }
.btn-tehlike { background: rgba(239,68,68,.1); color: var(--kirmizi); }
.btn-tehlike:hover { background: var(--kirmizi); color: #fff; }
.btn-basari { background: rgba(16,185,129,.12); color: #059669; }
.btn-basari:hover { background: var(--yesil); color: #fff; }
.btn-beyaz { background: #fff; color: #111; }
.btn-buyuk { padding: 14px 26px; font-size: 1.02rem; border-radius: 14px; }
.btn-kucuk { padding: 6px 11px; font-size: .8rem; border-radius: 8px; gap: 5px; }
.btn-ikon { padding: 8px; width: 36px; height: 36px; border-radius: 10px; }
.btn-ikon.btn-kucuk { width: 30px; height: 30px; padding: 5px; }
.btn-tam { width: 100%; }
.dug-grup { display: inline-flex; gap: 6px; flex-wrap: nowrap; }

/* ---------- Form ---------- */
.form-grup { margin-bottom: 16px; }
.form-grup label:not(.anahtar):not(.secim-kart), .etiket { display: block; font-size: .85rem; font-weight: 600; color: var(--metin-2); margin-bottom: 6px; }
.girdi, .secim, .alan { width: 100%; padding: 10px 13px; border: 1px solid var(--kenar-2); border-radius: 10px; background: var(--yuzey); color: var(--metin); font: inherit; font-size: .93rem; transition: border-color var(--gecis), box-shadow var(--gecis); }
.girdi:focus, .secim:focus, .alan:focus { outline: none; border-color: var(--vurgu); box-shadow: 0 0 0 4px rgba(37,99,235,.15); }
.girdi.hatali { border-color: var(--kirmizi); }
.alan { min-height: 96px; resize: vertical; line-height: 1.5; }
.secim { appearance: none; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='none' stroke='%2394a3b8' stroke-width='2' viewBox='0 0 24 24'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E"); background-repeat: no-repeat; background-position: right 10px center; padding-right: 34px; }
.form-satir { display: grid; grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)); gap: 14px; }
.form-ipucu { font-size: .78rem; color: var(--metin-3); margin-top: 5px; }
.form-hata { font-size: .8rem; color: var(--kirmizi); margin-top: 5px; }
.girdi-grup { display: flex; align-items: stretch; }
.girdi-grup .girdi { border-radius: 10px 0 0 10px; }
.girdi-grup .btn { border-radius: 0 10px 10px 0; }
.onay { display: flex; align-items: flex-start; gap: 10px; cursor: pointer; font-size: .9rem; font-weight: 500; color: var(--metin); }
.onay input { width: 18px; height: 18px; margin: 2px 0 0; accent-color: var(--mor); flex: none; }
/* anahtar (toggle) */
.anahtar { position: relative; display: inline-flex; align-items: center; gap: 10px; cursor: pointer; font-size: .9rem; font-weight: 500; }
.anahtar input { position: absolute; opacity: 0; width: 0; height: 0; }
.anahtar .kaydirak { width: 42px; height: 24px; background: var(--kenar-2); border-radius: 30px; position: relative; transition: background var(--gecis); flex: none; }
.anahtar .kaydirak::after { content: ''; position: absolute; top: 3px; left: 3px; width: 18px; height: 18px; border-radius: 50%; background: #fff; transition: transform var(--gecis); box-shadow: 0 1px 3px rgba(0,0,0,.3); }
.anahtar input:checked + .kaydirak { background: var(--gradyan); }
.anahtar input:checked + .kaydirak::after { transform: translateX(18px); }
.anahtar input:focus-visible + .kaydirak { box-shadow: 0 0 0 4px rgba(37,99,235,.2); }
/* seçim kartları (radio kartlar) */
.secim-kartlar { display: grid; grid-template-columns: repeat(auto-fill, minmax(150px, 1fr)); gap: 10px; }
.secim-kart { position: relative; display: block; padding: 12px 14px; border: 1.5px solid var(--kenar); border-radius: 12px; background: var(--yuzey); cursor: pointer; transition: all var(--gecis); }
.secim-kart:hover { border-color: var(--kenar-2); transform: translateY(-1px); }
.secim-kart input { position: absolute; opacity: 0; }
.secim-kart b { display: flex; align-items: center; gap: 7px; font-size: .9rem; }
.secim-kart small { display: block; margin-top: 3px; color: var(--metin-3); line-height: 1.3; }
.secim-kart:has(input:checked) { border-color: var(--mor); background: linear-gradient(0deg, rgba(37,99,235,.06), rgba(37,99,235,.06)), var(--yuzey); box-shadow: 0 0 0 3px rgba(37,99,235,.12); }
/* chip girişi */
.chipler { display: flex; flex-wrap: wrap; gap: 6px; padding: 8px; border: 1px solid var(--kenar-2); border-radius: 10px; background: var(--yuzey); min-height: 46px; cursor: text; }
.chipler:focus-within { border-color: var(--vurgu); box-shadow: 0 0 0 4px rgba(37,99,235,.15); }
.chip { display: inline-flex; align-items: center; gap: 6px; padding: 4px 8px 4px 10px; border-radius: 20px; background: var(--gradyan-yumusak); color: var(--metin); font-size: .82rem; font-weight: 500; border: 1px solid rgba(37,99,235,.2); animation: chipGir .2s ease; }
.chip button { border: 0; background: rgba(0,0,0,.08); color: inherit; width: 18px; height: 18px; border-radius: 50%; cursor: pointer; font-size: 12px; line-height: 1; display: grid; place-items: center; padding: 0; }
.chip button:hover { background: var(--kirmizi); color: #fff; }
.chipler input { border: 0; outline: 0; background: transparent; flex: 1; min-width: 120px; font: inherit; color: var(--metin); padding: 4px; }
@keyframes chipGir { from { transform: scale(.7); opacity: 0 } to { transform: scale(1); opacity: 1 } }
/* yanıt varyantları */
.yanit-liste { display: flex; flex-direction: column; gap: 10px; }
.yanit-satir { display: flex; gap: 8px; align-items: flex-start; animation: yukari .25s ease; }
.yanit-satir .alan { min-height: 64px; }
.yanit-satir .no { width: 26px; height: 26px; border-radius: 8px; background: var(--gradyan); color: #fff; font-size: .75rem; font-weight: 700; display: grid; place-items: center; flex: none; margin-top: 8px; }
.degiskenler { display: flex; flex-wrap: wrap; gap: 5px; margin-top: 8px; }
.degiskenler button { border: 1px dashed var(--kenar-2); background: var(--yuzey-2); color: var(--metin-2); font: inherit; font-size: .75rem; padding: 3px 8px; border-radius: 20px; cursor: pointer; font-family: ui-monospace, monospace; }
.degiskenler button:hover { border-color: var(--mor); color: var(--mor); }

/* ---------- Kart / rozet / uyarı ---------- */
.kart { background: var(--yuzey); border: 1px solid var(--kenar); border-radius: var(--radius); box-shadow: var(--golge); padding: 20px 22px; }
.kart-baslik { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-bottom: 16px; }
.kart-baslik h3 { margin: 0; display: flex; align-items: center; gap: 8px; }
.kart-govde > :last-child { margin-bottom: 0; }
.rozet { display: inline-flex; align-items: center; gap: 5px; padding: 3px 9px; border-radius: 20px; font-size: .74rem; font-weight: 600; letter-spacing: .01em; line-height: 1.4; white-space: nowrap; }
.rozet-gri { background: var(--yuzey-3); color: var(--metin-2); }
.rozet-yesil { background: rgba(16,185,129,.14); color: #059669; }
.rozet-kirmizi { background: rgba(239,68,68,.13); color: #dc2626; }
.rozet-sari { background: rgba(245,158,11,.16); color: #b45309; }
.rozet-mavi { background: rgba(59,130,246,.14); color: #2563eb; }
.rozet-mor { background: rgba(79,70,229,.12); color: #4f46e5; }
.rozet-turuncu { background: rgba(249,115,22,.15); color: #ea580c; }
.rozet-gradyan { background: var(--gradyan); color: #fff; }
[data-tema="koyu"] .rozet-yesil { color: #34d399 } [data-tema="koyu"] .rozet-kirmizi { color: #f87171 } [data-tema="koyu"] .rozet-sari { color: #fbbf24 } [data-tema="koyu"] .rozet-mavi { color: #60a5fa } [data-tema="koyu"] .rozet-mor { color: #a78bfa } [data-tema="koyu"] .rozet-turuncu { color: #fb923c }
.nokta { width: 8px; height: 8px; border-radius: 50%; background: currentColor; display: inline-block; }
.nokta-canli { position: relative; }
.nokta-canli::after { content: ''; position: absolute; inset: -4px; border-radius: 50%; border: 2px solid currentColor; animation: nabiz 1.6s ease-out infinite; opacity: .6; }
@keyframes nabiz { 0% { transform: scale(.5); opacity: .8 } 100% { transform: scale(1.6); opacity: 0 } }
.uyari { display: flex; gap: 10px; align-items: flex-start; padding: 12px 14px; border-radius: 12px; font-size: .9rem; border: 1px solid; margin-bottom: 16px; animation: yukari .3s ease; }
.uyari-basari { background: rgba(16,185,129,.1); border-color: rgba(16,185,129,.3); color: #047857; }
.uyari-hata { background: rgba(239,68,68,.08); border-color: rgba(239,68,68,.3); color: #b91c1c; }
.uyari-uyari { background: rgba(245,158,11,.1); border-color: rgba(245,158,11,.35); color: #92400e; }
.uyari-bilgi { background: rgba(59,130,246,.08); border-color: rgba(59,130,246,.3); color: #1d4ed8; }
[data-tema="koyu"] .uyari-basari { color: #6ee7b7 } [data-tema="koyu"] .uyari-hata { color: #fca5a5 } [data-tema="koyu"] .uyari-uyari { color: #fcd34d } [data-tema="koyu"] .uyari-bilgi { color: #93c5fd }
.bos { text-align: center; padding: 44px 20px; color: var(--metin-2); }
.bos .ikon { color: var(--metin-3); margin-bottom: 8px; }
.bos h3 { color: var(--metin); }
.avatar { width: 40px; height: 40px; border-radius: 50%; object-fit: cover; background: var(--gradyan); color: #fff; display: inline-grid; place-items: center; font-weight: 700; flex: none; }
.avatar-lg { width: 64px; height: 64px; font-size: 1.4rem; }
.avatar-sm { width: 30px; height: 30px; font-size: .75rem; }
.ilerleme { height: 8px; background: var(--yuzey-3); border-radius: 10px; overflow: hidden; }
.ilerleme > i { display: block; height: 100%; background: var(--gradyan); border-radius: 10px; transition: width .8s cubic-bezier(.4,0,.2,1); }
.ilerleme.tehlike > i { background: var(--kirmizi); }
.izgara { display: grid; gap: 16px; }
.izgara-2 { grid-template-columns: repeat(2, 1fr); } .izgara-3 { grid-template-columns: repeat(3, 1fr); } .izgara-4 { grid-template-columns: repeat(4, 1fr); }
.izgara-oto { grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)); }
.izgara-2-1 { grid-template-columns: 2fr 1fr; }
@media (max-width: 1000px) { .izgara-4 { grid-template-columns: repeat(2, 1fr) } .izgara-3 { grid-template-columns: repeat(2, 1fr) } .izgara-2-1 { grid-template-columns: 1fr } }
@media (max-width: 640px) { .izgara-2, .izgara-3, .izgara-4 { grid-template-columns: 1fr } }

/* ---------- İstatistik kutusu ---------- */
.ist { background: var(--yuzey); border: 1px solid var(--kenar); border-radius: var(--radius); padding: 18px 20px; position: relative; overflow: hidden; box-shadow: var(--golge); transition: transform var(--gecis), box-shadow var(--gecis); }
.ist:hover { transform: translateY(-2px); box-shadow: var(--golge-lg); }
.ist::before { content: ''; position: absolute; inset: 0 auto 0 0; width: 4px; background: var(--ist-renk, var(--gradyan)); }
.ist .etiket { font-size: .8rem; color: var(--metin-2); margin: 0 0 6px; display: flex; align-items: center; gap: 6px; font-weight: 600; }
.ist .deger { font-size: 1.9rem; font-weight: 800; letter-spacing: -.03em; line-height: 1; }
.ist .alt { font-size: .78rem; color: var(--metin-3); margin-top: 8px; }
.ist .ikon-arka { position: absolute; right: 14px; top: 14px; width: 40px; height: 40px; border-radius: 12px; display: grid; place-items: center; background: var(--gradyan-yumusak); color: var(--mor); }
.ist-mor { --ist-renk: var(--mor) } .ist-pembe { --ist-renk: var(--pembe) } .ist-mavi { --ist-renk: var(--mavi) } .ist-yesil { --ist-renk: var(--yesil) } .ist-turuncu { --ist-renk: var(--turuncu) } .ist-sari { --ist-renk: var(--sari) } .ist-kirmizi { --ist-renk: var(--kirmizi) }

/* ---------- Tablo ---------- */
.tablo-sar { overflow-x: auto; border: 1px solid var(--kenar); border-radius: var(--radius); background: var(--yuzey); }
.tablo { width: 100%; border-collapse: collapse; font-size: .9rem; }
.tablo th, .tablo td { padding: 12px 14px; text-align: left; border-bottom: 1px solid var(--kenar); vertical-align: middle; }
.tablo th { font-size: .74rem; text-transform: uppercase; letter-spacing: .06em; color: var(--metin-3); font-weight: 700; background: var(--yuzey-2); position: sticky; top: 0; }
.tablo tr:last-child td { border-bottom: 0; }
.tablo tbody tr { transition: background var(--gecis); }
.tablo tbody tr:hover { background: var(--yuzey-2); }
.tablo td.daralt { width: 1%; white-space: nowrap; }
.tablo .kucuk { display: block; }
.sayfalama { display: flex; gap: 6px; justify-content: center; margin-top: 18px; flex-wrap: wrap; }
.sayfalama a, .sayfalama span { padding: 6px 12px; border-radius: 8px; border: 1px solid var(--kenar); font-size: .85rem; background: var(--yuzey); }
.sayfalama .aktif { background: var(--gradyan); color: #fff; border-color: transparent; }

/* ---------- Sekmeler / filtre ---------- */
.sekmeler { display: inline-flex; gap: 4px; padding: 4px; background: var(--yuzey-3); border-radius: 12px; flex-wrap: wrap; }
.sekmeler a, .sekmeler button, .sekmeler label { padding: 7px 14px; border-radius: 9px; font-size: .86rem; font-weight: 600; color: var(--metin-2); border: 0; background: transparent; cursor: pointer; font-family: inherit; transition: all var(--gecis); display: inline-flex; align-items: center; gap: 6px; }
.sekmeler a:hover, .sekmeler button:hover, .sekmeler label:hover { color: var(--metin); }
.sekmeler .aktif { background: var(--yuzey); color: var(--metin); box-shadow: var(--golge); }
.sekmeler .aktif .ikon { color: var(--mor); }

/* ---------- Modal / açılır ---------- */
.modal-arka { position: fixed; inset: 0; background: rgba(2,6,23,.55); backdrop-filter: blur(4px); z-index: 90; display: none; align-items: center; justify-content: center; padding: 20px; }
.modal-arka.acik { display: flex; animation: solukGir .2s ease; }
.modal { background: var(--yuzey); border-radius: var(--radius-lg); width: min(560px, 100%); max-height: 90vh; overflow: auto; box-shadow: var(--golge-lg); animation: modalGir .25s cubic-bezier(.34,1.56,.64,1); }
.modal-baslik { padding: 18px 22px; border-bottom: 1px solid var(--kenar); display: flex; align-items: center; justify-content: space-between; }
.modal-baslik h3 { margin: 0; }
.modal-govde { padding: 22px; }
.modal-alt { padding: 14px 22px; border-top: 1px solid var(--kenar); display: flex; justify-content: flex-end; gap: 8px; }
@keyframes modalGir { from { transform: translateY(20px) scale(.96); opacity: 0 } to { transform: none; opacity: 1 } }
@keyframes solukGir { from { opacity: 0 } to { opacity: 1 } }
.acilir { position: relative; }
.acilir-menu { position: absolute; right: 0; top: calc(100% + 8px); min-width: 220px; background: var(--yuzey); border: 1px solid var(--kenar); border-radius: 12px; box-shadow: var(--golge-lg); padding: 6px; z-index: 50; display: none; }
.acilir.acik .acilir-menu { display: block; animation: modalGir .18s ease; }
.acilir-menu a, .acilir-menu button { display: flex; align-items: center; gap: 9px; width: 100%; padding: 9px 11px; border-radius: 8px; font-size: .88rem; color: var(--metin); border: 0; background: none; cursor: pointer; font-family: inherit; text-align: left; }
.acilir-menu a:hover, .acilir-menu button:hover { background: var(--yuzey-3); }
.acilir-menu .tehlike { color: var(--kirmizi); }
.tost-kap { position: fixed; right: 20px; bottom: 20px; z-index: 100; display: flex; flex-direction: column; gap: 8px; }
.tost { background: #0f172a; color: #fff; padding: 12px 16px; border-radius: 12px; box-shadow: var(--golge-lg); font-size: .88rem; display: flex; align-items: center; gap: 10px; animation: yukari .3s ease; max-width: 360px; }
.tost.basari { border-left: 4px solid var(--yesil) } .tost.hata { border-left: 4px solid var(--kirmizi) }
[title] { cursor: help; }
.btn[title], a[title] { cursor: pointer; }

/* ============================================================
   UYGULAMA DÜZENİ (panel / yönetim)
   ============================================================ */
.uygulama { display: grid; grid-template-columns: 260px 1fr; min-height: 100vh; }
.yan-menu { background: var(--yan-arka); color: var(--yan-metin); padding: 18px 14px; position: sticky; top: 0; height: 100vh; overflow-y: auto; display: flex; flex-direction: column; gap: 4px; }
.yan-menu .logo { display: flex; align-items: center; gap: 10px; padding: 8px 10px 20px; color: #fff; font-weight: 800; font-size: 1.15rem; letter-spacing: -.02em; }
.logo-isaret { width: 34px; height: 34px; border-radius: 10px; background: var(--gradyan); display: grid; place-items: center; color: #fff; flex: none; box-shadow: 0 6px 16px -6px rgba(37,99,235,.5); }
.yan-menu .bolum { font-size: .68rem; text-transform: uppercase; letter-spacing: .12em; color: #64748b; padding: 14px 12px 6px; font-weight: 700; }
.yan-menu a.oge { display: flex; align-items: center; gap: 11px; padding: 10px 12px; border-radius: 10px; font-size: .9rem; font-weight: 500; color: #aab4cf; transition: all var(--gecis); position: relative; }
.yan-menu a.oge:hover { background: rgba(255,255,255,.06); color: #fff; }
.yan-menu a.oge.aktif { background: rgba(37,99,235,.22); color: #fff; }
.yan-menu a.oge.aktif::before { content: ''; position: absolute; left: 0; top: 8px; bottom: 8px; width: 3px; border-radius: 3px; background: var(--gradyan); }
.yan-menu a.oge .say { margin-left: auto; background: var(--birincil); color: #fff; font-size: .68rem; font-weight: 700; padding: 1px 7px; border-radius: 10px; }
.yan-menu .alt { margin-top: auto; padding-top: 14px; border-top: 1px solid rgba(255,255,255,.08); }
.yan-kullanici { display: flex; align-items: center; gap: 10px; padding: 10px 12px; border-radius: 10px; }
.yan-kullanici b { color: #fff; font-size: .88rem; display: block; }
.yan-kullanici small { color: #64748b; }
.paket-kutu { margin: 10px 4px 0; padding: 12px; border-radius: 12px; background: rgba(255,255,255,.05); border: 1px solid rgba(255,255,255,.08); }
.paket-kutu b { color: #fff; font-size: .85rem; }
.paket-kutu .ilerleme { background: rgba(255,255,255,.12); margin-top: 8px; height: 6px; }
.yan-perde { display: none; }
.ana { display: flex; flex-direction: column; min-width: 0; }
.ust-cubuk { display: flex; align-items: center; gap: 12px; padding: 14px 28px; background: var(--yuzey); border-bottom: 1px solid var(--kenar); position: sticky; top: 0; z-index: 40; }
.ust-cubuk h1 { font-size: 1.25rem; margin: 0; }
.ust-cubuk .menu-btn { display: none; }
.icerik { padding: 26px 28px 60px; animation: solukGir .3s ease; }
.sayfa-baslik { display: flex; align-items: flex-end; justify-content: space-between; gap: 16px; margin-bottom: 22px; flex-wrap: wrap; }
.sayfa-baslik h2 { margin: 0; font-size: 1.5rem; }
.sayfa-baslik p { margin: 4px 0 0; color: var(--metin-2); }
.hesap-secici { display: flex; align-items: center; gap: 8px; padding: 6px 10px 6px 6px; border: 1px solid var(--kenar-2); border-radius: 30px; background: var(--yuzey); font-size: .86rem; font-weight: 600; cursor: pointer; }
.zil-btn { position: relative; }
.zil-btn .say { position: absolute; top: 2px; right: 2px; min-width: 16px; height: 16px; padding: 0 4px; border-radius: 10px; background: var(--kirmizi); color: #fff; font-size: .62rem; font-weight: 700; display: grid; place-items: center; border: 2px solid var(--yuzey); }
.bildirim-liste { max-height: 380px; overflow: auto; }
.bildirim-liste .oge { display: block; padding: 10px 12px; border-radius: 8px; border-bottom: 1px solid var(--kenar); }
.bildirim-liste .oge.yeni { background: rgba(37,99,235,.05); }
.bildirim-liste b { display: block; font-size: .86rem; }
.bildirim-liste small { color: var(--metin-3); }
@media (max-width: 960px) {
  .uygulama { grid-template-columns: 1fr; }
  .yan-menu { position: fixed; left: 0; top: 0; width: 270px; transform: translateX(-100%); transition: transform .25s ease; z-index: 80; box-shadow: var(--golge-lg); }
  .yan-menu.acik { transform: none; }
  .yan-perde { position: fixed; inset: 0; background: rgba(0,0,0,.5); z-index: 70; display: none; }
  .yan-perde.acik { display: block; }
  .ust-cubuk .menu-btn { display: inline-flex; }
  .ust-cubuk, .icerik { padding-inline: 16px; }
}

/* ---------- Grafik ---------- */
.grafik-kap { position: relative; width: 100%; height: 260px; }
.grafik-kap canvas { width: 100% !important; height: 100% !important; }
.grafik-aciklama { display: flex; gap: 14px; flex-wrap: wrap; font-size: .8rem; color: var(--metin-2); margin-top: 8px; }
.grafik-aciklama i { display: inline-block; width: 10px; height: 10px; border-radius: 3px; margin-right: 6px; vertical-align: -1px; }
.halka { display: flex; align-items: center; gap: 18px; }
.halka canvas { width: 130px; height: 130px; }
.halka ul { list-style: none; padding: 0; margin: 0; font-size: .84rem; display: grid; gap: 6px; flex: 1; }
.halka li { display: flex; align-items: center; gap: 8px; }
.halka li b { margin-left: auto; }

/* ---------- Olay / akış öğeleri ---------- */
.olay { display: flex; gap: 12px; padding: 14px 0; border-bottom: 1px solid var(--kenar); animation: yukari .3s ease; }
.olay:last-child { border-bottom: 0; }
.olay .govde { flex: 1; min-width: 0; }
.olay .ust { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; font-size: .84rem; color: var(--metin-2); margin-bottom: 4px; }
.olay .ust b { color: var(--metin); }
.olay .metin { font-size: .93rem; }
.balon-yanit { margin-top: 8px; padding: 9px 12px; border-radius: 4px 12px 12px 12px; background: var(--gradyan-yumusak); border-left: 3px solid var(--mor); font-size: .87rem; }
.balon-yanit small { display: block; color: var(--metin-3); font-size: .72rem; margin-bottom: 2px; }
.gonderi-mini { width: 44px; height: 44px; border-radius: 8px; object-fit: cover; background: var(--yuzey-3); flex: none; }

/* ---------- Gönderi ızgarası ---------- */
.gonderi-izgara { display: grid; grid-template-columns: repeat(auto-fill, minmax(200px, 1fr)); gap: 14px; }
.gonderi-kart { background: var(--yuzey); border: 1px solid var(--kenar); border-radius: var(--radius); overflow: hidden; transition: transform var(--gecis), box-shadow var(--gecis); position: relative; }
.gonderi-kart:hover { transform: translateY(-3px); box-shadow: var(--golge-lg); }
.gonderi-kart.kapali { opacity: .6; }
.gonderi-kart .kapak { aspect-ratio: 1; background: var(--yuzey-3); position: relative; overflow: hidden; }
.gonderi-kart .kapak img { width: 100%; height: 100%; object-fit: cover; transition: transform .5s ease; }
.gonderi-kart:hover .kapak img { transform: scale(1.05); }
.gonderi-kart .tur { position: absolute; top: 8px; left: 8px; }
.gonderi-kart .sayac { position: absolute; bottom: 8px; left: 8px; right: 8px; display: flex; gap: 8px; font-size: .74rem; color: #fff; text-shadow: 0 1px 4px rgba(0,0,0,.7); font-weight: 600; }
.gonderi-kart .govde { padding: 12px; }
.gonderi-kart .aciklama { font-size: .8rem; color: var(--metin-2); height: 2.6em; overflow: hidden; line-height: 1.3; }
.gonderi-kart .alt { display: flex; align-items: center; justify-content: space-between; margin-top: 10px; gap: 6px; }
.kural-etiketler { display: flex; flex-wrap: wrap; gap: 4px; margin-top: 8px; }
.kural-etiketler span { font-size: .68rem; padding: 2px 7px; border-radius: 10px; background: rgba(37,99,235,.12); color: var(--mor); font-weight: 600; }
.gonderi-secici { display: grid; grid-template-columns: repeat(auto-fill, minmax(96px, 1fr)); gap: 8px; max-height: 340px; overflow: auto; padding: 4px; }
.gonderi-secici label { position: relative; cursor: pointer; border-radius: 10px; overflow: hidden; aspect-ratio: 1; background: var(--yuzey-3); border: 2px solid transparent; transition: all var(--gecis); }
.gonderi-secici label img { width: 100%; height: 100%; object-fit: cover; }
.gonderi-secici label input { position: absolute; opacity: 0; }
.gonderi-secici label:has(input:checked) { border-color: var(--mor); box-shadow: 0 0 0 3px rgba(37,99,235,.25); }
.gonderi-secici label:has(input:checked)::after { content: '✓'; position: absolute; top: 5px; right: 5px; width: 20px; height: 20px; border-radius: 50%; background: var(--mor); color: #fff; font-size: 12px; display: grid; place-items: center; }
.gonderi-secici .tur { position: absolute; bottom: 4px; left: 4px; font-size: .6rem; }

/* ---------- Kural kartı ---------- */
.kural-kart { display: grid; grid-template-columns: auto 1fr auto; gap: 16px; align-items: center; padding: 16px 18px; background: var(--yuzey); border: 1px solid var(--kenar); border-radius: var(--radius); transition: all var(--gecis); }
.kural-kart:hover { border-color: var(--kenar-2); box-shadow: var(--golge); }
.kural-kart.pasif { opacity: .6; }
.kural-kart .simge { width: 44px; height: 44px; border-radius: 12px; display: grid; place-items: center; background: var(--gradyan-yumusak); color: var(--mor); }
.kural-kart .simge.mesaj { color: var(--mavi); }
.kural-kart h4 { margin: 0 0 4px; display: flex; align-items: center; gap: 8px; flex-wrap: wrap; }
.kural-kart .meta { display: flex; flex-wrap: wrap; gap: 6px 14px; font-size: .8rem; color: var(--metin-2); }
.kural-kart .meta span { display: inline-flex; align-items: center; gap: 4px; }
.kural-kart .onizleme { font-size: .84rem; color: var(--metin-2); margin-top: 6px; font-style: italic; }
@media (max-width: 700px) { .kural-kart { grid-template-columns: auto 1fr; } .kural-kart > .dug-grup { grid-column: 1 / -1; justify-content: flex-end; } }
.form-bolum { padding: 22px 0; border-bottom: 1px solid var(--kenar); }
.form-bolum:first-child { padding-top: 0; }
.form-bolum:last-child { border-bottom: 0; }
.form-bolum h3 { display: flex; align-items: center; gap: 10px; }
.form-bolum h3 .adim { width: 28px; height: 28px; border-radius: 9px; background: var(--gradyan); color: #fff; font-size: .8rem; display: grid; place-items: center; }
.yapisik { position: sticky; top: 90px; }

/* ---------- Test laboratuvarı ---------- */
.sim-sonuc { border-radius: 14px; padding: 18px; background: var(--yuzey-2); border: 1px dashed var(--kenar-2); min-height: 120px; }
.sim-yorum { display: flex; gap: 10px; align-items: flex-start; }
.sim-yorum .balon { background: var(--yuzey); border: 1px solid var(--kenar); border-radius: 4px 14px 14px 14px; padding: 10px 14px; font-size: .9rem; }
.sim-yanit { display: flex; gap: 10px; margin-top: 12px; margin-left: 30px; animation: yukari .4s ease; }
.sim-yanit .balon { background: var(--gradyan); color: #fff; border-radius: 14px 4px 14px 14px; padding: 10px 14px; font-size: .9rem; }
.yaziyor { display: inline-flex; gap: 4px; padding: 10px 14px; background: var(--yuzey-3); border-radius: 14px; }
.yaziyor i { width: 7px; height: 7px; border-radius: 50%; background: var(--metin-3); animation: zipla 1s infinite; }
.yaziyor i:nth-child(2) { animation-delay: .15s } .yaziyor i:nth-child(3) { animation-delay: .3s }
@keyframes zipla { 0%,60%,100% { transform: translateY(0) } 30% { transform: translateY(-5px) } }

/* ---------- Fiyat kartları (ortak) ---------- */
.fiyat-izgara { display: grid; grid-template-columns: repeat(auto-fit, minmax(260px, 1fr)); gap: 20px; align-items: stretch; }
.fiyat-kart { position: relative; background: var(--yuzey); border: 1px solid var(--kenar); border-radius: 22px; padding: 30px 26px 26px; display: flex; flex-direction: column; transition: transform .3s ease, box-shadow .3s ease; }
.fiyat-kart:hover { transform: translateY(-6px); box-shadow: var(--golge-lg); }
.fiyat-kart .ust-satir { display: flex; align-items: center; gap: 10px; margin-bottom: 4px; }
.fiyat-kart .paket-ikon { width: 38px; height: 38px; border-radius: 11px; display: grid; place-items: center; background: var(--birincil-acik); color: var(--birincil); }
.fiyat-kart .ad { font-size: 1.15rem; font-weight: 700; color: var(--lacivert); }
.fiyat-kart .slogan { color: var(--metin-2); font-size: .86rem; margin: 6px 0 18px; }
.fiyat-kart .fiyat { font-size: 2.5rem; font-weight: 800; letter-spacing: -.04em; line-height: 1; color: var(--lacivert); }
.fiyat-kart .fiyat small { font-size: .9rem; font-weight: 500; color: var(--metin-2); letter-spacing: 0; }
.fiyat-kart .yillik-not { font-size: .78rem; color: var(--yesil); font-weight: 600; min-height: 1.2em; margin-top: 6px; }
.fiyat-kart ul { list-style: none; padding: 18px 0 0; margin: 18px 0 24px; border-top: 1px dashed var(--kenar); display: grid; gap: 10px; font-size: .9rem; flex: 1; }
.fiyat-kart li { display: flex; gap: 10px; align-items: flex-start; color: var(--metin); }
.fiyat-kart li .tik { width: 20px; height: 20px; border-radius: 50%; background: #ecfdf5; color: var(--yesil); display: grid; place-items: center; flex: none; margin-top: 1px; }
.fiyat-kart.one-cikan { background: radial-gradient(500px 260px at 100% 0%, rgba(37,99,235,.45), transparent 60%), var(--lacivert); color: #fff; border-color: transparent; transform: scale(1.03); box-shadow: 0 34px 60px -30px rgba(37,99,235,.7); }
.fiyat-kart.one-cikan:hover { transform: scale(1.03) translateY(-6px); }
.fiyat-kart.one-cikan .ad, .fiyat-kart.one-cikan .fiyat, .fiyat-kart.one-cikan li { color: #fff; }
.fiyat-kart.one-cikan .slogan, .fiyat-kart.one-cikan .fiyat small, .fiyat-kart.one-cikan .soluk { color: #cbd5e1; }
.fiyat-kart.one-cikan .yillik-not { color: #34d399; }
.fiyat-kart.one-cikan .paket-ikon { background: rgba(255,255,255,.12); color: #fff; }
.fiyat-kart.one-cikan ul { border-top-color: rgba(255,255,255,.15); }
.fiyat-kart.one-cikan li .tik { background: rgba(52,211,153,.18); color: #34d399; }
.fiyat-kart.one-cikan .btn-birincil { background: #fff; color: var(--lacivert); box-shadow: 0 10px 24px -10px rgba(0,0,0,.5); }
.fiyat-kart .etiket-one { position: absolute; top: -13px; left: 50%; transform: translateX(-50%); }
.donem-secici { display: inline-flex; align-items: center; gap: 12px; padding: 6px; background: var(--yuzey-3); border-radius: 30px; font-size: .88rem; font-weight: 600; }
.donem-secici button { border: 0; background: transparent; padding: 8px 18px; border-radius: 24px; font: inherit; font-weight: 600; color: var(--metin-2); cursor: pointer; transition: all var(--gecis); }
.donem-secici button.aktif { background: var(--yuzey); color: var(--metin); box-shadow: var(--golge); }
.donem-secici .indirim { background: var(--yesil); color: #fff; font-size: .7rem; padding: 2px 7px; border-radius: 10px; margin-left: 6px; }

/* ============================================================
   VİTRİN (açık zemin, kurumsal)
   ============================================================ */
.vitrin { background: #fff; color: var(--metin); overflow-x: hidden; }
.ust-nav { position: sticky; top: 0; z-index: 60; background: rgba(255,255,255,.92); backdrop-filter: blur(10px); border-bottom: 1px solid var(--kenar); }
.ust-nav .kap { display: flex; align-items: center; gap: 28px; height: 68px; }
.ust-nav .logo { display: flex; align-items: center; gap: 10px; font-weight: 800; font-size: 1.15rem; letter-spacing: -.02em; color: var(--lacivert); }
.ust-nav nav { display: flex; gap: 2px; margin-left: 8px; }
.ust-nav nav a { padding: 8px 12px; border-radius: 8px; font-size: .9rem; font-weight: 500; color: var(--metin-2); transition: all var(--gecis); }
.ust-nav nav a:hover { color: var(--lacivert); background: var(--yuzey-3); }
.ust-nav .sag { display: flex; gap: 8px; align-items: center; }
.ust-nav .menu-btn { display: none; }
@media (max-width: 860px) {
  .ust-nav nav { display: none; position: absolute; left: 0; right: 0; top: 68px; background: #fff; flex-direction: column; padding: 12px 20px 20px; border-bottom: 1px solid var(--kenar); box-shadow: var(--golge-lg); }
  .ust-nav nav.acik { display: flex; }
  .ust-nav .menu-btn { display: inline-flex; }
  .ust-nav .sag .btn-ikincil { display: none; }
}
/* kahraman */
.kahraman { position: relative; padding: 80px 0 60px; background: linear-gradient(180deg, #f8fafc 0%, #fff 100%); border-bottom: 1px solid var(--kenar); }
.parlama, .izgara-desen, .serit { display: none; }
.kahraman .kap { position: relative; display: grid; grid-template-columns: minmax(0, 1fr) 660px; gap: 40px; align-items: center; }
@media (max-width: 1100px) { .kahraman .kap { grid-template-columns: 1fr; } .sahne { margin-top: 30px; } }
.kahraman h1 { font-size: clamp(2.2rem, 4.6vw, 3.4rem); line-height: 1.1; margin-bottom: 18px; letter-spacing: -.03em; color: var(--lacivert); }
.kahraman h1 .gradyan-metin { color: var(--birincil); }
.kahraman .alt-metin { font-size: 1.1rem; color: var(--metin-2); max-width: 540px; margin-bottom: 26px; }
.kahraman .cta { display: flex; gap: 12px; flex-wrap: wrap; align-items: center; }
.ust-rozet { display: inline-flex; align-items: center; gap: 8px; padding: 5px 12px 5px 6px; border-radius: 30px; background: #fff; border: 1px solid var(--kenar); font-size: .8rem; font-weight: 600; color: var(--metin-2); margin-bottom: 20px; box-shadow: var(--golge); }
.ust-rozet .rozet { padding: 2px 8px; }
.guven { display: grid; grid-template-columns: repeat(4, auto); justify-content: start; gap: 18px; margin-top: 30px; padding-top: 22px; border-top: 1px solid var(--kenar); }
@media (max-width: 600px) { .guven { grid-template-columns: repeat(2, auto) } }
.guven div { display: flex; flex-direction: column; }
.guven b { font-size: 1.15rem; letter-spacing: -.02em; color: var(--lacivert); }
.guven small { color: var(--metin-3); font-size: .76rem; }
@media (max-width: 900px) { .kahraman .kap { grid-template-columns: 1fr; } .kahraman { padding: 44px 0 36px; } }
/* telefon demo — gerçek Instagram gönderi düzeni */
.sahne { position: relative; width: 340px; margin: 0 auto; }
.telefon { position: relative; width: 340px; background: #0b0f1a; border-radius: 44px; padding: 10px; box-shadow: 0 40px 80px -30px rgba(15,23,42,.55), inset 0 0 0 2px #1f2937; animation: sallan 9s ease-in-out infinite; }
@keyframes sallan { 0%,100% { transform: translateY(0) } 50% { transform: translateY(-10px) } }
.telefon .ekran { background: #fff; border-radius: 36px; overflow: hidden; height: 600px; position: relative; display: flex; flex-direction: column; font-size: .78rem; color: #0f172a; }
.telefon .centik { position: absolute; top: 10px; left: 50%; transform: translateX(-50%); width: 100px; height: 26px; background: #0b0f1a; border-radius: 20px; z-index: 5; }
.ig-durum { display: flex; justify-content: space-between; padding: 12px 22px 0; font-size: .7rem; font-weight: 600; }
.ig-durum span:last-child { letter-spacing: 1px; }
.ig-bar { display: flex; align-items: center; justify-content: space-between; padding: 8px 14px 6px; border-bottom: 1px solid #efefef; }
.ig-bar .marka { font-family: 'Inter', sans-serif; font-weight: 800; font-size: 1.05rem; letter-spacing: -.02em; }
.ig-bar .ikonlar { display: flex; gap: 14px; color: #0f172a; }
.ig-bar .ikonlar span { position: relative; }
.ig-bar .ikonlar .nokta-kirmizi { position: absolute; top: -3px; right: -4px; width: 8px; height: 8px; border-radius: 50%; background: #ef4444; border: 1.5px solid #fff; }
.ig-govde { flex: 1; overflow: hidden; position: relative; }
.ig-post-ust { display: flex; align-items: center; gap: 8px; padding: 8px 12px; }
.ig-post-ust .avatar { width: 30px; height: 30px; font-size: .65rem; background: linear-gradient(135deg, #f59e0b, #ef4444, #8b5cf6); padding: 2px; }
.ig-post-ust .avatar i { display: grid; place-items: center; width: 100%; height: 100%; border-radius: 50%; background: #0f172a; color: #fff; font-style: normal; font-weight: 700; border: 1.5px solid #fff; }
.ig-post-ust b { font-size: .78rem; display: block; line-height: 1.1; }
.ig-post-ust small { font-size: .64rem; color: #64748b; }
.ig-post-ust .uc-nokta { margin-left: auto; font-weight: 700; letter-spacing: 1px; }
.ig-medya { position: relative; height: 210px; background: radial-gradient(circle at 30% 30%, #cbd5e1, #64748b 70%); overflow: hidden; }
.ig-medya .urun { position: absolute; left: 50%; top: 50%; width: 120px; height: 150px; transform: translate(-50%, -50%) rotate(-6deg); background: linear-gradient(160deg, #f8fafc, #cbd5e1); border-radius: 10px; box-shadow: 0 20px 40px -18px rgba(0,0,0,.6); }
.ig-medya .urun::before { content: ''; position: absolute; inset: 12px 14px auto; height: 10px; border-radius: 6px; background: #94a3b8; }
.ig-medya .urun::after { content: ''; position: absolute; left: 14px; right: 14px; bottom: 14px; height: 40px; border-radius: 8px; background: #2563eb; opacity: .85; }
.ig-medya .reels-etiket { position: absolute; top: 10px; right: 10px; display: flex; align-items: center; gap: 4px; font-size: .62rem; background: rgba(0,0,0,.55); color: #fff; padding: 3px 8px; border-radius: 6px; font-weight: 600; }
.ig-medya .ses { position: absolute; bottom: 10px; right: 10px; width: 22px; height: 22px; border-radius: 50%; background: rgba(0,0,0,.55); color: #fff; display: grid; place-items: center; font-size: .6rem; }
.ig-medya .yazi { position: absolute; left: 12px; bottom: 12px; color: #fff; font-weight: 700; text-shadow: 0 1px 6px rgba(0,0,0,.6); font-size: .8rem; }
.ig-aksiyon { display: flex; align-items: center; gap: 14px; padding: 8px 12px 4px; color: #0f172a; }
.ig-aksiyon .kalp { color: #ef4444; animation: kalpAt 2.4s ease-in-out infinite; }
@keyframes kalpAt { 0%,100% { transform: scale(1) } 12% { transform: scale(1.25) } 24% { transform: scale(1) } }
.ig-aksiyon .sag { margin-left: auto; }
.ig-begeni { padding: 0 12px; font-weight: 700; font-size: .76rem; }
.ig-aciklama { padding: 2px 12px 6px; font-size: .75rem; line-height: 1.4; }
.ig-aciklama b { font-weight: 700; }
.ig-aciklama .etiket { color: #1d4ed8; }
.ig-aciklama .soluk { color: #64748b; display: block; margin-top: 2px; }
.ig-yorumlar { padding: 4px 12px 0; display: flex; flex-direction: column; gap: 8px; }
.yorum { display: flex; gap: 8px; align-items: flex-start; opacity: 0; transform: translateY(8px); transition: all .4s ease; }
.yorum.goster { opacity: 1; transform: none; }
.yorum .avatar { width: 24px; height: 24px; font-size: .58rem; background: #cbd5e1; color: #0f172a; }
.yorum .icerik { flex: 1; font-size: .74rem; line-height: 1.35; }
.yorum .icerik b { font-weight: 700; margin-right: 4px; }
.yorum .meta { display: flex; gap: 10px; font-size: .62rem; color: #64748b; margin-top: 2px; }
.yorum .kalp-kucuk { color: #94a3b8; margin-top: 4px; }
.yorum.bot { padding-left: 32px; }
.yorum.bot .avatar { background: #2563eb; color: #fff; }
.yorum.bot .otomatik { display: inline-flex; align-items: center; gap: 3px; font-size: .58rem; background: #eff6ff; color: #1d4ed8; border-radius: 6px; padding: 1px 5px; margin-left: 4px; vertical-align: 1px; font-weight: 600; }
.yorum .yaziyor { display: inline-flex; gap: 3px; padding: 6px 8px; background: #f1f5f9; border-radius: 10px; }
.yorum .yaziyor i { width: 5px; height: 5px; border-radius: 50%; background: #94a3b8; animation: zipla 1s infinite; }
.yorum .yaziyor i:nth-child(2) { animation-delay: .15s } .yorum .yaziyor i:nth-child(3) { animation-delay: .3s }
.ig-yorum-kutu { border-top: 1px solid #efefef; padding: 8px 12px 14px; display: flex; align-items: center; gap: 8px; background: #fff; }
.ig-yorum-kutu .avatar { width: 26px; height: 26px; font-size: .6rem; background: #0f172a; }
.ig-yorum-kutu .kutu { flex: 1; border: 1px solid #e2e8f0; border-radius: 20px; padding: 6px 12px; color: #94a3b8; font-size: .74rem; }
.ig-yorum-kutu .gonder { color: #2563eb; font-weight: 700; font-size: .74rem; }
.ig-bildirim { position: absolute; top: 46px; left: 10px; right: 10px; background: rgba(255,255,255,.92); backdrop-filter: blur(14px); -webkit-backdrop-filter: blur(14px); border: 1px solid rgba(15,23,42,.08); border-radius: 18px; padding: 10px 12px; display: flex; gap: 10px; align-items: center; font-size: .72rem; box-shadow: 0 16px 40px -14px rgba(15,23,42,.45); transform: translateY(-160%) scale(.96); opacity: 0; transition: transform .55s cubic-bezier(.34,1.4,.64,1), opacity .35s ease; z-index: 6; color: #0f172a; }
.ig-bildirim.goster { transform: none; opacity: 1; }
.ig-bildirim .simge { width: 36px; height: 36px; border-radius: 10px; background: linear-gradient(135deg, #2563eb, #1d4ed8); color: #fff; display: grid; place-items: center; flex: none; box-shadow: 0 6px 14px -6px rgba(37,99,235,.7); }
.ig-bildirim .govde { flex: 1; min-width: 0; }
.ig-bildirim .ust { display: flex; justify-content: space-between; font-size: .62rem; color: #64748b; }
.ig-bildirim .ust b { color: #0f172a; font-weight: 700; }
.ig-bildirim .baslik { font-weight: 700; font-size: .76rem; line-height: 1.2; }
.ig-bildirim small { color: #475569; font-size: .68rem; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; display: block; }
.yorum .icerik { min-width: 0; }
.yorum .avatar, .yorum .kalp-kucuk { flex: none; }
/* yüzen araçlar */
.yuzen-kart { --vurgu-k: var(--birincil); position: absolute; background: rgba(255,255,255,.88); backdrop-filter: blur(12px); -webkit-backdrop-filter: blur(12px); border: 1px solid rgba(15,23,42,.07); border-left: 3px solid var(--vurgu-k); border-radius: 14px; padding: 10px 14px 10px 12px; font-size: .68rem; color: var(--metin-2); display: flex; align-items: center; gap: 9px; box-shadow: 0 18px 40px -18px rgba(15,23,42,.35), 0 2px 6px rgba(15,23,42,.05); max-width: 165px; line-height: 1.3; z-index: 3; opacity: 0; animation: kartGir .7s cubic-bezier(.34,1.3,.64,1) forwards, yuzKart 6s ease-in-out 1s infinite; }
.yuzen-kart b { display: block; font-size: .8rem; color: var(--lacivert); letter-spacing: -.01em; }
.yuzen-kart .alt { display: block; color: var(--metin-3); }
.yuzen-kart .simge { width: 36px; height: 36px; border-radius: 10px; display: grid; place-items: center; flex: none; background: color-mix(in srgb, var(--vurgu-k) 12%, #fff); color: var(--vurgu-k); box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--vurgu-k) 20%, transparent); }
.yuzen-kart .canli { position: absolute; top: -4px; right: -4px; width: 12px; height: 12px; border-radius: 50%; background: var(--vurgu-k); border: 2px solid #fff; box-shadow: 0 0 0 0 color-mix(in srgb, var(--vurgu-k) 45%, transparent); animation: canliNabiz 2s ease-out infinite; }
@keyframes canliNabiz { 0% { box-shadow: 0 0 0 0 color-mix(in srgb, var(--vurgu-k) 45%, transparent) } 100% { box-shadow: 0 0 0 10px transparent } }
.yuzen-kart .cubuklar { display: flex; align-items: flex-end; gap: 3px; height: 22px; margin-top: 4px; }
.yuzen-kart .cubuklar i { width: 6px; border-radius: 3px 3px 1px 1px; background: linear-gradient(180deg, var(--vurgu-k), color-mix(in srgb, var(--vurgu-k) 55%, #fff)); animation: cubukBuyu 1s cubic-bezier(.34,1.3,.64,1) both; transform-origin: bottom; }
.yuzen-kart .cubuklar i:nth-child(2) { animation-delay: .1s } .yuzen-kart .cubuklar i:nth-child(3) { animation-delay: .2s } .yuzen-kart .cubuklar i:nth-child(4) { animation-delay: .3s } .yuzen-kart .cubuklar i:nth-child(5) { animation-delay: .4s } .yuzen-kart .cubuklar i:nth-child(6) { animation-delay: .5s } .yuzen-kart .cubuklar i:nth-child(7) { animation-delay: .6s }
@keyframes cubukBuyu { from { transform: scaleY(0) } to { transform: scaleY(1) } }
@keyframes kartGir { from { opacity: 0; transform: translateY(18px) scale(.94) } to { opacity: 1; transform: none } }
.yuzen-1 { top: 135px; left: -180px; animation-delay: .3s, 1s; } .yuzen-2 { bottom: 100px; right: -180px; animation-delay: .9s, 2.2s; } .yuzen-3 { top: 360px; left: -180px; animation-delay: .6s, 3.1s; } .yuzen-4 { top: 215px; right: -180px; animation-delay: 1.2s, 1.6s; }
@keyframes yuzKart { 0%,100% { transform: translateY(0) } 50% { transform: translateY(-8px) } }
.platform-halka { position: absolute; inset: 0; pointer-events: none; z-index: 1; }
.platform-halka span { position: absolute; width: 46px; height: 46px; border-radius: 14px; background: rgba(255,255,255,.9); backdrop-filter: blur(8px); border: 1px solid rgba(15,23,42,.07); box-shadow: 0 10px 24px -12px rgba(15,23,42,.35); display: grid; place-items: center; color: var(--lacivert); animation: yuzKart 5s ease-in-out infinite; }
.platform-halka span.pasif { color: #94a3b8; }
.platform-halka span:not(.pasif)::before { content: ''; position: absolute; inset: -6px; border-radius: 18px; border: 2px solid rgba(37,99,235,.35); animation: halkaNabiz 2.4s ease-out infinite; }
@keyframes halkaNabiz { 0% { transform: scale(.85); opacity: 1 } 100% { transform: scale(1.25); opacity: 0 } }
.platform-halka span::after { content: attr(data-etiket); position: absolute; top: calc(100% + 6px); left: 50%; transform: translateX(-50%); font-size: .6rem; white-space: nowrap; color: var(--metin-3); font-weight: 600; background: rgba(255,255,255,.85); padding: 1px 7px; border-radius: 8px; }
.platform-halka .p1 { top: -14px; left: -62px; } .platform-halka .p2 { top: -40px; right: -70px; animation-delay: -1.5s; } .platform-halka .p3 { bottom: 60px; left: -76px; animation-delay: -3s; } .platform-halka .p4 { bottom: -22px; right: -56px; animation-delay: -2.2s; }
@media (max-width: 1100px) { .yuzen-1, .yuzen-3 { left: -120px } .yuzen-2, .yuzen-4 { right: -120px } }
@media (max-width: 480px) { .sahne, .telefon { width: 290px } .yuzen-kart, .platform-halka { display: none } .telefon .ekran { height: 560px } }
/* akış zaman çizelgesi (hero altı, tam genişlik) */
.kahraman .kap.kap-blok { display: block; margin-top: 44px; }
.akis-zaman { position: relative; display: grid; grid-template-columns: repeat(5, 1fr); gap: 12px; padding: 26px 18px 22px; background: #fff; border: 1px solid var(--kenar); border-radius: 18px; box-shadow: var(--golge-lg); }
.akis-zaman .cizgi { position: absolute; left: 10%; right: 10%; top: 52px; height: 3px; background: var(--yuzey-3); border-radius: 3px; overflow: hidden; }
.akis-zaman .cizgi i { display: block; height: 100%; width: 100%; background: linear-gradient(90deg, var(--birincil), #60a5fa, var(--birincil)); background-size: 200% 100%; animation: akisAk 2.4s linear infinite; }
@keyframes akisAk { from { background-position: 200% 0 } to { background-position: 0 0 } }
.akis-zaman .adim { position: relative; text-align: center; padding-top: 4px; }
.akis-zaman .simge { position: relative; z-index: 1; width: 52px; height: 52px; border-radius: 16px; margin: 0 auto 12px; display: grid; place-items: center; background: #fff; color: var(--birincil); border: 2px solid var(--birincil-acik); box-shadow: 0 8px 20px -10px rgba(37,99,235,.5); transition: transform .3s; }
.akis-zaman .adim:hover .simge { transform: translateY(-4px) scale(1.06); background: var(--birincil); color: #fff; border-color: var(--birincil); }
.akis-zaman .no { position: absolute; top: -6px; left: calc(50% + 16px); z-index: 2; width: 20px; height: 20px; border-radius: 50%; background: var(--lacivert); color: #fff; font-size: .66rem; font-weight: 700; display: grid; place-items: center; border: 2px solid #fff; }
.akis-zaman b { display: block; font-size: .9rem; color: var(--lacivert); letter-spacing: -.01em; }
.akis-zaman small { display: block; color: var(--metin-3); font-size: .74rem; margin-top: 2px; }
@media (max-width: 860px) { .akis-zaman { grid-template-columns: repeat(2, 1fr); } .akis-zaman .cizgi { display: none } }
/* neler var — uçan sosyal ikonlar */
.neler-bolum { position: relative; overflow: hidden; }
.ucan-ikonlar { position: absolute; inset: 0; pointer-events: none; z-index: 0; }
.ucan-ikonlar span { position: absolute; width: 52px; height: 52px; border-radius: 16px; display: grid; place-items: center; background: #fff; border: 1px solid var(--kenar); box-shadow: 0 14px 30px -14px rgba(15,23,42,.3); color: var(--lacivert); opacity: .9; animation: ucus 12s ease-in-out infinite; }
.ucan-ikonlar .u1 { top: 8%; left: 4%; color: #e1306c; animation-duration: 11s } .ucan-ikonlar .u2 { top: 30%; left: 2%; color: #1877f2; animation-delay: -3s } .ucan-ikonlar .u3 { top: 62%; left: 5%; animation-delay: -6s; animation-duration: 14s } .ucan-ikonlar .u4 { top: 12%; right: 4%; color: #ff0000; animation-delay: -2s } .ucan-ikonlar .u5 { top: 40%; right: 2%; animation-delay: -8s } .ucan-ikonlar .u6 { top: 70%; right: 5%; color: #25d366; animation-delay: -4s; animation-duration: 13s } .ucan-ikonlar .u7 { top: 84%; left: 14%; color: #ef4444; width: 40px; height: 40px; animation-delay: -1s } .ucan-ikonlar .u8 { top: 86%; right: 16%; color: var(--birincil); width: 44px; height: 44px; animation-delay: -7s } .ucan-ikonlar .u9 { top: 4%; left: 22%; color: var(--birincil); width: 40px; height: 40px; animation-delay: -5s } .ucan-ikonlar .u10 { top: 6%; right: 20%; color: #e1306c; width: 38px; height: 38px; animation-delay: -9s }
@keyframes ucus { 0%,100% { transform: translate(0,0) rotate(-4deg) } 25% { transform: translate(14px,-22px) rotate(4deg) } 50% { transform: translate(-8px,-36px) rotate(-2deg) } 75% { transform: translate(-16px,-14px) rotate(5deg) } }
@media (max-width: 900px) { .ucan-ikonlar { display: none } }
.neler-bolum .kap { position: relative; z-index: 1; }
.platform-kartlar { display: grid; grid-template-columns: repeat(6, 1fr); gap: 12px; }
@media (max-width: 900px) { .platform-kartlar { grid-template-columns: repeat(3, 1fr) } } @media (max-width: 520px) { .platform-kartlar { grid-template-columns: repeat(2, 1fr) } }
.pk { background: #fff; border: 1px solid var(--kenar); border-radius: 16px; padding: 16px 12px; text-align: center; display: grid; gap: 8px; justify-items: center; transition: transform .25s, box-shadow .25s; }
.pk:hover { transform: translateY(-4px); box-shadow: var(--golge-lg); }
.pk.aktif { border-color: rgba(37,99,235,.35); box-shadow: 0 16px 36px -20px rgba(37,99,235,.5); }
.pk .logo-k { width: 48px; height: 48px; border-radius: 14px; display: grid; place-items: center; color: var(--pk); background: color-mix(in srgb, var(--pk) 10%, #fff); }
.pk:not(.aktif) .logo-k { filter: grayscale(1); opacity: .6; }
.pk b { font-size: .88rem; color: var(--lacivert); }
/* neler var — üç sütun */
.neler { display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; }
@media (max-width: 900px) { .neler { grid-template-columns: 1fr } }
.neler .kolon { background: #fff; border: 1px solid var(--kenar); border-radius: var(--radius-lg); padding: 24px; position: relative; overflow: hidden; }
.neler .kolon::before { content: ''; position: absolute; left: 0; right: 0; top: 0; height: 4px; background: var(--birincil); }
.neler .kolon:nth-child(2)::before { background: var(--lacivert); } .neler .kolon:nth-child(3)::before { background: var(--cyan); }
.neler .kolon h3 { display: flex; align-items: center; gap: 10px; font-size: 1.1rem; }
.neler .kolon h3 .simge { width: 38px; height: 38px; border-radius: 10px; background: var(--birincil-acik); color: var(--birincil); display: grid; place-items: center; }
.neler ul { list-style: none; padding: 0; margin: 14px 0 0; display: grid; gap: 9px; }
.neler li { display: flex; gap: 9px; align-items: flex-start; font-size: .9rem; color: var(--metin-2); }
.neler li .ikon { color: var(--yesil); margin-top: 2px; }
.neler li b { color: var(--lacivert); }
/* canlı örnek sahnesi (lacivert) */
.ornek-bolum { background: radial-gradient(900px 400px at 15% 0%, rgba(37,99,235,.35), transparent 60%), radial-gradient(700px 400px at 90% 100%, rgba(124,58,237,.3), transparent 60%), var(--lacivert); }
.ornek { background: rgba(255,255,255,.04); border: 1px solid rgba(255,255,255,.1); border-radius: 22px; overflow: hidden; display: grid; grid-template-columns: 300px 1fr; backdrop-filter: blur(8px); }
@media (max-width: 860px) { .ornek { grid-template-columns: 1fr } }
.ornek .liste { padding: 14px; display: flex; flex-direction: column; gap: 8px; border-right: 1px solid rgba(255,255,255,.08); }
.ornek .liste button { position: relative; overflow: hidden; text-align: left; border: 1px solid transparent; background: transparent; padding: 12px 14px; border-radius: 14px; font: inherit; color: #cbd5e1; cursor: pointer; display: flex; align-items: center; gap: 12px; transition: all var(--gecis); }
.ornek .liste button b { display: block; font-size: .92rem; color: #fff; }
.ornek .liste button small { display: block; color: #94a3b8; font-size: .74rem; }
.ornek .liste button .ik { width: 40px; height: 40px; border-radius: 12px; display: grid; place-items: center; background: rgba(255,255,255,.08); color: #93c5fd; flex: none; transition: all var(--gecis); }
.ornek .liste button:hover { background: rgba(255,255,255,.06); }
.ornek .liste button.aktif { background: rgba(37,99,235,.18); border-color: rgba(96,165,250,.4); }
.ornek .liste button.aktif .ik { background: var(--birincil); color: #fff; box-shadow: 0 8px 20px -8px rgba(37,99,235,.9); }
.ornek .liste button .sure { position: absolute; left: 0; bottom: 0; height: 3px; width: 0; background: linear-gradient(90deg, #60a5fa, #a78bfa); }
.ornek .liste button.aktif .sure { animation: sureDol 9s linear forwards; }
@keyframes sureDol { to { width: 100% } }
.ornek .sahne-alan { padding: 22px 24px 26px; display: block; }
.boru { display: flex; align-items: center; gap: 0; margin: 0 0 20px; }
.boru .dugum { display: flex; flex-direction: column; align-items: center; gap: 4px; min-width: 64px; }
.boru .dugum span { width: 40px; height: 40px; border-radius: 12px; display: grid; place-items: center; background: rgba(255,255,255,.08); color: #94a3b8; border: 1px solid rgba(255,255,255,.1); transition: all .4s; }
.boru .dugum small { font-size: .68rem; color: #94a3b8; font-weight: 600; }
.boru .dugum.aktif span { background: var(--birincil); color: #fff; border-color: #60a5fa; box-shadow: 0 0 0 6px rgba(37,99,235,.25), 0 10px 24px -8px rgba(37,99,235,.9); transform: scale(1.08); }
.boru .dugum.aktif small { color: #fff; }
.boru .dugum.bitti span { background: rgba(16,185,129,.2); color: #34d399; border-color: rgba(52,211,153,.4); }
.boru > i { flex: 1; height: 2px; background: rgba(255,255,255,.1); position: relative; overflow: hidden; margin: 0 6px 18px; }
.boru > i::after { content: ''; position: absolute; inset: 0; width: 0; background: linear-gradient(90deg, #60a5fa, #34d399); transition: width .5s; }
.boru > i.dolu::after { width: 100%; }
.sahne-ic { display: grid; grid-template-columns: 1fr 1.2fr; gap: 18px; align-items: start; }
@media (max-width: 700px) { .sahne-ic { grid-template-columns: 1fr } }
.ornek .kural-kutu { background: rgba(255,255,255,.05); border: 1px solid rgba(255,255,255,.1); border-radius: 14px; padding: 16px; font-size: .86rem; color: #e2e8f0; }
.ornek .kural-kutu small { display: block; color: #94a3b8; text-transform: uppercase; letter-spacing: .08em; font-size: .64rem; font-weight: 700; margin-bottom: 10px; }
.ornek .kural-kutu dl { display: grid; grid-template-columns: auto 1fr; gap: 8px 12px; margin: 0; }
.ornek .kural-kutu dt { color: #94a3b8; } .ornek .kural-kutu dd { margin: 0; color: #fff; font-weight: 500; }
.ornek .kural-kutu dd::before { content: ''; display: inline-block; width: 6px; height: 6px; border-radius: 50%; background: #60a5fa; margin-right: 8px; vertical-align: 2px; }
.sohbet-pencere { background: #fff; border-radius: 16px; overflow: hidden; box-shadow: 0 30px 60px -30px rgba(0,0,0,.7); }
.sp-ust { display: flex; align-items: center; gap: 6px; padding: 10px 12px; background: var(--yuzey-2); border-bottom: 1px solid var(--kenar); }
.sp-ust i { width: 10px; height: 10px; border-radius: 50%; background: #e2e8f0; } .sp-ust i:nth-child(1) { background: #fca5a5 } .sp-ust i:nth-child(2) { background: #fcd34d } .sp-ust i:nth-child(3) { background: #86efac }
.sp-ust span { margin-left: auto; font-size: .7rem; color: var(--metin-3); font-weight: 600; display: flex; align-items: center; gap: 6px; }
.sp-ust span::before { content: ''; width: 7px; height: 7px; border-radius: 50%; background: var(--yesil); animation: nabiz 1.6s ease-out infinite; }
.ornek .sohbet { display: flex; flex-direction: column; gap: 10px; padding: 16px; min-height: 230px; }
.ornek .sohbet .balon { display: flex; gap: 8px; align-items: flex-end; opacity: 0; transform: translateY(12px); animation: balonGir .45s cubic-bezier(.34,1.3,.64,1) forwards; }
@keyframes balonGir { to { opacity: 1; transform: none } }
.ornek .sohbet .avatar { width: 30px; height: 30px; font-size: .7rem; background: #cbd5e1; color: var(--lacivert); }
.ornek .sohbet .icerik { background: var(--yuzey-3); border-radius: 16px 16px 16px 4px; padding: 9px 13px; font-size: .88rem; max-width: 320px; color: var(--metin); }
.ornek .sohbet .icerik small { display: block; color: var(--metin-3); font-size: .68rem; margin-bottom: 2px; }
.ornek .sohbet .bot { flex-direction: row-reverse; }
.ornek .sohbet .bot .avatar { background: var(--birincil); color: #fff; }
.ornek .sohbet .bot .icerik { background: var(--birincil); color: #fff; border-radius: 16px 16px 4px 16px; }
.ornek .sohbet .bot .icerik small { color: #dbeafe; }
.ornek .sohbet .dm .icerik { background: var(--lacivert); color: #fff; }
.ornek .sohbet .dm .icerik small { color: #cbd5e1; }
.ornek .sohbet .yaziyor-b { display: inline-flex; gap: 4px; padding: 10px 14px; background: var(--yuzey-3); border-radius: 16px; }
.ornek .sohbet .yaziyor-b i { width: 6px; height: 6px; border-radius: 50%; background: var(--metin-3); animation: zipla 1s infinite; }
.ornek .sohbet .yaziyor-b i:nth-child(2) { animation-delay: .15s } .ornek .sohbet .yaziyor-b i:nth-child(3) { animation-delay: .3s }
/* platform şeridi */
.platformlar { display: flex; flex-wrap: wrap; justify-content: center; gap: 10px; }
.platformlar span { display: inline-flex; align-items: center; gap: 8px; padding: 9px 14px; border-radius: 30px; background: #fff; border: 1px solid var(--kenar); font-weight: 600; font-size: .88rem; color: var(--lacivert); box-shadow: var(--golge); }
.platformlar span.pasif { color: var(--metin-3); }
.platformlar span .rozet { padding: 2px 7px; font-size: .64rem; }

/* bölümler */
.bolum { padding: 80px 0; position: relative; }
.bolum-alt { background: var(--yuzey-2); border-block: 1px solid var(--kenar); }
.bolum-baslik { text-align: center; max-width: 640px; margin: 0 auto 44px; }
.etiket-ust { display: inline-block; font-size: .76rem; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; color: var(--birincil); margin-bottom: 10px; }
.bolum-baslik h2 { font-size: clamp(1.7rem, 3vw, 2.3rem); letter-spacing: -.025em; color: var(--lacivert); }
.bolum-baslik h2 .gradyan-metin { color: var(--birincil); }
.bolum-baslik p { color: var(--metin-2); font-size: 1.02rem; }
.ozellik-izgara { display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; }
@media (max-width: 900px) { .ozellik-izgara { grid-template-columns: repeat(2, 1fr) } }
@media (max-width: 600px) { .ozellik-izgara { grid-template-columns: 1fr } }
.ozellik { --oz: var(--birincil); position: relative; overflow: hidden; background: #fff; border: 1px solid var(--kenar); border-radius: 20px; padding: 26px 24px 24px; transition: transform .3s cubic-bezier(.34,1.2,.64,1), box-shadow .3s, border-color .3s; }
.ozellik::before { content: ''; position: absolute; inset: 0; background: radial-gradient(320px circle at var(--mx, 50%) var(--my, 50%), color-mix(in srgb, var(--oz) 14%, transparent), transparent 55%); opacity: 0; transition: opacity .35s; pointer-events: none; }
.ozellik::after { content: ''; position: absolute; left: 0; right: 0; top: 0; height: 3px; background: linear-gradient(90deg, var(--oz), color-mix(in srgb, var(--oz) 40%, #fff)); transform: scaleX(0); transform-origin: left; transition: transform .35s; }
.ozellik:hover { transform: translateY(-6px); box-shadow: 0 30px 50px -28px color-mix(in srgb, var(--oz) 55%, transparent), var(--golge-lg); border-color: color-mix(in srgb, var(--oz) 35%, var(--kenar)); }
.ozellik:hover::before, .ozellik:hover::after { opacity: 1; transform: none; }
.ozellik .simge { position: relative; width: 52px; height: 52px; border-radius: 15px; display: grid; place-items: center; background: linear-gradient(135deg, var(--oz), color-mix(in srgb, var(--oz) 65%, #fff)); color: #fff; margin-bottom: 16px; box-shadow: 0 10px 22px -10px color-mix(in srgb, var(--oz) 80%, transparent); transition: transform .35s cubic-bezier(.34,1.5,.64,1); }
.ozellik:hover .simge { transform: rotate(-6deg) scale(1.08); }
.ozellik .simge::after { content: ''; position: absolute; inset: -18px; border-radius: 50%; background: radial-gradient(circle, color-mix(in srgb, var(--oz) 22%, transparent), transparent 70%); z-index: -1; }
.ozellik h3 { font-size: 1.08rem; color: var(--lacivert); position: relative; }
.ozellik p { color: var(--metin-2); font-size: .9rem; margin: 0; position: relative; }
.ozellik .no { position: absolute; right: 18px; top: 14px; font-size: 2rem; font-weight: 800; letter-spacing: -.04em; color: color-mix(in srgb, var(--oz) 10%, transparent); }
.ozellik.buyuk { grid-column: auto; }
/* nasıl çalışır — yolculuk */
.yolculuk { display: grid; grid-template-columns: repeat(4, 1fr); gap: 18px; }
@media (max-width: 960px) { .yolculuk { grid-template-columns: repeat(2, 1fr) } } @media (max-width: 520px) { .yolculuk { grid-template-columns: 1fr } }
.yol-adim { --ya: var(--birincil); position: relative; background: #fff; border: 1px solid var(--kenar); border-radius: 20px; padding: 26px 22px 22px; transition: transform .3s cubic-bezier(.34,1.2,.64,1), box-shadow .3s; overflow: visible; }
.yol-adim:hover { transform: translateY(-6px); box-shadow: 0 30px 50px -28px color-mix(in srgb, var(--ya) 55%, transparent), var(--golge-lg); }
.yol-adim .no { position: absolute; top: -12px; left: 20px; padding: 3px 10px; border-radius: 20px; background: var(--ya); color: #fff; font-size: .72rem; font-weight: 800; letter-spacing: .04em; box-shadow: 0 6px 14px -6px color-mix(in srgb, var(--ya) 80%, transparent); }
.yol-adim .simge { width: 60px; height: 60px; border-radius: 18px; display: grid; place-items: center; color: #fff; background: linear-gradient(135deg, var(--ya), color-mix(in srgb, var(--ya) 60%, #fff)); box-shadow: 0 12px 26px -12px color-mix(in srgb, var(--ya) 90%, transparent); margin: 8px 0 16px; transition: transform .35s cubic-bezier(.34,1.5,.64,1); }
.yol-adim:hover .simge { transform: rotate(-6deg) scale(1.08); }
.yol-adim h3 { font-size: 1.05rem; color: var(--lacivert); }
.yol-adim p { color: var(--metin-2); font-size: .9rem; margin: 0 0 14px; }
.yol-adim .sure { display: inline-flex; align-items: center; gap: 5px; font-size: .72rem; font-weight: 700; color: var(--ya); background: color-mix(in srgb, var(--ya) 10%, #fff); padding: 4px 10px; border-radius: 20px; }
.yol-adim .bag { position: absolute; right: -19px; top: 50%; transform: translateY(-50%); width: 30px; height: 30px; border-radius: 50%; background: #fff; border: 1px solid var(--kenar); display: grid; place-items: center; color: var(--ya); z-index: 2; box-shadow: var(--golge); animation: okKay 1.6s ease-in-out infinite; }
@media (max-width: 960px) { .yol-adim .bag { display: none } }
/* kural → sonuç sahnesi */
.kural-sahne { display: grid; grid-template-columns: 1fr 90px 1fr; gap: 0; align-items: center; background: #fff; border: 1px solid var(--kenar); border-radius: 22px; padding: 22px; box-shadow: var(--golge-lg); }
@media (max-width: 860px) { .kural-sahne { grid-template-columns: 1fr; } .ks-sinyal { transform: rotate(90deg); margin: 10px auto; } }
.ks-kural { background: var(--yuzey-2); border: 1px solid var(--kenar); border-radius: 16px; padding: 16px; }
.ks-ust { display: flex; align-items: center; gap: 10px; margin-bottom: 12px; }
.ks-ust .simge { width: 40px; height: 40px; border-radius: 12px; display: grid; place-items: center; background: var(--birincil-acik); color: var(--birincil); }
.ks-ust b { display: block; color: var(--lacivert); font-size: .95rem; } .ks-ust small { color: var(--metin-3); }
.ks-chipler { display: flex; flex-wrap: wrap; gap: 6px; margin-bottom: 12px; }
.ks-chipler .chip { animation: chipGir .4s both; } .ks-chipler .chip:nth-child(2) { animation-delay: .1s } .ks-chipler .chip:nth-child(3) { animation-delay: .2s } .ks-chipler .chip:nth-child(4) { animation-delay: .3s } .ks-chipler .chip:nth-child(5) { animation-delay: .4s }
.ks-yanit small { display: block; font-size: .66rem; text-transform: uppercase; letter-spacing: .08em; color: var(--metin-3); font-weight: 700; margin-bottom: 6px; }
.ks-varyant { display: flex; gap: 8px; align-items: flex-start; background: #fff; border: 1px solid var(--kenar); border-radius: 10px; padding: 8px 10px; font-size: .84rem; margin-bottom: 6px; color: var(--metin); }
.ks-varyant .no { width: 20px; height: 20px; border-radius: 6px; background: var(--birincil); color: #fff; font-size: .68rem; font-weight: 700; display: grid; place-items: center; flex: none; }
.ks-sinyal { position: relative; height: 60px; display: flex; align-items: center; justify-content: center; }
.ks-sinyal::before { content: ''; position: absolute; left: 10px; right: 10px; top: 50%; height: 2px; background: var(--kenar-2); }
.ks-sinyal i { position: absolute; top: calc(50% - 4px); left: 10px; width: 8px; height: 8px; border-radius: 50%; background: var(--birincil); animation: sinyalAk 1.8s linear infinite; box-shadow: 0 0 10px var(--birincil); }
.ks-sinyal i:nth-child(2) { animation-delay: .6s } .ks-sinyal i:nth-child(3) { animation-delay: 1.2s }
@keyframes sinyalAk { from { left: 10px; opacity: 0 } 15% { opacity: 1 } 85% { opacity: 1 } to { left: calc(100% - 18px); opacity: 0 } }
.ks-sinyal span { position: relative; width: 40px; height: 40px; border-radius: 50%; background: var(--lacivert); color: #fff; display: grid; place-items: center; box-shadow: 0 0 0 6px rgba(15,23,42,.08); }
.ks-sonuc { display: grid; gap: 10px; }
.ks-yorum { display: flex; gap: 10px; align-items: flex-start; font-size: .88rem; color: var(--metin); padding: 10px 12px; border-radius: 14px; background: var(--yuzey-2); border: 1px solid var(--kenar); animation: yukari .5s both; }
.ks-yorum.cevap { margin-left: 28px; background: #fff; border-color: color-mix(in srgb, var(--birincil) 30%, var(--kenar)); animation-delay: .5s; }
.ks-yorum .avatar { width: 30px; height: 30px; font-size: .7rem; background: #cbd5e1; color: var(--lacivert); }
.ks-yorum.cevap .avatar { background: var(--lacivert); color: #fff; }
.ks-yorum b { color: var(--lacivert); } .ks-yorum .meta { font-size: .7rem; color: var(--metin-3); margin-top: 3px; }
.ks-dm { display: flex; gap: 10px; align-items: flex-start; margin-left: 28px; padding: 10px 12px; border-radius: 14px; background: var(--lacivert); color: #fff; font-size: .86rem; animation: yukari .5s 1s both; }
.ks-dm .simge { width: 28px; height: 28px; border-radius: 8px; background: var(--birincil); display: grid; place-items: center; flex: none; }
.ks-dm small { display: block; color: #93c5fd; font-size: .68rem; margin-bottom: 2px; }
/* sayaçlar (lacivert bant) */
.sayac-bant { position: relative; background: radial-gradient(700px 300px at 20% 0%, rgba(37,99,235,.35), transparent 60%), radial-gradient(600px 300px at 85% 100%, rgba(124,58,237,.3), transparent 60%), var(--lacivert); color: #fff; overflow: hidden; }
.sayac-bant::before { content: ''; position: absolute; inset: 0; background-image: linear-gradient(rgba(255,255,255,.04) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,.04) 1px, transparent 1px); background-size: 40px 40px; mask-image: radial-gradient(ellipse at center, #000 30%, transparent 75%); }
.sayaclar { position: relative; display: grid; grid-template-columns: repeat(4, 1fr); gap: 16px; }
@media (max-width: 900px) { .sayaclar { grid-template-columns: repeat(2, 1fr) } }
.sayac-kutu { position: relative; text-align: left; padding: 22px 22px 20px; border-radius: 18px; background: rgba(255,255,255,.05); border: 1px solid rgba(255,255,255,.1); backdrop-filter: blur(6px); transition: transform .3s, background .3s; }
.sayac-kutu:hover { transform: translateY(-4px); background: rgba(255,255,255,.08); }
.sayac-kutu .simge { width: 40px; height: 40px; border-radius: 12px; display: grid; place-items: center; background: rgba(96,165,250,.15); color: #93c5fd; margin-bottom: 14px; }
.sayac-kutu b { display: block; font-size: 2.3rem; font-weight: 800; letter-spacing: -.03em; color: #fff; line-height: 1; }
.sayac-kutu span { display: block; color: #e2e8f0; font-size: .92rem; font-weight: 600; margin-top: 8px; }
.sayac-kutu small { display: block; color: #94a3b8; font-size: .78rem; margin-top: 2px; }
/* referanslar */
.referanslar { display: grid; grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)); gap: 18px; }
.referans { position: relative; background: #fff; border: 1px solid var(--kenar); border-radius: 20px; padding: 28px 24px 22px; transition: transform .3s, box-shadow .3s; overflow: hidden; }
.referans:hover { transform: translateY(-5px); box-shadow: var(--golge-lg); }
.referans .tirnak { position: absolute; top: 4px; right: 18px; font-size: 6rem; line-height: 1; font-family: Georgia, serif; color: var(--birincil-acik); pointer-events: none; }
.referans .yildizlar { color: #f59e0b; letter-spacing: 2px; margin-bottom: 12px; font-size: .95rem; }
.referans p { font-size: .98rem; color: var(--lacivert); line-height: 1.6; position: relative; }
.referans .kim { display: flex; align-items: center; gap: 12px; margin-top: 18px; padding-top: 16px; border-top: 1px solid var(--kenar); }
.referans .kim .avatar { background: linear-gradient(135deg, #2563eb, #7c3aed); color: #fff; box-shadow: 0 0 0 3px #fff, 0 0 0 5px var(--birincil-acik); }
.referans .kim b { display: block; font-size: .92rem; color: var(--lacivert); }
.referans .kim small { color: var(--metin-3); }
.referans .olcum { margin-left: auto; display: inline-flex; align-items: center; gap: 5px; font-size: .72rem; font-weight: 700; color: var(--yesil); background: #ecfdf5; padding: 5px 10px; border-radius: 20px; white-space: nowrap; }
/* sss */
.sss-duzen { display: grid; grid-template-columns: 1fr 1.6fr; gap: 40px; align-items: start; }
@media (max-width: 860px) { .sss-duzen { grid-template-columns: 1fr } }
.sss-sol { position: sticky; top: 100px; }
.sss-sol h2 { font-size: clamp(1.7rem, 3vw, 2.3rem); letter-spacing: -.025em; color: var(--lacivert); }
.sss-sol p { color: var(--metin-2); margin-bottom: 18px; }
.sss-sol .btn { margin-right: 8px; margin-bottom: 8px; }
.sss { display: grid; gap: 10px; }
.sss details { background: #fff; border: 1px solid var(--kenar); border-left: 3px solid transparent; border-radius: 14px; padding: 0 20px; transition: border-color var(--gecis), box-shadow var(--gecis); }
.sss details[open] { border-left-color: var(--birincil); box-shadow: var(--golge); }
.sss summary { list-style: none; cursor: pointer; padding: 16px 0; font-weight: 600; display: flex; align-items: center; gap: 12px; color: var(--lacivert); }
.sss summary::-webkit-details-marker { display: none; }
.sss summary .q { width: 36px; height: 36px; border-radius: 10px; display: grid; place-items: center; background: var(--birincil-acik); color: var(--birincil); flex: none; }
.sss summary::after { content: ''; margin-left: auto; width: 10px; height: 10px; border-right: 2px solid var(--birincil); border-bottom: 2px solid var(--birincil); transform: rotate(45deg); transition: transform .25s; flex: none; }
.sss details[open] summary::after { transform: rotate(-135deg); }
.sss details p { color: var(--metin-2); padding: 0 0 18px 48px; margin: 0; font-size: .92rem; animation: yukari .3s ease; }
/* cta */
.cta-kutu { position: relative; overflow: hidden; border-radius: 28px; padding: 70px 30px 56px; text-align: center; background: radial-gradient(600px 300px at 15% 20%, rgba(37,99,235,.55), transparent 60%), radial-gradient(500px 300px at 85% 80%, rgba(14,165,233,.35), transparent 60%), var(--lacivert); color: #fff; }
.cta-kutu::before { content: ''; position: absolute; inset: 0; background-image: linear-gradient(rgba(255,255,255,.05) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,.05) 1px, transparent 1px); background-size: 40px 40px; mask-image: radial-gradient(ellipse at center, #000 20%, transparent 70%); }
.cta-kutu > * { position: relative; }
.cta-kutu h2 { font-size: clamp(1.8rem, 3.6vw, 2.8rem); color: #fff; margin-top: 14px; letter-spacing: -.03em; }
.cta-kutu p { color: #cbd5e1; font-size: 1.05rem; }
.cta-ikon { position: absolute !important; width: 48px; height: 48px; border-radius: 14px; display: grid; place-items: center; background: rgba(255,255,255,.08); border: 1px solid rgba(255,255,255,.14); color: #fff; animation: yuzKart 6s ease-in-out infinite; }
.cta-ikon.c1 { top: 30px; left: 6%; color: #f9a8d4 } .cta-ikon.c2 { bottom: 40px; left: 12%; animation-delay: -2s; color: #93c5fd } .cta-ikon.c3 { top: 40px; right: 8%; animation-delay: -3.5s; color: #93c5fd } .cta-ikon.c4 { bottom: 36px; right: 14%; animation-delay: -1s; color: #fca5a5 }
@media (max-width: 700px) { .cta-ikon { display: none } }
.cta-guven { display: flex; flex-wrap: wrap; justify-content: center; gap: 8px 22px; margin-top: 26px; font-size: .82rem; color: #cbd5e1; }
.cta-guven span { display: inline-flex; align-items: center; gap: 6px; }
.cta-guven .ikon { color: #34d399; }
.btn-beyaz { background: #fff; color: var(--lacivert); }
.btn-beyaz:hover { background: #f1f5f9; }
/* alt bilgi */
.alt-bilgi { position: relative; background: var(--lacivert); color: #94a3b8; padding: 60px 0 28px; font-size: .9rem; }
.alt-bilgi::before { content: ''; position: absolute; left: 0; right: 0; top: 0; height: 3px; background: linear-gradient(90deg, var(--birincil), #0ea5e9, var(--birincil)); }
.alt-bilgi .kap { display: grid; grid-template-columns: 1.7fr 1fr 1fr 1fr 1.3fr; gap: 30px; }
.alt-bilgi .marka .logo { color: #fff; font-weight: 800; font-size: 1.15rem; }
.alt-bilgi .marka p { max-width: 300px; margin: 14px 0 18px; line-height: 1.6; }
.alt-bilgi .sosyal { display: flex; gap: 8px; }
.alt-bilgi .sosyal a { width: 36px; height: 36px; border-radius: 10px; display: grid; place-items: center; background: rgba(255,255,255,.06); border: 1px solid rgba(255,255,255,.1); color: #cbd5e1; transition: all var(--gecis); }
.alt-bilgi .sosyal a:hover { background: var(--birincil); color: #fff; border-color: var(--birincil); transform: translateY(-2px); }
.alt-bilgi h4 { color: #fff; font-size: .8rem; text-transform: uppercase; letter-spacing: .1em; margin-bottom: 14px; }
.alt-bilgi ul { list-style: none; padding: 0; margin: 0; display: grid; gap: 10px; }
.alt-bilgi ul a { display: inline-flex; align-items: center; gap: 6px; transition: color var(--gecis), transform var(--gecis); }
.alt-bilgi ul a:hover { color: #fff; transform: translateX(3px); }
.alt-bilgi .durum { display: inline-flex; align-items: center; gap: 7px; font-size: .8rem; color: #34d399; }
.alt-bilgi .durum i { width: 8px; height: 8px; border-radius: 50%; background: #34d399; box-shadow: 0 0 0 0 rgba(52,211,153,.5); animation: canliNabiz 2s ease-out infinite; --vurgu-k: #34d399; }
.alt-bilgi .telif { grid-column: 1 / -1; border-top: 1px solid rgba(255,255,255,.1); padding-top: 20px; margin-top: 14px; display: grid; grid-template-columns: 1fr auto 1fr; gap: 12px; align-items: center; font-size: .8rem; color: #64748b; }
.alt-bilgi .telif .kucuk-not { text-align: center; }
.alt-bilgi .telif .diller { display: inline-flex; gap: 12px; align-items: center; justify-self: end; }
.alt-bilgi .telif .diller a.aktif { color: #fff; font-weight: 600; }
@media (max-width: 900px) { .alt-bilgi .kap { grid-template-columns: 1fr 1fr } .alt-bilgi .marka { grid-column: 1 / -1 } .alt-bilgi .telif { grid-template-columns: 1fr; text-align: center } .alt-bilgi .telif .diller { justify-self: center } }
/* vitrin fiyat kartları */
.sayfa-ic { padding: 60px 0 90px; }
.sayfa-ic .kap-dar { width: min(820px, 100% - 40px); margin-inline: auto; }
.yasal h1 { color: var(--lacivert); }
.yasal h2 { margin-top: 32px; font-size: 1.2rem; color: var(--lacivert); }
.yasal p, .yasal li { color: var(--metin-2); }

/* ---------- Kimlik düzeni ---------- */
/* ---------- Kimlik sayfaları (giriş / kayıt / şifre) ---------- */
.kimlik-govde { background: #f6f8fc; }
.kimlik-sayfa { min-height: 100vh; display: grid; grid-template-columns: minmax(0, 46%) minmax(0, 1fr); align-items: start; }
.kimlik-sol { position: sticky; top: 0; height: 100vh; overflow: hidden; display: flex; flex-direction: column; justify-content: space-between; padding: 36px 56px; background: var(--lacivert); color: #fff; }
.ks-izgara { position: absolute; inset: 0; background-image: linear-gradient(rgba(255,255,255,.045) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,.045) 1px, transparent 1px); background-size: 44px 44px; mask-image: radial-gradient(ellipse at 30% 40%, #000 30%, transparent 75%); }
.ks-parlak { position: absolute; width: 640px; height: 640px; left: -220px; top: -160px; border-radius: 50%; background: radial-gradient(circle, rgba(37,99,235,.5), transparent 62%); filter: blur(10px); animation: ksNefes 9s ease-in-out infinite; }
@keyframes ksNefes { 0%, 100% { transform: translate(0, 0) } 50% { transform: translate(40px, 30px) } }
.kimlik-sol > *:not(.ks-izgara):not(.ks-parlak) { position: relative; }
.ks-logo { color: #fff; font-weight: 800; font-size: 1.15rem; text-decoration: none; }
.ks-icerik { max-width: 470px; margin: 24px 0; }
.ks-etiket { display: inline-flex; align-items: center; gap: 8px; font-size: .74rem; font-weight: 600; letter-spacing: .04em; text-transform: uppercase; color: #93c5fd; background: rgba(37,99,235,.18); border: 1px solid rgba(147,197,253,.25); padding: 6px 12px; border-radius: 999px; margin-bottom: 20px; }
.ks-etiket i { width: 7px; height: 7px; border-radius: 50%; background: #60a5fa; box-shadow: 0 0 0 4px rgba(96,165,250,.25); animation: nabiz 2s infinite; }
.kimlik-sol h2 { font-size: clamp(1.7rem, 2.4vw, 2.3rem); line-height: 1.15; letter-spacing: -.03em; color: #fff; margin: 0 0 14px; }
.kimlik-sol h2 span { color: #93c5fd; }
.kimlik-sol p { color: #cbd5e1; font-size: .98rem; line-height: 1.6; }
.ks-sahne { margin: 22px 0; display: grid; gap: 10px; max-width: 400px; }
.ks-balon { display: flex; gap: 10px; align-items: flex-start; padding: 12px 14px; border-radius: 16px; font-size: .84rem; line-height: 1.45; animation: yukari .6s ease both; }
.ks-balon.gelen { background: rgba(255,255,255,.08); border: 1px solid rgba(255,255,255,.1); border-top-left-radius: 6px; }
.ks-balon.giden { background: #2563eb; margin-left: 34px; border-top-right-radius: 6px; box-shadow: 0 18px 40px -18px rgba(37,99,235,.8); animation-delay: .5s; }
.ks-balon b { display: block; font-size: .78rem; margin-bottom: 2px; }
.ks-balon b em { font-style: normal; font-weight: 500; opacity: .75; margin-left: 6px; font-size: .7rem; }
.ks-balon.gelen span { color: #e2e8f0; }
.ks-avatar { flex: 0 0 30px; width: 30px; height: 30px; border-radius: 50%; display: grid; place-items: center; font-weight: 700; font-size: .8rem; background: linear-gradient(135deg, #f59e0b, #ef4444); }
.ks-cip { justify-self: end; display: inline-flex; align-items: center; gap: 6px; font-size: .72rem; font-weight: 600; color: #a7f3d0; background: rgba(16,185,129,.14); border: 1px solid rgba(16,185,129,.3); padding: 5px 10px; border-radius: 999px; animation: yukari .6s ease 1s both; }
.ks-liste { list-style: none; padding: 0; margin: 0; display: grid; gap: 12px; }
.ks-liste li { display: flex; gap: 12px; align-items: center; color: #e2e8f0; font-size: .92rem; }
.ks-liste li span { flex: 0 0 32px; width: 32px; height: 32px; border-radius: 10px; display: grid; place-items: center; background: rgba(255,255,255,.08); border: 1px solid rgba(255,255,255,.1); color: #93c5fd; }
.ks-alt { display: flex; align-items: center; justify-content: space-between; color: #64748b; font-size: .8rem; }
.ks-platformlar { display: flex; gap: 6px; }
.ks-platformlar span { width: 28px; height: 28px; border-radius: 8px; display: grid; place-items: center; color: #64748b; background: rgba(255,255,255,.05); border: 1px solid rgba(255,255,255,.08); }
.ks-platformlar span.aktif { color: #fff; background: rgba(37,99,235,.35); border-color: rgba(96,165,250,.4); }
.kimlik-sag { min-height: 100vh; display: grid; grid-template-rows: auto 1fr auto; padding: 28px clamp(20px, 5vw, 64px); gap: 20px; min-width: 0; }
.kimlik-ust { display: flex; align-items: center; justify-content: space-between; }
.kimlik-ust .geri { display: inline-flex; align-items: center; gap: 6px; font-size: .86rem; font-weight: 600; color: var(--metin-2); text-decoration: none; }
.kimlik-ust .geri:hover { color: var(--birincil); }
.kimlik-kutu { width: min(440px, 100%); min-width: 0; margin: 0 auto; align-self: center; background: #fff; border: 1px solid var(--kenar); border-radius: 22px; padding: 36px 34px 30px; box-shadow: 0 30px 60px -40px rgba(15,23,42,.35); animation: yukari .5s ease; }
.kimlik-baslik { margin-bottom: 26px; }
.kimlik-ikon { width: 46px; height: 46px; border-radius: 14px; display: grid; place-items: center; background: linear-gradient(135deg, #2563eb, #1d4ed8); color: #fff; box-shadow: 0 12px 24px -12px rgba(37,99,235,.7); margin-bottom: 16px; }
.kimlik-baslik h1 { font-size: 1.55rem; letter-spacing: -.02em; color: var(--lacivert); margin: 0 0 4px; }
.kimlik-baslik p { color: var(--metin-3); font-size: .93rem; margin: 0; }
.kimlik-form .form-grup { margin-bottom: 16px; }
.kimlik-form label { font-size: .85rem; font-weight: 600; color: var(--metin-2); margin-bottom: 6px; display: block; }
.kimlik-form .satir { margin-bottom: 6px; }
.kimlik-form .satir label { margin: 0; }
.girdi-ikonlu { position: relative; }
.girdi-ikonlu > .ikon { position: absolute; left: 13px; top: 50%; transform: translateY(-50%); color: var(--metin-3); pointer-events: none; }
.girdi-ikonlu .girdi { padding-left: 40px; height: 46px; border-radius: 12px; }
.girdi-ikonlu:focus-within > .ikon { color: var(--birincil); }
.girdi-ikonlu .goster { position: absolute; right: 6px; top: 50%; transform: translateY(-50%); width: 34px; height: 34px; border: 0; border-radius: 9px; background: transparent; color: var(--metin-3); cursor: pointer; display: grid; place-items: center; }
.girdi-ikonlu .goster:hover { background: var(--yuzey-2); color: var(--metin); }
.girdi-ikonlu .goster .ikon + .ikon { display: none; }
.girdi-ikonlu .goster.acik .ikon { display: none; }
.girdi-ikonlu .goster.acik .ikon + .ikon { display: block; }
.girdi-ikonlu:has(.goster) .girdi { padding-right: 44px; }
.kimlik-form .btn-buyuk { height: 48px; font-size: .98rem; border-radius: 12px; margin-top: 6px; }
.kimlik-ayrac { position: relative; text-align: center; margin: 20px 0 14px; }
.kimlik-ayrac::before { content: ''; position: absolute; left: 0; right: 0; top: 50%; height: 1px; background: var(--kenar); }
.kimlik-ayrac span { position: relative; background: #fff; padding: 0 12px; font-size: .78rem; color: var(--metin-3); text-transform: uppercase; letter-spacing: .06em; }
.kimlik-alt-btn { height: 44px; border-radius: 12px; }
.kimlik-not { display: flex; gap: 6px; align-items: flex-start; margin: 18px 0 0; font-size: .76rem; color: var(--metin-3); line-height: 1.4; }
.kimlik-not .ikon { flex: 0 0 auto; margin-top: 2px; color: var(--yesil); }
.kimlik-guven { list-style: none; padding: 0; margin: 18px 0 0; display: flex; flex-wrap: wrap; gap: 6px 14px; justify-content: center; }
.kimlik-guven li { display: inline-flex; align-items: center; gap: 5px; font-size: .76rem; color: var(--metin-3); font-weight: 500; }
.kimlik-guven .ikon { color: var(--yesil); }
.kimlik-kutu .kucuk a, .kimlik-form .kucuk { color: var(--birincil); font-weight: 600; font-size: .82rem; text-decoration: none; }
.kimlik-kutu .onay { display: flex; gap: 10px; align-items: flex-start; font-size: .82rem; color: var(--metin-2); font-weight: 400; }
.kimlik-kutu .onay input { margin-top: 3px; accent-color: var(--birincil); }
.kimlik-kutu .onay a { color: var(--birincil); font-weight: 600; }
.sifre-guc { margin: -6px 0 16px; }
.sifre-guc .cubuk { display: grid; grid-template-columns: repeat(4, 1fr); gap: 4px; margin-bottom: 6px; }
.sifre-guc .cubuk i { height: 4px; border-radius: 4px; background: var(--kenar); transition: background .25s; }
.sifre-guc small { font-size: .74rem; color: var(--metin-3); }
.sifre-guc[data-seviye="1"] i:nth-child(-n+1) { background: var(--kirmizi); } .sifre-guc[data-seviye="2"] i:nth-child(-n+2) { background: #f59e0b; } .sifre-guc[data-seviye="3"] i:nth-child(-n+3) { background: #22c55e; } .sifre-guc[data-seviye="4"] i { background: #16a34a; }
.kimlik-adimlar { list-style: none; padding: 20px 0 0; margin: 22px 0 0; display: grid; gap: 12px; border-top: 1px solid var(--kenar); }
.kimlik-adimlar li { display: flex; gap: 12px; align-items: flex-start; }
.kimlik-adimlar li > span { flex: 0 0 26px; width: 26px; height: 26px; border-radius: 8px; display: grid; place-items: center; font-size: .74rem; font-weight: 700; color: var(--birincil); background: rgba(37,99,235,.1); }
.kimlik-adimlar b { display: block; font-size: .84rem; color: var(--lacivert); }
.kimlik-adimlar small { font-size: .76rem; color: var(--metin-3); line-height: 1.4; }
.kimlik-alt { display: flex; align-items: center; justify-content: center; gap: 18px; flex-wrap: wrap; font-size: .78rem; color: var(--metin-3); }
.kimlik-alt a { color: var(--metin-3); text-decoration: none; font-weight: 500; }
.kimlik-alt a:hover { color: var(--birincil); }
.ks-guvenli { display: inline-flex; align-items: center; gap: 5px; color: var(--yesil); font-weight: 600; }
@media (max-height: 820px) { .kimlik-sol .ks-liste { display: none; } .kimlik-sol p { display: none; } }
@media (max-width: 960px) { .kimlik-sayfa { grid-template-columns: minmax(0, 1fr); } .kimlik-sol { display: none; } .kimlik-sag { padding: 20px 16px; } .kimlik-kutu { padding: 28px 22px; } .kimlik-form .form-satir { grid-template-columns: minmax(0, 1fr); } }

/* ---------- Animasyonlar ---------- */
@keyframes yukari { from { opacity: 0; transform: translateY(14px) } to { opacity: 1; transform: none } }
.gorun { opacity: 0; transform: translateY(24px); transition: opacity .7s ease, transform .7s cubic-bezier(.2,.7,.2,1); }
.gorun.goruldu { opacity: 1; transform: none; }
.gecikme-1 { transition-delay: .1s } .gecikme-2 { transition-delay: .2s } .gecikme-3 { transition-delay: .3s } .gecikme-4 { transition-delay: .4s }
.yukleniyor { position: relative; pointer-events: none; opacity: .7; }
.yukleniyor::after { content: ''; position: absolute; width: 16px; height: 16px; border: 2px solid currentColor; border-right-color: transparent; border-radius: 50%; animation: don .7s linear infinite; right: 10px; top: calc(50% - 8px); }
@keyframes don { to { transform: rotate(360deg) } }
.iskelet { background: linear-gradient(90deg, var(--yuzey-3) 25%, var(--yuzey-2) 37%, var(--yuzey-3) 63%); background-size: 400% 100%; animation: iskelet 1.4s ease infinite; border-radius: 8px; }
@keyframes iskelet { 0% { background-position: 100% 50% } 100% { background-position: 0 50% } }
@media (prefers-reduced-motion: reduce) { *, *::before, *::after { animation-duration: .01ms !important; transition-duration: .01ms !important; } }
::selection { background: rgba(37,99,235,.35); }
::-webkit-scrollbar { width: 10px; height: 10px; } ::-webkit-scrollbar-thumb { background: var(--kenar-2); border-radius: 10px; border: 2px solid var(--arka); } ::-webkit-scrollbar-track { background: transparent; }
@media print { .yan-menu, .ust-cubuk, .btn { display: none !important } .uygulama { display: block } }

/* ---------- Gelişim paketi: öneriler, adaylar, raporlar, içerik, çekiliş, gelen kutusu, ekip ---------- */
.ist-sari { --ist-renk: #f59e0b } .ist-kirmizi { --ist-renk: var(--kirmizi) }
.oneri-kart { padding: 18px 20px; }
.oneri-ust { display: flex; gap: 14px; align-items: flex-start; }
.oneri-ikon { flex: 0 0 44px; width: 44px; height: 44px; border-radius: 12px; display: grid; place-items: center; background: rgba(37,99,235,.1); color: var(--birincil); }
.oneri-ornek { margin: 0; padding-left: 16px; font-size: .82rem; color: var(--metin-2); line-height: 1.5; }
.mini-ist { background: var(--yuzey-2); border-radius: 10px; padding: 10px 6px; }
.mini-ist b { display: block; font-size: 1.15rem; } .mini-ist small { color: var(--metin-3); font-size: .74rem; }
.rapor-kart { text-decoration: none; color: inherit; display: block; transition: transform var(--gecis), box-shadow var(--gecis); }
.rapor-kart:hover { transform: translateY(-2px); box-shadow: var(--golge-lg); }
.rapor-yorum { white-space: pre-line; line-height: 1.7; font-size: .95rem; padding: 16px 18px; border-left: 3px solid var(--birincil); background: var(--yuzey-2); border-radius: 0 12px 12px 0; }
.icerik-kutu { padding: 14px 16px; border: 1px solid var(--kenar); border-radius: 12px; margin-bottom: 12px; background: var(--yuzey-2); }
.icerik-metin { white-space: pre-line; line-height: 1.6; font-size: .93rem; }
.takvim-liste { display: grid; gap: 10px; }
.takvim-gun { padding: 12px 14px; border: 1px solid var(--kenar); border-radius: 12px; display: grid; gap: 4px; background: var(--yuzey-2); }
.tg-ust { display: flex; align-items: center; gap: 8px; }
.gecmis-satir { display: flex; align-items: center; justify-content: space-between; gap: 8px; padding: 8px 0; border-bottom: 1px solid var(--kenar); }
.gecmis-satir:last-child { border-bottom: 0; }
.kazanan-kutu { padding: 12px 14px; border-radius: 12px; background: rgba(37,99,235,.08); border: 1px solid rgba(37,99,235,.2); margin-bottom: 12px; }
.buton-satir { margin-top: 6px; grid-template-columns: 1fr 2fr; }
/* gelen kutusu */
.gelen-kutusu { display: grid; grid-template-columns: 320px minmax(0, 1fr); border: 1px solid var(--kenar); border-radius: var(--radius); background: var(--yuzey); overflow: hidden; min-height: 560px; height: calc(100vh - 210px); }
.gk-liste { border-right: 1px solid var(--kenar); overflow-y: auto; display: flex; flex-direction: column; }
.gk-ara { padding: 10px; border-bottom: 1px solid var(--kenar); position: sticky; top: 0; background: var(--yuzey); z-index: 1; }
.gk-kisi { display: flex; align-items: center; gap: 10px; padding: 11px 12px; border-bottom: 1px solid var(--kenar); color: inherit; text-decoration: none; transition: background var(--gecis); }
.gk-kisi:hover { background: var(--yuzey-2); } .gk-kisi.aktif { background: rgba(37,99,235,.09); }
.gk-kisi .say { background: var(--birincil); color: #fff; font-size: .68rem; font-weight: 700; min-width: 20px; height: 20px; border-radius: 10px; display: grid; place-items: center; padding: 0 6px; }
.gk-son { white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.gk-sohbet { display: flex; flex-direction: column; min-width: 0; }
.gk-ust { display: flex; align-items: center; gap: 12px; padding: 12px 16px; border-bottom: 1px solid var(--kenar); }
.gk-lead { padding: 8px 16px; font-size: .8rem; background: rgba(16,185,129,.1); color: #047857; border-bottom: 1px solid var(--kenar); }
.gk-mesajlar { flex: 1; overflow-y: auto; padding: 16px; display: flex; flex-direction: column; gap: 10px; background: var(--arka); }
.gk-balon { max-width: 72%; padding: 10px 14px; border-radius: 16px; font-size: .9rem; line-height: 1.45; animation: yukari .25s ease; }
.gk-balon.gelen { align-self: flex-start; background: var(--yuzey); border: 1px solid var(--kenar); border-top-left-radius: 4px; }
.gk-balon.giden { align-self: flex-end; background: var(--birincil); color: #fff; border-top-right-radius: 4px; }
.gk-balon .meta { font-size: .68rem; opacity: .7; margin-top: 4px; }
.gk-yaz { display: flex; gap: 8px; padding: 12px 16px 8px; border-top: 1px solid var(--kenar); align-items: flex-end; }
.gk-yaz textarea { flex: 1; resize: none; }
@media (max-width: 900px) { .gelen-kutusu { grid-template-columns: 1fr; height: auto; } .gk-liste { max-height: 260px; border-right: 0; border-bottom: 1px solid var(--kenar); } .gk-balon { max-width: 90%; } }
/* çalışma alanı seçici (yan menü) */
.calisma-alani { margin: -8px 4px 10px; }
.ca-btn { width: 100%; display: flex; align-items: center; gap: 8px; padding: 8px 12px; border-radius: 10px; background: rgba(255,255,255,.07); border: 1px solid rgba(255,255,255,.1); color: #e2e8f0; font: inherit; font-size: .82rem; font-weight: 600; cursor: pointer; }
.ca-btn span { flex: 1; text-align: left; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.calisma-alani .acilir-menu { left: 0; right: 0; }
@media print { .yan-menu, .ust-cubuk, .sayfa-baslik .satir, .btn { display: none !important; } .ana { margin: 0; } .kart { break-inside: avoid; } }
