/* zolilemcelu.com: shared look for every page. Change colours here and the whole site follows. */
:root{
  --bg:#07080A; --surface:#161A1D; --raised:#1E2226; --line:#23282C; --fg:#F5F5F5; --muted:#9A9C9F; --faint:#64676B;
  --accent:#FFFFFF; --accent-ink:#07080A; --good:#1EB083; --paper:#0E1012; --btn-line:#2E3438;
  --serif:'Inter','Geist',system-ui,-apple-system,'Segoe UI',sans-serif;
  --sans:'Geist',system-ui,-apple-system,'Segoe UI',sans-serif;
  --mono:'Geist Mono',ui-monospace,Menlo,monospace;
  color-scheme:dark;
}
:root[data-theme="light"]{
  --bg:#F5F5F0; --surface:#ECECE5; --raised:#FFFFFF; --line:#DCDCD3; --fg:#161714; --muted:#5F6058; --faint:#8F9088;
  --accent:#111214; --accent-ink:#FFFFFF; --good:#16A34A; --paper:#FFFFFF; --btn-line:#C9C9BF; color-scheme:light;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--fg);font-family:var(--sans);font-size:16px;line-height:1.6;-webkit-font-smoothing:antialiased}
a{color:inherit}
img{max-width:100%;display:block}
:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:8px}
.wrap{max-width:720px;margin:0 auto;padding-left:max(20px,env(safe-area-inset-left,0px));padding-right:max(20px,env(safe-area-inset-right,0px))}
.wrap.wide{max-width:1040px}
/* top bar */
header{position:sticky;top:0;z-index:10;background:color-mix(in srgb,var(--bg) 88%,transparent);backdrop-filter:blur(10px);border-bottom:1px solid var(--line);padding-top:env(safe-area-inset-top,0px)}
.bar{display:flex;align-items:center;justify-content:space-between;height:60px;gap:12px}
.logo{display:flex;align-items:center;gap:10px;text-decoration:none;font-weight:600;letter-spacing:-.01em;white-space:nowrap}
.logo i{width:30px;height:30px;color:var(--accent);display:grid;place-items:center}
.logo svg{width:30px;height:30px;display:block}
.bar nav{display:flex;align-items:center;gap:2px}
.bar nav a{font-size:14px;color:var(--muted);text-decoration:none;padding:6px 10px;border-radius:999px;white-space:nowrap}
.bar nav a:hover,.bar nav a[aria-current="page"]{color:var(--fg);background:var(--surface)}
.bar nav a.sub{background:var(--accent);color:var(--accent-ink);font-weight:600;margin-left:6px}
.iconbtn{width:36px;height:36px;border-radius:999px;border:1px solid var(--line);background:transparent;color:var(--fg);display:grid;place-items:center;cursor:pointer;flex:none;margin-left:6px}
.iconbtn svg{width:16px;height:16px}
/* dropdowns */
.dd{position:relative}
.ddb{display:inline-flex;align-items:center;gap:4px;font:inherit;font-size:14px;color:var(--muted);background:none;border:0;padding:6px 10px;border-radius:999px;cursor:pointer;white-space:nowrap}
.ddb:hover,.dd.open .ddb,.ddb[aria-current="page"]{color:var(--fg);background:var(--surface)}
.chev{width:14px;height:14px;transition:transform .2s ease}
.dd.open .chev{transform:rotate(180deg)}
.ddm{position:absolute;top:calc(100% + 8px);left:0;min-width:240px;background:var(--raised);border:1px solid var(--line);border-radius:14px;padding:6px;box-shadow:0 16px 40px rgba(0,0,0,.35);display:none;z-index:30}
.dd.open .ddm{display:block}
@media (hover:hover){.dd:hover .ddm{display:block}.dd:hover .ddb{color:var(--fg);background:var(--surface)}.dd::after{content:"";position:absolute;left:0;right:0;top:100%;height:10px}}
.bar nav .ddm a{display:block;padding:9px 12px;border-radius:10px;color:var(--fg);white-space:normal}
.bar nav .ddm a:hover{background:var(--surface)}
.ddm b{display:block;font-size:14px;font-weight:600}
.ddm span{display:block;font-size:12.5px;color:var(--muted);margin-top:1px}
/* common */
.eyebrow{font-size:12px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;height:40px;padding:0 18px;border-radius:999px;font-weight:600;font-size:14px;text-decoration:none;border:1px solid var(--line);background:transparent;color:var(--fg);cursor:pointer;font-family:inherit}
.btn.solid{background:var(--surface);color:var(--fg);border-color:var(--btn-line)}
.btn.solid:hover{background:var(--raised)}
.btn:hover{filter:brightness(1.06)}
.chip{font-size:12.5px;font-weight:500;border:1px solid var(--line);border-radius:999px;padding:3px 11px;color:var(--muted);text-decoration:none;white-space:nowrap}
h1,h2,h3{font-family:var(--serif);letter-spacing:-.03em;text-wrap:balance}
footer.site{border-top:1px solid var(--line);padding:28px 0 calc(28px + env(safe-area-inset-bottom,0px));color:var(--faint);font-size:13.5px;margin-top:20px}
footer.site .wrap{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap}
footer.site a{color:var(--muted);text-decoration:none}
.draftflag{position:fixed;left:50%;transform:translateX(-50%);bottom:calc(14px + env(safe-area-inset-bottom,0px));z-index:20;background:var(--accent);color:var(--accent-ink);font-size:12.5px;font-weight:600;border-radius:999px;padding:6px 14px;box-shadow:0 6px 20px rgba(0,0,0,.3);white-space:nowrap}
@media (max-width:760px){.bar nav > a:not(.sub),.bar nav .dd{display:none}}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{animation:none!important}}
