@layer components;@font-face{font-family:Inter;font-style:normal;font-weight:400 900;font-display:swap;src:url(/fonts/inter-05.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-weight:400 900;font-display:swap;src:url(/fonts/inter-01.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-weight:400 900;font-display:swap;src:url(/fonts/inter-04.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-weight:400 900;font-display:swap;src:url(/fonts/inter-03.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:400 700;font-display:swap;src:url(/fonts/jetbrains-mono-09.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:400 700;font-display:swap;src:url(/fonts/jetbrains-mono-13.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:400 700;font-display:swap;src:url(/fonts/jetbrains-mono-10.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:400 700;font-display:swap;src:url(/fonts/jetbrains-mono-11.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-font-weight:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--color-red-100:oklch(93.6% .032 17.717);--color-red-700:oklch(50.5% .213 27.518);--color-emerald-100:oklch(95% .052 163.051);--color-emerald-700:oklch(50.8% .118 165.612);--spacing:.25rem;--text-xs:.75rem;--text-xs--line-height:calc(1 / .75);--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--font-weight-medium:500;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer utilities{.collapse{visibility:collapse}.visible{visibility:visible}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.container{width:100%}@media (width>=40rem){.container{max-width:40rem}}@media (width>=48rem){.container{max-width:48rem}}@media (width>=64rem){.container{max-width:64rem}}@media (width>=80rem){.container{max-width:80rem}}@media (width>=96rem){.container{max-width:96rem}}.block{display:block}.flex{display:flex}.hidden{display:none}.inline{display:inline}.inline-block{display:inline-block}.inline-flex{display:inline-flex}.table{display:table}.h-8{height:calc(var(--spacing) * 8)}.h-9{height:calc(var(--spacing) * 9)}.w-9{width:calc(var(--spacing) * 9)}.w-full{width:100%}.grow{flex-grow:1}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.resize{resize:both}.items-center{align-items:center}.justify-center{justify-content:center}.gap-2{gap:calc(var(--spacing) * 2)}.rounded{border-radius:.25rem}.rounded-full{border-radius:3.40282e38px}.rounded-md{border-radius:calc(var(--radius) - 2px)}.border{border-style:var(--tw-border-style);border-width:1px}.border\!{border-style:var(--tw-border-style)!important;border-width:1px!important}.border-border{border-color:hsl(var(--border))}.border-destructive\/30{border-color:hsl(var(--destructive))}@supports (color:color-mix(in lab, red, red)){.border-destructive\/30{border-color:color-mix(in oklab, hsl(var(--destructive)) 30%, transparent)}}.border-input{border-color:hsl(var(--input))}.bg-background{background-color:hsl(var(--background))}.bg-destructive\/10{background-color:hsl(var(--destructive))}@supports (color:color-mix(in lab, red, red)){.bg-destructive\/10{background-color:color-mix(in oklab, hsl(var(--destructive)) 10%, transparent)}}.bg-emerald-100{background-color:var(--color-emerald-100)}.bg-primary,.bg-primary\/10{background-color:hsl(var(--primary))}@supports (color:color-mix(in lab, red, red)){.bg-primary\/10{background-color:color-mix(in oklab, hsl(var(--primary)) 10%, transparent)}}.bg-red-100{background-color:var(--color-red-100)}.bg-secondary{background-color:hsl(var(--secondary))}.px-2{padding-inline:calc(var(--spacing) * 2)}.px-3{padding-inline:calc(var(--spacing) * 3)}.px-4{padding-inline:calc(var(--spacing) * 4)}.py-0\.5{padding-block:calc(var(--spacing) * .5)}.py-1{padding-block:var(--spacing)}.py-2{padding-block:calc(var(--spacing) * 2)}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.whitespace-nowrap{white-space:nowrap}.text-destructive{color:hsl(var(--destructive))}.text-emerald-700{color:var(--color-emerald-700)}.text-foreground{color:hsl(var(--foreground))}.text-primary{color:hsl(var(--primary))}.text-primary-foreground{color:hsl(var(--primary-foreground))}.text-red-700{color:var(--color-red-700)}.text-secondary-foreground{color:hsl(var(--secondary-foreground))}.italic{font-style:italic}.line-through{text-decoration-line:line-through}.underline{text-decoration-line:underline}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-xs{--tw-shadow:0 1px 2px 0 var(--tw-shadow-color,#0000000d);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.blur{--tw-blur:blur(8px);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.invert{--tw-invert:invert(100%);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.filter\!{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)!important}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.placeholder\:text-muted-foreground::placeholder{color:hsl(var(--muted-foreground))}@media (hover:hover){.hover\:bg-accent:hover{background-color:hsl(var(--accent))}.hover\:bg-destructive\/15:hover{background-color:hsl(var(--destructive))}@supports (color:color-mix(in lab, red, red)){.hover\:bg-destructive\/15:hover{background-color:color-mix(in oklab, hsl(var(--destructive)) 15%, transparent)}}.hover\:bg-primary\/90:hover{background-color:hsl(var(--primary))}@supports (color:color-mix(in lab, red, red)){.hover\:bg-primary\/90:hover{background-color:color-mix(in oklab, hsl(var(--primary)) 90%, transparent)}}.hover\:bg-secondary\/80:hover{background-color:hsl(var(--secondary))}@supports (color:color-mix(in lab, red, red)){.hover\:bg-secondary\/80:hover{background-color:color-mix(in oklab, hsl(var(--secondary)) 80%, transparent)}}.hover\:text-accent-foreground:hover{color:hsl(var(--accent-foreground))}}.focus-visible\:ring-2:focus-visible{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.focus-visible\:ring-ring:focus-visible{--tw-ring-color:hsl(var(--ring))}.focus-visible\:outline-none:focus-visible{--tw-outline-style:none;outline-style:none}.disabled\:pointer-events-none:disabled{pointer-events:none}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:opacity-50:disabled{opacity:.5}.\[\&_svg\]\:pointer-events-none svg{pointer-events:none}.\[\&_svg\]\:size-4 svg{width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}.\[\&_svg\]\:shrink-0 svg{flex-shrink:0}}:root{--font-ui:"Inter", sans-serif;--font-mono:"JetBrains Mono", monospace;font-family:var(--font-ui);--background:210 40% 98%;--foreground:222 47% 11%;--card:0 0% 100%;--card-foreground:222 47% 11%;--popover:0 0% 100%;--popover-foreground:222 47% 11%;--primary:217 91% 60%;--primary-foreground:0 0% 100%;--secondary:214 32% 91%;--secondary-foreground:222 47% 11%;--muted:214 32% 91%;--muted-foreground:215 16% 47%;--accent:214 32% 91%;--accent-foreground:222 47% 11%;--destructive:0 84% 60%;--destructive-foreground:0 0% 100%;--border:214 32% 87%;--input:214 32% 87%;--ring:217 91% 60%;--radius:.5rem;color:hsl(var(--foreground));background:hsl(var(--background));font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}html,body,#root{background:hsl(var(--background));width:100%;height:100%;min-height:100%}html.dark,html.dark body,html.dark #root{background:#0f172a}*{box-sizing:border-box}body{overscroll-behavior:none;min-width:320px;min-height:100vh;margin:0}button,input,select,textarea{font:inherit}button{color:inherit}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}.app-shell.dark ::-webkit-scrollbar{width:11px;height:11px}.dark .app-shell ::-webkit-scrollbar{width:11px;height:11px}.app-shell.dark ::-webkit-scrollbar-track{background:hsl(var(--background))}.dark .app-shell ::-webkit-scrollbar-track{background:hsl(var(--background))}.app-shell.dark ::-webkit-scrollbar-thumb{border:3px solid hsl(var(--background));background:hsl(var(--muted-foreground) / .55);border-radius:999px}.dark .app-shell ::-webkit-scrollbar-thumb{border:3px solid hsl(var(--background));background:hsl(var(--muted-foreground) / .55);border-radius:999px}.app-shell.dark ::-webkit-scrollbar-thumb:hover{background:hsl(var(--muted-foreground) / .72)}.dark .app-shell ::-webkit-scrollbar-thumb:hover{background:hsl(var(--muted-foreground) / .72)}.theme-switching *,.theme-switching :before,.theme-switching :after{transition-duration:0s!important;transition-delay:0s!important;animation-duration:0s!important;animation-delay:0s!important}.topbar-view-tabs{align-items:center;gap:4px;display:flex}.topbar-view-tabs button{color:#64748b;height:34px;font:inherit;cursor:pointer;background:0 0;border:0;border-radius:6px;align-items:center;gap:6px;padding:0 12px;font-size:13px;font-weight:600;display:inline-flex}.topbar-view-tabs button svg{stroke-width:2px;flex:0 0 16px;width:16px;height:16px}.topbar-view-tabs button:hover,.topbar-view-tabs button.is-active{color:#2563eb;background:#eff6ff}.topbar-view-tabs button:focus-visible{outline-offset:2px;outline:2px solid #93c5fd}.dark .topbar-view-tabs button{color:hsl(var(--muted-foreground))}.dark .topbar-view-tabs button:hover,.dark .topbar-view-tabs button.is-active{color:#93c5fd;background:#2563eb47;box-shadow:inset 0 0 0 1px #60a5fa33}.avatar-menu__panel .avatar-menu__logout,.avatar-menu__panel .avatar-menu__logout svg{color:#dc2626}@media (width<=760px){.topbar>.summary>.theme-button{display:none}}.inventory-modal-backdrop{z-index:70;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#0f172a5c;justify-content:center;align-items:center;padding:28px;display:flex;position:fixed;inset:0}.inventory-modal{background:#fff;border:1px solid #e2e8f0f2;border-radius:12px;width:min(1080px,100%);max-height:min(760px,100vh - 56px);position:relative;overflow:hidden;box-shadow:0 24px 80px #0f172a3d}.inventory-modal__scroll{scrollbar-width:none;width:100%;max-height:min(760px,100vh - 56px);padding:22px;overflow:auto}.inventory-modal__scroll::-webkit-scrollbar{width:0;height:0}.inventory-modal__scrollbar{cursor:pointer;pointer-events:auto;touch-action:none;-webkit-user-select:none;user-select:none;width:8px;position:absolute;top:0;bottom:0;right:8px}.inventory-modal__scrollbar span{cursor:grab;background:#cbd5e1;border-radius:999px;width:4px;position:absolute;top:0;right:0;box-shadow:inset 0 0 0 1px #94a3b81f}.inventory-modal__scrollbar:active span{cursor:grabbing;background:#94a3b8}.inventory-modal__header,.inventory-modal__title,.inventory-modal__tabs,.inventory-modal__links{align-items:center;display:flex}.inventory-modal__header{justify-content:space-between;gap:18px}.inventory-modal__back,.inventory-modal__menu{display:none}.inventory-modal__title{gap:14px}.inventory-modal__title h2{color:#0f172a;margin:0;font-size:22px;line-height:1.2}.inventory-modal__title p{color:#64748b;margin:4px 0 0;font-weight:800}.inventory-modal__icon{color:#2563eb;background:#eaf2ff;border-radius:10px;justify-content:center;align-items:center;width:44px;height:44px;display:inline-flex}.inventory-modal__close{color:#475569;cursor:pointer;background:0 0;border:0;border-radius:999px;justify-content:center;align-items:center;width:36px;height:36px;transition:background .18s,color .18s,transform .18s;display:inline-flex}.inventory-modal__close:hover{color:#0f172a;background:#eef4fb}.inventory-modal__close:focus-visible{outline-offset:2px;outline:2px solid #bfdbfe}.inventory-modal__close:active{transform:scale(.96)}.inventory-modal__tabs{border-bottom:1px solid #e2e8f0;flex-wrap:wrap;gap:8px;margin:22px 0 18px}.inventory-modal__tabs button{color:#64748b;cursor:pointer;background:0 0;border:0;border-bottom:2px solid #0000;padding:0 4px 12px;font-weight:900}.inventory-modal__tabs button.is-active{color:#2563eb;border-color:#2563eb}.inventory-modal__table-wrap{border:1px solid #e2e8f0;border-radius:10px;overflow:auto}.inventory-modal__table{border-collapse:collapse;width:100%;font-size:14px}.inventory-modal__table th,.inventory-modal__table td{text-align:left;border-bottom:1px solid #e2e8f0;padding:12px 14px}.inventory-modal__table th{color:#475569;text-transform:uppercase;background:#f8fafc;font-size:12px}.inventory-modal__table--overview th{width:180px}.inventory-modal__table--overview td{color:#0f172a;text-align:left;overflow-wrap:anywhere}.inventory-overview-mobile,.inventory-ports-mobile{display:none}.inventory-modal__table--changes td{vertical-align:top;overflow-wrap:anywhere}.inventory-modal__table--links td{vertical-align:middle}.inventory-modal__table--links code{color:#0f172a;background:#eef4fb;border-radius:7px;width:max-content;padding:4px 7px}.inventory-link-direction{color:#475569;white-space:nowrap;background:#eef4fb;border-radius:7px;align-items:center;min-height:24px;padding:0 9px;font-size:12px;font-weight:800;line-height:1;display:inline-flex}.inventory-link-direction.is-incoming{color:#0369a1;background:#e0f2fe}.inventory-link-direction.is-outgoing{color:#047857;background:#ecfdf5}.inventory-modal__table--changes th:first-child,.inventory-modal__table--changes td:first-child,.inventory-modal__table--changes th:nth-child(2),.inventory-modal__table--changes td:nth-child(2){width:150px}.inventory-modal__table--changes th:nth-child(5),.inventory-modal__table--changes td:nth-child(5){white-space:nowrap;width:170px}.inventory-overview-panel,.inventory-ports-panel{gap:12px;display:grid}.inventory-panel-actions{justify-content:space-between;align-items:center;gap:12px;display:flex}.inventory-panel-actions span{color:#64748b;font-size:13px;font-weight:400}.inventory-inline-action{color:#3b82f6;vertical-align:middle;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:7px;justify-content:center;align-items:center;width:26px;height:26px;padding:0;transition:background .18s,border-color .18s,color .18s,transform .18s;display:inline-flex}.inventory-inline-action svg{width:15px;height:15px}.inventory-inline-action span{clip:rect(0, 0, 0, 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.inventory-inline-action:hover{color:#1d4ed8;background:#eff6ff;border-color:#bfdbfe}.inventory-inline-action:focus-visible{outline-offset:2px;outline:2px solid #bfdbfe}.inventory-inline-action.is-spinning svg{animation:.8s linear infinite inventory-refresh-spin}.inventory-inline-action:disabled{color:#60a5fa;cursor:default;opacity:.8}@keyframes inventory-refresh-spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.inventory-inline-action,.inventory-inline-action.is-spinning svg{transition:none;animation:none}}.inventory-vlan-list{flex-wrap:wrap;align-items:center;gap:5px;display:inline-flex}.inventory-vlan-badge,.inventory-vlan-more{color:#0f172a;white-space:nowrap;background:#eef4fb;border-radius:6px;align-items:center;gap:4px;min-height:22px;padding:0 7px;font-size:12px;font-weight:700;line-height:1;display:inline-flex}.inventory-vlan-badge svg{stroke-width:2.2px;flex:0 0 12px;width:12px;height:12px}.inventory-vlan-badge span{line-height:1}.inventory-vlan-badge.is-cameras{color:#075985;background:#e0f2fe}.inventory-vlan-badge.is-switches{color:#047857;background:#ecfdf5}.inventory-vlan-badge.is-cash{color:#92400e;background:#fef3c7}.inventory-vlan-badge.is-energy{color:#b91c1c;background:#fee2e2}.inventory-vlan-badge.is-remote{color:#fff;background:#dc2626}.inventory-vlan-badge.is-cgb{color:#6d28d9;background:#ede9fe}.inventory-vlan-badge.is-wifi{color:#166534;background:#dcfce7}.inventory-vlan-badge.is-elevators{color:#3730a3;background:#e0e7ff}.inventory-vlan-badge.is-qinq{color:#0f766e;background:#ccfbf1}.inventory-vlan-badge.is-pppoe{color:#be185d;background:#fce7f3}.inventory-vlan-more{color:#2563eb;cursor:default;position:relative}.inventory-vlan-tooltip{z-index:80;background:#fff;border:1px solid #dbeafe;border-radius:8px;flex-wrap:wrap;gap:5px;width:max-content;max-width:min(420px,72vw);padding:10px;display:none;position:absolute;top:calc(100% + 8px);left:0;box-shadow:0 18px 42px #0f172a2e}.inventory-modal__table tbody tr:nth-last-child(-n+3) .inventory-vlan-tooltip{top:auto;bottom:calc(100% + 8px)}.inventory-vlan-more:hover .inventory-vlan-tooltip,.inventory-vlan-more:focus-within .inventory-vlan-tooltip{display:flex}.inventory-modal__links{flex-direction:column;align-items:stretch;gap:10px}.inventory-link-card{background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;gap:5px;padding:14px;display:grid}.inventory-link-card span{color:#64748b;text-transform:uppercase;font-size:12px;font-weight:900}.inventory-link-card strong{color:#0f172a}.inventory-link-card code,.inventory-modal__table--overview code{color:#0f172a;width:max-content;font-family:var(--font-mono);background:#eef4fb;border-radius:7px;padding:4px 7px;font-size:13px;font-weight:500}.inventory-chip-list,.inventory-copy-value{flex-wrap:wrap;align-items:center;gap:7px;display:inline-flex}.inventory-chip{color:#0f172a;white-space:nowrap;background:#eef4fb;border-radius:7px;align-items:center;min-height:24px;padding:0 9px;font-size:13px;font-weight:700;line-height:1;display:inline-flex}.inventory-copy-button{color:#2563eb;cursor:pointer;background:#fff;border:1px solid #dbeafe;border-radius:7px;justify-content:center;align-items:center;width:28px;height:28px;transition:background .18s,border-color .18s,color .18s;display:inline-flex}.inventory-copy-button svg{width:15px;height:15px}.inventory-copy-button:hover,.inventory-copy-button.is-copied{color:#1d4ed8;background:#eff6ff;border-color:#2563eb}.inventory-status-badge{white-space:nowrap;border-radius:7px;align-items:center;min-height:24px;padding:0 9px;font-size:13px;font-weight:700;line-height:1;display:inline-flex}.inventory-status-badge.is-available{color:#16a34a;background:#dcfce7}.inventory-status-badge.is-unavailable{color:#dc2626;background:#fee2e2}.inventory-status-badge.is-unknown{color:#64748b;background:#e2e8f0}.app-shell{background:radial-gradient(circle at 1px 1px,#dde5f09e 1.7px,#0000 1.8px) 0 0/26px 26px,linear-gradient(135deg,#ffffffd1,#eff7ffbd),#f8fbff;width:100vw;height:100vh;overflow:hidden}.topbar{z-index:20;color:#0b1735;height:74px;box-shadow:none;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#ffffffe0;border-bottom:1px solid #cbd5e1db;justify-content:space-between;align-items:center;padding:0 26px;display:flex;position:absolute;top:0;left:0;right:0}.brand{align-items:center;gap:24px;display:flex}.brand__logo{color:#1d6df2;font:inherit;letter-spacing:0;cursor:pointer;background:0 0;border:0;padding:0;font-size:22px;font-weight:700}.brand__logo:after{content:"";vertical-align:middle;background:#dbe3ef;width:1px;height:28px;margin-left:22px;display:inline-block}.topbar h1{letter-spacing:0;margin:0;font-size:14px;font-weight:600;line-height:1}.auth-shell{place-items:center;padding:24px;display:grid}.auth-panel{box-sizing:border-box;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#fffffff0;border:1px solid #dbe3ef;border-radius:10px;gap:18px;width:min(420px,100%);max-width:calc(100vw - 28px);padding:24px;display:grid;box-shadow:0 18px 48px #0f172a1f}.brand--auth{justify-content:space-between}.auth-muted{color:#64748b;margin:0;font-size:14px}.auth-form{gap:12px;display:grid}.auth-form label{color:#475569;gap:7px;font-size:12px;font-weight:700;display:grid}.auth-form input,.auth-form select{color:#0f172a;width:100%;height:38px;font:inherit;background:#fff;border:1px solid #dbe3ef;border-radius:8px;padding:0 11px}.generated-password{background:#eff6ff;border:1px solid #bfdbfe;border-radius:8px;gap:8px;padding:12px;display:grid}.generated-password span{color:#1e40af;font-size:12px;font-weight:700}.generated-password strong{color:#0f172a;font-family:var(--font-mono);-webkit-user-select:all;user-select:all;background:#fff;border-radius:6px;padding:9px 10px;font-size:14px}.generated-password button{color:#2563eb;width:fit-content;font:inherit;cursor:pointer;background:0 0;border:0;padding:0;font-weight:700}.summary{align-items:center;gap:18px;min-width:0;display:flex}.search-box{width:420px;height:38px;box-shadow:none;background:#fffffff5;border:1px solid #dbe3ef;border-radius:8px;align-items:center;gap:10px;padding:0 14px;display:flex}.search-box svg{color:#64748b;stroke:currentColor;stroke-width:2px;fill:none;flex:none;width:21px;height:21px}.search-box input{color:#0f172a;background:0 0;border:0;outline:0;width:100%;min-width:0;font-size:14px}.search-box input::placeholder{color:#6b7280}.search-box__clear{color:#64748b;cursor:pointer;background:0 0;border:0;border-radius:4px;flex:none;place-items:center;width:24px;height:24px;margin-right:-5px;padding:0;display:grid}.search-box__clear:hover{color:#0f172a;background:#eef4fb}.search-box__clear svg{width:17px;height:17px}.user-box{background:#fffffff5;border:1px solid #dbe3ef;border-radius:8px;align-items:center;gap:9px;width:180px;height:38px;padding:0 12px;display:flex}.user-box svg{color:#64748b;flex:none;width:18px;height:18px}.user-box input{color:#0f172a;background:0 0;border:0;outline:0;width:100%;min-width:0;font-size:13px}.summary-item{color:#0b1735;white-space:nowrap;align-items:center;gap:6px;font-size:13px;font-weight:600;line-height:1;display:inline-flex}.summary-item b{color:#0b1735;font-size:13px;font-weight:700;line-height:1;display:inline-block}.summary-item svg{stroke-width:2.1px;width:16px;height:16px}.summary-item--devices svg{color:#2585f7}.summary-item--online svg{color:#22c55e}.summary-divider{background:#dbe3ef;width:1px;height:34px}.avatar-menu{position:relative}.avatar-button{color:#fff;cursor:pointer;background:#2563eb;border:1px solid #1f6ff2;border-radius:50%;place-items:center;width:36px;height:36px;font-family:inherit;font-size:14px;font-weight:700;display:grid}.avatar-button--small{flex:0 0 30px;width:30px;height:30px;font-size:12px}.avatar-menu__panel{z-index:60;background:#fff;border:1px solid #dbe3ef;border-radius:8px;width:220px;padding:8px;position:absolute;top:calc(100% + 10px);right:0;box-shadow:0 14px 34px #0f172a29}.avatar-menu__user{border-bottom:1px solid #eef2f7;gap:3px;margin-bottom:6px;padding:8px 9px 10px;display:grid}.avatar-menu__user strong{color:#0f172a;font-size:13px}.avatar-menu__user span{color:#64748b;font-size:12px}.avatar-menu__panel button{color:#0f172a;width:100%;min-height:34px;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:6px;align-items:center;gap:8px;padding:0 9px;font-size:13px;font-weight:700;display:flex}.avatar-menu__panel button:hover{background:#f1f5f9}.avatar-menu__panel .avatar-menu__logout,.avatar-menu__panel .avatar-menu__logout svg{color:#dc2626}.avatar-menu__panel .avatar-menu__logout:hover{background:#fef2f2}.avatar-menu__panel svg{width:16px;height:16px}.toolbar-button,.refresh-button,.theme-button,.icon-button{color:#0b1735;cursor:pointer;background:0 0;border:1px solid #0000;align-items:center;gap:9px;height:36px;font-size:14px;font-weight:700;display:inline-flex}.toolbar-button svg,.refresh-button svg,.theme-button svg,.icon-button svg{stroke:currentColor;stroke-width:2.1px;fill:none;width:20px;height:20px}.toolbar-button--primary{color:#fff;box-shadow:none;background:linear-gradient(#2f7df6 0%,#1669e8 100%);border-color:#1f6ff2;border-radius:8px;padding:0 18px}.refresh-button,.theme-button,.icon-button{justify-content:center;width:38px;padding:0}.map-screen{height:100dvh;position:absolute;inset:0;overflow:hidden}.map-wrap{box-sizing:border-box;width:100%;height:100%;padding:74px 0 38px;position:relative}.map-edge-port-editor{z-index:20;background:#fffffff5;border:1px solid #bfdbfe;border-radius:8px;gap:8px;padding:8px;display:flex;position:absolute;bottom:24px;left:50%;transform:translate(-50%);box-shadow:0 8px 24px #0f172a24}.map-edge-port-editor input{color:#0f172a;width:128px;height:32px;font:inherit;background:#fff;border:1px solid #bfdbfe;border-radius:5px;padding:0 9px;font-size:13px}.map-edge-port-editor button{color:#31547e;height:32px;font:inherit;cursor:pointer;background:#fff;border:1px solid #cbd8eb;border-radius:5px;padding:0 10px}.dark .map-edge-port-editor button{color:#c9d8f0;background:#172235;border-color:#33445d}.inventory-link-port-input{width:84px;color:inherit;font:inherit;background:0 0;border:1px solid #0000;border-radius:5px;padding:5px 6px}.inventory-link-port-input:hover,.inventory-link-port-input:focus{background:#eff6ff;border-color:#93c5fd;outline:0}.inventory-link-ip-input{width:136px;font:inherit;background:0 0;border:1px solid #0000;border-radius:5px;padding:5px 7px;font-family:ui-monospace,monospace}.inventory-link-ip-input:hover,.inventory-link-ip-input:focus{background:#eff6ff;border-color:#93c5fd;outline:0}.inventory-link-actions button{width:24px;height:24px}.inventory-link-actions{white-space:nowrap}.inventory-link-actions button{color:#475569;cursor:pointer;background:0 0;border:0;border-radius:5px;width:28px;height:28px;padding:0}.inventory-link-actions button:hover{color:#2563eb;background:#eff6ff}.inventory-link-actions svg{width:16px;height:16px}.inventory-link-dialog{z-index:80;background:#0f172a59;place-items:center;display:grid;position:fixed;inset:0}.inventory-link-dialog>div{background:#fff;border-radius:8px;width:min(360px,100vw - 32px);padding:20px;box-shadow:0 18px 50px #0f172a42}.inventory-link-dialog h3{margin:0 0 12px}.inventory-link-dialog input{border:1px solid #bfdbfe;border-radius:5px;width:100%;height:36px;padding:0 9px}.inventory-link-dialog footer{justify-content:flex-end;gap:8px;margin-top:16px;display:flex}.inventory-link-dialog button{background:#fff;border:1px solid #cbd5e1;border-radius:5px;height:34px;padding:0 12px}.inventory-link-dialog footer button:last-child{color:#fff;background:#2563eb;border-color:#2563eb}.map-removal-dialog{z-index:120;background:hsl(var(--foreground) / .28);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);place-items:center;padding:20px;display:grid;position:fixed;inset:0}.map-removal-dialog__panel{border:1px solid hsl(var(--border));background:hsl(var(--card));width:min(410px,100%);color:hsl(var(--card-foreground));box-shadow:0 22px 64px hsl(var(--foreground) / .24);border-radius:8px;padding:20px}.map-removal-dialog__panel header{justify-content:space-between;align-items:center;display:flex}.map-removal-dialog__icon{color:#dc2626;background:#fef2f2;border-radius:7px;place-items:center;width:36px;height:36px;display:grid}.map-removal-dialog__icon svg{width:18px;height:18px}.map-removal-dialog__close{width:30px;height:30px;color:hsl(var(--muted-foreground));cursor:pointer;background:0 0;border:0;border-radius:5px;place-items:center;padding:0;display:grid}.map-removal-dialog__close:hover{color:hsl(var(--foreground));background:hsl(var(--muted))}.map-removal-dialog__close svg{width:18px;height:18px}.map-removal-dialog h2{margin:16px 0 7px;font-size:18px;line-height:1.3}.map-removal-dialog p{color:hsl(var(--muted-foreground));margin:0;font-size:14px;line-height:1.5}.map-removal-dialog p strong{color:hsl(var(--foreground))}.map-removal-dialog__summary{border:1px solid hsl(var(--border));background:hsl(var(--muted) / .5);border-radius:6px;justify-content:space-between;align-items:center;margin-top:16px;padding:11px 12px;font-size:13px;display:flex}.map-removal-dialog__summary span{color:hsl(var(--muted-foreground))}.map-removal-dialog__summary strong{font-size:16px}.map-removal-dialog__hint{margin-top:10px!important}.map-removal-dialog__note{border-left:2px solid hsl(var(--primary));padding-left:10px;margin-top:14px!important}.map-removal-dialog footer{justify-content:flex-end;gap:8px;margin-top:20px;display:flex}.map-removal-dialog footer button{border:1px solid hsl(var(--border));min-height:34px;color:hsl(var(--foreground));font:inherit;cursor:pointer;background:0 0;border-radius:5px;justify-content:center;align-items:center;gap:6px;padding:0 12px;font-size:13px;font-weight:650;display:inline-flex}.map-removal-dialog footer button:hover{border-color:hsl(var(--primary));background:hsl(var(--muted))}.map-removal-dialog footer .map-removal-dialog__confirm{color:#fff;background:#dc2626;border-color:#dc2626}.map-removal-dialog footer .map-removal-dialog__confirm:hover{background:#b91c1c;border-color:#b91c1c}.map-removal-dialog__confirm svg{width:15px;height:15px}.dark .map-removal-dialog__icon{color:#fca5a5;background:#7f1d1d52}@media (width<=560px){.map-removal-dialog{align-items:end;padding:10px}.map-removal-dialog__panel{padding:18px}.map-removal-dialog footer button{flex:1}}.pixi-map{touch-action:none;width:100%;height:100%;position:relative}.pixi-map__viewport{width:100%;height:100%}.map-cut-hint{z-index:17;color:#1e3a5f;pointer-events:none;background:#fffffff5;border:1px solid #bfdbfe;border-radius:8px;align-items:center;gap:12px;max-width:calc(100% - 48px);padding:10px 14px;font:600 13px/1.35 Segoe UI,Inter,Arial,sans-serif;display:flex;position:absolute;bottom:24px;left:50%;transform:translate(-50%);box-shadow:0 8px 22px #0f172a24}.map-cut-hint span{color:#64748b;white-space:nowrap;border-left:1px solid #dbeafe;padding-left:12px;font-weight:500}.dark .map-cut-hint{color:#dbeafe;background:#172235f5;border-color:#365477}.dark .map-cut-hint span{color:#94a3b8;border-color:#365477}.map-port-editor{z-index:18;color:#0f172a;text-align:center;background:#fff;border:1px solid #2563eb;border-radius:5px;width:62px;height:28px;font:700 12px/1 Segoe UI,Inter,Arial,sans-serif;position:absolute;transform:translate(-50%,-50%);box-shadow:0 6px 18px #0f172a33}.dark .map-port-editor{color:hsl(var(--foreground));background:hsl(var(--card));border-color:#60a5fa}.map-route-menu{z-index:30;background:#fff;border:1px solid #cbd8eb;border-radius:6px;min-width:166px;padding:5px;display:grid;position:absolute;transform:translate(8px,8px);box-shadow:0 12px 28px #0f172a33}.map-route-menu button{color:#1e3a5f;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:4px;height:31px;padding:0 9px;font:600 13px/1 Segoe UI,Inter,Arial,sans-serif}.map-route-menu button:hover{color:#2563eb;background:#eff6ff}.dark .map-route-menu{background:#172235;border-color:#33445d}.dark .map-route-menu button{color:#dbeafe}.dark .map-route-menu button:hover{color:#93c5fd;background:#1e3a5f}.pixi-map__canvas{cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none;width:100%;height:100%;display:block}.port-label{z-index:12;pointer-events:all;color:#0b1735;text-align:center;background:#fffffff5;border:1px solid #e2e8f0e6;border-radius:6px;justify-content:center;align-items:center;min-width:26px;height:20px;padding:0 6px;font-size:12.5px;font-weight:700;line-height:1.16;display:inline-flex;position:absolute;box-shadow:0 3px 9px #0f172a14}.port-label strong{color:#0f172a;font-size:12.5px;font-weight:700;line-height:1.16}.port-label--outgoing{border-color:#fb923c6b}.port-label--incoming{border-color:#22c55e6b}.port-label--missing{color:#92400e;background:#fffbeb;border-color:#fde68a;min-width:104px;height:24px;font-size:11px}.view-tabs{z-index:16;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#ffffffc2;border:1px solid #dbe3efe6;border-radius:10px;gap:16px;padding:8px;display:flex;position:absolute;top:110px;left:32px;box-shadow:0 4px 14px #0f172a0f}.view-tabs button{color:#0b1735;cursor:pointer;background:#ffffffe6;border:1px solid #dbe3ef;border-radius:7px;height:36px;padding:0 18px;font-size:13px;font-weight:700}.view-tabs button.is-active{color:#1264e6;background:#eff6ff;border-color:#bfd7ff}.mobile-bottom-nav{display:none}.map-segment-tabs{z-index:18;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#f8fbfff0;border-top:1px solid #cbd5e1db;align-items:stretch;height:38px;display:flex;position:absolute;bottom:0;left:0;right:0;overflow:auto hidden}.map-segment-tabs button{color:#475569;white-space:nowrap;cursor:pointer;background:0 0;border:0;border-right:1px solid #cbd5e1db;min-width:116px;max-width:220px;padding:0 16px;font-size:13px;font-weight:500}.map-segment-tabs button:hover{color:#0f172a;background:#eff6ffd1}.map-segment-tabs button.is-active{color:#1264e6;background:#fff}.chain-mode-banner{z-index:18;color:#1d4ed8;cursor:pointer;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#eff6ffe6;border:1px solid #bfdbfeeb;border-radius:8px;align-items:center;gap:8px;min-height:34px;padding:7px 12px;font-size:13px;font-weight:600;display:inline-flex;position:absolute;top:170px;left:50%;transform:translate(-50%);box-shadow:0 5px 16px #0f172a12}.chain-mode-banner svg{width:17px;height:17px}.chain-mode-banner:hover{background:#eff6ff;border-color:#93c5fd}.map-segment-tabs__add{justify-content:center;align-items:center;width:42px;display:inline-flex;min-width:42px!important;padding:0!important}.map-segment-tabs__add svg{width:17px;height:17px}.status-legend{z-index:16;box-sizing:border-box;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#ffffffd1;border:1px solid #dbe3efe6;border-radius:10px;width:214px;padding:18px 20px;position:absolute;bottom:30px;left:26px;box-shadow:0 5px 16px #0f172a12}.status-legend--collapsed{width:214px;min-height:42px;padding:9px 14px}.status-legend__heading{justify-content:center;display:flex}.status-legend__toggle{color:#64748b;cursor:pointer;background:0 0;border:0;width:100%;min-height:22px;padding:0}.status-legend h3{color:#0b1735;margin:0 0 14px;font-size:13px}.status-legend p{color:#334155;align-items:center;gap:10px;margin:0 0 12px;font-size:13px;font-weight:400;display:flex}.legend-dot--total{background:#3b82f6}.status-legend p:last-child{margin-bottom:0}.status-legend__divider{background:#dbe3ef;width:100%;height:1px;margin:14px 0 12px;display:block}.status-legend__filter{color:#334155;cursor:pointer;align-items:center;gap:9px;font-size:13px;font-weight:400;display:flex}.status-legend__filter input{accent-color:#ef4444;cursor:pointer;width:15px;height:15px;margin:0}.status-legend__filter span{line-height:1.3}.topology-view{z-index:12;box-sizing:border-box;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#ffffffdb;border:1px solid #dbe3efe6;border-radius:10px;padding:24px 30px;position:absolute;inset:96px 24px 24px;overflow:auto;box-shadow:0 8px 24px #0f172a14}.topology-view--inventory{box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;background:0 0;border:0;padding:0;inset:146px 16px 16px;overflow:hidden}.topology-view__head{border-bottom:1px solid #e2e8f0;justify-content:space-between;align-items:flex-start;gap:18px;margin-bottom:22px;padding-bottom:18px;display:flex}.topology-view__head h2{color:#0b1735;margin:0 0 6px;font-size:22px;font-weight:600}.topology-view__head p{color:#64748b;margin:0;font-size:13px}.topology-view__head>span{color:#1d4ed8;background:#eff6ff;border-radius:999px;flex:none;padding:6px 10px;font-size:12px;font-weight:500}.list-search-box{background:#fff;border:1px solid #dbe3ef;border-radius:8px;align-items:center;gap:10px;width:min(520px,42vw);height:38px;margin-left:auto;padding:0 12px;display:flex}.list-search-box svg{color:#64748b;flex:none;width:18px;height:18px}.list-search-box input{color:#0f172a;width:100%;min-width:0;font:inherit;background:0 0;border:0;outline:0}.list-search-box input::placeholder{color:#94a3b8}.list-search-box:focus-within{border-color:#93c5fd;box-shadow:0 0 0 3px #3b82f61f}.list-headline{flex-wrap:wrap;align-items:center;gap:18px;min-width:0;display:flex}.list-headline h2{flex:none;margin-bottom:0}.list-summary{color:#334155;flex-wrap:wrap;align-items:center;gap:16px;margin-top:0;font-size:14px;font-weight:500;display:flex}.list-summary span{align-items:center;gap:8px;display:inline-flex}.list-summary strong{color:#0b1735;font-weight:700}.topology-tree,.topology-children{margin:0;padding:0;list-style:none}.topology-tree{max-width:100%;font-size:14px;display:block}.topology-node{position:relative}.topology-children{border-left:1px solid #9aa8bc;margin-left:13px;padding-left:26px;position:relative}.topology-children>.topology-node:before{content:"";background:#9aa8bc;width:18px;height:1px;position:absolute;top:16px;left:-26px}.topology-children>.topology-node:last-child:after{content:"";background:#ffffffdb;width:3px;position:absolute;top:17px;bottom:0;left:-27px}.topology-row{color:#0b1735;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:0;align-items:center;gap:8px;width:100%;min-height:24px;padding:4px 0;display:flex}.topology-row:hover{background:0 0}.topology-row:hover .topology-main strong{color:#1d4ed8}.topology-status{background:#94a3b8;border-radius:999px;flex:none;width:7px;height:7px}.topology-status--online{background:#22c55e}.topology-status--offline{background:#ef4444}.topology-status--unknown{background:#94a3b8}.topology-main{align-items:baseline;gap:6px;min-width:0;display:inline-flex}.topology-main strong{color:#0b1735;text-overflow:ellipsis;white-space:nowrap;font-size:14px;font-weight:500;overflow:hidden}.topology-ip{color:#64748b;white-space:nowrap;font-size:13px}.topology-port,.topology-dash{color:#64748b;flex:none;font-size:13px;font-weight:500}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;padding:0;position:absolute;overflow:hidden}.topology-warning{margin:6px 0 0 calc(var(--level) * 26px);color:#b45309;font-size:12px}.device-list-wrap{width:100%;overflow:auto}.device-list-table{border-collapse:collapse;color:#0b1735;width:100%;min-width:1040px;font-size:13px}.device-list-table th,.device-list-table td{text-align:left;vertical-align:middle;border-bottom:1px solid #e7edf5;padding:11px 10px}.device-list-table th{color:#64748b;font-size:12px;font-weight:500}.device-list-table tbody tr{cursor:default}.device-list-table tbody tr:hover{background:#eff6ffa6}.device-list-table td strong{font-weight:600}.device-table-link{color:#0b1735;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;padding:0;font-weight:600}.device-table-link--mono{color:#334155;font-weight:500}.map-list-mobile-ip,.map-list-mobile-open,.map-list-title .device-panel-icon{display:none}.device-table-link:hover,.device-table-link:focus-visible{color:#2563eb;outline:none;text-decoration:underline}.device-list-status{color:#64748b;white-space:nowrap;background:#e2e8f0;border-radius:7px;align-items:center;min-height:24px;padding:0 9px;font-size:13px;font-weight:700;line-height:1;display:inline-flex}.device-list-status--online{color:#16a34a;background:#dcfce7}.device-list-status--offline{color:#dc2626;background:#fee2e2}.device-list-status--unknown{color:#64748b;background:#e2e8f0}.device-list-qinq{color:#0f172a;min-height:28px;font-family:var(--font-mono);white-space:nowrap;cursor:pointer;background:#eef4fb;border:0;border-radius:7px;align-items:center;gap:7px;padding:4px 7px;font-size:13px;font-weight:500;line-height:1;transition:background .18s,color .18s;display:inline-flex}.device-list-qinq svg{color:#2563eb;width:14px;height:14px}.device-list-qinq:hover,.device-list-qinq:focus-visible,.device-list-qinq.is-copied{color:#1d4ed8;background:#eff6ff;outline:0}.monitoring-view{padding-bottom:28px}.monitoring-summary{flex-wrap:wrap;align-items:center;gap:18px;margin:0 0 16px;padding-top:2px;display:flex}.monitoring-summary>span,.monitoring-summary button{color:#334155;background:0 0;border:0;border-radius:0;justify-content:flex-start;align-items:center;gap:6px;min-height:28px;padding:0;display:flex}.monitoring-summary button{cursor:pointer}.monitoring-summary button:hover,.monitoring-summary button.is-active{color:#0b1735}.monitoring-summary span{color:inherit;align-items:center;gap:8px;font-size:14px;font-weight:500;display:inline-flex}.monitoring-summary strong{color:inherit;font-size:14px;font-weight:700}.monitoring-temperatures{color:#334155;flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:16px;margin-left:auto;font-size:14px;font-weight:500;display:flex}.monitoring-temperatures span{align-items:center;gap:7px;display:inline-flex}.monitoring-temperatures svg{color:#be123c;width:17px;height:17px}.monitoring-temperatures strong{color:#0b1735;font-weight:700}.monitoring-temperatures .is-muted,.monitoring-temperatures .is-muted svg,.monitoring-temperatures .is-muted strong{color:#94a3b8}.monitoring-dot{background:#94a3b8;border-radius:999px;flex:0 0 12px;width:12px;height:12px}.monitoring-dot--issues,.monitoring-dot--offline{background:#ef4444}.monitoring-dot--unknown{background:#94a3b8}.monitoring-dot--online{background:#22c55e}.monitoring-dot--sfp{background:#be123c}.monitoring-dot--cisco{background:#7c3aed}.monitoring-dot--all{background:#3b82f6}.monitoring-table-wrap{background:#fff;border:1px solid #e2e8f0;border-radius:8px}.monitoring-table{table-layout:fixed;min-width:1180px}.monitoring-col-check{width:138px}.monitoring-col-ip{width:112px}.monitoring-col-status{width:108px}.monitoring-col-duration{width:104px}.monitoring-col-type{width:96px}.monitoring-col-comment{width:280px}.monitoring-col-action{width:70px}.monitoring-table th,.monitoring-table td{padding-top:8px;padding-bottom:8px}.monitoring-table tbody tr{cursor:default;background:#fff}.monitoring-table tbody tr:hover{background:#fff}.monitoring-table td strong{display:inline}.monitoring-table td span:not(.device-list-status){color:#64748b;margin-top:3px;font-size:12px;display:block}.monitoring-table__action{text-align:right;white-space:nowrap}.monitoring-table__check{color:#334155;white-space:nowrap;font-size:12px}.monitoring-table__comment button{color:#0f172a;text-align:left;cursor:pointer;background:0 0;border:0;align-items:center;gap:8px;width:100%;min-height:34px;padding:0;display:flex}.monitoring-table__comment button>svg{color:#2563eb;flex:none;width:17px;height:17px}.monitoring-table__comment button>span{color:#64748b;text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:12px;line-height:1.25;display:block;overflow:hidden}.monitoring-table__comment strong{color:#0f172a;margin-right:6px;font-weight:700}.monitoring-table__comment em{color:#2563eb;margin-left:6px;font-style:normal;font-weight:700}.monitoring-table__action button{color:#2563eb;font:inherit;cursor:pointer;background:0 0;border:0;padding:0;font-weight:600}.monitoring-table__action button:hover{color:#1d4ed8;text-decoration:underline}.monitoring-row--offline,.monitoring-row--unknown{background:#fff}.monitoring-empty{color:#64748b;height:76px;text-align:center!important}.monitoring-comment-panel{z-index:42}.monitoring-comment-editor,.monitoring-comment-history,.monitoring-history-panel{gap:14px;display:grid}.monitoring-comment-editor label{color:#475569;gap:7px;font-size:12px;font-weight:700;display:grid}.comment-author{color:#64748b;background:#f8fafc;border:1px solid #dbe3ef;border-radius:8px;align-items:center;gap:8px;min-height:40px;padding:0 12px;font-size:12px;display:flex}.comment-author svg{color:#2563eb;width:17px;height:17px}.comment-author strong{color:#0f172a;margin-left:auto;font-size:13px}.monitoring-comment-editor input,.monitoring-comment-editor textarea{color:#0f172a;width:100%;font:inherit;background:#fff;border:1px solid #dbe3ef;border-radius:8px}.monitoring-comment-editor input{height:38px;padding:0 11px}.monitoring-comment-editor textarea{resize:vertical;min-height:112px;padding:10px 11px}.monitoring-photo-picker{cursor:pointer;background:#f8fafc;border:1px solid #dbe3ef;border-radius:8px;align-items:center;width:fit-content;min-height:38px;padding:0 13px;color:#2563eb!important;grid-template-columns:none!important;gap:8px!important;display:inline-flex!important}.monitoring-photo-picker svg{width:17px;height:17px}.monitoring-photo-picker input{display:none}.monitoring-photo-preview,.monitoring-comment-photos{flex-wrap:wrap;gap:8px;display:flex}.monitoring-photo-preview button,.monitoring-comment-photos a{background:#f8fafc;border:1px solid #dbe3ef;border-radius:8px;width:72px;height:72px;position:relative;overflow:hidden}.monitoring-photo-preview img,.monitoring-comment-photos img{object-fit:cover;width:100%;height:100%;display:block}.monitoring-photo-preview span{color:#fff;text-align:center;background:#0f172ab8;padding:3px;font-size:10px;position:absolute;inset:auto 0 0}.monitoring-comment-history h3,.monitoring-history-panel h3{color:#0f172a;margin:4px 0 0;font-size:15px}.monitoring-comment-card,.monitoring-history-card{background:#fff;border:1px solid #e2e8f0;border-radius:8px;padding:12px}.monitoring-comment-card header{justify-content:space-between;gap:12px;margin-bottom:8px;display:flex}.monitoring-comment-card header strong{color:#0f172a;font-size:13px}.monitoring-comment-card header span{color:#64748b;font-size:12px}.monitoring-comment-card p{color:#334155;white-space:pre-wrap;margin:0 0 10px;font-size:13px;line-height:1.45}.monitoring-history-list{gap:10px;display:grid}.monitoring-history-card{gap:8px;display:grid}.monitoring-history-card div,.monitoring-history-card p{justify-content:space-between;align-items:center;gap:10px;margin:0;display:flex}.monitoring-history-card strong{color:#0f172a;font-size:12px}.monitoring-history-card p{color:#64748b;font-size:12px}.monitoring-history-card p span{color:#0f172a;font-weight:700}.users-page{background:#f8fafcf5;padding:22px 28px 28px;position:absolute;inset:74px 0 0;overflow:auto}.map-list-page{inset:96px 24px 24px}@media (width>=761px){.topology-view--inventory,.topology-view.monitoring-view,.map-list-page.inventory-page{background:hsl(var(--card));box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;border:0;border-radius:0;inset:74px 0 0}.topology-view--inventory{padding:0}.topology-view--inventory .inventory-topology,.topology-view--inventory .inventory-topology--main{background:hsl(var(--card));border:0;border-radius:0}}.map-list-page__title,.monitoring-view__head .mobile-view-title{align-items:center;gap:10px;display:inline-flex}.map-list-page__title>svg,.monitoring-view__head .mobile-view-title>svg{flex:0 0 24px;width:24px;height:24px}.map-list-page__title h2,.monitoring-view__head .mobile-view-title h2{color:#0b1735;margin:0;font-size:22px;font-weight:600;line-height:1.15}.users-page-head{justify-content:space-between;align-items:center;gap:16px;min-height:48px;margin-bottom:18px;display:flex}.users-panel-title{justify-content:flex-start;min-width:0}.users-panel-title h2{color:#0b1735;margin:0;font-size:24px;line-height:1.15}.users-page-layout{grid-template-columns:minmax(0,1fr) minmax(360px,420px);align-items:start;gap:18px;display:grid}.users-create-button{color:#fff;cursor:pointer;background:#2563eb;border:1px solid #1f6ff2;border-radius:8px;justify-content:center;align-items:center;gap:8px;min-width:118px;height:38px;padding:0 14px;font-family:inherit;font-size:13px;font-weight:700;line-height:1;display:inline-flex}.users-create-button svg{width:17px;height:17px}.users-table-wrap{background:#fff;border:1px solid #dbe3ef;border-radius:8px;overflow:auto}.users-table{border-collapse:collapse;table-layout:fixed;width:100%;min-width:820px}.users-table th,.users-table td{color:#0f172a;text-align:left;vertical-align:middle;border-bottom:1px solid #e2e8f0;padding:14px 16px;font-size:13px}.users-table th{color:#475569;background:#f8fafc;height:48px;font-weight:700}.users-table tbody tr:last-child td{border-bottom:0}.users-table tbody tr.is-disabled{opacity:.52;background:#f8fafc}.users-table th:first-child,.users-table td:first-child{width:132px}.users-table th:nth-child(3),.users-table td:nth-child(3){width:128px}.users-table th:nth-child(4),.users-table td:nth-child(4){width:176px}.users-table th:nth-child(5),.users-table td:nth-child(5){width:104px}.users-table th:nth-child(6),.users-table td:nth-child(6){text-align:right;width:118px}.users-table-name{align-items:center;gap:10px;min-width:0;display:flex}.users-table-name strong{color:#0f172a;text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:14px;font-weight:700;overflow:hidden}.user-pill{color:#475569;white-space:nowrap;background:#f1f5f9;border-radius:6px;align-items:center;min-height:24px;padding:0 9px;font-size:12px;font-weight:700;line-height:1;display:inline-flex}.user-pill--role-admin{color:#1d4ed8;background:#e8f0ff}.user-pill--role-operator{color:#6d28d9;background:#f3e8ff}.user-pill--role-viewer{color:#475569;background:#eef2f7}.user-pill--department{color:#047481;background:#e6f4f5}.user-pill--active{color:#16a34a;background:#dcfce7}.user-pill--inactive{color:#64748b;background:#e2e8f0}.users-table-actions{white-space:nowrap}.user-edit-button{color:#475569;font:inherit;cursor:pointer;background:0 0;border:0;padding:0;font-size:13px;font-weight:700}.user-edit-button:hover{color:#2563eb}.user-editor-card{background:#fff;border:1px solid #dbe3ef;border-radius:8px;overflow:hidden}.user-editor-card>header{background:#f8fafc;border-bottom:1px solid #e2e8f0;justify-content:space-between;align-items:center;gap:14px;min-height:64px;padding:0 24px;display:flex}.user-editor-close{color:#0f172a;cursor:pointer;background:#f2f6fb;border:0;border-radius:50%;justify-content:center;align-items:center;width:32px;height:32px;display:inline-flex}.user-editor-close:hover{background:#e8eef7}.user-editor-close svg{stroke-width:2.4px;width:18px;height:18px}.user-editor-card .user-modal-form{padding:18px 24px 0}.user-editor-card .user-modal-actions{padding:16px 24px}.user-editor-empty{color:#64748b;text-align:center;align-content:center;place-items:center;gap:10px;min-height:360px;padding:34px 28px;display:grid}.user-editor-empty svg{color:#2563eb;stroke-width:1.8px;width:34px;height:34px}.user-editor-empty h3{color:#0b1735;margin:0;font-size:18px}.user-editor-empty p{max-width:300px;margin:0 0 8px;font-size:13px;line-height:1.45}.user-modal-title h2{color:#0b1735;margin:0;font-size:20px}.user-modal-title{align-items:center;gap:12px;min-width:0;display:flex}.user-modal-title svg{color:#0f172a;stroke-width:2.2px;flex:none;width:20px;height:20px}.user-modal-title h2{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.user-modal-form{gap:12px;padding:18px 30px 0;display:grid}.user-name-row{grid-template-columns:1fr 1fr;gap:10px;display:grid}.user-modal-form label{color:#475569;gap:7px;font-size:12px;font-weight:700;display:grid}.user-modal-form input,.user-modal-form select{color:#0f172a;width:100%;height:38px;font:inherit;background:#fff;border:1px solid #dbe3ef;border-radius:8px;padding:0 11px}.user-password-section{gap:7px;display:grid}.user-password-section>label{color:#475569;font-size:12px;font-weight:700}.user-password-box{color:#0f172a;background:#fff;border:1px solid #dbe3ef;border-radius:8px;align-items:center;gap:10px;min-height:38px;padding:0 11px;display:flex}.user-password-box span{min-width:0;font-family:var(--font-mono);text-overflow:ellipsis;white-space:nowrap;flex:1;font-size:13px;font-weight:700;overflow:hidden}.user-password-box:not(.is-visible) span{color:#64748b;letter-spacing:1px}.user-password-box button,.user-password-generate{color:#2563eb;font:inherit;cursor:pointer;background:0 0;border:0;padding:0;font-size:12px;font-weight:700}.user-password-box button:hover,.user-password-generate:hover{text-decoration:underline}.user-password-generate{width:fit-content}.user-active-toggle{align-items:center;min-height:38px;grid-template-columns:auto 1fr!important}.user-active-toggle input{width:16px;height:16px;padding:0}.user-modal-actions{background:#f8fafc;border-top:1px solid #e2e8f0;justify-content:space-between;align-items:center;gap:16px;margin:22px 0 0;padding:16px 30px;display:flex}.user-modal-actions__left,.user-modal-actions__right{align-items:center;gap:10px;display:flex}.user-modal-actions__right{margin-left:auto}.user-modal-button{min-width:112px;height:38px;font:inherit;cursor:pointer;border:1px solid #dbe3ef;border-radius:8px;justify-content:center;align-items:center;gap:8px;padding:0 14px;font-size:13px;font-weight:700;line-height:1;transition:background .12s,border-color .12s,color .12s,box-shadow .12s;display:inline-flex}.user-modal-button svg{flex:none;width:16px;height:16px}.user-modal-button--ghost{color:#475569;background:#fff}.user-modal-button--ghost:hover{color:#0f172a;background:#f8fafc;border-color:#cbd5e1}.user-modal-button--primary{color:#fff;background:#3b82f6;border-color:#2563eb;box-shadow:0 1px 2px #2563eb1f}.user-modal-button--primary:hover{background:#2563eb;border-color:#1d4ed8}.user-modal-button--danger{color:#dc2626;background:0 0;border-color:#0000;min-width:96px}.user-modal-button--danger:hover{color:#b91c1c;background:#fef2f2;border-color:#fecaca}.legend-dot{border-radius:50%;flex:none;width:11px;height:11px}.legend-dot--online{background:#22c55e}.legend-dot--offline{background:#ef4444}.legend-dot--unknown{background:#a8b0c2}.details{z-index:30;box-sizing:border-box;width:360px;height:calc(100vh - 74px);max-height:calc(100vh - 74px);box-shadow:none;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#ffffffe8;border:0;border-left:1px solid #dbe3ef;border-radius:0;padding:28px;position:absolute;top:74px;right:0;overflow:auto}.details h2{color:#0b1735;margin:0 30px 22px 0;font-size:22px;line-height:1.15}.eyebrow{color:#1264e6;letter-spacing:.14em;text-transform:uppercase;margin:0 0 5px;font-size:11px;font-weight:700}.details__close{color:#475569;cursor:pointer;background:#f2f6fb;border:0;border-radius:50%;justify-content:center;align-items:center;width:30px;height:30px;font-size:0;display:inline-flex;position:absolute;top:14px;right:14px}.details__close svg{stroke-width:2.4px;width:18px;height:18px}.details--device{background:#fffffff5;width:473px;padding:0}.details--device .details__close{z-index:2;color:#0f172a;background:#f1f5f9;width:32px;height:32px;font-size:0;top:16px;right:16px}.device-panel-title{justify-content:space-between;align-items:flex-start;gap:14px;display:flex}.device-panel-title h2{color:#0b1735;margin:0;font-size:22px;font-weight:600;line-height:1.16}.device-panel-title span{color:hsl(var(--muted-foreground));margin-top:6px;font-size:13px;font-weight:400;display:block}.device-panel-actions{flex:none;align-items:center;gap:6px;padding-right:38px;display:inline-flex}.device-panel-actions button{color:#475569;cursor:pointer;background:0 0;border:0;border-radius:8px;justify-content:center;align-items:center;width:32px;height:32px;display:inline-flex}.device-panel-actions button:hover{color:#2563eb;background:#eff6ff}.device-panel-actions svg{width:17px;height:17px}.status-dot-inline{background:#94a3b8;border-radius:50%;flex:none;width:8px;height:8px}.status-dot-inline--online{background:#22c55e}.status-dot-inline--offline{background:#ef4444}.status-dot-inline--unknown{background:#94a3b8}.device-panel-tabs{background:#ffffffd1;border-bottom:1px solid #e2e8f0;grid-template-columns:repeat(6,minmax(0,1fr));display:grid}.device-panel-tabs button{color:#64748b;cursor:pointer;background:0 0;border:0;border-bottom:2px solid #0000;align-content:center;place-items:center;gap:5px;min-width:0;height:68px;font-size:11px;font-weight:600;display:grid}.device-panel-tabs button:focus{outline:none}.device-panel-tabs button:focus-visible{color:#1d6df2;outline-offset:-2px;outline:2px solid #1d6df22e}.device-panel-tabs button svg{stroke-width:2px;width:15px;height:15px}.device-form{gap:12px;margin-bottom:20px;display:grid}.device-form--compact{grid-template-columns:minmax(0,1fr);gap:12px 14px;margin-bottom:14px}.field-span-2{grid-column:1/-1}.details label,.device-form label{color:#475569;margin:0;font-size:12px;font-weight:700;display:block}.device-form input,.device-form select{color:#0f172a;background:#fff;border:1px solid #cbd5e1;border-radius:8px;width:100%;height:36px;margin-top:5px;padding:7px 9px}.details--device .device-form input,.details--device .device-form select{background:#fbfdff;border-color:#dbe3ef;border-radius:7px;height:34px;margin-top:6px;font-size:12px}.details--device .device-form textarea{background:#fbfdff;border-color:#dbe3ef;border-radius:7px;min-height:118px;margin-top:6px;font-size:12px}.field-with-action{position:relative}.field-with-action input{padding-right:38px}.field-with-action button{color:#94a3b8;cursor:pointer;background:0 0;border:0;justify-content:center;align-items:center;width:23px;height:23px;display:inline-flex;position:absolute;bottom:6px;right:7px}.field-with-action button svg{width:15px;height:15px}.device-form textarea{box-sizing:border-box;resize:vertical;color:#0f172a;width:100%;min-height:118px;font:inherit;background:#fff;border:1px solid #cbd5e1;border-radius:7px;margin-top:7px;padding:10px}.details dl{grid-template-columns:85px 1fr;gap:10px 12px;margin:0 0 22px;font-size:13px;display:grid}.device-status{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;padding:12px}.device-status--panel{background:#fbfdff;border-color:#dbe3ef;padding:12px 14px;grid-template-columns:78px 1fr!important;gap:9px 12px!important;margin:0 0 18px!important}.device-status--panel dd{align-items:center;gap:8px;font-weight:700;display:inline-flex}.form-note{color:#1e3a8a;background:#eff6ff;border:1px solid #dbeafe;border-radius:8px;margin:0;padding:10px 11px;font-size:12px;font-weight:400;line-height:1.35}.form-note--warning{color:#92400e;background:#fffbeb;border-color:#fde68a;margin-bottom:14px}.qinq-section{background:#f8fbff;border:1px solid #dbeafe;border-radius:8px;gap:9px;padding:12px;display:grid}.qinq-section h3{color:#1d4ed8;margin:0;font-size:12px;font-weight:800}.device-form--compact .qinq-section{background:0 0;border:0;grid-column:1/-1;padding:0}.device-form--compact .qinq-section h3{display:none}.device-map-preview{border-top:1px solid #e2e8f0;margin:0 0 18px;padding:16px 0 0}.device-map-preview__head{justify-content:space-between;align-items:flex-start;gap:14px;margin-bottom:10px;display:flex}.device-map-preview__head h3{color:#0f172a;margin:0 0 4px;font-size:15px;font-weight:500}.device-map-preview__head p{color:#64748b;margin:0;font-size:13px;line-height:1.35}.device-map-preview__link{color:#2563eb;background:#eff6ff;border:1px solid #bfdbfe;border-radius:8px;flex-shrink:0;align-items:center;gap:7px;min-height:32px;padding:7px 10px;font-size:13px;font-weight:500;text-decoration:none;display:inline-flex}.device-map-preview__link:hover{background:#dbeafe;border-color:#93c5fd}.device-map-preview__link svg{width:15px;height:15px}.device-map-preview iframe,.device-map-preview__placeholder{background:#f8fafc;border:1px solid #dbe3ef;border-radius:8px;width:100%;height:210px}.device-map-preview iframe{display:block}.device-map-preview__placeholder{color:#94a3b8;justify-content:center;align-items:center;display:flex}.device-map-preview__placeholder svg{stroke-width:1.6px;width:34px;height:34px}.upstream-picker{gap:6px;margin-top:-4px;display:grid}.upstream-picker button,.upstream-picker__selected,.upstream-picker__empty{color:#0b1735;text-align:left;background:#fff;border:1px solid #dbe3ef;border-radius:8px;width:100%;min-height:34px;padding:8px 10px;font-size:12px}.upstream-picker button{cursor:pointer;gap:2px;display:grid}.upstream-picker button:hover{background:#eff6ff;border-color:#93c5fd}.upstream-picker button strong{font-weight:700}.upstream-picker button span,.upstream-picker__empty{color:#64748b}.primary-panel-button{border:1px solid hsl(var(--primary));border-radius:var(--radius);width:100%;height:40px;color:hsl(var(--primary-foreground));background:hsl(var(--primary));cursor:pointer;font-size:13px;font-weight:500}.primary-panel-button:disabled{cursor:not-allowed;opacity:.55}.secondary-panel-button{border:1px solid hsl(var(--border));width:100%;height:38px;color:hsl(var(--foreground));background:hsl(var(--muted) / .52);cursor:pointer;border-radius:8px;justify-content:center;align-items:center;gap:8px;font-size:13px;font-weight:500;display:inline-flex}.secondary-panel-button:hover{border-color:hsl(var(--primary) / .34);background:hsl(var(--muted))}.secondary-panel-button svg{width:16px;height:16px}.panel-action-button{border:1px solid hsl(var(--border));min-width:112px;height:38px;color:hsl(var(--foreground));background:hsl(var(--muted) / .52);white-space:nowrap;cursor:pointer;border-radius:8px;justify-content:center;align-items:center;gap:8px;padding:0 14px;font-size:13px;font-weight:500;line-height:1;display:inline-flex}.panel-action-button:hover{border-color:hsl(var(--primary) / .34);background:hsl(var(--muted))}.link-summary{background:#f8fafc;border:1px solid #dbe2ea;border-radius:10px;margin:0 0 22px;padding:14px}.link-summary h3{color:#0f172a;margin:0 0 10px;font-size:14px}.panel-section-head{justify-content:space-between;align-items:center;gap:12px;margin-bottom:10px;display:flex}.panel-section-head h3{margin:0}.panel-section-head span{color:#94a3b8;font-size:11px;font-weight:700}.link-summary button{color:#1d4ed8;text-align:left;cursor:pointer;background:#eff6ff;border:1px solid #bfdbfe;border-radius:7px;gap:4px;width:100%;margin:0 0 8px;padding:9px 10px;font-size:12px;font-weight:700;display:grid}.link-summary--panel{background:#fbfdff;border-color:#dbe3ef;border-radius:8px;margin-bottom:16px;padding:12px}.link-summary--panel button{color:#0b1735;background:#fff;border-color:#e2e8f0;grid-template-columns:minmax(0,1fr) 18px;gap:2px 8px;margin-bottom:7px;padding:9px 8px 9px 10px;position:relative}.link-summary--panel button:hover{background:#f8fbff;border-color:#bfdbfe}.link-summary--panel button strong,.link-summary--panel button span{text-overflow:ellipsis;white-space:nowrap;grid-column:1;min-width:0;overflow:hidden}.link-summary--panel button svg{color:#64748b;grid-area:1/2/span 2;place-self:center end;width:16px;height:16px}.link-summary button strong,.link-summary button span{display:block}.link-summary button span{color:#334155;font-size:11px}.link-summary__count{color:#475569;margin:8px 0 0;font-size:12px;font-weight:700}.connections-panel{gap:28px;display:grid}.connections-panel h3,.connection-section h3{color:#0b1735;margin:0;font-size:15px;font-weight:500;line-height:1.25}.connections-panel__section-head{justify-content:space-between;align-items:center;gap:10px;margin:0 0 12px;display:flex}.connections-panel__section-head button{color:#1d4ed8;cursor:pointer;background:#eff6ff;border:1px solid #bfdbfe;border-radius:8px;justify-content:center;align-items:center;gap:5px;min-width:104px;height:30px;padding:0 12px;font-size:12px;font-weight:700;display:inline-flex}.connections-panel__section-head svg{width:14px;height:14px}.connection-grid{grid-template-columns:minmax(0,1fr) 78px 54px;align-items:center;gap:10px;display:grid}.connection-grid--head{color:#64748b;border-bottom:1px solid #e2e8f0;margin-top:12px;padding:0 0 8px;font-size:12px;font-weight:500}.connection-grid--row,.connection-grid--empty{appearance:none;color:#0b1735;background:0 0;border:0;border-bottom:1px solid #e7edf5;border-radius:0;min-height:44px;padding:10px 0;font-size:13px}.connection-grid--row{cursor:pointer}.connection-grid--row:hover{color:#1d4ed8;background:0 0}.connection-grid--row{text-align:left;cursor:pointer;width:100%}.connection-grid--row:hover{background:#f8fbff;border-color:#bfdbfe}.connection-grid span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.connection-grid--empty{color:#94a3b8}.snmp-panel{background:#f8fafc;border:1px solid #dbe2ea;border-radius:10px;margin:0 0 22px;padding:14px}.snmp-panel--flat{background:0 0;border:0;border-radius:0;margin:0;padding:0}.tab-placeholder{background:#fbfdff;border:1px solid #dbe3ef;border-radius:8px;margin-bottom:16px;padding:14px}.tab-placeholder h3{color:#0b1735;margin:0 0 8px;font-size:14px}.tab-placeholder p{color:#64748b;margin:0;font-size:12px;line-height:1.4}.snmp-panel__header{border-bottom:1px solid #e7edf5;justify-content:space-between;align-items:center;gap:12px;margin-bottom:18px;padding-bottom:14px;display:flex}.snmp-panel h3{color:#0f172a;margin:0;font-size:16px;font-weight:500}.snmp-panel__subtitle{color:#64748b;margin:4px 0 0;font-size:12px;font-weight:400}.snmp-panel button{color:#1d4ed8;cursor:pointer;background:#eff6ff;border:1px solid #bfdbfe;border-radius:7px;padding:5px 10px;font-size:12px;font-weight:500}.snmp-panel button:disabled{cursor:wait;opacity:.65}.snmp-panel__error{color:#dc2626;margin:0;font-size:12px;font-weight:400}.snmp-empty{color:#64748b;margin:0;font-size:12px;line-height:1.4}.snmp-section{border-bottom:1px solid #e7edf5;margin-top:18px;padding-bottom:18px}.snmp-section:last-child{border-bottom:0;padding-bottom:0}.snmp-section h4,.snmp-table-head h4{color:#0b1735;margin:0 0 12px;font-size:14px;font-weight:500}.snmp-table-head{justify-content:space-between;align-items:center;gap:12px;display:flex}.snmp-table-head span{color:#64748b;font-size:12px;font-weight:400}.snmp-info-table,.snmp-ports-table{border-collapse:collapse;color:#0b1735;width:100%;font-size:12px}.snmp-info-table th,.snmp-info-table td,.snmp-ports-table th,.snmp-ports-table td{text-align:left;vertical-align:middle;border-bottom:1px solid #eef2f7;padding:9px 0}.snmp-info-table tr:last-child th,.snmp-info-table tr:last-child td,.snmp-ports-table tbody tr:last-child td{border-bottom:0}.snmp-info-table th,.snmp-ports-table th{color:#64748b;font-size:11px;font-weight:400}.snmp-info-table th{width:156px}.snmp-info-table td,.snmp-ports-table td{overflow-wrap:anywhere}.snmp-ports-wrap{max-width:100%;overflow:visible}.snmp-ports-table{table-layout:fixed;width:100%;min-width:0}.ports-col-port{width:58px}.ports-col-description{width:24%}.ports-col-vlan{width:78px}.ports-col-tagged{width:82px}.ports-col-admin{width:60px}.ports-col-link{width:54px}.ports-col-speed{width:66px}.ports-col-duplex{width:52px}.ports-col-errors{width:54px}.snmp-ports-table td strong{font-weight:400}.snmp-ports-table th,.snmp-ports-table td{padding-right:8px}.snmp-ports-table th:last-child,.snmp-ports-table td:last-child{padding-right:0}.port-name-cell{gap:2px;display:grid}.port-name-cell strong{color:hsl(var(--foreground));font-weight:500}.port-name-cell small{color:hsl(var(--muted-foreground));font-size:11px;line-height:1.2}.port-errors{color:hsl(var(--muted-foreground))}.port-errors.is-bad{color:#b91c1c}.tagged-vlan-preview{align-items:center;gap:4px;min-width:0;display:inline-flex}.tagged-vlan-preview button{color:hsl(var(--primary));font:inherit;cursor:pointer;background:0 0;border:0;padding:0}.tagged-vlan-preview button:hover{text-decoration:underline}.vlan-modal-backdrop{z-index:60;background:#0f172a47;place-items:center;padding:22px;display:grid;position:fixed;inset:0}.vlan-modal{border:1px solid hsl(var(--border));background:hsl(var(--background));width:min(420px,100%);max-height:min(620px,100vh - 44px);color:hsl(var(--foreground));border-radius:12px;padding:24px;position:relative;overflow:hidden;box-shadow:0 18px 48px #0f172a2e}.vlan-modal header{margin-bottom:16px;padding-right:42px}.vlan-modal h2{margin:0 0 4px;font-size:20px;font-weight:600}.vlan-modal header span{color:hsl(var(--muted-foreground));font-size:13px}.vlan-modal__list{grid-template-columns:repeat(auto-fill,minmax(64px,1fr));gap:8px;max-height:480px;display:grid;overflow:auto}.vlan-modal__list span{border:1px solid hsl(var(--border));background:hsl(var(--muted) / .48);text-align:center;border-radius:8px;padding:7px 10px;font-size:13px}.snmp-status{color:#0f172a;white-space:nowrap;background:#eef4fb;border-radius:6px;align-items:center;min-height:22px;padding:0 7px;font-size:12px;font-weight:700;line-height:1;display:inline-flex}.snmp-status.is-good{color:#15803d;background:#dcfce7}.snmp-status.is-bad{color:#b91c1c;background:#fee2e2}.snmp-status.is-muted{color:#64748b;background:#f1f5f9}.details dt{color:#64748b}.details dd{color:#0f172a;margin:0;font-weight:400}.status-text{text-transform:capitalize}.status-text--online{color:#15803d!important}.status-text--offline{color:#dc2626!important}.status-text--unknown{color:#64748b!important}.details textarea{box-sizing:border-box;resize:vertical;color:#0f172a;width:100%;min-height:90px;font:inherit;background:#fff;border:1px solid #cbd5e1;border-radius:7px;margin-top:7px;padding:10px}.notes-panel{margin-bottom:16px}.notes-panel label{color:#475569;margin-bottom:6px;font-size:12px;font-weight:700;display:block}.details--device .notes-panel textarea{background:#fbfdff;border-color:#dbe3ef;min-height:132px;margin-top:0;font-size:12px}.battery-form textarea{min-height:110px!important}.backup-panel{gap:14px;margin-bottom:18px;display:grid}.backup-panel__summary,.backup-panel__status,.backup-panel__history,.backup-panel__empty{border:1px solid hsl(var(--border));background:hsl(var(--card) / .58);box-shadow:none;border-radius:10px}.backup-panel__summary{grid-template-columns:42px minmax(0,1fr) minmax(178px,210px);align-items:center;gap:16px;min-height:82px;padding:18px 22px;display:grid}.backup-panel__summary-icon,.backup-panel__status-icon{border:1px solid hsl(var(--border));width:34px;height:34px;color:hsl(var(--muted-foreground));background:hsl(var(--muted) / .42);border-radius:8px;flex:none;justify-content:center;align-items:center;display:inline-flex}.backup-panel__summary-icon svg,.backup-panel__status-icon svg{stroke-width:2px;width:18px;height:18px}.backup-panel__summary-main{flex:auto;min-width:0}.backup-panel__summary-main span,.backup-panel__head span,.backup-panel__status-item span{color:hsl(var(--muted-foreground));font-size:12px}.backup-panel__summary-main strong{color:hsl(var(--foreground));white-space:nowrap;margin:2px 0;font-size:15px;font-weight:600;display:block}.backup-panel__summary-main span{white-space:nowrap}.backup-panel__summary .panel-action-button{justify-self:end;width:auto;min-width:0;max-width:210px;padding:0 18px}.backup-panel__status{grid-template-columns:repeat(3,minmax(0,1fr));gap:0;min-height:78px;padding:16px 20px;display:grid}.backup-panel__status-item{border-right:1px solid hsl(var(--border));align-items:center;gap:12px;min-width:0;padding:0 18px;display:flex}.backup-panel__status-item:first-child{padding-left:0}.backup-panel__status-item:last-child{border-right:0;padding-right:0}.backup-panel__status-icon{width:34px;height:34px;color:hsl(var(--muted-foreground));background:hsl(var(--muted) / .42)}.backup-panel__status-icon svg{width:18px;height:18px}.backup-panel__status-item strong{color:hsl(var(--foreground));margin-top:4px;font-size:13px;font-weight:500;line-height:1.35;display:block}.backup-panel__head{justify-content:space-between;align-items:center;gap:12px;padding:18px 22px 0;display:flex}.backup-panel__head h3{color:hsl(var(--foreground));margin:0;font-size:16px;font-weight:600}.backup-panel__empty{color:hsl(var(--muted-foreground));margin:0;padding:14px;font-size:13px;line-height:1.45}.backup-panel__history .backup-panel__empty{margin:12px 14px 14px}.backup-panel__history-empty{border:1px dashed hsl(var(--border));min-height:112px;color:hsl(var(--muted-foreground));background:hsl(var(--background) / .42);text-align:center;border-radius:10px;align-content:center;place-items:center;gap:14px;margin:18px 22px 22px;display:grid}.backup-panel__history-empty svg{stroke-width:1.8px;width:32px;height:32px}.backup-panel__history-empty p{margin:0;font-size:13px}.backup-panel__download{width:100%}.backup-panel__download svg{width:16px;height:16px}.danger-button{color:#b91c1c;cursor:pointer;background:#fef2f2;border:1px solid #fecaca;border-radius:8px;width:100%;height:38px;font-size:13px;font-weight:700}.danger-button svg{stroke-width:2.1px;width:15px;height:15px}.details--device .danger-button{border-radius:7px;justify-content:center;align-items:center;gap:8px;height:40px;display:inline-flex}.danger-button--device{margin-top:14px}.link-details .device-form{margin-bottom:14px}.inventory-page{gap:18px}.inventory-search-box{max-width:360px}.inventory-title-text p{display:none}.inventory-title-text h2{align-items:center;gap:10px;display:flex}.inventory-toolbar{justify-content:space-between;align-items:center;gap:18px;margin-top:-6px;display:flex}.inventory-filter-line,.inventory-type-filter,.inventory-status-filter,.inventory-summary{align-items:center;gap:10px;display:flex}.inventory-type-filter button,.inventory-status-filter button{color:#475569;cursor:pointer;background:0 0;border:0;padding:6px 0;font-size:13px;font-weight:900}.inventory-type-filter button:hover,.inventory-status-filter button:hover,.inventory-type-filter button.is-active,.inventory-status-filter button.is-active{color:#2563eb}.inventory-filter-divider{background:#d8e0ec;width:1px;height:18px}.inventory-summary{color:#475569;font-size:13px;font-weight:800}.inventory-summary>span,.inventory-summary-text{align-items:center;gap:7px;display:inline-flex}.inventory-row{cursor:pointer;transition:background .16s,box-shadow .16s}.inventory-row:hover{background:#f8fbff;box-shadow:inset 3px 0 #3b82f6}.inventory-table{min-width:1180px}.inventory-topology{background:#fff;border:1px solid #e2e8f0;border-radius:10px;height:100%;min-height:0;overflow:auto}.inventory-topology--main{isolation:isolate;border-radius:8px;flex-direction:column;display:flex;overflow:hidden}.inventory-topology-empty{text-align:center;flex:auto;place-content:center;justify-items:center;gap:18px;min-height:0;padding:32px;display:grid}.inventory-topology-empty__art{width:min(260px,72vw);height:auto}.inventory-topology-empty__art--dark,.dark .inventory-topology-empty__art--light{display:none}.dark .inventory-topology-empty__art--dark{display:block}.inventory-topology-empty div{max-width:390px}.inventory-topology-empty h2{color:hsl(var(--foreground));margin:0 0 7px;font-size:18px;font-weight:800}.inventory-topology-empty p{color:hsl(var(--muted-foreground));margin:0;font-size:13px;line-height:1.5}.inventory-topology-search-bar{z-index:4;background:#fff;border-bottom:1px solid #e2e8f0;flex:none;padding:10px;position:relative}.inventory-topology-search{color:#64748b;background:#fff;border:1px solid #cbd5e1;border-radius:8px;align-items:center;gap:9px;min-height:44px;padding:0 10px;display:flex;position:relative}.inventory-topology-search:focus-within{border-color:#60a5fa;box-shadow:0 0 0 3px #2563eb24}.inventory-topology-search>svg{flex:none;width:18px;height:18px}.inventory-topology-search input{color:#0f172a;min-width:0;font:inherit;background:0 0;border:0;outline:0;flex:1;font-size:14px;font-weight:700}.inventory-topology-search input::placeholder{color:#94a3b8}.inventory-topology-search-clear,.inventory-inline-icon{color:#64748b;cursor:pointer;background:0 0;border:0;border-radius:7px;flex:none;justify-content:center;align-items:center;width:34px;height:34px;padding:0;display:inline-flex}.inventory-topology-search-clear:hover,.inventory-inline-icon:hover{color:#2563eb;background:#eef4fb}.inventory-topology-search-clear:focus-visible,.inventory-inline-icon:focus-visible{outline-offset:1px;outline:2px solid #60a5fa}.inventory-topology-search-clear svg,.inventory-inline-icon svg{width:18px;height:18px}.inventory-topology-search-results{z-index:5;background:#fff;border:1px solid #cbd5e1;border-radius:8px;max-height:min(360px,52vh);position:absolute;top:calc(100% + 6px);left:0;right:0;overflow:auto;box-shadow:0 12px 26px #0f172a24}.inventory-topology-search-result{color:#0f172a;text-align:left;cursor:pointer;background:0 0;border:0;border-bottom:1px solid #e2e8f0;grid-template-columns:10px minmax(0,1fr);align-items:center;gap:9px;width:100%;min-height:54px;padding:7px 10px;display:grid}.inventory-topology-search-result:last-child{border-bottom:0}.inventory-topology-search-result:hover,.inventory-topology-search-result:focus-visible{background:#f1f5f9;outline:0}.inventory-topology-search-result>span:last-child{gap:2px;min-width:0;display:grid}.inventory-topology-search-result strong,.inventory-topology-search-result small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.inventory-topology-search-result strong{font-size:13px;font-weight:900}.inventory-topology-search-result small{color:#64748b;font-family:var(--font-mono);font-size:11px;font-weight:700}.inventory-topology-head{z-index:2;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#f8fafcf5;border-bottom:1px solid #e2e8f0;justify-content:space-between;align-items:center;gap:16px;min-height:42px;padding:6px 10px;display:flex;position:sticky;top:0}.inventory-topology-head__device,.inventory-topology-head__actions{align-items:center;display:flex}.inventory-topology-head__device{gap:9px;min-width:0}.inventory-topology-head__device>div{min-width:0}.inventory-topology-head__device h3,.inventory-topology-head__device p{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.inventory-topology-head__actions{gap:4px}.inventory-topology-head h3{color:#0f172a;margin:0;font-size:14px;font-weight:900}.inventory-topology-head p{color:#64748b;margin:2px 0 0;font-size:12px;font-weight:700}.inventory-topology-tree,.inventory-topology-children{margin:0;padding:0;list-style:none}.inventory-topology-tree{min-width:760px;padding:6px 8px 12px}.inventory-topology-node{position:relative}.inventory-topology-children{border-left:1px solid #dbe3ef;margin-left:16px;padding-left:12px;position:relative}.inventory-topology-children>.inventory-topology-node:before{content:"";background:#dbe3ef;width:12px;height:1px;position:absolute;top:14px;left:-12px}.inventory-topology-row{color:#0f172a;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:5px;grid-template-columns:18px 8px minmax(180px,1fr) 128px 62px 92px 36px;align-items:center;gap:7px;width:100%;min-height:26px;padding:2px 6px;display:grid}.inventory-topology-row:hover{background:#f8fbff;box-shadow:inset 3px 0 #3b82f6}.inventory-topology-row:focus-visible{outline-offset:1px;outline:2px solid #bfdbfe}.inventory-topology-main{gap:0;min-width:0;display:grid}.inventory-topology-main strong,.inventory-topology-main span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.inventory-topology-main strong{font-size:12px;font-weight:900}.inventory-topology-main span{color:#64748b;font-size:11px;font-weight:700}.inventory-topology-row code{color:#0f172a;width:max-content;font-family:var(--font-mono);background:#eef4fb;border-radius:5px;padding:2px 5px;font-size:12px;font-weight:500}.inventory-topology-row .inventory-chip{border-radius:5px;min-height:20px;padding:0 6px;font-size:11px;font-weight:800}.inventory-topology-port{color:#047857;width:max-content;min-height:20px;font-family:var(--font-mono);white-space:nowrap;background:#ecfdf5;border-radius:5px;align-items:center;padding:0 6px;font-size:11px;font-weight:700;display:inline-flex}.inventory-topology-count{color:#64748b;background:#f1f5f9;border-radius:999px;align-items:center;width:max-content;min-height:18px;padding:0 6px;font-size:11px;font-weight:800;line-height:1;display:inline-flex}.inventory-topology-table-wrap{height:auto;min-height:0;box-shadow:none;border:0;border-radius:0;flex:auto}.inventory-topology-table{min-width:1180px}.inventory-topology-table th{z-index:3;background:#f8fafc;position:sticky;top:0;box-shadow:0 1px #e2e8f0}.inventory-topology-table th:first-child,.inventory-topology-table td:first-child{width:31%;min-width:340px}.inventory-topology-table th:nth-child(2),.inventory-topology-table td:nth-child(2){width:150px}.inventory-topology-table th:nth-child(3),.inventory-topology-table td:nth-child(3){width:90px}.inventory-topology-table th:nth-child(4),.inventory-topology-table td:nth-child(4){width:25%;min-width:260px}.inventory-topology-table th:nth-child(5),.inventory-topology-table td:nth-child(5){width:150px}.inventory-topology-table th:nth-child(6),.inventory-topology-table td:nth-child(6){width:92px}.inventory-topology-table th:nth-child(7),.inventory-topology-table td:nth-child(7){min-width:160px}.inventory-topology-table td{vertical-align:middle;height:38px;padding-top:4px;padding-bottom:4px}.inventory-topology-table-row.has-cycle{background:#fff7ed}.inventory-topology-table-row.is-focused{background:#eff6ff;box-shadow:inset 3px 0 #2563eb}.inventory-topology-device-column{position:relative}.inventory-topology-table-trunk,.inventory-topology-table-branch,.inventory-topology-table-guide{z-index:1;pointer-events:none;background:#cbd5e1;width:1px;position:absolute}.inventory-topology-table-trunk{top:50%;bottom:0;left:calc(20px + var(--topology-indent,0px))}.inventory-topology-table-branch{top:0;left:calc(20px + var(--topology-parent-indent,0px));height:50%}.inventory-topology-table-branch.continues{height:100%}.inventory-topology-table-branch:after{content:"";border-top:1px solid #cbd5e1;border-radius:2px;width:18px;position:absolute;top:calc(100% - 1px);left:0}.inventory-topology-table-branch.continues:after{top:50%}.inventory-topology-table-guide{top:0;bottom:0;left:calc(20px + var(--topology-guide-indent,0px))}.inventory-topology-device-cell{z-index:2;align-items:center;gap:7px;min-width:0;display:flex;position:relative}.inventory-topology-device-cell .inventory-device-name{min-width:0}.inventory-topology-peer{max-width:100%;color:inherit;text-align:left;cursor:pointer;background:0 0;border:0;gap:1px;padding:0;display:grid}.inventory-topology-peer strong,.inventory-topology-peer span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.inventory-topology-peer strong{color:#0f172a;font-size:12px;font-weight:900}.inventory-topology-peer span{color:#64748b;font-family:var(--font-mono);font-size:11px;font-weight:700}.inventory-topology-muted{color:#94a3b8;font-size:12px;font-weight:800}.inventory-topology-cycle{color:#c2410c;font-size:11px;font-weight:900}.inventory-topology-mobile-list{display:none}.inventory-table th:first-child,.inventory-table td:first-child{width:30%;min-width:260px}.inventory-table th:nth-child(2),.inventory-table td:nth-child(2){width:180px}.inventory-table th:nth-child(3),.inventory-table td:nth-child(3){width:210px}.inventory-table th:nth-child(4),.inventory-table td:nth-child(4){width:190px}.inventory-table th:nth-child(5),.inventory-table td:nth-child(5){width:140px}.inventory-table th:nth-child(6),.inventory-table td:nth-child(6){width:150px}.inventory-device-name{color:#0f172a;font:inherit;cursor:pointer;text-align:left;background:0 0;border:0;flex-direction:column;align-items:flex-start;gap:4px;padding:0;display:inline-flex}.inventory-device-name strong{overflow-wrap:anywhere;white-space:normal;font-weight:900}.inventory-device-name span{color:#64748b;font-size:13px}.inventory-mobile-ip,.inventory-mobile-open{display:none}.inventory-row:hover .inventory-device-name strong{color:#2563eb}.inventory-ip{color:#0f172a;font-family:var(--font-mono);cursor:pointer;background:#eef4fb;border:0;border-radius:7px;padding:5px 8px;font-size:13px;font-weight:500;line-height:normal;transition:background .16s,color .16s,box-shadow .16s}.inventory-ip:hover,.inventory-ip:focus-visible{color:#1d4ed8;background:#dbeafe}.inventory-ip:focus-visible{outline:0;box-shadow:0 0 0 3px #2563eb2e}.inventory-ip.is-copied{color:#16a34a;background:#dcfce7}.ip-range-pills{flex-wrap:wrap;gap:6px;display:flex}@media (width<=760px){.inventory-topology{overflow:auto}.inventory-topology-head{align-items:flex-start}.inventory-topology-tree{min-width:760px;padding:10px}.inventory-topology-row{grid-template-columns:18px 8px minmax(190px,1fr) 126px 62px 92px 36px;gap:8px}}.inventory-status-cell{white-space:nowrap;flex-wrap:nowrap;align-items:center;gap:7px;display:inline-flex}.inventory-status-duration{color:#64748b;white-space:nowrap;background:#f1f5f9;border-radius:7px;align-items:center;min-height:24px;padding:4px 7px;font-size:12px;font-weight:700;line-height:1;display:inline-flex}.dark .inventory-type-filter button,.dark .inventory-status-filter button,.dark .inventory-summary,.dark .inventory-device-name span,.dark .inventory-status-duration{color:#94a3b8}.dark .inventory-status-duration{background:hsl(var(--muted) / .6)}.dark .inventory-page{background:hsl(var(--background) / .96)}.dark .inventory-page .users-panel-title h2,.dark .inventory-title-text h2,.dark .inventory-table td,.dark .inventory-device-name strong{color:hsl(var(--foreground))}.dark .inventory-search-box,.dark .inventory-table-wrap,.dark .inventory-topology{border-color:hsl(var(--border));background:hsl(var(--card))}.dark .inventory-topology-head{border-color:hsl(var(--border));background:hsl(var(--card) / .94)}.dark .inventory-topology-table th{background:hsl(var(--card));box-shadow:0 1px 0 hsl(var(--border))}.dark .inventory-topology-head h3,.dark .inventory-topology-main strong,.dark .inventory-topology-row,.dark .map-list-page__title h2,.dark .monitoring-view__head .mobile-view-title h2,.dark .map-list-page__title>svg,.dark .monitoring-view__head .mobile-view-title>svg{color:hsl(var(--foreground))}.dark .monitoring-view__head{border-bottom-color:hsl(var(--border))}.dark .inventory-topology-head p,.dark .inventory-topology-main span{color:hsl(var(--muted-foreground))}.dark .inventory-topology-children{border-color:hsl(var(--border))}.dark .inventory-topology-children>.inventory-topology-node:before{background-color:hsl(var(--border))}.dark .inventory-topology-peer strong{color:hsl(var(--foreground))}.dark .inventory-topology-peer span,.dark .inventory-topology-muted{color:hsl(var(--muted-foreground))}.dark .inventory-topology-table-row.has-cycle{background:#fb923c1a}.dark .inventory-topology-search-bar{border-color:hsl(var(--border));background:hsl(var(--card))}.dark .inventory-topology-search{border-color:hsl(var(--border));background:hsl(var(--background));color:hsl(var(--muted-foreground))}.dark .inventory-topology-search input,.dark .inventory-topology-search-result,.dark .inventory-topology-search-result strong{color:hsl(var(--foreground))}.dark .inventory-topology-search input::placeholder,.dark .inventory-topology-search-result small,.dark .inventory-topology-search-clear,.dark .inventory-inline-icon{color:hsl(var(--muted-foreground))}.dark .inventory-topology-search-clear:hover,.dark .inventory-inline-icon:hover{background:hsl(var(--muted));color:#93c5fd}.dark .inventory-topology-search-results{border-color:hsl(var(--border));background:hsl(var(--card));box-shadow:0 12px 26px #00000052}.dark .inventory-topology-search-result{border-color:hsl(var(--border))}.dark .inventory-topology-search-result:hover,.dark .inventory-topology-search-result:focus-visible{background:hsl(var(--muted))}.dark .inventory-topology-table-row.is-focused,.dark .inventory-topology-mobile-card.is-focused{background:#2563eb33;box-shadow:inset 3px 0 #60a5fa}.dark .inventory-topology-port,.dark .inventory-topology-mobile-card__port{color:#6ee7b7;background:#10b98126}.dark .inventory-topology-count{background:hsl(var(--muted));color:hsl(var(--muted-foreground))}.dark .inventory-topology-table-trunk,.dark .inventory-topology-table-branch,.dark .inventory-topology-table-guide,.dark .inventory-topology-mobile-trunk,.dark .inventory-topology-mobile-branch,.dark .inventory-topology-mobile-guide{background:#52627a}.dark .inventory-topology-table-branch:after,.dark .inventory-topology-mobile-branch:after{border-color:#52627a}.dark .inventory-page .device-panel-icon,.dark .inventory-search-box input{color:hsl(var(--foreground))}.dark .inventory-search-box input::placeholder,.dark .inventory-mobile-ip,.dark .inventory-mobile-open{color:hsl(var(--muted-foreground))}.dark .inventory-table th{color:hsl(var(--muted-foreground));background:hsl(var(--muted) / .42)}.dark .inventory-type-filter button:hover,.dark .inventory-status-filter button:hover,.dark .inventory-type-filter button.is-active,.dark .inventory-status-filter button.is-active{color:hsl(var(--primary))}.dark .inventory-filter-divider{background:hsl(var(--border))}.dark .inventory-table th,.dark .inventory-table td,.dark .inventory-table tr.inventory-row{border-color:hsl(var(--border))}.dark .inventory-ip,.dark .inventory-topology-row code,.dark .inventory-chip,.dark .inventory-copy-value code{background:hsl(var(--muted));color:hsl(var(--foreground))}.dark .inventory-row:hover{background:#3b82f61a}.dark .inventory-device-name{color:#e2e8f0}.dark .inventory-copy-value code{color:#dbeafe;box-shadow:none;background:#1e293beb;border:0}.dark .inventory-ip:hover,.dark .inventory-ip:focus-visible{color:#bfdbfe;box-shadow:none;background:#2563eb38}.dark .inventory-ip.is-copied{color:#86efac;box-shadow:none;background:#16a34a2e}.dark .inventory-chip{color:#e2e8f0;background:#1e293be6}.dark .inventory-chip,.dark .user-pill,.dark .snmp-status,.dark .inventory-ip{box-shadow:none;border:0}.dark .user-pill--department,.dark .inventory-table .user-pill{color:#e2e8f0;background:#1e293be6}.dark .user-pill--active{color:#86efac;background:#22c55e29}.dark .user-pill--inactive{color:#fca5a5;background:#ef444429}@media (width<=900px){.topbar{flex-direction:column;align-items:flex-start;gap:12px;height:auto;min-height:62px;padding:14px}.summary{flex-wrap:wrap;width:100%}.search-box{width:min(100%,360px)}.map-wrap{padding-top:132px}}@media (width<=760px){.mobile-view-title{align-items:center;gap:8px;min-width:0;display:inline-flex}.mobile-view-title>svg,.mobile-view-title .device-panel-icon{flex:0 0 22px;width:22px;height:22px}.mobile-view-title .device-panel-icon{box-shadow:none;color:hsl(var(--foreground));background:0 0;border:0;justify-content:center;align-items:center;display:inline-flex}.mobile-view-title .device-panel-icon svg{width:22px;height:22px}.mobile-view-title h2,.monitoring-view .topology-view__head h2{white-space:nowrap;margin:0;font-size:18px;font-weight:800;line-height:1.15}.monitoring-view .topology-view__head{border-bottom:0;margin-bottom:14px;padding-bottom:0}.monitoring-summary{flex-wrap:wrap;justify-content:flex-start;gap:12px;margin-bottom:12px;padding-top:0;display:flex}.monitoring-summary button{min-width:0;min-height:20px}.monitoring-summary .monitoring-summary__label{color:hsl(var(--muted-foreground));letter-spacing:.02em;text-transform:uppercase;white-space:nowrap;flex:none;font-size:9px;font-weight:700}.monitoring-summary button>span{white-space:nowrap;gap:5px;font-size:11px;line-height:1}.monitoring-summary strong{font-size:11px}.monitoring-summary .monitoring-dot{flex-basis:9px;width:9px;height:9px}.monitoring-temperatures{white-space:nowrap;flex:0 0 100%;justify-content:flex-start;gap:10px;margin-left:0;font-size:8px;line-height:1}.monitoring-temperatures span{gap:4px;font-size:8px}.monitoring-temperatures svg{width:10px;height:10px}.monitoring-temperatures strong{font-size:8px}.topology-view__head{flex-wrap:wrap;align-items:flex-start}.list-search-box{order:3;width:100%;margin-left:0}.list-view{background:hsl(var(--card));box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;border:0;border-radius:0;padding:18px 15px 16px;inset:122px 0 0}.list-view .topology-view__head{border-bottom:0;grid-template-columns:minmax(0,1fr);gap:12px;margin-bottom:14px;padding-bottom:0;display:grid}.map-list-headline{grid-template-columns:minmax(0,1fr);gap:10px;display:grid}.map-list-title{grid-template-columns:28px minmax(0,1fr);align-items:start;gap:9px;width:100%;min-width:0;display:grid}.map-list-title .device-panel-icon{box-sizing:border-box;width:24px;height:24px;box-shadow:none;color:hsl(var(--foreground));background:0 0;border:0;border-radius:0;margin-top:1px;display:inline-flex}.map-list-title .device-panel-icon svg{stroke-width:2.2px;width:24px;height:24px}.list-title-text h2,.list-view .topology-view__head h2{color:hsl(var(--foreground));margin:0;font-size:18px;font-weight:800;line-height:1.15}.list-summary{color:hsl(var(--muted-foreground));gap:12px;font-size:12px;font-weight:600;line-height:18px}.list-summary span{white-space:nowrap;gap:5px}.list-summary .monitoring-dot{width:10px;height:10px}.list-summary strong{color:hsl(var(--primary));font-weight:800}.list-view .list-search-box{box-sizing:border-box;border-color:hsl(var(--border));background:hsl(var(--card));order:0;gap:9px;width:100%;height:42px;margin:0;position:relative}.list-view .list-search-box input{font-size:14px}.list-view .search-clear-button{width:28px;height:28px;color:hsl(var(--muted-foreground));cursor:pointer;background:0 0;border:0;border-radius:6px;flex:none;justify-content:center;align-items:center;display:inline-flex}.list-view .device-list-wrap{overflow:visible}.list-view .device-list-table{border-collapse:collapse;border-spacing:0;min-width:0}.list-view .device-list-table thead{display:none}.list-view .device-list-table tbody,.list-view .device-list-table tr,.list-view .device-list-table td{display:block;width:100%!important;min-width:0!important}.list-view .device-list-table tr.map-list-row{box-sizing:border-box;border:0;border-bottom:1px solid hsl(var(--border) / .58);min-height:52px;box-shadow:none;cursor:pointer;background:0 0;grid-template-columns:18px minmax(0,1fr) 20px;align-items:center;gap:9px;padding:0 1px;display:grid}.list-view .device-list-table tr.map-list-row:first-child{border-top:1px solid hsl(var(--border) / .58)}.list-view .device-list-table tr.map-list-row:hover{background:hsl(var(--muted) / .22)}.list-view .device-list-table tr.map-list-row:last-child{border-bottom:0}.list-view .device-list-table td{border:0;padding:0}.list-view .device-list-table td:first-child{grid-area:1/2}.list-view .device-list-table td:nth-child(2),.list-view .device-list-table td:nth-child(4),.list-view .device-list-table td:nth-child(5),.list-view .device-list-table td:nth-child(6){display:none}.list-view .device-list-table td:nth-child(3){grid-area:1/1;width:10px!important}.list-view .device-list-status{border-radius:999px;flex:0 0 10px;width:10px;min-width:0;height:10px;min-height:0;padding:0;font-size:0;line-height:0;display:block;overflow:hidden}.list-view .device-list-status--online,.list-view .device-list-status--available{background:#22c55e}.list-view .device-list-status--offline,.list-view .device-list-status--unavailable{background:#ef4444}.list-view .map-list-device-name{width:100%;min-height:52px;color:hsl(var(--foreground));align-items:center;gap:4px;display:inline-flex}.list-view .map-list-device-name strong{min-width:0;color:hsl(var(--foreground));text-overflow:ellipsis;white-space:nowrap;font-size:15px;font-weight:500;line-height:1.22;overflow:hidden}.map-list-mobile-ip{color:#7182a0;flex:none;font-size:13px;font-weight:500;line-height:1;display:inline}.list-view .device-list-table td.map-list-mobile-open{color:#7b879d;grid-area:1/3;justify-content:flex-end;align-items:center;display:flex}.map-list-mobile-open svg{stroke-width:2.3px;width:18px;height:18px}.list-view .map-list-device-name:hover strong{color:hsl(var(--primary))}.inventory-page .users-panel-title h2{font-size:18px}.inventory-search-box input{font-size:14px}.inventory-table .inventory-device-name strong{font-size:15px}}@media (width<=720px){.summary-item,.summary-divider{display:none}.details{width:calc(100% - 20px);top:auto;bottom:10px;right:10px}.backup-panel__summary{grid-template-columns:42px minmax(0,1fr)}.backup-panel__summary .panel-action-button{grid-column:1/-1;justify-self:stretch;width:100%;max-width:none}}.app-shell{--background:210 40% 98%;--foreground:222 47% 11%;--card:0 0% 100%;--card-foreground:222 47% 11%;--popover:0 0% 100%;--popover-foreground:222 47% 11%;--primary:217 91% 60%;--primary-foreground:0 0% 100%;--secondary:214 32% 91%;--secondary-foreground:222 47% 11%;--muted:210 40% 96%;--muted-foreground:215 16% 47%;--accent:214 32% 91%;--accent-foreground:222 47% 11%;--destructive:0 84% 60%;--destructive-foreground:0 0% 100%;--border:214 32% 86%;--input:214 32% 86%;--ring:217 91% 60%;--radius:8px}.app-shell.dark,.dark .app-shell{--background:222 34% 9%;--foreground:213 31% 91%;--card:222 28% 12%;--card-foreground:213 31% 91%;--popover:222 28% 12%;--popover-foreground:213 31% 91%;--primary:214 100% 66%;--primary-foreground:222 47% 11%;--secondary:217 19% 20%;--secondary-foreground:213 31% 91%;--muted:217 24% 17%;--muted-foreground:215 18% 68%;--accent:217 24% 18%;--accent-foreground:213 31% 91%;--destructive:0 72% 62%;--destructive-foreground:0 0% 100%;--border:217 22% 24%;--input:217 22% 24%;--ring:214 100% 66%}.app-shell{--panel:hsl(var(--card) / .92);--panel-solid:hsl(var(--card));--panel-border:hsl(var(--border));--soft-shadow:0 10px 30px #0f172a14;--hairline:1px solid hsl(var(--border));color:hsl(var(--foreground));background:radial-gradient(circle at 1px 1px, hsl(var(--border) / .62) 1.4px, transparent 1.6px) 0 0 / 26px 26px, linear-gradient(135deg, hsl(var(--background) / .92), hsl(var(--muted) / .72)), hsl(var(--background));scrollbar-color:hsl(var(--muted-foreground) / .58) hsl(var(--background))}.app-shell.dark *,.dark .app-shell *{scrollbar-color:hsl(var(--muted-foreground) / .58) hsl(var(--background))}.app-shell.dark ::-webkit-scrollbar{width:11px;height:11px}.dark .app-shell ::-webkit-scrollbar{width:11px;height:11px}.app-shell.dark ::-webkit-scrollbar-track{background:hsl(var(--background))}.dark .app-shell ::-webkit-scrollbar-track{background:hsl(var(--background))}.app-shell.dark ::-webkit-scrollbar-thumb{border:3px solid hsl(var(--background));background:hsl(var(--muted-foreground) / .55);border-radius:999px}.dark .app-shell ::-webkit-scrollbar-thumb{border:3px solid hsl(var(--background));background:hsl(var(--muted-foreground) / .55);border-radius:999px}.app-shell.dark ::-webkit-scrollbar-thumb:hover{background:hsl(var(--muted-foreground) / .72)}.dark .app-shell ::-webkit-scrollbar-thumb:hover{background:hsl(var(--muted-foreground) / .72)}.app-shell.dark,.dark .app-shell{--soft-shadow:0 12px 34px #00000057;background:radial-gradient(circle at 1px 1px, hsl(var(--border) / .46) 1.35px, transparent 1.55px) 0 0 / 26px 26px, linear-gradient(135deg, #0f141ff5, #131b2ad1), hsl(var(--background))}.topbar{border-bottom:var(--hairline);background:hsl(var(--background) / .9);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);height:72px;padding:0 24px}.brand{gap:18px;min-width:260px}.brand__logo{color:hsl(var(--primary));font-size:21px;font-weight:700}.brand__logo:after{background:hsl(var(--border));height:26px;margin-left:18px}.topbar h1{color:hsl(var(--foreground));font-size:14px;font-weight:500}.summary{gap:14px}.search-box{border-color:hsl(var(--input));border-radius:var(--radius);background:hsl(var(--background));width:min(420px,34vw);height:40px}.search-box:focus-within{border-color:hsl(var(--ring));box-shadow:0 0 0 3px hsl(var(--ring) / .14)}.search-box svg{width:18px;height:18px;color:hsl(var(--muted-foreground))}.search-box input{color:hsl(var(--foreground));font-size:14px}.summary-item{color:hsl(var(--foreground));font-size:13px;font-weight:500}.summary-item b{font-weight:600}.summary-divider{background:hsl(var(--border))}.toolbar-button,.refresh-button,.icon-button{border-radius:var(--radius);height:36px;font-weight:500}.toolbar-button--primary{background:hsl(var(--primary));min-width:112px;box-shadow:0 8px 18px hsl(var(--primary) / .16);border:0}.toolbar-button--primary:hover{background:hsl(var(--primary) / .92)}.view-tabs{border:var(--hairline);border-radius:var(--radius);background:hsl(var(--background) / .88);box-shadow:none;gap:4px;padding:4px;top:96px;left:24px}.view-tabs button{border-radius:calc(var(--radius) - 2px);height:34px;color:hsl(var(--muted-foreground));background:0 0;border:0;padding:0 14px;font-size:13px;font-weight:500}.view-tabs button.is-active{color:hsl(var(--primary));background:hsl(var(--primary) / .1)}.map-wrap{padding-top:72px}.port-label{border-color:hsl(var(--border));border-radius:calc(var(--radius) - 2px);color:hsl(var(--foreground));background:hsl(var(--background));font-weight:600;box-shadow:0 4px 12px #0f172a14}.status-legend{border:var(--hairline);border-radius:var(--radius);background:hsl(var(--background) / .9);box-shadow:var(--soft-shadow);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.status-legend h3,.status-legend p{font-weight:500}.details{border-left:var(--hairline);background:hsl(var(--background) / .96);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);width:396px;height:calc(100vh - 72px);max-height:calc(100vh - 72px);top:72px}.details--device{width:749px}.details--create,.details--link{width:560px}.details__close{background:hsl(var(--muted));color:hsl(var(--foreground));border-radius:999px}.details__close:hover{background:hsl(var(--accent))}.device-panel-head{border-bottom:var(--hairline);padding:28px 30px 22px}.device-panel-title h2{color:hsl(var(--foreground));font-size:22px;font-weight:600}.device-panel-tabs{border-bottom:var(--hairline);background:0 0}.device-panel-tabs button{height:64px;color:hsl(var(--muted-foreground));font-size:12px;font-weight:500}.device-panel-tabs button.is-active{color:hsl(var(--primary));border-bottom-color:hsl(var(--primary))}.details__body{padding:24px 30px 30px}.details label,.device-form label,.notes-panel label{color:hsl(var(--muted-foreground));font-size:12px;font-weight:500}.details--create .device-form,.details--link .device-form{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 16px;margin-bottom:18px}.device-form input,.device-form select,.device-form textarea,.details textarea{border-color:hsl(var(--input));border-radius:var(--radius);background:hsl(var(--background));min-height:38px;color:hsl(var(--foreground));font-size:14px}.device-form input:focus,.device-form select:focus,.device-form textarea:focus,.details textarea:focus{border-color:hsl(var(--ring));outline:3px solid hsl(var(--ring) / .14)}.device-status,.tab-placeholder{border:var(--hairline);border-radius:var(--radius);background:hsl(var(--card) / .68)}.connection-section{background:0 0;border:0;border-radius:0;padding:0}.connections-panel{gap:30px}.connections-panel h3,.connection-section h3{color:hsl(var(--foreground));font-size:15px;font-weight:500}.connection-grid--head{border-bottom-color:hsl(var(--border));color:hsl(var(--muted-foreground));font-weight:500}.connection-grid--row,.connection-grid--empty{border-bottom-color:hsl(var(--border) / .72);color:hsl(var(--foreground));background:0 0}.connection-grid--row:hover{color:hsl(var(--primary))}.snmp-panel--flat{background:0 0;border:0;margin:0;padding:0}.snmp-panel__header,.snmp-section{border-bottom-color:hsl(var(--border))}.snmp-panel h3,.snmp-section h4,.snmp-table-head h4{color:hsl(var(--foreground));font-weight:500}.snmp-panel button,.connections-panel__section-head button{border-color:hsl(var(--border));border-radius:var(--radius);color:hsl(var(--foreground));background:hsl(var(--muted) / .52);font-weight:500}.snmp-panel button:hover,.connections-panel__section-head button:hover{border-color:hsl(var(--primary) / .34);background:hsl(var(--muted))}.panel-action-button,.snmp-panel .panel-action-button,.connections-panel__section-head .panel-action-button{border:1px solid hsl(var(--border));border-radius:var(--radius);min-width:112px;height:38px;color:hsl(var(--foreground));background:hsl(var(--muted) / .52);white-space:nowrap;justify-content:center;align-items:center;gap:8px;padding:0 14px;font-size:13px;font-weight:500;line-height:1;display:inline-flex}.panel-action-button:hover,.snmp-panel .panel-action-button:hover,.connections-panel__section-head .panel-action-button:hover{border-color:hsl(var(--primary) / .34);background:hsl(var(--muted))}.panel-action-button:disabled{cursor:not-allowed;opacity:.72}.panel-action-button svg{stroke-width:2px;width:16px;height:16px}.primary-panel-button{border-color:hsl(var(--primary));border-radius:var(--radius);height:40px;color:hsl(var(--primary-foreground));background:hsl(var(--primary));font-weight:500}.primary-panel-button:hover{background:hsl(var(--primary) / .92)}.upstream-picker button,.upstream-picker__selected,.upstream-picker__empty{border-color:hsl(var(--border));border-radius:var(--radius);background:hsl(var(--background));color:hsl(var(--foreground))}.upstream-picker button:hover{border-color:hsl(var(--primary) / .35);background:hsl(var(--primary) / .06)}.upstream-picker__selected{color:#157a3a;background:#edfdf3;border-color:#21c45d40}.form-note--warning{color:#a95c04;background:#fef3c86b;border-color:#e7b0083d}.link-summary-panel{margin-bottom:18px!important}.snmp-info-table,.snmp-ports-table{color:hsl(var(--foreground))}.snmp-info-table th,.snmp-ports-table th{color:hsl(var(--muted-foreground))}.snmp-info-table th,.snmp-info-table td,.snmp-ports-table th,.snmp-ports-table td{border-bottom-color:hsl(var(--border) / .72)}.snmp-status{color:#0f172a;background:#eef4fb;border-radius:6px;min-height:22px;padding:0 7px;font-size:12px;font-weight:700;line-height:1}.danger-button{border-color:hsl(var(--destructive) / .28);border-radius:var(--radius);color:hsl(var(--destructive));background:hsl(var(--destructive) / .08);font-weight:500}.danger-button:hover{background:hsl(var(--destructive) / .12)}.dark .details__close{border:1px solid hsl(var(--border));color:#d0dae7;background:#1a202d}.dark .details__close:hover{border-color:hsl(var(--primary) / .36);color:hsl(var(--foreground));background:#222a39}.dark .secondary-panel-button{border-color:hsl(var(--border));color:hsl(var(--foreground));background:hsl(var(--muted) / .34);font-weight:500}.dark .secondary-panel-button:hover{border-color:hsl(var(--primary) / .34);background:hsl(var(--muted) / .5)}.dark .topbar,.dark .details,.dark .view-tabs,.dark .map-segment-tabs,.dark .status-legend,.dark .topology-view{background:hsl(var(--background) / .88);border-color:hsl(var(--border))}.dark .search-box,.dark .device-form input,.dark .device-form select,.dark .device-form textarea,.dark .details textarea,.dark .upstream-picker button,.dark .upstream-picker__empty,.dark .device-map-preview iframe,.dark .device-map-preview__placeholder{background:hsl(var(--card));border-color:hsl(var(--input));color:hsl(var(--foreground))}.dark .search-box__clear:hover{color:hsl(var(--foreground));background:hsl(var(--accent))}.dark .device-status,.dark .snmp-empty,.dark .device-map-preview__placeholder,.dark .link-summary-panel{background:hsl(var(--card) / .72);border-color:hsl(var(--border))}.dark .device-map-preview{border-top-color:hsl(var(--border) / .45)}.dark .device-map-preview__head h3{color:hsl(var(--foreground))}.dark .snmp-section{border-bottom-color:hsl(var(--border));background:0 0}.dark .snmp-info-table,.dark .snmp-ports-table,.dark .snmp-info-table tbody,.dark .snmp-ports-table tbody,.dark .snmp-info-table tr,.dark .snmp-ports-table tr{background:0 0}.dark .device-list-table,.dark .snmp-info-table,.dark .snmp-ports-table,.dark .connection-grid--row,.dark .connection-grid--empty,.dark .topology-row{color:hsl(var(--foreground))}.dark .device-list-table th,.dark .snmp-info-table th,.dark .snmp-ports-table th,.dark .connection-grid--head,.dark .topology-ip,.dark .topology-port,.dark .device-map-preview__head p{color:hsl(var(--muted-foreground))}.dark .device-list-table td,.dark .device-list-table th,.dark .snmp-info-table th,.dark .snmp-info-table td,.dark .snmp-ports-table th,.dark .snmp-ports-table td,.dark .connection-grid--row,.dark .connection-grid--empty{border-bottom-color:hsl(var(--border));background:0 0!important}.dark .connection-grid--row:hover,.dark .connection-grid--row:focus-visible{border-color:hsl(var(--border));color:hsl(var(--foreground));background:hsl(var(--primary) / .08)!important}.dark .connection-grid--empty{color:hsl(var(--muted-foreground));opacity:.72}.dark .connection-grid--empty span{color:hsl(var(--muted-foreground))}.dark .device-list-table tbody tr:hover{background:hsl(var(--primary) / .08)}.dark .list-view .topology-view__head{border-color:hsl(var(--border))}.dark .list-headline h2,.dark .list-summary strong,.dark .device-table-link{color:hsl(var(--foreground))}.dark .list-summary,.dark .device-table-link--mono{color:hsl(var(--muted-foreground))}.dark .list-search-box{border-color:hsl(var(--input));background:hsl(var(--card))}.dark .list-search-box svg,.dark .list-search-box input::placeholder{color:hsl(var(--muted-foreground))}.dark .list-search-box input{color:hsl(var(--foreground))}.dark .list-search-box:focus-within{border-color:#60a5fa;box-shadow:0 0 0 3px #3b82f62e}.dark .device-list-qinq{color:#dbeafe;background:#1e293beb}.dark .device-list-qinq svg{color:#93c5fd}.dark .device-list-qinq:hover,.dark .device-list-qinq:focus-visible,.dark .device-list-qinq.is-copied{color:#dbeafe;background:#172554}.dark .device-list-status--online{color:#86efac;background:#22c55e29}.dark .device-list-status--offline{color:#fca5a5;background:#ef444429}.dark .device-list-status--unknown{color:#cbd5e1;background:#94a3b829}.dark .view-tabs button{color:hsl(var(--muted-foreground));background:0 0}.dark .view-tabs button.is-active{color:hsl(var(--primary));background:hsl(var(--primary) / .14)}.dark .map-segment-tabs button{border-right-color:hsl(var(--border));color:hsl(var(--muted-foreground));background:0 0}.dark .map-segment-tabs button:hover{color:hsl(var(--foreground));background:hsl(var(--primary) / .08)}.dark .map-segment-tabs button.is-active{color:hsl(var(--primary));background:hsl(var(--card))}.dark .backup-panel__summary,.dark .backup-panel__status,.dark .backup-panel__history,.dark .backup-panel__empty{background:hsl(var(--card));box-shadow:none}.dark .backup-panel__summary-icon{color:hsl(var(--muted-foreground));background:hsl(var(--muted) / .28)}.dark .backup-panel__download{background:hsl(var(--card))}.dark .status-legend h3,.dark .status-legend p,.dark .summary-item,.dark .summary-item b,.dark .toolbar-button,.dark .refresh-button,.dark .theme-button,.dark .icon-button{color:hsl(var(--foreground))}.dark .summary-divider,.dark .brand__logo:after{background:hsl(var(--border))}.dark .port-label{color:#0f1729;box-shadow:0 0 0 2px hsl(var(--background) / .86), 0 4px 12px #00000038;background:#e6ebef;border-color:#21c45d8c}.dark .port-label strong{color:#0f1729}.dark .snmp-status{box-shadow:none;border:0}.dark .snmp-status.is-good{color:#86efac;background:#22c55e29}.dark .snmp-status.is-bad{color:#fca5a5;background:#ef444429}.dark .snmp-status.is-muted{color:#cbd5e1;background:#94a3b829}.dark .device-form textarea,.dark .details textarea,.dark .notes-panel textarea{resize:none}.dark .monitoring-summary,.dark .monitoring-temperatures,.dark .monitoring-summary>span,.dark .monitoring-summary button,.dark .monitoring-table__check,.dark .monitoring-comment-editor label{color:hsl(var(--muted-foreground))}.dark .monitoring-summary button:hover,.dark .monitoring-summary button.is-active,.dark .monitoring-temperatures strong,.dark .monitoring-table__comment button,.dark .monitoring-table__comment strong,.dark .monitoring-comment-history h3,.dark .monitoring-history-panel h3,.dark .monitoring-comment-card header strong,.dark .monitoring-history-card strong,.dark .monitoring-history-card p span{color:hsl(var(--foreground))}.dark .monitoring-table-wrap,.dark .monitoring-comment-card,.dark .monitoring-history-card,.dark .users-table-wrap{border-color:hsl(var(--border));background:hsl(var(--card))}.dark .monitoring-table tbody tr,.dark .monitoring-table tbody tr:hover,.dark .monitoring-row--offline,.dark .monitoring-row--unknown{background:hsl(var(--card))}.dark .monitoring-table td span:not(.device-list-status),.dark .monitoring-table__comment button>span,.dark .monitoring-comment-card header span,.dark .monitoring-history-card p,.dark .monitoring-empty{color:hsl(var(--muted-foreground))}.dark .comment-author,.dark .monitoring-comment-editor input,.dark .monitoring-comment-editor textarea,.dark .monitoring-photo-picker,.dark .monitoring-photo-preview button,.dark .monitoring-comment-photos a{border-color:hsl(var(--input));color:hsl(var(--foreground));background:hsl(var(--card))}.dark .comment-author strong,.dark .monitoring-comment-card p{color:hsl(var(--foreground))}.dark .users-page{background:hsl(var(--background))}.dark .users-panel-title h2,.dark .users-table td{color:hsl(var(--foreground))}.dark .users-table th{border-bottom-color:hsl(var(--border));color:hsl(var(--muted-foreground));background:hsl(var(--muted))}.dark .users-table td,.dark .users-table tbody tr.is-disabled{border-bottom-color:hsl(var(--border));background:0 0}.map-inventory-panel{z-index:32;border-left:var(--hairline);background:hsl(var(--background) / .97);width:min(720px,100vw);box-shadow:var(--soft-shadow);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);flex-direction:column;padding:22px;display:flex;position:fixed;top:72px;bottom:0;right:0}.map-inventory-panel__header{flex:none}.map-inventory-panel__actions{align-items:center;gap:4px;display:flex}.map-inventory-panel__back{display:none}.map-inventory-panel__remove{width:36px;height:36px;color:hsl(var(--muted-foreground));cursor:pointer;background:0 0;border:0;border-radius:50%;place-items:center;display:inline-grid}.map-inventory-panel__remove:hover{color:#dc2828;background:#ef43431a}.map-inventory-panel .inventory-modal__title h2{color:hsl(var(--foreground))}.map-inventory-panel .inventory-modal__title p{color:hsl(var(--muted-foreground))}.map-inventory-panel .inventory-modal__tabs{border-bottom-color:hsl(var(--border));flex:none;margin:22px 0 14px}.map-inventory-panel__content{flex:auto;min-height:0;padding:0 2px 24px 0;overflow:auto}.map-add-device-panel__content{flex-direction:column;gap:14px;padding-top:4px;display:flex}.map-add-device-panel__search{border:1px solid hsl(var(--input));height:42px;color:hsl(var(--muted-foreground));background:hsl(var(--background));border-radius:7px;align-items:center;gap:9px;padding:0 10px;display:flex}.map-add-device-panel__search:focus-within{border-color:hsl(var(--ring));box-shadow:0 0 0 3px hsl(var(--ring) / .14)}.map-add-device-panel__search>svg{flex:none;width:18px;height:18px}.map-add-device-panel__search input{min-width:0;color:hsl(var(--foreground));font:inherit;background:0 0;border:0;outline:0;flex:1}.map-add-device-panel__search button{width:26px;height:26px;color:hsl(var(--muted-foreground));cursor:pointer;background:0 0;border:0;border-radius:5px;place-items:center;padding:0;display:grid}.map-add-device-panel__search button:hover{color:hsl(var(--foreground));background:hsl(var(--muted))}.map-add-device-panel__search button svg{width:16px;height:16px}.map-add-device-panel__hint{color:hsl(var(--muted-foreground));margin:0;font-size:13px;line-height:1.5}.map-add-device-panel__results{gap:6px;display:grid}.map-add-device-panel__results>button{border:1px solid hsl(var(--border));width:100%;min-height:62px;color:hsl(var(--foreground));background:hsl(var(--card));text-align:left;font:inherit;cursor:pointer;border-radius:7px;align-items:center;gap:10px;padding:9px 10px;display:flex}.map-add-device-panel__results>button:hover{border-color:hsl(var(--primary) / .55);background:hsl(var(--muted) / .6)}.map-add-device-panel__results>button.is-selected{border-color:hsl(var(--primary));background:hsl(var(--primary) / .08)}.map-add-device-panel__result-icon{width:32px;height:32px;color:hsl(var(--primary));background:hsl(var(--primary) / .12);border-radius:6px;flex:none;place-items:center;display:grid}.map-add-device-panel__result-icon svg{width:16px;height:16px}.map-add-device-panel__results>button>span:nth-child(2){gap:3px;min-width:0;display:grid}.map-add-device-panel__results strong,.map-add-device-panel__results small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.map-add-device-panel__results strong{font-size:13px}.map-add-device-panel__results small{color:hsl(var(--muted-foreground));font-size:12px}.map-add-device-panel__results em{color:hsl(var(--muted-foreground));margin-left:auto;font-size:12px;font-style:normal}.map-add-device-panel__results>button>svg{width:18px;height:18px;color:hsl(var(--primary));margin-left:auto}.map-add-device-panel__footer{border-top:1px solid hsl(var(--border));flex:none;gap:8px;padding-top:14px;display:grid}.map-add-device-panel__footer>span{color:hsl(var(--muted-foreground));font-size:12px}.map-add-device-panel__submit{border:1px solid hsl(var(--primary));width:100%;min-height:38px;color:hsl(var(--primary-foreground));background:hsl(var(--primary));font:inherit;cursor:pointer;border-radius:6px;justify-content:center;align-items:center;gap:7px;padding:0 12px;font-size:13px;font-weight:650;display:inline-flex}.map-add-device-panel__submit:hover:not(:disabled){filter:brightness(.94)}.map-add-device-panel__submit:disabled{border-color:hsl(var(--border));color:hsl(var(--muted-foreground));background:hsl(var(--muted));cursor:not-allowed}.map-add-device-panel__submit svg{width:16px;height:16px}.map-inventory-panel .inventory-modal__table-wrap,.map-inventory-panel .inventory-modal__table th,.map-inventory-panel .inventory-modal__table td{border-color:hsl(var(--border))}.map-inventory-panel .inventory-modal__table th{color:hsl(var(--muted-foreground));background:hsl(var(--muted))}.map-inventory-panel .inventory-modal__table--overview td,.map-inventory-panel .inventory-modal__table{color:hsl(var(--foreground))}.dark .map-inventory-panel{background:hsl(var(--background) / .97)}.dark .map-inventory-panel .inventory-modal__icon{background:hsl(var(--primary) / .15);color:hsl(var(--primary))}.dark .map-inventory-panel .inventory-modal__table-wrap{background:hsl(var(--card))}@media (width<=760px){.map-inventory-panel{width:100vw;padding:16px;top:64px}.map-inventory-panel .inventory-modal__title h2{font-size:18px}}@media (width<=1180px){.brand{min-width:auto}.search-box{width:min(360px,34vw)}.details--device{width:690px}.details--create,.details--link{width:560px}.users-page-layout{grid-template-columns:minmax(0,1fr)}.user-editor-card{max-width:720px}}@media (width<=900px){.topbar{flex-direction:row;align-items:center;gap:10px;height:64px;min-height:64px;padding:0 14px}.brand__logo{font-size:19px}.brand__logo:after,.topbar h1,.summary-item,.summary-divider{display:none}.summary{flex:1;justify-content:flex-end;gap:8px}.search-box{width:min(46vw,280px);height:38px}.toolbar-button--primary{width:40px;min-width:40px;padding:0;font-size:0}.toolbar-button--primary svg{width:18px;height:18px}.map-wrap{padding-top:64px}.view-tabs{width:auto;top:76px;left:12px;right:12px;overflow-x:auto}.view-tabs button{flex:none}.users-page{padding:18px;inset:64px 0 0}.status-legend{display:none}.details,.details--device{border-top:var(--hairline);border-left:0;border-radius:18px 18px 0 0;width:100%;height:min(78vh,720px);max-height:min(78vh,720px);padding:0;inset:auto 0 0;box-shadow:0 -18px 42px #0f172a24}.details:before{content:"";z-index:3;background:hsl(var(--border));border-radius:999px;width:44px;height:4px;margin:8px auto 0;display:block;position:sticky;top:8px}.details>h2,.details>.eyebrow,.details>.device-form,.details>.device-status,.details>.danger-button{margin-left:18px;margin-right:18px}.details>h2{margin-top:18px}.device-panel-head{padding:18px 56px 16px 20px}.device-panel-title h2{font-size:20px}.details__close{top:18px;right:18px}.device-panel-tabs{grid-template-columns:repeat(5,minmax(76px,1fr));overflow-x:auto}.device-panel-tabs button{height:56px}.details__body{padding:18px 18px 26px}}@media (width<=560px){.topbar{gap:8px}.brand{flex:none}.brand__logo{font-size:18px}.search-box{width:42vw;min-width:132px;padding:0 10px}.search-box input{font-size:13px}.refresh-button,.view-tabs{display:none}.users-page{padding:14px;inset:64px 0 0}.users-page-head{flex-direction:column;align-items:flex-start}.users-create-button{width:100%}.snmp-ports-wrap{margin-right:-18px;padding-right:18px}.snmp-ports-table{min-width:0}.connection-grid{grid-template-columns:minmax(0,1fr) 68px 42px}.backup-panel__summary{flex-wrap:wrap;grid-template-columns:42px minmax(0,1fr);align-items:center;padding:16px}.backup-panel__summary .panel-action-button{grid-column:1/-1;justify-self:stretch;width:100%;min-width:0;max-width:none}.backup-panel__status{grid-template-columns:minmax(0,1fr);gap:18px;padding:20px}.backup-panel__status-item,.backup-panel__status-item:first-child,.backup-panel__status-item:last-child{border-right:0;padding:0}.backup-panel__head{padding:20px 20px 0}.backup-panel__history-empty{margin:20px}}@media (width<=760px){.app-shell{width:auto;height:auto;min-height:0;position:fixed;inset:0}.map-screen{height:100%;min-height:0}.map-wrap{height:100%;padding:58px 0 38px}.pixi-map{height:100%;min-height:0}.pixi-map__canvas{cursor:default}.view-tabs{z-index:18;-webkit-overflow-scrolling:touch;scrollbar-width:none;border-radius:8px;width:auto;max-width:calc(100vw - 20px);padding:4px;display:flex;top:66px;left:10px;right:10px;overflow-x:auto}.view-tabs::-webkit-scrollbar{display:none}.view-tabs button{white-space:nowrap;min-width:74px;height:34px;padding:0 10px;font-size:12px}.status-legend{display:none}.details,.details--device{height:min(64svh,560px);max-height:min(64svh,560px)}}@media (width<=430px){.topbar{height:56px;min-height:56px;padding:0 10px}.brand__logo{font-size:16px}.search-box{gap:6px;width:min(48vw,190px);min-width:118px;height:34px;padding:0 9px}.search-box svg{width:17px;height:17px}.search-box input{font-size:12px}.theme-button{width:34px;height:34px}.map-wrap{padding:56px 0 38px}.pixi-map{min-height:0}.view-tabs{max-width:calc(100vw - 16px);top:62px;left:8px;right:8px}.view-tabs button{min-width:68px;height:32px;padding:0 8px;font-size:11px}}@media (width<=760px){.topology-view--inventory{top:112px}}@media (width<=560px){.topology-view--inventory{top:70px}}@media (width<=760px){.app-shell:has(.inventory-page) .topbar{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;min-height:78px;padding:0 14px;display:grid}.app-shell:has(.inventory-page) .brand{gap:0;min-width:0}.app-shell:has(.inventory-page) .brand__logo:after{display:none}.app-shell:has(.inventory-page) .topbar h1{display:none}.app-shell:has(.inventory-page) .summary{flex-wrap:nowrap;justify-content:flex-end;gap:8px;width:auto;min-width:0}:is(.app-shell:has(.inventory-page) .theme-button,.app-shell:has(.inventory-page) .avatar-button){flex:0 0 38px;width:38px;height:38px}.app-shell:has(.inventory-page) .avatar-menu{flex:none}.app-shell:has(.inventory-page) .avatar-menu__panel{max-width:calc(100vw - 28px);right:0}.inventory-page{gap:13px;padding:18px 15px 16px;inset:78px 0 0;overflow-x:hidden}.inventory-page .users-page-head{grid-template-columns:minmax(0,1fr);gap:12px;display:grid}.inventory-page .users-panel-title{grid-template-columns:28px minmax(0,1fr);align-items:start;gap:9px;width:100%;min-width:0;display:grid}.inventory-page .users-panel-title h2{font-size:20px;font-weight:800;line-height:1.15}.inventory-page .users-panel-title .device-panel-icon{box-sizing:border-box;width:24px;height:24px;box-shadow:none;color:hsl(var(--foreground));background:0 0;border:0;border-radius:0;grid-area:1/1;margin-top:1px}.inventory-page .users-panel-title .device-panel-icon svg{stroke-width:2.2px;width:24px;height:24px}.inventory-title-text{grid-area:1/2;min-width:0;display:contents}.inventory-title-text h2{grid-area:1/2}.inventory-title-text p{min-width:0;color:hsl(var(--muted-foreground));grid-area:2/1/auto/-1;justify-content:flex-start;align-items:center;gap:12px;margin:9px 0 0;font-size:12px;font-weight:600;line-height:18px;display:flex}.inventory-title-text p button{min-width:0;min-height:18px;color:hsl(var(--muted-foreground));font:inherit;cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:0;border-bottom:2px solid #0000;border-radius:0;flex:0 auto;grid-template-columns:12px max-content;justify-content:flex-start;align-items:center;column-gap:5px;padding:0 0 3px;line-height:18px;display:inline-grid}.inventory-title-text p button.is-active{color:hsl(var(--foreground));border-bottom-color:hsl(var(--primary));background:0 0;padding:0 0 3px}.inventory-title-text p button:focus-visible{outline:2px solid hsl(var(--ring) / .34);outline-offset:2px}.inventory-title-text p span{align-items:center;line-height:18px;display:inline-flex}.inventory-title-bullet{background:currentColor;border-radius:999px;justify-self:center;width:10px;height:10px;display:block}.inventory-title-filter--all .inventory-title-bullet{color:#3b82f6}.inventory-title-filter--available .inventory-title-bullet{color:#22c55e}.inventory-title-filter--unavailable .inventory-title-bullet{color:#ef4444}.inventory-title-text p span{white-space:nowrap;min-width:0}.inventory-title-text p strong{color:hsl(var(--primary));margin-left:2px;font-weight:800}.inventory-search-box{border-radius:8px;width:100%;max-width:none;height:42px}.inventory-search-box input{min-width:0;font-size:16px}.inventory-toolbar{display:none}.inventory-filter-line{flex-direction:column;align-items:stretch;gap:8px}.inventory-type-filter,.inventory-status-filter{scrollbar-width:none;gap:6px;width:100%;padding-bottom:2px;overflow-x:auto}.inventory-type-filter::-webkit-scrollbar{display:none}.inventory-status-filter::-webkit-scrollbar{display:none}.inventory-type-filter button,.inventory-status-filter button{border:1px solid hsl(var(--border) / .78);background:hsl(var(--muted) / .52);color:#64748b;white-space:nowrap;min-height:35px;box-shadow:none;-webkit-tap-highlight-color:transparent;border-radius:8px;flex:none;padding:0 16px;font-size:13px;font-weight:700}.inventory-type-filter button.is-active,.inventory-status-filter button.is-active{border-color:hsl(var(--border) / .78);background:hsl(var(--muted) / .52);color:hsl(var(--primary));box-shadow:none}.inventory-filter-divider,.inventory-summary{display:none}.inventory-summary>span{min-height:0;box-shadow:none;background:0 0;border:0;border-radius:0;align-items:center;gap:8px;padding:0}.inventory-summary-text{color:#64748b;align-items:center;gap:6px;font-size:17px;font-weight:600;line-height:1;display:inline-flex}.inventory-summary .monitoring-dot{border:0;flex-basis:12px;order:2;width:12px;height:12px}.inventory-summary .monitoring-dot--online{border-color:#22c55e24}.inventory-summary strong{color:hsl(var(--primary));font-size:17px;line-height:1;display:inline}.inventory-table-wrap{box-shadow:none;background:0 0;border:0;border-radius:0;overflow:visible}.inventory-table{border-collapse:collapse;border-spacing:0;min-width:0}.inventory-table thead{display:none}.inventory-table tbody,.inventory-table tr,.inventory-table td{display:block;width:100%!important;min-width:0!important}.inventory-table tr.inventory-row{box-sizing:border-box;border:0;border-bottom:1px solid hsl(var(--border) / .58);min-height:52px;box-shadow:none;background:0 0;border-radius:0;grid-template-columns:18px minmax(0,1fr) 20px;align-items:center;gap:9px;padding:0 1px;display:grid}.inventory-table tr.inventory-row:first-child{border-top:1px solid hsl(var(--border) / .58)}.inventory-table tr.inventory-row:hover{background:hsl(var(--muted) / .22);box-shadow:none}.inventory-table tr.inventory-row:last-child{border-bottom:0}.inventory-table td{border:0;padding:0}.inventory-topology-table-wrap{border:1px solid hsl(var(--border));background:hsl(var(--card));border-radius:8px;height:calc(100% - 55px);overflow:auto}.inventory-topology-table{min-width:1020px}.inventory-topology-table thead{display:table-header-group}.inventory-topology-table tbody{display:table-row-group}.inventory-topology-table tr,.inventory-topology-table tr.inventory-row{border-radius:0;min-height:0;padding:0;display:table-row}.inventory-topology-table td,.inventory-topology-table th{border-bottom:1px solid hsl(var(--border) / .58);padding:6px 8px;display:table-cell;width:auto!important}.inventory-table td:first-child{grid-area:1/2;min-width:0}.inventory-table td:nth-child(2){display:none}.inventory-table td:nth-child(3){grid-area:1/1;place-self:stretch center;width:auto!important;min-width:0!important}.inventory-table td.inventory-mobile-open{color:#7b879d;grid-area:1/3;justify-content:flex-end;align-items:center;display:flex;width:auto!important;min-width:0!important}.inventory-mobile-open svg{stroke-width:2.3px;width:18px;height:18px}.inventory-table td:nth-child(4),.inventory-table td:nth-child(5),.inventory-table td:nth-child(6),.inventory-table td:nth-child(7){display:none}.inventory-topology-table td,.inventory-topology-table td:first-child,.inventory-topology-table td:nth-child(2),.inventory-topology-table td:nth-child(3),.inventory-topology-table td:nth-child(4),.inventory-topology-table td:nth-child(5),.inventory-topology-table td:nth-child(6),.inventory-topology-table td:nth-child(7),.inventory-topology-table th{min-width:0;width:auto!important;display:table-cell!important}.inventory-table td:before{display:none}.inventory-device-name{flex-direction:row;align-items:center;gap:4px;width:100%;min-height:52px}.inventory-topology-table .inventory-device-name{min-height:0}.inventory-device-name strong{min-width:0;color:hsl(var(--foreground));text-overflow:ellipsis;white-space:nowrap;font-size:16px;font-weight:500;line-height:1.22;overflow:hidden}.inventory-device-name .inventory-mobile-ip{color:#7182a0;flex:none;font-size:13px;font-weight:500;line-height:1;display:inline}.inventory-table .ip-range-pills{justify-content:flex-end}.inventory-status-cell{text-align:right;justify-content:center;align-items:center;gap:4px;width:100%;height:52px}.inventory-status-cell .inventory-status-badge{border-radius:999px;width:10px;height:10px;min-height:0;padding:0;font-size:0;line-height:0;display:block;overflow:hidden}.inventory-status-cell .inventory-status-badge.is-available{background:#22c55e}.inventory-status-cell .inventory-status-badge.is-unavailable{background:#ef4444}.inventory-status-cell .inventory-status-badge.is-unknown{background:#94a3b8}.inventory-status-duration{display:none}.app-shell input,.app-shell select,.app-shell textarea{font-size:16px}.inventory-topology--main{overflow:hidden}.inventory-topology-head{min-height:54px;padding:7px 10px}.inventory-topology-head__device h3{font-size:13px}.inventory-topology-head__actions{gap:1px}.inventory-inline-icon{width:40px;height:40px}.inventory-topology-search-bar{padding:8px 10px}.inventory-topology-search{min-height:46px}.inventory-topology-search input{font-size:16px}.inventory-topology-search-clear{width:40px;height:40px}.inventory-topology-search-results{border-radius:8px;max-height:min(55dvh,420px)}.inventory-topology-search-result{min-height:60px;padding:8px 10px}.inventory-topology-search-result strong{font-size:14px}.inventory-topology-table-wrap{display:none}.inventory-topology-mobile-list{border-top:1px solid hsl(var(--border));background:hsl(var(--card));flex:auto;align-content:start;min-height:0;display:grid;overflow:auto}.inventory-topology-mobile-card{border-bottom:1px solid hsl(var(--border) / .62);background:0 0;margin-left:0;position:relative}.inventory-topology-mobile-card.is-focused{background:#2563eb14;box-shadow:inset 3px 0 #2563eb}.inventory-topology-mobile-card.has-cycle{background:#fb923c1f}.inventory-topology-mobile-trunk,.inventory-topology-mobile-branch,.inventory-topology-mobile-guide{z-index:1;pointer-events:none;background:#cbd5e1;width:1px;position:absolute}.inventory-topology-mobile-trunk{top:50%;bottom:0;left:calc(19px + var(--topology-indent,0px))}.inventory-topology-mobile-branch{top:0;left:calc(19px + var(--topology-parent-indent,0px));height:50%}.inventory-topology-mobile-branch.continues{height:100%}.inventory-topology-mobile-branch:after{content:"";border-top:1px solid #cbd5e1;border-radius:2px;width:12px;position:absolute;top:calc(100% - 1px);left:0}.inventory-topology-mobile-branch.continues:after{top:50%}.inventory-topology-mobile-guide{top:0;bottom:0;left:calc(19px + var(--topology-guide-indent,0px))}.inventory-topology-mobile-card__main{z-index:2;min-height:74px;padding:8px 14px 8px calc(14px + var(--topology-indent,0px));grid-template-columns:10px minmax(0,1fr);align-items:center;gap:10px;display:grid;position:relative}.inventory-topology-mobile-card__device{min-width:0;color:hsl(var(--foreground));text-align:left;background:0 0;border:0;gap:2px;padding:0;display:grid}.inventory-topology-mobile-card__device strong,.inventory-topology-mobile-card__device span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.inventory-topology-mobile-card__device strong{font-size:15px;font-weight:850}.inventory-topology-mobile-card__device span{color:hsl(var(--muted-foreground));font-family:var(--font-mono);font-size:12px;font-weight:700}.inventory-topology-mobile-card__port{color:#047857;width:max-content;max-width:100%;min-height:18px;font-family:var(--font-mono);text-overflow:ellipsis;white-space:nowrap;background:#ecfdf5;border-radius:5px;align-items:center;padding:0 5px;font-size:10px;font-weight:700;display:inline-flex;overflow:hidden}.inventory-topology-mobile-card__port.is-empty{background:hsl(var(--muted));color:hsl(var(--muted-foreground))}.dark .inventory-topology-search-bar,.dark .inventory-topology-search,.dark .inventory-topology-search-results{border-color:hsl(var(--border));background:hsl(var(--card))}.dark .inventory-topology-search input,.dark .inventory-topology-search-result,.dark .inventory-topology-search-result strong{color:hsl(var(--foreground))}.dark .inventory-topology-search-result:hover,.dark .inventory-topology-search-result:focus-visible{background:hsl(var(--muted))}.dark .inventory-topology-mobile-card__port{color:#6ee7b7;background:#10b9811f}}@media (width<=430px){.auth-shell{padding:14px}.auth-panel{width:100%;max-width:100%;padding:20px}.inventory-page{padding:10px}.inventory-page .users-panel-title h2{font-size:17px}.inventory-summary{flex-wrap:wrap}.inventory-table tr.inventory-row{padding:0 1px}.inventory-modal-backdrop{padding:0}.inventory-modal{border-width:0;border-radius:0;height:100dvh}}@media (width<=760px){.topbar{flex-wrap:nowrap;gap:8px;height:64px;min-height:64px;padding:0 12px}.brand{flex:none;gap:0}.brand__logo{font-size:18px}.summary{flex-wrap:nowrap;flex:auto;justify-content:flex-end;gap:6px;min-width:0}.search-box{flex:auto;width:auto;min-width:0}.toolbar-button--primary,.refresh-button{display:none}.theme-button,.avatar-button{flex:none}.view-tabs{grid-template-columns:repeat(4,minmax(0,1fr));gap:4px;display:grid;top:72px;overflow:visible}.view-tabs button{white-space:nowrap;width:100%;min-width:0;padding:0 4px;font-size:11px}.topology-view--inventory{top:122px}}@media (width<=430px){.topbar{height:56px;min-height:56px;padding:0 10px}.brand__logo{font-size:16px}.theme-button,.avatar-button{width:34px;height:34px}.view-tabs{top:64px}.topology-view--inventory{top:112px}}.inventory-comments{gap:12px;display:grid}.inventory-overview-toolbar{justify-content:space-between;align-items:center;gap:10px;display:flex}.inventory-overview-toolbar .inventory-panel-actions{flex:auto}.inventory-device-edit{min-height:30px;color:hsl(var(--primary));font:inherit;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:6px;align-items:center;gap:5px;margin:0 0 12px auto;padding:0 8px;font-size:13px;font-weight:650;display:inline-flex}.inventory-device-edit svg{width:15px;height:15px}.inventory-device-edit:hover{border-color:hsl(var(--primary));background:hsl(var(--primary));color:hsl(var(--primary-foreground))}.inventory-device-editor{gap:14px;display:grid}.inventory-device-editor h3{margin:0}.inventory-device-editor header p{color:var(--muted,#64748b);margin:5px 0 0;font-size:13px}.inventory-device-editor__grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.inventory-device-editor__section-title{color:hsl(var(--foreground));padding-top:4px;font-size:13px}.inventory-device-editor label{color:var(--muted,#64748b);gap:5px;font-size:12px;display:grid}.inventory-device-editor input,.inventory-device-editor select,.inventory-device-editor textarea{box-sizing:border-box;border:1px solid var(--border,#dbe5f2);background:var(--surface,#fff);width:100%;min-height:36px;color:inherit;font:inherit;padding:7px 9px}.inventory-device-editor textarea{resize:vertical;min-height:82px}.inventory-device-editor footer{justify-content:flex-end;gap:8px;display:flex}.inventory-device-editor footer>button:first-child{border:1px solid var(--border,#dbe5f2);min-height:34px;color:inherit;font:inherit;cursor:pointer;background:0 0;padding:0 10px}.dark .inventory-device-editor input,.dark .inventory-device-editor select,.dark .inventory-device-editor textarea{background:#111827;border-color:#293548}@media (width<=620px){.inventory-device-editor__grid{grid-template-columns:1fr}}.inventory-comment-compose,.inventory-comment{border:1px solid hsl(var(--border));background:hsl(var(--card));box-shadow:0 1px 2px hsl(var(--foreground) / .03);border-radius:8px}.inventory-comment-compose-shell{z-index:3;background:hsl(var(--card));box-shadow:0 -14px 24px hsl(var(--background) / .9);margin-top:auto;padding:14px 0 1px;position:sticky;bottom:-1px}.inventory-comment-compose{padding:12px}.inventory-comment-compose textarea{box-sizing:border-box;resize:vertical;width:100%;min-height:76px;color:hsl(var(--foreground));font:inherit;background:0 0;border:0;outline:0}.inventory-comment-compose textarea::placeholder{color:hsl(var(--muted-foreground))}.inventory-comment-compose footer{justify-content:space-between;gap:8px;margin-top:8px;display:flex}.inventory-comment-photo-button,.inventory-comment-send{border:1px solid hsl(var(--border));min-height:34px;color:hsl(var(--foreground));font:inherit;cursor:pointer;background:0 0;border-radius:6px;align-items:center;gap:6px;padding:0 10px;font-weight:600;display:inline-flex}.inventory-comment-photo-button:hover{border-color:hsl(var(--primary) / .4);background:hsl(var(--primary) / .07);color:hsl(var(--primary))}.inventory-comment-send{border-color:hsl(var(--primary));background:hsl(var(--primary));color:hsl(var(--primary-foreground));margin-left:auto}.inventory-comment-photo-button:disabled,.inventory-comment-send:disabled{opacity:.5;cursor:default}.inventory-comment-list{gap:10px;display:grid}.inventory-comment{gap:10px;padding:12px;display:flex}.inventory-comment-avatar{background:hsl(var(--primary) / .12);width:32px;height:32px;color:hsl(var(--primary));border-radius:50%;flex:none;place-items:center;font-size:11px;font-weight:700;display:grid}.inventory-comment-main{flex:1;min-width:0}.inventory-comment-main header{align-items:baseline;gap:8px;display:flex}.inventory-comment-main time{color:hsl(var(--muted-foreground));font-size:12px}.inventory-comment-main p{white-space:pre-wrap;overflow-wrap:anywhere;margin:7px 0 0}.inventory-comment-photos{grid-template-columns:repeat(2,minmax(0,1fr));gap:4px;max-width:420px;margin-top:10px;display:grid}.inventory-comment-photos--1{grid-template-columns:minmax(0,220px)}.inventory-comment-photos a,.inventory-comment-photo{background:hsl(var(--muted));border-radius:5px;min-height:100px;position:relative;overflow:hidden}.inventory-comment-photos img{object-fit:cover;width:100%;height:100%;min-height:100px;display:block}.inventory-comment-photos--3 a:first-child{grid-row:span 2}.inventory-comment-photo button{color:#fff;cursor:pointer;background:#0f172ab8;border:0;border-radius:50%;place-items:center;width:26px;height:26px;display:grid;position:absolute;top:5px;right:5px}.dark .inventory-comment-compose,.dark .inventory-comment{background:hsl(var(--card));border-color:hsl(var(--border))}.map-inventory-panel.is-comments-tab .map-inventory-panel__content{padding-bottom:176px}.map-inventory-panel.is-comments-tab .inventory-comment-compose-shell{z-index:34;box-sizing:border-box;background:hsl(var(--background) / .98);width:min(720px,100vw);box-shadow:0 -12px 28px hsl(var(--background) / .88);margin:0;padding:14px 22px 18px;position:fixed;bottom:0;right:0}.map-inventory-panel.is-comments-tab .inventory-comment-compose{background:hsl(var(--card))}@media (width<=760px){.inventory-modal__tabs,.map-inventory-panel .inventory-modal__tabs{-webkit-overflow-scrolling:touch;scrollbar-width:none;gap:18px;width:calc(100% + 4px);margin-left:-2px;padding:0 2px;overflow:auto hidden}.inventory-modal__tabs::-webkit-scrollbar{display:none}.inventory-modal__tabs button{flex:none;min-width:max-content}.inventory-device-edit{min-height:32px;margin-bottom:10px}.inventory-comment-compose-shell{padding-top:10px}.inventory-comment-compose{padding:10px}.inventory-comment-compose textarea{min-height:68px}.inventory-comment-main header{gap:2px;display:grid}.inventory-comment-photos{max-width:100%}.map-inventory-panel.is-comments-tab .inventory-comment-compose-shell{width:100vw;padding:10px 16px 14px}.app-shell{--mobile-header-height:64px;--mobile-nav-height:calc(60px + env(safe-area-inset-bottom,0px))}.view-tabs{display:none}.mobile-bottom-nav{z-index:30;box-sizing:border-box;height:var(--mobile-nav-height);border-top:1px solid hsl(var(--border));background:hsl(var(--card) / .98);box-shadow:none;padding-bottom:env(safe-area-inset-bottom,0px);grid-template-columns:repeat(4,minmax(0,1fr));align-items:stretch;display:grid;position:fixed;bottom:0;left:0;right:0}.mobile-bottom-nav button{min-width:0;color:hsl(var(--muted-foreground));font:inherit;cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:0;align-content:center;justify-items:center;gap:3px;font-size:10px;font-weight:650;line-height:1.1;display:grid}.mobile-bottom-nav button svg{stroke-width:2px;width:20px;height:20px}.mobile-bottom-nav button.is-active{color:hsl(var(--primary))}.mobile-bottom-nav button:focus-visible{outline:2px solid hsl(var(--ring) / .42);outline-offset:-3px}.map-wrap{padding-top:var(--mobile-header-height);padding-bottom:calc(38px + var(--mobile-nav-height))}.map-segment-tabs{bottom:var(--mobile-nav-height)}.topology-view--inventory,.topology-view.list-view,.topology-view.monitoring-view{top:var(--mobile-header-height);bottom:var(--mobile-nav-height)}.topology-view--inventory{background:hsl(var(--card));box-shadow:none;border:0;border-radius:0;padding:0;left:0;right:0}.topology-view--inventory .inventory-topology,.topology-view--inventory .inventory-topology--main{box-shadow:none;border:0;border-radius:0}.topology-view--inventory .inventory-topology-search input{font-size:14px;font-weight:400}.topology-view.monitoring-view{box-sizing:border-box;background:hsl(var(--card));box-shadow:none;border:0;border-radius:0;padding:22px 18px;left:0;right:0}.app-shell:has(.map-inventory-panel) .mobile-bottom-nav{display:none}.app-shell:has(.map-inventory-panel) .map-wrap{padding-bottom:38px}.app-shell:has(.map-inventory-panel) .map-segment-tabs{bottom:0}.map-inventory-panel__back{width:32px;height:32px;color:hsl(var(--primary));cursor:pointer;background:0 0;border:0;border-radius:50%;place-items:center;padding:0;display:inline-grid}.map-inventory-panel__back svg{stroke-width:2.2px;width:18px;height:18px}.map-inventory-panel__back:hover,.map-inventory-panel__back:focus-visible{background:hsl(var(--primary) / .08);outline:0}.map-inventory-panel__remove{width:28px;height:28px}.map-inventory-panel__remove svg{width:17px;height:17px}.map-inventory-panel .map-inventory-panel__header{grid-template-columns:32px minmax(0,1fr) auto;align-items:center;gap:9px;margin:0 0 18px;padding:0;display:grid}.map-inventory-panel .inventory-modal__title{grid-column:2;min-width:0;display:block}.map-inventory-panel .inventory-modal__icon{display:none}.map-inventory-panel .inventory-modal__title h2{text-overflow:ellipsis;white-space:nowrap;font-size:17px;font-weight:700;line-height:1.2;overflow:hidden}.map-inventory-panel .inventory-modal__title p{margin-top:3px;font-size:15px;font-weight:650;line-height:1.2}.map-inventory-panel__actions{grid-column:3}.map-inventory-panel__content{margin-right:-12px;padding-right:12px}.inventory-overview-toolbar .inventory-panel-actions{margin:0}.inventory-overview-toolbar .inventory-device-edit{justify-content:center;width:34px;height:34px;min-height:34px;margin:0;padding:0}.inventory-overview-toolbar .inventory-device-edit svg{width:17px;height:17px}.inventory-overview-toolbar .inventory-device-edit span{clip:rect(0, 0, 0, 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}}@media (width<=430px){.app-shell{--mobile-header-height:56px}}@media (width<=760px){.app-shell .topbar .brand{display:none}.app-shell:has(.map-screen) .topbar{gap:10px;padding:0 14px}.app-shell:has(.map-screen) .brand__logo{font-size:18px;font-weight:750}.app-shell:has(.map-screen) .summary{gap:8px}.app-shell:has(.map-screen) .search-box{border-color:hsl(var(--border));background:hsl(var(--muted) / .44);border-radius:10px;gap:8px;height:42px;padding:0 12px}.app-shell:has(.map-screen) .search-box svg{width:18px;height:18px;color:hsl(var(--muted-foreground))}.app-shell:has(.map-screen) .search-box input{font-size:15px;font-weight:500}.app-shell:has(.map-screen) .search-box input::placeholder{color:hsl(var(--muted-foreground))}.app-shell:has(.map-screen) .search-box:focus-within{border-color:hsl(var(--primary) / .58);background:hsl(var(--card));box-shadow:0 0 0 3px hsl(var(--primary) / .1)}.app-shell:has(.map-screen) .avatar-button{width:42px;height:42px;font-size:14px}}@media (width<=430px){.app-shell:has(.map-screen) .topbar{padding:0 12px}.app-shell:has(.map-screen) .search-box{height:38px;padding:0 10px}.app-shell:has(.map-screen) .search-box input{font-size:14px}.app-shell:has(.map-screen) .avatar-button{width:38px;height:38px}}.map-search{z-index:80;width:420px;position:relative}.map-search .search-box{width:100%}.map-search--mobile-only{display:none}.map-search__results{border:1px solid hsl(var(--border));background:hsl(var(--card));border-radius:10px;width:100%;max-height:min(360px,100dvh - 90px);padding:4px;position:absolute;top:calc(100% + 8px);left:0;overflow-y:auto;box-shadow:0 14px 30px #0f172a29}.map-search__result{width:100%;min-height:52px;color:hsl(var(--foreground));font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:7px;grid-template-columns:9px minmax(0,1fr);align-items:center;gap:10px;padding:8px 10px;display:grid}.map-search__result:hover,.map-search__result:focus-visible{background:hsl(var(--muted));outline:0}.map-search__result>span:last-child{gap:3px;min-width:0;display:grid}.map-search__result strong,.map-search__result small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.map-search__result strong{font-size:13px;font-weight:750}.map-search__result small{color:hsl(var(--muted-foreground));font-size:12px}.map-search__status{background:#94a3b8;border-radius:50%;width:9px;height:9px}.map-search__status--online{background:#22c55e}.map-search__status--offline{background:#ef4444}@media (width<=900px){.map-search{width:min(100%,360px)}}@media (width<=760px){.app-shell:has(.mobile-bottom-nav) .map-search{flex:auto;width:auto;min-width:0}.map-search--mobile-only{display:block}.map-list-page .inventory-search-box,.topology-view--inventory .inventory-topology-search-bar{display:none}.map-search__results{border-radius:9px;top:calc(100% + 6px)}.map-search__result{min-height:48px;padding:7px 9px}input:not([type=checkbox]):not([type=radio]),textarea,select{font-size:16px!important}.app-shell:has(.mobile-bottom-nav) .topbar{align-items:center;gap:8px;height:64px;min-height:64px;padding:0 12px;display:flex}.app-shell:has(.mobile-bottom-nav) .summary{flex-wrap:nowrap;flex:auto;justify-content:flex-end;gap:6px;min-width:0}.app-shell:has(.mobile-bottom-nav) .search-box{background:#fffffff5;border-color:#dbe3ef;border-radius:8px;gap:10px;height:44px;padding:0 12px}.app-shell:has(.mobile-bottom-nav) .search-box svg{color:#64748b;width:18px;height:18px}.app-shell:has(.mobile-bottom-nav) .search-box input{font-size:16px;font-weight:400}.app-shell:has(.mobile-bottom-nav) .avatar-button{flex:0 0 36px;width:36px;height:36px;font-size:14px}.map-list-page.inventory-page{inset:64px 0 0}}@media (width<=430px){.app-shell:has(.mobile-bottom-nav) .topbar{height:56px;min-height:56px;padding:0 10px}.app-shell:has(.mobile-bottom-nav) .search-box{height:38px;padding:0 10px}.app-shell:has(.mobile-bottom-nav) .search-box input{font-size:14px}.app-shell:has(.mobile-bottom-nav) .avatar-button{flex-basis:34px;width:34px;height:34px}.map-list-page.inventory-page{inset:56px 0 0}}@media (width<=760px){.app-shell:has(.inventory-page) .topbar{align-items:center;gap:8px;height:64px;min-height:64px;padding:0 12px;display:flex}.app-shell:has(.inventory-page) .summary{flex-wrap:nowrap;flex:auto;justify-content:flex-end;gap:6px;min-width:0}.app-shell:has(.inventory-page) .map-search{flex:auto;width:auto;min-width:0}.app-shell:has(.inventory-page) .search-box{background:#fffffff5;border-color:#dbe3ef;border-radius:8px;gap:10px;height:44px;padding:0 12px}.app-shell:has(.inventory-page) .search-box svg{color:#64748b;width:18px;height:18px}.app-shell:has(.inventory-page) .search-box input{font-size:16px;font-weight:400}.app-shell:has(.inventory-page) .avatar-button{flex:0 0 36px;width:36px;height:36px;font-size:14px}.inventory-page:not(.map-list-page){inset:64px 0 var(--mobile-nav-height)}.inventory-page:not(.map-list-page) .inventory-search-box{display:none}}@media (width<=430px){.app-shell:has(.inventory-page) .topbar{height:56px;min-height:56px;padding:0 10px}.app-shell:has(.inventory-page) .search-box{height:38px;padding:0 10px}.app-shell:has(.inventory-page) .search-box input{font-size:14px}.app-shell:has(.inventory-page) .avatar-button{flex-basis:34px;width:34px;height:34px}.inventory-page:not(.map-list-page){inset:56px 0 var(--mobile-nav-height)}}@media (width<=760px){.map-list-page.inventory-page{padding:22px 18px 16px}.map-list-page .map-list-page__head{min-height:0;margin:0 0 14px;display:block}.map-list-page .map-list-page__title{align-items:center;gap:8px;display:inline-flex}.map-list-page .map-list-page__title>svg{flex:0 0 22px;width:22px;height:22px}.map-list-page .map-list-page__title h2{white-space:nowrap;margin:0;font-size:18px;font-weight:800;line-height:1.15}.map-list-page .map-list-page__summary{display:block}.map-list-page .map-list-page__summary p{align-items:center;gap:12px;margin:14px 0 0;display:flex}.dark .inventory-table .inventory-status-cell .inventory-status-badge.is-available{color:#0000;background:#22c55e}.dark .inventory-table .inventory-status-cell .inventory-status-badge.is-unavailable,.dark .inventory-table .inventory-status-cell .inventory-status-badge.is-unknown{color:#0000;background:#ef4444}:is(.dark .app-shell:has(.mobile-bottom-nav) .search-box,.dark .app-shell:has(.inventory-page) .search-box){border-color:hsl(var(--input));background:hsl(var(--card));color:hsl(var(--foreground))}.dark .app-shell:has(.mobile-bottom-nav) .search-box svg{color:hsl(var(--muted-foreground))}.dark .app-shell:has(.inventory-page) .search-box svg{color:hsl(var(--muted-foreground))}.dark .app-shell:has(.mobile-bottom-nav) .search-box input::placeholder{color:hsl(var(--muted-foreground))}.dark .app-shell:has(.inventory-page) .search-box input::placeholder{color:hsl(var(--muted-foreground))}:is(.dark .app-shell:has(.mobile-bottom-nav) .search-box input,.dark .app-shell:has(.inventory-page) .search-box input){color:hsl(var(--foreground))}}.dark .avatar-menu__panel{border-color:hsl(var(--border));background:hsl(var(--card));box-shadow:0 14px 34px #00000057}.dark .avatar-menu__user{border-bottom-color:hsl(var(--border))}.dark .avatar-menu__user strong,.dark .avatar-menu__panel button{color:hsl(var(--foreground))}.dark .avatar-menu__user span{color:hsl(var(--muted-foreground))}.dark .avatar-menu__panel button:hover{background:hsl(var(--muted))}.dark .avatar-menu__panel .avatar-menu__logout:hover{background:#ef444424}.topbar-view-tabs{background:#f8fafc;border:1px solid #dbe3ef;border-radius:9px;gap:2px;padding:3px}.topbar-view-tabs button{color:#52637b;border:1px solid #0000;font-weight:650}.topbar-view-tabs button:hover{color:#1d4ed8;background:#eff6ff}.topbar-view-tabs button.is-active{color:#1d6df2;background:#eaf2ff;border-color:#cfe0ff;box-shadow:0 1px 3px #2563eb1a}.status-legend__heading{height:0}.status-legend__toggle{border-radius:6px;place-items:center;width:26px;height:26px;margin:0;padding:0;display:grid;position:absolute;top:7px;left:50%;transform:translate(-50%)}.status-legend__toggle:hover{color:#2563eb;background:#eff6ff}.status-legend--collapsed{padding:8px 20px}.status-legend--collapsed .status-legend__heading{height:0}.status-legend--collapsed .status-legend__toggle{margin:0}.topology-view--inventory{background:#f8fafc;border:0;border-radius:0;inset:72px 0 0}.topology-view--inventory .inventory-topology,.topology-view--inventory .inventory-topology--main{background:0 0;border:0;border-radius:0}.inventory-topology-empty-state{text-align:center;flex:auto;align-content:center;justify-items:center;gap:8px;min-height:0;padding:24px;display:grid}.inventory-topology-empty-state__image{object-fit:contain;width:min(360px,100%);max-height:240px;margin-bottom:4px}.inventory-topology-empty-state__image--dark{display:none}.inventory-topology-empty-state h2{color:hsl(var(--foreground));margin:0;font-size:18px}.inventory-topology-empty-state p{max-width:360px;color:hsl(var(--muted-foreground));margin:0;font-size:14px;line-height:1.5}.dark .inventory-topology-empty-state__image--light{display:none}.dark .inventory-topology-empty-state__image--dark{display:block}.monitoring-dot--switch{background:#0ea5e9}.monitoring-dot--sfp-type{background:#f59e0b}.monitoring-view__title{align-items:center;gap:12px;display:inline-flex}.monitoring-view__title>svg{color:#0b1735;width:28px;height:28px}.monitoring-view__title h2{color:#0b1735;margin:0;font-size:22px;line-height:1.15}.monitoring-toolbar{margin-bottom:12px}.monitoring-type-filter{background:0 0;border:0;border-radius:0;gap:4px;padding:0}.monitoring-type-filter button{color:#52637b;border:0;border-radius:6px;align-items:center;gap:6px;height:28px;padding:0 8px;font-size:13px;font-weight:650;display:inline-flex}.monitoring-type-filter button:hover{color:#1d4ed8;background:#eff6ff}.monitoring-type-filter button.is-active{color:#1d4ed8;background:#dbeafe;box-shadow:inset 0 0 0 1px #bfdbfe}.monitoring-type-filter .monitoring-dot{flex-basis:10px;width:10px;height:10px}.monitoring-temperatures--page{gap:14px;margin:0;position:absolute;top:20px;right:30px}.monitoring-temperature-item{color:#64748b;background:0 0;border:0;border-radius:0;padding:0;font-size:13px;font-weight:400;position:relative;gap:6px!important}.monitoring-temperature-item+.monitoring-temperature-item:before{content:"";background:#dbe3ef;width:1px;height:14px;position:absolute;top:50%;left:-8px;transform:translateY(-50%)}.monitoring-temperature-item svg{color:#e11d48;width:14px;height:14px}.monitoring-temperature-name{white-space:nowrap}.monitoring-temperature-value{color:#334155;font-variant-numeric:tabular-nums;font-size:13px;font-weight:600;line-height:1}@media (width>=761px){.map-list-page.inventory-page,.topology-view.monitoring-view{box-shadow:none;background:#f8fafc;border:0;border-radius:0;inset:72px 0 0}.topology-view.monitoring-view{padding:22px 28px 28px}.map-list-page .inventory-search-box,.topology-view--inventory .inventory-topology-search-bar{display:none}.topbar{gap:18px}.topbar .brand{flex:0 auto;gap:14px;min-width:0}.topbar .brand__logo{white-space:nowrap;flex:none;align-items:center;display:inline-flex}.topbar .brand__logo:after{content:none}.topbar .summary{flex:auto;justify-content:flex-end;gap:12px}.topbar .map-search{flex:auto;width:auto}.topbar .map-search .search-box{width:100%}}@media (width<=760px){.monitoring-temperatures--page{justify-content:flex-start;margin:-4px 0 14px;position:static}}@media (width>=761px) and (width<=1600px){.topbar{padding:0 16px}.topbar .topbar-view-tabs button{padding:0 8px}.topbar .summary{gap:8px}}.status-legend:not(.status-legend--collapsed){padding:12px 20px 18px}.status-legend__heading{justify-content:center;height:18px;margin:0 0 12px;display:flex}.status-legend__toggle,.status-legend--collapsed .status-legend__toggle{place-items:center;width:18px;height:18px;min-height:18px;margin:0;padding:0;display:grid;position:static;transform:none}.status-legend__toggle svg{width:18px;height:18px}.status-legend--collapsed{min-height:42px;padding:12px 20px}.status-legend--collapsed .status-legend__heading{margin-bottom:0}.dark .inventory-modal__title p{color:#94a3b8}.dark .inventory-modal__table--overview code{background:hsl(var(--muted));color:hsl(var(--foreground))}.dark .inventory-modal{background:#0f172a;border-color:#94a3b838}.dark .inventory-modal__scroll{scrollbar-width:none}.dark .inventory-modal__scrollbar span{background:#475569;box-shadow:inset 0 0 0 1px #94a3b829}.dark .inventory-modal__close{color:#94a3b8;background:0 0}.dark .inventory-modal__close:hover{color:#e2e8f0;background:#94a3b824}.dark .inventory-modal__title h2,.dark .inventory-modal__table--overview td,.dark .inventory-link-card strong{color:#e2e8f0}.dark .inventory-modal__icon{color:#60a5fa;background:#3b82f624}.dark .inventory-modal__table--overview th{color:#94a3b8}.dark .inventory-modal__table--overview code,.dark .inventory-copy-value code{color:#dbeafe;box-shadow:none;background:#1e293beb;border:0}.dark .inventory-modal__tabs,.dark .inventory-modal__table th,.dark .inventory-modal__table td,.dark .inventory-modal__table-wrap,.dark .inventory-link-card{border-color:#94a3b838}.dark .inventory-panel-actions span{color:#94a3b8}.dark .inventory-inline-action{color:#93c5fd;background:0 0}.dark .inventory-inline-action:hover{color:#bfdbfe;background:#3b82f61f;border-color:#60a5fa4d}.dark .inventory-modal__table th,.dark .inventory-link-card{background:#0f172ab8}.dark .inventory-status-badge,.dark .inventory-vlan-badge,.dark .inventory-vlan-more,.dark .inventory-modal__table--overview code,.dark .inventory-modal__table--links code,.dark .inventory-link-direction{box-shadow:none;border:0}.dark .inventory-status-badge.is-available{color:#86efac;background:#22c55e29}.dark .inventory-status-badge.is-unavailable{color:#fca5a5;background:#ef444429}.dark .inventory-status-badge.is-unknown{color:#cbd5e1;background:#94a3b829}.dark .inventory-vlan-badge,.dark .inventory-vlan-more,.dark .inventory-modal__table--links code,.dark .inventory-link-direction{color:#e2e8f0;background:#1e293be6}.dark .inventory-link-direction.is-incoming{color:#7dd3fc;background:#0ea5e92e}.dark .inventory-link-direction.is-outgoing{color:#86efac;background:#10b9812e}.dark .inventory-vlan-badge.is-cameras{color:#7dd3fc;background:#0ea5e92e}.dark .inventory-vlan-badge.is-switches{color:#86efac;background:#10b9812e}.dark .inventory-vlan-badge.is-cash{color:#fcd34d;background:#f59e0b33}.dark .inventory-vlan-badge.is-energy{color:#fca5a5;background:#ef44442e}.dark .inventory-vlan-badge.is-remote{color:#fff;background:#dc2626d1}.dark .inventory-vlan-badge.is-cgb{color:#c4b5fd;background:#8b5cf633}.dark .inventory-vlan-badge.is-wifi{color:#bbf7d0;background:#22c55e2e}.dark .inventory-vlan-badge.is-elevators{color:#c7d2fe;background:#6366f133}.dark .inventory-vlan-badge.is-qinq{color:#99f6e4;background:#14b8a62e}.dark .inventory-vlan-badge.is-pppoe{color:#f9a8d4;background:#db277733}.dark .inventory-vlan-more{color:#93c5fd}.dark .inventory-vlan-tooltip{background:#0f172a;border-color:#94a3b83d;box-shadow:0 18px 42px #0000005c}.dark .inventory-copy-button{color:#93c5fd;background:#0f172a;border-color:#334155}.dark .inventory-copy-button:hover,.dark .inventory-copy-button.is-copied{color:#dbeafe;background:#172554;border-color:#60a5fa}@media (width<=760px){.inventory-link-port__prefix{display:none}.inventory-modal-backdrop{background:hsl(var(--background));-webkit-backdrop-filter:none;backdrop-filter:none;justify-content:stretch;align-items:stretch;padding:0}.inventory-modal{box-sizing:border-box;background:hsl(var(--background));width:100%;height:100dvh;max-height:none;box-shadow:none;border:0;border-radius:0}.inventory-modal__scroll{height:100%;max-height:none;padding:22px 18px 28px}.inventory-modal__header{z-index:5;-webkit-backdrop-filter:none;backdrop-filter:none;background:0 0;border-bottom:0;grid-template-columns:38px 58px minmax(0,1fr) 44px;gap:12px;margin:0 0 22px;padding:0;display:grid;position:relative;top:auto}.inventory-modal__back,.inventory-modal__menu{color:#475569;background:0 0;border:0;justify-content:center;align-items:center;display:inline-flex}.inventory-modal__back{width:38px;height:58px;padding:0}.inventory-modal__back svg{stroke-width:2.2px;width:27px;height:27px}.inventory-modal__menu{border:1px solid hsl(var(--border) / .82);background:hsl(var(--card) / .82);border-radius:10px;align-self:center;width:44px;height:44px}.inventory-modal__menu svg{width:23px;height:23px}.inventory-modal__title{grid-column:2/4;grid-template-columns:58px minmax(0,1fr);align-items:center;gap:14px;min-width:0;display:grid}.inventory-modal__icon{border-radius:13px;flex:0 0 58px;width:58px;height:58px}.inventory-modal__title h2{text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-size:24px;font-weight:700;line-height:1.18;overflow:hidden}.inventory-modal__title p{color:#64748b;margin-top:6px;font-size:18px;font-weight:600}.inventory-modal__close{display:none}.inventory-modal__tabs{z-index:4;border-bottom:1px solid hsl(var(--border));-webkit-backdrop-filter:none;backdrop-filter:none;scrollbar-width:none;background:0 0;flex-wrap:nowrap;gap:20px;margin:0 0 20px;padding:0;position:relative;top:auto;overflow:hidden}.inventory-modal__tabs::-webkit-scrollbar{display:none}.inventory-modal__tabs button{white-space:nowrap;border-bottom-width:2px;flex:0 auto;min-width:0;min-height:38px;padding:0 0 9px;font-size:15px;font-weight:800}.inventory-modal__tabs .inventory-modal__tab--changes{display:none}.inventory-panel-actions{color:#64748b;margin-bottom:22px;font-size:17px;line-height:1.4}.inventory-inline-action{vertical-align:middle;min-width:34px;min-height:34px}.inventory-modal__table-wrap{-webkit-overflow-scrolling:touch;overflow-x:auto}.inventory-overview-mobile{display:none}.inventory-overview-panel>.inventory-modal__table-wrap{border:1px solid hsl(var(--border) / .72);background:hsl(var(--card) / .9);border-radius:10px;display:block;overflow:hidden;box-shadow:0 4px 14px #0f172a09}.inventory-ports-mobile{display:none}.inventory-ports-panel>.inventory-modal__table-wrap{border:1px solid hsl(var(--border) / .72);background:hsl(var(--card) / .9);border-radius:10px;display:block;overflow:auto hidden;box-shadow:0 4px 14px #0f172a09}.inventory-link-table-wrap{border:1px solid hsl(var(--border) / .72);background:hsl(var(--card) / .9);border-radius:10px;overflow:auto hidden;box-shadow:0 4px 14px #0f172a09}.inventory-modal__table--links{min-width:660px;font-size:12px}.inventory-modal__table--links th,.inventory-modal__table--links td{border-bottom:1px solid hsl(var(--border) / .62);vertical-align:middle;white-space:nowrap;padding:8px 9px;line-height:1.25}.inventory-modal__table--links th{background:hsl(var(--muted) / .42);color:hsl(var(--muted-foreground));text-transform:none;font-size:11px;font-weight:800}.inventory-modal__table--links td strong{font-size:12px;font-weight:700}.inventory-modal__table--links th:nth-child(3),.inventory-modal__table--links td:nth-child(3){white-space:normal;overflow-wrap:anywhere;min-width:150px;max-width:180px}.inventory-modal__table--links .inventory-link-direction{border-radius:7px;min-height:22px;padding:3px 7px;font-size:11px}.inventory-modal__table--links .inventory-link-port-input,.inventory-modal__table--links .inventory-link-ip-input{min-height:22px;padding:3px 5px;font-size:12px}.inventory-history-table-wrap{border:1px solid hsl(var(--border) / .72);background:hsl(var(--card) / .9);border-radius:10px;overflow:auto hidden;box-shadow:0 4px 14px #0f172a09}.inventory-modal__table--history{min-width:660px;font-size:12px}.inventory-modal__table--history th,.inventory-modal__table--history td{border-bottom:1px solid hsl(var(--border) / .62);vertical-align:middle;white-space:nowrap;padding:8px 9px;line-height:1.25}.inventory-modal__table--history th{background:hsl(var(--muted) / .42);color:hsl(var(--muted-foreground));text-transform:none;font-size:11px;font-weight:800}.inventory-modal__table--history .inventory-status-badge{border-radius:7px;min-height:22px;padding:3px 7px;font-size:11px}.inventory-port-detail-mobile{display:none}.inventory-port-mobile-row{border:0;border-bottom:1px solid hsl(var(--border) / .62);width:100%;min-height:64px;color:hsl(var(--foreground));font:inherit;text-align:left;background:0 0;grid-template-columns:96px minmax(0,1fr) auto;align-items:center;gap:12px;padding:0 16px;display:grid}.inventory-port-mobile-row:last-child{border-bottom:0}.inventory-port-mobile-row:active{background:hsl(var(--muted) / .3)}.inventory-port-mobile-row.is-selected{background:hsl(var(--primary) / .06)}.inventory-port-mobile-row strong{color:hsl(var(--foreground));white-space:nowrap;font-size:17px;font-weight:800}.inventory-port-mobile-row>span{min-width:0;color:hsl(var(--foreground));text-overflow:ellipsis;white-space:nowrap;font-size:17px;font-weight:500;overflow:hidden}.inventory-port-link{color:#166534;white-space:nowrap;background:#dcfce7;border-radius:9px;justify-content:center;align-items:center;min-width:58px;min-height:30px;padding:0 12px;font-size:14px;font-style:normal;font-weight:800;line-height:1;display:inline-flex}.inventory-port-link.is-bad{color:#b91c1c;background:#fee2e2}.inventory-port-link.is-muted{color:#64748b;background:#eef2f7}.inventory-port-detail-mobile{border:1px solid hsl(var(--border) / .72);background:hsl(var(--card) / .92);border-radius:12px;gap:14px;margin-top:14px;padding:14px;display:none;box-shadow:0 4px 14px #0f172a09}.inventory-port-detail-mobile header{grid-template-columns:38px minmax(0,1fr);align-items:center;gap:10px;display:grid}.inventory-port-detail-mobile header button{color:#475569;background:hsl(var(--muted) / .48);border:0;border-radius:10px;justify-content:center;align-items:center;width:38px;height:38px;display:inline-flex}.inventory-port-detail-mobile header svg{width:20px;height:20px}.inventory-port-detail-mobile h3{color:hsl(var(--foreground));margin:0;font-size:20px;line-height:1.15}.inventory-port-detail-mobile p{color:#64748b;margin:4px 0 0;font-size:14px}.inventory-port-detail-grid{gap:10px;display:grid}.inventory-port-detail-grid section{border-top:1px solid hsl(var(--border) / .58);grid-template-columns:96px minmax(0,1fr);align-items:center;gap:12px;min-height:48px;padding:10px 0;display:grid}.inventory-port-detail-grid section:first-child{border-top:0}.inventory-port-detail-grid section>span{color:#64748b;text-transform:uppercase;font-size:12px;font-weight:800}.inventory-port-detail-grid section>div,.inventory-port-detail-grid section>strong{min-width:0;color:hsl(var(--foreground));text-align:right;justify-self:end;font-size:15px}.inventory-port-detail-grid strong.is-bad{color:#dc2626}.inventory-port-detail-grid .inventory-vlan-list{justify-content:flex-end}.inventory-mobile-card{border:1px solid hsl(var(--border) / .72);background:hsl(var(--card) / .88);border-radius:12px;grid-template-columns:48px minmax(0,1fr) auto;align-items:center;gap:14px;min-height:76px;padding:12px 16px 12px 12px;display:grid;box-shadow:0 4px 14px #0f172a09}.inventory-mobile-card__icon{border-radius:10px;justify-content:center;align-items:center;width:38px;height:38px;display:inline-flex}.inventory-mobile-card__icon svg{stroke-width:2.2px;width:22px;height:22px}.inventory-mobile-card__icon.is-purple{color:#7c3aed;background:#f3e8ff}.inventory-mobile-card__icon.is-green{color:#16a34a;background:#ecfdf3}.inventory-mobile-card__icon.is-blue{color:#2563eb;background:#eff6ff}.inventory-mobile-card__icon.is-yellow{color:#d99a00;background:#fffbeb}.inventory-mobile-card__icon.is-cyan{color:#0891b2;background:#ecfeff}.inventory-mobile-card__icon.is-slate{color:#64748b;background:#f1f5f9}.inventory-mobile-dot{background:#22c55e;border-radius:999px;width:13px;height:13px}.inventory-mobile-card strong{color:hsl(var(--foreground));font-size:18px;font-weight:750}.inventory-mobile-card__value{color:#52627a;text-align:right;overflow-wrap:anywhere;justify-content:flex-end;align-items:center;gap:8px;max-width:47vw;font-size:17px;font-weight:500;display:inline-flex}.inventory-mobile-card__value .inventory-copy-button{flex:none}.inventory-mobile-card__value svg{color:#64748b;flex:none;width:20px;height:20px}.inventory-mobile-card--stack{grid-template-columns:minmax(0,1fr);gap:0;padding:0 16px 0 12px;display:grid}.inventory-mobile-card__line{grid-template-columns:48px minmax(0,1fr) auto;align-items:center;gap:14px;min-height:70px;display:grid}.inventory-mobile-card__line+.inventory-mobile-card__line{border-top:1px solid hsl(var(--border) / .62)}.inventory-modal__table{min-width:760px}.inventory-modal__table--overview{min-width:0;font-size:12px}.inventory-modal__table--overview tr{border-bottom:1px solid hsl(var(--border) / .62);grid-template-columns:112px minmax(0,1fr);align-items:center;min-height:0;display:grid}.inventory-modal__table--overview tr:last-child{border-bottom:0}.inventory-modal__table--overview th,.inventory-modal__table--overview td{background:0 0;border-bottom:0;align-items:center;width:auto;min-width:0;display:flex}.inventory-modal__table--overview th{color:hsl(var(--muted-foreground));background:hsl(var(--muted) / .42);text-transform:none;align-self:stretch;padding:8px 9px;font-size:11px;font-weight:800;line-height:1.25}.inventory-modal__table--overview td{color:hsl(var(--foreground));text-align:left;overflow-wrap:anywhere;justify-content:flex-start;padding:8px 9px;font-size:12px;line-height:1.25}.inventory-modal__table--overview .inventory-status-badge,.inventory-modal__table--overview .inventory-chip{border-radius:7px;min-height:22px;padding:3px 7px;font-size:11px}.inventory-modal__table--ports{min-width:660px;font-size:12px}.inventory-modal__table--ports th,.inventory-modal__table--ports td{border-bottom:1px solid hsl(var(--border) / .62);vertical-align:middle;white-space:nowrap;padding:8px 9px;line-height:1.25}.inventory-modal__table--ports th{background:hsl(var(--muted) / .42);color:hsl(var(--muted-foreground));text-transform:none;font-size:11px;font-weight:800}.inventory-modal__table--ports td{color:hsl(var(--foreground))}.inventory-modal__table--ports th:nth-child(2),.inventory-modal__table--ports td:nth-child(2){white-space:normal;overflow-wrap:anywhere;min-width:150px;max-width:180px}.inventory-modal__table--ports .inventory-vlan-list{justify-content:flex-start;gap:4px}.inventory-modal__table--ports .inventory-chip,.inventory-modal__table--ports .snmp-status{border-radius:7px;min-height:22px;padding:3px 7px;font-size:11px}.inventory-copy-value{max-width:100%}.inventory-copy-value code{overflow-wrap:anywhere;min-width:0}.inventory-modal__scrollbar{display:none}}.snmp-refresh-settings{max-width:1120px;color:var(--text,#172033);margin:0 auto;padding:110px 24px 36px}.snmp-refresh-settings__header{border-bottom:1px solid var(--border,#dce4f0);justify-content:space-between;align-items:center;gap:24px;padding-bottom:22px;display:flex}.snmp-refresh-settings h2{letter-spacing:0;align-items:center;gap:10px;margin:0;font-size:24px;display:flex}.snmp-refresh-settings h2 svg{color:#3784f7}.snmp-refresh-settings p{color:var(--muted,#6f7e96);margin:6px 0 0}.snmp-refresh-settings__button{color:#fff;min-height:42px;font:inherit;cursor:pointer;background:#3483f5;border:0;border-radius:6px;justify-content:center;align-items:center;gap:9px;padding:0 16px;font-weight:700;display:inline-flex}.snmp-refresh-settings__button:disabled{opacity:.6;cursor:default}.is-spinning{animation:1s linear infinite snmp-refresh-spin}@keyframes snmp-refresh-spin{to{transform:rotate(360deg)}}.snmp-refresh-settings__error{color:#d34848;align-items:center;gap:8px;margin-top:18px;display:flex}.snmp-refresh-settings__summary{border-bottom:1px solid var(--border,#dce4f0);grid-template-columns:160px 1fr auto;align-items:center;gap:14px;padding:18px 0;display:grid}.snmp-refresh-settings__summary span{color:#3784f7;font-weight:700}.snmp-refresh-settings__summary small{color:var(--muted,#6f7e96)}.snmp-refresh-settings__results>div{border-bottom:1px solid var(--border,#dce4f0);grid-template-columns:20px minmax(180px,1fr) minmax(180px,1fr);align-items:center;gap:12px;min-height:58px;display:grid}.snmp-refresh-settings__results svg{width:18px}.snmp-refresh-settings__results .is-success svg{color:#20be68}.snmp-refresh-settings__results .is-failed svg{color:#d34848}.snmp-refresh-settings__results span{gap:2px;display:grid}.snmp-refresh-settings__results small{color:var(--muted,#6f7e96)}.snmp-refresh-settings__results em{color:var(--muted,#6f7e96);text-align:right;font-style:normal}.dark .snmp-refresh-settings{--text:#ecf2ff;--muted:#8da0bd;--border:#27344a}.dark .snmp-refresh-settings__button{background:#3987f8}.dark .snmp-refresh-settings__summary span{color:#7eb4ff}.settings-catalog{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin-top:32px;display:grid}.settings-catalog>section{border-top:1px solid var(--border,#dce4f0);padding-top:16px}.settings-catalog h3{margin:0;font-size:16px}.settings-catalog__add{grid-template-columns:1fr 36px;gap:8px;margin-top:14px;display:grid}.settings-catalog__add input{border:1px solid var(--border,#dce4f0);min-width:0;height:36px;color:inherit;font:inherit;background:0 0;border-radius:5px;padding:0 10px}.settings-catalog__add button,.settings-catalog__items button{color:#3784f7;cursor:pointer;background:0 0;border:0;place-items:center;display:inline-grid}.settings-catalog__items{flex-wrap:wrap;gap:7px;margin-top:12px;display:flex}.settings-catalog__items span{background:hsl(var(--secondary));color:hsl(var(--secondary-foreground));border-radius:5px;align-items:center;gap:3px;padding:4px 5px 4px 9px;font-size:13px;display:inline-flex}.settings-catalog__items button{width:18px;height:18px;color:inherit;opacity:.62}.settings-catalog__items svg{width:14px}.dark .settings-catalog__add input{color:#ecf2ff;background:#111a29}@media (width<=680px){.snmp-refresh-settings{padding:90px 16px 24px}.snmp-refresh-settings__header{flex-direction:column;align-items:flex-start}.snmp-refresh-settings__button{width:100%}.snmp-refresh-settings__summary{grid-template-columns:1fr;gap:5px}.snmp-refresh-settings__results>div{grid-template-columns:18px 1fr;padding:12px 0}.snmp-refresh-settings__results em{text-align:left;grid-column:2}.settings-catalog{grid-template-columns:1fr;gap:20px}}
