/* Shared blue visual language for every page reached from the public menu. */
:root{--kr-primary:#0962f5;--kr-secondary:#247bff;--kr-accent:#51a4ff;--kr-ink:#071c44;--kr-muted:#506581;--kr-background:#f5f9ff;--kr-line:#dce7f6;--bs-primary:#0962f5;--bs-primary-rgb:9,98,245;--bs-link-color:#0962f5;--bs-link-hover-color:#034ed1}
.app-theme{font-family:Inter,"Segoe UI",Arial,sans-serif;color:var(--kr-ink);background-color:var(--kr-background);line-height:1.6}
.app-theme h1,.app-theme h2,.app-theme h3{font-weight:750;letter-spacing:-.035em}.app-theme a:hover{color:#034ed1}.app-theme :focus-visible{outline:3px solid #e9a62d;outline-offset:3px}
.app-header{background:white;border-bottom:1px solid #e3ecf9}.app-header .navbar{min-height:76px;padding:10px 0;border:0!important;background:white}.app-header .container{max-width:1320px;gap:24px}.app-brand{display:inline-flex;align-items:center;gap:10px;text-decoration:none;white-space:nowrap;color:#071c44!important;line-height:1.2}.app-brand .kr-icon{width:46px;height:46px;color:#0962f5;flex-shrink:0}.app-brand strong{display:block;font-size:26px;font-weight:800;letter-spacing:-1px}.app-brand strong span{color:#0962f5}.app-brand small{display:block;font-size:12px;letter-spacing:.1px;color:#415778}.app-header .nav-link{font-size:13px;padding:10px 12px!important;font-weight:550;color:#071c44;border-radius:7px;text-decoration:none}.app-header .nav-link:hover{background:#eef5ff;color:#0962f5}.app-header .nav-link.active{color:#0962f5;background:#eef5ff;box-shadow:inset 0 -2px #0962f5}.app-account-nav{display:flex;align-items:center;gap:10px;margin-left:14px}.app-account-nav .btn{font-size:12px;padding:9px 18px}.app-account-nav form{margin:0}.app-header .navbar-toggler{border:1px solid #dce7f6;border-radius:8px;font-size:16px;padding:8px}
.app-theme .btn{border-radius:8px;font-size:.9rem}.app-theme .btn-primary{--bs-btn-bg:#0962f5;--bs-btn-border-color:#0962f5;--bs-btn-hover-bg:#034ed1;--bs-btn-hover-border-color:#034ed1;--bs-btn-active-bg:#034ed1;--bs-btn-disabled-bg:#0962f5;--bs-btn-disabled-border-color:#0962f5;color:white;background:linear-gradient(115deg,#0057f2,#247bff);border-color:#0962f5;box-shadow:0 4px 12px #0962f51a}.app-theme .btn-primary:hover,.app-theme .btn-primary:active{background:#034ed1!important;border-color:#034ed1!important;color:white}.app-theme .btn-outline-primary{--bs-btn-color:#0962f5;--bs-btn-border-color:#0962f5;--bs-btn-hover-bg:#0962f5;--bs-btn-hover-color:#fff;color:#0962f5;border-color:#91baff}.app-theme .btn-outline-primary:hover{color:white;background:#0962f5}.app-theme .form-control,.app-theme .form-select{border-color:#ccdcef;background-color:white;border-radius:8px;color:#122e5d}.app-theme .form-control:focus,.app-theme .form-select:focus{border-color:#247bff;box-shadow:0 0 0 3px #0962f51a}.app-theme .form-check-input:checked{background-color:#0962f5;border-color:#0962f5}.app-theme .form-label{font-size:.85rem;color:#183762}.app-theme .text-primary{color:#0962f5!important}.app-theme .card,.app-theme .admin-panel,.app-theme .workspace-card{border-color:#dce7f6;border-radius:12px;box-shadow:0 4px 16px #06245106}.app-theme .table th{background:#eef5ff;color:#395575}.app-theme .table{--bs-table-striped-bg:#f5f9ff}.app-theme .admin-rail,.app-theme .workspace-sidebar{background:linear-gradient(160deg,#073b85,#061d50);border-color:#061d50}.app-theme .admin-review-banner,.app-theme .workspace-hero{background:linear-gradient(115deg,#073b85,#061d50)}.app-theme .admin-metric.featured{background:linear-gradient(115deg,#0057f2,#247bff)}.app-theme .admin-review-banner .btn{background:#0962f5;color:white}.app-theme .admin-review-banner .btn:hover{background:#247bff}.app-theme .sidebar-link:hover,.app-theme .admin-rail nav a:hover{color:white;background:#1d4b90}.app-theme .sidebar-link.active,.app-theme .admin-rail nav a.active{background:#164b98;color:white}.app-theme .admin-brand:hover,.app-theme .sidebar-back:hover{color:white}.app-theme .listing-card{box-shadow:0 5px 16px #061d5010}.app-theme .listing-slide-price{color:#073b85}.app-theme .listing-photo-caption,.app-theme .listing-slider-controls{background:#f4f8ff}.app-theme .property-search-page{color:var(--kr-ink)}.property-search-page .listing-page-sheet{background:rgba(6,29,80,.66);border-color:#adcdf36b}.property-search-page main>form{border-radius:14px}.app-theme .admin-kicker,.app-theme .eyebrow{color:#0962f5}.app-theme .admin-rail .admin-kicker,.app-theme .workspace-hero .eyebrow,.app-theme .admin-review-banner .admin-kicker{color:#9ecdff}
.app-footer{background:linear-gradient(115deg,#063b8b,#021b47);color:white;margin-top:auto;padding:30px 0 15px}.app-footer-grid{display:grid;grid-template-columns:1.6fr 1fr 1fr 1fr;gap:30px}.app-footer .app-brand{align-self:start;color:white!important;margin-top:6px}.app-footer .app-brand .kr-icon{color:white}.app-footer .app-brand strong span{color:#57a5ff}.app-footer .app-brand small{color:#c3dbff}.app-footer h2{font-size:14px;letter-spacing:0;margin-bottom:12px;color:white}.app-footer-grid>div>a{display:block;color:#dceaff;font-size:12px;margin:5px 0;text-decoration:none}.app-footer a:hover{color:#9ecdff}.app-footer-bottom{border-top:1px solid #73a6ee33;font-size:11px;color:#c8dbf6;margin-top:25px;padding-top:14px}
.account-page> .container{max-width:1120px}.account-page main{padding:48px 0!important}.account-shell{display:grid;grid-template-columns:.9fr 1.1fr;border:1px solid #dce7f6;border-radius:20px;overflow:hidden;box-shadow:0 16px 50px #061d5010;background:white;min-height:530px}.account-welcome{padding:48px 36px;color:white;background:linear-gradient(180deg,#062451e8,#073b85b8),url('/images/home-apartments-blue.png') center/cover;display:flex;flex-direction:column;justify-content:center}.account-welcome .eyebrow{color:#9ecdff!important;font-size:10px;letter-spacing:2px}.account-welcome h2{font-size:36px;line-height:1.15;margin:12px 0 20px}.account-welcome>p:not(.eyebrow){font-size:15px;line-height:1.8;color:#dceaff}.account-welcome a{color:white;text-decoration:none;margin-top:14px;font-weight:600}.account-welcome a:hover{color:#9ecdff}.account-content{padding:44px 42px;min-width:0}.account-content h1{font-size:30px;margin-bottom:24px}.account-content>p{color:#506581;font-size:14px}.account-content form{max-width:none!important}.account-content form>.btn-primary{width:100%;margin-top:8px}.account-content .form-control{min-height:46px}.account-content .small{color:#506581;line-height:1.7}.account-switch{border-top:1px solid #e3ecf9;padding-top:22px;margin:24px 0 0;font-size:13px}.account-content .validation-summary-valid{display:none}.account-content .validation-summary-errors{background:#fff3f3;border-left:3px solid #b42318;padding:12px;margin-bottom:16px;border-radius:6px;font-size:13px}.account-content .validation-summary-errors ul{margin-bottom:0;padding-left:20px}
@media(max-width:1199px){.app-header .container{gap:12px}.app-header .navbar-collapse{flex-basis:100%}.app-header .navbar-nav{padding-top:14px}.app-account-nav{margin:12px 0;flex-wrap:wrap}.app-header .nav-link{padding:10px!important}}
@media(max-width:767px){.account-page main{padding:24px 0!important}.account-shell{grid-template-columns:1fr;border-radius:14px;min-height:0}.account-welcome{padding:26px}.account-welcome h2{font-size:28px;margin:6px 0 12px}.account-welcome>p:not(.eyebrow){margin:0;font-size:13px}.account-welcome a{display:none}.account-content{padding:28px 24px}.account-content h1{font-size:27px}.app-footer-grid{grid-template-columns:1fr 1fr;gap:24px}.app-footer-grid>.app-brand{grid-column:1/-1}.app-brand strong{font-size:24px}.app-brand .kr-icon{width:40px;height:40px}.app-footer{padding-top:25px}.app-header .navbar{min-height:70px}}
@media(prefers-reduced-motion:reduce){.app-theme *{scroll-behavior:auto!important}}
/* Keep the requested Kenyan city imagery, with the same navy treatment as the hero. */
.app-theme.property-search-page{background:linear-gradient(110deg,rgba(6,29,80,.9),rgba(7,59,133,.58)),url('/images/kenya-five-cities-v2.png') center top/cover fixed no-repeat;background-color:#061d50}.app-theme.property-search-page main>h1,.app-theme.property-search-page main>p,.app-theme.property-search-page main>nav{text-shadow:none}.app-theme.property-search-page main>form{background:rgba(255,255,255,.96);border-color:#dce7f6}.app-theme.property-search-page .listing-page-sheet{background:rgba(238,245,255,.96);border-color:#dce7f6;color:#071c44;border-radius:14px}.app-theme.property-search-page .app-footer{margin-top:0}
/* Firm workspace: grouped navigation with consistent icon and label alignment. */
.firm-workspace> .container{max-width:1480px}.firm-workspace .workspace-shell{grid-template-columns:264px minmax(0,1fr);gap:32px}.app-theme .firm-navigation{background:#fff;color:#071c44;border:1px solid #dce7f6;border-radius:14px;padding:18px 12px;box-shadow:0 4px 18px #061d5006;position:sticky;top:18px;max-height:calc(100vh - 36px);overflow-y:auto;scrollbar-width:thin;scrollbar-color:#bfd3ef transparent}.firm-nav-identity{display:flex;align-items:flex-start;gap:11px;padding:0 8px 18px;border-bottom:1px solid #e7eef8}.firm-nav-identity>div{min-width:0}.firm-nav-mark{display:grid;place-items:center;width:37px;height:37px;flex:0 0 37px;border-radius:10px;background:#0962f5;color:white}.firm-nav-mark .kr-icon{width:22px;height:22px}.firm-navigation .sidebar-brand{display:block;padding:0;font-size:9px;letter-spacing:1.6px;color:#506581}.firm-navigation .sidebar-organization{padding:0;margin:6px 0;border:0;color:#071c44;font-size:13px;line-height:1.45;overflow-wrap:anywhere}.firm-nav-role{font-size:10px;color:#1554ae;background:#eef5ff;border-radius:4px;padding:2px 7px}.firm-navigation .sidebar-menu{padding-top:14px}.firm-navigation .firm-nav-group{margin:18px 0 0}.firm-navigation .firm-nav-group h2{font-size:9px;font-weight:750;letter-spacing:1.15px;text-transform:uppercase;color:#647891;margin:0 10px 7px;line-height:1.5}.firm-navigation .sidebar-link{display:flex;align-items:center;gap:10px;min-height:38px;padding:8px 10px;border-radius:7px;font-size:12px;font-weight:550;line-height:1.5;color:#314b70;text-decoration:none;margin-bottom:2px}.firm-navigation .sidebar-link>.kr-icon{height:18px;width:18px;flex:0 0 18px;color:#6485b2}.firm-navigation .sidebar-link>span{width:auto;color:inherit;font-size:inherit;text-align:left}.app-theme .firm-navigation .sidebar-link:hover{background:#f0f6ff;color:#0962f5}.app-theme .firm-navigation .sidebar-link.active{background:#eaf2ff;color:#0756d9;box-shadow:none;font-weight:700}.firm-navigation .sidebar-link.active>.kr-icon{color:#0962f5}.firm-navigation .sidebar-link>.firm-current-dot{width:6px;height:6px;border-radius:50%;background:#0962f5;flex:0 0 6px;margin-left:auto}.firm-navigation .sidebar-back{display:block;padding:15px 10px 0;margin-top:18px;border-color:#e7eef8;color:#506581;font-size:11px}.app-theme .firm-navigation .sidebar-back:hover{color:#0962f5}.firm-navigation .sidebar-toggle{color:#0962f5;font-size:12px;padding:12px 8px 0}.firm-navigation .sidebar-link:focus-visible,.firm-navigation .sidebar-back:focus-visible{outline:3px solid #e9a62d;outline-offset:1px}.firm-workspace .workspace-heading{margin-bottom:24px}.firm-workspace .workspace-subscription{border-left:1px solid #dce7f6;border-radius:12px}.firm-workspace .workspace-content h1{font-size:clamp(1.5rem,2.4vw,2.1rem)}
@media(min-width:992px){.firm-navigation nav.sidebar-menu.collapse{display:block}.firm-navigation .sidebar-toggle{display:none}}
@media(max-width:991px){.firm-workspace .workspace-shell{grid-template-columns:1fr;gap:20px}.app-theme .firm-navigation{position:static;max-height:none;overflow:visible;padding:16px}.firm-navigation .firm-nav-identity{padding-bottom:12px}.firm-navigation .sidebar-menu.collapse:not(.show){display:none}.firm-navigation .sidebar-menu.show{display:block}.firm-navigation .sidebar-toggle{display:flex}.firm-navigation .sidebar-brand{display:block}.firm-navigation .sidebar-link{min-height:42px;font-size:13px}.firm-navigation .sidebar-menu .firm-nav-group{border-top:1px solid #edf2fa;padding-top:14px}.firm-navigation .sidebar-organization{font-size:14px}}
.firm-navigation .sidebar-link.active::after{content:"";width:6px;height:6px;border-radius:50%;background:#0962f5;flex:0 0 6px;margin-left:auto}.firm-workspace .workspace-content{min-width:0}.firm-workspace .workspace-content>.row{margin-top:0}.firm-workspace .workspace-content>h1{margin-bottom:20px}

/* Unit availability calendar: horizontal scrolling preserves readable day labels on small screens. */
.stay-calendar-scroll{overflow-x:auto}.stay-calendar{display:grid;grid-template-columns:repeat(7,minmax(90px,1fr));min-width:665px;gap:6px}.stay-calendar-weekday{padding:.6rem;text-align:center;font-weight:700;color:#214d88}.stay-calendar-day{min-height:110px;padding:.65rem;border:1px solid #d6e6ff;border-radius:8px;background:#fff;display:flex;flex-direction:column;gap:.25rem;font-size:.8rem}.stay-calendar-day time{font-weight:750;font-size:1rem}.stay-calendar-day strong{font-size:.75rem}.calendar-confirmed,.calendar-completed{background:#e5efff;border-color:#97bdf7}.calendar-blocked{background:#fff4df;border-color:#e5bd70}.calendar-lease{background:#ececf7;border-color:#b8b9d4}.calendar-today{outline:2px solid #1264ed;outline-offset:1px}.calendar-pending{font-weight:650}.stay-calendar-pad{background:#f8fafc;border-radius:8px}
