/* ADED / AdultDriversEdExpress — sitedata "aded", WebsiteID 1031.
   BrandTheme automatically loads this after member-v2.css in all V2 masters.
   Palette follows the public site: cyan, dark navy, white and orange. */

body.mv2.brand-aded:not(.brand-partner) {
    --mv2-bg:           #f4f9fc;
    --mv2-surface:      #ffffff;
    --mv2-ink:          #142c3e;
    --mv2-ink-2:        #486073;
    --mv2-ink-3:        #5d7180;
    --mv2-border:       #c9dee8;
    --mv2-border-soft:  #dceaf1;
    --mv2-primary:      #007ca8;
    --mv2-primary-dk:   #005f85;
    --mv2-primary-soft: #e9f7fc;
    --mv2-brand:        #c45100;
    --aded-navy:        #074379;
    --aded-cyan:        #0390cb;
    --aded-orange:      #ff7900;
    --aded-orange-dark:    #9e3f00;
    --aded-orange-soft:    #fff4e8;
    --mv2-radius:       10px;
    --mv2-radius-lg:    12px;
    --mv2-shadow:       0 1px 3px rgba(20, 44, 62, .06);
    --mv2-shadow-sm:    0 1px 2px rgba(20, 44, 62, .05);
}

/* Navy header matches the original ADED logo background. Partner themes stay independent. */
body.mv2.brand-aded:not(.brand-partner) .mv2-header {
    background: var(--aded-navy);
    border: 0;
    border-radius: 0;
    padding: 18px 6px;
    gap: 20px;
    box-shadow: 0 0 0 100vmax var(--aded-navy), 0 2px 0 100vmax var(--aded-cyan);
    clip-path: inset(-120px -100vmax -2px -100vmax);
    position: sticky;
    top: 0;
    z-index: 60;
    margin-bottom: 26px;
}
body.mv2.brand-aded:not(.brand-partner) .mv2-logo { max-width: 100%; }
body.mv2.brand-aded:not(.brand-partner) .mv2-logo img {
    width: 293px;
    max-width: 100%;
    height: auto;
    max-height: 70px;
    object-fit: contain;
}
body.mv2.brand-aded:not(.brand-partner) .mv2-nav { gap: 4px; }
body.mv2.brand-aded:not(.brand-partner) .mv2-nav a {
    color: #fff;
    font-weight: 500;
    border-radius: 6px;
    padding: 10px 12px;
}
body.mv2.brand-aded:not(.brand-partner) .mv2-nav a:hover {
    background: #105988;
    color: #fff;
}
body.mv2.brand-aded:not(.brand-partner) .mv2-nav li.active a,
body.mv2.brand-aded:not(.brand-partner) .mv2-nav a.active {
    background: #105988;
    color: #fff;
    box-shadow: inset 0 -3px var(--aded-orange);
    font-weight: 700;
}
body.mv2.brand-aded:not(.brand-partner) .mv2-header-right { gap: 16px; }
body.mv2.brand-aded:not(.brand-partner) .mv2-phone {
    color: #fff;
    font-size: 15px;
    padding-right: 16px;
    border-right: 1px solid rgba(255, 255, 255, .3);
}
body.mv2.brand-aded:not(.brand-partner) .mv2-signout { font-size: 14px; font-weight: 700; }
body.mv2.brand-aded:not(.brand-partner) .mv2-phone i,
body.mv2.brand-aded:not(.brand-partner) .mv2-phone .mv2-phone-ico { color: #fff; }

body.mv2.brand-aded:not(.brand-partner) .mv2-footer {
    background: var(--aded-navy);
    border-top: 3px solid var(--aded-orange);
    color: #fff;
    padding: 26px 24px;
}
body.mv2.brand-aded:not(.brand-partner) .mv2-footer a { color: #fff; text-decoration: underline; }

/* Shared cards and forms inherit the palette, including disabled/error states. */
body.mv2.brand-aded:not(.brand-partner) .mv2-tabs a { color: var(--mv2-ink-3); }
body.mv2.brand-aded:not(.brand-partner) .mv2-tabs a:hover,
body.mv2.brand-aded:not(.brand-partner) .mv2-tabs a.active { color: var(--mv2-primary-dk); }
body.mv2.brand-aded:not(.brand-partner) a:focus-visible,
body.mv2.brand-aded:not(.brand-partner) button:focus-visible,
body.mv2.brand-aded:not(.brand-partner) input[type="submit"]:focus-visible {
    outline: 2px solid var(--mv2-primary-dk);
    outline-offset: 3px;
}
body.mv2.brand-aded:not(.brand-partner) .mv2-header a:focus-visible,
body.mv2.brand-aded:not(.brand-partner) .mv2-header button:focus-visible {
    outline-color: #fff;
}
body.mv2.brand-aded:not(.brand-partner) .mv2-current-chapter { background: var(--mv2-primary-soft); }
body.mv2.brand-aded:not(.brand-partner) .mv2-ring .mv2-ring-bg { stroke: #dceaf1; }
body.mv2.brand-aded:not(.brand-partner) .mv2-progress-bar { background: #dceaf1; }
body.mv2.brand-aded:not(.brand-partner) .mv2-profile-cta a,
body.mv2.brand-aded:not(.brand-partner) .mv2-viewall {
    background: var(--mv2-primary-soft);
    border-color: var(--mv2-border-soft);
    color: var(--mv2-primary-dk);
    border-radius: var(--mv2-radius);
}
body.mv2.brand-aded:not(.brand-partner) .mv2-profile-cta a:hover,
body.mv2.brand-aded:not(.brand-partner) .mv2-viewall:hover { background: #d9eff8; }

body.mv2.brand-aded:not(.brand-partner) .mv2-upcard { border-top-color: var(--aded-cyan); }
body.mv2.brand-aded:not(.brand-partner) .mv2-upcard.accent { border-top-color: var(--aded-orange); }
body.mv2.brand-aded:not(.brand-partner) .mv2-upcard.accent .mv2-upcard-media { background: var(--aded-orange-soft); }
body.mv2.brand-aded:not(.brand-partner) .mv2-upcard.accent .mv2-upcard-foot a:not(.disabled):not(.aspNetDisabled):not([aria-disabled="true"]):hover {
    background: var(--aded-orange-dark);
}

/* Cyan referral accents echo the public navigation strip. */
body.mv2.brand-aded:not(.brand-partner) .mv2-refer {
    background: var(--mv2-primary);
    border-left: 4px solid var(--aded-orange);
}
body.mv2.brand-aded:not(.brand-partner) .mv2-refer .mv2-btn-white { color: var(--mv2-primary-dk); }
body.mv2.brand-aded:not(.brand-partner) .mv2-refer .mv2-btn-white:hover { background: var(--mv2-primary-soft); }
body.mv2.brand-aded:not(.brand-partner) .mv2-raf-step-ico {
    background: var(--mv2-primary);
    box-shadow: 0 6px 18px -6px rgba(0, 124, 168, .3);
}
body.mv2.brand-aded:not(.brand-partner) .mv2-raf-step-num {
    background: var(--mv2-brand);
    box-shadow: 0 4px 10px -3px rgba(196, 81, 0, .25);
}
body.mv2.brand-aded:not(.brand-partner) .mv2-raf-copy { background: var(--mv2-primary); }
body.mv2.brand-aded:not(.brand-partner) .mv2-raf-copy:hover { background: var(--mv2-primary-dk); }
body.mv2.brand-aded:not(.brand-partner) .mv2-raf-stat.is-perref {
    background: var(--mv2-primary-soft);
    border-color: var(--mv2-border);
}
body.mv2.brand-aded:not(.brand-partner) .mv2-raf-avatar { background: var(--mv2-primary); }
body.mv2.brand-aded:not(.brand-partner) .mv2-lesson-avatar {
    background: var(--mv2-primary-soft);
    color: var(--mv2-primary);
}
body.mv2.brand-aded:not(.brand-partner) .mv2-lesson-progress .current-progress { background: var(--mv2-primary); }
body.mv2.brand-aded:not(.brand-partner) .mv2-lesson-nav .next-lesson-btn:not(:disabled):not(.disabled):not(.aspNetDisabled):not([aria-disabled="true"]) {
    background: var(--mv2-primary);
}
body.mv2.brand-aded:not(.brand-partner) .mv2-lesson-nav .next-lesson-btn:not(:disabled):not(.disabled):not(.aspNetDisabled):not([aria-disabled="true"]):hover {
    background: var(--mv2-primary-dk);
}
body.mv2.brand-aded:not(.brand-partner) .mv2-ef-prepcard { background: var(--aded-orange-soft); }

/* Match the upload icon while retaining its existing loading behavior. */
body.mv2.brand-aded:not(.brand-partner) .mv2-upl-btn,
body.mv2.brand-aded:not(.brand-partner) .mv2-upl-btn:hover {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23007ca8' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 14.9A7 7 0 1 1 15.7 8h1.8a4.5 4.5 0 0 1 2.5 8.2'/%3E%3Cpolyline points='16 16 12 12 8 16'/%3E%3Cline x1='12' y1='12' x2='12' y2='21'/%3E%3C/svg%3E");
}
body.mv2.brand-aded:not(.brand-partner) .mv2-upl-btnwrap.mv2-btn-loading .mv2-upl-btn { background-image: none; }
body.mv2.brand-aded:not(.brand-partner) .mv2-upl-spinner {
    border-color: rgba(0, 124, 168, .3);
    border-top-color: var(--mv2-primary);
}

@media (max-width: 1240px) {
    body.mv2.brand-aded:not(.brand-partner) .mv2-header { flex-wrap: wrap; position: static; }
    body.mv2.brand-aded:not(.brand-partner) .mv2-header-right { margin-left: auto; }
    body.mv2.brand-aded:not(.brand-partner) .mv2-nav { order: 3; width: 100%; justify-content: center; margin: 6px 0 0; }
}
@media (max-width: 720px) {
    body.mv2.brand-aded:not(.brand-partner) .mv2-header { padding: 14px 6px; gap: 14px; }
    body.mv2.brand-aded:not(.brand-partner) .mv2-logo img { width: 270px; max-height: 65px; }
    body.mv2.brand-aded:not(.brand-partner) .mv2-phone { border-right: 0; padding-right: 0; font-size: 14px; }
    body.mv2.brand-aded:not(.brand-partner) .mv2-nav a { padding: 9px 11px; font-size: 14px; }
}
@media (max-width: 540px) {
    body.mv2.brand-aded:not(.brand-partner) .mv2-logo { width: 100%; justify-content: center; }
    body.mv2.brand-aded:not(.brand-partner) .mv2-header-right { width: 100%; justify-content: space-between; }
}
