/* -------------------------------------------------
	STRUTTURA ESTERNA
------------------------------------------------- */

@import url('//maxcdn.bootstrapcdn.com/font-awesome/4.7.0/css/font-awesome.min.css');
@font-face {
    font-family: 'Apex New';
    src: url(../fonts/ApexNewHeavy.otf);
    src: url(../fonts/ApexNewHeavy.woff) format("woff");
}

body {
    height: auto !important;
    background: #ededed;
    font-family: 'Open Sans', sans-serif;
    color: #222;
}

body>div.container-fluid {
    background: #fff;
    max-width: 1280px;
}

hr {
    margin-top: 15px;
    margin-bottom: 0;
}

.error {
    color: red;
}

.success {
    color: green;
}

.center {
    text-align: center;
}

.height-vh {
    height: 100vh;
}


/* -------------------------------------------------
	FINE
------------------------------------------------- */


/* -------------------------------------------------
	HEADER
------------------------------------------------- */

#header-logo>div {
    padding: 30pt 20px 50px 20px;
}

#header-logo img {
    width: 300px;
}

#header-shopping-operatori {
    background: url(../img/header-pattern.png );
}

#header-shopping-operatori>div {
    display: flex;
    align-items: center;
    padding: 0 20px;
}

.header-shopping-operatori-titolo {
    font-size: 24px;
    font-weight: bold;
    color: #0057a7;
    line-height: 24px;
    padding-left: 20px;
}

.header-shopping-operatori-titolo:hover {
    text-decoration: none;
}

#offerte-dedicate>div {
    padding: 0;
}

#offerte-dedicate img {
    width: 100%;
    border-top: 5px solid #d2dae5;
}


/* -------------------------------------------------
	FINE
------------------------------------------------- */


/* -------------------------------------------------
	FORM
------------------------------------------------- */

.intestazione {
    padding-top: 50px;
    padding-bottom: 5px;
}

.intestazione>div {
    font-size: 14px;
    line-height: 20px;
}

#form-checkbox {
    margin-top: 30px;
    margin-bottom: 20px;
}

label.obbligatorio {
    color: #dd2c00
}

.control_indicator.obbligatorio {
    border-color: #dd2c00
}

.relativo {
    position: relative;
}

.velina-checkbox {
    width: 100%;
    height: 45px;
    position: absolute;
    top: 0;
    left: 40px;
}


/* INPUT */

form input,
form select {
    margin-top: 30px;
}

select.form-control {
    color: #888;
    background-image: url(../img/arrow.png);
    background-position: right;
    background-repeat: no-repeat;
    appearance: none;
    -moz-appearance: none;
    /* Firefox */
    -webkit-appearance: none;
    /* Safari and Chrome */
}

select.form-control::-ms-expand {
    display: none;
}


/* Per IE9 */

.select-ie {
    display: none;
}

.form-ie label {
    display: none;
}

.form-control {
    display: block;
    width: 100%;
    height: 40px;
    padding: 0;
    padding-left: 13px;
    font-size: 16px;
    line-height: 20px;
    background-color: #fff;
    background-image: none;
    border: 1px solid #1e4b98;
    border-radius: 2px;
    -webkit-box-shadow: none;
    box-shadow: none;
    -webkit-transition: none;
    -o-transition: none;
    transition: none;
}

.form-control:focus {
    -webkit-box-shadow: none;
    box-shadow: none;
}


/* FINE */


/* BUTTON */

.btn {
    width: 187px;
    height: 49px;
    font-size: 18px;
    line-height: 13px;
}

.btn.focus,
.btn:focus,
.btn:hover {
    color: #fff;
    text-decoration: none;
}

.btn-adr {
    color: #fff;
    background-color: #1e4b98;
    border: none;
}

.btn-adr i {
    padding-left: 20px;
}


/* FINE */


/* CHECKBOX */

.control {
    display: block;
    position: relative;
    padding-left: 30px;
    margin-bottom: 20px;
    padding-top: 3px;
    cursor: pointer;
    font-size: 12px;
    line-height: 20px;
    color: #1e4b98;
    font-weight: 600;
}

.control input {
    position: absolute;
    z-index: -1;
    opacity: 0;
}

.control_indicator {
    position: absolute;
    top: 2px;
    left: 0;
    height: 20px;
    width: 20px;
    border: 1px solid #1e4b98;
}

.control input:disabled~.control_indicator {
    background: #e6e6e6;
    opacity: 0.6;
    pointer-events: none;
}

.control_indicator:after {
    box-sizing: unset;
    content: '';
    position: absolute;
    display: none;
}

.control input:checked~.control_indicator:after {
    display: block;
}

.control-checkbox .control_indicator:after {
    left: 7px;
    top: 3px;
    width: 3px;
    height: 8px;
    border: solid #1e4b98;
    border-width: 0 2px 2px 0;
    transform: rotate(45deg);
}

.control-checkbox input:disabled~.control_indicator:after {
    border-color: #7b7b7b;
}


/* FINE */


/* DATEPICKER */

.date-picker-custom {
    width: 100%;
}

.date-picker-custom .uib-button-bar.ng-scope>span.btn-group,
.date-picker-custom .uib-button-bar.ng-scope>button {
    display: none;
}

.date-picker-custom * {
    outline: none;
    font-family: 'Open Sans', sans-serif;
    ;
}

.date-picker-custom small,
.date-picker-custom strong,
.date-picker-custom b {
    font-weight: 600;
}

.date-picker-custom .glyphicon.glyphicon-chevron-left:before {
    font-family: 'Fontawesome';
    content: '\f0d9';
}

.date-picker-custom .glyphicon.glyphicon-chevron-right:before {
    font-family: 'Fontawesome';
    content: '\f0da';
}

.uib-daypicker .btn {
    width: 40px;
    height: 40px;
}

.uib-daypicker thead th[colspan="6"] .btn {
    width: 100%;
}

.uib-monthpicker .btn {
    width: 120px;
    height: 40px;
}

.uib-yearpicker .btn {
    width: 70px;
    height: 40px;
}

.uib-yearpicker thead th[colspan="3"] .btn {
    width: 100%;
}

#ui-datepicker-div.ui-widget.ui-widget-content {
    width: unset;
    border: 1px solid #cdcdcd;
    border-radius: 0;
    background-color: #fff;
    padding: 5px;
    padding-top: 10px;
}

#ui-datepicker-div .ui-widget-header {
    border: none;
    background: none;
    color: #999;
    font-weight: bold;
    font-size: 16px;
    line-height: 24px;
    padding: 0;
}

.ui-state-hover,
.ui-widget-content .ui-state-hover,
.ui-widget-header .ui-state-hover,
.ui-state-focus,
.ui-widget-content .ui-state-focus,
.ui-widget-header .ui-state-focus,
.ui-button:hover,
.ui-button:focus {
    border: none;
    background: none;
}

#ui-datepicker-div .ui-widget-header a[data-handler="prev"],
#ui-datepicker-div .ui-widget-header a[data-handler="next"] {
    width: 15px;
    height: 15px;
}

#ui-datepicker-div .ui-widget-header a[data-handler="prev"]:before {
    font-family: 'Fontawesome';
    content: '\f100';
    color: #999;
    font-weight: 400;
}

#ui-datepicker-div .ui-widget-header a[data-handler="next"]:before {
    font-family: 'Fontawesome';
    content: '\f101';
    color: #999;
    font-weight: 400;
}

.ui-datepicker .ui-datepicker-prev {
    left: 10px;
    top: 0;
}

.ui-datepicker .ui-datepicker-next {
    right: 10px;
}

#ui-datepicker-div .ui-widget-header a[data-handler="prev"]>span,
#ui-datepicker-div .ui-widget-header a[data-handler="next"]>span {
    background-image: none;
}

.ui-datepicker .ui-datepicker-prev-hover,
.ui-datepicker .ui-datepicker-next-hover {
    text-decoration: none;
}

.ui-datepicker table {
    width: 100%;
    font-size: 12px;
    line-height: 10px;
    margin: 0;
}

.ui-datepicker th {
    padding: 0;
    height: 35px;
    width: 35px;
}

.ui-datepicker td {
    padding: 0;
    padding-bottom: 5px;
}

.ui-state-default,
.ui-widget-content .ui-state-default,
.ui-widget-header .ui-state-default,
.ui-button {
    border: none;
    background: none;
    font-weight: normal;
    color: #999;
    padding: 0;
    height: 35px;
    display: flex;
    align-items: center;
    justify-content: center;
}

html .ui-button.ui-state-disabled:hover,
html .ui-button.ui-state-disabled:active {
    border: none;
    background-color: #0c58a7;
    color: #fff;
    border-radius: 0;
}

.ui-state-highlight,
.ui-widget-content .ui-state-highlight,
.ui-widget-header .ui-state-highlight {
    border: none;
    background-color: #0c58a7;
    color: #fff;
    border-radius: 0;
}


/* FINE */


/* SESSO */

.myDropDown {
    display: none;
    box-shadow: 0px 1px 5px 0px rgba(0, 0, 0, .3);
}

.myDropDown div.input+div.input {
    border-top: 1px solid rgba(0, 0, 0, .2);
}

.labelSesso {
    width: 100%;
    margin-bottom: 0;
    padding: 10px 13px;
}


/* FINE */


/* -------------------------------------------------
	FINE
------------------------------------------------- */


/* -------------------------------------------------
	FOOTER
------------------------------------------------- */

.footer {
    font-size: 11px;
    line-height: 20px;
    color: #666;
    font-style: italic;
}

.footer>div {
    padding-bottom: 10px;
}

.adr-footer {
    padding: 25px 0;
    color: #fff;
    background: #919fb0;
    font-size: 13px;
    line-height: 20px;
}

.adr-footer a {
    color: #fff;
    text-decoration: underline;
}


/* -------------------------------------------------
	FINE
------------------------------------------------- */


/* -------------------------------------------------
	MODIFICA DATI
------------------------------------------------- */

#modifica-dati {
    margin-bottom: 25px;
}

.modifica-dati-link {
    padding-top: 50px;
    padding-bottom: 50px;
    font-size: 15px;
    line-height: 20px;
}

.modifica-dati-link span {
    font-weight: bold;
    color: #0c58a7;
}

.intestazione-login {
    font-size: 15px;
    line-height: 20px;
    font-weight: bold;
    color: #1e4b98;
    padding-left: 15px;
}

#modifica-dati input {
    margin-top: 30px;
}

#modifica-dati .btn {
    margin-top: 30px;
}

.required-fields-message {
    margin-top: 15px;
    font-size: 13px;
    line-height: 20px;
    color: #666;
}


/* -------------------------------------------------
	FINE
------------------------------------------------- */


/* -------------------------------------------------
	UPDATE DATI
------------------------------------------------- */

#update-dati>div.row>div.center {
    font-size: 15px;
    line-height: 20px;
    margin-bottom: 30px;
}

.update-dati-titolo,
.update-email-titolo,
.update-telefono-titolo {
    font-size: 15px;
    line-height: 20px;
    padding-bottom: 20px !important;
}

#update-dati .col-md-6 {
    font-size: 15px;
    line-height: 26px;
    padding-bottom: 20px;
}

#update-dati .col-md-6 .data-to-show {
    font-weight: bold;
    color: #1e4b98;
    font-size: 15px;
    line-height: 26px;
}

#update-email {
    margin-top: 30px;
}

#update-email span.data-to-show {
    padding-bottom: 20px;
    font-weight: bold;
    color: #1e4b98;
    font-size: 15px;
    line-height: 26px;
}

#update-telefono {
    padding-top: 30px;
}

#update-telefono .data-not-found {
    font-weight: bold;
    color: #999;
    font-size: 15px;
    line-height: 20px;
}

#update-telefono .data-show {
    font-weight: bold;
    color: #1e4b98;
    font-size: 15px;
    line-height: 26px;
}

.campi-obligatori {
    margin-bottom: 90px;
}


/* -------------------------------------------------
	FINE
------------------------------------------------- */


/* -------------------------------------------------
	CANCELLA EMAIL
------------------------------------------------- */

#cancella-email {
    position: relative;
    top: 20%;
}

.intestazione-email {
    margin-bottom: 60px;
    font-size: 15px;
    line-height: 20px;
}

#cancella-email form input {
    margin-top: 0;
}

#cancella-email .btn {
    margin-top: 30px;
}

.campi-obbligatori-cancellazione {
    color: #1e4b98;
    font-weight: 600;
    text-decoration: underline;
    font-size: 11px;
    line-height: 20px;
}


/* -------------------------------------------------
	FINE
------------------------------------------------- */


/* -------------------------------------------------
	MESSAGE
------------------------------------------------- */

.md-icon-button+.md-datepicker-input-container {
    margin-left: 0 !important;
}

md-datepicker {
    padding-right: 0;
}

div.md-datepicker-input-container {
    border-bottom-width: unset;
    border-bottom-style: unset;
    padding-bottom: 0;
    width: 100%;
}

.md-default-theme .md-datepicker-triangle-button div.md-datepicker-expand-triangle,
.md-datepicker-triangle-button div.md-datepicker-expand-triangle {
    border-top-color: #1e4b98;
}

md-datepicker>.md-button.md-icon-button {
    display: none;
}

.md-datepicker-input {
    width: 100%;
    height: 40px;
    border: 1px solid #1e4b98 !important;
    font-size: 16px !important;
    padding-left: 15px;
    line-height: 20px;
    border-radius: 2px;
}

button.md-datepicker-triangle-button {
    right: 10px;
    top: 41px;
    -webkit-transform: translateY(-25%) translateX(45%);
    transform: translateY(-25%) translateX(45%);
}

button.md-datepicker-triangle-button.md-focused {
    background: none !important;
}

.md-datepicker-input-mask {
    height: 0 !important;
}

.md-datepicker-calendar-pane {
    margin-top: 30px !important;
}


/* -------------------------------------------------
	FINE
------------------------------------------------- */


/* -------------------------------------------------
	MESSAGE
------------------------------------------------- */

#messaggi {
    position: relative;
    top: 20%;
}

.message {
    font-family: 'Apex New';
    font-size: 30px;
    line-height: 20px;
    color: #0c58a7;
}

.subMessage {
    margin-top: 60px;
    font-size: 14px;
    line-height: 20px;
}

.subMessage a {
    font-weight: bold;
    text-decoration: underline;
    color: #0c58a7;
}

#messaggi img {
    margin-bottom: 25px;
}

#messaggi i {
    color: #0c58a7;
    font-size: 34px;
    margin-bottom: 25px;
}

.img-messaggi {
    margin-top: 70px;
}

.message-overlay {
    position: fixed;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    background: rgba(0, 0, 0, 0.7);
    transition: opacity 500ms;
    z-index: 3;
    display: block;
}

.message-overlay:target {
    visibility: visible;
}

.inside-message {
    padding: 20px;
    background: #fff;
    border-radius: 5px;
    position: relative;
    width: 100%;
    height: 10%;
    transition: all 1s ease-in-out;
    z-index: 5;
    margin: 10px 22px;
    opacity: unset;
}

.inside-message h2 {
    margin-top: 0;
    color: #333;
    font-family: Tahoma, Arial, sans-serif;
}

.inside-message .close {
    position: absolute;
    top: 20px;
    right: 30px;
    transition: all 200ms;
    font-size: 30px;
    font-weight: bold;
    text-decoration: none;
    color: #333;
}

.inside-message .close:hover {
    color: #54aedb;
}

.my-notify-info,
.my-notify-success,
.my-notify-warning,
.my-notify-error {
    padding: 10px;
    margin: 10px 0;
}

.message-success:before,
.message-error:before {
    font-family: FontAwesome;
    font-style: normal;
    font-weight: 400;
    speak: none;
    display: inline-block;
    text-decoration: inherit;
    width: 1em;
    margin-right: .2em;
    text-align: center;
    font-variant: normal;
    text-transform: none;
    line-height: 1em;
    margin-left: .2em;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale
}

.message-success {
    color: #4F8A10;
    background-color: #DFF2BF;
    margin: 10px 22px;
    font-size: 2em;
    vertical-align: middle;
}

.message-success:before {
    content: "\f00c";
}

.message-error {
    color: #D8000C;
    background-color: #FFD2D2;
    margin: 10px 22px;
    font-size: 2em;
    vertical-align: middle;
}

.message-error:before {
    content: '\f057';
}

@media screen and (max-width: 700px) {
    .inside-message {
        width: 70%;
    }
}


/* -------------------------------------------------
	FINE
------------------------------------------------- */

.data-not-found {
    font-weight: bold;
    color: gray;
}


/* Placeholder per la select options */

select:required:invalid {
    color: gray;
}

option[value=""][disabled] {
    display: none;
}

option {
    color: black;
}

.full button span {
    background-color: limegreen;
    border-radius: 32px;
    color: black;
}

.partially button span {
    background-color: orange;
    border-radius: 32px;
    color: black;
}