/*! jQuery UI - v1.14.1 - 2025-12-11
* https://jqueryui.com
* Includes: draggable.css, sortable.css, core.css, datepicker.css, theme.css
* To view and modify this theme, visit https://jqueryui.com/themeroller/?ffDefault=Arial%2CHelvetica%2Csans-serif&fsDefault=1em&fwDefault=normal&cornerRadius=3px&bgColorHeader=e9e9e9&bgTextureHeader=flat&borderColorHeader=dddddd&fcHeader=333333&iconColorHeader=444444&bgColorContent=ffffff&bgTextureContent=flat&borderColorContent=dddddd&fcContent=333333&iconColorContent=444444&bgColorDefault=f6f6f6&bgTextureDefault=flat&borderColorDefault=c5c5c5&fcDefault=454545&iconColorDefault=777777&bgColorHover=ededed&bgTextureHover=flat&borderColorHover=cccccc&fcHover=2b2b2b&iconColorHover=555555&bgColorActive=007fff&bgTextureActive=flat&borderColorActive=003eff&fcActive=ffffff&iconColorActive=ffffff&bgColorHighlight=fffa90&bgTextureHighlight=flat&borderColorHighlight=dad55e&fcHighlight=777620&iconColorHighlight=777620&bgColorError=fddfdf&bgTextureError=flat&borderColorError=f1a899&fcError=5f3f3f&iconColorError=cc0000&bgColorOverlay=aaaaaa&bgTextureOverlay=flat&bgImgOpacityOverlay=0&opacityOverlay=30&bgColorShadow=666666&bgTextureShadow=flat&bgImgOpacityShadow=0&opacityShadow=30&thicknessShadow=5px&offsetTopShadow=0px&offsetLeftShadow=0px&cornerRadiusShadow=8px
* Copyright OpenJS Foundation and other contributors; Licensed MIT */

.ui-draggable-handle {
  touch-action: none;
}
.ui-sortable-handle {
  touch-action: none;
}
.ui-helper-hidden {
  display: none;
}
.ui-helper-hidden-accessible {
  border: 0;
  clip: rect(0 0 0 0);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  width: 1px;
}
.ui-helper-reset {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  line-height: 1.3;
  text-decoration: none;
  font-size: 100%;
  list-style: none;
}
.ui-helper-clearfix:before,
.ui-helper-clearfix:after {
  content: "";
  display: table;
  border-collapse: collapse;
}
.ui-helper-clearfix:after {
  clear: both;
}
.ui-helper-zfix {
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  position: absolute;
  opacity: 0;
}
.ui-front {
  z-index: 100;
}
.ui-state-disabled {
  cursor: default !important;
  pointer-events: none;
}
.ui-icon {
  display: inline-block;
  vertical-align: middle;
  margin-top: -0.25em;
  position: relative;
  text-indent: -99999px;
  overflow: hidden;
  background-repeat: no-repeat;
}
.ui-widget-icon-block {
  left: 50%;
  margin-left: -8px;
  display: block;
}

/* Overlays */
.ui-widget-overlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: #aaaaaa;
  opacity: 0.3;
}
.ui-menu {
  list-style: none;
  padding: 0;
  margin: 0;
  display: block;
  outline: 0;
}
.ui-menu .ui-menu {
  position: absolute;
}
.ui-menu .ui-menu-item {
  margin: 0;
  cursor: pointer;
}
.ui-menu .ui-menu-item-wrapper {
  position: relative;
  padding: 3px 1em 3px 0.4em;
}
.ui-menu .ui-menu-divider {
  margin: 5px 0;
  height: 0;
  font-size: 0;
  line-height: 0;
  border-width: 1px 0 0 0;
}
.ui-menu .ui-state-focus,
.ui-menu .ui-state-active {
  margin: -1px;
}

/* icon support */
.ui-menu-icons {
  position: relative;
}
.ui-menu-icons .ui-menu-item-wrapper {
  padding-left: 2em;
}

/* left-aligned */
.ui-menu .ui-icon {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0.2em;
  margin: auto 0;
}

/* right-aligned */
.ui-menu .ui-menu-icon {
  left: auto;
  right: 0;
}
/*``------------------------------------------------------------------------------------------------ */
.ui-widget {
  font-family: Arial, Helvetica, sans-serif;
  font-size: 1em;
}
.ui-widget .ui-widget {
  font-size: 1em;
}
.ui-widget input,
.ui-widget select,
.ui-widget textarea,
.ui-widget button {
  font-family: Arial, Helvetica, sans-serif;
  font-size: 1em;
}
.ui-widget.ui-widget-content {
  border: 1px solid #c5c5c5;
}
.ui-widget-content {
  border: 1px solid #ddd;
  background: #fff;
  color: #333;
}
.ui-widget-content a {
  color: #333;
}
.ui-widget-header {
  border: 1px solid #ddd;
  background: #e9e9e9;
  color: #333;
  font-weight: bold;
}
.ui-widget-header a {
  color: #333;
}
.ui-state-default,
.ui-widget-content .ui-state-default,
.ui-widget-header .ui-state-default,
.ui-button,
html .ui-button.ui-state-disabled:hover,
html .ui-button.ui-state-disabled:active {
  border: 1px solid #c5c5c5;
  background: #f6f6f6;
  font-weight: normal;
  color: #454545;
}
.ui-state-default a,
.ui-state-default a:link,
.ui-state-default a:visited,
a.ui-button,
a:link.ui-button,
a:visited.ui-button,
.ui-button {
  color: #454545;
  text-decoration: none;
}
.ui-state-hover,
.ui-widget-content .ui-state-hover,
.ui-widget-header .ui-state-hover,
.ui-state-focus,
.ui-widget-content .ui-state-focus,
.ui-widget-header .ui-state-focus,
.ui-button:hover,
.ui-button:focus {
  border: 1px solid #ccc;
  background: #ededed;
  font-weight: normal;
  color: #2b2b2b;
}
.ui-state-hover a,
.ui-state-hover a:hover,
.ui-state-hover a:link,
.ui-state-hover a:visited,
.ui-state-focus a,
.ui-state-focus a:hover,
.ui-state-focus a:link,
.ui-state-focus a:visited,
a.ui-button:hover,
a.ui-button:focus {
  color: #2b2b2b;
  text-decoration: none;
}
.ui-visual-focus {
  box-shadow: 0 0 3px 1px rgb(94, 158, 214);
}
.ui-state-active,
.ui-widget-content .ui-state-active,
.ui-widget-header .ui-state-active,
a.ui-button:active,
.ui-button:active,
.ui-button.ui-state-active:hover {
  border: 1px solid #003eff;
  background: #007fff;
  font-weight: normal;
  color: #fff;
}
.ui-icon-background,
.ui-state-active .ui-icon-background {
  border: #003eff;
  background-color: #fff;
}
.ui-state-active a,
.ui-state-active a:link,
.ui-state-active a:visited {
  color: #fff;
  text-decoration: none;
}
.ui-state-highlight,
.ui-widget-content .ui-state-highlight,
.ui-widget-header .ui-state-highlight {
  border: 1px solid #dad55e;
  background: #fffa90;
  color: #777620;
}
.ui-state-checked {
  border: 1px solid #dad55e;
  background: #fffa90;
}
.ui-state-highlight a,
.ui-widget-content .ui-state-highlight a,
.ui-widget-header .ui-state-highlight a {
  color: #777620;
}
.ui-state-error,
.ui-widget-content .ui-state-error,
.ui-widget-header .ui-state-error {
  border: 1px solid #f1a899;
  background: #fddfdf;
  color: #5f3f3f;
}
.ui-state-error a,
.ui-widget-content .ui-state-error a,
.ui-widget-header .ui-state-error a {
  color: #5f3f3f;
}
.ui-state-error-text,
.ui-widget-content .ui-state-error-text,
.ui-widget-header .ui-state-error-text {
  color: #5f3f3f;
}
.ui-priority-primary,
.ui-widget-content .ui-priority-primary,
.ui-widget-header .ui-priority-primary {
  font-weight: bold;
}
.ui-priority-secondary,
.ui-widget-content .ui-priority-secondary,
.ui-widget-header .ui-priority-secondary {
  opacity: 0.7;
  font-weight: normal;
}
.ui-state-disabled,
.ui-widget-content .ui-state-disabled,
.ui-widget-header .ui-state-disabled {
  opacity: 0.35;
  background-image: none;
}
.ui-icon {
  width: 16px;
  height: 16px;
}
.ui-icon,
.ui-widget-content .ui-icon {
  background-image: none;
}
.ui-widget-header .ui-icon {
  background-image: none;
}
.ui-state-hover .ui-icon,
.ui-state-focus .ui-icon,
.ui-button:hover .ui-icon,
.ui-button:focus .ui-icon {
  background-image: none;
}
.ui-state-active .ui-icon,
.ui-button:active .ui-icon {
  background-image: none;
}
.ui-state-highlight .ui-icon,
.ui-button .ui-state-highlight.ui-icon {
  background-image: none;
}
.ui-state-error .ui-icon,
.ui-state-error-text .ui-icon {
  background-image: none;
}
.ui-button .ui-icon {
  background-image: none;
}
.ui-icon-blank.ui-icon-blank.ui-icon-blank {
  background-image: none;
}
.ui-corner-all,
.ui-corner-top,
.ui-corner-left,
.ui-corner-tl {
  border-top-left-radius: 3px;
}
.ui-corner-all,
.ui-corner-top,
.ui-corner-right,
.ui-corner-tr {
  border-top-right-radius: 3px;
}
.ui-corner-all,
.ui-corner-bottom,
.ui-corner-left,
.ui-corner-bl {
  border-bottom-left-radius: 3px;
}
.ui-corner-all,
.ui-corner-bottom,
.ui-corner-right,
.ui-corner-br {
  border-bottom-right-radius: 3px;
}
.ui-widget-overlay {
  background: #aaa;
  opacity: 0.3;
}
.ui-widget-shadow {
  box-shadow: 0 0 5px #666;
}

/* ------------------------------------------------------------------------------------------------ */

/* -------------------------------------------------------------------------------------------------------------- */
.ui-datepicker {
  background-color: var(--bg-datepicker) !important;
  border: 1px solid var(--bd-item) !important;
  border-radius: 0.5rem; /* rounded-lg */
  box-shadow: var(--shadow-hover);
  padding: 0;
  width: 17rem; /* w-66 (66 * 0.25rem = 16.5rem) */
  font-family: "Roboto", sans-serif;
  overflow: hidden;
  z-index: 50 !important;
  display: none;
}
.ui-datepicker * {
  box-sizing: border-box;
}

.ui-datepicker-header {
  background-color: var(--bg-datepicker) !important;
  border: none !important;
  border-radius: 0 !important; /* rounded-none */
  border: none !important;
  position: relative !important; /* 기준점 */
  padding: 1.5rem 0 !important;
  height: 1rem; /* 높이 명시 */
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
}

.ui-datepicker-title {
  color: white !important;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 0.5rem;
  margin: 0 !important;
  font-weight: 400;
  font-size: 1rem !important; /* text-lg */
  width: 48%;
}

.ui-datepicker-title select {
  width: auto !important;
  background-color: var(--bg-datepicker);
  color: white;
  border: none;
  font-size: 0.95rem !important; /* text-sm */
  padding: 0.25rem 2rem 0.25rem 0.5rem !important;
  font-weight: 400 !important;
  cursor: pointer;
  outline: none;
  border: none !important;
}
.ui-datepicker-title select option {
  background-color: var(--bg-datepicker);
  color: var(--gray-200);
}

.ui-datepicker-prev,
.ui-datepicker-next {
  position: absolute !important;
  top: 50% !important;
  transform: translateY(-50%) !important;
  width: 2rem !important;
  height: 2rem !important;
  cursor: pointer !important;
  border-radius: 9999px !important;
  display: flex !important;
  align-items: center;
  justify-content: center;
  background: transparent !important;
  border: none !important;
  margin: 0 !important; /* 마진 초기화 */
  z-index: 10;
}

.ui-datepicker-prev {
  left: 2px !important;
}

.ui-datepicker-next {
  right: 2px !important;
}

.ui-datepicker-prev:hover,
.ui-datepicker-next:hover {
  background-color: rgba(255, 255, 255, 0.2) !important;
}

.ui-datepicker-prev span,
.ui-datepicker-next span {
  display: none;
}

.ui-datepicker-prev::after {
  /* Material Design Chevron Left (White) */
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='white'%3E%3Cpath d='M15.41 7.41L14 6l-6 6 6 6 1.41-1.41L10.83 12z'/%3E%3C/svg%3E");
}

.ui-datepicker-next::after {
  /* Material Design Chevron Right (White) */
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='white'%3E%3Cpath d='M10 6L8.59 7.41 13.17 12l-4.58 4.59L10 18l6-6z'/%3E%3C/svg%3E");
}

.ui-datepicker-prev::after,
.ui-datepicker-next::after {
  content: "";
  display: block;
  width: 24px; /* 아이콘 크기 */
  height: 24px;
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
}

.ui-datepicker-calendar {
  width: 100%;
  border-collapse: separate;
  border-spacing: 0 4px;
  padding: 5px;
  background-color: transparent; /* 배경 투명하게 변경 */
}

.ui-datepicker-calendar thead {
  background-color: transparent; /* 배경 투명하게 변경 */
}

.ui-datepicker-calendar tr:hover {
  background-color: transparent; /* 배경 투명하게 변경 */
}

.ui-datepicker-calendar th {
  text-align: center;
  font-size: 1rem !important;
  font-weight: 400;
  color: var(--color-gray) !important;
  background-color: transparent; /* 배경 투명하게 변경 */
  width: 2.25rem !important;
  padding: 0 0px !important;
}

.ui-datepicker-calendar td {
  background-color: transparent; /* 배경 투명하게 변경 */
  text-align: center;
  width: 2.25rem !important;
  padding: 0 0px !important;
}

.ui-datepicker-calendar td span,
.ui-datepicker-calendar td a {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 2.25rem !important; /* w-9 */
  height: 2.25rem; /* h-9 */
  margin: 0 auto;
  border-radius: 50%;
  font-size: 0.9rem;
  color: white !important;
  text-decoration: none;
  border: none !important;
  background: transparent !important; /* 배경 투명하게 변경 */
  transition: background-color 0.1s ease;
}

.ui-datepicker-calendar td span:hover,
.ui-datepicker-calendar td a:hover {
  background-color: var(--bg-gray) !important; /* hover시 배경색 */
  color: white !important;
}

.ui-datepicker-current-day a,
.ui-datepicker .ui-state-active {
  background-color: var(--bg-blue) !important;
  color: white !important;
  font-weight: 500;
  box-shadow: 0 2px 4px -1px rgba(0, 0, 0, 0.5), 0 4px 5px 0 rgba(0, 0, 0, 0.3);
}

.ui-datepicker-calendar td.ui-datepicker-today a {
  background-color: transparent !important;
  border: 1px solid var(--bd-focus) !important;
}

.ui-datepicker-calendar td.ui-datepicker-today a:hover {
  background-color: var(--bg-blue) !important;
  border: none !important;
  color: white !important;
}

.ui-datepicker .ui-datepicker-buttonpane {
  background-image: none;
  margin: 0.7em 0 0 0;
  padding: 0 0.2em;
  border-left: 0;
  border-right: 0;
  border-bottom: 0;
}
.ui-datepicker .ui-datepicker-buttonpane button {
  float: right;
  margin: 0.5em 0.2em 0.4em;
  cursor: pointer;
  padding: 0.2em 0.6em 0.3em 0.6em;
  width: auto;
  overflow: visible;
}
.ui-datepicker .ui-datepicker-buttonpane button.ui-datepicker-current {
  float: left;
}
/* Autocomplete-------------------------------------------------------------------------------------------------- */
.ui-autocomplete {
  position: absolute;
  top: 0;
  left: 0;
  cursor: default;
}
.ui-autocomplete.ui-widget-content {
  background-color: var(--bg-body1) !important;
  border: 1px solid var(--bd-item);
  border-radius: 0.25rem; /* rounded-b-lg */
  box-shadow: 0 8px 18px rgba(80, 80, 80, 0.082);
  max-height: 280px;
  overflow-y: auto;
  z-index: 2000; /* above dialogs */
}

.ui-autocomplete .ui-menu-item-wrapper {
  padding: 4px 8px;
  color: var(--color);
  line-height: 1.1;
  text-decoration: none !important;
  border: none !important;
  margin: 0 !important;
  background-color: transparent !important;
}
.ui-autocomplete .ui-menu-item {
  border: none !important;
  margin: 0 !important;
}

.ui-autocomplete .ui-state-hover {
  filter: brightness(0.9) !important;
  color: white;
  text-decoration: none !important;
  box-shadow: none !important;
  border: none !important;
  margin: 0 !important;
}

.ui-autocomplete .ui-state-active {
  filter: brightness(0.9) !important;
  color: white;
}

.ui-autocomplete {
  scrollbar-width: thin; /* Firefox */
  scrollbar-color: #7a7a7a transparent;
}
.ui-autocomplete::-webkit-scrollbar {
  width: 8px;
}
.ui-autocomplete::-webkit-scrollbar-track {
  background: transparent;
}
.ui-autocomplete::-webkit-scrollbar-thumb {
  background: #7a7a7a;
  border-radius: 4px;
}

/* -------------------------------------------------------------------------------------------------------------- */
