@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/fonts/plus-jakarta-sans-latin-500.woff2) format("woff2")}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-display:swap;font-weight:700;src:url(/fonts/plus-jakarta-sans-latin-700.woff2) format("woff2")}:root{color-scheme:light;--bg: #f3f5fb;--surface: #ffffff;--surface-2: #e9edf7;--fg: #0e1a3a;--muted: #56637f;--line: #dce1ee;--line-strong: #7b86a1;--accent: #2346d6;--accent-hover: #1b3bb8;--accent-fg: #ffffff;--accent-soft: #e0e7ff;--warm: #ffc21a;--warm-hover: #f0b400;--warm-fg: #2b2000;--warm-soft: #fff3cc;--warn: #7a5200;--warn-soft: #fff0c2;--ok: #0f6e44;--ok-soft: #d9f2e5;--bad: #b02c23;--bad-soft: #fbe0dd;--bad-soft-hover: #f9d8d4;--info: #2346d6;--info-soft: #e0e7ff;--mpesa: #1e7f3c;--mpesa-hover: #186a32;--coral: #c4441f;--navy: #0b1b4a;--navy-2: #13266b;--side-fg: #c3cdee;--on-navy: #ffffff;--on-navy-soft: #eef2ff;--on-navy-ok: #7ff0b9;--scrim: rgba(6, 12, 38, .6);--ring: 0 0 0 3px rgba(35, 70, 214, .18);--ring-key: rgba(35, 70, 214, .35);--ring-on-navy: rgba(255, 194, 26, .7);--f-sans: "Plus Jakarta Sans", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--f-display: var(--f-sans);--f-body: var(--f-sans);--f-mono: var(--f-sans);--t-display: 28px;--t-title: 20px;--t-heading: 16px;--t-body: 15px;--t-small: 13px;--t-label: 12px;--t-money: 28px;--t-price: 24px;--t-timer: 40px;--s-1: 4px;--s-2: 8px;--s-3: 12px;--s-4: 16px;--s-5: 20px;--s-6: 24px;--s-8: 32px;--s-12: 48px;--r-xs: 4px;--r-ctl: 6px;--r-card: 8px;--r-sheet: 12px;--r-pill: 999px;--shadow: 0 1px 2px rgba(11, 27, 74, .06), 0 8px 24px rgba(11, 27, 74, .08);--shadow-overlay: 0 12px 40px rgba(6, 12, 38, .28);--ease: cubic-bezier(.2, 0, 0, 1);--t-fast: .15s}*{box-sizing:border-box}html,body{min-height:100%}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{margin:0;font-family:var(--f-body);font-size:var(--t-body);line-height:1.5;background:var(--bg);color:var(--fg);-webkit-text-size-adjust:100%}h1,h2,h3,h4{font-family:var(--f-display);margin:0;line-height:1.2;text-wrap:balance;letter-spacing:-.01em}p{margin:0;text-wrap:pretty}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer}a{color:var(--accent)}:focus{outline:none}:focus-visible{outline:3px solid var(--ring-key);outline-offset:0}[hidden]{display:none!important}.mono{font-variant-numeric:tabular-nums slashed-zero;letter-spacing:.02em}.num{font-variant-numeric:tabular-nums}.muted{color:var(--muted)}.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}svg.ic{width:1.15em;height:1.15em;flex:none;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;vertical-align:-.2em}@media (prefers-reduced-motion: reduce){*{animation:none!important;transition:none!important}}.btn{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:var(--s-2);min-height:44px;padding:0 18px;border-radius:var(--r-ctl);border:1px solid var(--line-strong);background:var(--surface);color:var(--fg);font-weight:600;text-decoration:none;transition-property:background-color,border-color,color,transform;transition-duration:var(--t-fast);transition-timing-function:var(--ease)}.btn:hover{background:var(--surface-2)}.btn:active{transform:translateY(1px)}.btn.pri{background:var(--accent);border-color:var(--accent);color:var(--accent-fg)}.btn.pri:hover{background:var(--accent-hover);border-color:var(--accent-hover)}.btn.mpesa{background:var(--mpesa);border-color:var(--mpesa);color:#fff}.btn.mpesa:hover{background:var(--mpesa-hover);border-color:var(--mpesa-hover)}.btn.ghost{background:transparent;border-color:transparent;color:var(--muted)}.btn.ghost:hover{background:var(--surface-2);color:var(--fg)}.btn.sm{min-height:36px;padding:0 12px;font-size:var(--t-small)}.btn.block{width:100%}.btn[disabled]{opacity:.5;cursor:not-allowed;transform:none}.iconbtn{position:relative;width:38px;height:38px;border-radius:var(--r-ctl);border:1px solid var(--line);background:var(--surface);display:inline-grid;place-items:center;color:var(--muted);transition-property:background-color,color;transition-duration:var(--t-fast)}.iconbtn:hover{background:var(--surface-2);color:var(--fg)}.iconbtn:after{content:"";position:absolute;top:-3px;right:-3px;bottom:-3px;left:-3px}.fld{display:grid;gap:6px;font-size:var(--t-small);font-weight:600}.fld>span{color:var(--fg);font-weight:600}.fld small{font-weight:400;color:var(--muted);font-size:var(--t-small)}.fld .field-err{color:var(--bad);font-weight:600;font-size:var(--t-small)}input:not([type=checkbox],[type=radio],[type=file]),select,textarea{width:100%;min-height:44px;padding:9px 12px;border-radius:var(--r-ctl);border:1px solid var(--line-strong);background:var(--surface);font-size:var(--t-body);font-weight:500;color:var(--fg);transition-property:border-color,box-shadow;transition-duration:var(--t-fast)}input:hover,select:hover,textarea:hover{border-color:var(--muted)}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--accent);box-shadow:var(--ring)}input[aria-invalid=true],select[aria-invalid=true],textarea[aria-invalid=true]{border-color:var(--bad)}input[disabled],select[disabled],textarea[disabled]{background:var(--surface-2);border-color:var(--line);color:var(--muted)}textarea{min-height:120px;resize:vertical}.chk{display:flex;align-items:center;gap:10px;min-height:44px;font-weight:600;font-size:14px}.chk input{width:20px;height:20px;margin:0;accent-color:var(--accent)}.stack{display:grid;gap:14px}.grid>*{min-width:0}.acts{display:flex;gap:10px;flex-wrap:wrap}.center{text-align:center;justify-items:center}.err,.okmsg{padding:10px 12px;border-radius:var(--r-ctl);font-size:14px;font-weight:600}.err{background:var(--bad-soft);color:var(--bad)}.okmsg{background:var(--ok-soft);color:var(--ok)}.notice{display:flex;gap:10px;align-items:flex-start;padding:10px 12px;border-radius:var(--r-ctl);background:var(--warm-soft);color:var(--warn);font-size:14px;font-weight:600}.hint{font-size:var(--t-small);color:var(--muted);background:var(--surface-2);padding:9px 12px;border-radius:var(--r-ctl)}.b{display:inline-flex;align-items:center;gap:5px;padding:2px 9px;border-radius:var(--r-pill);font-size:var(--t-label);font-weight:700;white-space:nowrap}.b-ok{background:var(--ok-soft);color:var(--ok)}.b-bad{background:var(--bad-soft);color:var(--bad)}.b-warn{background:var(--warn-soft);color:var(--warn)}.mark{display:inline-grid;place-items:center;width:40px;height:40px;border-radius:var(--r-ctl);background:var(--accent);color:var(--accent-fg)}.mark svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round}.brandrow{display:flex;align-items:center;gap:10px;font-family:var(--f-display);font-weight:700;font-size:var(--t-title)}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-card);padding:var(--s-4)}.list{display:grid;gap:0}.list>div{display:flex;justify-content:space-between;gap:var(--s-3);padding:10px 0;border-bottom:1px solid var(--line);font-size:14px}.list>div:last-child{border:0}.list .l{color:var(--muted)}.list .r{font-weight:600;text-align:right;min-width:0;overflow-wrap:anywhere}.state{display:grid;justify-items:center;gap:var(--s-3);padding:36px 12px;text-align:center;color:var(--muted)}.state .acts{justify-content:center}.empty{padding:28px 10px;text-align:center;color:var(--muted)}.spin{width:44px;height:44px;border-radius:50%;border:4px solid var(--accent-soft);border-top-color:var(--accent);animation:sp 1s linear infinite}@keyframes sp{to{transform:rotate(360deg)}}.bigicon{width:64px;height:64px;border-radius:50%;display:grid;place-items:center;background:var(--ok-soft);color:var(--ok)}.bigicon svg{width:32px;height:32px}.bigicon.bad{background:var(--bad-soft);color:var(--bad)}#overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:50;display:grid;align-items:end;justify-items:center}.ovbg{position:absolute;top:0;right:0;bottom:0;left:0;background:var(--scrim)}.dlg{position:relative;width:100%;max-width:520px;max-height:92dvh;display:flex;flex-direction:column;overflow:hidden;background:var(--surface);border-radius:var(--r-sheet) var(--r-sheet) 0 0;box-shadow:var(--shadow-overlay)}.dlg.wide{max-width:640px}.dlg h2{flex:none;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:var(--s-4) var(--s-4) var(--s-3) var(--s-5);border-bottom:1px solid var(--line);font-size:var(--t-title)}.dlg-body{flex:1;min-height:0;display:grid;align-content:start;gap:14px;padding:var(--s-4) var(--s-5) calc(var(--s-5) + env(safe-area-inset-bottom,0px));overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:var(--line-strong) transparent}.dlg-body::-webkit-scrollbar{width:10px}.dlg-body::-webkit-scrollbar-thumb{border:3px solid var(--surface);border-radius:var(--r-pill);background:var(--line-strong)}@media (min-width: 620px){#overlay{align-items:center;padding:var(--s-6)}.dlg{border-radius:var(--r-sheet);max-height:min(760px,calc(100dvh - 48px))}.dlg-body{padding-bottom:var(--s-5)}}.dlg p{color:var(--muted)}.dlg .acts .btn{flex:1}.toast{position:fixed;left:50%;bottom:calc(86px + env(safe-area-inset-bottom,0px));transform:translate(-50%,8px);opacity:0;pointer-events:none;z-index:80;max-width:min(92vw,420px);padding:11px 16px;border-radius:var(--r-card);background:var(--fg);color:var(--bg);font-weight:600;font-size:14px;box-shadow:var(--shadow);transition-property:opacity,transform;transition-duration:.2s;transition-timing-function:var(--ease)}.toast.show{display:flex;align-items:center;gap:var(--s-2);padding-right:6px;opacity:1;transform:translate(-50%);pointer-events:auto}.toast:not(.show){visibility:hidden}.toast-msg{flex:1}.toast-x{flex:none;display:grid;place-items:center;width:32px;height:32px;border:0;border-radius:var(--r-ctl);background:transparent;color:inherit;opacity:.8}.toast-x:hover{opacity:1;background:#ffffff24}.toast-x:focus-visible{outline-color:#ffffffb3}.toast.bad{background:var(--bad);color:#fff}.toast.ok{background:var(--ok);color:#fff}.slide{display:none;width:100%;text-align:left;border:0;border-radius:var(--r-card);padding:18px 18px 16px;gap:6px;position:relative;overflow:hidden;min-height:132px;align-content:end}.slide.on{display:grid}.slide h3{font-size:var(--t-title);max-width:19ch}.slide p{font-size:14px;opacity:.92;max-width:34ch}.slide .cta{justify-self:start;margin-top:6px;padding:7px 14px;border-radius:var(--r-pill);background:#fff3;font-weight:700;font-size:var(--t-small)}.ad-green{background:var(--accent);color:var(--accent-fg)}.ad-amber{background:var(--warm);color:var(--warm-fg)}.ad-amber .cta{background:#0000001f}.ad-ink{background:var(--navy);color:var(--on-navy-soft)}.ad-coral{background:var(--coral);color:#fff}@media (pointer: coarse){.btn.sm{min-height:44px;min-width:44px}}
