.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.journal-page{--ink:#e6edfa;--muted:#a5b5ce;--accent:#b7afff;background:#0b0e17}
.journal-page .button-accent{background:#b9b5ff;color:#111832}.journal-page .button-accent:hover{background:#d1ceff}
.journal-intro{display:grid;grid-template-columns:1.5fr 1fr;align-items:end;gap:45px;padding-top:78px;padding-bottom:50px}
.journal-intro .eyebrow{color:#a1b2d0}.journal-intro h1{font-size:clamp(48px,5.6vw,78px);letter-spacing:-3.5px;line-height:1.09;margin:25px 0 25px}
.journal-intro h1 span{background:linear-gradient(100deg,#83d8ef,#b6a5f7 65%,#e0b1d2);background-clip:text;-webkit-text-fill-color:transparent}
.journal-intro>div>p{font-size:18px;max-width:550px;color:#a8b9d4;line-height:1.8}
.journal-edition{justify-self:end;border-left:1px solid #8ca3d03b;padding:8px 0 9px 30px;display:flex;flex-direction:column;gap:18px;min-width:260px;margin-bottom:6px}
.journal-edition>span{font-size:12px;color:#8da5c5;letter-spacing:.8px}.journal-edition strong{font-family:var(--display);font-size:27px;line-height:1.4;letter-spacing:-.9px;color:#c2d0e9;font-weight:500}
.journal-collection{padding-bottom:70px}.journal-controls{display:flex;justify-content:space-between;gap:24px;align-items:center;padding:24px 0;border-top:1px solid #8ea4cd29;border-bottom:1px solid #8ea4cd29}
.journal-filters{display:flex;flex-wrap:wrap;gap:8px}.journal-filters button{padding:9px 14px;border-radius:7px;background:none;color:#a6b7d1;font-size:14px;border:1px solid transparent;transition:background .2s,border-color .2s}
.journal-filters button:hover{background:#9cb9f50d}.journal-filters button[aria-pressed=true]{background:#b4a0ff13;border-color:#b4a0ff52;color:#e0d7ff}
.journal-search{width:230px;position:relative;flex:none}.journal-search input{font-size:16px;background:#121a29;border:1px solid #8ea4cd29;border-radius:7px;padding:11px 34px 11px 12px;color:#d8e4fa;width:100%}.journal-search input::placeholder{color:#90a2bf}.journal-search>span{position:absolute;right:12px;top:5px;font-size:23px;color:#a9badd;pointer-events:none}
.collection-meta{display:flex;justify-content:space-between;gap:20px;padding:24px 0 19px;font-size:12px;color:#8ea3c1}.collection-meta p{font-size:14px;color:#adbcda}
.journal-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:18px;align-items:stretch}
.journal-card{--card-accent:#9bdcef;position:relative;overflow:hidden;padding:27px 29px;border:1px solid #8aa5da2a;border-radius:14px;background:linear-gradient(135deg,#82a5d307,#111928);display:flex;flex-direction:column;transition:transform .28s,border-color .28s;min-width:0}
.journal-card[data-tone=violet]{--card-accent:#c0aafa;background:linear-gradient(125deg,#b191dc0d,#111827)}.journal-card[data-tone=mint]{--card-accent:#9fdbc8;background:linear-gradient(125deg,#72cdb60b,#111827)}
.journal-card:hover{border-color:color-mix(in srgb,var(--card-accent) 50%,transparent);transform:translateY(-3px)}
.journal-featured{grid-row:span 2;background:radial-gradient(ellipse at 80% 30%,#79c4f114,transparent 65%),linear-gradient(125deg,#111c2d,#141a2d);padding:32px}
.entry-meta{display:flex;justify-content:space-between;gap:16px;align-items:center;font-size:12px;color:#95a7c6}.entry-meta>span:first-child{color:var(--card-accent,#a8bdef);letter-spacing:.9px;text-transform:uppercase}
.entry-number{position:absolute;right:26px;top:44px;font-family:var(--display);font-size:74px;line-height:1;letter-spacing:-5px;color:var(--card-accent);opacity:.045;pointer-events:none}
.journal-card h2{font-size:26px;letter-spacing:-.7px;line-height:1.35;margin-top:21px;max-width:490px}.journal-card h2 a:after{content:'';position:absolute;inset:0}.journal-card h2 a:focus-visible{outline-offset:7px}.journal-card p{font-size:16px;color:#a5b7d4;margin-top:14px;line-height:1.75}
.journal-featured h2{font-size:38px;line-height:1.25;letter-spacing:-1.4px}.journal-featured p{font-size:17px;max-width:470px}
.entry-bottom{margin-top:auto;padding-top:27px;display:flex;align-items:center;justify-content:space-between;gap:15px;font-size:12px;color:#91a5c4}.entry-bottom>a{position:relative;font-size:14px;color:var(--card-accent);z-index:1}.entry-bottom>a>span{margin-left:9px}
.toolkit-preview{display:flex;align-items:center;gap:25px;margin:25px 0 15px;min-height:160px;border-top:1px solid #9cbce223;border-bottom:1px solid #9cbce223;padding:15px 5px}
.toolkit-count{font-family:var(--display);font-size:140px;letter-spacing:-11px;line-height:1;font-weight:500;background:linear-gradient(140deg,#91def2 5%,#9fa9ed 65%,#d1aadf);background-clip:text;-webkit-text-fill-color:transparent}
.toolkit-preview>div{display:flex;flex-direction:column;gap:11px}.toolkit-preview>div>span{display:block;border-left:2px solid #83cfe9;padding:3px 0 3px 14px;font-size:14px;color:#b8cbe2}.toolkit-preview>div>span:nth-child(2){border-color:#b69eef}.toolkit-preview>div>span:nth-child(3){border-color:#9acfbf}
.journal-grid.is-filtered{grid-template-columns:repeat(2,minmax(0,1fr))}.journal-grid.is-filtered .journal-featured{grid-row:auto}.journal-grid.is-filtered .toolkit-preview{display:none}.journal-grid.is-filtered .journal-featured h2{font-size:26px}
#journal-empty{padding:75px 20px;text-align:center;border:1px dashed #819bc330;border-radius:12px}#journal-empty h2{font-size:28px}#journal-empty p{font-size:16px;color:#a8b8d4;margin-top:12px}#journal-reset{font-size:14px;color:#c5bbf9;background:#b4a0ff12;border:1px solid #b4a0ff33;border-radius:7px;padding:11px 18px;margin-top:24px}
.journal-bottom-cta{border-top:1px solid #8ea4cd29;display:flex;justify-content:space-between;align-items:center;gap:35px;padding-top:53px;padding-bottom:60px;background:radial-gradient(ellipse at 80% 100%,#9e8deb09,transparent 60%)}
.journal-bottom-cta h2{font-size:40px;letter-spacing:-1.6px;line-height:1.25;margin:17px 0}.journal-bottom-cta p{color:#a1b4d2;font-size:16px}.journal-bottom-cta .button{flex:none;font-size:14px}
.journal-footer{padding-top:40px;padding-bottom:30px;border-top:1px solid #8ea4cd29;display:grid;grid-template-columns:1fr auto;gap:32px}.journal-footer>div>p{font-size:14px;color:#8fa3c2;margin-top:17px}.journal-footer>nav{display:flex;gap:27px;align-items:center;font-size:14px;color:#b5c3de}.journal-footer-bottom{grid-column:1/-1;display:flex;justify-content:space-between;gap:20px;font-size:12px;color:#8d9fbc;padding-top:25px;border-top:1px solid #8ea4cd1c}
.article-shell{padding-top:40px;padding-bottom:60px}.article-back{font-size:14px;color:#aebdd9}.article-back:hover{color:#d7ddff}.article-heading{max-width:1000px;margin:43px auto 0}.article-heading>.entry-meta{justify-content:flex-start;gap:22px}.article-heading h1{font-size:clamp(38px,4.7vw,65px);letter-spacing:-2.8px;line-height:1.15;margin:22px 0}.article-deck{font-size:20px;color:#a8bbd8;line-height:1.75;max-width:780px}
.article-byline{display:flex;gap:13px;align-items:center;margin-top:30px;border-top:1px solid #8ea4cd29;padding-top:25px}.author-mark{font-size:14px;color:#bfc5f1;border:1px solid #a8a8ec38;border-radius:50%;height:42px;width:42px;display:grid;place-items:center;flex:none}.article-byline>span:nth-child(2){display:flex;flex-direction:column;gap:3px}.article-byline strong{font-size:14px;font-weight:500}.article-byline>span:nth-child(2)>span{font-size:12px;color:#93a8c8}
.article-share{display:flex;align-items:center;gap:17px;margin-left:auto}.article-share button,.article-share a{font-size:14px;color:#b3c4e5;background:none;padding:5px 0}.article-share button:hover,.article-share a:hover{color:#e0d7ff}.article-share button{text-decoration:underline;text-underline-offset:4px}#share-status{font-size:14px;color:#9edcc9;margin-top:8px;min-height:1.6em}.share-fallback{font-size:14px;padding:10px;width:100%;border:1px solid #8ea4cd29;background:#111827;color:#c8d9f2}
.article-layout{display:grid;grid-template-columns:230px minmax(0,740px);gap:50px;max-width:1100px;margin:28px auto 0;align-items:start}.article-toc{position:sticky;top:126px;padding-top:10px}.article-toc>span{font-size:12px;color:#8fa5c4;letter-spacing:1.1px}.article-toc nav{display:flex;flex-direction:column;gap:16px;margin-top:20px;border-left:1px solid #8ea4cd36;padding-left:17px}.article-toc a{font-size:14px;line-height:1.6;color:#a8b8d4}.article-toc a:hover{color:#d1c4ff}.article-toc .toc-project{display:block;padding-top:22px;margin-top:25px;border-top:1px solid #8ea4cd25;color:#b6abea}
.article-content{min-width:0}.article-content p,.article-content li{font-size:17px;line-height:1.9;color:#b7c7df}.article-content p+p{margin-top:17px}.article-content .article-lead{font-size:20px;line-height:1.8;color:#d2def0;margin-bottom:37px}.article-content section{scroll-margin-top:123px;margin-bottom:39px}.article-content h2{font-size:28px;letter-spacing:-.7px;line-height:1.35;margin-bottom:18px}.article-content h3{font-size:23px;letter-spacing:-.5px}.article-content ul{padding-left:22px;margin:16px 0}.article-content li{padding-left:5px;margin:10px 0}
.article-sources{display:flex;flex-direction:column;gap:8px;border-left:2px solid #8da7dd66;padding:0 0 0 15px;margin-top:22px}.article-sources>span{font-size:12px;color:#8da4c5}.article-sources a{font-size:14px;line-height:1.7;color:#acc5ed;text-decoration:underline;text-underline-offset:3px}.article-sources a span{display:inline-block;margin-left:5px}
.repository-list{display:grid;gap:17px;margin-top:25px}.repository-card{border:1px solid #8ba5d42b;padding:23px 25px;border-radius:10px;background:#111a298c}.repo-heading{display:flex;gap:17px;align-items:center;margin-bottom:16px}.repo-heading>span{font-size:16px;color:#8bbbd8;border:1px solid #88bfd732;width:40px;height:42px;display:grid;place-items:center;border-radius:6px;flex:none}.repo-heading h3{font-size:23px;line-height:1.4}.repo-heading p{font-size:12px;color:#94b9d1;margin-top:2px;line-height:1.6}.repo-heading p span{color:#90a1bf}.repository-card>p{font-size:16px;line-height:1.8}.repository-card>p.repo-consider{font-size:14px;color:#9db3d1;margin-top:13px}.repo-consider strong{display:block;color:#c0cfea;font-size:12px;font-weight:500;letter-spacing:.5px;text-transform:uppercase;margin-bottom:3px}.repository-card>a{display:inline-block;color:#a7d7e9;font-size:14px;border-bottom:1px solid #83bfda38;margin-top:16px;padding-bottom:3px}.repository-card:nth-child(3n+2){background:#161927a0}.repository-card:nth-child(3n+2) .repo-heading>span{color:#bba1e8;border-color:#b49ee52f}.repository-card:nth-child(3n+3) .repo-heading>span{color:#a0d1bf;border-color:#9acfbf2f}
.article-callout{padding:22px 24px;border:1px solid #c7b48a30;border-left:3px solid #dec28d;border-radius:8px;background:#d6ae6508;font-size:16px;color:#d6c9ad;line-height:1.85;margin-top:24px}.article-project{padding:29px;border:1px solid #a6a5ed3d;border-radius:12px;background:linear-gradient(115deg,#8bbfe50c,#b099ef13);margin-top:45px}.article-project h2{margin-top:17px;font-size:29px}.article-project p{font-size:16px}.article-project .button{margin-top:23px;font-size:14px}
.article-related{max-width:1000px;margin:65px auto 0;padding-top:30px;border-top:1px solid #8ea4cd29}.article-related>h2{font-size:24px;letter-spacing:-.5px}.article-related>div{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:22px}.article-related a{padding:22px;border:1px solid #8ba5d42b;border-radius:9px;display:flex;flex-direction:column;gap:13px;background:#111827}.article-related a>span:first-child{font-size:12px;color:#9cafd0}.article-related strong{font-size:19px;font-weight:500;line-height:1.6}.article-related a>span:last-child{color:#b5a6f1;align-self:end;font-size:22px}
@media(max-width:1100px){.journal-controls{align-items:stretch;flex-direction:column;gap:15px}.journal-search{width:100%;max-width:400px}.journal-edition{min-width:210px}.journal-featured h2{font-size:33px}.toolkit-preview{gap:18px}.toolkit-count{font-size:115px}.toolkit-preview>div>span{font-size:12px;padding-left:10px}.article-layout{grid-template-columns:180px minmax(0,1fr);gap:30px}.article-heading h1{font-size:49px}.journal-footer>nav{gap:18px}}
@media(max-width:800px){.journal-intro{grid-template-columns:1fr;padding-top:48px;gap:22px}.journal-edition{display:none}.journal-grid,.journal-grid.is-filtered{grid-template-columns:1fr}.journal-featured{grid-row:auto}.journal-featured h2{font-size:34px}.toolkit-preview{justify-content:flex-start;gap:45px;min-height:140px}.toolkit-preview>div>span{font-size:14px}.article-layout{grid-template-columns:1fr;gap:26px}.article-toc{position:static;padding:19px;border:1px solid #8ea4cd29;border-radius:9px}.article-toc nav{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:13px}.article-toc .toc-project{display:none}.article-byline{flex-wrap:wrap}.article-share{gap:15px}.journal-footer{grid-template-columns:1fr}.journal-footer>nav{flex-wrap:wrap;gap:22px}.journal-footer-bottom{flex-wrap:wrap;gap:10px}.journal-bottom-cta{align-items:start;flex-direction:column}.journal-card h2{max-width:none}}
@media(max-width:679px){.journal-intro h1{font-size:49px;letter-spacing:-2.5px}.journal-intro .eyebrow{font-size:12px;letter-spacing:.7px}.journal-intro>div>p{font-size:16px}.journal-intro{padding-bottom:33px}.journal-controls{padding:18px 0}.journal-filters{gap:5px}.journal-filters button{font-size:14px;padding:8px 10px}.collection-meta{padding-top:19px}.collection-meta>span{font-size:12px;max-width:130px;text-align:right}.journal-card,.journal-featured{padding:23px}.journal-featured h2{font-size:31px}.journal-card h2{font-size:25px}.journal-card p,.journal-featured p{font-size:16px}.toolkit-count{font-size:110px;letter-spacing:-8px}.toolkit-preview{gap:25px;min-height:125px;margin:22px 0 2px}.toolkit-preview>div>span{font-size:12px}.journal-collection{padding-bottom:45px}.journal-bottom-cta{padding-top:35px;padding-bottom:40px;gap:22px}.journal-bottom-cta h2{font-size:32px}.journal-footer{padding-top:30px}.journal-footer>nav{gap:19px}.journal-footer-bottom{font-size:12px}.article-shell{padding-top:28px}.article-heading{margin-top:28px}.article-heading h1{font-size:38px;letter-spacing:-1.6px}.article-deck{font-size:17px}.article-share{width:100%;margin:7px 0 0;padding-top:10px}.article-toc nav{grid-template-columns:1fr;gap:9px}.article-content .article-lead{font-size:18px}.article-content p,.article-content li{font-size:16px}.article-content h2{font-size:26px}.repository-card{padding:19px}.repo-heading{gap:12px}.repo-heading h3{font-size:21px}.repository-card>p{font-size:16px}.repository-card>p.repo-consider{font-size:14px}.article-callout{padding:18px;font-size:16px}.article-project{padding:22px}.article-project h2{font-size:26px}.article-related>div{grid-template-columns:1fr}.article-related{margin-top:43px}.entry-meta{font-size:12px}.article-heading>.entry-meta{gap:15px}}
@media(prefers-reduced-motion:reduce){.journal-card,.journal-filters button{transition:none}.journal-card:hover{transform:none}}
