/* General CSS */
.swpm-margin-10{
    margin: 10px;
}
.swpm-margin-top-10{
    margin-top: 10px;
}
.swpm-margin-bottom-10{
    margin-bottom: 10px;
}
.swpm-text-center{
    text-align: center;
}
.swpm-hidden{
    display: none;
}
.swpm-green-success-text{
    font-weight: bold;
    color: green;    
}
.swpm-red-error-text{
    font-weight: bold;
    color: red;
}
.swpm-box-shadow {
    box-shadow: 0 1px 1px rgba(0,0,0,.04);
}

.swpm-yellow-box{
    margin: 10px 0px;
    padding: 10px;
    background-color: #FFFFE0;
    border-color: #E6DB55;
    border-radius: 3px 3px 3px 3px;
    border-style: solid;
    border-width: 1px;
}

.swpm-red-box {
    margin: 10px 0px;
    padding: 10px;
    background-color: #FFEBE8;
    border-color: #CC0000;
    color: #333333;
    border-radius: 3px 3px 3px 3px;
    border-style: solid;
    border-width: 1px;
}

/* Wrap directly with this class (not to be used with a paragraph tag) */
.swpm-orange-box{
    margin: 10px 0px;
    padding: 15px 10px;
    color: #3F2502;
    background-color: #FFF6D5;
    border-color: #D1B655;
    border-radius: 3px 3px 3px 3px;
    border-style: solid;
    border-width: 1px;
}

/* Wrap directly with this class (not to be used with a paragraph tag) */
.swpm-white-box{
    margin: 10px 0px;
    padding: 15px 10px;
    color: #3c434a;
    background-color: #fff;
    border-color: #c3c4c7;
    border-width: 1px;
    border-radius: 3px 3px 3px 3px;
    border-style: solid;
}

/* Wrap directly with this class (not to be used with a paragraph tag) */
.swpm-grey-box{
    margin: 10px 0px;
    padding: 15px 10px;
    background-color: #DDDDDD;
    border-color: #CCCCCC;
    border-radius: 3px 3px 3px 3px;
    border-style: solid;
    border-width: 1px;
}

/* Wrap directly with this class (not to be used with a paragraph tag) */
.swpm-green-box {
    margin: 10px 0px;
    padding: 15px 10px;
    background-color: #CCF4D6;
    border-color: #059B53;
    color: #043B14;
    border-radius: 3px 3px 3px 3px;
    border-style: solid;
    border-width: 1px;
}

/* Wrap directly with this class (not to be used with a paragraph tag) */
.swpm-blue-box {
    margin: 10px 0px;
    padding: 15px 10px;
    background-color: #E7F4FE;
    border-color: #AACEE6;
    color: #1D263B;
    border-radius: 3px 3px 3px 3px;
    border-style: solid;
    border-width: 1px;
}

/* Default button style that we can use on registration, login, profile, password reset, form's submit button. */
.swpm-submit-btn-default-style {
    min-width: 150px;
    padding: 0.5em 1em;
    cursor: pointer;
}

/* Tooltip or note styles that we can toggle on/off */
.swpm-tooltip-notes-container{
    position: relative;
    display: inline-block;
}
.swpm-tooltip-notes-style-1 {
    display: none;
    margin-top: 5px;
    padding: 4px 7px;
    border-radius: 3px;
    background-color: #2d2d2d;
    color: #FFFFFF;
    z-index: 9999;
}

/* Block related */
.swpm-payment-block-ic-wrapper{
    padding: 16px;
}

/* Membership buy buttons */
.swpm-button-wrapper input[type="submit"]{
    width: auto !important;
    height: auto !important;
}
.swpm-button-wrapper input[type="image"]{
    width: auto !important;
    height: auto !important;    
}

/* Login form CSS */
.swpm-login-widget-form input,.swpm-login-widget-form checkbox{
    width: auto;
}
.swpm-username-input, .swpm-password-input{
    margin-bottom: 10px;
}
.swpm-login-submit{
    margin: 10px 0px;
}
.swpm-login-widget-action-msg{
    font-weight: bold;    
}
.swpm-logged-label{
    font-weight: bold;
}
.swpm-logged-subs-status-value{
    font-weight: bold;
    color:#CC0000;
}
.swpm-logged-subs-status-description{
    opacity: 0.8;
}
.swpm-edit-profile-link{
    font-weight: bold;
}
.swpm-logged-logout-link{
    font-weight: bold;
}
    
/* Password reset form CSS */
.swpm-pw-reset-submit-button{
    margin: 10px 0px;
}
.swpm-pw-reset-widget-form table{
    border: none;
}
.swpm-pw-reset-widget-form tr{
    border: none;
}
.swpm-pw-reset-widget-form td{
    border: none;
}
.swpm-reset-pw-error{
    font-weight: bold;
    color: red;
}
.swpm-reset-pw-success-box{
    margin: 10px 0px;
    padding: 15px 10px;
    background-color: #CCF4D6;
    border-color: #059B53;
    color: #043B14;
    border-radius: 3px 3px 3px 3px;
    border-style: solid;
    border-width: 1px;    
}

/* Registration form CSS */
.swpm-registration-widget-form td{
    min-width: 100px;
}
.swpm-registration-widget-form input[type="text"], .swpm-registration-widget-form input[type="password"]{
    width: 95%;
    position: relative;
}
#swpm-accept-terms{
    position: relative;/* needed for the validation message positioning */
}
#swpm-accept-pp{
    position: relative;/* needed for the validation message positioning */
}
.swpm_already_used_registration_complete_link_msg{
    font-weight: bold;
}
.swpm_registration_hidden_to_logged_users_msg{
    font-weight: bold;
}
.swpm_registration_complete_link_invalid_msg{
    font-weight: bold;
}
/* Edit profile form CSS */
.swpm-edit-profile-form input[type="text"], .swpm-edit-profile-form input[type="password"] {
    width: 95%;
    position: relative; /* needed for the validation message positioning */
}
.swpm-edit-profile-form select {
    width: 95%;
}
.swpm-edit-profile-submit-section{
    text-align: center;
}
.swpm-profile-account-delete-section{
    text-align: center;
}
.swpm-profile-account-delete-section a{
    color: red !important;
}
.swpm-profile-update-success{
    font-weight: bold;
    color: green;    
}
.swpm-profile-update-error{
    font-weight: bold;
    color: red;    
}

/* Misc CSS */
.swpm-restricted{
    font-weight: bold;
    color:red;
}
.swpm-select-box-left{
    margin: 0;
    padding-bottom: 5px;
}


/* PayPal or Other Transaction Related CSS */
.swpm-ppcp-txn-success-message{
    font-weight: bold;
    color: green;
    margin: 15px 0px;
}

/* Payments menu CSS */
.swpm_status_completed{
	padding: 7px 15px;
	width: auto;
	display: inline-block;
	text-align: center;
	min-width: 80px;
	border-radius: 4px;
	background-color: #b6e4b6;
}

.swpm_status_refunded{
	padding: 7px 15px;
	width: auto;
	display: inline-block;
	text-align: center;
	min-width: 80px;
	border-radius: 4px;
	background-color: #e4d4b6;
}

.swpm_status_general{
	padding: 7px 15px;
	width: auto;
	display: inline-block;
	text-align: center;
	min-width: 80px;
	border-radius: 4px;
	background-color: #dedede;
}

.swpm_status_subscription, .swpm_status_subscription_created{
	padding: 7px 15px;
	width: auto;
	display: inline-block;
	text-align: center;
	min-width: 80px;
	border-radius: 4px;
	background-color: #b6dee4;
}

.swpm_status_subscription_cancelled{
    padding: 7px 15px;
    width: auto;
    display: inline-block;
    text-align: center;
    min-width: 80px;
    border-radius: 4px;
    background-color: #e4d4b6;
}

.swpm-active-subs-table{
    width: 100%;
}

.swpm-active-subs-table td, .swpm-active-subs-table th{
    text-align: left;
    padding: 6px 10px;
}

.swpm-sub-attached-to-profile{
    font-style: italic;
    opacity: 0.7;
}

.swpm-cancel-subscription-button{
	padding: 8px 15px;
	text-align: center;
	border-radius: 4px;
    border: none; 
    outline: none; 
    margin: auto;
}

.swpm-cancel-subscription-button-active{
	background-color: #ff6a6a;
    cursor: pointer;
    color: white;
}

.swpm-cancel-subscription-button-active:hover{
    background-color: #d95e5e;
    transition: 200ms;
}

.swpm-active-subs-api-key-error-msg{
    color: #cc0000;
}

.swpm-cancel-subscription-form{
    margin-bottom: 0;
}

/* Media Queries */
@media (max-width: 420px) {
    /* Special CSS for small screen mobile devices */
    /* Set the password reset text field width to 100% for better theme compatibility. */
    .swpm-pw-reset-text {
        width: 100%;
    }
}

/* Reports menu css */
.swpm-stats-container{
    overflow: hidden;
}

.swpm-stats-container th{
    font-weight: bold;
}

.swpm-stats-container .table-column{
    /*width: 100%;*/
    order: 2;
}

.swpm-stats-container .char-column{
    /*width: 100%;*/
    order: 1;
}

.swpm_report_date_range_form {
    width: 100%;
    display: flex;
    align-items: end;
    margin-bottom: 10px;
    flex-wrap: wrap;
}
.swpm_report_date_range_form label{
    font-size: smaller;
}

.swpm_report_date_range_form div:last-child{
    margin-top: 5px;
}

.swpm_report_total_container{
    margin-top: 6px;
    /*padding-left: 8px;*/
}

@media (min-width: 768px) {
    .swpm-stats-container{
        display: flex;
        align-items: center;
    }

    .swpm-stats-container .table-column{
        min-width: 50%;
        order: 1;
    }

    .swpm-stats-container .table-column-80X{
        min-width: 80%;
    }

    .swpm-stats-container .char-column{
        /*width: 100%;*/
        flex-grow: 1;
        padding: 24px 10px;
        order: 2;
    }

    .swpm_report_date_range_form div:last-child{
        margin-top: 0px;
        margin-left: 4px;
    }
}
/* End of reports menu css */

/* Membership level add/edit css */
.swpm-validate-form .form-table td.error input{
    border-color: #cc0000;
}

.swpm-validate-form .form-table td.error ul{
    margin: 4px 0 0;
    color: #cc0000;
    list-style: none !important;
    font-size: smaller !important;
}

/* End of Membership level add/edit css */

/* End of reports menu css */


/* --- Integrations Related CSS --- */
.swpm-woocommerce-page-protection-msg{
    text-align: center;
}
