/* ==========================================================
   MASTER UNLOCK CODE - ACCOUNT V1
   Presentation overrides only.
   Existing WebForms controls, auth, Passkey/TOTP and registration
   postback contracts remain unchanged.
   ========================================================== */

:root {
    --muc-account-navy: #183249;
    --muc-account-navy-2: #21435d;
    --muc-account-blue: #155f91;
    --muc-account-orange: #ef8514;
    --muc-account-orange-soft: #f7a23f;
    --muc-account-text: #173d5c;
    --muc-account-muted: #698197;
    --muc-account-border: #d6e0e7;
    --muc-account-panel: #ffffff;
    --muc-account-page: #edf2f5;
}

body {
    background: var(--muc-account-page);
}

/* Remove the old extra header separator/marquee visual on Account.
   Shared Header owns the top of the page now. */
.headerbd-2,
.headerbd-3 {
    display: none !important;
}

/* Mobile breadcrumb should be subtle, not a second navigation bar. */
@media (max-width: 767px) {
    .navigation {
        margin-top: 12px;
        margin-bottom: 8px;
    }

    .navigation .breadcrumb {
        margin: 0;
        padding: 7px 10px;
        border: 1px solid #d7e0e6;
        border-radius: 8px;
        background: rgba(255,255,255,.72);
        font-size: 11px;
    }
}

/* Main right-side cards */
.gsm-site-sidebar-main-v95 .divTableR {
    margin-bottom: 16px;
    overflow: hidden;
    border: 1px solid var(--muc-account-border);
    border-radius: 12px;
    background: var(--muc-account-panel);
    box-shadow: 0 8px 24px rgba(24, 50, 73, .055);
}

.gsm-site-sidebar-main-v95 .divHeaderR.store-account-section-header {
    min-height: 64px;
    padding: 13px 18px 12px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    border: 0;
    border-top: 3px solid var(--muc-account-orange);
    background:
        linear-gradient(100deg, rgba(239,133,20,.055), transparent 42%),
        #f8fafb;
    color: var(--muc-account-text);
    line-height: 1.2;
}

.store-account-kicker {
    display: block;
    margin-bottom: 4px;
    color: var(--muc-account-orange);
    font-size: 10px;
    font-weight: 800;
    letter-spacing: 1.05px;
}

.store-account-section-title {
    display: block;
    color: var(--muc-account-text);
    font-size: 20px;
    font-weight: 700;
}

/* Login */
.secure-login-content {
    padding: 20px 20px 18px !important;
    border: 0 !important;
    background: #fff !important;
}

.store-account-login-intro {
    margin: 0 0 17px;
    padding: 12px 14px;
    display: flex;
    flex-direction: column;
    border: 1px solid #dce6ed;
    border-left: 3px solid var(--muc-account-orange);
    border-radius: 8px;
    background: #f8fbfd;
}

.store-account-login-intro strong {
    color: var(--muc-account-text);
    font-size: 13px;
}

.store-account-login-intro span {
    margin-top: 2px;
    color: var(--muc-account-muted);
    font-size: 10px;
    line-height: 1.5;
}

.secure-login-input {
    height: 38px !important;
    padding: 7px 10px !important;
    border-color: #c8d6e0 !important;
    border-radius: 6px !important;
    font-size: 12px !important;
}

.secure-login-input:focus {
    border-color: #5b91b5 !important;
    box-shadow: 0 0 0 3px rgba(39, 105, 151, .10) !important;
}

.secure-login-button {
    min-height: 38px !important;
    border-radius: 6px !important;
}

.secure-login-button-primary {
    border-color: #df7410 !important;
    background: linear-gradient(180deg, #f3972d, #e77b12) !important;
    box-shadow: 0 4px 11px rgba(214, 111, 12, .16) !important;
}

.secure-login-button-primary:hover,
.secure-login-button-primary:focus {
    background: linear-gradient(180deg, #f6a342, #e9841c) !important;
}

.secure-login-button-secondary {
    color: var(--muc-account-text) !important;
    border-color: #cbd8e2 !important;
    background: #f7fafc !important;
}

.secure-login-security-card.upgrade {
    border-color: #d9e4eb !important;
    border-top: 3px solid var(--muc-account-orange) !important;
    border-radius: 9px !important;
    background: #f8fafb !important;
    box-shadow: none !important;
}

/* Registration */
.create-account-modern .divContentR,
.create-account-content {
    border: 0 !important;
    background: #fff !important;
}

.create-account-shell {
    padding-top: 0 !important;
}

.create-account-intro {
    margin-bottom: 14px !important;
    padding: 16px 18px !important;
    border: 1px solid #dce5eb !important;
    border-radius: 9px !important;
    background:
        linear-gradient(110deg, rgba(239,133,20,.045), transparent 43%),
        #f8fafb !important;
}

.create-account-intro-title {
    color: var(--muc-account-text) !important;
    font-size: 17px !important;
}

.create-account-intro-text {
    max-width: 780px;
    color: var(--muc-account-muted) !important;
    line-height: 1.55 !important;
}

/* V1 is a single customer account type.
   Controls remain rendered for code-behind compatibility only. */
.store-account-legacy-type-controls {
    display: none !important;
}

.create-account-section {
    margin-top: 12px !important;
    padding: 17px 18px !important;
    border: 1px solid #dce5eb !important;
    border-radius: 9px !important;
    background: #fff !important;
    box-shadow: none !important;
}

.create-account-section-head {
    margin-bottom: 13px !important;
    padding-bottom: 10px !important;
    border-bottom: 1px solid #e5ecf1 !important;
}

.create-account-section-kicker {
    color: var(--muc-account-orange) !important;
    letter-spacing: .9px !important;
}

.create-account-section-title {
    color: var(--muc-account-text) !important;
}

.create-account-input {
    min-height: 37px !important;
    border-color: #cbd8e1 !important;
    border-radius: 6px !important;
    background: #fff !important;
}

.create-account-input:focus {
    border-color: #5d91b4 !important;
    box-shadow: 0 0 0 3px rgba(39,105,151,.09) !important;
}

.create-account-submit {
    min-height: 40px !important;
    border-radius: 6px !important;
    border-color: #df7410 !important;
    background: linear-gradient(180deg, #f3972d, #e77b12) !important;
    box-shadow: 0 4px 11px rgba(214,111,12,.16) !important;
}

.create-account-submit:hover,
.create-account-submit:focus {
    background: linear-gradient(180deg, #f6a342, #e9841c) !important;
}

.create-account-error {
    border-radius: 7px !important;
}

/* Give the page a little breathing room without changing the site's 1170 layout. */
form#frm > .container {
    padding-top: 14px;
}

/* Tablet/mobile: no sidebar; cards become clean full-width panels. */
@media (max-width: 767px) {
    form#frm > .container {
        padding-top: 2px;
    }

    .gsm-site-sidebar-main-v95 {
        padding-left: 7px !important;
        padding-right: 7px !important;
    }

    .gsm-site-sidebar-main-v95 .divTableR {
        margin-bottom: 13px;
        border-radius: 10px;
    }

    .gsm-site-sidebar-main-v95 .divHeaderR.store-account-section-header {
        min-height: 57px;
        padding: 10px 14px;
    }

    .store-account-section-title {
        font-size: 18px;
    }

    .secure-login-content {
        padding: 15px 13px 14px !important;
    }

    .store-account-login-intro {
        margin-bottom: 13px;
        padding: 10px 11px;
    }

    .secure-login-main {
        padding-right: 0 !important;
    }

    .secure-login-label {
        line-height: 1.35 !important;
        margin-bottom: 4px;
        text-align: left !important;
        font-weight: 700 !important;
        color: var(--muc-account-text) !important;
    }

    .secure-login-field-row {
        margin-bottom: 10px !important;
    }

    .secure-login-recovery {
        margin-top: 2px !important;
        margin-bottom: 10px !important;
    }

    .secure-login-button {
        min-height: 42px !important;
        font-size: 12px !important;
    }

    .create-account-content {
        padding: 12px !important;
    }

    .create-account-intro {
        padding: 13px !important;
    }

    .create-account-section {
        padding: 14px 13px !important;
    }
}

/* Very small phones */
@media (max-width: 420px) {
    .store-account-section-title {
        font-size: 17px;
    }

    .create-account-intro-title {
        font-size: 15px !important;
    }

    .create-account-section-title {
        font-size: 14px !important;
    }
}


/* ==========================================================
   ACCOUNT V1.1 POLISH
   Compact login + lighter protection panel.
   ========================================================== */

/* Reduce vertical bulk while keeping the same interaction flow. */
.secure-login-content {
    padding-top: 16px !important;
    padding-bottom: 14px !important;
}

.store-account-login-intro {
    margin-bottom: 13px;
    padding: 10px 13px;
}

.secure-login-field-row {
    margin-bottom: 8px !important;
}

.secure-login-recovery {
    margin-top: -1px !important;
    margin-bottom: 7px !important;
}

.secure-login-action-row {
    margin-top: 5px !important;
    margin-bottom: 5px !important;
}

.secure-login-auth-note {
    margin-top: 6px !important;
    line-height: 1.38 !important;
}

.secure-login-passkey-row {
    margin-top: 7px !important;
}

.passkey-login-divider {
    margin: 8px 0 !important;
}

.secure-login-passkey-head {
    margin-bottom: 6px !important;
}

.secure-login-passkey-recommend {
    margin-top: 6px !important;
    line-height: 1.4 !important;
}

/* Login remains the primary action, but no longer dominates the whole card. */
.secure-login-button {
    min-height: 36px !important;
}

.secure-login-button-primary {
    border-color: #d97a19 !important;
    background: linear-gradient(180deg, #f09a37 0%, #e6841f 100%) !important;
    box-shadow: 0 3px 9px rgba(203, 105, 12, .13) !important;
}

.secure-login-button-primary:hover,
.secure-login-button-primary:focus {
    border-color: #d57918 !important;
    background: linear-gradient(180deg, #f3a348 0%, #e98b28 100%) !important;
}

/* Account Protection is supporting content, not a competing primary card. */
#secureLoginSecurityColumn {
    padding-left: 10px !important;
}

.secure-login-security-card.upgrade {
    padding: 14px 14px 13px !important;
    border-top-width: 2px !important;
    background: #f9fbfc !important;
}

.secure-login-security-icon {
    width: 31px !important;
    height: 31px !important;
    margin-bottom: 8px !important;
}

.secure-login-security-title {
    margin-bottom: 9px !important;
    font-size: 13px !important;
}

.secure-login-security-line {
    margin-bottom: 10px !important;
}

.secure-login-security-line strong {
    font-size: 11px !important;
}

.secure-login-security-line small {
    margin-top: 1px !important;
    font-size: 9px !important;
    line-height: 1.35 !important;
}

.secure-login-security-rank {
    margin-right: 4px !important;
    padding: 2px 6px !important;
    font-size: 7px !important;
}

.secure-login-security-manage {
    margin-top: 5px !important;
    padding-top: 7px !important;
    color: #7b8e9d !important;
    font-size: 8.5px !important;
    line-height: 1.35 !important;
}

.secure-login-security-trust {
    margin-top: 10px;
    padding-top: 9px;
    display: flex;
    align-items: flex-start;
    gap: 7px;
    border-top: 1px solid #e3e9ee;
    color: #58748a;
}

.secure-login-security-trust > .glyphicon {
    margin-top: 1px;
    color: #2b789f;
    font-size: 12px;
}

.secure-login-security-trust > span:last-child {
    display: flex;
    flex-direction: column;
}

.secure-login-security-trust strong {
    color: #365b75;
    font-size: 9px;
    font-weight: 700;
}

.secure-login-security-trust small {
    margin-top: 1px;
    color: #7b8e9d;
    font-size: 8px;
    line-height: 1.35;
}

/* A little less dead space before registration begins. */
.secure-login-content + * {
    margin-top: 0 !important;
}

@media (max-width: 1199px) and (min-width: 992px) {
    #secureLoginSecurityColumn {
        padding-left: 7px !important;
    }

    .secure-login-security-card.upgrade {
        padding-left: 11px !important;
        padding-right: 11px !important;
    }
}

@media (max-width: 767px) {
    .secure-login-content {
        padding-top: 13px !important;
        padding-bottom: 12px !important;
    }

    .store-account-login-intro {
        margin-bottom: 11px;
    }

    .secure-login-button {
        min-height: 40px !important;
    }
}


/* ==========================================================
   ACCOUNT V1.2 FINAL POLISH
   Small visual refinements from desktop + mobile review.
   ========================================================== */

/* Desktop: make the intro helper slightly lighter/shorter. */
@media (min-width: 768px) {
    .store-account-login-intro {
        padding-top: 9px;
        padding-bottom: 9px;
        margin-bottom: 11px;
    }

    .secure-login-content {
        padding-top: 14px !important;
        padding-bottom: 13px !important;
    }
}

/* Mobile breadcrumb: context only, not a second navigation bar. */
@media (max-width: 767px) {
    .navigation {
        margin-top: 9px !important;
        margin-bottom: 7px !important;
    }

    .navigation .breadcrumb {
        min-height: 0 !important;
        padding: 5px 8px !important;
        border-radius: 7px !important;
        font-size: 11px !important;
        line-height: 17px !important;
    }

    .navigation .breadcrumb > li,
    .navigation .breadcrumb > li > a,
    .navigation .breadcrumb .glyphicon {
        font-size: 11px !important;
        line-height: 17px !important;
    }

    .navigation .breadcrumb .glyphicon {
        top: 1px !important;
        margin-right: 2px !important;
    }

    /* Slightly tighter account card heading on phones. */
    .gsm-site-sidebar-main-v95 .divHeaderR.store-account-section-header {
        min-height: 53px !important;
        padding-top: 9px !important;
        padding-bottom: 9px !important;
    }

    .store-account-kicker {
        margin-bottom: 3px !important;
        font-size: 9px !important;
    }

    .store-account-section-title {
        font-size: 17px !important;
        line-height: 1.2 !important;
    }

    .store-account-login-intro {
        padding: 9px 10px !important;
        margin-bottom: 10px !important;
    }

    .store-account-login-intro strong {
        font-size: 12px !important;
    }

    .store-account-login-intro span {
        font-size: 9.5px !important;
    }

    /* Keep Login clearly primary without becoming visually oversized. */
    .secure-login-button {
        min-height: 38px !important;
        height: 38px !important;
        line-height: 36px !important;
        border-radius: 6px !important;
    }

    .secure-login-button-primary {
        background: linear-gradient(180deg, #ee9635 0%, #df7d1d 100%) !important;
        box-shadow: 0 2px 7px rgba(203, 105, 12, .11) !important;
    }

    .secure-login-button-primary:hover,
    .secure-login-button-primary:focus {
        background: linear-gradient(180deg, #f0a047 0%, #e38629 100%) !important;
    }

    .secure-login-auth-note {
        margin-top: 5px !important;
        font-size: 9px !important;
        line-height: 1.35 !important;
    }

    .passkey-login-divider {
        margin-top: 7px !important;
        margin-bottom: 7px !important;
    }

    .secure-login-passkey-recommend {
        margin-top: 5px !important;
        font-size: 9px !important;
        line-height: 1.38 !important;
    }

    /* Account page should never create a sideways scrollbar from legacy rules. */
    form#frm,
    form#frm > .container,
    .gsm-site-sidebar-layout-v95,
    .gsm-site-sidebar-main-v95 {
        max-width: 100% !important;
    }
}
