:root {
  --tt-primary: #0F172A;
  --tt-accent: #06B6D4;
  --tt-bg: #F8FAFC;
  --tt-text: #1F2937;
  --tt-muted: #64748B;
  --tt-line: #E5E7EB;
  --tt-white: #fff;
  --tt-shadow: 0 22px 60px rgba(15, 23, 42, .12);
  --tt-radius: 22px;
}

* {
  box-sizing: border-box;
}

body.tt-page,
body {
  margin: 0;
  background: var(--tt-bg);
  color: var(--tt-text);
  font-family: Inter, Arial, sans-serif;
  line-height: 1.55;
}

a {
  text-decoration: none;
  color: inherit;
}

.tt-container {
  width: min(1180px, calc(100% - 32px));
  margin: auto;
}

.tt-topbar {
  background: #0B1220;
  color: #CBD5E1;
  font-size: 13px;
}

.tt-topbar-inner {
  display: flex;
  justify-content: space-between;
  gap: 16px;
  padding: 8px 0;
}

.tt-lang a {
  padding: 3px 7px;
  border-radius: 999px;
}

.tt-lang .active,
.tt-lang a:hover {
  background: rgba(255, 255, 255, .12);
  color: #fff;
}

.tt-admin-alert {
  background: #FEF3C7;
  color: #92400E;
  border: 1px solid #FDE68A;
  border-radius: 14px;
  padding: 10px 14px;
  margin: 14px auto;
}

.tt-header {
  position: sticky;
  top: 0;
  z-index: 50;
  background: rgba(255, 255, 255, .88);
  backdrop-filter: blur(16px);
  border-bottom: 1px solid #E2E8F0;
}

.tt-nav {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 22px;
  padding: 16px 0;
  position: relative;
}

.tt-logo img {
  height: 48px;
  display: block;
}

/* ==========================================
   MASAÜSTÜ NAVİGASYON, OK VE HOVER STİLLERİ
   ========================================== */
.tt-menu {
  display: flex;
  align-items: center;
  gap: 6px;
  list-style: none;
  margin: 0;
  padding: 0;
}

.tt-menu>li {
  position: relative;
}

/* Birinci Seviye Linkler */
.tt-menu>li>a {
  display: flex;
  align-items: center;
  gap: 6px;
  padding: 4px 4px;
  border-radius: 12px;
  color: #334155;
  font-weight: 700;
  font-size: 12px;
  transition: all 0.2s ease;
}

.tt-menu>li>a:hover {
  background: #ECFEFF;
  color: #0E7490;
}

/* Akıllı Ok İkonu (Masaüstü ve Mobil için ortak) */
.tt-menu li:has(ul)>a::after {
  content: "";
  display: inline-block;
  width: 5px;
  height: 5px;
  border-right: 1.5px solid currentColor;
  border-bottom: 1.5px solid currentColor;
  transform: translateY(-2px) rotate(45deg);
  transition: transform 0.25s ease;
  opacity: 0.8;
}

/* Masaüstü Hover Durumunda Okun Dönme Efekti */
@media(min-width: 981px) {
  .tt-menu>li:has(ul):hover>a::after {
    transform: translateY(1px) rotate(-135deg);
  }
}

/* Masaüstü Alt Menü Tasarımı */
.tt-menu ul {
  position: absolute;
  top: 100%;
  left: 0;
  min-width: 210px;
  background: var(--tt-white);
  border: 1px solid #E2E8F0;
  border-radius: 14px;
  box-shadow: 0 10px 25px -5px rgba(15, 23, 42, .08);
  padding: 6px;
  margin: 4px 0 0 0;
  list-style: none;
  z-index: 99;

  /* Giriş Animasyonu */
  opacity: 0;
  visibility: hidden;
  transform: translateY(8px);
  transition: opacity 0.2s ease, transform 0.2s ease, visibility 0.2s;
}

/* Masaüstü Hover ile Alt Menüyü Açma */
.tt-menu li:hover>ul {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
}

.tt-menu ul li {
  width: 100%;
}

.tt-menu ul a {
  display: block;
  font-weight: 500;
  font-size: 13.5px;
  padding: 8px 12px;
  border-radius: 8px;
  color: #475569;
  transition: all 0.15s ease;
}

.tt-menu ul a:hover {
  background: #F1F5F9;
  color: var(--tt-primary);
}

/* ⚠️ ÖNEMLİ DÜZELTME: Checkbox'ı display:none ile değil, güvenli yöntemle gizliyoruz. 
   Böylece mobil tarayıcılar tıklamayı kaçırmaz. */
.tt-menu-toggle-cb {
  position: absolute;
  opacity: 0;
  width: 0;
  height: 0;
  pointer-events: none;
}

.tt-menu-trigger {
  display: none;
}

/* ========================================== */

.tt-actions {
  display: flex;
  align-items: center;
  gap: 10px;
}

.tt-user {
  font-size: 14px;
  color: #475569;
}

.tt-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 999px;
  padding: 11px 18px;
  font-weight: 800;
  font-size: 14px;
  border: 1px solid transparent;
}

.tt-btn-primary {
  background: var(--tt-primary);
  color: white;
  box-shadow: 0 10px 24px rgba(15, 23, 42, .18);
}

.tt-btn-soft {
  background: white;
  color: var(--tt-primary);
  border-color: #CBD5E1;
}

.tt-btn-accent {
  background: var(--tt-accent);
  color: #06202A;
}

.tt-hero {
  overflow: hidden;
  background: radial-gradient(circle at 78% 20%, rgba(6, 182, 212, .20), transparent 34%), linear-gradient(135deg, #fff, #F8FAFC 55%, #ECFEFF);
  border-bottom: 1px solid #E2E8F0;
}

.tt-hero-grid {
  display: grid;
  grid-template-columns: 1.08fr .92fr;
  gap: 44px;
  align-items: center;
  padding: 72px 0 58px;
}

.tt-kicker {
  display: inline-flex;
  background: #ECFEFF;
  color: #0E7490;
  border: 1px solid #A5F3FC;
  border-radius: 999px;
  padding: 7px 12px;
  font-size: 13px;
  font-weight: 800;
}

.tt-hero h1 {
  font-size: clamp(38px, 5vw, 66px);
  line-height: 1.02;
  letter-spacing: -2.4px;
  margin: 18px 0;
  color: #0F172A;
}

.tt-hero p {
  font-size: 18px;
  color: #475569;
  max-width: 650px;
  margin: 0 0 26px;
}

.tt-hero-actions,
.tt-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-bottom: 24px;
}

.tt-tag {
  background: white;
  border: 1px solid #E2E8F0;
  border-radius: 999px;
  padding: 8px 12px;
  color: #475569;
  font-size: 13px;
  font-weight: 700;
}

.tt-hero-card,
.tt-panel,
.tt-card {
  background: white;
  border: 1px solid #E2E8F0;
  border-radius: var(--tt-radius);
  box-shadow: 0 12px 32px rgba(15, 23, 42, .06);
}

.tt-hero-card {
  border-radius: 30px;
  box-shadow: var(--tt-shadow);
  padding: 24px;
}

.tt-searchbox {
  background: white;
  border: 1px solid #E2E8F0;
  border-radius: 22px;
  padding: 18px;
  margin-bottom: 16px;
}

.tt-searchbox label {
  display: block;
  color: #64748B;
  font-size: 13px;
  font-weight: 800;
  margin-bottom: 9px;
}

.tt-searchbox input {
  width: 100%;
  border: 0;
  outline: 0;
  background: #F8FAFC;
  border-radius: 14px;
  padding: 15px 14px;
}

.tt-metric-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 12px;
}

.tt-metric {
  background: #F8FAFC;
  border: 1px solid #E2E8F0;
  border-radius: 18px;
  padding: 16px;
}

.tt-metric strong {
  display: block;
  color: #0F172A;
  font-size: 24px;
}

.tt-metric span {
  font-size: 12px;
  color: #64748B;
  font-weight: 700;
}

.tt-section {
  padding: 56px 0;
}

.tt-section-head {
  display: flex;
  justify-content: space-between;
  margin-bottom: 24px;
}

.tt-section-title h2 {
  font-size: clamp(26px, 3vw, 40px);
  margin: 0 0 8px;
  color: #0F172A;
}

.tt-section-title p {
  margin: 0;
  color: #64748B;
}

.tt-card-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 18px;
}

.tt-card {
  padding: 22px;
}

.tt-icon {
  width: 42px;
  height: 42px;
  border-radius: 14px;
  background: #ECFEFF;
  color: #0891B2;
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 900;
  margin-bottom: 14px;
}

.tt-card h3 {
  margin: 0 0 8px;
  color: #0F172A;
}

.tt-card p {
  color: #64748B;
}

.tt-feed {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 18px;
}

.tt-panel {
  padding: 22px;
}

.tt-panel-title {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 14px;
}

.tt-panel-title h3 {
  margin: 0;
  color: #0F172A;
}

.tt-tender-list,
.tt-company-list {
  display: grid;
  gap: 12px;
}

.tt-tender-item,
.tt-company-item {
  display: block;
  padding: 16px;
  border: 1px solid #E2E8F0;
  border-radius: 18px;
  background: #F8FAFC;
}

.tt-tender-item:hover,
.tt-company-item:hover {
  border-color: #67E8F9;
  background: #ECFEFF;
}

.tt-tender-item h4,
.tt-company-item h4 {
  margin: 0 0 8px;
  color: #0F172A;
}

.tt-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  color: #64748B;
  font-size: 13px;
}

.tt-empty {
  padding: 18px;
  background: #F8FAFC;
  border: 1px dashed #CBD5E1;
  border-radius: 18px;
  color: #64748B;
}

.tt-cta {
  background: linear-gradient(135deg, #0F172A, #164E63);
  color: white;
  border-radius: 34px;
  padding: 38px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 24px;
}

.tt-cta h2 {
  margin: 0 0 8px;
  font-size: 32px;
}

.tt-cta p {
  margin: 0;
  color: #CDEAF0;
}

.tt-footer {
  background: #0B1220;
  color: #AAB7C9;
  padding: 32px 0;
  margin-top: 56px;
}

.tt-footer-inner {
  display: flex;
  justify-content: space-between;
  gap: 20px;
  align-items: center;
  flex-wrap: wrap;
}

.tt-footer a {
  color: #E2E8F0;
}

/* ==========================================
   RESPONSIVE & MOBİL MENÜ DETAYLARI
   ========================================== */
@media(max-width:980px) {
  .tt-nav {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 12px 0;
    position: relative;
  }

  .tt-logo {
    order: 1;
  }

  .tt-actions {
    order: 2;
    margin-left: auto;
    margin-right: 15px;
  }

  /* Hamburger Butonu Tıklama Alanı Güçlendirildi */
  .tt-menu-trigger {
    display: flex !important;
    flex-direction: column;
    justify-content: space-between;
    width: 40px;
    height: 18px;
    cursor: pointer;
    order: 3;
    position: relative;
    z-index: 110;
    /* Tıklanabilirliği garantilemek için en üst katmana taşındı */
  }

  .tt-menu-trigger span {
    display: block;
    height: 2px;
    width: 100%;
    background-color: var(--tt-primary);
    border-radius: 2px;
    transition: transform 0.2s ease, opacity 0.2s ease;
  }

  /* Hamburger -> X Animasyonu */
  .tt-menu-toggle-cb:checked+.tt-menu-trigger span:nth-child(1) {
    transform: translateY(8px) rotate(45deg);
  }

  .tt-menu-toggle-cb:checked+.tt-menu-trigger span:nth-child(2) {
    opacity: 0;
  }

  .tt-menu-toggle-cb:checked+.tt-menu-trigger span:nth-child(3) {
    transform: translateY(-8px) rotate(-45deg);
  }

  /* Mobil Ana Menü Kutusu */
  .tt-menu {
    display: none;
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    width: 100%;
    background: var(--tt-white);
    border: 1px solid #E2E8F0;
    border-radius: 16px;
    box-shadow: 0 15px 30px rgba(15, 23, 42, .08);
    padding: 12px;
    flex-direction: column;
    gap: 4px;
    z-index: 100;
    margin-top: 8px;
  }

  /* Menü Açıkken Göster */
  .tt-menu-toggle-cb:checked~.tt-menu {
    display: flex;
  }

  .tt-menu>li {
    width: 100%;
  }

  .tt-menu>li>a {
    padding: 12px;
    border-radius: 8px;
    justify-content: space-between;
  }

  /* 📱 MOBİLDE AKILLI ALT MENÜ (AÇILIR/KAPANIR) 
     Başlangıçta kapalıdır, üst menüye tıklandığında (veya odaklanıldığında) aşağı kayarak açılır. */
  .tt-menu ul {
    position: static;
    display: block;
    max-height: 0;
    /* Başlangıçta gizli tutar */
    overflow: hidden;
    opacity: 0;
    visibility: hidden;
    box-shadow: none;
    border: none;
    border-left: 2px solid #E2E8F0;
    border-radius: 0;
    padding: 0;
    margin: 0 0 0 16px;
    transition: max-height 0.3s cubic-bezier(0.4, 0, 0.2, 1), opacity 0.2s, margin 0.3s;
  }

  /* Mobilde Alt Menü Link Tasarımları */
  .tt-menu ul a {
    padding: 8px 12px;
    font-size: 13px;
  }

  /* Mobilde Üst Menüye Dokunulduğunda/Tıklandığında Alt Menüyü Göster */
  .tt-menu li:hover ul,
  .tt-menu li:focus-within ul {
    max-height: 300px;
    /* İçerik yüksekliğine göre açılır */
    opacity: 1;
    visibility: visible;
    margin: 4px 0 8px 16px;
    padding-left: 12px;
  }
  /* Mobilde Alt Menü Açıldığında Ok İşaretini Döndür */
  .tt-menu li:hover>a::after,
  .tt-menu li:focus-within>a::after {
    transform: translateY(1px) rotate(-135deg);
  }

  .tt-hero-grid,
  .tt-card-grid,
  .tt-feed {
    grid-template-columns: 1fr;
  }

  .tt-hero-grid {
    padding: 46px 0;
  }

  .tt-cta {
    align-items: flex-start;
    flex-direction: column;
  }
}

@media(max-width:560px) {
  .tt-topbar-inner {
    align-items: flex-start;
    flex-direction: column;
  }

  /* ⚠️ Mobil görünümde flex-direction: column çakışması düzeltildi */
  .tt-nav {
    flex-direction: row !important;
    align-items: center !important;
  }

  .tt-metric-grid {
    grid-template-columns: 1fr;
  }

  .tt-logo img {
    height: 42px;
  }
}

/*<:root{--tt-primary:#0F172A;--tt-accent:#06B6D4;--tt-bg:#F8FAFC;--tt-text:#1F2937;--tt-muted:#64748B;--tt-line:#E5E7EB;--tt-white:#fff;--tt-shadow:0 22px 60px rgba(15,23,42,.12);--tt-radius:22px}*{box-sizing:border-box}body.tt-page,body{margin:0;background:var(--tt-bg);color:var(--tt-text);font-family:Inter,Arial,sans-serif;line-height:1.55}a{text-decoration:none;color:inherit}.tt-container{width:min(1180px,calc(100% - 32px));margin:auto}.tt-topbar{background:#0B1220;color:#CBD5E1;font-size:13px}.tt-topbar-inner{display:flex;justify-content:space-between;gap:16px;padding:8px 0}.tt-lang a{padding:3px 7px;border-radius:999px}.tt-lang .active,.tt-lang a:hover{background:rgba(255,255,255,.12);color:#fff}.tt-admin-alert{background:#FEF3C7;color:#92400E;border:1px solid #FDE68A;border-radius:14px;padding:10px 14px;margin:14px auto}.tt-header{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.88);backdrop-filter:blur(16px);border-bottom:1px solid #E2E8F0}.tt-nav{display:flex;align-items:center;justify-content:space-between;gap:22px;padding:16px 0}.tt-logo img{height:48px;display:block}.tt-menu{display:flex;align-items:center;gap:6px;list-style:none;margin:0;padding:0}.tt-menu a{display:block;padding:10px 12px;border-radius:12px;color:#334155;font-weight:700;font-size:14px}.tt-menu a:hover{background:#ECFEFF;color:#0E7490}.tt-actions{display:flex;align-items:center;gap:10px}.tt-user{font-size:14px;color:#475569}.tt-btn{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;padding:11px 18px;font-weight:800;font-size:14px;border:1px solid transparent}.tt-btn-primary{background:var(--tt-primary);color:white;box-shadow:0 10px 24px rgba(15,23,42,.18)}.tt-btn-soft{background:white;color:var(--tt-primary);border-color:#CBD5E1}.tt-btn-accent{background:var(--tt-accent);color:#06202A}.tt-hero{overflow:hidden;background:radial-gradient(circle at 78% 20%,rgba(6,182,212,.20),transparent 34%),linear-gradient(135deg,#fff,#F8FAFC 55%,#ECFEFF);border-bottom:1px solid #E2E8F0}.tt-hero-grid{display:grid;grid-template-columns:1.08fr .92fr;gap:44px;align-items:center;padding:72px 0 58px}.tt-kicker{display:inline-flex;background:#ECFEFF;color:#0E7490;border:1px solid #A5F3FC;border-radius:999px;padding:7px 12px;font-size:13px;font-weight:800}.tt-hero h1{font-size:clamp(38px,5vw,66px);line-height:1.02;letter-spacing:-2.4px;margin:18px 0;color:#0F172A}.tt-hero p{font-size:18px;color:#475569;max-width:650px;margin:0 0 26px}.tt-hero-actions,.tt-tags{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:24px}.tt-tag{background:white;border:1px solid #E2E8F0;border-radius:999px;padding:8px 12px;color:#475569;font-size:13px;font-weight:700}.tt-hero-card,.tt-panel,.tt-card{background:white;border:1px solid #E2E8F0;border-radius:var(--tt-radius);box-shadow:0 12px 32px rgba(15,23,42,.06)}.tt-hero-card{border-radius:30px;box-shadow:var(--tt-shadow);padding:24px}.tt-searchbox{background:white;border:1px solid #E2E8F0;border-radius:22px;padding:18px;margin-bottom:16px}.tt-searchbox label{display:block;color:#64748B;font-size:13px;font-weight:800;margin-bottom:9px}.tt-searchbox input{width:100%;border:0;outline:0;background:#F8FAFC;border-radius:14px;padding:15px 14px}.tt-metric-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.tt-metric{background:#F8FAFC;border:1px solid #E2E8F0;border-radius:18px;padding:16px}.tt-metric strong{display:block;color:#0F172A;font-size:24px}.tt-metric span{font-size:12px;color:#64748B;font-weight:700}.tt-section{padding:56px 0}.tt-section-head{display:flex;justify-content:space-between;margin-bottom:24px}.tt-section-title h2{font-size:clamp(26px,3vw,40px);margin:0 0 8px;color:#0F172A}.tt-section-title p{margin:0;color:#64748B}.tt-card-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.tt-card{padding:22px}.tt-icon{width:42px;height:42px;border-radius:14px;background:#ECFEFF;color:#0891B2;display:flex;align-items:center;justify-content:center;font-weight:900;margin-bottom:14px}.tt-card h3{margin:0 0 8px;color:#0F172A}.tt-card p{color:#64748B}.tt-feed{display:grid;grid-template-columns:1fr 1fr;gap:18px}.tt-panel{padding:22px}.tt-panel-title{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px}.tt-panel-title h3{margin:0;color:#0F172A}.tt-tender-list,.tt-company-list{display:grid;gap:12px}.tt-tender-item,.tt-company-item{display:block;padding:16px;border:1px solid #E2E8F0;border-radius:18px;background:#F8FAFC}.tt-tender-item:hover,.tt-company-item:hover{border-color:#67E8F9;background:#ECFEFF}.tt-tender-item h4,.tt-company-item h4{margin:0 0 8px;color:#0F172A}.tt-meta{display:flex;flex-wrap:wrap;gap:8px;color:#64748B;font-size:13px}.tt-empty{padding:18px;background:#F8FAFC;border:1px dashed #CBD5E1;border-radius:18px;color:#64748B}.tt-cta{background:linear-gradient(135deg,#0F172A,#164E63);color:white;border-radius:34px;padding:38px;display:flex;justify-content:space-between;align-items:center;gap:24px}.tt-cta h2{margin:0 0 8px;font-size:32px}.tt-cta p{margin:0;color:#CDEAF0}.tt-footer{background:#0B1220;color:#AAB7C9;padding:32px 0;margin-top:56px}.tt-footer-inner{display:flex;justify-content:space-between;gap:20px;align-items:center;flex-wrap:wrap}.tt-footer a{color:#E2E8F0}@media(max-width:980px){.tt-menu{display:none}.tt-hero-grid,.tt-card-grid,.tt-feed{grid-template-columns:1fr}.tt-hero-grid{padding:46px 0}.tt-cta{align-items:flex-start;flex-direction:column}}@media(max-width:560px){.tt-topbar-inner,.tt-nav{align-items:flex-start;flex-direction:column}.tt-metric-grid{grid-template-columns:1fr}.tt-btn{width:100%}.tt-logo img{height:42px}}*/