* { box-sizing: border-box; }
body { font-family: system-ui, Arial, sans-serif; line-height: 1.5; margin: 0; background: #f7f8fc; color: #111; }
.container { max-width: 900px; margin: 40px auto; padding: 24px; background: #fff; border-radius: 14px; box-shadow: 0 6px 20px rgba(0,0,0,.06); }
h1 { margin-top: 0; font-size: 1.8rem; color: #1f5eff; }
form { display: grid; gap: 18px; }
fieldset { border: 1px solid #e3e6ef; border-radius: 12px; padding: 16px; background: #fafbff; }
legend { padding: 0 8px; font-weight: 700; color: #1f5eff; }
label { display: grid; gap: 6px; margin-bottom: 10px; }
input[type="text"], input[type="url"], input[type="date"], select, textarea {
  padding: 10px 12px; border: 1px solid #d4d7e0; border-radius: 10px; background: #fff;
}
textarea { resize: vertical; }
.inline label { display: inline-flex; align-items: center; gap: 8px; margin-right: 16px; }
.grid-3 { display: grid; grid-template-columns: repeat(3, 1fr); gap: 12px; }
.actions { display: flex; align-items: center; gap: 16px; }
button { padding: 12px 18px; border: 0; border-radius: 10px; background: #1f5eff; color: #fff; font-weight: 700; cursor: pointer; transition: 0.2s; }
button:hover { filter: brightness(0.9); }
.small { font-size: 12px; color: #666; margin: 0; }
.hp { position: absolute; left: -5000px; }
@media (max-width: 720px) { .grid-3 { grid-template-columns: 1fr; } }
