:root{--brand: #7c75f0;--brand-strong: #6660ea;--brand-soft: rgb(124 117 240 / 16%);--bg: #16191f;--surface: #16191f;--surface-muted: #1b1f26;--surface-sunken: #121419;--border: #232830;--border-strong: #2e3440;--text: #e6e9ef;--text-muted: #9aa3b5;--text-faint: #6b7384;--ok: #2fbf87;--ok-soft: rgb(47 191 135 / 14%);--warn: #d99a2b;--warn-soft: rgb(217 154 43 / 16%);--danger: #e15a4f;--danger-soft: rgb(225 90 79 / 16%);--info: #5b8cff;--info-soft: rgb(91 140 255 / 14%);--role-admin: #7c75f0;--role-pr: #a78bfa;--role-sales: #34d399;--role-support: #fbbf24;--nm-dark: #0d0f13;--nm-light: #21252d;--shadow-edge: 0 4px 16px rgb(0 0 0 / 45%);--nm-raised: 6px 6px 14px var(--nm-dark), -6px -6px 14px var(--nm-light);--nm-raised-sm: 3px 3px 8px var(--nm-dark), -3px -3px 8px var(--nm-light);--nm-inset: inset 5px 5px 10px var(--nm-dark), inset -5px -5px 10px var(--nm-light);--nm-inset-sm: inset 2px 2px 5px var(--nm-dark), inset -2px -2px 5px var(--nm-light);--radius-sm: 10px;--radius: 16px;--radius-lg: 22px;--ease: cubic-bezier(.4, 0, .2, 1);--font: "Inter", ui-sans-serif, system-ui, -apple-system, "Segoe UI", roboto, sans-serif;--font-mono: ui-monospace, sfmono-regular, "SF Mono", menlo, monospace;--header-height: 60px;--sidebar-width: 216px}*,*:before,*:after{box-sizing:border-box}html,body,#app{height:100%}body{margin:0;font-family:var(--font);font-size:14px;line-height:1.5;color:var(--text);text-rendering:optimizeLegibility;background:var(--bg);-webkit-font-smoothing:antialiased}h1,h2,h3,h4{margin:0;font-weight:600}button,input,select,textarea{font:inherit;color:inherit}a{color:var(--brand);text-decoration:none}a:hover{text-decoration:underline}::selection{background:var(--brand-soft)}*{scrollbar-color:var(--border-strong) transparent;scrollbar-width:thin}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-thumb{background:var(--border-strong);border:3px solid transparent;border-radius:8px;background-clip:content-box}::-webkit-scrollbar-thumb:hover{background:var(--text-faint);background-clip:content-box}::-webkit-scrollbar-track{background:transparent}:focus-visible{outline:none;box-shadow:0 0 0 2px var(--brand-soft),0 0 0 1px var(--brand)}@keyframes spin{to{transform:rotate(360deg)}}@keyframes fade-up{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}@keyframes pop-in{0%{opacity:0;transform:scale(.96) translateY(6px)}to{opacity:1;transform:none}}@keyframes text-swap{0%{opacity:.25}to{opacity:1}}.locale-switching header,.locale-switching aside,.locale-switching main{animation:text-swap .28s var(--ease)}.page-enter-active{transition:opacity .22s var(--ease),transform .22s var(--ease)}.page-leave-active{transition:opacity .12s var(--ease),transform .12s var(--ease)}.page-enter-from{opacity:0;transform:translateY(8px)}.page-leave-to{opacity:0;transform:translateY(-6px)}.modal-enter-active{transition:opacity .18s var(--ease)}.modal-enter-active .modal{transition:transform .22s var(--ease),opacity .22s var(--ease)}.modal-leave-active{transition:opacity .14s var(--ease)}.modal-leave-active .modal{transition:transform .14s var(--ease),opacity .14s var(--ease)}.modal-enter-from,.modal-leave-to{opacity:0}.modal-enter-from .modal,.modal-leave-to .modal{opacity:0;transform:scale(.96) translateY(8px)}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
