/*
 * Hesaplama araçları (hukuk-hesaplama-araclari skill'i). Yalnızca araç bulunan sayfalarda yüklenir.
 * Renkler --hs-* belirteçlerinden gelir; tema :root içinde tanımlamazsa virgülden sonraki varsayılan
 * (Baykal & Daştan paleti) kullanılır. Eşleme şablonu: skill klasöründeki SKILL.md → "Renk belirteçleri".
 */
.th-ha-hesap { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 0; margin: 0 0 2.4em; border-radius: var(--hs-r-b, 20px); background: var(--hs-beyaz, #fff); border: 1px solid var(--hs-cizgi-2, #efebe3); box-shadow: var(--hs-golge, 0 24px 60px -32px rgba(13, 27, 51, .38)); overflow: hidden; overflow: clip; scroll-margin-top: calc(var(--hs-ust-y, 82px) + 20px); }
.th-ha-hesap-form { display: grid; gap: 16px; align-content: start; padding: clamp(22px, 3vw, 36px); }
.th-ha-hesap-baslik { display: flex; align-items: center; gap: 12px; margin: 0 0 2px; font-family: var(--hs-f-baslik, "Newsreader", "Iowan Old Style", Georgia, serif); font-weight: 560; font-size: 1.22rem; color: var(--hs-metin, #16203a); }
.th-ha-hesap-baslik .th-ha-ikon { width: 40px; height: 40px; padding: 9px; border-radius: 12px; background: var(--hs-antrasit, #0d1b33); color: var(--hs-altin, #b8925a); }
.th-ha-girdi { display: grid; gap: 7px; margin: 0; padding: 0; border: 0; min-width: 0; }
.th-ha-girdi label, .th-ha-girdi legend { font-size: .9rem; font-weight: 600; color: var(--hs-metin, #16203a); padding: 0; }
.th-ha-girdi label small, .th-ha-girdi legend small { font-weight: 400; color: var(--hs-soluk, #4b5568); font-size: .8rem; }
.th-ha-girdi input[type="text"], .th-ha-girdi input[type="number"], .th-ha-girdi input[type="date"], .th-ha-liste select { width: 100%; height: 50px; padding: 0 14px; border-radius: 13px; border: 1.5px solid var(--hs-cizgi, #e7e1d5); background: var(--hs-kagit, #fcfbf8); font-size: 1rem; color: var(--hs-metin, #16203a); transition: border-color .2s, box-shadow .2s, background-color .2s; -webkit-appearance: none; appearance: none; }
.th-ha-girdi input:focus, .th-ha-liste select:focus { outline: none; border-color: var(--hs-mavi-orta, #b8925a); background: var(--hs-beyaz, #fff); box-shadow: 0 0 0 4px rgba(184, 146, 90, .18); }
.th-ha-girdi-birim { position: relative; display: flex; align-items: center; }
.th-ha-girdi-birim input { padding-right: 52px !important; }
.th-ha-girdi-birim span { position: absolute; right: 14px; font-size: .84rem; font-weight: 600; color: var(--hs-soluk, #4b5568); pointer-events: none; }
.th-ha-liste { position: relative; }
.th-ha-liste select { padding-right: 42px; cursor: pointer; text-overflow: ellipsis; }
.th-ha-liste .th-ha-ikon { position: absolute; right: 14px; top: 50%; width: 18px; height: 18px; transform: translateY(-50%); color: var(--hs-soluk, #4b5568); pointer-events: none; }
.th-ha-secim-ic { display: flex; flex-wrap: wrap; gap: 6px; }
.th-ha-secim label { position: relative; cursor: pointer; }
.th-ha-secim input { position: absolute; opacity: 0; pointer-events: none; }
.th-ha-secim span { display: inline-flex; align-items: center; min-height: 42px; padding: 8px 14px; border-radius: 12px; border: 1.5px solid var(--hs-cizgi, #e7e1d5); background: var(--hs-kagit, #fcfbf8); font-size: .9rem; font-weight: 500; line-height: 1.3; transition: border-color .2s, background-color .2s, color .2s; }
.th-ha-secim input:checked + span { border-color: var(--hs-antrasit, #0d1b33); background: var(--hs-antrasit, #0d1b33); color: #fff; }
.th-ha-secim input:focus-visible + span { outline: 2px solid var(--hs-altin, #b8925a); outline-offset: 2px; }
.th-ha-sayac { display: grid; grid-template-columns: 44px minmax(0, 1fr) 44px; height: 50px; border-radius: 13px; border: 1.5px solid var(--hs-cizgi, #e7e1d5); background: var(--hs-kagit, #fcfbf8); overflow: hidden; }
.th-ha-sayac button { border: 0; background: none; color: var(--hs-metin-2, #2f3a52); display: grid; place-items: center; }
.th-ha-sayac button:hover { background: var(--hs-buz, #f4f1ea); }
.th-ha-sayac .th-ha-ikon { width: 16px; height: 16px; }
.th-ha-sayac input { width: 100%; border: 0; background: none; text-align: center; font-weight: 600; font-size: 1.02rem; -moz-appearance: textfield; }
.th-ha-sayac input::-webkit-inner-spin-button, .th-ha-sayac input::-webkit-outer-spin-button { -webkit-appearance: none; margin: 0; }
.th-ha-hesap-ek { border-radius: 14px; border: 1px dashed var(--hs-cizgi, #e7e1d5); padding: 0 14px; }
.th-ha-hesap-ek summary { display: flex; align-items: center; gap: 8px; min-height: 46px; font-size: .9rem; font-weight: 600; color: var(--hs-mavi, #1c3358); cursor: pointer; list-style: none; }
.th-ha-hesap-ek summary::-webkit-details-marker { display: none; }
.th-ha-hesap-ek summary .th-ha-ikon { width: 16px; height: 16px; transition: transform .3s; }
.th-ha-hesap-ek[open] summary .th-ha-ikon { transform: rotate(45deg); }
.th-ha-hesap-ek[open] { padding-bottom: 14px; }
.th-ha-hesap-ek > .th-ha-girdi + .th-ha-girdi, .th-ha-hesap-ek > .th-ha-izgara-2 { margin-top: 12px; }
.th-ha-hesap-hata { margin: 0; padding: 12px 14px; border-radius: 12px; background: #fbf0ec; color: var(--hs-hata, #a33b2b); font-size: .9rem; font-weight: 500; }
.th-ha-hesap-dugmeler { display: flex; align-items: center; gap: 14px; margin-top: 4px; }
.th-ha-hesap-dugmeler .th-ha-dugme { flex: 1; min-height: 54px; }
.th-ha-sekme-dugmeler { display: flex; flex-wrap: wrap; gap: 4px; padding: 4px; border-radius: 14px; background: var(--hs-buz, #f4f1ea); margin-bottom: 14px; }
.th-ha-sekme-dugmeler button { flex: 1; min-height: 40px; padding: 0 12px; border: 0; border-radius: 11px; background: none; font-size: .88rem; font-weight: 600; color: var(--hs-metin-2, #2f3a52); white-space: nowrap; }
.th-ha-sekme-dugmeler button.etkin { background: var(--hs-beyaz, #fff); color: var(--hs-metin, #16203a); box-shadow: 0 4px 12px -6px rgba(0, 0, 0, .25); }
.th-ha-sekme-panel { display: grid; gap: 14px; }
.th-ha-miras-olu-satir { display: grid; grid-template-columns: minmax(0, 1fr) 80px 40px; align-items: center; gap: 8px; padding: 8px 0; border-bottom: 1px dashed var(--hs-cizgi-2, #efebe3); font-size: .9rem; }
.th-ha-miras-olu-satir input { height: 42px; padding: 0 8px; border-radius: 10px; border: 1.5px solid var(--hs-cizgi, #e7e1d5); background: var(--hs-kagit, #fcfbf8); text-align: center; }
.th-ha-miras-olu-satir button { width: 40px; height: 40px; border-radius: 10px; border: 0; background: var(--hs-buz, #f4f1ea); display: grid; place-items: center; }
.th-ha-miras-olu-satir .th-ha-ikon { width: 16px; height: 16px; }
.th-ha-miras-olu > .th-ha-bag-dugme { margin-top: 10px; }
.th-ha-zumre { display: grid; gap: 12px; padding: 16px; border-radius: 16px; background: var(--hs-kagit, #fcfbf8); border: 1px solid var(--hs-cizgi-2, #efebe3); }
.th-ha-zumre .th-ha-kucuk-baslik { margin: 0; }
.th-ha-sure-bilgi { display: flex; gap: 10px; margin: 0; padding: 12px 14px; border-radius: 12px; background: var(--hs-buz, #f4f1ea); font-size: .88rem; color: var(--hs-metin-2, #2f3a52); }
.th-ha-sure-bilgi .th-ha-ikon { width: 18px; height: 18px; color: var(--hs-mavi, #1c3358); flex: none; margin-top: 1px; }

/* Izgara, küçük başlık, notlar */
.th-ha-izgara-2 { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px 14px; }
.th-ha-izgara-3 { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; }
.th-ha-kucuk-baslik { margin: 4px 0 -4px; font-size: .9rem; font-weight: 700; color: var(--hs-metin, #16203a); }
.th-ha-kucuk-baslik small { font-weight: 400; color: var(--hs-soluk, #4b5568); }
.th-ha-kucuk-not { margin: -4px 0 0; font-size: .8rem; color: var(--hs-soluk, #4b5568); line-height: 1.5; }
.th-ha-dugme-metin { flex: none; padding: 0 6px; border: 0; background: none; font-size: .88rem; font-weight: 600; color: var(--hs-soluk, #4b5568); text-decoration: underline; text-underline-offset: 3px; }
.th-ha-dugme-metin:hover { color: var(--hs-metin, #16203a); }
.th-ha-onay-listesi { gap: 4px; }
.th-ha-onay-listesi legend { margin-bottom: 6px; }
.th-ha-onay-listesi label { display: flex; align-items: flex-start; gap: 10px; padding: 8px 10px; border-radius: 10px; font-size: .9rem; font-weight: 500; cursor: pointer; transition: background-color .2s; }
.th-ha-onay-listesi label:hover { background: var(--hs-kagit, #fcfbf8); }
.th-ha-onay-listesi input { flex: none; width: 19px; height: 19px; margin-top: 2px; accent-color: var(--hs-antrasit, #0d1b33); }
.th-ha-kvkk-durum { display: flex; gap: 14px; margin: 0 0 16px; padding: 16px; border-radius: 16px; }
.th-ha-kvkk-durum .th-ha-ikon { width: 26px; height: 26px; flex: none; }
.th-ha-kvkk-durum strong { display: block; font-family: var(--hs-f-baslik, "Newsreader", "Iowan Old Style", Georgia, serif); font-size: 1.16rem; font-weight: 560; color: #fff; }
.th-ha-kvkk-durum span { display: block; margin-top: 4px; font-size: .86rem; color: var(--hs-acik-soluk, #a3aec2); }
.th-ha-kvkk-zorunlu { background: rgba(215, 182, 122, .14); }
.th-ha-kvkk-zorunlu .th-ha-ikon { color: var(--hs-altin-acik, #d7b67a); }
.th-ha-kvkk-muaf { background: rgba(120, 190, 150, .12); }
.th-ha-kvkk-muaf .th-ha-ikon { color: #8fd0a7; }
.th-ha-kvkk-olcek { height: 8px; margin: 0 0 10px; border-radius: 8px; background: rgba(255, 255, 255, .1); overflow: hidden; }
.th-ha-kvkk-olcek span { display: block; height: 100%; border-radius: inherit; background: linear-gradient(90deg, var(--hs-altin-koyu, #7a5b2a), var(--hs-altin-acik, #d7b67a)); transform-origin: left; animation: th-ha-serit-gel .9s var(--hs-yumusak, cubic-bezier(.22, .8, .24, 1)) both; }

/* ---------- Temel öğeler (temada aynı sınıf varsa onunki geçerli olur: :where ile özgüllük 0) ---------- */
.th-ha-hesap [hidden], .th-ha-arabulucu [hidden] { display: none !important; }   /* temada genel [hidden] kuralı olmasa da gizli paneller kapalı kalır */
:where(.th-ha-hesap, .th-ha-arabulucu, .th-ha-tablo-kap, .th-ha-arac-aciklama) .th-ha-ikon { display: block; width: 20px; height: 20px; flex: none; }
:where(.th-ha-hesap, .th-ha-arabulucu) .th-ha-dugme { position: relative; display: inline-flex; align-items: center; justify-content: center; gap: 10px; min-height: 50px; padding: 0 24px; border-radius: 999px; border: 1.5px solid transparent; font-weight: 650; font-size: .96rem; line-height: 1.2; cursor: pointer; transition: background-color .25s, transform .2s; }
:where(.th-ha-hesap, .th-ha-arabulucu) .th-ha-dugme .th-ha-ikon { width: 18px; height: 18px; }
:where(.th-ha-hesap, .th-ha-arabulucu) .th-ha-dugme-altin { background: var(--hs-altin, #b8925a); color: var(--hs-antrasit, #0d1b33); }
:where(.th-ha-hesap, .th-ha-arabulucu) .th-ha-dugme-altin:hover { background: var(--hs-altin-acik, #d7b67a); }
:where(.th-ha-hesap, .th-ha-arabulucu) .th-ha-dugme-tam { width: 100%; }
:where(.th-ha-hesap, .th-ha-arabulucu) .th-ha-dugme:active { transform: scale(.97); }
:where(.th-ha-hesap, .th-ha-arabulucu) .th-ha-bag-ok { display: inline-flex; align-items: center; gap: 8px; font-weight: 700; font-size: .92rem; color: var(--hs-altin-acik, #d7b67a); white-space: nowrap; }
:where(.th-ha-hesap, .th-ha-arabulucu) .th-ha-bag-ok .th-ha-ikon { width: 18px; height: 18px; }
:where(.th-ha-hesap, .th-ha-arabulucu) .th-ha-bag-dugme { display: inline-flex; align-items: center; gap: 8px; padding: 0; border: 0; background: none; font-weight: 650; font-size: .9rem; color: var(--hs-altin-koyu, #7a5b2a); cursor: pointer; }
:where(.th-ha-hesap, .th-ha-arabulucu) .th-ha-bag-dugme .th-ha-ikon { width: 17px; height: 17px; }
:where(.th-ha-tablo-kap) { margin: 1.4em 0; overflow-x: auto; border-radius: 16px; border: 1px solid var(--hs-cizgi-2, #efebe3); background: var(--hs-beyaz, #fff); }
:where(.th-ha-tablo) { width: 100%; border-collapse: collapse; font-size: .92rem; }
:where(.th-ha-tablo) th, :where(.th-ha-tablo) td { padding: 12px 16px; text-align: left; vertical-align: top; border-bottom: 1px solid var(--hs-cizgi-2, #efebe3); }
:where(.th-ha-tablo) thead th { background: var(--hs-antrasit, #0d1b33); color: #fff; font-size: .78rem; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; white-space: nowrap; }
:where(.th-ha-tablo) tbody th { font-weight: 600; color: var(--hs-metin, #16203a); }
:where(.th-ha-tablo) tbody tr:last-child > * { border-bottom: 0; }
:where(.th-ha-tablo-grup) th { background: var(--hs-kagit, #fcfbf8); color: var(--hs-altin-koyu, #7a5b2a); font-size: .78rem; letter-spacing: .1em; text-transform: uppercase; }
:where(.th-ha-tablo-not) { margin: 0; padding: 10px 16px; font-size: .8rem; color: var(--hs-soluk, #4b5568); background: var(--hs-kagit, #fcfbf8); border-top: 1px solid var(--hs-cizgi-2, #efebe3); }
:where(.th-ha-tablo-kucuk) th, :where(.th-ha-tablo-kucuk) td { padding: 8px 10px; font-size: .84rem; }

/* Sonuç alanı */
.th-ha-hesap-sonuc { position: relative; padding: clamp(22px, 3vw, 36px); background: radial-gradient(420px 300px at 100% 0, rgba(215, 182, 122, .14), transparent 70%), var(--hs-antrasit, #0d1b33); color: var(--hs-acik, #eef1f6); min-height: 100%; }
.th-ha-hesap-bekle { position: sticky; top: calc(var(--hs-ust-y, 82px) + 30px); display: grid; justify-items: start; gap: 16px; color: var(--hs-acik-soluk, #a3aec2); }
.th-ha-hesap-bekle .th-ha-ikon { width: 64px; height: 64px; padding: 16px; border-radius: 20px; border: 1px dashed rgba(215, 182, 122, .5); color: var(--hs-altin, #b8925a); }
.th-ha-hesap-bekle p { margin: 0; max-width: 380px; font-size: .96rem; }
.th-ha-sonuc { position: sticky; top: calc(var(--hs-ust-y, 82px) + 20px); animation: th-ha-sonuc-gel .55s var(--hs-yumusak, cubic-bezier(.22, .8, .24, 1)) both; }
@keyframes th-ha-sonuc-gel { from { opacity: 0; transform: translateY(14px); } to { opacity: 1; transform: none; } }
.th-ha-sonuc-ust { padding-bottom: 18px; margin-bottom: 16px; border-bottom: 1px solid var(--hs-cizgi-koyu, rgba(255, 255, 255, .12)); }
.th-ha-sonuc-etiket { margin: 0 0 6px; font-size: .72rem; font-weight: 700; letter-spacing: .18em; text-transform: uppercase; color: var(--hs-altin, #b8925a); }
.th-ha-sonuc-ana { margin: 0; font-family: var(--hs-f-baslik, "Newsreader", "Iowan Old Style", Georgia, serif); font-size: clamp(1.9rem, 3.4vw, 2.6rem); font-weight: 520; line-height: 1.1; color: #fff; font-variant-numeric: tabular-nums; }
.th-ha-sonuc-ara { margin: 18px 0 8px; font-size: .72rem; font-weight: 700; letter-spacing: .16em; text-transform: uppercase; color: var(--hs-acik-soluk, #a3aec2); }
.th-ha-sonuc-satir { display: grid; margin: 0; }
.th-ha-sonuc-satir > div { display: flex; justify-content: space-between; gap: 16px; padding: 9px 0; border-bottom: 1px solid rgba(255, 255, 255, .06); font-size: .92rem; }
.th-ha-sonuc-satir dt { color: var(--hs-acik-soluk, #a3aec2); }
.th-ha-sonuc-satir dd { margin: 0; text-align: right; color: #fff; font-variant-numeric: tabular-nums; }
.th-ha-sonuc-satir dd small { display: block; color: var(--hs-acik-soluk, #a3aec2); font-size: .78rem; }
.th-ha-sonuc-satir .vurgu { border-bottom: 0; margin-top: 4px; padding: 12px 14px; border-radius: 12px; background: rgba(215, 182, 122, .12); }
.th-ha-sonuc-satir .vurgu dt { color: var(--hs-altin-acik, #d7b67a); font-weight: 600; }
.th-ha-sonuc-satir .vurgu strong { color: var(--hs-altin-acik, #d7b67a); font-size: 1.05rem; }
.th-ha-etiket-uyari { display: inline-block !important; padding: 1px 8px; border-radius: 999px; background: rgba(215, 182, 122, .2); color: var(--hs-altin-acik, #d7b67a) !important; }
.th-ha-sonuc-not { list-style: none; display: grid; gap: 8px; margin: 18px 0 0; }
.th-ha-sonuc-not li { display: flex; gap: 10px; font-size: .84rem; line-height: 1.5; color: var(--hs-acik-soluk, #a3aec2); }
.th-ha-sonuc-not .th-ha-ikon { width: 16px; height: 16px; flex: none; margin-top: 2px; color: var(--hs-mavi-acik, #d7b67a); }
.th-ha-sonuc-not strong { color: #fff; }
.th-ha-sonuc-not-uyari li { color: #f1dccb; }
.th-ha-sonuc-not-uyari .th-ha-ikon { color: #e7a37a; }
.th-ha-sonuc-islem { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 20px; }
.th-ha-sonuc-islem button { display: inline-flex; align-items: center; gap: 8px; height: 38px; padding: 0 14px; border-radius: 999px; border: 1px solid var(--hs-cizgi-koyu, rgba(255, 255, 255, .12)); background: rgba(255, 255, 255, .04); color: var(--hs-acik, #eef1f6); font-size: .82rem; }
.th-ha-sonuc-islem button:hover { border-color: var(--hs-altin, #b8925a); }
.th-ha-sonuc-islem .th-ha-ikon { width: 15px; height: 15px; }
.th-ha-sonuc-uyari { display: flex; gap: 8px; margin: 16px 0 0; font-size: .76rem; color: var(--hs-acik-soluk, #a3aec2); opacity: .9; }
.th-ha-sonuc-uyari .th-ha-ikon { width: 14px; height: 14px; flex: none; margin-top: 2px; }
.th-ha-hesap-sonuc .th-ha-tablo-kap { border-color: var(--hs-cizgi-koyu, rgba(255, 255, 255, .12)); background: rgba(255, 255, 255, .03); margin: 0 0 14px; max-height: 320px; overflow-y: auto; }
.th-ha-hesap-sonuc .th-ha-tablo th, .th-ha-hesap-sonuc .th-ha-tablo td { border-color: rgba(255, 255, 255, .06); color: var(--hs-acik, #eef1f6); padding: 9px 12px; font-size: .84rem; }
.th-ha-hesap-sonuc .th-ha-tablo thead th { background: rgba(255, 255, 255, .06); position: sticky; top: 0; }
.th-ha-hesap-sonuc .th-ha-tablo tbody tr:hover { background: rgba(255, 255, 255, .03); }
.th-ha-cubuk-grafik { margin: 18px 0 4px; }
.th-ha-cubuk-serit { display: flex; gap: 3px; height: 12px; border-radius: 8px; overflow: hidden; }
.th-ha-cubuk-serit span { flex-basis: 0; min-width: 4px; transform-origin: left; animation: th-ha-serit-gel .8s var(--hs-yumusak, cubic-bezier(.22, .8, .24, 1)) both; }
@keyframes th-ha-serit-gel { from { transform: scaleX(0); } to { transform: none; } }
.th-ha-cubuk-grafik ul { list-style: none; display: grid; gap: 6px; margin-top: 12px; }
.th-ha-cubuk-grafik li { display: flex; align-items: center; gap: 8px; font-size: .84rem; color: var(--hs-acik-soluk, #a3aec2); }
.th-ha-cubuk-grafik li strong { color: #fff; margin-left: auto; }
.th-ha-cubuk-grafik li small { min-width: 48px; text-align: right; }
.th-ha-cubuk-grafik i { width: 10px; height: 10px; border-radius: 3px; }
.th-ha-r0 { background: var(--hs-altin, #b8925a); } .th-ha-r1 { background: var(--hs-mavi-orta, #b8925a); } .th-ha-r2 { background: var(--hs-mavi-acik, #d7b67a); } .th-ha-r3 { background: var(--hs-altin-koyu, #7a5b2a); } .th-ha-r4 { background: #5f6d7b; }
.th-ha-miras-sonuc { display: grid; grid-template-columns: 150px minmax(0, 1fr); gap: 18px; align-items: center; margin-bottom: 8px; }
.th-ha-pasta { width: 150px; height: 150px; }
.th-ha-pasta circle { transition: stroke-dasharray .8s var(--hs-yumusak, cubic-bezier(.22, .8, .24, 1)); }
.th-ha-pasta > circle { fill: var(--hs-antrasit, #0d1b33); }
.th-ha-miras-tablo table { width: 100%; border-collapse: collapse; font-size: .86rem; }
.th-ha-miras-tablo th, .th-ha-miras-tablo td { padding: 8px 6px; text-align: left; border-bottom: 1px solid rgba(255, 255, 255, .07); vertical-align: top; }
.th-ha-miras-tablo thead th { font-weight: 600; color: var(--hs-acik-soluk, #a3aec2); font-size: .76rem; }
.th-ha-miras-tablo tbody th { font-weight: 500; color: #fff; }
.th-ha-miras-tablo tbody th i { display: inline-block; width: 9px; height: 9px; border-radius: 3px; margin-right: 8px; }
.th-ha-miras-tablo td strong { display: block; color: var(--hs-altin-acik, #d7b67a); }
.th-ha-miras-tablo td small, .th-ha-miras-tablo th small { color: var(--hs-acik-soluk, #a3aec2); }
.th-ha-infaz-cizelge { display: flex; gap: 3px; height: 52px; margin: 0 0 16px; border-radius: 12px; overflow: hidden; }
.th-ha-infaz-cizelge span { position: relative; display: flex; align-items: flex-end; flex-basis: 0; min-width: 18px; padding: 6px 8px; font-size: .68rem; transform-origin: left; animation: th-ha-serit-gel .9s var(--hs-yumusak, cubic-bezier(.22, .8, .24, 1)) both; }
.th-ha-infaz-cizelge b { font-weight: 600; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.th-ha-ic-ice { background: var(--hs-altin, #b8925a); color: var(--hs-gece, #060f22); }
.th-ha-ic-ds { background: var(--hs-mavi-orta, #b8925a); color: #fff; animation-delay: .1s !important; }
.th-ha-ic-den { background: rgba(255, 255, 255, .12); color: var(--hs-acik, #eef1f6); animation-delay: .2s !important; }
.th-ha-sure-gun { display: flex; align-items: center; gap: 18px; margin-bottom: 16px; }
.th-ha-sure-takvim { display: grid; justify-items: center; width: 86px; padding: 10px 0 12px; border-radius: 18px; background: var(--hs-beyaz, #fff); color: var(--hs-metin, #16203a); box-shadow: 0 16px 34px -18px rgba(0, 0, 0, .6); flex: none; }
.th-ha-sure-takvim small { font-size: .72rem; font-weight: 700; letter-spacing: .14em; text-transform: uppercase; color: var(--hs-hata, #a33b2b); }
.th-ha-sure-takvim strong { font-family: var(--hs-f-baslik, "Newsreader", "Iowan Old Style", Georgia, serif); font-size: 2.3rem; line-height: 1; }
.th-ha-sure-takvim span { font-size: .76rem; color: var(--hs-soluk, #4b5568); }
.th-ha-sure-gun > div small { display: block; font-size: .78rem; color: var(--hs-acik-soluk, #a3aec2); }
.th-ha-sure-gun > div strong { display: block; font-family: var(--hs-f-baslik, "Newsreader", "Iowan Old Style", Georgia, serif); font-size: 1.28rem; color: #fff; }
.th-ha-sure-gun > div span { font-size: .84rem; color: var(--hs-acik-soluk, #a3aec2); }
.th-ha-sure-gun .th-ha-yakin { color: var(--hs-altin-acik, #d7b67a); font-weight: 600; }
.th-ha-sure-gun .th-ha-gecmis { color: #f0a48a; font-weight: 600; }
.th-ha-sure-adim { list-style: none; counter-reset: s; display: grid; gap: 8px; margin: 0 0 14px; }
.th-ha-sure-adim li { position: relative; padding-left: 30px; font-size: .86rem; color: var(--hs-acik-soluk, #a3aec2); counter-increment: s; }
.th-ha-sure-adim li::before { content: counter(s); position: absolute; left: 0; top: 0; display: grid; place-items: center; width: 20px; height: 20px; border-radius: 6px; background: rgba(255, 255, 255, .08); font-size: .7rem; color: var(--hs-altin, #b8925a); }
.th-ha-sure-adim strong { color: #fff; }
.th-ha-takvime { display: inline-flex; align-items: center; gap: 8px; margin-top: 14px; height: 40px; padding: 0 16px; border-radius: 999px; border: 1px solid rgba(215, 182, 122, .5); background: rgba(215, 182, 122, .1); color: var(--hs-altin-acik, #d7b67a); font-size: .84rem; font-weight: 600; }
.th-ha-takvime .th-ha-ikon { width: 16px; height: 16px; }

/* Arabuluculuk sorgusu */
.th-ha-arabulucu { display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(0, 1fr); margin: 0 0 2.4em; border-radius: var(--hs-r-b, 20px); background: var(--hs-beyaz, #fff); border: 1px solid var(--hs-cizgi-2, #efebe3); box-shadow: var(--hs-golge, 0 24px 60px -32px rgba(13, 27, 51, .38)); overflow: hidden; overflow: clip; scroll-margin-top: calc(var(--hs-ust-y, 82px) + 20px); }
.th-ha-arabulucu-sec { padding: clamp(22px, 3vw, 34px); display: grid; gap: 16px; align-content: start; }
.th-ha-arabulucu-grup > p { margin: 0 0 8px; font-size: .72rem; font-weight: 700; letter-spacing: .16em; text-transform: uppercase; color: var(--hs-soluk, #4b5568); }
.th-ha-arabulucu-grup > div { display: flex; flex-wrap: wrap; gap: 6px; }
.th-ha-arabulucu-grup button { padding: 9px 13px; border-radius: 12px; border: 1.5px solid var(--hs-cizgi, #e7e1d5); background: var(--hs-kagit, #fcfbf8); font-size: .86rem; font-weight: 500; text-align: left; line-height: 1.35; transition: border-color .2s, background-color .2s, color .2s; }
.th-ha-arabulucu-grup button:hover { border-color: var(--hs-mavi-orta, #b8925a); }
.th-ha-arabulucu-grup button[aria-pressed="true"] { background: var(--hs-antrasit, #0d1b33); border-color: var(--hs-antrasit, #0d1b33); color: #fff; }
.th-ha-arabulucu-sonuclar { position: relative; padding: clamp(22px, 3vw, 34px); background: radial-gradient(420px 300px at 100% 0, rgba(215, 182, 122, .14), transparent 70%), var(--hs-antrasit, #0d1b33); color: var(--hs-acik, #eef1f6); }
.th-ha-arabulucu-sonuclar .th-ha-hesap-bekle { position: static; }
.th-ha-ab-sonuc { position: sticky; top: calc(var(--hs-ust-y, 82px) + 20px); animation: th-ha-sonuc-gel .5s var(--hs-yumusak, cubic-bezier(.22, .8, .24, 1)) both; }
.th-ha-ab-rozet { display: inline-block; margin: 0 0 12px; padding: 6px 14px; border-radius: 999px; font-size: .72rem; font-weight: 700; letter-spacing: .16em; text-transform: uppercase; }
.th-ha-ab-zorunlu .th-ha-ab-rozet { background: var(--hs-altin, #b8925a); color: var(--hs-gece, #060f22); }
.th-ha-ab-hakem .th-ha-ab-rozet { background: var(--hs-mavi-orta, #b8925a); color: #fff; }
.th-ha-ab-ihtiyari .th-ha-ab-rozet { background: rgba(255, 255, 255, .12); color: #fff; }
.th-ha-ab-uygulanmaz .th-ha-ab-rozet { background: #5b3a33; color: #f6d6cb; }
.th-ha-ab-sonuc h3 { font-size: 1.36rem; color: #fff; margin-bottom: 8px; }
.th-ha-ab-ozet { font-weight: 600; color: var(--hs-altin-acik, #d7b67a); }
.th-ha-ab-sonuc p { color: var(--hs-acik-soluk, #a3aec2); font-size: .94rem; }
.th-ha-ab-dayanak { display: flex; align-items: center; gap: 8px; padding: 10px 12px; border-radius: 12px; background: rgba(255, 255, 255, .05); font-size: .84rem !important; }
.th-ha-ab-dayanak .th-ha-ikon { width: 16px; height: 16px; color: var(--hs-altin, #b8925a); }

/* ---------- Araç sayfası açıklama düzeni ---------- */
.th-ha-arac-aciklama { display: grid; grid-template-columns: minmax(0, 1fr) 300px; gap: clamp(30px, 4vw, 64px); align-items: start; margin-top: clamp(40px, 5vw, 72px); }
.th-ha-arac-ana { min-width: 0; max-width: 820px; }
.th-ha-yan-rakam dl { display: grid; gap: 0; margin: 0; }
.th-ha-yan-rakam dl > div { display: flex; justify-content: space-between; gap: 12px; padding: 10px 0; border-top: 1px solid var(--hs-cizgi-2, #efebe3); font-size: .88rem; }
.th-ha-yan-rakam dl > div:first-child { border-top: 0; padding-top: 2px; }
.th-ha-yan-rakam dt { color: var(--hs-soluk, #4b5568); }
.th-ha-yan-rakam dd { margin: 0; font-weight: 600; color: var(--hs-metin, #16203a); text-align: right; white-space: nowrap; }

@media (max-width: 1000px) {
	.th-ha-arac-aciklama { grid-template-columns: minmax(0, 1fr); }
	.th-ha-arac-aciklama .th-ha-yan { position: static; grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.th-ha-arac-aciklama .th-ha-yan-konular { display: none; }
	.th-ha-hesap, .th-ha-arabulucu { grid-template-columns: minmax(0, 1fr); }
	.th-ha-sonuc, .th-ha-hesap-bekle, .th-ha-ab-sonuc { position: static; }
	.th-ha-hesap-sonuc:not(.dolu) { padding-block: 22px; }
	.th-ha-hesap-sonuc:not(.dolu) .th-ha-hesap-bekle { grid-template-columns: auto 1fr; align-items: center; }
	.th-ha-hesap-sonuc:not(.dolu) .th-ha-hesap-bekle .th-ha-ikon { width: 48px; height: 48px; padding: 12px; }
}
@media (max-width: 760px) {
	.th-ha-arac-aciklama .th-ha-yan { grid-template-columns: minmax(0, 1fr); }
	.th-ha-hesap { margin-inline: -4px; border-radius: 22px; }
	.th-ha-miras-sonuc { grid-template-columns: 1fr; justify-items: center; }
	.th-ha-miras-tablo { width: 100%; overflow-x: auto; }
	.th-ha-sekme-dugmeler button { flex: 1 1 45%; }
	.th-ha-sonuc-satir > div { flex-direction: column; gap: 2px; }
	.th-ha-sonuc-satir dd { text-align: left; }
	.th-ha-izgara-3 .th-ha-girdi label { font-size: .84rem; }
	.th-ha-izgara-3 { grid-template-columns: minmax(0, 1fr); }
}
@media print {
	.th-ha-hesap { display: block; box-shadow: none; border: 0; }
	.th-ha-hesap-form { display: none; }
	.th-ha-hesap-sonuc { background: #fff; color: #000; }
	.th-ha-sonuc-ana, .th-ha-sonuc-satir dd, .th-ha-sonuc-satir dt { color: #000 !important; }
	.th-ha-sonuc-islem { display: none; }
}
/* ---------- Saran & Ceran ile eklenen araçlar (metin kutusu, mal rejimi, ceza adımları) ---------- */
.th-ha-girdi textarea { width: 100%; min-height: 128px; padding: 12px 14px; border-radius: 13px; border: 1.5px solid var(--hs-cizgi, #e7e1d5); background: var(--hs-kagit, #fcfbf8); font-size: .98rem; line-height: 1.55; color: var(--hs-metin, #16203a); resize: vertical; transition: border-color .2s, box-shadow .2s, background-color .2s; }
.th-ha-girdi textarea:focus { outline: none; border-color: var(--hs-mavi-orta, #b8925a); background: var(--hs-beyaz, #fff); box-shadow: 0 0 0 4px rgba(76, 125, 169, .14); }
.th-ha-sonuc-not a { color: var(--hs-altin-acik, #d7b67a); text-decoration-color: rgba(230, 212, 166, .45); }
.th-ha-mal-kolonlar { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; }
.th-ha-mal-kolon { display: grid; gap: 12px; align-content: start; padding: 14px; border-radius: 16px; background: var(--hs-kagit, #fcfbf8); border: 1px solid var(--hs-cizgi-2, #efebe3); }
.th-ha-mal-kolon .th-ha-kucuk-baslik { margin: 0; }
.th-ha-ceza-adim td small { display: block; margin-top: 2px; font-size: .74rem; color: inherit; opacity: .7; }
.th-ha-ceza-adim td:last-child { white-space: nowrap; }
:where(.th-ha-hesap, .th-ha-arabulucu) :where(*, *::before, *::after) { box-sizing: border-box; }
.th-ha-girdi input[type="date"] { min-width: 0; }
@media (max-width: 760px) { .th-ha-izgara-2 { grid-template-columns: minmax(0, 1fr); } }
@media (max-width: 760px) { .th-ha-mal-kolonlar { grid-template-columns: minmax(0, 1fr); } .th-ha-ceza-adim td:last-child { white-space: normal; } }
