@charset "utf-8";
/* Horizontal Align */
.xm .pull-right{float:right}
.xm .pull-left{float:left}
/* DL Horizontal */
.xm .dl-horizontal{*zoom:1}
.xm .dl-horizontal:before,
.xm .dl-horizontal:after{display:table;line-height:0;content:""}
.xm .dl-horizontal:after{clear:both}
.xm .dl-horizontal dt{float:left;width:160px;overflow:hidden;clear:left;text-align:right;text-overflow:ellipsis;white-space:nowrap}
.xm .dl-horizontal dd{margin-left:180px}
/* Form Control Reset */
.xm form{margin:0 0 20px}
.xm fieldset{padding:0;margin:0;border:0}
.xm label,
.xm input,
.xm button,
.xm select,
.xm textarea{font-weight:normal;line-height:20px}
.xm label{display:block;margin-bottom:5px}
.xm label.x_inline{display:inline-block;margin-right:12px}
.xm select,
.xm textarea,
.xm input[type="text"],
.xm input[type="password"],
.xm input[type="datetime"],
.xm input[type="datetime-local"],
.xm input[type="date"],
.xm input[type="month"],
.xm input[type="time"],
.xm input[type="week"],
.xm input[type="number"],
.xm input[type="email"],
.xm input[type="url"],
.xm input[type="search"],
.xm input[type="tel"],
.xm input[type="color"]{display:inline-block;height:20px;padding:4px 6px;margin-bottom:10px;line-height:20px;color:#555555;vertical-align:middle;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}
.xm input,
.xm textarea{width:206px}
.xm textarea{height:auto}
.xm textarea,
.xm input[type="text"],
.xm input[type="password"],
.xm input[type="datetime"],
.xm input[type="datetime-local"],
.xm input[type="date"],
.xm input[type="month"],
.xm input[type="time"],
.xm input[type="week"],
.xm input[type="number"],
.xm input[type="email"],
.xm input[type="url"],
.xm input[type="search"],
.xm input[type="tel"],
.xm input[type="color"]{background-color:#ffffff;border:1px solid #cccccc;-webkit-box-shadow:inset 0 1px 1px rgba(0, 0, 0, 0.075);-moz-box-shadow:inset 0 1px 1px rgba(0, 0, 0, 0.075);box-shadow:inset 0 1px 1px rgba(0, 0, 0, 0.075);-webkit-transition:border linear 0.2s, box-shadow linear 0.2s;-moz-transition:border linear 0.2s, box-shadow linear 0.2s;-o-transition:border linear 0.2s, box-shadow linear 0.2s;transition:border linear 0.2s, box-shadow linear 0.2s}
.xm textarea:focus,
.xm input[type="text"]:focus,
.xm input[type="password"]:focus,
.xm input[type="datetime"]:focus,
.xm input[type="datetime-local"]:focus,
.xm input[type="date"]:focus,
.xm input[type="month"]:focus,
.xm input[type="time"]:focus,
.xm input[type="week"]:focus,
.xm input[type="number"]:focus,
.xm input[type="email"]:focus,
.xm input[type="url"]:focus,
.xm input[type="search"]:focus,
.xm input[type="tel"]:focus,
.xm input[type="color"]:focus{border-color:rgba(82, 168, 236, 0.8);outline:0;outline:thin dotted \9;-webkit-box-shadow:inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(82, 168, 236, 0.6);-moz-box-shadow:inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(82, 168, 236, 0.6);box-shadow:inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(82, 168, 236, 0.6)}
.xm input[type="radio"],
.xm input[type="checkbox"]{margin:0;line-height:normal}
.xm input[type="file"],
.xm input[type="image"],
.xm input[type="submit"],
.xm input[type="reset"],
.xm input[type="button"],
.xm input[type="radio"],
.xm input[type="checkbox"]{width:auto}
.xm select,
.xm input[type="file"]{height:30px;*margin-top:4px;line-height:30px}
.xm select{background-color:#ffffff;border:1px solid #cccccc}
.xm select[multiple],
.xm select[size]{height:auto}
.xm select:focus,
.xm input[type="file"]:focus,
.xm input[type="radio"]:focus,
.xm input[type="checkbox"]:focus{outline:thin dotted #333;outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}
.xm input:-moz-placeholder, 
.xm textarea:-moz-placeholder {color:#999999}
.xm input:-ms-input-placeholder, 
.xm textarea:-ms-input-placeholder {color:#999999}
.xm input::-webkit-input-placeholder, 
.xm textarea::-webkit-input-placeholder {color:#999999}
.xm input,
.xm textarea{margin-left:0}
.xm input[disabled],
.xm select[disabled],
.xm textarea[disabled],
.xm input[readonly],
.xm select[readonly],
.xm textarea[readonly]{cursor:not-allowed;background-color:#eeeeee}
.xm input[type="radio"][disabled],
.xm input[type="checkbox"][disabled],
.xm input[type="radio"][readonly],
.xm input[type="checkbox"][readonly]{background-color:transparent}
.xm input:focus:invalid, 
.xm textarea:focus:invalid, 
.xm select:focus:invalid {color:#b94a48;border-color:#ee5f5b}
.xm input:focus:invalid:focus, 
.xm textarea:focus:invalid:focus, 
.xm select:focus:invalid:focus {border-color:#e9322d;-webkit-box-shadow:0 0 6px #f8b9b7;-moz-box-shadow:0 0 6px #f8b9b7;box-shadow:0 0 6px #f8b9b7}
/* Forms */
.xm .form-horizontal .control-group{margin-bottom:20px;*zoom:1}
.xm .form-horizontal .control-group:before,
.xm .form-horizontal .control-group:after{display:table;line-height:0;content:""}
.xm .form-horizontal .control-group:after{clear:both}
.xm .form-horizontal .control-label{float:left;width:160px;padding-top:5px;text-align:right}
.xm .form-horizontal .controls{*display:inline-block;*padding-left:20px;margin-left:180px;*margin-left:0}
.xm .form-horizontal .controls:first-child{*padding-left:180px}
.xm .form-horizontal .help-block{margin-bottom:0}
.xm .form-horizontal input+.help-block,
.xm .form-horizontal select+.help-block,
.xm .form-horizontal textarea+.help-block,
.xm .form-horizontal .input-prepend+.help-block,
.xm .form-horizontal .input-append+.help-block{margin-top:10px}
.xm .help-block,
.xm .help-inline{color:#595959}
.xm .help-block{display:block;margin-bottom:10px}
.xm .help-inline{margin:0;display:inline-block;*display:inline;padding-left:5px;vertical-align:middle;*zoom:1}
.xm .input-append,
.xm .input-prepend{display:inline-block;margin-bottom:10px;font-size:0;white-space:nowrap;vertical-align:middle}
.xm .input-append input,
.xm .input-prepend input,
.xm .input-append select,
.xm .input-prepend select{position:relative;margin-bottom:0;*margin-left:0;vertical-align:top;-webkit-border-radius:0 4px 4px 0;-moz-border-radius:0 4px 4px 0;border-radius:0 4px 4px 0}
.xm .input-append input:focus,
.xm .input-prepend input:focus,
.xm .input-append select:focus,
.xm .input-prepend select:focus{z-index:2}
.xm .input-append .add-on,
.xm .input-prepend .add-on{display:inline-block;width:auto;height:20px;min-width:16px;padding:4px 5px;font-weight:normal;line-height:20px;text-align:center;text-shadow:0 1px 0 #ffffff;background-color:#eeeeee;border:1px solid #ccc}
.xm .input-append .add-on,
.xm .input-prepend .add-on,
.xm .input-append .btn,
.xm .input-prepend .btn{vertical-align:top;-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}
.xm .input-append .active,
.xm .input-prepend .active{background-color:#a9dba9;border-color:#46a546}
.xm .input-prepend .add-on,
.xm .input-prepend .btn{margin-right:-1px}
.xm .input-prepend .add-on:first-child,
.xm .input-prepend .btn:first-child{-webkit-border-radius:4px 0 0 4px;-moz-border-radius:4px 0 0 4px;border-radius:4px 0 0 4px}
.xm .input-append input,
.xm .input-append select{-webkit-border-radius:4px 0 0 4px;-moz-border-radius:4px 0 0 4px;border-radius:4px 0 0 4px}
.xm .input-append input+.btn-group .btn:last-child,
.xm .input-append select+.btn-group .btn:last-child{-webkit-border-radius:0 4px 4px 0;-moz-border-radius:0 4px 4px 0;border-radius:0 4px 4px 0}
.xm .input-append .add-on,
.xm .input-append .btn,
.xm .input-append .btn-group{margin-left:-1px}
.xm .input-append .add-on:last-child,
.xm .input-append .btn:last-child,
.xm .input-append .btn-group:last-child>.dropdown-toggle{-webkit-border-radius:0 4px 4px 0;-moz-border-radius:0 4px 4px 0;border-radius:0 4px 4px 0}
.xm .input-prepend.input-append input,
.xm .input-prepend.input-append select{-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}
.xm .input-prepend.input-append input+.btn-group .btn,
.xm .input-prepend.input-append select+.btn-group .btn{-webkit-border-radius:0 4px 4px 0;-moz-border-radius:0 4px 4px 0;border-radius:0 4px 4px 0}
.xm .input-prepend.input-append .add-on:first-child,
.xm .input-prepend.input-append .btn:first-child{margin-right:-1px;-webkit-border-radius:4px 0 0 4px;-moz-border-radius:4px 0 0 4px;border-radius:4px 0 0 4px}
.xm .input-prepend.input-append .add-on:last-child,
.xm .input-prepend.input-append .btn:last-child{margin-left:-1px;-webkit-border-radius:0 4px 4px 0;-moz-border-radius:0 4px 4px 0;border-radius:0 4px 4px 0}
.xm .input-prepend.input-append .btn-group:first-child{margin-left:0}
.xm .form-horizontal input,
.xm .form-horizontal textarea,
.xm .form-horizontal select,
.xm .form-horizontal .help-inline,
.xm .form-horizontal .input-prepend,
.xm .form-horizontal .input-append{display:inline-block;*display:inline;margin-bottom:0;vertical-align:middle;*zoom:1}
.xm .form-horizontal .hide{display:none}
.xm .control-group{margin-bottom:10px}
/* Tabs */
.xm .nav{margin:0 0 20px 0;padding:0;list-style:none}
.xm .nav>li>a{display:block}
.xm .nav>li>a:hover,
.xm .nav>li>a:focus{text-decoration:none;background-color:#eeeeee}
.xm .nav-tabs{*zoom:1}
.xm .nav-tabs:before,
.xm .nav-tabs:after{display:table;line-height:0;content:""}
.xm .nav-tabs:after{clear:both}
.xm .nav-tabs>li{float:left}
.xm .nav-tabs>li>a{padding-right:12px;padding-left:12px;margin-right:2px;line-height:14px}
.xm .nav-tabs{border-bottom:1px solid #ddd}
.xm .nav-tabs>li{margin-bottom:-1px}
.xm .nav-tabs>li>a{padding-top:8px;padding-bottom:8px;line-height:20px;border:1px solid transparent;-webkit-border-radius:4px 4px 0 0;-moz-border-radius:4px 4px 0 0;border-radius:4px 4px 0 0}
.xm .nav-tabs>li>a:hover,
.xm .nav-tabs>li>a:focus{border-color:#eeeeee #eeeeee #dddddd}
.xm .nav-tabs>.active>a,
.xm .nav-tabs>.active>a:hover,
.xm .nav-tabs>.active>a:focus{color:#555555;cursor:default;background-color:#ffffff;border:1px solid #ddd;border-bottom-color:transparent}
/* Table */
.xm .table{max-width:100%;background-color:transparent;border-collapse:collapse;border-spacing:0;width:100%;margin-bottom:20px}
.xm .table th,
.xm .table td{padding:8px;line-height:20px;text-align:left;vertical-align:top;border-top:1px solid #dddddd}
.xm .table th{font-weight:bold}
.xm .table thead th{vertical-align:bottom}
.xm .table caption+thead tr:first-child th,
.xm .table caption+thead tr:first-child td,
.xm .table colgroup+thead tr:first-child th,
.xm .table colgroup+thead tr:first-child td,
.xm .table thead:first-child tr:first-child th,
.xm .table thead:first-child tr:first-child td{border-top:0}
.xm .table tbody+tbody{border-top:2px solid #dddddd}
.xm .table-striped tbody>tr:nth-child(odd)>td,
.xm .table-striped tbody>tr:nth-child(odd)>th{background-color:#f9f9f9}
.xm .table-hover tbody tr:hover>td,
.xm .table-hover tbody tr:hover>th{background-color:#f5f5f5}
/* Pangination */
.xm .pagination{margin:20px 0}
.xm .pagination ul{display:inline-block;*display:inline;margin-bottom:0;margin-left:0;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;*zoom:1;-webkit-box-shadow:0 1px 2px rgba(0, 0, 0, 0.05);-moz-box-shadow:0 1px 2px rgba(0, 0, 0, 0.05);box-shadow:0 1px 2px rgba(0, 0, 0, 0.05)}
.xm .pagination ul>li{display:inline}
.xm .pagination ul>li>a,
.xm .pagination ul>li>span{float:left;padding:4px 12px;line-height:20px;text-decoration:none;background-color:#ffffff;border:1px solid #dddddd;border-left-width:0}
.xm .pagination ul>li>a:hover,
.xm .pagination ul>li>a:focus,
.xm .pagination ul>.active>a,
.xm .pagination ul>.active>span{background-color:#f5f5f5}
.xm .pagination ul>.active>a,
.xm .pagination ul>.active>span{color:#999999;cursor:default}
.xm .pagination ul>.disabled>span,
.xm .pagination ul>.disabled>a,
.xm .pagination ul>.disabled>a:hover,
.xm .pagination ul>.disabled>a:focus{color:#999999;cursor:default;background-color:transparent}
.xm .pagination ul>li:first-child>a,
.xm .pagination ul>li:first-child>span{border-left-width:1px;-webkit-border-bottom-left-radius:4px;border-bottom-left-radius:4px;-webkit-border-top-left-radius:4px;border-top-left-radius:4px;-moz-border-radius-bottomleft:4px;-moz-border-radius-topleft:4px}
.xm .pagination ul>li:last-child>a,
.xm .pagination ul>li:last-child>span{-webkit-border-top-right-radius:4px;border-top-right-radius:4px;-webkit-border-bottom-right-radius:4px;border-bottom-right-radius:4px;-moz-border-radius-topright:4px;-moz-border-radius-bottomright:4px}
.xm .pagination-centered{text-align:center}
/* Member module customize */
.xm,
.xm input,
.xm textarea,
.xm select,
.xm button,
.xm table{font-size:13px}
.xm em{font-style:normal;color:#f00}
.xm h1{font-size:22px}
.xm .nav a,
.xm .btn{text-decoration:none}
.xm .dl-horizontal>dd{margin-bottom:10px}
.xm .table{border-top:1px solid #ddd;border-bottom:1px solid #ddd}
.xm .table>caption{text-align:left;font-weight:bold}
.xm .table>caption>.pull-right{position:relative;top:-8px}
.xm .signin{width:400px;margin:30px auto;background-color:#ffffff;border:1px solid #999;border-radius:6px;box-shadow:0 3px 7px #ccc;box-sizing:border-box}
.xm .signin>.login-header{padding:9px 15px;border-bottom:1px solid #eee}
.xm .signin>.login-header>h1{margin:0;font-size:16px;line-height:1.4;font-weight:600;color:#666}
.xm .signin>.login-header>h1>i{opacity:.5;filter:alpha(opacity=50);margin:2px 0 0 0}
.xm .signin>.login-body{max-height:400px;padding:15px}
.xm .signin>.login-body>*:first-child{margin-top:0}
.xm .signin>.login-footer{padding:14px 15px 15px;margin-bottom:0;text-align:right;background-color:#f5f5f5;border-top:1px solid #ddd;-webkit-border-radius:0 0 6px 6px;-moz-border-radius:0 0 6px 6px;border-radius:0 0 6px 6px;*zoom:1;-webkit-box-shadow:inset 0 1px 0 #ffffff;-moz-box-shadow:inset 0 1px 0 #ffffff;box-shadow:inset 0 1px 0 #ffffff;color:#ccc}
.xm .signin>.login-footer:before,
.xm .signin>.login-footer:after{display:table;line-height:0;content:"";clear:both}
.xm .signin>.login-footer>a{text-decoration:none}
.xm .signin>.login-footer>a:hover,
.xm .signin>.login-footer>a:active,
.xm .signin>.login-footer>a:focus{text-decoration:underline}
.xm .signin .control-group{position:relative;padding:0 14px 0 0;margin:0;clear:both}
.xm .signin .control-group:before{content:"";display:block;clear:both}
.xm .signin .captcha{margin-bottom:10px}
.xm .signin form{margin:0}
.xm .signin fieldset{margin:0}
.xm .signin label{cursor:pointer;display:inline-block}
.xm .signin input[type="text"],
.xm .signin input[type="email"],
.xm .signin input[type="password"]{width:100%}
.xm .signin input[type="checkbox"]{margin:0}
.xm .signin .btn{border-radius:2px;overflow:visible;font-size:14px;line-height:18px;padding:3px 9px}
.xm .signin .submit{position:absolute;top:0;right:0}
.xm .signin #warning{margin-right:-14px}
.xm .signin #warning>p{margin:10px 0}
.xm .agreement{border:1px solid #ddd;padding:15px 15px 10px 15px;border-radius:5px;background:#f8f8f8;margin-bottom:15px}
.xm .agreement>.title{padding: 0 0 10px 0;margin:0 0 10px 0;border-bottom:1px dotted #ccc; font-size:16px;font-weight:bold}
.xm .agreement>.text{max-height:200px;overflow:auto}
.xm .agreement>.confirm{padding:10px 0 0 0;margin:10px 0 0 0;border-top:1px dotted #ccc}
@media all and (max-width:480px){.xm .signin{margin:0;width:100%}}
@media all and (min-width:768px){.xm .dl-horizontal>dt{margin-bottom:10px}}

/* =========================================
   HAEBET – Signin Compatibility Override
   (레거시 .xm 규칙을 안전하게 덮어쓰기)
========================================= */

/* 컨테이너: 박스/그림자/테두리/배경 다크화 */
.xm .signin{
  width:auto; max-width:460px; margin:28px auto 60px !important;
  background:linear-gradient(180deg, rgba(255,255,255,.03), rgba(255,255,255,.02)) !important;
  border:1px solid rgba(255,255,255,.10) !important;
  border-radius:16px !important;
  box-shadow:0 10px 30px rgba(0,0,0,.25) !important;
  color:#eaf2fb !important;
  box-sizing:border-box;
  overflow:hidden;
  font-family:ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,"Noto Sans KR","Apple SD Gothic Neo","Malgun Gothic",sans-serif;
}

/* 헤더 */
.xm .signin>.login-header{
  padding:18px 18px 10px !important;
  border-bottom:1px solid #1f2d3b !important;
  background:linear-gradient(135deg, rgba(34,200,255,.10), rgba(107,123,255,.08)) !important;
}
.xm .signin>.login-header>h1{
  margin:0 !important; font-size:20px !important; font-weight:900 !important;
  letter-spacing:-.01em; color:#eaf2fb !important;
  display:flex; align-items:center; gap:8px;
}
.xm .signin>.login-header>h1>i{
  width:22px; height:22px; border-radius:6px;
  display:inline-flex; align-items:center; justify-content:center;
  background:linear-gradient(180deg, #22c8ff, #6b7bff);
  color:#001c2d; font-style:normal; font-weight:900; opacity:1 !important; margin:0 !important;
}
.xm .signin>.login-header>h1>i:before{content:"👤"; font-size:14px}

/* 바디/그룹 간격 */
.xm .signin>.login-body{ padding:18px !important; max-height:none !important }
.xm .signin .control-group{ position:static !important; padding:0 !important; margin:0 0 12px 0 !important }

/* 입력 필드 재정의 (레거시 input height:20px, box-shadow 제거) */
.xm .signin input[type="text"],
.xm .signin input[type="password"]{
  width:100% !important;
  height:46px !important;
  margin:0 0 12px 0 !important;
  padding:0 14px !important;
  border-radius:12px !important;
  border:1px solid rgba(255,255,255,.10) !important;
  background:rgba(255,255,255,.04) !important;
  color:#eaf2fb !important;
  box-shadow:none !important;
  transition:border-color .15s ease, box-shadow .15s ease, background .15s ease;
}
.xm .signin input::placeholder{ color:rgba(233,242,251,.55) }
.xm .signin input:focus{
  outline:none !important;
  border-color:rgba(167,200,255,.55) !important;
  box-shadow:0 0 0 3px rgba(167,200,255,.18) !important;
  background:rgba(255,255,255,.05) !important;
}

/* 체크박스/라벨 */
.xm .signin label{ display:inline-flex !important; align-items:center; gap:8px; color:#9fb4c9 !important; font-size:14px }
.xm .signin input[type="checkbox"]{ width:18px; height:18px; accent-color:#22c8ff }

/* 경고 안내(체크 시 표시) */
.xm .signin #warning{
  display:none !important; margin:8px 0 0 0 !important; padding:10px 12px !important;
  border-radius:10px; background:rgba(255,255,255,.04) !important;
  border:1px solid rgba(255,255,255,.08) !important; color:#9fb4c9 !important;
  font-size:13px; line-height:1.6;
}
#keepid_opt:checked ~ #warning{ display:block !important }

/* 버튼: 절대배치 해제 + 풀폭 CTA */
.xm .signin .submit{
  position:static !important; top:auto !important; right:auto !important;
  display:block !important; width:100% !important;
  height:46px !important; line-height:46px !important; padding:0 16px !important;
  border-radius:999px !important; border:0 !important;
  background:linear-gradient(90deg, #22c8ff, #6b7bff) !important;
  color:#001c2d !important; font-weight:900 !important; font-size:15px !important;
  box-shadow:0 10px 24px rgba(34,200,255,.25) !important;
  transition:filter .15s ease, transform .12s ease;
}
.xm .signin .submit:hover{ filter:brightness(1.07) saturate(1.05); transform:translateY(-1px) }
.xm .signin .submit:focus-visible{ outline:2px solid rgba(167,200,255,.9); outline-offset:2px }

/* 푸터 영역 */
.xm .signin>.login-footer{
  padding:12px 18px 18px !important;
  text-align:center !important;
  background:transparent !important;
  color:#9fb4c9 !important;
  border-top:1px solid #1f2d3b !important;
  box-shadow:none !important; border-radius:0 0 16px 16px !important;
}
.xm .signin>.login-footer a{ color:#ffffff !important; font-weight:800 }
.xm .signin>.login-footer a:hover{ text-decoration:underline }

/* 접근성 포커스 */
.xm .signin a:focus-visible, .xm .signin input:focus-visible{
  outline:2px solid rgba(167,200,255,.9); outline-offset:2px; border-radius:10px;
}

/* 모바일 */
@media (max-width:520px){
  .xm .signin{ margin:20px 12px 48px !important }
  .xm .signin>.login-header>h1{ font-size:18px !important }
}
.xm .signin .submit{
  color:#fff !important;
  text-shadow:0 1px 2px rgba(0,0,0,.25);
}

/* =========================================
   HAEBET – Signup (xm) Compatibility Override
   (HTML 그대로, CSS만 드롭인)
========================================= */
:root{
  --au-bg:#0b1118; --au-panel:#0f1720; --au-line:#1f2d3b;
  --au-fg:#eaf2fb; --au-muted:#9fb4c9;
  --au-brand:#22c8ff; --au-brand2:#6b7bff;
  --au-danger:#ff5370;
}

/* 섹션 베이스 */
.xm{color:var(--au-fg); font-family:ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,"Noto Sans KR","Apple SD Gothic Neo","Malgun Gothic",sans-serif}
.xm h1{border-bottom:1px solid var(--au-line) !important; padding-bottom:10px; margin-bottom:14px; font-weight:900; color:#eaf2fb}

/* 레거시 폼 레이아웃을 세로형으로 재정렬 */
.xm .form-horizontal .control-label{float:none !important; width:auto !important; text-align:left !important; padding:0 0 6px !important; color:#cfe2f7; font-weight:700}
.xm .form-horizontal .controls{margin-left:0 !important; padding:0 !important}
.xm .control-group{margin-bottom:14px !important}

/* 인풋/셀렉트 */
.xm input[type="text"],
.xm input[type="password"],
.xm input[type="email"],
.xm select{
  width:100% !important; height:46px !important;
  padding:0 14px !important; margin:0 !important;
  border-radius:12px !important;
  border:1px solid rgba(255,255,255,.10) !important;
  background:rgba(255,255,255,.04) !important;
  color:var(--au-fg) !important; box-shadow:none !important;
  transition:border-color .15s ease, box-shadow .15s ease, background .15s ease;
}
.xm input::placeholder{color:rgba(233,242,251,.55)}
.xm input:focus, .xm select:focus{
  outline:none !important;
  border-color:rgba(167,200,255,.55) !important;
  box-shadow:0 0 0 3px rgba(167,200,255,.18) !important;
  background:rgba(255,255,255,.05) !important;
}

/* 라디오/체크박스 */
.xm .controls label{display:inline-flex; align-items:center; gap:8px; margin-right:14px; color:var(--au-muted)}
.xm input[type="checkbox"], .xm input[type="radio"]{width:18px; height:18px; accent-color:var(--au-brand)}

/* 안내 텍스트 */
.xm .help-inline, .xm .help-block{color:var(--au-muted) !important}

/* 약관 카드 */
.xm .agreement{
  border:1px solid rgba(255,255,255,.10) !important;
  background:linear-gradient(180deg, rgba(255,255,255,.03), rgba(255,255,255,.02)) !important;
  border-radius:12px !important; padding:14px !important; margin:14px 0 !important;
}
.xm .agreement .title{
  border-bottom:1px solid var(--au-line) !important; padding-bottom:8px !important;
  margin-bottom:10px !important; font-weight:900; color:#eaf2fb !important;
}
.xm .agreement .text{
  max-height:240px; overflow:auto; padding:0 2px; color:#dfe9f7;
}
.xm .agreement .confirm{margin-top:10px}
.xm .agreement .confirm label{color:#eaf2fb}

/* 버튼 영역 */
.xm .btnArea{
  border-top:1px solid var(--au-line) !important; padding-top:16px !important;
  display:flex; justify-content:space-between; gap:10px;
}
.xm .btn{
  height:44px; padding:0 16px; border-radius:12px !important; font-weight:800;
  border:1px solid rgba(255,255,255,.12); background:rgba(255,255,255,.04); color:#fff; cursor:pointer;
  transition:filter .15s ease, transform .12s ease;
}
.xm .btn:hover{filter:brightness(1.06)}
/* 등록(Submit) 버튼 – 그라데이션 메인 CTA */
.xm .btn.btn-inverse{
  width:160px; border:0 !important;
  background:linear-gradient(90deg,var(--au-brand),var(--au-brand2)) !important;
  color:#fff !important; box-shadow:0 10px 24px rgba(34,200,255,.25);
}
.xm .btn.btn-inverse:hover{transform:translateY(-1px)}
/* 취소(좌측) 버튼 */
.xm .btn.pull-left{background:rgba(255,255,255,.06); border-color:rgba(255,255,255,.14)}
/* 기존 float은 유지하되 flex에 잡히도록 폭 자동 */
.xm .btn.pull-right, .xm .btn.pull-left{float:none !important}

/* 에러 상태 */
.xm input.is-error, .xm .has-error input{
  border-color:rgba(255,83,112,.55) !important;
  box-shadow:0 0 0 3px rgba(255,83,112,.22) !important;
}
.xm .form-error-msg{color:var(--au-danger); font-size:13px; margin-top:6px}

/* 테두리/구분선 다크화 */
.xm select, .xm .table, .xm .pagination ul>li>a{border-color:var(--au-line)}

/* 반응형 */
@media (max-width:560px){
  .xm .btnArea{flex-direction:row-reverse}
  .xm .btn.btn-inverse{width:100%}
}
/* === Signup CTA: big & centered ================================== */
.xm .btnArea{
  display:flex !important;
  justify-content:center !important;   /* 가운데 정렬 */
  align-items:center !important;
  gap:12px;
  padding-top:18px !important;
  border-top:1px solid #2a3a49 !important;
}

/* 등록(Submit) 버튼 크게 */
.xm .btn.btn-inverse{
  width:min(440px, 100%) !important;    /* 데스크탑은 440px, 모바일은 100% */
  height:52px !important;
  border-radius:999px !important;
  font-size:16px !important;
  font-weight:900 !important;
  letter-spacing:.02em;
  background:linear-gradient(90deg,#22c8ff,#6b7bff) !important;
  color:#fff !important;
  border:0 !important;
  box-shadow:
    0 10px 24px rgba(34,200,255,.25),
    0 0 0 1px rgba(255,255,255,.06) inset;
  transition:transform .12s ease, filter .15s ease;
}
.xm .btn.btn-inverse:hover{ transform:translateY(-1px); filter:brightness(1.06) }
.xm .btn.btn-inverse:focus-visible{ outline:2px solid rgba(167,200,255,.9); outline-offset:2px }

/* 혹시 남아있는 좌/우 정렬 속성 무력화 */
.xm .btn.pull-right, .xm .btn.pull-left{ float:none !important; }

/* 모바일: 풀폭 */
@media (max-width:560px){
  .xm .btn.btn-inverse{ width:100% !important }
}

/* 다크 모드 select 드롭다운 톤 맞추기 */
.xm select {
  background-color: #151b22 !important;
  color: #eaf2fb !important;
  border: 1px solid rgba(255,255,255,0.15) !important;
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  background-image:
    linear-gradient(45deg, transparent 50%, #9fb4c9 50%),
    linear-gradient(135deg, #9fb4c9 50%, transparent 50%);
  background-position:
    calc(100% - 16px) center,
    calc(100% - 11px) center;
  background-size: 5px 5px, 5px 5px;
  background-repeat: no-repeat;
}

/* 포커스 시 효과 */
.xm select:focus {
  border-color: rgba(167,200,255,.55) !important;
  box-shadow: 0 0 0 3px rgba(167,200,255,.18) !important;
  outline: none !important;
}

/* 드롭다운 내부 옵션 색상 */
.xm select option {
  background-color: #0f151b !important;
  color: #eaf2fb !important;
}
