body {
	display: flex;
	justify-content: flex-start;
	vertical-align: top;
	align-items: flex-start;
	height: 800px;
	width: 100%;
	margin: 0 auto;
	background-color: #000;
	color: #fff;
}

h1 {
	margin-left: auto;
	margin-right: auto;
	text-align: center;
	color: #fff;
}

/* 달력 */
.calendarBox {
	margin-top: 40px;
	width:100%;
	color: #fff;
}

.month {
	position: relative;
	margin-left: 10px;
	margin-top: 20px;
	margin-bottom: 20px;
	width: 100%;
	text-align: center;
}

.month h2 {
	font-size: 20px;
	font-weight: normal;
	margin: 0;
	display: inline;
}

.month a {
	color: inherit;
	text-decoration: none;
}

.month a:hover {
	color: rgba(255, 255, 255, 0.3);
}

.calendarBox .calendar .tblcalendar, .calendarBox .calendar .tbltotal {
	border-collapse: collapse;
	border: none;
	width: 100%;
}

.calendarBox .calendar .tblcalendar th, .calendarBox .calendar .tbltotal th {
	border: none;
	height: 30px;
	padding: 8px;
	font-weight: normal;
	text-align: center;
}

.calendarBox .calendar .tbltotal td {
	width:25%;
	border: none;
	height: 30px;
	padding: 8px;
	text-align: center;
	vertical-align: middle;
}

.calendarBox .calendar .tblcalendar td {
	border-radius: 10%;
	width:14%;
	border: none;
	height: 70px;
	padding: 8px;
	text-align: center;
	vertical-align: top;
}
.calendarBox .calendar .tblcalendar td:hover {
	border: none;
	height: 70px;
	padding: 8px;
	text-align: center;
	background-color: rgba(255,255,255, 0.3);
}

#dayModal, .addbudgetModal, .editbudgetModal {
  display: none;
  position: fixed;
  z-index: 1000;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(255,255,255,0.3);
}

.modal-content {
  background-color: #000;
  margin: 15% auto;
  padding: 20px 30px;
  border-radius: 10px;
  width: 400px;
  box-shadow: 0 5px 15px rgba(0,0,0,0.2);
  text-align: center;
  margin-bottom: 0;
  display: flex;
  flex-direction:column;
}
.icon-row {
    display: flex;      /* 아이콘 가로 정렬 */
    gap: 10px;
}

.date-row {
    display: flex;      /* Date + 선택 날짜 한 줄 */
    gap: 5px;
    font-size: 16px;
    font-weight: bold;
    align-items: center; /* 세로 중앙 정렬 */
	justify-content: center;
	width:100%
}
.close, .plus {
  color: #aaa;
  font-size: 24px;
  font-weight: bold;
  cursor: pointer;
}

.close:hover, .plus:hover {
  color: #fff;
}

.modal-content h4 {
}
.modal-content p {
}

.modal-detail {
  background-color: #000;
  margin: 15% auto;
  margin-top: 0;
  padding: 20px 30px;
  border-radius: 10px;
  width: 400px;
  box-shadow: 0 5px 15px rgba(0,0,0,0.2);
  text-align: center;
}

.calendarBox #dayModal .modal-detail table {
	border-collapse: collapse;
	border: none;
	width: 100%;
}

.calendarBox #dayModal .modal-detail thead th {
	border: none;
	height: 30px;
	padding: 4px;
	font-weight: normal;
	text-align: center;
}

.calendarBox #dayModal .modal-detail td {
	border-radius: 10%;
	border: none;
	padding: 4px;
	text-align: center;
	vertical-align: top;
	text-overflow: ellipsis;
}
.calendarBox #dayModal .modal-detail tbody tr:hover {
	border: none;
	padding: 4px;
	text-align: center;
	background-color: rgba(255,255,255, 0.3);
}

.day-data .m-income {
	color: #5050ff;
}

.day-data .m-expense {
	color: #ff5050;
}

.day-data .m-total {
	color: #ffff50;
}
.navbar .btn-outline-light {
    min-width: 90px;
}