.pub{font-family:var(--read);font-size:15px;line-height:1.6;color:var(--parchment);background:var(--bg-neb);min-height:100dvh;display:flex;flex-direction:column}.pub-nav{justify-content:space-between;gap:16px;padding:16px 30px;border-bottom:1px solid var(--line-soft);flex-wrap:wrap}.pub-brand,.pub-nav{display:flex;align-items:center}.pub-brand{gap:9px;font-family:var(--serif);font-size:17px;font-weight:600;letter-spacing:.02em;color:var(--parchment);text-decoration:none}.pub-links{display:flex;gap:20px;font-family:var(--sans);font-size:12.5px}.pub-links a{color:var(--dim);text-decoration:none}.pub-cta-top,.pub-links a:hover,.pub-links a[aria-current=page]{color:var(--mint)}.pub-cta-top{font-family:var(--mono);font-size:9.5px;letter-spacing:.13em;text-transform:uppercase;border:1px solid var(--mint);border-radius:999px;padding:7px 15px;text-decoration:none;white-space:nowrap}.pub-cta-top:hover{background:rgba(111,216,189,.12)}.pub-foot{margin-top:auto;border-top:1px solid var(--line-soft);padding:26px 30px;display:flex;gap:18px;flex-wrap:wrap;align-items:center;justify-content:space-between;font-family:var(--sans);font-size:12px;color:var(--dim)}.pub-foot a{color:var(--dim);text-decoration:none}.pub-foot a:hover{color:var(--mint)}.pub-foot nav{display:flex;gap:16px;flex-wrap:wrap}.pub-art{position:fixed;inset:0;z-index:0;pointer-events:none;background-repeat:no-repeat;background-size:auto 118%;opacity:.42}.pub-art.right{background-position:right -6% top -14%;-webkit-mask-image:radial-gradient(ellipse 62% 92% at 88% 38%,#000 6%,rgba(0,0,0,.78) 46%,transparent 86%);mask-image:radial-gradient(ellipse 62% 92% at 88% 38%,#000 6%,rgba(0,0,0,.78) 46%,transparent 86%)}.pub-art.left{background-position:left -6% top -14%;-webkit-mask-image:radial-gradient(ellipse 62% 92% at 12% 38%,#000 6%,rgba(0,0,0,.78) 46%,transparent 86%);mask-image:radial-gradient(ellipse 62% 92% at 12% 38%,#000 6%,rgba(0,0,0,.78) 46%,transparent 86%)}body.light .pub-art{filter:invert(1) hue-rotate(178deg) saturate(.5) brightness(1.06) contrast(1.1);opacity:.5}@media (max-width:860px){.pub-art{opacity:.2;background-size:auto 92%}body.light .pub-art{opacity:.26}}.pub-foot,.pub-nav,.pub-wrap{position:relative;z-index:1}.pub-wrap{padding:30px;width:100%}.pub-col{max-width:660px}.pub-col,.pub-wide{margin:0 auto;min-width:0}.pub-wide{max-width:900px}.pub-two{display:grid;grid-template-columns:minmax(0,1fr) 268px;grid-gap:38px;gap:38px;max-width:920px;margin:0 auto;align-items:start}.pub-side{position:-webkit-sticky;position:sticky;top:20px}@media (max-width:860px){.pub-two{grid-template-columns:minmax(0,1fr);gap:26px}.pub-side{position:static}.pub-wrap{padding:22px 18px}}.pub-crumb{font-family:var(--mono);font-size:9.5px;letter-spacing:.15em;text-transform:uppercase;color:var(--dim);margin-bottom:16px}.pub-crumb a{color:inherit;text-decoration:none}.pub-crumb a:hover{color:var(--mint)}.pub-crumb i{font-style:normal;opacity:.45;margin:0 7px}.pub-kick{font-family:var(--mono);font-size:10px;letter-spacing:.2em;text-transform:uppercase;color:var(--mint)}.pub-kick.tec{color:var(--violet)}.pub h1{font-family:var(--serif);font-size:44px;line-height:1.1;font-weight:600;margin:9px 0 0;letter-spacing:.005em}.pub-lede{font-family:var(--read);font-size:19px;line-height:1.55;color:var(--dim-2);margin:14px 0 0;font-style:italic}@media (max-width:640px){.pub h1{font-size:33px}.pub-lede{font-size:17px}}.pub-body{margin-top:26px}.pub-body p{margin:0 0 17px}.pub-body h2{font-family:var(--serif);font-size:26px;font-weight:600;margin:34px 0 12px;letter-spacing:.01em}.pub-body h3{font-family:var(--sans);font-size:13px;letter-spacing:.04em;margin:26px 0 9px}.pub-body b,.pub-body h3{font-weight:600;color:var(--lede)}.pub-body a{color:var(--mint);text-decoration:none;border-bottom:1px solid transparent}.pub-body a:hover{border-bottom-color:currentColor}.pub-rule{height:1px;background:var(--line);margin:30px 0;border:0}.pub-card{border:1px solid var(--line);border-radius:14px;padding:17px 19px;background:var(--panel)}.pub-card+.pub-card{margin-top:11px}.pub-card>.h{font-family:var(--mono);font-size:9px;letter-spacing:.18em;text-transform:uppercase;color:var(--dim);margin-bottom:12px}.pub-kv{display:flex;justify-content:space-between;gap:12px;padding:8px 0;border-top:1px solid var(--line-soft);font-size:13.5px}.pub-kv:first-of-type{border-top:none}.pub-kv .k{color:var(--dim);font-family:var(--sans);font-size:12.5px}.pub-kv .v{color:var(--parchment);font-family:var(--serif);font-size:16px;text-align:right;min-width:0}.pub-h12{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));grid-gap:5px;gap:5px}.pub-h12 a{text-align:center;padding:8px 0;border:1px solid var(--line);border-radius:8px;font-family:var(--serif);font-size:14px;text-decoration:none;color:var(--dim);min-width:0;overflow:hidden}.pub-h12 a:hover,.pub-h12 a[aria-current=page]{color:var(--mint);border-color:var(--mint)}.pub-h12 a[aria-current=page]{background:rgba(111,216,189,.1)}.pub-strip{display:flex;flex-wrap:wrap;gap:0;border:1px solid var(--line);border-radius:12px;overflow:hidden;margin:26px 0}.pub-strip>div{flex:1 1 118px;min-width:0;padding:12px 15px;border-right:1px solid var(--line-soft)}.pub-strip>div:last-child{border-right:none}.pub-strip .k{font-family:var(--mono);font-size:8.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--dim);display:block;margin-bottom:4px}.pub-strip .v{font-family:var(--serif);font-size:17px;color:var(--parchment)}.pub-faq{margin-top:34px}.pub-faq h2{font-family:var(--serif);font-size:26px;font-weight:600;margin:0 0 14px}.pub-faq details{border-top:1px solid var(--line-soft);padding:13px 0}.pub-faq details:last-of-type{border-bottom:1px solid var(--line-soft)}.pub-faq summary{cursor:pointer;font-family:var(--sans);font-size:14.5px;font-weight:500;color:var(--lede);list-style:none;display:flex;justify-content:space-between;gap:14px;touch-action:manipulation}.pub-faq summary::-webkit-details-marker{display:none}.pub-faq summary:after{content:"+";font-family:var(--mono);color:var(--dim);flex:none}.pub-faq details[open] summary:after{content:"–"}.pub-faq details>p{margin:10px 0 2px;color:var(--muted)}.pub-cta{border:1px solid var(--line-2);border-radius:16px;padding:24px 26px;background:var(--panel);margin:34px 0 0;display:flex;gap:20px;align-items:center;justify-content:space-between;flex-wrap:wrap}.pub-cta.tec{border-color:rgba(156,139,224,.45)}.pub-cta .tx{min-width:0;flex:1 1 280px}.pub-cta .k{font-family:var(--mono);font-size:9.5px;letter-spacing:.18em;text-transform:uppercase;color:var(--mint);display:block;margin-bottom:6px}.pub-cta.tec .k{color:var(--violet)}.pub-cta h2,.pub-cta h3{font-family:var(--serif);font-size:23px;font-weight:600;margin:0 0 6px}.pub-cta p{margin:0;font-size:13.5px;color:var(--dim);font-family:var(--sans);line-height:1.5}.pub-btn{font-family:var(--mono);font-size:10px;letter-spacing:.15em;text-transform:uppercase;background:var(--mint);color:#06121a;border:none;border-radius:999px;padding:13px 24px;cursor:pointer;white-space:nowrap;text-decoration:none;display:inline-block;touch-action:manipulation}body.light .pub-btn{color:#ffffff}.pub-btn.tec{background:var(--violet);color:#0d0a18}body.light .pub-btn.tec{color:#ffffff}.pub-rel{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));grid-gap:9px;gap:9px;margin-top:14px}.pub-rel a{display:block;border:1px solid var(--line);border-radius:11px;padding:12px 14px;text-decoration:none;color:inherit;min-width:0}.pub-rel a:hover{border-color:var(--mint);background:rgba(111,216,189,.05)}.pub-rel .g{font-family:var(--serif);font-size:19px;color:var(--dim-2);line-height:1}.pub-rel .n{font-family:var(--sans);font-size:12.5px;margin-top:5px;color:var(--parchment)}.pub-rel .d{font-size:11.5px;color:var(--dim);font-family:var(--sans);margin-top:2px;line-height:1.4}.pub-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(215px,1fr));grid-gap:11px;gap:11px;margin-top:16px}.pub-tile{border:1px solid var(--line);border-radius:13px;padding:16px 17px;text-decoration:none;color:inherit;display:block;min-width:0}.pub-tile:hover{border-color:var(--mint)}.pub-tile.tec{border-color:rgba(156,139,224,.35)}.pub-tile.tec:hover{border-color:var(--violet)}.pub-tile .g{font-family:var(--serif);font-size:25px;line-height:1}.pub-tile.tec .g{color:var(--violet)}.pub-tile .n{font-family:var(--serif);font-size:18px;margin-top:7px;color:var(--parchment)}.pub-tile .d{font-size:12.5px;color:var(--dim);font-family:var(--sans);margin-top:4px;line-height:1.45}.pub-sec{margin:34px 0 0}.pub-sec .k{font-family:var(--mono);font-size:9.5px;letter-spacing:.18em;text-transform:uppercase;color:var(--dim)}.pub-sec h2{font-family:var(--serif);font-size:27px;font-weight:600;margin:5px 0 4px}.pub-sec p{margin:0;color:var(--dim);font-size:13.5px;font-family:var(--sans);max-width:640px}.pub-index{display:flex;flex-wrap:wrap;gap:6px;margin:26px 0 8px;padding:15px 17px;border:1px solid var(--line);border-radius:13px;background:var(--panel)}.pub-index a{font-family:var(--sans);font-size:12px;color:var(--dim);text-decoration:none;border:1px solid var(--line-soft);border-radius:999px;padding:4px 11px;white-space:nowrap}.pub-index a:hover{color:var(--mint);border-color:var(--mint)}.pub-dl{margin:24px 0 0}.pub-dl>div{padding:17px 0;border-top:1px solid var(--line-soft);scroll-margin-top:24px}.pub-dl>div:first-child{border-top:none}.pub-dl dt{font-family:var(--serif);font-size:22px;font-weight:600;color:var(--parchment);margin-bottom:6px}.pub-dl dd{margin:0;color:var(--muted)}.pub-dl>div:target dt{color:var(--mint)}.pub-star header{display:flex;align-items:baseline;justify-content:space-between;gap:14px;flex-wrap:wrap}.pub-star h2{font-family:var(--serif);font-size:27px;font-weight:600;margin:0;color:var(--parchment)}.pub-star .pos{font-family:var(--mono);font-size:12px;color:var(--sky-acc);white-space:nowrap}.pub-star .pos .g{font-family:var(--serif);font-size:15px;margin-right:5px}.pub-star .meta{display:flex;gap:14px;flex-wrap:wrap;margin-top:7px;font-family:var(--sans);font-size:11.5px;color:var(--dim)}.pub-sr,.pub-star .meta span{white-space:nowrap}.pub-sr{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);border:0}@media (prefers-reduced-motion:reduce){.pub *{animation:none!important;transition:none!important}}