.currently-dot[data-astro-cid-3ovb63i2]{display:inline-block;width:.5rem;height:.5rem;border-radius:9999px;background:var(--accent);box-shadow:0 0 color-mix(in srgb,var(--accent) 50%,transparent);animation:currently-pulse 2.4s ease-in-out infinite}@keyframes currently-pulse{0%,to{box-shadow:0 0 color-mix(in srgb,var(--accent) 45%,transparent)}50%{box-shadow:0 0 0 5px color-mix(in srgb,var(--accent) 0%,transparent)}}@media(prefers-reduced-motion:reduce){.currently-dot[data-astro-cid-3ovb63i2]{animation:none;box-shadow:none}}.sd-diagram .sd-node rect,.sd-diagram .sd-node text,.sd-diagram .sd-edge{transition:opacity .24s ease,stroke .24s ease,stroke-width .24s ease}.sd-diagram .sd-node{cursor:pointer}.sd-diagram .sd-node rect{pointer-events:all}.sd-diagram:has(.sd-node:hover) .sd-node:not(:hover) rect{opacity:.45}.sd-diagram:has(.sd-node:hover) .sd-node:not(:hover) text{opacity:.45}.sd-diagram:has(.sd-node:hover) .sd-edge{opacity:.25}.sd-diagram:has(.sd-node:hover) .sd-boundary,.sd-diagram:has(.sd-node:hover) .sd-pulses{opacity:.35}.sd-diagram .sd-node:hover rect{stroke:var(--accent);stroke-width:1.5}.sd-diagram:has(.sd-node[data-id=github]:hover) .sd-edge[data-from=github],.sd-diagram:has(.sd-node[data-id=github]:hover) .sd-edge[data-to=github],.sd-diagram:has(.sd-node[data-id=gha]:hover) .sd-edge[data-from=gha],.sd-diagram:has(.sd-node[data-id=gha]:hover) .sd-edge[data-to=gha],.sd-diagram:has(.sd-node[data-id=tf]:hover) .sd-edge[data-from=tf],.sd-diagram:has(.sd-node[data-id=tf]:hover) .sd-edge[data-to=tf],.sd-diagram:has(.sd-node[data-id=r53]:hover) .sd-edge[data-from=r53],.sd-diagram:has(.sd-node[data-id=r53]:hover) .sd-edge[data-to=r53],.sd-diagram:has(.sd-node[data-id=cf]:hover) .sd-edge[data-from=cf],.sd-diagram:has(.sd-node[data-id=cf]:hover) .sd-edge[data-to=cf],.sd-diagram:has(.sd-node[data-id=alb]:hover) .sd-edge[data-from=alb],.sd-diagram:has(.sd-node[data-id=alb]:hover) .sd-edge[data-to=alb],.sd-diagram:has(.sd-node[data-id=ecs]:hover) .sd-edge[data-from=ecs],.sd-diagram:has(.sd-node[data-id=ecs]:hover) .sd-edge[data-to=ecs],.sd-diagram:has(.sd-node[data-id=rds]:hover) .sd-edge[data-from=rds],.sd-diagram:has(.sd-node[data-id=rds]:hover) .sd-edge[data-to=rds],.sd-diagram:has(.sd-node[data-id=ddb]:hover) .sd-edge[data-from=ddb],.sd-diagram:has(.sd-node[data-id=ddb]:hover) .sd-edge[data-to=ddb],.sd-diagram:has(.sd-node[data-id=cw]:hover) .sd-edge[data-from=cw],.sd-diagram:has(.sd-node[data-id=cw]:hover) .sd-edge[data-to=cw],.sd-diagram:has(.sd-node[data-id=dd]:hover) .sd-edge[data-from=dd],.sd-diagram:has(.sd-node[data-id=dd]:hover) .sd-edge[data-to=dd],.sd-diagram:has(.sd-node[data-id=s3]:hover) .sd-edge[data-from=s3],.sd-diagram:has(.sd-node[data-id=s3]:hover) .sd-edge[data-to=s3]{opacity:1}.sd-diagram:has(.sd-node[data-id=github]:hover) .sd-edge[data-from=github] line,.sd-diagram:has(.sd-node[data-id=github]:hover) .sd-edge[data-to=github] line,.sd-diagram:has(.sd-node[data-id=gha]:hover) .sd-edge[data-from=gha] line,.sd-diagram:has(.sd-node[data-id=gha]:hover) .sd-edge[data-to=gha] line,.sd-diagram:has(.sd-node[data-id=tf]:hover) .sd-edge[data-from=tf] line,.sd-diagram:has(.sd-node[data-id=tf]:hover) .sd-edge[data-to=tf] line{stroke:var(--accent);stroke-width:1.5}.sd-diagram:has(.sd-node[data-id=ecs]:hover) .sd-edge[data-from=ecs] path,.sd-diagram:has(.sd-node[data-id=rds]:hover) .sd-edge[data-to=rds] path,.sd-diagram:has(.sd-node[data-id=ddb]:hover) .sd-edge[data-to=ddb] path,.sd-diagram:has(.sd-node[data-id=cw]:hover) .sd-edge[data-to=cw] path,.sd-diagram:has(.sd-node[data-id=dd]:hover) .sd-edge[data-to=dd] path,.sd-diagram:has(.sd-node[data-id=s3]:hover) .sd-edge[data-to=s3] path{stroke:var(--accent);stroke-width:1.3}@media(prefers-reduced-motion:reduce){.sd-diagram .sd-pulses{display:none}.sd-diagram .sd-node rect,.sd-diagram .sd-node text,.sd-diagram .sd-edge{transition:none}}.sd-mobile{font-family:Inter,ui-sans-serif,system-ui,sans-serif}.sd-m-eyebrow{font-family:IBM Plex Mono,ui-monospace,monospace;font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--muted);margin:0 0 .75rem}.sd-m-eyebrow--region{margin-bottom:1rem}.sd-m-eyebrow--accent{color:var(--accent);margin-top:.25rem}.sd-m-eyebrow--data{margin-top:1.5rem}.sd-m-col{display:flex;flex-direction:column;gap:.25rem}.sd-m-card{border:1px solid var(--rule);background:var(--bg);border-radius:2px;padding:.6rem .75rem;transition:border-color .24s ease}.sd-m-card--accent{border-color:var(--accent);border-width:1.5px}.sd-m-card--span{grid-column:1 / -1}.sd-m-card:hover{border-color:var(--accent)}.sd-m-title{font-size:.92rem;font-weight:500;color:var(--ink);line-height:1.2;margin:0}.sd-m-meta{font-family:IBM Plex Mono,ui-monospace,monospace;font-size:.7rem;color:var(--muted);margin:.2rem 0 0;line-height:1.3}.sd-m-badge{font-family:IBM Plex Mono,ui-monospace,monospace;font-size:.62rem;letter-spacing:.14em;color:var(--accent);margin:.35rem 0 0}.sd-m-connector{display:flex;align-items:center;justify-content:center;gap:.5rem;padding:.2rem 0;font-family:IBM Plex Mono,ui-monospace,monospace;font-size:.7rem;color:var(--muted);line-height:1}.sd-m-connector--accent{color:var(--accent)}.sd-m-connector--region{margin-top:.5rem;margin-bottom:.5rem}.sd-m-edge-label{letter-spacing:.16em;text-transform:uppercase}.sd-m-region{border:1px dashed var(--rule);border-radius:3px;padding:1rem .85rem 1.1rem}.sd-m-accent-col{border-left:2px solid var(--accent);padding-left:.85rem;display:flex;flex-direction:column;gap:.25rem}.sd-m-grid{display:grid;grid-template-columns:1fr 1fr;gap:.45rem}
