body {
    background: linear-gradient(135deg, #0a0a0a 0%, #1a1a2a 50%, #2a2a4a 100%);
    min-height: 100vh;
    color: #e0e0e0;
}
html, body {
    overflow-x: hidden;
}
.main-container {
    min-height: 100vh;
}
.card,
.form-control,
.btn {
    background: rgba(255, 255, 255, 0.05) !important;
    border: 1px solid rgba(255, 255, 255, 0.1) !important;
    color: #e0e0e0 !important;
}
.card:hover {
    background: rgba(255, 255, 255, 0.08) !important;
    border-color: rgba(255, 255, 255, 0.2) !important;
}
.btn-primary {
    background: linear-gradient(45deg, #d4af37, #ffd700) !important;
    border: none !important;
    color: #000 !important;
    font-weight: bold;
}
.btn-primary:hover {
    background: linear-gradient(45deg, #ffd700, #d4af37) !important;
    transform: translateY(-1px);
    box-shadow: 0 4px 8px rgba(212, 175, 55, 0.3);
}
/* Gold outline button for Statistics */
.btn-outline-gold {
    color: #d4af37 !important;
    border-color: #d4af37 !important;
    background: transparent !important;
}
.btn-outline-gold:hover,
.btn-outline-gold:focus {
    color: #000 !important;
    background: linear-gradient(45deg, #d4af37, #ffd700) !important;
    border-color: transparent !important;
    box-shadow: 0 4px 8px rgba(212, 175, 55, 0.3) !important;
}
/* Red outline for Logout - ensure transparent background despite generic .btn override */
.btn-outline-danger {
    color: #dc3545 !important;
    border-color: #dc3545 !important;
    background: transparent !important;
}
.btn-outline-danger:hover,
.btn-outline-danger:focus {
    color: #fff !important;
    background-color: #dc3545 !important;
    border-color: #dc3545 !important;
}
/* Pretty Interdiction toggle */
.form-switch .form-check-input {
    width: 3rem;
    height: 1.6rem;
    cursor: pointer;
    background-color: rgba(255, 255, 255, 0.1) !important;
    border-color: rgba(255, 255, 255, 0.3) !important;
}
.form-switch .form-check-input:focus {
    border-color: #d4af37 !important;
    box-shadow: 0 0 0 0.2rem rgba(212, 175, 55, 0.25) !important;
}
#interdiction.form-check-input:checked {
    background-color: #d4af37 !important;
    border-color: #d4af37 !important;
}
.form-switch .form-check-label {
    margin-left: 0.5rem;
    user-select: none;
}
.badge-gold {
    background: linear-gradient(45deg, #d4af37, #ffd700) !important;
    color: #000 !important;
}
/* Compact elegant Interdiction button */
.btn-interdict {
    padding: 0.55rem 1rem !important;
    border-radius: 0.375rem !important;
    font-weight: 600 !important;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;
    transition: box-shadow 0.2s ease, transform 0.06s ease;
}
.btn-interdict:hover {
    transform: translateY(-1px);
}
.btn-interdict:active {
    transform: translateY(0);
}
/* subtle glow only when active */
.btn-interdict--active {
    box-shadow: 0 0 0.6rem rgba(212, 175, 55, 0.35) !important;
}
.form-control:focus {
    background: rgba(255, 255, 255, 0.1) !important;
    border-color: #d4af37 !important;
    color: #fff !important;
    box-shadow: 0 0 0 0.2rem rgba(212, 175, 55, 0.25) !important;
}
/* Highlight for autocomplete selection */
#nationality-dropdown .dropdown-item.active {
    background-color: #d4af37 !important;
    color: #000 !important;
}
#cargo-dropdown .dropdown-item.active {
    background-color: #d4af37 !important;
    color: #000 !important;
}
#ship-dropdown .dropdown-item.active {
    background-color: #d4af37 !important;
    color: #000 !important;
}
/* Prevent dropdown content from causing horizontal scroll */
.dropdown-item {
    white-space: normal;
    word-break: break-word;
}
.position-relative > .dropdown-menu {
    left: 0 !important;
    right: 0 !important;
}
.auto-fill-highlight {
    background-color: rgba(25, 135, 84, 0.15) !important;
    border-color: #198754 !important;
}
/* Preserve rounded corners for trailing auto-toggle buttons */
.input-group > .btn.rounded-end {
    border-top-right-radius: 0.375rem !important;
    border-bottom-right-radius: 0.375rem !important;
}
/* Tighter footer spacing to keep "A service by" visible */
@media (max-width: 576px) {
    footer {
        margin-top: 1rem !important;
    }
}
