/* MS Digital: navy, ocean blue and aqua, taken from the supplied identity. */
:root {
 --msd-navy:#0b2942; --msd-blue:#066d94; --msd-teal:#008a99; --msd-aqua:#39c5cf;
 --msd-ink:#17354a; --msd-muted:#607785; --msd-line:#dce8ed; --msd-paper:#f2f7f9;
 --primary:#066d94; --bs-primary:#066d94; --bs-primary-rgb:6,109,148;
 --ryzn-navy:#0b2942; --ryzn-blue:#066d94; --ryzn-teal:#008a99; --ryzn-mint:#39c5cf;
 --ryzn-surface:#f2f7f9; --ryzn-text:#17354a;
 --digi-indigo:#066d94; --digi-deep:#0b2942; --digi-purple:#008a99; --digi-pink:#39c5cf;
 --digi-text:#17354a; --digi-muted:#607785; --digi-surface:#f2f7f9;
 --ink:#17354a; --violet:#066d94; --pink:#008a99; --line:#dce8ed;
}
body {color:var(--msd-ink);background:var(--msd-paper)!important;font-family:'Segoe UI',Inter,Arial,sans-serif}
a {color:var(--msd-blue)}
a:focus-visible,button:focus-visible {outline:3px solid var(--msd-aqua);outline-offset:3px}
.btn-primary,.btn-info,.login-button,.renew-login-link,.profile-action-btn {background:var(--msd-blue)!important;border-color:var(--msd-blue)!important;color:#fff!important;box-shadow:0 4px 10px #0b294414!important;border-radius:9px!important}
.btn-primary:hover,.login-button:hover {background:#05536f!important}
.text-primary,.text-info {color:#066d94!important}
.bg-primary {background:#066d94!important}
.form-control:focus,.field input:focus {border-color:#008a99!important;box-shadow:0 0 0 3px #008a991a!important}
.form-control,.field input {border-color:var(--msd-line);border-radius:9px!important}
.page-item.active .page-link {background:#066d94;border-color:#066d94}
.card,.profile-panel,.profile-identity-card {border:1px solid var(--msd-line)!important;border-radius:12px!important;box-shadow:0 3px 12px #17354a08!important}
.card-header {background:#f7fafb!important;border-bottom:1px solid var(--msd-line)!important;color:var(--msd-ink)}
.card-header h6 {color:var(--msd-blue)!important}
.table thead th {background:#edf5f8;color:#284a5d;border-bottom:1px solid #cbdfe7}
.table td {border-color:#e7eff3}
.footer,.sticky-footer {background:white!important;border-top:1px solid var(--msd-line)}
.company-attribution {font-size:12px;color:var(--msd-muted);line-height:1.9}
/* Portal navigation: quiet navy, a thin aqua active rail and white masthead. */
#content-wrapper,#content,.content-wrapper {background:var(--msd-paper)!important}
#accordionSidebar.sidebar {background:#0b2942!important;background-image:none!important}
#accordionSidebar::before,#accordionSidebar::after {display:none!important}
#accordionSidebar .sidebar-brand {height:106px;min-height:106px;border-radius:0!important;background:#fff;box-shadow:none!important;border-bottom:4px solid #39c5cf;overflow:hidden}
#accordionSidebar .ryzn-sidebar-logo {width:230px;max-width:none;height:125px;object-fit:contain;flex-shrink:0}
#accordionSidebar .nav-item .nav-link {border-radius:7px!important;margin:3px 10px;padding:12px 13px!important;width:auto!important;color:#d6e7ef!important;box-shadow:none!important;background:transparent!important;border:0!important;font-size:12px}
#accordionSidebar .nav-item.active>.nav-link,#accordionSidebar .nav-item .nav-link:hover {background:#17445e!important;color:white!important;box-shadow:inset 3px 0 #39c5cf!important}
#accordionSidebar .nav-link i {color:#72c7d8!important;background:transparent!important;border:0!important;box-shadow:none!important}
#accordionSidebar .sidebar-heading {color:#91aebe!important;font-size:9px;letter-spacing:.12em;margin-top:12px}
#accordionSidebar .collapse-inner {background:#f1f8fa!important;border-radius:8px}
#accordionSidebar .collapse-item:hover {background:#dceff4!important;color:#066d94!important}
#accordionSidebar.toggled .ryzn-sidebar-logo {width:130px;height:85px}
.topbar,.navbar.bg-white {background:white!important;box-shadow:none!important;border-bottom:1px solid var(--msd-line)}
.digi-portal-title {color:var(--msd-ink)!important;font-size:13px}
.digi-portal-title-icon {background:#f2f8fa!important;border:0!important;box-shadow:none!important;border-radius:7px!important}
.digi-portal-title b {color:#00768b!important}
.msd-dashboard-welcome {display:flex;justify-content:space-between;align-items:center;gap:22px;padding:24px 28px;margin:0 0 24px;background:#fff;border:1px solid var(--msd-line);border-left:5px solid #008a99;border-radius:12px}
.msd-kicker {color:#00788c;font-size:10px;font-weight:800;letter-spacing:.16em;margin:0 0 8px}
.msd-dashboard-welcome h1 {font-size:clamp(23px,2.2vw,32px);font-weight:700;letter-spacing:-.035em;color:#0b2942;margin:0 0 8px}
.msd-dashboard-welcome p:last-child {margin:0;color:#607785;font-size:13px}
.msd-support-link {font-size:12px;color:#466474;white-space:nowrap;line-height:1.7}
.msd-support-link span {display:block;color:#066d94;font-size:16px;font-weight:700}
.application-summary-card {border-top:3px solid #008a99!important;border-left:1px solid var(--msd-line)!important}
.application-summary-title {color:#0b526d!important;letter-spacing:.06em;font-size:11px!important}
.application-summary-grid {padding-top:12px;border-top:1px solid #e6eff3}
.application-summary-grid .summary-success {color:#147452!important}
.application-summary-grid .summary-pending {color:#906300!important}
.application-summary-card .fa-2x {color:#7ca6b5!important;font-size:24px}
.msd-help-button {position:fixed;bottom:20px;right:22px;z-index:20;display:flex;align-items:center;gap:9px;background:#075e70;color:white!important;padding:12px 18px;border-radius:30px;font-size:13px;box-shadow:0 5px 18px #0b294426;text-decoration:none!important}
.msd-help-button i {font-size:21px}
/* Login: editorial brand panel and a simple, focused sign-in surface. */
.auth-shell {background:#edf5f8!important;grid-template-columns:minmax(0,1.1fr) minmax(380px,.9fr);padding:28px;gap:0;min-height:100vh}
.auth-shell::before,.auth-shell .orb {display:none!important}
.auth-shell .brand-panel {display:flex;background:#0b2942;border-radius:20px 0 0 20px;padding:clamp(32px,5vw,80px);overflow:hidden}
.brand-content {width:100%;max-width:600px}
.auth-shell .brand-mark {width:300px;height:110px;max-width:100%;border:0;border-radius:12px;background:#fff;box-shadow:none;animation:none;margin-bottom:42px;padding:0;overflow:hidden}
.auth-shell .brand-mark img {width:340px;max-width:none;height:175px;margin-top:-30px;object-fit:contain}
.auth-shell .eyebrow {color:#73dbe1;font-size:10px;letter-spacing:.18em}
.auth-shell .brand-content h1 {font-size:clamp(34px,4.3vw,62px);font-weight:650;line-height:1.12;letter-spacing:-.045em}
.auth-shell .brand-content h1 span {color:#54d0d7}
.auth-shell .brand-copy {font-size:15px;color:#c0d6e2;line-height:1.8;max-width:390px;margin:24px 0}
.auth-shell .feature-row {gap:7px}
.auth-shell .feature-pill {background:transparent;border:1px solid #31566c;color:#d4e8ef;border-radius:5px;font-size:10px;padding:7px 9px}
.msd-service-rail {margin-top:42px;border-top:1px solid #315166;padding-top:22px;display:grid;gap:14px}
.msd-service-rail div {display:flex;align-items:center;gap:14px;font-size:13px;color:#d2e4ed}
.msd-service-rail b {color:#5dd4dc;font-size:10px;font-weight:600}
.auth-shell .login-panel {background:white;border-radius:0 20px 20px 0;box-shadow:none;padding:48px clamp(24px,4vw,70px)}
.auth-shell .login-card {max-width:420px}
.auth-shell .login-card h2 {font-size:30px;color:#0b2942}
.auth-shell .login-subtitle {font-size:14px;margin-bottom:32px}
.auth-shell .field input {background:#f8fbfc;height:54px}
.auth-shell .login-button {margin-top:12px;min-height:52px;font-weight:600}
.auth-shell .card-footer {background:transparent;box-shadow:none;border-color:var(--msd-line);font-size:11px}
.auth-shell .public-links a {border-radius:5px;border-color:#dfebf0;color:#436577;font-size:11px}
.auth-shell .mobile-logo {width:270px;height:100px;box-shadow:none;padding:0;background:transparent;border-radius:0;overflow:hidden}
.auth-shell .mobile-logo img {width:300px;max-width:none;height:160px;margin-top:-25px}
/* Public plans, enquiries and account pages share the same brand palette. */
body:not(#page-top) .hero,body:not(#page-top) .head,.profile-hero {background:linear-gradient(115deg,#0b2942,#075c79)!important;color:#fff;border-radius:0 0 20px 20px}
body:not(#page-top) .top {border-bottom:1px solid #dce8ed;background:#fff}
body:not(#page-top) .top .brand img,body:not(#page-top) .top strong img {width:170px!important;height:76px!important;object-fit:contain}
body:not(#page-top) .hero img,body:not(#page-top) .head img {background:#fff;border-radius:9px;width:160px!important;height:80px!important;object-fit:contain}
body:not(#page-top) .button,body:not(#page-top) .cta {background:#066d94!important;color:white!important;border-color:#066d94!important;border-radius:8px;box-shadow:none!important}
body:not(#page-top) .button.outline {background:#fff!important;color:#066d94!important}
body:not(#page-top) .plan {border-color:#dce8ed!important;border-radius:12px!important;box-shadow:0 3px 12px #17354a08!important;border-top:3px solid #008a99!important}
body:not(#page-top) .plan h3,body:not(#page-top) .price,body:not(#page-top) .plan h2 {color:#075c79!important}
body:not(#page-top) .distributor-spot {background:#e3f3f5!important;border-color:#b5dde4!important;color:#17354a}
.ryzn-public-logo {width:230px!important;max-height:100px!important;object-fit:contain}
@media(max-width:1100px) {.msd-dashboard-welcome {padding:22px}.msd-support-link {display:none}}
@media(max-width:940px) {.auth-shell {grid-template-columns:1fr;padding:20px}.auth-shell .brand-panel {display:none}.auth-shell .login-panel {border-radius:15px;min-height:calc(100vh - 40px);padding:28px}.auth-shell .mobile-logo {display:grid;margin:0 auto 22px}}
@media(max-width:767px) {.msd-dashboard-welcome {padding:18px;margin-bottom:18px}.msd-dashboard-welcome h1 {font-size:23px}.msd-help-button {padding:10px 14px;bottom:12px;right:12px}.digi-portal-title {font-size:11px;gap:5px}.msd-dashboard-welcome p:last-child {font-size:12px}#accordionSidebar .nav-item .nav-link {margin:3px 5px;padding:10px 5px!important}#accordionSidebar .ryzn-sidebar-logo {width:130px;height:85px}}
@media(max-width:520px) {.auth-shell {padding:0}.auth-shell .login-panel {border-radius:0;min-height:100vh;padding:24px}.auth-shell .login-card h2 {font-size:27px}.auth-shell .card-footer {gap:8px}.auth-shell .public-links {gap:6px}}
@media(prefers-reduced-motion:reduce) {*,*::before,*::after {animation:none!important;transition:none!important;scroll-behavior:auto!important}}
@media print {.msd-help-button {display:none!important}}
body:not(#page-top) .brand b,body:not(#page-top) .normal-link,body:not(#page-top) .spot-tag,body:not(#page-top) .nav-link {color:#075c79!important}
body:not(#page-top) .spot-tag {background:#d7eef2!important}
#content .card a[href="wallet.php"],#content .card a[href="adduser.php"] {background:#066d94!important;border-color:#066d94!important;color:white!important;border-radius:7px;box-shadow:none!important}
/* Use the supplied monogram where the compact navigation cannot fit a wordmark. */
#accordionSidebar.toggled .ryzn-sidebar-logo {content:url('../img/ms-digital-favicon.png');width:54px;height:54px}
@media(max-width:767px) {
 #accordionSidebar .ryzn-sidebar-logo {content:url('../img/ms-digital-favicon.png');width:54px;height:54px}
 #accordionSidebar .sidebar-brand {padding:8px!important;min-height:80px;height:80px}
 .topbar {min-height:70px;height:auto}
}
@media(max-width:575px) {
 .topbar .digi-portal-title {display:none!important}
 .topbar .navbar-nav {margin-left:auto!important}
 .topbar .nav-item .nav-link {padding-left:7px!important;padding-right:7px!important}
 .topbar .topbar-divider {margin-left:4px!important;margin-right:4px!important}
}
