.nm-app{--rose:#b86d7a;--dark:#272022;--sand:#f8f2ef;max-width:800px;margin:2rem auto;padding:1rem;color:var(--dark);font-family:Arial,sans-serif;line-height:1.6}.nm-app *{box-sizing:border-box}.nm-brand{text-align:center;font-family:Georgia,serif;font-size:clamp(1.8rem,5vw,2.7rem);letter-spacing:.08em;font-weight:600;line-height:1.2}.nm-brand span{color:var(--rose)}.nm-brand small{font-family:Arial,sans-serif;font-size:.35em;letter-spacing:0;font-weight:400}.nm-tag{text-align:center;color:#78686b;margin:.5rem 0 1.7rem}.nm-box{background:#fff;border:1px solid #ead8d8;border-radius:18px;box-shadow:0 8px 30px #58383a12;padding:clamp(1.3rem,5vw,2.8rem)}.nm-box h2,.nm-card h3{font-family:Georgia,serif;color:#302225;line-height:1.25}.nm-box h2{font-size:clamp(1.5rem,4vw,2rem);margin:.3rem 0 1rem}.nm-icon{font-size:2rem}.nm-progress{color:var(--rose);font-size:.75rem;letter-spacing:.12em;font-weight:bold;margin-bottom:1rem}.nm-options{display:grid;gap:.7rem;margin:1.5rem 0}.nm-option{display:flex;align-items:center;gap:.8rem;border:1px solid #e5d5d3;border-radius:10px;padding:.85rem 1rem;cursor:pointer;background:#fff}.nm-option:has(input:checked){border-color:var(--rose);background:#fbf2f3}.nm-option input{accent-color:var(--rose);flex:none}.nm-app button{background:#b86d7a;color:white;border:0;border-radius:8px;padding:.85rem 1.3rem;font-weight:700;cursor:pointer;font-size:1rem}.nm-app button:hover{background:#985360}.nm-app button:focus-visible,.nm-app a:focus-visible,.nm-app input:focus-visible{outline:3px solid #722c43;outline-offset:3px}.nm-app .nm-secondary{background:#f5e9e8;color:#56383c}.nm-actions{display:flex;justify-content:space-between;gap:.6rem;flex-wrap:wrap;margin-top:1.4rem}.nm-error{color:#a02e36;font-weight:bold}.nm-note{background:#faf3f1;border-left:4px solid #cd7e8a;padding:1rem;margin:1rem 0;border-radius:4px}.nm-note ul{margin:.5rem 0 0;padding-left:1.3rem}.nm-card{border:1px solid #eadad8;border-radius:12px;padding:1.15rem;margin:1rem 0}.nm-card h3{margin:0 0 .5rem;font-size:1.25rem}.nm-card p{margin:.4rem 0}.nm-links{display:flex;gap:.5rem 1rem;flex-wrap:wrap}.nm-app a{color:#92515e;font-weight:700;text-decoration:underline}.nm-safety{font-size:.92rem;margin-top:1.5rem}@media(max-width:480px){.nm-app{padding:.5rem}.nm-actions button{flex:1}.nm-brand small{display:block;font-size:.42em;margin-top:.3rem}}
