/* Custom Portfolio Styling */
body {
    font-family: 'Segoe UI', system-ui, -apple-system, sans-serif;
    color: #333333;
}

.stat-card {
    border-radius: 12px;
    border: none;
    transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.stat-card:hover {
    transform: translateY(-3px);
    box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.1) !important;
}

.bg-gradient-primary {
    background: linear-gradient(135deg, #1e3c72 0%, #2a5298 100%);
}

.bg-gradient-success {
    background: linear-gradient(135deg, #11998e 0%, #38ef7d 100%);
}

.badge-profit {
    background-color: #d1e7dd;
    color: #0f5132;
}

.badge-loss {
    background-color: #f8d7da;
    color: #842029;
}

/* Compact Table Typography & Subtle Light Column Borders */
.table-portfolio {
    font-size: 0.85rem !important;
}

.table-portfolio th, 
.table-portfolio td {
    padding: 0.55rem 0.65rem !important;
    border-right: 1px solid #e9ecef !important;
    vertical-align: middle;
}

.table-portfolio th:last-child, 
.table-portfolio td:last-child {
    border-right: none !important;
}

.table-portfolio thead th {
    background-color: #f8f9fa !important;
    color: #495057 !important;
    font-weight: 600 !important;
    border-bottom: 2px solid #dee2e6 !important;
}

.table-portfolio tbody tr:nth-child(even) {
    background-color: #fcfcfc;
}

.table-portfolio tbody tr:hover {
    background-color: rgba(13, 110, 253, 0.04) !important;
}

/* Ticker Bar Styling */
.market-ticker-bar {
    background-color: #111827;
    font-size: 0.82rem;
    letter-spacing: 0.2px;
}

.autocomplete-suggestions {
    position: absolute;
    border: 1px solid #ced4da;
    border-top: none;
    z-index: 99;
    top: 100%;
    left: 0;
    right: 0;
    max-height: 250px;
    overflow-y: auto;
    background: #ffffff;
    box-shadow: 0 4px 6px rgba(0,0,0,0.1);
    border-radius: 0 0 6px 6px;
}

.autocomplete-suggestion {
    padding: 10px 15px;
    cursor: pointer;
    border-bottom: 1px solid #f1f1f1;
}

.autocomplete-suggestion:hover {
    background-color: #e9ecef;
}

/* Full Width Auto-Fit Landscape PDF / Print Layout */
@media print {
    @page {
        size: A4 landscape;
        margin: 5mm;
    }
    html, body {
        width: 100% !important;
        margin: 0 !important;
        padding: 0 !important;
        background-color: #ffffff !important;
        font-size: 8.5pt !important;
        color: #000000 !important;
    }
    .navbar, footer, .btn-print-hide, .alert, .market-ticker-bar, #adsense-header-banner, #adsense-footer-banner {
        display: none !important;
    }
    .container, .container-fluid, #printableReport {
        width: 100% !important;
        max-width: 100% !important;
        margin: 0 !important;
        padding: 0 !important;
        border: none !important;
        box-shadow: none !important;
    }
    .table-responsive {
        overflow: visible !important;
    }
    table.table-portfolio {
        width: 100% !important;
        max-width: 100% !important;
        table-layout: auto !important;
        border-collapse: collapse !important;
    }
    table.table-portfolio tr {
        page-break-inside: avoid !important;
    }
    table.table-portfolio th, 
    table.table-portfolio td {
        padding: 3px 4px !important;
        font-size: 8pt !important;
        word-wrap: break-word !important;
        white-space: normal !important;
        border: 1px solid #a0a0a0 !important;
    }
}
