@import url('https://fonts.googleapis.com/css2?family=Bricolage+Grotesque:opsz,wght@12..96,400..800&family=IBM+Plex+Mono:wght@400;500&family=IBM+Plex+Sans:wght@400;500;600;700&family=IBM+Plex+Sans+Condensed:wght@500;600;700&display=swap');:root, [data-theme="light"]{--bg:#ECE9E0;--paper:#F7F5EF;--paper2:#FBFAF6;--ink:#1B232B;--ink2:#46505B;--muted:#6B7480;--line:#D7D2C4;--line2:#E7E3D7;--accent:#3160FB;--accent-ink:#fff;--topbar:#1B232B;--topbar-ink:#F2F0E8;--topbar-dim:#C9CDD3;--logo-bg:#1B232B;--logo-line:#F2F0E8;--shadow:0 8px 24px rgba(20,28,36,.10);}[data-theme="dark"]{--bg:#0F1318;--paper:#171F27;--paper2:#1D2731;--ink:#ECEAE2;--ink2:#AAB2BB;--muted:#828B95;--line:#2A343E;--line2:#222C35;--accent:#5B7CFF;--accent-ink:#0A1024;--topbar:#0B0F13;--topbar-ink:#ECEAE2;--topbar-dim:#9AA2AB;--logo-bg:#0B0F13;--logo-line:#ECEAE2;--shadow:0 10px 30px rgba(0,0,0,.45);}*{box-sizing:border-box;}html, body{margin:0;}body{background:var(--bg);color:var(--ink);font-family:'IBM Plex Sans', ui-sans-serif, system-ui, sans-serif;-webkit-font-smoothing:antialiased;transition:background .25s ease, color .25s ease;}a{color:inherit;text-decoration:none;}code{font-family:'IBM Plex Mono', monospace;font-size:.9em;background:var(--line2);padding:1px 6px;border-radius:5px;}.topbar{position:sticky;top:0;z-index:60;background:var(--topbar);color:var(--topbar-ink);display:flex;align-items:center;gap:18px;padding:10px 22px;box-shadow:0 1px 0 rgba(255,255,255,.05);}.brand{display:flex;align-items:center;gap:12px;}.logo{display:block;height:28px;width:auto;}.kj-brand .logo{height:24px;}.brandtext{display:flex;flex-direction:column;line-height:1.05;}.brandtext b{font-family:'Bricolage Grotesque';font-weight:800;font-size:19px;letter-spacing:.6px;}.brandtext i{font-style:normal;font-family:'IBM Plex Sans Condensed';font-size:11.5px;color:var(--topbar-dim);letter-spacing:.4px;margin-top:2px;}.topnav{margin-left:auto;display:flex;gap:4px;flex-wrap:wrap;}.topnav a{font-family:'IBM Plex Sans Condensed';font-weight:600;font-size:13px;color:var(--topbar-dim);padding:7px 12px;border-radius:7px;transition:background .15s, color .15s;}.topnav a:hover{background:rgba(255,255,255,.08);color:var(--topbar-ink);}.topnav a.on{background:var(--accent);color:var(--accent-ink);}.themebtn{background:rgba(255,255,255,.08);color:var(--topbar-ink);border:0;cursor:pointer;width:34px;height:34px;border-radius:8px;font-size:16px;line-height:1;flex:none;}.themebtn:hover{background:rgba(255,255,255,.16);}.hero{max-width:1180px;margin:0 auto;padding:38px 22px 10px;}.eyebrow{display:inline-block;font-family:'IBM Plex Mono';font-size:11.5px;letter-spacing:1.2px;text-transform:uppercase;color:var(--accent);margin-bottom:12px;}.hero h1{font-family:'Bricolage Grotesque';font-weight:800;font-size:clamp(28px,4.4vw,46px);line-height:1.04;margin:0 0 12px;letter-spacing:.2px;}.hero p{font-size:15px;color:var(--ink2);max-width:780px;line-height:1.55;margin:0 0 20px;}.toolrow{display:flex;align-items:center;gap:12px;flex-wrap:wrap;}.search{flex:1;min-width:240px;max-width:480px;display:flex;align-items:center;gap:9px;background:var(--paper);border:1px solid var(--line);border-radius:10px;padding:11px 13px;color:var(--ink2);}.search input{border:0;outline:0;background:transparent;font-size:14px;width:100%;color:var(--ink);font-family:inherit;}.btn{font-family:'IBM Plex Sans Condensed';font-weight:700;font-size:13.5px;letter-spacing:.4px;background:var(--accent);color:var(--accent-ink);padding:11px 18px;border-radius:10px;border:1px solid transparent;transition:transform .1s, filter .15s;}.btn:hover{filter:brightness(1.05);transform:translateY(-1px);}.btn.ghost{background:transparent;color:var(--ink);border-color:var(--line);}.btn.ghost:hover{border-color:var(--accent);color:var(--accent);}.stats{max-width:1180px;margin:22px auto 0;padding:0 22px;display:grid;grid-template-columns:repeat(4,1fr);gap:14px;}.stat{background:var(--paper);border:1px solid var(--line);border-radius:12px;padding:16px 18px;display:flex;flex-direction:column;gap:3px;}.stat b{font-family:'Bricolage Grotesque';font-weight:800;font-size:24px;letter-spacing:.3px;}.stat span{font-family:'IBM Plex Sans Condensed';font-size:12px;color:var(--muted);text-transform:uppercase;letter-spacing:.6px;}.wrap{max-width:1180px;margin:0 auto;padding:14px 22px 50px;}.block{margin-top:34px;}.block-head{display:flex;align-items:baseline;gap:14px;border-bottom:1px solid var(--line);padding-bottom:9px;margin-bottom:16px;}.block-head h2{font-family:'Bricolage Grotesque';font-weight:800;font-size:20px;margin:0;letter-spacing:.3px;}.count{margin-left:auto;font-family:'IBM Plex Mono';font-size:12px;color:var(--muted);}.lede{font-size:14.5px;color:var(--ink2);max-width:820px;line-height:1.6;margin:0 0 16px;}.empty{font-size:14px;color:var(--muted);padding:18px 0;}.journey{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(5,1fr);gap:10px;counter-reset:lv;}.journey li{background:var(--paper);border:1px solid var(--line);border-radius:10px;padding:12px 12px;display:flex;align-items:center;gap:10px;}.journey .lv{font-family:'Bricolage Grotesque';font-weight:800;font-size:14px;color:var(--accent-ink);background:var(--accent);width:26px;height:26px;border-radius:7px;display:grid;place-items:center;flex:none;}.journey .nm{font-family:'IBM Plex Sans Condensed';font-weight:600;font-size:13px;line-height:1.2;}.filters{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:20px;}.chip{font-family:'IBM Plex Sans Condensed';font-weight:600;font-size:12.5px;cursor:pointer;background:var(--paper);color:var(--ink2);border:1px solid var(--line);border-radius:20px;padding:6px 13px;transition:all .15s;}.chip:hover{border-color:var(--c, var(--accent));color:var(--ink);}.chip.on{background:var(--ink);color:var(--paper);border-color:var(--ink);}.cat-sec{margin-top:26px;}.cat-head{display:flex;align-items:center;gap:11px;margin:0 0 13px;}.cat-head .bar{width:26px;height:9px;border-radius:3px;background:var(--c);}.cat-head h3{font-family:'IBM Plex Sans Condensed';font-weight:700;font-size:15px;margin:0;text-transform:uppercase;letter-spacing:.8px;}.cat-head .n{font-family:'IBM Plex Mono';font-size:11.5px;color:var(--muted);}.cards{display:grid;grid-template-columns:repeat(auto-fill, minmax(250px,1fr));gap:14px;}.card{position:relative;display:flex;flex-direction:column;gap:8px;background:var(--paper);border:1px solid var(--line);border-top:4px solid var(--c,#5B6470);border-radius:11px;padding:15px 16px 16px;min-height:120px;transition:transform .12s, box-shadow .12s, border-color .12s;}.card:hover{transform:translateY(-3px);box-shadow:var(--shadow);}.card .badge{font-family:'IBM Plex Mono';font-size:11px;font-weight:600;color:#fff;background:var(--c,#5B6470);align-self:flex-start;padding:2px 9px;border-radius:20px;}.card .ttl{font-family:'Bricolage Grotesque';font-weight:700;font-size:16px;line-height:1.25;}.card .desc{font-size:12.5px;color:var(--ink2);line-height:1.45;}.card .meta{margin-top:auto;display:flex;align-items:center;justify-content:space-between;gap:8px;}.card .tag{font-family:'IBM Plex Sans Condensed';font-size:11px;color:var(--muted);text-transform:uppercase;letter-spacing:.5px;}.card .go{font-family:'IBM Plex Mono';font-size:11px;color:var(--c,#5B6470);opacity:.95;}.foot{background:var(--topbar);color:var(--topbar-dim);margin-top:36px;padding:22px;font-family:'IBM Plex Mono';font-size:11.5px;}.foot .in{max-width:1180px;margin:0 auto;display:flex;justify-content:space-between;gap:14px;flex-wrap:wrap;}.foot .by{color:var(--accent);}@media (max-width:860px){.stats{grid-template-columns:repeat(2,1fr);}.journey{grid-template-columns:repeat(2,1fr);}}@media (max-width:520px){.stats{grid-template-columns:1fr 1fr;}.journey{grid-template-columns:1fr;}}@media print{.topbar, .toolrow, .filters, .themebtn{display:none !important;}body{background:#fff;}.card{break-inside:avoid;box-shadow:none;}}.viewbar{display:flex;align-items:center;gap:12px;flex-wrap:wrap;background:var(--paper);border-bottom:1px solid var(--line);padding:10px 22px;}.viewbar .back{font-family:'IBM Plex Sans Condensed';font-weight:700;font-size:13px;color:var(--accent);}.viewbar .vtitle{display:flex;align-items:center;gap:8px;font-family:'Bricolage Grotesque';font-weight:700;font-size:15px;}.viewbar .vtitle .dot{width:10px;height:10px;border-radius:3px;background:var(--c);}.viewbar .vcat{font-family:'IBM Plex Sans Condensed';font-size:11px;color:var(--muted);text-transform:uppercase;letter-spacing:.6px;}.viewbar .spacer{margin-left:auto;}.viewbar .pill{font-family:'IBM Plex Mono';font-size:11.5px;color:var(--ink2);background:var(--bg);border:1px solid var(--line);border-radius:20px;padding:6px 12px;transition:border-color .15s, color .15s;}.viewbar .pill:hover{border-color:var(--accent);color:var(--accent);}.viewbar .pill.disabled{opacity:.4;pointer-events:none;}html.viewer-doc, body.viewer{height:100%;}body.viewer{margin:0;background:var(--bg);display:flex;flex-direction:column;min-height:100vh;min-height:100dvh;}body.viewer .topbar{flex:0 0 auto;}.viewbar{flex:0 0 auto;}.frame{flex:1 1 auto;width:100%;min-height:0;border:0;display:block;background:var(--bg);}.to-top{position:fixed;right:20px;bottom:20px;z-index:80;width:46px;height:46px;border-radius:50%;border:1px solid var(--line);background:var(--paper);color:var(--ink);font-size:19px;line-height:1;cursor:pointer;box-shadow:var(--shadow);display:grid;place-items:center;opacity:0;visibility:hidden;transform:translateY(10px);transition:opacity .2s ease, transform .2s ease, visibility .2s ease, border-color .15s, color .15s;}.to-top.show{opacity:1;visibility:visible;transform:translateY(0);}.to-top:hover{border-color:var(--accent);color:var(--accent);}@media (max-width:560px){.viewbar .vcat{display:none;}.viewbar{gap:8px;padding:9px 14px;}.to-top{right:14px;bottom:14px;}}@media print{.viewbar, .to-top{display:none !important;}}.topnav .navgrp{position:relative;}.topnav .navgrp > .navtop{display:inline-flex;align-items:center;gap:5px;}.topnav .navgrp > .navtop .caret{font-size:10px;opacity:.8;}.topnav .submenu{position:absolute;top:100%;left:0;min-width:248px;background:var(--paper);border:1px solid var(--line);border-radius:10px;box-shadow:0 16px 40px rgba(0,0,0,.22);padding:7px;display:none;flex-direction:column;gap:1px;z-index:60;}.topnav .navgrp:hover > .submenu, .topnav .navgrp:focus-within > .submenu{display:flex;}.topnav .submenu a{display:flex;align-items:center;gap:8px;color:var(--ink);background:transparent;font-family:'IBM Plex Sans Condensed';font-weight:600;font-size:13px;padding:8px 10px;border-radius:7px;white-space:nowrap;}.topnav .submenu a:hover{background:var(--line2);color:var(--ink);}.sdot{width:9px;height:9px;border-radius:50%;display:inline-block;flex:none;}.card .badge{position:absolute;top:13px;right:13px;width:12px;height:12px;min-width:0;padding:0;border-radius:50%;font-size:0;line-height:0;color:transparent;}.subcat{margin:14px 0 6px;}.subcat-head{display:flex;align-items:center;gap:9px;margin:2px 0 11px;}.subcat-head .sdot{width:10px;height:10px;}.subcat-head h4{font-family:'IBM Plex Sans Condensed';font-weight:700;font-size:13px;margin:0;text-transform:uppercase;letter-spacing:.5px;color:var(--ink2);}.subcat-head h4 a{color:inherit;text-decoration:none;}.subcat-head h4 a:hover{color:var(--accent);}.subcat-head .sn{font-family:'IBM Plex Mono';font-size:11px;color:var(--muted);}.cat-head h3 a{color:inherit;text-decoration:none;}.cat-head h3 a:hover{color:var(--accent);}.filters a.chip{text-decoration:none;display:inline-flex;align-items:center;gap:7px;}.filters .chip .cc{font-family:'IBM Plex Mono';font-size:10.5px;opacity:.7;}.cat-hero .eyebrow{color:var(--c, var(--accent));}.navtoggle{display:none;background:rgba(255,255,255,.08);border:0;border-radius:9px;width:42px;height:38px;padding:9px 10px;cursor:pointer;margin-left:auto;flex-direction:column;justify-content:space-between;}.navtoggle span{display:block;height:2px;border-radius:2px;background:var(--topbar-ink);transition:transform .2s ease, opacity .2s ease;}.navtoggle:hover{background:rgba(255,255,255,.16);}body.nav-open .navtoggle span:nth-child(1){transform:translateY(8px) rotate(45deg);}body.nav-open .navtoggle span:nth-child(2){opacity:0;}body.nav-open .navtoggle span:nth-child(3){transform:translateY(-8px) rotate(-45deg);}.navcaret{display:none;}@media (max-width:860px){.topbar{flex-wrap:wrap;}.navtoggle{display:flex;}.themebtn{margin-left:8px;}.topnav{display:none;order:10;flex-basis:100%;flex-direction:column;gap:0;margin:8px -22px -10px;padding:6px 12px 12px;background:var(--topbar);border-top:1px solid rgba(255,255,255,.08);max-height:calc(100vh - 70px);overflow-y:auto;}body.nav-open .topnav{display:flex;}.topnav > a, .topnav .navgrp > .navtop{display:block;width:100%;font-size:15px;padding:13px 10px;border-radius:9px;min-height:44px;}.topnav .navgrp{position:relative;width:100%;}.topnav .navgrp > .navtop{padding-right:54px;}.navcaret{display:grid;place-items:center;position:absolute;top:4px;right:2px;width:44px;height:44px;background:transparent;border:0;border-radius:9px;color:var(--topbar-dim);font-size:13px;cursor:pointer;transition:transform .2s ease;}.navcaret:hover{background:rgba(255,255,255,.10);color:var(--topbar-ink);}.topnav .navgrp.open > .navcaret{transform:rotate(180deg);}.topnav .submenu{position:static;display:none;min-width:0;background:transparent;border:0;box-shadow:none;padding:0 0 6px 14px;}.topnav .navgrp.open > .submenu{display:flex;flex-direction:column;gap:2px;}.topnav .navgrp:hover > .submenu{display:none;}.topnav .navgrp.open:hover > .submenu{display:flex;}.topnav .submenu a{color:var(--topbar-dim);padding:12px 10px;min-height:44px;border-radius:8px;font-size:14px;}.topnav .submenu a:hover{background:rgba(255,255,255,.10);color:var(--topbar-ink);}}.crumbs{margin:2px 0 16px;font-family:'IBM Plex Sans Condensed';font-size:12.5px;}.crumbs ol{list-style:none;display:flex;flex-wrap:wrap;gap:4px;margin:0;padding:0;}.crumbs li{display:flex;align-items:center;gap:4px;color:var(--muted);}.crumbs li + li::before{content:"›";color:var(--muted);opacity:.7;}.crumbs a{color:var(--ink2);padding:3px 4px;border-radius:5px;}.crumbs a:hover{color:var(--accent);background:var(--line2);}.crumbs [aria-current="page"] span{color:var(--ink);font-weight:600;padding:3px 4px;}.more-row{display:flex;justify-content:flex-end;margin:10px 2px 2px;}.more-row.cat-more{margin-top:14px;}.viewmore{font-family:'IBM Plex Sans Condensed';font-weight:700;font-size:12.5px;color:var(--ink2);border:1px solid var(--line);background:var(--paper);padding:7px 14px;border-radius:20px;transition:color .15s, border-color .15s, background .15s;}.viewmore:hover{color:var(--c, var(--accent));border-color:var(--c, var(--accent));}.viewmore.strong{background:var(--c, var(--accent));border-color:var(--c, var(--accent));color:#fff;}.viewmore.strong:hover{filter:brightness(1.08);}.card .ttl .star{color:var(--c, var(--accent));font-size:.85em;}#searchsec .cat-head h3{color:var(--ink);}html{-webkit-text-size-adjust:100%;}img, video, iframe{max-width:100%;}img, video{height:auto;}pre{overflow-x:auto;max-width:100%;}@media (max-width:520px){.hero-in h1{font-size:clamp(24px, 7vw, 34px);}.hero-in p{font-size:14px;}.wrap{padding-left:14px;padding-right:14px;}.cards{grid-template-columns:1fr;}}@media print{.navtoggle, .more-row, .crumbs{display:none !important;}}@media (max-width:480px){.logo{height:24px;}.kj-brand .logo{height:22px;}}