.jpage{--font-serif:var(--font-newsreader), Georgia, "Times New Roman", serif;--font-sans:var(--font-hanken), system-ui, -apple-system, sans-serif;--font-mono:var(--font-jetbrains-mono), ui-monospace, "SF Mono", Menlo, monospace;--font-head:var(--font-serif);--r-sm:8px;--r-md:12px;--r-lg:18px;--r-xl:26px;--maxw:1180px;--gut:clamp(20px, 5vw, 56px);--ease:cubic-bezier(.22, .61, .36, 1);--bg:#f7f3e7;--bg-tint:#f0ebdc;--surface:#fcfaf2;--ink-panel:#132c24;--ink-panel-2:#19372e;--on-panel:#eeebe1;--on-panel-dim:#a6ae9e;--text:#172e25;--text-2:#4b5649;--text-3:#7b7461;--border:#e0dbcb;--border-2:#d1cab8;--accent:#127d6e;--accent-press:#006b5e;--accent-weak:#d6f2ed;--accent-line:#5db0a0;--accent-on:#fffbf5;--pos:#35794b;--warn:#be651a;--shadow-sm:0 1px 2px #59423312, 0 1px 1px #5942330d;--shadow-md:0 4px 14px #5d412d17, 0 1px 3px #5d412d0f;--shadow-lg:0 18px 50px #52321929, 0 4px 12px #52321917;font-family:var(--font-sans);color:var(--text);background-image:radial-gradient(85% 70% at 92% 8%,#afdcd180,#0000 58%),radial-gradient(70% 60% at 6% 0,#f5efd899,#0000 60%);background-image:radial-gradient(85% 70% at 92% 8%,lab(84.3965% -17.1108 .510442/.5),#0000 58%),radial-gradient(70% 60% at 6% 0,lab(94.3753% -.742823 11.5503/.6),#0000 60%);font-size:17px;line-height:1.6;position:relative}@supports (color:lab(0% 0 0)){.jpage{--bg:lab(95.9112% -.176042 6.13368);--bg-tint:lab(93.1387% .0440776 7.69354);--surface:lab(98.205% -.137717 4.20523);--ink-panel:lab(15.7822% -12.0366 2.22077);--ink-panel-2:lab(20.4847% -13.8223 2.00715);--on-panel:lab(93.1257% -.409782 5.3422);--on-panel-dim:lab(70.1347% -5.43845 7.32074);--text:lab(16.947% -11.7925 3.37717);--text-2:lab(35.3677% -6.76358 6.40275);--text-3:lab(49.0921% .335038 11.765);--border:lab(87.3569% -.192285 8.47038);--border-2:lab(81.5642% .127912 10.0555);--accent:lab(46.6343% -32.2426 -.237954);--accent-press:lab(39.6904% -33.0915 -.848728);--accent-weak:lab(93.4109% -10.1977 -.491154);--accent-line:lab(66.2668% -29.4471 -.236452);--accent-on:lab(98.874% .70256 4.53141);--pos:lab(45.6057% -30.7988 18.3683);--warn:lab(52.8345% 33.3456 54.4576);--shadow-sm:0 1px 2px lab(30.25% 8.29582 13.4511/.07), 0 1px 1px lab(30.25% 8.29582 13.4511/.05);--shadow-md:0 4px 14px lab(30.1991% 10.6082 17.1653/.09), 0 1px 3px lab(30.1991% 10.6082 17.1653/.06);--shadow-lg:0 18px 50px lab(24.3301% 13.2278 21.6472/.16), 0 4px 12px lab(24.3301% 13.2278 21.6472/.09)}}.jpage ::selection{background:var(--accent-line);color:var(--text)}.jpage .wrap{max-width:var(--maxw);padding-inline:var(--gut);margin:0 auto}.jpage h1,.jpage h2,.jpage h3{font-family:var(--font-head);letter-spacing:-.015em;color:var(--text);font-weight:500;line-height:1.08}.jpage .kicker{font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--accent);align-items:center;gap:8px;font-size:12px;font-weight:500;display:inline-flex}.jpage .kicker:before{content:"§";opacity:.75;font-size:13px}.jpage .crumbs{font-family:var(--font-mono);color:var(--text-3);align-items:center;gap:8px;padding-top:30px;font-size:12px;display:flex}.jpage .crumbs a:hover{color:var(--accent)}.jpage .crumbs .sep{opacity:.5}.jpage .hero{padding-block:30px 56px}.jpage .hero-grid{grid-template-columns:1.15fr .85fr;align-items:center;gap:clamp(28px,5vw,72px);display:grid}.jpage .hero h1{text-wrap:balance;max-width:15ch;margin:18px 0 24px;font-size:clamp(34px,5vw,62px);line-height:1.13}.jpage .hero h1 em{color:var(--accent);font-style:italic}.jpage .hero-lede{color:var(--text-2);max-width:52ch;font-size:clamp(17px,1.5vw,20px);line-height:1.55}.jpage .hero-claim{font-family:var(--font-mono);color:var(--text-3);flex-wrap:wrap;gap:8px 18px;margin-top:18px;font-size:13px;display:flex}.jpage .hero-claim span{align-items:center;gap:7px;display:inline-flex}.jpage .hero-claim span:before{content:"";background:var(--pos);border-radius:50%;width:6px;height:6px}.jpage .hero-actions{flex-wrap:wrap;gap:12px;margin-top:30px;display:flex}.jpage .btn{font-size:15px;font-weight:600;font-family:var(--font-sans);cursor:pointer;transition:transform .18s var(--ease), background .2s var(--ease), box-shadow .2s var(--ease);border:1px solid #0000;border-radius:999px;align-items:center;gap:9px;padding:13px 22px;display:inline-flex}.jpage .btn-primary{background:var(--accent);color:var(--accent-on);box-shadow:var(--shadow-md)}.jpage .btn-primary:hover{background:var(--accent-press);box-shadow:var(--shadow-lg);transform:translateY(-2px)}.jpage .btn-ghost{background:var(--surface);color:var(--text);border-color:var(--border-2)}.jpage .btn-ghost:hover{border-color:var(--accent);color:var(--accent);transform:translateY(-2px)}.jpage .btn .arr{transition:transform .2s var(--ease)}.jpage .btn:hover .arr{transform:translate(3px)}.jpage .engine{background:var(--ink-panel);color:var(--on-panel);border-radius:var(--r-xl);box-shadow:var(--shadow-lg);padding:26px 26px 22px;position:relative;overflow:hidden}.jpage .engine:after{content:"";background:radial-gradient(120% 80% at 100% 0%, color-mix(in oklch, var(--accent) 22%, transparent), transparent 60%);pointer-events:none;position:absolute;inset:0}.jpage .engine-top{justify-content:space-between;align-items:center;margin-bottom:20px;display:flex;position:relative}.jpage .engine-tag{font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--on-panel-dim);align-items:center;gap:8px;font-size:11px;display:flex}.jpage .engine-tag .dot{background:var(--pos);width:7px;height:7px;box-shadow:0 0 0 3px color-mix(in oklch, var(--pos) 30%, transparent);animation:jpPulse 2.4s var(--ease) infinite;border-radius:50%}@keyframes jpPulse{0%,to{opacity:1}50%{opacity:.4}}.jpage .engine-score{align-items:baseline;gap:10px;display:flex;position:relative}.jpage .engine-score .num{font-family:var(--font-mono);letter-spacing:-.02em;font-size:56px;font-weight:600;line-height:1}.jpage .engine-score .den{font-family:var(--font-mono);color:var(--on-panel-dim);font-size:18px}.jpage .engine-score .verdict{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.06em;color:var(--warn);border:1px solid color-mix(in oklch, var(--warn) 50%, transparent);border-radius:999px;align-self:center;margin-left:auto;padding:4px 9px;font-size:11px}.jpage .engine-bars{gap:9px;margin:20px 0 4px;display:grid;position:relative}.jpage .ebar{font-family:var(--font-mono);color:var(--on-panel-dim);grid-template-columns:78px 1fr 64px;align-items:center;gap:12px;font-size:11.5px;display:grid}.jpage .ebar .track{background:color-mix(in oklch, var(--on-panel) 14%, transparent);border-radius:6px;height:6px;overflow:hidden}.jpage .ebar .fill{background:var(--accent-line);transform-origin:0;height:100%;animation:jpGrow 1.1s var(--ease) both;border-radius:6px}@keyframes jpGrow{0%{transform:scaleX(0)}}.jpage .ebar .ct{text-align:right;color:var(--on-panel)}.jpage .engine-foot{border-top:1px solid color-mix(in oklch, var(--on-panel) 12%, transparent);font-family:var(--font-mono);color:var(--on-panel-dim);gap:16px;margin-top:16px;padding-top:14px;font-size:11px;display:flex;position:relative}.jpage .engine-foot b{color:var(--on-panel);font-weight:600}@media (max-width:940px){.jpage .hero-grid{grid-template-columns:1fr}.jpage .engine{max-width:460px}}.jpage .strip{border-block:1px solid var(--border);background:var(--bg-tint)}.jpage .strip-inner{max-width:var(--maxw);grid-template-columns:repeat(4,1fr);margin:0 auto;display:grid}.jpage .stat{padding:24px var(--gut);border-left:1px solid var(--border)}.jpage .stat:first-child{border-left:none}.jpage .stat .n{font-family:var(--font-mono);letter-spacing:-.01em;color:var(--text);font-size:28px;font-weight:600}.jpage .stat .l{color:var(--text-2);margin-top:4px;font-size:13px}@media (max-width:760px){.jpage .strip-inner{grid-template-columns:repeat(2,1fr)}.jpage .stat:nth-child(odd){border-left:none}}.jpage .dir{padding-block:64px 40px}.jpage .dir-head{max-width:60ch;margin-bottom:30px}.jpage .dir-head h2{margin:12px 0 14px;font-size:clamp(28px,3.6vw,42px)}.jpage .dir-head p{color:var(--text-2);font-size:17px}.jpage .controls{z-index:40;background:color-mix(in oklch, var(--bg) 88%, transparent);-webkit-backdrop-filter:saturate(1.3)blur(12px);backdrop-filter:saturate(1.3)blur(12px);border-bottom:1px solid var(--border);margin-bottom:14px;padding:14px 0;position:sticky;top:0}.jpage .controls-row{flex-wrap:wrap;align-items:center;gap:14px;display:flex}.jpage .search{flex:1;min-width:240px;position:relative}.jpage .search input{width:100%;font-family:var(--font-sans);color:var(--text);background:var(--surface);border:1px solid var(--border-2);transition:border-color .2s var(--ease), box-shadow .2s var(--ease);border-radius:999px;outline:none;padding:12px 18px 12px 42px;font-size:15px}.jpage .search input::placeholder{color:var(--text-3)}.jpage .search input:focus{border-color:var(--accent);box-shadow:0 0 0 4px var(--accent-weak)}.jpage .search .ic{pointer-events:none;width:16px;height:16px;color:var(--text-3);position:absolute;top:50%;left:15px;transform:translateY(-50%)}.jpage .chips{flex-wrap:wrap;gap:8px;display:flex}.jpage .chip{font-family:var(--font-mono);letter-spacing:.02em;color:var(--text-2);background:var(--surface);border:1px solid var(--border-2);cursor:pointer;white-space:nowrap;transition:all .18s var(--ease);border-radius:999px;padding:8px 14px;font-size:12px}.jpage .chip:hover{border-color:var(--accent-line);color:var(--text)}.jpage .chip[aria-pressed=true]{background:var(--ink-panel);color:var(--on-panel);border-color:var(--ink-panel)}.jpage .chip .c{opacity:.6;margin-left:6px}.jpage .field-group{margin-top:34px}.jpage .field-group:first-of-type{margin-top:8px}.jpage .field-label{font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--text-3);border-bottom:1px solid var(--border);align-items:baseline;gap:12px;margin-bottom:20px;padding-bottom:14px;font-size:12.5px;display:flex}.jpage .field-label .ct{color:var(--accent)}.jpage .field-label .line{flex:1}.jpage .cards{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:16px;display:grid}.jpage .card{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);transition:transform .22s var(--ease), box-shadow .22s var(--ease), border-color .22s var(--ease);flex-direction:column;padding:22px 22px 18px;display:flex;position:relative;overflow:hidden}.jpage .card:before{content:"";background:var(--accent);transform-origin:top;width:3px;transition:transform .26s var(--ease);position:absolute;top:0;bottom:0;left:0;transform:scaleY(0)}.jpage .card:hover{box-shadow:var(--shadow-lg);border-color:var(--border-2);transform:translateY(-4px)}.jpage .card:hover:before{transform:scaleY(1)}.jpage .card-top{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.jpage .card h3{letter-spacing:-.01em;font-size:23px;line-height:1.12}.jpage .card .pub{color:var(--text-2);margin-top:5px;font-size:13.5px}.jpage .hindex{font-family:var(--font-mono);text-align:right;flex-shrink:0}.jpage .hindex .hv{color:var(--text);letter-spacing:-.01em;font-size:21px;font-weight:600}.jpage .hindex .hl{text-transform:uppercase;letter-spacing:.1em;color:var(--text-3);font-size:9.5px}.jpage .card-tags{flex-wrap:wrap;gap:6px;margin-top:16px;display:flex}.jpage .tag{font-family:var(--font-mono);color:var(--text-2);background:var(--bg-tint);border:1px solid var(--border);border-radius:6px;padding:4px 8px;font-size:11px}.jpage .card-teaser{border-top:1px dashed var(--border-2);color:var(--text-2);margin-top:14px;padding-top:14px;font-size:13.5px;line-height:1.5}.jpage .card-teaser b{color:var(--text);font-weight:600}.jpage .card-foot{justify-content:space-between;align-items:center;margin-top:auto;padding-top:16px;display:flex}.jpage .card-link{color:var(--accent);align-items:center;gap:7px;font-size:14px;font-weight:600;display:inline-flex}.jpage .card-link .arr{transition:transform .2s var(--ease)}.jpage .card:hover .card-link .arr{transform:translate(4px)}.jpage .card-meta{font-family:var(--font-mono);color:var(--text-3);text-transform:uppercase;letter-spacing:.06em;font-size:10.5px}.jpage .no-results{text-align:center;color:var(--text-2);font-family:var(--font-mono);padding:60px 20px;font-size:14px;display:none}.jpage .no-results.show{display:block}.jpage .inside{border-top:1px solid var(--border);background:var(--bg-tint);padding-block:64px}.jpage .inside h2{text-wrap:balance;max-width:18ch;margin:12px 0 16px;font-size:clamp(28px,3.6vw,42px)}.jpage .inside-lede{color:var(--text-2);max-width:60ch;margin-bottom:40px;font-size:17px}.jpage .inside-grid{grid-template-columns:repeat(3,1fr);gap:18px;display:grid}.jpage .feat{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);padding:26px 24px}.jpage .feat .fn{font-family:var(--font-mono);color:var(--accent);letter-spacing:.04em;font-size:12px}.jpage .feat h3{margin:14px 0 9px;font-size:21px}.jpage .feat p{color:var(--text-2);font-size:14.5px;line-height:1.55}@media (max-width:820px){.jpage .inside-grid{grid-template-columns:1fr}}.jpage .faq{padding-block:72px}.jpage .faq-grid{grid-template-columns:.8fr 1.2fr;align-items:start;gap:clamp(28px,5vw,64px);display:grid}.jpage .faq-grid h2{text-wrap:balance;margin:12px 0 16px;font-size:clamp(28px,3.6vw,42px)}.jpage .faq-grid .faq-aside p{color:var(--text-2);font-size:16px}.jpage .faq-aside .btn{margin-top:22px}.jpage .qa{border-top:1px solid var(--border)}.jpage .qa:last-child{border-bottom:1px solid var(--border)}.jpage .qa summary{cursor:pointer;font-family:var(--font-head);color:var(--text);transition:color .2s var(--ease);justify-content:space-between;align-items:center;gap:18px;padding:20px 0;font-size:19px;list-style:none;display:flex}.jpage .qa summary::-webkit-details-marker{display:none}.jpage .qa summary:hover{color:var(--accent)}.jpage .qa summary .pm{width:22px;height:22px;transition:transform .3s var(--ease);flex-shrink:0;position:relative}.jpage .qa summary .pm:before,.jpage .qa summary .pm:after{content:"";background:var(--accent);border-radius:2px;position:absolute}.jpage .qa summary .pm:before{height:2px;top:10px;left:0;right:0}.jpage .qa summary .pm:after{width:2px;transition:transform .3s var(--ease);top:0;bottom:0;left:10px}.jpage .qa[open] summary .pm:after{transform:scaleY(0)}.jpage .qa .ans{color:var(--text-2);max-width:62ch;padding:0 0 22px;font-size:15.5px;line-height:1.62}.jpage .qa .ans a{color:var(--accent);text-underline-offset:2px;text-decoration:underline}@media (max-width:820px){.jpage .faq-grid{grid-template-columns:1fr}}.jpage .cta{max-width:var(--maxw);padding-inline:var(--gut);margin:0 auto 64px}.jpage .cta-card{background:var(--ink-panel);color:var(--on-panel);border-radius:var(--r-xl);box-shadow:var(--shadow-lg);padding:clamp(36px,6vw,64px);position:relative;overflow:hidden}.jpage .cta-card:after{content:"";background:radial-gradient(90% 120% at 90% 10%, color-mix(in oklch, var(--accent) 28%, transparent), transparent 55%);pointer-events:none;position:absolute;inset:0}.jpage .cta-card .kicker{color:var(--accent-line);position:relative}.jpage .cta-card h2{color:var(--on-panel);max-width:16ch;margin:14px 0 16px;font-size:clamp(28px,4vw,46px);position:relative}.jpage .cta-card p{color:var(--on-panel-dim);max-width:50ch;font-size:17px;position:relative}.jpage .cta-card .hero-actions{position:relative}.jpage .cta-card .btn-ghost{color:var(--on-panel);border-color:color-mix(in oklch, var(--on-panel) 30%, transparent);background:0 0}.jpage .cta-card .btn-ghost:hover{border-color:var(--on-panel);color:var(--on-panel)}.jpage .cta-card .fine{font-family:var(--font-mono);color:var(--on-panel-dim);margin-top:18px;font-size:11.5px;position:relative}.jpage .reveal{opacity:0;transition:opacity .7s var(--ease), transform .7s var(--ease);transform:translateY(18px)}.jpage .reveal.in{opacity:1;transform:none}@media (prefers-reduced-motion:reduce){.jpage .reveal{opacity:1;transition:none;transform:none}.jpage *,.jpage :before,.jpage :after{animation-duration:.001ms!important}}
