*,:before,:after{box-sizing:border-box}body{margin:0}#root{min-height:100vh}.app{box-sizing:border-box;color:#1a1a1a;background:#f6f7f9;max-width:40rem;min-height:100vh;margin:0 auto;padding:2rem 1.25rem 3rem;font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif}.header{margin-bottom:1.75rem}.header h1{letter-spacing:-.02em;margin:0 0 .5rem;font-size:1.5rem;font-weight:650}.subtitle{color:#4a4a4a;margin:0;font-size:.95rem;line-height:1.45}.main{flex-direction:column;gap:1.25rem;display:flex}.card{background:#fff;border:1px solid #e8e9ec;border-radius:10px;padding:1.25rem 1.35rem;box-shadow:0 1px 2px #0000000f}.card h2{margin:0 0 1rem;font-size:1.05rem;font-weight:600}.form{flex-direction:column;gap:.65rem;display:flex}.form label{color:#333;font-size:.875rem;font-weight:500}.form input,.form textarea{font:inherit;box-sizing:border-box;border:1px solid #cfd2d8;border-radius:6px;width:100%;padding:.55rem .65rem}.form textarea{resize:vertical;min-height:120px;font-family:ui-monospace,monospace;font-size:.9rem}.form button{font:inherit;color:#fff;cursor:pointer;background:#0f62fe;border:none;border-radius:6px;align-self:flex-start;margin-top:.25rem;padding:.6rem 1.1rem;font-weight:600}.form button:hover:not(:disabled){background:#0b4ec4}.form button:disabled{opacity:.55;cursor:not-allowed}.msg{margin:.85rem 0 0;font-size:.9rem;line-height:1.45}.msg.success{color:#0d5c2e}.msg.error{color:#b00020}.dupes{word-break:break-all;margin:.5rem 0 0;font-size:.85rem}
