@import"https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap";button{padding:0;margin:0;font-family:inherit;font-size:inherit;line-height:1;border:none;background:none;cursor:pointer}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;font-size:.875rem;font-weight:500;line-height:1.5;border-radius:.5rem;transition:all .2s ease-in-out;cursor:pointer;border:1px solid transparent;white-space:nowrap;-webkit-user-select:none;-moz-user-select:none;user-select:none}.btn:focus{outline:none;box-shadow:0 0 0 3px #1c78e64d}.btn:disabled{opacity:.5;cursor:not-allowed;pointer-events:none}.btn-xs{padding:.25rem .5rem;font-size:.75rem;border-radius:.375rem}.btn-sm{padding:.375rem .75rem;font-size:.8125rem;border-radius:.375rem}.btn-md{padding:.5rem 1rem;font-size:.875rem;border-radius:.5rem}.btn-lg{padding:.625rem 1.25rem;font-size:.9375rem;border-radius:.5rem}.btn-xl{padding:.75rem 1.5rem;font-size:1rem;border-radius:.5rem}.btn-primary{background-color:#1c78e6;color:#fff;border:none;box-shadow:0 4px 6px -1px #1c78e640}.btn-primary:hover:not(:disabled){background-color:#1565c0;box-shadow:0 10px 15px -3px #1c78e659;transform:translateY(-1px)}.btn-secondary{background-color:#fff;color:#374151;border:1px solid #e5e7eb;box-shadow:0 1px 2px #0000000d}.btn-secondary:hover:not(:disabled){background-color:#f9fafb;border-color:#d1d5db;box-shadow:0 2px 4px #0000001a}.btn-success{background-color:#24d678;color:#fff;border:none;box-shadow:0 4px 6px -1px #24d67840}.btn-success:hover:not(:disabled){background-color:#1b8a4a;box-shadow:0 10px 15px -3px #24d67859;transform:translateY(-1px)}.btn-danger{background-color:#dc2626;color:#fff;border:none;box-shadow:0 4px 6px -1px #dc262640}.btn-danger:hover:not(:disabled){background-color:#991b1b;box-shadow:0 10px 15px -3px #dc262659;transform:translateY(-1px)}.btn-warning{background-color:#ff8303;color:#fff;border:none;box-shadow:0 4px 6px -1px #ff830340}.btn-warning:hover:not(:disabled){background-color:#e67e00;box-shadow:0 10px 15px -3px #ff830359;transform:translateY(-1px)}.btn-ghost{background-color:transparent;color:#6b7280;border:none}.btn-ghost:hover:not(:disabled){background-color:#f3f4f6;color:#374151}.btn-icon-only{padding:.5rem;aspect-ratio:1}.btn-icon-only.btn-xs{padding:.25rem}.btn-icon-only.btn-sm{padding:.375rem}.btn-icon-only.btn-md{padding:.5rem}.btn-icon-only.btn-lg{padding:.625rem}.btn-icon-only.btn-xl{padding:.75rem}.icon-container{padding:.5rem;border-radius:.5rem}.icon{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;line-height:1}.icon-xs{width:.875rem;height:.875rem}.icon-sm{width:1rem;height:1rem}.icon-md{width:1.25rem;height:1.25rem}.icon-lg{width:1.5rem;height:1.5rem}.icon-xl{width:2rem;height:2rem}.icon-2xl{width:2.5rem;height:2.5rem}.icon-3xl{width:3rem;height:3rem}.btn .icon{margin:-.125rem 0}.btn-xs .icon{width:.875rem;height:.875rem}.btn-sm .icon{width:1rem;height:1rem}.btn-md .icon{width:1.125rem;height:1.125rem}.btn-lg .icon{width:1.25rem;height:1.25rem}.btn-xl .icon{width:1.5rem;height:1.5rem}.icon-spin{animation:icon-spin 1s linear infinite}@keyframes icon-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.icon-pulse{animation:icon-pulse 2s cubic-bezier(.4,0,.6,1) infinite}@keyframes icon-pulse{0%,to{opacity:1}50%{opacity:.5}}.badge{display:inline-flex;align-items:center;gap:.375rem;padding:.25rem .625rem;font-size:.6875rem;font-weight:500;line-height:1.5;border-radius:9999px;white-space:nowrap}.badge-xs{padding:.125rem .375rem;font-size:.5625rem}.badge-sm{padding:.25rem .5rem;font-size:.625rem}.badge-md{padding:.25rem .625rem;font-size:.6875rem}.badge-lg{padding:.375rem .75rem;font-size:.75rem}.badge .icon{width:.875rem;height:.875rem}.badge-success{background-color:#e8f5e9;color:#1b8a4a;border:1px solid #C8E6C9}.badge-error{background-color:#fee2e2;color:#991b1b;border:1px solid #FECACA}.badge-warning{background-color:#ffe4cc;color:#e67e00;border:1px solid #FFCB94}.badge-info{background-color:#e3f2fd;color:#1565c0;border:1px solid #BBDEFB}.badge-neutral{background-color:#f3f4f6;color:#4b5563;border:1px solid #e5e7eb}.card{background:#fff;border-radius:.75rem;box-shadow:0 1px 3px #0000001a,0 1px 2px #0000000f;border:1px solid #f3f4f6;padding:1rem}.card-sm{padding:.75rem;border-radius:.5rem}.card-md{padding:1rem;border-radius:.75rem}.card-lg{padding:1.5rem;border-radius:1rem}.gap-1{gap:.25rem}.gap-2{gap:.5rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.gap-5{gap:1.25rem}.gap-6{gap:1.5rem}.flex{display:flex}.inline-flex{display:inline-flex}.flex-row{flex-direction:row}.flex-col{flex-direction:column}.items-center{align-items:center}.items-start{align-items:flex-start}.items-end{align-items:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.justify-start{justify-content:flex-start}.justify-end{justify-content:flex-end}.flex-wrap{flex-wrap:wrap}.flex-nowrap{flex-wrap:nowrap}.text-xs{font-size:.75rem;line-height:1rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-base{font-size:1rem;line-height:1.5rem}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.text-2xl{font-size:1.5rem;line-height:2rem}.font-normal{font-weight:400}.font-medium{font-weight:500}.font-semibold{font-weight:600}.font-bold{font-weight:700}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}@media (min-width: 640px){.sm\:btn-xs{padding:.25rem .5rem;font-size:.75rem}.sm\:btn-sm{padding:.375rem .75rem;font-size:.8125rem}.sm\:btn-md{padding:.5rem 1rem;font-size:.875rem}.sm\:btn-lg{padding:.625rem 1.25rem;font-size:.9375rem}}@media (min-width: 768px){.md\:btn-xs{padding:.25rem .5rem;font-size:.75rem}.md\:btn-sm{padding:.375rem .75rem;font-size:.8125rem}.md\:btn-md{padding:.5rem 1rem;font-size:.875rem}.md\:btn-lg{padding:.625rem 1.25rem;font-size:.9375rem}}@media (min-width: 1024px){.lg\:btn-xs{padding:.25rem .5rem;font-size:.75rem}.lg\:btn-sm{padding:.375rem .75rem;font-size:.8125rem}.lg\:btn-md{padding:.5rem 1rem;font-size:.875rem}.lg\:btn-lg{padding:.625rem 1.25rem;font-size:.9375rem}}.grid-2{display:grid;grid-template-columns:1fr;gap:1.5rem}@media (min-width: 768px){.grid-2{grid-template-columns:repeat(2,1fr)}}.grid-3{display:grid;grid-template-columns:1fr;gap:1rem}@media (min-width: 768px){.grid-3{grid-template-columns:repeat(3,1fr)}}.grid-4{display:grid;grid-template-columns:1fr;gap:1rem}@media (min-width: 768px){.grid-4{grid-template-columns:repeat(2,1fr)}}@media (min-width: 1024px){.grid-4{grid-template-columns:repeat(4,1fr)}}.grid-2-col{display:grid;grid-template-columns:1fr;gap:1.5rem}@media (min-width: 1024px){.grid-2-col{grid-template-columns:repeat(2,1fr)}}.grid-2x2{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}.loading-container{display:flex;flex-direction:column;justify-content:center;align-items:center;padding:6rem 0}.loading-container-sm{padding:2rem 0}.loading-container-lg{padding:10rem 0;min-height:60vh}.loading-container-full{position:fixed;inset:0;background:#fff4e6;z-index:9999}.loading-container-center{position:fixed;inset:0;width:100%;height:100vh;background:#f8fafc;z-index:1000}.loading-container-overlay{position:absolute;inset:0;background:#ff83031a;z-index:100}.loading-container-page-overlay{position:absolute;inset:0;background:#f8fafc;z-index:100;display:flex;flex-direction:column;align-items:center;justify-content:center}.loading-spinner{position:relative;width:4rem;height:4rem}.loading-spinner-sm{width:2rem;height:2rem}.loading-spinner-lg{width:6rem;height:6rem}.spinner-ring{width:100%;height:100%;border:4px solid #ffe4cc;border-radius:50%;animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}.loading-spinner-sm .spinner-ring{border-width:2px}.loading-spinner-lg .spinner-ring{border-width:6px}.spinner-icon{width:100%;height:100%;color:#ff8303;animation:spin 1s linear infinite;position:absolute;top:0;left:0;display:flex;align-items:center;justify-content:center;line-height:1}.spinner-border{display:inline-block;width:2rem;height:2rem;border:3px solid currentColor;border-right-color:transparent;border-radius:50%;animation:spin .75s linear infinite}.spinner-border-sm{width:1rem;height:1rem;border-width:2px}.spinner-border-lg{width:3rem;height:3rem;border-width:4px}.spinner-dots{display:flex;align-items:center;justify-content:center;gap:.5rem}.spinner-dots .dot{width:.75rem;height:.75rem;background-color:#fff;border-radius:50%;animation:bounce 1.4s ease-in-out infinite both}.spinner-dots .dot:nth-child(1){animation-delay:-.32s}.spinner-dots .dot:nth-child(2){animation-delay:-.16s}.spinner-dots .dot:nth-child(3){animation-delay:0s}.spinner-dots-sm .dot{width:.5rem;height:.5rem}.spinner-pulse{width:2.5rem;height:2.5rem;background-color:#fff;border-radius:50%;animation:pulse-scale 1.5s ease-in-out infinite}.spinner-pulse-sm{width:1.5rem;height:1.5rem}.spinner-pulse-lg{width:4rem;height:4rem}.loading-text{margin-top:1rem;color:#6b7280;font-weight:500;font-size:.875rem}.loading-text-sm{margin-top:.5rem;font-size:.75rem}.loading-text-lg{margin-top:1.5rem;font-size:1rem}.skeleton{background:#f0f0f0;animation:skeleton-loading 1.5s ease-in-out infinite;border-radius:.25rem}.skeleton-text{height:1rem;margin-bottom:.5rem}.skeleton-text-sm{height:.75rem}.skeleton-text-lg{height:1.5rem}.skeleton-title{height:1.5rem;width:60%;margin-bottom:1rem}.skeleton-avatar{width:3rem;height:3rem;border-radius:50%}.skeleton-avatar-sm{width:2rem;height:2rem}.skeleton-avatar-lg{width:4rem;height:4rem}.skeleton-card{height:120px;border-radius:.5rem}.skeleton-button{height:2.5rem;width:6rem;border-radius:.5rem}.skeleton-image{height:200px;border-radius:.5rem}.loading-overlay{position:absolute;inset:0;background:#fff;display:flex;align-items:center;justify-content:center;z-index:10;border-radius:inherit}.loading-overlay-dark{background:#6b7280}.loading-overlay-dark .spinner-border,.loading-overlay-dark .spinner-icon,.loading-overlay-dark .loading-text{color:#fff}.btn-loading{position:relative;pointer-events:none}.btn-loading .btn-text{opacity:0}.btn-loading .spinner-border{position:absolute;width:1.25rem;height:1.25rem;border-width:2px}.progress-bar{width:100%;height:.5rem;background-color:#e5e7eb;border-radius:9999px;overflow:hidden}.progress-bar-fill{height:100%;background-color:#ff8303;border-radius:9999px;transition:width .3s ease}.progress-bar-indeterminate .progress-bar-fill{width:30%;animation:progress-indeterminate 1.5s ease-in-out infinite}.spinner-primary,.spinner-border.spinner-primary{color:#ff8303}.spinner-pulse.spinner-primary,.spinner-dots.spinner-primary .dot{background-color:#ff8303}.spinner-success,.spinner-border.spinner-success{color:#2bcbba}.spinner-pulse.spinner-success,.spinner-dots.spinner-success .dot{background-color:#2bcbba}.spinner-danger,.spinner-border.spinner-danger{color:#fc5c65}.spinner-pulse.spinner-danger,.spinner-dots.spinner-danger .dot{background-color:#fc5c65}.spinner-warning,.spinner-border.spinner-warning{color:#fd9644}.spinner-pulse.spinner-warning,.spinner-dots.spinner-warning .dot{background-color:#fd9644}.spinner-white,.spinner-border.spinner-white{color:#fff}.spinner-pulse.spinner-white,.spinner-dots.spinner-white .dot{background-color:#fff}.spinner-gray,.spinner-border.spinner-gray{color:#6b7280}.spinner-pulse.spinner-gray,.spinner-dots.spinner-gray .dot{background-color:#6b7280}@keyframes spin{to{transform:rotate(360deg)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}@keyframes pulse-scale{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.1);opacity:.7}}@keyframes bounce{0%,80%,to{transform:scale(0)}40%{transform:scale(1)}}@keyframes skeleton-loading{0%{background-position:200% 0}to{background-position:-200% 0}}@keyframes progress-indeterminate{0%{transform:translate(-100%)}to{transform:translate(400%)}}:root{--vt-c-white: #ffffff;--vt-c-white-soft: #f8f8f8;--vt-c-white-mute: #f2f2f2;--vt-c-black: #181818;--vt-c-black-soft: #222222;--vt-c-black-mute: #282828;--vt-c-indigo: #2c3e50;--vt-c-divider-light-1: rgba(60, 60, 60, .29);--vt-c-divider-light-2: rgba(60, 60, 60, .12);--vt-c-divider-dark-1: rgba(84, 84, 84, .65);--vt-c-divider-dark-2: rgba(84, 84, 84, .48);--vt-c-text-light-1: var(--vt-c-indigo);--vt-c-text-light-2: rgba(60, 60, 60, .66);--vt-c-text-dark-1: var(--vt-c-white);--vt-c-text-dark-2: rgba(235, 235, 235, .64);--font-size-xs: 12px;--font-size-sm: 14px;--font-size-md: 15px;--font-size-lg: 18px;--font-size-xl: 24px;--font-size-xxl: 32px;--color-background: var(--vt-c-white);--color-background-soft: var(--vt-c-white-soft);--color-background-mute: var(--vt-c-white-mute);--color-border: var(--vt-c-divider-light-2);--color-border-hover: var(--vt-c-divider-light-1);--color-heading: var(--vt-c-text-light-1);--color-text: var(--vt-c-text-light-1);--section-gap: 160px}*,*:before,*:after{box-sizing:border-box}html,body{margin:0;padding:0;overflow-x:hidden}body{transition:color .5s,background-color .5s;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:15px;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;min-height:100vh}:root{--font-size-xs: 12px;--font-size-sm: 14px;--font-size-md: 15px;--font-size-lg: 18px;--font-size-xl: 24px;--font-size-xxl: 32px}.users-management-page,.analytics-container{min-height:100vh;padding-bottom:0;position:relative}@media (prefers-color-scheme: dark){:root{--color-background: var(--vt-c-black);--color-background-soft: var(--vt-c-black-soft);--color-background-mute: var(--vt-c-black-mute);--color-border: var(--vt-c-divider-dark-2);--color-border-hover: var(--vt-c-divider-dark-1);--color-heading: var(--vt-c-text-dark-1);--color-text: var(--vt-c-text-dark-2)}}h1{font-size:var(--font-size-xxl);font-weight:700;line-height:1.2}h2{font-size:var(--font-size-xl);font-weight:600;line-height:1.25}h3{font-size:var(--font-size-lg);font-weight:600;line-height:1.3}h4{font-size:var(--font-size-md);font-weight:600;line-height:1.35}h5{font-size:var(--font-size-sm);font-weight:500;line-height:1.4}h6{font-size:var(--font-size-xs);font-weight:500;line-height:1.45}.title-page{font-size:1.2rem;font-weight:700;color:#3867d6}.title-xl{font-size:1.125rem;font-weight:700;color:#1e293b}.title-lg{font-size:1rem;font-weight:700;color:#1e293b}.title-md{font-size:.95rem;font-weight:600;color:#374151}.title-sm{font-size:.875rem;font-weight:600;color:#374151}.subtitle-base{font-size:.875rem;color:#6b7280;margin-top:.25rem}.subtitle-sm{font-size:.75rem;color:#9ca3af}a,.green{text-decoration:none;color:#2bcbba;transition:.4s;padding:3px}@media (hover: hover){a:hover{background-color:#e0f7f6}}.main-content{height:100vh;overflow:hidden;display:flex;flex-direction:column;background:#f8fafc}.main-content .content-area{display:block;margin:60px 0 0 220px;min-width:400px;height:calc(100vh - 60px);overflow-y:auto;transition:all .5s ease;flex:1}.main-content.sidebar-collapsed .content-area{margin-left:75px}.main-content.sidebar-collapsed .app-header{margin-left:85px;margin-right:15px;width:calc(100% - 110px)}@media (max-width: 768px){.main-content,.main-content.sidebar-collapsed{margin-left:0;width:100%}.main-content .content-area{margin:50px 0 0;width:100%}}.container{max-width:1200px;margin:0 auto;padding:0 1rem}@media (max-width: 768px){.container{padding:0 .5rem}}.form-label{display:block;margin-bottom:.5rem;font-weight:500;color:#333}.form-control{width:100%;padding:.75rem;border:2px solid #e1e5e9;border-radius:6px;font-size:1rem;transition:border-color .3s ease}.form-control:focus{outline:none;border-color:#007bff;box-shadow:0 0 0 .1rem #007bff40}.form-control:disabled{background-color:#f8f9fa;cursor:not-allowed}.card{background:#fff;border-radius:8px;padding:1.5rem;box-shadow:0 2px 2px -2px #0000001a,0 4px 6px -2px #0000000d;margin-bottom:1rem}.card-title{margin:0;color:#333;font-size:1.25rem}.alert{padding:.75rem;border-radius:6px;margin-bottom:1rem}.alert-danger{background-color:#f8d7da;color:#721c24;border:1px solid #f5c6cb}.alert-success{background-color:#d4edda;color:#155724;border:1px solid #c3e6cb}.alert-info{background-color:#d1ecf1;color:#0c5460;border:1px solid #bee5eb}.section-card{background:#fff;border-radius:1rem;box-shadow:0 2px 2px -2px #0000001a,0 4px 6px -2px #0000000d;border:1px solid #f3f4f6;padding:1rem}.section-title{margin:0}.charts-grid{display:grid;grid-template-columns:1fr;gap:1.5rem}@media (min-width: 1024px){.charts-grid{grid-template-columns:repeat(2,1fr)}}.chart-container{background:#f9fafb;border-radius:.75rem;padding:1.25rem;border:1px solid #e5e7eb;display:flex;flex-direction:column;height:350px;overflow:hidden}.chart-wrapper{flex:1;position:relative;min-height:0;width:100%}.chart-wrapper canvas{position:absolute!important;top:0;left:0;width:100%!important;height:100%!important}.content-grid{display:flex;flex-direction:column;gap:1.5rem}.analytics-container{min-height:100vh}.health-status-card{position:relative;background:#fff;border-radius:.5rem;border:1px solid;padding:1rem;transition:all .3s ease;overflow:hidden}.health-status-card:hover{box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f}.status-indicator{position:absolute;top:0;left:0;width:100%;height:.4rem}.status-line-up{background:#2bcbba}.status-line-down{background:#fc5c65}.status-line-unknown{background:#9ca3af}.card-up{border-color:#b5eae5}.card-up:hover{border-color:#4dd8c8}.card-down{border-color:#ffb8c1}.card-down:hover{border-color:#ffe0e3}.card-unknown{border-color:#e5e7eb}.card-unknown:hover{border-color:#d1d5db}.header-left{display:flex;align-items:center;gap:.75rem}.card-title{font-size:.875rem;font-weight:600;color:#374151}.card-details{display:flex;flex-direction:column;gap:.5rem}.detail-row{display:flex;justify-content:space-between;font-size:.75rem}.detail-key{color:#9ca3af;text-transform:capitalize}.detail-value{color:#4b5563;font-weight:500;padding:.125rem .5rem;border-radius:.25rem}.metric-title{font-size:.75rem;font-weight:500;color:#9ca3af;letter-spacing:.05em;margin-bottom:.25rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.metric-card{background:#fff;border-radius:.75rem;border:1px solid #f3f4f6;padding:1rem;transition:all .3s ease}.metric-card:hover{box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;border-color:#e5e7eb}.subtitle-dot{display:inline-block;width:.375rem;height:.375rem;border-radius:50%;background-color:#d1d5db}.footer{margin-top:2rem;margin-bottom:.5rem;text-align:center;font-size:.75rem;color:#9ca3af}:root{--auth-primary: #FF8303;--auth-primary-hover: #E67E00;--auth-text-dark: #1a1a1a;--auth-text-medium: #666;--auth-text-light: #999;--auth-border: #e0e0e0;--auth-bg-light: #f8f9fa;--auth-error: #ef4444;--auth-error-bg: rgba(239, 68, 68, .15);--auth-error-border: rgba(239, 68, 68, .3);--auth-white: #ffffff}.login-layout,.auth-wrapper{height:100vh;max-height:100vh;display:flex;font-family:Inter,sans-serif;background:var(--auth-white);justify-content:center;overflow:hidden}.auth-left-panel,.login-container{flex:0 0 480px;background:var(--auth-white);display:flex;align-items:center;justify-content:center;padding:20px;position:relative;overflow:hidden;height:100%;box-sizing:border-box}.auth-form-container,.login-card{width:100%;max-width:480px;margin:0 auto;position:relative;z-index:1}.auth-header,.login-header{text-align:center;margin-bottom:32px}.auth-title,.login-title{font-size:2rem;font-weight:700;color:var(--auth-text-dark);margin:0 0 8px}.auth-subtitle{font-size:1rem;color:var(--auth-text-light);margin:0}.login-logo{max-width:250px;height:auto;margin-bottom:.5rem;filter:drop-shadow(0 2px 8px rgba(0,0,0,.1))}.auth-form,.login-form{display:flex;flex-direction:column;gap:20px}.auth-form-group,.form-group{display:flex;flex-direction:column;gap:8px}.auth-label,.form-group label{font-size:.875rem;font-weight:500;color:var(--auth-text-dark)}.auth-input-wrap,.input-wrap{position:relative;display:flex;align-items:center}.auth-input-icon,.login-icon{position:absolute;left:14px;width:20px;height:20px;color:var(--auth-text-light);pointer-events:none;transition:color .3s}.auth-input,.input-wrap input{width:100%;padding:14px 14px 14px 48px;background:var(--auth-bg-light);border:1.5px solid var(--auth-border);border-radius:12px;font-size:.95rem;color:var(--auth-text-dark);transition:all .3s ease}.auth-input::-moz-placeholder,.input-wrap input::-moz-placeholder{color:var(--auth-text-light)}.auth-input::placeholder,.input-wrap input::placeholder{color:var(--auth-text-light)}.auth-input:focus,.input-wrap input:focus{outline:none;border-color:var(--auth-primary);background:var(--auth-white);box-shadow:0 0 0 3px #ff83031a}.auth-input:focus+.auth-input-icon,.auth-input-wrap:focus-within .auth-input-icon,.input-wrap input:focus+.login-icon{color:var(--auth-primary)}.auth-input:disabled,.input-wrap input:disabled{opacity:.6;cursor:not-allowed}.auth-password-toggle{position:absolute;right:14px;background:transparent;border:none;color:var(--auth-text-light);cursor:pointer;padding:4px;display:flex;align-items:center;justify-content:center;transition:color .3s}.auth-password-toggle:hover,.auth-password-toggle:focus{color:var(--auth-primary);outline:none}.icon-toggle{width:20px;height:20px}.auth-error,.error-message{display:flex;align-items:center;gap:8px;padding:12px 14px;background:var(--auth-error-bg);border:1px solid var(--auth-error-border);border-radius:10px;color:#fca5a5;font-size:.875rem}.error-icon{width:18px;height:18px;flex-shrink:0}.auth-options{display:flex;justify-content:space-between;align-items:center}.auth-checkbox-label{display:flex;align-items:center;gap:8px;font-size:.875rem;color:var(--auth-text-medium);cursor:pointer}.auth-checkbox{width:16px;height:16px;accent-color:var(--auth-primary);cursor:pointer}.auth-forgot-link{font-size:.875rem;color:var(--auth-primary);text-decoration:none;transition:color .3s}.auth-forgot-link:hover{color:var(--auth-primary-hover);text-decoration:underline}.auth-submit-btn,.login-button{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;padding:14px 24px;background:linear-gradient(135deg,var(--auth-primary) 0%,var(--auth-primary-hover) 100%);border:none;border-radius:12px;font-size:1rem;font-weight:600;color:var(--auth-white);cursor:pointer;transition:all .3s ease;box-shadow:0 4px 15px #ff83034d;letter-spacing:.5px}.auth-submit-btn:hover:not(:disabled),.login-button:hover:not(:disabled){background:linear-gradient(135deg,var(--auth-primary-hover) 0%,var(--auth-primary) 100%);box-shadow:0 6px 20px #ff830366;transform:translateY(-2px)}.auth-submit-btn:active:not(:disabled){transform:translateY(0)}.auth-submit-btn:disabled,.login-button:disabled{opacity:.7;cursor:not-allowed;transform:none}.btn-icon{width:20px;height:20px}.btn-icon.spin{animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.auth-footer,.login-footer{text-align:center;margin-top:24px}.auth-footer p,.login-footer p{color:var(--auth-text-medium);font-size:.9rem;margin:0}.auth-link,.login-link{color:var(--auth-primary);text-decoration:none;font-weight:500;transition:color .3s}.auth-link:hover,.login-link:hover{color:var(--auth-primary-hover);text-decoration:underline}.auth-lang-selector,.lang-popup-switch{position:relative;margin-top:32px;display:flex;justify-content:center}.lang-btn,.flag-btn{display:flex;align-items:center;gap:8px;padding:10px 16px;background:var(--auth-bg-light);border:1px solid var(--auth-border);border-radius:10px;color:var(--auth-text-dark);font-size:.875rem;cursor:pointer;transition:all .3s}.lang-btn:hover,.flag-btn:hover{background:#efefef;border-color:#ccc}.lang-icon,.flag-img{width:18px;height:18px;-o-object-fit:contain;object-fit:contain}.chevron-icon{width:16px;height:16px;transition:transform .3s}.chevron-icon.rotate{transform:rotate(180deg)}.lang-dropdown,.lang-popup-dropdown{position:absolute;bottom:100%;left:50%;transform:translate(-50%);margin-bottom:8px;background:var(--auth-white);border:1px solid var(--auth-border);border-radius:10px;box-shadow:0 4px 12px #0000001a;overflow:hidden;min-width:160px;z-index:20;display:flex;flex-direction:column}.lang-option,.lang-popup-option{display:flex;align-items:center;gap:10px;width:100%;padding:12px 16px;background:transparent;border:none;color:var(--auth-text-dark);font-size:.9rem;cursor:pointer;transition:background .2s}.lang-option:hover,.lang-popup-option:hover{background:var(--auth-bg-light);color:var(--auth-primary)}.lang-flag{font-size:1.2rem}.fade-enter-active,.fade-leave-active{transition:opacity .2s ease,transform .2s ease}.fade-enter-from,.fade-leave-to{opacity:0;transform:translate(-50%) translateY(10px)}.auth-right-panel{flex:1;align-items:center;justify-content:center;padding:20px;overflow:hidden}.hero-content{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;width:100%;max-width:600px}.hero-decoration{position:absolute;width:300px;height:300px;border-radius:50%;background:#ffffff1a;filter:blur(60px)}.hero-decoration.top-left{top:-100px;left:-100px}.hero-decoration.bottom-right{bottom:-100px;right:-100px}.hero-image-container{position:relative;height:100%;max-width:800px;border-radius:10px;overflow:hidden}.hero-image{width:100%;height:auto;display:block;-o-object-fit:cover;object-fit:cover}.hero-text{text-align:center;margin-top:40px;position:relative;z-index:1}.hero-title{font-size:2.5rem;font-weight:700;color:var(--auth-white);margin:0 0 16px;text-shadow:0 2px 10px rgba(0,0,0,.2)}.hero-description{font-size:1.1rem;color:#ffffffe6;line-height:1.6;margin:0}.sidebar[data-v-f852cde7]{width:200px;height:calc(100vh - 30px);background:#fff;color:#1e293b;display:flex;flex-direction:column;position:fixed;z-index:100;box-shadow:0 2px 8px #0000001a;border:1px solid rgba(226,232,240,.5);transition:width .3s ease;border-radius:10px;margin:15px;overflow:hidden}.sidebar.collapsed[data-v-f852cde7]{width:60px}.sidebar-logo[data-v-f852cde7]{display:flex;align-items:center;justify-content:center;padding:16px 12px;border-bottom:1px solid #e2e8f0;transition:all .3s ease;min-height:70px;position:relative;z-index:102}.logo-img[data-v-f852cde7]{width:80%;-o-object-fit:contain;object-fit:contain;flex-shrink:0}.menu-btn[data-v-f852cde7]{background:#f3f3f3a6;border:none;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .3s ease;padding:8px;border-radius:8px;width:40px;height:40px;position:relative;z-index:1000}.menu-btn[data-v-f852cde7]:hover{background:#ff8303;transform:scale(1.05)}.menu-btn:hover .menu-icon[data-v-f852cde7]{color:#fff}.menu-icon[data-v-f852cde7]{width:20px;height:20px;color:#64748b;transition:all .3s ease}.sidebar-nav[data-v-f852cde7]{flex:1;overflow-y:auto;overflow-x:hidden;padding-bottom:60px;margin-top:0;position:relative;z-index:1}.nav-section[data-v-f852cde7]{padding:0}.nav-item[data-v-f852cde7],.nav-group-header[data-v-f852cde7]{display:flex;align-items:center;gap:12px;padding:8px;color:#334155;text-decoration:none;font-size:14px;cursor:pointer;transition:all .3s ease;border-radius:0;position:relative;justify-content:flex-start}.sidebar.collapsed .nav-item[data-v-f852cde7],.sidebar.collapsed .nav-group-header[data-v-f852cde7]{gap:12px;padding:8px;justify-content:center}.nav-item[data-v-f852cde7]:hover,.nav-group-header[data-v-f852cde7]:hover{background:#f1f5f9}.sidebar.collapsed .nav-item[data-v-f852cde7]:hover,.sidebar.collapsed .nav-group-header[data-v-f852cde7]:hover{transform:none}.icon-wrapper[data-v-f852cde7]{width:40px;height:40px;border-radius:8px;display:flex;align-items:center;justify-content:center;transition:all .3s ease;border:2px solid transparent;flex-shrink:0;background:transparent}.nav-item-summary .nav-icon[data-v-f852cde7]{color:#3867d6;transition:color .3s ease}.nav-item-summary:hover .nav-icon[data-v-f852cde7]{color:#2c53b5}.nav-item-scada .nav-icon[data-v-f852cde7]{color:#a55eea;transition:color .3s ease}.nav-item-scada:hover .nav-icon[data-v-f852cde7]{color:#8e44d8}.nav-item-devices .nav-icon[data-v-f852cde7]{color:#2bcbba;transition:color .3s ease}.nav-item-devices:hover .nav-icon[data-v-f852cde7]{color:#0fb9b1}.nav-item-tasks .nav-icon[data-v-f852cde7]{color:#3867d6;transition:color .3s ease}.nav-item-tasks:hover .nav-icon[data-v-f852cde7]{color:#2c53b5}.nav-item-alarm .nav-icon[data-v-f852cde7]{color:#fc5c65;transition:color .3s ease}.nav-item-alarm:hover .nav-icon[data-v-f852cde7]{color:#eb3b5a}.nav-item-settings .nav-icon[data-v-f852cde7]{color:#fd9644;transition:color .3s ease}.nav-item-settings:hover .nav-icon[data-v-f852cde7]{color:#fa8231}.nav-item.active .icon-wrapper[data-v-f852cde7]{background:#ff8303;border:3px solid #FF8303;box-shadow:0 4px 12px #ff83034d}.nav-item.active .nav-icon[data-v-f852cde7]{color:#fff!important}.nav-item.active[data-v-f852cde7]{color:#1e293b}.nav-item:hover .icon-wrapper[data-v-f852cde7],.nav-group-header:hover .icon-wrapper[data-v-f852cde7]{transform:scale(1.1)}.nav-icon[data-v-f852cde7]{width:22px;height:22px;transition:color .3s ease;flex-shrink:0}.nav-text[data-v-f852cde7]{flex:1;font-weight:500;white-space:nowrap;overflow:hidden;display:flex;align-items:center}.nav-arrow[data-v-f852cde7]{width:16px;height:16px;opacity:.7;color:#64748b;transition:transform .3s,color .3s;flex-shrink:0}.nav-group[data-v-f852cde7]{margin-bottom:4px}.nav-sub-menu[data-v-f852cde7]{padding-left:38px;display:flex;flex-direction:column;gap:2px}.nav-sub-item[data-v-f852cde7]{display:flex;align-items:center;justify-content:space-between;color:#334155;font-size:13px;padding:8px 12px;border-radius:4px;text-decoration:none;transition:background .2s,color .2s;margin-bottom:2px}.nav-sub-item[data-v-f852cde7]:hover,.nav-sub-item.active[data-v-f852cde7]{background:#e0e7ef;color:#ff8303}.sidebar.collapsed .nav-sub-menu[data-v-f852cde7]{display:none}.sidebar-footer[data-v-f852cde7]{position:fixed;bottom:12px;padding:12px;display:flex;justify-content:space-between;align-items:center;z-index:101}.sidebar.collapsed .sidebar-footer[data-v-f852cde7]{width:48px;justify-content:space-between}.toggle-btn[data-v-f852cde7]{background:#f3f3f3a6;border:none;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .3s ease;padding:8px;margin-bottom:5px;border-radius:8px;width:40px;height:40px}.toggle-btn[data-v-f852cde7]:hover{background:#ff8303;transform:scale(1.05)}.toggle-btn:hover .toggle-icon[data-v-f852cde7]{color:#fff}.toggle-icon[data-v-f852cde7]{width:20px;height:20px;color:#64748b;transition:all .3s ease}.badge[data-v-f852cde7]{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;padding:0 6px;margin-left:8px;background:#ef4444;color:#fff;font-size:11px;font-weight:600;border-radius:5px;line-height:1}.sub-badge[data-v-f852cde7]{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;padding:0 5px;margin-left:auto;background:#ef4444;color:#fff;font-size:10px;font-weight:600;border-radius:5px;line-height:1}.sidebar-nav[data-v-f852cde7]::-webkit-scrollbar{width:6px}.sidebar-nav[data-v-f852cde7]::-webkit-scrollbar-track{background:#f1f5f9}.sidebar-nav[data-v-f852cde7]::-webkit-scrollbar-thumb{background:#e0e7ef;border-radius:3px}.sidebar-nav[data-v-f852cde7]::-webkit-scrollbar-thumb:hover{background:#cbd5e1}.app-header[data-v-5be18113]{border-bottom:none;display:flex;align-items:center;justify-content:space-between;position:fixed;margin-left:230px;width:calc(100% - 255px);margin-right:15px;top:15px;z-index:999;gap:20px;transition:all .3s ease;border-radius:16px}.app-header.scrolled[data-v-5be18113]{background:#ffffffd9;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid rgba(226,232,240,.6);box-shadow:0 4px 20px #00000014;padding:10px 20px}.header-left[data-v-5be18113]{display:flex;align-items:center;gap:12px;transition:all .3s ease}.page-title-wrapper[data-v-5be18113]{display:flex;align-items:center;gap:8px;transition:all .3s ease}.page-icon[data-v-5be18113]{width:48px;height:48px;display:flex;align-items:center;justify-content:center;color:#e67e00;font-size:24px;transition:all .3s ease}.back-btn[data-v-5be18113]{width:40px;height:40px;border-radius:50%;background:#fff;box-shadow:0 2px 8px #0000001a;border:1px solid rgba(226,232,240,.5);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .3s ease;color:#64748b}.back-btn[data-v-5be18113]:hover{background:linear-gradient(135deg,#ff8303,#e67e00);color:#fff;transform:translate(-2px);box-shadow:0 4px 12px #ff83034d}.page-title[data-v-5be18113]{font-size:20px;font-weight:600;color:#1e293b;margin:0;transition:all .3s ease;white-space:nowrap}.sidebar-toggle[data-v-5be18113]{background:#f8fafc;border:1px solid #e2e8f0;padding:10px;cursor:pointer;border-radius:12px;display:flex;align-items:center;justify-content:center;transition:all .2s ease;color:#64748b;width:40px;height:40px}.sidebar-toggle[data-v-5be18113]:hover{background:#f1f5f9;border-color:#cbd5e1;color:#3b82f6}.sidebar-toggle-icon[data-v-5be18113]{width:20px;height:20px}.header-logo[data-v-5be18113]{display:flex;align-items:center;gap:10px;padding:8px 16px;background:linear-gradient(135deg,#ff8303,#e67e00);border-radius:12px;box-shadow:0 2px 8px #ff830333}.logo-icon[data-v-5be18113]{width:20px;height:20px;color:#fff}.logo-text[data-v-5be18113]{font-size:16px;font-weight:700;color:#fff}.header-center[data-v-5be18113]{flex:1;max-width:500px;margin:0 20px}.search-box[data-v-5be18113]{position:relative;width:100%}.search-icon[data-v-5be18113]{position:absolute;left:14px;top:50%;transform:translateY(-50%);width:18px;height:18px;color:#94a3b8;pointer-events:none}.search-input[data-v-5be18113]{padding:10px 16px 10px 42px;border:1px solid #e2e8f0;border-radius:12px;background:#f8fafc;font-size:14px;color:#1e293b;outline:none;transition:all .2s ease}.search-input[data-v-5be18113]::-moz-placeholder{color:#94a3b8}.search-input[data-v-5be18113]::placeholder{color:#94a3b8}.search-input[data-v-5be18113]:focus{background:#fff;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.header-right[data-v-5be18113]{display:flex;align-items:center;gap:12px}.header-nav[data-v-5be18113]{display:flex;align-items:center;gap:8px}.nav-link-round[data-v-5be18113]{display:flex;align-items:center;justify-content:center;width:40px;height:40px;color:#64748b;text-decoration:none;box-shadow:0 2px 8px #0000001a;border:1px solid rgba(226,232,240,.5);border-radius:12px;transition:all .2s ease}.nav-link-round[data-v-5be18113]:hover{color:#fff;background:#e67e00;transform:translateY(-2px)}.user-menu[data-v-5be18113]{position:relative}.user-avatar-wrapper[data-v-5be18113]{height:40px;display:flex;align-items:center;gap:8px;padding:4px 12px 4px 4px;border-radius:12px;background:#fff;box-shadow:0 2px 8px #0000001a;border:1px solid rgba(226,232,240,.5);cursor:pointer;transition:all .2s ease}.user-avatar-wrapper[data-v-5be18113]:hover{background:linear-gradient(135deg,#ff8303,#e67e00);border-color:#e67e00;box-shadow:0 4px 12px #ff83034d;transform:translateY(-2px)}.user-avatar-wrapper:hover .user-name-header[data-v-5be18113]{color:#fff}.user-avatar[data-v-5be18113]{width:32px;height:32px;border-radius:50%;overflow:hidden;border:2px solid white;box-shadow:0 2px 8px #0000001a;flex-shrink:0;transition:all .2s ease}.user-avatar img[data-v-5be18113]{width:100%;height:100%;-o-object-fit:cover;object-fit:cover}.user-info-header[data-v-5be18113]{display:flex;flex-direction:column;gap:2px}.user-name-header[data-v-5be18113]{font-size:13px;font-weight:600;color:#1e293b;white-space:nowrap;transition:color .2s ease}.user-dropdown[data-v-5be18113]{position:absolute;top:calc(100% + 10px);right:0;background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 10px 25px #00000026;min-width:220px;z-index:1000;overflow:hidden}.user-info[data-v-5be18113]{padding:16px;background:linear-gradient(135deg,#1c78e60d,#a830db0d);border-bottom:1px solid #e2e8f0}.user-name[data-v-5be18113]{font-size:14px;font-weight:600;color:#1e293b;margin-bottom:4px}.user-email[data-v-5be18113]{font-size:12px;color:#64748b}.user-dropdown hr[data-v-5be18113]{margin:0;border:none;border-top:1px solid #e2e8f0}.dropdown-item[data-v-5be18113]{display:flex;align-items:center;gap:12px;width:100%;padding:12px 16px;color:#1e293b;text-decoration:none;font-size:14px;border:none;background:none;text-align:left;cursor:pointer;transition:all .2s ease}.dropdown-item[data-v-5be18113]:hover{background:#f8fafc;padding-left:20px}.dropdown-item.logout[data-v-5be18113]{color:#ef4444}.dropdown-item.logout[data-v-5be18113]:hover{background:#fef2f2;color:#dc2626}.dropdown-icon[data-v-5be18113]{width:16px;height:16px;flex-shrink:0}.sidebar[data-v-4d2511c8]{width:200px;height:calc(100vh - 30px);background:#fff;color:#1e293b;display:flex;flex-direction:column;position:fixed;z-index:100;box-shadow:0 2px 8px #0000001a;border:1px solid rgba(226,232,240,.5);transition:width .3s ease;border-radius:10px;margin:15px;overflow:hidden}.sidebar-logo[data-v-4d2511c8]{display:flex;align-items:center;justify-content:center;padding:16px 12px;border-bottom:1px solid #e2e8f0;transition:all .3s ease;min-height:70px;position:relative;z-index:102}.logo-img[data-v-4d2511c8]{width:80%;-o-object-fit:contain;object-fit:contain;flex-shrink:0}.menu-btn[data-v-4d2511c8]{background:#f3f3f3a6;border:none;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .3s ease;padding:8px;border-radius:8px;width:40px;height:40px;position:relative;z-index:1000}.menu-btn[data-v-4d2511c8]:hover{background:#eb3b5a;transform:scale(1.05)}.menu-btn:hover .menu-icon[data-v-4d2511c8]{color:#fff}.menu-icon[data-v-4d2511c8]{width:20px;height:20px;color:#64748b;transition:all .3s ease}.sidebar.collapsed[data-v-4d2511c8]{width:60px}.sidebar-nav[data-v-4d2511c8]{flex:1;overflow-y:auto;overflow-x:hidden;padding-bottom:60px;margin-top:0;position:relative;z-index:1}.nav-section[data-v-4d2511c8]{padding:0}.nav-item[data-v-4d2511c8],.nav-group-header[data-v-4d2511c8]{display:flex;align-items:center;gap:12px;padding:8px;color:#334155;text-decoration:none;font-size:14px;cursor:pointer;transition:all .3s ease;border-radius:0;position:relative;justify-content:flex-start}.sidebar.collapsed .nav-item[data-v-4d2511c8],.sidebar.collapsed .nav-group-header[data-v-4d2511c8]{gap:12px;padding:8px;justify-content:center}.nav-item[data-v-4d2511c8]:hover,.nav-group-header[data-v-4d2511c8]:hover{background:#f1f5f9}.sidebar.collapsed .nav-item[data-v-4d2511c8]:hover,.sidebar.collapsed .nav-group-header[data-v-4d2511c8]:hover{transform:none}.icon-wrapper[data-v-4d2511c8]{width:40px;height:40px;border-radius:8px;display:flex;align-items:center;justify-content:center;transition:all .3s ease;border:2px solid transparent;flex-shrink:0;background:transparent}.nav-item-dashboard .nav-icon[data-v-4d2511c8]{color:#3867d6;transition:color .3s ease}.nav-item-dashboard:hover .nav-icon[data-v-4d2511c8]{color:#2c53b5}.nav-item-users .nav-icon[data-v-4d2511c8]{color:#2bcbba;transition:color .3s ease}.nav-item-users:hover .nav-icon[data-v-4d2511c8]{color:#0fb9b1}.nav-item-devices .nav-icon[data-v-4d2511c8]{color:#a55eea;transition:color .3s ease}.nav-item-devices:hover .nav-icon[data-v-4d2511c8]{color:#8e44d8}.nav-item-monitoring .nav-icon[data-v-4d2511c8]{color:#fd9644;transition:color .3s ease}.nav-item-monitoring:hover .nav-icon[data-v-4d2511c8]{color:#fa8231}.nav-item-notifications .nav-icon[data-v-4d2511c8]{color:#fc5c65;transition:color .3s ease}.nav-item-notifications:hover .nav-icon[data-v-4d2511c8]{color:#eb3b5a}.nav-item-settings .nav-icon[data-v-4d2511c8]{color:#5f7fe6;transition:color .3s ease}.nav-item-settings:hover .nav-icon[data-v-4d2511c8]{color:#3867d6}.nav-item.active .icon-wrapper[data-v-4d2511c8]{background:#fd9644;border:3px solid #fd9644;box-shadow:0 4px 12px #fd96444d}.nav-item.active .nav-icon[data-v-4d2511c8]{color:#fff!important}.nav-item.active[data-v-4d2511c8]{color:#1e293b}.nav-item:hover .icon-wrapper[data-v-4d2511c8],.nav-group-header:hover .icon-wrapper[data-v-4d2511c8]{transform:scale(1.1)}.nav-icon[data-v-4d2511c8]{width:22px;height:22px;transition:color .3s ease;flex-shrink:0}.nav-text[data-v-4d2511c8]{flex:1;font-weight:500;white-space:nowrap;overflow:hidden}.nav-arrow[data-v-4d2511c8]{width:16px;height:16px;opacity:.7;color:#64748b;transition:transform .3s,color .3s;flex-shrink:0}.nav-group[data-v-4d2511c8]{margin-bottom:4px}.nav-sub-menu[data-v-4d2511c8]{padding-left:38px;display:flex;flex-direction:column;gap:2px}.nav-sub-item[data-v-4d2511c8]{display:flex;align-items:center;color:#334155;font-size:13px;padding:8px 12px;border-radius:4px;text-decoration:none;transition:background .2s,color .2s;margin-bottom:2px}.nav-sub-item[data-v-4d2511c8]:hover,.nav-sub-item.active[data-v-4d2511c8]{background:#e0e7ef;color:#2563eb}.sidebar.collapsed .nav-sub-menu[data-v-4d2511c8]{display:none}.sidebar-footer[data-v-4d2511c8]{position:fixed;bottom:12px;padding:12px;display:flex;justify-content:space-between;align-items:center;z-index:101}.sidebar.collapsed .sidebar-footer[data-v-4d2511c8]{width:48px;justify-content:space-between}.toggle-btn[data-v-4d2511c8]{background:#f3f3f3a6;border:none;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .3s ease;padding:8px;margin-bottom:5px;border-radius:8px;width:40px;height:40px}.toggle-btn[data-v-4d2511c8]:hover{background:#eb3b5a;transform:scale(1.05)}.toggle-btn:hover .toggle-icon[data-v-4d2511c8]{color:#fff}.toggle-icon[data-v-4d2511c8]{width:20px;height:20px;color:#64748b;transition:all .3s ease}.sidebar-nav[data-v-4d2511c8]::-webkit-scrollbar{width:6px}.sidebar-nav[data-v-4d2511c8]::-webkit-scrollbar-track{background:#f1f5f9}.sidebar-nav[data-v-4d2511c8]::-webkit-scrollbar-thumb{background:#e0e7ef;border-radius:3px}.sidebar-nav[data-v-4d2511c8]::-webkit-scrollbar-thumb:hover{background:#cbd5e1}.device-status-options[data-v-539a2010]{display:flex;flex-direction:column;gap:12px}.option-group[data-v-539a2010]{display:flex;flex-direction:column;gap:4px}.option-label[data-v-539a2010]{font-size:12px;font-weight:500;color:#e2e8f0;display:flex;align-items:center;gap:8px}.option-input[data-v-539a2010]{padding:6px 10px;border:1px solid #4a5568;border-radius:4px;background:#2d3748;color:#e2e8f0;font-size:12px}.option-input[data-v-539a2010]:focus{outline:none;border-color:#3b82f6}input[type=checkbox][data-v-539a2010]{width:14px;height:14px;cursor:pointer}.device-status-widget[data-v-1da3791c]{display:flex;flex-direction:column;height:100%;background:#fff;border-radius:8px;overflow:hidden;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.widget-header[data-v-1da3791c]{display:flex;justify-content:space-between;align-items:center;padding:10px 12px;background:linear-gradient(135deg,#1e293b,#334155);color:#fff}.header-left[data-v-1da3791c]{display:flex;align-items:center;gap:8px}.header-icon[data-v-1da3791c]{color:#22c55e}.header-title[data-v-1da3791c]{font-size:13px;font-weight:600}.header-right[data-v-1da3791c]{display:flex;align-items:center;gap:8px}.online-badge[data-v-1da3791c]{background:#22c55e33;color:#22c55e;padding:2px 8px;border-radius:10px;font-size:11px;font-weight:600}.refresh-btn[data-v-1da3791c]{background:#ffffff1a;border:none;color:#fff;width:24px;height:24px;border-radius:4px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .2s}.refresh-btn[data-v-1da3791c]:hover{background:#fff3}.refresh-btn[data-v-1da3791c]:disabled{opacity:.5;cursor:not-allowed}.device-list[data-v-1da3791c]{flex:1;overflow-y:auto;padding:8px}.state-empty[data-v-1da3791c]{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;gap:8px;color:#94a3b8;font-size:12px}.device-item[data-v-1da3791c]{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:6px;margin-bottom:4px;background:#f8fafc;transition:background .15s}.device-item[data-v-1da3791c]:hover{background:#f1f5f9}.device-item.is-online[data-v-1da3791c]{background:#f0fdf4}.status-dot[data-v-1da3791c]{width:8px;height:8px;border-radius:50%;flex-shrink:0}.status-dot.online[data-v-1da3791c]{background:#22c55e;box-shadow:0 0 6px #22c55e80}.status-dot.offline[data-v-1da3791c]{background:#ef4444}.device-name[data-v-1da3791c]{flex:1;font-size:12px;font-weight:500;color:#1e293b;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.icon-online[data-v-1da3791c]{color:#22c55e}.icon-offline[data-v-1da3791c]{color:#ef4444}.widget-footer[data-v-1da3791c]{padding:8px 12px;border-top:1px solid #e2e8f0;text-align:center}.more-text[data-v-1da3791c]{font-size:11px;color:#64748b}.animate-spin[data-v-1da3791c]{animation:spin-1da3791c 1s linear infinite}@keyframes spin-1da3791c{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.unified-alarm-options[data-v-f08d07ed]{padding:16px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.options-title[data-v-f08d07ed]{font-size:16px;font-weight:600;color:#1e293b;margin:0 0 16px;padding-bottom:12px;border-bottom:1px solid #e2e8f0}.options-section[data-v-f08d07ed]{margin-bottom:20px}.section-title[data-v-f08d07ed]{font-size:13px;font-weight:600;color:#64748b;margin:0 0 12px;text-transform:uppercase;letter-spacing:.5px}.input-group[data-v-f08d07ed]{margin-bottom:12px}.input-label[data-v-f08d07ed]{display:block;font-size:13px;font-weight:500;color:#374151;margin-bottom:6px}.input-field[data-v-f08d07ed],.select-field[data-v-f08d07ed]{width:100%;padding:8px 12px;font-size:13px;border:1px solid #e2e8f0;border-radius:6px;background:#fff;color:#1e293b;transition:border-color .2s,box-shadow .2s}.input-field[data-v-f08d07ed]:focus,.select-field[data-v-f08d07ed]:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.select-field[data-v-f08d07ed]{cursor:pointer}.checkbox-item[data-v-f08d07ed]{display:flex;align-items:center;gap:8px}.checkbox-item input[type=checkbox][data-v-f08d07ed]{width:16px;height:16px;cursor:pointer;accent-color:#3b82f6}.checkbox-label[data-v-f08d07ed]{font-size:13px;color:#374151;cursor:pointer}.unified-alarm-widget[data-v-7f900eb2]{display:flex;flex-direction:column;height:100%;background:#fff;border-radius:8px;overflow:hidden;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.widget-header[data-v-7f900eb2]{display:flex;justify-content:space-between;align-items:center;padding:12px 14px;background:linear-gradient(135deg,#1e293b,#334155);color:#fff}.header-left[data-v-7f900eb2]{display:flex;align-items:center;gap:8px}.header-icon[data-v-7f900eb2]{color:#fbbf24}.header-title[data-v-7f900eb2]{font-size:14px;font-weight:600}.header-right[data-v-7f900eb2]{display:flex;align-items:center;gap:8px}.alarm-badge[data-v-7f900eb2]{min-width:24px;height:24px;padding:0 6px;border-radius:12px;font-size:12px;font-weight:600;display:flex;align-items:center;justify-content:center}.badge-success[data-v-7f900eb2]{background:#10b981;color:#fff}.badge-critical[data-v-7f900eb2]{background:#ef4444;color:#fff;animation:pulse-7f900eb2 1.5s infinite}.badge-warning[data-v-7f900eb2]{background:#f59e0b;color:#fff}.badge-info[data-v-7f900eb2]{background:#3b82f6;color:#fff}@keyframes pulse-7f900eb2{0%,to{opacity:1}50%{opacity:.7}}.refresh-btn[data-v-7f900eb2]{background:#ffffff1a;border:none;color:#fff;padding:4px 6px;border-radius:4px;cursor:pointer;transition:background .2s}.refresh-btn[data-v-7f900eb2]:hover:not(:disabled){background:#fff3}.refresh-btn[data-v-7f900eb2]:disabled{opacity:.5;cursor:not-allowed}.filter-row[data-v-7f900eb2]{padding:8px 12px;background:#f8fafc;border-bottom:1px solid #e2e8f0}.device-select[data-v-7f900eb2]{width:100%;padding:6px 10px;border:1px solid #e2e8f0;border-radius:6px;font-size:12px;background:#fff;cursor:pointer}.device-select[data-v-7f900eb2]:focus{outline:none;border-color:#3b82f6}.alarm-list[data-v-7f900eb2]{flex:1;overflow-y:auto;padding:8px}.state-empty[data-v-7f900eb2]{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:24px;color:#94a3b8;font-size:13px}.empty-icon[data-v-7f900eb2]{color:#10b981}.alarm-item[data-v-7f900eb2]{display:flex;align-items:flex-start;gap:10px;padding:10px 12px;background:#f8fafc;border-radius:8px;margin-bottom:6px;transition:background .15s;cursor:pointer;border-left:3px solid transparent}.alarm-item[data-v-7f900eb2]:hover{background:#f1f5f9}.alarm-item[data-v-7f900eb2]:last-child{margin-bottom:0}.alarm-item.alarm-unread[data-v-7f900eb2]{background:#fef3c7}.alarm-item.alarm-unread[data-v-7f900eb2]:hover{background:#fde68a}.alarm-content[data-v-7f900eb2]{flex:1;min-width:0}.alarm-message[data-v-7f900eb2]{font-size:13px;font-weight:500;color:#1e293b;margin-bottom:4px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.alarm-meta[data-v-7f900eb2]{display:flex;align-items:center;gap:6px;font-size:11px;color:#64748b;margin-bottom:4px}.alarm-value[data-v-7f900eb2]{font-size:11px;color:#475569}.alarm-value strong[data-v-7f900eb2]{color:#ef4444}.separator[data-v-7f900eb2]{color:#cbd5e1}.ack-btn[data-v-7f900eb2]{padding:4px 8px;background:#10b981;color:#fff;border:none;border-radius:4px;cursor:pointer;transition:background .2s;flex-shrink:0;align-self:center}.ack-btn[data-v-7f900eb2]:hover{background:#059669}.severity-critical[data-v-7f900eb2]{border-left-color:#ef4444}.severity-warning[data-v-7f900eb2]{border-left-color:#f59e0b}.severity-low[data-v-7f900eb2]{border-left-color:#3b82f6}.severity-info[data-v-7f900eb2]{border-left-color:#6b7280}.widget-footer[data-v-7f900eb2]{padding:8px 12px;background:#f1f1f1;border-top:1px solid #e2e8f0;text-align:center}.more-text[data-v-7f900eb2]{font-size:11px;color:#64748b}.animate-spin[data-v-7f900eb2]{animation:spin-7f900eb2 1s linear infinite}@keyframes spin-7f900eb2{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.modal-fade-enter-active[data-v-7f900eb2],.modal-fade-leave-active[data-v-7f900eb2]{transition:opacity .2s}.modal-fade-enter-from[data-v-7f900eb2],.modal-fade-leave-to[data-v-7f900eb2]{opacity:0}.unified-alarm-modal-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:99999}.unified-alarm-modal-container{background:#fff;border-radius:12px;width:90%;max-width:420px;max-height:80vh;overflow:hidden;box-shadow:0 20px 25px -5px #0000001a}.unified-alarm-modal-header{display:flex;align-items:center;gap:12px;padding:16px;background:linear-gradient(135deg,#1e293b,#334155);color:#fff}.unified-alarm-modal-header h3{flex:1;font-size:16px;font-weight:600;margin:0}.unified-alarm-modal-header .modal-icon-wrapper{width:36px;height:36px;background:#fbbf2433;border-radius:8px;display:flex;align-items:center;justify-content:center;color:#fbbf24}.unified-alarm-modal-header .modal-close-btn{background:#ffffff1a;border:none;color:#fff;padding:6px;border-radius:6px;cursor:pointer}.unified-alarm-modal-header .modal-close-btn:hover{background:#fff3}.unified-alarm-modal-container .modal-body{padding:16px}.unified-alarm-modal-container .detail-grid{display:grid;gap:12px}.unified-alarm-modal-container .detail-item{display:flex;justify-content:space-between;align-items:center;padding:8px 0;border-bottom:1px solid #f1f5f9}.unified-alarm-modal-container .detail-label{font-size:13px;color:#64748b}.unified-alarm-modal-container .detail-value{font-size:13px;font-weight:500;color:#1e293b}.unified-alarm-modal-container .detail-value.highlight{color:#ef4444;font-weight:600}.unified-alarm-modal-container .status-badge{padding:4px 10px;border-radius:12px;font-size:11px;font-weight:500}.unified-alarm-modal-container .status-badge.unread{background:#fef3c7;color:#92400e}.unified-alarm-modal-container .status-badge.read{background:#d1fae5;color:#065f46}.unified-alarm-modal-container .detail-message{margin-top:12px;padding:12px;background:#f8fafc;border-radius:8px;font-size:13px;color:#475569}.unified-alarm-modal-container .modal-footer{display:flex;justify-content:flex-end;gap:10px;padding:12px 16px;background:#f8fafc;border-top:1px solid #e2e8f0}.unified-alarm-modal-container .btn-cancel,.unified-alarm-modal-container .btn-action{display:flex;align-items:center;gap:6px;padding:8px 16px;border-radius:6px;font-size:13px;font-weight:500;cursor:pointer;transition:all .2s}.unified-alarm-modal-container .btn-cancel{background:#fff;border:1px solid #e2e8f0;color:#64748b}.unified-alarm-modal-container .btn-cancel:hover{background:#f1f5f9}.unified-alarm-modal-container .btn-action{background:linear-gradient(135deg,#3b82f6,#2563eb);border:none;color:#fff}.unified-alarm-modal-container .btn-action:hover{box-shadow:0 4px 12px #3b82f659}.chart-line-widget[data-v-26d9d237]{display:flex;flex-direction:column;width:100%;height:100%;min-height:0;background:#fff;border-radius:8px;border:1px solid #e2e8f0;overflow:hidden;box-sizing:border-box}.chart-header[data-v-26d9d237]{display:flex;justify-content:space-between;align-items:center;padding:10px 14px;background:linear-gradient(to bottom,#f8fafc,#fff);border-bottom:1px solid #f1f5f9;flex-shrink:0;flex-wrap:wrap;gap:8px}.header-left[data-v-26d9d237]{display:flex;flex-direction:column;gap:2px}.chart-title[data-v-26d9d237]{font-size:13px;font-weight:600;color:#1e293b}.header-right[data-v-26d9d237]{display:flex;align-items:center;gap:8px}.time-range-buttons[data-v-26d9d237]{display:flex;gap:3px;background:#f1f5f9;padding:3px;border-radius:6px}.range-btn[data-v-26d9d237]{padding:4px 10px;font-size:11px;font-weight:500;border:none;background:transparent;color:#64748b;border-radius:4px;cursor:pointer;transition:all .15s}.range-btn[data-v-26d9d237]:hover{color:#1e293b;background:#e2e8f0}.range-btn.active[data-v-26d9d237]{background:#1c78e6;color:#fff;box-shadow:0 1px 3px #1c78e64d}.date-controls[data-v-26d9d237]{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.control-group[data-v-26d9d237]{display:flex;align-items:center;gap:6px}.control-group label[data-v-26d9d237]{font-size:11px;font-weight:500;color:#64748b}.date-input[data-v-26d9d237]{padding:4px 8px;border:1px solid #d1d5db;border-radius:4px;font-size:11px;background:#fff;color:#374151;min-width:140px}.date-input[data-v-26d9d237]:focus{outline:none;border-color:#1c78e6;box-shadow:0 0 0 2px #1c78e61a}.refresh-btn[data-v-26d9d237]{display:flex;align-items:center;gap:4px;padding:5px 12px;background:#1c78e6;color:#fff;border:none;border-radius:4px;font-size:11px;font-weight:500;cursor:pointer;transition:background-color .2s}.refresh-btn[data-v-26d9d237]:hover{background:#1565c0}.chart-body[data-v-26d9d237]{flex:1;display:flex;flex-direction:column;padding:12px;min-height:0;overflow:hidden}.chart-container[data-v-26d9d237]{flex:1;position:relative;height:100%;min-height:120px;contain:layout style;transform:translateZ(0);will-change:contents;backface-visibility:hidden}.chart-canvas[data-v-26d9d237]{position:absolute!important;top:0;left:0;width:100%!important;height:100%!important;isolation:isolate}@media (max-width: 480px){.chart-header[data-v-26d9d237]{flex-direction:column;align-items:flex-start}.time-range-buttons[data-v-26d9d237]{width:100%;justify-content:space-between}.range-btn[data-v-26d9d237]{flex:1;text-align:center;padding:5px 4px}.date-controls[data-v-26d9d237]{flex-direction:column;align-items:flex-start;gap:6px;width:100%}.date-input[data-v-26d9d237]{width:100%}}.chart-options[data-v-f65a2c2d]{padding:12px;background:#1e293b}.option-group[data-v-f65a2c2d]{margin-bottom:16px}.group-title[data-v-f65a2c2d]{font-size:13px;font-weight:600;color:#f1f5f9;margin:0 0 12px;padding-bottom:8px;border-bottom:1px solid #334155}.option-section[data-v-f65a2c2d]{margin-bottom:14px;padding:10px;background:#0f172a;border-radius:6px;border:1px solid #334155}.section-title[data-v-f65a2c2d]{font-size:11px;font-weight:600;color:#94a3b8;margin:0 0 10px;text-transform:uppercase;letter-spacing:.5px}.option-item[data-v-f65a2c2d]{margin-bottom:10px}.option-item[data-v-f65a2c2d]:last-child{margin-bottom:0}.option-item label[data-v-f65a2c2d]{display:block;font-size:11px;font-weight:500;color:#cbd5e1;margin-bottom:4px}.option-row[data-v-f65a2c2d]{display:flex;gap:10px}.option-item.half[data-v-f65a2c2d]{flex:1}.checkbox-item[data-v-f65a2c2d]{display:flex;align-items:center;gap:6px}.checkbox-item label[data-v-f65a2c2d]{display:flex;align-items:center;gap:6px;font-size:11px;cursor:pointer;margin-bottom:0;color:#cbd5e1}.help-text[data-v-f65a2c2d]{font-size:10px;color:#64748b;font-style:italic;margin-top:2px;display:block}.input-field[data-v-f65a2c2d],.select-field[data-v-f65a2c2d]{width:100%;padding:6px 10px;border:1px solid #475569;border-radius:4px;font-size:12px;background:#1e293b;color:#f1f5f9;transition:border-color .2s,box-shadow .2s}.input-field[data-v-f65a2c2d]:focus,.select-field[data-v-f65a2c2d]:focus{outline:none;border-color:#1c78e6;box-shadow:0 0 0 2px #1c78e633}.input-field[data-v-f65a2c2d]::-moz-placeholder{color:#64748b}.input-field[data-v-f65a2c2d]::placeholder{color:#64748b}.select-field option[data-v-f65a2c2d]{background:#1e293b;color:#f1f5f9}.checkbox-field[data-v-f65a2c2d]{width:auto;margin:0;accent-color:#1C78E6}.color-field[data-v-f65a2c2d]{width:50px;height:32px;padding:2px;border:1px solid #475569;border-radius:4px;cursor:pointer;background:#1e293b}.series-management[data-v-f65a2c2d],.columns-management[data-v-f65a2c2d]{margin-top:12px}.section-header[data-v-f65a2c2d]{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.section-header label[data-v-f65a2c2d]{font-size:11px;font-weight:600;color:#cbd5e1}.btn-add[data-v-f65a2c2d]{display:flex;align-items:center;gap:4px;padding:5px 10px;background:#1c78e6;color:#fff;border:none;border-radius:4px;font-size:10px;cursor:pointer;transition:background-color .2s}.btn-add[data-v-f65a2c2d]:hover{background:#1565c0}.series-item[data-v-f65a2c2d],.column-item[data-v-f65a2c2d]{background:#1e293b;border:1px solid #475569;border-radius:6px;padding:10px;margin-bottom:8px}.series-header[data-v-f65a2c2d],.column-controls[data-v-f65a2c2d]{display:grid;gap:8px;align-items:center;margin-bottom:8px}.series-header[data-v-f65a2c2d]{grid-template-columns:1fr 50px 28px}.column-controls[data-v-f65a2c2d]{grid-template-columns:1fr 1fr 80px 28px}.series-name-input[data-v-f65a2c2d],.column-key-input[data-v-f65a2c2d],.column-title-input[data-v-f65a2c2d]{padding:5px 8px;border:1px solid #475569;border-radius:4px;font-size:11px;background:#0f172a;color:#f1f5f9}.series-name-input[data-v-f65a2c2d]:focus,.column-key-input[data-v-f65a2c2d]:focus,.column-title-input[data-v-f65a2c2d]:focus{outline:none;border-color:#1c78e6}.color-input[data-v-f65a2c2d]{width:42px;height:28px;padding:2px;border:1px solid #475569;border-radius:4px;cursor:pointer;background:#0f172a}.type-select[data-v-f65a2c2d],.column-type-select[data-v-f65a2c2d]{padding:5px 8px;border:1px solid #475569;border-radius:4px;font-size:10px;background:#0f172a;color:#f1f5f9}.btn-remove[data-v-f65a2c2d]{width:26px;height:26px;background:#dc2626;color:#fff;border:none;border-radius:4px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background-color .2s}.btn-remove[data-v-f65a2c2d]:hover{background:#b91c1c}.icon[data-v-f65a2c2d]{width:12px;height:12px}.series-data[data-v-f65a2c2d]{margin-top:8px}.series-data label[data-v-f65a2c2d]{font-size:10px;color:#94a3b8;margin-bottom:4px}.data-textarea[data-v-f65a2c2d]{width:100%;padding:6px 8px;border:1px solid #475569;border-radius:4px;font-size:10px;min-height:50px;resize:vertical;background:#0f172a;color:#f1f5f9}.data-textarea[data-v-f65a2c2d]:focus{outline:none;border-color:#1c78e6;box-shadow:0 0 0 2px #1c78e633}.date-range-section[data-v-f65a2c2d]{margin-top:8px;padding-top:8px;border-top:1px dashed #475569}.chart-table-widget[data-v-f4df6818]{display:flex;flex-direction:column;width:100%;height:100%;background:#fff;border-radius:8px;border:1px solid #e2e8f0;overflow:hidden}.chart-header[data-v-f4df6818]{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;border-bottom:1px solid #f1f5f9;background:#f9fafb}.chart-title[data-v-f4df6818]{font-size:14px;font-weight:600;color:#1e293b}.data-count[data-v-f4df6818]{font-size:12px;color:#64748b}.chart-controls[data-v-f4df6818]{display:flex;gap:8px;padding:10px 16px;border-bottom:1px solid #f1f5f9;background:#fafbfc}.control-item[data-v-f4df6818]{display:flex;flex:1;min-width:0}.search-input[data-v-f4df6818],.select-field[data-v-f4df6818]{flex:1;padding:6px 10px;border:1px solid #e2e8f0;border-radius:4px;font-size:12px;background:#fff;color:#475569}.search-input[data-v-f4df6818]:focus,.select-field[data-v-f4df6818]:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 2px #3b82f61a}.chart-body[data-v-f4df6818]{flex:1;overflow:hidden;display:flex;flex-direction:column}.table-container[data-v-f4df6818]{flex:1;overflow-y:auto;overflow-x:auto}.data-table[data-v-f4df6818]{width:100%;border-collapse:collapse;font-size:12px}.table-header[data-v-f4df6818]{background:#f8fafc;color:#475569;font-weight:600;padding:0;text-align:left;border-bottom:1px solid #e2e8f0;-webkit-user-select:none;-moz-user-select:none;user-select:none}.header-cell[data-v-f4df6818]{display:flex;align-items:center;gap:4px;padding:8px 10px;cursor:pointer;transition:background .2s}.header-cell[data-v-f4df6818]:hover{background:#f1f5f9}.sort-icon[data-v-f4df6818]{font-size:10px;color:#3b82f6}.col-index[data-v-f4df6818]{width:40px;text-align:center;background:#f8fafc;border-right:1px solid #e2e8f0}.table-row[data-v-f4df6818]{border-bottom:1px solid #f1f5f9;transition:background .15s}.table-row[data-v-f4df6818]:hover{background:#f9fafb}.table-cell[data-v-f4df6818]{padding:8px 10px;color:#475569;font-size:11px}.col-index[data-v-f4df6818]{width:40px;text-align:center;color:#94a3b8;background:#fafbfc;border-right:1px solid #f1f5f9}.time-cell[data-v-f4df6818]{color:#64748b;font-size:10px;font-family:Courier New,monospace}.value-cell[data-v-f4df6818]{font-weight:500;color:#1e293b}.empty-state[data-v-f4df6818]{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;height:200px;color:#94a3b8;font-size:12px}.chart-footer[data-v-f4df6818]{display:flex;justify-content:space-between;align-items:center;padding:10px 16px;border-top:1px solid #f1f5f9;background:#f9fafb;font-size:12px}.pagination-info[data-v-f4df6818]{color:#64748b}.pagination-controls[data-v-f4df6818]{display:flex;align-items:center;gap:8px}.pagination-btn[data-v-f4df6818]{width:28px;height:28px;display:flex;align-items:center;justify-content:center;border:1px solid #e2e8f0;background:#fff;color:#475569;border-radius:4px;cursor:pointer;font-size:12px;transition:all .2s}.pagination-btn[data-v-f4df6818]:hover:not(:disabled){border-color:#3b82f6;color:#3b82f6;background:#eff6ff}.pagination-btn[data-v-f4df6818]:disabled{opacity:.5;cursor:not-allowed}.page-number[data-v-f4df6818]{color:#64748b;font-size:11px;min-width:50px;text-align:center}@media (max-width: 768px){.chart-controls[data-v-f4df6818]{flex-direction:column}.control-item[data-v-f4df6818]{width:100%}.data-table[data-v-f4df6818]{font-size:10px}.table-cell[data-v-f4df6818],.header-cell[data-v-f4df6818]{padding:6px 8px}.col-index[data-v-f4df6818]{width:32px}.chart-header[data-v-f4df6818]{flex-direction:column;align-items:flex-start;gap:6px}}.circular-slider-widget[data-v-04e4970a]{display:flex;align-items:center;justify-content:center;padding:16px;height:100%}.slider-container[data-v-04e4970a]{display:flex;flex-direction:column;align-items:center;gap:12px}.slider-label[data-v-04e4970a]{font-size:14px;font-weight:500;text-align:center}.circular-slider[data-v-04e4970a]{position:relative;cursor:pointer}.slider-svg[data-v-04e4970a]{transform:rotate(0)}.track-circle[data-v-04e4970a]{opacity:.3}.progress-circle[data-v-04e4970a]{transition:stroke-dashoffset .1s ease;transform-origin:center;transform:rotate(-90deg)}.slider-thumb[data-v-04e4970a]{transition:all .1s ease;filter:drop-shadow(0 2px 4px rgba(0,0,0,.2))}.slider-thumb[data-v-04e4970a]:hover:not([style*="cursor: not-allowed"]){filter:drop-shadow(0 4px 8px rgba(0,0,0,.3))}.slider-thumb[data-v-04e4970a]:active:not([style*="cursor: not-allowed"]){cursor:grabbing!important}.center-value[data-v-04e4970a]{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);text-align:center;pointer-events:none}.current-value[data-v-04e4970a]{font-size:20px;font-weight:700;display:block}.value-unit[data-v-04e4970a]{font-size:12px;color:#6b7280;font-weight:500}.range-labels[data-v-04e4970a]{position:relative;width:100%;height:100%}.min-label[data-v-04e4970a],.max-label[data-v-04e4970a]{position:absolute;font-weight:500;white-space:nowrap}.control-options[data-v-77afdc2b]{display:flex;flex-direction:column;gap:8px;padding:12px;font-size:13px}.options-section[data-v-77afdc2b]{background:#f9fafb;border-radius:8px;padding:12px;display:flex;flex-direction:column;gap:10px}.section-title[data-v-77afdc2b]{margin:0 0 4px;font-size:12px;font-weight:600;color:#6b7280;text-transform:uppercase;letter-spacing:.5px}.input-group[data-v-77afdc2b]{display:flex;flex-direction:column;gap:4px}.input-label[data-v-77afdc2b]{font-size:12px;font-weight:500;color:#374151}.input-field[data-v-77afdc2b]{padding:8px 10px;border:1px solid #d1d5db;border-radius:6px;font-size:13px;background:#fff;transition:all .2s}.input-field[data-v-77afdc2b]:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.input-row[data-v-77afdc2b]{display:flex;gap:8px;align-items:center}.input-row .input-field[data-v-77afdc2b]{flex:1}.input-small[data-v-77afdc2b]{width:70px!important;flex:none!important}.range-input[data-v-77afdc2b]{flex:1;height:6px;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:#e5e7eb;border-radius:3px;outline:none}.range-input[data-v-77afdc2b]::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:16px;height:16px;background:#3b82f6;border-radius:50%;cursor:pointer}.value-display[data-v-77afdc2b]{font-size:12px;color:#6b7280;text-align:center;margin-top:4px;font-weight:500}.color-row[data-v-77afdc2b]{display:flex;flex-wrap:wrap;gap:12px}.color-item[data-v-77afdc2b]{display:flex;flex-direction:column;align-items:center;gap:4px}.color-label[data-v-77afdc2b]{font-size:11px;color:#6b7280}.color-picker[data-v-77afdc2b]{width:40px;height:32px;border:1px solid #d1d5db;border-radius:6px;cursor:pointer;padding:2px;background:#fff}.color-picker[data-v-77afdc2b]::-webkit-color-swatch-wrapper{padding:0}.color-picker[data-v-77afdc2b]::-webkit-color-swatch{border-radius:4px;border:none}.checkbox-group[data-v-77afdc2b]{display:flex;flex-wrap:wrap;gap:8px 16px}.checkbox-item[data-v-77afdc2b]{display:flex;align-items:center;gap:6px;font-size:12px;color:#374151;cursor:pointer}.checkbox-item input[type=checkbox][data-v-77afdc2b]{width:16px;height:16px;accent-color:#3b82f6;cursor:pointer}.checkbox-item span[data-v-77afdc2b]{-webkit-user-select:none;-moz-user-select:none;user-select:none}.slider-target,.slider-target *{-webkit-touch-callout:none;-webkit-tap-highlight-color:rgba(0,0,0,0);box-sizing:border-box;touch-action:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.slider-target{position:relative}.slider-base,.slider-connects{height:100%;position:relative;width:100%;z-index:1}.slider-connects{overflow:hidden;z-index:0}.slider-connect,.slider-origin{height:100%;position:absolute;right:0;top:0;transform-origin:0 0;transform-style:flat;width:100%;will-change:transform;z-index:1}.slider-txt-dir-rtl.slider-horizontal .slider-origin{left:0;right:auto}.slider-vertical .slider-origin{top:-100%;width:0}.slider-horizontal .slider-origin{height:0}.slider-handle{backface-visibility:hidden;position:absolute}.slider-touch-area{height:100%;width:100%}.slider-state-tap .slider-connect,.slider-state-tap .slider-origin{transition:transform .3s}.slider-state-drag *{cursor:inherit!important}.slider-tooltip-drag .slider-tooltip,.slider-tooltip-focus .slider-tooltip{display:none!important}.slider-tooltip-drag .slider-active .slider-tooltip,.slider-tooltip-drag.slider-state-drag .slider-tooltip:not(.slider-tooltip-hidden),.slider-tooltip-focus.slider-focused .slider-tooltip:not(.slider-tooltip-hidden){display:block!important}.slider-horizontal{height:var(--slider-height,6px)}.slider-horizontal .slider-handle{height:var(--slider-handle-height,16px);right:calc(var(--slider-handle-width, 16px)/2*-1);top:calc((var(--slider-handle-height, 16px) - var(--slider-height, 6px))/2*-1 + -1px);width:var(--slider-handle-width,16px)}.slider-vertical{height:var(--slider-vertical-height,300px);width:var(--slider-height,6px)}.slider-vertical .slider-handle{bottom:calc(var(--slider-handle-width, 16px)/2*-1);height:var(--slider-handle-width,16px);right:calc((var(--slider-handle-height, 16px) - var(--slider-height, 6px))/2*-1 + -1px);width:var(--slider-handle-height,16px)}.slider-txt-dir-rtl.slider-horizontal .slider-handle{left:calc(var(--slider-handle-width, 16px)/2*-1);right:auto}.slider-base{background-color:var(--slider-bg,#d1d5db)}.slider-base,.slider-connects{border-radius:var(--slider-radius,9999px)}.slider-connect{background:var(--slider-connect-bg,#10b981);cursor:pointer}.slider-draggable{cursor:ew-resize}.slider-vertical .slider-draggable{cursor:ns-resize}.slider-handle{background:var(--slider-handle-bg,#fff);border:var(--slider-handle-border,0);border-radius:var(--slider-handle-radius,9999px);box-shadow:var(--slider-handle-shadow,.5px .5px 2px 1px rgba(0,0,0,.32));cursor:grab;height:var(--slider-handle-height,16px);width:var(--slider-handle-width,16px)}.slider-handle:focus{box-shadow:0 0 0 var(--slider-handle-ring-width,3px) var(--slider-handle-ring-color,rgba(16,185,129,.188)),var(--slider-handle-shadow,.5px .5px 2px 1px rgba(0,0,0,.32));outline:none}.slider-active{box-shadow:var(--slider-handle-shadow-active,.5px .5px 2px 1px rgba(0,0,0,.42));cursor:grabbing}[disabled] .slider-connect{background:var(--slider-connect-bg-disabled,#9ca3af)}[disabled] .slider-handle,[disabled].slider-handle,[disabled].slider-target{cursor:not-allowed}[disabled] .slider-tooltip{background:var(--slider-tooltip-bg-disabled,#9ca3af);border-color:var(--slider-tooltip-bg-disabled,#9ca3af)}.slider-tooltip{background:var(--slider-tooltip-bg,#10b981);border:1px solid var(--slider-tooltip-bg,#10b981);border-radius:var(--slider-tooltip-radius,5px);color:var(--slider-tooltip-color,#fff);display:block;font-size:var(--slider-tooltip-font-size,.875rem);font-weight:var(--slider-tooltip-font-weight,600);line-height:var(--slider-tooltip-line-height,1.25rem);min-width:var(--slider-tooltip-min-width,20px);padding:var(--slider-tooltip-py,2px) var(--slider-tooltip-px,6px);position:absolute;text-align:center;white-space:nowrap}.slider-horizontal .slider-tooltip-top{bottom:calc(var(--slider-handle-height, 16px) + var(--slider-tooltip-arrow-size, 5px) + var(--slider-tooltip-distance, 3px));left:50%;transform:translate(-50%)}.slider-horizontal .slider-tooltip-top:before{border:var(--slider-tooltip-arrow-size,5px) solid transparent;border-top-color:inherit;bottom:calc(var(--slider-tooltip-arrow-size, 5px)*-2);content:"";height:0;left:50%;position:absolute;transform:translate(-50%);width:0}.slider-horizontal .slider-tooltip-bottom{left:50%;top:calc(var(--slider-handle-height, 16px) + var(--slider-tooltip-arrow-size, 5px) + var(--slider-tooltip-distance, 3px));transform:translate(-50%)}.slider-horizontal .slider-tooltip-bottom:before{border:var(--slider-tooltip-arrow-size,5px) solid transparent;border-bottom-color:inherit;content:"";height:0;left:50%;position:absolute;top:calc(var(--slider-tooltip-arrow-size, 5px)*-2);transform:translate(-50%);width:0}.slider-vertical .slider-tooltip-left{right:calc(var(--slider-handle-height, 16px) + var(--slider-tooltip-arrow-size, 5px) + var(--slider-tooltip-distance, 3px));top:50%;transform:translateY(-50%)}.slider-vertical .slider-tooltip-left:before{border:var(--slider-tooltip-arrow-size,5px) solid transparent;border-left-color:inherit;content:"";height:0;position:absolute;right:calc(var(--slider-tooltip-arrow-size, 5px)*-2);top:50%;transform:translateY(-50%);width:0}.slider-vertical .slider-tooltip-right{left:calc(var(--slider-handle-height, 16px) + var(--slider-tooltip-arrow-size, 5px) + var(--slider-tooltip-distance, 3px));top:50%;transform:translateY(-50%)}.slider-vertical .slider-tooltip-right:before{border:var(--slider-tooltip-arrow-size,5px) solid transparent;border-right-color:inherit;content:"";height:0;left:calc(var(--slider-tooltip-arrow-size, 5px)*-2);position:absolute;top:50%;transform:translateY(-50%);width:0}.slider-horizontal .slider-origin>.slider-tooltip{left:auto;transform:translate(50%)}.slider-horizontal .slider-origin>.slider-tooltip-top{bottom:calc(var(--slider-tooltip-arrow-size, 5px) + (var(--slider-handle-height, 16px) - var(--slider-height, 6px))/2 + var(--slider-tooltip-distance, 3px) + 1px)}.slider-horizontal .slider-origin>.slider-tooltip-bottom{top:calc(var(--slider-tooltip-arrow-size, 5px) + (var(--slider-handle-height, 16px) - var(--slider-height, 6px))/2 + var(--slider-tooltip-distance, 3px) + var(--slider-height, 6px) - 1px)}.slider-vertical .slider-origin>.slider-tooltip{top:auto;transform:translateY(calc((var(--slider-tooltip-line-height, 1.25rem) - var(--slider-tooltip-py, 2px))*-1 + 1px))}.slider-vertical .slider-origin>.slider-tooltip-left{right:calc(var(--slider-tooltip-arrow-size, 5px) + var(--slider-height, 6px) + (var(--slider-handle-height, 16px) - var(--slider-height, 6px))/2 + var(--slider-tooltip-distance, 3px) - 1px)}.slider-vertical .slider-origin>.slider-tooltip-right{left:calc(var(--slider-tooltip-arrow-size, 5px) + var(--slider-height, 6px) + (var(--slider-handle-height, 16px) - var(--slider-height, 6px))/2 + var(--slider-tooltip-distance, 3px) - var(--slider-height, 6px) + 1px)}.horizontal-slider-widget[data-v-c1712498]{display:flex;align-items:center;justify-content:center;padding:16px;height:100%}.slider-container[data-v-c1712498]{display:flex;flex-direction:column;gap:12px;width:100%;max-width:300px}.slider-label[data-v-c1712498]{font-size:14px;font-weight:500;text-align:center;margin-bottom:4px}.slider-content[data-v-c1712498]{display:flex;align-items:center;gap:12px;width:100%}.vue-slider-wrapper[data-v-c1712498]{flex:1;padding:0 4px}.slider-value[data-v-c1712498]{font-size:12px;color:#64748b;font-weight:500;min-width:32px;text-align:center}.value-display[data-v-c1712498]{text-align:center;margin-top:4px}.current-value[data-v-c1712498]{font-size:16px;font-weight:600}[data-v-c1712498] .vue-slider{padding:4px 0!important}[data-v-c1712498] .vue-slider-rail,[data-v-c1712498] .vue-slider-process{border-radius:3px!important}[data-v-c1712498] .vue-slider-dot-handle{border-radius:50%!important;transition:all .3s ease!important}[data-v-c1712498] .vue-slider-dot-handle:hover{transform:scale(1.1)!important}[data-v-c1712498] .vue-slider-dot-tooltip{font-size:12px!important;padding:4px 8px!important;border-radius:4px!important}[data-v-c1712498] .vue-slider-mark{z-index:1!important}[data-v-c1712498] .vue-slider-mark-step{width:2px!important;height:2px!important;border-radius:50%!important;background-color:#d1d5db!important}[data-v-c1712498] .vue-slider-mark-label{font-size:10px!important;color:#6b7280!important;margin-top:6px!important}@media (max-width: 480px){.slider-container[data-v-c1712498]{max-width:250px}.slider-value[data-v-c1712498]{font-size:11px;min-width:28px}.current-value[data-v-c1712498]{font-size:14px}}.vertical-slider-widget[data-v-ea342970]{display:flex;align-items:center;justify-content:center;padding:16px;height:100%}.slider-container[data-v-ea342970]{display:flex;flex-direction:column;align-items:center;gap:12px;height:100%;max-height:300px}.slider-label[data-v-ea342970]{font-size:14px;font-weight:500;text-align:center;margin-bottom:4px}.slider-content[data-v-ea342970]{display:flex;flex-direction:column;align-items:center;gap:12px;height:100%;flex:1}.vue-slider-wrapper[data-v-ea342970]{flex:1;display:flex;justify-content:center;padding:4px 0}.slider-value[data-v-ea342970]{font-size:12px;color:#64748b;font-weight:500;text-align:center;white-space:nowrap}.value-display[data-v-ea342970]{text-align:center;margin-top:4px}.current-value[data-v-ea342970]{font-size:16px;font-weight:600}[data-v-ea342970] .vue-slider{padding:0 4px!important}[data-v-ea342970] .vue-slider-rail,[data-v-ea342970] .vue-slider-process{border-radius:3px!important}[data-v-ea342970] .vue-slider-dot-handle{border-radius:50%!important;transition:all .3s ease!important}[data-v-ea342970] .vue-slider-dot-handle:hover{transform:scale(1.1)!important}[data-v-ea342970] .vue-slider-dot-tooltip{font-size:12px!important;padding:4px 8px!important;border-radius:4px!important}[data-v-ea342970] .vue-slider-mark{z-index:1!important}[data-v-ea342970] .vue-slider-mark-step{width:2px!important;height:2px!important;border-radius:50%!important;background-color:#d1d5db!important}[data-v-ea342970] .vue-slider-mark-label{font-size:10px!important;color:#6b7280!important;margin-left:6px!important}@media (max-width: 480px){.slider-container[data-v-ea342970]{max-height:250px}.slider-value[data-v-ea342970]{font-size:11px}.current-value[data-v-ea342970]{font-size:14px}}.gauge-svg[data-v-1ae9ef55],.gauge-svg[data-v-80cafa18],.gauge-svg[data-v-cb2376c2]{width:100%;height:100%}.gauge-options[data-v-57ee73b7]{display:flex;flex-direction:column;gap:12px;padding:12px}.input-group[data-v-57ee73b7]{display:flex;flex-direction:column;gap:6px}.input-field[data-v-57ee73b7]{padding:8px;border:1px solid #d1d5db;border-radius:6px}.range-input[data-v-57ee73b7]{width:100%}.color-picker-input[data-v-57ee73b7]{width:48px;height:32px;border:1px solid #d1d5db}.gauge-widget[data-v-3aa26ced]{width:100%;height:100%;display:flex;align-items:center;justify-content:center}.gauge-container[data-v-3aa26ced]{position:relative;width:auto;height:auto}.gauge-svg-wrapper[data-v-3aa26ced]{width:100%;height:100%}.gauge-value[data-v-3aa26ced]{position:absolute;bottom:8px;left:50%;transform:translate(-50%);text-align:center;display:flex;align-items:baseline;gap:2px;z-index:10}.gauge-number[data-v-3aa26ced]{font-weight:700}.gauge-unit[data-v-3aa26ced]{font-weight:400}.gauge-center-value[data-v-3aa26ced]{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;z-index:10;pointer-events:none}.gauge-center-value .gauge-number[data-v-3aa26ced]{line-height:1}.gauge-center-inline[data-v-3aa26ced]{display:flex;align-items:baseline;gap:6px}.gauge-center-inline .gauge-unit[data-v-3aa26ced]{opacity:.9}.gauge-svg[data-v-5d7bbb89],.gauge-svg[data-v-d53fbf79]{width:100%;height:100%}.gauge-container[data-v-6ee37bfa]{width:100%;height:100%;display:flex;align-items:center;justify-content:center;min-width:20px;min-height:40px}.gauge-bar-container[data-v-6ee37bfa]{width:100%;height:100%;display:flex;align-items:center;justify-content:center;padding:max(2px,1%);box-sizing:border-box}.gauge-bar-bg[data-v-6ee37bfa]{width:max(0px,100%);height:100%;position:relative;border-radius:max(2px,1%);background-color:#f1f5f9;border:1px solid #e2e8f0;display:flex;align-items:flex-end;overflow:hidden;box-sizing:border-box}.gauge-bar-fill[data-v-6ee37bfa]{width:100%;background-color:#3b82f6;border-radius:0 0 max(1px,.5%) max(1px,.5%);min-height:2px;position:relative}.map-options[data-v-6dfa9d07]{padding:16px}.option-group[data-v-6dfa9d07]{margin-bottom:24px}.group-title[data-v-6dfa9d07]{font-size:14px;font-weight:600;color:#1f2937;margin:0 0 16px;padding-bottom:8px;border-bottom:1px solid #e5e7eb}.sub-title[data-v-6dfa9d07]{font-size:13px;font-weight:600;color:#374151;margin:16px 0 12px}.option-item[data-v-6dfa9d07]{margin-bottom:12px}.option-item label[data-v-6dfa9d07]{display:block;font-size:12px;font-weight:500;color:#374151;margin-bottom:4px}.input-field[data-v-6dfa9d07],.select-field[data-v-6dfa9d07]{width:100%;padding:8px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:13px}.input-field[data-v-6dfa9d07]:focus,.select-field[data-v-6dfa9d07]:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.range-field[data-v-6dfa9d07]{width:calc(100% - 50px);margin-right:8px}.range-value[data-v-6dfa9d07]{font-size:12px;color:#6b7280;min-width:40px}.color-field[data-v-6dfa9d07]{width:60px;height:36px;padding:2px;border:1px solid #d1d5db;border-radius:6px;cursor:pointer}.coordinate-inputs[data-v-6dfa9d07]{display:grid;grid-template-columns:1fr 1fr;gap:8px}.coordinate-input[data-v-6dfa9d07]{padding:6px 8px;border:1px solid #d1d5db;border-radius:4px;font-size:12px}.checkbox-item[data-v-6dfa9d07]{margin-bottom:8px}.checkbox-item label[data-v-6dfa9d07]{display:flex;align-items:center;gap:8px;cursor:pointer}.checkbox-field[data-v-6dfa9d07]{width:auto;margin:0}.display-options[data-v-6dfa9d07]{background:#f9fafb;padding:12px;border-radius:6px;margin-top:12px}.markers-management[data-v-6dfa9d07]{margin-top:16px}.section-header[data-v-6dfa9d07]{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.section-header label[data-v-6dfa9d07]{font-size:12px;font-weight:500;color:#374151}.btn-add[data-v-6dfa9d07]{display:flex;align-items:center;gap:4px;padding:6px 12px;background:#3b82f6;color:#fff;border:none;border-radius:4px;font-size:11px;cursor:pointer;transition:background-color .2s}.btn-add[data-v-6dfa9d07]:hover{background:#2563eb}.marker-item[data-v-6dfa9d07]{background:#f9fafb;border:1px solid #e5e7eb;border-radius:6px;padding:12px;margin-bottom:8px}.marker-header[data-v-6dfa9d07]{display:grid;grid-template-columns:28px 1fr 40px 28px;gap:8px;align-items:center;margin-bottom:8px}.marker-index[data-v-6dfa9d07]{font-size:11px;font-weight:600;color:#6b7280;text-align:center}.marker-label-input[data-v-6dfa9d07]{padding:6px 8px;border:1px solid #d1d5db;border-radius:4px;font-size:12px}.color-input[data-v-6dfa9d07]{width:36px;height:28px;padding:2px;border:1px solid #d1d5db;border-radius:4px;cursor:pointer}.btn-remove[data-v-6dfa9d07]{width:28px;height:28px;background:#ef4444;color:#fff;border:none;border-radius:4px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background-color .2s}.btn-remove[data-v-6dfa9d07]:hover{background:#dc2626}.icon[data-v-6dfa9d07]{width:14px;height:14px}.marker-coordinates[data-v-6dfa9d07]{display:grid;grid-template-columns:1fr 1fr 80px;gap:8px;margin-bottom:12px}.coord-group[data-v-6dfa9d07]{display:flex;flex-direction:column;gap:2px}.coord-group label[data-v-6dfa9d07]{font-size:10px;color:#6b7280;margin:0}.size-input[data-v-6dfa9d07]{padding:6px 8px;border:1px solid #d1d5db;border-radius:4px;font-size:12px}.empty-markers[data-v-6dfa9d07]{text-align:center;padding:24px 16px;background:#f9fafb;border:2px dashed #e5e7eb;border-radius:8px;color:#6b7280}.empty-markers .empty-icon[data-v-6dfa9d07]{color:#d1d5db;margin-bottom:8px}.empty-markers p[data-v-6dfa9d07]{margin:0 0 4px;font-weight:500;color:#374151}.empty-markers span[data-v-6dfa9d07]{font-size:12px}.marker-device-section[data-v-6dfa9d07]{margin:12px 0;padding:12px;background:#f0f9ff;border:1px solid #bae6fd;border-radius:6px}.marker-device-section .option-item[data-v-6dfa9d07]{margin-bottom:8px}.marker-device-section .option-item[data-v-6dfa9d07]:last-child{margin-bottom:0}.attributes-section[data-v-6dfa9d07]{margin-top:12px}.attributes-section>label[data-v-6dfa9d07]{display:block;font-size:11px;font-weight:500;color:#374151;margin-bottom:8px}.attributes-list[data-v-6dfa9d07]{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin-bottom:12px;max-height:150px;overflow-y:auto;padding:8px;background:#fff;border:1px solid #e5e7eb;border-radius:4px}.attribute-checkbox[data-v-6dfa9d07]{display:flex;align-items:center;gap:6px;font-size:11px;cursor:pointer;padding:4px;border-radius:4px;transition:background .15s}.attribute-checkbox[data-v-6dfa9d07]:hover{background:#f3f4f6}.attribute-checkbox input[type=checkbox][data-v-6dfa9d07]{width:14px;height:14px;cursor:pointer}.attr-name[data-v-6dfa9d07]{color:#1f2937;font-weight:500}.attr-key[data-v-6dfa9d07]{color:#9ca3af;font-size:10px}.display-format[data-v-6dfa9d07]{margin-top:8px}.display-format label[data-v-6dfa9d07]{display:block;font-size:11px;color:#374151;margin-bottom:4px}.display-format .select-field[data-v-6dfa9d07]{font-size:12px;padding:6px 10px}.marker-popup[data-v-6dfa9d07]{margin-top:8px}.marker-popup label[data-v-6dfa9d07]{display:block;font-size:11px;color:#6b7280;margin-bottom:4px}.popup-textarea[data-v-6dfa9d07]{width:100%;padding:8px;border:1px solid #d1d5db;border-radius:4px;font-size:12px;resize:vertical;min-height:40px}.popup-textarea[data-v-6dfa9d07]:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 2px #3b82f61a}.center-coordinate-display[data-v-6dfa9d07]{display:flex;flex-direction:column;gap:8px}.coordinate-info[data-v-6dfa9d07]{display:flex;align-items:center;gap:8px;padding:8px 12px;background:#f9fafb;border:1px solid #e5e7eb;border-radius:6px;font-family:Courier New,monospace;font-size:12px}.coord-label[data-v-6dfa9d07]{color:#6b7280;font-weight:500}.coord-value[data-v-6dfa9d07]{color:#1f2937;font-weight:600;min-width:70px}.select-center-btn[data-v-6dfa9d07]{display:flex;align-items:center;justify-content:center;gap:6px;padding:10px 16px;background:linear-gradient(135deg,#3b82f6,#2563eb);color:#fff;border:none;border-radius:6px;font-size:13px;font-weight:500;cursor:pointer;transition:all .2s}.select-center-btn[data-v-6dfa9d07]:hover{background:linear-gradient(135deg,#2563eb,#1d4ed8);box-shadow:0 2px 8px #3b82f64d}.select-center-btn.active[data-v-6dfa9d07]{background:linear-gradient(135deg,#f59e0b,#d97706);animation:pulse-btn-6dfa9d07 1.5s infinite}@keyframes pulse-btn-6dfa9d07{0%,to{opacity:1}50%{opacity:.8}}.hint-text[data-v-6dfa9d07]{margin:0;padding:8px 12px;background:#fef3c7;border:1px solid #fcd34d;border-radius:6px;font-size:11px;color:#92400e}.marker-coordinates-select[data-v-6dfa9d07]{display:flex;flex-direction:column;gap:8px;padding:8px;background:#f9fafb;border-radius:6px;margin-top:8px}.coordinate-info-row[data-v-6dfa9d07]{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.coordinate-info-row .coord-label[data-v-6dfa9d07]{font-size:11px;color:#6b7280;font-weight:500}.coordinate-info-row .coord-value[data-v-6dfa9d07]{color:#1f2937;font-weight:600;font-size:12px;min-width:60px}.size-input-small[data-v-6dfa9d07]{width:50px;padding:4px 6px;border:1px solid #d1d5db;border-radius:4px;font-size:11px;text-align:center}.select-marker-btn[data-v-6dfa9d07]{display:flex;align-items:center;justify-content:center;gap:6px;padding:8px 12px;background:linear-gradient(135deg,#10b981,#059669);color:#fff;border:none;border-radius:6px;font-size:12px;font-weight:500;cursor:pointer;transition:all .2s}.select-marker-btn[data-v-6dfa9d07]:hover{background:linear-gradient(135deg,#059669,#047857);box-shadow:0 2px 8px #10b9814d}.select-marker-btn.active[data-v-6dfa9d07]{background:linear-gradient(135deg,#f59e0b,#d97706);animation:pulse-btn-6dfa9d07 1.5s infinite}.simple-map-widget[data-v-44830349]{width:100%;height:100%;background:#1e293b;border-radius:8px;overflow:hidden;display:flex;flex-direction:column;position:relative}.map-header[data-v-44830349]{display:flex;justify-content:space-between;align-items:center;padding:8px 12px;border-bottom:1px solid #334155;background:#0f172a;flex-shrink:0}.map-title[data-v-44830349]{font-size:13px;font-weight:600;color:#e2e8f0;margin:0}.map-controls[data-v-44830349]{display:flex;gap:4px}.control-btn[data-v-44830349]{width:26px;height:26px;border:none;background:#334155;border-radius:4px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s ease;color:#94a3b8}.control-btn[data-v-44830349]:hover{background:#475569;color:#e2e8f0}.control-btn.active[data-v-44830349]{background:#3b82f6;color:#fff}.map-container[data-v-44830349]{flex:1;position:relative;min-height:0;width:100%;height:100%}.map-loading[data-v-44830349],.map-error[data-v-44830349]{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;background:#1e293b;color:#94a3b8;font-size:13px;z-index:1000}.loading-spinner[data-v-44830349]{width:32px;height:32px;border:3px solid #334155;border-top-color:#3b82f6;border-radius:50%;animation:spin-44830349 1s linear infinite}@keyframes spin-44830349{to{transform:rotate(360deg)}}.error-icon[data-v-44830349]{color:#ef4444}.retry-btn[data-v-44830349]{padding:8px 16px;background:#3b82f6;color:#fff;border:none;border-radius:6px;font-size:12px;cursor:pointer;transition:background .2s}.retry-btn[data-v-44830349]:hover{background:#2563eb}.add-marker-hint[data-v-44830349]{position:absolute;top:10px;left:50%;transform:translate(-50%);display:flex;align-items:center;gap:8px;padding:8px 16px;background:#3b82f6f2;color:#fff;border-radius:20px;font-size:12px;z-index:1000;box-shadow:0 4px 12px #0000004d}.cancel-btn[data-v-44830349]{padding:4px 8px;background:#fff3;color:#fff;border:none;border-radius:4px;font-size:11px;cursor:pointer}.cancel-btn[data-v-44830349]:hover{background:#ffffff4d}.marker-modal-overlay[data-v-44830349]{position:absolute;inset:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:2000}.marker-modal[data-v-44830349]{background:#1e293b;border-radius:12px;width:90%;max-width:360px;box-shadow:0 20px 40px #00000080;overflow:hidden}.modal-header[data-v-44830349]{display:flex;justify-content:space-between;align-items:center;padding:14px 16px;background:#0f172a;border-bottom:1px solid #334155}.modal-header h4[data-v-44830349]{margin:0;font-size:14px;font-weight:600;color:#e2e8f0}.close-btn[data-v-44830349]{width:28px;height:28px;border:none;background:transparent;color:#94a3b8;cursor:pointer;border-radius:4px;display:flex;align-items:center;justify-content:center}.close-btn[data-v-44830349]:hover{background:#334155;color:#e2e8f0}.modal-body[data-v-44830349]{padding:16px}.form-group[data-v-44830349]{margin-bottom:12px}.form-group label[data-v-44830349]{display:block;font-size:11px;font-weight:500;color:#94a3b8;margin-bottom:4px;text-transform:uppercase;letter-spacing:.5px}.form-row[data-v-44830349]{display:flex;gap:12px}.form-row .form-group[data-v-44830349]{flex:1}.form-input[data-v-44830349],.form-textarea[data-v-44830349]{width:100%;padding:8px 10px;background:#0f172a;border:1px solid #334155;border-radius:6px;color:#e2e8f0;font-size:13px;outline:none;transition:border-color .2s}.form-input[data-v-44830349]:focus,.form-textarea[data-v-44830349]:focus{border-color:#3b82f6}.form-textarea[data-v-44830349]{min-height:60px;resize:vertical}.form-color[data-v-44830349]{width:40px;height:32px;padding:0;border:none;border-radius:6px;cursor:pointer}.form-range[data-v-44830349]{flex:1;height:4px;background:#334155;border-radius:2px;outline:none;cursor:pointer}.range-value[data-v-44830349]{font-size:11px;color:#94a3b8;margin-left:8px}.modal-footer[data-v-44830349]{display:flex;justify-content:flex-end;gap:8px;padding:12px 16px;background:#0f172a;border-top:1px solid #334155}.btn-cancel[data-v-44830349],.btn-confirm[data-v-44830349]{padding:8px 14px;border:none;border-radius:6px;font-size:12px;font-weight:500;cursor:pointer;display:flex;align-items:center;gap:6px;transition:all .2s}.btn-cancel[data-v-44830349]{background:#334155;color:#94a3b8}.btn-cancel[data-v-44830349]:hover{background:#475569;color:#e2e8f0}.btn-confirm[data-v-44830349]{background:#3b82f6;color:#fff}.btn-confirm[data-v-44830349]:hover{background:#2563eb}.map-legend[data-v-44830349]{padding:8px 12px;background:#0f172a;border-top:1px solid #334155;flex-shrink:0;max-height:120px;overflow-y:auto}.legend-header[data-v-44830349]{display:flex;align-items:center;gap:6px;margin-bottom:6px;font-size:10px;font-weight:600;color:#94a3b8;text-transform:uppercase;letter-spacing:.5px}.legend-icon[data-v-44830349]{color:#64748b}.legend-items[data-v-44830349]{display:flex;flex-direction:column;gap:4px}.legend-item[data-v-44830349]{display:flex;align-items:center;gap:8px;font-size:11px;padding:4px 6px;border-radius:4px;transition:background .2s}.legend-item[data-v-44830349]:hover{background:#334155}.legend-marker[data-v-44830349]{width:8px;height:8px;border-radius:50%;border:1.5px solid rgba(255,255,255,.3);flex-shrink:0}.legend-label[data-v-44830349]{color:#e2e8f0;font-weight:500;cursor:pointer;flex:1}.legend-label[data-v-44830349]:hover{color:#3b82f6}.legend-remove[data-v-44830349]{width:20px;height:20px;border:none;background:transparent;color:#64748b;cursor:pointer;border-radius:4px;display:flex;align-items:center;justify-content:center;opacity:0;transition:all .2s}.legend-item:hover .legend-remove[data-v-44830349]{opacity:1}.legend-remove[data-v-44830349]:hover{background:#ef4444;color:#fff}.map-stats[data-v-44830349]{display:flex;justify-content:space-around;padding:6px 12px;background:#0f172a;border-top:1px solid #334155;flex-shrink:0}.stat-item[data-v-44830349]{display:flex;flex-direction:column;align-items:center;gap:2px}.stat-label[data-v-44830349]{font-size:9px;color:#64748b;text-transform:uppercase;letter-spacing:.5px}.stat-value[data-v-44830349]{font-size:11px;font-weight:600;color:#e2e8f0}[data-v-44830349] .leaflet-container{background:#1e293b;font-family:inherit;width:100%!important;height:100%!important}[data-v-44830349] .leaflet-popup-content-wrapper{background:#1e293b;color:#e2e8f0;border-radius:8px;box-shadow:0 4px 12px #0000004d}[data-v-44830349] .leaflet-popup-content{margin:10px 12px;font-size:12px;line-height:1.4}[data-v-44830349] .leaflet-popup-tip{background:#1e293b}[data-v-44830349] .leaflet-control-attribution{display:none!important}[data-v-44830349] .custom-marker-icon{background:transparent!important;border:none!important;display:flex!important;align-items:center!important;justify-content:center!important}[data-v-44830349] .map-marker-pin{pointer-events:auto;transition:transform .1s ease}[data-v-44830349] .map-marker-pin:hover{transform:translate(-50%,-50%) scale(1.2)}[data-v-44830349] .flag-icon{background:transparent!important;border:none!important;display:flex!important;align-items:center!important;justify-content:center!important}[data-v-44830349] .vietnam-flag-marker{font-size:20px;text-shadow:0 2px 4px rgba(0,0,0,.5)}[data-v-44830349] .current-location-icon{background:transparent!important;border:none!important}[data-v-44830349] .current-location-marker{position:relative;width:24px;height:24px}[data-v-44830349] .pulse-ring{position:absolute;width:24px;height:24px;border:2px solid #3b82f6;border-radius:50%;animation:pulse-ring-44830349 2s infinite}[data-v-44830349] .marker-dot{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:10px;height:10px;background:#3b82f6;border:2px solid white;border-radius:50%;box-shadow:0 2px 4px #0000004d}@keyframes pulse-ring-44830349{0%{transform:scale(.5);opacity:1}to{transform:scale(1.5);opacity:0}}.map-container.selecting-mode[data-v-44830349]{cursor:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='36' viewBox='0 0 24 36'%3E%3Cpath d='M12 0C5.4 0 0 5.4 0 12c0 7.5 12 24 12 24s12-16.5 12-24c0-6.6-5.4-12-12-12z' fill='%23ef4444'/%3E%3Ccircle cx='12' cy='12' r='5' fill='white'/%3E%3C/svg%3E") 12 36,crosshair!important}.map-container.selecting-mode[data-v-44830349] .leaflet-container{cursor:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='36' viewBox='0 0 24 36'%3E%3Cpath d='M12 0C5.4 0 0 5.4 0 12c0 7.5 12 24 12 24s12-16.5 12-24c0-6.6-5.4-12-12-12z' fill='%23ef4444'/%3E%3Ccircle cx='12' cy='12' r='5' fill='white'/%3E%3C/svg%3E") 12 36,crosshair!important}.map-container.selecting-center[data-v-44830349] .leaflet-container{cursor:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24'%3E%3Ccircle cx='12' cy='12' r='10' fill='none' stroke='%233b82f6' stroke-width='2'/%3E%3Ccircle cx='12' cy='12' r='3' fill='%233b82f6'/%3E%3Cline x1='12' y1='0' x2='12' y2='6' stroke='%233b82f6' stroke-width='2'/%3E%3Cline x1='12' y1='18' x2='12' y2='24' stroke='%233b82f6' stroke-width='2'/%3E%3Cline x1='0' y1='12' x2='6' y2='12' stroke='%233b82f6' stroke-width='2'/%3E%3Cline x1='18' y1='12' x2='24' y2='12' stroke='%233b82f6' stroke-width='2'/%3E%3C/svg%3E") 12 12,crosshair!important}.selecting-indicator[data-v-44830349]{position:absolute;top:10px;left:50%;transform:translate(-50%);z-index:1000;display:flex;align-items:center;gap:8px;padding:8px 16px;background:linear-gradient(135deg,#f59e0b,#d97706);color:#fff;border-radius:20px;font-size:12px;font-weight:500;box-shadow:0 4px 12px #f59e0b66;animation:pulse-indicator-44830349 1.5s infinite}@keyframes pulse-indicator-44830349{0%,to{opacity:1;transform:translate(-50%) scale(1)}50%{opacity:.9;transform:translate(-50%) scale(1.02)}}.tracking-map-widget[data-v-56ed441f]{display:flex;flex-direction:column;width:100%;height:100%;background:#fff;border-radius:8px;overflow:hidden}.map-header[data-v-56ed441f]{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;border-bottom:1px solid #e5e7eb;background:#f9fafb}.map-title[data-v-56ed441f]{font-size:14px;font-weight:600;color:#374151;margin:0}.map-controls[data-v-56ed441f]{display:flex;gap:8px}.tracking-btn[data-v-56ed441f],.clear-btn[data-v-56ed441f]{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border:1px solid #d1d5db;background:#fff;border-radius:6px;cursor:pointer;transition:all .2s ease}.tracking-btn[data-v-56ed441f]:hover,.clear-btn[data-v-56ed441f]:hover{background:#f3f4f6;border-color:#9ca3af}.tracking-btn.active[data-v-56ed441f]{background:#3b82f6;border-color:#3b82f6;color:#fff}.map-container[data-v-56ed441f]{flex:1;position:relative;min-height:200px}.map-info[data-v-56ed441f]{display:flex;justify-content:space-between;padding:12px 16px;background:#f9fafb;border-top:1px solid #e5e7eb}.info-item[data-v-56ed441f]{display:flex;flex-direction:column;align-items:center}.info-label[data-v-56ed441f]{font-size:11px;color:#6b7280;margin-bottom:2px}.info-value[data-v-56ed441f]{font-size:13px;font-weight:600;color:#374151}.custom-marker{background:transparent!important;border:none!important}.route-marker{width:24px;height:24px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;color:#fff}.route-marker.start{background:#10b981}.route-marker.end{background:#ef4444}.current-marker{width:16px;height:16px;background:#3b82f6;border:3px solid white;border-radius:50%;box-shadow:0 2px 8px #0000004d;animation:pulse-56ed441f 2s infinite}@keyframes pulse-56ed441f{0%{box-shadow:0 0 #3b82f6b3}70%{box-shadow:0 0 0 10px #3b82f600}to{box-shadow:0 0 #3b82f600}}.widget-frame[data-v-dffe2ff3]{display:flex;flex-direction:column;height:100%;background:transparent;border-radius:8px;overflow:hidden}.widget-frame-title[data-v-dffe2ff3]{padding:6px 10px;font-size:13px;font-weight:600;color:#0f172a;background:#f9fafbe6;border-bottom:1px solid #eef2f6}.widget-frame-title[data-v-dffe2ff3]:first-child{border-radius:8px 8px 0 0}.widget-frame-title[data-v-dffe2ff3]:last-child{border-radius:0 0 8px 8px;border-bottom:none;border-top:1px solid #eef2f6}.widget-frame-title.align-left[data-v-dffe2ff3]{text-align:left}.widget-frame-title.align-center[data-v-dffe2ff3]{text-align:center}.widget-frame-title.align-right[data-v-dffe2ff3]{text-align:right}.widget-frame-body[data-v-dffe2ff3]{flex:1 1 auto;display:flex;align-items:center;justify-content:center;padding:8px}@keyframes scaleUp-8c4131ef{0%{transform:scale(.5);opacity:0}to{transform:scale(1);opacity:1}}@keyframes spin-8c4131ef{to{transform:rotate(360deg)}}.interactive-widget[data-v-8c4131ef]{transition:filter .1s,transform .1s}.interactive-widget[data-v-8c4131ef]:hover{filter:brightness(1.1)}.interactive-widget[data-v-8c4131ef]:active,.widget-pressed[data-v-8c4131ef]{transform:scale(.97)!important}.scada-canvas-wrapper[data-v-8c4131ef]{flex:1;overflow:auto;display:flex;align-items:center;justify-content:center;background-color:inherit}.scada-canvas-content[data-v-8c4131ef]{position:relative;transform-origin:center center}.preview-widget[data-v-8c4131ef]{position:absolute;box-sizing:border-box}.dialog-view-overlay[data-v-8c4131ef]{position:fixed;top:0;left:0;width:100vw;height:100vh;background:#00000080;display:flex;align-items:center;justify-content:center}.dialog-view-container[data-v-8c4131ef]{position:relative;border-radius:8px;box-shadow:0 20px 40px #0000004d;overflow:hidden}.scada-loading-container[data-v-8c4131ef],.scada-error-container[data-v-8c4131ef],.scada-empty-container[data-v-8c4131ef]{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;color:#ffffffe6}.scada-loading-spinner[data-v-8c4131ef]{width:48px;height:48px;border:4px solid rgba(255,255,255,.2);border-top-color:#ff8303;border-radius:50%;animation:spin-8c4131ef .8s linear infinite;margin-bottom:16px}.scada-loading-container p[data-v-8c4131ef],.scada-error-container p[data-v-8c4131ef],.scada-empty-container p[data-v-8c4131ef]{color:#ffffffb3;font-size:14px;margin:8px 0 0}.scada-error-container h3[data-v-8c4131ef],.scada-empty-container h3[data-v-8c4131ef]{margin:16px 0 8px;font-size:18px;font-weight:600}input[type=color][data-v-8c4131ef]{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:none!important;padding:0;background:transparent;cursor:pointer;overflow:hidden}input[type=color][data-v-8c4131ef]::-webkit-color-swatch-wrapper{padding:0;border:none}input[type=color][data-v-8c4131ef]::-webkit-color-swatch{border:none;border-radius:4px}input[type=color][data-v-8c4131ef]::-moz-color-swatch{border:none;border-radius:4px}input[type=color][data-v-8c4131ef]:focus{outline:none}.label-warning[data-v-8c4131ef]{background-color:var(--5b8931a3)!important;border-color:var(--157cd8d7)!important;animation:pulse-warning-8c4131ef 2s infinite}.label-critical[data-v-8c4131ef]{background-color:var(--03548208)!important;border-color:var(--4a61897c)!important;animation:pulse-critical-8c4131ef 1s infinite}@keyframes pulse-warning-8c4131ef{0%,to{opacity:1}50%{opacity:.85}}@keyframes pulse-critical-8c4131ef{0%,to{opacity:1;transform:scale(1)}50%{opacity:.9;transform:scale(1.02)}}.scada-dashboard-root[data-v-8c4131ef]{width:100vw;height:100vh;background:#2d3748;display:flex;flex-direction:column}.scada-toolbar[data-v-8c4131ef]{display:flex;align-items:center;justify-content:space-between;padding:0 32px;height:56px;background:#2d3748;border-bottom:1px solid #4a5568;box-shadow:0 2px 8px #0000001a;position:sticky;top:0;z-index:10}.dashboard-title[data-v-8c4131ef]{font-size:20px;font-weight:600;color:#e2e8f0;letter-spacing:1px}.toolbar-center[data-v-8c4131ef]{display:flex;padding-left:70px;align-items:center;justify-content:center;height:auto}.toolbar-icon-group[data-v-8c4131ef]{display:flex;gap:8px;align-items:center}.toolbar-icon[data-v-8c4131ef]{width:18px;height:18px;color:#cbd5e0;transition:color .2s}.toolbar-zoom-group[data-v-8c4131ef]{display:flex;flex-direction:column;align-items:center;position:relative;width:54px}.toolbar-zoom-indicator[data-v-8c4131ef]{color:#2d3748;margin-top:2px;font-weight:600;background:#a0aec0;border-radius:6px;padding:0 6px;min-width:32px;text-align:center;box-shadow:0 1px 4px #0000001a;margin-bottom:2px}.toolbar-center-info[data-v-8c4131ef]{flex:1;display:flex;padding:20px;justify-content:left;align-items:center}.view-size-info[data-v-8c4131ef]{color:#a0aec0;font-size:13px;font-weight:500;background:#2d3748;padding:4px 12px;border-radius:6px;border:1px solid #4a5568}.toolbar-right[data-v-8c4131ef]{display:flex;gap:8px}.toolbar-btn[data-v-8c4131ef]{border:none;border-radius:6px;padding:8px;cursor:pointer;font-size:14px;color:#cbd5e0;background:transparent;display:flex;align-items:center;justify-content:center;min-width:36px;height:36px;transition:all .2s;position:relative}.toolbar-btn.active[data-v-8c4131ef]{background:#3b82f6;color:#fff}.toolbar-btn.active .toolbar-icon[data-v-8c4131ef]{color:#fff}.grid-size-control[data-v-8c4131ef]{display:flex;align-items:center;gap:4px;margin-left:8px}.grid-size-select[data-v-8c4131ef]{background:#2d3748;border:1px solid #4a5568;border-radius:4px;color:#cbd5e0;padding:4px 8px;min-width:60px}.grid-size-select[data-v-8c4131ef]:focus{outline:none;border-color:#3b82f6}.toolbar-btn.primary[data-v-8c4131ef]{font-weight:500;background:#4a5568;padding:8px 16px;min-width:auto}.toolbar-btn[data-v-8c4131ef]:hover{color:#e2e8f0;background:#4a5568;transform:translateY(-1px)}.toolbar-zoom-display[data-v-8c4131ef]{min-width:50px;background:#2d3748;border:1px solid #4a5568}.toolbar-zoom-text[data-v-8c4131ef]{font-weight:600;color:#e2e8f0}.toolbar-zoom-display[data-v-8c4131ef]:hover{background:#4a5568;border-color:#718096}.toolbar-btn[title*=nhỏ][data-v-8c4131ef],.toolbar-btn[title*=to][data-v-8c4131ef]{background:#4a5568;border:1px solid #718096}.toolbar-btn[title*=nhỏ][data-v-8c4131ef]:hover,.toolbar-btn[title*=to][data-v-8c4131ef]:hover{background:#718096;border-color:#a0aec0}.scada-main-layout[data-v-8c4131ef]{flex:1;display:flex;height:calc(100vh - 96px);min-height:0}.scada-widget-manager[data-v-8c4131ef]{width:280px;background:#2d3748;border-left:1px solid #4a5568;padding:12px 8px;display:flex;flex-direction:column;gap:12px;overflow-y:auto;height:100%;position:relative;z-index:100}.widget-manager-tabs[data-v-8c4131ef]{display:flex;gap:8px}.widget-manager-tabs button[data-v-8c4131ef]{flex:1;padding:8px 0;border:none;background:#4a5568;color:#cbd5e0;font-weight:500;border-radius:6px;cursor:pointer;transition:background .2s,color .2s}.widget-manager-tabs button.active[data-v-8c4131ef]{background:#718096;color:#e2e8f0}.widget-manager-title[data-v-8c4131ef]{font-size:15px;color:#e2e8f0;font-weight:600;margin-bottom:8px;text-align:center}.widget-manager-empty[data-v-8c4131ef]{color:#a0aec0;font-size:13px;text-align:center}.widget-manager-list[data-v-8c4131ef]{display:flex;flex-direction:column;gap:10px}.widget-manager-item[data-v-8c4131ef]{background:#fff;border-radius:8px;box-shadow:0 1px 4px #3b82f60f;padding:8px;display:flex;flex-direction:column;gap:6px}.widget-manager-item.active[data-v-8c4131ef]{border:2px solid #2563eb}.widget-manager-row[data-v-8c4131ef]{display:flex;align-items:center;gap:8px}.widget-manager-icon[data-v-8c4131ef]{width:22px;height:22px;color:#2563eb}.widget-manager-input[data-v-8c4131ef]{flex:1;font-size:13px;padding:2px 6px;border:1px solid #e5e7eb;border-radius:4px;background:#f8fafc;color:#2563eb}.widget-manager-note[data-v-8c4131ef]{width:100%;padding:2px 6px;border:1px solid #e5e7eb;border-radius:4px;background:#f8fafc;color:#64748b;resize:none}.widget-manager-actions[data-v-8c4131ef]{display:flex;gap:8px;margin-top:2px}.widget-manager-btn[data-v-8c4131ef]{border:none;background:none;cursor:pointer;font-size:18px;color:#2563eb;padding:2px 6px;border-radius:4px;transition:background .2s,color .2s}.widget-manager-btn[data-v-8c4131ef]:hover{background:#e0e7ef;color:#1e293b}.scada-sidebar[data-v-8c4131ef]{max-width:200px;background:#2d3748;border-right:1px solid #4a5568;padding:12px 0;display:flex;flex-direction:column;gap:18px;overflow-y:auto;overflow-x:hidden;height:100%;position:relative;z-index:100}.sidebar-section[data-v-8c4131ef]{margin-bottom:0}.sidebar-title[data-v-8c4131ef]{font-size:13px;color:#a0aec0;font-weight:500;text-align:left;padding-left:12px}.sidebar-icons[data-v-8c4131ef]{display:flex;flex-wrap:wrap;gap:8px;justify-content:left;padding-left:12px}.sidebar-icons[data-v-8c4131ef]>*{width:32px;height:32px;color:#cbd5e0;background:#4a5568;border-radius:6px;box-shadow:0 1px 4px #0000001a;cursor:pointer;transition:background .2s,color .2s;display:flex;align-items:center;justify-content:center}.sidebar-icons[data-v-8c4131ef]>*:hover{background:#718096;color:#e2e8f0}.switch-variants-grid[data-v-8c4131ef]{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-start;padding-left:12px}.switch-icon[data-v-8c4131ef]{position:relative;width:40px;height:40px;background:#4a5568;border-radius:8px;box-shadow:0 1px 4px #0000001a;cursor:grab;transition:all .2s ease;display:flex;align-items:center;justify-content:center;overflow:hidden}.switch-icon[data-v-8c4131ef]:hover{background:#718096;transform:scale(1.05);box-shadow:0 2px 8px #0003}.switch-icon[data-v-8c4131ef]:active{cursor:grabbing;transform:scale(.95)}.switch-icon img[data-v-8c4131ef]{width:32px;height:32px;-o-object-fit:contain;object-fit:contain}.switch-variant-label[data-v-8c4131ef]{position:absolute;bottom:2px;right:2px;font-size:9px;font-weight:600;color:#fff;background:#0009;padding:1px 4px;border-radius:3px;line-height:1}.drawing-tool.active[data-v-8c4131ef]{background:#3b82f6!important;color:#fff!important;box-shadow:0 2px 8px #3b82f666}.drawing-preview[data-v-8c4131ef]{transition:none!important;animation:none!important}.scada-canvas[data-v-8c4131ef]{flex:1;background:#4a5568;position:relative;min-height:0;height:100%;overflow:hidden}.ruler-horizontal[data-v-8c4131ef]{position:absolute;top:0;left:20px;right:0;height:20px;background:#2d3748;border-bottom:1px solid #4a5568;z-index:10}.ruler-horizontal .ruler-marks[data-v-8c4131ef]{position:relative;height:100%}.ruler-horizontal .ruler-mark[data-v-8c4131ef]{position:absolute;top:0;width:1px;background:#718096;height:8px}.ruler-horizontal .ruler-mark.major[data-v-8c4131ef]{background:#e2e8f0;height:15px}.ruler-horizontal .ruler-mark.zero[data-v-8c4131ef]{background:#3b82f6!important;height:20px!important;width:3px!important}.ruler-horizontal .ruler-label[data-v-8c4131ef]{position:absolute;top:-2px;left:2px;font-size:9px;color:#e2e8f0;font-weight:500;white-space:nowrap;transform:scaleX(calc(1 / var(--scale, 1)))}.ruler-horizontal .ruler-mark.zero .ruler-label[data-v-8c4131ef]{color:#3b82f6;font-weight:700;background:#1e293b;padding:1px 3px;border-radius:2px}.ruler-horizontal .ruler-mark.negative[data-v-8c4131ef]{background:#ef4444!important}.ruler-horizontal .ruler-mark.negative.major[data-v-8c4131ef]{height:15px}.ruler-horizontal .ruler-mark.negative .ruler-label[data-v-8c4131ef]{color:#ef4444;background:#1e293b;padding:1px 3px;border-radius:2px}.ruler-vertical[data-v-8c4131ef]{position:absolute;top:20px;left:0;width:20px;bottom:0;background:#2d3748;border-right:1px solid #4a5568;z-index:10}.ruler-vertical .ruler-marks[data-v-8c4131ef]{position:relative;width:100%;height:100%}.ruler-vertical .ruler-mark[data-v-8c4131ef]{position:absolute;left:0;height:1px;background:#718096;width:8px}.ruler-vertical .ruler-mark.major[data-v-8c4131ef]{background:#e2e8f0;width:15px}.ruler-vertical .ruler-mark.zero[data-v-8c4131ef]{background:#3b82f6!important;width:20px!important;height:3px!important}.ruler-vertical .ruler-label[data-v-8c4131ef]{position:absolute;left:-2px;top:2px;font-size:9px;color:#e2e8f0;font-weight:500;white-space:nowrap;writing-mode:vertical-rl;text-orientation:mixed;transform:scaleY(calc(1 / var(--scale, 1)))}.ruler-vertical .ruler-mark.zero .ruler-label[data-v-8c4131ef]{color:#3b82f6;font-weight:700;background:#1e293b;padding:1px 3px;border-radius:2px;writing-mode:horizontal-tb;text-orientation:initial}.ruler-vertical .ruler-mark.negative[data-v-8c4131ef]{background:#ef4444!important}.ruler-vertical .ruler-mark.negative.major[data-v-8c4131ef]{width:15px}.ruler-vertical .ruler-mark.negative .ruler-label[data-v-8c4131ef]{color:#ef4444;background:#1e293b;padding:1px 3px;border-radius:2px;writing-mode:horizontal-tb;text-orientation:initial}.canvas-content[data-v-8c4131ef]{position:absolute;inset:20px 0 0 20px;background:#4a5568;display:flex;align-items:center;justify-content:center;overflow:visible;transform:translateZ(0);backface-visibility:hidden}.origin-axis-x[data-v-8c4131ef]{position:absolute;height:2px;background:#fff;z-index:2;opacity:.8}.origin-axis-y[data-v-8c4131ef]{position:absolute;width:2px;background:#fff;z-index:2;opacity:.8}.grid-overlay[data-v-8c4131ef]{position:absolute;top:0;left:0;z-index:10;pointer-events:none;background-image:linear-gradient(to right,rgba(34,197,94,.4) 1px,transparent 1px),linear-gradient(to bottom,rgba(34,197,94,.4) 1px,transparent 1px);background-size:20px 20px;opacity:1;transition:opacity .3s ease}.view-boundary[data-v-8c4131ef]{position:absolute;top:40px;left:40px;border:3px solid #718096;box-shadow:0 4px 24px #00000026;z-index:1;overflow:hidden}.canvas-placeholder[data-v-8c4131ef]{position:absolute;inset:0;background:transparent;border-radius:8px;display:flex;align-items:center;justify-content:center;color:#a0aec0;font-size:18px;font-weight:500;letter-spacing:1px;border:2px dashed #718096;z-index:0}.canvas-widgets[data-v-8c4131ef]{position:relative;width:100%;height:100%;transform:translateZ(0);will-change:transform;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;image-rendering:optimizeQuality}.canvas-widget[data-v-8c4131ef]{border:none;background:transparent;box-shadow:none;transition:none;border-radius:10px;pointer-events:auto;transform:translateZ(0);backface-visibility:hidden;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;will-change:auto}.canvas-widget[data-v-8c4131ef] *{pointer-events:auto}.canvas-widget svg[data-v-8c4131ef]{shape-rendering:geometricPrecision;image-rendering:optimizeQuality;backface-visibility:hidden}.canvas-widget polyline[data-v-8c4131ef],.canvas-widget line[data-v-8c4131ef],.canvas-widget path[data-v-8c4131ef]{shape-rendering:geometricPrecision;vector-effect:non-scaling-stroke}.canvas-widget.selected[data-v-8c4131ef]{border:.5px solid #2563eb;border-radius:10px}.library-widget-container[data-v-8c4131ef],.canvas-widget .library-widget-container[data-v-8c4131ef] *,.canvas-widget.locked .library-widget-container[data-v-8c4131ef],.canvas-widget.locked .library-widget-container[data-v-8c4131ef] *{pointer-events:auto!important}.resize-handle[data-v-8c4131ef]{position:absolute;right:-8px;bottom:-8px;width:16px;height:16px;background:#2563eb;border-radius:50%;cursor:nwse-resize;border:2px solid #fff;box-shadow:0 2px 8px #3b82f62e;z-index:2}.selection-overlay[data-v-8c4131ef]{position:absolute;pointer-events:none;z-index:9999}.selection-border[data-v-8c4131ef]{position:absolute;inset:0;border:1px solid rgba(79,141,255,.9);outline:1px solid rgba(79,141,255,.4);box-shadow:0 0 0 1px #4f8dff4d;border-radius:2px}.selection-pivot-line[data-v-8c4131ef]{position:absolute;top:-30px;height:30px;width:2px;background:#4f8dffe6;transform:translate(-50%);pointer-events:none}.selection-handle[data-v-8c4131ef]{position:absolute;width:12px;height:12px;background:#fff;border:2px solid #4f8dff;border-radius:2px;transform:translate(-50%,-50%);box-shadow:0 1px 4px #00000040;pointer-events:auto}.selection-pivot[data-v-8c4131ef]{position:absolute;width:20px;height:20px;background:#16a34a;border:3px solid #ffffff;border-radius:50%;transform:translate(-50%,-50%);box-shadow:0 2px 6px #00000059;pointer-events:auto;cursor:grab;transition:background .15s,transform .15s}.selection-pivot[data-v-8c4131ef]:active{cursor:grabbing}.selection-pivot[data-v-8c4131ef]:hover{background:#15803d}.widget-config-tabs[data-v-8c4131ef]{background:#4a5568;border-radius:8px;box-shadow:0 1px 4px #0003;padding:8px}.widget-tabs-header[data-v-8c4131ef]{display:flex;gap:8px;margin-bottom:8px}.widget-tabs-header button[data-v-8c4131ef]{flex:1;padding:6px 0;border:none;background:#2d3748;color:#cbd5e0;font-weight:500;border-radius:6px;cursor:pointer;transition:background .2s,color .2s}.widget-tabs-header button.active[data-v-8c4131ef]{background:#718096;color:#e2e8f0}.widget-tabs-content[data-v-8c4131ef]{margin-top:4px}.widget-config-section[data-v-8c4131ef]{margin-bottom:12px}.widget-config-title[data-v-8c4131ef]{font-size:13px;color:#e2e8f0;font-weight:600;margin-bottom:6px}.widget-config-row[data-v-8c4131ef]{display:flex;align-items:center;gap:8px;margin-bottom:6px}.widget-config-row label[data-v-8c4131ef]{min-width:80px;color:#a0aec0}.widget-config-row input[type=number][data-v-8c4131ef]{width:80px;padding:2px 6px;border:1px solid #718096;border-radius:4px;background:#2d3748;color:#e2e8f0}.widget-config-row input[type=color][data-v-8c4131ef]{width:32px;height:32px;border:none;background:none;cursor:pointer;padding:0;-webkit-appearance:none;-moz-appearance:none;appearance:none;overflow:hidden;border-radius:4px}.widget-config-row input[type=color][data-v-8c4131ef]::-webkit-color-swatch-wrapper{padding:0;border:none}.widget-config-row input[type=color][data-v-8c4131ef]::-webkit-color-swatch{border:none;border-radius:4px}.widget-config-row input[type=color][data-v-8c4131ef]::-moz-color-swatch{border:none;border-radius:4px}.widget-config-row input[type=range][data-v-8c4131ef]{flex:1}@media (max-width: 900px){.scada-toolbar[data-v-8c4131ef]{padding:0 8px}.scada-sidebar[data-v-8c4131ef]{width:56px;padding:6px 0}.sidebar-icons[data-v-8c4131ef]>*{width:22px;height:22px}.canvas-placeholder[data-v-8c4131ef]{font-size:16px;padding:8px}}@media (max-width: 600px){.scada-dashboard-root[data-v-8c4131ef],.scada-main-layout[data-v-8c4131ef]{flex-direction:column}.scada-sidebar[data-v-8c4131ef]{flex-direction:row;width:100%;height:56px;border-right:none;border-bottom:1px solid #e5e7eb;overflow-x:auto;overflow-y:hidden;padding:0 4px}.sidebar-section[data-v-8c4131ef]{margin-bottom:0;margin-right:12px}.scada-canvas[data-v-8c4131ef]{min-height:300px;height:auto}}.canvas-zoom-indicator[data-v-8c4131ef]{position:absolute;right:16px;bottom:16px;background:#2563ebd9;color:#fff;padding:2px 10px;border-radius:8px;font-size:15px;z-index:10;pointer-events:none}.widget-manager-list-simple[data-v-8c4131ef]{display:flex;flex-direction:column;gap:6px}.widget-manager-item-simple[data-v-8c4131ef]{display:flex;align-items:center;justify-content:space-between;background:#4a5568;border:1px solid #718096;border-radius:6px;box-shadow:0 1px 4px #0000001a;padding:4px 8px;transition:border .2s,box-shadow .2s;cursor:pointer}.widget-manager-item-simple.active[data-v-8c4131ef]{border:2px solid #a0aec0;box-shadow:0 2px 8px #0003}.widget-names[data-v-8c4131ef]{flex:1;display:flex;flex-direction:column;gap:2px;margin-right:8px;overflow:hidden}.widget-manager-name-primary[data-v-8c4131ef]{font-size:14px;color:#e2e8f0;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.widget-manager-name-system[data-v-8c4131ef]{font-size:11px;color:#94a3b8;font-weight:400;font-family:Courier New,monospace;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;opacity:.8}.widget-manager-name[data-v-8c4131ef]{flex:1;font-size:14px;color:#e2e8f0;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-right:8px}.widget-manager-btn-simple[data-v-8c4131ef]{border:none;background:none;padding:2px 4px;margin-left:2px;border-radius:4px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .2s,color .2s}.widget-manager-btn-simple[data-v-8c4131ef]:hover{background:#2d3748;color:#e2e8f0}.widget-manager-icon-simple[data-v-8c4131ef]{width:14px;height:14px;color:#cbd5e0;transition:color .2s}.widget-manager-list-advanced[data-v-8c4131ef]{display:flex;flex-direction:column;gap:6px}.widget-manager-hint[data-v-8c4131ef]{font-size:11px;color:#94a3b8;margin-bottom:2px}.widget-manager-item-adv[data-v-8c4131ef]{display:flex;flex-direction:column;background:#374151;border:1px solid #475569;border-radius:6px;padding:6px 8px;gap:4px;cursor:grab;transition:background .15s,border .15s}.widget-manager-item-adv.active[data-v-8c4131ef]{border:2px solid #3b82f6;background:#1e293b}.widget-manager-item-adv.dragging[data-v-8c4131ef]{opacity:.55}.widget-manager-item-adv.dragover[data-v-8c4131ef]{outline:2px dashed #60a5fa}.widget-row-1[data-v-8c4131ef]{display:flex;align-items:center;gap:8px;width:100%}.widget-names-row[data-v-8c4131ef]{flex:1;display:flex;flex-direction:column;gap:2px;overflow:hidden}.widget-name-user[data-v-8c4131ef]{font-size:14px;color:#f1f5f9;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.widget-name-system[data-v-8c4131ef]{font-size:11px;color:#94a3b8;font-weight:400;font-family:Courier New,monospace;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;opacity:.8}.widget-row-2[data-v-8c4131ef]{display:flex;align-items:center;justify-content:space-between;gap:8px;width:100%;padding-top:2px}.widget-properties[data-v-8c4131ef]{display:flex;align-items:center;gap:8px}.widget-prop[data-v-8c4131ef]{display:flex;align-items:center;gap:4px;font-size:10px;color:#94a3b8;font-weight:500;text-transform:uppercase;letter-spacing:.5px}.widget-prop.visible.disabled[data-v-8c4131ef]{color:#ef4444}.widget-prop.locked.active[data-v-8c4131ef]{color:#f59e0b}.widget-prop.layer[data-v-8c4131ef]{background:#1f2937;padding:2px 6px;border-radius:4px;border:1px solid #374151}.widget-toggles[data-v-8c4131ef]{display:flex;gap:4px}.widget-toggle-btn[data-v-8c4131ef]{background:#1f2937;border:1px solid #374151;color:#9ca3af;padding:4px;border-radius:4px;cursor:pointer;transition:all .15s;display:flex;align-items:center;justify-content:center}.widget-toggle-btn[data-v-8c4131ef]:hover{background:#374151;border-color:#4b5563}.widget-toggle-btn.active[data-v-8c4131ef]{background:#3b82f6;border-color:#2563eb;color:#fff}.drag-handle[data-v-8c4131ef]{padding:2px 4px;cursor:grab;display:flex;align-items:center;justify-content:center;color:#94a3b8}.drag-handle[data-v-8c4131ef]:hover{color:#fff}.layer-buttons[data-v-8c4131ef]{display:flex;align-items:center;gap:2px;margin-left:auto}.layer-btn[data-v-8c4131ef]{background:#475569;border:none;color:#e2e8f0;font-size:10px;line-height:1;padding:4px;border-radius:4px;cursor:pointer}.layer-btn[data-v-8c4131ef]:hover{background:#3b82f6;color:#fff}.btn-property-open[data-v-8c4131ef]{background:#475569;color:#e2e8f0;border:1px solid #718096;padding:6px 10px;border-radius:6px;cursor:pointer;font-size:13px;box-shadow:0 1px #ffffff05 inset;transition:background .15s,border-color .15s,transform .12s,box-shadow .15s}.btn-property-open[data-v-8c4131ef]:hover{background:#3b82f6;color:#fff;border-color:#2563eb;box-shadow:0 8px 20px #2563eb1f;transform:translateY(-1px)}.btn-property-open[data-v-8c4131ef]:focus{outline:none;box-shadow:0 0 0 4px #2563eb1f;border-color:#2563eb}.btn-property-open[data-v-8c4131ef]:disabled{background:#334155;color:#64748b;cursor:not-allowed;border-color:#475569;transform:none;box-shadow:none}.btn-add[data-v-8c4131ef]{background:#2563eb;color:#fff;border:none;padding:4px 8px;border-radius:4px;cursor:pointer;margin-top:6px;font-size:12px}.btn-add[data-v-8c4131ef]:hover{background:#1d4ed8}.btn-danger[data-v-8c4131ef]{background:#dc2626;color:#fff;border:none;padding:4px 8px;border-radius:4px;cursor:pointer;font-size:12px}.btn-danger[data-v-8c4131ef]:hover{background:#b91c1c}.property-dialog[data-v-8c4131ef]{display:flex;flex-direction:column}.property-tabs[data-v-8c4131ef]{display:flex;gap:4px;padding:8px 12px 0}.property-tabs button[data-v-8c4131ef]{flex:1;background:#475569;border:1px solid #64748b;color:#e2e8f0;padding:8px 10px;border-radius:6px;font-size:13px;cursor:pointer;transition:background .15s,border-color .15s;display:flex;align-items:center;justify-content:center;gap:6px}.property-tabs button .tab-icon[data-v-8c4131ef]{font-size:14px}.property-tabs button .tab-icon-vue[data-v-8c4131ef]{flex-shrink:0}.property-tabs button.active[data-v-8c4131ef]{background:#2563eb;border-color:#1d4ed8;color:#fff;box-shadow:0 0 0 1px #2563eb66}.property-tabs button[data-v-8c4131ef]:hover:not(.active){background:#51627a}.property-panel[data-v-8c4131ef]{display:flex;flex-direction:column;gap:12px}.tab-description[data-v-8c4131ef]{display:flex;align-items:flex-start;gap:10px;padding:12px 16px;background:linear-gradient(135deg,#1e3a5f,#1e293b);border-radius:8px;border-left:3px solid #3b82f6;margin-bottom:8px}.tab-desc-icon[data-v-8c4131ef]{font-size:18px;flex-shrink:0}.tab-desc-icon-vue[data-v-8c4131ef]{flex-shrink:0;color:#60a5fa}.tab-desc-text[data-v-8c4131ef]{font-size:13px;color:#94a3b8;line-height:1.5}.switch-state-config[data-v-8c4131ef]{background:linear-gradient(135deg,#1e3a5f,#1e293b);border-radius:8px;padding:12px 16px;margin-bottom:12px;border:1px solid #374151}.switch-state-title[data-v-8c4131ef]{display:flex;align-items:center;gap:8px;font-size:13px;font-weight:600;color:#e2e8f0;margin-bottom:12px}.switch-state-row[data-v-8c4131ef]{display:flex;gap:16px}.switch-state-row .state-item[data-v-8c4131ef]{flex:1;display:flex;flex-direction:column;gap:4px}.switch-state-row .state-item label[data-v-8c4131ef]{font-size:12px;color:#9ca3af}.switch-state-row .state-item input[data-v-8c4131ef]{padding:6px 10px;background:#1f2937;border:1px solid #4b5563;border-radius:4px;color:#e2e8f0;font-size:13px}.switch-state-row .state-item input[data-v-8c4131ef]:focus{outline:none;border-color:#3b82f6}.switch-state-hint[data-v-8c4131ef]{margin-top:8px;font-size:11px;color:#6b7280;font-style:italic}.widget-settings-panel[data-v-8c4131ef]{padding:0}.widget-settings-content[data-v-8c4131ef]{background:#1f2937;border-radius:8px;overflow:hidden}.widget-settings-two-column[data-v-8c4131ef]{display:flex;gap:16px;height:500px;min-height:500px}.widget-preview-column[data-v-8c4131ef]{flex:0 0 45%;background:#f8fafc;border-radius:8px;padding:16px;display:flex;flex-direction:column}.preview-header[data-v-8c4131ef]{margin-bottom:12px}.preview-title[data-v-8c4131ef]{margin:0;font-size:14px;font-weight:600;color:#374151;display:flex;align-items:center;gap:8px}.preview-container[data-v-8c4131ef]{flex:1;background:#fff;border-radius:8px;border:2px solid #e5e7eb;overflow:hidden;display:flex;flex-direction:column}.actual-widget-preview[data-v-8c4131ef]{flex:1;padding:8px;display:flex;flex-direction:column}.preview-debug-info[data-v-8c4131ef]{font-size:10px;color:#6b7280;background:#f3f4f6;padding:4px 8px;border-radius:4px;margin-bottom:8px;text-align:center}.widget-preview-frame[data-v-8c4131ef]{flex:1;border:1px solid #e5e7eb;border-radius:6px;background:#fff;display:flex;align-items:center;justify-content:center;min-height:200px}.preview-widget-fallback[data-v-8c4131ef]{flex:1;display:flex;align-items:center;justify-content:center}.generic-widget-preview[data-v-8c4131ef]{text-align:center}.widget-icon-large[data-v-8c4131ef]{font-size:48px;margin-bottom:12px}.widget-title[data-v-8c4131ef]{font-size:16px;font-weight:600;color:#374151;margin-bottom:4px}.widget-subtitle[data-v-8c4131ef]{color:#6b7280}.widget-options-column[data-v-8c4131ef]{flex:1;background:#1f2937;border-radius:8px;padding:16px;overflow-y:auto;display:flex;flex-direction:column}.options-header[data-v-8c4131ef]{margin-bottom:16px}.options-title[data-v-8c4131ef]{margin:0 0 4px;font-size:14px;font-weight:600;color:#e5e7eb;display:flex;align-items:center;gap:8px}.widget-type-name[data-v-8c4131ef]{font-size:11px;color:#9ca3af;font-weight:400}.widget-options-section[data-v-8c4131ef]{flex:1}.widget-options-panel[data-v-8c4131ef]{background:#374151;border-radius:6px;padding:12px}.no-specific-options[data-v-8c4131ef]{text-align:center;padding:40px 20px;color:#9ca3af}.option-info[data-v-8c4131ef],.option-hint[data-v-8c4131ef]{margin:0 0 8px;font-size:13px}.option-info[data-v-8c4131ef]{color:#a78bfa}.option-hint[data-v-8c4131ef]{color:#6b7280}.settings-title[data-v-8c4131ef]{background:#374151;color:#e5e7eb;padding:12px 16px;margin:0;font-size:14px;font-weight:600;border-bottom:1px solid #4b5563}.no-widget-settings[data-v-8c4131ef]{text-align:center;padding:40px 20px;color:#9ca3af}.no-widget-settings p[data-v-8c4131ef]{margin:0;font-size:14px}.property-list[data-v-8c4131ef]{display:flex;flex-direction:column;gap:6px;background:#1f2937;padding:10px 12px;border:1px solid #334155;border-radius:8px}.property-list select[data-v-8c4131ef],.property-list input[data-v-8c4131ef],.property-list textarea[data-v-8c4131ef]{background:#334155;border:1px solid #475569;color:#e2e8f0;border-radius:6px;padding:6px 8px;font-size:13px;width:100%}.property-list textarea[data-v-8c4131ef]{resize:vertical}.grid-2[data-v-8c4131ef]{display:grid;grid-template-columns:1fr 1fr;gap:12px}.mini-label[data-v-8c4131ef]{display:block;font-size:11px;text-transform:uppercase;letter-spacing:.5px;color:#94a3b8;margin-bottom:2px}.event-config-group[data-v-8c4131ef]{display:flex;flex-direction:column;gap:6px;background:#293445;padding:8px 10px;border:1px solid #3a4a5f;border-radius:6px}.event-panel[data-v-8c4131ef]{gap:10px}.event-item[data-v-8c4131ef]{background:#1f2733;border:1px solid #32404f;border-radius:10px;overflow:hidden;transition:border-color .18s,background .18s}.event-item[data-v-8c4131ef]:not(.collapsed):hover{border-color:#3f5366}.event-item-header[data-v-8c4131ef]{display:flex;align-items:center;justify-content:space-between;padding:8px 12px;cursor:pointer;font-size:13px;font-weight:500;background:linear-gradient(90deg,#243140,#1e2732)}.event-item.collapsed .event-item-header[data-v-8c4131ef]{border-radius:10px}.event-item-title[data-v-8c4131ef]{display:flex;align-items:center;gap:6px;color:#cbd5e1;font-weight:500}.evt-type[data-v-8c4131ef]{color:#60a5fa;font-weight:600;text-transform:uppercase;font-size:11px;letter-spacing:.5px}.evt-action[data-v-8c4131ef]{color:#fbbf24;font-weight:600;font-size:11px;text-transform:uppercase;letter-spacing:.5px}.evt-sep[data-v-8c4131ef]{opacity:.4}.evt-desc[data-v-8c4131ef]{font-size:11px;color:#94a3b8;font-weight:400}.chevron[data-v-8c4131ef]{display:inline-block;transform:rotate(0);transition:transform .2s;font-size:11px;color:#64748b}.chevron.open[data-v-8c4131ef]{transform:rotate(90deg);color:#94a3b8}.event-item-body[data-v-8c4131ef]{padding:12px 12px 14px;display:flex;flex-direction:column;gap:10px;animation:fadeIn-8c4131ef .25s}.row-compact[data-v-8c4131ef]{display:flex;gap:12px}.row-compact .col[data-v-8c4131ef]{flex:1;display:flex;flex-direction:column;gap:4px}.event-config-line[data-v-8c4131ef]{display:flex;flex-direction:column;gap:6px}.event-config-grid2[data-v-8c4131ef]{display:grid;grid-template-columns:1fr 1fr;gap:8px}.event-config-grid3[data-v-8c4131ef]{display:grid;grid-template-columns:1fr 1fr 1fr;gap:8px}.mini-btn[data-v-8c4131ef]{background:#2d3a48;color:#cbd5e1;border:1px solid #3a4a5a;padding:2px 6px;border-radius:5px;font-size:11px;cursor:pointer;line-height:1.2}.mini-btn[data-v-8c4131ef]:hover{background:#374656;color:#fff}.mini-btn.danger[data-v-8c4131ef]{background:#432b2b;border-color:#613737;color:#fca5a5}.mini-btn.danger[data-v-8c4131ef]:hover{background:#5a3232;color:#fff}.fade-scale-enter-active[data-v-8c4131ef],.fade-scale-leave-active[data-v-8c4131ef]{transition:all .18s ease}.fade-scale-enter-from[data-v-8c4131ef],.fade-scale-leave-to[data-v-8c4131ef]{opacity:0;transform:translateY(-4px) scale(.98)}.property-flat[data-v-8c4131ef]{display:flex;flex-direction:column;gap:6px}.property-row[data-v-8c4131ef]{display:grid;grid-template-columns:140px 200px 1fr;gap:8px;align-items:center;padding:6px 8px}.property-row.header[data-v-8c4131ef]{font-size:11px;text-transform:uppercase;letter-spacing:.5px;color:#94a3b8;background:#25303b;border:1px solid #2f3b47;border-radius:6px;padding:8px;font-weight:600}.property-row[data-v-8c4131ef]:not(.header){background:#1b242d;border:1px solid #2a3744;border-radius:6px}.property-row[data-v-8c4131ef]:not(.header):hover{background:#202b36}.property-row .col input[data-v-8c4131ef]{width:100%;background:#27323d;border:1px solid #384554;color:#e2e8f0;border-radius:5px;font-size:12px;padding:6px 8px}.property-row .col input[data-v-8c4131ef]:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 1px #3b82f666}.property-row .field-col label[data-v-8c4131ef]{color:#cbd5e1;font-weight:500;font-size:12px}.property-row .desc-col .desc-text[data-v-8c4131ef]{color:#94a3b8;font-size:11px;font-style:italic}.checkbox-wrapper[data-v-8c4131ef]{display:flex;align-items:center;gap:8px}.checkbox-wrapper input[type=checkbox][data-v-8c4131ef]{transform:scale(1.2);cursor:pointer}.checkbox-wrapper span[data-v-8c4131ef]{color:#cbd5e1;font-size:12px}.event-flat[data-v-8c4131ef]{display:flex;flex-direction:column;gap:6px}.event-row[data-v-8c4131ef]{display:grid;grid-template-columns:110px 140px 1fr 180px 70px;gap:8px;align-items:start;padding:4px 8px;border-bottom:1px solid #2f3b47}.event-row.header[data-v-8c4131ef]{font-size:11px;text-transform:uppercase;letter-spacing:.5px;color:#94a3b8;background:#25303b;border:1px solid #2f3b47;border-radius:6px;padding:6px 8px;font-weight:600}.event-row.footer-row[data-v-8c4131ef]{border:none;justify-content:space-between;grid-template-columns:1fr 1fr}.event-row[data-v-8c4131ef]:not(.header):not(.footer-row):hover{background:#202b36}.event-row[data-v-8c4131ef]:not(.header):not(.footer-row){background:#1b242d;border:1px solid #2a3744;border-radius:6px}.event-row .col select[data-v-8c4131ef],.event-row .col input[data-v-8c4131ef],.event-row .col textarea[data-v-8c4131ef]{width:100%;background:#27323d;border:1px solid #384554;color:#e2e8f0;border-radius:5px;font-size:12px;padding:4px 6px}.event-row .col textarea[data-v-8c4131ef]{resize:vertical}.event-row .col select[data-v-8c4131ef]:focus,.event-row .col input[data-v-8c4131ef]:focus,.event-row .col textarea[data-v-8c4131ef]:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 1px #3b82f666}.tag-config-section[data-v-8c4131ef]{display:flex;flex-direction:column;gap:8px;width:100%}.tag-selector-row[data-v-8c4131ef]{display:flex;align-items:center;gap:8px;min-height:28px}.tag-label[data-v-8c4131ef]{font-size:11px;color:#9ca3af;min-width:70px;font-weight:500;text-align:right}.tag-select[data-v-8c4131ef]{flex:1;padding:4px 8px;border:1px solid #384554;border-radius:4px;background:#27323d;color:#e2e8f0;min-height:26px}.tag-select[data-v-8c4131ef]:disabled{background:#1b242d;color:#6b7280;cursor:not-allowed}.tag-reload-btn[data-v-8c4131ef]{padding:4px 8px;border:1px solid #384554;border-radius:4px;background:#27323d;color:#e2e8f0;font-size:11px;cursor:pointer;min-width:32px;height:26px;display:flex;align-items:center;justify-content:center}.tag-reload-btn[data-v-8c4131ef]:hover:not(:disabled){background:#374151}.tag-reload-btn[data-v-8c4131ef]:disabled{cursor:not-allowed;opacity:.6}.tag-input-readonly[data-v-8c4131ef]{flex:1;padding:4px 8px;border:1px solid #384554;border-radius:4px;background:#1b242d;color:#9ca3af;min-height:26px}.tag-loading[data-v-8c4131ef]{font-size:11px;color:#6b7280;font-style:italic;min-width:32px;text-align:center}.tag-instruction[data-v-8c4131ef]{margin-bottom:8px;padding:8px;background:#0f172a;border:1px solid #334155;border-radius:4px}.instruction-text[data-v-8c4131ef]{font-size:11px;color:#fbbf24;line-height:1.4}.actions-compact[data-v-8c4131ef]{display:flex;flex-direction:column;gap:8px}.actions-list[data-v-8c4131ef]{display:flex;flex-direction:column;gap:6px}.action-item[data-v-8c4131ef]{background:#1b242d;border:1px solid #2a3744;border-radius:8px;padding:8px;transition:background-color .2s}.action-item[data-v-8c4131ef]:hover{background:#202b36}.action-main-row[data-v-8c4131ef]{display:flex;flex-wrap:wrap;gap:10px;align-items:flex-end;padding:8px 0}.action-enable[data-v-8c4131ef]{display:flex;align-items:center;padding-bottom:4px}.action-enable input[type=checkbox][data-v-8c4131ef]{transform:scale(1.2);cursor:pointer}.action-device-selector[data-v-8c4131ef],.action-datamonitor-selector[data-v-8c4131ef],.action-condition[data-v-8c4131ef],.action-effect[data-v-8c4131ef],.action-timing[data-v-8c4131ef]{display:flex;flex-direction:column;gap:4px;min-width:120px}.action-device-selector label[data-v-8c4131ef],.action-datamonitor-selector label[data-v-8c4131ef],.action-condition label[data-v-8c4131ef],.action-effect label[data-v-8c4131ef],.action-timing label[data-v-8c4131ef]{font-size:10px;color:#94a3b8;text-transform:uppercase;font-weight:600;letter-spacing:.5px}.action-device-select[data-v-8c4131ef],.action-datamonitor-select[data-v-8c4131ef]{padding:6px 8px;background:#1e293b;border:1px solid #334155;border-radius:5px;color:#e2e8f0;min-width:140px}.action-device-select[data-v-8c4131ef]:focus,.action-datamonitor-select[data-v-8c4131ef]:focus{outline:none;border-color:#60a5fa}.condition-row[data-v-8c4131ef]{display:flex;gap:4px}.operator-select[data-v-8c4131ef]{width:50px;padding:6px 4px;background:#1e293b;border:1px solid #334155;border-radius:5px;color:#e2e8f0;text-align:center}.condition-value-input[data-v-8c4131ef]{width:80px;padding:6px 8px;background:#1e293b;border:1px solid #334155;border-radius:5px;color:#e2e8f0}.timing-single[data-v-8c4131ef]{display:flex;align-items:center;gap:4px}.timing-input[data-v-8c4131ef]{width:70px;padding:6px 8px;background:#1e293b;border:1px solid #334155;border-radius:5px;color:#e2e8f0}.timing-unit[data-v-8c4131ef]{color:#94a3b8;font-size:11px;font-weight:500}.action-controls[data-v-8c4131ef]{display:flex;gap:4px;align-items:flex-end;padding-bottom:4px;margin-left:auto}.action-basic[data-v-8c4131ef]{display:grid;grid-template-columns:120px 1fr;gap:8px}.action-details-row[data-v-8c4131ef]{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;padding-top:6px;border-top:1px solid #2a3744}.detail-group[data-v-8c4131ef]{display:flex;flex-direction:column;gap:4px}.detail-group label[data-v-8c4131ef]{font-size:10px;color:#94a3b8;text-transform:uppercase;font-weight:600;letter-spacing:.5px}.timing-inputs[data-v-8c4131ef],.condition-inputs[data-v-8c4131ef],.animation-inputs[data-v-8c4131ef]{display:flex;gap:4px}.loop-checkbox[data-v-8c4131ef]{display:flex;align-items:center;gap:6px}.loop-checkbox input[type=checkbox][data-v-8c4131ef]{transform:scale(1.1)}.loop-checkbox span[data-v-8c4131ef]{color:#cbd5e1;font-size:11px}.actions-compact input[data-v-8c4131ef],.actions-compact select[data-v-8c4131ef]{background:#27323d;border:1px solid #384554;color:#e2e8f0;border-radius:4px;font-size:11px;padding:3px 6px;height:26px}.actions-compact input[data-v-8c4131ef]:focus,.actions-compact select[data-v-8c4131ef]:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 1px #3b82f666}.tag-input[data-v-8c4131ef]{min-width:100px}.effect-select[data-v-8c4131ef]{min-width:120px}.bitmask-select[data-v-8c4131ef]{min-width:70px}.direction-select[data-v-8c4131ef]{min-width:100px}@media (max-width: 1100px){.action-basic[data-v-8c4131ef]{grid-template-columns:100px 1fr}.action-details-row[data-v-8c4131ef]{grid-template-columns:repeat(auto-fit,minmax(120px,1fr))}}@media (max-width: 880px){.action-main-row[data-v-8c4131ef]{grid-template-columns:30px 1fr}.action-controls[data-v-8c4131ef]{grid-column:1 / -1;justify-content:flex-end;margin-top:4px}.action-basic[data-v-8c4131ef]{grid-template-columns:1fr}.action-details-row[data-v-8c4131ef]{grid-template-columns:1fr;gap:8px}}.inline-pair[data-v-8c4131ef]{display:grid;grid-template-columns:1fr 1fr;gap:6px}.inline-triple[data-v-8c4131ef]{display:grid;grid-template-columns:1fr 1fr 1fr;gap:6px}.setvalue-config[data-v-8c4131ef]{display:flex;flex-direction:column;gap:6px;width:100%}.setvalue-row[data-v-8c4131ef]{display:flex;gap:6px}.setvalue-row select[data-v-8c4131ef],.setvalue-row input[data-v-8c4131ef]{flex:1}.screen-select[data-v-8c4131ef]{width:100%;padding:6px 8px;background:#1e293b;border:1px solid #334155;border-radius:5px;color:#e2e8f0;font-size:12px}.screen-select[data-v-8c4131ef]:focus{outline:none;border-color:#60a5fa}.device-select[data-v-8c4131ef],.datakey-select[data-v-8c4131ef]{width:100%;padding:6px 8px;background:#1e293b;border:1px solid #334155;border-radius:5px;color:#e2e8f0;font-size:12px}.device-select[data-v-8c4131ef]:focus,.datakey-select[data-v-8c4131ef]:focus{outline:none;border-color:#60a5fa}.value-input[data-v-8c4131ef]{width:100%;padding:6px 8px;background:#1e293b;border:1px solid #334155;border-radius:5px;color:#e2e8f0;font-size:12px}.value-input[data-v-8c4131ef]:focus{outline:none;border-color:#60a5fa}.switch-values-inline[data-v-8c4131ef]{display:flex;gap:8px;width:100%}.switch-value-item[data-v-8c4131ef]{display:flex;align-items:center;gap:4px;flex:1}.switch-value-item label[data-v-8c4131ef]{font-size:11px;color:#94a3b8;font-weight:500;white-space:nowrap}.value-input-small[data-v-8c4131ef]{flex:1;padding:5px 8px;background:#1e293b;border:1px solid #334155;border-radius:5px;color:#e2e8f0;font-size:12px;min-width:40px}.value-input-small[data-v-8c4131ef]:focus{outline:none;border-color:#60a5fa}.icon-btn[data-v-8c4131ef]{background:#2d3a48;border:1px solid #3a4a5a;color:#cbd5e1;padding:4px 6px;border-radius:5px;font-size:12px;cursor:pointer;margin-right:4px;display:inline-flex;align-items:center;justify-content:center}.icon-btn[data-v-8c4131ef]:last-child{margin-right:0}.icon-btn[data-v-8c4131ef]:hover{background:#374656;color:#fff}.icon-btn.danger[data-v-8c4131ef]{background:#432b2b;border-color:#613737;color:#fca5a5}.icon-btn.danger[data-v-8c4131ef]:hover{background:#5a3232;color:#fff}.icon-btn.test[data-v-8c4131ef]{background:#10b981;border-color:#059669;color:#fff}.icon-btn.test[data-v-8c4131ef]:hover{background:#059669}.icon-btn.small[data-v-8c4131ef]{padding:2px 4px;font-size:10px}.add-context[data-v-8c4131ef]{cursor:pointer;color:#60a5fa;font-size:13px}.add-context[data-v-8c4131ef]:hover{text-decoration:underline}.add-binding[data-v-8c4131ef]{cursor:pointer;color:#94a3b8;font-size:12px;text-align:right}.add-binding[data-v-8c4131ef]:hover{color:#cbd5e1}.actions-flat[data-v-8c4131ef]{display:flex;flex-direction:column;gap:6px}.actions-row[data-v-8c4131ef]{display:grid;grid-template-columns:50px 1fr 100px 80px 80px 160px 70px;gap:8px;align-items:center;padding:4px 8px}.actions-row.header[data-v-8c4131ef]{font-size:11px;text-transform:uppercase;letter-spacing:.5px;color:#94a3b8;background:#25303b;border:1px solid #2f3b47;border-radius:6px;padding:6px 8px;font-weight:600}.actions-row.footer-row[data-v-8c4131ef]{border:none;grid-template-columns:1fr}.actions-row[data-v-8c4131ef]:not(.header):not(.footer-row){background:#1b242d;border:1px solid #2a3744;border-radius:6px}.actions-row[data-v-8c4131ef]:not(.header):not(.footer-row):hover{background:#202b36}.actions-row .col input[data-v-8c4131ef],.actions-row .col select[data-v-8c4131ef]{width:100%;background:#27323d;border:1px solid #384554;color:#e2e8f0;border-radius:5px;font-size:12px;padding:4px 6px}.actions-row .col input[data-v-8c4131ef]:focus,.actions-row .col select[data-v-8c4131ef]:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 1px #3b82f666}.add-action[data-v-8c4131ef]{cursor:pointer;color:#60a5fa;font-size:13px;padding:6px 4px}.add-action[data-v-8c4131ef]:hover{text-decoration:underline}.widget-preview-section-compact[data-v-8c4131ef]{grid-column:1 / -1;margin-bottom:8px;padding:12px 16px;background:#1b242d;border:1px solid #2a3744;border-radius:6px}.preview-header-compact[data-v-8c4131ef]{margin-bottom:8px}.preview-title-compact[data-v-8c4131ef]{font-weight:600;color:#cbd5e1;margin:0}.preview-container-compact[data-v-8c4131ef]{display:flex;justify-content:center;align-items:center;min-height:120px}.actual-widget-preview-compact[data-v-8c4131ef]{width:100%;max-width:200px;height:120px;display:flex;justify-content:center;align-items:center;background:#27323d;border:1px solid #384554;border-radius:6px;overflow:hidden}.preview-widget-fallback-compact[data-v-8c4131ef]{width:100%;max-width:200px;height:120px;background:#27323d;border:1px solid #384554;border-radius:6px;display:flex;align-items:center;justify-content:center}.generic-widget-preview-compact[data-v-8c4131ef]{display:flex;flex-direction:column;align-items:center;text-align:center;padding:8px}.widget-icon-compact[data-v-8c4131ef]{font-size:24px;margin-bottom:4px;color:#94a3b8}.widget-info-compact[data-v-8c4131ef]{display:flex;flex-direction:column;gap:2px}.widget-title-compact[data-v-8c4131ef]{font-weight:600;color:#cbd5e1}.widget-subtitle-compact[data-v-8c4131ef]{font-size:10px;color:#94a3b8}.widget-settings-panel[data-v-8c4131ef]{background:transparent;padding:0}.widget-settings-two-column-styled[data-v-8c4131ef]{display:grid;grid-template-columns:520px 1fr;gap:16px;height:100%;min-height:450px}.widget-preview-column-styled[data-v-8c4131ef]{border-radius:6px;padding:16px;display:flex;flex-direction:column}.preview-header-styled[data-v-8c4131ef]{margin-bottom:12px;border-bottom:1px solid #2a3744;padding-bottom:8px}.preview-title-styled[data-v-8c4131ef]{font-size:14px;font-weight:600;color:#cbd5e1;margin:0}.preview-container-styled[data-v-8c4131ef]{flex:1;display:flex;justify-content:center;align-items:center;min-height:320px}.actual-widget-preview-styled[data-v-8c4131ef],.widget-preview-frame-styled[data-v-8c4131ef]{width:100%;min-height:320px;border-radius:6px;overflow:hidden;display:flex;justify-content:center;align-items:center}.preview-widget-fallback-styled[data-v-8c4131ef]{display:flex;align-items:center;justify-content:center}.generic-widget-preview-styled[data-v-8c4131ef]{display:flex;flex-direction:column;align-items:center;text-align:center;padding:12px}.widget-icon-large-styled[data-v-8c4131ef]{font-size:32px;margin-bottom:8px;color:#94a3b8}.widget-info-styled[data-v-8c4131ef]{display:flex;flex-direction:column;gap:4px}.widget-title-styled[data-v-8c4131ef]{font-size:14px;font-weight:600;color:#cbd5e1}.widget-subtitle-styled[data-v-8c4131ef]{color:#94a3b8}.widget-options-column-styled[data-v-8c4131ef]{background:#1b242d;border:1px solid #2a3744;border-radius:6px;padding:0;display:flex;flex-direction:column}.options-header-styled[data-v-8c4131ef]{padding:12px 16px;border-bottom:1px solid #2a3744;background:#25303b;border-radius:6px 6px 0 0}.options-title-styled[data-v-8c4131ef]{font-size:14px;font-weight:600;color:#cbd5e1;margin:0 0 4px}.widget-type-name-styled[data-v-8c4131ef]{font-size:11px;color:#94a3b8;text-transform:uppercase;letter-spacing:.5px}.widget-settings-content-clean[data-v-8c4131ef]{padding:0;background:#1b242d;border-radius:0 0 6px 6px;overflow:hidden;max-height:calc(100vh - 400px);overflow-y:auto}.widget-options-wrapper[data-v-8c4131ef]{padding:0;margin:0;background:transparent}.widget-options-wrapper .chart-options[data-v-8c4131ef]{padding:12px;background:transparent}.widget-options-wrapper .option-section[data-v-8c4131ef]{margin-bottom:16px;padding:12px;background:#27323d;border:1px solid #384554;border-radius:4px}.widget-options-wrapper .section-title[data-v-8c4131ef]{font-size:11px;font-weight:600;color:#cbd5e1;margin:0 0 8px;text-transform:uppercase;letter-spacing:.5px}.widget-options-wrapper .option-item[data-v-8c4131ef]{margin-bottom:8px}.widget-options-wrapper .option-item label[data-v-8c4131ef]{font-size:10px;font-weight:500;color:#94a3b8;margin-bottom:3px}.widget-options-wrapper .input-field[data-v-8c4131ef],.widget-options-wrapper .select-field[data-v-8c4131ef],.widget-options-wrapper .textarea-field[data-v-8c4131ef]{padding:4px 6px;font-size:11px;background:#1b242d;border:1px solid #384554;color:#e2e8f0;border-radius:3px}.widget-options-wrapper .input-field[data-v-8c4131ef]:focus,.widget-options-wrapper .select-field[data-v-8c4131ef]:focus,.widget-options-wrapper .textarea-field[data-v-8c4131ef]:focus{border-color:#3b82f6;box-shadow:0 0 0 1px #3b82f666}.no-options-wrapper[data-v-8c4131ef]{padding:32px 16px;display:flex;justify-content:center;align-items:center;min-height:200px}.no-options-content[data-v-8c4131ef]{text-align:center}.no-options-icon[data-v-8c4131ef]{font-size:32px;display:block;margin-bottom:12px}.no-options-text h5[data-v-8c4131ef]{font-size:14px;font-weight:600;color:#cbd5e1;margin:0 0 4px}.no-options-text p[data-v-8c4131ef]{color:#94a3b8;margin:0}@media (max-width:1100px){.actions-row[data-v-8c4131ef]{grid-template-columns:40px 1fr 80px 70px 70px 140px 60px}}@media (max-width:900px){.actions-row[data-v-8c4131ef]{grid-template-columns:40px 1fr 80px 70px 70px}.actions-row .mode-col[data-v-8c4131ef],.actions-row .ctrl-col[data-v-8c4131ef]{grid-column:1 / -1;display:flex;gap:8px}.actions-row .ctrl-col[data-v-8c4131ef]{justify-content:flex-end}}@media (max-width: 1100px){.property-row[data-v-8c4131ef]{grid-template-columns:120px 180px 1fr}.event-row[data-v-8c4131ef]{grid-template-columns:90px 120px 1fr 150px 60px}}@media (max-width: 880px){.property-row[data-v-8c4131ef]{grid-template-columns:1fr}.property-row .field-col[data-v-8c4131ef]{margin-bottom:4px}.property-row .desc-col[data-v-8c4131ef]{margin-top:4px;padding-left:8px}.event-row[data-v-8c4131ef]{grid-template-columns:90px 120px 1fr}.event-row .desc-col[data-v-8c4131ef],.event-row .ctrl-col[data-v-8c4131ef]{grid-column:1 / -1;display:flex;gap:6px}.event-row .ctrl-col[data-v-8c4131ef]{justify-content:flex-end}}.property-list select[data-v-8c4131ef]:focus,.property-list input[data-v-8c4131ef]:focus,.property-list textarea[data-v-8c4131ef]:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 2px #3b82f640}.property-actions-line[data-v-8c4131ef]{display:flex;justify-content:flex-end}.sidebar-title-svg-group[data-v-8c4131ef]{display:flex;align-items:center;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none;padding-right:12px}.sidebar-group-name[data-v-8c4131ef]{flex:1}.sidebar-group-arrow[data-v-8c4131ef]{margin-left:16px;font-size:16px;color:#a0aec0;transition:color .2s}.view-section[data-v-8c4131ef]{padding:0 12px;position:relative}.view-create-bar[data-v-8c4131ef]{margin-bottom:8px;display:flex;gap:4px}.view-create-btn-small[data-v-8c4131ef]{flex:1;display:flex;align-items:center;justify-content:center;padding:5px;background:#4a5568;color:#e2e8f0;border:1px solid #718096;border-radius:6px;font-weight:500;cursor:pointer;transition:all .2s}.view-create-btn-small[data-v-8c4131ef]:hover{background:#718096;border-color:#a0aec0;transform:translateY(-1px);box-shadow:0 4px 12px #0003}.view-create-icon[data-v-8c4131ef]{width:14px;height:14px}.view-list[data-v-8c4131ef]{display:flex;flex-direction:column;gap:4px;max-height:200px;overflow-y:auto;overflow-x:visible}.view-item[data-v-8c4131ef]{display:flex;align-items:center;justify-content:space-between;padding:0 10px;background:#4a5568;border:1px solid #718096;border-radius:6px;cursor:pointer;transition:all .2s;position:relative}.view-item[data-v-8c4131ef]:hover{border-color:#a0aec0;box-shadow:0 2px 8px #0003}.view-item.active[data-v-8c4131ef]{background:#718096;border-color:#a0aec0;box-shadow:0 2px 8px #0000004d}.view-name-wrapper[data-v-8c4131ef]{flex:1;min-width:0}.view-name[data-v-8c4131ef]{font-size:13px;font-weight:500;color:#e2e8f0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.view-name-input[data-v-8c4131ef]{width:100%;font-size:13px;font-weight:500;color:#2d3748;background:#e2e8f0;border:1px solid #a0aec0;border-radius:3px;padding:2px 4px;outline:none}.view-menu-wrapper[data-v-8c4131ef]{position:relative}.view-menu-btn[data-v-8c4131ef]{background:none;border:none;color:#a0aec0;font-size:16px;font-weight:700;cursor:pointer;border-radius:3px;transition:all .2s;line-height:1}.view-menu-btn[data-v-8c4131ef]:hover{background:#2d3748;color:#e2e8f0}.view-menu-dropdown[data-v-8c4131ef]{position:absolute;top:0;left:100%;margin-top:4px;margin-left:50px;background:#4a5568;border:1px solid #718096;border-radius:8px;box-shadow:0 10px 30px #0006;z-index:9999;min-width:80px;padding:4px}.menu-item[data-v-8c4131ef]{display:flex;align-items:center;gap:8px;width:100%;padding:8px 12px;background:none;border:none;text-align:left;color:#e2e8f0;cursor:pointer;transition:background .2s}.menu-item[data-v-8c4131ef]:hover{background:#2d3748}.menu-item.danger[data-v-8c4131ef]{color:#fc8181}.menu-item.danger[data-v-8c4131ef]:hover{background:#742a2a}.menu-item span[data-v-8c4131ef]{font-size:14px}.color-palette[data-v-8c4131ef]{height:40px;background:#2d3748;border-top:1px solid #4a5568;display:flex;align-items:center;padding:0 16px;gap:16px}.color-palette-info[data-v-8c4131ef]{display:flex;align-items:center;gap:12px}.zoom-indicator[data-v-8c4131ef]{color:#e2e8f0;font-weight:500;min-width:40px}.color-display[data-v-8c4131ef]{display:flex;align-items:center}.current-colors[data-v-8c4131ef]{display:flex;gap:4px}.color-box[data-v-8c4131ef]{width:24px;height:24px;border:2px solid #4a5568;border-radius:3px;cursor:pointer;transition:all .2s;position:relative}.color-box[data-v-8c4131ef]:hover{border-color:#e2e8f0;transform:scale(1.1)}.color-box.primary[data-v-8c4131ef]{z-index:2}.color-box.secondary[data-v-8c4131ef]{margin-left:-8px;z-index:1}.color-palette-colors[data-v-8c4131ef]{display:flex;gap:2px;flex:1;overflow-x:auto;padding:4px 0}.palette-color[data-v-8c4131ef]{width:20px;height:20px;border:1px solid #4a5568;border-radius:2px;cursor:pointer;transition:all .2s;flex-shrink:0}.palette-color[data-v-8c4131ef]:hover{border-color:#e2e8f0;transform:scale(1.2);z-index:10;box-shadow:0 2px 8px #0000004d}.create-view-dialog-overlay[data-v-8c4131ef]{position:fixed;inset:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:6000}.create-view-dialog[data-v-8c4131ef]{background:#2d3748;border-radius:12px;box-shadow:0 24px 72px #0000008c;width:780px;max-width:96vw;max-height:96vh;min-height:70vh;overflow:hidden;display:flex;flex-direction:column}.create-view-dialog.create-view-modal[data-v-8c4131ef]{width:480px;min-height:auto;max-height:90vh}.create-view-dialog.property-dialog[data-v-8c4131ef]{width:60%;height:80%}.property-body[data-v-8c4131ef]{padding:12px;display:flex;flex-direction:column;gap:18px;overflow:hidden;flex:1;min-height:0}.create-view-header[data-v-8c4131ef]{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid #4a5568;background:#1a202c}.create-view-header h3[data-v-8c4131ef]{margin:0;font-size:18px;color:#fff;font-weight:600}.close-btn[data-v-8c4131ef]{border:none;background:none;font-size:24px;color:#a0aec0;cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:6px;transition:background .2s,color .2s}.close-btn[data-v-8c4131ef]:hover{background:#718096;color:#e2e8f0}.create-view-content[data-v-8c4131ef]{padding:20px}.form-group[data-v-8c4131ef]{margin-bottom:16px}.form-row[data-v-8c4131ef]{display:flex;gap:16px}.form-row .form-group[data-v-8c4131ef]{flex:1}.form-group label[data-v-8c4131ef]{display:block;font-size:14px;color:#fff;font-weight:500;margin-bottom:8px}.form-input[data-v-8c4131ef]{width:100%;padding:10px 12px;border:1px solid #4a5568;border-radius:6px;font-size:14px;color:#fff;background:#1a202c;transition:border-color .2s,box-shadow .2s}.form-input[data-v-8c4131ef]:focus{outline:none;border-color:#63b3ed;box-shadow:0 0 0 3px #63b3ed33}.form-select[data-v-8c4131ef]{width:100%;padding:10px 12px;border:1px solid #4a5568;border-radius:6px;font-size:14px;color:#fff;background:#1a202c;transition:border-color .2s,box-shadow .2s;cursor:pointer}.form-select[data-v-8c4131ef]:focus{outline:none;border-color:#63b3ed;box-shadow:0 0 0 3px #63b3ed33}.form-select option[data-v-8c4131ef]{background:#1a202c;color:#fff;padding:8px 12px}.size-display[data-v-8c4131ef]{padding:10px 12px;border:1px solid #4a5568;border-radius:6px;font-size:14px;color:#a0aec0;background:#1a202c;font-family:monospace;text-align:center}.color-picker-group[data-v-8c4131ef]{display:flex;gap:10px;align-items:center}.color-picker[data-v-8c4131ef]{width:44px;height:32px;padding:0;border:none;border-radius:6px;cursor:pointer;background:transparent;-webkit-appearance:none;-moz-appearance:none;appearance:none;overflow:hidden}.color-picker[data-v-8c4131ef]::-webkit-color-swatch-wrapper{padding:0;border:none}.color-picker[data-v-8c4131ef]::-webkit-color-swatch{border:none;border-radius:6px}.color-picker[data-v-8c4131ef]::-moz-color-swatch{border:none;border-radius:6px}.color-picker[data-v-8c4131ef]:focus{outline:none;box-shadow:0 0 0 2px #63b3ed66}.color-text[data-v-8c4131ef]{flex:1;padding:10px 12px;border:1px solid #4a5568;border-radius:6px;font-size:14px;color:#fff;background:#1a202c}.create-view-actions[data-v-8c4131ef]{display:flex;gap:12px;justify-content:flex-end;padding:16px 20px;border-top:1px solid #4a5568;background:#1a202c}.btn-cancel[data-v-8c4131ef],.btn-create[data-v-8c4131ef]{padding:10px 20px;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s;border:none}.btn-cancel[data-v-8c4131ef]{background:#4a5568;color:#fff}.btn-cancel[data-v-8c4131ef]:hover{background:#718096}.btn-create[data-v-8c4131ef]{background:#3182ce;color:#fff}.btn-create[data-v-8c4131ef]:hover{background:#2b6cb0;transform:translateY(-1px);box-shadow:0 4px 12px #3182ce66}.btn-save[data-v-8c4131ef]{background:#16a34a;color:#fff;padding:5px 10px;border-radius:6px;font-size:14px;font-weight:600;cursor:pointer;border:1px solid #16a34a;transition:all .2s}.btn-save[data-v-8c4131ef]:hover:not(:disabled){background:#15803d;border-color:#15803d;box-shadow:0 4px 12px #00000059;transform:translateY(-1px)}.btn-save[data-v-8c4131ef]:active:not(:disabled){background:#166534;transform:translateY(0);box-shadow:none}.btn-save[data-v-8c4131ef]:disabled{background:#9ca3af;border-color:#9ca3af;cursor:not-allowed;opacity:.6}.canvas-widgets.drawing-active .canvas-widget[data-v-8c4131ef]{pointer-events:none!important}.canvas-widgets.drawing-active[data-drawing-tool=pentool] .canvas-widget[data-v-8c4131ef]{visibility:hidden!important}.canvas-widgets.drawing-active:not([data-drawing-tool=pentool]) .canvas-widget[data-v-8c4131ef]{opacity:.5!important}.canvas-widgets.drawing-active[data-v-8c4131ef]{cursor:crosshair!important}.dialog-view-overlay[data-v-8c4131ef]{position:absolute;top:0;left:0;width:100%;height:100%;background:#00000080;display:flex;align-items:center;justify-content:center;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.dialog-view-container[data-v-8c4131ef]{background:#fff;border-radius:8px;box-shadow:0 20px 60px #0006;max-width:95vw;max-height:95vh;overflow:hidden;display:flex;flex-direction:column}.dialog-view-header[data-v-8c4131ef]{height:36px;background:linear-gradient(135deg,#1a1a2e,#16213e);display:flex;align-items:center;justify-content:space-between;padding:0 12px;cursor:move;-webkit-user-select:none;-moz-user-select:none;user-select:none}.dialog-view-title[data-v-8c4131ef]{color:#fff;font-weight:500}.dialog-view-close[data-v-8c4131ef]{background:transparent;border:none;color:#fff;font-size:20px;cursor:pointer;width:28px;height:28px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:background .15s}.dialog-view-close[data-v-8c4131ef]:hover{background:#ffffff1a}.dialog-view-content[data-v-8c4131ef]{flex:1;overflow:auto}.scada-preview-modal-overlay[data-v-8c4131ef]{position:fixed;top:0;left:0;width:100%;height:100%;background:#000;z-index:15000;overflow:hidden}.scada-preview-modal[data-v-8c4131ef]{width:100%;height:100%;position:relative}.preview-exit-btn[data-v-8c4131ef]{position:absolute;top:16px;right:16px;z-index:16000;width:40px;height:40px;background:#000000b3;color:#fff;border:1px solid rgba(255,255,255,.2);border-radius:8px;cursor:pointer;font-size:18px;font-weight:700;display:flex;align-items:center;justify-content:center;transition:all .2s ease;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.preview-exit-btn[data-v-8c4131ef]:hover{background:#ef4444e6;border-color:#fff6;transform:scale(1.05)}.preview-canvas-wrapper[data-v-8c4131ef]{width:100vw;height:100vh;display:flex;align-items:center;justify-content:center;overflow-x:hidden;overflow-y:hidden;background:#000;-webkit-overflow-scrolling:touch;scroll-behavior:smooth}.preview-canvas-wrapper[data-v-8c4131ef]::-webkit-scrollbar{height:10px}.preview-canvas-wrapper[data-v-8c4131ef]::-webkit-scrollbar-track{background:#ffffff0d}.preview-canvas-wrapper[data-v-8c4131ef]::-webkit-scrollbar-thumb{background:#ffffff4d;border-radius:5px}.preview-canvas-wrapper[data-v-8c4131ef]::-webkit-scrollbar-thumb:hover{background:#ffffff80}.preview-canvas-content[data-v-8c4131ef]{position:relative;flex-shrink:0}.preview-widget[data-v-8c4131ef]{transition:all .2s ease}.preview-widget.interactive-widget[data-v-8c4131ef]{transition:filter .15s ease-out}.preview-widget.interactive-widget[data-v-8c4131ef]:hover{filter:brightness(1.08)}.preview-widget.widget-pressed[data-v-8c4131ef],.widget-pressed[data-v-8c4131ef]{transform:scale(.95) translateY(-1px)!important;transition:all .1s ease-out!important}.widget-element[data-v-8c4131ef],.draggable-widget[data-v-8c4131ef],[draggable=true][data-v-8c4131ef]{transition:all .2s ease-out}.widget-element[data-v-8c4131ef]:hover,.draggable-widget[data-v-8c4131ef]:hover,[draggable=true][data-v-8c4131ef]:hover{transform:translateY(-1px);box-shadow:0 4px 12px #0000001a}.widget-library-modal-overlay[data-v-8c4131ef]{position:fixed;top:0;left:0;width:100%;height:100%;background:#000000b3;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:10000;display:flex;align-items:center;justify-content:center}.widget-library-modal[data-v-8c4131ef]{background:#fff;border-radius:16px;box-shadow:0 25px 80px #00000059;width:90%;max-width:1100px;height:85%;max-height:750px;display:flex;flex-direction:column;overflow:hidden}.widget-library-modal-header[data-v-8c4131ef]{display:flex;justify-content:space-between;align-items:center;padding:18px 24px;border-bottom:1px solid #e5e7eb;background:linear-gradient(to bottom,#f8fafc,#fff)}.widget-library-modal-title[data-v-8c4131ef]{color:#1f2937;font-size:18px;font-weight:700;margin:0;display:flex;align-items:center;gap:10px}.widget-library-modal-title[data-v-8c4131ef]:before{content:"";width:4px;height:20px;background:linear-gradient(135deg,#3b82f6,#2563eb);border-radius:2px}.widget-library-modal-close[data-v-8c4131ef]{background:none;border:none;color:#9ca3af;font-size:24px;cursor:pointer;padding:0;width:36px;height:36px;display:flex;align-items:center;justify-content:center;border-radius:8px;transition:all .2s}.widget-library-modal-close[data-v-8c4131ef]:hover{background:#fee2e2;color:#dc2626}.widget-library-modal-content[data-v-8c4131ef]{display:flex;flex:1;overflow:hidden}.widget-library-categories[data-v-8c4131ef]{width:180px;background:#f8fafc;border-right:1px solid #e5e7eb;overflow-y:auto;padding:12px 0;flex-shrink:0}.widget-library-category-item[data-v-8c4131ef]{padding:12px 20px;color:#6b7280;cursor:pointer;transition:all .2s;border-left:3px solid transparent;font-size:13px;font-weight:500;margin:2px 8px;border-radius:0 8px 8px 0}.widget-library-category-item[data-v-8c4131ef]:hover{background:#fff;color:#374151;border-left-color:#d1d5db}.widget-library-category-item.active[data-v-8c4131ef]{background:#eff6ff;color:#2563eb;border-left-color:#2563eb;font-weight:600}.widget-library-grid-modal[data-v-8c4131ef]{flex:1;display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:20px;padding:20px;overflow-y:auto;background:#fff;align-content:start}.widget-library-modal-item[data-v-8c4131ef]{background:#fff;border-radius:12px;padding:12px;cursor:pointer;transition:all .2s ease;border:1px solid #e5e7eb;display:flex;flex-direction:column;height:280px;box-shadow:0 1px 3px #0000000d}.widget-library-modal-item[data-v-8c4131ef]:hover{border-color:#93c5fd;transform:translateY(-2px);box-shadow:0 8px 20px #3b82f626}.widget-library-modal-item:hover .widget-thumbnail-container[data-v-8c4131ef]{border-color:#93c5fd;background:#f0f9ff}.widget-library-modal-preview[data-v-8c4131ef]{width:100%;flex:1;border-radius:8px;display:flex;align-items:center;justify-content:center;overflow:hidden;min-height:0}.widget-library-modal-preview[data-v-8c4131ef]>*{pointer-events:none}.widget-thumbnail-container[data-v-8c4131ef]{width:100%;height:100%;display:flex;align-items:center;justify-content:center;background:#f8fafc;border-radius:8px;overflow:hidden;position:relative;transition:all .2s}.widget-thumbnail[data-v-8c4131ef]{width:100%;height:100%;max-width:100%;max-height:100%;pointer-events:none;box-sizing:border-box;display:flex;justify-content:center}.widget-thumbnail-container.thumbnail-chart[data-v-8c4131ef]{padding:0}.widget-thumbnail-container.thumbnail-chart .widget-thumbnail[data-v-8c4131ef]{transform-origin:center center}.widget-thumbnail-container.thumbnail-control[data-v-8c4131ef]{padding:8px;display:flex;align-items:center;justify-content:center;background:#fff}.widget-thumbnail-container.thumbnail-control .widget-thumbnail[data-v-8c4131ef]{transform:scale(.75);transform-origin:center center;width:133%;height:133%;filter:none;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.widget-thumbnail-container.thumbnail-circular-slider[data-v-8c4131ef]{padding:10px;display:flex;align-items:center;justify-content:center;background:#fff}.widget-thumbnail-container.thumbnail-circular-slider .widget-thumbnail[data-v-8c4131ef]{transform:scale(.65);transform-origin:center center;width:154%;height:154%;filter:none}.widget-thumbnail-container.thumbnail-horizontal-slider[data-v-8c4131ef]{padding:16px 12px;display:flex;align-items:center;justify-content:center;background:#fff}.widget-thumbnail-container.thumbnail-horizontal-slider .widget-thumbnail[data-v-8c4131ef]{transform:scale(.85);transform-origin:center center;width:118%;height:118%;filter:none}.widget-thumbnail-container.thumbnail-vertical-slider[data-v-8c4131ef]{padding:8px 16px;display:flex;align-items:center;justify-content:center;background:#fff}.widget-thumbnail-container.thumbnail-vertical-slider .widget-thumbnail[data-v-8c4131ef]{transform:scale(.55);transform-origin:center center;width:182%;height:182%;filter:none}.widget-thumbnail-container.thumbnail-gauge[data-v-8c4131ef]{padding:10px}.widget-thumbnail-container.thumbnail-gauge .widget-thumbnail[data-v-8c4131ef]{transform:scale(.6);transform-origin:center center;width:160%;height:160%}.widget-thumbnail-container.thumbnail-map[data-v-8c4131ef]{padding:0}.widget-thumbnail-container.thumbnail-map .widget-thumbnail[data-v-8c4131ef]{transform-origin:center center}.widget-thumbnail-container.thumbnail-alarm[data-v-8c4131ef]{padding:0;overflow:hidden;align-items:flex-start;justify-content:flex-start}.widget-thumbnail-container.thumbnail-alarm .widget-thumbnail[data-v-8c4131ef]{transform-origin:top left;margin:0}.widget-thumbnail-container.thumbnail-device[data-v-8c4131ef]{padding:0;overflow:hidden;align-items:flex-start;justify-content:flex-start}.widget-thumbnail-container.thumbnail-device .widget-thumbnail[data-v-8c4131ef]{transform-origin:top left;margin:0}.widget-thumbnail-container.thumbnail-vertical-box[data-v-8c4131ef]{padding:8px;display:flex;align-items:center;justify-content:center}.widget-thumbnail-container.thumbnail-vertical-box .widget-thumbnail[data-v-8c4131ef]{transform:scale(.45);transform-origin:center center;width:220%;height:220%}.widget-preview-placeholder[data-v-8c4131ef]{width:100%;height:100%;min-height:80px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#f1f5f9,#e2e8f0);border-radius:8px;color:#94a3b8}.widget-library-empty[data-v-8c4131ef]{grid-column:1 / -1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;color:#9ca3af;text-align:center}.widget-library-empty p[data-v-8c4131ef]{margin-top:16px;font-size:14px;color:#6b7280}.widget-library-modal-name[data-v-8c4131ef]{color:#374151;font-size:12px;font-weight:600;text-align:center;line-height:1.4;padding:10px 4px 4px;max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.widget-library-modal-item.selected[data-v-8c4131ef]{border-color:#2563eb;background:#eff6ff;box-shadow:0 4px 16px #2563eb40}.widget-library-modal-item.selected .widget-thumbnail-container[data-v-8c4131ef]{border-color:#3b82f6;background:#dbeafe}.widget-library-modal-item.selected .widget-library-modal-name[data-v-8c4131ef]{color:#1d4ed8;font-weight:700}.widget-library-modal-item.selected .widget-library-modal-preview[data-v-8c4131ef]{background:#3b82f60d;border-color:#3b82f6}.widget-library-modal-footer[data-v-8c4131ef]{display:flex;justify-content:flex-end;align-items:center;gap:12px;padding:16px 24px;border-top:1px solid #e5e7eb;background:#f9fafb}.widget-library-modal-footer .btn-cancel[data-v-8c4131ef]{padding:10px 20px;background:#fff;color:#6b7280;border:1px solid #d1d5db;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s}.widget-library-modal-footer .btn-cancel[data-v-8c4131ef]:hover{background:#f3f4f6;border-color:#9ca3af;color:#374151}.widget-library-modal-footer .btn-primary[data-v-8c4131ef]{padding:10px 24px;background:linear-gradient(135deg,#3b82f6,#2563eb);color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s;box-shadow:0 2px 8px #2563eb40}.widget-library-modal-footer .btn-primary[data-v-8c4131ef]:hover:not(:disabled){background:linear-gradient(135deg,#2563eb,#1d4ed8);box-shadow:0 4px 12px #2563eb59;transform:translateY(-1px)}.widget-library-modal-footer .btn-primary[data-v-8c4131ef]:disabled{opacity:.5;cursor:not-allowed;transform:none;box-shadow:none}.widget-library-container[data-v-8c4131ef]{padding:8px 12px}.widget-library-button-full[data-v-8c4131ef]{width:100%;height:40px;background:linear-gradient(135deg,#3b82f6,#2563eb);color:#fff;border:none;border-radius:8px;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center;gap:8px;box-shadow:0 2px 4px #3b82f633;position:relative;overflow:hidden;font-size:14px;font-weight:500}.widget-library-button-full[data-v-8c4131ef]:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);transition:left .5s}.widget-library-button-full[data-v-8c4131ef]:hover{background:linear-gradient(135deg,#2563eb,#1d4ed8);transform:translateY(-1px);box-shadow:0 4px 12px #3b82f666}.widget-library-button-full[data-v-8c4131ef]:hover:before{left:100%}.widget-library-button-full[data-v-8c4131ef]:active{transform:translateY(0);box-shadow:0 2px 4px #3b82f64d}@keyframes fadeIn-8c4131ef{0%{opacity:0}to{opacity:1}}@keyframes fadeOut-8c4131ef{0%{opacity:1}to{opacity:0}}@keyframes scaleUp-8c4131ef{0%{transform:scale(1)}to{transform:scale(1.2)}}@keyframes scaleDown-8c4131ef{0%{transform:scale(1)}to{transform:scale(.8)}}@keyframes shake-8c4131ef{0%,to{transform:translate(0)}10%,30%,50%,70%,90%{transform:translate(-5px)}20%,40%,60%,80%{transform:translate(5px)}}@keyframes pulse-8c4131ef{0%,to{opacity:1;transform:scale(1)}50%{opacity:.7;transform:scale(1.05)}}@keyframes bounce-8c4131ef{0%,20%,53%,80%,to{transform:translateY(0)}40%,43%{transform:translateY(-15px)}70%{transform:translateY(-7px)}90%{transform:translateY(-3px)}}@keyframes slideInUp-8c4131ef{0%{transform:translateY(100%);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes slideInDown-8c4131ef{0%{transform:translateY(-100%);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes slideInLeft-8c4131ef{0%{transform:translate(-100%);opacity:0}to{transform:translate(0);opacity:1}}@keyframes slideInRight-8c4131ef{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}@keyframes slideOutUp-8c4131ef{0%{transform:translateY(0);opacity:1}to{transform:translateY(-100%);opacity:0}}@keyframes slideOutDown-8c4131ef{0%{transform:translateY(0);opacity:1}to{transform:translateY(100%);opacity:0}}@keyframes slideOutLeft-8c4131ef{0%{transform:translate(0);opacity:1}to{transform:translate(-100%);opacity:0}}@keyframes slideOutRight-8c4131ef{0%{transform:translate(0);opacity:1}to{transform:translate(100%);opacity:0}}@keyframes flash-8c4131ef{0%,50%,to{opacity:1}25%,75%{opacity:.3}}@keyframes glow-8c4131ef{0%,to{box-shadow:0 0 5px #3b82f699}50%{box-shadow:0 0 20px #3b82f6,0 0 30px #3b82f6cc}}@keyframes blink-8c4131ef{0%,50%{opacity:1}51%,to{opacity:0}}@keyframes turnClockwise-8c4131ef{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes turnCounterClockwise-8c4131ef{0%{transform:rotate(0)}to{transform:rotate(-360deg)}}@keyframes zoomIn-8c4131ef{0%{transform:scale(.3);opacity:0}to{transform:scale(1);opacity:1}}@keyframes zoomOut-8c4131ef{0%{transform:scale(1);opacity:1}to{transform:scale(.3);opacity:0}}@keyframes rotate360-8c4131ef{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes wiggle-8c4131ef{0%,to{transform:rotate(0)}25%{transform:rotate(-3deg)}75%{transform:rotate(3deg)}}@keyframes elastic-8c4131ef{0%{transform:scale(1)}20%{transform:scale(1.2)}40%{transform:scale(.9)}60%{transform:scale(1.1)}80%{transform:scale(.95)}to{transform:scale(1)}}.widget-action-fade-in[data-v-8c4131ef]{animation:fadeIn-8c4131ef var(--animation-duration, 1s) var(--animation-easing, ease) var(--animation-delay, 0s)}.widget-action-fade-out[data-v-8c4131ef]{animation:fadeOut-8c4131ef var(--animation-duration, 1s) var(--animation-easing, ease) var(--animation-delay, 0s)}.widget-action-scale-up[data-v-8c4131ef]{animation:scaleUp-8c4131ef var(--animation-duration, .5s) var(--animation-easing, ease) var(--animation-delay, 0s)}.widget-action-scale-down[data-v-8c4131ef]{animation:scaleDown-8c4131ef var(--animation-duration, .5s) var(--animation-easing, ease) var(--animation-delay, 0s)}.widget-action-shake[data-v-8c4131ef]{animation:shake-8c4131ef var(--animation-duration, .6s) var(--animation-easing, ease) var(--animation-delay, 0s)}.widget-action-pulse[data-v-8c4131ef]{animation:pulse-8c4131ef var(--animation-duration, 1s) var(--animation-easing, ease) var(--animation-delay, 0s) infinite}.widget-action-bounce[data-v-8c4131ef]{animation:bounce-8c4131ef var(--animation-duration, 1s) var(--animation-easing, ease) var(--animation-delay, 0s)}.widget-action-slide-in-up[data-v-8c4131ef]{animation:slideInUp-8c4131ef var(--animation-duration, .8s) var(--animation-easing, ease) var(--animation-delay, 0s)}.widget-action-slide-in-down[data-v-8c4131ef]{animation:slideInDown-8c4131ef var(--animation-duration, .8s) var(--animation-easing, ease) var(--animation-delay, 0s)}.widget-action-slide-in-left[data-v-8c4131ef]{animation:slideInLeft-8c4131ef var(--animation-duration, .8s) var(--animation-easing, ease) var(--animation-delay, 0s)}.widget-action-slide-in-right[data-v-8c4131ef]{animation:slideInRight-8c4131ef var(--animation-duration, .8s) var(--animation-easing, ease) var(--animation-delay, 0s)}.widget-action-slide-out-up[data-v-8c4131ef]{animation:slideOutUp-8c4131ef var(--animation-duration, .8s) var(--animation-easing, ease) var(--animation-delay, 0s)}.widget-action-slide-out-down[data-v-8c4131ef]{animation:slideOutDown-8c4131ef var(--animation-duration, .8s) var(--animation-easing, ease) var(--animation-delay, 0s)}.widget-action-slide-out-left[data-v-8c4131ef]{animation:slideOutLeft-8c4131ef var(--animation-duration, .8s) var(--animation-easing, ease) var(--animation-delay, 0s)}.widget-action-slide-out-right[data-v-8c4131ef]{animation:slideOutRight-8c4131ef var(--animation-duration, .8s) var(--animation-easing, ease) var(--animation-delay, 0s)}.widget-action-flash[data-v-8c4131ef]{animation:flash-8c4131ef var(--animation-duration, 1s) var(--animation-easing, ease) var(--animation-delay, 0s) infinite}.widget-action-glow[data-v-8c4131ef]{animation:glow-8c4131ef var(--animation-duration, 2s) var(--animation-easing, ease) var(--animation-delay, 0s) infinite}.widget-action-blink[data-v-8c4131ef]{animation:blink-8c4131ef var(--animation-duration, 1s) var(--animation-easing, step-end) var(--animation-delay, 0s) infinite}.widget-action-turn-cw[data-v-8c4131ef]{animation:turnClockwise-8c4131ef var(--animation-duration, 2s) var(--animation-easing, linear) var(--animation-delay, 0s) infinite}.widget-action-turn-ccw[data-v-8c4131ef]{animation:turnCounterClockwise-8c4131ef var(--animation-duration, 2s) var(--animation-easing, linear) var(--animation-delay, 0s) infinite}.widget-action-zoom-in[data-v-8c4131ef]{animation:zoomIn-8c4131ef var(--animation-duration, .8s) var(--animation-easing, ease) var(--animation-delay, 0s)}.widget-action-zoom-out[data-v-8c4131ef]{animation:zoomOut-8c4131ef var(--animation-duration, .8s) var(--animation-easing, ease) var(--animation-delay, 0s)}.widget-action-rotate-360[data-v-8c4131ef]{animation:rotate360-8c4131ef var(--animation-duration, 1s) var(--animation-easing, ease) var(--animation-delay, 0s)}.widget-action-wiggle[data-v-8c4131ef]{animation:wiggle-8c4131ef var(--animation-duration, .8s) var(--animation-easing, ease) var(--animation-delay, 0s)}.widget-action-elastic[data-v-8c4131ef]{animation:elastic-8c4131ef var(--animation-duration, 1.2s) var(--animation-easing, ease) var(--animation-delay, 0s)}.widget-action-hidden[data-v-8c4131ef]{opacity:0!important;pointer-events:none;visibility:hidden}.widget-action-stopped[data-v-8c4131ef] *{animation-play-state:paused!important}.actions-enhanced[data-v-8c4131ef]{max-height:500px;overflow-y:auto;padding:16px}.actions-grid[data-v-8c4131ef]{margin-bottom:20px}.action-card[data-v-8c4131ef]{border:2px solid #e5e7eb;border-radius:12px;background:#fff;box-shadow:0 2px 8px #0000001a;overflow:hidden;transition:all .2s ease}.action-card[data-v-8c4131ef]:hover{border-color:#3b82f6;box-shadow:0 4px 12px #3b82f626}.action-header[data-v-8c4131ef]{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;background:linear-gradient(135deg,#f8fafc,#e2e8f0);border-bottom:1px solid #e5e7eb}.action-title[data-v-8c4131ef]{display:flex;align-items:center;gap:8px;font-weight:600;color:#374151}.action-title input[type=checkbox][data-v-8c4131ef]{width:18px;height:18px;accent-color:#3b82f6}.action-title span[data-v-8c4131ef]{font-size:14px;color:#6b7280;font-family:monospace}.action-body[data-v-8c4131ef]{padding:16px}.action-section[data-v-8c4131ef]{margin-bottom:20px}.action-section[data-v-8c4131ef]:last-child{margin-bottom:0}.action-section h4[data-v-8c4131ef]{margin:0 0 12px;font-size:13px;font-weight:600;color:#374151;text-transform:uppercase;letter-spacing:.5px;border-bottom:1px solid #e5e7eb;padding-bottom:6px}.form-grid[data-v-8c4131ef]{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:12px}.form-group[data-v-8c4131ef]{display:flex;flex-direction:column;gap:4px}.form-group label[data-v-8c4131ef]{font-weight:500;color:#6b7280;display:flex;align-items:center;gap:6px}.form-group input[data-v-8c4131ef],.form-group select[data-v-8c4131ef]{border-radius:6px;font-size:13px;transition:all .2s ease}.form-group input[data-v-8c4131ef]:focus,.form-group select[data-v-8c4131ef]:focus{outline:none;box-shadow:0 0 0 3px #3b82f61a}.effect-select[data-v-8c4131ef]{font-weight:500}.effect-select optgroup[data-v-8c4131ef]{font-weight:600;color:#374151;background:#f9fafb}.effect-select option[data-v-8c4131ef]{font-weight:400;color:#6b7280;padding:4px 8px}.icon-btn.small[data-v-8c4131ef]{width:24px;height:24px;padding:0;display:flex;align-items:center;justify-content:center}.add-action-section[data-v-8c4131ef]{padding:16px;border-top:2px dashed #d1d5db;text-align:center}.action-buttons[data-v-8c4131ef]{display:flex;gap:12px;justify-content:center;align-items:center}.action-controls[data-v-8c4131ef]{display:flex;align-items:center;gap:8px}.icon-btn.test[data-v-8c4131ef]{background:linear-gradient(135deg,#10b981,#059669);color:#fff;border:none;width:24px;height:24px;border-radius:4px;font-size:10px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s ease;box-shadow:0 1px 3px #10b9814d}.icon-btn.test[data-v-8c4131ef]:hover{transform:translateY(-1px);box-shadow:0 2px 6px #10b98166}.icon-btn.test[data-v-8c4131ef]:active{transform:translateY(0);box-shadow:0 1px 2px #10b9814d}.test-all-btn[data-v-8c4131ef]{display:inline-flex;align-items:center;gap:8px;padding:10px 18px;background:linear-gradient(135deg,#f59e0b,#d97706);color:#fff;border:none;border-radius:8px;font-weight:600;font-size:13px;cursor:pointer;transition:all .2s ease;box-shadow:0 2px 8px #f59e0b4d}.test-all-btn[data-v-8c4131ef]:hover{transform:translateY(-1px);box-shadow:0 4px 12px #f59e0b66}.test-all-btn[data-v-8c4131ef]:active{transform:translateY(0);box-shadow:0 2px 4px #f59e0b4d}.test-all-btn span[data-v-8c4131ef]{font-size:14px}.form-hint[data-v-8c4131ef]{font-size:11px;color:#6b7280;font-style:italic;margin-top:2px}.add-action-btn[data-v-8c4131ef]{display:inline-flex;align-items:center;gap:8px;padding:12px 24px;background:linear-gradient(135deg,#3b82f6,#1d4ed8);color:#fff;border:none;border-radius:8px;font-weight:600;cursor:pointer;transition:all .2s ease;box-shadow:0 2px 8px #3b82f64d}.add-action-btn[data-v-8c4131ef]:hover{transform:translateY(-1px);box-shadow:0 4px 12px #3b82f666}.add-action-btn[data-v-8c4131ef]:active{transform:translateY(0);box-shadow:0 2px 4px #3b82f64d}.add-action-btn span[data-v-8c4131ef]{font-size:18px;font-weight:700}.form-group label input[type=checkbox][data-v-8c4131ef]{width:16px;height:16px;margin-right:8px;accent-color:#3b82f6}@media (max-width: 768px){.form-grid[data-v-8c4131ef]{grid-template-columns:1fr}.action-header[data-v-8c4131ef]{flex-direction:column;gap:8px;align-items:flex-start}}.widget-library-button-full span[data-v-8c4131ef]{font-weight:600;letter-spacing:.025em}.create-view-dialog-overlay.minimized[data-v-8c4131ef]{opacity:0;pointer-events:none;transition:opacity .3s ease}.create-view-dialog-overlay.minimized .create-view-dialog[data-v-8c4131ef]{transform:translate(100%);transition:transform .3s ease}.header-buttons[data-v-8c4131ef]{display:flex;gap:8px;align-items:center}.restore-button[data-v-8c4131ef]{background:#10b981;color:#fff;border:none;width:28px;height:28px;border-radius:4px;cursor:pointer;font-size:14px;display:flex;align-items:center;justify-content:center;transition:background-color .2s}.restore-button[data-v-8c4131ef]:hover{background:#059669}.floating-restore-button[data-v-8c4131ef]{position:fixed;bottom:20px;right:20px;background:#3b82f6;color:#fff;border:none;padding:12px 16px;border-radius:8px;cursor:pointer;font-size:14px;font-weight:500;box-shadow:0 4px 12px #00000026;z-index:1000;transition:all .2s ease;display:flex;align-items:center;gap:8px}.floating-restore-button[data-v-8c4131ef]:hover{background:#2563eb;transform:translateY(-2px);box-shadow:0 6px 16px #0003}.tag-apply-section[data-v-8c4131ef]{margin-top:12px;padding:12px;background:#f8fafc;border-radius:6px;border:1px solid #e2e8f0}.apply-tag-btn[data-v-8c4131ef]{width:100%;background:#10b981;color:#fff;border:none;padding:8px 12px;border-radius:4px;cursor:pointer;font-size:13px;font-weight:500;transition:all .2s ease;display:flex;align-items:center;justify-content:center;gap:6px}.apply-tag-btn[data-v-8c4131ef]:disabled{background:#9ca3af;cursor:not-allowed}.tag-info[data-v-8c4131ef]{margin-top:8px;display:flex;flex-direction:column;gap:4px}.tag-info small[data-v-8c4131ef]{color:#6b7280;font-size:11px}.tag-value[data-v-8c4131ef]{color:#059669!important;font-weight:500}.tag-apply-section[data-v-8c4131ef]{margin-top:10px;padding:8px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:6px}.apply-tag-btn[data-v-8c4131ef]{background:#10b981;color:#fff;border:none;padding:6px 12px;border-radius:4px;cursor:pointer;font-weight:500;transition:all .2s ease;width:100%}.apply-tag-btn[data-v-8c4131ef]:hover:not(:disabled){background:#059669;transform:translateY(-1px)}.apply-tag-btn[data-v-8c4131ef]:disabled{background:#9ca3af;cursor:not-allowed;transform:none}.tag-info[data-v-8c4131ef]{margin-top:4px;display:flex;flex-direction:column;gap:2px}.tag-info small[data-v-8c4131ef]{color:#6b7280;font-size:10px}.tag-value[data-v-8c4131ef]{font-weight:600;color:#059669}.canvas-widget span[data-v-8c4131ef]{display:inline-block;word-break:break-word;text-align:center}.canvas-widget .widget-value[data-v-8c4131ef]{color:#059669;font-weight:600}.widget-settings-message[data-v-8c4131ef]{padding:2rem 1.5rem;text-align:center;background:linear-gradient(135deg,#f8fafc,#e2e8f0);border-radius:12px;margin:1rem 0;box-shadow:0 4px 6px -1px #0000001a}.widget-settings-message h3[data-v-8c4131ef]{color:#374151;font-size:1.25rem;font-weight:600;margin-bottom:1rem;display:flex;align-items:center;justify-content:center;gap:.5rem}.widget-preview-section[data-v-8c4131ef]{background:linear-gradient(135deg,#f8fafc,#e2e8f0);border:2px solid #e5e7eb;border-radius:12px;padding:1.5rem;margin-bottom:1.5rem;box-shadow:0 4px 12px #0000001a}.preview-header[data-v-8c4131ef]{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem;padding-bottom:.75rem;border-bottom:1px solid #d1d5db}.preview-header h5[data-v-8c4131ef]{color:#374151;font-size:1.1rem;font-weight:600;margin:0;display:flex;align-items:center;gap:.5rem}.preview-info[data-v-8c4131ef]{display:flex;flex-direction:column;align-items:flex-end;gap:.25rem}.widget-name[data-v-8c4131ef]{color:#1f2937;font-weight:600;font-size:.9rem}.widget-type[data-v-8c4131ef]{color:#6b7280;font-size:.8rem;padding:.25rem .5rem;background:#fff;border-radius:4px;border:1px solid #d1d5db}.preview-container[data-v-8c4131ef]{display:flex;flex-direction:column;gap:1rem}.preview-widget[data-v-8c4131ef]{border-radius:8px;padding:1rem;display:flex;align-items:center;justify-content:center;position:relative;transition:all .3s ease}.preview-value[data-v-8c4131ef]{position:absolute;top:8px;right:8px;background:#059669;color:#fff;padding:.25rem .5rem;border-radius:4px;font-size:.75rem;font-weight:600;box-shadow:0 2px 4px #0596694d}.preview-placeholder[data-v-8c4131ef]{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.5rem;color:#6b7280;opacity:.8}.preview-icon[data-v-8c4131ef]{font-size:2rem}.preview-text[data-v-8c4131ef]{font-size:.8rem;text-transform:capitalize;font-weight:500}.preview-properties[data-v-8c4131ef]{background:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:1rem;display:flex;flex-wrap:wrap;gap:1rem}.prop-item[data-v-8c4131ef]{display:flex;flex-direction:column;gap:.25rem;min-width:120px}.prop-label[data-v-8c4131ef]{color:#6b7280;font-size:.75rem;font-weight:500;text-transform:uppercase;letter-spacing:.05em}.prop-value[data-v-8c4131ef]{color:#1f2937;font-size:.85rem;font-weight:600;padding:.25rem .5rem;background:#f9fafb;border:1px solid #e5e7eb;border-radius:4px}.widget-preview-content[data-v-8c4131ef]{width:100%;height:100%;position:relative;display:flex;align-items:center;justify-content:center}.actual-widget-preview[data-v-8c4131ef]{width:100%;height:100%;display:flex;align-items:center;justify-content:center;overflow:hidden}.actual-widget-preview[data-v-8c4131ef]>*{max-width:100%!important;max-height:100%!important;overflow:hidden!important}.preview-value[data-v-8c4131ef]{position:absolute;top:8px;right:8px;background:#059669;color:#fff;padding:.25rem .5rem;border-radius:4px;font-size:.75rem;font-weight:600;box-shadow:0 2px 4px #0596694d;z-index:10}.gauge-preview[data-v-8c4131ef]{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.5rem}.gauge-circle[data-v-8c4131ef]{width:60px;height:60px;border-radius:50%;position:relative;background:#e5e7eb;padding:4px}.gauge-fill[data-v-8c4131ef]{width:100%;height:100%;border-radius:50%;position:relative}.gauge-center[data-v-8c4131ef]{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:36px;height:36px;background:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;box-shadow:0 2px 4px #0000001a}.gauge-value[data-v-8c4131ef]{font-size:.7rem;font-weight:600;color:#059669}.gauge-label[data-v-8c4131ef]{font-size:.75rem;color:#6b7280;text-align:center;max-width:80px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.info-preview[data-v-8c4131ef]{display:flex;align-items:center;gap:.75rem;padding:.5rem}.info-icon[data-v-8c4131ef]{font-size:1.5rem;flex-shrink:0}.info-content[data-v-8c4131ef]{flex:1;min-width:0}.info-title[data-v-8c4131ef]{font-size:.8rem;font-weight:600;color:#1f2937;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.info-value[data-v-8c4131ef]{font-size:.7rem;color:#6b7280;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;margin-top:.25rem}.control-preview[data-v-8c4131ef]{display:flex;align-items:center;justify-content:center}.control-button[data-v-8c4131ef]{background:linear-gradient(135deg,#3b82f6,#1d4ed8);color:#fff;padding:.5rem 1rem;border-radius:6px;display:flex;align-items:center;gap:.5rem;box-shadow:0 2px 8px #3b82f64d;transition:transform .2s}.control-button[data-v-8c4131ef]:hover{transform:translateY(-1px)}.control-text[data-v-8c4131ef]{font-size:.8rem;font-weight:500;max-width:80px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chart-preview[data-v-8c4131ef]{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.5rem}.chart-container[data-v-8c4131ef]{width:80px;height:60px;display:flex;align-items:end;justify-content:center;padding:.25rem}.chart-bars[data-v-8c4131ef]{display:flex;align-items:end;gap:4px;height:100%}.chart-bar[data-v-8c4131ef]{width:12px;background:linear-gradient(to top,#059669,#10b981);border-radius:2px 2px 0 0;min-height:8px}.chart-label[data-v-8c4131ef]{font-size:.75rem;color:#6b7280;text-align:center;max-width:80px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.generic-widget-preview[data-v-8c4131ef]{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.5rem;text-align:center;padding:.5rem}.widget-icon-large[data-v-8c4131ef]{font-size:2rem;opacity:.8}.widget-info[data-v-8c4131ef]{display:flex;flex-direction:column;gap:.25rem}.widget-title[data-v-8c4131ef]{font-size:.8rem;font-weight:600;color:#1f2937;max-width:100px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.widget-subtitle[data-v-8c4131ef]{font-size:.7rem;color:#6b7280;text-transform:capitalize}.widget-libkey[data-v-8c4131ef]{font-size:.65rem;color:#9ca3af;font-family:monospace;max-width:100px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.widget-settings-message p[data-v-8c4131ef]{color:#6b7280;font-size:.95rem;line-height:1.6;margin-bottom:1rem}.widget-settings-steps[data-v-8c4131ef]{background:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:1.5rem;margin-top:1rem;text-align:left}.widget-settings-steps ol[data-v-8c4131ef]{margin:0;padding-left:1.2rem;color:#374151}.widget-settings-steps li[data-v-8c4131ef]{margin-bottom:.8rem;font-size:.9rem;line-height:1.5}.widget-settings-steps li[data-v-8c4131ef]:last-child{margin-bottom:0}.widget-settings-steps strong[data-v-8c4131ef]{color:#1f2937;font-weight:600}.widget-options-panel[data-v-8c4131ef]{margin-top:1rem;padding:1rem;background:#f8fafc;border-radius:8px;border:1px solid #e2e8f0}.options-section-title[data-v-8c4131ef]{margin:0 0 1rem;font-size:.95rem;font-weight:600;color:#374151;display:flex;align-items:center;gap:.5rem}.no-specific-options[data-v-8c4131ef]{padding:1.5rem;text-align:center;background:#fff;border:1px solid #e5e7eb;border-radius:8px;margin-top:1rem}.option-info[data-v-8c4131ef]{margin:0 0 .5rem;font-size:.9rem;color:#059669;font-weight:500}.option-hint[data-v-8c4131ef]{margin:0;font-size:.8rem;color:#6b7280}.widget-settings-steps em[data-v-8c4131ef]{color:#059669;font-style:normal;font-weight:500}.drawing-preview-layer[data-v-8c4131ef]{transform:translateZ(0);backface-visibility:hidden;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;z-index:99999!important;position:absolute!important;pointer-events:none!important;isolation:isolate;mix-blend-mode:normal}.fixed-drawing-overlay[data-v-8c4131ef]{transform:translateZ(0);backface-visibility:hidden;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;isolation:isolate}.fixed-drawing-overlay svg[data-v-8c4131ef]{shape-rendering:geometricPrecision;image-rendering:optimizeQuality}.fixed-drawing-overlay polyline[data-v-8c4131ef]{shape-rendering:geometricPrecision}.drawing-preview-layer svg[data-v-8c4131ef]{shape-rendering:geometricPrecision;image-rendering:optimizeQuality;position:relative;z-index:1}.drawing-preview-layer polyline[data-v-8c4131ef],.drawing-preview-layer line[data-v-8c4131ef]{shape-rendering:geometricPrecision;stroke-linecap:round;stroke-linejoin:round}[data-v-3740edee]:root{--auth-primary: #FF8303;--auth-primary-hover: #E67E00;--auth-text-dark: #1a1a1a;--auth-text-medium: #666;--auth-text-light: #999;--auth-border: #e0e0e0;--auth-bg-light: #f8f9fa;--auth-error: #ef4444;--auth-error-bg: rgba(239, 68, 68, .15);--auth-error-border: rgba(239, 68, 68, .3);--auth-white: #ffffff}.login-layout[data-v-3740edee],.auth-wrapper[data-v-3740edee]{height:100vh;max-height:100vh;display:flex;font-family:Inter,sans-serif;background:var(--auth-white);justify-content:center;overflow:hidden}.auth-left-panel[data-v-3740edee],.login-container[data-v-3740edee]{flex:0 0 480px;background:var(--auth-white);display:flex;align-items:center;justify-content:center;padding:20px;position:relative;overflow:hidden;height:100%;box-sizing:border-box}.auth-form-container[data-v-3740edee],.login-card[data-v-3740edee]{width:100%;max-width:480px;margin:0 auto;position:relative;z-index:1}.auth-header[data-v-3740edee],.login-header[data-v-3740edee]{text-align:center;margin-bottom:32px}.auth-title[data-v-3740edee],.login-title[data-v-3740edee]{font-size:2rem;font-weight:700;color:var(--auth-text-dark);margin:0 0 8px}.auth-subtitle[data-v-3740edee]{font-size:1rem;color:var(--auth-text-light);margin:0}.login-logo[data-v-3740edee]{max-width:250px;height:auto;margin-bottom:.5rem;filter:drop-shadow(0 2px 8px rgba(0,0,0,.1))}.auth-form[data-v-3740edee],.login-form[data-v-3740edee]{display:flex;flex-direction:column;gap:20px}.auth-form-group[data-v-3740edee],.form-group[data-v-3740edee]{display:flex;flex-direction:column;gap:8px}.auth-label[data-v-3740edee],.form-group label[data-v-3740edee]{font-size:.875rem;font-weight:500;color:var(--auth-text-dark)}.auth-input-wrap[data-v-3740edee],.input-wrap[data-v-3740edee]{position:relative;display:flex;align-items:center}.auth-input-icon[data-v-3740edee],.login-icon[data-v-3740edee]{position:absolute;left:14px;width:20px;height:20px;color:var(--auth-text-light);pointer-events:none;transition:color .3s}.auth-input[data-v-3740edee],.input-wrap input[data-v-3740edee]{width:100%;padding:14px 14px 14px 48px;background:var(--auth-bg-light);border:1.5px solid var(--auth-border);border-radius:12px;font-size:.95rem;color:var(--auth-text-dark);transition:all .3s ease}.auth-input[data-v-3740edee]::-moz-placeholder,.input-wrap input[data-v-3740edee]::-moz-placeholder{color:var(--auth-text-light)}.auth-input[data-v-3740edee]::placeholder,.input-wrap input[data-v-3740edee]::placeholder{color:var(--auth-text-light)}.auth-input[data-v-3740edee]:focus,.input-wrap input[data-v-3740edee]:focus{outline:none;border-color:var(--auth-primary);background:var(--auth-white);box-shadow:0 0 0 3px #ff83031a}.auth-input:focus+.auth-input-icon[data-v-3740edee],.auth-input-wrap:focus-within .auth-input-icon[data-v-3740edee],.input-wrap input:focus+.login-icon[data-v-3740edee]{color:var(--auth-primary)}.auth-input[data-v-3740edee]:disabled,.input-wrap input[data-v-3740edee]:disabled{opacity:.6;cursor:not-allowed}.auth-password-toggle[data-v-3740edee]{position:absolute;right:14px;background:transparent;border:none;color:var(--auth-text-light);cursor:pointer;padding:4px;display:flex;align-items:center;justify-content:center;transition:color .3s}.auth-password-toggle[data-v-3740edee]:hover,.auth-password-toggle[data-v-3740edee]:focus{color:var(--auth-primary);outline:none}.icon-toggle[data-v-3740edee]{width:20px;height:20px}.auth-error[data-v-3740edee],.error-message[data-v-3740edee]{display:flex;align-items:center;gap:8px;padding:12px 14px;background:var(--auth-error-bg);border:1px solid var(--auth-error-border);border-radius:10px;color:#fca5a5;font-size:.875rem}.error-icon[data-v-3740edee]{width:18px;height:18px;flex-shrink:0}.auth-options[data-v-3740edee]{display:flex;justify-content:space-between;align-items:center}.auth-checkbox-label[data-v-3740edee]{display:flex;align-items:center;gap:8px;font-size:.875rem;color:var(--auth-text-medium);cursor:pointer}.auth-checkbox[data-v-3740edee]{width:16px;height:16px;accent-color:var(--auth-primary);cursor:pointer}.auth-forgot-link[data-v-3740edee]{font-size:.875rem;color:var(--auth-primary);text-decoration:none;transition:color .3s}.auth-forgot-link[data-v-3740edee]:hover{color:var(--auth-primary-hover);text-decoration:underline}.auth-submit-btn[data-v-3740edee],.login-button[data-v-3740edee]{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;padding:14px 24px;background:linear-gradient(135deg,var(--auth-primary) 0%,var(--auth-primary-hover) 100%);border:none;border-radius:12px;font-size:1rem;font-weight:600;color:var(--auth-white);cursor:pointer;transition:all .3s ease;box-shadow:0 4px 15px #ff83034d;letter-spacing:.5px}.auth-submit-btn[data-v-3740edee]:hover:not(:disabled),.login-button[data-v-3740edee]:hover:not(:disabled){background:linear-gradient(135deg,var(--auth-primary-hover) 0%,var(--auth-primary) 100%);box-shadow:0 6px 20px #ff830366;transform:translateY(-2px)}.auth-submit-btn[data-v-3740edee]:active:not(:disabled){transform:translateY(0)}.auth-submit-btn[data-v-3740edee]:disabled,.login-button[data-v-3740edee]:disabled{opacity:.7;cursor:not-allowed;transform:none}.btn-icon[data-v-3740edee]{width:20px;height:20px}.btn-icon.spin[data-v-3740edee]{animation:spin-3740edee 1s linear infinite}@keyframes spin-3740edee{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.auth-footer[data-v-3740edee],.login-footer[data-v-3740edee]{text-align:center;margin-top:24px}.auth-footer p[data-v-3740edee],.login-footer p[data-v-3740edee]{color:var(--auth-text-medium);font-size:.9rem;margin:0}.auth-link[data-v-3740edee],.login-link[data-v-3740edee]{color:var(--auth-primary);text-decoration:none;font-weight:500;transition:color .3s}.auth-link[data-v-3740edee]:hover,.login-link[data-v-3740edee]:hover{color:var(--auth-primary-hover);text-decoration:underline}.auth-lang-selector[data-v-3740edee],.lang-popup-switch[data-v-3740edee]{position:relative;margin-top:32px;display:flex;justify-content:center}.lang-btn[data-v-3740edee],.flag-btn[data-v-3740edee]{display:flex;align-items:center;gap:8px;padding:10px 16px;background:var(--auth-bg-light);border:1px solid var(--auth-border);border-radius:10px;color:var(--auth-text-dark);font-size:.875rem;cursor:pointer;transition:all .3s}.lang-btn[data-v-3740edee]:hover,.flag-btn[data-v-3740edee]:hover{background:#efefef;border-color:#ccc}.lang-icon[data-v-3740edee],.flag-img[data-v-3740edee]{width:18px;height:18px;-o-object-fit:contain;object-fit:contain}.chevron-icon[data-v-3740edee]{width:16px;height:16px;transition:transform .3s}.chevron-icon.rotate[data-v-3740edee]{transform:rotate(180deg)}.lang-dropdown[data-v-3740edee],.lang-popup-dropdown[data-v-3740edee]{position:absolute;bottom:100%;left:50%;transform:translate(-50%);margin-bottom:8px;background:var(--auth-white);border:1px solid var(--auth-border);border-radius:10px;box-shadow:0 4px 12px #0000001a;overflow:hidden;min-width:160px;z-index:20;display:flex;flex-direction:column}.lang-option[data-v-3740edee],.lang-popup-option[data-v-3740edee]{display:flex;align-items:center;gap:10px;width:100%;padding:12px 16px;background:transparent;border:none;color:var(--auth-text-dark);font-size:.9rem;cursor:pointer;transition:background .2s}.lang-option[data-v-3740edee]:hover,.lang-popup-option[data-v-3740edee]:hover{background:var(--auth-bg-light);color:var(--auth-primary)}.lang-flag[data-v-3740edee]{font-size:1.2rem}.fade-enter-active[data-v-3740edee],.fade-leave-active[data-v-3740edee]{transition:opacity .2s ease,transform .2s ease}.fade-enter-from[data-v-3740edee],.fade-leave-to[data-v-3740edee]{opacity:0;transform:translate(-50%) translateY(10px)}.auth-right-panel[data-v-3740edee]{flex:1;align-items:center;justify-content:center;padding:20px;overflow:hidden}.hero-content[data-v-3740edee]{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;width:100%;max-width:600px}.hero-decoration[data-v-3740edee]{position:absolute;width:300px;height:300px;border-radius:50%;background:#ffffff1a;filter:blur(60px)}.hero-decoration.top-left[data-v-3740edee]{top:-100px;left:-100px}.hero-decoration.bottom-right[data-v-3740edee]{bottom:-100px;right:-100px}.hero-image-container[data-v-3740edee]{position:relative;height:100%;max-width:800px;border-radius:10px;overflow:hidden}.hero-image[data-v-3740edee]{width:100%;height:auto;display:block;-o-object-fit:cover;object-fit:cover}.hero-text[data-v-3740edee]{text-align:center;margin-top:40px;position:relative;z-index:1}.hero-title[data-v-3740edee]{font-size:2.5rem;font-weight:700;color:var(--auth-white);margin:0 0 16px;text-shadow:0 2px 10px rgba(0,0,0,.2)}.hero-description[data-v-3740edee]{font-size:1.1rem;color:#ffffffe6;line-height:1.6;margin:0}.modal-large[data-v-abc959d6]{max-width:640px}.screen-info-card[data-v-abc959d6]{display:flex;align-items:center;gap:16px;padding:16px;background:linear-gradient(135deg,#f8fafc,#f1f5f9);border:1px solid #e2e8f0;border-radius:12px;margin-bottom:24px}.screen-icon[data-v-abc959d6]{color:#ff8303}.screen-details h4[data-v-abc959d6]{margin:0 0 4px;font-size:16px;font-weight:600;color:#1a1a1a}.screen-details p[data-v-abc959d6]{margin:0;font-size:13px;color:#666}.section-header[data-v-abc959d6]{display:flex;align-items:center;gap:8px;margin-bottom:16px;padding-bottom:8px;border-bottom:1px solid #f0f0f0}.section-header h4[data-v-abc959d6]{margin:0;font-size:14px;font-weight:600;color:#333}.add-share-form[data-v-abc959d6]{margin-bottom:24px;padding:16px;background:#fafafa;border-radius:8px}.form-row[data-v-abc959d6]{display:flex;gap:12px;margin-bottom:12px}.form-row[data-v-abc959d6]:last-child{margin-bottom:0}.flex-1[data-v-abc959d6]{flex:1}.flex-2[data-v-abc959d6]{flex:2}.form-actions[data-v-abc959d6]{display:flex;justify-content:flex-end;gap:12px;margin-top:16px}.form-select[data-v-abc959d6]{cursor:pointer}.error-message[data-v-abc959d6]{display:flex;align-items:center;gap:8px;padding:12px;background:#ef44441a;border:1px solid rgba(239,68,68,.3);border-radius:8px;color:#dc2626;font-size:13px;margin-bottom:16px}.empty-state-small[data-v-abc959d6]{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:32px;color:#999}.empty-state-small .empty-icon[data-v-abc959d6]{color:#ddd;margin-bottom:8px}.empty-state-small p[data-v-abc959d6]{margin:0;font-size:14px}.shares-list[data-v-abc959d6]{display:flex;flex-direction:column;gap:8px;max-height:300px;overflow-y:auto}.share-item[data-v-abc959d6]{display:flex;align-items:center;gap:12px;padding:12px;background:#fff;border:1px solid #e5e7eb;border-radius:8px;transition:all .2s}.share-item[data-v-abc959d6]:hover{border-color:#d1d5db;box-shadow:0 2px 4px #0000000d}.share-user-info[data-v-abc959d6]{display:flex;align-items:center;gap:10px;flex:2;min-width:0}.user-avatar[data-v-abc959d6]{width:32px;height:32px;background:linear-gradient(135deg,#ff8303,#e67e00);border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;flex-shrink:0}.user-details[data-v-abc959d6]{display:flex;flex-direction:column;min-width:0}.user-name[data-v-abc959d6]{font-size:13px;font-weight:500;color:#1a1a1a;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.user-email[data-v-abc959d6]{font-size:11px;color:#999;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.share-permissions[data-v-abc959d6],.share-expiry[data-v-abc959d6]{flex:1}.expiry-badge[data-v-abc959d6]{display:inline-flex;align-items:center;gap:4px;padding:4px 8px;background:#f3f4f6;border-radius:4px;font-size:11px;color:#666}.expiry-badge.expired[data-v-abc959d6]{background:#fef2f2;color:#dc2626}.expiry-badge.permanent[data-v-abc959d6]{background:#f0fdf4;color:#16a34a}.share-actions[data-v-abc959d6]{display:flex;gap:4px}.action-btn[data-v-abc959d6]{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:6px;border:none;cursor:pointer;transition:all .2s}.action-btn.btn-edit[data-v-abc959d6]{background:linear-gradient(135deg,#3b82f6,#2563eb);color:#fff}.action-btn.btn-edit[data-v-abc959d6]:hover{box-shadow:0 2px 8px #3b82f666}.action-btn.btn-danger[data-v-abc959d6]{background:linear-gradient(135deg,#ef4444,#dc2626);color:#fff}.action-btn.btn-danger[data-v-abc959d6]:hover{box-shadow:0 2px 8px #ef444466}.action-btn[data-v-abc959d6]:disabled{opacity:.6;cursor:not-allowed}.btn-danger-outline[data-v-abc959d6]{display:flex;align-items:center;gap:6px;padding:10px 16px;background:#fff;color:#dc2626;border:1.5px solid #dc2626;border-radius:8px;font-size:13px;font-weight:500;cursor:pointer;transition:all .2s}.btn-danger-outline[data-v-abc959d6]:hover:not(:disabled){background:#fef2f2}.btn-danger-outline[data-v-abc959d6]:disabled{opacity:.6;cursor:not-allowed}.user-info-display[data-v-abc959d6]{display:flex;align-items:center;gap:8px;padding:10px 14px;background:#f8f9fa;border:1px solid #e0e0e0;border-radius:8px;font-size:14px;color:#333}.modal-icon-share[data-v-abc959d6]{background:linear-gradient(135deg,#3b82f6,#2563eb)!important;box-shadow:0 2px 8px #3b82f64d!important}.loading-container[data-v-abc959d6]{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:32px;color:#666}.loading-spinner[data-v-abc959d6]{width:32px;height:32px;border:3px solid #f3f4f6;border-top-color:#ff8303;border-radius:50%;animation:spin-abc959d6 1s linear infinite;margin-bottom:12px}@keyframes spin-abc959d6{to{transform:rotate(360deg)}}.badge[data-v-abc959d6]{display:inline-flex;align-items:center;padding:4px 10px;border-radius:6px;font-size:11px;font-weight:500}.badge-success[data-v-abc959d6]{background:#d1fae5;color:#065f46}.badge-warning[data-v-abc959d6]{background:#fed7aa;color:#92400e}.badge-info[data-v-abc959d6]{background:#dbeafe;color:#1e40af}.badge-neutral[data-v-abc959d6]{background:#f3f4f6;color:#6b7280}.icon-spin[data-v-abc959d6]{animation:spin-abc959d6 1s linear infinite}.form-group[data-v-abc959d6]{margin-bottom:0}.form-label[data-v-abc959d6]{display:block;margin-bottom:6px;font-size:13px;font-weight:500;color:#333}.required[data-v-abc959d6]{color:#ef4444}.form-input[data-v-abc959d6]{width:100%;padding:8px 12px;border:1.5px solid #e0e0e0;border-radius:8px;font-size:14px;color:#333;outline:none;transition:all .2s}.form-input[data-v-abc959d6]:focus{border-color:#ff8303;box-shadow:0 0 0 3px #ff83031a}.form-hint[data-v-abc959d6]{display:block;margin-top:4px;font-size:11px;color:#999}.btn[data-v-abc959d6]{display:inline-flex;align-items:center;gap:6px;border:none;border-radius:8px;font-weight:500;cursor:pointer;transition:all .2s}.btn-sm[data-v-abc959d6]{padding:8px 14px;font-size:13px}.btn-primary[data-v-abc959d6]{background:linear-gradient(135deg,#ff8303,#e67e00);color:#fff}.btn-primary[data-v-abc959d6]:hover:not(:disabled){box-shadow:0 4px 12px #ff830359}.btn-primary[data-v-abc959d6]:disabled{opacity:.6;cursor:not-allowed}.modal-fade-enter-active[data-v-abc959d6],.modal-fade-leave-active[data-v-abc959d6]{transition:opacity .3s ease}.modal-fade-enter-from[data-v-abc959d6],.modal-fade-leave-to[data-v-abc959d6]{opacity:0}.modal-overlay[data-v-abc959d6]{position:fixed;inset:0;background:#00000080;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.modal-overlay-nested[data-v-abc959d6]{z-index:1100;background:#000000a6}.modal-container[data-v-abc959d6]{background:#fff;border-radius:12px;width:100%;max-height:90vh;overflow:hidden;box-shadow:0 20px 25px -5px #0000001a;display:flex;flex-direction:column}.modal-small[data-v-abc959d6]{max-width:420px}.modal-header[data-v-abc959d6]{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;border-bottom:1px solid #f0f0f0}.modal-title-section[data-v-abc959d6]{display:flex;align-items:center;gap:12px}.modal-icon[data-v-abc959d6]{width:36px;height:36px;border-radius:8px;display:flex;align-items:center;justify-content:center;color:#fff;background:linear-gradient(135deg,#ff8303,#e67e00)}.modal-header h3[data-v-abc959d6]{margin:0;font-size:16px;font-weight:600;color:#1a1a1a}.modal-close[data-v-abc959d6]{background:none;border:none;cursor:pointer;color:#666;padding:8px;border-radius:6px;transition:all .2s}.modal-close[data-v-abc959d6]:hover{background:#f5f5f5;color:#333}.modal-body[data-v-abc959d6]{padding:20px;overflow-y:auto;flex:1}.modal-footer[data-v-abc959d6]{display:flex;justify-content:flex-end;gap:12px;padding:16px 20px;border-top:1px solid #f0f0f0}.btn-cancel[data-v-abc959d6]{padding:10px 16px;background:#fff;color:#666;border:1.5px solid #e0e0e0;border-radius:8px;font-size:13px;font-weight:500;cursor:pointer;transition:all .2s}.btn-cancel[data-v-abc959d6]:hover{background:#f9fafb;border-color:#d1d5db}.btn-save[data-v-abc959d6]{display:flex;align-items:center;gap:6px;padding:10px 16px;background:linear-gradient(135deg,#ff8303,#e67e00);color:#fff;border:none;border-radius:8px;font-size:13px;font-weight:500;cursor:pointer;transition:all .2s}.btn-save[data-v-abc959d6]:hover:not(:disabled){box-shadow:0 4px 12px #ff830359}.btn-save[data-v-abc959d6]:disabled{opacity:.6;cursor:not-allowed}.scada-list-view[data-v-33c357bd]{padding:15px;max-width:100%;overflow-x:hidden}.page-header[data-v-33c357bd]{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.page-header h2[data-v-33c357bd]{font-size:20px;font-weight:600;color:#1a1a1a;margin:0 0 4px}.header-subtitle[data-v-33c357bd]{margin:0;color:#666;font-size:13px;display:flex;align-items:center;gap:8px}.stat-item[data-v-33c357bd]{display:inline-flex;align-items:center;gap:4px}.stat-item.stat-shared[data-v-33c357bd]{color:#7c3aed}.stat-divider[data-v-33c357bd]{color:#ccc}.header-actions[data-v-33c357bd]{display:flex;gap:8px}.btn[data-v-33c357bd]{display:inline-flex;align-items:center;gap:6px;border:none;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s}.btn-md[data-v-33c357bd]{padding:8px 16px}.btn-sm[data-v-33c357bd]{padding:6px 12px;font-size:13px}.search-box[data-v-33c357bd]{position:relative;display:flex;align-items:center}.search-icon[data-v-33c357bd]{position:absolute;left:10px;color:#9ca3af;pointer-events:none}.search-input[data-v-33c357bd]{padding:6px 12px 6px 32px;border:1px solid #e0e0e0;border-radius:6px;font-size:13px;outline:none;transition:all .2s;color:#333}.search-input[data-v-33c357bd]:focus{border-color:#ff8303;box-shadow:0 0 0 2px #ff83031a}.search-input[data-v-33c357bd]::-moz-placeholder{color:#9ca3af}.search-input[data-v-33c357bd]::placeholder{color:#9ca3af}.btn-primary[data-v-33c357bd]{background:linear-gradient(135deg,#ff8303,#e67e00);color:#fff}.btn-primary[data-v-33c357bd]:hover{background:linear-gradient(135deg,#e67e00,#cc6f00);box-shadow:0 4px 12px #ff830359;transform:translateY(-1px)}.btn-secondary[data-v-33c357bd]{background:#fff;color:#333;border:1px solid #e0e0e0}.btn-secondary[data-v-33c357bd]:hover:not(:disabled){background:#fafafa;border-color:#d0d0d0}.btn-secondary[data-v-33c357bd]:disabled{opacity:.6;cursor:not-allowed}.filter-btn[data-v-33c357bd]{position:relative;background:#fff;color:#666;border:1.5px solid #e0e0e0;transition:all .2s}.filter-btn[data-v-33c357bd]:hover{border-color:#8b5cf6;color:#8b5cf6;background:#f5f3ff}.filter-btn.filter-active[data-v-33c357bd]{background:linear-gradient(135deg,#8b5cf6,#7c3aed);color:#fff;border-color:transparent}.filter-btn.filter-active[data-v-33c357bd]:hover{box-shadow:0 6px 20px #8b5cf673;transform:translateY(-1px)}.filter-badge[data-v-33c357bd]{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;padding:0 5px;margin-left:6px;background:#ffffff40;border-radius:9px;font-size:11px;font-weight:600}.filter-btn:not(.filter-active) .filter-badge[data-v-33c357bd]{background:#8b5cf6;color:#fff}.loading-container[data-v-33c357bd]{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;color:#666}.loading-spinner[data-v-33c357bd]{width:40px;height:40px;border:3px solid #f3f4f6;border-top-color:#ff8303;border-radius:50%;animation:spin-33c357bd 1s linear infinite;margin-bottom:16px}@keyframes spin-33c357bd{to{transform:rotate(360deg)}}.error-message[data-v-33c357bd]{display:flex;align-items:center;gap:12px;padding:16px 20px;background:#fef2f2;border:1px solid #fecaca;border-radius:12px;color:#dc2626;font-size:14px}.empty-state[data-v-33c357bd]{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;text-align:center}.empty-icon[data-v-33c357bd]{color:#d1d5db;margin-bottom:16px}.empty-state h3[data-v-33c357bd]{margin:0 0 8px;font-size:18px;font-weight:600;color:#374151}.empty-state p[data-v-33c357bd]{margin:0 0 24px;color:#6b7280;font-size:14px}.empty-state p.no-devices-warning[data-v-33c357bd]{display:flex;align-items:center;gap:8px;color:#d97706;background:#fef3c7;padding:12px 16px;border-radius:8px;border:1px solid #fcd34d}.scada-grid[data-v-33c357bd]{display:grid;grid-template-columns:repeat(5,1fr);gap:14px}@media (max-width: 1600px){.scada-grid[data-v-33c357bd]{grid-template-columns:repeat(4,1fr)}}@media (max-width: 1200px){.scada-grid[data-v-33c357bd]{grid-template-columns:repeat(3,1fr)}}@media (max-width: 900px){.scada-grid[data-v-33c357bd]{grid-template-columns:repeat(2,1fr)}}@media (max-width: 600px){.scada-grid[data-v-33c357bd]{grid-template-columns:1fr}.page-header[data-v-33c357bd]{flex-direction:column;gap:16px;align-items:flex-start}}.scada-card[data-v-33c357bd]{background:#fff;border:1px solid rgba(226,232,240,.5);box-shadow:0 1px 4px #0000000d;border-radius:10px;padding:12px;display:flex;flex-direction:column;transition:all .2s}.scada-card[data-v-33c357bd]:hover{box-shadow:0 4px 12px #0000001a;transform:translateY(-1px)}.card-header[data-v-33c357bd]{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.card-icon[data-v-33c357bd]{width:32px;height:32px;background:linear-gradient(135deg,#ff8303,#e67e00);border-radius:8px;display:flex;align-items:center;justify-content:center;color:#fff;box-shadow:0 2px 4px #ff830333}.card-status[data-v-33c357bd]{padding:2px 6px;border-radius:4px;font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.2px}.status-active[data-v-33c357bd]{background:#d1fae5;color:#065f46}.status-inactive[data-v-33c357bd]{background:#f3f4f6;color:#6b7280}.status-shared[data-v-33c357bd]{display:flex;align-items:center;gap:3px;background:linear-gradient(135deg,#ede9fe,#ddd6fe);color:#6d28d9}.scada-card.shared-card[data-v-33c357bd]{border-color:#c4b5fd}.scada-card.shared-card .card-header[data-v-33c357bd]{background:linear-gradient(135deg,#8b5cf6,#7c3aed)}.card-body[data-v-33c357bd]{flex:1;margin-bottom:8px}.card-title[data-v-33c357bd]{margin:0 0 4px;font-size:13px;font-weight:600;color:#1a1a1a;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.card-desc[data-v-33c357bd]{margin:0 0 6px;font-size:11px;color:#6b7280;line-height:1.3;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.card-meta[data-v-33c357bd]{display:flex;flex-wrap:wrap;gap:8px}.meta-item[data-v-33c357bd]{display:inline-flex;align-items:center;gap:3px;font-size:10px;color:#9ca3af}.meta-item.shared-by[data-v-33c357bd]{color:#7c3aed;font-weight:500}.card-actions[data-v-33c357bd]{display:flex;gap:4px;padding-top:8px;border-top:1px solid #f3f4f6}.action-btn[data-v-33c357bd]{display:flex;align-items:center;justify-content:center;width:26px;height:26px;border-radius:6px;cursor:pointer;transition:all .2s;border:none}.action-btn.btn-view[data-v-33c357bd]{color:#fff;background:linear-gradient(135deg,#3b82f6,#2563eb)}.action-btn.btn-view[data-v-33c357bd]:hover{box-shadow:0 4px 12px #3b82f659;transform:translateY(-1px)}.action-btn.btn-edit[data-v-33c357bd]{color:#fff;background:linear-gradient(135deg,#22c55e,#16a34a)}.action-btn.btn-edit[data-v-33c357bd]:hover{box-shadow:0 4px 12px #22c55e59;transform:translateY(-1px)}.action-btn.btn-danger[data-v-33c357bd]{color:#fff;background:linear-gradient(135deg,#ef4444,#dc2626)}.action-btn.btn-danger[data-v-33c357bd]:hover{box-shadow:0 4px 12px #ef444459;transform:translateY(-1px)}.action-btn.btn-settings[data-v-33c357bd]{color:#fff;background:linear-gradient(135deg,#8b5cf6,#7c3aed)}.action-btn.btn-settings[data-v-33c357bd]:hover{box-shadow:0 4px 12px #8b5cf659;transform:translateY(-1px)}.action-btn.btn-share[data-v-33c357bd]{color:#fff;background:linear-gradient(135deg,#f59e0b,#d97706)}.action-btn.btn-share[data-v-33c357bd]:hover{box-shadow:0 4px 12px #f59e0b59;transform:translateY(-1px)}.modal-fade-enter-active[data-v-33c357bd],.modal-fade-leave-active[data-v-33c357bd]{transition:opacity .3s ease}.modal-fade-enter-from[data-v-33c357bd],.modal-fade-leave-to[data-v-33c357bd]{opacity:0}.modal-fade-enter-active .modal-container[data-v-33c357bd],.modal-fade-leave-active .modal-container[data-v-33c357bd]{transition:transform .3s ease}.modal-fade-enter-from .modal-container[data-v-33c357bd],.modal-fade-leave-to .modal-container[data-v-33c357bd]{transform:scale(.95)}.modal-overlay[data-v-33c357bd]{position:fixed;top:0;left:0;width:100%;height:100%;background:#0009;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.modal-container[data-v-33c357bd]{background:#fff;border-radius:12px;width:100%;max-width:480px;max-height:90vh;overflow:hidden;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;display:flex;flex-direction:column}.modal-small[data-v-33c357bd]{max-width:420px}.modal-header[data-v-33c357bd]{display:flex;justify-content:space-between;align-items:center;padding:18px 20px;border-bottom:1px solid #f0f0f0;background:linear-gradient(to bottom,#fafafa,#fff)}.modal-title-section[data-v-33c357bd]{display:flex;align-items:center;gap:12px}.modal-icon[data-v-33c357bd]{width:38px;height:38px;border-radius:9px;display:flex;align-items:center;justify-content:center;color:#fff;flex-shrink:0;background:linear-gradient(135deg,#ff8303,#e67e00);box-shadow:0 2px 8px #ff83034d}.modal-icon-danger[data-v-33c357bd]{background:linear-gradient(135deg,#ef4444,#dc2626);box-shadow:0 2px 8px #ef44444d}.modal-header h3[data-v-33c357bd]{margin:0;font-size:18px;font-weight:600;color:#1a1a1a}.modal-close[data-v-33c357bd]{background:none;border:none;cursor:pointer;color:#666;display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:8px;transition:all .2s}.modal-close[data-v-33c357bd]:hover{background:#f5f5f5;color:#333}.modal-body[data-v-33c357bd]{padding:24px;overflow-y:auto;flex:1}.modal-text[data-v-33c357bd]{margin:0 0 8px;font-size:14px;color:#1a1a1a;line-height:1.5}.warning-text[data-v-33c357bd]{margin:0 0 16px;font-size:13px;color:#dc2626;font-weight:500;padding:12px;background:#fef2f2;border:1px solid #fecaca;border-radius:8px}.modal-footer[data-v-33c357bd]{display:flex;justify-content:flex-end;gap:12px;padding:18px 24px;border-top:1px solid #f0f0f0;background:#fff}.form-group[data-v-33c357bd]{margin-bottom:18px}.form-group[data-v-33c357bd]:last-child{margin-bottom:0}.form-label[data-v-33c357bd]{display:block;margin-bottom:8px;font-weight:500;font-size:14px;color:#1a1a1a}.required[data-v-33c357bd]{color:#ef4444;margin-left:2px}.form-input[data-v-33c357bd],.form-textarea[data-v-33c357bd]{width:100%;padding:10px 14px;border:1.5px solid #e0e0e0;border-radius:8px;font-size:14px;outline:none;transition:all .2s;font-family:inherit;color:#1a1a1a;box-sizing:border-box}.form-input[data-v-33c357bd]:hover,.form-textarea[data-v-33c357bd]:hover{border-color:silver}.form-input[data-v-33c357bd]:focus,.form-textarea[data-v-33c357bd]:focus{border-color:#ff8303;box-shadow:0 0 0 3px #ff83031a}.form-textarea[data-v-33c357bd]{resize:vertical;min-height:80px}.form-hint[data-v-33c357bd]{display:block;margin-top:6px;font-size:12px;color:#999}.delete-input[data-v-33c357bd]{border-color:#dc2626;font-family:monospace}.delete-input[data-v-33c357bd]:focus{border-color:#dc2626;box-shadow:0 0 0 3px #dc26261a}.toggle-container[data-v-33c357bd]{display:flex;align-items:center;gap:12px}.toggle[data-v-33c357bd]{position:relative;display:inline-block;width:44px;height:24px}.toggle input[data-v-33c357bd]{opacity:0;width:0;height:0}.toggle-slider[data-v-33c357bd]{position:absolute;cursor:pointer;inset:0;background-color:#e5e7eb;transition:.3s;border-radius:24px}.toggle-slider[data-v-33c357bd]:before{position:absolute;content:"";height:18px;width:18px;left:3px;bottom:3px;background-color:#fff;transition:.3s;border-radius:50%;box-shadow:0 1px 3px #0003}.toggle input:checked+.toggle-slider[data-v-33c357bd]{background:linear-gradient(135deg,#22c55e,#16a34a)}.toggle input:checked+.toggle-slider[data-v-33c357bd]:before{transform:translate(20px)}.toggle-label[data-v-33c357bd]{font-size:14px;color:#374151}.btn-cancel[data-v-33c357bd],.btn-save[data-v-33c357bd],.btn-delete[data-v-33c357bd]{display:flex;align-items:center;gap:6px;padding:10px 20px;border:none;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s;white-space:nowrap}.btn-cancel[data-v-33c357bd]{background:#fff;color:#666;border:1.5px solid #e0e0e0}.btn-cancel[data-v-33c357bd]:hover{background:#f9fafb;border-color:#d1d5db;color:#374151}.btn-save[data-v-33c357bd]{background:linear-gradient(135deg,#ff8303,#e67e00);color:#fff;box-shadow:0 1px 3px #ff830333}.btn-save[data-v-33c357bd]:hover:not(:disabled){background:linear-gradient(135deg,#e67e00,#cc6f00);box-shadow:0 4px 12px #ff830359;transform:translateY(-1px)}.btn-save[data-v-33c357bd]:disabled{opacity:.6;cursor:not-allowed;transform:none;box-shadow:none}.btn-delete[data-v-33c357bd]{background:linear-gradient(135deg,#ef4444,#dc2626);color:#fff;box-shadow:0 1px 3px #ef444433}.btn-delete[data-v-33c357bd]:hover:not(:disabled){background:linear-gradient(135deg,#dc2626,#b91c1c);box-shadow:0 4px 12px #ef444459;transform:translateY(-1px)}.btn-delete[data-v-33c357bd]:disabled{opacity:.6;cursor:not-allowed;transform:none;box-shadow:none}.icon-spin[data-v-33c357bd]{animation:spin-33c357bd 1s linear infinite}.device-all-view[data-v-71aa4c4c]{padding:10px;margin-bottom:5px;min-height:100%}.device-all-header[data-v-71aa4c4c]{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.device-all-header h2[data-v-71aa4c4c]{font-size:20px;font-weight:600;color:#1a1a1a;margin:0 0 4px}.device-all-header p[data-v-71aa4c4c]{margin:0;color:#666;font-size:13px}.header-subtitle[data-v-71aa4c4c]{display:flex;align-items:center;gap:8px;margin-top:4px}.stat-item[data-v-71aa4c4c]{display:inline-flex;align-items:center;gap:4px;font-size:12px;color:#666}.stat-dot[data-v-71aa4c4c]{width:8px;height:8px;border-radius:50%}.stat-dot.online[data-v-71aa4c4c]{background:#22c55e}.stat-dot.offline[data-v-71aa4c4c]{background:#ef4444}.stat-divider[data-v-71aa4c4c]{color:#ccc}.device-all-actions[data-v-71aa4c4c]{display:flex;gap:8px}.device-type-tabs[data-v-71aa4c4c]{display:flex;gap:8px;margin-bottom:16px;background:#fff;padding:15px;border-radius:8px;border:1px solid rgba(226,232,240,.5);box-shadow:0 2px 8px #0000001a}.tab-btn[data-v-71aa4c4c]{display:flex;align-items:center;gap:8px;padding:10px 20px;border:none;background:transparent;border-radius:6px;font-size:14px;font-weight:500;color:#666;cursor:pointer;transition:all .2s}.tab-btn[data-v-71aa4c4c]:hover{background:#f5f5f5;color:#333}.tab-btn.active[data-v-71aa4c4c]{background:linear-gradient(135deg,#ff8303,#e67e00);color:#fff}.tab-btn.active[data-v-71aa4c4c]:hover{background:linear-gradient(135deg,#e67e00,#ff8303)}.tab-count[data-v-71aa4c4c]{padding:2px 8px;border-radius:12px;font-size:11px;font-weight:600;background:#0000001a}.tab-btn.active .tab-count[data-v-71aa4c4c]{background:#ffffff40}.error-banner[data-v-71aa4c4c]{display:flex;align-items:center;gap:12px;padding:12px 16px;background:#fee2e2;border:1px solid #ef4444;border-radius:8px;margin-bottom:16px;color:#991b1b;font-size:13px}.btn-retry[data-v-71aa4c4c]{margin-left:auto;padding:6px 12px;background:#ef4444;color:#fff;border:none;border-radius:4px;font-size:12px;font-weight:500;cursor:pointer;transition:background .2s}.btn-retry[data-v-71aa4c4c]:hover{background:#dc2626}.ws-status-banner[data-v-71aa4c4c]{display:flex;align-items:center;gap:12px;padding:12px 16px;background:#fef3c7;border:1px solid #f59e0b;border-radius:8px;margin-bottom:16px;color:#92400e;font-size:13px}.btn-reconnect[data-v-71aa4c4c]{margin-left:auto;padding:6px 12px;background:#f59e0b;color:#fff;border:none;border-radius:4px;font-size:12px;font-weight:500;cursor:pointer;transition:background .2s}.btn-reconnect[data-v-71aa4c4c]:hover{background:#d97706}.btn[data-v-71aa4c4c]{display:flex;align-items:center;gap:6px;padding:8px 16px;border:none;border-radius:6px;font-size:13px;font-weight:500;cursor:pointer;transition:all .2s}.btn-primary[data-v-71aa4c4c]{background:linear-gradient(135deg,#ff8303,#e67e00);color:#fff}.btn-primary[data-v-71aa4c4c]:hover{background:linear-gradient(135deg,#e67e00,#ff8303);box-shadow:0 4px 12px #ff83034d}.btn-primary[data-v-71aa4c4c]:disabled{opacity:.6;cursor:not-allowed}.btn-secondary[data-v-71aa4c4c]{background:#fff;color:#333;border:1px solid #e0e0e0}.btn-secondary[data-v-71aa4c4c]:hover{background:#fafafa;border-color:#d0d0d0}.btn-secondary[data-v-71aa4c4c]:disabled{opacity:.6;cursor:not-allowed}.spinning[data-v-71aa4c4c]{animation:spin-71aa4c4c 1s linear infinite}@keyframes spin-71aa4c4c{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.icon[data-v-71aa4c4c]{width:16px;height:16px}.filters-section[data-v-71aa4c4c]{background:#fff;border:1px solid rgba(226,232,240,.5);box-shadow:0 2px 8px #0000001a;border-radius:12px;padding:16px 20px;margin-bottom:20px;display:flex;justify-content:space-between;align-items:center;gap:20px}.filters-left[data-v-71aa4c4c]{display:flex;flex-wrap:wrap;gap:12px;flex:1}.filters-right[data-v-71aa4c4c]{display:flex;align-items:center;gap:16px;flex-shrink:0}.filter-input[data-v-71aa4c4c]{padding:8px 12px;border:1px solid #e0e0e0;border-radius:6px;font-size:13px;color:#333;background:#fff;outline:none;transition:border-color .2s;min-width:200px;flex:1}.filter-input[data-v-71aa4c4c]:focus{border-color:#ff8303}.filter-select[data-v-71aa4c4c]{padding:8px 12px;border:1px solid #e0e0e0;border-radius:6px;font-size:13px;color:#333;background:#fff;outline:none;transition:border-color .2s;min-width:150px;cursor:pointer}.filter-select[data-v-71aa4c4c]:focus{border-color:#ff8303}.device-all-grid-wrapper[data-v-71aa4c4c]{background:#fff;border:1px solid rgba(226,232,240,.5);box-shadow:0 2px 8px #0000001a;border-radius:12px;overflow:hidden;min-height:auto}.devices-container[data-v-71aa4c4c]{background:#fff;overflow:hidden}.devices-header[data-v-71aa4c4c]{display:grid;grid-template-columns:3fr 1.5fr 1.5fr 120px 100px;gap:16px;padding:14px 20px;background:#f9fafb;border-bottom:1px solid #f3f4f6;font-size:13px;font-weight:600;color:#6b7280;text-transform:uppercase;letter-spacing:.5px}.header-cell[data-v-71aa4c4c]{display:flex;align-items:center;background:#f9fafb;font-size:13px;font-weight:600;color:#6b7280;text-transform:uppercase;letter-spacing:.5px}.devices-list[data-v-71aa4c4c]{max-height:70vh;overflow-y:auto}.device-row[data-v-71aa4c4c]{display:grid;grid-template-columns:3fr 1.5fr 1.5fr 120px 100px;gap:16px;padding:14px 20px;border-bottom:1px solid #f3f4f6;transition:background .15s;cursor:pointer;font-size:13px}.device-row[data-v-71aa4c4c]:hover{background:#f9fafb}.device-row[data-v-71aa4c4c]:last-child{border-bottom:none}.row-cell[data-v-71aa4c4c]{display:flex;align-items:center}.device-info[data-v-71aa4c4c]{display:flex;align-items:center;gap:12px}.device-icon[data-v-71aa4c4c]{width:32px;height:32px;background:#ffe4cc;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#e67e00;flex-shrink:0}.device-details h4[data-v-71aa4c4c]{margin:0 0 2px;font-size:13px;font-weight:500;color:#1a1a1a}.device-id[data-v-71aa4c4c]{font-size:11px;color:#999}.owner-info[data-v-71aa4c4c]{display:flex;flex-direction:column;gap:2px}.owner-name[data-v-71aa4c4c]{font-size:13px;font-weight:500;color:#1a1a1a}.owner-email[data-v-71aa4c4c]{font-size:11px;color:#999}.type-badge[data-v-71aa4c4c]{display:inline-block;padding:4px 12px;border-radius:5px;font-size:12px;font-weight:500;background:#f0fdf4;color:#16a34a;white-space:nowrap}.group-badge[data-v-71aa4c4c]{display:inline-block;padding:4px 12px;border-radius:5px;font-size:12px;font-weight:500;background:#f5f5f5;color:#666;white-space:nowrap}.permission-badge[data-v-71aa4c4c]{display:inline-block;padding:4px 12px;border-radius:5px;font-size:12px;font-weight:500;white-space:nowrap}.permission-badge.full[data-v-71aa4c4c]{background:#dbeafe;color:#1d4ed8}.permission-badge.view[data-v-71aa4c4c]{background:#f3f4f6;color:#6b7280}.status-badge[data-v-71aa4c4c]{display:inline-flex;align-items:center;gap:6px;padding:4px 12px;border-radius:5px;font-size:12px;font-weight:500;white-space:nowrap}.status-badge.online[data-v-71aa4c4c]{background:#f0fdf4;color:#16a34a}.status-badge.offline[data-v-71aa4c4c]{background:#fef2f2;color:#dc2626}.status-dot[data-v-71aa4c4c]{width:8px;height:8px;border-radius:50%;display:inline-block}.status-dot.online[data-v-71aa4c4c]{background:#22c55e;box-shadow:0 0 8px #22c55e66}.status-dot.offline[data-v-71aa4c4c]{background:#ef4444;box-shadow:0 0 8px #ef444466}.empty-state[data-v-71aa4c4c]{display:flex;align-items:center;justify-content:center;padding:80px 20px;color:#999;font-size:14px}.empty-content[data-v-71aa4c4c]{text-align:center;color:#999}.empty-icon[data-v-71aa4c4c]{margin-bottom:16px;color:#ccc}.empty-content h3[data-v-71aa4c4c]{margin:0 0 8px;font-size:16px;font-weight:500;color:#666}.empty-content p[data-v-71aa4c4c]{margin:0;font-size:13px;color:#999}.pagination-info[data-v-71aa4c4c]{color:#6b7280;font-size:13px}.pagination-info strong[data-v-71aa4c4c]{color:#1e293b;font-weight:600}.pagination-controls[data-v-71aa4c4c]{display:flex;align-items:center;gap:12px}.page-size-select[data-v-71aa4c4c]{padding:6px 10px;border:1px solid #e0e0e0;border-radius:6px;font-size:13px;outline:none;cursor:pointer;background:#fff}.pagination-text[data-v-71aa4c4c]{color:#666;font-size:13px}.pagination-nav[data-v-71aa4c4c]{display:flex;gap:4px}.nav-btn[data-v-71aa4c4c]{width:32px;height:32px;display:flex;align-items:center;justify-content:center;border:1px solid #e0e0e0;background:#fff;border-radius:6px;cursor:pointer;color:#333;font-size:18px;transition:all .15s}.nav-btn[data-v-71aa4c4c]:hover:not(:disabled){border-color:#ff8303;color:#ff8303}.nav-btn[data-v-71aa4c4c]:disabled{opacity:.4;cursor:not-allowed}.action-buttons[data-v-71aa4c4c]{display:flex;gap:4px}.action-btn[data-v-71aa4c4c]{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:6px;cursor:pointer;transition:all .2s;border:none}.action-btn.btn-edit[data-v-71aa4c4c]{color:#fff;background:linear-gradient(135deg,#22c55e,#16a34a)}.action-btn.btn-edit[data-v-71aa4c4c]:hover{box-shadow:0 4px 12px #22c55e59;background:linear-gradient(135deg,#16a34a,#15803d);transform:translateY(-1px)}.action-btn.btn-danger[data-v-71aa4c4c]{color:#fff;background:linear-gradient(135deg,#ef4444,#dc2626)}.action-btn.btn-danger[data-v-71aa4c4c]:hover{box-shadow:0 4px 12px #ef444459;background:linear-gradient(135deg,#dc2626,#b91c1c);transform:translateY(-1px)}.modal-fade-enter-active[data-v-71aa4c4c],.modal-fade-leave-active[data-v-71aa4c4c]{transition:opacity .3s ease}.modal-fade-enter-from[data-v-71aa4c4c],.modal-fade-leave-to[data-v-71aa4c4c]{opacity:0}.modal-fade-enter-active .modal-container[data-v-71aa4c4c],.modal-fade-leave-active .modal-container[data-v-71aa4c4c]{transition:transform .3s ease}.modal-fade-enter-from .modal-container[data-v-71aa4c4c],.modal-fade-leave-to .modal-container[data-v-71aa4c4c]{transform:scale(.95)}.modal-overlay[data-v-71aa4c4c]{position:fixed;top:0;left:0;width:100%;height:100%;background:#0009;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.modal-container[data-v-71aa4c4c]{background:#fff;border-radius:12px;width:100%;max-width:520px;max-height:90vh;overflow:hidden;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;display:flex;flex-direction:column}.modal-small[data-v-71aa4c4c]{max-width:420px}.modal-header[data-v-71aa4c4c]{display:flex;justify-content:space-between;align-items:center;padding:18px 20px;border-bottom:1px solid #f0f0f0;background:linear-gradient(to bottom,#fafafa,#fff)}.modal-title-section[data-v-71aa4c4c]{display:flex;align-items:center;gap:12px}.modal-icon[data-v-71aa4c4c]{width:38px;height:38px;border-radius:9px;display:flex;align-items:center;justify-content:center;color:#fff;flex-shrink:0;background:linear-gradient(135deg,#ff8303,#e67e00);box-shadow:0 2px 8px #ff83034d}.modal-icon-danger[data-v-71aa4c4c]{background:linear-gradient(135deg,#ef4444,#dc2626);box-shadow:0 2px 8px #ef44444d}.modal-header h3[data-v-71aa4c4c]{margin:0;font-size:18px;font-weight:600;color:#1a1a1a}.modal-close[data-v-71aa4c4c]{background:none;border:none;cursor:pointer;color:#666;display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:8px;transition:all .2s}.modal-close[data-v-71aa4c4c]:hover{background:#f5f5f5;color:#333}.modal-body[data-v-71aa4c4c]{padding:24px;overflow-y:auto;flex:1}.modal-text[data-v-71aa4c4c]{margin:0 0 16px;font-size:14px;color:#1a1a1a;line-height:1.5}.warning-text[data-v-71aa4c4c]{margin:0;font-size:13px;color:#dc2626;font-weight:500;display:flex;align-items:flex-start;gap:8px;padding:12px;background:#fef2f2;border-radius:8px}.modal-footer[data-v-71aa4c4c]{display:flex;justify-content:flex-end;gap:12px;padding:18px 24px;border-top:1px solid #f0f0f0;background:#fff}.form-group[data-v-71aa4c4c]{margin-bottom:18px}.form-label[data-v-71aa4c4c]{display:block;margin-bottom:8px;font-weight:500;font-size:14px;color:#1a1a1a}.required[data-v-71aa4c4c]{color:#ef4444;margin-left:2px}.form-input[data-v-71aa4c4c]{width:100%;padding:10px 14px;border:1.5px solid #e0e0e0;border-radius:8px;font-size:14px;outline:none;transition:all .2s;font-family:inherit;color:#1a1a1a}.form-input[data-v-71aa4c4c]:hover{border-color:silver}.form-input[data-v-71aa4c4c]:focus{border-color:#ff8303;box-shadow:0 0 0 3px #ff83031a}.btn-cancel[data-v-71aa4c4c],.btn-save[data-v-71aa4c4c],.btn-delete[data-v-71aa4c4c]{display:flex;align-items:center;gap:6px;padding:10px 20px;border:none;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s;white-space:nowrap}.btn-cancel[data-v-71aa4c4c]{background:#fff;color:#666;border:1.5px solid #e0e0e0}.btn-cancel[data-v-71aa4c4c]:hover{background:#f9fafb;border-color:#d1d5db;color:#374151}.btn-save[data-v-71aa4c4c]{background:linear-gradient(135deg,#ff8303,#e67e00);color:#fff;box-shadow:0 1px 3px #ff830333;border:1.5px solid transparent}.btn-save[data-v-71aa4c4c]:hover:not(:disabled){background:linear-gradient(135deg,#e67e00,#cc6f00);box-shadow:0 4px 12px #ff830359;transform:translateY(-1px)}.btn-save[data-v-71aa4c4c]:disabled{opacity:.6;cursor:not-allowed;transform:none;box-shadow:none}.btn-delete[data-v-71aa4c4c]{background:linear-gradient(135deg,#ef4444,#dc2626);color:#fff;box-shadow:0 1px 3px #ef444433;border:1.5px solid transparent}.btn-delete[data-v-71aa4c4c]:hover:not(:disabled){background:linear-gradient(135deg,#dc2626,#b91c1c);box-shadow:0 4px 12px #ef444459;transform:translateY(-1px)}.btn-delete[data-v-71aa4c4c]:disabled{opacity:.6;cursor:not-allowed}.device-group-devices[data-v-2a4a1166]{padding:15px;min-height:100vh;background:#fafafa}.devices-header[data-v-2a4a1166]{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.btn-back[data-v-2a4a1166]{display:flex;align-items:center;gap:6px;padding:8px 16px;border:1px solid #e0e0e0;background:#fff;border-radius:6px;font-size:13px;font-weight:500;cursor:pointer;color:#333;transition:all .2s}.btn-back[data-v-2a4a1166]:hover{background:#fafafa;border-color:#d0d0d0}.header-title[data-v-2a4a1166]{flex:1;margin-left:12px}.header-title h3[data-v-2a4a1166]{margin:0 0 4px;font-size:20px;font-weight:600;color:#1a1a1a}.header-title p[data-v-2a4a1166]{margin:0;font-size:13px;color:#666}.btn-primary[data-v-2a4a1166]{display:flex;align-items:center;gap:6px;padding:8px 16px;border:none;background:linear-gradient(135deg,#ff8303,#e67e00);color:#fff;border-radius:6px;font-size:13px;font-weight:500;cursor:pointer;transition:all .2s}.btn-primary[data-v-2a4a1166]:hover{background:linear-gradient(135deg,#e67e00,#ff8303);box-shadow:0 2px 8px #ff83034d}.devices-content[data-v-2a4a1166]{background:#fff;border:1px solid rgba(226,232,240,.5);box-shadow:0 2px 8px #0000001a;border-radius:12px;overflow:hidden}.loading-state[data-v-2a4a1166]{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;color:#666}.loading-state p[data-v-2a4a1166]{margin-top:12px;font-size:14px}.empty-state[data-v-2a4a1166]{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;color:#999}.spinning[data-v-2a4a1166]{animation:spin-2a4a1166 1s linear infinite}@keyframes spin-2a4a1166{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.empty-icon[data-v-2a4a1166]{margin-bottom:16px;color:#ccc}.empty-state h4[data-v-2a4a1166]{margin:0 0 8px;font-size:16px;color:#666}.empty-state p[data-v-2a4a1166]{margin:0;font-size:14px;color:#999}.devices-table-wrapper[data-v-2a4a1166]{background:#fff;overflow:hidden}.devices-table[data-v-2a4a1166]{width:100%}.table-header[data-v-2a4a1166]{display:grid;grid-template-columns:2fr 1.5fr 1fr 1fr 120px;gap:16px;padding:14px 20px;background:#f9fafb;border-bottom:1px solid #f3f4f6;font-size:13px;font-weight:600;color:#6b7280;text-transform:uppercase;letter-spacing:.5px}.header-cell[data-v-2a4a1166]{display:flex;align-items:center;background:#f9fafb;font-size:13px;font-weight:600;color:#6b7280;text-transform:uppercase;letter-spacing:.5px}.table-body[data-v-2a4a1166]{max-height:70vh;overflow-y:auto}.table-row[data-v-2a4a1166]{display:grid;grid-template-columns:2fr 1.5fr 1fr 1fr 120px;gap:16px;padding:14px 20px;border-bottom:1px solid #f3f4f6;transition:background .15s;font-size:13px;cursor:pointer}.table-row[data-v-2a4a1166]:hover{background:#f9fafb}.table-row[data-v-2a4a1166]:last-child{border-bottom:none}.row-cell[data-v-2a4a1166]{display:flex;align-items:center}.device-col[data-v-2a4a1166]{min-width:200px}.device-info[data-v-2a4a1166]{display:flex;align-items:center;gap:12px}.device-icon[data-v-2a4a1166]{width:36px;height:36px;background:linear-gradient(135deg,#ff8303,#e67e00);border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;flex-shrink:0;box-shadow:0 2px 4px #0000001a}.device-details[data-v-2a4a1166]{display:flex;flex-direction:column;gap:2px}.device-name[data-v-2a4a1166]{margin:0;font-size:13px;font-weight:500;color:#1a1a1a}.device-id[data-v-2a4a1166]{font-size:11px;color:#999;font-family:Courier New,monospace}.type-col[data-v-2a4a1166]{min-width:150px}.device-type[data-v-2a4a1166]{font-size:13px;color:#666}.status-col[data-v-2a4a1166]{min-width:120px;justify-content:center}.badge-status[data-v-2a4a1166]{display:inline-flex;align-items:center;gap:4px;padding:4px 10px;border-radius:6px;font-size:11px;font-weight:500;text-transform:uppercase;letter-spacing:.3px}.badge-active[data-v-2a4a1166]{background:#f0fdf4;color:#16a34a}.badge-inactive[data-v-2a4a1166]{background:#f3f4f6;color:#6b7280}.date-col[data-v-2a4a1166]{min-width:100px}.date-text[data-v-2a4a1166]{font-size:13px;color:#666}.actions-col[data-v-2a4a1166]{min-width:120px;justify-content:center}.btn-remove[data-v-2a4a1166]{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:6px;cursor:pointer;transition:all .2s;border:none;color:#fff;background:linear-gradient(135deg,#ef4444,#dc2626)}.btn-remove[data-v-2a4a1166]:hover{box-shadow:0 4px 12px #ef444459;background:linear-gradient(135deg,#dc2626,#b91c1c);transform:translateY(-1px)}.modal-fade-enter-active[data-v-2a4a1166],.modal-fade-leave-active[data-v-2a4a1166]{transition:opacity .3s ease}.modal-fade-enter-from[data-v-2a4a1166],.modal-fade-leave-to[data-v-2a4a1166]{opacity:0}.modal-overlay[data-v-2a4a1166]{position:fixed;top:0;left:0;width:100%;height:100%;background:#0009;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.modal-container[data-v-2a4a1166]{background:#fff;border-radius:12px;width:100%;max-width:540px;max-height:90vh;overflow:hidden;display:flex;flex-direction:column}.modal-small[data-v-2a4a1166]{max-width:420px}.modal-header[data-v-2a4a1166]{display:flex;justify-content:space-between;align-items:center;padding:18px 20px;border-bottom:1px solid #f0f0f0;background:linear-gradient(to bottom,#fafafa,#fff)}.modal-title-section[data-v-2a4a1166]{display:flex;align-items:center;gap:12px}.modal-icon[data-v-2a4a1166]{width:38px;height:38px;border-radius:9px;display:flex;align-items:center;justify-content:center;color:#fff;flex-shrink:0;background:linear-gradient(135deg,#ff8303,#e67e00);box-shadow:0 2px 8px #ff83034d}.modal-icon-danger[data-v-2a4a1166]{background:linear-gradient(135deg,#ef4444,#dc2626);box-shadow:0 2px 8px #ef44444d}.modal-header h3[data-v-2a4a1166]{margin:0;font-size:18px;font-weight:600;color:#1a1a1a}.modal-close[data-v-2a4a1166]{background:none;border:none;cursor:pointer;color:#666;display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:8px;transition:all .2s}.modal-close[data-v-2a4a1166]:hover{background:#f5f5f5;color:#333}.modal-body[data-v-2a4a1166]{padding:0 24px 24px;overflow-y:auto;flex:1}.modal-text[data-v-2a4a1166]{margin:0 0 8px;font-size:14px;color:#1a1a1a;line-height:1.5}.warning-text[data-v-2a4a1166]{margin:0;font-size:13px;color:#dc2626;font-weight:500}.search-box[data-v-2a4a1166]{margin-bottom:16px}.form-input[data-v-2a4a1166]{width:100%;padding:10px 14px;border:1.5px solid #e0e0e0;border-radius:8px;font-size:14px;outline:none;transition:all .2s;color:#1a1a1a}.form-input[data-v-2a4a1166]:hover{border-color:silver}.form-input[data-v-2a4a1166]:focus{border-color:#ff8303;box-shadow:0 0 0 3px #ff83031a}.available-devices[data-v-2a4a1166]{max-height:400px;overflow-y:auto}.loading-inline[data-v-2a4a1166],.empty-inline[data-v-2a4a1166]{padding:40px;text-align:center;color:#999;font-size:14px}.loading-inline[data-v-2a4a1166]{display:flex;align-items:center;justify-content:center;gap:8px}.device-item[data-v-2a4a1166]{display:flex;align-items:center;gap:12px;padding:12px;border:1.5px solid #e0e0e0;border-radius:8px;margin-bottom:8px;cursor:pointer;transition:all .2s;background:#fff}.device-item[data-v-2a4a1166]:hover{border-color:#ff8303;background:#fff4e6}.device-item.selected[data-v-2a4a1166]{border-color:#ff8303;background:#fff4e6;box-shadow:0 2px 8px #ff830326}.device-item-info[data-v-2a4a1166]{flex:1}.device-item-info h5[data-v-2a4a1166]{margin:0 0 2px;font-size:13px;font-weight:500;color:#1a1a1a}.device-item-info span[data-v-2a4a1166]{font-size:12px;color:#999}.device-item-check[data-v-2a4a1166]{width:22px;height:22px;border-radius:50%;background:linear-gradient(135deg,#ff8303,#e67e00);color:#fff;display:flex;align-items:center;justify-content:center;flex-shrink:0;box-shadow:0 2px 4px #ff83034d}.modal-footer[data-v-2a4a1166]{display:flex;justify-content:flex-end;gap:12px;padding:18px 24px;border-top:1px solid #f0f0f0;background:#fff}.btn-cancel[data-v-2a4a1166],.btn-save[data-v-2a4a1166]{display:flex;align-items:center;gap:6px;padding:10px 20px;border:none;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s;white-space:nowrap}.btn-cancel[data-v-2a4a1166]{background:#fff;color:#666;border:1.5px solid #e0e0e0}.btn-cancel[data-v-2a4a1166]:hover{background:#f9fafb;border-color:#d1d5db;color:#374151}.btn-save[data-v-2a4a1166]{background:linear-gradient(135deg,#ff8303,#e67e00);color:#fff;box-shadow:0 1px 3px #ff830333;border:1.5px solid transparent}.btn-save[data-v-2a4a1166]:hover:not(:disabled){background:linear-gradient(135deg,#e67e00,#cc6f00);box-shadow:0 4px 12px #ff830359;transform:translateY(-1px)}.btn-save[data-v-2a4a1166]:disabled{opacity:.6;cursor:not-allowed;transform:none;box-shadow:none}.btn-delete[data-v-2a4a1166]{display:flex;align-items:center;gap:6px;padding:10px 20px;border:none;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s;white-space:nowrap;background:linear-gradient(135deg,#ef4444,#dc2626);color:#fff;border:1.5px solid transparent;box-shadow:0 1px 3px #ef444433}.btn-delete[data-v-2a4a1166]:hover:not(:disabled){background:linear-gradient(135deg,#dc2626,#b91c1c);box-shadow:0 4px 12px #ef444459;transform:translateY(-1px)}.btn-delete[data-v-2a4a1166]:disabled{opacity:.6;cursor:not-allowed}@media (max-width: 768px){.device-group-devices[data-v-2a4a1166]{padding:16px}.devices-header[data-v-2a4a1166],.header-left[data-v-2a4a1166]{flex-direction:column;align-items:stretch}.devices-grid[data-v-2a4a1166]{grid-template-columns:1fr}.modal-overlay[data-v-2a4a1166]{padding:0}.modal-container[data-v-2a4a1166]{max-width:100%;max-height:100vh;border-radius:0}}.device-group-view[data-v-dedbd4a5]{min-height:100vh;padding:15px}.device-group-header[data-v-dedbd4a5]{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.device-group-header h2[data-v-dedbd4a5]{font-size:20px;font-weight:600;color:#1a1a1a;margin:0 0 4px}.header-subtitle[data-v-dedbd4a5]{margin:0;color:#666;font-size:13px;display:flex;align-items:center;gap:8px}.stat-item[data-v-dedbd4a5]{display:inline-flex;align-items:center;gap:4px}.stat-divider[data-v-dedbd4a5]{color:#ccc}.device-group-actions[data-v-dedbd4a5]{display:flex;gap:8px}.filters-section[data-v-dedbd4a5]{display:flex;justify-content:space-between;align-items:center;background:#fff;border:1px solid rgba(226,232,240,.5);box-shadow:0 2px 8px #0000001a;border-radius:12px;padding:16px 20px;margin-bottom:20px;gap:20px;flex-wrap:wrap}.filters-left[data-v-dedbd4a5]{display:flex;gap:12px;flex:1}.filters-right[data-v-dedbd4a5]{display:flex;align-items:center;gap:16px}.filter-input[data-v-dedbd4a5]{padding:8px 12px;border:1px solid #e0e0e0;border-radius:6px;font-size:13px;color:#333;background:#fff;outline:none;transition:border-color .2s;flex:1;min-width:200px;max-width:300px}.filter-input[data-v-dedbd4a5]:focus{border-color:#ff8303;box-shadow:0 0 0 3px #ff83031a}.loading-state[data-v-dedbd4a5]{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;color:#666}.loading-state p[data-v-dedbd4a5]{margin-top:12px;font-size:14px}.btn[data-v-dedbd4a5]{display:flex;align-items:center;gap:6px;padding:8px 16px;border:none;border-radius:6px;font-size:13px;font-weight:500;cursor:pointer;transition:all .2s}.btn-primary[data-v-dedbd4a5]{background:linear-gradient(135deg,#ff8303,#e67e00);color:#fff}.btn-primary[data-v-dedbd4a5]:hover{background:linear-gradient(135deg,#e67e00,#ff8303);box-shadow:0 2px 8px #ff83034d}.btn-primary[data-v-dedbd4a5]:disabled{opacity:.6;cursor:not-allowed}.btn-secondary[data-v-dedbd4a5]{background:#fff;color:#333;border:1px solid #e0e0e0}.btn-secondary[data-v-dedbd4a5]:hover{background:#fafafa;border-color:#d0d0d0}.btn-secondary[data-v-dedbd4a5]:disabled{opacity:.6;cursor:not-allowed}.spinning[data-v-dedbd4a5]{animation:spin-dedbd4a5 1s linear infinite}@keyframes spin-dedbd4a5{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.device-group-grid-wrapper[data-v-dedbd4a5]{background:#fff;border:1px solid rgba(226,232,240,.5);box-shadow:0 2px 8px #0000001a;border-radius:12px;overflow:hidden;min-height:auto}.groups-container[data-v-dedbd4a5]{background:#fff;overflow:hidden}.groups-header[data-v-dedbd4a5]{display:grid;grid-template-columns:2fr 2.5fr .8fr 1fr 120px;gap:16px;padding:14px 20px;background:#f9fafb;border-bottom:1px solid #f3f4f6;font-size:13px;font-weight:600;color:#6b7280;text-transform:uppercase;letter-spacing:.5px}.header-cell[data-v-dedbd4a5]{display:flex;align-items:center;background:#f9fafb;font-size:13px;font-weight:600;color:#6b7280;text-transform:uppercase;letter-spacing:.5px}.group-col[data-v-dedbd4a5],.description-col[data-v-dedbd4a5]{min-width:200px}.count-col[data-v-dedbd4a5]{min-width:80px;justify-content:center}.date-col[data-v-dedbd4a5]{min-width:100px;color:#333}.actions-col[data-v-dedbd4a5]{min-width:120px;justify-content:center}.groups-list[data-v-dedbd4a5]{max-height:70vh;overflow-y:auto}.group-row[data-v-dedbd4a5]{display:grid;grid-template-columns:2fr 2.5fr .8fr 1fr 120px;gap:16px;padding:14px 20px;border-bottom:1px solid #f3f4f6;transition:background .15s;font-size:13px;cursor:pointer}.group-row[data-v-dedbd4a5]:hover{background:#f9fafb}.group-row[data-v-dedbd4a5]:last-child{border-bottom:none}.row-cell[data-v-dedbd4a5]{display:flex;align-items:center}.group-info[data-v-dedbd4a5]{display:flex;align-items:center;gap:12px}.group-icon[data-v-dedbd4a5]{width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;flex-shrink:0;box-shadow:0 2px 4px #0000001a}.group-details h4[data-v-dedbd4a5]{margin:0;font-size:13px;font-weight:500;color:#1a1a1a}.description-text[data-v-dedbd4a5]{color:#666;font-size:13px}.count-badge[data-v-dedbd4a5]{display:inline-flex;align-items:center;justify-content:center;gap:4px;min-width:28px;padding:4px 12px;background:#f0fdf4;color:#16a34a;border-radius:5px;font-size:12px;font-weight:500}.action-buttons[data-v-dedbd4a5]{display:flex;gap:4px}.action-btn[data-v-dedbd4a5]{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:6px;cursor:pointer;transition:all .2s;border:none}.action-btn.btn-view[data-v-dedbd4a5]{color:#fff;background:linear-gradient(135deg,#3b82f6,#2563eb)}.action-btn.btn-view[data-v-dedbd4a5]:hover{box-shadow:0 4px 12px #3b82f659;background:linear-gradient(135deg,#2563eb,#1d4ed8);transform:translateY(-1px)}.action-btn.btn-edit[data-v-dedbd4a5]{color:#fff;background:linear-gradient(135deg,#22c55e,#16a34a)}.action-btn.btn-edit[data-v-dedbd4a5]:hover{box-shadow:0 4px 12px #22c55e59;background:linear-gradient(135deg,#16a34a,#15803d);transform:translateY(-1px)}.action-btn.btn-danger[data-v-dedbd4a5]{color:#fff;background:linear-gradient(135deg,#ef4444,#dc2626)}.action-btn.btn-danger[data-v-dedbd4a5]:hover{box-shadow:0 4px 12px #ef444459;background:linear-gradient(135deg,#dc2626,#b91c1c);transform:translateY(-1px)}.empty-state[data-v-dedbd4a5]{display:flex;align-items:center;justify-content:center;padding:80px 20px;color:#999;font-size:14px}.empty-content[data-v-dedbd4a5]{text-align:center;color:#999}.empty-icon[data-v-dedbd4a5]{margin-bottom:16px;color:#ccc}.empty-content h3[data-v-dedbd4a5]{margin:0 0 8px;font-size:16px;font-weight:500;color:#666}.empty-content p[data-v-dedbd4a5]{margin:0;font-size:13px;color:#999}.pagination[data-v-dedbd4a5]{display:flex;justify-content:space-between;align-items:center;background:#fff;padding:12px 16px;border-radius:8px;font-size:13px;margin-top:16px}.pagination-info[data-v-dedbd4a5]{color:#666;font-size:13px}.pagination-info strong[data-v-dedbd4a5]{color:#1a1a1a;font-weight:600}.pagination-controls[data-v-dedbd4a5]{display:flex;align-items:center;gap:16px}.page-size-select[data-v-dedbd4a5]{padding:6px 10px;border:1px solid #e0e0e0;border-radius:6px;font-size:13px;outline:none;cursor:pointer;background:#fff}.pagination-text[data-v-dedbd4a5]{color:#666;font-size:13px}.pagination-nav[data-v-dedbd4a5]{display:flex;gap:4px}.nav-btn[data-v-dedbd4a5]{width:32px;height:32px;display:flex;align-items:center;justify-content:center;border:1px solid #e0e0e0;background:#fff;border-radius:6px;cursor:pointer;color:#333;font-size:18px;transition:all .15s}.nav-btn[data-v-dedbd4a5]:hover:not(:disabled){border-color:#ff8303;color:#ff8303;background:#fff4e6}.nav-btn[data-v-dedbd4a5]:disabled{opacity:.4;cursor:not-allowed}.modal-fade-enter-active[data-v-dedbd4a5],.modal-fade-leave-active[data-v-dedbd4a5]{transition:opacity .3s ease}.modal-fade-enter-from[data-v-dedbd4a5],.modal-fade-leave-to[data-v-dedbd4a5]{opacity:0}.modal-fade-enter-active .modal-container[data-v-dedbd4a5],.modal-fade-leave-active .modal-container[data-v-dedbd4a5]{transition:transform .3s ease}.modal-fade-enter-from .modal-container[data-v-dedbd4a5],.modal-fade-leave-to .modal-container[data-v-dedbd4a5]{transform:scale(.95)}.modal-overlay[data-v-dedbd4a5]{position:fixed;top:0;left:0;width:100%;height:100%;background:#0009;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.modal-container[data-v-dedbd4a5]{background:#fff;border-radius:12px;width:100%;max-width:520px;max-height:90vh;overflow:hidden;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;display:flex;flex-direction:column}.modal-small[data-v-dedbd4a5]{max-width:420px}.modal-header[data-v-dedbd4a5]{display:flex;justify-content:space-between;align-items:center;padding:18px 20px;border-bottom:1px solid #f0f0f0;background:linear-gradient(to bottom,#fafafa,#fff)}.modal-title-section[data-v-dedbd4a5]{display:flex;align-items:center;gap:12px}.modal-icon[data-v-dedbd4a5]{width:38px;height:38px;border-radius:9px;display:flex;align-items:center;justify-content:center;color:#fff;flex-shrink:0;box-shadow:0 2px 8px #ff83034d}.modal-header h3[data-v-dedbd4a5]{margin:0;font-size:18px;font-weight:600;color:#1a1a1a}.modal-close[data-v-dedbd4a5]{background:none;border:none;cursor:pointer;color:#666;display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:8px;transition:all .2s}.modal-close[data-v-dedbd4a5]:hover{background:#f5f5f5;color:#333}.modal-body[data-v-dedbd4a5]{padding:0 24px 24px;overflow-y:auto;flex:1}.form-group[data-v-dedbd4a5]{margin-bottom:18px}.form-label[data-v-dedbd4a5]{display:block;margin-bottom:8px;font-weight:500;font-size:14px;color:#1a1a1a}.required[data-v-dedbd4a5]{color:#ef4444;margin-left:2px}.form-input[data-v-dedbd4a5],.form-textarea[data-v-dedbd4a5]{width:100%;padding:9px 12px;border:1.5px solid #e0e0e0;border-radius:8px;font-size:14px;outline:none;transition:all .2s;font-family:inherit;color:#1a1a1a}.form-input[data-v-dedbd4a5]:hover,.form-textarea[data-v-dedbd4a5]:hover{border-color:silver}.form-input[data-v-dedbd4a5]:focus,.form-textarea[data-v-dedbd4a5]:focus{border-color:#ff8303;box-shadow:0 0 0 3px #ff83031a}.form-textarea[data-v-dedbd4a5]{resize:vertical;min-height:100px}.form-hint[data-v-dedbd4a5]{display:block;margin-top:6px;font-size:12px;color:#999}.warning-text[data-v-dedbd4a5]{margin:8px 0 0;font-size:13px;color:#dc2626}.color-selector[data-v-dedbd4a5]{display:flex;gap:12px;align-items:center}.color-preview-wrapper[data-v-dedbd4a5]{position:relative}.color-picker-input[data-v-dedbd4a5]{position:absolute;opacity:0;width:0;height:0}.color-preview[data-v-dedbd4a5]{width:50px;height:50px;border-radius:10px;display:flex;align-items:center;justify-content:center;color:#fff;cursor:pointer;border:3px solid white;box-shadow:0 0 0 1.5px #e0e0e0,0 2px 8px #0000001a;transition:all .2s}.color-preview[data-v-dedbd4a5]:hover{transform:scale(1.05);box-shadow:0 0 0 1.5px #6366f1,0 4px 12px #6366f14d}.color-code-input[data-v-dedbd4a5]{flex:1;font-family:Courier New,monospace;text-transform:uppercase}.color-presets[data-v-dedbd4a5]{display:flex;gap:10px;margin-top:12px;flex-wrap:wrap}.color-preset-btn[data-v-dedbd4a5]{width:38px;height:38px;border-radius:8px;border:3px solid white;cursor:pointer;transition:all .2s;box-shadow:0 0 0 1.5px #e0e0e0}.color-preset-btn[data-v-dedbd4a5]:hover{transform:scale(1.1);box-shadow:0 0 0 2px #ff8303,0 2px 8px #ff83034d}.color-preset-btn.active[data-v-dedbd4a5]{box-shadow:0 0 0 3px #ff8303,0 2px 8px #ff83034d;transform:scale(1.05)}.modal-footer[data-v-dedbd4a5]{display:flex;justify-content:flex-end;gap:12px;padding:10px;border-top:1px solid #f0f0f0;background:#fff}.btn-cancel[data-v-dedbd4a5],.btn-save[data-v-dedbd4a5]{display:flex;align-items:center;gap:6px;padding:10px 20px;border:none;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s;white-space:nowrap}.btn-cancel[data-v-dedbd4a5]{background:#fff;color:#666;border:1.5px solid #e0e0e0}.btn-cancel[data-v-dedbd4a5]:hover{background:#f9fafb;border-color:#d1d5db;color:#374151}.btn-save[data-v-dedbd4a5]{background:linear-gradient(135deg,#ff8303,#e67e00);color:#fff;box-shadow:0 1px 3px #ff830333;border:1.5px solid transparent}.btn-save[data-v-dedbd4a5]:hover:not(:disabled){background:linear-gradient(135deg,#e67e00,#cc6f00);box-shadow:0 4px 12px #ff830359;transform:translateY(-1px)}.btn-save[data-v-dedbd4a5]:disabled{opacity:.6;cursor:not-allowed;transform:none;box-shadow:none}.btn-delete[data-v-dedbd4a5]{display:flex;align-items:center;gap:6px;padding:10px 20px;border:none;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s;white-space:nowrap;background:#ef4444;color:#fff;border:1.5px solid transparent}.btn-delete[data-v-dedbd4a5]:hover:not(:disabled){background:#dc2626}.btn-delete[data-v-dedbd4a5]:disabled{opacity:.6;cursor:not-allowed}.admin-main[data-v-160a303c]{min-height:100vh;background:#f8fafc;flex:1;display:flex;flex-direction:column}.page-content[data-v-160a303c]{flex:1;padding:10px;margin-bottom:5px}:root{--toastify-color-light:#fff;--toastify-color-dark:#121212;--toastify-color-info:#3498db;--toastify-color-success:#07bc0c;--toastify-color-warning:#f1c40f;--toastify-color-error:#e74c3c;--toastify-color-transparent:#ffffffb3;--toastify-icon-color-info:var(--toastify-color-info);--toastify-icon-color-success:var(--toastify-color-success);--toastify-icon-color-warning:var(--toastify-color-warning);--toastify-icon-color-error:var(--toastify-color-error);--toastify-toast-width:320px;--toastify-toast-background:#fff;--toastify-toast-min-height:64px;--toastify-toast-max-height:800px;--toastify-font-family:sans-serif;--toastify-z-index:9999;--toastify-text-color-light:#757575;--toastify-text-color-dark:#fff;--toastify-text-color-info:#fff;--toastify-text-color-success:#fff;--toastify-text-color-warning:#fff;--toastify-text-color-error:#fff;--toastify-spinner-color:#616161;--toastify-spinner-color-empty-area:#e0e0e0;--toastify-color-progress-light:linear-gradient(90deg,#4cd964,#5ac8fa,#007aff,#34aadc,#5856d6,#ff2d55);--toastify-color-progress-dark:#bb86fc;--toastify-color-progress-info:var(--toastify-color-info);--toastify-color-progress-success:var(--toastify-color-success);--toastify-color-progress-warning:var(--toastify-color-warning);--toastify-color-progress-error:var(--toastify-color-error);--toastify-color-progress-colored:#ddd}.Toastify__toast-container{box-sizing:border-box;color:#fff;padding:4px;position:fixed;transform:translate3d(0,0,var(--toastify-z-index) px);width:var(--toastify-toast-width);z-index:var(--toastify-z-index)}.Toastify__toast-container--top-left{left:1em;top:1em}.Toastify__toast-container--top-center{left:50%;top:1em;transform:translate(-50%)}.Toastify__toast-container--top-right{right:1em;top:1em}.Toastify__toast-container--bottom-left{bottom:1em;left:1em}.Toastify__toast-container--bottom-center{bottom:1em;left:50%;transform:translate(-50%)}.Toastify__toast-container--bottom-right{bottom:1em;right:1em}@media only screen and (max-width:480px){.Toastify__toast-container{left:0;margin:0;padding:0;width:100vw}.Toastify__toast-container--top-center,.Toastify__toast-container--top-left,.Toastify__toast-container--top-right{top:0;transform:translate(0)}.Toastify__toast-container--bottom-center,.Toastify__toast-container--bottom-left,.Toastify__toast-container--bottom-right{bottom:0;transform:translate(0)}.Toastify__toast-container--rtl{left:auto;right:0}}.Toastify__toast{border-radius:4px;box-shadow:0 1px 10px #0000001a,0 2px 15px #0000000d;box-sizing:border-box;cursor:pointer;direction:ltr;display:flex;font-family:var(--toastify-font-family);justify-content:space-between;margin-bottom:1rem;max-height:var(--toastify-toast-max-height);min-height:var(--toastify-toast-min-height);overflow:hidden;padding:8px;position:relative;z-index:0}.Toastify__toast--rtl{direction:rtl}.Toastify__toast-body{align-items:center;display:flex;flex:1 1 auto;margin:auto 0;padding:6px;white-space:pre-wrap}.Toastify__toast-body>div:last-child{flex:1}.Toastify__toast-icon{display:flex;flex-shrink:0;margin-inline-end:10px;width:20px}.Toastify--animate{animation-duration:.7s;animation-fill-mode:both}.Toastify--animate-icon{animation-duration:.3s;animation-fill-mode:both}@media only screen and (max-width:480px){.Toastify__toast{border-radius:0;margin-bottom:0}}.Toastify__toast-theme--dark{background:var(--toastify-color-dark);color:var(--toastify-text-color-dark)}.Toastify__toast-theme--colored.Toastify__toast--default,.Toastify__toast-theme--light{background:var(--toastify-color-light);color:var(--toastify-text-color-light)}.Toastify__toast-theme--colored.Toastify__toast--info{background:var(--toastify-color-info);color:var(--toastify-text-color-info)}.Toastify__toast-theme--colored.Toastify__toast--success{background:var(--toastify-color-success);color:var(--toastify-text-color-success)}.Toastify__toast-theme--colored.Toastify__toast--warning{background:var(--toastify-color-warning);color:var(--toastify-text-color-warning)}.Toastify__toast-theme--colored.Toastify__toast--error{background:var(--toastify-color-error);color:var(--toastify-text-color-error)}.Toastify__progress-bar-theme--light{background:var(--toastify-color-progress-light)}.Toastify__progress-bar-theme--dark{background:var(--toastify-color-progress-dark)}.Toastify__progress-bar--info{background:var(--toastify-color-progress-info)}.Toastify__progress-bar--success{background:var(--toastify-color-progress-success)}.Toastify__progress-bar--warning{background:var(--toastify-color-progress-warning)}.Toastify__progress-bar--error{background:var(--toastify-color-progress-error)}.Toastify__progress-bar-theme--colored.Toastify__progress-bar--default{background:var(--toastify-color-progress-colored)}.Toastify__progress-bar-theme--colored.Toastify__progress-bar--error,.Toastify__progress-bar-theme--colored.Toastify__progress-bar--info,.Toastify__progress-bar-theme--colored.Toastify__progress-bar--success,.Toastify__progress-bar-theme--colored.Toastify__progress-bar--warning{background:var(--toastify-color-transparent)}.Toastify__close-button{align-self:flex-start;background:#0000;border:none;color:#fff;cursor:pointer;opacity:.7;outline:none;padding:0;transition:.3s ease}.Toastify__close-button--light{color:#000;opacity:.3}.Toastify__close-button>svg{fill:currentcolor;height:16px;width:14px}.Toastify__close-button:focus,.Toastify__close-button:hover{opacity:1}@keyframes Toastify__trackProgress{0%{transform:scaleX(1)}to{transform:scaleX(0)}}.Toastify__progress-bar{bottom:0;height:5px;left:0;opacity:.7;position:absolute;transform-origin:left;width:100%;z-index:var(--toastify-z-index)}.Toastify__progress-bar--animated{animation:Toastify__trackProgress linear 1 forwards}.Toastify__progress-bar--controlled{transition:transform .2s}.Toastify__progress-bar--rtl{left:auto;right:0;transform-origin:right}.Toastify__spinner{animation:Toastify__spin .65s linear infinite;border:2px solid;border-color:var(--toastify-spinner-color-empty-area);border-radius:100%;border-right-color:var(--toastify-spinner-color);box-sizing:border-box;height:20px;width:20px}@keyframes Toastify__bounceInRight{0%,60%,75%,90%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;transform:translate3d(3000px,0,0)}60%{opacity:1;transform:translate3d(-25px,0,0)}75%{transform:translate3d(10px,0,0)}90%{transform:translate3d(-5px,0,0)}to{transform:none}}@keyframes Toastify__bounceOutRight{20%{opacity:1;transform:translate3d(-20px,0,0)}to{opacity:0;transform:translate3d(2000px,0,0)}}@keyframes Toastify__bounceInLeft{0%,60%,75%,90%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;transform:translate3d(-3000px,0,0)}60%{opacity:1;transform:translate3d(25px,0,0)}75%{transform:translate3d(-10px,0,0)}90%{transform:translate3d(5px,0,0)}to{transform:none}}@keyframes Toastify__bounceOutLeft{20%{opacity:1;transform:translate3d(20px,0,0)}to{opacity:0;transform:translate3d(-2000px,0,0)}}@keyframes Toastify__bounceInUp{0%,60%,75%,90%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;transform:translate3d(0,3000px,0)}60%{opacity:1;transform:translate3d(0,-20px,0)}75%{transform:translate3d(0,10px,0)}90%{transform:translate3d(0,-5px,0)}to{transform:translateZ(0)}}@keyframes Toastify__bounceOutUp{20%{transform:translate3d(0,-10px,0)}40%,45%{opacity:1;transform:translate3d(0,20px,0)}to{opacity:0;transform:translate3d(0,-2000px,0)}}@keyframes Toastify__bounceInDown{0%,60%,75%,90%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;transform:translate3d(0,-3000px,0)}60%{opacity:1;transform:translate3d(0,25px,0)}75%{transform:translate3d(0,-10px,0)}90%{transform:translate3d(0,5px,0)}to{transform:none}}@keyframes Toastify__bounceOutDown{20%{transform:translate3d(0,10px,0)}40%,45%{opacity:1;transform:translate3d(0,-20px,0)}to{opacity:0;transform:translate3d(0,2000px,0)}}.Toastify__bounce-enter--bottom-left,.Toastify__bounce-enter--top-left{animation-name:Toastify__bounceInLeft}.Toastify__bounce-enter--bottom-right,.Toastify__bounce-enter--top-right{animation-name:Toastify__bounceInRight}.Toastify__bounce-enter--top-center{animation-name:Toastify__bounceInDown}.Toastify__bounce-enter--bottom-center{animation-name:Toastify__bounceInUp}.Toastify__bounce-exit--bottom-left,.Toastify__bounce-exit--top-left{animation-name:Toastify__bounceOutLeft}.Toastify__bounce-exit--bottom-right,.Toastify__bounce-exit--top-right{animation-name:Toastify__bounceOutRight}.Toastify__bounce-exit--top-center{animation-name:Toastify__bounceOutUp}.Toastify__bounce-exit--bottom-center{animation-name:Toastify__bounceOutDown}@keyframes Toastify__none{0%,60%,75%,90%,to{animation-duration:0;animation-timing-function:none}0%{opacity:1;transform:translateZ(0)}to{transform:translateZ(0)}}.Toastify__none-enter--bottom-center,.Toastify__none-enter--bottom-left,.Toastify__none-enter--bottom-right,.Toastify__none-enter--top-center,.Toastify__none-enter--top-left,.Toastify__none-enter--top-right{animation-name:Toastify__none}@keyframes Toastify__zoomIn{0%{opacity:0;transform:scale3d(.3,.3,.3)}50%{opacity:1}}@keyframes Toastify__zoomOut{0%{opacity:1}50%{opacity:0;transform:scale3d(.3,.3,.3)}to{opacity:0}}.Toastify__zoom-enter{animation-name:Toastify__zoomIn}.Toastify__zoom-exit{animation-name:Toastify__zoomOut}@keyframes Toastify__flipIn{0%{animation-timing-function:ease-in;opacity:0;transform:perspective(400px) rotateX(90deg)}40%{animation-timing-function:ease-in;transform:perspective(400px) rotateX(-20deg)}60%{opacity:1;transform:perspective(400px) rotateX(10deg)}80%{transform:perspective(400px) rotateX(-5deg)}to{transform:perspective(400px)}}@keyframes Toastify__flipOut{0%{transform:perspective(400px)}30%{opacity:1;transform:perspective(400px) rotateX(-20deg)}to{opacity:0;transform:perspective(400px) rotateX(90deg)}}.Toastify__flip-enter{animation-name:Toastify__flipIn}.Toastify__flip-exit{animation-name:Toastify__flipOut}@keyframes Toastify__slideInRight{0%{transform:translate3d(110%,0,0);visibility:visible}to{transform:translateZ(0)}}@keyframes Toastify__slideInLeft{0%{transform:translate3d(-110%,0,0);visibility:visible}to{transform:translateZ(0)}}@keyframes Toastify__slideInUp{0%{transform:translate3d(0,110%,0);visibility:visible}to{transform:translateZ(0)}}@keyframes Toastify__slideInDown{0%{transform:translate3d(0,-110%,0);visibility:visible}to{transform:translateZ(0)}}@keyframes Toastify__slideOutRight{0%{transform:translateZ(0)}to{transform:translate3d(110%,0,0);visibility:hidden}}@keyframes Toastify__slideOutLeft{0%{transform:translateZ(0)}to{transform:translate3d(-110%,0,0);visibility:hidden}}@keyframes Toastify__slideOutDown{0%{transform:translateZ(0)}to{transform:translate3d(0,500px,0);visibility:hidden}}@keyframes Toastify__slideOutUp{0%{transform:translateZ(0)}to{transform:translate3d(0,-500px,0);visibility:hidden}}.Toastify__slide-enter--bottom-left,.Toastify__slide-enter--top-left{animation-name:Toastify__slideInLeft}.Toastify__slide-enter--bottom-right,.Toastify__slide-enter--top-right{animation-name:Toastify__slideInRight}.Toastify__slide-enter--top-center{animation-name:Toastify__slideInDown}.Toastify__slide-enter--bottom-center{animation-name:Toastify__slideInUp}.Toastify__slide-exit--bottom-left,.Toastify__slide-exit--top-left{animation-name:Toastify__slideOutLeft}.Toastify__slide-exit--bottom-right,.Toastify__slide-exit--top-right{animation-name:Toastify__slideOutRight}.Toastify__slide-exit--top-center{animation-name:Toastify__slideOutUp}.Toastify__slide-exit--bottom-center{animation-name:Toastify__slideOutDown}@keyframes Toastify__spin{0%{transform:rotate(0)}to{transform:rotate(1turn)}}
