/* ================ USER DASHBOARD SUBSCRIPTIONS =============== */

.whm-login-message {
    background-color: #f8d7da;
    color: #721c24;
    border: 1px solid #f5c6cb;
    padding: 15px;
    margin: 100px 0 300px;
    border-radius: 5px;
    font-size: 16px;
    text-align: center;
    max-width: 500px;
}

.whm-user-dashboard select, .whm-user-dashboard input {
    border: 1px solid #d9dbdb;
    border-radius: 6px;
    background-color: #ffffff;
    width: 100%;
    max-width: 200px;
}

.whm-user-dashboard button, .whm-user-dashboard .button {
  appearance: none;
  background-color: #FAFBFC;
  border: 1px solid rgba(27, 31, 35, 0.15);
  border-radius: 6px;
  box-shadow: rgba(27, 31, 35, 0.04) 0 1px 0, rgba(255, 255, 255, 0.25) 0 1px 0 inset;
  box-sizing: border-box;
  color: #24292E;
  cursor: pointer;
  display: inline-block;
  font-size: 14px;
  font-weight: 400;
  line-height: 20px;
  list-style: none;
  padding: 6px 16px;
  position: relative;
  transition: background-color 0.2s cubic-bezier(0.3, 0, 0.5, 1);
  user-select: none;
  -webkit-user-select: none;
  touch-action: manipulation;
  vertical-align: middle;
  white-space: nowrap;
  word-wrap: break-word;
}

.whm-user-dashboard button:hover, .whm-user-dashboard .button:hover {
  background-color: #F3F4F6;
  text-decoration: none;
  transition-duration: 0.1s;
}

.whm-user-dashboard button:disabled, .whm-user-dashboard .button:disabled {
  background-color: #FAFBFC;
  border-color: rgba(27, 31, 35, 0.15);
  color: #959DA5;
  cursor: default;
}

.whm-user-dashboard button:active, .whm-user-dashboard .button:active {
  background-color: #EDEFF2;
  box-shadow: rgba(225, 228, 232, 0.2) 0 1px 0 inset;
  transition: none 0s;
}

.whm-user-dashboard button:focus, .whm-user-dashboard .button:focus {
  outline: 1px transparent;
}

.whm-user-dashboard button:before, .whm-user-dashboard .content .button:before {
  display: none;
}

.whm-user-dashboard button:-webkit-details-marker, .whm-user-dashboard .button:-webkit-details-marker {
  display: none;
}

.whm-user-dashboard .status {
    background: #f0f0f0;
    padding: 0.25rem 0.75rem;
    border-radius: 50px;
    font-size: 12px;
}

.whm-user-dashboard .status-active .status {
    background-color: #009879;
    color: #ffffff;
}

.whm-user-dashboard .status-completed .status {
    background-color: #009879;
    color: #ffffff;
}

.whm-user-dashboard .status-suspended .status {
    background-color: #d75e2e;
    color: #ffffff;
}

.whm-user-dashboard .status-pending .status {
    background-color: #d75e2e;
    color: #ffffff;
}

.whm-user-dashboard .status-on-hold .status {
    background-color: #d75e2e;
    color: #ffffff;
}

.whm-user-dashboard .status-cancelled .status {
    background-color: #df4343;
    color: #ffffff;
}

.whm-user-dashboard .status-online .status {
    background-color: #009879;
    color: #ffffff;
}

.whm-user-dashboard .status-offline .status {
    background-color: #df4343;
    color: #ffffff;
}

.whm-user-dashboard .status-wc-pending .status {
    background-color: #d75e2e;
    color: #ffffff;
}

.whm-user-dashboard .status-wc-on-hold .status {
    background-color: #d75e2e;
    color: #ffffff;
}

.whm-user-dashboard .status-wc-completed .status {
    background-color: #009879;
    color: #ffffff;
}

.whm-user-dashboard span.status-active {
    background-color: #009879 !important;
    color: #ffffff;
}

.whm-user-dashboard span.status-suspended {
    background-color: #d75e2e !important;
    color: #ffffff;
}

.whm-user-dashboard span.status-cancelled {
    background-color: #df4343 !important;
    color: #ffffff;
}

.whm-user-dashboard span.status-offline {
    background-color: #df4343 !important;
    color: #ffffff;
}

.whm-user-dashboard span.status-not-on-server {
    background-color: #df4343 !important;
    color: #ffffff;
}

.whm-user-dashboard span.status-api-down {
    background-color: #6a6a6a !important;
    color: #ffffff;
}

.whm-user-dashboard span.status-pending {
    background-color: #d75e2e !important;
    color: #ffffff;
}

.whm-user-dashboard span.status-on-hold {
    background-color: #d75e2e !important;
    color: #ffffff;
}

.whm-user-dashboard span.status-on.hold {
    background-color: #d75e2e !important;
    color: #ffffff;
    padding: 0.25rem 0.75rem;
    border-radius: 50px;
    font-size: 14px;
}

.whm-user-dashboard span.status-completed {
    background-color: #009879 !important;
    color: #ffffff;
}

#whm-user-subscriptions .filters-bar {
    display: flex;
    gap: 20px;
    margin-top: 20px;
    border-radius: 8px;
}

#whm-user-subscriptions .filters-bar .search {
    width: 250px;
    display: flex;
    gap: 5px;
    align-items: center;
}

#whm-user-subscriptions .filters-bar .filters {
    width: calc(100% - 270px);
    display: flex;
    gap: 5px;
    align-items: center;
    justify-content: flex-end;
}

#whm-user-subscriptions .subscriptions-header {
    display: flex;
    justify-content: space-between;
    padding: 10px 25px;
    margin-top: 10px;
    color: #ffffff;
    font-size: 14px;
    background-color: #113d6c;
    border-radius: 8px;
}

#whm-user-subscriptions .subscriptions-list .subscription {
    background-color: #ffffff;
    padding: 25px;
    box-shadow: 0px 5px 15px -2px rgb(0 0 0 / 15%);
    border-radius: 16px;
    margin-top: 20px;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

#whm-user-subscriptions .subscriptions-list .subscription label {
    height: unset;
    padding: unset;
    margin: unset;
}

#whm-user-subscriptions .subscription-info {
    width: 35%;
}

#whm-user-subscriptions .sub-product,
#whm-user-subscriptions .sub-cycle,
#whm-user-subscriptions .sub-status {
    width: 10%;
}

#whm-user-subscriptions .sub-date {
    width: 15%;
}

#whm-user-subscriptions .actions {
    width: 20%;
    display: flex;
    justify-content: flex-end;
    gap: 10px;
}

#whm-user-subscriptions .subscription .sub-user {
    display: flex;
    flex-direction: column;
    font-size: 20px;
    color: #000000;
}

#whm-user-subscriptions .subscription .sub-user span {
    font-size: 14px;
    color: #7c7c7c;
}

#whm-user-subscriptions .subscription .sub-user .renewal-tag {
    background-color: #ea5e2b;
    color: #ffffff;
    font-size: 11px;
    font-weight: 600;
    padding: 2px 4px;
    border-radius: 4px;
}


/* ================ USER DASHBOARD SINGLE SUBSCRIPTION =============== */


#whm-user-view-subscription .subscription-header {
  margin-bottom: 1.5rem;
}

#whm-user-view-subscription .header {
    display: flex;
    align-items: flex-start;
    flex-wrap: wrap;
    gap: 20px;
}

#whm-user-view-subscription .subscription-info {
    width: 100%;
}

#whm-user-view-subscription .action {
    width: 200px;
}

#whm-user-view-subscription .info {
    display: flex;
    align-items: center;
    gap: 10px;
    width: 100%;
}

#whm-user-view-subscription .subscription-info h2.sub-user-name {
  font-size: 24px !important;
  font-weight: 700;
  color: #000000;
  position: static;
  margin: 0;
}

#whm-user-view-subscription .error {
    background-color: #f5e0e0;
    padding: 2px 20px;
    border-radius: 8px;
    color: #b51515;
    margin-top: 10px;
}

#whm-user-view-subscription .notice {
    background-color: #f5e9e0;
    padding: 2px 20px;
    border-radius: 8px;
    color: #b55b15;
    margin-top: 10px;
}

#whm-user-view-subscription .info .sub-status {
    display: flex;
    gap: 10px;
    align-items: center;
}

#whm-user-view-subscription .sub-info {
    width: calc( 100% - 130px );
    display: flex;
    gap: 10px;
}

#whm-user-view-subscription .sub-actions {
    width: 130px;
}

#whm-user-view-subscription .meta {
    width: 100%;
}

#whm-user-view-subscription .subscription-header .sub-status {
  display: flex;
  align-items: center;
  gap: 1rem;
  margin-top: 0.5rem;
}

#whm-user-view-subscription .status-label {
    background: #f0f0f0;
    padding: 0.25rem 0.75rem;
    border-radius: 50px;
    font-size: 12px;
}

#whm-user-view-subscription .next-payment-date {
    font-size: 14px;
    color: #555;
}

#whm-user-view-subscription .meta .meta-list {
    list-style: none;
    display: flex;
    gap: 20px;
    background-color: #0c2d50;
    padding: 10px 20px;
    border-radius: 8px;
    margin-top: 10px;
    margin-bottom: 0px;
}

#whm-user-view-subscription .meta-item {
  display: flex;
  align-items: center;
  gap: 10px;
}

#whm-user-view-subscription .meta-item .meta-label {
    color: #ffffff;
    font-weight: 700;
}

#whm-user-view-subscription .meta-item .meta-value {
    color: rgb(255 255 255 / 80%);
}

#whm-user-view-subscription .account-credentials {
    position: relative;
    margin-bottom: 20px;
}

#whm-user-view-subscription h2 {
    font-size: 14px;
    font-weight: 400;
    color: #9b9b9b;
    margin: 20px 0px 10px;
    position: relative;
}

#whm-user-view-subscription .creds-list {
    display: grid;
    grid-template-columns: auto 1fr;
    gap: 7px 10px;
    align-items: center;
    margin-top: 20px;
}

#whm-user-view-subscription .creds-list dt {
  font-weight: bold;
}

#whm-user-view-subscription .creds-list .masked {
  letter-spacing: 0.15em;
}

#whm-user-view-subscription .renewal-history {
    margin-top: 0px;
}

#whm-user-view-subscription .renewals-list {
  list-style: none;
  padding: 0;
}

#whm-user-view-subscription .renewal-item {
    background-color: #ffffff;
    padding: 25px;
    box-shadow: 0px 5px 15px -2px rgb(0 0 0 / 15%);
    border-radius: 16px;
    margin-top: 20px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 20px;
}

#whm-user-view-subscription .renewal-item .button {
    width: 100px;
    text-align: center;
}

#whm-user-view-subscription .sub-actions {
  display: flex;
  flex-direction: column;
  gap: 1rem;
}

#whm-user-view-subscription .sub-actions .action-btn {
  width: 100%;
  padding: 0.75rem 1rem;
  text-align: center;
}

#whm-user-view-subscription .renewal-order {
    width: 20%;
    font-size: 20px;
    color: #000000;
}

#whm-user-view-subscription .renewal-status, #whm-user-view-subscription .renewal-label, #whm-user-view-subscription .renewal-product {
    width: 20%;
}

#whm-user-view-subscription .renewal-date {
    width: 20%;
}

#whm-user-view-subscription .actions {
    width: 10%;
    display: flex;
    justify-content: flex-end;
    gap: 10px;
}


/* ================ WOOCOMMERCE ORDER SUBSCRIPTION LINK =============== */
.wphk-subscription-link {
    margin: 20px 0 !important;
    padding: 15px !important;
    background: #f8f9fa !important;
    border: 1px solid #e9ecef !important;
    border-radius: 5px !important;
}

.wphk-subscription-link p {
    margin: 0 !important;
    font-size: 16px !important;
    color: #333 !important;
}

.wphk-subscription-link a {
    color: #007bff !important;
    text-decoration: none !important;
    font-weight: 500 !important;
    transition: color 0.2s ease !important;
}

.wphk-subscription-link a:hover {
    color: #0056b3 !important;
    text-decoration: underline !important;
}




@media only screen and (max-width: 480px) {
    #whm-user-subscriptions .subscriptions-header {
        display: none;
    }

    #whm-user-subscriptions .subscriptions-list .subscription {
        flex-wrap: wrap;
        row-gap: 5px;
    }

    #whm-user-subscriptions .subscription-info {
        width: calc(100% - 100px);
    }

    #whm-user-subscriptions .sub-status {
        width: 80px;
        text-align: end;
    }

    #whm-user-subscriptions .sub-product, #whm-user-subscriptions .sub-cycle, #whm-user-subscriptions .sub-date {
        width: 100%;
    }

    #whm-user-subscriptions .actions {
        width: 100%;
        justify-content: flex-start;
        margin-top: 10px;
    }
}