/* Kisubi Hospital · airy, accessible sky-blue care theme. */
:root{--ink:#16364c;--deep:#176d96;--forest:#115b7d;--muted:#607b8d;--lime:#cbeefa;--lime-bright:#b9e6f6;--canvas:#f3f9fd;--line:#dce9f1;--white:#fff;--shadow:0 8px 28px rgba(31,91,125,.07);--radius:18px}
body{background:var(--canvas);color:var(--ink)}
.brand{gap:11px}.brand-symbol{width:38px;height:38px;border-radius:13px;background:#dff4fc;box-shadow:inset 0 0 0 1px #c4e8f5}.brand-symbol:before,.brand-symbol:after{background:#176d96}.brand-name{color:#153d57;font-size:24px;letter-spacing:-.06em}.brand-name i{color:#26a5cb}.brand-subline{display:block;margin-top:4px;color:#6591a7;font-size:7px;letter-spacing:.16em;font-weight:800;line-height:1}
.sidebar{background:#fbfdff;border-right-color:#e1edf3}.sidebar .brand{padding-bottom:29px}.workspace-select .icon{color:#2388ad}.nav-link.active{color:#155d7d;background:#e9f6fc}.nav-link.active:before{background:#1684ab}.nav-link:hover{background:#f0f8fc}.nav-label{color:#86a0af}.sidebar-help{background:linear-gradient(145deg,#edf8fd,#e1f3fa);border-color:#d7edf6}.sidebar-help>.icon{color:#17799d}.sidebar-foot{color:#8299a6}.workspace-select{background:#fbfdff}.workspace-select:hover{background:#f2f9fc}
.btn-primary{background:#176d96;box-shadow:0 5px 14px rgba(23,109,150,.14)}.btn-primary:hover{background:#105b7e}.btn-lime{background:#cdeefa;color:#124763}.btn-lime:hover{background:#b6e5f4}.btn-outline{border-color:#cfdfe8}.btn-outline:hover{background:#eff8fc}.btn-ghost:hover{background:#eef7fb}.icon-btn:focus-visible,.btn:focus-visible,a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #52b6da;outline-offset:3px}
.public-body{background:#f6fbfe}.public-nav{background:rgba(255,255,255,.94);border-bottom:1px solid #e5f0f5}.public-nav-links a:hover{color:#1277a1}.public-hero{padding-top:62px;padding-bottom:74px}.hero-eyebrow{color:#16779b}.hero-eyebrow i{background:#49afca;box-shadow:0 0 0 4px #e2f5fa}.public-hero h1 em{color:#1886ad}.hero-subtitle{color:#547081}.hero-image .image-frame{background:#e2f3fb;border-radius:125px 125px 25px 25px;box-shadow:0 22px 50px rgba(32,89,118,.13)}.hero-image:before{border-color:#bbdfed}.hero-image img{object-position:50% 20%}.hero-image-label{right:12px;bottom:12px;padding:7px 10px;border-radius:9px;background:rgba(12,44,61,.78);color:#fff;font-size:9px;letter-spacing:.01em;text-shadow:none}.hero-sticker{background:#d4f0fa;color:#13779b;box-shadow:0 0 0 7px #f3fafe}.hero-floating-card{border:1px solid #e5f0f5;background:#fff;box-shadow:0 9px 28px rgba(30,74,94,.11)}.hero-floating-card .circle-icon{background:#e4f5fb;color:#167aa1}.public-trust{border-color:#e1edf3;background:#fff}.public-trust span{color:#45677b}.public-service,.how-card,.public-doctor-card,.panel,.stat-card,.card,.notice{border-color:#e2edf3;box-shadow:var(--shadow)}.service-icon,.how-card .number,.empty-icon{background:#e9f7fc;color:#16779b}.eyebrow{color:#397e98}.public-section h2 em,.section-heading h2{color:#173e57}.public-cta{background:linear-gradient(125deg,#145b7e,#187fa6);border:1px solid #237e9f;box-shadow:0 18px 42px rgba(23,109,150,.13)}.public-cta h2,.public-cta p{color:#fff}.public-cta .btn-lime{background:#d2f2fb;color:#124763}.public-footer{border-top-color:#dfebf1;background:#f7fbfd}.auth-story{background:linear-gradient(155deg,#e6f6fc,#d6eff8)}.auth-story .eyebrow{color:#176b8e}.auth-form{background:#fff}.welcome-banner{background:linear-gradient(135deg,#176d96,#2d92b6)!important}.welcome-banner h2,.welcome-banner p{color:#fff}.kpi-card,.stat-card,.panel,.dashboard-panel{background:#fff}.badge.pending{background:#fff4dd;color:#946523}.flash.success{border-color:#cde7df;background:#edf9f4;color:#195c48}.field-label,.form-label{color:#325d73}
/* Short-poll updates: no push/SMS claims, just a private in-app indicator. */
.live-update-toast{position:fixed;right:22px;bottom:22px;z-index:1000;max-width:min(380px,calc(100vw - 30px));padding:13px 17px;border:1px solid #c7e6f2;border-radius:15px;background:#fff;color:#19455e;box-shadow:0 12px 35px rgba(21,74,101,.17);font-size:13px;animation:liveIn .22s ease both}.live-update-toast strong{display:block;color:#12698e;margin-bottom:2px}.live-update-toast a{color:#12698e;font-weight:700}.live-update-toast[hidden]{display:none}@keyframes liveIn{from{opacity:0;transform:translateY(9px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:760px){.public-hero{padding-top:38px;padding-bottom:48px}.hero-image .image-frame{border-radius:92px 92px 21px 21px}.hero-image-label{font-size:8px}.brand-name{font-size:22px}.live-update-toast{right:12px;bottom:12px}}
