.login-container[data-v-f98f7eb6]{display:flex;align-items:center;justify-content:center;min-height:100vh;background-color:var(--clr-surface-a0)}.login-card[data-v-f98f7eb6]{background:var(--clr-surface-tonal-a0);border-radius:12px;padding:3rem;box-shadow:0 20px 60px #00000080;width:100%;max-width:400px}.logo-container[data-v-f98f7eb6]{display:flex;justify-content:center;margin-bottom:2rem}.logo[data-v-f98f7eb6]{width:100%;max-width:150px;height:auto}.login-title[data-v-f98f7eb6]{margin:0 0 .5rem;font-size:2rem;font-weight:600;color:#fff;text-align:center}.login-subtitle[data-v-f98f7eb6]{margin:0 0 2rem;color:var(--clr-surface-a50);text-align:center;font-size:.95rem}.login-form[data-v-f98f7eb6]{display:flex;flex-direction:column;gap:1.5rem}.form-group[data-v-f98f7eb6]{display:flex;flex-direction:column;gap:.5rem}.form-group label[data-v-f98f7eb6]{font-size:.9rem;font-weight:500;color:var(--clr-surface-a50)}.form-group input[data-v-f98f7eb6]{padding:.75rem 1rem;border:2px solid var(--clr-surface-a20);border-radius:8px;font-size:1rem;background-color:var(--clr-surface-a10);color:#fff;transition:border-color .2s}.form-group input[data-v-f98f7eb6]::placeholder{color:var(--clr-surface-a40)}.form-group input[data-v-f98f7eb6]:focus{outline:none;border-color:var(--clr-primary-a0)}.login-button[data-v-f98f7eb6]{padding:.875rem 1.5rem;background-color:var(--clr-primary-a0);color:#fff;border:none;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s}.login-button[data-v-f98f7eb6]:hover{background-color:var(--clr-primary-a10);transform:translateY(-2px);box-shadow:0 10px 20px #b51f244d}.login-button[data-v-f98f7eb6]:active{transform:translateY(0)}@media(max-width:480px){.login-card[data-v-f98f7eb6]{padding:2rem;margin:1rem}.login-title[data-v-f98f7eb6]{font-size:1.5rem}.logo[data-v-f98f7eb6]{max-width:120px}}.sidebar[data-v-1d810ab9]{width:250px;background-color:var(--clr-surface-tonal-a0);color:#fff;padding:20px;overflow-y:auto}.sidebar-header[data-v-1d810ab9]{font-size:24px;font-weight:700;margin-bottom:30px;padding-bottom:15px;border-bottom:1px solid rgba(255,255,255,.1);text-align:center}.logo[data-v-1d810ab9]{width:100%;max-width:100px;height:auto}.nav-item[data-v-1d810ab9]{padding:12px 15px;margin-bottom:8px;border-radius:6px;cursor:pointer;transition:background-color .2s}.nav-item[data-v-1d810ab9]:hover{background-color:#ffffff1a}.nav-item.active[data-v-1d810ab9]{background-color:var(--clr-primary-a0)}@media(max-width:768px){.sidebar[data-v-1d810ab9]{width:100%;height:auto}}.header[data-v-8befee60]{background-color:var(--clr-surface-a10);padding:20px 30px;box-shadow:0 2px 4px #0000004d;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--clr-surface-a20)}.header-title[data-v-8befee60]{font-size:24px;font-weight:600;color:var(--clr-surface-a50)}.header-actions[data-v-8befee60]{display:flex;gap:10px}.app-container[data-v-c327854b]{display:flex;height:100vh}.main-content[data-v-c327854b]{flex:1;display:flex;flex-direction:column;overflow:hidden}@media(max-width:768px){.app-container[data-v-c327854b]{flex-direction:column}}.dashboard-view[data-v-1df5ae10]{padding:30px}.page-header[data-v-1df5ae10]{margin-bottom:30px}.page-header h1[data-v-1df5ae10]{margin:0 0 10px;font-size:32px;color:var(--clr-on-surface-a0)}.page-header p[data-v-1df5ae10]{margin:0;color:var(--clr-on-surface-variant-a0);font-size:16px}.dashboard-content[data-v-1df5ae10]{display:grid;gap:20px}.card[data-v-1df5ae10]{background:var(--clr-surface-container-a0);border-radius:8px;padding:24px;box-shadow:0 2px 4px #0000001a}.card h2[data-v-1df5ae10]{margin:0 0 12px;font-size:20px;color:var(--clr-on-surface-a0)}.card p[data-v-1df5ae10]{margin:0;color:var(--clr-on-surface-variant-a0);line-height:1.6}.data-list-container[data-v-0950e724]{display:flex;flex-direction:column;height:100%;min-height:0}.loading[data-v-0950e724],.error[data-v-0950e724],.empty[data-v-0950e724]{padding:24px;text-align:center;color:var(--clr-on-surface-variant-a0)}.error[data-v-0950e724]{color:var(--clr-error-a0);background:#ff00001a;border-radius:4px}.data-list[data-v-0950e724]{display:flex;flex-direction:column;height:100%;min-height:0;background:var(--clr-surface-a0);border-radius:8px;overflow:hidden}.list-header[data-v-0950e724]{display:grid;grid-template-columns:50px 1fr 100px;padding:12px 16px;background:var(--clr-surface-container-a0);border-bottom:1px solid rgba(255,255,255,.1);font-weight:600;color:var(--clr-on-surface-a0);font-size:14px}.list-body[data-v-0950e724]{overflow-y:auto;flex:1;min-height:0}.list-row[data-v-0950e724]{display:grid;grid-template-columns:50px 1fr 100px;padding:12px 16px;border-bottom:1px solid rgba(255,255,255,.05);cursor:pointer;transition:background-color .2s}.list-row[data-v-0950e724]:hover{background-color:#ffffff0d}.list-row[data-v-0950e724]:last-child{border-bottom:none}.checkbox-cell[data-v-0950e724]{display:flex;align-items:center}.checkbox-cell input[type=checkbox][data-v-0950e724]{cursor:pointer;width:16px;height:16px}.name-cell[data-v-0950e724]{display:flex;align-items:center;color:var(--clr-on-surface-a0)}.id-cell[data-v-0950e724]{display:flex;align-items:center;color:var(--clr-on-surface-variant-a0);font-size:12px}.modal-backdrop[data-v-363e8438]{position:fixed;top:0;left:0;width:100%;height:100%;background:#0009;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.modal-container[data-v-363e8438]{background:var(--clr-surface-a10);border-radius:12px;width:100%;max-width:600px;max-height:90vh;display:flex;flex-direction:column;box-shadow:0 10px 40px #000}.modal-header[data-v-363e8438]{display:flex;align-items:center;justify-content:space-between;padding:24px;border-bottom:1px solid rgba(255,255,255,.1)}.modal-header h2[data-v-363e8438]{margin:0;font-size:20px;color:var(--clr-on-surface-a0)}.btn-close[data-v-363e8438]{background:transparent;border:none;color:var(--clr-on-surface-a0);font-size:32px;line-height:1;cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:background-color .2s}.btn-close[data-v-363e8438]:hover{background:#ffffff1a}.modal-content[data-v-363e8438]{flex:1;overflow-y:auto;padding:24px}.modal-footer[data-v-363e8438]{display:flex;gap:12px;justify-content:flex-end;padding:24px;border-top:1px solid rgba(255,255,255,.1)}.edit-form[data-v-363e8438]{display:flex;flex-direction:column;gap:20px}.form-group[data-v-363e8438]{display:flex;flex-direction:column;gap:8px}.form-group label[data-v-363e8438]{font-weight:500;color:var(--clr-on-surface-variant-a0);font-size:14px}.form-input[data-v-363e8438],.form-textarea[data-v-363e8438],.form-select[data-v-363e8438]{background:var(--clr-surface-a0);border:1px solid rgba(255,255,255,.2);border-radius:4px;padding:10px 12px;color:var(--clr-on-surface-a0);font-size:14px;font-family:inherit}.form-input[data-v-363e8438]:focus,.form-textarea[data-v-363e8438]:focus,.form-select[data-v-363e8438]:focus{outline:none;border-color:var(--clr-primary-a0)}.checkbox-wrapper[data-v-363e8438]{display:flex;align-items:center;gap:12px}.form-checkbox[data-v-363e8438]{width:20px;height:20px;cursor:pointer}.checkbox-wrapper span[data-v-363e8438]{color:var(--clr-on-surface-a0);font-size:14px}.btn-primary[data-v-363e8438]{background:var(--clr-primary-a0);color:var(--clr-on-primary-a0);border:none;padding:10px 20px;border-radius:6px;cursor:pointer;font-size:14px;font-weight:500;transition:opacity .2s}.btn-primary[data-v-363e8438]:hover{opacity:.9}.btn-secondary[data-v-363e8438]{background:var(--clr-surface-container-a0);color:var(--clr-on-surface-a0);border:1px solid rgba(255,255,255,.2);padding:10px 20px;border-radius:6px;cursor:pointer;font-size:14px;font-weight:500;transition:opacity .2s}.btn-secondary[data-v-363e8438]:hover{opacity:.9}.modal-enter-active[data-v-363e8438],.modal-leave-active[data-v-363e8438]{transition:opacity .3s ease}.modal-enter-from[data-v-363e8438],.modal-leave-to[data-v-363e8438]{opacity:0}.modal-enter-active .modal-container[data-v-363e8438],.modal-leave-active .modal-container[data-v-363e8438]{transition:transform .3s ease}.modal-enter-from .modal-container[data-v-363e8438],.modal-leave-to .modal-container[data-v-363e8438]{transform:scale(.9)}.groups-view[data-v-30285963]{padding:30px;height:100vh;display:flex;flex-direction:column}.page-header[data-v-30285963]{margin-bottom:20px;flex-shrink:0}.page-header h1[data-v-30285963]{margin:0 0 10px;font-size:32px;color:var(--clr-on-surface-a0)}.page-header p[data-v-30285963]{margin:0;color:var(--clr-on-surface-variant-a0);font-size:16px}.groups-content[data-v-30285963]{display:flex;flex-direction:column;gap:16px;flex:1;min-height:0}.toolbar[data-v-30285963]{display:flex;gap:12px;align-items:center;flex-shrink:0}.btn-primary[data-v-30285963]{background:var(--clr-primary-a0);color:var(--clr-on-primary-a0);border:none;padding:10px 20px;border-radius:6px;cursor:pointer;font-size:14px;font-weight:500;transition:opacity .2s}.btn-primary[data-v-30285963]:hover{opacity:.9}.btn-danger[data-v-30285963]{background:var(--clr-error-a0);color:var(--clr-on-error-a0);border:none;padding:10px 20px;border-radius:6px;cursor:pointer;font-size:14px;font-weight:500;transition:opacity .2s}.btn-danger[data-v-30285963]:hover{opacity:.9}.list-container[data-v-30285963]{flex:1;min-height:0;background:var(--clr-surface-container-a0);border-radius:8px;padding:16px;box-shadow:0 2px 4px #0000001a}.detail-view[data-v-9b473480]{display:flex;flex-direction:column;height:100%;gap:24px}.btn-back[data-v-9b473480]{background:transparent;border:none;color:var(--clr-primary-a0);cursor:pointer;font-size:14px;padding:8px 0;transition:opacity .2s;white-space:nowrap;margin-bottom:8px;flex-shrink:0;align-self:flex-start}.btn-back[data-v-9b473480]:hover{opacity:.8}.detail-header[data-v-9b473480]{display:flex;align-items:center;gap:16px;flex-shrink:0}.header-title[data-v-9b473480]{flex:1}.header-title h1[data-v-9b473480]{margin:0;font-size:28px;color:var(--clr-on-surface-a0)}.header-actions[data-v-9b473480]{display:flex;gap:12px}.btn-primary[data-v-9b473480]{background:var(--clr-primary-a0);color:var(--clr-on-primary-a0);border:none;padding:10px 20px;border-radius:6px;cursor:pointer;font-size:14px;font-weight:500;transition:opacity .2s}.btn-primary[data-v-9b473480]:hover{opacity:.9}.loading[data-v-9b473480]{color:var(--clr-on-surface-variant-a0);padding:24px}.detail-content[data-v-9b473480]{display:flex;flex-direction:column;gap:24px;overflow-y:auto;flex:1}.section[data-v-9b473480]{background:var(--clr-surface-container-a0);border-radius:8px;padding:24px;box-shadow:0 2px 4px #0000001a}.properties-grid[data-v-9b473480]{display:grid;gap:16px}.property-row[data-v-9b473480]{display:grid;grid-template-columns:200px 1fr;gap:16px;padding:12px 0;border-bottom:1px solid rgba(255,255,255,.05)}.property-row[data-v-9b473480]:last-child{border-bottom:none}.property-label[data-v-9b473480]{font-weight:500;color:var(--clr-on-surface-variant-a0);font-size:14px}.property-value[data-v-9b473480]{color:var(--clr-on-surface-a0);white-space:pre-wrap;word-break:break-word}.group-detail-view[data-v-bbe7f568]{padding:30px;height:100vh;display:flex;flex-direction:column}.loading[data-v-bbe7f568]{color:var(--clr-on-surface-variant-a0);padding:24px}.error[data-v-bbe7f568]{color:var(--clr-error-a0);padding:12px;background:#ff00001a;border-radius:4px;margin-bottom:20px}.empty[data-v-bbe7f568]{color:var(--clr-on-surface-variant-a0);padding:24px}.devices-view[data-v-9cdfa118]{padding:30px;height:100vh;display:flex;flex-direction:column}.page-header[data-v-9cdfa118]{margin-bottom:20px;flex-shrink:0}.page-header h1[data-v-9cdfa118]{margin:0 0 10px;font-size:32px;color:var(--clr-on-surface-a0)}.page-header p[data-v-9cdfa118]{margin:0;color:var(--clr-on-surface-variant-a0);font-size:16px}.devices-content[data-v-9cdfa118]{display:flex;flex-direction:column;gap:16px;flex:1;min-height:0}.toolbar[data-v-9cdfa118]{display:flex;gap:12px;align-items:center;flex-shrink:0}.btn-primary[data-v-9cdfa118]{background:var(--clr-primary-a0);color:var(--clr-on-primary-a0);border:none;padding:10px 20px;border-radius:6px;cursor:pointer;font-size:14px;font-weight:500;transition:opacity .2s}.btn-primary[data-v-9cdfa118]:hover{opacity:.9}.btn-danger[data-v-9cdfa118]{background:var(--clr-error-a0);color:var(--clr-on-error-a0);border:none;padding:10px 20px;border-radius:6px;cursor:pointer;font-size:14px;font-weight:500;transition:opacity .2s}.btn-danger[data-v-9cdfa118]:hover{opacity:.9}.list-container[data-v-9cdfa118]{flex:1;min-height:0;background:var(--clr-surface-container-a0);border-radius:8px;padding:16px;box-shadow:0 2px 4px #0000001a}.device-detail-view[data-v-d790da93]{padding:30px;height:100vh;display:flex;flex-direction:column}.error[data-v-d790da93]{color:var(--clr-error-a0);padding:12px;background:#ff00001a;border-radius:4px;margin-bottom:20px}.rules-view[data-v-0e570880]{padding:30px;height:100vh;display:flex;flex-direction:column}.page-header[data-v-0e570880]{margin-bottom:20px;flex-shrink:0}.page-header h1[data-v-0e570880]{margin:0 0 10px;font-size:32px;color:var(--clr-on-surface-a0)}.page-header p[data-v-0e570880]{margin:0;color:var(--clr-on-surface-variant-a0);font-size:16px}.rules-content[data-v-0e570880]{display:flex;flex-direction:column;gap:16px;flex:1;min-height:0}.toolbar[data-v-0e570880]{display:flex;gap:12px;align-items:center;flex-shrink:0}.btn-primary[data-v-0e570880]{background:var(--clr-primary-a0);color:var(--clr-on-primary-a0);border:none;padding:10px 20px;border-radius:6px;cursor:pointer;font-size:14px;font-weight:500;transition:opacity .2s}.btn-primary[data-v-0e570880]:hover{opacity:.9}.btn-danger[data-v-0e570880]{background:var(--clr-error-a0);color:var(--clr-on-error-a0);border:none;padding:10px 20px;border-radius:6px;cursor:pointer;font-size:14px;font-weight:500;transition:opacity .2s}.btn-danger[data-v-0e570880]:hover{opacity:.9}.list-container[data-v-0e570880]{flex:1;min-height:0;background:var(--clr-surface-container-a0);border-radius:8px;padding:16px;box-shadow:0 2px 4px #0000001a}.rule-detail-view[data-v-e132aa1f]{padding:30px;height:100vh;display:flex;flex-direction:column;gap:24px;overflow-y:auto}.error[data-v-e132aa1f]{color:var(--clr-error-a0);padding:12px;background:#ff00001a;border-radius:4px;margin-bottom:20px}.actions-section[data-v-e132aa1f]{background:var(--clr-surface-container-a0);border-radius:8px;padding:24px;box-shadow:0 2px 4px #0000001a}.actions-header[data-v-e132aa1f]{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.actions-header h2[data-v-e132aa1f]{margin:0;font-size:20px;color:var(--clr-on-surface-a0)}.btn-primary[data-v-e132aa1f]{background:var(--clr-primary-a0);color:var(--clr-on-primary-a0);border:none;padding:10px 20px;border-radius:6px;cursor:pointer;font-size:14px;font-weight:500;transition:opacity .2s}.btn-primary[data-v-e132aa1f]:hover{opacity:.9}.loading[data-v-e132aa1f]{color:var(--clr-on-surface-variant-a0);padding:16px 0;text-align:center}.empty-state[data-v-e132aa1f]{color:var(--clr-on-surface-variant-a0);padding:32px 0;text-align:center;font-style:italic}.actions-list[data-v-e132aa1f]{display:flex;flex-direction:column;gap:8px}.action-item[data-v-e132aa1f]{display:flex;justify-content:space-between;align-items:center;padding:16px;background:var(--clr-surface-a0);border-radius:6px;cursor:pointer;transition:background-color .2s}.action-item[data-v-e132aa1f]:hover{background:var(--clr-surface-tonal-a0)}.action-info[data-v-e132aa1f]{display:flex;flex-direction:column;gap:4px}.action-name[data-v-e132aa1f]{font-size:16px;font-weight:500;color:var(--clr-on-surface-a0)}.action-id[data-v-e132aa1f]{font-size:12px;color:var(--clr-on-surface-variant-a0)}.action-arrow[data-v-e132aa1f]{font-size:20px;color:var(--clr-on-surface-variant-a0)}.action-detail-view[data-v-6d00c7f3]{padding:30px;height:100vh;display:flex;flex-direction:column}.error[data-v-6d00c7f3]{color:var(--clr-error-a0);padding:12px;background:#ff00001a;border-radius:4px;margin-bottom:20px}:root{--clr-primary-a0: #b51f24;--clr-primary-a10: #c14139;--clr-primary-a20: #cc5b4f;--clr-primary-a30: #d77366;--clr-primary-a40: #e08b7e;--clr-primary-a50: #e9a296;--clr-surface-a0: #121212;--clr-surface-a10: #282828;--clr-surface-a20: #3f3f3f;--clr-surface-a30: #575757;--clr-surface-a40: #717171;--clr-surface-a50: #8b8b8b;--clr-surface-tonal-a0: #221614;--clr-surface-tonal-a10: #372b29;--clr-surface-tonal-a20: #4d4240;--clr-surface-tonal-a30: #645a58;--clr-surface-tonal-a40: #7c7372;--clr-surface-tonal-a50: #958e8c;--clr-success-a0: #22946e;--clr-success-a10: #47d5a6;--clr-success-a20: #9ae8ce;--clr-warning-a0: #a87a2a;--clr-warning-a10: #d7ac61;--clr-warning-a20: #ecd7b2;--clr-danger-a0: #9c2121;--clr-danger-a10: #d94a4a;--clr-danger-a20: #eb9e9e;--clr-info-a0: #21498a;--clr-info-a10: #4077d1;--clr-info-a20: #92b2e5}.bg-primary-a0{background-color:var(--clr-primary-a0)}.bg-primary-a10{background-color:var(--clr-primary-a10)}.bg-primary-a20{background-color:var(--clr-primary-a20)}.bg-primary-a30{background-color:var(--clr-primary-a30)}.bg-primary-a40{background-color:var(--clr-primary-a40)}.bg-primary-a50{background-color:var(--clr-primary-a50)}.bg-surface-a0{background-color:var(--clr-surface-a0)}.bg-surface-a10{background-color:var(--clr-surface-a10)}.bg-surface-a20{background-color:var(--clr-surface-a20)}.bg-surface-a30{background-color:var(--clr-surface-a30)}.bg-surface-a40{background-color:var(--clr-surface-a40)}.bg-surface-a50{background-color:var(--clr-surface-a50)}.bg-surface-tonal-a0{background-color:var(--clr-surface-tonal-a0)}.bg-surface-tonal-a10{background-color:var(--clr-surface-tonal-a10)}.bg-surface-tonal-a20{background-color:var(--clr-surface-tonal-a20)}.bg-surface-tonal-a30{background-color:var(--clr-surface-tonal-a30)}.bg-surface-tonal-a40{background-color:var(--clr-surface-tonal-a40)}.bg-surface-tonal-a50{background-color:var(--clr-surface-tonal-a50)}.bg-success-a0{background-color:var(--clr-success-a0)}.bg-success-a10{background-color:var(--clr-success-a10)}.bg-success-a20{background-color:var(--clr-success-a20)}.bg-warning-a0{background-color:var(--clr-warning-a0)}.bg-warning-a10{background-color:var(--clr-warning-a10)}.bg-warning-a20{background-color:var(--clr-warning-a20)}.bg-danger-a0{background-color:var(--clr-danger-a0)}.bg-danger-a10{background-color:var(--clr-danger-a10)}.bg-danger-a20{background-color:var(--clr-danger-a20)}.bg-info-a0{background-color:var(--clr-info-a0)}.bg-info-a10{background-color:var(--clr-info-a10)}.bg-info-a20{background-color:var(--clr-info-a20)}*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif;background-color:var(--clr-surface-a0);color:var(--clr-surface-a50)}#app{height:100vh}.btn{padding:10px 20px;border:none;border-radius:6px;cursor:pointer;font-size:14px;transition:all .2s}.btn-primary{background-color:var(--clr-primary-a0);color:#fff}.btn-primary:hover{background-color:var(--clr-primary-a10)}.btn-secondary{background-color:var(--clr-surface-a20);color:var(--clr-surface-a50);border:1px solid var(--clr-surface-a30)}.btn-secondary:hover{background-color:var(--clr-surface-a30)}
