@font-face{font-family:Manrope;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/manrope-latin-400-normal-PaqtzbVb.woff2) format("woff2"),url(/assets/manrope-latin-400-normal-8tf8FM3T.woff) format("woff")}@font-face{font-family:Manrope;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/manrope-latin-500-normal-BYYD-dBL.woff2) format("woff2"),url(/assets/manrope-latin-500-normal-DMZssgOp.woff) format("woff")}@font-face{font-family:Manrope;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/manrope-latin-600-normal-4f0koTD-.woff2) format("woff2"),url(/assets/manrope-latin-600-normal-BqgrALkZ.woff) format("woff")}@font-face{font-family:Manrope;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/manrope-latin-700-normal-BZp_XxE4.woff2) format("woff2"),url(/assets/manrope-latin-700-normal-DGRFkw-m.woff) format("woff")}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-latin-400-normal-DMJ8VG8y.woff2) format("woff2"),url(/assets/ibm-plex-mono-latin-400-normal-CvHOgSBP.woff) format("woff")}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-mono-latin-500-normal-DSY6xOcd.woff2) format("woff2"),url(/assets/ibm-plex-mono-latin-500-normal-CB9ihrfo.woff) format("woff")}:root{--ink: #0b0d12;--ink-2: #454b59;--muted: #5b6170;--line: #eceef2;--soft: #f6f7f9;--surface: #ffffff;--state-confirmed-text: #0a6b40;--state-confirmed-bg: #e3f6ec;--state-refused-text: #a52a22;--state-refused-bg: #fdeceb;--state-pending-text: #454b59;--state-pending-bg: #f1f2f5;--state-checking-text: #7a5200;--state-checking-bg: #fff4dc;--state-checking-line: #f1dfb0;--state-information-text: #454b59;--state-information-bg: #f1f2f5;--hazard: #f5b400;--on-ink: #ffffff;--on-ink-muted: #9aa0ac;--ink-raised: #1c1f27;--mark-cut: var(--surface);--font-sans: Manrope, system-ui, -apple-system, "Segoe UI", sans-serif;--font-mono: "IBM Plex Mono", ui-monospace, SFMono-Regular, Menlo, monospace;--operator-momo: #2a78d6;--operator-om: #eb6834;--operator-moov: #1baf7a;--operator-wave: #eda100;--operator-airtel: #e87ba4;--operator-free: #008300;--operator-mpesa: #6250d6;--radius-control: 6px;--radius-card: 10px;font-family:var(--font-sans);color:var(--ink);accent-color:var(--ink)}*{box-sizing:border-box}body{margin:0;background:var(--surface);font-size:14px;line-height:1.5}a{color:var(--ink);text-decoration:underline;text-underline-offset:.15em;text-decoration-color:var(--muted)}a:hover{text-decoration-color:var(--ink)}:focus-visible{outline:2px solid var(--ink);outline-offset:2px}::placeholder{color:var(--muted);opacity:1}::selection{background:var(--ink);color:var(--surface)}.env-ribbon{position:sticky;top:0;z-index:10;height:6px}.env-ribbon.sandbox{background:repeating-linear-gradient(-45deg,var(--hazard) 0 10px,var(--ink) 10px 20px)}.env-ribbon.production{display:none}.env-chip{display:inline-block;font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;padding:2px 8px;border-radius:999px}.env-chip.sandbox{background:var(--hazard);color:var(--ink)}.env-chip.production{color:var(--ink);box-shadow:inset 0 0 0 1px var(--ink)}.lockup{display:inline-flex;align-items:center;gap:.45em;font-weight:700;letter-spacing:-.03em;color:var(--ink)}.lockup svg{flex:none}.shell{display:grid;grid-template-columns:232px 1fr;min-height:calc(100vh - 6px)}nav.side{position:sticky;top:0;height:100vh;overflow-y:auto;background:var(--ink);color:var(--on-ink);--mark-cut: var(--ink);padding:20px 12px;display:flex;flex-direction:column}nav.side .lockup{color:var(--on-ink)}nav.side :focus-visible{outline-color:var(--on-ink)}nav.side .brand{padding:0 8px 20px;display:flex;flex-direction:column;align-items:flex-start;gap:8px}nav.side a{display:block;color:var(--on-ink-muted);padding:7px 10px;border-radius:var(--radius-control);text-decoration:none;font-weight:500}nav.side a:hover{color:var(--on-ink);background:var(--ink-raised)}nav.side a.active{color:var(--ink);background:var(--surface);font-weight:600}nav.side .foot{margin-top:auto;padding:16px 10px 0;font-size:12px;color:var(--on-ink-muted);border-top:1px solid var(--ink-raised)}nav.side .foot a{display:inline;padding:0;color:var(--on-ink)}nav.side .env-chip.production{color:var(--on-ink);box-shadow:inset 0 0 0 1px var(--on-ink)}main{padding:24px 32px;max-width:1400px;min-width:0;overflow-x:auto}header.top{display:flex;gap:16px;align-items:center;margin-bottom:20px}header.top input{flex:1;padding:9px 12px;border:1px solid var(--line);border-radius:var(--radius-control);font:inherit;background:var(--soft)}h1{font-size:28px;font-weight:700;letter-spacing:-.02em;line-height:1.2;margin:0 0 20px}h2{font-size:16px;font-weight:700;letter-spacing:-.01em;margin:20px 0 8px}h3{font-size:12px;font-weight:600;margin:12px 0 6px;color:var(--muted);text-transform:uppercase;letter-spacing:.06em}.cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:16px}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-card);padding:16px 20px}.card h2{margin-top:0}.cards>*,.grid2>*{min-width:0}.card{overflow-x:auto}.card th,.card td{padding:8px 10px}table{width:100%;border-collapse:separate;border-spacing:0;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-card);overflow:hidden}th,td{text-align:left;padding:9px 12px;border-bottom:1px solid var(--line);vertical-align:top}th{font-size:12px;font-weight:600;color:var(--on-ink);text-transform:uppercase;letter-spacing:.05em;background:var(--ink);border-bottom-color:var(--ink)}td.num,th.num{text-align:right}.num,.amount{font-variant-numeric:tabular-nums}.amount,.when{white-space:nowrap}tr:last-child td{border-bottom:0}.muted{color:var(--muted)}.small{font-size:12px}.mono,.diff,code,pre{font-family:var(--font-mono)}.mono{font-size:.92em}.tag{display:inline-flex;align-items:center;gap:5px;padding:1px 9px;border-radius:999px;font-size:12px;font-weight:600;white-space:nowrap;color:var(--ink-2);box-shadow:inset 0 0 0 1px var(--line)}.tag-symbol{font-size:11px}.tag.confirmed{background:var(--state-confirmed-bg);color:var(--state-confirmed-text);box-shadow:none}.tag.refused{background:var(--state-refused-bg);color:var(--state-refused-text);box-shadow:none}.tag.pending{background:var(--state-pending-bg);color:var(--state-pending-text);box-shadow:none}.tag.checking{background:var(--state-checking-bg);color:var(--state-checking-text);box-shadow:none}.tag.information{background:var(--state-information-bg);color:var(--state-information-text);box-shadow:none}.amount-figure{font-weight:600}.amount-currency{font-size:.85em;font-weight:600;color:var(--muted)}.negative,.negative .amount-figure,.negative .amount-currency{color:var(--state-refused-text)}.filters{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:12px}.filters input,.filters select,form input,form select,form textarea,select,:where(input:not([type=checkbox],[type=radio],[type=file]),textarea){padding:7px 10px;border:1px solid var(--line);border-radius:var(--radius-control);font:inherit;font-size:13px;background:var(--surface);color:var(--ink)}button{padding:7px 14px;border-radius:var(--radius-control);border:1px solid var(--line);background:var(--surface);color:var(--ink);cursor:pointer;font:inherit;font-size:13px;font-weight:600}button:hover{border-color:var(--muted)}button.primary{background:var(--ink);color:var(--surface);border-color:var(--ink)}button.danger{background:var(--state-refused-text);color:var(--surface);border-color:var(--state-refused-text)}button:disabled{opacity:.4;cursor:not-allowed}.error{color:var(--state-refused-text);margin:8px 0}.ok{color:var(--state-confirmed-text)}.kv{display:grid;grid-template-columns:max-content 1fr;gap:6px 20px}.kv dt{color:var(--muted)}.kv dd{margin:0}.row{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.grid2{display:grid;grid-template-columns:1fr 1fr;gap:16px}form.stack{display:grid;gap:10px;max-width:520px}form.stack label{display:grid;gap:4px;font-size:12px;font-weight:600;color:var(--muted)}.signin{width:100%;max-width:400px;margin:0 auto}.signin-page{padding:72px 16px;display:grid;justify-items:center;gap:24px}.signin-head{display:grid;justify-items:center;gap:6px;text-align:center}.signin-head h1{margin:0;font-size:inherit;letter-spacing:normal}.signin-head p{margin:0}.signin-head .env-chip{margin-top:6px}.lang-switch{display:flex;justify-content:center;gap:4px;margin-top:20px;padding-top:16px;border-top:1px solid var(--line)}.lang-switch button{border:0;background:none;padding:4px 8px;font-size:12px;font-weight:500;color:var(--muted)}.lang-switch button[aria-pressed=true]{color:var(--ink);font-weight:700}.lang-switch button+button:before{content:"·";margin-right:12px;color:var(--muted);font-weight:500}.diff{font-size:12px}.timeline li{margin-bottom:6px}.tabs{display:flex;gap:4px;border-bottom:1px solid var(--line);margin-bottom:16px}.tabs a{padding:8px 12px;border-bottom:2px solid transparent;color:var(--ink-2);text-decoration:none;font-weight:500}.tabs a.active{border-bottom-color:var(--ink);color:var(--ink);font-weight:700}details summary{cursor:pointer;font-weight:600}pre{background:var(--soft);border:1px solid var(--line);border-radius:var(--radius-control);padding:10px;overflow:auto;font-size:12px}.warnbox{background:var(--state-checking-bg);color:var(--ink);border:1px solid var(--state-checking-line);padding:10px 14px;border-radius:var(--radius-control);margin:8px 0}.sr-only{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.dt-bar{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-bottom:10px}.dt-bar input.dt-search{flex:1;min-width:220px;background:var(--soft)}.chip-wrap{position:relative;display:inline-flex;align-items:center}button.chip{padding:5px 12px;border-radius:999px;font-size:12px;background:var(--surface)}button.chip.active{background:var(--ink);color:var(--on-ink);border-color:var(--ink);padding-right:30px}button.chip-clear{position:absolute;right:4px;padding:0 6px;border:0;background:none;color:var(--on-ink);font-size:12px;border-radius:999px}button.chip-clear:hover{border:0}button.chip-clear:focus-visible{outline-color:var(--on-ink);outline-offset:-2px}.chip-menu{position:absolute;top:100%;left:0;z-index:5;margin-top:4px;min-width:160px;display:grid;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-control);padding:4px;box-shadow:0 4px 16px #0b0d121f}.chip-menu button{border:0;text-align:left;font-weight:500;white-space:nowrap}.chip-menu button:hover{background:var(--soft)}.chip-menu button[aria-pressed=true]{background:var(--ink);color:var(--on-ink)}th button.sort{all:unset;cursor:pointer;display:inline-flex;gap:4px;align-items:center;text-transform:inherit;letter-spacing:inherit;font:inherit;color:inherit}th button.sort:focus-visible{outline:2px solid var(--on-ink);outline-offset:2px}th button.sort .s{font-size:9px;opacity:.55}th button.sort .s.on{opacity:1}th.chev,td.chev{width:28px;padding-right:0}button.toggle{border:0;background:none;padding:0 4px;color:var(--muted);font-size:12px}th.act,td.act{text-align:right;white-space:nowrap}td.act>*+*{margin-left:4px}td.act button,a.btn{padding:4px 9px;font-size:12px}.dt-scroll{overflow-x:auto;border:1px solid var(--line);border-radius:var(--radius-card)}.dt-scroll>table{border:0;border-radius:0;overflow:visible}.dt th,.dt td{padding-left:8px;padding-right:8px}.dt th.act,.dt td.act{position:sticky;right:0}.dt td.act{background:var(--surface);box-shadow:-6px 0 6px -6px #0b0d1133}.dt tr.open td.act{background:var(--soft)}a.btn{display:inline-block;border:1px solid var(--line);border-radius:var(--radius-control);background:var(--surface);color:var(--ink);font-weight:600;text-decoration:none}a.btn:hover{border-color:var(--muted)}a.btn.primary{background:var(--ink);color:var(--on-ink);border-color:var(--ink)}tr.open td{background:var(--soft);border-bottom:0}tr.sum td{background:var(--soft);padding:4px 12px 16px 40px}.sumgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:14px 24px}.sumgrid>div>span:first-child{display:block;font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);font-weight:600;margin-bottom:2px}.dt-foot{display:flex;align-items:center;gap:10px;margin-top:10px;font-size:12px;color:var(--muted);flex-wrap:wrap}.dt-foot .sp{flex:1}.pg{display:inline-flex;gap:4px;align-items:center}.pg button{min-width:30px;padding:4px 6px;font-size:12px}.pg .gap{min-width:20px;text-align:center}.dt-empty{border:1px dashed var(--line);border-radius:var(--radius-card);padding:24px;text-align:center}.dt-empty p{margin:4px 0}.dt-error{display:flex;gap:12px;align-items:center}.verdict{border-left:6px solid var(--verdict-colour, var(--state-confirmed-text));background:var(--surface);border-radius:var(--radius-card);padding:14px 16px;margin-bottom:16px;border-top:1px solid var(--line);border-right:1px solid var(--line);border-bottom:1px solid var(--line)}.verdict.confirmed{--verdict-colour: var(--state-confirmed-text)}.verdict.checking{--verdict-colour: var(--state-checking-text)}.verdict.refused{--verdict-colour: var(--state-refused-text)}.verdict-headline{margin:0;color:var(--verdict-colour)}.verdict-subject{margin:6px 0 0}.verdict-updated{margin:6px 0 0;color:var(--muted)}.headline{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px;margin-bottom:16px}.headline-figure{display:flex;flex-direction:column;gap:4px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-card);padding:14px 16px;color:var(--ink);text-decoration:none}.headline-figure:hover{border-color:var(--ink)}.headline-label{font-size:12px;color:var(--muted)}.headline-value{font-size:24px;font-weight:600;font-variant-numeric:tabular-nums}.headline-row{display:flex;flex-direction:column}.route-chart{position:relative;overflow:visible}.card.home-chart{overflow:visible}.route-chart .rc-head{display:flex;justify-content:space-between;align-items:baseline;gap:12px;flex-wrap:wrap}.route-chart .rc-head h2{margin:0}.route-chart .seg{display:inline-flex;border:1px solid var(--line);border-radius:var(--radius-control);overflow:hidden}.route-chart .seg button{border:0;border-radius:0;background:var(--surface);color:var(--ink);padding:3px 10px;font-size:12px}.route-chart .seg button[aria-pressed=true]{background:var(--ink);color:var(--surface)}.route-chart .chips{display:flex;gap:6px;flex-wrap:wrap;margin:10px 0 2px}.route-chart .chip{border-radius:99px;padding:2px 10px;font-size:12px;color:var(--ink)}.route-chart .chip[aria-pressed=true]{background:var(--ink);color:var(--surface);border-color:var(--ink)}.route-chart .chip .departing{color:var(--state-refused-text);font-weight:700;margin-left:4px}.route-chart .chip[aria-pressed=true] .departing{color:var(--on-ink)}.route-chart .legend{display:flex;gap:14px;flex-wrap:wrap;font-size:12px;color:var(--ink);margin:8px 0 4px}.route-chart .legend i{display:inline-block;width:14px;height:2px;vertical-align:middle;margin-right:5px;border-radius:2px}.route-chart .legend i.band{height:8px;background:var(--ink);opacity:.15}.route-chart svg{display:block;overflow:visible;width:100%}.route-chart svg text{fill:var(--ink);font-size:12px}.route-chart svg text.axis{fill:var(--muted);font-size:11px}.route-chart svg .grid{stroke:var(--line)}.route-chart svg .grid.floor{stroke:var(--muted)}.route-chart svg .band-fill{fill:var(--ink);opacity:.08}.route-chart svg .crosshair{stroke:var(--muted);stroke-dasharray:3 3}.route-chart svg .end-dot{stroke:var(--surface);stroke-width:2}.route-chart .tip{position:absolute;pointer-events:none;background:var(--ink);color:var(--surface);border-radius:var(--radius-control);padding:6px 9px;font-size:12px;line-height:1.4;white-space:nowrap;z-index:5}.route-chart .tip .k{opacity:.7}.route-chart .tip .swatch{display:inline-block;width:8px;height:8px;border-radius:50%;margin-right:5px}.home-main{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr);gap:16px;align-items:start;margin-bottom:16px}.home-main>*{min-width:0}.waiting{margin-bottom:16px}.home-main .waiting{margin-bottom:0}.business-line{display:flex;flex-wrap:wrap;gap:4px 20px;color:var(--muted)}.business-margin.negative{color:var(--state-refused-text)}@media(max-width:800px){.home-main{grid-template-columns:1fr}}
