/* ============================================================
   wwwroot/css/app.css — Ca&Pe Courier S.A.C.
   Estilos globales del proyecto CaypeSeguimiento
   ============================================================ */

@import url('https://fonts.googleapis.com/css2?family=Playfair+Display:wght@700&family=DM+Sans:wght@300;400;500;600&display=swap');

/* Reset base */
*, *::before, *::after {
    box-sizing: border-box;
    margin: 0;
    padding: 0;
}

html, body {
    height: 100%;
    font-family: 'DM Sans', -apple-system, BlinkMacSystemFont, sans-serif;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    background: #f0f4f8;
}

/* Blazor loading */
#blazor-error-ui {
    background: lightyellow;
    bottom: 0;
    box-shadow: 0 -1px 2px rgba(0,0,0,0.2);
    display: none;
    left: 0;
    padding: 0.6rem 1.25rem 0.7rem 1.25rem;
    position: fixed;
    width: 100%;
    z-index: 1000;
}

#blazor-error-ui .dismiss {
    cursor: pointer;
    position: absolute;
    right: 0.75rem;
    top: 0.5rem;
}

/* Validation Messages (Blazor) */
.validation-message {
    color: #D40000;
    font-size: 0.78rem;
    margin-top: 3px;
    padding-left: 4px;
}

/* Scrollbar personalizado */
::-webkit-scrollbar { width: 6px; height: 6px; }
::-webkit-scrollbar-track { background: #f1f5f9; }
::-webkit-scrollbar-thumb { background: #cbd5e1; border-radius: 10px; }
::-webkit-scrollbar-thumb:hover { background: #0A1B4B; }

/* Focus visible accesible */
:focus-visible {
    outline: 2px solid #0A1B4B;
    outline-offset: 2px;
    border-radius: 4px;
}

/* Selección de texto */
::selection { background: #0A1B4B; color: white; }

/* Tipografía base */
h1, h2, h3, h4, h5, h6 {
    font-family: 'Playfair Display', Georgia, serif;
    line-height: 1.2;
}

a { color: #0A1B4B; text-decoration: none; }
a:hover { color: #D40000; }

/* Utilidades */
.text-primary { color: #0A1B4B; }
.text-danger  { color: #D40000; }
.text-muted   { color: #64748b; }
.fw-600       { font-weight: 600; }
.fw-700       { font-weight: 700; }
