/* Yazdirma gorunumu: Ctrl+P ve sayfalardaki "Yazdir" baglantisi icin ortak sablon.
   _AccessibilityHead uzerinden media="print" ile tum tema layout'larina en son yuklenir; bu yuzden esit
   ozgullukteki tema ve birim CSS kurallarini ezer. Ekran gorunumune hicbir etkisi yoktur.

   Kurgu: ust kisimda yalnizca logo (antet), altinda sayfa basligi ve icerik. Menu, hero gorseli, alt bilgi,
   cerez bandi, yan arac cubugu gibi her sayfada tekrar eden ya da kagitta isi olmayan ogeler gizlenir. */

@page {
    margin: 14mm 12mm 16mm;
}

/* ---------- Temel ---------- */

/* Tema animasyonlari: WOW.js ekranda gorunmeyen .wow ogelerini visibility:hidden tutar; yazdirirken
   kaydirilmamis butun icerik bos cikar. .move-up de baslangicta 100px asagi kaydirir. */
*,
*::before,
*::after {
    animation: none !important;
    transition: none !important;
}

.wow,
.animated,
.move-up,
.move-up-x {
    visibility: visible !important;
    opacity: 1 !important;
    transform: none !important;
}

/* Modal acikken Bootstrap govdeyi overflow:hidden yapar; yazdirmada icerik tek sayfada kesilir. */
html,
body {
    overflow: visible !important;
    height: auto !important;
}

html {
    filter: none !important;
}

body {
    margin: 0 !important;
    padding: 0 !important;
    background: #fff !important;
    color: #000;
    font-size: 11pt;
    line-height: 1.5;
}

/* Erisilebilirlik kontrast modlari ekran tercihidir; kagitta siyah zemin murekkep harcar. */
html.a11y-contrast:root body,
html.a11y-contrast:root body :where(*:not(img, video, iframe, canvas, svg, svg *)),
html.a11y-contrast-light:root body,
html.a11y-contrast-light:root body :where(*:not(img, video, iframe, canvas, svg, svg *)) {
    background-color: transparent !important;
    color: #000 !important;
    border-color: #999 !important;
}

html.a11y-contrast:root body a,
html.a11y-contrast:root body a * {
    color: #000 !important;
}

/* ---------- Gizlenenler ---------- */

.a11y-skip,
.a11y-guide,
.a11y-panel,
.a11y-toolbar-btn,
.demo-option-container,
.scroll-top,
.mobile-menu-overlay,
.search-overlay,
.footer-area-wrapper,
#cb-cookie-banner,
.modal,
.modal-backdrop,
.gtranslate_wrapper,
.resolutions-hero-slider,
.swiper-pagination,
.swiper-pagination-t01,
.swiper-button-next,
.swiper-button-prev,
.post-meta:not(:is(.blog-masonry, .lg-blog-item) .post-meta),
.entry-post-share,
.messonry-button,
.sidebar-widget,
.post-read-more,
.ht-pagination,
.pagination-wrapper,
.page-pagination,
.navigation.pagination,
.fun-fact-wrapper:has(.breadcrumb-list),
iframe,
video,
audio,
embed,
object {
    display: none !important;
}

/* ---------- Antet: yalnizca logo ve birim adi ---------- */

.header-area,
.header-area .header-bottom-wrap,
.header-area .is-sticky,
.header-sticky {
    position: static !important;
    top: auto !important;
    width: auto !important;
    background: none !important;
    box-shadow: none !important;
}

.header-area {
    margin: 0 0 7mm !important;
    padding: 0 !important;
    border: 0 !important;
}

/* Logoyu tasimayan butun satirlar (ust bilgi cubugu, duyuru bandi, menu seridi) ve logonun yanindaki
   menu, arama, dil secimi gizlenir. */
.header-area > :not(:has(.header__logo)),
.header-area .header > :not(.header__logo) {
    display: none !important;
}

/* Konteyner dolgulari Bootstrap .row negatif kenar boslugunu dengeler; sifirlanirsa satirlar sayfadan
   tasar ve tarayici tum sayfayi kucultur. Yalnizca ekran genisligi sinirlari kaldirilir. */
.header-area .container,
.header-area .container-fluid,
#main-content .container,
#main-content .container-fluid {
    max-width: none !important;
    width: auto !important;
}

.header-area .header {
    display: block !important;
    min-height: 0 !important;
    padding: 0 0 3mm !important;
    border-bottom: 0.75pt solid #000;
}

.header__logo {
    display: flex !important;
    justify-content: flex-start !important;
    margin: 0 !important;
    padding: 0 !important;
}

.header__logo > .d-flex {
    align-items: center;
    justify-content: flex-start !important;
}

/* Ana sitede beyaz logo sabit konumlu; her sayfanin basinda tekrar ediyordu. */
.header__logo .light-logo {
    display: none !important;
}

.header__logo img,
.header__logo .dark-logo {
    display: block !important;
    position: static !important;
    width: auto !important;
    max-width: none !important;
    height: 15mm !important;
    max-height: none !important;
}

.header__logo-separator {
    align-self: stretch;
    margin: 0 4mm !important;
    border-left: 0.75pt solid #000;
}

.header__logo-title {
    margin-left: 3mm !important;
}

.header__logo-title h1,
.header__logo-title h2 {
    margin: 0 !important;
    color: #000 !important;
    line-height: 1.25 !important;
}

.header__logo-title h1 {
    font-size: 13pt !important;
    font-weight: 700 !important;
}

.header__logo-title h2 {
    font-size: 11pt !important;
    font-weight: 400 !important;
}

/* ---------- Sayfa iskeleti ---------- */

/* Footer'i sabit tutan tema betigi, footer yuksekligi kadar alt bosluk ekliyor (inline stil). */
#main-wrapper {
    padding: 0 !important;
}

.site-wrapper-reveal {
    position: static !important;
    margin: 0 !important;
}

/* Birim sitelerinde hero'yu saran sari serit; hero gizlenince bos bir renk bandi olarak kaliyordu. */
.breadcrumb-area {
    padding: 0 !important;
    background: none !important;
}

#main-content [class*="section-space--"] {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
}

/* Ana sayfa kutulari hero'nun ustune -160px ile biner. Temanin mobil sifirlamasi "only screen" sorgusunda
   oldugu icin baskida calismaz; hero gizliyken kutular anteti ortuyordu. */
.resolutions-hero-bottom {
    margin-top: 0 !important;
}

/* ---------- Baslik ve icerik ---------- */

/* Sablon sayfalarda (IsTemplatePage) ve liste sayfalarinda baslik yalnizca hero'da durur; o zaman hero sade bir
   baslik olarak basilir. Liste ogelerinin .post-title'i sayfa basligi sayilmaz. 45 karakterden uzun basliklar
   hero'da .visually-hidden h1 olarak geldigi icin o da gorunur yapilir. */
body:not(:has(.post-title:not(:is(.lg-blog-item, .blog-masonry, .blog-grid) .post-title))) .resolutions-hero-slider:has(.breadcrumb_box h1) {
    display: block !important;
}

body:not(:has(.post-title:not(:is(.lg-blog-item, .blog-masonry, .blog-grid) .post-title))) .resolutions-hero-slider :is(.swiper-container, .swiper-wrapper, .swiper-slide, .hero-wrapper, .resolutions-hero-area-content, .container, .row, [class*="col-"]) {
    position: static !important;
    width: auto !important;
    height: auto !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    transform: none !important;
    background: none !important;
}

body:not(:has(.post-title:not(:is(.lg-blog-item, .blog-masonry, .blog-grid) .post-title))) .resolutions-hero-slider .hero-wrapper::before,
body:not(:has(.post-title:not(:is(.lg-blog-item, .blog-masonry, .blog-grid) .post-title))) .resolutions-hero-slider .hero-wrapper::after {
    content: none !important;
}

body:not(:has(.post-title:not(:is(.lg-blog-item, .blog-masonry, .blog-grid) .post-title))) .resolutions-hero-slider .breadcrumb-list {
    display: none !important;
}

body:not(:has(.post-title:not(:is(.lg-blog-item, .blog-masonry, .blog-grid) .post-title))) .resolutions-hero-slider .breadcrumb_box h1 {
    position: static !important;
    width: auto !important;
    height: auto !important;
    margin: 0 0 5mm !important;
    padding: 0 !important;
    overflow: visible !important;
    clip: auto !important;
    white-space: normal !important;
    text-align: left !important;
    text-shadow: none !important;
    font-size: 18pt !important;
    line-height: 1.25 !important;
    color: #000 !important;
}

.post-info .post-title {
    margin: 0 0 5mm !important;
    text-align: left !important;
    font-size: 18pt !important;
    line-height: 1.25 !important;
    color: #000 !important;
}

.post-excerpt {
    margin-top: 0 !important;
}

h1, h2, h3, h4, h5, h6 {
    break-after: avoid;
    break-inside: avoid;
}

/* Kutunun son ogesi olan baslikta "avoid" kutunun sonuna yayilir. Liste ogelerinde bu, ogeler arasindaki
   butun kirilma noktalarini yasakliyor; Chrome da tek serbest nokta olan antet sonrasini secip ilk sayfayi
   bos birakiyordu. */
:is(h1, h2, h3, h4, h5, h6):last-child,
:is(.lg-blog-item, .blog-masonry, .blog-grid) :is(h1, h2, h3, h4, h5, h6) {
    break-after: auto;
}

p,
li {
    orphans: 3;
    widows: 3;
}

/* Sayfa boyu afis gorselleri basligi bos bir sayfada birakmasin diye baslikla ayni sayfaya sigacak kadar sinirlanir. */
img {
    max-width: 100% !important;
    max-height: 175mm;
    height: auto !important;
    object-fit: contain;
}

img,
figure,
blockquote,
pre,
tr {
    break-inside: avoid;
}

pre {
    white-space: pre-wrap;
}

/* Editorden gelen sabit genislikli tablolar sayfa disina tasmasin. */
table {
    max-width: 100% !important;
}

table[style*="width"],
table[width] {
    width: 100% !important;
}

td,
th {
    overflow-wrap: anywhere;
}

thead {
    display: table-header-group;
}

.table-responsive {
    overflow: visible !important;
}

/* Metin icindeki dis baglantilarin adresi kagitta da okunabilsin ("Tiklayiniz" gibi). Kart basliklari,
   kisi adlari gibi baglantilarda adres gurultu olacagi icin yalnizca paragraf, liste ve tablo hucreleri. */
.post-excerpt :is(p, li, td, th, dd) a[href^="http"]:not(:has(img))::after {
    content: " (" attr(href) ")";
    font-size: 8.5pt;
    font-weight: 400;
    color: #555;
    word-break: break-all;
}

/* Akordeon ve sekmeler: kapali bolumler kagitta hic cikmiyordu (orn. Ogrenci Kabul). Hepsi acik basilir;
   ac/kapa oklari gizlenir. */
#main-content .collapse:not(.navbar-collapse),
#main-content .tab-content > .tab-pane {
    display: block !important;
    height: auto !important;
    visibility: visible !important;
    opacity: 1 !important;
}

#main-content [data-bs-toggle="collapse"] i,
#main-content [data-toggle="collapse"] i,
#main-content .accordion-button::after {
    display: none !important;
}

/* Etkinlik bilgi kutusu; "Takvime kaydet" baglantisi kagitta ise yaramaz. */
.bq-event-detail {
    margin: 0 0 4mm !important;
    padding: 3mm 4mm !important;
    border: 0.75pt solid #999 !important;
    background: none !important;
}

.bq-event-detail span:has(> a[href*="ics-"]) {
    display: none !important;
}

/* Yayin tarihi kalsin; paylasim ve "Tum duyurular" baglantisi gitsin. */
.entry-post-share-wrap:not(:has(.fa-calendar)) {
    display: none !important;
}

.entry-post-share-wrap {
    margin-top: 6mm !important;
    padding-top: 2mm;
    border-top: 0.75pt solid #999;
    border-bottom: 0 !important;
    font-size: 9pt;
    color: #444;
}

.entry-post-share-wrap .post-view > a,
.entry-post-share-wrap .fa-chevron-double-left,
.entry-post-share-wrap [class*="col-"]:not(:has(.post-view)) {
    display: none !important;
}

.entry-post-share-wrap .post-view {
    font-size: 9pt !important;
}

/* ---------- Liste sayfalari (haberler, egitimler) ---------- */

/* Liste ve arama sayfalarindaki kenar cubugu (arama, son yazilar, etiketler) ekran gezintisidir. */
[class*="col-"]:has(> .page-sidebar-content-wrapper) {
    display: none !important;
}

/* Liste ogelerindeki (egitimler listesi, ana sayfa etkinlikleri) kapak gorselleri tam genislikte basilinca
   sayfaya bir iki oge sigiyordu. */
:is(.lg-blog-item, .blog-grid) .post-feature img {
    width: auto !important;
    max-height: 45mm;
}

:is(.lg-blog-item, .blog-grid) .post-info .post-title {
    margin: 2mm 0 1mm !important;
    font-size: 12pt !important;
}

.lg-blog-item,
.blog-grid {
    break-inside: avoid;
}

/* Fakulte/birim duyuru listesi: tema ogeler arasina genis bosluk koyuyor (11 duyuru 3 sayfa). Siki dizilir;
   yayin tarihi kalir, goruntulenme ve etiketler gider. */
.lg-blog-item {
    margin: 0 0 3mm !important;
    padding: 0 0 3mm !important;
}

.lg-blog-item .post-meta {
    margin-top: 1mm !important;
    font-size: 8.5pt;
    color: #444;
}

.lg-blog-item .post-meta .post-view {
    display: none !important;
}

/* Ana sitenin haber/duyuru listesi: masonry kartlari kagitta tek sutun ve tam genislik fotograf oluyordu
   (kart basina bir sayfa). Uc sutunlu izgara, kucuk gorsel; tarih kalir, "Goruntule" dugmesi gider. */
.masonry-wrap {
    display: grid !important;
    grid-template-columns: repeat(3, 1fr);
    gap: 5mm;
    margin: 0 !important;
}

.masonry-wrap > .masonary-item {
    width: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    break-inside: avoid;
}

.blog-masonry .post-feature img {
    width: 100% !important;
    height: 32mm !important;
    max-height: none;
    object-fit: cover;
}

.blog-masonry .post-info {
    padding: 2mm 0 0 !important;
}

.blog-masonry .post-title {
    margin: 1mm 0 0 !important;
    font-size: 10pt !important;
    line-height: 1.3 !important;
}

.blog-masonry .post-meta {
    font-size: 8pt;
}

/* ---------- Kisi kartlari (ogretim elemanlari, rehber) ---------- */

/* Kart satiri sm kiriliminda 6+2+2+3 = 13 sutun; kagit genisliginde e-posta alt satira duser ve harf harf
   bolunur. Tek satira sigdirilir: isim esner, telefon/ofis/e-posta kendi genisliginde kalir. */
.course__member-item {
    margin-bottom: 2mm !important;
    padding: 2mm 3mm !important;
    border: 0.5pt solid #ccc;
    break-inside: avoid;
}

.course__member-item > .row {
    flex-wrap: nowrap !important;
}

.course__member-item > .row > [class*="col-"] {
    flex: 0 0 auto !important;
    width: auto !important;
    margin-bottom: 0 !important;
}

.course__member-item > .row > [class*="col-"]:first-child {
    flex: 1 1 auto !important;
    min-width: 0;
}

.course__member-item .text-break {
    word-break: normal !important;
    overflow-wrap: normal !important;
}

/* ---------- Isotope/masonry listeleri ---------- */

/* Isotope ogeleri ekran genisligine gore position:absolute; left:50% ile dizer. Kagitta ogeler tam genislige
   indiginde sag sutun sayfadan tasar ve tarayici butun sayfayi kucultur. Normal akisa alinip iki sutuna dizilir. */
.mesonry-list,
.masonry-wrap {
    height: auto !important;
}

.mesonry-list > *,
.masonry-wrap > * {
    position: static !important;
    left: auto !important;
    top: auto !important;
    transform: none !important;
}

/* display !important'siz: sayfa iki listeden birini inline display:none ile gizliyor, o gizli kalmali. */
.mesonry-list {
    display: block;
    margin: 0 !important;
    columns: 2;
    column-gap: 8mm;
}

.mesonry-list > * {
    width: auto !important;
    margin: 0 0 5mm !important;
    padding: 0 !important;
}

.mesonry-list .element-title {
    break-after: avoid;
}

/* ---------- Foto galeri: kucuk ve sik bir izgara ---------- */

.gallery-wrapper {
    padding: 4mm 0 0 !important;
}

.gallery-warp {
    display: grid !important;
    grid-template-columns: repeat(3, 1fr) !important;
    gap: 3mm !important;
}

.gallery-warp .gallery-grid {
    grid-column: auto !important;
    break-inside: avoid;
}

/* Arka plan gorseli olarak cizildigi icin "arka plan grafikleri" kapaliyken de basilsin. */
.gallery-warp .single-gallery__thum {
    height: auto !important;
    aspect-ratio: 4 / 3;
    -webkit-print-color-adjust: exact;
    print-color-adjust: exact;
}

.gallery-warp .ht-overlay,
.gallery-warp .overlay-icon {
    display: none !important;
}
