/* Kashupp UI foundations; existing application forms and routes remain authoritative. */
:root { --ku-ink:#172238; --ku-muted:#667389; --ku-accent:#6255db; --ku-mint:#7de2c2; }
body,body [class*="gilroy"],body [class*="OpenSans"],body [class*="poppins"] { font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important; }
body { -webkit-font-smoothing:antialiased; }
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible { outline:3px solid #9388ee!important; outline-offset:4px; }
.btn-primary { background:var(--ku-accent)!important;border-color:var(--ku-accent)!important;border-radius:12px!important;box-shadow:none!important; }
.btn-primary:hover { background:#5144c2!important; }
.input-form-control,.auth-module .form-control { border-radius:12px!important;border-color:#dce1eb!important; }
.navigation-wrap .px-240 { max-width:1240px;margin:auto;padding-left:32px!important;padding-right:32px!important; }
.navigation-wrap { box-shadow:0 1px 0 #e7eaf1!important; }
.navigation-wrap .navbar-brand img { width:166px;height:auto; }
.navigation-wrap .nav-link { font-size:14px!important; }
.navigation-wrap .navbar { min-height:82px; }
.navigation-wrap .btn { border-radius:10px!important; }
.ku-home { color:var(--ku-ink);background:#f8f9fc;padding-top:82px; }
.ku-wrap { width:min(1180px,calc(100% - 64px));margin:auto; }
.ku-hero { display:grid;grid-template-columns:1.15fr 1fr;gap:70px;align-items:center;padding:94px 0 88px; }
.ku-eyebrow { display:block;font-size:12px;letter-spacing:2px;font-weight:700;color:#6556cc; }
.ku-hero h1 { font-size:clamp(44px,5.2vw,72px);line-height:1.07;font-weight:750;letter-spacing:-3.5px;margin:24px 0; }
.ku-hero h1 em { color:#6255db;font-style:normal; }
.ku-hero-copy>p { max-width:470px;font-size:18px;line-height:1.75;color:var(--ku-muted); }
.ku-cta { display:flex;gap:12px;flex-wrap:wrap;margin:30px 0 24px; }
.ku-button { display:inline-flex;align-items:center;justify-content:center;gap:18px;padding:16px 23px;border-radius:12px;background:#6255db;color:#fff!important;font-weight:650;text-decoration:none!important; }
.ku-button:hover { background:#5144c2; }
.ku-button-secondary { background:#fff;color:#172238!important;border:1px solid #dce1eb; }
.ku-button-secondary:hover { background:#eceef5; }
.ku-hero-copy .ku-small { font-size:13px;line-height:1.6;color:#667389; }
.ku-preview-wrap { position:relative;padding:26px 12px 26px 32px;background:radial-gradient(ellipse at center,#dfdaf8,transparent 72%); }
.ku-preview { background:#fff;border:1px solid #e5e8f0;border-radius:28px;padding:28px;box-shadow:0 26px 65px #26355318;transform:rotate(-2deg); }
.ku-preview-top { display:flex;align-items:center;justify-content:space-between;margin-bottom:24px; }.ku-preview-top img { width:142px; }
.ku-pill { background:#eeebfc;color:#5042bb;padding:7px 11px;border-radius:100px;font-size:11px;font-weight:700;white-space:nowrap; }
.ku-balance { color:white;background:#172238;border-radius:20px;padding:26px; }.ku-balance small { color:#c6d0e0; }.ku-balance h2 { font-size:36px;letter-spacing:-1px;color:white;margin:16px 0 20px; }.ku-balance>div { display:flex;justify-content:space-between;font-size:12px;color:#b9f5e2; }
.ku-preview-actions { display:grid;grid-template-columns:repeat(3,1fr);gap:10px;padding:24px 0;text-align:center; }.ku-preview-actions span { display:block;background:#f0eefb;color:#6255db;width:42px;height:42px;line-height:42px;border-radius:14px;margin:0 auto 9px;font-size:23px; }.ku-preview-actions b { font-size:12px; }
.ku-preview-note { background:#f7f8fb;border-radius:14px;padding:18px; }.ku-preview-note strong { font-size:14px; }.ku-preview-note p { font-size:12px;line-height:1.6;margin:7px 0 0;color:#667389; }
.ku-preview-caption { font-size:11px;text-align:center;color:#667389;margin:22px 0 0; }
.ku-feature-section { background:#fff;border-top:1px solid #e9ecf3;padding:74px 0; }.ku-section-title { font-size:36px;line-height:1.2;font-weight:700;letter-spacing:-1px;margin:18px 0 16px; }.ku-section-lead { font-size:16px;color:#667389;max-width:590px;line-height:1.8; }
.ku-feature-grid { display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:36px; }.ku-feature { border:1px solid #e6e9f0;border-radius:20px;padding:28px; }.ku-feature-number { display:block;color:#6255db;font-size:12px;font-weight:750;margin-bottom:25px; }.ku-feature h3 { font-size:20px;font-weight:700;margin-bottom:12px; }.ku-feature p { font-size:14px;line-height:1.8;color:#667389;margin:0; }
.ku-vision { padding:76px 0 90px; }.ku-vision-top { display:flex;gap:30px;align-items:center;justify-content:space-between;margin-bottom:32px; }.ku-vision .ku-planned-grid { margin-top:24px; }
.ku-planned-grid { display:grid;grid-template-columns:repeat(2,1fr);gap:16px; }.ku-planned-grid>div { padding:22px;border:1px solid #e0e5ee;border-radius:16px;background:#fff; }.ku-planned-grid strong { font-size:15px;color:#172238; }.ku-planned-grid p { font-size:13px;color:#667389;line-height:1.7;margin:9px 0 0; }
.ku-demo-note { font-size:13px;line-height:1.6;color:#5645ab;background:#f0edfc;border:1px solid #e4dff8;border-radius:12px;padding:14px 18px;margin:0 0 24px; }
.footer-sec { background:#172238!important; }.footer-sec .px-240,.bottom-footer .px-240 { padding-left:max(32px,calc((100% - 1180px)/2))!important;padding-right:max(32px,calc((100% - 1180px)/2))!important; }.bottom-footer { background:#121c2f!important; }.footer-sec .footer-logo { width:180px;filter:brightness(0) invert(1); }.footer-sec p,.footer-sec a,.bottom-footer p { font-size:14px!important; }
.main-auth-div .bg-pattern { background:#172238!important; }.main-auth-div .bg-content { padding:55px!important; }.main-auth-div .logo-div .light-logo { filter:brightness(0) invert(1); }.main-auth-div .transaction-text h1 { color:#7de2c2!important;font-size:48px!important;letter-spacing:-2px; }.main-auth-div .transaction-text h2,.main-auth-div .transaction-text h3 { color:#eef2fa!important;font-size:22px!important; }.main-auth-div .transaction-image { opacity:.7; }.auth-section { background:#f8f9fc!important;min-height:100vh; }.auth-module { max-width:430px!important; }.auth-title { letter-spacing:-1px; }.auth-module-header { margin-bottom:30px; }
.my-container { background:#f6f7fb!important; }.side-navbar .bg-secondary { background:#172238!important; }.side-navbar .light-logo { filter:brightness(0) invert(1); }.side-navbar a { border-radius:12px!important; }.main-containt { padding:36px 44px!important;max-width:1350px;margin:auto; }.dash-wallet-box { border:1px solid #e4e7f0!important;border-radius:18px!important;box-shadow:0 4px 16px #17223805!important; }.dash-wallet-box .text-dark { font-size:30px;letter-spacing:-1px; }.dash-right-profile .yellow-btn { background:#fff!important;border:1px solid #dce1eb!important;border-radius:12px!important; }.ku-wallet-heading { display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:24px; }.ku-wallet-heading h1 { font-size:32px;letter-spacing:-1px;font-weight:700;color:#172238;margin:9px 0 0; }.ku-actions { display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin:28px 0 20px; }.ku-actions a { display:flex;flex-direction:column;background:#fff;border:1px solid #e4e7f0;border-radius:16px;padding:20px;color:#172238; }.ku-actions a:hover { border-color:#a99feb;background:#faf9ff; }.ku-actions span { font-size:25px;width:42px;height:42px;background:#efecfc;color:#6255db;border-radius:12px;text-align:center;margin-bottom:16px; }.ku-actions strong { font-size:14px; }.ku-actions small { font-size:11px;line-height:1.5;color:#667389;margin-top:7px; }.ku-roadmap { border:1px solid #e0e5ef;border-radius:16px;padding:18px 20px; }.ku-roadmap summary { font-size:13px;font-weight:650;color:#5f548b;cursor:pointer; }.ku-roadmap .ku-planned-grid { margin-top:20px; }
.dark .my-container,.dark .auth-section { background:#111827!important; }.dark .ku-wallet-heading h1,.dark .ku-actions a,.dark .ku-planned-grid strong { color:#edf2fa; }.dark .ku-actions a,.dark .ku-planned-grid>div { background:#1c273b;border-color:#34415a; }.dark .ku-demo-note { background:#282044;color:#d0c5ff;border-color:#493c6b; }.dark .ku-actions small,.dark .ku-planned-grid p { color:#acb8cc; }.dark .ku-home { background:#111827;color:#edf2fa; }.dark .ku-feature-section { background:#1c273b; }.dark .ku-feature { border-color:#34415a; }.dark .ku-hero-copy p,.dark .ku-section-lead,.dark .ku-feature p { color:#acb8cc; }
@media(min-width:992px) { .side-navbar { width:248px!important; }.active-cont { margin-left:248px!important; }.side-navbar .w-268 { width:200px!important; }html[dir="rtl"] .active-cont { margin-left:0!important;margin-right:248px!important; } }
@media(max-width:1100px) { .ku-hero { gap:30px; }.ku-hero h1 { font-size:54px; }.main-containt { padding:28px 26px!important; }.ku-actions { grid-template-columns:repeat(2,1fr); } }
@media(max-width:767px) { .ku-wrap { width:calc(100% - 36px); }.ku-hero { grid-template-columns:1fr;padding:55px 0 40px;gap:24px; }.ku-hero h1 { font-size:48px;letter-spacing:-2px; }.ku-hero-copy>p { font-size:16px; }.ku-preview-wrap { padding:16px; }.ku-preview { transform:none; }.ku-feature-grid,.ku-planned-grid { grid-template-columns:1fr; }.ku-section-title { font-size:29px; }.ku-feature-section,.ku-vision { padding:48px 0; }.ku-vision-top { display:block; }.ku-vision-top .ku-pill { display:inline-block;margin-top:16px; }.main-containt { padding:24px 18px!important; }.ku-wallet-heading h1 { font-size:25px; }.ku-wallet-heading { align-items:flex-start; }.ku-wallet-heading .ku-pill { font-size:9px; }.ku-actions { gap:10px; }.ku-actions a { padding:16px; }.auth-section { padding:28px 22px!important; }.navigation-wrap .px-240 { padding-left:18px!important;padding-right:18px!important; } }
@media(prefers-reduced-motion:reduce) { *,*::before,*::after { animation-duration:.01ms!important;transition-duration:.01ms!important;scroll-behavior:auto!important; } }

body p,body h1,body h2,body h3,body h4,body label,body input,body button,body a,body span { font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important; }
.main-auth-div .logo-div .light-logo,.side-navbar .light-logo,.footer-sec .footer-logo { filter:none!important; }
.navigation-wrap.start-header { padding:0!important; }

/* Uganda mobile money journey */
.ku-momo{max-width:860px;margin:0 auto;color:#17243a}.ku-momo h1{font-size:clamp(26px,4vw,36px);font-weight:750;margin:16px 0}.ku-momo h2{font-size:21px;font-weight:700;margin:26px 0 18px}.ku-momo-label{font-size:12px;font-weight:750;letter-spacing:1.4px;color:#5142ae}.ku-momo-notice{background:#edf8f4;border:1px solid #cce8dc;border-radius:16px;padding:18px 20px;margin:24px 0}.ku-momo-notice p{margin:7px 0 0}.ku-momo-form{max-width:650px}.ku-momo-form label,.ku-momo-form legend{display:block;font-weight:650;font-size:15px;margin:22px 0 10px}.ku-momo-form small{display:block;line-height:1.7;color:#566579;margin-top:8px}.ku-momo-networks{display:grid;grid-template-columns:1fr 1fr;gap:12px}.ku-momo-networks label{margin:0;padding:18px;border:2px solid #e1e4ef;border-radius:16px;cursor:pointer}.ku-momo-networks label:has(input:checked){border-color:#6351cd;background:#f4f1ff}.ku-momo-networks input{accent-color:#6351cd;margin-right:8px}.ku-momo-networks span{display:block;margin:6px 0 0 25px;font-weight:400;font-size:13px}.ku-momo-amount{display:flex;align-items:center;gap:12px}.ku-momo-summary{border:1px solid #e1e4ef;border-radius:18px;padding:8px 20px;margin:25px 0}.ku-momo-summary>div{display:flex;justify-content:space-between;gap:20px;padding:16px 0;border-bottom:1px solid #edf0f5}.ku-momo-summary>div:last-child{border:0}.ku-momo-summary strong{text-align:right;overflow-wrap:anywhere;max-width:65%}.ku-momo-outcomes{display:flex;gap:10px;flex-wrap:wrap}.ku-momo-history a{display:flex;justify-content:space-between;gap:20px;padding:18px 0;border-bottom:1px solid #edf0f5;color:inherit}.ku-momo-history small{display:block;margin-top:5px;color:#566579}.ku-momo-history a>span:last-child{text-align:right}@media(max-width:575px){.ku-momo{padding:24px!important}.ku-momo-summary{padding:6px 12px}.ku-momo-summary>div{font-size:13px}.ku-momo-outcomes .btn{width:100%}.ku-momo .btn{white-space:normal}.ku-momo-networks label{padding:15px 10px}}

.ku-momo-networks input[type=radio]{display:inline-block!important;position:static!important;width:16px!important;height:16px!important;opacity:1!important;visibility:visible!important;appearance:auto!important;clip:auto!important}.ku-momo-networks input:focus-visible{outline:3px solid #6351cd;outline-offset:4px}

.ku-momo select,#security-method{visibility:visible!important;appearance:auto!important}.ku-momo .form-control{min-height:48px;border:1px solid #cad1df;border-radius:10px;color:#17243a;background-color:#fff}.ku-momo select.form-control{padding-right:14px}
