:root{--ink:#111;--muted:#555;--line:#d6d6d6;--bg:#fafaf8;--acc:#111;--focus:#1a5fff}
*{box-sizing:border-box}body{margin:0;font:16px/1.5 system-ui,-apple-system,Segoe UI,Roboto,sans-serif;color:var(--ink);background:var(--bg)}
.top{display:flex;justify-content:space-between;align-items:center;padding:14px 20px;border-bottom:1px solid var(--line)}
.lang button{border:1px solid var(--line);background:#fff;padding:6px 10px;min-height:40px;cursor:pointer}.lang button[aria-pressed=true]{background:var(--acc);color:#fff}
main{max-width:720px;margin:0 auto;padding:24px 20px 40px}h1{font-size:1.8rem;margin:.2em 0}
fieldset{border:1px solid var(--line);background:#fff;margin:22px 0;padding:16px 16px 20px}legend{font-weight:700;padding:0 6px}
label{display:block;margin:14px 0 6px;font-weight:600}input,select,textarea{width:100%;padding:11px;border:1px solid #999;font:inherit;background:#fff;min-height:44px}
.check{display:flex;gap:10px;align-items:flex-start;font-weight:400}.check input{width:22px;min-height:22px;margin-top:3px}
.hint,.ref,footer{color:var(--muted);font-size:.93rem}.progress{height:8px;background:#e8e8e8}#bar{height:8px;width:0;background:var(--acc);transition:width .2s}
.actions{display:flex;flex-wrap:wrap;gap:12px}.actions button{min-height:48px;padding:0 18px;font:inherit;font-weight:600;border:2px solid var(--acc);cursor:pointer}
button[type=submit]{background:var(--acc);color:#fff}#save{background:#fff}
:focus-visible{outline:3px solid var(--focus);outline-offset:2px}[aria-invalid=true]{border-color:#b00020}
footer{max-width:720px;margin:0 auto;padding:0 20px 30px}
