/* KOMECO EMR — 홈페이지 회원가입·로그인·실습실 화면 (테마 스타일을 크게 해치지 않는 최소 스타일) */
.komeco-form { max-width: 520px; }
.komeco-form p { margin: 0 0 14px; }
.komeco-form label { display: block; font-weight: 600; margin-bottom: 4px; }
.komeco-form .komeco-check label, .komeco-consent label { display: flex; gap: 8px; align-items: flex-start; font-weight: 500; }
.komeco-form input[type=text], .komeco-form input[type=email], .komeco-form input[type=password], .komeco-form select, .komeco-form textarea { width: 100%; max-width: 100%; box-sizing: border-box; padding: 9px 11px; border: 1px solid #c9d1dc; border-radius: 5px; font-size: 15px; }
.komeco-form small { display: block; margin-top: 4px; color: #5b6778; font-size: 12.5px; }
.komeco-form .req { color: #c62828; font-weight: 700; }
.komeco-hp { position: absolute !important; left: -9999px !important; width: 1px; height: 1px; overflow: hidden; }
.komeco-consent { margin: 0 0 14px; padding: 12px; border: 1px solid #d5dce5; border-radius: 6px; background: #f8fafc; }
.komeco-consent-text { max-height: 180px; overflow-y: auto; margin-bottom: 10px; padding: 10px; background: #fff; border: 1px solid #e3e8ef; border-radius: 4px; font-size: 13px; line-height: 1.6; }
.komeco-btn { display: inline-block; padding: 10px 20px; border: 0; border-radius: 5px; background: #1f5fbf; color: #fff !important; font-weight: 700; font-size: 15px; text-decoration: none !important; cursor: pointer; }
.komeco-btn:hover { background: #184c9a; }
.komeco-btn-lg { padding: 14px 28px; font-size: 17px; }
.komeco-help { font-size: 13px; color: #5b6778; }
.komeco-notice { margin: 0 0 16px; padding: 12px 14px; border-radius: 6px; border: 1px solid; font-size: 14px; line-height: 1.6; }
.komeco-notice ul { margin: 0; padding-left: 18px; }
.komeco-notice-info { background: #e8f0fb; border-color: #b9cdee; color: #184c9a; }
.komeco-notice-success { background: #e8f6ef; border-color: #a9d9c2; color: #0d6448; }
.komeco-notice-error { background: #fdecec; border-color: #f2b8b8; color: #a61f1f; }
