/* Singapore Money Pulse card (pulse.js). Friendly Coach tokens only, so dark mode follows the theme. */
.pulse-card{display:block;width:100%;max-width:42rem;margin:1.5rem auto;padding:1.15rem 1.15rem 1.25rem;border:1px solid var(--hair);border-radius:var(--radius);background:var(--card);box-shadow:var(--shadow-sm);color:var(--ink);overflow-wrap:anywhere}
.coach-hero+.pulse-card{margin-top:1rem}
.pulse-card .pulse-eyebrow{display:inline-block;margin:0 0 .5rem;padding:.2rem .6rem;border-radius:999px;background:var(--sun);color:var(--sun-ink);font-size:.85rem;font-weight:700;letter-spacing:.01em}
.pulse-card .pulse-title{margin:0 0 .5rem;font-size:1.3rem;line-height:1.25;letter-spacing:-.02em}
.pulse-card .pulse-title:focus{outline:none}
.pulse-card p{margin:0 0 .75rem;font-size:1rem;line-height:1.5}
.pulse-card .pulse-intro{color:var(--muted);font-size:.95rem}
.pulse-form{margin:0}
.pulse-question{margin:0;padding:0;border:0;min-width:0}
.pulse-question legend{display:block;width:100%;margin:0 0 .75rem;padding:0}
.pulse-question legend:focus{outline:none}
.pulse-question legend:focus-visible{outline:2px solid var(--ink);outline-offset:4px}
.pulse-progress{display:block;margin:0 0 .25rem;color:var(--muted);font-size:.875rem;font-weight:600}
.pulse-text{display:block;font-family:'Bricolage Grotesque',sans-serif;font-size:1.1rem;font-weight:700;line-height:1.35}
.pulse-options{display:grid;gap:.5rem}
.pulse-option{position:relative;display:block;margin:0;cursor:pointer}
.pulse-option input{position:absolute;opacity:0;width:1px;height:1px;margin:0}
.pulse-option span{display:flex;align-items:center;min-height:48px;padding:.6rem .95rem;border:1px solid var(--field-border);border-radius:12px;background:var(--paper);color:var(--ink);font-size:1rem;line-height:1.35}
.pulse-option input:checked+span{border-color:var(--brand);background:var(--brand);color:var(--brand-text);font-weight:600}
.pulse-option input:focus-visible+span{outline:3px solid var(--ink);outline-offset:2px}
.pulse-card .pulse-error{margin:.6rem 0 0;color:var(--danger);font-weight:600}
.pulse-card .pulse-error:empty{display:none}
.pulse-trap{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}
.pulse-actions{display:flex;flex-wrap:wrap;align-items:center;gap:.6rem;margin-top:1rem}
.pulse-actions .btn{min-height:48px;min-width:8rem;font-size:1rem}
.pulse-back{min-height:44px;padding:.6rem .25rem;border:0;background:none;color:var(--brand);font:inherit;font-weight:700;text-decoration:underline;text-underline-offset:4px;cursor:pointer}
.pulse-card .pulse-results{font-size:1.1rem;font-weight:700}
.pulse-card .pulse-join{display:inline-flex;align-items:center;justify-content:center;min-height:48px}
@media (max-width:480px){.pulse-actions .btn{flex:1 1 100%}.pulse-back{order:3}}
