/*stranica da zauzme cijelu visinu*/

    /* ---- Base reset za visinu ---- */
    html, body {
      height: 100%;
      margin: 0;
      padding: 0;
    }

    /* Ako koristiš samo na login stranicama */
    body.login {
      min-height: 100%;
    }

    /* Neka #page-wrapper kontrolira cijeli vertical layout */
    #page-wrapper {
      display: flex !important;
      flex-direction: column !important;
      min-height: 100vh !important;    /* garantira da wrapper može popuniti viewport */
      height: auto !important;         /* ukloni fiksne height iz drugih stilova */
    }

    .soap-login-page {
      flex: 1 1 auto !important;       /* raste i skuplja se po potrebi */
      display: flex !important;        /* omogućava jednostavno centriranje unutar */
      flex-direction: column !important;
    }

    .soap-login-page section {
        flex: 1 1 auto !important;     /* raste i popunjava prostor */
        display: flex !important;      /* ako želiš vertikalno centrirati unutar */
        flex-direction: column !important;
    }

    #main {
      flex: 1 1 auto !important;
      display: flex !important;
      flex-direction: column !important;
    }

    /* Footer ostaje na dnu unutar page-wrapper */
    #footer_new {
      flex-shrink: 0 !important;
      margin-top: 0 !important;
    }


#main{
    margin-top: 50px;
    margin-bottom: 70px;
}


#main .login-form {
    width: 100%;
    max-width: 420px;
    min-width: 420px;
    margin: 0 auto;
    padding: 25px 30px;
    background: #ffffff10; /* lagano proziran bijeli sloj */
    backdrop-filter: blur(6px);
    border-radius: 12px;
    border: 1px solid #ffffff30;
    box-shadow: 0 6px 18px rgba(0,0,0,0.15);
}

#main .login-form .booking-loader{
    background-color: rgba(255,255,255,0.1);
}

/* Naslov */
#main h2.loginscreen {
    margin-bottom: 25px;
    font-size: 26px;
    color: #fff;
}

/* Label */
#main .form-group label {
    display: block;
    margin-bottom: 6px;
    color: #fff;
    font-weight: 500;
}

/* Input polja */
#main .login-form input.input-text {
    border: 1px solid #ccc;
    padding: 10px 12px;
    border-radius: 6px;
    font-size: 15px;
    width: 100%;
    background: #fff;
    transition: border-color .2s, box-shadow .2s;
}

#main .login-form input.input-text:focus {
    border-color: #3aa55d;
    box-shadow: 0 0 5px rgba(58,165,93,0.4);
}

/* Checkbox */
#main .login-form .checkbox {
    color: #fff;
    font-size: 14px;
    line-height: 1.4em;
}

#main .login-form .checkbox input {
    margin-right: 6px;
}


/* Strogo stiliziranje submit gumba */
#main .login-form button._submitBtn {
    all: unset;                /* Resetira SVE naslijeđene stilove */
    display: block !important;
    width: 100% !important;
    padding: 14px 0 !important;
    text-align: center !important;

    background: #1fa64a !important;
    color: #fff !important;
    font-size: 17px !important;
    font-weight: 700 !important;
    border-radius: 6px !important;
    cursor: pointer !important;
    border: none !important;

    transition: background .2s ease, transform .15s ease !important;
    box-sizing: border-box !important;
}

#main .login-form button._submitBtn:hover {
    background: #17943e !important;
}

#main .login-form button._submitBtn:active {
    transform: scale(0.97) !important;
}

#main .login-form a:link,
#main .login-form a:visited {
    color: #fff !important;
}


/* Responsive za mobitele */
@media (max-width: 480px) {
    #main .login-form {
        padding: 20px;
    }
    
    #main h2.loginscreen {
        font-size: 22px;
    }
}
