/* themes/eskisehir-yeni/assets/css/yeni.css — koyu (varsayılan) + açık mod katmanı. style.css (taban) üstüne yüklenir.
   Belirteçler :root'ta koyu; html[data-theme="light"] açık. Varsayılan açık: layout html[data-theme="light"] basar; ziyaretçi seçerse koyu. Dış font/görsel yok. */

/* M58: az önce eskişehir kimliği — başlık yazı tipi Manrope (SIL OFL, yerel dosya; dış istek yok). Yalnız 700/800 ve latin + latin-ext (Türkçe) alt kümeleri. */
@font-face { font-family: "Manrope"; font-style: normal; font-weight: 700; font-display: swap; src: url("../fonts/manrope-latin-ext-700-normal.woff2") format("woff2"); unicode-range: U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF; }
@font-face { font-family: "Manrope"; font-style: normal; font-weight: 700; font-display: swap; src: url("../fonts/manrope-latin-700-normal.woff2") format("woff2"); unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD; }
@font-face { font-family: "Manrope"; font-style: normal; font-weight: 800; font-display: swap; src: url("../fonts/manrope-latin-ext-800-normal.woff2") format("woff2"); unicode-range: U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF; }
@font-face { font-family: "Manrope"; font-style: normal; font-weight: 800; font-display: swap; src: url("../fonts/manrope-latin-800-normal.woff2") format("woff2"); unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD; }

:root, html[data-theme="dark"] {
  color-scheme: dark;
  --paper: #121110;        /* sayfa */
  --paper-2: #1a1917;      /* ikincil zemin */
  --surface: #1f1e1c;      /* kart */
  --surface-2: #282624;
  --ink: #f5f2ec;
  --ink-2: #cdc8bf;
  --ink-3: #a39d93;        /* M58: #121110 üzerinde ≈7:1, #1f1e1c üzerinde ≈6:1 */
  --rule: #2e2c29;
  --rule-2: #3f3c38;
  --accent: #e8694d;
  --accent-2: #ffb020;
  --accent-ink: #1a0a06;
  --chip-bg: rgba(232, 105, 77, .16);
  --chip-ink: #f29a84;
  --shadow: 0 1px 0 rgba(255,255,255,.03), 0 8px 24px rgba(0,0,0,.35);
  --amber: #3a2e0b;
  --amber-ink: #ffe29a;
  --typo-a: #1f2a3a; --typo-b: #3a1f2b; --typo-c: #1f3326; --typo-d: #3a301b; --typo-e: #26331c; --typo-f: #1c3035; --typo-g: #2d2238;
  --sans: "Inter", system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  --head: "Manrope", system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  --wrap: 1240px;
  --radius: 10px;
}
html[data-theme="light"] {
  color-scheme: light;
  --paper: #faf7f2;
  --paper-2: #f1ece3;
  --surface: #ffffff;
  --surface-2: #f5f1ea;
  --ink: #1e1e1e;
  --ink-2: #45423d;
  --ink-3: #5f5b54;
  --rule: #e2dcd1;
  --rule-2: #cbc4b7;
  --accent: #b23a22;
  --accent-2: #b35c00;
  --accent-ink: #ffffff;
  --chip-bg: rgba(192, 68, 43, .10);
  --chip-ink: #9e3320;
  --shadow: 0 1px 2px rgba(20,22,27,.06), 0 6px 18px rgba(20,22,27,.06);
  --amber: #fff3c4;
  --amber-ink: #5a3d00;
  --typo-a: #e3eaf4; --typo-b: #f3e6ec; --typo-c: #e5f0e7; --typo-d: #f4ebd8; --typo-e: #ebf2e2; --typo-f: #e2edf0; --typo-g: #ece5f3;
}

body { background: var(--paper); color: var(--ink); font-size: 1rem; }
h1, h2, h3, h4 { font-family: var(--head); letter-spacing: -.015em; }
a:hover { color: var(--accent); }
.skip-link { background: var(--accent); color: var(--accent-ink); }

/* ---- Üst şerit + başlık ---- */
.topline { background: var(--paper-2); border-bottom: 1px solid var(--rule); font-size: .78rem; color: var(--ink-3); }
.topline-in { display: flex; justify-content: space-between; align-items: center; min-height: 32px; }
.topline-link { text-decoration: none; color: var(--ink-2); font-weight: 600; }

.site-header { background: var(--paper); border-bottom: 1px solid var(--rule); position: relative; z-index: 5; }
.masthead { min-height: 64px; flex-wrap: wrap; gap: .25rem .5rem; }
.brand { order: 2; margin: 0 auto 0 .25rem; }
.brand-mark { width: 38px; height: 38px; border-radius: 10px; font-family: var(--head); font-weight: 800; background: var(--accent); color: #fff; }
.brand-name { font-family: var(--head); font-weight: 800; font-size: 1.35rem; letter-spacing: -.03em; }
.menu-toggle { order: 1; }
.masthead-tools { order: 3; display: flex; align-items: center; gap: .25rem; }
.masthead-toggle { color: var(--ink); border-radius: 999px; }
.masthead-toggle:hover, .masthead-toggle[aria-expanded="true"] { border-color: var(--rule-2); }
.ico { width: 20px; height: 20px; display: block; }
.theme-toggle {
  display: none; align-items: center; justify-content: center; width: 44px; height: 44px; padding: 0;
  border: 1px solid var(--rule-2); border-radius: 999px; background: var(--surface); color: var(--accent-2); cursor: pointer;
}
html.js .theme-toggle { display: inline-flex; }
.theme-toggle:hover { border-color: var(--accent-2); }
.theme-toggle .ico-moon { display: none; }
html[data-theme="light"] .theme-toggle { color: var(--ink-2); } /* 11.10.2026 Faz 4b: marka dışı mavi (#3b3f86) → mürekkep tonu */
html[data-theme="light"] .theme-toggle .ico-sun { display: none; }
html[data-theme="light"] .theme-toggle .ico-moon { display: block; }

.section-nav { order: 5; flex: 1 1 100%; border-top: 1px solid var(--rule); background: transparent; }
.section-nav ul { padding: .25rem 0; }
.section-nav a { border-bottom-color: var(--rule); font-size: .95rem; }
.search-form { order: 6; }
.search-form input[type="search"] { background: var(--surface); border-color: var(--rule-2); border-radius: 999px; padding: .4rem 1rem; }
.search-form button, .btn { border-radius: 999px; background: var(--accent); border-color: var(--accent); color: #fff; }
.search-form button:hover, .btn:hover { filter: brightness(1.08); background: var(--accent); }

@media (min-width: 1000px) {
  .masthead { flex-wrap: nowrap; min-height: 72px; gap: 1.25rem; }
  .masthead-toggle.menu-toggle { display: none; }
  .brand { margin: 0; }
  .section-nav.site-panel { display: block; order: 3; flex: 1 1 auto; border: 0; }
  .section-nav ul { flex-direction: row; flex-wrap: wrap; justify-content: center; gap: .15rem; padding: 0; }
  .section-nav a { border: 0; line-height: 40px; min-height: 40px; padding: 0 .8rem; border-radius: 999px; font-size: .93rem; color: var(--ink-2); }
  .section-nav li:first-child a { padding-left: .8rem; }
  .section-nav a:hover { background: var(--surface); color: var(--ink); border: 0; }
  .section-nav a[aria-current="page"] { background: var(--chip-bg); color: var(--chip-ink); border: 0; }
  .section-nav .nav-close { display: none; }
  .masthead-tools { order: 4; }
  .masthead .search-toggle { display: inline-flex; }
  .search-form.site-panel { display: none; }
  html:not(.js) .search-form.site-panel:target, .search-form.site-panel.is-open {
    display: flex; position: absolute; left: 0; right: 0; top: 100%; padding: .75rem max(var(--pad), calc((100vw - var(--wrap)) / 2 + var(--pad)));
    background: var(--paper); border-bottom: 1px solid var(--rule); box-shadow: var(--shadow);
  }
  .search-form .panel-close { display: inline-flex; }
}

/* ---- Çipler ---- */
.chip {
  display: inline-flex; align-items: center; min-height: 26px; padding: 0 .6rem; border: 0; border-radius: 999px;
  background: var(--chip-bg); color: var(--chip-ink); font-size: .72rem; font-weight: 700; letter-spacing: .03em;
  text-transform: uppercase; text-decoration: none;
}
.chip:hover { color: #fff; background: var(--accent); }
.chip-nav .chip { font-size: .85rem; text-transform: none; letter-spacing: 0; min-height: 36px; padding: 0 .9rem; background: var(--surface); color: var(--ink-2); border: 1px solid var(--rule); }
.chip-nav .chip.is-active { background: var(--accent); color: #fff; border-color: var(--accent); }

/* ---- Haber kartı (nc) ---- */
.nc { position: relative; display: grid; align-content: start; min-width: 0; }
.nc-figure { display: block; position: relative; overflow: hidden; border-radius: var(--radius); background: var(--surface-2); text-decoration: none; }
/* 18.10.2026 (kullanıcı): video haber işareti — görselin ORTASINDA tek yuvarlak oynat düğmesi (tuğla zemin, beyaz kenar, beyaz üçgen); yazılı rozet yok
   (kullanıcı: "sol üstte tekrar video yazmaya gerek yok"). Boy karta göre: manşet 88, kart 64, satır 52, yan 40; mobilde yarı boy. Üzerine gelince hafif büyür.
   Tipografik yüzeyde de görünür. */
.has-video .nc-figure::before, .has-video .nc-figure::after { content: ""; position: absolute; left: 50%; top: 50%; z-index: 2; pointer-events: none; }
.has-video .nc-figure::before { width: 64px; height: 64px; margin: -32px 0 0 -32px; border-radius: 50%; background: rgba(192,68,43,.94); border: 3px solid rgba(255,255,255,.9);
  box-shadow: 0 6px 20px rgba(0,0,0,.4); transition: transform .2s ease; }
.has-video .nc-figure::after { margin: -12px 0 0 -8px; border-style: solid; border-width: 12px 0 12px 20px; border-color: transparent transparent transparent #fff; }
.has-video:hover .nc-figure::before { transform: scale(1.08); }
@media (prefers-reduced-motion: reduce) { .has-video:hover .nc-figure::before { transform: none; } }
.nc-hero.has-video .nc-figure::before { width: 88px; height: 88px; margin: -44px 0 0 -44px; }
.nc-hero.has-video .nc-figure::after { margin: -16px 0 0 -11px; border-width: 16px 0 16px 27px; }
.nc-side.has-video .nc-figure::before { width: 40px; height: 40px; margin: -20px 0 0 -20px; border-width: 2px; }
.nc-side.has-video .nc-figure::after { margin: -8px 0 0 -5px; border-width: 8px 0 8px 13px; }
.nc-row.has-video .nc-figure::before { width: 52px; height: 52px; margin: -26px 0 0 -26px; }
.nc-row.has-video .nc-figure::after { margin: -10px 0 0 -6px; border-width: 10px 0 10px 16px; }
@media (max-width: 899px) {
  .nc-hero.has-video .nc-figure::before { width: 56px; height: 56px; margin: -28px 0 0 -28px; border-width: 2px; }
  .nc-hero.has-video .nc-figure::after { margin: -10px 0 0 -6px; border-width: 10px 0 10px 16px; }
  .nc-tile.has-video .nc-figure::before { width: 48px; height: 48px; margin: -24px 0 0 -24px; border-width: 2px; }
  .nc-tile.has-video .nc-figure::after { margin: -9px 0 0 -5px; border-width: 9px 0 9px 14px; }
  .nc-row.has-video .nc-figure::before { width: 36px; height: 36px; margin: -18px 0 0 -18px; border-width: 2px; }
  .nc-row.has-video .nc-figure::after { margin: -7px 0 0 -4px; border-width: 7px 0 7px 11px; }
  .nc-side.has-video .nc-figure::before { width: 30px; height: 30px; margin: -15px 0 0 -15px; border-width: 2px; }
  .nc-side.has-video .nc-figure::after { margin: -6px 0 0 -3px; border-width: 6px 0 6px 10px; }
}
.nc-video-label { display: inline-flex; align-items: center; gap: .25rem; color: var(--accent); }
.nc-video-label svg { display: block; }
.nc-figure picture, .nc-figure img { display: block; width: 100%; height: 100%; }
.nc-figure img { object-fit: cover; transition: transform .35s ease; }
/* 01.10.2026: dikey fotoğraf yatay kartta ortadan kırpılınca kafa kesiliyordu → üst kısım (yüz) görünür; odak noktası varsa satır içi stil onu kullanır */
.nc-figure.is-portrait img { object-position: 50% 15%; }
.nc:hover .nc-figure img { transform: scale(1.03); }
@media (prefers-reduced-motion: reduce) { .nc-figure img { transition: none; } .nc:hover .nc-figure img { transform: none; } }
.nc-typo { display: grid; place-items: center; width: 100%; height: 100%; background: var(--typo-a); }
/* M40: eski dev harf kuralı kaldırıldı (panel artık desen + bölüm adı) */
.nc-typo > span { font-family: var(--head); }
.nc-meta { display: flex; flex-wrap: wrap; align-items: center; gap: .35rem .6rem; margin: 0 0 .45rem; font-size: .78rem; color: var(--ink-3); }
.nc-district { color: var(--ink-2); text-decoration: none; font-weight: 600; }
.nc-time { color: var(--ink-3); }
.nc-updated { color: var(--accent, #C0442B); font-weight: 600; }   /* N106 */
.nc-title { margin: 0; font-weight: 750; line-height: 1.25; }
.nc-title a { text-decoration: none; }
.nc-title a:hover { color: var(--ink); text-decoration: underline; text-decoration-color: var(--accent); text-decoration-thickness: 2px; }
.nc-summary { margin: .5rem 0 0; color: var(--ink-2); font-size: .94rem; line-height: 1.5; display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; }
.nc-more { margin: .75rem 0 0; font-size: .85rem; font-weight: 700; }
.nc-more a { color: var(--accent); text-decoration: none; }
.nc-more a span { display: inline-block; transition: transform .2s; }
.nc-more a:hover span { transform: translateX(3px); }
.nc-source { font-size: .82rem; color: var(--ink-3); margin: .4rem 0 0; }

/* hero: görsel üstünde degrade + metin */
.nc-hero { border-radius: calc(var(--radius) + 4px); overflow: hidden; background: #000; box-shadow: var(--shadow); }
.nc-hero .nc-figure { border-radius: 0; aspect-ratio: 16 / 10; }
.nc-hero .nc-body {
  position: absolute; inset: auto 0 0 0; padding: 3.5rem 1.1rem 1.1rem;   /* N109: spot/kredi kalktı → kısa degrade */
  background: linear-gradient(to top, rgba(6,7,10,.9) 0%, rgba(6,7,10,.6) 50%, rgba(6,7,10,0) 100%); color: #fff;
}
.nc-hero .nc-title { font-size: clamp(1.4rem, 1rem + 2.2vw, 2.35rem); color: #fff; max-width: 32ch; }
.nc-hero .nc-title a:hover { color: #fff; }
.nc-hero .nc-time, .nc-hero .nc-district { color: rgba(255,255,255,.8); }
.nc-hero .chip { background: var(--accent); color: #fff; }
.nc-hero.no-media { background: var(--surface); }
.nc-hero.no-media .nc-body { position: static; background: none; color: var(--ink); padding: 1rem; }
.nc-hero.no-media .nc-title, .nc-hero.no-media .nc-title a { color: var(--ink); }
/* 26.09.2026 (kullanıcı): mobil/tablette manşet fotoğrafı KESİLMEZ — kendi en-boy oranıyla (img width/height → CLS yok);
   başlık fotoğrafın alt kısmında degrade üstünde, en çok 2 satır (…). Çok dikey fotoğraf ekranın %75'ini geçmez (kenarda koyu zemin). */
@media (max-width: 899px) {
  .nc-hero .nc-figure:not(.nc-figure-typo) { aspect-ratio: auto; }
  .nc-hero .nc-figure:not(.nc-figure-typo) picture, .nc-hero .nc-figure:not(.nc-figure-typo) img { height: auto; }
  .nc-hero .nc-figure:not(.nc-figure-typo) img { max-height: 75vh; object-fit: contain; }
  .nc-hero .nc-body { padding: 2.6rem .9rem .85rem; }
  .nc-hero .nc-meta { margin-bottom: .3rem; }
  .nc-hero .nc-title { font-size: clamp(1.15rem, .9rem + 1.6vw, 1.6rem); line-height: 1.2;
    display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
}


/* side: küçük görsel + başlık */
.nc-side { grid-template-columns: 38% 1fr; gap: .85rem; align-items: center; padding: .6rem; background: var(--surface); border: 1px solid var(--rule); border-radius: var(--radius); }
.nc-side .nc-figure { aspect-ratio: 4 / 3; border-radius: calc(var(--radius) - 3px); }
.nc-side .nc-title { font-size: 1rem; display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; }
.nc-side .nc-meta { margin-bottom: .3rem; }

/* tile: 3 sütun kart */
.nc-tile { background: var(--surface); border: 1px solid var(--rule); border-radius: calc(var(--radius) + 2px); overflow: hidden; box-shadow: var(--shadow); }
.nc-tile .nc-figure { border-radius: 0; aspect-ratio: 16 / 10; }
.nc-tile .nc-body { padding: .9rem 1rem 1rem; display: flex; flex-direction: column; height: 100%; }
.nc-tile .nc-title { font-size: 1.12rem; }
.nc-tile .nc-more { margin-top: auto; padding-top: .75rem; }
.nc-tile.nc-external .nc-body { padding-top: 1rem; }

/* row: liste */
.nc-row { grid-template-columns: 34% 1fr; gap: .9rem; padding: 1rem 0; border-bottom: 1px solid var(--rule); }
.nc-row .nc-figure { aspect-ratio: 3 / 2; }
.nc-row .nc-title { font-size: 1.08rem; }
@media (min-width: 640px) { .nc-row { grid-template-columns: 240px 1fr; } }
.nc-compact .nc-title { font-size: .98rem; }

.typo-eskisehirspor { background: var(--typo-a); } .typo-kultur-sanat { background: var(--typo-b); } .typo-egitim { background: var(--typo-c); }
.typo-ekonomi { background: var(--typo-d); } .typo-yasam { background: var(--typo-e); } .typo-kent { background: var(--typo-f); } .typo-ulasim { background: var(--typo-g); }

/* ---- Ana sayfa ---- */
.site-main { padding-top: 1.25rem; }
.hero-y { display: grid; gap: 1rem; margin-bottom: 1.75rem; }
.hero-side { display: grid; gap: .75rem; align-content: start; }
@media (min-width: 900px) {
  .hero-y { grid-template-columns: minmax(0, 1.85fr) minmax(0, 1fr); gap: 1.25rem; align-items: stretch; }
  .hero-y.hero-solo { grid-template-columns: 1fr; }
  .hero-main .nc-hero { height: 100%; }
  .hero-main .nc-hero .nc-figure { height: 100%; aspect-ratio: auto; min-height: 460px; }
  .hero-side { grid-template-rows: repeat(3, 1fr); }
  .hero-side .nc-side { height: 100%; }
}

.topics { margin: 0 0 2rem; border-top: 1px solid var(--rule); border-bottom: 1px solid var(--rule); padding: 1rem 0; }
.topics ul { list-style: none; margin: 0; padding: 0 0 .25rem; display: flex; gap: 1.1rem; overflow-x: auto; scroll-snap-type: x proximity; scrollbar-width: thin; }
.topics li { flex: 0 0 auto; scroll-snap-align: start; }
.topics a { display: grid; justify-items: center; gap: .45rem; width: 84px; text-decoration: none; text-align: center; }
.topic-dot {
  display: grid; place-items: center; width: 72px; height: 72px; border-radius: 50%; overflow: hidden;
  background: var(--surface-2); color: var(--ink); font-family: var(--head); font-weight: 800; font-size: 1.6rem;
  box-shadow: 0 0 0 2px var(--paper), 0 0 0 4px var(--accent);
}
.topic-dot img { width: 100%; height: 100%; object-fit: cover; }
.topic-city { color: var(--accent-2); }
.topic-name { font-size: .78rem; font-weight: 650; color: var(--ink-2); line-height: 1.2; }
.topics a:hover .topic-dot { box-shadow: 0 0 0 2px var(--paper), 0 0 0 4px var(--accent-2); }
.topics a:hover .topic-name { color: var(--ink); }
@media (min-width: 900px) { .topics ul { justify-content: center; gap: 1.75rem; } }

.rail { margin: 0 0 2.25rem; }
.rail-head { display: flex; align-items: baseline; justify-content: space-between; gap: 1rem; margin-bottom: 1rem; }
.rail-title { position: relative; margin: 0; padding-left: .85rem; font-size: clamp(1.2rem, 1rem + 1vw, 1.55rem); font-weight: 800; }
.rail-title::before { content: ""; position: absolute; left: 0; top: .15em; bottom: .15em; width: 4px; border-radius: 4px; background: var(--accent); }
.rail-title a { text-decoration: none; }
.rail-more { font-size: .88rem; font-weight: 700; color: var(--ink-2); text-decoration: none; white-space: nowrap; }
.rail-more:hover { color: var(--accent); }
.tile-grid { display: grid; gap: 1rem; grid-template-columns: 1fr; }
@media (min-width: 640px) { .tile-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (min-width: 1000px) { .tile-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1.25rem; } }

.service-rail .service-list { display: grid; gap: .5rem; grid-template-columns: repeat(auto-fill, minmax(220px, 1fr)); }
.service-rail .service-list li { background: var(--surface); border: 1px solid var(--rule); border-radius: var(--radius); padding: .6rem .8rem; }
.status-chip { background: transparent; }

/* ---- Liste sayfaları ---- */
.page-head { border-bottom: 1px solid var(--rule); padding-bottom: .8rem; margin-bottom: 1.1rem; }
.page-head h1 { font-weight: 800; }
.list-page .tile-grid { margin-bottom: 1.5rem; }
.pagination a { color: var(--accent); }
.pagination a.more-btn, .pagination a.more-btn:hover, .pagination a.more-btn:focus { color: #fff; }

/* ---- Okuma sayfası ---- */
.article { max-width: 780px; }
.article-crumbs a { color: var(--chip-ink); }
.article-back { color: var(--ink-2) !important; }
.kicker { color: var(--accent-2); font-weight: 700; text-transform: uppercase; letter-spacing: .05em; font-size: .8rem; }
.article-title { font-family: var(--head); font-weight: 850; letter-spacing: -.025em; }
/* 30.09.2026 (kullanıcı): masaüstünde haber başlığı en çok 2 satır — başlık okuma sütunundan geniş (≤1040px) taşar, satırlar dengelenir;
   90 karakteri aşan başlık bir kademe küçük. Mobilde uzun başlık doğal olarak daha çok satır alır. */
@media (min-width: 900px) {
  .article-head .article-title { max-width: none; width: min(1040px, calc(100vw - 3rem)); margin-left: 50%; transform: translateX(-50%);
    text-wrap: balance; font-size: min(2.75rem, 4.3vw); }
  .article-head .article-title.is-long { font-size: min(2.3rem, 3.6vw); }
}
.article-summary { font-family: var(--sans); color: var(--ink-2); }
.article-byline { border-top-color: var(--rule); color: var(--ink-3); }
.share { border-color: var(--rule); }
.share-btn { background: var(--surface); color: var(--ink); border-color: var(--rule-2); border-radius: 999px; }
.news-figure-hero { margin: 1.25rem 0 1.75rem; }
.news-figure-hero img { border-radius: calc(var(--radius) + 2px); background: var(--surface-2); max-height: min(78vh, 620px); object-fit: cover; }
/* 01.10.2026: dikey fotoğraf kırpılmaz (kafa kesiliyordu) — tamamı görünür, yanları zemin rengi */
.news-figure-hero.is-portrait img { object-fit: contain; max-height: min(78vh, 620px); }
.figure-caption { color: var(--ink-3); }
.article-body { font-size: 1.12rem; line-height: 1.8; color: var(--ink); }
.article-body p:first-child::first-letter { font-weight: 800; }
.article-body p.ilgili-haber { display: none; } /* 29.10.2026: eski haberlerdeki gövde sonu "İlgili haber" satırı — KONU kutusu aynı işi görüyor */
.tag-list a { background: var(--surface); border-color: var(--rule-2); color: var(--ink-2); }
.tag-list a:hover { color: var(--accent); border-color: var(--accent); }
.sources-box, .corrections-box { background: var(--surface); border: 1px solid var(--rule); border-radius: var(--radius); padding: 1rem 1.1rem; }
/* H02 (23.10.2026): haberin başında güncelleme / gelişme notları, gelişme haberinde ilk haber bağlantısı */
.followups { margin: 0 0 1.1rem; border-left: 4px solid var(--accent); background: var(--surface); border-radius: 0 var(--radius) var(--radius) 0; padding: .7rem 1rem; }
.followup { margin: 0; line-height: 1.5; }
.followup + .followup { margin-top: .55rem; padding-top: .55rem; border-top: 1px solid var(--rule); }
.followup-tag { display: inline-block; background: var(--accent); color: var(--accent-ink); font-size: .72rem; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; padding: .12rem .45rem; border-radius: 4px; margin-right: .4rem; vertical-align: .1em; }
.followup time { font-size: .85rem; color: var(--ink-3); margin-right: .35rem; }
.followup a { font-weight: 600; }
.followup-parent { margin: 1.2rem 0; padding: .6rem .9rem; background: var(--surface); border: 1px solid var(--rule); border-radius: var(--radius); }
.followup-parent a { font-weight: 600; }
/* 27.10.2026: konu dizisi (ilk haber + gelişmeler) — başlık: konu adı + sayı; satır: adım numarası, etiket+saat, başlık; okunan haber vurgulu */
.thread { margin: 1.4rem 0; padding: 0; background: var(--surface); border: 1px solid var(--rule); border-radius: var(--radius); overflow: hidden; }
.thread-head { display: flex; align-items: center; gap: .55rem; flex-wrap: wrap; padding: .7rem 1rem; background: var(--paper-2, var(--surface)); border-bottom: 1px solid var(--rule); }
.thread-head .followup-tag { margin: 0; }
.thread-name { font-size: 1.05rem; font-weight: 800; line-height: 1.3; }
.thread-count { margin-left: auto; font-size: .78rem; color: var(--ink-3); white-space: nowrap; }
.thread-list { list-style: none; margin: 0; padding: .35rem 0; }
.thread-item { display: flex; gap: .8rem; align-items: flex-start; margin: 0; padding: .6rem 1rem; line-height: 1.4; border-top: 1px solid var(--rule); }
.thread-item:first-child { border-top: 0; }
.thread-item.is-current { background: color-mix(in srgb, var(--accent) 9%, var(--surface)); box-shadow: inset 4px 0 0 var(--accent); }
.thread-step { flex: 0 0 1.5rem; width: 1.5rem; height: 1.5rem; margin-top: .15rem; border-radius: 50%; background: var(--rule); color: var(--ink-2, var(--ink)); font-size: .78rem; font-weight: 800; display: inline-flex; align-items: center; justify-content: center; }
.thread-item.is-current .thread-step { background: var(--accent); color: var(--accent-ink); }
.thread-body { display: flex; flex-direction: column; gap: .12rem; min-width: 0; }
.thread-kicker { font-size: .74rem; font-weight: 700; letter-spacing: .04em; text-transform: uppercase; color: var(--ink-3); }
.thread-item.is-current .thread-kicker { color: var(--accent); }
.thread-kicker time { font-weight: 500; letter-spacing: 0; text-transform: none; }
.thread-item a { font-weight: 600; text-decoration: none; }
.thread-item a:hover { text-decoration: underline; }
.thread-now { font-weight: 800; }
.source-btn { background: var(--accent); color: #fff; border-color: var(--accent); }
.source-btn:hover, .source-btn:focus-visible { color: #fff; filter: brightness(1.08); }
.related { max-width: var(--wrap); margin-top: 2.5rem; }
.related .block-title { font-family: var(--head); font-weight: 800; border: 0; }
.typo-card { background: var(--surface-2); border-color: var(--rule); border-radius: var(--radius); }
.typo-initial { color: var(--ink); opacity: .08; }

/* ---- Alt bilgi ---- */
.site-footer { background: var(--paper-2); border-top: 1px solid var(--rule); color: var(--ink-2); }
.footer-brand { font-family: var(--head); font-weight: 800; color: var(--ink); }
.footer-bottom { border-top-color: var(--rule); color: var(--ink-3); }

/* ---- Servis / spor sayfaları (taban bileşenler, yeni zemin) ---- */
.service-card, .sport-panel { border-radius: var(--radius); border-color: var(--rule); }
.demo-banner { border-bottom-color: var(--rule); }

/* 900–999px: taban tema bu aralıkta menüyü satır içi açar; bu temada mobil davranış 1000px'e kadar sürer. */
@media (min-width: 900px) and (max-width: 999px) {
  .masthead { flex-wrap: wrap; }
  .masthead-toggle { display: inline-flex; }
  .section-nav.site-panel, .search-form.site-panel { display: none; }
  html:not(.js) .section-nav.site-panel:target, .section-nav.site-panel.is-open { display: block; }
  html:not(.js) .search-form.site-panel:target, .search-form.site-panel.is-open { display: flex; }
  .section-nav ul { flex-direction: column; }
  .brand { margin: 0 auto 0 .25rem; }
}

/* ---- Düzeltmeler (ekran görüntüsü turu) ---- */
@media (max-width: 999px) {
  .menu-toggle .toggle-label { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); }
  .masthead { flex-wrap: wrap; }
  .brand-name { font-size: 1.2rem; }
  .brand-mark { width: 32px; height: 32px; font-size: 1.3rem; }
  .masthead-tools .masthead-toggle { display: inline-flex; }
}
@media (min-width: 1000px) {
  .section-nav .nav-home, .section-nav li:has(> a[href$="/sehir"]) { display: none; }
  .section-nav ul { flex-wrap: nowrap; gap: 0; }
  .section-nav a { padding: 0 .62rem; font-size: .9rem; }
  .section-nav li:nth-child(2) a { padding-left: .62rem; }
}
@media (min-width: 1000px) and (max-width: 1180px) { .section-nav .nav-latest { display: none; } }
.service-rail .service-list li { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: .35rem .5rem; }
.footer-grid nav:first-of-type .footer-links { grid-template-columns: repeat(2, minmax(0, 1fr)); column-gap: 1.5rem; }
.footer-links li { break-inside: avoid; }
.related .block-title { border-top: 1px solid var(--rule); padding-top: 1rem; }

/* Manşet yan sütunu: 3 kart alt alta, manşet yüksekliğini tam doldurur; görsel kartın sol yarısını kenardan kenara kaplar. */
@media (min-width: 900px) {
  .hero-side { grid-template-rows: repeat(3, minmax(0, 1fr)); gap: .9rem; }
  .hero-side .nc-side { grid-template-columns: 46% 1fr; grid-template-rows: minmax(0, 1fr); gap: 0; padding: 0; overflow: hidden; align-items: stretch; min-height: 0; }   /* satır kart yüksekliğini doldurur: fotoğraf altta boşluk bırakmaz */
  .hero-side .nc-side .nc-figure { aspect-ratio: auto; height: 100%; border-radius: 0; }
  .hero-side .nc-side .nc-body { padding: .8rem .95rem; display: flex; flex-direction: column; justify-content: center; min-width: 0; }
  .hero-side .nc-side .nc-meta { gap: .3rem .5rem; }
  .hero-side .nc-side .nc-time { font-size: .72rem; }
  .hero-side .nc-side .nc-title { font-size: 1.02rem; -webkit-line-clamp: 4; }
  .hero-main .nc-hero .nc-figure { min-height: 480px; }
}
@media (min-width: 900px) {
  .hero-main .nc-hero { min-height: 480px; }
  .hero-main .nc-hero .nc-figure { position: absolute; inset: 0; height: auto; min-height: 0; }
  /* 02.10.2026 (kullanıcı): dikey fotoğraf manşet bloğunu uzatıyordu (yan kart görselinin doğal yüksekliği satırı büyütüyordu).
     Manşet bloğu sabit yükseklik; manşet ve yan kart görselleri yerleşime boyut katmaz, kutuyu doldurup kırpılır
     (dikeyde üst kısım/yüz görünür — .is-portrait 50% 15%; odak noktası varsa satır içi stil kazanır). */
  .hero-y:not(.hero-solo) { grid-template-rows: 480px; }
  .hero-y.hero-solo .nc-hero { height: 480px; }
  .hero-main, .hero-side { min-height: 0; }
  .hero-side .nc-side .nc-figure { position: relative; min-height: 0; }
  .hero-side .nc-side .nc-figure picture, .hero-side .nc-side .nc-figure img { position: absolute; inset: 0; width: 100%; height: 100%; }
}
@media (min-width: 1200px) {
  .hero-y:not(.hero-solo) { grid-template-rows: 500px; }
  .hero-y.hero-solo .nc-hero { height: 500px; }
}
/* Şehir servisleri: tam satırlar (6 → masaüstünde 6 sütun, tablette 3, mobilde 2) */
.service-rail .service-list { grid-template-columns: repeat(2, minmax(0, 1fr)); }
@media (min-width: 640px) { .service-rail .service-list { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
@media (min-width: 1100px) { .service-rail .service-list { grid-template-columns: repeat(6, minmax(0, 1fr)); } }
.service-rail .service-list li { flex-direction: column; align-items: flex-start; justify-content: center; }
.service-rail .status-chip { max-width: 100%; white-space: normal; }

/* ---- M13 şehir servisleri: nöbetçi eczane + hava durumu ---- */
.svc-summary { font-weight: 700; color: var(--ink); font-size: .92rem; }
.service-rail .service-list li a { color: var(--ink-2); font-size: .85rem; }
.duty-window { color: var(--ink-2); margin: -.25rem 0 1rem; }
.duty-grid { display: grid; gap: 1rem; grid-template-columns: 1fr; margin: 1rem 0; }
@media (min-width: 700px) { .duty-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (min-width: 1100px) { .duty-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
.duty-card { background: var(--surface); border: 1px solid var(--rule); border-radius: calc(var(--radius) + 2px); padding: 1rem 1.1rem; display: flex; flex-direction: column; scroll-margin-top: 1rem; }
.duty-name { font-size: 1.12rem; margin: .1rem 0 .35rem; }
.duty-address { color: var(--ink-2); font-size: .93rem; margin: 0 0 .9rem; }
.duty-actions { display: flex; flex-wrap: wrap; gap: .5rem; margin: auto 0 0; }
.duty-actions .btn { font-size: .88rem; min-height: 40px; padding: .35rem .9rem; }
.btn-outline { background: transparent; color: var(--ink); border: 1px solid var(--rule-2); border-radius: 999px; }
.btn-outline:hover { border-color: var(--accent); color: var(--accent); background: transparent; }
.duty-credit { font-size: .85rem; margin-top: 1rem; }
.duty .chip-nav ul { margin-bottom: .25rem; }

.wx-now { display: grid; gap: 1rem; background: linear-gradient(135deg, var(--surface) 0%, var(--surface-2) 100%); border: 1px solid var(--rule); border-radius: calc(var(--radius) + 4px); padding: 1.25rem; }
@media (min-width: 800px) { .wx-now { grid-template-columns: 1.2fr 1fr; align-items: center; padding: 1.5rem 1.75rem; } }
.wx-now-main { display: flex; align-items: center; gap: 1rem; }
.wx-now-main .wx-ico { width: 88px; height: 88px; flex: none; }
.wx-temp { font-size: clamp(3rem, 2rem + 4vw, 4.5rem); line-height: 1; margin: 0; font-weight: 800; letter-spacing: -.04em; }
.wx-label { margin: .35rem 0 0; color: var(--ink-2); }
.wx-meta { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .6rem 1rem; margin: 0; }
.wx-meta div { background: var(--paper-2); border-radius: var(--radius); padding: .55rem .75rem; }
.wx-meta dt { font-size: .75rem; color: var(--ink-3); text-transform: uppercase; letter-spacing: .04em; }
.wx-meta dd { margin: 0; font-weight: 700; font-size: 1.05rem; }
.wx-ico { width: 34px; height: 34px; color: #f2c14e; display: block; }
.wx-cloud, .wx-rain, .wx-snow, .wx-sleet, .wx-fog, .wx-thunder { color: #b8c2d3; }
.wx-sun-cloud { color: #b8c2d3; }
.wx-sun-cloud .i-sun { color: #f2c14e; }
html[data-theme="light"] .wx-cloud, html[data-theme="light"] .wx-rain, html[data-theme="light"] .wx-snow, html[data-theme="light"] .wx-sleet,
html[data-theme="light"] .wx-fog, html[data-theme="light"] .wx-thunder, html[data-theme="light"] .wx-sun-cloud { color: #8391a7; }
.wx-sub { margin: 1.75rem 0 .8rem; font-size: 1.15rem; }
.wx-hours { list-style: none; margin: 0; padding: 0 0 .5rem; display: grid; grid-auto-flow: column; grid-auto-columns: minmax(74px, 1fr); gap: .5rem; overflow-x: auto; }
.wx-hours li { background: var(--surface); border: 1px solid var(--rule); border-radius: var(--radius); padding: .6rem .4rem; display: grid; justify-items: center; gap: .25rem; text-align: center; }
.wx-h { font-size: .8rem; color: var(--ink-3); }
.wx-t { font-weight: 800; font-size: 1.05rem; }
.wx-p { font-size: .72rem; color: #5aa9ff; }
.wx-days { list-style: none; margin: 0; padding: 0; border: 1px solid var(--rule); border-radius: calc(var(--radius) + 2px); overflow: hidden; }
.wx-days li { display: grid; grid-template-columns: minmax(0, 1.2fr) 40px minmax(0, 1.6fr) auto 60px; align-items: center; gap: .75rem; padding: .7rem 1rem; background: var(--surface); border-top: 1px solid var(--rule); }
.wx-days li:first-child { border-top: 0; }
.wx-day { font-weight: 700; }
.wx-dl { color: var(--ink-2); font-size: .92rem; }
.wx-mm { white-space: nowrap; font-size: 1.05rem; }
@media (max-width: 599px) {
  .wx-days li { grid-template-columns: minmax(0, 1fr) 34px auto; }
  .wx-dl, .wx-days .wx-p { display: none; }
}

/* ---- M14 elektrik / su kesintileri ---- */
.outage-empty { background: var(--surface); border: 1px solid var(--rule); border-radius: calc(var(--radius) + 2px); padding: 1rem 1.2rem; }
.outage-day { font-size: 1.05rem; margin: 1.5rem 0 .6rem; color: var(--ink-2); text-transform: none; }
.outage-list { display: grid; gap: .6rem; }
.outage-card { display: grid; grid-template-columns: 1fr; gap: .35rem .9rem; background: var(--surface); border: 1px solid var(--rule); border-left: 4px solid var(--accent-2); border-radius: var(--radius); padding: .85rem 1rem; }
@media (min-width: 700px) { .outage-card { grid-template-columns: 150px 1fr; align-items: start; } }
.outage-card.is-live { border-left-color: var(--accent); }
.outage-time strong { font-size: 1.05rem; display: block; }
.chip-live { background: var(--accent); color: #fff; margin-top: .35rem; }
.outage-reason { margin: 0 0 .35rem; }
.outage-areas { margin: 0; color: var(--ink-2); font-size: .92rem; }
.outage-areas summary { cursor: pointer; color: var(--ink); font-weight: 600; min-height: 32px; display: flex; align-items: center; }
.outage-areas ul { margin: .4rem 0 0; padding-left: 1.1rem; columns: 2 220px; column-gap: 1.5rem; }
.outage-areas li { break-inside: avoid; margin-bottom: .2rem; }
.water-list { list-style: none; margin: 0; padding: 0; display: grid; gap: .6rem; }
.water-list li { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: .5rem 1rem; background: var(--surface); border: 1px solid var(--rule); border-radius: var(--radius); padding: .8rem 1rem; }
.water-title { font-weight: 700; }

/* ---- M15 ulaşım ---- */
.transit-links { display: flex; flex-wrap: wrap; gap: .5rem; margin: 0 0 1.25rem; }
.transit-list li > span { display: grid; gap: .2rem; min-width: 0; }
.transit-list li.is-old { opacity: .72; }
.transit-list .nc-meta { margin: 0; }

/* ---- M16 kurumsal sayfalar ---- */
.footer-corp { list-style: none; padding: 0; margin: .75rem 0 0; display: flex; flex-wrap: wrap; gap: .25rem 1rem; }
.footer-corp a { color: var(--ink-2); text-decoration: none; font-size: .9rem; }
.footer-corp a:hover { color: var(--accent); text-decoration: underline; }
.info-layout { display: grid; gap: 1.5rem; }
@media (min-width: 900px) { .info-layout { grid-template-columns: 240px minmax(0, 1fr); align-items: start; } .info-nav { position: sticky; top: 1rem; } }
.info-nav ul { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: .4rem; }
@media (min-width: 900px) { .info-nav ul { flex-direction: column; } }
.info-nav a { display: block; padding: .55rem .85rem; border-radius: var(--radius); background: var(--surface); border: 1px solid var(--rule); color: var(--ink-2); text-decoration: none; font-weight: 600; font-size: .92rem; }
.info-nav a[aria-current="page"] { background: var(--chip-bg); color: var(--chip-ink); border-color: transparent; }
.info-article { max-width: 760px; margin: 0; }
.info-section { margin: 0 0 1.75rem; }
.info-section h2 { font-size: 1.25rem; margin: 0 0 .6rem; }
.info-section p, .info-section li { color: var(--ink); line-height: 1.7; }
.kunye { margin: 0 0 2rem; border: 1px solid var(--rule); border-radius: calc(var(--radius) + 2px); overflow: hidden; }
.kunye div { display: grid; grid-template-columns: 1fr; gap: .15rem 1rem; padding: .75rem 1rem; background: var(--surface); border-top: 1px solid var(--rule); }
.kunye div:first-child { border-top: 0; }
@media (min-width: 640px) { .kunye div { grid-template-columns: 240px 1fr; } }
.kunye dt { color: var(--ink-3); font-size: .9rem; }
.kunye dd { margin: 0; font-weight: 600; overflow-wrap: anywhere; }

/* ---- M17 etkinlikler ---- */
.event-grid { display: grid; gap: .8rem; grid-template-columns: 1fr; }
@media (min-width: 800px) { .event-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
.event-card { display: grid; grid-template-columns: 64px 1fr; gap: 1rem; background: var(--surface); border: 1px solid var(--rule); border-radius: calc(var(--radius) + 2px); padding: .9rem 1rem; }
.event-date { display: grid; place-items: center; align-content: center; background: var(--chip-bg); color: var(--chip-ink); border-radius: var(--radius); height: 64px; text-transform: uppercase; }
.event-date strong { font-size: 1.5rem; line-height: 1; }
.event-date span { font-size: .75rem; font-weight: 700; }
.event-body .duty-name { font-size: 1.02rem; }
.event-body .duty-actions { margin-top: .4rem; }

/* M39 (kullanıcı, 17.09.2026): masaüstünde üst menü KAYMAZ ve markanın yanını daraltmaz — tam genişlikte ikinci satıra iner,
   sığmazsa alt satıra sarar. "Ana sayfa" (logo aynı işi yapar) ve "Son haberler" masaüstünde gizli; mobil menüde kalır. */
@media (min-width: 1000px) {
  .masthead { flex-wrap: wrap; row-gap: 0; }
  .masthead .section-nav.site-panel { order: 5; flex: 1 0 100%; border-top: 1px solid var(--rule); margin-top: .25rem; }
  .masthead .section-nav ul { justify-content: flex-start; flex-wrap: wrap; margin: 0; gap: .15rem; }
  .masthead .section-nav .nav-home, .masthead .section-nav .nav-latest { display: none; }
}

/* ===== M40 tema cilası (17.09.2026, kullanıcı isteği) ===== */
.nc-typo { position: relative; display: grid; align-content: end; justify-items: start; gap: .1rem; padding: .7rem .8rem; place-items: end start; }
.nc-typo-pattern { position: absolute; inset: 0; background-image: repeating-linear-gradient(135deg, rgba(127,127,127,.10) 0 2px, transparent 2px 11px); }
.nc-typo-label { position: relative; font-family: var(--head); font-weight: 700; font-size: .95rem; color: var(--ink-2); }
.nc-typo::before { content: ""; position: absolute; left: 0; right: 0; top: 0; height: 3px; background: var(--accent); opacity: .5; }

/* Haber başlıkları kırpılmaz */
.nc-title, .nc-side .nc-title, .hero-side .nc-side .nc-title { display: block; overflow: visible; -webkit-line-clamp: unset; }

/* Tipografik kart (okuma sayfası) */
.typo-pattern { position: absolute; inset: 0; background-image: repeating-linear-gradient(135deg, rgba(127,127,127,.10) 0 2px, transparent 2px 11px); }
.typo-card::before { content: ""; position: absolute; left: 0; right: 0; top: 0; height: 3px; background: var(--accent); opacity: .5; }
.typo-card { display: grid; align-content: end; gap: .15rem; }
.typo-section { position: relative; font-family: var(--head); font-weight: 700; font-size: 1rem; color: var(--ink-2); }
.typo-mark { position: relative; font-size: .72rem; letter-spacing: .06em; color: var(--ink-3); }

/* Köşe yazısı kartları */
.columnist-latest { text-decoration: none; }
.columnist-latest:hover { text-decoration: underline; text-decoration-thickness: 2px; text-underline-offset: 2px; }
.columnist-card-head:hover .columnist-name { text-decoration: underline; }

/* Reklam görseli oranı bozuk olsa da şerit şişmesin */
.azp .azp-bag { max-height: 260px; }
.azp-ust .azp-bag { max-height: 130px; }

/* M40: fotoğrafsız kartta kadraj kısalır (manşet ve yan kartlar boş kutuya dönmesin) */
.nc-hero .nc-figure-typo { aspect-ratio: 21 / 6; }
.nc-tile .nc-figure-typo, .nc-side .nc-figure-typo { aspect-ratio: 5 / 2; }
.typo-slot-lead, .typo-slot-hero { aspect-ratio: auto; min-height: 4.5rem; }
/* M40: yan/küçük kartlarda tipografik panel etiketi kutuyu aşmasın */
.nc-typo { padding: .5rem .55rem; }
.nc-typo-label { font-size: .78rem; line-height: 1.15; max-width: 100%; overflow: hidden; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; }
.nc-hero .nc-typo-label, .nc-tile .nc-typo-label { font-size: .95rem; }

/* M42: etiket ve arşiv dizinleri (/etiketler, /arsiv) */
.terms-page .page-head .muted a { margin-right: 1rem; }
.term-group { margin: 1.35rem 0; }
.term-year { font-family: var(--head); font-size: 1.2rem; margin: 0 0 .55rem; padding-bottom: .3rem; border-bottom: 1px solid var(--rule); }
.term-list { list-style: none; display: flex; flex-wrap: wrap; gap: .55rem; margin: 0; padding: 0; }
.term-link { display: inline-flex; align-items: baseline; gap: .4rem; padding: .4rem .8rem; border: 1px solid var(--rule); border-radius: 999px; background: var(--surface); text-decoration: none; font-size: .95rem; color: var(--ink-2); }
.term-link:hover { color: var(--accent-2); border-color: var(--accent-2); }
.term-count { font-size: .78rem; color: var(--ink-3); }

/* ==== 18.10.2026 (kullanıcı: "arşiv sayfası çok yetersiz"): süzgeç + aylık takvim + güne göre gruplu kompakt liste ==== */
.arch-filter { display: flex; flex-wrap: wrap; gap: .5rem; align-items: center; margin: 0 0 .6rem; }
.arch-filter .arch-f-q { flex: 1 1 220px; }
.arch-filter input[type="search"], .arch-filter select { width: 100%; min-height: 40px; padding: .4rem .9rem; border: 1px solid var(--rule-2); border-radius: 999px; background: var(--surface); color: var(--ink); font: inherit; font-size: .95rem; }
.arch-filter select { padding-right: 2rem; appearance: none; -webkit-appearance: none;
  background-image: linear-gradient(45deg, transparent 50%, currentColor 50%), linear-gradient(135deg, currentColor 50%, transparent 50%);
  background-position: calc(100% - 1.05rem) 55%, calc(100% - .75rem) 55%; background-size: 5px 5px, 5px 5px; background-repeat: no-repeat; }
.arch-filter .arch-f-sel { flex: 0 1 11rem; }
.arch-filter .arch-f-btn { min-height: 40px; padding: 0 1.1rem; }
.arch-active { display: flex; flex-wrap: wrap; gap: .4rem; align-items: center; margin: 0 0 1rem; font-size: .9rem; }
.arch-active .arch-chip { text-transform: none; letter-spacing: 0; min-height: 30px; padding: 0 .7rem; background: var(--ink); color: var(--paper); border-radius: 999px; display: inline-flex; align-items: center; gap: .3rem; text-decoration: none; }
.arch-active .arch-chip:hover { background: var(--accent); color: #fff; }
.arch-clear { color: var(--ink-2); margin-left: .25rem; }

.arch-cal { max-width: 720px; margin: 1.2rem 0 2rem; }
.arch-cal-head { display: grid; grid-template-columns: 2.6rem 1fr 2.6rem; align-items: center; gap: .5rem; margin-bottom: .6rem; }
.arch-cal-title { margin: 0; text-align: center; font-family: var(--head); font-size: 1.35rem; font-weight: 800; }
.arch-cal-title a { text-decoration: none; }
.arch-cal-title a:hover { color: var(--accent); }
.arch-cal-total { display: block; font-family: var(--font, inherit); font-size: .8rem; font-weight: 600; color: var(--ink-3); letter-spacing: .04em; text-transform: uppercase; margin-top: .15rem; }
.arch-cal-nav { display: inline-flex; align-items: center; justify-content: center; width: 2.6rem; height: 2.6rem; border: 1px solid var(--rule-2); border-radius: 50%; font-size: 1.4rem; line-height: 1; text-decoration: none; color: var(--ink); background: var(--surface); }
.arch-cal-nav:hover { border-color: var(--ink); color: var(--ink); }
.arch-cal-nav.is-off { opacity: .3; }
.arch-cal-grid { width: 100%; border-collapse: separate; border-spacing: 4px; table-layout: fixed; }
.arch-cal-grid th { font-size: .72rem; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; color: var(--ink-3); padding: .2rem 0 .35rem; }
.arch-cal-grid th.is-weekend { color: var(--accent); }
.arch-cal-grid td { padding: 0; height: 58px; vertical-align: top; border-radius: 10px; background: var(--surface); border: 1px solid var(--rule); }
.arch-cal-grid td.is-blank { background: transparent; border-color: transparent; }
.arch-cal-grid td.is-empty { background: transparent; }
.arch-cal-grid td.is-empty .arch-dom { color: var(--ink-3); opacity: .6; }
.arch-cal-grid td.is-future { opacity: .4; }
.arch-cal-grid td > a, .arch-cal-grid td > span { display: flex; flex-direction: column; justify-content: space-between; height: 100%; padding: .35rem .45rem; text-decoration: none; color: inherit; border-radius: 9px; }
.arch-cal-grid td > a { background: var(--surface-2); }
.arch-cal-grid td > a:hover { background: var(--ink); color: var(--paper); }
.arch-cal-grid td > a:hover .arch-cnt { background: var(--paper); color: var(--ink); }
.arch-cal-grid td.is-today { border-color: var(--accent); box-shadow: inset 0 0 0 1px var(--accent); }
.arch-dom { font-weight: 700; font-size: .95rem; line-height: 1; }
.arch-cnt { align-self: flex-end; font-size: .72rem; font-weight: 700; line-height: 1; padding: .2rem .4rem; border-radius: 999px; background: var(--ink); color: var(--paper); }
.arch-cal-foot { font-size: .85rem; margin: .6rem 0 0; }
@media (max-width: 560px) {
  .arch-cal-grid { border-spacing: 2px; }
  .arch-cal-grid td { height: 48px; border-radius: 8px; }
  .arch-cal-grid td > a, .arch-cal-grid td > span { padding: .25rem .3rem; }
  .arch-dom { font-size: .85rem; }
  .arch-cnt { font-size: .64rem; padding: .15rem .3rem; }
}
.arch-index { margin-top: .5rem; }

.arch-month-nav { display: grid; grid-template-columns: 1fr auto 1fr; gap: .6rem; align-items: center; margin: 0 0 1rem; font-size: .92rem; }
.arch-month-nav a { text-decoration: none; color: var(--ink-2); }
.arch-month-nav a:hover { color: var(--accent); }
.arch-month-nav a[rel="next"] { text-align: right; }
.arch-month-nav .arch-month-cal { padding: .3rem .9rem; border: 1px solid var(--rule-2); border-radius: 999px; color: var(--ink); }
.arch-list { max-width: 900px; margin: 0 0 1.5rem; }
.arch-day { margin: 0 0 1.4rem; }
.arch-day-title { font-family: var(--head); font-size: 1.05rem; font-weight: 800; margin: 0 0 .35rem; padding-bottom: .35rem; border-bottom: 2px solid var(--ink); }
.arch-day-title a { text-decoration: none; }
.arch-day-title a:hover { color: var(--accent); }
.arch-rows { list-style: none; margin: 0; padding: 0; }
.arch-row { display: grid; grid-template-columns: 3.2rem 7rem minmax(0, 1fr); gap: .75rem; align-items: baseline; padding: .55rem 0; border-bottom: 1px solid var(--rule); }
.arch-time { font-variant-numeric: tabular-nums; font-weight: 700; font-size: .88rem; color: var(--ink-2); }
.arch-sec { font-size: .72rem; font-weight: 700; letter-spacing: .05em; text-transform: uppercase; color: var(--ink-3); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.arch-title { margin: 0; font-size: 1.02rem; font-weight: 600; line-height: 1.35; letter-spacing: 0; }
.arch-title a { text-decoration: none; }
.arch-title a:hover { text-decoration: underline; text-decoration-color: var(--accent); text-underline-offset: 3px; }
.arch-type { display: inline-block; margin-left: .4rem; font-size: .68rem; font-weight: 700; letter-spacing: .05em; text-transform: uppercase; color: var(--ink-3); border: 1px solid var(--rule-2); border-radius: 999px; padding: .1rem .45rem; vertical-align: middle; }
.arch-type.arch-video { color: var(--accent); border-color: var(--accent); }
@media (max-width: 560px) {
  .arch-row { grid-template-columns: 3rem minmax(0, 1fr); row-gap: .15rem; }
  .arch-sec { grid-column: 2; order: -1; }
  .arch-time { grid-row: span 2; align-self: start; padding-top: .1rem; }
  .arch-title { grid-column: 2; font-size: .98rem; }
}
.tag-list a { text-decoration: none; }
.tag-list a:hover { text-decoration: underline; }

/* M43: okuma süresi + yazı boyutu düğmeleri (yalnız JS varsa görünür; tercih tarayıcıda saklanır) */
.reader-size { display: none; }
html.js .reader-size { display: flex; align-items: center; gap: .35rem; margin: .65rem 0 0; }
.reader-size-label { font-size: .78rem; color: var(--ink-3); margin-right: .25rem; }
.reader-size-btn {
  min-width: 34px; min-height: 34px; padding: 0 .55rem; border: 1px solid var(--rule); border-radius: 8px;
  background: var(--surface); color: var(--ink-2); font-size: .95rem; line-height: 1; cursor: pointer;
}
.reader-size-btn[aria-pressed="true"] { border-color: var(--accent-2); color: var(--accent-2); }
html[data-yazi="buyuk"] .article-body { font-size: 1.16rem; line-height: 1.85; }
html[data-yazi="kucuk"] .article-body { font-size: .95rem; }

/* === az önce eskişehir logosu (M58, 26.09.2026) — yatay kilit; koyu temada açık, açık temada mürekkep sürüm. Oran sabit, yalnız ölçeklenir. === */
.brand-logo { display: block; height: 46px; width: auto; }
.brand-logo-light { display: none; }
html[data-theme="light"] .brand-logo-dark { display: none; }
html[data-theme="light"] .brand-logo-light { display: block; }
.footer-brand .brand-logo { height: 40px; margin-left: -2px; }
@media (max-width: 480px) { .brand-logo { height: 31px; } }   /* M58: yatay logo daha geniş; 360 px'te menü + araçlarla tek satır */
@media (max-width: 370px) { .brand-logo { height: 28px; } }
@media (min-width: 900px) { .brand-logo { height: 52px; } }
.notfound-logo .brand-logo { height: 56px; margin: 0 auto 1rem; }

/* ==== Şehir servisleri panosu (23.09.2026) — renkli simge rozetleri, büyük rakamlar, kısa listeler ==== */
.city-hub, .svc-bar { --t-eczane: #3ecf8e; --t-hava: #5aa9ff; --t-namaz: #2dd4bf; --t-doviz: #fbbf24; --t-eskisehirspor: #ff5a67;
  --t-elektrik: #ffb020; --t-su: #38bdf8; --t-belediye: #a5b4fc; --t-ulasim: #60a5fa; --t-etkinlik: #d8a6ff; }
html[data-theme="light"] .city-hub, html[data-theme="light"] .svc-bar { --t-eczane: #15803d; --t-hava: #1d64c4; --t-namaz: #0f766e; --t-doviz: #a16207; --t-eskisehirspor: #c8102e;
  --t-elektrik: #b45309; --t-su: #0369a1; --t-belediye: #4f46e5; --t-ulasim: #1d4ed8; --t-etkinlik: #7e22ce; }
.hub-head .page-intro { max-width: 70ch; }
.hub-updated { display: inline-block; margin-left: .35rem; padding: .05rem .5rem; border-radius: 999px; background: var(--surface-2, var(--paper-2)); color: var(--ink-2); font-size: .85rem; white-space: nowrap; }
.hub-band { margin: 0 0 2rem; }
.hub-band-title { font-family: var(--head, var(--sans)); font-size: .8rem; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; color: var(--ink-3); margin: 0 0 .75rem; }
.ct-grid { display: grid; gap: 1rem; grid-template-columns: 1fr; }
@media (min-width: 640px) { .ct-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (min-width: 1000px) { .ct-grid-3 { grid-template-columns: repeat(3, minmax(0, 1fr)); } .ct-grid-4 { grid-template-columns: repeat(4, minmax(0, 1fr)); } }
.ct { --tone: var(--ink-2); display: flex; flex-direction: column; gap: .6rem; min-width: 0; padding: 1rem 1rem .8rem; background: var(--surface);
  border: 1px solid var(--rule); border-top: 3px solid var(--tone); border-radius: var(--radius); box-shadow: var(--shadow, none); }
.ct-eczane { --tone: var(--t-eczane); } .ct-hava { --tone: var(--t-hava); } .ct-namaz { --tone: var(--t-namaz); } .ct-doviz { --tone: var(--t-doviz); }
.ct-eskisehirspor { --tone: var(--t-eskisehirspor); } .ct-elektrik { --tone: var(--t-elektrik); } .ct-su { --tone: var(--t-su); }
.ct-belediye { --tone: var(--t-belediye); } .ct-ulasim { --tone: var(--t-ulasim); } .ct-etkinlik { --tone: var(--t-etkinlik); }
.ct-head { display: flex; align-items: center; gap: .6rem; }
.ct-ico { flex: none; display: inline-grid; place-items: center; width: 2.25rem; height: 2.25rem; border-radius: 10px; color: var(--tone);
  background: color-mix(in srgb, var(--tone) 16%, transparent); }
.ct-ico .svc-ico { width: 1.3rem; height: 1.3rem; }
.ct-title { flex: 1; min-width: 0; margin: 0; font-family: var(--head, var(--sans)); font-size: 1rem; font-weight: 800; }
.ct-title a { text-decoration: none; }
.ct-title a:hover { color: var(--tone); }
.ct-live { flex: none; width: .55rem; height: .55rem; border-radius: 50%; background: #22c55e; box-shadow: 0 0 0 3px color-mix(in srgb, #22c55e 25%, transparent); }
.ct-kicker { margin: 0; font-size: .8rem; font-weight: 700; letter-spacing: .04em; text-transform: uppercase; color: var(--tone); }
.ct-line { display: flex; align-items: baseline; flex-wrap: wrap; gap: .1rem .5rem; margin: 0; }
.ct-big { font-family: var(--head, var(--sans)); font-size: 2.6rem; line-height: 1; font-weight: 800; letter-spacing: -.02em; font-variant-numeric: tabular-nums; color: var(--ink); }
.ct-big-sub { font-size: 1.8rem; color: var(--ink-2); }
.ct-big-label { font-size: 1rem; font-weight: 700; color: var(--ink-2); }
.ct-meta { margin: 0; font-size: .88rem; color: var(--ink-3); }
.ct-meta strong { color: var(--ink); }
.ct-ok { font-weight: 700; color: var(--t-eczane); font-size: 1.05rem; }
.ct-ok::before { content: "✓ "; }
.ct-alert { margin: 0; padding: .35rem .6rem; border-radius: 8px; font-size: .88rem; font-weight: 700; color: var(--tone); background: color-mix(in srgb, var(--tone) 14%, transparent); }
.ct-split { display: flex; gap: 1.5rem; align-items: flex-end; }
.ct-chips { display: flex; flex-wrap: wrap; gap: .35rem; margin: 0; padding: 0; list-style: none; }
.ct-chips li { padding: .15rem .55rem; border-radius: 999px; font-size: .8rem; color: var(--ink-2); background: var(--surface-2, var(--paper-2)); border: 1px solid var(--rule); }
.ct-chips b { color: var(--tone); margin-left: .15rem; }
.ct-list { display: grid; gap: .5rem; margin: 0; padding: 0; list-style: none; }
.ct-list li { display: flex; gap: .6rem; align-items: baseline; font-size: .92rem; line-height: 1.35; min-width: 0; }
.ct-list li > a, .ct-list li > span:last-child { min-width: 0; overflow: hidden; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; }
.ct-list a { text-decoration: none; }
.ct-list a:hover { text-decoration: underline; }
.ct-date { flex: none; min-width: 2.9rem; font-size: .78rem; font-weight: 700; color: var(--tone); font-variant-numeric: tabular-nums; }
.ct-empty { display: grid; gap: .5rem; justify-items: start; }
.ct-empty p { margin: 0; font-size: .9rem; }
.ct-foot { margin-top: auto; padding-top: .6rem; border-top: 1px solid var(--rule); display: flex; align-items: center; justify-content: space-between; gap: .5rem; font-size: .78rem; color: var(--ink-3); }
.ct-src { min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.ct-src a { color: inherit; }
.ct-more { flex: none; font-weight: 800; font-size: .85rem; text-decoration: none; color: var(--tone); padding: .35rem 0; }
.ct-more:hover { text-decoration: underline; color: var(--tone); }
/* hava */
.hw-now { display: flex; align-items: center; gap: .7rem; }
.hw-now-ico .wx-ico { width: 3.2rem; height: 3.2rem; color: var(--ink-2); display: block; }
.hw-now-ico .wx-ico .i-sun { color: var(--accent-2, #ffb020); }
.hw-now-txt { display: grid; min-width: 0; font-size: .88rem; line-height: 1.3; }
.wx-mini { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: .25rem; margin: 0; padding: .5rem 0 0; list-style: none; border-top: 1px dashed var(--rule); }
.wx-mini li { display: grid; justify-items: center; gap: .1rem; font-size: .75rem; color: var(--ink-3); }
.wx-mini .wx-ico { width: 1.4rem; height: 1.4rem; color: var(--ink-2); }
.wx-mini strong { font-size: .9rem; color: var(--ink); }
/* namaz */
.pr-row { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: .3rem; margin: 0; padding: 0; list-style: none; }
.pr-row li { display: grid; padding: .3rem .45rem; border-radius: 8px; background: var(--surface-2, var(--paper-2)); font-size: .75rem; color: var(--ink-3); }
.pr-row strong { font-size: .95rem; color: var(--ink); font-variant-numeric: tabular-nums; }
.pr-row li.is-past { opacity: .55; }
.pr-row li.is-next { background: color-mix(in srgb, var(--tone) 18%, transparent); color: var(--tone); }
/* döviz */
.fx-rates { display: grid; gap: .45rem; margin: 0; padding: 0; list-style: none; }
.fx-rates li { display: flex; align-items: baseline; justify-content: space-between; gap: .5rem; padding-bottom: .4rem; border-bottom: 1px solid var(--rule); }
.fx-rates li:last-child { border-bottom: 0; padding-bottom: 0; }
.fx-code { display: inline-flex; align-items: center; gap: .45rem; font-weight: 700; color: var(--ink-2); }
.fx-sym { display: inline-grid; place-items: center; width: 1.6rem; height: 1.6rem; border-radius: 50%; font-weight: 800; color: var(--tone); background: color-mix(in srgb, var(--tone) 16%, transparent); }
.fx-rates strong { font-size: 1.35rem; font-variant-numeric: tabular-nums; }
/* maç */
.match-line { display: flex; flex-wrap: wrap; align-items: baseline; gap: .1rem .45rem; margin: 0; font-family: var(--head, var(--sans)); font-size: 1.15rem; font-weight: 800; line-height: 1.25; }
.match-line .is-us { color: var(--tone); }
.match-vs { color: var(--ink-3); font-weight: 400; }
.match-last { display: flex; align-items: center; gap: .45rem; flex-wrap: wrap; margin: 0; padding-top: .5rem; border-top: 1px dashed var(--rule); font-size: .85rem; color: var(--ink-2); }
.oc { display: inline-grid; place-items: center; width: 1.4rem; height: 1.4rem; border-radius: 6px; font-size: .75rem; font-weight: 800; color: #fff; background: var(--ink-3); }
.oc-g { background: #16a34a; } .oc-b { background: #6b7280; } .oc-m { background: #dc2626; }
/* etkinlik */
.ev-list { display: grid; gap: .6rem; margin: 0; padding: 0; list-style: none; }
.ev-list li { display: flex; gap: .7rem; align-items: center; min-width: 0; }
.ev-date { flex: none; display: grid; place-items: center; width: 2.8rem; height: 2.8rem; border-radius: 10px; line-height: 1; color: var(--tone); background: color-mix(in srgb, var(--tone) 16%, transparent); }
.ev-date strong { font-size: 1.1rem; }
.ev-date span { font-size: .7rem; text-transform: uppercase; font-weight: 700; }
.ev-body { display: grid; min-width: 0; font-size: .92rem; line-height: 1.3; }
.ev-body a { font-weight: 700; text-decoration: none; overflow: hidden; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; }
.ev-body .muted { font-size: .8rem; }
.hub-foot { font-size: .85rem; max-width: 80ch; }

/* servis sayfası başlığı: panodaki renkli simge */
.svc-head h1 { display: flex; align-items: center; gap: .7rem; }
.svc-head-ico { width: 2.8rem; height: 2.8rem; border-radius: 12px; }
.svc-head-ico .svc-ico { width: 1.6rem; height: 1.6rem; }

/* ==== Ana sayfa şehir servisleri şeridi (23.09.2026) — panodaki renk/simge dili, kutu bütünüyle bağlantı ==== */
.svc-tiles { display: grid; gap: .75rem; grid-template-columns: repeat(2, minmax(0, 1fr)); margin: 0; padding: 0; list-style: none; }
@media (min-width: 760px) { .svc-tiles { grid-template-columns: repeat(4, minmax(0, 1fr)); } }
.svt { min-width: 0; }
.svt-link { position: relative; display: flex; flex-direction: column; gap: .35rem; height: 100%; padding: .85rem .9rem .9rem; text-decoration: none; color: var(--ink);
  background: linear-gradient(160deg, color-mix(in srgb, var(--tone) 9%, var(--surface)) 0%, var(--surface) 55%);
  border: 1px solid var(--rule); border-radius: var(--radius); overflow: hidden; transition: border-color .15s, transform .15s, box-shadow .15s; }
.svt-link::after { content: ""; position: absolute; left: 0; right: 0; top: 0; height: 3px; background: var(--tone); opacity: .85; }
.svt-link:hover, .svt-link:focus-visible { border-color: color-mix(in srgb, var(--tone) 55%, var(--rule)); transform: translateY(-2px); box-shadow: var(--shadow, none); color: var(--ink); }
.svt-head { display: flex; align-items: center; gap: .5rem; min-width: 0; }
.svt-head .ct-ico { width: 1.9rem; height: 1.9rem; border-radius: 8px; }
.svt-head .ct-ico .svc-ico { width: 1.1rem; height: 1.1rem; }
.svt-name { min-width: 0; font-size: .82rem; font-weight: 800; letter-spacing: .02em; line-height: 1.2; color: var(--ink-2); }
.svt-val { display: flex; align-items: center; gap: .35rem; margin-top: .15rem; min-width: 0; }
.svt-big { font-family: var(--head, var(--sans)); font-size: 1.85rem; line-height: 1.05; font-weight: 800; letter-spacing: -.02em; font-variant-numeric: tabular-nums; }
.svt-unit { align-self: flex-end; padding-bottom: .15rem; font-size: .85rem; font-weight: 700; color: var(--tone); }
.svt-wx .wx-ico { width: 2.1rem; height: 2.1rem; display: block; color: var(--ink-2); }
.svt-wx .wx-ico .i-sun { color: var(--accent-2, #ffb020); }
.svt-sub { font-size: .82rem; line-height: 1.35; color: var(--ink-3); overflow: hidden; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; }
.svt-alert { align-self: flex-start; margin-top: auto; padding: .1rem .5rem; border-radius: 999px; font-size: .75rem; font-weight: 800; color: var(--tone); background: color-mix(in srgb, var(--tone) 16%, transparent); }
.svt .status-chip { white-space: normal; }
@media (max-width: 420px) { .svt-big { font-size: 1.55rem; } .svt-link { padding: .75rem; } }

/* 24.09.2026: fotoğrafsız kart — kurum adı tipografisi */
.typo-spor { background: var(--typo-a); } .typo-siyaset { background: var(--typo-g); }
.nc-typo.has-org { place-items: end start; align-content: end; gap: .25rem; padding: .9rem 1rem; }
.nc-typo-kicker { position: relative; font-size: .68rem; font-weight: 700; letter-spacing: .09em; text-transform: uppercase; color: var(--ink-3); }
.nc-typo-org { position: relative; font-family: var(--head); font-weight: 800; font-size: 1.15rem; line-height: 1.15; letter-spacing: -.01em; color: var(--ink); max-width: 16ch;
  overflow: hidden; display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; }
.nc-hero .nc-typo-org { font-size: 2rem; max-width: 18ch; }
.nc-side .nc-typo-org, .nc-row .nc-typo-org { font-size: .92rem; }
.nc-side .nc-typo.has-org, .nc-row .nc-typo.has-org { padding: .55rem .6rem; }
.nc-side .nc-typo-kicker, .nc-row .nc-typo-kicker { font-size: .6rem; }

/* N103 tarih cetveli + günlük baskı */
.date-ruler { margin: .9rem 0 1.1rem; overflow-x: auto; scrollbar-width: none; -webkit-overflow-scrolling: touch; }
.date-ruler::-webkit-scrollbar { display: none; }
.date-ruler ol { display: flex; gap: .45rem; margin: 0; padding: 0; list-style: none; min-width: max-content; }
.dr-day { display: flex; flex-direction: column; align-items: center; justify-content: center; gap: .1rem; min-width: 5.6rem; padding: .5rem .8rem;
  border: 1px solid var(--rule-2); border-radius: var(--radius); background: var(--surface); color: var(--ink); text-decoration: none; line-height: 1.15; }
a.dr-day:hover { border-color: var(--accent); color: var(--ink); }
.dr-label { font-weight: 700; font-size: .95rem; white-space: nowrap; }
.dr-count { font-size: .75rem; color: var(--ink-3); white-space: nowrap; }
.dr-day.is-active { background: var(--accent); border-color: var(--accent); color: var(--accent-ink); }
.dr-day.is-active .dr-count { color: var(--accent-ink); opacity: .85; }
.dr-day.is-empty { opacity: .45; }
.dr-archive { flex-direction: row; gap: .4rem; min-width: auto; color: var(--ink-2); }
.day-rail + .day-rail { margin-top: 2rem; }
.day-collapsed, .day-prev { margin: 1.4rem 0 2.6rem; }   /* 30.09.2026: altındaki bölüme yapışmasın */
.day-collapsed a, .day-prev a { display: inline-block; padding: .6rem 1rem; border: 1px solid var(--rule-2); border-radius: var(--radius); background: var(--surface); font-weight: 700; text-decoration: none; }
.day-collapsed a:hover, .day-prev a:hover { border-color: var(--accent); }

/* M64 (N115): etkinlik takvimi — süzgeç çipleri, gün başlıkları, görselli kartlar. Görsel kırpılmaz: bulanık kopyası zemin,
   kendisi contain. Görsel yoksa türe göre renkli tipografik yüz. */
.ev-filters { display: flex; gap: .5rem; overflow-x: auto; padding: .15rem 0 .9rem; margin: 0 0 .25rem; scrollbar-width: none; }
.ev-filters::-webkit-scrollbar { display: none; }
.ev-chip { flex: 0 0 auto; border: 1px solid var(--rule); background: var(--surface); color: var(--ink); border-radius: 999px; padding: .45rem .9rem;
  font: 600 .88rem/1 var(--head, inherit); cursor: pointer; white-space: nowrap; }
.ev-chip span { color: var(--ink-3); font-weight: 600; margin-left: .2rem; }
.ev-chip.is-on { background: var(--accent); border-color: var(--accent); color: #fff; }
.ev-chip.is-on span { color: rgba(255,255,255,.85); }
.ev-chip:focus-visible { outline: 2px solid var(--accent); outline-offset: 2px; }
.ev-day { margin: 0 0 1.6rem; }
.ev-day-title { font-size: 1.05rem; margin: 0 0 .75rem; padding-bottom: .45rem; border-bottom: 1px solid var(--rule); color: var(--ink-2); font-weight: 700; }
.ev-day-title span { color: var(--accent); }
.ev-grid { display: grid; gap: .9rem; grid-template-columns: 1fr; }
.ev-archive-link { margin: 1.1rem 0 0; text-align: right; }   /* 26.10.2026: takvim altında geçmiş etkinlikler bağlantısı */
.service-etkinlik .chip-nav { margin: 0 0 1rem; }
@media (min-width: 560px) { .ev-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (min-width: 1000px) { .ev-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
.ev-card { display: flex; flex-direction: column; background: var(--surface); border: 1px solid var(--rule); border-radius: calc(var(--radius) + 2px); overflow: hidden;
  transition: transform .2s ease, box-shadow .2s ease; }
.ev-card:hover { transform: translateY(-2px); box-shadow: var(--shadow); }
@media (prefers-reduced-motion: reduce) { .ev-card, .ev-card:hover { transition: none; transform: none; } }
.ev-media { position: relative; display: grid; place-items: center; aspect-ratio: 16 / 10; overflow: hidden; background: var(--surface-2); text-decoration: none; isolation: isolate; }
.ev-media::before { content: ""; position: absolute; inset: -12px; background: var(--ev-img) center / cover no-repeat; filter: blur(14px) saturate(1.1); opacity: .55; z-index: -1; }
.ev-media img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: contain; display: block; }   /* dikey afiş taşmasın */
.ev-media.no-img { --ev-tone: var(--accent); background: linear-gradient(135deg, color-mix(in srgb, var(--ev-tone) 22%, var(--surface-2)), var(--surface-2)); }
.ev-media-cat { font: 800 1.35rem/1.1 var(--head, inherit); color: var(--ev-tone); letter-spacing: -.01em; text-transform: lowercase; opacity: .9; }
.ev-c-konser .ev-media.no-img { --ev-tone: #7c3aed; } .ev-c-sahne .ev-media.no-img { --ev-tone: #b23a22; } .ev-c-stand-up .ev-media.no-img { --ev-tone: #c2410c; }
.ev-c-cocuk .ev-media.no-img { --ev-tone: #0f766e; } .ev-c-festival .ev-media.no-img { --ev-tone: #a16207; } .ev-c-kurs-ve-atolye .ev-media.no-img { --ev-tone: #1d4ed8; }
.ev-badge { position: absolute; left: .6rem; top: .6rem; display: grid; place-items: center; min-width: 3rem; padding: .3rem .45rem .35rem; border-radius: 10px;
  background: rgba(18,17,16,.82); color: #fff; font: 700 .7rem/1 var(--head, inherit); letter-spacing: .04em; backdrop-filter: blur(4px); }
.ev-badge strong { font-size: 1.25rem; line-height: 1.05; letter-spacing: 0; }
.ev-body { display: flex; flex-direction: column; gap: .3rem; padding: .8rem .95rem .9rem; flex: 1; }
.ev-meta { display: flex; align-items: center; gap: .5rem; margin: 0; font-size: .78rem; }
.ev-cat { background: var(--chip-bg); color: var(--chip-ink, var(--accent)); border-radius: 999px; padding: .2rem .55rem; font-weight: 700; }
.ev-time { color: var(--ink-2); font-weight: 700; }
.ev-title { margin: 0; font-size: 1.02rem; line-height: 1.25; font-weight: 750; }
.ev-title a { color: var(--ink); text-decoration: none; }
.ev-title a:hover { text-decoration: underline; text-decoration-color: var(--accent); text-decoration-thickness: 2px; }
.ev-place { margin: 0; color: var(--ink-2); font-size: .88rem; }
.ev-foot { margin: auto 0 0; padding-top: .5rem; display: flex; align-items: center; justify-content: space-between; gap: .5rem; font-size: .78rem; }
.ev-org { color: var(--ink-3); min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.ev-cta { flex: 0 0 auto; color: var(--accent); font-weight: 700; text-decoration: none; }
.ev-cta:hover { text-decoration: underline; }

/* 26.09.2026: yukarı oku (sağ alt, tek vurgu rengi; görünmezken tıklanamaz) */
.to-top { position: fixed; right: max(1rem, env(safe-area-inset-right)); bottom: calc(1rem + env(safe-area-inset-bottom)); z-index: 40;
  width: 46px; height: 46px; border-radius: 50%; border: 0; display: grid; place-items: center; cursor: pointer;
  background: var(--accent); color: #fff; box-shadow: 0 6px 18px rgba(0,0,0,.22);
  opacity: 0; transform: translateY(12px); pointer-events: none; transition: opacity .2s ease, transform .2s ease; }
.to-top.is-on { opacity: .92; transform: none; pointer-events: auto; }
.to-top.is-on:hover { opacity: 1; }
.to-top:focus-visible { outline: 3px solid var(--ink); outline-offset: 3px; }
@media (prefers-reduced-motion: reduce) { .to-top { transition: none; } }
@media print { .to-top { display: none; } }

/* 26.09.2026: servis sayfası üst gezinme şeridi (şehir rehberine dönüş + diğer servisler, yatay kaydırılır) */
.svc-switch { display: flex; align-items: center; gap: .6rem; margin: 0 0 1.1rem; min-width: 0; }
.svc-switch-home { flex: none; font-size: .82rem; font-weight: 800; letter-spacing: .04em; text-transform: uppercase; color: var(--chip-ink, var(--accent));
  text-decoration: none; padding: .45rem .2rem; white-space: nowrap; }
.svc-switch-home:hover { text-decoration: underline; }
.svc-switch ul { display: flex; gap: .45rem; list-style: none; margin: 0; padding: .15rem .1rem; overflow-x: auto; scrollbar-width: none; min-width: 0;
  mask-image: linear-gradient(to right, #000 92%, transparent); -webkit-mask-image: linear-gradient(to right, #000 92%, transparent); }
.svc-switch ul::-webkit-scrollbar { display: none; }
.svc-pill { display: inline-flex; align-items: center; gap: .4rem; white-space: nowrap; padding: .25rem .75rem .25rem .3rem; border-radius: 999px;
  border: 1px solid var(--rule); background: var(--surface); color: var(--ink); font-size: .84rem; font-weight: 650; text-decoration: none; }
.svc-pill .ct-ico { width: 1.6rem; height: 1.6rem; border-radius: 50%; }
.svc-pill .ct-ico .svc-ico { width: .95rem; height: .95rem; }
.svc-pill:hover { border-color: var(--tone); }
.svc-pill.is-current { border-color: var(--tone); background: color-mix(in srgb, var(--tone) 12%, var(--surface)); }
@media (max-width: 599px) { .svc-switch { flex-direction: column; align-items: stretch; gap: .25rem; } .svc-switch-home { align-self: flex-start; } }

/* 26.09.2026 (kullanıcı): üst ince şerit yerine vurgulu şehir servisleri girişi */
.city-btn { display: none; align-items: center; gap: .45rem; height: 44px; padding: 0 1rem 0 .85rem; border-radius: 999px; text-decoration: none;
  background: var(--accent); color: #fff; font: 700 .9rem/1 var(--head, inherit); white-space: nowrap; box-shadow: 0 2px 8px color-mix(in srgb, var(--accent) 30%, transparent); }
.city-btn .ico { width: 18px; height: 18px; }
.city-btn:hover { filter: brightness(1.08); color: #fff; }
.city-btn[aria-current="page"] { box-shadow: 0 0 0 3px color-mix(in srgb, var(--accent) 30%, transparent); }
.city-btn:focus-visible { outline: 3px solid var(--ink); outline-offset: 2px; }
@media (min-width: 1000px) { .city-btn { display: inline-flex; margin-right: .35rem; } }

.svc-bar { background: var(--paper); border-bottom: 1px solid var(--rule); }
.svc-bar ul { display: flex; gap: .45rem; list-style: none; margin: 0 auto; padding-top: .55rem; padding-bottom: .55rem; overflow-x: auto; scrollbar-width: none;
  -webkit-overflow-scrolling: touch; mask-image: linear-gradient(to right, #000 88%, transparent); -webkit-mask-image: linear-gradient(to right, #000 88%, transparent); }
.svc-bar ul::-webkit-scrollbar { display: none; }
.svc-bar li { flex: none; }
.svc-bar a { display: inline-flex; align-items: center; gap: .4rem; min-height: 38px; white-space: nowrap; text-decoration: none; border-radius: 999px; font-size: .86rem; font-weight: 700; }
.svc-bar-hub { background: var(--accent); color: #fff; padding: 0 .9rem 0 .7rem; }
.svc-bar-hub .ico { width: 17px; height: 17px; }
.svc-bar-item { border: 1px solid var(--rule); background: var(--surface); color: var(--ink); padding: 0 .75rem 0 .3rem; }
.svc-bar-item .ct-ico { width: 1.65rem; height: 1.65rem; border-radius: 50%; }
.svc-bar-item .ct-ico .svc-ico { width: 1rem; height: 1rem; }
.svc-bar a:focus-visible { outline: 2px solid var(--accent); outline-offset: 2px; }
@media (min-width: 1000px) { .svc-bar { display: none; } }
@media print { .svc-bar, .city-btn { display: none !important; } }

/* 26.09.2026 (kullanıcı): şehir servisleri panosu telefonda iki kolon — kartlar sadeleşir: başlık + ana değer + tek satır; ayrıntı servis sayfasında */
@media (max-width: 639px) {
  .city-hub .ct-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .6rem; }
  .city-hub .ct { padding: .75rem .75rem .6rem; gap: .45rem; border-radius: 14px; }
  .city-hub .ct-head { gap: .45rem; }
  .city-hub .ct-head .ct-ico { width: 1.9rem; height: 1.9rem; border-radius: 9px; }
  .city-hub .ct-head .ct-ico .svc-ico { width: 1.1rem; height: 1.1rem; }
  .city-hub .ct-title { font-size: .9rem; line-height: 1.2; min-width: 0; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; overflow-wrap: anywhere; }
  .city-hub .ct-live { display: none; }   /* yer kazanmak için; güncel olmayan veri zaten gösterilmez */
  .city-hub .ct-grid > .ct:last-child:nth-child(odd) { grid-column: 1 / -1; }   /* tek kalan kart tam genişlik */
  .city-hub .ct-big { font-size: 1.85rem; }
  .city-hub .ct-big-sub { font-size: 1.3rem; }
  .city-hub .ct-big-label { font-size: .82rem; }
  .city-hub .ct-kicker { font-size: .66rem; }
  .city-hub .ct-line { gap: 0 .35rem; }
  .city-hub .ct-meta { font-size: .76rem; line-height: 1.3; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
  .city-hub .wx-mini, .city-hub .pr-row, .city-hub .ct-chips, .city-hub .ct-src, .city-hub .match-last { display: none; }
  .city-hub .hw-now { flex-wrap: wrap; gap: .1rem .45rem; }
  .city-hub .hw-now-ico .wx-ico { width: 2.1rem; height: 2.1rem; }
  .city-hub .hw-now-txt { flex: 1 1 100%; font-size: .78rem; }
  .city-hub .fx-rates { gap: .3rem; }
  .city-hub .fx-rates li { padding-bottom: .25rem; font-size: .8rem; }
  .city-hub .fx-rates strong { font-size: 1rem; }
  .city-hub .match-line { font-size: .92rem; }
  .city-hub .ct-split { flex-direction: column; align-items: flex-start; gap: .35rem; }
  .city-hub .ct:not(:last-child:nth-child(odd)) .ct-list li:not(:first-child), .city-hub .ct:not(:last-child:nth-child(odd)) .ev-list li:not(:nth-child(-n+2)) { display: none; }
  .city-hub .ct-list li, .city-hub .ev-list li { font-size: .8rem; }
  .city-hub .ct-foot { padding-top: .45rem; justify-content: flex-end; }
  .city-hub .ct-more { font-size: .82rem; }
}

/* 26.09.2026 (kullanıcı): derli toplu alt bilgi */
.ft { gap: 1.75rem 2rem; padding-top: 2rem; padding-bottom: 1.25rem; }
.ft-about .footer-note { font-size: .9rem; line-height: 1.5; color: var(--ink-3); max-width: 46ch; margin: .6rem 0 .5rem; }
.ft-cta { margin: 0; }
.ft-cta a { display: inline-flex; align-items: center; min-height: 40px; padding: 0 1rem; border-radius: 999px; border: 1px solid var(--accent); color: var(--accent);
  font-weight: 700; font-size: .88rem; text-decoration: none; }
.ft-cta a:hover { background: var(--accent); color: #fff; }
.ft-social { list-style: none; display: flex; flex-wrap: wrap; gap: .5rem; margin: .9rem 0 0; padding: 0; }
.ft-social a { display: inline-flex; align-items: center; justify-content: center; width: 40px; height: 40px; border-radius: 999px;
  border: 1px solid var(--rule); color: var(--ink-2); text-decoration: none; }
.ft-social svg { width: 18px; height: 18px; }
.ft-social a:hover, .ft-social a:focus-visible { border-color: var(--accent); color: var(--accent); }
.ft-h { margin: 0 0 .5rem; font: 800 .74rem/1.2 var(--head, inherit); letter-spacing: .08em; text-transform: uppercase; color: var(--ink-3); }
.ft-h a { color: inherit; text-decoration: none; }
.ft-h a:hover { color: var(--accent); }
.ft-list { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); column-gap: 1rem; }
.ft-list a { display: block; padding: .38rem 0; color: var(--ink-2); text-decoration: none; font-size: .93rem; line-height: 1.3; }
.ft-list a:hover { color: var(--accent); }
.ft-col { padding-top: 1.1rem; border-top: 1px solid var(--rule); }
.ft-bottom { display: flex; flex-direction: column; gap: .6rem; padding-top: 1rem; padding-bottom: 1.25rem; padding-right: 4.5rem; }   /* yukarı okuna yer */
.ft-corp { margin: 0; gap: .15rem 1rem; }
.ft-corp a { font-size: .82rem; color: var(--ink-3); }
.ft-bottom p { font-size: .8rem; }
@media (min-width: 700px) {
  .ft { grid-template-columns: minmax(0, 1.3fr) minmax(0, 1fr) minmax(0, 1fr); }
  .ft-col { padding-top: 0; border-top: 0; }
  .ft-bottom { flex-direction: row; justify-content: space-between; align-items: center; flex-wrap: wrap; }
}


/* M66 (27.09.2026): haber araç satırı — paylaşım (solda) ve yazı boyutu (sağda) tek satır, tek çizgi.
   WhatsApp logolu ve yazılı (en sık kullanılan); X, Facebook, kopyala, cihaz menüsü yalnız simge (aria-label'lı). */
.article-byline { padding-bottom: .35rem; }
.article-tools {
  display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: .5rem 1rem;
  padding: .45rem 0 .6rem; margin: 0 0 1rem; border-bottom: 1px solid var(--rule);
}
.article-tools .share { flex: 1 1 auto; border: 0; padding: 0; margin: 0; gap: .4rem; }
.article-tools .share-list { gap: .35rem; align-items: center; }
.article-tools .share-btn {
  gap: .4rem; min-height: 38px; min-width: 38px; padding: 0; border-radius: 999px;
  font-size: .85rem; color: var(--ink-3); transition: color .15s, border-color .15s;
}
.article-tools .share-btn:hover, .article-tools .share-btn:focus-visible { color: var(--ink); border-color: var(--ink-3); }
.article-tools .share-btn[data-net="wa"] { padding: 0 .85rem 0 .65rem; color: var(--ink); }
.article-tools .share-btn[data-net="wa"]:hover, .article-tools .share-btn[data-net="wa"]:focus-visible { border-color: #25d366; }
.article-tools .share-btn[data-net="fb"]:hover, .article-tools .share-btn[data-net="fb"]:focus-visible { color: #1877f2; border-color: #1877f2; }
.share-ico { display: block; flex: 0 0 auto; }
.share-ico-wa { color: #25d366; width: 20px; height: 20px; }
html.js .article-tools .reader-size { margin: 0; flex: 0 0 auto; gap: .25rem; }
.article-tools .share-link { margin-top: .25rem; }
@media (pointer: coarse) {
  .article-tools .share-btn { min-height: 44px; min-width: 44px; }
  .article-tools .reader-size-btn { min-height: 40px; min-width: 40px; }
}

/* M67 (27.09.2026): çerez şeridi sayfanın altında sabit — içeriği itmez. Masaüstünde alt ortada tek satır
   (metin solda, düğmeler ve ✕ sağda); telefonda alttan tam genişlik, metin üstte düğmeler altta. Yukarı oku (z 40) altta kalır. */
.consent-bar {
  position: fixed; z-index: 60; left: 50%; transform: translateX(-50%); bottom: calc(1rem + env(safe-area-inset-bottom));
  width: min(960px, calc(100vw - 2rem)); padding: .6rem .6rem .6rem 1.1rem; gap: .5rem 1rem;
  flex-direction: row; flex-wrap: nowrap; align-items: center; justify-content: space-between;
  background: var(--surface); color: var(--ink); border: 1px solid var(--rule-2); border-radius: 14px;
  box-shadow: 0 10px 30px rgba(0, 0, 0, .18);
}
.consent-bar p { flex: 1 1 auto; font-size: .88rem; line-height: 1.4; max-width: none; }
.consent-bar .consent-actions { flex: 0 0 auto; flex-wrap: nowrap; gap: .4rem; }
.consent-bar .consent-actions .btn { min-height: 40px; padding: 0 .9rem; white-space: nowrap; font-size: .88rem; }
.consent-close {
  order: 3; flex: 0 0 auto; display: inline-flex; align-items: center; justify-content: center;
  width: 36px; height: 36px; padding: 0; border: 0; border-radius: 999px; background: transparent; color: var(--ink-3); cursor: pointer;
}
.consent-close:hover, .consent-close:focus-visible { background: var(--surface-2); color: var(--ink); }
@media (max-width: 760px) {
  .consent-bar { left: .5rem; right: .5rem; transform: none; width: auto; bottom: calc(.5rem + env(safe-area-inset-bottom));
    flex-wrap: wrap; gap: .6rem .5rem; padding: .9rem 1rem; }
  .consent-bar p { flex: 1 1 0; min-width: 0; }
  .consent-close { order: 1; margin: -.35rem -.4rem 0 0; align-self: flex-start; }
  .consent-bar .consent-actions { order: 4; flex: 1 1 100%; }
  .consent-bar .consent-actions .btn { flex: 1 1 0; }
}
@media print { .consent-bar { display: none !important; } }

/* 30.09.2026: tipografik kapaklı (fotoğrafı gelmeyen) haberin küçük kart yüzeyi — kapakla aynı koyu marka zemini, ortada logo */
.nc-typo.nc-typo-brand { display: flex; align-items: center; justify-content: center; place-items: center; padding: 0; width: 100%; height: 100%; min-height: 100%;
  background: radial-gradient(120% 90% at 100% 0%, rgba(192,68,43,.28), transparent 60%), linear-gradient(180deg, #26160f, #180d0a); }
.nc-typo.nc-typo-brand img { width: 46%; max-width: 140px; height: auto; opacity: .95; }

/* ===== 01.10.2026 (kullanıcı): üst menü sabit — sayfa aşağı kaydırılınca başlık (logo + bölüm menüsü + araçlar) ekranın üstünde kalır.
   Sponsor bandı ve mobil servis şeridi kayıp gider; yalnız başlık sabit. Kaydırınca ince gölge (site.js → .is-stuck).
   Çapa/arama atlamalarında içerik başlığın altına girmesin diye scroll-padding. Mobilde açık menü ekrana sığmazsa kendi içinde kayar. */
.site-header { position: sticky; top: 0; z-index: 50; transition: box-shadow .2s ease; }
.site-header.is-stuck { box-shadow: 0 2px 14px rgba(0, 0, 0, .10); }
html[data-theme="dark"] .site-header.is-stuck { box-shadow: 0 2px 14px rgba(0, 0, 0, .45); }
html { scroll-padding-top: 80px; }
@media (max-width: 999px) {
  .site-header .site-panel.is-open, html:not(.js) .site-header .site-panel:target { max-height: calc(100vh - 64px); max-height: calc(100dvh - 64px); overflow-y: auto; overscroll-behavior: contain; }
}
@media (min-width: 1000px) {
  html { scroll-padding-top: 135px; }
  .info-nav { top: 135px; }
}
@media print { .site-header { position: static; box-shadow: none; } }

/* 02.10.2026: köşe yazısı kartı görselsiz — yazarın küçük fotoğrafı + üstte ince tuğla çizgi */
.nc-avatar { width: 26px; height: 26px; border-radius: 50%; object-fit: cover; vertical-align: middle; margin: -3px .45rem 0 0; display: inline-block; }
.nc-column.nc-tile { border-top: 3px solid var(--accent); }
.nc-column .type-label { display: inline-flex; align-items: center; }

/* 02.10.2026 (kullanıcı): Yazarlar/Röportajlar bölümlerden ayrı — ince dikey çizgi + kalem simgesi; mobil listede üst çizgi */
.nav-opinion a { display: inline-flex; align-items: center; gap: .35rem; }
.nav-pen { flex: none; color: var(--accent); }
.section-nav li:not(.nav-opinion) + li.nav-opinion { border-top: 1px solid var(--rule); margin-top: .35rem; padding-top: .35rem; }
@media (min-width: 1000px) {
  .section-nav li:not(.nav-opinion) + li.nav-opinion { border-top: 0; margin: 0 0 0 .55rem; padding: 0 0 0 .55rem; position: relative; }
  .section-nav li:not(.nav-opinion) + li.nav-opinion::before { content: ""; position: absolute; left: 0; top: 50%; height: 1.1em; margin-top: -.55em; border-left: 1px solid var(--rule); }
  .section-nav li.nav-opinion + li:not(.nav-opinion) { margin-left: .55rem; padding-left: .55rem; position: relative; }
  .section-nav li.nav-opinion + li:not(.nav-opinion)::before { content: ""; position: absolute; left: 0; top: 50%; height: 1.1em; margin-top: -.55em; border-left: 1px solid var(--rule); }
}

/* ===== 04.10.2026 Köşe yazısı tasarım yüzü (column-face.php) — sosyal kartla aynı dil: tuğla zemin, dairede yazar, Fraunces iki renkli başlık.
   Köşe yazısı akışta haber gibi: manşet (.cc-hero) → yan manşet (.nc-side.cc) → ızgara (.nc-tile.cc). Renkler marka sabiti (iki temada aynı). */
@font-face { font-family: "Fraunces"; font-style: normal; font-weight: 800; font-display: swap; src: url("../fonts/fraunces-extrabold.woff2") format("woff2"); }
@font-face { font-family: "Fraunces"; font-style: italic; font-weight: 800; font-display: swap; src: url("../fonts/fraunces-extrabolditalic.woff2") format("woff2"); }
.cc { --cc-brick: #C0442B; --cc-paper: #FAF7F2; --cc-ink: #1E1E1E; }
.cc-ring { display: block; border-radius: 50%; overflow: hidden; background: #a93a24; box-shadow: 0 0 0 3px var(--cc-brick), 0 0 0 5px rgba(250,247,242,.85); flex: none; }
.cc-ring img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: 50% 30%; }
.cc-initial { display: grid; place-items: center; width: 100%; height: 100%; font-family: "Fraunces", Georgia, serif; font-weight: 800; color: var(--cc-paper); font-size: 2.4em; }
.cc-badge { display: inline-block; background: var(--cc-paper); color: var(--cc-ink); border-radius: 999px; padding: .32em .9em; font-family: var(--head, system-ui); font-weight: 800; font-size: .72rem; letter-spacing: .06em; text-transform: uppercase; white-space: nowrap; box-shadow: 0 2px 8px rgba(0,0,0,.18); }
.cc-badge i { font-family: "Fraunces", Georgia, serif; font-style: italic; font-weight: 800; text-transform: none; letter-spacing: 0; color: var(--cc-brick); font-size: 1.12em; }
.cc-tag { display: inline-block; border: 1.5px solid rgba(250,247,242,.85); color: var(--cc-paper); border-radius: 999px; padding: .2em .8em; font-family: var(--head, system-ui); font-weight: 800; font-size: .66rem; letter-spacing: .14em; text-transform: uppercase; }

/* Manşet */
.cc-hero { background: var(--cc-brick); color: var(--cc-paper); display: flex; flex-direction: column; padding: 1.1rem 1.1rem 1rem; gap: .9rem; }
.cc-top { display: flex; align-items: center; gap: .6rem; flex-wrap: wrap; }
.cc-colname { font-family: "Fraunces", Georgia, serif; font-style: italic; font-weight: 800; font-size: 1rem; color: var(--cc-paper); opacity: .92; }
.cc-main { flex: 1; display: grid; gap: 1rem; align-items: center; }
.cc-portrait { display: flex; flex-direction: column; align-items: center; text-decoration: none; }
.cc-portrait .cc-ring { width: 128px; height: 128px; }
.cc-portrait .cc-badge { margin-top: -.8rem; position: relative; }
.cc-title { margin: 0; font-family: "Fraunces", Georgia, serif; font-weight: 800; line-height: 1.02; letter-spacing: -.01em; font-size: clamp(2rem, 1.2rem + 3.6vw, 3.1rem); text-align: center; overflow-wrap: break-word; hyphens: manual; }   /* 12.10.2026: kelime ortadan bölünmez (anywhere → break-word); uzun kelimede punto .cc-long/.cc-xlong ile küçülür */
.cc-title a { color: var(--cc-paper); text-decoration: none; }
.cc-title a::after { content: ""; position: absolute; inset: 0; }   /* kartın tamamı tıklanır; tek erişilebilir bağlantı başlık */
.cc-title .cc-w { color: var(--cc-paper); }
.cc-title .cc-a { display: block; font-style: italic; color: #F4C9A8; }   /* 16.10.2026: vurgu açık ten (sosyal kartla aynı) */   /* vurgu her zaman alt satırdan (kart kuralı) */
.cc-title a:hover .cc-w { text-decoration: underline; text-decoration-thickness: 3px; text-underline-offset: 6px; }
.cc-foot { margin: 0; display: flex; align-items: center; justify-content: space-between; font-size: .8rem; color: rgba(250,247,242,.85); }
.cc-dots { display: inline-flex; gap: 5px; }
.cc-dots i { width: 6px; height: 6px; border-radius: 50%; background: var(--cc-paper); opacity: .45; }
.cc-dots i:first-child { opacity: 1; width: 9px; height: 9px; margin-top: -1.5px; }
@media (min-width: 900px) {
  .cc-hero { padding: 1.5rem 2rem 1.25rem; }
  .cc-main { grid-template-columns: minmax(200px, 34%) 1fr; gap: 2rem; }
  .cc-portrait .cc-ring { width: clamp(180px, 17vw, 236px); height: clamp(180px, 17vw, 236px); box-shadow: 0 0 0 4px var(--cc-brick), 0 0 0 7px rgba(250,247,242,.85); }
  .cc-portrait .cc-badge { font-size: .8rem; margin-top: -1rem; }
  .cc-title { text-align: left; font-size: clamp(2.6rem, 1rem + 3.3vw, 4rem); }
  .hero-y.hero-solo .cc-hero { height: 480px; }
}
@media (min-width: 1200px) { .hero-y.hero-solo .cc-hero { height: 500px; } }

/* Yan manşet ve ızgara: fotoğrafın yerinde tuğla yüzey */
.cc-fig { background: var(--cc-brick) !important; position: relative; }
.cc-fig-in { position: absolute; inset: 0; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 0; padding: .5rem; }
.nc-tile .cc-fig { aspect-ratio: 16 / 10; }
.nc-tile .cc-fig .cc-tag { position: absolute; top: .7rem; left: .7rem; font-size: .58rem; }
.nc-tile .cc-fig .cc-ring { width: 112px; height: 112px; }
.nc-tile .cc-fig .cc-badge { margin-top: -.65rem; position: relative; font-size: .64rem; }
.nc-side .cc-fig { aspect-ratio: 4 / 3; }
.nc-side .cc-fig .cc-ring { width: 72px; height: 72px; box-shadow: 0 0 0 2px var(--cc-brick), 0 0 0 4px rgba(250,247,242,.85); }
.nc-side .cc-fig .cc-badge { margin-top: -.5rem; position: relative; font-size: .55rem; padding: .28em .7em; max-width: 92%; overflow: hidden; text-overflow: ellipsis; }
@media (min-width: 900px) { .hero-side .nc-side .cc-fig .cc-ring { width: 84px; height: 84px; } }
.nc.cc .nc-title { font-family: "Fraunces", Georgia, serif; font-weight: 800; letter-spacing: -.005em; }
.nc.cc:hover .cc-ring img { transform: scale(1.04); transition: transform .35s ease; }
@media (prefers-reduced-motion: reduce) { .nc.cc:hover .cc-ring img { transform: none; } }
.cc-long .cc-title { font-size: clamp(1.6rem, 1rem + 2.6vw, 2.4rem); }
.cc-xlong .cc-title { font-size: clamp(1.35rem, .9rem + 2vw, 1.9rem); line-height: 1.08; }
@media (min-width: 900px) {
  .cc-long .cc-title { font-size: clamp(2rem, .9rem + 2.4vw, 2.9rem); }
  .cc-xlong .cc-title { font-size: clamp(1.6rem, .8rem + 1.8vw, 2.2rem); }
}

/* ==== 04.10.2026 (kullanıcı): "kırmızı diyeti" — vurgu rengi yalnız logo, düğme/aktif durum ve manşet kategorisinde.
   Kategori çipleri, "Devamını Oku", bölüm başlığı çizgisi, tarih cetveli, şehir servisleri düğmesi, yukarı oku, footer
   çağrısı mürekkep/gri tona çekildi (kalem simgesi kırmızı kalır: Yazarlar menüde ayrışsın, kullanıcı). Yalnız renk; yapı ve işleyiş aynı. ==== */
.nc-meta .chip { background: var(--surface-2); color: var(--ink-2); }
.nc-meta .chip:hover { background: var(--ink); color: var(--paper); }
.nc-hero .chip, .nc-hero .chip:hover { background: var(--accent); color: #fff; }   /* manşet: tek kırmızı rozet */
.nc-more a { color: var(--ink-2); }
.nc-more a:hover { color: var(--accent); }
.rail-title::before { background: var(--ink); opacity: .85; }
.dr-day.is-active { background: var(--ink); border-color: var(--ink); color: var(--paper); }
.dr-day.is-active .dr-count { color: var(--paper); opacity: .75; }
a.dr-day:hover { border-color: var(--ink-3); }
.city-btn { background: transparent; color: var(--ink); border: 1px solid var(--rule-2); box-shadow: none; }
.city-btn:hover { filter: none; color: var(--ink); border-color: var(--ink); background: var(--surface-2); }
.city-btn[aria-current="page"] { border-color: var(--ink); box-shadow: none; }
.svc-bar-hub { background: var(--ink); color: var(--paper); }
.to-top { background: var(--ink); color: var(--paper); }
.ft-cta a { border-color: var(--rule-2); color: var(--ink); }
.ft-cta a:hover { background: var(--ink); color: var(--paper); border-color: var(--ink); }
.nc-column.nc-tile { border-top-color: var(--rule-2); }
.day-collapsed a:hover, .day-prev a:hover { border-color: var(--ink); }

/* ==== 04.10.2026 (kullanıcı): ana sayfa orta bölüm — gün bloğunda 1 haber varsa kart yatay ve tam genişlik (fotoğraf solda %44,
   metin sağda, büyük başlık; görsel 'lead' yuvasıyla yüklenir, bulanmaz); 2+ mevcut ızgara (iki sütun denendi, bulanık görsel → geri alındı). Sınıf home.php'de (.is-1). Ana sayfa
   kartlarında "Devamını Oku" gizli (kartın tamamı zaten bağlantı; liste sayfalarında kalır). ==== */
.home-y .nc-tile .nc-more { display: none; }
@media (min-width: 1000px) {
  .tile-grid.is-1 { grid-template-columns: 1fr; }
  .tile-grid.is-1 .nc-tile { display: grid; grid-template-columns: minmax(0, 44%) minmax(0, 1fr); }
  .tile-grid.is-1 .nc-tile .nc-figure { aspect-ratio: auto; height: 100%; min-height: 280px; max-height: 360px; }
  .tile-grid.is-1 .nc-tile .nc-figure img { height: 100%; object-fit: cover; }
  .tile-grid.is-1 .nc-tile .nc-figure.is-portrait { background: var(--surface-2); }
  .tile-grid.is-1 .nc-tile .nc-figure.is-portrait img { object-fit: contain; }
  .tile-grid.is-1 .nc-tile .nc-body { padding: 1.4rem 1.6rem; justify-content: center; }
  .tile-grid.is-1 .nc-tile .nc-title { font-size: 1.5rem; line-height: 1.2; }
  .tile-grid.is-1 .nc-tile .nc-summary { font-size: 1.02rem; -webkit-line-clamp: 4; margin-top: .7rem; }
}

/* ==== 04.10.2026 (kullanıcı): koyu footer — açık temada alt bilgi mürekkep zeminli (gece paletinin değişkenleri yalnız footer
   kapsamında), beyaz logo, çerçeveli "Haber gönder", üç sütun, altta ince yasal şerit. Gece temasında footer zaten koyu
   (paper-2); yalnız boşluk/çizgi rötuşları ortak. Yukarı oku koyu zeminde kaybolmasın diye açık halka. HTML aynı. ==== */
html[data-theme="light"] .site-footer {
  --paper: #17161a; --paper-2: #1e1d21; --surface: #242327; --surface-2: #2b2a2f;
  --ink: #f3efe8; --ink-2: #cfc9bf; --ink-3: #9a948a; --rule: #2f2e33; --rule-2: #44424a; --accent: #e8694d;
  background: var(--paper); border-top: 0; color: var(--ink-2);
}
html[data-theme="light"] .site-footer .brand-logo-light { display: none; }
html[data-theme="light"] .site-footer .brand-logo-dark { display: block; }
.site-footer .ft { padding-top: 2.75rem; padding-bottom: 1.75rem; }
.site-footer .ft-bottom { border-top: 1px solid var(--rule); color: var(--ink-3); }
.site-footer .ft-cta a { border-color: var(--rule-2); color: var(--ink); }
.site-footer .ft-cta a:hover { background: var(--ink); color: var(--paper); border-color: var(--ink); }
.site-footer .ft-social a { border-color: var(--rule-2); color: var(--ink-2); }
.site-footer .ft-social a:hover, .site-footer .ft-social a:focus-visible { border-color: var(--ink); color: var(--ink); }
.site-footer .ft-h { color: var(--ink-3); }
.site-footer .ft-list a { color: var(--ink-2); }
.site-footer .ft-list a:hover { color: var(--ink); }
.site-footer .ft-corp a { color: var(--ink-3); }
.site-footer .ft-corp a:hover { color: var(--ink); }
.site-footer .footer-note { color: var(--ink-3); }
.to-top { box-shadow: 0 0 0 2px var(--paper), 0 6px 18px rgba(0,0,0,.22); }

/* ==== 04.10.2026 (kullanıcı): köşe sayfaları — Yazarlar (dolu kart), yazar sayfası (profil + köşe dizini), köşe yazısı sonu
   (yazar kutusu + diğer yazıları). ==== */
.columnist-grid-y { grid-template-columns: 1fr; gap: 1.25rem; }
@media (min-width: 760px) { .columnist-grid-y { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
.columnist-card-y { display: grid; grid-template-columns: 96px minmax(0, 1fr); gap: 1.1rem; align-items: start; padding: 1.35rem 1.4rem;
  background: var(--surface); border: 1px solid var(--rule); border-radius: calc(var(--radius) + 2px); box-shadow: var(--shadow); }
.columnist-card-y .columnist-photo { width: 96px; height: 96px; }
.columnist-card-y .columnist-name { margin: 0 0 .1rem; font-size: 1.35rem; line-height: 1.2; }
.columnist-card-y .columnist-name a { text-decoration: none; }
.columnist-card-y .columnist-name a:hover { text-decoration: underline; text-decoration-color: var(--accent); text-decoration-thickness: 2px; }
.columnist-card-y .columnist-title { margin: 0 0 .5rem; }
.columnist-card-y .columnist-bio { margin: 0 0 .9rem; font-size: .95rem; line-height: 1.5; color: var(--ink-2);
  display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; }
.columnist-latest-h, .author-box-h { margin: 0 0 .2rem; font: 700 .7rem/1.3 var(--head, inherit); letter-spacing: .08em; text-transform: uppercase; color: var(--ink-3); }
.columnist-card-y .columnist-latest { display: block; font-family: var(--serif); font-size: 1.12rem; line-height: 1.3; }
.columnist-card-y time { display: block; margin-top: .15rem; font-size: .82rem; }
.columnist-all { margin: .9rem 0 0; font-size: .88rem; font-weight: 700; }
.columnist-all a { text-decoration: none; color: var(--ink-2); }
.columnist-all a:hover { color: var(--accent); }
@media (max-width: 480px) { .columnist-card-y { grid-template-columns: 72px minmax(0, 1fr); gap: .9rem; padding: 1.1rem; } .columnist-card-y .columnist-photo { width: 72px; height: 72px; } }

.columnist-profile-y { gap: 1.4rem; align-items: center; padding: 1.4rem 1.6rem; margin: 0 0 1.75rem;
  background: var(--surface); border: 1px solid var(--rule); border-radius: calc(var(--radius) + 2px); box-shadow: var(--shadow); }
.columnist-profile-y .columnist-photo { width: 112px; height: 112px; }
.columnist-profile-y .columnist-bio { font-size: 1rem; line-height: 1.55; color: var(--ink-2); max-width: 64ch; }
.columnist-profile-y .muted a { text-decoration: none; font-weight: 700; font-size: .88rem; }
@media (max-width: 480px) { .columnist-profile-y { flex-direction: column; align-items: flex-start; padding: 1.1rem 1.2rem; } .columnist-profile-y .columnist-photo { width: 88px; height: 88px; } }

.column-index { list-style: none; margin: 0 0 2rem; padding: 0; max-width: 820px; }
.column-index-item { display: grid; grid-template-columns: 7.5rem minmax(0, 1fr); gap: 1rem; padding: 1.15rem 0; border-top: 1px solid var(--rule); }
.column-index-item:last-child { border-bottom: 1px solid var(--rule); }
.column-index-date { font: 600 .8rem/1.4 var(--head, inherit); letter-spacing: .04em; text-transform: uppercase; color: var(--ink-3); padding-top: .35rem; }
.column-index-title { margin: 0 0 .35rem; font-family: var(--serif); font-size: 1.5rem; line-height: 1.22; letter-spacing: 0; }
.column-index-title a { text-decoration: none; }
.column-index-title a:hover { text-decoration: underline; text-decoration-color: var(--accent); text-decoration-thickness: 2px; text-underline-offset: 3px; }
.column-index-summary { margin: 0; color: var(--ink-2); font-size: 1rem; line-height: 1.5; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
@media (max-width: 560px) { .column-index-item { grid-template-columns: 1fr; gap: .25rem; } .column-index-title { font-size: 1.25rem; } }

.author-box { display: grid; grid-template-columns: 88px minmax(0, 1fr); gap: 1.2rem; align-items: start; max-width: var(--read, 700px); margin: 2.25rem auto 0;
  padding: 1.4rem 1.5rem; background: var(--surface); border: 1px solid var(--rule); border-radius: calc(var(--radius) + 2px); box-shadow: var(--shadow); }
.author-box-photo img, .author-box-photo .columnist-initial { width: 88px; height: 88px; border-radius: 50%; object-fit: cover; display: inline-flex; align-items: center; justify-content: center; }
.author-box .column-name { margin: 0 0 .15rem; }
.author-box-name { margin: 0 0 .5rem; font-size: 1.3rem; line-height: 1.2; }
.author-box-name a { text-decoration: none; }
.author-box-name a:hover { text-decoration: underline; text-decoration-color: var(--accent); text-decoration-thickness: 2px; }
.author-box-bio { margin: 0 0 1rem; font-size: .95rem; line-height: 1.5; color: var(--ink-2); }
.author-box-list { list-style: none; margin: 0 0 .75rem; padding: 0; }
.author-box-list li { padding: .4rem 0; border-top: 1px solid var(--rule); font-family: var(--serif); font-size: 1.05rem; line-height: 1.3; }
.author-box-list li:last-child { border-bottom: 1px solid var(--rule); }
.author-box-list a { text-decoration: none; }
.author-box-list a:hover { text-decoration: underline; text-decoration-color: var(--accent); text-decoration-thickness: 2px; }
.author-box-list time { font-family: var(--sans); font-size: .8rem; margin-left: .4rem; white-space: nowrap; }
.author-box-all { margin: 0; font-size: .88rem; font-weight: 700; }
.author-box-all a { text-decoration: none; color: var(--ink-2); }
.author-box-all a:hover { color: var(--accent); }
@media (max-width: 480px) { .author-box { grid-template-columns: 64px minmax(0, 1fr); gap: .9rem; padding: 1.1rem 1.2rem; } .author-box-photo img, .author-box-photo .columnist-initial { width: 64px; height: 64px; } }

/* 04.10.2026: "Dinle" oynatıcısı (seslendirme). JS yoksa yalnız tarayıcının oynatıcısı; JS varsa marka oynatıcısı.
   Yuvarlak köşeli kart, tuğla oynat düğmesi, çalarken logodaki "ö" noktalarına gönderme yapan koşan üç nokta. */
.listen {
  display: flex; align-items: center; gap: .8rem; margin: 0 0 1.25rem; padding: .6rem .7rem .6rem .6rem;
  background: var(--surface); border: 1px solid var(--rule); border-radius: 16px;
}
.listen-native { display: block; width: 100%; height: 40px; }
.listen > :not(.listen-native) { display: none; }
.listen.is-enhanced > .listen-native { display: none; }
.listen.is-enhanced > .listen-play, .listen.is-enhanced > .listen-speed { display: inline-flex; }
.listen.is-enhanced > .listen-main { display: block; }
.listen-play {
  flex: 0 0 auto; align-items: center; justify-content: center; width: 46px; height: 46px; padding: 0;
  border: 0; border-radius: 999px; background: var(--accent); color: var(--accent-ink); cursor: pointer;
  transition: transform .15s ease, filter .15s ease;
}
.listen-play:hover { filter: brightness(1.06); }
.listen-play:active { transform: scale(.95); }
.listen-play svg { display: block; }
.listen-ico-play { margin-left: 2px; }
.listen-play .listen-ico-pause, .listen[data-state="playing"] .listen-play .listen-ico-play { display: none; }
.listen[data-state="playing"] .listen-play .listen-ico-pause { display: block; }
.listen-main { flex: 1 1 auto; min-width: 0; }
.listen-top { display: flex; align-items: center; gap: .45rem; margin: 0 0 .35rem; line-height: 1.2; }
.listen-title { font-family: var(--head); font-weight: 800; font-size: .95rem; color: var(--ink); letter-spacing: -.01em; }
.listen-time { margin-left: auto; font-size: .8rem; color: var(--ink-3); font-variant-numeric: tabular-nums; white-space: nowrap; }
.listen-dots { display: inline-flex; gap: 3px; opacity: 0; transition: opacity .2s; }
.listen-dots i { width: 4px; height: 4px; border-radius: 50%; background: var(--accent); }
.listen[data-state="playing"] .listen-dots { opacity: 1; }
.listen[data-state="playing"] .listen-dots i { animation: listen-run 1.1s ease-in-out infinite; }
.listen[data-state="playing"] .listen-dots i:nth-child(2) { animation-delay: .15s; }
.listen[data-state="playing"] .listen-dots i:nth-child(3) { animation-delay: .3s; }
.listen.is-loading .listen-dots i { animation-duration: .6s; }
@keyframes listen-run { 0%, 100% { transform: translateX(0); opacity: .35; } 50% { transform: translateX(3px); opacity: 1; } }
.listen-bar {
  --p: 0%; display: block; width: 100%; height: 18px; margin: 0; background: transparent; cursor: pointer;
  -webkit-appearance: none; appearance: none;
}
.listen-bar::-webkit-slider-runnable-track { height: 4px; border-radius: 4px; background: linear-gradient(to right, var(--accent) var(--p), var(--rule-2) var(--p)); }
.listen-bar::-moz-range-track { height: 4px; border-radius: 4px; background: var(--rule-2); }
.listen-bar::-moz-range-progress { height: 4px; border-radius: 4px; background: var(--accent); }
.listen-bar::-webkit-slider-thumb { -webkit-appearance: none; width: 14px; height: 14px; margin-top: -5px; border: 0; border-radius: 50%; background: var(--accent); }
.listen-bar::-moz-range-thumb { width: 14px; height: 14px; border: 0; border-radius: 50%; background: var(--accent); }
.listen-bar:focus-visible { outline: 2px solid var(--accent); outline-offset: 2px; border-radius: 4px; }
.listen-speed {
  flex: 0 0 auto; align-items: center; justify-content: center; min-width: 44px; height: 34px; padding: 0 .55rem;
  border: 1px solid var(--rule-2); border-radius: 999px; background: transparent; color: var(--ink-2);
  font: 700 .82rem/1 var(--sans); font-variant-numeric: tabular-nums; cursor: pointer;
}
.listen-speed:hover { color: var(--ink); border-color: var(--ink-3); }
.listen[data-state="error"] .listen-time::after { content: " · ses açılamadı"; color: var(--accent); }
@media (max-width: 420px) { .listen { gap: .6rem; } .listen-title { font-size: .9rem; } }
@media (prefers-reduced-motion: reduce) { .listen[data-state="playing"] .listen-dots i { animation: none; opacity: 1; } }

/* 08.10.2026 (kullanıcı): afiş/metinli kapak (sosyal kartta yapay zekâ 'afis' dedi) kartta kırpılmaz — tamamı görünür,
   boşluklarda aynı görselin bulanık hâli. Odak noktası (satır içi object-position) afişte geçersiz. */
.nc-figure.is-poster { position: relative; isolation: isolate; }
.nc-figure.is-poster::before { content: ""; position: absolute; inset: -24px; z-index: 0; background: var(--poster) center / cover no-repeat;
  filter: blur(22px) brightness(.85) saturate(1.1); }
.nc-figure.is-poster picture { position: relative; z-index: 1; }
.nc-figure.is-poster img { object-fit: contain !important; object-position: 50% 50% !important; }
.nc:hover .nc-figure.is-poster img { transform: none; }
.news-figure-hero.is-poster img { object-fit: contain; max-height: min(78vh, 620px); }

/* 11.10.2026 (E1): ana sayfa "Bu hafta Eskişehir'de" — 4 etkinlik kartı (görsel ya da nc-typo deseni, gün · saat, başlık, mekân).
   Masaüstü 4 sütun; mobilde yatay kaydırma sırası (scroll-snap). Tuğla yalnız gün etiketinde. */
.evw-list { display: flex; gap: .75rem; margin: 0; padding: 0 0 .25rem; list-style: none; overflow-x: auto; scroll-snap-type: x mandatory; -webkit-overflow-scrolling: touch; scrollbar-width: none; }
.evw-list::-webkit-scrollbar { display: none; }
.evw { flex: 0 0 72%; max-width: 300px; scroll-snap-align: start; }
.evw-link { display: flex; flex-direction: column; height: 100%; background: var(--surface); border: 1px solid var(--rule); border-radius: calc(var(--radius) + 2px); overflow: hidden; text-decoration: none; color: inherit; box-shadow: var(--shadow); }
.evw-media { display: block; aspect-ratio: 3 / 2; background: var(--surface-2); overflow: hidden; }
.evw-media img { display: block; width: 100%; height: 100%; object-fit: cover; }
.evw-media .nc-typo { min-height: 100%; }
.evw-body { display: grid; gap: .25rem; padding: .7rem .8rem .85rem; }
.evw-when { font-family: var(--head); font-size: .78rem; font-weight: 700; color: var(--ink-2); font-variant-numeric: tabular-nums; }
.evw-when strong { color: var(--accent); font-weight: 800; letter-spacing: .02em; }
.evw-title { font-family: var(--head); font-weight: 800; font-size: .98rem; line-height: 1.25; color: var(--ink); overflow: hidden; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; }
.evw-place { font-size: .8rem; color: var(--ink-3); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.evw-link:hover .evw-title { color: var(--accent); }
@media (min-width: 760px) {
  .evw-list { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); overflow: visible; }
  .evw { flex: none; max-width: none; }
}
.nav-events a { display: inline-flex; align-items: center; gap: .35rem; }

/* 11.10.2026 (E2): tek etkinlik sayfası — afiş (dikey afiş taşmaz), olgular listesi, yapay zekâ özeti, tek büyük dış bağlantı düğmesi. */
.ev-single { max-width: 820px; margin: 0 auto 2rem; }
.ev-single .ev-media { aspect-ratio: 16 / 9; margin: 0; }
.ev-single .ev-body { padding: 1rem 1.1rem 1.2rem; gap: .9rem; }
.ev-credit { margin: .4rem 1.1rem 0; font-size: .78rem; }
.ev-facts { display: grid; gap: .5rem; margin: 0; }
.ev-facts div { display: grid; grid-template-columns: 7.5rem 1fr; gap: .5rem; align-items: baseline; }
.ev-facts dt { font-size: .72rem; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; color: var(--ink-3); }
.ev-facts dd { margin: 0; font-weight: 600; }
.ev-summary { font-size: 1.05rem; line-height: 1.55; margin: 0; }
.ev-ai-note { font-size: .78rem; margin: 0; }
.ev-cta-big { display: inline-flex; align-items: center; gap: .35rem; padding: .7rem 1.2rem; border-radius: 999px; background: var(--accent); color: #fff; font-weight: 800; text-decoration: none; }
.ev-cta-big:hover { filter: brightness(1.06); }
@media (max-width: 560px) { .ev-facts div { grid-template-columns: 1fr; gap: .1rem; } }

/* 23.10.2026 (kullanıcı: ana manşette "Bugün Eskişehir'de" kapağı kırpılıyordu — üstte boş şerit, rakamlar başlığın altında,
   oynat düğmesi tarihin üstünde). Kapak manşet oranında (3:2) ve altta boş tuğla şeritle basılır (DailyCardRenderer::BAND_H);
   manşette kutuyu üstten hizalı doldurur, başlık o şeridin üstüne oturur (degrade yok), oynat düğmesi sağ üst köşede. */
.nc-hero.is-daily { background: #C0442B; }
.nc-hero.is-daily .nc-figure { background: #C0442B; }
.nc-hero.is-daily .nc-figure img { object-fit: cover; object-position: 50% 0; }
.nc-hero.is-daily:hover .nc-figure img { transform: none; }
.nc-hero.is-daily .nc-body { padding-top: 1rem; background: none; }
.nc-hero.is-daily .chip { background: #1E1E1E; }
.nc-hero.is-daily .nc-updated { color: rgba(255,255,255,.8); }
.nc-hero.is-daily.has-video .nc-figure::before { left: auto; right: 18px; top: 18px; width: 60px; height: 60px; margin: 0; border-width: 3px; background: rgba(30,30,30,.92); }
.nc-hero.is-daily.has-video .nc-figure::after { left: auto; right: 36px; top: 36px; margin: 0; border-width: 12px 0 12px 20px; }
@media (max-width: 899px) {
  .nc-hero.is-daily .nc-figure { aspect-ratio: 1500 / 740; }   /* boş şerit görselden kırpılır, başlık altta tuğla zeminde */
  .nc-hero.is-daily .nc-figure picture, .nc-hero.is-daily .nc-figure img { height: 100%; max-height: none; object-fit: cover; object-position: 50% 0; }
  .nc-hero.is-daily .nc-body { position: static; padding: .25rem .9rem .9rem; }
  .nc-hero.is-daily.has-video .nc-figure::before { right: 7px; top: 7px; width: 34px; height: 34px; border-width: 2px; }
  .nc-hero.is-daily.has-video .nc-figure::after { right: 17px; top: 17px; border-width: 7px 0 7px 11px; }
}
