/* ±âº» ½ºÅ¸ÀÏ ÃÊ±âÈ­ */
:root {
  --bs-body-font-size: 0.8rem; /* ±âº» ÆùÆ® Å©±â Á¶Á¤ (±âº»: 1rem) */
}

* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
    font-family: 'Arial', sans-serif;
}

/* ÀüÃ¼ ÆäÀÌÁö ½ºÅ¸ÀÏ */
body {
    background-color: #ffffff;
    color: #333;
    line-height: 1.6;
}

a {color:#555555}
a:link {text-decoration: none}
a:visited {text-decoration: none}
a:hover {text-decoration: none}
a:active {text-decoration: none}

/* ±âº» ·¹ÀÌ¾Æ¿ô ÄÁÅ×ÀÌ³Ê */
.container {
    max-width: 100%;
    margin: 0 auto;
    padding-left: 20px;
    padding-bottom: 20px;
}

@media (max-width: 768px) {
    .container {
        width: 100%;
        padding-left: 3px;
        padding-right: 3px;
    }
}


/* Çì´õ ½ºÅ¸ÀÏ */
header {
    #background: #007bff;
    background: #cccccc;
    color: white;
    padding: 15px 0;
    text-align: center;
    font-size: 1.5rem;
    font-weight: bold;
}

/* ³×ºñ°ÔÀÌ¼Ç ½ºÅ¸ÀÏ */
nav {
    display: flex;
    justify-content: center;
    background: #0056b3;
    padding: 10px;
}

nav a {
    color: white;
    text-decoration: none;
    padding: 10px 15px;
    font-weight: bold;
    transition: 0.3s;
}

nav a:hover {
    background: rgba(255, 255, 255, 0.2);
    border-radius: 5px;
}

/* ¸ÞÀÎ ÄÜÅÙÃ÷ ½ºÅ¸ÀÏ */
main {
    padding: 40px 20px;
    text-align: center;
}

.btn-sm {
	max-width:50px;
	padding:3px;
	font-size:1.0em;
}

.btn-md {
	max-width:60px;
	padding:5px;
	font-size:1.0em;
}

/* ¹öÆ° ½ºÅ¸ÀÏ */
.btn_s {
    display: inline-block;
    background: #007bff;
    color: white;
    padding: 12px 20px;
    margin-top: 10px;
    border-radius: 5px;
    text-decoration: none;
    font-weight: bold;
    transition: 0.3s;
}

.btn:hover {
#    background: #0056b3;
}

/* Ä«µå ½ºÅ¸ÀÏ */
.card {
    background: white;
    padding: 20px;
    margin: 20px 0;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
    border-radius: 8px;
    text-align: center;
}

/* ÇªÅÍ ½ºÅ¸ÀÏ */
footer {
    color: #000000;
    text-align: center;
    padding: 15px 0;
    margin-top: 30px;
}

/* ¹ÝÀÀÇü µðÀÚÀÎ */
@media (max-width: 768px) {
    nav {
        flex-direction: column;
        text-align: center;
    }

    nav a {
        display: block;
        padding: 10px;
    }
}

.login-box {
	background-color: #cccccc;
    height: 100vh;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    position: relative;
}

.login-container {
    max-width: 360px;
    width: 90%;
    padding: 2rem;
    background: rgba(255, 255, 255, 0.9); /* ¹ÝÅõ¸í */
    border-radius: 12px;
    box-shadow: 0px 4px 10px rgba(0, 0, 0, 0.1);
    text-align: center;
    z-index: 1;
}

.login-title {
    font-size: 1.5rem;
    font-weight: bold;
    text-align: center;
    margin-bottom: 1.5rem;
}

.login-btn {
    width: 100%;
    padding: 12px;
    font-size: 1rem;
}

.navbar-custom {
	padding:5px;
}

.navbar-brand {
    font-weight: bold;
    color: white;
}

.navbar-brand img {
	width:45px;
    border-radius: 30px;
}

.navbar-brand:hover {
    color: #ddd;
}

.nav-link {
    color: white;
    font-weight: bold;
    margin-right: 15px;
}
.nav-link:hover {
    color: #ddd;
}

.nav-sub-link {
    color: #000;
 }
.nav-sub-link:hover {
    color: green;
}
.sidebar {
	background-color: #f8f9fa;
    padding: 5px;
    height: 100vh;
    position: fixed;
    width: 120px;
	font-size:0.9em;
}
.content {
    margin-left: 140px;
    padding: 10px;
}

.list-group-item {
    border-radius: 0px;
	padding:5px;
	text-align:center;
}

.navbar-nav {
padding:2px;
}

.sub-menu {
background-color:#eeeeee;
padding:10px;
}

.sub-act-menu {
background-color:#ffffff;
padding:0px;
border-bottom: 1px solid #ddd;
padding-bottom:10px;
}

.sub-link {
	font-size:1.0em;
}

.sub-link:hover {
    color: green;
}

/* Å×ÀÌºí ½ºÅ¸ÀÏ */
.table-editable {
    width: 100%;
    border-collapse: collapse;
}
.table-editable th, .table-editable td {
    border: 1px solid #ddd;
    padding: 5px;
    text-align: center;
    vertical-align: middle;
}
.table-editable th {
    background-color: #f8f9fa;
}
.editable {
    cursor: pointer;
    background-color: #fff;
}
.editable:hover {
    background-color: #e9ecef;
}

    /* ¼¼·ÃµÈ °Ë»ö ÀÎÅÍÆäÀÌ½º¸¦ À§ÇÑ ½ºÅ¸ÀÏ */
    .search-container {
      margin-bottom:10px;
    }
    .input-group .form-select,
    .input-group .form-control {
		  font-size:1.0em;
      border-radius: 0.375rem;
    }
    .input-group .btn {
	  font-size:1.0em;	
      border-radius: 0.375rem;
    }

    .table-container {		
        display: flex;
		margin-top:5px;
        gap: 10px; /* Å×ÀÌºí °£ ¿©¹é */
    }
    .table-wrapper {
        width: 25%; /* µÎ °³ÀÇ Å×ÀÌºíÀ» ³ª¶õÈ÷ ¹èÄ¡ */
    }
    .table {
        width: 100%;
    }

.noteditalbe {
	font-size:1.1em;
}


.touchable.active {
  background-color: #339900 !important;
  color:#fff;
  transition: background-color 0.1s ease;
}

#calendarLayer {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0,0,0,0.5);
    display: none; /* ±âº»Àº ¼û±è */
    z-index: 1000;
    overflow-y: auto; /* ÄÁÅÙÃ÷°¡ ¸¹Àº °æ¿ì ½ºÅ©·Ñ »ý¼º */
}

.calendar-overlay {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 100%;
}

.calendar-container {
    background: #fff;
    padding: 10px;
    border-radius: 8px;
    box-shadow: 0 4px 8px rgba(0,0,0,0.2);
	max-width: 100%;
    width: auto;
    margin: 20px; /* È­¸é °¡ÀåÀÚ¸®¿ÍÀÇ ¿©¹é */
    position: relative;
}

.close-calendar-btn {
    position: absolute;
    top: 0px;
    right: 0px;
}

.modal-backdrop.show {
    background-color: rgba(0, 0, 0, 0.5) !important; /* 0.8 ´ë½Å ¿øÇÏ´Â Åõ¸íµµ °ª »ç¿ë */
}


.auction-input {
width:100%;
padding:6px;;
font-size:1.2em;
font-weight:bold;
border: 1px solid #ddd;
color:#000
}

.auction-input-c-1 {
width:100%;
padding:6px;;
font-size:1.2em;
font-weight:bold;
border: 1px solid #ddd;
background-color:#fff;
color:green;
}

.auction-input-c-2 {
width:100%;
padding:6px;;
font-size:1.1em;
font-weight:bold;
border: 1px solid #ddd;
background-color:#fff;
color:green;
}

.auction-input-c-3 {
width:100%;
padding:6px;;
font-size:1.1em;
border: 1px solid #ddd;
background-color:#fff;
}


/* table »óÇ°¸í ¿­ °íÁ¤ */
th.title-fix, td.name-fix {
  position: sticky;
  left: 0;
  z-index: 2;
  box-shadow: 2px 0 5px rgba(0,0,0,0.1);
}

.menu a.active {
    color: #fff !important;
    background-color: #555;
    padding: 5px 10px;
    border-radius: 4px;
    text-decoration: none;
}
.menu a {
    transition: background-color 0.3s, color 0.3s;
}
.btn:active {
    transform: scale(0.93); /* »ìÂ¦ ´­¸®´Â È¿°ú */
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.5); /* ±×¸²ÀÚ ÀÛ¾ÆÁü */
}

	tr.active > td {
	    background-color: #ffcc66 !important;
	}

	.table-responsive tbody tr:hover td {
	    background-color: #ffffcc !important;
	}

.top-active {
    color: #fff !important;
    background-color: green;


}

#btnAdd {
      display: none;
      color: #000;
	  padding:4px;
	       border-radius: 8px; 
      cursor: pointer;
      font-size: 1.0em;
    }
    #iosPrompt {
      display: none;
      position: fixed;
      bottom: 20px; left: 20px; right: 20px;
      background: rgba(0,0,0,0.8);
      color: #fff;
      padding: 16px;
      border-radius: 8px;
      text-align: center;
      line-height: 1.5;
    }
    #iosPrompt button {
      margin-top: 8px;
      padding: 6px 12px;
      background: #fff;
      color: #000;
      border: none;
      border-radius: 4px;
      cursor: pointer;
    }