@import "https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&family=JetBrains+Mono:wght@400;500&display=swap";:root{--background:#080c16;--foreground:#f3f4f6;--primary:#1ec2ac;--secondary:#1d2435;--accent:#4b2002;--card:#0c1322;--card-foreground:#f3f4f6;--muted:#1d2435;--muted-foreground:#f3f4f673;--destructive:#ef4343;--success:#21c45d;--warning:#e7b008;--info:#3c83f6;--border:#20283c;--input:#20283c;--ring:#1ec2ac;--font-sans:"Inter", sans-serif;--font-mono:"JetBrains Mono", monospace;--radius:.625rem;--radius-sm:4px;--radius-md:8px;--radius-lg:var(--radius);--transition-fast:.15s ease;--transition-base:.2s ease;--glass-background:#0c132299;--glass-border:#20283ccc;--destructive-bg:#7c1d1d33;--destructive-border:#7c1d1d80;--success-bg:#21c45d1a;--success-border:#21c45d66;--warning-bg:#e7b0081a;--warning-border:#e7b00866;--inactive-bg:#7c1d1d1a;--inactive-border:#7c1d1d66;--inactive-color:#f87171;--suspended-bg:#1d243580;--suspended-border:#20283cb3;--suspended-color:#f3f4f68c;--focus-ring:#1ec2ac26;--sidebar-background:#0f1729;--sidebar-foreground:#f3f4f6;--sidebar-primary:#f97415;--sidebar-primary-foreground:#fff;--sidebar-accent:#16213c;--sidebar-accent-foreground:#f3f4f6;--sidebar-border:#242d42;--sidebar-ring:#f97415}.light-theme{--background:#f6f7f9;--foreground:#0f1729;--card:#fff;--card-foreground:#0f1729;--primary:#1ec2ac;--primary-foreground:#fff;--secondary:#f3f4f6;--muted:#f3f4f6;--muted-foreground:#6b7280;--accent:#fef0e6;--destructive:#ef4343;--border:#e5e7eb;--input:#e5e7eb;--ring:#0df;--success:#21c45d;--warning:#e7b008;--info:#3c83f6;--glass-background:#ffffffb3;--glass-border:#e5e7ebcc;--destructive-bg:#ef434326;--destructive-border:#ef434359;--success-bg:#21c45d26;--success-border:#21c45d59;--warning-bg:#e7b00826;--warning-border:#e7b00859;--inactive-bg:#ef43431a;--inactive-border:#ef434366;--inactive-color:var(--destructive);--suspended-bg:#dcdcdc80;--suspended-border:#c8c8c8b3;--suspended-color:var(--muted-foreground);--focus-ring:#1ec2ac40}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html,body{-webkit-tap-highlight-color:transparent;touch-action:manipulation;background-color:var(--background);width:100%;height:100%;color:var(--foreground);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:clamp(.875rem,2.5vw,1rem);line-height:1.5;position:fixed;overflow:hidden}h1{letter-spacing:-.02em;font-size:clamp(1.5rem,5vw,1.875rem);font-weight:700;line-height:1.2}h2{font-size:clamp(1.25rem,4vw,1.5rem);font-weight:600;line-height:1.3}h3{font-size:clamp(1.125rem,3vw,1.25rem);font-weight:600;line-height:1.4}.text-muted{color:var(--muted-foreground);font-size:.875rem}.text-mono{font-family:var(--font-mono)}.card{background-color:var(--card);border:1px solid var(--border);border-radius:var(--radius-lg);color:var(--card-foreground);padding:1.25rem}@media (width>=640px){.card{padding:1.5rem}}.glass-card{background:var(--glass-background);-webkit-backdrop-filter:blur(8px);border:1px solid var(--glass-border);border-radius:var(--radius-lg);padding:1.25rem}@media (width>=640px){.glass-card{padding:1.5rem}}.btn{border-radius:var(--radius-md);font-family:var(--font-sans);cursor:pointer;transition:background-color var(--transition-fast), border-color var(--transition-fast), opacity var(--transition-fast), box-shadow var(--transition-fast);white-space:nowrap;-webkit-user-select:none;user-select:none;border:1px solid #0000;justify-content:center;align-items:center;gap:.5rem;padding:.625rem 1.25rem;font-size:.875rem;font-weight:600;line-height:1;text-decoration:none;display:inline-flex}.btn-primary{background-color:var(--primary);color:var(--primary-foreground);border-color:var(--primary);font-size:.875rem}.btn-primary:hover{box-shadow:0 0 12px var(--focus-ring);background-color:#17a692;border-color:#17a692}.btn-secondary{background-color:var(--secondary);color:var(--foreground);border-color:var(--border)}.btn-secondary:hover{background-color:var(--muted);border-color:var(--border);opacity:.9}.btn-outline{color:var(--foreground);border-color:var(--border);background-color:#0000}.btn-outline:hover{background-color:var(--secondary)}.btn-ghost{color:var(--foreground);background-color:#0000;border-color:#0000}.btn-ghost:hover{background-color:var(--secondary)}.btn-destructive{background-color:var(--destructive);color:#fff;border-color:var(--destructive)}.btn-destructive:hover{background-color:#d32f2f;border-color:#d32f2f}.btn-disabled,.btn:disabled{background-color:var(--muted);color:var(--muted-foreground);pointer-events:none;cursor:not-allowed;opacity:.7;border-color:#0000}.badge{white-space:nowrap;border:1px solid #0000;border-radius:9999px;align-items:center;padding:.2rem .65rem;font-size:.75rem;font-weight:600;line-height:1;display:inline-flex}.badge-default{background-color:var(--success-bg);color:var(--primary);border-color:var(--success-border)}.badge-secondary{background-color:var(--secondary);color:var(--foreground);border-color:var(--border)}.badge-outline{color:var(--foreground);border-color:var(--border);background-color:#0000}.badge-destructive{background-color:var(--destructive-bg);color:var(--destructive);border-color:var(--destructive-border)}.badge-success{background-color:var(--success-bg);color:var(--success);border-color:var(--success-border)}.badge-warning{background-color:var(--warning-bg);color:var(--warning);border-color:var(--warning-border)}.status-ativo{background-color:var(--success-bg);color:var(--success);border:1px solid var(--success-border);border-radius:9999px;align-items:center;padding:.2rem .65rem;font-size:.75rem;font-weight:600;display:inline-flex}.status-inativo{background-color:var(--inactive-bg);color:var(--inactive-color);border:1px solid var(--inactive-border);border-radius:9999px;align-items:center;padding:.2rem .65rem;font-size:.75rem;font-weight:600;display:inline-flex}.status-implantacao{background-color:var(--warning-bg);color:var(--warning);border:1px solid var(--warning-border);border-radius:9999px;align-items:center;padding:.2rem .65rem;font-size:.75rem;font-weight:600;display:inline-flex}.status-suspensa{background-color:var(--suspended-bg);color:var(--suspended-color);border:1px solid var(--suspended-border);border-radius:9999px;align-items:center;padding:.2rem .65rem;font-size:.75rem;font-weight:600;display:inline-flex}.form-group{flex-direction:column;gap:.375rem;display:flex}.form-label{text-transform:uppercase;letter-spacing:.08em;color:var(--muted-foreground);font-size:.6875rem;font-weight:600}.form-input,.form-select{border:1px solid var(--border);border-radius:var(--radius-sm);width:100%;color:var(--foreground);font-family:var(--font-sans);transition:border-color var(--transition-fast), box-shadow var(--transition-fast);appearance:none;background-color:#0000;outline:none;padding:.625rem .875rem;font-size:.9375rem;line-height:1.5}select option{background-color:var(--card);color:var(--foreground)}.form-input::placeholder{color:var(--muted-foreground);opacity:.5}.form-input:focus,.form-select:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--focus-ring)}.form-input.error,.form-select.error{border-color:var(--destructive)}.form-input.error:focus,.form-select.error:focus{box-shadow:0 0 0 3px var(--destructive-border)}.form-error-text{color:var(--destructive);font-size:.75rem}input[type=checkbox]{width:1rem;height:1rem;accent-color:var(--primary);cursor:pointer}input[type=checkbox].switch{appearance:none;background-color:var(--border);cursor:pointer;width:2.25rem;height:1.25rem;transition:background-color var(--transition-base);border-radius:9999px;position:relative}input[type=checkbox].switch:after{content:"";width:1rem;height:1rem;transition:transform var(--transition-base);background-color:#fff;border-radius:50%;position:absolute;top:.125rem;left:.125rem;box-shadow:0 1px 3px #0003}input[type=checkbox].switch:checked{background-color:var(--primary)}input[type=checkbox].switch:checked:after{transform:translate(1rem)}.scrollable-content{-webkit-overflow-scrolling:touch;will-change:transform;overflow-y:auto}.mobile-nav-header[data-v-b70817dc]{background-color:var(--background);border-bottom:1px solid var(--border);z-index:99;align-items:center;gap:1rem;height:60px;padding:0 1rem;display:none;position:fixed;top:0;left:0;right:0}.btn-toggle-mobile[data-v-b70817dc]{color:var(--foreground);cursor:pointer;border-radius:var(--radius-sm);background:0 0;border:none;justify-content:center;align-items:center;padding:.5rem;display:flex}.sidebar-backdrop[data-v-b70817dc]{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:101;background-color:#080c1699;position:fixed;inset:0}.sidebar[data-v-b70817dc]{background-color:var(--sidebar-background,var(--card));border-right:1px solid var(--sidebar-border,var(--border));z-index:102;width:260px;height:100vh;transition:width var(--transition-base), transform var(--transition-base);flex-direction:column;display:flex;position:fixed;top:0;left:0}.btn-collapse[data-v-b70817dc]{background-color:var(--sidebar-accent,var(--secondary));border:1px solid var(--sidebar-border,var(--border));width:24px;height:24px;color:var(--sidebar-foreground,var(--foreground));cursor:pointer;z-index:10;transition:background-color var(--transition-fast), transform var(--transition-base);border-radius:50%;justify-content:center;align-items:center;display:flex;position:absolute;top:24px;right:-12px;box-shadow:0 2px 8px #0000004d}.btn-collapse[data-v-b70817dc]:hover{background-color:var(--sidebar-primary,var(--primary));color:var(--sidebar-primary-foreground,#080c16);border-color:var(--sidebar-primary,var(--primary))}.rotate-180[data-v-b70817dc]{transform:rotate(180deg)}.sidebar.collapsed[data-v-b70817dc]{width:80px}.sidebar.collapsed .sidebar-header[data-v-b70817dc]{padding:1.5rem .5rem}.sidebar.collapsed .sidebar-logo[data-v-b70817dc]{max-width:40px}.sidebar.collapsed .nav-item[data-v-b70817dc]{justify-content:center;margin:.25rem 0;padding:.75rem 0}.sidebar.collapsed .sidebar-group[data-v-b70817dc]{padding:0 .5rem}.sidebar-header[data-v-b70817dc]{transition:padding var(--transition-base);flex-direction:column;align-items:center;gap:.25rem;padding:1.5rem 1.25rem;display:flex}.logo-container[data-v-b70817dc]{justify-content:center;align-items:center;height:32px;display:flex}.sidebar-logo[data-v-b70817dc]{object-fit:contain;width:100%;max-width:130px;height:35px;transition:max-width var(--transition-base)}.sidebar-logo-short[data-v-b70817dc]{object-fit:contain;width:100%;max-width:40px;height:32px}.sidebar-subtitle[data-v-b70817dc]{letter-spacing:.12em;text-transform:uppercase;white-space:nowrap;font-size:.625rem;font-weight:700}.sidebar-divider[data-v-b70817dc]{background:linear-gradient(90deg,#1ec2ac00 0%,#1ec2ac88 50%,#1ec2ac00 100%);width:100%;height:1px;margin-bottom:1rem}.sidebar-nav[data-v-b70817dc]{flex-direction:column;flex:1;gap:1.25rem;padding:0;display:flex}.sidebar-group[data-v-b70817dc]{flex-direction:column;gap:.375rem;padding:0 1rem;display:flex}.sidebar-section-title[data-v-b70817dc]{color:#f3f4f659;text-transform:uppercase;letter-spacing:.08em;padding:0 .75rem .5rem;font-size:.6875rem;font-weight:700}.sidebar-group-divider[data-v-b70817dc]{background-color:#ffffff08;width:100%;height:1px;margin:.75rem 0}.nav-item[data-v-b70817dc]{border-radius:var(--radius-md);color:var(--sidebar-foreground,#f3f4f68c);opacity:.8;transition:all var(--transition-fast);white-space:nowrap;align-items:center;gap:.875rem;padding:.75rem 1rem;font-size:.9375rem;font-weight:500;text-decoration:none;display:flex}.nav-icon-wrap[data-v-b70817dc]{justify-content:center;align-items:center;width:20px;height:20px;display:flex}.nav-item[data-v-b70817dc]:hover{background-color:var(--sidebar-accent,#ffffff05);color:var(--sidebar-accent-foreground,var(--foreground));opacity:1}.nav-item.active[data-v-b70817dc]{background-color:var(--sidebar-accent,var(--secondary));color:var(--sidebar-accent-foreground,var(--foreground));opacity:1;font-weight:600}.sidebar-footer-wrapper[data-v-b70817dc]{flex-direction:column;margin-top:auto;display:flex}.sidebar-divider-footer[data-v-b70817dc]{background-color:#ffffff0a;width:100%;height:1px}.sidebar-footer[data-v-b70817dc]{flex-direction:column;gap:1rem;padding:1.25rem 1.5rem;display:flex}.sidebar.collapsed .sidebar-footer[data-v-b70817dc]{align-items:center;padding:1rem .75rem}.user-info-block[data-v-b70817dc]{flex-direction:column;gap:.125rem;display:flex}.user-email[data-v-b70817dc]{color:var(--sidebar-foreground,var(--foreground));text-overflow:ellipsis;white-space:nowrap;max-width:210px;font-size:.8125rem;font-weight:600;overflow:hidden}.user-role[data-v-b70817dc]{color:var(--sidebar-foreground,#f3f4f659);opacity:.6;letter-spacing:.08em;font-size:.625rem;font-weight:700}.btn-theme-toggle[data-v-b70817dc]{width:100%;color:var(--sidebar-foreground,#f3f4f699);opacity:.8;cursor:pointer;font-family:var(--font-sans);transition:all var(--transition-fast);text-align:left;white-space:nowrap;background:0 0;border:none;align-items:center;gap:.875rem;padding:.5rem 0;font-size:.875rem;font-weight:500;display:flex}.sidebar.collapsed .btn-theme-toggle[data-v-b70817dc]{justify-content:center;padding:.5rem 0}.btn-theme-toggle[data-v-b70817dc]:hover{color:var(--sidebar-primary,var(--primary));opacity:1}.btn-logout[data-v-b70817dc]{width:100%;color:var(--sidebar-foreground,#f3f4f699);opacity:.8;cursor:pointer;font-family:var(--font-sans);transition:all var(--transition-fast);text-align:left;white-space:nowrap;background:0 0;border:none;align-items:center;gap:.875rem;padding:.5rem 0;font-size:.875rem;font-weight:500;display:flex}.sidebar.collapsed .btn-logout[data-v-b70817dc]{justify-content:center;padding:.5rem 0}.btn-logout[data-v-b70817dc]:hover{color:#f87171;opacity:1}@media (width<=768px){.mobile-nav-header[data-v-b70817dc]{display:flex}.sidebar[data-v-b70817dc]{z-index:102;height:100vh;top:0;transform:translate(-100%);box-shadow:4px 0 16px #00000080}.sidebar.mobile-open[data-v-b70817dc]{transform:translate(0)}.btn-collapse[data-v-b70817dc]{display:none}.sidebar.collapsed[data-v-b70817dc]{width:260px}.sidebar.collapsed .sidebar-header[data-v-b70817dc]{padding:1.5rem 1.25rem}.sidebar.collapsed .sidebar-logo[data-v-b70817dc]{max-width:130px}.sidebar.collapsed .nav-item[data-v-b70817dc]{justify-content:flex-start;margin:0;padding:.75rem 1rem}.sidebar.collapsed .btn-logout[data-v-b70817dc]{justify-content:flex-start;padding:.5rem 0}.sidebar.collapsed .sidebar-group[data-v-b70817dc]{padding:0 1rem}}.toast-container[data-v-9414f344]{z-index:9999;pointer-events:none;flex-direction:column;gap:.5rem;display:flex;position:fixed;top:1rem;right:1rem}.toast-item[data-v-9414f344]{pointer-events:auto;border-left:4px solid var(--primary);min-width:300px;color:var(--foreground);background:#0c1322e6;justify-content:space-between;align-items:flex-start;gap:1rem;padding:1rem;display:flex}.toast-error[data-v-9414f344]{border-left-color:var(--destructive)}.toast-success[data-v-9414f344]{border-left-color:var(--success)}.toast-warning[data-v-9414f344]{border-left-color:var(--warning)}.toast-info[data-v-9414f344]{border-left-color:var(--info)}.toast-content[data-v-9414f344]{align-items:center;gap:.75rem;display:flex}.toast-icon[data-v-9414f344]{flex-shrink:0}.text-success[data-v-9414f344]{color:var(--success)}.text-error[data-v-9414f344]{color:var(--destructive)}.text-warning[data-v-9414f344]{color:var(--warning)}.text-info[data-v-9414f344]{color:var(--info)}.toast-message[data-v-9414f344]{font-size:.875rem;line-height:1.4}.toast-close[data-v-9414f344]{color:var(--foreground);opacity:.6;cursor:pointer;background:0 0;border:none;padding:0;font-size:1.25rem;line-height:1}.toast-close[data-v-9414f344]:hover{opacity:1}.toast-enter-active[data-v-9414f344],.toast-leave-active[data-v-9414f344]{transition:all .3s}.toast-enter-from[data-v-9414f344]{opacity:0;transform:translate(100%)}.toast-leave-to[data-v-9414f344]{opacity:0;transform:translateY(-20px)}.app-layout{width:100vw;height:100vh;display:flex;overflow:hidden}.app-content{background-color:var(--background);height:100vh;color:var(--foreground);transition:margin-left var(--transition-base);flex:1;margin-left:260px;padding:1.5rem;overflow-y:auto}.app-content.content-no-padding{padding:0}.app-content.content-collapsed{margin-left:80px}.app-content.content-fullscreen{margin-left:0!important;padding:0!important}@media (width<=768px){.app-content{padding:calc(60px + 1rem) 1rem 1rem;margin-left:0!important}}
