@charset "utf-8";
/* Thin 100 Light 300 Regular 400 Medium 500 Bold 700  Black 900 */
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+KR:wght@300;400;500;700;900&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Monda:wght@400;700&display=swap');



html{box-sizing:border-box}*,*:before,*:after{box-sizing:inherit}
/* Extract from normalize.css by Nicolas Gallagher and Jonathan Neal git.io/normalize */
html{-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}

article,aside,details,figcaption,figure,footer,header,main,menu,nav,section{display:block}
summary{display:list-item}
audio,canvas,progress,video{display:inline-block}
progress{vertical-align:baseline}
audio:not([controls]){display:none;height:0}[hidden],template{display:none}
a{background-color:transparent;text-decoration:none; color:#404040}
a:active,a:hover{outline-width:0}
ol, ul, li { list-style:none; padding:0; margin:0 }
blockquote, q { quotes:none }
blockquote:before, blockquote:after, q:before, q:after { content:''; content:none }
table { border-collapse:collapse; border-spacing:0 }

abbr[title]{border-bottom:none;text-decoration:underline;text-decoration:underline dotted}
b,strong{font-weight:bolder}dfn{font-style:italic}mark{background:#ff0;color:#000}
small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}
sub{bottom:-0.25em}sup{top:-0.5em}figure{margin:1em 40px}img{border-style:none}
code,kbd,pre,samp{font-family:monospace,monospace;font-size:1em}hr{box-sizing:content-box;height:0;overflow:visible}
button,input,select,textarea,optgroup{font:inherit;margin:0}optgroup{font-weight:bold}
button,input{overflow:visible}button,select{text-transform:none}
button,[type=button],[type=reset],[type=submit]{-webkit-appearance:button}
button::-moz-focus-inner,[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner{border-style:none;padding:0}
button:-moz-focusring,[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring{outline:1px dotted ButtonText}
fieldset{border:1px solid #c0c0c0;margin:0 2px;padding:.35em .625em .75em}
legend{color:inherit;display:table;max-width:100%;padding:0;white-space:normal}textarea{overflow:auto}
[type=checkbox],[type=radio]{padding:0}
[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}
[type=search]{-webkit-appearance:textfield;outline-offset:-2px}
[type=search]::-webkit-search-decoration{-webkit-appearance:none}
::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}
input:focus { outline: none;}
button:focus { outline: none;}
select:focus { outline: none;}
/* End extract */

html,body{
	font-family:'Pretendard', sans-serif;
    background-color: #f6f6f6;
    font-size:15px;letter-spacing:-0.025em;
    color: #000;}
	html{/*overflow-x:hidden*/}
body{
	margin:0;
}
h1{font-size:36px}h2{font-size:30px}h3{font-size:24px}h4{font-size:20px}h5{font-size:18px}h6{font-size:16px}.serif{font-family:serif}
h1,h2,h3,h4,h5,h6{font-family:'Noto Sans KR', sans-serif, Arial;font-weight:400;margin:10px 0}.wide{letter-spacing:4px}
hr{border:0;border-top:1px solid #eee;margin:20px 0}

.font1{font-family:'Monda'; font-weight:400; letter-spacing:-0.05em}
.font1-1{font-family:'Monda'; font-weight:500; letter-spacing:-0.05em}
.font2{font-family:'Noto Sans KR'; font-weight:500; letter-spacing:-0.05em}
.bold700{font-weight:700}

.image{max-width:100%;height:auto}img{vertical-align:middle}a{color:inherit}
.table,.table-all{border-collapse:collapse;border-spacing:0;width:100%;display:table}.table-all{border:1px solid #ccc}
.bordered tr,.table-all tr{border-bottom:1px solid #3d3e43}.striped tbody tr:nth-child(even){background-color:#f1f1f1}
.bordered td,.table-all td{border-right:1px solid #3d3e43}
.bordered td:last-child,.table-all td:last-child{border-right:none}
.table-all tr:nth-child(odd){background-color:#fff}.table-all tr:nth-child(even){background-color:#f1f1f1}
.hoverable tbody tr:hover,.ul.hoverable li:hover{background-color:#ccc}.centered tr th,.centered tr td{text-align:center}
.table td,.table th,.table-all td,.table-all th{padding:9px 8px;display:table-cell;text-align:left;vertical-align:center}
/*.table th:first-child,.table td:first-child,.table-all th:first-child,.table-all td:first-child{padding-left:40px}*/
.btn,.button{border:none;display:inline-block;padding:6px 20px;vertical-align:middle;overflow:hidden;text-decoration:none;color:inherit;background-color:inherit;text-align:center;cursor:pointer;white-space:nowrap;border-radius: 5px;}
.btn-sm{font-size:14px;letter-spacing:-0.05em;padding:3px 20px;}

.btn:hover{}
.btn,.button{-webkit-touch-callout:none;-webkit-user-select:none;-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}   
input[disabled],.disabled,.btn:disabled,.button:disabled{cursor:not-allowed;opacity:0.3}.disabled *,:disabled *{pointer-events:none}
.btn.disabled:hover,.btn:disabled:hover{box-shadow:none}
.badge,.tag{background-color:#000;color:#fff;display:inline-block;padding-left:8px;padding-right:8px;text-align:center}.badge{border-radius:50%}
.ul{list-style-type:none;padding:0;margin:0}.ul li{padding:8px 16px;border-bottom:1px solid #ddd}.ul li:last-child{border-bottom:none}
.tooltip,.display-container{position:relative}.tooltip .text{display:none}.tooltip:hover .text{display:inline-block}
.ripple:active{opacity:0.5}.ripple{transition:opacity 0s}
.input{padding:8px;display:block;border:none;border-bottom:1px solid #ccc;width:100%}
.dropdown-click,.dropdown-hover{position:relative;display:inline-block;cursor:pointer}
.dropdown-hover:hover .dropdown-content{display:block}
.dropdown-hover:first-child,.dropdown-click:hover{background-color:#ccc;color:#000}
.dropdown-hover:hover > .button:first-child,.dropdown-click:hover > .button:first-child{background-color:#ccc;color:#000}
.dropdown-content{cursor:auto;color:#000;background-color:#fff;display:none;position:absolute;min-width:160px;margin:0;padding:0;z-index:1}
/*.check,.radio{width:24px;height:24px;position:relative;top:6px;background-color:#28292c}*/
.sidebar{height:100%;width:200px;background-color:#fff;position:fixed!important;z-index:1;overflow:auto}
.bar-block .dropdown-hover,.bar-block .dropdown-click{width:100%}
.bar-block .dropdown-hover .dropdown-content,.bar-block .dropdown-click .dropdown-content{min-width:100%}
.bar-block .dropdown-hover .button,.bar-block .dropdown-click .button{width:100%;text-align:left;padding:8px 16px}
.main,#main{transition:margin-left .4s}
.modal{z-index:3;display:none;padding-top:100px;position:fixed;left:0;top:0;width:100%;height:100%;overflow:auto;background-color:rgb(0,0,0);background-color:rgba(0,0,0,0.4)}
.modal-content{margin:auto;background-color:#fff;position:relative;padding:0;outline:0;width:600px}
.bar{width:100%;overflow:hidden}.center .bar{display:inline-block;width:auto}
.bar .bar-item{padding:8px 16px;float:left;width:auto;border:none;display:block;outline:0}
.bar .dropdown-hover,.bar .dropdown-click{position:static;float:left}
.bar .button{white-space:normal}
.bar-block .bar-item{width:100%;display:block;padding:8px 16px;text-align:left;border:none;white-space:normal;float:none;outline:0}
.bar-block.center .bar-item{text-align:center}.block{display:block;width:100%}
.responsive{display:block;overflow-x:auto}
.container:after,.container:before,.panel:after,.panel:before,.row:after,.row:before,.row-padding:after,.row-padding:before,
.cell-row:before,.cell-row:after,.clear:after,.clear:before,.bar:before,.bar:after{content:"";display:table;clear:both}
.wcol, .half,.third,.twothird,.threequarter,.quarter{float:left;width:100%}
input[disabled] {
  background-color: #f0f0f0;  /* 회색 배경 */
  color: #999999;             /* 흐린 텍스트 */
  border: 1px solid #ddd;     /* 테두리 색 */
  cursor: not-allowed;        /* 마우스 커서 */
}

.wcol{float:left;}
.wcol.f1{width:613px; margin-right:20px}
.s1{width:8.33333%}.s2{width:16.66666%}.s3{width:24.99999%}.s4{width:33.33333%}
.s5{width:41.66666%}.s6{width:49.99999%}.s7{width:58.33333%}.s8{width:66.66666%}
.s9{width:74.99999%}.s10{width:83.33333%}.s11{width:91.66666%}.wcol.s12{width:99.99999%}

@media (min-width:601px){
.wcol.m1{width:8.33333%}.wcol.m2{width:16.66666%}.wcol.m3,.quarter{width:24.99999%}.wcol.m4,.third{width:33.33333%}
.wcol.m5{width:41.66666%}.wcol.m6,.half{width:49.99999%}.wcol.m7{width:58.33333%}.wcol.m8,.twothird{width:66.66666%}
.wcol.m9,.threequarter{width:74.99999%}.wcol.m10{width:83.33333%}.wcol.m11{width:91.66666%}.wcol.m12{width:99.99999%}
}
@media (min-width:993px){
.wcol.l1{width:8.33333%}.wcol.l2{width:16.66666%}.wcol.l3{width:24.99999%}.wcol.l4{width:33.33333%}
.wcol.l5{width:41.66666%}.wcol.l6{width:49.99999%}.wcol.l7{width:58.33333%}.wcol.l8{width:66.66666%}
.wcol.l9{width:74.99999%}.wcol.l10{width:83.33333%}.wcol.l11{width:91.66666%}.wcol.l12{width:99.99999%}}
.rest{overflow:hidden}.stretch{margin-left:-16px;margin-right:-16px}

.mr0 {margin-right:0px !important}
.mr1 {margin-right:1% !important}
.mr2 {margin-right:2.5% !important}
.mr5 {margin-right:5px !important}
.mr10 {margin-right:10px !important}
.mr15 {margin-right:15px !important}
.mr20 {margin-right:20px !important}
.mr30 {margin-right:30px !important}
.mr50 {margin-right:50px !important}
.ml0 {margin-left:0px !important}
.ml5 {margin-left:5px !important}
.ml10 {margin-left:10px !important}
.ml15 {margin-left:15px !important}
.ml20 {margin-left:20px !important}
.ml30 {margin-left:30px !important}
.ml40 {margin-left:40px !important}
.ml50 {margin-left:50px !important}
.mt3 {margin-top:3px !important}
.mt5 {margin-top:5px !important}
.mt10 {margin-top:10px !important}
.mt15 {margin-top:15px !important}
.mt20 {margin-top:20px !important}
.mt25 {margin-top:25px !important}
.mt30 {margin-top:30px !important}
.mt40 {margin-top:40px !important}
.mt50 {margin-top:50px !important}
.mt65 {margin-top:65px !important}
.mb10 {margin-bottom:10px !important}
.mb15 {margin-bottom:15px !important}
.mb20 {margin-bottom:20px !important}
.mb30 {margin-bottom:30px !important}

.pt10 {padding-top:10px !important}
.pt15 {padding-top:15px !important}
.pt30 {padding-top:30px !important}
.pb10 {padding-bottom:10px !important}
.pl10{padding-left:10px !important}
.pl20{padding-left:20px !important}
.pr10{padding-right:10px !important}
.pr20{padding-right:20px !important}

.content,.auto{margin-left:auto;margin-right:auto}
.content{max-width:1200px}
.auto{max-width:1140px}
.cell-row{display:table;width:100%}.cell{display:table-cell}
.cell-top{vertical-align:top}
.cell-middle{vertical-align:middle}
.cell-bottom{vertical-align:bottom}
.hide{display:none!important}
.show-block,.show{display:block!important}
.show-inline-block{display:inline-block!important}

html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video { margin:0; padding:0; border:0; box-sizing: border-box;  }

body { line-height:1 }
ol, ul { list-style:none; padding:0; margin:0 }
blockquote, q { quotes:none }
blockquote:before, blockquote:after, q:before, q:after { content:''; content:none }
table { border-collapse:collapse; border-spacing:0 }
a { text-decoration:none; color:#666 }

fieldset { min-width: 0; padding: 0; margin: 0; border: 0; }
input[type="text"],input[type="submit"],input[type="password"],input[type="date"],textarea,select,select option,button{ height: 40px; padding: 7px 10px;   border: solid 1px #ccc; background-color:#ffffff; box-sizing:  border-box; font-family:'Montserrat', 'Noto Sans KR' , sans-serif;}
input[type="search"] { box-sizing: border-box; }
input[type="radio"], input[type="checkbox"] { line-height: normal; }
input[type="file"] { display:inline-block; }
input[type="range"] { display: block; width: 100%; }
select[multiple], select[size] { height: auto; }
input[type="file"]:focus, input[type="radio"]:focus, input[type="checkbox"]:focus { outline: thin dotted; outline: 5px auto; outline-offset: -2px; }

/* Variables */
:root {
  --bg-page: #f5f6f7;
  --bg-header: #1f2329;
  --text-primary: #1f2329;
  --text-light: #6e7280;
  --border: #d9d9d9;
  --radius: 6px;
  --shadow-sm: 0 2px 8px rgba(0,0,0,0.05);
  --color-primary: #00bfa6;
  --color-primary-dark: #009582;
  --color-accent: #f5f5f5;
  --font-base: "Noto Sans KR", system-ui, -apple-system, sans-serif;
  --transition: 0.2s ease-in-out;
}

/* Global resets / utility */
* {
  box-sizing: border-box;
}
body {
  margin: 0;
  /*font-family: var(--font-base);
  background: var(--bg-page);
  color: var(--text-primary);
  line-height: 1.4;
  font-size: 14px;
      position: relative;*/
}
h1 {
  margin: 0;
  font-size: 36px;
  font-weight: 700;
}
button {
  cursor: pointer;
  border: none;
  background: none;
  font: inherit;
}
input, select {
  font: inherit;
  outline: none;
  border: 1px solid #ccc;
  border-radius: 4px;
}

/* Layout */
#wrap {
	margin: 0px auto;
    position: relative;
    width: 100%;
}
.header {
    background: #0f172a;;
}
.header-wrap {
    position: relative;
    height: 70px;
}
.header .logo {
    text-align: center;
    padding: 17px 0;
}
.header .logo p{
color: #fff;
    font-size: 17px;
    padding: 3px;
}
.header .logo img {
    width: 210px;
}
.header .menu {
    flex-grow: 2;
    margin-left: 100px;
}
.header .menu > ul {
    font-size: 16px;
    line-height: 65px;
}
.header .main-menu{
	display: inline-block;
    text-align: center;
    position: relative;
    color: #fff;
}
.header .main-menu a{
	display: inline-block;
    text-align: center;
    margin-right: 40px;
    position: relative;
    color: #fff;
}
.header .sub-menu {
	display: inline-block;
    text-align: center;
    margin-right: 3%;
    position: relative;
    color: rgba(255, 255, 255, 0.6);
}
.header .menu ul ul {
    position: absolute;
    visibility: hidden;
    opacity: 0;
    left: 0;
    width: 200px;
    z-index: 1000;
}
.header .menu ul li > ul {
    display: flex;
    background: #1e242c;
    flex-direction: column;
}
.header .menu ul li a.active {
    color: #54c9ff;
    font-weight: 700;
}
.header .menu ul li a.selected {
    color: #22B7D2;
    text-decoration: underline;
    text-decoration-color: #22B7D2;
    text-decoration-thickness: 2px;
    text-underline-offset: 7px;
}
.header .menu ul li:hover a {
    color: #22B7D2;
    text-decoration: underline;
    text-decoration-color: #22B7D2;
    text-decoration-thickness: 2px;
    text-underline-offset: 7px;
}
.header .menu ul li a {
    position: relative;
    display: inline-block;
    padding: 10px 0;
	font-weight: 500;
	font-size: 16px;
}
.header .menu ul li a.active:before {
    position: absolute;
    left: 50%;
    top: -10px;
    content: "";
    width: 10px;
    height: 10px;
    border-radius: 50%;
    background-color: #54c9ff;
}
.container {
  /*max-width: 1280px;*/
  margin: 0 auto;
  padding: 2rem 1rem 4rem;
}
/* 햄버거 버튼 */
.hamburger {
    width: 25px;
    height: 20px;
    cursor: pointer;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    margin-right: 15px;
    position: relative;
    top: 25px;
    left: 20px;
}
.hamburger span {
	display: block;
	height: 3px;
    background: #fff;
	border-radius: 2px;
	transition: 0.3s;
}

/* 사이드 메뉴 */
.side-menu {
	position: fixed;
	top: 0;
	left: 0;
	width: 250px;
	height: 100%;
	background: #0f172a;
	color: #666;
	box-shadow: 2px 0 8px rgba(0,0,0,0.3);
	height: calc(100vh);
	/*transform: translateX(-250px);*/
	margin-left: -250px;
	transition: margin-left 0.3s ease-in-out;
	z-index: 1000;
	overflow-y: auto;
	background: #0f172a;
}
.arrow.rotate {
    transform: rotate(90deg);
}
.arrow {
    transition: transform 0.3s ease;
}
.side-menu.open {
	/*transform: translateX(0);*/
	margin-left : 0;
}
.menu-item {
   /* border-bottom: 1px solid #595959;*/
   padding : 0 15px;
}

.menu-header {
	padding: 1rem 1.5rem;
    background: #0f172a;
    font-weight: 500;
    color: #fff;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: space-between;
    transition: all 0.5s ease-in-out;
	border-bottom: 1px solid #4d5a68;
}

.menu-header:hover {
	background: rgba(255,255,255,0.08);
	color: #3B82F6;

}

.menu-header.active {
	background: #334155;
	color: #3B82F6;
}

.submenu {
	max-height: 0;
	overflow: hidden;
	transition: max-height 0.5s ease-in-out;
	background: #fafbfc;
}

.submenu.open {
	max-height: 800px;
}

.submenu-item {
	padding: 0.75rem 2rem;
	cursor: pointer;
/*	border-bottom: 1px solid #f0f0f0;*/
	transition: all 0.5s ease-in-out;
    font-size: 13px;
    font-weight: 500;
    color: #333;
}

.submenu-item:hover {
	background: #e3f2fd;
	color: #00b2eb;
}

.submenu-item.active {
	background: #3B82F6;
	color: #fff;
}

/* 본문 래퍼 */
#wrap {
	margin-left: 0;
	transition: margin-left 0.3s ease-in-out;;
}
.header-wrap,
.container {
    margin-left: 0;
    transition: margin-left 0.3s ease-in-out !important; /* 항상 애니메이션 가능 */
}

#wrap.shift .header-wrap,
#wrap.shift .container {
	margin-left: 250px !important;
}
.header .login-info {
    padding: 0px 22px;
    color: #fff;
    float: right;
}
.header .login-info .user-info {
    position: relative;
    font-size: 14px;
	font-weight: 500;
	line-height: 2;
}
.logout {
    font-size: 12px;
	color:#fff;
    border: 1px solid #fff;
    border-radius: 15px;
    padding: 7px 15px;
    font-weight: 300;
    margin-left: 20px;
    letter-spacing: -0.05em;
}
.search-area .search-header {
	display: flex;
    border-bottom: 1px solid #dadada;
    padding-bottom: 10px;
}
.search-header .tab-menu {
    display: flex;
}
.search-header h4 {
    display: inline-block;
    font-size: 18px;
    letter-spacing: -0.05em;
    font-weight: 700;
    margin: 0;
	color: #00b2eb;
}
.search-header .breadcrumb {
    margin-left: auto;
    padding: 0;
    margin-bottom: 0;
}
.search-header .breadcrumb > li {
    position: relative;
    display: inline-block;
    padding: 0 10px;
    font-size: 14px;
    letter-spacing: -0.05em;
    color: #777777;
}
.search-header .breadcrumb > li:after {
    content: "";
    position: absolute;
    top: 3px;
    right: 0;
    width: 1px;
    height: 15px;
    background: #777777;
    transform: rotate(20deg);
}
.search-header .breadcrumb > li:first-child:after,
.search-header .breadcrumb > li:last-child:after {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    width: 0;
    height: 0;
}
.search-header .breadcrumb > li:first-child {
	padding: 0
}
.ihome {
    width: 17px;
    height: 17px;
    background-position: -3px -3px;
    margin: auto auto;
}
.common-icon {
    background-image: url(../images/ic-sm-home.png);
    background-repeat: no-repeat;
    display: inline-block;
}
a:active, a:hover {
    outline-width: 0;
}

.search-content {
  background: #fff;
  padding: 16px 20px;
  border-radius: 10px;
  box-shadow: var(--shadow-sm);
  max-width: 100%;
  overflow: hidden;
  margin-top: 10px;
}

.search-content .filter {
  display: flex;
  gap: 16px;
  align-items: flex-end;
  flex-wrap: wrap;
}
.filter {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  align-items: flex-end; /* 레이블 기준 정렬 */
  padding: 8px 0;
}
.filter-item {
  display: flex;
  flex-direction: column;
  min-width: 150px;
  position: relative;
  font-size: 12px;
  
}

.filter-label {
  margin-bottom: 4px;
  color: #555;
  font-weight: 500;
  font-size: 12px;
}
.form-box {
	padding: 10px 12px;
    border: 1px solid #d1d5db;
    border-radius: 6px;
    background: #fff;
    font-size: 14px;
    width: 180px;
    min-width: 120px;
}
.form-box:focus {
	border-color: #1ab394;
}

.filter select {
  appearance: none;
  background-image: url(../images/select-arrow.png);
  background-repeat: no-repeat;
  background-position: right 10px center;
  background-size: 10px 6px;
  padding-right: 32px;
}
.btn {
  padding: 10px 18px;
  border-radius: 5px;
  font-weight: 600;
  font-size: 13px;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  border: none;
  transition: var(--transition);
  color: #fff;
}
.btn.blue {
	background:#00b2eb;
}
.btn.green {
  background: #00A88E;
  color: #fff;
}
.btn.gray {
  background: #6F6F6F;
  color: #fff;
}
.btn:hover {
  filter: brightness(1.05);
}
.btn-view {
	color: #00A88E !important;
    background-color: #fff !important;
    border: 1px solid #00A88E;
    padding: 3px 12px;
    height: 30px;
    border-radius: 9px;
}
.btn-view:hover {color:#fff!important;background-color:#00A88E!important; border:1px solid #00A88E;}
.search-btn {
	display: flex;
	margin-top: 25px;
}
.search-btn .summary {
    flex: 1;
    align-content: end;
}
/* Table */
.content-area {
    background: #fff;
    border-top-left-radius: 8px;
    border-top-right-radius: 8px;
    overflow: hidden;
    box-shadow: var(--shadow-sm);
  /*  border: 1px solid #e5e7eb; */
    margin-top: 5px;
    overflow-y: auto;
    position: relative;
    height: 520px;
    border-bottom: 0;
}
.scroll-table {
  width: 100%;
  border-collapse: collapse;
}

.scroll-table thead th {
  position: sticky;
  top: 0;
  background-color: #f9f9f9;
  z-index: 1;
  border-bottom: 1px solid #ccc;
}

.scroll-table th,
.scroll-table td {
  padding: 10px;
  /*border: 1px solid #ddd;*/
  text-align: center;
}
.table {
  width: 100%;
  border-collapse: collapse;
  font-size: 13px;
}
.table thead {
  background: #fafafa;
}
.table th,
.table td {
	text-align: center;
  border-bottom: 1px solid #f0f0f0;
  white-space: nowrap;
}
.table th {
	padding: 14px 10px;
}
.table td {
    padding: 8px 10px;
}
.table th {
  font-weight: 600;
  position: relative;
}
.table tbody tr:hover {
  background: #f9f9fb;
}
.table-status {
  font-size: 12px;
  padding: 4px 10px;
  border-radius: 12px;
  display: inline-block;
}
.status-pending { background: #fff7e6; color: #d47f00; }
.status-approved { background: #e6f7ff; color: #0275d8; }
.status-rejected { background: #ffe6e6; color: #d8000c; }

/* Pagination */
.pagination-container {
    position: relative;
    width: 100%;
    background: #fff;
    padding: 21px;
    overflow: hidden;
    box-shadow: var(--shadow-sm);
   /* border: 1px solid #e5e7eb;*/
    border-bottom-right-radius: 8px;
    border-bottom-left-radius: 8px;
    border-top: 0;
}
.pagination {
    display: flex;
    gap: 6px;
    list-style: none;
    justify-content: center;
    flex-wrap: wrap;
}
.pagination-item {
  width: 36px;
  height: 36px;
  display: flex;
  align-items: center;
  justify-content: center;
  border: 1px solid #d9d9d9;
  border-radius: 4px;
  font-size: 13px;
  cursor: pointer;
  background: #fff;
  transition: var(--transition);
}
.pagination-item.active {
  background: var(--text-primary);
  color: #fff;
  border-color: var(--text-primary);
}
.pagination-item:hover:not(.pagination-item.active) {
  background: #f2f4f7;
}
.pagination-item.double-prev,
.pagination-item.double-next,
.pagination-item.prev,
.pagination-item.next {
  font-size: 16px;
  font-weight: bold;
  background-color: #f9f9f9;
  color: #666;
}

.pagination-item.double-prev:hover,
.pagination-item.double-next:hover,
.pagination-item.prev:hover,
.pagination-item.next:hover {
  background-color: #e0e0e0;
}

.pagination-item.disabled {
  pointer-events: none;
  color: #ccc;
  background-color: #f5f5f5;
  border-color: #eee;
}
.pagination-item img.pagination-icon {
  width: 16px;
  height: 16px;
  object-fit: contain;
}
.pagination-select {
    position: absolute;
    right: 33px;
    top: 21px;
    display: flex;
    align-items: center;
    gap: 6px;
    font-size: 14px;
}

.pagination-select select {
	appearance: none;
    background-image: url(../images/select-arrow.png);
    background-repeat: no-repeat;
    background-position: right 7px center;
    background-size: 10px 6px;
    height: 36px;
    cursor: pointer;
}
.pagination-select .form-box {
	width: 75px;
    min-width: 75px;
}
/* Totals / info */
.summary {
  font-size: 13px;
  color: var(--text-light);
}


.footer {
  background-color: #c1c1c1;
  color: #fff;
  font-size: 12px;
  padding: 20px 0;
}

.footer-container {
  max-width: 1200px;
  margin: 0 auto;
  display: flex;
  align-items: center;
  gap: 20px;
}

.footer-logo img {
  height: 40px;
}

.footer-info p {
  margin: 2px 0;
  line-height: 1.4;
}


/*로그인*/
#login {
    overflow: hidden;
	width: 100%;
    height: 99vh;
    background: url(../images/bg.png) no-repeat center center;
    overflow: hidden;
    background-size: cover;
}
#login h4 {
    font-size: 20px;
    color: #dbdbdb;
    font-weight: 700;
    text-align: center;
}
#login .container {
    max-width: 600px;
    overflow: hidden;
    padding: 65px 20px 100px 20px;
    font-size: 14px;
    font-weight: 400;
    background: #fff;
    box-shadow: var(--shadow-sm);
    border-radius: 22px;
	margin: 7% auto;
}
#login h3 {
    font-size: 46px;
    color: #363636;
    font-weight: 700;
    text-align: center;
}
.login-wrap {
    width: 500px;
    margin: 30px auto;
}

.login-wrap .login-top {
    text-align: center;
    font-size: 18px;
}
.login-wrap .login-top {
    padding: 130px 0 30px 0;
    background: url(../images/ic-login-top.png) no-repeat top center;
    font-weight: 500;
}




.login-wrap .box input {
    padding-left: 55px;
}
.login-wrap .input-id input {
    background: url(../images/icon-id.png) no-repeat left 25px center;
}
.box label {
    font-size: 14px;
    color: #212225;
    font-weight: bold;
    display: block;
    margin-bottom: 8px;
}
.login-wrap .box label {
    display: none;
}



.checkbox, .radio {
    position: relative;
    display: inline-block;
    padding: 0 0 0 25px;
    height: 18px;
    cursor: pointer;
    margin-right: 20px;
    color: #848484;
    line-height: 28px;
}
.checkbox.style1 {
    height: 20px;
    line-height: 20px;
    vertical-align: middle;
}
.login-wrap .checkbox, .join-wrap .checkbox, .agreed-box label {
    padding-left: 0;
}
.login-wrap .checkbox {
    padding-left: 0;
}
.login-wrap .box input {
    padding-left: 55px;
}
.login-wrap .input-id input {
    background: url(../images/icon-id.png) no-repeat left 25px center;
}




.login-wrap .box input::placeholder {font-size:15px; color:#999; letter-spacing: -1px;}
.login-wrap .input-id input {background:url("../images/icon-id.png") no-repeat left 25px center;}
.login-wrap .input-pw input {background:url("../images/icon-pw.png") no-repeat left 25px center;}

.content1 input[type=text], input[type=number], input[type=password], input[type=text], select {
    vertical-align: middle;
    border: 1px solid #cfcfcf;
    padding: 3px 10px;
}
.box input {
    height: 55px;
    border-radius: 10px;
    border: 1px solid #ccc;
    display: inline-block;
    padding: 0 20px;
    font-size: 15px;
    width: 100%;
    letter-spacing: -0.5px;
}
.checkbox.style1 input {
    display: none;
}
input[type='checkbox'] {
    width: 15px;
    height: 15px;
    opacity: 0;
    position: fixed;
    margin: 11px 0;
    cursor: pointer;
}
.checkbox.style1 .icon {
    display: inline-block;
    width: 20px;
    height: 20px;
    position: relative;
    cursor: pointer;
    margin: 0 5px 2px 0;
    vertical-align: middle;
    background-color: #fff;
    border-radius: 5px;
    border: 1px solid #ccc;
}
.checkbox.style1 .text {
    cursor: pointer;
    color: #333333;
    font-weight: 500;
    letter-spacing: -0.5px;
}
.login-wrap .login-btn {
    border-radius: 10px;
    font-weight: 600;
}
.login-wrap .btn.block {
    max-width: 100%;
    height: 55px;
    line-height: 38px;
}

.login-wrap .login-btn {
    font-family: 'Montserrat', 'Noto Sans KR', sans-serif;
    display: inline-block;
    margin-bottom: 0;
    font-size: 18px;
    font-weight: normal;
    text-align: center;
    white-space: nowrap;
    vertical-align: middle;
    cursor: pointer;
    background-image: none;
    background: #22B7D2;
    color: #ffffff;
    border-radius: 10px;
    font-weight: 600;
}



.pop-overlay {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.4);
  z-index: 9999;
  justify-content: center;
  align-items: center;
}

.pop-content {
  background: #fff;
  width: 360px;
  border-radius: 8px;
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.25);
  overflow: hidden;
  font-family: sans-serif;
  animation: popup-fade-in 0.3s ease;
  padding: 30px;
}

.pop-content .btn-close-x {
  position: absolute;
  top: 10px;
  right: 10px;
  background: none;
  border: none;
  font-size: 22px;
  cursor: pointer;
  color: #666;
  transition: color 0.2s;
  top: -12px;
}

.pop-content .btn-close:hover {
  color: #000;
}
.pop-content.small {
	width: 360px;
}
.pop-content.medium {
	width: 600px;
}
.pop-content.large .date-range input,
.pop-content.medium .date-range input {
	width: 48.3%;
}
.pop-content.large {
	width: 900px;
}
.pop-content .filter {
    flex-direction: column;
	align-items: normal;
}
.pop-content.large .filter {
    flex-direction: row;
	overflow: hidden;
}
.pop-content.large .filter-item{
    width:49%;
}
.pop-content .filter select,
.pop-content .filter input{
    width:100%;
}
.pop-header {
  position: relative;	
  font-size: 18px;
  font-weight: bold;
}
.pop-header .tit {
    width: 100%;
    border-bottom: 1px solid #d3d3d3;
    padding-bottom: 20px;
}

.pop-body {
	padding: 20px;
	font-size: 15px;
	color: #333;
	background-color: #fff;
	max-height: 550px;
	overflow: auto;
}
.pop-body p{
    text-align: center;
    color: #333;
    font-size: 15px;
    padding: 15px;
}

.pop-footer {
  display: flex;
  justify-content: end;
  gap: 5px;
  padding: 20px 20px 0;
}

@keyframes pop-fade-in {
  from { opacity: 0; transform: scale(0.95); }
  to { opacity: 1; transform: scale(1); }
}
/*파일업로드*/
.input-btn-wrap,
.file-wrap {
    display: flex;
}
.input-btn-wrap input,
.file-wrap input {
	border-top-right-radius: 0;
    border-bottom-right-radius: 0;
}

.file-label {
  position: absolute;
  font-size: 12px;
  color: gray;
  margin-top: -20px;
  margin-left: 4px;
}

.input-box {
  flex-grow: 1;
  padding: 10px;
  border: 1px solid #ccc;
  border-radius: 6px;
}

input[type="file"].hidden-file {
  display: none;
}
.btn-check,
.file-btn {
	border-top-left-radius: 0;
    border-bottom-left-radius: 0;
}



/*체크박스, 라디오버튼*/


.screen-reader { /* 스크린 리더를 고려해서 체크박스를 화면에서 숨김 */
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    border: 0;
    overflow: hidden;
    margin: -1px;
    clip-path: inset(50%);
}

.label-box {
    position: relative;
}

.check-icon {
    width: 22px;
    height: 22px;
    border-radius: 4px;
    background-color: #fff;
    border: 1px solid gray;
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
}
.check-icon::before {
    content: "";
    position: absolute;
    box-sizing: border-box;
    width: 30%;
    height: 55%;
    left: 50%;
    top: 50%;
}
.radio-box,
.check-box {
    height: 100%;
    display: flex;
    gap: 10px;
    align-items: baseline;
    margin-top: 6px;
}
.radio-box .filter-label,
.check-box .filter-label {
    padding: 0 0 7px 0px;
}
.radio-box label,
.check-box label {
    padding-left: 30px;
    position: relative;
    cursor: pointer;
}
[type="checkbox"]:checked + .label-box .check-icon {
    border-color:  #00b2eb;
    background-color: #00b2eb;
}
[type="checkbox"]:checked + .label-box .check-icon::before {
    transform: translateX(-50%) translateY(-70%) rotateZ(40deg);
    border-right: 2px solid #fff;
    border-bottom: 2px solid #fff;
}

/*라디오버튼*/

.radio-icon {
    width: 22px;
    height: 22px;
    border-radius: 50%;
    background-color: #fff;
    border: 1px solid gray;
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
}
.radio-icon::before {
    content: "";
    position: absolute;
    box-sizing: border-box;
    width: 12px;
    height: 12px;
    left: 4px;
    top: 4px;
    border-radius: 13px;
    background: #fff;
}

[type="radio"]:checked + .label-box .radio-icon {
    border-color:  #00b2eb;
    background-color: #fff;
}
[type="radio"]:checked + .label-box .radio-icon::before {
    border-color: #00b2eb;
	background-color: #00b2eb;
}
[type="radio"]:checked + .label-box label {
    color: #00b2eb;
}
.table .check-box {
    width: 0;
}






.card-container,
.pop-content .card-container {
	display: flex;
	background-color: #ffffff;
	border-radius: 12px;
	box-shadow: 0 4px 20px rgba(0, 0, 0, 0.1);
	overflow: hidden;
    height: 500px;
}
.left-menu,
.container .tree-panel,
.pop-content .tree-panel {
	flex: 0 0 300px;
	padding: 24px;
	background-color: #f9fafb;
	border-right: 1px solid #e2e8f0;
	overflow-y: auto;
}

.container .list-panel,
.pop-content .list-panel {
	flex: 1;
	padding: 24px;
	display: flex;
	flex-direction: column;
	overflow-y: auto;
}
.mapping-container h2,
.left-section h2,
.left-menu h2,
.container .tree-panel h2,
.pop-content .tree-panel h2, .list-panel h2 {
    margin-top: 0;
    font-size: 1rem;
    color: #334155;
    border-bottom: 1px solid #e2e8f0;
    padding-bottom: 12px;
    margin-bottom: 24px;
}
.container .list-items,
.pop-content .list-items {
	list-style: none;
	padding: 0;
	margin: 0;
	flex-grow: 1;
}

.container .list-item,
.pop-content .list-item {
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding: 12px;
	border-bottom: 1px solid #e2e8f0;
}

.container .list-item:last-child,
.pop-content .list-item:last-child {
	border-bottom: none;
}

.pop-content .list-item button {
	background-color: #ef4444;
	color: white;
	border: none;
	padding: 6px 12px;
	border-radius: 6px;
	cursor: pointer;
	font-size: 0.875rem;
	transition: background-color 0.2s ease;
}

.pop-content .list-item button:hover {
	background-color: #dc2626;
}

.pop-content .add-card {
	background-color: #f9fafb;
	padding: 10px;
	border-radius: 12px;
	box-shadow: 0 2px 8px rgba(0, 0, 0, 0.05);
	margin-top: 24px;
}

.pop-content .add-card input[type="text"] {
	width: calc(100% - 100px);
	padding: 10px;
	border: 1px solid #e2e8f0;
	border-radius: 6px;
	margin-right: 10px;
}

.pop-content .add-card button {
	padding: 10px 20px;
	border: none;
	border-radius: 6px;
	background-color: #2563eb;
	color: white;
	cursor: pointer;
	transition: background-color 0.2s ease;
}

.pop-content .add-card button:hover {
	background-color: #1d4ed8;
}


.detail-link {
  color: #00b2eb; 
  text-decoration: none; 
  cursor: pointer;
}

.detail-link:hover {
  color: #2563eb; 
  text-decoration: underline;
}


/* 왼쪽 사용자 그룹 영역 */
.user-group-section {
	background: #f8f9fa;
	border-right: 1px solid #dee2e6;
	padding: 20px;
}

.section-header {
	font-size: 16px;
	font-weight: 700;
	color: #333;
	margin-bottom: 20px;
	padding-bottom: 10px;
	border-bottom: 2px solid #dee2e6;
}
/* 오른쪽 메뉴/기능 권한 영역 */
.permission-section {
	padding: 20px;
}

.permission-group {
	background: #f8f9fa;
	border: 1px solid #dee2e6;
	border-radius: 8px;
	padding: 20px;
	margin-bottom: 20px;
}

.permission-header {
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin-bottom: 20px;
}

.permission-title {
	font-size: 15px;
	font-weight: 600;
	color: #333;
}

.permission-buttons {
	display: flex;
	gap: 8px;
}

.btn {
	padding: 6px 16px;
	border: none;
	border-radius: 4px;
	font-size: 13px;
	font-weight: 600;
	cursor: pointer;
	transition: all 0.3s ease;
}

.btn-primary {
	background: #00b2eb;
	color: white;
}

.btn-secondary {
	background: white;
	color: #495057;
	border: 1px solid #ced4da;
}

.btn-secondary:hover {
	background: #f8f9fa;
}
.permission-row {
	display: grid;
	grid-template-columns: 150px 1fr;
	align-items: center;
	padding: 12px 0;
	border-bottom: 1px solid #dee2e6;
}

.permission-row:last-child {
	border-bottom: none;
}

.permission-label {
	font-size: 14px;
	color: #495057;
	font-weight: 500;
}

.permission-checkboxes {
	display: flex;
	gap: 25px;
	flex-wrap: wrap;
}
/* 스크롤 영역 */
.scrollable {
	max-height: 550px;
	overflow-y: auto;
	padding-right: 10px;
}

.scrollable::-webkit-scrollbar {
	width: 8px;
}

.scrollable::-webkit-scrollbar-track {
	background: #f1f1f1;
	border-radius: 10px;
}

.scrollable::-webkit-scrollbar-thumb {
	background: #888;
	border-radius: 10px;
}

.scrollable::-webkit-scrollbar-thumb:hover {
	background: #555;
}

.overflow-h {
    overflow: hidden;
}
.h-auto {
	height: auto;
}
.content-area .btn-group {
    padding: 0;
    text-align: right;
}
.permission-section .btn-group {
    padding: 15px 17px;
    text-align: right;
}


/*요금제*/
.parking-fee-list .btn-group button {
    width: 100%;
    text-align: center;
    display: block;
}
.parking-fee-list li.selected {
    background-color: #dbeafe;
    color: #1d4ed8;
    border-left: 3px solid #3b82f6;
    font-weight: 600;
}
.parking-fee-list li:hover {
    background-color: #e5edf7;
    color: #2563eb;
}
.parking-fee-list li {
    padding: 0.75rem 1.5rem;
    cursor: pointer;
    font-weight: 500;
    color: #4b5563;
    border-left: 3px solid transparent;
    transition: all 0.2s;
}
.parking-fee-list ul {
    margin-top: 30px;
}

.tab-btn-area {
    margin-bottom: 1.5rem;
	display: flex;
	border-bottom: 1px solid #e5e7eb;
    --tw-border-opacity: 1;
    border-color: rgb(229 231 235 / var(--tw-border-opacity, 1));
}
.tab-btn {
    border-bottom: 2px solid transparent;
    color: #6b7280;
    transition: all 0.2s;
	    padding-left: 1rem;
    padding-right: 1rem;
    padding-top: 0.5rem;
    padding-bottom: 0.5rem;
    font-size: 0.875rem;
    line-height: 1.25rem;
	font-weight: 500;
}
.tab-btn.active {
	border-bottom: 2px solid #3b82f6;
    color: #3b82f6;
    font-weight: 600;
}
.w-700 {
    width: 700px;
}
.w-100p {
    width: 100%;
}
.w-50p {
    width: 49%;
}
.mb-10 {
	margin-bottom: 10px;
}
.note {
	font-size: 12px;
	color: #0066cc;
	margin-top: 8px;
	line-height: 1.5;
}
.tab-content {
	display: none;
}
.tab-content.active {
	display: block;
}
.weekday-btn {
	border-color:#d1d5db;
	background-color: #f3f4f6;
	border-width: 1px;
	padding-left: 1rem;
    padding-right: 1rem;
	padding-top: 0.5rem;
    padding-bottom: 0.5rem;
    font-size: 0.875rem;
    line-height: 1.25rem;
    transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
    transition-duration: 150ms;
	border-radius: 0.375rem;
}
.weekday-btn.active {
    background-color: #3b82f6;
    color: white;
    border-color: #3b82f6;
}
.title-wrap {
    display: flex;
    align-items: center;
    justify-content: space-between;
    align-items: baseline;
}
.title-wrap h4{
	display: flex;
	align-items: center;
	justify-content: space-between;
}
.config-box {
    border-bottom: 1px solid #f3f4f6;
	padding: 10px 0;
}
.config-box h4{
    font-size: 17px;
    font-weight: 500;
    padding: 15px 0;
}
.config-section {
	padding: 12px;
    border-radius: 5px;
    margin-top: 15px;
    background-color: #fff;
    --tw-shadow: 0 4px 6px -1px rgb(0 0 0 / 0.1), 1px 0px 11px -2px rgb(0 0 0 / 0.1);
    --tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);
    box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}
.config-section h1{
    border-bottom: 1px solid #ddd;
    padding: 10px 10px 20px;
    color: #333;
	font-size: 25px;
    margin-bottom: 20px;
}
.deep-blue {
	background:#1d4ed8;
}
.deep-green {
	background:#16a34a;
}
.float-right {
    float: right;
}
.red {
	background-color:#ef4444;
}
/* X 아이콘 삭제 버튼 스타일 */
.icon-delete-btn {
	background-color: transparent;
    color: #9ca3af;
    border: none;
    border-radius: 4px;
    width: 28px;
    height: 28px;
    font-size: 1rem;
    font-weight: 400;
    cursor: pointer;
    transition: all 0.2s;
    line-height: 1;
    padding: 0;
    display: flex;
    justify-content: center;
    align-items: center;
	margin-bottom: 10px;
}
.icon-delete-btn:hover {
	background-color: #fee2e2;
	color: #b91c1c;
	border-color: #ef4444;
}


.mapping-container {
	display: flex;
	gap: 20px;
	align-items: flex-start;
	padding: 20px;
}

.section {
	flex: 1;
	border: 1px solid #ddd;
	border-radius: 4px;
	overflow: hidden;
}

.section-content {
	padding: 15px;
	min-height: 500px;
	max-height: 500px;
	overflow-y: auto;
}

.parking-item {
    padding: 0.75rem 1.5rem;
    cursor: pointer;
    font-weight: 500;
    color: #4b5563;
    border-left: 3px solid transparent;
    transition: all 0.2s;
}

.parking-item:hover {
	background-color: #e9ecef;
	border-color: #dee2e6;
}

.parking-item.selected {
    background-color: #dbeafe;
    color: #1d4ed8;
    border-left: 3px solid #3b82f6;
    font-weight: 600;
}

.parking-name {
	font-weight: 600;
}

.rate-item {
	padding: 12px;
	margin-bottom: 8px;
	background-color: #f8f9fa;
	border: 1px solid #e9ecef;
	border-radius: 4px;
	cursor: pointer;
	transition: all 0.2s;
}

.rate-item:hover {
	background-color: #e9ecef;
	border-color: #dee2e6;
}

.rate-item.selected {
	background-color: #007bff;
	color: white;
	border-color: #0056b3;
}

.rate-name {
	font-weight: 600;
	margin-bottom: 4px;
}

.rate-period {
	font-size: 13px;
	color: #6c757d;
}

.rate-item.selected .rate-period {
	color: #e3f2ff;
}

.controls {
	display: flex;
	flex-direction: column;
	justify-content: center;
	gap: 10px;
	padding-top: 230px;
}

.arrow-btn {
	background-color: #000;
	color: white;
	border: none;
	padding: 12px 20px;
	cursor: pointer;
	font-size: 18px;
	border-radius: 4px;
	transition: background-color 0.2s;
}

.arrow-btn:hover:not(:disabled) {
	background-color: #333;
}

.arrow-btn:disabled {
	background-color: #ccc;
	cursor: not-allowed;
}

.save-btn {
	margin-top: 20px;
	background-color: #000;
	color: white;
	border: none;
	padding: 12px 30px;
	font-size: 16px;
	cursor: pointer;
	border-radius: 4px;
	float: right;
	transition: background-color 0.2s;
}

.save-btn:hover {
	background-color: #333;
}

.empty-message {
	text-align: center;
	color: #6c757d;
	padding: 40px 20px;
}

.mapped-item {
	padding: 12px;
	margin-bottom: 8px;
	background-color: #e7f5ff;
	border: 1px solid #b3d9ff;
	border-radius: 4px;
	cursor: pointer;
	transition: all 0.2s;
}

.mapped-item:hover {
	background-color: #d0ebff;
	border-color: #99ccff;
}

.mapped-item.selected {
	background-color: #007bff;
	color: white;
	border-color: #0056b3;
}

.mapped-item.selected .rate-period {
	color: #e3f2ff;
}


/*승인검토*/
.content-wrapper {
	display: flex;
	gap: 30px;
}

.left-section {
	padding: 24px;
	background-color: #f9fafb;
	border-right: 1px solid #e2e8f0;
	overflow-y: auto;
}


.right-section {
	flex: 1;
	background-color: white;
	border-radius: 8px;
	padding: 30px;
	box-shadow: 0 1px 3px rgba(0,0,0,0.06);
}

.section-title {
	font-size: 18px;
	font-weight: 600;
	margin-bottom: 20px;
	color: #212529;
}

.info-card {
	background-color: white;
	border-radius: 8px;
	overflow: hidden;
	box-shadow: 0 1px 3px rgba(0,0,0,0.06);
}

.info-row {
	display: flex;
	border-bottom: 1px solid #f1f3f5;
}

.info-row:last-child {
	border-bottom: none;
}

.info-label {
	width: 110px;
	padding: 14px 16px;
	background-color: #f8f9fa;
	font-size: 13px;
	color: #495057;
	font-weight: 500;
	border-right: 1px solid #f1f3f5;
}

.info-value {
	flex: 1;
	padding: 14px 16px;
	font-size: 14px;
	color: #212529;
}

.status-badge {
	display: inline-flex;
	align-items: center;
	padding: 6px 14px;
	background-color: #4361ee;
	color: white;
	border-radius: 20px;
	font-size: 13px;
	font-weight: 600;
	margin-bottom: 25px;
}

.file-section {
	background-color: #f8f9fa;
	border-radius: 8px;
	padding: 24px;
	margin-bottom: 20px;
}

.file-header {
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin-bottom: 16px;
}

.file-header label {
	font-size: 14px;
	font-weight: 600;
	color: #212529;
}

.btn-download-all {
	padding: 7px 16px;
	background-color: white;
	color: #495057;
	border: 1px solid #dee2e6;
	border-radius: 4px;
	cursor: pointer;
	font-size: 13px;
	font-weight: 500;
	transition: all 0.2s;
}

.btn-download-all:hover {
	background-color: #f8f9fa;
	border-color: #adb5bd;
}

.file-list {
	background-color: white;
	border: 1px solid #dee2e6;
	border-radius: 6px;
	overflow: hidden;
}

.file-item {
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding: 14px 16px;
	border-bottom: 1px solid #f1f3f5;
}

.file-item:last-child {
	border-bottom: none;
}

.file-name {
	font-size: 14px;
	color: #212529;
}

.file-actions {
	display: flex;
	gap: 8px;
}

.btn-file {
	padding: 6px 14px;
	border: 1px solid #dee2e6;
	background-color: white;
	border-radius: 4px;
	cursor: pointer;
	font-size: 12px;
	color: #495057;
	transition: all 0.2s;
}

.btn-file:hover {
	background-color: #f8f9fa;
	border-color: #adb5bd;
}

.btn-file.btn-download {
	background-color: #212529;
	color: white;
	border-color: #212529;
}

.btn-file.btn-download:hover {
	background-color: #343a40;
}

.action-buttons {
	display: flex;
	justify-content: flex-end;
	gap: 10px;
	margin-top: 20px;
}

.btn-action {
	padding: 11px 28px;
	border: none;
	border-radius: 6px;
	cursor: pointer;
	font-size: 14px;
	font-weight: 600;
	transition: all 0.2s;
}

.btn-approve {
	background-color: #4361ee;
	color: white;
}

.btn-approve:hover {
	background-color: #3651d4;
}

.btn-reject {
	background-color: white;
	color: #495057;
	border: 1px solid #dee2e6;
}

.btn-reject:hover {
	background-color: #f8f9fa;
}

.reason-section {
	margin-top: 24px;
	padding: 24px;
	background-color: #f8f9fa;
	border-radius: 8px;
	display: none;
}

.reason-section.show {
	display: block;
}

.reason-section label {
	display: block;
	font-size: 14px;
	font-weight: 600;
	margin-bottom: 10px;
	color: #212529;
}

.reason-textarea {
	width: 100%;
	min-height: 130px;
	padding: 12px;
	border: 1px solid #dee2e6;
	border-radius: 6px;
	font-family: 'Malgun Gothic', sans-serif;
	font-size: 14px;
	resize: vertical;
	transition: border-color 0.2s;
}

.reason-textarea:focus {
	outline: none;
	border-color: #4361ee;
}

.reason-buttons {
	display: flex;
	justify-content: flex-end;
	gap: 10px;
	margin-top: 16px;
}

.btn-cancel {
	background-color: white;
	color: #495057;
	border: 1px solid #dee2e6;
}

.btn-cancel:hover {
	background-color: #f8f9fa;
}

.btn-submit-reject {
	background-color: #dc3545;
	color: white;
}

.btn-submit-reject:hover {
	background-color: #c82333;
}

.navigation {
	display: flex;
	justify-content: center;
	gap: 10px;
	margin-top: 40px;
	padding-top: 30px;
	border-top: 1px solid #e9ecef;
}

.btn-nav {
	padding: 10px 30px;
	border-radius: 6px;
	cursor: pointer;
	font-size: 14px;
	font-weight: 500;
	transition: all 0.2s;
}

.btn-prev, .btn-next {
	background-color: white;
	color: #495057;
	border: 1px solid #dee2e6;
}

.btn-prev:hover, .btn-next:hover {
	background-color: #f8f9fa;
}

.help-text {
	font-size: 12px;
	color: #6c757d;
	margin-top: 6px;
}

.parking-fee-rules-slot {
	display: none;
}
.parking-fee-rules-slot.active {
	display: block;
}