/* TFNUYSP İtemsatış — Adobe hesap durumu / onarım sayfası.
 * site.css ortak tasarım dilidir (Aktivasyon Merkezi ile aynı); bu dosya Adobe sahnesini ve
 * durum/onarım bileşenlerini ekler. CSP (style-src 'self') nedeniyle satır içi stil kullanılmaz. */

body[data-service="adobe"] { --accent: #eb1000; --accent-2: #ff6a3d; --accent-3: #ff3d8b; --on-accent: #fff; }
:root {
  --ok: #10b981; --warn: #f59e0b; --err: #ef4444; --info: #3b82f6;
}
/* Adobe kırmızısı koyu zeminde metin olarak fazla koyu kalır; metinlerde daha açık ton kullanılır. */
body[data-service="adobe"] { --accent-text: #ff7a66; }
:root[data-theme="light"] body[data-service="adobe"] { --accent-text: #cf0e00; }
.hero-badge, .eyebrow, .footer-store, .note-icon, .how-list li > span, .step-pill.done .step-num, .lang-opt.active small, .store-card:hover .store-arrow { color: var(--accent-text); }
.store-card:hover .store-arrow { color: var(--on-accent); }

/* ================================================================ Adobe sahnesi */
body[data-service="adobe"] .scene-adobe {
  opacity: 1; visibility: visible; transform: scale(1) translate3d(calc(var(--mx) * -14px), calc(var(--my) * -14px), 0);
  transition: opacity .9s var(--ease), transform 1.2s var(--ease), visibility 0s;
}
.pat-adobe { background-image: radial-gradient(color-mix(in srgb, #eb1000 60%, transparent) 1.2px, transparent 1.6px); background-size: 26px 26px; animation: drift 30s linear infinite; }
.adobe-prism { position: absolute; fill: none; stroke: #eb1000; stroke-linejoin: round; will-change: transform; }
.adobe-prism.p1 { width: 760px; height: 760px; right: -170px; top: -120px; stroke-width: .5; opacity: .55; animation: spin 70s linear infinite; }
.adobe-prism.p2 { width: 420px; height: 420px; left: -120px; bottom: -80px; stroke-width: .8; opacity: .35; animation: spin 48s linear infinite reverse; }
.adobe-prism polygon { stroke-dasharray: 60 16; animation: dashFlow 8s linear infinite; }
.adobe-prism polygon:nth-child(even) { stroke: #ff6a3d; animation-direction: reverse; }
.adobe-prism polygon:nth-child(3n) { stroke: #ff3d8b; }
.shards span {
  position: absolute; width: 54px; height: 48px; background: color-mix(in srgb, #eb1000 24%, transparent);
  clip-path: polygon(50% 0, 100% 100%, 0 100%); animation: shardFloat 14s ease-in-out infinite; will-change: transform, opacity;
}
.shards span:nth-child(1) { left: 8%; top: 22%; } .shards span:nth-child(2) { left: 22%; top: 70%; animation-delay: -3s; scale: .6; }
.shards span:nth-child(3) { left: 48%; top: 12%; animation-delay: -6s; } .shards span:nth-child(4) { left: 62%; top: 82%; animation-delay: -9s; scale: .8; }
.shards span:nth-child(5) { left: 86%; top: 55%; animation-delay: -2s; } .shards span:nth-child(6) { left: 35%; top: 45%; animation-delay: -11s; scale: .7; }
.shards span:nth-child(7) { left: 75%; top: 28%; animation-delay: -7s; scale: 1.15; } .shards span:nth-child(8) { left: 4%; top: 88%; animation-delay: -5s; }
@keyframes shardFloat { 0%, 100% { transform: translate3d(0, 0, 0) rotate(0); opacity: .3; } 50% { transform: translate3d(0, -40px, 0) rotate(60deg); opacity: .85; } }

/* Tek servis: sekme çubuğu ortada, kaydırıcı her zaman dolu */
.visual-logo-img { padding: 14%; }
.nav-tab img { padding: 3px; }

/* ================================================================ Kart başlığı + form */
.card-head { margin-bottom: 4px; }
.card-head h2 { font-size: clamp(20px, 2.4vw, 25px); letter-spacing: -.6px; line-height: 1.2; }
.card-head p { color: var(--text-2); margin-top: 6px; font-size: 14.5px; }
#status-form { display: grid; gap: 18px; margin-top: 20px; }
#email { text-transform: none; letter-spacing: .2px; }
input:disabled { opacity: .65; }
.btn-primary { display: inline-flex; align-items: center; justify-content: center; gap: 10px; width: 100%; padding: 0 18px; }
.btn-primary .ic { width: 20px; height: 20px; }
.btn-primary.loading .btn-label::after {
  content: ""; display: inline-block; width: 14px; height: 14px; margin-left: 10px; vertical-align: -2px;
  border: 2px solid currentColor; border-right-color: transparent; border-radius: 50%; animation: spin .7s linear infinite;
}
.btn-primary.loading .btn-shine { display: none; }

/* ================================================================ Sonuç kutusu */
.result {
  --c: var(--info);
  display: flex; gap: 14px; align-items: flex-start; margin-top: 18px; padding: 16px 18px; border-radius: 16px;
  background: color-mix(in srgb, var(--c) 10%, transparent); border: 1px solid color-mix(in srgb, var(--c) 32%, transparent);
  box-shadow: 0 18px 40px -28px var(--c);
  transition: background-color .45s var(--ease), border-color .45s var(--ease), box-shadow .45s var(--ease);
}
.result.show { animation: resultIn .55s var(--spring) both; }
.result.shake { animation: shakeX .5s both; }
.result-ok { --c: var(--ok); }
.result-warn { --c: var(--warn); }
.result-err { --c: var(--err); }
.result-info { --c: var(--info); }
.result-ic {
  width: 38px; height: 38px; border-radius: 12px; display: grid; place-items: center; flex: none; color: #fff;
  background: var(--c); box-shadow: 0 10px 22px -10px var(--c); transition: background-color .45s var(--ease), box-shadow .45s var(--ease);
}
.result-warn .result-ic { color: #1a1205; }
.result-ic .ic { width: 20px; height: 20px; stroke-width: 2.4; grid-area: 1 / 1; opacity: 0; transform: scale(.4) rotate(-30deg); transition: opacity .3s var(--ease), transform .45s var(--spring); }
.result-ok .i-ok, .result-err .i-err, .result-warn .i-wait, .result-info .i-wait { opacity: 1; transform: none; }
.result-ok .i-ok path { stroke-dasharray: 24; stroke-dashoffset: 24; animation: drawCheck .5s var(--ease) .15s forwards; }
.result-info .i-wait { animation: hourglass 2.4s var(--ease) infinite; }
.result-body { min-width: 0; flex: 1; display: grid; gap: 8px; justify-items: start; }
.result-body p { font-size: 14.5px; font-weight: 600; line-height: 1.5; overflow-wrap: anywhere; }
.days-chip {
  display: inline-flex; align-items: center; gap: 7px; padding: 5px 11px; border-radius: 99px; font-family: var(--mono); font-size: 12.5px; font-weight: 800;
  color: var(--c); background: color-mix(in srgb, var(--c) 14%, transparent); border: 1px solid color-mix(in srgb, var(--c) 34%, transparent);
  animation: badgePop .5s var(--spring) .25s both;
}
.days-chip::before { content: ""; width: 7px; height: 7px; border-radius: 50%; background: var(--c); }

/* ================================================================ Bilgi kutusu (tedarikçinin ham verisi) */
.info-box, .repair-box, .guide-box, .btn-support { animation: fadeUp .5s var(--ease) both; }
.info-box { margin-top: 12px; padding: 6px 16px; border-radius: 16px; background: var(--surface-2); border: 1px solid var(--border); animation-delay: .08s; }
.info-row { display: flex; gap: 14px; align-items: baseline; padding: 10px 0; border-bottom: 1px dashed var(--border); }
.info-row:last-of-type { border-bottom: 0; }
.info-row dt { flex: none; width: 64px; font-size: 12px; font-weight: 800; letter-spacing: .6px; text-transform: uppercase; color: var(--text-3); }
.info-row dd { min-width: 0; font-weight: 650; font-size: 14.5px; overflow-wrap: anywhere; }
.info-row dd small { font-weight: 700; font-size: 12px; color: var(--text-3); white-space: nowrap; }
.info-change { padding: 10px 0 8px; border-top: 1px dashed var(--border); font-size: 13px; color: var(--text-2); overflow-wrap: anywhere; }

/* ================================================================ Onarım */
.repair-box { margin-top: 14px; display: grid; gap: 10px; padding: 18px; border-radius: 18px; background: color-mix(in srgb, var(--ok) 7%, transparent); border: 1px solid color-mix(in srgb, var(--ok) 26%, transparent); animation-delay: .14s; }
.repair-lead { font-weight: 650; font-size: 14.5px; }
.btn-repair { color: #fff; background: linear-gradient(135deg, #059669 0%, #10b981 50%, #34d399 100%); background-size: 200% 200%; box-shadow: 0 16px 36px -14px #10b981; }
.btn-repair:hover:not(:disabled) { box-shadow: 0 22px 44px -14px #10b981; }
.btn-repair:not(:disabled) { animation: gradShift 6s ease infinite, repairGlow 2.4s ease-in-out infinite; }
.btn-repair.loading .ic { animation: spin 1.2s linear infinite; }
.btn-support { display: inline-flex; align-items: center; justify-content: center; gap: 9px; width: 100%; margin-top: 10px; animation-delay: .2s; }
.btn-ghost { position: relative; overflow: hidden; }

/* ================================================================ Sabit talimat kutusu */
.guide-box { margin-top: 14px; display: grid; gap: 12px; animation-delay: .22s; }
.guide-item { padding: 14px 16px; border-radius: 14px; background: var(--soft); border: 1px dashed color-mix(in srgb, var(--accent) 34%, transparent); }
.guide-item strong { display: block; font-size: 13.5px; margin-bottom: 4px; }
.guide-item p { font-size: 13.5px; color: var(--text-2); }
.guide-item p + p { margin-top: 8px; }

/* ================================================================ Yan panel: durum göstergeleri */
.legend-row .stock-indicator-dot { background: var(--c); animation: legendPulse 2.2s infinite; }
.legend-desc { font-size: 12.5px; color: var(--text-3); text-align: right; }
.lg-ok { --c: var(--ok); } .lg-warn { --c: var(--warn); } .lg-info { --c: var(--info); } .lg-err { --c: var(--err); }
.stock-row:nth-child(4) { animation-delay: .24s; }
.lg-warn .stock-indicator-dot { animation-delay: -.5s; } .lg-info .stock-indicator-dot { animation-delay: -1s; } .lg-err .stock-indicator-dot { animation-delay: -1.5s; }
.faq-item:nth-child(4) { animation-delay: .21s; } .faq-item:nth-child(5) { animation-delay: .28s; } .faq-item:nth-child(6) { animation-delay: .35s; }

/* Dil değişiminde metinlerin yumuşak geçişi */
.lang-swap [data-i18n] { animation: langIn .35s var(--ease) both; }

@keyframes resultIn { 0% { opacity: 0; transform: translateY(14px) scale(.97); } 100% { opacity: 1; transform: none; } }
@keyframes drawCheck { to { stroke-dashoffset: 0; } }
@keyframes hourglass { 0%, 55% { transform: rotate(0); } 80%, 100% { transform: rotate(180deg); } }
@keyframes repairGlow { 0%, 100% { box-shadow: 0 16px 36px -14px #10b981, 0 0 0 0 rgba(16, 185, 129, .45); } 50% { box-shadow: 0 16px 36px -14px #10b981, 0 0 0 10px rgba(16, 185, 129, 0); } }
@keyframes legendPulse { 0% { box-shadow: 0 0 0 0 color-mix(in srgb, var(--c) 60%, transparent); } 70% { box-shadow: 0 0 0 8px transparent; } 100% { box-shadow: 0 0 0 0 transparent; } }
@keyframes langIn { from { opacity: 0; filter: blur(3px); } to { opacity: 1; filter: none; } }

@media (max-width: 600px) {
  .result { padding: 14px; gap: 12px; }
  .info-row { flex-direction: column; gap: 2px; }
  .info-row dt { width: auto; }
  .legend-desc { display: none; }
  .gpt-bloom.b1, .adobe-prism.p1 { width: 460px; height: 460px; right: -200px; top: -120px; }
}

/* Hareketi azalt: sürekli dekoratif hareket durur, giriş/geçiş animasyonları kalır. */
@media (prefers-reduced-motion: reduce) {
  .scene-adobe *, .btn-repair, .legend-row .stock-indicator-dot, .result-info .i-wait { animation: none !important; }
  .result-ok .i-ok path { stroke-dashoffset: 0; }
  .shards { display: none; }
}

/* Tek servis varken dar ekranda sekme satırı yer kaplamasın (ikinci servis eklenince kendiliğinden geri gelir). */
@media (max-width: 1080px) { .nav-services:has(.nav-tab:only-of-type) { display: none; } }
