/* Nefes Çay ERP arayüzü, sürüm 3.
   Yazı tipleri ve ikonlar programla birlikte gelir (static/fonts, static/img/ikonlar.svg); internet gerekmez.
   Kullanıcı tercihleri <html> etiketindeki data-tema, data-renk, data-yazi, data-boyut, data-yogunluk, data-menu
   özellikleriyle uygulanır. Lisanslar: Plus Jakarta Sans ve Atkinson Hyperlegible SIL OFL, Lucide ikonları ISC. */
@font-face { font-family: "Plus Jakarta Sans"; font-style: normal; font-weight: 200 800; font-display: swap;
  src: url("../fonts/plus-jakarta-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-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF; }
@font-face { font-family: "Plus Jakarta Sans"; font-style: normal; font-weight: 200 800; font-display: swap;
  src: url("../fonts/plus-jakarta-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; }
/* Nefes Çay ERP arayüzü, sürüm 2. Çay yaprağı yeşili, taze sürgün vurgusu, bakır uyarı rengi.
   Yazı tipleri sistemden gelir; ofis ağında internet gerekmez. Koyu tema işletim sistemi ayarını izler. */
@font-face { font-family: "Atkinson Hyperlegible"; font-style: normal; font-weight: 400; font-display: swap;
  src: url("../fonts/atkinson-hyperlegible-latin-ext-400-normal.woff2") format("woff2"); unicode-range: U+0100-02AF,U+0304,U+0308,U+0329,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF; }
@font-face { font-family: "Atkinson Hyperlegible"; font-style: normal; font-weight: 700; font-display: swap;
  src: url("../fonts/atkinson-hyperlegible-latin-ext-700-normal.woff2") format("woff2"); unicode-range: U+0100-02AF,U+0304,U+0308,U+0329,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF; }
@font-face { font-family: "Atkinson Hyperlegible"; font-style: normal; font-weight: 400; font-display: swap;
  src: url("../fonts/atkinson-hyperlegible-latin-400-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+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD; }
@font-face { font-family: "Atkinson Hyperlegible"; font-style: normal; font-weight: 700; font-display: swap;
  src: url("../fonts/atkinson-hyperlegible-latin-700-normal.woff2") format("woff2"); unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD; }

/* ---------- tasarım değişkenleri ---------- */
:root {
  --lacivert: #0a1a3c; --lacivert-2: #12285a; --surgun: #a8d84e; --turkuaz: #19c1c1;
  --vurgu: #1b5a3e; --vurgu-koyu: #114030; --vurgu-acik: #e7f2df; --vurgu-yazi: #fff;
  --zemin: #f2f5f2; --yuzey: #fff; --yuzey-2: #f6f8f7; --cizgi: #dde4de; --cizgi-koyu: #c3cec6;
  --murekkep: #13201a; --soluk: #5b6a62; --bakir: #b5521d;
  --yan: var(--lacivert); --yan-yazi: color-mix(in srgb, #fff 80%, var(--lacivert)); --yan-soluk: color-mix(in srgb, #fff 52%, var(--lacivert));
  --yan-cizgi: rgba(255, 255, 255, .1); --surgun-yazi: #12301f;
  --hata: #a8281f; --hata-zemin: #fbeceb; --uyari: #7d5200; --uyari-zemin: #fdf3d9;
  --tamam: #17643a; --tamam-zemin: #e6f4ea; --bilgi: #1f5266; --bilgi-zemin: #e7f1f5;
  --r: 12px; --r-k: 8px; --golge: 0 1px 2px rgba(10, 26, 60, .05), 0 6px 18px rgba(10, 26, 60, .05);
  --golge-buyuk: 0 18px 50px rgba(10, 26, 60, .22);
  --yazi: "Plus Jakarta Sans", "Segoe UI Variable Text", "Segoe UI", system-ui, -apple-system, "Noto Sans", Arial, sans-serif;
  --kelime: .1em; /* Plus Jakarta Sans'ın boşluğu çok dar (0,17 em): "Cari işlem" yazıları bitişik görünmesin */
  --boyut: 15px; --hucre-d: .55rem; --hucre-y: .85rem; --bosluk: 1.1rem; --yan-en: 264px;
  color-scheme: light;
}
/* renk koleksiyonu (tema): yan menü (--lacivert), vurgu ve menüde seçili öğe (--surgun) birlikte değişir.
   Ayarlar > Görünüm ekranındaki kartlar core/context.py GORUNUM_SECENEK["renk"] ile aynı renkleri gösterir. */
:root[data-renk="lacivert"] { --lacivert: #14307c; --vurgu: #1f4fbf; --vurgu-koyu: #163a8f; --vurgu-acik: #e4ebfa; --surgun: #9cc7ff; --surgun-yazi: #0d2559; }
:root[data-renk="mor"] { --lacivert: #2b1a66; --vurgu: #5a3ea8; --vurgu-koyu: #432e80; --vurgu-acik: #ece6f8; --surgun: #c9b8ff; --surgun-yazi: #24145a; }
:root[data-renk="grafit"] { --lacivert: #1e252f; --vurgu: #3a4658; --vurgu-koyu: #252e3b; --vurgu-acik: #e8ebf0; --surgun: #d6aa4f; --surgun-yazi: #2a2110; }
:root[data-renk="turkuaz"] { --lacivert: #0a3a47; --vurgu: #0b7480; --vurgu-koyu: #075860; --vurgu-acik: #ddf3f4; --surgun: #6fd8d6; --surgun-yazi: #06333a; }
:root[data-renk="bordo"] { --lacivert: #4b1430; --vurgu: #8a2a4f; --vurgu-koyu: #6a1f3c; --vurgu-acik: #f6e6ec; --surgun: #f1dcc1; --surgun-yazi: #4b1430; }
:root[data-renk="bakir"] { --lacivert: #4f2c16; --vurgu: #a24716; --vurgu-koyu: #7c360f; --vurgu-acik: #f8e9df; --surgun: #f0c99c; --surgun-yazi: #4a2810; }
:root[data-renk="gumus"] { --lacivert: #13224d; --vurgu: #2a4a8f; --vurgu-koyu: #1d3570; --vurgu-acik: #e6ebf5; --surgun: #cfd8e6; --surgun-yazi: #13224d; }
:root[data-renk="indigo"] { --lacivert: #1e1b4b; --vurgu: #4f46e5; --vurgu-koyu: #3730a3; --vurgu-acik: #eef0ff; --surgun: #a5b4fc; --surgun-yazi: #1e1b4b; --turkuaz: #818cf8; }
:root[data-renk="zumrut"] { --lacivert: #022c22; --vurgu: #047857; --vurgu-koyu: #065f46; --vurgu-acik: #e3f8ef; --surgun: #6ee7b7; --surgun-yazi: #022c22; --turkuaz: #34d399; }
:root[data-renk="gece"] { --lacivert: #0b1120; --vurgu: #0369a1; --vurgu-koyu: #075985; --vurgu-acik: #e0f2fe; --surgun: #7dd3fc; --surgun-yazi: #0b1120; --turkuaz: #38bdf8; }
:root[data-renk="gunbatimi"] { --lacivert: #2a1410; --vurgu: #c2410c; --vurgu-koyu: #9a3412; --vurgu-acik: #fff0e6; --surgun: #fdba74; --surgun-yazi: #431407; --turkuaz: #fb923c; }
:root[data-renk="kiraz"] { --lacivert: #3b0a24; --vurgu: #be185d; --vurgu-koyu: #9d174d; --vurgu-acik: #fdecf4; --surgun: #fbcfe8; --surgun-yazi: #500724; --turkuaz: #f472b6; }
:root[data-renk="orman"] { --lacivert: #14261c; --vurgu: #3f6212; --vurgu-koyu: #365314; --vurgu-acik: #eef6e0; --surgun: #facc15; --surgun-yazi: #1a2e05; --turkuaz: #a3e635; }
:root { --degrade: linear-gradient(135deg, #14532d, #1f7a43 55%, #3a9d5d); --degrade-golge: rgba(20, 83, 45, .55); }
:root:not([data-renk="yesil"]) { --degrade: linear-gradient(135deg, var(--vurgu-koyu), var(--vurgu) 55%, color-mix(in srgb, var(--vurgu) 68%, #fff));
  --degrade-golge: color-mix(in srgb, var(--vurgu) 55%, transparent); }
/* köşe yuvarlaklığı (Ayarlar › Görünüm › Köşeler) */
:root[data-kose="keskin"] { --r: 6px; --r-k: 4px; }
:root[data-kose="yuvarlak"] { --r: 18px; --r-k: 12px; }
/* koyu tema: kullanıcı "koyu" seçtiyse veya "sistem" seçip bilgisayarı koyu moddaysa */
:root[data-tema="koyu"] {
  --zemin: #0e1413; --yuzey: #161e1c; --yuzey-2: #1b2522; --cizgi: #29352f; --cizgi-koyu: #394840;
  --murekkep: #e6eee9; --soluk: #9aaba2; --yan: color-mix(in srgb, var(--lacivert) 70%, #000); --vurgu-acik: color-mix(in srgb, var(--vurgu) 24%, #161e1c);
  --hata: #ff9d94; --hata-zemin: #3a1d1a; --uyari: #f0c463; --uyari-zemin: #37290d;
  --tamam: #86d6a4; --tamam-zemin: #173524; --bilgi: #8ecbe0; --bilgi-zemin: #14303a; --golge: none; color-scheme: dark;
}
@media (prefers-color-scheme: dark) {
  :root[data-tema="sistem"] {
    --zemin: #0e1413; --yuzey: #161e1c; --yuzey-2: #1b2522; --cizgi: #29352f; --cizgi-koyu: #394840;
    --murekkep: #e6eee9; --soluk: #9aaba2; --yan: color-mix(in srgb, var(--lacivert) 70%, #000); --vurgu-acik: color-mix(in srgb, var(--vurgu) 24%, #161e1c);
    --hata: #ff9d94; --hata-zemin: #3a1d1a; --uyari: #f0c463; --uyari-zemin: #37290d;
    --tamam: #86d6a4; --tamam-zemin: #173524; --bilgi: #8ecbe0; --bilgi-zemin: #14303a; --golge: none; color-scheme: dark;
  }
}
:root[data-tema="koyu"] a, :root[data-tema="koyu"] .baglanti { --vurgu-metin: color-mix(in srgb, var(--vurgu) 45%, #fff); }
@media (prefers-color-scheme: dark) { :root[data-tema="sistem"] { --vurgu-metin: color-mix(in srgb, var(--vurgu) 45%, #fff); } }
/* yazı tipi, boyut, yoğunluk */
:root[data-yazi="okunakli"] { --kelime: .02em; --yazi: "Atkinson Hyperlegible", "Segoe UI", system-ui, Arial, sans-serif; }
:root[data-yazi="sistem"] { --kelime: 0em; --yazi: "Segoe UI Variable Text", "Segoe UI", system-ui, -apple-system, "Noto Sans", Arial, sans-serif; }
:root[data-boyut="kucuk"] { --boyut: 14px; }
:root[data-boyut="buyuk"] { --boyut: 16.5px; }
:root[data-boyut="cokbuyuk"] { --boyut: 18px; }
:root[data-yogunluk="sik"] { --hucre-d: .3rem; --hucre-y: .6rem; --bosluk: .75rem; }

/* ---------- temel ---------- */
* { box-sizing: border-box; }
html { font-size: var(--boyut); -webkit-text-size-adjust: 100%; }
body { margin: 0; font-family: var(--yazi); color: var(--murekkep); background: var(--zemin); line-height: 1.5; word-spacing: var(--kelime); }
/* tarayıcı form öğelerinde kelime aralığını sıfırlar; düğme, kutu ve listelerde de aynı aralık olsun */
button, input, select, textarea, optgroup, .dugme { word-spacing: var(--kelime); }
/* sıkı harf aralıklı büyük başlıklarda kelimeler biraz daha ayrık dursun */
h1, h2, .g2-baslik, .g2-sol h1, .giris-sol h1, .tarti .buyuk, .hesap b, .portal-bakiye strong { word-spacing: calc(var(--kelime) + .06em); }
a { color: var(--vurgu-metin, var(--vurgu)); text-underline-offset: 2px; }
h1 { font-size: 1.55rem; font-weight: 760; margin: 0; letter-spacing: -0.025em; line-height: 1.2; }
h2 { font-size: 1.05rem; font-weight: 680; margin: 0 0 .7rem; letter-spacing: -0.01em; }
code { background: var(--yuzey-2); border: 1px solid var(--cizgi); border-radius: 5px; padding: .05rem .35rem; font-size: .88em; }
:focus-visible { outline: 2px solid var(--turkuaz); outline-offset: 2px; border-radius: 4px; }
.ikon { width: 18px; height: 18px; fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; flex: none; }
.ikon.k { width: 15px; height: 15px; }
.gizli { display: none !important; }
.ekran-okuyucu { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); }

/* ---------- kabuk ve yan menü ---------- */
.kabuk { display: grid; grid-template-columns: var(--yan-en) 1fr; min-height: 100vh; }
.yan { background: var(--yan); color: var(--yan-yazi); padding: .9rem .65rem 1rem; position: sticky; top: 0; height: 100vh; overflow-y: auto; overflow-x: hidden;
       display: flex; flex-direction: column; gap: 2px; scrollbar-width: thin; scrollbar-color: #2b3f6b transparent; z-index: 30; }
.marka { display: flex; align-items: center; gap: .65rem; padding: .3rem .55rem .35rem; color: #fff; text-decoration: none; font-size: 1.2rem; font-weight: 780; letter-spacing: -0.02em; white-space: nowrap; }
.marka-logo { width: 34px; height: 34px; flex: none; object-fit: contain; }
.marka-logo.renkli { display: none; }
.marka-alt { margin: 0 .55rem .8rem; font-size: .72rem; font-weight: 500; color: var(--yan-soluk); white-space: nowrap; }
.menu-ara { display: flex; align-items: center; gap: .55rem; margin: 0 .1rem .8rem; padding: .5rem .7rem; border: 1px solid var(--yan-cizgi); border-radius: var(--r-k);
            background: rgba(255, 255, 255, .05); color: var(--yan-soluk); font: inherit; font-size: .86rem; cursor: pointer; text-align: left; min-height: 0; width: auto; }
.menu-ara:hover { background: rgba(255, 255, 255, .09); border-color: rgba(255, 255, 255, .2); color: #fff; }
.menu-ara kbd { margin-left: auto; font: inherit; font-size: .7rem; padding: .05rem .35rem; border: 1px solid var(--yan-cizgi); border-radius: 4px; }
.menu-baslik { margin: .85rem .7rem .3rem; font-size: .68rem; font-weight: 700; letter-spacing: .06em; color: var(--yan-soluk); white-space: nowrap; }
.yan .oge { display: flex; align-items: center; gap: .65rem; padding: .44rem .7rem; color: var(--yan-yazi); text-decoration: none; border-radius: var(--r-k); font-size: .91rem; white-space: nowrap; }
.yan details .oge { padding-left: 2.4rem; font-size: .88rem; }
.yan .oge:hover, .grup summary:hover { background: rgba(255, 255, 255, .07); color: #fff; }
.yan .oge.aktif { background: var(--surgun); color: var(--surgun-yazi); font-weight: 680; }
.yan .oge.aktif .ikon { stroke: var(--surgun-yazi); }
.grup summary { display: flex; align-items: center; gap: .65rem; padding: .48rem .7rem; border-radius: var(--r-k); cursor: pointer; list-style: none; font-size: .91rem; font-weight: 600; color: #e9eef9; user-select: none; white-space: nowrap; }
.grup summary::-webkit-details-marker { display: none; }
.grup summary::after { content: ""; margin-left: auto; width: 7px; height: 7px; border-right: 1.7px solid var(--yan-soluk); border-bottom: 1.7px solid var(--yan-soluk); transform: rotate(-45deg); transition: transform .15s; }
.grup[open] summary::after { transform: rotate(45deg); }
.grup[open] > summary { color: #fff; }
.yan-alt { margin-top: auto; padding: .9rem .7rem 0; border-top: 1px solid var(--yan-cizgi); font-size: .74rem; color: var(--yan-soluk); line-height: 1.55; display: flex; flex-direction: column; white-space: nowrap; }
.yan-alt strong { color: #dfe6f5; font-weight: 650; }
.yan-alt a { color: var(--surgun); text-decoration: none; margin-top: .2rem; }
.menu-daralt { margin-top: .6rem; align-self: flex-start; background: none; border: 1px solid var(--yan-cizgi); color: var(--yan-soluk); padding: .25rem .5rem; min-height: 0; font-size: .75rem; }
.menu-daralt:hover { color: #fff; background: rgba(255, 255, 255, .07); border-color: rgba(255, 255, 255, .2); }
/* daraltılmış menü: yalnız ikonlar; üzerine gelince açılır */
@media (min-width: 961px) {
  :root[data-menu="dar"] { --yan-en: 72px; }
  :root[data-menu="dar"] .yan { width: 72px; transition: width .15s; }
  :root[data-menu="dar"] .yan:hover, :root[data-menu="dar"] .yan:focus-within { width: 264px; box-shadow: var(--golge-buyuk); }
  :root[data-menu="dar"] .yan:not(:hover):not(:focus-within) :is(.marka span, .marka-alt, .menu-ara span, .menu-ara kbd, .menu-baslik, .grup summary span, .yan > .oge span, .yan-alt, details .oge, .menu-daralt span) { display: none; }
  :root[data-menu="dar"] .yan:not(:hover):not(:focus-within) .grup summary::after { display: none; }
}

/* ---------- üst çubuk ---------- */
.ana { min-width: 0; }
.ust { position: sticky; top: 0; z-index: 20; display: flex; gap: .7rem; align-items: center; padding: .55rem 1.6rem; background: color-mix(in srgb, var(--yuzey) 90%, transparent);
       backdrop-filter: blur(10px); border-bottom: 1px solid var(--cizgi); font-size: .88rem; min-height: 58px; }
.ust .firma-adi { font-weight: 700; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.ust .bosluk { margin-left: auto; }
.ust form { display: inline; margin: 0; }
.cip { display: inline-flex; align-items: center; gap: .35rem; padding: .25rem .65rem; border: 1px solid var(--cizgi); border-radius: 99px; color: var(--soluk); background: var(--yuzey); white-space: nowrap; font-size: .82rem; text-decoration: none; }
.cip .ikon { width: 14px; height: 14px; }
.cip select { border: 0; padding: 0 .2rem; min-height: 0; background: transparent; font-size: .82rem; color: var(--murekkep); font-weight: 600; }
.cip select:focus { box-shadow: none; }
.menu-dugme { display: none; padding: .35rem .5rem; min-height: 0; }
.ikon-dugme { position: relative; display: inline-grid; place-items: center; width: 38px; height: 38px; padding: 0; min-height: 0; border-radius: 50%; border: 1px solid var(--cizgi); background: var(--yuzey); color: var(--murekkep); }
.ikon-dugme:hover { border-color: var(--vurgu); background: var(--vurgu-acik); }
.ikon-dugme .sayac { position: absolute; top: -3px; right: -3px; min-width: 18px; height: 18px; padding: 0 4px; border-radius: 9px; background: var(--hata); color: #fff; font-size: .68rem; font-weight: 700; display: grid; place-items: center; }
.acilir { position: relative; }
.acilir > summary { list-style: none; cursor: pointer; }
.acilir > summary::-webkit-details-marker { display: none; }
.acilir-panel { position: absolute; right: 0; top: calc(100% + 8px); min-width: 250px; background: var(--yuzey); border: 1px solid var(--cizgi); border-radius: var(--r); box-shadow: var(--golge-buyuk); padding: .45rem; z-index: 50; }
.acilir-panel a, .acilir-panel button.satir { display: flex; align-items: center; gap: .6rem; width: 100%; padding: .5rem .65rem; border-radius: var(--r-k); color: var(--murekkep); text-decoration: none; border: 0; background: none; font: inherit; font-size: .9rem; min-height: 0; text-align: left; }
.acilir-panel a:hover, .acilir-panel button.satir:hover { background: var(--vurgu-acik); }
.acilir-panel hr { border: 0; border-top: 1px solid var(--cizgi); margin: .35rem 0; }
.acilir-panel .baslik { padding: .45rem .65rem .55rem; font-size: .8rem; color: var(--soluk); }
.acilir-panel .baslik strong { display: block; font-size: .95rem; color: var(--murekkep); }
.bildirim-paneli { width: 360px; max-height: 70vh; overflow-y: auto; }
.bildirim { display: flex; gap: .65rem; padding: .6rem .65rem; border-radius: var(--r-k); text-decoration: none; color: var(--murekkep); }
.bildirim:hover { background: var(--vurgu-acik); }
.bildirim .ikon { margin-top: .15rem; color: var(--vurgu); }
.bildirim.uyari .ikon { color: var(--bakir); }
.bildirim.kritik .ikon { color: var(--hata); }
.bildirim small { display: block; color: var(--soluk); font-size: .78rem; }
.kullanici { display: flex; align-items: center; gap: .55rem; }
.kullanici-ad { line-height: 1.15; font-weight: 650; text-align: left; }
.kullanici-ad small { display: block; font-weight: 400; color: var(--soluk); font-size: .75rem; }
.avatar { width: 34px; height: 34px; border-radius: 50%; background: var(--vurgu); color: var(--vurgu-yazi); display: grid; place-items: center; font-weight: 700; flex: none; }
.rozet { display: inline-flex; align-items: center; gap: .3rem; padding: .15rem .6rem; border-radius: 99px; font-size: .78rem; font-weight: 650; background: var(--tamam-zemin); color: var(--tamam); text-decoration: none; white-space: nowrap; }
.rozet.uyari { background: var(--uyari-zemin); color: var(--uyari); }
.rozet.hata { background: var(--hata-zemin); color: var(--hata); }
.rozet.notr { background: var(--yuzey-2); color: var(--soluk); }

/* ---------- içerik başlığı, konum çubuğu ---------- */
.icerik { padding: 1.1rem 1.6rem 3.5rem; max-width: 1560px; }
.konum { display: flex; align-items: center; gap: .55rem; margin-bottom: .9rem; font-size: .84rem; color: var(--soluk); flex-wrap: wrap; }
.konum a { color: var(--soluk); text-decoration: none; }
.konum a:hover { color: var(--vurgu); text-decoration: underline; }
.konum .ayrac { opacity: .5; }
.konum .su-an { color: var(--murekkep); font-weight: 600; }
.geri { display: inline-flex; align-items: center; gap: .3rem; padding: .25rem .7rem .25rem .45rem; border: 1px solid var(--cizgi); border-radius: 99px; background: var(--yuzey); color: var(--murekkep) !important; text-decoration: none !important; font-weight: 600; margin-right: .3rem; min-height: 0; font-size: .84rem; }
.geri:hover { border-color: var(--vurgu); background: var(--vurgu-acik); }
.sayfa-bas { display: flex; align-items: center; gap: .9rem; flex-wrap: wrap; margin-bottom: 1.1rem; }
.sayfa-bas .islemler { margin-left: auto; display: flex; gap: .5rem; flex-wrap: wrap; align-items: center; }
.sayfa-bas .islemler form { margin: 0; }
.aciklama { color: var(--soluk); margin: -.5rem 0 1.1rem; max-width: 74ch; }

/* ---------- düğmeler ---------- */
.dugme, button { font: inherit; font-size: .92rem; font-weight: 600; display: inline-flex; align-items: center; gap: .45rem; min-height: 38px; padding: .4rem 1rem; border: 1px solid var(--cizgi-koyu);
                 border-radius: var(--r-k); background: var(--yuzey); color: var(--murekkep); text-decoration: none; cursor: pointer; white-space: nowrap; transition: background .12s, border-color .12s; }
.dugme:hover, button:hover { background: var(--yuzey-2); border-color: var(--vurgu); }
.dugme:active, button:active { transform: translateY(1px); }
.dugme.birincil, button.birincil { background: var(--vurgu); border-color: var(--vurgu); color: var(--vurgu-yazi); }
.dugme.birincil:hover, button.birincil:hover { background: var(--vurgu-koyu); border-color: var(--vurgu-koyu); }
.dugme.tehlike, button.tehlike { color: var(--hata); border-color: color-mix(in srgb, var(--hata) 40%, var(--cizgi)); }
.dugme.tehlike:hover, button.tehlike:hover { background: var(--hata-zemin); border-color: var(--hata); }
.dugme.kucuk, button.kucuk { min-height: 30px; padding: .15rem .65rem; font-size: .82rem; }
button.baglanti { border: 0; background: none; padding: 0; min-height: 0; color: var(--vurgu-metin, var(--vurgu)); text-decoration: underline; font-weight: 400; }
.dugme-grup { display: inline-flex; }
.dugme-grup > :not(:first-child) { border-top-left-radius: 0; border-bottom-left-radius: 0; margin-left: -1px; }
.dugme-grup > :not(:last-child) { border-top-right-radius: 0; border-bottom-right-radius: 0; }

/* ---------- kart, mesaj ---------- */
.kart { background: var(--yuzey); border: 1px solid var(--cizgi); border-radius: var(--r); padding: 1.2rem 1.3rem; margin-bottom: var(--bosluk); box-shadow: var(--golge); }
.izgara { display: grid; gap: var(--bosluk); grid-template-columns: repeat(auto-fit, minmax(320px, 1fr)); align-items: start; }
.mesaj { padding: .65rem .95rem; border-radius: var(--r-k); margin-bottom: .9rem; border-left: 4px solid var(--tamam); background: var(--tamam-zemin); color: var(--tamam); font-weight: 500; }
.mesaj.error { border-color: var(--hata); background: var(--hata-zemin); color: var(--hata); }
.mesaj.warning { border-color: var(--uyari); background: var(--uyari-zemin); color: var(--uyari); }
.mesaj.info { border-color: var(--bilgi); background: var(--bilgi-zemin); color: var(--bilgi); }

/* ---------- tablolar ---------- */
.tablo-kap { overflow-x: auto; background: var(--yuzey); border: 1px solid var(--cizgi); border-radius: var(--r); box-shadow: var(--golge); }
table { border-collapse: collapse; width: 100%; font-size: .92rem; }
th, td { padding: var(--hucre-d) var(--hucre-y); text-align: left; border-bottom: 1px solid var(--cizgi); vertical-align: top; }
tbody tr:last-child td { border-bottom: 0; }
th { font-weight: 650; color: var(--soluk); font-size: .79rem; background: var(--yuzey-2); white-space: nowrap; position: sticky; top: 0; }
tbody tr:hover { background: var(--vurgu-acik); }
td.sayi, th.sayi { text-align: right; font-variant-numeric: tabular-nums; white-space: nowrap; }
td a { font-weight: 600; text-decoration: none; }
td a:hover { text-decoration: underline; }
tfoot td { font-weight: 700; background: var(--yuzey-2); border-top: 2px solid var(--cizgi-koyu); border-bottom: 0; }
td.islem { white-space: nowrap; text-align: right; }
td.islem a, td.islem span { margin-left: .7rem; font-size: .85rem; font-weight: 500; }
td.islem span { color: var(--soluk); }
.bos { padding: 2.6rem 1rem; text-align: center; color: var(--soluk); }
.sayfalama { display: flex; gap: .9rem; align-items: center; margin-top: .9rem; font-size: .9rem; color: var(--soluk); }
.sayfalama a { padding: .2rem .7rem; border: 1px solid var(--cizgi-koyu); border-radius: var(--r-k); text-decoration: none; background: var(--yuzey); }
.liste-arac { display: flex; gap: .5rem; align-items: center; flex-wrap: wrap; margin: -.2rem 0 .7rem; }
.liste-arac .sayi-bilgi { color: var(--soluk); font-size: .86rem; margin-right: auto; }
.sutun-secici .acilir-panel { min-width: 260px; max-height: 60vh; overflow-y: auto; }
.sutun-secici label { display: flex; align-items: center; gap: .55rem; padding: .35rem .5rem; border-radius: 6px; font-size: .88rem; cursor: pointer; }
.sutun-secici label:hover { background: var(--vurgu-acik); }
[data-sutun-gizli] { display: none !important; }

/* ---------- formlar ---------- */
.filtre { display: flex; gap: .6rem; flex-wrap: wrap; align-items: end; margin-bottom: .9rem; }
.filtre.kart { padding: .9rem 1rem; }
.filtre label { font-size: .78rem; font-weight: 600; color: var(--soluk); display: grid; gap: .2rem; }
input, select, textarea { font: inherit; font-size: .93rem; min-height: 38px; padding: .4rem .65rem; border: 1px solid var(--cizgi-koyu); border-radius: var(--r-k); background: var(--yuzey); color: var(--murekkep); max-width: 100%; transition: border-color .12s, box-shadow .12s; }
input[type=checkbox], input[type=radio] { min-height: 0; width: 17px; height: 17px; accent-color: var(--vurgu); }
input:focus, select:focus, textarea:focus { border-color: var(--vurgu); outline: 0; box-shadow: 0 0 0 3px color-mix(in srgb, var(--vurgu) 22%, transparent); }
input:disabled, select:disabled { background: var(--yuzey-2); color: var(--soluk); }
.form-grup { border: 0; padding: 0 0 1.2rem; margin: 0 0 1.2rem; border-bottom: 1px solid var(--cizgi); }
.form-grup:last-of-type { border-bottom: 0; margin-bottom: .4rem; padding-bottom: .4rem; }
.form-grup legend { font-weight: 700; padding: 0; margin-bottom: .75rem; font-size: 1rem; color: var(--vurgu-metin, var(--vurgu)); }
.alanlar { display: grid; gap: .9rem 1.1rem; grid-template-columns: repeat(auto-fill, minmax(230px, 1fr)); }
.alan label { display: block; font-size: .84rem; font-weight: 600; margin-bottom: .25rem; }
.alan input:not([type=checkbox]):not([type=radio]), .alan select, .alan textarea { width: 100%; }
.alan.genis { grid-column: 1 / -1; }
.alan.onay label { display: flex; gap: .5rem; align-items: center; font-weight: 500; margin-top: 1.55rem; }
.alan .yardim { font-size: .78rem; color: var(--soluk); margin-top: .2rem; }
.alan .hata, .form-hata { color: var(--hata); font-size: .84rem; margin-top: .2rem; font-weight: 500; }
.alan:has(.hata) input, .alan:has(.hata) select { border-color: var(--hata); }
.alan .zorunlu { color: var(--bakir); }
.select-ara { margin-bottom: .3rem; font-size: .85rem; min-height: 30px; padding: .2rem .55rem; }
.form-alt { display: flex; gap: .5rem; flex-wrap: wrap; padding-top: .5rem; }

/* ---------- seçim kartları (görünüm ayarları) ---------- */
.secenekler { display: flex; flex-wrap: wrap; gap: .6rem; }
.secenek { position: relative; }
.secenek input { position: absolute; opacity: 0; pointer-events: none; }
.secenek > span { display: flex; flex-direction: column; align-items: center; gap: .4rem; min-width: 110px; padding: .75rem .9rem; border: 1.5px solid var(--cizgi); border-radius: var(--r); cursor: pointer; font-size: .86rem; font-weight: 600; background: var(--yuzey); text-align: center; }
.secenek input:checked + span { border-color: var(--vurgu); box-shadow: 0 0 0 3px color-mix(in srgb, var(--vurgu) 20%, transparent); }
.secenek input:focus-visible + span { outline: 2px solid var(--turkuaz); }
.renk-ornek { width: 30px; height: 30px; border-radius: 50%; border: 3px solid var(--yuzey); box-shadow: 0 0 0 1px var(--cizgi); }
.tema-ornek { width: 92px; height: 56px; border-radius: 8px; border: 1px solid var(--cizgi); display: grid; grid-template-columns: 26px 1fr; overflow: hidden; }
.tema-ornek i:first-child { background: #0a1a3c; }
.tema-ornek.acik i:last-child { background: #f2f5f2; } .tema-ornek.koyu i:last-child { background: #161e1c; }
.tema-ornek.sistem i:last-child { background: linear-gradient(135deg, #f2f5f2 50%, #161e1c 50%); }
.yazi-ornek { font-size: 1.5rem; font-weight: 700; line-height: 1; }

/* ---------- pano ---------- */
.gunun-ozeti { display: grid; grid-template-columns: minmax(280px, 1fr) 2fr; gap: var(--bosluk); margin-bottom: var(--bosluk); }
.tarti { background: var(--lacivert); color: #fff; border-radius: var(--r); padding: 1.5rem 1.6rem; position: relative; overflow: hidden; }
.tarti::after { content: ""; position: absolute; right: -40px; bottom: -50px; width: 190px; height: 190px; background: var(--turkuaz); opacity: .14; border-radius: 80% 0 80% 0; }
.tarti .buyuk { font-size: 2.9rem; font-weight: 800; letter-spacing: -0.035em; line-height: 1.05; font-variant-numeric: tabular-nums; color: var(--surgun); }
.tarti .buyuk small { display: block; margin-top: .35rem; font-size: 1rem; font-weight: 500; color: #a9b8d8; letter-spacing: 0; white-space: nowrap; }
.tarti p { margin: .45rem 0 0; color: #cdd6ea; position: relative; z-index: 1; }
.tarti a { color: #fff; font-weight: 600; }
.cubuklar { display: flex; align-items: flex-end; gap: 8px; height: 160px; }
.cubuk { flex: 1; display: flex; flex-direction: column; justify-content: flex-end; align-items: center; gap: 4px; height: 100%; font-size: .7rem; color: var(--soluk); }
.cubuk i { display: block; width: 100%; min-height: 3px; background: color-mix(in srgb, var(--vurgu) 70%, var(--surgun)); border-radius: 5px 5px 2px 2px; }
.cubuk:last-child i { background: var(--turkuaz); }
.olcu { display: flex; flex-wrap: wrap; gap: .4rem 0; margin: 0; }
.olcu div { flex: 1 1 170px; padding: .2rem 1.3rem .2rem 0; }
.olcu dt { font-size: .8rem; color: var(--soluk); font-weight: 500; }
.olcu dd { margin: .1rem 0 0; font-size: 1.3rem; font-weight: 720; font-variant-numeric: tabular-nums; letter-spacing: -0.01em; }
dl.bilgi { display: grid; grid-template-columns: max-content 1fr; gap: .35rem 1.1rem; margin: 0; font-size: .93rem; }
dl.bilgi dt { color: var(--soluk); }
dl.bilgi dd { margin: 0; font-weight: 500; }
.kur-seridi { display: flex; gap: 1.2rem; flex-wrap: wrap; font-size: .86rem; color: var(--soluk); }
.kur-seridi b { color: var(--murekkep); font-variant-numeric: tabular-nums; }

/* ---------- giriş ekranı ---------- */
.giris-sayfa { min-height: 100vh; display: grid; grid-template-columns: 1.25fr minmax(380px, 500px); }
.giris-sol { background: var(--lacivert); color: #fff; padding: 2.4rem clamp(1.8rem, 5vw, 4.5rem); display: flex; flex-direction: column; position: relative; overflow: hidden; }
.giris-sol::after { content: ""; position: absolute; right: -9vw; bottom: -14vh; width: 46vw; height: 46vw; max-width: 620px; max-height: 620px; background: var(--turkuaz); opacity: .09; border-radius: 80% 0 80% 0; }
.giris-sol::before { content: ""; position: absolute; right: 10vw; bottom: 18vh; width: 14vw; height: 14vw; max-width: 200px; max-height: 200px; background: var(--surgun); opacity: .14; border-radius: 80% 0 80% 0; }
.giris-firma { width: 160px; height: auto; position: relative; z-index: 1; }
.giris-orta { margin: auto 0; position: relative; z-index: 1; padding: 2rem 0; }
.giris-sol h1 { color: #fff; font-size: clamp(2.5rem, 5vw, 4.2rem); margin: 0 0 .5rem; line-height: 1.02; font-weight: 800; letter-spacing: -0.045em; }
.giris-alt-baslik { color: var(--surgun); font-size: clamp(1.05rem, 1.8vw, 1.4rem); font-weight: 650; margin: 0 0 1.4rem; padding-left: .9rem; border-left: 3px solid var(--turkuaz); }
.giris-sol p { color: #c4cfe6; font-size: 1.05rem; max-width: 46ch; }
.giris-bilgi { display: grid; grid-template-columns: repeat(auto-fit, minmax(170px, 1fr)); gap: .7rem; margin-top: 1.8rem; max-width: 680px; }
.giris-bilgi div { background: rgba(255, 255, 255, .06); border: 1px solid rgba(255, 255, 255, .1); border-radius: var(--r); padding: .75rem .9rem; }
.giris-bilgi dt { display: flex; align-items: center; gap: .4rem; font-size: .74rem; color: #9fb0d3; font-weight: 600; }
.giris-bilgi dd { margin: .25rem 0 0; font-weight: 700; color: #fff; font-size: .98rem; font-variant-numeric: tabular-nums; }
.giris-bilgi dd small { display: block; font-weight: 500; font-size: .76rem; color: #9fb0d3; }
.giris-imza { position: relative; z-index: 1; font-size: .82rem; color: #8798bf; display: flex; gap: 1.2rem; flex-wrap: wrap; }
.giris-sag { padding: 2.4rem; background: var(--yuzey); display: flex; flex-direction: column; justify-content: space-between; }
.giris-form { margin: auto 0; width: 100%; max-width: 370px; align-self: center; }
.giris-sag h2 { font-size: 1.65rem; margin-bottom: .3rem; letter-spacing: -0.03em; font-weight: 760; }
.giris-sag .alan { margin-bottom: 1rem; }
.giris-sag button[type=submit] { width: 100%; justify-content: center; min-height: 44px; margin-top: .3rem; }
.sifre-kutu { position: relative; }
.sifre-kutu input { padding-right: 2.8rem; }
.sifre-kutu button { position: absolute; right: 4px; top: 4px; min-height: 0; height: calc(100% - 8px); padding: 0 .6rem; border: 0; background: none; color: var(--soluk); }
.caps { display: none; color: var(--uyari); font-size: .8rem; margin-top: .25rem; }
.giris-yardim { display: block; margin-top: 1rem; text-align: center; font-size: .9rem; }
.giris-surum { text-align: center; font-size: .78rem; color: var(--soluk); line-height: 1.6; }

/* ---------- komut paleti ve pencere ---------- */
.perde { position: fixed; inset: 0; background: rgba(6, 14, 34, .5); backdrop-filter: blur(2px); z-index: 100; display: flex; align-items: flex-start; justify-content: center; padding: 10vh 1rem 1rem; }
.perde[hidden] { display: none; }
.palet { width: min(640px, 100%); background: var(--yuzey); border-radius: 14px; box-shadow: var(--golge-buyuk); overflow: hidden; border: 1px solid var(--cizgi); }
.palet-ara { display: flex; align-items: center; gap: .6rem; padding: .8rem 1rem; border-bottom: 1px solid var(--cizgi); }
.palet-ara input { border: 0; box-shadow: none !important; font-size: 1.05rem; flex: 1; padding: .3rem 0; min-height: 0; background: transparent; }
.palet-liste { max-height: 55vh; overflow-y: auto; padding: .4rem; margin: 0; list-style: none; }
.palet-liste li a { display: flex; align-items: center; gap: .7rem; padding: .55rem .7rem; border-radius: var(--r-k); color: var(--murekkep); text-decoration: none; }
.palet-liste li a small { margin-left: auto; color: var(--soluk); font-size: .78rem; }
.palet-liste li.secili a { background: var(--vurgu-acik); }
.palet-alt { padding: .5rem 1rem; border-top: 1px solid var(--cizgi); font-size: .75rem; color: var(--soluk); display: flex; gap: 1rem; }
.pencere { width: min(680px, 100%); background: var(--yuzey); border-radius: 16px; box-shadow: var(--golge-buyuk); overflow: hidden; border: 1px solid var(--cizgi); }
.pencere-bas { padding: 1.2rem 1.4rem .4rem; }
.pencere-bas h2 { font-size: 1.3rem; margin: 0; }
.pencere-govde { padding: .4rem 1.4rem 1rem; max-height: 60vh; overflow-y: auto; }
.pencere-alt { padding: .9rem 1.4rem; border-top: 1px solid var(--cizgi); display: flex; gap: .6rem; justify-content: flex-end; flex-wrap: wrap; align-items: center; }
.duyuru { border-left: 4px solid var(--vurgu); background: var(--yuzey-2); padding: .7rem .9rem; border-radius: 0 var(--r-k) var(--r-k) 0; margin-bottom: .6rem; }
.duyuru.uyari { border-color: var(--bakir); background: var(--uyari-zemin); }
.duyuru.kritik { border-color: var(--hata); background: var(--hata-zemin); }
.duyuru strong { display: block; }
.duyuru small { color: var(--soluk); }

/* ---------- tartım canlı hesap ---------- */
.hesap { display: flex; gap: 2.2rem; flex-wrap: wrap; background: var(--vurgu-acik); border: 1px solid color-mix(in srgb, var(--vurgu) 25%, var(--cizgi)); border-radius: var(--r); padding: 1rem 1.3rem; margin-bottom: 1.4rem; }
.hesap b { display: block; font-size: 1.7rem; font-weight: 750; font-variant-numeric: tabular-nums; letter-spacing: -0.02em; }
.hesap span { font-size: .8rem; color: var(--soluk); font-weight: 500; }

/* ---------- yazdırılan belgeler (her temada beyaz kağıt) ---------- */
.belge { background: #fff; color: #111; border: 1px solid var(--cizgi); border-radius: var(--r); padding: 1.7rem 1.9rem; max-width: 840px; box-shadow: var(--golge); }
.belge.fis { max-width: 390px; font-size: .92rem; }
.belge header { display: flex; justify-content: space-between; gap: 1rem; border-bottom: 2px solid #111; padding-bottom: .6rem; margin-bottom: .9rem; }
.belge h2 { font-size: 1.15rem; margin: 0; color: #111; }
.belge table th, .belge table td { padding: .3rem .5rem; background: #fff; color: #111; border-color: #ccc; position: static; }
.belge dl.bilgi dt { color: #555; }
.belge tbody tr:hover { background: none; }
.belge a { color: #111; }
.imzalar { display: flex; justify-content: space-between; margin-top: 2.5rem; font-size: .85rem; color: #555; }
.imzalar div { border-top: 1px solid #111; padding-top: .3rem; width: 40%; text-align: center; }
.yazdir-bas { display: none; }

/* ---------- baskı önizleme ---------- */
.onizleme-duzen { display: grid; grid-template-columns: 270px 1fr; gap: 1.2rem; align-items: start; }
.onizleme-ayar { position: sticky; top: 76px; }
.onizleme-ayar .alan { margin-bottom: .8rem; }
.kagit-alani { background: #8a948f; padding: 1.4rem; border-radius: var(--r); overflow: auto; }
.kagit { background: #fff; color: #111; margin: 0 auto; box-shadow: 0 6px 24px rgba(0, 0, 0, .3); padding: 14mm 12mm; width: 210mm; min-height: 297mm; font-family: var(--yazi); }
.kagit.yatay { width: 297mm; min-height: 210mm; }
.kagit table { font-size: var(--kagit-yazi, 9.5pt); }
.kagit th, .kagit td { color: #111; background: #fff; border-color: #bbb; padding: .25rem .4rem; position: static; }
.kagit th { border-bottom: 1.5px solid #111; }
.kagit tbody tr:hover { background: none; }
.kagit tbody tr:nth-child(even) td { background: var(--kagit-zebra, #fff); }
.kagit-bas { display: flex; justify-content: space-between; align-items: flex-end; border-bottom: 2px solid #111; padding-bottom: .5rem; margin-bottom: .8rem; }
.kagit-bas h2 { margin: 0; font-size: 14pt; color: #111; }
.kagit-bas small { color: #444; font-size: 8.5pt; }
.kagit-alt { margin-top: .8rem; font-size: 8pt; color: #555; display: flex; justify-content: space-between; }

/* ---------- raporlar, takvim, maliyet, tasnif ---------- */
.rapor-gruplari { display: grid; grid-template-columns: repeat(auto-fill, minmax(340px, 1fr)); gap: var(--bosluk); align-items: start; }
.rapor-grup { margin: 0; }
.rapor-grup ul { list-style: none; margin: 0; padding: 0; }
.rapor-grup li { padding: .55rem 0; border-top: 1px solid var(--cizgi); display: grid; gap: .1rem; }
.rapor-grup li:first-child { border-top: 0; padding-top: 0; }
.rapor-grup li a { font-weight: 650; text-decoration: none; }
.rapor-grup li a:hover { text-decoration: underline; }
.rapor-grup li span { font-size: .84rem; color: var(--soluk); }
.rapor-grup.one-cikan { background: var(--lacivert); color: #dfe6f5; border-color: var(--lacivert); }
.rapor-grup.one-cikan h2 { color: var(--surgun); }
.rapor-grup.one-cikan p { color: #c4cfe6; }
.maliyet-ust { display: grid; grid-template-columns: minmax(280px, 1fr) 2fr; gap: var(--bosluk); margin-bottom: 1.4rem; }
table.tasnif input { min-height: 34px; }
.takvim-duzen { display: grid; grid-template-columns: 1fr 290px; gap: var(--bosluk); align-items: start; }
.takvim { display: grid; grid-template-columns: repeat(7, minmax(0, 1fr)); background: var(--cizgi); gap: 1px; border: 1px solid var(--cizgi); border-radius: var(--r); overflow: hidden; box-shadow: var(--golge); }
.takvim-gunadi { background: var(--yuzey-2); padding: .45rem .6rem; font-size: .78rem; font-weight: 650; color: var(--soluk); }
.takvim-gun { background: var(--yuzey); min-height: 112px; padding: .35rem .4rem .45rem; display: flex; flex-direction: column; gap: 3px; min-width: 0; }
.takvim-gun.disi { background: var(--yuzey-2); }
.takvim-gun.disi .takvim-no { color: var(--soluk); opacity: .6; }
.takvim-no { align-self: flex-start; font-size: .82rem; font-weight: 650; color: var(--murekkep); text-decoration: none; width: 26px; height: 26px; display: grid; place-items: center; border-radius: 50%; }
.takvim-no:hover { background: var(--vurgu-acik); }
.takvim-gun.bugun .takvim-no { background: var(--vurgu); color: var(--vurgu-yazi); }
.olay { display: block; font-size: .74rem; line-height: 1.3; padding: .12rem .4rem; border-radius: 5px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; text-decoration: none; color: var(--murekkep); background: var(--vurgu-acik); border-left: 3px solid var(--vurgu); }
.olay.tamam { opacity: .55; text-decoration: line-through; }
.olay-odeme, .nokta.olay-odeme { border-color: var(--bakir); background: var(--uyari-zemin); }
.olay-tahsilat, .nokta.olay-tahsilat { border-color: #19a3a3; background: var(--bilgi-zemin); }
.olay-surgun, .nokta.olay-surgun { border-color: #a8d84e; background: color-mix(in srgb, #a8d84e 22%, var(--yuzey)); }
.olay-resmi, .nokta.olay-resmi { border-color: var(--hata); background: var(--hata-zemin); }
.olay-bakim, .nokta.olay-bakim { border-color: #6b5bd2; background: color-mix(in srgb, #6b5bd2 14%, var(--yuzey)); }
.olay-fazla { font-size: .72rem; color: var(--soluk); padding-left: .3rem; }
.yaklasan h2 { margin-bottom: .9rem; }
.yaklasan-oge { display: flex; gap: .6rem; padding: .5rem 0; border-top: 1px solid var(--cizgi); font-size: .88rem; }
.yaklasan-oge:first-of-type { border-top: 0; padding-top: 0; }
.yaklasan-oge .tarih { font-size: .76rem; color: var(--soluk); }
.nokta { width: 10px; height: 10px; border-radius: 50%; flex: none; margin-top: .3rem; background: var(--vurgu); border: 3px solid var(--vurgu); }
.hakkinda-alt { color: var(--vurgu); font-weight: 650; margin: .2rem 0 1rem; }
.giris-logo { background: #fff; border-radius: var(--r); padding: .6rem .9rem; margin-bottom: 2rem; align-self: flex-start; }
.giris-logo img { display: block; width: 230px; max-width: 100%; height: auto; }
.merkez-izgara { display: grid; grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)); gap: var(--bosluk); }
.merkez-kart { display: flex; gap: .9rem; align-items: flex-start; padding: 1rem 1.1rem; background: var(--yuzey); border: 1px solid var(--cizgi); border-radius: var(--r); text-decoration: none; color: var(--murekkep); box-shadow: var(--golge); transition: border-color .12s, transform .12s; }
.merkez-kart:hover { border-color: var(--vurgu); transform: translateY(-1px); }
.merkez-kart .ikon-kutu, .ks-serit .ikon-kutu { width: 42px; height: 42px; border-radius: 10px; background: var(--vurgu-acik); color: var(--vurgu); display: grid; place-items: center; flex: none; }
.merkez-kart strong { display: block; font-size: .98rem; }
.merkez-kart small { color: var(--soluk); font-size: .82rem; line-height: 1.4; display: block; margin-top: .15rem; }
.merkez-bolum { margin: 1.6rem 0 .7rem; font-size: .8rem; font-weight: 700; letter-spacing: .05em; color: var(--soluk); }
.durum-nokta { width: 9px; height: 9px; border-radius: 50%; background: #2bb36a; display: inline-block; box-shadow: 0 0 0 3px color-mix(in srgb, #2bb36a 25%, transparent); }
.durum-nokta.pasif { background: #a5adb8; box-shadow: none; }

/* ---------- dar ekran ---------- */
@media (max-width: 1100px) { .takvim-duzen, .onizleme-duzen { grid-template-columns: 1fr; } .onizleme-ayar { position: static; } }
@media (max-width: 960px) {
  .kabuk { grid-template-columns: 1fr; }
  .yan { position: fixed; left: 0; top: 0; width: 280px; transform: translateX(-100%); transition: transform .2s; }
  body.menu-acik .yan { transform: none; box-shadow: 0 0 0 100vmax rgba(0, 0, 0, .45); }
  .menu-dugme { display: inline-flex; }
  .ust { padding: .45rem .9rem; flex-wrap: wrap; gap: .45rem .55rem; }
  .ust .firma-adi { flex: 1 1 0; min-width: 0; }
  .kullanici-ad, .ust .cip-gizle { display: none; }
  .gunun-ozeti, .giris-sayfa, .maliyet-ust { grid-template-columns: 1fr; }
  .giris-sol { padding: 1.8rem 1.4rem; } .giris-sag { padding: 1.8rem 1.4rem; }
  .giris-sol::before { display: none; }
  .icerik { padding: .9rem .9rem 3rem; max-width: 100vw; overflow-x: hidden; }
  h1 { font-size: 1.3rem; }
  .olcu div { flex-basis: 140px; } .olcu dd { font-size: 1.12rem; white-space: nowrap; }
  .sayfa-bas .islemler { margin-left: 0; }
  .bildirim-paneli { width: min(360px, 92vw); position: fixed; right: 4vw; top: 64px; }
}
@media (max-width: 700px) { .takvim-gun { min-height: 64px; } .olay { font-size: 0; padding: 0; height: 6px; } .olay b { display: none; } }
@media (prefers-reduced-motion: reduce) { * { transition: none !important; } }

/* İşlem sürüyor: düğmede üç renkli zıplayan top (yeşil sürgün, turuncu, turkuaz) */
.isleniyor { cursor: progress; pointer-events: none; }
.isleniyor > svg.ikon { display: none; }
.toplar { display: inline-flex; align-items: flex-end; gap: 4px; height: 1em; margin-right: .5rem; vertical-align: -.1em; }
.toplar i { width: 7px; height: 7px; border-radius: 50%; display: block; animation: top-zipla .9s cubic-bezier(.45, 0, .55, 1) infinite; }
.toplar i:nth-child(1) { background: var(--surgun); }
.toplar i:nth-child(2) { background: #f5a524; animation-delay: .15s; }
.toplar i:nth-child(3) { background: var(--turkuaz); animation-delay: .3s; }
@keyframes top-zipla { 0%, 60%, 100% { transform: translateY(0); } 30% { transform: translateY(-7px); } }
@media (prefers-reduced-motion: reduce) {
  .toplar i { animation: top-yanip .9s ease-in-out infinite; }
  @keyframes top-yanip { 0%, 100% { opacity: .35; } 50% { opacity: 1; } }
}
@media print {
  html { font-size: 11pt; }
  body { background: #fff; color: #000; }
  .yan, .ust, .yazdirma, .mesaj, .filtre, .sayfalama, td.islem, th.islem, .konum, .liste-arac, .onizleme-ayar, .perde { display: none !important; }
  .kabuk { display: block; }
  .icerik { padding: 0; max-width: none; }
  .tablo-kap, .kart, .belge { border: 0; border-radius: 0; padding: 0; box-shadow: none; background: #fff; }
  .yazdir-bas { display: block; margin-bottom: .6rem; font-size: .9rem; }
  th { background: none; border-bottom: 1.5px solid #000; color: #000; position: static; }
  td, tfoot td { color: #000; background: none; }
  a { color: inherit; text-decoration: none; }
  .onizleme-duzen { display: block; }
  .kagit-alani { background: none; padding: 0; }
  .kagit { box-shadow: none; padding: 0; width: auto; min-height: 0; }
  .kagit-sayfa-dikey { size: A4 portrait; }
}

/* ---- ekstre / defter ---- */
.ozet-kartlar { display: grid; grid-template-columns: repeat(auto-fit, minmax(170px, 1fr)); gap: .7rem; margin-bottom: .9rem; }
.ozet-kartlar .kart { margin: 0; padding: .8rem 1rem; display: grid; gap: .15rem; }
.ozet-kartlar .kart span { font-size: .78rem; color: var(--soluk); font-weight: 600; }
.ozet-kartlar .kart strong { font-size: 1.2rem; font-variant-numeric: tabular-nums; }
.ust-bilgi { display: flex; flex-wrap: wrap; gap: .4rem 1.6rem; margin: 0 0 .9rem; font-size: .88rem; }
.ust-bilgi dt { color: var(--soluk); font-size: .75rem; font-weight: 600; }
.ust-bilgi dd { margin: 0; font-weight: 600; }
.filtre label.kutu { display: flex; align-items: center; gap: .35rem; padding-bottom: .55rem; }
.kur-tablo td.degisim-arti { color: var(--tehlike, #b42318); }
.kur-tablo td.degisim-eksi { color: var(--basari, #1a7f37); }
.cevirici { display: flex; gap: .6rem; flex-wrap: wrap; align-items: end; }
.cevirici output { font-size: 1.3rem; font-weight: 700; font-variant-numeric: tabular-nums; }
.fis-belge { margin-bottom: 1.2rem; }
@media print { .fis-belge { page-break-inside: avoid; border-bottom: 1px dashed #999; padding-bottom: 1rem; } }
a.kur-seridi { text-decoration: none; margin: -.4rem 0 1rem; padding: .45rem .8rem; background: var(--yuzey); border: 1px solid var(--cizgi); border-radius: var(--r); align-items: center; }
a.kur-seridi span { display: inline-flex; gap: .3rem; align-items: center; }
.zaman-cizelgesi { list-style: none; margin: 0; padding: 0 0 0 1rem; border-left: 2px solid var(--cizgi); display: grid; gap: .45rem; font-size: .9rem; }
.zaman-cizelgesi li { position: relative; }
.zaman-cizelgesi li::before { content: ""; position: absolute; left: -1.38rem; top: .45em; width: .6rem; height: .6rem; border-radius: 50%; background: var(--cizgi); }
.zaman-cizelgesi li.secili::before { background: var(--vurgu); }
.zaman-cizelgesi li.secili { font-weight: 700; }
a.kart { text-decoration: none; color: inherit; transition: border-color .15s, transform .15s; }
a.kart:hover { border-color: var(--vurgu); }
.ozet-kartlar .kart small { color: var(--soluk); font-size: .78rem; }
.kart-baslik { display: flex; align-items: center; gap: .5rem; font-size: 1.05rem; margin: 0 0 .8rem; }
.cevirici label { display: grid; gap: .2rem; font-size: .78rem; font-weight: 600; color: var(--soluk); }

/* ---- şifre ve QR sayfaları ---- */
body.yalin { background: var(--zemin); }
.yalin-kap { max-width: 460px; margin: 0 auto; padding: 6vh 16px 2rem; }
.yalin-marka { display: flex; align-items: center; gap: .6rem; font-weight: 750; font-size: 1.15rem; margin-bottom: 1rem; }
.yalin-marka img { width: 34px; height: 34px; }
.yalin-kart { padding: 1.6rem; }
.yalin-baslik { display: flex; gap: .55rem; align-items: center; font-size: 1.35rem; margin: 0 0 .6rem; }
.yalin-alt { text-align: center; color: var(--soluk); font-size: .8rem; margin-top: 1rem; }
button.tam, .dugme.tam { width: 100%; justify-content: center; min-height: 44px; }
.yontem-sec { border: 0; padding: 0; margin: 0 0 1rem; display: grid; gap: .5rem; }
.yontem-sec legend { font-size: .85rem; font-weight: 650; margin-bottom: .45rem; }
.yontem { display: flex; gap: .6rem; align-items: center; border: 1px solid var(--cizgi); border-radius: var(--r); padding: .7rem .8rem; cursor: pointer; }
.yontem:has(input:checked) { border-color: var(--vurgu); background: var(--vurgu-acik); }
.yontem span { display: flex; gap: .5rem; align-items: center; }
.yardim-kutu { margin-top: 1.2rem; font-size: .9rem; }
.yardim-kutu summary { cursor: pointer; font-weight: 600; color: var(--vurgu); }
.qr-sayilar { display: grid; grid-template-columns: repeat(3, 1fr); gap: .6rem; }
.qr-sayilar button { font-size: 1.8rem; font-weight: 800; min-height: 72px; justify-content: center; }
.gecici-sifre { font: 700 1.6rem/1.3 ui-monospace, Menlo, Consolas, monospace; letter-spacing: .04em; background: var(--vurgu-acik); color: var(--vurgu-koyu); border-radius: var(--r); padding: .8rem 1rem; margin: .6rem 0 1rem; text-align: center; user-select: all; }
/* giriş: şifre / QR sekmesi */
.giris-sekme { display: grid; grid-template-columns: 1fr 1fr; background: var(--zemin); border-radius: 999px; padding: 4px; margin-bottom: 1.2rem; }
.giris-sekme button { border: 0; background: transparent; border-radius: 999px; justify-content: center; min-height: 38px; font-weight: 650; color: var(--soluk); }
.giris-sekme button[aria-selected=true] { background: var(--yuzey); color: var(--murekkep); box-shadow: var(--golge); }
.qr-alan { text-align: center; }
.qr-cerceve { width: 230px; height: 230px; margin: .2rem auto .8rem; border-radius: 14px; background: #fff; display: grid; place-items: center; border: 1px solid var(--cizgi); position: relative; }
.qr-cerceve svg { width: 100%; height: 100%; }
.qr-cerceve.soluk svg { opacity: .12; }
.qr-cerceve .qr-ust { position: absolute; inset: 0; display: grid; place-items: center; }
.qr-sayi { font-size: 2.2rem; font-weight: 850; letter-spacing: .05em; color: var(--vurgu); line-height: 1; }
.qr-adim { text-align: left; font-size: .88rem; color: var(--soluk); padding-left: 1.1rem; margin: .8rem 0 0; }
.qr-sure { height: 4px; background: var(--cizgi); border-radius: 4px; overflow: hidden; margin: 0 auto .6rem; width: 230px; }
.qr-sure i { display: block; height: 100%; background: var(--vurgu); transition: width 1s linear; }
.hatirla { display: flex; gap: .45rem; align-items: center; font-size: .88rem; margin: -.3rem 0 .9rem; }
.kurtarma-kodlari { display: grid; grid-template-columns: repeat(auto-fill, minmax(120px, 1fr)); gap: .5rem; }
.kurtarma-kodlari code { font: 700 1.05rem ui-monospace, Menlo, Consolas, monospace; background: var(--zemin); border: 1px dashed var(--cizgi); border-radius: 8px; padding: .5rem; text-align: center; letter-spacing: .05em; }
.iki-adim-kur { display: grid; grid-template-columns: 1fr auto; gap: 1.6rem; align-items: start; max-width: 860px; }
.adimlar { line-height: 1.8; padding-left: 1.2rem; }
.gizli-anahtar { font: 700 .95rem ui-monospace, Menlo, Consolas, monospace; word-break: break-all; }
@media (max-width: 700px) { .iki-adim-kur { grid-template-columns: 1fr; } .iki-adim-kur .qr-cerceve { order: -1; } }
.yazdir-yalniz { display: none; }
@media print { .yazdir-yalniz { display: grid; } }

/* ---- saha tartımı (telefon) ---- */
body.saha { background: var(--zemin); }
.saha-ust { position: sticky; top: 0; z-index: 5; display: flex; justify-content: space-between; align-items: center; gap: .6rem;
  padding: calc(.6rem + env(safe-area-inset-top)) 1rem .6rem; background: var(--vurgu); color: #fff; }
.saha-ust small { display: block; opacity: .8; font-size: .78rem; }
.saha-ag { font-size: .78rem; font-weight: 700; border-radius: 999px; padding: .25rem .7rem; background: rgba(255,255,255,.18); white-space: nowrap; }
.saha-ag[data-durum=kapali] { background: #b42318; }
.saha-kap { max-width: 560px; margin: 0 auto; padding: .9rem .8rem 2rem; }
.saha-form { display: grid; gap: .75rem; }
.saha-form label { display: grid; gap: .25rem; font-size: .82rem; font-weight: 650; color: var(--soluk); }
.saha-form input, .saha-form select { font-size: 1.05rem; min-height: 48px; }
.saha-buyuk { font-size: 1.6rem !important; font-weight: 800; }
.saha-iki { display: grid; grid-template-columns: 1fr 1fr; gap: .6rem; }
.saha-oneri { display: grid; gap: .35rem; }
.saha-oneri:empty { display: none; }
.saha-oneri button { justify-content: flex-start; min-height: 46px; text-align: left; }
.saha-oneri small { color: var(--soluk); margin-left: .3rem; }
.saha-secili { display: flex; gap: .5rem; align-items: center; padding: .75rem .9rem; border-radius: var(--r); background: var(--vurgu-acik); font-size: 1.05rem; }
.saha-secili .baglanti { margin-left: auto; }
.saha-ozet { display: grid; grid-template-columns: 1fr 1fr; gap: .6rem; }
.saha-ozet div { background: var(--zemin); border-radius: var(--r); padding: .6rem .8rem; display: grid; }
.saha-ozet span { font-size: .78rem; color: var(--soluk); }
.saha-ozet b { font-size: 1.35rem; font-variant-numeric: tabular-nums; }
.saha-kaydet { min-height: 56px !important; font-size: 1.15rem; }
.saha-bekleyen { display: flex; justify-content: space-between; align-items: center; gap: .6rem; margin-bottom: .8rem;
  padding: .7rem .9rem; border-radius: var(--r); background: #fff4e5; color: #7a4a00; border: 1px solid #f3c27a; }
.saha-liste { list-style: none; margin: 0; padding: 0; }
.saha-liste li { display: grid; grid-template-columns: 1fr auto; gap: .2rem .6rem; padding: .55rem 0; border-bottom: 1px solid var(--cizgi); }
.saha-liste li > div:last-child { grid-column: 1 / -1; font-size: .82rem; }
.saha-liste small { display: block; color: var(--soluk); font-size: .78rem; }
.saha-liste .sayi { font-weight: 700; }
.saha-toplam { font-weight: 500; color: var(--soluk); font-size: .9rem; }
.saha-alt { text-align: center; font-size: .9rem; margin-top: 1rem; }
.saha-bildirim { position: fixed; left: 50%; bottom: calc(1rem + env(safe-area-inset-bottom)); transform: translateX(-50%); z-index: 20;
  background: #10241a; color: #fff; padding: .7rem 1rem; border-radius: 999px; font-size: .92rem; box-shadow: var(--golge); max-width: 92vw; }
.saha-bildirim.hata { background: #b42318; }
[hidden] { display: none !important; }
.saha-form > *, .saha-iki > *, .saha-ozet > * { min-width: 0; }
.saha-form input, .saha-form select { width: 100%; box-sizing: border-box; }

/* ---- müstahsil portalı ---- */
body.portal { background: var(--zemin); padding-bottom: calc(70px + env(safe-area-inset-bottom)); }
.portal-ust { display: flex; justify-content: space-between; align-items: center; gap: .6rem; padding: calc(.7rem + env(safe-area-inset-top)) 1rem .7rem; background: var(--vurgu); color: #fff; }
.portal-ust small { display: block; opacity: .85; font-size: .8rem; }
.portal-cikis { color: #fff; font-size: .9rem; }
.portal-kap { max-width: 620px; margin: 0 auto; padding: 1rem .85rem; display: grid; gap: .9rem; }
.portal-kap .kart { margin: 0; }
.portal-giris { margin-top: 4vh; }
.portal-bas { display: flex; justify-content: space-between; align-items: center; gap: .6rem; }
.portal-bas h1 { margin: 0; font-size: 1.4rem; }
.portal-bakiye { background: var(--vurgu); color: #fff; border-radius: calc(var(--r) * 1.4); padding: 1.2rem 1.3rem; display: grid; gap: .15rem; }
.portal-bakiye.eksi { background: #8a3a12; }
.portal-bakiye span, .portal-bakiye small { opacity: .85; }
.portal-bakiye strong { font-size: 2.1rem; font-variant-numeric: tabular-nums; letter-spacing: -.02em; }
.portal-kartlar { display: grid; grid-template-columns: 1fr 1fr; gap: .6rem; }
.portal-kartlar .kart { padding: .8rem .9rem; display: grid; gap: .1rem; }
.portal-kartlar span, .portal-kartlar small { color: var(--soluk); font-size: .82rem; }
.portal-kartlar strong { font-size: 1.2rem; font-variant-numeric: tabular-nums; }
.portal-liste { list-style: none; margin: 0 0 .6rem; padding: 0; }
.portal-liste.kart { padding: .3rem 1rem; }
.portal-liste li { display: flex; justify-content: space-between; gap: .8rem; padding: .7rem 0; border-bottom: 1px solid var(--cizgi); }
.portal-liste li:last-child { border-bottom: 0; }
.portal-liste small { display: block; color: var(--soluk); font-size: .82rem; margin-top: .1rem; }
.portal-liste .sayi { text-align: right; font-weight: 700; white-space: nowrap; font-variant-numeric: tabular-nums; }
.portal-liste .bos { color: var(--soluk); justify-content: center; }
.portal-cevap { color: var(--vurgu) !important; font-weight: 600; }
.portal-alt { text-align: center; color: var(--soluk); font-size: .82rem; }
.portal-menu { position: fixed; left: 0; right: 0; bottom: 0; z-index: 10; display: grid; grid-template-columns: repeat(5, 1fr);
  background: var(--yuzey); border-top: 1px solid var(--cizgi); padding-bottom: env(safe-area-inset-bottom); }
.portal-menu a { display: grid; justify-items: center; gap: .15rem; padding: .5rem 0 .55rem; font-size: .72rem; color: var(--soluk); text-decoration: none; }
.portal-menu a[aria-current] { color: var(--vurgu); font-weight: 700; }
.pin-fisi { display: grid; grid-template-columns: 1fr auto; gap: 1.5rem; align-items: center; max-width: 820px; }
@media print { body.portal { padding: 0; } .portal-menu, .portal-ust { display: none; } }
.portal .alan { margin-bottom: 1rem; display: grid; gap: .3rem; }
.portal .alan label { font-weight: 700; }
.onay-tutar { font-size: 2rem; font-weight: 800; color: var(--vurgu); margin-bottom: .6rem; font-variant-numeric: tabular-nums; }
.onay-karar { display: grid; gap: .7rem; margin-top: 1rem; border-top: 1px solid var(--cizgi); padding-top: 1rem; }
.onay-karar label { display: grid; gap: .25rem; font-size: .82rem; font-weight: 650; color: var(--soluk); }
.mesaj.uyari { border-color: var(--uyari); background: var(--uyari-zemin); color: var(--uyari); }
.mesaj.hata { border-color: var(--hata); background: var(--hata-zemin); color: var(--hata); }

/* Tartım fotoğrafları */
.foto-panel { border: 1px solid var(--cizgi); border-radius: var(--r); padding: .9rem 1.1rem; margin-bottom: 1.4rem; }
.foto-bas { display: flex; align-items: center; justify-content: space-between; gap: .8rem; flex-wrap: wrap; }
.foto-bas h2 { font-size: 1rem; margin: 0; display: flex; align-items: center; gap: .4rem; }
.foto-dugmeler { display: flex; gap: .5rem; flex-wrap: wrap; align-items: center; }
.foto-dugmeler select { width: auto; }
.foto-liste { display: grid; grid-template-columns: repeat(auto-fill, minmax(170px, 1fr)); gap: .7rem; margin-top: .8rem; }
.foto-liste:empty { display: none; }
.foto { position: relative; display: block; border: 1px solid var(--cizgi); border-radius: calc(var(--r) * .7); overflow: hidden; background: var(--yuzey-2, #eef1ee); color: inherit; text-decoration: none; }
.foto img { display: block; width: 100%; aspect-ratio: 4 / 3; object-fit: cover; }
.foto span { display: block; font-size: .75rem; padding: .3rem .5rem; color: var(--soluk); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.foto.yeni { outline: 2px dashed var(--vurgu); outline-offset: -2px; }
.foto-sil { position: absolute; top: .3rem; right: .3rem; width: 1.8rem; height: 1.8rem; padding: 0; border-radius: 50%; line-height: 1; font-size: 1.1rem; }
.plaka-sec { margin-top: .4rem; display: flex; gap: .4rem; flex-wrap: wrap; align-items: center; font-size: .82rem; color: var(--soluk); }
.fis-fotolar { margin-top: 1.4rem; }
.fis-fotolar h2 { font-size: 1rem; }
.saha-foto { display: flex; align-items: center; gap: .7rem; flex-wrap: wrap; margin: .3rem 0 .6rem; }
.saha-foto img { width: 84px; height: 63px; object-fit: cover; border-radius: 8px; border: 1px solid var(--cizgi); }
.portal-fotolar { display: flex; gap: .4rem; margin-top: .45rem; flex-wrap: wrap; }
.portal-fotolar img { width: 76px; height: 57px; object-fit: cover; border-radius: 8px; border: 1px solid var(--cizgi); display: block; }
/* Gübre / malzeme dağıtımı */
tr.tamam td { background: color-mix(in srgb, var(--vurgu) 6%, transparent); }
.dagitim-alt { display: flex; gap: .7rem; align-items: center; flex-wrap: wrap; padding: .8rem 0 0; }
.dagitim-alt label { display: flex; gap: .4rem; align-items: center; font-size: .85rem; }
.dagitim-alt input[type=date] { width: auto; }
.imza-listesi td.imza-hucre { height: 2.4rem; }
@media print { .imza-listesi table { font-size: 10pt; } .imza-listesi tr { break-inside: avoid; } }
/* Personel: yoklama ve puantaj cetveli */
.yoklama-ust { display: flex; gap: .5rem; align-items: center; flex-wrap: wrap; margin-bottom: .6rem; }
.segment { display: inline-flex; border: 1px solid var(--cizgi-koyu); border-radius: 8px; overflow: hidden; }
.segment label { margin: 0; }
.segment input { position: absolute; opacity: 0; pointer-events: none; }
.segment span { display: block; min-width: 2.1rem; padding: .35rem .5rem; text-align: center; font-weight: 650; font-size: .85rem; cursor: pointer; border-left: 1px solid var(--cizgi); color: var(--soluk); user-select: none; }
.segment label:first-child span { border-left: 0; }
.segment input:focus-visible + span { outline: 2px solid var(--vurgu); outline-offset: -2px; }
.segment input:checked + span[data-k="C"] { background: var(--tamam-zemin); color: var(--tamam); }
.segment input:checked + span[data-k="Y"], .segment input:checked + span[data-k="I"] { background: var(--vurgu-acik); color: var(--vurgu); }
.segment input:checked + span[data-k="R"], .segment input:checked + span[data-k="T"] { background: var(--yuzey-2); color: var(--metin, inherit); box-shadow: inset 0 0 0 2px var(--cizgi-koyu); }
.segment input:checked + span[data-k="G"] { background: var(--hata-zemin); color: var(--hata); }
table.yoklama tr.girilmedi td:first-child { box-shadow: inset 3px 0 0 var(--uyari); }
.cetvel-kap { overflow-x: auto; }
table.cetvel { font-size: .8rem; }
table.cetvel th.gun, table.cetvel td.h { width: 1.6rem; min-width: 1.6rem; padding: .3rem 0; text-align: center; }
table.cetvel th.gun small { display: block; font-weight: 400; color: var(--soluk); font-size: .66rem; }
table.cetvel th.pazar { color: var(--hata); }
table.cetvel td.ad, table.cetvel th.ad { position: sticky; left: 0; background: var(--yuzey); z-index: 1; min-width: 9rem; white-space: nowrap; }
table.cetvel td.ad small { display: block; color: var(--soluk); font-size: .7rem; }
table.cetvel td.h { cursor: pointer; font-weight: 700; border-left: 1px solid var(--cizgi); position: relative; }
table.cetvel td.h i { position: absolute; top: 0; right: 2px; font-style: normal; font-size: .62rem; color: var(--vurgu); }
table.cetvel td.kC { background: var(--tamam-zemin); color: var(--tamam); }
table.cetvel td.kY, table.cetvel td.kI { background: var(--vurgu-acik); color: var(--vurgu); }
table.cetvel td.kG { background: var(--hata-zemin); color: var(--hata); }
table.cetvel td.kR, table.cetvel td.kT { background: var(--yuzey-2); }
table.cetvel td.kapali { cursor: default; background: repeating-linear-gradient(45deg, transparent 0 4px, var(--yuzey-2) 4px 8px); color: var(--soluk); }
table.cetvel td.degisti { box-shadow: inset 0 0 0 2px var(--uyari); }
table.cetvel td.h:focus-visible { outline: 2px solid var(--vurgu); outline-offset: -2px; }
@media print { table.cetvel { font-size: 7pt; } table.cetvel td.ad { position: static; } }
/* Sağ tık menüsü */
.sagtik { position: fixed; z-index: 1000; min-width: 230px; max-width: 320px; padding: .35rem; background: var(--yuzey); border: 1px solid var(--cizgi-koyu);
  border-radius: 10px; box-shadow: 0 12px 32px rgba(0, 0, 0, .18); font-size: .88rem; }
.sagtik button { display: flex; width: 100%; align-items: center; gap: .55rem; padding: .42rem .6rem; border: 0; border-radius: 6px; background: none;
  color: inherit; font: inherit; text-align: left; cursor: pointer; min-height: 0; box-shadow: none; }
.sagtik button span { flex: 1; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.sagtik button:hover:not(:disabled), .sagtik button:focus-visible { background: var(--vurgu-acik); color: var(--vurgu); outline: none; }
.sagtik button:disabled { opacity: .4; cursor: default; }
.sagtik button.tehlike { color: var(--hata); }
.sagtik kbd { font: inherit; font-size: .72rem; color: var(--soluk); }
.sagtik .ikon.k { width: 1rem; height: 1rem; flex: none; }
.sagtik-ayrac { height: 1px; background: var(--cizgi); margin: .3rem .2rem; }
.sagtik-ipucu { font-size: .7rem; color: var(--soluk); padding: .3rem .6rem .15rem; border-top: 1px solid var(--cizgi); margin-top: .3rem; }
.sagtik-bildirim { position: fixed; z-index: 1001; left: 50%; bottom: 1.5rem; transform: translateX(-50%); background: #10241a; color: #fff;
  padding: .55rem 1rem; border-radius: 8px; font-size: .86rem; box-shadow: 0 6px 20px rgba(0,0,0,.25); }
@media print { .sagtik, .sagtik-bildirim { display: none !important; } }
.bolum-baslik { font-size: 1.05rem; margin: 1.4rem 0 .6rem; display: flex; gap: .6rem; align-items: baseline; flex-wrap: wrap; }
.bolum-baslik small { font-size: .78rem; font-weight: 500; color: var(--soluk); }
.tg-bagla .adimlar { margin: 0; padding-left: 1.3rem; display: grid; gap: .7rem; }
.tg-bagla .adimlar .dugme { margin-left: .4rem; }
.tg-bagla code { font-size: 1rem; background: var(--yuzey-2); padding: .1rem .4rem; border-radius: 4px; }
.grup-dugme { display: flex; gap: .5rem; flex-wrap: wrap; margin-top: .7rem; }

/* Para alanı: sağa yaslı, binlik ayraçlı, sağda ₺ (ya da $, €) */
.para-kutu { position: relative; display: block; }
.para-kutu input.para { width: 100%; text-align: right; padding-right: 2.1rem; font-variant-numeric: tabular-nums; }
.para-kutu.simgesiz input.para { padding-right: .75rem; }
.para-simge { position: absolute; right: .75rem; top: 50%; transform: translateY(-50%); color: var(--soluk); font-weight: 600; pointer-events: none; font-size: .95em; }

/* İsteğe bağlı form grupları: yeni kayıtta kapalı, tıklayınca açılır */
details.form-grup.acilir > summary { cursor: pointer; list-style: none; display: flex; align-items: baseline; gap: .6rem; margin-bottom: 0; padding: .15rem 0; }
details.form-grup.acilir > summary::-webkit-details-marker { display: none; }
details.form-grup.acilir > summary::before { content: ""; width: .5rem; height: .5rem; border-right: 2px solid var(--soluk); border-bottom: 2px solid var(--soluk); transform: rotate(-45deg); transition: transform .15s; flex: none; align-self: center; }
details.form-grup.acilir[open] > summary::before { transform: rotate(45deg); }
details.form-grup.acilir[open] > summary { margin-bottom: .75rem; }
.acilir-baslik { font-weight: 700; color: var(--vurgu-metin, var(--vurgu)); }
.istege-bagli { font-size: .82rem; color: var(--soluk); }
details.form-grup.acilir:not([open]) { padding-bottom: .8rem; margin-bottom: .8rem; }

/* Personel kartı */
.personel-ust { display: flex; gap: 1.2rem; align-items: center; flex-wrap: wrap; }
.personel-foto { width: 96px; height: 96px; border-radius: 50%; overflow: hidden; flex: none; background: var(--vurgu-acik); display: grid; place-items: center; }
.personel-foto img { width: 100%; height: 100%; object-fit: cover; }
.personel-foto span { font-size: 2rem; font-weight: 700; color: var(--vurgu); letter-spacing: .02em; }
.personel-kim h1 { margin: 0 0 .15rem; font-size: 1.45rem; }
.personel-gorev { color: var(--soluk); margin-bottom: .45rem; }
.personel-rozet { display: flex; gap: .35rem; flex-wrap: wrap; }
.personel-ust .islemler { margin-left: auto; display: flex; gap: .5rem; flex-wrap: wrap; }
.personel-izgara { margin-top: .2rem; }
.bos-bilgi { color: var(--soluk); margin: 0; font-size: .92rem; }
.belge-tablo { margin-top: .7rem; }
.belge-tablo td { padding: .3rem .4rem; }
.mini-takvim { display: grid; grid-template-columns: repeat(7, 1fr); gap: 4px; font-size: .8rem; }
.mini-takvim b { text-align: center; color: var(--soluk); font-weight: 600; font-size: .72rem; padding-bottom: 2px; }
.mini-takvim .g { border-radius: 6px; text-align: center; padding: .3rem 0 .2rem; background: var(--yuzey-2); line-height: 1.1; font-variant-numeric: tabular-nums; }
.mini-takvim .g small { display: block; font-weight: 700; font-size: .68rem; }
.mini-takvim .g.hs { color: var(--soluk); }
.mini-takvim .g.gelecek { opacity: .45; }
.mini-takvim .kod-C, .takvim-aciklama .kod-C { background: var(--tamam-zemin); color: var(--tamam); }
.mini-takvim .kod-Y, .takvim-aciklama .kod-Y { background: var(--bilgi-zemin); color: var(--bilgi); }
.mini-takvim .kod-I, .takvim-aciklama .kod-I { background: #e9e4f7; color: #4a3a8a; }
.mini-takvim .kod-R, .takvim-aciklama .kod-R { background: var(--uyari-zemin); color: var(--uyari); }
.mini-takvim .kod-G, .takvim-aciklama .kod-G { background: var(--hata-zemin); color: var(--hata); }
.mini-takvim .kod-T, .takvim-aciklama .kod-T { background: var(--yuzey-2); color: var(--soluk); }
.takvim-aciklama { font-size: .78rem; color: var(--soluk); margin: .6rem 0 0; }
.takvim-aciklama span { display: inline-block; min-width: 1.3em; text-align: center; border-radius: 4px; font-weight: 700; }
@media (prefers-color-scheme: dark) { :root:not([data-tema="acik"]) .mini-takvim .kod-I, :root:not([data-tema="acik"]) .takvim-aciklama .kod-I { background: #2b2546; color: #c9bdf5; } }
:root[data-tema="koyu"] .mini-takvim .kod-I, :root[data-tema="koyu"] .takvim-aciklama .kod-I { background: #2b2546; color: #c9bdf5; }

/* ---- 3.14: taşma düzeltmeleri (telefon genişliği) ---- */
.qr-cerceve { max-width: 100%; aspect-ratio: 1 / 1; height: auto; }
.qr-cerceve svg { display: block; }
.filtre > * { min-width: 0; max-width: 100%; }
.filtre label { min-width: 0; grid-template-columns: minmax(0, 1fr); }
.filtre label > input, .filtre label > select, .filtre label .select-ara, .filtre label > textarea { width: 100%; max-width: 100%; min-width: 0; box-sizing: border-box; }
.kaydir { overflow-x: auto; -webkit-overflow-scrolling: touch; max-width: 100%; }
.belge table, .ek table { max-width: 100%; }
@media (max-width: 700px) {
  .filtre { gap: .5rem; }
  .filtre label { flex: 1 1 100%; }
  .belge { padding: 1rem; overflow-x: auto; max-width: 100%; box-sizing: border-box; }
  .belge table { min-width: 460px; }
  .ek { overflow-x: auto; max-width: 100%; box-sizing: border-box; padding: 1rem !important; }
  .ek table { min-width: 560px; }
}
/* gizli radyo düğmeleri (position:absolute) kaydırma kutusunun dışına taşıp sayfayı genişletiyordu */
.tablo-kap, .segment { position: relative; }
@media (max-width: 1000px) { .ek { overflow-x: auto; max-width: 100%; box-sizing: border-box; } .ek table { min-width: 560px; } }

/* ---------- 3.16: okunurluk, satır şeritleri, logo, telefon ---------- */
.gecici-sifre { color: var(--vurgu-koyu); }
.belge .gecici-sifre, .kagit .gecici-sifre { background: #e7f2df; color: #114030; border: 1px dashed #1b5a3e; }
:root[data-tema="koyu"] .gecici-sifre { background: #22382c; color: #d8f5e2; }
@media (prefers-color-scheme: dark) { :root:not([data-tema="acik"]) .gecici-sifre { background: #22382c; color: #d8f5e2; } }
:root[data-tema="koyu"] .belge .gecici-sifre { background: #e7f2df; color: #114030; }
@media (prefers-color-scheme: dark) { :root:not([data-tema="acik"]) .belge .gecici-sifre { background: #e7f2df; color: #114030; } }

/* belirgin ama sakin satır şeritleri (ekran): her temada çalışır */
tbody tr:nth-child(even) td { background: color-mix(in srgb, var(--vurgu) 12%, var(--yuzey)); }
tbody tr:hover td { background: color-mix(in srgb, var(--vurgu) 24%, var(--yuzey)); }
tbody tr:hover { background: none; }
tbody tr td:first-child { box-shadow: inset 3px 0 0 transparent; }
tbody tr:hover td:first-child { box-shadow: inset 3px 0 0 var(--vurgu); }
.belge tbody tr:nth-child(even) td { background: #f3f6f4; }
.belge tbody tr:hover td { background: #f3f6f4; box-shadow: none; }
.kagit tbody tr:nth-child(even) td { background: var(--kagit-zebra, #fff); }
.kagit tbody tr:hover td { background: var(--kagit-zebra-h, #fff); }
.kagit tbody tr:nth-child(even):hover td { background: var(--kagit-zebra, #fff); }
.kagit tbody tr:hover td:first-child { box-shadow: none; }
@media print { tbody tr:nth-child(even) td { -webkit-print-color-adjust: exact; print-color-adjust: exact; } }

.firma-logo { display: block; max-height: 56px; max-width: 200px; width: auto; height: auto; margin: 0 0 .35rem; object-fit: contain; }
.kagit .firma-logo { max-height: 48px; }
.yazdir-bas .firma-logo { display: inline-block; vertical-align: middle; max-height: 34px; margin: 0 .5rem 0 0; }

.telefonlar { display: flex; flex-wrap: wrap; gap: .35rem; }
.telefonlar a, .telefonlar span { display: inline-flex; align-items: center; gap: .3rem; padding: .15rem .65rem; border: 1px solid var(--cizgi-koyu); border-radius: 99px; background: var(--yuzey-2); font-weight: 600; font-variant-numeric: tabular-nums; text-decoration: none; color: inherit; }
.telefonlar .etiket { font-size: .7rem; font-weight: 700; color: var(--soluk); text-transform: uppercase; letter-spacing: .04em; }
@media print { .telefonlar { display: block; } .telefonlar span, .telefonlar a { display: block; border: 0; padding: 0; background: none; border-radius: 0; } .telefonlar span + span::before, .telefonlar a + a::before { content: none; } }

.gun-tartimlar { margin-top: 1.4rem; }
.gun-tartimlar h2 { font-size: 1rem; }
.gun-tartimlar tr.bu td { box-shadow: inset 3px 0 0 var(--vurgu); font-weight: 650; }
@media print { .kagit tbody td, .kagit th { -webkit-print-color-adjust: exact; print-color-adjust: exact; } }

/* fiş: brüt / kesinti / net ödenecek */
.fis-hesap { margin: .8rem 0 0; border-top: 1px dashed #999; padding-top: .6rem; color: #111; }
.fis-hesap .satir { display: flex; justify-content: space-between; gap: .8rem; padding: .22rem 0; font-variant-numeric: tabular-nums; }
.fis-hesap .kesinti { color: #9a3412; }
.fis-hesap small { color: #666; font-weight: 500; }
.fis-hesap .net { margin-top: .4rem; padding: .55rem .7rem; background: #e7f2df; border: 1px solid #1b5a3e; border-radius: 8px; font-size: 1.1rem; color: #114030; }
.fis-hesap .not { margin: .5rem 0 0; font-size: .74rem; color: #666; }
@media print { .fis-hesap .net { -webkit-print-color-adjust: exact; print-color-adjust: exact; } }

/* yazdırma: telefonda 100vh çok yüksek ölçüldüğünden sona boş sayfa ekleniyordu */
@media print {
  html, body { height: auto !important; min-height: 0 !important; }
  .kabuk, .icerik, main { min-height: 0 !important; height: auto !important; }
  .belge, .kart { break-after: avoid-page; page-break-after: avoid; }
  .saha-bildirim, .sagtik, .sagtik-bildirim, .portal-menu { display: none !important; }
}

/* ödeme planı */
.plan-kartlar { display: grid; grid-template-columns: repeat(auto-fit, minmax(170px, 1fr)); gap: .7rem; margin: 0 0 1rem; }
.plan-kart { display: grid; gap: .15rem; padding: .85rem 1rem; border: 1px solid var(--cizgi); border-left: 4px solid var(--vurgu); border-radius: var(--r); background: var(--yuzey); }
.plan-kart span { font-size: .78rem; font-weight: 650; color: var(--soluk); }
.plan-kart strong { font-size: 1.25rem; font-variant-numeric: tabular-nums; }
.plan-kart small { color: var(--soluk); }
.plan-kart.gecmis { border-left-color: #d92d20; }
.plan-kart.bugun { border-left-color: #f79009; }
.plan-kart.hafta { border-left-color: #2e90fa; }
td.gecikmis { color: #d92d20; font-weight: 700; }

/* baskı önizleme: sütun çoksa kağıttan taşmasın */
.kagit { overflow: hidden; box-sizing: border-box; }
.kagit table { width: 100%; max-width: 100%; table-layout: auto; }
.kagit th { white-space: normal; overflow-wrap: anywhere; vertical-align: bottom; }
.kagit td { overflow-wrap: anywhere; }
.kagit td.sayi, .kagit th.sayi { white-space: nowrap; }

/* ===== 3.17 Canlı pano ===== */
.pano-hero{display:flex;gap:24px;align-items:center;justify-content:space-between;padding:26px 28px;border-radius:18px;margin-bottom:16px;color:#fff;
  background:radial-gradient(900px 300px at 100% 0,rgba(255,255,255,.18),transparent 60%),var(--degrade);box-shadow:0 10px 30px -12px var(--degrade-golge)}
.pano-hero h1{margin:2px 0 6px;font-size:1.7rem;color:#fff}
.pano-tarih{margin:0;opacity:.8;font-size:.85rem;text-transform:capitalize}
.pano-ozet{margin:0 0 14px;max-width:46ch;opacity:.95}
.pano-ozet .art{color:#c8f7d4}.pano-ozet .azal{color:#ffd6c9}
.pano-hero .islemler{display:flex;gap:8px;flex-wrap:wrap}
.pano-hero .dugme{background:rgba(255,255,255,.14);color:#fff;border:1px solid rgba(255,255,255,.35)}
.pano-hero .dugme.birincil{background:#fff;color:var(--vurgu-koyu);border-color:#fff}
.pano-hero-halka{position:relative;width:132px;height:132px;flex:none}
.pano-hero-halka svg{width:100%;height:100%;transform:rotate(-90deg)}
.pano-hero-halka circle{fill:none;stroke-width:3.4}
.pano-hero-halka .iz{stroke:rgba(255,255,255,.22)}
.pano-hero-halka .dolgu{stroke:#fff;stroke-linecap:round;stroke-dasharray:calc(var(--p)*1) 100;animation:halka-ac 1.2s ease-out both}
.pano-hero-halka .ic,.halka-kap .ic{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;line-height:1.15}
.pano-hero-halka .ic b{font-size:1.5rem}.pano-hero-halka .ic span{font-size:.68rem;opacity:.85;max-width:90px}
@keyframes halka-ac{from{stroke-dasharray:0 100}}
.pano-kpi{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:14px}
.kpi{position:relative;overflow:hidden;background:var(--yuzey);border:1px solid var(--cizgi);border-radius:16px;padding:16px 18px 56px;--r:var(--c)}
.kpi.c0{--c:#1f9d55}.kpi.c1{--c:#d98a00}.kpi.c2{--c:#2b7bd6}.kpi.c3{--c:#b8456a}
.kpi header{display:flex;justify-content:space-between;align-items:center;gap:8px;font-size:.8rem;color:var(--soluk)}
.kpi header em{font-style:normal;font-weight:600;font-size:.74rem;padding:2px 8px;border-radius:99px}
.kpi em.art,.pano-ozet .art{color:#157a3f}.kpi em.azal{color:#c2410c}
.kpi em.art{background:color-mix(in srgb,#1f9d55 16%,transparent)}.kpi em.azal{background:color-mix(in srgb,#ea580c 16%,transparent)}
.kpi strong{display:block;margin-top:8px;font-size:1.65rem;line-height:1.1}.kpi strong small{font-size:.8rem;font-weight:500;color:var(--soluk)}
.kpi p{margin:6px 0 0;font-size:.78rem;color:var(--soluk)}
.kpi .spark{position:absolute;left:0;right:0;bottom:0;width:100%;height:48px;color:var(--c)}
.kpi .spark .cizgi{fill:none;stroke:var(--c);stroke-width:2;vector-effect:non-scaling-stroke}
.kpi .spark .alan{fill:var(--c);opacity:.16}
.pano-orta{display:grid;grid-template-columns:2fr 1fr;gap:14px;margin-bottom:14px}
.pano-alt{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-bottom:14px}
.pano-kart{background:var(--yuzey);border:1px solid var(--cizgi);border-radius:16px;padding:16px 18px;min-width:0}
.pano-kart header{display:flex;justify-content:space-between;align-items:baseline;gap:8px;flex-wrap:wrap;margin-bottom:10px}
.pano-kart h2{margin:0;font-size:1rem}.pano-kart .alt{font-size:.75rem;color:var(--soluk)}
.pano-kart .bos{color:var(--soluk);font-size:.85rem}
.lejant{display:flex;gap:14px;font-size:.75rem;color:var(--soluk)}
.lejant i{display:inline-block;width:10px;height:10px;border-radius:3px;margin-right:5px;background:#1f9d55}
.lejant i.cizgi-lej{height:0;border-top:2px dashed #d98a00;background:none;border-radius:0;width:14px;vertical-align:middle}
.alan-grafik svg{width:100%;height:auto;display:block;color:#1f9d55}
.alan-grafik .izgara{stroke:var(--cizgi);stroke-dasharray:3 4}
.alan-grafik .etiket{fill:var(--soluk);font-size:11px}
.alan-grafik .cizgi{fill:none;stroke:#1f9d55;stroke-width:2.6;stroke-linejoin:round;stroke-linecap:round;stroke-dasharray:2000;animation:cizgi-ac 1.4s ease-out both}
.alan-grafik .ort{fill:none;stroke:#d98a00;stroke-width:2;stroke-dasharray:6 5}
.alan-grafik .nokta circle{fill:var(--yuzey);stroke:#1f9d55;stroke-width:2;opacity:0;transition:opacity .15s}
.alan-grafik .nokta:hover circle{opacity:1}
@keyframes cizgi-ac{from{stroke-dashoffset:2000}to{stroke-dashoffset:0}}
.alt-ozet{display:flex;gap:22px;flex-wrap:wrap;margin-top:10px;padding-top:12px;border-top:1px solid var(--cizgi)}
.alt-ozet span{display:block;font-size:.72rem;color:var(--soluk)}.alt-ozet b{font-size:1rem}
.halka-kap{position:relative;width:170px;height:170px;margin:4px auto 12px}
.halka-kap svg{width:100%;height:100%;transform:rotate(-90deg)}
.halka-kap circle{fill:none;stroke-width:5}.halka-kap .iz{stroke:var(--cizgi)}
.halka-kap .ic b{font-size:1.05rem}.halka-kap .ic span{font-size:.7rem;color:var(--soluk)}
.c0{--k:#1f9d55}.c1{--k:#d98a00}.c2{--k:#2b7bd6}.c3{--k:#b8456a}.c4{--k:#7c5cd6}.c5{--k:#0e9aa7}
.halka-kap .dilim{stroke:var(--k)}
.aciklama-liste{list-style:none;margin:0;padding:0;display:grid;gap:6px}
.aciklama-liste li{display:flex;align-items:center;gap:8px;font-size:.85rem}
.aciklama-liste li span{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.aciklama-liste i{width:10px;height:10px;border-radius:3px;background:var(--k);flex:none}
.yatay{display:grid;gap:12px}
.yatay .satir{display:grid;grid-template-columns:minmax(70px,28%) 1fr auto;gap:10px;align-items:center;font-size:.85rem}
.yatay .ad,.siralama .ad{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.yatay .iz,.siralama .iz{background:color-mix(in srgb,var(--soluk) 16%,transparent);border-radius:99px;height:10px;overflow:hidden}
.yatay .iz i,.siralama .iz i{display:block;height:100%;width:var(--w);background:var(--k);border-radius:99px;animation:bar-ac .9s ease-out both}
@keyframes bar-ac{from{width:0}}
.siralama{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.siralama a{display:grid;grid-template-columns:24px minmax(70px,32%) 1fr auto;gap:10px;align-items:center;font-size:.85rem;text-decoration:none;color:inherit}
.rozet-no{width:24px;height:24px;border-radius:50%;display:grid;place-items:center;font-size:.75rem;font-weight:700;background:color-mix(in srgb,var(--vurgu) 18%,transparent);color:var(--vurgu)}
.saat-grafik{display:flex;align-items:flex-end;gap:4px;height:150px}
.saat-grafik .s{flex:1;display:flex;flex-direction:column;justify-content:flex-end;align-items:center;height:100%;gap:4px;font-size:.62rem;color:var(--soluk)}
.saat-grafik .s i{display:block;width:100%;height:var(--h);min-height:3px;border-radius:5px 5px 2px 2px;background:color-mix(in srgb,#2b7bd6 55%,transparent);animation:yuksel .9s ease-out both;transform-origin:bottom}
.saat-grafik .s.yogun i{background:#d98a00}
@keyframes yuksel{from{transform:scaleY(0)}}
@media(max-width:1000px){.pano-kpi{grid-template-columns:repeat(2,1fr)}.pano-orta,.pano-alt{grid-template-columns:1fr}}
@media(max-width:560px){.pano-hero{flex-direction:column;align-items:flex-start;padding:20px}.pano-hero-halka{width:104px;height:104px}.pano-kpi{grid-template-columns:1fr}.pano-hero h1{font-size:1.4rem}}
@media(prefers-reduced-motion:reduce){.pano-hero-halka .dolgu,.alan-grafik .cizgi,.iz i,.saat-grafik .s i{animation:none}}

/* ===== 3.18 Girişte karşılama penceresi ===== */
.gp{width:min(620px,100%)}
.gp-bas{padding:1.4rem 1.5rem 1.1rem;color:#fff;background:radial-gradient(500px 200px at 100% 0,rgba(255,255,255,.2),transparent 60%),var(--degrade)}
.gp-bas h2{margin:0 0 .3rem;font-size:1.45rem;color:#fff}
.gp-bas p{margin:0;opacity:.85;font-size:.85rem}
.gp-bas .gp-ozet{opacity:1;font-size:.95rem}
.gp-baslik{margin:1rem 0 .5rem;font-size:.75rem;letter-spacing:.06em;text-transform:uppercase;color:var(--soluk)}
.gp-kart{display:flex;gap:.8rem;align-items:flex-start;padding:.7rem .85rem;margin-bottom:.5rem;border:1px solid var(--cizgi);border-left:4px solid var(--vurgu);border-radius:12px;background:var(--yuzey-2);text-decoration:none;color:inherit;transition:transform .15s,box-shadow .15s}
.gp-kart:hover{transform:translateY(-1px);box-shadow:0 6px 16px -10px rgba(0,0,0,.4)}
.gp-kart.uyari{border-left-color:var(--bakir)}.gp-kart.kritik{border-left-color:var(--hata)}
.gp-kart .ikon{flex:none;width:20px;height:20px;margin-top:2px;color:var(--vurgu)}
.gp-kart.uyari .ikon{color:var(--bakir)}.gp-kart.kritik .ikon{color:var(--hata)}
.gp-kart strong{display:block}.gp-kart small{color:var(--soluk)}
.gp-link{background:none;border:0;padding:0;min-height:0;color:var(--soluk);font-size:.82rem;text-decoration:underline;cursor:pointer;box-shadow:none}
.pencere-alt form{margin:0}
@media(max-width:560px){.perde{padding:0;align-items:flex-end}.gp{border-radius:18px 18px 0 0}.gp .pencere-alt .dugme,.gp .pencere-alt .birincil{flex:1}}

/* ===== 3.20 Mobil uygulama ===== */
body.cevrimdisi{display:grid;place-items:center;min-height:100vh;padding:24px;background:var(--zemin)}
.cd-kutu{max-width:420px;text-align:center}
.cd-ikon{width:72px;height:72px;color:var(--vurgu);margin-bottom:8px}
.cd-buyuk{display:block;margin:10px 0;padding:14px 16px;text-align:center}
.cd-not{color:var(--soluk);font-size:.85rem}
.cd-serit{position:fixed;left:0;right:0;top:0;z-index:300;padding:calc(.45rem + env(safe-area-inset-top)) .8rem .45rem;background:#92400e;color:#fff;text-align:center;font-size:.82rem}
.ios-adim{margin:0;padding-left:1.2rem;display:grid;gap:.6rem}
.alt-sekme{display:none}
html{-webkit-tap-highlight-color:transparent}
.uygulama-modu body{overscroll-behavior-y:contain}
@media(max-width:700px){
  body{padding-bottom:calc(70px + env(safe-area-inset-bottom))}
  .ust{position:sticky;top:0;z-index:40;padding-top:calc(.45rem + env(safe-area-inset-top));backdrop-filter:saturate(1.4) blur(10px);background:color-mix(in srgb,var(--yuzey) 88%,transparent)}
  .menu-dugme{display:none}
  .icerik{padding-bottom:1.5rem}
  /* konum çubuğu: yalnız Geri düğmesi */
  .konum a:not(.geri),.konum .ayrac,.konum .su-an,.konum>span{display:none}
  .konum{margin-bottom:.4rem}
  /* dokunma hedefleri */
  button,.dugme,select,input:not([type=checkbox]):not([type=radio]),textarea{min-height:46px;font-size:16px}
  .oge,.yan summary{min-height:46px;display:flex;align-items:center}
  .sayfa-bas{display:grid;gap:.6rem}
  .sayfa-bas .islemler{display:flex;gap:.5rem}
  .sayfa-bas .islemler .dugme{flex:1;text-align:center}
  /* alt sekme çubuğu */
  .alt-sekme{display:grid;grid-template-columns:repeat(5,1fr);align-items:end;position:fixed;left:0;right:0;bottom:0;z-index:60;
    padding:.35rem .3rem calc(.35rem + env(safe-area-inset-bottom));background:color-mix(in srgb,var(--yuzey) 92%,transparent);
    backdrop-filter:saturate(1.4) blur(12px);border-top:1px solid var(--cizgi);box-shadow:0 -8px 24px -18px rgba(0,0,0,.5)}
  .alt-sekme a:not(.fab),.alt-sekme button{position:relative;display:flex;flex-direction:column;align-items:center;gap:2px;min-height:52px;padding:6px 2px;border:0;background:none;
    color:var(--soluk);font-size:.68rem;font-weight:600;text-decoration:none;box-shadow:none;border-radius:12px}
  .alt-sekme .ikon{width:23px;height:23px}
  .alt-sekme a.aktif:not(.fab),.alt-sekme button.aktif{color:var(--vurgu);background:var(--vurgu-acik)}
  .alt-sekme .sayac{position:absolute;top:2px;right:22%;font-style:normal;background:#c2410c;color:#fff;border-radius:99px;font-size:.62rem;padding:0 5px;min-width:16px;text-align:center}
  .alt-sekme .fab{justify-self:center;display:grid;place-items:center;width:58px;height:58px;margin-top:-26px;border-radius:50%;color:#fff;
    background:var(--degrade);box-shadow:0 10px 22px -8px var(--degrade-golge);border:4px solid var(--zemin)}
  .alt-sekme .fab .ikon{width:26px;height:26px}
  .cd-serit+.alt-sekme{bottom:0}
  /* filtre açılır panel */
  .filtre-ac{display:flex;align-items:center;gap:.5rem;width:100%;justify-content:space-between;margin:.2rem 0 .5rem;padding:.6rem .9rem;border:1px solid var(--cizgi);background:var(--yuzey);border-radius:12px;font-weight:600;color:var(--murekkep)}
  .filtre-ac .sayac{font-style:normal;background:var(--vurgu);color:#fff;border-radius:99px;padding:0 .5rem;font-size:.75rem;margin-left:auto}
  .filtre-ac b{transition:transform .2s}.filtre-ac.acik b{transform:rotate(180deg)}
  form.filtre.kapali{display:none}
  /* tablo → kart listesi */
  .tablo-kap{background:none;border:0;box-shadow:none;overflow:visible}
  table.kartli,table.kartli tbody,table.kartli tr,table.kartli td{display:block;width:100%}
  table.kartli thead{display:none}
  table.kartli tbody tr{margin:0 0 .7rem;padding:.55rem .85rem;background:var(--yuzey);border:1px solid var(--cizgi);border-radius:14px;box-shadow:var(--golge)}
  table.kartli tbody tr:nth-child(even) td,table.kartli tbody tr:hover{background:none}
  table.kartli tbody tr:nth-child(even){background:var(--yuzey)}
  table.kartli td{display:flex;justify-content:space-between;align-items:baseline;gap:1rem;padding:.35rem 0;border:0;text-align:right;white-space:normal}
  table.kartli td[data-etiket]::before{content:attr(data-etiket);flex:none;color:var(--soluk);font-size:.76rem;font-weight:600;text-align:left}
  table.kartli td:first-child{justify-content:flex-start;text-align:left;font-size:1.02rem;padding-bottom:.45rem;margin-bottom:.2rem;border-bottom:1px dashed var(--cizgi)}
  table.kartli td:first-child::before{display:none}
  table.kartli td[data-sutun-gizli],table.kartli td:empty{display:none}
  table.kartli td.bos{display:block;text-align:center;color:var(--soluk)}
  table.kartli td.islem{justify-content:flex-end;padding-top:.5rem}
  .tablo-kap+.sayfalama,.sayfalama{display:flex;justify-content:center;gap:.5rem;flex-wrap:wrap}
}
@media(min-width:701px){.filtre-ac{display:none}}

@media(max-width:560px){.pano-hero-halka .ic span{font-size:.6rem;max-width:64px}.pano-hero-halka .ic b{font-size:1.2rem}}

.mobil-daha{display:none}
@media(max-width:700px){
  table.kartli td.mobil-fazla{display:none}
  table.kartli tr.tam td.mobil-fazla{display:flex}
  table.kartli td.mobil-daha{display:block;padding:.2rem 0 0;text-align:center}
  table.kartli td.mobil-daha::before{display:none}
  table.kartli td.mobil-daha button{width:100%;min-height:38px;border:0;background:var(--vurgu-acik);color:var(--vurgu);font-weight:600;border-radius:10px}
}

/* ===== yasal sayfalar (gizlilik, hesap silme) ===== */
body.yasal{background:var(--zemin);padding:20px 16px calc(40px + env(safe-area-inset-bottom))}
.yasal-kutu{max-width:760px;margin:0 auto;background:var(--yuzey);border:1px solid var(--cizgi);border-radius:18px;padding:26px 24px;line-height:1.65}
.yasal-kutu header{margin-bottom:1rem;padding-bottom:1rem;border-bottom:1px solid var(--cizgi)}
.yasal-kutu h1{margin:.6rem 0 .2rem;font-size:1.5rem}.yasal-kutu h2{font-size:1.1rem;margin:1.4rem 0 .3rem}
.yasal-kutu footer{margin-top:1.6rem;padding-top:1rem;border-top:1px solid var(--cizgi)}

/* 3.27 Rapor: özet satırına tıklayınca altında açılan ayrıntı (merdiven) */
tr.acilir-satir { cursor: pointer; }
tr.acilir-satir:hover td { background: color-mix(in srgb, var(--vurgu) 7%, transparent); }
tr.acilir-satir:focus-visible { outline: 2px solid var(--vurgu); outline-offset: -2px; }
.acilir-ok { display: inline-block; width: 1em; color: var(--vurgu); transition: transform .15s; }
tr.acilir-satir[aria-expanded="true"] .acilir-ok { transform: rotate(90deg); }
tr.acilir-satir[aria-expanded="true"] td { font-weight: 650; }
tr.acilir-alt > td { padding: 0 0 .6rem 0; background: var(--yuzey-2); }
.merdiven { margin-left: 1.6rem; border-left: 3px solid var(--vurgu); padding: .5rem .8rem .2rem 1rem; }
.merdiven-bas { font-size: .82rem; font-weight: 650; color: var(--soluk); margin-bottom: .35rem; }
.merdiven-tablo { width: 100%; font-size: .86rem; }
.merdiven-tablo th { font-size: .74rem; }
.merdiven-tablo td, .merdiven-tablo th { padding: .3rem .5rem; }
@media print { tr.acilir-alt { display: none; } .acilir-ok { display: none; } }

/* 3.27 Satış formunda ürün satırları */
.kalem-tablo { min-width: 0; }
.kalem-tablo td { vertical-align: middle; padding: .35rem .4rem; }
.kalem-tablo select, .kalem-tablo input { width: 100%; min-width: 0; }
.kalem-tablo td:nth-child(1) { min-width: 12rem; }
.kalem-tablo td:nth-child(2) { min-width: 8rem; }
.kalem-tablo input[data-k-miktar], .kalem-tablo input[data-k-fiyat] { width: 6.5rem; }
.kalem-tablo input[data-k-kdv] { width: 5rem; }
.kalem-tablo input.k-parti { width: 6.5rem; }
.kalem-tablo [data-tutar] { white-space: nowrap; }

/* 3.28 Görünüm ekranı: renk koleksiyonu kartları */
.gorunum-yerlesim { display: grid; grid-template-columns: 1fr; gap: var(--bosluk); }
.gorunum-bas { display: flex; align-items: center; gap: .7rem; margin: 0 0 .4rem; font-size: 1.15rem; }
.gorunum-bas::before { content: ""; width: 3px; height: 1.3em; background: var(--murekkep); border-radius: 2px; }
.koleksiyon { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: .9rem; margin: .8rem 0 1.4rem; }
@media (max-width: 1100px) { .koleksiyon { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 520px) { .koleksiyon { grid-template-columns: 1fr; } }
.tema-kart { position: relative; display: block; cursor: pointer; }
.tema-kart input { position: absolute; opacity: 0; pointer-events: none; }
.tema-kart .kart-ic { display: block; height: 100%; padding: .8rem .8rem .9rem; border: 1.5px solid var(--cizgi); border-radius: var(--r); background: var(--yuzey); transition: border-color .15s, box-shadow .15s, transform .15s; }
.tema-kart:hover .kart-ic { border-color: var(--cizgi-koyu); transform: translateY(-1px); }
.tema-kart input:checked + .kart-ic { border-color: var(--murekkep); box-shadow: 0 0 0 3px color-mix(in srgb, var(--murekkep) 12%, transparent); }
.tema-kart input:focus-visible + .kart-ic { outline: 2px solid var(--turkuaz); outline-offset: 2px; }
.tema-onizleme { display: grid; grid-template-columns: 30px 1fr; gap: .6rem; height: 104px; padding: .55rem; border-radius: 9px; background: color-mix(in srgb, var(--k-yan) 7%, #f7f8fa); margin-bottom: .7rem; }
:root[data-tema="koyu"] .tema-onizleme { background: color-mix(in srgb, var(--k-yan) 25%, #12181a); }
.tema-onizleme .t-yan { background: var(--k-yan); border-radius: 6px; display: flex; flex-direction: column; gap: 5px; padding: 8px 6px; }
.tema-onizleme .t-yan i { display: block; height: 4px; border-radius: 2px; background: rgba(255, 255, 255, .55); }
.tema-onizleme .t-yan i:first-child { height: 7px; background: var(--k-secili); }
.tema-onizleme .t-ic { display: flex; flex-direction: column; gap: 7px; padding-top: 2px; }
.tema-onizleme .t-aa { font-size: 1.35rem; font-weight: 750; line-height: 1; color: var(--k-yan); }
:root[data-tema="koyu"] .tema-onizleme .t-aa { color: #fff; }
.tema-onizleme .t-sekme { display: flex; gap: 6px; }
.tema-onizleme .t-sekme b { flex: 1; height: 4px; border-radius: 2px; background: var(--k-vurgu); opacity: .9; }
.tema-onizleme .t-sekme b:nth-child(n+2) { opacity: .35; }
.tema-onizleme .t-cizgi { height: 5px; border-radius: 3px; background: color-mix(in srgb, var(--k-vurgu) 30%, #fff); }
.tema-onizleme .t-cizgi.kisa { width: 60%; background: color-mix(in srgb, var(--k-secili) 55%, #fff); }
.tema-kart .t-ad { display: block; font-weight: 680; font-size: .92rem; }
.tema-kart .t-alt { display: block; font-size: .78rem; color: var(--soluk); }
.tema-kart .t-tik { position: absolute; top: .55rem; right: .55rem; width: 22px; height: 22px; border-radius: 50%; background: var(--murekkep); color: var(--yuzey);
                    display: none; align-items: center; justify-content: center; font-size: .8rem; font-weight: 800; }
.tema-kart input:checked ~ .t-tik { display: flex; }
.gorunum-izgara { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1rem 1.4rem; }
@media (max-width: 720px) { .gorunum-izgara { grid-template-columns: 1fr; } }
.gorunum-izgara label { display: flex; flex-direction: column; gap: .35rem; font-weight: 650; font-size: .86rem; color: var(--soluk); }
.kapsam-not { margin: .2rem 0 1rem; padding: .6rem .85rem; border-radius: var(--r-k); background: var(--yuzey-2); border: 1px solid var(--cizgi); font-size: .86rem; }

/* 3.29 Profil fotoğrafı ve çıkış */
.avatar { overflow: hidden; }
.avatar img { width: 100%; height: 100%; object-fit: cover; display: block; }
.avatar.kucuk { width: 26px; height: 26px; font-size: .75rem; }
.kisi-hucre { display: inline-flex; align-items: center; gap: .5rem; }
.cikis-dugme { color: var(--soluk); }
.cikis-dugme:hover { color: var(--hata); }
dialog.onay-penceresi { border: none; border-radius: var(--r); padding: 0; max-width: 420px; width: calc(100% - 2rem); box-shadow: var(--golge-buyuk); background: var(--yuzey); color: var(--murekkep); }
dialog.onay-penceresi::backdrop { background: rgba(8, 16, 30, .45); backdrop-filter: blur(2px); }
.onay-penceresi .ic { padding: 1.4rem 1.4rem 1.1rem; display: grid; gap: .6rem; }
.onay-penceresi .simge { width: 44px; height: 44px; border-radius: 50%; display: grid; place-items: center; background: var(--uyari-zemin); color: var(--uyari); }
.onay-penceresi h2 { margin: 0; font-size: 1.15rem; }
.onay-penceresi p { margin: 0; color: var(--soluk); font-size: .92rem; }
.onay-penceresi .dugmeler { display: flex; gap: .6rem; justify-content: flex-end; padding: .8rem 1.4rem 1.2rem; }
.ust-cikis { margin: 0; display: flex; }
button.tehlike-dolu { background: var(--hata); border-color: var(--hata); color: #fff; }
button.tehlike-dolu:hover { background: color-mix(in srgb, var(--hata) 85%, #000); }
.sms-dogrulama { margin-top: .8rem; padding: .5rem .7rem; border: 1px dashed var(--cizgi-koyu); border-radius: var(--r-k); font-size: .9rem; }

/* 3.30 saha cihazı ve termal fiş (58 / 80 mm) */
.saha-cihaz summary { cursor: pointer; font-weight: 600; }
.saha-cihaz label { display: block; margin-top: .6rem; }
.saha-fis { display: none; }
@media print {
  @page { margin: 2mm; }
  body.saha > :not(.saha-fis) { display: none !important; }
  body.saha .saha-fis { display: block; font: 11pt/1.3 monospace; color: #000; background: #fff; text-align: center; }
  body.saha[data-kagit="58"] .saha-fis { width: 48mm; }
  body.saha[data-kagit="80"] .saha-fis { width: 72mm; }
  .saha-fis table { width: 100%; border-collapse: collapse; margin: 2mm 0; text-align: left; }
  body.saha { background: #fff !important; }
  .saha-fis td { padding: .3mm 0; border: 0; background: none !important; }
  .saha-fis td + td { text-align: right; }
  .saha-fis div:last-child { margin-top: 6mm; font-size: 9pt; }
}
.saha-cihaz label { display: grid; gap: .25rem; }
.saha-cihaz label.onay { display: flex; gap: .5rem; align-items: center; }

/* ---------- giriş adımları (3.31): 1 güvenli giriş › 2 çalışma alanı ---------- */
body.g2 { min-height: 100vh; margin: 0; display: flex; flex-direction: column; align-items: center; justify-content: center; padding: clamp(.8rem, 3vw, 2.5rem);
  background: radial-gradient(1200px 600px at 10% -10%, color-mix(in srgb, var(--lacivert) 12%, transparent), transparent 60%),
              radial-gradient(900px 500px at 110% 110%, color-mix(in srgb, var(--vurgu) 10%, transparent), transparent 60%), var(--zemin); }
.g2-kart { width: min(1180px, 100%); min-height: min(720px, calc(100vh - 5rem)); display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.05fr);
  background: var(--yuzey); border-radius: 22px; overflow: hidden; border: 1px solid var(--cizgi);
  box-shadow: 0 1px 2px rgba(10, 26, 60, .05), 0 30px 80px -20px rgba(10, 26, 60, .28); animation: g2-gel .45s ease-out both; }
@keyframes g2-gel { from { opacity: 0; transform: translateY(12px) scale(.99); } }
.g2-sol { position: relative; isolation: isolate; color: #fff; padding: clamp(1.6rem, 3.2vw, 2.6rem); display: flex; flex-direction: column; gap: 1rem;
  background: linear-gradient(160deg, color-mix(in srgb, var(--lacivert) 88%, #fff) 0%, var(--lacivert) 45%, color-mix(in srgb, var(--lacivert) 75%, #000) 100%); }
.g2-sol::before { content: ""; position: absolute; inset: 0; z-index: -1; opacity: .5;
  background-image: linear-gradient(rgba(255,255,255,.05) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,.05) 1px, transparent 1px);
  background-size: 34px 34px; mask-image: radial-gradient(ellipse at 30% 20%, #000 10%, transparent 70%); }
.g2-sol::after { content: ""; position: absolute; z-index: -1; right: -120px; bottom: -140px; width: 420px; height: 420px; border-radius: 50%;
  background: radial-gradient(circle, color-mix(in srgb, var(--surgun) 35%, transparent), transparent 65%); filter: blur(10px); opacity: .55; }
.g2-marka { display: flex; align-items: center; gap: .7rem; font-size: 1.35rem; letter-spacing: -.02em; }
.g2-marka b { font-weight: 800; }
.g2-isaret { width: 44px; height: 44px; border-radius: 12px; display: grid; place-items: center; background: rgba(255,255,255,.1); border: 1px solid rgba(255,255,255,.16); }
.g2-isaret img { width: 26px; height: 26px; object-fit: contain; }
.g2-orta { margin: auto 0; display: flex; flex-direction: column; gap: 1rem; }
.g2-ust { text-transform: uppercase; letter-spacing: .16em; font-size: .72rem; font-weight: 700; color: color-mix(in srgb, var(--surgun) 75%, #fff); }
.g2-sol h1 { color: #fff; font-size: clamp(2rem, 3.6vw, 3rem); line-height: 1.04; letter-spacing: -.04em; font-weight: 800; margin: 0; }
.g2-sol p { margin: 0; color: rgba(255,255,255,.72); max-width: 40ch; font-size: 1rem; }
.g2-alan { margin-top: .4rem; border-radius: 16px; padding: .9rem 1rem 1rem; background: rgba(255,255,255,.07); border: 1px solid rgba(255,255,255,.13); backdrop-filter: blur(6px); }
.g2-alan-bas { display: flex; justify-content: space-between; align-items: center; font-size: .85rem; color: rgba(255,255,255,.8); }
.g2-alan-bas span { display: flex; align-items: center; gap: .45rem; }
.g2-dugum { list-style: none; margin: .9rem 0 0; padding: 0; display: grid; grid-template-columns: repeat(3, 1fr); position: relative; }
.g2-dugum::before { content: ""; position: absolute; left: 16.6%; right: 16.6%; top: 21px; height: 1px; background: rgba(255,255,255,.2); }
.g2-dugum li { display: flex; flex-direction: column; align-items: center; gap: .4rem; font-size: .75rem; color: rgba(255,255,255,.6); position: relative; }
.g2-dugum i { width: 42px; height: 42px; border-radius: 12px; display: grid; place-items: center; background: color-mix(in srgb, var(--lacivert) 80%, #000);
  border: 1px solid rgba(255,255,255,.18); color: rgba(255,255,255,.75); transition: .3s; }
.g2-dugum li.aktif { color: #fff; font-weight: 650; }
.g2-dugum li.aktif i { background: var(--surgun); color: var(--surgun-yazi); border-color: transparent; box-shadow: 0 0 0 5px color-mix(in srgb, var(--surgun) 22%, transparent); }
.g2-dugum li.tamam i { background: rgba(255,255,255,.16); color: #fff; }
.g2-dugum li.tamam { color: rgba(255,255,255,.85); }
.g2-bilgi { margin: 0; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: .5rem; }
.g2-bilgi div { padding: .55rem .65rem; border-radius: 12px; background: rgba(255,255,255,.05); border: 1px solid rgba(255,255,255,.09); min-width: 0; }
.g2-bilgi dt { display: flex; align-items: center; gap: .35rem; font-size: .68rem; color: rgba(255,255,255,.6); font-weight: 600; }
.g2-bilgi dd { margin: .2rem 0 0; font-weight: 700; font-size: .84rem; color: #fff; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-variant-numeric: tabular-nums; }
.g2-bilgi dd small { display: block; font-weight: 500; font-size: .7rem; color: rgba(255,255,255,.58); overflow: hidden; text-overflow: ellipsis; }
.g2-guven { display: flex; align-items: center; gap: .45rem; font-size: .75rem; color: rgba(255,255,255,.55); }
.g2-sag { padding: clamp(1.4rem, 3.2vw, 2.6rem) clamp(1.4rem, 4vw, 3.4rem); display: flex; flex-direction: column; min-width: 0; }
.g2-adim { list-style: none; margin: 0; padding: 0; display: flex; align-items: center; gap: .6rem; font-size: .84rem; color: var(--soluk); }
.g2-adim li { display: flex; align-items: center; gap: .5rem; }
.g2-adim li i { width: 26px; height: 26px; border-radius: 50%; display: grid; place-items: center; font-style: normal; font-weight: 700; font-size: .78rem;
  border: 1px solid var(--cizgi-koyu); color: var(--soluk); background: var(--yuzey); }
.g2-adim li.aktif { color: var(--murekkep); font-weight: 700; }
.g2-adim li.aktif i { background: var(--lacivert); color: #fff; border-color: transparent; }
.g2-adim li.tamam i { background: var(--tamam-zemin); color: var(--tamam); border-color: transparent; }
.g2-adim li.ayrac { color: var(--cizgi-koyu); }
.g2-icerik { margin: auto 0; padding: 2rem 0 1.5rem; width: 100%; max-width: 470px; }
.g2-hos { text-transform: uppercase; letter-spacing: .16em; font-size: .72rem; font-weight: 750; color: var(--soluk); }
.g2-baslik { font-size: clamp(1.6rem, 2.6vw, 2.1rem); letter-spacing: -.035em; line-height: 1.12; margin: .5rem 0 .5rem; font-weight: 800; }
.g2-acik { color: var(--soluk); margin: 0 0 1.4rem; }
.g2-form .alan { margin-bottom: 1rem; }
.g2-girdi { position: relative; }
.g2-girdi > .ikon { position: absolute; left: .85rem; top: 50%; transform: translateY(-50%); color: var(--soluk); pointer-events: none; }
.g2-girdi input { padding-left: 2.6rem; min-height: 48px; border-radius: 12px; }
.g2-hatirla { display: flex; align-items: center; gap: .55rem; font-size: .9rem; color: var(--soluk); margin: .2rem 0 1.1rem; cursor: pointer; }
.g2-hatirla input { width: 18px; height: 18px; min-height: 0; accent-color: var(--lacivert); }
.g2-dugme { width: 100%; min-height: 52px !important; justify-content: center; gap: .6rem; border-radius: 12px !important; font-size: 1rem; font-weight: 700;
  background: var(--lacivert) !important; border-color: var(--lacivert) !important; color: #fff !important; position: relative; transition: transform .15s, box-shadow .2s; }
.g2-dugme:hover { box-shadow: 0 10px 24px -8px color-mix(in srgb, var(--lacivert) 70%, transparent); transform: translateY(-1px); }
.g2-ok { transition: transform .2s; }
.g2-dugme:hover .g2-ok { transform: translateX(3px); }
.g2-not { text-align: center; font-size: .8rem; color: var(--soluk); margin: 1rem 0 0; }
.g2-baglar { display: flex; justify-content: center; gap: 1.2rem; flex-wrap: wrap; margin-top: 1.1rem; padding-top: 1.1rem; border-top: 1px solid var(--cizgi); font-size: .9rem; }
.g2-ayak { display: flex; justify-content: space-between; align-items: center; gap: 1rem; flex-wrap: wrap; font-size: .78rem; color: var(--soluk); border-top: 1px solid var(--cizgi); padding-top: 1rem; }
.g2-surum { display: inline-flex; align-items: center; gap: .35rem; padding: .3rem .65rem; border-radius: 999px; border: 1px solid var(--cizgi); color: var(--soluk); text-decoration: none; }
.g2-surum b { color: var(--tamam); background: var(--tamam-zemin); padding: 0 .4rem; border-radius: 999px; }
.g2-yasal { font-size: .78rem; color: var(--soluk); margin: 1rem 0 0; text-align: center; }
.g2-kim { display: flex; align-items: center; gap: .75rem; padding: .7rem .8rem; border: 1px solid var(--cizgi); border-radius: 14px; background: var(--yuzey-2); margin-bottom: 1.3rem; }
.g2-kim > span:nth-child(2) { flex: 1; min-width: 0; }
.g2-kim b { display: block; }
.g2-kim small { display: flex; align-items: center; gap: .25rem; color: var(--tamam); font-size: .78rem; }
.g2-kim form { margin: 0; }
.g2-avatar { width: 40px; height: 40px; border-radius: 50%; display: grid; place-items: center; background: var(--lacivert); color: #fff; font-weight: 800; object-fit: cover; flex: none; }
.g2-grup { border: 0; margin: 0 0 1.2rem; padding: 0; }
.g2-grup legend { font-weight: 700; font-size: .85rem; margin-bottom: .55rem; padding: 0; }
.g2-secim { display: grid; grid-template-columns: repeat(auto-fill, minmax(140px, 1fr)); gap: .55rem; }
.g2-sec { position: relative; cursor: pointer; }
.g2-sec input { position: absolute; opacity: 0; pointer-events: none; }
.g2-sec > span { display: grid; grid-template-columns: auto 1fr; column-gap: .55rem; align-items: center; padding: .7rem .8rem; border-radius: 12px; border: 1px solid var(--cizgi); background: var(--yuzey); transition: .15s; height: 100%; }
.g2-sec > span .ikon { grid-row: span 2; color: var(--soluk); }
.g2-sec b { font-size: .92rem; }
.g2-sec small { color: var(--soluk); font-size: .75rem; }
.g2-sec:hover > span { border-color: var(--cizgi-koyu); }
.g2-sec input:checked + span { border-color: var(--lacivert); box-shadow: 0 0 0 3px color-mix(in srgb, var(--lacivert) 16%, transparent); background: color-mix(in srgb, var(--lacivert) 5%, var(--yuzey)); }
.g2-sec input:checked + span .ikon { color: var(--lacivert); }
.g2-sec input:focus-visible + span { outline: 2px solid var(--vurgu); outline-offset: 2px; }
.g2-firma { display: flex; align-items: center; gap: .8rem; padding: .85rem 1rem; border-radius: 14px; border: 1px solid var(--cizgi); margin-bottom: 1.2rem; }
.g2-firma b { display: block; }
.g2-firma small { display: flex; align-items: center; gap: .3rem; color: var(--soluk); font-size: .8rem; }
.g2-firma-ikon { width: 42px; height: 42px; border-radius: 12px; display: grid; place-items: center; background: var(--vurgu-acik); color: var(--vurgu); flex: none; }
.g2 .giris-sekme { margin-bottom: 1.2rem; }
.g2 #id_kod { font-size: 1.6rem; letter-spacing: .3em; text-align: center; min-height: 56px; border-radius: 12px; font-variant-numeric: tabular-nums; }
:root[data-tema="koyu"] .g2-adim li.aktif i, :root[data-tema="koyu"] .g2-avatar { background: color-mix(in srgb, var(--lacivert) 60%, #fff); }
@media (prefers-color-scheme: dark) { :root[data-tema="sistem"] .g2-adim li.aktif i { background: color-mix(in srgb, var(--lacivert) 60%, #fff); }
  :root[data-tema="sistem"] .g2-dugme { background: color-mix(in srgb, var(--lacivert) 75%, #fff) !important; border-color: transparent !important; } }
@media (max-width: 900px) {
  body.g2 { padding: 0; justify-content: flex-start; }
  .g2-kart { grid-template-columns: 1fr; border-radius: 0; border: 0; min-height: 100vh; }
  .g2-sol { padding: 1.2rem 1.2rem 1.4rem; }
  .g2-sol h1 { font-size: 1.7rem; }
  .g2-sol p, .g2-bilgi, .g2-guven, .g2-ust { display: none; }
  .g2-orta { margin: .6rem 0 0; }
  .g2-alan { padding: .7rem .8rem .8rem; }
  .g2-icerik { padding: 1.4rem 0; }
}

/* ---------- 3.33 denetim düzeltmeleri ---------- */
/* listelerde kısa değerler (kod · ad, tarih, tür) tek satırda dursun; satırlar gereksiz uzamasın */
td.kisa { white-space: nowrap; }
/* fieldset tarayıcıda içindeki en geniş öğe kadar genişler: tablo kaydırma kutusu telefonda çalışmıyordu */
fieldset { min-width: 0; }
@media (max-width: 1000px) { .ek .alt { min-width: 560px; } }
/* aranabilir seçim kutusu (uzun listeler) */
.secim-ara { position: relative; }
.secim-ara > input { width: 100%; box-sizing: border-box; padding-right: 2rem;
  background-image: linear-gradient(45deg, transparent 50%, var(--soluk) 50%), linear-gradient(135deg, var(--soluk) 50%, transparent 50%);
  background-position: calc(100% - 15px) 52%, calc(100% - 10px) 52%; background-size: 5px 5px, 5px 5px; background-repeat: no-repeat; }
.secim-gizli { position: absolute !important; inset: 0; opacity: 0; pointer-events: none; width: 100% !important; height: 100% !important; }
.secim-liste { position: absolute; z-index: 60; left: 0; right: 0; top: calc(100% + 4px); max-height: 300px; overflow-y: auto; margin: 0; padding: .3rem;
  list-style: none; background: var(--yuzey); border: 1px solid var(--cizgi-koyu); border-radius: var(--r-k); box-shadow: var(--golge-buyuk); min-width: 220px; }
.secim-liste li { padding: .45rem .6rem; border-radius: 6px; cursor: pointer; font-size: .92rem; line-height: 1.3; }
.secim-liste li[aria-selected="true"] { font-weight: 700; color: var(--vurgu); }
.secim-liste li.etkin, .secim-liste li[role="option"]:hover { background: var(--vurgu-acik); }
.secim-liste li.grup { cursor: default; font-size: .72rem; font-weight: 700; color: var(--soluk); text-transform: uppercase; letter-spacing: .04em; padding-top: .6rem; }
.secim-liste li.yok { cursor: default; color: var(--soluk); }
.secim-liste em { color: var(--soluk); }
/* firma seçim kutusu varken firma adı ikinci kez yazılmasın */
.firma-adi.secim-var { display: none; }
/* yazdırırken farenin üzerinde durduğu satır vurgulu çıkmasın */
@media print {
  tbody tr:hover td { background: var(--yuzey); }
  tbody tr:nth-child(even):hover td { background: color-mix(in srgb, var(--vurgu) 12%, var(--yuzey)); }
  tbody tr:hover td:first-child { box-shadow: none; }
  .belge tbody tr:hover td, .kagit tbody tr:hover td { background: #fff; }
}
/* telefonda uzun yazılı düğmeler ve görünüm seçimleri ekran dışına taşmasın */
button, .dugme { max-width: 100%; }
@media (max-width: 720px) {
  button, .dugme { white-space: normal; }
  .gorunum-izgara { grid-template-columns: minmax(0, 1fr); }
  .gorunum-izgara label, .gorunum-izgara select { min-width: 0; max-width: 100%; width: 100%; }
}
td.uzun { min-width: 11rem; }
.filtre .secim-ara input::placeholder { color: var(--murekkep); opacity: 1; }

/* İlk kurulum sihirbazı (3.34) */
.ks-ilerleme { display: flex; align-items: center; gap: .9rem; margin: .4rem 0 1.2rem; }
.ks-cubuk { flex: 1; height: 10px; border-radius: 99px; background: var(--yuzey-2); border: 1px solid var(--cizgi); overflow: hidden; }
.ks-cubuk i { display: block; height: 100%; background: var(--vurgu); border-radius: 99px; transition: width .4s; }
.ks-adimlar { list-style: none; margin: 0; padding: 0; display: grid; gap: .6rem; counter-reset: ks; }
.ks-adim { background: var(--yuzey); border: 1px solid var(--cizgi); border-radius: var(--r); box-shadow: var(--golge); }
.ks-adim.secili { border-color: var(--vurgu); box-shadow: 0 0 0 3px color-mix(in srgb, var(--vurgu) 16%, transparent), var(--golge); }
.ks-bas { display: flex; align-items: center; gap: .9rem; padding: .85rem 1.1rem; color: inherit; text-decoration: none; }
.ks-no { flex: none; width: 34px; height: 34px; border-radius: 50%; display: grid; place-items: center; font-weight: 750; border: 2px solid var(--cizgi-koyu); color: var(--soluk); }
.ks-adim.secili .ks-no { border-color: var(--vurgu); color: var(--vurgu-metin, var(--vurgu)); }
.ks-adim.tamam .ks-no { background: var(--tamam); border-color: var(--tamam); color: #fff; }
.ks-no .ikon { width: 18px; height: 18px; }
.ks-ad { flex: 1; min-width: 0; display: grid; gap: .1rem; }
.ks-ad small { color: var(--soluk); overflow: hidden; text-overflow: ellipsis; }
.ks-govde { display: flex; gap: 1rem; padding: 0 1.1rem 1.1rem 4.1rem; }
.ks-govde p { margin: 0 0 .55rem; }
.ks-ikon { display: none; }
.ks-gordugum { padding: .5rem .75rem; background: var(--yuzey-2); border-radius: var(--r-k); border: 1px dashed var(--cizgi-koyu); }
.ks-dugmeler { display: flex; flex-wrap: wrap; gap: .5rem; margin: .7rem 0 .4rem; }
.ks-dugmeler form { margin: 0; }
.ks-soluk { color: var(--soluk); font-size: .85rem; }
.ks-serit { display: flex; align-items: center; gap: 1rem; flex-wrap: wrap; padding: .9rem 1.1rem; margin-bottom: 1.1rem; border-radius: var(--r);
  background: linear-gradient(100deg, var(--vurgu-acik), var(--yuzey)); border: 1px solid color-mix(in srgb, var(--vurgu) 30%, var(--cizgi)); }
.ks-serit .ks-cubuk { min-width: 120px; max-width: 220px; }
.ks-serit strong { display: block; }
.ks-serit small { color: var(--soluk); }
.ks-serit .dugme { margin-left: auto; }
@media (max-width: 640px) { .ks-serit .ikon-kutu { display: none; } .ks-govde { padding-left: 1.1rem; } .ks-bas .rozet { display: none; } .ks-serit .dugme { margin-left: 0; } }

/* Yenilikler penceresi (3.34) */
.pencere.yp { width: min(600px, 100%); padding: 0; overflow: hidden; }
.yp-bas { padding: 1.4rem 1.5rem 1.1rem; color: #fff; background: radial-gradient(420px 180px at 100% 0, rgba(255,255,255,.22), transparent 60%), linear-gradient(135deg, var(--vurgu-koyu), var(--vurgu)); }
.yp-bas h2 { margin: .5rem 0 .25rem; font-size: 1.4rem; color: #fff; }
.yp-bas p { margin: 0; opacity: .88; font-size: .88rem; }
.yp-rozet { display: inline-flex; align-items: center; gap: .35rem; padding: .2rem .65rem; border-radius: 99px; background: rgba(255,255,255,.18); font-size: .78rem; font-weight: 700; }
.yp-rozet .ikon { width: 15px; height: 15px; }
.yp-surum { margin: .9rem 0 .5rem; font-size: .95rem; }
.yp-surum small { color: var(--soluk); font-weight: 500; margin-left: .3rem; }
.yp-liste { list-style: none; margin: 0; padding: 0; display: grid; gap: .55rem; }
.yp-liste li { display: flex; gap: .75rem; align-items: flex-start; }
.yp-liste li > span:last-child { display: grid; gap: .1rem; min-width: 0; }
.yp-liste small { color: var(--soluk); line-height: 1.45; }
.yp-ikon { flex: none; width: 34px; height: 34px; border-radius: 9px; display: grid; place-items: center; background: var(--vurgu-acik); color: var(--vurgu); }
.yp-ikon .ikon { width: 18px; height: 18px; }
.sn-surum { background: var(--yuzey); border: 1px solid var(--cizgi); border-radius: var(--r); padding: 1rem 1.2rem; margin-bottom: .9rem; box-shadow: var(--golge); }
.sn-surum h2 { margin: 0 0 .7rem; font-size: 1.05rem; display: flex; gap: .6rem; align-items: baseline; flex-wrap: wrap; }
.sn-surum h2 small { color: var(--soluk); font-weight: 500; font-size: .82rem; }
.g2-tanitim { display: flex; align-items: center; gap: .75rem; margin: 1rem 0 0; padding: .75rem .9rem; border-radius: 12px; border: 1px dashed color-mix(in srgb, var(--vurgu) 45%, var(--cizgi)); background: var(--vurgu-acik); }
.g2-tanitim > .ikon { flex: none; width: 22px; height: 22px; color: var(--vurgu); }
.g2-tanitim > span { flex: 1; display: grid; gap: .15rem; font-size: .85rem; min-width: 0; }
.g2-tanitim small { color: var(--soluk); }
.tanitim-serit { display: flex; align-items: center; justify-content: center; gap: .5rem; padding: .3rem 1rem; background: var(--uyari-zemin); color: var(--uyari); font-size: .8rem; font-weight: 600; text-align: center; }
@media (max-width: 480px) { .g2-tanitim { flex-wrap: wrap; } }

/* ===== 3.35 Kargo ve sevkiyat takibi ===== */
.rozet.bilgi { background: var(--bilgi-zemin); color: var(--bilgi); }
.soluk-yazi { color: var(--soluk); }
.kg-izgara { display: grid; grid-template-columns: minmax(0, 1.6fr) minmax(0, 1fr); gap: 1rem; align-items: start; }
.kg-izgara > div { display: grid; grid-template-columns: minmax(0, 1fr); gap: 1rem; min-width: 0; }
.kg-izgara .kart { margin: 0; }
.kg-kpi { display: grid; grid-template-columns: repeat(auto-fit, minmax(160px, 1fr)); gap: .7rem; margin-bottom: 1rem; }
.kg-kpi .kart { margin: 0; padding: .85rem 1rem; display: grid; gap: .15rem; }
.kg-kpi span { font-size: .78rem; color: var(--soluk); font-weight: 600; }
.kg-kpi strong { font-size: 1.45rem; font-variant-numeric: tabular-nums; letter-spacing: -.01em; }
.kg-kpi small { color: var(--soluk); font-size: .78rem; }
.kg-kpi .kg-uyari { border-color: color-mix(in srgb, var(--uyari) 45%, var(--cizgi)); background: var(--uyari-zemin); }
.kg-kpi .kg-uyari strong { color: var(--uyari); }
.kg-filtre { margin-bottom: 1rem; }
.kg-adimlar { list-style: none; display: grid; grid-template-columns: repeat(5, 1fr); margin: 0 0 1.1rem; padding: 1rem .5rem .8rem; background: var(--yuzey); border: 1px solid var(--cizgi); border-radius: var(--r); box-shadow: var(--golge); }
.kg-adimlar li { position: relative; display: grid; justify-items: center; gap: .35rem; text-align: center; font-size: .82rem; color: var(--soluk); }
.kg-adimlar li::before { content: ""; position: absolute; top: 15px; left: -50%; right: 50%; height: 3px; background: var(--cizgi); }
.kg-adimlar li:first-child::before { display: none; }
.kg-adimlar li.gecti::before, .kg-adimlar li.simdi::before { background: var(--vurgu); }
.kg-nokta { position: relative; z-index: 1; width: 32px; height: 32px; border-radius: 50%; display: grid; place-items: center; font-weight: 750; background: var(--yuzey); border: 3px solid var(--cizgi-koyu); }
.kg-nokta .ikon { width: 16px; height: 16px; }
.kg-adimlar li.gecti .kg-nokta { background: var(--vurgu); border-color: var(--vurgu); color: var(--vurgu-yazi); }
.kg-adimlar li.simdi .kg-nokta { border-color: var(--vurgu); color: var(--vurgu-metin, var(--vurgu)); box-shadow: 0 0 0 5px color-mix(in srgb, var(--vurgu) 16%, transparent); }
.kg-adimlar li.simdi { color: var(--murekkep); font-weight: 700; }
.kg-adimlar.kg-sapma li.simdi .kg-nokta { border-color: var(--uyari); color: var(--uyari); }
.kg-takipno { font-family: ui-monospace, "Cascadia Mono", Consolas, monospace; letter-spacing: .03em; }
.kg-paylas { display: flex; flex-wrap: wrap; align-items: center; gap: .4rem; margin: .9rem 0 0; padding: .6rem .75rem; border-radius: var(--r-k); background: var(--yuzey-2); font-size: .85rem; }
.kg-paylas a { word-break: break-all; }
.kg-satir { display: flex; gap: .5rem; flex-wrap: wrap; }
.kg-satir input { flex: 1; min-width: 180px; }
.kg-form { display: grid; gap: .6rem; margin-top: .7rem; }
.kg-form label { display: grid; gap: .25rem; font-size: .85rem; color: var(--soluk); }
.kg-ek summary { cursor: pointer; }
.kg-fiyat tr.kg-en-ucuz td { background: color-mix(in srgb, var(--vurgu-acik) 60%, transparent); }
.kg-zaman { list-style: none; margin: 0; padding: 0; }
.kg-zaman li { position: relative; display: grid; gap: .1rem; padding: 0 0 1rem 1.4rem; margin-left: .45rem; border-left: 2px solid var(--cizgi); }
.kg-zaman li:last-child { border-left-color: transparent; padding-bottom: 0; }
.kg-zaman li::before { content: ""; position: absolute; left: -7px; top: .25rem; width: 12px; height: 12px; border-radius: 50%; background: var(--cizgi-koyu); border: 2px solid var(--yuzey); }
.kg-zaman li.son::before { background: var(--vurgu); box-shadow: 0 0 0 4px color-mix(in srgb, var(--vurgu) 18%, transparent); }
.kg-zaman li.d-teslim::before { background: var(--tamam); }
.kg-zaman li.d-gecikme::before, .kg-zaman li.d-sorunlu::before, .kg-zaman li.d-iade_yolda::before { background: var(--uyari); }
.kg-zaman time { font-size: .78rem; color: var(--soluk); font-variant-numeric: tabular-nums; }
.kg-zaman span, .kg-zaman small { font-size: .82rem; color: var(--soluk); }
.kg-liste { display: flex; justify-content: space-between; align-items: center; gap: .6rem; padding: .55rem 0; border-bottom: 1px solid var(--cizgi); color: inherit; text-decoration: none; }
.kg-liste:last-child { border-bottom: 0; }
.kg-liste b, .kg-liste small { display: block; }
.kg-liste small { color: var(--soluk); font-size: .8rem; }
a.kg-liste { display: grid; }
a.kg-liste:hover b { color: var(--vurgu-metin, var(--vurgu)); }
.kg-sutun { display: grid; grid-template-columns: repeat(14, 1fr); gap: 4px; align-items: end; height: 130px; }
.kg-sutun div { display: grid; grid-template-rows: 1fr auto; height: 100%; align-items: end; gap: 4px; }
.kg-sutun i { display: block; min-height: 3px; border-radius: 4px 4px 2px 2px; background: linear-gradient(180deg, var(--vurgu), color-mix(in srgb, var(--vurgu) 55%, var(--yuzey))); }
.kg-sutun span { font-size: .68rem; color: var(--soluk); text-align: center; }
.kg-oran { display: inline-block; width: 46px; height: 6px; border-radius: 99px; background: var(--yuzey-2); overflow: hidden; vertical-align: middle; margin-right: .3rem; }
.kg-oran i { display: block; height: 100%; background: var(--tamam); }
@media (max-width: 980px) { .kg-izgara { grid-template-columns: 1fr; } }
@media (max-width: 560px) { .kg-adimlar { padding: .8rem .2rem .6rem; } .kg-adimlar li { font-size: .68rem; } .kg-nokta { width: 26px; height: 26px; } .kg-adimlar li::before { top: 12px; } }
.kg-izgara .islemler { display: flex; flex-wrap: wrap; gap: .5rem; align-items: center; } .kg-izgara .islemler form { margin: 0; }

/* ===== 3.35.1 Ekran uyumu: telefonda açılır paneller ve dokunma alanları ===== */
.acilir-panel form { margin: 0; }
.acilir-panel form button.baglanti { display: flex; width: 100%; padding: .55rem .65rem; border-radius: var(--r-k); text-align: left; text-decoration: none; }
.acilir-panel form button.baglanti:hover { background: var(--vurgu-acik); }
@media (max-width: 700px) {
  /* sayfa içindeki açılır menüler telefonda alttan açılan kart olur: ekran dışına taşmaz, parmakla rahat seçilir */
  main .acilir-panel { position: fixed; left: .75rem; right: .75rem; top: auto; bottom: calc(84px + env(safe-area-inset-bottom)); min-width: 0; max-height: 60vh; overflow-y: auto; z-index: 60; }
  main .acilir-panel a, main .acilir-panel button.satir, main .acilir-panel form button.baglanti { min-height: 44px; }
  main button.baglanti, main a.baglanti { min-height: 40px; display: inline-flex; align-items: center; }
  .dugme.kucuk, button.kucuk { min-height: 36px; }
}
@media screen { .ek { overflow-x: auto; } }
/* Geniş ekran (1920 px ve üstü, 2K/4K monitör): içerik sola yapışıp sağda boşluk bırakmasın */
@media (min-width: 1800px) { .icerik { max-width: 1760px; margin-inline: auto; } }
@media (min-width: 2400px) { :root { --boyut: 16px; } .icerik { max-width: 1960px; } }
/* Telefonda tartım özeti ekranı kaplamasın: 2×2 kutu, alanlar hemen altında görünsün */
@media (max-width: 560px) {
  .hesap { display: grid; grid-template-columns: 1fr 1fr; gap: .7rem 1rem; padding: .8rem .9rem; margin-bottom: 1rem; }
  .hesap b { font-size: 1.25rem; }
  .hesap > div[style*="margin-left:auto"] { grid-column: 1 / -1; margin-left: 0 !important; }
}
/* 3.35.3 Telefonda yan menü: üst çubuğun ve alttaki sekme çubuğunun ALTINDA kalıyordu (Ayarlar'dan sonrası görünmüyordu).
   Menü artık en üstte açılır, telefonun gerçek ekran yüksekliğini (adres çubuğu hariç) kullanır, sonuna kadar kayar. */
@media (max-width: 960px) {
  .yan { height: 100vh; height: 100dvh; z-index: 70; overscroll-behavior: contain;
         padding-top: calc(.9rem + env(safe-area-inset-top)); padding-bottom: calc(1.2rem + env(safe-area-inset-bottom)); }
  .yan-alt { padding-bottom: .4rem; }
  .menu-daralt { display: none !important; }  /* telefonda menü zaten açılır-kapanır */
}

/* Şube seçimi (kullanıcı menüsü, telefonda da görünür) */
.menu-sube label { display: flex; align-items: center; gap: .55rem; padding: .45rem .7rem; font-size: .92rem; }
.menu-sube label span { flex: 0 0 auto; }
.menu-sube select { flex: 1 1 auto; min-width: 0; padding: .3rem .4rem; border-radius: 8px; }

/* ---- kurumsal antet (3.40): tüm baskı ve önizlemelerin başında firma bilgileri ---- */
.antet { display: grid; grid-template-columns: auto 1fr auto; gap: 14px 18px; align-items: center; padding: 0 0 10px;
  margin: 0 0 12px; border-bottom: 2.5px solid #0b1e3f; color: #111; font-family: var(--yazi); }
.antet-logo { width: 64px; height: 64px; border-radius: 12px; display: grid; place-items: center; overflow: hidden;
  background: #fff; border: 1px solid #d6dbe4; }
.antet-logo img { max-width: 100%; max-height: 100%; object-fit: contain; }
.antet-logo span { font-size: 28px; font-weight: 800; color: #fff; background: linear-gradient(135deg, #0b1e3f, #1b5a3e);
  width: 100%; height: 100%; display: grid; place-items: center; }
.antet-firma { display: grid; gap: 1px; min-width: 0; }
.antet-firma strong { font-size: 13.5pt; letter-spacing: .01em; color: #0b1e3f; line-height: 1.2; }
.antet-firma span { font-size: 8.5pt; color: #444; line-height: 1.35; }
.antet-belge { text-align: right; display: grid; gap: 2px; justify-items: end; padding-left: 14px; border-left: 1px solid #d6dbe4; }
.antet-belge b { font-size: 12pt; color: #0b1e3f; text-transform: uppercase; letter-spacing: .03em; }
.antet-belge span { font-size: 9pt; font-weight: 600; color: #222; }
.antet-belge small { font-size: 7.5pt; color: #666; }
.yazdir-bas .antet { font-size: 10pt; }
.kagit .antet { margin-bottom: 8px; }
.kagit .kagit-bas { border-bottom: 0; padding-bottom: .2rem; align-items: baseline; }
@media (max-width: 640px) { .antet { grid-template-columns: auto 1fr; } .antet-belge { grid-column: 1 / -1; text-align: left; justify-items: start; border-left: 0; padding-left: 0; } }
@page { @bottom-right { content: "Sayfa " counter(page) " / " counter(pages); font: 8pt sans-serif; color: #666; } }
@media print { .yazdir-bas .antet { display: grid; } .antet { break-inside: avoid; } }

/* ---- gün sonu raporu (3.40) ---- */
.gs-duzen { display: grid; grid-template-columns: 260px minmax(0, 1fr); gap: 1.1rem; align-items: start; }
.gs-suzgec { position: sticky; top: 76px; padding: 1rem; display: grid; gap: .9rem; }
.gs-suzgec h2 { font-size: .95rem; margin: 0; display: flex; gap: .45rem; align-items: center; }
.gs-suzgec fieldset { border: 1px solid var(--cizgi); border-radius: var(--r-k); padding: .55rem .7rem .65rem; margin: 0; display: grid; gap: .3rem; }
.gs-suzgec legend { font-size: .76rem; font-weight: 700; color: var(--soluk); padding: 0 .3rem; text-transform: uppercase; letter-spacing: .04em; }
.gs-suzgec label.kutu { display: flex; gap: .45rem; align-items: center; font-size: .87rem; margin: 0; cursor: pointer; }
.gs-suzgec label.kutu input { width: 16px; height: 16px; margin: 0; accent-color: var(--vurgu); }
.gs-hizli { display: grid; grid-template-columns: repeat(4, 1fr); gap: .3rem; }
.gs-hizli button { padding: .35rem .2rem; font-size: .78rem; min-height: 0; justify-content: center; }
.gs-tarih { display: grid; grid-template-columns: 1fr 1fr; gap: .45rem; }
.gs-tarih label { display: grid; gap: .2rem; font-size: .76rem; font-weight: 650; color: var(--soluk); }
.gs-hepsi { font-size: .76rem; display: flex; gap: .6rem; }
.gs-hepsi button { background: none; border: 0; padding: 0; min-height: 0; color: var(--vurgu); font-weight: 650; text-decoration: underline; cursor: pointer; font-size: .76rem; }
.gs-kagit { background: var(--yuzey); border: 1px solid var(--cizgi); border-radius: var(--r); box-shadow: var(--golge); padding: 1.3rem 1.4rem; min-width: 0; }
.gs-kagit .antet { color: var(--murekkep); }
.gs-ozet { display: grid; grid-template-columns: repeat(auto-fit, minmax(150px, 1fr)); gap: .6rem; margin: 0 0 1.1rem; }
.gs-ozet div { border: 1px solid var(--cizgi); border-radius: var(--r-k); padding: .65rem .8rem; display: grid; gap: .1rem; background: var(--yuzey-2); position: relative; overflow: hidden; }
.gs-ozet div::before { content: ""; position: absolute; inset: 0 auto 0 0; width: 3px; background: var(--vurgu); }
.gs-ozet div.cikis::before { background: var(--bakir); }
.gs-ozet span { font-size: .74rem; font-weight: 650; color: var(--soluk); }
.gs-ozet strong { font-size: 1.12rem; font-variant-numeric: tabular-nums; letter-spacing: -.01em; }
.gs-ozet small { font-size: .74rem; color: var(--soluk); }
table.gs-tablo { width: 100%; border-collapse: collapse; font-size: .86rem; }
.gs-tablo th { background: #0b1e3f; color: #fff; font-weight: 650; font-size: .78rem; text-align: left; padding: .5rem .55rem; position: sticky; top: 0; z-index: 1; }
.gs-tablo th.sayi, .gs-tablo td.sayi { text-align: right; font-variant-numeric: tabular-nums; white-space: nowrap; }
.gs-tablo td { padding: .38rem .55rem; border-bottom: 1px solid var(--cizgi); vertical-align: top; }
.gs-tablo tr.gs-bolum td { background: color-mix(in srgb, var(--lacivert) 9%, var(--yuzey)); font-weight: 750; color: var(--murekkep); padding: .55rem; border-bottom: 0; border-top: 10px solid var(--yuzey); }
.gs-tablo tr.gs-bolum svg { vertical-align: -3px; margin-right: .35rem; color: var(--vurgu); }
.gs-tablo tr.gs-bolum small { font-weight: 500; color: var(--soluk); margin-left: .5rem; }
.gs-tablo tr.gs-toplam td { background: var(--vurgu-acik); font-weight: 750; border-bottom: 0; }
.gs-tablo tr.gs-net td { background: var(--uyari-zemin); color: var(--murekkep); font-weight: 700; text-align: right; font-size: .82rem; border-bottom: 0; }
.gs-tablo tr.gs-net b.arti { color: var(--tamam); } .gs-tablo tr.gs-net b.eksi { color: var(--hata); }
.gs-tablo td.gs-tarih { white-space: nowrap; color: var(--soluk); font-variant-numeric: tabular-nums; }
.gs-tablo td.gs-aciklama { color: var(--soluk); font-size: .8rem; }
.gs-tablo a { color: inherit; text-decoration: none; border-bottom: 1px dotted var(--cizgi-koyu); }
.gs-tablo a:hover { color: var(--vurgu); border-color: var(--vurgu); }
.gs-tablo tr.gs-bakiye-bas td { background: #0b1e3f; color: #fff; font-weight: 750; letter-spacing: .02em; padding: .6rem .55rem; border-top: 14px solid var(--yuzey); }
.gs-alt { margin-top: 1.1rem; border-radius: var(--r-k); background: color-mix(in srgb, var(--bilgi) 9%, var(--yuzey)); border: 1px solid color-mix(in srgb, var(--bilgi) 30%, var(--yuzey));
  padding: .8rem 1rem; display: grid; gap: .3rem; font-size: .9rem; color: var(--murekkep); }
.gs-alt b { font-variant-numeric: tabular-nums; }
.gs-bos { text-align: center; color: var(--soluk); padding: 2rem 1rem; }
.gs-tablo-kap { overflow-x: auto; }
@media (max-width: 980px) { .gs-duzen { grid-template-columns: 1fr; } .gs-suzgec { position: static; } }
@media (max-width: 640px) { .gs-kagit { padding: .9rem .7rem; } .gs-tablo { font-size: .8rem; } .gs-tablo .gs-gizle-m { display: none; } }
@media print {
  .gs-duzen { display: block; } .gs-suzgec { display: none !important; }
  .gs-kagit { border: 0; box-shadow: none; padding: 0; }
  .gs-tablo { font-size: 8.5pt; } .gs-tablo th { position: static; background: #0b1e3f !important; color: #fff !important; -webkit-print-color-adjust: exact; print-color-adjust: exact; }
  .gs-tablo tr.gs-bolum td, .gs-tablo tr.gs-toplam td, .gs-tablo tr.gs-net td, .gs-tablo tr.gs-bakiye-bas td, .gs-ozet div, .gs-alt, .antet-logo span { -webkit-print-color-adjust: exact; print-color-adjust: exact; }
  .gs-tablo tr { break-inside: avoid; } .gs-tablo tr.gs-bolum { break-after: avoid; }
  .gs-tablo a { border: 0; }
  .gs-ozet { grid-template-columns: repeat(6, 1fr); } .gs-ozet strong { font-size: 10pt; }
}
.gs-suzgec, .gs-suzgec > *, .gs-suzgec fieldset { min-width: 0; }
.gs-suzgec input[type=date] { width: 100%; min-width: 0; padding-inline: .45rem; font-size: .85rem; }
.gs-hizli button { min-width: 0; width: 100%; }
.gs-suzgec label.kutu { line-height: 1.25; }
.gs-tablo tbody tr:hover { background: none; }
.gs-tablo tr.gs-satir td { background: var(--yuzey); }
.gs-tablo tr.gs-satir:nth-child(even) td { background: var(--yuzey-2); }
.gs-tablo tr.gs-satir:hover td { background: var(--vurgu-acik); }
.gs-tablo td.gs-belge { white-space: nowrap; font-variant-numeric: tabular-nums; }
.gs-tablo td.gs-islem { min-width: 150px; font-weight: 550; }
.gs-tablo td.gs-aciklama { min-width: 150px; }
.gs-tablo tr.gs-bos-bolum td { background: var(--yuzey-2); color: var(--soluk); font-weight: 650; border-top-width: 6px; }
.gs-tablo tr.gs-bos-bolum svg { color: var(--soluk); }
@media print { .gs-tablo tr.gs-satir:nth-child(even) td { background: #f3f5f8 !important; -webkit-print-color-adjust: exact; print-color-adjust: exact; } }
.gs-tablo th { white-space: normal; line-height: 1.25; vertical-align: bottom; }
.gs-tablo td.gs-aciklama { min-width: 0; }
.gs-tablo td.gs-islem { min-width: 120px; }
.gs-tablo th.sayi { width: 1%; }
/* giriş: firmanın kendi logosu (3.40) */
.g2-firma-kimlik { margin-left: auto; height: 46px; max-width: 150px; padding: 6px 10px; border-radius: 12px; background: #fff;
  display: grid; place-items: center; box-shadow: 0 6px 18px rgba(0, 0, 0, .25); }
.g2-firma-kimlik img { max-height: 34px; max-width: 130px; object-fit: contain; display: block; }
.g2-firma-ikon.logolu { background: #fff; border: 1px solid var(--cizgi); overflow: hidden; padding: 4px; }
.g2-firma-ikon.logolu img { max-width: 100%; max-height: 100%; object-fit: contain; }
.g2-sec-logo { grid-row: span 2; width: 30px; height: 30px; object-fit: contain; border-radius: 6px; background: #fff; }
.kagit { align-content: start; }
@media print { .tanitim-serit { display: none !important; } }

/* ---- raporlar ana sayfası: renkli simge kartları (3.41) ---- */
.rk-bas { align-items: flex-end; flex-wrap: wrap; gap: .8rem 1.2rem; }
.rk-bas .aciklama { margin: .2rem 0 0; }
.rk-ara { position: relative; display: block; flex: 0 1 340px; min-width: 220px; }
.rk-ara svg { position: absolute; left: .75rem; top: 50%; transform: translateY(-50%); color: var(--soluk); pointer-events: none; }
.rk-ara input { width: 100%; padding-left: 2.4rem; border-radius: 999px; }
.rk-one { display: grid; grid-template-columns: repeat(auto-fit, minmax(260px, 1fr)); gap: .9rem; margin: 0 0 1.6rem; }
.rk-one-kart { position: relative; display: flex; align-items: center; gap: .9rem; padding: 1rem 1.1rem; border-radius: 16px; text-decoration: none;
  color: #fff; background: radial-gradient(420px 160px at 100% 0, rgba(255,255,255,.14), transparent 60%), linear-gradient(135deg, var(--lacivert), var(--lacivert-2));
  box-shadow: 0 10px 26px -14px rgba(10, 26, 60, .7); transition: transform .18s, box-shadow .18s; }
.rk-one-kart:hover { transform: translateY(-2px); box-shadow: 0 16px 32px -14px rgba(10, 26, 60, .75); }
.rk-one-kart .rk-ikon { background: linear-gradient(135deg, var(--surgun), color-mix(in srgb, var(--surgun) 70%, #3a9d5d)); color: var(--surgun-yazi); }
.rk-one-metin { display: grid; gap: .15rem; min-width: 0; flex: 1; }
.rk-one-metin b { font-size: 1.02rem; }
.rk-one-metin small { color: rgba(255,255,255,.72); font-size: .8rem; line-height: 1.35; }
.rk-ok { opacity: .55; transition: transform .18s, opacity .18s; flex: none; }
.rk-one-kart:hover .rk-ok { transform: translateX(3px); opacity: 1; }
.rk-bolum { margin: 0 0 1.4rem; }
.rk-bolum h2 { font-size: .82rem; font-weight: 700; color: var(--soluk); letter-spacing: .02em; margin: 0 0 .65rem; display: flex; align-items: center; gap: .4rem; }
.rk-izgara { display: grid; grid-template-columns: repeat(auto-fill, minmax(118px, 1fr)); gap: .75rem; }
.rk-kart { --r1: #2f9e64; --r2: #1b7a4a; position: relative; display: grid; justify-items: center; align-content: start; gap: .6rem; text-align: center;
  padding: 1rem .55rem .85rem; min-height: 118px; border-radius: 14px; background: var(--yuzey); border: 1px solid var(--cizgi);
  box-shadow: 0 1px 2px rgba(10, 26, 60, .04), 0 4px 14px rgba(10, 26, 60, .05); text-decoration: none; color: var(--murekkep);
  transition: transform .18s, box-shadow .18s, border-color .18s; }
.rk-kart:hover, .rk-kart:focus-visible { transform: translateY(-3px); border-color: color-mix(in srgb, var(--r1) 45%, var(--cizgi));
  box-shadow: 0 14px 28px -16px color-mix(in srgb, var(--r2) 70%, transparent); }
.rk-kart b { font-size: .82rem; font-weight: 700; line-height: 1.25; max-width: 13ch; }
.rk-ikon { width: 50px; height: 50px; border-radius: 14px; display: grid; place-items: center; flex: none; color: #fff;
  background: linear-gradient(145deg, var(--r1), var(--r2)); box-shadow: 0 8px 16px -8px var(--r2), inset 0 1px 0 rgba(255,255,255,.25); transition: transform .18s; }
.rk-ikon .ikon { width: 24px; height: 24px; stroke-width: 2.1; }
.rk-ikon.buyuk { width: 52px; height: 52px; }
.rk-kart:hover .rk-ikon { transform: scale(1.06); }
.rk-kart[data-renk="yesil"] { --r1: #34b36f; --r2: #15804c; }
.rk-kart[data-renk="mavi"] { --r1: #4a90f5; --r2: #2160d6; }
.rk-kart[data-renk="turkuaz"] { --r1: #2bc3b1; --r2: #138a86; }
.rk-kart[data-renk="turuncu"] { --r1: #ffa53a; --r2: #f0731d; }
.rk-kart[data-renk="kirmizi"] { --r1: #ff6b7d; --r2: #e23a55; }
.rk-kart[data-renk="mor"] { --r1: #9b7bf0; --r2: #6a45d8; }
.rk-kart[data-renk="gri"] { --r1: #7d8aa0; --r2: #4f5b70; }
.rk-rozet { position: absolute; top: -7px; right: 8px; font-style: normal; font-size: .62rem; font-weight: 800; letter-spacing: .02em;
  padding: .12rem .45rem; border-radius: 999px; background: #f0384f; color: #fff; box-shadow: 0 3px 8px -2px rgba(240, 56, 79, .55); z-index: 1; }
.rk-rozet.guncel { background: #f0384f; }
.rk-one-kart .rk-rozet { top: 10px; right: 42px; position: absolute; }
.rk-son h2 { color: var(--vurgu); }
.rk-yok { text-align: center; color: var(--soluk); padding: 2rem 0; }
:root[data-tema="koyu"] .rk-kart { box-shadow: none; }
@media (max-width: 640px) {
  .rk-izgara { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: .55rem; }
  .rk-kart { min-height: 104px; padding: .8rem .35rem .7rem; border-radius: 12px; }
  .rk-ikon { width: 44px; height: 44px; border-radius: 12px; }
  .rk-kart b { font-size: .74rem; }
  .rk-ara { flex: 1 1 100%; }
}
@media (prefers-reduced-motion: reduce) { .rk-kart, .rk-one-kart, .rk-ikon, .rk-ok { transition: none; } .rk-kart:hover, .rk-one-kart:hover { transform: none; } }

/* ---- üst çubuk ekleri (3.42): vardiya, bağlantı, lisans, saat ---- */
.cip-vardiya { background: color-mix(in srgb, #1f9d55 12%, var(--yuzey)); border-color: color-mix(in srgb, #1f9d55 28%, var(--yuzey)); color: #15803d; font-weight: 650; }
.cip-vardiya b { font-weight: 750; }
a.cip-vardiya[href]:hover { border-color: #1f9d55; }
.nabiz { width: 8px; height: 8px; border-radius: 50%; background: #22c55e; position: relative; flex: none; }
.nabiz::after { content: ""; position: absolute; inset: -4px; border-radius: 50%; background: #22c55e; opacity: .35; animation: nabiz 2s ease-out infinite; }
@keyframes nabiz { from { transform: scale(.5); opacity: .5; } to { transform: scale(1.6); opacity: 0; } }
.cip-baglanti { background: var(--yuzey-2); }
.cip-baglanti.cevrimdisi { background: var(--hata-zemin); border-color: color-mix(in srgb, var(--hata) 35%, var(--yuzey)); color: var(--hata); }
.cip-baglanti.cevrimdisi select { color: var(--hata); }
.cip-lisans { background: color-mix(in srgb, #f59e0b 13%, var(--yuzey)); border-color: color-mix(in srgb, #f59e0b 35%, var(--yuzey)); color: #b45309; font-weight: 650; }
.cip-lisans:hover { border-color: #f59e0b; }
.ust-saat { font-size: 1.05rem; font-weight: 750; letter-spacing: .01em; font-variant-numeric: tabular-nums; color: var(--murekkep); padding: 0 .2rem; cursor: default; }
.ust .avatar { font-size: .8rem; letter-spacing: .02em; background: linear-gradient(135deg, var(--vurgu), color-mix(in srgb, var(--vurgu) 60%, var(--turkuaz))); }
:root[data-tema="koyu"] .cip-vardiya { color: #86efac; } :root[data-tema="koyu"] .cip-lisans { color: #fcd34d; }
@media (prefers-color-scheme: dark) { :root[data-tema="sistem"] .cip-vardiya { color: #86efac; } :root[data-tema="sistem"] .cip-lisans { color: #fcd34d; } }
@media (max-width: 1100px) { .ust-tam-ekran { display: none; } }
@media (max-width: 900px) { .ust-saat { display: none; } }
@media (prefers-reduced-motion: reduce) { .nabiz::after { animation: none; } }
@media print { .ust-saat, .cip-vardiya { display: none; } }
.ust .kullanici-ad { white-space: nowrap; }
@media (max-width: 1440px) { .ust .kullanici-ad { display: none; } }
@media (max-width: 640px) { .ust .m-gizle { display: none; } .ust .cip-lisans { padding: .25rem .5rem; } }

/* ---- lisans (3.43): müşteri ekranı ve Lisans Merkezi ---- */
.ls-hero { display: flex; justify-content: space-between; align-items: center; gap: 1rem 2rem; flex-wrap: wrap; padding: 1.3rem 1.5rem; border-radius: 18px; color: #fff;
  margin-bottom: var(--bosluk); background: radial-gradient(500px 200px at 100% 0, rgba(255,255,255,.16), transparent 60%), var(--degrade);
  box-shadow: 0 12px 30px -16px rgba(20, 83, 45, .7); }
.ls-hero.ls-uyari { background: radial-gradient(500px 200px at 100% 0, rgba(255,255,255,.18), transparent 60%), linear-gradient(135deg, #9a3412, #d97706); box-shadow: 0 12px 30px -16px rgba(154, 52, 18, .7); }
.ls-hero.ls-hata { background: radial-gradient(500px 200px at 100% 0, rgba(255,255,255,.14), transparent 60%), linear-gradient(135deg, #7f1d1d, #c2410c); }
.ls-hero h2 { margin: .35rem 0 .2rem; font-size: 1.45rem; color: #fff; }
.ls-hero p { margin: 0; opacity: .85; font-size: .9rem; }
.ls-rozet { display: inline-block; font-size: .72rem; font-weight: 800; letter-spacing: .06em; text-transform: uppercase; padding: .2rem .6rem; border-radius: 99px; background: rgba(255,255,255,.2); }
.ls-hero-sag { text-align: right; min-width: 200px; display: grid; gap: .2rem; justify-items: end; }
.ls-hero-sag strong { font-size: 2rem; line-height: 1; font-variant-numeric: tabular-nums; }
.ls-hero-sag small { opacity: .85; }
.ls-hero .ls-cubuk { width: 200px; background: rgba(255,255,255,.25); } .ls-hero .ls-cubuk i { background: #fff; }
.ls-cubuk { height: 7px; border-radius: 99px; background: var(--yuzey-2); overflow: hidden; border: 0; margin-top: .35rem; }
.ls-cubuk i { display: block; height: 100%; border-radius: inherit; background: linear-gradient(90deg, var(--vurgu), color-mix(in srgb, var(--vurgu) 55%, var(--turkuaz))); }
.ls-cubuk.dolu i { background: linear-gradient(90deg, #d97706, #dc2626); }
.ls-izgara { display: grid; grid-template-columns: repeat(auto-fit, minmax(340px, 1fr)); gap: var(--bosluk); align-items: start; }
.ls-olcu { display: grid; grid-template-columns: 1fr auto; gap: 0 .6rem; margin-bottom: .9rem; font-size: .92rem; }
.ls-olcu .ls-cubuk { grid-column: 1 / -1; }
.ls-olcu span { color: var(--soluk); }
.ls-kullanim h3, .ls-talep h3, .ls-yenile h3 { font-size: .9rem; margin: 1.2rem 0 .5rem; }
.ls-moduller { list-style: none; margin: 0; padding: 0; display: grid; gap: .35rem; font-size: .9rem; }
.ls-moduller li { display: flex; align-items: center; gap: .5rem; }
.ls-moduller li.acik svg { color: var(--tamam); } .ls-moduller li.kapali { color: var(--soluk); } .ls-moduller li small { margin-left: auto; font-size: .75rem; }
.ls-kucuk { display: grid; grid-template-columns: max-content minmax(0, 1fr); gap: .3rem .9rem; font-size: .85rem; margin: 1.1rem 0 0; }
.ls-kucuk dt { color: var(--soluk); white-space: nowrap; } .ls-kucuk dd { margin: 0; min-width: 0; overflow-wrap: anywhere; }
.ls-sekme { display: grid; grid-template-columns: repeat(3, 1fr); gap: .25rem; padding: .25rem; background: var(--yuzey-2); border-radius: 12px; margin-bottom: 1rem; }
.ls-sekme button { border: 0; background: transparent; min-height: 38px; font-size: .82rem; justify-content: center; border-radius: 9px; color: var(--soluk); box-shadow: none; }
.ls-sekme button[aria-selected="true"] { background: var(--yuzey); color: var(--murekkep); font-weight: 700; box-shadow: 0 1px 3px rgba(0,0,0,.08); }
.ls-kod { font-family: ui-monospace, "SF Mono", Consolas, monospace; font-size: 1.5rem; letter-spacing: .25em; text-align: center; text-transform: uppercase; font-weight: 800; }
.ls-talep { margin-top: 1.4rem; padding-top: 1rem; border-top: 1px dashed var(--cizgi-koyu); }
.ls-talep p { margin: 0 0 .5rem; color: var(--soluk); font-size: .88rem; }
.ls-talep pre, .ls-acik { white-space: pre-wrap; word-break: break-all; background: var(--yuzey-2); border: 1px solid var(--cizgi); border-radius: 10px; padding: .7rem .8rem; font-size: .8rem; margin: 0 0 .7rem; }
.ls-talep-dugme { display: flex; flex-wrap: wrap; gap: .45rem; margin: .7rem 0; } .ls-talep-dugme form { margin: 0; }
.ls-talep small { color: var(--soluk); }
.ls-adim { padding-left: 1.2rem; line-height: 1.7; }
.ls-ozet { display: grid; grid-template-columns: repeat(auto-fit, minmax(190px, 1fr)); gap: .75rem; margin-bottom: 1rem; }
.ls-ozet > a, .ls-ozet > div { display: grid; gap: .1rem; padding: .85rem 1rem; border-radius: 14px; border: 1px solid var(--cizgi); background: var(--yuzey); text-decoration: none; color: var(--murekkep); position: relative; overflow: hidden; }
.ls-ozet > *::before { content: ""; position: absolute; inset: 0 auto 0 0; width: 4px; background: var(--vurgu); }
.ls-ozet .uyari::before { background: #f59e0b; } .ls-ozet .hata::before { background: #dc2626; }
.ls-ozet span { font-size: .78rem; color: var(--soluk); font-weight: 650; } .ls-ozet b { font-size: 1.5rem; font-variant-numeric: tabular-nums; } .ls-ozet small { color: var(--soluk); font-size: .76rem; }
.ls-ozet a.secili { border-color: var(--vurgu); box-shadow: 0 0 0 2px var(--vurgu-acik); }
.ls-alt { display: block; color: var(--soluk); font-size: .76rem; font-weight: 400; }
.ls-nokta { display: inline-block; width: 8px; height: 8px; border-radius: 50%; background: var(--cizgi-koyu); margin-right: .35rem; }
.ls-nokta.acik { background: #22c55e; box-shadow: 0 0 0 3px rgba(34,197,94,.2); }
.ls-buyuk-kod { font-family: ui-monospace, "SF Mono", Consolas, monospace; font-size: 2.1rem; font-weight: 800; letter-spacing: .2em; text-align: center; padding: .9rem; border-radius: 14px;
  background: linear-gradient(135deg, var(--vurgu-acik), var(--yuzey-2)); border: 1px dashed var(--vurgu); color: var(--vurgu-koyu); margin-bottom: .6rem; }
:root[data-tema="koyu"] .ls-buyuk-kod { color: var(--surgun); }
.ls-form-satir { display: grid; grid-template-columns: repeat(auto-fit, minmax(150px, 1fr)); gap: 0 .8rem; }
.ls-form .alan small { display: block; color: var(--soluk); font-size: .74rem; margin-top: .2rem; }
.ls-modul-sec { border: 1px solid var(--cizgi); border-radius: 10px; padding: .6rem .8rem; margin: 0 0 .9rem; display: grid; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); gap: .35rem; }
.ls-modul-sec legend { font-size: .8rem; font-weight: 700; padding: 0 .3rem; } .ls-modul-sec legend small { font-weight: 400; color: var(--soluk); }
.ls-modul-sec label.kutu { display: flex; gap: .45rem; align-items: center; margin: 0; font-size: .88rem; }
.ls-yenile { margin-top: 1rem; padding-top: .6rem; border-top: 1px dashed var(--cizgi-koyu); }
.ls-yeni { margin-top: var(--bosluk); } .ls-yeni summary { cursor: pointer; list-style: none; } .ls-yeni summary::-webkit-details-marker { display: none; }
.ls-yeni summary::after { content: " ▾"; color: var(--soluk); } .ls-yeni[open] summary { margin-bottom: 1rem; }
@media (max-width: 640px) { .ls-hero-sag { justify-items: start; text-align: left; } .ls-hero .ls-cubuk { width: 100%; } .ls-sekme button { font-size: .74rem; padding: 0 .2rem; } .ls-buyuk-kod { font-size: 1.6rem; } }
.cip-lisans-hata { background: var(--hata-zemin); border-color: color-mix(in srgb, var(--hata) 35%, var(--yuzey)); color: var(--hata); }
@media (max-width: 1600px) { .ust .ust-yeni-firma { display: none; } }
@media (max-width: 1500px) { .ust .firma-adi.secim-var + form select { max-width: 190px; } }

/* ---- Destek Merkezi (3.44) ---- */
.ds-hizli { display: grid; grid-template-columns: repeat(auto-fit, minmax(230px, 1fr)); gap: .7rem; margin-bottom: 1rem; }
.ds-hizli > * { display: flex; gap: .7rem; align-items: center; padding: .8rem 1rem; border: 1px solid var(--cizgi); border-radius: 14px; background: var(--yuzey); text-decoration: none; color: var(--murekkep); }
.ds-hizli > * > .ikon { width: 34px; height: 34px; padding: 7px; border-radius: 10px; background: var(--vurgu-acik); color: var(--vurgu); flex: none; }
.ds-hizli span { display: grid; } .ds-hizli small { color: var(--soluk); font-size: .78rem; }
a.ds-hizli-a:hover, .ds-hizli a:hover { border-color: var(--vurgu); }
.ds-tur, .ds-durum { display: inline-block; font-size: .74rem; font-weight: 700; padding: .12rem .5rem; border-radius: 99px; white-space: nowrap; }
.ds-tur.ds-destek { background: #e0ecff; color: #1d4ed8; } .ds-tur.ds-talep { background: #efe7ff; color: #6d28d9; } .ds-tur.ds-hata { background: #ffe4e6; color: #be123c; }
.ds-d-acik { background: var(--uyari-zemin); color: var(--uyari); } .ds-d-yanitlandi { background: var(--tamam-zemin); color: var(--tamam); }
.ds-d-bekliyor { background: var(--bilgi-zemin); color: var(--bilgi); } .ds-d-kapandi { background: var(--yuzey-2); color: var(--soluk); }
tr.ds-yeni td { font-weight: 650; } tr.ds-yeni td:first-child { box-shadow: inset 3px 0 0 var(--vurgu); }
.ds-bos { display: grid; justify-items: center; gap: .4rem; padding: 2rem 1rem; color: var(--soluk); }
.ds-bos > .ikon { width: 46px; height: 46px; padding: 10px; border-radius: 14px; background: var(--vurgu-acik); color: var(--vurgu); }
.ds-bos b { color: var(--murekkep); font-size: 1rem; } .ds-bos .dugme { margin-top: .4rem; }
.ds-form { max-width: 860px; }
.ds-turler { border: 0; padding: 0; margin: 0 0 1rem; display: grid; grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)); gap: .6rem; }
.ds-turler legend { font-weight: 700; margin-bottom: .5rem; font-size: .9rem; }
.ds-tur-sec { position: relative; cursor: pointer; margin: 0; }
.ds-tur-sec input { position: absolute; opacity: 0; }
.ds-tur-sec > span { display: grid; grid-template-columns: auto 1fr; gap: .1rem .6rem; align-items: center; padding: .8rem .9rem; border: 1.5px solid var(--cizgi); border-radius: 14px; background: var(--yuzey); transition: .15s; height: 100%; }
.ds-tur-sec .ikon { grid-row: span 2; width: 22px; height: 22px; color: var(--soluk); }
.ds-tur-sec small { color: var(--soluk); font-size: .76rem; }
.ds-tur-sec input:checked + span { border-color: var(--vurgu); background: var(--vurgu-acik); box-shadow: 0 0 0 3px color-mix(in srgb, var(--vurgu) 15%, transparent); }
.ds-tur-sec input:checked + span .ikon { color: var(--vurgu); }
.ds-tur-sec input:focus-visible + span { outline: 2px solid var(--vurgu); outline-offset: 2px; }
.ds-ek-alan { margin: .2rem 0 1rem; display: grid; gap: .3rem; }
.ds-ek-dugme { display: inline-flex; align-items: center; gap: .45rem; width: max-content; padding: .45rem .8rem; border: 1px dashed var(--cizgi-koyu); border-radius: 10px; cursor: pointer; font-weight: 600; font-size: .86rem; }
.ds-ek-dugme:hover { border-color: var(--vurgu); color: var(--vurgu); }
.ds-ek-alan small { color: var(--soluk); font-size: .76rem; }
.ds-ek-liste { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: .4rem; }
.ds-ek-liste li { font-size: .8rem; background: var(--yuzey-2); border: 1px solid var(--cizgi); border-radius: 99px; padding: .15rem .3rem .15rem .7rem; display: flex; align-items: center; gap: .3rem; }
.ds-ek-liste button { border: 0; background: none; min-height: 0; padding: 0 .3rem; cursor: pointer; color: var(--soluk); box-shadow: none; }
.ds-acil { display: flex; gap: .5rem; align-items: center; padding: .6rem .8rem; border-radius: 10px; background: var(--hata-zemin); color: var(--hata); margin: 0 0 .6rem; }
.ds-zincir { list-style: none; margin: 0 0 1.2rem; padding: 0; display: grid; gap: 1rem; }
.ds-mesaj { display: grid; grid-template-columns: auto 1fr; gap: .7rem; align-items: start; }
.ds-mesaj.ds-destek { grid-template-columns: 1fr auto; } .ds-mesaj.ds-destek .ds-avatar { order: 2; } .ds-mesaj.ds-destek .ds-balon { order: 1; }
.ds-avatar { width: 36px; height: 36px; border-radius: 50%; display: grid; place-items: center; font-weight: 800; color: #fff; background: linear-gradient(135deg, #64748b, #334155); }
.ds-destek .ds-avatar { background: linear-gradient(135deg, var(--vurgu), color-mix(in srgb, var(--vurgu) 55%, var(--turkuaz))); }
.ds-balon { background: var(--yuzey-2); border: 1px solid var(--cizgi); border-radius: 4px 16px 16px 16px; padding: .7rem .9rem; max-width: 820px; }
.ds-destek .ds-balon { background: var(--vurgu-acik); border-color: color-mix(in srgb, var(--vurgu) 25%, var(--cizgi)); border-radius: 16px 4px 16px 16px; justify-self: end; }
.ds-ust { display: flex; justify-content: space-between; gap: 1rem; font-size: .8rem; margin-bottom: .3rem; } .ds-ust time { color: var(--soluk); }
.ds-metin { font-size: .93rem; line-height: 1.55; overflow-wrap: anywhere; }
.ds-ekler { display: flex; flex-wrap: wrap; gap: .5rem; margin-top: .6rem; }
.ds-resim img { display: block; max-width: 220px; max-height: 160px; border-radius: 10px; border: 1px solid var(--cizgi); object-fit: cover; }
.ds-dosya { display: inline-flex; gap: .3rem; align-items: center; font-size: .82rem; padding: .3rem .6rem; border: 1px solid var(--cizgi); border-radius: 8px; background: var(--yuzey); text-decoration: none; }
.ds-yanit { border-top: 1px solid var(--cizgi); padding-top: 1rem; }
.ds-duzen { display: grid; grid-template-columns: minmax(0, 1fr) 330px; gap: var(--bosluk); align-items: start; }
.ds-bilgi { min-width: 0; overflow: hidden; } .ds-bilgi h3 { font-size: .85rem; margin: 1.2rem 0 .4rem; } .ds-diger { padding-left: 1rem; font-size: .84rem; display: grid; gap: .25rem; }
.ds-durum-form { margin-top: 1rem; } .ds-durum-form label { display: grid; gap: .3rem; font-size: .8rem; color: var(--soluk); }
@media (max-width: 980px) { .ds-duzen { grid-template-columns: 1fr; } }
@media (max-width: 640px) { .ds-resim img { max-width: 150px; } .ds-mesaj, .ds-mesaj.ds-destek { grid-template-columns: 1fr; } .ds-avatar { display: none; } }

/* ---------------------------------------------------------------- Anlık bildirim (toast): sağ alt köşe, 3–5 sn */
.tost-kutu { position: fixed; z-index: 1200; right: max(1rem, env(safe-area-inset-right)); bottom: max(1rem, env(safe-area-inset-bottom));
  display: flex; flex-direction: column; align-items: flex-end; gap: .6rem; width: min(400px, calc(100vw - 2rem)); pointer-events: none; }
.tost { --t-renk: var(--tamam); --t-zemin: var(--tamam-zemin); position: relative; pointer-events: auto; width: 100%;
  display: grid; grid-template-columns: auto 1fr auto; gap: .75rem; align-items: start; padding: .85rem .8rem .95rem .9rem;
  background: var(--yuzey); color: var(--murekkep); border: 1px solid var(--cizgi); border-radius: 14px; overflow: hidden;
  box-shadow: 0 18px 40px -12px rgba(10, 26, 20, .35), 0 4px 12px -4px rgba(10, 26, 20, .18);
  font-size: .92rem; line-height: 1.4; font-weight: 500; transform-origin: 100% 100%;
  animation: tost-gir .55s cubic-bezier(.2, 1.3, .35, 1) both; }
.tost::before { content: ""; position: absolute; inset: 0 auto 0 0; width: 4px; background: var(--t-renk); }
.tost.hata, .tost.error { --t-renk: var(--hata); --t-zemin: var(--hata-zemin); }
.tost.uyari, .tost.warning { --t-renk: var(--uyari); --t-zemin: var(--uyari-zemin); }
.tost.bilgi, .tost.info, .tost.debug { --t-renk: var(--bilgi); --t-zemin: var(--bilgi-zemin); }
.tost-ikon { width: 34px; height: 34px; border-radius: 50%; display: grid; place-items: center; background: var(--t-zemin); color: var(--t-renk); flex: none; }
.tost-ikon svg { width: 20px; height: 20px; fill: none; stroke: currentColor; stroke-width: 2.4; stroke-linecap: round; stroke-linejoin: round; }
.tost-ikon .ciz { stroke-dasharray: 40; stroke-dashoffset: 40; animation: tost-ciz .5s .25s ease-out forwards; }
.tost.tamam .tost-ikon, .tost.success .tost-ikon { animation: tost-nabiz 1.4s .2s ease-out; }
.tost-metin { align-self: center; overflow-wrap: anywhere; }
.tost-metin b { display: block; font-size: .8rem; letter-spacing: .02em; color: var(--t-renk); margin-bottom: .05rem; }
.tost-kapat { width: 28px; height: 28px; border: 0; border-radius: 8px; background: transparent; color: var(--soluk); cursor: pointer; display: grid; place-items: center; margin: -.2rem -.2rem 0 0; }
.tost-kapat:hover, .tost-kapat:focus-visible { background: var(--yuzey-2); color: var(--murekkep); }
.tost-kapat svg { width: 16px; height: 16px; }
.tost-sure { position: absolute; left: 0; right: 0; bottom: 0; height: 3px; background: var(--t-renk); opacity: .55; transform-origin: left; animation: tost-sure linear forwards; }
.tost:hover .tost-sure, .tost:focus-within .tost-sure, .tost-kutu.dur .tost-sure { animation-play-state: paused; }
.tost.cik { animation: tost-cik .38s cubic-bezier(.55, 0, .75, .2) forwards; }
@keyframes tost-gir { 0% { opacity: 0; transform: translateX(110%) scale(.9); } 60% { opacity: 1; } 100% { opacity: 1; transform: none; } }
@keyframes tost-cik { to { opacity: 0; transform: translateX(60%) scale(.92); margin-top: calc(var(--t-boy, 70px) * -1 - .6rem); } }
@keyframes tost-ciz { to { stroke-dashoffset: 0; } }
@keyframes tost-sure { from { transform: scaleX(1); } to { transform: scaleX(0); } }
@keyframes tost-nabiz { 0% { box-shadow: 0 0 0 0 color-mix(in srgb, var(--t-renk) 45%, transparent); } 100% { box-shadow: 0 0 0 14px transparent; } }
.tost.hata .tost-ikon, .tost.error .tost-ikon { animation: tost-salla .5s .15s ease-in-out; }
@keyframes tost-salla { 20%, 60% { transform: translateX(-3px) rotate(-6deg); } 40%, 80% { transform: translateX(3px) rotate(6deg); } }
@media (max-width: 700px) { .tost-kutu { left: .75rem; right: .75rem; width: auto; align-items: stretch; } body:has(.alt-sekme) .tost-kutu { bottom: calc(78px + env(safe-area-inset-bottom)); } }
@media (prefers-reduced-motion: reduce) {
  .tost, .tost.cik, .tost-ikon, .tost.tamam .tost-ikon, .tost.hata .tost-ikon { animation-name: tost-sol !important; animation-duration: .2s !important; }
  .tost.cik { animation-name: tost-sol-cik !important; }
  .tost-ikon .ciz { animation: none; stroke-dashoffset: 0; }
}
@keyframes tost-sol { from { opacity: 0; } to { opacity: 1; } }
@keyframes tost-sol-cik { to { opacity: 0; } }
@media print { .tost-kutu { display: none !important; } }


/* ---------------------------------------------------------------- Menü stili (Ayarlar › Görünüm): açık / degrade */
:root[data-yan="degrade"] { --yan: linear-gradient(165deg, color-mix(in srgb, var(--lacivert) 92%, #000) 0%, var(--lacivert) 38%, color-mix(in srgb, var(--vurgu) 72%, var(--lacivert)) 100%); }
:root[data-yan="degrade"] .yan { background-attachment: local; box-shadow: inset -1px 0 0 rgba(255, 255, 255, .06); }
:root[data-yan="degrade"] .yan .oge.aktif { box-shadow: 0 6px 18px -8px color-mix(in srgb, var(--surgun) 70%, transparent); }
:root[data-yan="acik"] { --yan: var(--yuzey); --yan-yazi: color-mix(in srgb, var(--murekkep) 82%, var(--yuzey)); --yan-soluk: var(--soluk); --yan-cizgi: var(--cizgi); }
:root[data-yan="acik"] .yan { border-right: 1px solid var(--cizgi); scrollbar-color: var(--cizgi-koyu) transparent; }
:root[data-yan="acik"] .marka { color: var(--murekkep); }
:root[data-yan="acik"] .menu-ara { background: var(--yuzey-2); }
:root[data-yan="acik"] .menu-ara:hover { background: var(--vurgu-acik); border-color: var(--cizgi-koyu); color: var(--murekkep); }
:root[data-yan="acik"] .yan .oge:hover, :root[data-yan="acik"] .grup summary:hover { background: var(--yuzey-2); color: var(--murekkep); }
:root[data-yan="acik"] .yan .oge.aktif { background: var(--vurgu-acik); color: var(--vurgu); box-shadow: inset 3px 0 0 var(--vurgu); }
:root[data-yan="acik"] .yan .oge.aktif .ikon { stroke: var(--vurgu); }
:root[data-yan="acik"] .grup summary, :root[data-yan="acik"] .grup[open] > summary { color: var(--murekkep); }
:root[data-yan="acik"] .yan-alt strong { color: var(--murekkep); }
:root[data-yan="acik"] .yan-alt a { color: var(--vurgu); }
:root[data-yan="acik"] .menu-daralt:hover { color: var(--murekkep); background: var(--yuzey-2); border-color: var(--cizgi-koyu); }
:root[data-yan="acik"] .marka-logo { display: none; }
:root[data-yan="acik"] .marka-logo.renkli { display: block; }
:root[data-yan="acik"][data-tema="koyu"] .marka-logo { display: block; }
:root[data-yan="acik"][data-tema="koyu"] .marka-logo.renkli { display: none; }
:root[data-yan="acik"][data-tema="koyu"] .yan .oge.aktif { color: var(--surgun); box-shadow: inset 3px 0 0 var(--surgun); }
:root[data-yan="acik"][data-tema="koyu"] .yan .oge.aktif .ikon { stroke: var(--surgun); }
@media (prefers-color-scheme: dark) {
  :root[data-yan="acik"][data-tema="sistem"] .marka-logo { display: block; }
  :root[data-yan="acik"][data-tema="sistem"] .marka-logo.renkli { display: none; }
  :root[data-yan="acik"][data-tema="sistem"] .yan .oge.aktif { color: var(--surgun); box-shadow: inset 3px 0 0 var(--surgun); }
  :root[data-yan="acik"][data-tema="sistem"] .yan .oge.aktif .ikon { stroke: var(--surgun); }
}
/* Görünüm ekranı: menü stili kartları */
.yan-stiller { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: .9rem; margin: .8rem 0 1.4rem; }
@media (max-width: 720px) { .yan-stiller { grid-template-columns: 1fr; } }
.yan-onizleme { display: grid; grid-template-columns: 34px 1fr; gap: .6rem; height: 84px; padding: .55rem; border-radius: 9px; background: var(--yuzey-2); margin-bottom: .7rem; }
.yan-onizleme .t-yan { border-radius: 6px; display: flex; flex-direction: column; gap: 5px; padding: 8px 6px; background: var(--lacivert); }
.yan-onizleme .t-yan i { display: block; height: 4px; border-radius: 2px; background: rgba(255, 255, 255, .55); }
.yan-onizleme .t-yan i:first-child { height: 7px; background: var(--surgun); }
.yan-onizleme.acik .t-yan { background: var(--yuzey); border: 1px solid var(--cizgi); }
.yan-onizleme.acik .t-yan i { background: var(--cizgi-koyu); }
.yan-onizleme.acik .t-yan i:first-child { background: var(--vurgu); }
.yan-onizleme.degrade .t-yan { background: linear-gradient(170deg, color-mix(in srgb, var(--lacivert) 90%, #000), color-mix(in srgb, var(--vurgu) 72%, var(--lacivert))); }
.yan-onizleme .t-ic { display: flex; flex-direction: column; gap: 7px; padding-top: 4px; }
.yan-onizleme .t-ic b { height: 5px; border-radius: 3px; background: color-mix(in srgb, var(--vurgu) 30%, var(--yuzey)); }
.yan-onizleme .t-ic b:first-child { width: 55%; height: 8px; background: var(--vurgu); }


/* ---------------------------------------------------------------- Sol menü alt imza: Nefes Software logosu ve sürüm */
.yan-alt { gap: .55rem; }
.yan-alt .yan-imza { display: block; margin: 0; padding: .55rem .6rem; border-radius: var(--r-k); background: rgba(255, 255, 255, .05); border: 1px solid var(--yan-cizgi); transition: background .15s, border-color .15s; }
.yan-alt .yan-imza:hover { background: rgba(255, 255, 255, .1); border-color: rgba(255, 255, 255, .22); }
.imza-logo { display: block; width: 100%; max-width: 168px; height: auto; margin: 0 auto; }
.imza-logo.renkli { display: none; }
.yan-imza-alt { display: flex; align-items: center; justify-content: space-between; gap: .5rem; }
.yan-alt .yan-imza-alt a { margin: 0; font-weight: 600; font-size: .76rem; }
.surum-rozet { display: inline-flex; align-items: center; gap: .3rem; padding: .14rem .55rem; border-radius: 99px; font-size: .74rem; font-weight: 750; letter-spacing: .02em;
  font-variant-numeric: tabular-nums; background: color-mix(in srgb, var(--surgun) 22%, transparent); color: var(--surgun); border: 1px solid color-mix(in srgb, var(--surgun) 45%, transparent); }
.surum-rozet::before { content: ""; width: 6px; height: 6px; border-radius: 50%; background: currentColor; box-shadow: 0 0 0 3px color-mix(in srgb, currentColor 25%, transparent); }
.yan-alt .yan-istirak { color: var(--yan-soluk); font-size: .7rem; text-align: center; opacity: .85; }
:root[data-yan="acik"] .yan-alt .yan-imza { background: var(--yuzey-2); }
:root[data-yan="acik"] .yan-alt .yan-imza:hover { background: var(--vurgu-acik); border-color: var(--cizgi-koyu); }
:root[data-yan="acik"] .imza-logo { display: none; }
:root[data-yan="acik"] .imza-logo.renkli { display: block; }
:root[data-yan="acik"] .surum-rozet { background: var(--vurgu-acik); color: var(--vurgu); border-color: color-mix(in srgb, var(--vurgu) 30%, transparent); }
:root[data-yan="acik"][data-tema="koyu"] .imza-logo { display: block; }
:root[data-yan="acik"][data-tema="koyu"] .imza-logo.renkli { display: none; }
:root[data-yan="acik"][data-tema="koyu"] .yan-alt a { color: var(--surgun); }
:root[data-yan="acik"][data-tema="koyu"] .surum-rozet { background: color-mix(in srgb, var(--surgun) 18%, transparent); color: var(--surgun); }
@media (prefers-color-scheme: dark) {
  :root[data-yan="acik"][data-tema="sistem"] .imza-logo { display: block; }
  :root[data-yan="acik"][data-tema="sistem"] .imza-logo.renkli { display: none; }
  :root[data-yan="acik"][data-tema="sistem"] .yan-alt a { color: var(--surgun); }
  :root[data-yan="acik"][data-tema="sistem"] .surum-rozet { background: color-mix(in srgb, var(--surgun) 18%, transparent); color: var(--surgun); }
}

/* ---------------------------------------------------------------- Uygulama açılış ekranı (telefonda ana ekrandan açılınca) */
html.acilis-acik, html.acilis-acik body { overflow: hidden; }
.acilis { position: fixed; inset: 0; z-index: 3000; display: grid; grid-template-rows: 1fr auto; justify-items: center; color: #fff;
  padding: max(1.5rem, env(safe-area-inset-top)) 1.5rem max(1.4rem, env(safe-area-inset-bottom));
  background: radial-gradient(900px 520px at 50% 34%, rgba(27, 120, 78, .42), transparent 62%),
              radial-gradient(700px 420px at 85% 105%, rgba(25, 193, 193, .2), transparent 60%),
              radial-gradient(600px 400px at 0% 100%, rgba(18, 40, 90, .55), transparent 60%), #0e1413;
  font-family: var(--yazi); transition: opacity .45s ease, transform .45s ease; cursor: default; -webkit-user-select: none; user-select: none; }
.acilis[hidden] { display: none; }
.acilis.cik { opacity: 0; transform: scale(1.03); pointer-events: none; }
.acilis::before { content: ""; position: absolute; inset: 0; pointer-events: none; opacity: .5;
  background-image: radial-gradient(rgba(255, 255, 255, .07) 1px, transparent 1px); background-size: 22px 22px;
  mask-image: radial-gradient(circle at 50% 38%, #000 0, transparent 70%); -webkit-mask-image: radial-gradient(circle at 50% 38%, #000 0, transparent 70%); }
.acilis-orta { align-self: center; display: flex; flex-direction: column; align-items: center; text-align: center; gap: .35rem; position: relative; }
.acilis-isaret { position: relative; width: 104px; height: 104px; border-radius: 30px; display: grid; place-items: center; margin-bottom: 1.1rem;
  background: linear-gradient(150deg, #23845a, #13563c 55%, #0d3b2a); box-shadow: 0 22px 50px -14px rgba(16, 120, 80, .75), inset 0 1px 0 rgba(255, 255, 255, .18);
  animation: acilis-gir .7s cubic-bezier(.2, 1.2, .3, 1) both; }
.acilis-isaret img { width: 58px; height: auto; filter: drop-shadow(0 2px 6px rgba(0, 0, 0, .25)); }
.acilis-isaret::before { content: ""; position: absolute; inset: -9px; border-radius: 37px; padding: 2px;
  background: conic-gradient(from 0deg, transparent 0 55%, #a8d84e 75%, #19c1c1 90%, transparent);
  -webkit-mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0); -webkit-mask-composite: xor; mask-composite: exclude;
  animation: acilis-don 1.6s linear infinite; }
.acilis-isaret::after { content: ""; position: absolute; inset: 0; border-radius: inherit; box-shadow: 0 0 0 0 rgba(168, 216, 78, .45); animation: acilis-nabiz 2s ease-out .6s infinite; }
.acilis.hazir .acilis-isaret::before { animation: none; background: conic-gradient(#a8d84e, #19c1c1, #a8d84e); transition: opacity .3s; }
.acilis-ad { margin: 0; font-size: clamp(1.55rem, 6vw, 2rem); font-weight: 800; letter-spacing: -.02em; color: #fff; animation: acilis-yukari .6s .15s both; }
.acilis-alt { margin: 0; font-size: .9rem; color: rgba(255, 255, 255, .62); animation: acilis-yukari .6s .25s both; }
.acilis-firma { margin: .55rem 0 0; padding: .3rem .8rem; border-radius: 99px; font-size: .8rem; font-weight: 650; color: #d9f2c0;
  background: rgba(168, 216, 78, .12); border: 1px solid rgba(168, 216, 78, .28); animation: acilis-yukari .6s .35s both; max-width: 86vw; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.acilis-ilerleme { width: min(220px, 60vw); height: 4px; border-radius: 99px; background: rgba(255, 255, 255, .1); overflow: hidden; margin-top: 1.6rem; animation: acilis-yukari .6s .4s both; }
.acilis-ilerleme i { display: block; height: 100%; width: 8%; border-radius: inherit; background: linear-gradient(90deg, #a8d84e, #19c1c1);
  box-shadow: 0 0 12px rgba(168, 216, 78, .6); transition: width .5s cubic-bezier(.3, .8, .3, 1); position: relative; overflow: hidden; }
.acilis-ilerleme i::after { content: ""; position: absolute; inset: 0; background: linear-gradient(90deg, transparent, rgba(255, 255, 255, .55), transparent); animation: acilis-parilti 1.1s linear infinite; }
.acilis-durum { margin: .6rem 0 0; font-size: .78rem; color: rgba(255, 255, 255, .6); min-height: 1.2em; letter-spacing: .01em; }
.acilis.hazir .acilis-durum { color: #a8d84e; font-weight: 650; }
.acilis-alt-blok { display: flex; flex-direction: column; align-items: center; gap: .75rem; animation: acilis-yukari .7s .5s both; }
.acilis-imza { width: 150px; height: auto; opacity: .92; }
.acilis-teknik { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; justify-content: center; gap: .4rem; font-size: .72rem; color: rgba(255, 255, 255, .7); }
.acilis-teknik li { display: inline-flex; align-items: center; gap: .35rem; padding: .25rem .6rem; border-radius: 99px; background: rgba(255, 255, 255, .06); border: 1px solid rgba(255, 255, 255, .1); max-width: 70vw; }
.acilis-teknik li span { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.acilis-teknik b { color: #a8d84e; font-weight: 750; letter-spacing: .02em; }
.acilis-teknik .ikon { width: 12px; height: 12px; color: #a8d84e; }
.acilis-teknik .guvensiz .ikon { color: #f0c463; }
.acilis-nokta { width: 7px; height: 7px; border-radius: 50%; background: #4ade80; box-shadow: 0 0 0 3px rgba(74, 222, 128, .2); }
.acilis-teknik .yok .acilis-nokta { background: #f0c463; box-shadow: 0 0 0 3px rgba(240, 196, 99, .2); }
@keyframes acilis-gir { from { opacity: 0; transform: scale(.7); } to { opacity: 1; transform: none; } }
@keyframes acilis-yukari { from { opacity: 0; transform: translateY(10px); } to { opacity: 1; transform: none; } }
@keyframes acilis-don { to { transform: rotate(360deg); } }
@keyframes acilis-nabiz { 0% { box-shadow: 0 0 0 0 rgba(168, 216, 78, .4); } 100% { box-shadow: 0 0 0 22px rgba(168, 216, 78, 0); } }
@keyframes acilis-parilti { from { transform: translateX(-100%); } to { transform: translateX(100%); } }
@media (prefers-reduced-motion: reduce) {
  .acilis *, .acilis::before, .acilis-isaret::before, .acilis-isaret::after { animation: none !important; }
}
@media print { .acilis { display: none !important; } }

/* ---------------------------------------------------------------- Kullanım kılavuzu (yardım merkezi) */
.yk-kahraman { display: grid; grid-template-columns: minmax(0, 1fr) 300px; gap: 1.4rem; align-items: center; padding: 2rem 2.1rem; border-radius: calc(var(--r) + 8px);
  color: #fff; background: radial-gradient(700px 300px at 100% 0, rgba(255, 255, 255, .16), transparent 60%), var(--degrade); box-shadow: 0 16px 40px -18px var(--degrade-golge); margin-bottom: 1.6rem; position: relative; }
.yk-kahraman h1 { color: #fff; margin: .55rem 0 .35rem; font-size: clamp(1.5rem, 3vw, 2.1rem); letter-spacing: -.02em; }
.yk-kahraman p { margin: 0 0 1rem; color: rgba(255, 255, 255, .82); }
.yk-rozet { display: inline-flex; align-items: center; gap: .4rem; padding: .25rem .7rem; border-radius: 99px; font-size: .78rem; font-weight: 650; background: rgba(255, 255, 255, .16); border: 1px solid rgba(255, 255, 255, .25); }
.yk-rozet.koyu { background: var(--vurgu-acik); color: var(--vurgu); border-color: transparent; text-decoration: none; }
.yk-kahraman-ic { position: relative; }
.yk-ara { display: flex; align-items: center; gap: .6rem; background: var(--yuzey); color: var(--murekkep); border-radius: 14px; padding: .25rem .5rem .25rem .95rem; box-shadow: 0 10px 30px -10px rgba(0, 0, 0, .35); }
.yk-ara .ikon { color: var(--soluk); }
.yk-ara input { flex: 1; border: 0; background: transparent; font-size: 1.05rem; min-height: 52px; outline: none; color: var(--murekkep); box-shadow: none; padding: 0; }
.yk-ara kbd, .yk-kart-dugme kbd { font: inherit; font-size: .72rem; padding: .05rem .4rem; border: 1px solid var(--cizgi-koyu); border-radius: 5px; color: var(--soluk); }
.yk-sonuc { position: absolute; z-index: 20; left: 0; right: 0; margin: .4rem 0 0; padding: .35rem; list-style: none; background: var(--yuzey); color: var(--murekkep);
  border: 1px solid var(--cizgi); border-radius: 14px; box-shadow: var(--golge-buyuk); max-height: 420px; overflow: auto; }
.yk-sonuc li a { display: grid; gap: .1rem; padding: .6rem .75rem; border-radius: 10px; text-decoration: none; color: inherit; }
.yk-sonuc li a small { color: var(--soluk); font-size: .8rem; }
.yk-sonuc li.secili a, .yk-sonuc li a:hover { background: var(--vurgu-acik); }
.yk-sonuc mark { background: color-mix(in srgb, var(--surgun) 55%, transparent); color: inherit; border-radius: 3px; padding: 0 1px; }
.yk-sonuc .yk-bos { padding: .8rem; color: var(--soluk); font-size: .9rem; }
.yk-oneriler { display: flex; flex-wrap: wrap; gap: .4rem; margin-top: .9rem; }
.yk-oneriler button { min-height: 0; padding: .3rem .75rem; border-radius: 99px; border: 1px solid rgba(255, 255, 255, .3); background: rgba(255, 255, 255, .1); color: #fff; font-size: .82rem; cursor: pointer; }
.yk-oneriler button:hover { background: rgba(255, 255, 255, .22); }
.yk-kahraman-yan { display: grid; gap: .6rem; }
.yk-kart-dugme { display: flex; gap: .75rem; align-items: center; padding: .8rem .95rem; border-radius: 14px; text-decoration: none; color: #fff;
  background: rgba(255, 255, 255, .12); border: 1px solid rgba(255, 255, 255, .22); transition: background .15s, transform .15s; }
a.yk-kart-dugme:hover { background: rgba(255, 255, 255, .2); transform: translateY(-1px); }
.yk-kart-dugme .ikon { width: 22px; height: 22px; flex: none; }
.yk-kart-dugme span { display: grid; } .yk-kart-dugme small { color: rgba(255, 255, 255, .75); font-size: .78rem; }
.yk-kart-dugme kbd { color: #fff; border-color: rgba(255, 255, 255, .4); }
.yk-bolum-bas { font-size: 1.1rem; margin: 1.4rem 0 .8rem; display: flex; align-items: center; gap: .6rem; }
.yk-bolum-bas::before { content: ""; width: 4px; height: 1.2em; border-radius: 2px; background: var(--vurgu); }
.yk-populer { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .6rem; }
.yk-pop, .yk-liste-oge { display: flex; align-items: center; gap: .8rem; padding: .8rem .95rem; border-radius: var(--r); background: var(--yuzey); border: 1px solid var(--cizgi);
  text-decoration: none; color: var(--murekkep); transition: border-color .15s, transform .15s, box-shadow .15s; }
.yk-pop:hover, .yk-liste-oge:hover { border-color: var(--vurgu); transform: translateY(-1px); box-shadow: var(--golge); }
.yk-pop > span:nth-child(2), .yk-liste-oge > span:nth-child(2) { flex: 1; display: grid; gap: .1rem; min-width: 0; }
.yk-pop small, .yk-liste-oge small { color: var(--soluk); font-size: .8rem; }
.yk-pop > .ikon, .yk-liste-oge > .ikon { color: var(--soluk); }
.yk-pop-no { width: 30px; height: 30px; flex: none; display: grid; place-items: center; border-radius: 9px; background: var(--vurgu-acik); color: var(--vurgu); font-weight: 750; font-size: .85rem; }
.yk-kategoriler { display: grid; grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)); gap: .9rem; }
.yk-kat { background: var(--yuzey); border: 1px solid var(--cizgi); border-radius: var(--r); padding: 1rem 1.05rem; display: flex; flex-direction: column; gap: .5rem; }
.yk-kat-bas { display: flex; align-items: center; gap: .75rem; text-decoration: none; color: var(--murekkep); }
.yk-kat-bas span:nth-child(2) { flex: 1; display: grid; } .yk-kat-bas small { color: var(--soluk); font-size: .8rem; }
.yk-kat-bas em { font-style: normal; font-size: .75rem; font-weight: 700; color: var(--soluk); background: var(--yuzey-2); border-radius: 99px; padding: .1rem .5rem; }
.yk-kat-ikon { width: 42px; height: 42px; flex: none; border-radius: 12px; display: grid; place-items: center; color: #fff; background: var(--degrade); box-shadow: 0 6px 14px -6px var(--degrade-golge); }
.yk-kat-ikon.buyuk { width: 58px; height: 58px; border-radius: 16px; } .yk-kat-ikon.buyuk .ikon { width: 26px; height: 26px; }
.yk-kat ul { list-style: none; margin: 0; padding: 0; display: grid; gap: .1rem; border-top: 1px dashed var(--cizgi); padding-top: .45rem; }
.yk-kat ul a { display: block; padding: .3rem .4rem; border-radius: 7px; text-decoration: none; color: var(--murekkep); font-size: .88rem; }
.yk-kat ul a::before { content: "›"; color: var(--vurgu); margin-right: .45rem; font-weight: 700; }
.yk-kat ul a:hover { background: var(--yuzey-2); color: var(--vurgu); }
.yk-tumu { font-size: .82rem; font-weight: 650; color: var(--vurgu); text-decoration: none; margin-top: auto; }
.yk-cta { display: flex; flex-wrap: wrap; gap: 1rem; align-items: center; justify-content: space-between; margin-top: 1.8rem; padding: 1.3rem 1.5rem; border-radius: var(--r);
  background: var(--yuzey); border: 1px solid var(--cizgi); border-left: 5px solid var(--vurgu); }
.yk-cta h2 { margin: 0 0 .2rem; font-size: 1.1rem; } .yk-cta p { margin: 0; color: var(--soluk); }
.yk-cta-dugmeler { display: flex; flex-wrap: wrap; gap: .5rem; }
.yk-iz { display: flex; gap: .45rem; align-items: center; font-size: .85rem; color: var(--soluk); margin-bottom: .9rem; flex-wrap: wrap; }
.yk-iz a { color: var(--vurgu); text-decoration: none; font-weight: 600; }
.yk-kat-baslik { display: flex; gap: 1rem; align-items: center; margin-bottom: 1.1rem; }
.yk-kat-baslik h1 { margin: 0; } .yk-kat-baslik p { margin: .15rem 0 0; color: var(--soluk); }
.yk-liste { display: grid; gap: .55rem; }
.yk-diger-kat { display: flex; flex-wrap: wrap; gap: .4rem; margin-top: 1.6rem; }
.yk-diger-kat a { display: inline-flex; gap: .4rem; align-items: center; padding: .35rem .75rem; border-radius: 99px; border: 1px solid var(--cizgi); background: var(--yuzey); text-decoration: none; color: var(--murekkep); font-size: .82rem; }
.yk-diger-kat a:hover { border-color: var(--vurgu); color: var(--vurgu); }
.yk-duzen { display: grid; grid-template-columns: 220px minmax(0, 1fr) 250px; gap: 1.3rem; align-items: start; }
.yk-yan, .yk-sag { position: sticky; top: 76px; display: grid; gap: .2rem; }
.yk-yan a { display: flex; gap: .55rem; align-items: center; padding: .45rem .6rem; border-radius: 9px; text-decoration: none; color: var(--soluk); font-size: .86rem; }
.yk-yan a:hover { background: var(--yuzey); color: var(--murekkep); }
.yk-yan a.aktif { background: var(--vurgu-acik); color: var(--vurgu); font-weight: 680; }
.yk-sag { gap: .8rem; }
.yk-makale { background: var(--yuzey); border: 1px solid var(--cizgi); border-radius: calc(var(--r) + 4px); padding: 1.6rem 1.9rem 1.4rem; min-width: 0; }
.yk-makale h1 { margin: .6rem 0 .3rem; font-size: clamp(1.4rem, 2.6vw, 1.85rem); letter-spacing: -.02em; }
.yk-giris { font-size: 1.05rem; color: var(--soluk); margin: 0 0 1rem; }
.yk-arac { display: flex; flex-wrap: wrap; gap: .5rem; padding-bottom: 1.1rem; margin-bottom: 1.2rem; border-bottom: 1px solid var(--cizgi); }
.yk-icerik { line-height: 1.7; font-size: .98rem; }
.yk-icerik h2 { font-size: 1.2rem; margin: 1.7rem 0 .6rem; scroll-margin-top: 80px; display: flex; gap: .55rem; align-items: center; }
.yk-icerik h2::before { content: ""; width: 4px; height: 1.1em; border-radius: 2px; background: var(--vurgu); }
.yk-icerik h3 { font-size: 1.02rem; margin: 1.2rem 0 .4rem; }
.yk-icerik p { margin: 0 0 .8rem; }
.yk-icerik code { background: var(--yuzey-2); border: 1px solid var(--cizgi); border-radius: 5px; padding: .05rem .35rem; font-size: .88em; }
.yk-icerik ul { padding-left: 1.2rem; margin: 0 0 .9rem; } .yk-icerik ul li { margin: .2rem 0; } .yk-icerik ul li::marker { color: var(--vurgu); }
.yk-ok { color: var(--vurgu); font-weight: 700; }
.yk-alt-madde { display: block; position: relative; padding-left: 1rem; margin-top: .25rem; }
.yk-alt-madde::before { content: "•"; position: absolute; left: .2rem; color: var(--vurgu); font-weight: 700; }
.yk-icerik a { color: var(--vurgu); font-weight: 600; }
.yk-icerik a.yk-ekran { display: inline-flex; align-items: center; padding: .02rem .5rem; border-radius: 6px; background: var(--vurgu-acik); text-decoration: none; }
ol.yk-adimlar { list-style: none; counter-reset: adim; padding: 0; margin: 0 0 1rem; display: grid; gap: .1rem; }
ol.yk-adimlar > li { counter-increment: adim; position: relative; padding: .45rem 0 .75rem 2.9rem; }
ol.yk-adimlar > li::before { content: counter(adim); position: absolute; left: 0; top: .3rem; width: 30px; height: 30px; border-radius: 50%; display: grid; place-items: center;
  background: var(--vurgu); color: #fff; font-weight: 750; font-size: .85rem; box-shadow: 0 0 0 4px var(--vurgu-acik); }
ol.yk-adimlar > li:not(:last-child)::after { content: ""; position: absolute; left: 14px; top: 2.3rem; bottom: -.1rem; width: 2px; background: var(--cizgi); }
.yk-kutu { display: flex; gap: .75rem; padding: .85rem 1rem; border-radius: 12px; margin: .9rem 0; border: 1px solid; line-height: 1.55; break-inside: avoid; }
.yk-kutu > .ikon { width: 20px; height: 20px; flex: none; margin-top: .15rem; }
.yk-kutu > div > b { display: block; margin-bottom: .1rem; }
.yk-ipucu { background: var(--tamam-zemin); border-color: color-mix(in srgb, var(--tamam) 25%, transparent); } .yk-ipucu > .ikon, .yk-ipucu > div > b { color: var(--tamam); }
.yk-dikkat { background: var(--uyari-zemin); border-color: color-mix(in srgb, var(--uyari) 25%, transparent); } .yk-dikkat > .ikon, .yk-dikkat > div > b { color: var(--uyari); }
.yk-not { background: var(--bilgi-zemin); border-color: color-mix(in srgb, var(--bilgi) 25%, transparent); } .yk-not > .ikon, .yk-not > div > b { color: var(--bilgi); }
.yk-sorun { background: var(--yuzey-2); border-color: var(--cizgi); } .yk-sorun > .ikon { color: var(--vurgu); }
.yk-faydali { display: flex; flex-wrap: wrap; align-items: center; gap: .5rem; margin-top: 1.6rem; padding: .9rem 1rem; border-radius: 12px; background: var(--yuzey-2); font-weight: 600; }
.yk-faydali > span:first-child { margin-right: .4rem; }
.yk-tesekkur { color: var(--tamam); }
.yk-onceki-sonraki { display: grid; grid-template-columns: 1fr 1fr; gap: .7rem; margin-top: 1rem; }
.yk-onceki-sonraki a { display: grid; gap: .1rem; padding: .75rem .9rem; border: 1px solid var(--cizgi); border-radius: 12px; text-decoration: none; color: var(--murekkep); }
.yk-onceki-sonraki a:hover { border-color: var(--vurgu); } .yk-onceki-sonraki a.sag { text-align: right; grid-column: 2; }
.yk-onceki-sonraki small { color: var(--soluk); }
.yk-icindekiler { display: grid; gap: .1rem; padding: .9rem 1rem; border-radius: var(--r); background: var(--yuzey); border: 1px solid var(--cizgi); font-size: .86rem; }
.yk-icindekiler b { font-size: .75rem; letter-spacing: .05em; text-transform: uppercase; color: var(--soluk); margin-bottom: .3rem; }
.yk-icindekiler a { padding: .25rem .5rem; border-left: 2px solid var(--cizgi); text-decoration: none; color: var(--murekkep); }
.yk-icindekiler a:hover { border-color: var(--vurgu); color: var(--vurgu); }
.yk-destek-kart { display: flex; gap: .7rem; align-items: center; padding: .9rem 1rem; border-radius: var(--r); text-decoration: none; color: #fff; background: var(--degrade); }
.yk-destek-kart span { display: grid; } .yk-destek-kart small { color: rgba(255, 255, 255, .8); }
@media (max-width: 1180px) { .yk-duzen { grid-template-columns: minmax(0, 1fr) 240px; } .yk-yan { display: none; } }
@media (max-width: 860px) {
  .yk-kahraman { grid-template-columns: 1fr; padding: 1.4rem 1.2rem; }
  .yk-populer { grid-template-columns: 1fr; }
  .yk-duzen { grid-template-columns: 1fr; } .yk-sag { position: static; }
  .yk-makale { padding: 1.2rem 1.1rem; }
}
@media print {
  .yk-yan, .yk-sag, .yk-arac, .yk-faydali, .yk-onceki-sonraki, .yk-iz { display: none !important; }
  .yk-duzen { display: block; } .yk-makale { border: 0; padding: 0; }
  ol.yk-adimlar > li { break-inside: avoid; }
}

/* Çoklu onay kutusu (kullanıcı formu: bölümler, şubeler, alım yerleri): kutucuklu çipler */
.alan.coklu > div[id] { display: flex; flex-wrap: wrap; gap: .45rem; }
.alan.coklu > div[id] > div > label { display: inline-flex; align-items: center; gap: .45rem; margin: 0; padding: .45rem .75rem; border: 1px solid var(--cizgi);
  border-radius: 99px; background: var(--yuzey); font-weight: 500; font-size: .88rem; color: var(--murekkep); cursor: pointer; transition: border-color .15s, background .15s; }
.alan.coklu > div[id] > div > label:hover { border-color: var(--cizgi-koyu); }
.alan.coklu > div[id] > div > label:has(input:checked) { border-color: var(--vurgu); background: var(--vurgu-acik); color: var(--vurgu); font-weight: 650; }
.alan.coklu input[type=checkbox] { width: 16px; height: 16px; margin: 0; accent-color: var(--vurgu); }

/* ---------- 3.53 menü düzeni: üst menü (yatay, açılır geniş paneller) ve sık kullanılanlar ---------- */
.ust-menu { display: none; }
@media (min-width: 961px) {
  :root[data-menu="ust"] .kabuk { grid-template-columns: minmax(0, 1fr); }
  :root[data-menu="ust"] .yan { display: none; }
  :root[data-menu="ust"] .ust { position: relative; }
  :root[data-menu="ust"] .ust-menu { display: flex; }
}
.ust-menu { position: sticky; top: 0; z-index: 26; align-items: center; gap: .9rem; min-height: 56px; padding: .45rem 1.3rem; background: var(--yan); color: var(--yan-yazi);
            box-shadow: 0 1px 0 var(--yan-cizgi), 0 8px 24px -18px rgba(10, 26, 60, .55); }
.um-marka { display: flex; align-items: center; gap: .55rem; color: #fff; text-decoration: none; font-weight: 780; font-size: 1.05rem; letter-spacing: -.02em; white-space: nowrap; }
.um-marka .marka-logo { width: 30px; height: 30px; }
.um-sekmeler { display: flex; align-items: center; gap: .2rem; flex-wrap: wrap; flex: 1; min-width: 0; }
.um-bolum { position: relative; }
.um-sekme { display: inline-flex; align-items: center; gap: .45rem; padding: .48rem .8rem; min-height: 0; border: 0; border-radius: 99px; background: none; color: var(--yan-yazi);
            font: inherit; font-size: .9rem; font-weight: 600; text-decoration: none; cursor: pointer; white-space: nowrap; transition: background .15s, color .15s; }
button.um-sekme::after { content: ""; width: 6px; height: 6px; margin: -3px 0 0 .1rem; border-right: 1.6px solid currentColor; border-bottom: 1.6px solid currentColor; transform: rotate(45deg); opacity: .65; transition: transform .18s; }
.um-sekme:hover, .um-sekme[aria-expanded="true"] { background: rgba(255, 255, 255, .1); color: #fff; }
.um-sekme[aria-expanded="true"]::after { transform: rotate(-135deg); margin-top: 3px; }
.um-sekme.aktif { background: var(--surgun); color: var(--surgun-yazi); }
.um-sekme.aktif .ikon { stroke: var(--surgun-yazi); }
.um-favori .ikon { stroke: #f5b301; fill: #f5b301; }
.um-ara { display: flex; align-items: center; gap: .5rem; padding: .42rem .7rem; min-height: 0; width: auto; border: 1px solid var(--yan-cizgi); border-radius: 99px; background: rgba(255, 255, 255, .06);
          color: var(--yan-soluk); font: inherit; font-size: .84rem; cursor: pointer; white-space: nowrap; }
.um-ara:hover { background: rgba(255, 255, 255, .12); color: #fff; }
.um-ara kbd { font: inherit; font-size: .68rem; padding: 0 .3rem; border: 1px solid var(--yan-cizgi); border-radius: 4px; }
.um-panel { position: absolute; top: calc(100% + 10px); left: 0; z-index: 40; min-width: 260px; max-width: calc(100vw - 2rem); padding: 1rem 1.1rem 1.05rem;
            background: var(--yuzey); color: var(--murekkep); border: 1px solid var(--cizgi); border-radius: var(--r); box-shadow: var(--golge-buyuk);
            animation: um-ac .16s ease-out; transform-origin: top left; }
.um-panel[hidden] { display: none; }
@keyframes um-ac { from { opacity: 0; transform: translateY(-6px) scale(.985); } to { opacity: 1; transform: none; } }
@media (prefers-reduced-motion: reduce) { .um-panel { animation: none; } }
.um-izgara { display: grid; grid-template-columns: repeat(var(--sutun, 1), minmax(185px, 1fr)); gap: .4rem 1.3rem; }
.um-sutun { display: flex; flex-direction: column; gap: 1px; min-width: 0; }
.um-grup-baslik { display: flex; align-items: center; gap: .5rem; margin: 0 0 .35rem; padding: 0 .55rem .5rem; border-bottom: 1px solid var(--cizgi);
                  font-size: .8rem; font-weight: 720; letter-spacing: .01em; color: var(--murekkep); white-space: nowrap; }
.um-grup-baslik .ikon { width: 26px; height: 26px; padding: 5px; border-radius: 8px; background: var(--vurgu-acik); stroke: var(--vurgu); }
.um-link { display: flex; align-items: center; gap: .55rem; padding: .4rem .55rem; border-radius: var(--r-k); color: var(--murekkep); text-decoration: none; font-size: .88rem; white-space: nowrap; }
.um-link .ikon { stroke: var(--soluk); }
.um-link:hover, .um-link:focus-visible { background: var(--yuzey-2); color: var(--vurgu-metin, var(--vurgu)); }
.um-link:hover .ikon { stroke: var(--vurgu); }
.um-link.aktif { background: var(--vurgu-acik); color: var(--vurgu-metin, var(--vurgu)); font-weight: 680; box-shadow: inset 3px 0 0 var(--vurgu); }
.um-alt-linkler { display: flex; flex-wrap: wrap; gap: .25rem .4rem; margin-top: .7rem; padding-top: .7rem; border-top: 1px dashed var(--cizgi); }
.um-panel-baslik { font-weight: 720; font-size: .85rem; margin: 0 .55rem .55rem; display: flex; flex-direction: column; }
.um-panel-baslik small { font-weight: 450; color: var(--soluk); font-size: .76rem; }
.um-favoriler { display: grid; grid-template-columns: repeat(2, minmax(190px, 1fr)); gap: 1px .6rem; }
.um-panel-dar .um-favoriler { grid-template-columns: repeat(auto-fill, minmax(200px, 1fr)); min-width: 420px; }
@media (max-width: 1280px) { .um-marka span, .um-ara span, .um-ara kbd { display: none; } .um-sekme { padding: .45rem .62rem; } }
/* açık menü stili üst menüde de beyaz zemin */
:root[data-yan="acik"] .ust-menu { border-bottom: 1px solid var(--cizgi); box-shadow: 0 6px 20px -18px rgba(10, 26, 60, .4); }
:root[data-yan="acik"] .um-marka { color: var(--murekkep); }
:root[data-yan="acik"] .um-sekme:hover, :root[data-yan="acik"] .um-sekme[aria-expanded="true"] { background: var(--yuzey-2); color: var(--murekkep); }
:root[data-yan="acik"] .um-sekme.aktif { background: var(--vurgu-acik); color: var(--vurgu-metin, var(--vurgu)); }
:root[data-yan="acik"] .um-sekme.aktif .ikon { stroke: var(--vurgu); }
:root[data-yan="acik"] .um-ara { background: var(--yuzey-2); }
:root[data-yan="acik"] .um-ara:hover { color: var(--murekkep); }
:root[data-yan="acik"] .um-marka .marka-logo { display: none; }
:root[data-yan="acik"] .um-marka .marka-logo.renkli { display: block; }
:root[data-yan="acik"][data-tema="koyu"] .um-marka .marka-logo { display: block; }
:root[data-yan="acik"][data-tema="koyu"] .um-marka .marka-logo.renkli { display: none; }

/* sık kullanılanlar: yıldız düğmesi ve yan menü bölümü */
.favori-dugme.secili .ikon { stroke: #e6a400; fill: #f5b301; }
.favori-dugme.zipla .ikon { animation: yildiz-zipla .45s ease-out; }
@keyframes yildiz-zipla { 0% { transform: scale(1); } 40% { transform: scale(1.35) rotate(-12deg); } 100% { transform: scale(1); } }
@media (prefers-reduced-motion: reduce) { .favori-dugme.zipla .ikon { animation: none; } }
.menu-favori-baslik { display: flex; align-items: center; gap: .35rem; }
.menu-favori-baslik .ikon { stroke: #f5b301; fill: #f5b301; width: 12px; height: 12px; }
:root[data-menu="dar"] .yan:not(:hover):not(:focus-within) .favori-oge span { display: none; }

/* görünüm ekranı: menü düzeni kartları */
.duzen-onizleme { display: grid; height: 84px; padding: .5rem; gap: .45rem; border-radius: 9px; background: var(--yuzey-2); margin-bottom: .7rem; }
.duzen-onizleme.genis { grid-template-columns: 38px 1fr; }
.duzen-onizleme.dar { grid-template-columns: 14px 1fr; }
.duzen-onizleme.ust { grid-template-rows: 14px 1fr; }
.duzen-onizleme .d-menu { border-radius: 5px; background: var(--lacivert); display: flex; gap: 4px; padding: 5px; flex-direction: column; }
.duzen-onizleme.ust .d-menu { flex-direction: row; align-items: center; padding: 3px 6px; }
.duzen-onizleme .d-menu i { display: block; height: 4px; border-radius: 2px; background: rgba(255, 255, 255, .55); }
.duzen-onizleme.dar .d-menu i { height: 4px; width: 4px; }
.duzen-onizleme.ust .d-menu i { width: 18px; height: 4px; }
.duzen-onizleme .d-menu i:first-child { background: var(--surgun); }
.duzen-onizleme .d-ic { display: flex; flex-direction: column; gap: 7px; padding: 3px 2px; position: relative; }
.duzen-onizleme .d-ic b { height: 5px; border-radius: 3px; background: color-mix(in srgb, var(--vurgu) 30%, var(--yuzey)); }
.duzen-onizleme .d-ic b:first-child { width: 55%; height: 8px; background: var(--vurgu); }
.duzen-onizleme.ust .d-ic u { position: absolute; left: 22px; top: -2px; width: 92px; height: 34px; border-radius: 5px; background: var(--yuzey); border: 1px solid var(--cizgi); box-shadow: 0 6px 14px -6px rgba(10, 26, 60, .35); }
.favori-liste { list-style: none; margin: 0; padding: 0; display: grid; gap: .35rem; }
.favori-liste li { display: grid; grid-template-columns: auto minmax(0, 1fr) auto auto; align-items: center; gap: .65rem; padding: .5rem .7rem; border: 1px solid var(--cizgi); border-radius: var(--r-k); background: var(--yuzey); }
.favori-liste li a { font-weight: 620; text-decoration: none; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.favori-liste li small { color: var(--soluk); font-size: .75rem; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; max-width: 22ch; }
@media (max-width: 720px) { .favori-liste li small { display: none; } .favori-liste li { grid-template-columns: auto minmax(0, 1fr) auto; } }
@media (max-width: 520px) { .favori-dugme { display: none; } }

/* ---------- 3.54 Yenilikler sayfası ---------- */
.yn { --t-yeni: var(--vurgu); --t-iyilestirme: #0284c7; --t-duzeltme: #c2410c; --t-guvenlik: #047857; }
:root[data-tema="koyu"] .yn { --t-iyilestirme: #38bdf8; --t-duzeltme: #fb923c; --t-guvenlik: #34d399; --t-yeni: color-mix(in srgb, var(--vurgu) 50%, #fff); }
@media (prefers-color-scheme: dark) { :root[data-tema="sistem"] .yn { --t-iyilestirme: #38bdf8; --t-duzeltme: #fb923c; --t-guvenlik: #34d399; --t-yeni: color-mix(in srgb, var(--vurgu) 50%, #fff); } }
.yn .t-yeni { --t: var(--t-yeni); } .yn .t-iyilestirme { --t: var(--t-iyilestirme); }
.yn .t-duzeltme { --t: var(--t-duzeltme); } .yn .t-guvenlik { --t: var(--t-guvenlik); } .yn .t-okunmadi { --t: #e11d48; }

.yn-hero { position: relative; overflow: hidden; display: flex; justify-content: space-between; align-items: flex-end; gap: 1.5rem 2rem; flex-wrap: wrap;
           padding: 2rem 2.2rem; border-radius: calc(var(--r) + 6px); background: var(--degrade); color: #fff; box-shadow: 0 22px 48px -26px var(--degrade-golge); }
.yn-hale { position: absolute; border-radius: 50%; filter: blur(2px); pointer-events: none; }
.yn-hale.bir { width: 340px; height: 340px; right: -90px; top: -150px; background: radial-gradient(circle, rgba(255, 255, 255, .22), transparent 68%); }
.yn-hale.iki { width: 260px; height: 260px; left: 38%; bottom: -170px; background: radial-gradient(circle, rgba(255, 255, 255, .14), transparent 70%); }
.yn-hero-sol { position: relative; max-width: 640px; }
.yn-ust-yazi { display: inline-flex; align-items: center; gap: .4rem; font-size: .78rem; font-weight: 650; letter-spacing: .02em; padding: .25rem .65rem; border-radius: 99px; background: rgba(255, 255, 255, .16); }
.yn-hero h1 { font-size: 2.3rem; margin: .7rem 0 .4rem; color: #fff; letter-spacing: -.035em; }
.yn-hero p { margin: 0; opacity: .9; line-height: 1.55; }
.yn-surum-hap { display: inline-flex; align-items: center; gap: .45rem; margin-top: 1.1rem; padding: .45rem .85rem; border-radius: 99px; background: rgba(0, 0, 0, .2); font-size: .86rem; }
.yn-surum-hap b { font-variant-numeric: tabular-nums; }
.yn-ayrac { opacity: .5; }
.yn-nokta { width: 8px; height: 8px; border-radius: 50%; background: #4ade80; box-shadow: 0 0 0 0 rgba(74, 222, 128, .7); animation: yn-nabiz 2s infinite; flex: none; }
.t-okunmadi .yn-nokta { background: #e11d48; box-shadow: none; animation: none; }
@keyframes yn-nabiz { 70% { box-shadow: 0 0 0 8px rgba(74, 222, 128, 0); } 100% { box-shadow: 0 0 0 0 rgba(74, 222, 128, 0); } }
.yn-sayilar { position: relative; display: grid; grid-template-columns: repeat(3, auto); gap: .7rem; margin: 0; }
.yn-sayilar div { min-width: 104px; padding: .75rem 1rem; border-radius: var(--r); background: rgba(255, 255, 255, .13); border: 1px solid rgba(255, 255, 255, .18); backdrop-filter: blur(6px); }
.yn-sayilar dt { font-size: .74rem; opacity: .82; }
.yn-sayilar dd { margin: .1rem 0 0; font-size: 1.7rem; font-weight: 780; letter-spacing: -.03em; font-variant-numeric: tabular-nums; }
.yn-sayilar dd.kucuk { font-size: 1.05rem; padding-top: .4rem; }

.yn-arac { position: sticky; top: 64px; z-index: 6; display: flex; align-items: center; gap: .7rem; flex-wrap: wrap; margin: 1.1rem 0 1.3rem; padding: .6rem;
           border: 1px solid var(--cizgi); border-radius: calc(var(--r) + 2px); background: color-mix(in srgb, var(--yuzey) 92%, transparent); backdrop-filter: blur(10px); box-shadow: var(--golge); }
:root[data-menu="ust"] .yn-arac { top: 66px; }
.yn-ara { flex: 1 1 260px; display: flex; align-items: center; gap: .5rem; padding: 0 .8rem; border: 1px solid var(--cizgi); border-radius: 99px; background: var(--yuzey-2); }
.yn-ara:focus-within { border-color: var(--vurgu); box-shadow: 0 0 0 3px color-mix(in srgb, var(--vurgu) 18%, transparent); }
.yn-ara .ikon { color: var(--soluk); }
.yn-ara input { border: 0; background: none; padding: .55rem 0; min-height: 0; flex: 1; box-shadow: none; outline: none; font: inherit; color: inherit; }
.yn-cipler { display: flex; gap: .4rem; flex-wrap: wrap; }
.yn-cip { display: inline-flex; align-items: center; gap: .4rem; min-height: 0; padding: .42rem .8rem; border-radius: 99px; border: 1px solid var(--cizgi); background: var(--yuzey); color: var(--murekkep); font: inherit; font-size: .84rem; font-weight: 600; cursor: pointer; }
.yn-cip .ikon { stroke: var(--t, var(--soluk)); }
.yn-cip span { font-size: .72rem; font-weight: 700; padding: 0 .4rem; border-radius: 99px; background: var(--yuzey-2); color: var(--soluk); }
.yn-cip:hover { border-color: var(--cizgi-koyu); }
.yn-cip.secili { background: var(--t, var(--murekkep)); border-color: var(--t, var(--murekkep)); color: #fff; }
.yn-cip.secili .ikon { stroke: #fff; }
.yn-cip.secili span { background: rgba(255, 255, 255, .22); color: #fff; }
.yn-cip.secili .yn-nokta { background: #fff; }
.yn-yazdir { position: absolute; top: 1rem; right: 1rem; z-index: 1; display: inline-flex; align-items: center; gap: .35rem; min-height: 0; padding: .32rem .7rem; border-radius: 99px;
             border: 1px solid rgba(255, 255, 255, .28); background: rgba(255, 255, 255, .12); color: #fff; font: inherit; font-size: .78rem; font-weight: 600; cursor: pointer; }
.yn-yazdir:hover { background: rgba(255, 255, 255, .22); }
.yn-yazdir .ikon { stroke: #fff; }
.yn-cip.secili[data-tur=""] { background: var(--murekkep); border-color: var(--murekkep); color: var(--yuzey); }
.yn-cip.secili[data-tur=""] span { background: color-mix(in srgb, var(--yuzey) 22%, transparent); color: var(--yuzey); }

.yn-govde { display: grid; grid-template-columns: 230px minmax(0, 1fr); gap: 1.6rem; align-items: start; }
.yn-cizelge { position: sticky; top: 140px; max-height: calc(100vh - 160px); overflow-y: auto; display: flex; flex-direction: column; gap: 1px; padding-right: .3rem; scrollbar-width: thin; }
.yn-ay-ad { font-size: .7rem; font-weight: 750; letter-spacing: .06em; text-transform: uppercase; color: var(--soluk); margin: .9rem 0 .35rem .55rem; }
.yn-ay-ad:first-child { margin-top: 0; }
.yn-cizelge a { display: grid; grid-template-columns: 10px auto minmax(0, 1fr); align-items: center; gap: .5rem; padding: .36rem .55rem; border-radius: var(--r-k); text-decoration: none; color: var(--soluk); font-size: .8rem; }
.yn-cizelge a i { width: 8px; height: 8px; border-radius: 50%; background: var(--t); opacity: .55; }
.yn-cizelge a b { font-variant-numeric: tabular-nums; color: var(--murekkep); font-weight: 650; font-size: .76rem; }
.yn-cizelge a span { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.yn-cizelge a:hover { background: var(--yuzey-2); color: var(--murekkep); }
.yn-cizelge a.simdi { background: color-mix(in srgb, var(--t) 12%, var(--yuzey)); color: var(--murekkep); }
.yn-cizelge a.simdi i { opacity: 1; box-shadow: 0 0 0 3px color-mix(in srgb, var(--t) 25%, transparent); }
.yn-cizelge a[hidden], .yn-ay-ad[hidden] { display: none; }

.yn-ay + .yn-ay { margin-top: 1.6rem; }
.yn-ay-baslik { display: flex; align-items: center; gap: .5rem; font-size: .95rem; color: var(--soluk); margin: 0 0 .8rem; }
.yn-kart { position: relative; display: grid; grid-template-columns: 58px minmax(0, 1fr); gap: 1rem; margin-bottom: 1rem; scroll-margin-top: 150px; }
.yn-kart::before { content: ""; position: absolute; left: 28px; top: 62px; bottom: -1rem; width: 2px; background: linear-gradient(var(--cizgi), transparent); }
.yn-ay .yn-kart:last-child::before { display: none; }
.yn-tarih { width: 58px; height: 58px; display: grid; place-content: center; text-align: center; border-radius: 16px; background: var(--yuzey); border: 1px solid var(--cizgi); box-shadow: var(--golge); }
.yn-tarih b { font-size: 1.3rem; line-height: 1; font-weight: 780; color: var(--t); font-variant-numeric: tabular-nums; }
.yn-tarih span { font-size: .68rem; font-weight: 650; text-transform: uppercase; color: var(--soluk); letter-spacing: .05em; margin-top: .15rem; }
.yn-kart-ic { position: relative; background: var(--yuzey); border: 1px solid var(--cizgi); border-radius: calc(var(--r) + 2px); padding: 1.1rem 1.3rem 1.2rem; box-shadow: var(--golge); transition: border-color .2s, box-shadow .2s, transform .2s; overflow: hidden; }
.yn-kart-ic::before { content: ""; position: absolute; inset: 0 auto 0 0; width: 4px; background: var(--t); }
.yn-kart:hover .yn-kart-ic { border-color: color-mix(in srgb, var(--t) 40%, var(--cizgi)); box-shadow: 0 14px 34px -22px color-mix(in srgb, var(--t) 70%, transparent); }
.yn-kart.one-cikan .yn-kart-ic { padding: 1.4rem 1.6rem 1.5rem; background: linear-gradient(180deg, color-mix(in srgb, var(--t) 7%, var(--yuzey)), var(--yuzey) 60%); border-color: color-mix(in srgb, var(--t) 35%, var(--cizgi)); }
.yn-kart.one-cikan h3 { font-size: 1.35rem; }
.yn-etiketler { display: flex; align-items: center; gap: .45rem; flex-wrap: wrap; margin-bottom: .45rem; }
.yn-surum { font-family: ui-monospace, "SF Mono", Consolas, monospace; font-size: .76rem; font-weight: 700; padding: .12rem .5rem; border-radius: 6px; background: var(--yuzey-2); border: 1px solid var(--cizgi); color: var(--murekkep); }
.yn-tur { display: inline-flex; align-items: center; gap: .3rem; font-size: .74rem; font-weight: 700; padding: .14rem .55rem; border-radius: 99px; color: var(--t); background: color-mix(in srgb, var(--t) 13%, transparent); }
.yn-tur .ikon { stroke: var(--t); width: 13px; height: 13px; }
.yn-yeni { font-size: .7rem; font-weight: 800; letter-spacing: .04em; text-transform: uppercase; padding: .14rem .5rem; border-radius: 99px; color: #fff; background: linear-gradient(90deg, #e11d48, #f97316); box-shadow: 0 4px 12px -4px rgba(225, 29, 72, .6); }
.yn-sizde { font-size: .72rem; font-weight: 650; padding: .14rem .55rem; border-radius: 99px; color: #15803d; background: #dcfce7; }
:root[data-tema="koyu"] .yn-sizde { color: #86efac; background: rgba(34, 197, 94, .16); }
.yn-zaman { margin-left: auto; font-size: .76rem; color: var(--soluk); font-variant-numeric: tabular-nums; }
.yn-kart h3 { margin: 0 0 .85rem; font-size: 1.12rem; letter-spacing: -.015em; }
.yn-maddeler { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(auto-fit, minmax(250px, 1fr)); gap: .6rem; }
.yn-maddeler li { display: flex; gap: .7rem; align-items: flex-start; padding: .7rem .75rem; border-radius: var(--r); background: var(--yuzey-2); border: 1px solid transparent; transition: border-color .15s, background .15s; }
.yn-maddeler li:hover { border-color: var(--cizgi); background: var(--yuzey); }
.yn-maddeler li > span:last-child { display: grid; gap: .15rem; min-width: 0; }
.yn-maddeler strong { font-size: .92rem; }
.yn-maddeler small { color: var(--soluk); line-height: 1.5; font-size: .82rem; }
.yn-m-ikon { flex: none; width: 36px; height: 36px; border-radius: 11px; display: grid; place-items: center; background: color-mix(in srgb, var(--t, var(--vurgu)) 14%, var(--yuzey)); }
.yn-m-ikon .ikon { stroke: var(--t, var(--vurgu)); }
.yn-linkler { display: flex; gap: .5rem; flex-wrap: wrap; margin-top: .95rem; }
.yn-git { display: inline-flex; align-items: center; gap: .4rem; padding: .42rem .85rem; border-radius: 99px; font-size: .84rem; font-weight: 650; text-decoration: none;
          color: var(--t); background: color-mix(in srgb, var(--t) 11%, transparent); transition: gap .15s, background .15s; }
.yn-git:hover { gap: .65rem; background: color-mix(in srgb, var(--t) 18%, transparent); }
.yn-git .ikon { stroke: currentColor; }
.yn mark { background: #fde68a; color: inherit; border-radius: 3px; padding: 0 1px; }
:root[data-tema="koyu"] .yn mark { background: rgba(250, 204, 21, .35); }
.yn-kart[hidden], .yn-ay[hidden] { display: none; }
.yn-bos { display: grid; justify-items: center; gap: .3rem; padding: 3rem 1rem; text-align: center; color: var(--soluk); border: 1px dashed var(--cizgi-koyu); border-radius: var(--r); }
.yn-bos .ikon { width: 30px; height: 30px; margin-bottom: .3rem; }
.yn-bos strong { color: var(--murekkep); }
.yn-oneri { display: flex; align-items: center; gap: 1rem; margin-top: 1.8rem; padding: 1.1rem 1.3rem; border-radius: calc(var(--r) + 2px); border: 1px solid var(--cizgi);
            background: linear-gradient(120deg, var(--vurgu-acik), var(--yuzey) 70%); }
.yn-oneri div { flex: 1; display: grid; gap: .15rem; }
.yn-oneri span:not(.yn-m-ikon) { color: var(--soluk); font-size: .88rem; }
@media (max-width: 1100px) { .yn-govde { grid-template-columns: minmax(0, 1fr); } .yn-cizelge { display: none; } }
@media (max-width: 720px) {
  .yn-hero { padding: 1.4rem 1.2rem; } .yn-hero h1 { font-size: 1.8rem; }
  .yn-sayilar { grid-template-columns: repeat(3, minmax(0, 1fr)); width: 100%; } .yn-sayilar div { min-width: 0; padding: .6rem .7rem; } .yn-sayilar dd { font-size: 1.35rem; }
  .yn-arac { position: static; } .yn-cipler { overflow-x: auto; flex-wrap: nowrap; width: 100%; padding-bottom: 2px; } .yn-cip { white-space: nowrap; } .yn-yazdir { display: none; }
  .yn-ara input { font-size: .9rem; }
  .yn-kart { grid-template-columns: minmax(0, 1fr); } .yn-tarih, .yn-kart::before { display: none; }
  .yn-zaman { margin-left: 0; width: 100%; }
  .yn-oneri { flex-direction: column; align-items: flex-start; }
}
@media (prefers-reduced-motion: reduce) { .yn-nokta { animation: none; } .yn-kart-ic, .yn-git { transition: none; } }
@media print {
  .yn-arac, .yn-cizelge, .yn-oneri, .yn-linkler, .yn-hale, .yn-yazdir { display: none !important; }
  .yn-govde { grid-template-columns: 1fr; } .yn-hero { box-shadow: none; -webkit-print-color-adjust: exact; print-color-adjust: exact; }
  .yn-kart { break-inside: avoid; } .yn-kart-ic { box-shadow: none; }
}
.yan-alt a.surum-rozet { text-decoration: none; margin-top: 0; }
a.surum-rozet:hover { filter: brightness(1.12); }
.menu-yeni-nokta { width: 8px; height: 8px; margin-left: auto; border-radius: 50%; background: #e11d48; box-shadow: 0 0 0 3px rgba(225, 29, 72, .18); }
.menu-yeni-rozet { margin-left: auto; font-style: normal; font-size: .64rem; font-weight: 800; letter-spacing: .04em; text-transform: uppercase; line-height: 1;
                   padding: .22rem .42rem; border-radius: 99px; color: #fff; background: linear-gradient(90deg, #e11d48, #f97316); box-shadow: 0 3px 10px -3px rgba(225, 29, 72, .6); }
.um-link .menu-yeni-rozet { margin-left: .35rem; }
:root[data-menu="dar"] .yan .oge { position: relative; }
:root[data-menu="dar"] .yan:not(:hover):not(:focus-within) .menu-yeni-rozet { position: absolute; top: 5px; left: 28px; margin: 0; padding: 0; width: 8px; height: 8px; font-size: 0; }

/* ---------- 3.55 Saha: Bluetooth tartı paneli ---------- */
.saha-bt { border: 1px solid var(--cizgi); border-radius: var(--r); padding: .7rem .8rem; background: var(--yuzey-2); display: grid; gap: .55rem; }
.saha-bt-ust { display: flex; align-items: center; gap: .55rem; }
.saha-bt-ad { flex: 1; font-weight: 650; font-size: .92rem; min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.saha-bt-nokta { width: 11px; height: 11px; border-radius: 50%; background: var(--cizgi-koyu); flex: none; }
.saha-bt-nokta.durgun { background: #16a34a; box-shadow: 0 0 0 4px rgba(22, 163, 74, .2); }
.saha-bt-nokta.oynuyor { background: #f59e0b; box-shadow: 0 0 0 4px rgba(245, 158, 11, .2); animation: yn-nabiz 1.2s infinite; }
.saha-bt-nokta.baglaniyor { background: #3b82f6; animation: yn-nabiz 1s infinite; }
.saha-bt-nokta.sessiz, .saha-bt-nokta.kopuk { background: #dc2626; }
.saha-bt-canli { display: grid; grid-template-columns: 1fr auto; align-items: center; gap: .1rem .7rem; }
.saha-bt-canli b { font-size: 2rem; font-weight: 800; letter-spacing: -.03em; font-variant-numeric: tabular-nums; line-height: 1.1; }
.saha-bt-canli small { grid-column: 1; color: var(--soluk); font-size: .8rem; }
.saha-bt-canli button { grid-row: 1 / span 2; grid-column: 2; min-height: 52px; padding: 0 1.1rem; font-size: 1rem; }
.saha-bt-not { margin: 0; font-size: .82rem; color: var(--soluk); }

/* ===== 3.59 Ana sayfa: bento pano (seçenek C) =====
   Kartlar esnek satırlarda: geniş kart (bn-2) iki, dar kart (bn-1) bir pay alır; telefonda alt alta dizilir.
   Renkler tema değişkenlerinden: koyu tema ve renk koleksiyonları kendiliğinden uyar. */
.bn{display:flex;flex-direction:column;gap:16px;margin-bottom:18px}
.bn-bas{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:6px 16px}
.bn-bas h1{margin:0;font-size:1.6rem;letter-spacing:-.02em}
.bn-bas span{font-size:.85rem;color:var(--soluk)}
.bn-sira{display:flex;flex-wrap:wrap;gap:16px}
.bn-kart{background:var(--yuzey);border-radius:calc(var(--r) + 10px);padding:20px 22px;display:flex;flex-direction:column;gap:10px;min-width:0;box-sizing:border-box;box-shadow:var(--golge)}
.bn-2{flex:2 1 520px}.bn-1{flex:1 1 250px}
.bn-kb{display:flex;justify-content:space-between;align-items:baseline;gap:8px;flex-wrap:wrap}
.bn-kb h2{margin:0;font-size:1rem;display:flex;align-items:center;gap:8px}
.bn-kb>span{font-size:.78rem;color:var(--soluk)}
.bn-etiket{font-size:.85rem;font-weight:600;color:var(--soluk)}
.bn-sayi{font-size:1.95rem;font-weight:800;letter-spacing:-.02em;line-height:1.15}
.bn-sayi small{font-size:.85rem;font-weight:600;color:var(--soluk);letter-spacing:0}
.bn-sayi.bakir{color:var(--bakir)}.bn-sayi.vurgu{color:var(--vurgu)}
.bn-not{font-size:.85rem;color:var(--soluk)}
.bn-not .art{color:var(--tamam)}.bn-not .azal{color:var(--bakir)}
.bn-mini{margin:auto 0 0;display:flex;flex-wrap:wrap;gap:6px 20px;font-size:.85rem;padding-top:6px}
.bn-mini dt{color:var(--soluk)}.bn-mini dd{margin:2px 0 0;font-weight:700}
/* Bugün kartı */
.bn-bugun{background:var(--vurgu);color:var(--vurgu-yazi);justify-content:space-between;gap:20px;min-height:200px}
.bn-ust{font-size:.78rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;opacity:.8}
.bn-buyuk{margin:6px 0 4px;font-size:1.9rem;font-weight:800;letter-spacing:-.02em;line-height:1.15}
.bn-bugun .bn-alt{margin:0;font-size:.95rem;opacity:.88}
.bn-dugmeler{display:flex;flex-wrap:wrap;gap:10px}
.bn-dugme{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:0 18px;border-radius:12px;font-weight:700;font-size:.92rem;text-decoration:none;box-sizing:border-box;
  border:1px solid color-mix(in srgb,currentColor 35%,transparent);color:inherit}
.bn-dugme .ikon{width:18px;height:18px}
.bn-dugme.ana{background:var(--surgun);color:var(--surgun-yazi);border-color:transparent}
.bn-dugme.bakir{margin-top:auto;background:color-mix(in srgb,var(--bakir) 12%,var(--yuzey));color:var(--bakir);border-color:transparent}
.bn-dugme:hover{filter:brightness(1.06);text-decoration:none}
/* Isı seviyeleri: 0 = boş, 1-3 = en yüksek güne göre */
.bn .s0{background:var(--yuzey-2);color:var(--soluk)}
.bn .s1{background:color-mix(in srgb,var(--vurgu) 25%,var(--yuzey));color:var(--murekkep)}
.bn .s2{background:color-mix(in srgb,var(--vurgu) 60%,var(--yuzey));color:#fff}
.bn .s3{background:var(--vurgu);color:var(--vurgu-yazi)}
.bn-lejant{display:inline-flex;align-items:center;gap:5px;font-size:.75rem;color:var(--soluk)}
.bn-lejant i{width:14px;height:14px;border-radius:4px;display:inline-block}
.bn-takvim{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px;font-size:.8rem}
.bn-takvim b{font-weight:600;color:var(--soluk);text-align:center;font-size:.75rem}
.bn-takvim span{position:relative;height:36px;border-radius:9px;display:flex;align-items:center;justify-content:center;font-weight:600;font-variant-numeric:tabular-nums}
.bn-takvim span small{position:absolute;top:2px;left:5px;font-size:.58rem;font-weight:700;opacity:.75;text-transform:uppercase}
.bn-takvim span.bugun{outline:2px solid var(--vurgu);outline-offset:-2px;font-weight:800}
.bn-alt-ozet{display:flex;flex-wrap:wrap;gap:6px 22px;font-size:.85rem;color:var(--soluk);border-top:1px solid var(--cizgi);padding-top:10px}
.bn-alt-ozet b{color:var(--murekkep)}
/* kalite şeridi ve renkler */
.bn .c0{background:var(--vurgu)}.bn .c1{background:var(--surgun)}.bn .c2{background:var(--bakir)}
.bn .c3{background:#2b6cb0}.bn .c4{background:var(--turkuaz)}.bn .c5{background:var(--soluk)}
.bn-serit,.bn-pay{display:flex;gap:3px;border-radius:8px;overflow:hidden}
.bn-serit{height:14px}
.bn-liste,.bn-uretici{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px;font-size:.88rem}
.bn-liste li{display:flex;align-items:center;gap:8px}
.bn-liste i,.bn-uretici i{width:10px;height:10px;border-radius:3px;flex:none}
.bn-liste span{flex:1;min-width:0}.bn-liste em{font-style:normal;color:var(--soluk);font-size:.8rem}
.bn-liste b{min-width:52px;text-align:right}
/* içgörüler */
.bn-icgoru{background:color-mix(in srgb,var(--vurgu) 10%,var(--yuzey))}
.bn-icgoru h2 .ikon{width:18px;height:18px;color:var(--vurgu)}
.bn-icgoru p{margin:0;font-size:.9rem;line-height:1.5;background:var(--yuzey);border-radius:12px;padding:11px 13px}
.bn-icgoru p.uyari{box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--bakir) 40%,transparent)}
/* üreticiler */
.bn-pay{height:40px;border-radius:12px;font-size:.82rem;font-weight:700}
.bn-pay i{display:flex;align-items:center;padding:0 12px;min-width:6px;color:#fff;font-style:normal;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.bn-pay i.c1{color:var(--surgun-yazi)}
.bn-uretici{flex-direction:row;flex-wrap:wrap;gap:8px 22px}
.bn-uretici a{display:flex;align-items:center;gap:8px;color:inherit;text-decoration:none;min-height:32px}
.bn-uretici a:hover span{text-decoration:underline}
.bn-uretici em{font-style:normal;color:var(--soluk)}
/* saat şeridi */
.bn-saat{display:grid;grid-template-columns:repeat(17,minmax(0,1fr));gap:3px}
.bn-saat i{height:34px;border-radius:6px}
.bn-saat-et{display:flex;justify-content:space-between;font-size:.72rem;color:var(--soluk)}
/* alım yerleri */
.bn-yer{display:flex;flex-direction:column;gap:6px;font-size:.88rem}
.bn-yer>div:first-child{display:flex;justify-content:space-between;gap:8px}
.bn-yer .iz{height:8px;border-radius:4px;background:var(--yuzey-2)}
.bn-yer .iz i{display:block;height:100%;border-radius:4px}
@media (max-width:600px){.bn-kart{padding:16px}.bn-sayi{font-size:1.6rem}.bn-buyuk{font-size:1.5rem}.bn-takvim span{height:32px}}
@media print{.bn-dugmeler,.bn-dugme{display:none}.bn-kart{box-shadow:none;border:1px solid #ccc}}
.bn .diger{background:var(--cizgi-koyu);color:var(--murekkep)}
.bn-diger{display:flex;align-items:center;gap:8px;min-height:32px;color:var(--soluk)}
.bn-sayi small.bn-blok{display:block;margin-top:2px}

/* ===== 3.60 e-Müstahsil makbuzu çıktısı (VUK 509 §IV.5.3 alanları + GİB karekodu) ===== */
.belge.emm{max-width:820px;font-size:.88rem;line-height:1.4}
.emm-taslak{margin:0 0 .8rem;padding:.45rem .7rem;border:1px dashed #b5521d;color:#8a3b10;border-radius:6px;font-weight:600;text-align:center}
.emm-bas{display:grid;grid-template-columns:1fr auto auto;gap:1rem;align-items:start;border-bottom:2px solid #111;padding-bottom:.7rem;margin-bottom:.4rem}
.emm-alici{display:flex;flex-direction:column;gap:2px;min-width:0}
.emm-alici strong{font-size:1.05rem}.emm-alici span{color:#333;font-size:.82rem}
.emm-kimlik h2{margin:0 0 .35rem;font-size:1.05rem;letter-spacing:.04em;text-align:right}
.emm-kimlik h2 small{display:block;font-size:.75rem;font-weight:600;letter-spacing:0}
.emm-kimlik dl{display:grid;grid-template-columns:auto auto;gap:1px 10px;margin:0;font-size:.8rem}
.emm-kimlik dt{color:#555}.emm-kimlik dd{margin:0;text-align:right;font-variant-numeric:tabular-nums}
.emm-karekod{width:118px;height:118px}.emm-karekod svg{width:100%;height:100%;display:block}
.emm-ettn{font-size:.72rem;color:#444;text-align:right;margin-bottom:.8rem;font-family:ui-monospace,monospace}
.emm-mustahsil{border:1px solid #ccc;border-radius:6px;padding:.5rem .75rem;margin-bottom:.8rem}
.emm-mustahsil h3,.emm h3{margin:0 0 .3rem;font-size:.78rem;text-transform:uppercase;letter-spacing:.05em;color:#555}
.emm-mustahsil dl{display:grid;grid-template-columns:150px 1fr;gap:2px 10px;margin:0}
.emm-mustahsil dt{color:#555}.emm-mustahsil dd{margin:0}
.emm-kalemler{width:100%;border-collapse:collapse}
.emm-kalemler th{font-size:.75rem;background:#f2f2f2!important;border-bottom:1px solid #999}
.emm-alt{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:1rem;margin-top:.8rem}
.emm-yaziyla{margin:0;flex:1 1 260px}
.emm-toplam{border-collapse:collapse;min-width:300px}
.emm-toplam th{text-align:left;font-weight:400;padding:.18rem .6rem .18rem 0;color:#333}
.emm-toplam td{text-align:right;padding:.18rem 0;font-variant-numeric:tabular-nums;white-space:nowrap}
.emm-toplam .emm-odenecek th,.emm-toplam .emm-odenecek td{font-weight:800;font-size:1rem;border-top:2px solid #111;padding-top:.35rem;color:#111}
.emm-sms{margin-top:.9rem;padding:.5rem .75rem;border:1px solid #9cc49c;background:#f2faf2;border-radius:6px;font-size:.82rem}
.emm-not{margin-top:1rem;padding-top:.5rem;border-top:1px solid #ccc;font-size:.72rem;color:#555}
@media (max-width:640px){.emm-bas{grid-template-columns:1fr}.emm-kimlik h2{text-align:left}.emm-karekod{width:100px;height:100px}.emm-mustahsil dl{grid-template-columns:1fr}}
@media print{@page{size:A4 portrait;margin:12mm}.belge.emm{max-width:none;border:0;box-shadow:none;padding:0}.emm-kalemler th{background:#eee!important;-webkit-print-color-adjust:exact;print-color-adjust:exact}}
.emm-kimlik dt{white-space:nowrap}.emm-toplam tr,.emm-toplam th,.emm-toplam td{background:none!important}

/* ===== 3.63 Uzaktan destek girişi ve müşteri sağlık panosu ===== */
.ds-izin { border: 1px solid var(--cizgi); border-radius: 14px; background: var(--yuzey); padding: 1rem 1.1rem; margin-bottom: 1rem; }
.ds-izin.acik { border-color: var(--uyari, #b7791f); background: color-mix(in srgb, var(--uyari, #b7791f) 7%, var(--yuzey)); }
.ds-izin-ust { display: flex; gap: .8rem; align-items: flex-start; }
.ds-izin-ust > .ikon { width: 34px; height: 34px; padding: 7px; border-radius: 10px; background: var(--vurgu-acik); color: var(--vurgu); flex: none; }
.ds-izin.acik .ds-izin-ust > .ikon { background: color-mix(in srgb, var(--uyari, #b7791f) 18%, transparent); color: var(--uyari, #b7791f); }
.ds-izin h2 { font-size: 1rem; margin: 0 0 .2rem; }
.ds-izin p { margin: 0; color: var(--murekkep-ince, inherit); }
.ds-izin-dugme { display: flex; flex-wrap: wrap; gap: .6rem; align-items: center; margin-top: .8rem; }
.ds-izin-dugme form { display: flex; flex-wrap: wrap; gap: .4rem; align-items: center; margin: 0; }
.ds-izin-not { margin-top: .6rem !important; font-size: .85rem; }
.ds-izin-gecmis { margin-top: .7rem; font-size: .85rem; }
.ds-izin-gecmis ul { margin: .4rem 0 0; padding-left: 1.2rem; }
.destek-modu { position: sticky; top: 0; z-index: 60; display: flex; flex-wrap: wrap; gap: .4rem 1rem; align-items: center; justify-content: center;
  padding: .45rem 1rem; background: #b42318; color: #fff; font-weight: 600; font-size: .9rem; text-align: center; }
.destek-modu a, .destek-modu button { color: #fff; text-decoration: underline; background: none; border: 0; font: inherit; cursor: pointer; padding: 0; }
.ls-saglik { display: inline-flex; align-items: center; gap: .35rem; font-size: .85rem; }
.ls-saglik i { width: .7rem; height: .7rem; border-radius: 50%; display: inline-block; background: var(--cizgi); flex: none; }
.ls-saglik.yesil i { background: #2f9e44; }
.ls-saglik.sari i { background: #e8a317; }
.ls-saglik.kirmizi i { background: #d92d20; }
.ls-saglik-liste { margin: .3rem 0 0; padding-left: 1.1rem; }
.ls-saglik-tablo td:first-child { color: var(--murekkep-ince, inherit); width: 45%; }
