/* Araçların ORTAK sunumu (CC-234): _shared.php <style> + partials/dayanak-bandi.php <style>, BİREBİR.
   Her araç sayfasında {slug}.css'ten ÖNCE yüklenir (CSSManager). */
.calc-page { padding:32px 0 80px; }
.calc-back { display:inline-flex; align-items:center; gap:6px; color:#5b6b7d; text-decoration:none; font-size:.9375rem; margin-bottom:16px; }
.calc-back:hover { color:#0061ff; }
.calc-title-block { margin-bottom:32px; }
.calc-title-block h1 { font-size:clamp(1.75rem,3.5vw,2.25rem); font-weight:700; color:#0061ff; margin:0 0 8px; }
.calc-title-block p { color:#5b6b7d; font-size:1rem; line-height:1.6; margin:0; }
.calc-form-card { background:#fff; border:1px solid #e8eef5; border-radius:14px; padding:28px; box-shadow:0 4px 20px rgba(0,0,0,.04); margin-bottom:24px; }
.calc-form-card h2 { font-size:1.25rem; font-weight:600; color:#0061ff; margin:0 0 24px; padding-bottom:12px; border-bottom:2px solid #e8eef5; }
.calc-form-row { display:grid; grid-template-columns:repeat(auto-fit, minmax(220px, 1fr)); gap:18px; margin-bottom:18px; }
.calc-form-group { display:flex; flex-direction:column; gap:6px; }
.calc-form-group label { font-size:.875rem; font-weight:500; color:#3a4a5d; }
.calc-form-group label .req { color:#dc3545; }
/* ⚠ box-sizing + height BURADA ZORUNLUDUR — KOZMETİK DEĞİL, HİZALAMA (CC-53 §5).
   ÖLÇÜLEN KÖK NEDEN (11.09.2026, headless Chrome 1440px, DÖRT araç sayfasında da aynı):
     input[text] / input[number] -> 39px     ⟵ CONTENT-BOX davranıyordu
     select / input[date]        -> 41px     ⟵ BORDER-BOX davranıyordu
   Aynı padding ve aynı border verilmişti; ayrışma padding'den DEĞİL, iki denetimin
   FARKLI kutu modelinden ve tarayıcının `line-height:normal` için denetim türüne
   göre seçtiği satır kutusundan geliyordu. Ölçümle doğrulandı: `min-height:39px`
   input'u 61px (=39+22) yaparken select'i 39px'te bıraktı — yani ikisi aynı
   değeri farklı yorumluyordu.
   ⚠ `line-height` TEK BAŞINA YETMEZ — DENENDİ VE BIRAKILDI: `select` line-height'ı
     tamamen YOK SAYIYOR (41px'te kaldı), `input[date]` ise fazladan büyüyordu
     (41 -> 42). Üç denetimi aynı satıra getiren tek levye AÇIK YÜKSEKLİKTİR.
   ⚠ YÖN YUKARI SEÇİLDİ (39 -> 41), aşağı değil: 41px zaten `select` ve
     `input[date]`in mevcut yüksekliğidir, yani HİÇBİR ŞEY KÜÇÜLMEZ; yalnız
     metin/sayı alanları 2px büyür.
   ⚠ rem: kullanıcı tarayıcı yazı boyutunu büyütürse font-size (.9375rem) ile
     birlikte ölçeklensin diye px değil rem (2.5625rem = 16px kökte 41px).
     İç boşluk: 41 - 3 (kenarlık) - 20 (padding) = 18px, 15px metne yeter.
   ⚠ GENİŞLİK DEĞİŞMEZ: `select` zaten border-box idi, `input`ta açık genişlik
     yok (flex ile geriliyor). Tek açık ölçü `.iv-igv-soru select{max-width:220px}`
     ve o da zaten border-box'tı — ölçümle doğrulandı, dört sayfada da tüm
     genişlikler öncesiyle BİREBİR aynı. */
.calc-form-group input, .calc-form-group select { box-sizing:border-box; height:2.5625rem; padding:10px 14px; border:1.5px solid #d8e0e8; border-radius:8px; font-size:.9375rem; font-family:inherit; transition:border-color .15s; background:#fff; }
.calc-form-group input:focus, .calc-form-group select:focus { outline:none; border-color:#0061ff; }
.calc-form-group .hint { font-size:.8125rem; color:#8a98a8; }
.calc-submit-row { display:flex; gap:12px; align-items:center; padding-top:8px; }
.calc-submit-btn { padding:12px 28px; background:linear-gradient(135deg,#0061ff,#003db8); color:#fff; border:none; border-radius:10px; font-size:1rem; font-weight:600; cursor:pointer; display:inline-flex; align-items:center; gap:8px; transition:transform .15s, box-shadow .15s; }
.calc-submit-btn:hover { transform:translateY(-1px); box-shadow:0 6px 20px rgba(0,97,255,.3); }
.calc-submit-btn:disabled { opacity:.6; cursor:not-allowed; transform:none; box-shadow:none; }
.calc-result-card { background:#f0f9f4; border:1px solid #b9e0c8; border-radius:14px; padding:28px; margin-top:8px; display:none; }
.calc-result-card.visible { display:block; }
.calc-result-card h2 { color:#0a7c33; font-size:1.25rem; font-weight:600; margin:0 0 18px; display:flex; align-items:center; gap:8px; }
.calc-result-grid { display:grid; grid-template-columns:repeat(auto-fit, minmax(220px, 1fr)); gap:14px; }
.calc-result-item { background:#fff; border:1px solid #d6e8dd; border-radius:8px; padding:14px 16px; }
.calc-result-item-label { font-size:.8125rem; color:#5b6b7d; margin-bottom:4px; text-transform:uppercase; letter-spacing:.3px; }
.calc-result-item-value { font-size:1.125rem; font-weight:600; color:#0a7c33; }
.calc-result-item.highlight { background:linear-gradient(135deg,#0061ff,#003db8); border-color:#0061ff; }
.calc-result-item.highlight .calc-result-item-label { color:rgba(255,255,255,.85); }
.calc-result-item.highlight .calc-result-item-value { color:#fff; font-size:1.375rem; }
.calc-error-card { background:#fff5f5; border:1px solid #f5b3b3; border-radius:10px; padding:14px 18px; color:#9c2929; margin-top:14px; display:none; }
.calc-error-card.visible { display:block; }
.calc-content-section { background:#fff; border:1px solid #e8eef5; border-radius:14px; padding:28px; margin-bottom:20px; }
.calc-content-section h3 { color:#0061ff; font-size:1.125rem; font-weight:600; margin:0 0 14px; padding-bottom:10px; border-bottom:1px solid #e8eef5; }
.calc-content-section .body { color:#3a4a5d; line-height:1.7; font-size:.9375rem; }
.calc-content-section .body h3 { border:none; padding:0; margin:18px 0 10px; font-size:1rem; }
.calc-content-section .body h4 { color:#0061ff; font-size:.95rem; margin:12px 0 6px; }
.calc-content-section .body ul, .calc-content-section .body ol { padding-left:22px; }
.calc-content-section .body li { margin-bottom:6px; }
.calc-content-section .body .formula-box, .calc-content-section .body .example-box { background:#f5f9fd; border-left:3px solid #0061ff; padding:12px 16px; margin:12px 0; border-radius:0 8px 8px 0; }
.calc-content-section .body .faq-item { background:#fafbfc; padding:14px 16px; border-radius:8px; margin-bottom:10px; }
.calc-content-section .body .faq-item h4 { margin:0 0 6px; }
.calc-content-section .body .faq-item p { margin:0; }

/* ── Dayanak bandı (partials/dayanak-bandi.php) ── */
/* Dayanak bandı — mevcut sonuç kutularının görsel diliyle uyumlu, gösterişsiz. */
.iv-dayanak { margin-top:22px; padding:14px 16px; border:1px solid #e8eef5; border-radius:8px;
              background:#fbfcfe; font-size:.8125rem; color:#5b6b7d; line-height:1.7; }
.iv-dayanak-baslik { display:flex; align-items:center; gap:8px; font-weight:600; font-size:.875rem;
              color:#334155; margin-bottom:10px; }
.iv-dayanak-damga { display:flex; flex-wrap:wrap; gap:6px 14px; margin-bottom:10px; }
.iv-dayanak-damga span { display:inline-flex; align-items:center; gap:5px; }
.iv-dayanak-damga code { font-family:ui-monospace,SFMono-Regular,Menlo,monospace; font-size:.75rem;
              background:#eef2f7; padding:1px 6px; border-radius:4px; color:#334155; }
.iv-dayanak-liste { width:100%; border-collapse:collapse; margin:6px 0 10px; }
.iv-dayanak-liste td { padding:6px 10px 6px 0; border-bottom:1px solid #eef2f7; vertical-align:top; }
.iv-dayanak-liste tr:last-child td { border-bottom:none; }
.iv-dayanak-liste .ad { font-weight:600; color:#334155; white-space:nowrap; }
.iv-dayanak-liste .kunye { color:#5b6b7d; }
.iv-dayanak-liste .not { display:block; margin-top:2px; font-style:italic; color:#7b8794; }
.iv-dayanak-uyari { margin-top:8px; padding-top:10px; border-top:1px dashed #dbe3ec; color:#7b8794; }
@media (max-width: 767.98px) {
    .iv-dayanak-liste .ad { white-space:normal; }
}
