/* ========================================
   MALATYA TSO - Ana Tema
   Kurumsal / Devlet Kurumu Tarzı
   ======================================== */

:root {
    /* Ana Renkler - Kurumsal Palet */
    --primary: #1B3A5C;        /* Koyu lacivert - ana kurumsal renk */
    --primary-dark: #112840;
    --primary-light: #2A5080;
    --secondary: #C8A23C;      /* Altın/Gold - kurumsal vurgu */
    --secondary-light: #D4B44E;
    --secondary-dark: #A8882E;

    /* Nötr Renkler */
    --dark: #1A1A2E;
    --text: #2D3748;
    --text-light: #64748B;
    --text-muted: #94A3B8;
    --border: #E2E8F0;
    --bg: #F8FAFC;
    --bg-alt: #F1F5F9;
    --white: #FFFFFF;

    /* Durum */
    --success: #059669;
    --warning: #D97706;
    --danger: #DC2626;
    --info: #0284C7;

    /* Tipografi */
    --font-main: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
    --font-heading: 'Playfair Display', Georgia, serif;

    /* Boyutlar */
    --header-height: 80px;
    --top-bar-height: 60px;
    --logo-size: 71px;
    --container-max: 1280px;
    --radius: 8px;
    --radius-lg: 12px;
    --radius-xl: 16px;

    /* Gölge */
    --shadow-sm: 0 1px 3px rgba(0,0,0,0.08);
    --shadow: 0 4px 12px rgba(0,0,0,0.08);
    --shadow-lg: 0 8px 30px rgba(0,0,0,0.12);
    --shadow-xl: 0 20px 60px rgba(0,0,0,0.15);

    /* Geçiş */
    --transition: 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    --transition-fast: 0.15s ease;
}

/* ========================================
   RESET & BASE
   ======================================== */
*, *::before, *::after {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

html {
    scroll-behavior: smooth;
    -webkit-text-size-adjust: 100%;
}

body {
    font-family: var(--font-main);
    font-size: 15px;
    line-height: 1.6;
    color: var(--text);
    background: var(--white);
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

a {
    color: inherit;
    text-decoration: none;
    transition: color var(--transition-fast);
}

img {
    max-width: 100%;
    height: auto;
    display: block;
}

ul, ol { list-style: none; }
button { cursor: pointer; border: none; background: none; font-family: inherit; }
input, textarea, select { font-family: inherit; font-size: inherit; }

.container {
    width: 100%;
    max-width: var(--container-max);
    margin: 0 auto;
    padding: 0 24px;
}


/* ========================================
   TOP BAR (İletişim Sol, Sosyal+Dil Sağ)
   ======================================== */
.top-bar {
    background: var(--primary-dark);
    color: rgba(255,255,255,0.85);
    height: var(--top-bar-height);
    position: relative;
    z-index: 1001;
}

.top-bar > .container {
    height: 100%;
}

.top-bar-inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
    height: 100%;
}

.top-bar-left {
    display: flex;
    align-items: center;
    gap: 20px;
}

.contact-phone,
.contact-email {
    display: flex;
    align-items: center;
    gap: 8px;
    transition: color var(--transition-fast);
}

.contact-phone i,
.contact-email i {
    font-size: 15px;
    color: var(--secondary);
}

.contact-phone {
    color: var(--white);
    font-size: 17px;
    font-weight: 700;
    letter-spacing: 0.5px;
}

.contact-phone:hover {
    color: var(--secondary);
}

.contact-email {
    color: rgba(255,255,255,0.7);
    font-size: 15px;
    font-weight: 600;
    padding-left: 20px;
    border-left: 1px solid rgba(255,255,255,0.12);
}

.contact-email:hover {
    color: var(--secondary);
}

.top-bar-right {
    display: flex;
    align-items: center;
    gap: 16px;
}

.top-bar-social {
    display: flex;
    gap: 6px;
}

.top-bar-social a {
    width: 32px;
    height: 32px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: rgba(255,255,255,0.08);
    color: rgba(255,255,255,0.6);
    font-size: 14px;
    transition: all var(--transition);
}

.top-bar-social a:hover {
    color: var(--white);
    transform: translateY(-2px);
}

/* Akreditasyon logo */
.akreditasyon-link {
    width: auto !important;
    padding: 0 4px !important;
    background: none !important;
    border-radius: 6px !important;
    opacity: 0.5;
    filter: grayscale(100%) brightness(2);
    transition: all var(--transition) !important;
}

.akreditasyon-link:hover {
    opacity: 1 !important;
    filter: grayscale(0%) brightness(1) !important;
    background: rgba(255,255,255,0.15) !important;
    transform: none !important;
}

.akreditasyon-link img {
    height: 28px;
    width: auto;
}

.top-bar-social a:nth-child(2):hover { background: #E1306C; }
.top-bar-social a:nth-child(3):hover { background: #1877F2; }
.top-bar-social a:nth-child(4):hover { background: #1DA1F2; }
.top-bar-social a:nth-child(5):hover { background: #FF0000; }

.top-bar-lang {
    display: flex;
    align-items: center;
    gap: 2px;
    font-size: 12px;
    font-weight: 600;
    letter-spacing: 0.5px;
    padding-left: 16px;
    border-left: 1px solid rgba(255,255,255,0.12);
}

.top-bar-lang a {
    color: rgba(255,255,255,0.45);
    padding: 3px 6px;
    border-radius: 4px;
    transition: all var(--transition-fast);
}

.top-bar-lang a.active {
    color: var(--white);
    background: rgba(255,255,255,0.12);
}

.top-bar-lang a:hover {
    color: var(--white);
}

.lang-sep {
    color: rgba(255,255,255,0.15);
}

/* Online İşlemler Buton */
.online-islemler-wrap {
    position: relative;
    margin-left: 8px;
}

.online-islemler-btn {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 9px 20px;
    background: var(--secondary);
    color: var(--white);
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 0.5px;
    border-radius: 50px;
    white-space: nowrap;
    transition: all var(--transition-fast);
    font-family: inherit;
}

.online-islemler-btn i {
    font-size: 14px;
}

.online-islemler-btn:hover {
    background: var(--secondary-light);
    transform: translateY(-1px);
    box-shadow: 0 4px 12px rgba(200,162,60,0.35);
}

.online-islemler-dropdown {
    position: absolute;
    top: calc(100% + 10px);
    right: 0;
    min-width: 240px;
    background: var(--white);
    border-radius: var(--radius-lg);
    box-shadow: var(--shadow-xl);
    border: 1px solid var(--border);
    padding: 8px 0;
    opacity: 0;
    visibility: hidden;
    transform: translateY(6px);
    transition: all var(--transition);
    z-index: 2000;
}

.online-islemler-dropdown::before {
    content: '';
    position: absolute;
    top: -6px;
    right: 24px;
    width: 12px;
    height: 12px;
    background: var(--white);
    border: 1px solid var(--border);
    border-bottom: none;
    border-right: none;
    transform: rotate(45deg);
}

.online-islemler-wrap:hover .online-islemler-dropdown {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
}

.online-islemler-dropdown a {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 10px 18px;
    font-size: 13px;
    color: var(--text);
    transition: all var(--transition-fast);
}

.online-islemler-dropdown a:hover {
    background: var(--bg);
    color: var(--primary);
    padding-left: 22px;
}

.online-islemler-dropdown a i {
    font-size: 10px;
    color: var(--text-muted);
}

/* ========================================
   SITE HEADER (Logo + Navbar)
   ======================================== */
.site-header {
    background: var(--white);
    height: var(--header-height);
    position: sticky;
    top: 0;
    z-index: 1000;
    border-bottom: 1px solid var(--border);
    transition: box-shadow var(--transition);
}

.site-header.scrolled {
    box-shadow: var(--shadow-lg);
}

.site-header.scrolled .logo-img {
    width: 50px;
    height: 50px;
}

.header-inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
    height: 100%;
    gap: 20px;
}

/* Desktop Logo */
.header-logo {
    display: flex;
    align-items: center;
    gap: 12px;
    flex-shrink: 0;
}

.logo-img {
    width: var(--logo-size);
    height: var(--logo-size);
    border-radius: 50%;
    overflow: hidden;
    border: 2px solid var(--secondary);
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--white);
    flex-shrink: 0;
    transition: width var(--transition), height var(--transition);
}

.logo-img img {
    width: 100%;
    height: 100%;
    object-fit: contain;
    padding: 4px;
}

.logo-text {
    display: flex;
    flex-direction: column;
    line-height: 1.2;
}

.logo-city {
    font-size: 19px;
    font-weight: 800;
    color: var(--primary);
    letter-spacing: 3px;
    text-transform: uppercase;
}

.logo-title {
    font-size: 11px;
    color: var(--text-light);
    font-weight: 500;
    letter-spacing: 0.3px;
    margin-top: 1px;
}

/* ========================================
   DESKTOP NAVIGATION
   ======================================== */
.main-nav {
    flex: 1;
    display: flex;
    justify-content: center;
    /* Esnek öğe varsayılan olarak içeriğinin altına inemez; bu olmadan uzun
       İngilizce/Almanca etiketler .header-actions'ı görünür alanın dışına iter. */
    min-width: 0;
}

.nav-list {
    display: flex;
    align-items: center;
    gap: 0;
    justify-content: center;
    width: 100%;
}

.nav-item {
    position: relative;
}

.nav-item.has-mega-full {
    position: static;
}

.nav-link {
    display: flex;
    align-items: center;
    gap: 5px;
    padding: 0 14px;
    height: var(--header-height);
    font-size: 13.5px;
    font-weight: 600;
    color: var(--text);
    text-transform: uppercase;
    letter-spacing: 0.3px;
    white-space: nowrap;
    transition: color var(--transition-fast);
    position: relative;
}

.nav-link::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 16px;
    right: 16px;
    height: 3px;
    background: var(--secondary);
    border-radius: 3px 3px 0 0;
    transform: scaleX(0);
    transition: transform var(--transition);
}

.nav-item:hover .nav-link,
.nav-item.active .nav-link {
    color: var(--primary);
}

.nav-item:hover .nav-link::after,
.nav-item.active .nav-link::after {
    transform: scaleX(1);
}

.nav-home i {
    font-size: 20px;
}

.nav-arrow {
    font-size: 9px;
    transition: transform var(--transition);
    color: var(--text-muted);
}

.nav-item:hover .nav-arrow {
    transform: rotate(180deg);
    color: var(--primary);
}

/* ========================================
   MEGA MENU
   ======================================== */

/* Genel dropdown (Başkan gibi küçük menüler) */
.mega-menu {
    position: absolute;
    top: 100%;
    left: 50%;
    transform: translateX(-50%) translateY(8px);
    min-width: 420px;
    background: var(--white);
    border-radius: var(--radius-lg);
    box-shadow: var(--shadow-xl);
    border: 1px solid var(--border);
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transition: all var(--transition);
    z-index: 999;
}

.mega-menu::before {
    content: '';
    position: absolute;
    top: -8px;
    left: 50%;
    width: 14px;
    height: 14px;
    background: var(--white);
    border: 1px solid var(--border);
    border-bottom: none;
    border-right: none;
    transform: translateX(-50%) rotate(45deg);
    z-index: 1;
}

/* Küçük dropdown hover (Başkan)
   :focus-within ile birlikte yazılır — panel yalnız :hover ile açılsaydı
   içindeki bağlantılara, CTA düğmelerine ve slayt noktalarına klavyeyle
   (Tab) hiç ulaşılamazdı: odak öğeye gelir ama panel görünmez kalır. */
.nav-item.has-mega:not(.has-mega-full):hover .mega-menu,
.nav-item.has-mega:not(.has-mega-full):focus-within .mega-menu {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
    transform: translateX(-50%) translateY(0);
}

/* Full-width mega menü (Başkan hariç) */
.header-inner {
    position: relative;
}

.nav-item.has-mega-full .mega-menu {
    position: absolute;
    left: 0;
    right: 0;
    top: 100%;
    transform: none;
    width: 100%;
    border-radius: 0 0 var(--radius-lg) var(--radius-lg);
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transition: all var(--transition);
}

.nav-item.has-mega-full .mega-menu::before {
    display: none;
}

.nav-item.has-mega-full:hover .mega-menu,
.nav-item.has-mega-full:focus-within .mega-menu {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
}

.mega-menu-inner {
    display: flex;
    gap: 0;
    padding: 28px 24px;
    position: relative;
    z-index: 2;
    background: var(--white);
    border-radius: inherit;
    max-width: var(--container-max);
    margin: 0 auto;
}

/* Mega kolon */
.mega-col {
    flex: 1;
    min-width: 0;
    padding: 0 20px;
}

.mega-col:first-child {
    padding-left: 0;
}

.mega-col:last-child {
    padding-right: 0;
}

.mega-col:not(:last-child) {
    border-right: 1px solid var(--border);
}

.mega-col-title {
    font-size: 11px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 1.5px;
    color: var(--primary);
    margin-bottom: 14px;
    padding-bottom: 8px;
    border-bottom: 2px solid var(--secondary);
    display: inline-block;
}

.mega-links li {
    margin-bottom: 1px;
}

.mega-links a {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 7px 10px;
    font-size: 13px;
    color: var(--text);
    border-radius: var(--radius);
    transition: all var(--transition-fast);
}

.mega-links a:hover {
    background: var(--bg);
    color: var(--primary);
    padding-left: 14px;
}

.mega-links a i {
    font-size: 10px;
    color: var(--text-muted);
}

/* Başkan Mega (Küçük dropdown) */
.mega-col-baskan {
    min-width: 200px;
    display: flex;
    align-items: center;
}

.mega-baskan-card {
    text-align: center;
    padding: 16px;
}

.mega-baskan-card img {
    width: 90px;
    height: 90px;
    border-radius: 50%;
    object-fit: cover;
    margin: 0 auto 12px;
    border: 3px solid var(--secondary);
}

.mega-baskan-info strong {
    display: block;
    font-size: 14px;
    color: var(--primary);
}

.mega-baskan-info span {
    display: block;
    font-size: 12px;
    color: var(--text-light);
    margin-bottom: 10px;
}

.mega-baskan-btn {
    display: inline-block;
    padding: 6px 16px;
    font-size: 12px;
    font-weight: 600;
    color: var(--white);
    background: var(--primary);
    border-radius: 50px;
    transition: background var(--transition-fast);
}

.mega-baskan-btn:hover {
    background: var(--secondary);
    color: var(--white);
}

/* ========================================
   HEADER ACTIONS
   ======================================== */
.header-actions {
    display: flex;
    align-items: center;
    gap: 8px;
    flex-shrink: 0;
}

.header-search-btn {
    width: 36px;
    height: 36px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    color: var(--text);
    font-size: 17px;
    transition: all var(--transition-fast);
}

.header-search-btn:hover {
    background: var(--bg);
    color: var(--primary);
}

/* Menu Button (Masaüstü + Mobil) */
.mobile-menu-btn {
    display: flex;
    flex-direction: column;
    justify-content: center;
    /* WebKit/Safari button UA stili align-items'i ezer; stretch olmazsa
       span'lar 0px genişliğe düşüp hamburger görünmez oluyor (iOS). */
    align-items: stretch;
    gap: 5px;
    width: 38px;
    height: 38px;
    padding: 9px;
    border-radius: var(--radius);
}

.mobile-menu-btn span {
    display: block;
    width: 100%;
    height: 2px;
    background: var(--text);
    border-radius: 2px;
    transition: all var(--transition);
    transform-origin: center;
}

.mobile-menu-btn.active span:nth-child(1) {
    transform: rotate(45deg) translate(5px, 5px);
}

.mobile-menu-btn.active span:nth-child(2) {
    opacity: 0;
}

.mobile-menu-btn.active span:nth-child(3) {
    transform: rotate(-45deg) translate(5px, -5px);
}

/* ========================================
   SEARCH OVERLAY
   ======================================== */
.search-overlay {
    position: fixed;
    inset: 0;
    background: rgba(27, 58, 92, 0.95);
    backdrop-filter: blur(20px);
    z-index: 2000;
    display: flex;
    align-items: center;
    justify-content: center;
    opacity: 0;
    visibility: hidden;
    transition: all var(--transition);
}

.search-overlay.active {
    opacity: 1;
    visibility: visible;
}

.search-overlay-inner {
    width: 90%;
    max-width: 700px;
    text-align: center;
}

.search-logo {
    margin-bottom: 32px;
}

.search-logo img {
    width: 120px;
    height: 120px;
    border-radius: 50%;
    border: 3px solid var(--secondary);
    background: var(--white);
    padding: 8px;
    margin: 0 auto;
    object-fit: contain;
}

.search-form {
    display: flex;
    background: rgba(255,255,255,0.1);
    border-radius: var(--radius-xl);
    border: 2px solid rgba(255,255,255,0.2);
    overflow: hidden;
    transition: border-color var(--transition-fast);
}

.search-form:focus-within {
    border-color: var(--secondary);
}

.search-form input {
    flex: 1;
    padding: 20px 28px;
    background: transparent;
    border: none;
    outline: none;
    color: var(--white);
    font-size: 20px;
    font-weight: 300;
}

.search-form input::placeholder {
    color: rgba(255,255,255,0.4);
}

.search-form button {
    padding: 20px 28px;
    color: var(--secondary);
    font-size: 20px;
    transition: color var(--transition-fast);
}

.search-form button:hover {
    color: var(--white);
}

.search-close {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 6px;
    margin: 24px auto 0;
    color: rgba(255,255,255,0.4);
    font-size: 14px;
    transition: color var(--transition-fast);
}

.search-close i {
    font-size: 24px;
}

.search-close span {
    font-size: 12px;
}

.search-close:hover {
    color: var(--white);
}

/* ========================================
   MOBILE SIDEBAR
   ======================================== */
.mobile-overlay {
    position: fixed;
    inset: 0;
    background: rgba(0,0,0,0.5);
    z-index: 1500;
    opacity: 0;
    visibility: hidden;
    transition: all var(--transition);
}

.mobile-overlay.active {
    opacity: 1;
    visibility: visible;
}

.mobile-sidebar {
    position: fixed;
    top: 0;
    left: -320px;
    width: 320px;
    height: 100vh;
    background: var(--white);
    z-index: 1600;
    display: flex;
    flex-direction: column;
    transition: left var(--transition);
    overflow: hidden;
}

.mobile-sidebar.active {
    left: 0;
}

.mobile-sidebar-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 16px 20px;
    background: var(--primary-dark);
    flex-shrink: 0;
}

.mobile-logo-ad {
    display: flex;
    flex-direction: column;
    margin-left: 2px;
    color: var(--white);
    line-height: 1.25;
}

.mobile-logo-sehir {
    font-weight: 700;
    font-size: 15px;
    letter-spacing: 2.5px;
}

.mobile-logo-oda {
    font-size: 11.5px;
    color: rgba(255, 255, 255, 0.82);
    letter-spacing: 0.3px;
}

.mobile-logo {
    display: flex;
    align-items: center;
    gap: 10px;
}

.mobile-logo img {
    width: 40px;
    height: 40px;
    border-radius: 50%;
    border: 2px solid var(--secondary);
    object-fit: contain;
    padding: 2px;
    background: var(--white);
}

.mobile-logo span {
    font-size: 14px;
    font-weight: 800;
    color: var(--white);
    letter-spacing: 1.5px;
    display: block;
    line-height: 1.1;
}

.mobile-logo small {
    font-size: 9px;
    color: rgba(255,255,255,0.5);
    font-weight: 500;
}

.mobile-header-right {
    display: flex;
    align-items: center;
    gap: 12px;
}

.mobile-lang {
    display: flex;
    gap: 4px;
}

.mobile-lang a {
    padding: 4px 8px;
    font-size: 11px;
    font-weight: 700;
    border-radius: 4px;
    color: rgba(255,255,255,0.4);
    letter-spacing: 0.5px;
    transition: all var(--transition-fast);
}

.mobile-lang a.active {
    background: var(--secondary);
    color: var(--white);
}

.mobile-close {
    width: 32px;
    height: 32px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    color: rgba(255,255,255,0.5);
    font-size: 16px;
    transition: all var(--transition-fast);
}

.mobile-close:hover {
    color: var(--white);
}

/* Mobile Nav */
.mobile-nav {
    flex: 1;
    overflow-y: auto;
    padding: 0;
    -webkit-overflow-scrolling: touch;
}

.mobile-nav-item:first-child {
    border-top: none;
}

.mobile-nav-item {
    border-bottom: 1px solid var(--border);
}

.mobile-nav-link {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    gap: 0;
    padding: 15px 20px;
    font-size: 13px;
    font-weight: 600;
    color: var(--text);
    text-transform: uppercase;
    letter-spacing: 0.5px;
    transition: all var(--transition-fast);
}

.mobile-nav-link.has-sub {
    justify-content: space-between;
}

.mobile-nav-link:hover {
    color: var(--primary);
    background: var(--bg);
}

.mobile-sub-toggle {
    width: 28px;
    height: 28px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 10px;
    color: var(--text-muted);
    border-radius: 50%;
    transition: all var(--transition);
    cursor: pointer;
    background: var(--bg);
}

.mobile-sub-toggle:hover {
    background: var(--primary);
    color: var(--white);
}

.mobile-sub-toggle.active {
    transform: rotate(180deg);
    background: var(--primary);
    color: var(--white);
}

.mobile-sub-menu {
    display: none;
    background: var(--bg);
    padding: 6px 0;
    border-top: 1px solid var(--border);
}

.mobile-sub-menu.active {
    display: block;
}

.mobile-sub-menu li a {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 11px 20px 11px 32px;
    font-size: 12.5px;
    color: var(--text-light);
    transition: all var(--transition-fast);
}

.mobile-sub-menu li a::before {
    content: '';
    width: 4px;
    height: 4px;
    border-radius: 50%;
    background: var(--text-muted);
    flex-shrink: 0;
}

.mobile-sub-menu li a:hover {
    color: var(--primary);
    background: rgba(27,58,92,0.04);
}

.mobile-sub-menu li a:hover::before {
    background: var(--secondary);
}

/* Mobile Sidebar Footer */
.mobile-sidebar-footer {
    padding: 16px 20px;
    border-top: 1px solid var(--border);
    flex-shrink: 0;
    background: var(--bg);
}

.mobile-contact-cards {
    display: flex;
    flex-direction: column;
    gap: 8px;
    margin-bottom: 16px;
}

.mobile-contact-card {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 10px 14px;
    background: var(--white);
    border-radius: var(--radius);
    border: 1px solid var(--border);
    transition: all var(--transition-fast);
}

.mobile-contact-card:hover {
    border-color: var(--secondary);
}

.mobile-contact-card i {
    width: 34px;
    height: 34px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--primary);
    color: var(--white);
    border-radius: 50%;
    font-size: 13px;
    flex-shrink: 0;
}

.mobile-contact-card small {
    display: block;
    font-size: 10px;
    color: var(--text-muted);
    text-transform: uppercase;
    letter-spacing: 0.5px;
    font-weight: 600;
}

.mobile-contact-card strong {
    display: block;
    font-size: 13px;
    color: var(--text);
    font-weight: 600;
}

.mobile-social {
    display: flex;
    justify-content: center;
    gap: 10px;
}

.mobile-social a {
    width: 36px;
    height: 36px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: var(--white);
    border: 1px solid var(--border);
    color: var(--text-muted);
    font-size: 15px;
    transition: all var(--transition-fast);
}

.mobile-social a:hover {
    background: var(--primary);
    border-color: var(--primary);
    color: var(--white);
}

/* ========================================
   PAGE CONTENT
   ======================================== */
.page-content {
    min-height: calc(100vh - var(--header-height) - var(--top-bar-height));
}

/* ========================================
   RESPONSIVE
   ======================================== */

/* Tablet */
@media (max-width: 1200px) {
    .logo-city {
        font-size: 16px;
    }

    .contact-email {
        display: none;
    }
}

/* Dar masaüstü: gezinme sarmalayıcının payına sığmıyor, boşluk kısılır */
@media (min-width: 1025px) and (max-width: 1320px) {
    .nav-link {
        padding: 0 9px;
        font-size: 12.5px;
        letter-spacing: 0;
    }

    .logo-text {
        display: none;
    }

    /* Almanca etiketler ("MITGLIEDSCHAFT UND REGISTRIERUNG") bu bantta hâlâ
       31px sığmıyordu; Türkçe dışı dillerde biraz daha kısılır. */
    html:not([lang="tr"]) .nav-link {
        padding: 0 6px;
        font-size: 12px;
    }
}

/* Türkçe dışı diller: etiketler belirgin biçimde uzun ("MEMBERSHIP AND
   REGISTRATION", "MITGLIEDSCHAFT UND REGISTRIERUNG"). Sarmalayıcının genişliği
   sabit olduğu için ekran ne kadar büyürse büyüsün gezinmenin payı artmaz;
   geniş ekranda da sıkışıp arama düğmesinin üstüne biner. Bu yüzden sıkışık
   gezinme tüm masaüstü genişliklerinde uygulanır. Türkçe düzeni değişmez. */
@media (min-width: 1321px) {
    html:not([lang="tr"]) .nav-link {
        padding: 0 8px;
        font-size: 12.5px;
        letter-spacing: 0;
    }

    html:not([lang="tr"]) .logo-text {
        display: none;
    }
}

/* Mobil başlık: 1024px'e kadar. Masaüstü gezinme 9 üst başlıkla tablette
   sığmıyor (820px'de 29px taşma), bu yüzden hamburger bandı buraya kadar. */
@media (max-width: 1024px) {
    /* Top bar gizle */
    .top-bar {
        display: none;
    }

    .online-islemler-wrap {
        display: none;
    }

    /* Navbar = mobil bar */
    .site-header {
        height: auto;
        padding: 10px 0;
        position: sticky;
        top: 0;
    }

    .site-header > .container {
        height: 100%;
    }

    .header-inner {
        padding-left: 0;
        justify-content: space-between;
        align-items: center;
        gap: 0;
        height: 100%;
    }

    /* Masaüstü nav ve desktop logo gizle */
    .main-nav,
    .header-logo {
        display: none;
    }

    /* Mobil logo navbar'da göster */
    .mobile-header-logo {
        display: flex;
        align-items: center;
        gap: 10px;
        height: 100%;
    }

    .mobile-header-logo .m-logo-img {
        width: 40px;
        height: 40px;
        border-radius: 50%;
        border: 2px solid var(--secondary);
        object-fit: contain;
        padding: 3px;
        background: var(--white);
        flex-shrink: 0;
    }

    .mobile-header-logo .m-logo-text {
        line-height: 1.15;
    }

    .mobile-header-logo .m-logo-city {
        font-size: 14px;
        font-weight: 800;
        color: var(--primary);
        letter-spacing: 2px;
        display: block;
    }

    .mobile-header-logo .m-logo-title {
        font-size: 9px;
        color: var(--text-light);
        font-weight: 500;
        display: block;
    }

    /* Sağ butonlar */
    .header-actions {
        display: flex;
        align-items: center;
        gap: 4px;
        height: 100%;
    }

    .header-search-btn {
        display: flex;
    }

    .container {
        padding: 0 16px;
    }

    .search-form input {
        font-size: 16px;
        padding: 16px 20px;
    }

    .search-form button {
        padding: 16px 20px;
    }
}

/* Masaüstüde mobil elemanları gizle */
@media (min-width: 1025px) {
    .mobile-header-logo {
        display: none;
    }
}

@media (max-width: 480px) {
    .mobile-sidebar {
        width: 100%;
        left: -100%;
    }
}

/* ========================================
   UTILITY - Genel Alanlar (ileride lazım)
   ======================================== */
.section {
    padding: 60px 0;
}

.section-header {
    margin-bottom: 40px;
}

.section-title {
    font-family: var(--font-heading);
    font-size: 32px;
    font-weight: 700;
    color: var(--primary);
    margin-bottom: 8px;
}

.section-subtitle {
    font-size: 15px;
    color: var(--text-light);
}

.btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: 12px 28px;
    font-size: 14px;
    font-weight: 600;
    border-radius: var(--radius);
    transition: all var(--transition);
    cursor: pointer;
    border: none;
    line-height: 1;
}

.btn-primary {
    background: var(--primary);
    color: var(--white);
}

.btn-primary:hover {
    background: var(--primary-light);
    transform: translateY(-1px);
    box-shadow: var(--shadow);
}

.btn-secondary {
    background: var(--secondary);
    color: var(--white);
}

.btn-secondary:hover {
    background: var(--secondary-dark);
}

.btn-outline {
    background: transparent;
    border: 2px solid var(--primary);
    color: var(--primary);
}

.btn-outline:hover {
    background: var(--primary);
    color: var(--white);
}

/* ========================================
   FOOTER
   ======================================== */

/* ========================================
   FOOTER
   ======================================== */
.site-footer {
    background: var(--primary-dark);
    color: rgba(255,255,255,0.8);
}

/* CTA Bölümü */
.footer-cta {
    background: var(--primary);
    padding: 40px 0;
    position: relative;
    overflow: hidden;
}

.footer-cta::before {
    content: '';
    position: absolute;
    top: -60px;
    right: -60px;
    width: 200px;
    height: 200px;
    border-radius: 50%;
    background: rgba(255,255,255,0.03);
}

.footer-cta::after {
    content: '';
    position: absolute;
    bottom: -80px;
    left: 10%;
    width: 300px;
    height: 300px;
    border-radius: 50%;
    background: rgba(255,255,255,0.02);
}

.footer-cta-inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 40px;
    position: relative;
    z-index: 1;
}

.footer-cta-text h3 {
    font-family: var(--font-heading);
    font-size: 24px;
    color: var(--white);
    margin-bottom: 6px;
}

.footer-cta-text p {
    font-size: 14px;
    color: rgba(255,255,255,0.6);
}

.footer-cta-form {
    display: flex;
    background: rgba(255,255,255,0.1);
    border: 1px solid rgba(255,255,255,0.15);
    border-radius: 50px;
    overflow: hidden;
    flex-shrink: 0;
    min-width: 380px;
    transition: border-color var(--transition-fast);
}

.footer-cta-form:focus-within {
    border-color: var(--secondary);
}

.footer-cta-form input {
    flex: 1;
    padding: 14px 24px;
    background: transparent;
    border: none;
    outline: none;
    color: var(--white);
    font-size: 14px;
}

.footer-cta-form input::placeholder {
    color: rgba(255,255,255,0.35);
}

.footer-cta-form button {
    padding: 14px 28px;
    background: var(--secondary);
    color: var(--white);
    font-size: 13px;
    font-weight: 700;
    border: none;
    cursor: pointer;
    letter-spacing: 0.5px;
    transition: background var(--transition-fast);
    font-family: inherit;
    white-space: nowrap;
}

.footer-cta-form button:hover {
    background: var(--secondary-light);
}

/* Ana Footer */
.footer-main {
    padding: 60px 0 40px;
}

.footer-grid {
    display: grid;
    grid-template-columns: 1.4fr 1fr 1fr 1.3fr;
    gap: 48px;
}

.footer-about {
    padding-right: 16px;
}

.footer-logo {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-bottom: 20px;
}

.footer-logo img {
    width: 50px;
    height: 50px;
    border-radius: 50%;
    border: 2px solid var(--secondary);
    object-fit: contain;
    padding: 3px;
    background: var(--white);
}

.footer-logo strong {
    display: block;
    font-size: 17px;
    color: var(--white);
    letter-spacing: 3px;
    line-height: 1.1;
}

.footer-logo span {
    font-size: 10px;
    color: rgba(255,255,255,0.4);
}

.footer-desc {
    font-size: 13px;
    line-height: 1.8;
    color: rgba(255,255,255,0.45);
    margin-bottom: 24px;
}

.footer-social {
    display: flex;
    gap: 8px;
}

.footer-social a {
    width: 38px;
    height: 38px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: rgba(255,255,255,0.06);
    color: rgba(255,255,255,0.5);
    font-size: 15px;
    transition: all var(--transition);
}

.footer-social a:hover {
    transform: translateY(-3px);
    color: var(--white);
}

/* Marka rengi ikonun kendi --marka değişkeninden gelir; sıra değişse de kaymaz */
.footer-social a:hover { background: var(--marka, var(--secondary)); }
.top-bar-social a:hover { background: var(--marka, rgba(255,255,255,0.2)); }

/* Footer Başlık */
.footer-title {
    font-size: 15px;
    font-weight: 700;
    color: var(--white);
    margin-bottom: 24px;
    padding-bottom: 12px;
    position: relative;
}

.footer-title::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    width: 36px;
    height: 2px;
    background: var(--secondary);
    border-radius: 2px;
}

/* Footer Linkler */
.footer-links li {
    margin-bottom: 4px;
}

.footer-links a {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 13px;
    color: rgba(255,255,255,0.5);
    padding: 6px 0;
    transition: all var(--transition-fast);
}

.footer-links a i {
    font-size: 8px;
    color: var(--secondary);
    transition: transform var(--transition-fast);
}

.footer-links a:hover {
    color: var(--white);
    transform: translateX(4px);
}

.footer-links a:hover i {
    transform: translateX(2px);
}

/* Footer İletişim */
.footer-contact li {
    display: flex;
    gap: 14px;
    margin-bottom: 16px;
    font-size: 13px;
    color: rgba(255,255,255,0.5);
    align-items: flex-start;
}

.footer-contact-icon {
    width: 36px;
    height: 36px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: rgba(255,255,255,0.06);
    border-radius: 50%;
    color: var(--secondary);
    font-size: 13px;
    flex-shrink: 0;
}

.footer-contact a {
    color: rgba(255,255,255,0.5);
    transition: color var(--transition-fast);
}

.footer-contact a:hover {
    color: var(--secondary);
}

/* Alt Footer */
.footer-bottom {
    border-top: 1px solid rgba(255,255,255,0.06);
    padding: 20px 0;
}

.footer-bottom-inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.footer-bottom p {
    font-size: 12px;
    color: rgba(255,255,255,0.3);
}

.footer-bottom-links {
    display: flex;
    gap: 24px;
}

.footer-bottom-links a {
    font-size: 12px;
    color: rgba(255,255,255,0.3);
    transition: color var(--transition-fast);
}

.footer-bottom-links a:hover {
    color: var(--secondary);
}

/* Telif satırındaki yapımcı bağlantısı (MWEB). Telif metniyle aynı puntoda
   ve tonda durur; yalnız altı çizili olduğu için bağlantı olduğu anlaşılır.
   Kurumsal bir künye bu — dikkat çekmesi değil, okunabilir olması gerekir. */
.footer-bottom-inner .footer-yapimci {
    color: inherit;
    text-decoration: none;
    transition: color var(--transition-fast);
}
.footer-bottom-inner .footer-yapimci:hover {
    color: var(--secondary);
}

/* Telif satırı artık uzun; dar ekranda sarması ve satır arasının açılması
   gerekiyor, yoksa iki satır birbirine yapışıyor. */
@media (max-width: 640px) {
    .footer-bottom-links { flex-wrap: wrap; gap: 14px 18px; }
    .footer-bottom-inner p { line-height: 1.6; }
}

/* Back to Top */
.back-to-top {
    position: fixed;
    bottom: 30px;
    right: 30px;
    width: 46px;
    height: 46px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--primary);
    color: var(--white);
    border-radius: 50%;
    font-size: 16px;
    box-shadow: var(--shadow-lg);
    z-index: 900;
    opacity: 0;
    visibility: hidden;
    transform: translateY(10px);
    transition: all var(--transition);
    border: 2px solid rgba(255,255,255,0.1);
}

.back-to-top.visible {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
}

.back-to-top:hover {
    background: var(--secondary);
    transform: translateY(-3px);
    border-color: var(--secondary);
}

/* Footer Responsive */
@media (max-width: 1024px) {
    .footer-grid {
        grid-template-columns: 1fr 1fr;
        gap: 36px;
    }

    .footer-cta-inner {
        flex-direction: column;
        text-align: center;
    }

    .footer-cta-form {
        min-width: 100%;
        max-width: 450px;
    }
}

@media (max-width: 768px) {
    /* CTA */
    .footer-cta {
        padding: 28px 0;
    }

    .footer-cta-text {
        margin-bottom: 4px;
    }

    .footer-cta-text h3 {
        font-size: 18px;
    }

    .footer-cta-text p {
        font-size: 13px;
    }

    .footer-cta-form {
        min-width: unset;
        width: 100%;
    }

    .footer-cta-form input {
        padding: 12px 18px;
        font-size: 13px;
    }

    .footer-cta-form button {
        padding: 12px 20px;
        font-size: 12px;
    }

    /* Ana Footer */
    .footer-main {
        padding: 32px 0 20px;
    }

    .footer-grid {
        grid-template-columns: 1fr 1fr;
        gap: 28px 20px;
    }

    .footer-about {
        grid-column: 1 / -1;
        padding-right: 0;
        text-align: center;
        border-bottom: 1px solid rgba(255,255,255,0.06);
        padding-bottom: 24px;
    }

    .footer-logo {
        justify-content: center;
    }

    .footer-desc {
        max-width: 400px;
        margin: 0 auto 20px;
    }

    .footer-social {
        justify-content: center;
    }

    .footer-title {
        font-size: 14px;
        margin-bottom: 16px;
        padding-bottom: 10px;
    }

    .footer-links a {
        font-size: 12.5px;
        padding: 5px 0;
    }

    .footer-contact li {
        margin-bottom: 12px;
        font-size: 12.5px;
    }

    .footer-contact-icon {
        width: 32px;
        height: 32px;
        font-size: 12px;
    }

    /* Alt Footer */
    .footer-bottom-inner {
        flex-direction: column;
        gap: 10px;
        text-align: center;
    }

    .footer-bottom-links {
        gap: 16px;
    }
}

@media (max-width: 480px) {
    .footer-grid {
        grid-template-columns: 1fr 1fr;
        gap: 20px 16px;
    }

    .footer-about {
        grid-column: 1 / -1;
        text-align: center;
    }

    .footer-logo {
        justify-content: center;
    }

    .footer-desc {
        display: none;
    }

    .footer-social {
        justify-content: center;
    }

    .footer-col:last-child {
        grid-column: 1 / -1;
    }

    .footer-contact {
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 10px;
    }

    .footer-contact li {
        margin-bottom: 0;
        background: rgba(255,255,255,0.04);
        padding: 10px;
        border-radius: var(--radius);
        flex-direction: column;
        gap: 8px;
        align-items: center;
        text-align: center;
        font-size: 11px;
    }

    .footer-contact-icon {
        width: 30px;
        height: 30px;
        font-size: 11px;
    }

    .back-to-top {
        bottom: 20px;
        right: 20px;
        width: 40px;
        height: 40px;
    }
}

/* ========================================
   PAGE BANNER
   ======================================== */
.page-banner {
    background: var(--primary-dark);
    padding: 48px 0;
    text-align: center;
    position: relative;
    overflow: hidden;
}

.page-banner::before {
    content: '';
    position: absolute;
    top: -100px;
    right: -100px;
    width: 300px;
    height: 300px;
    border-radius: 50%;
    background: rgba(255,255,255,0.02);
}

.page-banner h1 {
    font-family: var(--font-heading);
    font-size: 36px;
    color: var(--white);
    margin-bottom: 8px;
}

.page-banner p {
    font-size: 15px;
    color: rgba(255,255,255,0.5);
}

/* ========================================
   İLETİŞİM KARTLARI
   ======================================== */
.contact-cards-section {
    padding: 0;
    margin-top: -32px;
    position: relative;
    z-index: 10;
}

.contact-cards {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 20px;
}

.contact-card {
    background: var(--white);
    padding: 28px 24px;
    border-radius: var(--radius-lg);
    box-shadow: var(--shadow);
    text-align: center;
    transition: all var(--transition);
    border: 1px solid var(--border);
    display: block;
}

.contact-card:hover {
    transform: translateY(-4px);
    box-shadow: var(--shadow-lg);
    border-color: var(--secondary);
}

.contact-card-icon {
    width: 52px;
    height: 52px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--primary);
    color: var(--white);
    border-radius: 50%;
    font-size: 20px;
    margin: 0 auto 16px;
}

.contact-card h4 {
    font-size: 14px;
    font-weight: 700;
    color: var(--text);
    margin-bottom: 6px;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.contact-card p {
    font-size: 14px;
    color: var(--text-light);
    line-height: 1.5;
}

/* ========================================
   BİRİMLER
   ======================================== */
.birimler-section {
    padding: 64px 0;
    background: var(--bg);
}

.birimler-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 28px;
}

.birim-card {
    background: var(--white);
    border-radius: var(--radius-xl);
    overflow: hidden;
    box-shadow: var(--shadow-sm);
    transition: all var(--transition);
    border: 1px solid transparent;
}

.birim-card:hover {
    box-shadow: var(--shadow-lg);
    border-color: var(--secondary);
    transform: translateY(-2px);
}

.birim-card-header {
    display: flex;
    align-items: center;
    gap: 16px;
    padding: 22px 28px;
    background: var(--primary);
}

.birim-icon {
    width: 44px;
    height: 44px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: rgba(255,255,255,0.15);
    color: var(--white);
    border-radius: var(--radius-lg);
    font-size: 18px;
    flex-shrink: 0;
}

.birim-card-header h3 {
    font-size: 15px;
    font-weight: 700;
    color: var(--white);
    flex: 1;
    letter-spacing: 0.3px;
}

.birim-dahili {
    font-size: 11px;
    color: rgba(255,255,255,0.5);
    display: flex;
    align-items: center;
    gap: 5px;
    white-space: nowrap;
    background: rgba(255,255,255,0.1);
    padding: 4px 10px;
    border-radius: 50px;
}

.birim-dahili i {
    font-size: 9px;
    color: var(--secondary);
}

.birim-personel {
    padding: 6px 0;
}

.personel-row {
    display: grid;
    grid-template-columns: 1fr auto;
    align-items: center;
    padding: 14px 28px;
    gap: 20px;
    transition: background var(--transition-fast);
}

.personel-row:not(:last-child) {
    border-bottom: 1px solid var(--border);
}

.personel-row:hover {
    background: var(--bg);
}

.personel-info {
    display: flex;
    flex-direction: column;
    gap: 3px;
    min-width: 0;
}

.personel-info strong {
    font-size: 14px;
    color: var(--text);
    font-weight: 600;
}

.personel-unvan {
    font-size: 11px;
    color: var(--text-muted);
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.personel-contact {
    display: flex;
    align-items: center;
    gap: 8px;
    flex-shrink: 0;
}

.personel-tel,
.personel-email {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    font-size: 12px;
    color: var(--text-light);
    padding: 5px 12px;
    background: var(--bg);
    border-radius: 50px;
    transition: all var(--transition-fast);
    white-space: nowrap;
}

.personel-tel i,
.personel-email i {
    font-size: 10px;
    color: var(--secondary);
}

.personel-tel:hover,
.personel-email:hover {
    background: var(--primary);
    color: var(--white);
}

.personel-tel:hover i,
.personel-email:hover i {
    color: var(--white);
}


/* ========================================
   HARİTA + FORM
   ======================================== */
.contact-map-section {
    padding: 0 0 64px;
}

.contact-map-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 32px;
    min-height: 500px;
}

.contact-form-wrap {
    padding: 36px;
    background: var(--white);
    border: 1px solid var(--border);
    border-radius: var(--radius-lg);
}

.contact-form-wrap h3 {
    font-family: var(--font-heading);
    font-size: 24px;
    color: var(--primary);
    margin-bottom: 6px;
}

.contact-form-wrap > p {
    font-size: 14px;
    color: var(--text-light);
    margin-bottom: 28px;
}

.contact-form .form-row {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 16px;
}

.form-group {
    margin-bottom: 18px;
}

.form-group label {
    display: block;
    font-size: 13px;
    font-weight: 600;
    color: var(--text);
    margin-bottom: 6px;
}

.form-group input,
.form-group select,
.form-group textarea {
    width: 100%;
    padding: 11px 16px;
    border: 1px solid var(--border);
    border-radius: var(--radius);
    font-size: 14px;
    color: var(--text);
    background: var(--bg);
    transition: border-color var(--transition-fast);
    outline: none;
}

.form-group input:focus,
.form-group select:focus,
.form-group textarea:focus {
    border-color: var(--primary);
    background: var(--white);
}

.form-group textarea {
    resize: vertical;
    min-height: 100px;
}

.form-check {
    display: flex;
    align-items: flex-start;
    gap: 8px;
    margin-bottom: 20px;
}

.form-check input {
    margin-top: 3px;
    accent-color: var(--primary);
}

.form-check label {
    font-size: 12px;
    color: var(--text-light);
    line-height: 1.5;
}

.contact-map-wrap {
    border-radius: var(--radius-lg);
    overflow: hidden;
    min-height: 500px;
    border: 1px solid var(--border);
}

.contact-map-wrap iframe {
    width: 100%;
    height: 100%;
    display: block;
}

/* İletişim Responsive */
@media (max-width: 1024px) {
    .contact-cards {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 768px) {
    .page-banner {
        padding: 32px 0;
    }

    .page-banner h1 {
        font-size: 26px;
    }

    .contact-cards-section {
        margin-top: -24px;
    }

    .contact-cards {
        grid-template-columns: 1fr 1fr;
        gap: 12px;
    }

    .contact-card {
        padding: 20px 16px;
    }

    .contact-card-icon {
        width: 42px;
        height: 42px;
        font-size: 16px;
        margin-bottom: 12px;
    }

    .birimler-grid {
        grid-template-columns: 1fr;
    }

    .birimler-section {
        padding: 40px 0;
    }

    .personel-row {
        grid-template-columns: 1fr;
        gap: 10px;
        padding: 14px 20px;
    }

    .personel-contact {
        flex-wrap: wrap;
        gap: 6px;
    }

    .contact-map-grid {
        grid-template-columns: 1fr;
    }

    .contact-form-wrap {
        padding: 24px;
    }

    .contact-form .form-row {
        grid-template-columns: 1fr;
    }

    .contact-map-wrap {
        min-height: 300px;
    }
}

/* ========================================
   HERO SLIDER
   ======================================== */
.hero-slider-wrap {
    background: var(--bg);
    padding: 24px 0;
}

.hero-slider {
    position: relative;
    height: 520px;
    overflow: hidden;
    background: var(--primary-dark);
    border-radius: var(--radius-xl);
}

.hero-slides {
    position: relative;
    width: 100%;
    height: 100%;
}

.hero-slide {
    position: absolute;
    inset: 0;
    opacity: 0;
    transition: opacity 0.8s ease;
    z-index: 1;
}

.hero-slide.active {
    opacity: 1;
    z-index: 2;
}

.hero-slide-bg {
    position: absolute;
    inset: 0;
    background-size: cover;
    background-position: center;
    transform: scale(1.05);
    transition: transform 6s ease;
}

.hero-slide.active .hero-slide-bg {
    transform: scale(1);
}

.hero-slide-overlay {
    position: absolute;
    inset: 0;
    background: linear-gradient(
        to right,
        rgba(17, 40, 64, 0.92) 0%,
        rgba(17, 40, 64, 0.7) 40%,
        rgba(17, 40, 64, 0.3) 100%
    );
    z-index: 1;
}

.hero-slide-content {
    position: relative;
    z-index: 2;
    height: 100%;
    display: flex;
    align-items: center;
    padding: 0 48px;
}

.hero-text {
    max-width: 560px;
}

.hero-badge {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 6px 16px;
    background: var(--secondary);
    color: var(--white);
    font-size: 11px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 1px;
    border-radius: 50px;
    margin-bottom: 20px;
}

.hero-badge i {
    font-size: 12px;
}

.hero-text h2 {
    font-family: var(--font-heading);
    font-size: 38px;
    font-weight: 700;
    color: var(--white);
    line-height: 1.25;
    margin-bottom: 28px;
}

.hero-btn {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    padding: 14px 32px;
    background: var(--white);
    color: var(--primary);
    font-size: 14px;
    font-weight: 600;
    border-radius: var(--radius);
    transition: all var(--transition);
}

.hero-btn:hover {
    background: var(--secondary);
    color: var(--white);
    transform: translateX(4px);
}

.hero-btn i {
    font-size: 12px;
    transition: transform var(--transition);
}

.hero-btn:hover i {
    transform: translateX(4px);
}

/* Slider Oklar */
.hero-arrow {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    z-index: 10;
    width: 48px;
    height: 48px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: rgba(255,255,255,0.1);
    backdrop-filter: blur(8px);
    color: var(--white);
    border-radius: 50%;
    font-size: 16px;
    cursor: pointer;
    border: 1px solid rgba(255,255,255,0.15);
    transition: all var(--transition);
}

.hero-prev { left: 24px; }
.hero-next { right: 24px; }

/* Okları sağ alt köşeye taşı */
@media (min-width: 769px) {
    .hero-prev,
    .hero-next {
        top: auto;
        bottom: 28px;
        transform: none;
    }

    .hero-prev { left: auto; right: 80px; }
    .hero-next { right: 24px; }

    .hero-arrow:hover {
        background: var(--secondary);
        border-color: var(--secondary);
        transform: scale(1.08);
    }
}

/* Dots */
.hero-dots {
    position: absolute;
    bottom: 32px;
    left: 50%;
    transform: translateX(-50%);
    z-index: 10;
    display: flex;
    gap: 8px;
}

.hero-dot {
    width: 10px;
    height: 10px;
    border-radius: 50%;
    background: rgba(255,255,255,0.3);
    border: none;
    cursor: pointer;
    transition: all var(--transition);
    padding: 0;
}

.hero-dot.active {
    background: var(--secondary);
    width: 28px;
    border-radius: 5px;
}

/* Progress Bar */
.hero-progress {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    height: 3px;
    background: rgba(255,255,255,0.1);
    z-index: 10;
}

.hero-progress-bar {
    height: 100%;
    background: var(--secondary);
    width: 0%;
    transition: width 0.1s linear;
}

/* Slider Responsive */
@media (max-width: 1024px) {
    .hero-slider {
        height: 420px;
    }

    .hero-text h2 {
        font-size: 30px;
    }
}

@media (max-width: 768px) {
    .hero-slider {
        height: 360px;
    }

    .hero-slide-overlay {
        background: linear-gradient(
            to top,
            rgba(17, 40, 64, 0.95) 0%,
            rgba(17, 40, 64, 0.6) 50%,
            rgba(17, 40, 64, 0.3) 100%
        );
    }

    .hero-slider-wrap {
        padding: 12px 0;
    }

    .hero-slide-content {
        align-items: flex-end;
        padding: 0 24px 54px;
    }

    .hero-text h2 {
        font-size: 22px;
        margin-bottom: 18px;
    }

    .hero-badge {
        font-size: 10px;
        padding: 5px 12px;
        margin-bottom: 14px;
    }

    .hero-btn {
        padding: 11px 24px;
        font-size: 13px;
    }

    .hero-arrow {
        width: 34px;
        height: 34px;
        font-size: 12px;
        top: 14px;
        transform: none;
    }

    .hero-prev { left: auto; right: 52px; }
    .hero-next { right: 12px; }

    .hero-dots {
        bottom: 18px;
    }
}

/* ========================================
   HIZLI İŞLEMLER
   ======================================== */
.quick-links-section {
    background: var(--bg);
    padding: 40px 0;
}

.quick-links-section .section-header {
    text-align: center;
    margin-bottom: 24px;
}

.quick-links {
    display: flex;
    align-items: stretch;
    box-shadow: var(--shadow);
    border-radius: var(--radius-lg);
    overflow: hidden;
}

.quick-link-item {
    flex: 1;
    display: flex;
    align-items: center;
    gap: 14px;
    padding: 22px 20px;
    background: var(--white);
    transition: all var(--transition);
    border-right: 1px solid var(--border);
    position: relative;
}

.quick-link-item:last-child {
    border-right: none;
}

.quick-link-item::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    height: 3px;
    background: var(--secondary);
    transform: scaleX(0);
    transition: transform var(--transition);
}

.quick-link-item:hover {
    background: var(--primary);
}

.quick-link-item:hover::after {
    transform: scaleX(1);
}

.quick-link-icon {
    width: 44px;
    height: 44px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--primary);
    color: var(--white);
    border-radius: 50%;
    font-size: 18px;
    flex-shrink: 0;
    transition: all var(--transition);
}

.quick-link-item:hover .quick-link-icon {
    background: var(--secondary);
}

.quick-link-item span {
    font-size: 13px;
    font-weight: 600;
    color: var(--text);
    line-height: 1.3;
    transition: color var(--transition);
}

.quick-link-item:hover span {
    color: var(--white);
}

/* ========================================
   BAŞKAN MESAJI + VİDEO
   ======================================== */
.baskan-section {
    padding: 72px 0;
}

.baskan-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 48px;
    align-items: center;
}

.baskan-label {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    font-size: 12px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 1.5px;
    color: var(--secondary);
    margin-bottom: 16px;
}

.baskan-label i {
    font-size: 16px;
}

.baskan-message h2 {
    font-family: var(--font-heading);
    font-size: 30px;
    color: var(--primary);
    line-height: 1.3;
    margin-bottom: 20px;
}

.baskan-message p {
    font-size: 15px;
    color: var(--text-light);
    line-height: 1.8;
    margin-bottom: 24px;
}

.baskan-info {
    display: flex;
    align-items: center;
    gap: 14px;
}

.baskan-info img {
    width: 56px;
    height: 56px;
    border-radius: 50%;
    object-fit: cover;
    border: 2px solid var(--secondary);
}

.baskan-info strong {
    display: block;
    font-size: 15px;
    color: var(--text);
}

.baskan-info span {
    font-size: 12px;
    color: var(--text-muted);
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

/* Video */
.baskan-video-wrap {
    position: relative;
    padding-bottom: 56.25%;
    border-radius: var(--radius-xl);
    overflow: hidden;
    box-shadow: var(--shadow-lg);
}

.baskan-video-wrap iframe {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
}

.baskan-gallery-thumbs {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    gap: 8px;
    margin-top: 12px;
}

.baskan-thumb {
    border-radius: var(--radius);
    overflow: hidden;
    aspect-ratio: 1;
    cursor: pointer;
}

.baskan-thumb img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform var(--transition);
}

.baskan-thumb:hover img {
    transform: scale(1.1);
}

.baskan-thumb-more {
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--primary);
    color: var(--white);
    text-align: center;
}

.baskan-thumb-more span {
    font-size: 13px;
    font-weight: 700;
    line-height: 1.3;
}

/* ========================================
   İSTATİSTİKLER
   ======================================== */
.stats-section {
    padding: 64px 0;
    background: var(--primary-dark);
}

.stats-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 32px;
}

.stat-item {
    text-align: center;
    padding: 32px 16px;
    border-radius: var(--radius-lg);
    background: rgba(255,255,255,0.04);
    border: 1px solid rgba(255,255,255,0.06);
    transition: all var(--transition);
}

.stat-item:hover {
    background: rgba(255,255,255,0.08);
    transform: translateY(-4px);
}

.stat-icon {
    font-size: 28px;
    color: var(--secondary);
    margin-bottom: 16px;
}

.stat-number {
    font-family: var(--font-heading);
    font-size: 42px;
    font-weight: 700;
    color: var(--white);
    line-height: 1;
    margin-bottom: 8px;
}

.stat-label {
    font-size: 13px;
    color: rgba(255,255,255,0.5);
    text-transform: uppercase;
    letter-spacing: 1px;
    font-weight: 600;
}


/* ========================================
   HABERLER & DUYURULAR
   ======================================== */
.news-section {
    padding: 64px 0;
}

.news-layout {
    display: grid;
    grid-template-columns: 1.3fr 1fr 0.9fr;
    gap: 32px;
}

/* Öne Çıkan Haber */
.featured-card {
    display: block;
    border-radius: var(--radius-lg);
    overflow: hidden;
    background: var(--white);
    border: 1px solid var(--border);
}

.featured-card-img {
    position: relative;
    height: 240px;
    overflow: hidden;
}

.featured-card-img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.featured-badge {
    position: absolute;
    top: 12px;
    left: 12px;
    padding: 5px 14px;
    background: var(--secondary);
    color: var(--white);
    font-size: 10px;
    font-weight: 700;
    border-radius: 4px;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.featured-card-body {
    padding: 20px;
}

.featured-card-body h3 {
    font-size: 17px;
    font-weight: 700;
    color: var(--text);
    line-height: 1.4;
    margin-bottom: 10px;
}

.featured-date {
    display: flex;
    align-items: center;
    gap: 5px;
    font-size: 12px;
    color: var(--text-muted);
}

/* Haber Listesi */
.news-compact-list {
    display: flex;
    flex-direction: column;
}

.news-compact-item {
    display: flex;
    align-items: center;
    gap: 14px;
    padding: 14px 0;
    border-bottom: 1px solid var(--border);
}

.news-compact-item:last-child {
    border-bottom: none;
}

.news-compact-thumb {
    width: 80px;
    height: 60px;
    border-radius: var(--radius);
    overflow: hidden;
    flex-shrink: 0;
}

.news-compact-thumb img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.news-compact-body h4 {
    font-size: 13px;
    font-weight: 600;
    color: var(--text);
    line-height: 1.45;
    margin-bottom: 4px;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.news-compact-date {
    display: flex;
    align-items: center;
    gap: 4px;
    font-size: 11px;
    color: var(--text-muted);
}

/* Duyurular */
.duyuru-list {
    display: flex;
    flex-direction: column;
}

.duyuru-item {
    display: flex;
    align-items: flex-start;
    gap: 14px;
    padding: 16px 0;
    border-bottom: 1px solid var(--border);
}

.duyuru-item:last-child {
    border-bottom: none;
}

.duyuru-num {
    width: 36px;
    height: 36px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--bg);
    color: var(--primary);
    font-size: 14px;
    font-weight: 800;
    border-radius: var(--radius);
    flex-shrink: 0;
    border: 1px solid var(--border);
}

.duyuru-body h4 {
    font-size: 13px;
    font-weight: 600;
    color: var(--text);
    line-height: 1.45;
    margin-bottom: 4px;
}

.duyuru-date {
    display: flex;
    align-items: center;
    gap: 4px;
    font-size: 11px;
    color: var(--text-muted);
}

/* Section More */
.section-more {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    font-size: 13px;
    font-weight: 600;
    color: var(--secondary);
}


/* ========================================
   ANASAYFA RESPONSIVE
   ======================================== */
@media (max-width: 1024px) {
    .quick-links {
        flex-wrap: wrap;
    }

    .quick-link-item {
        flex: 1 1 calc(33.333% - 1px);
    }

    .baskan-grid {
        grid-template-columns: 1fr;
        gap: 36px;
    }

    .stats-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    .news-layout {
        grid-template-columns: 1fr 1fr;
    }

    .duyuru-col {
        grid-column: 1 / -1;
    }
}

@media (max-width: 768px) {
    .quick-links {
        flex-wrap: wrap;
        border-radius: var(--radius);
    }

    .quick-link-item {
        flex: 1 1 calc(33.333% - 1px);
        padding: 14px 12px;
        gap: 10px;
    }

    .quick-link-icon {
        width: 36px;
        height: 36px;
        font-size: 14px;
    }

    .quick-link-item span {
        font-size: 11px;
    }

    .baskan-section {
        padding: 48px 0;
    }

    .baskan-message h2 {
        font-size: 24px;
    }

    .baskan-gallery-thumbs {
        grid-template-columns: repeat(5, 1fr);
    }

    .stats-section {
        padding: 48px 0;
    }

    .stats-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 16px;
    }

    .stat-item {
        padding: 24px 12px;
    }

    .stat-number {
        font-size: 32px;
    }

    .news-section {
        padding: 48px 0;
    }

    .news-layout {
        grid-template-columns: 1fr;
        gap: 32px;
    }

    .duyuru-col {
        grid-column: auto;
    }

    .featured-card-img {
        height: 180px;
    }
}

@media (max-width: 480px) {
    .quick-link-item {
        flex: 1 1 calc(50% - 1px);
    }
}

/* ========================================
   VIDEO PLAY BUTTON
   ======================================== */
.baskan-video-wrap {
    cursor: pointer;
}

.baskan-video-wrap img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    position: absolute;
    inset: 0;
}

.video-play-btn {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 72px;
    height: 72px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--secondary);
    color: var(--white);
    border-radius: 50%;
    font-size: 24px;
    z-index: 3;
    transition: all var(--transition);
    box-shadow: 0 0 0 12px rgba(200, 162, 60, 0.2);
}

.video-play-btn i {
    margin-left: 4px;
}

.baskan-video-wrap:hover .video-play-btn {
    transform: translate(-50%, -50%) scale(1.1);
    box-shadow: 0 0 0 18px rgba(200, 162, 60, 0.25);
}

/* ========================================
   LIGHTBOX MODAL
   ======================================== */
.lightbox {
    position: fixed;
    inset: 0;
    z-index: 9999;
    opacity: 0;
    visibility: hidden;
    transition: all 0.3s ease;
}

.lightbox.active {
    opacity: 1;
    visibility: visible;
}

.lightbox-backdrop {
    position: absolute;
    inset: 0;
    background: rgba(0, 0, 0, 0.92);
    backdrop-filter: blur(10px);
}

.lightbox-content {
    position: relative;
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 2;
}

.lightbox-body {
    max-width: 90vw;
    max-height: 85vh;
    display: flex;
    align-items: center;
    justify-content: center;
}

.lightbox-body img {
    max-width: 90vw;
    max-height: 85vh;
    object-fit: contain;
    border-radius: var(--radius-lg);
    box-shadow: 0 20px 60px rgba(0,0,0,0.5);
    animation: lightboxFadeIn 0.3s ease;
}

.lightbox-body iframe {
    width: 80vw;
    height: 45vw;
    max-width: 960px;
    max-height: 540px;
    border: none;
    border-radius: var(--radius-lg);
    box-shadow: 0 20px 60px rgba(0,0,0,0.5);
    animation: lightboxFadeIn 0.3s ease;
}

@keyframes lightboxFadeIn {
    from { opacity: 0; transform: scale(0.95); }
    to { opacity: 1; transform: scale(1); }
}

.lightbox-close {
    position: absolute;
    top: 20px;
    right: 24px;
    width: 44px;
    height: 44px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: rgba(255,255,255,0.1);
    color: var(--white);
    border-radius: 50%;
    font-size: 20px;
    cursor: pointer;
    border: 1px solid rgba(255,255,255,0.15);
    transition: all var(--transition-fast);
    z-index: 10;
}

.lightbox-close:hover {
    background: rgba(255,255,255,0.2);
}

.lightbox-arrow {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 48px;
    height: 48px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: rgba(255,255,255,0.08);
    color: var(--white);
    border-radius: 50%;
    font-size: 18px;
    cursor: pointer;
    border: 1px solid rgba(255,255,255,0.12);
    transition: all var(--transition-fast);
    z-index: 10;
}

.lightbox-arrow:hover {
    background: var(--secondary);
    border-color: var(--secondary);
}

.lightbox-prev { left: 20px; }
.lightbox-next { right: 20px; }

.lightbox-arrow.hidden {
    display: none;
}

.lightbox-counter {
    position: absolute;
    bottom: 24px;
    left: 50%;
    transform: translateX(-50%);
    color: rgba(255,255,255,0.5);
    font-size: 13px;
    font-weight: 600;
    z-index: 10;
}

/* Lightbox Mobil */
@media (max-width: 768px) {
    .lightbox-body iframe {
        width: 92vw;
        height: 52vw;
    }

    .lightbox-arrow {
        width: 38px;
        height: 38px;
        font-size: 14px;
    }

    .lightbox-prev { left: 10px; }
    .lightbox-next { right: 10px; }

    .lightbox-close {
        top: 12px;
        right: 12px;
        width: 38px;
        height: 38px;
        font-size: 16px;
    }

    .video-play-btn {
        width: 56px;
        height: 56px;
        font-size: 20px;
        box-shadow: 0 0 0 8px rgba(200, 162, 60, 0.2);
    }
}

/* ========================================
   KURUMSAL İŞ BİRLİKLERİ (Kayan Logolar)
   ======================================== */
.partners-section {
    padding: 36px 0;
    background: var(--white);
    border-top: 1px solid var(--border);
    border-bottom: 1px solid var(--border);
    overflow: hidden;
}

.partners-track {
    overflow: hidden;
    mask-image: linear-gradient(to right, transparent, black 10%, black 90%, transparent);
    -webkit-mask-image: linear-gradient(to right, transparent, black 10%, black 90%, transparent);
}

.partners-slide {
    display: flex;
    align-items: center;
    gap: 48px;
    width: max-content;
    animation: partnerScroll 30s linear infinite;
}

.partners-slide:hover {
    animation-play-state: paused;
}

@keyframes partnerScroll {
    0% { transform: translateX(0); }
    100% { transform: translateX(-50%); }
}

.partner-logo {
    flex-shrink: 0;
    height: 48px;
    display: flex;
    align-items: center;
    opacity: 0.4;
    filter: grayscale(100%);
    transition: all var(--transition);
}

.partner-logo:hover {
    opacity: 1;
    filter: grayscale(0%);
}

.partner-logo img {
    height: 100%;
    width: auto;
    object-fit: contain;
}

@media (max-width: 768px) {
    .partners-section {
        padding: 24px 0;
    }

    .partner-logo {
        height: 36px;
    }

    .partners-slide {
        gap: 36px;
        animation-duration: 20s;
    }
}

/* ========================================
   PROJELER SLIDER
   ======================================== */
.projects-section {
    padding: 64px 0;
    background: var(--bg);
}

.projects-section .section-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 32px;
}

.projects-track {
    overflow: hidden;
}

.projects-slide {
    display: flex;
    gap: 24px;
    transition: transform 0.5s ease;
}

.project-card {
    flex: 0 0 calc(33.333% - 16px);
    background: var(--white);
    border-radius: var(--radius-lg);
    overflow: hidden;
    display: block;
    border: 1px solid var(--border);
}

.project-card-img {
    position: relative;
    height: 180px;
    overflow: hidden;
}

.project-card-img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.project-card-kurum {
    position: absolute;
    top: 12px;
    left: 12px;
    padding: 5px 14px;
    background: var(--secondary);
    color: var(--white);
    font-size: 10px;
    font-weight: 700;
    border-radius: 4px;
    letter-spacing: 0.3px;
    text-transform: uppercase;
}

.project-card-body {
    padding: 18px 20px;
}

.project-card-body h4 {
    font-size: 14px;
    font-weight: 600;
    color: var(--text);
    line-height: 1.5;
    margin-bottom: 12px;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.project-card-link {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    font-size: 12px;
    font-weight: 600;
    color: var(--primary);
}

.project-card-link i {
    font-size: 10px;
}

/* Projeler Nav */
.projects-nav {
    display: flex;
    justify-content: center;
    gap: 10px;
    margin-top: 28px;
}

.projects-arrow {
    width: 42px;
    height: 42px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: var(--white);
    border: 1px solid var(--border);
    color: var(--text);
    font-size: 14px;
    cursor: pointer;
    transition: all var(--transition-fast);
}

.projects-arrow:hover {
    background: var(--primary);
    color: var(--white);
    border-color: var(--primary);
}

@media (max-width: 1024px) {
    .project-card {
        flex: 0 0 calc(50% - 12px);
    }
}

@media (max-width: 768px) {
    .projects-section {
        padding: 48px 0;
    }

    .project-card {
        flex: 0 0 calc(85%);
    }

    .project-card-img {
        height: 150px;
    }
}

/* ========================================
   LİSTELEME SAYFALARI (Haberler & Duyurular)
   ======================================== */
.listing-section {
    padding: 48px 0;
}

/* Haber Kartları Grid */
.listing-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 24px;
}

.listing-card {
    display: block;
    background: var(--white);
    border-radius: var(--radius-lg);
    overflow: hidden;
    border: 1px solid var(--border);
}

.listing-card-img {
    height: 200px;
    overflow: hidden;
}

.listing-card-img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.listing-card-placeholder {
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--bg);
    color: var(--text-muted);
    font-size: 40px;
}

.listing-card-body {
    padding: 20px;
}

.listing-card-tag {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    font-size: 11px;
    font-weight: 600;
    color: var(--secondary);
    text-transform: uppercase;
    letter-spacing: 0.5px;
    margin-bottom: 10px;
}

.listing-card-tag i {
    font-size: 10px;
}

.listing-card-body h3 {
    font-size: 15px;
    font-weight: 600;
    color: var(--text);
    line-height: 1.5;
    margin-bottom: 14px;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.listing-card-footer {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding-top: 14px;
    border-top: 1px solid var(--border);
}

.listing-card-date {
    display: flex;
    align-items: center;
    gap: 5px;
    font-size: 12px;
    color: var(--text-muted);
}

.listing-card-link {
    display: flex;
    align-items: center;
    gap: 5px;
    font-size: 12px;
    font-weight: 600;
    color: var(--primary);
}

/* Duyuru Listesi Sayfa */
.duyuru-list-page {
    display: flex;
    flex-direction: column;
    gap: 0;
}

.duyuru-page-item {
    display: flex;
    align-items: center;
    gap: 20px;
    padding: 24px;
    border-bottom: 1px solid var(--border);
    background: var(--white);
    transition: background var(--transition-fast);
}

.duyuru-page-item:first-child {
    border-radius: var(--radius-lg) var(--radius-lg) 0 0;
    border: 1px solid var(--border);
    border-bottom: 1px solid var(--border);
}

.duyuru-page-item:last-child {
    border-radius: 0 0 var(--radius-lg) var(--radius-lg);
    border: 1px solid var(--border);
    border-top: none;
}

.duyuru-page-item:not(:first-child):not(:last-child) {
    border-left: 1px solid var(--border);
    border-right: 1px solid var(--border);
}

.duyuru-page-item:hover {
    background: var(--bg);
}

.duyuru-page-num {
    width: 48px;
    height: 48px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--primary);
    color: var(--white);
    font-size: 16px;
    font-weight: 800;
    border-radius: var(--radius);
    flex-shrink: 0;
}

.duyuru-page-body {
    flex: 1;
}

.duyuru-page-body h3 {
    font-size: 16px;
    font-weight: 600;
    color: var(--text);
    line-height: 1.4;
    margin-bottom: 4px;
}

.duyuru-page-date {
    display: flex;
    align-items: center;
    gap: 5px;
    font-size: 12px;
    color: var(--text-muted);
}

.duyuru-page-arrow {
    color: var(--text-muted);
    font-size: 14px;
    flex-shrink: 0;
}

/* Listeleme Responsive */
@media (max-width: 1024px) {
    .listing-grid {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 768px) {
    .listing-section {
        padding: 32px 0;
    }

    .listing-grid {
        grid-template-columns: 1fr;
        gap: 16px;
    }

    .listing-card-img {
        height: 180px;
    }

    .duyuru-page-item {
        padding: 18px 16px;
        gap: 14px;
    }

    .duyuru-page-num {
        width: 40px;
        height: 40px;
        font-size: 14px;
    }

    .duyuru-page-body h3 {
        font-size: 14px;
    }
}

/* ========================================
   BAŞKAN ÖZGEÇMİŞ SAYFASI
   ======================================== */
.baskan-profile-section {
    padding: 48px 0;
}

.baskan-profile {
    display: grid;
    grid-template-columns: 320px 1fr;
    gap: 48px;
    align-items: start;
}

/* Sidebar */
.baskan-profile-sidebar {
    position: sticky;
    top: 100px;
}

.baskan-photo {
    border-radius: var(--radius-xl);
    overflow: hidden;
    margin-bottom: 20px;
    border: 3px solid var(--secondary);
}

.baskan-photo img {
    width: 100%;
    aspect-ratio: 3/4;
    object-fit: cover;
}

.baskan-card-info {
    background: var(--white);
    border: 1px solid var(--border);
    border-radius: var(--radius-lg);
    padding: 24px;
}

.baskan-card-info h2 {
    font-size: 20px;
    font-weight: 700;
    color: var(--primary);
    margin-bottom: 4px;
}

.baskan-card-title {
    display: block;
    font-size: 13px;
    color: var(--secondary);
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    margin-bottom: 20px;
    padding-bottom: 16px;
    border-bottom: 1px solid var(--border);
}

.baskan-card-details {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.baskan-detail-item {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    font-size: 13px;
    color: var(--text-light);
    line-height: 1.4;
}

.baskan-detail-item i {
    color: var(--primary);
    font-size: 14px;
    margin-top: 2px;
    width: 16px;
    flex-shrink: 0;
}

.baskan-detail-item a {
    color: var(--text-light);
}

/* Content */
.baskan-bio h3,
.baskan-timeline h3,
.baskan-other-roles h3 {
    font-family: var(--font-heading);
    font-size: 22px;
    color: var(--primary);
    margin-bottom: 16px;
    padding-bottom: 12px;
    border-bottom: 2px solid var(--secondary);
    display: inline-block;
}

.baskan-bio {
    margin-bottom: 40px;
}

.baskan-bio p {
    font-size: 15px;
    color: var(--text-light);
    line-height: 1.9;
    margin-bottom: 16px;
}

/* Timeline */
.baskan-timeline {
    margin-bottom: 40px;
}

.timeline {
    position: relative;
    padding-left: 48px;
}

.timeline::before {
    content: '';
    position: absolute;
    left: 17px;
    top: 0;
    bottom: 0;
    width: 2px;
    background: linear-gradient(to bottom, var(--secondary), var(--border));
}

.timeline-item {
    position: relative;
    padding-bottom: 28px;
}

.timeline-item:last-child {
    padding-bottom: 0;
}

.timeline-dot {
    position: absolute;
    left: -48px;
    top: 0;
    width: 36px;
    height: 36px;
    border-radius: 50%;
    background: var(--bg);
    border: 2px solid var(--border);
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--text-muted);
    font-size: 12px;
    z-index: 1;
}

.timeline-active .timeline-dot {
    background: var(--secondary);
    border-color: var(--secondary);
    color: var(--white);
    box-shadow: 0 0 0 6px rgba(200,162,60,0.15);
}

.timeline-card {
    background: var(--white);
    border: 1px solid var(--border);
    border-radius: var(--radius-lg);
    padding: 18px 22px;
}

.timeline-active .timeline-card {
    border-color: var(--secondary);
    background: linear-gradient(135deg, rgba(200,162,60,0.04), var(--white));
}

.timeline-year {
    display: inline-block;
    font-size: 12px;
    font-weight: 700;
    color: var(--secondary);
    background: rgba(200,162,60,0.1);
    padding: 3px 12px;
    border-radius: 50px;
    margin-bottom: 8px;
    letter-spacing: 0.5px;
}

.timeline-desc {
    font-size: 14px;
    color: var(--text);
    font-weight: 500;
    line-height: 1.5;
}

/* Diğer Görevler */
.roles-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 12px;
}

.role-item {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 14px 18px;
    background: var(--bg);
    border-radius: var(--radius);
    font-size: 14px;
    color: var(--text);
}

.role-item i {
    color: var(--secondary);
    font-size: 16px;
    flex-shrink: 0;
}

/* Galeri */
.baskan-gallery-section {
    padding: 0 0 64px;
}

.baskan-gallery-grid {
    display: grid;
    grid-template-columns: repeat(6, 1fr);
    gap: 10px;
}

.gallery-item {
    border-radius: var(--radius);
    overflow: hidden;
    aspect-ratio: 1;
    cursor: pointer;
}

.gallery-item img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

/* Video Grid */
.baskan-video-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 16px;
}

.video-gallery-item {
    position: relative;
    border-radius: var(--radius-lg);
    overflow: hidden;
    aspect-ratio: 16/9;
    cursor: pointer;
}

.video-gallery-item img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.video-play-sm {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 48px;
    height: 48px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--secondary);
    color: var(--white);
    border-radius: 50%;
    font-size: 16px;
    box-shadow: 0 0 0 8px rgba(200,162,60,0.2);
}

.video-play-sm i {
    margin-left: 3px;
}

/* Başkan Responsive */
@media (max-width: 1024px) {
    .baskan-profile {
        grid-template-columns: 260px 1fr;
        gap: 32px;
    }

    .roles-grid {
        grid-template-columns: 1fr;
    }

    .baskan-gallery-grid {
        grid-template-columns: repeat(4, 1fr);
    }
}

@media (max-width: 768px) {
    .baskan-profile {
        grid-template-columns: 1fr;
        gap: 24px;
    }

    .baskan-profile-sidebar {
        position: static;
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 16px;
    }

    .baskan-photo {
        margin-bottom: 0;
    }

    .baskan-gallery-grid {
        grid-template-columns: repeat(3, 1fr);
    }

    .baskan-video-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    .baskan-bio h3,
    .baskan-timeline h3,
    .baskan-other-roles h3 {
        font-size: 18px;
    }
}

@media (max-width: 480px) {
    .baskan-profile-sidebar {
        grid-template-columns: 1fr;
    }

    .baskan-gallery-grid {
        grid-template-columns: repeat(3, 1fr);
    }

    .baskan-video-grid {
        grid-template-columns: 1fr;
    }
}

/* ========================================
   DETAY SAYFA ŞABLONU
   ======================================== */
.detail-section {
    padding: 48px 0;
}

.detail-layout {
    display: grid;
    grid-template-columns: 1fr 300px;
    gap: 40px;
    align-items: start;
}

/* Ana İçerik */
.detail-cover {
    border-radius: var(--radius-xl);
    overflow: hidden;
    margin-bottom: 32px;
    max-height: 400px;
}

.detail-cover img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.detail-body {
    margin-bottom: 40px;
}

.detail-body h2 {
    font-family: var(--font-heading);
    font-size: 28px;
    color: var(--primary);
    margin-bottom: 20px;
    line-height: 1.3;
}

.detail-body h3 {
    font-size: 20px;
    font-weight: 700;
    color: var(--primary);
    margin: 28px 0 12px;
}

.detail-body p {
    font-size: 15px;
    color: var(--text-light);
    line-height: 1.9;
    margin-bottom: 16px;
}

.detail-body ul {
    margin: 0 0 20px 0;
    padding: 0;
}

.detail-body ul li {
    position: relative;
    padding: 8px 0 8px 24px;
    font-size: 15px;
    color: var(--text-light);
}

.detail-body ul li::before {
    content: '';
    position: absolute;
    left: 0;
    top: 16px;
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: var(--secondary);
}

.detail-body blockquote {
    margin: 24px 0;
    padding: 24px 28px;
    background: var(--bg);
    border-left: 4px solid var(--secondary);
    border-radius: 0 var(--radius-lg) var(--radius-lg) 0;
}

.detail-body blockquote p {
    font-size: 16px;
    font-style: italic;
    color: var(--text);
    margin-bottom: 8px;
}

.detail-body blockquote cite {
    font-size: 13px;
    color: var(--text-muted);
    font-style: normal;
    font-weight: 600;
}

/* Info Box */
.detail-info-box {
    display: flex;
    gap: 16px;
    padding: 20px;
    background: rgba(2,132,199,0.06);
    border: 1px solid rgba(2,132,199,0.15);
    border-radius: var(--radius-lg);
    margin: 24px 0;
}

.info-box-icon {
    color: var(--info);
    font-size: 22px;
    flex-shrink: 0;
    margin-top: 2px;
}

.detail-info-box strong {
    display: block;
    font-size: 14px;
    color: var(--text);
    margin-bottom: 4px;
}

.detail-info-box p {
    font-size: 13px;
    color: var(--text-light);
    margin: 0;
    line-height: 1.6;
}

/* SSS */
.detail-faq {
    margin-bottom: 40px;
}

.detail-faq > h3 {
    font-size: 20px;
    font-weight: 700;
    color: var(--primary);
    margin-bottom: 20px;
    display: flex;
    align-items: center;
    gap: 10px;
}

.detail-faq > h3 i {
    color: var(--secondary);
}

.faq-list {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.faq-item {
    border: 1px solid var(--border);
    border-radius: var(--radius-lg);
    overflow: hidden;
}

.faq-question {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    padding: 16px 20px;
    font-size: 14px;
    font-weight: 600;
    color: var(--text);
    text-align: left;
    background: var(--bg);
    cursor: pointer;
    font-family: inherit;
    transition: all var(--transition-fast);
}

.faq-question i {
    font-size: 12px;
    color: var(--text-muted);
    transition: transform var(--transition);
    flex-shrink: 0;
}

.faq-item.open .faq-question {
    background: var(--primary);
    color: var(--white);
}

.faq-item.open .faq-question i {
    transform: rotate(180deg);
    color: var(--secondary);
}

.faq-answer {
    max-height: 0;
    overflow: hidden;
    padding: 0 20px;
    transition: max-height 0.4s ease, padding 0.4s ease;
}

.faq-item.open .faq-answer {
    max-height: 300px;
    padding: 18px 20px;
}

.faq-answer p {
    font-size: 14px;
    color: var(--text-light);
    line-height: 1.7;
    margin: 0;
}

/* Dosya Ekleri */
.detail-files {
    margin-bottom: 40px;
}

.detail-files > h3 {
    font-size: 20px;
    font-weight: 700;
    color: var(--primary);
    margin-bottom: 20px;
    display: flex;
    align-items: center;
    gap: 10px;
}

.detail-files > h3 i {
    color: var(--secondary);
}

.files-list {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.file-item {
    display: flex;
    align-items: center;
    gap: 14px;
    padding: 14px 18px;
    background: var(--bg);
    border: 1px solid var(--border);
    border-radius: var(--radius);
    transition: border-color var(--transition-fast);
}

.file-item:hover {
    border-color: var(--primary);
}

.file-icon {
    width: 42px;
    height: 42px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: var(--radius);
    font-size: 20px;
    flex-shrink: 0;
}

.file-pdf { background: #FEE2E2; color: #DC2626; }
.file-word { background: #DBEAFE; color: #2563EB; }
.file-excel { background: #D1FAE5; color: #059669; }

.file-info {
    flex: 1;
}

.file-info strong {
    display: block;
    font-size: 14px;
    color: var(--text);
}

.file-info span {
    font-size: 12px;
    color: var(--text-muted);
}

.file-download {
    color: var(--text-muted);
    font-size: 16px;
}

/* Galeri */
.detail-gallery,
.detail-videos {
    margin-bottom: 40px;
}

.detail-gallery > h3,
.detail-videos > h3 {
    font-size: 20px;
    font-weight: 700;
    color: var(--primary);
    margin-bottom: 20px;
    display: flex;
    align-items: center;
    gap: 10px;
}

.detail-gallery > h3 i,
.detail-videos > h3 i {
    color: var(--secondary);
}

.detail-gallery-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 10px;
}

.detail-video-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 16px;
}

/* Paylaş */
.detail-share {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 20px 0;
    border-top: 1px solid var(--border);
}

.detail-share span {
    font-size: 14px;
    font-weight: 600;
    color: var(--text);
}

.detail-share a {
    width: 36px;
    height: 36px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: var(--bg);
    border: 1px solid var(--border);
    color: var(--text-light);
    font-size: 15px;
    transition: all var(--transition-fast);
}

.detail-share a:hover {
    background: var(--primary);
    border-color: var(--primary);
    color: var(--white);
}

/* Sidebar */
.detail-sidebar {
    position: sticky;
    top: 100px;
    display: flex;
    flex-direction: column;
    gap: 20px;
}

.sidebar-widget {
    background: var(--white);
    border: 1px solid var(--border);
    border-radius: var(--radius-lg);
    padding: 24px;
}

.sidebar-title {
    font-size: 15px;
    font-weight: 700;
    color: var(--primary);
    margin-bottom: 16px;
    padding-bottom: 12px;
    border-bottom: 2px solid var(--secondary);
}

.sidebar-nav li {
    margin-bottom: 2px;
}

.sidebar-nav li a {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 10px 12px;
    font-size: 13px;
    color: var(--text-light);
    border-radius: var(--radius);
    transition: all var(--transition-fast);
}

.sidebar-nav li a i {
    font-size: 9px;
    color: var(--text-muted);
}

.sidebar-nav li a:hover,
.sidebar-nav li.active a {
    background: var(--primary);
    color: var(--white);
}

.sidebar-nav li.active a i,
.sidebar-nav li a:hover i {
    color: var(--secondary);
}

/* Sidebar İletişim */
.sidebar-contact-item {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 10px 0;
    border-bottom: 1px solid var(--border);
}

.sidebar-contact-item:last-child {
    border-bottom: none;
}

.sidebar-contact-item i {
    width: 32px;
    height: 32px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--primary);
    color: var(--white);
    border-radius: 50%;
    font-size: 12px;
    flex-shrink: 0;
}

.sidebar-contact-item small {
    display: block;
    font-size: 10px;
    color: var(--text-muted);
    text-transform: uppercase;
    letter-spacing: 0.5px;
    font-weight: 600;
}

.sidebar-contact-item a {
    font-size: 13px;
    color: var(--text);
    font-weight: 600;
}

/* Sidebar CTA */
.sidebar-cta {
    background: var(--primary-dark) !important;
    border-color: transparent !important;
    text-align: center;
    color: var(--white);
}

.sidebar-cta-icon {
    font-size: 32px;
    color: var(--secondary);
    margin-bottom: 12px;
}

.sidebar-cta h4 {
    font-size: 16px;
    color: var(--white);
    margin-bottom: 6px;
}

.sidebar-cta p {
    font-size: 13px;
    color: rgba(255,255,255,0.5);
    margin-bottom: 16px;
}

/* Detay Responsive */
@media (max-width: 1024px) {
    .detail-layout {
        grid-template-columns: 1fr 260px;
        gap: 28px;
    }
}

@media (max-width: 768px) {
    .detail-layout {
        grid-template-columns: 1fr;
    }

    .detail-sidebar {
        position: static;
    }

    .detail-cover {
        max-height: 240px;
    }

    .detail-body h2 {
        font-size: 22px;
    }

    .detail-gallery-grid {
        grid-template-columns: repeat(3, 1fr);
    }

    .detail-video-grid {
        grid-template-columns: 1fr;
    }
}

/* ========================================
   QUICK NAV (Sol Alt Buton + Panel)
   ======================================== */
.quick-nav-toggle {
    position: fixed;
    bottom: 30px;
    left: 30px;
    width: 46px;
    height: 46px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--primary);
    color: var(--white);
    border-radius: 50%;
    font-size: 18px;
    box-shadow: var(--shadow-lg);
    z-index: 900;
    opacity: 0;
    visibility: hidden;
    transform: translateY(10px);
    transition: all var(--transition);
    border: 2px solid rgba(255,255,255,0.1);
    cursor: pointer;
}

.quick-nav-toggle.visible {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
}

.quick-nav-toggle.active {
    background: var(--secondary);
    border-color: var(--secondary);
}

.quick-nav-toggle:hover {
    transform: translateY(-3px);
}

.quick-nav-toggle.active:hover {
    transform: translateY(-3px);
}

/* Panel */
.quick-nav-panel {
    position: fixed;
    bottom: 88px;
    left: 30px;
    width: 260px;
    max-height: 70vh;
    background: var(--white);
    border-radius: var(--radius-xl);
    box-shadow: var(--shadow-xl);
    border: 1px solid var(--border);
    z-index: 901;
    opacity: 0;
    visibility: hidden;
    transform: translateY(16px);
    transition: all var(--transition);
    display: flex;
    flex-direction: column;
    overflow: hidden;
}

.quick-nav-panel.active {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
}

.quick-nav-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 16px 20px;
    background: var(--primary-dark);
    flex-shrink: 0;
}

.quick-nav-header h4 {
    font-size: 14px;
    color: var(--white);
    font-weight: 700;
    letter-spacing: 0.5px;
}

.quick-nav-close {
    width: 28px;
    height: 28px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: rgba(255,255,255,0.5);
    font-size: 14px;
    border-radius: 50%;
    cursor: pointer;
    transition: color var(--transition-fast);
}

.quick-nav-close:hover {
    color: var(--white);
}

.quick-nav-list {
    overflow-y: auto;
    padding: 8px 0;
    -webkit-overflow-scrolling: touch;
}

.quick-nav-group {
    padding: 10px 20px 4px;
    font-size: 10px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 1.5px;
    color: var(--text-muted);
}

.quick-nav-list li a {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 10px 20px;
    font-size: 13px;
    color: var(--text);
    transition: all var(--transition-fast);
}

.quick-nav-list li a i {
    width: 16px;
    font-size: 12px;
    color: var(--text-muted);
    text-align: center;
}

.quick-nav-list li a:hover {
    background: var(--bg);
    color: var(--primary);
}

.quick-nav-list li a:hover i {
    color: var(--secondary);
}

@media (max-width: 768px) {
    .quick-nav-toggle {
        bottom: 20px;
        left: 20px;
        width: 40px;
        height: 40px;
        font-size: 16px;
    }

    .quick-nav-panel {
        left: 16px;
        right: 16px;
        bottom: 72px;
        width: auto;
        max-height: 60vh;
    }
}

/* ========================================
   KAYSI AI ASISTAN
   ======================================== */

/* Toggle Buton */
.kaysi-toggle {
    position: fixed;
    bottom: 86px;
    right: 30px;
    width: 56px;
    height: 56px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--white);
    border-radius: 50%;
    box-shadow: 0 4px 20px rgba(0,0,0,0.15), 0 0 0 3px rgba(255,167,38,0.2);
    z-index: 899;
    cursor: pointer;
    border: 2px solid var(--secondary);
    padding: 4px;
    opacity: 0;
    visibility: hidden;
    transform: translateY(10px);
    transition: all var(--transition);
    animation: kaysiPulse 3s ease-in-out infinite;
}

.kaysi-toggle.visible {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
}

@keyframes kaysiPulse {
    0%, 100% { box-shadow: 0 4px 20px rgba(0,0,0,0.15), 0 0 0 3px rgba(255,167,38,0.2); }
    50% { box-shadow: 0 4px 20px rgba(0,0,0,0.15), 0 0 0 8px rgba(255,167,38,0.1); }
}

.kaysi-toggle svg {
    width: 100%;
    height: 100%;
}

/* Overlay */
.kaysi-overlay {
    position: fixed;
    inset: 0;
    background: rgba(17, 40, 64, 0.95);
    backdrop-filter: blur(20px);
    z-index: 3000;
    opacity: 0;
    visibility: hidden;
    transition: all 0.4s ease;
    display: flex;
    align-items: center;
    justify-content: center;
}

.kaysi-overlay.active {
    opacity: 1;
    visibility: visible;
}

.kaysi-overlay-inner {
    width: 100%;
    max-width: 560px;
    max-height: 90vh;
    display: flex;
    flex-direction: column;
    position: relative;
}

.kaysi-close {
    position: absolute;
    top: -50px;
    right: 0;
    width: 40px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: rgba(255,255,255,0.5);
    font-size: 20px;
    border-radius: 50%;
    cursor: pointer;
    transition: color var(--transition-fast);
    z-index: 10;
}

.kaysi-close:hover {
    color: var(--white);
}

/* Header - Başlangıç ekranı */
.kaysi-header {
    text-align: center;
    padding: 20px 0;
    animation: fadeInUp 0.5s ease;
}

@keyframes fadeInUp {
    from { opacity: 0; transform: translateY(20px); }
    to { opacity: 1; transform: translateY(0); }
}

/* Kaysi Maskot Animasyonları */
.kaysi-mascot {
    margin-bottom: 8px;
}

.kaysi-mascot-svg {
    animation: kaysiFloat 4s ease-in-out infinite;
    filter: drop-shadow(0 12px 24px rgba(255,152,0,0.25));
}

@keyframes kaysiFloat {
    0%, 100% { transform: translateY(0); }
    50% { transform: translateY(-8px); }
}

.kaysi-eyes {
    animation: kaysiBlink 4s ease-in-out infinite;
    transform-origin: 150px 140px;
}

@keyframes kaysiBlink {
    0%, 42%, 44%, 90%, 92%, 100% { transform: scaleY(1); }
    43%, 91% { transform: scaleY(0.05); }
}

.kaysi-leaf {
    transform-origin: 150px 28px;
    animation: kaysiLeaf 3s ease-in-out infinite;
}

@keyframes kaysiLeaf {
    0%, 100% { transform: rotate(0deg); }
    25% { transform: rotate(5deg); }
    75% { transform: rotate(-3deg); }
}

.kaysi-cheek {
    animation: kaysiCheek 3s ease-in-out infinite;
}

@keyframes kaysiCheek {
    0%, 100% { opacity: 0.4; }
    50% { opacity: 0.7; }
}

.kaysi-sparkle {
    animation: kaysiSparkle 2.5s ease-in-out infinite;
}

.kaysi-sparkle.ks2 {
    animation-delay: 0.8s;
}

@keyframes kaysiSparkle {
    0%, 100% { opacity: 0; transform: scale(0); }
    50% { opacity: 0.7; transform: scale(1); }
}

.kaysi-header h3 {
    font-size: 28px;
    font-weight: 800;
    background: linear-gradient(135deg, #FFB74D, #FF9800);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    letter-spacing: 2px;
    margin-bottom: 4px;
}

.kaysi-header p {
    color: rgba(255,255,255,0.4);
    font-size: 13px;
    letter-spacing: 2px;
    text-transform: uppercase;
    margin-bottom: 28px;
}

.kaysi-suggestions {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 8px;
}

.kaysi-suggestion {
    padding: 8px 18px;
    background: rgba(255,255,255,0.06);
    border: 1px solid rgba(255,255,255,0.1);
    color: rgba(255,255,255,0.7);
    font-size: 13px;
    border-radius: 50px;
    cursor: pointer;
    font-family: inherit;
    transition: all var(--transition-fast);
}

.kaysi-suggestion:hover {
    background: rgba(255,167,38,0.15);
    border-color: var(--secondary);
    color: var(--secondary);
}

/* Chat */
.kaysi-chat {
    display: none;
    flex-direction: column;
    flex: 1;
    max-height: 70vh;
    animation: fadeInUp 0.3s ease;
}

.kaysi-chat.active {
    display: flex;
}

.kaysi-messages {
    flex: 1;
    overflow-y: auto;
    padding: 20px 0;
    display: flex;
    flex-direction: column;
    gap: 16px;
    -webkit-overflow-scrolling: touch;
}

/* Mesajlar */
.kaysi-msg {
    display: flex;
    gap: 10px;
    max-width: 85%;
    animation: msgIn 0.3s ease;
}

@keyframes msgIn {
    from { opacity: 0; transform: translateY(10px); }
    to { opacity: 1; transform: translateY(0); }
}

.kaysi-msg-user {
    align-self: flex-end;
    flex-direction: row-reverse;
}

.kaysi-msg-text {
    padding: 12px 18px;
    border-radius: 18px;
    font-size: 14px;
    line-height: 1.6;
}

.kaysi-msg-user .kaysi-msg-text {
    background: var(--secondary);
    color: var(--white);
    border-bottom-right-radius: 4px;
}

.kaysi-msg-bot .kaysi-msg-text {
    background: rgba(255,255,255,0.08);
    color: rgba(255,255,255,0.85);
    border-bottom-left-radius: 4px;
}

.kaysi-msg-bot .kaysi-msg-text a {
    color: var(--secondary);
    text-decoration: underline;
    text-underline-offset: 2px;
}

.kaysi-avatar-sm {
    width: 28px;
    height: 28px;
    flex-shrink: 0;
    margin-top: 4px;
}

/* Typing animasyonu */
.kaysi-typing {
    display: flex;
    gap: 5px;
    padding: 16px 20px;
}

.kaysi-typing span {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: rgba(255,255,255,0.3);
    animation: typingBounce 1.4s ease-in-out infinite;
}

.kaysi-typing span:nth-child(2) { animation-delay: 0.2s; }
.kaysi-typing span:nth-child(3) { animation-delay: 0.4s; }

@keyframes typingBounce {
    0%, 60%, 100% { transform: translateY(0); opacity: 0.3; }
    30% { transform: translateY(-6px); opacity: 1; }
}

/* Input */
.kaysi-input-form {
    display: flex;
    background: rgba(255,255,255,0.08);
    border: 1px solid rgba(255,255,255,0.12);
    border-radius: 50px;
    overflow: hidden;
    margin-top: 12px;
    transition: border-color var(--transition-fast);
}

.kaysi-input-form:focus-within {
    border-color: var(--secondary);
}

#kaysiInput {
    flex: 1;
    padding: 14px 22px;
    background: transparent;
    border: none;
    outline: none;
    color: var(--white);
    font-size: 14px;
}

#kaysiInput::placeholder {
    color: rgba(255,255,255,0.3);
}

#kaysiSend {
    padding: 14px 20px;
    color: var(--secondary);
    font-size: 16px;
    cursor: pointer;
    transition: color var(--transition-fast);
}

#kaysiSend:hover {
    color: var(--white);
}

/* Kaysi Responsive */
@media (max-width: 768px) {
    .kaysi-toggle {
        bottom: 72px;
        right: 20px;
        width: 48px;
        height: 48px;
    }

    .kaysi-overlay-inner {
        max-width: 100%;
        padding: 0 20px;
        max-height: 100vh;
    }

    .kaysi-close {
        top: -44px;
    }

    .kaysi-mascot-svg {
        width: 100px;
        height: 100px;
    }

    .kaysi-header h3 {
        font-size: 24px;
    }
}

/* ========================================
   TEMA DEĞİŞTİRİCİ
   ======================================== */

/* Logo Teması */
[data-theme="logo"] {
    --primary: #2D7DD2;
    --primary-dark: #1A4F8B;
    --primary-light: #4A9AE8;
    --secondary: #A0369A;
    --secondary-light: #B94DB3;
    --secondary-dark: #7B2878;
}

/* Tema Switcher UI */
.theme-switcher {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 14px 20px;
    border-bottom: 1px solid var(--border);
}

.theme-switcher span {
    font-size: 11px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 1px;
    color: var(--text-muted);
}

.theme-options {
    display: flex;
    gap: 8px;
}

.theme-btn {
    width: 36px;
    height: 20px;
    border-radius: 10px;
    display: flex;
    overflow: hidden;
    cursor: pointer;
    border: 2px solid var(--border);
    padding: 0;
    transition: border-color var(--transition-fast);
}

.theme-btn span {
    flex: 1;
    display: block;
}

.theme-btn.active {
    border-color: var(--text);
    box-shadow: 0 0 0 2px rgba(0,0,0,0.1);
}

.theme-btn:hover {
    border-color: var(--text-light);
}

/* ===== Kurul / Kişi Kartları (dinamik modül) ===== */
.kurul-section { padding: 50px 0 70px; }
.kurul-group-title { font-family: var(--font-heading); font-size: 24px; color: var(--primary); margin: 34px 0 18px; padding-bottom: 10px; border-bottom: 2px solid var(--secondary); }
.kurul-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(210px, 1fr)); gap: 22px; }
.kurul-person { background: var(--white); border: 1px solid var(--border); border-radius: 12px; padding: 26px 18px 22px; text-align: center; transition: transform .2s ease, box-shadow .2s ease; }
.kurul-person:hover { transform: translateY(-4px); box-shadow: 0 12px 28px rgba(27,58,92,.12); }
.kurul-person img, .kurul-person .kurul-avatar { width: 110px; height: 110px; border-radius: 50%; object-fit: cover; margin: 0 auto 14px; display: flex; align-items: center; justify-content: center; background: var(--bg-alt); color: var(--text-muted); font-size: 40px; border: 3px solid var(--bg-alt); }
.kurul-person strong { display: block; font-size: 15.5px; color: var(--text); line-height: 1.35; }
.kurul-person .kurul-gorev { display: block; margin-top: 6px; font-size: 13px; font-weight: 600; color: var(--secondary-dark); text-transform: uppercase; letter-spacing: .02em; }
.kurul-person .kurul-firma { display: block; margin-top: 6px; font-size: 12.5px; color: var(--text-light); }
.kurul-featured { display: flex; justify-content: center; margin-bottom: 26px; }
.kurul-featured .kurul-person { max-width: 300px; padding: 32px 26px; border-top: 4px solid var(--secondary); }
.kurul-featured .kurul-person img, .kurul-featured .kurul-person .kurul-avatar { width: 140px; height: 140px; }
@media (max-width: 640px) { .kurul-grid { grid-template-columns: repeat(auto-fill, minmax(150px, 1fr)); gap: 14px; } }

/* ===== Dergi / Yayın Arşivi ===== */
.dergi-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(190px, 1fr)); gap: 26px; }
.dergi-kart { display: block; text-align: center; }
.dergi-kapak { position: relative; border-radius: 10px; overflow: hidden; aspect-ratio: 1 / 1.41; box-shadow: 0 6px 18px rgba(27,58,92,.14); margin-bottom: 12px; background: var(--bg-alt); }
.dergi-kapak img { width: 100%; height: 100%; object-fit: cover; transition: transform .3s ease; }
.dergi-kart:hover .dergi-kapak img { transform: scale(1.04); }
.dergi-oku { position: absolute; inset: auto 0 0 0; background: linear-gradient(0deg, rgba(17,40,64,.92), rgba(17,40,64,0)); color: #fff; padding: 26px 0 12px; font-size: 13.5px; font-weight: 600; opacity: 0; transition: opacity .25s; }
.dergi-kart:hover .dergi-oku { opacity: 1; }
.dergi-kart strong { display: block; font-size: 14.5px; color: var(--text); line-height: 1.35; }
.dergi-kart span { display: block; margin-top: 4px; font-size: 12.5px; color: var(--text-light); }

/* ===== Lightbox v2 geçişleri + detay başlık düzeni ===== */
.lightbox { transition: opacity .22s ease, visibility .22s ease; }
.lightbox .lightbox-body img { opacity: 0; transform: scale(.965); transition: opacity .3s ease, transform .3s ease; user-select: none; }
.lightbox .lightbox-body img.goster { opacity: 1; transform: none; }
.lightbox .lightbox-body.yukleniyor::after { content: ""; position: absolute; inset: 0; margin: auto; width: 42px; height: 42px; border: 3px solid rgba(255,255,255,.25); border-top-color: #fff; border-radius: 50%; animation: lbDon .8s linear infinite; }
@keyframes lbDon { to { transform: rotate(360deg); } }
.lightbox .lightbox-backdrop, .lightbox .lightbox-content { cursor: zoom-out; }
.lightbox .lightbox-body img, .lightbox .lightbox-arrow, .lightbox .lightbox-close { cursor: default; }
.lightbox .lightbox-arrow, .lightbox .lightbox-close { cursor: pointer; }

.page-banner-kucuk { padding-top: 44px; padding-bottom: 44px; }
.page-banner h1 { font-size: clamp(26px, 3.4vw, 40px); }
.detay-baslik { margin-bottom: 22px; padding-bottom: 18px; border-bottom: 1px solid var(--border); }
.detay-baslik h1 { font-family: var(--font-heading); font-size: clamp(23px, 2.6vw, 32px); line-height: 1.3; color: var(--primary); margin-bottom: 10px; }
.detay-tarih { display: inline-flex; align-items: center; gap: 6px; font-size: 13.5px; color: var(--text-light); }
.detay-tarih i { color: var(--secondary-dark); }

/* ===== KVKK Çerez Bildirimi ===== */
.cerez-cubuk { position: fixed; left: 16px; right: 16px; bottom: 16px; z-index: 9000; display: flex; justify-content: center; opacity: 0; transform: translateY(16px); transition: opacity .3s ease, transform .3s ease; pointer-events: none; }
.cerez-cubuk.goster { opacity: 1; transform: none; pointer-events: auto; }
.cerez-ic { display: flex; align-items: center; gap: 22px; flex-wrap: wrap; max-width: 880px; width: 100%; background: var(--primary-dark, #112840); color: #DCE6F2; border-radius: 14px; padding: 18px 22px; box-shadow: 0 22px 55px rgba(10, 22, 38, .45); }
.cerez-metin { flex: 1; min-width: 260px; }
.cerez-metin strong { display: flex; align-items: center; gap: 8px; color: #fff; font-size: 14.5px; margin-bottom: 5px; }
.cerez-metin strong i { color: var(--secondary, #C8A23C); }
.cerez-metin p { font-size: 13px; line-height: 1.55; margin: 0; color: #B9C7DA; }
.cerez-metin a { color: var(--secondary-light, #E3C874); text-decoration: underline; }
.cerez-butonlar { display: flex; gap: 10px; }
.cerez-btn { border: none; border-radius: 9px; padding: 11px 20px; font-size: 13.5px; font-weight: 600; cursor: pointer; font-family: inherit; transition: .18s ease; }
.cerez-kabul { background: var(--secondary, #C8A23C); color: #112840; }
.cerez-kabul:hover { background: #fff; }
.cerez-ret { background: transparent; color: #9FB2CC; border: 1px solid rgba(255,255,255,.25); }
.cerez-ret:hover { color: #fff; border-color: #fff; }
@media (max-width: 620px) { .cerez-butonlar { width: 100%; } .cerez-btn { flex: 1; } }

/* ===== RTL hazırlığı (Arapça vb. diller aktifleştirildiğinde) ===== */
[dir="rtl"] body { direction: rtl; }
[dir="rtl"] .mega-links a, [dir="rtl"] .footer-links a, [dir="rtl"] .sidebar-nav a { text-align: right; }
[dir="rtl"] .duyuru-page-arrow i, [dir="rtl"] .listing-card-link i, [dir="rtl"] .section-more i { transform: scaleX(-1); }
[dir="rtl"] .detail-layout { direction: rtl; }

/* === BOLUM A: haber, duyuru, arama, sayfalama stilleri === */

/* Ortak sayfalama */
.sayfalama { display: flex; align-items: center; justify-content: center; flex-wrap: wrap; gap: 7px; margin-top: 36px; }
.sayfalama-link { display: inline-flex; align-items: center; justify-content: center; min-width: 40px; height: 40px; padding: 0 9px; background: var(--white); border: 1px solid var(--border); border-radius: var(--radius); font-size: 14px; font-weight: 600; color: var(--text-light); transition: color var(--transition-fast), border-color var(--transition-fast), background var(--transition-fast); }
a.sayfalama-link:hover { border-color: var(--primary); color: var(--primary); background: var(--bg); }
.sayfalama-link.aktif { background: var(--primary); border-color: var(--primary); color: var(--white); cursor: default; }
.sayfalama-ok { font-size: 12px; }
.sayfalama-ok.pasif { opacity: .4; }
.sayfalama-bosluk { min-width: 26px; text-align: center; color: var(--text-muted); font-weight: 700; }
[dir="rtl"] .sayfalama-ok i { transform: scaleX(-1); }
@media (max-width: 480px) {
    .sayfalama { gap: 5px; margin-top: 28px; }
    .sayfalama-link { min-width: 34px; height: 34px; font-size: 13px; }
}

/* Duyuru tur sekmeleri */
.duyuru-sekmeler { display: flex; flex-wrap: wrap; justify-content: center; gap: 10px; margin-bottom: 28px; }
.duyuru-sekme { display: inline-flex; align-items: center; padding: 10px 20px; background: var(--white); border: 1.5px solid var(--border); border-radius: 999px; font-size: 14px; font-weight: 600; color: var(--text-light); transition: color var(--transition-fast), border-color var(--transition-fast), background var(--transition-fast); }
.duyuru-sekme:hover { border-color: var(--primary); color: var(--primary); }
.duyuru-sekme.aktif { background: var(--primary); border-color: var(--primary); color: var(--white); }
@media (max-width: 600px) {
    .duyuru-sekme { padding: 8px 15px; font-size: 13px; }
}

/* Haber detay ekli dosyalar */
.detail-ekler { margin-bottom: 40px; }
.detail-ekler > h3 { font-size: 20px; font-weight: 700; color: var(--primary); margin-bottom: 20px; display: flex; align-items: center; gap: 10px; }
.detail-ekler > h3 i { color: var(--secondary); }
.detail-ekler-list { display: flex; flex-direction: column; gap: 10px; }
.ek-dosya { display: flex; align-items: center; gap: 14px; padding: 14px 18px; background: var(--white); border: 1px solid var(--border); border-radius: var(--radius-lg); transition: border-color var(--transition-fast), background var(--transition-fast); }
.ek-dosya:hover { border-color: var(--secondary); background: var(--bg); }
.ek-dosya-rozet { flex-shrink: 0; min-width: 46px; text-align: center; padding: 6px 9px; background: var(--primary); color: var(--white); font-size: 11px; font-weight: 800; letter-spacing: .5px; border-radius: 6px; }
.ek-dosya-ad { flex: 1; font-size: 14.5px; font-weight: 600; color: var(--text); line-height: 1.4; word-break: break-word; }
.ek-dosya-boyut { flex-shrink: 0; font-size: 12.5px; color: var(--text-muted); white-space: nowrap; }
.ek-dosya-indir { flex-shrink: 0; color: var(--secondary-dark); font-size: 15px; }
.ek-dosya:hover .ek-dosya-indir { color: var(--primary); }
[dir="rtl"] .ek-dosya { direction: rtl; }
@media (max-width: 600px) {
    .ek-dosya { padding: 12px 14px; gap: 10px; }
    .ek-dosya-ad { font-size: 13.5px; }
    .ek-dosya-boyut { display: none; }
}

/* Arama sonuc sayisi */
.arama-sonuc-sayi { font-size: 14px; font-weight: 600; color: var(--text-muted); margin-left: 8px; font-family: var(--font-main); }

/* === BOLUM B: ceviri ve dil stilleri === */

/* === BOLUM C: kurul uye, baskan, paydas, iletisim stilleri === */

/* === BOLUM H: sohbet robotu (kaysi) stilleri === */

/* Kose dugmesi: maskot + bot adi (pill) */
.kaysi-w-toggle {
    position: fixed;
    bottom: 86px;
    right: 30px;
    z-index: 899;
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 7px 20px 7px 8px;
    background: linear-gradient(135deg, var(--primary) 0%, var(--primary-dark) 100%);
    border: 1px solid rgba(200, 162, 60, .55);
    border-radius: 999px;
    box-shadow: 0 10px 26px rgba(17, 40, 64, .28);
    cursor: pointer;
    animation: kaysiWNabiz 3.2s ease-in-out infinite;
    transition: transform var(--transition-fast), opacity .22s ease, visibility .22s ease;
}
.kaysi-w-toggle:hover { transform: translateY(-2px); }
.kaysi-w-toggle:focus-visible,
.kaysi-w-kapat:focus-visible,
.kaysi-w-oneri:focus-visible,
.kaysi-w-gonder:focus-visible,
.kaysi-w-tekrar:focus-visible { outline: 2px solid var(--secondary); outline-offset: 2px; }
@keyframes kaysiWNabiz {
    0%, 100% { box-shadow: 0 10px 26px rgba(17, 40, 64, .28), 0 0 0 0 rgba(200, 162, 60, .38); }
    50% { box-shadow: 0 10px 26px rgba(17, 40, 64, .28), 0 0 0 9px rgba(200, 162, 60, 0); }
}
.kaysi-w-toggle-ikon {
    width: 44px;
    height: 44px;
    flex-shrink: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--white);
    border-radius: 50%;
    box-shadow: inset 0 0 0 2px rgba(200, 162, 60, .35);
}
/* İkon ailesi FontAwesome: elle çizilmiş SVG maskotun yerini fa-robot aldı */
.kaysi-w-toggle-ikon i { display: block; font-size: 22px; color: var(--secondary-dark); }
.kaysi-w-toggle-ad {
    color: var(--white);
    font-size: 14.5px;
    font-weight: 700;
    letter-spacing: .01em;
    max-width: 150px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
.kaysi-w.acik .kaysi-w-toggle { opacity: 0; visibility: hidden; transform: translateY(8px); pointer-events: none; }

/* Mobil karartma fonu */
.kaysi-w-fon {
    display: none;
    position: fixed;
    inset: 0;
    z-index: 2990;
    background: rgba(17, 40, 64, .45);
    opacity: 0;
    visibility: hidden;
    transition: opacity .25s ease, visibility .25s ease;
}
.kaysi-w.acik .kaysi-w-fon { opacity: 1; visibility: visible; }

/* Pencere */
.kaysi-w-panel {
    position: fixed;
    right: 30px;
    bottom: 30px;
    z-index: 3000;
    width: 380px;
    max-width: calc(100vw - 40px);
    height: 560px;
    max-height: calc(100vh - 80px);
    max-height: calc(100dvh - 80px);
    display: flex;
    flex-direction: column;
    background: var(--white);
    border: 1px solid var(--border);
    border-radius: var(--radius-xl);
    box-shadow: 0 24px 64px rgba(17, 40, 64, .30);
    overflow: hidden;
    opacity: 0;
    visibility: hidden;
    transform: translateY(18px) scale(.97);
    transform-origin: bottom right;
    transition: opacity .28s ease, transform .28s ease, visibility .28s ease;
}
.kaysi-w.acik .kaysi-w-panel { opacity: 1; visibility: visible; transform: none; }

/* Baslik cubugu */
.kaysi-w-bar {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 13px 16px;
    background: linear-gradient(135deg, var(--primary) 0%, var(--primary-dark) 100%);
    border-bottom: 2px solid var(--secondary);
    flex-shrink: 0;
}
.kaysi-w-bar-avatar {
    width: 42px;
    height: 42px;
    flex-shrink: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--white);
    border-radius: 50%;
    box-shadow: inset 0 0 0 2px rgba(200, 162, 60, .4);
}
.kaysi-w-bar-avatar i { display: block; font-size: 20px; color: var(--secondary-dark); }
.kaysi-w-bar-bilgi { flex: 1; min-width: 0; }
.kaysi-w-bar-bilgi strong {
    display: block;
    color: var(--white);
    font-size: 15px;
    font-weight: 700;
    letter-spacing: .02em;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
.kaysi-w-durum {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    margin-top: 2px;
    font-size: 11.5px;
    color: rgba(255, 255, 255, .65);
}
.kaysi-w-nokta {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: #2EBD59;
    animation: kaysiWNokta 2.2s ease-out infinite;
}
@keyframes kaysiWNokta {
    0% { box-shadow: 0 0 0 0 rgba(46, 189, 89, .45); }
    70%, 100% { box-shadow: 0 0 0 6px rgba(46, 189, 89, 0); }
}
.kaysi-w-kapat {
    width: 34px;
    height: 34px;
    flex-shrink: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    color: rgba(255, 255, 255, .72);
    background: rgba(255, 255, 255, .08);
    border-radius: 50%;
    font-size: 15px;
    transition: color var(--transition-fast), background var(--transition-fast);
}
.kaysi-w-kapat:hover { color: var(--white); background: rgba(255, 255, 255, .18); }

/* Mesaj alani */
.kaysi-w-mesajlar {
    flex: 1;
    overflow-y: auto;
    overscroll-behavior: contain;
    -webkit-overflow-scrolling: touch;
    padding: 16px 14px 10px;
    display: flex;
    flex-direction: column;
    gap: 12px;
    background: var(--bg);
}
.kaysi-w-mesajlar::-webkit-scrollbar { width: 6px; }
.kaysi-w-mesajlar::-webkit-scrollbar-thumb { background: var(--border); border-radius: 8px; }
.kaysi-w-msg {
    display: flex;
    align-items: flex-end;
    gap: 8px;
    max-width: 86%;
    animation: kaysiWBalonGir .25s ease;
}
@keyframes kaysiWBalonGir {
    from { opacity: 0; transform: translateY(8px); }
    to { opacity: 1; transform: none; }
}
.kaysi-w-msg-bot { align-self: flex-start; }
.kaysi-w-msg-kullanici { align-self: flex-end; }
.kaysi-w-avatar {
    width: 26px;
    height: 26px;
    flex-shrink: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--white);
    border: 1px solid var(--border);
    border-radius: 50%;
    box-shadow: var(--shadow-sm);
}
.kaysi-w-avatar i { display: block; font-size: 13px; color: var(--secondary-dark); }
.kaysi-w-balon {
    padding: 10px 14px;
    border-radius: 16px;
    font-size: 14px;
    line-height: 1.55;
    word-break: break-word;
}
.kaysi-w-msg-bot .kaysi-w-balon {
    background: var(--white);
    border: 1px solid var(--border);
    color: var(--text);
    border-bottom-left-radius: 5px;
    box-shadow: var(--shadow-sm);
}
.kaysi-w-msg-kullanici .kaysi-w-balon {
    background: linear-gradient(135deg, var(--primary) 0%, var(--primary-light) 100%);
    color: var(--white);
    border-bottom-right-radius: 5px;
    box-shadow: 0 4px 12px rgba(27, 58, 92, .22);
}
.kaysi-w-msg-bot .kaysi-w-balon a {
    color: var(--primary);
    font-weight: 600;
    text-decoration: underline;
    text-underline-offset: 2px;
    word-break: break-all;
}
.kaysi-w-msg-bot .kaysi-w-balon a:hover { color: var(--secondary-dark); }

/* Hata balonu + tekrar dene */
.kaysi-w-msg-hata .kaysi-w-balon { background: #FEF2F2; border-color: #FECACA; color: #991B1B; }
.kaysi-w-tekrar {
    margin-top: 8px;
    padding: 6px 14px;
    background: var(--white);
    color: #991B1B;
    border: 1px solid #FCA5A5;
    border-radius: 999px;
    font-size: 12.5px;
    font-weight: 600;
    transition: background var(--transition-fast), color var(--transition-fast), border-color var(--transition-fast);
}
.kaysi-w-tekrar:hover { background: #991B1B; border-color: #991B1B; color: var(--white); }

/* Yaziyor animasyonu */
.kaysi-w-yaziyor { position: relative; display: flex; align-items: center; gap: 5px; padding: 13px 16px; }
.kaysi-w-yaziyor span {
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: var(--text-muted);
    animation: kaysiWZipla 1.3s ease-in-out infinite;
}
.kaysi-w-yaziyor span:nth-child(2) { animation-delay: .18s; }
.kaysi-w-yaziyor span:nth-child(3) { animation-delay: .36s; }
@keyframes kaysiWZipla {
    0%, 60%, 100% { transform: none; opacity: .35; }
    30% { transform: translateY(-5px); opacity: 1; }
}
.kaysi-w-gizli {
    position: absolute;
    width: 1px;
    height: 1px;
    margin: -1px;
    padding: 0;
    overflow: hidden;
    clip: rect(0 0 0 0);
    clip-path: inset(50%);
    border: 0;
    white-space: nowrap;
}

/* Oneri cipleri */
.kaysi-w-oneriler {
    display: flex;
    flex-wrap: wrap;
    gap: 7px;
    padding: 4px 14px 12px;
    background: var(--bg);
    flex-shrink: 0;
}
.kaysi-w-oneriler[hidden] { display: none; }
.kaysi-w-oneri {
    padding: 7px 14px;
    background: var(--white);
    border: 1px solid var(--border);
    border-radius: 999px;
    color: var(--primary);
    font-size: 12.5px;
    font-weight: 600;
    transition: border-color var(--transition-fast), background var(--transition-fast), color var(--transition-fast);
}
.kaysi-w-oneri:hover { border-color: var(--secondary); background: rgba(200, 162, 60, .10); color: var(--secondary-dark); }

/* Giris formu */
.kaysi-w-form {
    position: relative;
    display: flex;
    align-items: flex-end;
    gap: 8px;
    padding: 10px 12px 8px;
    background: var(--white);
    border-top: 1px solid var(--border);
    flex-shrink: 0;
}
#kaysiWGiris {
    flex: 1;
    min-height: 40px;
    max-height: 110px;
    resize: none;
    border: 1px solid var(--border);
    background: var(--bg);
    border-radius: 20px;
    padding: 10px 16px;
    font-family: inherit;
    font-size: 14px;
    line-height: 1.45;
    color: var(--text);
    outline: none;
    transition: border-color var(--transition-fast), background var(--transition-fast);
}
#kaysiWGiris:focus { border-color: var(--secondary); background: var(--white); }
#kaysiWGiris::placeholder { color: var(--text-muted); }
.kaysi-w-form.bekliyor #kaysiWGiris { opacity: .7; }
.kaysi-w-gonder {
    width: 40px;
    height: 40px;
    flex-shrink: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    background: linear-gradient(135deg, var(--primary) 0%, var(--primary-dark) 100%);
    color: var(--white);
    border-radius: 50%;
    font-size: 15px;
    transition: background var(--transition-fast), transform var(--transition-fast), opacity .2s ease;
}
.kaysi-w-gonder:hover { background: linear-gradient(135deg, var(--secondary-dark) 0%, var(--secondary) 100%); transform: scale(1.06); }
.kaysi-w-gonder:disabled { opacity: .55; cursor: default; transform: none; }

/* Bal kupu alani: gorunmez, odaklanilamaz */
.kaysi-w-hp { position: absolute; left: -9999px; width: 1px; height: 1px; opacity: 0; pointer-events: none; }

/* KVKK mini notu */
.kaysi-w-not {
    margin: 0;
    padding: 6px 14px calc(9px + env(safe-area-inset-bottom, 0px));
    background: var(--white);
    color: var(--text-muted);
    font-size: 10.8px;
    line-height: 1.4;
    text-align: center;
    flex-shrink: 0;
}

/* Mobil: alttan tam genislik panel */
@media (max-width: 768px) {
    .kaysi-w-toggle { bottom: 72px; right: 20px; padding: 6px 16px 6px 7px; }
    .kaysi-w-toggle-ikon { width: 40px; height: 40px; }
    .kaysi-w-toggle-ikon i { font-size: 19px; }
    .kaysi-w-toggle-ad { font-size: 13.5px; max-width: 120px; }
    .kaysi-w-fon { display: block; }
    .kaysi-w-panel {
        right: 0;
        left: 0;
        bottom: 0;
        width: 100%;
        max-width: 100%;
        height: 86vh;
        height: 86dvh;
        max-height: none;
        border: none;
        border-radius: 18px 18px 0 0;
        transform: translateY(100%);
        transform-origin: bottom center;
    }
    .kaysi-w.acik .kaysi-w-panel { transform: none; }
}

/* RTL duzeni: dugme ve pencere sola, balon koseleri aynalanir */
[dir="rtl"] .kaysi-w-toggle { right: auto; left: 30px; padding: 7px 8px 7px 20px; }
[dir="rtl"] .kaysi-w-panel { right: auto; left: 30px; transform-origin: bottom left; }
[dir="rtl"] .kaysi-w-msg-bot .kaysi-w-balon { border-bottom-left-radius: 16px; border-bottom-right-radius: 5px; }
[dir="rtl"] .kaysi-w-msg-kullanici .kaysi-w-balon { border-bottom-right-radius: 16px; border-bottom-left-radius: 5px; }
@media (max-width: 768px) {
    [dir="rtl"] .kaysi-w-toggle { left: 20px; }
    [dir="rtl"] .kaysi-w-panel { left: 0; right: 0; }
}

/* Hareket azaltma tercihi */
@media (prefers-reduced-motion: reduce) {
    .kaysi-w-toggle, .kaysi-w-nokta, .kaysi-w-msg { animation: none; }
    .kaysi-w-toggle, .kaysi-w-panel, .kaysi-w-fon, .kaysi-w-gonder { transition-duration: .01ms; }
    .kaysi-w-yaziyor span { animation: none; opacity: .5; }
}

/* === BOLUM I: kariyer stilleri === */

/* Calisma sekli suzgeci (hap dugmeler) */
.kariyer-filtre { display: flex; flex-wrap: wrap; justify-content: center; gap: 10px; margin-bottom: 24px; }
.kariyer-pill { display: inline-flex; align-items: center; padding: 10px 20px; background: var(--white); border: 1.5px solid var(--border); border-radius: 999px; font-size: 14px; font-weight: 600; color: var(--text-light); transition: color var(--transition-fast), border-color var(--transition-fast), background var(--transition-fast); }
.kariyer-pill:hover { border-color: var(--primary); color: var(--primary); }
.kariyer-pill.aktif { background: var(--primary); border-color: var(--primary); color: var(--white); }

.kariyer-sonuc { text-align: center; font-size: 13.5px; font-weight: 600; color: var(--text-muted); margin-bottom: 24px; }

/* Ilan kartlari */
.kariyer-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(310px, 1fr)); gap: 20px; }
.kariyer-kart { display: flex; flex-direction: column; gap: 10px; background: var(--white); border: 1px solid var(--border); border-radius: var(--radius-lg); padding: 22px 24px; transition: transform var(--transition-fast), border-color var(--transition-fast), box-shadow var(--transition-fast); }
.kariyer-kart:hover { transform: translateY(-3px); border-color: var(--secondary); box-shadow: var(--shadow-lg); }
.kariyer-kart-ust { display: flex; align-items: center; justify-content: space-between; gap: 8px 12px; flex-wrap: wrap; }
.kariyer-rozet { display: inline-flex; align-items: center; gap: 6px; background: var(--bg-alt); color: var(--primary); font-size: 12px; font-weight: 700; padding: 5px 12px; border-radius: 999px; white-space: nowrap; }
.kariyer-rozet i { color: var(--secondary-dark); font-size: 11px; }
.kariyer-sehir { display: inline-flex; align-items: center; gap: 6px; font-size: 12.5px; color: var(--text-light); }
.kariyer-sehir i { color: var(--secondary-dark); font-size: 11px; }
.kariyer-kart h3 { font-size: 17.5px; font-weight: 700; color: var(--text); line-height: 1.4; transition: color var(--transition-fast); }
.kariyer-kart:hover h3 { color: var(--primary); }
.kariyer-firma { display: inline-flex; align-items: center; gap: 7px; font-size: 13.5px; font-weight: 600; color: var(--text-light); }
.kariyer-firma i { color: var(--secondary-dark); font-size: 12px; }
.kariyer-kart-alt { display: flex; align-items: center; gap: 8px 14px; flex-wrap: wrap; margin-top: auto; padding-top: 14px; border-top: 1px solid var(--bg-alt); font-size: 12.5px; color: var(--text-muted); }
.kariyer-tarih, .kariyer-son { display: inline-flex; align-items: center; gap: 5px; }
.kariyer-son.yakin { color: var(--warning); font-weight: 700; }
.kariyer-ok { margin-left: auto; display: inline-flex; align-items: center; gap: 6px; color: var(--secondary-dark); font-weight: 700; }
.kariyer-kart:hover .kariyer-ok { color: var(--primary); }

/* Bos durum */
.kariyer-bos { text-align: center; padding: 70px 24px; background: var(--white); border: 1px dashed var(--border); border-radius: var(--radius-lg); }
.kariyer-bos i { font-size: 42px; color: var(--secondary); margin-bottom: 16px; display: block; opacity: .85; }
.kariyer-bos h3 { font-family: var(--font-heading); font-size: 23px; color: var(--primary); margin-bottom: 8px; }
.kariyer-bos p { font-size: 14.5px; color: var(--text-light); max-width: 460px; margin: 0 auto; }

/* Ilan detayi */
.kariyer-banner-firma { display: inline-flex; align-items: center; gap: 8px; }
.kariyer-detay-izgara { display: grid; grid-template-columns: minmax(0, 1fr) 330px; gap: 40px; align-items: start; }
.kariyer-bolum-baslik { display: flex; align-items: center; gap: 10px; font-family: var(--font-heading); font-size: 22px; color: var(--primary); margin: 36px 0 18px; padding-bottom: 10px; border-bottom: 2px solid var(--secondary); }
.kariyer-icerik > .kariyer-bolum-baslik:first-child { margin-top: 0; }
.kariyer-bolum-baslik i { color: var(--secondary-dark); font-size: 17px; }
.kariyer-nitelikler { list-style: none; display: flex; flex-direction: column; gap: 10px; margin: 0; padding: 0; }
.kariyer-nitelikler li { display: flex; align-items: flex-start; gap: 10px; background: var(--bg); border: 1px solid var(--border); border-radius: var(--radius); padding: 12px 16px; font-size: 14.5px; color: var(--text); line-height: 1.55; }
.kariyer-nitelikler li i { color: var(--success); margin-top: 3px; flex-shrink: 0; }

/* Yan bilgi karti */
.kariyer-yan { position: sticky; top: 96px; display: flex; flex-direction: column; gap: 14px; }
.kariyer-yan-kart { background: var(--white); border: 1px solid var(--border); border-radius: var(--radius-lg); padding: 22px 24px; box-shadow: var(--shadow-sm); }
.kariyer-yan-kart h3 { font-size: 15.5px; font-weight: 700; color: var(--primary); margin-bottom: 10px; padding-bottom: 10px; border-bottom: 1px solid var(--bg-alt); }
.kariyer-yan-satir { display: flex; align-items: flex-start; gap: 12px; padding: 9px 0; }
.kariyer-yan-satir > i { width: 34px; height: 34px; flex-shrink: 0; display: flex; align-items: center; justify-content: center; border-radius: 9px; background: var(--bg-alt); color: var(--secondary-dark); font-size: 14px; }
.kariyer-yan-satir small { display: block; font-size: 11px; font-weight: 700; letter-spacing: .05em; text-transform: uppercase; color: var(--text-muted); margin-bottom: 2px; }
.kariyer-yan-satir span { font-size: 14px; font-weight: 600; color: var(--text); line-height: 1.45; word-break: break-word; }
.kariyer-yan-buton { width: 100%; margin-top: 14px; }
.kariyer-yan-kapali { display: flex; align-items: center; justify-content: center; gap: 8px; margin-top: 14px; padding: 12px; background: var(--bg-alt); border-radius: var(--radius); font-size: 13.5px; font-weight: 600; color: var(--text-light); }
.kariyer-geri { display: inline-flex; align-items: center; gap: 8px; font-size: 13.5px; font-weight: 600; color: var(--text-light); transition: color var(--transition-fast); }
.kariyer-geri:hover { color: var(--primary); }

/* Basvuru formu */
.kariyer-basvuru { margin-top: 8px; }
.kariyer-form { background: var(--white); border: 1px solid var(--border); border-radius: var(--radius-lg); padding: 26px 28px 22px; box-shadow: var(--shadow-sm); }
.kariyer-form .form-row { display: grid; grid-template-columns: 1fr 1fr; gap: 0 16px; }
.kariyer-uyari { display: flex; align-items: flex-start; gap: 10px; border-radius: var(--radius); padding: 14px 18px; font-size: 14px; line-height: 1.55; margin-bottom: 18px; }
.kariyer-uyari i { margin-top: 2px; }
.kariyer-uyari.basari { background: #E5F5EB; color: var(--success); }
.kariyer-uyari.hata { background: #FDEAEA; color: var(--danger); }
.kariyer-uyari.bilgi { background: #EAF4FB; color: var(--info); }
.kariyer-kapandi { display: flex; align-items: flex-start; gap: 14px; background: var(--bg); border: 1px dashed var(--border); border-radius: var(--radius-lg); padding: 22px 24px; }
.kariyer-kapandi > i { font-size: 22px; color: var(--secondary-dark); margin-top: 2px; }
.kariyer-kapandi strong { display: block; font-size: 15.5px; color: var(--primary); margin-bottom: 4px; }
.kariyer-kapandi p { font-size: 14px; color: var(--text-light); margin: 0; }
.kariyer-kapandi a { color: var(--primary); font-weight: 600; text-decoration: underline; }

/* CV dosya alani */
.kariyer-cv-alan { position: relative; border: 1.5px dashed var(--border); border-radius: var(--radius); background: var(--bg); padding: 11px 16px; cursor: pointer; transition: border-color var(--transition-fast), background var(--transition-fast); }
.kariyer-cv-alan:hover { border-color: var(--primary); background: var(--white); }
.kariyer-cv-alan.dolu { border-style: solid; border-color: var(--success); background: #F3FBF6; }
.kariyer-cv-alan.hatali { border-color: var(--danger); }
.kariyer-cv-alan input[type="file"] { position: absolute; inset: 0; width: 100%; height: 100%; opacity: 0; cursor: pointer; }
.kariyer-cv-metin { display: flex; align-items: center; gap: 8px; font-size: 13.5px; color: var(--text-light); overflow: hidden; white-space: nowrap; text-overflow: ellipsis; }
.kariyer-cv-metin i { color: var(--secondary-dark); flex-shrink: 0; }
.kariyer-cv-alan.dolu .kariyer-cv-metin { color: var(--success); font-weight: 600; }
.kariyer-cv-hata { display: block; margin-top: 6px; font-size: 12px; color: var(--danger); }
.kariyer-gonder:disabled { opacity: .6; cursor: wait; }

/* RTL uyumu */
[dir="rtl"] .kariyer-ok { margin-left: 0; margin-right: auto; }
[dir="rtl"] .kariyer-ok i, [dir="rtl"] .kariyer-geri i { transform: scaleX(-1); }
[dir="rtl"] .kariyer-nitelikler li, [dir="rtl"] .kariyer-yan-satir, [dir="rtl"] .kariyer-kapandi { direction: rtl; }

@media (max-width: 980px) {
    .kariyer-detay-izgara { grid-template-columns: 1fr; gap: 28px; }
    .kariyer-yan { position: static; order: -1; }
}
@media (max-width: 640px) {
    .kariyer-grid { grid-template-columns: 1fr; }
    .kariyer-pill { padding: 8px 15px; font-size: 13px; }
    .kariyer-form { padding: 20px 18px 16px; }
    .kariyer-form .form-row { grid-template-columns: 1fr; gap: 0; }
    .kariyer-bolum-baslik { font-size: 19px; }
}

/* === BOLUM J: randevu stilleri === */

.rnd-section { padding: 56px 0 84px; background: var(--bg); }
.rnd-gizli { display: none !important; }
.rnd-uyari { display: flex; align-items: center; gap: 10px; background: #FDECEC; color: var(--danger); border: 1px solid rgba(220, 38, 38, .18); border-radius: var(--radius-lg); padding: 14px 18px; font-size: 14.5px; margin-bottom: 24px; }
.rnd-uyari i { flex-shrink: 0; }

/* Adim gostergesi */
.rnd-adimlar { list-style: none; display: flex; gap: 10px; margin: 0 0 26px; padding: 0; flex-wrap: wrap; }
.rnd-adim { display: flex; align-items: center; gap: 10px; padding: 9px 18px 9px 10px; background: var(--white); border: 1.5px solid var(--border); border-radius: 999px; color: var(--text-muted); font-size: 14px; font-weight: 600; transition: color var(--transition-fast), border-color var(--transition-fast); }
.rnd-adim-no { display: inline-flex; align-items: center; justify-content: center; width: 27px; height: 27px; border-radius: 50%; background: var(--bg-alt); color: var(--text-muted); font-size: 13px; font-weight: 700; flex-shrink: 0; transition: background var(--transition-fast), color var(--transition-fast); }
.rnd-adim.aktif { border-color: var(--primary); color: var(--primary); }
.rnd-adim.aktif .rnd-adim-no { background: var(--primary); color: var(--white); }
.rnd-adim.tamam { border-color: var(--success); color: var(--success); }
.rnd-adim.tamam .rnd-adim-no { background: var(--success); color: var(--white); }

/* Adim kutulari */
.rnd-kutu { background: var(--white); border: 1px solid var(--border); border-radius: var(--radius-lg); padding: 26px 28px; margin-bottom: 20px; box-shadow: var(--shadow-sm); }
.rnd-kutu-baslik { display: flex; align-items: center; gap: 11px; flex-wrap: wrap; font-size: 17.5px; font-weight: 700; color: var(--primary); }
.rnd-kutu-baslik i { color: var(--secondary-dark); font-size: 16px; }
.rnd-secim { margin-left: auto; font-size: 12.5px; font-weight: 600; color: var(--secondary-dark); background: #F6EFDA; border-radius: 999px; padding: 5px 13px; }
.rnd-secim:empty { display: none; }

/* Adim 1: birim kartlari */
.rnd-birimler { display: grid; grid-template-columns: repeat(auto-fill, minmax(235px, 1fr)); gap: 12px; margin-top: 20px; }
.rnd-birim { display: flex; align-items: center; gap: 12px; padding: 15px 16px; background: var(--white); border: 1.5px solid var(--border); border-radius: var(--radius-lg); font-family: inherit; font-size: 14.5px; font-weight: 600; color: var(--text); cursor: pointer; text-align: left; transition: border-color var(--transition-fast), background var(--transition-fast), color var(--transition-fast); }
.rnd-birim i { color: var(--primary-light); font-size: 17px; flex-shrink: 0; transition: color var(--transition-fast); }
.rnd-birim:hover { border-color: var(--primary); }
.rnd-birim.secili { border-color: var(--primary); background: var(--primary); color: var(--white); }
.rnd-birim.secili i { color: var(--secondary-light); }

/* Adim 2: 14 gunluk ozel tarih seridi */
.rnd-gunler { display: flex; gap: 10px; overflow-x: auto; padding: 20px 2px 10px; scrollbar-width: thin; }
.rnd-gun { flex: 0 0 88px; display: flex; flex-direction: column; align-items: center; gap: 2px; padding: 12px 6px 11px; border: 1.5px solid var(--border); border-radius: var(--radius-lg); background: var(--white); cursor: pointer; font-family: inherit; transition: border-color var(--transition-fast), background var(--transition-fast); }
.rnd-gun-ad { font-size: 11px; text-transform: uppercase; font-weight: 700; color: var(--text-muted); letter-spacing: .05em; }
.rnd-gun-no { font-size: 22px; font-weight: 700; color: var(--text); line-height: 1.25; }
.rnd-gun-ay { font-size: 11px; color: var(--text-light); }
.rnd-gun-rozet { margin-top: 5px; font-size: 9.5px; font-weight: 700; text-transform: uppercase; letter-spacing: .03em; background: var(--bg-alt); color: var(--text-muted); padding: 2px 8px; border-radius: 999px; white-space: nowrap; }
.rnd-gun:hover:not(:disabled) { border-color: var(--primary); }
.rnd-gun.secili { border-color: var(--primary); background: var(--primary); }
.rnd-gun.secili .rnd-gun-ad, .rnd-gun.secili .rnd-gun-ay { color: rgba(255, 255, 255, .75); }
.rnd-gun.secili .rnd-gun-no { color: var(--white); }
.rnd-gun.pasif { cursor: not-allowed; background: var(--bg-alt); }
.rnd-gun.pasif .rnd-gun-no, .rnd-gun.pasif .rnd-gun-ad, .rnd-gun.pasif .rnd-gun-ay { opacity: .45; }

/* Adim 3: saat izgarasi */
.rnd-saat-durum { font-size: 14px; color: var(--text-light); margin-top: 16px; }
.rnd-saatler { display: grid; grid-template-columns: repeat(auto-fill, minmax(92px, 1fr)); gap: 10px; margin-top: 18px; }
.rnd-saatler:empty { margin-top: 0; }
.rnd-saat { padding: 12px 6px; border: 1.5px solid var(--border); border-radius: var(--radius); background: var(--white); font-family: inherit; font-size: 14.5px; font-weight: 600; color: var(--text); font-variant-numeric: tabular-nums; cursor: pointer; transition: border-color var(--transition-fast), background var(--transition-fast), color var(--transition-fast); }
.rnd-saat:hover:not(:disabled) { border-color: var(--primary); color: var(--primary); }
.rnd-saat.secili { border-color: var(--primary); background: var(--primary); color: var(--white); }
.rnd-saat.pasif { background: var(--bg-alt); color: var(--text-muted); text-decoration: line-through; cursor: not-allowed; opacity: .6; }

/* Bilgi formu */
.rnd-bilgi { margin-top: 28px; padding-top: 26px; border-top: 1px dashed var(--border); }
.rnd-bilgi-baslik { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; font-size: 16px; font-weight: 700; color: var(--primary); }
.rnd-bilgi-baslik i { color: var(--secondary-dark); }
.rnd-form { display: grid; grid-template-columns: 1fr 1fr; gap: 16px 18px; margin-top: 18px; }
.rnd-alan-tam { grid-column: 1 / -1; }
.rnd-alan label { display: block; font-size: 13.5px; font-weight: 600; margin-bottom: 7px; color: var(--text); }
.rnd-zorunlu { color: var(--danger); }
.rnd-alan input { width: 100%; padding: 11px 14px; border: 1.5px solid var(--border); border-radius: 9px; font-size: 14.5px; font-family: inherit; background: var(--white); color: var(--text); transition: border-color var(--transition-fast), box-shadow var(--transition-fast); }
.rnd-alan input:focus { outline: none; border-color: var(--primary); box-shadow: 0 0 0 4px rgba(27, 58, 92, .08); }
.rnd-alan input.hatali { border-color: var(--danger); }
.rnd-kvkk { display: flex; align-items: flex-start; gap: 10px; font-size: 13px; color: var(--text-light); line-height: 1.6; cursor: pointer; }
.rnd-kvkk input { margin-top: 3px; width: 16px; height: 16px; accent-color: var(--primary); flex-shrink: 0; }
.rnd-kvkk.hatali span { color: var(--danger); }
.rnd-form-hata { color: var(--danger); font-size: 13.5px; margin-top: 14px; }

/* Dugmeler */
.rnd-btn { display: inline-flex; align-items: center; justify-content: center; gap: 9px; padding: 13px 26px; border: none; border-radius: 10px; font-size: 15px; font-weight: 600; font-family: inherit; cursor: pointer; text-decoration: none; transition: background var(--transition-fast), color var(--transition-fast), border-color var(--transition-fast); }
.rnd-btn-ana { background: var(--primary); color: var(--white); }
.rnd-btn-ana:hover { background: var(--primary-dark); color: var(--white); }
.rnd-btn-sade { background: var(--white); border: 1.5px solid var(--border); color: var(--text-light); }
.rnd-btn-sade:hover { border-color: var(--primary); color: var(--primary); }
.rnd-btn-iptal { background: var(--danger); color: var(--white); }
.rnd-btn-iptal:hover { background: #B91C1C; color: var(--white); }
.rnd-gonder { margin-top: 20px; }
.rnd-gonder:disabled { opacity: .6; cursor: wait; }

/* Sonuc ve iptal ekranlari */
.rnd-sonuc { max-width: 560px; margin: 0 auto; text-align: center; background: var(--white); border: 1px solid var(--border); border-radius: var(--radius-xl); padding: 40px 34px; box-shadow: var(--shadow); }
.rnd-sonuc-ikon { font-size: 52px; color: var(--success); margin-bottom: 14px; }
.rnd-sonuc-ikon.rnd-ikon-iptal { color: var(--danger); }
.rnd-sonuc-ikon.rnd-ikon-uyari { color: var(--warning); }
.rnd-sonuc h2 { font-family: var(--font-heading); font-size: 25px; color: var(--primary); margin-bottom: 10px; }
.rnd-sonuc-not { font-size: 14.5px; color: var(--text-light); margin-bottom: 22px; line-height: 1.6; }
.rnd-ozet-kart { text-align: left; border: 1px solid var(--border); border-radius: var(--radius-lg); overflow: hidden; margin: 0 0 20px; }
.rnd-ozet-satir { display: flex; justify-content: space-between; align-items: baseline; gap: 14px; padding: 12px 16px; font-size: 14px; border-bottom: 1px solid var(--border); }
.rnd-ozet-satir:last-child { border-bottom: none; }
.rnd-ozet-satir > span { color: var(--text-light); flex-shrink: 0; }
.rnd-ozet-satir strong { color: var(--text); text-align: right; word-break: break-word; }
.rnd-ozet-kod { background: var(--bg-alt); }
.rnd-ozet-kod strong { font-family: 'SF Mono', Menlo, Consolas, monospace; font-size: 13.5px; letter-spacing: .06em; color: var(--primary); }
.rnd-sonuc-durum { display: flex; align-items: center; justify-content: center; gap: 9px; font-size: 13.5px; color: var(--warning); background: #FDF3E3; border-radius: 10px; padding: 11px 14px; margin-bottom: 22px; }
.rnd-sonuc-butonlar { display: flex; gap: 12px; justify-content: center; flex-wrap: wrap; }

/* Bos durum */
.rnd-bos { max-width: 520px; margin: 0 auto; text-align: center; padding: 50px 30px; background: var(--white); border: 1px solid var(--border); border-radius: var(--radius-xl); }
.rnd-bos i { font-size: 44px; color: var(--text-muted); margin-bottom: 16px; display: block; }
.rnd-bos p { font-size: 15px; color: var(--text-light); margin-bottom: 22px; line-height: 1.65; }

/* RTL */
[dir="rtl"] .rnd-birim { text-align: right; }
[dir="rtl"] .rnd-secim { margin-left: 0; margin-right: auto; }
[dir="rtl"] .rnd-ozet-kart { text-align: right; }
[dir="rtl"] .rnd-ozet-satir strong { text-align: left; }

@media (max-width: 720px) {
    .rnd-section { padding: 36px 0 60px; }
    .rnd-kutu { padding: 20px 16px; }
    .rnd-adim { padding: 7px 13px 7px 8px; font-size: 12.5px; gap: 8px; }
    .rnd-adim-no { width: 23px; height: 23px; font-size: 11.5px; }
    .rnd-form { grid-template-columns: 1fr; }
    .rnd-gun { flex-basis: 78px; }
    .rnd-sonuc { padding: 30px 20px; }
    .rnd-sonuc-butonlar .rnd-btn { flex: 1 1 100%; }
}

/* === BOLUM K: uye portali stilleri === */

/* === BOLUM L: basin merkezi + fuar takvimi stilleri === */

/* ----- Basin merkezi ----- */
.basin-section .basin-bolum + .basin-bolum,
.basin-section .basin-orta { margin-top: 56px; }
.basin-bolum-baslik {
    display: flex; align-items: center; gap: 12px;
    font-family: var(--font-heading); font-size: 25px; font-weight: 700; color: var(--primary);
    padding-bottom: 12px; margin-bottom: 18px; border-bottom: 2px solid var(--secondary);
}
.basin-bolum-baslik i { font-size: 19px; color: var(--secondary-dark); }
.basin-bolum-alt { font-size: 14.5px; color: var(--text-light); margin: -6px 0 22px; }
.basin-bos { color: var(--text-light); padding: 18px 0; }

/* Basin iletisim kisi kartlari */
.basin-kisi-izgara { display: grid; grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)); gap: 20px; }
.basin-kisi {
    background: var(--white); border: 1px solid var(--border); border-radius: var(--radius-lg);
    padding: 28px 22px; text-align: center; box-shadow: var(--shadow-sm);
    transition: transform var(--transition-fast), box-shadow var(--transition-fast), border-color var(--transition-fast);
}
.basin-kisi:hover { transform: translateY(-3px); border-color: var(--secondary); box-shadow: var(--shadow-lg); }
.basin-kisi-avatar {
    width: 64px; height: 64px; margin: 0 auto 14px; border-radius: 50%;
    display: flex; align-items: center; justify-content: center;
    font-size: 20px; font-weight: 700; letter-spacing: .04em; color: var(--secondary);
    background: linear-gradient(150deg, var(--primary) 0%, var(--primary-dark) 100%);
}
.basin-kisi h3 { font-size: 17px; font-weight: 700; color: var(--primary); margin-bottom: 4px; }
.basin-kisi-unvan { display: block; font-size: 11px; font-weight: 700; letter-spacing: .6px; text-transform: uppercase; color: var(--secondary-dark); }
.basin-kisi-birim { display: block; font-size: 12.5px; color: var(--text-muted); margin-top: 3px; }
.basin-kisi-iletisim { display: flex; flex-direction: column; align-items: center; gap: 6px; margin-top: 14px; padding-top: 14px; border-top: 1px solid var(--bg-alt); }
.basin-kisi-iletisim a {
    display: inline-flex; align-items: center; gap: 7px; max-width: 100%;
    font-size: 13.5px; font-weight: 600; color: var(--text); text-decoration: none;
    transition: color var(--transition-fast);
}
.basin-kisi-iletisim a i { font-size: 12px; color: var(--secondary); flex-shrink: 0; }
.basin-kisi-iletisim a span { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.basin-kisi-iletisim a:hover { color: var(--secondary-dark); }

/* Orta kusak: bultenler + kurumsal kimlik */
.basin-orta { display: grid; grid-template-columns: 1.6fr 1fr; gap: 28px; align-items: start; }
.basin-bulten-liste { list-style: none; margin: 0; padding: 0; }
.basin-bulten-liste li + li { border-top: 1px solid var(--bg-alt); }
.basin-bulten { display: flex; align-items: center; gap: 14px; padding: 13px 6px; text-decoration: none; transition: background var(--transition-fast); }
.basin-bulten:hover { background: var(--bg); }
.basin-bulten-tarih { flex-shrink: 0; width: 138px; font-size: 12.5px; color: var(--text-light); white-space: nowrap; }
.basin-bulten-tarih i { color: var(--secondary); margin-right: 4px; }
[dir="rtl"] .basin-bulten-tarih i { margin-right: 0; margin-left: 4px; }
.basin-bulten-baslik { flex: 1; min-width: 0; font-size: 14.5px; font-weight: 600; color: var(--text); line-height: 1.45; }
.basin-bulten:hover .basin-bulten-baslik { color: var(--primary); }
.basin-bulten-ok { font-size: 11px; color: var(--text-muted); flex-shrink: 0; transition: color var(--transition-fast); }
.basin-bulten:hover .basin-bulten-ok { color: var(--secondary-dark); }
[dir="rtl"] .basin-bulten-ok { transform: scaleX(-1); }
.basin-tum-link { display: inline-flex; align-items: center; gap: 8px; margin-top: 16px; font-size: 13.5px; font-weight: 700; color: var(--secondary-dark); text-decoration: none; transition: color var(--transition-fast); }
.basin-tum-link:hover { color: var(--primary); }
.basin-tum-link i { font-size: 12px; }
[dir="rtl"] .basin-tum-link i { transform: scaleX(-1); }

/* Kurumsal kimlik / logo indirme karti */
.basin-logo-kart { background: var(--white); border: 1px solid var(--border); border-radius: var(--radius-lg); padding: 24px; text-align: center; box-shadow: var(--shadow-sm); }
.basin-logo-onizleme { background: var(--bg-alt); border-radius: var(--radius); padding: 26px 16px; margin-bottom: 18px; }
.basin-logo-onizleme img { max-width: 100%; max-height: 120px; }
.basin-indir-btn {
    display: inline-flex; align-items: center; justify-content: center; gap: 9px;
    padding: 12px 22px; border-radius: var(--radius); background: var(--primary); color: var(--white);
    font-size: 14px; font-weight: 600; text-decoration: none; transition: background var(--transition-fast);
}
.basin-indir-btn i { color: var(--secondary-light); font-size: 13px; }
.basin-indir-btn:hover { background: var(--primary-dark); }
.basin-logo-not { font-size: 12.5px; color: var(--text-light); line-height: 1.6; margin-top: 14px; }

/* Basin gorselleri galerisi */
.basin-galeri { display: grid; grid-template-columns: repeat(auto-fill, minmax(210px, 1fr)); gap: 18px; }
.basin-gorsel {
    margin: 0; background: var(--white); border: 1px solid var(--border); border-radius: var(--radius-lg);
    overflow: hidden; box-shadow: var(--shadow-sm);
    transition: transform var(--transition-fast), box-shadow var(--transition-fast), border-color var(--transition-fast);
}
.basin-gorsel:hover { transform: translateY(-3px); border-color: var(--secondary); box-shadow: var(--shadow-lg); }
.basin-gorsel img { display: block; width: 100%; aspect-ratio: 4 / 3; object-fit: cover; }
.basin-gorsel figcaption { padding: 10px 14px; border-top: 1px solid var(--bg-alt); }
.basin-gorsel figcaption a { display: inline-flex; align-items: center; gap: 7px; font-size: 13px; font-weight: 600; color: var(--primary); text-decoration: none; transition: color var(--transition-fast); }
.basin-gorsel figcaption a i { font-size: 11px; color: var(--secondary-dark); }
.basin-gorsel figcaption a:hover { color: var(--secondary-dark); }
.basin-dergi-grid { margin-top: 6px; }

@media (max-width: 960px) {
    .basin-orta { grid-template-columns: 1fr; }
    .basin-kimlik { max-width: 420px; }
}
@media (max-width: 640px) {
    .basin-bolum-baslik { font-size: 21px; }
    .basin-bulten { flex-wrap: wrap; gap: 4px 14px; }
    .basin-bulten-tarih { width: 100%; }
    .basin-bulten-ok { display: none; }
}

/* ----- Fuar takvimi ----- */
.fuar-ust {
    display: flex; align-items: center; justify-content: space-between; gap: 20px;
    background: var(--bg-alt); border-radius: var(--radius-lg); padding: 20px 24px; margin-bottom: 40px;
}
.fuar-aciklama { font-size: 14.5px; color: var(--text-light); line-height: 1.65; max-width: 760px; }
.fuar-aciklama strong { color: var(--primary); }
.fuar-duyuru-link {
    display: inline-flex; align-items: center; gap: 9px; flex-shrink: 0; white-space: nowrap;
    padding: 12px 20px; border-radius: var(--radius); background: var(--primary); color: var(--white);
    font-size: 13.5px; font-weight: 600; text-decoration: none; transition: background var(--transition-fast);
}
.fuar-duyuru-link i { color: var(--secondary-light); font-size: 13px; }
.fuar-duyuru-link:hover { background: var(--primary-dark); }
.fuar-bos { text-align: center; color: var(--text-light); padding: 40px 0; }

.fuar-yil + .fuar-yil { margin-top: 52px; }
.fuar-yil-baslik { display: flex; align-items: center; gap: 16px; }
.fuar-yil-baslik span { font-family: var(--font-heading); font-size: 32px; font-weight: 700; color: var(--primary); line-height: 1; }
.fuar-yil-baslik::after { content: ''; flex: 1; height: 2px; background: linear-gradient(to right, var(--secondary), transparent); }
[dir="rtl"] .fuar-yil-baslik::after { background: linear-gradient(to left, var(--secondary), transparent); }

.fuar-cizelge { margin-top: 22px; padding-left: 28px; border-left: 2px solid var(--border); }
[dir="rtl"] .fuar-cizelge { padding-left: 0; padding-right: 28px; border-left: none; border-right: 2px solid var(--border); }
.fuar-ay { position: relative; }
.fuar-ay + .fuar-ay { margin-top: 30px; }
.fuar-ay-etiket { position: relative; font-size: 12px; font-weight: 700; letter-spacing: .8px; text-transform: uppercase; color: var(--secondary-dark); margin-bottom: 12px; }
.fuar-ay-etiket::before {
    content: ''; position: absolute; top: 4px; left: -35px;
    width: 10px; height: 10px; border-radius: 50%; background: var(--secondary);
    box-shadow: 0 0 0 3px var(--white), 0 0 0 5px var(--secondary);
}
[dir="rtl"] .fuar-ay-etiket::before { left: auto; right: -35px; }
.fuar-ay-liste { display: flex; flex-direction: column; gap: 10px; }
.fuar-oge {
    display: flex; align-items: center; gap: 16px;
    background: var(--white); border: 1px solid var(--border); border-radius: var(--radius-lg);
    padding: 12px 18px; text-decoration: none;
    transition: transform var(--transition-fast), box-shadow var(--transition-fast), border-color var(--transition-fast);
}
.fuar-oge:hover { transform: translateX(4px); border-color: var(--secondary); box-shadow: var(--shadow); }
[dir="rtl"] .fuar-oge:hover { transform: translateX(-4px); }
.fuar-rozet {
    display: flex; flex-direction: column; align-items: center; justify-content: center;
    width: 58px; flex-shrink: 0; padding: 8px 4px; border-radius: 10px;
    background: linear-gradient(150deg, var(--primary) 0%, var(--primary-dark) 100%); color: var(--white);
}
.fuar-rozet b { font-family: var(--font-heading); font-size: 21px; font-weight: 700; line-height: 1; }
.fuar-rozet small { max-width: 100%; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-size: 9.5px; font-weight: 600; letter-spacing: .4px; text-transform: uppercase; color: var(--secondary-light); margin-top: 4px; }
.fuar-oge-govde { flex: 1; min-width: 0; display: flex; flex-direction: column; gap: 3px; }
.fuar-oge-baslik { font-size: 14.5px; font-weight: 600; color: var(--text); line-height: 1.45; }
.fuar-oge:hover .fuar-oge-baslik { color: var(--primary); }
.fuar-oge-tarih { font-size: 12px; color: var(--text-light); }
.fuar-oge-tarih i { color: var(--secondary); margin-right: 4px; }
[dir="rtl"] .fuar-oge-tarih i { margin-right: 0; margin-left: 4px; }
.fuar-oge-ok { font-size: 11px; color: var(--text-muted); flex-shrink: 0; transition: color var(--transition-fast); }
.fuar-oge:hover .fuar-oge-ok { color: var(--secondary-dark); }
[dir="rtl"] .fuar-oge-ok { transform: scaleX(-1); }

@media (max-width: 720px) {
    .fuar-ust { flex-direction: column; align-items: flex-start; padding: 18px; margin-bottom: 32px; }
    .fuar-yil-baslik span { font-size: 26px; }
    .fuar-cizelge { padding-left: 18px; }
    [dir="rtl"] .fuar-cizelge { padding-left: 0; padding-right: 18px; }
    .fuar-ay-etiket::before { left: -25px; }
    [dir="rtl"] .fuar-ay-etiket::before { left: auto; right: -25px; }
    .fuar-oge { padding: 11px 14px; gap: 12px; }
    .fuar-rozet { width: 50px; }
    .fuar-oge-ok { display: none; }
}

/* === BOLUM M: basvuru takip stilleri === */

.bvr-section { padding: 56px 0 84px; background: var(--bg); }
.bvr-dar { max-width: 780px; }
.bvr-uyari { display: flex; align-items: center; gap: 10px; background: #FDECEC; color: var(--danger); border: 1px solid rgba(220, 38, 38, .18); border-radius: var(--radius-lg); padding: 14px 18px; font-size: 14.5px; margin-bottom: 24px; }
.bvr-uyari i { flex-shrink: 0; }

/* Iki kolon: solda aciklama, sagda form */
.bvr-grid { display: grid; grid-template-columns: 5fr 7fr; gap: 28px; align-items: start; }
.bvr-bilgi h2 { font-family: var(--font-heading); font-size: 26px; color: var(--primary); margin-bottom: 10px; }
.bvr-bilgi-alt { font-size: 14.5px; color: var(--text-light); line-height: 1.65; margin-bottom: 24px; }
.bvr-adimlar { list-style: none; display: flex; flex-direction: column; gap: 14px; margin: 0 0 24px; padding: 0; counter-reset: bvradim; }
.bvr-adim-kart { display: flex; align-items: flex-start; gap: 14px; background: var(--white); border: 1px solid var(--border); border-radius: var(--radius-lg); padding: 16px 18px; counter-increment: bvradim; }
.bvr-adim-ikon { position: relative; display: inline-flex; align-items: center; justify-content: center; width: 44px; height: 44px; border-radius: 12px; background: var(--primary); color: var(--white); font-size: 17px; flex-shrink: 0; }
.bvr-adim-ikon::after { content: counter(bvradim); position: absolute; top: -7px; right: -7px; width: 19px; height: 19px; border-radius: 50%; background: var(--secondary); color: var(--primary-dark); font-size: 11px; font-weight: 700; display: flex; align-items: center; justify-content: center; }
.bvr-adim-kart strong { display: block; font-size: 15px; color: var(--text); margin-bottom: 4px; }
.bvr-adim-kart p { font-size: 13.5px; color: var(--text-light); line-height: 1.6; margin: 0; }
.bvr-bilgi-not { display: flex; align-items: flex-start; gap: 10px; background: #EDF5FC; border: 1px solid rgba(2, 132, 199, .16); border-radius: var(--radius-lg); padding: 13px 16px; font-size: 13.5px; color: var(--text-light); line-height: 1.6; }
.bvr-bilgi-not i { color: var(--info); margin-top: 2px; flex-shrink: 0; }
.bvr-bilgi-not a { color: var(--primary); font-weight: 600; text-decoration: underline; }

/* Form kutusu */
.bvr-form-kutu { background: var(--white); border: 1px solid var(--border); border-radius: var(--radius-xl); padding: 28px 30px; box-shadow: var(--shadow-sm); }
.bvr-form-baslik { display: flex; align-items: center; gap: 11px; font-size: 18px; font-weight: 700; color: var(--primary); margin-bottom: 20px; }
.bvr-form-baslik i { color: var(--secondary-dark); font-size: 16px; }
.bvr-form { display: grid; grid-template-columns: 1fr 1fr; gap: 16px 18px; }
.bvr-alan-tam { grid-column: 1 / -1; }
.bvr-alan label { display: block; font-size: 13.5px; font-weight: 600; margin-bottom: 7px; color: var(--text); }
.bvr-alan label small { font-weight: 400; color: var(--text-muted); font-size: 12px; }
.bvr-zorunlu { color: var(--danger); }
.bvr-alan input, .bvr-alan select, .bvr-alan textarea { width: 100%; padding: 11px 14px; border: 1.5px solid var(--border); border-radius: 9px; font-size: 14.5px; font-family: inherit; background: var(--white); color: var(--text); transition: border-color var(--transition-fast), box-shadow var(--transition-fast); }
.bvr-alan input:focus, .bvr-alan select:focus, .bvr-alan textarea:focus { outline: none; border-color: var(--primary); box-shadow: 0 0 0 4px rgba(27, 58, 92, .08); }
.bvr-alan textarea { resize: vertical; min-height: 130px; line-height: 1.6; }
.bvr-secim { position: relative; }
.bvr-secim select { appearance: none; padding-right: 38px; cursor: pointer; }
.bvr-secim i { position: absolute; top: 50%; right: 14px; transform: translateY(-50%); font-size: 12px; color: var(--text-muted); pointer-events: none; }
.bvr-kvkk { grid-column: 1 / -1; display: flex; align-items: flex-start; gap: 10px; font-size: 13px; color: var(--text-light); line-height: 1.6; cursor: pointer; }
.bvr-kvkk input { margin-top: 3px; width: 16px; height: 16px; accent-color: var(--primary); flex-shrink: 0; }

/* Dugmeler */
.bvr-btn { display: inline-flex; align-items: center; justify-content: center; gap: 9px; padding: 13px 26px; border: none; border-radius: 10px; font-size: 15px; font-weight: 600; font-family: inherit; cursor: pointer; text-decoration: none; transition: background var(--transition-fast), color var(--transition-fast), border-color var(--transition-fast); }
.bvr-btn-ana { background: var(--primary); color: var(--white); }
.bvr-btn-ana:hover { background: var(--primary-dark); color: var(--white); }
.bvr-btn-sade { background: var(--white); border: 1.5px solid var(--border); color: var(--text-light); }
.bvr-btn-sade:hover { border-color: var(--primary); color: var(--primary); }
.bvr-gonder { grid-column: 1 / -1; justify-self: start; }

/* Basari ekrani + buyuk takip kodu karti */
.bvr-sonuc { max-width: 560px; margin: 0 auto; text-align: center; background: var(--white); border: 1px solid var(--border); border-radius: var(--radius-xl); padding: 40px 34px; box-shadow: var(--shadow); }
.bvr-sonuc-ikon { font-size: 52px; color: var(--success); margin-bottom: 14px; }
.bvr-sonuc h2 { font-family: var(--font-heading); font-size: 25px; color: var(--primary); margin-bottom: 10px; }
.bvr-sonuc-not { font-size: 14.5px; color: var(--text-light); margin-bottom: 22px; line-height: 1.6; }
.bvr-kod-kart { background: var(--primary); border-radius: var(--radius-lg); padding: 20px 24px; margin-bottom: 16px; }
.bvr-kod-kart span { display: block; font-size: 11.5px; font-weight: 700; letter-spacing: .14em; text-transform: uppercase; color: var(--secondary-light); margin-bottom: 8px; }
.bvr-kod-kart strong { font-family: 'SF Mono', Menlo, Consolas, monospace; font-size: 34px; letter-spacing: .18em; color: var(--white); word-break: break-all; }
.bvr-kod-not { display: flex; align-items: center; justify-content: center; gap: 9px; font-size: 13.5px; color: var(--warning); background: #FDF3E3; border-radius: 10px; padding: 11px 14px; margin-bottom: 22px; text-align: left; }
.bvr-kod-not i { flex-shrink: 0; }
.bvr-sonuc-butonlar { display: flex; gap: 12px; justify-content: center; flex-wrap: wrap; }

/* Sorgu formu */
.bvr-sorgu-form { display: flex; gap: 12px; max-width: 560px; margin: 0 auto 28px; }
.bvr-sorgu-girdi { position: relative; flex: 1; }
.bvr-sorgu-girdi i { position: absolute; top: 50%; left: 15px; transform: translateY(-50%); color: var(--text-muted); font-size: 14px; pointer-events: none; }
.bvr-sorgu-girdi input { width: 100%; padding: 13px 16px 13px 40px; border: 1.5px solid var(--border); border-radius: 10px; font-size: 15px; font-family: 'SF Mono', Menlo, Consolas, monospace; letter-spacing: .08em; text-transform: uppercase; background: var(--white); color: var(--text); transition: border-color var(--transition-fast), box-shadow var(--transition-fast); }
.bvr-sorgu-girdi input:focus { outline: none; border-color: var(--primary); box-shadow: 0 0 0 4px rgba(27, 58, 92, .08); }
.bvr-sorgu-ipucu { display: flex; align-items: flex-start; gap: 10px; max-width: 560px; margin: 0 auto; background: #EDF5FC; border: 1px solid rgba(2, 132, 199, .16); border-radius: var(--radius-lg); padding: 14px 17px; font-size: 13.5px; color: var(--text-light); line-height: 1.65; }
.bvr-sorgu-ipucu i { color: var(--info); margin-top: 2px; flex-shrink: 0; }
.bvr-sorgu-ipucu a { color: var(--primary); font-weight: 600; text-decoration: underline; }

/* Bulunamadi karti */
.bvr-bulunamadi { max-width: 560px; margin: 0 auto; text-align: center; background: var(--white); border: 1px solid var(--border); border-radius: var(--radius-xl); padding: 42px 30px; }
.bvr-bulunamadi i { font-size: 44px; color: var(--text-muted); margin-bottom: 14px; display: block; }
.bvr-bulunamadi h2 { font-family: var(--font-heading); font-size: 22px; color: var(--primary); margin-bottom: 10px; }
.bvr-bulunamadi p { font-size: 14.5px; color: var(--text-light); line-height: 1.65; margin-bottom: 20px; }

/* Sorgu sonucu */
.bvr-sonuc-kutu { background: var(--white); border: 1px solid var(--border); border-radius: var(--radius-xl); padding: 26px 28px 28px; box-shadow: var(--shadow-sm); }
.bvr-sonuc-ust { display: flex; align-items: center; justify-content: space-between; gap: 12px; flex-wrap: wrap; padding-bottom: 20px; border-bottom: 1px dashed var(--border); }
.bvr-sonuc-kod span { display: block; font-size: 11px; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; color: var(--text-muted); margin-bottom: 3px; }
.bvr-sonuc-kod strong { font-family: 'SF Mono', Menlo, Consolas, monospace; font-size: 19px; letter-spacing: .12em; color: var(--primary); }
.bvr-rozet { display: inline-flex; align-items: center; font-size: 12.5px; font-weight: 700; border-radius: 999px; padding: 6px 15px; }
.bvr-rozet-altin { background: #F6EFDA; color: var(--secondary-dark); }
.bvr-rozet-mavi { background: #E3F1FA; color: var(--info); }
.bvr-rozet-yesil { background: #E5F5EB; color: var(--success); }
.bvr-rozet-kirmizi { background: #FDECEC; color: var(--danger); }

/* Durum zaman cizelgesi */
.bvr-zaman { list-style: none; display: flex; margin: 26px 0; padding: 0; }
.bvr-zaman-adim { position: relative; flex: 1; display: flex; flex-direction: column; align-items: center; gap: 9px; text-align: center; }
.bvr-zaman-adim + .bvr-zaman-adim::before { content: ''; position: absolute; top: 19px; right: 50%; width: 100%; height: 3px; background: var(--border); z-index: 0; }
.bvr-zaman-adim.tamam + .bvr-zaman-adim.tamam::before, .bvr-zaman-adim.tamam + .bvr-zaman-adim.aktif::before { background: var(--success); }
.bvr-zaman-nokta { position: relative; z-index: 1; display: inline-flex; align-items: center; justify-content: center; width: 40px; height: 40px; border-radius: 50%; background: var(--white); border: 2.5px solid var(--border); color: var(--text-muted); font-size: 14px; transition: background var(--transition-fast), border-color var(--transition-fast), color var(--transition-fast); }
.bvr-zaman-adim strong { font-size: 13px; font-weight: 600; color: var(--text-muted); }
.bvr-zaman-adim.tamam .bvr-zaman-nokta { background: var(--success); border-color: var(--success); color: var(--white); }
.bvr-zaman-adim.tamam strong { color: var(--success); }
.bvr-zaman-adim.aktif .bvr-zaman-nokta { background: var(--primary); border-color: var(--primary); color: var(--white); box-shadow: 0 0 0 5px rgba(27, 58, 92, .12); }
.bvr-zaman-adim.aktif strong { color: var(--primary); font-weight: 700; }
.bvr-zaman-adim.aktif.yesil .bvr-zaman-nokta { background: var(--success); border-color: var(--success); box-shadow: 0 0 0 5px rgba(5, 150, 105, .14); }
.bvr-zaman-adim.aktif.yesil strong { color: var(--success); }
.bvr-zaman-adim.aktif.kirmizi .bvr-zaman-nokta { background: var(--danger); border-color: var(--danger); box-shadow: 0 0 0 5px rgba(220, 38, 38, .12); }
.bvr-zaman-adim.aktif.kirmizi strong { color: var(--danger); }
.bvr-zaman-red .bvr-zaman-adim.tamam + .bvr-zaman-adim.aktif::before { background: var(--danger); }

/* Basvuru ozeti */
.bvr-ozet { display: grid; grid-template-columns: 1fr 1fr; gap: 14px 22px; padding-top: 20px; border-top: 1px dashed var(--border); }
.bvr-ozet-hucre span { display: block; font-size: 11px; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; color: var(--text-muted); margin-bottom: 4px; }
.bvr-ozet-hucre strong { font-size: 14.5px; color: var(--text); font-weight: 600; word-break: break-word; }

/* Kurum yaniti */
.bvr-yanit { margin-top: 22px; background: var(--bg-alt); border: 1px solid var(--border); border-left: 4px solid var(--secondary); border-radius: var(--radius-lg); padding: 17px 19px; }
.bvr-yanit h3 { display: flex; align-items: center; gap: 9px; font-size: 14px; font-weight: 700; color: var(--primary); margin-bottom: 9px; }
.bvr-yanit h3 i { color: var(--secondary-dark); font-size: 13px; }
.bvr-yanit p { font-size: 14px; color: var(--text); line-height: 1.7; margin: 0 0 9px; word-break: break-word; }
.bvr-yanit small { font-size: 12px; color: var(--text-muted); }

/* RTL */
[dir="rtl"] .bvr-adim-ikon::after { right: auto; left: -7px; }
[dir="rtl"] .bvr-secim select { padding-right: 14px; padding-left: 38px; }
[dir="rtl"] .bvr-secim i { right: auto; left: 14px; }
[dir="rtl"] .bvr-sorgu-girdi i { left: auto; right: 15px; }
[dir="rtl"] .bvr-sorgu-girdi input { padding: 13px 40px 13px 16px; }
[dir="rtl"] .bvr-zaman-adim + .bvr-zaman-adim::before { right: auto; left: 50%; }
[dir="rtl"] .bvr-yanit { border-left: 1px solid var(--border); border-right: 4px solid var(--secondary); }
[dir="rtl"] .bvr-gonder { justify-self: end; }

@media (max-width: 900px) {
    .bvr-grid { grid-template-columns: 1fr; }
}
@media (max-width: 720px) {
    .bvr-section { padding: 36px 0 60px; }
    .bvr-form-kutu { padding: 22px 18px; }
    .bvr-form { grid-template-columns: 1fr; }
    .bvr-sonuc { padding: 30px 20px; }
    .bvr-kod-kart strong { font-size: 26px; letter-spacing: .12em; }
    .bvr-sonuc-butonlar .bvr-btn { flex: 1 1 100%; }
    .bvr-sorgu-form { flex-direction: column; }
    .bvr-ozet { grid-template-columns: 1fr; }
    .bvr-zaman-adim strong { font-size: 11.5px; }
    .bvr-sonuc-kutu { padding: 20px 16px 22px; }
}

/* === BOLUM N: karekod stilleri === */

/* Karekod kutusu: beyaz zemin, ince cerceve, yumusak kose */
.karekod-kutu {
    display: inline-flex; flex-direction: column; align-items: center; gap: 6px;
    background: #fff; border: 1px solid var(--border); border-radius: 10px; padding: 8px;
}
.karekod-kutu img { display: block; background: #fff; image-rendering: pixelated; }
.karekod-kutu-liste img { width: 96px; height: 96px; }
.karekod-indir {
    display: inline-flex; align-items: center; gap: 5px;
    font-size: 11.5px; font-weight: 600; color: var(--primary-light);
    text-decoration: underline; text-underline-offset: 2px; line-height: 1.4;
}
.karekod-indir:hover { color: var(--secondary-dark); }
.karekod-indir i { font-size: 10px; }

/* Dogrulama sayfasindaki buyuk karekod */
.karekod-kutu-dogrula { margin: 16px auto 10px; padding: 12px 14px; }
.karekod-kutu-dogrula img { width: 140px; height: 140px; }
.karekod-kutu-dogrula p { font-size: 12.5px; color: var(--text-light); line-height: 1.55; max-width: 230px; margin: 0; }

/* Yazdirmada net: sade siyah cerceve, tam murekkep, indirme bagi gizli */
@media print {
    .karekod-kutu { border: 1px solid #000; border-radius: 0; padding: 6px; }
    .karekod-kutu img { image-rendering: pixelated; -webkit-print-color-adjust: exact; print-color-adjust: exact; }
    .karekod-indir { display: none; }
    .karekod-kutu-dogrula p { color: #000; }
}

/* === BOLUM O: surec rehberi stilleri === */

.srg-section { padding: 56px 0 84px; background: var(--bg); }

/* Banner rozetleri (koyu zemin) */
.srg-banner-meta { display: flex; align-items: center; justify-content: center; gap: 10px; flex-wrap: wrap; margin-top: 16px; }
.srg-rozet { display: inline-flex; align-items: center; gap: 6px; font-size: 12px; font-weight: 700; background: var(--bg-alt); color: var(--text-light); border-radius: 999px; padding: 4px 12px; line-height: 1.5; white-space: nowrap; }
.srg-rozet i { font-size: 11px; }
.srg-rozet-sure { background: #F6EFDA; color: var(--secondary-dark); }
.srg-banner-meta .srg-rozet { background: rgba(255, 255, 255, .12); color: rgba(255, 255, 255, .85); }
.srg-banner-meta .srg-rozet-sure { background: rgba(200, 162, 60, .28); color: var(--secondary-light); }

/* Rehber kartlari */
.srg-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(300px, 1fr)); gap: 20px; }
.srg-kart { display: flex; flex-direction: column; gap: 10px; background: var(--white); border: 1px solid var(--border); border-radius: var(--radius-lg); padding: 26px 26px 20px; box-shadow: var(--shadow-sm); transition: transform var(--transition-fast), box-shadow var(--transition-fast), border-color var(--transition-fast); }
.srg-kart:hover { transform: translateY(-4px); box-shadow: var(--shadow-lg); border-color: rgba(200, 162, 60, .55); }
.srg-kart-ikon { width: 54px; height: 54px; border-radius: 14px; background: linear-gradient(135deg, rgba(27, 58, 92, .09), rgba(27, 58, 92, .03)); color: var(--primary); display: inline-flex; align-items: center; justify-content: center; font-size: 22px; flex-shrink: 0; transition: background var(--transition-fast), color var(--transition-fast); }
.srg-kart:hover .srg-kart-ikon { background: var(--primary); color: var(--secondary-light); }
.srg-kart h3 { font-size: 18.5px; font-weight: 700; color: var(--primary); line-height: 1.35; margin-top: 4px; }
.srg-kart p { font-size: 14px; color: var(--text-light); line-height: 1.65; flex: 1; }
.srg-kart-alt { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; margin-top: 8px; padding-top: 14px; border-top: 1px solid var(--border); }
.srg-kart-ok { margin-left: auto; display: inline-flex; align-items: center; gap: 7px; font-size: 13px; font-weight: 700; color: var(--secondary-dark); }
.srg-kart-ok i { transition: transform var(--transition-fast); }
.srg-kart:hover .srg-kart-ok i { transform: translateX(4px); }
[dir="rtl"] .srg-kart-ok { margin-left: 0; margin-right: auto; }
[dir="rtl"] .srg-kart-ok i { transform: scaleX(-1); }
[dir="rtl"] .srg-kart:hover .srg-kart-ok i { transform: scaleX(-1) translateX(4px); }

/* Bos durum */
.srg-bos { text-align: center; padding: 70px 24px; background: var(--white); border: 1px dashed var(--border); border-radius: var(--radius-lg); }
.srg-bos i { display: block; font-size: 42px; color: var(--text-muted); opacity: .5; margin-bottom: 16px; }
.srg-bos h3 { font-size: 20px; color: var(--primary); margin-bottom: 8px; }
.srg-bos p { font-size: 14.5px; color: var(--text-light); line-height: 1.7; max-width: 480px; margin: 0 auto 22px; }

/* Sihirbaz ust araci: ilerleme + yazdir */
.srg-arac { display: flex; align-items: center; justify-content: space-between; gap: 18px; flex-wrap: wrap; margin-bottom: 22px; }
.srg-ilerleme { flex: 1; min-width: 220px; display: flex; align-items: center; gap: 14px; }
.srg-ilerleme-yazi { font-size: 13.5px; font-weight: 700; color: var(--primary); white-space: nowrap; font-variant-numeric: tabular-nums; }
.srg-cubuk { flex: 1; height: 9px; background: var(--white); border: 1px solid var(--border); border-radius: 999px; overflow: hidden; }
.srg-cubuk-ic { height: 100%; width: 0; background: linear-gradient(90deg, var(--secondary), var(--secondary-dark)); border-radius: 999px; transition: width .35s ease; }
[dir="rtl"] .srg-cubuk-ic { background: linear-gradient(270deg, var(--secondary), var(--secondary-dark)); }

/* Sihirbaz yerlesimi */
.srg-sihirbaz { display: grid; grid-template-columns: 320px 1fr; gap: 24px; align-items: start; }
.srg-nav { display: flex; flex-direction: column; gap: 6px; background: var(--white); border: 1px solid var(--border); border-radius: var(--radius-lg); padding: 14px; position: sticky; top: 96px; max-height: calc(100vh - 120px); overflow-y: auto; scrollbar-width: thin; }
.srg-nav-adim { display: flex; align-items: center; gap: 12px; padding: 11px 12px; border-radius: 10px; color: var(--text-light); font-size: 14px; font-weight: 600; line-height: 1.4; transition: background var(--transition-fast), color var(--transition-fast); }
.srg-nav-adim:hover { background: var(--bg); color: var(--primary); }
.srg-nav-no { position: relative; width: 30px; height: 30px; border-radius: 50%; background: var(--bg-alt); color: var(--text-muted); display: inline-flex; align-items: center; justify-content: center; font-size: 13px; font-weight: 700; flex-shrink: 0; transition: background var(--transition-fast), color var(--transition-fast); }
.srg-nav-no i { display: none; font-size: 11px; }
.srg-nav-adim.aktif { background: var(--primary); color: var(--white); }
.srg-nav-adim.aktif .srg-nav-no { background: rgba(255, 255, 255, .18); color: var(--white); }
.srg-nav-adim.tamam .srg-nav-no { background: var(--success); color: var(--white); }
.srg-nav-adim.tamam .srg-nav-no .no { display: none; }
.srg-nav-adim.tamam .srg-nav-no i { display: inline; }
.srg-nav-ad { min-width: 0; }

/* Adim panelleri */
.srg-icerik { min-width: 0; }
.srg-panel { display: none; background: var(--white); border: 1px solid var(--border); border-radius: var(--radius-lg); padding: 30px 32px; box-shadow: var(--shadow-sm); }
.srg-panel.acik { display: block; animation: srgGel .25s ease; }
@keyframes srgGel { from { opacity: 0; transform: translateY(8px); } to { opacity: 1; transform: none; } }
.srg-panel-ust { margin-bottom: 20px; padding-bottom: 18px; border-bottom: 1px solid var(--border); }
.srg-panel-no { display: inline-flex; font-size: 11.5px; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; color: var(--secondary-dark); background: #F6EFDA; padding: 4px 12px; border-radius: 999px; margin-bottom: 12px; }
.srg-panel-ust h2 { font-family: var(--font-heading); font-size: 26px; color: var(--primary); line-height: 1.3; }
.srg-govde-bos { color: var(--text-muted); font-style: italic; font-size: 14.5px; }
.srg-panel-alt { display: flex; align-items: center; justify-content: space-between; gap: 12px; flex-wrap: wrap; margin-top: 28px; padding-top: 20px; border-top: 1px solid var(--border); }

/* Dugmeler */
.srg-btn { display: inline-flex; align-items: center; gap: 9px; padding: 12px 22px; border-radius: 10px; font-size: 14.5px; font-weight: 600; font-family: inherit; cursor: pointer; line-height: 1.2; transition: background var(--transition-fast), color var(--transition-fast), border-color var(--transition-fast); }
.srg-btn i { font-size: 13px; }
.srg-btn-dolu { background: var(--primary); color: var(--white); border: 1.5px solid var(--primary); }
.srg-btn-dolu:hover { background: var(--primary-dark); border-color: var(--primary-dark); color: var(--white); }
.srg-btn-cizgili { background: var(--white); color: var(--text); border: 1.5px solid var(--border); }
.srg-btn-cizgili:hover { border-color: var(--primary); color: var(--primary); }
.srg-btn:disabled { opacity: .45; cursor: not-allowed; }
.srg-btn:disabled:hover { border-color: var(--border); color: var(--text); }
[dir="rtl"] .srg-btn .fa-arrow-left, [dir="rtl"] .srg-btn .fa-arrow-right { transform: scaleX(-1); }

/* Mobil: adim navigasyonu ustte yatay kaydirmali */
@media (max-width: 900px) {
    .srg-section { padding: 36px 0 60px; }
    .srg-sihirbaz { grid-template-columns: 1fr; gap: 16px; }
    .srg-nav { position: static; max-height: none; flex-direction: row; overflow-x: auto; padding: 10px; gap: 8px; }
    .srg-nav-adim { flex: 0 0 auto; max-width: 250px; border: 1.5px solid var(--border); border-radius: 999px; padding: 8px 16px 8px 9px; background: var(--white); }
    [dir="rtl"] .srg-nav-adim { padding: 8px 9px 8px 16px; }
    .srg-nav-adim.aktif { border-color: var(--primary); }
    .srg-nav-adim.tamam { border-color: var(--success); }
    .srg-nav-no { width: 26px; height: 26px; font-size: 12px; }
    .srg-nav-ad { white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
    .srg-panel { padding: 22px 18px; }
    .srg-panel-ust h2 { font-size: 21px; }
    .srg-panel-alt .srg-btn { flex: 1 1 45%; justify-content: center; }
}

/* Yazdirma: tum adimlar alt alta, site kabugu gizli */
@media print {
    .top-bar, .site-header, .site-footer, .quick-nav, .quick-nav-toggle, .back-to-top, .kaysi-w,
    .banner-yolu, .srg-arac, .srg-nav, .srg-panel-alt { display: none !important; }
    .page-banner { background: none; padding: 0 0 6px; text-align: left; }
    .page-banner::before { display: none; }
    .page-banner h1 { color: #000; font-size: 24pt; }
    .srg-banner-meta { justify-content: flex-start; }
    .srg-banner-meta .srg-rozet { background: none; border: 1px solid #999; color: #000; }
    .srg-section { padding: 0; background: none; }
    .srg-sihirbaz { display: block; }
    .srg-panel { display: block !important; border: none; border-bottom: 1px solid #bbb; border-radius: 0; box-shadow: none; padding: 14pt 0; break-inside: avoid; animation: none; }
    .srg-panel:last-child { border-bottom: none; }
    .srg-panel-no { background: none; border: 1px solid #999; color: #000; }
    .srg-panel-ust h2 { color: #000; }
}

/* === Dil secici duzenlemeleri (ust bar + mobil kanvas) === */
.top-bar-lang { display: flex; align-items: center; gap: 6px; }
.top-bar-lang a {
    padding: 4px 10px; border-radius: 6px; border: 1px solid rgba(255, 255, 255, .22);
    color: rgba(255, 255, 255, .85); font-size: 12px; font-weight: 600; letter-spacing: .6px;
    line-height: 1; transition: border-color .2s, background .2s, color .2s;
}
.top-bar-lang a:hover { border-color: var(--secondary); color: #fff; }
.top-bar-lang a.active { background: var(--secondary); border-color: var(--secondary); color: #fff; }
.lang-sep { display: none; }

.mobile-sidebar-header { display: flex; align-items: center; justify-content: space-between; }
.mobile-logo { display: flex; align-items: center; }
.mobile-logo img { width: 52px; height: 52px; }
.mobile-dil-secim {
    display: flex; flex-wrap: wrap; gap: 8px;
    padding: 14px 18px 12px; border-bottom: 1px solid var(--border);
}
.mobile-dil-secim a {
    flex: 1 1 0; min-width: 46px; text-align: center; padding: 9px 0;
    border: 1px solid var(--border); border-radius: 8px; background: #fff;
    color: var(--primary); font-size: 13px; font-weight: 700; letter-spacing: .6px; line-height: 1;
    transition: border-color .2s, background .2s, color .2s;
}
.mobile-dil-secim a:hover { border-color: var(--secondary); color: var(--secondary-dark); }
.mobile-dil-secim a.aktif { background: var(--secondary); border-color: var(--secondary); color: #fff; }

/* === Icerik govdesi tipografisi ve detay sayfasi bilesenleri === */
.detail-body { font-size: 16.5px; line-height: 1.85; color: var(--text); overflow-wrap: break-word; }
.detail-body > *:first-child { margin-top: 0; }
.detail-body p { margin: 0 0 18px; }
.detail-body h2, .detail-body h3, .detail-body h4 {
    color: var(--primary); line-height: 1.35; margin: 30px 0 14px; font-weight: 700;
}
.detail-body h2 { font-size: 24px; }
.detail-body h3 { font-size: 20px; padding-inline-start: 14px; border-inline-start: 4px solid var(--secondary); }
.detail-body h4 { font-size: 17px; }
.detail-body ul, .detail-body ol { margin: 0 0 18px; padding-inline-start: 26px; }
.detail-body li { margin-bottom: 8px; }
.detail-body li::marker { color: var(--secondary-dark); font-weight: 700; }
.detail-body a { color: var(--primary-light); text-decoration: underline; text-underline-offset: 3px; transition: color .2s; }
.detail-body a:hover { color: var(--secondary-dark); }
.detail-body blockquote {
    margin: 24px 0; padding: 18px 22px; background: #F8FAFC;
    border-inline-start: 4px solid var(--secondary); border-radius: 0 12px 12px 0;
    color: var(--text); font-style: italic;
}
[dir="rtl"] .detail-body blockquote { border-radius: 12px 0 0 12px; }
.detail-body blockquote p:last-child { margin-bottom: 0; }
.detail-body img { max-width: 100%; height: auto; border-radius: 12px; margin: 8px 0 16px; }
.detail-body hr { border: 0; border-top: 1px solid var(--border); margin: 28px 0; }
.detail-body strong { color: var(--primary); }
.detail-cover { margin-bottom: 24px; }
.detail-cover img { width: 100%; border-radius: 14px; box-shadow: 0 10px 30px rgba(27, 58, 92, .12); }

/* Editörden gelen belge bağlantıları küçük rozetli görünür */
.detail-body a[href^="/document/"], .detail-body a[href$=".pdf"], .detail-body a[href^="/userfiles/"] {
    display: inline-flex; align-items: center; gap: 7px;
    padding: 3px 10px; border: 1px solid var(--border); border-radius: 8px;
    background: #F8FAFC; text-decoration: none; font-weight: 600; font-size: 15px;
}
.detail-body a[href^="/document/"]::before, .detail-body a[href$=".pdf"]::before, .detail-body a[href^="/userfiles/"]::before {
    content: "\f019"; font-family: "Font Awesome 6 Free"; font-weight: 900;
    font-size: 12px; color: var(--secondary-dark);
}
.detail-body a[href^="/document/"]:hover, .detail-body a[href$=".pdf"]:hover, .detail-body a[href^="/userfiles/"]:hover {
    border-color: var(--secondary); color: var(--primary);
}

/* Eski editör butonları (input) sunucu tarafında .govde-buton olur */
.govde-buton, .detail-body input[type="button"], .detail-body input[type="submit"] {
    display: inline-flex; align-items: center; gap: 8px;
    margin: 4px 6px 10px 0; padding: 11px 22px;
    background: var(--primary); color: #fff; border: 0; border-radius: 9px;
    font-size: 14.5px; font-weight: 600; letter-spacing: .2px; line-height: 1;
    cursor: pointer; transition: background .2s, transform .15s, box-shadow .2s;
}
.detail-body a .govde-buton { text-decoration: none; }
.detail-body a:has(.govde-buton) { text-decoration: none; padding: 0; border: 0; background: none; }
.detail-body a:has(.govde-buton)::before { content: none; }
.detail-body a:hover .govde-buton, .govde-buton:hover {
    background: var(--secondary-dark); box-shadow: 0 6px 16px rgba(200, 162, 60, .35); transform: translateY(-1px);
}

/* Editör tabloları: kaydırılabilir, zebra desenli, başlık şeritli */
.tablo-kaydir {
    margin: 22px 0; border: 1px solid var(--border); border-radius: 12px;
    overflow-x: auto; -webkit-overflow-scrolling: touch;
    box-shadow: 0 3px 12px rgba(27, 58, 92, .05);
}
.tablo-kaydir table {
    width: 100%; min-width: 540px; margin: 0; border-collapse: collapse;
    font-size: 14.5px; line-height: 1.6; border: 0;
}
.tablo-kaydir th, .tablo-kaydir td {
    padding: 12px 15px; text-align: start; vertical-align: top;
    border: 0; border-bottom: 1px solid var(--border);
}
.tablo-kaydir thead th,
.tablo-kaydir table:not(:has(thead)) tr:first-child td,
.tablo-kaydir table:not(:has(thead)) tr:first-child th {
    background: var(--primary); color: #fff; font-weight: 600; letter-spacing: .2px;
}
.tablo-kaydir tbody tr:nth-child(even) td { background: #F8FAFC; }
.tablo-kaydir tr:last-child td { border-bottom: 0; }
.tablo-kaydir table p { margin: 0; }

/* Editör videoları: oranlı sarıcı */
.video-sarici {
    margin: 22px 0; aspect-ratio: 16 / 9; border-radius: 12px;
    overflow: hidden; background: #000; box-shadow: 0 10px 26px rgba(0, 0, 0, .18);
}
.video-sarici iframe { width: 100%; height: 100%; border: 0; display: block; }

/* Haber detay kenar çubuğu mini listeleri */
.yan-haberler { display: flex; flex-direction: column; }
.yan-haber { display: flex; gap: 12px; padding: 11px 0; border-bottom: 1px solid var(--border); align-items: flex-start; }
.yan-haber:last-child { border-bottom: 0; padding-bottom: 0; }
.yan-haber img { width: 66px; height: 50px; object-fit: cover; border-radius: 8px; flex-shrink: 0; }
.yan-haber strong {
    display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden;
    font-size: 13.5px; font-weight: 600; color: var(--primary); line-height: 1.45;
}
.yan-haber:hover strong { color: var(--secondary-dark); }
.yan-haber small, .yan-duyurular small { display: block; margin-top: 4px; font-size: 12px; color: var(--text-light); }
.yan-duyurular { list-style: none; margin: 0; padding: 0; }
.yan-duyurular li { border-bottom: 1px solid var(--border); }
.yan-duyurular li:last-child { border-bottom: 0; }
.yan-duyurular a { display: block; padding: 10px 0; }
.yan-duyurular strong {
    display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden;
    font-size: 13.5px; font-weight: 600; color: var(--primary); line-height: 1.45;
}
.yan-duyurular a:hover strong { color: var(--secondary-dark); }
.yan-cta { display: flex; flex-direction: column; gap: 10px; }
.yan-cta a {
    display: flex; align-items: center; justify-content: center; gap: 9px;
    padding: 12px; border-radius: 9px; font-size: 14px; font-weight: 600; transition: all .2s;
}
.yan-cta-randevu { background: var(--secondary); color: #fff; }
.yan-cta-randevu:hover { background: var(--secondary-dark); color: #fff; }
.yan-cta-iletisim { border: 1px solid var(--border); color: var(--primary); background: #fff; }
.yan-cta-iletisim:hover { border-color: var(--secondary); color: var(--secondary-dark); }

/* === Anasayfa bolum tasarim yenileme === */
.news-section .section-title, .projects-section .section-title { position: relative; padding-inline-start: 16px; }
.news-section .section-title::before, .projects-section .section-title::before {
    content: ""; position: absolute; inset-inline-start: 0; top: 50%; transform: translateY(-50%);
    width: 5px; height: 22px; border-radius: 3px; background: var(--secondary);
}
.section-title-kucuk { font-size: 20px !important; }
.news-section .section-more, .projects-section .section-more {
    border: 1px solid var(--border); border-radius: 999px; padding: 7px 16px;
    font-size: 13px; font-weight: 600; transition: all .2s;
}
.news-section .section-more:hover, .projects-section .section-more:hover {
    background: var(--secondary); border-color: var(--secondary); color: #fff;
}

/* One cikan haber: gorsel ustu degrade karti */
.featured-card {
    position: relative; display: block; border-radius: 16px; overflow: hidden;
    min-height: 430px; background: var(--primary-dark);
    box-shadow: 0 14px 34px rgba(27, 58, 92, .16);
    transition: transform .25s, box-shadow .25s;
}
.featured-card:hover { transform: translateY(-4px); box-shadow: 0 20px 44px rgba(27, 58, 92, .24); }
.featured-card-gorsel {
    position: absolute; inset: 0; width: 100%; height: 100%;
    object-fit: cover; transition: transform .6s;
}
.featured-card:hover .featured-card-gorsel { transform: scale(1.05); }
.featured-card .featured-badge {
    position: absolute; top: 16px; inset-inline-start: 16px; z-index: 2;
    background: var(--secondary); color: #fff; padding: 6px 14px; border-radius: 999px;
    font-size: 11.5px; font-weight: 700; letter-spacing: .7px; text-transform: uppercase;
}
.featured-card .featured-card-body {
    position: absolute; inset-inline: 0; bottom: 0; z-index: 1;
    padding: 80px 22px 20px;
    background: linear-gradient(180deg, rgba(17, 40, 64, 0) 0%, rgba(17, 40, 64, .55) 40%, rgba(17, 40, 64, .95) 100%);
}
.featured-card .featured-card-body h3 {
    color: #fff; font-size: 21px; line-height: 1.4; margin: 0 0 10px;
    display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden;
}
.featured-card .featured-card-body p {
    color: rgba(255, 255, 255, .82); font-size: 14px; line-height: 1.65; margin: 0 0 12px;
    display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden;
}
.featured-card .featured-date { color: var(--secondary-light); font-size: 13px; font-weight: 600; display: inline-flex; align-items: center; gap: 7px; }

/* Kompakt haber listesi */
.news-compact-item {
    display: flex; gap: 13px; align-items: flex-start;
    padding: 11px 12px; margin-bottom: 4px;
    border: 1px solid transparent; border-radius: 12px; transition: all .2s;
}
.news-compact-item:hover { background: var(--bg); border-color: var(--border); }
.news-compact-thumb { flex-shrink: 0; }
.news-compact-thumb img { width: 92px; height: 66px; object-fit: cover; border-radius: 10px; display: block; }
.news-compact-body h4 {
    font-size: 14.5px; font-weight: 600; color: var(--primary); line-height: 1.5; margin: 0 0 6px;
    display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden;
    transition: color .2s;
}
.news-compact-item:hover h4 { color: var(--secondary-dark); }
.news-compact-date { font-size: 12.5px; color: var(--text-light); display: inline-flex; align-items: center; gap: 6px; }

/* Duyurular: tarih yapragi + tur rozeti */
.duyuru-list { display: flex; flex-direction: column; gap: 10px; }
.duyuru-item {
    display: flex; gap: 13px; align-items: flex-start;
    padding: 13px 14px; background: var(--white);
    border: 1px solid var(--border); border-inline-start-width: 4px; border-radius: 12px;
    transition: all .2s;
}
.duyuru-item:hover { transform: translateY(-2px); box-shadow: 0 10px 22px rgba(27, 58, 92, .10); }
.duyuru-genel { border-inline-start-color: var(--info); }
.duyuru-egitim { border-inline-start-color: var(--success); }
.duyuru-fuar { border-inline-start-color: var(--secondary); }
.duyuru-tarih {
    flex-shrink: 0; width: 52px; text-align: center;
    background: var(--bg); border-radius: 10px; padding: 8px 4px 6px;
}
.duyuru-tarih strong { display: block; font-size: 19px; font-weight: 800; color: var(--primary); line-height: 1.1; }
.duyuru-tarih span { font-size: 10.5px; font-weight: 700; letter-spacing: .6px; color: var(--text-light); text-transform: uppercase; }
.duyuru-rozet {
    display: inline-block; margin-bottom: 6px; padding: 2px 9px; border-radius: 999px;
    font-size: 10.5px; font-weight: 700; letter-spacing: .5px; text-transform: uppercase;
    background: var(--bg-alt); color: var(--text-light);
}
.duyuru-genel .duyuru-rozet { background: rgba(2, 132, 199, .10); color: var(--info); }
.duyuru-egitim .duyuru-rozet { background: rgba(5, 150, 105, .10); color: var(--success); }
.duyuru-fuar .duyuru-rozet { background: rgba(200, 162, 60, .16); color: var(--secondary-dark); }
.duyuru-item .duyuru-body h4 {
    font-size: 14px; font-weight: 600; color: var(--primary); line-height: 1.5; margin: 0;
    display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden;
    transition: color .2s;
}
.duyuru-item:hover .duyuru-body h4 { color: var(--secondary-dark); }

/* Proje kartlari */
.project-card {
    position: relative; border-radius: 16px; overflow: hidden;
    background: var(--white); border: 1px solid var(--border);
    transition: transform .25s, box-shadow .25s, border-color .25s;
}
.project-card::after {
    content: ""; position: absolute; bottom: 0; inset-inline-start: 0;
    width: 0; height: 4px; background: var(--secondary); transition: width .3s;
}
.project-card:hover::after { width: 100%; }
.project-card:hover { transform: translateY(-6px); box-shadow: 0 16px 36px rgba(27, 58, 92, .14); border-color: transparent; }
.project-card-img { height: 190px; overflow: hidden; }
.project-card-img img { width: 100%; height: 100%; object-fit: cover; transition: transform .5s; }
.project-card:hover .project-card-img img { transform: scale(1.07); }
.project-card-kurum { background: var(--secondary); color: #fff; font-weight: 700; letter-spacing: .5px; }
.project-card-body h4 {
    display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden;
    line-height: 1.5; transition: color .2s;
}
.project-card:hover .project-card-body h4 { color: var(--secondary-dark); }
.project-card-link { color: var(--secondary-dark); font-weight: 600; }

@media (max-width: 992px) {
    .featured-card { min-height: 340px; }
    .featured-card .featured-card-body h3 { font-size: 18px; }
}

/* Haber bolumu sutun basliklari: tek satirda, dengeli boyut */
.news-section .section-header {
    display: flex; align-items: center; justify-content: space-between;
    flex-wrap: nowrap; gap: 12px; margin-bottom: 18px;
}
.news-section .section-header .section-title { font-size: 20px; white-space: nowrap; margin: 0; }
.news-section .section-more { flex-shrink: 0; white-space: nowrap; }

/* Idari kadro personel satirlari: cipler tasmaz, gerekince alt satira iner */
.personel-row {
    display: flex; flex-wrap: wrap; align-items: center;
    gap: 8px 14px; padding: 13px 20px;
}
.personel-info { flex: 1 1 150px; min-width: 0; }
.personel-info strong { display: block; overflow: hidden; text-overflow: ellipsis; }
.personel-contact {
    display: flex; flex-wrap: wrap; align-items: center; gap: 6px;
    margin-inline-start: auto; min-width: 0; max-width: 100%; justify-content: flex-end;
}
.personel-tel, .personel-email { max-width: 100%; min-width: 0; overflow: hidden; text-overflow: ellipsis; }

/* === V2 Anasayfa: proje seridi + gundem ================================ */
.bolum-ust {
    display: inline-flex; align-items: center; gap: 10px;
    font-size: 12.5px; font-weight: 700; letter-spacing: 2.5px; text-transform: uppercase;
    color: var(--secondary-dark); margin-bottom: 10px;
}
.bolum-ust::before { content: ""; width: 34px; height: 2px; background: var(--secondary); }
.bolum-ust-acik { color: var(--secondary-light); }

/* Proje seridi: lacivert bant */
.proje-serit {
    position: relative; overflow: hidden;
    background: linear-gradient(150deg, var(--primary-dark) 0%, var(--primary) 65%, #24507F 100%);
    padding: 72px 0 78px;
}
.proje-serit-bas {
    display: flex; align-items: flex-end; justify-content: space-between;
    gap: 20px; margin-bottom: 36px; position: relative;
}
.proje-serit-baslik h2 { font-family: var(--font-heading); font-size: 34px; color: #fff; margin: 0; line-height: 1.15; }
.proje-serit-nav { display: flex; align-items: center; gap: 10px; }
.proje-tumu {
    display: inline-flex; align-items: center; gap: 8px;
    padding: 10px 18px; margin-inline-end: 6px;
    border: 1px solid rgba(255, 255, 255, .28); border-radius: 999px;
    color: rgba(255, 255, 255, .88); font-size: 13.5px; font-weight: 600; transition: all .2s;
}
.proje-tumu:hover { background: var(--secondary); border-color: var(--secondary); color: #fff; }
.proje-ok {
    width: 44px; height: 44px; border-radius: 50%;
    border: 1px solid rgba(255, 255, 255, .3); background: transparent; color: #fff;
    display: flex; align-items: center; justify-content: center; font-size: 14px; transition: all .2s;
}
.proje-ok:hover { background: var(--secondary); border-color: var(--secondary); }
.proje-pist { overflow: hidden; position: relative; }
.proje-dizi { display: flex; gap: 24px; transition: transform .45s ease; will-change: transform; }
.proje-dizi .project-card {
    all: unset; box-sizing: border-box; cursor: pointer;
    flex: 0 0 calc((100% - 48px) / 3); min-width: 0;
    display: flex; flex-direction: column;
    background: #fff; border-radius: 16px; overflow: hidden;
    box-shadow: 0 12px 30px rgba(0, 0, 0, .2);
    transition: transform .25s, box-shadow .25s;
}
.proje-dizi .project-card::after { content: none !important; }
.proje-dizi .project-card:hover { transform: translateY(-6px); box-shadow: 0 18px 40px rgba(0, 0, 0, .28); }
.proje-kart-gorsel { display: block; height: 205px; overflow: hidden; }
.proje-kart-gorsel img { width: 100%; height: 100%; object-fit: cover; display: block; transition: transform .5s; }
.proje-dizi .project-card:hover .proje-kart-gorsel img { transform: scale(1.06); }
.proje-kart-govde {
    display: flex; flex-direction: column; gap: 12px; flex: 1;
    padding: 20px 22px 22px; border-top: 3px solid var(--secondary);
}
.proje-kart-baslik {
    display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden;
    font-size: 16px; font-weight: 700; color: var(--primary); line-height: 1.5; min-height: 48px;
}
.proje-kart-lnk { display: inline-flex; align-items: center; gap: 8px; font-size: 13.5px; font-weight: 600; color: var(--secondary-dark); margin-top: auto; }
.proje-kart-lnk i { font-size: 12px; transition: transform .2s; }
.proje-dizi .project-card:hover .proje-kart-lnk i { transform: translateX(4px); }
[dir="rtl"] .proje-dizi .project-card:hover .proje-kart-lnk i { transform: translateX(-4px); }

/* Gundem */
.gundem { padding: 76px 0 84px; background: var(--white); }
.gundem-bas {
    display: flex; align-items: flex-end; justify-content: space-between;
    gap: 20px; margin-bottom: 36px;
}
.gundem-baslik h2 { font-family: var(--font-heading); font-size: 34px; color: var(--primary); margin: 0; line-height: 1.15; }
.gundem-tumu {
    display: inline-flex; align-items: center; gap: 8px; flex-shrink: 0;
    padding: 10px 18px; border: 1px solid var(--border); border-radius: 999px;
    color: var(--primary); font-size: 13.5px; font-weight: 600; transition: all .2s;
}
.gundem-tumu:hover { background: var(--secondary); border-color: var(--secondary); color: #fff; }
.gundem-yerlesim { display: grid; grid-template-columns: minmax(0, 1fr) 360px; gap: 28px; align-items: stretch; }
.gundem-sol { display: flex; flex-direction: column; gap: 22px; min-width: 0; }

/* Manset karti */
.manset {
    display: grid; grid-template-columns: 1.05fr 1fr; min-height: 300px;
    background: var(--white); border: 1px solid var(--border); border-radius: 18px;
    overflow: hidden; transition: all .25s;
}
.manset:hover { transform: translateY(-3px); box-shadow: 0 16px 40px rgba(27, 58, 92, .13); border-color: transparent; }
.manset-gorsel { display: block; min-height: 260px; overflow: hidden; }
.manset-gorsel img { width: 100%; height: 100%; object-fit: cover; display: block; transition: transform .5s; }
.manset:hover .manset-gorsel img { transform: scale(1.05); }
.manset-govde { display: flex; flex-direction: column; justify-content: center; gap: 14px; padding: 30px 32px; min-width: 0; }
.manset-meta { display: flex; align-items: center; gap: 12px; flex-wrap: wrap; }
.manset-rozet {
    background: rgba(200, 162, 60, .14); color: var(--secondary-dark);
    font-size: 11px; font-weight: 700; letter-spacing: .8px; text-transform: uppercase;
    padding: 5px 12px; border-radius: 999px;
}
.manset-meta time { font-size: 13px; color: var(--text-light); font-weight: 500; }
.manset-baslik {
    font-family: var(--font-heading); font-size: 24px; line-height: 1.35; color: var(--primary);
    display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden;
}
.manset-ozet {
    font-size: 14.5px; line-height: 1.7; color: var(--text-light);
    display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden;
}
.manset-lnk { display: inline-flex; align-items: center; gap: 8px; color: var(--secondary-dark); font-weight: 600; font-size: 14px; }
.manset-lnk i { font-size: 12px; transition: transform .2s; }
.manset:hover .manset-lnk i { transform: translateX(4px); }
[dir="rtl"] .manset:hover .manset-lnk i { transform: translateX(-4px); }

/* Kucuk haber kartlari */
.gundem-kucukler { display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; }
.gundem-kart {
    display: flex; flex-direction: column; gap: 9px; min-width: 0;
    background: var(--white); border: 1px solid var(--border); border-radius: 14px;
    overflow: hidden; padding-bottom: 16px; transition: all .22s;
}
.gundem-kart:hover { transform: translateY(-4px); box-shadow: 0 12px 28px rgba(27, 58, 92, .10); border-color: transparent; }
.gundem-kart-gorsel { display: block; height: 132px; overflow: hidden; }
.gundem-kart-gorsel img { width: 100%; height: 100%; object-fit: cover; display: block; transition: transform .45s; }
.gundem-kart:hover .gundem-kart-gorsel img { transform: scale(1.06); }
.gundem-kart time { padding: 4px 16px 0; font-size: 12px; color: var(--text-light); font-weight: 600; }
.gundem-kart-baslik {
    padding: 0 16px; font-size: 14px; font-weight: 600; color: var(--primary); line-height: 1.55;
    display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden;
    transition: color .2s;
}
.gundem-kart:hover .gundem-kart-baslik { color: var(--secondary-dark); }

/* Duyuru panosu: lacivert panel */
.duyuru-panel {
    display: flex; flex-direction: column;
    background: linear-gradient(165deg, var(--primary-dark), var(--primary));
    border-radius: 18px; padding: 26px 24px 22px;
}
.duyuru-panel-bas h3 { display: flex; align-items: center; gap: 11px; color: #fff; font-size: 19px; margin: 0 0 4px; }
.duyuru-panel-bas h3 i { color: var(--secondary-light); font-size: 16px; }
.duyuru-panel-liste { list-style: none; margin: 0; padding: 0; flex: 1; }
.duyuru-panel-liste li { border-bottom: 1px solid rgba(255, 255, 255, .12); }
.duyuru-panel-liste li:last-child { border-bottom: 0; }
.duyuru-panel-liste a { display: flex; flex-direction: column; gap: 7px; padding: 15px 2px; }
.dp-meta { display: flex; align-items: center; justify-content: space-between; gap: 10px; }
.dp-meta time { font-size: 12px; color: rgba(255, 255, 255, .62); font-weight: 600; }
.dp-tur {
    font-size: 10px; font-weight: 700; letter-spacing: .6px; text-transform: uppercase;
    padding: 3px 9px; border-radius: 999px; border: 1px solid rgba(255, 255, 255, .3);
    color: rgba(255, 255, 255, .85); white-space: nowrap;
}
.dp-genel { border-color: rgba(120, 190, 255, .5); color: #A5D5FF; }
.dp-egitim { border-color: rgba(82, 211, 163, .5); color: #8CE7C3; }
.dp-fuar { border-color: rgba(212, 180, 78, .6); color: var(--secondary-light); }
.dp-baslik {
    font-size: 14px; font-weight: 600; line-height: 1.55; color: #fff;
    display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden;
    transition: color .2s;
}
.duyuru-panel-liste a:hover .dp-baslik { color: var(--secondary-light); }
.duyuru-panel-tumu {
    display: flex; align-items: center; justify-content: center; gap: 9px;
    margin-top: 14px; padding: 12px;
    border: 1px solid rgba(255, 255, 255, .28); border-radius: 10px;
    color: #fff; font-size: 14px; font-weight: 600; transition: all .2s;
}
.duyuru-panel-tumu:hover { background: var(--secondary); border-color: var(--secondary); }

/* === V2 Idari Kadro kartlari === */
.birimk-izgara { display: grid; grid-template-columns: repeat(auto-fill, minmax(min(100%, 360px), 1fr)); gap: 24px; align-items: start; }
.birimk {
    background: var(--white); border: 1px solid var(--border); border-radius: 16px;
    overflow: hidden; transition: box-shadow .25s, transform .25s;
}
.birimk:hover { box-shadow: 0 14px 34px rgba(27, 58, 92, .10); transform: translateY(-3px); }
.birimk-bas {
    display: flex; align-items: center; gap: 12px; padding: 15px 18px;
    background: linear-gradient(135deg, var(--primary-dark), var(--primary));
    border-bottom: 3px solid var(--secondary);
}
.birimk-ikon {
    width: 38px; height: 38px; border-radius: 10px; flex-shrink: 0;
    background: rgba(255, 255, 255, .12); color: var(--secondary-light);
    display: flex; align-items: center; justify-content: center; font-size: 15px;
}
.birimk-bas h3 { flex: 1; min-width: 0; color: #fff; font-size: 15.5px; line-height: 1.4; margin: 0; }
.birimk-adet {
    flex-shrink: 0; white-space: nowrap; font-size: 11px; font-weight: 700; letter-spacing: .4px;
    color: var(--secondary-light); background: rgba(255, 255, 255, .10);
    padding: 4px 10px; border-radius: 999px;
}
.birimk-liste { padding: 4px 0; }
.prs { display: flex; gap: 13px; padding: 14px 18px; align-items: flex-start; transition: background .2s; }
.prs + .prs { border-top: 1px solid var(--border); }
.prs:hover { background: var(--bg); }
.prs-avatar {
    width: 42px; height: 42px; border-radius: 50%; flex-shrink: 0;
    background: rgba(27, 58, 92, .07); border: 1px solid rgba(27, 58, 92, .10); color: var(--primary);
    display: flex; align-items: center; justify-content: center;
    font-size: 13px; font-weight: 800; letter-spacing: .5px;
}
.prs-bilgi { flex: 1; min-width: 0; display: flex; flex-direction: column; gap: 3px; }
.prs-bilgi strong { font-size: 14.5px; font-weight: 700; color: var(--primary); line-height: 1.4; }
.prs-unvan { font-size: 11px; font-weight: 700; letter-spacing: .6px; text-transform: uppercase; color: var(--secondary-dark); }
.prs-iletisim { display: flex; flex-wrap: wrap; gap: 4px 16px; margin-top: 5px; }
.prs-iletisim a {
    display: inline-flex; align-items: center; gap: 7px; min-width: 0; max-width: 100%;
    font-size: 12.5px; color: var(--text-light); transition: color .2s;
}
.prs-iletisim a i { font-size: 11px; color: var(--secondary); flex-shrink: 0; }
.prs-iletisim a:hover { color: var(--primary); }
.prs-mail span { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }

@media (max-width: 1024px) {
    .gundem-yerlesim { grid-template-columns: 1fr; }
    .proje-dizi .project-card { flex-basis: calc((100% - 24px) / 2); }
    .gundem-kucukler { grid-template-columns: repeat(3, 1fr); }
}
@media (max-width: 768px) {
    .proje-serit, .gundem { padding: 52px 0 58px; }
    .proje-serit-bas, .gundem-bas { flex-direction: column; align-items: flex-start; gap: 16px; }
    .proje-serit-baslik h2, .gundem-baslik h2 { font-size: 27px; }
    .proje-dizi .project-card { flex-basis: 100%; }
    .manset { grid-template-columns: 1fr; min-height: 0; }
    .manset-gorsel { height: 210px; min-height: 0; }
    .manset-govde { padding: 20px 20px 24px; }
    .manset-baslik { font-size: 20px; }
    .gundem-kucukler { grid-template-columns: 1fr; gap: 12px; }
    .gundem-kart {
        display: grid; grid-template-columns: 108px minmax(0, 1fr);
        grid-template-rows: auto auto; column-gap: 13px; row-gap: 4px;
        align-items: start; align-content: center; padding: 10px;
    }
    .gundem-kart-gorsel { grid-row: 1 / span 2; width: 108px; height: 78px; border-radius: 10px; }
    .gundem-kart time { padding: 2px 0 0; }
    .gundem-kart-baslik { padding: 0; -webkit-line-clamp: 2; }
    .duyuru-panel { padding: 22px 18px 18px; }
}

/* ===== Kurul kartlari baglanti oldu ===== */
a.kurul-person { display: block; color: inherit; text-decoration: none; }
a.kurul-person:hover .kurul-gorev { color: var(--secondary); }

/* ===== Banner ici gezinti yolu (breadcrumb) ===== */
.banner-yolu { display: flex; align-items: center; flex-wrap: wrap; gap: 8px; margin-bottom: 12px; font-size: 12.5px; letter-spacing: .02em; text-transform: uppercase; }
.banner-yolu a { color: rgba(255,255,255,.72); text-decoration: none; transition: color var(--transition-fast); }
.banner-yolu a:hover { color: var(--secondary-light); }
.banner-yolu span { color: var(--secondary-light); font-weight: 600; }
.banner-yolu i { font-size: 9px; color: rgba(255,255,255,.45); }

/* ===== Kurul uyesi detay sayfasi ===== */
.uye-section { padding: 56px 0 72px; background: var(--bg); }
.uye-kart { display: grid; grid-template-columns: 300px 1fr; gap: 40px; background: var(--white); border: 1px solid var(--border); border-radius: var(--radius-lg); padding: 40px; box-shadow: var(--shadow); }
.uye-foto img { width: 100%; aspect-ratio: 1 / 1.06; object-fit: cover; object-position: top center; border-radius: var(--radius-lg); border: 1px solid var(--border); }
.uye-avatar { width: 100%; aspect-ratio: 1 / 1.06; border-radius: var(--radius-lg); display: flex; align-items: center; justify-content: center; font-family: var(--font-heading); font-size: 88px; font-weight: 700; letter-spacing: .04em; color: var(--secondary); background: linear-gradient(150deg, var(--primary) 0%, var(--primary-dark) 100%); border: 1px solid var(--border); }
.uye-bilgi h2 { font-family: var(--font-heading); font-size: clamp(24px, 2.8vw, 34px); color: var(--primary); margin-bottom: 12px; line-height: 1.25; }
.uye-gorev-rozet { display: inline-flex; align-items: center; gap: 8px; background: var(--primary); color: #fff; font-size: 13px; font-weight: 600; letter-spacing: .03em; text-transform: uppercase; padding: 8px 16px; border-radius: 999px; }
.uye-gorev-rozet i { color: var(--secondary-light); font-size: 12px; }
.uye-detaylar { margin: 26px 0 6px; display: flex; flex-direction: column; gap: 0; }
.uye-detay-satir { display: flex; align-items: flex-start; gap: 14px; padding: 14px 0; border-bottom: 1px solid var(--bg-alt); }
.uye-detay-satir:last-child { border-bottom: none; }
.uye-detay-satir > i { width: 38px; height: 38px; flex-shrink: 0; display: flex; align-items: center; justify-content: center; border-radius: 10px; background: var(--bg-alt); color: var(--secondary-dark); font-size: 15px; }
.uye-detay-satir small { display: block; font-size: 11.5px; font-weight: 600; letter-spacing: .05em; text-transform: uppercase; color: var(--text-muted); margin-bottom: 3px; }
.uye-detay-satir span, .uye-detay-satir a { font-size: 14.5px; color: var(--text); line-height: 1.5; }
.uye-detay-satir a { color: var(--primary); font-weight: 600; text-decoration: none; }
.uye-detay-satir a:hover { color: var(--secondary-dark); text-decoration: underline; }
.uye-geri { margin-top: 18px; }
.uye-digerleri { margin-top: 44px; }
.uye-digerleri h3 { font-family: var(--font-heading); font-size: 22px; color: var(--primary); margin-bottom: 18px; padding-bottom: 10px; border-bottom: 2px solid var(--secondary); }
.uye-diger-liste { display: grid; grid-template-columns: repeat(auto-fill, minmax(240px, 1fr)); gap: 14px; }
.uye-diger-kart { display: flex; align-items: center; gap: 12px; background: var(--white); border: 1px solid var(--border); border-radius: var(--radius); padding: 12px 14px; text-decoration: none; transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease; }
.uye-diger-kart:hover { transform: translateY(-2px); border-color: var(--secondary); box-shadow: 0 8px 20px rgba(27,58,92,.10); }
.uye-diger-kart img, .uye-diger-avatar { width: 44px; height: 44px; flex-shrink: 0; border-radius: 50%; object-fit: cover; }
.uye-diger-avatar { display: flex; align-items: center; justify-content: center; font-size: 14px; font-weight: 700; color: var(--secondary); background: var(--primary); letter-spacing: .03em; }
.uye-diger-ad { min-width: 0; }
.uye-diger-ad strong { display: block; font-size: 13.5px; color: var(--text); line-height: 1.3; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.uye-diger-ad small { display: block; margin-top: 2px; font-size: 11.5px; color: var(--text-light); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
@media (max-width: 860px) {
    .uye-kart { grid-template-columns: 1fr; gap: 26px; padding: 26px; }
    .uye-foto { max-width: 280px; margin: 0 auto; }
    .uye-avatar { font-size: 64px; }
}

/* ===== Paydas kusagi: logosuz kayit metin rozetiyle gosterilir ===== */
.partner-ad { display: inline-block; font-size: 15px; font-weight: 600; color: var(--text-light); white-space: nowrap; padding: 10px 18px; border: 1px solid var(--border); border-radius: 999px; }

/* ===== Iletisim formu ozel secim kutusu ===== */
.secim-kutu { position: relative; }
.secim-kutu select { appearance: none; -webkit-appearance: none; -moz-appearance: none; padding-right: 42px; cursor: pointer; }
.secim-kutu select::-ms-expand { display: none; }
.secim-kutu > i { position: absolute; top: 50%; right: 16px; transform: translateY(-50%); pointer-events: none; font-size: 12px; color: var(--secondary-dark); transition: transform var(--transition-fast); }
.secim-kutu:focus-within > i { transform: translateY(-50%) rotate(180deg); color: var(--primary); }
[dir="rtl"] .secim-kutu select { padding-right: 16px; padding-left: 42px; }
[dir="rtl"] .secim-kutu > i { right: auto; left: 16px; }

/* ===== BOLUM K (devam): uye portali ===== */

/* Ust bar uye girisi baglantisi */
.uye-giris-link {
    display: inline-flex; align-items: center; gap: 7px;
    padding: 5px 13px; border: 1px solid rgba(255, 255, 255, .25); border-radius: 999px;
    color: rgba(255, 255, 255, .9); font-size: 12px; font-weight: 600; letter-spacing: .03em;
    line-height: 1; white-space: nowrap; transition: border-color .2s, background .2s, color .2s;
}
.uye-giris-link i { font-size: 12px; color: var(--secondary-light); }
.uye-giris-link:hover { border-color: var(--secondary); background: rgba(200, 162, 60, .16); color: #fff; }

/* Genel bolum ve sekme gezintisi */
.uyep-section { padding: 46px 0 80px; background: var(--bg); }
.uyep-nav {
    display: flex; align-items: center; justify-content: space-between; gap: 10px;
    margin-bottom: 26px; padding: 8px; background: var(--white);
    border: 1px solid var(--border); border-radius: var(--radius-lg); box-shadow: var(--shadow-sm);
    flex-wrap: wrap;
}
.uyep-nav-sekmeler { display: flex; gap: 4px; flex-wrap: wrap; }
.uyep-nav-link {
    display: inline-flex; align-items: center; gap: 8px;
    padding: 10px 16px; border-radius: 9px;
    font-size: 13.5px; font-weight: 600; color: var(--text-light);
    transition: background var(--transition-fast), color var(--transition-fast);
}
.uyep-nav-link i { font-size: 13px; }
.uyep-nav-link:hover { background: var(--bg-alt); color: var(--primary); }
.uyep-nav-link.aktif { background: var(--primary); color: var(--white); }
.uyep-nav-cikis { color: var(--danger); }
.uyep-nav-cikis:hover { background: #FDECEC; color: var(--danger); }

/* Bildirimler */
.uyep-uyari {
    display: flex; align-items: flex-start; gap: 10px;
    border-radius: var(--radius-lg); padding: 13px 17px;
    font-size: 14px; line-height: 1.55; margin-bottom: 20px; text-align: start;
}
.uyep-uyari i { flex-shrink: 0; margin-top: 2px; }
.uyep-uyari-ok { background: #EAF7F0; color: var(--success); border: 1px solid rgba(5, 150, 105, .18); }
.uyep-uyari-hata { background: #FDECEC; color: var(--danger); border: 1px solid rgba(220, 38, 38, .18); }

/* Giris / sifre kartlari */
.uyep-giris-kart {
    max-width: 460px; margin: 0 auto; text-align: center;
    background: var(--white); border: 1px solid var(--border); border-radius: var(--radius-xl);
    padding: 38px 34px; box-shadow: var(--shadow);
}
.uyep-giris-ikon {
    width: 64px; height: 64px; margin: 0 auto 16px;
    display: flex; align-items: center; justify-content: center;
    border-radius: 18px; font-size: 26px; color: var(--secondary);
    background: linear-gradient(150deg, var(--primary) 0%, var(--primary-dark) 100%);
}
.uyep-giris-ikon.uyep-ikon-hata { background: #FDECEC; color: var(--danger); }
.uyep-giris-kart h2 { font-family: var(--font-heading); font-size: 24px; color: var(--primary); margin-bottom: 8px; }
.uyep-giris-not { font-size: 14px; color: var(--text-light); line-height: 1.65; margin-bottom: 22px; }
.uyep-giris-alt {
    display: flex; flex-direction: column; gap: 9px; margin-top: 20px;
    padding-top: 18px; border-top: 1px dashed var(--border);
}
.uyep-giris-alt a {
    display: inline-flex; align-items: center; justify-content: center; gap: 8px;
    font-size: 13.5px; font-weight: 600; color: var(--primary-light); transition: color var(--transition-fast);
}
.uyep-giris-alt a i { font-size: 12px; color: var(--secondary-dark); }
.uyep-giris-alt a:hover { color: var(--secondary-dark); }

/* Form ogeleri */
.uyep-form { text-align: start; }
.uyep-alan { margin-bottom: 16px; }
.uyep-alan label { display: block; font-size: 13.5px; font-weight: 600; margin-bottom: 7px; color: var(--text); }
.uyep-zorunlu { color: var(--danger); }
.uyep-alan input, .uyep-alan textarea, .uyep-alan select {
    width: 100%; padding: 11px 14px; border: 1.5px solid var(--border); border-radius: 9px;
    font-size: 14.5px; font-family: inherit; background: var(--white); color: var(--text);
    transition: border-color var(--transition-fast), box-shadow var(--transition-fast);
}
.uyep-alan textarea { resize: vertical; line-height: 1.6; }
.uyep-alan input:focus, .uyep-alan textarea:focus, .uyep-alan select:focus {
    outline: none; border-color: var(--primary); box-shadow: 0 0 0 4px rgba(27, 58, 92, .08);
}
.uyep-alan-hata { display: block; margin-top: 6px; font-size: 12.5px; color: var(--danger); }
.uyep-secim { position: relative; }
.uyep-secim select { appearance: none; -webkit-appearance: none; padding-inline-end: 40px; cursor: pointer; }
.uyep-secim > i {
    position: absolute; top: 50%; inset-inline-end: 15px; transform: translateY(-50%);
    pointer-events: none; font-size: 12px; color: var(--secondary-dark);
}
.uyep-form-yatay { display: grid; grid-template-columns: 250px 1fr auto; gap: 16px 18px; align-items: end; }
.uyep-form-yatay .uyep-alan { margin-bottom: 0; }
.uyep-form-yatay .uyep-btn { margin-bottom: 2px; }
.uyep-alan-genis { min-width: 0; }

/* Dugmeler */
.uyep-btn {
    display: inline-flex; align-items: center; justify-content: center; gap: 9px;
    padding: 12px 22px; border: 1.5px solid transparent; border-radius: 10px;
    font-size: 14.5px; font-weight: 600; font-family: inherit; line-height: 1.2;
    cursor: pointer; text-decoration: none; white-space: nowrap;
    transition: background var(--transition-fast), color var(--transition-fast), border-color var(--transition-fast);
}
.uyep-btn-ana { background: var(--primary); color: var(--white); }
.uyep-btn-ana:hover { background: var(--primary-dark); color: var(--white); }
.uyep-btn-sade { background: var(--white); border-color: var(--border); color: var(--text-light); }
.uyep-btn-sade:hover { border-color: var(--primary); color: var(--primary); }
.uyep-btn-kirmizi { background: #FDECEC; border-color: rgba(220, 38, 38, .2); color: var(--danger); }
.uyep-btn-kirmizi:hover { background: var(--danger); border-color: var(--danger); color: var(--white); }
.uyep-btn-kucuk { padding: 8px 14px; font-size: 12.5px; border-radius: 8px; }
.uyep-btn-blok { width: 100%; }

/* Kucuk bilgilendirme notu */
.uyep-mini-not {
    display: block; margin-top: 16px; padding: 11px 14px;
    background: var(--bg-alt); border-radius: 10px;
    font-size: 12.5px; color: var(--text-light); line-height: 1.6; text-align: start;
}
.uyep-mini-not i { color: var(--secondary-dark); margin-inline-end: 5px; }
.uyep-mini-not a { color: var(--primary-light); font-weight: 600; text-decoration: underline; text-underline-offset: 2px; }
.uyep-mini-not a:hover { color: var(--secondary-dark); }

/* Panel: karsilama + ozet kartlar + hizli islemler */
.uyep-hosgeldin { margin-bottom: 22px; }
.uyep-hosgeldin h2 { font-family: var(--font-heading); font-size: clamp(21px, 2.4vw, 27px); color: var(--primary); font-weight: 500; }
.uyep-hosgeldin h2 strong { font-weight: 700; }
.uyep-hosgeldin p { margin-top: 6px; font-size: 14.5px; color: var(--text-light); line-height: 1.6; }
.uyep-statlar { display: grid; grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); gap: 14px; margin-bottom: 34px; }
.uyep-stat {
    display: flex; align-items: center; gap: 14px;
    background: var(--white); border: 1px solid var(--border); border-radius: var(--radius-lg);
    padding: 18px 20px; box-shadow: var(--shadow-sm);
    transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}
.uyep-stat:hover { transform: translateY(-2px); border-color: var(--secondary); box-shadow: var(--shadow); }
.uyep-stat-ikon {
    width: 46px; height: 46px; flex-shrink: 0;
    display: flex; align-items: center; justify-content: center;
    border-radius: 13px; font-size: 19px;
    background: rgba(27, 58, 92, .08); color: var(--primary);
}
.uyep-stat-ikon.uyep-stat-yesil { background: #EAF7F0; color: var(--success); }
.uyep-stat-ikon.uyep-stat-altin { background: #F6EFDA; color: var(--secondary-dark); }
.uyep-stat > div { min-width: 0; }
.uyep-stat strong { display: block; font-size: 24px; color: var(--primary); line-height: 1.2; font-variant-numeric: tabular-nums; }
.uyep-stat strong.uyep-stat-metin { font-size: 14.5px; line-height: 1.4; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.uyep-stat span { display: block; margin-top: 2px; font-size: 12.5px; color: var(--text-light); }
.uyep-bolum-baslik {
    display: flex; align-items: center; gap: 10px;
    font-family: var(--font-heading); font-size: 19px; color: var(--primary);
    margin: 0 0 14px; padding-bottom: 9px; border-bottom: 2px solid var(--secondary);
}
.uyep-bolum-baslik i { font-size: 15px; color: var(--secondary-dark); }
.uyep-bolum-sayi {
    margin-inline-start: 2px; font-family: var(--font-main); font-size: 12px; font-weight: 700;
    background: var(--primary); color: var(--white); border-radius: 999px; padding: 3px 10px;
}
.uyep-hizli { display: grid; grid-template-columns: repeat(auto-fit, minmax(250px, 1fr)); gap: 14px; margin-bottom: 34px; }
.uyep-hizli-kart {
    display: block; background: var(--white); border: 1px solid var(--border);
    border-radius: var(--radius-lg); padding: 20px; box-shadow: var(--shadow-sm);
    transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}
a.uyep-hizli-kart:hover { transform: translateY(-2px); border-color: var(--secondary); box-shadow: var(--shadow); }
.uyep-hizli-kart > i { font-size: 22px; color: var(--secondary-dark); margin-bottom: 12px; display: block; }
.uyep-hizli-kart strong { display: block; font-size: 15.5px; font-weight: 700; color: var(--primary); margin-bottom: 5px; }
.uyep-hizli-kart span { display: block; font-size: 13px; color: var(--text-light); line-height: 1.6; }
.uyep-tobb-linkler { display: flex; flex-direction: column; gap: 7px; margin-top: 13px; padding-top: 13px; border-top: 1px dashed var(--border); }
.uyep-tobb-linkler a {
    display: inline-flex; align-items: center; gap: 8px;
    font-size: 13px; font-weight: 600; color: var(--primary-light); transition: color var(--transition-fast);
}
.uyep-tobb-linkler a i { font-size: 12px; color: var(--secondary-dark); }
.uyep-tobb-linkler a:hover { color: var(--secondary-dark); }

/* Kartlar ve listeler */
.uyep-kart {
    background: var(--white); border: 1px solid var(--border); border-radius: var(--radius-lg);
    padding: 24px 26px; margin-bottom: 22px; box-shadow: var(--shadow-sm);
}
.uyep-kart-baslik {
    display: flex; align-items: center; gap: 10px;
    font-size: 16.5px; font-weight: 700; color: var(--primary); margin-bottom: 8px;
}
.uyep-kart-baslik i { color: var(--secondary-dark); font-size: 15px; }
.uyep-kart-not { font-size: 13.5px; color: var(--text-light); line-height: 1.65; margin-bottom: 18px; }
.uyep-kart-alt { margin-top: 16px; padding-top: 16px; border-top: 1px dashed var(--border); text-align: end; }
.uyep-liste { display: flex; flex-direction: column; }
.uyep-liste-satir {
    display: flex; align-items: center; justify-content: space-between; gap: 16px;
    padding: 15px 2px; border-bottom: 1px solid var(--bg-alt);
}
.uyep-liste-satir:first-child { padding-top: 4px; }
.uyep-liste-satir:last-child { border-bottom: none; padding-bottom: 4px; }
.uyep-liste-ana { display: flex; align-items: flex-start; gap: 13px; min-width: 0; }
.uyep-liste-ana > i {
    width: 38px; height: 38px; flex-shrink: 0;
    display: flex; align-items: center; justify-content: center;
    border-radius: 10px; background: var(--bg-alt); color: var(--primary-light); font-size: 15px;
}
.uyep-liste-ana strong { display: block; font-size: 14.5px; font-weight: 600; color: var(--text); line-height: 1.4; }
.uyep-liste-ana small { display: block; margin-top: 3px; font-size: 12.5px; color: var(--text-light); line-height: 1.55; }
.uyep-liste-aciklama { color: var(--text-muted); }
.uyep-liste-yanit { color: var(--primary-light); }
.uyep-liste-yanit i, .uyep-liste-kod i { font-size: 11px; margin-inline-end: 3px; color: var(--secondary-dark); }
.uyep-liste-kod code {
    font-family: 'SF Mono', Menlo, Consolas, monospace; font-size: 12px;
    background: var(--bg-alt); border-radius: 6px; padding: 1px 7px; letter-spacing: .05em; color: var(--primary);
}
.uyep-liste-kod a { color: var(--primary-light); font-weight: 600; text-decoration: underline; text-underline-offset: 2px; }
.uyep-liste-kod a:hover { color: var(--secondary-dark); }
.uyep-liste-sag { display: flex; align-items: center; gap: 10px; flex-shrink: 0; flex-wrap: wrap; justify-content: flex-end; }

/* Durum rozetleri */
.uyep-rozet {
    display: inline-flex; align-items: center; gap: 5px;
    font-size: 12px; font-weight: 700; border-radius: 999px; padding: 4px 12px; line-height: 1.5; white-space: nowrap;
}
.uyep-rozet-altin { background: #F6EFDA; color: var(--secondary-dark); }
.uyep-rozet-mavi { background: #E3F1FB; color: var(--info); }
.uyep-rozet-yesil { background: #EAF7F0; color: var(--success); }
.uyep-rozet-kirmizi { background: #FDECEC; color: var(--danger); }
.uyep-rozet-gri { background: var(--bg-alt); color: var(--text-light); }

/* Bos durum */
.uyep-bos { text-align: center; padding: 44px 26px; }
.uyep-bos i { display: block; font-size: 38px; color: var(--text-muted); margin-bottom: 14px; }
.uyep-bos p { font-size: 14.5px; color: var(--text-light); line-height: 1.65; max-width: 480px; margin: 0 auto 6px; }
.uyep-bos .uyep-btn { margin-top: 14px; }

/* Profil */
.uyep-profil-duzen { display: grid; grid-template-columns: 1.25fr 1fr; gap: 20px; align-items: start; }
.uyep-bilgi-listesi { display: flex; flex-direction: column; }
.uyep-bilgi { padding: 11px 0; border-bottom: 1px solid var(--bg-alt); }
.uyep-bilgi:last-child { border-bottom: none; }
.uyep-bilgi small {
    display: block; font-size: 11px; font-weight: 700; letter-spacing: .07em;
    text-transform: uppercase; color: var(--text-muted); margin-bottom: 3px;
}
.uyep-bilgi span { font-size: 14.5px; color: var(--text); line-height: 1.55; word-break: break-word; }

/* Dogrulama sayfasi */
.uyep-dogrula-kart {
    max-width: 560px; margin: 0 auto; text-align: center;
    background: var(--white); border-radius: var(--radius-xl); padding: 40px 34px; box-shadow: var(--shadow);
}
.uyep-dogrula-ok { border: 1.5px solid rgba(5, 150, 105, .35); }
.uyep-dogrula-hata { border: 1.5px solid rgba(220, 38, 38, .3); }
.uyep-dogrula-ikon { font-size: 54px; margin-bottom: 14px; }
.uyep-dogrula-ok .uyep-dogrula-ikon { color: var(--success); }
.uyep-dogrula-hata .uyep-dogrula-ikon { color: var(--danger); }
.uyep-dogrula-kart h2 { font-family: var(--font-heading); font-size: 25px; color: var(--primary); margin-bottom: 10px; }
.uyep-dogrula-kart > p { font-size: 14.5px; color: var(--text-light); line-height: 1.7; margin-bottom: 22px; }
.uyep-dogrula-bilgi {
    text-align: start; border: 1px solid var(--border); border-radius: var(--radius-lg);
    padding: 6px 18px; margin-bottom: 6px;
}
.uyep-dogrula-bilgi code {
    font-family: 'SF Mono', Menlo, Consolas, monospace; font-size: 13px;
    background: var(--bg-alt); border-radius: 6px; padding: 2px 8px; letter-spacing: .05em; color: var(--primary);
}

/* RTL */
[dir="rtl"] .uyep-nav-link i, [dir="rtl"] .uyep-btn i { transform: scaleX(-1); }
[dir="rtl"] .uyep-nav-link .fa-gauge-high, [dir="rtl"] .uyep-nav-link .fa-building,
[dir="rtl"] .uyep-nav-link .fa-file-lines, [dir="rtl"] .uyep-nav-link .fa-list-check,
[dir="rtl"] .uyep-nav-link .fa-calendar-check { transform: none; }

/* Mobil */
@media (max-width: 860px) {
    .uyep-profil-duzen { grid-template-columns: 1fr; }
    .uyep-form-yatay { grid-template-columns: 1fr; align-items: stretch; }
    .uyep-form-yatay .uyep-btn { width: 100%; }
}
@media (max-width: 720px) {
    .uyep-section { padding: 30px 0 56px; }
    .uyep-nav { padding: 6px; }
    .uyep-nav-link { padding: 9px 12px; font-size: 12.5px; }
    .uyep-nav-link span { display: none; }
    .uyep-nav-link i { font-size: 15px; }
    .uyep-giris-kart { padding: 28px 20px; }
    .uyep-kart { padding: 18px 16px; }
    .uyep-liste-satir { flex-direction: column; align-items: flex-start; gap: 10px; }
    .uyep-liste-sag { justify-content: flex-start; }
    .uyep-dogrula-kart { padding: 30px 20px; }
}
@media (max-width: 560px) {
    .uye-giris-link span { display: none; }
    .uye-giris-link { padding: 5px 9px; }
}


/* ==========================================================================
   Sosyal Medya Hesapları sayfası
   ========================================================================== */
.sosyal-baslik {
    font-family: var(--font-heading);
    font-size: 26px;
    color: var(--primary);
    margin-bottom: 24px;
    padding-left: 16px;
    border-left: 4px solid var(--secondary);
}

.sosyal-baslik small {
    display: block;
    font-family: var(--font-main);
    font-size: 13.5px;
    font-weight: 500;
    color: var(--text-muted);
    letter-spacing: 0.02em;
    margin-top: 4px;
}

.sosyal-baslik-ikinci { margin-top: 56px; }

.sosyal-izgara {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(240px, 1fr));
    gap: 20px;
}

.sosyal-kart {
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 6px;
    padding: 28px 24px 24px;
    background: var(--white);
    border: 1px solid var(--border);
    border-radius: var(--radius-lg);
    box-shadow: var(--shadow-sm);
    overflow: hidden;
    transition: transform var(--transition), box-shadow var(--transition), border-color var(--transition);
}

/* Üstte marka renginde ince şerit */
.sosyal-kart::before {
    content: "";
    position: absolute;
    inset: 0 0 auto 0;
    height: 4px;
    background: var(--marka, var(--secondary));
    transform: scaleX(0);
    transform-origin: left;
    transition: transform var(--transition);
}

.sosyal-kart:hover {
    transform: translateY(-4px);
    box-shadow: var(--shadow-lg);
    border-color: transparent;
}

.sosyal-kart:hover::before { transform: scaleX(1); }

.sosyal-kart-ikon {
    width: 52px;
    height: 52px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 14px;
    font-size: 22px;
    color: var(--marka, var(--primary));
    background: color-mix(in srgb, var(--marka, var(--primary)) 10%, transparent);
    margin-bottom: 10px;
    transition: background var(--transition), color var(--transition);
}

.sosyal-kart:hover .sosyal-kart-ikon {
    background: var(--marka, var(--primary));
    color: var(--white);
}

.sosyal-kart-ad {
    font-weight: 700;
    font-size: 16px;
    color: var(--primary);
}

.sosyal-kart-kullanici {
    font-size: 13.5px;
    color: var(--text-muted);
    word-break: break-all;
}

.sosyal-kart-git {
    margin-top: 12px;
    font-size: 13px;
    font-weight: 600;
    color: var(--marka, var(--primary));
    display: inline-flex;
    align-items: center;
    gap: 6px;
}

.sosyal-kart-git i { transition: transform var(--transition-fast); }
.sosyal-kart:hover .sosyal-kart-git i { transform: translateX(4px); }

@media (max-width: 600px) {
    .sosyal-izgara { grid-template-columns: 1fr 1fr; gap: 14px; }
    .sosyal-kart { padding: 20px 16px; }
    .sosyal-kart-ikon { width: 44px; height: 44px; font-size: 19px; }
}

/* ==========================================================================
   Açılış animasyonu (preloader) — panelden aç/kapa
   Perde animasyonla kendi kendine kalkar; betik çalışmazsa da içerik görünür.
   ========================================================================== */
.preloader {
    position: fixed;
    inset: 0;
    z-index: 99999;
    display: flex;
    align-items: center;
    justify-content: center;
    background: linear-gradient(160deg, var(--primary) 0%, var(--primary-dark) 100%);
    animation: preloaderPerde 1.9s cubic-bezier(0.65, 0, 0.35, 1) forwards;
}

/* Betik yüklemeyi erken bitirdiğinde perdeyi hemen kaldırır */
.preloader.bitti { animation: preloaderCikis 0.55s cubic-bezier(0.65, 0, 0.35, 1) forwards; }

/* Sayfa geçişinde perde geri iner */
.preloader.geri {
    animation: preloaderGiris 0.35s ease forwards;
    pointer-events: all;
}

@keyframes preloaderPerde {
    0%, 72%  { opacity: 1; visibility: visible; }
    100%     { opacity: 0; visibility: hidden; transform: translateY(-14px); }
}

@keyframes preloaderCikis {
    from { opacity: 1; visibility: visible; }
    to   { opacity: 0; visibility: hidden; transform: translateY(-14px); }
}

@keyframes preloaderGiris {
    from { opacity: 0; visibility: visible; }
    to   { opacity: 1; visibility: visible; transform: none; }
}

.preloader-ic {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 20px;
}

.preloader-logo {
    position: relative;
    width: 132px;
    height: 132px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.preloader-logo img {
    width: 88px;
    height: 88px;
    object-fit: contain;
    animation: preloaderLogo 1.5s cubic-bezier(0.34, 1.56, 0.64, 1) both;
}

@keyframes preloaderLogo {
    0%   { opacity: 0; transform: scale(0.7); }
    45%  { opacity: 1; transform: scale(1.04); }
    100% { opacity: 1; transform: scale(1); }
}

/* Logonun çevresinde dönen altın yay */
.preloader-halka {
    position: absolute;
    inset: 0;
    border-radius: 50%;
    border: 2px solid rgba(255, 255, 255, 0.12);
    border-top-color: var(--secondary);
    border-right-color: var(--secondary);
    animation: preloaderDon 1.1s linear infinite;
}

@keyframes preloaderDon {
    to { transform: rotate(360deg); }
}

.preloader-yazi {
    text-align: center;
    color: var(--white);
    animation: preloaderYazi 0.9s ease 0.25s both;
}

.preloader-yazi strong {
    display: block;
    font-family: var(--font-heading);
    font-size: 27px;
    letter-spacing: 0.14em;
    line-height: 1.2;
}

.preloader-yazi span {
    display: block;
    margin-top: 4px;
    font-size: 12.5px;
    letter-spacing: 0.22em;
    text-transform: uppercase;
    color: var(--secondary);
}

@keyframes preloaderYazi {
    from { opacity: 0; transform: translateY(10px); }
    to   { opacity: 1; transform: none; }
}

.preloader-cizgi {
    width: 160px;
    height: 2px;
    border-radius: 2px;
    background: rgba(255, 255, 255, 0.12);
    overflow: hidden;
}

.preloader-cizgi i {
    display: block;
    width: 40%;
    height: 100%;
    border-radius: 2px;
    background: var(--secondary);
    animation: preloaderCizgi 1.15s ease-in-out infinite;
}

@keyframes preloaderCizgi {
    0%   { transform: translateX(-110%); }
    100% { transform: translateX(320%); }
}

/* Hareket azaltma tercihi: animasyon yok, perde anında kalkar */
@media (prefers-reduced-motion: reduce) {
    .preloader { animation: preloaderCikis 0.01s forwards; }
    .preloader-logo img,
    .preloader-halka,
    .preloader-yazi,
    .preloader-cizgi i { animation: none; }
}

/* ==========================================================================
   İhracatçı firma tablosu
   ========================================================================== */
.ihracat-sekme {
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
    margin-bottom: 22px;
    border-bottom: 1px solid var(--border);
}

.ihracat-sekme a {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 12px 20px;
    font-weight: 600;
    font-size: 14.5px;
    color: var(--text-light);
    border-bottom: 3px solid transparent;
    margin-bottom: -1px;
    transition: color var(--transition-fast), border-color var(--transition-fast);
}

.ihracat-sekme a span {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 26px;
    height: 22px;
    padding: 0 7px;
    border-radius: 11px;
    background: var(--bg-alt);
    font-size: 12px;
    color: var(--text-muted);
}

.ihracat-sekme a:hover { color: var(--primary); }

.ihracat-sekme a.aktif {
    color: var(--primary);
    border-bottom-color: var(--secondary);
}

.ihracat-sekme a.aktif span {
    background: var(--secondary);
    color: var(--white);
}

.ihracat-arama {
    display: flex;
    gap: 10px;
    align-items: center;
    flex-wrap: wrap;
    margin-bottom: 18px;
}

.ihracat-arama-kutu {
    position: relative;
    flex: 1 1 320px;
}

.ihracat-arama-kutu i {
    position: absolute;
    top: 50%;
    left: 15px;
    transform: translateY(-50%);
    color: var(--text-muted);
    font-size: 14px;
}

.ihracat-arama-kutu input {
    width: 100%;
    height: 46px;
    padding: 0 16px 0 42px;
    border: 1px solid var(--border);
    border-radius: var(--radius);
    background: var(--white);
    font-family: var(--font-main);
    font-size: 14.5px;
    color: var(--text);
    transition: border-color var(--transition-fast);
}

.ihracat-arama-kutu input:focus {
    outline: none;
    border-color: var(--primary-light);
}

.ihracat-temizle {
    font-size: 13.5px;
    color: var(--text-muted);
    text-decoration: underline;
}

.ihracat-ozet {
    margin-bottom: 12px;
    font-size: 14px;
    color: var(--text-light);
}

.ihracat-ozet strong { color: var(--primary); }

.ihracat-bos {
    padding: 40px 20px;
    text-align: center;
    color: var(--text-muted);
    background: var(--bg-alt);
    border-radius: var(--radius-lg);
}

/* Geniş tablolar dar ekranda sayfayı değil kendi kutusunu kaydırır */
.tablo-sarmal {
    overflow-x: auto;
    border: 1px solid var(--border);
    border-radius: var(--radius-lg);
    background: var(--white);
}

.ihracat-tablo {
    width: 100%;
    border-collapse: collapse;
    font-size: 14px;
    min-width: 720px;
}

.ihracat-tablo th {
    padding: 14px 16px;
    text-align: left;
    font-size: 12.5px;
    font-weight: 700;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    color: var(--white);
    background: var(--primary);
    white-space: nowrap;
}

.ihracat-tablo td {
    padding: 13px 16px;
    border-top: 1px solid var(--border);
    color: var(--text);
    vertical-align: top;
}

.ihracat-tablo tbody tr:nth-child(even) { background: var(--bg); }
.ihracat-tablo tbody tr:hover { background: var(--bg-alt); }

.ihracat-tablo .sut-no {
    width: 56px;
    color: var(--text-muted);
    font-variant-numeric: tabular-nums;
}

.ihracat-tablo .sut-firma { font-weight: 600; color: var(--primary); }

.ihracat-tablo .sut-iletisim a {
    display: block;
    font-size: 13px;
    color: var(--text-light);
    margin-bottom: 3px;
}

.ihracat-tablo .sut-iletisim a:hover { color: var(--primary); }
.ihracat-tablo .sut-iletisim i { width: 15px; color: var(--secondary); }

@media (max-width: 768px) {
    .ihracat-sekme a { padding: 10px 14px; font-size: 13.5px; }
    .ihracat-tablo { font-size: 13px; }
    .ihracat-tablo th, .ihracat-tablo td { padding: 11px 12px; }
}

/* ==========================================================================
   Yayın türü sekmeleri + e-dergi okuyucusu
   ========================================================================== */
.yayin-turler {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(178px, 1fr));
    gap: 12px;
    margin-bottom: 34px;
}

.yayin-tur {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 6px;
    padding: 16px 18px;
    background: var(--white);
    border: 1px solid var(--border);
    border-radius: var(--radius-lg);
    transition: all var(--transition);
}

.yayin-tur i { font-size: 19px; color: var(--secondary); }
.yayin-tur span { font-weight: 600; font-size: 14px; color: var(--primary); line-height: 1.35; }
.yayin-tur em {
    font-style: normal;
    font-size: 12.5px;
    color: var(--text-muted);
}

.yayin-tur:hover { border-color: var(--primary-light); transform: translateY(-2px); box-shadow: var(--shadow); }
.yayin-tur.aktif { background: var(--primary); border-color: var(--primary); }
.yayin-tur.aktif span { color: var(--white); }
.yayin-tur.aktif em { color: rgba(255,255,255,0.7); }
.yayin-tur.bos { opacity: 0.55; }

.dergi-kapak-yok {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    aspect-ratio: 3 / 4;
    background: var(--bg-alt);
    color: var(--text-muted);
    font-size: 44px;
}

/* --- Okuyucu --- */
.okuyucu {
    display: flex;
    flex-direction: column;
    height: calc(100vh - var(--header-height));
    min-height: 560px;
    background: linear-gradient(170deg, #16283D 0%, #0E1B2A 100%);
}

.okuyucu:fullscreen { height: 100vh; }

.okuyucu-bar {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    padding: 12px 20px;
    background: rgba(255,255,255,0.04);
    border-bottom: 1px solid rgba(255,255,255,0.08);
}

.okuyucu-marka { display: flex; align-items: center; gap: 12px; min-width: 0; }
.okuyucu-marka img { flex: none; }

.okuyucu-marka strong {
    display: block;
    color: var(--white);
    font-size: 15px;
    font-weight: 600;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    max-width: 46vw;
}

.okuyucu-marka span {
    display: block;
    font-size: 12px;
    color: var(--secondary);
    letter-spacing: 0.05em;
    text-transform: uppercase;
}

.okuyucu-araclar { display: flex; gap: 8px; flex: none; }

.ok-btn {
    width: 38px;
    height: 38px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 1px solid rgba(255,255,255,0.14);
    border-radius: var(--radius);
    background: rgba(255,255,255,0.05);
    color: rgba(255,255,255,0.75);
    font-size: 14px;
    cursor: pointer;
    transition: all var(--transition-fast);
}

.ok-btn:hover { background: var(--secondary); border-color: var(--secondary); color: var(--white); }
.ok-btn-kapat:hover { background: var(--danger); border-color: var(--danger); }

.okuyucu-sahne {
    position: relative;
    flex: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 20px 60px;
    overflow: hidden;
}

.okuyucu-kitap {
    display: flex;
    align-items: stretch;
    justify-content: center;
    gap: 0;
    perspective: 2200px;
    max-height: 100%;
}

.ok-yaprak {
    background: var(--white);
    box-shadow: 0 18px 50px rgba(0,0,0,0.45);
    line-height: 0;
    cursor: pointer;
    backface-visibility: hidden;
}

.ok-yaprak canvas { display: block; max-height: 100%; }
.ok-sol { border-radius: 3px 0 0 3px; }
.ok-sag { border-radius: 0 3px 3px 0; }
.ok-tek { border-radius: 3px; }

/* Kitap sırtı: iki sayfa arasındaki gölge */
.ok-sol { box-shadow: 0 18px 50px rgba(0,0,0,0.45), inset -14px 0 22px -18px rgba(0,0,0,0.6); }
.ok-sag { box-shadow: 0 18px 50px rgba(0,0,0,0.45), inset 14px 0 22px -18px rgba(0,0,0,0.6); }

/* ── Sayfa çevirme ──────────────────────────────────────────────────────────
   Giden yaprağın kopyası kitabın üstüne konur ve KENDİ OMURGASINDAN döner;
   altından yeni sayfa çıkar. Önceki sürüm iki yaprağa da aynı yön sınıfını
   verdiği için sol ve sağ sayfa aynı yöne kayıyor, kitap açılmıyordu. */
.ok-cevrilen {
    position: absolute;
    top: 0;
    z-index: 5;
    pointer-events: none;
    transition: transform 0.62s cubic-bezier(0.36, 0.06, 0.2, 1),
                box-shadow 0.62s ease;
    backface-visibility: hidden;
}

/* İleri: sağdaki yaprak sol omurgasından sola döner */
.ok-cevir-ileri {
    right: 0;
    transform-origin: left center;
}
.ok-cevir-ileri.ok-cevrildi {
    transform: rotateY(-172deg);
    box-shadow: -30px 18px 60px rgba(0, 0, 0, 0.5);
}

/* Geri: soldaki yaprak sağ omurgasından sağa döner */
.ok-cevir-geri {
    left: 0;
    transform-origin: right center;
}
.ok-cevir-geri.ok-cevrildi {
    transform: rotateY(172deg);
    box-shadow: 30px 18px 60px rgba(0, 0, 0, 0.5);
}

/* Tek sayfa (mobil) modunda omurga ortadadır */
.okuyucu-kitap:not(.ok-cift) .ok-cevir-ileri { right: auto; left: 0; }
.okuyucu-kitap:not(.ok-cift) .ok-cevir-geri { left: auto; right: 0; }

.okuyucu-kitap { position: relative; transition: transform 0.15s ease-out; }
.okuyucu-kitap.ok-yakin { cursor: grab; }
.okuyucu-kitap.ok-yakin .ok-yaprak { cursor: grab; }

@media (prefers-reduced-motion: reduce) {
    .ok-cevrilen { display: none; }
}

.ok-ok {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 44px;
    height: 44px;
    display: flex;
    align-items: center;
    justify-content: center;
    border: none;
    border-radius: 50%;
    background: rgba(255,255,255,0.1);
    color: var(--white);
    font-size: 16px;
    cursor: pointer;
    transition: background var(--transition-fast);
    z-index: 2;
}

.ok-ok:hover { background: var(--secondary); }
.ok-ok-sol { left: 12px; }
.ok-ok-sag { right: 12px; }

.ok-yukleniyor {
    position: absolute;
    inset: 0;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 14px;
    color: rgba(255,255,255,0.75);
    font-size: 14px;
    font-style: normal;
    background: inherit;
}

.ok-yukleniyor.gizli { display: none; }

.ok-spin {
    width: 34px;
    height: 34px;
    border-radius: 50%;
    border: 3px solid rgba(255,255,255,0.15);
    border-top-color: var(--secondary);
    animation: preloaderDon 0.9s linear infinite;
}

.ok-noscript {
    max-width: 320px;
    padding: 24px;
    text-align: center;
    color: var(--white);
    line-height: 1.6;
}

.ok-noscript img { max-width: 200px; margin-bottom: 16px; }

.okuyucu-alt {
    display: flex;
    align-items: center;
    gap: 18px;
    padding: 12px 24px;
    background: rgba(0,0,0,0.22);
    border-top: 1px solid rgba(255,255,255,0.07);
}

.ok-sayfa-bilgi {
    flex: none;
    min-width: 92px;
    color: var(--white);
    font-size: 13.5px;
    font-variant-numeric: tabular-nums;
}

.ok-sayfa-bilgi span:first-child { color: var(--secondary); font-weight: 700; }

#okKaydirac {
    flex: 1;
    height: 4px;
    accent-color: var(--secondary);
    cursor: pointer;
}

.ok-ipucu {
    flex: none;
    font-size: 12.5px;
    color: rgba(255,255,255,0.45);
}

@media (max-width: 900px) {
    .okuyucu { height: calc(100vh - 60px); }
    .okuyucu-sahne { padding: 12px 44px; }
    .ok-ipucu { display: none; }
    .okuyucu-marka strong { max-width: 40vw; }
}

/* ==========================================================================
   Bülten formu (altbilgi) + doğrulama sayfası
   ========================================================================== */
/* Rıza satırı yuvarlak kutunun dışında kalmalı: kapsayıcı sade,
   yuvarlak çerçeve yalnızca alanları saran satıra uygulanır. */
.bulten-form.footer-cta-form {
    display: block;
    background: none;
    border: none;
    border-radius: 0;
    overflow: visible;
    min-width: 420px;
}

.bulten-form.footer-cta-form:focus-within { border-color: transparent; }

.bulten-alanlar {
    display: flex;
    background: rgba(255, 255, 255, 0.1);
    border: 1px solid rgba(255, 255, 255, 0.15);
    border-radius: 50px;
    overflow: hidden;
    transition: border-color var(--transition-fast);
}

.bulten-alanlar:focus-within { border-color: var(--secondary); }

.bulten-alanlar input { flex: 1 1 0; min-width: 0; }
.bulten-alanlar button { flex: none; }

.bulten-riza {
    display: flex;
    align-items: flex-start;
    gap: 9px;
    margin-top: 12px;
    font-size: 12.5px;
    line-height: 1.55;
    color: rgba(255, 255, 255, 0.7);
    cursor: pointer;
}

.bulten-riza input {
    flex: none;
    width: 16px;
    height: 16px;
    margin-top: 2px;
    accent-color: var(--secondary);
    cursor: pointer;
}

.bulten-riza a {
    color: var(--secondary);
    text-decoration: underline;
}

/* --- Doğrulama / çıkış kartı --- */
.dogrula-kart {
    max-width: 480px;
    margin: 0 auto;
    padding: 40px 32px;
    background: var(--white);
    border: 1px solid var(--border);
    border-radius: var(--radius-xl);
    box-shadow: var(--shadow);
    text-align: center;
}

.dogrula-ikon {
    width: 68px;
    height: 68px;
    margin: 0 auto 20px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: color-mix(in srgb, var(--primary) 8%, transparent);
    color: var(--primary);
    font-size: 27px;
}

.dogrula-ikon-yesil { background: color-mix(in srgb, var(--success) 10%, transparent); color: var(--success); }
.dogrula-ikon-kirmizi { background: color-mix(in srgb, var(--danger) 10%, transparent); color: var(--danger); }

.dogrula-aciklama {
    color: var(--text);
    line-height: 1.65;
    margin-bottom: 22px;
}

.dogrula-aciklama strong { color: var(--primary); }

.dogrula-uyari {
    padding: 11px 14px;
    margin-bottom: 18px;
    border-radius: var(--radius);
    background: color-mix(in srgb, var(--danger) 8%, transparent);
    color: var(--danger);
    font-size: 13.5px;
}

.dogrula-form {
    display: flex;
    flex-direction: column;
    gap: 12px;
    align-items: center;
}

.dogrula-form input {
    width: 220px;
    height: 58px;
    padding: 0 16px;
    border: 1px solid var(--border);
    border-radius: var(--radius);
    font-family: var(--font-main);
    font-size: 26px;
    font-weight: 700;
    letter-spacing: 0.32em;
    text-align: center;
    color: var(--primary);
}

.dogrula-form input:focus {
    outline: none;
    border-color: var(--primary-light);
}

.dogrula-not {
    margin-top: 20px;
    font-size: 13px;
    color: var(--text-muted);
    line-height: 1.6;
}

@media (max-width: 640px) {
    .bulten-form.footer-cta-form { min-width: 0; width: 100%; }
    .bulten-alanlar {
        flex-direction: column;
        border-radius: var(--radius-lg);
    }
    .bulten-alanlar input { width: 100%; }
    .bulten-alanlar button { width: 100%; border-radius: 0 0 var(--radius-lg) var(--radius-lg); }
    .dogrula-kart { padding: 30px 20px; }
}

/* Firma rehberi süzgeç açılır listeleri */
.ihracat-suzgec {
    flex: 0 1 190px;
    height: 46px;
    padding: 0 14px;
    border: 1px solid var(--border);
    border-radius: var(--radius);
    background: var(--white);
    font-family: var(--font-main);
    font-size: 14px;
    color: var(--text);
    cursor: pointer;
}

.ihracat-suzgec:focus { outline: none; border-color: var(--primary-light); }

@media (max-width: 640px) {
    .ihracat-suzgec { flex: 1 1 100%; }
}

/* ==========================================================================
   Paylaş şeridi (templates/parca/paylas.php)
   Marka rengi --marka değişkeniyle gelir; sabit renk yazılmaz.
   ========================================================================== */
.paylas {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 10px 14px;
    margin-top: 28px;
    padding: 16px 0;
    border-top: 1px solid var(--border);
}

.paylas-etiket {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    font-size: 14px;
    font-weight: 600;
    color: var(--text);
}

.paylas-etiket i { color: var(--secondary-dark); }

.paylas-baglantilar {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 8px;
}

.paylas-btn {
    width: 38px;
    height: 38px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    border: 1px solid var(--border);
    background: var(--bg);
    color: var(--text-light);
    font-size: 15px;
    line-height: 1;
    cursor: pointer;
    text-decoration: none;
    transition: background var(--transition-fast), color var(--transition-fast), border-color var(--transition-fast), transform var(--transition-fast);
}

.paylas-btn:hover,
.paylas-btn:focus-visible {
    background: var(--marka, var(--primary));
    border-color: var(--marka, var(--primary));
    color: var(--white);
    transform: translateY(-2px);
}

.paylas-btn:focus-visible {
    outline: 2px solid var(--secondary);
    outline-offset: 2px;
}

.paylas-btn[hidden] { display: none; }

.paylas-bildirim {
    font-size: 13px;
    font-weight: 600;
    color: var(--success);
    opacity: 0;
    transition: opacity var(--transition-fast);
}

.paylas-bildirim.gorunur { opacity: 1; }

/* Koyu zeminli sayfalar (e-dergi okuyucusu altı) */
.paylas-koyu {
    border-top-color: rgba(255, 255, 255, 0.12);
}

.paylas-koyu .paylas-etiket { color: rgba(255, 255, 255, 0.88); }
.paylas-koyu .paylas-etiket i { color: var(--secondary); }

.paylas-koyu .paylas-btn {
    background: rgba(255, 255, 255, 0.07);
    border-color: rgba(255, 255, 255, 0.16);
    color: rgba(255, 255, 255, 0.82);
}

.paylas-koyu .paylas-bildirim { color: var(--secondary-light); }

/* Okuyucunun altındaki paylaş bandı — okuyucu düzenine dokunmaz */
.yayin-paylas-serit {
    background: var(--primary-dark);
    padding: 4px 0 10px;
}

.yayin-paylas-serit .paylas { margin-top: 0; }

@media (max-width: 640px) {
    .paylas { gap: 8px 10px; }
    .paylas-btn { width: 36px; height: 36px; font-size: 14px; }
}

/* ==========================================================================
   MOBİL QA DÜZELTMELERİ (390x844 iPhone / 768x1024 tablet)
   Bu blok yalnızca dar ekranlarda devreye girer; masaüstü görünüm değişmez.
   Amaç: (a) dokunma hedeflerini en az 40x40 px yapmak,
         (b) gövde metnini 15 px altına düşürmemek,
         (c) geniş tablonun kendi kutusunda kaydığını kullanıcıya göstermek.
   Mevcut kurallar değiştirilmedi; hepsi buradan ezilir.
   ========================================================================== */

@media (max-width: 768px) {

    /* ---- 1) Dokunma hedefleri: parmak ucu ~9 mm, 40 px altı ıskalanıyor ---- */

    /* Başlık çubuğu: arama + hamburger + kenar çubuğu kapatma */
    .header-search-btn,
    .mobile-menu-btn {
        width: 42px;
        height: 42px;
    }

    .mobile-close {
        width: 42px;
        height: 42px;
        font-size: 17px;
    }

    /* Kenar çubuğu dil seçimi ve alt menü bağlantıları 30-33 px kalıyordu */
    .mobile-dil-secim a {
        min-height: 42px;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        padding: 0 4px;
    }

    .mobile-sub-menu li a {
        min-height: 42px;
        padding-top: 0;
        padding-bottom: 0;
        font-size: 13.5px;
    }

    /* Sayfalama: mobilde 34 px'e küçültülmüştü, 40 px'e geri alındı.
       min-width 40 yerine 40 px sabit yükseklik + dar yatay dolgu ile
       satıra sığması korunur. */
    .sayfalama-link {
        min-width: 40px;
        height: 40px;
        padding: 0 8px;
        font-size: 14px;
    }

    /* Paylaş şeridi düğmeleri (yeni bileşen) 36 px doğuyordu */
    .paylas-btn {
        width: 42px;
        height: 42px;
        font-size: 15px;
    }

    /* Süzgeç hapları: 39 px ile eşikten 1 px aşağıdaydı */
    .duyuru-sekme,
    .kariyer-pill,
    .ihracat-sekme a {
        min-height: 42px;
        font-size: 15px;
    }

    /* Manşet kaydırıcısı ok ve noktaları */
    .hero-arrow {
        width: 42px;
        height: 42px;
    }

    /* Noktalar görsel olarak küçük kalmalı; hedef alanı görünmez
       bir ::after katmanıyla büyütülür, tasarım değişmez. */
    .hero-dots { gap: 12px; }

    .hero-dot {
        position: relative;
    }

    .hero-dot::after {
        content: '';
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
        width: 40px;
        height: 40px;
    }

    /* Personel kartlarındaki telefon/e-posta bağlantıları 29 px idi */
    .personel-tel,
    .personel-email {
        min-height: 40px;
        align-items: center;
    }

    /* Alt bilgi bağlantıları 18-19 px yükseklikteydi */
    .footer-contact a,
    .footer-contact li {
        min-height: 40px;
        display: flex;
        align-items: center;
    }

    .footer-bottom-links a {
        display: inline-flex;
        align-items: center;
        min-height: 40px;
    }

    /* Satır içi metin bağlantıları (KVKK onayı, kırıntı yolu):
       blok yapmak cümleyi bozar; satır içi dolgu satır kutusunu
       büyütmeden tıklama alanını genişletir. */
    .bulten-riza a,
    .form-check label a,
    .banner-yolu a {
        padding: 9px 3px;
        margin: -9px -3px;
    }

    /* Formlardaki gönder düğmeleri 38-39 px doğuyordu */
    .btn {
        min-height: 44px;
    }

    /* E-dergi okuyucu araç çubuğu.
       40 px'e çıkınca 5 düğme + marka adı 390 px'e sığsın diye
       marka genişliği kısılır ve boşluk daraltılır. */
    .okuyucu-araclar { gap: 6px; }

    .ok-btn {
        width: 40px;
        height: 40px;
    }

    .okuyucu-marka { max-width: 34vw; }


    /* ---- 2) Okunabilirlik: gövde metni 15 px altına inmemeli ---- */

    /* Süreç rehberi kart özetleri (92 kartta 14 px) */
    .srg-kart p { font-size: 15px; line-height: 1.6; }

    /* Anasayfa duyuru paneli / gündem kartları / manşet özeti */
    .dp-baslik,
    .gundem-kart-baslik,
    .manset-ozet { font-size: 15px; }

    /* İletişim sayfası: form etiketleri ve kart metinleri 13-14 px idi */
    .contact-card p,
    .contact-form-wrap > p,
    .form-group label,
    .form-check label { font-size: 15px; }

    /* Asistan balonu gövde metni */
    .kaysi-w-balon { font-size: 15px; }

    /* Altbilgi ve künye: gövde değil ama 10-12 px okunmuyordu */
    .footer-contact li,
    .footer-contact a { font-size: 13.5px; }

    .footer-bottom-inner p,
    .footer-bottom-links a { font-size: 13px; }

    .personel-unvan { font-size: 13px; }

    .quick-link-item span { font-size: 13px; }

    .stat-label { font-size: 14px; }

    .duyuru-page-date { font-size: 13px; }

    .kaysi-w-not { font-size: 12.5px; }


    /* ---- 3) Geniş firma tablosu ---- */

    /* Tablo zaten .tablo-sarmal içinde kendi kutusunda kayıyor (sayfa gövdesi
       kaymıyor). Sorun okunabilirlikti: mobilde 13 px'e düşürülmüştü. */
    .ihracat-tablo { font-size: 15px; }
    .ihracat-tablo th { font-size: 12.5px; }
    .ihracat-tablo th,
    .ihracat-tablo td { padding: 12px 14px; }
    .ihracat-tablo .sut-iletisim a { font-size: 14px; min-height: 30px; }

    /* Kaydırma ipucu.
       NEDEN kaydırma çubuğu, kenar gölgesi değil: satırların kendi arka planı
       opak (tek/çift satır renklendirmesi var), bu yüzden sarmalın arka planına
       konan gölge tablonun altında kalıp görünmüyor. Görünür ve kalıcı bir
       kaydırma çubuğu, tablonun sağa devam ettiğini şaşmaz biçimde belli eder. */
    .tablo-sarmal {
        -webkit-overflow-scrolling: touch;
        overscroll-behavior-x: contain;
        scrollbar-width: thin;
        scrollbar-color: var(--secondary) var(--bg);
    }

    .tablo-sarmal::-webkit-scrollbar { height: 9px; }
    .tablo-sarmal::-webkit-scrollbar-track { background: var(--bg); }

    .tablo-sarmal::-webkit-scrollbar-thumb {
        background: var(--secondary);
        border-radius: 5px;
    }
}

/* Çok dar ekranlar: haplar tek satıra sığmayınca yatayda kendi şeridinde
   kaysın, sayfa gövdesi kaymasın. */
@media (max-width: 480px) {
    .duyuru-sekmeler,
    .kariyer-filtre {
        flex-wrap: nowrap;
        overflow-x: auto;
        justify-content: flex-start;
        padding-bottom: 6px;
        -webkit-overflow-scrolling: touch;
        scrollbar-width: none;
    }

    .duyuru-sekmeler::-webkit-scrollbar,
    .kariyer-filtre::-webkit-scrollbar { display: none; }

    .duyuru-sekme,
    .kariyer-pill { flex: 0 0 auto; }
}

/* --- Mobil QA düzeltmeleri, 2. tur: kalan dokunma hedefleri --- */
@media (max-width: 768px) {

    /* Altbilgi gezinti bağlantıları 30 px yükseklikteydi (13 bağlantı) */
    .footer-links a {
        min-height: 42px;
        padding: 4px 0;
        font-size: 13.5px;
    }

    /* Sosyal medya ikonları: altbilgi 38 px, kenar çubuğu 36 px */
    .footer-social a,
    .mobile-social a {
        width: 42px;
        height: 42px;
    }

    /* Bülten kayıt düğmesi (altbilgi) 39 px doğuyordu */
    .bulten-alanlar button,
    .bulten-alanlar input {
        min-height: 46px;
    }

    /* Galeri ışık kutusu kontrolleri */
    .lightbox-close,
    .lightbox-arrow {
        width: 44px;
        height: 44px;
    }

    /* Hızlı erişim paneli ve asistan penceresi kapatma düğmeleri */
    .quick-nav-close,
    .kaysi-w-kapat {
        width: 40px;
        height: 40px;
    }

    /* Asistan hazır soru düğmeleri 31 px idi */
    .kaysi-w-oneri {
        min-height: 40px;
        font-size: 13.5px;
    }

    /* Tema anahtarı görsel olarak küçük bir renk şeridi; boyutunu
       büyütmek tasarımı bozar. Görünmez ::after katmanı ile yalnızca
       dokunma alanı 44 px'e çıkarılır. */
    .theme-btn {
        position: relative;
    }

    .theme-btn::after {
        content: '';
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
        width: 100%;
        min-width: 44px;
        height: 44px;
    }

    /* Kırıntı yolu ve çerez metnindeki satır içi bağlantılar */
    .cerez-metin a {
        padding: 9px 3px;
        margin: -9px -3px;
    }
}

/* ==========================================================================
   Masaüstü QA düzeltmeleri
   ========================================================================== */
/* Altbilgi bülten formunda e-posta ve cep telefonu alanları aynı yuvarlak
   kutu içinde, saydam zeminli ve kenarlıksız olduğu için tek bir alan gibi
   görünüyordu (iki yer tutucu metin yan yana okunuyordu). Alanlar yalnızca
   yan yana dizildiklerinde ince bir ayraçla ayrılır; 640px altında
   .bulten-alanlar dikey sütuna döndüğü için bu kural oraya uygulanmaz. */
@media (min-width: 641px) {
    .bulten-alanlar input + input {
        border-left: 1px solid rgba(255, 255, 255, 0.15);
    }
}

/* --- Mobil QA düzeltmeleri, 3. tur --- */
@media (max-width: 768px) {
    /* Sanayici tablosunun adres sütununda şablonda satır içi
       "font-size:13px" var (templates/firma/ihracatci.php).
       Satır içi stil normal kuralları ezdiği için mobilde okunabilirliği
       geri kazanmanın tek CSS yolu !important. Şablon düzenlenebildiğinde
       oradaki satır içi stil kaldırılıp bu kural da silinmeli. */
    .ihracat-tablo tbody td[style] {
        font-size: 15px !important;
    }

    /* Üye firma listesinde bu satır tarih değil, sicil/sektör bilgisi taşıyor */
    .duyuru-page-date { font-size: 14px; }
}

/* --- Mobil QA düzeltmeleri, 4. tur: liste başlıkları ve özet metinleri ---
   Bunlar sayfanın asıl içeriği (duyuru/firma/dergi/yan haber başlıkları);
   mobilde 12,5-14,5 px kalıyorlardı. --------------------------------------- */
@media (max-width: 768px) {

    /* Duyuru ve üye firma listesi: kart başlığı ve alt bilgi satırı.
       Üye firma listesinde alt satır tarih değil sicil/sektör bilgisidir. */
    .duyuru-page-item h3 { font-size: 15.5px; line-height: 1.45; }
    .duyuru-page-item .duyuru-page-date { font-size: 15px; }

    /* Dergi/yayın kartı: yayın adı ve "x sayfa · tarih" satırı */
    .dergi-kart strong { font-size: 15.5px; }
    .dergi-kart span { font-size: 13.5px; }

    /* Haber detayının yanındaki ilgili haber / duyuru başlıkları */
    .yan-haber strong,
    .yan-duyurular a strong { font-size: 15px; line-height: 1.45; }

    /* Boş liste bilgilendirme metni */
    .kariyer-bos p { font-size: 15px; }
}

/* Sanayici tablosunda adres hücresi — satır içi stil yerine sınıf
   (satır içi stil mobil okunabilirlik kuralını eziyordu). */
.ihracat-tablo .sut-adres {
    font-size: 13.5px;
    color: var(--text-light);
}

@media (max-width: 768px) {
    .ihracat-tablo .sut-adres { font-size: 15px; }
}

/* E-dergi okuyucusu ilk açılışta üst şerit + başlık kadar aşağıdan başlıyor;
   yalnız başlık yüksekliği düşülünce alt çubuk (sayfa sayacı, kaydıraç) perdenin
   altında kalıyordu. Üst şerit de düşülür — kaydırıldığında şerit yukarı gider ve
   yapışkan başlık altında okuyucu yine tam oturur. */
.okuyucu {
    height: calc(100vh - var(--header-height) - var(--top-bar-height));
}

.okuyucu:fullscreen { height: 100vh; }

@media (max-width: 900px) {
    .okuyucu { height: calc(100vh - 60px); }
}

/* ========================================
   MESLEK KOMİTELERİ (Ö6)
   Liste kartları + komite detay blokları.
   Üye kartları kurul modülünün .kurul-person sınıflarını yeniden kullanır.
   ======================================== */

.komite-arama {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 12px;
    margin-bottom: 26px;
}

.komite-arama-kutu {
    position: relative;
    flex: 1;
    min-width: 240px;
}

.komite-arama-kutu i {
    position: absolute;
    left: 16px;
    top: 50%;
    transform: translateY(-50%);
    color: var(--text-muted);
    pointer-events: none;
}

.komite-arama-kutu input {
    width: 100%;
    padding: 13px 16px 13px 42px;
    border: 1.5px solid var(--border);
    border-radius: var(--radius);
    font-size: 15px;
    font-family: inherit;
    color: var(--text);
    background: var(--white);
}

.komite-arama-kutu input:focus {
    outline: none;
    border-color: var(--primary-light);
}

.komite-temizle {
    color: var(--text-light);
    font-size: 14px;
    text-decoration: underline;
}

.komite-sayac {
    margin-left: auto;
    font-size: 14px;
    font-weight: 600;
    color: var(--text-light);
}

.komite-izgara {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
    gap: 20px;
}

.komite-kart {
    display: flex;
    flex-direction: column;
    gap: 8px;
    background: var(--white);
    border: 1px solid var(--border);
    border-top: 3px solid var(--secondary);
    border-radius: var(--radius-lg);
    padding: 22px 22px 18px;
    color: inherit;
    text-decoration: none;
    transition: transform .2s ease, box-shadow .2s ease;
}

.komite-kart:hover {
    transform: translateY(-4px);
    box-shadow: 0 12px 28px rgba(27, 58, 92, .12);
}

.komite-kart-ikon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 42px;
    height: 42px;
    border-radius: 10px;
    background: var(--bg-alt);
    color: var(--primary);
    font-size: 18px;
}

.komite-kart-ad {
    font-family: var(--font-heading);
    font-size: 19px;
    color: var(--primary);
    line-height: 1.3;
}

.komite-kart-sektor {
    font-size: 14.5px;
    color: var(--text);
    line-height: 1.5;
}

.komite-kart-nace {
    font-size: 12.5px;
    font-weight: 600;
    letter-spacing: .02em;
    color: var(--secondary-dark);
}

.komite-kart-alt {
    display: flex;
    flex-wrap: wrap;
    gap: 6px 16px;
    margin-top: auto;
    padding-top: 12px;
    border-top: 1px solid var(--border);
    font-size: 13px;
    color: var(--text-light);
}

.komite-kart-alt i { color: var(--text-muted); margin-right: 4px; }

.komite-kart-detay {
    font-size: 13.5px;
    font-weight: 700;
    color: var(--primary);
}

.komite-kart:hover .komite-kart-detay { color: var(--secondary-dark); }

.komite-kart-detay i {
    margin-left: 5px;
    transition: transform .2s ease;
}

.komite-kart:hover .komite-kart-detay i { transform: translateX(4px); }

.komite-bos {
    padding: 40px 0;
    text-align: center;
    color: var(--text-light);
}

/* --- Komite detayı --- */

.komite-geri {
    display: inline-block;
    margin-bottom: 20px;
    font-size: 14px;
    font-weight: 600;
    color: var(--primary);
}

.komite-geri i { margin-right: 6px; }

/* auto-fill: sektör/NACE girilmemiş komitede tek kutu sayfayı boydan boya
   germesin; boş sütun izleri korunur. */
.komite-ozet {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(190px, 1fr));
    gap: 16px;
    margin-bottom: 30px;
}

.komite-ozet-kutu {
    background: var(--white);
    border: 1px solid var(--border);
    border-left: 3px solid var(--secondary);
    border-radius: var(--radius);
    padding: 16px 18px;
}

.komite-ozet-kutu span {
    display: block;
    font-size: 12.5px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: .04em;
    color: var(--text-muted);
    margin-bottom: 5px;
}

.komite-ozet-kutu strong {
    font-size: 17px;
    color: var(--primary);
    line-height: 1.35;
}

.komite-blok { margin-bottom: 42px; }

.komite-blok > h2 {
    font-family: var(--font-heading);
    font-size: 24px;
    color: var(--primary);
    margin-bottom: 18px;
    padding-bottom: 10px;
    border-bottom: 2px solid var(--secondary);
}

.komite-blok > p {
    font-size: 15.5px;
    line-height: 1.75;
    color: var(--text);
    margin-bottom: 12px;
}

.komite-blok .kurul-featured { margin-bottom: 22px; }

/* Öne çıkan üye (başkan/sözcü) kurul kartındaki vurguyu alır */
.kurul-person.komite-one { border-top: 4px solid var(--secondary); }

.komite-toplanti-liste {
    list-style: none;
    display: flex;
    flex-direction: column;
    gap: 16px;
    padding: 0;
}

.komite-toplanti {
    background: var(--white);
    border: 1px solid var(--border);
    border-radius: var(--radius-lg);
    padding: 20px 22px;
}

.komite-toplanti-ust {
    display: flex;
    flex-wrap: wrap;
    align-items: baseline;
    gap: 8px 20px;
    padding-bottom: 12px;
    margin-bottom: 12px;
    border-bottom: 1px solid var(--border);
}

.komite-toplanti-ust strong {
    font-size: 16.5px;
    color: var(--primary);
}

.komite-toplanti-ust span {
    font-size: 13.5px;
    color: var(--text-light);
}

.komite-toplanti-ust i { color: var(--secondary-dark); margin-right: 5px; }

.komite-toplanti-alan + .komite-toplanti-alan { margin-top: 14px; }

.komite-toplanti-alan h3 {
    font-size: 13px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .04em;
    color: var(--text-muted);
    margin-bottom: 5px;
}

.komite-toplanti-alan p {
    font-size: 15px;
    line-height: 1.7;
    color: var(--text);
}

.komite-form-aciklama {
    font-size: 15px;
    color: var(--text-light);
    margin-bottom: 18px;
}

.komite-form {
    background: var(--white);
    border: 1px solid var(--border);
    border-radius: var(--radius-lg);
    padding: 24px;
}

.komite-uyari {
    border-radius: 10px;
    padding: 14px 18px;
    margin-bottom: 16px;
    font-size: 15px;
}

.komite-uyari-basarili { background: #E5F5EB; color: var(--success); }
.komite-uyari-hata { background: #FDEAEA; color: var(--danger); }

@media (max-width: 640px) {
    .komite-izgara { grid-template-columns: 1fr; }
    .komite-sayac { margin-left: 0; width: 100%; }
    .komite-form { padding: 18px; }
}

/* ==========================================================================
   Sosyal Duvar — anasayfa "Sosyal Medyada Biz" bölümü ve gönderi kartları
   Gönderi yoksa bölüm hiç basılmadığı için burada boş-durum stili yoktur.
   ========================================================================== */
.sosyal-bolum {
    padding: 70px 0;
    background: var(--bg-light, #f6f8fb);
}

.sosyal-bolum-bas {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 24px;
    flex-wrap: wrap;
    margin-bottom: 30px;
}

.sosyal-bolum-baslik h2 {
    font-family: var(--font-heading);
    font-size: 32px;
    color: var(--primary);
    margin: 6px 0 0;
}

.sosyal-bolum-hesaplar {
    display: flex;
    align-items: center;
    gap: 10px;
    flex-wrap: wrap;
}

.sosyal-bolum-hesaplar > a {
    width: 40px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    font-size: 16px;
    color: var(--marka, var(--primary));
    background: var(--white);
    border: 1px solid var(--border);
    transition: background var(--transition), color var(--transition), transform var(--transition);
}

.sosyal-bolum-hesaplar > a:hover {
    background: var(--marka, var(--primary));
    color: var(--white);
    transform: translateY(-2px);
}

/* Metin bağlantısı yuvarlak ikon kalıbının dışında kalır */
.sosyal-bolum-hesaplar .sosyal-bolum-tumu {
    width: auto;
    height: auto;
    border: none;
    background: transparent;
    border-radius: 0;
    gap: 7px;
    padding-left: 6px;
    font-size: 14px;
    font-weight: 600;
    color: var(--primary);
}

.sosyal-bolum-hesaplar .sosyal-bolum-tumu:hover {
    background: transparent;
    color: var(--secondary);
    transform: none;
}

/* Kart şeridi: masaüstünde 5 sütun, dar ekranda yatay kaydırma */
.sosyal-akis {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 20px;
}

.sosyal-akis-kart {
    display: flex;
    flex-direction: column;
    background: var(--white);
    border: 1px solid var(--border);
    border-radius: var(--radius-lg);
    overflow: hidden;
    box-shadow: var(--shadow-sm);
    transition: transform var(--transition), box-shadow var(--transition), border-color var(--transition);
}

.sosyal-akis-kart:hover {
    transform: translateY(-4px);
    box-shadow: var(--shadow-lg);
    border-color: var(--marka, var(--secondary));
}

.sak-gorsel {
    position: relative;
    display: block;
    aspect-ratio: 16 / 10;
    background: var(--bg-light, #eef2f7);
    overflow: hidden;
}

.sak-gorsel img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transition: transform var(--transition);
}

.sosyal-akis-kart:hover .sak-gorsel img { transform: scale(1.05); }

/* Görseli olmayan gönderide kart boş kalmasın: marka renginde zemin */
.sak-gorsel-bos {
    background: linear-gradient(135deg, var(--marka, var(--primary)), var(--primary));
}

.sak-rozet {
    position: absolute;
    left: 12px;
    bottom: 12px;
    width: 34px;
    height: 34px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    font-size: 15px;
    color: var(--white);
    background: var(--marka, var(--primary));
    box-shadow: 0 4px 12px rgba(0, 0, 0, .25);
}

.sak-gorsel-bos .sak-rozet {
    left: 50%;
    bottom: 50%;
    width: 54px;
    height: 54px;
    font-size: 24px;
    transform: translate(-50%, 50%);
    background: rgba(255, 255, 255, .18);
    box-shadow: none;
}

.sak-govde {
    display: flex;
    flex-direction: column;
    gap: 8px;
    padding: 16px 16px 18px;
    flex: 1;
}

.sak-ust {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    font-size: 12px;
    color: var(--text-muted);
}

.sak-platform {
    font-weight: 700;
    color: var(--marka, var(--primary));
    letter-spacing: .02em;
}

.sak-metin {
    font-size: 14px;
    line-height: 1.55;
    color: var(--text-color, #23303f);
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.sak-lnk {
    margin-top: auto;
    padding-top: 6px;
    display: inline-flex;
    align-items: center;
    gap: 7px;
    font-size: 13px;
    font-weight: 600;
    color: var(--primary);
}

.sak-lnk i { font-size: 11px; transition: transform var(--transition-fast); }
.sosyal-akis-kart:hover .sak-lnk { color: var(--marka, var(--secondary)); }
.sosyal-akis-kart:hover .sak-lnk i { transform: translate(2px, -2px); }

@media (max-width: 1100px) {
    .sosyal-akis { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}

@media (max-width: 768px) {
    .sosyal-bolum { padding: 50px 0; }
    .sosyal-bolum-baslik h2 { font-size: 26px; }
    .sosyal-akis { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; }
    .sak-metin { font-size: 15px; }
}

@media (max-width: 520px) {
    .sosyal-akis { grid-template-columns: 1fr; }
}

/* =====================================================================
   Bildirim Merkezi — abonenin kendi iletişim tercihleri (/bulten/tercih)
   Ret bağlantısı ile açılan sayfadır; "çıkış" seçeneği ekranda aranmadan
   bulunmalı, izin kutuları tıklama alanı büyük olmalı (çoğu ziyaretçi
   e-posta içindeki bağlantıdan telefonla gelir).
   ===================================================================== */
.tercih-kart {
    max-width: 660px;
    margin: 0 auto;
    background: var(--white);
    border: 1px solid var(--border);
    border-radius: 16px;
    padding: 38px 36px;
    box-shadow: 0 2px 18px rgba(27, 58, 92, .06);
}

.tercih-bildirim {
    display: flex;
    align-items: center;
    gap: 9px;
    border-radius: 11px;
    padding: 12px 16px;
    font-size: 14px;
    margin-bottom: 20px;
}

.tercih-bildirim-ok {
    background: color-mix(in srgb, var(--success) 10%, transparent);
    color: var(--success);
}

.tercih-bildirim-uyari {
    background: color-mix(in srgb, var(--secondary) 16%, transparent);
    color: var(--primary);
}

.tercih-kimlik {
    display: flex;
    flex-wrap: wrap;
    gap: 10px 20px;
    padding-bottom: 20px;
    margin-bottom: 22px;
    border-bottom: 1px solid var(--border);
    font-size: 14px;
    color: var(--text-light);
}

.tercih-kimlik i { color: var(--secondary-dark); margin-right: 6px; }

.tercih-bolum { border: none; padding: 0; margin: 0 0 26px; }

.tercih-bolum legend {
    font-family: var(--font-heading);
    font-size: 17px;
    color: var(--primary);
    margin-bottom: 12px;
    padding: 0;
}

.tercih-aciklama {
    font-size: 13.5px;
    color: var(--text-light);
    line-height: 1.6;
    margin-bottom: 12px;
}

.tercih-secim {
    display: flex;
    align-items: flex-start;
    gap: 13px;
    padding: 14px 16px;
    border: 1.5px solid var(--border);
    border-radius: 12px;
    margin-bottom: 10px;
    cursor: pointer;
    transition: border-color .18s, background .18s;
}

.tercih-secim:hover { border-color: var(--primary); background: var(--bg-yumusak, #F8FAFC); }

.tercih-secim input[type="checkbox"] {
    width: 20px;
    height: 20px;
    margin-top: 1px;
    flex-shrink: 0;
    accent-color: var(--primary);
    cursor: pointer;
}

.tercih-secim strong {
    display: block;
    font-size: 14.5px;
    font-weight: 600;
    color: var(--text);
}

.tercih-secim small {
    display: block;
    margin-top: 4px;
    font-size: 13px;
    color: var(--text-light);
    line-height: 1.55;
}

/* İzin verilemeyen kanal (doğrulanmamış telefon) soluk ama okunur kalır */
.tercih-secim-kapali { opacity: .62; cursor: not-allowed; }
.tercih-secim-kapali:hover { border-color: var(--border); background: transparent; }
.tercih-secim-kapali input { cursor: not-allowed; }

.tercih-konu-izgara {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
}

.tercih-konu-izgara .tercih-secim { margin-bottom: 0; align-items: center; }

.tercih-dugmeler {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 16px;
    padding-top: 6px;
}

/* Çıkış, birincil eylemle yarışmasın diye bağlantı görünümünde; yine de
   6563 gereği aranmadan bulunacak biçimde aynı hizada durur. */
.tercih-cik {
    background: none;
    border: none;
    padding: 0;
    font-family: inherit;
    font-size: 13.5px;
    color: var(--text-light);
    text-decoration: underline;
    cursor: pointer;
}

.tercih-cik:hover { color: var(--danger); }

.tercih-kvkk {
    margin-top: 26px;
    padding-top: 18px;
    border-top: 1px solid var(--border);
    font-size: 12.5px;
    color: var(--text-muted);
    line-height: 1.65;
}

@media (max-width: 640px) {
    .tercih-kart { padding: 28px 20px; }
    .tercih-konu-izgara { grid-template-columns: 1fr; }
    .tercih-secim strong { font-size: 15px; }
    .tercih-secim small { font-size: 13.5px; }
}

/* =====================================================================
   Etkinlik kayıt sistemi (Ö5): kayıt formu, katılım kartı, sertifika,
   değerlendirme ve panel doluluk göstergeleri.
   Renkler CSS değişkenlerinden gelir; sabit renk yalnız durum rozetlerinde
   (yeşil/sarı/kırmızı anlam taşır, tema rengiyle karışmamalı).
   ===================================================================== */

/* --- Etkinlik detayındaki kayıt kutusu --- */
.etk-kayit {
    margin-top: 28px;
    border: 1px solid var(--border);
    border-top: 4px solid var(--secondary);
    border-radius: 12px;
    padding: 22px 24px;
    background: var(--bg);
}

.etk-kayit-baslik {
    font-size: 21px;
    margin: 0 0 10px;
    color: var(--primary);
    display: flex;
    align-items: center;
    gap: 10px;
}

.etk-kayit-baslik i { color: var(--secondary-dark); font-size: 18px; }

.etk-kayit-aciklama {
    font-size: 14.5px;
    line-height: 1.65;
    color: var(--text-light);
    margin: 0 0 16px;
}

.etk-ozet {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
    gap: 12px;
    margin-bottom: 18px;
}

.etk-ozet-kutu {
    background: #fff;
    border: 1px solid var(--border);
    border-radius: 10px;
    padding: 10px 14px;
}

.etk-ozet-kutu span {
    display: block;
    font-size: 12px;
    color: var(--text-muted);
    margin-bottom: 3px;
}

.etk-ozet-kutu strong { font-size: 15px; color: var(--primary); }
.etk-ozet-sertifika strong i { color: var(--secondary-dark); margin-right: 4px; }

/* --- Uyarı bantları --- */
.etk-uyari {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    padding: 12px 16px;
    border-radius: 10px;
    font-size: 14px;
    line-height: 1.55;
    margin-bottom: 16px;
}

.etk-uyari i { margin-top: 2px; }
.etk-uyari-ok { background: #E8F6EC; color: #1E6B36; }
.etk-uyari-hata { background: #FDECEC; color: #9B2226; }
.etk-uyari-yedek { background: #FBF3E0; color: #7A5A12; }
.etk-uyari-kapali { background: #EEF2F6; color: var(--text-light); }

/* --- Kayıt formu --- */
.etk-form {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px 16px;
}

.etk-alan { display: flex; flex-direction: column; gap: 6px; }
.etk-alan-tam { grid-column: 1 / -1; }

.etk-alan label {
    font-size: 13px;
    font-weight: 600;
    color: var(--primary);
}

.etk-alan label small { font-weight: 400; color: var(--text-muted); }
.etk-zorunlu { color: #C0392B; }

.etk-alan input,
.etk-alan textarea {
    width: 100%;
    padding: 11px 13px;
    border: 1px solid var(--border);
    border-radius: 8px;
    font-family: inherit;
    font-size: 14.5px;
    background: #fff;
    color: var(--text);
}

.etk-alan input:focus,
.etk-alan textarea:focus {
    outline: none;
    border-color: var(--secondary);
    box-shadow: 0 0 0 3px rgba(200, 162, 60, .18);
}

.etk-kvkk {
    grid-column: 1 / -1;
    display: flex;
    align-items: flex-start;
    gap: 10px;
    font-size: 13.5px;
    line-height: 1.6;
    color: var(--text-light);
}

.etk-kvkk input { margin-top: 3px; flex-shrink: 0; }

.etk-gonder { grid-column: 1 / -1; justify-self: start; }

.etk-form-not {
    grid-column: 1 / -1;
    display: flex;
    gap: 8px;
    font-size: 13px;
    color: var(--text-muted);
    margin: 0;
}

.etk-yan-kontenjan { font-size: 14px; margin-bottom: 6px; }

/* --- Katılım kartı / değerlendirme sayfası --- */
.etk-section { padding: 46px 0 60px; }

.etk-kart {
    background: #fff;
    border: 1px solid var(--border);
    border-radius: 14px;
    padding: 26px 28px;
    box-shadow: 0 6px 24px rgba(27, 58, 92, .07);
    max-width: 860px;
    margin: 0 auto;
}

.etk-kart-ust {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 24px;
    flex-wrap: wrap;
    padding-bottom: 20px;
    border-bottom: 1px solid var(--border);
}

.etk-kart-etkinlik {
    font-size: 22px;
    color: var(--primary);
    margin: 10px 0 6px;
    line-height: 1.35;
}

.etk-kart-meta { font-size: 13.5px; color: var(--text-light); margin: 0; }

.etk-kart-qr {
    text-align: center;
    border: 1px solid var(--border);
    border-radius: 12px;
    padding: 10px;
    background: #fff;
}

.etk-kart-qr img { display: block; width: 150px; height: 150px; }
.etk-kart-qr small { display: block; font-size: 11.5px; color: var(--text-muted); margin-top: 6px; }

.etk-rozet {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    padding: 5px 12px;
    border-radius: 999px;
    font-size: 12.5px;
    font-weight: 600;
}

.etk-rozet-yesil { background: #E8F6EC; color: #1E6B36; }
.etk-rozet-sari { background: #FBF3E0; color: #7A5A12; }
.etk-rozet-mavi { background: #E7EFF7; color: var(--primary); }
.etk-rozet-kirmizi { background: #FDECEC; color: #9B2226; }

.etk-kart-bilgiler {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
    gap: 16px;
    padding: 20px 0;
}

.etk-bilgi small {
    display: block;
    font-size: 12px;
    color: var(--text-muted);
    margin-bottom: 3px;
}

.etk-bilgi span { font-size: 15px; color: var(--primary); font-weight: 600; }
.etk-bilgi code { font-size: 12.5px; word-break: break-all; font-weight: 400; }

.etk-kart-aciklama {
    font-size: 14px;
    line-height: 1.65;
    color: var(--text-light);
    background: var(--bg);
    border-radius: 10px;
    padding: 14px 16px;
    margin: 0 0 18px;
}

.etk-kart-butonlar { display: flex; gap: 10px; flex-wrap: wrap; }

.etk-kart-not {
    display: flex;
    gap: 8px;
    font-size: 12.5px;
    color: var(--text-muted);
    margin: 18px 0 0;
    padding-top: 14px;
    border-top: 1px solid var(--border);
}

.etk-bos { text-align: center; padding: 20px 0; }
.etk-bos i { font-size: 40px; color: var(--secondary); }
.etk-bos h2 { font-size: 20px; color: var(--primary); margin: 14px 0 8px; }
.etk-bos p { font-size: 14.5px; color: var(--text-light); margin-bottom: 18px; }

/* --- Değerlendirme puan seçimi --- */
.etk-puan { border: 0; padding: 0; margin: 0; grid-column: 1 / -1; }

.etk-puan legend {
    font-size: 13px;
    font-weight: 600;
    color: var(--primary);
    padding: 0;
    margin-bottom: 10px;
}

.etk-puan-secim {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(110px, 1fr));
    gap: 10px;
}

.etk-puan-secenek {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 4px;
    border: 1px solid var(--border);
    border-radius: 10px;
    padding: 12px 8px;
    cursor: pointer;
    text-align: center;
    background: #fff;
}

.etk-puan-secenek:hover { border-color: var(--secondary); }
.etk-puan-yildiz { color: var(--secondary-dark); font-size: 15px; letter-spacing: 1px; }
.etk-puan-secenek small { font-size: 12px; color: var(--text-light); }
.etk-puan-secenek:has(input:checked) {
    border-color: var(--secondary);
    background: #FBF7EC;
    box-shadow: 0 0 0 2px rgba(200, 162, 60, .2);
}

/* --- Sertifika (yazdırılabilir) --- */
.etk-sertifika-sarmal { padding: 34px 0 60px; }

.etk-sertifika-arac {
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
    justify-content: flex-end;
    margin-bottom: 18px;
}

.etk-sertifika {
    background: #fff;
    border: 1px solid var(--border);
    box-shadow: 0 8px 30px rgba(27, 58, 92, .09);
    max-width: 900px;
    margin: 0 auto;
    padding: 14px;
}

.etk-sertifika-ic {
    border: 3px double var(--secondary);
    padding: 44px 46px 34px;
    text-align: center;
}

.etk-sertifika-bas { margin-bottom: 26px; }
.etk-sertifika-logo { height: 68px; width: auto; margin: 0 auto 10px; display: block; }

.etk-sertifika-kurum {
    font-size: 14px;
    letter-spacing: 2px;
    text-transform: uppercase;
    color: var(--text-light);
    margin: 0;
}

.etk-sertifika-baslik {
    font-family: 'Playfair Display', Georgia, serif;
    font-size: 36px;
    color: var(--primary);
    margin: 0 0 26px;
    letter-spacing: 1px;
}

.etk-sertifika-giris { font-size: 14px; color: var(--text-muted); margin: 0 0 6px; }

.etk-sertifika-ad {
    font-family: 'Playfair Display', Georgia, serif;
    font-size: 30px;
    color: var(--secondary-dark);
    margin: 0 0 4px;
}

.etk-sertifika-firma { font-size: 15px; color: var(--text-light); margin: 0 0 18px; }

.etk-sertifika-metin {
    font-size: 15px;
    line-height: 1.75;
    color: var(--text);
    max-width: 620px;
    margin: 0 auto 22px;
}

.etk-sertifika-etkinlik {
    font-size: 20px;
    font-weight: 600;
    color: var(--primary);
    margin: 0 0 6px;
    line-height: 1.4;
}

.etk-sertifika-detay { font-size: 14px; color: var(--text-light); margin: 0 0 34px; }

.etk-sertifika-alt {
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    gap: 24px;
    flex-wrap: wrap;
    text-align: left;
    padding-top: 20px;
    border-top: 1px solid var(--border);
}

.etk-sertifika-qr { text-align: center; }
.etk-sertifika-qr img { display: block; width: 110px; height: 110px; }
.etk-sertifika-qr small,
.etk-sertifika-kod small { display: block; font-size: 11px; color: var(--text-muted); margin-top: 4px; }
.etk-sertifika-kod code { font-size: 12px; word-break: break-all; }
.etk-sertifika-imza { text-align: center; min-width: 200px; }

.etk-sertifika-cizgi {
    display: block;
    height: 1px;
    background: var(--text-light);
    margin-bottom: 6px;
}

/* Yazdırmada yalnız belge kalır; şablonu değiştirmemek için gizleme burada. */
@media print {
    .top-bar, .site-header, .site-footer, .preloader, .quick-nav, .quick-nav-toggle,
    .back-to-top, .kaysi-w, .mobile-sidebar, .mobile-overlay, .search-overlay,
    .etk-sertifika-arac, .cerez-cubuk {
        display: none !important;
    }

    .etk-sertifika-sarmal { padding: 0; }
    .etk-sertifika { box-shadow: none; border: 0; max-width: none; }
    .etk-sertifika-ic { padding: 30px 34px; }
}

/* --- Panel: doluluk ve puan göstergeleri --- */
.etk-doluluk { display: flex; align-items: center; gap: 12px; flex-wrap: wrap; }

.etk-doluluk-cubuk {
    flex: 1;
    min-width: 160px;
    height: 10px;
    border-radius: 999px;
    background: #E7EAEF;
    overflow: hidden;
}

.etk-doluluk-cubuk span {
    display: block;
    height: 100%;
    background: var(--secondary);
    border-radius: 999px;
}

.etk-puan-ozet { display: flex; gap: 28px; flex-wrap: wrap; align-items: center; }

.etk-puan-buyuk { text-align: center; min-width: 110px; }
.etk-puan-buyuk strong { display: block; font-size: 40px; color: var(--primary); line-height: 1; }
.etk-puan-buyuk small { font-size: 12.5px; color: var(--text-muted); }

.etk-puan-dagilim { flex: 1; min-width: 240px; display: flex; flex-direction: column; gap: 6px; }

.etk-puan-satir { display: flex; align-items: center; gap: 10px; font-size: 12.5px; }
.etk-puan-satir > span { width: 34px; color: var(--text-light); }
.etk-puan-satir small { width: 26px; text-align: right; color: var(--text-muted); }

.etk-mini-secim {
    padding: 5px 8px;
    border: 1px solid var(--border);
    border-radius: 6px;
    font-size: 12.5px;
    font-family: inherit;
    background: #fff;
}

@media (max-width: 768px) {
    .etk-form { grid-template-columns: 1fr; }
    .etk-kayit { padding: 18px 16px; }
    .etk-kart { padding: 20px 16px; }
    .etk-kart-ust { flex-direction: column; align-items: center; text-align: center; }
    .etk-kart-qr { align-self: center; }
    .etk-sertifika-ic { padding: 28px 20px 24px; }
    .etk-sertifika-baslik { font-size: 26px; }
    .etk-sertifika-ad { font-size: 23px; }
    .etk-sertifika-alt { justify-content: center; text-align: center; }
    .etk-alan input, .etk-alan textarea { font-size: 16px; }
}

/* ====================================================================
   BASIN ODASI — künye, kurumsal kimlik paleti, bülten arşivi,
   başkan biyografisi ve "Basında Biz" medya yansımaları.
   Renkler sabit yazılmaz; hepsi kurumsal CSS değişkenlerinden gelir.
   ==================================================================== */

/* Rakamlarla oda künyesi */
.basin-kunye {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(160px, 1fr));
    gap: 16px;
    margin-bottom: 12px;
}

.basin-kunye-kutu {
    background: var(--white);
    border: 1px solid var(--border);
    border-left: 3px solid var(--secondary);
    border-radius: var(--radius);
    padding: 18px 20px;
    box-shadow: var(--shadow-sm);
}

.basin-kunye-kutu strong {
    display: block;
    font-family: 'Playfair Display', Georgia, serif;
    font-size: 30px;
    line-height: 1.1;
    color: var(--primary);
}

.basin-kunye-kutu span {
    display: block;
    margin-top: 4px;
    font-size: 13px;
    color: var(--text-light);
}

.basin-kunye-not {
    font-size: 13px;
    color: var(--text-muted);
    margin-bottom: 8px;
}

/* Kurumsal kimlik: renk paleti ve kullanım kuralları */
.basin-palet {
    display: flex;
    flex-direction: column;
    gap: 10px;
    margin-top: 18px;
    padding-top: 18px;
    border-top: 1px solid var(--bg-alt);
    text-align: left;
}

.basin-palet-baslik {
    font-size: 11px;
    font-weight: 700;
    letter-spacing: .6px;
    text-transform: uppercase;
    color: var(--secondary-dark);
}

.basin-renk {
    display: flex;
    align-items: center;
    gap: 10px;
    font-size: 13px;
}

/* Renk kutusu: değeri panelden gelir, HEX olarak doğrulanır */
.basin-renk i {
    width: 26px;
    height: 26px;
    border-radius: 7px;
    border: 1px solid var(--border);
    flex-shrink: 0;
}

.basin-renk strong { font-weight: 700; color: var(--text); }
.basin-renk small { color: var(--text-muted); font-family: ui-monospace, monospace; }

.basin-kimlik-kurallar {
    list-style: none;
    margin: 16px 0 0;
    padding: 16px 0 0;
    border-top: 1px solid var(--bg-alt);
    text-align: left;
}

.basin-kimlik-kurallar li {
    display: flex;
    align-items: flex-start;
    gap: 9px;
    font-size: 13px;
    line-height: 1.55;
    color: var(--text-light);
}

.basin-kimlik-kurallar li + li { margin-top: 9px; }
.basin-kimlik-kurallar li i { color: var(--secondary); font-size: 11px; margin-top: 5px; flex-shrink: 0; }

/* Bülten arşivi kartları */
.basin-arsiv-liste {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
    gap: 16px;
}

.basin-arsiv-kart {
    display: flex;
    flex-direction: column;
    gap: 7px;
    background: var(--white);
    border: 1px solid var(--border);
    border-radius: var(--radius-lg);
    padding: 20px;
    text-decoration: none;
    box-shadow: var(--shadow-sm);
    transition: transform var(--transition-fast), border-color var(--transition-fast), box-shadow var(--transition-fast);
}

.basin-arsiv-kart:hover {
    transform: translateY(-3px);
    border-color: var(--secondary);
    box-shadow: var(--shadow-lg);
}

.basin-arsiv-tarih { font-size: 12.5px; color: var(--text-light); }
.basin-arsiv-tarih i { color: var(--secondary); margin-right: 5px; }
[dir="rtl"] .basin-arsiv-tarih i { margin-right: 0; margin-left: 5px; }

.basin-arsiv-kart strong { font-size: 15.5px; font-weight: 700; color: var(--primary); line-height: 1.45; }
.basin-arsiv-ozet { font-size: 13.5px; color: var(--text-light); line-height: 1.6; }

/* Bültenin web sürümü */
.basin-bulten-sayfa {
    background: var(--white);
    border: 1px solid var(--border);
    border-radius: var(--radius-lg);
    padding: 34px;
    box-shadow: var(--shadow-sm);
    max-width: 820px;
    margin: 0 auto;
}

.basin-bulten-metin { font-size: 16px; line-height: 1.85; color: var(--text); }

.basin-bulten-alt {
    display: flex;
    align-items: center;
    gap: 18px;
    flex-wrap: wrap;
    margin-top: 28px;
    padding-top: 22px;
    border-top: 1px solid var(--bg-alt);
}

/* Başkanın basına hazır biyografisi */
.basin-baskan {
    display: grid;
    grid-template-columns: 240px 1fr;
    gap: 28px;
    align-items: start;
    background: var(--white);
    border: 1px solid var(--border);
    border-radius: var(--radius-lg);
    padding: 26px;
    box-shadow: var(--shadow-sm);
}

.basin-baskan-portre { margin: 0; }

.basin-baskan-portre img {
    width: 100%;
    border-radius: var(--radius);
    display: block;
}

.basin-baskan-portre figcaption { margin-top: 10px; text-align: center; }

.basin-baskan-portre figcaption a {
    font-size: 13px;
    font-weight: 700;
    color: var(--secondary-dark);
    text-decoration: none;
}

.basin-baskan-portre figcaption a:hover { color: var(--primary); }

.basin-baskan-metin h3 {
    font-family: 'Playfair Display', Georgia, serif;
    font-size: 24px;
    color: var(--primary);
    margin-bottom: 3px;
}

.basin-baskan-unvan {
    display: block;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: .6px;
    text-transform: uppercase;
    color: var(--secondary-dark);
    margin-bottom: 14px;
}

.basin-baskan-metin p { font-size: 14.5px; line-height: 1.8; color: var(--text-light); }

/* Basında Biz — medya yansımaları */
.basin-yansima-izgara {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(260px, 1fr));
    gap: 18px;
}

.basin-yansima {
    display: flex;
    flex-direction: column;
    gap: 8px;
    background: var(--white);
    border: 1px solid var(--border);
    border-radius: var(--radius-lg);
    padding: 18px;
    text-decoration: none;
    box-shadow: var(--shadow-sm);
    transition: transform var(--transition-fast), border-color var(--transition-fast), box-shadow var(--transition-fast);
}

a.basin-yansima:hover {
    transform: translateY(-3px);
    border-color: var(--secondary);
    box-shadow: var(--shadow-lg);
}

.basin-yansima-kupur {
    display: block;
    background: var(--bg-alt);
    border-radius: var(--radius);
    overflow: hidden;
    margin-bottom: 4px;
}

.basin-yansima-kupur img {
    width: 100%;
    height: 150px;
    object-fit: cover;
    display: block;
}

.basin-yansima-ust { display: block; }
.basin-yansima-ust strong { display: block; font-size: 13px; font-weight: 700; color: var(--secondary-dark); }
.basin-yansima-ust small { display: block; font-size: 12px; color: var(--text-muted); margin-top: 2px; }

.basin-yansima-baslik { font-size: 14.5px; font-weight: 600; color: var(--text); line-height: 1.5; }
a.basin-yansima:hover .basin-yansima-baslik { color: var(--primary); }

.basin-yansima-link { font-size: 12.5px; font-weight: 700; color: var(--secondary-dark); margin-top: 2px; }
.basin-yansima-link i { font-size: 11px; margin-right: 4px; }
[dir="rtl"] .basin-yansima-link i { margin-right: 0; margin-left: 4px; }

@media (max-width: 900px) {
    .basin-baskan { grid-template-columns: 1fr; }
    .basin-baskan-portre { max-width: 240px; margin: 0 auto; }
}

@media (max-width: 768px) {
    .basin-bulten-sayfa { padding: 22px; }
    .basin-bulten-metin { font-size: 16px; }
    .basin-kunye-kutu strong { font-size: 26px; }
    /* Mobilde okunabilirlik: küçük ikincil metinler 15px altına inmez */
    .basin-arsiv-ozet,
    .basin-baskan-metin p,
    .basin-kimlik-kurallar li { font-size: 15px; }
}

/* ==========================================================================
   Çoklu ekran + erişilebilirlik QA düzeltmeleri (komite · basın · etkinlik
   kaydı · sosyal duvar). Dokunmatik ekranda parmak ucu ~9 mm; 22 px yüksekliğinde
   bir bağlantı yanlış hedefe basmaya yol açtığı için bu bloklar yalnızca
   dokunmatik genişliklerde (<=1024 px) devreye girer, masaüstü tipografisi
   olduğu gibi kalır.
   ========================================================================== */

@media (max-width: 1024px) {

    /* --- Meslek komiteleri --- */
    .komite-geri {
        display: inline-flex;
        align-items: center;
        gap: 6px;
        min-height: 44px;
    }

    /* --- Basın merkezi: metin bağlantıları --- */
    .basin-tum-link,
    .basin-gorsel figcaption a,
    .basin-baskan-portre figcaption a,
    .basin-kisi-iletisim a {
        display: inline-flex;
        align-items: center;
        gap: 6px;
        min-height: 44px;
    }

    /* Görsel altlığındaki bağlantı kutunun tamamını kaplasın; küçük yazının
       yanındaki boşluğa basınca da indirme açılır. */
    .basin-gorsel figcaption a,
    .basin-baskan-portre figcaption a {
        width: 100%;
        justify-content: center;
    }

    /* --- Sosyal duvar --- */
    .sosyal-bolum-tumu {
        display: inline-flex;
        align-items: center;
        gap: 6px;
        min-height: 44px;
    }

    /* --- Onay kutuları: 13 px'lik yerleşik kutu parmakla isabetsiz.
       Sarmalayan <label> zaten tıklanabilir olduğu için asıl hedef büyük,
       yine de kutunun kendisi görünür şekilde büyütülüyor. --- */
    .etk-kvkk input[type="checkbox"],
    .komite-form .form-check input[type="checkbox"] {
        width: 22px;
        height: 22px;
        min-width: 22px;
        flex: 0 0 22px;
    }

    .etk-kvkk,
    .komite-form .form-check {
        display: flex;
        align-items: flex-start;
        gap: 10px;
        min-height: 44px;
    }

    .etk-kvkk > span,
    .komite-form .form-check label {
        flex: 1 1 auto;
        cursor: pointer;
    }
}

@media (max-width: 768px) {

    /* Gövde ve künye metinleri mobilde 15 px altına inmemeli; 11-13 px'lik
       ikincil satırlar telefonda okunmuyordu. Hiyerarşi punto yerine
       ağırlık ve renkle korunuyor. */
    .komite-geri,
    .kurul-firma,
    .basin-kunye-not,
    .basin-bolum-alt,
    .basin-kisi-unvan,
    .basin-kisi-birim,
    .basin-bulten-tarih,
    .basin-kisi-iletisim a,
    .basin-gorsel figcaption a,
    .basin-baskan-portre figcaption a,
    .basin-tum-link,
    .etk-form-not,
    .etk-kayit-aciklama,
    .etk-uyari,
    .sosyal-kart-kullanici,
    .sak-lnk,
    .sosyal-bolum-tumu {
        font-size: 15px;
    }

    /* Punto büyüyünce ayrım kaybolmasın diye ikincil satırlar sönük kalır. */
    .basin-kisi-birim,
    .basin-bulten-tarih,
    .basin-kunye-not {
        color: var(--text-muted);
    }

    /* Komite mesaj formu: iki sütunlu satırlar telefonda alt alta ve tam
       genişlikte olsun, alanlar 44 px dokunma yüksekliğini korusun. */
    .komite-form .form-row {
        display: block;
    }

    .komite-form .form-group {
        width: 100%;
    }

    .komite-form input[type="text"],
    .komite-form input[type="email"],
    .komite-form textarea,
    .etk-form input,
    .etk-form select,
    .etk-form textarea {
        width: 100%;
        min-height: 44px;
        font-size: 16px; /* iOS Safari 16 px altındaki alanda sayfayı yakınlaştırır */
    }

    .komite-form textarea,
    .etk-form textarea {
        min-height: 120px;
    }

    .komite-form .btn,
    .etk-gonder {
        width: 100%;
        min-height: 48px;
        justify-content: center;
    }
}

/* İlk turda kaçan küçük puntolar: aşağıdaki seçiciler daha özel tanımlarla
   (ör. .kurul-person .kurul-firma) ezildiği için ayrıca yazılıyor. */
@media (max-width: 768px) {
    .kurul-person .kurul-firma,
    .basin-bulten .basin-bulten-baslik,
    .basin-indir-btn,
    .basin-palet-baslik,
    .etk-alan label,
    .etk-yan-cta .btn,
    .sosyal-baslik small {
        font-size: 15px;
    }

    /* Punto büyüyünce firma satırı üç satıra taşabiliyor; satır aralığı
       sıkılaştırılarak kart yüksekliği korunuyor. */
    .kurul-person .kurul-firma { line-height: 1.35; }

    /* Palet başlığı 11 px'ten 15 px'e çıkınca harf aralığı taşma yapıyordu. */
    .basin-palet-baslik { letter-spacing: 0.02em; }
}

/* Basın merkezinin veri girildiğinde açılan bölümleri (bülten arşivi, başkan
   künyesi, Basında Biz) ilk taramada boştu; dolu hâlde ölçülen küçük puntolar. */
@media (max-width: 768px) {
    .basin-arsiv-tarih,
    .basin-baskan-unvan,
    .basin-yansima-ust small,
    .basin-yansima-baslik {
        font-size: 15px;
    }

    .basin-arsiv-tarih,
    .basin-yansima-ust small { color: var(--text-muted); }
}

/* Sosyal gönderi metni üretimi (panel) */
.sosyal-uret {
    margin-top: 12px;
    padding: 14px 16px;
    border: 1px dashed var(--border);
    border-radius: var(--radius);
    background: var(--bg);
}

.sosyal-uret-baslik {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 10px;
    font-size: 13.5px;
    color: var(--text);
}

.sosyal-uret-baslik i { color: var(--secondary); }
.sosyal-uret-baslik span {
    margin-left: auto;
    font-size: 11.5px;
    color: var(--text-muted);
}

.sosyal-uret-satir {
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
}

.sosyal-uret-satir select {
    flex: 1 1 280px;
    min-width: 0;
    padding: 8px 10px;
    border: 1px solid var(--border);
    border-radius: var(--radius);
    font-family: inherit;
    font-size: 13px;
}

.sosyal-uret-not {
    margin-top: 10px;
    font-size: 12.5px;
    color: var(--text-muted);
    line-height: 1.55;
}

@media (max-width: 600px) {
    .sosyal-uret-satir select,
    .sosyal-uret-satir .btn { flex: 1 1 100%; }
}

/* === Anasayfa: genisletilmis gundem + dergilik seridi =================== */
/* Gundem manset sliderin hemen altina alindi. Alan sayfanin en degerli
   yerine tasindigi icin manset buyutuldu ve kucuk kartlar 4'e cikarildi.
   Sadece .gundem-genis altinda gecerlidir; diger sayfalardaki .gundem
   gorunumu aynen korunur. */
.gundem-genis { padding: 56px 0 70px; }
.gundem-genis .manset { min-height: 340px; }
.gundem-genis .manset-gorsel { min-height: 300px; }
.gundem-genis .gundem-kucukler { grid-template-columns: repeat(4, 1fr); gap: 18px; }
.gundem-genis .gundem-kart-gorsel { height: 124px; }

/* Dergilik seridi: acik zeminde yatay kayan yayin kartlari.
   Kartlar dergilik sayfasindaki .dergi-kart bileseninin aynisidir;
   burada yalnizca pist ve genislik davranisi eklenir. */
.dergi-serit { padding: 64px 0 70px; background: var(--bg); }
.dserit-bas {
    display: flex; align-items: flex-end; justify-content: space-between;
    gap: 20px; margin-bottom: 30px;
}
.dserit-baslik h2 { font-family: var(--font-heading); font-size: 34px; color: var(--primary); margin: 0; line-height: 1.15; }
.dserit-nav { display: flex; align-items: center; gap: 10px; }
.dserit-tumu {
    display: inline-flex; align-items: center; gap: 8px; flex-shrink: 0;
    padding: 10px 18px; margin-inline-end: 6px;
    border: 1px solid var(--border); border-radius: 999px;
    color: var(--primary); font-size: 13.5px; font-weight: 600; transition: all .2s;
}
.dserit-tumu:hover { background: var(--secondary); border-color: var(--secondary); color: #fff; }
.dserit-ok {
    width: 44px; height: 44px; border-radius: 50%; flex-shrink: 0; cursor: pointer;
    border: 1px solid var(--border); background: var(--white); color: var(--primary);
    display: flex; align-items: center; justify-content: center; font-size: 14px; transition: all .2s;
}
.dserit-ok:hover:not(:disabled) { background: var(--secondary); border-color: var(--secondary); color: #fff; }
.dserit-ok:disabled { opacity: .35; cursor: default; }

/* Pist: parmakla kaydirma + hizalama noktalari. Otomatik oynatma yoktur. */
.dserit-pist {
    display: flex; align-items: flex-start; gap: 22px;
    overflow-x: auto; overflow-y: hidden;
    scroll-snap-type: x proximity; scroll-padding-inline-start: 2px;
    padding: 6px 2px 16px;
    scrollbar-width: thin; scrollbar-color: rgba(27, 58, 92, .28) transparent;
    -webkit-overflow-scrolling: touch;
}
.dserit-pist::-webkit-scrollbar { height: 6px; }
.dserit-pist::-webkit-scrollbar-track { background: transparent; }
.dserit-pist::-webkit-scrollbar-thumb { background: rgba(27, 58, 92, .24); border-radius: 999px; }
.dserit-pist:focus-visible { outline: 2px solid var(--secondary); outline-offset: 4px; border-radius: 8px; }
.dserit-kart {
    flex: 0 0 clamp(150px, 15vw, 190px); min-width: 0;
    scroll-snap-align: start; text-align: center;
}
.dserit-kart .dergi-kapak { margin-bottom: 12px; transition: transform .25s, box-shadow .25s; }
.dserit-kart:hover .dergi-kapak { transform: translateY(-5px); box-shadow: 0 16px 34px rgba(27, 58, 92, .20); }
.dserit-kart strong {
    display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden;
    min-height: 2.7em;
}

/* Hareket azaltma tercihi: kaydirma aninda gecis ve kart yukselmesi kapanir */
@media (prefers-reduced-motion: reduce) {
    .dserit-pist { scroll-behavior: auto; }
    .dserit-kart .dergi-kapak,
    .dserit-kart:hover .dergi-kapak { transform: none; transition: none; }
}

/* Gundem kucuk kartlari: yan panel dururken 4 sutun ancak genis ekranda sigar */
@media (max-width: 1200px) {
    .gundem-genis .gundem-kucukler { grid-template-columns: repeat(3, 1fr); }
}
@media (max-width: 1024px) {
    .gundem-genis .gundem-kucukler { grid-template-columns: repeat(3, 1fr); }
}
@media (max-width: 768px) {
    .gundem-genis { padding: 40px 0 52px; }
    .gundem-genis .manset { min-height: 0; }
    .gundem-genis .manset-gorsel { min-height: 0; }
    .gundem-genis .gundem-kucukler { grid-template-columns: 1fr; gap: 12px; }
    .dergi-serit { padding: 46px 0 50px; }
    .dserit-bas { flex-direction: column; align-items: flex-start; gap: 14px; }
    .dserit-baslik h2 { font-size: 27px; }
    .dserit-ok { display: none; }
    .dserit-pist { gap: 16px; }
    .dserit-kart { flex-basis: 42vw; }
}

/* ========================================
   MEGA MENÜ VİTRİNİ (panelden yönetilir — menu_vitrin)
   Mega menünün sağındaki kapak/ikon kartları. Kartı olmayan sekmede
   bu sınıflar hiç basılmaz, mevcut menü düzeni değişmez.
   ======================================== */

.mega-col-vitrin {
    flex: 0 0 auto;
    width: 420px;
    max-width: 46%;
    padding-left: 24px;
    padding-right: 0;
    border-left: 1px solid var(--border);
}

/* Vitrin kolonu son çocuktur; .mega-col:not(:last-child) kuralı ona sağ
   çizgi vermesin diye açıkça kapatılır. */
.mega-menu-inner .mega-col-vitrin {
    border-right: none;
}

.mega-vitrin {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
}

/* Yalnız vitrinden oluşan küçük açılır menüde genişlik sabitlenmesin */
.nav-item.has-mega-vitrin:not(.has-mega-full) .mega-col-vitrin {
    width: 100%;
    max-width: none;
    padding-left: 0;
    border-left: none;
}

.mega-vitrin-kart {
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    gap: 6px;
    min-height: 108px;
    padding: 14px;
    border-radius: var(--radius-lg);
    border: 1px solid var(--border);
    background: var(--bg);
    overflow: hidden;
    isolation: isolate;
    transition: transform var(--transition-fast), box-shadow var(--transition-fast), border-color var(--transition-fast);
}

.mega-vitrin-kart:hover {
    transform: translateY(-2px);
    box-shadow: var(--shadow-lg);
    border-color: var(--secondary);
}

.mega-vitrin-ikon {
    font-size: 20px;
    color: var(--secondary);
}

.mega-vitrin-metin {
    display: block;
    min-width: 0;
}

.mega-vitrin-metin strong {
    display: block;
    font-size: 13.5px;
    font-weight: 700;
    line-height: 1.25;
    color: var(--primary);
}

.mega-vitrin-metin small {
    display: block;
    margin-top: 3px;
    font-size: 11px;
    letter-spacing: 0.4px;
    text-transform: uppercase;
    color: var(--text-muted);
}

/* --- Kapak görselli kart --- */
.mega-vitrin-kart.kapakli {
    min-height: 150px;
    border-color: transparent;
    background: var(--primary);
}

.mega-vitrin-gorsel {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    z-index: -2;
    transition: transform var(--transition);
}

/* Kapak görselleri fotoğraf olduğu için başlığın okunurluğu garanti değil;
   alt tarafa güçlü bir karartma bindirilir. */
.mega-vitrin-kart.kapakli::before {
    content: '';
    position: absolute;
    inset: 0;
    z-index: -1;
    background: linear-gradient(to top, rgba(10, 22, 38, 0.92) 0%, rgba(10, 22, 38, 0.62) 42%, rgba(10, 22, 38, 0.12) 100%);
}

.mega-vitrin-kart.kapakli:hover .mega-vitrin-gorsel {
    transform: scale(1.06);
}

.mega-vitrin-kart.kapakli .mega-vitrin-metin strong {
    color: var(--white);
}

.mega-vitrin-kart.kapakli .mega-vitrin-metin small {
    color: rgba(255, 255, 255, 0.82);
}

/* --- Vurgulu kart: tam genişlik altın buton --- */
.mega-vitrin-kart.vurgulu {
    grid-column: 1 / -1;
    flex-direction: row;
    align-items: center;
    gap: 12px;
    min-height: 0;
    padding: 12px 16px;
    border-color: transparent;
    background: var(--secondary);
}

.mega-vitrin-kart.vurgulu .mega-vitrin-ikon,
.mega-vitrin-kart.vurgulu .mega-vitrin-metin strong {
    color: var(--white);
}

.mega-vitrin-kart.vurgulu .mega-vitrin-metin {
    flex: 1;
}

.mega-vitrin-kart.vurgulu .mega-vitrin-metin small {
    color: rgba(255, 255, 255, 0.85);
}

.mega-vitrin-ok {
    font-size: 12px;
    color: var(--white);
    transition: transform var(--transition-fast);
}

.mega-vitrin-kart.vurgulu:hover {
    background: var(--primary);
}

.mega-vitrin-kart.vurgulu:hover .mega-vitrin-ok {
    transform: translateX(3px);
}

/* Vurgulu kart görselliyse metin okunurluğu için karartma korunur */
.mega-vitrin-kart.vurgulu.kapakli {
    background: var(--primary);
}

/* Dar masaüstünde vitrin kolonu daralır */
@media (max-width: 1200px) {
    .mega-col-vitrin { width: 340px; }
    .mega-vitrin { gap: 10px; }
    .mega-vitrin-kart { min-height: 96px; padding: 12px; }
}

/* ========================================
   MOBİL VİTRİN ŞERİDİ
   Alt menü listesinin altında yatay kaydırılabilir kartlar.
   ======================================== */

.mobile-vitrin-satir {
    list-style: none;
}

/* Şerit, menü metinleriyle aynı hizada başlar; sağdaki iç dolgu son kartın
   ekran kenarına yapışmasını önler. */
.mobile-vitrin {
    display: flex;
    gap: 10px;
    padding: 10px 20px 6px;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
    scroll-snap-type: x proximity;
}

.mobile-vitrin::-webkit-scrollbar {
    display: none;
}

/*
 * Kartlar mobil alt menünün <li><a> yapısı içinde durduğu için
 * ".mobile-sub-menu li a" kuralı (dolgu, hizalama) ve onun madde işareti
 * üreten ::before'u devralınır. Seçici özgüllüğü bilerek yükseltilerek
 * bunlar geçersiz kılınır.
 */
.mobile-sub-menu li a.mobile-vitrin-kart {
    position: relative;
    flex: 0 0 150px;
    display: flex;
    flex-direction: column;
    align-items: stretch;
    justify-content: flex-end;
    gap: 5px;
    min-height: 92px;
    padding: 12px;
    border-radius: var(--radius-lg);
    border: 1px solid var(--border);
    background: var(--bg);
    overflow: hidden;
    isolation: isolate;
    scroll-snap-align: start;
}

/* Madde işareti noktası kartlarda görünmesin */
.mobile-sub-menu li a.mobile-vitrin-kart::before {
    content: none;
}

.mobile-vitrin-ikon {
    font-size: 17px;
    color: var(--secondary);
}

.mobile-vitrin-metin strong {
    display: block;
    font-size: 12.5px;
    font-weight: 700;
    line-height: 1.25;
    color: var(--primary);
}

.mobile-vitrin-metin small {
    display: block;
    margin-top: 2px;
    font-size: 10px;
    letter-spacing: 0.4px;
    text-transform: uppercase;
    color: var(--text-muted);
}

.mobile-vitrin-gorsel {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    z-index: -2;
}

.mobile-sub-menu li a.mobile-vitrin-kart.kapakli {
    border-color: transparent;
    background: var(--primary);
}

/* Yukarıdaki "content: none" sıfırlamasını geri alır (aynı özgüllük, sonra gelir) */
.mobile-sub-menu li a.mobile-vitrin-kart.kapakli::before {
    content: '';
    position: absolute;
    inset: 0;
    z-index: -1;
    width: auto;
    height: auto;
    border-radius: 0;
    background: linear-gradient(to top, rgba(10, 22, 38, 0.92) 0%, rgba(10, 22, 38, 0.6) 45%, rgba(10, 22, 38, 0.12) 100%);
}

.mobile-vitrin-kart.kapakli .mobile-vitrin-metin strong {
    color: var(--white);
}

.mobile-vitrin-kart.kapakli .mobile-vitrin-metin small {
    color: rgba(255, 255, 255, 0.82);
}

.mobile-sub-menu li a.mobile-vitrin-kart.vurgulu {
    border-color: transparent;
    background: var(--secondary);
}

.mobile-vitrin-kart.vurgulu .mobile-vitrin-ikon,
.mobile-vitrin-kart.vurgulu .mobile-vitrin-metin strong {
    color: var(--white);
}

.mobile-vitrin-kart.vurgulu .mobile-vitrin-metin small {
    color: rgba(255, 255, 255, 0.85);
}

/* === BOLUM T: fuar takvimi (fuar tablosu) === */
/* /fuar-takvimi sayfasinin gercek fuar verisiyle calisan surumu.
   Eski duyuru listesinin .fuar-oge stilleri BOLUM L'de duruyor, dokunulmadi. */

.fuar-takvim .fuar-suzgec {
    display: grid;
    grid-template-columns: minmax(220px, 1.6fr) repeat(4, minmax(140px, 1fr));
    gap: 14px;
    align-items: end;
    background: var(--white);
    border: 1px solid var(--border);
    border-radius: var(--radius-lg);
    box-shadow: var(--shadow-sm);
    padding: 18px 20px;
    margin-bottom: 22px;
}

.fuar-suzgec-alan { display: flex; flex-direction: column; gap: 6px; min-width: 0; }

.fuar-suzgec-alan label {
    font-size: 11.5px;
    font-weight: 700;
    letter-spacing: .5px;
    text-transform: uppercase;
    color: var(--text-light);
}

.fuar-suzgec-alan input,
.fuar-suzgec-alan select {
    width: 100%;
    font-family: var(--font-main);
    font-size: 14px;
    color: var(--text);
    background: var(--white);
    border: 1px solid var(--border);
    border-radius: var(--radius);
    padding: 10px 12px;
    transition: border-color var(--transition-fast), box-shadow var(--transition-fast);
}

.fuar-suzgec-alan input:focus,
.fuar-suzgec-alan select:focus {
    outline: none;
    border-color: var(--secondary);
    box-shadow: 0 0 0 3px rgba(200, 162, 60, 0.18);
}

.fuar-suzgec-dugmeler {
    grid-column: 1 / -1;
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
}

.fuar-ozet {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 16px;
    flex-wrap: wrap;
    margin-bottom: 26px;
    padding-bottom: 14px;
    border-bottom: 1px solid var(--border);
}

.fuar-ozet p { font-size: 14.5px; color: var(--text-light); }
.fuar-ozet p strong { color: var(--primary); font-size: 17px; }

.fuar-gecmis-baglanti {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    font-size: 13.5px;
    font-weight: 600;
    color: var(--primary);
    padding: 8px 14px;
    border: 1px solid var(--border);
    border-radius: 999px;
    transition: background var(--transition-fast), border-color var(--transition-fast);
}

.fuar-gecmis-baglanti:hover { background: var(--bg-alt); border-color: var(--secondary); }
.fuar-gecmis-baglanti i { color: var(--secondary-dark); font-size: 12px; }

.fuar-ay-blok + .fuar-ay-blok { margin-top: 38px; }

.fuar-ay-baslik {
    display: flex;
    align-items: baseline;
    gap: 14px;
    margin-bottom: 16px;
}

.fuar-ay-baslik span {
    font-family: var(--font-heading);
    font-size: 25px;
    font-weight: 700;
    color: var(--primary);
    line-height: 1.2;
}

.fuar-ay-baslik em {
    font-style: normal;
    font-size: 12px;
    font-weight: 600;
    letter-spacing: .4px;
    text-transform: uppercase;
    color: var(--text-muted);
    white-space: nowrap;
}

.fuar-ay-baslik::after {
    content: '';
    flex: 1;
    height: 2px;
    background: linear-gradient(to right, var(--secondary), transparent);
}

[dir="rtl"] .fuar-ay-baslik::after { background: linear-gradient(to left, var(--secondary), transparent); }

.fuar-kartlar {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(430px, 1fr));
    gap: 16px;
}

.fuar-kart {
    display: flex;
    gap: 0;
    background: var(--white);
    border: 1px solid var(--border);
    border-radius: var(--radius-lg);
    overflow: hidden;
    transition: border-color var(--transition-fast), box-shadow var(--transition-fast), transform var(--transition-fast);
}

.fuar-kart:hover {
    border-color: var(--secondary);
    box-shadow: var(--shadow);
    transform: translateY(-2px);
}

.fuar-kart-devam { border-left: 4px solid var(--success); }
[dir="rtl"] .fuar-kart-devam { border-left: 1px solid var(--border); border-right: 4px solid var(--success); }

.fuar-kart-tarih {
    flex: 0 0 96px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 2px;
    padding: 18px 10px;
    background: var(--primary);
    color: var(--white);
    text-align: center;
}

.fuar-kart-tarih b {
    font-family: var(--font-heading);
    font-size: 26px;
    font-weight: 700;
    line-height: 1;
}

.fuar-kart-tarih .fuar-kart-tire { font-size: 13px; color: var(--secondary-light); line-height: 1; }

.fuar-kart-tarih small {
    margin-top: 5px;
    font-size: 10px;
    font-weight: 700;
    letter-spacing: .6px;
    text-transform: uppercase;
    color: var(--secondary-light);
}

.fuar-kart-govde { flex: 1; min-width: 0; padding: 16px 18px; }

.fuar-kart-rozetler { display: flex; flex-wrap: wrap; gap: 6px; margin-bottom: 8px; }

.fuar-etiket {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: .3px;
    color: var(--text-light);
    background: var(--bg-alt);
    border: 1px solid var(--border);
    border-radius: 999px;
    padding: 3px 10px;
}

.fuar-etiket-altin { color: var(--primary-dark); background: rgba(200, 162, 60, 0.18); border-color: var(--secondary); }
.fuar-etiket-altin i { color: var(--secondary-dark); font-size: 10px; }
.fuar-etiket-yesil { color: var(--success); background: rgba(5, 150, 105, 0.12); border-color: rgba(5, 150, 105, 0.35); }

.fuar-kart-ad {
    font-family: var(--font-heading);
    font-size: 17px;
    font-weight: 700;
    line-height: 1.35;
    color: var(--primary);
    margin-bottom: 6px;
}

.fuar-kart-konu {
    font-size: 13px;
    line-height: 1.55;
    color: var(--text-light);
    margin-bottom: 10px;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.fuar-kart-bilgi { list-style: none; display: flex; flex-direction: column; gap: 5px; margin: 0 0 12px; }

.fuar-kart-bilgi li {
    display: flex;
    align-items: flex-start;
    gap: 8px;
    font-size: 12.5px;
    line-height: 1.5;
    color: var(--text);
}

.fuar-kart-bilgi li i { flex: 0 0 14px; margin-top: 3px; font-size: 11.5px; color: var(--secondary-dark); }
.fuar-kart-urun { color: var(--text-light) !important; }

.fuar-ulke {
    display: inline-block;
    margin-left: 6px;
    font-size: 11px;
    font-weight: 700;
    color: var(--info);
}

[dir="rtl"] .fuar-ulke { margin-left: 0; margin-right: 6px; }

.fuar-kart-eylem {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    padding-top: 10px;
    border-top: 1px dashed var(--border);
}

.fuar-eylem {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    font-size: 12px;
    font-weight: 600;
    color: var(--primary);
    background: var(--bg-alt);
    border-radius: var(--radius);
    padding: 6px 11px;
    max-width: 100%;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    transition: background var(--transition-fast), color var(--transition-fast);
}

.fuar-eylem:hover { background: var(--primary); color: var(--white); }
.fuar-eylem i { font-size: 11px; }
.fuar-eylem:hover i { color: var(--secondary-light); }

/* Anasayfa "Yaklasan Fuarlar" seridi */
.fuar-serit { padding: 56px 0; background: var(--bg-alt); }

.fuar-serit-ust {
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    gap: 16px;
    flex-wrap: wrap;
    margin-bottom: 24px;
}

.fuar-serit-ust h2 {
    font-family: var(--font-heading);
    font-size: 30px;
    font-weight: 700;
    color: var(--primary);
    line-height: 1.2;
}

.fuar-serit-ust p { font-size: 14.5px; color: var(--text-light); margin-top: 6px; }

.fuar-serit-izgara {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
    gap: 16px;
}

.fuar-serit-kart {
    display: flex;
    flex-direction: column;
    gap: 10px;
    background: var(--white);
    border: 1px solid var(--border);
    border-top: 3px solid var(--secondary);
    border-radius: var(--radius-lg);
    padding: 18px;
    transition: transform var(--transition-fast), box-shadow var(--transition-fast);
}

.fuar-serit-kart:hover { transform: translateY(-3px); box-shadow: var(--shadow); }

.fuar-serit-tarih {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    align-self: flex-start;
    font-size: 12px;
    font-weight: 700;
    color: var(--primary-dark);
    background: rgba(200, 162, 60, 0.16);
    border-radius: 999px;
    padding: 4px 12px;
}

.fuar-serit-tarih i { font-size: 11px; color: var(--secondary-dark); }

.fuar-serit-ad {
    font-size: 15px;
    font-weight: 700;
    line-height: 1.4;
    color: var(--primary);
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.fuar-serit-yer { font-size: 12.5px; color: var(--text-light); display: flex; align-items: center; gap: 7px; }
.fuar-serit-yer i { color: var(--secondary-dark); font-size: 11px; }

.fuar-serit-destekli {
    align-self: flex-start;
    font-size: 10.5px;
    font-weight: 700;
    letter-spacing: .3px;
    text-transform: uppercase;
    color: var(--primary-dark);
    background: rgba(200, 162, 60, 0.22);
    border-radius: 999px;
    padding: 3px 10px;
}

@media (max-width: 992px) {
    .fuar-takvim .fuar-suzgec { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .fuar-suzgec-arama { grid-column: 1 / -1; }
    .fuar-kartlar { grid-template-columns: 1fr; }
}

@media (max-width: 768px) {
    .fuar-takvim .fuar-suzgec { grid-template-columns: 1fr; padding: 16px; }
    .fuar-suzgec-dugmeler .btn { flex: 1; justify-content: center; }
    .fuar-ozet { flex-direction: column; align-items: flex-start; }
    .fuar-ay-baslik span { font-size: 21px; }
    .fuar-kart-tarih { flex-basis: 74px; padding: 14px 6px; }
    .fuar-kart-tarih b { font-size: 21px; }
    .fuar-kart-govde { padding: 14px; }
    .fuar-kart-ad { font-size: 15.5px; }
    .fuar-serit { padding: 40px 0; }
    .fuar-serit-ust h2 { font-size: 24px; }
}

/* Basında Biz · haber özeti (Google Haberler beslemesi kartın özetini de getirir).
   4 satırda kırpılır ki farklı uzunluktaki özetler ızgarayı bozmasın. */
.basin-yansima-ozet {
    display: -webkit-box;
    -webkit-line-clamp: 4;
    -webkit-box-orient: vertical;
    overflow: hidden;
    font-size: 13px;
    line-height: 1.65;
    color: var(--text-muted);
    margin-top: 2px;
}

/* Mobilde özet punto olarak başlığın gerisinde kalmalı ama okunur olmalı;
   yer kazanmak için satır sayısı kısaltılır. */
@media (max-width: 768px) {
    .basin-yansima-ozet {
        font-size: 14px;
        -webkit-line-clamp: 3;
    }
}

/* === BOLUM J: kariyer iki taraflı kayıt (aday / işveren) === */

/* Giriş kapıları: /kariyer üstündeki iki büyük kart */
.kariyer-kapi { display: grid; grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)); gap: 20px; margin-bottom: 18px; }
.kariyer-kapi-kart { display: flex; flex-direction: column; gap: 10px; padding: 32px 30px; border-radius: var(--radius-lg); background: var(--primary); color: var(--white); border: 1px solid var(--primary); transition: transform var(--transition-fast), box-shadow var(--transition-fast); }
.kariyer-kapi-kart:hover { transform: translateY(-3px); box-shadow: var(--shadow-lg); }
.kariyer-kapi-kart.kariyer-kapi-isveren { background: var(--white); color: var(--text); border-color: var(--border); }
.kariyer-kapi-kart.kariyer-kapi-isveren:hover { border-color: var(--secondary); }
.kariyer-kapi-ikon { width: 54px; height: 54px; border-radius: 14px; display: inline-flex; align-items: center; justify-content: center; font-size: 22px; background: rgba(255, 255, 255, .14); color: var(--secondary-light); }
.kariyer-kapi-isveren .kariyer-kapi-ikon { background: var(--bg-alt); color: var(--secondary-dark); }
.kariyer-kapi-kart h2 { font-family: var(--font-heading); font-size: 25px; line-height: 1.25; margin: 0; }
.kariyer-kapi-kart p { font-size: 14.5px; line-height: 1.6; opacity: .92; margin: 0; }
.kariyer-kapi-ok { display: inline-flex; align-items: center; gap: 8px; margin-top: auto; padding-top: 8px; font-size: 14px; font-weight: 700; color: var(--secondary-light); }
.kariyer-kapi-isveren .kariyer-kapi-ok { color: var(--secondary-dark); }

.kariyer-kapi-alt { display: flex; flex-wrap: wrap; justify-content: center; gap: 10px 26px; margin-bottom: 30px; }
.kariyer-kapi-alt a { display: inline-flex; align-items: center; gap: 8px; font-size: 13.5px; font-weight: 600; color: var(--text-light); }
.kariyer-kapi-alt a:hover { color: var(--primary); }
.kariyer-kapi-alt a i { color: var(--secondary-dark); font-size: 12px; }

.kariyer-liste-baslik { font-family: var(--font-heading); font-size: 26px; color: var(--primary); text-align: center; margin-bottom: 20px; }

/* Kayıt / giriş formları */
.kariyer-dar { max-width: 860px; }
.kariyer-kayit-form { background: var(--white); border: 1px solid var(--border); border-radius: var(--radius-lg); padding: 30px 32px; }
.kariyer-kayit-form .kariyer-bolum-baslik { margin-top: 30px; }
.kariyer-kayit-form .kariyer-bolum-baslik:first-of-type { margin-top: 0; }
.kariyer-alt-baslik { font-size: 15.5px; font-weight: 700; color: var(--primary); margin: 24px 0 14px; }
.kariyer-ipucu { display: block; margin-top: 6px; font-size: 12.5px; line-height: 1.5; color: var(--text-muted); }
.kariyer-ipucu-blok { display: flex; align-items: flex-start; gap: 10px; background: var(--bg-alt); border-radius: var(--radius); padding: 14px 16px; font-size: 13.5px; line-height: 1.6; color: var(--text-light); margin-bottom: 18px; }
.kariyer-ipucu-blok i { color: var(--secondary-dark); margin-top: 3px; }

.kariyer-giris-kart { max-width: 460px; margin: 0 auto; background: var(--white); border: 1px solid var(--border); border-radius: var(--radius-lg); padding: 34px 32px; box-shadow: var(--shadow-sm); text-align: center; }
.kariyer-giris-ikon { width: 60px; height: 60px; margin: 0 auto 14px; border-radius: 50%; display: flex; align-items: center; justify-content: center; background: var(--bg-alt); color: var(--secondary-dark); font-size: 24px; }
.kariyer-giris-kart h2 { font-family: var(--font-heading); font-size: 24px; color: var(--primary); margin-bottom: 20px; }
.kariyer-giris-kart .kariyer-form { text-align: left; }
.kariyer-giris-kart .kariyer-gonder { width: 100%; justify-content: center; }
.kariyer-giris-kart .kariyer-kapi-alt { margin: 18px 0 0; }

/* İşveren paneli */
.kariyer-panel-ust { display: flex; flex-wrap: wrap; align-items: center; gap: 12px; margin-bottom: 24px; }
.kariyer-panel-ust form { margin: 0; }
.kariyer-girisli { display: inline-flex; align-items: center; gap: 9px; margin-right: auto; font-size: 14px; font-weight: 700; color: var(--primary); }
.kariyer-girisli i { color: var(--success); }
.kariyer-girisli small { font-weight: 500; color: var(--text-muted); }
.kariyer-cikis-btn { display: inline-flex; align-items: center; gap: 8px; padding: 11px 20px; border-radius: var(--radius); border: 1px solid var(--border); background: var(--white); font-family: inherit; font-size: 14px; font-weight: 600; color: var(--text-light); cursor: pointer; }
.kariyer-cikis-btn:hover { border-color: var(--danger); color: var(--danger); }

.kariyer-panel-tablo { width: 100%; border-collapse: collapse; font-size: 14px; }
.kariyer-panel-tablo th { text-align: left; padding: 12px 14px; background: var(--bg-alt); color: var(--primary); font-size: 12.5px; font-weight: 700; white-space: nowrap; }
.kariyer-panel-tablo td { padding: 13px 14px; border-bottom: 1px solid var(--border); vertical-align: top; }
.kariyer-panel-tablo tr:last-child td { border-bottom: none; }
.kariyer-red-neden { margin-top: 4px; font-size: 12.5px; color: var(--danger); }
.kariyer-durum { display: inline-flex; align-items: center; padding: 4px 12px; border-radius: 999px; font-size: 12px; font-weight: 700; white-space: nowrap; }
.kariyer-durum-bekliyor { background: rgba(217, 119, 6, .12); color: var(--warning); }
.kariyer-durum-onayli { background: rgba(5, 150, 105, .12); color: var(--success); }
.kariyer-durum-red { background: rgba(220, 38, 38, .1); color: var(--danger); }

/* Aday havuzu: kilit perdesi */
.kariyer-kilit { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 360px); gap: 22px 32px; align-items: center; background: var(--primary); color: var(--white); border-radius: var(--radius-lg); padding: 26px 30px; margin-bottom: 26px; }
.kariyer-kilit-metin { display: flex; align-items: flex-start; gap: 14px; }
.kariyer-kilit-metin > i { font-size: 20px; color: var(--secondary-light); margin-top: 3px; }
.kariyer-kilit-metin strong { display: block; font-size: 16px; margin-bottom: 5px; }
.kariyer-kilit-metin p { font-size: 13.5px; line-height: 1.6; opacity: .9; margin: 0; }
.kariyer-kilit-form { display: flex; flex-wrap: wrap; gap: 10px; }
.kariyer-kilit-form input { flex: 1 1 100%; min-width: 0; padding: 11px 14px; border: 1px solid rgba(255, 255, 255, .25); border-radius: var(--radius); background: rgba(255, 255, 255, .1); color: var(--white); font-family: inherit; font-size: 14px; }
.kariyer-kilit-form input::placeholder { color: rgba(255, 255, 255, .6); }
.kariyer-kilit-form input:focus { outline: none; border-color: var(--secondary); background: rgba(255, 255, 255, .16); }
.kariyer-kilit-form .btn { flex: 1 1 auto; justify-content: center; }
.kariyer-kilit-kayit { display: inline-flex; align-items: center; padding: 0 6px; font-size: 13px; font-weight: 600; color: var(--secondary-light); }

.kariyer-aday-suz { display: flex; flex-wrap: wrap; gap: 10px; margin-bottom: 24px; }
.kariyer-aday-suz input, .kariyer-aday-suz select { flex: 1 1 200px; min-width: 0; padding: 11px 14px; border: 1px solid var(--border); border-radius: var(--radius); background: var(--white); font-family: inherit; font-size: 14px; color: var(--text); }
.kariyer-aday-suz input:focus, .kariyer-aday-suz select:focus { outline: none; border-color: var(--secondary); }

/* Aday kartları */
.kariyer-aday-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(320px, 1fr)); gap: 20px; }
.kariyer-aday-kart { display: flex; flex-direction: column; gap: 14px; background: var(--white); border: 1px solid var(--border); border-radius: var(--radius-lg); padding: 22px 24px; }
.kariyer-aday-kart:hover { border-color: var(--secondary); box-shadow: var(--shadow-sm); }
.kariyer-aday-ust { display: flex; align-items: center; gap: 14px; }
.kariyer-aday-foto { width: 56px; height: 56px; border-radius: 50%; object-fit: cover; flex-shrink: 0; background: var(--bg-alt); }
.kariyer-aday-harf { display: flex; align-items: center; justify-content: center; font-family: var(--font-heading); font-size: 22px; font-weight: 700; color: var(--primary); }
.kariyer-aday-kart h3 { font-size: 16.5px; font-weight: 700; color: var(--text); line-height: 1.35; }
.kariyer-aday-pozisyon { display: block; margin-top: 3px; font-size: 13.5px; font-weight: 600; color: var(--secondary-dark); }
.kariyer-aday-meta { list-style: none; display: flex; flex-wrap: wrap; gap: 6px 16px; margin: 0; padding: 0; font-size: 12.5px; color: var(--text-light); }
.kariyer-aday-meta li { display: inline-flex; align-items: center; gap: 6px; }
.kariyer-aday-meta i { color: var(--secondary-dark); font-size: 11px; }
.kariyer-aday-ozet { font-size: 13.5px; line-height: 1.6; color: var(--text-light); margin: 0; }
.kariyer-aday-iletisim { display: flex; flex-wrap: wrap; gap: 8px 16px; margin-top: auto; padding-top: 14px; border-top: 1px solid var(--bg-alt); font-size: 13px; }
.kariyer-aday-iletisim a, .kariyer-aday-iletisim span { display: inline-flex; align-items: center; gap: 7px; color: var(--primary); font-weight: 600; }
.kariyer-aday-iletisim i { color: var(--secondary-dark); font-size: 12px; }
.kariyer-aday-iletisim.maskeli span { color: var(--text-muted); font-weight: 500; letter-spacing: .3px; }
.kariyer-aday-cv.kilitli { color: var(--text-muted); font-weight: 600; }
.kariyer-aday-cv.kilitli:hover { color: var(--primary); }

/* İlan detayındaki herkese açık iletişim kartı */
.kariyer-iletisim-kart h3 i { color: var(--secondary-dark); margin-right: 6px; }
.kariyer-iletisim-not { margin-top: 10px; padding-top: 10px; border-top: 1px solid var(--bg-alt); font-size: 12px; line-height: 1.55; color: var(--text-muted); }

@media (max-width: 860px) {
    .kariyer-kilit { grid-template-columns: 1fr; }
}
@media (max-width: 600px) {
    .kariyer-kapi-kart { padding: 26px 22px; }
    .kariyer-kapi-kart h2 { font-size: 22px; }
    .kariyer-kayit-form { padding: 22px 18px; }
    .kariyer-panel-ust { flex-direction: column; align-items: stretch; }
    .kariyer-girisli { margin-right: 0; }
    .kariyer-panel-ust .btn, .kariyer-cikis-btn { justify-content: center; }
}

/* ==========================================================================
   TÜİK göstergeleri şeridi — sağa/sola kayan kartlar, satır içi SVG grafikler
   ========================================================================== */
.tuik-bolum {
    padding: 64px 0;
    background: var(--bg-alt);
}

.tuik-baslik-satir {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 20px;
    margin-bottom: 26px;
}

.tuik-baslik-satir h2 {
    font-family: var(--font-heading);
    font-size: 30px;
    color: var(--primary);
    margin: 6px 0 4px;
}

.tuik-baslik-satir p {
    color: var(--text-light);
    font-size: 14.5px;
}

.tuik-oklar { display: flex; gap: 8px; flex: none; }

.tuik-ok {
    width: 42px;
    height: 42px;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 1px solid var(--border);
    border-radius: 50%;
    background: var(--white);
    color: var(--primary);
    cursor: pointer;
    transition: all var(--transition-fast);
}

.tuik-ok:hover { background: var(--primary); border-color: var(--primary); color: var(--white); }
.tuik-ok:disabled { opacity: .35; cursor: default; }

/* Şerit: parmakla kaydırılır, kartlar hizaya oturur */
.tuik-serit {
    display: flex;
    gap: 18px;
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    scroll-behavior: smooth;
    padding-bottom: 10px;
    scrollbar-width: thin;
}

.tuik-serit::-webkit-scrollbar { height: 6px; }
.tuik-serit::-webkit-scrollbar-thumb { background: var(--border); border-radius: 3px; }
.tuik-serit:focus-visible { outline: 2px solid var(--secondary); outline-offset: 4px; }

.tuik-kart {
    flex: 0 0 258px;
    scroll-snap-align: start;
    display: flex;
    flex-direction: column;
    padding: 22px;
    background: var(--white);
    border: 1px solid var(--border);
    border-radius: var(--radius-lg);
    box-shadow: var(--shadow-sm);
    transition: box-shadow var(--transition), transform var(--transition);
}

.tuik-kart:hover { box-shadow: var(--shadow); transform: translateY(-2px); }
.tuik-kart-genis { flex-basis: 380px; }

.tuik-kart header {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 10px;
    margin-bottom: 14px;
}

.tuik-kart h3 {
    font-size: 14px;
    font-weight: 600;
    color: var(--text);
    line-height: 1.4;
}

.tuik-donem {
    flex: none;
    padding: 2px 9px;
    border-radius: 10px;
    background: var(--bg-alt);
    font-size: 11.5px;
    font-weight: 600;
    color: var(--text-muted);
}

.tuik-rakam {
    font-family: var(--font-heading);
    font-size: 38px;
    line-height: 1.1;
    color: var(--primary);
    font-variant-numeric: tabular-nums;
}

.tuik-rakam small {
    display: block;
    margin-top: 4px;
    font-family: var(--font-main);
    font-size: 13px;
    font-weight: 500;
    color: var(--text-muted);
}

.tuik-rakam-orta { font-size: 28px; }

.tuik-degisim {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    margin-top: 10px;
    font-size: 13px;
    font-weight: 600;
}

.tuik-degisim span { font-weight: 400; color: var(--text-muted); }
.tuik-degisim.artis { color: var(--success); }
.tuik-degisim.azalis { color: var(--danger); }

/* Sütun grafiği */
.tuik-sutunlar {
    display: flex;
    align-items: flex-end;
    gap: 8px;
    height: 84px;
    margin-top: auto;
    padding-top: 16px;
}

.tuik-sutun {
    flex: 1;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: flex-end;
    height: 100%;
}

.tuik-sutun span {
    width: 100%;
    background: linear-gradient(180deg, var(--secondary) 0%, var(--secondary-dark) 100%);
    border-radius: 3px 3px 0 0;
    min-height: 6px;
}

.tuik-sutun em {
    margin-top: 6px;
    font-style: normal;
    font-size: 11px;
    color: var(--text-muted);
}

/* Yatay bar listesi (sektör dağılımı) */
.tuik-bar-liste { display: flex; flex-direction: column; gap: 9px; }

.tuik-bar-liste li {
    display: grid;
    grid-template-columns: 1fr 76px auto;
    align-items: center;
    gap: 10px;
    font-size: 12.5px;
}

.tuik-bar-ad {
    color: var(--text);
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.tuik-bar-yol {
    height: 7px;
    border-radius: 4px;
    background: var(--bg-alt);
    overflow: hidden;
}

.tuik-bar-dolgu {
    display: block;
    height: 100%;
    border-radius: 4px;
    background: var(--primary-light);
}

.tuik-bar-deger {
    font-weight: 600;
    color: var(--primary);
    font-variant-numeric: tabular-nums;
}

/* Halka (oran) grafiği */
.tuik-halka {
    position: relative;
    width: 132px;
    height: 132px;
    margin: 4px auto 0;
}

.tuik-halka svg { width: 100%; height: 100%; transform: rotate(-90deg); }

.tuik-halka circle {
    fill: none;
    stroke-width: 3.2;
}

.tuik-halka-zemin { stroke: var(--bg-alt); }
.tuik-halka-dolgu { stroke: var(--secondary); stroke-linecap: round; }

.tuik-halka strong {
    position: absolute;
    inset: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    font-family: var(--font-heading);
    font-size: 27px;
    color: var(--primary);
    font-variant-numeric: tabular-nums;
}

.tuik-halka strong small { font-size: 15px; margin-left: 1px; }

.tuik-cizgi {
    width: 100%;
    height: 32px;
    margin-top: auto;
    padding-top: 14px;
    color: var(--primary-light);
}

.tuik-kaynak {
    margin-top: 18px;
    font-size: 12.5px;
    color: var(--text-muted);
}

.tuik-kaynak a { color: var(--primary); text-decoration: underline; }
.tuik-kaynak i { color: var(--secondary); margin-right: 4px; }

@media (prefers-reduced-motion: reduce) {
    .tuik-serit { scroll-behavior: auto; }
    .tuik-kart:hover { transform: none; }
}

@media (max-width: 900px) {
    .tuik-bolum { padding: 44px 0; }
    .tuik-baslik-satir h2 { font-size: 24px; }
    .tuik-oklar { display: none; }
    .tuik-kart { flex-basis: 236px; padding: 18px; }
    .tuik-kart-genis { flex-basis: 290px; }
    .tuik-kart h3 { font-size: 15px; }
    .tuik-bar-liste li { font-size: 15px; grid-template-columns: 1fr 56px auto; }
    .tuik-rakam { font-size: 32px; }
}

/* ==========================================================================
   ÇOKLU EKRAN + ERİŞİLEBİLİRLİK QA — YENİ MODÜLLER
   (mega menü vitrini · dergi şeridi · kariyer · fuar takvimi · basında biz)

   Ölçüm: Playwright 390x844 · 768x1024 · 1440x900 · 1920x1080.
   Yatay taşma dört ekranda da 0 çıktı; burada yalnızca dokunma hedefi ve
   punto düzeltmeleri var. Mevcut kural HİÇ değiştirilmedi, hepsi eklemedir.
   Yukarıdaki "MOBİL QA DÜZELTMELERİ" bloğunun kapsamadığı, bu turda eklenen
   modüllere ait açıklar kapatılır.
   ========================================================================== */

@media (max-width: 768px) {

    /* ---- 1) Dokunma hedefleri (ölçülen değerler yorumda) ---- */

    /* Mobil menüde alt menüyü açan chevron 28x28 idi ve alt menüyü SADECE bu
       ikon açıyor (sarmalayan <a href="#"> hiçbir şey yapmıyor, JS dinleyicisi
       .mobile-sub-toggle üzerinde). Yani 58 px'lik satırın tamamı basılabilir
       görünüyor ama yalnız 28 px'lik daire iş görüyor.
       Görsel daire büyümesin diye ölçü sabit bırakılıp hedef alanı görünmez
       bir ::after ile 44 px'e çıkarılır — .hero-dot'ta kullanılan yöntemin
       aynısı. ::after dönen ok ile birlikte dönmesin diye .active'te
       ters çevrilir (dönen kare hedefi köşelerde kaydırırdı). */
    .mobile-sub-toggle {
        position: relative;
    }

    .mobile-sub-toggle::after {
        content: '';
        position: absolute;
        top: 50%;
        left: 50%;
        width: 44px;
        height: 44px;
        transform: translate(-50%, -50%);
        border-radius: 50%;
    }

    .mobile-sub-toggle.active::after {
        transform: translate(-50%, -50%) rotate(180deg);
    }

    /* Fuar kartındaki eylem hapları ("Takvime ekle", site, e-posta) 31 px
       yüksekliğindeydi ve tek kartta 3 tanesi alt alta duruyor — en yoğun
       ıskalama burada. Yükseklik 40 px'e çıkarılır; hap zaten tek satır
       (white-space: nowrap) olduğu için satır kayması olmaz. */
    .fuar-eylem {
        min-height: 40px;
        padding: 8px 12px;
    }

    /* Kariyer giriş kartlarının altındaki iki bağlantı ("İşveren Girişi",
       "Aday Havuzu") 22 px yüksekliğindeydi; ikisi yan yana durduğu için
       yanlış bağlantıya basma riski yüksekti. */
    .kariyer-kapi-alt a {
        display: inline-flex;
        align-items: center;
        min-height: 40px;
        padding: 0 4px;
    }

    /* Dergi şeridinin "Tümü" bağlantısı da aynı satırda 40 px'in altındaydı. */
    .dserit-tumu {
        display: inline-flex;
        align-items: center;
        min-height: 40px;
    }

    /* Fuar listesindeki "Geçmiş fuarları göster" bağlantısı tam 40 px idi;
       sınırda kalmasın diye 44'e çıkarılır. */
    .fuar-gecmis-baglanti {
        min-height: 44px;
        display: inline-flex;
        align-items: center;
    }


    /* ---- 2) Okunabilirlik: yeni modüllerde gövde metni 15 px altındaydı ---- */

    /* Fuar kartının konu satırı 13 px, ürün/bilgi satırları 12.5 px idi.
       Kart içeriğinin tamamı burada okunuyor; punto yükseltilirken satır
       yüksekliği de gevşetilir, aksi halde 2 satırlık kırpma sıkışık durur. */
    .fuar-kart-konu {
        font-size: 15px;
        line-height: 1.5;
    }

    .fuar-kart-bilgi li {
        font-size: 15px;
        line-height: 1.5;
    }

    .fuar-kart-bilgi li i {
        flex-basis: 15px;
        font-size: 13px;
        margin-top: 4px;
    }

    /* Basında Biz kart özeti 14 px'te kalmıştı (mobil kuralı zaten var,
       yalnızca punto bir kademe yükseltiliyor; 3 satır kırpması korunur). */
    .basin-yansima-ozet {
        font-size: 15px;
    }

    /* Bülten rıza metni 12.5 px idi. Bu bir KVKK/izin beyanı — kullanıcının
       onay verdiği metnin okunabilir olması gerekir, süs yazısı değil.
       Yukarıdaki blok yalnızca içindeki <a>'ya dolgu veriyordu, puntoya
       dokunmuyordu. */
    .bulten-riza {
        font-size: 14.5px;
        line-height: 1.5;
    }

    /* Kariyer giriş kartı açıklaması 14.5 px idi. */
    .kariyer-kapi-kart p {
        font-size: 15px;
        line-height: 1.55;
    }

    /* Mega menü mobil vitrin kartı: başlık 13 px, alt başlık 11 px doğuyordu.
       Kart 150 px geniş olduğu için punto yükseltmesi kartı taşırmaz —
       şerit zaten overflow-x: auto, taşan kısım yatayda kayar. */
    .mobile-vitrin-kart strong { font-size: 14.5px; line-height: 1.35; }
    .mobile-vitrin-kart small { font-size: 12.5px; line-height: 1.35; }
}


/* ---- 3) Erişilebilirlik: klavye odağı ---- */

/* Yeni eklenen kaydırılabilir şeritler tabindex="0" ile klavyeden
   odaklanabiliyor (dergi şeridi role="group" + aria-label taşıyor), ancak
   odak halkası tarayıcı varsayılanına kalmıştı ve açık zeminde zor
   seçiliyordu. :focus-visible kullanılır — fare ile tıklayanda halka çıkmaz. */
.dserit-pist:focus-visible,
.mobile-vitrin:focus-visible,
.tablo-sarmal:focus-visible {
    outline: 3px solid var(--secondary);
    outline-offset: 3px;
    border-radius: var(--radius);
}

/* Şerit okları ve vitrin kartlarında da odak görünür olsun. */
.dserit-ok:focus-visible,
.dserit-kart:focus-visible,
.mega-vitrin-kart:focus-visible,
.mobile-vitrin-kart:focus-visible,
.kariyer-kapi-kart:focus-visible,
.fuar-eylem:focus-visible {
    outline: 3px solid var(--secondary);
    outline-offset: 2px;
}

/* Devre dışı şerit oku tıklanamaz olduğunu belli etsin (JS disabled ediyor). */
.dserit-ok[disabled] {
    opacity: 0.4;
    cursor: default;
}


/* ---- 4) iOS Safari'de alana dokununca sayfanın kendiliğinden yakınlaşması ----

   Ölçüm: yeni kariyer formlarında metin alanlarının tamamı 14 px, arama ve
   bülten alanları 13 px. iOS Safari, yazı boyutu 16 px'in ALTINDA olan bir
   metin alanına odaklanıldığında sayfayı otomatik yakınlaştırır; kullanıcı
   geri uzaklaştıramadığı için düzen kayar ve formun geri kalanı ekran dışında
   kalır. Tek çözüm alanı 16 px'e çıkarmaktır (maximum-scale ile yakınlaşmayı
   kapatmak erişilebilirliği bozar, o yol seçilmedi).

   Yalnızca dar ekranlarda ve yalnızca yazı yazılan alanlarda uygulanır;
   masaüstü tipografisi aynı kalır. Onay/seçim kutuları kapsam dışı. */

@media (max-width: 768px) {

    .form-group input,
    .form-group select,
    .form-group textarea,
    .kariyer-form input,
    .kariyer-form select,
    .kariyer-form textarea,
    .rnd-alan input,
    .bvr-alan input,
    .bvr-alan select,
    .bvr-alan textarea,
    .search-form input,
    .footer-cta-form input {
        font-size: 16px;
    }

    /* Punto büyüyünce alan yükseliyor; dolgu bir tık kısılarak eski yükseklik
       korunur, böylece form uzunluğu ve ızgara hizası bozulmaz. */
    .form-group input,
    .form-group select,
    .kariyer-form input:not([type="file"]),
    .kariyer-form select,
    .rnd-alan input,
    .bvr-alan input,
    .bvr-alan select {
        padding-top: 10px;
        padding-bottom: 10px;
    }
}

/* Asistan balonundaki mesaj kutusu da aynı nedenle 16 px'e çıkarılır.
   Balon sabit konumlu olduğu için yakınlaşma burada daha da bozucu:
   kullanıcı yazarken panel ekran dışına taşıyordu. */
@media (max-width: 768px) {
    /* #kaysiWGiris kimlik seçicisiyle tanımlı (5682. satır); sınıf seçici
       özgüllük yarışını kaybettiği için burada da kimlik kullanılır. */
    #kaysiWGiris,
    .kaysi-w-form textarea,
    .kaysi-w-form input { font-size: 16px; }
}

/* ═══════════════════════════════════════════════════════════════════════
   DALGA 8 — MTSO TV · Rakamlarla Malatya · hızlı işlemler · manşet · dergilik
   ═══════════════════════════════════════════════════════════════════════ */

/* ── Ortalanmış bölüm başlığı ────────────────────────────────────────────
   Bölüm başlıkları sola dayalıydı; sayfanın simetrik düzeniyle uyumlu olsun
   diye ortalanır. Yandaki bağlantı/oklar başlığın altına iner. */
.gundem-bas-orta,
.sosyal-bolum-bas-orta,
.dserit-bas-orta,
.bolum-bas-orta {
    flex-direction: column;
    align-items: center;
    text-align: center;
    gap: 14px;
}
.gundem-bas-orta .bolum-ust,
.sosyal-bolum-bas-orta .bolum-ust,
.dserit-bas-orta .bolum-ust,
.bolum-bas-orta .bolum-ust {
    justify-content: center;
}
/* Etiketin solundaki çizgi ortalı düzende iki yana simetrik durur */
.bolum-bas-orta .bolum-ust::before,
.gundem-bas-orta .bolum-ust::before,
.sosyal-bolum-bas-orta .bolum-ust::before,
.dserit-bas-orta .bolum-ust::before {
    width: 26px;
}
.bolum-bas-orta h2 {
    font-family: var(--font-heading);
    font-size: 34px;
    color: var(--primary);
    margin: 0 0 6px;
    line-height: 1.15;
}
.bolum-bas-orta p {
    color: var(--text-light);
    font-size: 15px;
    margin: 0;
}

/* ── Manşet: haber görseli kırpılmadan görünür ───────────────────────────
   Arka plandaki aynı görsel bulanıklaştırılıp lacivert zeminle karışır;
   böylece her orandaki fotoğraf boşluk bırakmadan oturur ve haber
   fotoğrafının kendisi bütün olarak okunur. */
/* Arka plan, ön plandaki fotoğrafın bulanık kopyasıdır ve öyle OKUNMALI:
   aşırı bulanıklık ve koyu perde onu tanınmaz hâle getiriyordu. Bulanıklık
   düşürüldü, doygunluk artırıldı; perde de saydamlaştırıldı ki görselin
   silueti mavi zeminin altından seçilsin. Metin okunurluğu, yazının
   arkasındaki ayrı degradeyle korunur. */
.hero-slide-bg {
    filter: blur(9px) saturate(1.35) brightness(0.95);
    transform: scale(1.1);
}
.hero-slide.active .hero-slide-bg {
    transform: scale(1.05);
}
.hero-slide-overlay {
    background:
        /* metin tarafında okunurluk için yoğun, sağa doğru açılan perde */
        linear-gradient(
            to right,
            rgba(17, 40, 64, 0.88) 0%,
            rgba(17, 40, 64, 0.62) 42%,
            rgba(17, 40, 64, 0.34) 72%,
            rgba(17, 40, 64, 0.30) 100%
        ),
        /* tüm yüzeye ince mavi renk katmanı: görsel kaybolmadan kurumsal ton */
        linear-gradient(rgba(17, 40, 64, 0.22), rgba(17, 40, 64, 0.22));
}
.hero-slide-content {
    gap: 36px;
    justify-content: space-between;
}
.hero-gorsel {
    order: 2;
    flex: 0 1 46%;
    max-width: 46%;
    display: flex;
    align-items: center;
    justify-content: flex-end;
}
.hero-gorsel img {
    max-width: 100%;
    max-height: 78%;
    width: auto;
    height: auto;
    object-fit: contain;
    border-radius: var(--radius-lg);
    box-shadow: 0 24px 60px rgba(0, 0, 0, 0.45);
}
.hero-text {
    order: 1;
    flex: 1 1 auto;
    min-width: 0;
}

@media (max-width: 1024px) {
    /* Dar ekranda görsel üstte, metin altta: iki sütun sıkışıyor.
       Sabit yükseklik yerine içeriğe göre büyür — aksi hâlde görsel + başlık +
       düğme 360px'e sığmıyor ve "Devamını Oku" perdenin dışında kalıyordu. */
    .hero-slider,
    .hero-slides,
    .hero-slide { height: auto; min-height: 420px; }
    .hero-slide { position: relative; }
    .hero-slide:not(.active) { position: absolute; inset: 0; }

    .hero-slide-content {
        flex-direction: column;
        align-items: stretch;
        justify-content: flex-start;
        gap: 16px;
        padding: 22px 20px 58px;
        height: auto;
    }
    .hero-gorsel {
        order: 1;
        flex: 0 0 auto;
        max-width: 100%;
        justify-content: center;
    }
    .hero-gorsel img { max-height: 34vh; }
    .hero-text { order: 2; max-width: 100%; text-align: center; }
    .hero-text h2 { font-size: 25px; }
}

@media (max-width: 768px) {
    /* Bu bant üstteki 1024px kuralını ezmesin: yükseklik yine içeriğe bağlı */
    .hero-slider { height: auto; min-height: 380px; }
    .hero-slide-content { align-items: stretch; padding: 18px 18px 56px; }
    .hero-gorsel img { max-height: 30vh; }
    .hero-text h2 { font-size: 22px; }
}

/* ── Mega menü hızlı işlemler şeridi ─────────────────────────────────────
   Her sekmenin altında sabit durur; kaynak anasayfadaki "Hızlı İşlemler"
   listesiyle aynıdır (site_link 'hizli'), tek yerden yönetilir. */
.mega-hizli {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 12px 20px;
    border-top: 1px solid var(--border);
    background: var(--bg-light, #f6f8fb);
    border-radius: 0 0 var(--radius-lg) var(--radius-lg);
}
/* Kısayollar tek satırda kalsın: etiket kaldırıldığı için sekiz kutu sığıyor.
   Sığmazsa sarmak yerine yatay kaydırılır — menü yüksekliği sabit kalır. */
.mega-hizli-liste {
    display: flex;
    flex-wrap: nowrap;
    gap: 6px;
    min-width: 0;
    overflow-x: auto;
    scrollbar-width: none;
    padding-bottom: 2px;
}
.mega-hizli-liste::-webkit-scrollbar { display: none; }
.mega-hizli-liste a {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    padding: 7px 12px;
    border-radius: 999px;
    background: var(--white);
    border: 1px solid var(--border);
    color: var(--primary);
    font-size: 12.5px;
    font-weight: 600;
    white-space: nowrap;
    transition: background .18s, border-color .18s, color .18s;
}
.mega-hizli-liste a:hover {
    background: var(--secondary);
    border-color: var(--secondary);
    color: #fff;
}
.mega-hizli-liste i { font-size: 12px; opacity: 0.8; }
.mega-hizli-liste a:hover i { opacity: 1; }

/* ── Mobil menü hızlı işlemler ───────────────────────────────────────────
   Sekmelerin ÜSTÜNDE durur: telefonda en çok aranan işler bunlar ve alt menü
   açmadan tek dokunuşla erişilebilmeli. */
.mobil-hizli {
    margin: 4px 0 14px;
    padding: 14px 16px;
    background: linear-gradient(135deg, var(--primary) 0%, #16324f 100%);
    border-radius: var(--radius-lg);
}
.mobil-hizli-etiket {
    display: block;
    margin-bottom: 10px;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 0.8px;
    text-transform: uppercase;
    color: var(--secondary-light, #e3b23c);
}
.mobil-hizli-izgara {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 8px;
}
.mobil-hizli-izgara a {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: flex-start;
    gap: 6px;
    min-height: 66px;
    padding: 10px 4px;
    border-radius: 12px;
    background: rgba(255, 255, 255, 0.08);
    color: #fff;
    text-align: center;
    font-size: 10.5px;
    font-weight: 600;
    line-height: 1.25;
}
.mobil-hizli-izgara a:active { background: rgba(255, 255, 255, 0.18); }
.mobil-hizli-izgara i { font-size: 17px; color: var(--secondary-light, #e3b23c); }

@media (max-width: 380px) {
    .mobil-hizli-izgara { grid-template-columns: repeat(3, 1fr); }
}

/* ── MTSO TV ─────────────────────────────────────────────────────────────
   Kapak kendi sunucumuzdan gelir; YouTube çerçevesi ancak oynata basılınca
   eklenir (üçüncü parti isteği ve çerezi ziyaretçi istemeden oluşmasın). */
.tv-bolum { padding: 64px 0; background: #14161a; }
.tv-bolum .bolum-ust { color: #8a939f; }
.tv-bolum .bolum-ust::before { background: #e02f2f; }
.tv-bolum .bolum-bas-orta h2 { color: #fff; }
.tv-bolum .bolum-bas-orta p { color: #9aa3af; }
.tv-bas { margin-bottom: 28px; }

.tv-izgara {
    display: grid;
    grid-template-columns: minmax(0, 1.85fr) minmax(0, 1fr);
    gap: 20px;
    align-items: start;
}

.tv-ana,
.tv-kart-oynatici {
    position: relative;
    aspect-ratio: 16 / 9;
    border-radius: var(--radius-lg);
    overflow: hidden;
    background: #000;
}
.tv-ana img,
.tv-kart-oynatici img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}
.tv-ana iframe,
.tv-kart-oynatici iframe {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    border: 0;
}

.tv-oynat {
    position: absolute;
    inset: 0;
    margin: auto;
    width: 76px;
    height: 54px;
    border: 0;
    border-radius: 14px;
    background: rgba(224, 47, 47, 0.92);
    color: #fff;
    font-size: 28px;
    line-height: 0;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: transform .2s, background .2s;
}
.tv-oynat:hover { background: #e02f2f; transform: scale(1.08); }
.tv-oynat-kucuk { width: 56px; height: 40px; font-size: 20px; border-radius: 10px; }

.tv-ana-baslik {
    position: absolute;
    inset: auto 0 0 0;
    padding: 44px 20px 18px;
    background: linear-gradient(to top, rgba(0,0,0,0.88), rgba(0,0,0,0));
    color: #fff;
    font-family: var(--font-heading);
    font-size: 21px;
    font-weight: 700;
    line-height: 1.25;
}
.tv-ana-baslik a { color: inherit; }
.tv-ana-baslik a:hover { color: var(--secondary-light, #e3b23c); }

.tv-liste {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    flex-direction: column;
    gap: 10px;
}
.tv-oge {
    display: flex;
    gap: 12px;
    width: 100%;
    padding: 6px;
    border: 0;
    border-radius: 10px;
    background: transparent;
    color: #e8ebef;
    text-align: start;
    cursor: pointer;
    transition: background .18s;
}
.tv-oge:hover { background: rgba(255, 255, 255, 0.07); }
.tv-oge-gorsel {
    position: relative;
    flex: 0 0 108px;
    aspect-ratio: 16 / 9;
    border-radius: 8px;
    overflow: hidden;
    background: #000;
}
.tv-oge-gorsel img { width: 100%; height: 100%; object-fit: cover; display: block; }
.tv-oge-gorsel i {
    position: absolute;
    inset: 0;
    margin: auto;
    width: 26px;
    height: 26px;
    border-radius: 50%;
    background: rgba(224, 47, 47, 0.92);
    color: #fff;
    font-size: 10px;
    display: flex;
    align-items: center;
    justify-content: center;
}
.tv-oge-baslik {
    flex: 1 1 auto;
    min-width: 0;
    font-size: 13.5px;
    font-weight: 600;
    line-height: 1.35;
}

.tv-alt { margin-top: 24px; text-align: center; }
.tv-tumu {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    padding: 11px 22px;
    border: 1px solid rgba(255, 255, 255, 0.22);
    border-radius: 999px;
    color: #fff;
    font-size: 13.5px;
    font-weight: 600;
    transition: background .2s, border-color .2s;
}
.tv-tumu:hover { background: #e02f2f; border-color: #e02f2f; }

@media (max-width: 900px) {
    .tv-izgara { grid-template-columns: 1fr; }
    .tv-liste {
        flex-direction: row;
        overflow-x: auto;
        padding-bottom: 8px;
        -webkit-overflow-scrolling: touch;
        scroll-snap-type: x proximity;   /* kart yarım kalmasın */
        scrollbar-width: none;
    }
    .tv-liste::-webkit-scrollbar { display: none; }

    /* ⚠️ İŞARETİ <li>'YE VERİLİR, <button>'A DEĞİL.
       Yapı: ul.tv-liste > li > button.tv-oge — yani .tv-liste'nin flex
       ÖĞELERİ <li>'lerdir. Genişlik eskiden .tv-oge'ye yazılıyordu; <li>
       hiç boyutlandırılmadığı için içeriğine göre büzülüyor ve kartlar
       390px'te 79-113px arası RASTGELE genişliklere düşüyordu (küçük
       resimler farklı boylarda, şerit bozuk görünüyordu). */
    .tv-liste > li {
        flex: 0 0 210px;
        scroll-snap-align: start;
    }
    .tv-oge { width: 100%; flex-direction: column; }
    .tv-oge-gorsel { flex: 0 0 auto; width: 100%; }

    /* Başlık eskiden serbest sarıyordu: 6-7 satıra yayılıp kart yüksekliğini
       şişiriyor ve alttan kırpılıyordu ("… der mi?" yarım kalıyordu).
       İki satırda kesilir, üç nokta ile biter. */
    .tv-oge-baslik {
        display: -webkit-box;
        -webkit-line-clamp: 2;
        line-clamp: 2;
        -webkit-box-orient: vertical;
        overflow: hidden;
        min-height: calc(1.35em * 2);   /* kartlar aynı hizada bitsin */
    }

    .tv-ana-baslik { font-size: 16px; padding: 34px 14px 14px; }
}

/* MTSO TV sayfası */
.tv-sayfa { padding: 44px 0 64px; }
.tv-one-cikan { margin-bottom: 34px; }
.tv-izgara-sayfa {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(260px, 1fr));
    gap: 22px;
}
.tv-kart {
    background: var(--white);
    border: 1px solid var(--border);
    border-radius: var(--radius-lg);
    overflow: hidden;
    transition: box-shadow .2s, transform .2s;
}
.tv-kart:hover { box-shadow: var(--shadow-lg, 0 12px 30px rgba(0,0,0,.1)); transform: translateY(-2px); }
.tv-kart-govde { padding: 14px 16px 18px; }
.tv-kart-govde h3 {
    font-size: 15px;
    font-weight: 600;
    line-height: 1.4;
    margin: 0 0 6px;
    color: var(--primary);
}
.tv-kart-govde time { font-size: 12.5px; color: var(--text-light); }
.tv-bos { padding: 40px 0; text-align: center; color: var(--text-light); }
.tv-sayfalama { display: flex; justify-content: center; gap: 8px; margin-top: 34px; }
.tv-sayfa-oge {
    min-width: 40px;
    height: 40px;
    padding: 0 12px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 1px solid var(--border);
    border-radius: 8px;
    color: var(--primary);
    font-weight: 600;
    font-size: 14px;
}
.tv-sayfa-oge.aktif,
.tv-sayfa-oge:hover { background: var(--primary); border-color: var(--primary); color: #fff; }

/* ── Rakamlarla Malatya (istatistik sayfası) ─────────────────────────── */
.ist-sayfa { padding: 40px 0 70px; }

.ist-vurgu {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(210px, 1fr));
    gap: 16px;
    margin-bottom: 38px;
}
.ist-vurgu-kart {
    padding: 20px;
    border-radius: var(--radius-lg);
    background: linear-gradient(135deg, var(--primary) 0%, #16324f 100%);
    color: #fff;
}
.ist-vurgu-ad { display: block; font-size: 12.5px; opacity: .78; margin-bottom: 8px; }
.ist-vurgu-deger {
    display: block;
    font-family: var(--font-heading);
    font-size: 27px;
    line-height: 1.1;
}
.ist-vurgu-donem { display: block; margin-top: 6px; font-size: 12px; opacity: .6; }

.ist-govde { display: grid; grid-template-columns: 210px minmax(0, 1fr); gap: 34px; align-items: start; }

.ist-yan {
    position: sticky;
    top: 96px;
    display: flex;
    flex-direction: column;
    gap: 2px;
}
.ist-yan a {
    padding: 9px 12px;
    border-radius: 8px;
    border-inline-start: 3px solid transparent;
    color: var(--text);
    font-size: 13.5px;
    font-weight: 600;
    transition: background .16s, color .16s, border-color .16s;
}
.ist-yan a:hover {
    background: var(--bg-light, #f6f8fb);
    color: var(--primary);
    border-inline-start-color: var(--secondary);
}

.ist-bolum { margin-bottom: 44px; scroll-margin-top: 92px; }
.ist-bolum-bas {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    gap: 14px;
    padding-bottom: 10px;
    margin-bottom: 20px;
    border-bottom: 2px solid var(--border);
}
.ist-bolum-bas h2 {
    font-family: var(--font-heading);
    font-size: 24px;
    color: var(--primary);
    margin: 0;
}
.ist-donem { font-size: 12.5px; color: var(--text-light); white-space: nowrap; }

.ist-kart-izgara {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(230px, 1fr));
    gap: 16px;
}
.ist-kart {
    padding: 18px;
    border: 1px solid var(--border);
    border-radius: var(--radius-lg);
    background: var(--white);
}
.ist-kart h3 {
    font-size: 13px;
    font-weight: 600;
    color: var(--text-light);
    margin: 0 0 10px;
    line-height: 1.35;
    min-height: 2.7em;
}
.ist-kart-deger { display: flex; align-items: baseline; justify-content: space-between; gap: 10px; }
.ist-kart-deger strong {
    font-family: var(--font-heading);
    font-size: 23px;
    color: var(--primary);
    line-height: 1.1;
}
.ist-kart-donem { font-size: 11.5px; color: var(--text-light); }

.ist-fark {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    margin-top: 10px;
    font-size: 12.5px;
    font-weight: 600;
}
.ist-fark span { font-weight: 400; color: var(--text-light); }
.ist-fark.iyi { color: #1a7f4b; }
.ist-fark.kotu { color: #c0392b; }
.ist-vurgu-kart .ist-fark { margin-top: 8px; }
.ist-vurgu-kart .ist-fark.iyi { color: #6fe0a4; }
.ist-vurgu-kart .ist-fark.kotu { color: #ff9b8f; }

.ist-cizgi { display: block; width: 100%; height: 32px; margin-top: 12px; color: var(--secondary); }

.ist-bar-liste { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 9px; }
.ist-bar-liste li { display: grid; grid-template-columns: minmax(120px, 1.4fr) minmax(0, 2fr) auto; gap: 12px; align-items: center; }
.ist-bar-ad { font-size: 13.5px; color: var(--text); }
.ist-bar-yol { height: 9px; border-radius: 999px; background: var(--border); overflow: hidden; }
.ist-bar-dolgu { display: block; height: 100%; border-radius: 999px; background: var(--primary); }
.ist-bar-deger { font-size: 13.5px; font-weight: 700; color: var(--primary); white-space: nowrap; text-align: end; }
.ist-bar-deger small { display: block; font-size: 11px; font-weight: 400; color: var(--text-light); }

.ist-kaynak {
    margin-top: 10px;
    padding-top: 16px;
    border-top: 1px solid var(--border);
    font-size: 12.5px;
    color: var(--text-light);
}
.ist-kaynak a { color: var(--primary); text-decoration: underline; }

@media (max-width: 900px) {
    .ist-govde { grid-template-columns: 1fr; gap: 20px; }
    /* Yan gezinme mobilde yatay kayan sekme şeridine döner */
    .ist-yan {
        position: static;
        flex-direction: row;
        gap: 8px;
        overflow-x: auto;
        padding-bottom: 8px;
        -webkit-overflow-scrolling: touch;
    }
    .ist-yan a {
        flex: 0 0 auto;
        border: 1px solid var(--border);
        border-radius: 999px;
        padding: 9px 16px;
        white-space: nowrap;
    }
    .ist-bar-liste li { grid-template-columns: 1fr auto; row-gap: 5px; }
    .ist-bar-yol { grid-column: 1 / -1; }
    .ist-kart h3 { min-height: 0; }
}

/* ── Dergilik şeridi: otomatik kayma ─────────────────────────────────────
   Otomatik ilerler; imleç üstündeyken, klavye odağındayken ve parmak
   şeridin üstündeyken durur (okumayı kesmesin). */
.dserit-noktalar {
    display: flex;
    justify-content: center;
    gap: 8px;
    margin-top: 6px;
}
.dserit-nokta {
    width: 9px;
    height: 9px;
    padding: 0;
    border: 0;
    border-radius: 50%;
    background: rgba(27, 58, 92, 0.22);
    cursor: pointer;
    transition: background .2s, width .2s;
}
.dserit-nokta.aktif { width: 24px; border-radius: 999px; background: var(--secondary); }

.dserit-alt {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 16px;
    margin-top: 14px;
}
.dserit-alt .dserit-ok { width: 40px; height: 40px; }

/* ── e-Dergi okuyucusu: akış kipi (rapor / sunum) ────────────────────────
   Rapor ve sunumlar sayfa açılımına göre dizilmemiştir; kitap düzeni içeriği
   ikiye böler. Bu kipte sayfalar tek sütunda alt alta akar, kaydırarak okunur.
   Sayfalar görünür alana girdikçe çizilir (200 sayfalık raporda hepsini
   baştan çizmek tarayıcıyı kilitler). */
.okuyucu-akis .okuyucu-sahne {
    display: block;
    overflow-y: auto;
    overflow-x: hidden;
    padding: 20px 16px 28px;
    scroll-behavior: smooth;
}
.okuyucu-akis .okuyucu-kitap {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 16px;
    perspective: none;
    max-height: none;
}
.okuyucu-akis .ok-akis-sayfa {
    width: min(100%, 900px);
    border-radius: 4px;
    background: var(--white);
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.35);
    cursor: default;
}
/* Henüz çizilmemiş sayfa: yer tutucu, düzen zıplamasın */
.okuyucu-akis .ok-akis-sayfa.ok-bos {
    min-height: 60vh;
    background: rgba(255, 255, 255, 0.06);
    box-shadow: none;
}
.okuyucu-akis .ok-akis-sayfa canvas {
    width: 100%;
    height: auto;
    display: block;
    border-radius: 4px;
}
/* Akış kipinde kitap okları sayfadan sayfaya atlar; ipucu metni değişir */
.okuyucu-akis .ok-ipucu i { transform: rotate(90deg); }

@media (max-width: 768px) {
    .okuyucu-akis .okuyucu-sahne { padding: 12px 10px 20px; }
    .okuyucu-akis .ok-akis-sayfa { width: 100%; }
}

/* ═══════════════════════════════════════════════════════════════════════
   DALGA 9 — Anket sistemi · X akışı
   ═══════════════════════════════════════════════════════════════════════ */

/* ── Anket formu (ön yüz) ──────────────────────────────────────────────── */
.anket-sayfa { padding: 40px 0 70px; }
.anket-sayfa .container { max-width: 860px; }

.anket-bilgi {
    display: flex;
    gap: 14px;
    align-items: flex-start;
    padding: 18px 20px;
    border-radius: var(--radius-lg);
    margin-bottom: 26px;
}
.anket-bilgi i { font-size: 20px; flex-shrink: 0; margin-top: 2px; }
.anket-bilgi-tamam { background: #eaf7f0; color: #14663d; }
.anket-bilgi-tamam strong { display: block; margin-bottom: 4px; font-size: 16px; }
.anket-bilgi-tamam p { margin: 0 0 12px; color: #2c6b4c; }
.anket-bilgi-hata { background: #fdecea; color: #a3271b; align-items: center; }

.anket-bolum {
    border: 1px solid var(--border);
    border-radius: var(--radius-lg);
    padding: 22px 24px 26px;
    margin: 0 0 22px;
    background: var(--white);
}
.anket-bolum legend {
    padding: 0 10px;
    font-family: var(--font-heading);
    font-size: 19px;
    color: var(--primary);
}
.anket-aciklama { color: var(--text-light); font-size: 14px; margin: 0 0 18px; }
.anket-not { font-size: 12.5px; color: var(--text-light); margin: 12px 0 0; }

.anket-izgara {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
    gap: 16px;
}
.anket-alan-genis { grid-column: 1 / -1; }
.anket-alan label {
    display: block;
    margin-bottom: 6px;
    font-size: 13.5px;
    font-weight: 600;
    color: var(--text);
}
.anket-alan input,
.anket-form textarea {
    width: 100%;
    padding: 11px 13px;
    border: 1px solid var(--border);
    border-radius: 8px;
    font-size: 15px;
    font-family: inherit;
    color: var(--text);
    background: var(--white);
}
.anket-alan input:focus,
.anket-form textarea:focus {
    outline: 2px solid var(--secondary);
    outline-offset: 1px;
    border-color: var(--secondary);
}
.zorunlu { color: #c0392b; }

.anket-soru {
    display: flex;
    gap: 14px;
    padding: 18px 0;
    border-top: 1px solid var(--border);
}
.anket-soru:first-of-type { border-top: 0; padding-top: 6px; }
.anket-soru-no {
    flex-shrink: 0;
    width: 28px;
    height: 28px;
    border-radius: 50%;
    background: var(--primary);
    color: #fff;
    font-size: 13px;
    font-weight: 700;
    display: flex;
    align-items: center;
    justify-content: center;
}
.anket-soru-govde { flex: 1; min-width: 0; }
.anket-soru-metin { font-size: 15.5px; font-weight: 600; color: var(--text); margin: 2px 0 12px; }
.anket-soru-yardim { font-size: 13px; color: var(--text-light); margin: -8px 0 12px; }

/* Memnuniyet ölçeği: beş seçenek, dokunma hedefi 44px'in altına düşmez */
.anket-olcek { display: flex; flex-wrap: wrap; gap: 8px; }
.anket-olcek-oge {
    flex: 1 1 130px;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 5px;
    min-height: 76px;
    padding: 10px 8px;
    border: 1px solid var(--border);
    border-radius: 10px;
    cursor: pointer;
    text-align: center;
    transition: border-color .16s, background .16s;
}
.anket-olcek-oge input { position: absolute; opacity: 0; pointer-events: none; }
.anket-olcek-puan {
    width: 26px;
    height: 26px;
    border-radius: 50%;
    background: var(--border);
    color: var(--text);
    font-size: 13px;
    font-weight: 700;
    display: flex;
    align-items: center;
    justify-content: center;
}
.anket-olcek-etiket { font-size: 12px; color: var(--text-light); line-height: 1.3; }
.anket-olcek-oge:hover { border-color: var(--secondary); }
.anket-olcek-oge:has(input:checked) { border-color: var(--primary); background: #f2f6fb; }
.anket-olcek-oge:has(input:checked) .anket-olcek-puan { background: var(--primary); color: #fff; }
.anket-olcek-oge:has(input:focus-visible) { outline: 2px solid var(--secondary); outline-offset: 2px; }

.anket-secenekler { display: flex; flex-direction: column; gap: 8px; }
.anket-secenek {
    display: flex;
    align-items: center;
    gap: 10px;
    min-height: 44px;
    padding: 8px 12px;
    border: 1px solid var(--border);
    border-radius: 8px;
    cursor: pointer;
    font-size: 14.5px;
}
.anket-secenek:hover { border-color: var(--secondary); }
.anket-secenek:has(input:checked) { border-color: var(--primary); background: #f2f6fb; }
.anket-secenek input { width: 18px; height: 18px; flex-shrink: 0; }

.anket-onay { margin: 4px 0 22px; }
.anket-onay .onay-kutu { display: flex; gap: 10px; align-items: flex-start; font-size: 14px; line-height: 1.5; }
.anket-onay input { width: 18px; height: 18px; margin-top: 2px; flex-shrink: 0; }
.anket-gonder { min-height: 48px; padding: 0 28px; font-size: 15px; }

/* Anket listesi */
.anket-liste-sayfa { padding: 40px 0 70px; }
.anket-kart-izgara {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
    gap: 20px;
}
.anket-kart {
    display: block;
    padding: 24px;
    border: 1px solid var(--border);
    border-radius: var(--radius-lg);
    background: var(--white);
    transition: box-shadow .2s, transform .2s;
}
.anket-kart:hover { box-shadow: var(--shadow-lg, 0 12px 30px rgba(0,0,0,.1)); transform: translateY(-2px); }
.anket-kart-ikon {
    display: inline-flex;
    width: 44px;
    height: 44px;
    border-radius: 12px;
    background: #f2f6fb;
    color: var(--primary);
    font-size: 19px;
    align-items: center;
    justify-content: center;
    margin-bottom: 14px;
}
.anket-kart h2 { font-family: var(--font-heading); font-size: 20px; color: var(--primary); margin: 0 0 8px; }
.anket-kart p { font-size: 14px; color: var(--text-light); margin: 0 0 12px; }
.anket-kart-tarih { display: block; font-size: 12.5px; color: var(--text-light); margin-bottom: 12px; }
.anket-kart-git { font-size: 13.5px; font-weight: 600; color: var(--secondary); }
.anket-bos { padding: 48px 0; text-align: center; color: var(--text-light); }

/* Teşekkür ekranı */
.anket-tesekkur { padding: 70px 0 90px; }
.anket-tesekkur-kutu { max-width: 560px; margin: 0 auto; text-align: center; }
.anket-tesekkur-kutu > i { font-size: 54px; color: #1a7f4b; margin-bottom: 18px; }
.anket-tesekkur-kutu h1 { font-family: var(--font-heading); font-size: 30px; color: var(--primary); margin: 0 0 12px; }
.anket-tesekkur-kutu p { color: var(--text-light); font-size: 15.5px; line-height: 1.6; margin: 0 0 26px; }
.anket-tesekkur-baglantilar { display: flex; gap: 12px; justify-content: center; flex-wrap: wrap; }

@media (max-width: 640px) {
    .anket-olcek-oge { flex: 1 1 100%; flex-direction: row; justify-content: flex-start; min-height: 52px; text-align: start; }
    .anket-soru { gap: 10px; }
    .anket-bolum { padding: 18px 16px 22px; }
}

/* ── Panel: anket sonuçları ────────────────────────────────────────────── */
.anket-ozet-serit {
    display: flex;
    flex-wrap: wrap;
    gap: 14px;
    padding: 18px 20px 6px;
}
.anket-ozet-kutu {
    flex: 1 1 180px;
    padding: 16px 18px;
    border: 1px solid var(--border, #e3e7ee);
    border-radius: 10px;
}
.anket-ozet-kutu span { display: block; font-size: 12.5px; color: var(--text-muted, #7b8697); margin-bottom: 6px; }
.anket-ozet-kutu strong { font-size: 24px; }
.anket-ozet-genis { flex: 2 1 320px; }
.anket-olcu { height: 10px; border-radius: 999px; background: #e6eaf1; overflow: hidden; margin: 4px 0 6px; }
.anket-olcu-dolgu { display: block; height: 100%; border-radius: 999px; background: #1a7f4b; }

.anket-sonuc-blok { padding: 18px 0; border-top: 1px solid var(--border, #e3e7ee); }
.anket-sonuc-blok:first-child { border-top: 0; }
.anket-sonuc-blok h3 { font-size: 15px; margin: 0 0 10px; display: flex; justify-content: space-between; gap: 12px; }
.anket-sonuc-adet { font-weight: 400; font-size: 12.5px; color: var(--text-muted, #7b8697); white-space: nowrap; }
.anket-sonuc-ortalama { font-size: 13.5px; margin-bottom: 10px; }
.anket-sonuc-bos { font-size: 13.5px; color: var(--text-muted, #7b8697); }

.anket-bar-liste { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 8px; }
.anket-bar-liste li { display: grid; grid-template-columns: minmax(140px, 1.2fr) minmax(0, 2fr) auto; gap: 12px; align-items: center; }
.anket-bar-ad { font-size: 13.5px; }
.anket-bar-yol { height: 9px; border-radius: 999px; background: #e6eaf1; overflow: hidden; }
.anket-bar-dolgu { display: block; height: 100%; border-radius: 999px; background: #23527c; }
.anket-bar-deger { font-size: 13.5px; font-weight: 700; white-space: nowrap; text-align: end; }
.anket-bar-deger small { display: block; font-size: 11px; font-weight: 400; color: var(--text-muted, #7b8697); }

.anket-metin-liste { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 10px; }
.anket-metin-liste li { padding: 12px 14px; background: #f7f9fc; border-radius: 8px; }
.anket-metin-liste p { margin: 0 0 6px; font-size: 14px; line-height: 1.5; }
.anket-metin-liste small { font-size: 12px; color: var(--text-muted, #7b8697); }

.anket-soru-satir {
    display: flex;
    flex-wrap: wrap;
    gap: 14px;
    padding: 16px;
    border: 1px solid var(--border, #e3e7ee);
    border-radius: 10px;
    margin-bottom: 12px;
}

@media (max-width: 700px) {
    .anket-bar-liste li { grid-template-columns: 1fr auto; row-gap: 5px; }
    .anket-bar-yol { grid-column: 1 / -1; }
}

/* ── X (Twitter) akış kartı ────────────────────────────────────────────
   X'in gömme betiği kullanılmaz; gönderiler sunucuda çekilip burada
   kendi biçimimizle basılır. */
.x-akis {
    border: 1px solid var(--border);
    border-radius: var(--radius-lg);
    background: var(--white);
    overflow: hidden;
}
.x-akis-bas {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    padding: 16px 18px;
    border-bottom: 1px solid var(--border);
}
.x-akis-kimlik { display: flex; align-items: center; gap: 12px; min-width: 0; }
.x-akis-logo {
    width: 38px;
    height: 38px;
    border-radius: 10px;
    background: #000;
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}
.x-akis-kimlik strong { display: block; font-size: 15px; color: var(--primary); }
.x-akis-kimlik a { font-size: 13px; color: var(--text-light); }
.x-akis-kimlik a:hover { color: var(--secondary); }
.x-akis-takip {
    flex-shrink: 0;
    padding: 8px 16px;
    border-radius: 999px;
    background: #000;
    color: #fff;
    font-size: 13px;
    font-weight: 600;
}
.x-akis-takip:hover { background: #333; color: #fff; }

.x-akis-liste { list-style: none; margin: 0; padding: 0; max-height: 460px; overflow-y: auto; }
.x-akis-liste li { border-bottom: 1px solid var(--border); }
.x-gonderi { display: block; padding: 14px 18px; transition: background .16s; }
.x-gonderi:hover { background: #f7f9fc; }
.x-gonderi p { margin: 0 0 6px; font-size: 14px; line-height: 1.5; color: var(--text); }
.x-gonderi time { font-size: 12.5px; color: var(--text-light); }
.x-gonderi-etiket {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    margin-bottom: 6px;
    font-size: 11.5px;
    font-weight: 600;
    color: var(--text-light);
}

.x-akis-tumu {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: 13px;
    font-size: 13.5px;
    font-weight: 600;
    color: var(--primary);
}
.x-akis-tumu:hover { background: #f7f9fc; color: var(--secondary); }

.baskan-x-bolum { padding: 0 0 60px; }
.baskan-x-bolum .x-akis { max-width: 720px; margin: 0 auto; }

/* Anasayfada sosyal duvarın altına oturur */
.sosyal-bolum .x-akis { margin-top: 26px; }

/* ── İŞKUR iş ilanları ─────────────────────────────────────────────────
   İşveren adı İŞKUR'da anonim kullanıcıya kapalı; kart meslek, yer ve ilan
   numarası üzerine kurulu, başvuru İŞKUR'a yönlendiriyor. */
.iskur-sayfa { padding: 36px 0 70px; }

.iskur-ozet {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
    gap: 14px;
    margin-bottom: 26px;
}
.iskur-ozet-kutu {
    padding: 16px 18px;
    border-radius: var(--radius-lg);
    background: linear-gradient(135deg, var(--primary) 0%, #16324f 100%);
    color: #fff;
}
.iskur-ozet-kutu strong { display: block; font-family: var(--font-heading); font-size: 26px; line-height: 1.1; }
.iskur-ozet-kutu span { font-size: 12.5px; opacity: .78; }
.iskur-ozet-tarih { background: var(--white); color: var(--text); border: 1px solid var(--border); }
.iskur-ozet-tarih strong { font-size: 16px; color: var(--primary); margin-top: 4px; }
.iskur-ozet-tarih span { opacity: 1; color: var(--text-light); }

.iskur-suzgec {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    align-items: flex-end;
    padding: 18px;
    border: 1px solid var(--border);
    border-radius: var(--radius-lg);
    background: var(--white);
    margin-bottom: 18px;
}
.iskur-alan { flex: 1 1 190px; min-width: 0; }
.iskur-alan-genis { flex: 2 1 280px; }
.iskur-alan label { display: block; margin-bottom: 6px; font-size: 12.5px; font-weight: 600; color: var(--text-light); }
.iskur-alan input,
.iskur-alan select {
    width: 100%;
    padding: 11px 13px;
    border: 1px solid var(--border);
    border-radius: 8px;
    font-size: 15px;
    font-family: inherit;
    color: var(--text);
    background: var(--white);
}
.iskur-suzgec .btn { min-height: 44px; }

.iskur-not {
    display: flex;
    gap: 10px;
    padding: 13px 16px;
    border-radius: 10px;
    background: #f2f6fb;
    font-size: 13px;
    line-height: 1.55;
    color: var(--text-light);
    margin-bottom: 24px;
}
.iskur-not i { flex-shrink: 0; margin-top: 3px; color: var(--primary); }

.iskur-izgara {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(290px, 1fr));
    gap: 18px;
}
.iskur-kart {
    display: flex;
    flex-direction: column;
    padding: 20px;
    border: 1px solid var(--border);
    border-radius: var(--radius-lg);
    background: var(--white);
    transition: box-shadow .2s, transform .2s;
}
.iskur-kart:hover { box-shadow: var(--shadow-lg, 0 12px 30px rgba(0,0,0,.09)); transform: translateY(-2px); }
.iskur-kart header { display: flex; gap: 10px; align-items: flex-start; justify-content: space-between; margin-bottom: 12px; }
.iskur-kart h2 { font-size: 16.5px; font-weight: 700; line-height: 1.35; color: var(--primary); margin: 0; }
.iskur-pozisyon {
    flex-shrink: 0;
    padding: 4px 10px;
    border-radius: 999px;
    background: #f2f6fb;
    color: var(--primary);
    font-size: 12px;
    font-weight: 700;
    white-space: nowrap;
}

.iskur-bilgi { list-style: none; margin: 0 0 14px; padding: 0; display: flex; flex-direction: column; gap: 7px; }
.iskur-bilgi li { display: flex; gap: 9px; font-size: 13.5px; color: var(--text-light); line-height: 1.45; }
.iskur-bilgi i { flex-shrink: 0; width: 15px; margin-top: 2px; color: var(--secondary); font-size: 12.5px; }

.iskur-kart footer {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    flex-wrap: wrap;
    margin-top: auto;
    padding-top: 12px;
    border-top: 1px solid var(--border);
}
.iskur-no { font-family: 'SF Mono', Menlo, Consolas, monospace; font-size: 12px; color: var(--text-light); letter-spacing: .04em; }
.iskur-kalan { font-size: 12.5px; font-weight: 600; color: #1a7f4b; }
.iskur-kalan.acil { color: #c0392b; }

.iskur-git {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    min-height: 42px;
    margin-top: 12px;
    border-radius: 8px;
    background: var(--primary);
    color: #fff;
    font-size: 13.5px;
    font-weight: 600;
}
.iskur-git:hover { background: var(--secondary); color: #fff; }

.iskur-bos { padding: 48px 0; text-align: center; color: var(--text-light); }
.iskur-sayfalama { display: flex; flex-wrap: wrap; justify-content: center; gap: 8px; margin-top: 32px; }
.iskur-sayfa-oge {
    min-width: 42px;
    height: 42px;
    padding: 0 12px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 1px solid var(--border);
    border-radius: 8px;
    color: var(--primary);
    font-weight: 600;
    font-size: 14px;
}
.iskur-sayfa-oge.aktif,
.iskur-sayfa-oge:hover { background: var(--primary); border-color: var(--primary); color: #fff; }

@media (max-width: 600px) {
    .iskur-suzgec { padding: 14px; }
    .iskur-alan, .iskur-alan-genis { flex: 1 1 100%; }
    .iskur-suzgec .btn { width: 100%; }
}

/* ── Mobil menü açılır-kapanır denetleyicisi ────────────────────────────
   Artık <a href="#"> değil <button>: dinleyici yalnız içteki <i> üzerindeyken
   klavye ve ekran okuyucu ile açılamıyordu (olay anchor'da doğuyor, çocuğa
   inmiyor). Düğme sarmalayıcıya taşındı; görünüm bağlantıyla aynı kalmalı. */
button.mobile-nav-link {
    width: 100%;
    border: 0;
    background: none;
    font: inherit;
    color: inherit;
    text-align: start;
    cursor: pointer;
    -webkit-appearance: none;
    appearance: none;
}
button.mobile-nav-link:focus-visible {
    outline: 2px solid var(--secondary);
    outline-offset: -2px;
}
/* Ok, artık başlı başına dokunma hedefi değil; satırın tamamı tıklanabilir */
button.mobile-nav-link .fa-chevron-down {
    margin-inline-start: auto;
    transition: transform .2s;
}
button.mobile-nav-link.active .fa-chevron-down { transform: rotate(180deg); }

/* Yalnız ekran okuyucuya görünen metin.
   Yön/durum bilgisi ikon veya renkle verildiğinde sözel karşılığı buraya konur;
   `display:none` OLMAZ — ekran okuyucu da okumaz. */
.gorsel-gizli {
    position: absolute;
    width: 1px;
    height: 1px;
    margin: -1px;
    padding: 0;
    overflow: hidden;
    clip: rect(0 0 0 0);
    clip-path: inset(50%);
    white-space: nowrap;
    border: 0;
}

/* iOS Safari 16px altındaki girdilerde sayfayı otomatik yakınlaştırır ve
   kullanıcı geri uzaklaştıramaz. İŞKUR ve anket formları 15px'ti. */
@media (max-width: 768px) {
    .iskur-alan input,
    .iskur-alan select,
    .anket-alan input,
    .anket-form textarea {
        font-size: 16px;
    }
}

/* e-Dergi üst çubuğu: başlık kutusundan taşıp araç düğmelerinin üstüne
   biniyordu (kutu 34vw, içindeki strong 40vw). Kutu taşmayı kırpar. */
.okuyucu-marka { min-width: 0; overflow: hidden; }
.okuyucu-marka > div { min-width: 0; }
.okuyucu-marka strong,
.okuyucu-marka span {
    display: block;
    max-width: 100%;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

/* =====================================================================
   SÜREÇ KATEGORİLERİ + EVRAK + MERSİS + TESCİL İLETİŞİM (dalga 15)
   ===================================================================== */

/* --- İndeks: bölüm başlıkları --- */
.srg-bolum-baslik { display: flex; align-items: center; gap: 16px; margin: 46px 0 22px; }
.srg-bolum-baslik:first-child { margin-top: 0; }
.srg-bolum-ikon { width: 48px; height: 48px; border-radius: 12px; background: var(--primary); color: var(--secondary-light); display: inline-flex; align-items: center; justify-content: center; font-size: 20px; flex-shrink: 0; }
.srg-bolum-baslik h2 { font-family: var(--font-heading); font-size: 26px; color: var(--primary); line-height: 1.25; }
.srg-bolum-baslik p { font-size: 14px; color: var(--text-light); margin-top: 2px; }

/* --- İndeks: tescil kategorisi büyük kartları --- */
.srg-kat-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(340px, 1fr)); gap: 20px; }
.srg-kat-kart { display: flex; flex-direction: column; gap: 14px; background: var(--white); border: 1px solid var(--border); border-left: 4px solid var(--secondary); border-radius: var(--radius-lg); padding: 26px 28px 20px; box-shadow: var(--shadow-sm); transition: transform var(--transition-fast), box-shadow var(--transition-fast), border-color var(--transition-fast); }
.srg-kat-kart:hover { transform: translateY(-4px); box-shadow: var(--shadow-lg); border-color: rgba(200, 162, 60, .55); border-left-color: var(--secondary-dark); }
[dir="rtl"] .srg-kat-kart { border-left-width: 1px; border-right: 4px solid var(--secondary); }
.srg-kat-ikon { width: 58px; height: 58px; border-radius: 15px; background: linear-gradient(135deg, var(--primary), var(--primary-light)); color: var(--secondary-light); display: inline-flex; align-items: center; justify-content: center; font-size: 24px; flex-shrink: 0; }
.srg-kat-icerik { flex: 1; }
.srg-kat-icerik h3 { font-size: 20px; font-weight: 700; color: var(--primary); line-height: 1.3; margin-bottom: 8px; }
.srg-kat-icerik p { font-size: 14px; color: var(--text-light); line-height: 1.65; }
.srg-kat-alt { display: flex; align-items: center; gap: 10px; padding-top: 14px; border-top: 1px solid var(--border); }
.srg-kat-adet { display: inline-flex; align-items: center; gap: 6px; font-size: 13px; font-weight: 800; color: var(--primary); background: var(--bg-alt); border-radius: 999px; padding: 5px 14px; }
.srg-kat-alt .srg-kart-ok { margin-left: auto; }
[dir="rtl"] .srg-kat-alt .srg-kart-ok { margin-left: 0; margin-right: auto; }

/* --- Kategori landing: değişiklik tescili grupları --- */
.srg-grup-sekmeler { display: flex; gap: 10px; flex-wrap: wrap; margin-bottom: 30px; }
.srg-grup-sekme { display: inline-flex; align-items: center; gap: 9px; min-height: 44px; padding: 9px 16px; background: var(--white); border: 1.5px solid var(--border); border-radius: 999px; font-size: 14px; font-weight: 600; color: var(--text); transition: border-color var(--transition-fast), color var(--transition-fast), background var(--transition-fast); }
.srg-grup-sekme:hover { border-color: var(--primary); color: var(--primary); }
.srg-grup-sekme i { color: var(--secondary-dark); font-size: 13px; }
.srg-grup-adet { font-size: 12px; font-weight: 800; background: var(--bg-alt); color: var(--text-light); border-radius: 999px; padding: 2px 9px; }
.srg-grup { margin-bottom: 44px; scroll-margin-top: 110px; }
.srg-grup:last-child { margin-bottom: 0; }
.srg-grup-baslik { display: flex; align-items: center; gap: 13px; margin-bottom: 18px; padding-bottom: 14px; border-bottom: 2px solid var(--border); }
.srg-grup-ikon { width: 42px; height: 42px; border-radius: 11px; background: var(--bg-alt); color: var(--primary); display: inline-flex; align-items: center; justify-content: center; font-size: 17px; flex-shrink: 0; }
.srg-grup-baslik h2 { font-family: var(--font-heading); font-size: 23px; color: var(--primary); line-height: 1.25; flex: 1; min-width: 0; }

/* --- İşlem detay: MERSİS uyarı kartı (bağırmayan, kurumsal) --- */
.srg-mersis { display: flex; align-items: center; gap: 18px; background: linear-gradient(135deg, rgba(27, 58, 92, .045), rgba(200, 162, 60, .07)); border: 1px solid rgba(200, 162, 60, .45); border-left: 4px solid var(--secondary); border-radius: var(--radius-lg); padding: 20px 24px; margin-bottom: 26px; }
[dir="rtl"] .srg-mersis { border-left-width: 1px; border-right: 4px solid var(--secondary); }
.srg-mersis-ikon { width: 50px; height: 50px; border-radius: 13px; background: var(--primary); color: var(--secondary-light); display: inline-flex; align-items: center; justify-content: center; font-size: 21px; flex-shrink: 0; }
.srg-mersis-metin { flex: 1; min-width: 0; }
.srg-mersis-metin strong { display: block; font-size: 15.5px; font-weight: 800; color: var(--primary); margin-bottom: 4px; }
.srg-mersis-metin p { font-size: 13.5px; color: var(--text-light); line-height: 1.6; }
.srg-mersis-btn { display: inline-flex; align-items: center; gap: 9px; min-height: 44px; padding: 11px 20px; background: var(--primary); color: var(--white); border-radius: 10px; font-size: 14px; font-weight: 700; white-space: nowrap; flex-shrink: 0; transition: background var(--transition-fast); }
.srg-mersis-btn:hover { background: var(--primary-dark); color: var(--white); }
.srg-mersis-btn i { font-size: 12px; }

/* --- İşlem detay: evrak ve dilekçe örnekleri --- */
.srg-evrak { margin-top: 34px; background: var(--white); border: 1px solid var(--border); border-radius: var(--radius-lg); padding: 24px 26px; box-shadow: var(--shadow-sm); }
.srg-evrak-baslik { display: flex; align-items: center; gap: 12px; margin-bottom: 16px; padding-bottom: 14px; border-bottom: 1px solid var(--border); }
.srg-evrak-baslik-ikon { width: 40px; height: 40px; border-radius: 10px; background: var(--bg-alt); color: var(--primary); display: inline-flex; align-items: center; justify-content: center; font-size: 16px; flex-shrink: 0; }
.srg-evrak-baslik h2 { font-family: var(--font-heading); font-size: 21px; color: var(--primary); flex: 1; min-width: 0; }
.srg-evrak-liste { list-style: none; display: flex; flex-direction: column; }
.srg-evrak-satir { display: flex; align-items: center; gap: 14px; padding: 12px 4px; border-bottom: 1px solid var(--bg-alt); }
.srg-evrak-satir:last-child { border-bottom: none; }
.srg-evrak-ikon { width: 40px; height: 40px; border-radius: 10px; background: var(--bg-alt); color: var(--text-light); display: inline-flex; align-items: center; justify-content: center; font-size: 18px; flex-shrink: 0; }
.srg-evrak-ikon-doc, .srg-evrak-ikon-docx { background: #E8F0FB; color: #2B579A; }
.srg-evrak-ikon-xls, .srg-evrak-ikon-xlsx { background: #E5F3EC; color: #217346; }
.srg-evrak-ikon-pdf { background: #FBEAE8; color: #C0392B; }
.srg-evrak-bilgi { flex: 1; min-width: 0; display: flex; flex-direction: column; gap: 2px; }
.srg-evrak-bilgi strong { font-size: 14.5px; font-weight: 600; color: var(--text); line-height: 1.4; overflow-wrap: anywhere; }
.srg-evrak-bilgi small { font-size: 12px; font-weight: 700; color: var(--text-muted); letter-spacing: .03em; }
.srg-evrak-indir { flex-shrink: 0; min-height: 44px; }

/* --- İşlem detay: aynı kategorideki diğer işlemler --- */
.srg-benzer { margin-top: 34px; }
.srg-benzer-baslik { display: flex; align-items: center; justify-content: space-between; gap: 14px; flex-wrap: wrap; margin-bottom: 14px; }
.srg-benzer-baslik h2 { font-family: var(--font-heading); font-size: 21px; color: var(--primary); }
.srg-benzer-tumu { display: inline-flex; align-items: center; gap: 7px; min-height: 40px; padding: 8px 14px; font-size: 13.5px; font-weight: 700; color: var(--secondary-dark); }
.srg-benzer-tumu:hover { color: var(--primary); }
[dir="rtl"] .srg-benzer-tumu i { transform: scaleX(-1); }
.srg-benzer-liste { display: grid; grid-template-columns: repeat(auto-fill, minmax(300px, 1fr)); gap: 8px; }
.srg-benzer-lnk { display: flex; align-items: center; gap: 10px; min-height: 44px; padding: 10px 14px; background: var(--white); border: 1px solid var(--border); border-radius: 10px; font-size: 14px; font-weight: 600; color: var(--text); line-height: 1.4; transition: border-color var(--transition-fast), color var(--transition-fast); }
.srg-benzer-lnk:hover { border-color: var(--primary); color: var(--primary); }
.srg-benzer-lnk i { color: var(--secondary-dark); font-size: 12px; flex-shrink: 0; }
[dir="rtl"] .srg-benzer-lnk i { transform: scaleX(-1); }

/* --- Ticaret Sicili Müdürlüğü iletişim kutusu --- */
.tsl-kutu { margin-top: 34px; background: var(--primary); border-radius: var(--radius-lg); padding: 26px 28px; color: var(--white); }
.tsl-ust { display: flex; align-items: center; justify-content: space-between; gap: 20px; flex-wrap: wrap; }
.tsl-baslik { display: flex; align-items: center; gap: 15px; flex: 1; min-width: 240px; }
.tsl-ikon { width: 52px; height: 52px; border-radius: 13px; background: rgba(255, 255, 255, .1); color: var(--secondary-light); display: inline-flex; align-items: center; justify-content: center; font-size: 21px; flex-shrink: 0; }
.tsl-baslik h2 { font-family: var(--font-heading); font-size: 22px; color: var(--white); line-height: 1.25; }
.tsl-baslik p { font-size: 13.5px; color: rgba(255, 255, 255, .75); line-height: 1.55; margin-top: 3px; }
.tsl-santral { display: inline-flex; align-items: center; gap: 12px; min-height: 52px; background: var(--secondary); color: var(--primary-dark); border-radius: 12px; padding: 9px 20px; transition: background var(--transition-fast); }
.tsl-santral:hover { background: var(--secondary-light); color: var(--primary-dark); }
.tsl-santral i { font-size: 17px; }
.tsl-santral-yazi { display: flex; flex-direction: column; line-height: 1.25; }
.tsl-santral-yazi small { font-size: 11px; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; opacity: .75; }
.tsl-santral-yazi strong { font-size: 17px; font-weight: 800; font-variant-numeric: tabular-nums; }
.tsl-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(240px, 1fr)); gap: 12px; margin-top: 22px; }
.tsl-kart { background: rgba(255, 255, 255, .07); border: 1px solid rgba(255, 255, 255, .12); border-radius: 12px; padding: 15px 17px; display: flex; flex-direction: column; gap: 5px; }
.tsl-ad { font-size: 15px; font-weight: 700; color: var(--white); }
.tsl-unvan { font-size: 12.5px; color: var(--secondary-light); font-weight: 600; }
.tsl-satir { display: inline-flex; align-items: center; gap: 8px; font-size: 13px; color: rgba(255, 255, 255, .8); overflow-wrap: anywhere; }
.tsl-satir i { font-size: 11.5px; color: var(--secondary-light); flex-shrink: 0; }
a.tsl-mail { min-height: 30px; }
a.tsl-mail:hover { color: var(--white); }

/* --- Mobil --- */
@media (max-width: 768px) {
    .srg-kat-grid { grid-template-columns: 1fr; }
    .srg-bolum-baslik { margin: 34px 0 16px; }
    .srg-bolum-baslik h2 { font-size: 21px; }
    .srg-grup-baslik h2 { font-size: 19px; }
    .srg-mersis { flex-direction: column; align-items: flex-start; gap: 14px; padding: 18px; }
    .srg-mersis-btn { align-self: stretch; justify-content: center; }
    .srg-evrak { padding: 18px 16px; }
    .srg-evrak-satir { flex-wrap: wrap; }
    .srg-evrak-indir { flex-basis: 100%; justify-content: center; }
    .srg-benzer-liste { grid-template-columns: 1fr; }
    .tsl-kutu { padding: 20px 18px; }
    .tsl-santral { align-self: stretch; justify-content: center; }
    .tsl-grid { grid-template-columns: 1fr; }
}

/* --- Yazdırma: sihirbaz dışı yardımcı bloklar çıktıya girmez --- */
@media print {
    .srg-mersis-btn, .srg-benzer, .srg-evrak-indir, .tsl-kutu, .srg-grup-sekmeler { display: none !important; }
}

/* --- Cloudflare Turnstile: form kutularının nefes payı ---
   Widget 300x65 sabit boyutta gelir; dar ekranda taşmasın diye
   kapsayıcıya sığdırılır. Altbilgideki bülten formunda widget
   "interaction-only" olduğu için çoğu ziyaretçide hiç görünmez. */
.cf-turnstile {
    margin: 16px 0 4px;
    max-width: 100%;
    overflow-x: auto;
}
.bulten-turnstile:empty {
    margin: 0;
}
