.hcp-wrap{
  max-width:860px;margin:28px auto;padding:22px;border:1px solid #e6e8e6;border-radius:18px;
  background:#fff;font-family:-apple-system,BlinkMacSystemFont,"Pretendard","Noto Sans KR",Arial,sans-serif;
  box-sizing:border-box;color:#222;
}
.hcp-wrap *{box-sizing:border-box}
.hcp-head{text-align:center;margin-bottom:20px}
.hcp-kicker{font-size:13px;color:#6c746d;margin-bottom:6px}
.hcp-title{margin:0;font-size:27px;line-height:1.3}
.hcp-desc{margin:9px 0 0;color:#707770;font-size:14px;line-height:1.65}
.hcp-section{margin-top:20px;padding-top:18px;border-top:1px solid #edf0ed}
.hcp-section:first-of-type{border-top:none;padding-top:0}
.hcp-section-title{font-weight:800;font-size:16px;margin-bottom:10px}
.hcp-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.hcp-card{background:#f7f9f7;border:1px solid #eaeeea;border-radius:12px;padding:12px;min-width:0}
.hcp-label{display:block;font-size:12px;color:#707770;margin-bottom:6px}
.hcp-input,.hcp-select{
  width:100%;height:42px;border:1px solid #d9ded9;border-radius:9px;background:#fff;padding:0 10px;
  font-size:15px;color:#222;outline:none;
}
.hcp-input:focus,.hcp-select:focus{border-color:#777}
.hcp-table-wrap{overflow-x:auto}
.hcp-table{width:100%;border-collapse:collapse;min-width:760px}
.hcp-table th{background:#f7f9f7;color:#555;font-size:12px;font-weight:700;padding:9px 7px;border-bottom:1px solid #e5e9e5;white-space:nowrap}
.hcp-table td{padding:7px;border-bottom:1px solid #eff1ef;vertical-align:middle}
.hcp-table .hcp-select,.hcp-table .hcp-input{height:38px;font-size:14px}
.hcp-num{text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums}
.hcp-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:11px}
.hcp-btn{
  min-height:42px;border:1px solid #d9ded9;background:#fff;border-radius:9px;padding:0 13px;cursor:pointer;font-weight:700
}
.hcp-btn-primary{background:#262d28;color:#fff;border-color:#262d28}
.hcp-btn-danger{width:38px;padding:0;color:#8a3a32}
.hcp-summary{
  display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:14px
}
.hcp-result{
  border:1px solid #e4e8e4;border-radius:12px;padding:14px;background:#fbfcfb;min-width:0
}
.hcp-result strong{display:block;margin-top:5px;font-size:22px;line-height:1.2;word-break:break-word}
.hcp-result small{color:#707770;line-height:1.4}
.hcp-highlight{background:#f2f6f2}
.hcp-warning{
  margin-top:12px;padding:12px 14px;border-radius:10px;background:#fff7e8;border:1px solid #f0dfba;
  color:#6e5426;font-size:13px;line-height:1.55
}
.hcp-ok{
  margin-top:12px;padding:12px 14px;border-radius:10px;background:#f2f8f3;border:1px solid #dbe9dd;
  color:#315d38;font-size:13px;line-height:1.55
}
.hcp-note{margin-top:15px;color:#737a73;font-size:12px;line-height:1.65}
.hcp-device-hint{font-size:12px;color:#747b74;margin-top:7px}
.hcp-badge{display:inline-block;padding:3px 7px;border-radius:999px;background:#eef2ee;font-size:11px;color:#555}
@media(max-width:720px){
  .hcp-wrap{padding:17px;border-radius:14px}
  .hcp-title{font-size:23px}
  .hcp-grid,.hcp-summary{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:420px){
  .hcp-grid,.hcp-summary{grid-template-columns:1fr}
}