.prose-covenant{line-height:1.7}.prose-covenant>*+*{margin-top:1.25rem}.prose-covenant p,.prose-covenant ul,.prose-covenant ol{max-width:68ch;color:#e8efe6cc}.prose-covenant h2{margin-top:3rem;font-size:1.5rem;font-weight:600;letter-spacing:-.02em;color:#e8efe6}.prose-covenant h3{margin-top:2rem;font-size:1.125rem;font-weight:600;color:#e8efe6}.prose-covenant a{color:#7bd389;text-decoration:underline}.prose-covenant a:hover{color:#4fbf6a}.prose-covenant strong{color:#e8efe6;font-weight:600}.prose-covenant ul{list-style:disc;padding-left:1.25rem}.prose-covenant ol{list-style:decimal;padding-left:1.25rem}.prose-covenant li+li{margin-top:.4rem}.prose-covenant code{font-family:JetBrains Mono,ui-monospace,SFMono-Regular,monospace;font-size:.875em;background:#e8efe612;padding:.1em .35em}.prose-covenant pre{background:#e8efe60d;border:1px solid rgb(232 239 230 / .1);padding:1rem;overflow-x:auto;font-size:.85rem}.prose-covenant pre code{background:none;padding:0}.prose-covenant blockquote{border-left:2px solid #3aa055;padding-left:1rem;color:#e8efe6b3}.prose-covenant table{width:100%;border-collapse:collapse;font-size:.9rem}.prose-covenant th,.prose-covenant td{text-align:left;padding:.5rem .75rem;border-bottom:1px solid rgb(232 239 230 / .1)}.prose-covenant th{font-family:JetBrains Mono,ui-monospace,SFMono-Regular,monospace;font-size:.7rem;text-transform:uppercase;letter-spacing:.1em;color:#e8efe699}.dg{border:1px solid rgb(232 239 230 / .1);background:#e8efe608;padding:1.75rem 1.25rem;font-family:JetBrains Mono,ui-monospace,SFMono-Regular,monospace;margin:1.75rem 0}.dg-flow{display:flex;flex-direction:column;gap:.4rem}.dg-node{flex:1 1 0;min-width:0;border:1px solid rgb(232 239 230 / .18);padding:.65rem .75rem}.dg-node--accent{border-color:#4fbf6a73}.dg-node-label{display:block;font-size:.7rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:#e8efe6}.dg-node-sub{display:block;margin-top:.35rem;font-size:.68rem;line-height:1.5;color:#e8efe68c}.dg-arrow{flex:none;align-self:center;color:#4fbf6a;font-size:.85rem;transform:rotate(90deg)}.dg-eq,.dg-delta{text-align:center;font-size:.8rem;color:#e8efe6b3}.dg-eq{margin-bottom:1.25rem}.dg-delta{margin-top:1.25rem;color:#7bd389}.dg-return{margin-top:1rem;text-align:center;position:relative}.dg-return span{font-size:.68rem;letter-spacing:.1em;text-transform:uppercase;color:#7bd389cc}.dg-return span:before{content:"↺ "}.dg-split{display:grid;grid-template-columns:1fr;gap:1rem}.dg-panel{border:1px solid rgb(232 239 230 / .18);padding:.85rem .9rem;text-align:center}.dg-verdict{display:block;margin-top:.75rem;font-size:.85rem;font-weight:600;letter-spacing:.18em;text-transform:uppercase}.dg-verdict--fail{color:#e0685f}.dg-verdict--pass{color:#7bd389}.dg-tag{display:block;margin-top:.6rem;font-size:.65rem;letter-spacing:.14em;text-transform:uppercase;color:#e8efe673}.dg-branch{display:flex;flex-direction:column;gap:1rem}.dg-branch-targets{padding-left:1rem;border-left:1px dashed rgb(79 191 106 / .45);display:flex;flex-direction:column;gap:.55rem}.dg-branch-targets>div{font-size:.72rem;color:#e8efe68c}.dg-branch-targets>div:before{content:"▶ ";color:#4fbf6a;font-size:.6rem}.dg-exec{color:#e8efe6;font-weight:600;margin-right:.5em}.prose-covenant .dg code{background:none;padding:0;font-size:inherit}.dg-stack{display:flex;flex-direction:column;gap:.45rem;justify-content:center}.dg-stack>div{font-size:.72rem;color:#e8efe6a6;border:1px solid rgb(232 239 230 / .12);padding:.35rem .6rem;text-align:center}@media (min-width: 640px){.dg{padding:2rem 1.75rem}.dg-flow{flex-direction:row;gap:.6rem}.dg-arrow{transform:none}.dg-return{margin:1.1rem 10% 0;height:1.9rem;text-align:initial;border:1px dashed rgb(79 191 106 / .45);border-top:none}.dg-return:before{content:"▲";position:absolute;left:0;top:-.35rem;transform:translate(-50%,-100%);color:#4fbf6ab3;font-size:.6rem}.dg-return span{position:absolute;left:50%;top:100%;transform:translate(-50%,.35rem);white-space:nowrap}.dg-split{grid-template-columns:1fr 1fr;gap:1.25rem}.dg-branch{flex-direction:row;align-items:center;gap:1.5rem}.dg-branch>.dg-node{flex:0 1 16rem}.dg-flow>.dg-stack{flex:1 1 0}.dg-node--core{flex:0 1 15rem;align-self:center}}
