/* =====================================================
   Excel Tablo Aktarıcı - Frontend Stiller
   Version: 1.6.0 - Virtual Scrolling Güncellemesi
   ===================================================== */

/* === 1. RESET VE GENEL STILLER === */
* {
    box-sizing: border-box;
    margin: 0;
    padding: 0;
}

body.eta-blank-page {
    background-color: #f0f2f5;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
    color: #2d3748;
    min-height: 100vh;
}

.eta-page-container {
    min-height: 95vh;
    padding: 3px;
    max-width: 100%;
    margin: 0 auto;
}

/* === 2. ANA TABLO WRAPPER === */
.eta-table-wrapper {
    background: white;
    border-radius: 12px;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.1);
    overflow: hidden;
    margin: 20px 5px;
}

/* === 3. TABLO HEADER === */
.eta-table-header {
    background: linear-gradient(135deg, #2e89ff 0%, #3db9ff 100%);
    color: white;
    padding: 15px 20px;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.eta-table-header h1 {
    font-size: 1.3rem;
    font-weight: 600;
    margin: 0;
}

.eta-tablekey-badge {
    display: inline-block;
    margin-left: .75rem;
    padding: .15rem .5rem;
    padding-right: .2rem;
    border-radius: 999px;
    background: #EDF2F7;
    color: #2D3748;
    font-size: 12px;
    line-height: 1.4;
    vertical-align: middle;
}

.eta-tablekey-badge strong {
    font-weight: 700;
}

/* Toplam Gösterimi */
.eta-column-totals-container {
    display: flex;
    gap: 15px;
    margin-left: auto;
    flex-wrap: wrap;
}

.eta-column-total {
    padding: 8px 15px;
    border-radius: 6px;
    font-weight: 600;
    font-size: 0.9rem;
    display: flex;
    align-items: center;
    gap: 5px;
    box-shadow: 0 2px 8px rgba(0,0,0,0.1);
}

.eta-total-label {
    opacity: 0.9;
}

.eta-total-value {
    font-weight: 700;
}

.eta-total-unit {
    opacity: 0.9;
    font-size: 0.85rem;
}

.eta-loading-spinner {
    animation: spin 1s linear infinite;
    display: inline-block;
}

/* === 4. ARAMA VE AKSIYONLAR === */
.eta-table-actions {
    display: flex;
    gap: 10px;
    align-items: center;
}

#eta-global-search {
    background: rgba(255, 255, 255, 0.9);
    border: 1px solid rgba(255, 255, 255, 0.3);
    color: #2d3748;
    padding: 8px 15px;
    border-radius: 6px;
    font-size: 0.85rem;
    min-width: 250px;
    transition: all 0.3s ease;
}

#eta-global-search:focus {
    outline: none;
    background: white;
    box-shadow: 0 0 0 3px rgba(255, 255, 255, 0.2);
    transform: translateY(-1px);
}

#eta-global-search::placeholder {
    color: #718096;
    font-style: italic;
}

/* === 5. TABLO SCROLL CONTAINER === */
.eta-table-scroll-container {
    overflow-x: auto;
    overflow-y: auto;
    max-height: 70vh;
    position: relative;
    -webkit-overflow-scrolling: touch;
}

/* === 6. ANA TABLO STİLLERİ === */
.eta-table {
    width: 100%;
    min-width: 600px;
    border-collapse: collapse;
    font-size: 0.85rem;
    table-layout: fixed;
}

/* Thead Stilleri */
.eta-table thead {
    position: sticky;
    top: 0;
    z-index: 11;
}

.eta-table thead th {
    position: relative;
    background: linear-gradient(135deg, #4a5568 0%, #2d3748 100%);
    color: white;
    padding: 10px 8px;
    text-align: center;
    font-weight: 600;
    font-size: 0.8rem;
    white-space: nowrap;
    border-right: 1px solid #2d3748;
    cursor: pointer;
    transition: all 0.3s ease;
}

.eta-table thead th:last-child {
    border-right: none;
}

.eta-table thead th:hover {
    background: linear-gradient(135deg, #5a6578 0%, #3d4758 100%);
    transform: translateY(-1px);
}

.eta-table thead th.has-filter {
    background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
}

.eta-table thead th.has-filter:after {
    content: "🔍";
    position: absolute;
    right: 5px;
    top: 50%;
    transform: translateY(-50%);
    font-size: 0.8rem;
}

/* Resizer */
.resizer {
    position: absolute;
    top: 0;
    right: 0;
    width: 5px;
    cursor: col-resize;
    user-select: none;
    height: 100%;
    z-index: 12;
    background: transparent;
    transition: background-color 0.2s ease;
}

.resizer:hover,
.resizing {
    background-color: #3db9ff;
    opacity: 0.5;
}

/* Tbody Stilleri */
.eta-table tbody td {
    padding: 8px;
    border-bottom: 1px solid #e2e8f0;
    border-right: 1px solid #e2e8f0;
    vertical-align: middle;
    text-align: center;
    font-size: 0.85rem;
    white-space: nowrap;
    word-wrap: break-word;
    max-width: 300px;
    line-height: 1.4;
    position: relative;
    will-change: transform;
    height: 36px;
    overflow: hidden;
    text-overflow: ellipsis;
}

.eta-table tbody td:last-child {
    border-right: none;
}

/* Satır Renkleri */
.eta-table tbody tr {
    transition: background-color 0.2s ease;
}

.eta-table tbody tr.eta-row-even {
    background-color: #f8fafc;
}

.eta-table tbody tr.eta-row-odd {
    background-color: #ffffff;
}

.eta-table tbody tr:hover {
    background-color: #edf2f7 !important;
}

/* Sticky İlk Sütun */
.eta-table.eta-sticky-first-column thead th:first-child {
    position: sticky;
    left: 0;
    z-index: 11;
    background: linear-gradient(135deg, #4a5568 0%, #2d3748 100%);
    box-shadow: none;
    border-right: 1px solid #2d3748;
    will-change: transform;
    min-width: 220px;
}

.eta-table.eta-sticky-first-column tbody td:first-child {
    position: sticky;
    left: 0;
    z-index: 5;
    background: inherit;
    box-shadow: none;
    border-right: 1px solid #e2e8f0;
    will-change: transform;
}

/* === 7. KOŞULLU BİÇİMLENDİRME === */

/* Kelime Kuralları */
.eta-table tbody td.eta-word-formatted {
    font-weight: 600;
    border-left: 4px solid transparent;
    transition: all 0.3s ease;
}

/* Sayı Kuralları */
.eta-table tbody td.eta-number-formatted {
    font-weight: 600;
    text-align: right;
    border-left: 4px solid transparent;
    transition: all 0.3s ease;
}

.eta-table tbody td.eta-number-formatted:after {
    content: "📊";
    position: absolute;
    right: 2px;
    top: 2px;
    font-size: 0.7rem;
    opacity: 0.7;
}

/* Yüzde Dolgu */
.eta-table tbody td.eta-percentage-formatted {
    position: relative;
    overflow: hidden;
    font-weight: 600;
    text-align: center;
    border-left: 4px solid transparent;
    z-index: 1;
}

.eta-table tbody td.eta-percentage-formatted:before {
    content: "📊";
    position: absolute;
    left: 2px;
    top: 2px;
    font-size: 0.6rem;
    opacity: 0.6;
    z-index: 3;
}

.eta-percentage-content {
    position: relative;
    z-index: 2;
    padding: 2px;
}

.eta-percentage-bar {
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    transition: width 0.8s ease-in-out;
    z-index: 1;
    border-radius: 0 4px 4px 0;
}

.eta-percentage-bar.success {
    background: linear-gradient(90deg, rgba(76, 175, 80, 0.8) 0%, rgba(76, 175, 80, 0.9) 100%);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.2);
}

.eta-percentage-bar.warning {
    background: linear-gradient(90deg, rgba(255, 152, 0, 0.8) 0%, rgba(255, 152, 0, 0.9) 100%);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.2);
}

.eta-percentage-bar.danger {
    background: linear-gradient(90deg, rgba(244, 67, 54, 0.8) 0%, rgba(244, 67, 54, 0.9) 100%);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.2);
}

/* === 8. TIKLANABILIR HÜCRELER === */
.eta-clickable-cell {
    cursor: pointer;
    color: #4A90E2;
    font-weight: 600;
    transition: all 0.3s ease;
    position: relative;
    white-space: normal;
    word-break: break-word;
    line-height: 1.4;
}

.eta-clickable-cell:hover {
    color: #357ABD;
    background-color: #e6f3ff !important;
    transform: scale(1.02);
}

.eta-clickable-cell:after {
    content: "🔗";
    position: absolute;
    right: 2px;
    top: 50%;
    transform: translateY(-50%);
    opacity: 0;
    transition: opacity 0.3s ease;
    font-size: 0.7rem;
}

.eta-clickable-cell:hover:after {
    opacity: 0.7;
}

/* === 9. VIRTUAL SCROLL === */
.eta-virtual-spacer {
    background: transparent !important;
    pointer-events: none;
    display: table-row;
}

.eta-virtual-spacer td {
    padding: 0 !important;
    border: none !important;
    height: 0 !important;
    min-height: 0 !important;
    line-height: 0 !important;
    font-size: 0 !important;
    background: transparent !important;
}

.eta-skeleton-row td {
    position: relative;
    height: 36px;
}

.eta-skeleton-row td::before {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    top: 8px;
    bottom: 8px;
    background: linear-gradient(90deg, #f3f4f6 0%, #e5e7eb 50%, #f3f4f6 100%);
    background-size: 200% 100%;
    animation: eta-skeleton 1.2s ease-in-out infinite;
    border-radius: 6px;
}

/* === 10. TABLO FOOTER === */
.eta-table-footer {
    padding: 15px 20px;
    background: #f8fafc;
    border-top: 1px solid #e2e8f0;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.eta-table-info {
    color: #4a5568;
    font-size: 0.85rem;
    font-weight: 500;
}

#eta-total-rows {
    font-weight: 700;
    color: #2d3748;
}

/* === 11. TOOLTIP === */
.eta-tooltip {
    position: fixed;
    z-index: 10000;
    background-color: #2d3748;
    color: #ffffff;
    padding: 8px 12px;
    border-radius: 6px;
    font-size: 0.85rem;
    line-height: 1.5;
    max-width: 400px;
    word-wrap: break-word;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.2);
    pointer-events: none;
    opacity: 0;
    transform: scale(0.95) translateY(5px);
    transition: opacity 0.15s ease-out, transform 0.15s ease-out;
}

.eta-tooltip.visible {
    opacity: 1;
    transform: scale(1) translateY(0);
}

/* === 12. MODAL STİLLERİ === */
.eta-modal {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 9999;
}

.eta-modal.show {
    display: block;
}

.eta-modal-overlay {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.6);
    animation: fadeIn 0.3s ease;
}

.eta-modal-container {
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    background: white;
    border-radius: 12px;
    box-shadow: 0 5px 25px rgba(0, 0, 0, 0.3);
    width: 90%;
    max-width: 1400px;
    height: 90vh;
    max-height: 90vh;
    display: flex;
    flex-direction: column;
    animation: slideIn 0.3s ease;
}

.eta-modal-header {
    background: linear-gradient(135deg, #4A90E2 0%, #357ABD 100%);
    color: white;
    padding: 8px 15px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    border-radius: 12px 12px 0 0;
    flex-shrink: 0;
}

.eta-modal-header h2 {
    font-size: 1.3rem;
    font-weight: 600;
    margin: 0;
}

.eta-modal-close {
    background: transparent;
    border: none;
    color: white;
    font-size: 28px;
    font-weight: 300;
    cursor: pointer;
    width: 35px;
    height: 35px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 6px;
    transition: all 0.2s ease;
    line-height: 1;
}

.eta-modal-close:hover {
    background: rgba(255, 255, 255, 0.2);
    transform: scale(1.1);
}

.eta-modal-body {
    flex: 1;
    overflow-y: auto;
    min-height: 0;
}

#eta-modal-loading {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 50px;
    height: 100%;
}

.eta-loader {
    border: 5px solid #f3f3f3;
    border-radius: 50%;
    border-top: 5px solid #4A90E2;
    width: 50px;
    height: 50px;
    animation: spin 1s linear infinite;
    margin-bottom: 15px;
}

#eta-modal-loading span {
    color: #718096;
    font-size: 1rem;
    font-weight: 500;
}

#eta-modal-content {
    height: 100%;
    overflow: hidden;
}

.eta-modal-table-wrapper {
    height: 100%;
    overflow-x: auto;
    overflow-y: auto;
    padding: 20px;
}

/* Modal İçindeki Tablo */
#eta-modal-table {
    width: 100%;
    border-collapse: collapse;
    font-size: 0.85rem;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
    border-radius: 8px;
    overflow: hidden;
}

#eta-modal-table thead th {
    background: linear-gradient(135deg, #4a5568 0%, #2d3748 100%);
    color: white;
    padding: 12px 10px;
    text-align: left;
    font-weight: 600;
    font-size: 0.85rem;
    border-right: 1px solid #2d3748;
    position: sticky;
    top: 0;
    z-index: 5;
}

#eta-modal-table thead th:last-child {
    border-right: none;
}

#eta-modal-table tbody td {
    padding: 10px;
    border-bottom: 1px solid #e2e8f0;
    border-right: 1px solid #e2e8f0;
    font-size: 0.85rem;
    color: #2d3748;
    vertical-align: middle;
    white-space: normal;
    word-wrap: break-word;
    line-height: 1.4;
}

#eta-modal-table tbody td:last-child {
    border-right: none;
}

#eta-modal-table tbody tr.eta-row-even {
    background-color: #f8fafc;
}

#eta-modal-table tbody tr:hover {
    background-color: #edf2f7 !important;
}

#eta-modal-table tbody td:empty {
    background: #f9f9f9;
    opacity: 0.5;
}

/* === 13. FİLTRE MODAL === */
.eta-filter-container {
    max-width: 1050px !important;
    max-height: 90vh;
    display: flex;
    flex-direction: column;
}

.eta-filter-container .eta-modal-body {
    flex: 1;
    overflow-y: auto;
    min-height: 0;
}

#eta-filter-modal .eta-modal-header {
    background: linear-gradient(135deg, #2e89ff 0%, #3db9ff 100%);
}

.eta-filter-content {
    padding: 10px 20px;
    height: 100%;
    display: flex;
    flex-direction: column;
}

/* Filtre Sekmeleri */
.eta-filter-tabs {
    display: flex;
    gap: 8px;
    margin-bottom: 15px;
}

.eta-filter-tab {
    padding: 10px 20px;
    background: #f1f1f1;
    border: 1px solid #ccd0d4;
    border-radius: 4px;
    cursor: pointer;
    font-weight: 600;
    transition: all 0.3s ease;
}

.eta-filter-tab:hover {
    background: #e8e8e8;
}

.eta-filter-tab.active {
    background: linear-gradient(135deg, #2e89ff 0%, #3db9ff 100%);
    color: white;
    border-color: #667eea;
}

.eta-tab-panel {
    display: none;
}

.eta-tab-panel.active {
    display: block;
}

/* Logic Selector */
.eta-filter-logic-selector {
    display: flex;
    align-items: center;
    gap: 15px;
    background: #f7fafc;
    border-radius: 10px;
    padding: 20px;
    margin-bottom: 25px;
    border: 1px solid #e2e8f0;
}

.eta-logic-label {
    font-weight: 600;
    color: #2d3748;
    font-size: 0.95rem;
    margin: 0;
}

.eta-logic-buttons {
    display: flex;
    gap: 10px;
    flex: 1;
}

.eta-logic-btn {
    flex: 1;
    padding: 10px 20px;
    background: white;
    border: 2px solid #cbd5e0;
    border-radius: 8px;
    font-weight: 600;
    color: #4a5568;
    cursor: pointer;
    transition: all 0.3s ease;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
}

.eta-logic-btn:hover {
    border-color: #667eea;
    background: #f7f8ff;
}

.eta-logic-btn.active {
    background: linear-gradient(135deg, #2e89ff 0%, #3db9ff 100%);
    color: white;
    border-color: #667eea;
    box-shadow: 0 4px 15px rgba(102, 126, 234, 0.3);
}

.logic-icon {
    font-size: 1.2rem;
}

/* Koşul Öğeleri */
.eta-filter-conditions {
    display: flex;
    max-height: 5500px;
    overflow-x: clip;
    overflow-y: auto;
    padding-right: 10px;
    justify-content: center;
    min-height: 0;
    flex-wrap: wrap;
    flex-direction: row;
    gap: 10px;
}

.eta-condition-item {
    background: white;
    border: 2px solid #e2e8f0;
    border-radius: 12px;
    padding: 10px 20px;
    transition: all 0.3s ease;
}

.eta-condition-item:hover {
    border-color: #cbd5e0;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08);
}

.eta-condition-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 5px;
    padding-bottom: 5px;
    border-bottom: 1px solid #e2e8f0;
}

.condition-number {
    font-weight: 700;
    color: #667eea;
    font-size: 1rem;
}

.eta-remove-condition {
    width: 28px;
    height: 28px;
    border-radius: 50%;
    background: #fee;
    color: #e53e3e;
    border: none;
    cursor: pointer;
    font-size: 1.2rem;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.2s ease;
}

.eta-remove-condition:hover {
    background: #e53e3e;
    color: white;
    transform: scale(1.1);
}

.eta-condition-body {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 5px;
}

.eta-condition-type,
.eta-condition-operator {
    display: flex;
    flex-direction: column;
}

.eta-condition-value {
    grid-column: span 2;
    display: flex;
    flex-direction: column;
}

.eta-condition-date-format {
    grid-column: span 2;
    display: flex;
    flex-direction: column;
    margin-top: 10px;
}

.eta-condition-date-format.hidden {
    display: none;
}

.eta-condition-body label {
    font-weight: 600;
    color: #4a5568;
    margin-bottom: 6px;
    font-size: 0.85rem;
}

.eta-condition-body select,
.eta-condition-body input {
    padding: 10px 12px;
    border: 2px solid #e2e8f0;
    border-radius: 8px;
    font-size: 0.9rem;
    transition: all 0.2s ease;
}

.eta-condition-body select:focus,
.eta-condition-body input:focus {
    outline: none;
    border-color: #667eea;
    box-shadow: 0 0 0 3px rgba(102, 126, 234, 0.1);
}

.eta-filter-value2.hidden {
    display: none;
}

/* === 14. BENZERSİZ DEĞERLER (VIRTUAL SCROLL) === */
.eta-tab-panel-unique {
    padding: 15px 0;
}

.eta-unique-toolbar {
    display: flex;
    gap: 10px;
    margin-bottom: 15px;
}

.eta-unique-search {
    flex: 1;
    padding: 10px;
    border: 2px solid #e2e8f0;
    border-radius: 8px;
}

.eta-unique-actions {
    display: flex;
    gap: 8px;
}

.eta-unique-actions .eta-btn {
    padding: 10px 15px;
    background: #667eea;
    color: white;
    border: none;
    border-radius: 6px;
    cursor: pointer;
    font-size: 0.9rem;
}

.eta-unique-actions .eta-btn:hover {
    background: #5a67d8;
}

.eta-unique-stats {
    padding: 10px;
    background: #f7fafc;
    border-radius: 6px;
    font-weight: 600;
    color: #4a5568;
    margin-bottom: 15px;
}

/* Virtual Scroll Container - YENİ */
.eta-unique-list-container {
    height: 300px;
    overflow-y: auto;
    overflow-x: hidden;
    position: relative;
    border: 1px solid #e2e8f0;
    border-radius: 8px;
    background: #fff;
    margin-bottom: 15px;
}

.eta-unique-list {
    position: relative;
    min-height: 100%;
}

/* Virtual Spacers - YENİ */
.eta-virtual-spacer-top,
.eta-virtual-spacer-bottom {
    width: 100%;
    pointer-events: none;
}

/* Unique Item Styling */
.eta-unique-item {
    display: flex;
    align-items: center;
    padding: 8px 12px;
    border-bottom: 1px solid #f1f5f9;
    cursor: pointer;
    transition: background 0.2s;
    position: relative;
    box-sizing: border-box;
}

.eta-unique-item:hover {
    background: #f7fafc;
}

.eta-unique-item:last-child {
    border-bottom: none;
}

.eta-unique-item input[type="checkbox"] {
    margin-right: 10px;
    width: 18px;
    height: 18px;
    cursor: pointer;
    flex-shrink: 0;
}

.eta-unique-item span {
    flex: 1;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

/* Seçili Değerler */
.eta-unique-selected {
    padding: 15px;
    background: #f0f9ff;
    border: 1px solid #90cdf4;
    border-radius: 8px;
    height:230px;
}

.eta-unique-selected h4 {
    margin: 0 0 10px 0;
    color: #2563eb;
    font-size: 0.9rem;
}

.eta-unique-selected-list {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.eta-selected-chip {
    display: inline-block;
    padding: 4px 10px;
    background: #3b82f6;
    color: white;
    border-radius: 20px;
    font-size: 0.85rem;
    white-space: nowrap;
    max-width: 200px;
    overflow: hidden;
    text-overflow: ellipsis;
}

/* "Daha fazla" gösterimi - YENİ */
.eta-selected-chip.eta-selected-more {
    background: linear-gradient(135deg, #8b5cf6 0%, #7c3aed 100%);
    font-weight: 600;
    animation: pulse 2s infinite;
}

@keyframes pulse {
    0%, 100% {
        opacity: 1;
    }
    50% {
        opacity: 0.8;
    }
}

/* Filtre Footer */
#eta-filter-modal .eta-modal-footer {
    background: #f8fafc;
    padding: 20px 25px;
    border-top: 1px solid #e2e8f0;
    display: flex;
    gap: 10px;
    justify-content: flex-end;
}

/* === 15. BUTONLAR === */
.eta-btn {
    padding: 10px 20px;
    border-radius: 8px;
    font-weight: 600;
    border: none;
    cursor: pointer;
    display: flex;
    align-items: center;
    gap: 6px;
    transition: all 0.3s ease;
    font-size: 0.9rem;
}

.eta-btn-primary {
    background: linear-gradient(135deg, #2e89ff 0%, #3db9ff 100%);
    color: white;
}

.eta-btn-primary:hover {
    transform: translateY(-2px);
    box-shadow: 0 6px 20px rgba(102, 126, 234, 0.3);
}

.eta-btn-danger {
    background: linear-gradient(135deg, #fc5c65 0%, #eb3349 100%);
    color: white;
}

.eta-btn-danger:hover {
    transform: translateY(-2px);
    box-shadow: 0 6px 20px rgba(252, 92, 101, 0.3);
}

.eta-btn-secondary {
    background: #e2e8f0;
    color: #4a5568;
}

.eta-btn-secondary:hover {
    background: #cbd5e0;
}

.eta-btn-add-condition {
    background: linear-gradient(135deg, #48bb78 0%, #38a169 100%);
    color: white;
    border: none;
    padding: 12px 24px;
    border-radius: 8px;
    font-weight: 600;
    cursor: pointer;
    display: flex;
    align-items: center;
    gap: 8px;
    transition: all 0.3s ease;
}

.eta-btn-add-condition:hover {
    transform: translateY(-2px);
    box-shadow: 0 6px 20px rgba(72, 187, 120, 0.3);
}

.btn-icon {
    font-size: 1.1rem;
}

/* === 16. FİLTRE DURUMU === */
.eta-filter-status {
    background: linear-gradient(135deg, #f6d365 0%, #fda085 100%);
    color: white;
    padding: 8px 15px;
    border-radius: 8px;
    display: flex;
    align-items: center;
    gap: 10px;
    margin-left: auto;
    font-size: 0.85rem;
    font-weight: 600;
    box-shadow: 0 2px 10px rgba(246, 211, 101, 0.3);
}

.eta-filter-status .filter-icon {
    font-size: 1rem;
}

.eta-filter-status button {
    background: white;
    color: #f6931d;
    border: none;
    padding: 4px 10px;
    border-radius: 4px;
    font-size: 0.8rem;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.2s ease;
}

.eta-filter-status button:hover {
    background: #fff5e6;
    transform: scale(1.05);
}

/* === 17. GENEL YARDIMCI SINIFLAR === */
.eta-loading {
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 50px;
}

.eta-loading:after {
    content: "";
    display: block;
    width: 40px;
    height: 40px;
    border: 3px solid #f3f3f3;
    border-top: 3px solid #4A90E2;
    border-radius: 50%;
    animation: spin 1s linear infinite;
}

.eta-error {
    text-align: center;
    padding: 30px;
    color: #e53e3e;
}

.eta-no-access {
    text-align: center;
    padding: 60px 20px;
    background: white;
    border-radius: 12px;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.1);
    margin: 50px auto;
    max-width: 600px;
}

.eta-no-access p {
    font-size: 1.1rem;
    color: #718096;
    line-height: 1.6;
}

/* === 18. SCROLLBAR === */
.eta-table-scroll-container::-webkit-scrollbar,
.eta-modal-table-wrapper::-webkit-scrollbar,
.eta-unique-list-container::-webkit-scrollbar {
    width: 10px;
    height: 10px;
}

.eta-table-scroll-container::-webkit-scrollbar-track,
.eta-modal-table-wrapper::-webkit-scrollbar-track,
.eta-unique-list-container::-webkit-scrollbar-track {
    background: #f1f1f1;
    border-radius: 10px;
}

.eta-table-scroll-container::-webkit-scrollbar-thumb,
.eta-modal-table-wrapper::-webkit-scrollbar-thumb,
.eta-unique-list-container::-webkit-scrollbar-thumb {
    background: #cbd5e0;
    border-radius: 10px;
    transition: background 0.3s ease;
}

.eta-table-scroll-container::-webkit-scrollbar-thumb:hover,
.eta-modal-table-wrapper::-webkit-scrollbar-thumb:hover,
.eta-unique-list-container::-webkit-scrollbar-thumb:hover {
    background: #a0aec0;
}

.eta-table-scroll-container::-webkit-scrollbar-corner,
.eta-modal-table-wrapper::-webkit-scrollbar-corner,
.eta-unique-list-container::-webkit-scrollbar-corner {
    background: #f1f1f1;
}

/* === 19. ANİMASYONLAR === */
@keyframes fadeIn {
    from {
        opacity: 0;
    }
    to {
        opacity: 1;
    }
}

@keyframes slideIn {
    from {
        transform: translate(-50%, -50%) scale(0.95);
        opacity: 0;
    }
    to {
        transform: translate(-50%, -50%) scale(1);
        opacity: 1;
    }
}

@keyframes spin {
    0% {
        transform: rotate(0deg);
    }
    100% {
        transform: rotate(360deg);
    }
}

@keyframes eta-skeleton {
    0% {
        background-position: 0% 0;
    }
    100% {
        background-position: -200% 0;
    }
}

/* ==========================================================
   === 20. RESPONSIVE - MOBİL CİHAZ GÜNCELLEMELERİ (768px altı) ===
   ========================================================== */
@media (max-width: 768px) {
    .eta-page-container {
        padding: 3px !important;
    }
    
    .eta-table-wrapper {
        margin: 10px 3px;
        border-radius: 8px;
    }
    
    /* === ANA HEADER DÜZENLEMESİ (EN ÖNEMLİ DEĞİŞİKLİK) === */
    .eta-table-header {
        display: flex;
        flex-direction: row; /* Elemanları yatayda sırala */
        flex-wrap: wrap;     /* Sığmazsa alt satıra at */
        justify-content: space-between; /* Sağa ve sola yasla, ortada boşluk bırak */
        align-items: center; /* Dikeyde ortala */
        gap: 8px;
        padding: 8px 10px;
    }
    
    .eta-table-header h1 {
        flex-grow: 1;  /* Boş alanı doldurması için esneklik ver */
        flex-shrink: 1; /* Diğer elemanlara yer açmak için küçülebilmesini sağla */
        margin: 0;
        display: flex;
        align-items: center;
        /* Önceki flex-basis: 100% kuralı kaldırıldı. Sorun buydu. */
    }

    .eta-tablekey-badge {
        display: inline-flex !important; /* Dikey bloğu iptal et, yatayda hizala */
        margin: 0 0 0 8px;  /* Üst boşluğu sil, sola boşluk ekle */
        padding: 2px 4px;   /* İç boşluğu küçült */
        font-size: 11px;    /* Fontu küçült */
        vertical-align: middle;
    }
    
    /* === DROPDOWN (İSTEDİĞİNİZ GİBİ) === */
    .eta-custom-dropdown {
        max-width: 100px; /* Genişliği 100px ile sınırla */
        min-width: auto;  /* Eski min-width'i iptal et */
    }
    
    .eta-dropdown-search {
        font-size: 12px;
        padding: 4px 20px 4px 8px; /* İç boşluğu küçült */
    }

    .eta-column-totals-container {
        display: flex;
        flex-shrink: 0; /* Toplam kutucuğunun sıkışıp küçülmesini engelle */
        gap: 5px;
        align-items: center;
    }

    .eta-column-total {
        padding: 4px 8px; /* İç boşluğu ciddi oranda azalt */
        font-size: 0.75rem; /* Fontu küçült */
        gap: 3px;           /* İçindeki ikon vs. boşluğunu azalt */
    }

    /* === FİLTRE DURUMU === */
    .eta-filter-status {
        padding: 4px 8px;
        font-size: 0.75rem;
        gap: 5px;
        order: 3; /* Gerekirse sırasını ayarla */
    }
    
    #eta-global-search {
        width: 100%;
        min-width: unset;
    }
    
    .eta-table { font-size: 0.75rem; }
    .eta-table thead th { padding: 8px 5px; font-size: 0.7rem; }
    .eta-table tbody td { padding: 6px 4px; font-size: 0.75rem; max-width: 150px; }
    
    .eta-modal-container { width: 95%; height: 95vh; max-height: 95vh; }
    .eta-modal-header { padding: 12px 15px; }
    .eta-modal-header h2 { font-size: 1.1rem; }
    .eta-modal-table-wrapper { padding: 15px; }
    #eta-modal-table { font-size: 0.75rem; }
    #eta-modal-table thead th, #eta-modal-table tbody td { padding: 8px 6px; font-size: 0.7rem; }
    
    .eta-condition-body { grid-template-columns: 1fr; }
    .eta-condition-value { grid-column: span 1; }
    #eta-filter-modal .eta-modal-footer { flex-wrap: wrap; }
    .eta-btn { flex: 1; min-width: 120px; justify-content: center; }
    .eta-unique-list-container { height: 200px; }
    .eta-selected-chip { max-width: 150px; font-size: 0.75rem; }
}

/* Mevcut CSS'e ekleyin */

.eta-site-logo {
    width: 80px;
    height: 80px;
    margin: 0 auto 20px;
    display: block;
    border-radius: 12px;
}

.eta-login-header {
    text-align: center;
    margin-bottom: 30px;
}

.eta-checkbox-group label {
    display: flex;
    align-items: center;
    font-weight: normal;
}

.eta-checkbox-group input[type="checkbox"] {
    margin-right: 8px;
}

.eta-form-security {
    margin-top: 30px;
    padding-top: 20px;
    border-top: 1px solid #e2e8f0;
}

.eta-security-note {
    text-align: center;
    color: #48bb78;
    font-size: 12px;
    margin: 0;
}

.eta-no-access-container {
    min-height: 100vh;
    display: flex;
    align-items: center;
    justify-content: center;
    background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
    padding: 20px;
}

.eta-no-access-icon {
    font-size: 64px;
    margin-bottom: 20px;
}

.eta-no-access-actions {
    display: flex;
    gap: 15px;
    justify-content: center;
    margin-top: 30px;
}

.eta-button {
    padding: 12px 24px;
    border-radius: 8px;
    text-decoration: none;
    font-weight: 600;
    transition: all 0.3s ease;
    display: inline-block;
}

.eta-button-primary {
    background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
    color: white;
}

.eta-button-secondary {
    background: #e2e8f0;
    color: #4a5568;
}

.eta-admin-note {
    margin-top: 30px;
    padding: 15px;
    background: #fef5e7;
    border-radius: 8px;
    border-left: 4px solid #f39c12;
}

/* === MODERN LOGIN FORM === */
.eta-login-wrapper {
    min-height: 100vh;
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
    overflow: hidden;
}

.eta-login-background {
    position: absolute;
    width: 100%;
    height: 100%;
    overflow: hidden;
}

.eta-bg-shape {
    position: absolute;
    border-radius: 50%;
    filter: blur(40px);
    opacity: 0.3;
    animation: float 20s infinite;
}

.eta-bg-shape-1 {
    width: 400px;
    height: 400px;
    background: #ff6b6b;
    top: -200px;
    left: -200px;
    animation-delay: 0s;
}

.eta-bg-shape-2 {
    width: 300px;
    height: 300px;
    background: #4ecdc4;
    bottom: -150px;
    right: -150px;
    animation-delay: 5s;
}

.eta-bg-shape-3 {
    width: 500px;
    height: 500px;
    background: #45b7d1;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    animation-delay: 10s;
}

@keyframes float {
    0%, 100% { transform: translateY(0) rotate(0deg); }
    25% { transform: translateY(-20px) rotate(5deg); }
    50% { transform: translateY(0) rotate(-5deg); }
    75% { transform: translateY(20px) rotate(3deg); }
}

.eta-login-container {
    position: relative;
    z-index: 1;
    width: 100%;
    max-width: 440px;
    padding: 20px;
}

.eta-login-box {
    background: rgba(255, 255, 255, 0.98);
    backdrop-filter: blur(20px);
    border-radius: 24px;
    box-shadow: 0 30px 60px rgba(0, 0, 0, 0.3);
    padding: 48px 40px;
    animation: slideUp 0.5s ease;
}

@keyframes slideUp {
    from {
        opacity: 0;
        transform: translateY(30px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.eta-login-header {
    text-align: center;
    margin-bottom: 40px;
}

.eta-logo-wrapper {
    width: 100px;
    height: 100px;
    margin: 0 auto 24px;
    position: relative;
}

.eta-site-logo {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 20px;
    box-shadow: 0 10px 30px rgba(102, 126, 234, 0.3);
}

.eta-login-header h2 {
    font-size: 28px;
    font-weight: 700;
    color: #1a202c;
    margin: 0 0 8px 0;
}

.eta-login-header p {
    color: #718096;
    font-size: 15px;
    margin: 0;
}

.eta-login-error,
.eta-login-success {
    padding: 14px 20px;
    border-radius: 12px;
    margin-bottom: 24px;
    display: flex;
    align-items: center;
    gap: 10px;
    animation: shake 0.5s;
}

.eta-login-error {
    background: linear-gradient(135deg, #fee 0%, #fdd 100%);
    border: 1px solid #fcc;
    color: #c00;
}

.eta-login-success {
    background: linear-gradient(135deg, #d4edda 0%, #c3e6cb 100%);
    border: 1px solid #b1dfbb;
    color: #155724;
}

@keyframes shake {
    0%, 100% { transform: translateX(0); }
    25% { transform: translateX(-5px); }
    75% { transform: translateX(5px); }
}

.eta-form-group {
    margin-bottom: 20px;
}

.eta-input-wrapper {
    position: relative;
}

.eta-input-icon {
    position: absolute;
    left: 16px;
    top: 50%;
    transform: translateY(-50%);
    font-size: 20px;
    opacity: 0.7;
}

.eta-input {
    width: 100%;
    padding: 14px 16px 14px 48px;
    border: 2px solid #e2e8f0;
    border-radius: 12px;
    font-size: 16px;
    transition: all 0.3s ease;
    background: #fff;
}

.eta-input:focus {
    outline: none;
    border-color: #667eea;
    box-shadow: 0 0 0 4px rgba(102, 126, 234, 0.1);
    transform: translateY(-1px);
}

.eta-toggle-password {
    position: absolute;
    right: 16px;
    top: 50%;
    transform: translateY(-50%);
    background: none;
    border: none;
    cursor: pointer;
    font-size: 20px;
    padding: 0;
    opacity: 0.7;
    transition: opacity 0.2s;
}

.eta-toggle-password:hover {
    opacity: 1;
}

.eta-checkbox-group {
    display: flex;
    align-items: center;
}

.eta-checkbox-label {
    display: flex;
    align-items: center;
    cursor: pointer;
    user-select: none;
    color: #4a5568;
}

.eta-checkbox-custom {
    width: 20px;
    height: 20px;
    border: 2px solid #cbd5e0;
    border-radius: 6px;
    margin-right: 10px;
    position: relative;
    transition: all 0.3s ease;
}

.eta-checkbox-label input[type="checkbox"] {
    display: none;
}

.eta-checkbox-label input[type="checkbox"]:checked + .eta-checkbox-custom {
    background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
    border-color: #667eea;
}

.eta-checkbox-label input[type="checkbox"]:checked + .eta-checkbox-custom::after {
    content: '✓';
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    color: white;
    font-size: 12px;
}

.eta-login-button {
    width: 100%;
    padding: 16px;
    background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
    color: white;
    border: none;
    border-radius: 12px;
    font-size: 16px;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.3s ease;
    position: relative;
    overflow: hidden;
}

.eta-login-button:hover:not(:disabled) {
    transform: translateY(-2px);
    box-shadow: 0 10px 30px rgba(102, 126, 234, 0.4);
}

.eta-login-button:disabled {
    opacity: 0.7;
    cursor: not-allowed;
}

.btn-loader {
    animation: spin 1s linear infinite;
    display: inline-block;
}

.eta-form-footer {
    text-align: center;
    margin-top: 24px;
    padding-top: 24px;
    border-top: 1px solid #e2e8f0;
}

.eta-link {
    color: #667eea;
    text-decoration: none;
    font-size: 14px;
    font-weight: 500;
    transition: color 0.2s;
}

.eta-link:hover {
    color: #764ba2;
    text-decoration: underline;
}

.eta-separator {
    color: #cbd5e0;
    margin: 0 12px;
}

.eta-form-security {
    text-align: center;
    margin-top: 32px;
}

.eta-security-badge {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 8px 16px;
    background: linear-gradient(135deg, #f0f4f8 0%, #e2e8f0 100%);
    border-radius: 20px;
    font-size: 12px;
    color: #718096;
    font-weight: 500;
}

/* === TABLEKEY DROPDOWN STİLLERİ === */
.eta-tablekey-dropdown-wrapper {
    display: inline-block;
    position: relative;
    vertical-align: middle;
}

.eta-custom-dropdown {
    position: relative;
    max-width: 100px; 
    width: auto;    
}

.eta-dropdown-input {
    position: relative;
    display: flex;
    align-items: center;
}

.eta-dropdown-search {
    width: 100%;
    padding: 6px 30px 6px 10px;
    border: 2px solid rgba(255, 255, 255, 0.3);
    border-radius: 500px;
    background: rgba(255, 255, 255, 0.95);
    color: #2d3748;
    font-size: 14px;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.3s ease;
}

.eta-dropdown-search:hover {
    border-color: rgba(255, 255, 255, 0.5);
    background: white;
}

.eta-dropdown-search:focus {
    outline: none;
    border-color: white;
    background: white;
    box-shadow: 0 0 0 3px rgba(255, 255, 255, 0.2);
}

.eta-dropdown-arrow {
    position: absolute;
    right: 10px;
    top: 50%;
    transform: translateY(-50%);
    pointer-events: none;
    color: #4a5568;
    font-size: 10px;
}

.eta-dropdown-list {
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    margin-top: 5px;
    background: white;
    border: 1px solid #e2e8f0;
    border-radius: 8px;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.2);
    z-index: 1000;
    max-height: 300px;
    overflow-y: auto;
}

.eta-dropdown-options {
    padding: 0px 0;
}

.eta-dropdown-option {
    padding: 3px 15px;
    cursor: pointer;
    transition: all 0.2s ease;
    font-size: 14px;
    color: #2d3748;
}

.eta-dropdown-option:hover {
    background: #edf2f7;
}

.eta-dropdown-option.selected {

}

.eta-dropdown-empty {
    padding: 15px;
    text-align: center;
    color: #a0aec0;
    font-style: italic;
}

.eta-dropdown-list::-webkit-scrollbar {
    width: 8px;
}

.eta-dropdown-list::-webkit-scrollbar-track {
    background: #f1f1f1;
    border-radius: 10px;
}

.eta-dropdown-list::-webkit-scrollbar-thumb {
    background: #cbd5e0;
    border-radius: 10px;
}

.eta-dropdown-list::-webkit-scrollbar-thumb:hover {
    background: #a0aec0;
}

/* Responsive düzenlemeler */
@media (max-width: 768px) {
    .eta-tablekey-badge {
        display: block !important;
        margin-top: 0px;
    }
    
    .eta-dropdown-search {
        font-size: 13px;
        padding: 5px 25px 5px 8px;
    }
}

.eta-auto-resize-btn {
    background: rgba(255, 255, 255, 0.2);
    border: 1px solid rgba(255, 255, 255, 0.3);
    color: white;
    padding: 4px 10px;
    border-radius: 4px;
    cursor: pointer;
    font-size: 16px;
    font-weight: bold;
    margin-left: 10px;
    transition: all 0.2s ease;
    vertical-align: middle;
}

.eta-auto-resize-btn:hover {
    background: rgba(255, 255, 255, 0.3);
    border-color: rgba(255, 255, 255, 0.5);
    transform: scale(1.05);
}

.eta-auto-resize-btn:active {
    transform: scale(0.95);
}

@media (max-width: 768px) {
    .eta-auto-resize-btn {
        padding: 3px 8px;
        font-size: 14px;
        margin-left: 5px;
    }
}