.concept{max-width:720px;margin:0 auto}.concept h1{font-size:64px;line-height:1;letter-spacing:-.035em;font-weight:800;text-wrap:balance;max-width:12ch;margin:0 0 40px}.concept h2{scroll-margin-top:24px;font-size:20px;line-height:1.25;letter-spacing:-.01em;font-weight:800;text-wrap:balance;margin:0 0 16px}.concept .prose>p,.concept .prose>ul{max-width:60ch}.concept .prose p,.concept .prose ul{margin:0 0 16px}.concept .prose ul{padding-left:1.2em}.concept .prose li{margin-bottom:8px}.concept .ways li{margin-bottom:16px}.concept .ways li strong{display:block}.concept .prose>:last-child{margin-bottom:0}.concept .prose a{overflow-wrap:anywhere}.concept figure{margin:0}.concept .plate{margin:0 0 48px}.concept .plate-in{display:flex;justify-content:center}.concept .plate img{max-width:min(420px,100%);height:auto;border-radius:22px}.concept section{padding:48px 0;border-top:1px solid var(--line)}.concept section.first{border-top:0;padding-top:0}.concept section .prose .plate{margin:32px 0}.concept .band{background:var(--deep-rose);color:var(--white);border-radius:22px;padding:40px;margin:0}.concept .band+section{border-top:0}.concept .band h2{color:var(--white)}.concept .band .prose ul{list-style:disc;padding-left:1.2em}.concept .band .prose li{margin-bottom:16px;font-size:19px;line-height:1.5}.concept .band .prose li::marker{color:var(--pale)}.concept .band .prose li:last-child{margin-bottom:0}.concept .closing{background:var(--deep);color:var(--white);border-radius:22px;padding:48px 40px;margin-top:0}.concept .closing h2{color:var(--white)}.concept .closing a{color:var(--pale)}.concept .closing a:hover{color:var(--white)}.concept .closing .links{margin:32px 0 0}.concept .links a{margin-right:20px;display:inline-block;padding:12px 0;margin-top:-12px;margin-bottom:-12px;touch-action:manipulation}.concept .links .mono{font-family:var(--mono);font-size:14px}.concept .closing .mono{color:var(--pale)}.concept .small{font-size:14px;line-height:1.5}.concept .label{font-size:13px;font-weight:700;margin:0 0 16px}.concept .ink2{color:var(--ink2)}.concept .foot-meta{margin:40px 0 0;color:var(--ink2);font-size:14px;line-height:1.5}.concept.ai h1{margin-bottom:24px}.concept.ai .front{margin:0 0 40px;font-family:var(--mono);font-size:14px;line-height:1.5;color:var(--ink);background:var(--white);border:1px solid var(--line);border-radius:var(--radius-in);padding:16px;white-space:pre-wrap;overflow-wrap:anywhere}.concept.ai section{padding:32px 0}.concept.ai section:first-of-type{border-top:0;padding-top:0}.concept.ai .plate{margin:0 0 32px}.concept.ai .plate img{max-width:min(300px,100%)}.concept.ai .links{margin:32px 0 0}.concept.start{max-width:720px;padding-right:0}.concept.start h1{margin-right:0}.start .copy{margin:32px 0 48px}.start .copy button{font:inherit;font-size:15px;font-weight:700;line-height:1;color:var(--white);background:var(--navy);border:1px solid transparent;border-radius:9999px;padding:15px 24px;cursor:pointer;touch-action:manipulation;transition:background-color .15s ease-out}.start .copy button:hover{background:#262a39}.start .copy button:focus-visible{outline:2px solid var(--navy);outline-offset:3px}.start .copy [role=status]{margin-left:12px;font-size:14px;color:var(--ink2)}.start .copy p{margin:12px 0 0}.start .for-ai{border-top:1px solid var(--line);padding-top:24px}.start .for-ai summary{cursor:pointer;font-size:18px;font-weight:800;padding:8px 0}.start .for-ai section{padding:32px 0}.start .for-ai section:first-of-type{border-top:0}.start .for-ai pre{margin:0 0 16px;font-family:var(--mono);font-size:14px;line-height:1.5;background:var(--white);border:1px solid var(--line);border-radius:var(--radius-in);padding:16px;white-space:pre-wrap;overflow-wrap:anywhere}.concept.mappage{max-width:720px;padding-right:0}.concept.mappage h1{margin-right:0;margin-bottom:20px}.mappage .lead{font-size:19px;line-height:1.55;color:var(--ink2);max-width:60ch;margin:0 0 24px}.mappage .key{list-style:none;margin:0 0 20px;padding:0;display:flex;flex-wrap:wrap;gap:8px 28px;font-size:14px;line-height:1.5;color:var(--ink2)}.mappage .key li{display:inline-flex;align-items:center;gap:9px}.mappage .mk{display:inline-block;width:14px;height:14px;border-radius:50%;flex:none;box-sizing:border-box}.mappage .mk.w{border:2px solid var(--navy)}.mappage .mk.u{border:1.5px dotted var(--ink2)}.mappage .mk.p{border:1.5px dashed var(--deep-rose)}.mappage .mk.core{box-shadow:0 0 0 2px var(--stone),0 0 0 3.5px var(--navy)}.mapplate{position:relative;overflow:hidden;background:var(--deep);border-radius:22px;padding:28px 20px 32px;color:var(--white)}.mapplate .terrain{position:absolute;right:-40px;bottom:-40px;width:62%;height:64%;opacity:.22;pointer-events:none;-webkit-mask-image:linear-gradient(to top left,#000 30%,transparent 85%);mask-image:linear-gradient(to top left,#000 30%,transparent 85%)}.mapplate .terrain path{fill:none;stroke:var(--rose);stroke-width:1.6}.mapplate .ridge{position:relative;display:block;width:100%;height:auto;margin:0 0 10px}.mapplate .ridge polyline{fill:none;stroke:var(--pale);stroke-width:2;stroke-linejoin:round}.mapplate .ridge circle{fill:var(--deep);stroke:var(--pale);stroke-width:2}.mapplate .cols{position:relative;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));align-items:start}.mappage .mapplate .col{padding:0;border-top:0;display:flex;flex-direction:column;align-items:center;min-width:0}.mapplate .col+.col{border-left:1px solid color-mix(in srgb,var(--pale) 16%,transparent)}.mappage .mapplate h2{margin:0 0 18px;padding:0 4px;text-align:center;font-size:17px;line-height:1.2;color:var(--white)}.mapplate h2 .n{display:block;font-size:13px;font-weight:700;line-height:1.3;color:var(--pale)}.mapplate h2 .nm{display:block}.mapplate ol{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;align-items:center;gap:6px}.mapplate button.c{appearance:none;font:inherit;background:none;border:0;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;cursor:pointer;touch-action:manipulation}.mapplate button.c:before{content:"";width:20px;height:20px;border-radius:50%;box-sizing:border-box;display:block;transition:background-color .15s ease-out,border-color .15s ease-out}.mapplate button.c.w:before{border:2px solid var(--white)}.mapplate button.c.u:before{border:1.5px dotted color-mix(in srgb,var(--white) 55%,transparent)}.mapplate button.c.p:before{border:1.5px dashed var(--white)}.mapplate button.c.core:before{box-shadow:0 0 0 3px var(--deep),0 0 0 4.75px var(--white)}.mapplate button.c.u.core:before{box-shadow:0 0 0 3px var(--deep),0 0 0 4.5px color-mix(in srgb,var(--white) 55%,transparent)}.mapplate button.c:hover:before,.mapplate button.c:has(+.pop:popover-open):before{border-color:var(--pale);box-shadow:0 0 0 3px var(--deep),0 0 0 5px var(--pale)}.mapplate button.c:focus-visible{outline:none}.mapplate button.c:focus-visible:before{outline:2px solid var(--pale);outline-offset:6px}.mappage .pop[popover]{margin:0;inset:auto;position:fixed;width:280px;max-width:calc(100vw - 32px);padding:14px 16px 16px;flex-direction:column;gap:6px;overflow:visible;text-align:left;background:var(--white);color:var(--ink);border:1px solid var(--line);border-radius:14px}.mappage .pop:popover-open{display:flex}@supports not selector(:popover-open){.mappage .pop{display:none}}@media(hover:hover){.mapplate button.c{position:relative}.mapplate button.c:hover:after{content:attr(aria-label);position:absolute;z-index:4;left:calc(100% + 4px);top:50%;transform:translateY(-50%);width:max-content;max-width:220px;padding:5px 10px;border-radius:9999px;background:var(--white);color:var(--ink);font-size:13px;font-weight:700;line-height:1.3;text-align:left;pointer-events:none}.mapplate .col:nth-child(n+4) button.c:hover:after{left:auto;right:calc(100% + 4px)}.mapplate button.c:has(+.pop:popover-open):after{content:none}}@supports (anchor-name:--a){.mappage .pop[popover]{position-area:right span-bottom;margin:-10px 0 0 6px;position-try-fallbacks:flip-inline}}@supports not (anchor-name:--a){.mappage .pop[popover]{inset:0;margin:auto;height:fit-content}}.mappage .pop .t{margin:0;font-size:18px;font-weight:800;line-height:1.25;letter-spacing:-.01em}.mappage .pop .l{margin:0;font-size:15px;line-height:1.5;color:var(--ink2)}.mappage .pop .go{align-self:flex-start;margin-top:4px;background:var(--navy);color:var(--white);text-decoration:none;font-size:14px;font-weight:700;border-radius:9999px;padding:8px 16px;touch-action:manipulation}.mappage .pop .go:hover{background:#262a39}.mappage .pop .go:focus-visible{outline:2px solid var(--navy);outline-offset:3px}.mappage .pop .x{display:none}.mappage .all{margin:32px 0 0;border-top:1px solid var(--line);padding-top:20px}.mappage .all summary{cursor:pointer;font-size:17px;font-weight:800;padding:8px 0}.mappage .all section{padding:0;border-top:0}.mappage .all h3{font-size:17px;font-weight:800;margin:20px 0 6px}.mappage .all ul{margin:0;padding-left:1.2em}.mappage .all li{margin:0 0 4px}.mappage .all a{color:var(--navy)}.mappage .all .mk-core{color:var(--deep-rose);font-weight:700;font-size:14px}.mappage .all .mk-prop{color:var(--ink2);font-style:italic;font-size:14px}.mappage .foot-meta a{color:var(--ink2)}.mappage .foot-meta .mono{font-family:var(--mono);font-size:14px}.concept.plain{max-width:720px;padding-right:0}.concept.plain h1{margin-right:0}.rules .human{margin:0 0 40px}.rules section pre{margin:0 0 16px;font-family:var(--mono);font-size:14px;line-height:1.5;background:var(--white);border:1px solid var(--line);border-radius:var(--radius-in);padding:16px;white-space:pre-wrap;overflow-wrap:anywhere}@media(min-width:900px){.concept{box-sizing:content-box;max-width:560px;padding-right:468px}.concept:after{content:"";display:block;clear:both}.concept h1{max-width:none;margin-right:-468px}.concept .plate,.concept section .prose .plate{float:right;clear:right;width:420px;margin:0 -468px 32px 0}.concept .plate-in{display:block}.concept .closing,.concept .foot-meta{clear:none}.concept.ai{max-width:720px;padding-right:0}.concept.ai .plate,.concept.ai section .prose .plate{float:none;width:auto;margin:0 0 32px}.concept.ai h1{margin-right:0}}@media(max-width:899px){.mappage .lead{font-size:17px}.mapplate{padding:20px 8px 24px}.mappage .mapplate h2{font-size:13px;padding:0 2px}.mapplate h2 .n{font-size:12px}.mapplate h2 .nm{min-height:2.4em}.mapplate ol{gap:0}.mapplate button.c{width:44px;height:44px}.mappage .pop[popover]::backdrop{background:#121b3259}.mappage .pop .t{font-size:20px}.mappage .pop .l{font-size:16px}.mappage .pop[popover],.mappage .pop[popover]:popover-open{position:fixed;inset:auto 0 0;margin:0;width:100%;max-width:none;border-radius:18px 18px 0 0;border-width:1px 0 0;padding:18px max(20px,env(safe-area-inset-right,0px)) max(20px,env(safe-area-inset-bottom,0px)) max(20px,env(safe-area-inset-left,0px));position-area:none}.mappage .pop .x{display:block;align-self:flex-start;margin-top:8px;font:inherit;font-size:14px;font-weight:700;background:none;color:var(--navy);border:1px solid var(--navy);border-radius:9999px;padding:8px 16px;cursor:pointer;touch-action:manipulation}.concept h1{font-size:42px;margin-bottom:24px}.concept h2{font-size:18px}.concept .plate{margin-bottom:32px}.concept section{padding:32px 0}.concept .band{padding:24px}.concept .band .prose li{font-size:17px}.concept .closing{padding:32px 24px}}.holding .go-start{margin:32px 0 40px}.holding .go-start a{display:inline-block;font-size:15px;font-weight:700;line-height:1;color:var(--white);background:var(--navy);border-radius:9999px;padding:15px 24px;text-decoration:none}.holding .go-start a:hover{background:#262a39}.holding .go-start a:focus-visible{outline:2px solid var(--navy);outline-offset:3px}.holding-links{display:flex;flex-wrap:wrap;gap:0 28px;border-top:1px solid var(--line);padding-top:12px;font-size:16px}.holding-links a{display:inline-block;padding:12px 0;min-height:44px;box-sizing:border-box}
