* { box-sizing: border-box; }
body {
  font-family: 'Pretendard', -apple-system, 'Apple SD Gothic Neo', sans-serif;
  background: #f5f5f7;
  margin: 0;
  color: #1a1a1a;
  line-height: 1.6;
}
header {
  background: #fff;
  border-bottom: 1px solid #e5e5e5;
  padding: 20px 24px;
}
header h1 { margin: 0; font-size: 20px; }
header p { margin: 4px 0 0; font-size: 13px; }
.muted { color: #888; }
main { max-width: 820px; margin: 0 auto; padding: 24px; display: flex; flex-direction: column; gap: 16px; }
.card { background: #fff; border-radius: 10px; padding: 20px 24px; box-shadow: 0 1px 3px rgba(0,0,0,0.04); }
.card h2 { margin: 0 0 12px; font-size: 16px; }
.hidden { display: none; }
form { display: grid; gap: 12px; }
label { display: flex; flex-direction: column; font-size: 13px; gap: 4px; }
label small { color: #999; font-weight: 400; }
input, select {
  padding: 9px 11px;
  border: 1px solid #d5d5d5;
  border-radius: 6px;
  font-size: 14px;
  font-family: inherit;
}
input:focus, select:focus { outline: none; border-color: #1a73e8; }
button {
  padding: 10px 18px;
  border: 1px solid #d5d5d5;
  border-radius: 6px;
  background: #fff;
  font-size: 14px;
  cursor: pointer;
  font-family: inherit;
}
button:hover { background: #f8f8f8; }
button.primary {
  background: #ff0010;
  color: #fff;
  border-color: #ff0010;
  font-weight: 600;
}
button.primary:hover { background: #d6000d; }
.row { display: flex; gap: 8px; align-items: center; justify-content: space-between; }
pre.json {
  background: #1e1e1e;
  color: #d4d4d4;
  padding: 16px;
  border-radius: 8px;
  font-size: 12px;
  overflow-x: auto;
  white-space: pre-wrap;
  word-break: break-all;
}
progress { width: 100%; height: 8px; }
iframe { width: 100%; height: 600px; border: 1px solid #e5e5e5; border-radius: 8px; background: #fafafa; margin-top: 12px; }

#validation table { border-collapse: collapse; width: 100%; font-size: 13px; margin: 8px 0 16px; }
#validation th, #validation td { padding: 6px 10px; border-bottom: 1px solid #eee; text-align: left; }
#validation .ok { color: #00a850; font-weight: 700; }
#validation .ng { color: #ff0010; font-weight: 700; }
