:root{--b:#1f6f5c;--bg:#fafaf7;--t:#1d1d1d;--m:#555}
*{box-sizing:border-box}body{margin:0;font:16px/1.5 system-ui,-apple-system,Segoe UI,Roboto,sans-serif;color:var(--t);background:var(--bg)}
a{color:var(--b)}header,footer{background:#fff;border-bottom:1px solid #ddd;padding:.75rem 1rem}footer{border-top:1px solid #ddd;border-bottom:0;margin-top:2rem;font-size:.9rem;color:var(--m)}
.brand{font-weight:700;text-decoration:none;font-size:1.2rem}main{max-width:44rem;margin:0 auto;padding:1rem}
h1{font-size:1.6rem;line-height:1.2}fieldset{border:1px solid #ccc;border-radius:.5rem;margin:0 0 1rem;padding:1rem;background:#fff}
legend{font-weight:600;padding:0 .3rem}label{display:block;padding:.6rem;margin:.3rem 0;border:1px solid #ddd;border-radius:.4rem;cursor:pointer}
label:has(input:checked){border-color:var(--b);background:#e8f3ef}input[type=radio]{margin-right:.5rem}
.btn{display:inline-block;background:var(--b);color:#fff;border:0;border-radius:.4rem;padding:.65rem 1rem;font-size:1rem;text-decoration:none;cursor:pointer}
.btn.alt{background:#fff;color:var(--b);border:1px solid var(--b)}
.card{background:#fff;border:1px solid #ddd;border-radius:.5rem;padding:1rem;margin:.75rem 0}.card h3{margin:.2rem 0}
.card .actions{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center;margin-top:.5rem}.small{font-size:.9rem;color:var(--m)}
:focus-visible{outline:3px solid #f0a500;outline-offset:2px}.gadgets li{margin:.3rem 0}[hidden]{display:none!important}
