body { margin: 0; color: #0f172a; background: #fff; -webkit-font-smoothing: antialiased; }
    .grid-bg { background-image: radial-gradient(rgba(9,75,146,.13) 1px, transparent 1px); background-size: 28px 28px; }
    .service-tab[aria-selected="true"] { color: #fff; background: #0a2540; border-color: #0a2540; box-shadow: 0 8px 20px rgba(10,37,64,.18); }
    .mode-btn[aria-pressed="true"] { color: #094b92; background: #fff; box-shadow: 0 2px 8px rgba(15,23,42,.12); }
    .node { transition: opacity .25s, transform .25s; }
    .node.is-muted { opacity: .22; transform: scale(.88); }
    .node-button:focus-visible { outline: 3px solid rgba(14,165,233,.4); outline-offset: 4px; }
    .pulse-ring { animation: ring 2.2s ease-out infinite; }
    @keyframes ring { from { transform: scale(.7); opacity: .75 } to { transform: scale(2.2); opacity: 0 } }
    @media (prefers-reduced-motion: reduce) { .pulse-ring { animation: none; } }
    html.embed .preview-only { display: none; }
    html.embed main { padding-top: 3rem; padding-bottom: 3rem; }
