:root {
    --main-color: #35294f;
    --accent-color: #b7b3c1;
    --border-color: #b7b4bf;
}

.custom-breadcrumb { --bs-breadcrumb-divider: '>'; font-size: .9rem; align-items: center; }
.custom-breadcrumb a { font-size: .8rem; color: #b7b4bf; text-decoration: none; transition: color .2s ease; }
.custom-breadcrumb a:hover { color: var(--main-color); }
.custom-breadcrumb .breadcrumb-item.active { font-size: .8rem; color: var(--main-color); font-weight: 600; }

h1 {
  font-size: 1.5rem;
  font-weight: 700;
  color: #35294f;
}

h2 {
  font-size: 1.5rem;
  font-weight: 700;
  color: #35294f;
}

.auth-card {
    max-width: auto;
    background: #fff;
    border-radius: 12px;
    border: 1px solid #e2e2e2;
}

.btn-primary {
    background: #35294f !important;
    border-color: #35294f !important;
    font-weight: 600;
    transition: 0.2s;
}

.btn-primary:hover {
    background: #4b3a70 !important;
    border-color: #4b3a70 !important;
}

/* Tıklandığında */
.btn-primary:active,
.btn-primary.active {
    background: #2a2040 !important;
    border-color: #2a2040 !important;
}

/* Focus (mavi glow'u öldürür) */
.btn-primary:focus,
.btn-primary:focus-visible {
    background: #4b3a70 !important;
    border-color: #4b3a70 !important;
    box-shadow: 0 0 0 0.2rem rgba(75, 58, 112, 0.4) !important; 
}


/* Disabled durumu */
.btn-primary:disabled,
.btn-primary.disabled {
    background: rgba(53,41,79,0.3); /* aynı renk, şeffaflaştırılmış */
    border-color: rgba(53,41,79,0.3);
    cursor: not-allowed;
    color: rgba(255,255,255,0.7);
}

.btn-primary:disabled:hover,
.btn-primary.disabled:hover {
    background: rgba(53,41,79,0.3); /* hoverda değişmez */
    border-color: rgba(53,41,79,0.3);
}

.divider {
    text-align: center;
    position: relative;
    font-size: 0.9rem;
    color: #b7b3c1;
}

.divider::before,
.divider::after {
    content: '';
    height: 1px;
    background: #e2e2e2;
    position: absolute;
    top: 50%;
    width: 40%;
}

.divider::before { left: 0; }
.divider::after { right: 0; }

.btn-google {
    background: #fff;
    border: 1px solid #ddd;
    color: #444;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: 8px;
    border-radius: 8px;
    transition: 0.2s;
}

.btn-google:hover {
    background: #f5f5f5;
    border-color: #ccc;
}

.text-center a {
    transition: 0.2s;
}

.text-center a:hover {
    color: #4b3a70;
}

/* Genel input, textarea ve select */
input.form-control,
textarea.form-control,
select.form-select {
    color: rgba(var(--color-secondary-rgb), 1);
    background-color: #ffffff !important;
    border: 2px solid rgba(0,0,0,0.04);
    border-radius: 6px !important;
    transition: all 0.15s ease;
    padding: 0.375rem 0.75rem; /* bootstrap varsayılan padding */
}

/* Placeholder renkleri */
input.form-control::placeholder,
textarea.form-control::placeholder,
select.form-select::placeholder {
    color: rgba(var(--color-primary-rgb), 1);
}

/* Farklı tarayıcı uyumları */
input.form-control::-webkit-input-placeholder,
textarea.form-control::-webkit-input-placeholder,
select.form-select::-webkit-input-placeholder {
    color: rgba(var(--color-primary-rgb), 1);
}

input.form-control::-moz-placeholder,
textarea.form-control::-moz-placeholder,
select.form-select::-moz-placeholder {
    color: rgba(var(--color-primary-rgb), 1);
}

input.form-control:-ms-input-placeholder,
textarea.form-control:-ms-input-placeholder,
select.form-select:-ms-input-placeholder {
    color: rgba(var(--color-primary-rgb), 1);
}

input.form-control::-ms-input-placeholder,
textarea.form-control::-ms-input-placeholder,
select.form-select::-ms-input-placeholder {
    color: rgba(var(--color-primary-rgb), 1);
}

/* Focus efekti */
input.form-control:focus,
textarea.form-control:focus,
select.form-select:focus {
    border-color: rgba(var(--color-primary-rgb), 1);
    box-shadow: 0 0 0 0.2rem rgba(var(--color-primary-rgb), 0.1);
    outline: none;
}

/* Mesaj alanının görünür olduğundan emin olalım */
.form-message {
    display: block !important; /* Gizli kalmasını engelle */
    margin-top: 8px;
    clear: both; /* Yanındaki öğelerle çakışmasın */
}

/* Alert kutusuna küçük bir giriş animasyonu */
.alert {
    animation: fadeIn 0.4s ease-in-out;
}

@keyframes fadeIn {
    from { opacity: 0; transform: translateY(-10px); }
    to { opacity: 1; transform: translateY(0); }
}

.map-container {
    width: 100%;
    aspect-ratio: 16 / 9; 
    max-height: 380px; /* İstediğin sınır */
    background-color: #f4f4f4;
    border-radius: 12px;
    overflow: hidden;
    border: 1px solid #eee;
    margin-top: 0;
}

.map-container iframe {
    width: 100%;
    height: 100%;
    border: 0;
}

/* İletişim kartları için şık bir dokunuş */
.contact-info-item {
    display: flex;
    align-items: center;
    margin-bottom: 1.5rem;
}

.contact-info-item i {
    width: 36px;
    height: 36px;
    background: #35294f;
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    margin-right: 15px;
    flex-shrink: 0;
    cursor: pointer;
    position: relative; /* Katmanlama için */
    z-index: 1;
    overflow: hidden;
    transition: transform 0.3s ease;
}

.contact-card {
    background-color: #fcfcfc; /* Kırık beyaz */
    border: 1px solid #eeeeee; /* İnce border */
    border-radius: 15px;
    padding: 2.5rem;
    height: 100%;
    box-shadow: 0 5px 15px rgba(0,0,0,0.03);
}

.contact-info-item {
    display: flex;
    align-items: flex-start;
    margin-bottom: 20px;
}

/* İkonların hizalanması ve büyüklüğü */
.contact-info-item i {
    font-size: 18px;
    margin-top: 5px;
}

/* DEGRADE KATMANI (After yaptık ki ikonun Before'u ile çakışmasın) */
.contact-info-item i::after {
    content: ""; /* Boş içerik */
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(135deg, #35294f 0%, #b7b3c1 100%);
    z-index: -1; /* İkonun (yazının) arkasına atar */
    opacity: 0;
    transition: opacity 0.4s ease-in-out;
}

.contact-info-item i:hover {
    transform: scale(1.15);
    color: #fff;
}

.contact-info-item i:hover::after {
    opacity: 1; /* Üzerine gelince degrade arkadan belirir */
}

/* İkonun kendisinin (FontAwesome 4.7) her zaman en üstte kalmasını garanti edelim */
.contact-info-item i:before {
    position: relative;
    z-index: 2;
}

.input-warning {
    color: #dc3545;
    font-size: 12px;
    margin-top: 5px;
    display: none; /* Başlangıçta gizli */
}
.input-warning.show {
    display: block;
}
.input-error {
    border-color: #dc3545 !important;
}

.height-120 {
	min-height: 120px !important;
	max-height: 320px !important;
}

.alert {
    border-radius: 10px;
    font-weight: 500;
    padding: 15px;
}

@keyframes fadeIn {
    from { opacity: 0; transform: translateY(-10px); }
    to { opacity: 1; transform: translateY(0); }
}

.animate__fadeIn {
    animation: fadeIn 0.5s ease-in-out;
}