:root{color-scheme:light dark;font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;--color-bg: #f4f4f5;--color-fg: #3f3f46;--color-surface: #ffffff;--diagram-canvas-bg: #fafafa;--code-editor-bg: #f4f4f5;--code-editor-fg: #3f3f46;--code-editor-border: #a1a1aa;--toast-bg: #52525b;--toast-fg: #f4f4f5;--color-danger: #c62828;--color-accent: #0f766e;--grid-minor-stroke: rgba(63, 63, 70, .18);--grid-major-stroke: rgba(63, 63, 70, .32);--overlay-handle-fill: #e4e4e7;--overlay-handle-stroke: #3b82f6;--overlay-selection-stroke: #3b82f6;--overlay-port-stroke: #52525b;--overlay-port-fill: rgba(82, 82, 91, .12);--overlay-port-highlight: #2563eb;--palette-shape-fill: #e4e4e7;--palette-shape-stroke: #52525b}@media (prefers-color-scheme: dark){:root{--color-bg: #2e2e32;--color-fg: #c4c4c8;--color-surface: #3a3a40;--diagram-canvas-bg: #26262a;--code-editor-bg: #323238;--code-editor-fg: #d0d0d4;--code-editor-border: #6b6b72;--toast-bg: #4a4a52;--toast-fg: #e4e4e8;--grid-minor-stroke: rgba(228, 228, 232, .16);--grid-major-stroke: rgba(228, 228, 232, .3);--overlay-handle-fill: #52525b;--overlay-handle-stroke: #93c5fd;--overlay-selection-stroke: #93c5fd;--overlay-port-stroke: #e4e4e8;--overlay-port-fill: rgba(228, 228, 232, .22);--overlay-port-highlight: #60a5fa;--palette-shape-fill: #4a4a52;--palette-shape-stroke: #d4d4d8}}body{margin:0;background:var(--color-bg);color:var(--color-fg)}.app-shell{display:flex;flex-direction:column;height:100vh}.app-shell--loading{align-items:center;justify-content:center}.app-shell__message{margin:0;font-size:.9375rem;opacity:.8}.top-bar{display:flex;align-items:center;gap:1rem;padding:.5rem 1rem;border-bottom:1px solid color-mix(in srgb,currentColor 15%,transparent)}.top-bar__actions{display:flex;align-items:center;gap:.5rem}.export-import-menu{position:relative}.export-import-menu__trigger{padding:.375rem .625rem;font:inherit;font-size:.8125rem;border:1px solid color-mix(in srgb,currentColor 20%,transparent);border-radius:.375rem;background:transparent;cursor:pointer}.export-import-menu__dropdown{position:absolute;top:calc(100% + .25rem);left:0;z-index:1000;min-width:13rem;padding:.25rem 0;border:1px solid color-mix(in srgb,currentColor 20%,transparent);border-radius:.375rem;background:var(--color-surface);box-shadow:0 4px 12px color-mix(in srgb,currentColor 15%,transparent);font-size:.875rem}.export-import-menu__file-input{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:2000;display:flex;align-items:center;justify-content:center;padding:1rem;background:color-mix(in srgb,#000 40%,transparent)}.modal-dialog{width:min(22rem,100%);padding:1.25rem;border:1px solid color-mix(in srgb,currentColor 20%,transparent);border-radius:.5rem;background:var(--color-surface);box-shadow:0 8px 24px color-mix(in srgb,currentColor 20%,transparent)}.modal-dialog__title{margin:0 0 1rem;font-size:1rem;font-weight:600}.modal-dialog__actions{display:flex;justify-content:flex-end;gap:.5rem;margin-top:1.25rem}.modal-dialog__button{padding:.375rem .75rem;font:inherit;font-size:.8125rem;border:1px solid color-mix(in srgb,currentColor 25%,transparent);border-radius:.375rem;background:transparent;cursor:pointer}.modal-dialog__button:disabled{opacity:.55;cursor:not-allowed}.modal-dialog__button--primary{background:color-mix(in srgb,currentColor 10%,transparent);font-weight:600}.export-image-dialog__fields{display:flex;flex-direction:column;gap:.875rem}.export-image-dialog__field{display:flex;flex-direction:column;gap:.375rem}.export-image-dialog__label{font-size:.75rem;font-weight:600;letter-spacing:.02em;text-transform:uppercase;opacity:.75}.export-image-dialog__filename{padding:.375rem .5rem;font:inherit;font-size:.875rem;border:1px solid color-mix(in srgb,currentColor 25%,transparent);border-radius:.375rem;background:transparent;color:inherit}.export-image-dialog__field select{box-sizing:border-box;height:2rem;font:inherit;font-size:.875rem;padding:0 .375rem;border:1px solid color-mix(in srgb,currentColor 25%,transparent);border-radius:.375rem;background:transparent;color:inherit}.export-image-dialog__fieldset{margin:0;padding:0;border:none;display:flex;flex-direction:column;gap:.5rem}.export-image-dialog__radio{display:flex;align-items:center;gap:.5rem;font-size:.875rem;cursor:pointer}.export-image-dialog__color{display:flex;align-items:center;gap:.5rem;padding-left:1.5rem}.export-image-dialog__swatch-hex{font-size:.8125rem;font-variant-numeric:tabular-nums;opacity:.8}.export-image-dialog__hint{font-size:.75rem;opacity:.65}.export-image-dialog__error{margin:.75rem 0 0;font-size:.8125rem;color:#dc2626}.color-picker{position:relative;display:inline-flex}.color-picker__trigger{width:1.75rem;height:1.75rem;padding:0;border:1px solid color-mix(in srgb,currentColor 25%,transparent);border-radius:.25rem;cursor:pointer;overflow:hidden;background-color:#fff;background-image:linear-gradient(45deg,#d4d4d8 25%,transparent 25%),linear-gradient(-45deg,#d4d4d8 25%,transparent 25%),linear-gradient(45deg,transparent 75%,#d4d4d8 75%),linear-gradient(-45deg,transparent 75%,#d4d4d8 75%);background-size:.5rem .5rem;background-position:0 0,0 .25rem,.25rem -.25rem,-.25rem 0}.color-picker__trigger-swatch{display:block;width:100%;height:100%}.color-picker__panel{position:absolute;top:calc(100% + .25rem);left:0;z-index:1000;width:13.5rem;padding:.625rem;border:1px solid color-mix(in srgb,currentColor 20%,transparent);border-radius:.375rem;background:var(--color-surface);box-shadow:0 4px 12px color-mix(in srgb,currentColor 15%,transparent);display:flex;flex-direction:column;gap:.75rem}.color-picker__section{display:flex;flex-direction:column;gap:.375rem}.color-picker__section-label{font-size:.6875rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;opacity:.7}.color-picker__swatches{display:grid;grid-template-columns:repeat(6,1.25rem);gap:.375rem;align-items:center}.color-picker__swatch{width:1.25rem;height:1.25rem;padding:0;border:1px solid color-mix(in srgb,currentColor 20%,transparent);border-radius:.25rem;cursor:pointer}.color-picker__swatch--selected{outline:2px solid var(--color-accent, #2563eb);outline-offset:1px}.color-picker__add{width:1.25rem;height:1.25rem;padding:0;border:1px dashed color-mix(in srgb,currentColor 35%,transparent);border-radius:.25rem;background:transparent;font:inherit;font-size:.875rem;line-height:1;cursor:pointer;color:inherit}.color-picker__editors{display:flex;align-items:flex-end;gap:.5rem}.color-picker__hex-field,.color-picker__rgb-field{display:flex;flex-direction:column;gap:.25rem;font-size:.6875rem;opacity:.9}.color-picker__hex-field{flex:1;min-width:0}.color-picker__hex-field input[type=text]{width:100%;font:inherit;font-size:.8125rem;font-variant-numeric:tabular-nums;padding:.25rem .375rem;border:1px solid color-mix(in srgb,currentColor 20%,transparent);border-radius:.25rem;background:transparent;color:inherit}.color-picker__rgb-field input[type=color]{width:2rem;height:1.75rem;padding:0;border:1px solid color-mix(in srgb,currentColor 20%,transparent);border-radius:.25rem;background:transparent;cursor:pointer}.color-picker__hex-field input[type=text]:disabled,.color-picker__rgb-field input[type=color]:disabled{opacity:.45;cursor:not-allowed}.color-picker__add:disabled{opacity:.45;cursor:not-allowed}.top-bar__meta{display:flex;align-items:flex-start;gap:1rem;margin-left:auto;font-size:.8125rem}.top-bar__save-status{align-self:center;font-size:.75rem;opacity:.8}.top-bar__save-status--saving{opacity:.65}.top-bar__save-status--saved{opacity:.75}.top-bar__save-status--error{color:var(--color-danger);opacity:1}.toast-container{position:fixed;right:1rem;bottom:1rem;z-index:1000;display:flex;flex-direction:column;gap:.5rem;max-width:min(24rem,calc(100vw - 2rem));pointer-events:none}.toast{padding:.625rem .875rem;border-radius:.375rem;font-size:.8125rem;line-height:1.4;color:var(--toast-fg);background:var(--toast-bg);box-shadow:0 2px 8px color-mix(in srgb,#000 25%,transparent)}.document-tabs{display:flex;align-items:stretch;gap:.25rem;padding:.25rem .5rem 0;border-bottom:1px solid color-mix(in srgb,currentColor 15%,transparent);overflow-x:auto}.document-tab{display:flex;align-items:center;gap:.25rem;max-width:12rem;padding:.375rem .5rem;border:1px solid transparent;border-bottom:none;border-radius:.25rem .25rem 0 0;font-size:.8125rem;cursor:pointer;-webkit-user-select:none;user-select:none;background:color-mix(in srgb,currentColor 4%,transparent)}.document-tab--active{font-weight:600;border-color:color-mix(in srgb,currentColor 15%,transparent);background:var(--diagram-canvas-bg, #ffffff)}.document-tab__label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.document-tab__rename{width:6rem;min-width:0;font:inherit;font-size:inherit;padding:.125rem .25rem;border:1px solid color-mix(in srgb,currentColor 25%,transparent);border-radius:.125rem}.document-tab__close{--document-tab-close-hold-ms: .65s;position:relative;flex-shrink:0;display:flex;align-items:center;justify-content:center;width:1.25rem;height:1.25rem;padding:0;border:none;border-radius:.125rem;font:inherit;font-size:1rem;line-height:1;cursor:pointer;background:transparent;opacity:.6;overflow:visible;touch-action:none;-webkit-user-select:none;user-select:none;z-index:0}.document-tab__close:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:-1;border-radius:inherit;background:color-mix(in srgb,var(--color-danger) 45%,transparent);transform:scaleY(0);transform-origin:bottom center;opacity:0;pointer-events:none}.document-tab__close[data-tooltip]:after{content:attr(data-tooltip);position:absolute;right:calc(100% + .3rem);bottom:50%;z-index:2;padding:.2rem .4rem;border-radius:.25rem;font-size:.6875rem;font-weight:500;line-height:1.2;white-space:nowrap;color:var(--color-surface, #fff);background:color-mix(in srgb,var(--color-fg) 92%,transparent);transform:translateY(50%);opacity:0;pointer-events:none;transition:opacity 80ms ease;transition-delay:0s}.document-tab__close[data-tooltip]:hover:after,.document-tab__close[data-tooltip]:focus-visible:after{opacity:1;transition-delay:.12s}.document-tab__close--holding[data-tooltip]:after{opacity:0;transition-delay:0s}.document-tab__close:hover{opacity:1;background:color-mix(in srgb,currentColor 10%,transparent)}.document-tab__close--holding{opacity:1;color:var(--color-danger);background:color-mix(in srgb,var(--color-danger) 12%,transparent)}.document-tab__close--holding:before{opacity:1;animation:document-tab-close-hold var(--document-tab-close-hold-ms) linear forwards}@keyframes document-tab-close-hold{to{transform:scaleY(1)}}@media (prefers-reduced-motion: reduce){.document-tab__close--holding:before{animation:none;transform:scaleY(1)}.document-tab__close[data-tooltip]:after{transition:none}.document-tab__close[data-tooltip]:hover:after,.document-tab__close[data-tooltip]:focus-visible:after{transition-delay:0s}}.document-tabs__add{flex-shrink:0;align-self:center;width:1.75rem;height:1.75rem;padding:0;border:1px dashed color-mix(in srgb,currentColor 25%,transparent);border-radius:.25rem;font:inherit;font-size:1rem;line-height:1;cursor:pointer;background:transparent}.document-tabs__add:hover{background:color-mix(in srgb,currentColor 6%,transparent)}.snap-toggle{cursor:pointer;-webkit-user-select:none;user-select:none}.snap-toggle input{margin:0;cursor:pointer;accent-color:var(--color-accent, #0f766e)}.header-field{display:flex;flex-direction:column;gap:.25rem;font-size:.8125rem}.header-field__label{display:block;min-height:1.125rem;font-weight:700;color:var(--color-accent, #0f766e);line-height:1.125rem;white-space:nowrap}.header-field>.top-bar__stat,.header-field>.color-picker,.header-field>.header-color-row,.header-field>.visual-select,.header-field.snap-toggle>input[type=checkbox]{box-sizing:border-box;display:flex;align-items:center;height:1.75rem;min-height:1.75rem}.header-field.snap-toggle>input[type=checkbox]{display:block;width:1rem;height:1rem;min-height:1rem;margin-block:.375rem}.header-color-row{display:flex;align-items:center;gap:.5rem}.header-inline-control{display:flex;flex:1;min-width:0;flex-direction:column;justify-content:center;gap:0;font-size:.625rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;line-height:1;color:var(--color-accent, #0f766e)}.header-inline-control__row{display:flex;align-items:baseline;justify-content:space-between;gap:.375rem}.header-inline-control__value{font-variant-numeric:tabular-nums;text-transform:none;letter-spacing:0;opacity:.85}.header-inline-slider{width:5rem;height:.875rem;margin:0;accent-color:var(--color-accent, #0f766e)}.header-field select,.header-field input[type=number]{box-sizing:border-box;height:1.75rem;font:inherit;font-size:inherit;padding:0 .375rem;border:1px solid color-mix(in srgb,currentColor 20%,transparent);border-radius:.25rem;background:transparent;color:inherit}.header-field input[type=number]{width:3.5rem;font-variant-numeric:tabular-nums}.top-bar__stat{font-variant-numeric:tabular-nums;opacity:.85;line-height:1}.visual-select{position:relative;display:inline-flex}.visual-select__trigger{display:inline-flex;align-items:center;justify-content:center;min-width:2.75rem;height:1.75rem;padding:.125rem .375rem;border:1px solid color-mix(in srgb,currentColor 20%,transparent);border-radius:.25rem;background:transparent;color:inherit;cursor:pointer}.visual-select__trigger:hover{background:color-mix(in srgb,currentColor 6%,transparent)}.visual-select__trigger:focus-visible{outline:2px solid var(--color-accent, #2563eb);outline-offset:1px}.visual-select__panel{position:absolute;top:calc(100% + .25rem);left:0;z-index:1000;display:flex;flex-wrap:wrap;gap:.25rem;padding:.375rem;border:1px solid color-mix(in srgb,currentColor 20%,transparent);border-radius:.375rem;background:var(--color-surface);box-shadow:0 4px 12px color-mix(in srgb,currentColor 15%,transparent)}.visual-select__option{display:inline-flex;align-items:center;justify-content:center;min-width:2.75rem;height:1.75rem;padding:.125rem .375rem;border:1px solid transparent;border-radius:.25rem;background:transparent;color:inherit;cursor:pointer}.visual-select__option:hover{background:color-mix(in srgb,currentColor 6%,transparent)}.visual-select__option--selected{outline:2px solid var(--color-accent, #2563eb);outline-offset:0;background:color-mix(in srgb,var(--color-accent, #2563eb) 10%,transparent)}.visual-select__option:focus-visible{outline:2px solid var(--color-accent, #2563eb);outline-offset:1px}.visual-select__icon{display:inline-flex;line-height:0}.visual-select-icon{display:block}.context-menu{position:fixed;z-index:1000;min-width:11rem;padding:.25rem 0;border:1px solid color-mix(in srgb,currentColor 20%,transparent);border-radius:.375rem;background:var(--color-surface);box-shadow:0 4px 12px color-mix(in srgb,currentColor 15%,transparent);font-size:.875rem}.context-menu__item{display:block;width:100%;padding:.375rem .75rem;border:none;background:transparent;font:inherit;text-align:left;cursor:pointer}.context-menu__item:hover,.context-menu__item:focus-visible{background:color-mix(in srgb,currentColor 8%,transparent);outline:none}.context-menu__separator{height:1px;margin:.25rem 0;background:color-mix(in srgb,currentColor 15%,transparent)}.undo-redo-controls{display:flex;gap:.25rem}.undo-redo-controls button{padding:.375rem .625rem;font:inherit;font-size:.8125rem;border:1px solid color-mix(in srgb,currentColor 20%,transparent);border-radius:.375rem;background:transparent;cursor:pointer}.undo-redo-controls button:disabled{opacity:.4;cursor:not-allowed}.editor-layout{display:flex;flex:1;min-height:0}.editor-main,.editor-workspace{display:flex;flex:1;min-width:0;min-height:0}.editor-canvas-column{display:flex;flex:1;flex-direction:column;min-width:0;min-height:0}.shape-toolbar{width:12rem;flex-shrink:0;padding:.75rem;border-right:1px solid color-mix(in srgb,currentColor 15%,transparent);overflow-y:auto;background:var(--color-bg)}.shape-toolbar__title{margin:0 0 .75rem;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;opacity:.7}.shape-toolbar__group{margin-bottom:.5rem}.shape-toolbar__group-header{font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;opacity:.7;cursor:pointer;padding:.25rem 0}.shape-toolbar__list{list-style:none;margin:.375rem 0 0;padding:0;display:flex;flex-direction:column;gap:.375rem}.shape-toolbar__list--grid{display:grid;grid-template-columns:repeat(2,1fr);gap:.375rem}.shape-toolbar__item{width:100%;padding:.125rem;border:none;background:transparent;font:inherit;font-size:.875rem;display:flex;align-items:center;justify-content:center;cursor:grab}.shape-toolbar__item:active{cursor:grabbing}.shape-toolbar__preview{display:block;width:100%;height:3rem}.shape-toolbar__preview svg{display:block;width:100%;height:100%}.diagram-host{flex:1;min-height:0;min-width:0;display:flex;flex-direction:column}.diagram-host-inner{position:relative;flex:1;min-height:0;overflow:hidden;background:var(--diagram-canvas-bg);touch-action:none;cursor:default}.properties-panel{width:14rem;flex-shrink:0;padding:.75rem;border-left:1px solid color-mix(in srgb,currentColor 15%,transparent);overflow-y:auto;font-size:.875rem;background:var(--color-bg)}.properties-panel__empty{margin:0;opacity:.7}.properties-panel__title{margin:0 0 .75rem;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;opacity:.7}.properties-panel__form{display:flex;flex-direction:column;gap:.625rem}.properties-field{display:flex;flex-direction:column;gap:.25rem}.properties-color-row{display:flex;align-items:center;gap:.5rem}.properties-inline-stack{display:flex;flex:1;min-width:0;flex-direction:column;gap:.375rem}.properties-inline-control{display:flex;flex:1;min-width:0;flex-direction:column;gap:.125rem;font-size:.6875rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;opacity:.75}.properties-inline-control__row{display:flex;align-items:baseline;justify-content:space-between;gap:.5rem}.properties-inline-control__value{font-variant-numeric:tabular-nums;text-transform:none;letter-spacing:0}.properties-inline-slider{width:100%;accent-color:var(--color-accent, #2563eb)}.properties-fieldset{border:1px solid color-mix(in srgb,currentColor 15%,transparent);border-radius:.375rem;padding:.5rem;margin:0}.properties-fieldset legend{font-size:.75rem;font-weight:600;padding:0 .25rem}.properties-button-row{display:flex;gap:.375rem;flex-wrap:wrap}.properties-button-row button{flex:1;min-width:0;padding:.375rem .5rem;font:inherit;font-size:.8125rem;border:1px solid color-mix(in srgb,currentColor 20%,transparent);border-radius:.375rem;background:transparent;cursor:pointer}.code-block-editor{border:none;background:#1e1e1e;color:#e5e7eb}.code-block-editor .cm-editor{width:100%;height:100%;background:transparent}.code-block-editor .cm-editor.cm-focused{outline:none}.code-block-format-toolbar{display:flex;align-items:center;gap:.375rem;padding:.375rem .5rem;border-radius:.5rem;border:1px solid color-mix(in srgb,var(--color-fg) 12%,transparent);background:var(--color-surface);color:var(--color-fg);box-shadow:0 1px 2px color-mix(in srgb,var(--color-fg) 8%,transparent),0 4px 12px color-mix(in srgb,var(--color-fg) 10%,transparent);pointer-events:auto}.code-block-format-toolbar__field{display:inline-flex;margin:0}.code-block-format-toolbar__field select{font:inherit;font-size:.8125rem;padding:.25rem .375rem;border-radius:.375rem;border:1px solid color-mix(in srgb,var(--color-fg) 16%,transparent);background:transparent;color:inherit;max-width:8.5rem}.code-block-format-toolbar__toggle{display:inline-flex;align-items:center;justify-content:center;width:1.75rem;height:1.75rem;padding:0;border-radius:.375rem;border:1px solid transparent;background:transparent;color:inherit;cursor:pointer}.code-block-format-toolbar__toggle:hover{background:color-mix(in srgb,var(--color-fg) 8%,transparent)}.code-block-format-toolbar__toggle--on{background:color-mix(in srgb,var(--color-fg) 12%,transparent);border-color:color-mix(in srgb,var(--color-fg) 16%,transparent)}.code-block-format-toolbar__sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.alignment-panel{display:flex;align-items:center;gap:.25rem;padding:.375rem .5rem;border-radius:.5rem;border:1px solid color-mix(in srgb,var(--color-fg) 12%,transparent);background:var(--color-surface);color:var(--color-fg);box-shadow:0 1px 2px color-mix(in srgb,var(--color-fg) 8%,transparent),0 4px 12px color-mix(in srgb,var(--color-fg) 10%,transparent);pointer-events:auto}.alignment-panel__group{display:inline-flex;align-items:center;gap:.125rem}.alignment-panel__divider{width:1px;align-self:stretch;margin:.125rem .25rem;background:color-mix(in srgb,var(--color-fg) 14%,transparent)}.alignment-panel__btn{display:inline-flex;align-items:center;justify-content:center;width:1.75rem;height:1.75rem;padding:0;border-radius:.375rem;border:1px solid transparent;background:transparent;color:inherit;cursor:pointer}.alignment-panel__btn:hover:not(:disabled){background:color-mix(in srgb,var(--color-fg) 8%,transparent)}.alignment-panel__btn:disabled{opacity:.4;cursor:default}.label-editor{z-index:20;padding:0;margin:0;border:none;outline:none;background:transparent;-webkit-appearance:none;-moz-appearance:none;appearance:none;font-family:sans-serif;font-weight:400;min-width:1ch;width:auto;max-width:none;field-sizing:content;pointer-events:auto}.label-editor--wrapped{width:auto;min-width:0;max-width:none;field-sizing:fixed}.label-alignment-grid{display:grid;grid-template-columns:repeat(3,1.25rem);gap:2px}.label-alignment-grid button{position:relative;width:1.25rem;height:1.25rem;padding:0;border:1px solid color-mix(in srgb,currentColor 20%,transparent);border-radius:2px;cursor:pointer;background:transparent}.label-alignment-grid button:after{content:"";position:absolute;width:4px;height:4px;border-radius:50%;background:currentColor;opacity:.65}.label-alignment-grid button[data-align=left]:after{left:3px}.label-alignment-grid button[data-align=center]:after{left:calc(50% - 2px)}.label-alignment-grid button[data-align=right]:after{right:3px}.label-alignment-grid button[data-vertical=top]:after{top:3px}.label-alignment-grid button[data-vertical=middle]:after{top:calc(50% - 2px)}.label-alignment-grid button[data-vertical=bottom]:after{bottom:3px}.label-alignment-grid button.active{background:color-mix(in srgb,var(--color-accent) 20%,transparent);border-color:var(--color-accent)}.label-alignment-grid button.active:after{opacity:1}.properties-fieldset .label-alignment-grid{margin-top:.25rem}
