/*
Theme Name: Şehir Portalı
Theme URI: https://www.turhalnet.com/
Author: Turhal Net
Description: Haber, firma rehberi, seri ilan, etkinlik, kent bilgi, reklam, galeri ve kullanıcı içerik yönetimini tek yapıda birleştiren modüler şehir portalı teması.
Version: 1.0.22
Text Domain: sehir-portali
Requires at least: 6.5
Requires PHP: 8.0
*/

:root {
  --sp-primary: #d71920;
  --sp-secondary: #123a63;
  --sp-bg: #f6f7f9;
  --sp-surface: #ffffff;
  --sp-text: #1c2430;
  --sp-muted: #6b7280;
  --sp-border: #e5e7eb;
  --sp-radius: 16px;
  --sp-container: 1600px;
  --sp-header-height: 72px;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; background: var(--sp-bg); color: var(--sp-text); font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; line-height: 1.6; }
a { color: inherit; }
img, video, iframe { max-width: 100%; height: auto; }
.sp-container { width: min(calc(100% - 20px), var(--sp-container)); margin-inline: auto; }
.sp-site-main { min-height: 60vh; }
.screen-reader-text { position: absolute !important; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0; }

.sp-featured-badge{position:absolute;top:12px;left:12px;z-index:2;background:var(--sp-primary);color:#fff;padding:6px 10px;border-radius:999px;font-size:12px;font-weight:700}.sp-card-media{position:relative}.sp-campaign-meta{display:flex;gap:10px;flex-wrap:wrap;font-size:13px;color:var(--sp-muted);margin-top:6px}.sp-form-note{padding:12px 14px;border:1px solid var(--sp-border);border-radius:12px;background:var(--sp-surface)}


/* Faz 10A — Açık / Koyu Tema */
:root,
html[data-sp-theme="light"] {
  --sp-bg: #f6f7f9;
  --sp-surface: #ffffff;
  --sp-text: #1c2430;
  --sp-muted: #6b7280;
  --sp-border: #e5e7eb;
  --sp-elevated: #ffffff;
  --sp-shadow: 0 10px 30px rgba(15, 23, 42, .08);
}
html[data-sp-theme="dark"] {
  --sp-bg: #0f141b;
  --sp-surface: #171e27;
  --sp-text: #f3f6fa;
  --sp-muted: #a9b4c2;
  --sp-border: #2a3442;
  --sp-elevated: #1c2530;
  --sp-shadow: 0 10px 30px rgba(0, 0, 0, .28);
}
html[data-sp-theme="dark"] body,
html[data-sp-theme="dark"] .sp-site-main { background: var(--sp-bg); color: var(--sp-text); }
html[data-sp-theme="dark"] .sp-header,
html[data-sp-theme="dark"] .sp-footer,
html[data-sp-theme="dark"] .sp-card,
html[data-sp-theme="dark"] .sp-form-note,
html[data-sp-theme="dark"] .sp-account-panel,
html[data-sp-theme="dark"] .sp-mobile-appbar { background-color: var(--sp-surface); color: var(--sp-text); border-color: var(--sp-border); }
html[data-sp-theme="dark"] input,
html[data-sp-theme="dark"] textarea,
html[data-sp-theme="dark"] select { background: var(--sp-elevated); color: var(--sp-text); border-color: var(--sp-border); }
html[data-sp-theme="dark"] a { color: inherit; }
.sp-theme-toggle { display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border:1px solid var(--sp-border);border-radius:12px;background:var(--sp-surface);color:var(--sp-text);cursor:pointer;font:inherit;line-height:1; }
.sp-theme-toggle:hover { transform:translateY(-1px); box-shadow:var(--sp-shadow); }
.sp-theme-toggle-icon { font-size:18px; }
@media (max-width: 767px) { .sp-theme-toggle { width:38px;height:38px;border-radius:11px; } }


/* Faz 10D.1 - PWA install UI */
.sp-pwa-install{
  position:fixed; right:16px; bottom:86px; z-index:99990;
  display:flex; align-items:center; gap:8px;
  border:0; border-radius:999px; padding:11px 16px;
  background:var(--sp-primary,#c1121f); color:#fff;
  font:inherit; font-weight:700; box-shadow:0 10px 28px rgba(0,0,0,.20);
  cursor:pointer;
}
.sp-pwa-install[hidden]{display:none!important}
.sp-pwa-ios-help{
  position:fixed; left:16px; right:16px; bottom:92px; z-index:99991;
  max-width:420px; margin:0 auto; padding:18px 44px 18px 18px;
  border-radius:18px; background:var(--sp-card,#fff); color:var(--sp-text,#111);
  box-shadow:0 18px 48px rgba(0,0,0,.25); border:1px solid rgba(127,127,127,.2);
}
.sp-pwa-ios-help[hidden]{display:none!important}
.sp-pwa-ios-help p{margin:6px 0 0}
.sp-pwa-ios-close{
  position:absolute; top:8px; right:10px; border:0; background:transparent;
  color:inherit; font-size:25px; cursor:pointer;
}
@media (min-width: 783px){
  .sp-pwa-install{bottom:24px}
}


/* Faz 11D.1 — PWA yükleme butonu / AI Asistan çakışma düzeltmesi */
.sp-ai-chat{
  right:20px;
  bottom:20px;
}
.sp-pwa-install{
  right:16px;
  bottom:86px;
}
.sp-pwa-ios-help{
  bottom:92px;
}
@media (max-width:767px){
  .sp-ai-chat{
    right:12px;
    bottom:calc(102px + env(safe-area-inset-bottom));
  }
  .sp-pwa-install{
    right:12px;
    bottom:calc(146px + env(safe-area-inset-bottom));
  }
  .sp-pwa-ios-help{
    bottom:calc(146px + env(safe-area-inset-bottom));
  }
  .sp-ai-panel{
    bottom:78px;
    max-height:calc(100vh - 210px);
  }
}


/* Sürüm 41 — Ana sayfa tema sürümü güncelleme bildirimi. */
.sp-theme-version-notice{
  position:fixed;
  top:88px;
  left:50%;
  z-index:999999;
  transform:translateX(-50%);
  width:min(520px,calc(100% - 24px));
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  padding:12px 14px;
  border:1px solid rgba(18,58,99,.18);
  border-radius:14px;
  background:var(--sp-surface,#fff);
  color:var(--sp-text,#1c2430);
  box-shadow:0 14px 38px rgba(15,23,42,.16);
}
.sp-theme-version-notice[hidden]{display:none!important}
.sp-theme-version-notice-copy{display:flex;align-items:center;gap:10px;min-width:0;font-size:13px;line-height:1.4}
.sp-theme-version-notice-icon{flex:0 0 auto;width:30px;height:30px;display:grid;place-items:center;border-radius:50%;background:var(--sp-secondary,#123a63);color:#fff;font-weight:900}
.sp-theme-version-notice-copy strong{color:var(--sp-primary,#d71920)}
.sp-theme-version-notice-close{flex:0 0 auto;width:30px;height:30px;border:0;border-radius:50%;background:rgba(100,116,139,.12);color:inherit;font-size:20px;line-height:1;cursor:pointer}
.sp-theme-version-notice-close:hover{background:rgba(100,116,139,.22)}
@media(max-width:782px){.sp-theme-version-notice{top:70px;padding:10px 12px}.sp-theme-version-notice-copy{font-size:12px}}


/* Sürüm 55 — Tüm çoklu sayfalarda ortak sayfa sonu görünümü. */
.sp-portal-pagination-list ul,
.sp-news-pagination ul,
.sp-pl-pagination ul,
.navigation.pagination .nav-links{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:5px!important;
  flex-wrap:wrap!important;
  list-style:none!important;
  margin:24px 0 4px!important;
  padding:0!important;
}
.sp-portal-pagination-list li,
.sp-news-pagination li,
.sp-pl-pagination li{margin:0!important;padding:0!important}
.sp-portal-pagination-list .page-numbers,
.sp-news-pagination .page-numbers,
.sp-pl-pagination .page-numbers,
.navigation.pagination .page-numbers{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-width:38px!important;
  height:38px!important;
  padding:0 9px!important;
  border:1px solid var(--sp-border,#e1e7ee)!important;
  border-radius:4px!important;
  background:var(--sp-surface,#fff)!important;
  color:var(--sp-text,#1c2430)!important;
  text-decoration:none!important;
  font-size:13px!important;
  font-weight:700!important;
  line-height:1!important;
  box-shadow:none!important;
}
.sp-portal-pagination-list a.page-numbers:hover,
.sp-news-pagination a.page-numbers:hover,
.sp-pl-pagination a.page-numbers:hover,
.navigation.pagination a.page-numbers:hover{
  border-color:var(--sp-primary,#d71920)!important;
  color:var(--sp-primary,#d71920)!important;
}
.sp-portal-pagination-list .page-numbers.current,
.sp-news-pagination .page-numbers.current,
.sp-pl-pagination .page-numbers.current,
.navigation.pagination .page-numbers.current{
  background:var(--sp-primary,#d71920)!important;
  border-color:var(--sp-primary,#d71920)!important;
  color:#fff!important;
}
.sp-portal-pagination-list .page-numbers.dots,
.sp-news-pagination .page-numbers.dots,
.sp-pl-pagination .page-numbers.dots,
.navigation.pagination .page-numbers.dots{
  min-width:24px!important;
  padding:0 3px!important;
  border-color:transparent!important;
  background:transparent!important;
  color:var(--sp-muted,#6b7280)!important;
}
.sp-portal-pagination-list .prev,.sp-portal-pagination-list .next,
.sp-news-pagination .prev,.sp-news-pagination .next,
.sp-pl-pagination .prev,.sp-pl-pagination .next,
.navigation.pagination .prev,.navigation.pagination .next{
  font-size:20px!important;
  font-weight:500!important;
}
@media(max-width:700px){
  .sp-portal-pagination-list ul,.sp-news-pagination ul,.sp-pl-pagination ul,.navigation.pagination .nav-links{gap:4px!important;margin-top:18px!important}
  .sp-portal-pagination-list .page-numbers,.sp-news-pagination .page-numbers,.sp-pl-pagination .page-numbers,.navigation.pagination .page-numbers{min-width:34px!important;height:34px!important;padding:0 7px!important;font-size:12px!important}
}

/* Sürüm 63 — Kesin ortak çoklu sayfa sayfalaması.
   Tüm public listelemelerde sayfa numaraları yatay, ortalı ve tek satır akışında.
   Tema/eklenti eski ul/li kuralları !important ile etkisizleştirilir. */
:where(
  .sp-news-pagination,
  .sp-pl-pagination,
  .sp-dir-pagination,
  .sp-portal-pagination,
  .sp-historic-pagination,
  .sp-natural-pagination,
  .sp-death-pagination,
  .navigation.pagination,
  .pagination.navigation,
  .wp-block-query-pagination,
  .page-links
){
  display:flex!important;
  flex-direction:row!important;
  align-items:center!important;
  justify-content:center!important;
  flex-wrap:wrap!important;
  gap:8px!important;
  width:100%!important;
  margin:24px auto 6px!important;
  padding:0!important;
  clear:both!important;
  float:none!important;
  text-align:center!important;
}

:where(
  .sp-news-pagination,
  .sp-pl-pagination,
  .sp-dir-pagination,
  .sp-portal-pagination,
  .navigation.pagination,
  .pagination.navigation
) > :where(ul.page-numbers,.nav-links){
  display:flex!important;
  flex-direction:row!important;
  align-items:center!important;
  justify-content:center!important;
  flex-wrap:wrap!important;
  gap:8px!important;
  width:auto!important;
  margin:0!important;
  padding:0!important;
  list-style:none!important;
}

:where(
  .sp-news-pagination,
  .sp-pl-pagination,
  .sp-dir-pagination,
  .sp-portal-pagination,
  .navigation.pagination,
  .pagination.navigation
) :where(ul.page-numbers>li,.nav-links>li){
  display:block!important;
  width:auto!important;
  min-width:0!important;
  margin:0!important;
  padding:0!important;
  float:none!important;
  list-style:none!important;
}

/* Tarihî/Doğal rehber sayfalamasında linkleri saran span'lar satır kırmaz. */
:where(.sp-portal-pagination,.sp-historic-pagination,.sp-natural-pagination) > span{
  display:contents!important;
}

:where(
  .sp-news-pagination,
  .sp-pl-pagination,
  .sp-dir-pagination,
  .sp-portal-pagination,
  .sp-historic-pagination,
  .sp-natural-pagination,
  .navigation.pagination,
  .pagination.navigation,
  .page-links
) :where(a.page-numbers,span.page-numbers,a.post-page-numbers,span.post-page-numbers),
.page-links > a,
.page-links > span:not(:first-child){
  display:inline-flex!important;
  flex:0 0 auto!important;
  align-items:center!important;
  justify-content:center!important;
  width:auto!important;
  min-width:40px!important;
  height:40px!important;
  margin:0!important;
  padding:0 11px!important;
  border:1px solid var(--sp-border,#d9e1ea)!important;
  border-radius:9px!important;
  background:var(--sp-surface,#fff)!important;
  color:var(--sp-text,#344054)!important;
  text-decoration:none!important;
  white-space:nowrap!important;
  font-size:14px!important;
  font-weight:500!important;
  line-height:1!important;
  box-shadow:none!important;
}

:where(
  .sp-news-pagination,
  .sp-pl-pagination,
  .sp-dir-pagination,
  .sp-portal-pagination,
  .sp-historic-pagination,
  .sp-natural-pagination,
  .navigation.pagination,
  .pagination.navigation,
  .page-links
) :where(a.page-numbers:hover,a.post-page-numbers:hover),
.page-links > a:hover{
  border-color:var(--sp-primary,#b51f35)!important;
  color:var(--sp-primary,#b51f35)!important;
}

:where(
  .sp-news-pagination,
  .sp-pl-pagination,
  .sp-dir-pagination,
  .sp-portal-pagination,
  .sp-historic-pagination,
  .sp-natural-pagination,
  .navigation.pagination,
  .pagination.navigation,
  .page-links
) :where(.page-numbers.current,.post-page-numbers.current),
.page-links > .current{
  background:var(--sp-primary,#b51f35)!important;
  border-color:var(--sp-primary,#b51f35)!important;
  color:#fff!important;
}

:where(
  .sp-news-pagination,
  .sp-pl-pagination,
  .sp-dir-pagination,
  .sp-portal-pagination,
  .sp-historic-pagination,
  .sp-natural-pagination,
  .navigation.pagination,
  .pagination.navigation
) .page-numbers.dots{
  min-width:20px!important;
  padding:0 2px!important;
  border-color:transparent!important;
  background:transparent!important;
  color:var(--sp-muted,#667085)!important;
}

:where(
  .sp-news-pagination,
  .sp-pl-pagination,
  .sp-dir-pagination,
  .sp-portal-pagination,
  .sp-historic-pagination,
  .sp-natural-pagination,
  .navigation.pagination,
  .pagination.navigation
) :where(.page-numbers.prev,.page-numbers.next){
  min-width:auto!important;
  padding-inline:12px!important;
}

@media(max-width:700px){
  :where(
    .sp-news-pagination,
    .sp-pl-pagination,
    .sp-dir-pagination,
    .sp-portal-pagination,
    .sp-historic-pagination,
    .sp-natural-pagination,
    .sp-death-pagination,
    .navigation.pagination,
    .pagination.navigation,
    .wp-block-query-pagination,
    .page-links
  ){
    gap:7px!important;
    margin-top:18px!important;
  }
  :where(
    .sp-news-pagination,
    .sp-pl-pagination,
    .sp-dir-pagination,
    .sp-portal-pagination,
    .sp-historic-pagination,
    .sp-natural-pagination,
    .navigation.pagination,
    .pagination.navigation,
    .page-links
  ) :where(a.page-numbers,span.page-numbers,a.post-page-numbers,span.post-page-numbers),
  .page-links > a,
  .page-links > span:not(:first-child){
    min-width:38px!important;
    height:38px!important;
    padding:0 10px!important;
    font-size:13px!important;
  }
}

/* Sürüm 64 — Şehir Portalı Yönetim Merkezi: Sayfa Düzenleme ayrı ana modül/kart. */


/* Sürüm 65 — Sayfalama kesin yatay düzen.
   Tarihî/Doğal ve diğer tüm public sayfalama çıktılarında aracı span/ul/li
   elemanlarının tema tarafından 100% genişliğe zorlanmasını engeller. */
.sp-site-main :where(
  .sp-news-pagination,
  .sp-pl-pagination,
  .sp-dir-pagination,
  .sp-portal-pagination,
  .sp-historic-pagination,
  .sp-natural-pagination,
  .sp-death-pagination,
  nav.navigation.pagination,
  .pagination.navigation,
  .wp-block-query-pagination,
  .page-links
){
  display:flex!important;
  flex-flow:row wrap!important;
  align-items:center!important;
  justify-content:center!important;
  gap:8px!important;
  width:100%!important;
  max-width:none!important;
  min-width:0!important;
  margin:24px auto 6px!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
  box-shadow:none!important;
  overflow:visible!important;
}
.sp-site-main :where(.sp-news-pagination,.sp-pl-pagination,.sp-dir-pagination,.sp-portal-pagination,nav.navigation.pagination,.pagination.navigation) :where(ul,ol,.nav-links){
  display:flex!important;
  flex-flow:row wrap!important;
  align-items:center!important;
  justify-content:center!important;
  gap:8px!important;
  width:auto!important;
  max-width:100%!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
  list-style:none!important;
}
.sp-site-main :where(.sp-news-pagination,.sp-pl-pagination,.sp-dir-pagination,.sp-portal-pagination,nav.navigation.pagination,.pagination.navigation) :where(li){
  display:block!important;
  flex:0 0 auto!important;
  width:auto!important;
  max-width:none!important;
  min-width:0!important;
  height:auto!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
  float:none!important;
}
.sp-site-main :where(.sp-portal-pagination,.sp-historic-pagination,.sp-natural-pagination) > span:not(.page-numbers){
  display:contents!important;
  width:auto!important;
  height:auto!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
}
.sp-site-main :where(
  .sp-news-pagination,
  .sp-pl-pagination,
  .sp-dir-pagination,
  .sp-portal-pagination,
  .sp-historic-pagination,
  .sp-natural-pagination,
  nav.navigation.pagination,
  .pagination.navigation,
  .page-links
) :where(a.page-numbers,span.page-numbers,a.post-page-numbers,span.post-page-numbers),
.sp-site-main .page-links > a,
.sp-site-main .page-links > span:not(:first-child){
  display:inline-flex!important;
  flex:0 0 auto!important;
  align-items:center!important;
  justify-content:center!important;
  width:auto!important;
  min-width:40px!important;
  max-width:none!important;
  height:40px!important;
  margin:0!important;
  padding:0 11px!important;
  border:1px solid var(--sp-border,#d9e1ea)!important;
  border-radius:9px!important;
  background:var(--sp-surface,#fff)!important;
  color:var(--sp-text,#344054)!important;
  text-decoration:none!important;
  white-space:nowrap!important;
  font-size:14px!important;
  font-weight:500!important;
  line-height:1!important;
  box-shadow:none!important;
}
.sp-site-main :where(.sp-news-pagination,.sp-pl-pagination,.sp-dir-pagination,.sp-portal-pagination,.sp-historic-pagination,.sp-natural-pagination,nav.navigation.pagination,.pagination.navigation,.page-links) :where(.page-numbers.current,.post-page-numbers.current),
.sp-site-main .page-links > .current{
  background:var(--sp-primary,#b51f35)!important;
  border-color:var(--sp-primary,#b51f35)!important;
  color:#fff!important;
}
@media(max-width:700px){
  .sp-site-main :where(.sp-news-pagination,.sp-pl-pagination,.sp-dir-pagination,.sp-portal-pagination,.sp-historic-pagination,.sp-natural-pagination,nav.navigation.pagination,.pagination.navigation,.page-links){gap:7px!important}
  .sp-site-main :where(.sp-news-pagination,.sp-pl-pagination,.sp-dir-pagination,.sp-portal-pagination,.sp-historic-pagination,.sp-natural-pagination,nav.navigation.pagination,.pagination.navigation,.page-links) :where(a.page-numbers,span.page-numbers,a.post-page-numbers,span.post-page-numbers),
  .sp-site-main .page-links > a,.sp-site-main .page-links > span:not(:first-child){min-width:38px!important;height:38px!important;padding:0 10px!important;font-size:13px!important}
}
