/* ============================================================
   Tema premium M&C — login.mecinnovation (schermate auth).
   Stessi token --mc-* del resto del portale: brand #8C0011,
   surface calda, Inter, card morbide. Layer finale di override.
   ============================================================ */
:root {
    --mc-brand: #8C0011;
    --mc-brand-dark: #6a000d;
    --mc-brand-soft: rgba(140, 0, 17, 0.08);
    --mc-surface: #F8F5F3;
    --mc-ink: #2c2421;
    --mc-ink-soft: #8d8581;
    --mc-line: #eee4df;
    --mc-ease: cubic-bezier(.2, .65, .3, 1);
}

body {
    background: var(--mc-surface) !important;
    font-family: 'Inter', system-ui, -apple-system, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif !important;
    color: var(--mc-ink);
    -webkit-font-smoothing: antialiased;
}

/* Aloni brand morbidi come nella pagina aree */
body::before {
    content: '';
    position: fixed;
    top: -280px; right: -200px;
    width: 820px; height: 820px;
    background: radial-gradient(circle, rgba(140, 0, 17, 0.09) 0%, rgba(140, 0, 17, 0) 70%);
    border-radius: 50%;
    pointer-events: none;
    z-index: 0;
}
body::after {
    content: '';
    position: fixed;
    bottom: -320px; left: -260px;
    width: 720px; height: 720px;
    background: radial-gradient(circle, rgba(140, 0, 17, 0.05) 0%, rgba(140, 0, 17, 0) 70%);
    border-radius: 50%;
    pointer-events: none;
    z-index: 0;
}
.wrapper { position: relative; z-index: 1; }

.section-authentication-signin .card,
.authentication-forgot .card,
.authentication-reset-password .card,
.card {
    border: none !important;
    border-radius: 18px !important;
    box-shadow: 0 10px 30px rgba(140, 0, 17, 0.10) !important;
    background: #fff;
}

h5, .card h5 { font-weight: 700; color: var(--mc-ink); letter-spacing: -0.01em; }
.card p { color: var(--mc-ink-soft); }

.form-label { font-weight: 600; font-size: 13px; color: var(--mc-ink); }
.form-control {
    border-radius: 10px;
    border-color: var(--mc-line);
    padding-top: 9px;
    padding-bottom: 9px;
    transition: border-color .15s var(--mc-ease), box-shadow .15s var(--mc-ease);
}
.form-control:focus {
    border-color: var(--mc-brand);
    box-shadow: 0 0 0 3px var(--mc-brand-soft);
}
.input-group .form-control { border-right: 0; }
.input-group .input-group-text {
    border-color: var(--mc-line);
    border-radius: 0 10px 10px 0;
    color: var(--mc-ink-soft);
}
.input-group:focus-within .input-group-text { border-color: var(--mc-brand); }

.btn-primary {
    background-color: var(--mc-brand) !important;
    border-color: var(--mc-brand) !important;
    border-radius: 10px !important;
    font-weight: 600;
    padding-top: 10px;
    padding-bottom: 10px;
    transition: background-color .15s var(--mc-ease);
}
.btn-primary:hover, .btn-primary:focus, .btn-primary:active {
    background-color: var(--mc-brand-dark) !important;
    border-color: var(--mc-brand-dark) !important;
}
.btn-light { border-radius: 10px !important; }

a { color: var(--mc-brand); }
a:hover { color: var(--mc-brand-dark); }

/* SweetAlert coerente */
.swal2-popup { border-radius: 18px !important; font-family: 'Inter', sans-serif !important; }
.swal2-confirm.swal2-styled { background-color: var(--mc-brand) !important; border-radius: 10px !important; box-shadow: none !important; }
