*,:after,:before{box-sizing:border-box;margin:0;padding:0}html{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{transition:background-color .2s,color .2s}a{color:inherit;text-decoration:none}.hide-scrollbar::-webkit-scrollbar{display:none}:root{--scrollbar-size:12px;--scrollbar-track:rgba(0,0,0,0.06);--scrollbar-thumb:rgba(0,0,0,0.3);--scrollbar-thumb-hover:rgba(0,0,0,0.48)}::-webkit-scrollbar{width:var(--scrollbar-size);height:var(--scrollbar-size)}::-webkit-scrollbar-track{background:var(--scrollbar-track);border-radius:8px}::-webkit-scrollbar-thumb{background:var(--scrollbar-thumb);border-radius:8px;border:2px solid transparent;background-clip:padding-box}::-webkit-scrollbar-thumb:hover{background:var(--scrollbar-thumb-hover);background-clip:padding-box}::-webkit-scrollbar-corner{background:transparent}*{scrollbar-width:thin;scrollbar-color:var(--scrollbar-thumb) var(--scrollbar-track)}@media (min-width:768px){main table{min-width:0!important}main table th{white-space:normal!important;word-break:keep-all}}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@keyframes toast-slide-in{0%{opacity:0;transform:translateX(40px)}to{opacity:1;transform:translateX(0)}}.msg-html-body{white-space:normal;word-break:break-word}.msg-html-body div,.msg-html-body p{margin:0}.msg-html-body b,.msg-html-body strong{font-weight:700}.dashboard-grid .react-grid-item{transition:none!important}.app-viewport-height{height:100vh;height:100dvh}@media (max-width:767px){.sw-modal-overlay>*{max-height:none!important;height:auto!important}.sw-filter-bar{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;grid-gap:8px!important;gap:8px!important;align-items:end!important}.sw-filter-bar>*{width:100%!important;min-width:0!important;max-width:none!important;margin-left:0!important;margin-right:0!important}.sw-filter-bar input:not([type=checkbox]):not([type=radio]),.sw-filter-bar select{width:100%!important;min-width:0!important;max-width:none!important;flex-shrink:1!important}}@media (max-width:767px){.sw-filter-bar>:has(input:not([type=checkbox]):not([type=radio])~input:not([type=checkbox]):not([type=radio])),.sw-filter-bar>:has(select~select){grid-column:1/-1}.sw-filter-bar>input:is([type=date],[type=datetime-local],[type=month]):has(+span+input:is([type=date],[type=datetime-local],[type=month]),+input:is([type=date],[type=datetime-local],[type=month])){grid-column-start:1}.sw-filter-bar>input:is([type=date],[type=datetime-local],[type=month])+span:has(+input:is([type=date],[type=datetime-local],[type=month])){display:none!important}.sw-filter-bar>:has(>:is(span,label)+:is(select,input:not([type=checkbox]):not([type=radio]))):not(:has(input~input,select~select)){flex-direction:column!important;align-items:stretch!important;gap:2px!important}}@media (hover:none) and (pointer:coarse){input[type=date],input[type=datetime-local],input[type=month]{position:relative;min-height:32px;padding-right:28px!important;text-align:left;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%238b95a1' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='4' width='18' height='18' rx='2'/%3E%3Cpath d='M16 2v4M8 2v4M3 10h18'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 8px center;background-size:14px 14px}input[type=date]::-webkit-date-and-time-value,input[type=datetime-local]::-webkit-date-and-time-value,input[type=month]::-webkit-date-and-time-value{text-align:left;min-height:1.2em}input[type=date]::-webkit-calendar-picker-indicator,input[type=datetime-local]::-webkit-calendar-picker-indicator,input[type=month]::-webkit-calendar-picker-indicator{position:absolute;inset:0;width:auto;height:auto;opacity:0;cursor:pointer}input[type=date]:is([value=""],:not([value])):before{content:"연도-월-일";color:#9aa3af}input[type=datetime-local]:is([value=""],:not([value])):before{content:"연도-월-일 --:--";color:#9aa3af}input[type=month]:is([value=""],:not([value])):before{content:"연도-월";color:#9aa3af}}