:root { --ink:#1f2933; --bg:#f7f8fa; --card:#fff; --line:#d5dae1; --brand:#1d6fb8; --err:#b42318; --ok:#067647; }
* { box-sizing: border-box; }
body { margin:0; font:16px/1.5 system-ui, -apple-system, "Segoe UI", Roboto, "Noto Sans Devanagari", sans-serif; color:var(--ink); background:var(--bg); }
.top { display:flex; justify-content:space-between; align-items:center; padding:12px 16px; background:var(--card); border-bottom:1px solid var(--line); }
.brand { font-weight:700; color:var(--brand); text-decoration:none; font-size:1.15rem; }
.lang { padding:8px 12px; border:1px solid var(--line); border-radius:8px; text-decoration:none; color:var(--ink); min-height:44px; display:inline-flex; align-items:center; }
.wrap { max-width:560px; margin:0 auto; padding:20px 16px 40px; }
h1 { font-size:1.5rem; line-height:1.25; margin:8px 0 12px; }
h2 { font-size:1.1rem; margin:0 0 8px; }
.lead { color:#3e4c59; }
.card { background:var(--card); border:1px solid var(--line); border-radius:12px; padding:14px 16px; margin:14px 0; }
label { display:block; margin:14px 0 4px; font-weight:600; }
input[type=text], input[type=email], input:not([type]), select { width:100%; padding:12px; font-size:1rem; border:1px solid var(--line); border-radius:8px; background:#fff; min-height:44px; }
input[readonly] { background:#eef0f3; }
.check { display:flex; gap:10px; align-items:flex-start; font-weight:400; margin:12px 0; }
.check input { width:22px; height:22px; margin-top:2px; flex:none; }
fieldset { border:1px solid var(--line); border-radius:8px; margin:16px 0; padding:8px 12px; }
legend { font-weight:600; padding:0 6px; }
.chip { display:inline-block; margin:4px 6px 4px 0; font-weight:400; }
.chip input { position:absolute; opacity:0; }
.chip span { display:inline-block; padding:8px 12px; border:1px solid var(--line); border-radius:999px; background:#fff; min-height:40px; }
.chip input:checked + span { background:var(--brand); color:#fff; border-color:var(--brand); }
.chip input:focus-visible + span { outline:3px solid #9cc5ea; }
.grouptitle { font-weight:600; margin:10px 0 2px; }
.btn { display:inline-flex; align-items:center; justify-content:center; min-height:48px; padding:0 18px; margin:10px 8px 0 0; border:1px solid var(--brand); background:#fff; color:var(--brand); border-radius:10px; font-size:1rem; font-weight:600; text-decoration:none; cursor:pointer; }
.btn.primary { background:var(--brand); color:#fff; }
.error { color:var(--err); background:#fef3f2; border:1px solid #fecdca; padding:10px 12px; border-radius:8px; }
.ok { color:var(--ok); }
.hint { color:#52606d; font-size:.92rem; }
.divider { text-align:center; color:#52606d; margin:18px 0 0; }
.inline { display:inline; }
.devbox { margin-top:24px; border-top:1px dashed var(--line); padding-top:8px; }
.foot { text-align:center; color:#52606d; font-size:.85rem; padding:16px; }
.hidden { display:none; }

.brand { display:inline-flex; align-items:center; gap:8px; }
.brandicon { display:block; border-radius:6px; }
.bar { width:100%; height:14px; accent-color:var(--brand); }
.rows { list-style:none; padding:0; margin:0; }
.row { display:flex; justify-content:space-between; align-items:center; gap:12px; }
.row form { margin:0; }
textarea { width:100%; padding:12px; font-size:1rem; border:1px solid var(--line); border-radius:8px; font-family:inherit; }
input[type=file] { width:100%; padding:10px 0; font-size:1rem; }
