/* Risorse - Self Service Password stile Soft Water */

html,
body {
    min-height: 100% !important;
    height: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
}

html,
body {
    background:
        linear-gradient(rgba(9, 13, 19, 0.28), rgba(9, 13, 19, 0.65)),
        url("https://soft-water.it/wp-content/uploads/2023/03/cover-scaled.jpg") center center / cover no-repeat fixed !important;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Arial, sans-serif !important;
    color: #ffffff !important;
}

/* Container centrato */
body > .container,
.container {
    width: 100% !important;
    max-width: none !important;
    min-height: 100vh !important;
    margin: 0 !important;
    padding: 24px !important;
    background: transparent !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
}

/* Card centrale */
.panel,
.panel-success,
.panel-default,
body > .container > .panel,
.container > .panel {
    width: 460px !important;
    max-width: calc(100vw - 32px) !important;
    margin: 0 auto !important;
    padding: 0 !important;
    background: rgba(20, 24, 30, 0.96) !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: 0 28px 90px rgba(0, 0, 0, 0.55) !important;
}

.panel-body {
    position: relative !important;
    padding: 46px 38px 34px 38px !important;
    background: transparent !important;
    color: #ffffff !important;
}

/* Elimina la banda/menu superiore */
.navbar-wrapper,
.navbar,
.navbar-default,
.navbar-static-top,
.navbar-header,
.navbar-brand,
.navbar-toggle,
.navbar-collapse,
.navbar-nav {
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
}

/* Nasconde home/domande/sms e tiene solo eventuale Mail */
.navbar-header,
.navbar-brand,
.navbar-toggle {
    display: none !important;
}

.navbar-wrapper {
    position: absolute !important;
    left: 38px !important;
    right: 38px !important;
    bottom: 16px !important;
    margin: 0 !important;
    padding: 0 !important;
    z-index: 5 !important;
}

.navbar {
    min-height: 0 !important;
    margin: 0 !important;
}

.navbar-collapse {
    display: block !important;
    height: auto !important;
    overflow: visible !important;
    padding: 0 !important;
}

.navbar-nav {
    float: none !important;
    margin: 0 !important;
    padding: 0 !important;
    text-align: center !important;
}

.navbar-nav > li {
    float: none !important;
    display: none !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* Mostra solo il link Mail per reset password */
.navbar-nav > li:has(a[href*="sendtoken"]) {
    display: block !important;
}

/* Fallback se :has non fosse supportato: tutti i link menu diventano discreti */
.navbar-nav > li > a {
    display: block !important;
    padding: 11px 14px !important;
    background: rgba(255,255,255,0.06) !important;
    border: 1px solid rgba(255,255,255,0.12) !important;
    border-radius: 8px !important;
    color: #8bdcff !important;
    text-align: center !important;
    font-weight: 600 !important;
    text-shadow: none !important;
}

.navbar-nav > li > a:hover,
.navbar-nav > li > a:hover i,
.navbar-nav > li > a:hover .fa {
    background: rgba(46,170,220,0.18) !important;
    color: #ffffff !important;
}

/* Logo */
.logo,
img.logo,
img[src*="logo-risorse"],
img[src*="logo-soft-water"] {
    width: 245px !important;
    max-width: 88% !important;
    height: auto !important;
    display: block !important;
    margin: 0 auto 30px auto !important;
    border: 0 !important;
    box-shadow: none !important;
    background: transparent !important;
}

/* Titolo */
.result.alert,
.result.alert-success {
    margin: 0 0 10px 0 !important;
    padding: 0 !important;
    background: transparent !important;
    border: 0 !important;
    color: #ffffff !important;
    box-shadow: none !important;
    text-shadow: none !important;
}

.result.alert p {
    margin: 0 !important;
    color: #ffffff !important;
    font-size: 23px !important;
    line-height: 1.25 !important;
    font-weight: 700 !important;
    text-shadow: none !important;
}

.result.alert i {
    display: none !important;
}

/* Help */
.help.alert,
.help.alert-warning {
    margin: 0 0 26px 0 !important;
    padding: 0 !important;
    background: transparent !important;
    border: 0 !important;
    color: #c9d3df !important;
    box-shadow: none !important;
    text-shadow: none !important;
}

.help.alert p {
    margin: 0 !important;
    color: #c9d3df !important;
    font-size: 14px !important;
    line-height: 1.45 !important;
    text-shadow: none !important;
}

.help.alert i {
    display: none !important;
}

/* Box form */
.alert.alert-info {
    margin: 0 !important;
    padding: 0 0 54px 0 !important;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
}

/* Form */
.form-horizontal {
    margin: 0 !important;
    padding: 0 !important;
}

.form-horizontal .form-group,
.form-group {
    margin: 0 0 17px 0 !important;
}

/* Elimina griglia Bootstrap */
.form-horizontal .control-label,
.col-sm-4,
.col-sm-8,
.col-sm-offset-4 {
    float: none !important;
    width: 100% !important;
    max-width: 100% !important;
    margin-left: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    display: block !important;
}

/* Label */
label,
.control-label {
    color: #dce5ee !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    text-align: left !important;
    margin: 0 0 7px 0 !important;
    padding: 0 !important;
    text-shadow: none !important;
}

/* Input group */
.input-group {
    width: 100% !important;
    display: flex !important;
}

.input-group-addon {
    width: 46px !important;
    min-width: 46px !important;
    height: 46px !important;
    padding: 0 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    background: rgba(255, 255, 255, 0.08) !important;
    border: 1px solid rgba(255, 255, 255, 0.13) !important;
    border-right: 0 !important;
    color: #dce5ee !important;
    border-radius: 8px 0 0 8px !important;
    text-shadow: none !important;
}

.input-group-addon i,
.input-group-addon .fa {
    color: #dce5ee !important;
}

/* Input */
.form-control,
input[type="text"],
input[type="password"],
input[type="email"] {
    height: 46px !important;
    background: #ffffff !important;
    color: #1a1f25 !important;
    border: 1px solid rgba(255, 255, 255, 0.13) !important;
    border-radius: 8px !important;
    box-shadow: none !important;
    font-size: 15px !important;
}

.input-group .form-control {
    border-radius: 0 8px 8px 0 !important;
}

.form-control:focus,
input:focus {
    border-color: #2eaadc !important;
    box-shadow: 0 0 0 3px rgba(46, 170, 220, 0.22) !important;
    outline: none !important;
}

/* Bottone */
.btn,
.btn-success,
.btn-primary,
button[type="submit"] {
    width: 100% !important;
    height: 46px !important;
    margin-top: 4px !important;
    padding: 0 20px !important;
    background: #2eaadc !important;
    border: 0 !important;
    border-radius: 8px !important;
    color: #ffffff !important;
    font-size: 15px !important;
    font-weight: 700 !important;
    text-shadow: none !important;
    box-shadow: none !important;
}

.btn:hover,
.btn-success:hover,
.btn-primary:hover,
button[type="submit"]:hover {
    background: #168fc0 !important;
    color: #ffffff !important;
}

/* Tooltip/popover */
.popover {
    background: #ffffff !important;
    border: 1px solid rgba(0, 0, 0, 0.15) !important;
    border-radius: 10px !important;
    box-shadow: 0 12px 36px rgba(0, 0, 0, 0.25) !important;
}

.popover-title {
    background: #f5f7fa !important;
    color: #1a1f25 !important;
    border-bottom: 1px solid #e2e8f0 !important;
    font-weight: 600 !important;
}

.popover-content,
.popover-content *,
.popover-content p,
.popover-content div,
.popover-content span {
    color: #1a1f25 !important;
    background: transparent !important;
    text-shadow: none !important;
}

/* Mobile */
@media (max-width: 540px) {
    body > .container,
    .container {
        padding: 14px !important;
    }

    body > .container > .panel,
    .container > .panel,
    .panel {
        width: calc(100vw - 28px) !important;
    }

    .panel-body {
        padding: 34px 24px 30px 24px !important;
    }

    .navbar-wrapper {
        left: 24px !important;
        right: 24px !important;
    }

    .result.alert p {
        font-size: 22px !important;
    }

    .logo,
    img.logo {
        width: 220px !important;
    }
}

/* Fix barra menu: mostra solo Mail come link piccolo */
.card-body > .container:first-child,
.card-body .navbar,
.card-body .navbar .container-fluid,
.card-body .navbar-collapse,
.card-body .navbar-nav {
    width: auto !important;
    min-height: 0 !important;
    height: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
}

/* Posizione del mini link Mail */
.card-body > .container:first-child {
    position: absolute !important;
    top: 18px !important;
    right: 22px !important;
    left: auto !important;
    z-index: 20 !important;
}

/* Nasconde logo/nome nella navbar */
.card-body .navbar-brand,
.card-body .navbar-toggler {
    display: none !important;
}

/* Nasconde tutti i link menu */
.card-body .navbar-nav .nav-item {
    display: none !important;
}

/* Mostra solo il link Mail */
.card-body .navbar-nav .nav-item:has(a[href*="sendtoken"]) {
    display: block !important;
}

/* Bottone Mail piccolo */
.card-body .navbar-nav .nav-link,
.card-body .navbar-nav a[href*="sendtoken"] {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 6px !important;

    width: auto !important;
    height: 30px !important;
    min-height: 30px !important;

    padding: 5px 12px !important;
    margin: 0 !important;

    background: rgba(255, 255, 255, 0.08) !important;
    border: 1px solid rgba(255, 255, 255, 0.16) !important;
    border-radius: 8px !important;

    color: #8bdcff !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    line-height: 1 !important;
    text-decoration: none !important;
    text-shadow: none !important;
}

.card-body .navbar-nav a[href*="sendtoken"]:hover {
    background: rgba(46, 170, 220, 0.22) !important;
    color: #ffffff !important;
}

.card-body .navbar-nav a[href*="sendtoken"] i,
.card-body .navbar-nav a[href*="sendtoken"] .fa {
    color: inherit !important;
    font-size: 12px !important;
}

/* Evita che Bootstrap tenga spazio alla navbar */
.card-body .navbar-expand-lg {
    flex-wrap: nowrap !important;
}

/* Fallback browser senza :has(): nasconde Domande/SMS per URL */
.card-body .navbar-nav a[href*="resetbyquestions"],
.card-body .navbar-nav a[href*="sendsms"] {
    display: none !important;
}


/* =========================================================
   Risorse readability fix - card chiara leggibile
   ========================================================= */

/* Sfondo leggermente più scuro per far risaltare la card */
html,
body {
    background:
        linear-gradient(rgba(10, 18, 28, 0.38), rgba(10, 18, 28, 0.68)),
        url("https://soft-water.it/wp-content/uploads/2023/03/cover-scaled.jpg") center center / cover no-repeat fixed !important;
}

/* Card bianca, leggibile, stile cooperativa */
.card,
.card-success,
.panel,
.panel-success,
.container > .card,
.container > .panel {
    background: rgba(255, 255, 255, 0.94) !important;
    color: #1f2933 !important;
    border: 1px solid rgba(255, 255, 255, 0.45) !important;
    border-radius: 14px !important;
    box-shadow: 0 28px 90px rgba(0, 0, 0, 0.38) !important;
    backdrop-filter: blur(8px) !important;
}

.card-body,
.panel-body {
    background: transparent !important;
    color: #1f2933 !important;
}

/* Logo senza riquadro azzurro */
.logo,
img.logo,
.menu-logo,
img[src*="logo-risorse"],
img[src*="logo-soft-water"] {
    background: transparent !important;
    box-shadow: none !important;
    border: 0 !important;
    opacity: 1 !important;
    filter: none !important;
}

/* Link Mail in alto: piccolo e verde */
.card-body > .container:first-child {
    top: 18px !important;
    right: 24px !important;
}

.card-body .navbar-nav a[href*="sendtoken"],
.card-body .navbar-nav .nav-link {
    background: rgba(96, 173, 44, 0.12) !important;
    border: 1px solid rgba(96, 173, 44, 0.28) !important;
    color: #4f9f25 !important;
    font-size: 13px !important;
    font-weight: 700 !important;
}

.card-body .navbar-nav a[href*="sendtoken"]:hover {
    background: #60ad2c !important;
    border-color: #60ad2c !important;
    color: #ffffff !important;
}

/* Titolo */
.result.alert,
.result.alert-success {
    background: transparent !important;
    border: 0 !important;
    color: #1f2933 !important;
    box-shadow: none !important;
}

.result.alert p,
.result.alert,
.result.alert-success {
    color: #1f2933 !important;
    text-shadow: none !important;
    font-weight: 700 !important;
}

/* Titolo specifico azione */
.result.alert-success,
.result.alert-success * {
    color: #4f9f25 !important;
}

/* Testo descrittivo */
.result.alert-warning,
.help.alert,
.help.alert-warning {
    background: transparent !important;
    border: 0 !important;
    color: #52616f !important;
    box-shadow: none !important;
}

.result.alert-warning,
.result.alert-warning *,
.help.alert,
.help.alert *,
.help.alert-warning,
.help.alert-warning * {
    color: #52616f !important;
    text-shadow: none !important;
}

/* Form senza pannello azzurro */
.alert.alert-info {
    background: transparent !important;
    border: 0 !important;
    color: #1f2933 !important;
    box-shadow: none !important;
}

/* Label ben visibili */
label,
.control-label,
.col-form-label,
.text-end {
    color: #25313d !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    text-shadow: none !important;
}

/* Layout Bootstrap 5: label sopra input */
.row.mb-3 {
    display: block !important;
    margin: 0 0 18px 0 !important;
}

.row.mb-3 > label,
.row.mb-3 > div,
.col-sm-4,
.col-sm-8,
.offset-sm-4 {
    width: 100% !important;
    max-width: 100% !important;
    margin-left: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    text-align: left !important;
}

/* Input group */
.input-group {
    width: 100% !important;
}

.input-group-text,
.input-group-addon {
    width: 46px !important;
    min-width: 46px !important;
    height: 46px !important;
    background: #f3f6f8 !important;
    border: 1px solid #d9e1e7 !important;
    border-right: 0 !important;
    color: #4f9f25 !important;
    border-radius: 8px 0 0 8px !important;
}

.input-group-text i,
.input-group-addon i,
.input-group-text .fa,
.input-group-addon .fa {
    color: #4f9f25 !important;
}

/* Input */
.form-control,
input[type="text"],
input[type="password"],
input[type="email"] {
    height: 46px !important;
    background: #ffffff !important;
    color: #1f2933 !important;
    border: 1px solid #d9e1e7 !important;
    border-radius: 8px !important;
    box-shadow: none !important;
    font-size: 15px !important;
    font-weight: 500 !important;
}

.input-group .form-control {
    border-radius: 0 8px 8px 0 !important;
}

.form-control::placeholder {
    color: #7b8794 !important;
    opacity: 1 !important;
}

.form-control:focus,
input:focus {
    border-color: #60ad2c !important;
    box-shadow: 0 0 0 3px rgba(96, 173, 44, 0.18) !important;
    outline: none !important;
}

/* Bottone verde Risorse */
.btn,
.btn-success,
.btn-primary,
button[type="submit"] {
    width: 100% !important;
    height: 46px !important;
    background: #60ad2c !important;
    border: 0 !important;
    border-radius: 8px !important;
    color: #ffffff !important;
    font-size: 15px !important;
    font-weight: 700 !important;
    text-shadow: none !important;
    box-shadow: 0 10px 22px rgba(96, 173, 44, 0.28) !important;
}

.btn:hover,
.btn-success:hover,
.btn-primary:hover,
button[type="submit"]:hover {
    background: #4f9f25 !important;
    color: #ffffff !important;
}

/* Footer invisibile */
#footer {
    display: none !important;
}

/* Popover leggibile */
.popover,
.popover-body,
.popover-content {
    color: #1f2933 !important;
    background: #ffffff !important;
    text-shadow: none !important;
}

.popover *,
.popover-body *,
.popover-content * {
    color: #1f2933 !important;
    text-shadow: none !important;
}

/* Card più compatta su azione mail */
.card,
.panel {
    width: 560px !important;
    max-width: calc(100vw - 36px) !important;
}

@media (max-width: 640px) {
    .card,
    .panel {
        width: calc(100vw - 28px) !important;
    }

    .card-body,
    .panel-body {
        padding: 34px 24px 30px 24px !important;
    }

    .card-body > .container:first-child {
        top: 12px !important;
        right: 16px !important;
    }
}

