/* 웨스트랑고 수집 설문 — Korean-first, simple, readable. */
:root { --bg:#f7f5ef; --card:#fff; --ink:#222; --muted:#777; --acc:#2f6b3a; --line:#e3ddcf; }
* { box-sizing:border-box; }
body { margin:0; background:var(--bg); color:var(--ink); font-family:"Noto Sans KR",system-ui,sans-serif; }
.wrap { max-width:960px; margin:0 auto; padding:0 16px; }
header { background:#1e3a24; color:#fff; }
header .head { display:flex; justify-content:space-between; align-items:center; padding:12px 16px; gap:12px; flex-wrap:wrap; }
.brand { color:#fff; font-weight:700; font-size:1.2em; text-decoration:none; }
.sub { color:#cfe0d2; font-size:.85em; margin-left:8px; }
nav a { color:#fff; margin-left:12px; }
nav .nick { font-weight:700; }
main { padding:16px 16px 48px; }
footer { color:var(--muted); font-size:.85em; padding-bottom:32px; }
.card { background:var(--card); border:1px solid var(--line); border-radius:8px; padding:12px 16px; margin:12px 0; }
.list { list-style:none; padding:0; }
.list .card a { text-decoration:none; color:var(--ink); }
.muted { color:var(--muted); }
.warn { background:#fff3cd; border:1px solid #e0c36a; padding:8px 12px; border-radius:6px; }
.btn { display:inline-block; background:var(--acc); color:#fff; padding:8px 16px; border-radius:6px; text-decoration:none; border:0; cursor:pointer; font-size:1em; }
button { cursor:pointer; }
input, select, textarea { font-size:1em; padding:6px 8px; margin:4px 0; border:1px solid #ccc; border-radius:4px; max-width:100%; }
label { display:block; margin:6px 0; }
.tbl { border-collapse:collapse; width:100%; background:#fff; }
.tbl th, .tbl td { border:1px solid var(--line); padding:6px 8px; text-align:left; font-size:.92em; }
.kv th { width:160px; background:#faf8f2; }
.badge { display:inline-block; font-size:.78em; padding:2px 8px; border-radius:10px; background:#eee; margin:1px 2px; }
.badge.admin { background:#7b1f1f; color:#fff; }
.badge.pub { background:#2f6b3a; color:#fff; }
.badge.closed { background:#555; color:#fff; }
.badge.draft { background:#b98a1d; color:#fff; }
.p-auth { background:#1e3a24; color:#fff; }
.p-prov { background:#e8d9a0; }
.p-recon { background:#cfe0f5; }
.p-unres { background:#ddd; }
.p-user { background:#e6d5f0; }
.p-comm { background:#f5c99b; }
.p-acc { background:#2f6b3a; color:#fff; }
.req { color:#b00; font-size:.85em; }
.q h4 { margin:8px 0; }
.agroup { margin-top:20px; border-bottom:2px solid var(--acc); padding-bottom:4px; }
.agg { background:#faf8f2; border:1px dashed var(--line); border-radius:6px; padding:8px 12px; margin:8px 0 16px; }
.agg.hidden { opacity:.75; }
.acc { background:#eef5ee; border:1px solid var(--acc); border-radius:6px; padding:8px 12px; margin:8px 0 16px; }
.bar-row { display:flex; align-items:center; gap:8px; margin:3px 0; font-size:.9em; }
.bar-label { min-width:120px; }
.bar { display:inline-block; height:12px; background:var(--acc); border-radius:3px; min-width:2px; }
.bar-num { color:var(--muted); }
.privnote { background:#f6eefb; border-left:3px solid #8a5aa8; padding:6px 10px; margin:6px 0; }
.filters { display:flex; gap:8px; margin:12px 0; flex-wrap:wrap; }
details.card summary { cursor:pointer; font-size:1.05em; }
.inline { display:inline; }
.ans label { display:block; }
