@charset "UTF-8";:root,.ms-theme-root,.shell-ui-theme{--ms-color-scheme: light;--ms-font-body: var(--mat-sys-body-medium);--ms-bg: #f4f7fb;--ms-surface: #ffffff;--ms-surface-elevated: #ffffff;--ms-surface-muted: #f8fafc;--ms-text: #0f172a;--ms-text-strong: #0f172a;--ms-text-muted: #64748b;--ms-border: #d8dee8;--ms-border-strong: #cbd5e1;--ms-primary: #0f766e;--ms-primary-hover: #115e59;--ms-primary-soft: #dff8ee;--ms-primary-contrast: #ffffff;--ms-accent: #2563eb;--ms-accent-soft: #eef6ff;--ms-info: var(--ms-accent);--ms-info-soft: var(--ms-accent-soft);--ms-danger: #b91c1c;--ms-danger-soft: #fef2f2;--ms-success: #047857;--ms-success-soft: #ecfdf5;--ms-warning: #92400e;--ms-warning-soft: #fff7ed;--ms-focus: color-mix(in srgb, var(--ms-primary) 48%, var(--ms-border));--ms-focus-ring: 0 0 0 3px color-mix(in srgb, var(--ms-primary) 16%, transparent);--ms-hover: color-mix(in srgb, var(--ms-primary) 8%, var(--ms-surface-muted));--ms-selected: var(--ms-primary-soft);--ms-disabled-bg: color-mix(in srgb, var(--ms-surface-muted) 72%, var(--ms-border));--ms-disabled-text: color-mix(in srgb, var(--ms-text-muted) 58%, var(--ms-bg));--ms-control-background: var(--ms-surface-elevated, var(--ms-surface));--ms-select-popup-bg: var(--ms-surface-elevated, var(--ms-surface));--ms-select-popup-text: var(--ms-text);--ms-select-popup-hover: color-mix(in srgb, var(--ms-primary) 10%, var(--ms-surface-muted));--ms-select-popup-selected: color-mix(in srgb, var(--ms-primary) 18%, var(--ms-surface));--ms-overlay: color-mix(in srgb, var(--ms-sidebar-bg) 36%, transparent);--ms-elev-1: 0 1px 2px rgba(15, 23, 42, .05), 0 1px 3px rgba(15, 23, 42, .07);--ms-elev-2: 0 6px 16px rgba(15, 23, 42, .08);--ms-elev-3: 0 16px 40px rgba(15, 23, 42, .14);--ms-shadow-soft: var(--ms-elev-1);--ms-shadow-strong: var(--ms-elev-3);--ms-shadow-control: var(--ms-elev-1);--ms-scrollbar-track: color-mix(in srgb, var(--ms-surface-muted) 52%, transparent);--ms-scrollbar-thumb: color-mix(in srgb, var(--ms-primary) 30%, var(--ms-border-strong));--ms-scrollbar-thumb-hover: color-mix(in srgb, var(--ms-primary) 48%, var(--ms-text-muted));--ms-radius-sm: 8px;--ms-radius-control: 10px;--ms-radius-panel: 14px;--ms-radius-lg: 20px;--ms-radius-pill: 999px;--ms-control-height: 42px;--ms-space-1: 4px;--ms-space-2: 8px;--ms-space-3: 12px;--ms-space-4: 16px;--ms-space-5: 20px;--ms-space-6: 24px;--ms-space-8: 32px;--ms-font-family: Roboto, "Helvetica Neue", sans-serif;--ms-text-xs: .75rem;--ms-text-sm: .8125rem;--ms-text-base: .875rem;--ms-text-md: .9375rem;--ms-text-lg: 1.0625rem;--ms-text-xl: 1.375rem;--ms-text-2xl: 1.75rem;--ms-weight-regular: 400;--ms-weight-medium: 500;--ms-weight-semibold: 600;--ms-weight-bold: 700;--ms-ease: cubic-bezier(.16, 1, .3, 1);--ms-ease-spring: cubic-bezier(.34, 1.56, .64, 1);--ms-dur-fast: .12s;--ms-dur: .2s;--ms-dur-slow: .32s;--ms-sidebar-bg: #111827;--ms-sidebar-text: #f8fafc;--ms-sidebar-muted: #cbd5e1;--ms-sidebar-subtle: #a7b3c4;--ms-sidebar-active-bg: #223048;--ms-sidebar-icon-bg: #334155;--ms-chart-1: var(--ms-primary);--ms-chart-2: var(--ms-accent);--ms-chart-3: var(--ms-success);--ms-chart-4: var(--ms-warning);--ms-chart-5: var(--ms-danger);--ms-chart-6: color-mix(in srgb, var(--ms-accent) 54%, var(--ms-primary))}[data-theme-mode=dark]{--ms-color-scheme: dark;--ms-overlay: color-mix(in srgb, var(--ms-sidebar-bg) 64%, transparent)}@font-face{font-display:block;font-family:Material Icons;font-style:normal;font-weight:400;src:url(/assets/fonts/material-icons.woff2) format("woff2")}@font-face{font-display:block;font-family:Material Icons Flutter;font-style:normal;font-weight:400;src:url(/assets/fonts/materialicons-regular.otf) format("opentype")}html{height:100%;--mat-sys-background: light-dark(#faf9fd, #121316);--mat-sys-error: light-dark(#ba1a1a, #ffb4ab);--mat-sys-error-container: light-dark(#ffdad6, #93000a);--mat-sys-inverse-on-surface: light-dark(#f2f0f4, #2f3033);--mat-sys-inverse-primary: light-dark(#abc7ff, #005cbb);--mat-sys-inverse-surface: light-dark(#2f3033, #e3e2e6);--mat-sys-on-background: light-dark(#1a1b1f, #e3e2e6);--mat-sys-on-error: light-dark(#ffffff, #690005);--mat-sys-on-error-container: light-dark(#93000a, #ffdad6);--mat-sys-on-primary: light-dark(#ffffff, #002f65);--mat-sys-on-primary-container: light-dark(#00458f, #d7e3ff);--mat-sys-on-primary-fixed: light-dark(#001b3f, #001b3f);--mat-sys-on-primary-fixed-variant: light-dark(#00458f, #00458f);--mat-sys-on-secondary: light-dark(#ffffff, #283041);--mat-sys-on-secondary-container: light-dark(#3e4759, #dae2f9);--mat-sys-on-secondary-fixed: light-dark(#131c2b, #131c2b);--mat-sys-on-secondary-fixed-variant: light-dark(#3e4759, #3e4759);--mat-sys-on-surface: light-dark(#1a1b1f, #e3e2e6);--mat-sys-on-surface-variant: light-dark(#44474e, #e0e2ec);--mat-sys-on-tertiary: light-dark(#ffffff, #0001ac);--mat-sys-on-tertiary-container: light-dark(#0000ef, #e0e0ff);--mat-sys-on-tertiary-fixed: light-dark(#00006e, #00006e);--mat-sys-on-tertiary-fixed-variant: light-dark(#0000ef, #0000ef);--mat-sys-outline: light-dark(#74777f, #8e9099);--mat-sys-outline-variant: light-dark(#c4c6d0, #44474e);--mat-sys-primary: light-dark(#005cbb, #abc7ff);--mat-sys-primary-container: light-dark(#d7e3ff, #00458f);--mat-sys-primary-fixed: light-dark(#d7e3ff, #d7e3ff);--mat-sys-primary-fixed-dim: light-dark(#abc7ff, #abc7ff);--mat-sys-scrim: light-dark(#000000, #000000);--mat-sys-secondary: light-dark(#565e71, #bec6dc);--mat-sys-secondary-container: light-dark(#dae2f9, #3e4759);--mat-sys-secondary-fixed: light-dark(#dae2f9, #dae2f9);--mat-sys-secondary-fixed-dim: light-dark(#bec6dc, #bec6dc);--mat-sys-shadow: light-dark(#000000, #000000);--mat-sys-surface: light-dark(#faf9fd, #121316);--mat-sys-surface-bright: light-dark(#faf9fd, #38393c);--mat-sys-surface-container: light-dark(#efedf0, #1f2022);--mat-sys-surface-container-high: light-dark(#e9e7eb, #292a2c);--mat-sys-surface-container-highest: light-dark(#e3e2e6, #343537);--mat-sys-surface-container-low: light-dark(#f4f3f6, #1a1b1f);--mat-sys-surface-container-lowest: light-dark(#ffffff, #0d0e11);--mat-sys-surface-dim: light-dark(#dbd9dd, #121316);--mat-sys-surface-tint: light-dark(#005cbb, #abc7ff);--mat-sys-surface-variant: light-dark(#e0e2ec, #44474e);--mat-sys-tertiary: light-dark(#343dff, #bec2ff);--mat-sys-tertiary-container: light-dark(#e0e0ff, #0000ef);--mat-sys-tertiary-fixed: light-dark(#e0e0ff, #e0e0ff);--mat-sys-tertiary-fixed-dim: light-dark(#bec2ff, #bec2ff);--mat-sys-neutral-variant20: #2d3038;--mat-sys-neutral10: #1a1b1f;--mat-sys-level0: 0px 0px 0px 0px rgba(0, 0, 0, .2), 0px 0px 0px 0px rgba(0, 0, 0, .14), 0px 0px 0px 0px rgba(0, 0, 0, .12);--mat-sys-level1: 0px 2px 1px -1px rgba(0, 0, 0, .2), 0px 1px 1px 0px rgba(0, 0, 0, .14), 0px 1px 3px 0px rgba(0, 0, 0, .12);--mat-sys-level2: 0px 3px 3px -2px rgba(0, 0, 0, .2), 0px 3px 4px 0px rgba(0, 0, 0, .14), 0px 1px 8px 0px rgba(0, 0, 0, .12);--mat-sys-level3: 0px 3px 5px -1px rgba(0, 0, 0, .2), 0px 6px 10px 0px rgba(0, 0, 0, .14), 0px 1px 18px 0px rgba(0, 0, 0, .12);--mat-sys-level4: 0px 5px 5px -3px rgba(0, 0, 0, .2), 0px 8px 10px 1px rgba(0, 0, 0, .14), 0px 3px 14px 2px rgba(0, 0, 0, .12);--mat-sys-level5: 0px 7px 8px -4px rgba(0, 0, 0, .2), 0px 12px 17px 2px rgba(0, 0, 0, .14), 0px 5px 22px 4px rgba(0, 0, 0, .12);--mat-sys-body-large: 400 1rem / 1.5rem Roboto, Helvetica Neue, sans-serif;--mat-sys-body-large-font: Roboto, Helvetica Neue, sans-serif;--mat-sys-body-large-line-height: 1.5rem;--mat-sys-body-large-size: 1rem;--mat-sys-body-large-tracking: .031rem;--mat-sys-body-large-weight: 400;--mat-sys-body-medium: 400 .875rem / 1.25rem Roboto, Helvetica Neue, sans-serif;--mat-sys-body-medium-font: Roboto, Helvetica Neue, sans-serif;--mat-sys-body-medium-line-height: 1.25rem;--mat-sys-body-medium-size: .875rem;--mat-sys-body-medium-tracking: .016rem;--mat-sys-body-medium-weight: 400;--mat-sys-body-small: 400 .75rem / 1rem Roboto, Helvetica Neue, sans-serif;--mat-sys-body-small-font: Roboto, Helvetica Neue, sans-serif;--mat-sys-body-small-line-height: 1rem;--mat-sys-body-small-size: .75rem;--mat-sys-body-small-tracking: .025rem;--mat-sys-body-small-weight: 400;--mat-sys-display-large: 400 3.562rem / 4rem Roboto, Helvetica Neue, sans-serif;--mat-sys-display-large-font: Roboto, Helvetica Neue, sans-serif;--mat-sys-display-large-line-height: 4rem;--mat-sys-display-large-size: 3.562rem;--mat-sys-display-large-tracking: -.016rem;--mat-sys-display-large-weight: 400;--mat-sys-display-medium: 400 2.812rem / 3.25rem Roboto, Helvetica Neue, sans-serif;--mat-sys-display-medium-font: Roboto, Helvetica Neue, sans-serif;--mat-sys-display-medium-line-height: 3.25rem;--mat-sys-display-medium-size: 2.812rem;--mat-sys-display-medium-tracking: 0;--mat-sys-display-medium-weight: 400;--mat-sys-display-small: 400 2.25rem / 2.75rem Roboto, Helvetica Neue, sans-serif;--mat-sys-display-small-font: Roboto, Helvetica Neue, sans-serif;--mat-sys-display-small-line-height: 2.75rem;--mat-sys-display-small-size: 2.25rem;--mat-sys-display-small-tracking: 0;--mat-sys-display-small-weight: 400;--mat-sys-headline-large: 400 2rem / 2.5rem Roboto, Helvetica Neue, sans-serif;--mat-sys-headline-large-font: Roboto, Helvetica Neue, sans-serif;--mat-sys-headline-large-line-height: 2.5rem;--mat-sys-headline-large-size: 2rem;--mat-sys-headline-large-tracking: 0;--mat-sys-headline-large-weight: 400;--mat-sys-headline-medium: 400 1.75rem / 2.25rem Roboto, Helvetica Neue, sans-serif;--mat-sys-headline-medium-font: Roboto, Helvetica Neue, sans-serif;--mat-sys-headline-medium-line-height: 2.25rem;--mat-sys-headline-medium-size: 1.75rem;--mat-sys-headline-medium-tracking: 0;--mat-sys-headline-medium-weight: 400;--mat-sys-headline-small: 400 1.5rem / 2rem Roboto, Helvetica Neue, sans-serif;--mat-sys-headline-small-font: Roboto, Helvetica Neue, sans-serif;--mat-sys-headline-small-line-height: 2rem;--mat-sys-headline-small-size: 1.5rem;--mat-sys-headline-small-tracking: 0;--mat-sys-headline-small-weight: 400;--mat-sys-label-large: 500 .875rem / 1.25rem Roboto, Helvetica Neue, sans-serif;--mat-sys-label-large-font: Roboto, Helvetica Neue, sans-serif;--mat-sys-label-large-line-height: 1.25rem;--mat-sys-label-large-size: .875rem;--mat-sys-label-large-tracking: .006rem;--mat-sys-label-large-weight: 500;--mat-sys-label-large-weight-prominent: 700;--mat-sys-label-medium: 500 .75rem / 1rem Roboto, Helvetica Neue, sans-serif;--mat-sys-label-medium-font: Roboto, Helvetica Neue, sans-serif;--mat-sys-label-medium-line-height: 1rem;--mat-sys-label-medium-size: .75rem;--mat-sys-label-medium-tracking: .031rem;--mat-sys-label-medium-weight: 500;--mat-sys-label-medium-weight-prominent: 700;--mat-sys-label-small: 500 .688rem / 1rem Roboto, Helvetica Neue, sans-serif;--mat-sys-label-small-font: Roboto, Helvetica Neue, sans-serif;--mat-sys-label-small-line-height: 1rem;--mat-sys-label-small-size: .688rem;--mat-sys-label-small-tracking: .031rem;--mat-sys-label-small-weight: 500;--mat-sys-title-large: 400 1.375rem / 1.75rem Roboto, Helvetica Neue, sans-serif;--mat-sys-title-large-font: Roboto, Helvetica Neue, sans-serif;--mat-sys-title-large-line-height: 1.75rem;--mat-sys-title-large-size: 1.375rem;--mat-sys-title-large-tracking: 0;--mat-sys-title-large-weight: 400;--mat-sys-title-medium: 500 1rem / 1.5rem Roboto, Helvetica Neue, sans-serif;--mat-sys-title-medium-font: Roboto, Helvetica Neue, sans-serif;--mat-sys-title-medium-line-height: 1.5rem;--mat-sys-title-medium-size: 1rem;--mat-sys-title-medium-tracking: .009rem;--mat-sys-title-medium-weight: 500;--mat-sys-title-small: 500 .875rem / 1.25rem Roboto, Helvetica Neue, sans-serif;--mat-sys-title-small-font: Roboto, Helvetica Neue, sans-serif;--mat-sys-title-small-line-height: 1.25rem;--mat-sys-title-small-size: .875rem;--mat-sys-title-small-tracking: .006rem;--mat-sys-title-small-weight: 500;--mat-sys-corner-extra-large: 28px;--mat-sys-corner-extra-large-top: 28px 28px 0 0;--mat-sys-corner-extra-small: 4px;--mat-sys-corner-extra-small-top: 4px 4px 0 0;--mat-sys-corner-full: 9999px;--mat-sys-corner-large: 16px;--mat-sys-corner-large-end: 0 16px 16px 0;--mat-sys-corner-large-start: 16px 0 0 16px;--mat-sys-corner-large-top: 16px 16px 0 0;--mat-sys-corner-medium: 12px;--mat-sys-corner-none: 0;--mat-sys-corner-small: 8px;--mat-sys-dragged-state-layer-opacity: .16;--mat-sys-focus-state-layer-opacity: .12;--mat-sys-hover-state-layer-opacity: .08;--mat-sys-pressed-state-layer-opacity: .12}body{color-scheme:var(--ms-color-scheme, light);background-color:var(--ms-bg);color:var(--ms-text);font:var(--ms-font-body);margin:0;height:100%}*{box-sizing:border-box}@supports not selector(::-webkit-scrollbar){*{scrollbar-color:var(--ms-scrollbar-thumb) transparent;scrollbar-width:thin}}*::-webkit-scrollbar{width:8px;height:8px;background:transparent}*::-webkit-scrollbar-track{background:transparent}*::-webkit-scrollbar-track-piece{background:transparent}*::-webkit-scrollbar-thumb{background-color:var(--ms-scrollbar-thumb);background-clip:content-box;border:2px solid transparent;border-radius:999px}*::-webkit-scrollbar-thumb:hover{background-color:var(--ms-scrollbar-thumb-hover);background-clip:content-box}*::-webkit-scrollbar-button,*::-webkit-scrollbar-button:single-button,*::-webkit-scrollbar-button:vertical:decrement,*::-webkit-scrollbar-button:vertical:increment,*::-webkit-scrollbar-button:horizontal:decrement,*::-webkit-scrollbar-button:horizontal:increment{width:0!important;height:0!important;display:none!important;background:transparent!important;-webkit-appearance:none}*::-webkit-scrollbar-corner{background:transparent}html,body{height:100%}html{background:var(--ms-bg);overflow-x:hidden}body{background:var(--ms-bg);color:var(--ms-text);font-family:var(--ms-font-family);margin:0}a{color:inherit;text-decoration:none}button,select{font:inherit}select{background:var(--ms-control-background);border:1px solid var(--ms-border);border-radius:var(--ms-radius-control, 8px);color:var(--ms-text);color-scheme:var(--ms-color-scheme, light);min-height:var(--ms-control-height, 40px);min-width:0;padding:0 12px;transition:background .15s ease,border-color .15s ease,box-shadow .15s ease,color .15s ease}select:not([multiple]){appearance:none;background:linear-gradient(45deg,transparent 50%,currentColor 50%) calc(100% - 16px) 50%/5px 5px no-repeat,linear-gradient(135deg,currentColor 50%,transparent 50%) calc(100% - 11px) 50%/5px 5px no-repeat,var(--ms-control-background);padding-right:max(32px,2.5em)}select:hover:not(:disabled){border-color:var(--ms-border-strong)}select:focus-visible,select:open{border-color:var(--ms-focus);box-shadow:var(--ms-focus-ring);outline:0}select:disabled{background:var(--ms-disabled-bg);color:var(--ms-disabled-text);cursor:not-allowed;opacity:.68}select option,select optgroup{background-color:var(--ms-select-popup-bg);color:var(--ms-select-popup-text)}select option:checked{background-color:var(--ms-select-popup-selected);color:var(--ms-select-popup-text)}select option:hover{background-color:var(--ms-select-popup-hover)}select option:disabled{color:var(--ms-disabled-text)}.material-icons{direction:ltr;display:inline-block;font-family:Material Icons;font-feature-settings:"liga";font-size:24px;font-style:normal;font-weight:400;letter-spacing:0;line-height:1;text-transform:none;white-space:nowrap;word-wrap:normal;-webkit-font-feature-settings:"liga";-webkit-font-smoothing:antialiased}@keyframes platform-ui-skeleton{0%,to{opacity:.54}50%{opacity:1}}@media(prefers-reduced-motion:reduce){::view-transition-group(*),::view-transition-old(*),::view-transition-new(*){animation:none!important}.profile-menu,.skip-link{animation:none;transition:none}}.floating-tooltip-overlay{--floating-tooltip-arrow-left: 24px;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:linear-gradient(180deg,color-mix(in srgb,var(--ms-sidebar-bg) 96%,transparent) 0% 100%);border:1px solid color-mix(in srgb,var(--ms-primary) 28%,transparent);border-radius:12px;box-shadow:0 18px 36px color-mix(in srgb,var(--ms-sidebar-bg) 20%,transparent),0 0 0 1px color-mix(in srgb,var(--ms-sidebar-bg) 4%,transparent);color:var(--ms-sidebar-text);left:0;max-width:min(280px,100vw - 24px);opacity:0;pointer-events:none;position:fixed;top:0;transform:translateY(6px) scale(.98);transition:opacity .16s ease,transform .18s ease;z-index:2000}.floating-tooltip-overlay--visible{opacity:1;transform:translateY(0) scale(1)}.floating-tooltip-overlay__body{font-size:.74rem;font-style:normal;font-weight:500;line-height:1.45;padding:10px 12px;text-transform:none;white-space:normal}.floating-tooltip-overlay__arrow{background:color-mix(in srgb,var(--ms-sidebar-bg) 98%,transparent);border-bottom:1px solid color-mix(in srgb,var(--ms-primary) 28%,transparent);border-right:1px solid color-mix(in srgb,var(--ms-primary) 28%,transparent);height:10px;left:var(--floating-tooltip-arrow-left);position:absolute;transform:translate(-50%) rotate(45deg);width:10px}.floating-tooltip-overlay--top .floating-tooltip-overlay__arrow{bottom:-5px}.floating-tooltip-overlay--bottom .floating-tooltip-overlay__arrow{top:-5px;transform:translate(-50%) rotate(225deg)}.pc-overflow{background:var(--ms-panel-bg, var(--ms-surface));border:1px solid var(--ms-border);border-radius:var(--ms-radius-panel, 8px);display:grid;gap:12px;grid-template-rows:auto minmax(0,1fr);left:var(--pc-overflow-left, 24px);max-height:var(--pc-overflow-max-height, min(70vh, 620px));padding:14px;position:fixed;top:var(--pc-overflow-top, 24px);width:min(420px,100vw - 32px);z-index:21}.pc-overflow-head{align-items:center;background:var(--ms-panel-bg, var(--ms-surface));border-bottom:1px solid var(--ms-border);display:flex;justify-content:space-between;padding-bottom:10px;position:sticky;top:0;z-index:1}.pc-overflow-head div{display:grid;gap:4px}.pc-overflow-head strong{color:var(--ms-text);font-size:.98rem}.pc-overflow-head span{color:var(--ms-text-muted);font-size:.78rem}.pc-close{align-items:center;appearance:none;background:transparent;border:0;border-radius:var(--ms-radius-control, 8px);color:var(--ms-text-muted);cursor:pointer;display:inline-flex;font:inherit;height:34px;justify-content:center;padding:0;width:34px}.pc-close:hover{background:var(--ms-surface-muted);color:var(--ms-text)}.pc-overflow-list{display:flex;flex-direction:column;gap:6px;min-height:0;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;padding-right:4px}.pc-overflow-event{flex:0 0 auto;min-height:44px;width:100%}.pc-overflow-event span,.pc-overflow-event small{line-height:1.25}.platform-calendar__more-chip{appearance:none;background:var(--ms-surface);border:1px dashed var(--ms-border-strong);border-radius:999px;color:var(--ms-text-muted);cursor:pointer;font:inherit;font-size:.72rem;font-weight:900;justify-self:start;padding:4px 10px}.platform-calendar__more-chip:hover{border-color:var(--ms-primary);color:var(--ms-primary)}@media(max-width:560px){.pc-overflow{width:calc(100vw - 24px)}}.platform-calendar__event{transition:background .15s ease,border-color .15s ease,box-shadow .15s ease}.platform-calendar__nav button:focus-visible,.platform-calendar__views button:focus-visible,.platform-calendar__month-title:focus-visible,.platform-calendar__mini-day:focus-visible,.platform-calendar__day-number:focus-visible,.platform-calendar__agenda-date:focus-visible{box-shadow:var(--ms-focus-ring);outline:0}.platform-calendar__event:hover,.platform-calendar__event:focus-visible{background:color-mix(in srgb,var(--platform-calendar-event-accent) 28%,var(--ms-surface));box-shadow:0 0 0 2px color-mix(in srgb,var(--platform-calendar-event-accent) 20%,transparent);outline:0}.platform-calendar__event[data-tone=info]{--platform-calendar-event-accent: var(--ms-accent)}.platform-calendar__event[data-tone=neutral]{--platform-calendar-event-accent: var(--ms-border-strong)}.platform-calendar__event[data-tone=danger],.platform-calendar__event[data-tone=alta],.platform-calendar__event[data-tone=high]{--platform-calendar-event-accent: var(--ms-danger)}.platform-calendar__event[data-tone=warning],.platform-calendar__event[data-tone=media],.platform-calendar__event[data-tone=medium]{--platform-calendar-event-accent: var(--ms-warning)}.platform-calendar__event[data-tone=success],.platform-calendar__event[data-tone=bassa],.platform-calendar__event[data-tone=low]{--platform-calendar-event-accent: var(--ms-success)}.platform-calendar__more-chip{background:var(--ms-surface);border:1px dashed var(--ms-border-strong);border-radius:999px;color:var(--ms-text-muted);cursor:pointer;font:inherit;font-size:.68rem;font-weight:900;min-height:22px;padding:0 7px;text-align:center}.platform-calendar__more-chip:hover,.platform-calendar__more-chip:focus-visible{background:var(--ms-primary);border-color:var(--ms-primary);color:var(--ms-primary-contrast);outline:0}.platform-calendar__title-row>div,.platform-calendar__summary,.platform-calendar__legend{align-items:center;display:flex;flex-wrap:wrap;gap:6px;min-width:0}.platform-calendar__summary{justify-content:flex-end}.platform-calendar__summary span,.platform-calendar__legend span{align-items:center;background:var(--ms-surface-muted);border:1px solid var(--ms-border);border-radius:var(--ms-radius-control, 8px);color:var(--ms-text-muted);display:inline-flex;font-size:.68rem;font-weight:850;gap:5px;min-height:24px;padding:0 7px}.platform-calendar__legend i{background:var(--platform-calendar-event-accent, var(--ms-primary));border-radius:999px;height:7px;width:7px}.platform-calendar__legend span[data-tone=danger],.platform-calendar__legend span[data-tone=alta],.platform-calendar__legend span[data-tone=high]{--platform-calendar-event-accent: var(--ms-danger)}.platform-calendar__legend span[data-tone=warning],.platform-calendar__legend span[data-tone=media],.platform-calendar__legend span[data-tone=medium]{--platform-calendar-event-accent: var(--ms-warning)}.platform-calendar__legend span[data-tone=success],.platform-calendar__legend span[data-tone=bassa],.platform-calendar__legend span[data-tone=low]{--platform-calendar-event-accent: var(--ms-success)}.platform-calendar__legend span[data-tone=info]{--platform-calendar-event-accent: var(--ms-accent)}.platform-calendar__state--error,.platform-calendar__empty{align-items:center;gap:8px}.platform-calendar__state--error{justify-items:start}.platform-calendar__empty{display:grid;justify-items:center;min-height:108px;padding:16px;text-align:center}.platform-calendar__state--error>.material-icons{color:var(--ms-danger);font-size:24px}.platform-calendar__empty>.material-icons{color:var(--ms-text-muted);font-size:24px}.platform-calendar__state--error strong,.platform-calendar__empty strong{color:var(--ms-text);font-size:.88rem}.platform-calendar__state--error p,.platform-calendar__empty p{color:var(--ms-text-muted);font-size:.78rem;line-height:1.4;margin:0}.platform-calendar__state--error button{background:var(--ms-danger-soft);border:1px solid color-mix(in srgb,var(--ms-danger) 32%,var(--ms-border));border-radius:var(--ms-radius-control, 8px);color:var(--ms-danger);cursor:pointer;font:inherit;font-weight:900;min-height:34px;padding:0 10px}@media(max-width:900px){.platform-calendar__title-row{align-items:stretch;display:grid;gap:8px}.platform-calendar__summary{justify-content:flex-start}}.pc-overflow{background:var(--ms-surface-elevated, var(--ms-surface));border:1px solid var(--ms-border);border-radius:var(--ms-radius-panel, 8px);box-shadow:0 16px 36px color-mix(in srgb,var(--ms-sidebar-bg) 20%,transparent);display:grid;left:var(--pc-overflow-left);max-height:var(--pc-overflow-max-height);min-width:min(320px,100vw - 24px);overflow:hidden;position:fixed;top:var(--pc-overflow-top);width:min(340px,100vw - 24px);z-index:45}.pc-overflow-head{align-items:center;background:var(--ms-surface);border-bottom:1px solid var(--ms-border);display:flex;justify-content:space-between;padding:8px 10px;position:sticky;top:0;z-index:1}.pc-overflow-head div{display:grid;gap:2px}.pc-overflow-head strong{color:var(--ms-text);font-size:.82rem}.pc-overflow-head span{color:var(--ms-text-muted);font-size:.7rem;font-weight:800}.pc-close{align-items:center;background:transparent;border:0;border-radius:var(--ms-radius-control, 8px);color:var(--ms-text-muted);cursor:pointer;display:inline-flex;font:inherit;height:28px;justify-content:center;padding:0;width:28px}.pc-close:hover,.pc-close:focus-visible{background:var(--ms-surface-muted);color:var(--ms-text);outline:0}.pc-close .material-icons{font-size:18px}.pc-overflow-list{display:flex;flex-direction:column;gap:5px;max-height:calc(var(--pc-overflow-max-height) - 54px);overflow-y:auto;padding:8px}.pc-overflow-event{flex:0 0 auto;min-height:34px}@keyframes overlay-fade-in{0%{opacity:0}55%{opacity:1}}@keyframes overlay-fade-out{45%{opacity:1}to{opacity:0}}@keyframes overlay-reveal-in{0%{transform:translate(var(--dx, 0px),var(--dy, 0px));clip-path:inset(44% 44% 44% 44% round var(--ms-radius-panel, 14px))}to{transform:translate(0);clip-path:inset(0 0 0 0 round var(--ms-radius-panel, 14px))}}@keyframes overlay-reveal-out{0%{transform:translate(0);clip-path:inset(0 0 0 0 round var(--ms-radius-panel, 14px))}to{transform:translate(var(--dx, 0px),var(--dy, 0px));clip-path:inset(44% 44% 44% 44% round var(--ms-radius-panel, 14px))}}@keyframes drawer-slide-in-end{0%{transform:translate(100%)}}@keyframes drawer-slide-out-end{to{transform:translate(100%)}}@keyframes drawer-slide-in-start{0%{transform:translate(-100%)}}@keyframes drawer-slide-out-start{to{transform:translate(-100%)}}app-ui-studio-page .studio-header{align-items:center;background:linear-gradient(135deg,var(--ms-surface) 0%,var(--ms-surface-muted) 78%,color-mix(in srgb,var(--ms-primary-soft) 70%,var(--ms-surface)) 100%);border:1px solid var(--ms-border);border-radius:10px;display:flex;flex-wrap:wrap;gap:10px 14px;justify-content:space-between;padding:12px 14px}app-ui-studio-page .studio-heading,app-ui-studio-page .studio-toolbar,app-ui-studio-page .panel-heading__copy{display:grid}app-ui-studio-page .studio-heading,app-ui-studio-page .panel-heading__copy{gap:2px;min-width:0}app-ui-studio-page .studio-toolbar{gap:8px;justify-items:end}app-ui-studio-page .studio-summary,app-ui-studio-page .panel-heading__meta{display:flex;flex-wrap:wrap;gap:6px}app-ui-studio-page .inspector-workspace{display:grid;gap:0}app-ui-studio-page .component-browser__toolbar{align-items:start;gap:10px}app-ui-studio-page .structure-toolbar{align-items:center;display:flex;flex-wrap:nowrap;gap:4px}app-ui-studio-page .structure-toolbar__icon,app-ui-studio-page .structure-toolbar__add{align-items:center;display:inline-flex;gap:5px;justify-content:center;min-height:30px}app-ui-studio-page .structure-toolbar__icon{padding:0;width:30px}app-ui-studio-page .structure-toolbar__icon .material-icons,app-ui-studio-page .structure-toolbar__add .material-icons{font-size:17px;line-height:1}app-ui-studio-page .structure-search{align-items:center;background:var(--ms-surface);border:1px solid var(--ms-border);border-radius:8px;display:flex;gap:6px;min-height:34px;padding:0 8px}app-ui-studio-page .structure-search:focus-within{border-color:var(--ms-border-strong);box-shadow:var(--ms-focus-ring)}app-ui-studio-page .structure-search__icon{color:var(--ms-text-muted);flex:0 0 auto;font-size:18px;line-height:1}app-ui-studio-page .structure-search input{border:0;min-height:30px;padding:0}app-ui-studio-page .structure-search input:focus{outline:none}app-ui-studio-page .structure-search__clear{align-items:center;background:transparent;border:0;color:var(--ms-text-muted);display:inline-flex;height:24px;justify-content:center;min-height:24px;padding:0;width:24px}app-ui-studio-page .structure-search__clear:hover{background:var(--ms-accent-soft);color:var(--ms-text)}app-ui-studio-page .structure-search__clear .material-icons{font-size:16px;line-height:1}app-ui-studio-page .structure-breadcrumb{align-items:center;display:flex;gap:4px;min-width:0;overflow:hidden}app-ui-studio-page .structure-breadcrumb button{background:transparent;border:0;color:var(--ms-text-muted);font-size:.72rem;font-weight:800;min-height:24px;min-width:0;overflow:hidden;padding:0 2px;text-overflow:ellipsis;white-space:nowrap}app-ui-studio-page .structure-breadcrumb button:not(:last-child):after{color:var(--ms-text-muted);content:"/";margin-left:6px}app-ui-studio-page .structure-breadcrumb button:last-child{color:var(--ms-text)}app-ui-studio-page .component-list{background:var(--ms-surface);border:1px solid var(--ms-border);border-radius:10px;display:grid;overflow:visible;position:relative}app-ui-studio-page .component-item-list{align-items:center;color:var(--ms-text);display:flex;gap:2px;min-height:42px;min-width:0;padding:0 6px 0 calc(8px + var(--depth, 0) * 16px);position:relative}app-ui-studio-page .component-item-list:before{background:var(--ms-border-strong);content:"";height:1px;left:calc(var(--depth, 0) * 16px - 3px);opacity:0;position:absolute;top:50%;width:10px}app-ui-studio-page .component-item-list--child{background:var(--ms-surface-muted);border-radius:7px;margin:2px 6px 2px 4px;min-height:36px;padding-bottom:1px;padding-top:1px}app-ui-studio-page .component-item-list--child:before{opacity:.85}app-ui-studio-page .component-item-list--child+.component-item-list--child{border-top:0}app-ui-studio-page .component-item-list--selected:after{background:var(--ms-primary);border-radius:999px;bottom:7px;content:"";left:0;position:absolute;top:7px;width:3px}app-ui-studio-page .component-item-list--dragging{opacity:.48}app-ui-studio-page .component-item-list+.component-item-list{border-top:1px solid var(--ms-surface-muted)}app-ui-studio-page .component-item-list--selected{background:var(--ms-accent-soft)}app-ui-studio-page .component-item-list--palette-open{z-index:30}app-ui-studio-page .component-item-list:hover{background:var(--ms-surface-muted)}app-ui-studio-page .component-item-list--child:hover{background:var(--ms-surface-muted)}app-ui-studio-page .component-item-list--selected:hover{background:var(--ms-accent-soft)}app-ui-studio-page .component-item{align-items:center;background:transparent;color:var(--ms-text);display:flex;flex:1 1 auto;gap:10px;justify-content:space-between;min-width:0;padding:5px 6px;text-align:left;width:100%}app-ui-studio-page .component-item-list--child .component-item{padding-bottom:3px;padding-top:3px}app-ui-studio-page .component-drag-handle,app-ui-studio-page .component-add-child{align-items:center;background:transparent;border:0;border-radius:6px;color:var(--ms-text-muted);display:inline-flex;flex:0 0 auto;height:28px;justify-content:center;min-height:28px;padding:0;width:28px;top:100%}app-ui-studio-page .component-drag-handle{cursor:grab;opacity:0}app-ui-studio-page .component-drag-handle:active{cursor:grabbing}app-ui-studio-page .component-drag-handle:hover,app-ui-studio-page .component-add-child:hover,app-ui-studio-page .component-add-child:focus-visible,app-ui-studio-page .component-add-child--open{background:var(--ms-accent-soft);color:var(--ms-text)}app-ui-studio-page .component-add-child{background:var(--ms-surface);border:1px solid var(--ms-border);border-radius:0 0 8px 8px;box-shadow:0 5px 14px color-mix(in srgb,var(--ms-sidebar-bg) 12%,transparent);color:var(--ms-primary);height:24px;min-height:24px;opacity:0;position:absolute;right:34px;bottom:-15px;transform:translateY(-4px) scale(.92);transition:opacity .12s ease,transform .12s ease,background-color .12s ease,border-color .12s ease;width:44px;z-index:3}app-ui-studio-page .component-item-list--container:hover .component-add-child,app-ui-studio-page .component-item-list--container:focus-within .component-add-child,app-ui-studio-page .component-item-list--selected .component-add-child,app-ui-studio-page .component-add-child--open{opacity:1;transform:translateY(0) scale(1)}app-ui-studio-page .component-item-list:hover .component-drag-handle,app-ui-studio-page .component-item-list:focus-within .component-drag-handle,app-ui-studio-page .component-item-list--selected .component-drag-handle{opacity:1}app-ui-studio-page .component-add-child:hover,app-ui-studio-page .component-add-child:focus-visible,app-ui-studio-page .component-add-child--open{border-color:var(--ms-border-strong);box-shadow:0 7px 18px color-mix(in srgb,var(--ms-primary) 18%,transparent)}app-ui-studio-page .component-drag-handle__icon,app-ui-studio-page .component-add-child__icon{font-size:18px;line-height:1}app-ui-studio-page .toggle-arrow{align-items:center;background:transparent;border:none;color:var(--ms-text-muted);display:flex;justify-content:center;min-height:24px;padding:0;width:18px}app-ui-studio-page .toggle-arrow:hover{color:var(--ms-text)}app-ui-studio-page .toggle-arrow .material-icons{font-size:18px;line-height:1}app-ui-studio-page .toggle-arrow--placeholder{opacity:0;pointer-events:none}app-ui-studio-page .component-item__main{align-items:center;display:flex;gap:8px;overflow:hidden;width:100%}app-ui-studio-page .component-item__node-icon{color:var(--ms-text-muted);flex:0 0 auto;font-size:17px;line-height:1}app-ui-studio-page .component-item__copy{display:grid;gap:2px;min-width:0}app-ui-studio-page .component-item__name{color:var(--ms-text);font-size:.82rem;font-weight:700;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;width:100%}app-ui-studio-page .component-item__subline{align-items:center;color:var(--ms-text-muted);display:flex;font-size:.64rem;font-weight:800;gap:6px;min-width:0}app-ui-studio-page .component-item__subline span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}app-ui-studio-page .component-item-list--child .component-item__subline{display:none}app-ui-studio-page .component-item__badges{align-items:center;display:flex;flex:0 0 auto;gap:5px;min-width:0}app-ui-studio-page .component-item__meta{background:var(--ms-surface-muted);border:1px solid var(--ms-border);border-radius:999px;color:var(--ms-text-muted);flex:0 0 auto;font-size:.62rem;font-weight:800;max-width:96px;overflow:hidden;padding:2px 6px;text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap}app-ui-studio-page .component-item__tab-badge{align-items:center;background:color-mix(in srgb,var(--ms-primary) 12%,transparent);border:1px solid color-mix(in srgb,var(--ms-primary) 34%,var(--ms-border));border-radius:999px;color:var(--ms-primary);display:inline-flex;flex:0 0 auto;font-size:.62rem;font-weight:800;gap:3px;max-width:120px;overflow:hidden;padding:2px 7px 2px 5px;text-overflow:ellipsis;white-space:nowrap}app-ui-studio-page .component-item__tab-badge .material-icons{font-size:13px}app-ui-studio-page .component-item-list--child .component-item__meta{background:transparent;border-color:transparent;color:var(--ms-text-muted);max-width:84px;padding-inline:2px}app-ui-studio-page .component-item__count{align-items:center;background:var(--ms-success-soft);border:1px solid color-mix(in srgb,var(--ms-success) 32%,var(--ms-border));border-radius:999px;color:var(--ms-success);display:inline-flex;flex:0 0 auto;font-size:.66rem;font-weight:900;height:18px;justify-content:center;min-width:18px;padding:0 5px}app-ui-studio-page .inspector-empty--compact{min-height:92px}app-ui-studio-page .studio-grid{align-items:stretch;grid-template-columns:minmax(0,1fr) clamp(360px,31vw,420px);height:100%;min-height:min(760px,100vh - 96px)}app-ui-studio-page .studio-grid--inspector-collapsed{grid-template-columns:minmax(0,1fr) 64px}app-ui-studio-page .preview-panel{grid-template-rows:auto auto auto minmax(0,1fr);height:100%;min-height:min(720px,100vh - 96px)}app-ui-studio-page .preview-surface{display:grid;grid-row:-2/-1;height:100%;min-height:420px}app-ui-studio-page .preview-surface app-shell-json-renderer,app-ui-studio-page .preview-surface .shell-ui-theme{display:block;min-height:100%}app-ui-studio-page .preview-surface .sj-page{align-content:start;min-height:420px}app-ui-studio-page .page-switcher{align-items:flex-start;background:var(--ms-surface);border-bottom:1px solid var(--ms-bg);display:flex;gap:8px;min-height:48px;min-width:0;padding:4px 8px 0;position:relative}app-ui-studio-page .page-switcher__controls{align-items:center;display:flex;flex:1 1 auto;gap:4px;min-width:0}app-ui-studio-page .page-switcher__tabs{align-items:center;background:transparent;display:flex;flex:1 1 auto;flex-wrap:nowrap;gap:4px;min-width:0;overflow-x:hidden;overflow-y:hidden;scroll-behavior:smooth;-webkit-overflow-scrolling:touch}app-ui-studio-page .page-switcher__tabs.page-switcher__tabs--expanded{flex-wrap:wrap;max-height:180px;overflow-x:hidden;overflow-y:auto}app-ui-studio-page .page-switcher__tabs::-webkit-scrollbar{height:6px}app-ui-studio-page .page-switcher__tabs::-webkit-scrollbar-thumb{background:var(--ms-scrollbar-thumb);border-radius:999px}app-ui-studio-page .page-switcher__scroll-control,app-ui-studio-page .page-switcher__expand{align-items:center;align-self:center;appearance:none;background:transparent;border:0;border-radius:15px;color:var(--ms-text-muted);display:inline-flex;flex:0 0 auto;height:34px;justify-content:center;min-height:34px;padding:0;transition:background .2s,color .2s;width:34px}app-ui-studio-page .page-switcher__scroll-control:hover:not(:disabled),app-ui-studio-page .page-switcher__expand:hover{color:var(--ms-primary);cursor:pointer}app-ui-studio-page .page-switcher__scroll-control:disabled{cursor:not-allowed;opacity:.4}app-ui-studio-page .page-switcher__tab{align-items:center;appearance:none;background:transparent;border:0;border-radius:6px 6px 0 0;color:var(--ms-text-muted);display:inline-flex;flex:0 0 auto;gap:8px;justify-content:center;max-width:190px;min-height:44px;min-width:112px;padding:0 10px;position:relative}app-ui-studio-page .page-switcher__tab .material-icons{flex:0 0 auto;font-size:18px;line-height:1}app-ui-studio-page .page-switcher__tab--active{background:var(--ms-bg);color:var(--ms-primary);margin:0 1px -1px;z-index:20}app-ui-studio-page .page-switcher__tab--active:before,app-ui-studio-page .page-switcher__tab--active:after{background:transparent;bottom:0;clip-path:inset(-100% -100% 0% -100%);content:"";height:15px;position:absolute;width:15px;z-index:20}app-ui-studio-page .page-switcher__tab--active:before{border-bottom:1px solid var(--ms-bg);border-bottom-right-radius:15px;box-shadow:4px 4px 0 0 var(--ms-bg);left:-15px}app-ui-studio-page .page-switcher__tab--active:after{border-bottom:1px solid var(--ms-bg);border-bottom-left-radius:15px;box-shadow:-4px 4px 0 0 var(--ms-bg);right:-15px}app-ui-studio-page .page-switcher__tab--inactive{height:40px;min-height:0}app-ui-studio-page .page-switcher__tab--inactive:hover{background:var(--ms-primary-soft);border-radius:8px;color:var(--ms-text)}app-ui-studio-page .page-switcher__label{color:inherit;font-size:.82rem;font-weight:800;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}app-ui-studio-page .page-switcher__add{align-items:center;align-self:center;appearance:none;background:var(--ms-surface-muted);border:0;border-bottom:1px solid var(--ms-border);border-radius:50%;color:var(--ms-text-muted);display:inline-flex;flex:0 0 auto;height:34px;justify-content:center;min-height:34px;padding:0;width:34px}app-ui-studio-page .page-switcher__add:hover:not(:disabled){background:var(--ms-primary-soft);color:var(--ms-primary)}app-ui-studio-page .page-switcher__add .material-icons{font-size:20px}app-ui-studio-page .inspector-panel{background:linear-gradient(180deg,var(--ms-surface) 0%,var(--ms-surface-muted) 100%);border:0;border-left:1px solid var(--ms-border);border-bottom:1px solid var(--ms-border);padding-bottom:18px;border-radius:0;box-shadow:none;grid-template-rows:auto minmax(0,1fr) auto;height:100%}app-ui-studio-page .inspector-panel--collapsed{grid-template-rows:1fr}app-ui-studio-page .panel-heading__copy p{margin:0}app-ui-studio-page .panel-heading__title{align-items:center;display:inline-flex;gap:8px;min-width:0}app-ui-studio-page .panel-heading__copy p{color:var(--ms-text-muted);font-size:.78rem;line-height:1.3}app-ui-studio-page .studio-pill,app-ui-studio-page .panel-chip,app-ui-studio-page .valid,app-ui-studio-page .invalid,app-ui-studio-page .loading-label{border-radius:999px;font-size:.68rem;font-weight:900;padding:5px 8px}app-ui-studio-page .studio-pill,app-ui-studio-page .panel-chip{background:var(--ms-surface);border:1px solid var(--ms-border);color:var(--ms-text-muted)}app-ui-studio-page .valid{background:var(--ms-success-soft);border:1px solid color-mix(in srgb,var(--ms-success) 36%,var(--ms-border));color:var(--ms-success)}app-ui-studio-page .invalid{background:var(--ms-danger-soft);border:1px solid color-mix(in srgb,var(--ms-danger) 32%,var(--ms-border));color:var(--ms-danger)}app-ui-studio-page .studio-pill--danger{background:var(--ms-danger-soft);border-color:color-mix(in srgb,var(--ms-danger) 32%,var(--ms-border));color:var(--ms-danger)}app-ui-studio-page .studio-actions--inspector{align-items:center;gap:8px}app-ui-studio-page .inspector-toggle{align-items:center;background:transparent;border:0;border-radius:8px;color:var(--ms-text-muted);display:inline-flex;flex:0 0 auto;height:28px;justify-content:center;min-height:28px;padding:0;width:28px}app-ui-studio-page .inspector-toggle:hover{background:var(--ms-accent-soft);color:var(--ms-text)}app-ui-studio-page .inspector-toggle .material-icons{font-size:18px;line-height:1}app-ui-studio-page .inspector-rail{align-items:center;display:grid;gap:12px;grid-template-rows:auto 1fr auto;height:100%;justify-items:center;padding:12px 0}app-ui-studio-page .inspector-rail__label{color:var(--ms-text-muted);font-size:.72rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;transform:rotate(180deg);writing-mode:vertical-rl}app-ui-studio-page .inspector-rail__state{border-radius:999px;height:8px;width:8px}app-ui-studio-page .inspector-rail__state--valid{background:var(--ms-success)}app-ui-studio-page .studio-action-setup{min-height:32px}app-ui-studio-page .studio-action-icon{align-items:center;display:inline-flex;height:32px;justify-content:center;min-height:32px;min-width:32px;padding:0;width:32px}app-ui-studio-page .studio-action-icon .material-icons{font-size:18px;line-height:1}app-ui-studio-page .studio-action-icon--primary{border-color:var(--ms-primary)}app-ui-studio-page .setup-panel--embedded{background:linear-gradient(180deg,var(--ms-surface-muted) 0%,var(--ms-surface-muted) 100%);border:1px solid var(--ms-border);border-radius:10px;padding:10px}app-ui-studio-page .inspector-panel--setup-open,app-ui-studio-page .inspector-body--setup{overflow:visible}app-ui-studio-page .setup-editor{display:grid;gap:18px;overflow-y:visible;padding:22px 24px 28px}app-ui-studio-page .setup-modal{background:color-mix(in srgb,var(--ms-sidebar-bg) 24%,transparent);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;height:100%;inset:0;justify-content:center;min-height:0;padding:12px 0;position:fixed;z-index:220}app-ui-studio-page .setup-modal__dialog{background:var(--ms-surface);border:1px solid var(--ms-border);border-radius:16px;box-shadow:0 18px 46px color-mix(in srgb,var(--ms-sidebar-bg) 16%,transparent);display:grid;grid-template-rows:auto minmax(0,1fr);max-height:100%;max-width:1480px;min-height:0;overflow:hidden;width:calc(100% - 12px)}app-ui-studio-page .setup-modal__header{align-items:flex-start;border-bottom:1px solid var(--ms-border);display:flex;gap:16px;justify-content:space-between;padding:20px 24px}app-ui-studio-page .setup-modal__title{display:grid;gap:6px;min-width:0}app-ui-studio-page .setup-modal__title p,app-ui-studio-page .setup-modal__section-copy p{color:var(--ms-text-muted);font-size:.8rem;line-height:1.45;margin:0}app-ui-studio-page .setup-modal__header-actions{align-items:center;display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}app-ui-studio-page .setup-modal__layout{display:grid;grid-template-columns:220px minmax(0,1fr);min-height:0}app-ui-studio-page .setup-modal__nav{align-content:start;background:linear-gradient(180deg,var(--ms-surface-muted) 0%,var(--ms-surface-muted) 100%);border-right:1px solid var(--ms-border);display:grid;gap:8px;padding:18px 16px}app-ui-studio-page .setup-modal__nav .secondary{align-items:center;display:grid;gap:10px;grid-template-columns:auto minmax(0,1fr) auto;justify-content:flex-start;min-height:40px;text-align:left}app-ui-studio-page .setup-modal__nav-count{align-items:center;background:var(--ms-surface-muted);border-radius:999px;color:var(--ms-text-muted);display:inline-flex;font-size:.68rem;font-weight:800;justify-content:center;min-width:24px;padding:0 8px}app-ui-studio-page .setup-modal__body{min-height:0;overflow:auto}app-ui-studio-page .setup-modal__section{background:linear-gradient(180deg,var(--ms-surface) 0%,var(--ms-surface-muted) 100%);border:1px solid var(--ms-border);border-radius:14px;overflow:hidden;scroll-margin-top:18px}app-ui-studio-page .setup-modal__section+.setup-modal__section{margin-top:2px}app-ui-studio-page .setup-modal__section-copy{display:grid;gap:4px}app-ui-studio-page .setup-modal__section-toggle{align-items:center;background:transparent;border:0;display:flex;gap:12px;justify-content:space-between;padding:14px 16px;text-align:left;width:100%}app-ui-studio-page .setup-modal__section-main{align-items:flex-start;display:flex;gap:12px;min-width:0}app-ui-studio-page .setup-modal__section-icon{color:var(--ms-text-muted);flex:0 0 auto;font-size:20px;line-height:1;margin-top:2px}app-ui-studio-page .setup-modal__section-title-row{align-items:center;display:flex;gap:6px;min-width:0}app-ui-studio-page .setup-modal__section-title-row strong{color:var(--ms-text);font-size:.92rem;font-weight:800}app-ui-studio-page .setup-modal__section-summary{color:var(--ms-text-muted);font-size:.75rem;font-weight:700;line-height:1.45}app-ui-studio-page .setup-modal__section-meta{align-items:center;display:flex;flex:0 0 auto;gap:10px}app-ui-studio-page .setup-modal__section-badge{align-items:center;background:var(--ms-accent-soft);border:1px solid var(--ms-border);border-radius:999px;color:var(--ms-accent);display:inline-flex;font-size:.7rem;font-weight:800;min-height:28px;padding:0 10px}app-ui-studio-page .setup-modal__section-chevron{color:var(--ms-text-muted);font-size:20px;line-height:1;transition:transform .16s ease}app-ui-studio-page .setup-modal__section--open .setup-modal__section-toggle{border-bottom:1px solid var(--ms-border)}app-ui-studio-page .setup-modal__section--open .setup-modal__section-chevron{transform:rotate(180deg)}app-ui-studio-page .setup-modal__section-panel{display:grid;gap:12px;padding:16px}app-ui-studio-page .tab-strip{background:var(--ms-surface-muted);border:1px solid var(--ms-border);border-radius:9px;display:flex;gap:4px;padding:3px}app-ui-studio-page .tab-button{background:transparent;border-color:transparent;color:var(--ms-text-muted);min-height:30px;padding:0 10px}app-ui-studio-page .tab-button--active{background:var(--ms-surface);border-color:var(--ms-border);box-shadow:0 1px 2px color-mix(in srgb,var(--ms-sidebar-bg) 6%,transparent);color:var(--ms-text)}app-ui-studio-page .component-editor__header{align-items:start;display:flex;gap:10px;justify-content:space-between}app-ui-studio-page .component-editor__lead{align-items:start;display:flex;gap:8px;min-width:0}app-ui-studio-page .component-editor__meta,app-ui-studio-page .component-editor__title{display:grid;gap:2px;min-width:0}app-ui-studio-page .component-editor__title strong{color:var(--ms-text);font-size:.92rem}app-ui-studio-page .component-editor__title span{color:var(--ms-text-muted);font-size:.78rem}app-ui-studio-page .component-editor__actions{display:flex;flex:0 0 auto;gap:6px}app-ui-studio-page .component-editor__toggle{min-height:30px}app-ui-studio-page .component-back{align-items:center;background:transparent;border:0;border-radius:6px;color:var(--ms-text-muted);display:inline-flex;flex:0 0 auto;height:28px;justify-content:center;min-height:28px;padding:0;width:28px}app-ui-studio-page .component-back:hover{background:var(--ms-accent-soft);color:var(--ms-text)}app-ui-studio-page .component-back__icon{font-size:18px;line-height:1}app-ui-studio-page .field-label{align-items:center;display:inline-flex;gap:6px;min-width:0}app-ui-studio-page .field-hint{align-items:center;color:var(--ms-text-muted);cursor:help;display:inline-flex;flex:0 0 auto;position:relative}app-ui-studio-page .field-hint__icon{align-items:center;display:inline-flex;font-size:15px;justify-content:center;line-height:1;min-width:15px;text-transform:none}app-ui-studio-page .field-hint__tooltip{display:none}app-ui-studio-page .field-hint:hover .field-hint__icon,app-ui-studio-page .field-hint:focus-visible .field-hint__icon{color:var(--ms-text-muted)}app-ui-studio-page .floating-tooltip-overlay{--floating-tooltip-arrow-left: 24px;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:linear-gradient(180deg,color-mix(in srgb,var(--ms-sidebar-bg) 96%,transparent) 0% 100%);border:1px solid color-mix(in srgb,var(--ms-primary) 28%,transparent);border-radius:12px;box-shadow:0 18px 36px color-mix(in srgb,var(--ms-sidebar-bg) 20%,transparent),0 0 0 1px color-mix(in srgb,var(--ms-sidebar-bg) 4%,transparent);color:var(--ms-sidebar-text);left:0;max-width:min(280px,100vw - 24px);opacity:0;pointer-events:none;position:fixed;top:0;transform:translateY(6px) scale(.98);transition:opacity .16s ease,transform .18s ease;z-index:2000}app-ui-studio-page .floating-tooltip-overlay--visible{opacity:1;transform:translateY(0) scale(1)}app-ui-studio-page .floating-tooltip-overlay__body{font-size:.74rem;font-style:normal;font-weight:500;line-height:1.45;padding:10px 12px;text-transform:none;white-space:normal}app-ui-studio-page .floating-tooltip-overlay__arrow{background:color-mix(in srgb,var(--ms-sidebar-bg) 98%,transparent);border-bottom:1px solid color-mix(in srgb,var(--ms-primary) 28%,transparent);border-right:1px solid color-mix(in srgb,var(--ms-primary) 28%,transparent);height:10px;left:var(--floating-tooltip-arrow-left);position:absolute;transform:translate(-50%) rotate(45deg);width:10px}app-ui-studio-page .floating-tooltip-overlay--top .floating-tooltip-overlay__arrow{bottom:-5px}app-ui-studio-page .floating-tooltip-overlay--bottom .floating-tooltip-overlay__arrow{top:-5px;transform:translate(-50%) rotate(225deg)}app-ui-studio-page .icon-picker{display:grid;gap:8px}app-ui-studio-page .icon-picker__trigger{align-items:center;background:var(--ms-surface);border:1px solid var(--ms-border);border-radius:10px;color:var(--ms-text);display:flex;gap:12px;justify-content:space-between;min-height:46px;padding:8px 10px;text-align:left;width:100%}app-ui-studio-page .icon-picker__trigger:hover{border-color:var(--ms-border-strong)}app-ui-studio-page .icon-picker__trigger-main{align-items:center;display:flex;gap:10px;min-width:0}app-ui-studio-page .icon-picker__preview,app-ui-studio-page .icon-picker__item-icon{font-size:20px;line-height:1}app-ui-studio-page .icon-picker__mobile-glyph{direction:ltr;display:inline-block;font-family:Material Icons Flutter;font-feature-settings:normal;font-style:normal;font-weight:400;letter-spacing:0;text-transform:none;white-space:nowrap;word-wrap:normal;-webkit-font-smoothing:antialiased}app-ui-studio-page .icon-picker__trigger-copy{display:grid;gap:2px;min-width:0}app-ui-studio-page .icon-picker__trigger-copy strong,app-ui-studio-page .icon-picker__trigger-copy span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}app-ui-studio-page .icon-picker__trigger-copy strong{font-size:.85rem;font-weight:800}app-ui-studio-page .icon-picker__trigger-copy span,app-ui-studio-page .icon-picker__toolbar span,app-ui-studio-page .icon-picker__empty{color:var(--ms-text-muted);font-size:.74rem;font-weight:700}app-ui-studio-page .icon-picker__expand{color:var(--ms-text-muted);flex:0 0 auto;font-size:18px;line-height:1}app-ui-studio-page .icon-picker__panel{background:linear-gradient(180deg,var(--ms-surface) 0%,var(--ms-surface-muted) 100%);border:1px solid var(--ms-border);border-radius:12px;box-shadow:0 12px 32px color-mix(in srgb,var(--ms-sidebar-bg) 8%,transparent);display:grid;gap:10px;padding:10px}app-ui-studio-page .icon-picker__search{align-items:center;background:var(--ms-surface);border:1px solid var(--ms-border);border-radius:10px;display:grid;gap:8px;grid-template-columns:auto minmax(0,1fr);padding:0 10px}app-ui-studio-page .icon-picker__search input{border:0;min-height:38px;outline:none;padding:0}app-ui-studio-page .icon-picker__search-icon{color:var(--ms-text-muted);font-size:18px;line-height:1}app-ui-studio-page .icon-picker__toolbar{align-items:center;display:flex;gap:8px;justify-content:space-between}app-ui-studio-page .icon-picker__clear{min-height:32px;padding:0 10px}app-ui-studio-page .icon-picker__grid{display:grid;gap:8px;grid-template-columns:repeat(auto-fill,minmax(92px,1fr));max-height:320px;overflow:auto;padding-right:2px}app-ui-studio-page .icon-picker__item{align-items:center;background:var(--ms-surface);border:1px solid var(--ms-border);border-radius:10px;color:var(--ms-text);display:grid;gap:6px;justify-items:center;min-height:76px;padding:8px 6px;text-align:center}app-ui-studio-page .icon-picker__item:hover{border-color:var(--ms-primary);transform:translateY(-1px)}app-ui-studio-page .icon-picker__item--selected{background:var(--ms-primary-soft);border-color:var(--ms-primary);color:var(--ms-primary)}app-ui-studio-page .icon-picker__item-label{font-size:.66rem;font-weight:700;line-height:1.2;overflow-wrap:anywhere}app-ui-studio-page .icon-picker__empty{align-items:center;display:flex;justify-content:center;min-height:92px}app-ui-studio-page .multi-select-field{background:var(--ms-surface-muted);border:1px solid var(--ms-border);border-radius:10px;display:grid;gap:10px;min-width:0;padding:10px}app-ui-studio-page .multi-select-field__summary{align-items:baseline;color:var(--ms-text-muted);display:flex;gap:6px}app-ui-studio-page .multi-select-field__summary strong{color:var(--ms-text);font-size:.95rem}app-ui-studio-page .multi-select-field__summary span,app-ui-studio-page .multi-select-field__empty{font-size:.76rem;font-weight:700}app-ui-studio-page .multi-select-field__options{display:grid;gap:8px;grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}app-ui-studio-page .multi-select-field__option{align-items:center;background:var(--ms-surface);border:1px solid var(--ms-border);border-radius:8px;cursor:pointer;display:flex;gap:8px;min-width:0;padding:8px 10px}app-ui-studio-page .multi-select-field__option input{margin:0;min-height:auto;width:auto}app-ui-studio-page .multi-select-field__option span{color:var(--ms-text);font-size:.8rem;font-weight:700;min-width:0;overflow:hidden;text-overflow:ellipsis}app-ui-studio-page .multi-select-field__empty{color:var(--ms-text-muted)}app-ui-studio-page .action-request-preview,app-ui-studio-page .action-request-section{background:var(--ms-surface-muted);border:1px solid var(--ms-border);border-radius:10px;display:grid;gap:10px;padding:10px}app-ui-studio-page .action-request-preview strong,app-ui-studio-page .action-request-section__header strong{color:var(--ms-text);font-size:.78rem;font-weight:800}app-ui-studio-page .action-request-preview span,app-ui-studio-page .action-request-section__header span{color:var(--ms-text-muted);font-size:.72rem;font-weight:700}app-ui-studio-page .action-request-section__header{align-items:baseline;display:flex;gap:8px;justify-content:space-between}app-ui-studio-page .action-request-group{display:grid;gap:8px}app-ui-studio-page .action-request-group+.action-request-group{border-top:1px solid var(--ms-border);padding-top:10px}app-ui-studio-page .action-request-group__title{color:var(--ms-text);font-size:.72rem;font-weight:800;letter-spacing:.04em;text-transform:uppercase}app-ui-studio-page .setup-registry{display:grid;gap:10px}app-ui-studio-page .setup-registry__header{align-items:center;display:flex;gap:10px;justify-content:space-between}app-ui-studio-page .setup-registry__title{align-items:center;display:inline-flex;gap:6px}app-ui-studio-page .setup-registry__header strong{color:var(--ms-text);display:block;font-size:.82rem;font-weight:800}app-ui-studio-page .setup-registry__header span{color:var(--ms-text-muted);font-size:.72rem;font-weight:700}app-ui-studio-page .setup-registry__list{display:grid;gap:10px}app-ui-studio-page .setup-registry__item{background:linear-gradient(180deg,var(--ms-surface-muted) 0%,var(--ms-surface-muted) 100%);border:1px solid var(--ms-border);border-radius:12px;overflow:hidden}app-ui-studio-page .setup-registry__toggle{align-items:center;background:transparent;border:0;display:flex;gap:10px;justify-content:space-between;min-height:0;padding:10px 12px;text-align:left;width:100%}app-ui-studio-page .setup-registry__toggle-main{align-items:center;display:flex;gap:10px;min-width:0}app-ui-studio-page .setup-registry__toggle-icon,app-ui-studio-page .setup-registry__toggle-chevron{color:var(--ms-text-muted);flex:0 0 auto;font-size:18px;line-height:1}app-ui-studio-page .setup-registry__toggle-copy{display:grid;gap:2px;min-width:0}app-ui-studio-page .setup-registry__toggle-copy strong,app-ui-studio-page .setup-registry__toggle-copy span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}app-ui-studio-page .setup-registry__toggle-copy strong{color:var(--ms-text);font-size:.82rem;font-weight:800}app-ui-studio-page .setup-registry__toggle-copy span{color:var(--ms-text-muted);font-size:.72rem;font-weight:700}app-ui-studio-page .setup-registry__item--open .setup-registry__toggle{border-bottom:1px solid var(--ms-border)}app-ui-studio-page .setup-registry__item--open .setup-registry__toggle-chevron{transform:rotate(180deg)}app-ui-studio-page .setup-registry__card{background:var(--ms-surface-muted);border:1px solid var(--ms-border);border-radius:10px;display:grid;gap:10px;padding:10px}app-ui-studio-page .setup-registry__item .setup-registry__card{background:transparent;border:0;border-radius:0;gap:10px;padding:12px}app-ui-studio-page .setup-registry__row{display:grid;gap:8px;grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}@media(max-width:1380px){app-ui-studio-page .studio-grid{grid-template-columns:minmax(0,1fr) minmax(320px,380px)}}@media(max-width:1040px){app-ui-studio-page .studio-grid,app-ui-studio-page .studio-grid--inspector-collapsed{grid-template-columns:1fr;height:auto}app-ui-studio-page .inspector-panel{border-left:0;border-top:1px solid var(--ms-border);border-radius:0 0 16px 16px;min-height:420px}app-ui-studio-page .inspector-panel--collapsed{min-height:72px}}@media(max-width:640px){app-ui-studio-page .component-editor__header{align-items:stretch;flex-direction:column}app-ui-studio-page .component-editor__lead{width:100%}app-ui-studio-page .inspector-rail{gap:8px;grid-template-columns:auto 1fr auto;grid-template-rows:none;padding:10px 12px}app-ui-studio-page .inspector-rail__label{transform:none;writing-mode:horizontal-tb}}@media(max-width:920px){app-ui-studio-page .setup-modal{padding-bottom:12px}app-ui-studio-page .setup-modal__dialog{width:100%}app-ui-studio-page .setup-modal__header{flex-direction:column}app-ui-studio-page .setup-modal__layout{grid-template-columns:1fr}app-ui-studio-page .setup-modal__nav{border-bottom:1px solid var(--ms-border);border-right:0;grid-auto-columns:minmax(140px,1fr);grid-auto-flow:column;overflow:auto;padding:12px 16px}app-ui-studio-page .setup-modal__section-toggle{align-items:flex-start;flex-direction:column}app-ui-studio-page .setup-modal__section-main,app-ui-studio-page .setup-modal__section-meta{width:100%}app-ui-studio-page .setup-modal__section-meta{justify-content:space-between}}app-ui-studio-page{--studio-surface: var(--ms-surface);--studio-surface-elevated: var(--ms-surface-elevated);--studio-surface-muted: var(--ms-surface-muted);--studio-border: var(--ms-border);--studio-border-strong: var(--ms-border-strong);--studio-hover: var(--ms-hover);--studio-accent-hover: color-mix(in srgb, var(--ms-accent) 10%, var(--studio-surface-muted));--studio-active: var(--ms-selected);color:var(--ms-text);color-scheme:var(--ms-color-scheme, light)}app-ui-studio-page .studio-header{background:linear-gradient(135deg,var(--studio-surface) 0%,var(--studio-surface-muted) 78%,color-mix(in srgb,var(--ms-primary) 8%,var(--studio-surface-muted)) 100%);border-color:var(--studio-border)}app-ui-studio-page .studio-panel,app-ui-studio-page .preview-panel,app-ui-studio-page .component-list,app-ui-studio-page .setup-modal__dialog,app-ui-studio-page .setup-modal__section,app-ui-studio-page .icon-picker__panel,app-ui-studio-page .setup-registry__item{background:var(--studio-surface);border-color:var(--studio-border);color:var(--ms-text)}app-ui-studio-page .inspector-panel,app-ui-studio-page .preview-surface,app-ui-studio-page .setup-panel--embedded,app-ui-studio-page .setup-editor,app-ui-studio-page .setup-modal__nav,app-ui-studio-page .multi-select-field,app-ui-studio-page .action-request-preview,app-ui-studio-page .action-request-section,app-ui-studio-page .setup-registry__card{background:var(--studio-surface-muted);border-color:var(--studio-border);color:var(--ms-text)}app-ui-studio-page .setup-modal{background:color-mix(in srgb,var(--ms-bg) 72%,transparent)}app-ui-studio-page .setup-modal__header,app-ui-studio-page .setup-modal__nav,app-ui-studio-page .setup-modal__section--open .setup-modal__section-toggle,app-ui-studio-page .setup-registry__item--open .setup-registry__toggle,app-ui-studio-page .action-request-group+.action-request-group{border-color:var(--studio-border)}app-ui-studio-page .setup-modal__section{background:linear-gradient(180deg,var(--studio-surface) 0%,var(--studio-surface-muted) 100%)}app-ui-studio-page .setup-registry__item{background:linear-gradient(180deg,var(--studio-surface-muted) 0%,var(--studio-surface) 100%)}app-ui-studio-page .setup-registry__item .setup-registry__card{background:transparent;border-color:transparent}app-ui-studio-page .structure-search,app-ui-studio-page .component-add-child,app-ui-studio-page .studio-pill,app-ui-studio-page .panel-chip,app-ui-studio-page .tab-button--active,app-ui-studio-page .icon-picker__trigger,app-ui-studio-page .icon-picker__search,app-ui-studio-page .icon-picker__item,app-ui-studio-page .multi-select-field__option,app-ui-studio-page .inspector-panel select,app-ui-studio-page .inspector-panel input,app-ui-studio-page .inspector-panel textarea,app-ui-studio-page .setup-panel select,app-ui-studio-page .setup-panel input,app-ui-studio-page .setup-panel textarea{background:var(--studio-surface);border-color:var(--studio-border);color:var(--ms-text)}app-ui-studio-page .structure-search input,app-ui-studio-page .icon-picker__search input{background:transparent}app-ui-studio-page .inspector-panel input::placeholder,app-ui-studio-page .inspector-panel textarea::placeholder,app-ui-studio-page .setup-panel input::placeholder,app-ui-studio-page .setup-panel textarea::placeholder{color:var(--ms-text-muted)}app-ui-studio-page .component-item-list,app-ui-studio-page .component-item,app-ui-studio-page .component-item__name,app-ui-studio-page .component-editor__title strong,app-ui-studio-page .setup-modal__section-title-row strong,app-ui-studio-page .setup-registry__header strong,app-ui-studio-page .setup-registry__toggle-copy strong,app-ui-studio-page .multi-select-field__summary strong,app-ui-studio-page .multi-select-field__option span,app-ui-studio-page .action-request-preview strong,app-ui-studio-page .action-request-section__header strong,app-ui-studio-page .action-request-group__title,app-ui-studio-page .icon-picker__trigger-copy strong{color:var(--ms-text)}app-ui-studio-page .studio-pill,app-ui-studio-page .panel-chip,app-ui-studio-page .panel-heading__copy p,app-ui-studio-page .inspector-toggle,app-ui-studio-page .inspector-rail__label,app-ui-studio-page .structure-search__icon,app-ui-studio-page .structure-search__clear,app-ui-studio-page .structure-breadcrumb button,app-ui-studio-page .component-drag-handle,app-ui-studio-page .toggle-arrow,app-ui-studio-page .component-item__node-icon,app-ui-studio-page .component-item__meta,app-ui-studio-page .component-item__subline,app-ui-studio-page .component-item-list--child .component-item__meta,app-ui-studio-page .component-editor__title span,app-ui-studio-page .component-back,app-ui-studio-page .field-hint,app-ui-studio-page .setup-modal__title p,app-ui-studio-page .setup-modal__section-copy p,app-ui-studio-page .setup-modal__section-icon,app-ui-studio-page .setup-modal__section-summary,app-ui-studio-page .setup-modal__section-chevron,app-ui-studio-page .setup-registry__header span,app-ui-studio-page .setup-registry__toggle-icon,app-ui-studio-page .setup-registry__toggle-chevron,app-ui-studio-page .setup-registry__toggle-copy span,app-ui-studio-page .multi-select-field__summary,app-ui-studio-page .multi-select-field__empty,app-ui-studio-page .action-request-preview span,app-ui-studio-page .action-request-section__header span,app-ui-studio-page .icon-picker__trigger-copy span,app-ui-studio-page .icon-picker__toolbar span,app-ui-studio-page .icon-picker__empty,app-ui-studio-page .icon-picker__expand,app-ui-studio-page .icon-picker__search-icon{color:var(--ms-text-muted)}app-ui-studio-page .structure-breadcrumb button:last-child,app-ui-studio-page .structure-search__clear:hover,app-ui-studio-page .component-drag-handle:hover,app-ui-studio-page .component-add-child:hover,app-ui-studio-page .component-add-child:focus-visible,app-ui-studio-page .component-add-child--open,app-ui-studio-page .toggle-arrow:hover,app-ui-studio-page .inspector-toggle:hover,app-ui-studio-page .component-back:hover{color:var(--ms-text)}app-ui-studio-page .structure-search:focus-within,app-ui-studio-page .icon-picker__trigger:hover,app-ui-studio-page .icon-picker__search:focus-within{border-color:color-mix(in srgb,var(--ms-primary) 45%,var(--studio-border));box-shadow:var(--ms-focus-ring)}app-ui-studio-page .structure-search__clear:hover,app-ui-studio-page .component-drag-handle:hover,app-ui-studio-page .component-add-child:hover,app-ui-studio-page .component-add-child:focus-visible,app-ui-studio-page .component-add-child--open,app-ui-studio-page .component-back:hover,app-ui-studio-page .inspector-toggle:hover,app-ui-studio-page .tab-button--active,app-ui-studio-page .component-item-list:hover,app-ui-studio-page .component-item-list--child:hover{background:var(--studio-hover)}app-ui-studio-page .component-item-list--child{background:color-mix(in srgb,var(--studio-surface) 72%,var(--studio-surface-muted))}app-ui-studio-page .component-item-list--selected,app-ui-studio-page .component-item-list--selected:hover,app-ui-studio-page .secondary--active,app-ui-studio-page .icon-picker__item--selected{background:var(--studio-active);color:var(--ms-text)}app-ui-studio-page .component-item-list+.component-item-list,app-ui-studio-page .component-item-list:before{border-color:var(--studio-border)}app-ui-studio-page .component-item-list:before,app-ui-studio-page .component-item-list--selected:after,app-ui-studio-page .inspector-rail__state--valid{background:var(--ms-primary)}app-ui-studio-page .component-item-list--drop-before{box-shadow:inset 0 2px 0 var(--ms-primary)}app-ui-studio-page .component-item-list--drop-after{box-shadow:inset 0 -2px 0 var(--ms-primary)}app-ui-studio-page .component-add-child{border-color:color-mix(in srgb,var(--ms-primary) 36%,var(--studio-border));border-top-color:transparent;background:var(--studio-active);color:var(--ms-primary)}app-ui-studio-page .studio-action-icon--primary{border-color:color-mix(in srgb,var(--ms-primary) 36%,var(--studio-border));color:var(--ms-primary-contrast)}app-ui-studio-page .component-add-child:hover,app-ui-studio-page .component-add-child:focus-visible,app-ui-studio-page .component-add-child--open{border-color:color-mix(in srgb,var(--ms-primary) 62%,var(--studio-border));box-shadow:0 7px 18px color-mix(in srgb,var(--ms-primary) 24%,transparent)}app-ui-studio-page .component-item__meta,app-ui-studio-page .setup-modal__nav-count{background:var(--studio-surface-muted);border-color:var(--studio-border);color:var(--ms-text-muted)}app-ui-studio-page .component-item-list--child .component-item__meta{background:transparent;border-color:transparent}app-ui-studio-page .component-item__count,app-ui-studio-page .valid{background:var(--ms-success-soft);border-color:color-mix(in srgb,var(--ms-success) 28%,var(--studio-border));color:var(--ms-success)}app-ui-studio-page .invalid,app-ui-studio-page .studio-pill--danger{background:var(--ms-danger-soft);border-color:color-mix(in srgb,var(--ms-danger) 28%,var(--studio-border));color:var(--ms-danger)}app-ui-studio-page .inspector-rail__state--invalid{background:var(--ms-danger)}app-ui-studio-page .setup-modal__section-badge{background:var(--ms-accent-soft);border-color:color-mix(in srgb,var(--ms-accent) 22%,var(--studio-border));color:var(--ms-accent)}app-ui-studio-page .tab-button{background:transparent;border-color:transparent;color:var(--ms-text-muted)}app-ui-studio-page .tab-button--active{background:var(--studio-surface);border-color:var(--studio-border);color:var(--ms-text)}app-ui-studio-page .icon-picker__item:hover{border-color:var(--ms-primary)}app-ui-studio-page .icon-picker__item--selected{border-color:var(--ms-primary);color:var(--ms-primary)}app-ui-studio-page .multi-select-field__option:hover,app-ui-studio-page .setup-registry__toggle:hover{background:var(--studio-hover)}app-ui-studio-page .preview-panel{background:var(--studio-surface)}@media(max-width:1380px){app-ui-studio-page .setup-panel__grid{grid-template-columns:repeat(2,minmax(220px,1fr))}app-ui-studio-page .setup-panel__actions,app-ui-studio-page .field--setup-title,app-ui-studio-page .version-meta{grid-column:1/-1}app-ui-studio-page .version-meta{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:1040px){app-ui-studio-page .preview-panel,app-ui-studio-page .inspector-panel{grid-column:auto}}@media(max-width:920px){app-ui-studio-page .studio-header{align-items:stretch;flex-direction:column}app-ui-studio-page .studio-toolbar{justify-items:stretch}app-ui-studio-page .studio-actions{justify-content:stretch}app-ui-studio-page .studio-actions button{flex:1 1 120px}app-ui-studio-page .preview-panel{grid-template-rows:auto auto auto minmax(420px,62vh)}app-ui-studio-page .inspector-panel{grid-template-rows:auto minmax(0,62vh) auto}app-ui-studio-page .setup-panel__grid,app-ui-studio-page .version-meta,app-ui-studio-page .field-grid,app-ui-studio-page .option-row,app-ui-studio-page .action-row,app-ui-studio-page .action-details{grid-template-columns:1fr}}@media(max-width:640px){app-ui-studio-page .panel-heading__top,app-ui-studio-page .inspector-workspace__bar{min-width:0}app-ui-studio-page .panel-heading,app-ui-studio-page .component-browser__toolbar,app-ui-studio-page .json-pane__header{align-items:stretch;flex-direction:column}app-ui-studio-page .block-palette{flex-direction:column}app-ui-studio-page .panel-heading__top>.panel-heading__copy{padding-right:0}app-ui-studio-page .studio-actions--inspector{margin-top:8px;position:static}}:root{--ff-white: #ffffff;--ff-black: #000000;--ff-gray-0: #ffffff;--ff-gray-25: #fcfcfc;--ff-gray-50: #f8f8f7;--ff-gray-75: #f2f2f0;--ff-gray-100: #e9e9e6;--ff-gray-150: #dcdcd7;--ff-gray-200: #c9c9c1;--ff-gray-300: #afafa5;--ff-gray-400: #8d8d81;--ff-gray-500: #69695f;--ff-gray-600: #505048;--ff-gray-700: #3c3c36;--ff-gray-800: #272722;--ff-gray-900: #1b1b18;--ff-gray-950: #141412;--ff-gray-1000: #0f0f0d;--ff-alpha-black-04: rgba(15, 15, 13, .04);--ff-alpha-black-06: rgba(15, 15, 13, .06);--ff-alpha-black-08: rgba(15, 15, 13, .08);--ff-alpha-black-10: rgba(15, 15, 13, .1);--ff-alpha-black-12: rgba(15, 15, 13, .12);--ff-alpha-black-15: rgba(15, 15, 13, .15);--ff-alpha-black-20: rgba(15, 15, 13, .2);--ff-alpha-black-30: rgba(15, 15, 13, .3);--ff-alpha-black-40: rgba(15, 15, 13, .4);--ff-alpha-black-60: rgba(15, 15, 13, .6);--ff-alpha-white-04: rgba(255, 255, 255, .04);--ff-alpha-white-06: rgba(255, 255, 255, .06);--ff-alpha-white-08: rgba(255, 255, 255, .08);--ff-alpha-white-10: rgba(255, 255, 255, .1);--ff-alpha-white-12: rgba(255, 255, 255, .12);--ff-alpha-white-15: rgba(255, 255, 255, .15);--ff-alpha-white-20: rgba(255, 255, 255, .2);--ff-alpha-white-30: rgba(255, 255, 255, .3);--ff-alpha-white-40: rgba(255, 255, 255, .4);--ff-alpha-white-60: rgba(255, 255, 255, .6);--ff-blue-100: #e8f2ff;--ff-blue-200: #bad8ff;--ff-blue-300: #7db7ff;--ff-blue-400: #4176ff;--ff-blue-500: #2759db;--ff-blue-600: #1b3f9e;--ff-green-100: #e7f7ef;--ff-green-300: #71c795;--ff-green-400: #2b9b5f;--ff-green-500: #1e7748;--ff-yellow-100: #fff5de;--ff-yellow-300: #e1b354;--ff-yellow-400: #bb8121;--ff-yellow-500: #916112;--ff-red-100: #feeceb;--ff-red-300: #e48d85;--ff-red-400: #c55245;--ff-red-500: #9e3a2f;--ff-radius-4: 4px;--ff-radius-6: 6px;--ff-radius-pill: 999px;--ff-font-family-sans: "Inter", ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--ff-font-family-mono: ui-monospace, "SFMono-Regular", "Menlo", "Monaco", "Consolas", "Liberation Mono", "Courier New", monospace;--ff-font-size-xs: 12px;--ff-font-size-sm: 14px;--ff-font-size-md: 16px;--ff-font-size-lg: 18px;--ff-shadow-1: 0 1px 2px rgba(15, 15, 13, .05), 0 8px 20px rgba(15, 15, 13, .04);--ff-shadow-2: 0 10px 28px rgba(15, 15, 13, .08), 0 3px 10px rgba(15, 15, 13, .05);--ff-shadow-3: 0 18px 48px rgba(15, 15, 13, .12), 0 6px 16px rgba(15, 15, 13, .08)}:root{--ff-color-surface-page: var(--ff-gray-25);--ff-color-surface-canvas: var(--ff-gray-25);--ff-color-surface-card: var(--ff-white);--ff-color-surface-group: rgba(65, 118, 255, .14);--ff-color-surface-group-active: rgba(65, 118, 255, .2);--ff-color-surface-muted: var(--ff-gray-50);--ff-color-surface-soft: var(--ff-gray-75);--ff-color-surface-accent-soft: rgba(65, 118, 255, .1);--ff-color-border-default: var(--ff-alpha-black-12);--ff-color-border-subtle: var(--ff-alpha-black-08);--ff-color-border-strong: var(--ff-alpha-black-20);--ff-color-border-accent: var(--ff-blue-500);--ff-color-text-primary: var(--ff-gray-800);--ff-color-text-secondary: var(--ff-gray-500);--ff-color-text-tertiary: var(--ff-gray-400);--ff-color-text-inverse: var(--ff-white);--ff-color-accent: var(--ff-blue-500);--ff-color-accent-strong: var(--ff-blue-600);--ff-color-success: var(--ff-green-400);--ff-color-warning: var(--ff-yellow-400);--ff-color-danger: var(--ff-red-400);--ff-color-disabled-surface: var(--ff-gray-100);--ff-color-disabled-border: var(--ff-alpha-black-10);--ff-color-disabled-text: var(--ff-gray-300);--ff-color-selection-fill: rgba(65, 118, 255, .12);--ff-color-selection-stroke: rgba(65, 118, 255, .28);--ff-color-grid: var(--ff-alpha-black-08);--ff-color-grid-strong: var(--ff-alpha-black-15);--ff-color-connector-connected: var(--ff-blue-500);--ff-color-connection: var(--ff-gray-600);--ff-color-connection-muted: var(--ff-gray-300);--ff-color-connection-hover: var(--ff-alpha-black-12);--ff-color-grouping-drop-target-border: var(--ff-gray-800);--ff-color-grouping-drop-target-border-active: var(--ff-gray-800);--ff-color-waypoint-fill: var(--ff-white);--ff-color-waypoint-stroke: var(--ff-blue-500);--ff-color-waypoint-candidate-fill: var(--ff-white);--ff-color-waypoint-candidate-stroke: var(--ff-green-400);--ff-color-minimap-surface: var(--ff-white);--ff-color-minimap-node: var(--ff-gray-700);--ff-color-minimap-view: rgba(65, 118, 255, .14);--ff-color-magnetic-line: var(--ff-blue-500);--ff-color-magnetic-rect-fill: rgba(65, 118, 255, .08);--ff-color-magnetic-rect-border: rgba(65, 118, 255, .24);--ff-radius-node: var(--ff-radius-4);--ff-radius-group: var(--ff-radius-4);--ff-radius-control: var(--ff-radius-4);--ff-radius-socket-square: var(--ff-radius-6);--ff-radius-pill: var(--ff-radius-pill);--ff-font-sans: var(--ff-font-family-sans);--ff-font-mono: var(--ff-font-family-mono);--ff-font-size-body: var(--ff-font-size-sm);--ff-font-size-label: var(--ff-font-size-xs);--ff-shadow-surface: var(--ff-shadow-1);--ff-shadow-floating: var(--ff-shadow-2)}.dark,[data-theme=dark]{--ff-color-surface-page: var(--ff-gray-1000);--ff-color-surface-canvas: var(--ff-gray-1000);--ff-color-surface-card: var(--ff-gray-950);--ff-color-surface-group: rgba(125, 183, 255, .18);--ff-color-surface-group-active: rgba(125, 183, 255, .24);--ff-color-surface-muted: var(--ff-gray-900);--ff-color-surface-soft: var(--ff-gray-900);--ff-color-surface-accent-soft: rgba(125, 183, 255, .14);--ff-color-border-default: var(--ff-alpha-white-12);--ff-color-border-subtle: var(--ff-alpha-white-08);--ff-color-border-strong: var(--ff-alpha-white-20);--ff-color-border-accent: var(--ff-blue-300);--ff-color-text-primary: var(--ff-gray-100);--ff-color-text-secondary: var(--ff-gray-300);--ff-color-text-tertiary: var(--ff-gray-400);--ff-color-text-inverse: var(--ff-gray-1000);--ff-color-accent: var(--ff-blue-300);--ff-color-accent-strong: var(--ff-blue-200);--ff-color-success: var(--ff-green-300);--ff-color-warning: var(--ff-yellow-300);--ff-color-danger: var(--ff-red-300);--ff-color-disabled-surface: var(--ff-gray-800);--ff-color-disabled-border: var(--ff-alpha-white-10);--ff-color-disabled-text: var(--ff-gray-500);--ff-color-selection-fill: rgba(125, 183, 255, .16);--ff-color-selection-stroke: rgba(125, 183, 255, .34);--ff-color-grid: var(--ff-alpha-white-08);--ff-color-grid-strong: var(--ff-alpha-white-15);--ff-color-connector-connected: var(--ff-blue-300);--ff-color-connection: var(--ff-gray-200);--ff-color-connection-muted: var(--ff-gray-500);--ff-color-connection-hover: var(--ff-alpha-white-12);--ff-color-grouping-drop-target-border: var(--ff-gray-100);--ff-color-grouping-drop-target-border-active: var(--ff-gray-100);--ff-color-waypoint-fill: var(--ff-gray-950);--ff-color-waypoint-stroke: var(--ff-blue-300);--ff-color-waypoint-candidate-fill: var(--ff-white);--ff-color-waypoint-candidate-stroke: var(--ff-green-300);--ff-color-minimap-surface: var(--ff-gray-950);--ff-color-minimap-node: var(--ff-gray-200);--ff-color-minimap-view: rgba(125, 183, 255, .18);--ff-color-magnetic-line: var(--ff-blue-300);--ff-color-magnetic-rect-fill: rgba(125, 183, 255, .1);--ff-color-magnetic-rect-border: rgba(125, 183, 255, .24);--ff-shadow-surface: 0 1px 2px rgba(0, 0, 0, .28), 0 8px 20px rgba(0, 0, 0, .14);--ff-shadow-floating: 0 14px 36px rgba(0, 0, 0, .26), 0 4px 12px rgba(0, 0, 0, .16)}:root{--ff-flow-background-color: var(--ff-color-surface-page);--ff-flow-text-color: var(--ff-color-text-primary);--ff-flow-font-family: var(--ff-font-sans);--ff-flow-font-size: var(--ff-font-size-body);--ff-canvas-background-color: var(--ff-color-surface-canvas);--ff-node-background-color: var(--ff-color-surface-card);--ff-node-background-color-inverse: var(--ff-color-text-primary);--ff-node-border-color: var(--ff-color-border-default);--ff-node-border-color-selected: var(--ff-color-border-accent);--ff-node-color: var(--ff-color-text-primary);--ff-node-border-radius: var(--ff-radius-node);--ff-node-shadow: var(--ff-shadow-surface);--ff-node-shadow-selected: var(--ff-shadow-floating);--ff-node-width: 120px;--ff-node-min-height: 56px;--ff-node-padding: 24px;--ff-group-background-color: var(--ff-color-surface-group);--ff-group-background-color-active: var(--ff-color-surface-group-active);--ff-group-border-color: var(--ff-color-border-subtle);--ff-group-border-color-selected: var(--ff-color-border-accent);--ff-group-border-color-active: var(--ff-color-border-accent);--ff-group-color: var(--ff-color-text-secondary);--ff-group-border-radius: var(--ff-radius-group);--ff-group-min-width: 180px;--ff-group-min-height: 120px;--ff-group-padding: 24px;--ff-grouping-drop-target-border-color: var(--ff-color-grouping-drop-target-border);--ff-grouping-drop-target-border-style: dashed;--ff-grouping-drop-target-border-width: 1px;--ff-grouping-drop-target-border-color-active: var( --ff-color-grouping-drop-target-border-active );--ff-grouping-drop-target-border-style-active: dashed;--ff-grouping-drop-target-border-width-active: 2px;--ff-resize-handle-size: 8px;--ff-resize-handle-fill: var(--ff-color-accent);--ff-resize-handle-stroke: var(--ff-color-surface-card);--ff-resize-handle-ring: var(--ff-color-accent);--ff-resize-handle-radius: 1px;--ff-resize-handle-fill-active: var(--ff-color-surface-card);--ff-rotate-handle-size: 16px;--ff-rotate-handle-offset: 40px;--ff-rotate-handle-background-color: var(--ff-color-surface-card);--ff-rotate-handle-border-color: var(--ff-color-border-strong);--ff-rotate-handle-guide-color: var(--ff-color-border-strong);--ff-connector-background-color: var(--ff-color-surface-card);--ff-connector-border-color: var(--ff-color-text-secondary);--ff-connector-connected-color: var(--ff-color-connector-connected);--ff-connector-accent-color: var(--ff-color-accent);--ff-connector-disabled-color: var(--ff-color-disabled-surface);--ff-connector-disabled-border-color: var(--ff-color-disabled-border);--ff-connector-size: 14px;--ff-connector-border-width: 2px;--ff-connector-input-radius: var(--ff-radius-4);--ff-connector-node-ring-color: var(--ff-canvas-background-color);--ff-outlet-background-color: var(--ff-color-surface-muted);--ff-outlet-border-color: var(--ff-color-border-default);--ff-outlet-color: var(--ff-color-accent);--ff-outlet-disabled-background-color: var(--ff-color-disabled-surface);--ff-outlet-disabled-border-color: var(--ff-color-disabled-border);--ff-outlet-disabled-color: var(--ff-color-disabled-text);--ff-outlet-border-radius: var(--ff-radius-pill);--ff-outlet-padding-y: 6px;--ff-outlet-padding-x: 12px;--ff-connection-color: var(--ff-color-connection);--ff-snap-connection-color: var(--ff-color-connection-muted);--ff-connection-hover-color: var(--ff-color-connection-hover);--ff-connection-selected-color: var(--ff-color-accent);--ff-connection-label-color: var(--ff-color-text-secondary);--ff-connection-content-color: var(--ff-node-color);--ff-connection-content-background-color: var(--ff-node-background-color);--ff-connection-content-border-color: var(--ff-node-border-color);--ff-connection-content-border-color-selected: var(--ff-connection-selected-color);--ff-connection-content-border-radius: var(--ff-node-border-radius);--ff-connection-content-font-size: 13px;--ff-connection-content-padding-y: 2px;--ff-connection-content-padding-x: 8px;--ff-connection-width: 2px;--ff-connection-hit-width: 14px;--ff-connection-drag-handle-fill: var(--ff-color-surface-card);--ff-connection-drag-handle-stroke: var(--ff-color-accent);--ff-marker-color: var(--ff-connection-color);--ff-waypoint-fill: var(--ff-color-waypoint-fill);--ff-waypoint-stroke: var(--ff-color-waypoint-stroke);--ff-waypoint-candidate-fill: var(--ff-color-waypoint-candidate-fill);--ff-waypoint-candidate-stroke: var(--ff-color-waypoint-candidate-stroke);--ff-background-line-color: var(--ff-color-grid);--ff-background-dot-color: var(--ff-color-grid-strong);--ff-selection-area-color: var(--ff-color-selection-fill);--ff-selection-area-border-color: var(--ff-color-selection-stroke);--ff-minimap-background-color: var(--ff-color-minimap-surface);--ff-minimap-border-color: var(--ff-color-border-default);--ff-minimap-node-color: var(--ff-color-minimap-node);--ff-minimap-node-selected-color: var(--ff-color-accent);--ff-minimap-view-color: var(--ff-color-minimap-view);--ff-minimap-view-border-color: var(--ff-color-selection-stroke);--ff-minimap-border-radius: var(--ff-radius-node);--ff-minimap-shadow: var(--ff-shadow-floating);--ff-magnetic-line-color: var(--ff-color-magnetic-line);--ff-magnetic-rect-fill: var(--ff-color-magnetic-rect-fill);--ff-magnetic-rect-border-color: var(--ff-color-magnetic-rect-border);--ff-external-item-background-color: var(--ff-color-surface-card);--ff-external-item-border-color: var(--ff-color-border-default);--ff-external-item-color: var(--ff-color-text-primary);--ff-external-item-disabled-color: var(--ff-color-disabled-text);--ff-external-item-disabled-background-color: var(--ff-color-disabled-surface);--ff-external-item-border-radius: var(--ff-radius-node);--ff-external-item-shadow: var(--ff-shadow-surface);--ff-external-item-preview-shadow: var(--ff-shadow-floating);--ff-external-item-placeholder-background-color: var(--ff-color-surface-soft);--ff-external-item-placeholder-border-color: var(--ff-color-border-subtle)}f-flow,.f-flow{display:block;position:relative;width:100%;height:100%;overflow:hidden;pointer-events:all;-webkit-user-select:none;user-select:none;touch-action:none;color:var(--ff-flow-text-color);background:var(--ff-flow-background-color);font-family:var(--ff-flow-font-family);font-size:var(--ff-flow-font-size);line-height:1.4}f-flow .f-canvas,.f-flow .f-canvas{background:var(--ff-canvas-background-color)}f-flow .f-node,.f-flow .f-node{width:var(--ff-node-width);min-height:var(--ff-node-min-height);padding:var(--ff-node-padding);box-sizing:border-box;color:var(--ff-node-color);text-align:center;background:var(--ff-node-background-color);border:1px solid var(--ff-node-border-color);border-radius:var(--ff-node-border-radius);box-shadow:var(--ff-node-shadow)}f-flow .f-node .node-content,.f-flow .f-node .node-content{width:100%;height:100%;overflow:hidden}f-flow .f-node.f-selected,.f-flow .f-node.f-selected{border-color:var(--ff-node-border-color-selected);box-shadow:var(--ff-node-shadow-selected)}f-flow .f-node.f-dragging,.f-flow .f-node.f-dragging{box-shadow:var(--ff-node-shadow-selected)}f-flow .f-group,.f-flow .f-group{min-width:var(--ff-group-min-width);min-height:var(--ff-group-min-height);padding:var(--ff-group-padding);box-sizing:border-box;color:var(--ff-group-color);background:var(--ff-group-background-color);border:1px solid var(--ff-group-border-color);border-radius:var(--ff-group-border-radius)}f-flow .f-group.f-selected,.f-flow .f-group.f-selected{border-color:var(--ff-group-border-color-selected)}f-flow .f-drag-handle,.f-flow .f-drag-handle{cursor:move}f-flow .f-drag-handle img,.f-flow .f-drag-handle img{pointer-events:none}f-flow .f-resize-handle,.f-flow .f-resize-handle{position:absolute;width:var(--ff-resize-handle-size);height:var(--ff-resize-handle-size);box-sizing:border-box;border:1.5px solid var(--ff-resize-handle-stroke);border-radius:var(--ff-resize-handle-radius);background:var(--ff-resize-handle-fill);box-shadow:0 0 0 1px var(--ff-resize-handle-ring),0 1px 2px #0f0f0d2e;transition:background-color .15s cubic-bezier(.4,0,.2,1),box-shadow .15s cubic-bezier(.4,0,.2,1)}f-flow .f-resize-handle:hover,.f-flow .f-resize-handle:hover{box-shadow:0 0 0 1px var(--ff-resize-handle-ring),0 0 0 5px color-mix(in oklch,var(--ff-resize-handle-ring) 25%,transparent)}f-flow .f-resize-handle:active,.f-flow .f-resize-handle:active{background:var(--ff-resize-handle-fill-active);box-shadow:0 0 0 2px var(--ff-resize-handle-ring),0 0 0 6px color-mix(in oklch,var(--ff-resize-handle-ring) 28%,transparent)}f-flow .f-resize-handle.f-resize-handle-left,.f-flow .f-resize-handle.f-resize-handle-left{left:0;top:50%;transform:translate(-50%,-50%);cursor:col-resize}f-flow .f-resize-handle.f-resize-handle-left-top,.f-flow .f-resize-handle.f-resize-handle-left-top{left:0;top:0;transform:translate(-50%,-50%);cursor:nwse-resize}f-flow .f-resize-handle.f-resize-handle-top,.f-flow .f-resize-handle.f-resize-handle-top{left:50%;top:0;transform:translate(-50%,-50%);cursor:row-resize}f-flow .f-resize-handle.f-resize-handle-right-top,.f-flow .f-resize-handle.f-resize-handle-right-top{right:0;top:0;transform:translate(50%,-50%);cursor:nesw-resize}f-flow .f-resize-handle.f-resize-handle-right,.f-flow .f-resize-handle.f-resize-handle-right{right:0;top:50%;transform:translate(50%,-50%);cursor:col-resize}f-flow .f-resize-handle.f-resize-handle-right-bottom,.f-flow .f-resize-handle.f-resize-handle-right-bottom{right:0;bottom:0;transform:translate(50%,50%);cursor:nwse-resize}f-flow .f-resize-handle.f-resize-handle-bottom,.f-flow .f-resize-handle.f-resize-handle-bottom{left:50%;bottom:0;transform:translate(-50%,50%);cursor:row-resize}f-flow .f-resize-handle.f-resize-handle-left-bottom,.f-flow .f-resize-handle.f-resize-handle-left-bottom{left:0;bottom:0;transform:translate(-50%,50%);cursor:nesw-resize}f-flow .f-rotate-handle,.f-flow .f-rotate-handle{position:absolute;left:50%;top:calc(var(--ff-rotate-handle-offset) * -1);display:inline-flex;align-items:center;justify-content:center;width:var(--ff-rotate-handle-size);height:var(--ff-rotate-handle-size);box-sizing:border-box;border:1px solid var(--ff-rotate-handle-border-color);border-radius:50%;background:var(--ff-rotate-handle-background-color);transform:translate(-50%);cursor:grab;transition:background-color .15s cubic-bezier(.4,0,.2,1),border-color .15s cubic-bezier(.4,0,.2,1),box-shadow .15s cubic-bezier(.4,0,.2,1)}f-flow .f-rotate-handle:after,.f-flow .f-rotate-handle:after{content:"";position:absolute;left:50%;top:100%;width:1px;height:calc(var(--ff-rotate-handle-offset) - var(--ff-rotate-handle-size));background:var(--ff-rotate-handle-guide-color);transform:translate(-50%);pointer-events:none}f-flow .f-rotate-handle:hover,.f-flow .f-rotate-handle:hover{border-color:var(--ff-color-accent);box-shadow:0 0 0 4px color-mix(in oklch,var(--ff-color-accent) 22%,transparent)}f-flow .f-rotate-handle:active,.f-flow .f-rotate-handle:active{background:var(--ff-color-accent);border-color:var(--ff-color-accent);cursor:grabbing;box-shadow:0 0 0 4px color-mix(in oklch,var(--ff-color-accent) 22%,transparent)}f-flow .f-node-input:not(.f-node),f-flow .f-node-output:not(.f-node),.f-flow .f-node-input:not(.f-node),.f-flow .f-node-output:not(.f-node){position:absolute;width:var(--ff-connector-size);height:var(--ff-connector-size);box-sizing:border-box;border:var(--ff-connector-border-width) solid var(--ff-connector-border-color);border-radius:50%;background:var(--ff-connector-background-color);pointer-events:all;transition:background-color .15s cubic-bezier(.4,0,.2,1),border-color .15s cubic-bezier(.4,0,.2,1),box-shadow .15s cubic-bezier(.4,0,.2,1)}f-flow .f-node-input:not(.f-node).left,f-flow .f-node-output:not(.f-node).left,.f-flow .f-node-input:not(.f-node).left,.f-flow .f-node-output:not(.f-node).left{left:calc(var(--ff-connector-size) / -2);top:50%;transform:translateY(-50%)}f-flow .f-node-input:not(.f-node).right,f-flow .f-node-output:not(.f-node).right,.f-flow .f-node-input:not(.f-node).right,.f-flow .f-node-output:not(.f-node).right{right:calc(var(--ff-connector-size) / -2);top:50%;transform:translateY(-50%)}f-flow .f-node-input:not(.f-node).top,f-flow .f-node-output:not(.f-node).top,.f-flow .f-node-input:not(.f-node).top,.f-flow .f-node-output:not(.f-node).top{top:calc(var(--ff-connector-size) / -2);left:50%;transform:translate(-50%)}f-flow .f-node-input:not(.f-node).top-left,f-flow .f-node-output:not(.f-node).top-left,.f-flow .f-node-input:not(.f-node).top-left,.f-flow .f-node-output:not(.f-node).top-left{top:calc(var(--ff-connector-size) / -2);left:calc(var(--ff-connector-size) / -2)}f-flow .f-node-input:not(.f-node).top-right,f-flow .f-node-output:not(.f-node).top-right,.f-flow .f-node-input:not(.f-node).top-right,.f-flow .f-node-output:not(.f-node).top-right{top:calc(var(--ff-connector-size) / -2);right:calc(var(--ff-connector-size) / -2)}f-flow .f-node-input:not(.f-node).bottom,f-flow .f-node-output:not(.f-node).bottom,.f-flow .f-node-input:not(.f-node).bottom,.f-flow .f-node-output:not(.f-node).bottom{bottom:calc(var(--ff-connector-size) / -2);left:50%;transform:translate(-50%)}f-flow .f-node-input:not(.f-node).bottom-left,f-flow .f-node-output:not(.f-node).bottom-left,.f-flow .f-node-input:not(.f-node).bottom-left,.f-flow .f-node-output:not(.f-node).bottom-left{bottom:calc(var(--ff-connector-size) / -2);left:calc(var(--ff-connector-size) / -2)}f-flow .f-node-input:not(.f-node).bottom-right,f-flow .f-node-output:not(.f-node).bottom-right,.f-flow .f-node-input:not(.f-node).bottom-right,.f-flow .f-node-output:not(.f-node).bottom-right{bottom:calc(var(--ff-connector-size) / -2);right:calc(var(--ff-connector-size) / -2)}f-flow .f-node-input:not(.f-node):hover,f-flow .f-node-output:not(.f-node):hover,.f-flow .f-node-input:not(.f-node):hover,.f-flow .f-node-output:not(.f-node):hover{box-shadow:0 0 0 4px color-mix(in oklch,var(--ff-connector-accent-color) 22%,transparent)}f-flow .f-node-input:not(.f-node).f-connector-connectable,f-flow .f-node-output:not(.f-node).f-connector-connectable,.f-flow .f-node-input:not(.f-node).f-connector-connectable,.f-flow .f-node-output:not(.f-node).f-connector-connectable{border-color:var(--ff-connector-accent-color)}f-flow .f-node-input:not(.f-node).f-node-output-connected,f-flow .f-node-input:not(.f-node).f-node-input-connected,f-flow .f-node-output:not(.f-node).f-node-output-connected,f-flow .f-node-output:not(.f-node).f-node-input-connected,.f-flow .f-node-input:not(.f-node).f-node-output-connected,.f-flow .f-node-input:not(.f-node).f-node-input-connected,.f-flow .f-node-output:not(.f-node).f-node-output-connected,.f-flow .f-node-output:not(.f-node).f-node-input-connected{background:var(--ff-connector-connected-color);border-color:var(--ff-connector-connected-color)}f-flow .f-node-input:not(.f-node).f-node-output-not-connectable,f-flow .f-node-input:not(.f-node).f-node-input-not-connectable,f-flow .f-node-input:not(.f-node).f-node-input-disabled,f-flow .f-node-input:not(.f-node).f-node-output-disabled,f-flow .f-node-output:not(.f-node).f-node-output-not-connectable,f-flow .f-node-output:not(.f-node).f-node-input-not-connectable,f-flow .f-node-output:not(.f-node).f-node-input-disabled,f-flow .f-node-output:not(.f-node).f-node-output-disabled,.f-flow .f-node-input:not(.f-node).f-node-output-not-connectable,.f-flow .f-node-input:not(.f-node).f-node-input-not-connectable,.f-flow .f-node-input:not(.f-node).f-node-input-disabled,.f-flow .f-node-input:not(.f-node).f-node-output-disabled,.f-flow .f-node-output:not(.f-node).f-node-output-not-connectable,.f-flow .f-node-output:not(.f-node).f-node-input-not-connectable,.f-flow .f-node-output:not(.f-node).f-node-input-disabled,.f-flow .f-node-output:not(.f-node).f-node-output-disabled{background:var(--ff-connector-disabled-color);border-color:var(--ff-connector-disabled-border-color);box-shadow:none}f-flow .f-node-input:not(.f-node),.f-flow .f-node-input:not(.f-node){border-radius:var(--ff-connector-input-radius)}f-flow .f-connections-dragging .f-node-input:not(.f-connector-connectable):not(.f-node-input-connected):not(.f-node-output-connected),f-flow .f-connections-dragging .f-node-output:not(.f-connector-connectable):not(.f-node-input-connected):not(.f-node-output-connected),.f-flow .f-connections-dragging .f-node-input:not(.f-connector-connectable):not(.f-node-input-connected):not(.f-node-output-connected),.f-flow .f-connections-dragging .f-node-output:not(.f-connector-connectable):not(.f-node-input-connected):not(.f-node-output-connected){border-color:var(--ff-connector-disabled-border-color)}f-flow .f-node-outlet,.f-flow .f-node-outlet{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:32px;padding:var(--ff-outlet-padding-y) var(--ff-outlet-padding-x);box-sizing:border-box;border:1px solid var(--ff-outlet-border-color);border-radius:var(--ff-outlet-border-radius);background:var(--ff-outlet-background-color);color:var(--ff-outlet-color);pointer-events:all}f-flow .f-node-outlet.f-node-outlet-disabled,.f-flow .f-node-outlet.f-node-outlet-disabled{background:var(--ff-outlet-disabled-background-color);border-color:var(--ff-outlet-disabled-border-color);color:var(--ff-outlet-disabled-color)}f-flow .f-connection-content,.f-flow .f-connection-content{box-sizing:border-box;color:var(--ff-connection-content-color);font-size:var(--ff-connection-content-font-size);padding:var(--ff-connection-content-padding-y) var(--ff-connection-content-padding-x);background:var(--ff-connection-content-background-color);border:1px solid var(--ff-connection-content-border-color);border-radius:var(--ff-connection-content-border-radius)}f-flow .f-connection .f-connection-selection,.f-flow .f-connection .f-connection-selection{fill:none;stroke:transparent;stroke-width:var(--ff-connection-hit-width)}f-flow .f-connection .f-connection-path,.f-flow .f-connection .f-connection-path{fill:none;stroke:var(--ff-connection-color);stroke-width:var(--ff-connection-width)}f-flow .f-connection .f-connection-drag-handle,.f-flow .f-connection .f-connection-drag-handle{fill:transparent;stroke:transparent;cursor:move}f-flow .f-connection.f-snap-connection .f-connection-path,.f-flow .f-connection.f-snap-connection .f-connection-path{stroke:var(--ff-snap-connection-color);stroke-dasharray:8 4}f-flow .f-connection.f-selected .f-connection-content,.f-flow .f-connection.f-selected .f-connection-content{border-color:var(--ff-connection-content-border-color-selected)}f-flow .f-connection.f-selected .f-connection-path,.f-flow .f-connection.f-selected .f-connection-path{stroke:var(--ff-connection-selected-color)}f-flow:not(.f-dragging) .f-connection:not(.f-dragging):not(.f-selected):not(.f-connection-selection-disabled):hover .f-connection-selection,.f-flow:not(.f-dragging) .f-connection:not(.f-dragging):not(.f-selected):not(.f-connection-selection-disabled):hover .f-connection-selection{stroke:var(--ff-connection-hover-color)}f-flow .f-marker,f-flow .connection-marker,.f-flow .f-marker,.f-flow .connection-marker{color:var(--ff-marker-color)}f-flow .f-marker circle,f-flow .f-marker rect,f-flow .f-marker path,f-flow .f-marker polygon,f-flow .f-marker line,f-flow .connection-marker circle,f-flow .connection-marker rect,f-flow .connection-marker path,f-flow .connection-marker polygon,f-flow .connection-marker line,.f-flow .f-marker circle,.f-flow .f-marker rect,.f-flow .f-marker path,.f-flow .f-marker polygon,.f-flow .f-marker line,.f-flow .connection-marker circle,.f-flow .connection-marker rect,.f-flow .connection-marker path,.f-flow .connection-marker polygon,.f-flow .connection-marker line{fill:currentColor;stroke:currentColor}f-flow .f-connection.f-snap-connection .f-marker,f-flow .f-connection.f-snap-connection .connection-marker,.f-flow .f-connection.f-snap-connection .f-marker,.f-flow .f-connection.f-snap-connection .connection-marker{color:var(--ff-snap-connection-color)}f-flow .f-connection.f-selected .f-marker,f-flow .f-connection.f-selected .connection-marker,.f-flow .f-connection.f-selected .f-marker,.f-flow .f-connection.f-selected .connection-marker{color:var(--ff-connection-selected-color)}f-flow .f-connection .f-connection-waypoints .f-candidate,f-flow .f-connection .f-connection-waypoints .f-waypoint,.f-flow .f-connection .f-connection-waypoints .f-candidate,.f-flow .f-connection .f-connection-waypoints .f-waypoint{vector-effect:non-scaling-stroke;transform-box:fill-box;transform-origin:center;stroke-width:1.5}f-flow .f-connection .f-connection-waypoints .f-candidate:hover,f-flow .f-connection .f-connection-waypoints .f-waypoint:hover,.f-flow .f-connection .f-connection-waypoints .f-candidate:hover,.f-flow .f-connection .f-connection-waypoints .f-waypoint:hover{transform:scale(1.1)}f-flow .f-connection .f-connection-waypoints .f-candidate,.f-flow .f-connection .f-connection-waypoints .f-candidate{fill:var(--ff-waypoint-candidate-fill);stroke:var(--ff-waypoint-candidate-stroke)}f-flow .f-connection .f-connection-waypoints .f-waypoint,.f-flow .f-connection .f-connection-waypoints .f-waypoint{fill:var(--ff-waypoint-fill);stroke:var(--ff-waypoint-stroke);cursor:move}f-flow .f-connection .f-connection-drag-handle,.f-flow .f-connection .f-connection-drag-handle{fill:transparent;stroke:var(--ff-connection-drag-handle-stroke);stroke-width:1.5}.f-external-item{display:inline-flex;align-items:center;gap:8px;padding:12px 14px;box-sizing:border-box;color:var(--ff-external-item-color);background:var(--ff-external-item-background-color);border:1px solid var(--ff-external-item-border-color);border-radius:var(--ff-external-item-border-radius);box-shadow:var(--ff-external-item-shadow);cursor:grab;-webkit-user-select:none;user-select:none}.f-external-item.f-external-item-disabled{color:var(--ff-external-item-disabled-color);background:var(--ff-external-item-disabled-background-color);cursor:not-allowed}.f-external-item-preview{box-sizing:border-box;box-shadow:var(--ff-external-item-preview-shadow)}.f-external-item-placeholder{box-sizing:border-box;background:var(--ff-external-item-placeholder-background-color);border:1px dashed var(--ff-external-item-placeholder-border-color);border-radius:var(--ff-external-item-border-radius)}f-flow .f-background line,f-flow .f-background path,.f-flow .f-background line,.f-flow .f-background path{stroke:var(--ff-background-line-color)}f-flow .f-background circle,.f-flow .f-background circle{fill:var(--ff-background-dot-color)}f-flow .f-selection-area,.f-flow .f-selection-area{box-sizing:border-box;background:var(--ff-selection-area-color);border:1px solid var(--ff-selection-area-border-color)}f-flow .f-minimap,.f-flow .f-minimap{overflow:hidden;background:var(--ff-minimap-background-color);border:1px solid var(--ff-minimap-border-color);border-radius:var(--ff-minimap-border-radius);box-shadow:var(--ff-minimap-shadow);bottom:16px;right:16px;width:140px;height:120px}f-flow .f-minimap .f-minimap-node,f-flow .f-minimap .f-minimap-group,.f-flow .f-minimap .f-minimap-node,.f-flow .f-minimap .f-minimap-group{fill:var(--ff-minimap-node-color)}f-flow .f-minimap .f-minimap-node.f-selected,f-flow .f-minimap .f-minimap-group.f-selected,.f-flow .f-minimap .f-minimap-node.f-selected,.f-flow .f-minimap .f-minimap-group.f-selected{fill:var(--ff-minimap-node-selected-color)}f-flow .f-minimap .f-minimap-view,.f-flow .f-minimap .f-minimap-view{fill:var(--ff-minimap-view-color);stroke:var(--ff-minimap-view-border-color);stroke-width:1}f-flow .f-magnetic-lines .f-line,f-flow .f-line-alignment .f-line,.f-flow .f-magnetic-lines .f-line,.f-flow .f-line-alignment .f-line{background:var(--ff-magnetic-line-color)}f-flow .f-magnetic-rects .f-rect,.f-flow .f-magnetic-rects .f-rect{box-sizing:border-box;background:var(--ff-magnetic-rect-fill);border:1px solid var(--ff-magnetic-rect-border-color)}.f-flow{--ff-flow-font-family: var(--ms-font-family);--ff-flow-text-color: var(--ms-text);--ff-flow-background-color: transparent;--ff-canvas-background-color: transparent;--ff-background-dot-color: color-mix(in srgb, var(--ms-text) 28%, transparent);--ff-background-line-color: color-mix(in srgb, var(--ms-text) 12%, transparent);--ff-connector-size: 13px;--ff-connector-border-width: 2px;--ff-connector-background-color: var(--ms-surface);--ff-connector-border-color: var(--ms-border-strong);--ff-connector-accent-color: var(--ms-primary);--ff-connector-connected-color: var(--ms-primary);--ff-connection-color: color-mix(in srgb, var(--ms-text-muted) 64%, var(--ms-border-strong));--ff-connection-width: 2px;--ff-connection-hover-color: color-mix(in srgb, var(--ms-primary) 26%, transparent);--ff-connection-selected-color: var(--ms-primary);--ff-marker-color: var(--ff-connection-color);--ff-node-background-color: transparent;--ff-node-border-color: transparent;--ff-node-border-color-selected: transparent;--ff-node-shadow: none;--ff-node-shadow-selected: none;--ff-node-padding: 0;--ff-selection-area-color: color-mix(in srgb, var(--ms-primary) 12%, transparent);--ff-selection-area-border-color: color-mix(in srgb, var(--ms-primary) 32%, transparent);--ff-minimap-background-color: var(--ms-surface);--ff-minimap-border-color: var(--ms-border);--ff-minimap-border-radius: var(--ms-radius-control);--ff-minimap-shadow: var(--ms-elev-1);--ff-minimap-node-color: color-mix(in srgb, var(--ms-text-muted) 55%, transparent);--ff-minimap-node-selected-color: var(--ms-primary);--ff-minimap-view-color: color-mix(in srgb, var(--ms-primary) 12%, transparent);--ff-minimap-view-border-color: color-mix(in srgb, var(--ms-primary) 42%, transparent)}.f-flow .f-minimap{bottom:var(--ms-space-3);height:116px;left:var(--ms-space-3);right:auto;width:172px}
