/* hs-koyu-tema — Hadi Sende: Chrome koyu yeni sekme görünümü, Google Sans
   Yazı tipi: Google Sans Variable (SIL OFL 1.1) — kendi sunucumuzdan sunulur. */
@font-face { font-family: "Google Sans Variable"; font-style: normal; font-weight: 400 700; font-display: swap;
  src: url("/fonts/google-sans-latin-ext-wght-normal.woff2") format("woff2-variations"), url("/fonts/google-sans-latin-ext-wght-normal.woff2") format("woff2");
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF; }
@font-face { font-family: "Google Sans Variable"; font-style: normal; font-weight: 400 700; font-display: swap;
  src: url("/fonts/google-sans-latin-wght-normal.woff2") format("woff2-variations"), url("/fonts/google-sans-latin-wght-normal.woff2") format("woff2");
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }

:root {
  color-scheme: dark;
  --font: "Google Sans Variable", "Google Sans", system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif;
  --zemin: #202124; --zemin-ust: #353639; --kart: #343739; --pencere: #2B2C2F; --girdi: #26282B; --girdi-zemin: #26282B; --girdi-hover: #2C2E32;
  --yuzey: #454B4E; --yuzey-hover: #51575B; --kutucuk: #465568; --kutucuk-simge: #7EB5FE; --cizgi: #4F5153; --cizgi-koyu: #5E6368; --kart-hover: #393C3F;
  --yazi: #FFFFFF; --yazi-2: #C4C7C5; --yazi-3: #A2A3AA;
  --vurgu: #8AB4F8; --vurgu-hover: #AECBFA; --vurgu-koyu: #669DF6; --vurgu-acik: #2E3C54; --vurgu-orta: #5C7096; --vurgu-ustu: #202124;
  --odak: rgb(138 180 248 / .55); --odak-hale: rgb(138 180 248 / .22);
  --hata: #F28B82; --hata-acik: #4D2F31; --hata-orta: #7A4146; --hata-hover: #F6AEA9;
  --yesil: #81C995; --yesil-acik: #2B4235; --yesil-orta: #3B5E49; --mor: #D7AEFB; --mor-acik: #43365A; --mor-orta: #5E4B80;
  --turkuaz: #78D9EC; --turkuaz-acik: #29464D; --turkuaz-orta: #3C6670; --sari: #FDD663; --sari-acik: #49402A; --sari-orta: #6B5C34;
  --golge-menu: 0 8px 28px rgb(0 0 0 / .45); --golge-pencere: 0 24px 70px rgb(0 0 0 / .6);
  --hs-topbar-h: 56px;
}

/* ---- zemin: sabit pseudo-element (iOS Safari dahil kaymaz) ---- */
html { background: var(--zemin); color: var(--yazi); color-scheme: dark; }
body { background: transparent !important; position: relative; color: var(--yazi); font-family: var(--font); font-weight: 400; -webkit-font-smoothing: antialiased; }
body::before { content: ""; position: fixed; inset: 0; z-index: -1; pointer-events: none; background: var(--zemin); }
body, button, input, select, textarea, .btn { font-family: var(--font); }
::selection { background: var(--vurgu-orta); color: #fff; }
:focus-visible { outline: 3px solid var(--odak); outline-offset: 2px; }
a { color: var(--vurgu); }
a:hover { color: var(--vurgu-hover); }
h1, h2, h3, h4 { font-weight: 600; letter-spacing: -.005em; line-height: 1.25; color: var(--yazi); }
h1 { font-size: 24px; } h2 { font-size: 20px; } h3 { font-size: 17px; } h4 { font-size: 16px; }
::placeholder { color: var(--yazi-3); opacity: 1; }

@media print {
  html, body { background: #fff !important; color: #000 !important; }
  body::before { display: none; }
}

/* ======================= sayfa gövdesi / kabuklar şeffaf (degrade zemin görünsün) ======================= */
html body.role-admin, html body.role-employer, html body.role-jobseeker, body.ap, body.ap-auth,
.shell-v2, .shell-v2[data-role], .shell-v2[data-role][data-role], .shell-v2__main, .shell-v2[data-role] .shell-v2__main,
.shell-v2[data-role][data-role] .shell-v2__main, .shell-v2__main--fixed, .shell-v2__main--map-bare, .ap-auth main, .app-shell, .page, #app { background: transparent !important; }
.ap-footer { background: rgb(0 0 0 / .22); border-top: 0; }

/* ======================= üst çubuk ======================= */
.topbar, .ap-head, .shell-v2__topbar, .adm-topbar, header.ap-header, .ap-nav, .ap-nav.is-scrolled {
  background: var(--zemin) !important; -webkit-backdrop-filter: none; backdrop-filter: none; border-bottom: 0 !important; box-shadow: none !important; }
.topbar, .ap-head__in { min-height: var(--hs-topbar-h); }
.topbar__title, .adm-head__title { font-weight: 500; }
.shell-v2[data-role] .sidebar, .sidebar { background: rgb(0 0 0 / .22) !important; border-right: 0 !important; }
.sidebar a.active, .sidebar .active, .sidebar [aria-current="page"] { background: var(--vurgu-acik) !important; color: var(--vurgu) !important; }

/* ======================= düğmeler: hap biçim ======================= */
.btn, .ap-btn, .btn-sm, button.btn, a.btn { border-radius: 999px !important; font-weight: 500; letter-spacing: 0; transition: background-color .15s ease, transform .1s ease, opacity .15s ease; }
.btn:active, .ap-btn:active { transform: scale(.97); }
.btn:disabled, .btn[disabled], .ap-btn:disabled, .btn.is-disabled { opacity: .45; }
.btn, .btn-secondary, .ap-btn--ghost, .ap-btn--light { background: var(--yuzey); color: #fff; border: 0; box-shadow: none; }
.btn:hover, .btn-secondary:hover { background: var(--yuzey-hover); }
.btn-primary, .ap-btn--primary, .ap-btn--kamu, button[type=submit].btn-primary { background: var(--vurgu) !important; color: var(--vurgu-ustu) !important; border: 0 !important; box-shadow: none !important; background-image: none !important; }
.btn-primary:hover, .ap-btn--primary:hover, .ap-btn--kamu:hover { background: var(--vurgu-hover) !important; color: var(--vurgu-ustu) !important; }
.btn-outline, .ap-btn--outline { background: transparent !important; color: var(--vurgu) !important; border: 1.5px solid var(--vurgu) !important; }
.btn-outline:hover { background: var(--vurgu-acik) !important; }
.btn-ghost { background: transparent !important; color: var(--yazi) !important; border: 0 !important; }
.btn-ghost:hover { background: rgb(255 255 255 / .08) !important; }
.btn-danger, .btn-danger-outline { background: var(--hata-acik) !important; color: var(--hata) !important; border: 0 !important; }
.btn-danger:hover, .btn-danger-outline:hover { background: var(--hata-orta) !important; color: var(--hata-hover) !important; }
.btn-success { background: var(--yesil) !important; color: var(--vurgu-ustu) !important; border: 0 !important; }
.avatar, .topbar__avatar, .pr-step__n, .section-add-btn, .ap-verify__logo { color: var(--vurgu-ustu); }
.pr-step__n, .section-add-btn { background: var(--vurgu); background-image: none; }
.topbar__avatar, .topbar .avatar, .topbar__avatar.avatar { background: var(--vurgu) !important; background-image: none !important; color: var(--vurgu-ustu) !important; }

/* ======================= giriş alanları ======================= */
input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=file]):not([type=color]), select, textarea, .input {
  background-color: var(--girdi) !important; color: var(--yazi) !important; border: 1.5px solid var(--cizgi) !important; border-radius: 16px; box-shadow: none; }
input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=file]):not([type=color]):not(.btn), select, .input { min-height: 48px; }
input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=file]):not([type=color]):hover, select:hover, textarea:hover, .input:hover { background-color: var(--girdi-hover) !important; border-color: var(--cizgi-koyu) !important; }
input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=file]):not([type=color]):focus, select:focus, textarea:focus, .input:focus, .input:focus-within {
  border-color: var(--vurgu) !important; box-shadow: 0 0 0 4px var(--odak-hale) !important; outline: 0; }
input:invalid:not(:placeholder-shown), .input.is-invalid, .input.error, input[aria-invalid="true"], .has-error input, .has-error select { border-color: var(--hata) !important; background-color: var(--hata-acik) !important; }
select, select.input, .field select, .form-group select { -webkit-appearance: none; appearance: none; padding-right: 40px !important; background-repeat: no-repeat !important; background-position: right 14px center !important; background-size: 16px 16px !important;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23C4C7C5' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E") !important; }
option { background: var(--pencere); color: var(--yazi); }
input[type=checkbox], input[type=radio] { accent-color: var(--vurgu); }
label, .field label { color: var(--yazi-2); }

/* ======================= kartlar ======================= */
.card, .ap-card, .pp-card, .pp-stat, .au-card, .kf-item, .pr-card, .pr-step, .pr-stat { background-color: var(--kart); border: 0 !important; box-shadow: none !important; border-radius: 20px; }
.card[role=button]:hover, a.card:hover, button.card:hover, .pp-stat[role=button]:hover, a.pp-stat:hover { background-color: var(--kart-hover); }
.pr-stat, .pp-stat { border-radius: 20px; }
hr, .divider { border-color: var(--cizgi) !important; }

/* ======================= çipler, sekmeler, rozetler ======================= */
.chip, .segmented button, .tab { background: var(--yuzey); color: var(--yazi); border: 0 !important; border-radius: 999px; font-weight: 500; }
.chip:hover { background: var(--yuzey-hover); }
.chip.active, .chip.is-active, .chip.selected, .chip.on, .chip[aria-pressed="true"], .chip[aria-selected="true"], .chip:has(input:checked) { background: var(--vurgu) !important; color: var(--vurgu-ustu) !important; }
.badge { font-weight: 500; border-radius: 999px; }
.badge-info { background: #34445e; color: var(--vurgu); }
.badge-success { background: var(--yesil-acik); color: var(--yesil); }
.badge-warning { background: var(--sari-acik); color: var(--sari); }
.badge-danger { background: var(--hata-acik); color: var(--hata); }
.badge-muted { background: var(--yuzey); color: var(--yazi-2); }
.badge-kamu { background: var(--mor-acik); color: var(--mor); }
.topbar__notif-badge, .count-badge { background: var(--hata) !important; color: #202124 !important; font-weight: 700; }

/* ======================= pencere / alt sayfa / menü ======================= */
.modal-overlay, .modal-backdrop, .pn-overlay, .hsck-overlay { background: rgb(0 0 0 / .6) !important; -webkit-backdrop-filter: blur(8px); backdrop-filter: blur(8px); }
.modal-sheet, .kl-sheet, .cm-sheet, .pn-sheet, .sheet, .ap-sheet, .pm-contact, .ap-pwa__in, .hsck-card, .hsck-pref { background: var(--pencere) !important; color: var(--yazi); border: 0; border-radius: 28px; box-shadow: var(--golge-pencere) !important; }
@media (max-width: 640px) { .modal-sheet, .kl-sheet, .cm-sheet, .pn-sheet, .sheet { border-radius: 28px 28px 0 0; } }
.modal-sheet .card, .kl-sheet .card { background: var(--kart); }
.ap-menu, .dropdown, .popover, .menu-pop, [role=menu] { background: var(--pencere) !important; box-shadow: 0 0 0 1px rgb(255 255 255 / .08), var(--golge-menu) !important; border: 0 !important; }
[role=menuitem][aria-selected=true], .dropdown .active { background: var(--vurgu-acik); color: var(--vurgu); }
.job-detail-modal-overlay, .km-overlay { background: var(--zemin) !important; }

/* ======================= toast: Material koyu tema gibi açık ======================= */
.toast, .hs-toast, .toast-host .toast { background: rgb(232 234 237 / .96) !important; color: #202124 !important; border: 0 !important; border-radius: 999px !important; box-shadow: var(--golge-menu) !important; font-weight: 500; }
.toast.success::before, .hs-toast.success::before { color: #188038; }
.toast.error::before, .hs-toast.error::before { color: #c5221f; }

/* ======================= anahtar ======================= */
.switch .track { background: #5e6368 !important; }
.switch .thumb { background: #e8eaed !important; }
.switch input:checked ~ .track { background: var(--vurgu) !important; }
.switch input:checked ~ .thumb { background: var(--vurgu-ustu) !important; }

/* ======================= tablolar ======================= */
table { color: var(--yazi); }
th { background: rgb(0 0 0 / .18); color: var(--yazi-2); }
tbody tr:hover td { background: rgb(255 255 255 / .05); }
td, th { border-color: var(--cizgi) !important; }

/* ======================= yükleniyor iskeleti ======================= */
.skeleton, .skel, [class*=skeleton] { background: linear-gradient(90deg, var(--yuzey), var(--yuzey-hover), var(--yuzey)) !important; background-size: 200% 100% !important; }

/* ======================= ipucu kutusu (avatar-hint) ======================= */
.avatar-hint { background: var(--pencere) !important; color: var(--yazi) !important; box-shadow: 0 0 0 1px rgb(255 255 255 / .08), var(--golge-menu) !important; }
.avatar-hint::after { background: var(--pencere) !important; }
.avatar-hint__close { color: var(--yazi-2) !important; }
.ap-skip { background: var(--vurgu); color: var(--vurgu-ustu); }

/* ======================= harita (Leaflet) ======================= */
.leaflet-container { background: var(--girdi); font-family: var(--font); }
.leaflet-popup-content-wrapper, .leaflet-popup-tip, .leaflet-bar a { background: var(--pencere) !important; color: var(--yazi) !important; }
.leaflet-bar a { border-bottom-color: var(--cizgi) !important; }
.leaflet-control-attribution { background: rgb(41 42 45 / .78) !important; color: var(--yazi-3) !important; }
.leaflet-control-attribution a { color: var(--vurgu) !important; }

/* ======================= bilgi kutuları ======================= */
.alert, .notice, .info-box { background: var(--kart); color: var(--yazi); }
.alert-info, .notice--info, .info-box--info { background: #34445e; }
.alert-warning, .notice--warn { background: var(--sari-acik); }
.alert-danger, .alert-error, .notice--error { background: var(--hata-acik); }
.alert-success, .notice--success { background: var(--yesil-acik); }

/* ======================= küçük düzeltmeler ======================= */
.an-funnel__bar b { color: var(--vurgu-ustu); }
footer a, .ap-footer a { color: var(--yazi-2); }
footer a:hover, .ap-footer a:hover { color: var(--vurgu-hover); }

/* ======================= küçük ekran taşma güvenliği ======================= */
@media (max-width: 640px) {
  .ck-table { display: block; max-width: 100%; overflow-x: auto; -webkit-overflow-scrolling: touch; }
  .ap-toc, .ap-toc nav { max-width: 100%; min-width: 0; }
}

/* ======================= avatar / sunucudan gelen şerit kontrast düzeltmeleri ======================= */
.topbar__avatar .avatar, .topbar__avatar .avatar * { color: var(--vurgu-ustu) !important; }
.account-menu__head .avatar { background: var(--vurgu-acik) !important; color: var(--vurgu) !important; }
.hs-policy-strip { color: var(--yazi-3, #A2A3AA) !important; }
.hs-policy-strip a { color: var(--yazi-2, #C4C7C5) !important; }


/* ======================= üst bar = sayfa zemini, menü ikonu, arama alanı ======================= */
.ap-nav, .ap-nav.is-scrolled { background: var(--zemin) !important; -webkit-backdrop-filter: none !important; backdrop-filter: none !important; border-bottom-color: transparent !important; }
.ap-menu { background: var(--zemin) !important; }
.ap-burger span { background: #fff !important; }
/* sarmalayıcısı olan arama kutularında iç input ikinci bir kutu çizmesin */
.kl-search input:not(#_), .aj-search input:not(#_), .am-search input:not(#_), .social-input-group .input:not(#_) {
  background: transparent !important; border: 0 !important; border-radius: 0 !important; box-shadow: none !important; min-height: 0 !important; outline: 0 !important; padding-left: 0 !important; padding-right: 0 !important; }
.kl-search, .aj-search, .am-search { background: var(--girdi-zemin, #26282B); border-radius: 999px; }
.kl-search:focus-within, .aj-search:focus-within, .am-search:focus-within { background: var(--girdi-zemin, #26282B); box-shadow: 0 0 0 4px var(--odak-hale); }
.shell-v2__sidebar, .shell-v2[data-role] .shell-v2__sidebar, .shell-v2[data-role][data-role] .shell-v2__sidebar { background: var(--zemin) !important; -webkit-backdrop-filter: none !important; backdrop-filter: none !important; }

/* ======================= yerleşim düzeltmeleri ======================= */
/* admin üst bar: sayfa içeriğiyle aynı genişlik, menü ortada */
@media (min-width: 960px) {
  body.role-admin .shell-v2[data-role][data-role] .shell-v2__navbar-inner {
    display: grid !important; grid-template-columns: 1fr auto 1fr; align-items: center; column-gap: 12px;
    width: 100%; max-width: 780px !important; height: 56px; margin: 0 auto !important; padding: 0 !important; box-sizing: border-box; }
  body.role-admin:has(.an2-page) .shell-v2[data-role][data-role] .shell-v2__navbar-inner { max-width: 1040px !important; }
  body.role-admin .shell-v2__navbar-inner .sidebar-brand { justify-self: start; padding: 0 !important; margin: 0 !important; }
  body.role-admin .shell-v2__navbar-inner .sidebar-nav { justify-self: center; flex: none !important; justify-content: center !important; width: auto !important; }
  body.role-admin .shell-v2__navbar-inner .shell-v2__navbar-actions { justify-self: end; margin: 0 !important; }
}
/* footer alt satırı: altına standart boşluk */
@media (min-width: 861px) { .ap-footer { padding-bottom: calc(32px + env(safe-area-inset-bottom, 0px)) !important; } }
/* filtre popup butonları: aynı hizada, eşit genişlik ve yükseklik */
.kl-sheet__actions { display: grid !important; grid-template-columns: 1fr 1fr !important; gap: 12px; align-items: stretch; }
.kl-sheet__foot .ap-btn, .kl-sheet__actions .ap-btn { width: 100% !important; min-width: 0; height: 52px; min-height: 52px; padding: 0 16px; box-sizing: border-box; justify-content: center; font-size: 15px; font-weight: 500; line-height: 1; }
