/* Hesaplama modülü — dark mode + a11y */

.calc-page { max-width: 900px; margin: 0 auto; }

.calc-form-card {
    background: var(--bs-body-bg, #ffffff);
    color: var(--bs-body-color, #212529);
    border: 1px solid var(--bs-border-color, #e0e0e0);
    border-radius: 16px;
    padding: 2rem;
    box-shadow: 0 4px 12px rgba(0,0,0,0.05);
}

:is([data-bs-theme="dark"], .dark-mode) .calc-form-card {
    background: #1E1E35;
    color: #EEEEF0;
    border-color: #2a2a45;
    box-shadow: 0 4px 18px rgba(0,0,0,0.35);
}

:is([data-bs-theme="dark"], .dark-mode) .calc-form-card .form-control,
:is([data-bs-theme="dark"], .dark-mode) .calc-form-card .form-select {
    background-color: #14142a;
    color: #EEEEF0;
    border-color: #2a2a45;
}

:is([data-bs-theme="dark"], .dark-mode) .calc-form-card .form-control::placeholder {
    color: #8a8aa8;
}

:is([data-bs-theme="dark"], .dark-mode) .calc-form-card .form-label,
:is([data-bs-theme="dark"], .dark-mode) .calc-form-card .form-check-label {
    color: #EEEEF0;
}

:is([data-bs-theme="dark"], .dark-mode) .calc-form-card .text-muted,
:is([data-bs-theme="dark"], .dark-mode) .calc-form-card small.text-muted {
    color: #a0a0b8 !important;
}

:is([data-bs-theme="dark"], .dark-mode) .info-box {
    background: #16212a !important;
    border-color: #0891b2 !important;
    color: #d9e7ec;
}
:is([data-bs-theme="dark"], .dark-mode) .info-box h6 { color: #67e8f9 !important; }

:is([data-bs-theme="dark"], .dark-mode) .breadcrumb {
    background: transparent;
}
:is([data-bs-theme="dark"], .dark-mode) .breadcrumb-item,
:is([data-bs-theme="dark"], .dark-mode) .breadcrumb-item a {
    color: #9ab3d9;
}
:is([data-bs-theme="dark"], .dark-mode) .breadcrumb-item.active {
    color: #EEEEF0;
}

/* Result card contrast — gradient korunur ama AA kontrastı için alt metin netleştirilir */
.result-card { color: #fff; }
.result-row { color: #fff; }
.result-row.highlight strong { color: #fff; }

/* A11y — focus-visible */
.calc-form-card .form-control:focus-visible,
.calc-form-card .form-select:focus-visible,
.calc-form-card .form-check-input:focus-visible,
.btn-calculate:focus-visible,
.calc-page a:focus-visible {
    outline: 3px solid #0891b2;
    outline-offset: 2px;
    box-shadow: none;
}

/* A11y — required asterisk ekran okuyucu için görsel, aria-required mesajı ile eşleştirilir */
.calc-form-card .required-star {
    color: #dc2626;
    margin-left: 2px;
}
:is([data-bs-theme="dark"], .dark-mode) .calc-form-card .required-star {
    color: #f87171;
}

/* A11y — azaltılmış hareket */
@media (prefers-reduced-motion: reduce) {
    .page-header,
    .result-card,
    .btn-calculate { transition: none !important; animation: none !important; }
}

/* Skip link */
.skip-to-content {
    position: absolute;
    left: -9999px;
    top: 1rem;
    background: #0891b2;
    color: #fff;
    padding: 0.6rem 1rem;
    border-radius: 8px;
    z-index: 10000;
    text-decoration: none;
}
.skip-to-content:focus {
    left: 1rem;
    outline: 3px solid #fff;
}

/* Yüksek kontrast mod */
@media (prefers-contrast: more) {
    .calc-form-card { border-width: 2px; }
    .btn-calculate { outline: 2px solid #000; }
}

/* Dark mode içinde result-row içindeki "Not" gri metnini okunabilir tut */
:is([data-bs-theme="dark"], .dark-mode) .result-row[style*="opacity"] { opacity: 1 !important; }
