@charset "utf-8";
@import url("https://cdn.jsdelivr.net/gh/orioncactus/pretendard@v1.3.9/dist/web/static/pretendard.min.css");
@import url("https://fonts.googleapis.com/css2?family=Outfit:wght@400;500;600;700;800&family=Inter:wght@400;500;600;700&display=swap");

/* ------------------------------------ CSS reset Start ------------------------------------ */
:root{
    --bg-color: #111;
    --text-color: #fff;
}
[data-theme="white"] {
  --bg-color: #fff;
  --text-color: #333;
}
/*
[data-theme="white"] A:link    {color:#333;}
[data-theme="white"] A:visited {color:#333;}
[data-theme="white"] A:active  {color:#333;}
[data-theme="white"] A:hover   {color:#666;}
*/
* {
    margin:0; padding:0; box-sizing:border-box;    
    font-family: 'Pretendard', system-ui, -apple-system, Segoe UI, Roboto, Helvetica, Arial, sans-serif;    
}
body,header,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,form,fieldset,input,textarea,p,blockquote,th,td {margin:0; padding:0;}
html {
	margin:0;
	padding:0;
	overflow-y: scroll; 	
	width:100%;
	height:100%;    
}
body {
	width:100%;
	height:100%;
    margin:0 auto;
    font-size:14px; 
    font-weight:400;
    letter-spacing:-0.03em;
	color:#333;
}
table {
	border-collapse:collapse;
	border-spacing:0;
	padding:0;
	margin:0;
	width:100%;
}
fieldset,img {border:0;}
address,caption,cite,code,dfn,th,var {font-style:normal; font-weight:normal;}
ol,ul {list-style:none;}
caption,th {text-align:left;}
h1,h2,h3,h4,h5,h6 {
	font-size:100%;
	font-weight:normal;
	-webkit-margin-before: 0;
    -webkit-margin-after: 0;
    -webkit-margin-start: 0px;
    -webkit-margin-end: 0px;
}
q:before,q:after {content:'';}
abbr,acronym { border:0;}
img {outline:none; border:none; max-width:100%;
	transition:all .3s;
	-webkit-transition:all .3s;
	-moz-transition:all .3s;
	-ms-transition:all .3s;
	-o-transition:all .3s;
}
/* --------------------------------------------------------------------------------------- */

/* ------------------------------ LOW VER. IE SUPPORT HTML5 ------------------------------ */
article, aside, hgroup, header, footer, figure, figcaption, section,time, mark, canvas, video, audio, details, summary {display:block;}
th {text-align:center;}
A {
	text-decoration:none;
	transition:all .3s;
	-webkit-transition:all .3s; 
	-moz-transition:all .3s;
	-ms-transition:all .3s;
	-o-transition:all .3s;
}
/*
A:link    {color:inherit; text-decoration:none}
A:visited {color:inherit; text-decoration:none}
A:active  {color:inherit; text-decoration:none}
A:hover   {color:inherit; text-decoration:none}
*/
/* --------------------------------------------------------------------------------------- */

/* --------------------------------------- 공통css --------------------------------------- */
input[type="text"],input[type="password"],input[type="email"],input[type="tel"],input[type="date"],input[type="number"],input[type="url"]  {
	font-size:14px;
	height:40px;
	line-height:40px;
	border-radius:3px;
	-webkit-border-radius:3px;
	-moz-border-radius:3px;
	border:1px solid #eee;
	padding:2px 15px;
	box-sizing:border-box;
	transition:all .3s;
	-webkit-transition:all .3s;
	-moz-transition:all .3s;
	-ms-transition:all .3s;
	-o-transition:all .3s;
}
input[type="text"]:hover, input[type="text"]:focus, input[type="password"]:hover, input[type="password"]:focus, input[type="email"]:hover, input[type="email"]:focus, input[type="tel"]:hover, input[type="tel"]:focus, input[type="date"]:hover, input[type="date"]:focus, input[type="number"]:focus,input[type="url"]:focus {
	outline:none;
	border:1px solid #ccc
}
input[type="text"]:focus::placeholder, input[type="password"]:focus::placeholder, input[type="email"]:focus::placeholder, input[type="tel"]:focus::placeholder, input[type="date"]:focus::placeholder, input[type="number"]:focus::placeholder, input[type="url"]:focus::placeholder {
	color:#aaa;
}
input[type="text"]:focus::-ms-input-placeholder, input[type="password"]:focus::-ms-input-placeholder, input[type="email"]:focus::-ms-input-placeholder, input[type="tel"]:focus::-ms-input-placeholder, input[type="date"]:focus::-ms-input-placeholder, input[type="number"]:focus::-ms-input-placeholder, input[type="url"]:focus::-ms-input-placeholder {
	color:#aaa;
}
input[type="radio"] {
	width:16px;
	height:16px;
	border-radius:20px;
	border:1px solid #ccc;
	box-sizing:border-box;
	margin:-2px 3px 0 0;
	vertical-align:middle;
	cursor: pointer;
}
input[type="checkbox"] {
	width:16px;
	height:16px;
	border-radius:5px;
	border:1px solid #ccc;
	box-sizing:border-box;
	margin:0 3px 0 0;
	vertical-align:middle;
	cursor: pointer;
}
input[type="file"] {
	border:1px solid #ccc;
	padding:10px 10px;
	cursor:pointer;
}
textarea {
	font-size:14px;
	width:100%;
	height:100px;
	overflow-y:auto;
	resize:none;
	line-height:20px;
	border-radius:3px;
	-webkit-border-radius:3px;
	-moz-border-radius:3px;
	border:1px solid #ccc;
	box-sizing:border-box;
	padding:15px;
	font-family:'Noto Sans KR';
	transition:all .3s;
	-webkit-transition:all .3s;
	-moz-transition:all .3s;
	-ms-transition:all .3s;
	-o-transition:all .3s;
}
textarea:hover, textarea:focus {
	outline:none;
	border:1px solid #999;
}
textarea::placeholder {
	color:#aaa;
}
textarea:focus::placeholder {
	color:#aaa;
}
textarea:focus::-ms-input-placeholder {
	color:#aaa;
}
select  {
	border:1px solid #eee;
	padding:5px 8px;
	box-sizing:border-box;
	font-size:14px;
	height:40px;
	line-height:40px;
	border-radius:3px;
	-webkit-border-radius:3px;
	-moz-border-radius:3px;
}
select:hover, select:focus {
	outline:none;
	border:1px solid #ccc;
}
button {
	outline:none; background:none; border:0; cursor:pointer;
	transition:all .3s;
	-webkit-transition:all .3s;
	-moz-transition:all .3s;
	-ms-transition:all .3s;
	-o-transition:all .3s;
	color:#666;
}
button:hover {
	outline:none;
	color:#999;
}
/* --------------------------------------------------------------------------------------- */

/* -------------------------------------- 공통css2 -------------------------------------- */

/* ----- 넓이 설정 ----- */
.w_10  {width:10% !important;}
.w_15  {width:15% !important;}
.w_20  {width:20% !important;}
.w_25  {width:25% !important;}
.w_30  {width:30% !important;}
.w_35  {width:35% !important;}
.w_40  {width:40% !important;}
.w_45  {width:45% !important;}
.w_50  {width:50% !important;}
.w_60  {width:60% !important;}
.w_70  {width:70% !important;}
.w_80  {width:80% !important;}
.w_90  {width:90% !important;}
.w_100 {width:100%;}

/* ----- 알림 배지 ----- */
.notif-badge {
  position: absolute;
  top: -5px;
  right: -5px;
  background: #ff4444;
  color: #fff;
  border-radius: 10px;
  padding: 2px 6px;
  font-size: 14px;
  font-weight: 600;
  min-width: 18px;
  text-align: center;
}

/* ----- 알림 아이템 스타일 ----- */
.nm-item.unread {
  background-color: rgba(255, 200, 0, 0.1);
}
.nm-item.notif-success {
  border-left: 3px solid #4caf50;
}
.nm-item.notif-error {
  border-left: 3px solid #f44336;
}
.nm-unread-dot {
  position: absolute;
  top: 5px;
  left: 5px;
  width: 8px;
  height: 8px;
  background: #ff4444;
  border-radius: 50%;
}
.nm-delete {
  padding: 5px 10px;
  font-size: 18px;
  color: #999;
  cursor: pointer;
}
.nm-delete:hover {
  color: #ff4444;
}
.nm-empty, .nm-loading {
  padding: 40px 20px;
  text-align: center;
  color: #999;
}
.nm-body {
  cursor: pointer;
}
.nm-body:hover {
  opacity: 0.8;
}
.nm-body .body {
  white-space: pre-wrap;
  word-break: break-word;
}