:root{--ctp-base: #1e1e2e;--ctp-mantle: #181825;--ctp-crust: #11111b;--ctp-surface0: #313244;--ctp-surface1: #45475a;--ctp-surface2: #585b70;--ctp-text: #cdd6f4;--ctp-subtext1: #bac2de;--ctp-subtext0: #a6adc8;--ctp-mauve: #cba6f7;--ctp-pink: #f5c2e7;--ctp-maroon: #eba0ac;--ctp-red: #f38ba8;--ctp-peach: #fab387;--ctp-yellow: #f9e2af;--ctp-green: #a6e3a1;--ctp-teal: #94e2d5;--ctp-sky: #89dceb;--ctp-sapphire: #74c7ec;--ctp-blue: #89b4fa;--ctp-lavender: #b4befe;--ctp-overlay0: #6c7086;--ctp-overlay1: #7f849c;--ctp-overlay2: #9399b2}.light-theme{--ctp-base: #eff1f5;--ctp-mantle: #e6e9ef;--ctp-crust: #dce0e8;--ctp-surface0: #ccd0da;--ctp-surface1: #bcc0cc;--ctp-surface2: #acb0be;--ctp-text: #4c4f69;--ctp-subtext1: #5c5f77;--ctp-subtext0: #6c6f85;--ctp-mauve: #8839ef;--ctp-pink: #ea76cb;--ctp-maroon: #d20f39;--ctp-red: #d20f39;--ctp-peach: #fe640b;--ctp-yellow: #df8e1d;--ctp-green: #40a02b;--ctp-teal: #179299;--ctp-sky: #04a5e5;--ctp-sapphire: #209fb5;--ctp-blue: #1e66f5;--ctp-lavender: #7287fd;--ctp-overlay0: #9ca0b0;--ctp-overlay1: #8c8fa1;--ctp-overlay2: #7c7f93}:root{--color-background: var(--ctp-base);--color-background-soft: var(--ctp-mantle);--color-background-mute: var(--ctp-surface0);--color-background-elevated: var(--ctp-surface1);--color-border: var(--ctp-surface1);--color-border-hover: var(--ctp-surface2);--color-border-focus: var(--ctp-mauve);--color-heading: var(--ctp-text);--color-text: var(--ctp-text);--color-text-muted: var(--ctp-subtext1);--color-text-subtle: var(--ctp-subtext0);--color-primary: var(--ctp-mauve);--color-primary-hover: var(--ctp-pink);--color-primary-active: var(--ctp-lavender);--color-success: var(--ctp-green);--color-warning: var(--ctp-yellow);--color-error: var(--ctp-red);--color-info: var(--ctp-blue);--color-link: var(--ctp-mauve);--color-link-hover: var(--ctp-pink);--shadow-sm: 0 1px 2px 0 rgba(17, 17, 27, .1);--shadow-md: 0 4px 6px -1px rgba(17, 17, 27, .1), 0 2px 4px -1px rgba(17, 17, 27, .06);--shadow-lg: 0 10px 15px -3px rgba(17, 17, 27, .1), 0 4px 6px -2px rgba(17, 17, 27, .05);--shadow-xl: 0 20px 25px -5px rgba(17, 17, 27, .1), 0 10px 10px -5px rgba(17, 17, 27, .04);--radius-sm: .375rem;--radius-md: .5rem;--radius-lg: .75rem;--radius-xl: 1rem;--spacing-xs: .25rem;--spacing-sm: .5rem;--spacing-md: 1rem;--spacing-lg: 1.5rem;--spacing-xl: 2rem;--spacing-2xl: 3rem;--font-size-xs: .75rem;--font-size-sm: .875rem;--font-size-base: 1rem;--font-size-lg: 1.125rem;--font-size-xl: 1.25rem;--font-size-2xl: 1.5rem;--font-size-3xl: 1.875rem;--transition-fast: .15s ease-in-out;--transition-normal: .25s ease-in-out;--transition-slow: .35s ease-in-out}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{min-height:100vh;color:var(--color-text);background:var(--color-background);transition:var(--transition-normal);line-height:1.6;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;font-size:var(--font-size-base);text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-weight:400}h1,h2,h3,h4,h5,h6{color:var(--color-heading);font-weight:600;line-height:1.3;margin-bottom:var(--spacing-sm)}h1{font-size:var(--font-size-3xl)}h2{font-size:var(--font-size-2xl)}h3{font-size:var(--font-size-xl)}h4{font-size:var(--font-size-lg)}p{margin-bottom:var(--spacing-md);color:var(--color-text)}:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}::selection{background-color:var(--color-primary);color:var(--color-background)}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--color-background-mute)}::-webkit-scrollbar-thumb{background:var(--color-border-hover);border-radius:var(--radius-sm)}::-webkit-scrollbar-thumb:hover{background:var(--color-primary)}.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}#app{min-height:100vh;display:flex;flex-direction:column}a{color:var(--color-link);text-decoration:none;transition:var(--transition-fast);border-radius:var(--radius-sm);padding:var(--spacing-xs) var(--spacing-sm);display:inline-flex;align-items:center;gap:var(--spacing-xs)}a:hover{color:var(--color-link-hover);background-color:var(--color-background-mute)}a:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--spacing-xs);padding:var(--spacing-sm) var(--spacing-md);border:1px solid transparent;border-radius:var(--radius-md);font-size:var(--font-size-sm);font-weight:500;text-decoration:none;cursor:pointer;transition:var(--transition-fast);white-space:nowrap;-webkit-user-select:none;user-select:none}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background-color:var(--color-primary);color:var(--color-background);border-color:var(--color-primary)}.btn-primary:hover:not(:disabled){background-color:var(--color-primary-hover);border-color:var(--color-primary-hover);transform:translateY(-1px);box-shadow:var(--shadow-md)}.btn-secondary{background-color:var(--color-background-mute);color:var(--color-text);border-color:var(--color-border)}.btn-secondary:hover:not(:disabled){background-color:var(--color-background-elevated);border-color:var(--color-border-hover)}.btn-danger{background-color:var(--color-error);color:var(--color-background);border-color:var(--color-error)}.btn-danger:hover:not(:disabled){background-color:var(--ctp-maroon);border-color:var(--ctp-maroon)}.btn-sm{padding:var(--spacing-xs) var(--spacing-sm);font-size:var(--font-size-xs)}.btn-lg{padding:var(--spacing-md) var(--spacing-lg);font-size:var(--font-size-lg)}.form-group{display:flex;flex-direction:column;gap:var(--spacing-xs);margin-bottom:var(--spacing-md)}.form-label{font-size:var(--font-size-sm);font-weight:500;color:var(--color-text)}.form-input,.form-select,.form-textarea{padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--color-border);border-radius:var(--radius-md);background-color:var(--color-background-soft);color:var(--color-text);font-size:var(--font-size-sm);transition:var(--transition-fast)}.form-input:focus,.form-select:focus,.form-textarea:focus{outline:none;border-color:var(--color-border-focus);box-shadow:0 0 0 3px #cba6f71a}.form-input:disabled,.form-select:disabled,.form-textarea:disabled{opacity:.5;cursor:not-allowed;background-color:var(--color-background-mute)}.table{width:100%;border-collapse:collapse;background-color:var(--color-background-soft);border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow-sm)}.table th,.table td{padding:var(--spacing-md);text-align:left;border-bottom:1px solid var(--color-border)}.table th{background-color:var(--color-background-mute);font-weight:600;font-size:var(--font-size-sm);color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.05em}.table tbody tr:hover{background-color:var(--color-background-mute)}.table tbody tr:last-child td{border-bottom:none}.card{background-color:var(--color-background-soft);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--spacing-lg);box-shadow:var(--shadow-sm);transition:var(--transition-fast)}.card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.card-header{margin-bottom:var(--spacing-md);padding-bottom:var(--spacing-md);border-bottom:1px solid var(--color-border)}.card-title{margin:0;font-size:var(--font-size-lg);font-weight:600}.alert{padding:var(--spacing-md);border-radius:var(--radius-md);border:1px solid;margin-bottom:var(--spacing-md)}.alert-success{background-color:#a6e3a11a;border-color:var(--color-success);color:var(--color-success)}.alert-error{background-color:#f38ba81a;border-color:var(--color-error);color:var(--color-error)}.alert-warning{background-color:#f9e2af1a;border-color:var(--color-warning);color:var(--color-warning)}.alert-info{background-color:#89b4fa1a;border-color:var(--color-info);color:var(--color-info)}.spinner{width:20px;height:20px;border:2px solid var(--color-border);border-top:2px solid var(--color-primary);border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.text-center{text-align:center}.text-right{text-align:right}.text-muted{color:var(--color-text-muted)}.text-subtle{color:var(--color-text-subtle)}.flex{display:flex}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-sm{gap:var(--spacing-sm)}.gap-md{gap:var(--spacing-md)}.gap-lg{gap:var(--spacing-lg)}.p-sm{padding:var(--spacing-sm)}.p-md{padding:var(--spacing-md)}.p-lg{padding:var(--spacing-lg)}.px-md{padding-left:var(--spacing-md);padding-right:var(--spacing-md)}.py-md{padding-top:var(--spacing-md);padding-bottom:var(--spacing-md)}.m-sm{margin:var(--spacing-sm)}.m-md{margin:var(--spacing-md)}.m-lg{margin:var(--spacing-lg)}.mb-md{margin-bottom:var(--spacing-md)}.mt-md{margin-top:var(--spacing-md)}.w-full{width:100%}.h-full{height:100%}.rounded{border-radius:var(--radius-md)}.rounded-lg{border-radius:var(--radius-lg)}.shadow-sm{box-shadow:var(--shadow-sm)}.shadow-md{box-shadow:var(--shadow-md)}.shadow-lg{box-shadow:var(--shadow-lg)}button,input,select,textarea,a{transition:var(--transition-fast)}.btn:hover:not(:disabled){transform:translateY(-1px)}.btn:active:not(:disabled){transform:translateY(0)}.loading-overlay{position:fixed;inset:0;background-color:#11111bcc;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:9999}.toast{position:fixed;top:var(--spacing-lg);right:var(--spacing-lg);background-color:var(--color-background-soft);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--spacing-md) var(--spacing-lg);box-shadow:var(--shadow-lg);z-index:1000;animation:slideInRight .3s ease-out}@keyframes slideInRight{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}.form-input:invalid:not(:focus):not(:placeholder-shown){border-color:var(--color-error);box-shadow:0 0 0 3px #f38ba81a}.form-input:valid:not(:focus):not(:placeholder-shown){border-color:var(--color-success)}@media (max-width: 768px){.table-container{overflow-x:auto;-webkit-overflow-scrolling:touch}.table{min-width:600px}}@media print{.btn,.modal-overlay,.loading-state{display:none!important}.table{box-shadow:none;border:1px solid #000}.page-header{margin-bottom:var(--spacing-md)}}@media (prefers-contrast: high){:root{--color-border: #ffffff;--color-text: #ffffff;--color-background: #000000}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.spinner{animation:none}}.toast-container[data-v-cfa8ca1d]{position:fixed;top:var(--spacing-lg);right:var(--spacing-lg);z-index:10000;display:flex;flex-direction:column;gap:var(--spacing-sm);max-width:400px;pointer-events:none}.toast[data-v-cfa8ca1d]{display:flex;align-items:flex-start;gap:var(--spacing-md);padding:var(--spacing-md) var(--spacing-lg);background-color:var(--color-background-soft);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);pointer-events:auto;min-width:300px}.toast-success[data-v-cfa8ca1d]{border-left:4px solid var(--color-success);background-color:var(--color-background-elevated)}.toast-error[data-v-cfa8ca1d]{border-left:4px solid var(--color-error);background-color:var(--color-background-elevated)}.toast-warning[data-v-cfa8ca1d]{border-left:4px solid var(--color-warning);background-color:var(--color-background-elevated)}.toast-info[data-v-cfa8ca1d]{border-left:4px solid var(--color-info);background-color:var(--color-background-elevated)}.toast-icon[data-v-cfa8ca1d]{width:24px;height:24px;flex-shrink:0;margin-top:2px}.toast-success .toast-icon[data-v-cfa8ca1d]{color:var(--color-success)}.toast-error .toast-icon[data-v-cfa8ca1d]{color:var(--color-error)}.toast-warning .toast-icon[data-v-cfa8ca1d]{color:var(--color-warning)}.toast-info .toast-icon[data-v-cfa8ca1d]{color:var(--color-info)}.toast-content[data-v-cfa8ca1d]{flex:1;min-width:0}.toast-title[data-v-cfa8ca1d]{font-size:var(--font-size-sm);font-weight:600;color:var(--color-heading);margin-bottom:var(--spacing-xs)}.toast-message[data-v-cfa8ca1d]{font-size:var(--font-size-sm);color:var(--color-text-muted);line-height:1.4}.toast-close[data-v-cfa8ca1d]{width:20px;height:20px;flex-shrink:0;background:none;border:none;cursor:pointer;color:var(--color-text-muted);transition:var(--transition-fast);border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center}.toast-close[data-v-cfa8ca1d]:hover{color:var(--color-text);background-color:var(--color-background-mute)}.toast-close svg[data-v-cfa8ca1d]{width:16px;height:16px}.toast-enter-active[data-v-cfa8ca1d]{transition:all .3s ease-out}.toast-leave-active[data-v-cfa8ca1d]{transition:all .3s ease-in}.toast-enter-from[data-v-cfa8ca1d],.toast-leave-to[data-v-cfa8ca1d]{opacity:0;transform:translate(100%) scale(.95)}.toast-move[data-v-cfa8ca1d]{transition:transform .3s ease}@media (max-width: 768px){.toast-container[data-v-cfa8ca1d]{top:var(--spacing-md);right:var(--spacing-md);left:var(--spacing-md);max-width:none}.toast[data-v-cfa8ca1d]{min-width:unset}}.language-selector[data-v-6aaa34f2]{position:relative;display:inline-block}.language-button[data-v-6aaa34f2]{display:flex;align-items:center;gap:var(--spacing-xs);padding:var(--spacing-sm) var(--spacing-md);background:transparent;border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text-muted);cursor:pointer;transition:var(--transition-fast);font-size:var(--font-size-sm);font-weight:500}.language-button[data-v-6aaa34f2]:hover{color:var(--color-text);background-color:var(--color-background-mute);border-color:var(--color-border-hover)}.language-icon[data-v-6aaa34f2]{width:18px;height:18px}.language-text[data-v-6aaa34f2]{white-space:nowrap}.dropdown-icon[data-v-6aaa34f2]{width:16px;height:16px;transition:transform .2s ease}.dropdown-icon-open[data-v-6aaa34f2]{transform:rotate(180deg)}.language-dropdown[data-v-6aaa34f2]{position:absolute;top:100%;right:0;z-index:1000;min-width:160px;background-color:var(--color-background-soft);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);overflow:hidden;margin-top:var(--spacing-xs)}.language-option[data-v-6aaa34f2]{display:flex;align-items:center;gap:var(--spacing-sm);width:100%;padding:var(--spacing-sm) var(--spacing-md);background:transparent;border:none;color:var(--color-text);cursor:pointer;transition:var(--transition-fast);font-size:var(--font-size-sm);text-align:left}.language-option[data-v-6aaa34f2]:hover{background-color:var(--color-background-mute)}.language-option-active[data-v-6aaa34f2]{background-color:#cba6f71a;color:var(--color-primary)}.flag[data-v-6aaa34f2]{font-size:var(--font-size-lg);line-height:1}.language-name[data-v-6aaa34f2]{flex:1;font-weight:500}.check-icon[data-v-6aaa34f2]{width:16px;height:16px;color:var(--color-primary)}.dropdown-enter-active[data-v-6aaa34f2],.dropdown-leave-active[data-v-6aaa34f2]{transition:opacity .2s ease,transform .2s ease}.dropdown-enter-from[data-v-6aaa34f2],.dropdown-leave-to[data-v-6aaa34f2]{opacity:0;transform:translateY(-10px)}@media (max-width: 768px){.language-dropdown[data-v-6aaa34f2]{right:0;left:0;min-width:auto}}.app-layout[data-v-694abac2]{min-height:100vh;display:flex;flex-direction:column}.app-header[data-v-694abac2]{background-color:var(--color-background-soft);border-bottom:1px solid var(--color-border);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);position:sticky;top:0;z-index:100}.header-content[data-v-694abac2]{max-width:1200px;margin:0 auto;padding:var(--spacing-md) var(--spacing-lg);display:flex;align-items:center;justify-content:space-between}.header-left[data-v-694abac2]{display:flex;align-items:center;gap:var(--spacing-xl)}.header-right[data-v-694abac2]{display:flex;align-items:center;gap:var(--spacing-md)}.logo-text[data-v-694abac2]{font-size:var(--font-size-xl);font-weight:700;color:var(--color-primary);margin:0}.nav[data-v-694abac2]{display:flex;align-items:center;gap:var(--spacing-sm)}.nav-link[data-v-694abac2]{display:flex;align-items:center;gap:var(--spacing-xs);padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--radius-md);font-weight:500;font-size:var(--font-size-sm);color:var(--color-text-muted);text-decoration:none;transition:var(--transition-fast);position:relative;background:transparent;border:none}button.nav-link[data-v-694abac2],.nav-link[role=button][data-v-694abac2]{display:flex;align-items:center;gap:var(--spacing-xs);padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--radius-md);font-weight:500;font-size:var(--font-size-sm);color:var(--color-text-muted);text-decoration:none;background:transparent;border:none;cursor:pointer}button.nav-link[data-v-694abac2]:hover,button.nav-link[data-v-694abac2]:focus{color:var(--color-text);background-color:var(--color-background-mute);outline:none}.nav-link[data-v-694abac2]:hover{color:var(--color-text);background-color:var(--color-background-mute)}.nav-link.router-link-exact-active[data-v-694abac2]{color:var(--color-primary);background-color:#cba6f71a}.nav-link.router-link-exact-active[data-v-694abac2]:after{content:"";position:absolute;bottom:-1px;left:50%;transform:translate(-50%);width:80%;height:2px;background:var(--color-primary);border-radius:1px}.btn-logout[data-v-694abac2]{color:#fe640b!important}.btn-logout[data-v-694abac2]:hover{color:#e64553!important}.nav-icon[data-v-694abac2]{width:18px;height:18px}.theme-toggle[data-v-694abac2]{display:flex;align-items:center;justify-content:center;padding:var(--spacing-sm);border-radius:var(--radius-md);background:transparent;border:1px solid var(--color-border);color:var(--color-text-muted);cursor:pointer;transition:var(--transition-fast)}.theme-toggle[data-v-694abac2]:hover{color:var(--color-text);background-color:var(--color-background-mute);border-color:var(--color-border-hover)}.theme-icon[data-v-694abac2]{width:20px;height:20px}.app-main[data-v-694abac2]{flex:1;max-width:1200px;margin:0 auto;width:100%;padding:var(--spacing-xl) var(--spacing-lg);position:relative}@media (max-width: 768px){.header-content[data-v-694abac2]{padding:var(--spacing-md);flex-direction:column;gap:var(--spacing-md)}.header-left[data-v-694abac2],.header-right[data-v-694abac2]{flex-direction:column;width:100%;gap:var(--spacing-md)}.nav[data-v-694abac2]{width:100%;justify-content:center}.nav-link[data-v-694abac2]{flex:1;justify-content:center;font-size:var(--font-size-xs)}.app-main[data-v-694abac2]{padding:var(--spacing-lg) var(--spacing-md)}}
