/* =========================================================
   UIkit v3 – Transport & Logistics Theme (Light Mode Only)
   Complete Mobile-Friendly Override
   ========================================================= */

/* ---------------------------------------------------------
   Base Tokens (Light Mode Default)
   --------------------------------------------------------- */
:root {
    --uk-background-default: #f0f2f5;
    --uk-background-muted: #e1e5eb;

    --uk-card-default-background: #ffffff;
    --uk-navbar-background: #dbe2ef;
    --uk-modal-background: #ffffff;

    --uk-text-primary: #1f2937;
    --uk-text-secondary: #3b4a6b;
    --uk-text-muted: #64748b;
    --uk-text-emphasis: #111827;

    --uk-primary: #2563eb;
    --uk-secondary: #facc15;
    --uk-success: #16a34a;
    --uk-warning: #f59e0b;
    --uk-danger: #dc2626;

    --uk-border: #cbd5e1;

    --uk-button-border-radius: 6px;
    --uk-button-default-background: var(--uk-card-default-background);
    --uk-button-default-color: var(--uk-text-primary);
    --uk-button-primary-background: linear-gradient(135deg, #2563eb, #1d4ed8);
    --uk-button-primary-color: #ffffff;

    --uk-form-background: var(--uk-card-default-background);
    --uk-form-border: var(--uk-border);
    --uk-form-focus-border: var(--uk-primary);

    --uk-card-border-radius: 10px;
    --uk-card-border: var(--uk-border);

    --uk-table-header-background: var(--uk-background-muted);
    --uk-table-divider-border: var(--uk-border);

    --uk-box-shadow-small: 0 1px 3px rgba(31,41,55,0.08);
    --uk-box-shadow-medium: 0 12px 36px rgba(31,41,55,0.12);

    --uk-hud-line-primary: rgba(37,99,235,0.3);
    --uk-hud-line-secondary: rgba(250,204,21,0.25);
}

/* ---------------------------------------------------------
   Body
   --------------------------------------------------------- */
body {
    color: var(--uk-text-primary);
    font-family: ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto;
    font-size: 16px;
    line-height: 1.6;
    letter-spacing: 0.01em;
    -webkit-font-smoothing: antialiased;
}

/* ---------------------------------------------------------
   Subtle Background Noise on HTML
   --------------------------------------------------------- */
html {
    background-color: var(--uk-background-default);
    background-image:
        radial-gradient(rgba(0,0,0,0.01) 1px, transparent 1px),
        radial-gradient(rgba(0,0,0,0.01) 1px, transparent 1px);
    background-size: 32px 32px;
}

@media (max-width: 768px) {
    html { background-image: none; }
}

/* ---------------------------------------------------------
   HUD Scanlines / Industrial Accents
   --------------------------------------------------------- */
.uk-card,
.uk-modal-dialog,
.uk-table { position: relative; }

.uk-card::after,
.uk-modal-dialog::after,
.uk-table::after {
    content: "";
    position: absolute;
    inset: 0;
    pointer-events: none;
    border-radius: inherit;
    background-image: linear-gradient(to bottom, var(--uk-hud-line-primary) 1px, transparent 1px);
    background-size: 100% 10px;
    opacity: 0.15;
}

@media (max-width: 768px) {
    .uk-card::after,
    .uk-modal-dialog::after,
    .uk-table::after { display: none; }
}

/* ---------------------------------------------------------
   Navbar / Divider Lines
   --------------------------------------------------------- */
.uk-navbar-container::after {
    content: "";
    display: block;
    height: 1px;
    background: linear-gradient(90deg, transparent, var(--uk-hud-line-primary), transparent);
}

.uk-card-header,
.uk-card-footer { position: relative; }

.uk-card-header::after,
.uk-card-footer::before {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    height: 1px;
    background: linear-gradient(90deg, transparent, var(--uk-hud-line-secondary), transparent);
}

.uk-card-header::after { bottom: 0; }
.uk-card-footer::before { top: 0; }

/* ---------------------------------------------------------
   Buttons
   --------------------------------------------------------- */
.uk-button {
    border-radius: var(--uk-button-border-radius);
    font-weight: 600;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    transition: transform 0.12s ease, box-shadow 0.12s ease;
    padding: 0.65em 1.1em;
    font-size: 1rem;
}

.uk-button:hover { transform: translateY(-1px); }

.uk-button-default {
    background-color: var(--uk-button-default-background);
    color: var(--uk-button-default-color);
    border: 1px solid var(--uk-border);
}

.uk-button-primary {
    background: var(--uk-button-primary-background);
    color: var(--uk-button-primary-color);
}

.uk-button-primary:hover {
    box-shadow: 0 0 0 1px rgba(37,99,235,0.4),
                0 6px 16px rgba(37,99,235,0.25);
}

/* ---------------------------------------------------------
   Cards
   --------------------------------------------------------- */
.uk-card {
    background-color: var(--uk-card-default-background);
    border-radius: var(--uk-card-border-radius);
    border: 1px solid var(--uk-card-border);
    box-shadow: var(--uk-box-shadow-small);
    padding: 1em;
}

/* ---------------------------------------------------------
   Forms
   --------------------------------------------------------- */
.uk-input,
.uk-select,
.uk-textarea {
    background-color: var(--uk-form-background);
    border: 1px solid var(--uk-form-border);
    border-radius: 6px;
    padding: 0.6em 0.8em;
    font-size: 1rem;
}

.uk-input:focus,
.uk-select:focus,
.uk-textarea:focus {
    border-color: var(--uk-form-focus-border);
    box-shadow: 0 0 0 1px rgba(37,99,235,0.5),
                0 0 0 3px rgba(37,99,235,0.15);
}

/* ---------------------------------------------------------
   Tables
   --------------------------------------------------------- */
.uk-table {
    background-color: var(--uk-card-default-background);
    border-radius: 12px;
    overflow: hidden;
}

.uk-table th {
    background-color: var(--uk-table-header-background);
    color: var(--uk-text-secondary);
    font-weight: 700;
    font-size: 0.95rem;
}

.uk-table td { border-top: 1px solid var(--uk-table-divider-border); font-size: 0.9rem; }

/* ---------------------------------------------------------
   Alerts
   --------------------------------------------------------- */
.uk-alert {
    border-radius: 12px;
    font-weight: 600;
    padding: 0.85em 1.2em;
    box-shadow: 0 2px 6px rgba(31,41,55,0.1);
    border-left: 4px solid transparent;
    margin-bottom: 1em;
}

/* Info / Primary */
.uk-alert-primary {
    background-color: #dbeafe;
    border-left-color: #2563eb;
    color: #1e3a8a;
}

/* Success / Grün */
.uk-alert-success {
    background-color: #dcfce7;
    border-left-color: #16a34a;
    color: #14532d;
}

/* Warning / Gelb/Orange */
.uk-alert-warning {
    background-color: #fef9c3;
    border-left-color: #f59e0b;
    color: #78350f;
}

/* Danger / Rot */
.uk-alert-danger {
    background-color: #fee2e2;
    border-left-color: #dc2626;
    color: #7f1d1d;
}

.uk-alert:hover {
    box-shadow: 0 4px 12px rgba(31,41,55,0.15);
}

/* ---------------------------------------------------------
   Notifications – Background Colors für Status
   --------------------------------------------------------- */
.uk-notification-message-danger {
    background-color: #dc2626 !important;
    color: #ffffff !important;
    border-left: 4px solid #7f1d1d !important;
}

.uk-notification-message-success {
    background-color: #16a34a !important;
    color: #ffffff !important;
    border-left: 4px solid #14532d !important;
}

.uk-notification-message-warning {
    background-color: #f59e0b !important;
    color: #ffffff !important;
    border-left: 4px solid #78350f !important;
}

.uk-notification-message-primary {
    background-color: #2563eb !important;
    color: #ffffff !important;
    border-left: 4px solid #1e40af !important;
}

/* ---------------------------------------------------------
   Notifications – größer und auffälliger
   --------------------------------------------------------- */
.uk-notification-message {
    min-width: 320px;            
    max-width: 480px;            
    padding: 1em 1.5em;          
    font-size: 1rem;             
    line-height: 1.5;
    border-radius: 8px;          
    box-shadow: 0 4px 12px rgba(0,0,0,0.15); 
}

/* Mobile Anpassung */
@media (max-width: 768px) {
    .uk-alert {
        padding: 0.75em 1em;
    }
    .uk-notification-message {
        min-width: 90%;          
        font-size: 1rem;
        padding: 0.9em 1.2em;
    }
}
