.Button_button__d8Z73{display:inline-flex;align-items:center;justify-content:center;gap:var(--spacing-2);font-family:inherit;font-weight:var(--font-weight-medium);line-height:1;text-decoration:none;white-space:nowrap;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none;border:1px solid transparent;border-radius:var(--radius-md);transition:all .15s ease;position:relative}.Button_button__d8Z73:focus-visible{outline:2px solid var(--color-border-focus);outline-offset:2px}.Button_button__d8Z73:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 2px 8px rgba(0,0,0,.1)}.Button_button__d8Z73:active:not(:disabled){transform:translateY(0);box-shadow:0 1px 4px rgba(0,0,0,.08)}.Button_button__d8Z73:disabled{opacity:.6;cursor:not-allowed;transform:none;filter:grayscale(30%)}.Button_sm__Aw9aD{padding:var(--spacing-2) var(--spacing-3);font-size:var(--font-size-sm);height:32px}.Button_md__yswk_{padding:var(--spacing-3) var(--spacing-4);font-size:var(--font-size-base);height:40px}.Button_lg__e1LZ5{padding:var(--spacing-4) var(--spacing-6);font-size:var(--font-size-lg);height:48px}.Button_primary__qV6RY{background-color:var(--color-teal-dark);color:#fff;box-shadow:0 1px 3px rgba(0,0,0,.12),0 1px 2px rgba(0,0,0,.24);border:1px solid var(--color-teal-dark);font-weight:var(--font-weight-semibold)}.Button_primary__qV6RY:hover:not(:disabled){background-color:var(--color-teal);transform:translateY(-1px);box-shadow:0 3px 6px rgba(0,0,0,.15),0 2px 4px rgba(0,0,0,.12)}.Button_primary__qV6RY:active:not(:disabled){background-color:var(--color-teal-dark);transform:translateY(0);box-shadow:0 1px 2px rgba(0,0,0,.16)}.Button_secondary__iETAB{background-color:var(--color-orange);color:#fff;border:1px solid var(--color-orange);box-shadow:0 1px 2px rgba(0,0,0,.08)}.Button_secondary__iETAB:hover:not(:disabled){background-color:var(--color-orange-dark);border-color:var(--color-orange-dark);transform:translateY(-1px);box-shadow:0 2px 4px rgba(0,0,0,.12)}.Button_secondary__iETAB:active:not(:disabled){background-color:var(--color-orange);transform:translateY(0);box-shadow:0 1px 1px rgba(0,0,0,.08)}.Button_danger__W1OUv{background-color:var(--color-danger);color:#fff;border:1px solid var(--color-danger-dark);box-shadow:0 2px 0 0 var(--color-danger-dark)}.Button_danger__W1OUv:hover:not(:disabled){background-color:var(--color-danger-dark);transform:translateY(-2px);box-shadow:0 4px 0 0 var(--color-danger-dark)}.Button_danger__W1OUv:active:not(:disabled){background-color:var(--color-danger);transform:translateY(0);box-shadow:0 1px 0 0 var(--color-danger-dark)}.Button_ghost__z5HEn{background-color:transparent;color:var(--color-text-primary);border:1px solid var(--color-border-primary)}.Button_ghost__z5HEn:hover:not(:disabled){background-color:var(--color-bg-tertiary);border-color:var(--color-border-secondary);transform:none;box-shadow:none}.Button_ghost__z5HEn:active:not(:disabled){background-color:var(--color-bg-secondary);transform:none}.Button_fullWidth__lqAZg{width:100%}.Button_loading__LPT4i{position:relative;color:transparent}.Button_loading__LPT4i .Button_content__Jq6UF{opacity:0}.Button_spinner__04Gt4{position:absolute;inset:0;display:flex;align-items:center;justify-content:center}.Button_spinnerIcon__jXJAD{width:1.25em;height:1.25em;animation:Button_spin__H3jOz 1s linear infinite}.Button_spinnerTrack__xbdzt{stroke:currentColor;opacity:.25}.Button_spinnerFill__h_phn{stroke:currentColor;stroke-linecap:round;animation:Button_dash__amC58 1.5s ease-in-out infinite}@keyframes Button_spin__H3jOz{to{transform:rotate(1turn)}}@keyframes Button_dash__amC58{0%{stroke-dasharray:1,150;stroke-dashoffset:0}50%{stroke-dasharray:90,150;stroke-dashoffset:-35}to{stroke-dasharray:90,150;stroke-dashoffset:-124}}@media (--motion-reduce ){.Button_spinnerFill__h_phn,.Button_spinnerIcon__jXJAD{animation:none}}.UserMenu_container__1uCii{position:relative}.UserMenu_skeleton__RzL3U{width:40px;height:40px;border-radius:var(--radius-full);background:var(--color-bg-secondary);animation:UserMenu_pulse__qRXRA 2s ease-in-out infinite}@keyframes UserMenu_pulse__qRXRA{0%,to{opacity:1}50%{opacity:.5}}.UserMenu_authButtons__k0IA7{display:flex;align-items:center;gap:var(--spacing-3)}.UserMenu_signInButton__Vj_H5,.UserMenu_signUpButton__QWecR{padding:var(--spacing-2) var(--spacing-4);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);text-decoration:none;border-radius:var(--radius-md);transition:var(--transition-colors)}.UserMenu_signInButton__Vj_H5{color:var(--color-text-primary)}.UserMenu_signInButton__Vj_H5:hover{background:var(--color-bg-secondary)}.UserMenu_signUpButton__QWecR{background:var(--color-primary);color:var(--color-text-inverse)}.UserMenu_signUpButton__QWecR:hover{background:var(--color-brand-600)}.UserMenu_trigger__EW5u6{display:flex;align-items:center;gap:var(--spacing-2);padding:var(--spacing-1);background:transparent;border:none;border-radius:var(--radius-full);cursor:pointer;transition:var(--transition-colors)}.UserMenu_trigger__EW5u6:hover{background:var(--color-bg-secondary)}.UserMenu_trigger__EW5u6:focus-visible{outline:2px solid var(--color-border-focus);outline-offset:2px}.UserMenu_avatar__573KQ{width:40px;height:40px;border-radius:var(--radius-full);overflow:hidden;background:var(--color-primary);color:var(--color-text-inverse);display:flex;align-items:center;justify-content:center;font-weight:var(--font-weight-medium);position:relative}.UserMenu_avatar__573KQ img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;position:absolute;top:0;left:0;background:#fff}.UserMenu_avatar__573KQ span{position:relative;z-index:1}.UserMenu_chevron__3l9cU{color:var(--color-text-secondary);transition:transform .2s}.UserMenu_trigger__EW5u6[aria-expanded=true] .UserMenu_chevron__3l9cU{transform:rotate(180deg)}.UserMenu_menu__C4c5_{position:absolute;top:calc(100% + var(--spacing-2));right:0;min-width:240px;background:var(--color-bg-primary);border:1px solid var(--color-border-primary);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);overflow:hidden;z-index:var(--z-index-dropdown);animation:UserMenu_slideIn__SKLG1 .15s ease-out}@keyframes UserMenu_slideIn__SKLG1{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.UserMenu_menuHeader__lyWMQ{padding:var(--spacing-4)}.UserMenu_userName__XY6mh{font-weight:var(--font-weight-semibold);color:var(--color-text-primary);margin-bottom:var(--spacing-1)}.UserMenu_userEmail__GEFDd{font-size:var(--font-size-sm);color:var(--color-text-secondary)}.UserMenu_userRole__3pvMX{display:inline-block;margin-top:var(--spacing-2);padding:var(--spacing-1) var(--spacing-2);background:var(--color-success-light);color:var(--color-success-dark);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);border-radius:var(--radius-sm);text-transform:uppercase;letter-spacing:.05em}.UserMenu_menuDivider__zVgdX{height:1px;background:var(--color-border-primary);margin:0}.UserMenu_menuItem___dz8M{display:flex;align-items:center;gap:var(--spacing-3);width:100%;padding:var(--spacing-3) var(--spacing-4);font-size:var(--font-size-sm);color:var(--color-text-primary);text-decoration:none;background:transparent;border:none;cursor:pointer;transition:var(--transition-colors)}.UserMenu_menuItem___dz8M:hover{background:var(--color-bg-secondary);color:var(--color-primary)}.UserMenu_menuItem___dz8M svg{width:16px;height:16px;color:var(--color-text-secondary)}[data-theme=dark] .UserMenu_menu__C4c5_{background:var(--color-bg-primary);border-color:var(--color-border-primary)}.MainNav_header__2tnLO{background:var(--color-teal-dark);border-bottom:3px solid var(--color-teal);position:sticky;top:0;z-index:50;transition:box-shadow .2s ease;box-shadow:0 2px 0 0 rgba(47,95,90,.3)}.MainNav_header__2tnLO.MainNav_scrolled__iaEi3{box-shadow:0 4px 8px rgba(47,95,90,.3)}.MainNav_container__HxZH1{max-width:1280px;margin:0 auto;padding:0 1rem}.MainNav_nav__d90EM{display:flex;justify-content:space-between;align-items:center;height:64px}.MainNav_logo__WtVO8{text-decoration:none;display:flex;align-items:center;position:relative;transition:all .2s ease}.MainNav_logoContainer__IVIVR{display:flex;align-items:center;gap:.75rem;position:relative}.MainNav_logo__WtVO8 h1{font-size:1.5rem;font-weight:700;margin:0;color:#fff;letter-spacing:-.5px;text-shadow:2px 2px 0 rgba(0,0,0,.1)}.MainNav_desktopNav__plFFx{display:none;align-items:center;gap:2rem}@media (min-width:768px){.MainNav_desktopNav__plFFx{display:flex}}.MainNav_navLinks__IuIGY{display:flex;align-items:center;gap:.5rem}.MainNav_navLink__evT5k{padding:.5rem 1rem;text-decoration:none;color:#fff;font-size:.875rem;font-weight:600;transition:color .2s ease;position:relative;border:none}.MainNav_navLink__evT5k:hover{color:var(--color-cream)}.MainNav_navLink__evT5k.MainNav_active__b4cp0{color:#fff;font-weight:700;border-bottom:3px solid var(--color-orange)}.MainNav_navActions___XfE2{display:flex;align-items:center;gap:1rem}.MainNav_mobileMenuButton__1wkCc{display:flex;align-items:center;justify-content:center;padding:.5rem;background:transparent;border:2px solid #fff;border-radius:6px;cursor:pointer;color:#fff;transition:all .2s ease}.MainNav_mobileMenuButton__1wkCc:hover{background:#fff;color:var(--color-teal-dark)}@media (min-width:768px){.MainNav_mobileMenuButton__1wkCc{display:none}}.MainNav_mobileMenu__jL_0Q{display:block;background:#fff;border-bottom:3px solid var(--color-teal);padding:1rem;box-shadow:0 4px 8px rgba(0,0,0,.1)}@media (min-width:768px){.MainNav_mobileMenu__jL_0Q{display:none}}.MainNav_mobileNavLinks__rYfus{display:flex;flex-direction:column;gap:.25rem;margin-bottom:1rem}.MainNav_mobileNavLink__ue7VH{padding:.75rem 1rem;text-decoration:none;color:var(--color-teal-dark);font-size:.875rem;font-weight:600;border-radius:6px;transition:all .2s ease;border:2px solid transparent}.MainNav_mobileNavLink__ue7VH:hover{color:var(--color-orange);background:#f7f7f7;border-color:var(--color-orange)}.MainNav_mobileNavLink__ue7VH.MainNav_active__b4cp0{color:#fff;background:var(--color-teal);border-color:var(--color-teal-dark)}.MainNav_mobileActions__DQMrm{padding-top:1rem;border-top:1px solid var(--color-border)}.MainNav_mobileNewDiagram__i14jZ{display:block;text-decoration:none}.MainNav_fullWidth__qkHV_{width:100%}.Layout_layout__Ox5vS{min-height:100vh;display:flex;flex-direction:column}.Layout_main__gSLe1{flex:1;background:var(--color-background)}.Layout_fullWidth__e47kH{max-width:100%;padding:0;margin:0}.device-library_sidebar__GKlny{width:280px;flex-shrink:0;padding-right:var(--spacing-6);border-right:1px solid var(--color-border-primary);margin-right:var(--spacing-6)}.device-library_main__LYWo2{flex:1;min-width:0}.device-library_filterSection__vzoGZ{margin-bottom:var(--spacing-6);padding-bottom:var(--spacing-6);border-bottom:1px solid var(--color-border-secondary)}.device-library_filterSection__vzoGZ:last-child{border-bottom:none}.device-library_filterTitle__pMnyq{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-secondary);margin-bottom:var(--spacing-3)}.device-library_searchInput__nQsOT{width:100%;padding:var(--spacing-2) var(--spacing-3);font-size:var(--font-size-sm);border:1px solid var(--color-border-primary);border-radius:var(--radius-md);background:var(--color-bg-primary);transition:var(--transition-colors)}.device-library_searchInput__nQsOT:hover{border-color:var(--color-border-secondary)}.device-library_searchInput__nQsOT:focus{outline:none;border-color:var(--color-border-focus);box-shadow:0 0 0 3px rgba(0,102,204,.15)}.device-library_select__st8Jj{width:100%;padding:var(--spacing-2) var(--spacing-3);font-size:var(--font-size-sm);border:1px solid var(--color-border-primary);border-radius:var(--radius-md);background:var(--color-bg-primary);cursor:pointer;transition:var(--transition-colors)}.device-library_select__st8Jj:hover{border-color:var(--color-border-secondary)}.device-library_select__st8Jj:focus{outline:none;border-color:var(--color-border-focus);box-shadow:0 0 0 3px rgba(0,102,204,.15)}.device-library_checkbox__ucsfR{display:flex;align-items:center;gap:var(--spacing-2);margin-bottom:var(--spacing-2);cursor:pointer;font-size:var(--font-size-sm)}.device-library_checkbox__ucsfR input[type=checkbox]{width:16px;height:16px;cursor:pointer}.device-library_checkbox__ucsfR:hover{color:var(--color-text-primary)}.device-library_deviceGrid__6_IGf{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:var(--spacing-6);margin-bottom:var(--spacing-8)}.device-library_deviceCard__DWlTu{display:block;background:var(--color-bg-secondary);border:1px solid var(--color-border-primary);border-radius:var(--radius-lg);padding:var(--spacing-6);text-decoration:none;color:var(--color-text-primary);transition:all .2s ease;box-shadow:0 1px 3px rgba(0,0,0,.05)}.device-library_deviceCard__DWlTu:hover{border-color:var(--color-teal);box-shadow:0 4px 12px rgba(0,0,0,.1);transform:translateY(-2px);background:var(--color-bg-tertiary)}.device-library_deviceHeader__pidql{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:var(--spacing-4)}.device-library_deviceName__s6l7f{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);margin:0 0 var(--spacing-1);line-height:var(--line-height-tight)}.device-library_deviceType__ghZbd{font-size:var(--font-size-sm);color:var(--color-text-secondary);margin:0}.device-library_badge__8XaB9{display:inline-block;padding:var(--spacing-1) var(--spacing-2);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);border-radius:var(--radius-full);text-transform:uppercase;letter-spacing:.05em}.device-library_badgeVerified__bNX_l{background:var(--color-success-light);color:var(--color-success-dark);font-weight:var(--font-weight-semibold)}.device-library_badgeUnverified__eIyMd{background:#fff3cd;color:#664d03;font-weight:var(--font-weight-semibold);border:1px solid #ffecb5}.device-library_badgeArchived__SEqD5{background:var(--color-neutral-200);color:var(--color-neutral-700);font-weight:var(--font-weight-semibold)}.device-library_deviceInfo__fOPXx{margin-bottom:var(--spacing-4)}.device-library_portCounts__Mc1zd{display:flex;align-items:center;gap:var(--spacing-2);font-size:var(--font-size-sm);color:var(--color-text-secondary);margin-bottom:var(--spacing-3)}.device-library_controlMethods__zcIvH{display:flex;flex-wrap:wrap;gap:var(--spacing-2)}.device-library_controlBadge__TjFce{display:inline-block;padding:var(--spacing-1) var(--spacing-2);background:var(--color-bg-secondary);color:var(--color-text-secondary);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);border-radius:var(--radius-sm)}.device-library_deviceFooter__x68hs{padding-top:var(--spacing-3);border-top:1px solid var(--color-border-secondary);font-size:var(--font-size-xs);color:var(--color-text-secondary)}.device-library_loadingGrid__lyZ47{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:var(--spacing-6)}.device-library_skeletonCard__QCI7N{height:200px;background:var(--color-bg-secondary);border-radius:var(--radius-lg);animation:device-library_pulse__88MSU 2s ease-in-out infinite}@keyframes device-library_pulse__88MSU{0%,to{opacity:1}50%{opacity:.5}}.device-library_pagination__rcZYx{display:flex;justify-content:center;align-items:center;gap:var(--spacing-4);margin-top:var(--spacing-8)}.device-library_mobileFilterButton__fbqbP{display:none;position:fixed;bottom:var(--spacing-6);right:var(--spacing-6);z-index:var(--z-index-sticky);background:var(--color-teal-dark);color:#fff;padding:var(--spacing-3) var(--spacing-4);border-radius:var(--radius-full);box-shadow:0 4px 12px rgba(0,0,0,.15);border:none;cursor:pointer;font-weight:var(--font-weight-semibold)}.device-library_mobileFilterButton__fbqbP:hover{background:var(--color-teal)}@media (max-width:1024px){.device-library_sidebar__GKlny{position:fixed;top:0;left:0;bottom:0;background:#fff;z-index:var(--z-index-modal);transform:translateX(-100%);transition:transform .3s ease;padding:var(--spacing-6);box-shadow:2px 0 12px rgba(0,0,0,.1);overflow-y:auto;border-right:none;margin-right:0}.device-library_sidebarOpen__AOKFW{transform:translateX(0)}.device-library_main__LYWo2{width:100%}.device-library_mobileFilterButton__fbqbP{display:flex;align-items:center;gap:var(--spacing-2)}.device-library_deviceGrid__6_IGf{grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}}[data-theme=dark] .device-library_deviceCard__DWlTu{background:var(--color-bg-primary);border-color:var(--color-border-primary)}[data-theme=dark] .device-library_controlBadge__TjFce{background:var(--color-bg-tertiary)}