*{box-sizing:border-box}body{margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background:#f5f5f7;color:#1d1d1f}.app{max-width:760px;margin:0 auto;padding:2rem 1.5rem 4rem}h1{margin-bottom:1.5rem}.contact-form{background:#fff;border:1px solid #e0e0e2;border-radius:10px;padding:1.5rem;margin-bottom:2rem}.contact-form h2{margin-top:0;font-size:1.1rem}.contact-form label{display:block;font-size:.85rem;font-weight:600;margin-bottom:.75rem}.contact-form input{display:block;width:100%;margin-top:.25rem;padding:.55rem .65rem;font-size:.95rem;border:1px solid #d0d0d5;border-radius:6px}.form-actions{display:flex;gap:.5rem;margin-top:.5rem}button{background:#0071e3;color:#fff;border:none;border-radius:6px;padding:.55rem 1.1rem;font-size:.9rem;cursor:pointer}button.secondary{background:#e5e5ea;color:#1d1d1f}button.danger{background:#ff3b30;margin-left:.5rem}button:disabled{opacity:.6;cursor:not-allowed}.error{color:#ff3b30;font-size:.85rem}.empty{color:#6e6e73}hr{border:none;border-top:1px solid #e0e0e2;margin:2rem 0}.contact-list{width:100%;border-collapse:collapse;background:#fff;border:1px solid #e0e0e2;border-radius:10px;overflow:hidden}.contact-list th,.contact-list td{text-align:left;padding:.75rem 1rem;border-bottom:1px solid #f0f0f2;font-size:.9rem}.contact-list th{background:#fafafa;font-size:.8rem;text-transform:uppercase;color:#6e6e73}.row-actions{white-space:nowrap}
