:root {
    --bg: #f4f6f9; --kart: #fff; --yazi: #1f2933; --soluk: #66727f; --cizgi: #d9dee5;
    --ana: #2f4fa8; --yesil: #1f7a4d; --yesil-bg: #e6f4ec; --kirmizi: #b42318; --kirmizi-bg: #fdecea;
    --sari: #8a5a00; --sari-bg: #fff4d6;
}
* { box-sizing: border-box; }
body { margin: 0; font: 14px/1.45 system-ui, "Segoe UI", sans-serif; background: var(--bg); color: var(--yazi); }
a { color: var(--ana); }
.ust { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 24px; padding: 10px 20px; background: var(--ana); color: #fff; }
.ust a, .ust .baglanti { color: #fff; text-decoration: none; }
.ust .logo { font-weight: 700; font-size: 16px; }
.ust nav { display: flex; gap: 16px; }
.ust .kim { margin-left: auto; display: flex; gap: 14px; align-items: center; font-size: 13px; }
.ust .kim form { margin: 0; }
main { padding: 20px 16px; max-width: 1500px; margin: 0 auto; }
h1 { font-size: 20px; margin: 0 0 4px; }
h2 { font-size: 16px; margin: 0 0 10px; }
.alt-baslik { color: var(--soluk); margin: 0 0 16px; }
.kirinti { font-size: 13px; color: var(--soluk); margin-bottom: 8px; }
.kart { background: var(--kart); border: 1px solid var(--cizgi); border-radius: 8px; padding: 16px; margin-bottom: 16px; }
.kaydir { overflow-x: auto; }
table { border-collapse: collapse; width: 100%; }
th, td { border-bottom: 1px solid var(--cizgi); padding: 6px 8px; text-align: left; vertical-align: middle; }
th { background: #eef1f6; font-weight: 600; font-size: 13px; }
td.sayi, th.sayi { text-align: right; font-variant-numeric: tabular-nums; }
tr.soluk td { color: var(--soluk); }
input, select, textarea { font: inherit; padding: 5px 7px; border: 1px solid var(--cizgi); border-radius: 4px; background: #fff; }
textarea { width: 100%; }
input.sayi { text-align: right; width: 108px; font-variant-numeric: tabular-nums; }
input[type=date] { width: 140px; }
input.zno { width: 76px; }
input[readonly] { background: #f6f7f9; }
label { display: flex; flex-direction: column; gap: 3px; font-size: 12px; color: var(--soluk); margin-bottom: 10px; }
label input, label select, label textarea { font-size: 14px; color: var(--yazi); }
label.satir { flex-direction: row; align-items: center; gap: 6px; font-size: 14px; color: var(--yazi); margin-bottom: 4px; }
fieldset { border: 1px solid var(--cizgi); border-radius: 6px; margin: 0 0 12px; padding: 8px 12px; }
legend { font-size: 12px; color: var(--soluk); }
button, .dugme { font: inherit; padding: 7px 14px; border: 1px solid var(--ana); background: var(--ana); color: #fff; border-radius: 5px; cursor: pointer; text-decoration: none; display: inline-block; }
button.ikincil, .dugme.ikincil { background: #fff; color: var(--ana); }
button.tehlike { background: #fff; color: var(--kirmizi); border-color: var(--kirmizi); }
button.baglanti { background: none; border: 0; padding: 0; color: var(--ana); text-decoration: underline; }
button:disabled, .dugme.pasif { opacity: .45; cursor: not-allowed; pointer-events: none; }
.satir-sil { padding: 2px 8px; }
.form-dar { max-width: 420px; margin: 40px auto; }
.giris h1 { margin-bottom: 14px; }
.satir-form { display: flex; flex-wrap: wrap; gap: 0 12px; align-items: flex-end; }
.satir-form h2 { width: 100%; }
.iki-sutun { display: grid; grid-template-columns: repeat(auto-fit, minmax(340px, 1fr)); gap: 16px; align-items: start; }
.uc-sutun { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; }
.uc-sutun input { width: 100%; }
.izgara { display: grid; grid-template-columns: minmax(0, 1fr) 380px; gap: 16px; align-items: start; }
@media (max-width: 1100px) { .izgara { grid-template-columns: 1fr; } }
.fis-alanlari { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 10px; }
@media (max-width: 700px) { .fis-alanlari, .uc-sutun { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
.fis-alanlari input { width: 100%; }
.foto { max-height: 80vh; overflow: auto; border: 1px solid var(--cizgi); border-radius: 6px; background: #222; }
.foto-ic { position: relative; }
.foto img { width: 100%; display: block; cursor: crosshair; user-select: none; }
.foto img.buyuk { width: 250%; }
#secim { position: absolute; border: 2px solid #ffcc00; background: rgba(255, 204, 0, .15); pointer-events: none; }
progress { width: 100%; margin-top: 8px; }
.mesajlar div { padding: 6px 10px; border-radius: 5px; margin-bottom: 5px; }
.hata, .bildirim.hata { background: var(--kirmizi-bg); color: var(--kirmizi); }
.uyari { background: var(--sari-bg); color: var(--sari); }
.tamam, .bildirim.tamam { background: var(--yesil-bg); color: var(--yesil); }
.bildirim { padding: 8px 12px; border-radius: 6px; margin-bottom: 12px; }
.kirmizi { color: var(--kirmizi); }
tr.hatali td { background: var(--kirmizi-bg); }
tr.hatali td.mesaj { color: var(--kirmizi); font-size: 12px; }
td.mesaj { min-width: 140px; }
tr.uyarili td { background: var(--sari-bg); }
tr.uyarili td.mesaj { color: var(--sari); font-size: 12px; }
tfoot td { font-weight: 700; background: #eef1f6; }
.etiket { font-size: 12px; padding: 2px 8px; border-radius: 10px; white-space: nowrap; }
.etiket.taslak { background: var(--sari-bg); color: var(--sari); }
.etiket.onayli { background: #e6ecfb; color: var(--ana); }
.etiket.aktarildi { background: var(--yesil-bg); color: var(--yesil); }
.ozet td a { display: block; color: inherit; text-decoration: none; }
.ozet td.bos a { color: var(--soluk); }
.araclar { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; }
.araclar form { margin: 0; }
.not { color: var(--soluk); font-size: 12px; font-weight: normal; }

/* KDV kartları (firma sayfası) */
.bolum-baslik { display: flex; align-items: baseline; justify-content: space-between; gap: 12px; margin: 18px 0 10px; }
.bolum-baslik h2 { margin: 0; }
.kdv-kartlar { display: grid; grid-template-columns: repeat(auto-fill, minmax(190px, 1fr)); gap: 12px; margin-bottom: 16px; }
.kdv-kart { display: block; padding: 12px 14px; margin: 0; color: var(--yazi); text-decoration: none; transition: border-color .12s, box-shadow .12s; }
.kdv-kart:hover { border-color: var(--ana); box-shadow: 0 1px 6px rgba(47,79,168,.12); }
.kdv-kart .ay { font-weight: 700; font-size: 15px; margin-bottom: 8px; }
.kdv-kart .satir { display: flex; justify-content: space-between; gap: 10px; font-size: 13px; padding: 2px 0; }
.kdv-kart .satir span { color: var(--soluk); }
.kdv-kart .satir.vurgu { margin-top: 6px; padding-top: 6px; border-top: 1px solid var(--cizgi); font-size: 14px; }
.kdv-kart .satir.vurgu.borc strong { color: var(--kirmizi); }
.kdv-kart .satir.vurgu.devir strong { color: var(--yesil); }
.kdv-kart .satir strong { font-variant-numeric: tabular-nums; }

/* Şubesi seçilmemiş fatura */
.fatura.subesiz { border-left: 3px solid var(--sari); }

/* Fatura ay grupları (açılır/kapanır) */
.ay-grup { background: var(--kart); border: 1px solid var(--cizgi); border-radius: 8px; margin-bottom: 12px; overflow: hidden; }
.ay-grup > summary { cursor: pointer; padding: 12px 16px; display: flex; align-items: center; gap: 12px; flex-wrap: wrap; list-style: none; user-select: none; }
.ay-grup > summary::-webkit-details-marker { display: none; }
.ay-grup > summary::before { content: "▸"; color: var(--soluk); transition: transform .12s; }
.ay-grup[open] > summary::before { transform: rotate(90deg); }
.ay-grup > summary:hover { background: #f6f8fb; }
.ay-grup .ay-ad { font-weight: 700; font-size: 15px; }
.ay-grup[open] > summary { border-bottom: 1px solid var(--cizgi); }
.ay-grup > .fatura { margin: 12px 16px; }
.etiket.subesiz-rozet { background: var(--sari-bg); color: var(--sari); }
/* Fatura kalem toplam satırı */
.fatura .ozet tr.toplam td { font-weight: 700; border-top: 2px solid var(--cizgi); background: #f6f8fb; }
.fatura .ozet tr.silindi td { opacity: .5; text-decoration: line-through; }

/* ---- Buton rötuşları ---- */
button, .dugme { line-height: 1.2; transition: filter .12s, background .12s; }
button:hover, .dugme:hover { filter: brightness(1.06); }
button:active, .dugme:active { filter: brightness(.94); }
button.ikincil:hover, .dugme.ikincil:hover { background: #eef2fb; filter: none; }
.dugme.kucuk, button.kucuk { padding: 4px 10px; font-size: 13px; border-radius: 6px; }
.fatura .ust-satir { display: flex; justify-content: space-between; gap: 10px; flex-wrap: wrap; align-items: center; }
.kalem { min-width: 680px; }

/* ---- Mobil (telefon) ---- */
@media (max-width: 640px) {
    main { padding: 14px 12px; }
    .ust { padding: 8px 12px; gap: 6px 14px; }
    .ust .logo { font-size: 15px; }
    .ust nav { gap: 12px; font-size: 13px; }
    .ust .kim { font-size: 12px; gap: 10px; }
    h1 { font-size: 18px; }
    /* iOS odakta yakınlaştırmayı önlemek için form alanları 16px */
    input, select, textarea, label input, label select, label textarea { font-size: 16px; }
    /* Dokunmatik hedefleri büyüt */
    button, .dugme { padding: 10px 16px; min-height: 44px; border-radius: 7px; }
    .dugme.kucuk, button.kucuk { padding: 7px 12px; min-height: 38px; font-size: 14px; }
    button.baglanti { min-height: 0; padding: 0; }
    select { min-height: 42px; }
    /* Formdaki tek butonu tam genişlik yap */
    form > button:only-of-type { width: 100%; }
    .kdv-kartlar { grid-template-columns: 1fr 1fr; gap: 10px; }
    .kdv-kart .ay { font-size: 14px; }
    .iki-sutun, .uc-sutun, .fis-alanlari { grid-template-columns: 1fr; }
    /* Fatura kartı başlığı: dikey yığ */
    .fatura > div:first-child { flex-direction: column; align-items: stretch !important; }
    .fatura .ay-grup, .ay-grup > .fatura { margin-left: 8px; margin-right: 8px; }
    .ay-grup > summary { padding: 12px; gap: 8px; }
    .bolum-baslik { flex-direction: column; align-items: flex-start; gap: 4px; }
    table.ozet:not(.kalem) th:nth-child(n+4), table.ozet:not(.kalem) td:nth-child(n+4) { font-size: 13px; }
}
.toplu-ata { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; padding: 10px 16px; background: #fbfcfe; border-bottom: 1px solid var(--cizgi); }
.toplu-ata form { margin: 0; }

/* Filtre + arama çubuğu (gelen faturalar) */
.filtre-cubugu { display: flex; flex-wrap: wrap; gap: 10px 16px; align-items: center; margin-top: 10px; padding-top: 10px; border-top: 1px solid var(--cizgi); }
.ara-form { display: flex; gap: 8px; align-items: center; margin: 0; }
.ara-form input[type=search] { min-width: 210px; }
.cipler { display: flex; flex-wrap: wrap; gap: 6px; }
.cip { padding: 5px 12px; border-radius: 14px; background: #eef1f6; color: var(--yazi); text-decoration: none; font-size: 13px; white-space: nowrap; }
.cip:hover { filter: brightness(.97); }
.cip.c-subesiz, .cip.c-belirsiz { background: var(--sari-bg); color: var(--sari); }
.cip.c-riskli { background: var(--kirmizi-bg); color: var(--kirmizi); }
.cip.aktif { background: var(--ana); color: #fff; }
.cip.aktif.c-subesiz, .cip.aktif.c-belirsiz { background: var(--sari); color: #fff; }
.cip.aktif.c-riskli { background: var(--kirmizi); color: #fff; }
@media (max-width: 640px) { .ara-form { width: 100%; } .ara-form input[type=search] { flex: 1; min-width: 0; } .cipler { width: 100%; } }

/* Firma panosu (dashboard) */
.firma-ust { display: flex; justify-content: space-between; align-items: flex-start; gap: 16px; flex-wrap: wrap; margin-bottom: 16px; }
.firma-ust h1 { margin: 0; }
.firma-ust .alt-baslik { margin: 3px 0 0; }
.yil-gezgin { display: flex; align-items: center; gap: 8px; white-space: nowrap; }
.pano { display: grid; grid-template-columns: repeat(auto-fill, minmax(230px, 1fr)); gap: 14px; margin-bottom: 22px; }
.pano-kart { display: flex; flex-direction: column; gap: 6px; background: var(--kart); border: 1px solid var(--cizgi); border-left: 4px solid var(--ana); border-radius: 10px; padding: 14px 16px; text-decoration: none; color: var(--yazi); transition: box-shadow .12s, transform .12s; }
.pano-kart:hover { box-shadow: 0 3px 12px rgba(31,41,51,.1); transform: translateY(-1px); }
.pk-ust { display: flex; align-items: center; gap: 8px; }
.pk-ikon { font-size: 20px; line-height: 1; }
.pk-baslik { font-weight: 700; font-size: 15px; }
.pk-rozet { margin-left: auto; }
.pk-buyuk { font-size: 23px; font-weight: 700; font-variant-numeric: tabular-nums; line-height: 1.1; }
.pk-alt { color: var(--soluk); font-size: 12px; }
.pano-kart .pk-alt a { color: var(--ana); }
.p-z { border-left-color: #2f4fa8; }
.p-fatura { border-left-color: #1f7a4d; }
.p-kdv { border-left-color: #8a5a00; }
.p-sube { border-left-color: #6b4fb0; }
.p-esleme { border-left-color: #0e7490; }
.p-altos { border-left-color: #b4530a; }
details.ayarlar > summary { cursor: pointer; list-style: none; }
details.ayarlar > summary::-webkit-details-marker { display: none; }
details.ayarlar > summary::before { content: "⚙ "; }
@media (max-width: 640px) { .pano { grid-template-columns: 1fr 1fr; gap: 10px; } .pano-kart { padding: 12px; } .pk-buyuk { font-size: 19px; } .pk-baslik { font-size: 14px; } .firma-ust { flex-direction: column; } }

.cip.c-aktarildi { background: var(--yesil-bg); color: var(--yesil); }
.cip.aktif.c-aktarildi { background: var(--yesil); color: #fff; }

/* Uygulama kabuğu: PC yan menüsü, telefonda açılır gezinme */
:root {
    --bg: #f5f7fb;
    --kart: #fff;
    --yazi: #182230;
    --soluk: #657286;
    --cizgi: #e1e7ef;
    --ana: #2853a6;
    --yesil: #18794e;
    --yesil-bg: #e8f5ee;
    --kirmizi: #b42318;
    --kirmizi-bg: #fff0ee;
    --sari: #9a6700;
    --sari-bg: #fff6df;
    --golge: 0 2px 10px rgba(24, 34, 48, .045);
}
body { background: var(--bg); }
.ust {
    position: sticky; top: 0; z-index: 30; min-height: 62px;
    justify-content: space-between; gap: 14px; padding: 9px 24px;
    background: #fff; color: var(--yazi); border-bottom: 1px solid var(--cizgi);
    box-shadow: 0 2px 8px rgba(24,34,48,.035);
}
.ust a, .ust .baglanti { color: var(--yazi); }
.ust .logo { display: inline-flex; align-items: center; gap: 10px; color: var(--yazi); font-size: 16px; letter-spacing: -.2px; }
.logo-isaret { display: grid; width: 32px; height: 32px; place-items: center; color: #fff; background: var(--ana); border-radius: 10px; font-size: 17px; }
.ust .kim { margin-left: auto; color: var(--soluk); }
.ust .kim a { color: var(--ana); }
.ust .kim button.baglanti { color: var(--soluk); }
.uygulama-shell { display: grid; grid-template-columns: 248px minmax(0,1fr); min-height: calc(100vh - 62px); }
.uygulama-shell.shell-giris { display: block; min-height: 0; }
.yan-menu { position: sticky; top: 62px; align-self: start; height: calc(100vh - 62px); overflow-y: auto; padding: 22px 14px 16px; background: #fff; border-right: 1px solid var(--cizgi); }
.yan-menu nav, .mobil-menu-icerik { display: flex; flex-direction: column; gap: 3px; }
.nav-baslik, .nav-bolum-baslik { padding: 10px 11px 6px; color: #8a95a5; font-size: 10px; font-weight: 750; letter-spacing: .09em; }
.nav-bolum-baslik { margin-top: 12px; }
.nav-firma-adi { overflow: hidden; padding: 1px 11px 8px; color: var(--yazi); font-size: 12px; font-weight: 700; text-overflow: ellipsis; white-space: nowrap; }
.nav-link { display: flex; align-items: center; gap: 10px; min-height: 40px; padding: 8px 11px; border-radius: 8px; color: #465366; font-weight: 520; text-decoration: none; }
.nav-link:hover { background: #f3f6fb; color: var(--ana); }
.nav-link.aktif { color: #21498f; background: #edf3ff; font-weight: 700; }
.nav-ikon { display: inline-grid; width: 22px; place-items: center; color: #8490a1; font-size: 17px; }
.nav-link.aktif .nav-ikon { color: var(--ana); }
.yan-menu-alt { position: absolute; bottom: 12px; color: #98a2b1; font-size: 11px; }
.uygulama-shell > main { width: 100%; max-width: 1680px; padding: 28px clamp(18px, 2.5vw, 40px) 48px; margin: 0; }
.uygulama-shell.shell-giris > main { max-width: 1500px; margin: 0 auto; }
.mobil-menu { display: none; }
.kirinti { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; color: #8490a1; }
.kirinti a { text-decoration: none; }
.kirinti a:hover { text-decoration: underline; }
h1 { color: #152238; font-size: clamp(21px, 2vw, 27px); letter-spacing: -.45px; }
h2 { color: #243248; font-size: 16px; }
.alt-baslik { color: #69778b; }
.kart, .ay-grup, .pano-kart { border-color: var(--cizgi); border-radius: 12px; box-shadow: var(--golge); }
.kart { padding: 19px; margin-bottom: 18px; }
.pano { gap: 16px; }
.pano-kart { min-height: 120px; padding: 17px 18px; }
.pano-kart:hover { box-shadow: 0 8px 24px rgba(31,51,82,.09); transform: translateY(-2px); }
input, select, textarea { border-color: #d6deea; border-radius: 7px; padding: 8px 10px; }
input:focus, select:focus, textarea:focus { outline: 3px solid rgba(40,83,166,.15); border-color: var(--ana); }
button, .dugme { border-radius: 7px; font-weight: 650; }
button.ikincil, .dugme.ikincil { border-color: #cbd6e7; }
.etiket { font-weight: 650; }
.mobil-menu-icerik { position: absolute; top: calc(100% + 8px); left: 0; width: min(340px, calc(100vw - 24px)); max-height: calc(100vh - 100px); overflow: auto; padding: 12px; border: 1px solid var(--cizgi); border-radius: 12px; background: #fff; box-shadow: 0 14px 38px rgba(20,34,56,.18); }
.mobil-menu-icerik[hidden] { display: none; }
.mobil-menu summary { display: flex; align-items: center; gap: 7px; padding: 8px 10px; border: 1px solid var(--cizgi); border-radius: 8px; cursor: pointer; list-style: none; }
.mobil-menu summary::-webkit-details-marker { display: none; }
.fatura-giris-panel { margin: 12px 0; padding: 14px 16px; border: 1px solid var(--cizgi); border-radius: 10px; background: #fbfcff; }
.fatura-giris-panel > summary { display: flex; align-items: center; gap: 12px; cursor: pointer; list-style: none; }
.fatura-giris-panel > summary::-webkit-details-marker { display: none; }
.fatura-giris-panel > summary::before { content: "▸"; color: var(--ana); }
.fatura-giris-panel[open] > summary::before { content: "▾"; }
.fatura-giris-panel > summary .not { margin-left: auto; }
.fatura-giris-form { margin-top: 18px; }
.fatura-form-grid { display: grid; grid-template-columns: repeat(4, minmax(150px,1fr)); gap: 12px; }
.fatura-form-grid label { min-width: 0; }
.fatura-form-grid input, .fatura-form-grid select { width: 100%; }
.fatura-form-baslik, .fatura-kalem-baslik { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin: 8px 0 12px; }
.fatura-form-baslik h2, .fatura-kalem-baslik h2 { margin: 0 0 3px; }
.fatura-form-baslik p, .fatura-kalem-baslik p { margin: 0; }
.fatura-kalemler { display: flex; flex-direction: column; gap: 8px; }
.fatura-kalem-satir { display: grid; grid-template-columns: minmax(180px,2fr) minmax(125px,1.1fr) minmax(145px,1.2fr) minmax(110px,.9fr) minmax(105px,.8fr) minmax(110px,1fr) 38px; align-items: end; gap: 9px; padding: 12px; border: 1px solid var(--cizgi); border-radius: 9px; background: #fff; }
.fatura-kalem-satir label { min-width: 0; margin: 0; }
.fatura-kalem-satir input, .fatura-kalem-satir select { width: 100%; min-width: 0; }
.miktar-birim { display: grid; grid-template-columns: 1fr 1.2fr; gap: 4px; }
.kalem-sil { min-height: 38px; padding: 5px 10px; border: 1px solid #f0c9c5; background: #fff6f5; color: var(--kirmizi); font-size: 20px; }
.fatura-giris-toplam { display: flex; align-items: center; gap: 10px; margin: 12px 0; padding: 12px 14px; border-radius: 8px; background: #f0f4fa; }
.fatura-giris-toplam strong { font-variant-numeric: tabular-nums; }
.fatura-giris-toplam .not { margin-left: auto; }
.fatura-form-alt, .ubl-yukleme-form { display: flex; align-items: end; gap: 12px; flex-wrap: wrap; margin-top: 12px; }
.fatura-form-alt > label, .ubl-yukleme-form > label { margin: 0; }
.fatura-form-alt .belge-sec { min-width: 280px; }
.fatura-form-alt .belge-sec input { display: block; margin-top: 5px; }
.fatura-form-alt .onay-kutusu, .ubl-yukleme-form .onay-kutusu { flex-direction: row; align-items: center; color: var(--yazi); font-size: 13px; }
.fatura-form-alt .onay-kutusu input, .ubl-yukleme-form .onay-kutusu input { width: 18px; height: 18px; }
.fatura-ubl-panel { background: #fff; }
.firma-liste-duzen { display: grid; grid-template-columns: minmax(0,1fr) 310px; gap: 20px; align-items: start; }
.firma-liste-baslik { display: flex; align-items: center; justify-content: space-between; margin: 0 0 10px; }
.firma-liste-baslik h2 { margin: 0; }
.firmalar-grid { display: grid; grid-template-columns: repeat(auto-fit,minmax(min(280px,100%),1fr)); gap: 14px; }
.firma-liste-kart { display: flex; min-width: 0; flex-direction: column; gap: 7px; padding: 17px; border: 1px solid var(--cizgi); border-radius: 12px; color: var(--yazi); background: #fff; box-shadow: var(--golge); text-decoration: none; transition: border-color .15s, box-shadow .15s, transform .15s; }
.firma-liste-kart:hover { border-color: #b9c9e4; box-shadow: 0 8px 22px rgba(31,51,82,.08); transform: translateY(-1px); }
.firma-liste-ust { display: flex; align-items: center; justify-content: space-between; margin-bottom: 4px; }
.firma-liste-ikon, .firma-ekle-ikon { display: grid; width: 36px; height: 36px; place-items: center; border-radius: 10px; color: var(--ana); background: #edf3ff; font-size: 20px; }
.firma-liste-ok { color: #8b97a8; font-size: 20px; }
.firma-liste-kart > strong { overflow-wrap: anywhere; font-size: 15px; }
.firma-liste-alt { display: flex; align-items: center; justify-content: space-between; gap: 8px; margin-top: 9px; padding-top: 10px; border-top: 1px solid #edf0f5; font-size: 12px; }
.firma-liste-alt .etiket { display: inline-block; margin: 1px; }
.firma-ekle-kart { position: sticky; top: 82px; }
.firma-ekle-kart h2 { margin: 12px 0 2px; }
.firma-ekle-kart .firma-ekle-ikon { margin-bottom: 4px; }
.firma-ekle-kart label input { width: 100%; }
.firma-ekle-kart > button { width: 100%; }
.firma-bos { color: var(--soluk); }
@media (max-width: 920px) {
    .uygulama-shell { display: block; }
    .yan-menu { display: none; }
    .mobil-menu { position: relative; display: block; margin-right: auto; }
    .mobil-menu[open] .mobil-menu-icerik { display: flex; }
    .uygulama-shell > main { padding: 22px 20px 42px; }
    .fatura-form-grid { grid-template-columns: repeat(2, minmax(0,1fr)); }
    .fatura-kalem-satir { grid-template-columns: repeat(2, minmax(0,1fr)); }
    .fatura-kalem-satir .kalem-urun { grid-column: 1 / -1; }
    .kalem-sil { justify-self: end; }
    .firma-liste-duzen { grid-template-columns: 1fr; }
    .firma-ekle-kart { position: static; }
}
@media (min-width: 921px) and (max-width: 1180px) {
    .fatura-kalem-satir { grid-template-columns: repeat(3,minmax(0,1fr)); }
    .fatura-kalem-satir .kalem-urun { grid-column: 1 / -1; }
    .fatura-kalem-satir .kalem-sil { justify-self: end; }
}
@media (max-width: 640px) {
    .ust { min-height: 56px; padding: 7px 12px; gap: 8px; }
    .ust .logo { gap: 7px; font-size: 14px; }
    .logo-isaret { width: 29px; height: 29px; border-radius: 9px; }
    .ust .kim { gap: 8px; font-size: 12px; }
    .kullanici-adi { display: none; }
    .mobil-menu summary { padding: 7px 9px; font-size: 13px; }
    .uygulama-shell > main { padding: 17px 12px 32px; }
    .kart { padding: 14px; border-radius: 11px; }
    .pano-kart { min-height: 112px; }
    .fatura-giris-panel { padding: 12px; }
    .fatura-giris-panel > summary { align-items: flex-start; flex-direction: column; gap: 4px; }
    .fatura-giris-panel > summary .not { margin-left: 0; }
    .fatura-form-grid { grid-template-columns: 1fr; gap: 4px; }
    .fatura-kalem-baslik { align-items: flex-start; }
    .fatura-kalem-satir { grid-template-columns: 1fr 1fr; padding: 10px; }
    .fatura-kalem-satir .kalem-urun { grid-column: 1 / -1; }
    .fatura-kalem-satir label { font-size: 11px; }
    .fatura-giris-toplam { flex-wrap: wrap; }
    .fatura-giris-toplam .not { width: 100%; margin-left: 0; }
    .fatura-form-alt > *, .ubl-yukleme-form > * { width: 100%; }
    .fatura-form-alt .belge-sec { min-width: 0; }
    .firmalar-grid { grid-template-columns: 1fr; }
    .filtre-cubugu, .ara-form { min-width: 0; max-width: 100%; }
    .ara-form > button:only-of-type { width: auto; flex: 0 0 auto; }
    .ara-form input[type="search"] { width: 0; min-width: 0; flex: 1 1 0; }
}
.z-durum { display: flex; flex-wrap: wrap; gap: 3px 10px; }
.zd { white-space: nowrap; font-weight: 600; }
.zd-islendi { color: var(--yesil); }
.zd-bekleniyor, .zd-kismi { color: var(--sari); }
.zd-yok { color: var(--soluk); font-weight: normal; }
.sablon-sec, .sablon-kaydet, .ocr-yardim { display: flex; align-items: end; gap: 10px; margin: 10px 0; padding: 11px 13px; border: 1px solid var(--cizgi); border-radius: 9px; background: #f4f7fc; }
.sablon-sec select { display: block; width: min(420px, 100%); margin-top: 4px; }
.sablon-kaydet { justify-content: flex-end; flex-wrap: wrap; background: #fff; }
.sablon-kaydet label { min-width: min(260px, 100%); margin: 0; }
.ocr-yardim { align-items: center; flex-wrap: wrap; background: #eff6ff; }
.ocr-yardim label { min-width: 240px; margin: 0; }
.ocr-yardim input { display: block; width: 100%; margin-top: 4px; }
.ocr-yardim .not { flex: 1 1 240px; }
.donem-kapanis { margin: 18px 0 22px; padding: 18px; }
.donem-kapanis-ust { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-bottom: 14px; }
.donem-kapanis h2 { margin: 0 0 4px; }
.donem-kapanis p { margin: 0; }
.kapanis-sayac { padding: 6px 10px; border-radius: 999px; font-size: 12px; font-weight: 700; white-space: nowrap; }
.kapanis-sayac.tamam { color: #126b48; background: #e8f7ef; }
.kapanis-sayac.uyari { color: #995500; background: #fff3dd; }
.kapanis-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 10px; }
.kapanis-adim { display: flex; align-items: center; gap: 10px; min-width: 0; padding: 12px; border: 1px solid var(--cizgi); border-radius: 9px; color: var(--yazi); text-decoration: none; }
.kapanis-adim:hover { border-color: #b9c9e4; background: #f9fbff; }
.kapanis-adim > span:last-child { display: grid; gap: 3px; min-width: 0; }
.kapanis-adim small { color: var(--soluk); line-height: 1.4; }
.adim-ikon { display: grid; flex: 0 0 30px; width: 30px; height: 30px; place-items: center; border-radius: 50%; font-weight: 800; }
.adim-iyi { color: #126b48; background: #e8f7ef; }
.adim-uyari { color: #995500; background: #fff3dd; }
.adim-bilgi { color: var(--ana); background: #edf3ff; }
@media (max-width: 700px) { .kapanis-grid { grid-template-columns: 1fr; } .donem-kapanis-ust { align-items: flex-start; flex-direction: column; } .sablon-sec, .ocr-yardim { align-items: stretch; flex-direction: column; } }
