/* ============================================================================
   elisa Theme · Login page styles (CSS plano, NO SCSS)
   ----------------------------------------------------------------------------
   El login de Odoo 19 NO carga los bundles assets_frontend / assets_backend.
   Por eso aqui inyectamos un CSS estatico directo via <link> en el template.
   Incluye: fonts custom, paleta teal+naranja, layout limpio cream + card
   premium. NO depende del pipeline SCSS de Odoo.
   ============================================================================ */

@import url('https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:wght@500;600;700;800&family=Inter:wght@400;500;600;700&display=swap');

/* ---- Reset minimo y body ---- */
body {
    font-family: 'Inter', system-ui, -apple-system, sans-serif !important;
    background-color: #FAFAF7 !important;
    background-image:
        radial-gradient(circle at 20% 20%, rgba(8, 145, 178, 0.06) 0%, transparent 40%),
        radial-gradient(circle at 80% 80%, rgba(249, 115, 22, 0.05) 0%, transparent 40%) !important;
    background-attachment: fixed !important;
    color: #0C1A2E;
    min-height: 100vh;
    display: flex !important;
    align-items: center;
    justify-content: center;
    padding: 2rem 1rem;
}

/* ---- Esconder navegacion de website si aparece colada ---- */
.o_main_navbar,
header.o_header_standard,
header.o_navbar,
nav.navbar_top,
header.o_main_header,
nav.o_main_navbar,
.s_navbar,
.o_header_offset,
ul.nav,
.o_footer,
footer,
.o_database_list ~ * {
    /* el login no necesita el header del website */
}

/* ---- Container principal del login ---- */
.container,
.container-fluid,
.o_database_list {
    background: transparent !important;
}

main, .oe_website_login_container {
    background: transparent !important;
}

/* ---- Wordmark elisa arriba del form ---- */
.o_elisa_login_brand {
    text-align: center;
    margin-bottom: 1.5rem;
}
.o_elisa_login_brand img {
    max-width: 220px;
    height: auto;
    display: inline-block;
}
.o_elisa_login_brand p {
    font-family: 'Inter', sans-serif !important;
    font-size: 0.85rem !important;
    color: #5A7290 !important;
    margin-top: 0.5rem !important;
    margin-bottom: 0 !important;
    letter-spacing: -0.005em;
}

/* ---- Card del form de login ---- */
form.oe_login_form,
.o_login_form,
form[action*="/web/login"] {
    background: white;
    border: 1px solid #E8EEF5;
    border-radius: 16px;
    padding: 2rem 2rem 1.75rem;
    box-shadow:
        0 20px 50px -12px rgba(12, 26, 46, 0.12),
        0 8px 16px -8px rgba(12, 26, 46, 0.06);
    max-width: 420px;
    width: 100%;
    margin: 0 auto;
}

/* ---- Inputs ---- */
.form-control,
input[type="text"],
input[type="email"],
input[type="password"],
input[type="number"],
select.form-select {
    border: 1px solid #DEE5EB !important;
    border-radius: 8px !important;
    padding: 0.6rem 0.85rem !important;
    font-family: 'Inter', sans-serif !important;
    font-size: 14px !important;
    color: #0C1A2E !important;
    background-color: #FAFCFD !important;
    transition: border-color 0.15s ease, box-shadow 0.15s ease;
}

.form-control:focus,
input[type="text"]:focus,
input[type="email"]:focus,
input[type="password"]:focus,
input[type="number"]:focus,
select.form-select:focus {
    border-color: #0891B2 !important;
    background-color: white !important;
    box-shadow: 0 0 0 0.2rem rgba(8, 145, 178, 0.15) !important;
    outline: none !important;
}

/* ---- Labels ---- */
label,
.col-form-label {
    font-family: 'Plus Jakarta Sans', sans-serif !important;
    font-size: 12px !important;
    font-weight: 700 !important;
    color: #5A7290 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.6px !important;
    margin-bottom: 0.4rem !important;
}

/* ---- Boton primario ---- */
.btn-primary,
button[type="submit"] {
    background-color: #0891B2 !important;
    border: 1px solid #0891B2 !important;
    border-radius: 10px !important;
    color: white !important;
    font-family: 'Plus Jakarta Sans', sans-serif !important;
    font-weight: 700 !important;
    font-size: 15px !important;
    padding: 0.7rem 1.4rem !important;
    width: 100%;
    margin-top: 0.5rem;
    transition: background-color 0.15s ease, transform 0.05s ease;
    box-shadow: 0 4px 12px -3px rgba(8, 145, 178, 0.45);
}

.btn-primary:hover,
button[type="submit"]:hover {
    background-color: #0E7490 !important;
    border-color: #0E7490 !important;
}

.btn-primary:active,
button[type="submit"]:active {
    transform: translateY(1px);
}

/* ---- Links secundarios ---- */
.o_login_form a,
form.oe_login_form a,
.field-login + a,
.field-password + a {
    color: #0E7490 !important;
    font-weight: 600 !important;
    text-decoration: none !important;
}

.o_login_form a:hover,
form.oe_login_form a:hover {
    color: #0891B2 !important;
    text-decoration: underline !important;
}

/* ---- Mensaje de error / alerta ---- */
.alert {
    border-radius: 10px !important;
    border: 1px solid transparent !important;
    padding: 0.75rem 1rem !important;
    font-size: 13px !important;
}

.alert-danger {
    background-color: #FEF2F2 !important;
    border-color: rgba(220, 38, 38, 0.2) !important;
    color: #DC2626 !important;
}

.alert-success {
    background-color: #F0FDF4 !important;
    border-color: rgba(22, 163, 74, 0.2) !important;
    color: #16A34A !important;
}

/* ---- Footer / Powered by Odoo ---- */
.text-muted,
.small.text-muted {
    color: #5A7290 !important;
    font-size: 11px !important;
}

/* ---- Database selector (si aparece) ---- */
.o_database_list h2 {
    font-family: 'Plus Jakarta Sans', sans-serif;
    font-size: 24px;
    font-weight: 800;
    color: #0C1A2E;
    text-align: center;
    margin-bottom: 1.5rem;
}

/* ---- Esconder header/nav/footer del website (Odoo 19 mete /web/login en layout de website) ---- */
header,
header.o_header_standard,
header#top,
nav.s_navbar,
.o_header_offset,
.o_top_fixed_element,
.s_searchbar_input,
.o_searchbar_form,
.modal-search,
#top_menu_collapse_mobile,
.s_text_image,
.s_features,
[data-snippet],
.oe_website_search,
.o_skip_navigation,
.skip-link,
footer,
.o_footer,
#footer,
.s_call_to_action {
    display: none !important;
}

/* ---- Re-centrar el contenido despues de quitar el header ---- */
main,
#wrap,
#wrapwrap,
.o_main_content,
.oe_website_login_container,
.o_main {
    background: transparent !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    min-height: auto !important;
}

#wrapwrap {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-height: 100vh !important;
}
