/* ====================================================================
   Noxy Global Tema — QMS tasarım konseptinin tüm uygulamaya uygulanması
   Kalite Sistemleri modülünde kullanılan modern görünüm (gradient hero,
   yumuşak gölgeli kartlar, pill rozetler, modern tablolar) burada tüm
   ekranlar için merkezi olarak tanımlanır. View'larda değişiklik gerekmez.
   ==================================================================== */

/* ---------- Sayfa başlığı (hero) ----------
   Tüm ekranlardaki başlık kartı view'larda
   style="background-color:#006d6d;" ile işaretlidir.
   Bu seçici hepsini gradient hero görünümüne dönüştürür. */
.card[style*="#006d6d"] {
    background: linear-gradient(135deg, #00504f 0%, #007a78 55%, #009e96 100%) !important;
    border: 0;
    border-radius: 14px;
    position: relative;
    overflow: hidden;
}

.card[style*="#006d6d"]::after {
    content: "";
    position: absolute;
    right: -50px;
    top: -70px;
    width: 230px;
    height: 230px;
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.07);
    pointer-events: none;
}

.card[style*="#006d6d"]::before {
    content: "";
    position: absolute;
    right: 110px;
    bottom: -90px;
    width: 170px;
    height: 170px;
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.05);
    pointer-events: none;
}

.card[style*="#006d6d"] .card-body {
    position: relative;
    z-index: 1;
}

/* Hero içindeki ikon rozetini buzlu cam görünümüne çevir */
.card[style*="#006d6d"] h3 .badge,
.card[style*="#006d6d"] h4 .badge,
.card[style*="#006d6d"] h5 .badge {
    width: 46px;
    height: 46px;
    border-radius: 12px !important;
    background: rgba(255, 255, 255, 0.16) !important;
    color: #fff !important;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 18px;
    flex-shrink: 0;
    backdrop-filter: blur(4px);
}

.card[style*="#006d6d"] .breadcrumb {
    background: transparent;
    margin-bottom: 0;
}

.card[style*="#006d6d"] .breadcrumb a {
    text-decoration: none;
}

.card[style*="#006d6d"] .breadcrumb a:hover {
    color: #fff !important;
}

/* ---------- Kartlar ---------- */
.card {
    border: 0;
    border-radius: 14px;
    box-shadow: 0 2px 12px rgba(16, 24, 40, 0.06);
}

.card .card-header {
    background: #fff;
    border-bottom: 1px solid #eef1f5;
    border-radius: 14px 14px 0 0;
    padding-top: 14px;
    padding-bottom: 14px;
}

.card .card-footer {
    background: #fff;
    border-top: 1px solid #eef1f5;
    border-radius: 0 0 14px 14px;
}

/* ---------- Tablolar ---------- */
.table thead th {
    background: #f7f9fb;
    color: #5b6b81;
    font-size: 12px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.4px;
    border-bottom: 1px solid #e8edf3;
    white-space: nowrap;
}

.table-striped > tbody > tr:nth-of-type(odd) > * {
    --bs-table-accent-bg: #f8fafc;
}

.table-bordered > :not(caption) > * > * {
    border-color: #edf1f5;
}

.table > :not(caption) > * > * {
    padding-top: 10px;
    padding-bottom: 10px;
}

.noxy-datatable tbody tr {
    transition: background-color 0.1s ease;
}

.noxy-datatable tbody tr:hover > * {
    background-color: #f0f7f7;
}

/* ID sütunu (otomatik eklenen) */
table.noxy-datatable th.col-id,
table.noxy-datatable td.noxy-col-id {
    width: 72px;
    max-width: 90px;
    white-space: nowrap;
    font-family: Consolas, Monaco, monospace;
    font-size: 12px;
    color: #67758c;
}

/* ---------- Rozetler (pill görünümü) ---------- */
.badge {
    border-radius: 30px;
    font-weight: 600;
    padding: 5px 12px;
}

td .badge.bg-success,
.badge.bg-success-subtle {
    background: #e6f6ec !important;
    color: #1e9e57 !important;
}

td .badge.bg-danger,
.badge.bg-danger-subtle {
    background: #fdebec !important;
    color: #d64550 !important;
}

td .badge.bg-warning,
.badge.bg-warning-subtle {
    background: #fff4e0 !important;
    color: #c98a1b !important;
}

td .badge.bg-info,
.badge.bg-info-subtle {
    background: #e0f5f4 !important;
    color: #00807d !important;
}

td .badge.bg-secondary,
.badge.bg-secondary-subtle {
    background: #eef1f5 !important;
    color: #67758c !important;
}

td .badge.bg-primary {
    background: #e8f0fe !important;
    color: #3568d4 !important;
}

/* ---------- Butonlar ---------- */
.btn {
    border-radius: 9px;
}

.btn-sm {
    border-radius: 7px;
}

.btn-primary,
.btn-success,
.btn-danger,
.btn-warning,
.btn-info,
.btn-secondary {
    box-shadow: none;
}

.btn:focus {
    box-shadow: 0 0 0 0.2rem rgba(0, 128, 125, 0.12);
}

/* ---------- Form elemanları ---------- */
.form-control,
.form-select {
    border-radius: 9px;
    border-color: #dde4ec;
}

.form-control:focus,
.form-select:focus {
    border-color: #7fc6c4;
    box-shadow: 0 0 0 0.2rem rgba(0, 128, 125, 0.12);
}

.input-group-text {
    border-radius: 9px;
    border-color: #dde4ec;
    background: #f7f9fb;
}

/* ---------- Modallar ---------- */
.modal-content {
    border: 0;
    border-radius: 16px;
    box-shadow: 0 14px 40px rgba(16, 24, 40, 0.18);
}

.modal-header {
    border-bottom: 1px solid #eef1f5;
}

.modal-footer {
    border-top: 1px solid #eef1f5;
}

/* ---------- Liste grupları ---------- */
.list-group-item {
    border-color: #eef1f5;
}

/* ---------- Sekme (tab) sistemi ---------- */
.nav-tabs .nav-link {
    border-radius: 9px 9px 0 0;
}

/* ---------- Uyarılar ---------- */
.alert {
    border: 0;
    border-radius: 12px;
}

.alert-success {
    background: #e6f6ec;
    color: #15703e;
}

.alert-danger {
    background: #fdebec;
    color: #a8333d;
}

.alert-warning {
    background: #fff4e0;
    color: #916310;
}

.alert-info {
    background: #e0f5f4;
    color: #00605e;
}
