
/* Ortak ayarlar */
.btn {
    border: none;
    border-radius: 8px;
    font-weight: 400;
    padding: 0.6rem 1.2rem;
    transition: all 0.25s ease-in-out;
    box-shadow: 0 4px 12px rgba(0,0,0,0.08);
}

.btn:hover {
    transform: translateY(-2px);
    box-shadow: 0 6px 18px rgba(0,0,0,0.12);
}

/* Primary */
.btn-primary {
    background: linear-gradient(135deg, #4f46e5, #6366f1);
    color: #fff;
}
.btn-primary:hover {
    background: linear-gradient(135deg, #4338ca, #4f46e5);
}

/* Success */
.btn-success {
    background: linear-gradient(135deg, #3d8e5b, #22c55e);
    color: #fff;
}
.btn-success:hover {
    background: linear-gradient(135deg, #15803d, #16a34a);
}

/* Danger */
.btn-danger {
    background: linear-gradient(135deg, #dc2626, #ef4444);
    color: #fff;
}
.btn-danger:hover {
    background: linear-gradient(135deg, #b91c1c, #dc2626);
}

/* Warning */
.btn-warning {
    background: linear-gradient(135deg, #f59e0b, #fbbf24);
    color: #fff;
}
.btn-warning:hover {
    background: linear-gradient(135deg, #d97706, #f59e0b);
}

/* Info */
.btn-info {
    background: linear-gradient(135deg, #06b6d4, #0ea5e9);
    color: #fff;
}
.btn-info:hover {
    background: linear-gradient(135deg, #0891b2, #06b6d4);
}
.btn-link, .btn-link:hover{
    box-shadow: none;
}

/* Dark */
.btn-dark {
    background: linear-gradient(135deg, #171717, #1f2937);
    color: #fff;
}
.btn-dark:hover {
    background: linear-gradient(135deg, #000, #171717);
}
[class*="btn-outline-"]  {
    position: relative;
    border: 1px solid transparent;
    border-radius: 8px;
    font-weight: 400;
    padding: 0.6rem 1.2rem;
    transition: all 0.3s ease;
    z-index: 1;
    overflow: hidden;
}

/* Gradient border için çözüm */
[class*="btn-outline-"]::before {
    content: "";
    position: absolute;
    inset: 0;
    border-radius: inherit;
    padding: 1px; /* border kalınlığı */
    background: linear-gradient(135deg, #4f46e5, #6366f1);
    -webkit-mask:
            linear-gradient(#fff 0 0) content-box,
            linear-gradient(#fff 0 0);
    -webkit-mask-composite: xor;
    mask-composite: exclude;
    z-index: -1;
}

/* Primary */
.btn-outline-primary {
    color: #4f46e5;
}
.btn-outline-primary:hover {
    background: linear-gradient(135deg, #4f46e5, #6366f1);
    color: #fff;
}

/* Success */
.btn-outline-success::before {
    background: linear-gradient(135deg, #16a34a, #22c55e);
}
.btn-outline-success {
    color: #16a34a;
}
.btn-outline-success:hover {
    background: linear-gradient(135deg, #16a34a, #22c55e);
    color: #fff;
}

/* Danger */
.btn-outline-danger::before {
    background: linear-gradient(135deg, #dc2626, #ef4444);
}
.btn-outline-danger {
    color: #dc2626;
}
.btn-outline-danger:hover {
    background: linear-gradient(135deg, #dc2626, #ef4444);
    color: #fff;
}

/* Warning */
.btn-outline-warning::before {
    background: linear-gradient(135deg, #f59e0b, #fbbf24);
}
.btn-outline-warning {
    color: #d97706;
}
.btn-outline-warning:hover {
    background: linear-gradient(135deg, #f59e0b, #fbbf24);
    color: #fff;
}

/* Info */
.btn-outline-info::before {
    background: linear-gradient(135deg, #06b6d4, #0ea5e9);
}
.btn-outline-info {
    color: #0ea5e9;
}
.btn-outline-info:hover {
    background: linear-gradient(135deg, #06b6d4, #0ea5e9);
    color: #fff;
}

/* Dark */
.btn-outline-dark::before {
    background: linear-gradient(135deg, #171717, #1f2937);
}
.btn-outline-dark {
    color: #171717;
}
.btn-outline-dark:hover {
    background: linear-gradient(135deg, #171717, #1f2937);
    color: #fff;
}
/* Outline Secondary */
.btn-outline-secondary {
    color: #6b7280; /* gri */
    border: 2px solid transparent;
    position: relative;
    background: #fff;
    overflow: hidden;
    transition: all 0.3s ease;
}
.btn-outline-secondary::before {
    content: "";
    position: absolute;
    inset: 0;
    border-radius: inherit;
    padding: 1px;
    background: linear-gradient(135deg, #6b7280, #9ca3af);
    -webkit-mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
    -webkit-mask-composite: xor;
    mask-composite: exclude;
    z-index: -1;
}
.btn-outline-secondary:hover {
    color: #fff;
    background: linear-gradient(135deg, #6b7280, #9ca3af);
}

/* Outline Light */
.btn-outline-light {
    color: #fff; /* açık gri */
    border: 1px solid transparent;
    position: relative;
    overflow: hidden;
    transition: all 0.3s ease;
}
.btn-outline-light::before {
    content: "";
    position: absolute;
    inset: 0;
    border-radius: inherit;
    padding: 1px;
    background: linear-gradient(135deg, #d1d5db, #f3f4f6);
    -webkit-mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
    -webkit-mask-composite: xor;
    mask-composite: exclude;
    z-index: -1;
}
.btn-outline-light:hover {
    color: #111;
    background: linear-gradient(135deg, #d1d5db, #f3f4f6);
}

.badge {
    font-weight: 600;
    padding: 0.4em 0.7em;
    border-radius: 8px;
    font-size: 0.85rem;
    display: inline-block;
    line-height: 1;
}

/* Primary */
.badge-primary {
    background: linear-gradient(135deg, #4f46e5, #6366f1);
    color: #fff;
}

/* Success */
.badge-success {
    background: linear-gradient(135deg, #16a34a, #22c55e);
    color: #fff;
}

/* Danger */
.badge-danger {
    background: linear-gradient(135deg, #dc2626, #ef4444);
    color: #fff;
}

/* Warning */
.badge-warning {
    background: linear-gradient(135deg, #f59e0b, #fbbf24);
    color: #fff;
}

/* Info */
.badge-info {
    background: linear-gradient(135deg, #06b6d4, #0ea5e9);
    color: #fff;
}

/* Dark */
.badge-dark {
    background: linear-gradient(135deg, #171717, #1f2937);
    color: #fff;
}


/* Primary */
.alert-primary {
    background: linear-gradient(135deg, #4f46e5, #6366f1);
}

/* Success */
.alert-success {
    background: linear-gradient(135deg, #16a34a, #22c55e);
}

/* Danger */
.alert-danger {
    background: linear-gradient(135deg, #dc2626, #ef4444);
}

/* Warning */
.alert-warning {
    background: linear-gradient(135deg, #f59e0b, #fbbf24);
    color: #fff;
}

/* Info */
.alert-info {
    background: linear-gradient(135deg, #06b6d4, #0ea5e9);
}

/* Dark */
.alert-dark {
    background: linear-gradient(135deg, #171717, #1f2937);
}


.bg-primary {
    background: linear-gradient(135deg, #4f46e5, #6366f1) !important;
}

.bg-success {
    background: linear-gradient(135deg, #16a34a, #22c55e) !important;
}

.bg-danger {
    background: linear-gradient(135deg, #dc2626, #ef4444) !important;
}

.bg-warning {
    background: linear-gradient(135deg, #f59e0b, #fbbf24) !important;
}

.bg-info {
    background: linear-gradient(135deg, #06b6d4, #0ea5e9) !important;
}

.bg-dark {
    background: linear-gradient(135deg, #171717, #1f2937) !important;
}
.bg-secondary {
    background: linear-gradient(135deg, #6b7280, #9ca3af) !important;
    color: #fff !important;
}

.fs-1 { font-size: 1.75rem !important; }  /* 28px */
.fs-2 { font-size: 1.5rem !important; }   /* 24px */
.fs-3 { font-size: 1.25rem !important; }  /* 20px */
.fs-4 { font-size: 1.125rem !important; } /* 18px */
.fs-5 { font-size: 1rem !important; }     /* 16px */
.fs-6 { font-size: 0.875rem !important; } /* 14px */

@media (max-width: 576px) {
    .fs-1 { font-size: 1.5rem !important; }  /* 24px */
    .fs-2 { font-size: 1.25rem !important; } /* 20px */
    .fs-3 { font-size: 1.125rem !important; }/* 18px */
}

h1 { font-size: 1.75rem; line-height: 1.25; font-weight: 600; }
h2 { font-size: 1.5rem;  line-height: 1.3;  font-weight: 600; }
h3 { font-size: 1.25rem; line-height: 1.4;  font-weight: 600; }
h4 { font-size: 1.125rem; line-height: 1.4; font-weight: 600; }
h5 { font-size: 1rem;    line-height: 1.5;  font-weight: 500; }
h6 { font-size: 0.9375rem; line-height: 1.5; font-weight: 500; }

@media (max-width: 576px) {
    h1 { font-size: 1.5rem; }       /* 24px */
    h2 { font-size: 1.25rem; }      /* 20px */
    h3 { font-size: 1.125rem; }     /* 18px */
    h4 { font-size: 1rem; }         /* 16px */
    h5 { font-size: 0.9375rem; }    /* 15px */
    h6 { font-size: 0.875rem; }     /* 14px */
}

.btn-lg {
    font-size: 1rem;        /* 16px */
    line-height: 1.5;
}

.btn {
    font-size: 0.9375rem;   /* 15px */
    line-height: 1.5;
}

.btn-sm {
    font-size: 0.875rem;    /* 14px */
    line-height: 1.4;
}

.form-control,
.form-select {
    font-size: 0.875rem;
    line-height: 1.5;
    padding: 0.375rem 0.75rem;
}

.form-control-sm,
.form-select-sm {
    font-size: 0.875rem;
    line-height: 1.4;
    padding: 0.25rem 0.5rem;
}

.form-control-lg,
.form-select-lg {
    font-size: 1rem;
    line-height: 1.5;
    padding: 0.5rem 1rem;
}

@media (max-width: 576px) {
    .form-control,
    .form-select {
        font-size: 0.875rem;
    }
    .form-control-lg,
    .form-select-lg {
        font-size: 0.9375rem;
    }
}