:root{--font-family: "Pretendard", -apple-system, BlinkMacSystemFont, system-ui, Roboto, "Helvetica Neue", "Segoe UI", "Apple SD Gothic Neo", "Noto Sans KR", "Malgun Gothic", "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", sans-serif;--line-height: 1.5;--line-height-tight: 1;--line-height-relaxed: 1.6;--font-weight-normal: 400;--font-weight-medium: 500;--font-weight-semibold: 600;--font-weight-bold: 700;--font-weight-extrabold: 800;--font-size-xxs: .6875rem;--font-size-xs: .75rem;--font-size-sm: .8125rem;--font-size-base: .90625rem;--font-size-md: .9375rem;--font-size-lg: 1rem;--font-size-xl: 1.125rem;--font-size-2xl: 1.25rem;--font-size-3xl: 1.5rem;--letter-spacing-base: -.03125rem;--letter-spacing-title: -.02em;--letter-spacing-table-header: .05em;--color-text: #2c3e50;--color-text-secondary: #5b6b7b;--color-text-tertiary: #8794a3;--color-background: #ffffff;--color-surface: #ffffff;--color-white: #ffffff;--color-gray-50: #f8fafc;--color-gray-100: #f1f5f9;--color-gray-200: #e3e8ef;--color-gray-300: #cbd5e1;--color-gray-400: #7b8494;--color-gray-500: #64748b;--color-gray-600: #475569;--color-gray-700: #334155;--color-gray-800: #1e293b;--color-gray-900: #0f172a;--color-primary: #4f5bd5;--color-primary-light: #7884e0;--color-primary-dark: #3e49ab;--color-primary-10: color-mix(in srgb, var(--color-primary) 1.5%, transparent);--color-primary-20: color-mix(in srgb, var(--color-primary) 2.5%, transparent);--color-primary-30: color-mix(in srgb, var(--color-primary) 3%, transparent);--color-primary-40: color-mix(in srgb, var(--color-primary) 6%, transparent);--color-primary-50: color-mix(in srgb, var(--color-primary) 8%, transparent);--color-primary-80: color-mix(in srgb, var(--color-primary) 12%, transparent);--color-primary-100: color-mix(in srgb, var(--color-primary) 16%, transparent);--color-primary-hover: var(--color-primary-40);--color-primary-selected: color-mix(in srgb, var(--color-primary) 14%, transparent);--color-on-primary: #ffffff;--color-on-primary-hover: color-mix(in srgb, #ffffff 16%, transparent);--color-calendar-cell-hover: color-mix(in srgb, var(--color-primary) 4%, var(--color-surface));--color-calendar-cell-selected: color-mix(in srgb, var(--color-primary) 10%, var(--color-surface));--color-primary-hover-opaque: color-mix(in srgb, var(--color-primary) 6%, var(--color-surface));--color-secondary: #4a9b8e;--color-secondary-light: #6bc0b2;--color-secondary-dark: #357a6f;--color-secondary-50: #e6f4f1;--color-success: #2faa6a;--color-success-light: #4ec98a;--color-success-dark: #228052;--color-success-50: #e6f7ee;--color-warning: #e0930a;--color-warning-light: #f4b53e;--color-warning-dark: #b3740a;--color-warning-50: #fdf3df;--color-error: #d94848;--color-error-light: #ec6e6e;--color-error-dark: #ad3636;--color-error-50: #fbe9e9;--color-info: #0e9fd4;--color-info-light: #38c0eb;--color-info-dark: #0b7da8;--color-info-50: #e3f5fb;--color-success-bg: color-mix(in srgb, var(--color-success) 10%, transparent);--color-warning-bg: color-mix(in srgb, var(--color-warning) 10%, transparent);--color-error-bg: color-mix(in srgb, var(--color-error) 10%, transparent);--color-info-bg: color-mix(in srgb, var(--color-info) 10%, transparent);--spacing-none: 0;--spacing-xxs: .125rem;--spacing-xs: .3125rem;--spacing-sm: .5625rem;--spacing-md: 1.0625rem;--spacing-lg: 1.5625rem;--spacing-xl: 2rem;--spacing-2xl: 3rem;--spacing-3xl: 4rem;--spacing-content-top: calc(var(--spacing-xl) + var(--spacing-xl));--spacing-hairline: 1px;--spacing-hairline-negative: -1px;--border-radius-xxs: .25rem;--border-radius-xs: .375rem;--border-radius-sm: .5rem;--border-radius-md: .75rem;--border-radius-lg: 1rem;--border-radius-xl: 1.5rem;--border-radius-2xl: 2rem;--border-radius-full: 9999px;--border-width-thin: 1px;--border-width-base: 2px;--border-width-thick: 4px;--border-width-spinner: 3px;--shadow-sm: 0 1px 2px 0 rgba(15, 23, 42, .04);--shadow-md: 0 4px 6px -1px rgba(15, 23, 42, .06), 0 2px 4px -2px rgba(15, 23, 42, .04);--shadow-lg: 0 10px 15px -3px rgba(15, 23, 42, .07), 0 4px 6px -4px rgba(15, 23, 42, .04);--shadow-xl: 0 20px 25px -5px rgba(15, 23, 42, .09), 0 8px 10px -6px rgba(15, 23, 42, .05);--shadow-2xl: 0 25px 50px -12px rgba(15, 23, 42, .13);--shadow-inner: inset 0 2px 4px 0 rgba(15, 23, 42, .04);--overlay-background: rgba(15, 23, 42, .45);--backdrop-blur: blur(8px);--z-base: 0;--z-sticky-header: 1;--z-dropdown: 1000;--z-sticky: 1020;--z-fixed: 1030;--z-modal-backdrop: 1040;--z-modal: 1050;--z-popover: 1060;--z-tooltip: 1070;--z-toast: 1080;--opacity-none: 0;--opacity-disabled: .5;--opacity-loading: .6;--opacity-inactive: .6;--opacity-secondary: .7;--opacity-subtle: .9;--opacity-full: 1;--size-checkbox: 1.125rem;--size-icon-sm: .625rem;--size-icon-md: .875rem;--size-icon-base: 1rem;--size-icon-lg: 1.125rem;--size-icon-xl: 1.5rem;--size-icon-empty: 3rem;--size-calendar-daynum: 1.5rem;--size-calendar-chip-dot: .25rem;--size-legend-dot: .75rem;--size-tooltip-dot: .5rem;--size-avatar-xs: 1.5rem;--size-avatar-sm: 2rem;--size-avatar-md: 2.5rem;--size-avatar-lg: 3rem;--size-avatar-xl: 4rem;--size-spinner-xs: 1rem;--size-spinner-sm: 1.25rem;--size-spinner-md: 1.5rem;--size-spinner-lg: 2rem;--size-spinner-xl: 2.5rem;--size-saemi-sm: 2.5rem;--size-saemi-md: 4rem;--size-saemi-lg: 6rem;--size-saemi-xl: 8rem;--size-switch-width: 2.75rem;--size-switch-height: 1.5rem;--size-switch-thumb: 1.25rem;--size-switch-thumb-offset: .125rem;--size-switch-width-sm: 2.25rem;--size-switch-height-sm: 1.25rem;--size-switch-thumb-sm: 1rem;--stroke-width-icon: 1.5;--stroke-width-icon-bold: 2;--aspect-ratio-square: 1;--spacing-form-indent: 1.75rem;--height-control-xxs: 1.75rem;--height-control-xs: 2rem;--height-control-sm: 2.25rem;--height-control-md: 2.75rem;--height-control-lg: 3.25rem;--height-control-xl: 3.75rem;--width-full: 100%;--width-viewport: 100vw;--height-full: 100%;--height-viewport: 100vh;--height-divider-vertical: 40%;--height-chart-donut: 12.5rem;--height-chart-empty: 17.5rem;--width-legend-percent: 2.8125rem;--font-size-chart-total-value: 24px;--font-size-chart-total-unit: 13px;--font-size-chart-total-label: 11px;--width-sidebar: 11.5rem;--width-sidebar-collapsed: 4.5rem;--width-sub-sidebar: 14rem;--width-sub-sidebar-pushed: 11rem;--width-ai-panel: 22rem;--width-detail-panel: 41.25rem;--width-layer-menu: var(--width-detail-panel);--width-layer-menu-tablet: 31.25rem;--width-layer-menu-expanded: 65vw;--width-layer-overlay-threshold: 102.5rem;--width-search-bar: 18rem;--height-search-panel: 24rem;--width-drawer: 20rem;--width-page-max: 87.5rem;--width-content-max: 43.75rem;--width-card-min: 18.75rem;--width-form-narrow: 24rem;--width-form-wide: 36rem;--width-form-field-min: 12.5rem;--width-form-inline-label: 5rem;--spacing-form-inline-label-gap: var(--spacing-sm);--color-form-inline-label: var(--color-gray-400);--spacing-form-horizontal-left: var(--spacing-sm);--width-button-min: 7.5rem;--width-table-col-sm: 5rem;--width-table-col-md: 7.5rem;--width-table-col-lg: 12.5rem;--width-table-cell-max: 18.75rem;--width-table-mobile-label: 3.75rem;--width-grid-column: 6.25rem;--width-items-per-page: 5rem;--size-pagination-button: 2rem;--size-chip-min: 2.75em;--width-datepicker-trigger: 17rem;--width-datepicker-year: 6.5rem;--width-datepicker-month: 5.25rem;--width-datepicker-popup: 17.5rem;--width-calendar-max: 20rem;--height-datepicker-dropdown: 13.75rem;--width-timepicker-col: 3.5rem;--height-timepicker-col: 12rem;--width-modal-sm: 25rem;--width-modal-md: 31.25rem;--width-modal-lg: 43.75rem;--width-modal-xl: 56.25rem;--width-modal-2xl: 68.75rem;--width-modal-3xl: 81.25rem;--width-modal-max: 90vw;--width-toast-max: 28rem;--width-chart-min: 16rem;--height-header: 4.5rem;--height-footer: 2.25rem;--size-dot: .5rem;--size-badge-min: 1.125rem;--height-titlebar: 2rem;--height-titlebar-actual: 0px;--height-modal-max: 85vh;--min-height-section: 12.5rem;--min-height-empty-card: 18.75rem;--min-height-textarea: 6.25rem;--max-height-dropdown: 12.5rem;--height-layer-demo: 22rem;--height-calendar-full: calc( 100vh - var(--height-titlebar-actual) - var(--height-header) - var(--height-footer) - var(--spacing-2xl) - var(--height-page-header) );--height-page-header: 5rem;--min-height-calendar-row: 6.5rem;--touch-target-min: 2.75rem;--focus-ring-width: .125rem;--transition-fast: .15s cubic-bezier(.4, 0, .2, 1);--transition-base: .2s cubic-bezier(.4, 0, .2, 1);--transition-slow: .3s cubic-bezier(.4, 0, .2, 1);--transition-slower: .5s cubic-bezier(.4, 0, .2, 1);--transition-all: all .2s cubic-bezier(.4, 0, .2, 1);--transition-transform: transform .3s cubic-bezier(.4, 0, .2, 1);--ease-layer-slide: cubic-bezier(.25, .1, .25, 1);--transition-layer-slide: .3s var(--ease-layer-slide);--transition-layer-slide-duration: .3s;--ease-layer-content-reveal: cubic-bezier(.16, 1, .3, 1);--transition-layer-content-reveal-duration: .3s;--offset-layer-reveal: -1rem;--offset-toast-enter: 1.25rem;--offset-toast-top: var(--spacing-md);--transition-toast: .25s cubic-bezier(.16, 1, .3, 1);--duration-toast-exit: 250;--transform-lift-hover: translateY(-.125rem);--transform-scale-hover: scale(1.05);--transform-center: translate(-50%, -50%);--transition-skeleton-shimmer: 1.4s ease-in-out;--duration-stepper-flow: 1.6s;--duration-fast: 150;--duration-base: 200;--duration-slow: 300;--color-form-border: var(--color-gray-300);--color-form-border-error: var(--color-error);--color-form-error: var(--color-error);--color-form-disabled-bg: var(--color-gray-100);--color-form-disabled-text: var(--color-text-tertiary);--color-table-row-border: var(--color-gray-200);--color-table-border-strong: var(--color-text);--width-scrollbar: .625rem;--border-radius-scrollbar: .3125rem;--color-scrollbar-track: transparent;--color-scrollbar-thumb: color-mix(in srgb, #000000 22%, transparent);--color-scrollbar-thumb-hover: color-mix(in srgb, #000000 38%, transparent);--print-page-margin: 1.5cm;--print-font-size: 10.5pt;--print-line-height: 1.4;--color-print-text: #000000;--color-print-border: #000000;--color-print-cell-head: #f0f0f0;--print-cell-padding: .18cm .25cm;--print-border-width: .3pt;--print-title-size: 15pt;--print-meta-size: 9pt;--font-size-root: 16px;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}@media(prefers-color-scheme:dark){:root:not([data-theme=light]){--color-text: rgba(248, 250, 252, .92);--color-text-secondary: rgba(248, 250, 252, .66);--color-text-tertiary: rgba(248, 250, 252, .46);--color-background: #0f172a;--color-surface: #1e293b;--color-white: #1e293b;--color-gray-50: #1e293b;--color-gray-100: #273449;--color-gray-200: #334155;--color-gray-300: #475569;--color-table-border-strong: var(--color-gray-300);--color-scrollbar-thumb: color-mix(in srgb, #ffffff 20%, transparent);--color-scrollbar-thumb-hover: color-mix(in srgb, #ffffff 34%, transparent)}}:root[data-theme=dark]{--color-text: rgba(248, 250, 252, .92);--color-text-secondary: rgba(248, 250, 252, .66);--color-text-tertiary: rgba(248, 250, 252, .46);--color-background: #0f172a;--color-surface: #1e293b;--color-white: #1e293b;--color-gray-50: #1e293b;--color-gray-100: #273449;--color-gray-200: #334155;--color-gray-300: #475569;--color-table-border-strong: var(--color-gray-300);--color-scrollbar-thumb: color-mix(in srgb, #ffffff 20%, transparent);--color-scrollbar-thumb-hover: color-mix(in srgb, #ffffff 34%, transparent)}@media(prefers-contrast:high){:root{--color-text: #000000;--color-background: #ffffff;--color-surface: #f0f0f0}@media(prefers-color-scheme:dark){:root{--color-text: #ffffff;--color-background: #000000;--color-surface: #1a1a1a}}}*{box-sizing:border-box}html{font-family:var(--font-family);font-size:var(--font-size-root);line-height:var(--line-height);font-weight:var(--font-weight-normal)}body{margin:var(--spacing-none);min-width:20rem;min-height:var(--height-viewport);color:var(--color-text);background:var(--color-background);font-size:var(--font-size-base);letter-spacing:var(--letter-spacing-base);transition:background-color var(--transition-slow),color var(--transition-slow)}#root{width:var(--width-full);min-height:var(--height-viewport)}button,input,select,textarea{font-family:inherit;font-size:inherit;letter-spacing:inherit;line-height:inherit}button:focus-visible,a:focus-visible,[role=button]:focus-visible,[tabindex]:focus-visible{outline:var(--focus-ring-width) solid var(--color-primary);outline-offset:var(--focus-ring-width)}input:focus-visible,select:focus-visible,textarea:focus-visible{outline:none}input::placeholder,textarea::placeholder{color:var(--color-text-tertiary);opacity:var(--opacity-full)}input[type=search]::-webkit-search-cancel-button,input[type=search]::-webkit-search-decoration{-webkit-appearance:none;-moz-appearance:none;appearance:none}input[type=time]::-webkit-calendar-picker-indicator{display:none}input[type=checkbox]{appearance:none;-webkit-appearance:none;-moz-appearance:none;width:var(--size-checkbox);height:var(--size-checkbox);min-width:var(--size-checkbox);min-height:var(--size-checkbox);border:var(--border-width-thin) solid var(--color-gray-300);border-radius:var(--border-radius-xs);background-color:var(--color-surface);cursor:pointer;position:relative;transition:border-color var(--transition-fast)}input[type=checkbox]:hover:not(:disabled){border-color:var(--color-primary)}input[type=checkbox]:checked{background-color:var(--color-primary);border-color:var(--color-primary);transition:none}input[type=checkbox]:checked:after{content:"";position:absolute;left:50%;top:50%;width:.25rem;height:.4375rem;border:solid var(--color-on-primary);border-width:0 var(--border-width-base) var(--border-width-base) 0;transform:translate(-50%,-60%) rotate(45deg)}input[type=checkbox]:indeterminate{background-color:var(--color-primary);border-color:var(--color-primary)}input[type=checkbox]:indeterminate:after{content:"";position:absolute;left:50%;top:50%;width:.5rem;height:0;border-top:var(--border-width-base) solid var(--color-on-primary);transform:translate(-50%,-50%)}input[type=checkbox]:disabled{opacity:var(--opacity-disabled);cursor:not-allowed}*{scrollbar-width:thin;scrollbar-color:var(--color-scrollbar-thumb) var(--color-scrollbar-track)}.ds-stable-gutter{scrollbar-gutter:stable}::-webkit-scrollbar{width:var(--width-scrollbar);height:var(--width-scrollbar)}::-webkit-scrollbar-track{background:var(--color-scrollbar-track)}::-webkit-scrollbar-thumb{background:var(--color-scrollbar-thumb);border-radius:var(--border-radius-scrollbar);border:var(--spacing-xxs) solid transparent;background-clip:padding-box}::-webkit-scrollbar-thumb:hover{background:var(--color-scrollbar-thumb-hover);background-clip:padding-box}::-webkit-scrollbar-corner{background:var(--color-scrollbar-track)}.ds-hidden-scrollbar{scrollbar-width:none;-ms-overflow-style:none}.ds-hidden-scrollbar::-webkit-scrollbar{width:0;height:0}@keyframes ds-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes ds-fade-in{0%{opacity:0;transform:translateY(-.625rem)}to{opacity:var(--opacity-full);transform:translateY(0)}}.ds-card-hover-layer{animation:ds-fade-in var(--transition-base)}@keyframes ds-saemi-bob{0%,to{transform:translateY(0) rotate(0)}50%{transform:translateY(-.25rem) rotate(-1.5deg)}}@keyframes ds-toast-slide-down{0%{opacity:0;transform:translateY(calc(-1 * var(--offset-toast-enter)))}to{opacity:var(--opacity-full);transform:translateY(0)}}@keyframes ds-toast-slide-up{0%{opacity:var(--opacity-full);transform:translateY(0)}to{opacity:0;transform:translateY(calc(-1 * var(--offset-toast-enter)))}}@keyframes ds-skeleton-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@keyframes ds-stepper-flow{0%{background-position:200% 0}to{background-position:-200% 0}}.ds-stepper-connector-flow{background-color:var(--color-form-border);background-image:linear-gradient(90deg,transparent 0%,transparent 35%,var(--color-primary) 50%,transparent 65%,transparent 100%);background-size:200% 100%;background-repeat:no-repeat;animation:ds-stepper-flow var(--duration-stepper-flow) linear infinite}@keyframes layerContentReveal{0%{opacity:0;transform:translate(var(--offset-layer-reveal))}to{opacity:var(--opacity-full);transform:translate(0)}}.layer-content-reveal{animation:layerContentReveal var(--transition-layer-content-reveal-duration) var(--ease-layer-content-reveal)}.ds-split-col-anim{transition:flex-grow var(--transition-slower)}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.ds-right-layer{transition:transform .3s ease-in-out,width .3s ease-in-out!important}.layer-content-reveal{animation:layerContentReveal var(--transition-layer-content-reveal-duration) var(--ease-layer-content-reveal)!important}.ds-split-col-anim{transition:flex-grow var(--transition-slower)!important}.ds-stepper-connector-flow{animation:ds-stepper-flow var(--duration-stepper-flow) linear infinite!important}.ds-spinner{animation:ds-spin .75s linear infinite!important}.ds-card-hover-layer{animation:ds-fade-in var(--transition-base)!important}}.sub-sidebar-menu-icon svg,.sub-sidebar-menu-icon .lucide{stroke-width:1.5!important}.sub-sidebar-menu-icon-selected svg,.sub-sidebar-menu-icon-selected .lucide{stroke-width:2!important}.ds-calendar-cell{background-color:var(--color-surface);transition:background-color var(--transition-fast),box-shadow var(--transition-fast)}.ds-calendar-cell:hover{background-color:var(--color-calendar-cell-hover)}.ds-calendar-cell.is-selected{box-shadow:inset 0 0 0 var(--border-width-thin) var(--color-primary)}.ds-print-card{background:var(--color-white);border:var(--border-width-thin) solid var(--color-gray-200);border-radius:var(--border-radius-md);box-shadow:var(--shadow-sm);padding:var(--spacing-xl)}.ds-scroll-fab{background:var(--color-surface)!important;color:var(--color-text-secondary)!important;border:var(--border-width-thin) solid var(--color-gray-200)!important}.ds-scroll-fab:hover{background:var(--color-gray-50)!important;border-color:var(--color-gray-300)!important}@media print{@page{margin:var(--print-page-margin)}body{background:var(--color-white);color:var(--color-print-text);font-size:var(--print-font-size);line-height:var(--print-line-height)}body *{visibility:hidden}.ds-no-print{display:none!important}.ds-print-area,.ds-print-area *{visibility:visible}.ds-print-area{position:fixed;inset-block-start:0;inset-inline-start:0;width:var(--width-full)}.ds-print-card{background:transparent;border:none;border-radius:0;box-shadow:none;padding:0}.ds-right-layer{border:none!important;box-shadow:none!important;transform:none!important}}.ds-qr-panel{display:inline-flex;padding:var(--spacing-md);background:var(--color-on-primary);border-radius:var(--border-radius-md)}
