/* Bundle ya Recruit Depot - imejengwa kiotomatiki na static_bundle.py; hariri faili za chanzo, si hii. */

/* ===== tange-fonts.css ===== */
@font-face{font-family:"Sora";font-style:normal;font-weight:400;font-display:swap;src:url(../fonts/f-779e9507b3.woff2) format("woff2")}
@font-face{font-family:"Public Sans";font-style:normal;font-weight:400;font-display:swap;src:url(../fonts/f-fd76a14fbb.woff2) format("woff2")}
@font-face{font-family:"Public Sans";font-style:normal;font-weight:500;font-display:swap;src:url(../fonts/f-fd76a14fbb.woff2) format("woff2")}
@font-face{font-family:"Public Sans";font-style:normal;font-weight:600;font-display:swap;src:url(../fonts/f-fd76a14fbb.woff2) format("woff2")}
@font-face{font-family:"Public Sans";font-style:normal;font-weight:700;font-display:swap;src:url(../fonts/f-fd76a14fbb.woff2) format("woff2")}
@font-face{font-family:"Sora";font-style:normal;font-weight:500;font-display:swap;src:url(../fonts/f-779e9507b3.woff2) format("woff2")}
@font-face{font-family:"Sora";font-style:normal;font-weight:600;font-display:swap;src:url(../fonts/f-779e9507b3.woff2) format("woff2")}
@font-face{font-family:"Sora";font-style:normal;font-weight:700;font-display:swap;src:url(../fonts/f-779e9507b3.woff2) format("woff2")}
@font-face{font-family:"Sora";font-style:normal;font-weight:800;font-display:swap;src:url(../fonts/f-779e9507b3.woff2) format("woff2")}

/* ===== app.css ===== */
:root{--navy:#102b46;--deep:#0a2035;--gold:#b88d3e;--ink:#23364a;--muted:#66798b;--line:#dde5ec;--bg:#f1f5f8}*{box-sizing:border-box}body{margin:0;font:14px 'Segoe UI',Arial,sans-serif;color:var(--ink);background:var(--bg)}a{color:#195b83;text-decoration:none}a:hover{text-decoration:underline}button,.button{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:1px solid var(--navy);background:var(--navy);color:white;padding:11px 18px;border-radius:6px;font:600 14px 'Segoe UI',sans-serif;cursor:pointer;text-decoration:none}.secondary{background:white;color:var(--navy);border-color:#bdcbd8}.quiet{background:transparent;color:#c4d3df;border-color:#375069;padding:7px 15px}button:hover,.button:hover{filter:brightness(1.12);text-decoration:none}aside{position:fixed;width:238px;height:100vh;background:var(--deep);color:white;padding:32px 22px;display:flex;flex-direction:column;z-index:5}.brand{display:flex;gap:12px;align-items:center;font-size:18px;letter-spacing:1px;font-weight:700}.brand small{display:block;font-size:10px;color:#b0c4d5;letter-spacing:2px;margin-top:5px}.brand-mark{border:1px solid var(--gold);color:#e8c781;font-size:18px;padding:12px 8px;border-radius:4px}.nav-caption{font-size:10px;letter-spacing:1.5px;color:#90a8bd;margin:36px 8px 12px}nav a{display:block;color:#c7d6e2;padding:12px 10px;border-radius:5px;margin:2px 0;font-size:13px}nav a.active,nav a:hover{color:white;background:#1c3b55;text-decoration:none;border-left:3px solid var(--gold)}.aside-bottom{margin-top:auto;padding:16px 8px 0;border-top:1px solid #2d4358}.aside-bottom small{display:block;color:#a5b9cb;margin:5px 0 14px}main{margin-left:238px}.topbar{padding:20px 38px;background:white;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;font-size:12px}.local{color:#427c69}.content{max-width:1500px;margin:auto;padding:35px 38px}.eyebrow{font-size:11px;letter-spacing:1.9px;color:#8f6b2b;font-weight:700;margin-bottom:10px}h1{font-size:32px;letter-spacing:-.8px;margin:0 0 10px;font-weight:650}h2{font-size:18px;margin:0 0 20px}p{line-height:1.65;color:var(--muted);margin:10px 0 20px}.page-heading{display:flex;justify-content:space-between;gap:20px;align-items:center;margin-bottom:28px}.page-heading p{margin-bottom:0}.register-banner{background:var(--navy);border-left:5px solid var(--gold);color:white;border-radius:8px;padding:30px 36px;display:flex;justify-content:space-between;gap:40px;margin-bottom:22px}.register-banner span{font-size:11px;letter-spacing:2px;color:#b6c9d9}.register-banner strong{display:block;font:700 68px Georgia,serif;margin-top:12px}.register-banner p{color:#c4d3df;margin:5px 0}.banner-note{max-width:325px;align-self:center}.banner-note b{font-size:20px}.banner-note a{color:#f1cf87;font-weight:600;display:block;margin-top:18px}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.stats article{background:white;padding:24px;border:1px solid var(--line);border-radius:8px}.stats small{color:var(--muted)}.stats strong{display:block;font-size:34px;margin:10px 0}.stats span{font-size:11px;color:var(--muted)}.notice{display:flex;justify-content:space-between;align-items:center;background:#fff7e7;border:1px solid #e9d8ad;border-radius:7px;padding:20px 24px;margin:24px 0}.notice p{margin:6px 0 0;font-size:12px}.two-col{display:grid;grid-template-columns:1.2fr 1fr;gap:24px;margin-top:24px}.panel{background:white;border:1px solid var(--line);border-radius:8px;padding:26px;margin-bottom:24px}.two-col .panel{margin-bottom:0}.bar-row{display:flex;gap:15px;align-items:center;margin:22px 0}.bar-row span{width:100px;font-size:12px}.bar-row div{flex:1;height:7px;background:#eef2f5;border-radius:10px}.bar-row i{display:block;height:100%;background:var(--gold);border-radius:10px}.bar-row b{min-width:35px;text-align:right}.activity{padding:15px 0;border-bottom:1px solid var(--line);display:flex;flex-direction:column;gap:7px;font-size:13px}.activity small,.muted{color:var(--muted)}.alert{padding:18px 22px;background:#e8f3ed;border:1px solid #b9d9c7;margin-bottom:22px;border-radius:6px}.alert.error{background:#fff0ee;border-color:#e8bcb6;color:#943d36}.alert p{margin-bottom:0}.actions{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.filters{display:flex;gap:12px;margin-bottom:20px}.filters input{flex:1}.filters select{width:190px}input,select{width:100%;padding:11px 12px;border:1px solid #cbd7e0;border-radius:5px;background:white;color:var(--ink);font:14px 'Segoe UI',sans-serif}input[type=checkbox]{width:16px;height:16px;accent-color:var(--navy)}label{display:block;font-size:12px;font-weight:600;margin-bottom:18px}label input,label select{margin-top:8px}input:focus,select:focus,button:focus-visible,a:focus-visible{outline:3px solid #d5ad62;outline-offset:2px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 18px}.check{display:flex;align-items:center;gap:10px}.check input{margin:0}.table-wrap{overflow:auto;border:1px solid var(--line);border-radius:7px;background:white}table{border-collapse:collapse;width:100%;font-size:12px;white-space:nowrap}th{background:#e9eff4;color:#5e7284;font-size:10px;letter-spacing:1px;text-align:left;padding:16px}td{padding:17px 16px;border-bottom:1px solid #e8edf2}td small{display:block;font-size:10px;color:var(--muted);margin-top:6px}td b{font-size:12px}tbody tr:hover{background:#f6f9fb}.badge{display:inline-block;padding:5px 9px;border-radius:4px;background:#eef1f5;color:#647689;font-size:10px;font-weight:600}.badge.issued{background:#e0f0e9;color:#347760}code{font:12px Consolas,monospace}.pagination,.print-actions{display:flex;gap:20px;align-items:center;margin-top:20px}.print-actions input{max-width:390px}.pagination{justify-content:flex-end}.portrait-box{width:180px;height:225px;background:#e9eff4;margin:0 auto 24px;display:flex;align-items:center;justify-content:center;color:var(--muted);border:1px dashed #aabccd}.portrait-box img{width:100%;height:100%;object-fit:cover}video{width:100%;max-height:300px;background:#101c28}#crop-canvas{max-width:100%;cursor:move;touch-action:none}.next-link{display:block;margin-top:20px}details{border-top:1px solid var(--line);padding:16px 0}summary{cursor:pointer;font-weight:600;font-size:12px}pre{white-space:pre-wrap;overflow-wrap:anywhere;background:#f3f6f8;padding:18px;font-size:11px;line-height:1.6;max-height:420px;overflow:auto}.enroll{grid-template-columns:1.6fr 1fr}.candidate-links{display:flex;flex-wrap:wrap;gap:12px;font-size:12px;margin:0 0 20px}.match{display:grid;grid-template-columns:1fr 1.3fr;gap:30px}.match-title{border-left:3px solid var(--gold);padding-left:20px}.match h2{margin-top:15px}.auth-main{margin-left:0}.auth-box{max-width:440px;margin:6vh auto;background:white;padding:40px;border:1px solid var(--line);border-top:5px solid var(--gold);border-radius:8px}.auth-box h1{font-size:28px}.auth-box button{width:100%;margin-bottom:24px}.auth-box small{color:var(--muted)}.card-grid{display:flex;gap:8mm;flex-wrap:wrap;margin:20px 0 30px}.id-card{width:85.6mm;height:53.98mm;background:white;border:1px solid #bbc8d4;overflow:hidden;color:#102b46;flex:none;font-family:Arial,sans-serif;transform:translate(var(--ox),var(--oy)) scale(var(--scale));transform-origin:top left}.card-head{height:11mm;background:var(--navy);color:white;display:flex;align-items:center;gap:2mm;padding:1mm 3mm;border-bottom:1.2mm solid var(--gold)}.card-head img,.logo-placeholder{width:8mm;height:8mm;object-fit:contain;background:white}.logo-placeholder{font-size:5px;color:#617387;display:flex;align-items:center}.card-head strong{font-size:9px;display:block}.card-head span{font-size:7px;letter-spacing:.5px;display:block;margin-top:3px}.card-body{display:flex;gap:3mm;padding:3mm;height:37.5mm}.card-photo{width:23mm;height:30mm;background:#edf2f6;flex:none;display:flex;align-items:center;justify-content:center;font-size:8px}.card-photo img{width:100%;height:100%;object-fit:cover}.card-fields{flex:1;display:grid;grid-template-columns:1fr 1fr;gap:1mm 2mm;min-width:0}.card-fields div:nth-child(1),.card-fields div:nth-child(2),.card-fields div:nth-child(3){grid-column:1 / 3}.card-fields span{font-size:5.5px;display:block;color:#637386}.card-fields b{font-size:7.5px;display:block;overflow-wrap:anywhere;margin-top:.4mm;line-height:1.1}.id-card footer{background:#edf1f4;padding:1mm 3mm;font-size:6px;display:flex;justify-content:space-between}.ruler{width:100mm;border:1px solid black;border-left:2px solid black;border-right:2px solid black;text-align:center;height:8mm;margin:20px 0}@media(max-width:1100px){aside{width:205px;padding:25px 15px}main{margin-left:205px}.content{padding:28px 24px}.two-col{grid-template-columns:1fr}.stats{gap:12px}.stats article{padding:18px}.page-heading{align-items:flex-start}.match{grid-template-columns:1fr}}@media(max-width:700px){aside{position:relative;width:100%;height:auto;padding:18px}.brand{margin-bottom:10px}nav{display:flex;flex-wrap:wrap}nav a{padding:8px}.nav-caption,.aside-bottom{display:none}main{margin-left:0}.topbar{padding:15px}.content{padding:22px 15px}h1{font-size:25px}.page-heading,.register-banner,.notice{flex-direction:column;align-items:flex-start}.stats{grid-template-columns:1fr}.filters{flex-wrap:wrap}.filters input{flex-basis:100%}.form-grid{grid-template-columns:1fr}.print-actions{flex-wrap:wrap}.register-banner strong{font-size:54px}.auth-box{padding:28px}.card-grid{overflow:auto;display:block}.id-card{margin-bottom:20px}}@media print{@page{size:A4;margin:10mm}body{background:white}aside,.topbar,.no-print,nav{display:none!important}main{margin:0}.content{padding:0;max-width:none}.card-grid{display:grid;grid-template-columns:85.6mm 85.6mm;gap:5mm;margin:0}.id-card{break-inside:avoid;print-color-adjust:exact;-webkit-print-color-adjust:exact}.content>.eyebrow,.content>h1{display:none}.panel{display:none}.panel:has(.ruler){display:block;border:none;padding:0}.panel:has(.ruler)>*:not(.ruler){display:none}.two-col{display:block}button{display:none!important}}

.portrait-box{background-color:white;background-image:conic-gradient(#e4eaf0 25%,transparent 0 50%,#e4eaf0 0 75%,transparent 0);background-size:16px 16px}.card-photo{background:white}


/* ===== tange-theme.css ===== */
:root{
  /* brand */
  --navy:#0B1F5B; --navy-900:#071640; --navy-800:#0A1C4E; --navy-700:#12306E; --navy-600:#1B4088;
  --blue:#0E70C4; --blue-700:#0B5EA6; --blue-100:#E3F0FB;
  --yellow:#F3E04E; --yellow-600:#C9B31F; --yellow-100:#FCF7D6;
  --mint:#CDEBC9; --mint-700:#2F6B33;
  --green:#2F7A3E; --green-100:#E4F4E3;
  --gold:#D4AF37; --red:#D64545; --red-100:#FCE9E9; --amber:#E08A15; --amber-100:#FDF1DC;
  --purple:#6B4FA8; --purple-100:#EEE9F8; --teal:#12796F; --teal-100:#DEF1EF;

  /* neutrals */
  --bg:#F4F6FA; --surface:#FFFFFF; --surface-2:#FAFBFD;
  --line:#E7EBF2; --line-2:#D6DEEA;
  --ink:#0F1B34; --ink-2:#3C4A63; --muted:#67758F; --muted-2:#8D9AB0;

  /* shape */
  --r-xl:24px; --r-lg:18px; --r-md:12px; --r-sm:9px;
  --sh-1:0 1px 2px rgba(11,31,91,.05);
  --sh-2:0 1px 2px rgba(11,31,91,.04), 0 8px 22px rgba(11,31,91,.06);
  --sh-3:0 18px 50px rgba(7,22,64,.22);

  --sidebar-w:252px; --topbar-h:66px;
  --f-body:"Public Sans","Segoe UI",system-ui,-apple-system,Roboto,Arial,sans-serif;
  --f-head:"Sora","Public Sans","Segoe UI",system-ui,sans-serif;
  --mono:ui-monospace,"SFMono-Regular","Consolas",Menlo,monospace;
}
.ph{
  position:relative;overflow:hidden;
  background:linear-gradient(140deg,#17315F 0%,#0B2A55 55%,#0E4E9E 100%);
  color:#fff;padding:22px 24px 20px
}
.ph::after{content:"";position:absolute;left:0;right:0;bottom:0;height:4px;
  background:linear-gradient(90deg,var(--yellow),#F3D36B,var(--yellow))}
.ph-glow{position:absolute;top:-64px;right:-44px;width:230px;height:230px;border-radius:50%;
  background:radial-gradient(circle,rgba(243,224,78,.16) 0,transparent 68%);pointer-events:none}
.ph-x{
  position:absolute;top:16px;right:18px;z-index:2;width:34px;height:34px;border-radius:11px;
  background:rgba(255,255,255,.14);border:0;color:#fff;font-size:14px;cursor:pointer;transition:.15s
}
.ph-x:hover{background:rgba(255,255,255,.3)}
.ph-top{position:relative;z-index:1;display:flex;gap:16px;align-items:center;padding-right:44px}
.ph-av{
  width:74px;height:74px;border-radius:50%;flex:0 0 auto;display:grid;place-items:center;
  background:linear-gradient(135deg,var(--yellow),#E3C41F);color:#0B2A55;
  font-family:var(--f-head);font-size:24px;font-weight:800;letter-spacing:1px;
  border:3px solid rgba(255,255,255,.32);box-shadow:0 8px 22px rgba(0,0,0,.34)
}
.ph-id{min-width:0;flex:1}
.ph-id h3{margin:0;font-size:21px;font-weight:800;line-height:1.2;letter-spacing:-.02em}
.ph-rank{font-size:12.5px;color:#C6D5EE;margin-top:4px;line-height:1.45}
.ph-rank b{color:var(--yellow);font-weight:700}
.ph-rank i{font-style:normal;color:#9FB4D9}
.ph-badges{display:flex;gap:7px;flex-wrap:wrap;margin-top:9px}
.pb-gold,.pb-soft{
  display:inline-flex;align-items:center;padding:3px 10px;border-radius:99px;
  font-size:10.6px;font-weight:700;letter-spacing:.4px
}
.pb-gold{background:rgba(243,224,78,.2);color:var(--yellow);border:1px solid rgba(243,224,78,.34)}
.pb-soft{background:rgba(255,255,255,.12);color:#DCE7FA;border:1px solid rgba(255,255,255,.18)}
.ph-stats{
  position:relative;z-index:1;display:grid;gap:1px;margin-top:18px;
  grid-template-columns:repeat(auto-fit,minmax(96px,1fr));
  background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.13);
  border-radius:var(--r-md);overflow:hidden
}
.phs{background:rgba(11,31,91,.42);padding:9px 11px}
.phs span{display:block;font-size:9.6px;color:#9FB4D9;text-transform:uppercase;letter-spacing:.7px}
.phs b{display:block;font-size:13.5px;font-weight:700;margin-top:2px;
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ph-meter{position:relative;z-index:1;margin-top:14px}
.phm-l{display:flex;justify-content:space-between;font-size:10.6px;color:#C6D5EE;
  text-transform:uppercase;letter-spacing:.7px;font-weight:700;margin-bottom:5px}
.phm-l b{color:#fff;font-size:12px}
.phm-bar{height:7px;border-radius:99px;background:rgba(255,255,255,.15);overflow:hidden}
.phm-bar i{display:block;height:100%;border-radius:99px;transition:width .5s cubic-bezier(.22,.85,.3,1)}
.phm-s{font-size:10.8px;color:#9FB4D9;margin-top:6px;line-height:1.5}

/* tabs za wasifu — mwonekano wa ukanda wa navy wenye mstari wa dhahabu */
.tabs{display:flex;gap:2px;padding:0 10px;overflow-x:auto;position:sticky;top:0;z-index:3;
  background:linear-gradient(135deg,#17315F 0%,#0B2A55 60%,#2F5F9F 100%);
  box-shadow:0 4px 16px rgba(0,33,71,.26);scrollbar-width:thin}
.tab{padding:13px 13px;font-size:12.2px;cursor:pointer;border-bottom:3px solid transparent;
  color:rgba(255,255,255,.56);white-space:nowrap;font-weight:700;display:flex;align-items:center;gap:6px;
  transition:color .18s, background .18s, border-color .18s}
.tab:hover{color:#fff;background:rgba(255,255,255,.07)}
.tab.active{border-bottom-color:var(--yellow);color:#fff;background:rgba(243,224,78,.17);font-weight:800}
.tab:focus-visible{outline:2px solid var(--yellow);outline-offset:-3px}
.tab .tb-n{background:rgba(255,255,255,.2);color:rgba(255,255,255,.9);font-size:9.6px;
  padding:2px 6px;border-radius:99px;font-weight:800;min-width:18px;text-align:center}
.tab.active .tb-n{background:var(--yellow);color:#0B2A55}
.tab-body{padding:18px 20px}

.pkpi-grid{display:grid;gap:9px;grid-template-columns:repeat(auto-fit,minmax(118px,1fr));margin-bottom:14px}
.pkpi{
  background:#fff;border:1px solid #E8EEF5;border-left:3px solid #DBE3EF;border-radius:10px;
  padding:10px 12px;transition:border-color .15s, box-shadow .15s
}
.pkpi:hover{border-left-color:var(--yellow);box-shadow:0 2px 10px rgba(0,33,71,.08)}
.pk-l{display:block;font-size:9.8px;font-weight:800;color:var(--muted-2);text-transform:uppercase;letter-spacing:.5px}
.pk-v{display:block;font-family:var(--f-head);font-size:22px;font-weight:800;color:var(--navy);
  line-height:1.1;margin:4px 0 2px;font-variant-numeric:tabular-nums}
.pk-s{display:block;font-size:10.6px;color:var(--muted);line-height:1.4}/* Application adaptation of the supplied TANGE MTWARA design. */
body{font-family:var(--f-body);font-size:14px;line-height:1.55;background:var(--bg);color:var(--ink)}h1,h2,h3,h4,.brand,.stats strong,.register-banner strong{font-family:var(--f-head)}button,.button,input,select{font-family:var(--f-body)}h1{font-size:26px;letter-spacing:-.02em}h2{font-size:17px}.topbar{position:fixed;inset:0 0 auto;height:66px;z-index:60;background:rgba(255,255,255,.96);border-bottom:1px solid var(--line);display:flex;align-items:center;gap:14px;padding:0 18px;backdrop-filter:blur(10px)}.brand{display:flex;gap:11px;align-items:center;color:var(--navy);letter-spacing:0;min-width:205px}.brand:hover{text-decoration:none}.brand .logo{width:40px;height:40px;border-radius:12px;border:1px solid var(--line);background:white;display:grid;place-items:center}.brand .logo img{width:34px;height:34px}.brand .t1{display:block;font-size:16px;font-weight:750;line-height:1.15}.brand .t2{display:block;font:10.5px var(--f-body);color:var(--muted);letter-spacing:.7px;margin-top:3px}.grow{flex:1}.gsearch{position:relative;flex:0 1 400px;margin:0}.gsearch input{border-radius:99px;background:var(--surface-2);border:1.5px solid var(--line);padding:10px 14px 10px 38px;font-size:13px}.gsearch .ic{position:absolute;left:14px;top:5px;font-size:23px;color:var(--muted-2)}.tb-state{display:flex;align-items:center;gap:7px;border:1.5px solid var(--line);border-radius:99px;font-size:11px;padding:7px 12px;color:var(--muted);white-space:nowrap}.tb-state .d{height:8px;width:8px;background:var(--green);border-radius:50%}.userchip{display:flex;gap:8px;align-items:center;background:var(--surface-2);border:1.5px solid var(--line);border-radius:12px;padding:6px 9px;color:var(--ink);text-align:left}.userchip .un{display:block;font-size:12px;color:var(--navy)}.userchip .ur{display:block;font-size:10.5px;color:var(--muted)}.avatar{width:32px;height:32px;flex:none;border-radius:50%;display:grid;place-items:center;background:var(--navy);color:white;font:700 12px var(--f-head)}aside.sidebar{position:fixed;top:66px;bottom:0;left:0;width:252px;height:auto;background:var(--navy);color:#B9C8E4;padding:14px 12px 26px;z-index:50;overflow-y:auto}.nav-caption{color:#6F86B4;font-size:10px;letter-spacing:1.3px;margin:16px 12px 7px}nav a{display:flex;gap:11px;align-items:center;border-radius:12px;color:#B9C8E4;margin:2px 0;padding:10px 12px;font-size:13px;font-weight:500}nav a.active,nav a:hover{border-left:0}nav a.active{background:var(--blue);color:white;font-weight:650;box-shadow:0 6px 16px rgba(14,112,196,.35)}nav a:hover{background:rgba(255,255,255,.08)}nav a.active:hover{background:var(--blue)}.ni{width:20px;text-align:center;font-size:18px}.sb-card{margin:16px 4px 0;padding:14px;border:1px solid rgba(255,255,255,.12);background:linear-gradient(150deg,rgba(255,255,255,.11),rgba(255,255,255,.04));border-radius:18px}.sb-card b{font:700 12.5px var(--f-head);color:white}.sb-card p{font-size:11px;color:#9FB4D9;margin:6px 0 12px}.mini-btn{display:block;text-align:center;padding:8px;border-radius:9px;background:var(--yellow);color:#3B3200;font-weight:700;font-size:12px}.aside-bottom{font-size:10px;color:#6F86B4;padding:16px 10px;border-top:0}.aside-bottom small{font-size:10px;color:#6F86B4}main{margin-left:252px;min-height:100vh;padding-top:66px}.content{padding:24px 22px 60px;max-width:1600px}.eyebrow{color:var(--blue);font-size:10.8px;letter-spacing:.9px}.page-heading{margin-bottom:20px}.page-heading p{font-size:13px}.panel,.stats article{border-radius:18px;border:1px solid var(--line);box-shadow:var(--sh-1);padding:22px}.button,button{border-radius:9px;padding:9px 14px;font-size:13px}.button.secondary,button.secondary{border:1.5px solid var(--line-2);color:var(--ink-2)}.filters{background:white;border:1px solid var(--line);border-radius:12px;padding:14px}.table-wrap{border-radius:12px;box-shadow:var(--sh-1)}table{font-size:12px}th{background:#FAFBFD;color:var(--muted);padding:13px 15px;letter-spacing:.7px}td{padding:14px 15px}tbody tr:hover{background:#F0F6FC}.badge{border-radius:99px}.register-banner{border-left:0;border-radius:18px;background:linear-gradient(120deg,var(--navy),var(--navy-600));border-bottom:4px solid var(--yellow);padding:28px}.register-banner strong{font-size:48px}.register-banner span{color:#9FB4D9}.stats article{border-top:3px solid var(--blue)}.stats article:nth-child(2){border-top-color:var(--teal)}.stats article:nth-child(3){border-top-color:var(--gold)}.stats strong{color:var(--navy);font-size:31px}.bar-row i{background:var(--blue)}.alert{border-radius:12px}.auth-main{margin:0;padding-top:0}.auth-main .content{min-height:100vh;background:radial-gradient(ellipse at 15% 20%,#e3f0fb,transparent 50%),var(--bg);display:grid;place-items:center}.auth-box{width:100%;max-width:480px;margin:0;padding:36px;border-top:4px solid var(--yellow);border-radius:24px;box-shadow:var(--sh-2)}.auth-box .eyebrow:before{content:'';display:block;background:url('../reference-logo.png') center/contain no-repeat;width:64px;height:64px;margin:0 0 16px}.auth-box h1{font-size:26px}.account-dialog{width:min(520px,calc(100% - 24px));padding:24px;border:1px solid var(--line);border-radius:18px;color:var(--ink);box-shadow:var(--sh-3)}dialog::backdrop{background:rgba(7,22,64,.45);backdrop-filter:blur(2px)}.modal-head{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);padding-bottom:15px}.modal-head h2{margin:0}.account-hero{display:flex;align-items:center;gap:14px;padding:22px 0}.account-hero .avatar{width:52px;height:52px;border-radius:16px;font-size:18px}.account-hero h3{margin:0;font-size:16px}.account-hero p{margin:3px 0;font-size:12px}.profile-dl{display:grid;grid-template-columns:165px 1fr;margin:18px 0}.profile-dl dt,.profile-dl dd{margin:0;border-bottom:1px solid var(--line);padding:11px 10px;font-size:12px;overflow-wrap:anywhere}.profile-dl dt{color:var(--muted);background:var(--surface-2)}.profile-dl dd{font-weight:600}.account-tools{padding:16px;background:var(--surface-2);border:1px solid var(--line);border-radius:12px}.account-tools h3{font-size:12px;margin:0 0 10px}.account-tools a{display:block;margin-top:10px;font-size:12px}.modal-footer{display:flex;justify-content:flex-end;gap:10px;margin-top:22px}.danger{background:white;border-color:#EFC3C3;color:var(--red)}.recruit-profile{background:white;border:1px solid var(--line);border-radius:18px;overflow:hidden;margin-bottom:24px;box-shadow:var(--sh-2)}.ph-av img{width:100%;height:100%;object-fit:contain}.ph-av{overflow:hidden;background:rgba(255,255,255,.12)}.ph-id h3{color:white}.ph-stats{grid-template-columns:repeat(6,minmax(0,1fr))}.phs b{overflow-wrap:anywhere}.tab{background:transparent;border:0;border-bottom:3px solid transparent;border-radius:0}.tab-body .actions{margin-bottom:18px}.tab-body .pkpi-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.pk-v{font-size:19px}.recruit-drawer{position:fixed;inset:0 0 0 auto;width:min(900px,100%);height:100dvh;max-width:100%;max-height:100dvh;margin:0;padding:0;border:0;border-radius:0;background:var(--surface-2);overflow:auto;box-shadow:var(--sh-3)}.recruit-drawer .recruit-profile{border:0;border-radius:0}.drawer-close{position:absolute;right:18px;top:18px;width:34px;height:34px;padding:0;color:white;background:rgba(255,255,255,.14);border:0;z-index:5;border-radius:10px;font-size:22px}.recruit-drawer .ph-top{padding-right:35px}.recruit-drawer .ph{padding-top:24px}.mobile-menu{display:none}body:has(.recruit-drawer[open]){overflow:hidden}#edit-record{scroll-margin-top:85px}section[hidden],div[hidden]{display:none!important}
@media(max-width:1000px){.gsearch{max-width:260px}.tb-state{display:none}.topbar .brand{min-width:170px}.ph-stats{grid-template-columns:repeat(3,minmax(0,1fr))}.userchip .un{max-width:100px;overflow:hidden;text-overflow:ellipsis}.enroll{grid-template-columns:1fr}}
@media(max-width:760px){.mobile-menu{display:block}.topbar{gap:9px;padding:0 10px}.topbar .brand{min-width:0}.topbar .brand .t1{font-size:13px}.topbar .brand .t2{font-size:8px}.topbar .logo{width:34px;height:34px}.topbar .logo img{width:29px;height:29px}.gsearch{display:none}.userchip>span:nth-child(2){display:none}.userchip{padding:5px}.sidebar,aside.sidebar{transform:translateX(-100%);top:66px;position:fixed;width:252px;transition:transform .2s}.nav-open aside.sidebar{transform:translateX(0)}.nav-open #nav-scrim{display:block;position:fixed;inset:66px 0 0;background:rgba(7,22,64,.4);z-index:45}main{margin-left:0;padding-top:66px}.content{padding:20px 14px 45px}nav{display:block}.nav-caption,.aside-bottom{display:block}.ph-top{gap:12px}.ph-id h3{font-size:18px}.ph-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.ph-av{width:62px;height:72px;flex:none}.tab-body{padding:16px}.tab-body .pkpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.profile-dl{grid-template-columns:125px 1fr}.tabs{position:static}.tab{white-space:nowrap;font-size:11px;padding:11px}.account-dialog{padding:18px}}
@media print{.topbar,.sidebar,dialog,.recruit-profile,.mobile-menu,#nav-scrim{display:none!important}main{margin:0;padding:0}.content{padding:0;background:white}.id-card{font-family:Arial,sans-serif}.auth-main .content{display:block}}

aside.sidebar{scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.16) transparent}


/* ===== hub.css ===== */
/* Moduli: Takwimu, PRF, Placement Hub, Barua */
.kpis{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px;margin-bottom:18px}
.kpis article{background:#fff;border:1px solid var(--line);border-radius:16px;padding:16px 18px;box-shadow:var(--sh-1);border-top:3px solid var(--blue)}
.kpis article:nth-child(2){border-top-color:var(--teal)}.kpis article:nth-child(3){border-top-color:var(--green)}.kpis article:nth-child(4){border-top-color:var(--gold)}.kpis article:nth-child(5){border-top-color:var(--purple)}
.kpis small{display:block;font-size:10.5px;font-weight:800;color:var(--muted);text-transform:uppercase;letter-spacing:.5px}
.kpis strong{display:block;font:800 28px var(--f-head);color:var(--navy);margin:6px 0 2px;font-variant-numeric:tabular-nums}
.kpis span{font-size:11px;color:var(--muted)}
.fgrid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;background:#fff;border:1px solid var(--line);border-radius:14px;padding:16px;margin-bottom:18px}
.fgrid label{margin:0;font-size:10.5px;text-transform:uppercase;letter-spacing:.4px;color:var(--muted)}
.fgrid .wide{grid-column:span 2}
.fgrid .fbtns{display:flex;align-items:flex-end;gap:8px}
.chips{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:18px}
.chip{border:1.5px solid var(--line-2);background:#fff;color:var(--ink-2);border-radius:99px;padding:7px 14px;font-size:12px;font-weight:700;cursor:pointer}
.chip b{margin-left:6px;color:var(--navy)}
.chip.on{background:var(--navy);border-color:var(--navy);color:#fff}.chip.on b{color:var(--yellow)}
.g3{display:grid;grid-template-columns:1.2fr .9fr .9fr;gap:18px;margin-bottom:18px}
.g2{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-bottom:18px}
.g3 .panel,.g2 .panel{margin:0}
.hbar{display:grid;grid-template-columns:110px 1fr 46px;gap:10px;align-items:center;margin:11px 0;font-size:12px}
.hbar div{height:9px;background:#EDF2F8;border-radius:99px;overflow:hidden}.hbar i{display:block;height:100%;border-radius:99px;background:linear-gradient(90deg,var(--blue),#3aa0e8)}
.hbar b{text-align:right;color:var(--navy)}
.donut-wrap{display:flex;align-items:center;gap:20px;min-height:140px}
.donut2{width:128px;height:128px;border-radius:50%;position:relative;flex:none}
.donut2:after{content:'';position:absolute;inset:24px;background:#fff;border-radius:50%}
.donut2 span{position:absolute;inset:0;display:grid;place-items:center;z-index:2;font:800 20px var(--f-head);color:var(--navy)}
.lg{display:grid;gap:9px;font-size:12px}.lg i{display:inline-block;width:9px;height:9px;border-radius:50%;margin-right:7px}
.pill{display:inline-block;padding:4px 9px;border-radius:99px;font-size:10.5px;font-weight:700;background:#EEF1F5;color:#5b6b80}
.pill.ok{background:var(--green-100);color:var(--green)}.pill.wait{background:var(--amber-100);color:#9a5b05}.pill.blue{background:var(--blue-100);color:var(--blue-700)}.pill.red{background:var(--red-100);color:var(--red)}
.toolbar{display:flex;flex-wrap:wrap;gap:10px;align-items:center;background:#fff;border:1px solid var(--line);border-radius:14px;padding:12px 14px;margin:14px 0}
.toolbar input,.toolbar select{width:auto;flex:0 1 220px}.toolbar .grow{flex:1}
.quick{display:flex;gap:10px;align-items:flex-end;background:linear-gradient(120deg,var(--navy),var(--navy-600));color:#fff;border-radius:16px;padding:18px;margin-bottom:18px;border-bottom:4px solid var(--yellow);flex-wrap:wrap}
.quick label{color:#C6D5EE;margin:0;flex:1;min-width:180px}.quick label input{background:#fff}
.quick button{background:var(--yellow);color:#3B3200;border-color:var(--yellow)}
.quick h2{color:#fff;margin:0 0 4px;font-size:16px;width:100%}
.station-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:10px}
.st-card{border:1px solid var(--line);border-radius:12px;padding:12px;background:#fff;font-size:12px}
.st-card b{display:block;color:var(--navy);font-size:12.5px}.st-card small{color:var(--muted)}
.st-card .meter{height:6px;background:#EDF2F8;border-radius:99px;margin-top:8px;overflow:hidden}.st-card .meter i{display:block;height:100%;background:var(--teal)}
.st-card.off{opacity:.5}
.flow{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:18px}
.flow a{display:block;background:#fff;border:1px solid var(--line);border-radius:16px;padding:18px;color:var(--ink);box-shadow:var(--sh-1)}
.flow a:hover{text-decoration:none;border-color:var(--blue)}
.flow .n{display:inline-grid;place-items:center;width:28px;height:28px;border-radius:50%;background:var(--yellow);color:#3B3200;font-weight:800;margin-bottom:8px}
.flow b{display:block;font:700 15px var(--f-head);color:var(--navy)}.flow p{margin:6px 0 0;font-size:12px}
.flow strong{display:block;font:800 24px var(--f-head);color:var(--navy);margin-top:8px}
tr.clickable{cursor:pointer}
.empty{text-align:center;color:var(--muted);padding:28px}
.inline-form{display:inline}
.note{font-size:12px;color:var(--muted)}
@media(max-width:1100px){.kpis{grid-template-columns:repeat(3,1fr)}.g3,.g2{grid-template-columns:1fr}.fgrid{grid-template-columns:repeat(2,1fr)}.flow{grid-template-columns:1fr}}
@media(max-width:700px){.kpis{grid-template-columns:repeat(2,1fr)}.fgrid{grid-template-columns:1fr}.fgrid .wide{grid-column:auto}.toolbar input,.toolbar select{flex-basis:100%}}


/* ===== sheria-theme.css ===== */
/* Mandhari ya Uhamiaji (kutoka SHERIA): navy #002147 / #001428, dhahabu #F2C14E, Inter. */
@font-face{font-family:'Inter';font-style:normal;font-weight:400;font-display:swap;src:url('../fonts/inter/inter-latin-400.woff2') format('woff2')}
@font-face{font-family:'Inter';font-style:normal;font-weight:500;font-display:swap;src:url('../fonts/inter/inter-latin-500.woff2') format('woff2')}
@font-face{font-family:'Inter';font-style:normal;font-weight:600;font-display:swap;src:url('../fonts/inter/inter-latin-600.woff2') format('woff2')}
@font-face{font-family:'Inter';font-style:normal;font-weight:700;font-display:swap;src:url('../fonts/inter/inter-latin-700.woff2') format('woff2')}
:root{--navy:#002147;--navy-900:#001428;--navy-800:#001832;--navy-700:#0b2a55;--navy-600:#0D3A6E;--blue:#0D3A6E;--blue-700:#002147;--blue-100:#E3EAF6;
 --yellow:#F2C14E;--yellow-600:#E0A420;--yellow-100:#FDF3D6;--gold:#E3B34E;--green:#4C9A3D;--green-100:#E4F3E0;
 --ink:#0f172a;--ink-2:#334155;--muted:#64748b;--muted-2:#94a3b8;--line:#e2e8f0;--line-2:#cbd5e1;--bg:#f4f6fa;--surface-2:#f8fafc;
 --f-body:'Inter','Segoe UI',Tahoma,Arial,sans-serif;--f-head:'Inter','Segoe UI',Tahoma,Arial,sans-serif}
body{font-family:var(--f-body);letter-spacing:-.005em}
h1,h2,h3,.brand,.stats strong,.kpis strong{font-family:var(--f-head);font-weight:800;letter-spacing:-.02em}
.topbar{border-bottom:1px solid var(--line)}
.brand .t1{color:var(--navy);font-weight:900;letter-spacing:1.2px}.brand .t2{color:#9a7b2d;font-weight:700;letter-spacing:2px}
aside.sidebar{background:radial-gradient(circle at 15% 0%,#0b2a55 0%,#002147 45%,#001428 100%)}
.nav-caption{color:var(--yellow);opacity:.75;font-weight:800;letter-spacing:2px}
nav a{color:rgba(255,255,255,.78);font-weight:600}
nav a:hover{background:rgba(255,255,255,.08);color:#fff}
nav a.active{background:linear-gradient(90deg,rgba(242,193,78,.22),rgba(242,193,78,.06));color:#fff;box-shadow:inset 3px 0 0 var(--yellow);font-weight:800}
nav a.active .ni{color:var(--yellow)}
.sb-card{border-color:rgba(242,193,78,.25)}
.mini-btn{background:linear-gradient(135deg,#f8de3c,#F2C14E);color:#001428}
.eyebrow{color:#9a7b2d;font-weight:800;letter-spacing:2.2px}
.page-heading h1,.content>h1{color:var(--navy)}
button,.button{background:var(--navy);border-color:var(--navy);font-weight:700}
button:hover,.button:hover{background:#002e63;filter:none}
.button.secondary,button.secondary{background:#fff;color:var(--navy);border-color:var(--line-2)}
.button.secondary:hover,button.secondary:hover{border-color:var(--yellow-600);background:#fffdf5}
.danger{color:#dc2626;background:#fff;border-color:#fecaca}
.register-banner{background:linear-gradient(135deg,#001428,#002046);border-bottom:4px solid var(--yellow)}
.register-banner strong{color:#fff}.banner-note a{color:var(--yellow)}
.kpis article,.stats article{border-top:0;position:relative;overflow:hidden;border-radius:14px}
.kpis article::after,.stats article::after{content:'';position:absolute;left:0;top:0;bottom:0;width:4px;background:var(--ac,#002147)}
.kpis article:nth-child(2){--ac:#0369a1}.kpis article:nth-child(3){--ac:#4C9A3D}.kpis article:nth-child(4){--ac:#E0A420}.kpis article:nth-child(5){--ac:#7c3aed}
.stats article:nth-child(2){--ac:#0369a1}.stats article:nth-child(3){--ac:#E0A420}
.kpis strong,.stats strong{color:#0D1735;font-weight:900}
th{background:#f8fafc;color:#475569;font-weight:800}
.pill.ok{background:#dcfce7;color:#15803d}.pill.blue{background:#E3EAF6;color:#002147}.pill.wait{background:#FDF3D6;color:#92400e}
.quick{background:linear-gradient(135deg,#001428,#002046);border-bottom-color:var(--yellow)}
.quick button{background:linear-gradient(135deg,#f8de3c,#F2C14E);color:#001428}
.chip.on{background:var(--navy);border-color:var(--navy)}.chip.on b{color:var(--yellow)}
.hbar i{background:linear-gradient(90deg,#002147,#0369a1)}
.flow .n{background:linear-gradient(135deg,#f8de3c,#F2C14E);color:#001428}
.avatar{background:linear-gradient(135deg,#001428,#002046);color:var(--yellow)}
/* Wasifu wa recruit — mtindo wa pf-card ya SHERIA */
.ph{background:linear-gradient(135deg,#001428 0%,#002046 60%,#0b2a55 100%)}
.ph::after{background:linear-gradient(90deg,#F2C14E,#f8de3c,#F2C14E)}
.ph-av{background:#F2C14E;color:#001428;border-color:rgba(242,193,78,.5)}
.ph-rank b{color:#F2C14E}
.pb-gold{background:#F2C14E;color:#001428;border-color:#F2C14E}
.pb-soft{background:#001428;color:#F2C14E;border-color:rgba(242,193,78,.35)}
.tabs{background:linear-gradient(135deg,#001428,#002046)}
.tab.active{border-bottom-color:#F2C14E;background:rgba(242,193,78,.14)}
.pkpi{border-left:4px solid var(--ac,#002147);border-radius:12px}
.pkpi-grid .pkpi:nth-child(2){--ac:#0369a1}.pkpi-grid .pkpi:nth-child(3){--ac:#4C9A3D}.pkpi-grid .pkpi:nth-child(4){--ac:#E0A420}
.pk-v{color:#0D1735;font-weight:900}
.profile-dl dt{color:#64748b;font-weight:500;background:#fff}.profile-dl dd{color:#0f172a;font-weight:700}
/* lock: anashughulikiwa na mtumiaji mwingine */
.lockpill{display:inline-flex;align-items:center;gap:4px;margin-left:8px;padding:2px 9px;border-radius:99px;background:#fee2e2;color:#b91c1c;font-size:10.5px;font-weight:800;border:1px solid #fecaca;vertical-align:middle;animation:lockpulse 2s ease-in-out infinite}
.lockpill b{font-weight:800}
@keyframes lockpulse{50%{box-shadow:0 0 0 4px rgba(220,38,38,.12)}}
tr:has(.lockpill:not([hidden])) td{background:#fff5f5!important}
tr:has(.lockpill:not([hidden])) input[type=checkbox]{outline:2px solid #fca5a5}
.lockbar{display:flex;gap:12px;align-items:center;padding:14px 18px;border-radius:14px;margin-bottom:16px;font-weight:600}
.lockbar.busy{background:#fee2e2;border:1px solid #fca5a5;color:#991b1b}
.lockbar.mine{background:#ecfdf5;border:1px solid #a7f3d0;color:#065f46;font-size:12.5px;padding:9px 14px}
.lockbar .ic{width:34px;height:34px;border-radius:10px;display:grid;place-items:center;background:#fff;font-size:17px}
body.locked-page form:not(.allow-locked) button{opacity:.45;pointer-events:none}
/* akaunti (pf-card ya SHERIA) */
.pf-grid{display:grid;grid-template-columns:1fr 1.4fr;gap:1.25rem;align-items:start}
.pf-card{background:#fff;border:1px solid #e2e8f0;border-radius:14px;overflow:hidden;margin-bottom:1.1rem}
.pf-card-head{background:linear-gradient(135deg,#001428,#002046);color:#fff;padding:1.25rem;display:flex;align-items:center;gap:1rem}
.pf-avatar{width:64px;height:64px;border-radius:50%;background:#F2C14E;color:#001428;display:flex;align-items:center;justify-content:center;font-weight:900;font-size:1.4rem;flex-shrink:0}
.pf-name{font-weight:800;font-size:1.05rem}.pf-email{font-size:.78rem;color:#F2C14E;letter-spacing:.5px}
.pf-body{padding:1.1rem 1.25rem}
.pf-row{display:flex;justify-content:space-between;gap:12px;padding:.6rem 0;border-bottom:1px solid #f1f5f9;font-size:.86rem}.pf-row:last-child{border:0}
.pf-row .lbl{color:#64748b;font-weight:500}.pf-row .val{color:#0f172a;font-weight:700;text-align:right}
.pf-pill{display:inline-block;background:#001428;color:#F2C14E;padding:2px 10px;border-radius:10px;font-size:.7rem;font-weight:800;letter-spacing:.5px;margin:1px}
.pf-pill.gold{background:#F2C14E;color:#001428}.pf-pill.green{background:#dcfce7;color:#15803d}.pf-pill.red{background:#fee2e2;color:#dc2626}
.pwd-card{background:#fff;border:1px solid #e2e8f0;border-radius:14px;overflow:hidden}
.pwd-head{background:linear-gradient(135deg,#F2C14E,#e8c200);color:#001428;padding:1.1rem 1.25rem;font-weight:900;font-size:1rem}
.pwd-body{padding:1.25rem}.pwd-body label{text-transform:uppercase;letter-spacing:.5px;color:#475569;font-size:.72rem}
.pwd-input{position:relative}.pwd-input button{position:absolute;right:8px;top:50%;transform:translateY(-50%);background:none;border:0;color:#64748b;padding:6px;margin-top:4px}
.pwd-rules{background:#f8fafc;border-left:3px solid #F2C14E;border-radius:6px;padding:.65rem .85rem;font-size:.75rem;color:#475569;margin-bottom:.95rem}
.pwd-submit{width:100%;background:#001428;color:#F2C14E;letter-spacing:.5px}
.uhp-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:10px}
.uhp-stat{background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:12px 14px;position:relative;overflow:hidden}
.uhp-stat::after{content:'';position:absolute;left:0;top:0;bottom:0;width:4px;background:var(--ac,#002147)}
.uhp-stat .n{font-size:1.5rem;font-weight:900;color:#0D1735;line-height:1}.uhp-stat .l{font-size:.62rem;font-weight:800;color:#64748b;text-transform:uppercase;letter-spacing:.4px;margin-top:4px}
.uhp-sec-row{display:flex;align-items:center;gap:10px;padding:11px 14px;border-top:1px solid #f1f5f9;font-size:.82rem}.uhp-sec-row:first-child{border-top:0}
.uhp-sec-row .ic{width:32px;height:32px;border-radius:9px;display:flex;align-items:center;justify-content:center;flex-shrink:0}
.uhp-sec-row .ic.ok{background:#dcfce7;color:#15803d}.uhp-sec-row .ic.warn{background:#fee2e2;color:#dc2626}.uhp-sec-row .ic.info{background:#e3eaf6;color:#002147}
.uhp-sec-row .t1{font-weight:800;color:#0f172a}.uhp-sec-row .t2{font-size:.72rem;color:#64748b;margin-top:1px}
/* ukurasa wa kuingia (kama SHERIA) */
body.login-page{background:radial-gradient(circle at 15% 10%,#0b2a55 0%,#002147 45%,#001832 100%);min-height:100vh}
body.login-page::before{content:"";position:fixed;inset:0;pointer-events:none;background:radial-gradient(circle at 85% 85%,rgba(227,179,78,.12),transparent 40%),radial-gradient(circle at 10% 90%,rgba(76,154,61,.10),transparent 35%)}
body.login-page .auth-main .content{background:none}
.login-wrap{position:relative;z-index:1;display:grid;grid-template-columns:1.1fr .9fr;gap:3rem;align-items:center;max-width:1100px;width:100%;padding:2rem}
.login-hero{color:#fff}.login-hero .chip{background:#fff;border-radius:22px;padding:14px;display:inline-flex;box-shadow:0 14px 36px rgba(0,0,0,.3);border:0}
.login-hero img{height:96px}.login-hero .k{font-size:.78rem;letter-spacing:2.5px;color:#F2C14E;font-weight:800;margin:1.2rem 0 .4rem}
.login-hero h1{color:#fff;font-size:2.6rem;line-height:1.1}.login-hero h1 span{color:#F2C14E}.login-hero p{color:rgba(255,255,255,.8);font-size:1rem;max-width:520px}
.login-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:1.4rem}.login-steps div{background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.14);border-radius:14px;padding:12px;font-size:.78rem;color:rgba(255,255,255,.85)}.login-steps b{display:block;color:#F2C14E;font-size:.72rem;letter-spacing:1px}
.login-card{background:#fff;border-radius:22px;padding:2rem;box-shadow:0 24px 60px rgba(0,0,0,.35);border-top:5px solid #F2C14E}
.login-card h2{color:#002147;font-size:1.4rem;margin:0 0 .3rem}.login-card p{margin:0 0 1.2rem;font-size:.85rem}
.login-card button{width:100%;padding:13px;background:#001428;color:#F2C14E;font-size:.95rem;letter-spacing:.5px}
@media(max-width:900px){.login-wrap{grid-template-columns:1fr}.pf-grid{grid-template-columns:1fr}.login-steps{grid-template-columns:1fr}}
.bulkbar{display:flex;flex-wrap:wrap;gap:10px;align-items:stretch;background:#fff;border:1px solid var(--line);border-radius:14px;padding:12px;margin-top:14px;box-shadow:var(--sh-1);position:sticky;bottom:10px;z-index:4}
.bb-title{display:flex;align-items:center;gap:8px;font-weight:800;color:var(--navy);padding:0 6px}
.bb-group{display:flex;gap:6px;align-items:center;flex-wrap:wrap;background:#f8fafc;border:1px solid #eef2f7;border-radius:10px;padding:6px 8px}
.bb-group b{font-size:11px;color:#9a7b2d;letter-spacing:.5px;text-transform:uppercase;margin-right:2px}
.bb-group input,.bb-group select{width:auto;padding:7px 9px;font-size:12px;max-width:220px}
.bb-group button{padding:7px 10px;font-size:12px}
.lockpill[hidden]{display:none!important}
.dash-hero{display:grid;grid-template-columns:.8fr 1.2fr;gap:24px;align-items:center;background:radial-gradient(circle at 85% 20%,rgba(242,193,78,.16),transparent 40%),linear-gradient(135deg,#001428,#002046 60%,#0b2a55);color:#fff;border-radius:20px;padding:26px 28px;border-bottom:4px solid #F2C14E;margin-bottom:18px;box-shadow:0 18px 40px rgba(0,20,40,.18)}
.dh-main span{font-size:11px;letter-spacing:2px;color:#F2C14E;font-weight:800}.dh-main strong{display:block;font-size:56px;font-weight:900;line-height:1.05;margin:6px 0}.dh-main p{color:rgba(255,255,255,.75);margin:0}
.dh-pipe{display:grid;grid-template-columns:repeat(5,1fr);gap:12px}
.ring{--p:0;display:flex;flex-direction:column;align-items:center;gap:4px;color:#fff;text-decoration:none;padding:8px;border-radius:14px;transition:background .15s}
.ring:hover{background:rgba(255,255,255,.07);text-decoration:none}
.ring .rv{width:78px;height:78px;border-radius:50%;display:grid;place-items:center;font-weight:900;font-size:15px;background:radial-gradient(closest-side,#001b3a 79%,transparent 80% 100%),conic-gradient(#F2C14E calc(var(--p)*1%),rgba(255,255,255,.14) 0)}
.ring b{font-size:12px}.ring small{font-size:11px;color:rgba(255,255,255,.65)}
.kpis-7{grid-template-columns:repeat(7,minmax(0,1fr))!important}.kpi-a{color:inherit;text-decoration:none}.kpi-a:hover{text-decoration:none}.kpi-a article{height:100%;transition:transform .15s,box-shadow .15s}.kpi-a:hover article{transform:translateY(-2px);box-shadow:0 10px 24px rgba(0,20,40,.1)}
.mini{display:block;height:5px;background:#eef2f7;border-radius:99px;margin-top:10px;overflow:hidden}.mini em{display:block;height:100%;background:linear-gradient(90deg,#002147,#F2C14E)}
@media(max-width:1200px){.kpis-7{grid-template-columns:repeat(4,1fr)!important}.dash-hero{grid-template-columns:1fr}}
@media(max-width:700px){.kpis-7{grid-template-columns:repeat(2,1fr)!important}.dh-pipe{grid-template-columns:repeat(3,1fr)}}
.pagetabs{display:flex;gap:4px;flex-wrap:wrap;background:#fff;border:1px solid var(--line);border-radius:14px;padding:5px;margin:0 0 18px;box-shadow:var(--sh-1);width:fit-content;max-width:100%}
.pagetabs a{padding:9px 16px;border-radius:10px;font-size:13px;font-weight:700;color:#475569;text-decoration:none;white-space:nowrap}
.pagetabs a:hover{background:#f1f5f9;color:var(--navy);text-decoration:none}
.pagetabs a.on{background:linear-gradient(135deg,#001428,#002046);color:#F2C14E;box-shadow:0 4px 12px rgba(0,20,40,.2)}
aside.sidebar{overflow-y:auto;scrollbar-width:none}aside.sidebar::-webkit-scrollbar{display:none}
aside.sidebar nav a{padding:12px 14px;font-size:13.5px;margin:4px 0}
/* Orodha safi na zilizobana */
.table-wrap{border-radius:14px;border:1px solid var(--line);background:#fff;box-shadow:0 1px 2px rgba(0,20,40,.04)}
table{font-size:12.5px}
th{padding:10px 14px;font-size:10.5px;letter-spacing:.6px;text-transform:uppercase;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:1}
td{padding:8px 14px;border-bottom:1px solid #f1f5f9;vertical-align:middle}
tbody tr:last-child td{border-bottom:0}
tbody tr:hover td{background:#f8fbff}
td small{margin-top:2px;font-size:10.5px}
td code{font:600 12px ui-monospace,Consolas,monospace;background:#f1f5f9;color:#0D1735;padding:2px 7px;border-radius:6px}
td input[type=checkbox],th input[type=checkbox]{width:16px;height:16px}
.whocell{display:flex;align-items:center;gap:10px;min-width:220px}
.whocell .av{width:34px;height:34px;flex:none;border-radius:50%;display:grid;place-items:center;background:linear-gradient(135deg,#001428,#002046);color:#F2C14E;font-weight:800;font-size:11.5px;overflow:hidden;border:2px solid #fff;box-shadow:0 0 0 1px #e2e8f0}
.whocell .av img{width:100%;height:100%;object-fit:cover;background:#fff}
.whocell .wn{font-weight:700;color:#0D1735;text-decoration:none}.whocell .wn:hover{color:#0369a1;text-decoration:underline}
.filters,.toolbar{padding:10px 12px;gap:10px;margin-bottom:14px;border-radius:14px}
.filters input,.filters select,.toolbar input,.toolbar select{padding:9px 11px}
.page-heading{margin-bottom:14px}.page-heading p{margin-top:4px}
.pagination{margin-top:12px;font-size:12.5px}
.pagination a{padding:6px 12px;border:1px solid var(--line);border-radius:9px;background:#fff;font-weight:700}
.print-actions{margin-top:12px;gap:10px;flex-wrap:wrap}
.bulkbar{position:fixed;left:calc(252px + 22px);right:22px;bottom:14px;box-shadow:0 18px 40px rgba(0,20,40,.22);border:1px solid #F2C14E;animation:bbup .18s ease-out}
.bulkbar[hidden]{display:none!important}
@keyframes bbup{from{transform:translateY(20px);opacity:0}}
@media(max-width:760px){.bulkbar{left:10px;right:10px}}
.chips a.chip{text-decoration:none}
.step{display:inline-block;padding:3px 10px;border-radius:99px;font-size:10.5px;font-weight:800;background:#FDF3D6;color:#92400e;white-space:nowrap}
.step-pf,.step-picha{background:#fee2e2;color:#b91c1c}.step-prf,.step-kituo{background:#E3EAF6;color:#002147}.step-ajira,.step-barua,.step-kadi{background:#ede9fe;color:#6d28d9}.step-kamili{background:#dcfce7;color:#15803d}
/* ---- live search ---- */
.suggest{position:absolute;left:0;right:0;top:100%;margin-top:6px;background:#fff;border:1px solid #d9e0ea;border-radius:12px;box-shadow:0 18px 40px rgba(0,20,40,.22);z-index:60;max-height:380px;overflow:auto;padding:6px;color:#0f1d2e;text-transform:none;letter-spacing:0;font-weight:400}
.sg-item{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:9px;cursor:pointer}
.sg-item.on,.sg-item:hover{background:#eef3fa}
.sg-item .av{flex:0 0 32px;height:32px;border-radius:50%;background:#002147;color:#F2C14E;display:grid;place-items:center;font-size:12px;font-weight:700}
.sg-main{flex:1;min-width:0}.sg-main b{display:block;font-size:13.5px;color:#002147}.sg-main small{display:block;color:#5b6b7f;font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.suggest mark{background:#F2C14E55;color:inherit;border-radius:3px;padding:0 1px}
.sg-empty{padding:12px;color:#5b6b7f;font-size:13px}
.sg-chosen{flex-basis:100%;display:flex;align-items:center;gap:8px;flex-wrap:wrap;background:rgba(242,193,78,.14);border:1px solid rgba(242,193,78,.5);color:#fff;border-radius:10px;padding:7px 12px;font-size:13px;margin-top:8px}
.sg-chosen button{background:none;border:0;color:inherit;font-size:18px;cursor:pointer;padding:0 4px;min-height:0}
form.toolbar.live{position:relative}
.live-ind{display:none;width:16px;height:16px;margin-left:-34px;margin-right:18px;align-self:center;pointer-events:none}
form.toolbar.loading .live-ind{display:inline-block}
.live-ind i{display:block;width:16px;height:16px;box-sizing:border-box;border:2px solid;border-color:#1eb53a #fcd116 #111111 #00a3dd;border-radius:50%;animation:lsspin .9s linear infinite}
@media(prefers-reduced-motion:reduce){.live-ind i{animation:none}}
@keyframes lsspin{to{transform:rotate(360deg)}}
form.live button[hidden],.live-ind[hidden]{display:none!important}
.suggest{min-width:min(520px,92vw)}
.sg-chosen{flex-basis:auto;margin-top:6px;padding:5px 10px;font-size:12px}
/* ---- workflow + mapungufu ---- */
.step-pfno{background:#fef3c7;color:#92400e}
.flowrule{display:flex;flex-wrap:wrap;align-items:stretch;gap:8px;background:linear-gradient(135deg,#001428,#002046);border-bottom:4px solid #F2C14E;border-radius:16px;padding:16px;margin:0 0 20px;color:#fff}
.flowrule>i{align-self:center;color:#F2C14E;font-style:normal;font-size:20px}
.fr-step{flex:1;min-width:150px;display:flex;flex-direction:column;gap:2px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.12);border-radius:12px;padding:10px 12px}
.fr-step span{width:24px;height:24px;border-radius:50%;background:#F2C14E;color:#001428;display:grid;place-items:center;font-weight:800;font-size:12px}
.fr-step b{font-size:14px}.fr-step small{color:#C6D5EE;font-size:12px}
.fr-note{flex-basis:100%;margin:6px 0 0;color:#F8DE8C;font-size:12.5px}
.gap-h{font-size:13px;letter-spacing:.12em;text-transform:uppercase;color:#8a6d1f;margin:18px 0 8px}
.gapgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:10px}
.gapcard{display:flex;flex-direction:column;gap:4px;background:#fff;border:1px solid #e3e8f0;border-left:4px solid #d64545;border-radius:12px;padding:12px 14px;text-decoration:none;color:#0f1d2e;transition:.15s}
.gapcard:hover{transform:translateY(-1px);box-shadow:0 8px 20px rgba(0,33,71,.08)}
.gapcard.zero{border-left-color:#3DD68C;opacity:.75}.gapcard.on{outline:2px solid #002147;background:#f3f6fb}
.gapcard small{font-size:12px;font-weight:700;color:#334155}.gapcard strong{font-size:24px;color:#002147;line-height:1.1}
.gapcard em{font-style:normal;font-size:11.5px;color:#64748b}
.gbar{height:4px;background:#eef2f7;border-radius:4px;overflow:hidden}.gbar i{display:block;height:100%;background:#d64545}
.gapcard.zero .gbar i{background:#3DD68C}
.gapchips{display:flex;flex-wrap:wrap;gap:4px}
.gchip{font-size:11px;font-weight:700;padding:2px 8px;border-radius:999px;text-decoration:none;white-space:nowrap}
.g-hard{background:#fee2e2;color:#b91c1c}.g-id{background:#fef3c7;color:#92400e}.g-soft{background:#eef2f7;color:#475569}.g-flow{background:#ede9fe;color:#6d28d9}
.gchip.on{outline:2px solid currentColor}
.pill.bad{background:#fee2e2;color:#b91c1c}
.pb-warn{background:rgba(214,69,69,.18);color:#ffd0d0;border:1px solid rgba(255,140,140,.4);padding:3px 10px;border-radius:999px;font-size:12px;font-weight:700}
.pflow{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:0 0 12px}
.pf-step{display:flex;gap:10px;align-items:flex-start;border-radius:12px;padding:10px;border:1px solid #e3e8f0;background:#fff;min-width:0}
.pf-step b{display:block;font-size:13px;color:#002147}.pf-step small{display:block;font-size:11.5px;color:#64748b;line-height:1.35;overflow-wrap:anywhere}
.pf-n{flex:0 0 26px;height:26px;border-radius:50%;display:grid;place-items:center;font-weight:800;font-size:12px;background:#e2e8f0;color:#334155}
.pf-done{background:#f0fdf4;border-color:#bbf7d0}.pf-done .pf-n{background:#16a34a;color:#fff}
.pf-ready{background:#fffbeb;border-color:#fde68a}.pf-ready .pf-n{background:#F2C14E;color:#001428}
.pf-blocked{background:#fff5f5;border-color:#fecaca}.pf-blocked .pf-n{background:#fecaca;color:#b91c1c}
.pgaps{display:flex;flex-direction:column;gap:6px;background:#fff;border:1px dashed #f3b4b4;border-radius:12px;padding:10px 12px;margin:0 0 14px}
.pgaps b{font-size:12.5px;color:#b91c1c}.pgaps.ok{border-color:#bbf7d0}.pgaps.ok b{color:#15803d}
@media(max-width:760px){.pflow{grid-template-columns:1fr 1fr}.flowrule>i{display:none}}
/* ---- PRF scan ---- */
.scanbox{background:#fff;border:2px solid #002147;border-radius:16px;padding:14px;margin:0 0 18px;transition:box-shadow .2s}
.scanbox .sb-head{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:8px;color:#002147}
.scanbox .sb-head input{width:auto;display:inline-block;margin-left:6px}
.scanbox>input{font-size:20px;padding:14px;border:2px dashed #F2C14E;width:100%}
.sb-stats{display:flex;gap:8px;flex-wrap:wrap;align-items:center;margin:10px 0}
.scanlog{margin:0;padding-left:20px;max-height:300px;overflow:auto;font-size:13.5px}.scanlog li{padding:4px 0;border-bottom:1px solid #eef2f7}
.scanlog .s-ok{color:#15803d}.scanlog .s-dup{color:#92400e}.scanlog .s-bad{color:#b91c1c}
.scanbox.f-ok{box-shadow:0 0 0 6px rgba(22,163,74,.35)}.scanbox.f-dup{box-shadow:0 0 0 6px rgba(245,158,11,.35)}.scanbox.f-bad{box-shadow:0 0 0 6px rgba(220,38,38,.35)}
/* ---- dashboard funnel ---- */
.funnel4{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:18px 0}
.funnel4 a{display:flex;flex-direction:column;gap:6px;text-decoration:none;color:#0f1d2e;background:#fff;border:1px solid #e3e8f0;border-radius:14px;padding:14px;position:relative}
.funnel4 a .n{width:28px;height:28px;border-radius:50%;background:#002147;color:#F2C14E;display:grid;place-items:center;font-weight:800}
.funnel4 a b{font-size:15px;color:#002147}.funnel4 a strong{font-size:22px;color:#002147}
.funnel4 a .why{font-size:12px;color:#b91c1c}.funnel4 a .rdy{font-size:12px;color:#15803d}
.regtab td,.regtab th{white-space:nowrap}.regtab .mini{display:block;min-width:60px}
@media(max-width:900px){.funnel4{grid-template-columns:1fr 1fr}}


/* ===== ui-2026.css ===== */
/* ==========================================================================
   UI 2026: tabaka la muonekano wa kisasa juu ya theme iliyopo.
   Rangi: navy #002147 / #001428, dhahabu #F2C14E, wino wa giza #0B1B33.
   ========================================================================== */
:root{--navy:#002147;--navy-9:#001428;--navy-7:#0b2a55;--gold:#F2C14E;--gold-2:#F8D877;--ink:#0B1B33;--muted:#5b6b7f;--line:#e5eaf2;--bg:#f3f6fb;--card:#fff;--ok:#16a34a;--warn:#d97706;--bad:#dc2626;--r:16px;--sh:0 1px 2px rgba(0,33,71,.05),0 8px 24px rgba(0,33,71,.06);--sh-h:0 2px 4px rgba(0,33,71,.06),0 18px 40px rgba(0,33,71,.12)}
body{background:var(--bg);color:var(--ink);font-family:Inter,"Segoe UI",system-ui,sans-serif;-webkit-font-smoothing:antialiased}
.ico{flex:none;vertical-align:-3px}

/* ---------- Topbar ---------- */
.topbar{background:rgba(255,255,255,.86)!important;backdrop-filter:saturate(1.4) blur(12px);-webkit-backdrop-filter:saturate(1.4) blur(12px);border-bottom:1px solid var(--line)!important;box-shadow:0 1px 0 rgba(0,33,71,.03)}
.topbar .brand{display:flex;align-items:center;gap:12px}.topbar .brand .logo{display:flex!important;gap:6px;align-items:center;width:auto!important;height:auto!important;background:none!important;box-shadow:none!important;border-radius:0!important;padding:0!important;overflow:visible!important}
.topbar .brand .logo img{height:40px;width:auto;transition:transform .3s}
.topbar .brand:hover .logo img{transform:rotate(-4deg) scale(1.05)}
.userchip{transition:box-shadow .2s,transform .2s}.userchip:hover{box-shadow:var(--sh-h);transform:translateY(-1px)}
.topclock{display:flex;align-items:center;gap:8px;color:var(--muted);font-size:12.5px;font-weight:600;margin-right:12px}

/* ---------- Sidebar ---------- */
aside.sidebar{background:linear-gradient(180deg,#00244d 0%,#001a39 55%,#00112a 100%)!important;border-right:0;box-shadow:4px 0 24px rgba(0,20,40,.12)}
aside.sidebar .nav-caption{color:rgba(242,193,78,.85);letter-spacing:.18em;font-size:10.5px;font-weight:800;margin:18px 14px 6px}
aside.sidebar nav a{display:flex!important;align-items:center;gap:12px;border-radius:12px!important;padding:11px 14px!important;margin:3px 10px!important;color:rgba(255,255,255,.8)!important;font-weight:600;font-size:14px;box-shadow:none!important;background:transparent;position:relative;transition:background .18s,color .18s,transform .18s}
aside.sidebar nav a .ni{display:grid;place-items:center;width:30px;height:30px;border-radius:9px;background:rgba(255,255,255,.07);color:rgba(255,255,255,.9);transition:background .18s,color .18s}
aside.sidebar nav a:hover{background:rgba(255,255,255,.07)!important;color:#fff!important;transform:translateX(3px)}
aside.sidebar nav a:hover .ni{background:rgba(242,193,78,.18);color:var(--gold)}
aside.sidebar nav a.active{background:linear-gradient(135deg,#F8D877,#F2C14E 55%,#e8b23a)!important;color:var(--navy-9)!important;font-weight:800;box-shadow:0 8px 20px rgba(242,193,78,.28)!important;transform:none}
aside.sidebar nav a.active .ni{background:var(--navy);color:var(--gold)}
aside.sidebar nav a.active::after{content:"";position:absolute;right:-10px;top:50%;width:6px;height:22px;border-radius:6px 0 0 6px;background:var(--gold);transform:translateY(-50%)}
aside.sidebar .aside-bottom{color:rgba(255,255,255,.55)}

/* ---------- Page heading & tabs ---------- */
.page-heading h1{color:var(--navy);letter-spacing:-.02em}
.eyebrow{color:#a27a12!important;letter-spacing:.16em}
.pagetabs{background:#fff;border:1px solid var(--line);border-radius:14px;padding:5px;box-shadow:var(--sh);display:inline-flex;gap:4px;flex-wrap:wrap}
.pagetabs a{border-radius:10px;padding:8px 14px;font-weight:600;color:var(--muted);transition:background .15s,color .15s}
.pagetabs a:hover{background:#f1f4f9;color:var(--navy)}
.pagetabs a.on{background:var(--navy)!important;color:var(--gold)!important;box-shadow:0 6px 14px rgba(0,33,71,.2)}

/* ---------- Surfaces ---------- */
.panel,.table-wrap,.toolbar,.kpis article,.gapcard,.funnel4 a,.pkpi,.recruit-profile{border-radius:var(--r)!important;border:1px solid var(--line)!important;box-shadow:var(--sh)!important;background:var(--card)}
.panel,.kpis article,.gapcard,.funnel4 a,.pkpi{transition:box-shadow .25s,transform .25s,border-color .25s}
.kpis article:hover,.gapcard:hover,.funnel4 a:hover,.pkpi:hover,.kpi-a:hover article{box-shadow:var(--sh-h)!important;transform:translateY(-3px);border-color:#d6dfeb!important}
.panel h2{color:var(--navy)}

/* ---------- Buttons ---------- */
button,.button{border-radius:11px!important;font-weight:700;transition:transform .15s,box-shadow .15s,background .15s,filter .15s}
main button:not(.secondary):not(.danger):not(.modal-close):not(.drawer-close):not([data-tab]),.button:not(.secondary){background:linear-gradient(135deg,#0b2a55,#002147);color:#fff;border-color:transparent}
button:not(:disabled):hover,.button:hover{transform:translateY(-1px);box-shadow:0 8px 18px rgba(0,33,71,.18);filter:saturate(1.1)}
button:active,.button:active{transform:translateY(0)}
.button.gold,button.gold{background:linear-gradient(135deg,#F8D877,#F2C14E)!important;color:var(--navy-9)!important}
.button.secondary,button.secondary{background:#fff;color:var(--navy);border:1px solid #d6dfeb}
.button .ico,button .ico{margin-right:6px}

/* ---------- Inputs ---------- */
input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=file]),select,textarea{border-radius:11px!important;border:1px solid #d6dfeb!important;transition:border-color .15s,box-shadow .15s}
input:focus,select:focus,textarea:focus{border-color:var(--gold)!important;box-shadow:0 0 0 4px rgba(242,193,78,.25)!important;outline:none}

/* ---------- Tables ---------- */
.table-wrap{overflow:auto}
table thead th{background:#f7f9fd;color:#516179;font-size:11.5px;letter-spacing:.08em;position:sticky;top:0;z-index:1;border-bottom:1px solid var(--line)}
table tbody tr{transition:background .12s}
table tbody tr:hover{background:#fbf7ea}
table tbody tr:hover td:first-child{box-shadow:inset 3px 0 0 var(--gold)}
.whocell .av{background:linear-gradient(135deg,#0b2a55,#002147)!important;color:var(--gold)!important;box-shadow:0 0 0 2px #fff,0 0 0 3px rgba(242,193,78,.5)}
.wn{color:var(--navy);font-weight:700}.wn:hover{color:#a27a12}

/* ---------- Pills ---------- */
.pill{border-radius:999px;font-weight:700}

/* ---------- Dashboard ---------- */
.dash-hero{position:relative;overflow:hidden;background:radial-gradient(circle at 90% 0%,rgba(242,193,78,.22),transparent 38%),radial-gradient(circle at 0% 100%,rgba(10,93,183,.35),transparent 45%),linear-gradient(135deg,#001428,#002046 60%,#0b2a55)!important}
.dash-hero::before{content:"";position:absolute;right:-60px;top:-60px;width:360px;height:360px;background:url("/static/reference-logo.png") center/contain no-repeat;opacity:.07;pointer-events:none}
.dash-hero .dh-main strong{font-size:62px;letter-spacing:-.03em;background:linear-gradient(180deg,#fff,#F8D877);-webkit-background-clip:text;background-clip:text;color:transparent}
@property --pp{syntax:"<number>";inherits:true;initial-value:0}
.ring .rv{--pp:0;background:radial-gradient(closest-side,#001b3a 79%,transparent 80% 100%),conic-gradient(#F2C14E calc(var(--pp)*1%),rgba(255,255,255,.14) 0)!important;animation:ringfill 1.4s cubic-bezier(.2,.8,.2,1) forwards;transition:transform .25s}
.ring:hover .rv{transform:scale(1.08) rotate(-4deg);box-shadow:0 0 0 4px rgba(242,193,78,.18)}
@keyframes ringfill{to{--pp:var(--p)}}
.mini em,.gbar i,.fn .b i,.hbar i{animation:growx 1.1s cubic-bezier(.2,.8,.2,1) both;transform-origin:left}
@keyframes growx{from{transform:scaleX(0)}to{transform:scaleX(1)}}
.funnel4 a{overflow:hidden}
.funnel4 a::before{content:"";position:absolute;left:0;top:0;height:3px;width:100%;background:linear-gradient(90deg,var(--gold),#0A5DB7);transform:scaleX(0);transform-origin:left;transition:transform .35s}
.funnel4 a:hover::before{transform:scaleX(1)}
.funnel4 a .n{box-shadow:0 0 0 4px rgba(242,193,78,.25)}
.dash-grid{display:grid;grid-template-columns:1.3fr 1fr;gap:16px;margin-top:16px}
.dash-chart{display:flex;align-items:flex-end;gap:10px;height:180px;padding:10px 4px 0}
.dash-chart .bar{flex:1;display:flex;flex-direction:column;align-items:center;gap:6px;height:100%;justify-content:flex-end}
.dash-chart .bar i{display:block;width:100%;max-width:46px;border-radius:10px 10px 4px 4px;background:linear-gradient(180deg,#F2C14E,#0b2a55);animation:growy 1.1s cubic-bezier(.2,.8,.2,1) both;transform-origin:bottom;position:relative}
.dash-chart .bar:hover i{filter:brightness(1.12);box-shadow:0 8px 18px rgba(0,33,71,.2)}
.dash-chart .bar b{font-size:12px;color:var(--navy)}.dash-chart .bar small{font-size:11px;color:var(--muted);text-align:center}
@keyframes growy{from{transform:scaleY(0)}to{transform:scaleY(1)}}
.donut{--a:0;--b:0;width:150px;height:150px;border-radius:50%;background:conic-gradient(#0b2a55 0 calc(var(--a)*1%),#F2C14E 0 calc((var(--a) + var(--b))*1%),#e5eaf2 0);display:grid;place-items:center;margin:auto;transition:transform .3s}
.donut:hover{transform:scale(1.04) rotate(6deg)}
.donut span{width:96px;height:96px;border-radius:50%;background:#fff;display:grid;place-items:center;text-align:center;font-weight:800;color:var(--navy);font-size:13px;box-shadow:inset 0 0 0 1px var(--line)}
.legend{display:flex;gap:14px;justify-content:center;margin-top:10px;font-size:12.5px;color:var(--muted)}.legend i{display:inline-block;width:10px;height:10px;border-radius:3px;margin-right:6px;vertical-align:-1px}
.countup{font-variant-numeric:tabular-nums}

/* ---------- Entrance animation ---------- */
@media (prefers-reduced-motion:no-preference){
 .content>*{animation:fadeup .45s cubic-bezier(.2,.8,.2,1) both}
 .content>*:nth-child(2){animation-delay:.04s}.content>*:nth-child(3){animation-delay:.08s}.content>*:nth-child(4){animation-delay:.12s}.content>*:nth-child(5){animation-delay:.16s}.content>*:nth-child(n+6){animation-delay:.2s}
 .kpis article,.gapcard,.funnel4 a{animation:fadeup .5s cubic-bezier(.2,.8,.2,1) both}
 .kpis>*:nth-child(2) article,.funnel4 a:nth-child(2){animation-delay:.05s}.kpis>*:nth-child(3) article,.funnel4 a:nth-child(3){animation-delay:.1s}.kpis>*:nth-child(4) article,.funnel4 a:nth-child(4){animation-delay:.15s}
}
@keyframes fadeup{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}

/* ---------- Print: vichwa rasmi vyenye nembo mbili ---------- */
.print-head{display:none}
@media print{
 @page{size:A4;margin:12mm 10mm}
 body{background:#fff!important}
 .topbar,aside.sidebar,.pagetabs,.toolbar,.actions,.bulkbar,.pagination,.no-print,form button,.lockbar,.export-panel,#nav-scrim,.alert{display:none!important}
 main,.content{margin:0!important;padding:0!important;max-width:none!important}
 .print-head{display:flex;align-items:center;gap:12px;border-bottom:3px solid #F2C14E;padding-bottom:6px;margin-bottom:10px}
 .print-head img{height:18mm}.print-head div{flex:1;text-align:center;line-height:1.25}.print-head b{display:block;font-size:12pt;color:#002147}.print-head span{font-size:9.5pt;color:#334}
 .print-head small{display:block;font-size:8.5pt;color:#667}
 .panel,.table-wrap,.kpis article{box-shadow:none!important;border-color:#ccd!important;break-inside:avoid}
 table thead th{background:#002147!important;color:#fff!important;-webkit-print-color-adjust:exact;print-color-adjust:exact}
 .content>*{animation:none!important}
 a{color:inherit;text-decoration:none}
}
@media screen{.cards2 .idf{zoom:1.6}}

.demo-ribbon{display:flex;align-items:center;gap:8px;background:repeating-linear-gradient(135deg,#fff7e0,#fff7e0 12px,#fdeec2 12px,#fdeec2 24px);border:1px solid #f2c14e;color:#7a5a00;border-radius:12px;padding:9px 14px;margin:0 0 14px;font-size:13px}

/* ---------- Sidebar switch ---------- */
.sbswitch{display:inline-flex;align-items:center;gap:8px;margin:0 6px 0 0;cursor:pointer;font-size:11px;font-weight:700;color:var(--navy,#002147);user-select:none}
.sbswitch input{position:absolute;opacity:0;width:1px;height:1px}
.sbswitch .sw{width:42px;height:24px;border-radius:99px;background:#c9d3e0;position:relative;transition:background .2s;flex:none}
.sbswitch .sw i{position:absolute;top:3px;left:3px;width:18px;height:18px;border-radius:50%;background:#fff;box-shadow:0 1px 4px rgba(0,0,0,.25);transition:transform .2s}
.sbswitch input:checked+.sw{background:linear-gradient(135deg,#F8D877,#F2C14E)}
.sbswitch input:checked+.sw i{transform:translateX(18px);background:#002147}
.sbswitch input:focus-visible+.sw{outline:3px solid #F2C14E;outline-offset:2px}
aside.sidebar{transition:transform .25s ease}
main{transition:margin-left .25s ease}
body.sb-off aside.sidebar{transform:translateX(-100%)}
body.sb-off main{margin-left:0!important}
body.sb-off .bulkbar{left:22px}
@media(max-width:760px){.sbswitch{display:none}}

/* ---------- Mapendekezo ya utafutaji: juu ya kila kitu, yanasomeka ---------- */
.quick,form:has(input[data-suggest]){position:relative;z-index:40;overflow:visible!important}
.content>*:has(.suggest:not([hidden])){z-index:45;position:relative}
.suggest{z-index:200!important;min-width:min(560px,92vw);max-height:420px;padding:8px!important;border-radius:14px!important;box-shadow:0 24px 60px rgba(0,20,40,.35)!important;border:1px solid #d6dfeb!important}
.sg-item{gap:12px!important;padding:11px 12px!important;border-bottom:1px solid #eef2f7;border-radius:10px}
.sg-item:last-child{border-bottom:0}
.sg-item .av{flex:0 0 38px!important;height:38px!important;font-size:13px!important}
.sg-main b{font-size:14.5px!important;line-height:1.3;white-space:normal}
.sg-main small{font-size:12.5px!important;margin-top:3px;white-space:normal!important;line-height:1.4}
.sg-item mark{background:#FCE9A6;color:#002147;border-radius:3px;padding:0 2px}
.sg-item .pill{flex:none}

.idle-warn{position:fixed;right:22px;bottom:22px;z-index:300;display:flex;flex-direction:column;gap:8px;max-width:340px;background:#fff;border:1px solid #F2C14E;border-left:6px solid #F2C14E;border-radius:14px;padding:16px 18px;box-shadow:0 24px 60px rgba(0,20,40,.35);color:#0f1d2e}
.idle-warn b{color:#002147;font-size:15px}.idle-warn em{font-style:normal;font-weight:800;color:#b45309}

/* ---------- Maendeleo kwa mkoa (mistari iliyobanana, safu mbili) ---------- */
.regpanel .rp-head{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;flex-wrap:wrap;margin-bottom:10px}
.regpanel .rp-head h2{margin:0 0 4px}.regpanel .rp-head p{margin:0;font-size:12.5px}
.rp-tools{display:flex;gap:8px;flex-wrap:wrap}
.seg{display:inline-flex;background:#eef2f8;border-radius:10px;padding:3px;gap:2px}
main .seg button{background:transparent!important;color:#3b4b61!important;border:0;padding:6px 11px;font-size:12px;font-weight:700;border-radius:8px;box-shadow:none}
main .seg button.on{background:#002147!important;color:#F2C14E!important}
.rp-legend{display:flex;gap:16px;flex-wrap:wrap;font-size:11.5px;color:#5b6b7f;margin:4px 0 12px}
.rp-legend span{display:inline-flex;align-items:center;gap:6px}
.rp-legend i,.rp-tip i{display:inline-block;width:12px;height:8px;border-radius:3px}
.k0{background:#dbe4f0}.k1{background:#5b7fb3}.k2{background:linear-gradient(90deg,#e8b23a,#F2C14E)}.k3{background:#2f9e6b}
.rp-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:34px;row-gap:2px}
.rp-row{display:grid;grid-template-columns:172px 1fr 38px 42px;align-items:center;gap:10px;padding:6px 8px;border-radius:9px;color:inherit;text-decoration:none!important;position:relative}
.rp-row[hidden]{display:none}
.rp-row:hover{background:#f3f7fc}
.rp-name{font-size:13px;font-weight:600;color:#0f2744;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.rp-name em{font-style:normal;font-size:9.5px;font-weight:800;color:#0b5ea8;background:#e3effb;border-radius:5px;padding:1px 5px;margin-left:6px;vertical-align:middle}
.rp-track{height:14px;display:block}
.rp-bar{position:relative;display:block;height:100%;background:#dbe4f0;border-radius:6px;overflow:hidden;animation:growx 1s cubic-bezier(.2,.8,.2,1) both;transform-origin:left}
.rp-bar i{position:absolute;left:0;top:0;bottom:0;border-radius:6px}
.rp-bar i.k2{top:3px;bottom:3px}.rp-bar i.k3{top:5px;bottom:5px}
.rp-n{font-size:13px;color:#002147;text-align:right}
.rp-pc{font-size:11px;font-weight:800;text-align:center;border-radius:99px;padding:2px 0;background:#fff4d6;color:#8a6000}
.rp-tip{display:none;position:absolute;z-index:30;left:140px;top:calc(100% - 2px);background:#002147;color:#dbe6f5;border-radius:12px;padding:10px 12px;box-shadow:0 16px 36px rgba(0,20,40,.3);font-size:12px;min-width:200px;flex-direction:column;gap:4px}
.rp-tip>b{color:#F2C14E;font-size:13px}.rp-tip span{display:flex;align-items:center;gap:6px}.rp-tip span b{margin-left:auto;color:#fff}
.rp-row:hover .rp-tip{display:flex}
@media(max-width:1100px){.rp-grid{grid-template-columns:1fr}}
@media print{.rp-grid{grid-template-columns:1fr 1fr}.rp-tip{display:none!important}}
.rp-grid{grid-auto-flow:column;grid-template-rows:repeat(var(--rows,16),auto)}
@media(max-width:1100px){.rp-grid{grid-auto-flow:row;grid-template-rows:none}}

/* ---------- PRF: uchaguzi juu, tendua ---------- */
.selbar{position:sticky;top:76px;z-index:20;display:flex;align-items:flex-end;gap:10px;flex-wrap:wrap;background:#002147;color:#dbe6f5;border-radius:14px;padding:12px 14px;margin:0 0 12px;box-shadow:0 14px 34px rgba(0,20,40,.25);border-bottom:3px solid #F2C14E;animation:fadeup .2s ease both}
.selbar[hidden]{display:none}
.selbar label{margin:0;color:#c6d5ee;font-size:11px}.selbar label input{margin-top:4px;background:#fff}.selbar .grow{flex:1;min-width:160px}
.selbar .sb-n{align-self:center;font-size:13px;margin-right:6px}.selbar .sb-n b{color:#F2C14E;font-size:18px}
.selbar input[name=reason]{width:240px;background:#fff}.selbar .sb-sep{width:1px;align-self:stretch;background:rgba(255,255,255,.18);margin:0 4px}
main .selbar button:not(.secondary):not(.danger){background:linear-gradient(135deg,#F8D877,#F2C14E)!important;color:#002147!important}
.selbar .err,.ud-cascade.err{outline:3px solid #ef4444}
.mini-act{padding:5px 10px!important;font-size:12px!important;border-radius:8px!important;white-space:nowrap}
main button.undo-btn.mini-act{background:#fff!important;color:#b91c1c!important;border:1px solid #fecaca!important}
main button.undo-btn.mini-act:hover{background:#fee2e2!important}
main button.mark-btn.mini-act{background:#ecfdf5!important;color:#047857!important;border:1px solid #a7f3d0!important}
.recentbox{display:flex;flex-wrap:wrap;align-items:center;gap:8px 14px;background:#fffbeb;border:1px solid #fde68a;border-radius:14px;padding:10px 14px;margin:0 0 14px}
.recentbox>b{display:inline-flex;gap:6px;align-items:center;color:#7c5800}.rb-list{display:flex;flex-wrap:wrap;gap:8px;width:100%}
.rb-item{display:flex;align-items:center;gap:10px;background:#fff;border:1px solid #fde68a;border-radius:10px;padding:6px 6px 6px 10px}
.rb-item span b{display:block;font-size:12.5px;color:#002147}.rb-item small{font-size:11px;color:#6b7280}
.undo-dlg{width:min(560px,calc(100% - 24px));border:0;border-radius:18px;padding:22px 24px;box-shadow:0 30px 80px rgba(0,20,40,.4)}
.undo-dlg h2{margin:0 0 6px;color:#b91c1c}.undo-dlg .ud-deps{background:#fef2f2;border:1px solid #fecaca;color:#7f1d1d;border-radius:10px;padding:10px 12px;font-size:13px;margin:10px 0}

/* ================= RIPOTI ================= */
.rh-kpis{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px;margin-bottom:16px}
.rh-kpis a{position:relative;display:flex;flex-direction:column;gap:2px;background:#fff;border:1px solid #e3e8f0;border-radius:16px;padding:14px 16px 16px;color:inherit;text-decoration:none!important;overflow:hidden;box-shadow:0 2px 10px rgba(0,20,40,.05);transition:transform .18s,box-shadow .18s}
.rh-kpis a:hover{transform:translateY(-3px);box-shadow:0 14px 30px rgba(0,20,40,.12)}
.rh-kpis .ri{position:absolute;right:12px;top:12px;width:34px;height:34px;border-radius:10px;display:grid;place-items:center;background:#002147;color:#F2C14E}
.rh-kpis small{font-size:10.5px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:#5b6b7f}
.rh-kpis b{font-size:26px;color:#002147;line-height:1.2}.rh-kpis em{font-style:normal;font-size:11.5px;color:#8a6000;font-weight:700}
.rh-kpis i{position:absolute;left:0;bottom:0;height:4px;width:var(--p);background:linear-gradient(90deg,#002147,#F2C14E)}
.rh-smart{display:flex;align-items:center;gap:16px;background:linear-gradient(120deg,#001a39,#0b2a55 60%,#1d3f73);color:#dbe6f5;border-radius:18px;padding:18px 22px;margin-bottom:18px;text-decoration:none!important;border-bottom:4px solid #F2C14E;box-shadow:0 18px 40px rgba(0,20,40,.2);transition:transform .2s}
.rh-smart:hover{transform:translateY(-2px)}.rs-ic{width:54px;height:54px;flex:none;border-radius:16px;display:grid;place-items:center;background:rgba(242,193,78,.16);color:#F2C14E}
.rs-t{flex:1}.rs-t b{display:block;color:#fff;font-size:17px}.rs-t small{display:block;font-size:12.5px;line-height:1.5;margin-top:3px}
.rs-c{display:flex;gap:6px;flex-wrap:wrap}.rs-go{font-weight:800;color:#F2C14E;white-space:nowrap}
.lvl{display:inline-flex;align-items:center;font-size:11px;font-weight:800;border-radius:99px;padding:3px 10px;white-space:nowrap}
.lvl.muhimu{background:#fee2e2;color:#b91c1c}.lvl.tahadhari{background:#fef3c7;color:#92400e}.lvl.fursa{background:#dcfce7;color:#166534}.lvl.taarifa{background:#dbeafe;color:#1e40af}
.rh-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(290px,1fr));gap:14px}
.rh-card{display:flex;flex-direction:column;background:#fff;border:1px solid #e3e8f0;border-radius:16px;padding:16px 18px;box-shadow:0 2px 10px rgba(0,20,40,.05);transition:transform .18s,box-shadow .18s,border-color .18s}
.rh-card:hover{transform:translateY(-3px);box-shadow:0 16px 34px rgba(0,20,40,.12);border-color:#F2C14E}
.rh-card.alt{background:#fbfcfe;border-style:dashed}
.rc-top{display:flex;align-items:center;gap:8px}.rc-ic{width:38px;height:38px;border-radius:11px;display:grid;place-items:center;background:#eef3fa;color:#002147}
.rh-card:hover .rc-ic{background:#002147;color:#F2C14E}.rc-grp{font-size:10.5px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:#8a6000}
.rh-card h3{margin:12px 0 4px;font-size:15.5px}.rh-card h3 a{color:#002147}.rh-card p{margin:0 0 14px;font-size:12.5px;line-height:1.5;flex:1}
.rc-act{display:flex;gap:6px;flex-wrap:wrap}.rc-act .button{padding:7px 12px!important;font-size:12px!important}
.rv-filters{flex-wrap:wrap}.rv-filters input[name=q]{flex:1 1 260px}.rv-filters select{width:auto;flex:0 1 170px}
.rv-bar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;background:#fff;border:1px solid #e3e8f0;border-radius:14px;padding:10px 12px;margin:0 0 14px}
.rv-ft{display:inline-flex;gap:6px;align-items:center;font-size:12.5px;color:#334155}.rv-clear{font-size:12px;font-weight:700;color:#b91c1c}
.rv-chart h2{margin:0 0 10px;font-size:15px}.rv-bars{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px 30px}
.rvb{display:grid;grid-template-columns:minmax(120px,190px) 1fr 54px;gap:10px;align-items:center;font-size:12.5px}
.rvb span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.rvb i{height:10px;background:#eef2f7;border-radius:6px;overflow:hidden}.rvb em{display:block;height:100%;border-radius:6px;background:linear-gradient(90deg,#002147,#F2C14E);animation:growx 1s cubic-bezier(.2,.8,.2,1) both;transform-origin:left}.rvb b{text-align:right;color:#002147}
.rv-table td.num,.rv-table th.num{text-align:right}.rv-table tfoot td{background:#fff7dc;font-weight:800;color:#002147;border-top:2px solid #002147}
.cellbar{display:flex;align-items:center;gap:8px;min-width:120px}.cellbar i{display:block;height:8px;border-radius:5px;background:linear-gradient(90deg,#002147,#F2C14E);min-width:2px}.cellbar b{font-weight:700}
.heat{display:inline-block;min-width:40px;text-align:center;border-radius:7px;padding:2px 8px;font-weight:700;background:rgba(220,38,38,calc(var(--h)/140));color:#0f1d2e}
@media(max-width:1200px){.rh-kpis{grid-template-columns:repeat(3,1fr)}.rv-bars{grid-template-columns:1fr}}

/* Uchambuzi */
.ua-levels{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
.ua-l{display:flex;flex-direction:column;background:#fff;border:1px solid #e3e8f0;border-radius:16px;padding:14px 16px;text-decoration:none!important;border-top:4px solid;transition:transform .18s}
.ua-l:hover,.ua-l.on{transform:translateY(-3px);box-shadow:0 14px 30px rgba(0,20,40,.12)}.ua-l.on{outline:2px solid #002147}
.ua-l b{font-size:28px;color:#002147}.ua-l span{font-weight:800;color:#0f1d2e}.ua-l small{color:#5b6b7f;font-size:11.5px}
.ua-l.muhimu{border-top-color:#dc2626}.ua-l.tahadhari{border-top-color:#f59e0b}.ua-l.fursa{border-top-color:#16a34a}.ua-l.taarifa{border-top-color:#2563eb}
.ua-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:4px 0 18px}
.ua-card{position:relative;background:#fff;border:1px solid #e3e8f0;border-left:5px solid #94a3b8;border-radius:14px;padding:14px 16px;box-shadow:0 2px 10px rgba(0,20,40,.05)}
.ua-card.muhimu{border-left-color:#dc2626}.ua-card.tahadhari{border-left-color:#f59e0b}.ua-card.fursa{border-left-color:#16a34a}.ua-card.taarifa{border-left-color:#2563eb}
.ua-h{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.ua-cat{font-size:11px;font-weight:800;color:#5b6b7f;text-transform:uppercase;letter-spacing:.06em}.ua-reg{margin-left:auto;display:inline-flex;gap:4px;align-items:center;font-size:12px;font-weight:700;color:#0b5ea8}
.ua-card h3{margin:8px 0 4px;font-size:15px;color:#002147}.ua-card p{margin:0 0 8px;font-size:13px;line-height:1.55}
.ua-rec{display:flex;gap:8px;align-items:flex-start;background:#f0fdf4;border:1px solid #bbf7d0;color:#14532d;border-radius:10px;padding:8px 10px;font-size:12.5px;font-weight:600}
.ua-go{display:inline-block;margin-top:8px;font-size:12.5px;font-weight:800}
.hm th{font-size:10.5px;text-align:center;white-space:nowrap}.hm td.hc{text-align:center;padding:6px 4px}.hm td.hc a{display:block;border-radius:7px;padding:3px 0;color:#0f1d2e;font-weight:700}
.hm td.need a{outline:2px solid #f59e0b;outline-offset:-2px}.hm td.low a{background:#fee2e2;color:#b91c1c}
.hk{display:inline-block;border-radius:5px;padding:0 6px;font-weight:700}.hk.need{outline:2px solid #f59e0b}.hk.low{background:#fee2e2;color:#b91c1c}
.hz{font-size:11px;font-weight:800;border-radius:99px;padding:2px 9px}.hz.juu{background:#fee2e2;color:#b91c1c}.hz.kati{background:#fef3c7;color:#92400e}.hz.chini{background:#e2e8f0;color:#334155}
@media(max-width:1100px){.ua-list{grid-template-columns:1fr}.ua-levels{grid-template-columns:repeat(2,1fr)}}

/* ================= VITAMBULISHO ================= */
.idsteps{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;margin-bottom:14px}
.ids{position:relative;display:flex;flex-direction:column;background:#fff;border:1px solid #e3e8f0;border-radius:16px;padding:14px;text-decoration:none!important;color:inherit;overflow:hidden;transition:transform .18s,box-shadow .18s}
.ids:hover,.ids.on{transform:translateY(-3px);box-shadow:0 14px 30px rgba(0,20,40,.12)}.ids.on{outline:2px solid #F2C14E}
.ids .ii{width:34px;height:34px;border-radius:10px;display:grid;place-items:center;background:#002147;color:#F2C14E;margin-bottom:6px}
.ids small{font-size:11px;font-weight:800;color:#5b6b7f;text-transform:uppercase;letter-spacing:.05em}.ids b{font-size:24px;color:#002147}.ids em{font-style:normal;font-size:11.5px;color:#8a6000;font-weight:700}
.ids i{position:absolute;left:0;bottom:0;height:4px;width:var(--p);background:linear-gradient(90deg,#002147,#F2C14E)}
.phonebar{display:flex;align-items:center;gap:14px;background:#fff;border:1px dashed #c9d3e0;border-radius:16px;padding:12px 16px;margin-bottom:14px}
.phonebar .pb-ic{width:44px;height:44px;border-radius:14px;display:grid;place-items:center;background:#eef3fa;color:#002147;flex:none}
.phonebar div{flex:1}.phonebar b{color:#002147}.phonebar small{display:block;font-size:12.5px;color:#5b6b7f;margin-top:2px}
.phonebar.on{border-style:solid;border-color:#bfdbfe;background:#f5f9ff}.phonebar.live{border-style:solid;border-color:#86efac;background:#f0fdf4}
.phonebar.live .pb-ic{background:#16a34a;color:#fff;animation:lockpulse 2s ease-in-out infinite}
.idtab td{vertical-align:middle}.idav{width:38px;height:46px;object-fit:cover;border-radius:8px;background:#eef3fa;border:1px solid #e3e8f0;flex:none}
.sigmini{height:26px;max-width:90px;object-fit:contain;background:repeating-conic-gradient(#f3f6fa 0 25%,#fff 0 50%) 0 0/10px 10px;border-radius:5px;padding:1px 4px}
.ck{display:inline-grid;place-items:center;width:24px;height:24px;border-radius:50%;font-weight:900;font-size:12px}.ck.ok{background:#dcfce7;color:#166534}.ck.no{background:#fee2e2;color:#b91c1c}
.rowacts{display:flex;gap:6px;flex-wrap:nowrap}.rowacts a.mini-act,.rowacts button.mini-act{display:inline-flex;gap:5px;align-items:center;background:#fff!important;color:#002147!important;border:1px solid #d6dfeb!important;text-decoration:none}
.rowacts .ph-btn{background:#002147!important;color:#F2C14E!important;border-color:#002147!important}
tr.is-phone td{background:#f0fdf4!important}tr.is-phone td:first-child{box-shadow:inset 4px 0 0 #16a34a}
.joblist{display:flex;flex-direction:column;gap:10px}
.job{display:flex;align-items:center;gap:14px;background:#fff;border:1px solid #e3e8f0;border-left:5px solid #94a3b8;border-radius:14px;padding:12px 16px}
.job.requested{border-left-color:#f59e0b}.job.confirmed{border-left-color:#16a34a}.job.failed,.job.cancelled{border-left-color:#dc2626}
.jb-ic{width:40px;height:40px;border-radius:12px;display:grid;place-items:center;background:#eef3fa;color:#002147}.jb-main{flex:1;min-width:0}.jb-main small{display:block;color:#5b6b7f;font-size:12px;margin-top:2px}
.jb-act{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.jb-act form{display:flex;gap:6px;margin:0}
@media(max-width:1200px){.idsteps{grid-template-columns:repeat(3,1fr)}}
.toolbar .chips{margin:0;flex:1 1 100%}.ua-list{align-items:start}
.undo-dlg [hidden],.selbar [hidden]{display:none!important}
@keyframes pulsebtn{0%,100%{box-shadow:0 0 0 0 rgba(242,193,78,.7)}50%{box-shadow:0 0 0 10px rgba(242,193,78,0)}}.pulse{animation:pulsebtn 1.4s infinite}
.idprev-h{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;flex-wrap:wrap}.idprev-h h2{margin:0 0 4px}
.idprev{background:repeating-linear-gradient(45deg,#f3f6fa 0 12px,#fff 12px 24px);border:1px solid #e3e8f0;border-radius:16px;padding:10px}
.idprev iframe{width:100%;height:330px;border:0;display:block;background:transparent}
.rv-filters{flex-direction:column;align-items:stretch!important;gap:10px!important}
.rvf-row{display:flex;gap:10px;flex-wrap:wrap;align-items:flex-end}.rvf-row input[name=q]{flex:1 1 260px;align-self:flex-end}
.rvf{display:flex;flex-direction:column;gap:3px;margin:0!important;font-size:10.5px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:#5b6b7f;flex:0 1 170px}
.rvf select,.rvf input{margin:0!important;text-transform:none;letter-spacing:0;font-weight:500}
.rvf-row.more{padding-top:10px;border-top:1px dashed #e3e8f0}

/* ================= USIMAMIZI ================= */
.adm-stats{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;margin-bottom:18px}
.as{background:#fff;border:1px solid #e3e8f0;border-radius:14px;padding:12px 14px;display:grid;grid-template-columns:auto 1fr;grid-template-rows:auto auto;column-gap:10px;align-items:center}
.as span{grid-row:1/3;width:36px;height:36px;border-radius:10px;display:grid;place-items:center;background:#002147;color:#F2C14E}.as small{font-size:10.5px;font-weight:800;text-transform:uppercase;letter-spacing:.06em;color:#5b6b7f}.as b{font-size:17px;color:#002147;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.adm-h{margin:6px 0 10px;font-size:15px;color:#002147}
.adm-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:12px;margin-bottom:20px}
.adm-card{display:flex;flex-direction:column;gap:4px;background:#fff;border:1px solid #e3e8f0;border-radius:16px;padding:16px;color:inherit;text-decoration:none!important;transition:transform .18s,box-shadow .18s,border-color .18s}
.adm-card:hover{transform:translateY(-3px);box-shadow:0 16px 34px rgba(0,20,40,.12);border-color:#F2C14E}
.ac-ic{width:40px;height:40px;border-radius:12px;display:grid;place-items:center;background:#eef3fa;color:#002147;flex:none}.adm-card:hover .ac-ic{background:#002147;color:#F2C14E}
.adm-card b{margin-top:8px;color:#002147;font-size:14.5px}.adm-card small{color:#5b6b7f;font-size:12px;line-height:1.45;flex:1}.adm-card em{font-style:normal;font-size:12px;font-weight:800;color:#8a6000}
.adm-two{display:grid;grid-template-columns:1.25fr 1fr;gap:16px;align-items:start}.adm-side{display:flex;flex-direction:column;gap:16px}.adm-side .panel{margin:0}
.af-h{display:flex;gap:12px;align-items:center;margin-bottom:14px}.af-h h2{margin:0}.af-h p{margin:2px 0 0;font-size:12.5px}
.af-sub{font-size:13px;color:#002147;margin:16px 0 8px}
.tgl-list{display:flex;flex-direction:column;gap:8px;margin:6px 0 14px}
.tgl{display:flex!important;gap:12px;align-items:flex-start;background:#f8fafc;border:1px solid #e3e8f0;border-radius:12px;padding:10px 12px;margin:0!important;cursor:pointer}
.tgl input{position:absolute;opacity:0;width:1px;height:1px}.tgl .sw{width:42px;height:24px;border-radius:99px;background:#c9d3e0;position:relative;flex:none;transition:background .2s;margin-top:2px}
.tgl .sw i{position:absolute;top:3px;left:3px;width:18px;height:18px;border-radius:50%;background:#fff;box-shadow:0 1px 4px rgba(0,0,0,.25);transition:transform .2s}
.tgl input:checked+.sw{background:linear-gradient(135deg,#F8D877,#F2C14E)}.tgl input:checked+.sw i{transform:translateX(18px);background:#002147}
.tgl input:focus-visible+.sw{outline:3px solid #F2C14E;outline-offset:2px}.tl b{display:block;font-size:13.5px;color:#002147}.tl small{display:block;font-size:12px;color:#5b6b7f;font-weight:500;margin-top:2px}
.up2{display:grid;grid-template-columns:1fr 1fr;gap:10px}.upbox{display:flex!important;flex-direction:column;gap:6px;border:1.5px dashed #c9d3e0;border-radius:12px;padding:10px 12px}.upbox img{max-height:56px;max-width:100%;object-fit:contain;align-self:flex-start;background:repeating-conic-gradient(#f3f6fa 0 25%,#fff 0 50%) 0 0/10px 10px;border-radius:6px;padding:3px}
.form-grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.intakes{display:flex;flex-direction:column;gap:8px;margin-bottom:12px}.ik{display:grid;grid-template-columns:auto 1fr;column-gap:10px;background:#f8fafc;border:1px solid #e3e8f0;border-left:4px solid #F2C14E;border-radius:10px;padding:8px 12px}.ik b{grid-row:1/3;align-self:center;color:#002147;font-size:15px}.ik small{color:#5b6b7f}
.sec-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px;font-size:13px}.sec-list li{display:flex;gap:8px;align-items:flex-start}.sec-list svg{color:#16a34a;flex:none;margin-top:2px}
@media(max-width:1200px){.adm-stats{grid-template-columns:repeat(3,1fr)}.adm-two{grid-template-columns:1fr}}
.rvf select,.rvf input{height:40px!important;min-height:0!important;flex:none!important;padding:8px 10px!important}
.rvf-row input[name=q]{height:40px!important;flex:1 1 260px!important}
.rvf{height:auto!important;align-self:flex-end}

/* Pete za rangi kwenye dashboard */
.dh-pipe .ring:nth-child(1){--c1:#34d399;--c2:#059669}
.dh-pipe .ring:nth-child(2){--c1:#60a5fa;--c2:#2563eb}
.dh-pipe .ring:nth-child(3){--c1:#c084fc;--c2:#7c3aed}
.dh-pipe .ring:nth-child(4){--c1:#fbbf24;--c2:#ea580c}
.dh-pipe .ring:nth-child(5){--c1:#fb7185;--c2:#e11d48}
.dh-pipe .ring .rv{background:radial-gradient(closest-side,#001b3a 77%,transparent 78% 100%),conic-gradient(from -90deg,var(--c1,#F2C14E),var(--c2,#F2C14E) calc(var(--pp)*1%),rgba(255,255,255,.12) 0)!important;color:#fff;box-shadow:0 0 18px color-mix(in srgb,var(--c2,#F2C14E) 35%,transparent)}
.dh-pipe .ring:hover .rv{box-shadow:0 0 0 4px color-mix(in srgb,var(--c1) 30%,transparent),0 0 26px color-mix(in srgb,var(--c2) 55%,transparent)}
.dh-pipe .ring b{color:var(--c1,#fff)}

/* ================= MIKOA (Placement) ================= */
.edu-legend,.legend-s{display:flex;gap:14px;flex-wrap:wrap;font-size:11.5px;color:#5b6b7f;margin:2px 0 12px}.edu-legend span,.legend-s span{display:inline-flex;align-items:center;gap:5px}.edu-legend i,.legend-s i{width:11px;height:11px;border-radius:3px;display:inline-block}
.reg-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:12px}
.reg-card{display:flex;flex-direction:column;gap:7px;background:#fff;border:1px solid #e3e8f0;border-radius:16px;padding:14px;color:inherit;text-decoration:none!important;transition:transform .18s,box-shadow .18s,border-color .18s}
.reg-card[hidden]{display:none}.reg-card:hover{transform:translateY(-3px);box-shadow:0 16px 34px rgba(0,20,40,.12);border-color:#F2C14E}
.rc-h{display:flex;align-items:center;gap:6px}.rc-h b{color:#002147;font-size:15px}.rc-h em{font-style:normal;font-size:9.5px;font-weight:800;color:#0b5ea8;background:#e3effb;border-radius:5px;padding:1px 5px}
.rc-n{margin-left:auto;font-weight:900;color:#002147;font-size:18px}.rc-n small{font-weight:600;color:#8a96a8;font-size:12px}
.rc-meter,.rgm{display:block;height:7px;background:#eef2f7;border-radius:5px;overflow:hidden}.rc-meter i,.rgm i{display:block;height:100%;background:linear-gradient(90deg,#002147,#F2C14E);border-radius:5px;animation:growx 1s cubic-bezier(.2,.8,.2,1) both;transform-origin:left}
.rc-off{display:flex;gap:10px;flex-wrap:wrap;font-size:11.5px;color:#5b6b7f}.rc-off span{display:inline-flex;align-items:center;gap:4px}.rc-off .ok{color:#166534;font-weight:700}.rc-off .low{color:#b45309;font-weight:700;margin-left:auto}
.rc-edu,.edubar{display:flex;height:10px;border-radius:6px;overflow:hidden;background:#eef2f7}.rc-edu i,.edubar i{display:block;height:100%}
.edubar.big{height:26px;border-radius:8px}.edubar.big i{display:grid;place-items:center;color:#fff;font-size:11px;font-style:normal;font-weight:800}.edubar i.empty{width:100%;background:none;color:#8a96a8;font-size:11px;font-style:normal;display:grid;place-items:center}
.rc-sex,.sexbar{display:flex;height:6px;border-radius:5px;overflow:hidden;background:#eef2f7}.rc-sex .me,.sexbar .me{background:#0b2a55}.rc-sex .ke,.sexbar .ke{background:#ec4899}
.rc-f{display:flex;gap:10px;font-size:11.5px;color:#5b6b7f}.rc-f .go{margin-left:auto;font-weight:800;color:#8a6000}
.rg-kpis{display:grid;grid-template-columns:1fr 1fr 2fr 1.2fr 1.2fr;gap:12px;margin-bottom:16px}
.rgk{background:#fff;border:1px solid #e3e8f0;border-radius:16px;padding:14px 16px;display:flex;flex-direction:column;gap:8px}
.rgk small{font-size:10.5px;font-weight:800;text-transform:uppercase;letter-spacing:.07em;color:#5b6b7f}.rgk>b{font-size:26px;color:#002147;line-height:1.1}.rgk em{font-style:normal;font-size:11.5px;color:#5b6b7f}
.legend-s{margin:0}.legend-s b{color:#002147}
.agebars{display:flex;gap:8px;align-items:flex-end;height:78px}.agebars div{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;height:100%;gap:4px}.agebars i{display:block;width:100%;max-width:28px;border-radius:6px 6px 2px 2px;background:linear-gradient(180deg,#F2C14E,#0b2a55);min-height:3px}.agebars span{font-size:10px;color:#5b6b7f;white-space:nowrap}
.sk{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:4px;font-size:12.5px}.sk li{display:flex;justify-content:space-between;gap:8px;border-bottom:1px dashed #eef2f7;padding-bottom:3px}.sk b{color:#002147}
.st-group h2{display:flex;align-items:center;gap:8px;font-size:16px}
.st-list{display:flex;flex-direction:column;gap:8px}
.st-row{border:1px solid #e3e8f0;border-radius:14px;background:#fff;overflow:hidden}.st-row[open]{border-color:#F2C14E;box-shadow:0 10px 26px rgba(0,20,40,.08)}
.st-row summary{list-style:none;display:grid;grid-template-columns:minmax(200px,1.6fr) 1fr 1.5fr 1fr 0.9fr 24px;gap:16px;align-items:center;padding:12px 16px;cursor:pointer}
.st-row summary::-webkit-details-marker{display:none}.st-row summary:hover{background:#f8fafc}
.sr-name b{display:block;color:#002147;font-size:13.5px}.sr-name small,.st-row summary small{display:block;font-size:11px;color:#5b6b7f;margin-top:4px}
.sr-age{display:flex;gap:3px;align-items:flex-end;height:30px;flex-wrap:wrap}.sr-age span{width:9px;height:26px;background:#eef2f7;border-radius:3px;position:relative;overflow:hidden}.sr-age span i{position:absolute;left:0;right:0;bottom:0;height:var(--a);background:#7c3aed}.sr-age small{width:100%;margin-top:0!important}
.sr-go{transition:transform .2s;color:#8a96a8}.st-row[open] .sr-go{transform:rotate(90deg)}
.sr-people{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:6px;padding:10px 16px 16px;border-top:1px dashed #e3e8f0;background:#fbfcfe}
.pp{display:flex;align-items:center;gap:10px;padding:7px 9px;border-radius:10px;color:inherit;text-decoration:none!important;background:#fff;border:1px solid #eef2f7}.pp:hover{border-color:#F2C14E}
.pp .av{width:32px;height:32px;flex:none;border-radius:50%;display:grid;place-items:center;font-size:11px;font-weight:800;background:#0b2a55;color:#F2C14E}.pp .av.ke{background:#db2777;color:#fff}
.pp b{display:block;font-size:12.5px;color:#002147}.pp small{display:block;font-size:11px;color:#5b6b7f}.pp em{margin-left:auto;font-style:normal}
@media(max-width:1200px){.rg-kpis{grid-template-columns:repeat(2,1fr)}.st-row summary{grid-template-columns:1fr 1fr;row-gap:8px}.sr-go{display:none}}

/* ================= Blocks za data (mfumo mzima) ================= */
.kpis article,.funnel4>a{position:relative;border-radius:18px!important;border:1px solid #e3e8f0!important;border-left:4px solid #002147!important;background:linear-gradient(160deg,#fff 0%,#fff 60%,#fbf6e6 100%)!important;box-shadow:0 2px 10px rgba(0,20,40,.05)!important;transition:transform .2s,box-shadow .2s,border-color .2s!important;padding-right:64px!important}
.kpis article:hover,.funnel4>a:hover,.kpi-a:hover article{transform:translateY(-4px);box-shadow:0 18px 36px rgba(0,20,40,.13)!important;border-left-color:#F2C14E!important}
.kicon{position:absolute;top:14px;right:14px;width:42px;height:42px;border-radius:13px;display:grid;place-items:center;background:linear-gradient(145deg,#0b2a55,#001a39);color:#F2C14E;box-shadow:0 8px 18px rgba(0,26,57,.28),inset 0 0 0 1px rgba(242,193,78,.25);transition:transform .25s}
.kpis article:hover .kicon,.funnel4>a:hover .kicon{transform:rotate(-8deg) scale(1.08)}
.kpis article small{color:#5b6b7f!important;font-weight:800!important;letter-spacing:.06em}
.kpis article strong{color:#002147!important}
.kpis article:nth-child(n){border-top:1px solid #e3e8f0!important}
.funnel4>a .n{background:#002147!important;color:#F2C14E!important}
.kpis-7 article{padding-right:16px!important}.kpis-7 .kicon{position:static;width:36px;height:36px;border-radius:11px;margin-bottom:10px}
.kpis-7 article small{display:block;min-height:2.4em}

/* ================= Kihariri cha picha/sahihi ================= */
.medit{width:min(1080px,calc(100% - 24px));max-height:calc(100dvh - 24px);border:0;border-radius:20px;padding:0;box-shadow:0 30px 90px rgba(0,20,40,.5);overflow:hidden;display:none;flex-direction:column}
.medit[open]{display:flex}.medit::backdrop{background:rgba(0,16,36,.6);backdrop-filter:blur(3px)}
.me-head{display:flex;align-items:center;justify-content:space-between;padding:14px 20px;background:linear-gradient(120deg,#001a39,#0b2a55);color:#fff;border-bottom:3px solid #F2C14E}
.me-head b{display:block;font-size:16px}.me-head small{color:#c6d5ee;font-size:12px}.me-x{background:rgba(255,255,255,.12)!important;color:#fff!important;border:0!important;width:34px;height:34px;padding:0!important;border-radius:10px!important;font-size:22px!important}
.me-body{display:grid;grid-template-columns:1fr 300px;min-height:0;flex:1;overflow:auto}
.me-stage{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:18px;background:#0f1d2e}
.me-canvas{position:relative;height:min(62dvh,560px);aspect-ratio:4/5;border-radius:12px;overflow:hidden;background:repeating-conic-gradient(#dfe6ee 0 25%,#fff 0 50%) 0 0/18px 18px;box-shadow:0 0 0 2px #F2C14E,0 14px 40px rgba(0,0,0,.4)}
.me-canvas canvas{width:100%;height:100%;display:block;cursor:grab;touch-action:none}.me-canvas canvas:active{cursor:grabbing}
.me-guide{position:absolute;inset:9% 22% 30%;border:2px dashed rgba(242,193,78,.9);border-radius:50%;pointer-events:none}
.me-guide::after{content:"";position:absolute;left:-55%;right:-55%;top:135%;height:60%;border:2px dashed rgba(242,193,78,.6);border-bottom:0;border-radius:50% 50% 0 0}
.medit.is-sign .me-canvas{height:auto;width:min(100%,720px);aspect-ratio:3/1}.medit.is-sign .me-guide{inset:auto 6% 22% 6%;height:0;border:0;border-bottom:2px dashed #b9c4d4;border-radius:0}.medit.is-sign .me-guide::after{display:none}
.medit.is-sign .p-only,.medit:not(.is-sign) .s-only{display:none}
.me-tip{color:#9fb4d9;font-size:12px}
.me-tools{padding:16px 18px;display:flex;flex-direction:column;gap:14px;border-left:1px solid #e3e8f0;overflow:auto}
.me-grp label{display:flex;justify-content:space-between;font-size:12px;font-weight:800;color:#002147;margin:0 0 4px}.me-grp output{color:#8a6000}
.me-grp input[type=range]{width:100%;accent-color:#002147;padding:0;border:0}
.me-btns{display:flex;flex-wrap:wrap;gap:6px;margin-top:6px}.me-btns button{flex:1 1 auto;background:#fff!important;color:#002147!important;border:1px solid #d6dfeb!important;padding:7px 10px!important;font-size:12px!important;border-radius:9px!important}
.me-btns button:hover{border-color:#F2C14E!important;background:#fffbeb!important}
.me-note{font-size:12px;color:#5b6b7f;margin:0;line-height:1.5}
.me-foot{display:flex;align-items:center;gap:10px;padding:12px 18px;border-top:1px solid #e3e8f0;background:#f8fafc}.me-msg{flex:1;font-size:13px;color:#b91c1c;font-weight:600}
.me-toast{position:fixed;left:50%;bottom:26px;transform:translateX(-50%);background:#166534;color:#fff;padding:12px 20px;border-radius:12px;font-weight:700;z-index:400;box-shadow:0 14px 30px rgba(0,0,0,.25);animation:fadeup .25s ease both}.me-toast.err{background:#b91c1c}
.medit-btn{display:inline-flex;align-items:center;gap:6px}
.mthumb{position:relative;display:inline-block;padding:0!important;border:0!important;background:none!important;cursor:pointer;border-radius:8px}
.mthumb::after{content:"✎";position:absolute;right:-4px;bottom:-4px;width:18px;height:18px;border-radius:50%;background:#002147;color:#F2C14E;font-size:11px;display:grid;place-items:center;opacity:0;transition:opacity .15s}
.mthumb:hover::after{opacity:1}.mthumb:hover img{outline:2px solid #F2C14E}
@media(max-width:860px){.me-body{grid-template-columns:1fr}.me-tools{border-left:0;border-top:1px solid #e3e8f0}.me-canvas{height:min(48dvh,440px)}}
.kicon,.kicon svg{color:#F2C14E!important;stroke:#F2C14E!important}

/* ================= Ukurasa wa simu ya afisa (kompyuta) ================= */
.pp-head{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap;margin-bottom:12px}
.pp-who{display:flex;align-items:center;gap:14px}.pp-who h1{margin:2px 0;font-size:24px}.pp-who p{margin:0;font-size:12.5px}
.pp-av{width:58px;height:70px;border-radius:12px;object-fit:cover;background:#eef3fa;border:2px solid #F2C14E;flex:none}.pp-av.ini{display:grid;place-items:center;font-weight:900;color:#F2C14E;background:#002147;font-size:18px}
.pp-acts{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.pp-acts form{margin:0}
.pp-status{display:flex;align-items:center;gap:10px;flex-wrap:wrap;border-radius:14px;padding:10px 14px;margin-bottom:14px;font-size:13.5px;font-weight:600;background:#fff7ed;border:1px solid #fed7aa;color:#9a3412}
.pp-status.on{background:#eff6ff;border-color:#bfdbfe;color:#1e3a8a}.pp-status.live{background:#f0fdf4;border-color:#86efac;color:#166534}
.pp-status .dot{width:10px;height:10px;border-radius:50%;background:currentColor;flex:none}.pp-status.live .dot{animation:lockpulse 1.6s infinite}
.pp-status .steps{margin-left:auto;display:flex;gap:6px;flex-wrap:wrap}
.sp{font-size:11.5px;font-weight:800;border-radius:99px;padding:4px 10px;background:#fff;border:1px solid #d6dfeb;color:#5b6b7f;text-decoration:none!important}.sp.ok{background:#dcfce7;border-color:#86efac;color:#166534}.sp.ok::after{content:" ✓"}
.pp-grid{display:grid;grid-template-columns:minmax(240px,.9fr) 1fr 1.2fr;gap:14px;align-items:stretch}
.pp-card{background:#fff;border:1px solid #e3e8f0;border-radius:18px;padding:16px;display:flex;flex-direction:column;gap:10px;box-shadow:0 2px 10px rgba(0,20,40,.05);position:relative}
.pp-card h2{margin:0;font-size:15px;display:flex;align-items:center;gap:8px;color:#002147}.pp-card h2 svg{color:#F2C14E;background:#002147;border-radius:8px;padding:4px;width:26px;height:26px}
.badge-st{margin-left:auto;font-size:11px;font-weight:800;border-radius:99px;padding:3px 10px;background:#fef3c7;color:#92400e}.badge-st.ok{background:#dcfce7;color:#166534}
.prev{flex:1;min-height:0;display:grid;place-items:center;border-radius:14px;border:1.5px dashed #c9d3e0;background:repeating-conic-gradient(#f1f5f9 0 25%,#fff 0 50%) 0 0/16px 16px;color:#8a96a8;text-align:center;font-size:13px;overflow:hidden}
.prev.ph{aspect-ratio:4/5;max-height:min(46vh,380px);margin:0 auto;width:auto;height:min(46vh,380px)}.prev.sg{height:150px}
.prev img{max-width:100%;max-height:100%;object-fit:contain}.prev span{line-height:1.6}
.pp-card .medit-btn{justify-content:center}
.pp-full{border-radius:12px;padding:10px 12px;background:#f0fdf4;border:1px solid #86efac;color:#166534;font-size:13px}
.qrwrap{display:grid;place-items:center}.qrwrap img{width:min(220px,100%);aspect-ratio:1;image-rendering:pixelated;background:#fff;padding:10px;border:1px solid #e3e8f0;border-radius:14px}
.qurl{font-size:11px;word-break:break-all;text-align:center;color:#5b6b7f}.qr-toggle{display:none}
.connected-big{display:none;flex-direction:column;align-items:center;text-align:center;gap:6px;padding:10px 0}.connected-big .big-ic{width:64px;height:64px;border-radius:50%;display:grid;place-items:center;background:#16a34a;color:#fff}
.connected-big b{color:#166534;font-size:16px}.connected-big small{color:#5b6b7f;font-size:12px}
.qrc.folded .qrwrap,.qrc.folded .qurl,.qrc.folded .note{display:none}.qrc.folded .connected-big{display:flex}
.help{font-size:12px;color:#5b6b7f;margin-top:auto}.help summary{cursor:pointer;font-weight:700}.help ol{margin:6px 0 0;padding-left:18px;line-height:1.7}
@media(max-width:1150px){.pp-grid{grid-template-columns:1fr 1fr}.pp-grid .qrc{grid-column:1/-1}.qrc.folded{display:none}}

/* ================= Uhamisho wa kituo ================= */
.tr-head{display:flex;justify-content:space-between;align-items:center;gap:14px;margin-bottom:14px}
.tr-who{display:flex;gap:14px;align-items:center}.tr-who h1{margin:2px 0 6px;font-size:24px}
.tr-av{width:62px;height:76px;border-radius:12px;object-fit:cover;border:2px solid #F2C14E;background:#eef3fa;flex:none}.tr-av.ini{display:grid;place-items:center;background:#002147;color:#F2C14E;font-weight:900;font-size:20px}
.tr-tags{display:flex;gap:6px;flex-wrap:wrap;align-items:center}.tr-tags>span:not(.pill){font-size:12px;font-weight:700;background:#eef3fa;color:#334155;border-radius:99px;padding:3px 10px}
.tr-grid{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:14px;align-items:start}
.tr-pick{margin:0!important;display:flex;flex-direction:column;gap:10px;min-height:0}
.tr-ph{display:flex;align-items:center;justify-content:space-between}.tr-ph h2,.tr-sum h2,.tr-hist h2{margin:0;display:flex;align-items:center;gap:8px;font-size:15px}
.tr-ph h2 svg,.tr-sum h2 svg,.tr-hist h2 svg{background:#002147;color:#F2C14E;border-radius:8px;padding:4px;width:26px;height:26px}
.tr-filters{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.tr-filters input[type=search]{flex:1 1 220px;margin:0}.tr-filters select{width:auto;margin:0}.tr-free{margin:0!important;font-size:12.5px}
.tr-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:8px;max-height:calc(100vh - 330px);min-height:240px;overflow:auto;padding:2px 4px 2px 0}
.tr-st{position:relative;display:grid!important;grid-template-columns:auto 1fr auto;grid-template-rows:auto auto;gap:4px 10px;align-items:center;margin:0!important;padding:10px 12px;border:1.5px solid #e3e8f0;border-radius:12px;background:#fff;cursor:pointer;transition:border-color .15s,box-shadow .15s,transform .15s;font-weight:500}
.tr-st[hidden]{display:none!important}.tr-st:hover{border-color:#F2C14E;transform:translateY(-1px)}
.tr-st input{position:absolute;opacity:0;pointer-events:none}
.tr-st.sel{border-color:#002147;box-shadow:0 0 0 3px rgba(242,193,78,.55);background:#fffdf4}
.tr-st.cur{opacity:.6;cursor:not-allowed;background:#f8fafc}.tr-st.full .ts-badge{background:#fee2e2;color:#b91c1c}
.ts-k{grid-row:1/3;width:52px;text-align:center;font-size:10px;font-weight:800;text-transform:uppercase;border-radius:8px;padding:6px 0;background:#002147;color:#F2C14E}.ts-k.k-wilaya{background:#1d4ed8;color:#fff}.ts-k.k-kituo{background:#7c3aed;color:#fff}
.ts-n b{display:block;font-size:13px;color:#002147;line-height:1.25}.ts-n small{font-size:11px;color:#5b6b7f}
.ts-c{grid-column:2/4;display:flex;align-items:center;gap:8px}.ts-c .rgm{flex:1}.ts-c small{font-size:11px;color:#5b6b7f;white-space:nowrap}.ts-c b{color:#002147}
.ts-badge{font-size:10.5px;font-weight:800;border-radius:99px;padding:2px 8px;background:#dcfce7;color:#166534;white-space:nowrap}.ts-badge:empty{display:none}.tr-st.cur .ts-badge{background:#e2e8f0;color:#334155}
.tr-side{display:flex;flex-direction:column;gap:14px;position:sticky;top:84px}.tr-side .panel{margin:0}
.tr-sum{display:flex;flex-direction:column;gap:10px}.tr-sum label{margin:0}
.tr-route{display:grid;grid-template-columns:1fr auto 1fr;gap:8px;align-items:center;background:#f8fafc;border:1px solid #e3e8f0;border-radius:12px;padding:10px}
.tr-route small{display:block;font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.06em;color:#8a96a8}.tr-route b{display:block;font-size:12.5px;color:#002147;line-height:1.3}.tr-route em{font-style:normal;font-size:11px;color:#5b6b7f}
.tr-arrow{font-size:20px;color:#F2C14E;font-weight:900}.tr-to b{color:#8a6000}
.tr-chips{display:flex;flex-wrap:wrap;gap:6px}.tr-chips button{background:#fff!important;color:#002147!important;border:1px solid #d6dfeb!important;border-radius:99px!important;padding:5px 10px!important;font-size:11.5px!important}.tr-chips button:hover{border-color:#F2C14E!important;background:#fffbeb!important}
.tr-over{background:#fef2f2;border:1px solid #fecaca;border-radius:10px;padding:8px 10px;color:#991b1b;font-size:12.5px}
.tr-go{width:100%;justify-content:center;padding:12px!important;font-size:14px!important}.tr-go:disabled{opacity:.45}
.tl{list-style:none;margin:0;padding:0 0 0 14px;border-left:2px solid #e3e8f0;display:flex;flex-direction:column;gap:10px;max-height:260px;overflow:auto}
.tl li{position:relative;font-size:12.5px}.tl li::before{content:"";position:absolute;left:-20px;top:4px;width:10px;height:10px;border-radius:50%;background:#F2C14E;border:2px solid #002147}
.tl b{display:block;color:#002147}.tl span{display:block;color:#334155}.tl small{color:#8a96a8;font-size:11px}
@media(max-width:1100px){.tr-grid{grid-template-columns:1fr}.tr-side{position:static}.tr-list{max-height:none}}

/* ================= Mapungufu ================= */
.mg-hero{display:grid;grid-template-columns:auto 1fr auto;gap:20px;align-items:center;background:linear-gradient(120deg,#001a39,#0b2a55 60%,#173f74);color:#fff;border-radius:20px;padding:20px 24px;margin-bottom:16px;border-bottom:4px solid #F2C14E;box-shadow:0 18px 40px rgba(0,20,40,.2)}
.mg-ring{--p:0;width:118px;height:118px;border-radius:50%;display:grid;place-items:center;background:radial-gradient(closest-side,#0b2a55 76%,transparent 77% 100%),conic-gradient(#34d399 calc(var(--p)*1%),rgba(255,255,255,.14) 0)}
.mg-ring span{text-align:center}.mg-ring b{display:block;font-size:28px;line-height:1}.mg-ring small{font-size:11px;color:#c6d5ee;text-transform:uppercase;letter-spacing:.08em}
.mg-hs{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}
.mg-hs div{background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.12);border-radius:14px;padding:10px 12px}.mg-hs small{display:block;font-size:10.5px;text-transform:uppercase;letter-spacing:.06em;color:#c6d5ee;font-weight:700}
.mg-hs b{font-size:22px}.mg-hs .ok b{color:#6ee7b7}.mg-hs .bad b{color:#fca5a5}.mg-hs .warn b{color:#F2C14E}
.mg-rule{max-width:260px;font-size:12px;color:#dbe6f5;line-height:1.7}.mg-rule b{display:block;color:#F2C14E;font-size:11px;text-transform:uppercase;letter-spacing:.08em}
.mg-rule i{font-style:normal;display:inline-grid;place-items:center;width:17px;height:17px;border-radius:50%;background:#F2C14E;color:#001a39;font-size:10px;font-weight:900;margin-right:3px}.mg-rule em{color:#9fb4d9;font-style:normal}.mg-rule small{display:block;color:#9fb4d9}
.mg-groups{display:grid;grid-template-columns:repeat(auto-fill,minmax(330px,1fr));gap:12px;margin-bottom:14px}
.mg-grp{background:#fff;border:1px solid #e3e8f0;border-radius:16px;padding:12px 14px}
.mg-grp h2{margin:0 0 8px;font-size:12px;text-transform:uppercase;letter-spacing:.08em;color:#8a6000;display:flex;align-items:center;gap:7px}.mg-grp h2 svg{background:#002147;color:#F2C14E;border-radius:7px;padding:3px;width:22px;height:22px}
.mg-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}
.mg-c{display:grid;grid-template-columns:1fr auto;grid-template-rows:auto auto;gap:3px 8px;align-items:center;padding:8px 10px;border-radius:11px;border:1px solid #eef2f7;border-left:4px solid #94a3b8;text-decoration:none!important;color:inherit;transition:transform .15s,box-shadow .15s}
.mg-c:hover{transform:translateY(-2px);box-shadow:0 10px 22px rgba(0,20,40,.1)}.mg-c.on{outline:2px solid #002147;background:#fffbeb}
.mg-c.s-hard{border-left-color:#dc2626}.mg-c.s-id{border-left-color:#f59e0b}.mg-c.s-flow{border-left-color:#2563eb}.mg-c.s-soft{border-left-color:#64748b}
.mg-c.zero{opacity:.55}.mg-c.zero b{color:#16a34a!important}
.mc-l{font-size:12px;font-weight:700;color:#334155;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mg-c b{font-size:17px;color:#002147;text-align:right}
.mc-bar{height:5px;background:#eef2f7;border-radius:4px;overflow:hidden}.mc-bar i{display:block;height:100%;background:linear-gradient(90deg,#002147,#F2C14E)}.mg-c small{font-size:10.5px;color:#8a96a8;text-align:right}
.mg-ids{display:flex;flex-direction:column;gap:3px;align-items:flex-start}.mg-ids code.pf{background:#ecfdf5;color:#047857}
.mg-fix{display:inline-flex;background:#002147!important;color:#F2C14E!important;border:0!important;text-decoration:none!important;font-weight:700}
.mg-table td{vertical-align:middle}
@media(max-width:1200px){.mg-hero{grid-template-columns:auto 1fr}.mg-rule{grid-column:1/-1;max-width:none}.mg-hs{grid-template-columns:repeat(3,1fr)}}
.tr-over[hidden]{display:none!important}
.tr-st .ts-badge{grid-column:3;grid-row:1;align-self:start}.tr-st .ts-c{grid-column:2/4;grid-row:2}

/* ================= Profile: muhtasari uliobanwa ================= */
.pov{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(260px,1fr);gap:14px;margin-top:14px}
.pov-main{display:flex;flex-direction:column;gap:12px}.pov-side{display:flex;flex-direction:column;gap:12px}
.pov h4{margin:0 0 8px;font-size:11.5px;text-transform:uppercase;letter-spacing:.08em;color:#8a6000;display:flex;align-items:center;gap:6px}
.pov h4 svg{background:#002147;color:#F2C14E;border-radius:6px;padding:3px;width:21px;height:21px}
.pov-sec,.pov-media,.pov-place{background:#fff;border:1px solid #e3e8f0;border-radius:16px;padding:12px 14px}
.ptiles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}
.ptile{background:#f8fafc;border:1px solid #eef2f7;border-radius:10px;padding:7px 10px;min-width:0}.ptile.w2{grid-column:span 2}
.ptile span{display:block;font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.06em;color:#8a96a8}
.ptile b{display:block;font-size:13px;color:#002147;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ptile.miss{background:#fffbeb;border-color:#fde68a}.ptile.miss b{color:#b45309;font-weight:600;font-style:italic}
.pm-row{display:grid;grid-template-columns:110px 1fr;gap:12px;align-items:start}
.pm-ph{width:110px!important;aspect-ratio:4/5;border-radius:12px!important;overflow:hidden;background:repeating-conic-gradient(#f1f5f9 0 25%,#fff 0 50%) 0 0/14px 14px!important;border:2px solid #F2C14E!important;display:grid;place-items:center}
.pm-ph img{width:100%;height:100%;object-fit:cover}.pm-ph span,.pm-sgbox span{font-size:11.5px;color:#8a96a8;text-align:center}
.pm-sg{display:flex;flex-direction:column;gap:6px}.pm-sgbox{width:100%;height:70px;border-radius:10px!important;border:1.5px dashed #c9d3e0!important;background:repeating-conic-gradient(#f1f5f9 0 25%,#fff 0 50%) 0 0/12px 12px!important;display:grid!important;place-items:center}
.pm-sgbox img{max-height:62px;max-width:95%;object-fit:contain}.pm-sg small{font-size:11px;color:#5b6b7f;text-align:center}.pm-sg form{margin:0}
.pm-phone{width:100%;justify-content:center;font-size:12px!important;padding:8px!important}
.pov-place{display:flex;flex-direction:column;gap:5px;font-size:12.5px}.pov-place b{color:#002147;font-size:14px}.pov-place span{color:#5b6b7f}.pov-place .pill{align-self:flex-start}.pov-place a{font-weight:800;color:#8a6000;margin-top:2px}
@media(max-width:820px){.pov{grid-template-columns:1fr}.ptiles{grid-template-columns:repeat(2,minmax(0,1fr))}}
.ptile.w3{grid-column:1/-1}

/* ================= Nyaraka (profile) ================= */
.dv{display:grid;grid-template-columns:260px minmax(0,1fr);gap:14px;align-items:start}
.dv-list{display:flex;flex-direction:column;gap:8px;position:sticky;top:0}
.dv-item{display:grid!important;grid-template-columns:auto 1fr auto;gap:10px;align-items:center;text-align:left;background:#fff!important;color:#0f1d2e!important;border:1.5px solid #e3e8f0!important;border-radius:14px!important;padding:10px 12px!important;box-shadow:none!important}
.dv-item:hover{border-color:#F2C14E!important}.dv-item.on{border-color:#002147!important;box-shadow:0 0 0 3px rgba(242,193,78,.45)!important;background:#fffdf4!important}
.dv-ic{width:36px;height:36px;border-radius:10px;display:grid;place-items:center;background:#002147;color:#F2C14E}
.dv-t b{display:block;font-size:13.5px;color:#002147}.dv-t small{display:block;font-size:11.5px;color:#5b6b7f;font-weight:500}
.dv-st{font-size:11px;font-weight:800;border-radius:99px;padding:3px 9px}.dv-st.ok{background:#dcfce7;color:#166534}.dv-st.draft{background:#fef3c7;color:#92400e}
.dv-all{font-size:12px;line-height:1.5;color:#5b6b7f;background:#f8fafc;border:1px dashed #d6dfeb;border-radius:12px;padding:10px 12px}.dv-all.ok{background:#f0fdf4;border:1px solid #86efac;color:#166534;font-weight:700}
.dv-view{background:#fff;border:1px solid #e3e8f0;border-radius:16px;overflow:hidden}
.dv-bar{display:flex;align-items:center;gap:6px;flex-wrap:wrap;padding:10px 12px;border-bottom:1px solid #e3e8f0;background:#f8fafc}.dv-bar b{color:#002147}.dv-bar .button{padding:6px 10px!important;font-size:12px!important}.dv-bar [hidden]{display:none!important}
.dv-frame{background:repeating-linear-gradient(45deg,#eef2f7 0 12px,#f6f8fb 12px 24px);padding:12px}
.dv-frame iframe{display:block;width:100%;height:min(78vh,820px);border:0;background:transparent}
@media(max-width:900px){.dv{grid-template-columns:1fr}.dv-list{position:static}}
.dv-links{display:flex;gap:6px;margin:-4px 0 2px 58px}.dv-links a{font-size:11px;font-weight:800;color:#8a6000;text-decoration:none}.dv-links a:hover{text-decoration:underline}

/* ===== Profile: vitendo vikuu (Hariri / Kitambulisho / Barua) ===== */
.pact{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;padding:16px 20px;background:linear-gradient(180deg,#f6f9fd,#fff);border-bottom:1px solid var(--line)}
.pact .pa{display:flex;align-items:center;gap:12px;padding:13px 14px;border-radius:16px;background:#fff;border:1.5px solid var(--line);color:var(--navy);text-decoration:none;transition:transform .15s,box-shadow .15s,border-color .15s;min-width:0}
.pact .pa:hover{transform:translateY(-2px);box-shadow:0 10px 22px rgba(0,33,71,.12);border-color:#c8a43c;text-decoration:none}
.pact .pa-i{width:44px;height:44px;flex:none;border-radius:13px;display:grid;place-items:center;background:#002147;color:#F2C14E;box-shadow:inset 0 0 0 1.5px rgba(242,193,78,.45)}
.pact .pa b{display:block;font-size:14px;line-height:1.2}.pact .pa small{display:block;font-size:11.5px;color:var(--muted);margin-top:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.pact .pa.on{background:linear-gradient(135deg,#002147,#0b3a78);border-color:#002147;color:#fff}.pact .pa.on .pa-i{background:#F2C14E;color:#002147}.pact .pa.on small{color:#cfe0f5}
@media(max-width:1100px){.pact{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:560px){.pact{grid-template-columns:1fr;padding:12px}}

/* ===== Ukurasa wa Tengeneza kitambulisho / Hariri profile ===== */
.kt-head{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:14px}
.kt-who{display:flex;align-items:center;gap:14px}.kt-who h1{margin:2px 0 4px;font-size:24px}.kt-who p{margin:0;color:var(--muted);font-size:13px}
.kt-av{width:60px;height:60px;border-radius:16px;object-fit:cover;object-position:top;background:#eef3f9;border:2px solid #F2C14E;flex:none}.kt-av.ini{display:grid;place-items:center;background:#002147;color:#F2C14E;font-weight:800;font-size:20px}
.kt-check{display:flex;flex-wrap:wrap;align-items:center;gap:8px;padding:12px 14px;background:#fff;border:1px solid var(--line);border-radius:14px;margin-bottom:14px}
.kt-check .rc{padding:6px 11px;border-radius:99px;font-size:12.5px;font-weight:700}.kt-check .rc.ok{background:#e3f6ea;color:#17663a}.kt-check .rc.bad{background:#fdecec;color:#a52121}
.kt-check small{flex-basis:100%;color:#a52121;font-size:12px}.kt-check small.okt{color:#17663a}
.kt-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(320px,1fr);gap:16px;align-items:start}
.kt-ch{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}.kt-ch h2{margin:0}
.kt-card .idprev{margin:12px 0 16px}.kt-idform h3{font-size:14px;margin:4px 0 10px;color:var(--navy)}
.kt-media{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:12px}.kt-media figure{margin:0;display:flex;flex-direction:column;gap:8px}
.kt-media .portrait-box,.kt-media .sig-box{height:200px!important;width:auto!important;aspect-ratio:auto!important;border-radius:14px;border:1px dashed #b9c6d8;display:grid;place-items:center;overflow:hidden;background:repeating-conic-gradient(#eef2f7 0 25%,#fff 0 50%) 0 0/16px 16px;color:var(--muted);font-size:12.5px;text-align:center}
.kt-media .portrait-box img,.kt-media .sig-box img{max-width:100%;max-height:100%;object-fit:contain}.kt-media .portrait-box{margin:0!important;padding:0!important}.kt-media .portrait-box img{width:auto!important;height:auto!important;object-fit:contain!important}.kt-media figcaption{display:flex;justify-content:space-between;align-items:center;font-weight:700;font-size:13px;color:var(--navy)}
.kt-phone{width:100%;padding:14px;font-size:15px;display:flex;align-items:center;justify-content:center;gap:8px}.kt-hint{font-size:12px;margin:6px 0 10px}
.kt-up summary{cursor:pointer;font-weight:700;color:var(--navy);font-size:13px;padding:8px 0}.kt-up form{margin-top:8px}
.kt-edit{max-width:1100px}
@media(max-width:1000px){.kt-grid{grid-template-columns:1fr}}@media(max-width:520px){.kt-media{grid-template-columns:1fr}}
.pov-docs ul{list-style:none;margin:6px 0 0;padding:0;display:grid;gap:8px}.pov-docs li{display:flex;align-items:center;gap:10px;padding:9px 10px;border:1px solid var(--line);border-radius:12px;background:#fbfcfe}
.pov-docs li div{flex:1;min-width:0}.pov-docs li b{display:block;font-size:13px;color:var(--navy)}.pov-docs li small{display:block;font-size:11.5px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.pov-docs li a{font-size:12px;font-weight:700;color:#8a6a12;white-space:nowrap}.pov-docs .dd{width:26px;height:26px;flex:none;border-radius:50%;display:grid;place-items:center;font-weight:800;font-size:13px}.pov-docs .dd.ok{background:#e3f6ea;color:#17663a}.pov-docs .dd.wait{background:#fff4d6;color:#8a6a12}
.kt-card .idprev iframe{height:250px!important;min-height:0!important}.kt-card .idprev{min-height:0!important;height:auto!important}

/* ===== Usafi wa data ===== */
.us-hero{display:grid;grid-template-columns:260px 1fr;gap:14px;margin-bottom:16px}
.us-big{background:linear-gradient(135deg,#7f1d1d,#b91c1c);color:#fff;border-radius:18px;padding:18px 20px;display:flex;flex-direction:column;justify-content:center;box-shadow:0 10px 24px rgba(127,29,29,.25)}.us-big.ok{background:linear-gradient(135deg,#14532d,#16a34a)}
.us-big b{font-size:40px;line-height:1}.us-big span{font-weight:700;margin-top:4px}.us-big small{opacity:.85;margin-top:4px}
.us-miss{background:#fff;border:1px solid var(--line);border-radius:18px;padding:14px 16px}.us-miss h3{font-size:13px;margin:0 0 10px;color:var(--navy)}
.us-miss>div{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px}.us-miss a{border-radius:12px;padding:10px;text-decoration:none;border:1px solid var(--line);display:flex;flex-direction:column}
.us-miss a b{font-size:22px}.us-miss a span{font-size:11.5px;color:var(--muted)}.us-miss a.bad{background:#fff6f6;border-color:#f5c2c2}.us-miss a.bad b{color:#b91c1c}.us-miss a.ok b{color:#17663a}
.us-wrap{display:grid;grid-template-columns:290px minmax(0,1fr);gap:14px;align-items:start}
.us-nav{position:sticky;top:80px;background:#fff;border:1px solid var(--line);border-radius:18px;padding:10px;display:flex;flex-direction:column;gap:3px;max-height:calc(100vh - 100px);overflow:auto}
.us-nav .us-g{font-size:10.5px;letter-spacing:.9px;text-transform:uppercase;color:#8a6a12;font-weight:800;margin:10px 8px 4px}
.us-nav a{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:8px 10px;border-radius:10px;color:var(--navy);text-decoration:none;font-size:13px}
.us-nav a b{min-width:28px;text-align:center;border-radius:99px;padding:2px 7px;background:#fdecec;color:#a52121;font-size:12px}.us-nav a.zero{color:var(--muted)}.us-nav a.zero b{background:#e3f6ea;color:#17663a}
.us-nav a:hover{background:#f3f6fb}.us-nav a.on{background:#002147;color:#fff}.us-nav a.on b{background:#F2C14E;color:#002147}
.us-h{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;align-items:flex-start}.us-h h2{margin:0}.us-h p{margin:4px 0 0;font-size:12.5px}
.us-h .seg a{padding:7px 12px;border-radius:9px;text-decoration:none;color:var(--navy);font-size:12.5px;font-weight:700}.us-h .seg a.on{background:#002147;color:#F2C14E}
.us-d{font-size:12.5px;max-width:520px}.us-d small{display:block;color:#17663a;margin-top:3px}
.us-act{display:flex;flex-direction:column;gap:5px;align-items:stretch;width:120px}.us-act .mini-act{justify-content:center;text-align:center;width:100%}.us-act form button{width:100%}.us-act form{display:flex;gap:6px;margin:0}.us-note{width:140px;padding:6px 8px!important;font-size:12px!important}
@media(max-width:1100px){.us-wrap,.us-hero{grid-template-columns:1fr}.us-nav{position:static;max-height:none}.us-miss>div{grid-template-columns:repeat(3,1fr)}}

/* Maboresho ya dashboard/PRF juu ya styles za profile, kitambulisho na usafi. */
.regpanel{--rp-blue:#6485aa;--rp-bronze:#b59865;--rp-teal:#53958b;--rp-muted:#e9eef3}
.regpanel .k0{background:var(--rp-muted)}.regpanel .k1{background:var(--rp-blue)}.regpanel .k2{background:var(--rp-bronze)}.regpanel .k3{background:var(--rp-teal)}
.regpanel .rp-track{height:22px;display:flex;align-items:center}
.regpanel .rp-bar{height:20px;background:var(--rp-muted);border-radius:6px;display:flex;flex-direction:column;justify-content:center;gap:2px;animation:none;transform-origin:left}
.regpanel .rp-bar i{position:static;display:block;height:4px;min-height:4px;max-width:100%;border-radius:3px;flex:none}
.regpanel .rp-pc{background:#eef3f6;color:#4a6175;border:1px solid #e1e8ee;padding:3px 0}
.regpanel .rp-row:hover,.regpanel .rp-row:focus-visible{background:#f1f5f8}
.regpanel .rp-row:focus-visible{outline:2px solid #6485aa;outline-offset:2px}
.regpanel .rp-tip{background:#fff;color:#42556a;border:1px solid #dce5ed;box-shadow:0 12px 30px rgba(31,57,78,.14);pointer-events:none}
.regpanel .rp-tip>b,.regpanel .rp-tip span b{color:#263e56}
.regpanel .rp-row:focus-visible .rp-tip{display:flex}
.regpanel .rp-name em{background:#edf3f7;color:#58718a}
.regpanel .rp-tools button.on{background:#e0e9f1!important;color:#27445e!important}
#mark-dlg h2{color:#27445e}.undo-dlg::backdrop{background:rgba(18,35,52,.38);backdrop-filter:blur(2px)}
.undo-dlg form{display:flex;flex-direction:column;gap:10px}.undo-dlg label{display:flex;flex-direction:column;gap:5px}.undo-dlg label.check{flex-direction:row;align-items:flex-start}.undo-dlg .modal-footer{display:flex;justify-content:flex-end;gap:8px;flex-wrap:wrap;margin-top:8px}
.undo-dlg .ud-deps{max-height:240px;overflow:auto}.undo-dlg .prf-ids{display:none}
@keyframes rp-soft-enter{from{opacity:.35;transform:scaleX(.92)}to{opacity:1;transform:scaleX(1)}}
@media(prefers-reduced-motion:no-preference){.regpanel .rp-enter .rp-bar{animation:rp-soft-enter .45s ease-out var(--rp-delay,0ms) both}.regpanel .rp-row{transition:background .16s ease}}
@media(prefers-reduced-motion:reduce){.regpanel .rp-bar,.regpanel .rp-row{animation:none!important;transition:none!important}}
@media(max-width:600px){.regpanel .rp-row{grid-template-columns:minmax(108px,1fr) minmax(60px,1fr) 32px 38px;gap:6px;padding:7px 4px}.regpanel .rp-tip{left:8px;right:8px;min-width:0}.rp-tools{gap:6px}.undo-dlg{padding:18px}}
@media print{.regpanel .rp-tip{display:none!important}.regpanel .rp-bar{animation:none!important}}

/* PRF quick mark: light surface, readable fields and a distinct action. */
main .quick.prf-quick{display:grid;grid-template-columns:minmax(240px,1.15fr) minmax(180px,1fr) minmax(180px,1fr) auto;gap:16px;align-items:end;background:linear-gradient(120deg,#fff,#f3f8fb);color:#27445e;border:1px solid #d8e4ec;border-top:3px solid #4f8e82;border-radius:16px;padding:20px;margin-bottom:20px;box-shadow:0 5px 16px rgba(31,57,78,.05)}
main .prf-quick h2{grid-column:1/-1;display:flex;align-items:center;gap:10px;color:#27445e;margin:0;font-size:16px}
main .prf-quick h2::before{content:'✓';display:grid;place-items:center;width:28px;height:28px;border-radius:9px;background:#e5f2ed;color:#276554;font-size:16px}
main .prf-quick label{min-width:0;color:#4a6073;font-size:12px;font-weight:600;margin:0}
main .prf-quick label input{display:block;width:100%;min-height:44px;margin:7px 0 0;background:#fff;border:1px solid #c8d7e1;border-radius:10px;color:#263e56;box-shadow:none}
main .prf-quick label input:focus{border-color:#488575;outline:3px solid rgba(72,133,117,.15);outline-offset:1px}
main .prf-quick>button.prf-submit{min-height:44px;padding:11px 18px;border-radius:10px;background:#276554!important;color:#fff!important;border:1px solid #276554!important;box-shadow:0 3px 8px rgba(39,101,84,.13);white-space:nowrap;filter:none;transition:background .16s ease,box-shadow .16s ease}
main .prf-quick>button.prf-submit:hover{background:#1f5446!important;border-color:#1f5446!important;box-shadow:0 4px 12px rgba(39,101,84,.22)}
main .prf-quick>button.prf-submit:focus-visible{outline:3px solid #90b8aa;outline-offset:3px}
main .prf-quick>button.prf-submit:active{box-shadow:none}
.prf-quick .prf-check{display:grid;place-items:center;width:21px;height:21px;border-radius:50%;background:rgba(255,255,255,.16);font-weight:800}
main .prf-quick .sg-chosen{background:#edf5f1;border:1px solid #c9dfd3;color:#274c3e;border-radius:10px;padding:9px 10px;gap:7px;line-height:1.5}
main .prf-quick .sg-chosen button{display:inline-flex;align-items:center;justify-content:center;flex:none;width:24px;height:24px;min-height:24px;margin-left:auto;padding:0;border:0!important;border-radius:50%;background:#dbeae2!important;color:#365e4a!important;box-shadow:none;filter:none}
@media(max-width:1100px){main .quick.prf-quick{grid-template-columns:repeat(2,minmax(0,1fr))}main .prf-quick>button.prf-submit{width:100%}}
@media(max-width:600px){main .quick.prf-quick{grid-template-columns:1fr;padding:16px;gap:14px}main .prf-quick h2{grid-column:1}main .prf-quick>button.prf-submit{margin-top:2px}}
@media(prefers-reduced-motion:reduce){main .prf-quick>button.prf-submit{transition:none}}
/* Profile: nafasi pana na maandishi kamili ndani ya blocks. */
.recruit-drawer{width:min(1200px,96vw)}
.recruit-profile .pact{grid-template-columns:repeat(auto-fit,minmax(min(100%,245px),1fr));align-items:stretch}
.recruit-profile .pact .pa{min-width:0;height:100%;align-items:center}
.recruit-profile .pact .pa>span:last-child{flex:1;min-width:0}
.recruit-profile .pact .pa b,.recruit-profile .pact .pa small{white-space:normal;overflow:visible;text-overflow:clip;overflow-wrap:anywhere;line-height:1.45}
.recruit-profile :is(.ph-id,.phs,.pkpi,.pov-main,.pov-side,.pf-step>div,.pov-docs li div){min-width:0}
.recruit-profile :is(.ph-id h3,.ph-rank,.ph-badges span,.pk-v,.pk-l,.pk-s,.pf-step b,.pf-step small,.pov-place,.ptile b,.pov-docs li small){overflow-wrap:anywhere;white-space:normal;text-overflow:clip}
.recruit-profile .ptile b,.recruit-profile .pov-docs li small{overflow:visible}
.recruit-profile .tabs{flex-wrap:wrap}
.recruit-profile .tab{white-space:normal}
@media(max-width:760px){.recruit-drawer{width:100vw}.recruit-profile .pact{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:14px}.recruit-profile .pact .pa{padding:12px;gap:9px}.recruit-profile .pact .pa-i{width:36px;height:36px}}
@media(max-width:560px){.recruit-profile .pact{grid-template-columns:1fr}.recruit-profile .pov{grid-template-columns:minmax(0,1fr)}}

/* Ukurasa wa simu (2026-10-07): kila kitu kinatoshea skrini, picha na sahihi vina ukubwa sawa */
.pp-head{margin-bottom:8px}.pp-head h1{font-size:20px;margin:0}.pp-status{margin-bottom:10px;padding:8px 12px}
.pp-grid{grid-template-columns:minmax(220px,.8fr) 1fr 1fr;align-items:start}
.pp-card{padding:14px;gap:8px}
.prev.ph,.prev.sg{flex:none;aspect-ratio:4/5;height:min(calc(100vh - 470px),340px);min-height:180px;width:auto;max-width:100%;margin:0 auto}
.content:has(.pp-grid){padding-bottom:10px}.pp-head{gap:10px}.pp-head .pp-av{width:44px;height:44px}.pp-head p{margin:2px 0 0;font-size:12.5px}.pp-head .eyebrow{font-size:10px}
.qrwrap img{width:min(170px,100%)}.qurl{font-size:11px;word-break:break-all}
.connected-big{padding:4px 0}.connected-big .big-ic{width:52px;height:52px}
.help-mini{margin:4px 0 0;font-size:12px;color:#5b6b7f;line-height:1.5}
.content:has(.pp-grid) .pagetabs{display:none}
.pp-card .pp-full{margin:0;padding:6px 10px;font-size:12px;line-height:1.35}

/* Ripoti (2026-10-07): kila kundi lina rangi yake */
.rh-card{--c:#002147;--s:#f1f5fb;position:relative;overflow:hidden;border-top:0;background:linear-gradient(180deg,var(--s) 0,#fff 62%)}
.rh-card::before{content:"";position:absolute;left:0;right:0;top:0;height:5px;background:linear-gradient(90deg,var(--c),color-mix(in srgb,var(--c) 55%,#F2C14E))}
.rh-card::after{content:"";position:absolute;right:-38px;top:-38px;width:120px;height:120px;border-radius:50%;background:var(--c);opacity:.07;pointer-events:none}
.rh-card .rc-ic{background:var(--c)!important;color:#fff!important;box-shadow:0 6px 14px color-mix(in srgb,var(--c) 35%,transparent)}
.rh-card .rc-grp{color:var(--c)}
.rh-card h3 a{color:#0f1f33}.rh-card:hover{border-color:var(--c);box-shadow:0 18px 36px color-mix(in srgb,var(--c) 22%,transparent)}
.rh-card .rc-act .button:not(.secondary){background:var(--c);border-color:var(--c);color:#fff}
.rh-card .rc-act .button.secondary{border-color:color-mix(in srgb,var(--c) 30%,#e3e8f0);color:var(--c)}
.rh-card .rc-act .button.secondary:hover{background:var(--s)}
.rh-card.alt{border-style:solid;background:linear-gradient(180deg,var(--s) 0,#fff 62%)}
.rh-card[data-g=recruits]{--c:#2563eb;--s:#eef4ff}
.rh-card[data-g=vituo]{--c:#059669;--s:#ecfdf5}
.rh-card[data-g=ubora-wa-taarifa]{--c:#dc2626;--s:#fef2f2}
.rh-card[data-g=elimu]{--c:#7c3aed;--s:#f5f3ff}
.rh-card[data-g=barua]{--c:#d97706;--s:#fffbeb}
.rh-card[data-g=vitambulisho]{--c:#0891b2;--s:#ecfeff}
.rh-card[data-g=utendaji]{--c:#db2777;--s:#fdf2f8}
.rh-card[data-g=takwimu]{--c:#4f46e5;--s:#eef2ff}
.rh-kpis a{--c:#002147;border-top:0;background:linear-gradient(160deg,color-mix(in srgb,var(--c) 9%,#fff),#fff 70%)}
.rh-kpis .ri{background:var(--c)!important;color:#fff!important}.rh-kpis b{color:var(--c)}
.rh-kpis i{background:linear-gradient(90deg,var(--c),#F2C14E)!important;height:5px}

/* Hali ya Recruit aliyechaguliwa: PRF, barua ya ajira, kituo (2026-10-07) */
.sg-chosen.sg-card{display:block;background:#fff!important;color:#0f1f33!important;border:1.5px solid #e3e8f0!important;border-radius:14px!important;padding:12px 14px!important;margin-top:8px!important;font-size:13px!important;box-shadow:0 6px 18px rgba(0,20,40,.08)}
.sg-card .sgc-top{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.sg-card .sgc-top b{font-size:14px;color:#002147}.sg-card .sgc-top span{color:#5b6b7f;font-size:12px}
.sg-card .sgc-top button{margin-left:auto;color:#5b6b7f!important;width:28px;height:28px;border-radius:50%!important;background:#f1f5f9!important}
.sgc-st{display:grid;grid-template-columns:1fr;gap:6px;margin-top:10px}.sgs{padding:7px 10px!important}.sgs>span{display:flex!important;align-items:baseline;gap:8px;flex-wrap:wrap}.sgs small{min-width:96px}.sgs b{white-space:normal!important}
.sgs{display:flex;align-items:center;gap:8px;border-radius:10px;padding:8px 10px;min-width:0}
.sgs i{flex:none;width:24px;height:24px;border-radius:50%;display:grid;place-items:center;font-style:normal;font-weight:900;color:#fff}
.sgs small{display:block;font-size:10px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;opacity:.75}.sgs b{display:block;font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sgs>span{min-width:0}
.sgs.ok{background:#ecfdf5;color:#166534}.sgs.ok i{background:#16a34a}
.sgs.no{background:#fff7ed;color:#9a3412}.sgs.no i{background:#ea580c}
.sgc-warn{margin-top:10px;padding:8px 10px;border-radius:10px;background:#fef9c3;color:#854d0e;font-weight:700;font-size:12.5px}
.sg-dots{display:flex;gap:4px;flex:none}.sg-dots em{font-style:normal;font-size:10.5px;font-weight:800;padding:2px 7px;border-radius:999px}.sg-dots em.ok{background:#dcfce7;color:#166534}.sg-dots em.no{background:#f1f5f9;color:#94a3b8}


.as-row{display:flex;align-items:center;gap:14px;flex-wrap:wrap}.as-state{font-size:12.5px;font-weight:700;color:#5b6b7f;padding:6px 10px;border-radius:999px;background:#f1f5f9}
.as-state.ok{background:#dcfce7;color:#166534}.as-state.wait{background:#fef9c3;color:#854d0e}.as-state.err{background:#fee2e2;color:#991b1b}
.pagination{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.pagination .pg-edge.dis{opacity:.4;pointer-events:none}
.pg-jump{display:flex;align-items:center;gap:6px;margin-left:auto}.pg-jump label{display:flex;align-items:center;gap:6px;font-weight:700;font-size:12.5px;color:#334155;margin:0}
.pg-jump input{width:76px!important;min-height:34px!important;padding:4px 8px!important;border-radius:9px!important;text-align:center;font-weight:800}
.pg-jump button{min-height:34px!important;padding:6px 14px!important;border-radius:9px!important;font-weight:800}

.dv-issue{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin:0 0 10px;padding:12px 14px;border-radius:14px;border:1.5px solid #e3e8f0;background:#f8fafc;font-size:13px}
.dv-issue small{display:block;color:#5b6b7f;margin-top:2px}.dv-issue ul{margin:6px 0 0;padding-left:18px;line-height:1.6}
.dv-issue.ready{background:#f0fdf4;border-color:#86efac;color:#166534}.dv-issue.blocked{background:#fff7ed;border-color:#fed7aa;color:#9a3412}
.dv-issue>div{flex:1;min-width:220px}
.dv-issue .di-go{min-height:46px;padding:10px 20px;border-radius:12px;border:0;font-weight:800;font-size:14.5px;cursor:pointer;background:linear-gradient(135deg,#16a34a,#15803d)!important;color:#fff!important;box-shadow:0 8px 18px rgba(22,163,74,.28);transition:transform .15s,filter .15s}
.dv-issue .di-go:hover{transform:translateY(-2px);filter:brightness(1.06)}.dv-issue .di-go:active{transform:translateY(1px) scale(.98)}
.dv-issue .di-fix{background:#ea580c!important;border-color:#ea580c!important;color:#fff!important}
.dv-issue .di-form{display:flex;align-items:center;gap:14px;flex-wrap:wrap;width:100%;margin:0}.dv-issue .di-form>div{flex:1;min-width:220px}.di-reason{display:flex;flex-direction:column;gap:4px;margin-top:8px;font-weight:700;font-size:12px}.di-reason input{min-height:36px}
.dv-view.is-kadi .dv-frame iframe{height:300px}
.dv-view.is-kadi .dv-frame{padding:10px 12px}
.dv-view.is-kadi{align-self:start}.dv-view.is-kadi .dv-frame iframe{height:auto;min-height:180px}
.back-btn{display:inline-flex;align-items:center;gap:6px;margin:0 0 10px;padding:7px 14px;border-radius:999px;background:#fff;border:1.5px solid #dbe3ee;color:#002147;font-weight:800;font-size:13px;text-decoration:none;box-shadow:0 2px 8px rgba(0,20,40,.06);transition:transform .15s,box-shadow .15s,background .15s}
.back-btn:hover{transform:translateX(-2px);background:#f1f5fb;box-shadow:0 6px 14px rgba(0,20,40,.1);text-decoration:none}.back-btn:active{transform:translateX(0) scale(.97)}
.back-btn span{font-size:16px;line-height:1}
.back-btn.inline{margin:0}
/* Profile: vitalu vya juu (Force No., Jinsia, Intake, Elimu, Damu, Revision) vyenye rangi na effects */
.ph-stats{gap:10px!important;background:transparent!important;border:0!important;overflow:visible!important}
.ph-stats .phs{--c:#60a5fa;position:relative;overflow:hidden;border-radius:14px!important;padding:11px 13px 12px!important;background:linear-gradient(150deg,color-mix(in srgb,var(--c) 30%,rgba(11,31,91,.55)),rgba(11,31,91,.5) 70%)!important;border:1px solid color-mix(in srgb,var(--c) 45%,transparent)!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.08);transition:transform .18s,box-shadow .18s,border-color .18s;animation:phsIn .45s ease both}
.ph-stats .phs::before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:var(--c);box-shadow:0 0 14px var(--c)}
.ph-stats .phs::after{content:"";position:absolute;right:-26px;top:-26px;width:70px;height:70px;border-radius:50%;background:var(--c);opacity:.16;transition:transform .3s}
.ph-stats .phs:hover{transform:translateY(-3px);box-shadow:0 12px 26px rgba(0,0,0,.35),0 0 0 1px var(--c);border-color:var(--c)!important}
.ph-stats .phs:hover::after{transform:scale(1.5)}
.ph-stats .phs span{color:color-mix(in srgb,var(--c) 55%,#dbe7f8)!important;font-weight:800}
.ph-stats .phs b{font-size:15px!important;color:#fff!important;text-shadow:0 1px 8px rgba(0,0,0,.25)}
.ph-stats .phs:nth-child(1){--c:#F2C14E;animation-delay:.02s}.ph-stats .phs:nth-child(2){--c:#f472b6;animation-delay:.06s}.ph-stats .phs:nth-child(3){--c:#38bdf8;animation-delay:.1s}
.ph-stats .phs:nth-child(4){--c:#a78bfa;animation-delay:.14s}.ph-stats .phs:nth-child(5){--c:#f87171;animation-delay:.18s}.ph-stats .phs:nth-child(6){--c:#34d399;animation-delay:.22s}
@keyframes phsIn{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
@media (prefers-reduced-motion:reduce){.ph-stats .phs{animation:none}}
/* Ukamilifu: kama taa za barabarani, nyekundu -> njano -> kijani */
.phm-bar{background:rgba(255,255,255,.12)!important;height:9px!important;border-radius:999px!important;overflow:hidden}
.phm-bar i.tl{display:block;height:100%;border-radius:999px;background:linear-gradient(90deg,#ef4444 0%,#f97316 30%,#facc15 55%,#84cc16 78%,#22c55e 100%)!important;background-size:var(--bs,100%) 100%!important;background-repeat:no-repeat;box-shadow:0 0 12px rgba(250,204,21,.35);animation:tlGrow .9s cubic-bezier(.2,.8,.2,1) both}
@keyframes tlGrow{from{max-width:0}to{max-width:100%}}

.dl-bar{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:-4px 0 14px;padding:12px 16px;border-radius:16px;background:linear-gradient(120deg,#002147,#0b3a78);color:#fff;box-shadow:0 10px 24px rgba(0,33,71,.18)}
.dl-bar .dl-t{flex:1;min-width:260px}.dl-bar .dl-t b{display:block;font-size:14.5px}.dl-bar .dl-t small{color:#cfe0f5;font-size:12px}.dl-bar code{background:rgba(255,255,255,.14);color:#F2C14E;padding:1px 6px;border-radius:6px}
.dl-bar .dl-b{min-height:44px;padding:10px 18px;border-radius:12px;border:0;font-weight:800;cursor:pointer;transition:transform .15s,filter .15s,box-shadow .15s}
.dl-bar .dl-b:hover{transform:translateY(-2px);filter:brightness(1.07)}.dl-bar .dl-b:active{transform:translateY(1px) scale(.97)}
.dl-bar .dl-pdf{background:linear-gradient(135deg,#F2C14E,#e0a82e)!important;color:#001428!important}.dl-bar .dl-word{background:#fff!important;color:#002147!important}

/* Paneli ya kupakua barua: laini, kijani iliyopauka */
.panel:has(> h2 + form[action$="/export"]){background:linear-gradient(160deg,#f2fbf5,#f8fafc 70%)!important;border:1.5px solid #cdebd8!important;box-shadow:0 6px 18px rgba(22,101,52,.06)!important}
.panel:has(> h2 + form[action$="/export"]) > h2{color:#166534!important}
.panel:has(> h2 + form[action$="/export"]) select{background-color:#fff!important;border-color:#cfe3d6!important}
.panel:has(> h2 + form[action$="/export"]) form button:not([type=button]){background:linear-gradient(135deg,#22c55e,#16a34a)!important;border-color:#16a34a!important;color:#fff!important;padding:10px 22px!important;border-radius:12px!important;box-shadow:0 8px 18px rgba(22,163,74,.25);transition:transform .15s,filter .15s}
.panel:has(> h2 + form[action$="/export"]) form button:not([type=button]):hover{transform:translateY(-2px);filter:brightness(1.06)}
.panel:has(> h2 + form[action$="/export"]) form button:not([type=button]):active{transform:translateY(1px) scale(.97)}
.panel:has(> h2 + form[action$="/export"]) .note{color:#3f6b52}
.top-actions{margin:0 0 12px!important;padding:10px 12px;border-radius:14px;background:#f8fafc;border:1px solid #e3e8f0;display:flex;align-items:center}

.scale-chips{display:flex;flex-wrap:wrap;gap:8px;margin:-4px 0 12px}
.scale-chips .sc{display:inline-flex;align-items:center;gap:7px;padding:7px 12px;border-radius:999px;background:#fff;border:1.5px solid #e3e8f0;color:#334155;font-weight:700;font-size:12.5px;text-decoration:none;transition:transform .15s,box-shadow .15s,background .15s}
.scale-chips .sc b{background:#f1f5f9;color:#0f1f33;border-radius:999px;padding:1px 8px;font-size:11.5px}
.scale-chips .sc:hover{transform:translateY(-2px);box-shadow:0 8px 18px rgba(0,20,40,.1);text-decoration:none}
.scale-chips .sc.g{border-color:#c7d2fe;color:#3730a3}.scale-chips .sc.t{border-color:#bbf7d0;color:#166534}
.scale-chips .sc.on{background:#002147;border-color:#002147;color:#fff}.scale-chips .sc.on b{background:#F2C14E;color:#002147}

/* Kadi ya hali ilale kwa urefu, chini ya fomu nzima */
.sg-chosen.sg-card{grid-column:1/-1;flex-basis:100%;width:100%;margin-top:12px!important;display:flex!important;align-items:center;gap:14px;flex-wrap:wrap}
.sg-card .sgc-top{flex:0 0 auto;min-width:220px;flex-direction:column;align-items:flex-start!important;gap:2px!important;position:relative;padding-right:34px}
.sg-card .sgc-top button{position:absolute;right:0;top:0}
.sgc-st{flex:1;display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:10px!important;margin:0!important;min-width:min(100%,520px)}
.sgs{flex-direction:row;align-items:center!important}.sgs>span{display:block!important}.sgs small{min-width:0!important}
.sgc-warn{flex-basis:100%;margin-top:0!important}
@media(max-width:900px){.sgc-st{grid-template-columns:1fr!important}}
/* Mistari ya majedwali: hover na iliyochaguliwa inaonekana wazi, maandishi hayafichwi (2026-10-07) */
.table-wrap tbody tr{transition:background-color .12s ease,box-shadow .12s ease}
.table-wrap tbody tr:hover>td{background:#fff4cc!important;color:inherit}
.table-wrap tbody tr:hover>td:first-child{box-shadow:inset 4px 0 0 #F2C14E}
.table-wrap tbody tr:has(input[name=ids]:checked)>td{background:#dbeafe!important}
.table-wrap tbody tr:has(input[name=ids]:checked)>td:first-child{box-shadow:inset 4px 0 0 #2563eb}
.table-wrap tbody tr:has(input[name=ids]:checked):hover>td{background:#cfe0fb!important}
.table-wrap tbody tr:hover :is(b,strong,a,small,span,code){opacity:1}

/* Akaunti: maandishi yabaki na contrast katika kila hali ya kitufe. */
.topbar button.userchip{background:#f5f8fc!important;color:#17334b!important;border:1px solid #dbe4ee!important;box-shadow:none;filter:none!important}
.topbar button.userchip:is(:hover,:focus-visible){background:#e8f0f9!important;color:#17334b!important;border-color:#9fb6d0!important;box-shadow:0 4px 12px #17334b14;transform:none!important}
.topbar button.userchip:active,.topbar button.userchip[aria-expanded="true"]{background:#dce9f7!important;color:#17334b!important;border-color:#6c94be!important;transform:none!important}
.topbar .userchip .un{color:#17334b!important;opacity:1!important}
.topbar .userchip .ur{color:#52677e!important;opacity:1!important}
.topbar .userchip .avatar{background:#002147!important;color:#f2c14e!important}
.topbar .userchip:focus-visible{outline:3px solid #608bb6;outline-offset:3px}

/* Vichwa vya columns vinafuata scroll ya ukurasa na ya jedwali. */
.sticky-table-head{position:fixed;z-index:39;overflow:hidden;background:#f5f8fc;border-bottom:2px solid #cad7e5;box-shadow:0 4px 10px #17334b12}
.sticky-table-head[hidden]{display:none!important}
.sticky-table-head table{table-layout:fixed;border-collapse:collapse;margin-top:0!important;margin-bottom:0!important}
.sticky-table-head :is(th,td){position:static!important;background:#f5f8fc!important;color:#3c526c!important;box-sizing:border-box}
@media print{.sticky-table-head{display:none!important}}

.sg-card .sgc-warn{background:#002147!important;color:#f2c14e!important;border:1px solid #002147;padding:10px 12px;line-height:1.5}
.sg-card .sgc-warn.sgc-problem{background:#b91c1c!important;color:#fff!important;border-color:#b91c1c}

.profile-prf-archive{padding:14px;border:1px solid var(--line);border-radius:12px;margin:12px 0}.profile-prf-archive h3{margin:0 0 8px;font-size:14px}.profile-prf-archive p{margin:8px 0;font-size:12px}.profile-prf-archive .activity{padding:8px 0}

/* Vichwa vya columns: light green na dark blue kwa list zote. */
main table thead :is(th,td),.sticky-table-head :is(th,td){background:#e2f3e8!important;color:#002147!important;border-bottom-color:#bedac8!important}
main table thead,.sticky-table-head{background:#e2f3e8!important}
main table thead :is(th,td) :is(a,span,small,strong,b),.sticky-table-head :is(th,td) :is(a,span,small,strong,b){color:#002147!important}

.tr-bar{display:flex;flex-direction:column;gap:6px;position:sticky;bottom:0;background:#fff;padding:8px 0 2px;z-index:5}.tr-hint{margin:0;font-size:12.5px;font-weight:700;color:#8a6000}.tr-go:not(:disabled){background:#15803d!important;color:#fff!important}
@media(max-width:1100px){.tr-bar{position:fixed;left:0;right:0;bottom:0;padding:10px 16px;box-shadow:0 -4px 14px rgba(0,0,0,.15);border-top:1px solid #e3e8f0}.tr-grid{padding-bottom:110px}}
.tr-block{background:#fef2f2!important;border:1.5px solid #fca5a5!important;color:#991b1b;margin-bottom:12px}.tr-block ul{margin:6px 0 0 18px}.tr-block a{font-weight:800;color:#002147}
.topbar .topclock{margin-right:14px;display:flex;align-items:center}
.lcd{position:relative;display:flex;align-items:center;gap:14px;padding:8px 18px 8px 16px;border-radius:16px;
 background:linear-gradient(135deg,rgba(255,255,255,.55),rgba(255,255,255,.18)),rgba(11,42,74,.22);
 -webkit-backdrop-filter:blur(16px) saturate(1.5);backdrop-filter:blur(16px) saturate(1.5);
 border:1px solid rgba(255,255,255,.55);box-shadow:0 4px 18px rgba(11,42,74,.12);overflow:hidden}
.lcd:before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(255,255,255,.35),rgba(255,255,255,0) 55%);pointer-events:none;border-radius:inherit}
.lcd-day{display:flex;flex-direction:column;line-height:1.1;min-width:86px;text-align:left;position:relative;z-index:1;padding-right:14px;border-right:1px solid rgba(11,42,74,.14)}
.lcd-day b{font:800 13px/1.1 Consolas,"Courier New",monospace;letter-spacing:.16em;color:#0891b2}
.lcd-day small{font:700 11px/1.2 Consolas,"Courier New",monospace;letter-spacing:.09em;color:#0b2a4a;opacity:.75;margin-top:3px}
.lcd-time{display:flex;align-items:center;gap:2px;position:relative;z-index:1}
.lcd .dg{width:15px;height:26px;display:block}.lcd .dg polygon{fill:rgba(11,42,74,.11);transition:fill .08s}
.lcd .dg polygon.on{fill:#e09a00;stroke:#e09a00;stroke-width:1.2;stroke-linejoin:round;filter:drop-shadow(0 0 2.5px rgba(245,180,40,.85))}
.lcd .col{width:4px;height:18px;margin:0 3px;background:radial-gradient(circle,#e09a00 55%,transparent 60%) 50% 25%/5px 7px no-repeat,radial-gradient(circle,#e09a00 55%,transparent 60%) 50% 75%/5px 7px no-repeat;animation:lcdblink 1s steps(1) infinite}
@keyframes lcdblink{50%{opacity:.2}}
.lcd .sec{display:flex;gap:1px;margin-left:8px;padding-left:8px;border-left:1px solid rgba(11,42,74,.14);align-items:flex-end}.lcd .sec .dg{width:10px;height:17px;margin-top:8px}
@media(prefers-reduced-motion:reduce){.lcd .col{animation:none}}
@media(max-width:1300px){.lcd-day{display:none}}

.lcd .lcd-day small{opacity:1!important;font-weight:800;color:#0b2a4a}.lcd .lcd-day b{color:#0780a0;font-weight:900;text-shadow:0 0 8px rgba(8,145,178,.35)}
/* saa: mandharinyuma ya navy ili tarakimu ziangaze */
.lcd{background:linear-gradient(180deg,#0f3a63,#0a2540)!important;border:1px solid #1d5a94!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.12),0 2px 8px rgba(8,30,56,.35)!important}
.lcd:before{background:linear-gradient(180deg,rgba(255,255,255,.10),rgba(255,255,255,0) 55%)!important}
.lcd .dg polygon{fill:rgba(255,255,255,.08)!important}
.lcd .dg polygon.on{fill:#ffc933!important;stroke:#ffc933!important;filter:drop-shadow(0 0 4px rgba(255,201,51,.95))!important}
.lcd .col{background:radial-gradient(circle,#ffc933 55%,transparent 60%) 50% 25%/5px 7px no-repeat,radial-gradient(circle,#ffc933 55%,transparent 60%) 50% 75%/5px 7px no-repeat!important}
.lcd .lcd-day{border-right-color:rgba(255,255,255,.22)!important}.lcd .sec{border-left-color:rgba(255,255,255,.22)!important}
.lcd .lcd-day small{color:#ffffff!important}.lcd .lcd-day b{color:#5fe3ff!important;text-shadow:0 0 8px rgba(95,227,255,.6)!important}

/* 11/11/2026: alama ya 'anashughulikiwa na mwingine' kwenye orodha - navy na dhahabu, bila kumeta */
.lockpill:not([hidden]){display:inline-flex;align-items:center;gap:5px;padding:3px 10px 3px 7px;border-radius:999px;background:#0b2545;color:#F2C14E;border:1px solid #d9b36a;font-size:11px;font-weight:800;letter-spacing:.2px;animation:none;box-shadow:0 1px 3px rgba(11,37,69,.2)}
.lockpill b{color:#fff;font-weight:800}
/* 12/11/2026: kibao cha 'anashughulikiwa na' (🔒 jina) kionekane bila hover; hover = maandishi meupe, background nyekundu */
html body .lockpill:not([hidden]){background:#0b2545!important;color:#F2C14E!important;border-color:#d9b36a!important;opacity:1!important;cursor:default;transition:background .15s,color .15s}
html body .lockpill:not([hidden]) b{color:#fff!important;opacity:1!important;visibility:visible!important}
html body .lockpill:not([hidden]):hover,html body a:hover .lockpill:not([hidden]),html body tr:hover .lockpill:not([hidden]):hover{background:#c62828!important;border-color:#c62828!important;color:#fff!important}
html body .lockpill:not([hidden]):hover b,html body a:hover .lockpill:not([hidden]) b{color:#fff!important}


/* ===== notifications.css ===== */
.app-notice-stack {
  position: fixed;
  right: 22px;
  top: 82px;
  width: min(460px, calc(100vw - 28px));
  max-height: calc(100vh - 105px);
  max-height: calc(100dvh - 105px);
  overflow-y: auto;
  display: flex;
  flex-direction: column;
  gap: 12px;
  z-index: 12000;
  pointer-events: none;
  padding: 3px 5px 12px;
}
.app-notice {
  --notice-color: #276554;
  --notice-bg: #f1faf5;
  --notice-line: #c5e1d2;
  display: grid;
  grid-template-columns: 40px minmax(0, 1fr) 30px;
  gap: 12px;
  align-items: start;
  flex: none;
  background: var(--notice-bg);
  color: var(--notice-color);
  border: 1px solid var(--notice-line);
  border-left: 4px solid var(--notice-color);
  border-radius: 14px;
  padding: 16px;
  box-shadow: 0 10px 28px rgba(24, 47, 67, 0.14);
  pointer-events: auto;
  font:
    14px/1.5 "Segoe UI",
    Arial,
    sans-serif;
  text-align: left;
  animation: app-notice-enter 0.2s ease-out;
}
.app-notice-error {
  --notice-color: #a52d39;
  --notice-bg: #fff5f5;
  --notice-line: #ebc8ce;
}
.app-notice-warning {
  --notice-color: #79551c;
  --notice-bg: #fff8e9;
  --notice-line: #ead8b1;
}
.app-notice-info {
  --notice-color: #2e607c;
  --notice-bg: #f2f8fc;
  --notice-line: #c8dfec;
}
.app-notice-icon {
  display: grid;
  place-items: center;
  width: 40px;
  height: 40px;
  border-radius: 50%;
  background: var(--notice-color);
  color: #fff;
  box-shadow: 0 3px 8px rgba(24, 47, 67, 0.1);
}
.app-notice svg,
.app-confirm-icon svg {
  width: 23px;
  height: 23px;
  fill: none;
  stroke: currentColor;
  stroke-width: 2.7;
  stroke-linecap: round;
  stroke-linejoin: round;
}
.app-notice-body strong {
  display: block;
  font-size: 14px;
  margin: 0 0 3px;
  color: var(--notice-color);
}
.app-notice-detail {
  font-size: 13px;
  color: var(--notice-color);
  line-height: 1.6;
  overflow-wrap: anywhere;
  white-space: pre-line;
}
.app-notice-detail a {
  color: inherit;
  text-decoration: underline;
}
button.app-notice-close {
  display: grid;
  place-items: center;
  padding: 0;
  width: 30px;
  height: 30px;
  min-height: 30px;
  border: 0 !important;
  border-radius: 8px;
  background: transparent !important;
  color: var(--notice-color) !important;
  box-shadow: none !important;
  filter: none;
  cursor: pointer;
}
.app-notice-close svg {
  width: 17px;
  height: 17px;
}
.app-notice-close:hover {
  background: rgba(24, 47, 67, 0.07) !important;
}
.app-notice-close:focus-visible {
  outline: 2px solid var(--notice-color);
  outline-offset: 2px;
}
.app-confirm {
  width: min(450px, calc(100vw - 28px));
  max-height: calc(100vh - 40px);
  max-height: calc(100dvh - 40px);
  overflow: auto;
  padding: 26px;
  border: 1px solid #d6e2ea;
  border-radius: 18px;
  background: #fff;
  color: #263f56;
  box-shadow: 0 24px 70px rgba(15, 36, 54, 0.25);
  font-family: "Segoe UI", Arial, sans-serif;
  text-align: left;
}
.app-confirm::backdrop {
  background: rgba(14, 34, 50, 0.46);
  backdrop-filter: blur(3px);
}
.app-confirm-icon {
  display: grid;
  place-items: center;
  width: 46px;
  height: 46px;
  border-radius: 13px;
  background: #fff1d8;
  color: #8b631f;
  margin-bottom: 16px;
}
.app-confirm h2 {
  color: #263f56;
  font-size: 19px;
  margin: 0 0 8px;
  line-height: 1.4;
}
.app-confirm p {
  font-size: 14px;
  line-height: 1.7;
  color: #4b6277;
  margin: 0 0 24px;
  white-space: pre-line;
  overflow-wrap: anywhere;
}
.app-confirm-actions {
  display: flex;
  justify-content: flex-end;
  gap: 10px;
  flex-wrap: wrap;
}
.app-confirm-actions button {
  min-height: 44px;
  padding: 10px 16px;
  border-radius: 10px;
  font-size: 13px;
  font-weight: 700;
  cursor: pointer;
  filter: none;
}
.app-confirm-actions .app-confirm-cancel {
  background: #fff;
  color: #35546c;
  border: 1px solid #cbd9e3;
}
.app-confirm-actions .app-confirm-accept {
  background: #276554;
  color: #fff;
  border: 1px solid #276554;
}
.app-confirm-actions .app-confirm-danger {
  background: #a52d39;
  border-color: #a52d39;
}
.app-confirm-actions button:hover {
  filter: brightness(0.96);
}
.app-confirm-actions button:focus-visible {
  outline: 3px solid #8cb3c5;
  outline-offset: 3px;
}
.app-confirm-fallback {
  position: fixed;
  inset: 50% auto auto 50%;
  transform: translate(-50%, -50%);
  margin: 0;
  z-index: 20000;
  box-shadow: 0 0 0 100vmax rgba(14, 34, 50, 0.46);
}
@keyframes app-notice-enter {
  from {
    opacity: 0;
    transform: translateY(-7px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
@media (max-width: 600px) {
  .app-notice-stack {
    top: 72px;
    right: 10px;
    width: calc(100vw - 20px);
    max-height: calc(100vh - 88px);
    max-height: calc(100dvh - 88px);
    gap: 8px;
  }
  .app-notice {
    grid-template-columns: 34px minmax(0, 1fr) 44px;
    gap: 10px;
    padding: 13px;
  }
  .app-notice-icon {
    width: 34px;
    height: 34px;
  }
  button.app-notice-close {
    width: 44px;
    height: 44px;
    min-height: 44px;
  }
  .app-confirm {
    padding: 22px;
  }
  .app-confirm-actions button {
    flex: 1;
  }
}
@media (prefers-reduced-motion: reduce) {
  .app-notice {
    animation: none;
  }
  .app-confirm::backdrop {
    backdrop-filter: none;
  }
}
@media print {
  .app-notice-stack,
  .app-notice,
  .app-confirm {
    display: none !important;
  }
}

.app-notice.app-notice-inline {
  grid-template-columns: 40px minmax(0, 1fr);
  margin: 20px 0;
  pointer-events: auto;
}

/* One consistent, touch-friendly feedback surface for desktop and phones. */
.app-notice{grid-template-columns:38px minmax(0,1fr) 48px;border-radius:18px;padding:14px;font-family:'Public Sans','Segoe UI',sans-serif;animation:app-notice-enter .18s ease-out}
.app-notice-body strong{font-size:15px;line-height:1.5}.app-notice-detail{font-size:14px;line-height:1.65}
button.app-notice-close{width:48px;height:48px;min-height:48px;border-radius:12px}
.app-confirm{border-radius:24px;padding:26px;font-family:'Public Sans','Segoe UI',sans-serif}
.app-confirm h2{font-size:22px;line-height:1.35;color:#082b42}.app-confirm p{font-size:15px;line-height:1.7;color:#526c7b}
.app-confirm-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.app-confirm-actions button{min-width:0;min-height:50px;height:auto;padding:12px 16px;border-radius:14px;white-space:normal;font-size:14px;line-height:1.5}
.app-confirm-accept{background:#082b42!important;color:#fff!important}.app-confirm-cancel{background:#edf3f6!important;color:#23495e!important;border:1px solid #dce6eb!important}
.app-confirm-danger{background:#a52d39!important}
@media(max-width:650px){
 .app-notice-stack{top:auto;bottom:calc(92px + env(safe-area-inset-bottom));right:10px;width:calc(100vw - 20px);max-height:42dvh;padding:0 0 4px;gap:8px}
 dialog .app-notice-stack{bottom:12px;max-height:35dvh}
 .app-notice{grid-template-columns:32px minmax(0,1fr) 48px;gap:9px;padding:12px;border-radius:18px;box-shadow:0 8px 24px #082b4218}
 .app-notice-icon{width:32px;height:32px}.app-notice-body strong{font-size:14px}.app-notice-detail{font-size:13px}
 .app-confirm{width:calc(100vw - 32px);max-height:calc(100dvh - 48px - env(safe-area-inset-bottom));padding:24px 20px}
 .app-confirm-actions{grid-template-columns:1fr;gap:10px}.app-confirm-actions button{width:100%;min-height:52px}
}
@media(prefers-reduced-motion:reduce){.app-notice{animation:none}}


/* 2026-10-30: taarifa KATIKATI ya skrini, maandishi makubwa, hupotea baada ya sekunde 5 (na mstari wa muda). */
.app-notice-stack,dialog .app-notice-stack{position:fixed!important;top:50%!important;left:50%!important;right:auto!important;bottom:auto!important;transform:translate(-50%,-50%)!important;width:min(600px,calc(100vw - 24px))!important;max-height:calc(100dvh - 32px)!important;gap:14px!important;padding:6px!important;align-items:stretch;z-index:2147483000!important;pointer-events:none!important;overflow:visible}
.app-notice-stack .app-notice{position:relative;overflow:hidden;grid-template-columns:54px minmax(0,1fr) 48px!important;gap:16px!important;align-items:center!important;padding:22px 16px 24px 20px!important;border-radius:22px!important;border-left-width:7px!important;box-shadow:0 28px 80px #0021475c,0 4px 14px #00214726!important;animation:app-notice-pop .22s ease-out!important;pointer-events:auto!important}
.app-notice-stack .app-notice-icon{width:54px!important;height:54px!important;border-radius:50%!important}
.app-notice-stack .app-notice svg{width:30px!important;height:30px!important}
.app-notice-stack .app-notice-close svg{width:20px!important;height:20px!important}
.app-notice-stack .app-notice .app-notice-body strong{font-size:20px!important;line-height:1.4!important;margin-bottom:4px!important}
.app-notice-stack .app-notice .app-notice-detail{font-size:17px!important;line-height:1.6!important;font-weight:600;color:var(--notice-color)!important}
.app-notice-stack .app-notice:not(.app-notice-inline)::after{content:"";position:absolute;left:0;bottom:0;height:5px;width:100%;background:var(--notice-color);opacity:.55;transform-origin:left center;animation:app-notice-count 2.5s linear forwards}
@keyframes app-notice-pop{from{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}
@keyframes app-notice-count{from{transform:scaleX(1)}to{transform:scaleX(0)}}
@media(max-width:650px){
 .app-notice-stack,dialog .app-notice-stack{top:50%!important;bottom:auto!important;right:auto!important;width:calc(100vw - 20px)!important;max-height:calc(100dvh - 24px)!important}
 .app-notice-stack .app-notice{grid-template-columns:44px minmax(0,1fr) 44px!important;gap:12px!important;padding:18px 10px 20px 14px!important}
 .app-notice-stack .app-notice-icon{width:44px!important;height:44px!important}
 .app-notice-stack .app-notice .app-notice-body strong{font-size:18px!important}
 .app-notice-stack .app-notice .app-notice-detail{font-size:16px!important}
}
@media(prefers-reduced-motion:reduce){.app-notice-stack .app-notice{animation:none!important}.app-notice-stack .app-notice::after{animation-duration:2.5s!important}}


/* ===== page-transitions.css ===== */
/* Short native motion: no libraries, no interaction delay or layout animation. */
@view-transition{navigation:auto}
@media(prefers-reduced-motion:no-preference){
 main>.content{animation:rd-page-enter .16s ease-out both}
 .app-notice{animation:app-notice-enter .18s ease-out}
 .app-confirm[open]{animation:rd-dialog-enter .18s ease-out}
 ::view-transition-old(root){animation:rd-page-out .10s ease-out both}
 ::view-transition-new(root){animation:rd-page-in .14s ease-out both}
 button,a.button,.ms-btn{transition:background-color .16s ease-out,border-color .16s ease-out,box-shadow .16s ease-out}
}
@keyframes rd-page-enter{from{opacity:.8;transform:translateY(4px)}to{opacity:1;transform:none}}
@keyframes rd-dialog-enter{from{opacity:0;transform:translateY(8px) scale(.98)}to{opacity:1;transform:none}}
@keyframes rd-page-out{to{opacity:0}}@keyframes rd-page-in{from{opacity:0}}
@media(hover:hover) and (pointer:fine){button:hover:not(:disabled),a.button:hover{transform:none!important;filter:none!important;box-shadow:0 4px 12px #082b4218}}
@media(hover:none){button:hover,a.button:hover{transform:none!important;filter:none!important}}
.live-ind i{animation:lsspin .9s linear infinite}.prfx .px-spin{animation:pxspin 1s linear infinite}
@media(prefers-reduced-motion:reduce){@view-transition{navigation:none}*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}::view-transition-group(*),::view-transition-old(*),::view-transition-new(*){animation:none!important}}
@media print{*,*::before,*::after{animation:none!important;transition:none!important}}


/* ===== multiselect.css ===== */
/* Multi-select ya filters (multiselect.js) */
.ms{position:relative;display:inline-flex;flex:0 1 200px;min-width:150px;max-width:280px}
.ms.wide{flex-basis:240px}
.ms .ms-native{position:absolute!important;opacity:0!important;pointer-events:none!important;width:1px!important;height:1px!important;inset:0!important;margin:0!important;padding:0!important;border:0!important}
.ms-btn{all:unset;box-sizing:border-box;display:flex!important;align-items:center;gap:8px;width:100%;height:42px;padding:0 10px 0 13px;border-radius:10px;background:#fff;border:1.5px solid #dbe4ef;color:#334155;font:600 13px/1 inherit;font-family:inherit;cursor:pointer;transition:border-color .15s,box-shadow .15s,background .15s}
.ms-btn:hover{border-color:#b9c9de}
.ms-btn:focus-visible,.ms.open .ms-btn{border-color:#F2C14E;box-shadow:0 0 0 4px rgba(242,193,78,.2);outline:0}
.ms.has .ms-btn{background:#fffbeb;border-color:#F2C14E;color:#002147}
.ms-lbl{flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ms-n{display:inline-grid;place-items:center;min-width:20px;height:20px;padding:0 6px;border-radius:999px;background:#002147;color:#F2C14E;font-size:11px;font-weight:800}
.ms-car{flex:none;color:#7b8a9c;transition:transform .15s}
.ms.open .ms-car{transform:rotate(180deg)}
.ms-pop{display:none;position:absolute;z-index:80;top:calc(100% + 6px);left:0;width:max(100%,280px);max-width:min(360px,92vw);background:#fff;border:1px solid #dbe4ef;border-radius:14px;box-shadow:0 18px 40px rgba(0,20,40,.18);overflow:hidden}
.ms-pop.right{left:auto;right:0}
.ms .ms-pop.above{top:auto!important;bottom:calc(100% + 6px)!important}
.ms .ms-pop .ms-list{max-height:min(320px,55vh,var(--ms-room,320px))!important}
.ms.open .ms-pop{display:block}
.ms-top{padding:10px;border-bottom:1px solid #eef2f7;display:flex;flex-direction:column;gap:8px;background:#fbfcfe}
.ms-q{width:100%;height:36px!important;border-radius:9px!important;border:1px solid #dbe4ef!important;padding:0 10px!important;font-size:13px!important;margin:0!important;background:#fff}
.ms-acts{display:flex;gap:6px}
.ms-acts button{all:unset;cursor:pointer;font-size:12px;font-weight:700;color:#1d4f91;padding:4px 8px;border-radius:7px}
.ms-acts button:hover{background:#eef3f9}
.ms-acts [data-none]{color:#b91c1c;margin-left:auto}
.ms-list{max-height:min(320px,55vh);overflow:auto;padding:6px}
.ms-grp+.ms-grp,.ms-opt+.ms-grp,.ms-grp+.ms-opt{margin-top:4px;padding-top:4px;border-top:1px solid #eef2f7}
.ms-gh{all:unset;display:block;width:100%;box-sizing:border-box;cursor:pointer;padding:7px 10px;font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:#5b6b7f;border-radius:8px}
.ms-gh small{font-weight:600;text-transform:none;letter-spacing:0}
.ms-gh:hover{background:#f3f6fa;color:#002147}
.ms-gh.on{color:#002147;background:#fffbeb}
.ms-opt{display:flex!important;align-items:center;gap:10px;margin:0!important;padding:8px 10px;border-radius:9px;cursor:pointer;font-size:13px;color:#1e293b;font-weight:500}
.ms-opt:hover{background:#f3f6fa}
.ms-opt input{width:17px!important;height:17px!important;margin:0!important;accent-color:#002147;flex:none}
.ms-opt .ms-t{flex:1;min-width:0}
.ms-opt em{font-style:normal;font-size:11.5px;font-weight:700;color:#5b6b7f;background:#eef3f9;padding:2px 8px;border-radius:999px}
.ms-opt:has(input:checked){background:#fffbeb}
.ms-opt:has(input:checked) .ms-t{font-weight:700;color:#002147}
.ms-empty{padding:16px;text-align:center;color:#7b8a9c;font-size:12.5px}
@media(max-width:700px){.ms{flex:1 1 100%;max-width:none}}

.ms-opt[hidden],.ms-grp[hidden],.ms-n[hidden]{display:none!important}
.ms-bar{flex-wrap:wrap;gap:10px;padding:14px;border-left:3px solid #F2C14E}
.ms-bar>input[name=q]{flex:1 1 240px;min-width:180px}
.rvf .ms{width:100%;max-width:none;min-width:0}
.ms-opt:focus-within{outline:2px solid #F2C14E;outline-offset:-2px}

/* Toolbar inputs have a 220px flex basis; inside this vertical header that
   becomes unwanted height. The dropdown search must keep its own 36px size. */
.ms-pop .ms-top{height:auto!important;min-height:0!important;flex:none!important;justify-content:flex-start!important;gap:8px!important}
.ms-pop input.ms-q{flex:0 0 auto!important;flex-basis:auto!important;width:100%!important;min-width:0!important;height:36px!important;min-height:36px!important;max-height:36px!important;margin:0!important;box-sizing:border-box}
.ms-pop .ms-acts{flex:none!important;height:auto!important;min-height:0!important;margin:0!important;align-items:center}

/* Older search-clear wrappers must never stretch this vertical header. */
.ms-pop .ms-top>.sx{flex:none!important;flex-basis:auto!important;width:100%!important;max-width:none!important;height:36px!important;min-height:0!important;margin:0!important}

/* Gold hover and keyboard focus, without movement. */
.ms .ms-btn:hover,.ms .ms-btn:focus-visible,.ms.open .ms-btn{background:#f2c14e!important;color:#002147!important;border-color:#f2c14e!important}
.ms .ms-btn:hover .ms-car,.ms.open .ms-car{color:#002147!important}
.ms-pop .ms-opt:hover,.ms-pop .ms-opt:focus-within,.ms-pop .ms-gh:hover,.ms-pop .ms-acts button:hover{background:#f2c14e!important;color:#002147!important}
.ms-pop .ms-opt:hover .ms-t,.ms-pop .ms-opt:hover em{color:#002147!important}

.ms-opt:focus-within{outline:none!important}
.ms-opt:has(input:focus-visible){outline:2px solid #f2c14e!important;outline-offset:-2px}

/* Dropdown contents keep their own sizes inside page filter labels. */
.ms-pop,#office-queue form.office-filters .ms-pop{border-radius:14px;border:1px solid #d8e3ee;box-shadow:0 12px 30px #00214720}
.ms-pop .ms-top,#office-queue form.office-filters .ms-pop .ms-top{padding:10px 12px;background:#f6f9fc;border-bottom:1px solid #e2eaf2}
.ms-pop .ms-acts,#office-queue form.office-filters .ms-pop .ms-acts{display:flex;justify-content:space-between;gap:8px}
.ms-pop .ms-acts button,#office-queue form.office-filters .ms-pop .ms-acts button{display:inline-flex!important;box-sizing:border-box!important;flex:0 1 auto!important;align-items:center!important;justify-content:center!important;width:auto!important;min-width:0!important;height:32px!important;min-height:32px!important;padding:5px 11px!important;border:1px solid #cddceb!important;border-radius:8px!important;background:#fff!important;color:#173b60!important;font-size:12px!important;font-weight:650!important;line-height:1.4!important;box-shadow:none!important;text-transform:none!important;letter-spacing:0!important}
.ms-pop .ms-acts [data-none],#office-queue form.office-filters .ms-pop .ms-acts [data-none]{color:#a6323f!important;border-color:#edced3!important}
.ms-pop .ms-acts button:hover,#office-queue form.office-filters .ms-pop .ms-acts button:hover{background:#edf4fa!important;border-color:#9eb9d2!important;transform:none!important}
.ms-pop .ms-acts [data-none]:hover,#office-queue form.office-filters .ms-pop .ms-acts [data-none]:hover{background:#fff2f3!important;border-color:#dca9b1!important}
.ms-pop .ms-list,#office-queue form.office-filters .ms-pop .ms-list{padding:6px;max-height:min(320px,55vh)}
.ms-pop label.ms-opt,#office-queue form.office-filters .ms-pop label.ms-opt{display:flex!important;flex-direction:row!important;align-items:center!important;gap:10px!important;min-height:40px!important;margin:0!important;padding:9px 10px!important;border-radius:8px;font-size:12.5px!important;font-weight:500!important;line-height:1.5!important;text-transform:none!important;letter-spacing:0!important;color:#35516c!important}
.ms-pop label.ms-opt input[type=checkbox],#office-queue form.office-filters .ms-pop label.ms-opt input[type=checkbox]{flex:0 0 17px!important;width:17px!important;min-width:17px!important;max-width:17px!important;height:17px!important;min-height:17px!important;max-height:17px!important;margin:0!important;padding:0!important;border-radius:4px!important;box-shadow:none!important;accent-color:#002147}
.ms-pop .ms-opt:hover,.ms-pop .ms-opt:focus-within,#office-queue form.office-filters .ms-pop .ms-opt:hover,#office-queue form.office-filters .ms-pop .ms-opt:focus-within{background:#fff3cf!important;color:#002147!important}
.ms-pop .ms-opt:has(input:checked),#office-queue form.office-filters .ms-pop .ms-opt:has(input:checked){background:#edf7f1!important;color:#174c35!important}
.ms-pop .ms-opt:has(input:focus-visible),#office-queue form.office-filters .ms-pop .ms-opt:has(input:focus-visible){outline:2px solid #d9ad3e!important;outline-offset:-2px!important}
@media(max-width:650px){.ms-pop .ms-acts button,#office-queue form.office-filters .ms-pop .ms-acts button{height:40px!important;min-height:40px!important}.ms-pop label.ms-opt,#office-queue form.office-filters .ms-pop label.ms-opt{min-height:44px!important}}


/* ===== ui-shared.css ===== */
.sx{position:relative;display:inline-flex;align-items:center;max-width:280px;flex:0 1 280px;min-width:0}
.sx>input{width:100%;min-width:0}
.sx>input[name=q],.sx>input[type=search]{height:38px;font-size:14px;padding:6px 32px 6px 12px}
.sx-clear{position:absolute;right:7px;top:50%;transform:translateY(-50%);width:22px;height:22px;min-height:0;border-radius:50%;border:0;background:#e2e8f0;color:#334155;font-size:15px;line-height:1;padding:0;cursor:pointer;display:flex;align-items:center;justify-content:center}
.sx-clear:hover{background:#cbd5e1}
.sx-clear[hidden]{display:none}
.toolbar input[name=q],.toolbar input[type=search]{height:38px;font-size:14px}
/* Rangi kwenye toolbar za kurasa zote */
form.toolbar{background:linear-gradient(120deg,#eff6ff 0%,#f0fdfa 55%,#fefce8 100%);border:1px solid #bfdbfe;border-radius:14px;padding:10px 12px;box-shadow:0 3px 10px rgba(30,64,175,.06)}
form.toolbar select{border:1.5px solid #60a5fa;background:#fff;border-radius:10px;color:#0f172a;font-weight:600}
form.toolbar input:not([type=checkbox]):not([type=radio]){border:1.5px solid #34d399;background:#fff;border-radius:10px}
form.toolbar>button{background:linear-gradient(135deg,#1d4ed8,#0891b2);color:#fff;border:0;border-radius:10px;font-weight:800;padding:8px 14px}

/* Shared application dialogs and feedback. */
dialog:not(.prf-page-editor){border:1px solid #dbe5ef!important;border-radius:20px!important;box-shadow:0 25px 75px #001c3d45!important;background:linear-gradient(145deg,#fff,#f7faff)!important;padding:26px!important;max-width:calc(100vw - 28px);box-sizing:border-box;max-height:90dvh;overflow:auto}
dialog::backdrop{background:#001a386e!important;backdrop-filter:blur(5px)}
dialog h2{font-size:20px!important;line-height:1.4;color:#103b62;margin:0 0 18px!important;padding-bottom:14px;border-bottom:1px solid #e1e9f2}
dialog label{display:block;color:#35526c;font-size:12px;font-weight:700;margin:14px 0 8px}
dialog input:not([type=checkbox]):not([type=hidden]),dialog select,dialog textarea{box-sizing:border-box;border:1px solid #ceddeb;border-radius:11px;min-height:44px;background:#fff;color:#193d5e;padding:10px 12px;transition:border-color .15s,box-shadow .15s}
dialog input:focus,dialog select:focus,dialog textarea:focus{outline:0;border-color:#d6ae4c;box-shadow:0 0 0 3px #f2c14e26}
#mark-dlg{width:560px;border-top:5px solid #eabe4a!important}
#mark-dlg [data-mark-who]{padding:12px 14px;background:#edf5fc;border:1px solid #d8e5f1;border-left:4px solid #2576a2;border-radius:10px;font-weight:700;color:#153f63;margin:0 0 18px}
dialog .modal-footer,.app-confirm-actions{display:flex;justify-content:flex-end;gap:9px;padding-top:16px;margin-top:18px;border-top:1px solid #e1e9f2}
dialog .modal-footer button,.app-confirm-actions button{border-radius:10px!important;min-height:40px;padding:0 16px!important;font-weight:750;transition:box-shadow .15s,transform .15s,background .15s}
dialog .modal-footer button:not(.secondary),.app-confirm-accept{background:linear-gradient(135deg,#174d7b,#002147)!important;color:#fff;border:1px solid #153d65!important;box-shadow:0 3px 9px #00214716}
dialog .modal-footer .secondary,.app-confirm-cancel{background:white!important;color:#244d70!important;border:1px solid #d1dfec!important}
dialog button:not(:disabled):hover{transform:translateY(-1px);box-shadow:0 4px 12px #00214720}
.app-confirm-danger{background:linear-gradient(135deg,#ba3c46,#8f2433)!important}
.app-notice{border-radius:15px!important;box-shadow:0 10px 32px #00214720!important;border:1px solid #d7e5ed!important;border-left:5px solid var(--notice-color,#2d698d)!important;background:#fff!important;padding:16px!important}
.app-notice-success{--notice-color:#268567;background:linear-gradient(120deg,#f0faf5,#fff)!important}.app-notice-error{--notice-color:#b83849;background:linear-gradient(120deg,#fff3f5,#fff)!important}.app-notice-warning{--notice-color:#c58e1d;background:linear-gradient(120deg,#fff8e8,#fff)!important}.app-notice-info{--notice-color:#2876a4;background:linear-gradient(120deg,#eef7fc,#fff)!important}
.app-notice-body strong{font-size:14px!important}.app-notice-detail{font-size:12px!important;line-height:1.65!important}.app-notice-icon{box-shadow:0 3px 9px #00214716;border-radius:13px!important}
@media(max-width:500px){dialog:not(.prf-page-editor){padding:18px!important;border-radius:15px!important}dialog h2{font-size:18px!important}}
@media(prefers-reduced-motion:reduce){dialog button,dialog input,dialog select{transition:none!important}dialog button:hover{transform:none!important}}

#account-dialog{box-shadow:0 22px 70px rgba(0,33,71,.5)!important}
#account-dialog>.modal-head{display:flex;align-items:center;justify-content:space-between;gap:14px;margin:-26px -26px 22px;padding:18px 24px;background:linear-gradient(135deg,#174971,#002147);border-bottom:2px solid #e8bd4b;box-shadow:0 6px 16px #00214726}
#account-dialog>.modal-head h2{margin:0!important;padding:0!important;border:0!important;color:#f6cf65!important;font-size:21px!important;letter-spacing:.2px}
#account-dialog>.modal-head .modal-close{display:flex;align-items:center;justify-content:center;flex:none;width:38px;height:38px;min-height:38px;padding:0!important;border-radius:11px;border:1px solid rgba(246,207,101,.5)!important;background:rgba(255,255,255,.09)!important;color:#f6cf65!important;font-size:25px;line-height:1;box-shadow:0 3px 9px #00162e45;transition:transform .2s,background .2s,box-shadow .2s;animation:account-close-in .35s ease both}
#account-dialog>.modal-head .modal-close:hover{background:#f6cf65!important;color:#002147!important;transform:rotate(90deg);box-shadow:0 4px 14px #00162e70}
#account-dialog>.modal-head .modal-close:focus-visible{outline:2px solid #fff;outline-offset:3px}
@keyframes account-close-in{from{opacity:0;transform:scale(.8) rotate(-45deg)}to{opacity:1;transform:scale(1) rotate(0)}}
@media(max-width:500px){#account-dialog>.modal-head{margin:-18px -18px 18px;padding:16px 18px}}
@media(prefers-reduced-motion:reduce){#account-dialog>.modal-head .modal-close{animation:none;transition:none}#account-dialog>.modal-head .modal-close:hover{transform:none}}

#recruit-drawer .drawer-close{top:32px!important;right:32px!important;width:44px!important;height:44px!important;display:grid;place-items:center;padding:0!important;border:1px solid #f2c14e75!important;border-radius:13px!important;color:#f2c14e!important;background:#002147!important;box-shadow:0 5px 16px #00172f55!important;font-size:26px!important;line-height:1;z-index:20;cursor:pointer}
#recruit-drawer .drawer-close:hover{background:#f2c14e!important;color:#002147!important;box-shadow:0 7px 20px #00214766!important}
#recruit-drawer .drawer-close:focus-visible{outline:3px solid #fff;outline-offset:3px}
#recruit-drawer .ph-top{padding-right:72px!important}
@media(max-width:650px){#recruit-drawer .drawer-close{top:22px!important;right:22px!important}}
@media(prefers-reduced-motion:no-preference){#recruit-drawer .drawer-close{transition:background .18s,color .18s,transform .18s!important}#recruit-drawer .drawer-close:hover{transform:rotate(8deg)}}

.topbar{background:linear-gradient(115deg,rgba(232,249,239,.93),rgba(218,242,230,.88),rgba(243,252,246,.94))!important;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-bottom:1px solid rgba(107,167,139,.3)!important;box-shadow:0 4px 18px rgba(31,90,65,.09)!important}.topbar .userchip{background:linear-gradient(135deg,rgba(255,255,255,.88),rgba(231,246,239,.9))!important;border:1px solid rgba(126,170,151,.4)!important;border-radius:13px!important;box-shadow:0 3px 10px rgba(28,73,54,.09);transition:transform .18s,box-shadow .18s,border-color .18s,background .18s}.topbar .userchip:hover{background:linear-gradient(135deg,#fff,#dcf3e6)!important;border-color:#84b39a!important;box-shadow:0 7px 18px rgba(23,80,54,.18);transform:translateY(-1px)}.topbar .userchip:active{transform:translateY(0);box-shadow:0 2px 6px rgba(23,80,54,.13)}.topbar .userchip:focus-visible{outline:3px solid #e8bf53;outline-offset:3px}.topbar .userchip .avatar{box-shadow:0 2px 7px rgba(0,33,71,.17);transition:box-shadow .18s}.topbar .userchip:hover .avatar{box-shadow:0 0 0 3px rgba(242,193,78,.24),0 3px 9px rgba(0,33,71,.2)}@media(prefers-reduced-motion:reduce){.topbar .userchip,.topbar .userchip .avatar{transition:none}.topbar .userchip:hover{transform:none}}

.topbar::after{content:"";position:absolute;left:0;right:0;bottom:-3px;height:3px;background:linear-gradient(110deg,#1eb53a 0%,#1eb53a 35%,#fcd116 35%,#fcd116 39%,#101820 39%,#101820 61%,#fcd116 61%,#fcd116 65%,#00a3dd 65%,#00a3dd 100%);box-shadow:0 1px 3px rgba(0,33,71,.12);pointer-events:none}

/* Keep the complete agency name inside the existing mobile header. */
@media screen and (max-width:900px){
 .topbar{gap:8px!important;padding:0 10px!important}
 .topbar .mobile-menu{flex:none;width:44px;height:44px;min-height:44px;padding:0!important}
 .topbar .brand{flex:1;min-width:0!important;gap:8px!important}
 .topbar .brand>.logo{flex:none}
 .topbar .brand>span:last-child{min-width:0}
 .topbar .brand .t1{font-size:11px!important;line-height:1.2!important;letter-spacing:0!important;overflow-wrap:normal}
 .topbar .brand .t2{font-size:7.5px!important;line-height:1.2!important;letter-spacing:.25px!important;margin-top:2px!important}
 .topbar .grow,.topbar .topclock{display:none!important}
 .topbar .userchip{flex:none;width:44px;height:44px;min-height:44px;justify-content:center;padding:4px!important}
 .topbar .userchip>span:not(.avatar){display:none!important}
}

/* The Scan PRF list style is shared across operational and administrative lists. */
@media screen{
.list-standard-table{border:1px solid #dbe6ee!important;border-radius:15px!important;overflow-x:auto;background:#fff;box-shadow:0 4px 15px #00214706;margin-top:12px}
.list-standard-table table{width:100%;border-collapse:collapse;background:#fff}
.list-standard-table thead th{background:#e3f4ea!important;color:#183e5e!important;border-bottom:1px solid #c2dfce!important;font-size:11px;font-weight:800;letter-spacing:.75px;padding:14px 15px;white-space:nowrap}
.list-standard-table tbody td{padding:12px 15px;border-bottom:1px solid #edf2f7;color:#40546a;font-size:12px;vertical-align:middle}
.list-standard-table tbody tr{transition:background .15s}.list-standard-table tbody tr:hover{background:#f2f8fc}.list-standard-table tbody tr:last-child td{border-bottom:0}
.list-standard-table tbody .button,.list-standard-table tbody button{min-height:32px;border-radius:9px;font-size:12px;box-shadow:none;transition:background .15s,box-shadow .15s}
.list-standard-table tbody .button:hover,.list-standard-table tbody button:not(:disabled):hover{box-shadow:0 3px 8px #00214714}
.list-standard-filters{background:#fff!important;border:1px solid #dce5ee!important;border-radius:16px!important;padding:18px!important;gap:10px!important;box-shadow:0 3px 12px #00214705}
.list-standard-filters .ms-btn{background:#f6f9fd!important;color:#173b60!important;border:1px solid #d4dfed!important;border-radius:11px!important;min-height:44px;transition:background .15s,border-color .15s,box-shadow .15s}
.list-standard-filters .ms-btn:hover{background:#edf5fb!important;border-color:#96b2cf!important;box-shadow:0 3px 8px #00214709}
.list-standard-filters .ms.has .ms-btn,.list-standard-filters .ms.open .ms-btn{background:#fff3c7!important;border-color:#deb448!important;color:#173b60!important}
.list-standard-filters>input:not([type=hidden]),.list-standard-filters>select{border-radius:11px;min-height:44px;background:#f6f9fd;border:1px solid #d4dfed;color:#173b60}
.list-standard-filters button[type=submit]{border-radius:11px;background:linear-gradient(135deg,#154b77,#002147);color:white;box-shadow:0 3px 9px #00214715}
.pagination{gap:8px;align-items:center}.pagination a{border:1px solid #d5e1ec;border-radius:9px;background:#fff;padding:8px 12px;color:#214a70}.pagination a:hover{background:#edf6f1;border-color:#a9ccba}
}
@media(prefers-reduced-motion:reduce){.list-standard-table tbody tr,.list-standard-filters .ms-btn{transition:none}}

@media screen{.page-heading{gap:18px;align-items:center}.page-heading>div:first-child{min-width:0;flex:1}.page-heading>.actions{display:flex;gap:8px;flex-wrap:wrap;flex-shrink:0}.page-heading p{font-size:13px;line-height:1.65;color:#6b8097}.selbar,.print-actions{gap:9px;align-items:center;flex-wrap:wrap}.selbar button,.print-actions button{border-radius:10px;min-height:38px;padding:0 13px;font-size:12px}.dl-bar{border-radius:15px;box-shadow:0 4px 15px #00214712}.dl-bar button{border-radius:10px;min-height:40px}.rowacts{display:flex;align-items:center;flex-wrap:wrap;gap:5px}.rowacts .mini-act{border-radius:8px;padding:6px 9px}.rowacts .mini-act:hover{background:#edf6f1;border-color:#a9d0bd}}
.sidebar nav>a{position:relative;margin-bottom:7px!important}.sidebar nav>a::after{content:"";position:absolute;left:14px;right:14px;bottom:-4px;height:.7px;border-radius:2px;background:linear-gradient(110deg,rgba(30,181,58,.68) 0%,rgba(30,181,58,.68) 34%,rgba(252,209,22,.72) 34%,rgba(252,209,22,.72) 40%,rgba(9,14,20,.9) 40%,rgba(9,14,20,.9) 60%,rgba(252,209,22,.72) 60%,rgba(252,209,22,.72) 66%,rgba(0,163,221,.7) 66%,rgba(0,163,221,.7) 100%);box-shadow:0 1px 3px rgba(0,0,0,.12);pointer-events:none;opacity:.8;transition:opacity .18s}.sidebar nav>a:hover::after,.sidebar nav>a.active::after{opacity:1}.sidebar nav>.nav-caption{margin-top:14px}@media(prefers-reduced-motion:reduce){.sidebar nav>a::after{transition:none}}

.sidebar nav>a:hover{background:#fff!important;color:#111827!important;box-shadow:0 5px 16px rgba(0,0,0,.18)!important;border-radius:12px;transition:background .18s,color .18s,box-shadow .18s}.sidebar nav>a:hover .ni{background:#eef2f6!important;color:#111827!important;box-shadow:0 2px 6px rgba(0,33,71,.07)}.sidebar nav>a:hover svg{color:#111827!important}.sidebar nav>a:focus-visible{outline:2px solid #f2c14e;outline-offset:2px}@media(prefers-reduced-motion:reduce){.sidebar nav>a:hover{transition:none}}

/* Keep every navigation link reachable below the fixed header. */
aside.sidebar{overflow-y:auto!important;overflow-x:hidden;overscroll-behavior-y:contain;scrollbar-gutter:stable;padding-bottom:24px;box-sizing:border-box;scrollbar-width:auto;scrollbar-color:auto}
aside.sidebar::-webkit-scrollbar{display:block!important;width:9px}
aside.sidebar::-webkit-scrollbar-track{background:#00152e;border-radius:12px;box-shadow:inset 0 0 0 1px rgba(255,255,255,.1)}
aside.sidebar::-webkit-scrollbar-thumb{min-height:54px;border:2px solid #00152e;border-radius:12px;background:linear-gradient(180deg,#1eb53a 0 32%,#fcd116 32% 39%,#141414 39% 61%,#fcd116 61% 68%,#00a3dd 68% 100%);box-shadow:0 0 5px rgba(252,209,22,.25)}
aside.sidebar::-webkit-scrollbar-thumb:hover{border-width:1px}
aside.sidebar::-webkit-scrollbar-corner{background:#00152e}
@supports not selector(::-webkit-scrollbar){aside.sidebar{scrollbar-width:thin;scrollbar-color:#fcd116 #00152e}}

/* Keyboard and touch refinements; desktop keeps compact toolbars. */
button:focus-visible,a.button:focus-visible,summary:focus-visible{outline:3px solid #e7bd4b;outline-offset:3px}
@media(max-width:650px){input:not([type=checkbox]):not([type=radio]):not([type=hidden]),select,textarea{font-size:16px!important}.content{min-width:0}.panel,.table-wrap,.table-scroll{min-width:0;max-width:100%;box-sizing:border-box}#work-tools button,#work-tools a.button{min-height:44px!important;height:auto!important}.rowacts .mini-act,.pagination a{min-height:44px;display:inline-flex;align-items:center;box-sizing:border-box}.sidebar nav>a{min-height:44px}}

.bulkbar{position:relative!important;left:auto!important;right:auto!important;bottom:auto!important;z-index:1!important;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.bulkbar .bb-title{grid-column:1/-1}.bulkbar .bb-group{min-width:0}.bulkbar .bb-group input,.bulkbar .bb-group select{min-width:0;max-width:100%}@media(max-width:650px){.bulkbar{grid-template-columns:1fr}}

.password-field{position:relative;display:block}.password-field input{width:100%;box-sizing:border-box;padding-right:90px!important}.login-card .password-field button{position:absolute;right:7px;top:50%;transform:translateY(-50%);width:auto!important;min-height:34px!important;height:34px;padding:0 10px!important;background:#edf5fb!important;color:#224c70!important;border:1px solid #d3e0ec;border-radius:8px;font-size:12px}.login-card .password-field button:hover{background:#fff3cd!important;border-color:#d9b14a}

/* Main page scrollbar; the navigation keeps its Tanzania flag thumb. */
html{scrollbar-width:auto;scrollbar-color:auto}
html::-webkit-scrollbar{width:11px;height:11px}
html::-webkit-scrollbar-track{background:#edf2f7;border-radius:12px;box-shadow:inset 0 0 0 1px #dce5ee}
html::-webkit-scrollbar-thumb{min-height:48px;border:2px solid #edf2f7;border-radius:12px;background:linear-gradient(90deg,#b88622,#f2c14e 45%,#ffdb79);box-shadow:0 2px 6px #00214726}
html::-webkit-scrollbar-thumb:hover{background:linear-gradient(90deg,#a7781b,#eeb332 45%,#fbd369)}
html::-webkit-scrollbar-corner{background:#edf2f7}
@supports not selector(::-webkit-scrollbar){html{scrollbar-color:#e9b941 #edf2f7}}

.smart-status{border:1px solid #d1e4db;border-left:4px solid #d9ad3e;border-radius:14px;background:#f7fcf9;margin:0 0 17px;padding:13px 16px;box-shadow:0 3px 12px #00214708}.smart-status summary{display:flex;align-items:center;justify-content:space-between;gap:12px;cursor:pointer;color:#173f5b;font-size:13px;font-weight:800}.smart-status summary>span{display:flex;align-items:center;gap:8px}.smart-status summary>b{font-size:11px;background:#e3f2e9;border-radius:8px;padding:7px;white-space:nowrap}.smart-status>p{font-size:11px;line-height:1.6;color:#607a8a}.smart-status-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.smart-step{display:flex;align-items:flex-start;gap:8px;padding:10px;background:#fff;border:1px solid #dce7ed;border-radius:10px;color:#35556c;text-decoration:none}.smart-step.done{border-color:#c1decf;background:#eff9f3}.smart-step b{display:block;font-size:11px;line-height:1.5}.smart-step small{display:block;font-size:10px;margin-top:4px;color:#648092}.smart-tick{display:grid;place-items:center;flex:none;width:23px;height:23px;background:#e8eef3;border-radius:8px;font-weight:800}.done .smart-tick{background:#25865c;color:#fff}.smart-step:hover{border-color:#d9ad3e;box-shadow:0 3px 9px #00214712;text-decoration:none}@media(max-width:1100px){.smart-status-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:600px){.smart-status summary{align-items:flex-start;flex-wrap:wrap}.smart-status-grid{grid-template-columns:1fr}.smart-status{padding:12px}.smart-step b{font-size:12px}}
.office-filters{display:flex;flex-wrap:wrap;gap:12px;align-items:end;margin:18px 0}.office-filters label{flex:1;min-width:150px}.office-filters button{min-height:44px}.office-checks{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:18px 0}.office-checks li{margin:8px 0;line-height:1.6}.office-tasks{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:15px 0}.office-task{display:flex;flex-direction:column;gap:6px;padding:18px;border:1px solid #d7e4dd;border-radius:14px;background:#f7fcf9;color:#173f5b;text-decoration:none}.office-task strong{font-size:26px}.office-task:hover{border-color:#d9ad3e}.office-state{display:flex;flex-wrap:wrap;gap:12px;align-items:center}.office-state span{padding:8px 12px;background:#eff5f8;border-radius:9px}.table-wrap td>small{display:block;margin-top:5px}.office-filters select,.office-filters input{min-height:44px}@media(max-width:900px){.office-tasks{grid-template-columns:repeat(2,minmax(0,1fr))}.office-checks{grid-template-columns:1fr}}@media(max-width:500px){.office-filters label{flex-basis:100%}.office-task{padding:12px}.office-task strong{font-size:22px}}
.dash-hero .office-state>span{color:#173f5b;background:#eff5f8}
.queue-stages{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px;margin:18px 0}.queue-stages a{display:flex;flex-direction:column;justify-content:space-between;gap:8px;padding:14px;border:1px solid #d1e0db;border-radius:12px;color:#173f5b;text-decoration:none;background:#fff}.queue-stages a.on{background:#e8f4ed;border-color:#25865c;box-shadow:inset 0 3px #d9ad3e}.queue-stages b{font-size:22px}.queue-stages span{font-size:12px;font-weight:700;line-height:1.5}.queue-actions{display:flex;flex-wrap:wrap;gap:12px;align-items:end}.queue-actions>label{min-width:180px;flex:1}.queue-actions>.actions,.queue-actions>p{flex-basis:100%}.queue-actions input,.queue-actions select,.queue-actions button{min-height:44px}.queue-current{display:flex;align-items:center;flex-wrap:wrap;gap:12px;background:#eff8f2;border:1px solid #c8e0d2;border-left:4px solid #d9ad3e;border-radius:12px;margin-bottom:15px;padding:15px}.queue-current>div{flex:1}.queue-current small{display:block;color:#617c8c;margin-top:5px}.queue-current details{flex-basis:100%}.queue-current summary{cursor:pointer;font-size:12px}.queue-current details>.actions{margin-top:10px}#office-queue td li{margin:5px 0;font-size:12px;line-height:1.5}#office-queue .table-wrap .actions{flex-wrap:wrap}#office-queue .office-filters .ms{min-width:160px;flex:1}#queue-action-message{color:#a12a32}@media(max-width:1100px){.queue-stages{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:600px){.queue-stages{grid-template-columns:repeat(2,minmax(0,1fr))}.queue-actions>label{flex-basis:100%;min-width:0}.queue-current{align-items:flex-start}.queue-current>div{flex-basis:100%}}

/* Shared work areas: filters, group choices and actions. */
@media screen {
main :is(form.filters,form.toolbar,.office-filters,.list-standard-filters){background:#fff!important;border:1px solid #dce5ed!important;border-radius:18px!important;padding:20px!important;gap:14px!important;box-shadow:0 5px 20px #00214706!important;align-items:end!important;margin:20px 0!important}
main :is(form.filters,form.toolbar,.office-filters) label{color:#52677d;font-size:12px;font-weight:600;line-height:1.5}
main :is(form.filters,form.toolbar,.office-filters) :is(input:not([type=checkbox]):not([type=radio]):not([type=hidden]),select:not(.ms-native),textarea){background:#f8fafc;border:1px solid #d6e1ec;border-radius:11px;min-height:44px;color:#173b60;box-sizing:border-box;max-width:100%}
main :is(form.filters,form.toolbar,.office-filters) .ms-btn{background:#f8fafc!important;color:#173b60!important;border:1px solid #d6e1ec!important;border-radius:11px!important;min-height:44px!important;box-shadow:none!important}
main :is(form.filters,form.toolbar,.office-filters) .ms:is(.has,.open) .ms-btn{background:#fff6dc!important;border-color:#d6b14d!important}
main :is(form.filters,form.toolbar,.office-filters) .ms{min-width:0}
main :is(form.filters,form.toolbar,.office-filters) :is(input,select,textarea,button):focus-visible{outline:3px solid #e8bd4e;outline-offset:3px}
main :is(.work-tools,.work-capture,.bulkbar,.queue-actions){background:#fff!important;border:1px solid #dce5ed!important;border-radius:18px!important;padding:20px!important;box-shadow:0 5px 20px #00214706!important;gap:12px!important}
main :is(.work-tools,.work-capture,.bulkbar){border-top:3px solid #e5ba47!important}
main :is(.work-tools,.work-capture,.bulkbar,.queue-actions) :is(button,a.button){min-height:42px!important;height:auto!important;line-height:1.5;border-radius:11px!important;white-space:normal}
main :is(.work-tools,.bulkbar,.queue-actions) button:disabled{opacity:.45;cursor:not-allowed;box-shadow:none!important}
main :is(.work-tools,.queue-actions) :is(small,p.muted){line-height:1.7;color:#62778b}
main .queue-stages a{border-radius:15px;box-shadow:0 4px 12px #00214705}
#office-queue .office-filters{grid-template-columns:repeat(4,minmax(0,1fr))}
#office-queue .office-filters>label{display:flex;flex-direction:column;gap:7px;min-width:0;margin:0}
#office-queue .office-filters>label .ms{width:100%;flex:none}
#office-queue .office-filters .queue-people{grid-column:span 2}
#office-queue .office-filters>button{align-self:end;justify-self:end;min-width:140px;grid-column:span 2}
#office-queue .queue-action-heading{flex-basis:100%;padding-bottom:14px;border-bottom:1px solid #e6edf3}
#office-queue .queue-action-heading h2{margin:5px 0;font-size:18px;color:#173b60}
#office-queue .queue-action-heading p{margin:0;color:#62778b;font-size:12px;line-height:1.7}
#office-queue .queue-actions>.actions:first-of-type{gap:8px;padding:0 0 12px;border-bottom:1px solid #e6edf3}
#queue-selection-count{margin-left:auto;padding:8px 12px;background:#edf4f8;border-radius:10px;color:#214563;font-size:12px}
#office-queue .queue-actions>label{margin:0;min-width:0}
#office-queue .queue-actions input:not([type=checkbox]){background:#f8fafc;border-radius:11px;border:1px solid #d6e1ec}
main .page-heading{gap:16px;align-items:center}
main .page-heading h1{letter-spacing:-.6px}
main .page-heading p{line-height:1.7;color:#62778b}
@media(max-width:1100px){#office-queue .office-filters{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:650px){main :is(form.filters,form.toolbar,.office-filters,.list-standard-filters,.work-tools,.work-capture,.bulkbar,.queue-actions){padding:15px!important;border-radius:14px!important;gap:12px!important}#office-queue .office-filters{grid-template-columns:minmax(0,1fr)}#office-queue .office-filters :is(.queue-people,button){grid-column:auto;width:100%}#queue-selection-count{margin-left:0;width:100%;box-sizing:border-box}#office-queue .queue-actions>.actions button{flex:1 1 100%}main .page-heading{align-items:flex-start}main .page-heading .actions{flex-wrap:wrap}}
}

/* Compact shared summaries and work panels without hiding workflow facts. */
@media screen{
main .queue-current{padding:10px 13px;gap:8px;margin-bottom:10px;border-radius:12px;align-items:center}
main .queue-current>div{min-width:200px}main .queue-current small{margin-top:3px;line-height:1.4;font-size:11px}
main .queue-current>details{flex-basis:auto;margin-left:4px;position:relative}
main .queue-current>details>summary{padding:7px 9px;border:1px solid #ceded6;border-radius:8px;white-space:nowrap}
main .queue-current>details[open]{flex-basis:100%;margin:0}
main .queue-current>details[open]>.actions{margin-top:8px}
main .queue-current>a.button{min-height:34px;padding:7px 11px;font-size:11px}
main .smart-status{padding:10px 13px;margin-bottom:12px;border-radius:12px}
main .smart-status summary{font-size:12px;gap:8px}main .smart-status summary>b{padding:5px 8px}
.smart-status-note{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:8px 0;font-size:11px;color:#607a8a;line-height:1.4}
.smart-status-note a{white-space:nowrap}
main .smart-status-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}
main .smart-step{padding:7px 9px;gap:7px;min-height:0;border-radius:9px;align-items:center}
main .smart-step b{font-size:11px;line-height:1.35}main .smart-step small{margin-top:2px;font-size:10px}
main .smart-tick{width:20px;height:20px;border-radius:6px;font-size:12px}
main :is(form.filters,form.toolbar,.office-filters,.list-standard-filters){padding:14px 16px!important;gap:10px!important;margin:12px 0!important}
main :is(.work-tools,.work-capture,.bulkbar,.queue-actions){padding:14px 16px!important;gap:10px!important}
main .page-heading{margin-bottom:12px}main .page-heading p{margin:4px 0;line-height:1.5}
#office-queue .queue-action-heading{padding-bottom:9px}#office-queue .queue-action-heading h2{font-size:16px;margin:3px 0}
#office-queue .queue-actions>.actions:first-of-type{padding-bottom:8px}
#office-queue .queue-stages{margin:12px 0;gap:8px}#office-queue .queue-stages a{min-height:75px;padding:11px 13px;gap:5px}#office-queue .queue-stages b{font-size:24px}
main :is(.wp-hero,.wp-stat){padding:15px 17px}main .wp-page{gap:12px}main .wp-progress-line{margin-top:12px}
@media(max-width:1100px){main .smart-status-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:650px){main .smart-status-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.smart-status-note{flex-wrap:wrap}main .queue-current>div{min-width:0;flex-basis:100%}main .queue-current>details{margin:0}main .smart-status summary>span{min-width:0}main :is(form.filters,form.toolbar,.office-filters,.list-standard-filters,.work-tools,.work-capture,.bulkbar,.queue-actions){padding:12px!important}main .smart-step{align-items:flex-start}}
@media(max-width:380px){main .smart-status-grid{grid-template-columns:1fr}}
}

@media screen{
#office-queue .office-filters .queue-single-search{grid-column:span 2;display:grid;gap:7px;min-width:0}
#office-queue .office-filters .queue-people{grid-column:1/-1;display:grid;gap:7px;min-width:0}
#office-queue .queue-search-line{display:flex;gap:8px;align-items:stretch;min-width:0}
#office-queue .queue-search-line :is(input,textarea){flex:1;width:100%;min-width:0;margin:0;height:auto!important}
#office-queue .queue-search-line button{flex:none;min-width:120px;margin:0;align-self:stretch}
#office-queue .queue-people small{color:#62778b;font-size:11px}
#office-queue .queue-filter-submit{grid-column:1/-1;display:flex;gap:14px;align-items:center;justify-content:flex-end;border-top:1px solid #e6edf3;padding-top:10px}
#office-queue .queue-filter-submit a{font-size:12px}
@media(max-width:650px){#office-queue .office-filters .queue-single-search{grid-column:1/-1}#office-queue .queue-search-line button{min-width:95px;width:auto;font-size:12px;padding:9px}#office-queue .queue-filter-submit button{width:auto}}
}

@media screen and (min-width:651px){
main :is(form.filters,form.toolbar,.office-filters,.work-tools,.bulkbar,.queue-actions) :is(button,a.button){font-size:12px!important;min-height:34px!important;padding:6px 11px!important;line-height:1.4!important;border-radius:8px!important}
main :is(form.filters,form.toolbar,.office-filters) :is(input:not([type=checkbox]):not([type=radio]):not([type=hidden]),select:not(.ms-native),.ms-btn){min-height:36px!important;height:36px!important;font-size:12px!important;padding-top:7px!important;padding-bottom:7px!important}
#office-queue .office-filters{grid-template-columns:repeat(6,minmax(0,1fr));gap:9px 12px!important}
#office-queue .office-filters .queue-single-search{grid-column:span 4;grid-row:1}
#office-queue .office-filters .queue-people{grid-column:span 4}
#office-queue .queue-filter-submit{grid-column:span 2;border:0;padding-top:0;align-self:center;flex-wrap:wrap;gap:8px}
#office-queue .queue-search-line button{min-width:100px}
#office-queue .queue-actions .queue-action-heading{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding-bottom:7px}
#office-queue .queue-action-heading .eyebrow{font-size:10px}#office-queue .queue-action-heading h2{margin:0;font-size:14px}#office-queue .queue-action-heading p{margin-left:auto;font-size:11px}
#office-queue .queue-stages a{min-height:60px;padding:9px 12px}#office-queue .queue-stages b{font-size:22px}
}
#queue-select-action{width:auto;min-width:210px;max-width:100%;background:#f8fafc;border:1px solid #d6e1ec;border-radius:8px;color:#173b60}
@media(min-width:651px) and (max-width:1100px){#office-queue .office-filters{grid-template-columns:repeat(3,minmax(0,1fr))}#office-queue .office-filters .queue-single-search{grid-column:span 3;grid-row:auto}#office-queue .office-filters .queue-people{grid-column:span 2}#office-queue .queue-filter-submit{grid-column:span 1}}
@media(max-width:650px){#queue-select-action{width:100%;min-height:44px}}


#office-queue #queue-action-message{font-size:17px!important;line-height:1.7!important;color:#a12a32;margin:12px 0 0;overflow-wrap:anywhere}
#office-queue #queue-action-message strong{font-weight:800;color:#821e29}


/* ===== password-reminder.css ===== */
.default-password-badge{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:24px;height:24px;border-radius:8px;background:#fff0be;color:#8b620c;border:1px solid #ecd18a}.password-reminder{margin:16px 0;padding:14px 16px;border:1px solid #ead8a3;border-radius:14px;background:#fff8e8;color:#624b12}.password-reminder p{font-size:13px;line-height:1.6;margin:6px 0 10px}.password-reminder a{display:inline-flex;align-items:center;min-height:44px;color:#082b42;font-size:13px;font-weight:700}.password-status{display:flex;align-items:center;gap:5px;margin-top:5px;font-size:11px}.password-status.pending{color:#8b650c}.password-status.changed{color:#187251}.password-status svg{flex-shrink:0}#password-form{scroll-margin-top:95px}
@media(max-width:600px){.default-password-badge{width:22px;height:22px}.password-reminder a{min-height:48px}}


/* ===== theme-tokens.css ===== */
/* static/theme-tokens.css — chanzo kimoja cha rangi, jiometri na focus.
   Rangi hazibadiliki; msongamano hubadilisha jiometri pekee. */
:root{
  --rd-ink:#233d56; --rd-muted:#536b80; --rd-line:#dce6ed; --rd-surface:#ffffff;
  --rd-bg:#f3f7fa; --rd-navy:#17354e; --rd-teal:#276554;
  --rd-gold:#a67b2e;            /* mistari, ikoni, maandishi makubwa (3.82:1) */
  --rd-gold-ink:#8a6520;        /* maandishi ya gold (5.3:1 kwenye white) */
  --rd-soft:#eef4f8; --rd-tint:#f8fbfd;
  --rd-ok:#1d5b48;  --rd-ok-bg:#e9f5f0;   --rd-ok-line:#c6e2d7;
  --rd-warn:#8a5a10;--rd-warn-bg:#fdf5e4; --rd-warn-line:#eddfc0;
  --rd-bad:#9c2b31; --rd-bad-bg:#fdeff0;  --rd-bad-line:#f0cdd0;
  --rd-info:#1f5c85;--rd-info-bg:#eaf3fa; --rd-info-line:#c9dfef;
  --rd-ink-rgb:35,61,86; --rd-teal-rgb:39,101,84;
  /* Jiometri default: Mwelekeo B (Safari ya Kisasa) */
  --r-panel:18px; --r-ctl:12px; --r-kpi:16px; --row:50px; --pad:26px; --side:246px;
  --shadow:0 8px 22px rgba(23,53,78,.06);
  --shadow-hi:0 12px 26px rgba(23,53,78,.09);
  --shadow-hero:0 10px 24px rgba(23,53,78,.1);
  --focus-ring:3px solid var(--rd-gold); --focus-offset:3px;
}
/* Msongamano wa Mwelekeo C: class kwenye <body> kupitia block ya base.html */
body.density-compact{
  --r-panel:10px; --r-ctl:8px; --r-kpi:10px; --row:36px; --pad:16px; --side:216px;
  --shadow:0 2px 8px rgba(29,58,82,.03); --shadow-hi:0 4px 12px rgba(29,58,82,.06);
}
/* Focus inayoonekana kila mahali */
:where(a,button,.button,input,select,textarea,summary,[tabindex]):focus-visible{
  outline:var(--focus-ring); outline-offset:var(--focus-offset); border-radius:6px;
}
@media (prefers-reduced-motion:reduce){
  *{animation-duration:.01ms !important;transition-duration:.01ms !important}
}


/* ===== mobile-contrast.css ===== */
/* Usomekaji wa maandishi kwenye simu (2026-10-24).
   Safu ya mwisho: inabadilisha RANGI za maandishi tu pale zilipokaribiana na background.
   Haigusi layout, ids, JS wala data. Ondoa <link> yake ili kurudisha rangi za zamani. */

/* 1. Vichujio vya chaguo-nyingi: jina la chaguo lilikuwa jeupe juu ya kitufe cheupe */
html body .ms-btn,html body .ms-btn .ms-lbl{color:#173b60!important}
html body .ms.has .ms-btn,html body .ms.has .ms-btn .ms-lbl{color:#002147!important}
html body .ms.open .ms-btn,html body .ms-btn:hover,html body .ms-btn:hover .ms-lbl,html body .ms.open .ms-btn .ms-lbl{color:#002147!important}
html body .ms-btn .ms-car{color:#4d6479}

/* 2. Pagination ya foleni (kitufe cheupe kilikuwa na maandishi meupe) */
html body #office-queue .pagination a,html body main .pagination a:not(.on):not(.cur):not(.active){color:#123a63}
html body #office-queue .pagination a{color:#123a63!important;font-weight:800}
html body #office-queue .pagination a.pg-edge.dis,html body .pagination a.pg-edge.dis{opacity:.8!important}
html body #office-queue .pagination a.pg-edge.dis{color:#4d6479!important}

/* 3. Kitufe cha "Foleni ya scan" na kadi za wasifu */
html body .prf-capture-head a.button.secondary.prf-back,html body .prf-capture-head .prf-back{color:#123a63!important;background:#e8f0fd!important;border:1px solid #c9d9ee!important}
html body .recruit-profile .ph-stats .phs .phs-s{color:#e6eef7!important}
html body .recruit-profile .ph-stats .phs.warn .phs-s{color:#fff!important}

/* 4. Maandishi madogo ya kijivu hafifu -> kijivu-bluu iliyokoza */
html body .ptile>span,html body .ptile.miss>span,html body .pkpi .pk-l,html body .pf-step.pf-blocked .pf-n,html body .recruit-profile .ptile span{color:#586c82!important}
html body a.mg-c small,html body .settings-grid span.tl small,html body span.tl>small,html body td .di-empty,html body span.di-empty,html body td .dm-none,html body span.dm-none{color:#5d6f84!important}
html body label.kp.zero span,html body label.kp.zero b,html body td.n span.no,html body td.n .no{color:#5d6f84!important}
html body .mobile-person-number,html body small.mobile-person-number.mobile-only{color:#4d6479!important}
html body .queue-people small,html body .mobile-many-field small{color:#6b5416!important}

html body td small,html body td.queue-person-cell small.muted{color:#4d6479!important}

/* 5. Namba kubwa za sifuri / alama zilizokuwa na rangi hafifu */
html body .page-heading .eyebrow,html body .queue-action-heading .eyebrow{color:#7a5a00!important}
html body .prf-capture-head .eyebrow,html body .prf-capture-head div.eyebrow{color:#0f6b36!important}
html body .rc-cnt{color:#0a6b4d!important}
html body .rc-grp{color:#0b6a85!important}
html body .mobile-section-head a{color:#0f6b36!important}
html body .work-heading button.secondary,html body #work-preview.secondary,html body .work-follow button.secondary{color:#123a63!important}

/* 6. Vitufe vilivyozimwa (disabled): maandishi yasomeke */
@media(max-width:900px){html body main button:disabled:not(.ms-btn),html body main button[disabled]:not(.ms-btn){background:#c4d2ce!important;color:#26413a!important;opacity:1!important;box-shadow:none!important}}

/* 7. Vishale (chips) za takwimu */
html body .chip:not(.on) b{color:#002147!important;background:#e7eef6}
html body .chip.on b{color:#f2c14e!important}

/* 8. Kadi za vyeti (rcv-item) na picha tupu: kitufe cha bluu kilifunika maandishi meusi/kijivu */
html body .rc-gal .rcv-item{background:#fff!important;border-color:#b9cbe0!important}
html body .rc-gal .rcv-item.on{background:#fffbeb!important;border-color:#0b2a4a!important}
html body .rc-gal .rcv-item .tx b,html body .rc-gal .rcv-item.on .tx b{color:#0b2a4a!important;font-size:12.5px!important;font-weight:800!important}
html body .rc-gal .rcv-item .tx small,html body .rc-gal .rcv-item.on .tx small{color:#334e68!important;font-size:11.5px!important;font-weight:600!important}
html body .rc-gal .rcv-item .tx i{color:#0b2a4a!important;background:#fcd116!important}
html body button.pm-ph.mthumb.pm-ph.mthumb.pm-ph.mthumb,html body button.pm-ph.pm-ph.pm-ph.pm-ph.pm-ph{background:#f1f5f9!important;box-shadow:none!important;color:#173b60!important}
html body .pm-ph span,html body .pm-sgbox span{color:#4d6479!important}

/* 9. Namba za hatua na maelezo madogo */
html body nav.queue-stages a:not(.on) b{filter:brightness(.78)}
html body .mobile-stage-chips a b{color:#4d6479!important}
html body .aj-steps li small{color:#4d6479!important}

/* Hakuna kitufe cha kufuta (×) kwenye visanduku vya utafutaji, hata cha kivinjari chenyewe */
input[type=search]::-webkit-search-cancel-button,input[type=search]::-webkit-search-decoration{-webkit-appearance:none;appearance:none;display:none}
/* x rahisi, bila animation: inaonekana tu pale kuna maandishi */
.matokeo-filters .mt-search-x{transition:none!important;animation:none!important;opacity:1!important;visibility:visible!important;transform:translateY(-50%)!important;display:none!important;width:22px!important;height:22px!important;max-height:22px!important;background:#e2e8f0!important;color:#334155!important;font-size:15px!important;font-weight:700!important;line-height:1!important}
.matokeo-filters .mt-search.has-text .mt-search-x{display:flex!important;transform:translateY(-50%)!important}
.matokeo-filters .mt-search-x:hover{background:#cbd5e1!important;color:#0b2a4a!important}
.sx-clear,.sx-clear:hover{transition:none!important;animation:none!important}

/* Maksi: % inaonekana papo hapo baada ya namba */
.pct-wrap{position:relative;display:block}
.pct-wrap>input[name=mark]{-moz-appearance:textfield;appearance:textfield;width:100%}
.pct-wrap>input[name=mark]::-webkit-outer-spin-button,.pct-wrap>input[name=mark]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}
.pct-ghost{position:absolute;top:0;bottom:0;align-items:center;pointer-events:none;white-space:pre;color:#0b2a4a;font-weight:700}
.pct-ghost i{visibility:hidden;font-style:normal;white-space:pre}

/* "x" ya kufuta utafutaji: tulivu kabisa, haina animation wala kuruka */
.matokeo-filters .mt-search-x,.matokeo-filters .mt-search-x:hover,.matokeo-filters .mt-search-x:active,.matokeo-filters .mt-search-x:focus,.matokeo-filters .mt-search-x:focus-visible,
.sx .sx-clear,.sx .sx-clear:hover,.sx .sx-clear:active,.sx .sx-clear:focus,.sx .sx-clear:focus-visible{transition:none!important;animation:none!important;filter:none!important;box-shadow:none!important;outline:0!important;will-change:auto!important}
.matokeo-filters .mt-search-x,.matokeo-filters .mt-search-x:hover,.matokeo-filters .mt-search-x:active,.matokeo-filters .mt-search-x:focus{transform:translateY(-50%)!important}
.matokeo-filters .mt-search-x:hover,.matokeo-filters .mt-search-x:active{background:#e2e8f0!important;color:#334155!important}
.sx .sx-clear,.sx .sx-clear:hover,.sx .sx-clear:active,.sx .sx-clear:focus{transform:translateY(-50%)!important}
