@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-white:#fff;--spacing:.25rem;--text-sm:.875rem;--text-sm--line-height:calc(1.25/.875);--font-weight-medium:500;--animate-pulse:pulse 2s cubic-bezier(.4,0,.6,1)infinite;--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);--color-background:var(--background);--color-border:var(--border)}}@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;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}*,:before,:after{box-sizing:border-box;border-color:var(--border);outline-color:var(--ring);margin:0;font-weight:400}@supports (color:color-mix(in lab,red,red)){*,:before,:after{outline-color:color-mix(in oklab,var(--ring)50%,transparent)}}html,body,#app{color-scheme:light;min-height:100%;background:#fff!important}body{min-height:100vh;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:var(--background);color:var(--foreground);background-color:#fff;background-image:none;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;font-size:15px;line-height:1.6}button,input,select,textarea{border:0}button:not(:disabled),[role=button]:not(:disabled){cursor:pointer}}@layer components;@layer utilities{.relative{position:relative}.z-50{z-index:50}.float-right{float:right}.-mx-1{margin-inline:calc(var(--spacing)*-1)}.my-1{margin-block:calc(var(--spacing)*1)}.flex{display:flex}.inline-flex{display:inline-flex}.size-3{width:calc(var(--spacing)*3);height:calc(var(--spacing)*3)}.size-4{width:calc(var(--spacing)*4);height:calc(var(--spacing)*4)}.size-5{width:calc(var(--spacing)*5);height:calc(var(--spacing)*5)}.size-6{width:calc(var(--spacing)*6);height:calc(var(--spacing)*6)}.size-8{width:calc(var(--spacing)*8);height:calc(var(--spacing)*8)}.size-9{width:calc(var(--spacing)*9);height:calc(var(--spacing)*9)}.size-10{width:calc(var(--spacing)*10);height:calc(var(--spacing)*10)}.h-5{height:calc(var(--spacing)*5)}.h-8{height:calc(var(--spacing)*8)}.h-9{height:calc(var(--spacing)*9)}.h-10{height:calc(var(--spacing)*10)}.h-px{height:1px}.w-full{width:100%}.min-w-40{min-width:calc(var(--spacing)*40)}.shrink-0{flex-shrink:0}.transform{transform:var(--tw-rotate-x,)var(--tw-rotate-y,)var(--tw-rotate-z,)var(--tw-skew-x,)var(--tw-skew-y,)}.animate-pulse{animation:var(--animate-pulse)}.cursor-default{cursor:default}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.justify-center{justify-content:center}.gap-1\.5{gap:calc(var(--spacing)*1.5)}.gap-2{gap:calc(var(--spacing)*2)}.overflow-hidden{overflow:hidden}.rounded-md{border-radius:calc(var(--radius) - 2px)}.rounded-sm{border-radius:calc(var(--radius) - 4px)}.border{border-style:var(--tw-border-style);border-width:1px}.border-border{border-color:var(--border)}.bg-background{background-color:var(--background)}.bg-border{background-color:var(--border)}.bg-destructive{background-color:var(--destructive)}.bg-muted{background-color:var(--muted)}.bg-popover{background-color:var(--popover)}.bg-primary{background-color:var(--primary)}.bg-secondary{background-color:var(--secondary)}.p-1{padding:calc(var(--spacing)*1)}.px-2{padding-inline:calc(var(--spacing)*2)}.px-3{padding-inline:calc(var(--spacing)*3)}.px-4{padding-inline:calc(var(--spacing)*4)}.px-6{padding-inline:calc(var(--spacing)*6)}.py-1\.5{padding-block:calc(var(--spacing)*1.5)}.py-2{padding-block:calc(var(--spacing)*2)}.pl-8{padding-left:calc(var(--spacing)*8)}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--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:var(--destructive)}.text-muted-foreground{color:var(--muted-foreground)}.text-popover-foreground{color:var(--popover-foreground)}.text-primary{color:var(--primary)}.text-primary-foreground{color:var(--primary-foreground)}.text-secondary-foreground{color:var(--secondary-foreground)}.text-white{color:var(--color-white)}.underline-offset-4{text-underline-offset:4px}.shadow-lg{--tw-shadow:0 10px 15px -3px var(--tw-shadow-color,#0000001a),0 4px 6px -4px 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}.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,)}.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-all{transition-property:all;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))}.outline-none{--tw-outline-style:none;outline-style:none}.select-none{-webkit-user-select:none;user-select:none}@media(hover:hover){.hover\:bg-accent:hover{background-color:var(--accent)}.hover\:bg-destructive\/90:hover{background-color:var(--destructive)}@supports (color:color-mix(in lab,red,red)){.hover\:bg-destructive\/90:hover{background-color:color-mix(in oklab,var(--destructive)90%,transparent)}}.hover\:bg-primary\/90:hover{background-color:var(--primary)}@supports (color:color-mix(in lab,red,red)){.hover\:bg-primary\/90:hover{background-color:color-mix(in oklab,var(--primary)90%,transparent)}}.hover\:bg-secondary\/80:hover{background-color:var(--secondary)}@supports (color:color-mix(in lab,red,red)){.hover\:bg-secondary\/80:hover{background-color:color-mix(in oklab,var(--secondary)80%,transparent)}}.hover\:text-accent-foreground:hover{color:var(--accent-foreground)}.hover\:underline:hover{text-decoration-line:underline}}.focus-visible\:border-ring:focus-visible{border-color:var(--ring)}.focus-visible\:ring-\[3px\]:focus-visible{--tw-ring-shadow:var(--tw-ring-inset,)0 0 0 calc(3px + 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-destructive\/20:focus-visible{--tw-ring-color:var(--destructive)}@supports (color:color-mix(in lab,red,red)){.focus-visible\:ring-destructive\/20:focus-visible{--tw-ring-color:color-mix(in oklab,var(--destructive)20%,transparent)}}.focus-visible\:ring-ring\/50:focus-visible{--tw-ring-color:var(--ring)}@supports (color:color-mix(in lab,red,red)){.focus-visible\:ring-ring\/50:focus-visible{--tw-ring-color:color-mix(in oklab,var(--ring)50%,transparent)}}.disabled\:pointer-events-none:disabled{pointer-events:none}.disabled\:opacity-50:disabled{opacity:.5}.has-\[\>svg\]\:px-2\.5:has(>svg){padding-inline:calc(var(--spacing)*2.5)}.has-\[\>svg\]\:px-3:has(>svg){padding-inline:calc(var(--spacing)*3)}.has-\[\>svg\]\:px-4:has(>svg){padding-inline:calc(var(--spacing)*4)}.aria-invalid\:border-destructive[aria-invalid=true]{border-color:var(--destructive)}.aria-invalid\:ring-destructive\/20[aria-invalid=true]{--tw-ring-color:var(--destructive)}@supports (color:color-mix(in lab,red,red)){.aria-invalid\:ring-destructive\/20[aria-invalid=true]{--tw-ring-color:color-mix(in oklab,var(--destructive)20%,transparent)}}.data-\[disabled\]\:pointer-events-none[data-disabled]{pointer-events:none}.data-\[disabled\]\:opacity-50[data-disabled]{opacity:.5}.data-\[highlighted\]\:bg-accent[data-highlighted]{background-color:var(--accent)}.data-\[highlighted\]\:bg-destructive\/10[data-highlighted]{background-color:var(--destructive)}@supports (color:color-mix(in lab,red,red)){.data-\[highlighted\]\:bg-destructive\/10[data-highlighted]{background-color:color-mix(in oklab,var(--destructive)10%,transparent)}}.data-\[highlighted\]\:text-accent-foreground[data-highlighted]{color:var(--accent-foreground)}.data-\[highlighted\]\:text-destructive[data-highlighted]{color:var(--destructive)}.dark\:border-input:is(.dark *){border-color:var(--input)}.dark\:bg-destructive\/60:is(.dark *){background-color:var(--destructive)}@supports (color:color-mix(in lab,red,red)){.dark\:bg-destructive\/60:is(.dark *){background-color:color-mix(in oklab,var(--destructive)60%,transparent)}}.dark\:bg-input\/30:is(.dark *){background-color:var(--input)}@supports (color:color-mix(in lab,red,red)){.dark\:bg-input\/30:is(.dark *){background-color:color-mix(in oklab,var(--input)30%,transparent)}}@media(hover:hover){.dark\:hover\:bg-accent\/50:is(.dark *):hover{background-color:var(--accent)}@supports (color:color-mix(in lab,red,red)){.dark\:hover\:bg-accent\/50:is(.dark *):hover{background-color:color-mix(in oklab,var(--accent)50%,transparent)}}.dark\:hover\:bg-input\/50:is(.dark *):hover{background-color:var(--input)}@supports (color:color-mix(in lab,red,red)){.dark\:hover\:bg-input\/50:is(.dark *):hover{background-color:color-mix(in oklab,var(--input)50%,transparent)}}}.dark\:focus-visible\:ring-destructive\/40:is(.dark *):focus-visible{--tw-ring-color:var(--destructive)}@supports (color:color-mix(in lab,red,red)){.dark\:focus-visible\:ring-destructive\/40:is(.dark *):focus-visible{--tw-ring-color:color-mix(in oklab,var(--destructive)40%,transparent)}}.dark\:aria-invalid\:ring-destructive\/40:is(.dark *)[aria-invalid=true]{--tw-ring-color:var(--destructive)}@supports (color:color-mix(in lab,red,red)){.dark\:aria-invalid\:ring-destructive\/40:is(.dark *)[aria-invalid=true]{--tw-ring-color:color-mix(in oklab,var(--destructive)40%,transparent)}}.\[\&_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}.\[\&_svg\:not\(\[class\*\=\'size-\'\]\)\]\:size-4 svg:not([class*=size-]){width:calc(var(--spacing)*4);height:calc(var(--spacing)*4)}}:root,.light,.dark{color-scheme:light;--radius:.625rem;--background:oklch(98.5% 0 0);--foreground:oklch(18% .02 255);--card:oklch(100% 0 0);--card-foreground:oklch(18% .02 255);--popover:oklch(100% 0 0);--popover-foreground:oklch(18% .02 255);--primary:oklch(22% .03 255);--primary-foreground:oklch(98.5% 0 0);--secondary:oklch(94% .01 255);--secondary-foreground:oklch(22% .03 255);--muted:oklch(94% .01 255);--muted-foreground:oklch(46% .02 255);--accent:oklch(92% .03 145);--accent-foreground:oklch(22% .03 255);--destructive:oklch(58% .2 25);--border:oklch(87% .02 255);--input:oklch(87% .02 255);--ring:oklch(62% .16 145);--chart-1:oklch(62% .16 145);--chart-2:oklch(62% .12 205);--chart-3:oklch(70% .14 80);--chart-4:oklch(62% .12 260);--chart-5:oklch(62% .14 25)}:root{--motion-fast:.15s;--motion-medium:.22s;--motion-ease:cubic-bezier(.2,0,0,1)}#app{background:#fff;min-height:100vh}button,input,select,textarea{font:inherit}a{color:inherit;text-decoration:none}.route-fade-enter-active,.route-fade-leave-active{transition:opacity var(--motion-medium)var(--motion-ease),transform var(--motion-medium)var(--motion-ease)}.route-fade-enter-from{opacity:0;transform:translateY(6px)}.route-fade-leave-to{opacity:0;transform:translateY(-4px)}.dropdown-menu-content[data-state=open]{animation:dropdown-menu-in var(--motion-fast)var(--motion-ease)}@keyframes dropdown-menu-in{0%{opacity:0;transform:translateY(-4px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}@media(prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:1ms!important;animation-duration:1ms!important;animation-iteration-count:1!important}.route-fade-enter-from,.route-fade-leave-to{transform:none}}@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}@keyframes pulse{50%{opacity:.5}}.app-version-badge[data-v-9c77b014]{display:inline-flex;align-items:center;gap:4px;min-width:0;flex-wrap:wrap;align-self:flex-end;margin-bottom:2px}.app-version-current[data-v-9c77b014]{color:#64748b;font-size:12px;line-height:1;font-weight:700;white-space:nowrap}.app-version-update[data-v-9c77b014]{display:inline-flex;align-items:center;justify-content:center;min-height:18px;min-width:0;padding:0 6px;border:1px solid rgb(191 219 254);border-radius:6px;color:#2563eb;background:#eff6ff;font-size:11px;line-height:1;font-weight:700;text-decoration:none;white-space:nowrap;transition:color .15s ease,background .15s ease}.app-version-update[data-v-9c77b014]:hover{color:#1e40af;background:#dbeafe}@media(max-width:860px){.app-version-badge[data-v-9c77b014]{gap:4px}.app-version-update[data-v-9c77b014]{min-height:17px;padding:0 5px;font-size:10px}}.console-shell{width:100%;min-height:100vh;margin:0;padding:24px 32px 52px;display:flex;flex-direction:column;align-items:center;gap:28px;background:radial-gradient(circle at 18% -2%,rgb(231 241 255 / .72),transparent 26%),radial-gradient(circle at 84% 0%,rgb(245 248 255 / .82),transparent 22%),linear-gradient(180deg,#fdfeff,#f9fbfe)}.workspace-switch-enter-active,.workspace-switch-leave-active{transition:opacity var(--motion-medium) var(--motion-ease),transform var(--motion-medium) var(--motion-ease)}.workspace-switch-enter-from{opacity:0;transform:translateY(8px)}.workspace-switch-leave-to{opacity:0;transform:translateY(-4px)}.modal-layer{display:contents}.modal-pop-enter-active,.modal-pop-leave-active{transition:opacity var(--motion-medium) var(--motion-ease)}.modal-pop-enter-from,.modal-pop-leave-to{opacity:0}.modal-pop-enter-active .modal-card,.modal-pop-leave-active .modal-card{transition:opacity var(--motion-medium) var(--motion-ease),transform var(--motion-medium) var(--motion-ease)}.modal-pop-enter-from .modal-card,.modal-pop-leave-to .modal-card{opacity:0;transform:translateY(10px) scale(.98)}.toast-slide-enter-active,.toast-slide-leave-active{transition:opacity .18s var(--motion-ease),transform .18s var(--motion-ease)}.toast-slide-enter-from,.toast-slide-leave-to{opacity:0;transform:translateY(6px)}.toast-slide-enter-from.toast-success,.toast-slide-leave-to.toast-success{transform:translate(-50%,-6px)}.icon-sm{width:16px;height:16px}.shell-header,.workspace-panel{width:min(1420px,100%)}.shell-header{display:grid;gap:18px}.brand-bar{display:flex;align-items:center;justify-content:space-between;gap:16px}.brand-lockup{display:inline-flex;align-items:center;gap:4px;min-width:0;flex-wrap:wrap}.brand-logo{width:52px;height:42px;flex:0 0 auto;display:block;object-fit:contain}.brand-name{color:#111827;font-family:Georgia,Times New Roman,serif;font-size:30px;line-height:1;font-weight:700;letter-spacing:-.03em}.brand-actions{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:flex-end;gap:10px}.language-menu-trigger[data-slot=button]{flex:0 0 auto;min-height:40px;gap:7px;padding:0 10px;border-radius:12px;color:#4c5975;font-size:14px;font-weight:650;background:transparent;box-shadow:none}.language-menu-trigger[data-slot=button]:hover{color:#2563eb;background:#f3f7ff}.language-menu{min-width:180px}.language-menu-item{color:#334155;font-weight:650}.language-menu-item.active{color:#2563eb}.language-menu-check-placeholder{width:16px;height:16px;flex:0 0 auto}.github-link,.settings-link{min-height:40px;display:inline-flex;align-items:center;justify-content:center;gap:7px;padding:0 10px;border-radius:12px;color:#4c5975;font-size:14px;font-weight:650;transition:color .15s ease,background .15s ease}.github-link:hover,.settings-link:hover{color:#2563eb;background:#f3f7ff}.node-group-summary-card,.node-row{border:1px solid rgb(15 23 42 / .08);background:#fff;box-shadow:0 10px 28px #0f172a0a}.node-row.blacklisted{border-color:#f871716b;background:#fff7f7}.node-row.probe-unavailable{position:relative;border-color:#ef444480;background:#fff1f2;box-shadow:0 12px 30px #be123c14}.node-row.probe-unavailable:before{content:"";position:absolute;pointer-events:none;top:12px;bottom:12px;left:0;width:4px;border-radius:0 999px 999px 0;background:#dc2626}.notice-bar{min-height:58px;display:flex;align-items:center;gap:14px;padding:14px 22px;border:1px solid rgb(217 226 239);border-radius:18px;color:#334155;background:linear-gradient(90deg,#f7fbf9,#fafbfe 46%,#f7faff);box-shadow:inset 0 1px #ffffffe6,0 16px 38px #0f172a0a}.notice-message{flex:1;min-width:0;overflow-wrap:anywhere;font-size:16px;font-weight:700}.notice-link{flex-shrink:0;min-height:36px;display:inline-flex;align-items:center;padding:0 14px;border:1px solid rgb(204 214 231);border-radius:10px;background:#fff;color:#2563eb;font-size:13px;font-weight:700}.notice-link:hover{border-color:#94b8ff;background:#f4f8ff}.notice-icon{width:14px;height:14px;flex:0 0 auto;border-radius:999px;background:#22c55e;box-shadow:0 0 0 7px #22c55e1f}.notice-bar.error{border-color:#fecaca;background:linear-gradient(90deg,#fef2f2,#fff7f7);color:#7f1d1d;box-shadow:0 16px 38px #dc262614}.notice-bar.error .notice-icon{background:#dc2626;box-shadow:0 0 0 7px #dc26261f}.status-refresh[data-slot=button]{flex:0 0 auto;min-height:40px;padding:0 4px;border-radius:12px;color:#4c5975;background:transparent;box-shadow:none}.status-refresh[data-slot=button]:hover{color:#2563eb;background:#f3f7ff}.spin-icon{animation:spin .9s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.workspace-panel{min-height:auto;display:grid;gap:26px;overflow:visible;border:0;border-radius:0;background:transparent;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none}.workspace-header{display:flex;align-items:flex-start;justify-content:space-between;gap:18px 40px}.workspace-copy{flex:1 1 390px;min-width:0;display:grid;gap:9px}.workspace-title-row{display:flex;flex-wrap:wrap;align-items:center;gap:14px}.workspace-copy h1{color:#0f172a;font-size:32px;line-height:1.12;font-weight:830;letter-spacing:0}.workspace-count{min-height:32px;display:inline-flex;align-items:center;padding:0 13px;border-radius:999px;background:#eff3f9;color:#465573;font-size:16px;font-weight:760}.workspace-copy p{max-width:640px;color:#60708b;font-size:15px;font-weight:560}.workspace-toolbar{display:flex;align-items:center;justify-content:space-between;gap:18px}.tab-bar{display:flex;align-items:center;gap:18px;flex-wrap:wrap;min-width:0;min-height:auto;padding:0;overflow-x:auto;border-bottom:0;scrollbar-width:none}.tab-bar::-webkit-scrollbar{display:none}.tab-bar button{flex:0 0 auto;min-height:48px;display:inline-flex;align-items:center;gap:10px;padding:0 24px;border:1px solid rgb(220 227 238);border-radius:14px;background:#fff;font-size:15px;font-weight:700;color:#4b556b;box-shadow:0 8px 20px #0f172a08;transition:border-color .16s ease,background-color .16s ease,color .16s ease,box-shadow .16s ease}.tab-label-compact{display:none}.tab-bar button:hover{border-color:#bfcce4;color:#2563eb;background:#fafcff;box-shadow:0 12px 26px #2563eb14}.tab-bar button.active{border-color:#2563eb;background:#2563eb;color:#fff;box-shadow:0 14px 30px #2563eb29}.tab-bar button.active svg{color:#fff}.top-add-port-button[data-slot=button]{flex:0 0 auto;min-height:50px;padding:0 22px;border:1px dashed rgb(99 102 241 / .32);border-radius:14px;background:#ffffff9e;color:#4f46e5;font-size:15px;font-weight:800;box-shadow:inset 0 1px #ffffffe6,0 10px 24px #4f46e514;transition:transform .16s ease,border-color .16s ease,background-color .16s ease,box-shadow .16s ease}.top-add-port-button[data-slot=button]:hover{transform:translateY(-1px);border-color:#6366f185;background:#f8faff;color:#4f46e5;box-shadow:inset 0 1px #ffffffeb,0 14px 30px #4f46e51f}.top-add-port-button[data-slot=button] svg{width:28px;height:28px;padding:6px;border-radius:999px;background:#eef2ff;color:#4f46e5}.top-add-node-control{flex:0 0 auto;display:inline-flex;align-items:stretch;border-radius:14px;box-shadow:inset 0 1px #ffffffe6,0 10px 24px #2563eb0f;transition:transform .16s ease,box-shadow .16s ease}.top-add-node-control:hover{transform:translateY(-1px);box-shadow:inset 0 1px #ffffffeb,0 14px 30px #2563eb1a}.top-add-node-button[data-slot=button],.top-add-node-menu-button[data-slot=button]{min-height:50px;border:1px solid rgb(207 218 237);background:#ffffffbd;color:#2563eb;font-size:15px;font-weight:800;box-shadow:none;transition:transform .16s ease,border-color .16s ease,background-color .16s ease,color .16s ease}.top-add-node-button[data-slot=button]{gap:9px;padding:0 18px 0 20px;border-radius:14px 0 0 14px}.top-add-node-menu-button[data-slot=button]{width:48px;padding:0;border-left-color:#e2e8f0;border-radius:0 14px 14px 0}.top-add-node-button[data-slot=button]:hover,.top-add-node-menu-button[data-slot=button]:hover{border-color:#94b8ff;background:#f8faff;color:#1d4ed8}.top-add-node-button[data-slot=button] svg{width:28px;height:28px;padding:6px;border-radius:999px;background:#eff6ff;color:#2563eb}.top-add-group-button[data-slot=button]{flex:0 0 auto;min-height:50px;padding:0 20px;border:1px solid rgb(207 218 237);border-radius:14px;background:#ffffffbd;color:#2563eb;font-size:15px;font-weight:800;box-shadow:inset 0 1px #ffffffe6,0 10px 24px #2563eb0f;transition:transform .16s ease,border-color .16s ease,background-color .16s ease,box-shadow .16s ease}.top-add-group-button[data-slot=button]:hover{transform:translateY(-1px);border-color:#94b8ff;background:#f8faff;color:#1d4ed8;box-shadow:inset 0 1px #ffffffeb,0 14px 30px #2563eb1a}.top-add-group-button[data-slot=button] svg{width:28px;height:28px;padding:6px;border-radius:999px;background:#eff6ff;color:#2563eb}.add-node-menu{min-width:164px}.add-node-menu-item{min-height:36px;font-weight:650}.panel{min-width:0;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none}.port-panel{display:grid;gap:0}.simple-panel{display:grid;gap:18px}.panel-heading{display:flex;align-items:center;justify-content:space-between;gap:16px}.panel-heading h2{display:flex;align-items:center;gap:14px;color:#0f172a;font-size:30px;line-height:1.2;font-weight:800}.panel-heading p{margin-top:8px;padding-left:58px;color:#64748b;font-size:15px}.section-title-icon{width:44px;height:44px;display:grid;place-items:center;flex:0 0 auto;border:1px solid rgb(99 102 241 / .12);border-radius:14px;color:#4f46e5;background:linear-gradient(135deg,#eef2ff,#fff);box-shadow:0 12px 28px #4f46e51a}.panel-icon{width:20px;height:20px;color:#64748b}.panel-actions{display:inline-flex;align-items:center;justify-content:flex-end;gap:10px;flex-wrap:wrap}.port-strip{flex:0 1 760px;display:flex;flex-wrap:wrap;justify-content:flex-end;gap:12px;padding-top:0}.port-strip span{min-height:50px;display:inline-flex;align-items:center;gap:11px;padding:0 18px;border:1px solid rgb(221 228 238);border-radius:14px;background:#fff;color:#1f2937;font-size:17px;font-weight:760;font-family:Fira Code,SFMono-Regular,Consolas,Liberation Mono,monospace;box-shadow:0 8px 20px #0f172a0a}.port-strip i{width:10px;height:10px;border-radius:999px;background:#22c55e;box-shadow:0 0 0 4px #22c55e1f}.port-strip span.status-failed{border-color:#fecaca;background:#fef2f2;color:#991b1b}.port-strip span.status-failed i{background:#ef4444;box-shadow:0 0 0 4px #ef444424}.port-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:36px;align-items:stretch}.port-card,.add-port-card{min-height:24rem;border:1px solid rgb(99 102 241 / .22);border-radius:18px;background:#ffffffe6;transition:transform .18s ease,border-color .18s ease,background-color .18s ease,box-shadow .18s ease}.port-card{position:relative;overflow:hidden;padding:28px 28px 18px;display:grid;grid-template-rows:auto 1fr auto;gap:14px;box-shadow:inset 0 1px #ffffffeb,0 18px 46px #4f46e512}.port-card:hover{transform:translateY(-1px)}.port-card:before{content:"";position:absolute;left:-4%;right:-4%;bottom:62px;height:116px;opacity:.58;background:repeating-radial-gradient(ellipse at 96% 90%,rgb(34 197 94 / .2) 0 1px,transparent 1px 5px);transform:skewY(-7deg);pointer-events:none}.port-card:after{content:"";position:absolute;left:0;right:0;bottom:62px;height:1px;background:#0f172a0f;pointer-events:none}.port-card.status-failed{border-color:#f8717199;background:linear-gradient(135deg,#fef2f2d1,#ffffffeb 40%),#fff;box-shadow:0 14px 32px #ef44441a}.port-card.status-closed,.port-card.status-notRunning{border-color:#94a3b852;background:linear-gradient(135deg,#f8fafcd1,#ffffffeb 40%),#fff}.port-card.status-running{border-color:#22c55e57;background:linear-gradient(135deg,#f0fdf4b8,#ffffffe6 38%),#fff;box-shadow:inset 0 1px #fffffff0,0 20px 50px #16a34a17}.port-card.status-failed:before{background:repeating-radial-gradient(ellipse at 96% 90%,rgb(239 68 68 / .18) 0 1px,transparent 1px 5px)}.port-card.status-closed:before,.port-card.status-notRunning:before{background:repeating-radial-gradient(ellipse at 96% 90%,rgb(100 116 139 / .16) 0 1px,transparent 1px 5px)}.port-card-header{position:relative;z-index:1;display:grid;grid-template-columns:56px minmax(0,1fr);align-items:start;gap:20px}.switch-button{width:56px;height:56px;margin-top:20px;border:1px solid #eee;border-radius:18px;display:grid;place-items:center;background:linear-gradient(135deg,#86efac,#4ade80);color:#fff;flex-shrink:0;box-shadow:none;transition:transform .16s ease,filter .16s ease,box-shadow .16s ease}.switch-button:hover{transform:translateY(-1px);filter:brightness(1.03);box-shadow:0 10px 22px #0f172a14}.switch-button.status-failed{background:linear-gradient(135deg,#fca5a5,#dc2626);color:#fff}.switch-button.status-closed,.switch-button.status-notRunning{background:linear-gradient(135deg,#e2e8f0,#94a3b8);color:#fff}.port-title{min-width:0}.port-title strong{display:block;color:#22c55e;font-family:Fira Code,SFMono-Regular,Consolas,Liberation Mono,monospace;font-size:30px;line-height:1.12;font-weight:800;letter-spacing:0}.port-title span{display:block;margin-top:8px;color:#556585;font-size:14px;font-weight:720}.port-title em{display:inline-flex;align-items:center;flex:0 0 auto;height:26px;color:#4b5c7e;font-size:16px;line-height:1;font-style:normal;font-weight:720}.port-summary-row{margin-top:12px;display:flex;flex-wrap:nowrap;align-items:center;gap:6px;min-width:0;max-width:100%;overflow:hidden}.port-tag{height:26px;display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;max-width:100%;padding:0 9px;border-radius:999px;background:#eff6ff;color:#2563eb;font-size:12px;line-height:26px;font-weight:800;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.port-tag:last-child{flex-shrink:1;min-width:0}.port-tag+.port-tag{background:#f0fdf4;color:#166534}.port-card.status-failed .port-title strong{color:#dc2626}.port-card.status-closed .port-title strong{color:#64748b}.port-card.status-notRunning .port-title strong{color:#475569}.port-status-chip{width:fit-content;min-height:24px;display:inline-flex;align-items:center;gap:7px;padding:6px 11px;border-radius:999px;background:#dcfce7;color:#166534;font-size:13px;line-height:1;font-weight:800}.port-status-chip i{width:7px;height:7px;border-radius:999px;background:currentColor}.port-status-chip.status-failed{background:#fee2e2;color:#b91c1c}.port-status-chip.status-closed{background:#f8fafc;color:#64748b}.port-status-chip.status-notRunning{background:#e2e8f0;color:#334155}.card-actions,.button-row,.modal-actions{display:flex;flex-wrap:wrap;gap:7px}.card-actions{position:relative;z-index:2;padding-top:0;align-items:center;justify-content:flex-end}.port-card-actions{position:absolute;top:0;right:0;display:grid;justify-items:end;gap:8px}.port-action-icons{display:flex;align-items:center;gap:7px}.port-actions-menu{min-width:152px}.port-actions-menu-item{min-height:36px;font-weight:650}.card-actions [data-slot=button]{color:#334155;background:transparent}.action-tooltip-trigger{display:inline-flex}.action-tooltip-content{z-index:60;max-width:min(360px,calc(100vw - 32px));padding:7px 10px;border-radius:9px;background:#0f172a;color:#fff;font-size:12px;line-height:1.2;font-weight:650;white-space:pre-line;overflow-wrap:anywhere;box-shadow:0 10px 22px #0f172a33;transform-origin:var(--reka-tooltip-content-transform-origin);animation:action-tooltip-in .14s ease}.action-tooltip-floating{position:fixed;pointer-events:none}.action-tooltip-floating-arrow{position:absolute;width:8px;height:8px;background:#0f172a}.action-tooltip-arrow{fill:#0f172a}@keyframes action-tooltip-in{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.danger-popover[data-slot=button]{width:42px;height:42px;border-radius:13px;background:#ffffffc7;color:#ef4444;box-shadow:inset 0 0 0 1px #f8717138,0 12px 22px #ef444414}.route-card-grid{position:relative;z-index:1;margin-top:6px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;align-content:start}.inner-route-card,.inner-add-card{min-height:68px;border:1px solid rgb(15 23 42 / .08);border-radius:12px;background:#fff;padding:11px 12px}.inner-route-card{position:relative;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:7px 10px;align-items:end;overflow:visible}.inner-route-card.active{border-color:#2563eb57;background:#eff6ff;box-shadow:inset 0 0 0 1px #2563eb1f}.route-main{grid-column:1 / span 2;min-width:0;padding-right:28px}.inner-route-card strong{position:relative;display:block;padding-left:18px;color:#0f172a;font-size:13px;line-height:1.1;font-weight:800;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.inner-route-card strong:before{content:"";position:absolute;left:0;top:50%;width:9px;height:9px;border-radius:999px;background:#22c55e;box-shadow:0 0 0 6px #22c55e1c;transform:translateY(-50%)}.inner-route-card.route-health-state-success strong:before{background:#22c55e;box-shadow:0 0 0 6px #22c55e1c}.inner-route-card.route-health-state-failure strong:before{background:#ef4444;box-shadow:0 0 0 6px #ef44441c}.inner-route-card.route-health-state-probing strong:before{background:#64748b;box-shadow:0 0 0 6px #64748b1f}.inner-route-card.route-health-state-unknown strong:before{background:#94a3b8;box-shadow:0 0 0 6px #94a3b81f}.route-card-meta{display:flex;align-items:center;gap:7px;min-width:0}.route-kind-badge{min-height:22px;display:inline-flex;flex:0 0 auto;align-items:center;padding:4px 7px;border-radius:999px;background:#dcfce7;color:#166534;font-size:11px;line-height:1;font-weight:850}.route-kind-badge.group{background:#dbeafe;color:#2563eb}.route-detail{min-width:0;color:#64748b;font-size:12px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.route-health{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:5px;color:#475569;font-family:Fira Code,SFMono-Regular,Consolas,Liberation Mono,monospace;font-size:11px;font-weight:750;line-height:1}.route-health small{min-width:0;min-height:18px;display:inline-flex;align-items:center;gap:4px;padding:3px 5px;border-radius:7px;background:#fff;box-shadow:inset 0 0 0 1px #0f172a0f}.route-health .latency{color:#0f172a}.route-health i{width:6px;height:6px;border-radius:999px;background:currentColor}.route-health .success{color:#16a34a}.route-health .success.unavailable,.route-health .failure{color:#dc2626}.group-route-health{min-width:0}.route-health.blacklisted small{background:#fef2f2;box-shadow:inset 0 0 0 1px #f8717147}.route-health.probing .latency,.node-health-strip.probing .latency{background:#2563eb;color:#fff;box-shadow:0 6px 16px #2563eb2e}.route-card-actions{position:absolute;top:6px;right:6px;z-index:20}.mini-menu-button{width:28px;height:28px;display:grid;place-items:center;border-radius:8px;background:transparent;color:#475569;transition:background-color .14s ease,color .14s ease}.mini-menu-button:hover,.mini-menu-button[aria-expanded=true],.mini-menu-button[data-state=open]{background:#0f172a0f;color:#0f172a}.route-actions-menu{min-width:152px}.route-actions-menu-item{min-height:36px;font-weight:650}.inner-add-card,.add-port-card{display:grid;place-items:center;align-content:center;gap:12px;color:#4f46e5;border-style:dashed;border-color:#6366f13d;background:#ffffff9e;transition:border-color .16s ease,background-color .16s ease,transform .16s ease}.inner-add-card{color:#475569;font-size:14px}.inner-add-card span,.add-port-card span{font-weight:800}.add-port-card{font-size:21px}.add-port-card svg{width:52px;height:52px;padding:13px;border-radius:999px;background:#eef2ff;color:#4f46e5}.add-port-card small{color:#64748b}.add-port-card:hover,.inner-add-card:hover{border-color:#6366f175;background:#f8faff;transform:translateY(-1px)}.port-card-footer{position:relative;z-index:1;min-height:42px;display:flex;align-items:end;justify-content:space-between;gap:12px;color:#64748b;font-size:13px;font-weight:650}.port-card-footer .danger-popover[data-slot=button]{transform:translateY(4px)}.field-grid.two{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}label{display:grid;gap:8px}label span{font-size:12px;font-weight:700;color:#475569}input,select,textarea{width:100%;min-height:42px;border-radius:11px;padding:10px 12px;border:1px solid rgb(148 163 184 / .35);background:#fff;color:#0f172a;outline:none}select[multiple]{min-height:112px}input:disabled{background:#f8fafc;color:#64748b;cursor:not-allowed}textarea{min-height:136px;resize:vertical}fieldset{min-width:0;display:grid;gap:7px}fieldset>span{color:#0f172a;font-size:12px;font-weight:800}input:focus,select:focus,textarea:focus{border-color:#22c55e;box-shadow:0 0 0 3px #22c55e24}.node-table{display:grid;gap:12px}.sub-heading{margin-top:18px}.node-filter-bar{display:flex;flex-wrap:wrap;align-items:center;gap:10px;max-height:150px;overflow:auto;padding:4px 4px 6px 0;scrollbar-width:thin}.node-empty-toggle,.node-filter-bar button{min-height:38px;max-width:100%;display:inline-flex;align-items:center;gap:9px;padding:7px 12px;border-radius:12px;border:1px solid rgb(15 23 42 / .08);background:#f8fafc;color:#334155;transition:transform .16s ease,background-color .16s ease,border-color .16s ease,color .16s ease}.node-empty-toggle{cursor:pointer}.node-empty-toggle input{width:15px;height:15px;min-height:0;padding:0;accent-color:rgb(15 23 42);box-shadow:none}.node-empty-toggle input:focus,.node-empty-toggle input:focus-visible{border-color:#94a3b859;box-shadow:none;outline:none}.node-filter-bar button:hover{transform:translateY(-1px);border-color:#22c55e47;background:#f0fdf4}.node-filter-bar button.active{border-color:#0f172a;background:#0f172a;color:#fff}.node-empty-toggle span,.node-filter-bar span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-weight:800}.node-filter-bar small{flex-shrink:0;color:#64748b;font-size:11px;font-weight:750}.node-filter-bar button.active small{color:#e2e8f0}.node-group-summary-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.group-card-search{width:min(520px,100%);display:grid;gap:8px}.group-card-search-box{min-height:46px;display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:10px;padding:0 13px;border:1px solid rgb(148 163 184 / .35);border-radius:14px;background:#fff;color:#64748b;box-shadow:0 10px 24px #0f172a09;transition:border-color .16s ease,box-shadow .16s ease}.group-card-search-box:focus-within{border-color:#22c55e;box-shadow:0 0 0 3px #22c55e24}.group-card-search-box input{min-height:44px;padding:0;border:0;border-radius:0;box-shadow:none}.group-card-search-box input:focus{box-shadow:none}.node-group-section-stack{display:grid;gap:22px}.node-group-subscriptions{display:grid;gap:14px;margin-top:2px;padding-top:22px;border-top:1px solid rgb(148 163 184 / .22)}.node-group-subscriptions .import-layout{grid-template-columns:minmax(0,1fr)}.node-group-subscriptions-header{display:grid;gap:6px;padding:0 2px}.node-group-subscriptions-header div{min-width:0;display:flex;flex-wrap:wrap;align-items:baseline;gap:10px}.node-group-subscriptions-header strong{min-width:0;color:#0f172a;font-size:16px;font-weight:850}.node-group-subscriptions-header span,.node-group-subscriptions-header small{color:#64748b;font-size:12px;font-weight:750}.node-group-subscriptions-header small{max-width:720px;line-height:1.45}.node-group-card-section{display:grid;gap:12px}.node-group-card-section-header{min-height:38px;display:flex;align-items:center;justify-content:space-between;gap:14px;padding:0 2px}.node-group-card-section-header div{min-width:0;display:flex;align-items:baseline;gap:10px}.node-group-card-section-header strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#0f172a;font-size:16px;font-weight:850}.node-group-card-section-header span,.node-group-card-section-header small{flex:0 0 auto;color:#64748b;font-size:12px;font-weight:750}.node-group-card-section-empty,.node-group-search-empty{margin:0;padding:18px;border:1px dashed rgb(148 163 184 / .34);border-radius:14px;background:#f8fafcb8;color:#64748b;font-size:13px;font-weight:650}.node-group-summary-card{position:relative;min-height:166px;padding:16px;border-radius:16px;color:#0f172a;transition:transform .16s ease,border-color .16s ease,background-color .16s ease,box-shadow .16s ease}.node-group-summary-card:hover{transform:translateY(-1px);border-color:#22c55e57;box-shadow:0 14px 32px #0f172a12}.node-group-summary-card.unavailable{border-color:#ef44447a;background:#fff1f2;box-shadow:0 12px 30px #be123c14}.node-group-summary-card.unavailable:before{content:"";position:absolute;pointer-events:none;top:14px;bottom:14px;left:0;width:4px;border-radius:0 999px 999px 0;background:#dc2626}.node-group-summary-card.unavailable:hover{border-color:#dc262694}.node-group-summary-main{width:100%;min-height:132px;display:grid;grid-template-columns:1fr auto;gap:10px 12px;align-items:start;background:transparent;color:inherit;text-align:left}.node-group-summary-actions{position:absolute;top:12px;right:12px;z-index:1;display:inline-flex;gap:6px}.node-group-summary-action{background:#f8fafc;color:#334155}.node-group-summary-action.danger:hover{background:#fef2f2;color:#dc2626}.node-summary-type{width:fit-content;min-height:26px;display:inline-flex;align-items:center;padding:5px 9px;border-radius:999px;background:#dcfce7;color:#166534;font-size:11px;font-weight:850}.node-summary-type.subscription{background:#dbeafe;color:#2563eb}.node-group-summary-card.unavailable .node-summary-type{background:#fee2e2;color:#b91c1c}.node-group-summary-card strong{grid-column:1 / span 2;padding-right:28px;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:15px;font-weight:850}.node-summary-count{justify-self:end;padding-right:32px;color:#0f172a;font-size:12px;font-weight:850}.node-group-summary-card.unavailable .node-summary-count{color:#b91c1c}.node-group-summary-card small{grid-column:1 / span 2;color:#64748b;font-size:12px;line-height:1.45}.node-summary-meta{grid-column:1 / span 2;display:flex;flex-wrap:wrap;gap:8px}.node-summary-meta em{min-height:24px;display:inline-flex;align-items:center;padding:4px 8px;border-radius:999px;background:#0f172a0d;color:#475569;font-size:11px;font-style:normal;font-weight:750}.node-group-summary-card.unavailable .node-summary-meta em{background:#fee2e2;color:#b91c1c}.active-node-group{padding:16px;border:1px solid rgb(15 23 42 / .08);border-radius:16px;background:#f8fafc}.node-search-row{display:flex;align-items:flex-end}.node-search-field{width:min(460px,100%)}.virtual-node-table{display:grid;gap:10px}.node-virtual-scroll{height:min(620px,70vh);overflow:auto;padding-right:4px}.empty-node-state{min-height:82px;display:flex;align-items:center;padding:16px;border:1px dashed rgb(148 163 184 / .5);border-radius:14px;color:#64748b;background:#fff;font-size:13px}.node-row{padding:14px;display:grid;grid-template-columns:72px minmax(0,1fr) auto;gap:12px;align-items:start;border-radius:14px;transition:transform .16s ease,border-color .16s ease,background-color .16s ease,box-shadow .16s ease}.node-row:hover{transform:translateY(-1px);border-color:#22c55e47;box-shadow:0 14px 32px #0f172a12}.group-row .node-protocol{background:#dbeafe;color:#2563eb}.group-route-card{grid-template-columns:minmax(0,1fr);border-color:#0f172a14;background:#fff}.group-route-card .route-kind-badge.group{background:#fff;color:#2563eb;box-shadow:inset 0 0 0 1px #2563eb2e}.group-route-card.active .route-kind-badge.group{background:#2563eb;color:#fff;box-shadow:none}.grouped-node-list,.node-group-section{display:grid;gap:12px}.node-group-section{padding-top:6px}.node-group-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;color:#0f172a}.node-group-title{min-width:0;display:flex;align-items:center;gap:10px}.node-group-heading strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:14px;font-weight:850}.node-group-heading span{color:#64748b;font-size:12px;font-weight:750}.node-group-health-summary{max-width:min(760px,72%);min-width:280px;display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px;padding:8px;border-radius:14px;background:#f8fafc;box-shadow:inset 0 0 0 1px #0f172a14;color:#475569}.node-group-health-summary span,.node-group-health-summary small{min-height:28px;display:inline-flex;align-items:center;padding:6px 10px;border-radius:8px;background:#fff;box-shadow:inset 0 0 0 1px #0f172a12;font-size:12px;font-weight:800;line-height:1;white-space:nowrap}.node-group-health-summary .available{color:#166534;background:#f0fdf4;box-shadow:inset 0 0 0 1px #22c55e38}.node-group-health-summary .fastest{color:#1e40af;background:#eff6ff;box-shadow:inset 0 0 0 1px #3b82f638}.node-group-health-summary .probing{color:#7c3aed;background:#f5f3ff;box-shadow:inset 0 0 0 1px #8b5cf638}.node-group-health-summary .probing.active{color:#fff;background:#7c3aed;box-shadow:0 8px 20px #7c3aed2e}.node-group-health-summary .probe-state{color:#475569;background:#fff}.node-group-health-summary .probe-state.active{color:#0369a1;background:#f0f9ff;box-shadow:inset 0 0 0 1px #0ea5e93d}.node-group-health-summary .probe-state.running{color:#fff;background:#0369a1;box-shadow:0 8px 20px #0369a12e}.node-group-health-summary .needs-probe{color:#854d0e;background:#fef9c3;box-shadow:inset 0 0 0 1px #eab30847}.node-group-health-summary .unavailable{color:#b91c1c;background:#fef2f2;box-shadow:inset 0 0 0 1px #f8717147}.node-protocol{min-height:30px;padding:7px 9px;border-radius:10px;background:#dcfce7;color:#16a34a;font-size:11px;font-weight:800;text-align:center}.node-protocol.chain{background:#fef9c3;color:#854d0e}.node-main strong{display:block;color:#0f172a;font-size:14px;font-weight:800}.node-main span{display:block;margin-top:4px;color:#64748b;font-size:12px;overflow-wrap:anywhere}.node-row-actions{display:inline-flex;align-items:center;justify-content:flex-end;gap:4px}.node-row-actions [data-slot=button]{color:#334155}.node-meta{grid-column:2 / span 2;display:flex;flex-wrap:wrap;align-items:center;gap:8px;color:#64748b;font-size:12px}.node-health-strip{display:inline-flex;flex-wrap:wrap;align-items:center;gap:5px;color:#475569;font-family:Fira Code,SFMono-Regular,Consolas,Liberation Mono,monospace;font-size:11px;font-weight:750;line-height:1}.node-health-strip small{min-height:18px;display:inline-flex;align-items:center;gap:4px;padding:3px 5px;border-radius:7px;background:#f8fafc;box-shadow:inset 0 0 0 1px #0f172a0f}.node-health-strip .latency{color:#0f172a}.node-health-strip i{width:6px;height:6px;border-radius:999px;background:currentColor}.node-health-strip .success{color:#16a34a}.node-health-strip .failure{color:#dc2626}.node-health-strip.blacklisted small{background:#fef2f2;box-shadow:inset 0 0 0 1px #f8717147}.node-health-strip.probe-unavailable .latency{color:#b91c1c;background:#fff;box-shadow:inset 0 0 0 1px #ef444447}.node-meta .action-tooltip-trigger{min-width:0}.node-meta .blacklisted,.node-meta .probe-unavailable{max-width:100%;min-height:18px;display:inline-flex;align-items:center;padding:3px 6px;border-radius:7px;background:#fef2f2;color:#b91c1c;font-weight:750;line-height:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.node-meta .probe-unavailable{background:#dc2626;color:#fff;box-shadow:0 6px 14px #dc262629}.manual-node-form,.import-layout{display:grid;gap:12px}.chain-node-form{padding:16px;border:1px solid rgb(15 23 42 / .08);border-radius:16px;background:#f8fafc}.chain-node-builder{display:grid;grid-template-columns:minmax(0,1fr) minmax(220px,.7fr);gap:12px;align-items:stretch}.chain-node-options{max-height:180px;display:grid;gap:7px;overflow:auto;padding:8px;border:1px solid rgb(148 163 184 / .24);border-radius:12px;background:#fff}.chain-node-options.compact{max-height:220px}.chain-node-options label{min-height:54px;display:grid;grid-template-columns:auto minmax(0,1fr);align-items:start;gap:8px;padding:8px 10px;border-radius:8px;color:#334155;font-size:12px;font-weight:750}.node-option-card{min-width:0;display:grid;grid-template-columns:auto minmax(0,1fr);gap:3px 8px;align-items:center}.node-option-card em{grid-row:1 / span 2;min-width:58px;height:24px;display:inline-grid;place-items:center;padding:0 7px;border-radius:999px;background:#dbeafe;color:#2563eb;font-size:10px;font-style:normal;font-weight:850}.node-option-card strong{min-width:0;color:#0f172a;font-size:13px;font-weight:850;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.node-option-card small{min-width:0;color:#64748b;font-size:11px;font-weight:650;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chain-node-options label.selected{background:#f0fdf4;color:#166534}.chain-node-options input{width:15px;height:15px;min-height:0;padding:0;accent-color:rgb(34 197 94)}.node-option-toolbar{display:grid;grid-template-columns:minmax(0,1fr) minmax(180px,.5fr);gap:8px;margin-bottom:8px}.node-option-toolbar>*{min-width:0}.node-group-filter-select{width:100%;min-width:0;min-height:42px;display:grid;grid-template-columns:minmax(0,1fr) 16px;align-items:center;gap:8px;padding:10px 12px;border:1px solid rgb(148 163 184 / .35);border-radius:11px;background:#fff;color:#0f172a;text-align:left;outline:none}.node-group-filter-select:hover,.node-group-filter-select:focus-visible,.node-group-filter-select[data-state=open]{border-color:#22c55e;box-shadow:0 0 0 3px #22c55e24}.node-group-filter-select span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.node-group-filter-select svg{justify-self:end;color:#64748b}.node-group-filter-select-menu{width:min(320px,calc(100vw - 36px));min-width:min(260px,calc(100vw - 36px));max-width:min(360px,calc(100vw - 36px));max-height:260px;overflow-y:auto}.node-group-filter-select-item{min-width:0;min-height:34px;display:grid;grid-template-columns:minmax(0,1fr) 16px;align-items:center;gap:8px;color:#334155;cursor:pointer}.node-group-filter-select-item.selected{background:#f0fdf4;color:#166534}.node-group-filter-select-item span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.node-group-filter-select-item svg{justify-self:end;color:#16a34a}.node-picker-box{display:grid;gap:8px}.route-node-option-list{max-height:240px;display:grid;gap:7px;overflow:auto;padding:8px;border:1px solid rgb(148 163 184 / .24);border-radius:12px;background:#fff}.route-node-option-list button{min-height:56px;display:grid;grid-template-columns:auto minmax(0,1fr);gap:3px 9px;align-items:center;padding:8px 10px;border:1px solid transparent;border-radius:8px;background:transparent;color:#334155;text-align:left}.route-node-option-list button.selected,.route-node-option-list button:hover{border-color:#22c55e42;background:#f0fdf4}.route-node-option-list em{grid-row:1 / span 2;min-width:58px;height:24px;display:inline-grid;place-items:center;padding:0 7px;border-radius:999px;background:#dbeafe;color:#2563eb;font-size:10px;font-style:normal;font-weight:850}.route-node-option-list span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#0f172a;font-size:13px;font-weight:850}.route-node-option-list small{min-width:0;color:#64748b;font-size:11px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chain-node-preview{min-height:112px;display:grid;align-content:start;gap:8px;padding:12px;border:1px solid rgb(148 163 184 / .24);border-radius:12px;background:#fff}.chain-node-preview strong{color:#0f172a;font-size:12px;font-weight:850}.chain-node-preview span{color:#475569;font-size:12px;line-height:1.5;overflow-wrap:anywhere}.chain-node-order{display:grid;gap:6px}.chain-node-order button{min-height:30px;display:grid;grid-template-columns:22px minmax(0,1fr) 16px;gap:8px;align-items:center;padding:5px 8px;border:1px solid rgb(148 163 184 / .24);border-radius:8px;background:#f8fafc;color:#334155;text-align:left}.chain-node-order button:hover{border-color:#22c55e52;background:#f0fdf4}.chain-node-order em{width:22px;height:22px;display:grid;place-items:center;border-radius:999px;background:#0f172a;color:#fff;font-size:11px;font-style:normal;font-weight:850}.chain-node-order button span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#0f172a;font-weight:750}.import-layout{grid-template-columns:1fr 1fr}.import-preview-panel{display:grid;gap:10px;padding:12px;border:1px solid rgb(148 163 184 / .28);border-radius:8px;background:#f8fafc}.import-preview-heading{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px}.import-preview-heading strong{color:#0f172a;font-size:14px;font-weight:800}.import-preview-heading span{color:#475569;font-size:12px}.import-preview-list{display:grid;gap:8px;max-height:260px;overflow:auto}.import-preview-item{display:grid;grid-template-columns:72px minmax(0,1fr);gap:4px 10px;padding:9px 10px;border:1px solid rgb(148 163 184 / .24);border-radius:8px;background:#fff}.import-preview-item span{color:#2563eb;font-size:12px;font-weight:800}.import-preview-item strong{min-width:0;color:#0f172a;font-size:13px;font-weight:800;overflow-wrap:anywhere}.import-preview-item small{grid-column:2;color:#64748b;font-size:12px;overflow-wrap:anywhere}.import-preview-item.muted{background:#f1f5f9;border-color:#94a3b833;opacity:.68}.import-preview-item.muted span,.import-preview-item.muted strong,.import-preview-item.muted small{color:#64748b}.inline-message,.toast-message{color:#64748b;font-size:12px}.toast-message{position:fixed;right:18px;bottom:18px;z-index:60;max-width:min(420px,calc(100vw - 36px));padding:11px 14px;border-radius:12px;background:#fff;border:1px solid rgb(15 23 42 / .08);box-shadow:0 10px 24px #0f172a1f;overflow-wrap:anywhere;line-height:1.5}.toast-message.toast-success{inset:86px auto auto 50%;max-width:min(520px,calc(100vw - 44px));padding:14px 16px 14px 18px;color:#064e3b;font-size:13px;font-weight:650;background:#ecfdf5;border-color:#22c55e9e;border-left:5px solid rgb(22 163 74);box-shadow:0 18px 38px #16a34a3d;transform:translate(-50%)}.modal-backdrop{position:fixed;inset:0;z-index:50;display:grid;place-items:center;padding:18px;background:#0f172a5c}.modal-card{width:min(520px,calc(100vw - 32px));max-height:calc(100vh - 36px);overflow:auto;display:grid;gap:14px;padding:18px;border-radius:16px;background:#fff;border:1px solid rgb(15 23 42 / .08);box-shadow:0 24px 64px #0f172a33}.route-node-modal{width:min(540px,calc(100vw - 32px));gap:16px;padding:20px}.node-create-modal{width:min(520px,calc(100vw - 32px))}.chain-node-create-modal,.group-create-modal{width:min(920px,calc(100vw - 32px))}.import-node-modal{width:min(680px,calc(100vw - 32px))}.node-edit-modal{width:min(520px,calc(100vw - 32px))}.chain-node-edit-modal{width:min(920px,calc(100vw - 32px))}.test-modal{width:min(620px,calc(100vw - 32px));gap:16px}.node-edit-modal textarea{min-height:88px}.test-url-form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:end}.test-url-form [data-slot=button]{min-height:42px}.test-result-panel{display:grid;gap:14px;padding:14px;border:1px solid rgb(148 163 184 / .22);border-radius:14px;background:#f8fafc}.test-result-panel.success{border-color:#22c55e47;background:#f0fdf4}.test-result-panel.failed{border-color:#f871714d;background:#fef2f2}.test-result-summary{min-width:0;display:grid;grid-template-columns:40px minmax(0,1fr);gap:10px;align-items:center}.test-result-icon{width:40px;height:40px;display:grid;place-items:center;border-radius:12px;background:#fff;color:#2563eb;box-shadow:inset 0 0 0 1px #0f172a0f}.test-result-summary strong{display:block;color:#0f172a;font-size:16px;font-weight:850}.test-result-summary small{display:block;margin-top:3px;color:#475569;font-size:12px;font-weight:650;overflow-wrap:anywhere}.test-result-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.test-result-grid div{min-width:0;display:grid;gap:4px;padding:10px;border-radius:10px;background:#ffffffc2;box-shadow:inset 0 0 0 1px #0f172a0d}.test-result-grid dt{color:#64748b;font-size:11px;font-weight:800}.test-result-grid dd{min-width:0;color:#0f172a;font-size:13px;font-weight:800;overflow-wrap:anywhere}.test-error{padding:10px 12px;border-radius:10px;background:#ffffffc7;color:#b91c1c;font-size:12px;font-weight:700;overflow-wrap:anywhere}.node-edit-group-field{display:grid;gap:5px;margin-top:14px;margin-bottom:-8px;padding-top:12px;border:0;background:transparent}.node-edit-group-label{color:#475569;font-size:12px;font-weight:700}.node-group-collapse-trigger{min-height:42px;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;padding:0 12px;border:1px solid rgb(226 232 240);border-radius:12px;background:#fff;color:#334155;text-align:left;box-shadow:0 1px #0f172a05}.node-group-collapse-trigger:hover{border-color:#94b8ff61;background:#f8faff}.node-group-collapse-trigger span{color:#475569;font-size:12px;font-weight:750}.node-group-collapse-trigger strong{min-width:0;color:#0f172a;font-size:13px;font-weight:800;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.node-group-collapse-trigger svg{color:#64748b;transition:transform .16s ease}.node-group-collapse-trigger[aria-expanded=true] svg{transform:rotate(180deg)}.node-group-collapse-panel{max-height:0;opacity:0;overflow:hidden;pointer-events:none;transition:max-height .18s ease,opacity .16s ease,margin-top .18s ease}.node-group-collapse-panel[data-expanded=true]{max-height:214px;margin-top:8px;opacity:1;pointer-events:auto}.node-group-collapse-panel>.node-edit-group-options{min-height:0;overflow:hidden}.node-group-collapse-panel[data-expanded=true]>.node-edit-group-options{overflow:auto}.node-edit-group-options{max-height:190px;display:grid;gap:7px;overflow:auto;padding:8px;border:1px solid rgb(148 163 184 / .24);border-radius:12px;background:#fff}.node-edit-group-options label{min-height:32px;display:flex;align-items:center;gap:8px;padding:6px 8px;border-radius:8px;color:#334155;font-size:12px;font-weight:750}.node-edit-group-options label.selected{background:#f0fdf4;color:#166534}.node-edit-group-options .node-edit-default-group{border-bottom:1px solid rgb(148 163 184 / .16);border-radius:8px 8px 4px 4px}.node-edit-group-options input{width:15px;height:15px;min-height:0;padding:0;accent-color:rgb(34 197 94)}.route-node-fields{display:grid;gap:14px}.route-source-field{min-width:0;display:grid;gap:8px;padding:0;border:0}.route-source-field legend{padding:0;color:#475569;font-size:12px;font-weight:700}.route-source-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.route-source-option{position:relative;min-width:0;display:block;cursor:pointer}.route-source-option input{position:absolute;inset:0;width:100%;height:100%;min-height:0;margin:0;padding:0;opacity:0;cursor:pointer}.route-source-option span{min-height:42px;display:flex;align-items:center;justify-content:center;gap:7px;padding:9px 10px;border:1px solid rgb(148 163 184 / .35);border-radius:11px;background:#f8fafc;color:#334155;font-size:13px;font-weight:800;line-height:1.15;text-align:center;transition:background-color .16s ease,border-color .16s ease,color .16s ease,box-shadow .16s ease}.route-source-option svg{flex:0 0 auto}.route-source-option:hover span{border-color:#22c55e6b;background:#f0fdf4}.route-source-option input:focus-visible+span{border-color:#22c55e;box-shadow:0 0 0 3px #22c55e24}.route-source-option.active span{border-color:#0f172a;background:#0f172a;color:#fff;box-shadow:0 12px 22px #0f172a29}.required-mark{color:#ef4444;font-style:normal}.route-node-error{margin-top:-8px;color:#dc2626;font-size:12px;font-weight:650}.modal-heading{display:flex;justify-content:space-between;gap:12px}.modal-heading h2{color:#0f172a;font-size:18px;font-weight:800}.modal-heading p{margin-top:5px;color:#64748b;font-size:13px}.icon-button{width:36px;height:36px;display:grid;place-items:center;border-radius:10px;background:#0f172a0d;color:#334155}.modal-actions{justify-content:flex-end}@media(max-width:1280px){.console-shell{padding:22px 24px 44px}.workspace-copy h1{font-size:30px}.port-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}}@media(max-width:860px){.console-shell{padding:12px;gap:18px}.workspace-panel{gap:18px}.brand-bar,.workspace-header,.panel-heading{flex-direction:column;align-items:stretch}.brand-lockup{gap:4px}.brand-logo{width:38px;height:31px}.brand-name{font-size:26px}.language-menu-trigger[data-slot=button],.github-link,.status-refresh[data-slot=button]{width:auto;justify-content:center}.brand-actions{justify-content:stretch}.language-menu-trigger[data-slot=button],.github-link,.settings-link,.status-refresh[data-slot=button]{flex:1 1 0}.workspace-copy h1{font-size:28px}.workspace-title-row{gap:10px}.workspace-count{min-height:30px;padding:0 11px;font-size:15px}.workspace-copy p{font-size:14px}.panel-heading h2{font-size:22px}.panel-heading p{padding-left:0;font-size:13px}.section-title-icon{width:38px;height:38px;border-radius:12px}.notice-bar{min-height:52px;padding:10px 12px;gap:10px;border-radius:12px}.notice-message{font-size:13px}.workspace-toolbar{align-items:stretch;flex-direction:column;gap:12px}.workspace-header,.notice-bar{display:none}.tab-bar{width:100%;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.tab-bar button{width:100%;min-width:0;min-height:42px;padding:0 10px;justify-content:center;gap:6px;font-size:12px;white-space:nowrap}.tab-bar button span{min-width:0}.tab-label-full{display:none}.tab-label-compact{display:inline}.top-add-port-button[data-slot=button]{width:100%;min-height:44px}.top-add-node-control{width:100%}.top-add-node-button[data-slot=button]{flex:1 1 auto;min-height:44px;justify-content:center}.top-add-node-menu-button[data-slot=button]{min-height:44px}.top-add-group-button[data-slot=button]{width:100%;min-height:44px;justify-content:center}.port-grid,.node-group-summary-grid,.chain-node-builder,.import-layout,.field-grid.two,.node-option-toolbar{grid-template-columns:1fr}.group-card-search{width:100%}.node-group-card-section-header{align-items:flex-start;flex-direction:column;gap:4px}.node-group-card-section-header div{width:100%;justify-content:space-between}.panel{padding:0}.port-card,.add-port-card{min-height:286px}.port-card-header{grid-template-columns:48px minmax(0,1fr);gap:12px}.switch-button{width:48px;height:48px;margin-top:0}.port-title strong{font-size:22px;overflow-wrap:anywhere}.port-title span,.port-title em{font-size:13px}.port-strip{display:none}.card-actions{grid-column:1 / span 2;justify-content:flex-start}.port-card-actions{position:static;justify-items:start}.panel-actions,.node-row-actions{justify-content:flex-start}.port-card-footer,.modal-actions,.test-url-form,.test-result-grid{grid-template-columns:1fr}.port-card-footer,.modal-actions{flex-direction:column;align-items:stretch}.route-card-grid,.node-row{grid-template-columns:1fr}.node-filter-bar button{flex:1 1 148px;justify-content:space-between}.node-group-summary-card{min-height:148px}.node-group-summary-main{min-height:114px}.node-group-heading{align-items:flex-start}.node-group-title{flex-direction:column;align-items:flex-start;gap:3px}.node-group-health-summary{width:100%;max-width:none;min-width:0;justify-content:flex-start}.node-meta{grid-column:auto}.toast-message{left:8px;right:8px;bottom:8px}.route-node-modal{padding:18px}.route-source-options{grid-template-columns:1fr}}@media(prefers-reduced-motion:reduce){.workspace-switch-enter-from,.workspace-switch-leave-to,.modal-pop-enter-from .modal-card,.modal-pop-leave-to .modal-card,.toast-slide-enter-from,.toast-slide-leave-to{transform:none}.toast-slide-enter-from.toast-success,.toast-slide-leave-to.toast-success{transform:translate(-50%)}.tab-bar button:hover,.top-add-port-button[data-slot=button]:hover,.top-add-node-control:hover,.top-add-group-button[data-slot=button]:hover,.port-card:hover,.add-port-card:hover,.inner-add-card:hover,.switch-button:hover,.node-filter-bar button:hover,.node-group-summary-card:hover,.node-row:hover{transform:none}}
