/* ============================================================
   WHMCS UYUMLULUK KÖPRÜSÜ — CSS
   Bu dosya theme.css'ten SONRA yüklenir.

   NE İŞE YARAR
   WHMCS'in ~80 ikincil client-area şablonu (ödeme yöntemleri, kişi
   yönetimi, SSL yapılandırma, yükseltme, toplu domain işlemleri, alt
   kullanıcılar, iptal talebi, bakiye yükleme...) üst temadan olduğu
   gibi devralınır. Bunları tek tek elle dönüştürmek yerine, kullandıkları
   sınırlı sayıdaki Bootstrap ilkelini Athena'nın görsel diline
   çeviriyoruz. Böylece bugün devralınan ve YARIN WHMCS güncellemesiyle
   gelecek sayfalar da otomatik olarak temaya uyar; ayrıca üçüncü parti
   eklenti modüllerinin çıktısı da doğru görünür.

   İKİ AYRI SORUNU BİRDEN ÇÖZER
   1) SÜRÜM UYUMSUZLUĞU: şablonlar Bootstrap 4 sözdizimiyle yazılmış,
      tema Bootstrap 5.3 yüklüyor. BS5'te kaldırılan sınıflar
      (.form-group, .btn-default, .control-label, .text-right,
      .float-right, .input-group-append, .custom-select, BS3 .panel*)
      hiçbir stil almıyordu — yani o sayfalarda etiketler ve butonlar
      gerçekten biçimsizdi. Aşağıda bunların karşılıkları geri verilir.
   2) GÖRSEL UYUM: çalışan Bootstrap ilkelleri de (.card/.btn/.table/
      .alert/.form-control) Athena token'larıyla yeniden boyanır.

   KURAL: burada YALNIZCA Bootstrap sınıfları hedeflenir. Hiçbir kural
   .iw-* sınıflarına dokunmaz, böylece elle dönüştürdüğümüz sayfalar
   bu dosyadan etkilenmez. Tüm değerler mevcut token'lardan gelir —
   admin panelindeki renk/tipografi ayarları buraya da işler.
   ============================================================ */

/* ---------- 1. Bootstrap 4/3 → 5 geri uyumluluk kabukları ---------- */

/* BS5'te .form-group kaldırıldı; alan aralığı tamamen kayboluyordu. */
.iw-panel__content .form-group,
.iw-cartbody .form-group,
.iw-authbody .form-group { margin-bottom: 18px; }

/* BS5'te .control-label (BS3) ve hizalama yardımcıları kaldırıldı. */
.iw-panel__content .text-right,
.iw-cartbody .text-right,
.iw-panel__content .text-md-right,
.iw-cartbody .text-md-right{ text-align: right; }
.iw-panel__content .text-left,
.iw-cartbody .text-left{ text-align: left; }
.iw-panel__content .float-right,
.iw-cartbody .float-right{ float: right; }
.iw-panel__content .float-left,
.iw-cartbody .float-left{ float: left; }

/* BS5'te .input-group-append/prepend kaldırıldı — düğmeler gruptan
   kopup alt satıra düşüyordu. */
.iw-panel__content .input-group-append,
.iw-cartbody .input-group-append,
.iw-panel__content .input-group-prepend,
.iw-cartbody .input-group-prepend{ display: flex; }
.iw-panel__content .input-group-append .btn,
.iw-cartbody .input-group-append .btn{ border-top-left-radius: 0; border-bottom-left-radius: 0; }
.iw-panel__content .input-group-prepend .btn,
.iw-cartbody .input-group-prepend .btn{ border-top-right-radius: 0; border-bottom-right-radius: 0; }

/* BS3 .panel* — bazı eski WHMCS parçaları hâlâ kullanıyor. */
.iw-panel__content .panel,
.iw-cartbody .panel{ background: var(--c-bg-card); border: 1px solid var(--c-line); border-radius: var(--r-md); margin-bottom: 18px; overflow: hidden; }
.iw-panel__content .panel-heading,
.iw-cartbody .panel-heading{ padding: 14px 18px; border-bottom: 1px solid var(--c-line); font-weight: var(--fw-semi); color: var(--c-ink); }
.iw-panel__content .panel-body,
.iw-cartbody .panel-body{ padding: 18px; }
.iw-panel__content .panel-footer,
.iw-cartbody .panel-footer{ padding: 14px 18px; border-top: 1px solid var(--c-line); background: var(--c-bg-soft); }

/* ---------- 2. Kartlar → .iw-dcard görünümü ---------- */

.iw-panel__content .card,
.iw-cartbody .card{
  background: var(--c-bg-card);
  border: 1px solid var(--c-line);
  border-radius: var(--r-md);
  box-shadow: none;
  margin-bottom: 18px;
}
.iw-panel__content .card-header,
.iw-cartbody .card-header{
  background: transparent;
  border-bottom: 1px solid var(--c-line);
  padding: 14px 18px;
  font-weight: var(--fw-semi);
  color: var(--c-ink);
}
.iw-panel__content .card-title,
.iw-cartbody .card-title{ margin: 0; font-size: var(--fs-md); font-weight: var(--fw-semi); color: var(--c-ink); }
.iw-panel__content .card-body,
.iw-cartbody .card-body{ padding: 18px; color: var(--c-text); }
.iw-panel__content .card-footer,
.iw-cartbody .card-footer{ background: var(--c-bg-soft); border-top: 1px solid var(--c-line); padding: 14px 18px; }

/* ---------- 3. Butonlar → .iw-btn görünümü ---------- */

.iw-panel__content .btn,
.iw-cartbody .btn{
  display: inline-flex; align-items: center; justify-content: center; gap: 8px;
  border-radius: var(--r-sm);
  padding: 10px 16px;
  font-size: var(--fs-sm);
  font-weight: var(--fw-semi);
  line-height: 1.2;
  border: 1px solid transparent;
  cursor: pointer;
  transition: background var(--dur-base) var(--ease-out), border-color var(--dur-base) var(--ease-out), color var(--dur-base) var(--ease-out);
}
.iw-panel__content .btn-primary,
.iw-cartbody .btn-primary,
.iw-panel__content .btn-success,
.iw-cartbody .btn-success{
  background: var(--c-primary); border-color: var(--c-primary); color: #fff;
}
.iw-panel__content .btn-primary:hover,
.iw-cartbody .btn-primary:hover,
.iw-panel__content .btn-success:hover,
.iw-cartbody .btn-success:hover{ filter: brightness(.94); color: #fff; }

/* .btn-default BS5'te YOK — bu sayfalardaki en yaygın buton buydu ve
   tamamen stilsiz çıkıyordu. */
.iw-panel__content .btn-default,
.iw-cartbody .btn-default,
.iw-panel__content .btn-secondary,
.iw-cartbody .btn-secondary,
.iw-panel__content .btn-light,
.iw-cartbody .btn-light{
  background: var(--c-bg-card); border-color: var(--c-line); color: var(--c-ink);
}
.iw-panel__content .btn-default:hover,
.iw-cartbody .btn-default:hover,
.iw-panel__content .btn-secondary:hover,
.iw-cartbody .btn-secondary:hover,
.iw-panel__content .btn-light:hover,
.iw-cartbody .btn-light:hover{ background: var(--c-bg-soft); color: var(--c-ink); }

.iw-panel__content .btn-danger,
.iw-cartbody .btn-danger{ background: var(--c-red, #d64545); border-color: var(--c-red, #d64545); color: #fff; }
.iw-panel__content .btn-danger:hover,
.iw-cartbody .btn-danger:hover{ filter: brightness(.94); color: #fff; }
.iw-panel__content .btn-link,
.iw-cartbody .btn-link{ background: none; border-color: transparent; color: var(--c-primary); padding-left: 0; padding-right: 0; }

.iw-panel__content .btn-sm,
.iw-cartbody .btn-sm{ padding: 7px 12px; font-size: var(--fs-xs); }
.iw-panel__content .btn-lg,
.iw-cartbody .btn-lg{ padding: 13px 22px; font-size: var(--fs-md); }
.iw-panel__content .btn-block,
.iw-cartbody .btn-block{ width: 100%; }
.iw-panel__content .btn:disabled,
.iw-cartbody .btn:disabled,
.iw-panel__content .btn.disabled,
.iw-cartbody .btn.disabled{ opacity: .55; cursor: not-allowed; }

/* Buton grupları — kenarların birleşik görünmesi için. */
.iw-panel__content .btn-group,
.iw-cartbody .btn-group{ display: inline-flex; }
.iw-panel__content .btn-group > .btn:not(:first-child),
.iw-cartbody .btn-group > .btn:not(:first-child){ border-top-left-radius: 0; border-bottom-left-radius: 0; margin-left: -1px; }
.iw-panel__content .btn-group > .btn:not(:last-child),
.iw-cartbody .btn-group > .btn:not(:last-child){ border-top-right-radius: 0; border-bottom-right-radius: 0; }

/* ---------- 4. Form alanları → .iw-field__input görünümü ---------- */

.iw-panel__content .form-control,
.iw-cartbody .form-control,
.iw-panel__content .custom-select,
.iw-cartbody .custom-select,
.iw-panel__content select.form-control,
.iw-cartbody select.form-control,
.iw-panel__content textarea.form-control,
.iw-cartbody textarea.form-control{
  width: 100%;
  background: var(--c-bg-card);
  border: 1px solid var(--c-line);
  border-radius: var(--r-sm);
  padding: 11px 13px;
  font-size: var(--fs-sm);
  color: var(--c-ink);
  transition: border-color var(--dur-base) var(--ease-out), box-shadow var(--dur-base) var(--ease-out);
}
.iw-panel__content .form-control:focus,
.iw-cartbody .form-control:focus,
.iw-panel__content .custom-select:focus,
.iw-cartbody .custom-select:focus{
  outline: none;
  border-color: var(--c-primary);
  box-shadow: 0 0 0 3px var(--c-primary-light);
}
.iw-panel__content .form-control::placeholder,
.iw-cartbody .form-control::placeholder{ color: var(--c-muted); }
.iw-panel__content .form-control:disabled,
.iw-cartbody .form-control:disabled,
.iw-panel__content .form-control[readonly],
.iw-cartbody .form-control[readonly]{ background: var(--c-bg-soft); color: var(--c-muted); }

.iw-panel__content label:not([class*="iw-"]),
.iw-cartbody label:not([class*="iw-"]),
.iw-panel__content .control-label,
.iw-cartbody .control-label,
.iw-panel__content .col-form-label,
.iw-cartbody .col-form-label{
  font-size: var(--fs-xs);
  font-weight: var(--fw-semi);
  color: var(--c-ink);
  margin-bottom: 6px;
  display: inline-block;
}
.iw-panel__content .form-text,
.iw-cartbody .form-text,
.iw-panel__content .help-block,
.iw-cartbody .help-block,
.iw-panel__content small.text-muted,
.iw-cartbody small.text-muted{ color: var(--c-muted); font-size: var(--fs-xs); }

.iw-panel__content .form-check,
.iw-cartbody .form-check{ position: relative; padding-left: 26px; margin-bottom: 8px; }
.iw-panel__content .form-check-input,
.iw-cartbody .form-check-input{ position: absolute; left: 0; top: 2px; margin: 0; width: 16px; height: 16px; accent-color: var(--c-primary); }
.iw-panel__content .form-check-label,
.iw-cartbody .form-check-label{ font-weight: var(--fw-regular); color: var(--c-text); font-size: var(--fs-sm); }
.iw-panel__content .form-check-inline,
.iw-cartbody .form-check-inline{ display: inline-flex; align-items: center; margin-right: 16px; }

/* ---------- 5. Tablolar → .iw-dtable görünümü ---------- */

.iw-panel__content .table,
.iw-cartbody .table{
  width: 100%;
  border-collapse: collapse;
  color: var(--c-text);
  font-size: var(--fs-sm);
  margin-bottom: 0;
}
.iw-panel__content .table th,
.iw-cartbody .table th{
  text-align: left;
  padding: 12px 14px;
  border-bottom: 1px solid var(--c-line);
  background: var(--c-bg-soft);
  color: var(--c-ink);
  font-weight: var(--fw-semi);
  font-size: var(--fs-xs);
  white-space: nowrap;
}
.iw-panel__content .table td,
.iw-cartbody .table td{ padding: 12px 14px; border-bottom: 1px solid var(--c-line); vertical-align: middle; }
.iw-panel__content .table tbody tr:last-child td,
.iw-cartbody .table tbody tr:last-child td{ border-bottom: 0; }
.iw-panel__content .table-striped tbody tr:nth-child(odd),
.iw-cartbody .table-striped tbody tr:nth-child(odd){ background: var(--c-bg-soft); }
.iw-panel__content .table-hover tbody tr:hover,
.iw-cartbody .table-hover tbody tr:hover{ background: var(--c-bg-soft); }
.iw-panel__content .table-sm th,
.iw-cartbody .table-sm th,
.iw-panel__content .table-sm td,
.iw-cartbody .table-sm td{ padding: 8px 10px; }
/* Dar ekranda tablolar sayfayı yatay taşırmasın. */
.iw-panel__content .table-responsive,
.iw-cartbody .table-responsive{ overflow-x: auto; -webkit-overflow-scrolling: touch; }

/* ---------- 6. Uyarı kutuları ---------- */

.iw-panel__content .alert,
.iw-cartbody .alert{
  border-radius: var(--r-sm);
  padding: 13px 16px;
  margin-bottom: 16px;
  font-size: var(--fs-sm);
  border: 1px solid var(--c-line);
  background: var(--c-bg-soft);
  color: var(--c-text);
}
.iw-panel__content .alert-success,
.iw-cartbody .alert-success{ border-color: color-mix(in srgb, var(--c-green) 45%, transparent); background: color-mix(in srgb, var(--c-green) 10%, transparent); color: var(--c-ink); }
.iw-panel__content .alert-danger,
.iw-cartbody .alert-danger,
.iw-panel__content .alert-error,
.iw-cartbody .alert-error{ border-color: color-mix(in srgb, var(--c-red, #d64545) 45%, transparent); background: color-mix(in srgb, var(--c-red, #d64545) 10%, transparent); color: var(--c-ink); }
.iw-panel__content .alert-warning,
.iw-cartbody .alert-warning{ border-color: color-mix(in srgb, var(--c-amber, #d99a2b) 45%, transparent); background: color-mix(in srgb, var(--c-amber, #d99a2b) 12%, transparent); color: var(--c-ink); }
.iw-panel__content .alert-info,
.iw-cartbody .alert-info{ border-color: color-mix(in srgb, var(--c-primary) 40%, transparent); background: var(--c-primary-light); color: var(--c-ink); }

/* ---------- 7. Modallar ---------- */

.iw-panel__content .modal-content,
.iw-cartbody .modal-content,
.modal-content {
  background: var(--c-bg-card);
  border: 1px solid var(--c-line);
  border-radius: var(--r-md);
  color: var(--c-text);
}
.modal-header,
.modal-footer { border-color: var(--c-line); }
.modal-title { color: var(--c-ink); font-weight: var(--fw-semi); font-size: var(--fs-md); }

/* ---------- 8. Tipografi ve küçük yardımcılar ---------- */

.iw-panel__content h1:not([class*="iw-"]),
.iw-cartbody h1:not([class*="iw-"]), .iw-panel__content h2:not([class*="iw-"]), .iw-panel__content h3:not([class*="iw-"]),
.iw-panel__content h4:not([class*="iw-"]),
.iw-cartbody h4:not([class*="iw-"]), .iw-panel__content h5:not([class*="iw-"]), .iw-panel__content h6:not([class*="iw-"]) { color: var(--c-ink); font-weight: var(--fw-semi); }
.iw-panel__content .text-muted,
.iw-cartbody .text-muted{ color: var(--c-muted) !important; }
.iw-panel__content a:not([class*="iw-"]),
.iw-cartbody a:not([class*="iw-"]){ color: var(--c-primary); }
.iw-panel__content hr:not([class*="iw-"]),
.iw-cartbody hr:not([class*="iw-"]){ border: 0; border-top: 1px solid var(--c-line); margin: 18px 0; }
.iw-panel__content .badge,
.iw-cartbody .badge{ border-radius: var(--r-pill, 999px); padding: 4px 10px; font-size: var(--fs-xs); font-weight: var(--fw-semi); }
.iw-panel__content .list-group-item,
.iw-cartbody .list-group-item{ background: var(--c-bg-card); border-color: var(--c-line); color: var(--c-text); }
.iw-panel__content .nav-tabs,
.iw-cartbody .nav-tabs{ border-bottom: 1px solid var(--c-line); }
.iw-panel__content .nav-tabs .nav-link,
.iw-cartbody .nav-tabs .nav-link{ color: var(--c-muted); border: 0; border-bottom: 2px solid transparent; padding: 10px 14px; }
.iw-panel__content .nav-tabs .nav-link.active,
.iw-cartbody .nav-tabs .nav-link.active{ color: var(--c-primary); border-bottom-color: var(--c-primary); background: transparent; }

/* Dar ekranda Bootstrap ızgarası panelin içinde taşma yapmasın. */
@media (max-width: 700px) {
  .iw-panel__content .row,
.iw-cartbody .row{ margin-left: 0; margin-right: 0; }
  .iw-panel__content [class*="col-"],
.iw-cartbody [class*="col-"]{ padding-left: 0; padding-right: 0; }
  .iw-panel__content .text-md-right,
.iw-cartbody .text-md-right{ text-align: left; }
}

/* ---------- 9. GİZLEME YARDIMCI SINIFLARI (kritik) ----------

   KÖK NEDEN (2026-07-28, kullanıcı bildirdi: "footerdaki şu kısmı sil" —
   her sayfanın altında sürekli dönen bir yükleme çemberi görünüyordu).

   O çember #fullpage-overlay'dir ve WHMCS'in yükleme göstergesidir;
   işaretlemesi class="w-hidden" ile GİZLİ gelmesi gerekir. Ancak
   .w-hidden WHMCS'e özgü bir yardımcı sınıftır — Bootstrap'te yoktur ve
   bu temada da tanımlı değildi. Tanımsız sınıf hiçbir şey yapmadığı için
   overlay her sayfada görünür kalıyordu.

   Aynı sorun iki sınıfta daha vardı:
     .sr-only  → Bootstrap 4'te vardı, 5'te KALDIRILDI (.visually-hidden
                 oldu). Yalnızca ekran okuyucular için yazılmış metinler
                 (28 şablonda toplam 5 yerde) gözle görünür hale geliyordu.
     .hidden   → hiçbir Bootstrap sürümünde yok; WHMCS bazı yerlerde
                 kullanıyor.

   .d-none, .invisible ve .visually-hidden Bootstrap 5'te mevcut olduğu
   için burada tekrar tanımlanmaz.
   ------------------------------------------------------------ */

.w-hidden,
.hidden { display: none !important; }

/* BS4 .sr-only'nin BS5 .visually-hidden karşılığı — birebir aynı teknik. */
.sr-only:not(:focus):not(:active) {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  white-space: nowrap !important;
  border: 0 !important;
}
