@import"https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&display=swap";body{overscroll-behavior:none}:root{--safe-area-top: env(safe-area-inset-top, 0px);--safe-area-bottom: env(safe-area-inset-bottom, 0px);--safe-area-left: env(safe-area-inset-left, 0px);--safe-area-right: env(safe-area-inset-right, 0px);--keyboard-height: 0px}.app-header{padding-top:max(var(--safe-area-top),0px)}.app-header{-webkit-transform:translateZ(0);transform:translateZ(0)}.mobile-drawer{padding-top:max(var(--safe-area-top),16px);padding-bottom:max(var(--safe-area-bottom),16px)}.app-logo[data-v-745e6a3c]{display:flex;align-items:center;gap:10px;flex-shrink:0}.app-logo--lg[data-v-745e6a3c]{gap:14px}.app-logo__icon[data-v-745e6a3c]{flex-shrink:0}.app-logo--sm .app-logo__icon[data-v-745e6a3c]{width:28px;height:28px}.app-logo--md .app-logo__icon[data-v-745e6a3c]{width:38px;height:38px}.app-logo--lg .app-logo__icon[data-v-745e6a3c]{width:52px;height:52px;filter:drop-shadow(0 4px 10px rgba(10,191,188,.3))}.app-logo__text[data-v-745e6a3c]{display:flex;flex-direction:column;gap:2px}.app-logo__name[data-v-745e6a3c]{font-weight:800;letter-spacing:.07em;color:var(--color-primary, #0F4C52);line-height:1}.app-logo--sm .app-logo__name[data-v-745e6a3c]{font-size:.9375rem}.app-logo--md .app-logo__name[data-v-745e6a3c]{font-size:1.125rem}.app-logo--lg .app-logo__name[data-v-745e6a3c]{font-size:1.5rem}.app-logo__sub[data-v-745e6a3c]{color:var(--color-cta, #0ABFBC);font-weight:400;line-height:1.3}.app-logo--sm .app-logo__sub[data-v-745e6a3c]{font-size:.6875rem}.app-logo--md .app-logo__sub[data-v-745e6a3c]{font-size:.75rem}.app-logo--lg .app-logo__sub[data-v-745e6a3c]{font-size:.875rem}.search-dropdown[data-v-0359e4b7]{position:absolute;top:calc(100% + 6px);left:0;right:0;background:#fff;border:1px solid var(--color-border);border-radius:12px;box-shadow:0 8px 32px #0000001f;z-index:40;overflow:hidden;min-width:320px}.dropdown-loading[data-v-0359e4b7]{display:flex;align-items:center;gap:10px;padding:16px 20px;color:var(--color-text-muted);font-size:.875rem}.spinner[data-v-0359e4b7]{display:inline-block;width:16px;height:16px;border:2px solid var(--color-border);border-top-color:var(--color-cta);border-radius:50%;animation:spin-0359e4b7 .6s linear infinite}@keyframes spin-0359e4b7{to{transform:rotate(360deg)}}.result-group[data-v-0359e4b7]{padding:8px 0}.group-heading[data-v-0359e4b7]{padding:6px 16px;font-size:.6875rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--color-text-muted)}.group-divider[data-v-0359e4b7]{height:1px;background:var(--color-border);margin:0 16px}.result-item[data-v-0359e4b7]{display:flex;align-items:center;gap:10px;padding:10px 16px;width:100%;background:transparent;border:none;text-align:left;cursor:pointer;transition:background-color .1s ease}.result-item[data-v-0359e4b7]:hover{background:var(--color-bg-subtle)}.result-item[data-v-0359e4b7]:focus-visible{outline:none;background:#eff6ff}.result-icon[data-v-0359e4b7]{display:flex;align-items:center;justify-content:center;width:28px;height:28px;min-width:28px;border-radius:6px}.client-icon[data-v-0359e4b7]{background:#dbeafe;color:var(--color-cta)}.device-icon[data-v-0359e4b7]{background:#f0fdf4;color:#16a34a}.result-content[data-v-0359e4b7]{display:flex;flex-direction:column;min-width:0}.result-name[data-v-0359e4b7]{font-size:.875rem;font-weight:500;color:var(--color-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.result-meta[data-v-0359e4b7]{font-size:.75rem;color:var(--color-text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.result-empty[data-v-0359e4b7]{padding:8px 16px;font-size:.8125rem;color:var(--color-text-muted);font-style:italic}.search-bar[data-v-cc5e32ce]{position:relative;width:100%;max-width:480px}.sr-only[data-v-cc5e32ce]{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.search-input-wrapper[data-v-cc5e32ce]{position:relative;display:flex;align-items:center}.search-icon[data-v-cc5e32ce]{position:absolute;left:12px;color:var(--color-text-muted);pointer-events:none}.search-input[data-v-cc5e32ce]{width:100%;padding:10px 36px 10px 40px;border:1px solid var(--color-border);border-radius:10px;font-size:.9375rem;color:var(--color-text);background:var(--color-bg-subtle);transition:border-color .15s ease,background-color .15s ease,box-shadow .15s ease;box-sizing:border-box}.search-input[data-v-cc5e32ce]::placeholder{color:var(--color-text-muted);opacity:.7}.search-input[data-v-cc5e32ce]:focus{outline:none;border-color:var(--color-cta);background:#fff;box-shadow:0 0 0 3px #0369a11f}.search-input[data-v-cc5e32ce]::-webkit-search-cancel-button,.search-input[data-v-cc5e32ce]::-webkit-search-decoration{display:none}.clear-btn[data-v-cc5e32ce]{position:absolute;right:10px;display:flex;align-items:center;justify-content:center;width:24px;height:24px;background:transparent;border:none;border-radius:4px;color:var(--color-text-muted);cursor:pointer;transition:color .15s ease,background-color .15s ease}.clear-btn[data-v-cc5e32ce]:hover{color:var(--color-text);background:var(--color-bg-hover)}.clear-btn[data-v-cc5e32ce]:focus-visible{outline:2px solid var(--color-primary);outline-offset:1px}.toast[data-v-f85f0634]{position:fixed;bottom:max(28px,calc(env(safe-area-inset-bottom,0px) + 12px));left:50%;transform:translate(-50%);z-index:var(--z-toast, 60);display:inline-flex;align-items:center;gap:10px;padding:12px 18px;background:#1e293b;color:#fff;border-radius:10px;font-size:.9rem;font-weight:500;box-shadow:0 4px 20px #00000040;white-space:nowrap;max-width:calc(100vw - 40px)}.toast svg[data-v-f85f0634]:first-child{color:#34d399;flex-shrink:0}.toast-close[data-v-f85f0634]{background:transparent;border:none;color:#fff9;cursor:pointer;padding:2px;border-radius:4px;display:flex;align-items:center;transition:color .1s ease;margin-left:4px;flex-shrink:0}.toast-close[data-v-f85f0634]:hover{color:#fff}.toast-enter-active[data-v-f85f0634]{transition:all .25s cubic-bezier(.34,1.56,.64,1)}.toast-leave-active[data-v-f85f0634]{transition:all .2s ease-in}.toast-enter-from[data-v-f85f0634]{opacity:0;transform:translate(-50%) translateY(16px)}.toast-leave-to[data-v-f85f0634]{opacity:0;transform:translate(-50%) translateY(8px)}.confirm-dialog[data-v-829b705a]{border:1.5px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);padding:24px 28px 20px;max-width:360px;width:calc(100vw - 32px);background:var(--color-surface);color:var(--color-text)}.confirm-dialog[data-v-829b705a]::backdrop{background:#0c1c1e73}.confirm-message[data-v-829b705a]{margin:0 0 20px;font-size:.95rem;line-height:1.5}.confirm-actions[data-v-829b705a]{display:flex;gap:10px;justify-content:flex-end}.btn-cancel[data-v-829b705a],.btn-confirm[data-v-829b705a]{padding:8px 18px;min-height:44px;border-radius:var(--radius-md);font-size:.875rem;font-weight:500;cursor:pointer;transition:background .15s,border-color .15s,color .15s;border:1.5px solid transparent}.btn-cancel[data-v-829b705a]{background:var(--color-surface);border-color:var(--color-border);color:var(--color-text-secondary)}.btn-cancel[data-v-829b705a]:hover{background:var(--color-bg-hover);border-color:var(--color-border-hover);color:var(--color-text)}.btn-confirm[data-v-829b705a]{background:#dc2626;color:#fff}.btn-confirm[data-v-829b705a]:hover{background:#b91c1c}.btn-confirm[data-v-829b705a]:focus-visible{outline:2px solid #DC2626;outline-offset:2px}.mobile-drawer-root[data-v-80bd14d8]{position:fixed;top:0;right:0;bottom:0;left:0;z-index:200;pointer-events:none}.mobile-drawer-root.is-open[data-v-80bd14d8]{pointer-events:auto}.drawer-overlay[data-v-80bd14d8]{position:absolute;top:0;right:0;bottom:0;left:0;background:#0006;opacity:0;transition:opacity .25s ease}.mobile-drawer-root.is-open .drawer-overlay[data-v-80bd14d8]{opacity:1}.mobile-drawer[data-v-80bd14d8]{position:absolute;top:0;left:0;bottom:0;width:280px;background:var(--color-surface);border-right:1px solid var(--color-border);padding-top:max(var(--safe-area-top, env(safe-area-inset-top, 0px)),16px);padding-bottom:max(var(--safe-area-bottom, env(safe-area-inset-bottom, 0px)),16px);transform:translate(-100%);-webkit-transform:translateX(-100%) translateZ(0);transition:transform .25s ease;-webkit-transition:-webkit-transform .25s ease;display:flex;flex-direction:column;overflow-y:auto}.mobile-drawer-root.is-open .mobile-drawer[data-v-80bd14d8]{transform:translate(0) translateZ(0);-webkit-transform:translateX(0) translateZ(0)}.drawer-close[data-v-80bd14d8]{position:absolute;top:max(var(--safe-area-top, env(safe-area-inset-top, 0px)),12px);right:12px;width:44px;height:44px;display:flex;align-items:center;justify-content:center;background:none;border:none;cursor:pointer;color:var(--color-text-muted);border-radius:var(--radius-md);transition:background .15s ease,color .15s ease;flex-shrink:0}.drawer-close[data-v-80bd14d8]:hover{background:var(--color-bg-hover);color:var(--color-text)}.drawer-nav[data-v-80bd14d8]{display:flex;flex-direction:column;gap:2px;padding:16px 12px;margin-top:44px}.drawer-link[data-v-80bd14d8]{display:flex;align-items:center;gap:12px;padding:13px 14px;min-height:48px;border-radius:var(--radius-md);color:var(--color-text-muted);text-decoration:none;font-weight:500;font-size:15px;transition:background .15s ease,color .15s ease;letter-spacing:-.01em}.drawer-link[data-v-80bd14d8]:hover{background:var(--color-bg-hover);color:var(--color-primary)}.drawer-link.router-link-active[data-v-80bd14d8]{background:var(--color-cta-muted);color:var(--color-cta-hover);font-weight:600}.drawer-link svg[data-v-80bd14d8]{flex-shrink:0;opacity:.75}.drawer-link.router-link-active svg[data-v-80bd14d8]{opacity:1}.split-view[data-v-c9669347]{display:grid;grid-template-columns:320px 1fr;height:100%;overflow:hidden}.split-view__list[data-v-c9669347]{border-right:1px solid var(--color-border);overflow-y:auto;height:100%}.split-view__detail[data-v-c9669347]{overflow-y:auto;height:100%}:root{--color-primary: #0F4C52;--color-secondary: #1A7A82;--color-cta: #0ABFBC;--color-cta-hover: #09A8A6;--color-cta-muted: rgba(10, 191, 188, .12);--color-bg: #F4FBFC;--color-bg-subtle: #EAF7F8;--color-bg-hover: #D8F1F3;--color-surface: #FFFFFF;--color-text: #0C1C1E;--color-text-muted: #5B7E82;--color-text-subtle: #8FA8AB;--color-border: #D4EDEF;--color-border-hover: #A8D8DB;--shadow-xs: 0 1px 2px rgba(10, 60, 64, .06);--shadow-sm: 0 1px 3px rgba(10, 60, 64, .08), 0 1px 2px rgba(10, 60, 64, .06);--shadow-md: 0 4px 12px rgba(10, 60, 64, .08), 0 2px 4px rgba(10, 60, 64, .05);--shadow-lg: 0 8px 24px rgba(10, 60, 64, .1), 0 3px 8px rgba(10, 60, 64, .06);--shadow-header: 0 2px 16px rgba(10, 60, 64, .08), 0 1px 4px rgba(10, 60, 64, .04);--radius-sm: 6px;--radius-md: 10px;--radius-lg: 14px;--radius-xl: 20px;--z-dropdown: 30;--z-modal: 50;--z-toast: 60}*,*:before,*:after{box-sizing:border-box}html{font-size:16px;-webkit-text-size-adjust:100%}body{margin:0;background:var(--color-bg);color:var(--color-text);font-family:Inter,system-ui,-apple-system,Segoe UI,sans-serif;line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.btn-primary{display:inline-flex;align-items:center;gap:7px;padding:9px 18px;background:var(--color-cta);color:#fff;border:none;border-radius:var(--radius-md);font-size:.9rem;font-weight:600;cursor:pointer;transition:background-color .15s ease,box-shadow .15s ease,transform .1s ease;white-space:nowrap;letter-spacing:-.01em;box-shadow:0 1px 4px #0abfbc40,inset 0 1px #ffffff26}.btn-primary:hover{background:var(--color-cta-hover);box-shadow:0 3px 10px #0abfbc4d,inset 0 1px #ffffff26;transform:translateY(-1px)}.btn-primary:active{transform:translateY(0);box-shadow:0 1px 3px #0abfbc33}.btn-primary:focus-visible{outline:2px solid var(--color-cta);outline-offset:2px}.btn-primary:disabled{opacity:.55;cursor:not-allowed;transform:none;box-shadow:none}.btn-secondary-outline{display:inline-flex;align-items:center;gap:7px;padding:9px 16px;background:var(--color-surface);color:var(--color-secondary);border:1.5px solid var(--color-cta);border-radius:var(--radius-md);font-size:.9rem;font-weight:600;cursor:pointer;white-space:nowrap;letter-spacing:-.01em;transition:background .15s ease,color .15s ease}.btn-secondary-outline:hover{background:var(--color-cta-muted);color:var(--color-primary)}.nav-progress{position:fixed;top:0;left:0;right:0;height:2.5px;z-index:9999;background:transparent;pointer-events:none}.nav-progress--active{background:linear-gradient(90deg,var(--color-cta) 0%,#7EEEED 50%,var(--color-cta) 100%);background-size:200% 100%;animation:nav-progress-slide 1s linear infinite}@keyframes nav-progress-slide{0%{background-position:200% 0}to{background-position:-200% 0}}.page-enter-active,.page-leave-active{transition:opacity .14s ease,transform .14s ease}.page-enter-from{opacity:0;transform:translateY(6px)}.page-leave-to{opacity:0;transform:translateY(-4px)}@media(prefers-reduced-motion:reduce){.nav-progress--active{animation:none;background:var(--color-cta)}.page-enter-active,.page-leave-active{transition:opacity 80ms ease}.page-enter-from,.page-leave-to{transform:none}*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}@keyframes skeleton-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.skeleton-pulse{background:linear-gradient(90deg,var(--color-bg-subtle) 25%,var(--color-bg-hover) 50%,var(--color-bg-subtle) 75%);background-size:200% 100%;animation:skeleton-shimmer 1.4s ease-in-out infinite;border-radius:var(--radius-md)}:focus-visible{outline:2px solid var(--color-cta);outline-offset:2px}html{scroll-behavior:smooth}@media print{body.printing-modal .app-layout{display:none!important}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}@media(max-width:768px){.btn-ghost,.btn-icon,.delete-btn,.icon-btn,.act-btn,.toggle-btn,.dtp-close-btn,.dtp-nav-btn,.btn-cancel,.btn-confirm{min-width:44px;min-height:44px}}@media(max-width:768px){input[type=text],input[type=email],input[type=number],input[type=password],input[type=search],input[type=tel],input[type=url],input[type=date],input[type=datetime-local],textarea,select{font-size:16px!important}}.app-layout[data-v-2adc2c1c]{min-height:100vh;display:flex;flex-direction:column;overflow-x:hidden}.app-header[data-v-2adc2c1c]{position:sticky;top:0;z-index:var(--z-dropdown);padding:10px 20px;pointer-events:none}.header-shell[data-v-2adc2c1c]{max-width:1280px;margin:0 auto;width:100%;pointer-events:auto;background:#ffffffeb;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid rgba(212,237,239,.8);border-radius:var(--radius-xl);box-shadow:var(--shadow-header);transition:box-shadow .2s ease}.header-shell[data-v-2adc2c1c]:hover{box-shadow:var(--shadow-lg)}.header-inner[data-v-2adc2c1c]{display:flex;align-items:center;gap:10px;padding:10px 16px}.nav-scroll-wrap[data-v-2adc2c1c]{position:relative;flex:1;min-width:0;overflow:hidden}.nav-scroll-wrap[data-v-2adc2c1c]:before,.nav-scroll-wrap[data-v-2adc2c1c]:after{content:"";position:absolute;top:0;bottom:0;width:28px;z-index:1;pointer-events:none;opacity:0;transition:opacity .18s ease}.nav-scroll-wrap[data-v-2adc2c1c]:before{left:0;background:linear-gradient(to right,rgba(255,255,255,.95) 20%,transparent)}.nav-scroll-wrap[data-v-2adc2c1c]:after{right:0;background:linear-gradient(to left,rgba(255,255,255,.95) 20%,transparent)}.nav-scroll-wrap.show-left[data-v-2adc2c1c]:before{opacity:1}.nav-scroll-wrap.show-right[data-v-2adc2c1c]:after{opacity:1}.main-nav[data-v-2adc2c1c]{display:flex;gap:2px;overflow-x:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch;cursor:grab;user-select:none;-webkit-user-select:none}.main-nav[data-v-2adc2c1c]::-webkit-scrollbar{display:none}.main-nav.is-dragging[data-v-2adc2c1c]{cursor:grabbing;scroll-behavior:auto}.nav-link[data-v-2adc2c1c]{text-decoration:none;color:var(--color-text-muted);font-size:.875rem;font-weight:500;padding:7px 11px;border-radius:var(--radius-md);transition:background-color .15s ease,color .15s ease;letter-spacing:-.01em}.nav-link[data-v-2adc2c1c]:hover{background:var(--color-bg-hover);color:var(--color-primary)}.nav-link.router-link-active[data-v-2adc2c1c]{background:var(--color-cta-muted);color:var(--color-cta-hover);font-weight:600}.ws-switcher[data-v-2adc2c1c]{display:flex;align-items:center;gap:7px;padding:5px 10px 5px 6px;border-radius:var(--radius-md);text-decoration:none;color:var(--color-text);font-size:.875rem;font-weight:600;border:1.5px solid var(--color-border);transition:all .15s ease;flex-shrink:0;letter-spacing:-.01em}.ws-switcher[data-v-2adc2c1c]:hover{background:var(--color-bg-hover);border-color:var(--color-border-hover)}.ws-dot[data-v-2adc2c1c]{width:22px;height:22px;border-radius:6px;display:flex;align-items:center;justify-content:center;font-size:.6875rem;font-weight:700;color:#fff;flex-shrink:0}.ws-switcher-name[data-v-2adc2c1c]{max-width:120px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.nav-divider[data-v-2adc2c1c]{width:1px;height:20px;background:var(--color-border);flex-shrink:0}.ws-label[data-v-2adc2c1c]{display:flex;align-items:center;gap:7px;padding:5px 10px 5px 6px;border-radius:var(--radius-md);border:1.5px solid var(--color-border);flex-shrink:0}.header-search[data-v-2adc2c1c]{flex:1;max-width:480px}.btn-profile[data-v-2adc2c1c]{display:flex;align-items:center;padding:5px 6px;border:1.5px solid var(--color-border);border-radius:var(--radius-md);text-decoration:none;transition:background-color .15s ease,border-color .15s ease;flex-shrink:0}.btn-profile[data-v-2adc2c1c]:hover{background:var(--color-bg-hover);border-color:var(--color-border-hover)}.btn-logout[data-v-2adc2c1c]{display:flex;align-items:center;gap:6px;padding:5px 10px 5px 6px;border:1.5px solid var(--color-border);background:transparent;border-radius:var(--radius-md);color:var(--color-text-muted);cursor:pointer;flex-shrink:0;transition:background-color .15s ease,border-color .15s ease,color .15s ease}.btn-logout[data-v-2adc2c1c]:hover{background:#fef2f2;border-color:#fecaca;color:#dc2626}.btn-logout[data-v-2adc2c1c]:disabled{opacity:.5;cursor:not-allowed}.logout-avatar[data-v-2adc2c1c]{width:20px;height:20px;border-radius:5px;background:var(--color-bg-hover);color:var(--color-primary);display:flex;align-items:center;justify-content:center;font-size:.6875rem;font-weight:700;flex-shrink:0}.admin-link[data-v-2adc2c1c]{display:flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:8px;color:var(--color-text-muted);text-decoration:none;transition:all .15s ease;flex-shrink:0}.admin-link[data-v-2adc2c1c]:hover{background:var(--color-bg-hover);color:var(--color-primary)}.admin-link.router-link-active[data-v-2adc2c1c]{background:var(--color-cta-muted);color:var(--color-cta)}.app-main[data-v-2adc2c1c]{flex:1;padding-top:4px}.hamburger-btn[data-v-2adc2c1c]{display:none;align-items:center;justify-content:center;width:44px;height:44px;background:none;border:none;cursor:pointer;color:var(--color-text-muted);border-radius:var(--radius-md);flex-shrink:0;transition:background .15s ease}.hamburger-btn[data-v-2adc2c1c]:hover{background:var(--color-bg-hover)}@media(max-width:768px){.app-header[data-v-2adc2c1c]{padding:8px 12px}.header-shell[data-v-2adc2c1c]{overflow:hidden}.header-inner[data-v-2adc2c1c]{padding:8px 10px;gap:6px}.brand-name[data-v-2adc2c1c]{display:none}.ws-switcher[data-v-2adc2c1c]{flex-shrink:1;min-width:0;padding:4px 8px 4px 5px;gap:5px}.ws-switcher-name[data-v-2adc2c1c]{max-width:72px}.ws-label[data-v-2adc2c1c]{flex-shrink:1;min-width:0;padding:4px 8px 4px 5px;gap:5px}.nav-link[data-v-2adc2c1c]{padding:7px 10px;font-size:.8125rem}.hamburger-btn[data-v-2adc2c1c]{display:flex}}
