@import url('https://fonts.googleapis.com/css2?family=Poppins:wght@400;500;600;700&display=swap');

:root {
    --primary-color: #007bff; /* Mavi */
    --secondary-color: #6c757d; /* Gri */
    --card-bg: #ffffff; /* Beyaz */
    --body-bg: #f4f7f9; /* Açık Gri */
    --text-color: #333; /* Koyu Gri */
    --light-text: #6c757d; /* Açık Gri Metin */
    --border-color: #dee2e6; /* Sınır Rengi */
    --highlight-bg: #f8f9fa; /* Vurgu Arka Planı */
    --passed-bg: #e7f5ec; --passed-text: #0f5132; /* Geçti Durumu */
    --failed-bg: #fbebee; --failed-text: #b02a37; /* Kaldı Durumu */
    --conditional-bg: #fff8e1; --conditional-text: #8d6e0a; /* Şartlı Geçti Durumu */
    --danger-color: #dc3545; /* Hata Rengi */

    /* YENİ: Belirgin Hamburger Rengi */
    --hamburger-bg-color: #ff5722; /* Canlı Turuncu */
    --hamburger-line-color: #ffffff; /* Beyaz Çizgiler */
}

* { box-sizing: border-box; margin: 0; padding: 0; }
body { font-family: 'Poppins', sans-serif; background-color: var(--body-bg); color: var(--text-color); }

.page-header { display: none; }
.main-layout { display: flex; align-items: flex-start; gap: 24px; max-width: 1100px; margin: 24px auto; padding: 0 16px; }

.sidebar-nav { width: 280px; flex-shrink: 0; background-color: var(--card-bg); border-radius: 12px; padding: 24px; box-shadow: 0 4px 25px rgba(0, 0, 0, 0.08); align-self: flex-start; position: sticky; top: 24px; }
.sidebar-nav h3 { font-size: 18px; border-bottom: 1px solid var(--border-color); padding-bottom: 10px; margin-bottom: 15px; }
.sidebar-nav ul { list-style: none; }
.sidebar-nav ul li a { display: block; padding: 12px 0; color: var(--text-color); text-decoration: none; font-weight: 500; border-bottom: 1px solid #f0f0f0; transition: color 0.2s; }
.sidebar-nav ul li a:hover { color: var(--primary-color); }

.calculator-wrapper { flex: 1; min-width: 0; }
.calculator-card { background-color: var(--card-bg); border-radius: 12px; box-shadow: 0 4px 25px rgba(0, 0, 0, 0.08); overflow: hidden; width: 100%; }
.tabs { display: flex; background-color: var(--highlight-bg); }
.tab-btn { flex-grow: 1; padding: 15px 10px; font-size: 14px; font-weight: 600; cursor: pointer; border: none; background-color: transparent; color: var(--secondary-color); border-bottom: 3px solid transparent; transition: all 0.2s; }
.tab-btn.active { color: var(--primary-color); border-bottom-color: var(--primary-color); }
.calculator-content { padding: 24px; }
.content-description { font-size: 14px; color: var(--light-text); margin-bottom: 20px; }

.input-section { margin-bottom: 24px; background-color: var(--highlight-bg); padding: 16px; border-radius: 8px; }
.input-section label { display: block; font-weight: 600; margin-bottom: 8px; font-size: 14px; }
select, input[type="number"] { width: 100%; padding: 10px; border: 1px solid var(--border-color); border-radius: 8px; font-size: 14px; font-family: 'Poppins', sans-serif; background-color: #fff; }
.input-error { border-color: var(--danger-color) !important; box-shadow: 0 0 0 2px rgba(220, 53, 69, 0.25); }

.table-wrapper { overflow-x: auto; }
.courses-table { width: 100%; border-collapse: collapse; margin-bottom: 20px; }
.courses-table th, .courses-table td { text-align: center; padding: 12px 4px; border-bottom: 1px solid var(--border-color); white-space: nowrap; font-size: 14px; }
.courses-table th { font-size: 11px; color: var(--light-text); text-transform: uppercase; font-weight: 600; }
.courses-table td { vertical-align: middle; }
.courses-table input { min-width: 60px; max-width: 75px; text-align: center; }

.result-cell { font-weight: 600; }
.status-passed { color: var(--passed-text); background-color: var(--passed-bg); }
.status-failed { color: var(--failed-text); background-color: var(--failed-bg); }
.status-conditional { color: var(--conditional-text); background-color: var(--conditional-bg); }

.delete-row-btn { background-color: var(--failed-bg); color: var(--danger-color); border: none; width: 30px; height: 30px; border-radius: 50%; cursor: pointer; font-weight: bold; transition: background-color 0.2s; }
.delete-row-btn:hover{ background-color: #f1c1c5; }

.action-buttons { display: flex; gap: 16px; margin-top: 10px; }
button { width: 100%; padding: 14px; border: none; border-radius: 8px; font-size: 16px; font-weight: 700; cursor: pointer; transition: background-color 0.2s; }
.primary-btn { background-color: var(--primary-color); color: white; }
.primary-btn:hover { background-color: #0056b3; }
.secondary-btn { background-color: #e9ecef; color: var(--secondary-color); border: none; }
.secondary-btn:hover { background-color: #dee2e6; }
.result-area { margin-top: 24px; padding: 20px; border-radius: 8px; text-align: center; font-size: 20px; font-weight: 700; display: none; }

/* HAMBURGER BUTONU - GÜNCELLENDİ */
.hamburger-btn {
    display: none; /* Masaüstünde gizli */
    position: fixed;
    top: 15px;
    left: 15px; /* Sola alındı */
    z-index: 1001;
    background: var(--hamburger-bg-color); /* Canlı Turuncu Arka Plan */
    border: none;
    border-radius: 8px;
    width: 45px;
    height: 45px;
    cursor: pointer;
    box-shadow: 0 4px 10px rgba(0,0,0,0.2); /* Hafif gölge eklendi */
    display: flex; /* İçindeki span'leri ortalamak için */
    flex-direction: column;
    justify-content: center;
    align-items: center;
}
.hamburger-btn span {
    display: block;
    width: 25px;
    height: 3px;
    background-color: var(--hamburger-line-color); /* Beyaz Çizgiler */
    margin: 4px auto; /* Çizgiler arası boşluk */
    transition: all 0.3s;
}

                    .premium-link-cta {
    display: flex !important;
    justify-content: center;
    align-items: center;
    gap: 10px;
    width: 100%;
    padding: 15px !important;
    border-radius: 12px;
    text-decoration: none;
    color: white !important;
    font-weight: 600;
    background: linear-gradient(45deg, #6D28D9, #4F46E5);
    box-shadow: 0 4px 15px rgba(79, 70, 229, 0.4);
    transition: transform 0.2s, box-shadow 0.2s;
}
.premium-link-cta:hover {
    transform: translateY(-2px);
    box-shadow: 0 6px 20px rgba(79, 70, 229, 0.5);
    padding-left: 15px !important;
    background: linear-gradient(45deg, #6D28D9, #4F46E5);
}
.premium-link-cta i {
    color: #FBBF24 !important;
}


@media (max-width: 900px) {
    .page-header { display: block; height: 60px; }
    .main-layout { flex-direction: column; margin-top: 0; padding: 0 10px; }
    .sidebar-nav { position: fixed; top: 0; left: 0; height: 100%; z-index: 1000; border-radius: 0; transform: translateX(-100%); transition: transform 0.3s ease-in-out; }
    .sidebar-nav.is-open { transform: translateX(0); }
    .hamburger-btn { display: flex; } /* Mobilde görünür */
    .calculator-wrapper { width: 100%; }
}
