.req { color: #b3261e; }
.hint { font-size: 13px; color: #667; }
.hidden { display: none; }
.feed-item { border-top: 1px solid #eef2f7; padding: 12px 0; }
.feed-meta { font-size: 12px; color: #889; }
.feed-title { margin: 4px 0; }
.actions { margin-top: 8px; }

* { box-sizing: border-box; }
body { font-family: -apple-system, "Noto Sans KR", sans-serif; margin: 0; background: #f4f7fa; color: #222; }
nav { background: #1a3a5c; color: #fff; padding: 12px 20px; display: flex; gap: 16px; align-items: center; }
nav a { color: #dbe7f3; text-decoration: none; font-size: 14px; }
nav a:hover { color: #fff; }
nav .spacer { flex: 1; }
nav .who { font-size: 13px; color: #aecbe8; }
.wrap { max-width: 860px; margin: 24px auto; padding: 0 16px; }
.card { background: #fff; border: 1px solid #e0e6ee; border-radius: 8px; padding: 20px; margin-bottom: 18px; }
h1 { font-size: 20px; color: #1a3a5c; }
h2 { font-size: 16px; color: #1a3a5c; border-left: 4px solid #2a6db0; padding-left: 8px; }
label { display: block; font-size: 13px; margin: 10px 0 4px; color: #445; }
input, textarea, select { width: 100%; padding: 8px 10px; border: 1px solid #cfd8e3; border-radius: 5px; font-size: 14px; }
button { background: #2a6db0; color: #fff; border: 0; padding: 9px 16px; border-radius: 5px; font-size: 14px; cursor: pointer; }
button.danger { background: #b3261e; }
button.ghost { background: #667; }
.badge { font-size: 11px; padding: 2px 7px; border-radius: 10px; background: #e6eef7; color: #1a3a5c; }
.msg { padding: 10px 12px; border-radius: 6px; margin-bottom: 14px; font-size: 14px; }
.msg.ok { background: #e6f4ea; color: #1e7a3c; }
.msg.err { background: #fdeceb; color: #b3261e; }
.actions { display: flex; gap: 8px; }
.actions form { margin: 0; }
.brand img{display:block;height:28px}
