:root{--paper:#F8F5EE;--ink:#153E75;--muted:#5A6A82;--accent:#153E75;--accent2:#8A8D91;--reward:#C9A227;--card:#FFFdf8;--rule:#D6D0C4;--shadow:#153E75;--display:Georgia, 'Palatino Linotype', serif;--sans:Georgia, Palatino, serif;--mono:ui-monospace, Courier New, monospace;}

:root{--paper:#F6F1E8;--ink:#161410;--muted:#5E574C;--accent:#9B1D2E;--accent2:#1F4E5C;--reward:#C9A227;--card:#FFFBF3;--rule:#D9D0BF;--shadow:#161410;}
*{box-sizing:border-box}
html,body{margin:0;padding:0;background:var(--paper);color:var(--ink);font:16px/1.5 var(--sans, Georgia, 'Palatino Linotype', Palatino, serif)}
a{color:var(--accent)} a:hover{color:var(--accent2)}
.wrap{max-width:920px;margin:0 auto;padding:20px 22px 80px}
header.top{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:6px 0 18px;border-bottom:3px solid var(--ink)}
.brand{display:flex;align-items:center;gap:12px;text-decoration:none;color:inherit}
.mark{width:48px;height:48px;display:grid;place-items:center;font:800 11px/1 var(--mono, ui-monospace, 'Courier New', monospace);letter-spacing:.04em;text-align:center;background:var(--accent);color:var(--paper);border:2px solid var(--ink)}
.wordmark{font-weight:800;font-size:22px;letter-spacing:-.03em;line-height:1;font-family:var(--display, inherit)}
.wordmark span{display:block;font:400 11px/1.25 var(--mono, ui-monospace, 'Courier New', monospace);letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin-top:4px}
nav a{margin-left:14px;font:700 12px/1 var(--mono, ui-monospace, 'Courier New', monospace);letter-spacing:.08em;text-transform:uppercase;text-decoration:none;color:var(--ink);border-bottom:2px solid transparent}
nav a:hover,nav a[aria-current]{border-bottom-color:var(--accent)}
h1{font-family:var(--display, inherit);font-size:clamp(36px,6.4vw,72px);line-height:.95;letter-spacing:-.04em;margin:26px 0 12px;font-weight:800}
.lede{font-size:19px;max-width:40rem;margin:0 0 24px}
.panel{background:var(--card);border:2px solid var(--ink);box-shadow:6px 6px 0 var(--shadow);padding:20px;margin:16px 0}
label, .lab{font:700 11px/1 var(--mono, ui-monospace, 'Courier New', monospace);letter-spacing:.1em;text-transform:uppercase;display:block;margin:10px 0 6px}
input,select,textarea{font:16px/1.4 var(--sans, Georgia, serif);padding:10px 12px;border:1.5px solid var(--ink);background:var(--paper);color:var(--ink);width:100%;min-height:44px}
textarea{min-height:100px;width:100%}
.row{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px}
button,.btn{appearance:none;font:700 13px/1 var(--mono, ui-monospace, 'Courier New', monospace);letter-spacing:.05em;text-transform:uppercase;background:var(--ink);color:var(--paper);border:2px solid var(--ink);padding:14px 16px;min-height:44px;box-shadow:0 4px 0 var(--accent);cursor:pointer;text-decoration:none;display:inline-flex;align-items:center;justify-content:center}
button.ghost,.btn.ghost{background:transparent;color:var(--ink);box-shadow:0 4px 0 var(--ink)}
button:hover,.btn:hover{transform:translateY(-2px)}
button:active,.btn:active{transform:translateY(3px);box-shadow:0 1px 0 var(--accent)}
.btns{display:flex;flex-wrap:wrap;gap:10px;margin:14px 0}
.prices{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;margin:28px 0}
.price{background:var(--card);border:1.5px solid var(--ink);padding:16px}
.price .plan{font:700 11px/1 var(--mono, ui-monospace, 'Courier New', monospace);letter-spacing:.1em;text-transform:uppercase;margin-bottom:8px}
.price strong{display:block;font-size:28px;letter-spacing:-.03em}
.price .ksh{font:600 13px/1.3 var(--mono, ui-monospace, 'Courier New', monospace);color:var(--muted)}
table{width:100%;border-collapse:collapse;font-size:15px}
th,td{border-bottom:1px solid var(--rule);padding:8px 6px;text-align:left;vertical-align:top}
th{font:700 11px/1 var(--mono, ui-monospace, 'Courier New', monospace);letter-spacing:.08em;text-transform:uppercase}
td.num,th.num{text-align:right;font-variant-numeric:tabular-nums;font-family:var(--mono, ui-monospace, monospace)}
.fine{font:13px/1.45 var(--mono, ui-monospace, 'Courier New', monospace);color:var(--muted)}
.toast{position:fixed;bottom:20px;left:50%;transform:translateX(-50%) translateY(80px);background:var(--ink);color:var(--paper);padding:12px 18px;font:700 13px/1 var(--mono, ui-monospace, 'Courier New', monospace);opacity:0;transition:.3s;z-index:9}
.toast.show{opacity:1;transform:translateX(-50%) translateY(0)}
.stamp{display:inline-block;border:3px solid var(--accent2);color:var(--accent2);font:800 12px/1 var(--mono, ui-monospace, monospace);letter-spacing:.08em;padding:6px 8px;transform:rotate(-8deg);animation:thump .4s cubic-bezier(.34,1.56,.64,1) both;background:var(--card)}
@keyframes thump{from{transform:rotate(-8deg) scale(2.2);opacity:0}to{transform:rotate(-8deg) scale(1);opacity:1}}
footer{margin-top:56px;background:var(--ink);color:var(--paper);padding:28px 22px 40px}
footer .wrap{padding:0} footer a{color:var(--reward)}
.answers a{display:inline-flex;margin:0 8px 8px 0;padding:8px 12px;min-height:44px;align-items:center;border:1.5px solid var(--ink);text-decoration:none;color:var(--ink);background:var(--card);font:600 13px/1 var(--mono, ui-monospace, monospace)}
.answers a:hover{background:var(--reward);transform:translateY(-3px)}
.out{margin-top:16px;white-space:pre-wrap}
.hero-obj{float:right;margin:0 0 12px 16px}
@media (max-width:640px){.hero-obj{float:none;margin:0 0 12px} h1{font-size:clamp(32px,11vw,48px)}}
@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}
@media print{header.top,footer,.btns,nav,.prices{display:none!important} body{background:#fff}}
/* skins */
body.skin-sticker .mark{border-radius:6px;background:#111;color:#F5C400;box-shadow:0 0 0 3px #F5C400,0 0 0 5px #111}
body.skin-sticker header.top{border-bottom:6px solid #F5C400}
body.skin-postcard .mark{background:#E8A0B0;color:#1E3A5F;transform:rotate(-6deg)}
body.skin-postcard header.top{border-bottom:3px dashed var(--ink)}
body.skin-crate .mark{border-radius:0;background:#E85D04;color:#fff;font-size:10px}
body.skin-crate{background-image:repeating-linear-gradient(90deg,transparent,transparent 40px,rgba(0,0,0,.04) 40px,rgba(0,0,0,.04) 42px)}
body.skin-ticket .mark{border-radius:4px;background:#3D0C11;color:#D4A017}
body.skin-ticket .panel{border-style:dashed;border-radius:8px}
body.skin-type .mark{background:#0B3C5D;color:#F6F0E4}
body.skin-type h1{font-family:'Courier New',ui-monospace,monospace;letter-spacing:-.06em}
body.skin-exam .mark{background:#0B1F3A;color:#F7F7F2;border-radius:0}
body.skin-exam body,body.skin-exam{background-image:repeating-linear-gradient(#F7F7F2, #F7F7F2 28px, #D7E3F4 29px)}
body.skin-bank .mark{background:#0C3B2E;color:#F2EFE6}
body.skin-bank header.top{border-bottom:4px double var(--ink)}
body.skin-awning .mark{background:repeating-linear-gradient(90deg,#C1121F 0 8px,#fff 8px 16px);color:#111}
body.skin-graph{background-image:linear-gradient(rgba(44,110,173,.15) 1px,transparent 1px),linear-gradient(90deg,rgba(44,110,173,.15) 1px,transparent 1px);background-size:24px 24px}
body.skin-graph .mark{background:#2C6EAD;color:#fff;border-radius:0}
body.skin-timer .mark{border-radius:50%;background:#E85D04;color:#1A1A1A}
body.skin-cart .mark{background:#C8F542;color:#111;border-radius:4px}
body.skin-board .mark{background:#0D1B2A;color:#FFB703;font-family:ui-monospace,monospace}
body.skin-board h1{font-family:ui-monospace,'Courier New',monospace}
body.skin-contract .mark{background:#153E75;color:#F8F5EE;border-radius:2px}
body.skin-contract header.top{border-bottom:1.5px solid var(--ink)}

/* related-tools strip — added 12 Nov 2026 for the tool network */
nav.related-tools{margin-top:1.25rem;padding-top:1.1rem;border-top:1px solid color-mix(in srgb, currentColor 35%, transparent)}
nav.related-tools .related-tools-h{margin:0 0 .55rem;font-weight:650;letter-spacing:.01em}
nav.related-tools ul{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:.45rem 1.35rem}
nav.related-tools li{margin:0}
nav.related-tools a{text-decoration:underline;text-underline-offset:3px}
nav.related-tools .rt-tag{opacity:.8}

