html {
font-size: 14px;
}

@media (min-width: 768px) {
html {
font-size: 16px;
}
}

html {
position: relative;
min-height: 100%;
}

body {
margin: 0;
margin-bottom: 70px;
background: #f7f9fc;
color: #243447;
}

/* --------------------------------
Genel
-------------------------------- */

.btn:focus,
.btn:active:focus,
.btn-link.nav-link:focus,
.form-control:focus,
.form-check-input:focus {
box-shadow:
0 0 0 0.1rem #ffffff,
0 0 0 0.25rem rgba(37, 140, 251, 0.35);
}

.main-container {
min-height: calc(100vh - 145px);
padding-top: 10px;
}

/* --------------------------------
Navbar
-------------------------------- */

.site-navbar {
min-height: 72px;
background: rgba(255, 255, 255, 0.96);
border-bottom: 1px solid #e8edf3;
box-shadow: 0 4px 18px rgba(25, 42, 70, 0.06);
position: relative;
z-index: 1000;
}

.site-brand {
display: inline-flex;
align-items: center;
gap: 10px;
color: #243b53 !important;
font-size: 1.25rem;
font-weight: 750;
letter-spacing: -0.3px;
padding-top: 7px;
padding-bottom: 7px;
transition: 0.2s ease;
}

.site-brand:hover {
color: #28527a !important;
transform: translateY(-1px);
}

.brand-icon {
width: 38px;
height: 38px;
display: inline-flex;
align-items: center;
justify-content: center;
border-radius: 12px;
background: #eaf2f8;
color: #28527a;
font-size: 18px;
transition: 0.2s ease;
}

.site-brand:hover .brand-icon {
background: #28527a;
color: #ffffff;
}

.modern-nav-link {
position: relative;
display: inline-flex !important;
align-items: center;
gap: 3px;
color: #526273 !important;
font-size: 14px;
font-weight: 600;
padding: 10px 12px !important;
margin: 0 2px;
border-radius: 10px;
transition:
background-color 0.2s ease,
color 0.2s ease,
transform 0.2s ease;
}

.modern-nav-link:hover {
background: #f0f5f9;
color: #28527a !important;
transform: translateY(-1px);
}

.modern-nav-link i {
font-size: 15px;
}

.navbar-nav .nav-item {
display: flex;
align-items: center;
}

.navbar-toggler {
border: 1px solid #dce5ed;
border-radius: 10px;
padding: 7px 9px;
}

.navbar-toggler:focus {
box-shadow: 0 0 0 3px rgba(40, 82, 122, 0.12);
}

/* --------------------------------
Login alanı
-------------------------------- */

.login-area {
display: flex;
align-items: center;
}

.login-area .nav-link {
color: #526273 !important;
font-weight: 600;
}

.login-area .nav-link:hover {
color: #28527a !important;
}

/* --------------------------------
Formlar
-------------------------------- */

.form-floating > .form-control-plaintext::placeholder,
.form-floating > .form-control::placeholder {
color: var(--bs-secondary-color);
text-align: end;
}

.form-floating > .form-control-plaintext:focus::placeholder,
.form-floating > .form-control:focus::placeholder {
text-align: start;
}

/* --------------------------------
Footer
-------------------------------- */

.site-footer {
position: absolute;
bottom: 0;
width: 100%;
min-height: 58px;
background: #ffffff;
border-top: 1px solid #e8edf3;
color: #7a8795;
}

.footer-content {
min-height: 58px;
display: flex;
align-items: center;
justify-content: center;
gap: 9px;
font-size: 13px;
}

.site-footer a {
color: #526273;
text-decoration: none;
font-weight: 600;
transition: color 0.2s ease;
}

.site-footer a:hover {
color: #28527a;
}

.footer-separator {
color: #c1cad4;
}

/* --------------------------------
Mobil
-------------------------------- */

@media (max-width: 767.98px) {


.site-navbar {
    min-height: 64px;
}

.site-brand {
    font-size: 1.1rem;
}

.brand-icon {
    width: 35px;
    height: 35px;
    border-radius: 10px;
}

.navbar-collapse {
    margin-top: 10px;
    padding: 8px;
    background: #ffffff;
    border: 1px solid #e8edf3;
    border-radius: 14px;
    box-shadow: 0 10px 25px rgba(25, 42, 70, 0.08);
}

.navbar-nav {
    align-items: stretch !important;
}

.navbar-nav .nav-item {
    width: 100%;
}

.modern-nav-link {
    width: 100%;
    margin: 2px 0;
    padding: 11px 12px !important;
}

.login-area {
    padding: 6px 4px 2px;
    border-top: 1px solid #edf1f5;
    margin-top: 5px;
}

.main-container {
    padding-top: 5px;
}

.footer-content {
    font-size: 12px;
}


}

@media (max-width: 575.98px) {


body {
    margin-bottom: 65px;
}

.footer-content {
    min-height: 52px;
}


}
